用于降低视频流中的噪声的系统和方法
【技术领域】
[0001] 本发明一般涉及降低视频流中的噪声。更加具体地,本发明涉及降低通过手持相 机(camera)获取的视频流中的噪声。
【背景技术】
[0002] 在过去的几十年中,相机传感器的视频降噪(denoise)已经成为进行了诸多研宄 和开发工作的领域。噪声是很多传感器中存在的严重问题,特别是当在低照明条件下或在 变化的光照条件下拍摄时。另外,其他视频处理算法的正确性能通常需要噪声降低。在视 频编码中,视频降噪可能导致比特流大小的降低,这是通过编码器单元中特定模块的增加 性能(例如,运动估计算法)等来实现的。图像、视频和计算机视觉算法(例如,跟踪和检 测)的性能还可能依赖于信号中噪声水平。
[0003] 因此,提供用于视频降噪的改进的方法和装置将是有益的。
【发明内容】
[0004] 下面的部分呈现了本公开的简要综述以便于提供对本发明的某些实施例的基本 的理解。此综述不是本公开的广泛的概述,并且其未突出本发明的关键/决定性的要素或 描述出本发明的范围。其唯一目的在于作为稍后所呈现的更加详细的说明书的前序,以简 要的形式介绍本文所公开的一些概念。
[0005] 在一个实施例中公开了一种对相机的视频流进行降噪的方法。视频流的当前帧和 该视频流中此前已经过空域降噪和时域降噪的时间上相邻的帧被获取。当前帧被进行空域 降噪,同时保留此当前帧中的边缘以为该当前帧生成多个经空域降噪的像素。在当前帧经 空域降噪之后,基于来自该当前帧的具体像素所关联的经空域降噪的像素和来自时间上相 邻的帧的经空域降噪和时域降噪的像素的加权平均,该当前帧的该具体像素被进行空域降 噪和时域降噪。
[0006] 在具体的实施例中,对当前帧进行空域降噪包括:基于围绕当前帧的每个像素的 区域内的多个近邻像素对这样的每个像素应用双边滤波技术。在进一步的方面,当前帧的 正被降噪的每个像素和它的近邻像素包括包围此正被降噪的像素的3乘3网格的像素。在 另一方面,双边滤波技术包括向每一个近邻像素提供与欧式距离和色差均成反比的权重。
[0007] 在又一实施例中,来自时间上相邻的帧的多个像素包括处在对应于具体像素和近 邻像素的位置的像素。在一替代方面,来自时间上相邻的帧的多个像素还包括处在接近对 应于具体像素和近邻像素的位置的位置处的内插像素。在又一特征中,具体像素所关联的 经空域降噪的像素的权重具有的值为1。
[0008] 在另一实施例中,本发明涉及一种相机,该相机包括用于检测光和生成视频流的 检测模块以及一个或多个可操作用于执行一个或多个上述方法实施例的一个或多个处理 器和存储器。在另一实施例中,本发明涉及至少一个计算机可读存储介质,其中该介质具有 被存储在其上的计算机程序指令,该指令被安排用于执行一个或多个上述操作。
[0009] 在下面对本发明的某些实施例的说明以及附图中将更加详细地介绍本发明的这 些和其他特征,其中这些说明和附图通过示例的方式示出了本发明的原理。
【附图说明】
[0010] 图1是示出了根据一个示例实施方式对视频流进行降噪的过程的流程图;
[0011] 图2示出了包括被多个黑色像素围绕的白色孤立像素的帧;
[0012] 图3示出了位于黑色列的像素和白色列的像素之间的白色孤立像素;
[0013] 图4示出了根据本发明的【具体实施方式】的可分离双边滤波处理;
[0014] 图5示出了根据一个实施例通过时域降噪对图4中的双边滤波处理的扩展;
[0015] 图6是通过使用常数C的不同值作为色差的函数的颜色加权系数的曲线图;
[0016] 图7是适用于实现本发明的实施例的典型的相机系统的框图;
[0017] 图8示出了根据另一实施例的通过使用内插像素进行的时域降噪对图4中的双边 滤波处理的扩展。
【具体实施方式】
[0018] 在下面的说明中提出了许多具体细节以便于提供对本发明的深入理解。本发明可 以在不具有部分或全部这些具体细节的情况下被实施。在其他实例中,众所周知的处理操 作未被详细描述以不会不必要地模糊本发明。尽管将结合具体实施例来描述本发明,应当 理解的是这不意图将本发明限制于这些实施例。
[0019] 降噪技术的某些实施例在本文中是就对所采集的视频流实施SMD(单指令 (single instruction)、多数据(multiple data))处理的相机来描述的。不过,诸如顺序处 理、多指令/多数据(MMD)处理、流处理(SMD或MMD)等等其他处理器架构也可被使用。 此外,当视频流被相机采集时,降噪技术可被使用在实时视频流上,或是在视频流被上传至 任何适当的处理器(例如,服务器或台式计算机)之后,该降噪技术可被应用于这种流。
[0020] 低成本相机对于对所采集的视频流实时执行降噪操作通常具有有限的处理资源。 一般来说,如本文进一步所描述的,本发明的某些实施例包括以最低计算要求实时从视频 流有效地去除或最小化噪声的降噪技术(例如,以每秒24帧或更高的速率进行降噪)。在 某些实施例中,通过基于来自当前帧和一个或多个时间相邻的帧的周围像素的子集的欧式 距离和颜色距离来实施加权平均,时域滤波被被集成到空域滤波方法中。
[0021] 图1是示出了根据一个示例实施方式的用于对视频流进行降噪的过程100的流程 图。一般来说,通过使用时间路径中的一个或多个在前帧和/或前向帧对当前帧f t进行降 噪。尽管可以使用单个在前帧,但是也可使用多个在前帧或前向帧以占用更长的时间路径。 此外,来自每一帧的各个像素可被顺序处理,或来自一个或多个帧的多个像素可被并行处 理。为了简单起见,单个在前帧fVi被用于说明对当前帧f t的每个像素进行的降噪处理。
[0022] 如图1所示,在操作102中获取视频流。然后,在操作104中获取来自视频流的第 一帧f t。例如,实时视频流从传感器到一个或多个缓冲器的传送被发起。视频流可被缓冲, 从而具体的帧很容易被得到并被用于降噪。视频流还可从存储设备被处理以便从该存储设 备读取具体的帧。
[0023] 其后,在操作106中可首先对当前帧ft的每个像素应用空域降噪。任何适当的空 域滤波技术均可被用在当前帧的每个像素上。空域滤波技术能够被应用于任何数量的颜色 空间。在一个实施例中,空域滤波被应用于BT. 601全范围YCbCr视频信号。另外,空域滤 波可被分别应用于每条通道,或者容易推断空域滤波可被同时应用于三条通道。
[0024] 如果使用不保留边缘的空域滤波技术,则作为降噪处理的结果可能会出现模糊。 图2示出了包括被多个黑色像素202围绕的白色孤立像素204的当前帧200。如果对当前 帧使用简单平均技术,则白色孤立像素将被变为与黑色接近的颜色,这是由于周围像素的 平均像素颜色为黑色。
[0025] 尽管简单平均对于同质帧可能很有用,但是此技术对于边缘像素来说不好用。图 3示出了位于黑色列的像素302和白色列的像素306