xwqaigc 发表于 2021-12-31 21:56

python3解决中文路径问题

#方法一import numpy as np
# 解决中文路径问题
def cv_imread(file_path):
    cv_img = cv2.imdecode(np.fromfile(file_path, dtype=np.uint8), -1)
    return cv_img
#方法二import cv2
def cv_imread(file_path = ""):
    file_path_gbk = file_path.encode('gbk')      # unicode转gbk,字符串变为字节数组
    img_mat = cv2.imread(file_path_gbk.decode())# 字节数组直接转字符串,不解码
    return img_mat

知乎上看到的,记录一下

wshuo 发表于 2022-1-11 13:55

方法二是不行的,不具有通用性(有些汉字是不能用gbk编码然后再用utf8解码的),注释是不对的,decode()不加参数,默认是utf8编码,所以方法二就是 .encode('gbk').decode('utf8') 不具有通用性,方法一倒是可以,用numpy做了中间转换,这里只能说numpy这个库写的比较完善

piazini 发表于 2022-1-22 15:25

win系统是gbk 的python3.x是UTF-8转换一下

xwqaigc 发表于 2022-3-1 17:42

wshuo 发表于 2022-1-11 13:55
方法二是不行的,不具有通用性(有些汉字是不能用gbk编码然后再用utf8解码的),注释是不对的,decode()不加 ...

谢谢大佬
页: [1]
查看完整版本: python3解决中文路径问题