论文部分内容阅读
灰度共生矩(GLCM)属于纹理分析中的统计分析法。它通过计算图像中有一定距离和一定方向的两个像素之间的灰度相关性,对图像的所有像素进行调查统计,反映图像在方向、相邻间隔等的综合信息。 Haralick详细列举了14个灰度共生矩阵特征值,逆差矩是其中比较常用的特征值之一,它在纹理分析中应用很广。灰度共生矩阵的计算比较复杂,尤其是图像尺寸较大时,它的计算量较大,耗时比较长,影响了它在高实时性场合的应用。很多文献中都提到它的计算量大的问题,但是通常也只是通过降低灰度级的办法来减少灰度共生矩阵的计算量。因此,寻找灰度共生矩阵的快速计算方法一直是该领域科研人员研究的热点。论文从两种途径来加快特征值的计算过程,首先是寻找一种特征值快速计算的算法,然后基于硬件的加速来进一步的加速特征值的运算过程。 目前计算特征值比较好的算法是迭代计算。K.Heikkinen和 P.Vuorimaa利用迭代方法得出共生矩阵的两个特征值:均值和方差的迭代公式。但是对于均值和方差以外的几个特征值的计算,目前还没有很好的方法。 论文利用迭代方法实现了特征值中逆差矩的快速计算,推导出了它在水平和垂直方向上的快速计算公式,实现了不计算共生矩阵直接计算逆差矩的值,并在MATLAB的仿真环境下对公式进行了验证,结果表明迭代法确实大大提高了逆差矩的计算速度,对于越大的图像,它的优势就更明显。论文又在VC环境,进行了仿真研究。如果计算一幅大小为512×512的图像的特征值,公式法所用的时间是649.38秒,大约为10分钟,而迭代法所用时间只有33毫秒。为了达到图像实时处理,论文又利用GPU来完成逆差矩的计算。 CPU在处理计算密集型的实时应用中,运算速度往往无法满足用户的需求。当前的研究一般基于使用硬件如FPGA或DSP来对特征值进行快速计算。目前可编程图形处理器GPU(Graphics Processing Unit)的发展日益成熟,它专门为图形计算设计,在并行计算方面,比起CPU有明显的优势,并且提供了高度的可编程性。随着图形硬件并行性能的显著提升,GPU的运算能力在快速的提高。 本文把推导出的逆差矩的快速算法利用GPU的硬件加速特性,在OpenGL的运算环境下进行了仿真实现。论文对整个的计算流程进行了详细的介绍,增量的计算使用矩形纹理和浮点缓冲区的OpenGL扩展加以实现,采用汇编语言编程。显卡为GeForce8800GTS,滑动窗口尺寸为5×5,置换向量为(0,1)时,计算一幅大小为512×512的图像的逆差矩的时间只有11.6ms,为CPU计算时间的三分之一。论文对基于GPU和CPU计算的耗时进行了比较分析,得出计算速度提高的最主要原因是GPU并行性极大提高了增量的计算速度,也指出SAT问题是进一步提高计算速度要解决的关键问题。 论文最后利用GPU计算了一幅512×512瑕疵图像的逆差矩值,并通过多次渲染,实现了其中瑕疵区域的检测,最终得到了每秒37帧的检测速度,达到了图像实时处理。