đây là một mã Matlab tuyệt vời thực hiện đầy đủ thuật toán của Dalal. Tôi đã kiểm tra và sử dụng mã này cho nhiều dự án học thuật lớn.
http://hi.baidu.com/fpmaldfoamdfmze/item/4f3b3ac881affcb00c0a7b11 Tất cả tín dụng đều được gửi tới người đã đăng nội dung này!
HOG không dành riêng cho phát hiện người đi bộ. Bạn có thể sử dụng nó với bất kỳ đối tượng cứng nhắc (hoặc cứng nhắc).
Để sử dụng mã này, bạn cần phải hiểu cách tính HOG trên một khu vực. Khu vực được chia thành các 'khối' trùng lặp. Các khối bao gồm một số 'ô'. Một biểu đồ định hướng không gian được tính toán trong mỗi khối. Vector cuối cùng được hình thành bằng cách ghép các biểu đồ không gian này. Các thông số mà bạn có thể tinh chỉnh là
cellpw, cellph: chiều rộng và chiều cao pixel của ô tương ứng.
nblockw, nblockh: kích thước khối được tính theo số ô theo thứ tự x và y tương ứng.
nthet: Số lượng các thùng góc.
issigned: cho dù ký kết hoặc unsigned dốc được lấy
chồng chéo: Số tiền của chồng chéo giữa các khối quy định như một phần
isglobalinterpolate: cho dù suy toàn cầu hay địa phương của 3d histogram
normmethod: loại chỉ tiêu được sử dụng
Bạn có thể nắm bắt thử với các thông số mặc định -
cellpw = 8; cellph = 8; nblockw = 2; nblockh = 2; nthet = 9; trùng lặp = 0,5; isglobalinterpolate = 'localinterpolate'; issigned = 'unsigned'; normmethod = 'l2hys';
Trong matlab nhận được tính năng này là một cái gì đó giống như
I = imread('car.png');
Ig = rgb2gray(I);
F = hogcalculator(Ig, 8, 8, 2, 2, 9, 0.5,'localinterpolate', 'unsigned', 'l2hys');
Kích thước/chiều dài của F phụ thuộc vào paramenters bạn chọn.
Trả lời nhận xét của bạn, Có, bạn phải xây dựng các tính năng này cho hình ảnh tích cực (ô tô) và âm (không phải ô tô) để xây dựng hệ thống phát hiện. SVM thường được sử dụng làm bộ phân loại.Tôi đề nghị sử dụng thư viện libsvm -
http://www.csie.ntu.edu.tw/~cjlin/libsvm/
Khi bạn xây dựng tập huấn luyện của mình, đào tạo với tập huấn luyện của bạn. Tinh chỉnh thông số SVM để có độ chính xác cao nhất. Các tham số được đưa ra trong ví dụ này có thể không phải là tốt nhất, bạn luôn có thể thử một bộ khác. Tôi sẽ thử thay đổi nthet, cellpw và cellph trước. Chúc may mắn!
Hi, tôi muốn khuyên bạn trước tiên cố gắng google .. Dù sao đây là một liên kết cho mã MATLAB bạn đưa ra một hình ảnh như là đầu vào (không chỉ con người bất kỳ hình ảnh nó sẽ tạo ra một vector tính năng hog có độ dài 81) [HOG] (http://www.mathworks.com/matlabcentral/fileexchange/28689-hog-descriptor-for-matlab) – G453
@Sistu mã này mà không có bất kỳ mô tả nào cộng với nó được sử dụng cho Phát hiện con người: ( – Mario
Hãy đi theo hướng dẫn mà mô tả liên kết tới. Hoặc ít nhất một đoạn trích từ các thủ tục IEEE. Sự hiểu biết của tôi (rất chung) là chức năng này được thiết kế để trả về các mô tả HOG cho hình ảnh được cung cấp. sau đó sử dụng các mô tả đó cho r ứng dụng của bạn. Vì vậy, nếu bạn cho nó một "chiếc xe" bạn sẽ nhận được mô tả bạn có thể sử dụng cho "xe hơi". –