基于超像素的多视觉特征图像分割算法研究
0.引言
背景:
经典聚类算法:Kmeans、FCM
现有问题:
1)现有算法大都是基于单一的视觉特征而设计的,eg:基于颜色特征的分割。
2)没有考虑像素周围的空间信息;分割结果:多噪声,缺乏区域性
3)像素点的数量比较大,算法时间复杂度大;
4)传统的聚类优化算法一般都是使用梯度信息来求解,该优化算法对初始值比较敏感,容易陷入局部最优
梯度信息:在指定方向每单位距离的数值变化
解决思路
1)融合颜色特征和纹理特征——基于多特征的图像分割算法
(导致对多种特征赋予相同的权重)
2)分割空间信息:1.改进目标函数,将空间信息加入到聚类目标函数中。2.首先使用预分割算法获得过分割图像,而后使用聚类算法对过分割图像块进行合并(仅是基于颜色特征,效果不好)
3)进化算法——全局优化算法:多目标空间模糊聚类算法(MSFCA)——法在适应度函数中加入了从图像中提取的非局部空间信息(仅基于颜色特征,利用像素点进行计算,时间复杂度高)
多目标进化颜色和纹理分割算法(MECTS)
优化目标:颜色+纹理
缺点:基于像素点——无法有效去除噪声+时间复杂度高
改进:基于超像素的多视觉特征图像分割算法(SRMFS)
基于超像素的多视觉特征图像分割算法(SRMFS)
1.流程:
1.首先使用 Meanshift 算法将图像划分为多个超像素区域。
2.而后提取每个超像素区域的颜色和纹理特征。分别在颜色空间和纹理空
间中设计两个聚类目标准则,并使用多目标优化算法对其进行并行优化。
3.最终在获得的 Pareto 解集中挑选出最佳分割结果。
该算法分为五部分:
(1)对原始图像进行预分割,获得一组超像素区域;
(2)分别提取超像素区域的颜色特征和纹理特征;
(3)使用多目标进化算法对超像素区域进行聚类,获得一组 Pareto 解集,每一个解代表一种分割结果;
(4)解码每个 Pareto 解,获得整个图像的分割结果;
(5)挑选出最佳分割结果。
2.算法核心
2.1超像素区域
首先对原始图像进行预分割,获得一组超像素区域。
Q1:为什么选择Meanshift算法?(其他算法:分预分割
流程既可以保证图片在局域内的连通性,又能通过减
少像素规模而降低算法的时间复杂度水岭算法、SLIC)
预分割作用:1)保证图片在局域内的连通性,2)通过减少像素规模而降低算法的时间复杂度
注意:Meanshift分割区域太多——结果图像噪声点较多,时间复杂度增大;太少——导致本文分割算法过多地依赖于Meanshift算法的预分割
2.2特征提取
Q2:为什么选取颜色和纹理作为特征提取
A2: 颜色特征和纹理特征已成为图像处理中两个比较重要的特征,并且这两个特征在描述图像信息时具有极大的不相关性,颜色特征可以直观的描述图像的视觉特征,纹理特征可以描述图像局域内的空间特征
2.2.1颜色提取
从 RGB 颜色空间中提取每个像素的颜色特征
2.2.2纹理特征提取
常见提取方法:可分统计方法、几何法、模型法、信号处理法和结构方法
本文选用: Gabor 小波方法
此方法通过对滤波后的图像进行非线性操作和能量计算来得到特征图像,并用建立的特征矢量做分类。可以对每个像素提取 5 维纹理特征。
2.3 多目标进化算法(RM-MEDA)
2.3.1 染色体编码
首先需要将解编码成染色体形式;
目标:将预分割获得的超像素区域聚类成具有特定意义区域的形式。
编码形式:基于 实数-标签
2.3.2 目标函数
Jmse 指标
首先对染色体解码,并计算每个类的类中心;接下来再分别计算颜色空间中的隶属度矩阵和和纹理空间的隶属度矩阵。
2.3.3 进化算子
本文算法使用的是 RM-MEDA 算法作为进化多目标优化器。该算法使用建模和采样来产生新的种群。
通过建模和采样,可获得子代种群,然后使用非支配排序和拥挤距离选择popsize(种群规模)个染色体作为第g+1代种群pop(g+1);
2.4 输出最佳分割图像
从 Pareto 集中挑选出最优解,根据所得标签值进行聚类,对于所有标签为 j 的区域合并成若干个完整的区域,输出最终分割后的图像,由于最终获得的分割图像数量比较少,手工挑选出最好的分割图像。
3.实验结果
实验对象:
1)颜色相近但纹理特征不同;
2)纹理特征相近,但颜色不同 ;
3)目标物体内部与边缘颜色不同,但具有相同的纹理。
对比算法:
1)基于颜色的FCM
2)基于纹理的FCM
3)结合颜色和纹理的FCM
4)增加空间信息的AFCM_S1
5)Meanshift算法
6)基于像素点的多目标颜色纹理融合算法MECTS
量化分析
1)分割精度 Segmentation Accuracy
2)兰德指数 Rand Index
ps:取值范围[0,1] 正相关
优点
1)有效地对颜色和纹理特征进行结合
2)分割对象是区域而不是像素点,可以极大地降低算法的时间复杂度
展望
1)如何融合三种以上特征
2)如何自动的选择最佳分割结果
相关文章:
基于超像素的多视觉特征图像分割算法研究
0.引言 背景: 经典聚类算法:Kmeans、FCM 现有问题: 1)现有算法大都是基于单一的视觉特征而设计的,eg:基于颜色特征的分割。 2)没有考虑像素周围的空间信息;分割结果:多噪…...
mysql的三大日志
摘自https://blog.csdn.net/chuige2013/article/details/123027580 一. 初步认识 binlog二进制日志 redolog undolog 二. binlog binlog记录写入行操作 作用 1)、主从复制:在Master端开启binlog,然后将binlog发送到各个Slave端,S…...
API接口及社区电子商务化的解释
API是应用程序的开发接口,在开发程序的时候,我们有些功能可能不需要从到到位去研发,我们可以拿现有的开发出来的功能模块来使用,而这个功能模块,就叫做库(libary)。比如说:要实现数据传输的安全,…...
[蓝帽杯 2021]One Pointer PHP
知识点:php 数组整型溢出,open_basedir 绕过分析 利用数组整型溢出绕过,因为PHP 会对溢出的数字处理为 float 类型。 <?php include "user.php"; if($userunserialize($_COOKIE["data"])){$count[$user->count]…...
【JAVA】xxl-job服务搭建
xxl-job服务搭建 1.下载xxl-job项目 https://github.com/xuxueli/xxl-job 2.数据库表创建 3.修改配置 注意:这是两个项目,一个是xxl-job前台,一个是xxl-job执行器,找到这两个项目得配置文件,修改配置。 配置文件地址…...
毕业设计 基于STM32单片机生理监控心率脉搏TFT彩屏波形曲线设计
基于STM32单片机生理监控心率脉搏TFT彩屏波形曲线设计1、项目简介1.1 系统构成1.2 系统功能2、部分电路设计2.1 STM32F103C8T6核心系统电路设计2.2心率检测电路设计2.3 TFT2.4寸彩屏电路设计3、部分代码展示3.1 ADC初始化3.2 获取ADC采样值3.3 LCD引脚初始化3.3 在LCD指定位置显…...
【10k~30k的区别】=== 功能测试、自动化测试、性能测试的区别
按测试执行的类型来分:功能测试、自动化测试、性能测试 1.功能测试 功能测试俗称点点点测试。初级测试人员的主要测试任务就是执行测试工程师所写的测试用 例,记录用例的执行状态及bug情况。与开发人员进行交互直到bug被修复。 功能测试理论…...
《MySQL学习》 索引失效的三种特殊情况
一.条件字段使用函数 explain select * from bpm_proc_instance bpi where CREATED_AT > 2022-06-01 CREATED_AT 字段建立了索引,此时explain分析的结果表明能使用到索引 但如果我们对 CREATED_AT 字段使用函数 explain select * from bpm_proc_instance bpi w…...
wafw00f 防火墙探测
kali机器自带防火墙探测工具wafw00,它可以通过发送正常以及不正常甚至包含恶意代码的HTTP请求,来探测网站是否存在防火墙,并识别防火墙的厂商及类型。安装:git clone https://github.com/EnableSecurity/wafw00f.git python setup…...
MySQL学习(1)[参考书籍:mysql是怎么运行的]
目录 一、mysql设计模式和技术 二、mysql服务器和客户端 启动mysql服务 启动mysql客户端程序 三、mysql存储引擎 四、mysql配置 五、mysql系统变量 六、mysql字符集 编码和解码: 常见字符集(五种): 相关概念࿱…...
用Python制作邮件检测器
github地址: https://github.com/CaLlMeErIC/MailDetective 因为需求需要写一个简单的邮件检测系统的框架,这里记录下思路 首先第一反应,这个检测系统不应该是各个邮件收件系统都有自带的吗,于是搜索了下是否有相关的邮件检测开源软件&#…...
K8S---pod基础概念
目录 一、资源限制 二、Pod 的两种使用方式 三、Pod 资源共享 四、底层容器Pause 1、Pause共享资源 1.1 网络 1.2 存储 1.3 小结 2、Pause主要功能 3、Pod 与 Pause 结构的设计初衷 五、Pod容器的分类 1、基础容器(infrastructure container)…...
激活函数入门学习
本篇文章从外行工科的角度尽量详细剖析激活函数,希望不吝指教! 学习过程如下,先知道这个东西是什么,有什么用处,以及怎么使用它: 1. 为什么使用激活函数 2. 激活函数总类及优缺点 3. 如何选择激活函数 …...
小文智能结合ChatGPT的产业未来
最近几个月,由人工智能实验室OpenAI发布的对话式大型语言模型ChatGPT在国内外各大平台掀起了一阵AI狂潮。短短几天时间,其用户量就突破了百万大关,注册用户之多一度导致服务器爆满。 继AI画图之后,ChatGPT成为了新的顶流…...
Linux-编写一个自己的命令
前言(1)在Linux中,我们对文件路径进行操作都需要输入命令。那么,有人可能就会有疑惑了,命令是什么东西?我们是否也可以创造出自己的命令呢?答案是可以的。命令本身其实就是可执行文件。但是与普…...
Nacos架构篇 - Distro协议
Distro 它是 Nacos 社区自研的一种 AP 分布式协议(也是最终一致性协议)。它面向临时实例,保证了在某些 Nacos 节点宕机后,整个临时实例处理系统依旧可以正常工作。作为一种有状态的中间件应用的内嵌协议,Distro 保证了…...
和月薪3W的聊过后,才知道自己一直在打杂...
前几天和一个朋友聊面试,他说上个月同时拿到了腾讯和阿里的offer,最后选择了阿里。 我了解了下他的面试过程,就一点,不管是阿里还是腾讯的面试,这个级别的程序员,都会考察项目管理能力,并且权重…...
关于Ubuntu18.04 root账户登录的问题
关于Ubuntu18.04 root账户登录的问题一、 Ubuntu 18.04添加root用户登录1. 设置root用户2. 修改/root/.profile3. 修改/etc/pam.d目录下的gdm-autologin和gdm-password4. 修改50-ubuntu.conf5. 登录root账户二、Ubuntu18.04不能远程使用root账户登录的问题1. 修改sshd_config2.…...
基于jeecgboot的flowable的H5版本在演示系统发布
目前在NBCIO 亿事达企业管理平台上发布了H5的在线演示系统,欢迎大家批评指正。 在nbcio-vue nbcio-vue: NBCIO 亿事达企业管理平台前端代码,基于ant-design-vue-jeecg的前端版本: 3.0.0代码和和flowable6.7.2,初步完成了集流程设…...
【代码训练营】day44 | 完全背包理论 518. 零钱兑换 II 377. 组合总和 Ⅳ
所用代码 java 完全背包 01背包物品只能使用一次 – 倒序遍历 for(i 0; i < weight.length; i){ 物品for (j bagWeight; j > weight[i]; j--){ 背包dp[j] max(dp[j], dp[j-weight[i]] value[i])} }完全背包物品可以使用无限次 – 正序遍历 for(i 0; i < weigh…...
ICA简介:独立成分分析
1. 简介 您是否曾经遇到过这样一种情况:您试图分析一个复杂且高度相关的数据集,却对信息量感到不知所措?这就是独立成分分析 (ICA) 的用武之地。ICA 是数据分析领域的一项强大技术,可让您分离和识别多元数据集中的底层独立来源。 …...
②【Java 组】蓝桥杯省赛真题解析 [振兴中华] [三部排序] 持续更新中...
个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ 蓝桥杯真题--持续更新中...一、振兴中华二、三…...
PostgreSql 视图
一、概述 视图(View)本质上是一个存储在数据库中的查询语句。视图本身不包含数据,也被称为虚拟表。 我们在创建视图时给它指定了一个名称,然后可以像表一样对其进行查询。 优势: 不保存数据,节省空间。减少…...
【PAT甲级题解记录】1150 Travelling Salesman Problem (25 分)
【PAT甲级题解记录】1150 Travelling Salesman Problem (25 分) 前言 Problem:1150 Travelling Salesman Problem (25 分) Tags:模拟 图的遍历 旅行商问题 Difficulty:剧情模式 想流点汗 想流点血 死而无憾 Address:1150 Travell…...
vue生命周期
vue生命周期是什么?Vue生命周期是指vue实例对象从创建之初到销毁的过程,vue所有功能的实现都是围绕其生命周期进行的,在生命周期的不同阶段调用对应的钩子函数可以实现组件数据管理和DOM渲染两大重要功能。我们来看一下官网给的vue生命周期的…...
排查解决Java进程占用内存过高
排查解决Java进程占用内存过高1 在项目部署运行之前1 检查JVM参数设置2 检查代码逻辑3 使用内存分析工具4 检查线程5 调整应用程序的设计7 调整硬件资源2 在项目部署运行之后1 在项目部署运行之前 1 检查JVM参数设置 检查JVM的启动参数设置,包括-Xmx和-Xms参数&am…...
一个基于 LKM 的 Linux 内核级 rootkit 的实现
博客已迁移至:https://gls.show/ GitHub链接 演示Slides overview rootkit是一种恶意软件,攻击者可以在获得 root 或管理员权限后安装它,从而隐藏入侵并保持root权限访问。rootkit可以是用户级的,也可以是内核级的。关于rootk…...
CAN工具 - ValueCAN - 基础介绍(续)
VSpy3(Vehicle Spy 3的简写),作为一个常用的车载总线仿真工具,在车载网络领域也是有非常大的市场,前面也简单介绍过一些简单的功能,今天就再次介绍一些。什么是VSpy3?VSpy3是美国英特佩斯公司下…...
一个Laravel+vue免费开源的基于RABC控制的博客系统
项目介绍 CCENOTE 是一个使用 Vue3 Laravel8 开发的前后端分离的基于RABC权限控制管理的内容管理系统,由于作者本人比较喜欢写作的原因,因此开发了这个项目,后端使用的PHP的Laravel框架,并且整理了数据层与业务层,相…...
从 B 站出发,用 Chrome devTools performance 分析页面如何渲染
页面是如何渲染的?通常会得到“解析 HTML、css 合成 Render Tree,就可以渲染了”的回答。但是具体都做了些什么,却很少有人细说,我们今天就从 Chrome 的性能工具开始,具体看看一个页面是如何进行渲染的,以及…...
wordpress评论区插件/新闻发布稿
一报告导读本文报告介绍了深度学习在物体检测方面的最新进展,以及研究团队最近的几项研究工作,同时对深度学习在检测问题上的瓶颈和下一步突破进行了展望。二专家介绍张兆翔,中国科学院自动化研究所研究员,国家"万人计划&quo…...
模板网站不可以做seo优化吗/上海seo优化培训机构
回到系列文章的目录——[系列文章目录] 回到本章目录——[第1章目录]1.2 让程序“跑”起来把程序写在纸上,有思考,有实践,这种方式可以有。 把程序输入到计算机,让计算机“跑”程序,这种方式最直观。这也是让程序…...
哪里网站建设好/个人网站制作
centos7 x64系统 集成 mysqljdkmavengitredis1 下载jdk8https://download.csdn.net/download/qq_25958497/10656949 2 放到liunx服务器/home/java-software 目录下 3 解压jdk jdk-8u171-linux-x64.tar.gz是当前文件 -C是指定解压目录tar zxvf jdk-8u171-linux-x64.tar.gz -C /…...
色一把做最好的看片网站/市场推广计划书
了解RDS的概念 这也是第一条,也是最重要的一条,在使用某项产品和服务之前,首先要了解该产品或服务的功能与限制,就像你买一个冰箱或洗衣机,通常也只有在阅读完说明书之后才能利用起来它们的所以功能,以及使…...
临海建设局网站导航/星巴克营销策划方案
导读: 对于程序员来说,每个人拥有一两个服务器进行学习是很有必要的,弹性云服务器(Elastic Cloud Server)是一种可随时自助获取、可弹性伸缩的云服务器,可帮助您打造可靠、安全、灵活、高效的应用环境,确保服务持久稳定…...