DIY cleaning robot

See my recent home made robot with cleaning capabilities using computer vision for obstacle avoidance and more:
http://gidesa.altervista.org/robot/robot1.php

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

It took several attempts to get your web site to come up, but eventually I got through. Thanks for sharing your project.
You didn't elaborate on your video processing you use to navigate. How is that working out? I know that is a very big challenge to accomplish.
I am speculating that the Microsoft Natal 3d imaging camera will make robot navigation significantly easier. I remember reading some specs about the 3DV camera, as it was known before Microsoft took it over. My memory is vague, but I think it had a depth resolution of 6". While laser scanners might give better depth resolution, I think the Natal camera is such an improvement in its ability to depth-map an entire image, the weakness in depth resolution won't really matter.
I just tried to get more technical information from 3dvsystems.com (the originator of the technology) but they were not to be found. Perhaps they are letting Microsoft take the lead on this.
Joe Dunfee
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
l o wrote:

The provider was changing servers just a few days ago, when I wrote my message!

I use the well known optical flow algorithm, included in OpenCV, too. It work well with my robot. Consider that it has to move in very limited spaces in my flat, around furnitures of every type. And the lighting varies very much, from a room with windows exposed to direct sun, to a corridor that is much more dark. It's very very different from that "simple" laboratory rooms that I see in experimental works on Internet. The spaces often are only a little more wide than the robot diameter (around 40 cm). So it's much more difficult, in my opinion. There are also problems with bright light spots. For example, because the floor is clear, not opaque, and the direct sun light creates very bright spots. Other problems are with monochrome walls (ex. white). They don't create a good optical flow. I think that a single camera alone cannot resolve all that. Anyway the results are good, especially using a wide angle lens on camera. But sonar and a mechanical bumper are again a need if want to avoid obstacles "hard" for optical flow. Regards
Giandomenico De Sanctis
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
ispas wrote:

Optical flow generally doesn't work very well. Try the LK tracker in OpenCV. That looks for corners and locks onto them. Good in indoor spaces.
                    John Nagle
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
John Nagle wrote:

LK tracker can be useful to drive the robot to a known position. But it seems to me difficult to use it for obstacle avoidance, in an very cluttered indoor space, just full of unknown/casual objects. The lock to selected corners is difficult in (relative) fast movement, for example if the robot turn on place. And LK method depends anyway from image details, as optical flow. So the problems with bright reflections, monochrome walls, etc. are the same. What you suggest? I could recreate the set of selected corners every 2 frames, as I do with optical flow. Anyway I have good result with optical flow.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Cool!!
---
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Nice work there! So you used a serial port for the PC<->electronics communication. Did you find that has enough bandwidth? what baud rate?
Jyyang wrote:

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Yes, the bandwidth is enough, because the data exchanged are a few bytes for every message. This is true because the video camera is not attached to electronics, but to the EEE Pc, as a normal webcam. Or it's a wireless camera, if you are not using a standard pc as the EEE Pc. By the way the quality of the imagines of cheap webcam, received on the remote desktop, are tens better than the quality of a cheap wireless camera I used a direct serial connection in the Palm version, and a serial to Usb converter in the EEE Pc version.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Yes, the bandwidth is enough, because the data exchanged are a few bytes for every message. This is true because the video camera is not attached to electronics, but to the EEE Pc, as a normal webcam. Or it's a wireless camera, if you are not using a standard pc as the EEE Pc. By the way the quality of the imagines of cheap webcam, received on the remote desktop, are tens better than the quality of a cheap wireless camera I used a direct serial connection in the Palm version, and a serial to Usb converter in the EEE Pc version.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.