一种边窗滤波高动态红外图像增强IP核及数据处理方法与流程
未命名
09-08
阅读:159
评论:0

一种边窗滤波高动态红外图像增强ip核及数据处理方法
技术领域
1.本发明涉及红外图像增强加速技术领域,具体涉及基于fpga的边窗滤波高动态红外图像增强ip核及数据处理方法。
背景技术:
2.近年来,红外成像技术已广泛应用于航空、航天以及民用等领域。嵌入式计算平台对原始红外图像细节增强过程有较高的处理速度和功耗要求,对算法的高效部署提出了挑战。
3.所以亟需通过利用fpga的高并发特性,设计红外图像增强算法的硬件ip(intellectual property,知识产权)核实现算法的加速,用最低的资源消耗,达到较高的处理性能。
技术实现要素:
4.为解决上述技术问题,本发明提供的一种边窗滤波高动态红外图像增强ip核,其中ip核基于利用fpga的高并发特性设计实现,同时实现对红外图像细节增强的高效处理,包括图像行缓存模组、边窗滤波模组、自适应平台直方图模组、边缘信息增强模组、加权融合量化模组;
5.图像行缓存模组,用于对输入红外图像进行更新和缓存,更新三个最新的一行像素和缓存一个三行像素,同时对输入图像的顶部和底部边缘、左侧和右侧边缘进行填充以维持图像输入时的大小,输出一个三行像素和三个一行像素,其中一个三行像素和一个一行像素发送至边窗滤波模组,另外两个一行像素分别发送至自适应平台直方图模组和边缘信息增强模组;
6.边窗滤波模组,用于对所述图像行缓存进行双边滤波处理,将原始红外图像分解为基础分量和权重,并发送至边缘信息增强模组;
7.自适应平台直方图模组,用于对所述图像行缓存进行自适应阈值的平台直方图压缩,得到i
bp
,并发送至加权融合量化模组;
8.边缘信息增强模组,用于对细节分量进行自适应增强,得到i
dp
,并发送至加权融合量化模组;
9.加权融合量化模组,用于对i
bp
和i
dp
进行加权融合,并量化到8bit动态范围输出。
10.在本发明的一个实施例中,ip核还包括值域查找表缓存模组,所述值域查找表缓存模组,用于将值域查找表从外部存储读取到内部缓存中,并发送至边窗滤波模组。
11.在本发明的一个实施例中,所述边窗滤波模组包括:双边滤波器模块、外部基础分量/权重缓存器模块;
12.其中双边滤波器模块,用于对所述图像行缓存进行双边滤波处理,将原始红外图像分解为基础分量和权重,并发送至外部基础分量/权重缓存器;
13.外部基础分量/权重缓存器模块,用于缓存上一帧的基础分量、权重,并发送至边
缘信息增强模组。
14.在本发明的一个实施例中,自适应平台直方图模组包括:直方图统计模块、直方图内部缓存模块、累计直方图模块、直方图映射模块;
15.所述直方图统计模块,用于对所述图像行缓存进行直方图统计,并发送至直方图内部缓存模块;
16.所述直方图内部缓存模块,用于缓存上一帧的直方图,并发送至累计直方图模块;
17.所述累计直方图模块,用于统计有效灰度级像素个数,约束灰度级像素个数上限,计算累计直方图,根据有效灰度级像素个数计算直方图映射范围,并发送至直方图映射模块;
18.所述直方图映射模块,用于对所述图像行缓存和直方图映射范围,进行直方图映射,并发送至加权融合量化模组。
19.本发明还提供一个实施例,一种基于fpga的边窗滤波高动态红外图像增强ip核设计框架中数据处理方法,基于上述的增强ip核逻辑结构布置,包括如下步骤:
20.步骤s1:数据输入,将提取的红外图片像素输入到边窗滤波高动态红外图像增强ip核设计中;
21.步骤s2:输入ip核中图像行缓存模组,图像行缓存模组中更新和缓存行数据,并且对输入图像的顶部和底部边缘、左侧和右侧边缘进行填充以维持图像输入时的大小,输出四个行缓存,其中两个行缓存输入到边窗滤波模组,另外两个行缓存分别输入到自适应平台直方图模组和边缘信息增强模组;
22.步骤s3:输入两个行缓存,同时输入值域查找表和空域查找表,到边窗滤波模组,输出基础分量和权重到外部缓存;
23.步骤s4:输入从外部缓存的上一帧的基础分量和权重到边缘信息增强模组,输出处理后的细节分量到加权融合量化模组;
24.步骤s5:输入一个行缓存到自适应平台直方图模组,输出直方图映射后的基础分量到加权融合量化模组;
25.步骤s6:输入处理后的细节分量、直方图映射后的基础分量到加权融合量化模组,输出8bit图像增强的结果。
26.在本发明的一个实施例中,其中的图像行缓存模组、边窗滤波模组、边缘信息增强模组、加权融合量化模组、自适应平台直方图模组中直方图统计模块和直方图映射模块均基于fpga并行执行。
27.在本发明的一个实施例中,步骤s5中自适应平台直方图模组,分为如下步骤:
28.输入一个缓存行到直方图统计模组,输出h_p到内部缓存;
29.输入内部缓存的上一帧h_p和缓存的一行像素,到累计直方图模块、直方图映射模块,输出直方图映射后的基础分量到加权融合量化模组。
30.本发明的上述技术方案相比现有技术具有以下优点:本发明所述的红外图像增强ip核及数据处理方法,具有以下有益效果:
31.采用对图像行缓存模组、边窗滤波模组、边缘信息增强模组、加权融合量化模组、自适应平台直方图模组中的统计直方图、直方图映射并行执行,极大减少计算时间;
32.采用流水线的并行计算方式,提高了运算速率;
33.本发明在具体实现中可采用ip使用高层次综合(high level synthesis,hls)工具进行开发,可将c/c++代码先转换为verliog/vhdl代码,再将verliog/vhdl代码综合实现成特定电路。所有的配置信息都放入头文件中,以参数形式进行配置修改,具备灵活性。
附图说明
34.为了使本发明的内容更容易被清楚的理解,下面根据本发明的具体实施例并结合附图,对本发明作进一步详细的说明。
35.图1是本发明基于fpga的边窗滤波高动态红外图像增强ip核的设计结构框图。
36.图2是本发明所述ip核综合资源图;
37.图3是本发明所述ip核控制接口工作时序图;
38.图4是本发明所述ip核控制接口生成图;
39.图5是本发明所述ip核启动开始输入数据时仿真结果图;
40.图6是本发明所述ip核结束仿真结果图。
具体实施方式
41.如图1所示,本实施例提供一种基于fpga的边窗滤波高动态红外图像增强ip核设计框架中数据处理方法,基于上述的增强ip核逻辑结构布置,包括如下步骤:
42.步骤s1:数据输入,将提取的红外图片像素输入到边窗滤波高动态红外图像增强ip核设计中;
43.步骤s2:输入ip核中图像行缓存模组,图像行缓存模组中更新和缓存行数据,并且对输入图像的顶部和底部边缘、左侧和右侧边缘进行填充以维持图像输入时的大小,输出四个行缓存,其中两个行缓存输入到边窗滤波模组,另外两个行缓存分别输入到自适应平台直方图模组和边缘信息增强模组;
44.步骤s3:输入两个行缓存,同时输入值域查找表和空域查找表,到边窗滤波模组,输出基础分量和权重到外部缓存;
45.步骤s4:输入从外部缓存的上一帧的基础分量和权重到边缘信息增强模组,输出处理后的细节分量到加权融合量化模组;
46.步骤s5:输入一个行缓存到自适应平台直方图模组,输出直方图映射后的基础分量到加权融合量化模组;
47.步骤s6:输入处理后的细节分量、直方图映射后的基础分量到加权融合量化模组,输出8bit图像增强的结果。
48.步骤s5中自适应平台直方图模组,分为如下步骤:
49.输入一个缓存行到直方图统计模组,输出h_p到内部缓存;
50.输入内部缓存的上一帧h_p和缓存的一行像素,到累计直方图模块、直方图映射模块,输出直方图映射后的基础分量到加权融合量化模组。
51.其中的图像行缓存模组、边窗滤波模组、边缘信息增强模组、加权融合量化模组、自适应平台直方图模组中直方图统计模块和直方图映射模块均基于fpga并行执行。
52.而进一步地,对所有模组所有循环过程采用流水化方式实现资源的复用。
53.本发明中还提供一种边窗滤波高动态红外图像增强ip核,其中ip核基于利用fpga
的高并发特性设计实现,同时实现对红外图像细节增强的高效处理,包括图像行缓存模组、边窗滤波模组、自适应平台直方图模组、边缘信息增强模组、加权融合量化模组;
54.图像行缓存模组,用于对输入红外图像进行更新和缓存,更新三个最新的一行像素和缓存一个三行像素,同时对输入图像的顶部和底部边缘、左侧和右侧边缘进行填充以维持图像输入时的大小,输出一个三行像素和三个一行像素,其中一个三行像素和一个一行像素发送至边窗滤波模组,另外两个一行像素分别发送至自适应平台直方图模组和边缘信息增强模组;
55.边窗滤波模组,用于对所述图像行缓存进行双边滤波处理,将原始红外图像分解为基础分量和权重,并发送至边缘信息增强模组;
56.自适应平台直方图模组,用于对所述图像行缓存进行自适应阈值的平台直方图压缩,得到i
bp
,并发送至加权融合量化模组;
57.边缘信息增强模组,用于对细节分量进行自适应增强,得到i
dp
,并发送至加权融合量化模组;
58.加权融合量化模组,用于对i
bp
和i
dp
进行加权融合,并量化到8bit动态范围输出。
59.ip核还包括值域查找表缓存模组,所述值域查找表缓存模组,用于将值域查找表从外部存储读取到内部缓存中,并发送至边窗滤波模组。
60.所述边窗滤波模组包括:双边滤波器模块、外部基础分量/权重缓存器模块;
61.其中双边滤波器模块,用于对所述图像行缓存进行双边滤波处理,将原始红外图像分解为基础分量和权重,并发送至外部基础分量/权重缓存器;
62.外部基础分量/权重缓存器模块,用于缓存上一帧的基础分量、权重,并发送至边缘信息增强模组。
63.其中,所述双边滤波器模块的满足关系式:
64.ib=swf(i)
65.式中i为原始图像;ib为基础分量;swf()为边窗滤波;
66.k(i,j)=wr(i,j)/sum(wr)
67.式中:(i,j)为滤波窗口中心位置;sum(wr)为滤波核的权重之和;k(i,j)为待求比值系数。
68.所述直方图统计模块的满足关系式:
69.p(ik)=nk70.式中nk为灰度级,ik为像素的个数。
71.所述累计直方图模块,其中:
72.统计有效灰度级像素个数满足关系式:
73.f(i)=p(k),i=1,2,3
…
l
74.式中:p(k)为p中第i个不为零的值,l为p中不为零的个数;
75.图像直方图分布进行剪切,满足关系式:
[0076][0077]
式中:h(i)为剪切后直方图分布,th为平台直方图的限制阈值;
[0078]
累计直方图,满足关系式:
[0079][0080]
式中:n为剪切后像素总数。
[0081]
直方图映射模块的满足关系式:
[0082]ibp
=cdf(ib)
×
rb[0083]
式中:rb为输出动态范围,i
bp
为处理后的基础分量。
[0084]
边缘信息增强模块中的操作是,假定细节分量增益范围为a到b,在图像平坦区域设增益较低,避免噪声被过度放大,边缘区域设增益较高,增强边缘细节信息,满足以下关系式:
[0085]
g(i,j)=a+k(i,j)
·b[0086]
式中:g(i,j)为图像(i,j)点的细节分量自适应增益系数;
[0087]idp
=g
⊙
id[0088]
式中:i
dp
为处理后的细节分量;
⊙
为点乘操作。
[0089]
加权融合量化模块就是将处理后的基础分量和细节分量进行融合,本文采用加权线性融合方式,即:
[0090]iout
=ρ*i
bp
+(1-ρ)*i
dp
[0091]
式中:i
out
为输出结果;ρ为融合系数,本文中取值0.9时效果最佳。
[0092]
对所有模块所有循环过程采用流水方式(pipeline)实现资源的复用。
[0093]
自适应平台直方图模组包括:直方图统计模块、直方图内部缓存模块、累计直方图模块、直方图映射模块;
[0094]
所述直方图统计模块,用于对所述图像行缓存进行直方图统计,并发送至直方图内部缓存模块;
[0095]
所述直方图内部缓存模块,用于缓存上一帧的直方图,并发送至累计直方图模块;
[0096]
所述累计直方图模块,用于统计有效灰度级像素个数,约束灰度级像素个数上限,计算累计直方图,根据有效灰度级像素个数计算直方图映射范围,并发送至直方图映射模块;
[0097]
所述直方图映射模块,用于对所述图像行缓存和直方图映射范围,进行直方图映射,并发送至加权融合量化模组。
[0098]
如图2展示基于fpga的边窗滤波高动态红外图像增强ip核设计在xc7k325t-ffg900-2芯片上的资源占用情况。
[0099]
图4,以输入输出图像数据为例,当instream_img_v_v_read和instream_img_v_v_empty_n信号同时为高时,输入instream_img_v_v_dout[15:0]为有效数据。最后的识别结果以单个数字形式输出,当outstream_img_v_v_write和outstream_img_v_v_full_n为高时,输出有效结果outstream_img_v_v_din[7:0]。
[0100]
图3中的接口为ip核的其余相关控制接口,各控制接口的工作时序,ap_ctrl_hs是默认的端口类型,首先是ap_clk为接入时钟,ap_rst为复位信号,为1时ip核开始工作。然后在ap_start为1时接受输入,同时ap_idle变为0表示ip核正在工作。完成计算以后,输出结果,同时ap_ready变为1代表可以接收下一次输入数据,ap_done变为1表示此次ip核的计算
操作已经完成。
[0101]
对该ip核进行前仿真可以确保功能的正常。仿真可以使用vivado自带的simulation功能,通过自行编写testbench文件模拟时钟输入激活ip核,同时将图片数据预存在bram里面输入到ip核进行运算,ip核启动时相关信号开始变化,可以看到各控制信号按照图3时序进行启动,并且在instream_img_v_v_read信号有效时读取图片数据。
[0102]
如图5所示,ip核启动开始输入数据时仿真结果图中ip核刚启动时,首先lut_wr_inp_v_ce0为高电平,加载查找表lut_wr_inp_v_address0,查找表加载完成之后,在接收到instream_img_v_v_read、i_gin_stream_v_read、w_in_stream_v_read的高电平时,向instream_img_v_v_dout、i_gin_stream_v_dout、w_in_stream_v_dout赋值。
[0103]
如图6所示的ip核结束仿真结果图,ap_done变为1表示此次ip核的第一帧数据计算操作完成。
[0104]
本发明能在fpga上实现边窗滤波高动态红外图像增强的计算,在资源充足的情况下,使用高级逻辑综合生成xilinx公司各系列fpga芯片上可用的ip核,例如k系列、zynq7000系列、utral scale系列等,例如本实验在xc7k325t-ffg900-2芯片上,主频为200m的情况下单帧1280*1024分辨率16bit图片处理时间为13.92ms,和cpu处理耗时相比,大幅度提高了数据的处理速度。
[0105]
显然,上述实施例仅仅是为清楚地说明所作的举例,并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引申出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
技术特征:
1.一种边窗滤波高动态红外图像增强ip核,其中ip核基于利用fpga的高并发特性设计实现,其特征在于,包括图像行缓存模组、边窗滤波模组、自适应平台直方图模组、边缘信息增强模组、加权融合量化模组;图像行缓存模组,用于对输入红外图像进行更新和缓存,更新三个最新的一行像素和缓存一个三行像素,同时对输入图像的顶部和底部边缘、左侧和右侧边缘进行填充以维持图像输入时的大小,输出一个三行像素和三个一行像素,其中一个三行像素和一个一行像素发送至边窗滤波模组,另外两个一行像素分别发送至自适应平台直方图模组和边缘信息增强模组;边窗滤波模组,用于对所述图像行缓存进行双边滤波处理,将原始红外图像分解为基础分量和权重,并发送至边缘信息增强模组;自适应平台直方图模组,用于对所述图像行缓存进行自适应阈值的平台直方图压缩,得到i
bp
,并发送至加权融合量化模组;边缘信息增强模组,用于对细节分量进行自适应增强,得到i
dp
,并发送至加权融合量化模组;加权融合量化模组,用于对i
bp
和i
dp
进行加权融合,并量化到8bit动态范围输出。2.根据权利要求1所述的增强ip核,其特征在于:ip核还包括值域查找表缓存模组,所述值域查找表缓存模组,用于将值域查找表从外部存储读取到内部缓存中,并发送至边窗滤波模组。3.根据权利要求1所述的增强ip核,其特征在于:所述边窗滤波模组包括:双边滤波器模块、外部基础分量/权重缓存器模块;其中双边滤波器模块,用于对所述图像行缓存进行双边滤波处理,将原始红外图像分解为基础分量和权重,并发送至外部基础分量/权重缓存器;外部基础分量/权重缓存器模块,用于缓存上一帧的基础分量、权重,并发送至边缘信息增强模组。4.根据权利要求1所述的增强ip核,其特征在于:自适应平台直方图模组包括:直方图统计模块、直方图内部缓存模块、累计直方图模块、直方图映射模块;所述直方图统计模块,用于对所述图像行缓存进行直方图统计,并发送至直方图内部缓存模块;所述直方图内部缓存模块,用于缓存上一帧的直方图,并发送至累计直方图模块;所述累计直方图模块,用于统计有效灰度级像素个数,约束灰度级像素个数上限,计算累计直方图,根据有效灰度级像素个数计算直方图映射范围,并发送至直方图映射模块;所述直方图映射模块,用于对所述图像行缓存和直方图映射范围,进行直方图映射,并发送至加权融合量化模组。5.一种基于fpga的边窗滤波高动态红外图像增强ip核设计框架中数据处理方法,基于上述的增强ip核逻辑结构布置,其特征在于:包括如下步骤:步骤s1:数据输入,将提取的红外图片像素输入到边窗滤波高动态红外图像增强ip核设计中;步骤s2:输入ip核中图像行缓存模组,图像行缓存模组中更新和缓存行数据,并且对输入图像的顶部和底部边缘、左侧和右侧边缘进行填充以维持图像输入时的大小,输出四个
行缓存,其中两个行缓存输入到边窗滤波模组,另外两个行缓存分别输入到自适应平台直方图模组和边缘信息增强模组;步骤s3:输入两个行缓存,同时输入值域查找表和空域查找表,到边窗滤波模组,输出基础分量和权重到外部缓存;步骤s4:输入从外部缓存的上一帧的基础分量和权重到边缘信息增强模组,输出处理后的细节分量到加权融合量化模组;步骤s5:输入一个行缓存到自适应平台直方图模组,输出直方图映射后的基础分量到加权融合量化模组;步骤s6:输入处理后的细节分量、直方图映射后的基础分量到加权融合量化模组,输出8bit图像增强的结果。6.根据权利要求5所述的数据处理方法,其特征在于:其中的图像行缓存模组、边窗滤波模组、边缘信息增强模组、加权融合量化模组、自适应平台直方图模组中直方图统计模块和直方图映射模块均基于fpga并行执行。7.根据权利要求5所述的数据处理方法,其特征在于:步骤s5中自适应平台直方图模组,分为如下步骤:输入一个缓存行到直方图统计模组,输出h_p到内部缓存;输入内部缓存的上一帧h_p和缓存的一行像素,到累计直方图模块、直方图映射模块,输出直方图映射后的基础分量到加权融合量化模组。
技术总结
本发明涉及一种边窗滤波高动态红外图像增强IP核,其中IP核基于利用FPGA的设计实现,包括图像行缓存模组、边窗滤波模组、自适应平台直方图模组、边缘信息增强模组、加权融合量化模组;图像行缓存模组更新三个最新的一行像素和缓存一个三行像素,同时对输入图像的顶部和底部边缘、左侧和右侧边缘进行填充以维持图像输入时的大小,输出一个三行像素和三个一行像素,其中一个三行像素和一个一行像素发送至边窗滤波模组,另外两个一行像素分别发送至自适应平台直方图模组和边缘信息增强模组。本发明在具体实现中可采用IP使用高层次综合工具进行开发,可将C/C++代码先转换为Verliog/VHDL代码,综合实现成特定电路。综合实现成特定电路。综合实现成特定电路。
技术研发人员:马紫羲 杨赟辉 刘丹 程虎 桑贤侦 杨希
受保护的技术使用者:中国电子科技集团公司第五十八研究所
技术研发日:2023.05.31
技术公布日:2023/9/6
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/