[图像] 二值图像的位置、朝向与投影

来源:互联网 发布:java 线程中断机制 编辑:程序博客网 时间:2024/05/19 11:36

        二值图像就是由0,1组成的图像。我们可以通过一些简单的计算获取图像的一系列信息。


       面积:

        所有1的总和


        位置:

        图像的位置一般由质心来表达,我们可以直接根据质心的定义来计算x轴方向和y轴方向的质心,然后得到中心(xm,ym)

        


        朝向:

        《机器视觉》一书给出的朝向的定义:

      

         在这里,我们需要求的事最小二阶矩所对应的轴。

         我们用一个点和直线与x轴的夹角来定义朝向所在的轴位置,首先我们经过推导可以得到:最小二阶矩对应的轴经过质心。

         接下来,我们只需求出夹角。

       

        其中:

        


        投影:

        简单而言,投影就是某个方向上,1的总和。


       在具体实现中,我们可以使用增量的思想来加速运算。我们知道在显示加载图像的时候,我们是用扫描线一行一行地加载图像的,所以我们可以在这个过程中计算一阶矩和二阶矩,进而计算二值图像的一些特征的值。

       matlab代码:

     

function twoValueImg(f)[m,n] = size(f);s = 0; %面积x1 = 0; % 一阶矩 x方向y1 = 0; % 一阶矩 y方向a = 0; % 二阶矩b = 0; % 二阶矩c = 0; % 二阶矩for i = 1:m    for j = 1:n        if(f(i,j)==1) % 增量思想            s = s + 1;            x1 = x1 + i;            y1 = y1 + j;            a = a + i*i;            b = b + i*j;            c = c + j*j;        end    endend


0 0
原创粉丝点击