|Surveyor Robotics Journal|
Sat, 30 Aug 2008
Sentience Stereo Vision Software Version 0.1 posted for Surveyor SVS
This initial release of Sentience Stereo Vision Software for Surveyor SVS contains algorithms for camera calibration, sparse edge/corner based stereo correspondence and a dense disparity map.
The software is written in C# and has been built by the author on Windows using Visual Studio 2005 or GNU/Linux systems using MonoDevelop. I was able to build the project on Mac OS/X 10.4 (PPC) after installing Mono.
By the way, you will find a number of interesting articles about stereo vision on the main Sentience Project web page.
Sun, 24 Aug 2008
Upgrading an SRV-1 robot to stereo vision ...
Here is a brief description of the process to upgrade an SRV-1 Blackfin robot to stereo vision. We unsolder the motor leads and battery wire from the original motor controller or combo motor/radio board, remove the circuit boards, then check the wire lengths to make certain they will reach the connectors on the underside of the SVS controller. More often than not, we do have to lengthen those wires, especially if we are mounting a pan/tilt head to the robot base.
Note that we have added connectors to the motor and power wires, using Jameco 100766 connector pins with Jameco 100812 plastic blocks. Also, we have added somewhat taller standoffs to keep the antenna cable and 32-pin headers clear of the robot base. For the original dual-motor bases, we add 7/16" standoffs. For the new quad-motor base, we would use 1" standoffs.
The Blackfin and Matchport should be running at 2500kbps with latest firmware (srv-blackfin-081408.zip at time of this post). The final step is to move the Blackfin camera, Matchport radio, and dipole antenna cable from the original boards and base to the SVS board before mounting the SVS to the robot base. In some cases, we also have to change the lens on the original camera board from 6.5mm to the newer 3.5mm wide angle lens in order to match the second Blackfin camera.
Here is the end result of an upgrade ...
It is actually the second upgrade for this particular robot, which belongs to RoboRealm. It started life as an SRV-1 ARM7 with Zigbee a couple of years ago for use in their original SRV-1 support, and was upgraded to Blackfin with WiFi almost a year ago for development of their updated SRV-1 Blackfin support. Now it is headed back to them for development of stereo vision algorithms, and we look forward to the results !
Wed, 20 Aug 2008
Surveyor SVS (stereo vision system) - first experiments with automated color segmentation for stereo disparity calculations
While others are working on much more sophisticated stereo disparity algorithms using host computing power, I thought we might be able to build some basic matching functions into the Blackfin firmware using simple color matching for correlating objects between the separate views. The key to this approach is to segment the images into a minimal set of colors that can be used for simple image comparisons.
Color segmentation is an interesting research problem which has led to the definition of a variety of color spaces, as discussed here and here, as well as a variety of feature processing models, as described here. One of the goals in creating the SRV-1 Blackfin and the SVS was to provide an easily accessible platform for experimenting with the color segmentation challenge.
As described above, a simple approach would minimize the number of colors in the corresponding stereo images and then look for matches. Below, you will see the original stereo pair (scaled down for this display), a 16 color segmentation that uses 4 luminance and 4 chrominance levels (2 bits Y, 1 bit U, 1 bit V - "211"), and a 16 color segmentation that uses 4 U and 4 V levels (2 bits U, 2 bits V, and no luminance component - "022").
The 211 approach seems to provide reasonable feature definition, but correlation of colors between left and right images isn't actually so great. The 022 approach doesn't seem to be making very good use of the range of colors, but the feature correlation almost looks usable. So the next step is to find a segmentation of the UV-only space that more efficiently maps actual colors. Along these lines, we divided the U and V color spaces into 16 segments each, and then built a tool to display the U vs V histogram in 2D.
The next step is to define a segmentation that looks for clustering or local maxima in the 2D histogram. So stay tuned ...
Mon, 11 Aug 2008
Progress with SRV-1 Blackfin Stereo Vision System
Sentience stereo vision software developer Bob Motram has been working for a few weeks with one of the prototype SRV-1 Blackfin stereo vision systems, and he has already developed a slick calibration procedure to correct for wide-angle lens distortion, as described here -
Initial tests of stereo correspondence procedures have started, as discussed here -
You can track Bob's progress via his blog or via his source code.
Live Internet control of SRV-1 Blackfin Robots - BP Explorer
This is a fantastic demo of SRV-1 robot remote control through the Internet - www.bpexplorer.com.au
The images above show some fixed camera views of the "set" as well as snapshots captured by one of the robots. Five robots are available for control at any time, though sometimes the queue to access the site is quite long. The BP Explorer demo is intended to highlight some of BP's green technologies, including the solar panels that are used to recharge the robots. Kudos to the amazing job Ogilvy New Zealand did in putting this together for BP Australia.