EGR494: Senior Project in Computer Engineering

Download Report

Transcript EGR494: Senior Project in Computer Engineering

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 highresolution video camera
• Coding of LabVIEW sub-VI to acquire
camera’s TCP/IP communication string
Vision System - Tasks
1) Build camera mount at optimal location
and angle
2) Image processing to parse white lines in
robot’s vision
3) Manage line data in LabVIEW and
integrate with adaptable motion-control
algorithms to steer robot on correct path
4) 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
Viewable Region
Processing Time Reduction
• Increase of viewable region allows
cropping of image
Top Edge
Cropped
Processing Time
Speedup
15% (153 lines)
16% (90ms)
24% (246 lines)
25% (140ms)
2. Image Processing
a) 3x3 dilate filter
b) Hough Transform for line detection
c) Line thickness sensor
i. 75% intensity contrast
ii. Accepts first 3 chains of 50 pixels
(possibly 3 best, but much slower)
Image Processing Samples
Unfiltered
arbitrary results
Filtered
more accurate
Image Processing Samples
Unfiltered
useless data
Filtered
accurate
Preliminary Results
Filtering Shadows
a) Maximum separation of 300 pixels
(window width of 1079)
b) “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
−
−
−
−
• Control panel
Video Clip (2x speed, 23 sec.)
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.