Tôi đang triển khai tính năng Biểu đồ hướng có định hướng từ "Biểu đồ của các gradient định hướng để phát hiện con người" và tôi muốn hình dung kết quả. Tất cả các giấy tờ về các tính năng này sử dụng một hình ảnh tiêu chuẩn, nhưng tôi không thể tìm thấy bất kỳ mô tả về cách chúng được tạo ra. Tôi muốn biết ơn vì lời giải thích hoặc liên kết hữu ích.Các tính năng của HoG được thể hiện bằng đồ họa như thế nào?
Trả lời
Các hình ảnh bạn thấy trong các giấy tờ có thể được hiểu như sau:
Bộ mô tả được tạo thành từ các ô M * N bao phủ cửa sổ hình ảnh trong lưới. Mỗi ô được biểu diễn bằng một biểu đồ của các định hướng cạnh, trong đó số hướng định hướng cạnh được xác định là một tham số (thường là 9). Biểu đồ tế bào được hiển thị bằng một 'ngôi sao' cho thấy cường độ của các hướng cạnh trong biểu đồ: định hướng cụ thể càng mạnh, thì nó càng dài hơn so với các biểu đồ khác. Lưu ý rằng có nhiều đề án chuẩn hóa khác nhau: các lược đồ cục bộ, trong đó ô được chuẩn hóa đối với các ô lân cận (như trong bài báo gốc bởi Dalal-Triggs), hoặc các sơ đồ toàn cầu, trong đó chiều dài định hướng được chuẩn hóa bởi tất cả các tế bào. Cũng lưu ý rằng một số tác giả sử dụng nhiều chuẩn hóa cục bộ cho mỗi ô (ví dụ: cái tôi đang đề cập bên dưới), nhưng hiển thị chỉ hiển thị một (hoặc mức trung bình của chúng).
Mã Matlab cho tác phẩm chính của Felzenszwalb et al. trực quan hóa các tế bào bằng cách vẽ chúng trên một hình ảnh, nơi mà sức mạnh được hình dung bởi cường độ của cạnh thay vì chiều dài. Bạn có thể tìm thấy nó trong gói họ cung cấp ở đây (DPM). Hãy tìm một hàm có tên HOGpicture.m
Ví dụ dưới đây cho thấy một mô hình của một chiếc xe đạp (từ Felzenszwalb et al.) Với heo gồm 7 * 11 tế bào, mỗi với 8 hướng
Một blog có tên là Jurgenwiki có một số mã mẫu (được gọi là get_hogdescriptor_visu()
) để hiển thị các mô tả HOG trong OpenCV. Trong quá khứ, tôi sao chép/dán mã Jurgenwiki vào một tệp C++, chuyển các tính năng HOG của tôi thành get_hogdescriptor_visu()
và hiển thị trông khá tốt. Dưới đây là một ví dụ:
Một caveat của mã Jurgenwiki là nó hy vọng bạn sử dụng các thông số mặc định HOGDescriptor()
(ví dụ khối 16x16, các tế bào 8x8, 9 thùng định hướng). Tuy nhiên, nếu bạn đang sử dụng thông số tùy chỉnh trong số HOGDescriptor
, bạn có thể tinh chỉnh mã Jurgenwiki để khớp với thông số HOG của bạn.
This StackOverflow post cũng khá hữu ích.
Có một bài báo gần đây (HOGles) xuất bản năm iccv 2013 trên hình dung tính năng HOG mà có thể khá hữu ích, các mã có sẵn ở đây http://web.mit.edu/vondrick/ihog/#code
scikit hình ảnh cũng cung cấp HOG trực quan: http://scikit-image.org/docs/dev/auto_examples/plot_hog.html
Ở đây tôi muốn hỏi một câu hỏi rằng hai khung chuỗi của một người đi bộ và chúng tôi extrct HOG của mỗi hình ảnh và sau đó có sự khác biệt của cả hai HOG. Tôi muốn biết thông tin nào chúng tôi có được trong hình ảnh HOG cuối cùng (Sự khác biệt).
Cảm ơn bạn
bạn có thể đăng ảnh chụp màn hình không?Tôi đã nhìn thấy một số hiển thị hướng gradient của tỷ lệ thuận với số lượng, nhưng tôi không chắc chắn chúng ta đang nói về cùng một điều. – carlosdc
Trang web này có thể giúp bạn: http://www.geocities.ws/talh_davidc/ – SomethingSomething