BMW presented its version of the robot car and the implementation of tracking lane dividing lines on OpenCV

BMW introduced its version of the robot car

It seems that among various corporations, the topic of robotic cars that can independently navigate the situation on the road (avoid obstacles: pedestrians, other cars, etc.) is more than popular.
The most famous example of such a development is a robot car from Google.
Now BMW has prepared its own version of the robot car.

Unlike other similar developments, where various sensors (cameras and laser rangefinders) are hung on the finished car, the car from BMW hides the smart filling inside the body, which makes the robo-mobile almost indistinguishable from the usual one.

It seems that robotic cars have really become one of the trends in the development of the automotive industry. BMW is confident that such cars will be available on the market within 10 years.

http://www.youtube.com/watch?v=vNzNt7bsuUg

In principle, the technology behind robotic vehicles is more than accessible.
For example, here is a prototype of “Lane Departure Warning” (tracking the position of a car in its lane), implemented using a webcam, OpenCV and python:
Prototype Lane Departure Warning or how to remind the driver that he does not have very long to live.
For implementation, the author used the following algorithm:
0) crop the image to the area where the road is visible (improves performance and reduces false positives)
1) apply Canny
2) Search for markup elements:
2.1) we are looking for all closed regions (areas bounded on both sides by borders)
2.2) we are looking for those regions whose width is equal to the width of the strip
2.3) if there are several such regions (due to shadows, etc.), then we calculate the average color of the region and its distance from our color model of the dividing strip and choose the most similar one.

Further, the model of the dividing strip near the car can be represented simply by a straight line segment.
It remains to be added control zones and find the intersection points of the straight dividing line and segments of the control zones. These intersection points can now be used to determine the vehicle’s position within the lane:

work video:

system sources:
https://github.com/Akson/LaneDepartureWarning

Of course, this system is only a prototype – its use is significantly limited and many things can be improved (for example, try to use the Hough transform to search for bands), but I think it fully shows the principle of developing such systems.

BMW presented its version of the robot car and the implementation of tracking lane dividing lines on OpenCV

Leave a Reply

Your email address will not be published.

Scroll to top