激光与光电子学进展, 2021, 58 (6): 0610013, 网络出版: 2021-03-16  

基于层先验的快速视频去雨算法 下载: 633次

Fast Video Rain Removal Algorithm Based on Layer Priors
作者单位
上海大学微电子研究与开发中心, 上海 200444
摘要
为了解决当前去雨算法恢复效果差、时效性一般的缺陷,提出了一种结合时间方向梯度与水平方向梯度的快速视频去雨算法。首先,将有雨图像分为背景层和雨痕层,并用背景层的时间方向梯度和雨痕层的水平方向梯度以及各层对应的预训练高斯混合模型作为先验条件,构建模型函数;其次,利用半二次分裂法对所得非凸函数进行等效变换,获得用于最小化的目标函数;最后,利用快速总变分法优化模型函数,得到模型函数的最优解。实验结果表明,相比其他算法,本算法的去雨恢复效果更优、时效性更好,且速度更快,平均峰值信噪比提升了1 dB以上。
Abstract
In order to solve the shortcomings of poor recovery effect and timeliness of current rain removal algorithms, this paper proposes a fast video rain removal algorithm that combines temporal gradient and horizontal direction gradients. First, the rain image is divided into a background layer and a rain race layer, and the model function is constructed by using the time direction gradient of background layer, the horizontal direction gradient of rain trace layer, and the corresponding pre-trained Gaussian mixture model of each layer as priori conditions; second, the semi quadratic splitting method is used to transform the non-convex function to obtain the objective function for minimization; finally, fast total variation method is used to optimize the model function to obtain the optimal solution of the model function. Experimental results show that, compared with other algorithms, the algorithm has better rain removal recovery effect, good timeliness and faster speed, and the average peak signal-to-noise ratio is improved by more than 1 dB.

1 引言

在降雨等恶劣天气下,视觉系统捕获的视频会发生模糊、对比度下降等现象,极大影响了之后的识别、追踪等视频处理任务。因此,如何准确快速地消除降雨对视频质量的影响,使相应视觉系统在雨天条件下能够更好的运转,具有重要的现实意义。

依据去雨对象可将去雨算法分为图像去雨和视频去雨两个方向,目前,主流的去雨算法可大致分为基于先验的算法和基于深度学习的算法。基于先验的典型算法中,Li等[1]提出了一种将总变分(TV)和高斯混合模型(GMM)作为背景层和雨痕层先验的算法,通过最小化模型函数分离背景层和雨痕层。Li等[2]提出了一种多尺度卷积稀疏编码模型,将与相机不同距离的雨滴划分为多个层,该算法能有效去除雨滴,但没有结合在线策略进一步提升去雨效果。Kim等[3]提出了一种结合时域相关性和低秩矩阵分解的算法,能准确检测雨滴,但复杂度过高。基于深度学习的典型算法中,Li等[4]提出了一种基于深度卷积和递归神经网络的新型深度网络体系结构,该算法在合成集上的表现很好,但在真实集上雨滴残留较多。Chen等[5]运用超像素分割将场景分解为深度一致的单元,在超像素级别完成场景内容的对齐,这种算法对不同的雨滴遮挡和摄像机的快速运动情形具有鲁棒性,但单元的分割需花费大量时间。

为了提升去雨算法的恢复效果,本文在已有研究的基础上,用时间方向梯度与水平方向梯度作为先验;为减少运算时间,优化过程使用快速TV(FTV),通过多轮迭代最小化模型函数,并给出了一种迭代退出的判定方法。实验结果表明,相比其他算法,本算法得到的去雨视频恢复效果好、花费时间短且具有较强的实用性。

2 基于层先验的去雨算法

通常可将一张有雨图像认为是无雨背景层B和无背景雨痕层R的叠加,去雨的目的是通过分解获得有雨图像的背景层和雨痕层,但这是一个不适定问题,因此,文献[ 1]提出了一种使用最大后验概率(MAP)最大化背景层和雨痕层的联合概率方法,该模型经过一定的数学变换,可等效为求解能量函数的最小值,即

minB,RO-B-RF2+Φ(B)+Ψ(R),(1)

式中, ·F为弗罗贝尼乌斯范数,O为有雨图像,最优解BR中每个像素的值应不大于O中的对应值且不小于0,Φ(B)和Ψ(R)分别为背景层和雨痕层的先验条件,用于对两种层进行正则化约束,可表示为

Φ(B)=-γilogGB[Pi(B)]+αB1,(2)Ψ(R)=-γilogGR[Pi(R)]+βRF2,(3)

式中,Pi(·)为相应图层的第i个分块,G(·)为图像块在相应GMM中的概率密度,ÑB为雨痕层的梯度,γαβ为对应项的系数。不同于文献[ 6]中常见的3分量在线训练GMM模型,层先验算法用具有200个高斯分量的预训练GMM模型[7]作为背景层的先验之一。除此之外,在算法开始时还会将人工标注的明显雨区作为训练图像在线训练一个轻量级GMM模型,作为雨痕层的先验之一。为便于求解,采用对数的形式并用L1范数正则化,梯度也是近年来常用于图像修复领域的一种先验知识[8]

引入GMM后(1)式中的能量函数是非凸的,难以获得全局最优解。因此,使用半二次分裂法对其进行优化,引入辅助变量 gBi, gRiH分别代替Pi(B)、Pi(R)和ÑB。最终得到的函数可表示为

minB,RO-B-RF2+αH1+βRF2-γilogGB(gBi)+logGR(gRi)+ωB-HF2+ωiPi(B)-gBi22+Pi(R)-gRi22,(4)

式中,ω为一个逐渐变大的系数。(4)式的迭代更新步骤如下。

1) 设当前时刻为t,使用软阈值(Soft thresholding)算法更新t+1时刻的H,可表示为

H(t+1)=argminHαH1+ωB-HF2(5)

2) 使用L-BFGS(Limited-memory Broyden Fletcher Goldfarb Shanno)算法[9]更新BR,可表示为

B(t+1),R(t+1)=argminB,RO-B-RF2+βRF2+ωi[Pi(B)-gBi22+Pi(R)-gRi22](6)

3) 用文献[ 7]中的近似优化算法更新 gBi

gBi(t+1)=argmingBiωPi[B(t+1)]-gBi22-γlogGB(gBi)(7)

gRi的更新与 gBi类似,层先验算法在有雨图像的恢复上取得了较好的效果,但其选择的梯度方向并非最优,部分优化算法的运行速度也偏慢,存在较大的改进空间。

3 去雨算法

3.1 时间方向梯度与水平方向梯度

从空间维度来看,如图1(a)所示的无噪声自然图像在很大程度上是分段平滑的[6],且其梯度域通常是稀疏的,如图1(b)所示。在时间维度上,将一组视频序列中当前帧与前一帧求梯度,将每个梯度值出现的次数绘制成直方图,结果如图1(c)所示。

图 1. 背景层的梯度直方图。(a)无雨视频中的图像;(b)垂直方向的梯度;(c)时间方向的梯度

Fig. 1. Gradient histogram of the background layer. (a) Image in the rainless video; (b) gradient in the vertical direction; (c) gradient in the time direction

下载图片 查看所有图片

图1(c)可以发现,大部分像素的梯度值都等于或趋近于0,这表明当前帧与前一帧的梯度具有稀疏特性,且相比图1(b)中垂直方向的梯度,稀疏性更强。图2(c)为水平方向梯度的灰度直方图,可以发现,相比层先验中直接使用雨痕图的灰度值,0的个数约多了1万个,表现出更强的稀疏性,如图2(b)所示。

图 2. 雨痕层的梯度直方图。(a)雨痕视频中的图像;(b)灰度直方图;(c)水平方向的梯度

Fig. 2. Gradient histogram of the rain trace layer. (a) Image in the rain trace video; (b) gray histogram; (c) gradient in the horizontal direction

下载图片 查看所有图片

对于两种新梯度项的引入,仍采用L1范数形式,用半二次分裂法进行优化,改进后的模型函数可表示为

minB,RminB,RO-B-RF2+αM12+βN12-

γiloglogGbgBi+loglogGRgRi+

ωZB-MF2+ωXR-NF2+

ωiPiB-gBi22+PiR-gRi22,(8)

式中, Z为时间方向的梯度, X为水平方向的梯度,MN为新引入的辅助变量, O-B-RF2为保真项,可以减少复原图像的失真情况[10]

3.2 快速总变分法

FTV是一种常用于图像去噪和去模糊的算法[11],通过交替迭代求解最小化模型函数,每一次迭代的计算量仅有3个快速傅里叶变换(FFT),相比(6)式的L-BFGS最小化算法,在运算时间上有较大的优势,可适用于一些对速度要求高的场景。FTV擅长解决的模型函数需要是L2正则化的TV形式,实验中通过将矩阵向量化以满足该条件。结合FTV算法得到模型函数最小化的流程如下。

1) 更新MN,MN的更新方式类似,以M为例,舍去与M无关的项,得到

Mt+1=argminMminMαM1+ωZBt-MF2,(9)

(9)式的解可用软阈值获得,即

M(t+1)=sgnZBtmaxmaxZBt-2ω,0(10)

2) 更新BR,BR的更新方式也是类似的。以B为例,固定RMNgBigRi,得到

Bt+1=argminBminBO-B-RF2+ωZB-MF2+

ωiPiB-gBi22(11)

虽然采取非重叠的分块方式会引入块效应,同时影响高斯概率密度计算的准确性,降低图像质量,但本算法中 ilogGB(gBi)并非决定最终画像质量的唯一先验。保真项的存在,使非重叠分块对于最终图像恢复的效果影响较小,同时可以降低算法的复杂度。因此,采取非重叠的图像分块方式,此时所有 PiB中的像素数量和B相等, gB为B中块对应的 gBi合集,即 iPiB-gBi22=B-gBF2

在上述条件下,(11)式实际是一个二次型,B的最小化可以用正规方程法来求解,即

1+ω+ωZTZB=O-R+ωgB+ωZTM(12)

对于(12)式左侧的黑塞矩阵,基于傅里叶变换的卷积定理[11]用FFT进行对角化,可表示为

B(t+1)=XrealF-1FO-R+ωFgB+ωFZ*°FM1+ω+ωFZ*°FZ,(13)

式中,上标*为复共轭,符号 °为哈达玛积,F为FFT,F -1为FFT的逆变换,Xreal为取复数实部的符号。由于F( Z)及其复共轭的值是固定常数,因此每轮迭代仅需4个FFT的计算量(含一个FFT逆变换)。

3.3 迭代退出与整体算法流程

本算法的计算流程如表1所示,将算法的最大迭代次数设为10次,一些雨势较小的视频并不需要这么多次数。因此,通过当前轮与上一轮BR的弗罗贝尼乌斯范数和的归一化值作为退出判定,可表示为

Xtol=B(t+1)-B(t)F+R(t+1)-R(t)FOF(14)

表 1. 本算法的流程

Table 1. Flow of our algorithm

Input: rain image, pre-trained GMM model
Initialization: B=O,R=0, train a lightweight GMM model online
Step1: update M,N by soft threshold algorithm
Step2: update B,R by FTV algorithm
Step3: update gBi,gRiby approximate optimization algorithm
End: meet the convergence condition Eq. (14) or reach the maximum number of iterations, otherwise go back to step1 and iterate again
Output: background layer B and rain trace layer R

查看所有表

4 实验分析与对比

实验所用计算机的CPU为Intel Core i7-9750H@2.60 GHz,内存为32 GB,系统版本为Windows10,软件平台为Matlab R2019b。文献[ 12]对近几年图像视频去雨算法进行了对比,实验选取其中的3种视频去雨算法与本算法进行对比,包括基于多尺度卷积稀疏编码的算法[2]、基于时域相关和低秩矩阵补全的算法[3]和一种基于块的GMM算法[6]

4.1 合成集实验

为保证实验的客观性与公平性,用与文献[ 12]中相同的客观衡量方法,即峰值信噪比(PSNR)和结构相似度(SSIM);同时使用其数据集中的四段测试合成视频作为样本集进行测试,涵盖了生活中户外的常见场景,如公园、高速公路、停车场。视频中有静态画面,如树木、房屋,也有运动物体,如车辆、行人。部分实验效果如图3图4所示,可以发现,对于数据集man,文献[ 2]和文献[ 6]的算法在缓慢移动的人物周围出现了伪影(矩形框部分),文献[ 3]的算法在快速移动的人物边缘出现了一些波纹(矩形框部分)。对于数据集trunk,文献[ 2]和文献[ 3]的算法雨滴残留较多(矩形框部分),而文献[ 6]的算法区分了前景与背景,无法很好地去除属于前景运动物体本身的雨滴(矩形框部分)。完整的实验数据如表2所示,表中的结果均为所有帧的平均值。可以发现,本算法的去雨效果在四段测试集中均有不同程度的提升,相比其他算法的最好结果,本算法的PSNR平均提升了1.6 dB,且本算法的运行时间更短。

图 3. 不同算法对数据集man的识别结果。(a)输入图像;(b)原始图像;(c)文献[ 2]的算法;(d)文献[ 3]的算法;(e)文献[ 6]的算法;(f)本算法

Fig. 3. Recognition results of different algorithms on the dataset man. (a) Input image; (b) original image; (c) algorithm of Ref. [2]; (d) algorithm of Ref. [3]; (e) algorithm of Ref. [6]; (f) our algorithm

下载图片 查看所有图片

图 4. 不同算法对数据集trunk的识别结果。(a)输入图像;(b)原始图像;(c)文献[ 2]的算法;(d)文献[ 3]的算法;(e)文献[ 6]的算法;(f)本算法

Fig. 4. Recognition results of different algorithms on the dataset trunk. (a) Input image; (b) original image; (c) algorithm of Ref. [2]; (d) algorithm of Ref. [3]; (e) algorithm of Ref. [6]; (f) our algorithm

下载图片 查看所有图片

表 2. 实验结果

Table 2. Experimental results

DatasetAlgorithmPSNR /dBSSIMTime /s
ManRef. [2]37.020.981137.4
Ref. [3]33.600.9891332.7
Ref. [6]36.180.885515.8
ours39.790.99352.9
DatasetAlgorithmPSNR /dBSSIMTime /s
TrunkRef. [2]32.380.963140.6
Ref. [3]32.860.9621811.2
Ref. [6]30.320.938462.2
ours34.570.97651.9
ParkRef. [2]34.070.991101.4
Ref. [3]33.170.9701501.3
Ref. [6]24.180.796393.1
ours35.920.98344.0
HighwayRef. [2]24.200.953140.1
Ref. [3]24.120.9361850.2
Ref. [6]23.780.868498.7
ours24.810.95850.2

查看所有表

4.2 真实视频中的实验

为了体现本算法在真实有雨视频上的去雨效果,搜寻了三段有雨视频作为真实测试集,分别是一段电影片段、一段校园雨天实拍及一段夜间监控画面,结果如图5所示。可以发现,文献[ 2]的算法去雨有残留,在第一段视频中雨痕十分明显;且由于第二段视频镜头晃动剧烈,图像整体比较模糊;文献[ 3]的算法去雨效果较好,雨痕残留很少,细节也保留得很好;文献[ 6]的算法与文献[ 2]的算法有相同的问题,且在第三段视频中,画面的整体颜色也发生了变化。本算法去雨后的雨滴残留很少,且模糊与偏色问题较少,图像的细节纹理保存得较好,整体去雨效果较佳。

图 5. 不同算法在真实有雨图像上的处理结果。(a)输入图像;(b)文献[ 2]的算法;(c)文献[ 3]的算法;(d)文献[ 6]的算法;(e)本算法

Fig. 5. Processing results of different algorithms on real images with rain. (a) Input image; (b) algorithm of Ref. [2]; (c) algorithm of Ref. [3]; (d) algorithm of Ref. [6]; (e) our algorithm

下载图片 查看所有图片

5 结论

以一种面向图像的层先验算法为基础,进行视频去雨算法的研究与开发。通过在原模型函数中引入时间方向梯度与水平方向梯度作为先验,提升了算法的恢复效果。优化过程使用快速总变分法,通过多轮迭代最小化模型函数,同时给出了一种迭代退出的判定方法。实验结果表明,本算法得到的去雨视频恢复效果较好,且算法执行速度快,但本算法无法做到实时演算,在处理速度上仍有较大的改进空间。

参考文献

[1] LiY, Tan RT, Guo XJ, et al.Rain streak removal using layer priors[C] //2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 27-30, 2016, Las Vegas, NV, USA.New York: IEEE Press, 2016: 2736- 2744.

[2] Li MH, XieQ, ZhaoQ, et al.Video rain streak removal by multiscale convolutional sparse coding[C] //2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition, June 18-23, 2018, Salt Lake City, UT, USA.New York: IEEE Press, 2018: 6644- 6653.

[3] Kim J H, Sim J Y, Kim C S. Video deraining and desnowing using temporal correlation and low-rank matrix completion[J]. IEEE Transactions on Image Processing, 2015, 24(9): 2658-2670.

[4] LiX, Wu JL, Lin ZC, et al. Recurrent squeeze-and-excitation context aggregation net for single image deraining[M] //Ferrari V, Hebert M, Sminchisescu C, et al. Computer Vision-ECCV 2018. Lecture Notes in Computer Science. Cham: Springer, 2018, 11211: 262- 277.

[5] ChenJ, Tan CH, Hou JH, et al.Robust video content alignment and compensation for rain removal in a CNN framework[C] //2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition, June 18-23, 2018, Salt Lake City, UT, USA.New York: IEEE Press, 2018: 6286- 6295.

[6] WeiW, Yi LX, XieQ, et al.Should we encode rain streaks in video as deterministic or stochastic?[C] //2017 IEEE International Conference on Computer Vision (ICCV), October 22-29, 2017, Venice, Italy.New York: IEEE Press, 2017: 2535- 2544.

[7] ZoranD, WeissY. From learning models of natural image patches to whole image restoration[C] //2011 International Conference on Computer Vision, November 6-13, 2011, Barcelona, Spain.New York: IEEE Press, 2011: 479- 486.

[8] 陈晨, 许金鑫, 危才华, 等. 基于显著性强度和梯度先验的多尺度图像盲去模糊[J]. 激光与光电子学进展, 2020, 57(4): 041505.

    Chen C, Xu J X, Wei C H, et al. Multi-scale image blind deblurring based on salient intensity and a priori gradient[J]. Laser & Optoelectronics Progress, 2020, 57(4): 041505.

[9] Zhu C Y, Byrd R H, Lu P H, et al. Algorithm 778: L-BFGS-B[J]. ACM Transactions on Mathematical Software, 1997, 23(4): 550-560.

[10] 姜博宇, 张剑. 双保真全变差去噪模型[J]. 激光与光电子学进展, 2018, 55(2): 021004.

    Jiang B Y, Zhang J. Denosing model based on double-fidelity total variation[J]. Laser & Optoelectronics Progress, 2018, 55(2): 021004.

[11] Wang Y L, Yang J F, Yin W T, et al. A new alternating minimization algorithm for total variation image reconstruction[J]. SIAM Journal on Imaging Sciences, 2008, 1(3): 248-272.

[12] WangH, Li MH, Wu YC, et al. A survey on rain removal from video and single image[EB/OL]. [2020-07-02]. https://arxiv.org/abs/1909.08326.

潘登, 严利民. 基于层先验的快速视频去雨算法[J]. 激光与光电子学进展, 2021, 58(6): 0610013. Pan Deng, Yan Limin. Fast Video Rain Removal Algorithm Based on Layer Priors[J]. Laser & Optoelectronics Progress, 2021, 58(6): 0610013.

引用该论文: TXT   |   EndNote

相关论文

加载中...

关于本站 Cookie 的使用提示

中国光学期刊网使用基于 cookie 的技术来更好地为您提供各项服务,点击此处了解我们的隐私策略。 如您需继续使用本网站,请您授权我们使用本地 cookie 来保存部分信息。
全站搜索
您最值得信赖的光电行业旗舰网络服务平台!