解决cv2.imread()中文路径加载图片报错问题

解决cv2.imread不能读取中文路径问题 是OpenCV库中的一个函数,用于从指定路径读取图像文件。它可以读取各种格式的图像文件,如JPEG、PNG、BMP等。读取后的图像数据被存储为一个NumPy数组,这个数组中的每个元素代表了图像的像素值。具体来说,函数接受两个参数:文件路径和读取标志。(加载彩色图片)、(以灰度模式加载图片)和(包括alpha)。 阅读详情

错误: cv2.error: OpenCV(4.1.0) C:\projects\opencv-python\opencv\modules\highgui\src\window.cpp:352: error: (-215:Assertion failed) size.width>0 && size.height>0 in function ‘cv::imshow’

一、分析原因
  • python3字符串采用utf8编码,cv2.imread将utf8当作本地码(如GBK)
二、解决方案
#!/usr/bin/env python 
# -*- coding:utf-8 -*-

import cv2
import numpy as np

def cv_imread(filePath):
    cv_img = cv2.imdecode(np.fromfile(filePath, dtype=np.uint8), -1)
    return cv_img

srcImage = cv_imread("D:\下载\lala.jpg")

cv2.imshow("Src", srcImage)
cv2.waitKey(0)
注意:
  • 由于window 读取文件可以用\,但是在字符串中\是被当作转义字符来使用,所以’d:\a.txt’会被转义成’d:\a.txt’这是正确路径,所以不会报错。而‘C:\Users…\lala.jpg ’中经过转义之后可能就找不到路径的资源了,例如\t可能就转义成tab键了。
方式一:转义的方式

srcImage = cv2.imread("D:\\Software\\lala.jpg")

方式二:使用'r',显式声明字符串不用转义

srcImage = cv2.imread(r"D:\Software\lala.jpg")

方式三:使用Linux的路径 '/'

srcImage = cv2.imread("D:/Software/lala.jpg")

参考

解决cv2.imread读取带有中文路径或名称的图片返回None问题 cv2.imread读取带有中文路径或名称的图像时,总是结果返回为None,使用Image.open就没有问题,查阅后可以使用cv2.imdecode解码解决,一行代码就可以解决这个问题。 阅读详情

相关推荐

STM32控制舵机SG-5010转动,HAL库

首先设置时钟为72Mhz,预分频系数为72-1,自动重装载计数器的值为5000-1,这样的话就可以得到一个5ms的脉冲宽度,5000的计数值可以让舵机的旋转角度变得更加易控且相对精准,计算旋转角度的时候也可以更加精确。所以我们5ms脉宽,period是5000脉宽-------------角度----------pulse0.5ms-------------0度----------500;1.0ms------------45度---------1000;

qq_73783264的博客 1291

解决 cv2.imread读取带中文路径图片问题

原因:cv2.imread读到带中文路径图片,会报错。 解决方法:先用np.fromfile()读取为np.uint8格式,再使用cv2.imdecode()解码 对于代码,只需将 image = cv2.imread(filepath) 更改为 image = cv2.imdecode(np.fromfile(filepath), dtype=np.uint8), -1) # imdecode读取的是rgb,如果后续需要opencv处理的话,需要转换成bgr,转换后图片颜色会变化 image = c

JulyLi2019的博客 8553

Cadence数模混合仿真实战:从Verilog到ADE L的完整流程解析

本文详细解析了Cadence数模混合仿真的完整流程,从Verilog代码编写到ADE L仿真环境配置。通过实战案例讲解如何创建Config文件、搭建混合信号原理图,并分享提高仿真效率的技巧和常见问题排查方法,帮助工程师掌握这一关键芯片设计验证技术。

weixin_29246195的博客 986

OpenCv读取中文路径

opencv读取中文路径

focus:Follow One Cause Until Success 5917

最新版电子发票样式html+css--普通发票+增值发票

【代码】最新版电子发票样式html+css--普通发票+增值发票。

weixin_44110923的博客 3678

Ubuntu桌面消失?可能是lightdm配置在捣鬼:详细解析/etc/lightdm.conf的优先级机制与实战修复

本文详细解析了Ubuntu系统因lightdm显示管理器配置错误导致桌面消失的问题。通过分析/etc/lightdm.conf的优先级加载机制,提供了从systemctl诊断、调试模式运行到实战修复配置语法错误(如缺失[Seat:*]组)的完整方案。文章还探讨了在系统无法启动时使用chroot或恢复模式进行高级救援,并对比了lightdm与gdm3在NVIDIA驱动环境下的不同表现,帮助用户高效恢复图形界面。

weixin_29313547的博客 420

Python-cv2 图片imread读入错误

cv2 imread报错的原因分析

weixin_44333471的博客 3273

SystemUI-下拉去掉后去掉用户切换-去掉电源按键中的紧急呼叫

这里自己倒腾完成了两个常见需求:去除用户切换、去除紧急呼叫UI在去除用户切换时候,用到了Compose知识点,所以很难按照以前经验去找对应布局、找对应的View Item ,以往方法都只能部分借鉴的搞系统的还是要跟着谷歌学一点Compose技能了,方便日常开发调试。

十年饮冰,难凉热血 1459

python opencv 中文路径_解决python cv2.imread 读取中文路径的图片返回为None的问题

使用cv2读取图片时,输出图片形状大小时出现报错“ "NoneType" object has no attribute shape”,后来排查发现读取图片的返回值image为None, 这就说明图片根本就没有被读取。下面图片是问题问题解决后,为了更好的展示,写的代码展示,这是正常的因果关系,找错误排查时是从下往上推。使用PIL读取图像,能够成功读取图片,借此了解图片的大小和格式,代码如下图所示:...

weixin_39970369的博客 336

站在评审的角度写国自然基金本子,搭配这5条AI提示词,帮你一键提升本子中标率

多数同仁的选题失败,不是因为你的idea不好,而是你的逻辑没有立起来,你必须让评审看到,你是怎么从问题走向方法的。请你按照“同行做到哪、瓶颈卡在哪、我该怎么破”的逻辑,将我的创新点进行重构:【粘贴你原始的创新点描述】,要求:表达需结构化、可量化、可验证,突出对比后的实质性突破。与其等着评审指出问题,等着本子被拒,不如让AI提前模拟评审,帮你从可行性、创新性、国家价值、团队能力四个维度给你打分,并指出项目的致命破绽,提示词这样设计。创新点如果写不好,本子往往也会被拒,而评审一般喜欢的创新点都是有固定结构的。

智能AI让学术科研更容易 1238

Qt 【window udp 高频采集丢包问题】

使用Asio + 无锁队列或者环形缓存区方案可以解决 qt udp 在window平台高速采集 (128k)丢包问题。

weixin_45397344的博客 177

避坑指南 | opencv-python imread读取路径错误

最近在学习opencv的cv2.imread,很简单的一个用法cv2.imread,运行一下代码报错误。

guoweidong19930311的博客 1202

FortiWeb 相对路径遍历漏洞复现(CVE-2025-64446)

FortiWeb是Fortinet公司推出的企业级Web应用防火墙(WAF),专为保护Web应用和API抵御高级威胁设计。它集成人工智能与机器学习技术,通过双层检测引擎(HMM模型与SVM向量机)精准识别异常流量,可防御OWASP Top 10攻击、SQL 注入、XSS、DDoS及恶意机器人。其核心功能包括API自动化保护、虚拟补丁集成(兼容Acunetix等第三方扫描工具)及智能流量分析,支持HTTP/2、WebSocket等现代协议。(CVE-2025-64446)

iSee857的博客 467

cv2.imread

关于python读写图片遇到中文路径的问题cv2.imreadcv2.imwrite cv2.imread Python进行图片处理,第一步就是读取图片,一般路径都是英文名,但必不可免会遇到中文问题。 如下: s=r'20210414_信号灯2658_0.jpg' img_cv = cv2.imread(s) # 读取数据 print(img_cv.shape) # AttributeError: 'NoneType' object has no attribute 'shape' 解决方法使用imde

doinv的博客 1388

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

python读取照片失败原因_解决python cv2.imread 读取中文路径的图片返回为None的问题...

使用cv2读取图片时,输出图片形状大小时出现报错“ 'NoneType' object has no attribute shape”,后来排查发现读取图片的返回值image为None, 这就说明图片根本就没有被读取。下面图片是问题问题解决后,为了更好的展示,写的代码展示,这是正常的因果关系,找错误排查时是从下往上推。使用PIL读取图像,能够成功读取图片,借此了解图片的大小和格式,代码如下图所示:...

weixin_39526564的博客 2500

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

cv2.imread读取中文路径解决方案

cv2.imread读取中文路径问题

weixin_49716548的博客 3086

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

opencv的cv2.imread解决中文路径问题

/cv2.imencode(…)传入参数为包含图像文件内容的内存buffer,为整个文件的内容,包含格式说明、图像数据等等,并非只有图像像素数据。返回值: 数据类型为numpy.ndarray的图像,与cv2.imread(filename[, flags])中参数一致。params: 图像保存时的参数,与cv2.imwrite(filename, img[, params])中参数一致。flags: 以何种形式解析图像,与cv2.imread(filename[, flags])中参数一致。

weixin_62918638的博客 1696

Python学习中出现的问题——cv2.imread()路径语法报错:SyntaxError: invalid syntax

问题描述: 在python安装opencv第三方库后,使用cv2.imread()函数的时候不停报错,出现以下问题: 提示语法有问题:SyntaxError: invalid syntax 开始以为是函数本身的问题,但大量查阅资料后发现读入图片的函数本身没有使用问题: 使用函数cv2.imread(filepath,flags)读入图片 filepath:要读入图片的完整路径 flags:读入图片...

weixin_43361652的博客 4403

cv2.imread() 不能读取含有中文的图片路径

有时候需求会从包含中文的路径的文件中读取图片文件,尤其是一些图片为中文命名的文件。如上面的语句中,如果图片中包含中文路径则会出现读取图片为空的错误。实际上解决这种错误很简单,我们可以通过。

TU商的博客 2095

python TF中 cv2.imread无法读入图片解决办法

cv2.imread无法读入图片情况解决方法

H1356038698的博客 3548

Python使用cv2读取图片时报错

A:OpenCV 库是在 C++ 写的,而在较早版本的 C++ 标准中并未提供直接的 Unicode 或者多字节字符编码支持。所以,OpenCV 在面对中文路径时,可能解析出现问题,因此最好使用 contains only ASCII 的字符路径。这个问题不只存在于Python中,其他使用 OpenCV 的语言,如 C++,也会遇到。一般使用的imread和imwrite文件路径是不能有中文的,但我们可以用其他方法代替。cv2读取图片时,图片的路径不能包含有中文或者空格,只能为英文或者数字否则报错!

weixin_48477590的博客 6203

【python】[Opencv库]【cv2包】cv2.imread() 读取图片失败解决方法

当使用cv2.imread(file)读取图片一直读取不了就要看看file路径是否存在中文了,今天写了的代码,用cv2.imread()读取图片路径一直报错,试了很多种方法,结果是中文出错了。 使用Opencv库倒入cv2包:import cv2 解决方法1:把文件路径里的文件名里带中文的全改为英文 #只使用前三个参数cv2.warpAffine(img,M,(rows,cols)),出现黑边 i...

Recently祝祝的博客 7569

Python:cv2.imread读入图片后返回NoneType的部分原因与解决方法

本质是图片没有读取成功,导致变量内部是空的,处于NoneType的数据类型。在此总结一下,可能导致此类情况的原因。

m0_65567747的博客 1857

opencv中 cv2.imread 路径问题

imread默认打开的是当前目录下的图片,所以如果图片不是在当前目录下就复制要导入图片的相对路径。 # 如果图像就在该目录下 cv2.imread("./相对路径文件目录") # 如果图像在其他目录下 cv2.imread("../相对路径文件目录") # ../表示返回上级目录 如果导入失败,可以试试把所有中文路径名改成英文的。 也可以将所有的 / 改成 // ...

kuabiku的博客 7781

OpenCV中原始图像加载与保存压缩技巧

加载图像 OpenCV中关于图像读写有两个函数imread与imwrite,imread加载的时候支持灰度图像、彩色图像、原始图像加载,默认情况下通过imread加载的图像都是三通道的BGR彩色图像。 但是实际上OpenCV支持加载任意通道的图像,首先来仔细再看一下imread函数 Mat cv::imread(     const String &  filename,    ...

weixin_40581617的博客 635

opencv图像处理—项目实战:信用卡数字识别

信用卡数字识别

weixin_58176527的博客 2188
上一篇: 公共地点人流量计算的云监管平台(二)
下一篇: 解决SubLime Text3 Python编译控制台中文输出乱码
fly-liuhao
博客等级 码龄9年 147粉丝 65原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值