安装环境

首先需要安装anaconda和pycharm,若不知道如何安装,请参考这篇博客
安装好anaconda后,在上面新建python3.8虚拟环境,打开anaconda终端,输入如下命令:

conda create -n py38 python=3.8	
conda activate py38	

gpu版本和cpu版本的pytorch安装

YOLOv5项目在CPU和GPU下均可运行,但是CPU运行速度很慢,当然使用已经训练好吸烟检测模型用来测试得出结果,CPU也是可行的,如果需要自己重新训练数据集,最好还是得有一个可用的英伟达的显卡。
如果有显卡,需要确定支持的CUDA的版本,一般来说cuda11.1是能够安装的。
所以有显卡的可以安装GPU版本的Pytorch,只有CPU的直接安装CPU版本的pytorch。在anaconda中激活创建好的虚拟环境,执行对应版本的命令就可以 (安装时间看具体网速,一般要比较久的时间):


pip install torch==1.8.1+cu111 torchvision==0.9.1+cu111 torchaudio==0.8.1 -f https://download.pytorch.org/whl/torch_stable.html 


conda install pytorch==1.8.1 torchvision==0.9.1 torchaudio==0.8.1 cpuonly -c pytorch

执行命令后如下,需要激活虚拟环境后再安装,也就是安装在py38环境中:
在这里插入描述

YOLOv5所需安装包的安装

首先下载YOLOv5火焰和烟雾检测项目代码和训练好的火焰和烟雾检测模型;若需要pyqt界面下载YOLOv5火焰和烟雾检测项目代码和训练好的火焰和烟雾检测模型+pyQT可视化界面
项目文件下有需要安装的依赖要求在requirements.txt文件中,我们在pycharm终端里面来安装其他依赖。
在pycharm中打开项目文件夹下的requiremes.txt,注释掉已经安装好的包,此外还安装pyqt5用于可视化界面:
在这里插入描述接下来打来pycharm自带终端:
在这里插入描述输入命令:pip install -r requirements.txt 安装即可,pip install 也可以添加清华源安装加速,则输入:

 pip install -r requirements.txt  -i https://pypi.tuna.tsinghua.edu.cn/simple 
 pip install pyqt5 -i https://pypi.tuna.tsinghua.edu.cn/simple 

在这里插入描述

使用训练好的火焰和烟雾模型运行推理

训练好的火焰和烟雾检测模型保存在runs/train下的文件夹中,包含YOLOv5s和YOLOv5m两种训练好的模型。
在这里插入描述

在pycharm终端中执行如下命令:

python detect.py --source fire_smoke-dataset/img/1.jpg --weights runs/train/fire_smoke-v5s/weights/best.pt

若需要在运行过程中展示,需要在输入命令行中加入参数--view-img

python detect.py --source fire_smoke-dataset/img/1.jpg --weights runs/train/fire_smoke-v5s/weights/best.pt --view-img

yolov5支可以检测图像、视频、批量图像检测以及调用自带摄像头或者USB摄像头,具体的使用方法如下:

 python detect.py --source 0  
                            file.jpg  
                            file.mp4  
                            path/  
                            path/*.jpg  

如检测视屏,需要将如下命令中的file.mp4换成自己的视屏文件路径即可:

python detect.py --source file.mp4 --weights runs/train/fire_smoke-v5s/weights/best.pt --view-img

如果需要调用电脑自带摄像头检测:

python detect.py --source 0 --weights runs/train/fire_smoke-v5s/weights/best.pt --view-img

批量检测则执行如下命令:

python detect.py --source fire_smoke-dataset/img --weights runs/train/fire_smoke-v5s/weights/best.pt

到此就完成了如何使用已经训练好的火焰和烟雾检测模型来进行推理得到识别结果了,其他YOLOv5识别模型也是这种步骤来实现的

检测结果可视化:

在这里插入描述在这里插入描述在这里插入描述在这里插入描述