The rangerfinder algorithm was calibrated. Measurements of pixel from center were taken every five inches from around 2 to eight feet. A power curve was fitted to the data and produced error that was less than 10%. Code should be released sometime next week.
No commentsLaser Rangefinder
The image processing algorithm has been written and tested. It does a reasonably good job at finding the brightest pixel from center, but reflections off the metal tool chest still gives it problems. We’ll try to calibrate the vision system to get some distance measurements off it. Look for the finished code sometime soon.
No commentsUncategorized
I never knew that one could write code for Microsoft Excel until last year. The macros are mostly used to automate repetitive tasks and perform complex calculations. (It could also be used to make music videos. Check out http://www.youtube.com/watch?v=h9_YkXHCkgA)
Since a spreadsheet is made out of individual cells, the spreadsheet itself could be looked upon as an array. Programming in VBA could be done very quick and dirty. All the good programming practices learned in introductory computer programming courses could be thrown out the window (Sorry to make you cry, Prof. Thomas) Heck, variables besides arrays do not need to be defined. More importantly, numbers could be seen exactly where they go when cells are being manipulated, and the code could be stepped through with ease. Once the algorithm has been developed, then it could be re-written in whatever language that is needed.
-Howard
No commentsLaser Rangefinder
The java version of the sample code was downloaded and recompiled and works like a charm after some initial compiling issues. Since it is a socket connection, it allows the image to be processed on another computer if needed. Now all that is needed is to modify the program to do what we needed. The image comes as one gigantic one-dimensional array.. i.e. image_array(1st pixel blue, 1st pixel green, first pixel red, 2nd pixel blue, 2nd pixel green, 2nd pixel red,..) so the array might need to be converted into a 2d array to make coding the algorithm less challenging. But adding this addition step might slow down the processing.
-Howard
No commentsLaser Rangefinder
The plan is to use the webcam and a laser to determine how far an object is from the robot. We wanted to use a horizontal laser line so multiple distance measurements could be made from each frame. The laser line proved to be too faint for the camera to detect it, even when various sets of filters are applied. A budget of 30 dollars was given to find a new laser that is bright enough for our purposes. A quick search proved that there were two options available, 5mW lasers, which is the one being used, or a 200mW laser diode off a DVD burner with no options in between. After further research, a 200mW laser proved to be a little too dangerous for our needs. If you’re curious on the capabilities of a 200mW laser, check out http://www.instructables.com/id/Laser-Flashlight-Hack!!/
For now, the line generating lens is removed from the laser so initial development of the image processing algorithm could begin.
We currently trying to implement the “webcam based DIY laser rangefinder” available at http://www.pages.drexel.edu/~twd25/webcam_laser_ranger.html The algorithm for finding the red dot is to detect the brightest-colored red pixel in the picture. Since there are no filters in Roborealm that fit our needs, a separate filter must to be created. Writing a program for roborealm allows us to focus on image processing and not worry about the webcam interface.
-Howard
No commentsLaser Rangefinder
Realizing that no one seemed to post on the front page of the blog in 10 months, I figured that I should provide a brief upgrade on the robot.
Roborealm is currently used as the backbone of this project. In addition to providing a substantial list of image processing capabilities, it also has the ability to use custom-made filters and to transfer images over the network. It has capabilities to control the pan/tilt/zoom of the Creative Live! webcam and the iRobot Create robotic platform. Roborealm itself can also be controlled via a network connection. This is essentially a one-stop shop for everything that we needed. Best of all, its free!
Since the discovery of Roborealm, we have been trying to get individual components to work properly with the software.
Creative Live! Webcam-
-Zoom can be controlled with precision
-There are six increments (three from center on each side) that the motor could pan to
iRobot Create-
-Interface is much cleaner and easier to use than the Roombacomm software package that was used before
-All the sensor data could be taken with ease since the VB scripting module operates in a polling mode
Laser-
-Laser is powered directly off the iRobot create and could be turned on and off using the iRobot Create module.
Roborealm Networking Capabilities-
-Good question!
The goal right now is to get the image processing capabilities to work, the last piece of the puzzle.
-Howard
No commentsUncategorized
Well… this is the completed prototype… (One can only hope…)
The new image at the top of the page was taken by the Creative pan and tilt camera stitched together. Nice work, Mike, for getting that going. Now if we can just figure out how to get the images and control the pan/tilt with our own code.
3 commentsUncategorized
Welcome to Groklab.org. This is your first post. Edit or delete it, then start blogging!
No commentsUncategorized