United Kingdom
Asked — Edited

Ardrone V1 And Camera Feed For Emgu (Opencv For C#)

Hey,

I'm a third year university student studying Systems Engineering and currently working on my final project - a Quidditch playing UAV.

With that, I require access to the ARDrone's camera feed. Normally, this is done through Parrot's SDK but I've had no luck with that. Then I discovered ARC and the incredible abilties of the software. I noticed there's a Windows SDK that allows communication with the ARDrone which I am using now (with C#, no luck loading the EZ_B.dll into C++ :/).

I fully understand that the ARC software essentially provides everything required of my project (acknowledging the awesome capabilties, I still need to do this by myself) apart from one aim and with that aim I require a camera feed from the ARDrone.

My question is; is it possible to use the EZ-B SDK purely to gain access to the video feed from the ARDrone and use that feed for Emgu (OpenCV wrapped for C#)? Stated another way, I'd like access to the ARDrone video feed through the SDK so I can apply Emgu to the feed, such as tracking objects?

As it stands, I have used the tutorial file "Tutorial 31 - AR Drone" in C# to connect to the ARDrone and succesfully displayed the video feed, etc. In the same C# form I have managed to display my webcam feed using Emgu (so both compile together). Although I knew it wouldn't work, I did try creating a new Capture type (type from Emgu) and passing that the _capture created by EZ_B but obviously Emgu has no methods for dealing with EZ_B types.

I appreciate any help many thanks


ARC Pro

Upgrade to ARC Pro

Unleash your robot's full potential with the cutting-edge features and intuitive programming offered by Synthiam ARC Pro.

#1  

Do a search for ffmpeg and ARDrone and I think you will find what you are looking for.

Here is a link to code using an ARDrone 2 with open cv. I think it will work on the drone 1 with little modification : http://blog.hassannadeem.com/2015/04/cross-compile-opencv-with-ffmpeg-arm.html?m=1

#2  

You can access the video feed over an IP address, though it can varry on the amount of delay there is.

PRO
Synthiam
#4  
  1. Click on the Software tab on the top menu of this website

  2. Select Windows SDK from the sub menu

  3. Select Download

  4. Choose the download location for the zip file

  5. Extract the files from the SDK

  6. View the README.TXT

  7. Follow the instructions in the README.TXT for every project that you load

  8. In the C# folder, load the AR Drone example project

There you will see how to connect to the AR Drone video feed. If you wish to pass the feed image off to another library, you can do that as well.

United Kingdom
#5  

Quote:

Do a search for ffmpeg and ARDrone and I think you will find what you are looking for.

Here is a link to code using an ARDrone 2 with open cv. I think it will work on the drone 1 with little modification : http://blog.hassannadeem.com/2015/04/cross-compile-opencv-with-ffmpeg-arm.html?m=1

Quote:

You can access the video feed over an IP address, though it can varry on the amount of delay there is.

My attempt to access the ar drone 2.0 feed.

www.ez-robot.com/Community/Forum/Thread?threadId=4540&page=2

I'm grateful for your suggestions, which I did attempt, but was ultimately unsuccessful :/. thetechguru, that link is pretty much dead :/. The site works but the blog is offline.

Quote:

1) Click on the Software tab on the top menu of this website

  1. Select Windows SDK from the sub menu

  2. Select Download

  3. Choose the download location for the zip file

  4. Extract the files from the SDK

  5. View the README.TXT

  6. Follow the instructions in the README.TXT for every project that you load

  7. In the C# folder, load the AR Drone example project

There you will see how to connect to the AR Drone video feed. If you wish to pass the feed image off to another library, you can do that as well.

Steps 1 through 8 was not a problem and had completed those, but your last statement gave me encouragement that it was at least possible. After a number of hours I managed to pass the video feed from the Parrot to the Emgu library :D.

#6  

Glad it worked for you! Parrot has always been a little hard to deal with on their SDK, and it appears they have completely abandoned any software support for the ARDrone now that they released the BeeBop. They have been promising the addition of Director Mode for Android for years and haven't delivered. Most of the 3rd party developers have therefore also moved onto the BeeBob or DJI and 3DR brands that are more open and supportive (although 3x the price for their cheapest).

Alan

United Kingdom
#8  

Quote:

Glad it worked for you! Parrot has always been a little hard to deal with on their SDK, and it appears they have completely abandoned any software support for the ARDrone now that they released the BeeBop. They have been promising the addition of Director Mode for Android for years and haven't delivered. Most of the 3rd party developers have therefore also moved onto the BeeBob or DJI and 3DR brands that are more open and supportive (although 3x the price for their cheapest).

Alan

So am I! and exactly my thoughts on the matter! I discovered this fact while researching the SDK. My tutor and I did talk about the BeeBob but nothing much came of that...

Quote:

Awesome to hear! Smile
So am I! I'll also add that when I discovered ARC, it blew my mind in terms of the capabilities so really well done on that front and I wish you every success.

PRO
Synthiam
#9  

Thanks for the kind words!