CN114945936A - 多帧降噪方法、终端、以及系统 - Google Patents

多帧降噪方法、终端、以及系统 Download PDF

Info

Publication number
CN114945936A
CN114945936A CN202080092014.4A CN202080092014A CN114945936A CN 114945936 A CN114945936 A CN 114945936A CN 202080092014 A CN202080092014 A CN 202080092014A CN 114945936 A CN114945936 A CN 114945936A
Authority
CN
China
Prior art keywords
image frame
pixel
reference image
scene
image frames
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
CN202080092014.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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp Ltd
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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Publication of CN114945936A publication Critical patent/CN114945936A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)

Abstract

一种用于多帧降噪的计算机实施的方法,包括:多个相机获得场景的多个图像帧,多个图像帧中的每个图像帧分别由多个相机中的一个相机同时捕获;选择多个图像帧中的一个图像帧作为基准图像帧;将基准图像帧以外的多个图像帧对准以匹配基准图像帧中的场景的公共区域,以生成扭曲的图像帧。分别对于每个扭曲的图像帧,该方法包括:响应于确定基准图像帧中的场景的公共区域中的像素位置的像素值与上述扭曲的图像帧中的一个扭曲的图像帧中的场景的公共区域中的像素位置的像素值之间的差值大于预设阈值,用修正值替换上述扭曲的图像帧中的一个扭曲的图像帧中的像素位置的像素值,该修正值基于基准图像帧中的像素位置的相邻像素位置的像素值计算。

Description

多帧降噪方法、终端、以及系统
技术领域
本公开涉及图像处理领域,尤其涉及多帧降噪方法、终端、以及系统。
背景技术
相机捕获到的图像既包含信号,也包含噪声。信号是指相机旨在捕获到的信息,例如人或对象。噪声是指应该被最小化的信息,例如鬼影移动(ghost walking)、多余的移动引起的寄生信号、或低环境照明。在图像处理过程中,通过降噪来提高信噪比。传统的降噪方法是中值混合(median blending),该方法使用相机连续拍摄同一对象的若干图像,并选择给定像素位置的中值像素值。中值混合假设噪声是随机的,给定像素位置的信号保持不变。中值混合需要使用相机连续拍摄,并且受限于最大帧率和潜在抖动。
美国专利10,257,450讨论了使用若干相机同时拍摄同一场景。在一次拍摄中,每个相机捕获一张图像。根据相机的平移量对捕获的图像进行配准,然后通过视差校正和平均处理生成合成图像,并进行诸如鬼影去除、时间滤波、以及空间滤波等降噪操作。用于生成合成图像的视差校正包括:将基准图像的特定像素位置处的像素值与其他图像帧的特定位置处的像素值进行比较;当差值大于预设阈值时,用基准图像的特定像素位置处的像素值来替换其他图像帧的像素值。
然而,基准图像本身可能受到噪声的严重污染。特别地,当环境照明低或存在强寄生噪声时,在基准图像中捕获的噪声可能被携带至合成图像上,并对降噪结果产生负面影响。此外,合成图像可能受到精度低的运动矢量的影响,并且在基准图像和其他图像帧之间可能存在不匹配。因此,无法将基准图像的特定像素位置处的像素值与其他图像帧的对应特定位置处的适当像素值进行比较,从而进一步对降噪结果产生负面影响。
发明内容
参考现有技术中的上述缺点,并根据本公开的各种实施例,提供了多帧降噪方法、终端、以及系统。
根据本公开的一方面,提供了一种用于多帧降噪的计算机实施的方法。该方法包括:多个相机获得场景的多个图像帧,多个图像帧中的每个图像帧分别由多个相机中的一个相机同时捕获;选择多个图像帧中的一个图像帧作为基准图像帧;将基准图像帧以外的多个图像帧对准以匹配基准图像帧中的场景的公共区域,以生成扭曲的图像帧。分别对于每个扭曲的图像帧,该方法包括:响应于确定基准图像帧中的场景的公共区域中的像素位置的像素值与上述扭曲的图像帧中的一个扭曲的图像帧中的场景的公共区域中的像素位置的像素值之间的差值大于预设阈值,用修正值替换上述扭曲的图像帧中的上述一个扭曲的图像帧中的像素位置的像素值,该修正值基于基准图像帧中的像素位置的相邻像素位置的像素值计算。
根据本公开的另一方面,通过对基准图像帧中的两个像素位置的像素值取平均来计算修正值,上述两个像素位置沿水平方向夹住基准图像帧中的场景的公共区域的像素位置。
根据本公开的另一方面,通过对基准图像帧中的两个像素位置的像素值取平均来计算修正值,上述两个像素位置沿垂直方向夹住基准图像帧中的场景的公共区域的像素位置。
根据本公开的另一方面,通过对基准图像帧中的两个像素位置的像素值取平均来计算修正值,上述两个像素位置沿对角线方向夹住基准图像帧中的场景的公共区域的像素位置。
根据本公开的另一方面,上述预设阈值基于场景的环境特征来确定。
根据本公开的另一方面,上述环境特征包括场景中亮度变化的频率。
根据本公开的另一方面,根据多个相机相对于捕获基准图像帧的相机的光流,来将基准图像帧以外的多个图像帧对准以匹配基准图像帧中的场景的公共区域。
根据本公开的另一方面,提供了一种终端。该终端包括:多个相机,用于获得场景的多个图像帧,多个图像帧中的每个图像帧分别由多个相机中的一个相机同时捕获;连接到多个相机的处理器。该处理器用于:选择多个图像帧中的一个图像帧作为基准图像帧;将基准图像帧以外的多个图像帧对准以匹配基准图像帧中的场景的公共区域,以生成扭曲的图像帧。分别对于每个扭曲的图像帧,处理器用于:响应于确定基准图像帧中的场景的公共区域中的像素位置的像素值与上述扭曲的图像帧中的一个扭曲的图像帧中的场景的公共区域中的像素位置的像素值之间的差值大于预设阈值,用修正值替换上述扭曲的图像帧中的上述一个扭曲的图像帧中的像素位置的像素值,该修正值基于基准图像帧中的像素位置的相邻像素位置的像素值计算。
根据本公开的另一方面,提供了一种系统。该系统包括一个或多个计算机和一个或多个存储指令的存储设备,当由一个或多个计算机执行时,上述指令使一个或多个计算机执行包括以下的操作:多个相机获得场景的多个图像帧,多个图像帧中的每个图像帧分别由所述多个相机中的一个相机同时捕获;选择多个图像帧中的一个图像帧作为基准图像帧;将基准图像帧以外的多个图像帧对准以匹配基准图像帧中的场景的公共区域,以生成扭曲的图像帧;以及分别对于每个扭曲的图像帧:响应于确定基准图像帧中的场景的公共区域中的像素位置的像素值与上述扭曲的图像帧中的一个扭曲的图像帧中的场景的公共区域中的像素位置的像素值之间的差值大于预设阈值,用修正值替换上述扭曲的图像帧中的上述一个扭曲的图像帧中的像素位置的像素值,该修正值基于基准图像帧中的像素位置的相邻像素位置的像素值计算。
附图说明
为了更清楚地说明根据本公开的实施例的技术方案或现有技术中的技术方案,在下文中简要地介绍用于描述上述实施例或现有技术的附图。显然,以下描述中的附图仅是本公开的一些实施例,本领域普通技术人员无需创造性努力即可从这些附图推导出其他附图。
为了更好地理解本发明的上述实施例及其附加实施例,应结合以下附图参考以下实施例的具体实施方式,其中,相同的附图标记在整个附图中指代对应的部分。
图1是根据本发明的一个方面的多帧降噪方法的示意性流程图。
图2是根据本发明的一个方面的多帧降噪方法的示意性流程图。
图3是根据本发明的一个方面的多帧降噪终端的示意性结构图。
图4是示出根据本发明的一个方面的多帧降噪系统如何起作用的示意性程序图。
具体实施方式
将结合附图和实施例详细描述本公开,使得本公开的目的、技术方案、以及优点将更加显而易见。应理解,描述特定实施例是为了说明本公开而非限制本公开。
现在将详细参考实施例,这些实施例的示例在附图中示出。在以下具体实施方式中,为了提供对本发明的透彻理解,阐述了许多特定细节。然而,对于本领域普通技术人员来说显而易见的是,可以在没有这些特定细节的情况下实施本发明。在其他实例中,未详细描述公知的方法、过程、组件、以及电路,以避免不必要地模糊上述实施例的各方面。
参照图1,在一些实施例中,同时捕获场景的若干图像帧。这些图像帧的相对位置可以影响降噪结果,因此通过运动矢量考虑了这些图像帧的相对位置,上述运动矢量示出了在拍摄场景时这些图像帧的相对位置和移动趋势。
在100,计算场景的这些图像帧的运动矢量。具体地,获得这些图像帧中的任何图像帧中的每个像素的运动矢量。在一些实施例中,基于捕获图像帧的多个相机的相对位置和拍摄方向来获得运动矢量。在一些实施例中,多个相机在同一平面上。在一些实施例中,多个相机不在同一平面上。
在102,根据计算的运动矢量对场景的图像帧进行扭曲或对准。在一些实施例中,确定多个图像帧中的场景的公共区域,并且对图像帧进行扭曲以覆盖该公共区域。在一些实施例中,使用光流算法或块匹配。在一些实施例中,图像帧可以被压缩、放大、或裁剪。在100计算的运动矢量被用作对图像帧进行扭曲或对准的指导。例如,当相机在同一平面上时,相机之间的相对位置可以用于计算图像帧的对应线性平移值。
在104,对扭曲或对准的图像帧进行修正以减小不正确的运动矢量的影响。特别地,在102,精度低的运动矢量可能导致图像帧之间的不匹配,即,两个对准的图像帧中的像素位置彼此不对应,从而对降噪结果产生负面影响。以下将进一步讨论对扭曲或对准的图像帧的修正。
在106,在104对扭曲或对准的图像帧进行修正之后,执行降噪操作,例如时间滤波或空间滤波、鬼影去除、或其他传统技术。
参照图2,在一些实施例中,示出了多帧降噪方法。可以参考本公开中讨论的其他实施例以及一个或多个附图来理解部分或全部的该多帧降噪方法。
在200:多个相机获得场景的多个图像帧,多个图像帧中的每个图像帧分别由多个相机中的一个相机同时捕获。在一些实施例中,多个相机在同一平面上。在一些实施例中,多个相机不在同一平面上。在一些实施例中,相机指向同一方向。在一些实施例中,相机不指向同一方向。通过使用连接到所有相机的计时器或倒计时器或触发器,相机可以同时拍摄同一场景。或者,在一些实施例中,在指定时间段发生的拍摄被认为是同时拍摄,从而更灵活地监测这些相机的功能。图像帧的数量与相机的数量相同,因此每个相机分别捕获多个图像帧中的一个图像帧。或者,可以使用特定相机在短时间段内连续拍摄场景以捕获多个图像帧,并且由该特定相机捕获这些图像帧被看作等同于这些图像帧已经分别被相等数量的相机同时捕获。当一个或多个相机故障或断开连接从而无法与其他相机一起拍摄时,该替代实施例是有益的。
在202:选择多个图像帧中的一个图像帧作为基准图像帧。可以从图像帧中随机选择基准图像帧,或者可以根据某种偏好选择基准图像帧。在一些实施例中,可以为每个图像帧分配时间戳,并且选择具有最接近选择时间的时间戳的当前图像帧作为基准图像帧。特别地,当特定相机捕获图像帧时,记录拍摄的时间,然后相应地生成时间戳并将该时间戳分配给该相机。这些相机的时间戳可以用于选择当前图像帧。
在204,将基准图像帧以外的多个图像帧对准以匹配基准图像帧中的场景的公共区域,以生成扭曲的图像帧。在一些实施例中,确定多个图像帧中的场景的公共区域,并且对图像帧进行扭曲或对准以覆盖该公共区域。可以将公共区域确定为场景中的人类,并且可以部署面部识别模块来对准人类的面部。公共区域也可以是场景中的对象(例如地标),可以通过基于互联网的服务和对象识别模块一起来识别该对象。可选地,公共区域可以是示出大部分场景的图像帧之间的重叠区域。在一些实施例中,使用光流算法或块匹配来对准图像帧。可选地,在一些实施例中,相对于捕获在202选择的基准图像帧的特定相机,使用了上述相机的光流和对应的图像帧。在一些实施例中,图像帧的扭曲或对准可以涉及压缩、放大、或裁剪。在一些实施例中,获得这些图像帧中的任何图像帧中的每个像素的运动矢量。在一些实施例中,基于捕获图像帧的相机的相对位置和拍摄方向来获得运动矢量。运动矢量被用作对图像帧进行扭曲或对准的指导。例如,当相机在同一平面上时,相机之间的相对位置可以用于计算图像帧的对应线性平移值。
在206:分别对于每个扭曲的图像帧,响应于确定基准图像帧中的场景的公共区域中的像素位置的像素值与上述扭曲的图像帧中的一个扭曲的图像帧中的场景的公共区域中的像素位置的像素值之间的差值大于预设阈值,用修正值替换上述扭曲的图像帧中的上述一个扭曲的图像帧中的像素位置的像素值,该修正值基于基准图像帧中的像素位置的相邻像素位置的像素值计算。
仍然在206,预设阈值对环境特征(例如亮度或影响降噪结果的其他因素)敏感。例如,如果在200的图像帧拍摄发生在若干镜球不停旋转的俱乐部场景中,则在拍摄这些图像帧时,一定会有非常剧烈的亮度变化,从而在环境中造成寄生噪声。在这种特定情况下,最好将预置阈值设置得较大,以反映环境中亮度的快速变化引起的寄生噪声。而在环境亮度相对稳定的普通场景中,将预设阈值设置得较小,以捕获不像旋转镜球引起的噪声那么强的噪声。
仍然在206,在一些实施例中,对于基于基准图像帧中的像素位置的相邻像素位置的像素值来计算修正值,相邻像素位置可以是沿水平方向夹住基准图像帧中的场景的公共区域的像素位置的两个像素位置。例如,将基准图像帧指定为frame(t),其中t指基准图像帧的拍摄时间,特定像素位置pixel(x,y)的值为255。扭曲的图像帧在pixel(x,y)处的值为20。在pixel(x,y)处,基准图像帧的值255与扭曲的图像帧的值20之间的差值为235,并且大于预设阈值30。然后,基于frame(t)中沿指定为x轴的水平方向夹住pixel(x,y)的两个相邻像素位置pixel(x-1,y)和pixel(x+1,y)的像素值来计算修正值。在该示例中,frame(t)的pixel(x-1,y)处的像素值为126,而frame(t)的pixel(x+1,y)处的像素值为128。修正值是像素值126和像素值128的的平均值,即127。将扭曲的图像帧的pixel(x,y)处的像素值20替换为127,而不是基准图像帧的pixel(x,y)处的像素值255。通过使用周围的像素值及其平均值而不是特定像素位置处的像素值,可以避免使用错误位置的像素值。此外,当基准图像帧中特定像素位置处的像素值被噪声污染时,使用周围的像素值及其平均值具有防止噪声引起的缺陷被携带至降噪结果的有益效果。此外,由于运动矢量精度较低,一些图像无法很好地对准。通过比较特定像素位置处的像素值来检测缺陷,可以减少不良对准造成的负面影响。在一些实施例中,相邻像素位置可以是沿垂直方向夹住基准图像帧中的场景的公共区域的像素位置的两个像素位置。例如,基于frame(t)中沿指定为y轴的垂直方向夹住pixel(x,y)的两个相邻像素位置pixel(x,y-1)和pixel(x,y+1)的像素值来计算修正值。在一些实施例中,相邻像素位置可以是沿对角线方向夹住基准图像帧中的场景的公共区域的像素位置的两个像素位置。例如,基于frame(t)中的pixel(x-1,y-1)和pixel(x+1,y+1)的像素值或者pixel(x-1,y+1)和pixel(x+1,y-1)的像素值来计算修正值。
参照图3,根据本公开的一方面,提供了终端300。终端300包括若干相机302和连接到相机302的处理器304。
相机302用于获得场景的多个图像帧,多个图像帧中的每个图像帧分别由多个相机中的一个相机同时捕获。在一些实施例中,多个相机在同一平面上。在一些实施例中,多个相机不在同一平面上。在一些实施例中,相机指向同一方向。在一些实施例中,相机不指向同一方向。通过使用连接到所有相机的计时器或倒计时器或触发器,相机可以同时拍摄同一场景。或者,在一些实施例中,在指定时间段发生的拍摄被认为是同时拍摄,从而更灵活地监测这些相机的功能。图像帧的数量与相机的数量相同,因此每个相机分别捕获多个图像帧中的一个图像帧。或者,可以使用特定相机在短时间段内连续拍摄场景以捕获多个图像帧,并且由该特定相机捕获这些图像帧被看作等同于这些图像帧已经分别被相等数量的相机同时捕获。当一个或多个相机故障或断开连接从而无法与其他相机一起拍摄时,该替代实施例是有益的。
处理器304用于选择多个图像帧中的一个图像帧作为基准图像帧。可以从图像帧中随机选择基准图像帧,或者可以根据某种偏好选择基准图像帧。在一些实施例中,可以为每个图像帧分配时间戳,并且选择具有最接近选择时间的时间戳的当前图像帧作为基准图像帧。特别地,当特定相机捕获图像帧时,记录拍摄的时间,然后相应地生成时间戳并将该时间戳分配给该相机。这些相机的时间戳可以用于选择当前图像帧。
处理器304用于将基准图像帧以外的多个图像帧对准以匹配基准图像帧中的场景的公共区域,以生成扭曲的图像帧。在一些实施例中,确定多个图像帧中的场景的公共区域,并且对图像帧进行扭曲或对准以覆盖该公共区域。可以将公共区域确定为场景中的人类,并且可以部署面部识别模块来对准人类的面部。公共区域也可以是场景中的对象(例如地标),可以通过基于互联网的服务和对象识别模块一起来识别该对象。可选地,公共区域可以是示出大部分场景的图像帧之间的重叠区域。在一些实施例中,使用光流算法或块匹配来对准图像帧。可选地,在一些实施例中,相对于捕获在202选择的基准图像帧的特定相机,使用了上述相机的光流和对应的图像帧。在一些实施例中,图像帧的扭曲或对准可以涉及压缩、放大、或裁剪。在一些实施例中,获得这些图像帧中的任何图像帧中的每个像素的运动矢量。在一些实施例中,基于捕获图像帧的相机的相对位置和拍摄方向来获得运动矢量。运动矢量被用作对图像帧进行扭曲或对准的指导。例如,当相机在同一平面上时,相机之间的相对位置可以用于计算图像帧的对应线性平移值。
处理器304用于:分别对于每个扭曲的图像帧,响应于确定基准图像帧中的场景的公共区域中的像素位置的像素值与上述扭曲的图像帧中的一个扭曲的图像帧中的场景的公共区域中的像素位置的像素值之间的差值大于预设阈值,用修正值替换上述扭曲的图像帧中的上述一个扭曲的图像帧中的像素位置的像素值,该修正值基于基准图像帧中的像素位置的相邻像素位置的像素值计算。
仍然参照图3,预设阈值环境特征(例如亮度或影响降噪结果的其他因素)敏感。例如,如果在200的图像帧拍摄发生在若干镜球不停旋转的俱乐部场景中,则在拍摄这些图像帧时,一定会有非常剧烈的亮度变化,从而在环境中造成寄生噪声。在这种特定情况下,最好将预置阈值设置得较大,以反映环境中亮度的快速变化引起的寄生噪声。而在环境亮度相对稳定的普通场景中,将预设阈值设置得较小,以捕获不像旋转镜球引起的噪声那么强的噪声。
仍然参照图3,在一些实施例中,对于基于基准图像帧中的像素位置的相邻像素位置的像素值来计算修正值,相邻像素位置可以是沿水平方向夹住基准图像帧中的场景的公共区域的像素位置的两个像素位置。例如,将基准图像帧指定为frame(t),其中t指基准图像帧的拍摄时间,特定像素位置pixel(x,y)的值为255。扭曲的图像帧在pixel(x,y)处的值为20。在pixel(x,y)处,基准图像帧的值255与扭曲的图像帧的值20之间的差值为235,并且大于预设阈值30。然后,基于frame(t)中沿指定为x轴的水平方向夹住pixel(x,y)的两个相邻像素位置pixel(x-1,y)和pixel(x+1,y)的像素值来计算修正值。在该示例中,frame(t)的pixel(x-1,y)处的像素值为126,而frame(t)的pixel(x+1,y)处的像素值为128。修正值是像素值126和像素值128的的平均值,即127。将扭曲的图像帧的pixel(x,y)处的像素值20替换为127,而不是基准图像帧的pixel(x,y)处的像素值255。通过使用周围的像素值及其平均值而不是特定像素位置处的像素值,可以避免使用错误位置的像素值。此外,当基准图像帧中特定像素位置处的像素值被噪声污染时,使用周围的像素值及其平均值具有防止噪声引起的缺陷被携带至降噪结果的有益效果。此外,由于运动矢量精度较低,一些图像无法很好地对准。通过比较特定像素位置处的像素值来检测缺陷,可以减少不良对准造成的负面影响。在一些实施例中,相邻像素位置可以是沿垂直方向夹住基准图像帧中的场景的公共区域的像素位置的两个像素位置。例如,基于frame(t)中沿指定为y轴的垂直方向夹住pixel(x,y)的两个相邻像素位置pixel(x,y-1)和pixel(x,y+1)的像素值来计算修正值。在一些实施例中,相邻像素位置可以是沿对角线方向夹住基准图像帧中的场景的公共区域的像素位置的两个像素位置。例如,基于frame(t)中的pixel(x-1,y-1)和pixel(x+1,y+1)的像素值或者pixel(x-1,y+1)和pixel(x+1,y-1)的像素值来计算修正值。
参照图4,提供一种系统,包括一个或多个计算机和一个或多个存储指令的存储设备。当由一个或多个计算机执行时,上述指令使一个或多个计算机执行用于多帧降噪的操作。可以参考本公开中讨论的其他实施例以及一个或多个附图来理解部分或全部的该系统。下面讨论执行用于多帧降噪的操作的该系统的特定操作。
在400:多个相机获得场景的多个图像帧,多个图像帧中的每个图像帧分别由多个相机中的一个相机同时捕获。在一些实施例中,多个相机在同一平面上。在一些实施例中,多个相机不在同一平面上。在一些实施例中,相机指向同一方向。在一些实施例中,相机不指向同一方向。通过使用连接到所有相机的计时器或倒计时器或触发器,相机可以同时拍摄同一场景。或者,在一些实施例中,在指定时间段发生的拍摄被认为是同时拍摄,从而更灵活地监测这些相机的功能。图像帧的数量与相机的数量相同,因此每个相机分别捕获多个图像帧中的一个图像帧。或者,可以使用特定相机在短时间段内连续拍摄场景以捕获多个图像帧,并且由该特定相机捕获这些图像帧被看作等同于这些图像帧已经分别被相等数量的相机同时捕获。当一个或多个相机故障或断开连接从而无法与其他相机一起拍摄时,该替代实施例是有益的。
在402:选择多个图像帧中的一个图像帧作为基准图像帧。可以从图像帧中随机选择基准图像帧,或者可以根据某种偏好选择基准图像帧。在一些实施例中,可以为每个图像帧分配时间戳,并且选择具有最接近选择时间的时间戳的当前图像帧作为基准图像帧。特别地,当特定相机捕获图像帧时,记录拍摄的时间,然后相应地生成时间戳并将该时间戳分配给该相机。这些相机的时间戳可以用于选择当前图像帧。
在404,将基准图像帧以外的多个图像帧对准以匹配基准图像帧中的场景的公共区域,以生成扭曲的图像帧。在一些实施例中,确定多个图像帧中的场景的公共区域,并且对图像帧进行扭曲或对准以覆盖该公共区域。可以将公共区域确定为场景中的人类,并且可以部署面部识别模块来对准人类的面部。公共区域也可以是场景中的对象(例如地标),可以通过基于互联网的服务和对象识别模块一起来识别该对象。可选地,公共区域可以是示出大部分场景的图像帧之间的重叠区域。在一些实施例中,使用光流算法或块匹配来对准图像帧。可选地,在一些实施例中,相对于捕获在202选择的基准图像帧的特定相机,使用了上述相机的光流和对应的图像帧。在一些实施例中,图像帧的扭曲或对准可以涉及压缩、放大、或裁剪。在一些实施例中,获得这些图像帧中的任何图像帧中的每个像素的运动矢量。在一些实施例中,基于捕获图像帧的相机的相对位置和拍摄方向来获得运动矢量。运动矢量被用作对图像帧进行扭曲或对准的指导。例如,当相机在同一平面上时,相机之间的相对位置可以用于计算图像帧的对应线性平移值。
在406:分别对于每个扭曲的图像帧,响应于确定基准图像帧中的场景的公共区域中的像素位置的像素值与上述扭曲的图像帧中的一个扭曲的图像帧中的场景的公共区域中的像素位置的像素值之间的差值大于预设阈值,用修正值替换上述扭曲的图像帧中的上述一个扭曲的图像帧中的像素位置的像素值,该修正值基于基准图像帧中的像素位置的相邻像素位置的像素值计算。
仍然在406,预设阈值环境特征(例如亮度或影响降噪结果的其他因素)敏感。例如,如果在200的图像帧拍摄发生在若干镜球不停旋转的俱乐部场景中,则在拍摄这些图像帧时,一定会有非常剧烈的亮度变化,从而在环境中造成寄生噪声。在这种特定情况下,最好将预置阈值设置得较大,以反映环境中亮度的快速变化引起的寄生噪声。而在环境亮度相对稳定的普通场景中,将预设阈值设置得较小,以捕获不像旋转镜球引起的噪声那么强的噪声。
仍然在406,在一些实施例中,对于基于基准图像帧中的像素位置的相邻像素位置的像素值来计算修正值,相邻像素位置可以是沿水平方向夹住基准图像帧中的场景的公共区域的像素位置的两个像素位置。例如,将基准图像帧指定为frame(t),其中t指基准图像帧的拍摄时间,特定像素位置pixel(x,y)的值为255。扭曲的图像帧在pixel(x,y)处的值为20。在pixel(x,y)处,基准图像帧的值255与扭曲的图像帧的值20之间的差值为235,并且大于预设阈值30。然后,基于frame(t)中沿指定为x轴的水平方向夹住pixel(x,y)的两个相邻像素位置pixel(x-1,y)和pixel(x+1,y)的像素值来计算修正值。在该示例中,frame(t)的pixel(x-1,y)处的像素值为126,而frame(t)的pixel(x+1,y)处的像素值为128。修正值是像素值126和像素值128的的平均值,即127。将扭曲的图像帧的pixel(x,y)处的像素值20替换为127,而不是基准图像帧的pixel(x,y)处的像素值255。通过使用周围的像素值及其平均值而不是特定像素位置处的像素值,可以避免使用错误位置的像素值。此外,当基准图像帧中特定像素位置处的像素值被噪声污染时,使用周围的像素值及其平均值具有防止噪声引起的缺陷被携带至降噪结果的有益效果。此外,由于运动矢量精度较低,一些图像无法很好地对准。通过比较特定像素位置处的像素值来检测缺陷,可以减少不良对准造成的负面影响。在一些实施例中,相邻像素位置可以是沿垂直方向夹住基准图像帧中的场景的公共区域的像素位置的两个像素位置。例如,基于frame(t)中沿指定为y轴的垂直方向夹住pixel(x,y)的两个相邻像素位置pixel(x,y-1)和pixel(x,y+1)的像素值来计算修正值。在一些实施例中,相邻像素位置可以是沿对角线方向夹住基准图像帧中的场景的公共区域的像素位置的两个像素位置。例如,基于frame(t)中的pixel(x-1,y-1)和pixel(x+1,y+1)的像素值或者pixel(x-1,y+1)和pixel(x+1,y-1)的像素值来计算修正值。
可以通过软件、硬件、或其组合部分或整体地实现各种实施例。上述方法可以由嵌入在基站处理器中或独立于基站处理器的模块以硬件形式执行,或者以软件形式存储在基站存储器中,以便于处理器调用和执行上述各种模块的对应步骤。处理器可以是中央处理单元(central processing unit,CPU)、微处理器、微控制器单元等。
本领域技术人员应理解,上述实施例中的方法的过程可以全部或部分地由指示底层硬件的计算机程序来实现,程序可以存储在非易失性计算机可读存储介质中,在被执行时,程序可以包括各种方法的实施例中的过程。存储介质可以是磁盘、CD、只读存储器(read-only memory,ROM)。
虽然已经逐一描述了各个实施例,但应理解,上述各个实施例将不是孤立的。本领域技术人员在阅读本申请的本公开时可以显而易见地理解,在各个实施例中包括的各个技术特征可以在各个实施例之间任意组合,只要这些技术特征彼此不冲突。
上述实施方式仅仅是本公开的具体实施例,并不旨在限制本公开的保护范围。应注意,在本公开公开的技术范围内,由本领域技术人员容易想到的任何变化或替换都将落入本公开的保护范围。因此,本公开的保护范围以权利要求的保护范围为准。

Claims (21)

1.一种用于多帧降噪的计算机实施的方法,所述方法包括:
多个相机获得场景的多个图像帧,所述多个图像帧中的每个图像帧分别由所述多个相机中的一个相机同时捕获;
选择所述多个图像帧中的一个图像帧作为基准图像帧;
将所述基准图像帧以外的所述多个图像帧对准以匹配所述基准图像帧中的所述场景的公共区域,以生成扭曲的图像帧;以及
分别对于每个所述扭曲的图像帧:
响应于确定所述基准图像帧中的所述场景的所述公共区域中的像素位置的像素值与所述扭曲的图像帧中的一个扭曲的图像帧中的所述场景的所述公共区域中的所述像素位置的像素值之间的差值大于预设阈值,用修正值替换所述扭曲的图像帧中的所述一个扭曲的图像帧中的所述像素位置的所述像素值,所述修正值基于所述基准图像帧中的所述像素位置的相邻像素位置的像素值计算。
2.根据权利要求1所述的方法,其中,通过对所述基准图像帧中的两个像素位置的像素值取平均来计算所述修正值,所述两个像素位置沿水平方向夹住所述基准图像帧中的所述场景的所述公共区域的所述像素位置。
3.根据权利要求1所述的方法,其中,通过对所述基准图像帧中的两个像素位置的像素值取平均来计算所述修正值,所述两个像素位置沿垂直方向夹住所述基准图像帧中的所述场景的所述公共区域的所述像素位置。
4.根据权利要求1所述的方法,其中,通过对所述基准图像帧中的两个像素位置的像素值取平均来计算所述修正值,所述两个像素位置沿对角线方向夹住所述基准图像帧中的所述场景的所述公共区域的所述像素位置。
5.根据权利要求1-4中任一项所述的方法,其中,所述预设阈值基于所述场景的环境特征来确定。
6.根据权利要求5所述的方法,其中,所述环境特征包括所述场景中亮度变化的频率。
7.根据权利要求1所述的方法,其中,根据所述多个相机相对于捕获所述基准图像帧的相机的光流,来将所述基准图像帧以外的所述多个图像帧对准以匹配所述基准图像帧中的所述场景的所述公共区域。
8.一种终端,包括:
多个相机,用于获得场景的多个图像帧,所述多个图像帧中的每个图像帧分别由所述多个相机中的一个相机同时捕获;以及
处理器,连接到所述多个相机并用于:
选择所述多个图像帧中的一个图像帧作为基准图像帧;
将所述基准图像帧以外的所述多个图像帧对准以匹配所述基准图像帧中的所述场景的公共区域,以生成扭曲的图像帧;以及
分别对于每个所述扭曲的图像帧:
响应于确定所述基准图像帧中的所述场景的所述公共区域中的像素位置的像素值与所述扭曲的图像帧中的一个扭曲的图像帧中的所述场景的所述公共区域中的所述像素位置的像素值之间的差值大于预设阈值,用修正值替换所述扭曲的图像帧中的所述一个扭曲的图像帧中的所述像素位置的所述像素值,所述修正值基于所述基准图像帧中的所述像素位置的相邻像素位置的像素值计算。
9.根据权利要求8所述的终端,其中,通过对所述基准图像帧中的两个像素位置的像素值取平均来计算所述修正值,所述两个像素位置沿水平方向夹住所述基准图像帧中的所述场景的所述公共区域的所述像素位置。
10.根据权利要求8所述的终端,其中,通过对所述基准图像帧中的两个像素位置的像素值取平均来计算所述修正值,所述两个像素位置沿垂直方向夹住所述基准图像帧中的所述场景的所述公共区域的所述像素位置。
11.根据权利要求8所述的终端,其中,通过对所述基准图像帧中的两个像素位置的像素值取平均来计算所述修正值,所述两个像素位置沿对角线方向夹住所述基准图像帧中的所述场景的所述公共区域的所述像素位置。
12.根据权利要求8-11中任一项所述的终端,其中,所述预设阈值基于所述场景的环境特征来确定。
13.根据权利要求12所述的终端,其中,所述环境特征包括所述场景中亮度变化的频率。
14.根据权利要求8所述的终端,其中,所述处理器用于根据所述多个相机相对于捕获所述基准图像帧的相机的光流,来将所述基准图像帧以外的所述多个图像帧对准以匹配所述基准图像帧中的所述场景的所述公共区域。
15.一种系统,包括一个或多个计算机和一个或多个存储指令的存储设备,当由所述一个或多个计算机执行时,所述指令使所述一个或多个计算机执行包括以下的操作:
多个相机获得场景的多个图像帧,所述多个图像帧中的每个图像帧分别由所述多个相机中的一个相机同时捕获;
选择所述多个图像帧中的一个图像帧作为基准图像帧;
将所述基准图像帧以外的所述多个图像帧对准以匹配所述基准图像帧中的所述场景的公共区域,以生成扭曲的图像帧;以及
分别对于每个所述扭曲的图像帧:
响应于确定所述基准图像帧中的所述场景的所述公共区域中的像素位置的像素值与所述扭曲的图像帧中的一个扭曲的图像帧中的所述场景的所述公共区域中的所述像素位置的像素值之间的差值大于预设阈值,用修正值替换所述扭曲的图像帧中的所述一个扭曲的图像帧中的所述像素位置的所述像素值,所述修正值基于所述基准图像帧中的所述像素位置的相邻像素位置的像素值计算。
16.根据权利要求15所述的系统,其中,通过对所述基准图像帧中的两个像素位置的像素值取平均来计算所述修正值,所述两个像素位置沿水平方向夹住所述基准图像帧中的所述场景的所述公共区域的所述像素位置。
17.根据权利要求15所述的系统,其中,通过对所述基准图像帧中的两个像素位置的像素值取平均来计算所述修正值,所述两个像素位置沿垂直方向夹住所述基准图像帧中的所述场景的所述公共区域的所述像素位置。
18.根据权利要求15所述的系统,其中,通过对所述基准图像帧中的两个像素位置的像素值取平均来计算所述修正值,所述两个像素位置沿对角线方向夹住所述基准图像帧中的所述场景的所述公共区域的所述像素位置。
19.根据权利要求15-18中任一项所述的系统,其中,所述预设阈值基于所述场景的环境特征来确定。
20.根据权利要求19所述的系统,其中,所述环境特征包括所述场景中亮度变化的频率。
21.根据权利要求15所述的系统,其中,根据所述多个相机相对于捕获所述基准图像帧的相机的光流,来将所述基准图像帧以外的所述多个图像帧对准以匹配所述基准图像帧中的所述场景的所述公共区域。
CN202080092014.4A 2020-01-09 2020-01-09 多帧降噪方法、终端、以及系统 Pending CN114945936A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/071169 WO2021138870A1 (en) 2020-01-09 2020-01-09 Multi-frame noise reduction method, terminal, and system

Publications (1)

Publication Number Publication Date
CN114945936A true CN114945936A (zh) 2022-08-26

Family

ID=76787675

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080092014.4A Pending CN114945936A (zh) 2020-01-09 2020-01-09 多帧降噪方法、终端、以及系统

Country Status (2)

Country Link
CN (1) CN114945936A (zh)
WO (1) WO2021138870A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113674241A (zh) * 2021-08-17 2021-11-19 Oppo广东移动通信有限公司 选帧方法、装置、计算机设备和存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100721338B1 (ko) * 2004-12-30 2007-05-28 엘지전자 주식회사 디지털 촬영장치의 색상 보간법
CN102708379B (zh) * 2012-05-09 2014-05-14 慈溪思达电子科技有限公司 一种立体视觉的遮挡像素分类算法
CN104285435B (zh) * 2012-05-10 2016-09-28 富士胶片株式会社 摄像装置及信号校正方法
WO2015172366A1 (zh) * 2014-05-15 2015-11-19 华为技术有限公司 用于多帧降噪的方法和终端
CN105869113B (zh) * 2016-03-25 2019-04-26 华为技术有限公司 全景图像的生成方法和装置
US20180109810A1 (en) * 2016-10-17 2018-04-19 Mediatek Inc. Method and Apparatus for Reference Picture Generation and Management in 3D Video Compression

Also Published As

Publication number Publication date
WO2021138870A1 (en) 2021-07-15

Similar Documents

Publication Publication Date Title
US11665427B2 (en) Still image stabilization/optical image stabilization synchronization in multi-camera image capture
JP4893758B2 (ja) 画像処理装置、画像処理方法および撮像装置
US7705884B2 (en) Processing of video data to compensate for unintended camera motion between acquired image frames
JP4645746B2 (ja) 画像処理装置、画像処理方法および撮像装置
US8130277B2 (en) Method and system for intelligent and efficient camera motion estimation for video stabilization
US8508605B2 (en) Method and apparatus for image stabilization
US8106951B2 (en) Method for adjusting shooting condition of digital camera through motion detection
JP4760923B2 (ja) 画像処理装置、画像処理方法および撮像装置
US20100149210A1 (en) Image capturing apparatus having subject cut-out function
US20130329955A1 (en) Real-Time Face Tracking with Reference Images
US20190289207A1 (en) Fast scan-type panoramic image synthesis method and device
JP5569357B2 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP2018207252A (ja) 画像処理システム、画像処理システムの制御方法、及び、プログラム
CN105657262B (zh) 一种图像处理方法和装置
CN114945936A (zh) 多帧降噪方法、终端、以及系统
US11128815B2 (en) Device, method and computer program for extracting object from video
KR101468347B1 (ko) 이미지 내 가상 시각 정보를 식별하는 방법 및 장치
KR20080037965A (ko) 동영상 촬영장치의 제어방법 및 이를 채용한 동영상촬영장치
US10282633B2 (en) Cross-asset media analysis and processing
CN113870300A (zh) 图像处理方法、装置、电子设备及可读存储介质
CN113807124B (zh) 图像处理方法、装置、存储介质及电子设备
US20230058934A1 (en) Method for camera control, image signal processor and device
US20230206558A1 (en) Three-dimensional model generation method and three-dimensional model generation device
US20120044389A1 (en) Method for generating super resolution image
Sim New panoramic image generation based on modeling of vignetting and illumination effects

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