我正在使用opencv和python.我想做一个cv2.imwrte:
cv2.imwrite('myimage.png', my_im)
Run Code Online (Sandbox Code Playgroud)
唯一的问题是opencv无法识别params常量:
cv2.imwrite('myimage.png', my_im, cv2.CV_IMWRITE_PNG_COMPRESSION, 0)
Run Code Online (Sandbox Code Playgroud)
根本找不到CV_IMWRITE_PNG_COMPRESSION.有任何想法吗?
mat*_*fee 24
我CV_XXXXX在cv2模块中找不到密钥:
cv2.XXXXXcv2.cv.CV_XXXXX在你的情况下,cv2.cv.CV_IMWRITE_PNG_COMPRESSION.
OpenCV(cv2接口)的文档有点令人困惑.
通常看起来像参数CV_XXXX实际上是cv2.XXXX.
我使用以下内容搜索相关的cv2常量名称.说我在找CV_MORPH_DILATE.我将在其中搜索任何常量MORPH:
import cv2
nms = dir(cv2) # list of everything in the cv2 module
[m for m in nms if 'MORPH' in m]
# ['MORPH_BLACKHAT', 'MORPH_CLOSE', 'MORPH_CROSS', 'MORPH_DILATE',
# 'MORPH_ELLIPSE', 'MORPH_ERODE', 'MORPH_GRADIENT', 'MORPH_OPEN',
# 'MORPH_RECT', 'MORPH_TOPHAT']
Run Code Online (Sandbox Code Playgroud)
从这里我看到这MORPH_DILATE就是我在寻找的东西.
但是,有时候常量还没有从cv界面移动到cv2界面.
在这种情况下,你可以找到它们cv2.cv.CV_XXXX.
所以,我找了IMWRITE_PNG_COMPRESSION你,找不到它(下cv2....),所以我看了下cv2.cv.CV_IMWRITE_PNG_COMPRESSION,嘿嘿!在那:
>>> cv2.cv.CV_IMWRITE_PNG_COMPRESSION
16
Run Code Online (Sandbox Code Playgroud)