5. Overview
B31XP Robotics Project 5
Indoor 420g
HD Camera 720P 30FPS
Outdoor 320g
Ultrasound Sensor
Very Light and High Resistance Plastic
Specific Propeller
What is Ar.Drone?
6. Agenda
• Overview
• Related Work
• Control Processing
• Vision Processing
• Future Work
B31XP Robotics Project 6
7. Related Work I
B31XP Robotics Project 7
Blob Based Obstacle Avoidance
Algorithm
• Assuming the floor as only one pattern or one color.
• The blob repressing the floor is the largest blob.
• Each image pixel is classified as an obstacle or the ground
based on its color appearance.
Limitation
For AUV the floor is neither the largest blub nor mono-color .
9. Related Work II
B31XP Robotics Project 9
Single Image Perspective Cue
Algorithm
• Use the Canny edge detector and apply a probabilistic Hough
Transform to find long lines.
• In a corridor environment, the long lines converge towards a
vanishing point at the end of the corridor.
Limitation
Distinct and confined environments should be provided.
11. Related Work III
B31XP Robotics Project 11
Stereo Vision
Limitation
Require at least two cameras, and the robot has only one eye!
Monocular Stereo Vision
Limitation
In our task, robot is moving forward!
Algorithm
Assuming Static environment (two frames considered as two
different cameras).
12. Related Work IV
B31XP Robotics Project 12
Optical Flow
Algorithm
• Optical flow is an algorithm to tell the direction and magnitude change of
the intensity from successive images.
• Points closer to the camera move more quickly across the image plane.
13. Agenda
• Overview
• Related Work
• Control Processing
• Vision Processing
• Future Work
B31XP Robotics Project 13
16. Control Processing
B31XP Robotics Project 16
Ros Driver
• "ardrone_autonomy" :ROS driver for Parrot AR-
Drone quadrocopter
• AR-Drone update frequency at 200Hz
• Driver operates in two modes:
• real-time : publish information instantly
• fixed rate: publish data at a fixed rate
17. Control Processing
B31XP Robotics Project 17
Sending Control Command
• Publishing an Empty ROS messages to the ff
topics to takeoff/land and rest
– ardrone/takeoff
– ardrone/land
– ardrone/reset
18. Control Processing
B31XP Robotics Project 18
Sending Control Command
• Publish a message of type geometry_msgs::Twist
to velocity command topic
19. Control Processing
B31XP Robotics Project 19
Obstacle Avoidance Control
Algorithm
1. Fly in the x-direction
straight.
2. Fly sideways when the
obstacle is found in the
field of view.
20. Agenda
• Overview
• Related Work
• Control Processing
• Vision Processing
• Future Work
B31XP Robotics Project 20
21. Vision Processing
B31XP Robotics Project 21
Flowchart
Extract
Features
Current
Image
Filter
Features
Find
Obstacles
Select
Nearest
Obstacle
Estimate Position &
Orientation of
Selected Obstacle
Publish
Flight
Command
Previous
Image
23. Vision Processing
B31XP Robotics Project 23
Results – SURF I
After K
frames
Frame X
Frame X+K
Tomoyuki Mori and Sebastian Scherer, "First Results in
Detecting and Avoiding Frontal Obstacles from a Monocular
Camera for Micro Unmanned Aerial Vehicles," International
Conference on Robotics and Automation, May, 2013
24. Vision Processing
B31XP Robotics Project 24
Results – SURF II
Matching
Result
Filtered Matching
Result
Tomoyuki Mori and Sebastian Scherer, "First Results in
Detecting and Avoiding Frontal Obstacles from a Monocular
Camera for Micro Unmanned Aerial Vehicles," International
Conference on Robotics and Automation, May, 2013
26. Vision Processing
B31XP Robotics Project 26
Results – Optical Flow (Dense)
Features of
1st Frame
Matching
Result
Qiyuan Qiu, "Reconnaissance Drone," ECE and ME Spring
Senior Design Show and ECE Senior Honors Show, 2013
27. Vision Processing
B31XP Robotics Project 27
Problems
• Computation time of feature matching -> GPU
processing (CUDA) in ROS!!
• Lack of important features -> Color-based
segmentation for tree trunks
• Background Noise -> Outdoor pre-processing
step (denoising, contrast correction)
• No advantage of using color images ->
Selection of suitable color space
28. Agenda
• Overview
• Related Work
• Control Processing
• Vision Processing
• Future Work
B31XP Robotics Project 28