Académique Documents
Professionnel Documents
Culture Documents
Omid.Asudeh@mavs.uta.edu # of slides : 30
University of Texas At Arlington
Pedestrian Detection
Pedestrian Tracking
Distance Detection
People Detection
What is HOG (Histograms of Oriented Gradients)?:
Answer: It is a kind of feature
descriptor.
Then what is a feature descriptor?
Descriptors
Objects
Classifier (SVM)
HOG
Yes
Is Pedestrian
No
Is Not Pedestrian
HOG in Open CV :
Input : an image
Output : a list of rectangles each bounding a pedestrian
Idea : Read a video stream frame by frame and do HOG
on each frame and show the results
Slow
seems that you forgot about the pedestrian. Using this algorithm, the
program will track all the feature points (corners) of the image and not
specially those related to the people.
HOG detects people but is not fast enough to be used in real-time applications
Idea :
1)Read the video stream frame by frame
2)Do people detection using HOG until finding people.
3)Do corner detection for each people
4)Track corners using LK from the current frame to the
next.
But Why??
Good idea, but it still have some issues!!
Initial Idea
People-list =
Find People
(HOG) in ImgA
No
People found?
Yes
ppeoplelist
ImgB =
Get Next frame
1. Tracked-feature-list =
Track (ImgA,ImgB,Feature-list)
2. Feature-list = Tracked-feature-list
3. ImgA = ImgB
4. Show (Feature-list)
Feature-list + =
findFeaturePoints(p)
Detection
Tracking loop
10
Developing Idea...
People found?
ImgB =
Get Next frame
1. Tracked-feature-list =
Track (ImgA,ImgB,Feature-list)
2. Feature-list = Tracked-feature-list
3. ImgA = ImgB
4. Show (Feature-list)
Yes
ppeoplelist
# of tracked features
<Threshold
Feature-list + =
findFeaturePoints(p)
Detection
No
yes
Tracking loop
11
Developing Idea...
ImgA = Get Current frame
People-list =
Find People
(HOG) in ImgA
No
People found?
Yes
ppeoplelist
ImgB =
Get Next frame
1. Tracked-feature-list =
Track (ImgA,ImgB,Feature-list)
2. Feature-list = Tracked-feature-list
3. ImgA = ImgB
4. Show (Feature-list)
# of tracked features No
<Threshold
yes
Tracking loop
Feature-list + =
findFeaturePoints(p)
Detection
A list of rectangles
13
What is a rectangle?
<X,Y,W,H>
<(x1,y1,w1,h1);(x2,y2,w2,h2);(x3,y3,w3,h3),...>
14
15
Coordinates in
original image
X = X1+x'
Y = Y1+y'
16
Yes, I did.
You know what? I think there is
something badly wrong with your
algorithm
What??????
17
Challenge :
so it
19
ImgB =
Get Next frame
1. Tracked-feature-list =
Track (ImgA,ImgB,Feature-list)
2. Feature-list = Tracked-feature-list
3. ImgA = ImgB
4. Show (Feature-list)
No
ppeoplelist
Feature-list + =
findFeaturePoints(p)
(# of tracked features
<Threshold)
OR
(# of features are not
changing for a while )
yes
Detection
Tracking loop
20
Distance recognition
21
22
Image plane
v0
v
h
f k vh
Z=
vv 0
23
24
h_i
h_j
Base line
25
j
V_ i'
Goal
i
d_i
d_ j
V'_b
V_ j'
j'
i'
Detection Rectangle
26
Scaling
The closer the pedestrian to the camera the more difference
between the points.
V_ i'
Scaling factor:
V_ j'
j'
i'
= Average
i, j people[ p]
V j' V i'
d id j
V b =V ' b
27
28
References:
Learning opencv, 1st edition , O'Reilly Media, Inc. 2008
ISBN: 9780596516130, Dr. Gary Rost Bradski, Adrian Kaehler
http://en.wikipedia.org/wiki/Histogram_of_oriented_gradients
https://chrisjmccormick.wordpress.com/2013/05/09/hog-person-detectortutorial/
http://en.wikipedia.org/wiki/Lucas%E2%80%93Kanade_method
29
Omid.Asudeh@mavs.uta.edu
30