OPENCV读取和存储图片含有中文路径

 imread不能读取中文路径的问题

读取图片所在文件夹中含有中文路径:

jpg_file = r'F:\数据集\3.jpg'
img=cv2.imdecode(np.fromfile(jpg_file,dtype=np.uint8),flags=-1)

 cv2.imdecode()函数从指定的内存缓存中读取数据,并把数据转换(解码)成图像格式;主要用于从网络传输数据中恢复出图像。
cv2.imencode()函数是将图片格式转换(编码)成流数据,赋值到内存缓存中;主要用于图像数据格式的压缩,方便网络传输。

#  flags: 标志位, 表示读取数据的格式
#  读取彩色可以设为cv2.IMREAD_COLOR(flags=1),
#  读取灰度图像设为cv2.IMREAD_GRAYSCALE(flags=0),
#  读取原始图像设为cv2.IMREAD_UNCHANGED(flags=-1)。
np.fromfile(jpg_file,dtype=np.uint8)
# 用cv2.imdecode()函数之前先使用np.fromfile进行指定格式的读取

 写入图片所在文件夹含有中文路径:

cv2.imencode('.jpg', rotated_img)[1].tofile(rotated_path + a + '_' + str(angle) + 'd.jpg')
#  rotated_img为图片数据文件,为cv2读取的图片类型
#  rotated_path + a + '_' + str(angle) + 'd.jpg' 这是一个文件路径和名字 
    eg. F:\数据集\shiyan\2_15d.jpg

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(opencv,opencv,python,计算机视觉)