Vision Logic Open File Report

Chapter 4: Single Dimension Scanning Vision - 3

Counting dark objects anywhere within the visual field.

Updated 10/24/09
  Robot with test cups

 This demonstration will show another application of the 9 pixel linear one dimensional vision system. Here, were still using the motorized scanner, which while slow will easily demonstrate the concept in near real time.


To count dark objects against a light field no matter were they are in the visual range of detection.


The basic idea is to first scan the background with no black cups in the field, and use that as a reference frame for the background. Then any changes in this image can be easily detected and the robot will not be fooled by background brightness gradients. This is called "flat fielding" in the CCD realm. To actually detect the cups, rising edges or transition are counted across the field of view, and this corresponds to the number of cups present. (Black coffee cups are the visual targets).


180 degree field
 Here is the view the robot will image inside the arena. The white walls look uniform to us, but the robot will see a range of gray shades which can be mistaken for objects within its limited vision.
The 9 pixel raw data of above

 This is what the robot sees of the arena. Is that a big black cup or just the other wall?

Sample Data: (10 bit)

102 123 150 206 253 220 250 301 356
  Flat fielded data

 First we take a flat field image, with no cups. We then divide the flat field image with consecutive frames to show the changes. The equation is: Corrected Image = Flat image/current image. This inverts the data and the black cups will show as an easily detected positive values. So here is the Flat fielded image with no cups.

Data after flat fielding:

1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1
180 degree view Flat fielded data of cups white = black cups

 Black cups then appear very distinctly as white objects within the visual field. (Remember Flat Fielding inverts the data)

Now with 2 black cups in field:

1 - 15 - 2 - 1 - 33 - 1 - 22 - 35 - 1

 After histogram scaling and slicing (covered in a previous write up) is done, the robot binary view of the scene is this.

 By counting the rising edges from black to white (remember flat fielding inverts the data), you can easily count the cups in the visual field.

Movie (Mpg format)
 This small 3.2Mb movie clip shows the robot counting cups. Note that this method allows the cups to be anywhere in the visual field, as long as there is a space between them wide enough to be seen by at least one visual pixel as a gap. Turn your sound up on this one!


What this demonstration shows is with a relatively bland field, even a very crude visual system with low resolution can be useful for making crude numerical counts, identifying simple targets or markers, and using this information for such crucial tasks as navigation, docking port identification, or even security. It is also becoming obvious to me at this time, that when the first visual systems evolved half a billion years ago, the push for higher and higher resolutions in visual acuity would have been a definite advantage. Instead of dark blurry shadows moving through the field, actual shapes would have been seen. But were not quite done yet with the simple 9 pixel vision. Next were going to demonstrate some avoidance maneuvers the robot will accomplish by vision alone, while moving in an arena full of obstacles!