YOLOV3的win10安装

WIN10下安装YOLO


绕了一个大坑,在2020.3.20,python3.8暂时不支持tensoflow,但是训练的时候需要tensorflow,所以降版本到了python3.7。

使用anaconda复制环境

最后发现,这个所谓训练的时候的tensorflow,仅仅用来画图

 


第二个坑,记得安装Vislual Studio Installer,我安装的是2019,只安装了图中的这两个。

YOLOV3的win10安装_第1张图片


第三个大坑,就是内存的问题了,tensorflow的画图部分会直接把GPU的资源全部占领,让Pytroch没有资源训练,解决办法就是关闭画图,或者换一个tensorflow-cpu的版本

 


第四个坑,CMD窗口卡死,等了好一会儿,准备放弃了按了ctrl+c结束进程,最后竟然继续跑,匪夷所思。

按这篇文章解决这个问题

 


 

YOLOV3的pytorch源码

git的国内镜像

anaconda下载

注意:anaconda安装的时候要选加入全局变量

用anaconda创建环境

conda create -n py3 python=3
conda activate py3

pip换源

$ d:
$ cd PyTorch-YOLOv3/
$ sudo pip install -r requirements.txt

注意:requirement里面有一些不能安装,挑出来稍后自己安装

可以安装的列表如下:

numpy
matplotlib
tensorboard
terminaltables
pillow
tqdm


不可以安装的列表如下:

torch>=1.0
tensorflow
torchvision

 

使用git运行bash下载模型权重,这里是一开始的做法,这种做法速度很慢,可以直接看后面用迅雷下载的方法。

YOLOV3的win10安装_第2张图片

发现wegt缺失,wegt在git下的安装。(可以跳过)

虽然可以下载了,但是下载速度很慢!

YOLOV3的win10安装_第3张图片

把文件的下载链接提取出来,使用迅雷下载。

YOLOV3的win10安装_第4张图片

YOLOV3的win10安装_第5张图片

 

把下载好的文件放到对应的文件夹中,然后把下载wget的这几个网址删除。

进入weights目录用同样手法下载网络权重。

YOLOV3的win10安装_第6张图片

下载CUDA10.2

安装CUDNN

下载pytorch用pip安装

YOLOV3的win10安装_第7张图片

 

直接运行,会报错误:

python test.py --weights_path weights/yolov3.weights

原因是D:\PyTorch-YOLOv3-master\data\coco\5k.txt里面路径是Linux系统的不是wind10系统的,用文本的替换把格式改对,再一次:

python test.py --weights_path weights/yolov3.weights

YOLOV3的win10安装_第8张图片

YOLOV3的win10安装_第9张图片

 接下来运行检测图片,还是有图片路径的问题,修改下面两个部分:

python detect.py --image_folder data/samples/

YOLOV3的win10安装_第10张图片

 接下来是模型训练,会出现一个需要tensorflow的报错,之前我python是3.8很遗憾没有tensorflow对应的版本,现在我降python到3.7,使用pip install tensorflow-gpu,就可以安装tensorlfow:

python train.py --data_config config/coco.data  --pretrained_weights weights/darknet53.conv.74

YOLOV3的win10安装_第11张图片

YOLOV3的win10安装_第12张图片

 

 最后还是报错:

YOLOV3的win10安装_第13张图片

根据,这篇文章,我安装了 pip install protobuf,无效。

结果发现是自己没装这个!!

YOLOV3的win10安装_第14张图片

 接下来再次尝试运行,根据这篇文章,换个API解决,这边可以看这篇文章把后面出现的问题一并改了:

YOLOV3的win10安装_第15张图片

YOLOV3的win10安装_第16张图片

 再次运行,出现了路径问题,找到相应文件使用文本替换如法炮制:

 

YOLOV3的win10安装_第17张图片

最后发现CUDA的内存不够用了,就差30MIB,这个显卡是逗我的把!!!! 

YOLOV3的win10安装_第18张图片

为了看到内存的使用情况,需要找到nvida-smi.exe文件 ,但是我根据,这篇文章,我下载了一个,最后没有用上。

在下载好前,我减小了训练的batch,从而降低CUDA的内存使用量,一开始可以,我就没有深究了,就出现了后面的问题。

后面问题解决后发现又是这种情况,看了这篇文章发现是tensorflow的问题,把logger有关的画图全部屏蔽掉就OK了。

现在总结一下,第一次内存不够是batch的问题,第二次是tensorflow的问题。

YOLOV3的win10安装_第19张图片

 

 

 然后又出来问题了,参考,解决:

YOLOV3的win10安装_第20张图片

还有问题~~~~靠这个大神解决,这个是一个坑,tensorflow仅仅用来画图最后占据了整个GPU,本来是找限制tensorflow的GPU方法,但是很多API,我的版本竟然都没有。最后我使用tensorflow的CPU解决这个问题。

YOLOV3的win10安装_第21张图片

最后训练的图片,这个东西这样太难了:

YOLOV3的win10安装_第22张图片

你可能感兴趣的:(目标识别)