首页 > 其他分享 >PP-HumanSeg安装、运行、训练、测试

PP-HumanSeg安装、运行、训练、测试

时间:2024-04-13 12:12:43浏览次数:23  
标签:PP 测试 -- PaddleSeg conda https config HumanSeg cn

参考paddleseg官网https://aistudio.baidu.com/projectdetail/2189481?channelType=0&channel=0

零、准备工作

1.用 conda 创建虚拟环境

#1. 查询conda环境下有哪些虚拟环境
conda info --envs

#2. 创建指定python版本的环境
conda create -n PaddleSeg_py_38 python=3.8

#3. 激活环境
conda activate PaddleSeg_py_38

2.设置conda和pip的镜像(查看镜像有无,没有则设置镜像)

 https://www.cnblogs.com/loveDodream-zzt/p/17871994.html

2.1 设置conda的镜像源

// 1. 查看镜像源
conda config --show channels

// 2. 删除添加源,恢复默认源
conda config --remove-key channels

// 3. 添加清华镜像源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/

//终端显示包从哪个channel下载,以及下载地址是什么
conda config --set show_channel_urls yes

2.2 Pip配置清华镜像源(conda和pip都要设置!!!)

 临时使用清华镜像源,如下:

// some-package代表你需要安装的包
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

//下面这种方式也是一样的
pip install some-package -i https://pypi.tuna.tsinghua.edu.cn/simple

永久配置清华镜像源, 如下:

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

3.网络

因为涉及到github下载,没有网络大文件啥的很费劲而且github不稳定。

https://www.cnblogs.com/loveDodream-zzt/p/18122955

——————————————————————————————————————————————————————————————————

一、安装

1. 安装PaddlePaddle

版本要求

  • PaddlePaddle >= 2.0.2

  • Python >= 3.7+

由于图像分割模型计算开销大,推荐在GPU版本的PaddlePaddle下使用PaddleSeg。推荐安装10.0以上的CUDA环境。

推荐安装10.0以上的CUDA环境。安装教程请见PaddlePaddle官网

  • 查询本机支持的CUDA版本

你先确认你的GPU能装什么版本CUDA, 在命令行中输入:

nvidia-smi

就可以看到你的GPU可以装什么版本的CUDA了,如下图:

Windows 安装

GPU版本支持CUDA 10.2/11.2/11.6/11.7,且仅支持单卡

# CUDA 11.7
python -m pip install paddlepaddle-gpu==2.4.2.post117 -f https://www.paddlepaddle.org.cn/whl/windows/mkl/avx/stable.html

Linux 安装

# CUDA 11.7
python3 -m pip install paddlepaddle-gpu==2.4.2.post117 -f https://www.paddlepaddle.org.cn/whl/linux/mkl/avx/stable.html

2. 安装PaddleSeg包

pip install paddleseg

3. 下载PaddleSeg仓库

# 进入到ai目录下
cd ai
# 若您在本地环境运行,使用git下载PaddleSeg代码 git clone https://github.com/PaddlePaddle/PaddleSeg.git

4.安装依赖

cd PaddleSeg
# 安装依赖
pip install -r requirements.txt

pip install -v -e .

二、准备模型和数据

以下所有命令均在PaddleSeg/contrib/PP-HumanSeg目录下执行。

cd contrib/PP-HumanSeg

下载推理模型并将其保存在推理模型中

python src/download_inference_models.py

下载测试数据并保存在数据中

python src/download_data.py

2.下载测试数据

我们提供了supervise.ly发布人像分割数据集Supervisely Persons, 从中随机抽取一小部分并转化成PaddleSeg可直接加载数据格式,同时提供了手机前置摄像头的人像测试视频video_test.mp4。通过运行以下代码进行快速下载:

# python data/download_data.py
python src/download_data.py

三、测试

使用src/seg_demo.py脚本实现肖像分割、背景替换等功能的演示。

src/seg_demo.py脚本的输入数据可以是图片、视频或者摄像头,主要参数说明如下。

参数说明类型是否必选项默认值
config 预测模型中deploy.yaml文件的路径 str -
img_path 待分割图片的路径 str -
video_path 待分割视频的路径 str -
bg_img_path 背景图片的路径,用于替换图片或视频的背景 str -
bg_video_path 背景视频的路径,用于替换视频的背景 str -
save_dir 保存输出图片或者视频的路径 str ./output
vertical_screen 表明输入图片和视频是竖屏 store_true False
use_post_process 设置对输出logit进行后处理,滤除背景干扰 store_true False
use_optic_flow 设置使用光流处理 store_true False
参数说明:

1)输入图片进行测试

使用背景图片,得到替换背景的图片,结果保存在data/images_result/目录。大家可以进入该目录下,右键单击图片,选择打开进行查看(如下)。

 

 

标签:PP,测试,--,PaddleSeg,conda,https,config,HumanSeg,cn
From: https://www.cnblogs.com/loveDodream-zzt/p/18132549

相关文章

  • 百度APP原型设计
    一、实验题目:原型设计二、实验目的:掌握产品原型设计方法和相应工具使用。三、实验要求(1)对比分析墨刀、Axure、Mockplus等原型设计工具的各自的适用领域及优缺点(至少3条)。1.墨刀:适用领域:墨刀适用于快速创建简单的交互原型,尤其适合设计师、产品经理和开发人员等各个领域的用户......
  • 不背单词app原型设计
    墨刀、Axure和Mockplus都是原型设计工具,它们各自具有不同的适用领域和优缺点。以下是对这三个工具的对比分析:1.墨刀:适用领域:墨刀适用于用户体验设计、界面设计以及互动设计。它适用于较小规模的团队和项目,尤其适合快速原型制作和迭代。优点:1.界面简洁直观,易于上手。2.支......
  • 打车APP原型设计
    实验题目:打车app原型设计一、实验要求对比分析墨刀、Axure、Mockplus等原型设计工具的各自的适用领域及优缺点。1. 墨刀优点:界面简洁直观,易于上手;支持多人协作,方便团队协作和沟通;提供了丰富的交互动画和过渡效果,使原型更具真实感;可以在墨刀上进行在线预览和测试,方便分享和获取......
  • 短视频app源码,一文带你轻松搞懂前端大文件上传思路
    短视频app源码,一文带你轻松搞懂前端大文件上传思路文件上传是我们在平时开发短视频app源码中经常会遇到的业务,如果只是简单的文件上传那还不足以作为项目亮点,而当我们给它加上切片、续传的功能,就不一样了。本文会带大家搞明白这些功能的实现思路,主要聚焦于前端部分,基于Vue3......
  • APP测试
    自我介绍测开自我介绍:偏嵌入式我叫柯泽灵,毕业于浙江大学信息与通信工程,目前在TPLINK的研发杭州分部测试8课担任自动化负责人,主要工作内容有两块,一是视频后端产品和智能家居产品的业务测试工作,包括测试用例开发、执行和缺陷跟踪;这块因为我们自动化小组主要负责相对成熟的产品,占......
  • flutterr 检测应用版本号、服务器下载文件 以及实现 App 自动升级、安装
    依赖package_info_plus:^7.0.0path_provider:^2.1.2#查找文件获取文件存储路径open_file:^3.3.2#打开文件插件permission_handler:^11.3.1#检测Apk是否拥有权限配置权限<!--在Android6(Marshmallow)之前的版本中,明确声明网络权限--><uses-perm......
  • uniapp实现虚拟列表(元素固定高度)
    一、应用场景当接口返回数据太多时,前端可使用虚拟列表,实现长列表。二、原理只有在屏幕部分元素被显示出来,并且被更新,始终只有固定数量的节点,不会卡顿。三、效果图四、思路步骤使用Object.freeze冻结对象,极大优化性能生成多个元素的options,或者动态获取根据onPag......
  • [题解][2022年江西省大学生程序设计竞赛] Remove and append
    题目描述给定一个包含n个整数的数组a。定义一个操作如下:从数组a中选择k个整数,将它们删除,并将它们的和追加到数组末尾。如果数组A比数组B(长度相同)字典序大,那么在A和B第一次不同的位置上,A的数字比B对应位置上的数字要大。例如,[0,1,14,0]比[0,1,5,6]字典序大,因为它们在第三......
  • 52 Things: Number 31: Game Hopping Proof
    52Things:Number31:GameHoppingProof52件事:数字31:游戏跳跃证明 Thisisthelatestinaseriesofblogpoststoaddressthelistof'52ThingsEveryPhDStudentShouldKnowToDoCryptography':asetofquestionscompiledtogivePhDcandidatesase......
  • Mask实现原理(兼模板测试小结)
    前言虽然说网上已经有不少优秀的总结,但为了让知识停留在脑海里,我还是决定自己总结一份笔记。大概思路Mask会修改Graph组件的材质为StencilMaterial,该材质的作用是给每个不透明的像素标记,将标记结果存入模板缓冲区中。当子级UI进行模板测试时,如果通过就渲染,没通过就不渲染。......