介绍
看一个数字图像。这仅仅是一个很大的像素,但你可以看到线条,色调的颜色,形状,结构...然后对象和实体你有没有想知道你如何能够使这个烂摊子像素的意义吗?
在这篇文章中,我们将着眼于打破图像到子图像使用一种称为轮廓跟踪的技术的一个途径。
背景
打破一个图像子图像就是俗称的图像分割。有2个主要的方法:颜色和外形。
在颜色的方法,在靠近我们的像素组具有相似的颜色变成斑点。
在大纲的方法,我们寻找的前景像素他周围的背景像素,然后将它们连接在一起,形成一个封闭的路径。闭合路径中的像素将形成的子图像。
图1
一些初步的概念:
邻近像素:
在图1中,像素标记为X,有8个邻居(每1个像素的距离) ,在该方向,由左上(1)顺时针旋转至左起(8) 。在closewise为了其他方向顶(2 ) , TopRight ( 3 ) ,右( 4 ) , BottomRight ( 5 ) , (6)底部和BottomLeft ( 7 )
前景和背景像素:
前景像素是属于我们要隔离的对象(子图像)的像素。背景象素是被周围的物体的像素的其余部分。在图1中,左侧和顶部较暗的像素是前景像素和像素的右侧和底部是背景像素。
大纲:
轮廓像素是前景像素具有至少一个邻居是背景像素。在图1中,较暗的像素标记为1,2,3 .. 10是一些轮廓像素
算法
1 ,开始接近对象的轮廓像素
2,找到最近的像素为1是一个轮廓像素。这是第一个轮廓像素。
3,从轮廓像素在第2步开始,按顺时针方向,探测邻居,找到下一个轮廓像素这是下一个轮廓像素
4 ,重复3,直到我们打的像素在步骤2中
作为一个例子,在图1中,如果我们开始与标记X中的像素,第一轮廓像素会是暗像素标记为2 ,顺时针走向,下一个轮廓像素的方向底被发现( 6 ) ,这将是像素标注3 ,从这里出发,参照像素3 ,我们开始方向将是从像素2下一个顺时针像素, TopRight ( 3 ) ,我们打了下一个轮廓象素BottomLeft ( 7 )像素4 。
下面的代码实现的算法。
Delphi | |
Delphi XE5如何实现应用的自动启动? - [售价 5] | 2014-4-9 14:31 |
Delphi XE5如何得到手机目前所朝的方向,想做一个指南针 - [售价 5] | 2014-4-9 14:26 |
大家有没有一个好一点的PHP支持中文的搜索引擎的代码? - [售价 10] | 2014-4-9 14:19 |
C#开发的一个IP输入框控件 | 2014-4-9 13:25 |
C#实现屏幕拷贝,并且自动保存到本地目录 | 2014-4-9 13:16 |
VB.NET开发的贪吃蛇游戏 | 2014-4-9 13:06 |
C#实现只能输入数字的TextBox控件 | 2014-4-9 12:25 |
Yield关键字在C#中的使用 | 2014-4-9 12:15 |
用AppMethod/XE5UP2实现移动超级终端 | 2014-4-9 11:25 |
clientdataset使用GotoBookmark报: record not found 错误 | 2014-4-9 11:06 |
OpenSSL的大漏洞被曝光 | 2014-4-9 10:19 |
C#实现动画效果的windows窗口 | 2014-4-8 20:22 |
WinForms实现动画界面--非常值得下载 | 2014-4-8 20:14 |
C#在PictureBox 中旋转图片 | 2014-4-8 19:52 |
VC6开发的扫雷辅助工具 | 2014-4-8 19:48 |
Delphi7通过SetWindowsHookEx屏蔽ShowMessage界面 | 2014-4-8 16:52 |
DBGridEh点击标题栏,按照自己的需要进行排序 | 2014-4-8 13:47 |
C#开发的一个标尺控件 | 2014-4-8 13:39 |
Delphi7通过ADO读取Excel中的数据,如果列的字符串超过255,后面的会被截取 | 2014-4-8 09:27 |
关于从ListViewTextSort派生一个类并重写OnCompare()方法,布布扣,bubuko.com
关于从ListViewTextSort派生一个类并重写OnCompare()方法
原文:http://www.cnblogs.com/xszlo/p/3674585.html