Scanning

 

Preface
computer mind grid

To the robot the entire world is a grid. What you see above is a visual representation of the data inside of the robot's mind; to see what the area actually looks like (to a human) click here. Each of the sectors making up a grid is scanned independently. The product of each individual scan is a value for the sectors elevation. In this case the sector being scanned is the edge of the lower book. The first step in scanning a sector is to aim the laser pointer at the sector. The equation for this is:

LaserAngle = atan ((X+1.8) / (Y+19) )


X, Y: Cartesian distances from the camera to the sector in question.


The distance from the camera to the laser is very important to this equation, as it is the base of parallax. The camera is always at point 0,0 so as all equations involving it don't require additional components.

 

 

Image Analysis

image from camera

The robot takes a picture with its camera. The laser beam strikes the edge of the lower book, as well as other objects that are inline with it. Only one of the strikes produced by the laser is relevant, because the rest are not within the sector the robot wants to scan. The mark produced by the laser is shifted more to the left in the camera's image the further it is from the camera. This is because the angle of the laser pointer is not parallel to the angle of the camera. The following equation allows the robot to identify the column of its image containing the sector in question. Only laser marks within this column are important.

440= focal length of the camera, measured in pixels.

equation

 

The vertical blue lines in the image identify the two solutions of the equation.

The height of the line produced by the laser is not important. At this moment the robot is scanning the edge of the book, so a vertical line is produced, but if the robot were scanning a sector containing only the surface of the book, only a small dot would appear. What matters is the location of the highest red pixel. The program searches for a bright red pixel from top to bottom until one is detected. The white line in the image is where the first red pixel was discovered.

N= Vertical distance (in pixels) from center of the image to the topmost bright red pixel.
R = Height of Camera above ground; changes depending on robot's stance.
X,Y = Cartesian distance from camera to sector being scanned.
E = Elevation of sector.

equation

 

Map Generation

generated topographical map

LEGEND
All elevations are relative to the height of the ground the robot is standing on.


BLACK
Elevation= 0 cm

DARK GRAY
Elevation = 3cm


LIGHT GRAY
Elevation = 5cm

RED
Unknown elevation.

Once the scanning process has been performed on many sectors; a map forms with the robot's mind. This map (and other information) can be represented graphically, but remember that is not how the robot's computer mind understands and works with the data. The maps are best represented topographically.

Red sectors contain an unknown elevation. The sectors are red because the robot is presently unable to identify their status. The robot can't "see" behind the stack of book. The camera can't see the ground immediately in front of itself. Once the robot has moved to a new location (the other side of the books) it's new perspective allows it to fill in the red sectors.

The scanning system has a maximum range of four meters.

 

<< Previous