1
$\begingroup$

I am going to start a new project consisting in implementing an autonomous driving RC car. The car as it is now, has a camera installed on each side of the car, i.e. 4 cameras in total. They are connected to a board which is able to read and process the video input.

I have been researching about obstacle detection using a single camera (without stereo cameras, e.g. Single camera vision and mapping system ) and although it seems possible it also seems quite complex. Modifying the cameras set-up is not an option. I already have some video processing algorithms, like dense optical flow, which might help me, but I am not sure whether I might me able to implement the system in the time I have (4 months). I also don't know how reliable would be the final solution.

If the first approach is not feasible, as an alternative option I also could install distance sensors in the car to detect obstacles. It seems that usually the most preferred choice is to use ultrasonic sensors. I would need to install them and I would not take advantage of the cameras, but it seems that the final complexity would be lower.

Is the first approach feasible? What are the pros and cons of each approach? If I implemented the second option, how many sensor would I need?

$\endgroup$
3
  • $\begingroup$ This would make a good research paper, however you might want to separate your question into more specific questions to increase your chances of high quality answers. $\endgroup$ Feb 4, 2015 at 11:55
  • $\begingroup$ what would be the best option to use stereo vision using 2 camera or obstacle avoidance sensors for drone ? $\endgroup$
    – tirth
    Jul 25, 2019 at 7:04
  • $\begingroup$ Questions which ask about the Pros/cons or Advantages/disadvantages are effectively opinion polls, which are discouraged on stack exchange. We prefer practical, answerable questions based on actual problems that you face, so questions which ask for a list of advantages & disadvantages for different options are off-topic. Please take a look at How to Ask & tour for more information on how stack exchange works. $\endgroup$
    – Mark Booth
    Jul 25, 2019 at 10:34

4 Answers 4

3
$\begingroup$

Honestly, I don't think you should use the cameras just because you have them. The ultrasonic sensor is a way simpler and more effective solution. There are ways to tell depth with one camera, but they are far from effective in most cases. If you want to try it, I would say play around it when you don't have a deadline if you're interested in the learning experience. As far as whether you could get it working in 4 months or not, it depends on how familiar you are with this kind of application.

If you really want to use the cameras, it might be easier to get another camera and mount it so that it's facing forward somehow, either on top of the car or somewhere else. This might be more effort than it's worth, though. I would go this route if you really want to use cameras for personal reasons.

$\endgroup$
1
$\begingroup$

Using a single camera it's not possible to measure distance. At best you can say that object B is twice as far away as object A, but you still don't know if object A is 1m or 10m away. The only way to resolve this is to add extra information e.g. from another calibrated camera, a distance sensor, or knowing the size of some things in the scene.

Depending on the obstacles you are expecting, sonar is probably your best bet since it's straightforward and simple to use. It won't detect as many obstacles as vision can but given your time constraints I would recommend using it.

$\endgroup$
1
$\begingroup$

If you are going to be operating on strictly flat surfaces, single camera optical flow can be used, although it's not an optimal solution. By knowing the camera intrinsics and extrinsics, you can predict expected optical flow for features that lay on the ground, and any grouping of flow vectors that violate that potentially indicate obstacles that rise above the ground. You won't get range information or scale information, however.

This is not an ideal method at all - just something that is possible.

See http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.33.1606 for details.

$\endgroup$
0
$\begingroup$

You need the depth information, that is the distance, for the obstacle avoiding.

well, actually I'm wondering if your camera is a RGBD camera but you don't know. It is quite strange there is only a single camera in each side of your car.

Besides RGBD camera, another option is using two camera to find the distance like this:enter image description here

Optical flow will not help you, it is used to detect moving objects while in your camera everything will be moving.

So from my point, you can not take advantage of the cameras in your project. Ultrasonic is a cheap and easy way for obstacle avoiding. Or you can try some IR sensor. And if you want a higher accuracy, buy a laser rangefinder

$\endgroup$
1
  • $\begingroup$ The cameras are not RGBD, otherwise the answer on how to calculate depth would be straightforward. $\endgroup$
    – Daniel
    Jun 25, 2015 at 9:02

Not the answer you're looking for? Browse other questions tagged or ask your own question.