Yolov5 环境配置及部署之环境配置(一) (详细教程)
最近在学习yolov5,记录下过程。
一、环境配置
-
进入Github官网/ultralytics/yolov5/releases,选择版本为v5.0
2.下拉滚动条,找到Source code(zip)。点击下载到本地。
3.解压Yolov5-5.0文件到指定目录,解压后文件如图所示
4.打开Anaconda Prompt,创建名为Yolov550的环境。在官网上要求Python 版本大于等于3.6.0
(base) C:\Users\Administrator>conda create -n Yolov550
5.输入 y,回车。
Proceed ([y]/n)? y
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
# $ conda activate Yolov550
#
# To deactivate an active environment, use
#
# $ conda deactivate
6.激活Yolov550环境 ,输入conda activate Yolov550。
(base) C:\Users\Administrator>conda activate Yolov5
(Yolov5) C:\Users\Administrator>
7.进入解压的Yolov5-5.0目录
(Yolov5) C:\Users\Administrator>M:
(Yolov5) M:\Yolov5\yolov5\Version5\yolov5-5.0>
8.通过来安装环境
pip install -r requirements.txt
9.成功安装以下包
Successfully installed cachetools-4.2.2 chardet-4.0.0 google-auth-1.32.1 google-auth-oauthlib-0.4.4 idna-2.10 oauthlib-3.1.1 opencv-python-4.5.2.54 pyasn1-0.4.8 pyasn1-modules-0.2.8 pycocotools-2.0.2 requests-2.25.1 requests-oauthlib-1.3.0 rsa-4.7.2 tensorboard-2.5.0 tensorboard-data-server-0.6.1 tensorboard-plugin-wit-1.8.0 thop-0.0.31.post2005241907 torch-1.9.0 torchvision-0.10.0 urllib3-1.26.6
10.测试torch 、CUDA 是否正确安装。发现CUDA 没有安装
import torch
>>> flag = torch.cuda.is_available()
>>> print(flag)
False
>>>
11.删除环境,重新安装cuda。
deactivate Yolov550
conda remove -n Yolov550 --all
12.重新创建环境并且指定python版本为3.7
conda create -n Yolov550 python=3.7
conda activate Yolov550
13.安装CUDA和CUDNN
conda install cudatoolkit==10.2.89
conda install cudnn==7.6.5
14.安装剩下的依赖包
matplotlib>=3.2.2
numpy>=1.18.5
opencv-python>=4.1.2
Pillow
PyYAML>=5.3.1
scipy>=1.4.1
tqdm>=4.41.0
tensorboard>=2.4.1
seaborn>=0.11.0
pandas coremltools>=4.1
onnx>=1.8.1
scikit-learn==0.19.2 # for coreml quantization
thop # FLOPS computation
pycocotools>=2.0 # COCO mAP
PS:遇到安装pycocotools 一直报错,请使用命令:
pip install git+https:///philferriere/#subdirectory=PythonAPI
15.安装torch 和 torchvision。进入官网找到和cuda对应的版本,获得安装命令。
conda install pytorch torchvision torchaudio cudatoolkit=10.2 -c pytorch
16.最后安装完毕所有包的版本信息如下:
absl-py 0.13.0 pypi_0 pypi
blas 1.0 mkl defaults
ca-certificates 2021.7.5 haa95532_1 defaults
cachetools 4.2.2 pypi_0 pypi
certifi 2021.5.30 py37haa95532_0 defaults
chardet 4.0.0 pypi_0 pypi
cudatoolkit 10.2.89 h74a9793_1 defaults
cudnn 7.6.5 cuda10.2_0 defaults
cycler 0.10.0 py37_0 defaults
cython 0.29.21 py37hd77b12b_0 defaults
freetype 2.10.4 hd328e21_0 defaults
google-auth 1.32.1 pypi_0 pypi
google-auth-oauthlib 0.4.4 pypi_0 pypi
grpcio 1.38.1 pypi_0 pypi
icc_rt 2019.0.0 h0cc432a_1 defaults
icu 58.2 ha925a31_3 defaults
idna 2.10 pypi_0 pypi
importlib-metadata 4.6.1 pypi_0 pypi
intel-openmp 2021.2.0 haa95532_616 defaults
jpeg 9b hb83a4c4_2 defaults
kiwisolver 1.3.1 py37hd77b12b_0 defaults
libpng 1.6.37 h2a8f88b_0 defaults
libtiff 4.2.0 hd0e1b90_0 defaults
libuv 1.40.0 he774522_0 defaults
lz4-c 1.9.3 h2bbff1b_0 defaults
markdown 3.3.4 pypi_0 pypi
matplotlib 3.3.2 haa95532_0 defaults
matplotlib-base 3.3.2 py37hba9282a_0 defaults
mkl 2020.2 256 defaults
mkl-service 2.3.0 py37h196d8e1_0 defaults
mkl_fft 1.3.0 py37h46781fe_0 defaults
mkl_random 1.1.1 py37h47e9c7a_0 defaults
ninja 1.10.2 h6d14046_1 defaults
numpy 1.21.0 pypi_0 pypi
numpy-base 1.19.2 py37ha3acd2a_0 defaults
oauthlib 3.1.1 pypi_0 pypi
olefile 0.46 py37_0 defaults
opencv-python 4.5.2.54 pypi_0 pypi
openssl 1.1.1k h2bbff1b_0 defaults
pandas 1.1.3 py37ha925a31_0 defaults
pillow 8.0.1 py37h4fa10fc_0 defaults
pip 21.1.3 py37haa95532_0 defaults
protobuf 3.17.3 pypi_0 pypi
pyasn1 0.4.8 pypi_0 pypi
pyasn1-modules 0.2.8 pypi_0 pypi
pyparsing 2.4.7 pyhd3eb1b0_0 defaults
pyqt 5.9.2 py37h6538335_2 defaults
python 3.7.10 h6244533_0 defaults
python-dateutil 2.8.1 pyhd3eb1b0_0 defaults
pytorch 1.9.0 py3.7_cuda10.2_cudnn7_0 pytorch
pytz 2021.1 pyhd3eb1b0_0 defaults
pyyaml 5.3.1 py37he774522_1 defaults
qt 5.9.7 vc14h73c81de_0 defaults
requests 2.25.1 pypi_0 pypi
requests-oauthlib 1.3.0 pypi_0 pypi
rsa 4.7.2 pypi_0 pypi
scipy 1.5.2 py37h9439919_0 defaults
seaborn 0.11.0 py_0 defaults
setuptools 52.0.0 py37haa95532_0 defaults
sip 4.19.8 py37h6538335_0 defaults
six 1.16.0 pyhd3eb1b0_0 defaults
sqlite 3.36.0 h2bbff1b_0 defaults
tensorboard 2.4.1 pypi_0 pypi
tensorboard-plugin-wit 1.8.0 pypi_0 pypi
tk 8.6.10 he774522_0 defaults
torchaudio 0.9.0 py37 pytorch
torchvision 0.10.0 py37_cu102 pytorch
tornado 6.1 py37h2bbff1b_0 defaults
tqdm 4.54.0 pyhd3eb1b0_0 defaults
typing_extensions 3.10.0.0 pyh06a4308_0 defaults
urllib3 1.26.6 pypi_0 pypi
vc 14.2 h21ff451_1 defaults
vs2015_runtime 14.27.29016 h5e58377_2 defaults
werkzeug 2.0.1 pypi_0 pypi
wheel 0.36.2 pyhd3eb1b0_0 defaults
wincertstore 0.2 py37_0 defaults
xz 5.2.5 h62dcd97_0 defaults
yaml 0.2.5 he774522_0 defaults
zipp 3.5.0 pypi_0 pypi
zlib 1.2.11 h62dcd97_4 defaults
zstd 1.4.9 h19a0ad4_0 defaults
17.测试CUDA 是否可用:输入python,进入python环境。print(.is_available())为True表示正确安装CUDA。
(Yolov550) C:\Users\Administrator>python
Python 3.7.10 (default, Feb 26 2021, 13:06:18) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> print(torch.cuda.is_available())
True
>>>
18.根据图像的尺寸及速度,选择合适的模型。yolov5各个模型参数如下图所示:
19.代码测试
///从图片检测
python detect.py --source ./data/images/ --weights ./weights/yolov5s.pt --conf 0.4
///从摄像头检测
python detect.py --source 0 --weights ./weights/yolov5s.pt --conf 0.4
///加载自己训练模型检测
python detect.py --source 0 --weights ./模型地址 --conf 阈值
///可以在Github官网上下载放到weights文件夹内,如果没有代码会自动下载
20.程序运行结果,正常运行。
(Yolov550) M:\Yolov5\yolov5\Version5\yolov5-5.0>python detect.py --source ./data/images/ --weights ./weights/yolov5s.pt --conf 0.4
Namespace(agnostic_nms=False, augment=False, classes=None, conf_thres=0.4, device='', exist_ok=False, img_size=640, iou_thres=0.45, name='exp', nosave=False, project='runs/detect', save_conf=False, save_txt=False, source='./data/images/', update=False, view_img=False, weights=['./weights/'])
YOLOv5 2021-4-12 torch 1.9.0 CUDA:0 (GeForce GTX 1660, 6144.0MB)
Fusing layers...
Model Summary: 224 layers, 7266973 parameters, 0 gradients
J:\WorkSoft\envs\Yolov550\lib\site-packages\torch\nn\functional.py:718: UserWarning: Named tensors and all their associated APIs are an experimental feature and subject to change. Please do not use them for anything important until they are released as stable. (Triggered internally at ..\c10/core/TensorImpl.h:1156.)
return torch.max_pool2d(input, kernel_size, stride, padding, dilation, ceil_mode)
image 1/2 M:\Yolov5\yolov5\Version5\yolov5-5.0\data\images\bus.jpg: 640x480 4 persons, 1 bus, Done. (0.276s)
image 2/2 M:\Yolov5\yolov5\Version5\yolov5-5.0\data\images\zidane.jpg: 384x640 2 persons, 1 tie, Done. (0.044s)
Results saved to runs\detect\exp2
Done. (0.962s)
参考/qq_45389690/article/details/111306902