关于从ListViewTextSort派生一个类并重写OnCompare()方法

介绍
看一个数字图像。这仅仅是一个很大的像素,但你可以看到线条,色调的颜色,形状,结构...然后对象和实体你有没有想知道你如何能够使这个烂摊子像素的意义吗?

在这篇文章中,我们将着眼于打破图像到子图像使用一种称为轮廓跟踪的技术的一个途径。

背景
打破一个图像子图像就是俗称的图像分割。有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 。

下面的代码实现的算法。

 

  VB.NET开发的oracle到Sqlserver实用的工具
解决ORA-01882:找不到时区的问题
C#对Google MAP 静态API进行封装[Google地图]
为ASP.NET提供的Google Maps API V3代码
Delphi7通过SendMessage来实现默认打印机的切换
sybase连续进行update20000次,数据库无法进行select查询
Delphi7修改domino某个域的值,并保存
Delphi7调用多米诺组件读取NSF文件里的数据注意点
多米诺数据库打开domino admin的时候报错
程序开发使用Access2007或者access2010需要的条件
通过svn下载DIOCP开源代码
在ASP中使用ADO来连接Access数据库
VBScript 不使用tnsnames.ora连接oracle数据库
在Oracle里如何修改帐号的密码
C#调用Google新闻API函数
C#开发的Ini文件操作类
C#开发的INI文件读取写入类
C#[VS2010]开发的重写或者还原XML文件
Discuz X3 设置论坛分类信息
C#开发的可分组设置的ListView

 

 

  通过SendMessage来开启/关闭显示器
XML序列化以及反序列化
C#实现对象直接转换成字符串以及字符串转换成对象
目前大富翁历史数据搜索引擎已经添加到网站,有问题可以在这里提出
Google地图经纬度纠偏的Delphi实现
Sqlserver关于随机数的一些想法
使用DataGrid以及数据库连接控件来访问一个access数据库
JSP开发的一个Data Grid[DBGRID]
VC6开发的一个屏幕保护程序
C#开发的可以控制屏幕保护程序的代码
Delphi开发的DICOP源代码,这个是通过Google的SVN下载到的
C#开发的水滴/水珠型控件圆形或者椭圆型
C#[VS2003]开发的水滴型泡泡button控件
C#[VS2008]开发的动态控件[脉冲]
C#开发的圆形控件
VC++开发的椭圆形控件
VC开发的XP样式的button控件
使用WebBrower控件的时候,在‘Click’的时候如何禁用或者启用声音
C#开发的图片处理工具
VB.NET开发的Oracle存储过程的封装
  C# ASP.NET开发的网页时间控件
DELPHI XE5 ,可以使用的一个阳历阴历转换的代码
DELPHI XE5 UP2 应用关闭后,立刻启动应用,应用会一闪后关闭
DELPHI X5 UP2 为应用添加消息发送功能,将消息发送到手机消息中心
Delphi XE5 UP2为应用添加启动画面
DELPHI XE5 UP2 开发的程序启动慢,起码要等待好几秒钟
DELPHI XE5 在ListView使用过程中有个问题,LItem.Data['INDEX'].AsString,报错
Delphi XE5 开发的第一个应用:节日提醒机器人
Delphi XE5如何读写INI文件
手机开发调试比较麻烦。。。
C#实现对MYSQL的连接并且进行数据的更新
C#调用User32.dll 中的LockWorkStation函数来锁定电脑
DELPHI XE5 UP2 破解
Delphi7通过SendMessage得到Combobox列表值
Delphi7通过sendmessage控制Listview
Delphi7得到ListView某一个节点的字符
JavaScript 列表排序
VC6开发的PDF View,显示PDF文件内部结构
C#关于虚拟模式的Listview
C#开发的树形Listview/TreeListView

 

  C#开发的一个SQL类
VB.NET开发的类似SQL Server 2005的圆形进度条
C#开发的圆圈形进度条控件
DELPHI XE5 android tts(Text To Speech)应用
VB.NET调用Microsoft Speech 5.1 SDK来实现Text to Speech
C#使用SAPI来实现Text to Speech
在ANDROID应用中添加Text to Speech (TTS) 引擎[eclipse开发工具]
VB通过调用LockWorkStation来锁定电脑
C#开发的弹出USB磁盘[U盘]程序
转武稀松的:Delphi移动平台上生存期自管理一些问题的避免
在TList添加临时变量,然后在Timer中使用,报错
sqlserver中Coalesce()函数的使用
从Oracle中读取Clob字段
C#开发的Oracle查询工具
C#开发的访问oracle数据库的代码生成器
C#从SqlServer或者Oracle的数据库中读取或者写入Bolb字段
C#从Oracle读取CLOB字段
通过JSP将HTML中的表格到导出Excel
我的开发XE5的时候,释放控件为什么界面还有
DELPHI XE5 UP2开发的小游戏 - 贪吃蛇

 

 

 

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
posted on 2014-04-19 09:11  小S资料屋  阅读(220)  评论(0编辑  收藏  举报