视频降噪方法、装置、终端及存储介质与流程

文档序号:20204503发布日期:2020-03-27 21:01阅读:189来源:国知局
视频降噪方法、装置、终端及存储介质与流程

技术邻域

本申请涉及多媒体技术邻域,特别涉及一种视频降噪方法、装置、终端及存储介质。



背景技术:

随着多媒体技术的发展,办公协同产品成为越来越多中大型企业必不可少会议工具,其中,远程视频会议是办公协同产品中较为重要的组成部分,为企业提供了极大的便利。在远程视频会议的通信过程中,摄像头采集到的视频往往包含大量的噪声,如果不降低这些的噪声,会导致视频会议的效果很差。

相关技术中,在处理视频中包含的噪声时,首先根据降噪后的前一视频图像对当前视频图像进行时域滤波,得到当前视频图像每一个像素点的时域滤波权重。对当前视频图像进行基于方向统计的空域滤波,获得当前视频图像每一个像素点的空域滤波结果,然后根据上述时域滤波权重将空域滤波结果和前一视频图像进行加权融合,得到当前视频图像的降噪结果。

由于在对视频图像进行滤波处理过程中,在对顺序在后面的像素点进行滤波处理时,其邻域内的像素点往往包含了之前完成了滤波处理的像素点,使得后面的像素点对已经处理过的像素点存在依赖关系,及滤波处理过程为串行处理过程,这就导致算法运算速度较慢。



技术实现要素:

本申请实施例提供了一种视频降噪方法、装置、终端及存储介质,用于解决相关技术中算法运算速度较慢的问题。所述技术方案如下:

一方面,提供了一种视频降噪方法,包括:

对待处理视频中的目标图像的像素点进行解除像素依赖的空域滤波,得到第一图像;

根据所述第一图像和第一降噪图像之间的帧差,并行对所述目标图像的像素点进行时域滤波,得到第二图像,所述第一降噪图像为所述目标图像的上一帧图像对应的已经过降噪处理的图像;

根据所述第二图像的像素点对应的增益系数,对所述第一图像和所述第二图像进行融合,得到所述目标图像对应的已经过降噪处理的第二降噪图像。

另一方面,提供了一种视频降噪装置,包括:

空域滤波模块,用于对待处理视频中的目标图像的像素点进行解除像素依赖的空域滤波,得到第一图像;

时域滤波模块,用于根据所述第一图像和第一降噪图像之间的帧差,并行对所述目标图像的像素点进行时域滤波,得到第二图像,所述第一降噪图像为所述目标图像的上一帧图像对应的已经过降噪处理的图像;

融合模块,用于根据所述第二图像的像素点对应的增益系数,对所述第一图像和所述第二图像进行融合,得到所述目标图像对应的已经过降噪处理的第二降噪图像。

在一种可选的实现方式中,所述空域滤波模块,还用于对于所述待处理视频中的目标图像的全部像素点,获取每个所述像素点的至少一个邻域像素点的初始像素值;根据所述至少一个邻域像素点的初始像素值,对所述像素点进行空域滤波。

在另一种可选的实现方式中,所述装置还包括:

接口调用模块,用于调用图形处理器的图像处理接口,所述图像处理接口用于并行对待处理视频中的目标图像的像素点进行解除像素依赖的空域滤波;

并行获取模块,用于并行获取所述待处理视频中的目标图像的每个像素点。

在另一种可选的实现方式中,所述时域滤波模块,还用于并行获取所述目标图像的每个像素点;对于所述目标图像的任一像素点,根据所述像素点在所述第一降噪图像中对应的第一方差、所述第一图像和第一降噪图像之间的帧差以及方差偏置系数,确定所述像素点的第二方差;根据所述第二方差、所述像素点对应的第一增益偏置系数以及运动补偿系数,确定所述像素点对应的第一增益系数;根据所述第一增益系数、所述像素点的初始像素值以及所述像素点在所述第一降噪图像中对应的降噪像素值,确定所述像素点时域滤波后的第一像素值。

在另一种可选的实现方式中,所述装置还包括:

第一确定模块,用于根据所述帧差,确定所述运动补偿系数。

在另一种可选的实现方式中,所述装置还包括:

获取模块,用于获取所述像素点在所述第一降噪图像中对应的第二增益系数以及第二增益偏置系数;

第二确定模块,用于根据所述第二增益系数和所述第二增益偏置系数,确定所述像素点对应的第一增益偏置系数。

在另一种可选的实现方式中,所述时域滤波模块,还用于所述第二图像的任一像素点,将所述像素点对应的第一增益系数和所述像素点的第一像素值的乘积作为第一融合值;将所述像素点对应的第一增益系数和所述像素点的第二像素值的乘积作为第二融合值,所述第二像素值为所述像素点在经过所述空域滤波后的像素值;对所述第一融合值和所述第二融合值求和,得到所述像素点对应的降噪像素值。

在另一种可选的实现方式中,其特征在于,所述空域滤波和时域滤波分别对像素点的亮度分量进行处理。

另一方面,提供了一种终端,所述终端包括处理器和存储器,所述存储器用于存储至少一段程序代码,所述至少一段程序代码由所述处理器加载并执行以实现本申请实施例中的视频降噪方法中所执行的操作。

另一方面,提供了一种存储介质,所述存储介质中存储有至少一段程序代码,所述至少一段程序代码用于被处理器执行并实现本申请实施例中的视频降噪方法。

本申请实施例提供的技术方案带来的有益效果是:

在本申请实施例中,通过对目标图像的像素点进行解除像素依赖的空域滤波,使得目标图像中的各像素点之间不再存在依赖关系,并且根据空域滤波得到的第一图像和第一降噪图像之间的帧差,来并行对目标图像的像素点进行时域滤波,使得视频降噪过程由串行处理转换为并行处理,加速了降噪处理过程。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本邻域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的一种通过笔记本电脑配置的低性能摄像头采集到的视频图像;

图2是本申请实施例提供的一种视频会议的流程示意图;

图3是本申请实施例提供的一种视频降噪系统的结构框图;

图4是本申请实施例提供的一种视频降噪方法的流程图;

图5是本申请实施例提供的一种图像滤波解除像素依赖前的示意图;

图6是本申请实施例提供的一种图像滤波解除像素依赖后的示意图;

图7是本申请实施例提供的一种空域滤波效果对比的示意图;

图8是本申请实施例提供的一种降噪处理前后对比示意图;

图9是本申请实施例提供的一种视频降噪方法的关键流程示意图;

图10是本申请实施例提供的一种视频降噪方法的算法流程示意图;

图11是本申请实施例提供的一种视频降噪装置的框图;

图12是本申请实施例提供的一种终端的结构框图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

本申请实施例主要涉及对视频进行降噪处理的场景,以对远程会议视频进行降噪处理为例进行说明。远程视频会议是办公协同产品各项功能中较为重要的一部分,其对采集到的视频有着非常严格的要求,通常需要使用高清摄像头来进行视频采集。在使用性能较弱的摄像头进行视频采集时,采集到的视频普遍存在噪声,如果不对这些噪声进行处理,会导致视频会议的体验很差。例如,参见图1所示,图1是通过笔记本电脑配置的低性能摄像头采集到的视频图像,从图1中可以看到,图像中包含有大量的噪声。可选的,本申请实施例还可以应用于视频通话过程中对手机摄像头采集的视频进行降噪处理,或者对监控设备采集的视频进行降噪处理等,本申请实施例对此不进行限制。

下面简单介绍一个本申请实施例提供的视频降噪方法。为了使摄像头采集的视频能够满足远程视频会议的需求,通常需要对采集的视频进行降噪处理。目前已有多种对视频进行降噪处理的方法,而这些方法通常都是通过终端的cpu运行视频降噪相关的算法来实现视频的降噪处理。由于办公协同产品中不仅仅包括远程会议视频这一项功能,还包括流程审批、项目管理等多种功能,因此如果远程视频会议功能占用了大部分的cpu资源,则会导致办公协同产品的其他功能无法正常使用,或者导致办公协同产品对cpu的处理能力要求较高导致无法在大多数场景下使用。而本申请实施例提供的视频降噪方法,通过解除图像中像素点之间的依赖关系,使其满足并行计算的需求,由于gpu(graphicsprocessingunit,图形处理器)的并行计算能力强于cpu,因此本申请实施例提供的视频降噪方法通过调用gpu提供的metal(一种苹果公司提供的图像处理接口)或者directx(一种微软公司提供的图像处理接口)等图像处理接口,来取代cpu实现对各像素点的并行处理。从而提高了对视频进行降噪处理时的处理速度并且减少了对cpu的占用。即本申请实施例提供的视频降噪方法,可以以很低的cpu占用率实现快速的视频降噪,降噪后的视频流再传输到远端显示,保证良好的视频会议体验的同时为办公协同产品赋能其他功能提供了大量的cpu资源。上述流程可参见图2所示,图2是本申请实施例提供的一种视频会议的流程示意图。如图2所示,摄像头采集的视频图像经过降噪处理等操作后在本地显示,如在笔记本电脑的屏幕上进行显示,编码器对经过降噪处理后的视频图像进行编码,通过网络传输到远端,远端的解码器对视频图像进行解码,将解码后的视频图像在远端显示,该远端也可以为笔记本电脑。

图3是本申请实施例提供的一种视频降噪系统300的结构框图,该视频降噪系统300可以用于实现视频降噪,包括:终端310和视频服务平台320。

终端310可以通过无线网络或有线网络与视频服务平台320相连。终端310可以是智能手机、摄像机、台式计算机、平板电脑、mp4播放器和膝上型便携计算机中的至少一种。终端310安装和运行有支持远程视频会议的应用程序。示意性的,终端310可以是用户使用的终端,终端运行的应用程序内登录有该用户的账号。

视频服务平台320包括一台服务器、多台服务器和云计算平台中的至少一种。视频服务平台320用于提供远程视频会议的后台服务,如用户管理、视频流转发等。可选的,视频服务平台320包括:接入服务器、数据管理服务器、用户管理服务器和数据库。接入服务器用于提供终端310的接入服务。数据管理服务器用于对终端上传的视频流进行转发等。数据管理服务器可以是一台或多台,当数据管理服务器是多台时,存在至少两台数据管理服务器用于提供不同的服务,和/或,存在至少两台数据管理服务器用于提供相同的服务,比如以负载均衡方式提供同一种服务或者以主服务器和镜像服务器的方式提供同一种服务,本申请实施例对此不加以限定。数据库用于存储用户的账号信息。该账号信息为用户已授权采集的数据信息。

终端310可以泛指多个终端中的一个,本实施例仅本地终端310和两个远程终端310来举例说明。本邻域技术人员可以知晓,上述终端的数量可以更多或更少。比如上述远程终端可以仅为一个,或者上述远程终端为几十个或几百个,或者更多数量。本申请实施例对终端310的数量和类型不加以限定。

图4是本申请实施例提供的一种视频降噪方法的流程图,如图4所示。该方法包括以下步骤:

401、终端对待处理视频中的目标图像的像素点进行解除像素依赖的空域滤波,得到第一图像。

在本申请实施例中,终端可以基于第一滤波器实现对目标图像的像素点的空域滤波,即将目标图像输入第一滤波器中,则第一滤波器的输出即为经过空域滤波后的第一图像。其中,第一滤波器可以为改进后的双边滤波器,该第一滤波器可以并行处理目标图像的像素点。下面对第一滤波器进行说明:

在图像去噪领域,双边滤波算法是一种非线性的保边滤波算法,是结合了图像的空间邻近度和像素值相似度的一种折中处理方法。该双边滤波算法同时考虑了空域信息和灰度相似性,以达到保边去噪的目的,具有简单、非迭代、局部的特点,其中保边去噪指的是通过当前处理的像素点的至少一个邻域像素点的平均值来替代该像素点的原始像素值。在通过基于双边滤波算法的双边滤波器对待处理图像进行滤波处理过程中,对于待处理图像的像素点,通常是按照先从左到右,再从上到下(或先从上到下,再从左到右,或者其他完成整张图像扫描的顺序方式)的方式使用滤波模板对整张图像进行扫描。而在对像素点进行空域滤波时,往往是通过对当前处理的像素点的邻域像素点进行线性或者非线性的处理来实现。由于在对待处理图像进行滤波处理过程中,对处理顺序在后面的像素点进行滤波处理的时候,该像素点邻域内的像素点往往包含之前完成了空域滤波处理的像素点,则导致顺序在后面的像素点对已经滤波处理过的像素点存在依赖关系,而这样的依赖关系,导致了整个图像的空域滤波处理变成了一种串行处理过程。其原理可以参见公式(1)和(2)所示。

其中,表示图像中当前处理的像素点经过空域滤波后的像素值,i(p)表示图像中当前处理的像素点的像素值,i(q)表示的是图像中当前处理的像素点的邻域像素点的像素值,p表示图像中当前处理的像素点的坐标,q表示图像中当前处理的像素点的邻域像素点的坐标,ω(p,q)表示与像素点位置相关的权重,g(·)表示高斯函数,σs和σr分表表示高斯函数的方差。

需要说明的是,顺序在当前处理的像素点之前的邻域像素点对应的i(q)为经过空域滤波后的像素值,而顺序在当前处理的像素点之后的邻域像素点对应的i(q)为该邻域像素点的原始的像素值。

例如参见图5所示,图5是本申请实施例提供的一种图像滤波解除像素依赖前的示意图。在图5中,当前处理的像素点为中心像素点,该中心像素点对应12个邻域像素点,位置在中心像素点的左侧和上方的邻域像素点为已经过处理的像素点,位置在中心像素点的右侧和下方的邻域像素点为未经过处理的像素点。

由于上述空域滤波处理过程是串行处理过程,相对于并行处理过程耗时长,因此在本申请实施例中,对上述处理过程进行了第一个改进,即对上述双边滤波器进行了改进,解除了像素点之间的像素依赖,得到上述第一滤波器。该第一滤波器同样基于双边滤波算法,不同点在于,在通过上述公式(1)和(2)对目标图像的像素点进行滤波处理时,该像素点的邻域像素点的像素值,即i(q)的值,全部采用图像最原始的像素值,即不使用经过滤波处理过后的像素值。这样各像素点不再依赖处理顺序排在当前像素点之前的像素点,解除了处理顺序排在当前像素点之前的像素点在滤波之后对当前像素点带来的影响。

例如,参见图6所示,图6是本申请实施例提供的一种图像滤波解除像素依赖后的示意图。在图6中,当前处理的像素点为中心像素点,该中心像素点对应12个邻域像素点,这12个邻域像素点均为未经过处理的像素点,即邻域像素点的像素值均为初始像素值。

由于解除了了像素点之间的像素依赖,因此,终端基于第一滤波器对每个像素点进行空域滤波的处理过程相同。本步骤可以为:对于目标图像的全部像素点,终端可以获取每个像素点的至少一个邻域像素点的初始像素值。然后终端可以根据该至少一个邻域像素点的初始像素值,通过第一滤波器对该像素点进行空域滤波,得到该像素点经过空域滤波后的像素值。当终端基于第一滤波器将目标图像的全部像素点均处理完毕时,即得到第一图像,该第一图像中的各像素点的像素值为经过空域滤波后的像素值。参见图7所示,图7是本申请实施例提供的一种空域滤波效果对比的示意图。图7中实例性的示出了目标图像、通过双边滤波器滤波后的图像,通过第一滤波器滤波后的图像。

需要说明的是,由于gpu的并行计算能力强于cpu,因此在本申请实施例中,对上述处理过程进行了第二个改进,即终端可以通过调用gpu提供的图像处理接口,如metal或directx等,将上述对目标图像的像素点进行空域滤波的步骤转移到gpu中实现。相应的,终端还可以调用图形处理器的图像处理接口,该图像处理接口用于并行对待处理视频中的目标图像的像素点进行解除像素依赖的空域滤波,并行获取待处理视频中的目标图像的每个像素点,从而实现并行对待处理视频中的目标图像的像素点进行解除像素依赖的空域滤波,对整个空域滤波过程进行了加速,并且节省了cpu的资源,降低了cpu的占用率。

402、终端获取第一降噪图像,该第一降噪图像为目标图像的上一帧图像对应的已经过降噪处理的图像。

在本申请实施例中,终端在对目标图像的像素点进行空域滤波后,还可以对目标图像的像素点进行时域滤波。在对目标图像的像素点进行时域滤波之前,终端可以获取目标图像的上一帧图像对应的已经经过降噪处理的第一降噪图像。基于该第一降噪图像和上述第一图像来执行后续对目标图像进行时域滤波的步骤。

403、终端确定第一图像和第一降噪图像之间的帧差。

在本申请实施例中,终端在获取第一降噪图像后,可以以二维数组的形式存储该第一降噪图像的每个像素点经过降噪处理后的降噪像素值,相应的,终端也可以以二维数组的形式存储该第一图像的每个像素点的滤波像素值,且第一图像的像素点与第一降噪图像的各像素点一一对应,二维数组的大小为目标图像的高度与图像的宽度的乘积。终端可以对于任一像素点,计算该像素点在第一降噪图像中对应的降噪像素值和在第一图像中对应的滤波像素值的差值,将该差值作为该像素点对应的像素帧差。从而得到第一图像和第一降噪图像之间的帧差,该帧差可以为二维数组的形式。

404、终端根据第一图像和第一降噪图像之间的帧差,并行对目标图像的像素点进行时域滤波,得到第二图像。

在本申请实施例中,终端在得到第一图像和第一降噪图像之间的帧差后,可以将第一图像和第一降噪图像之间的帧差和目标图像输入第二滤波器中,基于第二滤波器进行时域滤波,该第二滤波器的输出即为该第二图像。其中,第二滤波器可以为改进后的基于卡尔曼滤波算法的卡尔曼滤波器,即在本申请施例中的第三个改进是对基于卡尔曼滤波算法的卡尔曼滤波器进行改进,得到上述第二滤波器。下面对第二滤波器进行说明:

基于卡尔曼滤波算法进行时域滤波的过程主要包括两个步骤,一个是预测,一个是矫正。在进行预测步骤时,终端基于任一像素点在第一降噪图像中对应的降噪像素值和方差,来预测该像素点在目标图像中对应的像素值和方差。在进行矫正步骤时,终端确定各像素点对应的增益系数,根据该增益系数、像素点在目标图像中对应的像素值以及像素点在第一降噪图像中对应的降噪像素值,确定该像素点时域滤波后的第一像素值。上述步骤的实现原理可以参见下述公式(3)-(7)。

其中,表示预测的像素点在目标图像的像素值,表示像素点在第一降噪图像中对应的降噪像素值。

其中,表示预测的像素点在目标图像的方差。pk-1表示像素点在第一降噪图像中对应的方差,q表示方差偏置系数。

其中,kk表示像素点对应的增益系数,r表示增益偏置系数。

其中,xk表示像素点时域滤波后的像素值,zk表示像素点在目标图像的像素值。

其中,pk表示像素点在下一帧图像需要用到的方差。

为了使算法运算速度更快,本申请实施例提供的视频降噪方法对公式(4)进行了优化,在计算方差时引入了帧差,得到公式(8)。

其中,δ表示第一图像和第一降噪图像之间的帧差。

而为了解决降噪滤波过程中的运动抖动问题,本申请实施例提供的视频降噪方法增加了公式(9)和公式(10),并对公式(5)进行了优化得到公式(11)。

rκ=1+rk-1(1+kk-1)-1(9);

其中,rk表示该像素点在目标图像对应增益偏置系数,rk-1表示像素点在第一降噪图像中对应的增益偏置系数,kk-1表示像素点在第一降噪图像中对应的增益系数。

其中,uk表示运动补偿系数。

相应的,本步骤可以通过以下子步骤4041至子步骤4043来实现。由于终端可以并行对目标图像的像素点进行时域滤波,在子步骤4041至子步骤4044中,示例性的以目标图像中的任一像素点为例进行说明,其他像素点的处理方式与该像素点相同。当终端将目标图像的全部像素点均处理完毕时,即得到第二图像。

4041、终端根据像素点在第一降噪图像中对应的第一方差、第一图像和第一降噪图像之间的帧差以及方差偏置系数,确定该像素点的第二方差。

例如,该像素点在第一降噪图像中对应的第一方差为pk-1,第一图像和第一降噪图像之间的帧差为δ,方差偏置系数为q,根据上述公式(8)即可计算得到该像素点的第二方差

4042、终端获取像素点在第一降噪图像中对应的第二增益系数以及第二增益偏置系数,根据该第二增益系数和该第二增益偏置系数,确定该像素点对应的第一增益偏置系数。

例如,该像素点在第一降噪图像中对应的第二增益系数为kk-1,该像素点在第一降噪图像中对应的第二增益偏置系数为rk-1,根据公式(9)即可计算得到该像素点对应的第一增益偏置系数rk。

4043、终端根据帧差确定该像素点对应的运动补偿系数。

例如,帧差为δ,根据公式(10)即可计算得到该像素点对应的运动补偿系数uk。

4044、终端根据第二方差、像素点对应的第一增益偏置系数以及运动补偿系数,确定该像素点对应的第一增益系数。

例如,根据上述公式(11),对上述子步骤4041至子步骤4043得到的第二方差第以增益偏置系数rk以及运动补偿系数uk进行计算,得到该像素点对应的第一增益系数kk。

需要说明的是,终端在得到该像素点对应的第一增益系数kk后,还可以根据公式(7)以及第二方差来确定该像素点在下一帧图像需要使用的第三方差pk。

405、终端根据第二图像的像素点对应的增益系数,对第一图像和第二图像进行融合,得到目标图像对应的已经过降噪处理的第二降噪图像。

在本申请实施例中,终端在对目标图像的像素点进行时域滤波得到第二图像的过程中,还得到了第二图像的像素点对应的增益系数。对于任一像素点,终端可以将该像素点对应的第一增益系数和该像素点的第一像素值的乘积作为第一融合值,将该像素点对应的第一增益系数和该像素点的第二像素值的乘积作为第二融合值,其中,第二像素值为该像素点在经过空域滤波后的像素值。终端对第一融合值和第二融合值求和,得到该像素点对应的降噪像素值。相应的,可以根据公式(12)来实现上述求和过程。

其中,表示像素点对应的降噪像素值。

当全部像素点均融合完毕时,即得到降噪后的目标图像。例如,参见图8所示,图8是本申请实施例提供的一种降噪处理前后对比示意图。图8中包括降噪前的目标图像和降噪后的目标图像,由图中可知,降噪后的目标图像中的噪点相较于降噪前的目标图像明显减少,即本申请实施例提供的视频降噪方法有效的实现了对目标图像的降噪处理。

需要说明的是,上述步骤401至步骤405是本申请实施例提供的视频降噪方法的可选的实现方式,相应的该视频降噪方法还可以不按照上述步骤401至步骤405的顺序执行,或者,可选的还可以设置第三滤波器,该第三滤波器与第一滤波器的结构相同,该第三滤波器和上述第一滤波器以及上述第二滤波器通过调用gpu的图像处理接口并行对目标图像中的每个像素点进行处理,以实现对目标图像的降噪处理。

例如,参见图9所示,图9是本申请实施例提供的一种视频降噪方法的关键流程示意图。如图9所示,图中包括输入、降噪处理以及输出三个部分,输入的是目标图像fc以及第一降噪图像在降噪部分,第一滤波器和第三滤波器分别用图像降噪滤波器f1和f2来表示。第二滤波器用卡尔曼滤波器fk来表示。通过gpu的图像处理接口进行并行加速。终端在对目标图像进行降噪时,通过图像降噪滤波器f1对目标图像fc进行处理,得到第一图像根据处理结果计算第一降噪图像和第一图像之间的帧差fd,将帧差fd和目标图像fc输入卡尔曼滤波器fk,将卡尔曼滤波器fk的输出结果第二图像和图像降噪滤波器f2的输出结果进行融合,得到目标图像对应的已经过降噪处理的第二降噪图像可选的该第二降噪图像还可以保存在卡尔曼滤波器中,参与后续图像的运算。与图9所示的流程相对应的算法流程可以参见图10所示,图10是本申请实施例提供的一种视频降噪方法的算法流程示意图。其中,初始化参数包括:p=0,q=0.05,r=0,k=0,上一帧图像经f1得到的像素值初始化为零。对目标图像进行空域滤波包括:其中,箭头表示赋值。对目标图像进行时域滤波包括:对目标图像的任一像素点进行时域滤波包括:计算帧差;rk←1+rk-1(1+kk-1)-1,计算增益偏置系数;将第一降噪图像中对应的降噪像素值作为预测的像素点在目标图像的像素值;计算第二方差;计算运动补偿系数;计算第一增益系数;计算像素点时域滤波后的像素值;计算降噪像素值;计算下一帧图像要用到的方差,返回

还需要说明的是,由于本申请实施例提供的视频降噪方法中,对图像进行空域滤波时,解除了各像素点的依赖关系,使gpu可以对各像素点进行并行计算,并且,在对时域滤波时,同样不存在像素依赖的问题,也可以使gpu对各像素进行并行计算,从而整个视频降噪过程均可以并行处理。当复杂的降噪处理过程都迁移到gpu上完成时,电脑端的cpu占用率将会变的非常低。并且,为了进一步的加速降噪的处理过程,本申请实施例提供的视频降噪方法进行了第四改进,即在将输入的图像的格式设置为采用ycbcr(yuv)格式,在对图像进行降噪处理时,第一滤波器和第二滤波器分别对目标图像的亮度分量进行空域滤波和时域滤波,即只对表征亮度细节信息的y通道进行降噪处理。

为了更清楚的展示本申请实施例提供的视频降噪方法的在节约cpu占用率方面的效果,本申请还进行了对比实验,在对比实验中,采用两个不同型号的笔记本电脑进行对比。对比结果可以参见表1所示。

表1

根据表1可知,相对于不使用解耦以及gpu并行计算,在使用解耦以及gpu并行计算时,cpu的占用率有明显的下降。

在本申请实施例中,通过对目标图像的像素点进行解除像素依赖的空域滤波,使得目标图像中的各像素点之间不再存在依赖关系,并且根据空域滤波得到的第一图像和第一降噪图像之间的帧差,来并行对目标图像的像素点进行时域滤波,使得视频降噪过程由串行处理转换为并行处理,加速了降噪处理过程。

图11是本申请实施例提供的一种视频降噪装置的框图。该装置用于执行上述视频降噪方法执行时的步骤,参见图11,装置包括:空域滤波模块1101、时域滤波模块1102以及融合模块1103。

空域滤波模块1101,用于对待处理视频中的目标图像的像素点进行解除像素依赖的空域滤波,得到第一图像;

时域滤波模块1102,用于根据第一图像和第一降噪图像之间的帧差,并行对目标图像的像素点进行时域滤波,得到第二图像,第一降噪图像为目标图像的上一帧图像对应的已经过降噪处理的图像;

融合模块1103,用于根据第二图像的像素点对应的增益系数,对第一图像和第二图像进行融合,得到目标图像对应的已经过降噪处理的第二降噪图像。

在一种可选的实现方式中,空域滤波模块1101,还用于对于所述待处理视频中的目标图像的全部像素点,获取每个像素点的至少一个邻域像素点的初始像素值;根据至少一个邻域像素点的初始像素值,对像素点进行空域滤波。

在另一种可选的实现方式中,装置还包括:

接口调用模块,用于调用图形处理器的图像处理接口,图像处理接口用于并行对待处理视频中的目标图像的像素点进行解除像素依赖的空域滤波;

并行获取模块,用于并行获取待处理视频中的目标图像的每个像素点。

在另一种可选的实现方式中,时域滤波模块1102,还用于并行获取目标图像的每个像素点;对于目标图像的任一像素点,根据像素点在第一降噪图像中对应的第一方差、第一图像和第一降噪图像之间的帧差以及方差偏置系数,确定像素点的第二方差;根据第二方差、像素点对应的第一增益偏置系数以及运动补偿系数,确定像素点对应的第一增益系数;根据第一增益系数、像素点的初始像素值以及像素点在第一降噪图像中对应的降噪像素值,确定像素点时域滤波后的第一像素值。

在另一种可选的实现方式中,装置还包括:

第一确定模块,用于根据帧差,确定运动补偿系数。

在另一种可选的实现方式中,装置还包括:

获取模块,用于获取像素点在第一降噪图像中对应的第二增益系数以及第二增益偏置系数;

第二确定模块,用于根据第二增益系数和第二增益偏置系数,确定像素点对应的第一增益偏置系数。

在另一种可选的实现方式中,时域滤波模块1102,还用于第二图像的任一像素点,将像素点对应的第一增益系数和像素点的第一像素值的乘积作为第一融合值;将像素点对应的第一增益系数和像素点的第二像素值的乘积作为第二融合值,第二像素值为像素点在经过空域滤波后的像素值;对第一融合值和第二融合值求和,得到像素点对应的降噪像素值。

在另一种可选的实现方式中,其特征在于,空域滤波和时域滤波分别对像素点的亮度分量进行处理。

在本申请实施例中,通过对目标图像的像素点进行解除像素依赖的空域滤波,使得目标图像中的各像素点之间不再存在依赖关系,并且根据空域滤波得到的第一图像和第一降噪图像之间的帧差,来并行对目标图像的像素点进行时域滤波,使得视频降噪过程由串行处理转换为并行处理,加速了降噪处理过程。

需要说明的是:上述实施例提供的装置在运行应用程序时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

图12是本申请实施例提供的一种终端1200的结构框图。该终端1200可以是:智能手机、平板电脑、mp3播放器(movingpictureexpertsgroupaudiolayeriii,动态影像专家压缩标准音频层面3)、mp4(movingpictureexpertsgroupaudiolayeriv,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端1200还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。

通常,终端1200包括有:处理器1201和存储器1202。

处理器1201可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1201可以采用dsp(digitalsignalprocessing,数字信号处理)、fpga(field-programmablegatearray,现场可编程门阵列)、pla(programmablelogicarray,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1201也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(centralprocessingunit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1201可以在集成有gpu(graphicsprocessingunit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1201还可以包括ai(artificialintelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。

存储器1202可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1202还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1202中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1201所执行以实现本申请中方法实施例提供的视频降噪方法。

在一些实施例中,终端1200还可选包括有:外围设备接口1203和至少一个外围设备。处理器1201、存储器1202和外围设备接口1203之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1203相连。具体地,外围设备包括:射频电路1204、显示屏1205、摄像头组件1206、音频电路1207、定位组件1208和电源1209中的至少一种。

外围设备接口1203可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器1201和存储器1202。在一些实施例中,处理器1201、存储器1202和外围设备接口1203被集成在同一芯片或电路板上;在一些其他实施例中,处理器1201、存储器1202和外围设备接口1203中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。

射频电路1204用于接收和发射rf(radiofrequency,射频)信号,也称电磁信号。射频电路1204通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1204将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1204包括:天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1204可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2g、3g、4g及5g)、无线局域网和/或wifi(wirelessfidelity,无线保真)网络。在一些实施例中,射频电路1204还可以包括nfc(nearfieldcommunication,近距离无线通信)有关的电路,本申请对此不加以限定。

显示屏1205用于显示ui(userinterface,用户界面)。该ui可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1205是触摸显示屏时,显示屏1205还具有采集在显示屏1205的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1201进行处理。此时,显示屏1205还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1205可以为一个,设置终端1200的前面板;在另一些实施例中,显示屏1205可以为至少两个,分别设置在终端1200的不同表面或呈折叠设计;在再一些实施例中,显示屏1205可以是柔性显示屏,设置在终端1200的弯曲表面上或折叠面上。甚至,显示屏1205还可以设置成非矩形的不规则图形,也即异形屏。显示屏1205可以采用lcd(liquidcrystaldisplay,液晶显示屏)、oled(organiclight-emittingdiode,有机发光二极管)等材质制备。

摄像头组件1206用于采集图像或视频。可选地,摄像头组件1206包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及vr(virtualreality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1206还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。

音频电路1207可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1201进行处理,或者输入至射频电路1204以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1200的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1201或射频电路1204的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1207还可以包括耳机插孔。

定位组件1208用于定位终端1200的当前地理位置,以实现导航或lbs(locationbasedservice,基于位置的服务)。定位组件1208可以是基于美国的gps(globalpositioningsystem,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。

电源1209用于为终端1200中的各个组件进行供电。电源1209可以是交流电、直流电、一次性电池或可充电电池。当电源1209包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。

在一些实施例中,终端1200还包括有一个或多个传感器1210。该一个或多个传感器1210包括但不限于:加速度传感器1211、陀螺仪传感器1212、压力传感器1213、指纹传感器1214、光学传感器1215以及接近传感器1216。

加速度传感器1211可以检测以终端1200建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1211可以用于检测重力加速度在三个坐标轴上的分量。处理器1201可以根据加速度传感器1211采集的重力加速度信号,控制显示屏1205以横向视图或纵向视图进行用户界面的显示。加速度传感器1211还可以用于游戏或者用户的运动数据的采集。

陀螺仪传感器1212可以检测终端1200的机体方向及转动角度,陀螺仪传感器1212可以与加速度传感器1211协同采集用户对终端1200的3d动作。处理器1201根据陀螺仪传感器1212采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变ui)、拍摄时的图像稳定、游戏控制以及惯性导航。

压力传感器1213可以设置在终端1200的侧边框和/或显示屏1205的下层。当压力传感器1213设置在终端1200的侧边框时,可以检测用户对终端1200的握持信号,由处理器1201根据压力传感器1213采集的握持信号进行左右手识别或快捷操作。当压力传感器1213设置在显示屏1205的下层时,由处理器1201根据用户对显示屏1205的压力操作,实现对ui界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。

指纹传感器1214用于采集用户的指纹,由处理器1201根据指纹传感器1214采集到的指纹识别用户的身份,或者,由指纹传感器1214根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1201授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1214可以被设置终端1200的正面、背面或侧面。当终端1200上设置有物理按键或厂商logo时,指纹传感器1214可以与物理按键或厂商logo集成在一起。

光学传感器1215用于采集环境光强度。在一个实施例中,处理器1201可以根据光学传感器1215采集的环境光强度,控制显示屏1205的显示亮度。具体地,当环境光强度较高时,调高显示屏1205的显示亮度;当环境光强度较低时,调低显示屏1205的显示亮度。在另一个实施例中,处理器1201还可以根据光学传感器1215采集的环境光强度,动态调整摄像头组件1206的拍摄参数。

接近传感器1216,也称距离传感器,通常设置在终端1200的前面板。接近传感器1216用于采集用户与终端1200的正面之间的距离。在一个实施例中,当接近传感器1216检测到用户与终端1200的正面之间的距离逐渐变小时,由处理器1201控制显示屏1205从亮屏状态切换为息屏状态;当接近传感器1216检测到用户与终端1200的正面之间的距离逐渐变大时,由处理器1201控制显示屏1205从息屏状态切换为亮屏状态。

本邻域技术人员可以理解,图12中示出的结构并不构成对终端1200的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。

本申请实施例还提供了一种存储介质,该存储介质应用于终端,该存储介质中存储有至少一条程序代码,该至少一条程序代码用于被处理器执行并实现本申请实施例中的视频降噪方法。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,程序可以存储于一种存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1