【目标检测算法实现之yolov5】 一、YOLOv5环境配置,将yolov5部署到远程服务器上

文章目录

  • 一、下载Yolov5代码
  • 二、利用winscp将下载好的yolov5-master.zip压缩包传到服务器上
  • 三、配置环境(远程服务器端)
    • 1.安装miniconda
    • 2.创建虚拟环境
    • 3.配置yolov5需要的环境
      • 激活虚拟环境
      • 安装pytorch
      • 注释掉requirements中的pytorch
      • 安装requirements
  • 四、本地pycharm连接远程服务器
  • 五、可能遇到的错误
    • 1.socket.timeout:The read operation timed out
      • 解决方法

一、下载Yolov5代码

在官网:https://github.com/ultralytics/yolov5上下载yolov5源代码
【目标检测算法实现之yolov5】 一、YOLOv5环境配置,将yolov5部署到远程服务器上_第1张图片

下载成功如下:【目标检测算法实现之yolov5】 一、YOLOv5环境配置,将yolov5部署到远程服务器上_第2张图片

二、利用winscp将下载好的yolov5-master.zip压缩包传到服务器上

在配置基础环境之前,提前压缩自己的代码文件,并通过winscp传输给linux端,传输之后,解压该文件。解压前,先创建一个文件夹,再解压。

winscp下载使用教程参考上一篇博客:使用WinSCP下载和文件传输教程
单击要传输的文件后,再点击上传
【目标检测算法实现之yolov5】 一、YOLOv5环境配置,将yolov5部署到远程服务器上_第3张图片

选择需要上传到的路径即可
【目标检测算法实现之yolov5】 一、YOLOv5环境配置,将yolov5部署到远程服务器上_第4张图片
在服务器端:
创建文件夹:mkdir yolov5
进入创建的文件夹:cd yolov5
解压压缩包:unzip ../yolov5-master.zip(解压文件)
在这里插入图片描述

三、配置环境(远程服务器端)

1.安装miniconda

先在服务器中安装miniconda
参考博客:https://blog.csdn.net/qq_42951560/article/details/109152114

2.创建虚拟环境

创建虚拟环境命令如下:conda create -n yolov5 python==3.8
conda create -n 虚拟环境名字 python==3.8
创建完成后输入conda env list查看是否成功创建虚拟环境

一些关于虚拟环境的常用命令:
下次想要进入这个虚拟环境时:conda activate 虚拟环境名字
切换到其他虚拟环境:conda source activate 其他虚拟环境名字
退出(结束)虚拟环境:conda deactivate
查看都有哪些虚拟环境:conda env list

3.配置yolov5需要的环境

先激活上一步创建的虚拟环境yolov5

激活虚拟环境

使用:conda activate yolov5
在这里插入图片描述

安装pytorch

pytorch官方网站如下:https://pytorch.org/get-started/locally/
如果pytorch也通过requirments.txt来安装,会自动安装pytorch2.0版本和cuda17。这样在下一阶段的训练过程中,一开始训练就会报段错误。
笔者猜测是因为pytorch版本过高,和yolov5的代码不兼容导致的。所以选择在一开始的时候自行安装pytorch
使用以下命令 pip install torch==1.13.0+cu116 torchvision==0.14.0+cu116 torchaudio==0.13.0 --extra-index-url https://download.pytorch.org/whl/cu116
安装pytorch和配套的cuda,torchvision,torchaudio版本。

注释掉requirements中的pytorch

yolov5-master/requirements
因为已经安装过pytorch,所以将requirements中的torch和torchvision注释掉
【目标检测算法实现之yolov5】 一、YOLOv5环境配置,将yolov5部署到远程服务器上_第5张图片

安装requirements

进入解压后的yolov5-master文件夹中并执行安装依赖的命令cd yolov5/yolov5-master/
原来配置环境不需要安装很多windows下的软件,只需要一行代码,就可以配置自己代码所需要的环境,(在requirements中已经写好的)服务器中已经包含的环境就可以避免再下载。
之后使用:pip install -r requirements.txt命令安装yolov5需要的依赖

四、本地pycharm连接远程服务器

选择Tools->Deployment->Configuration
【目标检测算法实现之yolov5】 一、YOLOv5环境配置,将yolov5部署到远程服务器上_第6张图片

连接上服务器
【目标检测算法实现之yolov5】 一、YOLOv5环境配置,将yolov5部署到远程服务器上_第7张图片
将本地文件映射到服务器的文件下
【目标检测算法实现之yolov5】 一、YOLOv5环境配置,将yolov5部署到远程服务器上_第8张图片
编辑python的相关配置
【目标检测算法实现之yolov5】 一、YOLOv5环境配置,将yolov5部署到远程服务器上_第9张图片
选择Script path为detect.py,Python Intepreter为远程服务器上虚拟环境的python
【目标检测算法实现之yolov5】 一、YOLOv5环境配置,将yolov5部署到远程服务器上_第10张图片

运行结果如下:
【目标检测算法实现之yolov5】 一、YOLOv5环境配置,将yolov5部署到远程服务器上_第11张图片
通过winscp查看服务器下的runs/detect/exp文件夹下的图片
发现运行成功

五、可能遇到的错误

1.socket.timeout:The read operation timed out

在服务器端配置yolov5的环境时
使用pip install -r requirements.txt命令时报错
如下图所示,是因为安装nvidia-cublas-cu11==11.10.3.66时超时
【目标检测算法实现之yolov5】 一、YOLOv5环境配置,将yolov5部署到远程服务器上_第12张图片

解决方法

大概是由于网速不稳定,下载过慢,超出默认时间。
修改输入 pip --default-timeout=100 install 包名
这里我使用的是修改默认时间并且换源

pip --default-timeout=1000  install -U nvidia-cublas-cu11==11.10.3.66 -i https://pypi.tuna.tsinghua.edu.cn/simple

你可能感兴趣的:(目标检测,服务器,目标检测,YOLO)