前言
作为深耕FPGA多年的老司机,最近几年入坑AI异构计算FPGA加速领域,免不了要与各种深度学习算法模型打交道,但又不懂python,可是急坏了我这名老司机。
这不,最近杠上了Python,下面就详细介绍一下python小白的我如何在win10上一步步搭建环境并最终成功运行YoloV3的过程。
以下操作过程都是在win10系统下进行的。
1.学习Python基础知识
从python基础教程开始:
https://www.runoob.com/python/python-tutorial.html
先熟悉一下语法,看完了基础教程后直接由Python变为Python3,对应教程:
https://www.runoob.com/python3/python3-tutorial.html
2.安装集成开发环境
在Python教程中看到如下笔记篇,所以就选择了安装 Anaconda 包管理软件
Anaconda 的下载地址:https://www.anaconda.com/download/
选择windows Python3.7版本
若安装成了Python2.7,也没关系,可以通过如下方式在Anaconda 中再安装Python3.7或其他任意版本
由于已经安装了2.7和3.7版本,所以截图就以3.6为例。
2.1 Anaconda 教程
https://docs.anaconda.com/anaconda/user-guide/getting-started/
我只看了入门教程,并安装了Spyder编辑器。
2.2 安装Spyder编辑器
如果Spyder按钮为“Install”表示还未安装,直接点击安装即可,安装完成后按钮就变为“Launch”,点击“Launch”启动Spyder编辑器。
启动后界面及几个简单操作示例如下:
特别注意:在Spyder Ipython console(控制台)执行.py脚本时,使用的是run而非python,即是:
run hello.py
而非:
python hello.py
PS:作为小白的我就在这里纠结了好久不知道怎么在Ipython console执行.py脚本文件?
3.Anaconda安装各种库
所需库有如下几种(若在后续运行过程中提示缺少对应库,再针对性安装也不迟):
configparser
numpy
PIL(pillow)
matplotlib
tensorflow
keras
cv2(opencv)
因为没有GPU,所以tensorflow和keras都是选择无“-gpu”后缀版本,下面就以cv2库(其实就是opencv库)安装为例说明具体安装过程:
若不确定是否安装成功,可以将上图中步骤3.处选择为“Installed”查看是否有对应的库,有时一次不能安装成功,可以重启Anaconda后重新执行相应库的安装过程。
安装后的tensorflow如下图所示:
注意:
若安装过程中下载缓慢或无法成功安装,可以尝试添加其他镜像,如清华的镜像:https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
操作如下所示:
4.下载YoloV3
工程文件:https://github.com/CAUlearner/YOLOv3
模型参数:https://pjreddie.com/media/files/yolov3.weights
下载后解压工程文件,并将yolov3.weights放到解压后的工程文件夹下。
5.转化YoloV3模型文件
run yad2k.py cfg\yolo.cfg yolov3.weights data\yolo.h5
5.运行YoloV3 demo
5.1 运行YoloV3图片demo
run demo.py
demo会自动处理工程路径下:images\test文件夹里的图片
图片demo运行结果
demo运行的结果会保存到images\res文件夹下,具体如下所示:
5.2 运行YoloV3视频demo
打开demo.py文件,对下图所示133~140行代码注释掉,并取消143-146行代码的注释:
将测试视频"video1.mp4",放置于工程路径下,执行如下命令:
run demo.py
视频demo运行结果
特别吐槽:无GPU情况下视频demo运行速度让人发疯,另外一开始测试视频为行车记录仪的一段视频,但输出无任何标记,一度以为视频demo无法运行,不过现在还是不知道为何行车记录仪的运行无标记输出
6.结束
以上即为从Python小白到搭建YoloV3环境并成功运行的全部过程