【Yolo学习-内容复现】Pytorch配置与Yolo效果复现

前言

鉴于目前在公司研究算法部分,进行yolo相关学习和学习中途的内容记录
当前研究目的:利用YOLO完成特定物体的识别与分割,所选版本为YOLOV8
学习内容大致如下:
1.环境构建
2.内容复现
3.新物体的内容标定
4.新内容训练
5.性能调优和结果显示
在学习的过程中会尝试补全和巩固一部分学过的内容,最好对应的记录,内容主要研究实际应用

以下所作内容需具备一定的配置环境,依照前文中环境构建的结构进行的配置

Pytorch

定义与优点

PyTorch不仅是最受欢迎的深度学习框架之一,而且也是最强大的深度学习框架之一。它有许多独特的优点,使其在学术界和工业界都受到广泛的关注和使用。接下来我们就来详细地探讨一下PyTorch的优点。

1. 动态计算图

PyTorch最突出的优点之一就是它使用了动态计算图(Dynamic Computation Graphs,DCGs),与TensorFlow和其他框架使用的静态计算图不同。动态计算图允许你在运行时更改图的行为。这使得PyTorch非常灵活,在处理不确定性或复杂性时具有优势,因此非常适合研究和原型设计。

2.易用性

PyTorch被设计成易于理解和使用。其API设计的直观性使得学习和使用PyTorch成为一件非常愉快的事情。此外,由于PyTorch与Python的深度集成,它在Python程序员中非常流行。

3.易于调试

由于PyTorch的动态性和Python性质,调试PyTorch程序变得相当直接。你可以使用Python的标准调试工具,如PDB或PyCharm,直接查看每个操作的结果和中间变量的状态。

4. 强大的社区支持

PyTorch的社区非常活跃和支持。官方论坛、GitHub、Stack Overflow等平台上有大量的PyTorch用户和开发者,你可以从中找到大量的资源和帮助。

5. 广泛的预训练模型

PyTorch提供了大量的预训练模型,包括但不限于ResNet,VGG,Inception,SqueezeNet,EfficientNet等等。这些预训练模型可以帮助你快速开始新的项目。

6. 高效的GPU利用

PyTorch可以非常高效地利用NVIDIA的CUDA库来进行GPU计算。同时,它还支持分布式计算,让你可以在多个GPU或服务器上训练模型。
综上所述,PyTorch因其易用性、灵活性、丰富的功能以及强大的社区支持,在深度学习领域中备受欢迎。

常见使用场景

1. 计算机视觉
在计算机视觉方面,PyTorch提供了许多预训练模型(如ResNet,VGG,Inception等)和工具(如TorchVision),可以用于图像分类、物体检测、语义分割和图像生成等任务。这些预训练模型和工具大大简化了开发计算机视觉应用的过程。
2. 自然语言处理
在自然语言处理(NLP)领域,PyTorch的动态计算图特性使得其非常适合处理变长输入,这对于许多NLP任务来说是非常重要的。同时,PyTorch也提供了一系列的NLP工具和预训练模型(如Transformer,BERT等),可以帮助我们处理文本分类、情感分析、命名实体识别、机器翻译和问答系统等任务。
3. 生成对抗网络
生成对抗网络(GANs)是一种强大的深度学习模型,被广泛应用于图像生成、图像到图像的转换、样式迁移和数据增强等任务。PyTorch的灵活性使得其非常适合开发和训练GAN模型。
4. 强化学习
强化学习是一种学习方法,其中智能体通过与环境的交互来学习如何执行任务。PyTorch的动态计算图和易于使用的API使得其在实现强化学习算法时表现出极高的效率。
5. 时序数据分析
在处理时序数据的任务中,如语音识别、时间序列预测等,PyTorch的动态计算图为处理可变长度的序列数据提供了便利。同时,PyTorch提供了包括RNN、LSTM、GRU在内的各种循环神经网络模型。

安装(conda环境)

以下所编写的内容为用conda环境进行安装,方便项目管理也放置项目混乱或者各种包存在冲突的情况,没有的话,同样可以考虑使用venv进行环境的分离,在部分编辑器下,能自动的进行配置。

创建虚拟环境

conda create -n yolov8 python==3.8.0  

建议使用conda的Prompt进行操作,如果使用默认的CMD窗口,需要配置环境变量。
在创建的时候,可以考虑走到指定的项目路径下进行创建。
imagepng
imagepng

查看虚拟环境状态

脚本如下:

conda env list

效果如下:
imagepng

激活虚拟环境

脚本如下:

conda activate yolov8

效果如下:
imagepng

安装pytorch包

如果在安装的过程中,觉得有点慢可以考虑进行镜像源的切换,可以下附:conda换源部分的介绍。
pytorech的版本可以依据实际的环境进行版本的切换。

pip install torch==1.9.0+cu111 torchvision==0.10.0+cu111 torchaudio==0.9.0 -f https://download.pytorch.org/whl/torch_stable.html

imagepng
下载的时间会相对长一些,可以耐心多等待一会
查看环境状态

pip list

imagepng

YOLOV8脚本下载与复现

接下来进行YOLOV8脚本的安装与基础内容的复现

脚本下载

githup地址:https://github.com/ultralytics/ultralytics
gitee地址:https://gitee.com/monkeycc/ultralytics
imagepng
可以直接下载或者使用git进行安装

git clone https://github.com/ultralytics/ultralytics.git

imagepng
使用vscode打开并进行环境切换
imagepng
imagepng
里面能看到所用包的具体脚本,真正在使用的过程中24年只用安装对应包就可以直接进行调用,作者对内容进行了一些优化,可以直接进行使用.
具体操作可以参考:https://docs.ultralytics.com/zh/quickstart/#use-ultralytics-with-python
imagepng

pip install ultralytics

imagepng

下载测试模型

下载地方为githup地址下方
imagepng
新建文件夹wighte,将下载的模型放置与文件夹下
imagepng

内容复现测试

进入到对应的文件夹目录下
imagepng
执行如下命令

yolo task=segment mode=predict model=wighte/yolov8s.pt source=ultralytics/assets/bus.jpg save=true

imagepng

效果

imagepng

附:conda 常见命令

一、创建虚拟环境
conda  create  --name  env_name
conda  create  --name  env_name python=3.5 # 创建指定python版本
conda  create  --name  env_name python=3.5 numpy scipy # 创建指定python版本下包含某些包

二、激活/使用/进入某个虚拟环境
activate  env_name

三、退出当前环境
deactivate

四、复制某个虚拟环境
conda  create  --name  new_env_name  --clone  old_env_name

五、删除某个环境
conda  remove  --name  env_name  --all
conda env remove -n env_name

六、查看当前所有环境
conda  info  --envs   或者  conda  env  list

七、查看当前虚拟环境下的所有安装包
conda  list  需进入该虚拟环境

conda  list  -n  env_name

八、安装或卸载包(进入虚拟环境之后)
conda  install  xxx
conda  install  xxx=版本号  # 指定版本号
conda  install  xxx -i 源名称或链接 # 指定下载源
conda  uninstall  xxx

九、分享虚拟环境
conda env export > environment.yml  # 导出当前虚拟环境
conda env create -f environment.yml  # 创建保存的虚拟环境

十、源服务器管理
conda当前的源设置在$HOME/.condarc中,可通过文本查看器查看或者使用命令>conda config --show-sources查看。
conda config --show-sources #查看当前使用源
conda config --remove channels 源名称或链接 #删除指定源
conda config --add channels 源名称或链接 #添加指定源

例如:
conda config --add channels  https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels  https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/

国内pip源
阿里云                    http://mirrors.aliyun.com/pypi/simple/
中国科技大学         https://pypi.mirrors.ustc.edu.cn/simple/ 
豆瓣(douban)         http://pypi.douban.com/simple/ 
清华大学                https://pypi.tuna.tsinghua.edu.cn/simple/
中国科学技术大学      http://pypi.mirrors.ustc.edu.cn/simple/

十一、升级
升级Anaconda需先升级conda
conda  update  conda
conda  update  anaconda

十二、卸载
rm  -rf  anaconda

十三、批量导出虚拟环境中的所有组件
conda list -e > requirements.txt  # 导出
conda install --yes --file requirements.txt  # 安装

十四、pip批量导出环境中的所有组件
pip freeze > requirements.txt
pip install -r requirements.txt

附:conda换源

配置清华源,需要依次进行

conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
conda config --set show_channel_urls yes

imagepng
查看状态

conda config --show channels

imagepng
阿里云源切换

pip config set install.trusted-host mirrors.aliyun.com
  • 17
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值