一种基于FPGA的低缓存改进型直方图均衡方法及系统技术方案

技术编号:21915236 阅读:31 留言:0更新日期:2019-08-21 12:48
本发明专利技术公开了一种基于FPGA的低缓存改进型直方图均衡方法及系统,通过时分复用模块产生时分复用控制信号;缓存控制模块产生三个直方图统计支路缓存的时序控制信号;直方图缓存模块缓存三个支路的直方图统计结果;直方图合并累加模块进行三个支路直方图读取、求和并进行累加;灰度映射模块完成直方图结果到指定灰度范围的映射;灰度映射结果缓存模块缓存灰度映射结果;直方图均衡输出模块完成直方图均衡结果输出;本发明专利技术应用在可见光和红外图像增强预处理中,运行处理速度快,实时性好,耗费资源少,具有很高的应用价值。

A Low Cache Improved Histogram Equalization Method and System Based on FPGA

【技术实现步骤摘要】
一种基于FPGA的低缓存改进型直方图均衡方法及系统
本专利技术涉及一种基于FPGA的低缓存改进型直方图均衡方法及系统。
技术介绍
直方图均衡是利用图像直方图对图像对比度进行调整的方法,通常用来增加图像的全局对比度,但也可能会增加背景噪声的对比度并且降低有用信号的对比度,造成图像视觉效果失真,特别是在对红外图像进行处理时,传统的直方图均衡方法很容易造成图像噪声放大及失真等问题。
技术实现思路
本专利技术目的在于提供一种基于FPGA的低缓存改进型直方图均衡方法,解决以往方法中噪声放大、图像失真及细节丢失等问题。有鉴于此,本专利技术提供的技术方案是:一种基于FPGA的低缓存改进型直方图均衡方法,其特征在于,该方法的具体步骤为:产生时分复用控制信号;根据输入的时分复用控制信号产生三个直方图统计支路缓存的时序控制信号;缓存三个支路的直方图统计结果;进行三个支路直方图读取、求和并进行累加;进行直方图结果到指定灰度范围的映射;缓存灰度映射结果;完成直方图均衡结果输出。进一步地,所述产生三路时分复用控制信号包括:首先,从缓存RAM读取之前的统计结果,然后,将读取的统计结果加1得到新的统计结果,最后,将新的统计结果写入缓存RAM。进一步地,所述根据输入的时分复用控制信号产生直方图统计结果缓存RAM的写使能信号wea、地址信号addra和数据信号dina,包括:时分复用控制信号有效时将输入图像数据赋给地址信号,完成RAM中数据读取;延时两个时钟周期后将RAM端口A输出douta加1作为数据信号;将时分复用控制信号延时两个时钟周期作为使能信号,同时判断douta是否大于TH_H,当douta大于TH_H,则关闭写使能信号,此处TH_H为直方图统计上限值,设定图像的宽为Img_Width,高为Img_Height,像素位宽为Pixel_Size,则TH_H为ε选取范围为4~128。进一步地,ε选取8。进一步地,所述缓存三个支路的直方图统计结果的步骤包括:调用IP核BlockMemoryGenerator,选用TrueDualPortRAM,A、B端口及读写端口配置均相同;位宽配置为ceil(log2(Img_Width×Img_Height×ε))-Pixel_Size,深度根据像素位宽配置为2Pixel_Size,操作模式选择ReadFirst,使能选择AlwaysEnabled。进一步地,所述进行三个支路直方图统计结果读取、求和及累加的步骤包括:步骤一,一帧直方图统计完成后,开始产生直方图缓存模块读时序控制信号,地址addrb从0累加到2Pixel_Size-1,同时B端口写使能web置为有效,B端口写数据dinb置为0,在读取三个支路直方图统计结果doutb1、doubt2、doutb3的同时清除缓存内数据,为下一帧直方图统计做准备;步骤二,求取三个支路直方图统计结果doutb1、doubt2、doutb3的和img_his,t将img_hist按如下算法进行上限保护得到img_hist_new。f(img_hist<TH_L)img_hist_new=0;elseif(img_hist>TH_H)img_hist_new=TH_H;elseimg_hist_new=img_hist;end其中TH_L为直方图下限,一般设为1或2,剔除噪声对直方图均衡结果的干扰;步骤三,完成灰度级从0~2Pixel_Size-1的直方图img_hist_new累加得到acc_img_hist,同时保存2Pixel_Size-1灰度级的累加结果Nval_nx,Nval_nx为总有效点数,按如下算法对Nval_nx进行保护得到Nval:if(Nval_nx<TH_H)Nval=TH_H;else。Nval=Nval_nx;end进一步地,所述进行直方图到指定灰度范围的映射包括:设定均衡图像位宽要求为Histeq_Size,将直方图结果由位宽Pixel_Size归一化映射到Histeq_Size,映射算法如下:Gray_Map=(2Histeq-1)×acc_img_hist/Nval首先将acc_img_hist低位补Histeq_Size个零再减去acc_img_hist得到分子,然后调用除法器求取直方图映射结果Gray_Map,最后将Gray_Map写入灰度映射结果缓存模块已供直方图均衡输出使用。进一步地,所述缓存灰度映射结果包括:调用IP核BlockMemoryGenerator,选用TDPRAM,A、B端口及读写端口配置均相同。位宽配置为Histeq_Size,深度根据像素位宽配置为2Pixel_Size,操作模式选择WriteFirst,使能选择UseEnaPin。进一步地,所述进行直方图均衡结果输出包括:根据输入的图像数据,将图像数据作为灰度映射结果缓存RAM的地址,灰度映射结果缓存RAM的输出。本专利技术的另一目的还在于提供一种基于FPGA的低缓存改进型直方图均衡系统,其特征在于,包括:时分复用模块、缓存控制模块、直方图缓存模块、直方图合并累加模块、灰度映射模块、灰度映射结果缓存模块和直方图均衡输出模块;时分复用模块,用于产生时分复用控制信号;缓存控制模块,用于产生三个直方图统计支路缓存的时序控制信号;直方图缓存模块,用于缓存三个支路的直方图统计结果;直方图合并累加模块,用于进行三个支路直方图读取、求和并进行累加;灰度映射模块,用于进行直方图结果到指定灰度范围的映射;灰度映射结果缓存模块,用于缓存灰度映射结果;直方图均衡输出模块,用于进行直方图均衡结果输出。至此,完成基于FPGA的低缓存改进型直方图均衡。本专利技术实现了以下显著的有益效果:实现简单,包括:产生时分复用控制信号;根据输入的时分复用控制信号产生三个直方图统计支路缓存的时序控制信号;缓存三个支路的直方图统计结果;进行三个支路直方图读取、求和并进行累加;进行直方图结果到指定灰度范围的映射;缓存灰度映射结果;完成直方图均衡结果输出。通过以上步骤在直方图统计时对噪声部分进行了抑制,在保留细节、避免失真的同时兼顾增加对比度。本专利技术应用在可见光和红外图像增强预处理中,运行处理速度快,实时性好,耗费资源少,具有很高的应用价值。附图说明图1是本专利技术的基于FPGA的低缓存改进型直方图均衡方法的流称图;图2是本专利技术的基于FPGA的低缓存改进型直方图均衡系统的结构示意图。具体实施方式以下结合附图和具体实施例对本专利技术作进一步详细说明,根据下面说明和权利要求书,本专利技术的优点和特征将更清楚。需要说明的是,附图均采用非常简化的形式且均适用非精准的比例,仅用以方便、明晰地辅助说明本专利技术实施例的目的。需要说明的是,为了清楚地说明本专利技术的内容,本专利技术特举多个实施例以进一步阐释本专利技术的不同实现方式,其中,该多个实施例是列举式而非穷举式。此外,为了说明的简洁,前实施例中已提及的内容往往在后实施例中予以省略,因此,后实施例中未提及的内容可相应参考前实施例。虽然该专利技术可以以多种形式的修改和替换来扩展,说明书中也列出了一些具体的实施图例并进行详细阐述。应当理解的是,专利技术者的出发点不是将该专利技术限于所阐述的特定实施例,正相反,专利技术者的出发点在于保护所有给予由本权利声明定义的精神或范围内进行的改进、等效替换和修改。同样的元本文档来自技高网...

【技术保护点】
1.一种基于FPGA的低缓存改进型直方图均衡方法,其特征在于,该方法的具体步骤为:产生时分复用控制信号;根据输入的时分复用控制信号产生三个直方图统计支路缓存的时序控制信号;缓存三个支路的直方图统计结果;进行三个支路直方图读取、求和并进行累加;进行直方图结果到指定灰度范围的映射;缓存灰度映射结果;完成直方图均衡结果输出。

【技术特征摘要】
1.一种基于FPGA的低缓存改进型直方图均衡方法,其特征在于,该方法的具体步骤为:产生时分复用控制信号;根据输入的时分复用控制信号产生三个直方图统计支路缓存的时序控制信号;缓存三个支路的直方图统计结果;进行三个支路直方图读取、求和并进行累加;进行直方图结果到指定灰度范围的映射;缓存灰度映射结果;完成直方图均衡结果输出。2.根据权利要求1所述的基于FPGA的低缓存改进型直方图均衡方法,其特征在于,所述产生三路时分复用控制信号包括:首先,从缓存RAM读取之前的统计结果,然后,将读取的统计结果加1得到新的统计结果,最后,将新的统计结果写入缓存RAM。3.根据权利要求2所述的基于FPGA的低缓存改进型直方图均衡方法,其特征在于,所述根据输入的时分复用控制信号产生直方图统计结果缓存RAM的写使能信号wea、地址信号addra和数据信号dina,包括:时分复用控制信号有效时将输入图像数据赋给地址信号,完成RAM中数据读取;延时两个时钟周期后将RAM端口A输出douta加1作为数据信号;将时分复用控制信号延时两个时钟周期作为使能信号,同时判断douta是否大于TH_H,当douta大于TH_H,则关闭写使能信号,此处TH_H为直方图统计上限值,设定图像的宽为Img_Width,高为Img_Height,像素位宽为Pixel_Size,则TH_H为ε选取范围为4~128。4.根据权利要求3所述的基于FPGA的低缓存改进型直方图均衡方法,其特征在于,ε选取8。5.根据权利要求3所述的基于FPGA的低缓存改进型直方图均衡方法,其特征在于,所述缓存三个支路的直方图统计结果的步骤包括:调用IP核BlockMemoryGenerator,选用TrueDualPortRAM,A、B端口及读写端口配置均相同;位宽配置为ceil(log2(Img_Width×Img_Height×ε))-Pixel_Size,深度根据像素位宽配置为2Pixel_Size,操作模式选择ReadFirst,使能选择AlwaysEnabled。6.根据权利要求5所述的基于FPGA的低缓存改进型直方图均衡方法,其特征在于,所述进行三个支路直方图统计结果读取、求和及累加的步骤包括:步骤一,一帧直方图统计完成后,开始产生直方图缓存模块读时序控制信号,地址addrb从0累加到2Pixel_Size-1,同时B端口写使能web置为有效,B端口写数据dinb置为0,在读取三个支路直方图统计结果doutb1、doubt2、doutb3的同时清除缓存内数据,为下一帧直方图统计做准...

【专利技术属性】
技术研发人员:吴志杰王群任小漩于明轩
申请(专利权)人:北京遥感设备研究所
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1