TÌM HIỂU KỸ THUẬT PHÁT HIỆN NGƯỜI TRONG VIDEO GIÁM SÁT LỚP HỌC
description
Transcript of TÌM HIỂU KỸ THUẬT PHÁT HIỆN NGƯỜI TRONG VIDEO GIÁM SÁT LỚP HỌC
TÌM HIỂU KỸ THUẬT PHÁT HIỆN NGƯỜI TRONG VIDEO GIÁM SÁT
LỚP HỌC
GVHD: TS. Đinh Bá Tiến
SVTH: Nguyễn Xuân Tường Huy Nguyễn Hoàng Vũ
Nội dung trình bày
•Giới thiệu
1
•Phát hiện màu tóc người
2
•Phát hiện phần thân trên người bằng SVM và HOG
3
•Phát hiện phần đầu người bằng Snake
4
•Tổng kết
5
Nội dung trình bày
•Giới thiệu
1
•Phát hiện màu tóc người
2
•Phát hiện phần thân trên người bằng SVM và HOG
3
•Phát hiện phần đầu người bằng Snake
4
•Tổng kết
5
Giới thiệu
• Vấn đề phát hiện và giám sát đối tượng được ứng dụng trong nhiều lĩnh vực
Giới thiệu
Có bao nhiêu người trong lớp học ???
Giới thiệu bài toán
• Tìm hiểu các kỹ thuật phát hiện người và ứng dụng vào video giám sát lớp học
• Các giả định– Màu tóc của người là màu đen– Phát hiện trên một dãy bàn quan sát rõ
Hướng tiếp cận
Hair Blobs
SVM Result
Result
Frame
Mục tiêu
• Mục tiêu: loại bỏ nền, tách ra được vùng đối tượng
• Phương pháp:– Trừ nền– Tách màu tóc
Các phương pháp trừ nền
• Ưu điểm: camera cố định• Khuyết điểm: sự che lấp lẫn nhau, các vật
dụng …
Tách màu tóc
• Ưu điểm: Màu tóc là nổi bật, phân biệt rõ• Khuyết điểm: gây nhiễu bởi các khu vực tối
Single Gaussian
Single Gaussian
• Xác định một điểm có cùng màu với màu chúng ta muốn tìm hay không
• Gồm hai bước:– Huấn luyện– Phân lớp
Huấn Luyện
Huấn Luyện Means ()Covariance ()
Nguồn: http://en.wikipedia.org/wiki/HSL_and_HSV
Trong đó:- : means- : covariance- n: tổng pixel- cj : giá trị màu tại pixel thứ j
Thực nghiệm
• Bộ dữ liệu màu tóc: 30 ảnh với kích thước 100 x 100 pixels
• Kết quả sau khi huấn luyện:
Means:
Covariance:
Phân Lớp
P(c|color)
Ngưỡng
Phân Lớp
Means ()Covariance ()
P(c|color) > Ngưỡng
P(c|color) ≤Ngưỡng
Màu Tóc
Ngưỡng = -6.5
Thực nghiệm
[-129, -117)
[-117, -105)
[-105, -93) [-93, -81) [-81, -69) [-69, -57) [-57, -45) [-45, -33) [-33, -21) [-21, -9) [-9, -5]0
10000
20000
30000
40000
50000
60000
p(c|color)
Tong
so p
ixel
s
Ngưỡng = -6.5
Kết quả
Kết quả thực nghiệm
Video Số người thực tế Số khu vực phát hiện được
Precision
1 15 29.65 0.5109
2 14 29.5 0.5050
3 13 21.15 0.6737
4 7 9.3 0.5483
Hướng tiếp cận
Hair Blobs
SVM Result
Result
Frame
Upper body detection by SVM + HOG
• Dữ liệu đầu vào:– Khu vực được phát hiện có màu tóc người
• Mục tiêu:– Phát hiện phần thân trên của người
input Tính HOG
SVM
Result
Upper body detection by SVM + HOG
• Ý tưởng chính của phương pháp
HISTOGRAM OF GRADIENT (HOG)
Histogram of gradient (HOG)
HOG: đặc trưng được dùng nhiều trong lĩnh vực phát hiện đối tượng.
Đề xuất bởi Bill Triggs và Navel Dalal vào năm 2005 tại viện nghiên cứu INRIA
Ý tưởng: hình dạng và trạng thái xuất hiện (appearance) của vật có thể được đặc trưng bằng sự phân bố về gradient và hướng của cạnh (edge direction).
22
23
Rút trích đặc trưng
– Tính toán HOG• Chuẩn hóa ảnh• Tính gradient• Tính HOG cho từng cell
– Thu thập HOG• Tính và chuẩn hóa vector đặc trưng cho từng block • Thu thập các đặc trưng HOG cho các cửa sổ
Chuẩn hóa ảnh
Cân bằng Histogram
Làm giảm đi ảnh hưởng của sự thay đổi ánh sáng và shadowing ( che chắn)
24Nguồn: Wei Jiang, "Human Feature Extraction in VS image Using HOG Algorithm"
Tính gradient
Lấy gradient theo chiều x: Ảnh X-Gradient
Lấy gradient theo chiều y: Ảnh Y-Gradient
1
0
1
101
25Nguồn: Wei Jiang, "Human Feature Extraction in VS image Using HOG Algorithm"
Tính gradient
Hướng (orientation)Biên độ (magnitude)
X-Gradient
Y-Gradient
Orientation
Magnitude
26Nguồn: Wei Jiang, "Human Feature Extraction in VS image Using HOG Algorithm"
Tính gradient histogram từng cell
0-20 21-40
41-60
61-80
81-100
101-120
121-140
141-160
161-180
0
1
2
3
4
5
6
Hướng
Biên
Độ
27Nguồn: Wei Jiang, "Human Feature Extraction in VS image Using HOG Algorithm"
Tính vector đặc trưng từng block
28Nguồn: Wei Jiang, "Human Feature Extraction in VS image Using HOG Algorithm"
Thu thập đặc trưng từng cửa sổ
• Đặc trưng của một cửa sổ sẽ được tính bằng cách ghép từng đặc trưng của từng block tạo nên cửa sổ đó.
• Lưu ý : các block được lắp ghép trùng lắp nhau
29Nguồn: Wei Jiang, "Human Feature Extraction in VS image Using HOG Algorithm"
SUPPORT VECTOR MACHINES (SVM)
SVM
• SVM: Giới thiệu năm 1992 bởi Vladimir Vapnik và hai đồng sự Bernhard Boser và Isabelle Guyon
• Bộ phân lớp:– Phân loại đâu là phần thân trên người?
• Trải qua hai bước:– Huấn luyện dựa trên tập dữ liệu positive và
negative– Phân lớp
Huấn Luyện
Positive Negative
HUẤN LUYỆN BỘ PHÂN LỚP
SVM
Rút trích đặc trưng HOG
Phân Lớp
SVM
Rút trích đặc trưng HOG
Rút trích đặc trưng HOG
Kết quả
SVM +
HOG
Kết quả thực nghiệm
Video Số người thực tế Số người được phát hiện
Precision
1 15 18.65 0.6943
2 14 14.65 0.7235
3 13 14.47 0.8583
4 7 10.4 0.4711
Hướng tiếp cận
Hair Blobs
SVM Result
Result
Frame
Snake
• Giới thiệu trong bài báo “Probabilistic Data Association Methods for Tracking Multiple and Compound Visual Object”, bởi Chirtopher Rasmussen và Gregory D.Hager
Nguồn: Chirtopher Rasmussen và Gregory D.Hager, “Probabilistic Data Association Methods for Tracking Multiple and Compound Visual Object”,
Snake
• Mục đích:– loại bỏ nhiễu trong
kết quả phát hiện người bằng SVM + HOG
• Dữ liệu đầu vào:– Khu vực màu tóc
người– Khu vực được phát
hiện có người bởi SVM
Các phát hiện sai gây nhiễu
• Ý tưởng hoạt động của Snake
Snake
Phần đầu của người
Snake
p < threshold
Snake
p ≥ threshold
threshold = 0.25
Snake
• Tư thế của người thì đa dạng và phức tạp
Biến đổi Affine
…
Thực nghiệm
• Chuyển vị:– x: -12 18 pixels, step 3 pixels– y: -21 12 pixels, step 3 pixels
• Scale:– x, y: 0.9 1.1, step 0.1
• Xoay: – -5o 5o, step 5o
Snake
• Omega shape
Snake
Nhận xét
• Ưu điểm– Nhanh, đơn giản.
• Khuyết điểm– Tốn chi phí bộ nhớ lưu trữ– Phụ thuộc vào kết quả của bước xác định đường
viền và dạng mẫu ban đầu.
Nội dung trình bày
•Giới thiệu1•Phát hiện màu tóc người2•Phát hiện phần thân trên người bằng SVM và HOG3•Phát hiện phần đầu người bằng Snake4•Tổng kết5
Kết quả thực nghiệm
Video Số người thực tế Số người được phát hiện
Precision
1 15 15.85 0.8075
2 14 6.65 0.9022
3 13 12.05 0.9958
4 7 7 0.7071
Khó khăn
• Ánh sáng thay đổi• Khu vực đầu người tiếp xúc với những vùng
hoặc đồ vật có màu tối• Chất lượng video kém
Hướng phát triển
• Theo vết từng học sinh• Tính độ dao động
Tài liệu tham khảo
• Wei Jiang, "Human Feature Extraction in VS image Using HOG Algorithm".
• Navneet Dalal and Bill Triggs, "Histograms of Oriented Gradients for Human Detection," p. 6.
• Paul Viola and Michael Jones, "Rapid Object Detection using a Boosted Cascade of Simple Features," pp. 2-3, 2001
• Jiawei Han and Micheline Kamber, "Data Mining Concepts and Techniques," pp. 337-344.
• Colin Campbell, "Introduction to Support Vector Machines".
Cám ơn thầy cô và các bạn đã theo dõi
PHỤ LỤC
HOG
Các khái niệm cơ bản
• Ô (cell)• Khối (block)• Cửa sổ (Window)
Ô
Khối
Cửa sổ
Chuẩn hóa block
56
L2-norm:
L1-norm:
L1-sqrt:
• ảnh hưởng của bin
Nguồn: Navneet Dalal and Bill Triggs, "Histograms of Oriented Gradients for Human Detection," p. 5
Nguồn: Navneet Dalal and Bill Triggs, "Histograms of Oriented Gradients for Human Detection," p. 5
Nguồn: Navneet Dalal and Bill Triggs, "Histograms of Oriented Gradients for Human Detection," p. 5
Tính toán đặc trưng bằng Integrals Image
60Nguồn: Paul Viola and Michael Jones, "Rapid Object Detection using a Boosted Cascade of Simple Features," pp. 2-3, 2001
Nguồn: Navneet Dalal and Bill Triggs, "Histograms of Oriented Gradients for Human Detection," p. 5
SVM
SVM
Nguồn: Colin Campbell, "Introduction to Support Vector Machines"
SVM
Nguồn: Jiawei Han and Micheline Kamber, "Data Mining Concepts and Techniques," pp. 337-344.
SVM
Nguồn: Jiawei Han and Micheline Kamber, "Data Mining Concepts and Techniques," pp. 337-344.
Support Vector
Nguồn: Jiawei Han and Micheline Kamber, "Data Mining Concepts and Techniques," pp. 337-344.
Phân loại
yi là nhãn lớp của support vector XiXT là một bộ testα (nhân tử Lagrangian)b0 là biến số được xác định bởi sự tối ưu hóa hay các thuật toán SVMl là số lượng các support vectors.
d(XT) > 0: XT rơi vào phía trên của MMH, SVM đoán XT thuộc về lớp +1d(XT) <= 0: XT nằm tại hoặc dưới MMH, nhãn lớp được đoán là -1
SNAKE
Snake
Thống kê theo ngưỡng
Snake
• Biểu diễn thông qua control points
– Bk: hàm trọng số
– pi+k-1: control point, 1 ≤ k ≤ 4
Snake
• Đường cong toàn cục
Snake
Snake