open cv python

我想写一个读取图片的函数,然后写了一个可以读取中文路径下图片的函数

def readeimg(filePath):
    raw_data=np.fromfile(filePath,dtype=np.uint8)
    img=cv2.imdecode(raw_data,-1)
    return img

但是我想往里面放路径时,却出现了问题

c='D:\flower\flowers recognition\archive\flowers\郁金香\12240303_80d87f77a3_n.jpg'
img=readeimg(c)

会报错:[Errno 22] Invalid argument: 'D:\x0clower\x0clowers recognition\x07rchive\x0clowers\郁金香R40303_80d87f77a3_n.jpg'
不知道哪里出现了问题,所以想请教一下

问题点: 文件路径错误
分析思路: 在windows系统当中读取文件路径可以使用,但是在python字符串中\有转义的含义.
采取一些方式使得\不被解读为转义字符
解决方案:
1、在路径前面加r,即保持字符原始值的意思。(推荐)

c=r'D:\flower\flowers recognition\archive\flowers\郁金香\12240303_80d87f77a3_n.jpg'

2.替换为双反斜杠

c='D:\\flower\\flowers recognition\\archive\\flowers\\郁金香\\12240303_80d87f77a3_n.jpg'

3.替换为正斜杠

c='D:/flower/flowers recognition/archive/flowers/郁金香/12240303_80d87f77a3_n.jpg'
c=r'D:\flower\flowers recognition\archive\flowers\郁金香\12240303_80d87f77a3_n.jpg'

路径这么写试试,你那样写有转义