第五十八回 吴用赚金铃吊挂 宋江闹西岳华山-飞桨图像分割套件PaddleSeg初探

news2024/11/17 21:36:56

鲁智深被贺太守抓住,押入死牢。武松得信后,正想回梁山报信,正好戴宗来了,就请戴宗赶快回梁山搬救兵。宋江说兄弟有难,怎能不救? 于是带了十六个头领来到少华山。

因为华州城池厚壮,宋江等无计可施。正一筹莫展之际,恰逢一个宿太尉领御赐金玲吊挂来西岳华山降香,宋江就“请”太尉上山,并”借“了太尉一身行头。

宋江等假扮太尉,把贺太守骗出城来,杀掉。然后杀入华州,救出了史进和鲁智深。最后又把御香、金玲等物都还给了宿太尉。

少华山四人也都加入了梁山。

宋江继续引人入伙,AI轮到图像分割。

飞桨图像分割套件PaddleSeg初探

PaddleSeg是基于飞桨PaddlePaddle的端到端图像分割套件,内置45+模型算法及140+预训练模型,支持配置化驱动和API调用开发方式,打通数据标注、模型开发、训练、压缩、部署的全流程,提供语义分割、交互式分割、Matting、全景分割四大分割能力,助力算法在医疗、工业、遥感、娱乐等场景落地应用。

PaddleSeg环境安装

源码安装PaddleSeg

# 从Github下载PaddleSeg代码。

git clone https://github.com/PaddlePaddle/PaddleSeg

下载源码之后编译安装

cd PaddleSeg
pip install -r requirements.txt
pip install -v -e .

也可以

使用pip安装

pip install paddleseg

确认环境安装成功

在PaddleSeg目录下执行如下命令,会进行简单的单卡预测。查看执行输出的log,没有报错,则验证安装成功。

sh tests/install/check_predict.sh

 PaddleSeg快速入门示例

使用眼底分割作为示例进行演示,实际应用中,可以根据自身的业务需求和场景进行相应的调整与适配。数据集可以用自己的,模型也可以选配其它的。

参考:https://github.com/PaddlePaddle/PaddleSeg/blob/release/2.9/docs/whole_process_cn.md

准备数据

本示例将采用视盘分割(optic disc segmentation)数据集进行演示。数据集的原始图像和对应的分割效果图如下所展示。

 使用如下命令下载数据集

mkdir data
cd data
wget https://paddleseg.bj.bcebos.com/dataset/optic_disc_seg.zip
unzip optic_disc_seg.zip
cd ..

准备配置文件


在PaddleSeg中,我们常用配置化驱动的方式来进行开发,配置文件是模型训练、评估、预测和部署的关键所在。

配置文件中详细定义了分割模型、损失函数、训练超参数、训练数据集以及验证数据集等信息。

本示例使用的配置文件位于:PaddleSeg/configs/quick_start/pp_liteseg_optic_disc_512x512_1k.yml

模型训练


在PaddleSeg的根目录下,执行以下命令来启动单机训练。

python tools/train.py \
       --config configs/quick_start/pp_liteseg_optic_disc_512x512_1k.yml \
       --save_interval 500 \
       --do_eval \
       --use_vdl \
       --save_dir output

训练完成后,模型在验证集上的mIoU可能达到90.65%(具体数值可能会有所变动),精度最高的模型权重将保存在PaddleSeg/output/best_model目录下。

模型评估

在PaddleSeg根目录下,执行以下命令,使用val.py脚本来评估模型的精度,即计算验证数据集的精度。

python tools/val.py \  
       --config configs/quick_start/pp_liteseg_optic_disc_512x512_1k.yml \  
       --model_path output/best_model/model.pdparams

模型预测

在PaddleSeg根目录下,执行以下命令,使用predict.py脚本加载训练好的模型,对图像进行预测,并保存预测结果。

python tools/predict.py \  

       --config configs/quick_start/pp_liteseg_optic_disc_512x512_1k.yml \  

       --model_path output/best_model/model.pdparams \  

       --image_path data/optic_disc_seg/JPEGImages/H0002.jpg \  

       --save_dir output/result

预测完成后,可以在PaddleSeg/output/result目录下查看预测结果,具体图像如下所示。

 

一天,旱地忽律朱贵上报,说徐州沛县芒砀山有一伙儿强人,三人叫混世魔王樊瑞,八臂哪吒项充和飞天大胜李衮,号称要吞并梁山泊。宋江正要下山,九纹龙史进说我们四个去就行了。

史进四人与樊瑞三人一交手,就落了下风,多亏小李广花荣和金枪手徐宁随后就过来帮忙。第二天,宋江亲自带着大队人马赶到。

公孙胜说他们会妖法,我用一个阵法来抓他们。

欲知后事如何,且听下回分解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1516898.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Selenium 自动化 —— 入门和 Hello World 实例

Selenium 是什么 Selenium 是一个用于自动化网页浏览器操作的工具,它支持多种浏览器和多种操作系统。主要用于测试 web 应用程序的功能,也可用于执行一些基本的浏览器操作任务,例如自动化表单填写、网页导航等。 Selenium 是一个开源项目&a…

扒带和扒谱的区别 FL Studio怎么扒带 扒带编曲制作 扒带简单歌曲

在许多业余音乐爱好者们的眼里,扒带和扒谱是同一种东西。诚然,扒带和扒谱的确非常相似,但是从严格的意义上来说,这二者还是有一定的区别。今天我们就来说一说扒带和扒谱的区别,FL Studio怎么扒带。 FL Studio21中文官网…

.Net使用ElasticSearch

文章目录 前言主体内容一.Kibana中ElasticSearch的基础操作1.GET(查询)1.POST(新增)1.PUT(修改)1.DELET(删除) 二.在.Net中,对ElasticSearch进行基础操作1.DotNet连接Ela…

Docker常见指令

1.docker search mysql :从docker镜像仓库搜索和mysql有关的镜像 docker search mysql 2.docker pull mysql :从docker仓库拉取mysql镜像 docker pull mysql 3.docker run mysql :启动mysql镜像 docker run mysql 4.docker ps &#xff…

C语言学习--字符和字符串

目录 1.字符 字符输入--scanf 字符输入--getchar 2.字符串 字符串输入--scanf 字符串输入--gets 1.字符 字符输入--scanf C语言scanf输入时缓冲区问题 scanf函数是标准输入流(从键盘接收数据),接收的数据放入输入缓冲区中,其中就包括…

粒子群算法对pi控制器进行参数优化,随时优化pi参数以控制直流无刷电机转速。

粒子群算法对pi控制器进行参数优化,随时优化pi参数以取得设定直流无刷电机转速。 PSO优化PID,用于BLDC速度控制 仿真平台为:MATLAB 采用的是Simulinkm程序相配合 仿真结果以及程序示例:

通过NFS 实现windows共享linux目录

一、配置WIndows 1.进入程序和功能 2.勾选NFS服务,安装客户端 二、安装NFS Service 在ubuntu 1.查看apt源是否存在nfs服务端安装包 sudo apt-cache madison nfs-kernel-server 2. 安装nfs-kernel-server sudo apt install nfs-kernel-server 3.建立共享目录&…

15.WEB渗透测试--Kali Linux(三)

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于: 易锦网校会员专享课 上一个内容:14.WEB渗透测试--Kali Linux(二)-CSDN博客 Kali工具使用 3389远…

ArrayList 和 LinkedList 有什么区别?

1、典型回答 ArrayList 和 LinkedList 是 Java 中常用的集合类,它们都实现了 List 接口,如下图所示: 但二者有以下几点不同: 1、底层数据结构实现不同: ArrayList 底层使用数组实现,它通过一个可调整大小…

程序员注意“进厂”时机!!鸿蒙生态已进入第二发展阶段

自打今年1月份鸿蒙宣布星河版发布后,已经有200家大型互联网企业展开鸿蒙原生合作。就在今天的3月14日,继钉钉、高德、淘宝、UC浏览器、夸克等app应用启动鸿蒙原生开发后。又迎来阿里旗下多款应用与华为举行鸿蒙合作签约仪式,宣布将基于Harmon…

如何更简捷地在 Java 中进行函数式编程

public static void findNemo(List names) { boolean found false; for(String name : names) { if(name.equals(“Nemo”)) { found true; break; } } if(found) System.out.println(“Found Nemo”); else System.out.println(“Sorry, Nemo not found”); } …

【文献阅读】A Fourier-based Framework for Domain Generalization(基于傅立叶的领域泛化框架)

原文地址:https://arxiv.org/abs/2105.11120 摘要 现代深度神经网络在测试数据和训练数据的不同分布下进行评估时,存在性能下降的问题。领域泛化旨在通过从多个源领域学习可转移的知识,从而泛化到未知的目标领域,从而解决这一问…

“禁止互撕”新规第二天,热搜把#章子怡“怒怼”网友#推上了榜一

3月12日,微博热搜发布公告,对热搜词条处置规则进行了更新。 针对热搜词条长期以来存在的引战互撕、挑唆对立等不良现象,热搜生态秩序亟待改善,微博给出了两大解决方案: 一是更新热搜词条处置规则,当热搜词…

吴恩达机器学习笔记 二十 机器学习开发过程 增加数据

选择结构(模型、数据等)-->训练模型-->诊断(偏差、方差、误差分析) 增加数据 1.增加全新的 x、y 2.数据增强(data augumentation) 3.数据合成(data synthesis) 目前算法和模型已经比较完善了,可以考虑专注设…

mac系统下GCC优化编译的使用

mac系统下GCC优化编译的使用 编译流程 预处理:g -E homework.cpp -o homework.i 编译:g -S homework.i -o homework.s //.s为汇编文件 汇编:g -c homework.s -o homework.o 链接:g homework.o -o homework 优化选项 -O0&#…

陷入“3·15”旋涡的两轮电动车,急需降“火”

正值备受关注的“315”国际消费者权益日,此前陷入“火灾风波”的两轮电动车,又一次回到舆论中心。 最近,市场监管总局发布电动自行车消费提示,目的是帮助消费者科学购买和使用相关产品,防范可能发生的安全风险。其中提…

【深度学习】diffusers 学习过程记录,StableDiffusion扩散原理

教程地址:https://huggingface.co/docs/diffusers/quicktour 文章目录 环境扩散模型噪声残差的作用原理,文字编码如何给入Unetschedulerguidance_scalescheduler.init_noise_sigma训练时候的反向传播 环境 python3.10安装环境: pip install…

影城管理系统|基于springboot框架+ Mysql+Java+B/S架构的影城管理系统设计与实现(可运行源码+数据库+设计文档+部署说明)

推荐阅读100套最新项目 最新ssmjava项目文档视频演示可运行源码分享 最新jspjava项目文档视频演示可运行源码分享 最新Spring Boot项目文档视频演示可运行源码分享 目录 前台功能效果图 管理员功能登录前台功能效果图 系统功能设计 数据库E-R图设计 lunwen参考 摘要 研究…

基于Spring Boot的社区团购系统,计算机毕业设计(带源码+论文)

源码获取地址: 码呢-一个专注于技术分享的博客平台一个专注于技术分享的博客平台,大家以共同学习,乐于分享,拥抱开源的价值观进行学习交流http://www.xmbiao.cn/resource-details/1767743385296252930

搭建项目前端系统基础架构

Vue是什么 Vue 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。目前市面上有很多基于Vue重新封装的各种前端UI框…