Title: Autonomous Parking System
1Autonomous Parking System
- ECE 345 Senior Design Project
- Project 24
- Prof. Swenson
- TA Han Seok Kim
Johnson Liu Fumie Saito Xiaozhou Zhu
2Pioneer 2
This robot is used in our experiment. It comes
from a lot of features. Using Visual C, we are
able to take pictures and control movement of the
robot.
3Agenda
- Introduction and Relevence
- Hardware
- Image Processing
- Planar Homography Algorithm
- Robot Motion
- Error Analysis / Improvements
- Questions
4What We Are Doing?
- Use GPS to guide the robot to the vicinity of the
parking space. - Use vision based control (image processing) to
detect the parking sign. - Use planar homography algorithm to maneuver the
robot into the parking space.
5Why Is This Important?
- Assists people with disabilities to guide their
vehicles. - Allows robot to autonomously explore
bio-hazardous environments.
6GPS
- GPS is a satellite based navigation.
- Without any other device, it produces about 15
meters error. - In our project, GPS is used to guide the robot to
the unknown parking space. - Garmin 12XL is chosen because it has a serial
port and is easy to connect to DGPS.
7NMEA(National Marine Electronics Association)
- It is used in world wide.
- Defines electrical signal requirements, data
transmission protocol and time, and specific
sentence formats. - Use a 4800 baud serial data bus.
- We used following sentences.
- GPGGA(Global Positioning System Fix Data)
- PGRME(Garmin Estimated Error Information
non-standard)
8Example Sentence of GPGGA
- GPGGA,042246,4006.708,N,08813.869,W
- GPGGA Global Positioning System Fixed Data
- 042246 Global Time
- 4006.708 N North Latitude
- 08813.869 W West Longitude
9Example Sentence of PGRME
- PGRME,6.4,M,14.2,M,6.4,M,
- PGRME Garmin Estimated Error Information
non-standard - 6.4,M Estimated horizontal position error (m)
- 14.2,M Estimated vertical position error (m)
- 6.4,M Estimated position error (m)
10Longitude and Latitude From GPS
11Estimated Error From GPS
12DGPS
- DGPS, Differential Global Positioning System,
improves the accuracy of the GPS system. - DGPS is able to increase the accuracy by using a
GPS receiver at a known location. - In our experiment, we used the DGPS to guide the
robot to the vicinity of the parking space. - GBR23 is the one we used in our experiment.
13Longitude and Latitude With DGPS
14Estimated Error With DGPS
15Switch Circuit
- GPS only has one input and one output. So, we
have to divide signal in two ways, GPS to DGPS - We used 555 Timer IC and 4 to 1 MUX to build a
switch Circuit.
16Schematic of Switch Circuit
17Signal between GPS and PC
18Image ProcessingGoals
- Isolate the parking pattern.
19Image ProcessingGoals
- Find 4 corners on the parking pattern needed to
compute R and T matrices.
20Image Processing--Stages
- Monochrome Filter
- Median Filter
- Group Pixels
- Find Largest Group
- Find Corners
21Image ProcessingMonochrome Filter
- Keeps only the pixels in the capture image with
Rlt 25, Glt 25, and B lt 25 (black pixels).
Before
After
22Image ProcessingMonochrome Filter
- Advantage
- Isolate the desired pattern from (most)
background object. - Disadvantage
- Cannot filter out all undesired background
objects.
23Image ProcessingMedian Filter
- Reduce some noise in the image.
Before
After
24Image ProcessingMedian Filter
- Advantage
- Reduces noiseincreases signal to noise ratio.
- Disadvantage
- Decreases resolution.
25Image ProcessingGroup Pixels
- Recognizes adjacent pixels as objects.
Before
After
26Image ProcessingGroup Pixels
- Advantage
- Recognizes objects in the image.
- Disadvantage
- Cannot distinguish two overlapping objects.
27Image ProcessingFind Largest Object
- Keeps the largest object groupedThe largest
object should be the parking pattern.
Before
After
28Image ProcessingFind Corners
- Find the coordinates of the 4 corners by applying
a mask. - (needed to compute R and T matrices).
29Image ProcessingFind Corners
- Corner pixels overlap with mask by 1 pixel.
30Image ProcessingFind Corners
- Internal pixels overlap with mask by more than 1
pixel.
31Image ProcessingFind Corners
- Limitations
- The image must have solid interior.
32Image ProcessingExample 1
33Image ProcessingExample 2
34Planar HomographyCoordinate Transformation
35Planar HomographyFinding Transformation Matrix H
- Transformation From One Coordinate System to
Another Satisfies the Equation - Simple Substitution Using Results in
-
- or
-
- Where R rotational transformation
- Where T translational transformation
- Where N Normal vector to the image plane
36Planar HomographyFinding Transformation Matrix H
- Multiplying the equation by the skew-symmetric
matrix (cross-product) will result in the
familiar linear algebra form of - Mathematical manipulations using the Kronecker
product will result in - Where
- And is the stacked H matrix
- This is identical to
37Planar HomographyFinding Transformation Matrix H
- To find a unique solution to H, 4 Point
Homography must be used, thus - Where
- Where
- Solving the Null Space of will get
38Planar HomographyFinding R and T
- Once we have the correct , we can use
Singular Value Decomposition (SVD) to decompose
into the R and T matrices. - There are 4 solutions to R and T matrices
eliminate based on positive depth constraint - Using the general equations of R and T to solve
for the angle( )between the two coordinate
planes and the distance( L) between the robot and
object.
39Robot Motion
40Robot Motion
- To prevent the robot from crashing into the
parking sign, the robot is stopped when the image
covers a certain fraction of the total camera
screen.
41Errors
- Accuracy is a must in vision. A few pixels off in
one direction or another will result in error.
For this reason, high resolution cameras are
needed. (320243 pixels) - 2 frames of reference are needed for this
project. More frames more sources of error - Symmetry and 3D reconstruction will only use 1
frame, which eliminates error.
42Improvements
- We were not able to connect the GPS to the serial
port on the robot. - The robot cannot locate and move to its parking
space. - We cannot command the robot to rotate or
translate at constant velocities.
43Cost Analysis
44Questions?