Lire l'image en niveaux de gris opencv 3.0.0-dev
J'essaie de lire les images directement en noir et blanc.
J'ai récemment mis à jour ma version OpenCv vers 3.0.0-dev, et le code que j'ai utilisé auparavant ne fonctionne plus.
img = cv2.imread(f, cv2.CV_LOAD_IMAGE_GRAYSCALE)
Fonctionne bien pour 2.4 mais ne fonctionne pas pour la nouvelle version, car il n'y a pas de Champ CV_LOAD_IMAGE_GRAYSCALE.
Des suggestions?
Note: je sais que cv2.imread(f,0) fonctionnera, mais je n'aime pas avoir des constantes sans nom dans mon code.
Merci!
2 réponses
, Le drapeau a été renommé cv2.IMREAD_GRAYSCALE. De manière générale, les drapeaux ont maintenant des noms préfixés d'une manière qui se rapporte à la fonction à laquelle ils se réfèrent. (par exemple, imread drapeaux commencer avec IMREAD_, cvtColor les drapeaux de commencer avec COLOR_, etc.)
Essayez ceci cela fonctionne pour moi
import cv2
im_gray = cv2.imread('gray_image.png', cv2.IMREAD_GRAYSCALE)
thresh = 127
im_bw = cv2.threshold(im_gray, thresh, 255, cv2.THRESH_BINARY)[1]
cv2.imwrite('blackwhite.png', im_bw)