我使用 puthon 2.7、windows 7 和 opencv 2.4.6。我尝试运行以下代码:
https://github.com/kyatou/python-opencv_tutorial/blob/master/08_image_encode_decode.py
#import opencv library
import cv2
import sys
import numpy
argvs=sys.argv
if (len(argvs) != 2):
print 'Usage: # python %s imagefilename' % argvs[0]
quit()
imagefilename = argvs[1]
try:
img=cv2.imread(imagefilename, 1)
except:
print 'faild to load %s' % imagefilename
quit()
#encode to jpeg format
#encode param image quality 0 to 100. default:95
#if you want to shrink data size, choose low image quality.
encode_param=[int(cv2.IMWRITE_JPEG_QUALITY),90]
result,encimg=cv2.imencode('.jpg',img,encode_param)
if False==result:
print 'could not encode image!'
quit()
#decode from jpeg format
decimg=cv2.imdecode(encimg,1)
cv2.imshow('Source Image',img)
cv2.imshow('Decoded image',decimg)
cv2.waitKey(0)
cv2.destroyAllWindows()
我不断收到以下错误:
encode_param=[int(cv2.IMWRITE_JPEG_QUALITY), 90]
AttributeError: 'module' object has no attribute 'IMWRITE_JPEG_QUALITY'
我尝试了很多东西:重新安装 opencv,将 cv2 转换为 cv 代码并搜索不同的论坛,但我一直收到此错误。我错过了什么吗?是否有人可以运行此代码而不会出现错误?
顺便说一句:其他opencv代码(从网络摄像头拍照)运行没有问题......
目前我将图像保存到临时 JPG 文件中。使用 imencode 函数我想在内存中创建 jpg 文件。
提前致谢并致以最诚挚的问候。