目标分割——基于目标轮廓
来源:互联网 发布:吕宋岛 台风 知乎 编辑:程序博客网 时间:2024/05/22 12:58
目标分割将感兴趣的区域从图像中分离并提取出来,也可看做基元检测的一种推广。两类方法可用于目标分割:
- 基于目标轮廓
考虑目标与图像中 其他部分的界限,如果能确定目标轮廓,就可将目标与图像的其他部分分割开。在这种方法中,除了检测出轮廓点再连接起来,还可以边检测轮廓点边连接。 - 基于目标区域
考虑所有属于目标区域的像素,如果能确定出每个属于目标的像素就可以获得完整的目标。通常是假设构成目标区域的像素的灰度值大于某个特定的阈值,确定这个阈值把目标区分开。
轮廓搜索
边缘检测方法可以检测出目标轮廓上的边缘点,将这些点看做目标的边界点,将边界点连接起来就可获得目标轮廓,这可看做是一种基于轮廓的目标分割方法。
轮廓搜索是边检测边连接并最后获得目标轮廓。边检测边连接考虑了图像中的边界的全局信息,在图像受噪声影响较大时仍可获得较为鲁棒的结果。
图搜索
将边界点和边界线用图结构表示。通过在图中搜索对应最小代价的通道就可以找到闭合边界,这就是图搜索方法。具有全局性,受噪声影响较小,但是方法复杂,计算量大。
在图中搜索对应代价最小的通道时经常借助图像中的边缘信息。定义图中的边缘元素是两个互为4-近邻的像素间的边界。如图,像素p和q之间的竖线以及q和r之间的横线所示。目标的边界或轮廓是由一系列边缘元素构成的。
图明天补
下图所示为图像中的一个区域,各网格点代表像素,括号内的数字代表各像素的灰度值。设每个由像素q和p确定的边缘元素对应着一个代价函数:
H:图像中的最大灰度值;
图明天补
搜索图中,每个结点对应一个边缘元素,方框中的两对数是边缘元素两边的像素坐标。边缘元素的代价标在图中指向该元素的箭头上,这个数值代表了如果用这个边缘元素作为边界的一部分所需要的代价。每条从起始结点到目标结点的通路都有可能是一个可能的边界。
图明天补
动态规划
借助启发性知识加快了搜索速度,但通常不能保证发现全局最小代价通路。
算法步骤如下:
- 将起始结点标记为OPEN并置
g(s)=0 - 如果没有结点OPEN,失败退出,否则继续
- 将根据
r(n)=g(n)+h(n) 得到估计代价r(n) 为最小的OPEN结点标记为CLOSE - 如果n是目标结点,找到通路(可由n借助指针上溯至s)退出,否则继续
- 展开结点n,得到它的所有子结点(如果没有子结点,返回第2步)
- 如果某个子结点
ni 还没有标记,置r(ni)=g(n)+c(n,ni) ,标记为OPEN并将指向它的指针返回到n 如果子结点
ni 已经标记为OPEN或者CLOSE,根据g‘(ni)=min[g(ni),g(n)+c(n,ni)] 更新它的值。将g‘ 值减小的CLOSE子结点标记为OPEN, 并将原先指向所有其g‘ 值减小的子结点的指针重新指向n。返回第2步。未完待修
主动轮廓模型
主动轮廓模型是一种基于边缘信息的目标分割方法,先构建一个初步的图像中目标的封闭曲线,再通过逐步改变封闭曲线的形状以逼近目标的真实轮廓。在对目标轮廓的逼近过程中,封闭曲线像蛇一样不断改变形状,所以主动轮廓模型也成为蛇模型。
主动轮廓模型
一个主动轮廓模型是图像上一组排序点的集合,可表示为:
其中各个点可表示为:
处于轮廓上的点可通过解一个最小能量问题迭代地逼近目标的边界,对每个处于
其中,
下图解释了初始轮廓逼近目标轮廓的过程。
其中
能量函数
略
参考
计算机视觉教程 A Course of Computer Vision 章毓晋编著
- 目标分割——基于目标轮廓
- 目标分割——基于目标区域(一)
- 【opencv】目标识别——轮廓匹配
- 目标跟踪方法--基于轮廓跟踪
- 基于运动目标轮廓的帧差法背景提取
- 一种基于轮廓的运动目标检测与跟踪算法
- 目标跟踪(2)——背景分割器
- 利用OpenCV提取目标轮廓
- 快速分割目标管道
- 初六-目标检测-分割
- 粘边目标分割
- 运动目标分割
- 目标追踪-背景分割
- 基于像素自适应分割的运动目标检测算法
- 基于像素自适应分割的运动目标检测算法
- 【目标检测:Hough Forest】目标检测原理(三)——基于霍夫森林的目标检测
- 基于OpenCV的目标物体颜色及轮廓的识别方法
- 基于视觉的动态目标识别——笔记
- sklearn API 文档
- Activiti 5.16 版本
- GDI+
- JavaScript中几种常用的解决for循环中引用同一循环变量对象的方法
- 微信文件分享的那些坑
- 目标分割——基于目标轮廓
- Croc Champ 2012
- Noip 2015 senior ,The semi-finals,analysis (复赛题解)
- IMX6UL ARM 工控机
- 2017学习知识+学习计划
- JS如何去除指定字符串
- 387. First Unique Character in a String
- 三、Linux——Shell脚本语言
- 第六天-Java内部类