I originally tried to get lane detection working for my autonomous car project a little over a year ago. I ended up getting some rough code working but it was really only useful on ideal roads with perfectly painted lines. At the time I didn't know a whole lot about computer vision so I ended up ditching the computer vision part of the project to focus on other areas.
So now I'm back with a new project that requires computer vision. The goal of this new project (which will be another post later on) is to track objects at relatively long distances of 60 meters or more. The list of off the shelf sensors that can do this is pretty slim with the best being LIDAR sensors that will run you ~$60K. I plan instead to use a CV algorithm to track objects and a laser range finder on a two axis servo mount to locate objects. The crux of this project being again the CV algorithm. To start off I'm getting my feet wet by revisiting the lane ...
I came across an unused iRobot Roomba at FUBAR labs and though this would be the perfect opportunity to build a robot using the Robotic Operating System (ROS). ROS is basically software that's used integrate all a robot's sensors (encoders, depth camera, laser scanner ect..) with the code that's used to control it. All of the sensors run as a node. For example, the Kinect sensor node publishes its depth data. The SLAM (localization and mapping) node will uses the Kinect data to determine the robot's location and publish to other nodes. Each node is separate from the others so it's easy to change or add new ones. ROS also has a ton of built in libraries that work with different servos, laser scanners, and other sensors.
The Roomba is essentially the same ...
This post will detail my plans and progress for an autonomous car. I’ll be using what I learned from
building the balancing robot and courses though Udacity and MITx.
The goal is to take a small 1/10
remote controlled car and have it navigate a course on its own. To navigate the course, I plan to use an
Android phone, GPS, and an accelerometer/gyroscope. I will record a video stream through the phone
and then process it on my laptop using Python and the computer vision library OpenCV.
I chose a 1/10 scale car so that it would be large enough to hold all of the electronics. I was worried that the cheaper and more common 1/16 scale cars would be too small. I found this car on Amazon for ...