Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image...
Transcript of Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image...
![Page 1: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/1.jpg)
Presenter: Dae-Yong
Object Detection
Part2
![Page 2: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/2.jpg)
Contents
Traditional Object Detection
- Feature: Histogram of Oriented Gradient
- Classifier: Support Vector Machine
![Page 3: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/3.jpg)
Traditional Object Detection
![Page 4: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/4.jpg)
Traditional Object Detection: Pipeline
Input
ImageClassification
Detection
Output
Candidate
Generation
Feature
Extraction
![Page 5: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/5.jpg)
Traditional Object Detection: Pipeline
Input
ImageClassification
Detection
Output
Candidate
Generation
Feature
Extraction
![Page 6: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/6.jpg)
Traditional Object Detection: Pipeline
Input
ImageClassification
Detection
Output
Candidate
Generation
Feature
Extraction
![Page 7: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/7.jpg)
Traditional Object Detection: Pipeline
Input
ImageClassification
Detection
Output
Candidate
Generation
Feature
Extraction
Car CarCar Pedestrian
Bus
Traffic LightTraffic Light
![Page 8: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/8.jpg)
Input
ImageClassification
Detection
Output
Candidate
Generation
Feature
Extraction
Real data is too complicate to explain what it is. FEATURE
Features in Computer Vision
- Color, Edge, Local Binary Pattern(LBP), Scale Invariant Feature Transform(SIFT),
Histogram of Oriented Gradient(HOG), …
RG
B
Color
Edge
HOG
Features in Computer Vision
- Color, Edge, Local Binary Pattern(LBP), Scale Invariant Feature Transform(SIFT),
Histogram of Oriented Gradient(HOG), …
Traditional Object Detection – Feature Extraction
![Page 9: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/9.jpg)
Traditional Object Detection – Feature Extraction
Histogram of Oriented Gradient Pipeline
Input Image Compute gradient
HOG Feature Extraction
Compute Hist. of Oriented Gradient for each 8x8 Cell
8x8 cell division
It will be used for describing object
Magnitude Orientation
![Page 10: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/10.jpg)
*Magnitude = 𝒅𝒙𝟐 + 𝒅𝒚𝟐 *(Unsigned) Orientation = 𝒂𝒓𝒄𝒕𝒂𝒏𝒅𝒚
𝒅𝒙
Traditional Object Detection – Feature Extraction
How to compute Histogram of Oriented Gradient?
Magnitude Orientation
9 bins
Magnitude
Orientation 0 20 40 60 80 100 120 140 160
![Page 11: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/11.jpg)
*Magnitude = 𝒅𝒙𝟐 + 𝒅𝒚𝟐 *(Unsigned) Orientation = 𝒂𝒓𝒄𝒕𝒂𝒏𝒅𝒚
𝒅𝒙
Traditional Object Detection – Feature Extraction
How to compute Histogram of Oriented Gradient?
Magnitude Orientation
9 bins
Magnitude
Orientation 0 20 40 60 80 100 120 140 160
81
![Page 12: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/12.jpg)
*Magnitude = 𝒅𝒙𝟐 + 𝒅𝒚𝟐 *(Unsigned) Orientation = 𝒂𝒓𝒄𝒕𝒂𝒏𝒅𝒚
𝒅𝒙
Traditional Object Detection – Feature Extraction
How to compute Histogram of Oriented Gradient?
Magnitude Orientation
9 bins
Magnitude
Orientation 0 20 40 60 80 100 120 140 160
85.25 80.75
![Page 13: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/13.jpg)
*Magnitude = 𝒅𝒙𝟐 + 𝒅𝒚𝟐 *(Unsigned) Orientation = 𝒂𝒓𝒄𝒕𝒂𝒏𝒅𝒚
𝒅𝒙
Traditional Object Detection – Feature Extraction
How to compute Histogram of Oriented Gradient?
Magnitude Orientation
9 bins
Magnitude
Orientation 0 20 40 60 80 100 120 140 160
94.35 162.65
![Page 14: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/14.jpg)
*Magnitude = 𝒅𝒙𝟐 + 𝒅𝒚𝟐 *(Unsigned) Orientation = 𝒂𝒓𝒄𝒕𝒂𝒏𝒅𝒚
𝒅𝒙
Traditional Object Detection – Feature Extraction
How to compute Histogram of Oriented Gradient?
Magnitude Orientation
0 20 40 60 80 100 120 140 160
94.35 162.65 33.25 99.75
It decreases 64 dimension to 9 dimension (85%↓)
9 bins
Magnitude
Orientation 40 60 120 140 160
000
![Page 15: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/15.jpg)
How to describe TARGET OBJECT using HOG feature?
32
32
x16
This FEATURE vector describes PEDESTRIAN
4x4 cells
144-dimensional vector: HOG Feature Descriptor
Traditional Object Detection – Feature Extraction
Pre-defined patch
![Page 16: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/16.jpg)
Traditional Object Detection – Candidate Generation
Input
ImageClassification
Detection
Output
Candidate
Generation
Feature
Extraction
What is pre-defined patch?
- Object candidate
- Sliding Window Scheme / Object Proposal Scheme
- Designed by user
*Parameters: width, height, stride
Width: 2 pix
Height: 3 pix
Stride: 1 pix
Width: 4 pix
Height: 2 pix
Stride: 2 pix
1pixel
![Page 17: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/17.jpg)
Another way to consider multiple scale/size of objects
Fixed Window
“Image Pyramid”Siz
eScale
Traditional Object Detection – Candidate Generation
![Page 18: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/18.jpg)
Traditional Object Detection – Classification
Input
ImageClassification
Detection
Output
Candidate
Generation
Feature
Extraction
Support Vector Machine (SVM)
- Goal: Classify POSITIVE(+) – NEGATIVE(-)
- How: Define HYPERPLANE which maximizes the margin btw two classes
PIC: https://medium.com/@haydar_ai/learning-data-science-day-11-support-vector-machine-8ef06da91bfc
Negative Sample
Positive Sample
Margin
![Page 19: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/19.jpg)
What is the hyperplane?
3-dimensional space>> Hyperplane: plane
Support Vector Machine (SVM)
Def) A subspace of one dimension less than its ambient space
2-dimensional space>> Hyperplane: line
n-dimensional space>> Hyperplane: n-1 dim
?
𝒇 𝒙, 𝒚 = 𝒂𝒙 + 𝒃𝒚 + 𝒄 𝒇 𝒙, 𝒚, 𝒛 = 𝒂𝒙 + 𝒃𝒚 + 𝒄𝒛 + 𝒅
𝐰𝐓𝐱 = 𝟎
What we know from training data
What we need to compute
𝐰 =𝒂𝒃𝒄
𝐱 =𝒙𝒚𝟏
![Page 20: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/20.jpg)
What is the OPTIMAL hyperplane?
Support Vector Machine (SVM)
Case 1) Case 2) Case 3)
How to obtain the OPTIMAL hyperplane?
1. Select two hyperplanes which separate
the data (Gray dashed lines)
2. Maximize their distances (= margin)
Margin
Optimal Hyperplane
Data in Class A
Data in Class B
![Page 21: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/21.jpg)
Two hyperplane selection
Support Vector Machine (SVM)
𝐰 ⋅ 𝐱 + 𝐛 = 𝟎
𝐰 ⋅ 𝐱 + 𝐛 ≥ 𝜹 for 𝐱 having the class A (label: 1)
𝐰 ⋅ 𝐱 + 𝐛 ≤ −𝜹 for 𝐱 having the class B (label: -1)
Data in Class A
Data in Class B
[Constraints]
Objective Function: 𝐲 𝐰 ⋅ 𝐱 + 𝐛 ≥ 𝟏
𝐰 ⋅ 𝐱 + 𝐛 = −𝜹
𝐰 ⋅ 𝐱 + 𝐛 = 𝜹
![Page 22: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/22.jpg)
Maximize distance between two hyperplanes
Support Vector Machine (SVM)
𝐰 ⋅ 𝐱 + b = 𝟎
𝐰 ⋅ 𝐱 + b = −𝛿
𝐰 ⋅ 𝐱 + b = 𝛿
Maximize 𝑚 ↔ Minimize 𝐰
Distance between two hyperplanes: 𝑚 =2
w
Minimize 𝐰 subject to 𝐲 𝐰 ⋅ 𝐱 + b ≥ 1
https://www.svm-tutorial.com/2015/06/svm-understanding-math-part-3/
Numerical Optimization
![Page 23: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/23.jpg)
Kernel trick
Support Vector Machine (SVM)
- How can we handle data which are not linearly separable?
→ Utilize KERNEL TRICK
https://www.youtube.com/watch?v=9NrALgHFwTo
![Page 24: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/24.jpg)
Practice with Toy Example
COMING SOON
![Page 25: Object Detection - seoulai.com20171014... · Traditional Object Detection: Pipeline Input Image Classification Detection Output Candidate Generation Feature Extraction Car Car Car](https://reader033.fdocuments.in/reader033/viewer/2022052022/6037a5095b39c334d927c779/html5/thumbnails/25.jpg)