The Beobot Code

Saliency - Visual Attention System

The Saliency algorithm is a bottom-up visual attention
system. It simulates an ability in humans to discern attractive
elements of a visual scene. When given an image, the algorithm will
pick out locations of interest and direct the AI's attention towards
the spot. You can read more about the Saliency model HERE.

The Saliency algorithm, in theory, should enable the
Beobot to focus on important obstacles ahead such as cones,
pedestrians, rocks and walls. After that, the objects picked out can
be recognized and grouped. The AI will then decide what to do - in
most cases steer clear to avoid collision.

Object Recognition

The object recognition algorithm is still a work in
progress. Once incorporated, it is hoped to allow the Beobot to
recognize objects in the visual input. Knowing what lies ahead will
allow the Beobot to react properly.

Scene-based Question-Aswering System

The next step in object recognition is a scene-based
question answering system. The motivation is to allow the Beobot to
focus its attention on objects that are most relevant to it. It is
unreasonable for any AI to try to recognize all objects in its
sights.

When a question is asked (eg. what should I avoid?),
scene-based QA would immediately filter out objects that have no
relevance (track, grass, etc) and let the Beobot work on those that
do (people, trees, walls, etc).

Action/Memory AI

The AI system of the Beobot will eventually rely on
neural algorithms to provide scene analysis and object recognition.
When the neural software (brain) parses a scene, the Action/Memory AI
system will then make a decision based on the information obtained.
The decision is sent to the Effectors interface. The Effectors and Car
Control module in turn control the truck (steering, speed, gear, LCD
display) via the Servo Controller and the LCD interface.