Faster and More Accurate Face
Detection on Mobile Robots Using
Geometric Constraints
Michael Dixon, Frederick
Heckel
,
Robert
Pless
, William D. Smart
Washington University in St. Louis
1
Motivation
•
Why is object detection important?
•
Examples
–
Autonomous vehicles
–
Human

robot interaction
2
Object detection in 2D
•
Common approach
–
Learn a classifier from labeled examples
–
Exhaustively classify all subwindows in the image
3
Over 3 million subwindows in a 640
×
480 image
Object detection on a robot
•
Advantages of robot vision
–
Known camera position and calibration
–
Knowledge of environment
–
Additional sensors
•
Goal: use this additional information to
reduce unnecessary tests by the detector
–
Less computation
–
Fewer opportunities for false positives
4
Images are projections
•
Image subwindows correspond to a range of
possible 3D positions and sizes
5
If certain 3D positions and sizes can be ruled out, you
can avoid testing the corresponding subwindows
Geometric constraints
•
Establish bounds on an object’s physical
position and size
•
Use the known camera to relate those physical
bounds to the image
•
Only test a subwindow with the detector if it
satisfies the geometric constraints
6
Face detection on robots
•
Perfect for geometric constraints
–
Robot has known camera
–
People’s heights and sizes are constrained
Height constraint
Size constraint
Known position
Known calibration
7
Applying geometric constraints
•
For each subwindow,
compute the range of
depths consistent
with the constraints
•
If the range is empty,
the subwindow can
be safely ignored
8
Satisfies
height
constraint
Satisfies
size
constraint
Height constraints
•
Given:
–
height of camera,
h
–
subwindow
center,
(
u
,
v
)
–
ground

plane normal,
n
–
height constraints,
h
min
and
h
max
•
Project
(
u
,
v
)
to ray in
world space,
r
•
Compute the range of
depths consistent with
the height constraints
9
h
h
max
h
min
n
r
Size constraints
•
Given:
–
width of the
subwindow
,
w
–
the camera’s focal length,
f
x
–
size constraints,
s
min
and
s
max
•
Compute the range of
depths consistent with
the size constraints
10
s
max
s
min
r
s
Combining constraints
•
For each
subwindow
,
(
u,v,w
)
:
–
Compute range of valid depths,
•
Can pre

compute quickly
–
Assuming no camera roll,
u
can be ignored
–
For all
v
, compute
D
h
–
For all
w
, compute
D
s
–
Store each
D
in
v
by
w
look

up table
–
Only update if the camera
tilts or zooms
11
D
h
(
v
)
D
s
(
w
)
D
Incorporating depth measurements
•
For each subwindow,
compute range of depths,
M
, consistent with
external depth
measurements
•
If
D
and
M
do not
overlap, the subwindow
can be safely ignored
12
Stereo disparity
Incorporating laser range data
•
Project laser readings
into image
•
Estimate depth at each
pixel assuming a uniform
footprint
–
Preprocess the range data
to fill small gaps
13
Laser rangefinder
Evaluation
•
B21r, SICK PLS Laser rangefinder (180 degrees), Bumblebee
stereo camera
•
Control: Ran OpenCV detector at 25 scales from 20 to 200
pixels, scaling by a factor of 1.1, shifting window in increments
of 0.5∙
w
/
w
0
14
300 pairs of stereo images, 416 labeled faces
Reduction in computation
•
Geometric constraints
alone cut computation
in half
•
Incorporating depth
from stereo or laser
reduces computation by
an average of 85%
15
Improved accuracy
•
Evaluated the
detector over the full
range of sensitivity
thresholds
•
Three times fewer
false positives
16
Example results
•
OpenCV
face detector
•
Geometric constraints + laser measurement
17
Control
Laser
Comments 0
Log in to post a comment