Adding Vision: Interfacing With RoboRealm
by John Blankenship and Samuel Mishal
For many hobbyists, giving their
robot vision is one of their
ultimate goals. RoboRealm® is an
application for use in computer
vision, image analysis, and robotic
vision systems. It makes adding
vision painless by providing easy-to-use modules that provide color
filters, shape recognition, edge
detection, and much, much more.
This article examines a variety of
uncomplicated ways to interface
your programs with RoboRealm.
www.servomagazine.com/index.php?/magazine/article/
july2011_Blankenship
Although vision is a desirable goal for many robot hobbyists, the complex low level programming and
mathematical algorithms involved often force many people
to assume vision is beyond their capabilities.
Let’s examine what is entailed when processing vision.
An image to be analyzed can be thought of as three, two-dimensional arrays (one each for red, green, and blue
information). The numbers stored in each element of these
arrays represent the brightness of a respective x-y
coordinate in the image. Processing and analyzing the
image involves applying mathematical algorithms to these
arrays. Let’s look at some examples.
An image can be made brighter by increasing all of the
array elements by some percentage. A single color pixel in
the image can be converted to black and white by replacing
the element in each of the three arrays that is associated
with that pixel, with an average of those same three
elements. These operations are relatively simple but their
complexity can increase quickly as more elaborate actions
are needed. Converting a standard image to one showing
only the edges of objects, for example, involves finding
pixels that differ in color from at least one of their
surrounding pixels.
The level of programming and mathematical skills
needed to implement sophisticated vision algorithms
makes is difficult for many hobbyists to experiment
with this subject. Fortunately, a program called
RoboRealm provides a solution for many situations
by providing a large library of modules that makes it
easy to capture images from web cams, and then
process and analyze those images. Detailed
information — as well as a 30 day trial copy of
RoboRealm — can be obtained from
www.RoboRealm.com.
Although RoboRealm is a programming
language itself, it is very different from other
languages you might be familiar with. Let’s look at
some examples to see how RoboRealm can be used
to implement a simple vision system. When you first
start RoboRealm, you see the opening screen shown
in Figure 1.
The left side of the screen provides access to the
FIGURE 1.
56 SERVO 07.2011