如何在python中使用opencv压缩png文件?

A. *_*nto 7 numpy image python-3.x opencv3.0

我试过这段代码:

compression_params = [cv2.CV_IMWRITE_PNG_COMPRESSION, 9] 
img = cv2.imread('img1.png', cv2.IMREAD_UNCHANGED) 
cv2.imwrite('compress_img1.png', img, compression_params)
Run Code Online (Sandbox Code Playgroud)

但是我得到了这个错误:

AttributeError:模块'cv2'没有属性'CV_IMWRITE_PNG_COMPRESSION'

我正在使用python 3.5和opencv 3.0

Mik*_*iki 21

OpenCV 3.0中的名称是IMWRITE_PNG_COMPRESSION(没有CV_前缀).

所以尝试:

cv2.imwrite('compress_img1.png', img,  [cv2.IMWRITE_PNG_COMPRESSION, 9])
Run Code Online (Sandbox Code Playgroud)

这篇文章也提到了int.我不确定是否还需要这个:

cv2.imwrite('compress_img1.png', img,  [int(cv2.IMWRITE_PNG_COMPRESSION), 9])
Run Code Online (Sandbox Code Playgroud)