3.1.2. Trích rút đặc trƣng HOG
Thực hiện trích rút đặc trƣng HOG dùng phần mềm matlab, với các hàm kèm theo.
Tính gradient c a ảnh ng vào theo tọa độ cực hƣớng từ 00 đến 1800. Nếu ảnh vào là ảnh RGB, gradient đƣợc tính cho mỗi kênh và trả về độ lớn và hƣớng tƣơng ng c a vector gradient cho mỗi pixel. Hàm compute_gradient.m – Ng vào: ảnh để tính gradient. Ng ra: hƣớng và độ lớn c a vector gradient cho mỗi pixel.
Chia ảnh ng vào thành các cell có kích thƣớc cụ thể, tính các tọa độ các cell này. Hàm compute_cell_coordinates.m – Ng vào: ảnh để tách thành các cell, kích thƣớc cell x và kích thƣớc cell y.
Tính bộ mơ tả HOG c a ảnh ng vào với các tham số cụ thể. Gọi hàm tính gradient và hàm tính các tọa độ các cell, thực hiện tính histogram và chuẩn hóa block. Hàm compute_HOG.m – Ng vào: ảnh để trích đặc trƣng HOG, kích
thƣớc cell theo pixels, kích thƣớc block theo cells và số bin c a histogram. Ng ra: bộ mô tả đặc trƣng HOG c a ảnh dạng một vector cột.
3.1.3. Huấn luyện và test bộ phân loại nhị phân
Thƣ viện libSVM
Nhiều gói SVM có sẵn nhƣng libSVM là một trong những gói phổ biến và hồn chỉnh nhất. Nó là thƣ viện nguồn mở đƣợc phát triển tại Đại học quốc gia Đài loan (National Taiwan University), bằng ngơn ngữ C++ và hỗ trợ phân loại. Nó là phần mềm miễn phí [28, 29] cho phép sử dụng trong phạm vi rộng các ngôn ngữ và các nền. Code đƣợc chuyển thành ngôn ngữ matlab cho bộ phân loại cùng tham số và cấu trúc.
Dữ liệu huấn luyện và test SVM:
Phát hiện ngƣời hay phát hiện đối tƣợng nói chung đang trở thành mục tiêu c a lĩnh vực học máy, một vài tập dữ liệu có thể đƣợc tìm thấy trên Internet. Hai tập dữ liệu nỗi tiếng cho phát hiện ngƣời đi bộ là tập dữ liệu c a MIT (Massachusetts
Institute of Technology) và c a INRIA (French National Institute for Research in Computer Science and Control). Đề tài này sử dụng tập dữ liệu c a INRIA [5]. Tập
dữ liệu này đƣợc chia thành hai định dạng: ảnh gốc với các file chú thích tƣơng ng và các ảnh positive trong định dạng 64x128 chuẩn và các ảnh negative gốc.
1126 ảnh testing positive 70x134 chuẩn hóa và lấy trung tâm. (dùng để test SVM)
2416 ảnh training positive 96x160 chuẩn hóa và lấy trung tâm. (dùng để huấn luyện SVM)
1218 ảnh training negative gốc. (dùng để huấn luyện SVM) 614 ảnh training positive gốc.
453 ảnh testing negative gốc. (dùng để test SVM) 288 ảnh testing positive gốc. (dùng để test detector) 970 Megabytes nén, 1150 Megabytes không nén.