Machine Vision Technology:Lecture8 Segmentation

Machine Vision Technology:Lecture8 Segmentation

    • the goals of segmentation
    • Inspiration from psychology
    • Segmentation as clustering
    • K-Means for segmentation
    • Mean shift clustering and segmentation均值偏移聚类和分割
    • Segmentation by graph partitioning
    • Segments as primitives for recognition 分段的结果是识别的基元

计算机视觉(本科) 北京邮电大学 鲁鹏


Segmentation分割

在这里插入图片描述

the goals of segmentation

  • Group together similar-looking pixels for efficiency of furtherprocessing将相似的像素组合在一起,以提高进一步处理的效率
    • “Bottom-up” process
    • Unsupervised

超像素superpixels:

在这里插入图片描述

在这里插入图片描述

过分割:把一个完整的物体分割成很多的小块,分割过细。

欠分割:把很大一块分割在一起,本来不属于同一个物体分割在一起,分割过粗。

  • Separate image into coherent “objects” 将图像分割成连贯的“物体”
    • “Bottom-up” or “top-down” process?
    • Supervised or unsupervised?

人的思路:自底向上和自顶向下、无监督和有监督结合。

在这里插入图片描述

Inspiration from psychology

The Gestalt school: Grouping is key to visual perception 格式塔学派:分组是视觉感知的关键

  • Elements in a collection can have properties that result fromrelationships集合中的元素可以具有由关系产生的属性
    • “The whole is greater than the sum of its parts” 整体大于部分的总和。

涌现Emergence:如果一个系统的属性不是其任何基本元素的属性,那么它就是涌现的。涌现是涌现的属性和结构在更高层次组织或复杂性(「多者异也」)上的显现。个体的群集出现一个集体特征而每一个个体却没有。

在这里插入图片描述
在这里插入图片描述

  • Gestalt factors格式塔因素:Gestalt(整体与其各部分的总和不同)

在这里插入图片描述
在这里插入图片描述

These factors make intuitive sense, but are very difficult to translate into algorithms 这些因素有直观的意义,但很难转化为算法

  • Grouping phenomena in real life 现实生活中的分组现象:

在这里插入图片描述

Segmentation as clustering

把分割转换成聚类:认为相似的像素应该属于同一个物体。

在这里插入图片描述

语义分割:只能分割出所有辣椒

实例分割:区分出辣椒A和辣椒B是哪一个。

  • K-means clustering based on intensity or color is essentially vectorquantization of the image attributes基于强度或颜色的K-means聚类本质上是图像属性的矢量量化
    • Clusters don’t have to be spatially coherent 集群不必在空间上是连贯的

在这里插入图片描述

包含位置信息:

在这里插入图片描述

K-Means for segmentation

  • Pros

    • Very simple method
    • Converges to a local minimum of the error function 收敛到误差函数的局部极小值
  • Cons

    • Memory-intensive 内存密集型
    • Need to pick K 需要选择K
    • Sensitive to initialization 对初始化敏感
    • Sensitive to outliers 对异常值敏感
    • Only finds “spherical”clusters 只发现“球形”星团

在这里插入图片描述

Mean shift clustering and segmentation均值偏移聚类和分割

  • An advanced and versatile technique for clustering-based segmentation 基于聚类分割的高级通用技术

在这里插入图片描述

Mean shift algorithm :

  • The mean shift algorithm seeks modes or local maxima of density in the feature space 均值移位算法在特征空间中寻找模式或密度的局部最大值

Image and Feature space (L*u*v* color values) :

在这里插入图片描述

在一个圆形区域内,计算出该区域内像素的重心,把圆心移到重心上(均值漂移)。通过均值漂移,圆心与重心重合即可。

在这里插入图片描述

迭代均值漂移:

在这里插入图片描述

最终圆心和重心重合:

在这里插入图片描述

**Mean shift clustering : **

  • Cluster: all data points in the attraction basin of a mode 聚类:一个模式的吸引盆地中的所有数据点。
  • Attraction basin: the region for which all trajectories lead to the same mode 吸引盆地:所有轨迹都通向同一模式的区域。

在这里插入图片描述

Mean shift clustering/segmentation :

  • Find features (color, gradients, texture, etc) 寻找特征(颜色,渐变,纹理等)
  • Initialize windows at individual feature points 在单个特征点初始化窗口
  • Perform mean shift for each window until convergence 对每个窗口进行均值移位,直到收敛
  • Merge windows that end up near the same “peak” or mode 合并接近相同“峰值”或模式的窗口

1.确定一次的搜索范围
2.随机初始化先锋队找山头
3每个像素寻找属于自己的山头

在这里插入图片描述
在这里插入图片描述

Mean shift segmentation results :

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

Mean shift pros and cons :

  • Pros

    • Does not assume spherical clusters 不假设球状星团
    • Just a single parameter (window size) 只有一个参数(窗口大小)
    • Finds variable number of modes 找到可变数量的模式
    • Robust to outliers 对异常值稳健
  • Cons

    • Output depends on window size 输出取决于窗口大小
    • Computationally expensive 计算成本高:需要大量的计算资源(如时间、内存等)来执行。
    • Does not scale well with dimension of feature space 不能很好地与特征空间的维度成比例

窗口太小会导致局部最优解,进而导致分割过细(过分割)。

Segmentation by graph partitioning

Images as graphs:

节点表示每个像素,每条边由两个节点的亲和度或相似性(affinity or similarity)加权。

在这里插入图片描述

Break Graph into Segments:

  • Delete links that cross between segments 删除段之间交叉的链接。
  • Easiest to break links that have low affinity 最容易断开具有低亲和力的链接
    • similar pixels should be in the same segments 相似的像素应该在相同的段中
    • dissimilar pixels should be in different segments 不同的像素应该在不同的段中

对给定的一张图,寻找一条线进行分割,使这条线上的权重之和最小(相似性最小的那些点被断开)。

在这里插入图片描述
在这里插入图片描述


Measuring affinity: 边的相似性的度量方式

Suppose we represent each pixel by a feature vector x, and define a distance function appropriate for this feature representation 假设我们用一个特征向量x来表示每个像素,并为这个特征表示定义一个距离函数。距离: d i s t ( x i , x j ) dist(x_i, x_j) dist(xi,xj)

Then we can convert the distance between two feature vectors into an affinity with the help of a generalized Gaussian kernel: 然后我们可以利用广义高斯核将两个特征向量之间的距离转化为亲和度:
e x p { − d i s t ( x i , x j ) 2 2 σ 2 } exp \{ {-\frac{dist(x_i,x_j)^2}{2 \sigma^2}} \} exp{2σ2dist(xi,xj)2}
归一化到0和1之间。

Scale affects affinity 规模影响亲和力:

在这里插入图片描述

σ \sigma σ 比较小时,dist稍微大一点,相似性趋于0,也就是很近的点才被分类在一起。

σ \sigma σ 比较大时,dist很大的两个点也可能被分类在一起。

下面三张图分别表示的是关于 σ \sigma σ 越来越大 图像各点相似度的空间分布:每一小格代表一个像素点,相似度越高越亮

在这里插入图片描述


Graph cut:图分割

在这里插入图片描述

  • Set of edges whose removal makes a graph disconnected 一组边的集合,它的移除使图断开
  • Cost of a cut: sum of weights of cut edges 切割的代价:切割边的权值之和
  • A graph cut gives us a segmentation 图分割给了我们一个图像分割。

What is a “good” graph cut and how do we find one? 什么是“好的”图切,我们如何找到一个?

Minimum cut:

最小割:在图论中,去掉其中所有边能使一张网络流图不再连通(即分成两个子图)的边集称为图的割(英语:cut (graph theory))(英语:cut),一张图上最小的割称为最小割(英语:minimum cut或min-cut)。
与最小割相关的问题称最小割问题(英语:minimum cut problem或min-cut problem),其变体包括带边权、有向图、包含源点与汇点(简称有源汇),以及将原网络分为多于两个子图等问题。其中,带边权的最小割问题允许有负权边,可通过对所有边权取相反数简单地转化为最大流问题求解。

We can do segmentation by finding the minimum cut in a graph 我们可以通过在图中找到最小切割来进行分割

在这里插入图片描述

Efficient algorithms exist for doing this:

在这里插入图片描述

Drawback:minimum cut tends to cut off very small, isolated components 最小割倾向于切断非常小的,孤立的组件

在这里插入图片描述

Normalized cut:归一化割

This can be fixed by normalizing the cut by the weight of all the edges incident to the segment 这可以通过将所有关联到该段的边的权重归一化切割来解决

The normalized cut cost is:
w ( A , B ) w ( A , V ) + w ( A , B ) w ( B , V ) \frac{w(A,B)}{w(A,V)} + \frac{w(A,B)}{w(B,V)} w(A,V)w(A,B)+w(B,V)w(A,B)
其中: w ( A , B ) w(A,B) w(A,B) 为A和B之间所有边的权值之和。

把一个集合V切割成两个集合A和B,要求切割掉的边的权重之和最小,但是这样很容易得到A为一个点,B为其余点的情况,所以才提出了这样的一个cost:避免孤立点的分割,避免把A切成一个像素B切成一个整体或者相反的情况。

当把A切成一个像素, w ( A , V ) w(A,V) w(A,V) 会很小, w ( A , B ) w ( A , V ) \frac{w(A,B)}{w(A,V)} w(A,V)w(A,B) 会很大。

  • Let W be the adjacency matrix of the graph 设W为图的邻接矩阵。

  • Let D be the diagonal matrix with diagonal entries D(i, i) = Σj W(i, j) 设D为对角矩阵,其对角项为 D ( i , i ) = ∑ j W ( i , j ) D(i,i) = \sum_j{W(i,j)} D(i,i)=jW(i,j)

  • Then the normalized cut cost can be written as 则归一化切割代价可以写成:
    y T ( D − W ) y y T D y \frac{y^T (D-W)y}{y^T D y} yTDyyT(DW)y
    其中y为指示向量(indicator vector),如果第i个特征点属于A,则y在第i个位置的值为1,否则为负常数(negative constant)。

  • Finding the exact minimum of the normalized cut cost is NP-complete, but if we relax y to take on arbitrary values, then we can minimize the relaxed cost by solving the generalized eigenvalue problem (D - W)y = λDy 找到归一化切割代价的确切最小值是NP-complete的,但如果我们将y松弛为任意值,那么我们可以通过求解广义特征值问题 ( D − W ) y = λ D y (D-W)y = \lambda D y (DW)y=λDy (对上面cost利用拉格朗日乘子法 y T ( D − W ) y − λ × y T D y y^T (D-W)y - \lambda \times y^T D y yT(DW)yλ×yTDy 求导得到)来最小化松弛代价。

  • The solution y is given by the generalized eigenvector corresponding to the second smallest eigenvalue 解得的y由对应于第二小特征值的广义特征向量给出。

  • Intutitively, the i-th entry of y can be viewed as a “soft” indication of the component membership of the i-th feature直观地说,y的第i项可以看作是第i个特征的分量隶属度的“软”指示? 得到的向量y可能不是整数,可以通过threshold调整为整数。

Normalized cut algorithm :

  • 1.Represent the image as a weighted graph G = (V,E), compute the weight of each edge, and summarize the information in D and W 将图像表示为加权图G = (V,E),计算每条边的权值,总结D和W中的信息
  • 2.Solve (D - W)y = λDy for the eigenvector with the second smallest eigenvalue 求解 ( D − W ) y = λ D y (D-W)y = \lambda D y (DW)y=λDy,求特征值第二小的特征向量。
  • 3.Use the entries of the eigenvector to bipartition the graph 使用特征向量的项对图进行二分

To find more than two clusters: 找到两个以上的簇:

  • Recursively bipartition the graph
  • Run k-means clustering on values ofseveral eigenvectors对几个特征向量的值运行k-means聚类

每个特征向量都是一种分法,聚类算法可以将距离较近的特征向量做为一类

Example result:

在这里插入图片描述

Normalized cuts: Pro and con

  • Pros

    • Generic framework, can be used with many different features and affinity formulations通用框架,可用于许多不同的特性和亲和性公式。
  • Cons

    • High storage requirement and time complexity 存储要求高,时间复杂度高
    • Bias towards partitioning into equal segments 倾向于划分为相等的段

Segments as primitives for recognition 分段的结果是识别的基元

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

一下想要邮寄很多快递,该怎么邮寄呢?

我们都知道淘宝网上开店的经常会邮寄很多快递,但是这么多快递不可能一下子拿到快递驿站去邮寄吧,但是快递员又不上门取件可怎么办呀,这可真是让人伤透了脑筋了, 我们都知道我们所在的区域一般都会有快递员来承揽我们所在区域的快递…

Penpad的Season 2 规则解读,其生态资产 $PDD LaunchPad 在即

Penpad 是 Scroll 上的 LauncPad 平台,该平台继承了 Scroll 底层的技术优势,并基于零知识证明技术,推出了系列功能包括账户抽象化、灵活的挖矿功能,并将在未来实现合规为 RWA 等资产登录 Scroll 生态构建基础。该平台被认为是绝大…

SCI一区 | Matlab实现PSO-TCN-BiGRU-Attention粒子群算法优化时间卷积双向门控循环单元融合注意力机制多变量时间序列预测

SCI一区 | Matlab实现PSO-TCN-BiGRU-Attention粒子群算法优化时间卷积双向门控循环单元融合注意力机制多变量时间序列预测 目录 SCI一区 | Matlab实现PSO-TCN-BiGRU-Attention粒子群算法优化时间卷积双向门控循环单元融合注意力机制多变量时间序列预测预测效果基本介绍模型描述…

_nodemon自动重启服务器

文章目录 1.安装模块 nodemon1.1安装方式2.jason文件里面可以存储自定义指令 由于每次修改代码都要重启服务器,所以我们希望有一种方式自动监视代码修改,自动启动服务器nodemon模块解决了这个问题 1.安装模块 nodemon 1.1安装方式 全局安装 npm i node…

企业必备的 Exchange 邮箱管理工具包:STELLAR TOOLKIT FOR EXCHANGE

天津鸿萌科贸发展有限公司是 Stellar 系列软件的授权代理商。 Stellar Toolkit for Exchange 工具包功能特性 将在线和离线EDB转换为PST Stellar Toolkit for Exchange 可以将邮箱从托管 Exchange 和脱机 EDB 导出为 PST 文件格式。该工具允许您根据需要连接单个或多个邮箱。…

CCF202309-2——坐标变换(其二)80分代码及思路

思路,还是暴力求解,直接对每一个操作进行遍历,最后结果保留三位小数,但是不知道为什么直接printf("%.3f",x)进行输出没有分,结果完全对得上,以下是80分提交代码,可能大的测试点没有通…

深度学习新篇章:PyTorch在遥感地物分类的革命性应用

我国高分辨率对地观测系统重大专项已全面启动,高空间、高光谱、高时间分辨率和宽地面覆盖于一体的全球天空地一体化立体对地观测网逐步形成,将成为保障国家安全的基础性和战略性资源。未来10年全球每天获取的观测数据将超过10PB,遥感大数据时…

深度学习语义分割开山鼻祖——FCN网络

FCN网络内容简介 FCN网络是第一个将深度学习应用于语义分割的网络,具有开创新和划时代的意义 FCN网络在2015年效果是非常惊艳的,准确率提高了10%左右,并且推理时间非常快 。下面是网络结构示意图和实验数据。 最后进行放大的预测图有21个通道…

IO网络通信

IO Bio: 同步阻塞,一个线程一次连接,基于字符流/字节流 Nio:同步非阻塞 一个线程多个连接,多个请求注册到多路复用selector上,多路复用器轮训连接 面向缓冲区, 从某通道读取数据到缓存区&…

文献速递:基于SAM的医学图像分割---nnSAM:即插即用的分割任何东西模型 模型提升了nnUNet性能

Title 题目 nnSAM: Plug-and-play Segment Anything Model Improves nnUNet Performance nnSAM:即插即用的分割任何东西模型 模型提升了nnUNet性能 01 文献速递介绍 在现代临床工作流中,医学图像的高效准确分割对于疾病诊断和预后、治疗计划和监控以…

InnoDB 缓存

本文主要聊InnoDB内存结构, 先来看下官网Mysql 8.0 InnoDB架构图 MySQL :: MySQL 8.0 Reference Manual :: 17.4 InnoDB Architecture 如上图所示,InnoDB内存主要包含Buffer Pool, Change Buffer, Log Buffer, Adaptive Hash Index Buffer Pool 其实 buffer pool 就是内存中的…

网络安全协议基本问题

Http和Https协议的端口号: Http:80 Https:443 网络监听: 网络监听是一种监视网络状态、数据流程以及网络上信息传输的工具,它可以将网络界面设定成监听模式,并且可以截获网络上所传输的信息。但是网络监…

Linux:权限的概念与理解

目录 1. Linux权限的概念 2. Linux权限管理 01.文件访问者的分类 02.文件类型和访问权限 03.文件权限值的表示方法 04. 文件访问权限的相关设置方法 3. 使用 sudo分配权限 4. 目录的权限 ---------- 权限 用户角色(具体的人) 文件权限属性 ---------- 1. Linux权限的…

大英赛-选择题 (持续更新中)

解题策略: 十五分钟内写完,单选: ABCD全部单项选择题 考的语法点弄清不懂得话 看《张道真语法》 不会的单词建议下载墨墨背单词 直接把不会的加入到要背的里面 知识点 2019年初赛: 2019年决赛:

QT信号和槽机制connect用法

信号与槽机制是绝对不可或缺且常用的&#xff0c;其中的参数一般都会比较简单&#xff0c;bool、int、QString之类的&#xff0c;但当我们想要传递相对比较复杂的参数&#xff0c;例如QVector<int>、QList<QString>&#xff0c;以及一些我们自定义的结构体时&#…

白酒:蒸馏过程中香味成分的生成机制与调控技术

在豪迈白酒的酿造过程中&#xff0c;蒸馏是关键的步骤之一&#xff0c;它决定了白酒的香味成分和品质。云仓酒庄对蒸馏过程中香味成分的生成机制与调控技术进行了深入研究&#xff0c;以提高产品的风味和品质。 首先&#xff0c;蒸馏过程中香味成分的生成机制是一个复杂的过程。…

第四百一十八回

文章目录 1. 概念介绍2. 思路与方法2.1 实现思路2.2 实现方法 3. 示例代码4. 内容总结 我们在上一章回中介绍了"自定义标题栏"相关的内容&#xff0c;本章回中将介绍自定义Action菜单.闲话休提&#xff0c;让我们一起Talk Flutter吧。 1. 概念介绍 我们在这里提到的…

图和树的路径问题

图 一&#xff1a;用vector存储无向图 数据结构 const int N 100; vector<int> G[N]; void addEdge(int u, int v){// 无向图G[u].push_back(v);G[v].push_back(u); } int m; // 点的个数创建图 void printList(){for (int i 0; i < m;i){cout << i<<…

NFT Insider #124:Aavegotchi 开启新一季稀有度挖矿,德克萨斯州奥斯汀市登陆 The Sandbox

引言&#xff1a;NFT Insider由NFT收藏组织WHALE Members&#xff08;https://twitter.com/WHALEMembers&#xff09;、BeepCrypto &#xff08;https://twitter.com/beep_crypto&#xff09;联合出品&#xff0c;浓缩每周NFT新闻&#xff0c;为大家带来关于NFT最全面、最新鲜、…

基于Gabor滤波器的指纹图像识别,Matlab实现

博主简介&#xff1a; 专注、专一于Matlab图像处理学习、交流&#xff0c;matlab图像代码代做/项目合作可以联系&#xff08;QQ:3249726188&#xff09; 个人主页&#xff1a;Matlab_ImagePro-CSDN博客 原则&#xff1a;代码均由本人编写完成&#xff0c;非中介&#xff0c;提供…