解决opencv读取、保存图像失败

import cv2
import numpy as np

# 路径中的空格是'latin1'编码格式的nbsp,使用cv2.imread()和cv2.imwrite()时会读取、保存失败
img_path = r'C:\Users\admin\Desktop\8Dicellograptus cf. complanatus\Shot_201907121711130877.jpg'
save_path = r'C:\Users\admin\Desktop\8Dicellograptus cf. complanatus\Shot_201907121711130877_1.jpg'

# 解决方法:借助numpy
# 读取:先用numpy读取为ndarray,再用opencv解码
image = cv2.imdecode(np.fromfile(img_path, dtype=np.uint8), -1)
# 保存:先用opencv对图像进行编码,编码后的图像是一个一维的ndarray,再用numpy保存
is_success, im_buf_arr = cv2.imencode('.jpg', image)
im_buf_arr.tofile(save_path)

 

你可能感兴趣的:(python)