读取中文路径图片:
# coding=utf-8
import cv2
testPicPath = "C:\\Users\\82641\\Desktop\\资料\\test.jpg"
# 读图
img = cv2.imread(testPicPath)
if img is None:
print("读取失败")
else:
print("读取成功")
这个代码会输出“读取失败”,原因是中文路径识别不了。
# coding=utf-8
from skimage import io as iio
import cv2
testPicPath = "C:\\Users\\82641\\Desktop\\资料\\test.jpg"
# 读图
imgTmp = iio.imread(testPicPath)
if imgTmp is None:
print("读取失败")
else:
print("读取成功")
img = cv2.cvtColor(imgTmp, cv2.COLOR_BGR2RGB)
这个代码会输出“读取成功”,但imgTmp是BGR,OpenCV里面图片为RGB,因此有cvtColor。
保存中文路径:
cv2.imencode('.jpg', img)[1].tofile(picPath+"test.jpg")
picPath里面有中文;imencode返回两个参数,第一个为True或者False,第二个才是图片。