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

相关文章

Go语言使用select监听多个channel的示例详解

《Go语言使用select监听多个channel的示例详解》本文将聚焦Go并发中的一个强力工具,select,这篇文章将通过实际案例学习如何优雅地监听多个Channel,实现多任务处理、超时控制和非阻... 目录一、前言:为什么要使用select二、实战目标三、案例代码:监听两个任务结果和超时四、运行示例五

Linux线程同步/互斥过程详解

《Linux线程同步/互斥过程详解》文章讲解多线程并发访问导致竞态条件,需通过互斥锁、原子操作和条件变量实现线程安全与同步,分析死锁条件及避免方法,并介绍RAII封装技术提升资源管理效率... 目录01. 资源共享问题1.1 多线程并发访问1.2 临界区与临界资源1.3 锁的引入02. 多线程案例2.1 为

Win10安装Maven与环境变量配置过程

《Win10安装Maven与环境变量配置过程》本文介绍Maven的安装与配置方法,涵盖下载、环境变量设置、本地仓库及镜像配置,指导如何在IDEA中正确配置Maven,适用于Java及其他语言项目的构建... 目录Maven 是什么?一、下载二、安装三、配置环境四、验证测试五、配置本地仓库六、配置国内镜像地址

Python使用Tenacity一行代码实现自动重试详解

《Python使用Tenacity一行代码实现自动重试详解》tenacity是一个专为Python设计的通用重试库,它的核心理念就是用简单、清晰的方式,为任何可能失败的操作添加重试能力,下面我们就来看... 目录一切始于一个简单的 API 调用Tenacity 入门:一行代码实现优雅重试精细控制:让重试按我

Python安装Pandas库的两种方法

《Python安装Pandas库的两种方法》本文介绍了三种安装PythonPandas库的方法,通过cmd命令行安装并解决版本冲突,手动下载whl文件安装,更换国内镜像源加速下载,最后建议用pipli... 目录方法一:cmd命令行执行pip install pandas方法二:找到pandas下载库,然后

Python标准库之数据压缩和存档的应用详解

《Python标准库之数据压缩和存档的应用详解》在数据处理与存储领域,压缩和存档是提升效率的关键技术,Python标准库提供了一套完整的工具链,下面小编就来和大家简单介绍一下吧... 目录一、核心模块架构与设计哲学二、关键模块深度解析1.tarfile:专业级归档工具2.zipfile:跨平台归档首选3.

idea的终端(Terminal)cmd的命令换成linux的命令详解

《idea的终端(Terminal)cmd的命令换成linux的命令详解》本文介绍IDEA配置Git的步骤:安装Git、修改终端设置并重启IDEA,强调顺序,作为个人经验分享,希望提供参考并支持脚本之... 目录一编程、设置前二、前置条件三、android设置四、设置后总结一、php设置前二、前置条件

python中列表应用和扩展性实用详解

《python中列表应用和扩展性实用详解》文章介绍了Python列表的核心特性:有序数据集合,用[]定义,元素类型可不同,支持迭代、循环、切片,可执行增删改查、排序、推导式及嵌套操作,是常用的数据处理... 目录1、列表定义2、格式3、列表是可迭代对象4、列表的常见操作总结1、列表定义是处理一组有序项目的

python使用try函数详解

《python使用try函数详解》Pythontry语句用于异常处理,支持捕获特定/多种异常、else/final子句确保资源释放,结合with语句自动清理,可自定义异常及嵌套结构,灵活应对错误场景... 目录try 函数的基本语法捕获特定异常捕获多个异常使用 else 子句使用 finally 子句捕获所

C++11范围for初始化列表auto decltype详解

《C++11范围for初始化列表autodecltype详解》C++11引入auto类型推导、decltype类型推断、统一列表初始化、范围for循环及智能指针,提升代码简洁性、类型安全与资源管理效... 目录C++11新特性1. 自动类型推导auto1.1 基本语法2. decltype3. 列表初始化3