引言
这几天做点小东西,涉及到OpenCV读取中文图像的问题
如果直接读取中文路径的图像,往往返回[]
import cv2 cv_im = cv2.imread(‘老干妈.jpg')
缘起
偶然发现opencv 读取图像,解决imread不能读取中文路径的问题文章,代码简单有效,可以参考下文章底部附录
im = cv2.imdecode(np.fromfile(im_name,dtype=np.uint8),-1)
- 但是作者代码注释中说该方法读取的图像的通道就会变为RGB,但是我实验仍为BGR,于是有了如下实验:
- 实验中各个库的版本:
opencv-python: 4.2.0.34
Pillow: 7.1.2
python: 3.7.7
matplotlib: 3.2.1
总结以下代码读取中文路径图像通道格式仍为BGR:
im = cv2.imdecode(np.fromfile(im_name,dtype=np.uint8),-1)
附录:opencv 读取图像,解决imread不能读取中文路径的问题
opencv-python 无法读取中文距离
# 假设 im_name是中文路径 im = cv2.imdecode(np.fromfile(im_name,dtype=np.uint8),-1) # 读取的数据是RGB 而不是 BGR, 要注意
总结