-1

Pardon my lack of knowledge but I've been assigned a school project where we have to do object detection and object tracking from the size of a tennis ball to a mosquito. Its for a lifestyle product where we kill mosquitoes with lasers. My professor is suggesting the camera to be an intel realsense d435. I have a few questions if you guys can help me out.

  • Is an d435 too overkill? I honestly have no idea. I've been reading some post and people have got it working with pi cameras.Prof is asking me to decide which camera should be purchased.
  • How does the Realsense SDK work together with OpenCV? I mainly need coordinate data and will send it to a servo via RS-232 to the servo which will be handled by my partner. Do I need both of these or would one just work.

Thanks a lot and sorry if these seems to be rather simple questions.

Ryan Tin
  • 381
  • 4
  • 12

2 Answers2

2

Mosquitoes are very small, fast moving and difficult to see. You will need a very good camera to pick one up! Tracking one will be a very difficult project.

A problem with fish eye cameras will be how to compensate for the fish eye distortion. It sounds like you will need to understand the real world position of the detected object. If you detect an object at pixel (x, y), where is that object in real space?

A more expensive fish eye designed for computer vision type applications may have a mapping for this, or you can try to find it yourself. A normal lens camera can be approximated as a pinhole camera which makes this much more simple.

In terms of resolution, you can work our your requirements from the desired sensitivity of your system. Have a look at this:

https://www.scantips.com/lights/subjectdistance.html

Be careful though, many cheaper cameras have a high pixel resolution but have a lot of pixel crosstalk and so the effective resolution is much lower. Also how many pixels do you need to detect the object? Depends on the method you use.

Also the intel camera includes a depth sensor. Without a depth sensor you will only know the direction from the camera, and not the distance. Also depth information can help detection, depending on your method. Be careful though, the resolution of the depth map will often be less than the camera, and mosquitoes are very small, I doubt it will pick one up.

I've not used this intel camera but it looks like there is a lot of support for using it for these types of applications which is also a bonus.

In my experience the quality of the camera is the biggest factor that affects performance, more than algorithm choice.

No real answers there but just some thoughts.

ziggy jones
  • 401
  • 2
  • 7
-1

I would recommend using a USB Fisheye camera off of Amazon, it gives you a good FOV, is compatible across Linux / Windows, and isn't that expensive.

Using a the Fisheye you should be able to detect objects mosquito - tennis ball size so long as they are relatively close to the camera. I've been able to detect objects easily at distances 0-10 meters.

Something like this should do the trick: https://www.amazon.com/180degree-Fisheye-Camera-usb-Android-Windows/dp/B00LQ854AG/ref=sr_1_3?s=electronics&ie=UTF8&qid=1537292026&sr=1-3&keywords=fisheye+camera+usb

You will need to build OpenCV to get it working with the Realsense SDK, here's some helpful links I found to get started:

https://github.com/IntelRealSense/librealsense/blob/master/doc/stepbystep/getting_started_with_openCV.md

https://github.com/IntelRealSense/librealsense/tree/master/wrappers/opencv

Karl Swanson
  • 99
  • 1
  • 7
  • Thank so much, I'll look into it. Can I just ask does the FOV or resolution matter more? – Ryan Tin Sep 19 '18 at 09:34
  • For what you're doing having both the FOV and resolution is going to be important. A 1080p fisheye should be good enough for detecting objects in a given region of interest so long as they are not too far away – Karl Swanson Sep 20 '18 at 12:27