在使用 imread 函数读取 jpg 文件时,是否有任何可能的理由在 opencv 中遇到一些困难
Is there any possible reason to have some difficulties with jpg files in opencv while using imread function to read them?
最近,我在python中使用opencv。
正如我注意到的,当我想在 python 中导入 cv2 模块时,我需要使用以下方法手动将 cv2.so 文件路径添加到系统路径中:
sys.path.append('/path/to/cv.so')
Howewer,当我想读取 ipython 笔记本中的 jpg 文件时,它失败了:
import sys
import numpy as np
import os
sys.path.append("/usr/local/lib1/python2.7/site-packages")
import cv2
im1=cv2.imread('pic1.png')
print im1.shape
#output: (512, 512, 3)
im2=cv2.imread('pic1.jpg')
print im2.shape
#output:
-------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-8-2d36ac00eca0> in <module>()
----> 1 print im2.shape
AttributeError: 'NoneType' object has no attribute 'shape'
根据我之前的问题,我多次重建opencv。
我在某处读到这可能是一些依赖问题的结果。但是我的系统上有两个软件包(libjpeg 和 libjaspe):
print cv2.getBuildInformation()
Media I/O:
ZLib: /lib64/libz.so (ver 1.2.8)
JPEG: /lib64/libjpeg.so (ver 80)
WEBP: /lib64/libwebp.so (ver encoder: 0x0202)
PNG: /lib64/libpng.so (ver 1.6.17)
TIFF: /lib64/libtiff.so (ver 42 - 4.0.2)
JPEG 2000: /lib64/libjasper.so (ver 1.900.1)
知道吗?
经过大量努力,我意识到解决方案是添加:
PYTHONPATH=""
export PYTHONPATH
PATH=/usr/bin:/usr/local/bin
export PATH
在/home/.bashrc 文件的末尾(使它们永久化),在从终端运行 Python 或 iPython 笔记本之前。
注意:仅使用来自yum(dnf)存储库(当然适用于Fedora用户!)和python 2.7的opencv-python.x86_64(基于您的机器架构)。
不要从其网站下载opencv。我想,这会带来一些依赖性问题。
相关文章:
- C++,OpenCV,尝试显示图像时"OpenCV(4.3.0) Error: Assertion failed (size.width>0 && size.height>0)"此错误
- 尝试导入pybind-opencv模块时出现libgtk错误
- 在编译C++代码(具有dlib和opencv)到WASM时面临问题
- 如何使用OpenCV将RBG图像转换为HSV,并将H、S和V值保存为C++中的3个独立图像
- OpenCV EqualizeHist()从彩色图像创建黑白图像
- 将OpenCV C++重写为EmguCV C#-如何使用指针
- 有充分的理由在h文件中使用include保护而不是cpp文件吗
- OpenCV C++.快速计算混淆矩阵
- 在C++代码中包含opencv时,使用ctypes创建.so文件
- 哪些库可以通过Opencv调整曝光率
- 安装opencv失败-粘贴CMakeError.log的内容
- C++中的openCV Mat访问冲突
- OpenCV Android C++ imwrite not found
- 未定义的引用 .. 使用 OpenCV 编译 C++ 代码时,从命令行
- 将 OpenCV 与 CMAKE 中的项目一起构建为第三方库的正确方法
- CV_OCL_RUN宏如何在OpenCV(版本3.4.5)的goodFeaturesToTrack实现中工作?
- OpenCV 4.1.2 - 从网络摄像头获取帧并将其拆分
- C++ OpenCV 卡尔曼滤波器构造函数错误
- 使用OpenCV和覆盆子上的多个网络摄像头拍摄延时摄影,出现多个V4L错误
- 在使用 imread 函数读取 jpg 文件时,是否有任何可能的理由在 opencv 中遇到一些困难