我正在做一个在虚拟机上实现交通信号自动化的项目。它需要使用图像检测过程来检测汽车。代码:
import cv2
import matplotlib.pyplot as plt
import cvlib as cv
from cvlib.object_detection import draw_bbox
im = cv2.imread('cars_4.jpeg')
bbox, label, conf = cv.detect_common_objects(im)
output_image = draw_bbox(im, bbox, label, conf)
plt.imshow(output_image)
plt.show()
print('Number of cars in the image is '+ str(label.count('car')))操作系统:带有Raspberry Pi桌面https://www.raspberrypi.org/software/raspberry-pi-desktop/的Debian
内核版本: 4.19
Python版本: 3.7.3
Pip版本:
WARNING: pip is being invoked by an old script wrapper. This will fail in a future version of pip.
Please see https://github.com/pypa/pip/issues/5599 for advice on fixing the underlying issue.
To avoid this problem you can invoke Python with '-m pip' instead of running pip directly.
pip 21.1.1 from /home/pi/.local/lib/python3.7/site-packages/pip (python 3.7)使用的图书馆:
-Open cv
在安装cvlib之后,它要求我安装张量流,在执行时安装tensorflow之后,会发生以下错误:
错误:
(venv) pi@raspberry:~/Desktop/TSA $ python3 main.py
Traceback (most recent call last):
File "main.py", line 3, in <module>
import cvlib as cv
File "/home/pi/Desktop/TSA/venv/lib/python3.7/site-packages/cvlib/_init_.py", line 8, in <module>
from .gender_detection import detect_gender
File "/home/pi/Desktop/TSA/venv/lib/python3.7/site-packages/cvlib/gender_detection.py", line 3, in <module>
from tensorflow.keras.utils import get_file
File "/home/pi/Desktop/TSA/venv/lib/python3.7/site-packages/tensorflow/_init_.py", line 23, in <module>
from tensorflow.python import *
File "/home/pi/Desktop/TSA/venv/lib/python3.7/site-packages/tensorflow/python/_init_.py", line 49, in <module>
from tensorflow.python import pywrap_tensorflow
File "/home/pi/Desktop/TSA/venv/lib/python3.7/site-packages/tensorflow/python/pywrap_tensorflow.py", line 28, in <module>
_pywrap_tensorflow = swig_import_helper()
File "/home/pi/Desktop/TSA/venv/lib/python3.7/site-packages/tensorflow/python/pywrap_tensorflow.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow', fp, pathname, description)
File "/usr/lib/python3.7/imp.py", line 242, in load_module
return load_dynamic(name, filename, file)
File "/usr/lib/python3.7/imp.py", line 342, in load_dynamic
return _load(spec)
ImportError: /home/pi/Desktop/TSA/venv/lib/python3.7/site-packages/tensorflow/python/_pywrap_tensorflow.so: cannot open shared object file: No such file or directory尝试添加“导出LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-9.0/lib64/”在.bashrc文件中,仍然是相同的错误。
发布于 2021-05-30 06:06:12
基于错误,安装cvlib似乎有问题。
我想你可以再试一次
pip install opencv-python tensorflow
pip install cvlib看看这是否会产生一些错误信息,这些信息可能会直接指向你可能出错的地方。
正如@swarles-barkley在评论中提到的,也许您的环境需要上面的内容:
python3 -m pip install opencv-python tensorflow
python3 -m pip install cvlib编辑(在评论之后):同样地,对于您的env设置来说,有些事情肯定是很奇怪的。您可以尝试卸载,然后重新安装tensorflow和cvlib,同时仔细查看编译过程中发出的警告。这个讨论可能会给你一些关于如何调试这个问题的想法。
https://stackoverflow.com/questions/67745587
复制相似问题