图像区域特征

来源:互联网 发布:电脑c盘数据恢复 编辑:程序博客网 时间:2024/06/10 10:18

以 Halcon 里支持的 Region 特征为基础,做概念总结


形状特征

1)圆度(Circularity)
衡量一个形状接近圆的程度,取值为 [0, 1]

Circularity=π2

另一种算法是,统计边界点到中心的距离,根据方差反映圆度

Halcon 对应上面两种思路有相应的算子:circularity、roundness

2)紧密度(Compactness)
参考 wikipedia,衡量一个形状紧致程度,取值为 [0, 1],对于圆,紧密度为 1

Compactness=A22πi21+i22

其中A为形状面积,i1i2为二阶矩:i1=IJi2image(i,j)i2=IJj2image(i,j)

关于紧密度的一个比喻:用不同长度的绳子围成一个面积一定的区域,使用的绳子长度越短则紧密度越高。
           又由于圆的边缘没有转角,很光滑,因此紧密度又称为粗糙度

Halcon 对应的算子为 compactness

3)矩形度(Rectangularity)
参考《图像处理基本算法 形状特征》,衡量一个形状接近矩形的程度,取值为 [0, 1]

Rectangularity=AEr

其中A为形状面积,Er为最小外接矩阵面积

Halcon 对应算子为 rectangularity

4)凸性(Convexity)
参考文献【1】(顺便推荐作者关于凸性的研究主页),凸性的计算有很多种方法。这里介绍两种,第二种(Halcon用的这种)更为常见

定义1:对于二维形状S,在上面随机选择AB两个点,统计线段[AB]上落在S内的点的个数

定义2:对于二维形状S,令CH(S)为其最小外接凸形

Convexity=Area(S)Area(CH(S))

图1是CH(S)的一个示例

                 这里写图片描述
                      图1. 二维形状的外接凸形

Halcon使用算子 convexity 计算凸率;使用 shape_trans 转换区域为凸包/最小外接圆/外接矩形

5)偏心率(Eccentricity)
参考章毓晋的《图像工程》,介绍一种平移、旋转和尺度不变的算法

令三维形状的每个点坐标为(xi,yi,zi),每个点的质量(图像可以理解为灰度值)mi,有

Eccentricity=pq=2[(A+B)(AB)2+4H2]2[(A+B)+(AB)2+4H2]

其中A=mi(y2i+z2i)B=mi(z2i+x2i)H=mixiyi

Halcon 里是用其等效椭圆的长半轴除以短半轴计算的:eccentricity

6)蓬松度(Bulkiness)
参考Halcon13的文档,感觉跟紧密度相反,圆为1,越松散值越大

Bulkiness=πRaRbA

其中
Ra=8(M20+M02+(M20M02)2+4M211)2Rb=8(M20+M02(M20M02)2+4M211)2

其中Mij是二阶不变矩

Halcon13文档里有以上特征的描述及图例


区域特征

1)区域面积
就是像素点相加
但区域一般是用形成编码表示,累加每行的行程就可以

2)区域中心
中心点 y=yix=xi

3)区域几何矩
几何矩具有旋转、尺度不变性,应用在形状分类

mp,q=ypxq

=m0,0=y0x0
=(m1,0,m0,1)=(1y1x0,1y0x1)
=np,q=1ypxq
=μp,q=1(yn1,0)p,(xn0,1)q

4)等效椭圆
区域的方向和范围可以用等效椭圆来表示
等效椭圆的中心与区域中心一致,长半轴r1、短半轴r2和相对于x轴的夹角θ由二阶矩算出

r1=2(μ2,0+μ0,2+(μ2,0μ0,2)2+4μ21,1)

r2=2(μ2,0+μ0,2(μ2,0μ0,2)2+4μ21,1)

θ=12arctan2μ1,1μ0,2μ2,0

Halcon里对应的算子为 elliptic_axis()


【1】J. Zunic, P.L. Rosin, “A New Convexity Measure for Polygons”, IEEE Transactions Pattern Analysis and Machine Intelligence, vol. 26, no. 7, pp. 923-934, 2004.


原创粉丝点击