Как построить гистограмму ориентированных градиентов? - PullRequest
0 голосов
/ 23 мая 2019

Как мне построить HOG, используя matplotlib? Я не могу выяснить, как люди делают это, как в следующем примере:

https://gurus.pyimagesearch.com/lesson-sample-histogram-of-oriented-gradients-and-car-logo-recognition/#tour_modal

Я просмотрел сайт matplotlib, но безуспешно пытался найти правильный пример. Anyone Кто-нибудь знает, как это построить или где я могу это узнать?

Я пробовал это сейчас без удачи. https://matplotlib.org/3.1.0/gallery/statistics/histogram_histtypes.html#sphx-glr-gallery-statistics-histogram-histtypes-py

Мне просто нужно определить распределение пикселей в 9 ячейках HOG и степень ударов.

1 Ответ

0 голосов
/ 23 мая 2019

Гистограмма позволяет нам получить относительную частоту каждого уровня серого изображения, в opencv мы можем получить гистограмму следующим образом:

С бинами:

image = cv2.imread('example.jpg')
imagex = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

plt.hist(imagex.ravel(), bins=8, range=(0,255))
plt.show()

Вы получите одну гистограмму, основанную на бинах, но если вы хотите получить всю гистограмму вашего изображения, попробуйте:

image = cv2.imread('myimage.jpeg')
imagex = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
plt.hist(imagex.ravel(),256,[0,256]);
plt.show()

С наилучшими пожеланиями!

...