CN103530641A - 一种高速实时图像共生矩阵角二阶距的实现方法 - Google Patents
一种高速实时图像共生矩阵角二阶距的实现方法 Download PDFInfo
- Publication number
- CN103530641A CN103530641A CN201310467714.9A CN201310467714A CN103530641A CN 103530641 A CN103530641 A CN 103530641A CN 201310467714 A CN201310467714 A CN 201310467714A CN 103530641 A CN103530641 A CN 103530641A
- Authority
- CN
- China
- Prior art keywords
- occurrence matrix
- upgrade
- address
- image
- matrix
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Image Processing (AREA)
Abstract
本发明涉及一种高速实时图像共生矩阵(Gray Level Co-Occurrence Matrix)角二阶距实现方法。本发明利用灰度共生矩阵累次更新的特点,将平方操作转换为移位相加操作,并通过乒乓操作达到高速实现。本发明采用的图像共生矩阵角二阶距计算方法,有效降低迭代循环操作的次数,并使用移位相加操作实现平方操作,易于采用FPGA或者ASlC实现高速设计。
Description
技术领域
本发明涉及一种高速实时图像共生矩阵(Gray Level Co-OccurrenceMatrix)角二阶距实现方法,属于图像处理高速实现领域。
背景技术
图像的纹理是由灰度在空间位置上的反复出现而形成的。因此在图像空间中某种位置关系的两个像素灰度具有灰度关系。这种灰度关系称为图像中灰度的空间相关性。共生矩阵(GLCM)是由Haralick等人提出的,它的基本思想是利用纹理在灰度级的空间相关性,先根据图像像素间的方向和距离构造一个共生矩阵,再从共生矩阵中提取出有意义的统计数据作为图像的纹理特征。由于基于共生矩阵的纹理特征有明确的意义,并且易于计算,在图像处理分析中常被作为基本的特征之一。图像共生矩阵是图像上保持某距离的两像素二阶分布统计。图像灰度矩阵是已知的已经经过理论证明并且实验验证将图像的灰度信息转换为图像纹理信息较有效的方法。由于描述图像纹理的有效性,在遥感光学图像处理中有着广泛的应用。
在遥感光学图像处理应用中,虽然使用图像的灰度共生矩阵进行图像分类可以得到较高的分类精度,但是由于灰度共生矩阵的需要遍历整个图像块后才能完成统计,而其相应的特征值需要遍历整个灰度共生矩阵才能得到。所以,在工程实现中使用灰度共生矩阵表示图像的纹理特性均需要面临较大的计算延迟和较多的计算资源的问题。
在描述图像纹理特性时,灰度共生矩阵的角二阶距是比较重要的一个特征参数。角二阶距也称为能量,是灰度共生矩阵中各个元素的平方和。其反映了图像纹理灰度均匀变化的度量,描述了图像灰度分布均匀程度和纹理粗细程度。其计算公式为:其中P(i,j)为灰度共生矩阵的第i行,第j列的元素;M为灰度共生矩阵的行的个数和列的个数。
使用迭代更新将图像块中像素的遍历过程与灰度共生矩阵的遍历过程结合在一起,并使用移位相加代替平方操作可以有效的降低运算延迟和所需的资源,从而有效提高灰度共生矩阵角二阶距的计算速度,满足图像处理中对图像纹理特征实时运算的需求,具有非常重要的实现意义。
国内外关于灰度共生矩阵的非专利文献很多,但是都没有涉及使用迭代更新的方式合并两次循环遍历操作,或者论述多种不同的灰度共生矩阵的计算方法在图像纹理特性上的作用;或者是基于灰度共生矩阵在多种学科领用的实际使用。其中,论文《灰度共生矩阵的快速实现和优化方法研究术》中,北京航空航天大学自动化科学与电气工程学院郑红等提出一种快速计算共生矩阵的并行算法和并行体系结构。该方法利用图像像素之间计算的可并行性,设计了多个处理单元对多个像素进行并行计算,以实现共生矩阵的快速计算。这种并行计算的算法和并行操作的结构式专门针对嵌入式平台设计的,与本方法提出的迭代更新方法相异。这种并行计算的方法没有改变计算共生矩阵传统的两次迭代操作过程,而并行结构仅仅是利用嵌入式并行运算硬件结构实现多个运算单元的并行操作,与本方法改进遍历流程并将平方操作转换为移位相加运算不同。
专利申请号CN201110377349.3名称为《一种基于图像灰度共生矩阵的煤岩识别方法》的中国专利公开了一种使用灰度共生矩阵的相关特征参数识别煤岩的方法。但是该方法并没有就灰度共生矩阵具体的计算方法进行说明。
发明内容
本发明的技术解决问题是:克服现有技术的不足,提供了一种高速实时图像共生矩阵角二阶距的实现方法,针对目前星载图像预处理单元和图像分类单元的需求,本方法使用移位相加代替平方操作的方法实现了实时角二阶距的计算,减少了循环遍历次数,提高了图像处理效率。
本发明的技术解决方案:
一种高速实时图像共生矩阵角二阶距的实现方法,包括步骤如下:
(1)获取待处理图像,其大小为M×M的二维矩阵l,其中M为2的倍数,像素精度为PN比特,图像灰度共生矩阵G1大小为2N×2N,共生矩阵角二阶距值为ASM;
(2)参数初始化,初始化灰度共生矩阵G1的所有元素为0,初始化共生矩阵角二阶距值ASM为0,初始化图像矩阵行地址计算器i为0,列地址计算器j为0,初始化共生矩阵高位地址变量AH为0,初始化共生矩阵地址Addr为0,初始化共生矩阵元素值g1为0,初始化像素量化寄存值PreData和CurData为0,图像像素量化偏移量为PD=PN-N;
(3)判断一幅图像是否遍历处理完成,若j=M,则一幅图像已经完成遍历处理,进入步骤(14);否则一幅图像没有处理完成,则行地址计数器i更新为0,并进入步骤(4);
(4)读取待处理图像二维矩阵中第j列、第1行图像元素值l[0,j],并更新共生矩阵高位地址变量AH=l[0,j]>>PD、更新共生矩阵地址变量Addr为0、更新行地址计数器i=i+1以及更新PreData=l[0,j]>>PD;
(5)读取待处理图像二维矩阵中第i行、第j列图像元素值l[i,j],并更新共生矩阵高位地址变量AH=l[i,j]>>PD、更新共生矩阵地址变量Addr=PreData×2N+l[i,j]>>PD、更新像素量化寄存值CurData=l[i,j]>>PD;
(6)读取共生矩阵G1对应地址Addr的数据,并更新共生矩阵元素值g1=G1[Addr];
(7)计算共生矩阵角二阶距变量ASM=ASM+2×g1+1,并更新共生矩阵对应地址数据G1[Addr]=g1+1;
(8)读取图像二维矩阵中第i+1行、第j列的图像元素值l[i+1,j],并更新共生矩阵高位地址AH=l[i+1,j]>>PD、更新共生矩阵地址变量Addr=AH×2N+l[i+1,j]>>PD,并判断像素量化寄存值PreData、CurData是否相等并等于l[i+1,j]>>PD,若同时相等则进入步骤(10),否则进入步骤(9);
(9)读取共生矩阵G1对应地址Addr的数据,计算共生矩阵角二阶距变量ASM=ASM+2×g1+1,并更新共生矩阵对应地址数据G1[Addr]=g1+1,并进入步骤(11);
(10)读取共生矩阵G1对应地址Addr的数据,计算共生矩阵角二阶距变量ASM=ASM+2×g1+3,并更新共生矩阵对应地址数据G1[Addr]=g1+1,并进入步骤(11);
(11)更新PreData=l[i+1,j]>>PD、更新行地址计数器i=i+2,同时判断i是否等于M-1,若相等则进入步骤(12),否则进入步骤(5);
(12)读取图像矩阵第j列、第M-1行像素l[M-1,j],并更新共生矩阵地址变量Addr=AH×2N+l[M-1,j]>>PD;
(13)读取共生矩阵G1对应地址Addr的数据,即g1=G1[Addr],更新共生矩阵角二阶距变量ASM=ASM+2×g1+1,并更新共生矩阵对应地址数据G1[Addr]=g1+1。一列图像处理完成,更新列地址计数器j=j+1,并进入步骤(3);
(14)得到图像共生矩阵对应的角二阶距值:ASM=ASM/(M×M)。
本发明与现有技术相比的优点在于:
(1)本发明在对输入图像块进行像素遍历的同时通过迭代更新的方法即更新了灰度共生矩阵中的元素,又完成了灰度共生矩阵中元素的遍历,有效的提高了图像预处理的速度。
(2)本发明通过设置两个灰度共生矩阵存储空间的乒乓操作,使得在一个存储空间进行相应元素更新的同时,另一个存储空间完成空间初始化操作,有效节省了操作时间。
(3)本发明利用迭代更新操作后灰度共生矩阵中对应元素仅仅累加1的特性,将角二阶距计算中的平方操作转化为移位相加操作,有效的降低了运算资源的消耗。
(4)本发明算法简单,硬件实现占用资源少,易于采用FPGA或ASlC实现。
附图说明
图1为本发明方法流程图;
图2为本发明涉及到灰度共生矩阵生成方式;
图3为本发明图像分块及像素遍历方向;
图4为本发明灰度共生矩阵二阶距生成示意图;
具体实施方式
下面就结合附图对本发明具体实施方式作进一步介绍。
如图1所示,本发明一种高速实时图像共生矩阵角二阶距的实现方法,包括步骤如下:
(1)获取待处理图像,图像大小为M×M的二维矩阵l,其中M为2的倍数,像素精度为PN比特,图像灰度共生矩阵G1大小为2N×2N,其中N为正整数,共生矩阵角二阶距值为ASM;
(2)参数初始化,初始化灰度共生矩阵G1的所有元素为0,初始化共生矩阵角二阶距值ASM为0,初始化图像矩阵行地址计算器i为0,列地址计算器j为0,初始化共生矩阵高位地址变量AH为0,初始化共生矩阵地址Addr为0,初始化共生矩阵元素值g1为0,初始化像素量化寄存值PreData和CurData为0,图像像素量化偏移量为PD=PN-N;
(3)判断一幅图像是否遍历处理完成,若j=M,则一幅图像已经完成遍历处理,进入步骤(14);否则一幅图像没有处理完成,则行地址计数器i更新为0,并进入步骤(4);
(4)读取待处理图像二维矩阵中第j列、第1行(i=0)图像元素值(像素值)l[0,j],并更新共生矩阵高位地址变量AH=l[0,j]>>PD、更新共生矩阵地址变量Addr为0、更新行地址计数器i=i+1以及更新PreData=l[0,j]>>PD;
(5)读取待处理图像二维矩阵中第i行、第j列图像元素值l[i,j],并更新共生矩阵高位地址变量AH=l[i,j]>>PD、更新共生矩阵地址变量Addr=PreData×2N+l[i,j]>>PD、更新像素量化寄存值CurData=l[i,j]>>PD;
(6)读取共生矩阵G1对应地址Addr的数据,并更新共生矩阵元素值g1=G1[Addr];
(7)计算共生矩阵角二阶距变量ASM=ASM+2×g1+1,并更新共生矩阵对应地址数据G1[Addr]=g1+1;
(8)读取图像二维矩阵中第i+1行、第j列的图像元素值l[i+1,j],并更新共生矩阵高位地址AH=l[i+1,j]>>PD、更新共生矩阵地址变量Addr=AH×2N+l[i+1,j]>>PD,并判断像素量化寄存值PreData、CurData是否相等并等于l[i+1,j]>>PD,若同时相等则进入步骤(10),否则进入步骤(9);
(9)读取共生矩阵G1对应地址Addr的数据,计算共生矩阵角二阶距变量ASM=ASM+2×g1+1,并更新共生矩阵对应地址数据G1[Addr]=g1+1,并进入步骤(11);
(10)读取共生矩阵G1对应地址Addr的数据,计算共生矩阵角二阶距变量ASM=ASM+2×g1+3,并更新共生矩阵对应地址数据G1[Addr]=g1+1,并进入步骤(11);
(11)更新PreData=l[i+1,j]>>PD、更新行地址计数器i=i+2,同时判断i是否等于M-1,若相等则进入步骤(12),否则进入步骤(5);
(12)读取图像矩阵第j列、第M-1行像素l[M-1,j],并更新共生矩阵地址变量Addr=AH×2N+l[M-1,j]>>PD;
(13)读取共生矩阵G1对应地址Addr的数据,即g1=G1[Addr],更新共生矩阵角二阶距变量ASM=ASM+2×g1+1,并更新共生矩阵对应地址数据G1[Addr]=g1+1。一列图像处理完成,更新列地址计数器j=j+1,并进入步骤(3);
(14)得到图像共生矩阵对应的角二阶距值:ASM=ASM/(M×M)。
如图2所示,本发明所描述的共生矩阵角二阶距图像分块示意图和像素遍历顺序。本发明所描述的灰度共生矩阵的生成方向为90度(竖直方向),x方向的偏离为1,y方向的偏离为1,图像分块后像素按列遍历。
如图3所示,本发明图像分块与像素遍历方向。灰度共生矩阵的生成方向为90°(竖直方向),图像分成M×M块后,像素遍历的方向为按列竖直。一行最后一个像素与下一行第一个像素不构成共生矩阵像素对,即当一行像素遍历完成后,进行了M-1个像素对的统计。
共生矩阵描述的是图像中像素对的统计特征,如图4所示,共生矩阵中的元素与处理图像的像素对(Xi,j→Xi+1,j)一一对应。其中共生矩阵的地址由图像像素对值确定:行地址为像素样点Xi,j的量化值,列地址为像素样点Xi+1,j的量化值。在Xi,j,Xi+1,j不相等时,像素对(Xi,j→Xi+1,j)与(Xi+1,j→Xi,j)因为方向不同而不相同。
本发明未详细说明部分属本领域技术人员公知常识。
Claims (1)
1.一种高速实时图像共生矩阵角二阶距的实现方法,其特征在于步骤如下:
(1)获取待处理图像,图像大小为M×M的二维矩阵l,其中M为2的倍数,像素精度为PN比特,图像灰度共生矩阵G1大小为2N×2N,其中N为正整数,共生矩阵角二阶距值为ASM;
(2)参数初始化,初始化灰度共生矩阵G1的所有元素为0,初始化共生矩阵角二阶距值ASM为0,初始化图像矩阵行地址计算器i为0,列地址计算器j为0,初始化共生矩阵高位地址变量AH为0,初始化共生矩阵地址Addr为0,初始化共生矩阵元素值g1为0,初始化像素量化寄存值PreData和CurData为0,图像像素量化偏移量为PD=PN-N;
(3)判断一幅图像是否遍历处理完成,若j=M,则一幅图像已经完成遍历处理,进入步骤(14);否则一幅图像没有处理完成,则行地址计数器i更新为0,并进入步骤(4);
(4)读取待处理图像二维矩阵中第j列、第1行图像元素值l[0,j],并更新共生矩阵高位地址变量AH=l[0,j]>>PD、更新共生矩阵地址变量Addr为0、更新行地址计数器i=i+1以及更新PreData=l[0,j]>>PD;
(5)读取待处理图像二维矩阵中第i行、第j列图像元素值l[i,j],并更新共生矩阵高位地址变量AH=l[i,j]>>PD、更新共生矩阵地址变量Addr=PreData×2N+l[i,j]>>PD、更新像素量化寄存值CurData=l[i,j]>>PD;
(6)读取共生矩阵G1对应地址Addr的数据,并更新共生矩阵元素值g1=G1[Addr];
(7)计算共生矩阵角二阶距变量ASM=ASM+2×g1+1,并更新共生矩阵对应地址数据G1[Addr]=g1+1;
(8)读取图像二维矩阵中第i+1行、第j列的图像元素值l[i+1,j],并更新共生矩阵高位地址AH=l[i+1,j]>>PD、更新共生矩阵地址变量Addr=AH×2N+l[i+1,j]>>PD,并判断像素量化寄存值PreData、CurData是否相等并等于l[i+1,j]>>PD,若同时相等则进入步骤(10),否则进入步骤(9);
(9)读取共生矩阵G1对应地址Addr的数据,计算共生矩阵角二阶距变量ASM=ASM+2×g1+1,并更新共生矩阵对应地址数据G1[Addr]=g1+1,并进入步骤(11);
(10)读取共生矩阵G1对应地址Addr的数据,计算共生矩阵角二阶距变量ASM=ASM+2×g1+3,并更新共生矩阵对应地址数据G1[Addr]=g1+1,并进入步骤(11);
(11)更新PreData=l[i+1,j]>>PD、更新行地址计数器i=i+2,同时判断i是否等于M-1,若相等则进入步骤(12),否则进入步骤(5);
(12)读取图像矩阵第j列、第M-1行像素l[M-1,j],并更新共生矩阵地址变量Addr=AH×2N+l[M-1,j]>>PD;
(13)读取共生矩阵G1对应地址Addr的数据,即g1=G1[Addr],更新共生矩阵角二阶距变量ASM=ASM+2×g1+1,并更新共生矩阵对应地址数据G1[Addr]=g1+1,一列图像处理完成,更新列地址计数器j=j+1,并进入步骤(3);
(14)得到图像共生矩阵对应的角二阶距值:ASM=ASM/(M×M)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310467714.9A CN103530641B (zh) | 2013-09-30 | 2013-09-30 | 一种高速实时图像共生矩阵角二阶距的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310467714.9A CN103530641B (zh) | 2013-09-30 | 2013-09-30 | 一种高速实时图像共生矩阵角二阶距的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103530641A true CN103530641A (zh) | 2014-01-22 |
CN103530641B CN103530641B (zh) | 2016-08-17 |
Family
ID=49932638
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310467714.9A Active CN103530641B (zh) | 2013-09-30 | 2013-09-30 | 一种高速实时图像共生矩阵角二阶距的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103530641B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110378921A (zh) * | 2019-07-22 | 2019-10-25 | 江苏海洋大学 | 基于浮泥流变特性与灰度共生矩阵的航道底质层界智能识别方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080037845A1 (en) * | 2006-07-26 | 2008-02-14 | Yu Deuerling-Zheng | Accelerated image registration by means of parallel processors |
CN101650781A (zh) * | 2009-09-03 | 2010-02-17 | 中国人民解放军国防科学技术大学 | 指纹图像灰度规范化方法 |
CN102855484A (zh) * | 2012-07-30 | 2013-01-02 | 杭州士兰微电子股份有限公司 | 基于局部积分图像处理的目标检测方法、装置及系统 |
-
2013
- 2013-09-30 CN CN201310467714.9A patent/CN103530641B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080037845A1 (en) * | 2006-07-26 | 2008-02-14 | Yu Deuerling-Zheng | Accelerated image registration by means of parallel processors |
CN101650781A (zh) * | 2009-09-03 | 2010-02-17 | 中国人民解放军国防科学技术大学 | 指纹图像灰度规范化方法 |
CN102855484A (zh) * | 2012-07-30 | 2013-01-02 | 杭州士兰微电子股份有限公司 | 基于局部积分图像处理的目标检测方法、装置及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110378921A (zh) * | 2019-07-22 | 2019-10-25 | 江苏海洋大学 | 基于浮泥流变特性与灰度共生矩阵的航道底质层界智能识别方法 |
CN110378921B (zh) * | 2019-07-22 | 2023-03-14 | 江苏海洋大学 | 基于浮泥流变特性与灰度共生矩阵的航道底质层界智能识别方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103530641B (zh) | 2016-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | High accuracy digital image correlation powered by GPU-based parallel computing | |
US10424069B2 (en) | System and method for optical flow estimation | |
US20190035113A1 (en) | Temporally stable data reconstruction with an external recurrent neural network | |
DE102020130078A1 (de) | Systolische arithmetik an spärlichen daten | |
CN110637461B (zh) | 计算机视觉系统中的致密光学流处理 | |
Shan et al. | Hardware acceleration for an accurate stereo vision system using mini-census adaptive support region | |
CN102509071B (zh) | 光流计算系统和方法 | |
CN101841730A (zh) | 一种基于fpga的实时立体视觉实现方法 | |
Tomasi et al. | Massive parallel-hardware architecture for multiscale stereo, optical flow and image-structure computation | |
US9716875B2 (en) | Facilitating quantization and compression of three-dimensional graphics data using screen space metrics at computing devices | |
Komorkiewicz et al. | Efficient hardware implementation of the Horn-Schunck algorithm for high-resolution real-time dense optical flow sensor | |
Sui et al. | GPU-accelerated MRF segmentation algorithm for SAR images | |
WO2020125062A1 (zh) | 一种图像融合方法及相关装置 | |
Blachut et al. | Real-time efficient fpga implementation of the multi-scale lucas-kanade and horn-schunck optical flow algorithms for a 4k video stream | |
CN110651475B (zh) | 用于致密光学流的阶层式数据组织 | |
Jensen et al. | A two-level real-time vision machine combining coarse-and fine-grained parallelism | |
Cossell et al. | Concurrent dynamic programming for grid-based problems and its application for real-time path planning | |
Peng et al. | A high-speed feature matching method of high-resolution aerial images | |
CN103530641A (zh) | 一种高速实时图像共生矩阵角二阶距的实现方法 | |
Seo et al. | A new parallel hardware architecture for high-performance stereo matching calculation | |
Zhang et al. | A hardware-oriented histogram of oriented gradients algorithm and its VLSI implementation | |
CN103809937A (zh) | 一种基于gpu的通视并行处理方法 | |
Ralha et al. | Parallel refinement of slanted 3D reconstruction using dense stereo induced from symmetry | |
Jiang et al. | AdaptMVSNet: Efficient Multi-View Stereo with adaptive convolution and attention fusion | |
Wassenberg | Efficient algorithms for large-scale image analysis |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |