Title: RealTime Simultaneous Localization and Mapping with a Single Camera Mono SLAM
1Real-Time Simultaneous Localization and Mapping
with a Single Camera(Mono SLAM)
- 2005. 9. 26
- Young Ki Baik
- Computer Vision Lab.
- Seoul National University
2Contents
- References
- Kalman filter and SLAM
- Mono-SLAM
- Simulation Demo
- Conclusion
3References
- Real-Time Simultaneous Localisation and Mapping
with a Single Camera - Andrew J. Davison (ICCV 2003)
- A Solution to the Simultaneous Localization and
Map Building (SLAM) problem - Gamini Dissanayake. Et. Al. (IEEE Trans. Robotics
and Automation 2001) - An Introduction to the Kalman Filter
- G. Welch and G. Bishop (SIGGRAPH 2001)
- Site for Quaternion
- http//www.euclideanspace.com/maths/geometry/rotat
ions
4Kalman filter
- What is a Kalman filter?
- Mathematical power tool
- Optimal recursive data processing algorithm
- Noise effect minimization
- Applications
- Tracking (head, hands etc.)
- Lip motion from video sequences of speakers
- Fitting spline
- Navigation
- Lots of computer vision problem
5Kalman filter
Sensor noise
Measurement error
Landmark
Kalman filter
How can we obtain optimal pose of robot and
landmark simultaneously?
Real location
Robot
Location with error
Refined location
Movement noise
Localizing error (Processing error)
6Kalman filter
- Example (Simple Gaussian form)
- Assumption
- All error form Gaussian noise
- Estimated value
- Measurement value
7Kalman filter
- Example (Simple Gaussian form)
- Optimal variance
- Optimal value
Innovation
Kalman gain
8SLAM
- SLAM
- Simultaneously Localization and map building
system - EKF(Extended Kalman filter)-based framework
- If we have the solution to the SLAM problem
- Allow robots to operate in an environment without
a priori knowledge of a map - Open up a vast range of potential
- application for autonomous vehicles
- and robot
- Research over the last decade has
- shown that SLAM is indeed possible
9SLAM
- Kalman filter and SLAM problem
- Extended Kalman filter form for SLAM
- Prediction
- Observation
- Update
Previous value
Input and measure
Function
Computed value
10Mono SLAM
- What is Mono SLAM?
- EKF-SLAM framework (EKF Extended Kalman Filter)
- Single camera
- Unknown user input
- User input
- Known control input
- Encoder information of robot or vehicle (odometry)
?
Most case of localization system, odometry
information is used as initial moving
value. Mono- slam don't use odometry information
and it can be new feature.
11Mono SLAM
W World coordinate
R Local coordinate
r Camera position vector in W frame
y Landmark position vector in W frame
12Mono SLAM
- Motion model
- 3D position and orientation
This state vector is parameters for conventional
SLAM .
13Mono SLAM
- Motion model
- Key difference between Mono- and
conventional-SLAM - In the robot case, there is in possession of
the control inputs driving the motion, such as
moving forward 1m with steering angle 5 degree - In the hand helded camera case, we do not have
such prior information about a persons movement. - Assumption (Mono SLAM)
- In the case of a camera attached to a person,
it takes account of the unknown intentions of the
person, but these too can be statistically
modeled. - Constant velocity, constant angular velocity
model are chosen as initial value and added
undetermined accelerations occur with a Gaussian
profile.
14Mono SLAM
- Motion model (Mono SLAM)
- 3D position and orientation
The total dimension of state vector is 13.
15Mono SLAM
- Motion model (Mono SLAM)
- Unknown user input (or noise vector)
- In each time step, unknown acceleration
and angular acceleration processes of zero
mean and Gaussian distribution.
16Mono SLAM
- Motion model (Mono SLAM)
- State update function
17Mono SLAM
- Motion model (Mono SLAM)
- Covariance update
- In the EKF, the new state estimate
must be accompanied by the increase in state
uncertainty (process noise covariance) for the
camera after this motion. - Qv is found via the Jacobian calculation
18Mono SLAM
- Motion model (Mono SLAM)
- Covariance of noise vector
- The rate of growth of uncertainty in this
motion model is determined by the size of ,
and setting these parameters to small or large
values defines the smoothness of the motion we
expect. - small
- - We expect a very smooth motion with small
accelerations, and would be well placed to track
motion but unable to cope with sudden rapid
movements - High
- - The uncertainty in the system increases
significantly at - each time step.
- - This can be cope with rapid accelerations.
19Simulation Demo
- Condition
- Simple circular motion
- Five 3D landmarks
- Observation is 2D using projective camera model
- 3D view
20Conclusion
- Conclusion
- Localization is possible with out control input.
- Simulation result
- 3D position can be estimated using SLAM through
the projected landmark information. - It needs more debuging for perfect simulation.
21(No Transcript)
22Mono SLAM
- Quaternion form for orientation (or rotation)
- Eular angle
- Arbitrary 3D rotation is equal to one rotation
(by scalar angle) around an axis. - The result of any sequence of rotation is equal
to a single rotation around an axis. - 3 degree of freedom in 3D space
- Gimbal lock problem
23Mono SLAM
- Quaternion form for orientation (or rotation)
- Axis angle
- Arbitrary 3D rotation composed by 3-d unit
vector and 1-d angle value - 4 degree of freedom in 3D space
- Singularity problem
24Mono SLAM
- Quaternion form for orientation (or rotation)
- Quaternion angle
- Arbitrary 3D rotation composed by 3-d unit
vector and 1-d angle value - 4 degree of freedom in 3D space
- Why quaternion?
- Simpler algebra
- Easy to fix numerical error
- No singularity and Gimbal lock problem