Tracking of green ball by OpenCV. I also modified a bit TelloPy library.
Yeah I am working on app, will update ASAP
I found there is a significant delay in frame obtained using TelloPy. I even tuned down the bit rate but no help
1) For 3M, I receive ~750K bytes video data for two seconds
2) For 1M, I receive ~250K bytes video data for two seconds
It seems that receiving data is alright, the loading of CPU is just 3X%. I didn't see any remarkable frame skiping , say over 1 second. That means data is really received and processed.
Can you help? Thanks a lot
def recv_thread(): global frameA global run_recv_thread global drone print('start recv_thread()') drone = tellopy.Tello() drone.connect() drone.subscribe(drone.EVENT_FLIGHT_DATA, handler) drone.set_video_encoder_rate(1) drone.set_loglevel(drone.LOG_WARN) container = av.open(drone.get_video_stream()) while run_recv_thread: for f in container.decode(video=0): frameA = f time.sleep(0.01) ... threading.Thread(target=recv_thread).start() ... while run_cv_thread: if frameA is None: time.sleep(0.01) else: #do your opencv stuff with frameA