Python【cv2:读取图片时报错】

写在前面:opencv库安装

在终端用pip install安装opencv-python
建议使用国内清华源的镜像去安装,加参数-i https://pypi.tuna.tsinghua.edu.cn/simple
代码如下:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python

报错一

我一开始直接用cv2.imread(path),报错

OpenCV(4.10.0) D:\a\opencv-python\opencv-python\opencv\modules\imgproc\src\color.cpp:196: error: (-215:Assertion failed) !_src.empty() in function ‘cv::cvtColor’

Q&A
Q:为什么 OpenCV 不支持中文路径?
A:OpenCV 库是在 C++ 写的,而在较早版本的 C++ 标准中并未提供直接的 Unicode 或者多字节字符编码支持。所以,OpenCV 在面对中文路径时,可能解析出现问题,因此最好使用 contains only ASCII 的字符路径。这个问题不只存在于Python中,其他使用 OpenCV 的语言,如 C++,也会遇到。

虽然我的路径没有出现中文和空格,但是用了numpy方法后解决了这个问题

报错二

但还是报错

SyntaxError: (unicode error) ‘unicodeescape’ codec can’t decode bytes in position 2-3: truncated \UXXXXXXXX escape

结果是发现把路径的\直接复制粘贴成\了

最终效果

import cv2
import matplotlib.pyplot as plt
import numpy

# 读取图像
path = 'C:\\Users\\STEFANOS\\Desktop\\Wallpaper\\A.B\\isle_dead.jpg'
img = cv2.imdecode(numpy.fromfile(path, dtype=numpy.uint8), -1)

# 将BGR图像转为RGB
img_rgb = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

# 使用matplotlib显示图像
plt.imshow(img_rgb)
plt.axis('off')  # 不显示坐标轴
plt.show()

在这里插入图片描述

参考:
https://blog.csdn.net/weixin_48477590/article/details/134595606
https://blog.csdn.net/u011505165/article/details/110817296

  • 11
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值