1、常规写法:
import cv2
# 图片读取
image = cv2.imread('D:/demo.bmp', cv2.IMREAD_UNCHANGED)
# 图片写入
cv2.imwrite('D:/demo_save.bmp', image)
2、当路径含有中文时,会出现错误。解决办法如下:
import numpy as np
import cv2
# 图片读取
image = cv2.imdecode(np.fromfile('D:/示例图片.bmp', dtype=np.uint8), cv2.IMREAD_UNCHANGED)
# 图片写入
cv2.imencode('.bmp', image)[1].tofile('D:/示例图片_保存.bmp')
图片读取:先用np.fromfile() 读取为np.uint8格式,然后再使用cv2.imdecode解码;
图片写入:cv.imencode() 第一个参数是图片格式,以后缀名的方式体现,后缀名需要加点。该函数返回值有两个,第一个是bool类型的值,第二个才是图片数据。
参考文章:
https://blog.youkuaiyun.com/bby1987/article/details/105882282
https://blog.youkuaiyun.com/nima1994/article/details/86505192