前言:未实现原因,是所安装库版本太高了。正确实现过程如下:YOLOv3在Intel Realsense上的Python实现_行秋的博客-CSDN博客
参考代码:
代码:dd???????YOLOv3_Realsense: YOLOv3在Intel Realsense上的Python实现,讲识别标注在RGB与Depth图像上,并试图计算目标距离。
1.首先请确保拥有一个Intel Realsense深度摄像头,且该摄像头支持Realsense SDK2.0。
2.请在Python3.6版本下运行,并确保一下库已安装
NumPy OpenCV
pyrealsense2
pip install pyrealsense2 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
sklean
pip install -U scikit-learn -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
文章图片
Pillow
pip install pillow -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
文章图片
tensorflow-gpu
pip install tensorflow-gpu -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
文章图片
keras
文章图片
3. YOLO网站上下载YOLOv3权重,然后将Darknet YOLO模型转换为Keras 模型, 并将模型存储在model_data文件夹。
【Real|YOLOv3在Intel Realsense上的Python实现(未实现)】下载YOLOv3权重。 https://pjreddie.com/media/files/yolov3.weights
python convert.py yolov3.cfg yolov3.weights model_data/yolo.h5
文章图片
错误一:
文章图片
解决:用下面语句,替代。
from keras.layers.normalization.batch_normalization_v1 import BatchNormalization
参考如下: 程序报错如下:ImportError: cannot import name ‘BatchNormalization‘_
错误二:
文章图片
参考如下:error: the following arguments are required: config_path, weights_path, output问题解决_qiuzitao的博客-CSDN博客
然后在终端上运行后出现这个错误:
文章图片
通过dir命令,发现convert.py文件命名,多了一个空格。(这里是我用GitHub上的代码,不是我自己多的)
文章图片
修改后,运行又出现这个错误。
文章图片
把47行注释掉,使用46行的即可。
文章图片
文章图片
文章图片
点击运行demo_Realsense.py,
文章图片
将从keras导入改为从tensorflow下的keras导入
文章图片
文章图片
参考链接:ModuleNotFoundError: No module named ´sklearn.utils.linear_assignment_´_Heyuanfly的博客-CSDN博客
文章图片
之后再运行,出现错误: AttributeError: module 'tensorflow' has no attribute 'ConfigProto'
文章图片
所以,需要将 tf.ConfigProto 修改为 tf.compat.v1.ConfigProto
之后再运行,出现错误:AttributeError: module 'tensorflow' has no attribute 'Session'
tf.Session(config=config)修改为tf.compat.v1.Session(config=config)
之后再运行,出现错误:OSError: SavedModel file does not exist at: model_data/yolo.h5\{saved_model.pbtxt|saved_model.pb}
文章图片
把相对路径改成绝对路径
文章图片
之后再运行,出现错误:ValueError: object __array__ method not producing an array
文章图片
numpy 1.19.5 tensorflow-gpu 2.6.2
文章图片
之后,出现错误RecursionError: maximum recursion depth exceeded while calling a Python object
文章图片
更新了numpy
之后运行出现这个错误:
ValueError: Subshape must have computed start >= end since stride is negative, but is 0 and 2 (computed from start 0 and end 9223372036854775807 over shape with rank 2 and stride-1)
关于keras-yolov3-deepsort_只读一本心术书的博客-CSDN博客
文章图片
文章图片
tf.Session(config=config)修改为tf.compat.v1.Session(config=config)
文章图片
tf.gfile 也改成 tf.io.gfile了.
文章图片
tf.compat.v1.GraphDef() 修改为tf.compat.v1.GraphDef()
文章图片
tf.get_default_graph()修改为tf.compat.v1.get_default_graph()
文章图片
推荐阅读
- python数据分析|numpy 数组操作
- Python List pop()函数使用示例
- Python全角/半角字符互转
- python静态web服务器如何实现
- python|使用Python成功调用大漠插件方法
- Python优质文章|分享5个插件,助你在Python的道路越战越勇
- Python|测试开发面试题
- 功能测试|接口测试流程
- Python模拟测试权威入门