【opencv-python】 不能读取或者保存图片的问题

1.不能读取图片的问题

读取图片用到的接口是cv2.imread(...)

分析不能读取图片的可能原因如下:

1.1 路径被转义字符转义

示例:

#导入cv模块
import cv2 as cv
img = cv.imread('F:\1.png')
print(img)
# 返回None

因为windows下的目录字符串中通常有斜杠"\",而斜杠在Python的字符串中有转义的作用。例如:\n表示换行;如果路径中有反斜杠“\”就会被转义。

解决办法:

路径字符串前,加上r。

r是保持字符串原始值的意思,就是说不对其中的符号进行转义。

修改后:

img = cv.imread(r'F:\1.png')

1.2 读取路径含有中文字符

opencv默认是不支持路径中有中文的,

解决办法:

读取带有中文路径的图片,使用如下接口:

numpy.fromfile(...)
cv2.imdecode(...)

该函数从指定的内存缓存中读取数据,并把数据转换(解码)成图像格式;

主要用于从网络传输数据中恢复出图像。

 
 

你可能感兴趣的:(opencv二次开发实战)