图像或轮廓的Hu矩的定义优缺点适用范围,并利用OpenCV的函数HuMoments()和matchShapes()实现Hu矩的计算和轮廓匹配

Posted 昊虹图像算法

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了图像或轮廓的Hu矩的定义优缺点适用范围,并利用OpenCV的函数HuMoments()和matchShapes()实现Hu矩的计算和轮廓匹配相关的知识,希望对你有一定的参考价值。

本文承接博主的上一篇博文:
什么叫图像或轮廓的空间矩、中心矩、归一化中心矩?并利用OpenCV的类Moments计算轮廓的这几个矩和质心位置
继续介绍Hu矩的相关知识。

Hu矩是由二阶和三阶中心距计算得到七个不变矩,Hu矩具有旋转、平移和缩放不变性,因此在图像具有旋转和放缩的情况下Hu矩具有更广泛的应用领域。

在博主的上一篇博文中介绍了归一化的中心矩的计算式。我们回顾一下:

我们令 n u j i = η j i nu_ji=η_ji nuji=ηji ,则有Hu矩的七个矩的计算式如下:
h u [ 0 ] = η 20 + η 02 h u [ 1 ] = ( η 20 − η 02 ) 2 + 4 η 11 2 h u [ 2 ] = ( η 30 − 3 η 12 ) 2 + ( 3 η 21 − η 03 ) 2 h u [ 3 ] = ( η 30 + η 12 ) 2 + ( η 21 + η 03 ) 2 h u [ 4 ] = ( η 30 − 3 η 12 ) ( η 30 + η 12 ) [ ( η 30 + η 12 ) 2 − 3 ( η 21 + η 03 ) 2 ] + ( 3 η 21 − η 03 ) ( η 21 + η 03 ) [ 3 ( η 30 + η 12 ) 2 − ( η 21 + η 03 ) 2 ] h u [ 5 ] = ( η 20 − η 02 ) [ ( η 30 + η 12 ) 2 − ( η 21 + η 03 ) 2 ] + 4 η 11 ( η 30 + η 12 ) ( η 21 + η 03 ) h u [ 6 ] = ( 3 η 21 − η 03 ) ( η 21 + η 03 ) [ 3 ( η 30 + η 12 ) 2 − ( η 21 + η 03 ) 2 ] − ( η 30 − 3 η 12 ) ( η 21 + η 03 ) [ 3 ( η 30 + η 12 ) 2 − ( η 21 + η 03 ) 2 ] \\beginarrayl hu[0]= \\eta _20+ \\eta _02 \\\\ hu[1]=( \\eta _20- \\eta _02)^2+4 \\eta _11^2 \\\\ hu[2]=( \\eta _30-3 \\eta _12)^2+ (3 \\eta _21- \\eta _03)^2 \\\\ hu[3]=( \\eta _30+ \\eta _12)^2+ ( \\eta _21+ \\eta _03)^2 \\\\ hu[4]=( \\eta _30-3 \\eta _12)( \\eta _30+ \\eta _12)[( \\eta _30+ \\eta _12)^2-3( \\eta _21+ \\eta _03)^2]+(3 \\eta _21- \\eta _03)( \\eta _21+ \\eta _03)[3( \\eta _30+ \\eta _12)^2-( \\eta _21+ \\eta _03)^2] \\\\ hu[5]=( \\eta _20- \\eta _02)[( \\eta _30+ \\eta _12)^2- ( \\eta _21+ \\eta _03)^2]+4 \\eta _11( \\eta _30+ \\eta _12)( \\eta _21+ \\eta _03) \\\\ hu[6]=(3 \\eta _21- \\eta _03)( \\eta _21+ \\eta _03)[3( \\eta _30+ \\eta _12)^2-( \\eta _21+ \\eta _03)^2]-( \\eta _30-3 \\eta _12)( \\eta _21+ \\eta _03)[3( \\eta _30+ \\eta _12)^2-( \\eta _21+ \\eta _03)^2] \\\\ \\endarray hu[0]=η20+η02hu[1]=(η20η02)2+4η112hu[2]=(η303η12)2+(3η21η03)2hu[3]=(η30+η12)2+(η21+η03)2hu[4]=(η303η12)(η30+η12)[(η30+η12)23(η21+η03)2]+(3η21η03)(η21+η03)[3(η30+η12)2(η21+η03)2]hu[5]=(η20η02)[(η30+η12)2(η21+η03)2]+4η11(η30+η12)(η21+η03)hu[6]=(3η21η03)(η21+η03)[3(η30+η12)2(η21+ηyoucans 的 OpenCV 例程200篇198.基于不变矩的形状相似性检测

opencv计算两个轮廓之间hu矩相似程度,MatchShapes

图像识别基于不变矩的数字验证码识别含GUI界面

什么叫图像或轮廓的空间矩中心矩归一化中心矩?并利用OpenCV的类Moments计算轮廓的这几个矩和质心位置

图像识别基于不变矩的数字验证码识别含GUI界面

图像识别基于不变矩的数字验证码识别含GUI界面