CN110197467A - 一种基于fpga图像透雾的优化系统 - Google Patents

一种基于fpga图像透雾的优化系统 Download PDF

Info

Publication number
CN110197467A
CN110197467A CN201910468849.4A CN201910468849A CN110197467A CN 110197467 A CN110197467 A CN 110197467A CN 201910468849 A CN201910468849 A CN 201910468849A CN 110197467 A CN110197467 A CN 110197467A
Authority
CN
China
Prior art keywords
image
value
module
pixel
dark
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.)
Pending
Application number
CN201910468849.4A
Other languages
English (en)
Inventor
周伟
王佳俊
张弘
王坤
吴梦尧
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201910468849.4A priority Critical patent/CN110197467A/zh
Publication of CN110197467A publication Critical patent/CN110197467A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/40Image enhancement or restoration using histogram techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/73Deblurring; Sharpening

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

本发明属于电子技术领域,具体涉及一种基于FPGA图像透雾的优化系统。可以增强图像透雾、提高图像对比度及提升算法处理效率。本发明包括图像采集模块、暗通道透雾模块、中值滤波模块、直方图均衡模块、图像插值放大和图像显示模块。具体步骤:采集的图像先进行以最小值滤波为基础的暗通道算法硬件化的处理,再针对去雾处理后图像存在噪声的问题,使用中值滤波模块来去除图像的椒盐噪声,直方图均衡模块用来提高图像的对比度和清晰度,在最后的图像插值放大模块可以缩放图像的大小比率,然后再显示图像。本发明具有设计效果好,调节便利,能较好的改善在有雾天气拍摄的图像画质不清晰的问题。

Description

一种基于FPGA图像透雾的优化系统
技术领域
本发明属于电子技术领域,具体涉及一种基于FPGA图像透雾的优化系统,可用于有雾视频图像的的优化处理。
背景技术
当图像采集系统拍摄有雾坏境时,得到的图像不仅清晰度下降,而且还会出现严重的颜色偏移和失真。一般去雾的算法大多数是基于软件处理,而且这些算法的复杂度较高、图像处理时间也比较漫长,这样就满足不了实时性的要求。由于FPGA可以进行流水线操作,而且具有良好的并行性易于系统模块化实现等特点,所以本发明采用基于FPGA暗通道硬件算法的方法来解决上述问题。
在计算机视觉中,一般采用下面数学模型来描述雾霾天气对图像造成的影响:I(x)=J(x)e-rd(x)+A[1-e-rd(x)]。其中I(x)为原来有雾图像,J(x)为暗通道处理后的图像,r为大气散射系数,d表示为景物深度,A表示为全局大气光。对于透射率表示为t(x)=e-rd(x),我们可以将原来的式子变为I(x)=J(x)t(x)+A[1-t(x)]。对于暗通道算法而言,无雾图像J(x)的至少有一个通道值会变得很低,趋于零,即:Jdark(x)=min[Jc(y)]=0。这式子可以改变为t(x)=1-min[Ic/Ac],其中Ic和Ac分别为暗通道处理后的清晰图像和全局大气光。
暗通道图像去雾算法中,对于图像每个像素由rgb三个颜色分量组成,这三个颜色分量的和为定值,而有雾图像的rgb三个通道的值差不多,但对于清晰无雾的图像总有一个颜色分量值非常低,这可以通过最小值滤波方式,再加以处理就可以得到暗通道的值。
而对于中值滤波,它是一种非线性平滑技术,它将每个像素点的的值设置为该点某邻域窗口内所有像素点灰度值的中间值,对于二维模板,通常为3*3、5*5区域,要对区域内的像素值进行排序,有冒泡排序法、快速排放法等等,这些方法都能找出模块中的中间值,从而替换比较异常的最大值噪点或者最小值暗点。中值滤波可以有效的去除椒盐噪声,使图像变得平滑。
直方图均衡的处理方式实质上是对图像进行非线性拉伸,重新分配图像的像素值,使一定会度范围内的像素值大致相等,这样可以让原来直方图中间的峰顶部分对比度得到增强,而两侧的谷底部分对比度降低。它在硬件中实现的方法一般为先读取一张图像各个像素值得频数,然后求出每个像素值在一帧像素中的出现的频率。再用之前的像素频率累加,得到各个灰度级的累计分布函数。很显然第一个灰度值为0,最后一个灰度值为1。这时累计分布函数的累计概率分别与最大像素值相乘即可得到直方图均衡处理后的图像。
发明内容
本发明针对背景技术存在的缺陷,提出了一种新的系统结构,从而有效提高有雾图像处理的时效性和准确性,显著降低硬件算法实现难度。针对有雾图像进行暗通道去雾处理,然后再用中值滤波、直方图均衡的图像处理方法提高图像的对比度和清晰度,最后通过图像插值方式对图像进行缩放,以上算法均在FPGA上实现。
图2所示为暗通道去雾算法模块,本发明对视频图像的每一帧像素分为rgb三个通道,分别对三个通道分别进行最小值滤波。图3所示的最小值滤波中,设置了3*3的窗口,需要对这九个像素取的最小值。针对九个像素一一比较使时间复杂度会增加的问题,本发明做出如下改进:在三行三列的窗口中,首先对每一行取最小值,再对每一行的最小值进行比较,这样并行计算会增加数据的计算效率,缩短处理时间。于是就得出每个颜色分量通道的最小值。然后再对着三个通道分量取最小值就可以得到一张图片暗通道的值。
求全局大气光。针对大气光计算复杂的问题,作出如下改进:首先设定一个阈值,对于暗通道处理后的值与这个阈值进行比较。当暗通道处理后的值大于这个阈值时,则保留原值;当小于这个阈值时,则舍弃。就这样取出的值与上一个值比较,得出每个通道的最大值,这样会降低算法复杂度和减少运算时间,从而快速得到全局大气光A。
图2所示的暗通道去雾模块计算透射率t(x):透射率的公式为t(x)=1-min[Ic/Ac]。在此基础上加一下参数因子w,使得公式变为:t(x)=1-w*min[Ic/Ac],其中参数因子小于1,这样避免图片曝光失真。另外由于在FPGA中带有小数的除法会加大计算的复杂度,所以本发明为了简化计算则令a=65536/A,这时t(x)变为t(x)=(1<<24)-Ic*(w0<<8)*a。这是为了避免小数计算左移24位的结果,需要再右移24位恢复原值,这样就可以得到更加优化的透射率t(x)。在求得全局大气光和透射率之后,根据z=(Ic-A)/t(x)+A,就可以求出我们所需要的去雾后的图像。
中值滤波硬件实现。针对暗通道处理后的视频图像可能会有椒盐噪声的出现,本发明在暗通道处理后增加中值滤波的方法来消除椒盐噪声。首先针对图像的像素再分为3*3的窗口,取这九个值的中间值作为中心像素值,对于取中间值,一般要对数据排序,比如:冒泡排序法,快速排序法等,但是以上的排序法时间复杂度比较高。针对以上排序方法比较复杂的问题,图4所示为本发明提出更加简便的排序方法:即在3*3窗口中,首先对每一列分别计算最大值,中间值和最小值。这样就得到每一列的最大值组,中值组以及最小值组。然后在最大值组中去最小值,中值组中取中间值,最小值组中去最大值,只比较这三个值,得出中间数即为该窗口九个数中的中间值。
图像线性插值放大。图5所示为采用二次线性插值算法进行图像缩放运算,这种算法将四个原图像像素作为一组,组成2*2模块,根据公式f(x,y)=p00*(1-u)*(1-v)+p01*u*(1-v)+p10*(1-u)*v+p11*u*v(其中,f(x,y)为放大后的像素数据,p00,p01,p10,p11为f(x,y)像素周边的四个像素的像素数据,u和v是f(x)到原图四个像素点的距离),就可以得到放大后的像素点。
对于2*2模块取法,本发明先将需要用到的原图像的三行数据预先从DDR中取出,分别缓存在三个ram中,当读取其中两行时,另一个ram进行写操作,从而避免同一个ram既读又写发生错乱。而在确定最终要读取哪两个ram中的数据时,可以根据图6所示的图像像素放大坐标映射规律图(Y轴方向)预先产生一个切换ram的sel信号进行切换选择,。而p00,p01,p10,p11(插值采样窗口)也需要在使用到的时候及时更新,也需要可预先产生一个切换插值采样窗口的flag信号存入rom中,来标志是否进行下一组数据的计算。
附图说明
图1是系统流程图。
图2是本发明提供的暗通道处理算法模块电路结构示意图。
图3是最小值滤波3*3模板的电路设计图。
图4是中值滤波计算方式示意图。
图5是双线性插值图像放大具体坐标映射示意图。
图6是本发明图像像素放大坐标映射规律图。
图7是双线性插值模块rgb三分量运算框图。
具体实施方式
如图2所示,针对相机采集的视频图像,根据格式把每个像素分为rgb三个通道,对每个颜色通道分别进行暗通道处理,先最小值滤波处理,如图3所示对于3*3最小值滤波模块,为了保证数据的对齐即每一行之间用行缓冲器FIFO进行缓冲,它能够让先输入的像素数据信号优先输出,通过流水线的方式进行传输,保证采集的数据顺序不混乱。两个缓冲器在三行之间同时工作(第一和第二行之间是FIFO1,第二和第三行之间是FIFO2)时,可以实现对前两行数据的缓冲。当第一行数据读进来是先写入FIFO1,然后当第二行数据来的时候,FIFO1的之前写入的第一行数据再写到FIFO2中,第二行数据写到FIFO1中。当第三行数据写进来的的时候,FIFO1和FIFO2同时输出数据,FIFO1数据输到FIFO2,FIFO2输出的数据准备开始处理,这时三行数据同时到达窗口,通过列延时截取每行数据的前三个数据,形成3*3的滤波窗口,从而进行最小值滤波。
在进行最小值滤波处理后,即求全局大气光。用比较器来比较暗通道处理后的像素值和阈值的大小关系。当像素值大于这个阈值时,则保留原值;当小于这个阈值时,则舍弃。就这样取出的值与上一个值比较,这样得出每个通道的最大值,即得到全局大气光A。
如图2所示在暗通道模块中计算透射率t(x):根据本发明透射率的公式为t(x)=1-w*min[Ic/Ac],w一般取0.92,另外调用除法器IP,设置位宽来计算则令a=65536/A,这时t(x)变为t(x)=(1<<24)-Ic*(w0<<8)*a。这是为了避免小数计算左移24位的结果,需要再右移24位恢复原值,这样就可以得到更加优化的透射率t(x)。在求得全局大气光和透射率之后,根据z=(Ic-A)/t(x)+A,调用除法器和加法器就可以求出我们所需要的去雾后的图像。
在图像完成去雾处理后,接下来就要优化一下图像的清晰度和对比度。先用中值滤波来消除椒盐噪声。在滤波模块中即取3*3的处理窗口(类似最小值滤波方式),对这九个值通过本发明之前所述的的排序方法来取中间值,该中间值即为窗口中心点的像素值。然后将图像进行直方图均衡处理,在直方图均衡中,将像素输入到地址中,一个地址存放某个特定的像素值,直到一帧图像结束为止。这样就可以得到了一个直方图,横坐标为像素值,纵坐标为对应该像素值的数量。然后用除法器将每个对应像素值的数量除以总的像素个数。这样就得到每个像素值的大小在一帧像素中的出现的频率。之后用加法器将之前的像素频率累加,得到各个灰度级的累计分布函数。这时累计分布函数的累计概率分别与最大像素值相乘即可得到直方图均衡处理后的图像。
如图5所示的图像插值可以将图像放大。在计算放大后像素的某一行数据时,必须要用原始图像的两行数据。所以在插值运算时,我们先将需要用到的原图像的三行数据预先从DDR中取出,分别缓存在开发板的三个ram中,而在确定最终要使用哪两个ram中的数据时,可以根据图像像素放大坐标映射规律图(Y轴方向)进行切换选择,这里可预先产生一个切换ram的flag信号,以便于选择哪两个ram的数据被读取,哪一个要读入数据。p00,p01,p10,p11(插值采样窗口)也需要在使用到的时候及时更新,在确定p00,p01,p10,p11的值时可以根据如图6所示的图像像素放大坐标映射规律图(X轴方向)进行切换选择,这里可预先产生一个切换插值采样窗口的flag信号存入rom中,如图7所示,求出的结果通过hdmi到电脑终端显示。

Claims (4)

1.一种基于FPGA图像透雾的优化系统,用于图像的透雾、提升图像画质、提高处理效率,该系统依次连接包括图像采集模块、暗通道透雾模块、中值滤波模块、直方图均衡模块、图像插值放大和显示模块。
2.如权利要求1所述一种基于FPGA图像透雾系统的优化,其特征在于,所述的暗通道去雾算法模块,将所述原视频图像每个像素分为rgb三个通道,其中对每个颜色通道分别进行暗通道处理,在该过程中,先进行最小值滤波处理,对3*3滤波窗口取最小值;在三行三列的窗口中,首先对每一行种数据分别进行比较得出每一行的最小值,然后把这些最小值再进行比较,得出每个窗口的最小值;之后对暗通道处理后的数据,再求各个通道的全局大气光,在这里和所设定的阈值进行比较,大于阈值保留,小于阈值舍去,这样重复比较前一个值和后一个值,取最大的值即为A的值,然后根据原图像的像素值和公式求出透射率,这时就可以求出暗通道处理后的图像。
3.如权利要求1所述的一种基于FPGA图像透雾系统的优化,其特征在于,所述的中值滤波模块有3*3窗口,求取这九个值中的中间值;首先对每一列分别计算最大值,中间值和最小值,这样就得到每一列的最大值组,中值组以及最小值组;然后在最大值组中取最小值,中值组中取中间值,最小值组中取最大值,只比较这三个值得出中间数,即为该窗口九个数中的中间值;采样窗口类似上述的最小值滤波模块,这样可以有效去除像素极大值噪点以及像素极小值暗点,使图像更平滑。
4.如权利要求1所述的一种基于FPGA图像透雾系统的优化,其特征在于,所述的图像插值放大模块可以将图像进行双线性插值放大,根据双线性插值公式f(x,y)=p00*(1-u)*(1-v)+p01*u*(1-v)+p10*(1-u)*v+p11*u*v可知,在计算放大后图像像素的某一行数据时,必须要用原始图像的两行数据;为了防止一个ram在读写时产生冲突,所以在插值运算时,先从DDR中将原图像的三行数据取出,分别缓存在FPGA的三个ram中,当读取第一二个ram里的数据时,第三个ram写入数据,准备下一次读取,这里要预先产生一个sel信号用来选择读取哪两个ram;而p00,p01,p10,p11插值采样窗口也需要在使用到的时候及时更新,在确定p00,p01,p10,p11的四个像素值时可以根据图像像素放大坐标映射规律图X轴方向来判断是否进行切换选择,这里预先产生一个切换插值采样窗口的flag信号存入rom中,从而进行双线性插值放大。
CN201910468849.4A 2019-05-31 2019-05-31 一种基于fpga图像透雾的优化系统 Pending CN110197467A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910468849.4A CN110197467A (zh) 2019-05-31 2019-05-31 一种基于fpga图像透雾的优化系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910468849.4A CN110197467A (zh) 2019-05-31 2019-05-31 一种基于fpga图像透雾的优化系统

Publications (1)

Publication Number Publication Date
CN110197467A true CN110197467A (zh) 2019-09-03

Family

ID=67753510

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910468849.4A Pending CN110197467A (zh) 2019-05-31 2019-05-31 一种基于fpga图像透雾的优化系统

Country Status (1)

Country Link
CN (1) CN110197467A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111681193A (zh) * 2020-06-12 2020-09-18 电子科技大学 一种基于fpga红外图像坏点修正系统的优化
CN112529802A (zh) * 2020-12-09 2021-03-19 电子科技大学 基于散射系数比估计的大气散射降质图像恢复方法
CN112785513A (zh) * 2020-08-25 2021-05-11 青岛经济技术开发区海尔热水器有限公司 一种用于过滤脉冲噪声的自适应中值滤波方法
CN112927156A (zh) * 2021-03-08 2021-06-08 电子科技大学 一种图像去雾系统及基于该系统的方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101894362A (zh) * 2010-07-05 2010-11-24 昆山龙腾光电有限公司 一种图像放大装置及方法
US20110188775A1 (en) * 2010-02-01 2011-08-04 Microsoft Corporation Single Image Haze Removal Using Dark Channel Priors
CN104751421A (zh) * 2015-03-10 2015-07-01 西安理工大学 一种在fpga上实现的图像去雾方法
CN105354806A (zh) * 2015-11-20 2016-02-24 上海熙菱信息技术有限公司 基于暗通道的快速去雾方法及系统
CN106910162A (zh) * 2017-02-07 2017-06-30 深圳市爱协生科技有限公司 基于fpga的图像缩放处理方法及装置
CN107341772A (zh) * 2017-05-26 2017-11-10 哈尔滨工业大学 一种基于fpga的灰度图像中值滤波优化方法及其系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110188775A1 (en) * 2010-02-01 2011-08-04 Microsoft Corporation Single Image Haze Removal Using Dark Channel Priors
CN101894362A (zh) * 2010-07-05 2010-11-24 昆山龙腾光电有限公司 一种图像放大装置及方法
CN104751421A (zh) * 2015-03-10 2015-07-01 西安理工大学 一种在fpga上实现的图像去雾方法
CN105354806A (zh) * 2015-11-20 2016-02-24 上海熙菱信息技术有限公司 基于暗通道的快速去雾方法及系统
CN106910162A (zh) * 2017-02-07 2017-06-30 深圳市爱协生科技有限公司 基于fpga的图像缩放处理方法及装置
CN107341772A (zh) * 2017-05-26 2017-11-10 哈尔滨工业大学 一种基于fpga的灰度图像中值滤波优化方法及其系统

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111681193A (zh) * 2020-06-12 2020-09-18 电子科技大学 一种基于fpga红外图像坏点修正系统的优化
CN112785513A (zh) * 2020-08-25 2021-05-11 青岛经济技术开发区海尔热水器有限公司 一种用于过滤脉冲噪声的自适应中值滤波方法
CN112785513B (zh) * 2020-08-25 2023-04-18 青岛经济技术开发区海尔热水器有限公司 一种用于过滤脉冲噪声的自适应中值滤波方法
CN112529802A (zh) * 2020-12-09 2021-03-19 电子科技大学 基于散射系数比估计的大气散射降质图像恢复方法
CN112529802B (zh) * 2020-12-09 2021-07-20 电子科技大学 基于散射系数比估计的大气散射降质图像恢复方法
CN112927156A (zh) * 2021-03-08 2021-06-08 电子科技大学 一种图像去雾系统及基于该系统的方法

Similar Documents

Publication Publication Date Title
CN110197467A (zh) 一种基于fpga图像透雾的优化系统
CN110148095B (zh) 一种水下图像增强方法及增强装置
CN108600725B (zh) 一种基于rgb-ir图像数据的白平衡校正装置及方法
KR100261214B1 (ko) 영상처리 시스템의 콘트라스트 확장장치에서 히스토그램 등화방법 및 장치
US11538175B2 (en) Method and apparatus for detecting subject, electronic device, and computer readable storage medium
US20030090593A1 (en) Video stabilizer
CN110555808B (zh) 一种图像处理方法、装置、设备及机器可读存储介质
CN109816608B (zh) 一种基于噪声抑制的低照度图像自适应亮度增强方法
JP2012165365A (ja) 適応フィルタリングを利用したデジタルイメージ安定化方法
JP2012168936A (ja) 動画処理装置及び動画処理方法
KR102182697B1 (ko) 영상 처리 장치 및 방법
CN110944176A (zh) 图像帧降噪方法和计算机存储介质
CN116402729A (zh) 一种基于双直方图均衡化的图像增强方法及系统
CN109961412A (zh) 一种视频帧图像去雾方法及设备
CN113706393A (zh) 视频增强方法、装置、设备及存储介质
US8090213B2 (en) Image processing device and method
JP2012109656A (ja) 画像処理装置及び方法、並びに画像表示装置及び方法
US9672605B2 (en) Image processing device and image processing method
KR20070098540A (ko) 서서히 변화하는 부분에 대한 재귀적 3d 초정밀화 방법
CN108320275A (zh) 一种检测相机模组暗斑的方法
JP2019020839A (ja) 画像処理装置、画像処理方法、及びプログラム
JP2012032739A (ja) 画像処理装置及び方法、並びに画像表示装置
JP2018106316A (ja) 画像補正処理方法、および、画像補正処理装置
KR100782848B1 (ko) 디지털 이미지 처리 방법 및 그 시스템
KR100821939B1 (ko) 영상 잡음 제거 장치 및 방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20190903