用户:  密码: 记住我     找回密码 
| 文章 >> 多媒体 >> 普通图形技术

在C#图像识别的轮廓分析

日期 | 作者AB|LT=|A||B|),它是达到只有...imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_17_8.png...其中μ-任意复数。是什么意思在实践中呢?我们记得的物理意义复数的乘法。复数的乘法,其长度相乘,并添加参数(角度)-。轮廓μN意味着它是相同的轮廓ñ,但打开两个规模。规模和定义又是一个复杂的数μ。所以,新型干法规范达到最高值-团结,只有轮廓Γ是相同的轮廓ñ,但打开一些角度和一定的系数缩放。举一个例子,我们考虑的轮廓大多对自己的标量乘法,但打开一定的角度。,因此,如果指望一个向量上本身最的一个新型干​​法,我们收到新型干法=1,如果打开90度轮廓,我们收到新型干法=0我,转180度,给人以新型干法=-1。因此,真正的一部分,一个新型干​​法会给我们一个轮廓线之间的角度的余弦,新型干法规范将总是等于1。同样,如果我们增加一些真正的系数(规模)一个VC,我们也收到新型干法=1(它只是从公式(4))。imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_18_10.gif注:新型干法规范是不变的换位,旋转和缩放的轮廓。所以,正常化的轮廓标产品的标准提供统一,仅在这两个轮廓内转和规模都是平等的事件。否则,新型干法的规范将严格少团结。这是一个CA的核心结论。其实,规范的新型干法是换位,旋转和缩放的轮廓不变。如果有两个相同的轮廓,其新型干法总是给人一种团结,是不依赖于轮廓是,其旋转的角度和规模。同样,如果轮廓各种,他们新型干法将严格小于1,而且也是独立的地方,旋转和规模。imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_18_10.gif注:新型干法标准是衡量轮廓亲近。规范给出了一个衡量一个相似的轮廓,和论证一个新型干​​法(等于ATAN(B/A))-给了我们一个轮廓,而对方的旋转角度。相关函数的轮廓在前面的章节中,我们确定的新型干法搜索轮廓彼此之间类似的公式是非常有用的。不幸的是,有一种情况下,不允许直接使用它。这种情况下-起点的选择。问题是,达到平等(6)只有出发点的等高线-相吻合。如果轮廓是相同的,但EV参考其他的起点开始的新型干法规范等轮廓不会等于一个统一体。问题是,达到平等(6)只有出发点的等高线-相吻合。如果轮廓是相同的,但EV参考其他的起点开始的新型干法规范等轮廓不会等于一个统一体。让我们介绍两个轮廓"(ICF)intercorrelation函数的概念:imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_19_12.pngN(M)-从N周期元素m转移其EV收到一个轮廓。举一个例子,如果N=(N1,N2,N3,N4),N(1)=(N2,N3,N4,N1),N(2)=(N3,N4,N1,N2)依此类推。是什么intercorrelation功能显示?此功能显示轮廓Γ和N的值是怎么相似,如果转向M上的立场出发点N。ICF的定义对所有的整数设置,但周期K上的转变,使我们初步的轮廓ICF是周期性的,与之相K.因此,我们将这种功能只有在从0到K-1的限制值的兴趣。让我们发现之间的值的ICF的最大模的幅度:imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_19_13.png测定一个NSP和一个ICF的,很显然,τmax是两个轮廓,换位,缩放,旋转和出发点移不变的相似性的措施。因此,规范|τmax|显示轮廓相似的水平,并达到相同的轮廓统一,参数arg(τmax)给出了一个轮廓的旋转角度,关于另一个。imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_18_10.gif注:最大的ICF的规范是衡量两个轮廓的相似性。imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_18_10.gif注:最大的ICF的规范是不变的换位,缩放,旋转和出发点移。让我们引入一个概念-自相关函数(ACF)的。自相关函数的ICF,其中N=Γ。作为一个事实上的大部分依靠自己的一个出发点的各种变化的轮廓标产品:imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_19_16.png让我们考虑一个ACF的一些属性:在ACF不依赖于选择一个轮廓的起点。真的,我们看一个标产品(1)测定。正如我们所看到的,其出发点修改信息简单累加元素的顺序修改并不会导致一笔修改。这个结论是不那么明显,但如果思考意义上的ACF的很清楚。规范ACF的是关于中央参考K/2对称。由于ACF的轮廓EV成对产品的总,每一对符合两次间隔从0到K.例如,,N=(N1,N2,N3,N4),我们将值写入ACF的不同的m:ACF(0)=(N1,N1)(N2,N2)(N3,N3)(N4,N4)ACF(1)=(N1,N2)(N2,N3)(N3,N4)(N4,N1)ACF(2)=(N1,N3)(N2,N4)(N3,N1)(N4,N2)ACF(3)=(N1,N4)(N2,N1)(N3,N2)(N4,N3)ACF(4)=(N1,N1)(N2,N2)(N3,N3)(N4,N4)让我们注意到,在ACF(1)相同,在ACF(3),项目内的因素排列。并回顾复数(A,B)=(B,A),我们收到一个ACF(1)=ACF(3)*,其中*-共轭复数符号。为|A*|=|一个|ACF(1)和ACF(3)规范-不谋而合。同样,规范ACF(0)和一个活性碳纤维(4)不谋而合。此外,随处可见一个ACF下,我们将了解一个间隔从0到K/2的剩余部分的功能​​只有一个功能部分-第一部分是对称的。如果轮廓对称,把其ACF的也有类似的对称。举一个例子,我们把图形ACF的一些轮廓:imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_20_17.png图片,ACF的是深蓝色(ACF它只是为代表的时间间隔从0到K/2)为代表的规范。正如我们所看到的,除了最后的轮廓,有对称转ACF的信息对称。这种对称性的最后一个轮廓没有,其ACF的图形-不是对称。从某种意义上说,这是可以考虑作为轮廓的形状特征轮廓ACF的。因此,接近一个圆的形状,有统一规范的ACF(见圈的图片)值。强烈prolated在一个方向的形状-在中央部分的DIPACF(看到一个矩形图片)。依次传递中的形状,在适当的地方(方形ACF看到)千里马ACF的。赋范的ACF的不依赖于一个规模,位置,旋转和选择一个轮廓的起点。从第一点和从属性的新型干法。视频显示这个事实:就可以了,我们完成了一个CA的理论部分。在这一部分,我只带来的主要概念和理论计算,模式识别在第二部分中,我会马上申请。第2部分:轮廓分析的实际应用一般的识别算法因此,我们将解决图像模式识别任务。识别操作的一般顺序看起来那么:初步处理图像-平滑,噪音过滤,对比提高二值化图像和选择对象的轮廓初步过滤的外围轮廓,广场,一个波峰因数,分形等强迫统一的长度,平滑的轮廓搜索所有已发现的轮廓,搜索模板的最大给定的轮廓相似,我们不会考虑1点和3点,他们是具体的应用领域,并有小到CA的关系。此外,我们考虑一个算法的身体-搜索和比较模板的轮廓。然后-我们停止对二值化,强迫统一的长度和平滑一点轮廓。在CA算法的性能估计一次,我们估计基于CA的算法的高速性能。让已经二值化图像,并选择它的轮廓。作为进一步,我们将与轮廓点,我们估计其总体金额上的形象。为此,我们采取的图像大小为n*n个像素。然后滋生了一步均匀网格第所有网格线的总长度是:imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_20_18.png事实证明,通过从平面二维图像轮廓不降低任务的维数。我们像以前那样复杂度为O(N2)的工作。但是,这里是有可能使一些笔记:所带来的估计是极值。在真实的形象,并非所有的轮廓的最小尺寸,和他们没有涵盖所有的图像平方米。因此,轮廓和他们的总周长可少得多2N2/秒理想的情况下-如果图像包含一个对象,无噪音CA将工作只用一个轮廓,和它的像素数,使得不如此平方米,并从n的线性关系在图像作为一个像素的二维数组(例如,应用哈尔级联滤波器)的运作情况-我们始终与所有像素的图像,不论工作,多少个对象,它是代表。由于图像的轮廓形式已经自然分割-划分成轮廓,有可能进行一个简单的标志形象的部分过滤。其中-轮廓方形,周长,广场周边方形的比例。因此,有足够的简单而有效的机制,初步过滤的部分图像。基本算法的二维的方法,作为一项规则,不规模不变(冲浪,过筛)或旋转(哈尔)。因此,实际上,他们工作在三维空间里出现更多的测量,因为有必要理清规模或旋转角度。作为CA的方法是不变的的规模和旋转这里等问题不存在(消除-uninvariance出发点,但我们认为有效的方法,对这种复杂的斗争更加低)。CA允许在一个渐进的方式来处理图像。这意味着我们可以在任何轮廓进行排序显示(例如,由方形或梯度界限,或在亮度等)。然后到治疗的第一个轮廓,并产生结果。剩下的轮廓处理在背景模式。这意味着,可为O(N),是一个模式识别算法的优良估计收到的第一项成果(,在许多应用为导向的的任务,有必要)。当轮廓是从承认对方的算法独立很容易tonbsp;并行。此外,算法非常简单,可以在图形处理器上执行。所有符合上述要求的揣测关注的轮廓handlings。当然,轮廓取得阶段不消失随时随地,它要求至少为O(n2)。然而,在实践中,这一阶段占据从一般的处理时间不超过10-20%。这些因素的人口基本上降低的计算复杂性的不断,在现代计算机的进步,CA可以很实时的算法。让我们的复杂度为O(N2)起来的原因。轮廓,事实上,是一维的对象。它是一个复数号码的载体。然而轮廓的数量的增长比例图像大小的方形。从这里也有复杂度为O(N2)。由此看来,很可能得出一个结论,性能增益的最有效的模式是一个初步的过滤轮廓计数减少。现在我们估计处理的复杂性,分别采取轮廓。在前面的部分,我们变得清晰,轮廓比较,它是要发现千里马ICF(公式7,8)。我们估计进行评估的复杂性。标产品需求为O(K)操作,其中K-等高线的长度。ICF的需要,应标产品的评价k评价生产。手段,ICF需求为O(K2)的评估。此外,考虑到比较云不是一个模板,模板设置模板轮廓的总时间可估计为imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_21_19.pngK-一个轮廓,长度和T-模板轮廓。它不是这样一个良好的估计。在后面的章节中,我们将与它斗争,我们将设法减少这个估计本质上是一个常数。共有,识别图像中的所有轮廓的复杂性使得:imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_21_20.png-N-线性图像大小,K-轮廓长度,T-计数模板。确定的第一个轮廓的复杂性(在逐行扫描模式):imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_22_21.png轮廓描述,因为它已经在前面的章节中,ICF的评价的复杂性是O(K2)。尽管的k-常数(统一的长度,我们考虑的轮廓进一步的胁迫过程),都是一样的,评价一个ICF-劳动力密集的过程。在k=30评价ICF是900乘以复数的操作。存在吨=1000模板,模板轮廓的需求约100万multiplyings复数。模板的快速搜索,有必要引入一定的特征轮廓的形状描述符。因此,密切彼此之间的轮廓应该有密切的描述。它会拯救我们的评估程序,每个模板ICF轮廓。将仅比较描述符,如果他们接近-只有在这种情况下足够-计算ICF。比较描述符的要快。理想的情况下,一个数字应该是一个描述符。不幸的是,在文献中,我没有发现明确的论述,描述一个轮廓的形状合适描述。然而,这样的描述符存在。在第一部分中,我们明确地考虑自相关函数的属性。在同一个地方,我们,标志着invariantlyACF的换位,旋转,缩放和出发点的选择。此外,在ACF是一个轮廓的功能,而不是两个,作为ICF。从它出发,可以选择在ACF的轮廓形状的描述。密切的轮廓将始终密切值ACF的。imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_18_10.gif注:ACF的是一个轮廓的形状描述符。比较两个ACF的复杂度为O(K),已大大超过O(K2)更好地为ICF。此外,我们还记得,ACF的,因为对称性的定义,其他两次降低评价的时间间隔从0到K/2。如果模板的基础上存储他们的ACF,寻找轮廓的模板,通过比较在ACF,使O(KT)。这已经是很好的估计。但也给我们这是要精。对于比较一个ACF的时间减少,我申请一个ACF的小波卷积。我会省略这一过程的描述,它是可以看看它的源代码。的标志以下内容:ACF的,比较一般,没有保存的thenbsp我们一个ICF的评价的必要性。ICF的国家只有一个轮廓亲近的确切估计。ACF的,一般情况下,可以为各种轮廓相吻合。但是,因此,初步选择一个ACF的模板,基本上缩小候选人数比较上的ICF。在某些情况下,比较在ACF可以够识别的轮廓。如果在搜索与简单的几何形状的图像标记,和失败表彰的概率是没有必要的,它是可以省略的一个ICF的比较过程,有限制只卷积比较ACF的。这样的算法,给出了最大的系统性能。均衡的轮廓,因为它已经被标记在第一部分中,CA方法假定相同长度的轮廓。在真实的图像轮廓任意长度。因此,轮廓的搜索和比较,他们都应该统一长度。这个过程被称为均衡。首先,我们解决一个VC,我们将在我们的识别系统使用的长度。我们指定它K.然后,为每个初始轮廓,我们创建矢量轮廓长度K.ñ此外可能两个变种-或初始轮廓大于K数的EV,或更小的数量比K.如果初始轮廓更有必要理清其EV,我们认为元素N为所有电动车的总的,如下(C#):codeprelang="cs"Complex[]newPoint=spanclass="code-keyword"new/spanComplex[newCount];spanclass="code-keyword"for/span(spanclass="code-keyword"int/spani=spanclass="code-digit"0/span;i | 浏览86 | 评分100 | 标签普通图形技术 评论
{A}源代码和演示包括所有需要OpenCV的库。项目需要。NET Framework 4中。
{S0}简介
本文介绍的轮廓分析的理论基础和其实际应用中的形象recognition.nbsp方面的文章alsonbsp;轮廓分析与操作,包括图书馆和演示的例子。
文章的第一部分包含的主要轮廓分析的定义和定理。我试图选择允许迅速了解不够的轮廓分析的精髓,并开始在实践中的应用主要时刻。另外,我从自己的东西。的核心,它涉及理论的某些方面,也轮廓分析算法的优化问题。 thenbsp第二部分;文章是专门为它。在同一个地方的算法工作的结果带来的问题和给定的方法的缺陷进行了阐述。
第三部分介绍了C#库ContourAnalysis。第1部分:轮廓分析的基什么是必要的轮廓分析(CA)
CA允许用来描述,存储,比较和寻找外部轮廓的形式提出的对象 - 轮廓。
这是应该的轮廓包含必要的信息对物体的形状。要注意对象的内部点不接受。它限制了CA算法的适用性的面积,但审查唯一的轮廓,可以通过从两维空间的图像 - 空间的轮廓,以较低的计算和算法的复杂性。
CA可以有效地解决了模式识别的主要问题 - 换位,关闭和重新缩放对象的形象。 CA的方法是不变的这些转变。主要的概念
首先,我们定义这样一个对象的轮廓。轮廓是一个对象的边界,人口的点(像素),从背景中分离出来的对象。
在计算机视觉系统,轮廓编码格式的使用 - Freeman码,二维编码,多边形编码最为著名。但是,所有这些编码格式中不使用CA的。
相反,在CA的轮廓编码复数组成的序列。在一个轮廓,为出发点,这是所谓的点是固定的。然后,轮廓扫描(受理 - 顺时针),以及每个偏移向量是一个复杂的数IB指出。 - 点在X轴和B偏移 - Y轴偏移。注意到关于前一点偏移。
由于三维物体的物理性质,其轮廓始终关闭,不能自相交。它允许明确定义(在一个方向 - 或逆时针)绕过一个轮廓的一种方式。最后一个轮廓的矢量总是导致的出发点。
的每一个轮廓的向量,我们将其命名的基本向量(EV)。复数数字序列 - 向量轮廓(VC)。
向量轮廓,我们将指定的大希腊字母,小学一个载体 - 小希腊字母。
因此,矢量轮廓Γ的长度为k可以指定为:{S2}
为什么在复数的CA编码是用?因为在一个轮廓的复数向量操作具有显着的数学特性,在与其他编码方式的比较。
基本上,复杂的编码是接近二维轮廓人口的二维坐标中的电动车定义的编码。但标产品的运作载体和复数之间的差异 - 是多方面的。此情况下,也优先的CA方法。等高线的属性一个封闭的轮廓EV的总和等于零。这是微不足道的 - 小学向量起点,其总和等于一个零矢量。不依赖于源图像并行换位的轮廓矢量。由于轮廓编码相对起点,这种编码方式是不变的转移的初步轮廓。在一定角度的图像又是相当于把每一个相同的角度轮廓EV。起点修改进行VC循环移位。由于电动汽车是关于前一点的编码,它是明确的,在修改的出发点,序列的EV将是相同的,但起点开始的首个EV将。源图像重新缩放可以被视为每一个比例因子的轮廓EV乘法。标量积的轮廓
在产品轮廓标,Γ和N被称为这种复杂的数字:
其中k - n的轮廓Γ,νn的基本载体 - - N轮廓N.(γn,νn)EV - 一个VC,γn维标量积的计算公式为复数:
让我们的薪酬在CA注意标产品只有一个相同的维VC是应该的。这是在轮廓小学向量的数量应相吻合。
标产品 - 通常复数向量和标量的产品有所不同。如果我们简单的一个向量的EV乘以时,他们的标产品看起来:{五}
比较这个公式公式(2),你需要注意的是:标量向量的产品的结果是实数。成果和产品的复数 - 复数。标产品的复数的实部,恰逢适当的向量与标量的产品。这是复杂的产品,包括矢量标量积。
,现在让我们记住线性代数。要准确 - 标量积的物理意义和属性。标产品在产品之间的夹角的余弦向量的长度线性代数上一律平等。这意味着两个相互垂直的向量将始终具有零积,线的一个向量 - 相反,会给标产品的最大价值。
产品的这些属性允许使用它作为载体亲近的某些措施。如果是 - 向量之间的角度,quot;更多closequot;他们给对方。垂直向量 - 它是降低到零,并进一步指示每个向量变为负数。它的出现,标产品(1)也具有类似的属性。
让我们引入一个概念 - 正常化标产品(NSP):{中六}
其中,|γ| | ñ | - 规范计算轮廓(长): {七}
在新型干法复数空间,也是一个复杂的数字。
因此,团结是最大可能的新型干法规范值(它从一个柯西Bunyakovsky - Schwarz不等式如下
关于作者:AB|LT=|A||B|),它是达到只有...imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_17_8.png...其中μ-任意复数。是什么意思在实践中呢?我们记得的物理意义复数的乘法。复数的乘法,其长度相乘,并添加参数(角度)-。轮廓μN意味着它是相同的轮廓ñ,但打开两个规模。规模和定义又是一个复杂的数μ。所以,新型干法规范达到最高值-团结,只有轮廓Γ是相同的轮廓ñ,但打开一些角度和一定的系数缩放。举一个例子,我们考虑的轮廓大多对自己的标量乘法,但打开一定的角度。,因此,如果指望一个向量上本身最的一个新型干​​法,我们收到新型干法=1,如果打开90度轮廓,我们收到新型干法=0我,转180度,给人以新型干法=-1。因此,真正的一部分,一个新型干​​法会给我们一个轮廓线之间的角度的余弦,新型干法规范将总是等于1。同样,如果我们增加一些真正的系数(规模)一个VC,我们也收到新型干法=1(它只是从公式(4))。imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_18_10.gif注:新型干法规范是不变的换位,旋转和缩放的轮廓。所以,正常化的轮廓标产品的标准提供统一,仅在这两个轮廓内转和规模都是平等的事件。否则,新型干法的规范将严格少团结。这是一个CA的核心结论。其实,规范的新型干法是换位,旋转和缩放的轮廓不变。如果有两个相同的轮廓,其新型干法总是给人一种团结,是不依赖于轮廓是,其旋转的角度和规模。同样,如果轮廓各种,他们新型干法将严格小于1,而且也是独立的地方,旋转和规模。imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_18_10.gif注:新型干法标准是衡量轮廓亲近。规范给出了一个衡量一个相似的轮廓,和论证一个新型干​​法(等于ATAN(B/A))-给了我们一个轮廓,而对方的旋转角度。相关函数的轮廓在前面的章节中,我们确定的新型干法搜索轮廓彼此之间类似的公式是非常有用的。不幸的是,有一种情况下,不允许直接使用它。这种情况下-起点的选择。问题是,达到平等(6)只有出发点的等高线-相吻合。如果轮廓是相同的,但EV参考其他的起点开始的新型干法规范等轮廓不会等于一个统一体。问题是,达到平等(6)只有出发点的等高线-相吻合。如果轮廓是相同的,但EV参考其他的起点开始的新型干法规范等轮廓不会等于一个统一体。让我们介绍两个轮廓"(ICF)intercorrelation函数的概念:imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_19_12.pngN(M)-从N周期元素m转移其EV收到一个轮廓。举一个例子,如果N=(N1,N2,N3,N4),N(1)=(N2,N3,N4,N1),N(2)=(N3,N4,N1,N2)依此类推。是什么intercorrelation功能显示?此功能显示轮廓Γ和N的值是怎么相似,如果转向M上的立场出发点N。ICF的定义对所有的整数设置,但周期K上的转变,使我们初步的轮廓ICF是周期性的,与之相K.因此,我们将这种功能只有在从0到K-1的限制值的兴趣。让我们发现之间的值的ICF的最大模的幅度:imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_19_13.png测定一个NSP和一个ICF的,很显然,τmax是两个轮廓,换位,缩放,旋转和出发点移不变的相似性的措施。因此,规范|τmax|显示轮廓相似的水平,并达到相同的轮廓统一,参数arg(τmax)给出了一个轮廓的旋转角度,关于另一个。imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_18_10.gif注:最大的ICF的规范是衡量两个轮廓的相似性。imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_18_10.gif注:最大的ICF的规范是不变的换位,缩放,旋转和出发点移。让我们引入一个概念-自相关函数(ACF)的。自相关函数的ICF,其中N=Γ。作为一个事实上的大部分依靠自己的一个出发点的各种变化的轮廓标产品:imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_19_16.png让我们考虑一个ACF的一些属性:在ACF不依赖于选择一个轮廓的起点。真的,我们看一个标产品(1)测定。正如我们所看到的,其出发点修改信息简单累加元素的顺序修改并不会导致一笔修改。这个结论是不那么明显,但如果思考意义上的ACF的很清楚。规范ACF的是关于中央参考K/2对称。由于ACF的轮廓EV成对产品的总,每一对符合两次间隔从0到K.例如,,N=(N1,N2,N3,N4),我们将值写入ACF的不同的m:ACF(0)=(N1,N1)(N2,N2)(N3,N3)(N4,N4)ACF(1)=(N1,N2)(N2,N3)(N3,N4)(N4,N1)ACF(2)=(N1,N3)(N2,N4)(N3,N1)(N4,N2)ACF(3)=(N1,N4)(N2,N1)(N3,N2)(N4,N3)ACF(4)=(N1,N1)(N2,N2)(N3,N3)(N4,N4)让我们注意到,在ACF(1)相同,在ACF(3),项目内的因素排列。并回顾复数(A,B)=(B,A),我们收到一个ACF(1)=ACF(3)*,其中*-共轭复数符号。为|A*|=|一个|ACF(1)和ACF(3)规范-不谋而合。同样,规范ACF(0)和一个活性碳纤维(4)不谋而合。此外,随处可见一个ACF下,我们将了解一个间隔从0到K/2的剩余部分的功能​​只有一个功能部分-第一部分是对称的。如果轮廓对称,把其ACF的也有类似的对称。举一个例子,我们把图形ACF的一些轮廓:imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_20_17.png图片,ACF的是深蓝色(ACF它只是为代表的时间间隔从0到K/2)为代表的规范。正如我们所看到的,除了最后的轮廓,有对称转ACF的信息对称。这种对称性的最后一个轮廓没有,其ACF的图形-不是对称。从某种意义上说,这是可以考虑作为轮廓的形状特征轮廓ACF的。因此,接近一个圆的形状,有统一规范的ACF(见圈的图片)值。强烈prolated在一个方向的形状-在中央部分的DIPACF(看到一个矩形图片)。依次传递中的形状,在适当的地方(方形ACF看到)千里马ACF的。赋范的ACF的不依赖于一个规模,位置,旋转和选择一个轮廓的起点。从第一点和从属性的新型干法。视频显示这个事实:就可以了,我们完成了一个CA的理论部分。在这一部分,我只带来的主要概念和理论计算,模式识别在第二部分中,我会马上申请。第2部分:轮廓分析的实际应用一般的识别算法因此,我们将解决图像模式识别任务。识别操作的一般顺序看起来那么:初步处理图像-平滑,噪音过滤,对比提高二值化图像和选择对象的轮廓初步过滤的外围轮廓,广场,一个波峰因数,分形等强迫统一的长度,平滑的轮廓搜索所有已发现的轮廓,搜索模板的最大给定的轮廓相似,我们不会考虑1点和3点,他们是具体的应用领域,并有小到CA的关系。此外,我们考虑一个算法的身体-搜索和比较模板的轮廓。然后-我们停止对二值化,强迫统一的长度和平滑一点轮廓。在CA算法的性能估计一次,我们估计基于CA的算法的高速性能。让已经二值化图像,并选择它的轮廓。作为进一步,我们将与轮廓点,我们估计其总体金额上的形象。为此,我们采取的图像大小为n*n个像素。然后滋生了一步均匀网格第所有网格线的总长度是:imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_20_18.png事实证明,通过从平面二维图像轮廓不降低任务的维数。我们像以前那样复杂度为O(N2)的工作。但是,这里是有可能使一些笔记:所带来的估计是极值。在真实的形象,并非所有的轮廓的最小尺寸,和他们没有涵盖所有的图像平方米。因此,轮廓和他们的总周长可少得多2N2/秒理想的情况下-如果图像包含一个对象,无噪音CA将工作只用一个轮廓,和它的像素数,使得不如此平方米,并从n的线性关系在图像作为一个像素的二维数组(例如,应用哈尔级联滤波器)的运作情况-我们始终与所有像素的图像,不论工作,多少个对象,它是代表。由于图像的轮廓形式已经自然分割-划分成轮廓,有可能进行一个简单的标志形象的部分过滤。其中-轮廓方形,周长,广场周边方形的比例。因此,有足够的简单而有效的机制,初步过滤的部分图像。基本算法的二维的方法,作为一项规则,不规模不变(冲浪,过筛)或旋转(哈尔)。因此,实际上,他们工作在三维空间里出现更多的测量,因为有必要理清规模或旋转角度。作为CA的方法是不变的的规模和旋转这里等问题不存在(消除-uninvariance出发点,但我们认为有效的方法,对这种复杂的斗争更加低)。CA允许在一个渐进的方式来处理图像。这意味着我们可以在任何轮廓进行排序显示(例如,由方形或梯度界限,或在亮度等)。然后到治疗的第一个轮廓,并产生结果。剩下的轮廓处理在背景模式。这意味着,可为O(N),是一个模式识别算法的优良估计收到的第一项成果(,在许多应用为导向的的任务,有必要)。当轮廓是从承认对方的算法独立很容易tonbsp;并行。此外,算法非常简单,可以在图形处理器上执行。所有符合上述要求的揣测关注的轮廓handlings。当然,轮廓取得阶段不消失随时随地,它要求至少为O(n2)。然而,在实践中,这一阶段占据从一般的处理时间不超过10-20%。这些因素的人口基本上降低的计算复杂性的不断,在现代计算机的进步,CA可以很实时的算法。让我们的复杂度为O(N2)起来的原因。轮廓,事实上,是一维的对象。它是一个复数号码的载体。然而轮廓的数量的增长比例图像大小的方形。从这里也有复杂度为O(N2)。由此看来,很可能得出一个结论,性能增益的最有效的模式是一个初步的过滤轮廓计数减少。现在我们估计处理的复杂性,分别采取轮廓。在前面的部分,我们变得清晰,轮廓比较,它是要发现千里马ICF(公式7,8)。我们估计进行评估的复杂性。标产品需求为O(K)操作,其中K-等高线的长度。ICF的需要,应标产品的评价k评价生产。手段,ICF需求为O(K2)的评估。此外,考虑到比较云不是一个模板,模板设置模板轮廓的总时间可估计为imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_21_19.pngK-一个轮廓,长度和T-模板轮廓。它不是这样一个良好的估计。在后面的章节中,我们将与它斗争,我们将设法减少这个估计本质上是一个常数。共有,识别图像中的所有轮廓的复杂性使得:imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_21_20.png-N-线性图像大小,K-轮廓长度,T-计数模板。确定的第一个轮廓的复杂性(在逐行扫描模式):imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_22_21.png轮廓描述,因为它已经在前面的章节中,ICF的评价的复杂性是O(K2)。尽管的k-常数(统一的长度,我们考虑的轮廓进一步的胁迫过程),都是一样的,评价一个ICF-劳动力密集的过程。在k=30评价ICF是900乘以复数的操作。存在吨=1000模板,模板轮廓的需求约100万multiplyings复数。模板的快速搜索,有必要引入一定的特征轮廓的形状描述符。因此,密切彼此之间的轮廓应该有密切的描述。它会拯救我们的评估程序,每个模板ICF轮廓。将仅比较描述符,如果他们接近-只有在这种情况下足够-计算ICF。比较描述符的要快。理想的情况下,一个数字应该是一个描述符。不幸的是,在文献中,我没有发现明确的论述,描述一个轮廓的形状合适描述。然而,这样的描述符存在。在第一部分中,我们明确地考虑自相关函数的属性。在同一个地方,我们,标志着invariantlyACF的换位,旋转,缩放和出发点的选择。此外,在ACF是一个轮廓的功能,而不是两个,作为ICF。从它出发,可以选择在ACF的轮廓形状的描述。密切的轮廓将始终密切值ACF的。imgsrc=http://www.orcode.com/upimg/2012_01_27_15_03_18_10.gif注:ACF的是一个轮廓的形状描述符。比较两个ACF的复杂度为O(K),已大大超过O(K2)更好地为ICF。此外,我们还记得,ACF的,因为对称性的定义,其他两次降低评价的时间间隔从0到K/2。如果模板的基础上存储他们的ACF,寻找轮廓的模板,通过比较在ACF,使O(KT)。这已经是很好的估计。但也给我们这是要精。对于比较一个ACF的时间减少,我申请一个ACF的小波卷积。我会省略这一过程的描述,它是可以看看它的源代码。的标志以下内容:ACF的,比较一般,没有保存的thenbsp我们一个ICF的评价的必要性。ICF的国家只有一个轮廓亲近的确切估计。ACF的,一般情况下,可以为各种轮廓相吻合。但是,因此,初步选择一个ACF的模板,基本上缩小候选人数比较上的ICF。在某些情况下,比较在ACF可以够识别的轮廓。如果在搜索与简单的几何形状的图像标记,和失败表彰的概率是没有必要的,它是可以省略的一个ICF的比较过程,有限制只卷积比较ACF的。这样的算法,给出了最大的系统性能。均衡的轮廓,因为它已经被标记在第一部分中,CA方法假定相同长度的轮廓。在真实的图像轮廓任意长度。因此,轮廓的搜索和比较,他们都应该统一长度。这个过程被称为均衡。首先,我们解决一个VC,我们将在我们的识别系统使用的长度。我们指定它K.然后,为每个初始轮廓,我们创建矢量轮廓长度K.ñ此外可能两个变种-或初始轮廓大于K数的EV,或更小的数量比K.如果初始轮廓更有必要理清其EV,我们认为元素N为所有电动车的总的,如下(C#):codeprelang="cs"Complex[]newPoint=spanclass="code-keyword"new/spanComplex[newCount];spanclass="code-keyword"for/span(spanclass="code-keyword"int/spani=spanclass="code-digit"0/span;i


中国
我是一名编程爱好者,
谢谢www.orcode.com为我们提供一个学习和分享的平台。
有什么问题。可以就本内容回复,我看到时。会尽量回复的。
会员8035367
评论会员:游客 时间:2012/01/27
祝贺获奖外部组件抛出的异常。当我编译它给上述错误。我怎样才能解决这个错误。我试着用很多方法,但没有得到解决。相机工作正常。请帮助我。谢谢
帕维尔Torgashov
评论会员:游客 时间:2012/01/27
。嗨检查是否有OpenCV的库文件夹中的项目。库OpenCV的也许不适合你的平台。我这个项目下的windows7x86的测试
会员8035367
评论会员:游客 时间:2012/01/27
您好先生,我的操作系统是WindowsXPSP3中的VisualStudio2010专业版。所有OpenCV的库也项目directory.Still它不工作
帕维尔Torgashov
评论会员:游客 时间:2012/01/27
尝试与下一行创建文件ContourAnalysisDemo.exe.config:codeprelang="HTML"spanclass="code-keyword"</spanspanclass="code-leadattribute"configuration/spanspanclass="code-attribute"<startup/spanspanclass="code-attribute"<supportedRuntime/spanspanclass="code-attribute"version/spanspanclass="code-keyword"="/spanspanclass="code-keyword"v4.0"/spanspanclass="code-keyword"//spanspanclass="code-attribute"/spanspanclass="code-keyword"<//spanspanclass="code-leadattribute"startup/spanspanclass="code-attribute"</spanspanclass="code-keyword"//spanspanclass="code-attribute"configuration/span/pre/code哇!谢谢。谢谢。codeprelang="sharp"spanclass="code-keyword"public/spanPointFSourceBoxCenter;spanclass="code-keyword"public/spanSizeFSourceBoxSize;spanclass="code-keyword"public/spanspanclass="code-keyword"float/spanSourceBoxAngle;/pre/code codeprelang="c#"spanclass="code-keyword"int/spanmaxArea=frameWidth*frameHeight;/pre/code
 文章分类
 桌面
 网页开发
 移动开发
 数据库
 多媒体
 编程语言
 平台,框架和库
 编程通用
 图形/设计
 开发周期
 一般阅读
 第三方产品
 作者资源
 其他
快速解答标签
c x 6850
VC x 7405