210 likes | 313 Views
EGR494: Senior Project in Computer Engineering. James Painter. Primary Goals. Fully develop vision system for Wunderbot IV autonomous robot Adapt it specifically for June 2008 Intelligent Ground Vehicle Competition (IGVC). Secondary Goals.
E N D
EGR494:Senior Project in Computer Engineering James Painter
Primary Goals • Fully develop vision system for Wunderbot IV autonomous robot • Adapt it specifically for June 2008 Intelligent Ground Vehicle Competition (IGVC)
Secondary Goals • Code a closed-loop motor control system for accurate robot motion response • Writing/debugging of LabVIEW code for synchronization of all hardware subsystems
Vision System – Prior Work • Acquisition of DVT Legend 554C XE high-resolution video camera • Coding of LabVIEW sub-VI to acquire camera’s TCP/IP communication string
Vision System - Tasks • Build camera mount at optimal location and angle • Image processing to parse white lines in robot’s vision • Manage line data in LabVIEW and integrate with adaptable motion-control algorithms to steer robot on correct path • Properly format the gathered vision data to interface with path-planning code – will be used to map traversed course
Status - Fall 2007 • Primitive path detection algorithm calculated gradient • Found high contrast in two small, filtered regions to simulate stereo vision
1. Camera Mount • Built as part of new utility pole, sits back 16” from rear bumper and 4’ up • Secured with adjustable wing nuts on angle brackets
Processing Time Reduction • Increase of viewable region allows cropping of image
2. Image Processing • 3x3 dilate filter • Hough Transform for line detection • Line thickness sensor • 75% intensity contrast • Accepts first 3 chains of 50 pixels (possibly 3 best, but much slower)
Image Processing Samples Unfiltered Filtered arbitrary results more accurate
Image Processing Samples Unfiltered Filtered useless data accurate
Filtering Shadows • Maximum separation of 300 pixels (window width of 1079) • “Straightness” of less than 75-pixel deviation from averaged center line accepted filtered
3. Motor Control • Line position data sent to on-board PC via TCP/IP • LabVIEW code plots the line on a local (soon global) map
Line depth and lateral position determine how sharply to turn and whether to back up Far Near (sharper turn) Outlying Obstacle Immediate Obstacle (sharper turn) Outlying Obstacle
Designed controls for adjusting numerous parameters - allow dynamic motor control adaptation for different environments • Overall target speed • Backup speed • Proximity for backing up • Turning aggressiveness (factoring depth and lateral position separately) • Minimum line width
Upcoming Tasks • Introduce line averaging, where points outside a given standard deviation are discarded • Increase rate of TCP/IP data transfers • Integrate all subsystems and plot global, dynamic map of lines and obstacles
References • R. Bishop. LabVIEW 8 Student Edition, Book & CD-ROM Edition, Upper Saddle River, NJ: Prentice Hall, 2006. • Installation and User Guide for DVT Vision Sensors, Cognex Corporation, May 2006. • DVT Script Reference Manual, Cognex Corporation, August 2003. • Dougherty, Edward R. Electronic imaging technology, Bellingham, WA: SPIE Optical Engineering Press, 1999. • A.L. Kesidis and N. Papamarkos. “A Window-Based Inverse Hough Transform.” Pattern Recognition 33 (2000): 1105-1117.