Python读取中文路径出现乱码的问题解决

 更新时间:2024年06月26日 08:58:48   作者:独不懂  
本文主要介绍了Python读取中文路径出现乱码的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

一、问题描述

笔者在使用opencv读取带有中文路径的图片时,发现会出现乱码的情况。具体问题如下:

# 读取带有中文路径的图片出现错误
import cv2

img_path = r'C:\Users\zephy\Documents\Python\CSDN\测试 图片\图片1.jpg'
img = cv2.imread(img_path, cv2.IMREAD_COLOR)

cv2.imshow("image", img)
cv2.waitKey(0)
cv2.destroyAllWindows()

当读取的文件路径出现中文时,(文件夹名为中文或者文件为中文)出现如下错误:

[ WARN:0@0.024] global loadsave.cpp:241 cv::findDecoder imread_(‘C:\Users\zephy\Documents\Python\CSDN\测试 图片\图片1.jpg’): can’t open/read file: check file path/integrity
Traceback (most recent call last):
File “C:\Users\zephy\Documents\Python\CSDN\demo.py”, line 8, in
cv2.imshow(“image”, img)
cv2.error: OpenCV(4.10.0) D:\a\opencv-python\opencv-python\opencv\modules\highgui\src\window.cpp:973: error: (-215:Assertion failed) size.width>0 && size.height>0 in function ‘cv::imshow’

在这里插入图片描述

在定位问题时,将读取图片路径和图片名词更换为全英文后,发现可以正常读取,具体如下:

# 读取英文路径下的图片,显示正常
import cv2

img_path = r'C:\Users\zephy\Documents\Python\CSDN\caps.bmp'
img = cv2.imread(img_path, cv2.IMREAD_COLOR)
cv2.imshow("image", img)
cv2.waitKey(0)
cv2.destroyAllWindows()

在这里插入图片描述

二、问题解决

定位问题后,发现出现上述错误的原因是在中文路径的编解码上,下面是笔者在查找相关文献后找到的解决方法,具体代码如下:

import cv2
import numpy as np

img_path = r'C:\Users\zephy\Documents\Python\CSDN\测试 图片\图片1.jpg'
img = cv2.imdecode(np.fromfile(img_path, dtype=np.uint8), cv2.IMREAD_COLOR)  # 替换cv2.imread(img_path, cv2.IMREAD_COLOR)
cv2.imshow("image", img)
cv2.waitKey(0)
cv2.destroyAllWindows()

运行代码,可顺利读取带有中文路径或中文名词的图片,问题解决。具体读取图片如下:

在这里插入图片描述

到此这篇关于Python读取中文路径出现乱码的问题解决的文章就介绍到这了,更多相关Python读取中文路径乱码内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 一文教会你用python裁剪图片

    一文教会你用python裁剪图片

    Python语言的图片处理使我们常常使用的方面,那么我们该如何实现图片的剪切呢?下面这篇文章主要给大家介绍了关于用python裁剪图片的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-06-06
  • Python实现字典依据value排序

    Python实现字典依据value排序

    新华字典大家都使用过吧,那么使用python语言是如何实现字典排序的呢?下面跟着本教程一起学习Python实现字典依据value排序,需要的朋友参考下吧
    2016-02-02
  • python pip配置国内镜像源的方法(永久和临时)

    python pip配置国内镜像源的方法(永久和临时)

    在使用 pip 安装 Python 模块时,默认的国外镜像源可能会导致下载速度缓慢甚至超时,为了解决这个问题,可以使用国内的镜像源来加速下载,以下是常用的国内镜像源以及临时和永久的配置方法,需要的朋友可以参考下
    2025-04-04
  • 简单的Python抓taobao图片爬虫

    简单的Python抓taobao图片爬虫

    这篇文章主要介绍了简单的Python抓taobao图片爬虫,需要的朋友可以参考下
    2014-10-10
  • python 控制台单行刷新,多行刷新实例

    python 控制台单行刷新,多行刷新实例

    今天小编就为大家分享一篇python 控制台单行刷新,多行刷新实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • python绘制分布折线图的示例

    python绘制分布折线图的示例

    这篇文章主要介绍了python绘制分布折线图的示例代码,帮助大家更好的利用python绘制图像,感兴趣的朋友可以了解下
    2020-09-09
  • python缺失值填充方法示例代码

    python缺失值填充方法示例代码

    常见的数据缺失填充方式分为很多种,比如删除法、均值法、回归法、KNN、MICE、EM等,下面这篇文章主要给大家介绍了关于python缺失值填充方法的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-12-12
  • 详细介绍Python的鸭子类型

    详细介绍Python的鸭子类型

    相信python的开发者对于python的鸭子类型比较熟悉,鸭子类型在维基百科中的准确定义是‘是动态类型的一种风格。在这种风格中,一个对象有效的语义,不是由继承自特定的类或实现特定的接口,而是由"当前方法和属性的集合"决定’。所以这篇文章给大家python的鸭子类型。
    2016-09-09
  • python print无法打印\r的问题及解决

    python print无法打印\r的问题及解决

    这篇文章主要介绍了python print无法打印\r的问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • python 全文检索引擎详解

    python 全文检索引擎详解

    这篇文章主要介绍了python 全文检索引擎详解的相关资料,需要的朋友可以参考下
    2017-04-04

最新评论