Je calcule l'histogramme d'une image en niveaux de gris et je souhaite convertir la plage de pixels en niveaux de gris en noir. J'utilise le code suivant pour récupérer le histogram.`Convertir toute la valeur des pixels en niveaux de gris en noir
image = cv2.imread('./images/test/image_5352.jpg')
cv2.imshow("image", image)
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
cv2.imshow("gray", gray)
hist = cv2.calcHist([gray], [0], None, [256], [0, 256])
plt.figure()
plt.title("Grayscale Histogram")
plt.xlabel("Bins")
plt.ylabel("# of Pixels")
plt.plot(hist)
plt.xlim([0, 256])
key = cv2.waitKey(0)
cv2.destroyAllWindows()
Par exemple, je veux convertir tous les pixels avec une valeur de 50 à noir.
cela est assez sûr de ce que vous voulez, si elle est, ne hésitez pas à répondre à cette question avec les spécificités http: //answers.opencv .org/question/97416/replace-a-range-of-colours-with-a-specific-color-in-python/ – GPPK
Je crois qu'opencv renvoie des tableaux chiffrés pour les images. Vous pouvez utiliser l'indexation booléenne pour manipuler l'image: 'gray [gray == 50] = 0' devrait fonctionner. – umutto
Qu'en est-il des pixels de 49? Et 51? –