得到错误 - '找不到作家',同时给imshow,imwrite命令opencv

Mat*_*att 10 python opencv imshow

我是opencv和python的初学者.我刚刚安装了opencv2.4.9和enthought canopy-32bit.我收到以下错误:

import cv2
image = cv2.imread('Lena.jpg')
cv2.imwrite('Mypic',image)
Run Code Online (Sandbox Code Playgroud)

这就是我得到的:

c:\users\nam\appdata\local\temp\tmpokspbt.py in <module>()
      3 
      4 image = cv2.imread('Lena.jpg')
----> 5 cv2.imwrite('Mypic',image)

error: ..\..\..\..\opencv\modules\highgui\src\loadsave.cpp:275: error: (-2) could not find a writer for the specified extension in function cv::imwrite_
Run Code Online (Sandbox Code Playgroud)

ber*_*rak 24

你需要给imwrite()一个扩展,所以它知道,如何保存(压缩)它.

cv2.imwrite('Mypic.png',image)
# jpg,bmp,png,ppm,pgm,tiff supported 'out-of-the-box,
# webp,jp2 depending on if you compiled in the resp. 3rd party support
# no gif or tga.
Run Code Online (Sandbox Code Playgroud)


小智 5

您需要确保在提供给 imwrite() 的字符串中具有图像类型。imwrite() 没有默认的保存方法,因此在您给它的名称中需要它。而不是: cv2.imwrite('Mypic',image) 你需要写:

cv2.imwrite('Mypic.The_format_you_want_to_save',image)
Run Code Online (Sandbox Code Playgroud)

举个例子:

cv2.imwrite('Mypic.jpg',image)
Run Code Online (Sandbox Code Playgroud)