发布时间:2022-09-21 11:00
一、准备工作
前阵子用 matlab 做图像识别项目时发现了 yolov3 算法,觉得很有意思,但是无奈当时还没有基于matlab 的版本(听说现在有了),所以就用 python 运行,我的电脑里有 python_3.7、anaconda_3.6、pycharm。
2、需要的文件:
1、yolov3源代码:github_keras-yolo3
2、权重文件:官网_yolov3.weights (点击直接下载)或者 我的百度网盘文件 链接:
https://pan.baidu.com/s/1YD5dtSrEkcBO0PRHO7eLlw
提取码:1uub
3、python 或 anaconda 或 pycharm
注意:版本需要在3.7以下,3.7版本不支持 tensflow 的库
3、python的环境配置:
很多的库之间都会存在兼容性问题,如果你运行中出现的报错不常见,或者一个错误接着一个错误,那么八成是配置的库存在兼容性问题,把库的版本换了就行
下面介绍一下重要的需要配置的库的版本:
库名称 版本
tensorflow-gpu 2.1.0
keras 2.2.4
tensorflow (可有可无) 1.12.0
Pillow 5.1.0
matplotlib 2.2.2
ffmpeg 1.4
opencv opencv-contrib-python
二、正式开始yolo之旅
1、用官方权重识别图像
接下来先教大家去用官方的权重文件 yolov3.weights 去识别图像
先用 pycharm 或 spyder 打开 keras-yolo3 文件夹,用 pycharm 或 spyder 是为了看文件夹更方便,直接在 anaconda 里运行也是可以的
打开文件后是这样的。
1、我们将下载的 yolov3.weights 文件放在 keras-yolo3-master 文件夹下:
2、把 yolov3.weights 文件转换成 keras 适用的 h5 文件
首先点击左下方的 Terminal (和IDLE一个功能,就是命令行)
输入 python convert.py yolov3.cfg yolov3.weights model_data/yolo.h5
等待一会。。。直到命令行显示 Saved Keras model to model_data/yolo.h5
就可以看到文件夹的 model_data 中多了个 yolo.h5 文件
3、在文件夹下添加一个启动 yolo 函数的代码
在文件夹下新建一个py文件,我取名为 yolostart.py ,代码如下:
from yolo3.model import yolo_body
from keras.layers import Input
from yolo import YOLO
from PIL import Image
yolo = YOLO()
while True:
img = input('Input imagename:')
try:
image = Image.open(img)
except:
print('Open Error!')
continue
else:
rel_image = yolo.detect_image(image)
rel_image.show()
yolo.close_session()
4、在文件夹下新建名为 img 的文件夹,里面放想要进行识别的图片
5、运行 yolostart.py
运行 yolostart.py 文件
提示:Input imagename:
现在输入想要识别的图片的文件路径,这里我输入 img/q.jpg(识别 img 文件夹下名为 q 的 jpg 格式的图片)
成功识别出图上人物
————————————————
版权声明:本文为CSDN博主「霍格沃茨电气魔法师」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_45504119/article/details/105033492