一种基于FPGA的图像数据降噪系统及方法

文档序号:25616267发布日期:2021-06-25 16:08阅读:214来源:国知局
一种基于FPGA的图像数据降噪系统及方法
一种基于fpga的图像数据降噪系统及方法
技术领域
1.本发明涉及一种图像处理领域,特别涉及一种基于fpga的图像数据降噪系统及方法。


背景技术:

2.目前,nlm(nonlocal mean缩写)算法,中文释义为非局部均值滤波算法,其采用非局部均值降噪模式,通过非局部邻域加权平均的方法去消除噪声,其权值根据以目标像素为中心的窗口和以周围像素为中心的若干窗口的相似性确定。根据图像自相似性的度量方式,该算法不但考虑到以目标像素为中心的固定大小的窗口图像块,还考虑到以与目标像素相似的周围像素为中心的同样大小的窗口图像块。nlm滤波消除了双边滤波只能在目标像素邻域寻找相似像素点的弊端,可以更好的测量像素间的相似性,不仅能更加有效地去除噪声,还能较好的保持图像中的原始信息。目前nlm算法在处理图像噪声时,因为图像数据量大,处理速度比较低,功耗比较大。
3.现场可编程门阵列(field programmable gate array,fpga)是一种可编程的半定制芯片,拥有基于查找表的逻辑资源和固定的硬件资源。算法在fpga上以纯硬件电路的形式实现,不受体系结构限制,因此在低功耗和低延时方面有优势。而且fpga还具有并行流水线技术和并行数据处理能力,可以大大减少数据处理延时,非常适合对数据流的实时处理。


技术实现要素:

4.本发明为了提高nlm算法的处理速度及降低功耗,而提供一种基于fpga的图像数据降噪系统及方法。
5.本发明为解决公知技术中存在的技术问题所采取的技术方案是:一种基于fpga的图像数据降噪系统,包括均由fpga构建的计数器模块、数据产生模块和计算模块;设待降噪图像数据为矩阵a;矩阵a中的元素a
ij
表示第i行第j列待降噪像素点;数据产生模块包括线路缓冲器单元,线路缓冲器单元将矩阵a中的元素数据按照从左至右、从上到下依次读取并缓存;线路缓冲器单元读取矩阵a中元素数据时,计数器模块同步对线路缓冲器单元读取的元素a
ij
的行、列进行计数,以及计数第一个被读取的元素数据在线路缓冲器单元中移位的次数,并将计数值分别输出至数据产生模块和计算模块;数据产生模块由待降噪像素点的行、列的计数值,确定该像素点的数据存储的地址,生成以该像素点为中心的周围像素点数据,并将生成的周围像素点数据输出至计算模块;计算模块,计算待降噪像素点的周围像素点的像素值加权和与权重和的比值,并将此比值作为该像素点降噪后的像素值输出。
6.进一步地,计数器模块包括列计数器、行计数器、总计数器、行计数器控制单元、列计数器控制单元、总计数器控制单元;
7.列计数器用于计数待降噪图像数据的列数;行计数器用于计数待降噪图像数据的行数;总计数器用于计数第一个被读取的元素数据在线路缓冲器单元中移位的次数;
8.列计数器控制单元,其采集每行数据的行有效信号的上升沿,并在时钟脉冲的上升沿发出触发信号对列计数器进行启动,其采集每行数据的行有效信号的下降沿,并在时钟脉冲的上升沿发出触发信号对列计数器进行复位;
9.行计数器控制单元,其采集当前图像的帧有效信号的上升沿,并在时钟脉冲的上升沿发出触发信号对行计数器进行启动,其采集当前图像的帧有效信号的下降沿,并在时钟脉冲的上升沿发出触发信号对行计数器进行复位;
10.总计数器控制单元,其采集帧有效信号的上升沿,并在时钟脉冲的上升沿发出触发信号对总计数器进行启动,其采集帧有效信号的下降沿,并在时钟脉冲的上升沿发出触发信号对总计数器进行复位。
11.进一步地,数据产生模块还包括用于存储对图像边界进行扩展所产生的像素点数据的数据拓展模块。
12.进一步地,计算模块包括依次连接的累加运算器、第一除法运算器及浮点数转定点数运算器,计算模块还包括若干组并行的计算子单元,每组计算子单元包括依次连接的减法运算器、平方运算器、定点数转浮点数运算器、第二除法运算器、指数运算器及乘法运算器;每组计算子单元的乘法运算器输出信号至累加运算器。
13.本发明还提供了一种利用上述的基于fpga的图像数据降噪系统的基于fpga的图像数据降噪方法,包括如下步骤:
14.步骤一,将待降噪图像数据的矩阵a,从左至右、从上到下以元素数据流形式依次输入到数据产生模块的线路缓冲器单元中,计数器模块同步对线路缓冲器单元读取的元素a
ij
的行、列进行计数,并计数矩阵a的第一个元素在线路缓冲器单元中的移位次数,以确定矩阵a中每个元素在线路缓冲器单元中所对应的存储地址;并产生以待降噪像素点为中心的正方形域内的周围像素点数据,以及生成数据输出触发信号;
15.步骤二,将待降噪像素点的周围像素点数据输入到计算模块中,用nlm算法得到每个周围像素点的窗口权重;
16.步骤三,计算模块根据窗口权重计算周围像素点数据的像素值加权和及权重和,其将像素值加权和与权重和的比值作为降噪后像素点的像素值。
17.进一步地,步骤二中,采用如下nlm算法得到每个周围像素点的窗口权重:
18.设k、n均为奇数,且k<n,设待降噪像素点为n
i
点,以n
i
点为中心选取n
×
n正方形区域,将此n
×
n的正方形区域定义为搜索范围,将位于搜索范围内的n
i
点以外的像素点定义为n
i
点的周围像素点;设n
j
点为n
i
点周围像素点中的任一个像素点;将k
×
k的正方形区域定义为计算窗口,设以n
i
点为中心选取的k
×
k正方形区域内的像素点为n
im
,m=1,2,3

k2,设以n
j
点为中心选取的k
×
k正方形区域内的像素点对应为n
jm
,m=1,2,3

k2,则n
j
点的权重计算公式如下:
[0019][0020][0021]
式中,v(n
im
)是像素点n
im
的灰度值;v(n
jm
)是像素点n
jm
的灰度值;w(i,j)是n
j
点的
权重;z(i)为归一化因子参数;h为控制权重的超参数。
[0022]
进一步地,先依次通过如下运算得到各周围像素点的加权像素值:减法运算、平方运算、定点数转浮点数运算、除法运算、指数运算、乘法运算;然后将各周围像素点的加权像素值进行累加运算,由累加运算得到周围像素点数据的像素值加权和及权重和,再依次通过除法运算以及浮点数转定点数运算得到降噪后像素点的像素值。
[0023]
进一步地,平方运算、定点数转浮点数运算、除法运算、指数运算、乘法运算、累加运算和浮点数转定点数运算均调用相应的运算器进行处理。
[0024]
进一步地,计算n
i
点降噪后的像素值的方法包括如下具体步骤:
[0025]
步骤1,将位于计算窗口对应位置的像素点n
im
的灰度值与像素点n
jm
的灰度值做比较,然后用较大的灰度值减去较小的灰度值;
[0026]
步骤2,调用乘法器,将步骤1得到的结果做平方运算;
[0027]
步骤3,调用定点数转浮点数运算器,将步骤2得到的定点数转化为浮点数;
[0028]
步骤4,调用除法运算,将步骤3得到的浮点数结果除以h的浮点数,得到窗口权重;
[0029]
步骤5,将步骤4得到的结果取负值,然后调用指数运算器进行指数运算;
[0030]
步骤6,调用乘法运算器,分批将窗口权重与已转为浮点数的n
i
点周围像素点的像素值相乘;
[0031]
步骤7,调用累加运算器,将步骤5的计算结果用8个时钟周期累加,求得n
i
点的周围像素点加权和;将步骤6的计算结果用8个时钟周期累加,求得n
i
点的周围像素点权重和;
[0032]
步骤8,调用除法运算器,将步骤7得到的n
i
点周围像素点加权和除以对应权重和,得到降噪后的n
i
点像素值;
[0033]
步骤9,调用浮点数转定点数运算器,将步骤8得到的浮点数转化为定点数输出。
[0034]
进一步地,对图像边界进行扩展,使位于图像边缘的待降噪像素点具有足够的周围像素点,扩展方法如下:以图像边缘处像素点的行或列为对称轴,对与图像边缘处像素点的行或列间像素宽度≤(n

1)/2的像素点做镜像处理,然后再对位于图像四角处的距离图像边缘像素宽度≤(n

1)/2的像素点,以对应的角点为中心做中心对称处理。
[0035]
本发明具有的优点和积极效果是:本发明的一种基于fpga的图像数据降噪系统,采用fpga构建,因为fpga具有并行流水线技术和并行数据处理能力,所以可大大减少数据处理延时,且fpga运行时功耗低,因此本发明的一种基于fpga的图像数据降噪系统,与现有的图像数据降噪系统相比,具有处理速度快且功耗低。
[0036]
当本发明的一种基于fpga的图像数据降噪系统采用100mhz的fpga构建时,采用本发明的系统及方法处理图像数据,与采用时钟频率为2500mhz的cpu处理图像数据相比,功耗降低88.3%,处理速度提升277.5倍,并且实现效果几乎与cpu相同。
附图说明
[0037]
图1是本发明的一种基于fpga的图像数据降噪系统结构示意图。
[0038]
图2是本发明的一种计数器模块结构示意图。
[0039]
图3是本发明的一种数据缓存模块结构示意图。
[0040]
图4是本发明的一种对位于图像边缘位置的待降噪像素点的周围像素点扩展示意图。
[0041]
图5是本发明的一种数据产生模块结构示意图。
[0042]
图6是本发明的一种计算模块工作流程示意图。
具体实施方式
[0043]
为能进一步了解本发明的发明内容、特点及功效,兹列举以下实施例,并配合附图详细说明如下:
[0044]
请参见图1至图6,一种基于fpga的图像数据降噪系统,包括均由fpga构建的计数器模块、数据产生模块和计算模块;设待降噪图像数据为矩阵a;矩阵a中的元素a
ij
表示第i行第j列待降噪像素点;数据产生模块包括线路缓冲器单元,线路缓冲器单元将矩阵a中的元素数据按照从左至右、从上到下依次读取并缓存;线路缓冲器单元读取矩阵a中元素数据时,计数器模块同步对线路缓冲器单元读取的元素a
ij
的行、列进行计数,以及计数第一个被读取的元素数据在线路缓冲器单元中移位的次数,并将计数值分别输出至数据产生模块和计算模块;数据产生模块由待降噪像素点的行、列的计数值,确定该像素点的数据存储的地址,生成以该像素点为中心的周围像素点数据,并将生成的周围像素点数据输出至计算模块;计算模块,计算待降噪像素点的周围像素点的像素值加权和与权重和的比值,并将此比值作为该像素点降噪后的像素值输出。即计算模块分别计算待降噪像素点的周围像素点的像素值加权和,以及待降噪像素点的周围像素点的权重和,将计算得到的像素值加权和与权重和两者相除,得到像素值加权和与权重和的比值,并将此比值作为该像素点降噪后的像素值输出。
[0045]
优选地,计数器模块可包括列计数器、行计数器、总计数器、行计数器控制单元、列计数器控制单元、总计数器控制单元。
[0046]
列计数器可用于计数待降噪图像数据的列数;行计数器可用于计数待降噪图像数据的行数;总计数器可用于计数第一个被读取的元素数据在线路缓冲器单元中移位的次数;
[0047]
列计数器控制单元,其可采集每行数据的行有效信号的上升沿,并可在时钟脉冲的上升沿发出触发信号对列计数器进行启动,其可采集每行数据的行有效信号的下降沿,并可在时钟脉冲的上升沿发出触发信号对列计数器进行复位。
[0048]
行计数器控制单元,其可采集当前图像的帧有效信号的上升沿,并可在时钟脉冲的上升沿发出触发信号对行计数器进行启动,其可采集当前图像的帧有效信号的下降沿,并可在时钟脉冲的上升沿发出触发信号对行计数器进行复位。
[0049]
总计数器控制单元,其可采集帧有效信号的上升沿,并可在时钟脉冲的上升沿发出触发信号对总计数器进行启动,其可采集帧有效信号的下降沿,并可在时钟脉冲的上升沿发出触发信号对总计数器进行复位。
[0050]
行有效信号是单bit位宽的脉冲信号,高电平为有效、低电平无效。图像数据以一行为一个单位进行连续出入,行与行之间有间隔,用行有效信号标记当前行像素数据的有效性。行有效信号与行像素数据同步对应,当有一行像素数据输出时,对应的行有效信号由低电平变为高电平;当该行数据输入完毕后,行有效信号由低变高。根据权利要求2所述的帧有效信号,帧有效信号是单bit位宽的脉冲信号,高电平为有效、低电平无效。图像数据以一帧为一个单位进行连续出入,帧与帧之间有间隔,用帧有效信号标记当前行像素数据的
有效性。帧有效信号与帧像素数据同步对应,当有一帧像素数据输出时,对应的行有效信号由低电平变为高电平;当该帧数据输入完毕后,行有效信号由低变高。其中,一帧图片即为一幅图片,包含多行图像数据。
[0051]
列计数器、行计数器、总计数器均为时钟边沿(上升沿或下降沿)触发的单元。列计数器采集到行有效信号上升沿时从0开始计数,每个时钟周期加1,当列计数器采集到的行有效信号下降沿时,计数停止,并在下一周期清零。行有效信号采集到帧上升沿时启动,从0开始当采集到行上升沿时加1,当采集到帧下降沿信号时停止计数,并在下一周期清零。列、行计数器产生的列数、行数信息会输入到数据产生模块,形成每一个像素的行、列位置信息。总计数器采集帧有效信号的上升沿和帧有效信号的下降沿,对应对总计数器进行启动和复位,当行有效信号为高时,总计数器从0开始每个周期加1,当行有效信号为低时停止计数,保持不变,当行有效信号再次为高时继续计数,直到采集到帧有效信号下降沿时,停止计数,并在下一周期清零。将总计数的计数信息输入到数据产生模块中产生数据输出有效信号。
[0052]
当总计数器的计数值达到某一数值时,说明像素数据流已经从上至下、从左至右到达某一位置。该位置即为数据可以输出的位置,当前像素点到达该位置时,以该像素点为中心将周围正方形区域的像素数据与该像素点数据一起输出,即完成一组搜索范围数据输出。
[0053]
行、列计数器数据记录对应像素的位置信息,以判断该像素是否处于边缘位置,若该像素不处于边缘位置,说明周围像素点数据满足计算需求的数据量,直接将搜索范围信息作为输出数据;若该像素处于边缘位置,说明周围像素点数据不满足计算需求的数据量。
[0054]
为使位于图像边缘的待降噪像素点具有足够的周围像素点,需要对图像边界进行扩展。数据产生模块还包括用于存储对图像边界进行扩展所产生的像素点数据的数据拓展模块。数据拓展模块用于存储在对图像边界进行扩展时生成的像素点数据,便于计算时单独读取,存取简便。
[0055]
计算模块可包括依次连接的累加运算器、第一除法运算器及浮点数转定点数运算器,计算模块还可包括若干组并行的计算子单元,每组计算子单元包括依次连接的减法运算器、平方运算器、定点数转浮点数运算器、第二除法运算器、指数运算器及乘法运算器;每组计算子单元的乘法运算器输出信号至累加运算器。
[0056]
上述的计数器、行计数器、总计数器、行计数器控制单元、列计数器控制单元、总计数器控制单元、累加运算器、第一除法运算器、第二除法运算器、浮点数转定点数运算器、减法运算器、平方运算器、定点数转浮点数运算器、指数运算器及乘法运算器等单元及模块,既可采用fpga构建,也可以在fpga结构基础上,采用常规技术手段与其他形式的芯片连接构建或者采用软件构建。
[0057]
本发明还提供了一种利用上述的基于fpga的图像数据降噪系统的基于fpga的图像数据降噪方法,可包括如下步骤:
[0058]
步骤一,可将待降噪图像数据的矩阵a,从左至右、从上到下以元素数据流形式依次输入到数据产生模块的线路缓冲器单元中,计数器模块可同步对线路缓冲器单元读取的元素a
ij
的行、列进行计数,并计数矩阵a的第一个元素在线路缓冲器单元中的移位次数,以确定矩阵a中每个元素在线路缓冲器单元中所对应的存储地址;并产生以待降噪像素点为
中心的正方形域内的周围像素点数据,以及生成数据输出触发信号;
[0059]
步骤二,可将待降噪像素点的周围像素点数据输入到计算模块中,用nlm算法得到每个周围像素点的窗口权重;
[0060]
步骤三,计算模块可根据窗口权重计算周围像素点数据的像素值加权和及权重和,其将像素值加权和与权重和的比值作为降噪后像素点的像素值。
[0061]
其中,步骤二中,可采用如下nlm算法得到每个周围像素点的窗口权重:
[0062]
可设k、n均为奇数,且k<n,可设待降噪像素点为n
i
点,以n
i
点为中心选取n
×
n正方形区域,可将此n
×
n的正方形区域定义为搜索范围,可将位于搜索范围内的n
i
点以外的像素点定义为n
i
点的周围像素点;可设n
j
点为n
i
点周围像素点中的任一个像素点;可将k
×
k的正方形区域定义为计算窗口,可设以n
i
点为中心选取的k
×
k正方形区域内的像素点为n
im
,m=1,2,3

k2,可设以n
j
点为中心选取的k
×
k正方形区域内的像素点对应为n
jm
,m=1,2,3

k2,则n
j
点的权重计算公式可如下:
[0063][0064][0065]
式中,v(n
im
)是像素点n
im
的灰度值;v(n
jm
)是像素点n
jm
的灰度值;w(i,j)是n
j
点的权重;z(i)为归一化因子参数;h为控制权重的超参数。超参数h一般取10000~20000。
[0066]
可先依次通过如下运算得到各周围像素点的加权像素值:减法运算、平方运算、定点数转浮点数运算、除法运算、指数运算、乘法运算;然后将各周围像素点的加权像素值进行累加运算,可由累加运算得到周围像素点数据的像素值加权和及权重和,再可依次通过除法运算以及浮点数转定点数运算得到降噪后像素点的像素值。
[0067]
平方运算、定点数转浮点数运算、除法运算、指数运算、乘法运算、累加运算和浮点数转定点数运算均可调用相应的运算器进行处理。即:平方运算调用平方运算器;平方运算调用平方运算器;定点数转浮点数运算调用定点数转浮点数运算器;除法运算调用除法运算器;指数运算调用指数运算器;乘法运算调用乘法运算器;累加运算调用累加运算器;浮点数转定点数运算调用浮点数转定点数运算器。
[0068]
计算n
i
点降噪后的像素值的方法可包括如下具体步骤:
[0069]
步骤1,将位于计算窗口对应位置的像素点n
im
的灰度值与像素点n
jm
的灰度值做比较,然后用较大的灰度值减去较小的灰度值;
[0070]
步骤2,调用乘法器,将步骤1得到的结果做平方运算;
[0071]
步骤3,调用定点数转浮点数运算器,将步骤2得到的定点数转化为浮点数;
[0072]
步骤4,调用除法运算,将步骤3得到的浮点数结果除以h的浮点数,得到窗口权重;
[0073]
步骤5,将步骤4得到的结果取负值,然后调用指数运算器进行指数运算;
[0074]
步骤6,调用乘法运算器,分批将窗口权重与已转为浮点数的n
i
点周围像素点的像素值相乘;
[0075]
步骤7,调用累加运算器,将步骤5的计算结果用8个时钟周期累加,求得n
i
点的周围像素点加权和;将步骤6的计算结果用8个时钟周期累加,求得n
i
点的周围像素点权重和;
[0076]
步骤8,调用除法运算器,将步骤7得到的n
i
点周围像素点加权和除以对应权重和,得到降噪后的n
i
点像素值;
[0077]
步骤9,调用浮点数转定点数运算器,将步骤8得到的浮点数转化为定点数输出。
[0078]
对图像边界进行扩展,使位于图像边缘的待降噪像素点具有足够的周围像素点,扩展方法可如下:以图像边缘处像素点的行或列为对称轴,对与图像边缘处像素点的行或列间像素宽度≤(n

1)/2的像素点做镜像处理,然后再对位于图像四角处的距离图像边缘像素宽度≤(n

1)/2的像素点,以对应的角点为中心做中心对称处理。
[0079]
也可以采用其他的图像边界扩展方法,使位于图像边缘的待降噪像素点具有足够的周围像素点。
[0080]
优选地,采用线路缓冲器单元存储数据产生模块生成的数据,数据存入线路缓冲器单元时,依次按从左至右顺序在第1行移位,当第1行写满数据后,第1行最右侧的数据移位至第2行的第一列存储位。同样按照从左至右的顺序继续在第2行移位,相当将第1行的数据依次移位至第2行;以此类推,每个时钟周期数据流动一次,直至将图像数据缓存至线路缓冲器单元。
[0081]
下面以本发明的一个优选实施例来进一步说明本发明的工作原理:
[0082]
图1是本发明的一种基于fpga的图像数据降噪系统结构示意图。其是将nlm算法采用fpga实现的一种整体电路架构,该系统实施例包括计数器模块、数据产生模块和计算模块。输入数据包括单bit位宽时钟信号、复位信号、帧有效信号、行有效信号和多bit位宽的像素信号。时钟信号、复位信号是系统自带的,帧有效信号、行有效信号和像素信号的是图像数据信号
[0083]
本实施例采用xilinx的zc706型fpga开发板,在100mhz时钟频率下处理分辨率为800
×
600的灰度图像。输入数据包括单bit位宽时钟信号、复位信号、帧有效信号、行有效信号和10bit位宽的像素信号。
[0084]
1)计数器模块
[0085]
图2为计数器模块示意图,该模块分为三个子模块:列计数器模块、行计数器模块和总计数器模块。其中,列计数器模块采集每行数据的行有效信号(高电平有效)的起始和末尾部分,以对列计数器进行启动和复位。同理,行计数器模块采集每帧图像的帧有效信号(高电平有效)的起始部分和末尾,以对行计数器进行启动和复位,并且采集行有效信号的起始部分进行计数。总计数器记录第一个像素的位置图像中的当前位置,以第一个行有效信号的起始作为计数器的开始,以最后一个行有效信号的末尾作为计数器的复位。
[0086]
2)数据产生模块
[0087]
本实施例采用linebuffer(线路缓冲器)结构,如图3所示,将数据流进行从左至右、从上到下的数据缓存,以产生对待降噪中心点进行处理所需要的周围像素点数据信息。图像边缘位置的点不能产生足够的周围像素点,本实施例通过当前待降噪像素点的行、列计数器值判断其位置,将处于边缘位置的待降噪点所在的区域以图像的四边做镜像对称,并将行、列同时不满足的区域再作对角线对称,如图4所示。
[0088]
图5为数据产生模块示意图,该模块将图像边缘拓展放到搜索数据产生之后。本示例采用21
×
21的数据搜索范围。具体处理过程如下,数据进入线路缓冲器组件构成的线路缓冲器单元中,按从左至右顺序在第0行流动,当第0行写满800个数据后,同样按照从左至
右的顺序将第0行的数据数据写到第1行,以此类推共写21行。其中,每个时钟周期数据流动一次,每行的缓存800个数。当第10行10列有数据输入时,即总计数为8011时,开始将数据第0至10行的第0至10列数据存入数据拓展模块对应地址中,并同时将数据做镜像处理,即完成第一个数据的范围输出。当像素的行数或列数小于10时,以所在行和列作为对称轴,做相应的数据拓展。当行数和列数,同时满足大于9、小于780时,数据拓展模块直接将第0至20行的第0至20列数据写入到数据拓展模块进行缓存。当数据的列数大于789或行数大于589时,数据拓展模块的数据处理方式与列数小于9、行数小于10的数据处理方式相同。
[0089]
3)对批量数据并行处理的计算模块
[0090]
从nlm算法的公式出发,设计计算模块的架构。式(1)为nlm算法的公式,即将待降噪点的周围像素点与其对应的权重值相乘,然后将所有乘积累加以得到降噪后的像素值。
[0091][0092]
其中,nl[v](i)是中心像素的加权估计值;v(j)是中心像素i的周围像素值;
[0093]
w(i,j)是j的权重,计算如式(2)。z(i)为归一化因子,即当前待降噪点的周围像素点权重之和,如式(3)。参数h为控制权重的超参数,α是高斯卷积核。出于资源和效果折中的考虑,本电路设计将α去掉,如式(4)和(5)。
[0094][0095][0096][0097][0098]
式中,v(n
i
)是像素点n
i
的灰度值;v(n
j
)是像素点n
j
的灰度值。
[0099]
本实施例根据式(4)和(5)以流水线形式按顺序做如下运算:减法运算、平方运算、定点数转浮点数运算、除法运算、指数运算、乘法运算、累加运算、除法运算和浮点数转定点数运算,如图6。其中除减法运算外均调用对应的运算器进行处理。
[0100]
对于参照权重的产生,以本实施例采用的21
×
21搜索范围和3
×
3计算窗口为例。即n=21,k=3。在搜索范围内,待降噪像素点与其他像素点的关系可以看作:以待降噪像素点为中心的3
×
3计算窗口;分别与以待降噪像素点的周围像素点为中心的3
×
3计算窗口,按对应关系做数据处理,即用441个数产生440组3
×
3的数据。
[0101]
在数据处理过程中,可以将440组数据同时做运算,也可以分成两批、四批或八批等延迟处理,以节省资源开销。本实施例将数据分成八批分别进行等待和处理,这样可以用每个像素7个时钟周期的延时去减少八分之七的资源开销。
[0102]
以上所述的实施例仅用于说明本发明的技术思想及特点,其目的在于使本领域内
的技术人员能够理解本发明的内容并据以实施,不能仅以本实施例来限定本发明的专利范围,即凡本发明所揭示的精神所作的同等变化或修饰,仍落在本发明的专利范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1