Autonomous robot's navigation

Inside the Roomba and Scooba and more, Cool mods, Repair and Upgrades - including the all new iRobot Create Kit. Let's void that warranty baby!

Autonomous robot's navigation

Postby ExDxV » September 30th, 2010, 7:08 am

Since October 2007 I developed new object recognition algorithm "Associative Video Memory" (AVM).

Algorithm AVM uses a principle of multilevel decomposition of recognition matrices, it is steady against noise of the camera and well scaled, simply and quickly for training.

And now I want to introduce my experiment with robot navigation based on visual landmark beacons: "Follow me" and "Walking by gates".

Image
Follow Me

Image
Walking from p2 to p1 and back

I embodied both algorithms to Navigator plugin for using within RoboRealm software.
So, you can try now to review my experiments with using AVM Navigator.

The Navigator module has two base algorithms:

-= Follow me =-
The navigation algorithm do attempts to align position of a tower and the body
of robot on the center of the first recognized object in the list of tracking
and if the object is far will come nearer and if it is too close it will be
rolled away back.

-= Walking by gates =-
The gate data contains weights for the seven routes that indicate importance of this gateway for each route. At the bottom of the screen was added indicator "horizon" which shows direction for adjust the robot's motion for further movement on the route. Field of gates is painted blue if the gates do not participate in this route (weight rate 0), and warmer colors (ending in yellow) show a gradation of "importance" of the gate in the current route.

* The procedure of training on route
For training of the route you have to indicate actual route (button "Walking by way")
in "Nova gate" mode and then you must drive the robot manually by route (the gates will be installed automatically). In the end of the route you must click on the button "Set checkpoint" and then robot will turn several times on one spot and mark his current location as a checkpoint.


So, if robot will walk by gates and suddenly will have seen some object that can be recognized then robot will navigate by the "follow me" algorithm.

If robot can't recognize anything (gate/object) then robot will be turning around on the spot
for searching (it may twitch from time to time in a random way).

For more information see also thread: "Autonomous robot's navigation" at Trossen Robotics.
ExDxV
 
Posts: 22
Joined: September 30th, 2010, 7:01 am

Re: Autonomous robot's navigation

Postby mfortuna » September 30th, 2010, 7:23 am

Nice, this would be cool to try with a roomba.
Mike
Reds x 3, Dirt Dog, Disco (now a parts bot), Create, Scooba 350, and Security Dawg
Evolution Mint
User avatar
mfortuna
Robot Master
 
Posts: 4522
Joined: February 5th, 2006, 10:35 am
Location: NH

Re: Autonomous robot's navigation

Postby ExDxV » May 4th, 2011, 3:46 am

Now AVM Navigator v0.7 is released and you can download it from RoboRealm website.
In new version is added two modes: "Marker mode" and "Navigate by map".

Marker mode

Image

Marker mode provides a forming of navigation map that will be made automatically by space marking. You just should manually lead the robot along some path and repeat it several times for good map detailing.

Navigation by map

Image

In this mode you should point the target position at the navigation map and further the robot plans the path (maze solving) from current location to the target position (big green circle) and then robot begins automatically walking to the target position.

Image

For external control of "Navigate by map" mode is added new module variables:

NV_LOCATION_X - current location X coordinate;
NV_LOCATION_Y - current location Y coordinate;
NV_LOCATION_ANGLE - horizontal angle of robot in current location (in radians);


Target position at the navigation map
NV_IN_TRG_POS_X - target position X coordinate;
NV_IN_TRG_POS_Y - target position Y coordinate;

NV_IN_SUBMIT_POS - submitting of target position (value should be set 0 -> 1 for action).

Examples

Image
Quake 3 Odometry Test

Image
Navigation by map

Image
Visual Landmark Navigation
ExDxV
 
Posts: 22
Joined: September 30th, 2010, 7:01 am

Re: Autonomous robot's navigation

Postby Fraggboy » May 4th, 2011, 3:03 pm

Very cool!! Thank you for sharing it with the members here.
Chris

:confusion-shrug:
Website Question? Check out the FAQ section.
Roomba/Scooba Question? Check out the READ FIRST section.
:text-search:
Before posting, check out the improved Search engine. Your question might have been answered already.
User avatar
Fraggboy
Robot Master
 
Posts: 3585
Joined: March 2nd, 2007, 4:13 pm
Location: In the USA

Re: Autonomous robot's navigation

Postby bhylak » May 4th, 2011, 3:16 pm

How does it work in RoboRealm to move the motors?
Ben

Homemade Telepresence Robot:
http://mayarover.blogspot.com/
http://www.instructables.com/id/MAYA-Te ... nce-Rover/

There are only 10 types of people in the world. Those who understand binary and those who don't
User avatar
bhylak
Robot Addict
 
Posts: 1629
Joined: October 17th, 2009, 7:30 pm

Re: Autonomous robot's navigation

Postby ExDxV » May 5th, 2011, 7:21 am

Just use the variables that described below for connection of your robot to AVM Navigator:

Use variable NV_TURRET_BALANCE for camera turning: NV_TURRET_BALANCE - indicates the turn degree amount. This value range from -100 to 100 with forward being zero.

Use for motor control NV_L_MOTOR and NV_R_MOTOR variables that have range from -100 to 100 for motion control ("-100 " - full power backwards, "100" - full power forwards, "0" - motor off).
ExDxV
 
Posts: 22
Joined: September 30th, 2010, 7:01 am

Re: Autonomous robot's navigation

Postby bhylak » May 5th, 2011, 7:37 am

Awesome! Great work.
Ben

Homemade Telepresence Robot:
http://mayarover.blogspot.com/
http://www.instructables.com/id/MAYA-Te ... nce-Rover/

There are only 10 types of people in the world. Those who understand binary and those who don't
User avatar
bhylak
Robot Addict
 
Posts: 1629
Joined: October 17th, 2009, 7:30 pm

Re: Autonomous robot's navigation

Postby ExDxV » June 4th, 2011, 2:10 pm

Quake 3 Mod

Image

Don't have a robot just yet? Then click here to view the manual that explains how to setup RoboRealm
with the AVM module to control the movement and processing of images from the Quake first person video game.
This allows you to work with visual odometry techniques without needing a robot!

The additional software needed for this integration can be downloaded here.
ExDxV
 
Posts: 22
Joined: September 30th, 2010, 7:01 am

Re: Autonomous robot's navigation

Postby ExDxV » June 6th, 2011, 4:09 pm

Is it possible to play with virtual robot in "Navigation by map" mode?

Yes!

Image

Just look into documentation and download the "AVM Quake 3 mod" installation.
ExDxV
 
Posts: 22
Joined: September 30th, 2010, 7:01 am

Re: Autonomous robot's navigation

Postby bhylak » June 6th, 2011, 4:57 pm

that is amazing! I'm speechless.
Ben

Homemade Telepresence Robot:
http://mayarover.blogspot.com/
http://www.instructables.com/id/MAYA-Te ... nce-Rover/

There are only 10 types of people in the world. Those who understand binary and those who don't
User avatar
bhylak
Robot Addict
 
Posts: 1629
Joined: October 17th, 2009, 7:30 pm

Re: Autonomous robot's navigation

Postby ExDxV » July 11th, 2011, 1:41 am

Next modification of AVM Navigator v0.7.2.1is released.

Changes:
Visual odometry algorithm was updated:

Image
Visual Odometry
ExDxV
 
Posts: 22
Joined: September 30th, 2010, 7:01 am

Re: Autonomous robot's navigation

Postby ExDxV » August 9th, 2011, 4:00 pm

I have done new plugin for RoboRealm:

Image

Digital Video Recording system (DVR)

You can use the "DVR Client-server" package as a Video Surveillance System in which parametric data
(such as VR_VIDEO_ACTIVITY) from different video cameras will help you search for a video fragment
that you are looking for.

You can use the "DVR Client-server" package as a powerful instrument for debugging your video processing
and control algorithms that provides access to the values of your algorithm variables that were archived
during recording.


Technical Details

- ring video/parametric archive with duration of 1 - 12 months;

- configurable database record (for parametric data) with maximal length of 190 bytes;

- writing of parameters to database with discretization 250 ms;

- the DVR Client can work simultaneously with four databases that can be located at remote computers.


Image
ExDxV
 
Posts: 22
Joined: September 30th, 2010, 7:01 am

Re: Autonomous robot's navigation

Postby yhmmc » August 10th, 2011, 2:30 pm

You are AMAZING!!!

Mel
yhmmc
Robot Addict
 
Posts: 132
Joined: July 5th, 2009, 9:12 pm

Re: Autonomous robot's navigation

Postby bhylak » August 10th, 2011, 10:05 pm

Couldn't have said better!
Ben

Homemade Telepresence Robot:
http://mayarover.blogspot.com/
http://www.instructables.com/id/MAYA-Te ... nce-Rover/

There are only 10 types of people in the world. Those who understand binary and those who don't
User avatar
bhylak
Robot Addict
 
Posts: 1629
Joined: October 17th, 2009, 7:30 pm

Re: Autonomous robot's navigation

Postby bhylak » August 17th, 2011, 11:38 am

Can you use the kinect with this to map out a house? It would be sweet to be able to do that, then be able to click on certain parts of the map to go there.

Ben
Ben

Homemade Telepresence Robot:
http://mayarover.blogspot.com/
http://www.instructables.com/id/MAYA-Te ... nce-Rover/

There are only 10 types of people in the world. Those who understand binary and those who don't
User avatar
bhylak
Robot Addict
 
Posts: 1629
Joined: October 17th, 2009, 7:30 pm

Re: Autonomous robot's navigation

Postby bhylak » August 18th, 2011, 12:52 pm

I just played around with Quake 3 and AVM. Needless to say, it was AMAZING! Can't wait to use it on the real robot.
Ben

Homemade Telepresence Robot:
http://mayarover.blogspot.com/
http://www.instructables.com/id/MAYA-Te ... nce-Rover/

There are only 10 types of people in the world. Those who understand binary and those who don't
User avatar
bhylak
Robot Addict
 
Posts: 1629
Joined: October 17th, 2009, 7:30 pm

Re: Autonomous robot's navigation

Postby ExDxV » October 3rd, 2011, 1:12 pm

Mel wrote:Hey EDV!
I finally got my hands on a Roomba robot that I could try with the Nav programs. I went through all of the items and tutorials. When I placed the robot in the NAV mode, it moved. All others did not move unless I used the arrows to train them. The Nav by map mode showed the progress, but I could not get it to move by clicking on Left mouse. When I clicked on Left mouse it did not do anything. I would like to make that work. Can it work on it's own, or do I have to train it in one of the other modes?


I prepared simple video tutorial "Route training and navigation by map":



See more details about tuning of "Marker mode" and "Navigation by map" modes.

Image

Image
ExDxV
 
Posts: 22
Joined: September 30th, 2010, 7:01 am

Re: Autonomous robot's navigation

Postby ExDxV » October 16th, 2011, 12:26 pm

It's test of new algorithm for AVM Navigator v0.7.3. In this video was demonstrated how robot just try to go back on checkpoint from different positions of the learned route.

ExDxV
 
Posts: 22
Joined: September 30th, 2010, 7:01 am

Re: Autonomous robot's navigation

Postby ExDxV » October 18th, 2011, 4:20 am

First in video the robot has received command: "go to the checkpoint" and when robot arrived to the checkpoint then I brought robot back (several times) in different position of learned route. When robot noticed the changes then it indicated that robot was displaced because any commands were not given by robot to his motors however changes were seen in the input image.

Then robot started looking around and localized his current position. Further the robot just calculated path from current position to the checkpoint and went there (and so forth).
ExDxV
 
Posts: 22
Joined: September 30th, 2010, 7:01 am

Re: Autonomous robot's navigation

Postby ExDxV » October 24th, 2011, 1:38 am

Now I work over new "Watching mode" that allow robot to respond on motion in input video.



This mode will be included to the next version of AVM Navigator v0.7.3.
ExDxV
 
Posts: 22
Joined: September 30th, 2010, 7:01 am

Next

Return to Robotic Hacking

Who is online

Users browsing this forum: Roombascoobatastic, vic7767 and 129 guests