yolov4的Pytorch(cpu版)安装步骤详解,有手就能学会

2023-11-05 08:30

本文主要是介绍yolov4的Pytorch(cpu版)安装步骤详解,有手就能学会,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

我的环境

win10+anaconda(创建的python=3.6版本)+yolov4+Pytorch(cpu版)

1. 准备文件

  1. pytorch-YOLOv4代码下载 https://github.com/Tianxiaomo/pytorch-YOLOv4
    上面这个是别人一直在更新的,本文中用可能会出错,因为我是之前下载的版本,你们可以下载这个,按照文中步骤应该就没问题。(9月13日上传)
    链接:https://pan.baidu.com/s/1AmCL25n6yKpABF1j7w1CFg
    提取码:w448
  2. 权重(weights)模型下载
    谷歌云盘 https://drive.google.com/open?id=1cewMfusmPjYWbrnuJRuKhPMwRe_b9PaT
    GitHub下载https://github.com/AlexeyAB/darknet/releases/download/darknet_yolo_v3_optimal/yolov4.weights
    把上面的代码下载之后解压,解压之后的目录下创建一个weight的文件夹,在weight的文件夹里放上面的权重文件。整理之后如下图:在这里插入图片描述
    这样子文件都准备完成了

2. 创建环境

  1. anaconda创建python=3.6的虚拟环境
    进入cmd,命令 conda create -n yolov4(这个是起的名字)python=3.6
conda create -n yolov4 python=3.6

激活这个环境

activate yolov3-pytorch

还需要安装依赖,可以去官网根据自己的需要选择,https://pytorch.org/

我的命令如下

conda install pytorch torchvision cpuonly -c pytorch

我的只需要安装这一个就行的,所有的依赖包如下,我也不懂每一个都有什么意义。

(ceshi) C:\Users\Administrator\Desktop\YOLOv4\pytorch-YOLOv4-master\pytorch-YOLOv4-master>pip list
Package      Version
------------ -------------------
certifi      2020.4.5.1
mkl-fft      1.0.15
mkl-random   1.1.0
mkl-service  2.3.0
numpy        1.18.1
olefile      0.46
Pillow       7.1.2
pip          20.0.2
setuptools   46.1.3.post20200330
six          1.14.0
torch        1.5.0
torchvision  0.6.0
wheel        0.34.2
wincertstore 0.2

到这里,文件准备好了,环境搭建好了,接下来就是测试。

3. 测试

打开cmd,激活搭建的环境,在进入到你解压的文件目录下,然后用如下命令,确保每一个文件都在对应的文件夹下(yolov4.cfg在cfg文件夹下,yolov4.weights在weight文件夹下,dog.jpg在data文件夹下)

python demo.py cfg/yolov4.cfg weight/yolov4.weights data/dog.jpg

运行之后部分代码如下:

  149 conv    255  1 x 1 / 1    38 x  38 x 512   ->    38 x  38 x 255150 detection151 route  147152 conv    512  3 x 3 / 2    38 x  38 x 256   ->    19 x  19 x 512153 route  152 116154 conv    512  1 x 1 / 1    19 x  19 x1024   ->    19 x  19 x 512155 conv   1024  3 x 3 / 1    19 x  19 x 512   ->    19 x  19 x1024156 conv    512  1 x 1 / 1    19 x  19 x1024   ->    19 x  19 x 512157 conv   1024  3 x 3 / 1    19 x  19 x 512   ->    19 x  19 x1024158 conv    512  1 x 1 / 1    19 x  19 x1024   ->    19 x  19 x 512159 conv   1024  3 x 3 / 1    19 x  19 x 512   ->    19 x  19 x1024160 conv    255  1 x 1 / 1    19 x  19 x1024   ->    19 x  19 x 255161 detection
Loading weights from weight/yolov4.weights... Done!
data/dog.jpg: Predicted in 5.850648 seconds.
truck: 0.970982
dog: 0.999997
bicycle: 1.000000
save plot results to predictions.jpg

文件夹下面就多了一个图片文件,咱们可以重新命名predictions_yolov4.jpg,否则你测试另外一个图片,这个就会被覆盖。之后可以在测试另外一个图片,命令如下:

python demo.py cfg/yolov4.cfg weight/yolov4.weights data/giraffe.jpg

这样两个图片的测试就完成了。yolov4
第二个
在这里插入图片描
如果你有yolov3.weights,https://pjreddie.com/media/files/yolov3.weights
把这个权重也放在weight文件夹下面,你可以在测试yolov3的效果。代码需要修改一下,就是把yolov4变成yolov3就行了,命令如下:

python demo.py cfg/yolov3.cfg weight/yolov3.weights data/dog.jpg

图片是下面的,这个没有yolov4的效果好,应该与我的程序没有修改有关系!!在这里插入图片描述
在这里插入图片描述

4. camera.py和models.py

如果想用comera.py,需要增加一个依赖包opencv-python,命令如下:

pip install opencv-python

然后直接运行camera.py就可以,就是调用电脑的摄像头,框选图像并标注,命令是:

python camera.py

图像是:
在这里插入图片描述

这个电脑摄像头和精度堪忧啊。

好了,就写这么多了,感觉我这都是傻瓜式的,一步一步来的,有手就能学废,你学废了吗。。。。。学废的扣6,没学废的扣眼珠子。
至于models.py,我还没怎么看,关键是我也不太懂啊,就先不写了。

参考:https://blog.csdn.net/AliceZyxw/article/details/105307498

https://blog.csdn.net/weixin_45829462/article/details/104705937

这篇关于yolov4的Pytorch(cpu版)安装步骤详解,有手就能学会的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/348623

相关文章

Jsoncpp的安装与使用方式

《Jsoncpp的安装与使用方式》JsonCpp是一个用于解析和生成JSON数据的C++库,它支持解析JSON文件或字符串到C++对象,以及将C++对象序列化回JSON格式,安装JsonCpp可以通过... 目录安装jsoncppJsoncpp的使用Value类构造函数检测保存的数据类型提取数据对json数

mac安装redis全过程

《mac安装redis全过程》文章内容主要介绍了如何从官网下载指定版本的Redis,以及如何在自定义目录下安装和启动Redis,还提到了如何修改Redis的密码和配置文件,以及使用RedisInsig... 目录MAC安装Redis安装启动redis 配置redis 常用命令总结mac安装redis官网下

springboot整合 xxl-job及使用步骤

《springboot整合xxl-job及使用步骤》XXL-JOB是一个分布式任务调度平台,用于解决分布式系统中的任务调度和管理问题,文章详细介绍了XXL-JOB的架构,包括调度中心、执行器和Web... 目录一、xxl-job是什么二、使用步骤1. 下载并运行管理端代码2. 访问管理页面,确认是否启动成功

Mysql 中的多表连接和连接类型详解

《Mysql中的多表连接和连接类型详解》这篇文章详细介绍了MySQL中的多表连接及其各种类型,包括内连接、左连接、右连接、全外连接、自连接和交叉连接,通过这些连接方式,可以将分散在不同表中的相关数据... 目录什么是多表连接?1. 内连接(INNER JOIN)2. 左连接(LEFT JOIN 或 LEFT

Java中switch-case结构的使用方法举例详解

《Java中switch-case结构的使用方法举例详解》:本文主要介绍Java中switch-case结构使用的相关资料,switch-case结构是Java中处理多个分支条件的一种有效方式,它... 目录前言一、switch-case结构的基本语法二、使用示例三、注意事项四、总结前言对于Java初学者

Linux内核之内核裁剪详解

《Linux内核之内核裁剪详解》Linux内核裁剪是通过移除不必要的功能和模块,调整配置参数来优化内核,以满足特定需求,裁剪的方法包括使用配置选项、模块化设计和优化配置参数,图形裁剪工具如makeme... 目录简介一、 裁剪的原因二、裁剪的方法三、图形裁剪工具四、操作说明五、make menuconfig

更改docker默认数据目录的方法步骤

《更改docker默认数据目录的方法步骤》本文主要介绍了更改docker默认数据目录的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1.查看docker是否存在并停止该服务2.挂载镜像并安装rsync便于备份3.取消挂载备份和迁

详解Java中的敏感信息处理

《详解Java中的敏感信息处理》平时开发中常常会遇到像用户的手机号、姓名、身份证等敏感信息需要处理,这篇文章主要为大家整理了一些常用的方法,希望对大家有所帮助... 目录前后端传输AES 对称加密RSA 非对称加密混合加密数据库加密MD5 + Salt/SHA + SaltAES 加密平时开发中遇到像用户的

SpringBoot使用minio进行文件管理的流程步骤

《SpringBoot使用minio进行文件管理的流程步骤》MinIO是一个高性能的对象存储系统,兼容AmazonS3API,该软件设计用于处理非结构化数据,如图片、视频、日志文件以及备份数据等,本文... 目录一、拉取minio镜像二、创建配置文件和上传文件的目录三、启动容器四、浏览器登录 minio五、

mysql重置root密码的完整步骤(适用于5.7和8.0)

《mysql重置root密码的完整步骤(适用于5.7和8.0)》:本文主要介绍mysql重置root密码的完整步骤,文中描述了如何停止MySQL服务、以管理员身份打开命令行、替换配置文件路径、修改... 目录第一步:先停止mysql服务,一定要停止!方式一:通过命令行关闭mysql服务方式二:通过服务项关闭