Hello Tello Pilot!
Join our DJI Tello community & remove this banner.
Sign up

Object tracking with Tello

takemymoney.jpg
 
That's an app I would pay for too.
I'm sending to all my Tello owner's friends.
Congratulations!!!
 
Vtvt, please go on with your great job!!!
An App with object tracking (follow me mode) will be fantastic!
 
Last edited:
  • Like
Reactions: Dean Lighty
[QUOTE = "vtvt, post: 5126, membro: 1081"] Rastreamento de bola verde pelo OpenCV. Eu também modifiquei um pouco a biblioteca TelloPy.

[MEDIA = vimeo] 276778768 [/ MEDIA] [/ QUOTE]
Could you share the code or Github?
Please
 
Great thing
Amazing work
Ill b happy to pay few $ for this app add on.
Guy
 
Yeah I am working on app, will update ASAP

Dear vtvt,

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
 
Dear vtvt,

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

Use lower resolution: for many OpenCV application you need something like 512x512.
Skip frames if you have delay. Skip first 300 frames. Use WiFi extender. Set video quality slightly lower.
Python:
 drone.set_video_encoder_rate(1)
However I personally like approach with multi threading (no skip frames needed):

Python:
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
 
  • Like
Reactions: mateustoin

New Posts

Members online

No members online now.

Forum statistics

Threads
5,690
Messages
39,934
Members
17,023
Latest member
Repiv

New Posts