伤心客 发表于 2024-11-3 12:50:58

01 服务器or本地项目部署全流程及常见问题

同道们大家好,今天出一期在windows、linux & ubantu系统中部署yolo or rtdetr项目的流程,供小白快速入门!(声明:以下游程均在蓝耘GPU平台和魔鬼面具的rtdetr项目下进行,其他项目如yolo系列均可使用该方法)
目次
一、预备工作
二、pycharm连接远程服务器方法
三、项目环境设置---RTDETR 和YOLO环境类似
四、训练教程---RTDETR 和YOLO类似
五、训练过程中的一些小本领

一、预备工作

在此之前需要提前下载以下工具

1.显卡资源(自用电脑 或 服务器平台
2.Pycharm专业版,Vscode,或GPU平台的Jupyter界面(以下教程在Pycharm专业版中展示)
3.XFTP文件传输助手(个人习惯,可使用其他文件传输软件,较为方便)
相关链接附文章末尾

二、pycharm连接远程服务器方法

以下游程均在b站有对应视频
0.首先需要先找到远程服务器的ssh链接及密码,例如 
ssh -p 20733 root@link.lanyun.net
rppfoklk5zmp22su
https://i-blog.csdnimg.cn/direct/c78b497da7d74addb9885e9340f087df.png
1.打开pycharm专业版,依次点击工具---部署--设置
https://i-blog.csdnimg.cn/direct/4c310b4094a94cd49202ac03776d081e.png
2.添加新设置,按以下图片流程添加ssh信息,测试连接(不懂请看b站视频)
https://i-blog.csdnimg.cn/direct/e54a1d0d0f5242ed9d31e87679951835.png
https://i-blog.csdnimg.cn/direct/0d06a9c6850c4a4cb4bf9e28da9c2cb4.png
3.打开远程主机Remote Host(远程服务器目次)
https://i-blog.csdnimg.cn/direct/f734400062c94083962d1b0166de3fab.png
4.打开远程终端
https://i-blog.csdnimg.cn/direct/7f3e274402d444878c066fd4854c5269.png
https://i-blog.csdnimg.cn/direct/e1e091f4b2d44355bd15c7826340f8d6.png
三、项目环境设置---RTDETR 和YOLO环境类似

1.本地需要提前预备好Conda环境以便安装虚拟环境及torch及后续操纵
conda create -n yolo python=3.8 #创建虚拟环境(云GPU若有对应环境可不用创建)
conda init(可选)
conda activate(可选)
conda activate yolo#进入虚拟环境
#yolo可替换其他名字
2.云GPU服务器直接选定以下torch和cuda版本直接部署,或创建虚拟环境后按装下方相关包。
https://i-blog.csdnimg.cn/direct/de764598c523407cac60d85e7e1bbcd2.png
以下代码装好虚拟环境后可直接全部复制进去,或者一条一条复制,一样平常不会出现报错情况。
(若网络下载过慢,可尝试切换其他镜像源)
pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu117  -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install timm==0.9.8 thop efficientnet_pytorch==0.7.1 einops grad-cam==1.4.8 dill==0.3.6 albumentations==1.3.1 pytorch_wavelets==1.3.0 tidecv    -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install -U openmim -i https://pypi.tuna.tsinghua.edu.cn/simple
        mim install mmengine  -i https://pypi.tuna.tsinghua.edu.cn/simple
        mim install "mmcv>=2.1.0"  -i https://pypi.tuna.tsinghua.edu.cn/simple

apt-get update
apt install libgl1-mesa-glx
pip install psutil -i https://pypi.tuna.tsinghua.edu.cn/simple 3.装好环境的同时将魔导的项目文件上传进去,可以用XFTP上传或直接上传
首先使用XFTP连接远程服务器
https://i-blog.csdnimg.cn/direct/3372957c0da54328b9359d8fcc41dc4a.png
https://i-blog.csdnimg.cn/direct/fe810296b70b4403ad20ff7bf241d680.png
四、训练教程---RTDETR 和YOLO类似

1.终端下解压项目文件
①unzip RTDETR-20241020.zip (解压指令)
②cd RTDETR-main/  (cd到文件目次下)
③修改数据集路径(使用项目默认数据集测试,修改后上传保存)
https://i-blog.csdnimg.cn/direct/3eaf300a13e542f78c14fd040e3b1c73.png
④运行python train.py 指令提示报错,原因是因为路径错误,datasets出现了两次
https://i-blog.csdnimg.cn/direct/58d2d696e81c4570a9f3723275f1e802.png
⑤vim /root/.config/Ultralytics/settings.yaml  (---vim到上方报错路径)
按键盘上的“i”键进入改写模式,删除路径后方的datasets,改成以下路径后按ESC退出改写模式后,按Shift+Z+Z保存代码退出
https://i-blog.csdnimg.cn/direct/f5eb85a242514d49a89a5ab5a49fc0fe.png
⑥再次运行python train.py 指令后成功运行,或者大概会出现字体下载卡顿
如出现以下卡顿情况,请点击下载链接在本地下载后上传到和train.py同级目次,然后在终端使用以下指令:即可办理该问题,
mv Arial.ttf /root/.config/Ultralytics/Arial.ttf https://i-blog.csdnimg.cn/direct/31de109b493c4de8aee7f72f0dedae2e.png
末了成功运行代码
https://i-blog.csdnimg.cn/direct/c55d5dc140b8442699d5d83c93bfc21f.png
后续更换数据集的话,则按照以上格式,自行根据现真相况更改数据集即可
五、训练过程中的一些小本领


1.使用nohup指令进行后台训练,防止因断网导致的停止等情况
①使用python train.py指令的话 你电脑网络环境发生变化时(则你的训练后停止,比如开关vpn,电脑息屏,网络不稳定)
②使用nohup python train-s.py > log.log 2>&1   指令的话,你跑通后电脑不管是关机还是啥,他代码都会在服务器后台跑,和自己电脑不要紧)
nohup python train.py > log.log 2>&1         
nohup python train-1.py > log1.log 2>&1
nohup python train-2.py > log2.log 2>&1
nohup python train-3.py > log3.log 2>&1
#----服务器训练代码请使用nohup指令在后台跑,
然后目录下会出现log.log的日志文件,存放你的所有打印的信息

以上默认为0卡跑,若存在多卡,请在指令前加 CUDA_VISIBLE_DEVICES=1
例如
CUDA_VISIBLE_DEVICES=1nohup python train-s.py > log.log 2>&1
...... 2.检察是否跑完 nvidia-smi,//检察显存变化,假如跑一个实验占了8个G显存,然后显存酿成0的时候就说明跑完了
3.检察跑到哪一轮了,精度是多少 检察runs/train/exp文件里面的result.csv,主要检察map50 和map50-95 的涨点情况
4.检察代码是否报错,打开日记log.log检察代码报错情况
5.运行一次代码,会出现一个历程号,若代码开始跑了,想提前停止的话,请使用ps aux 指令检察PID历程号了,并且使用kill -9 历程号 停止该历程并开释显存
一些常用终端指令
①rm -rf datasets/     ----删除datasets文件夹
②unzip dataset.zip  ----解压dataset文件夹--xftp最好传输压缩包格式文件,这样快
③复制文件请在xftp中ctrl cv复制粘贴

附上相关链接
①文章中项目代码请检察:GitHub - z1069614715/objectdetection_script: 一些关于目的检测的脚本的改进思绪代码,详细请看readme.md
1.显卡资源(自用电脑 或 服务器平台)
https://cloud.lanyun.net/#/activity?uuid=efa15431a91abaaf0bdeb212fffe685a
2.Pycharm专业版,Vscode,或GPU平台的Jupyter界面(以下教程在Pycharm专业版中展示)
3.XFTP文件传输助手(个人习惯,可使用其他文件传输软件,较为方便)
家庭/学校免费 - NetSarang Website
如有其他问题请在评论区指出,以为有用的可以点赞评论,我们下期再见!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 01 服务器or本地项目部署全流程及常见问题