SLIC超像素(superpixel)算法

超像素(superpixel)——SLIC和深度学习法 用简单的语言描述超像素的形成原理,提供传统法SLIC和深度学习法学习超像素的具体数学过程和核心代码 阅读详情

转载自:http://blog.youkuaiyun.com/u014568921/article/details/44588207

SLIC算法是simple linear iterative cluster的简称,该算法用来生成超像素(superpixel)。


基本思想

算法大致思想是这样的,将图像从RGB颜色空间转换到CIE-Lab颜色空间,对应每个像素的(L,a,b)颜色值和(x,y)坐标组成一个5维向量V[L,a,b,x,y],两个像素的相似性即可由它们的向量距离来度量,距离越大,相似性越小。

算法首先生成K个种子点,然后在每个种子点的周围空间里搜索距离该种子点最近的若干像素,将他们归为与该种子点一类,直到所有像素点都归类完毕。然后计算这K个超像素里所有像素点的平均向量值,重新得到K个聚类中心,然后再以这K个中心去搜索其周围与其最为相似的若干像素,所有像素都归类完后重新得到K个超像素,更新聚类中心,再次迭代,如此反复直到收敛。怎么样,是不是感觉很像K-means聚类算法。

该算法接受一个参数K,用于指定生成的超像素数目。设原图有N个像素,则分割后每块超像素大致有N/K个像素,每块超像素的边长大致为S=[N/K]^0.5,开始我们每隔S个像素取一个聚类中心,然后以这个聚类中心的周围2S*2S为其搜索空间,与其最为相似的若干点即在此空间中搜寻。这里有一个问题,为了避免所选的聚类中心是边缘和噪声这样的不合理点,算法做了改进, 在3*3的窗口中将聚类中心移动到梯度最小的区域,梯度定义为

                                                    G(x,y)=[V(x+1,y)-V(x-1,y)]^2+[V(x,y+1)-V(x,y-1)]^2

这样就可以避免上面所说的情况。

因为L,a,b在CIE-Lab颜色空间,L,a,b的大小有限制,而图像尺寸则没有限制,如果图片的尺寸比较大,会造成衡量向量距离时空间距离(x,y)的影响过大,所以需要调制空间距离(x,y)的影响,所以需要对x,y进行normalize。改进向量距离的度量如下:

                                                   d_lab=[(Lk-Li)^2+(ak-ai)^2+(bk-bi)^2]^0.5

                                                   d_xy=[(Xi-Xk)^2+(Yk-Yi)^2]^0.5

                                                   Ds=d_lab+(m/S)*d_xy

m用来调整d_xy的权值,一般为1-20,在算法中设置为10。

最后可能出现一些小的区域d被标记为归属某一块超像素但却与这块超像素没有连接,这就需要把这块小区域d重新归类为与这块小区域d连接的最大的超像素中去,以保证每块超像素的完整。

算法流程



来看看效果吧:



SLIC算法介绍 L:亮度。值域为0(黑)~100(白)a:从洋红色至绿色的范围。(a为负数指代绿色,a为正数指代品红色)b:从黄色至蓝色的范围。(b为负数指代蓝色,b为正数指代黄色)💛LAB彩色模型的最大优点:弥补了RGB彩色模型中色彩不均匀的缺点。因为RGB模型在蓝色到绿色之间的过渡色彩过多,而绿色到红色之间又缺少黄色和其他颜色。故,选择LAB色彩模型,可以保留尽量宽阔的色域和颜色。1)不像RGB和CMYK色彩空间,Lab 颜色被设计来接近人类生理视觉。它致力于感知均匀性,它的 L 分量密切匹配人类亮度感知。 阅读详情

相关推荐

SLIC超像素分割详解(一):简介

SLIC超像素分割详解(一) 超像素概念是2003年Xiaofeng Ren提出和发展起来的图像分割技术,是指具有相似纹理、颜色、亮度等特征的相邻像素构成的有一定视觉意义的不规则像素块。它利用像素之间特征的相似性将像素分组,用少量的超像素代替大量的像素来表达图片特征,很大程度上降低了图像后处理的复杂度,所以通常作为分割算法的预处理步骤。已经广泛用于图像分割、姿势估计、目标跟踪、目标识别等计算机视

计算机视觉life 12万+

超像素(Superpixel)理解

最近看点云处理的文章,有些文章中提到了superpixel这个概念,查了一些资料,对其理解记录如下: 超像素就是把一幅原本是像素级(pixel-level)的图,划分成区域级(district-level)的图。可以将其看做是对基本信息进行的抽象。 超像素分割属于图像分割(image segmentation),再细化应该属于过分割(over segmentation)。 比如我们对一幅图像进行超像

Linear_Luo的专栏 3万+

opencv——superpixel算法——SLIC,SEEDS,LSC

整理资料不容易,版权所,转载请标明出处,谢谢!!opencv关于超像素生成,目前没有发现网上有代码,这里为了方便大家使用超像素,我整理了一下opencv生成超像素的方法,希望对大家有帮助。这里主要介绍使用opencv生成superpixel,主要介绍的算法为SLIC,SEEDS,LSC。但是目前superpixel生成算法在OpenCV 3.1.0的Release版本中并不存在,因为他们是存放在op

莫谈天下 2万+

OpenCV 生成超像素 SLIC superpixel算法原理

OpenCV 生成超像素 SLIC superpixel算法原理 基本思想 算法大致思想是这样的,将图像从RGB颜色空间转换到CIE-Lab颜色空间,对应每个像素的(L,a,b)颜色值和(x,y)坐标组成一个5维向量V[l, a, b, x, y],两个像素的相似性即可由它们的向量距离来度量,距离越大,相似性越小。 算法首先生成K个种子点,然后在每个种子点的周围空间里搜索距离该种子点最近的若干像...

OpenCV 图像辨识的博客 1642

Android14 RK3576开发板有线网卡静态IP配置全攻略(附数据库修改详解)

本文详细介绍了在Android 14 RK3576开发板上实现有线网卡出厂默认静态IP配置的完整方案。通过深入修改系统源码和SettingsProvider数据库,扩展全局设置字段并注入默认值,确保设备首次启动即自动应用预设的IP地址、子网掩码、网关和DNS,适用于工业控制、数字标牌等批量部署场景,有效提升生产效率。

weixin_29253711的博客 606

科研党福音:如何用Zotero+Paper Agent打造你的AI论文速递系统(附详细配置教程)

本文为科研工作者提供了一套利用Zotero和开源工具Paper Agent构建自动化AI论文速递系统的详细教程。该系统能基于用户在Zotero中的文献库智能学习研究兴趣,每日自动从arXiv等平台筛选、下载并深度解读最相关的前沿论文,生成个性化日报,实现从被动接收到主动精准获取的知识工作流重塑。

kite3的博客 514

SLIC算法 超像素 superpixel

SLIC算法是simple linear iterative cluster的简称,该算法用来生成超像素(superpixel)。 算法大致思想是这样的,将图像从RGB颜色空间转换到CIE-Lab颜色空间,对应每个像素的(L,a,b)颜色值和(x,y)坐标组成一个5维向量V[L,a,b,x,y],两个像素的相似性即可由它们的向量距离来度量,距离越大,相似性越小。算法首先生成K个种子点,然后在

西湖有大葱的专栏 2489

半导体设备上位机开发:我的经验与新人指导

半导体设备上位机开发是一项复杂而富有挑战性的工作,需要扎实的技术基础和丰富的经验。如果你对半导体设备上位机开发感兴趣,欢迎随时与我交流,我会尽力帮助你!

qq_43518667的博客 2728

SLIC与目前最优超像素算法的比较 SLIC Superpixels Compared to State-of-the-art Superpixel Methods

SLIC与目前最优超像素算法的比较Radhakrishna Achanta, Appu Shaji, Kevin Smith, Aurelien Lucchi, Pascal Fua, and Sabine S¨usstrunk

_者行孙的博客 3万+

手把手调试:如何为高通Hypervisor上的GuestOS添加一个自定义的HAB服务通道

本文详细介绍了如何在高通Hypervisor环境下为GuestOS添加自定义HAB服务通道的全过程。从HAB通信框架的核心概念解析到设备树节点的动态注入机制,再到物理通道的内核层实现和用户层测试,提供了完整的开发案例和调试技巧,帮助开发者高效构建定制化通信服务。

weixin_27066963的博客 371

Dify-前端本地运行-单点登录

本文介绍了如何在已部署Dify的系统中实现AI应用跳转及页面定制化改造。通过iframe跳转无法满足甲方需求后,作者对Dify前端源码进行了本地化二次开发,主要步骤包括:1) 按照官方文档搭建本地开发环境;2) 修改.env配置文件连接部署好的后端服务;3) 隐藏侧边栏和头部导航栏;4) 实现单点登录功能,通过URL参数获取用户邮箱自动登录。过程中解决了请求拦截导致的登录校验问题,最终达成仅保留对话框界面并同步用户信息的需求。该方案涉及Next.js框架和React技术的应用,为类似定制化需求提供了参

weixin_43163457的博客 3224

SLIC与目前最优超像素算法的比较 SLIC Superpixels Compared to State-of-the-art Superpixel Methods

SLIC与目前最优超像素算法的比较 Radhakrishna Achanta, Appu Shaji, Kevin Smith, Aurelien Lucchi, Pascal Fua, and Sabine S¨usstrunk 摘要 近年来,计算机视觉应用越来越依赖超像素,但并不总是清楚什么是良好的超像素算法。为了解现有方法的优点和缺点,我们比较了目前最好的五种超像素算法,比较的指标为图...

战斗蜗牛的专栏 2396

用5毫欧采样电阻实现高精度电流检测?数字可调电源控制板的硬件设计陷阱

本文深入探讨了在数字可调电源控制板设计中,如何利用5毫欧采样电阻实现高精度电流检测。从微小信号放大电路设计、采样电阻布局与热管理,到电源切换与电池管理电路优化,提供了全面的硬件设计解决方案和实用技巧,帮助工程师规避常见设计陷阱,提升系统性能。

wdx0123456的博客 1029

superpixel超像素分割:SLIC (K-means聚类算法的一个应用)

论文:SLIC Superpixels Compared to State-of-the-art Superpixel Methods(PAMI 2012) SLIC全称:simple linear iterative cluster 基本思想 将图像由RGB转换到Lab颜色空间(为什么用Lab而不是RGB,作者给出的原因是CIELAB color space is widely consi...

u013593585的专栏 1万+

YOLOv8改进 | 注意力篇 | YOLOv8引入EMAttention(EMA)注意力

具体来说,除了对全局信息进行编码以重新校准每个并行分支中的通道权重之外,还通过跨维度交互来进一步聚合两个并行分支的输出特征,以捕获像素级的成对关系。3. 跨空间学习:除了在每个并行子网络中建立局部的跨通道交互外,EMA模块还通过跨空间学习方法融合了两个并行子网络的输出特征图。到此本文的正式分享内容就结束了,在这里给大家推荐我的YOLOv8改进有效涨点专栏,后期我会根据各种最新的前沿顶会进行论文复现,也会对一些老的改进机制进行补充,如果大家觉得本文帮助到你了,订阅本专栏,关注后续更多的更新~

tsg6698的博客 895

Python爬虫实战:采集行业协会、研究机构等平台的政策文件列表与PDF链接批量收集系统,支持自动下载、分类归档和数据库管理(SQLite持久化存储)!

我长期专注 Python 爬虫工程化实战,主理专栏 👉 《Python爬虫实战》:从采集策略到反爬对抗,从数据清洗到分布式调度,持续输出可复用的方法论与可落地案例。内容主打一个“能跑、能用、能扩展”,让数据价值真正做到——抓得到、洗得净、用得上。

喵手的博客 640

跑superpixel的程序

知乎上对superpixel的讲解还不错:https://www.zhihu.com/question/27623988 superpixel的算法有很多,opencv中也包含了很多,我找了一个比较经典的:SLIC 这是跑的github上的一个superpixel的例子:https://github.com/np-csu/SLIC-superpixel-with-OpenCV\ mkdir ...

weixin_30263073的博客 131

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

超像素分割(Superpixel Segmentation)发展

转自:http://blog.youkuaiyun.com/anshan1984/article/details/8918167 最近实验需要用到超像素的一些算法,之前也有看过一下分水岭这个老算法,想着找找近年来的新算法,跟上时代的步伐。。然后找到这个。。虽然截至13年,但也是至今为止影响力较大的一些算法了,这两年的许多文章是基于这些算法改进的。感谢大神整理~ 超像素分割(Superpixel S

Terry的专栏 1万+

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

超像素分割opencv实现_OpenCV图像处理实例:使用vlfeat的SLIC Superpixel实现图像分割...

SLIC Superpixel算法可以参考:https://www.cnblogs.com/supersponge/p/6546082.html#include #include extern "C" {#include "vlfeat/generic.h"#include "vlfeat/slic.h"}int main() {//读取图像cv::Mat mat = cv::imread(".....

weixin_36352415的博客 321

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

SLIC superpixel算法——图像聚类算法

opencv中的kmeans没有考虑x、y,只考虑了颜色信息。 SLIC算法是simple linear iterative cluster的简称,该算法用来生成超像素(superpixel)。 基本思想 算法大致思想是这样的,将图像从RGB颜色空间转换到CIE-Lab颜色空间,对应每个像素的(L,a,b)颜色值和(x,y)坐标组成一个5维向量V[l, a, b, x, y],两个像素的相似...

Ring__Rain的博客 2219

超像素分割 & SLIC算法 & 使用示例

超像素概念是2003年Xiaofeng Ren提出和发展起来的图像分割技术,是指具有相似纹理、颜色、亮度等特征的相邻像素构成的有一定视觉意义的不规则像素块。它利用像素之间特征的相似性将像素分组,用少量的超像素代替大量的像素来表达图片特征,很大程度上降低了图像后处理的复杂度,所以通常作为分割算法的预处理步骤。在像素网格上按照一定的方式进行像素局部分组,可得到超像素。它已经广泛用于图像分割、姿势估计、目标跟踪、目标识别等计算机视觉应用。使用SLIC的分割示例其中,

m0_61899108的博客 1万+

图像处理: 超像素(superpixels)分割 SLIC算法

简介:最近项目使用到了超像素分割,因此顺道研究了以下SLIC这一算法。超像素分割这类low-level vision问题已经在CVPR,ICCV这种顶级会议上逐渐销声匿迹,越来越流行的learning method渐渐占据了这些顶级会议90%的篇幅。本文讲解的SLIC是2010年提出的一种十分简单的超分辨分割算法,原理简单、便于实现。 一.SLIC(simple linear iter...

haoji007的博客 2万+
上一篇: 颜色空间RGB与HSV(HSL)的转换
下一篇: Images Aesthetic Predictors Based on Weighted CNNs 论文翻译解读
seashell_9
博客等级 码龄12年 6粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值