2011-10-04 47 views
11

Tôi muốn biết, nếu có bất kỳ mã nào hoặc bất kỳ tài liệu hay nào có sẵn để triển khai các tính năng HOG? Tôi cố gắng để đọc tài liệu here nhưng nó khá khó hiểu và nó cần SVM ..HOG cho "đối tượng phát hiện" opencv

Những gì tôi cần chỉ là để thực hiện một máy dò HOG cho các đối tượng .... Cũng giống như những gì nó SIFT hoặc SURF

Btw, tôi không thú vị trong công việc this.

Cảm ơn bạn ..

+0

Tôi hơi muộn nhưng với một ví dụ đơn giản và thẳng về phía trước SEE: http://stackoverflow.com/questions/6090399/get-hog-image-features-from-opencv-python – jmunsch

Trả lời

4

bạn có thể có một cái nhìn tại http://szproxy.blogspot.com/2010/12/testtest.html

ông cũng công bố "hướng dẫn" cho HOG trên nguồn giả mạo ở đây: http://sourceforge.net/projects/hogtrainingtuto/?_test=beta

Tôi biết điều này vì tôi có cùng vấn đề với bạn. Các hướng dẫn mặc dù không phải là những gì tôi sẽ gọi một hướng dẫn, một loạt các mã nguồn, không có tài liệu, nhưng tôi cho rằng nó hoạt động và ít nhất có thể giúp bạn có được một nơi nào đó.

+0

Cảm ơn câu trả lời của bạn , nhưng để phát hiện người, đã có một hướng dẫn thực hiện trong các mẫu trong mã nguồn mở opencv, nhưng tôi không biết các thông số cần thiết để phát hiện các đối tượng .. – Mario

1

Cuối cùng và đơn giản hóa một chút, tất cả những gì bạn cần để phát hiện đối tượng cụ thể trong hình ảnh là:

  • Localize "điểm hấp dẫn" để trích xuất các bản vá lỗi:

Để có được điểm quan tâm, bạn có thể sử dụng một số thuật toán như máy dò góc Harris, ngẫu nhiên hoặc một cái gì đó đơn giản như cửa sổ trượt.

  • Từ những điểm này có được các bản vá lỗi:

Bạn sẽ phải mất decission kích thước vá.

  • Từ các bản vá này, tính toán mô tả tính năng. (như HOG).

Thay vì HOG bạn có thể sử dụng một mô tả tính năng khác như SIFT, SURF ...
Việc triển khai HOG không quá khó. Bạn phải tính toán độ dốc của bản vá được trích xuất khi áp dụng các hạt nhân Sobel X và Y, sau đó bạn phải chia miếng vá trong các ô NxM, ví dụ 8x8 và tính toán biểu đồ các gradient, góc và độ lớn. Trong liên kết sau đây bạn có thể nhìn thấy nó giải thích chi tiết hơn: HOG Person Detector Tutorial

  • Kiểm tra vector đặc trưng của bạn trong việc phân loại đào tạo trước đây

Một khi bạn đã vector này, kiểm tra xem nó là đối tượng mong muốn hay không với một trình phân loại được đào tạo trước đây như SMV. Thay vào đó SVM bạn có thể sử dụng NeuralNetworks chẳng hạn.

Triển khai SVM có nhiều ý nghĩa hơn, nhưng có một số thư viện như opencv mà bạn có thể sử dụng.

Các vấn đề liên quan