Real|YOLOv3在Intel Realsense上的Python实现(未实现)

前言:未实现原因,是所安装库版本太高了。正确实现过程如下: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

Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

Pillow
pip install pillow -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

tensorflow-gpu
pip install tensorflow-gpu -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

keras
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

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

Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片




错误一:
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

解决:用下面语句,替代。
from keras.layers.normalization.batch_normalization_v1 import BatchNormalization

参考如下: 程序报错如下:ImportError: cannot import name ‘BatchNormalization‘_
错误二:
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

参考如下:error: the following arguments are required: config_path, weights_path, output问题解决_qiuzitao的博客-CSDN博客
然后在终端上运行后出现这个错误:
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

通过dir命令,发现convert.py文件命名,多了一个空格。(这里是我用GitHub上的代码,不是我自己多的)
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

修改后,运行又出现这个错误。Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

把47行注释掉,使用46行的即可。
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片


Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

点击运行demo_Realsense.py,
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片
将从keras导入改为从tensorflow下的keras导入Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片


Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

参考链接:ModuleNotFoundError: No module named ´sklearn.utils.linear_assignment_´_Heyuanfly的博客-CSDN博客
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

之后再运行,出现错误: AttributeError: module 'tensorflow' has no attribute 'ConfigProto'Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

所以,需要将 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}
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

把相对路径改成绝对路径
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

之后再运行,出现错误:ValueError: object __array__ method not producing an array
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

numpy 1.19.5 tensorflow-gpu 2.6.2
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

之后,出现错误RecursionError: maximum recursion depth exceeded while calling a Python object
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

更新了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博客
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片


Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

tf.Session(config=config)修改为tf.compat.v1.Session(config=config)
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

tf.gfile 也改成 tf.io.gfile了.
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

tf.compat.v1.GraphDef() 修改为tf.compat.v1.GraphDef()
Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片

tf.get_default_graph()修改为tf.compat.v1.get_default_graph()

Real|YOLOv3在Intel Realsense上的Python实现(未实现)
文章图片


    推荐阅读