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)