У меня есть обученный распознаватель лиц.
После face_recognizer.getHistograms() я хочу им показать.
Как я могу это сделать?
Спасибо заранее!






Чтобы построить гистограмму изображения, используйте pyplot.hist:
Если ваше изображение находится в градациях серого, где интенсивность серой шкалы варьируется от 0 до 255, используйте:
from matplotlib import pyplot as plt
plt.hist(img.ravel(), 256, [0,256])
Если это цветное изображение, вы также можете использовать функцию opencv calcHist:
color = ('b', 'g', 'r')
for i,col in enumerate(color):
histr = cv2.calcHist([img],[i],None,[256],[0,256])
plt.plot(histr,color = col)
plt.xlim([0,256])
Интенсивность изображения каждого канала должна быть в пределах [0, 255].
Какую функцию вы не хотите использовать?
У меня есть готовая гистограмма, и я просто хочу ее показать. Функция pyplot.hist показывает гистограмму заданного изображения. Я просто хочу показать гистограмму, не изменяя функции самого изображения.
Затем используйте plt.plot
plt.plot (гистограмма), plt.show () не работают. Он просто создает пустое окно с осями x и y
Как вы нашли свою гистограмму?
Я получил его, заполнив свой распознаватель лица методом "поезда". Затем я могу использовать «face_recognizer.getHistograms () [0], чтобы получить гистограмму для одного из обученных лиц.
Можете ли вы поделиться формой своего массива гистограмм?
Я видел эту функцию, но не хочу использовать ее на изображении. Я хочу показать гистограмму напрямую. Учитывая гистограмму в виде массива numpy - как я могу ее показать?