CN111464834A - 一种视频帧处理方法、装置、计算设备及存储介质 - Google Patents

一种视频帧处理方法、装置、计算设备及存储介质 Download PDF

Info

Publication number
CN111464834A
CN111464834A CN202010265646.8A CN202010265646A CN111464834A CN 111464834 A CN111464834 A CN 111464834A CN 202010265646 A CN202010265646 A CN 202010265646A CN 111464834 A CN111464834 A CN 111464834A
Authority
CN
China
Prior art keywords
image mask
frame
target object
image
current frame
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.)
Granted
Application number
CN202010265646.8A
Other languages
English (en)
Other versions
CN111464834B (zh
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010265646.8A priority Critical patent/CN111464834B/zh
Publication of CN111464834A publication Critical patent/CN111464834A/zh
Application granted granted Critical
Publication of CN111464834B publication Critical patent/CN111464834B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/21Circuitry for suppressing or minimising disturbance, e.g. moiré or halo

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

本申请涉及人工智能技术领域,提供一种视频帧处理方法、装置、计算设备及存储介质,用于减少视频帧之间的抖动。该方法包括:对当前帧中的目标对象进行分割处理,获得所述目标对象的第一图像掩模;根据当前帧的至少上一帧中所述目标对象的第二图像掩模,对所述第一图像掩模进行平滑处理,获得所述目标对象在所述当前帧中的目标图像掩模;获得所述当前帧中与所述目标图像掩模对应的目标对象区域。

Description

一种视频帧处理方法、装置、计算设备及存储介质
技术领域
本申请涉及人工智能技术领域,尤其涉及图像处理技术领域,提供一种视频帧处理方法、装置、计算设备及存储介质。
背景技术
随着计算机视觉技术的不断发展,逐渐出现了多种针对图像处理的特效,比如将视频帧中的头发分割出来,更换发型或者是染发等。
对视频的分割技术通常是对视频中每一帧进行目标对象分割,在分割后的每一帧上添加特效,最后将处理后的每一帧合并为视频流输出,因为前后视频帧变化、误检或漏检等情况,因此,前后帧中分割出的目标对象会发生抖动,视频质量较低。
发明内容
本申请实施例提供一种视频帧处理方法、装置、计算设备及存储介质,用于减少帧间抖动的情况。
一方面,提供一种视频帧处理方法,包括:
对当前帧中的目标对象进行分割处理,获得所述目标对象的第一图像掩模;
根据当前帧的至少上一帧中所述目标对象的第二图像掩模,对所述第一图像掩模进行平滑处理,获得所述目标对象在所述当前帧中的目标图像掩模;
获得所述当前帧中与所述目标图像掩模对应的目标对象区域。
另一方面,提供一种视频帧处理装置,包括:
分割模块,用于对当前帧中的目标对象进行分割处理,获得所述目标对象的第一图像掩模;
平滑模块,用于根据当前帧的至少上一帧中所述目标对象的第二图像掩模,对所述第一图像掩模进行平滑处理,获得所述目标对象在所述当前帧中的目标图像掩模;
获得模块,用于获得所述当前帧中与所述目标图像掩模对应的目标对象区域。
在一种可能的实施例中,所述获得模块还用于:
在根据当前帧的至少上一帧中所述目标对象的第二图像掩模,对所述第一图像掩模进行平滑处理,获得所述目标对象在所述当前帧中的目标图像掩模之前,对所述上一帧中的所述目标对象进行分割处理,获得所述第二图像掩模;或,
对所述上一帧中的所述目标对象进行分割处理获得的图像掩模进行平滑处理,获得所述第二图像掩模。
在一种可能的实施例中,所述平滑模块具体用于:
分别获得N个参考帧的每个参考帧中所述目标对象的第三图像掩模;其中,所述N个参考帧为当前帧之前的N个参考帧,每个参考帧中所述目标对象的第三图像掩模是对参考帧中的目标图像进行分割处理得到的;
将所述第一图像掩模、N个第三图像掩模进行加权处理,获得目标图像掩模。
在一种可能的实施例中,所述平滑模块具体用于:
分别获得所述N个参考帧的每个参考帧中所述目标对象的第三图像掩模,以及每个参考帧中所述目标对象的目标图像掩模;其中,所述N个参考帧为当前帧之前的N个参考帧,参考帧中所述目标对象的第三图像掩模是对参考帧中的目标图像进行分割处理得到的,参考帧中所述目标对象的目标图像掩模是对所述上一帧中的所述目标对象进行分割处理获得的图像掩模进行平滑处理获得的;参考帧中所述目标对象的目标图像掩模所述目标对象在参考帧中的目标图像掩模对第三图像掩模进行平滑处理获得的;
将所述第一图像掩模、N个第三图像掩模、以及N个目标图像掩模进行加权处理,获得目标图像掩模。
在一种可能的实施例中,对N个第三图像掩模或N个目标图像掩模进行加权处理的权重包括如下的以下至少一种是通过如下方式获得的:
根据各像素单元在所述当前帧与参考帧之间的变化值,确定出的权重矩阵;其中,所述权重矩阵包括至少一个权重,每个权重是根据像素单元对应的变化值确定的,变化值越大,权重越小;或,
根据预设的固定权重,确定权重。
在一种可能的实施例中,根据各像素单元在所述当前帧与参考帧之间的变化值,确定权重矩阵,包括:
获得所述当前帧与参考帧之间的光流变化矩阵;其中,光流变化矩阵中各元素用于表示各像素单元在所述当前帧和参考帧之间的变化值;
将所述光流变化矩阵中每个元素输入至预设函数中,获得每个像素单元对应的权重;
将各像素单元对应的权重按照预设顺序进行组合,获得进行加权处理的权重矩阵。
在一种可能的实施例中,若所述当前帧为视频中的关键帧,对N个第三图像掩模或N个目标图像掩模进行加权处理的权重是根据所述当前帧与参考帧之间的光流变化矩阵确定的;
若所述当前帧为视频中的非关键帧,对N个第三图像掩模或N个目标图像掩模进行加权处理的权重是根据预设的固定权重获得的。
在一种可能的实施例中,所述装置还包括播放模块,其中:
所述获得模块,还用于在获得所述当前帧中与所述目标图像掩模对应的目标对象区域之后,对所述当前帧中的目标对象区域添加特效处理,获得处理后的当前帧;
所述播放模块,用于根据所述处理后的当前帧,获得视频,并播放所述视频。
本申请实施例还提供一种计算设备,包括:
至少一个处理器,以及
与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现如第一方面中任一项所述的方法。
另外,本申请实施例还提供一种存储介质,所述存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如第一方面中任一项所述的方法。
由于本申请实施例采用上述技术方案,至少具有如下技术效果:
本申请实施例中,当前帧的图像掩模是根据上一帧的图像掩模对当前帧分割得到的第一图像掩模进行平滑处理得到的,因此,当前帧的图像掩模结合了上一帧的图像掩模信息,可以避免当前帧的图像掩模与上一帧的图像掩模差异过大而引起的视频帧闪烁的问题,减少了帧间抖动的问题,提高处理后的视频质量,相对可以提升用户使用体验。且,处理当前帧均需要至少上一帧的图像掩模,可以避免在处理过程中漏处理某个帧的可能性,提高视频处理的可靠性。
附图说明
图1为图像掩模的一种示意图;
图2A为相关技术中视频帧的处理前的示例图;
图2B为相关技术对图2A中的视频帧的处理的结果示例图;
图3为本申请实施例提供的一种视频帧处理设备的结构示意图;
图4为本申请实施例提供的一种应用场景示意图;
图5为本申请实施例提供的一种视频帧处理方法的流程图;
图6A为本申请实施例提供的采用固定权重平滑处理前的视频帧;
图6B为本申请实施例提供的采用固定权重平滑处理图6A的结果的示例图;
图7为本申请实施例提供的一种预设函数的曲线示意图;
图8A为本申请实施例提供的一种采用光流权重平滑处理前的示例图;
图8B为本申请实施例提供的一种采用光流权重平滑处理图8A的结果示例图;
图9为本申请实施例提供的一种视频帧处理方法的交互示意图;
图10为本申请实施例提供的一种特效元素选择界面的示例图;
图11为本申请实施例提供的一种显示的当前帧的示例图;
图12为本申请实施例提供的一种显示的处理后的当前帧的示例图;
图13为本申请实施例提供的一种视频帧处理装置的结构示意图;
图14为本申请实施例提供的一种计算设备的结构示意图。
具体实施方式
为了更好的理解本申请实施例提供的技术方案,下面将结合说明书附图以及具体的实施方式进行详细的说明。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
计算机视觉技术(Computer Vision,CV)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
光流(Optical flow or optic flow):是视域中的物体运动检测中的概念,用来描述相对于观察者的运动所造成的观测目标、表面或边缘的运动。光流法在样型识别、计算机视觉以及其他影像处理领域中非常有用,可用于运动检测、物件切割、碰撞时间与物体膨胀的计算、运动补偿编码,或者通过物体表面与边缘进行立体的测量等。
掩模(mask):又可以称为图像掩模,用选定的图像、图形或物体,对待处理的图像(全部或局部)进行处理,来控制图像处理的区域或处理过程,具体处理例如分割等。用于处理的特定图像、图形或物体称为掩模或模板。在图像处理中,图像掩模可以是矩阵、向量或图像等。由于本申请实施例中涉及的图像掩模的作用是对图像进行分割,因此本申请实施例中的图像掩模也可以称为分割掩模,或者图像分割掩模等。例如,请参照图1,表示一种图像掩模的示例图,图像分割模型识别出人脸图像中的头发区域,生成该人脸图像的图像掩模,该图像掩模中头发区域呈白色,其余区域为黑色。
目标对象:是指图像中特定的人、事物、或动物等,比如人的头发、人脸、天空等等。本申请实施例中是以一个目标对象为例,但是实际上,可以针对多个或者多类目标对象分别经过对应的处理。
当前帧:泛指当前待处理的任意一个视频帧。
上一帧:是指紧挨该视频帧,在该视频帧之前形成的一帧。
至少上一帧:可以理解为至少包括上一帧,但是可能还包括上一帧之前的视频帧。视频沿时间轴分别包括第一帧、第二帧、第三帧以及第N帧。当前帧为第i帧时,那么当前帧的上一帧(或前一帧)就是第i-1帧,当前帧的上上帧,则为第i+2帧,当前帧的后一帧则为第i+1帧,以此类推。比如至少上一帧可以是第i-1帧,或者比如至少上一帧可以是包括第i-1帧,第i-2帧。
第一图像掩模:是指对当前帧中的目标对象进行分割处理,获得的图像掩模,又可以称为本帧原始分割掩模。
第二图像掩模:是指上一帧中目标对象的相关图像掩模,在不同的情况下,第二图像掩模具体的内容,以及具体的获得方式有所不同。
第三图像掩模:是指对参考帧中目标对象进行分割处理获得的图像掩模。比如对上一帧中目标对象进行分割处理,获得的就是上一帧的第三图像掩模。
目标图像掩模:是指确定出的视频帧对应的图像掩模。比如当前帧的目标图像掩模可以理解为按照本申请实施例的方法,获得的当前帧中目标对象对应的图像掩模。
像素单元:是指处理图像的最小单元,像素单元可以是一个像素点,或者可以是多个像素点。
下面对本申请实施例涉及的设计思想进行介绍。
针对视频的处理大多是以视频帧为单位进行处理的,相关技术中是利用分割模型获得每个视频帧的图像掩模,而实际上,相邻两帧之间目标对象会存在一些变化,仅用图像分割对每一帧进行分割,无法考虑到帧间的抖动情况,导致得到的图像掩模会存在抖动,最后合成的视频效果不佳。
请参照图2A,表示对a帧中的头发区域进行分割之后,添加新发型之后的视频中两帧示意图,图2B表示对b帧中的头发区域进行分割之后,添加新发型之后的视频中两帧示意图,a和b表示相邻两帧。在分割头发区域时,两帧之间的头发存在一些变化,但是分割模型仅仅是根据单帧的信息进行分割,无法考虑到两帧之间的变化,导致头发等存在闪烁等问题。如图2A和图2B所示,该处理后的两帧中图2A的第一区域201和图2B中的第三区域203实际上为同一个头发区域,但是由于图2B中的第三区域203显然存在抖动,导致图2B中的区域的宽度缩小,图2B中的人脸有所变型。另外图2A的第二区域202和图2B中的第四区域204实际上为同一个头发区域,但是头发区域的差异较大。
基于上述问题,本申请发明人提供一种视频帧处理方法,该方法在对当前帧处理时,会根据上一帧的图像掩模对当前帧的图像掩模进行平滑处理,由于当前帧的目标图像掩模融合了上一帧的图像掩模的信息,使得获得的当前帧的图像掩模与上一帧的图像掩模相对稳定,减少了帧间抖动,使得各帧组成的视频的呈现效果更好。且,在对当前帧进行处理时,需要结合上一帧的处理信息,因此可以避免漏检视频帧的情况,提高视频帧处理的可靠性。
进一步的,本申请发明人考虑可以对上一帧的图像掩模,以及上前帧的图像掩模进行加权处理,实现平滑,该处理方式较为简单。
进一步的,可以基于图像分割得到的上一帧的图像掩模对当前帧的图像掩模进行平滑处理,或者基于上一帧的平滑处理后的图像掩模对当前帧的图像掩模进行平滑处理,或者也可以基于图像分割得到的上一帧的图像掩模对当前帧的图像掩模,以及上一帧的平滑处理后的图像掩模对当前帧的图像掩模进行平滑处理,避免某一个图像掩模的误差较大,而导致确定出的当前帧的图像掩模误差过大。
进一步的,本申请发明人考虑如果当前帧相对上一帧的变化较为明显,那么实际上,上一帧的图像掩模对当前帧的参考意义不大,而如果当前帧相对上一帧的变化较为小,那么可以融合更多上一帧的图像掩模,因此本申请利用上一帧和当前帧中各像素单元的变化值来确定个图像单元对应的权重,变化值越大,对上一帧的图像掩模进行加权的权重越小,变化值越小,对上一帧的图像掩模进行加权的权重越大,根据相邻两帧的实际情况进行平滑处理,使得平滑处理后的效果更好。且,针对不同的像素单元对应的权重取值不同,使得对图像掩模进行加权时,各个像素对应的权重是不完全相同或完全不相同的,这与视频中目标对象的局部变化的特点相符合,进而使得帧间处理效果更符合实际需求。
进一步的,除了利用上一帧的图像掩模对当前帧的图像掩模进行平滑处理,还可以利用上一帧,以及上一帧的前N帧等对当前帧的图像掩模进行平滑处理,结合更多视频帧的图像掩模对当前帧的图像掩模进行处理,使得视频整体处理效果更稳定。
下面对本申请实施例涉及的应用场景进行介绍。
本申请实施例的视频帧处理方法可以应用于实时录制的视频处理、拍摄完成的视频处理等。当应用于实时录制视频处理时,可以是录制一帧,就利用该方法处理一帧,也就是边录边处理。当对拍摄完成的视频进行处理时,可以按照视频的时间顺序依次对视频中的各帧进行处理。
本申请实施例的视频帧处理方法可以通过视频帧处理设备实现。请参照图3,表示执行本申请实施例中的视频帧处理设备的结构示意图,该视频帧处理设备300包括一个或多个输入设备301、一个或多个处理器302、一个或多个存储器303和一个或多个输出设备304。
输入设备301用于提供输入接口,以获取外界设备/用户输入的输入视频或帧等。在获得输入视频或帧之后,输入设备301将该视频或帧发送给处理器302,处理器302利用存储器303中存储的程序指令,实现对当前帧的处理过程,获得当前帧的目标图像掩模,进而获得当前帧的目标对象区域。通过输出设备204输出目标对象区域。
其中,输入设备301可以包括但不限于物理键盘、功能键、轨迹球、鼠标、触摸屏、操作杆等中的一种或多种。处理器302可以是一个中央处理单元(central processing unit,CPU),或者为数字处理单元等。存储器303可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器303也可以是非易失性存储器(non-volatile memory),例如只读存储器,快闪存储器(flash memory),硬盘(hard diskdrive,HDD)或固态硬盘(solid-state drive,SSD)、或者存储器303是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器303可以是上述存储器的组合。输出设备304例如显示器、扬声器和打印机等等。
其中,视频帧处理设备300可以是用户端设备,也可以是服务端设备。用户端设备可以是移动终端、固定终端或便携式终端,例如移动手机、站点、单元、设备、多媒体计算机、多媒体平板、互联网节点、通信器、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、平板计算机、个人通信系统(PCS)设备、个人导航设备、个人数字助理(PDA)、音频/视频播放器、数码相机/摄像机、定位设备、电视接收器、无线电广播接收器、电子书设备、游戏设备或者其任意组合,包括这些设备的配件和外设或者其任意组合。另外,视频帧处理设备300可以是嵌入在用户端设备或服务端设备中的程序等。还可预见到的是,视频帧处理设备300能够支持任意类型的针对用户的接口(例如可穿戴设备)等。服务端设备可以是各种服务提供的服务器、大型计算设备等。服务器可以是一个或多个服务器。服务器也可以是实体服务器或虚拟服务器等。
下面对视频帧处理设备300的具体应用场景进行示例:
请参照图4,表示一种视频帧处理方法的应用场景示例图,该应用场景中包括终端设备410和服务器420,服务器420用于实现前文论述的视频帧处理设备300的功能。
在实际使用时,用户可以通过终端设备410中的客户端实时拍摄视频,客户端可以将实时拍摄的当前帧发送给服务器420,服务器420对当前帧进行上述处理过程,得到处理结果,并将处理结果显示在客户端上。其中,客户端可以是安装在终端设备410中的客户端,或者可以是网页版的客户端,或者可以是通过第三方应用访问的客户端等。
在确定出当前帧的目标对象区域之后,可以直接输出该目标对象区域,或者可以在目标对象区域添加特效,丰富视频的处理效果,比如将当前帧中的背景分割出来,替换该背景,或者比如将当前帧中的天空分割处理,增加天空渲染特效,或者比如将当前帧中的人脸分割出来,替换人脸等等。
下面基于上述图3论述的应用场景,对本申请实施例涉及的视频帧处理方法的过程进行介绍。
请参照图5,表示视频帧处理方法的过程示意图,该视频处理方法具体如下:
S501:对当前帧中的目标对象进行分割处理,获得目标对象的第一图像掩模。
作为一种实施例,如果当前帧为视频的第一帧,视频帧处理设备300并不能确定目标对象具体是哪一个,因此,在对当前帧进行处理时,视频帧处理设备300可以是根据用户的选择确定出需要处理的目标对象,或者可以是对当前帧中所有的目标对象进行分割处理,或者可以是对当前帧中满足预设条件的目标对象进行分割处理,预设条件例如目标对象占的像素面积与当前帧的像素面积的比值大于阈值,或者目标对象为用户选中频次最高的对象。如果当前帧为视频的后续帧,后续帧是指视频帧中除了第一帧之外的视频帧,则当前帧的目标对象为该视频的前一帧所对应的目标对象。
例如,视频沿时间轴分别包括第一帧、第二帧、第三帧以及第N帧。当前帧为第i帧时,那么当前帧的上一帧(或前一帧)就是第i-1帧,当前帧的上上帧,则为第i+2帧,当前帧的后一帧则为第i+1帧,以此类推。
视频帧处理设备300可以利用图像分割模型,识别当前帧中的目标对象,并对目标对象进行分割处理,获得在当前帧中目标对象的第一图像掩模。这里的图像分割模型可以基于一些标注有目标对象的训练样本训练得到的图像分割模型,图像分割模型例如可以采用实例分割模型。实例分割模型处理过程主要包括检测目标对象,确定目标对象的类别,以及像素级别地确定出目标对象区域。实例分割模型具体例如Mask R-CNN等。
S502,根据当前帧的至少上一帧中目标对象的第二图像掩模,对第一图像掩模进行平滑处理,获得目标对象在当前帧中的目标图像掩模。
根据当前帧的至少上一帧中目标对象的第二图像掩模,对第一图像掩模进行平滑处理,可以理解为对第一图像掩模进行平滑处理的图像掩模至少包括上一帧的第二图像掩模。换言之,除了利用上一帧中目标对象的第二图像掩模对第一图像掩模进行平滑处理之外,还可以用第二图像掩模,以及上一帧的其它图像掩模对第一图像掩模进行平滑处理,或者还可以用上一帧的第二图像掩模,以及上一帧的前N-1帧的图像掩模对第一图像掩模进行处理,N为大于或等于2的整数。即,S502中包括两种情况,第一种,利用当前帧的上一帧的相关图像掩模,对第一图像掩模进行平滑处理;第二种,利用N个参考帧中每个参考帧的相关图像掩模,对第一图像掩模进行平滑处理,N个参考帧中至少包括当前帧的上一帧。在执行S502之前,需要先获得对应的图像掩模,才能实现对第一图像掩模的平滑处理,下面对两种情况下,获得图像掩模的方式进行说明。
第一种情况:
利用当前帧的上一帧的相关图像掩模,对第一图像掩模进行平滑处理。
第一种情况仅涉及到当前帧的上一帧,下面对上一帧的相关图像掩模的获得方式进行说明,上一帧的相关掩模的具体含义不同,获得上一帧的相关图像掩模的方式也有所不同,获得上一帧的相关图像掩模的方式具体可以包括如下文A1、A2和A3所示的三种不同方式:
A1:上一帧的相关图像掩模为第二图像掩模:第二图像掩模是对上一帧中的目标对象进行分割处理获得的。
对上一帧中的目标对象进行分割,获得第二图像掩模。分割处理的方式可以参照S501论述的内容,此处不再赘述。经过分割处理得到的图像掩模又可以称为原始分割掩模(mask)。该情况下,直接以对上一帧进行分割处理得到的图像掩模对第一图像掩模进行平滑处理,相对处理方式简单直接。
A2:上一帧的相关图像掩模为第二图像掩模:第二图像掩模是对上一帧中目标对象进行分割处理的图像掩模进行平滑处理得到的目标图像掩模。
视频帧处理设备300对上一帧中的目标对象进行分割处理,获得第三图像掩模,视频帧处理设备300可以对上一帧的目标对象的第三图像掩模进行平滑处理,获得上一帧针对目标对象的目标图像掩模。对第三图像掩模进行平滑处理的方式可以参照下文中对第一图像掩模进行平滑处理的方式。由于这种情况下的第二图像掩模实际上是经过融合处理得到的,因此又可以称为上帧融合后分割掩模(mask),视频处理设备300对上一帧的第三图像掩模进行平滑处理的方式可以参照S502中对第一图像掩模进行平滑处理的方式,此处不再赘述。
A3:上一帧的相关图像掩模包括第二图像掩模和第三图像掩模,第二图像掩模为上一帧中目标对象的目标图像掩模,第三图像掩模为视频帧处理设备300对上一帧中的目标对象进行分割处理得到的图像掩模。
视频帧处理设备300对上一帧中的目标对象进行分割处理,获得第三图像掩模,分割处理方式可以参照前文论述的内容,此处不再赘述,再对第三图像掩模进行平滑处理,获得上一帧中目标对象的目标图像掩模,也就是说,A3中,相关图像掩模包括上一帧的原始分割掩模和上帧融合后分割掩模。
第二种情况:
利用当前帧的N个参考帧的相关图像掩模,对第一图像掩模进行平滑处理。
该情况涉及到当前帧的N个参考帧,涉及到每个参考帧的相关图像掩模不同,获得每个参考帧的相关图像掩模的方式也不同,获得上一帧的相关图像掩模的方式具体可以包括如下文B1、B2和B3所示的三种不同方式:
B1:参考帧的相关图像掩模为第二图像掩模:第二图像掩模是对参考帧中的目标对象进行分割处理获得的,为了便于区分,对参考帧中的目标对象进行分割处理获得的图像掩模可以称为第三图像掩模。分割处理的内容可以参照前文论述的内容,此处不再赘述。
例如,参考帧包括当前帧的上一帧,以及当前帧的上上帧,那么参考帧的相关图像掩模包括上一帧的第三图像掩模,以及上上帧的第三图像掩模。
B2:参考帧的相关图像掩模为第二图像掩模:第二图像掩模是参考帧中目标对象的目标图像掩模,参考帧的目标图像掩模是对参考帧中目标对象进行分割处理得到的图像掩模进行平滑处理得到的图像掩模,获得参考帧中目标对象的目标图像掩模的方式可以参照前文论述的内容,此处不再赘述。
B3:参考帧的相关图像掩模为第二图像掩模和第三图像掩模:第二图像掩模是参考帧中目标对象的目标图像掩模,其中,视频帧处理设备300对参考帧中目标对象进行分割处理得到的图像掩模为第三图像掩模,视频帧处理设备300对第三图像掩模进行平滑处理得到的图像掩模为目标图像掩模。平滑处理、分割处理的具体方式可以参照前文论述的内容,此处不再赘述。
作为一种实施例,前文A1~A3,以及B1~B3仅仅是对获得相关图像掩模的方式进行示例,实际上获得这些相关掩模的方式可以是在具体处理该帧的时候获得的。为了提高视频帧的处理效率,可以设置缓存,将后续需要用到的相关图像掩模存储到缓存中,在处理当前帧时,可以从缓存中调用这些相关图像掩模。另外,随着视频帧处理过程不断进行,可以更新缓存中存储的相关图像掩模。
无论是上述的第一种情况,还是第二种情况,在获得相关图像掩模之后,就可以执行S502,对第一图像掩模进行平滑处理,平滑处理的方式有多种,下面进行示例说明。
一种平滑处理的方式为:
对上一帧或N个参考帧的相关图像掩模,以及第一图像掩模进行加权处理,获得当前帧中目标对象的目标图像掩模。
作为一种实施例,可以根据缓存获得需要进行加权处理的相关图像掩模。该实施例中,可以将需要进行加权的相关图像掩模提前保存在缓存中,需要进行加权时,只需从缓存中调用这些相关图像掩模进行计算即可。
例如,缓存可以存储三个值,在处理过程中,缓存分别存储有上一帧的第三图像掩模(也可以称为原始图像分割掩模),上一帧的目标图像掩模(又可以称为上帧融合分割掩模),和当前帧的第一图像掩模。第三图像掩模是对上一帧的目标对象进行分割处理获得的,上一帧的目标图像掩模(又可以称为上帧融合分割掩模),上一帧的目标图像掩模是对第三图像掩模进行平滑处理获得的,以及当前帧的第一图像掩模,在计算当前帧的目标图像掩模时,只需从缓存中调用这三个图像掩模进行计算。
或者例如,缓存可以存储三个值,在处理过程中,缓存分别存储有上一帧的第二图像掩模(分割处理得到的),上上帧的第二图像掩模(分割处理得到的),以及当前帧的第一图像掩模,在计算当前帧的目标图像掩模时,只需从缓存中调用这三个图像掩模进行计算。上上帧可以理解为当前帧的上一帧之前一帧。例如,当前帧为N,当前帧的上一帧为N-1,上上帧则为N-2。
如果是前文论述的第一种情况,可以对上一帧的相关图像掩模进行加权处理,以及对第一图像掩模进行加权处理,对上一帧的相关图像掩模的加权处理结果,以及第一图像掩模的加权处理结果进行求和,获得目标图像掩模。加权处理是利用加权权重乘以被加权对象,以调整被加权对象。比如对上一帧的相关图像掩模进行加权处理,可以理解为加权权重乘以上一帧的相关图像掩模。
如果是前文论述的第二种情况,可以对N个参考帧中每个参考帧的相关图像掩模分别进行加权处理,以及对第一图像掩模进行加权处理,对N个参考帧中每个参考帧的相关图像掩模的加权处理结果,以及第一图像掩模的加权处理结果进行求和,获得目标图像掩模。
在获得当前帧的图像掩模过程,由于会利用加权,融合当前帧的参考帧的图像掩模的信息,因此可以避免当前帧的图像掩模与当前帧的参考帧之间的图像掩模差距过大,从而实现对当前帧的图像掩模进行平滑的目的。
下面对相关图像掩模进行加权处理的权重确定方式进行示例:
权重确定方式一:在对相关图像掩模进行加权处理的权重可以根据预设的固定权重获得的。该实施例中,采用帧间固定权重平滑策略,可以实现对前后帧的平滑处理,且由于是固定权重,相对可以减少计算量,提高视频帧处理效率。
针对上述的第一种情况:
A1和A2:上一帧的相关图像掩模为第二图像掩模。A1和A2这两种情况下,第二图像掩模进行加权处理的权重是预设的固定权重。第一图像掩模进行加权处理的权重也可以是预设的固定权重,该权重可以大于第二图像掩模进行加权处理的权重。
A3:上一帧的相关图像掩模为第二图像掩模(也就是目标图像掩模)和第三图像掩模。这种情况下,也就是说,第二图像掩模和第三图像掩模所对应的进行加权处理的权重是预设的固定权重,第二图像掩模所对应的权重大小与第三图像掩模的权重大小可以是任意的。例如,第二图像掩模对应的权重可以大于第三图像掩模的权重。
针对上述第二种情况:
B1:参考帧的相关图像掩模为第二图像掩模。第二图像掩模是对参考帧中的目标对象进行分割处理获得的。这种情况下,针对所有参考帧的预设权重可以是相同的,也可以是不同的。比如,越靠近当前帧的视频帧所占用的权重越大。
例如,预设的固定权重为0.5,则每个参考帧对应的相关图像掩模的权重均为0.5。N个参考帧包括当前帧的上一帧,当前帧的上上帧,每个参考帧的相关图像掩模均为对该参考帧进行分割处理得到的图像掩模,因此,假设上上帧N-2的相关图像掩模为A,上一帧N-1的相关图像掩模为B,第一图像掩膜为C,则所述目标图像掩模为0.5*A+0.5*B+C。
比如,请参照图6A和图6B,分别表示采用固定权重平滑处理相邻两帧图像之后得到的示意图。可以看出,图6A中的头发区域601和图6B中的头发区域602除了图像整体朝着右边移动了一点,头发区域的整体形状无明显抖动等情况,且两帧呈现出的视觉效果相对更佳。
B2:参考帧的相关图像掩模为第二图像掩模。第二图像掩模是参考帧中目标对象的目标图像掩模。这种情况下,针对所有参考帧的预设权重可以是相同的,也可以不同。比如可以是越靠近当前帧的视频帧,其所占用的权重越大。
B3:参考帧的相关图像掩模为第二图像掩模和第三图像掩模。第二图像掩模是参考帧中目标对象的目标图像掩模。这种情况下,所有参考帧的第二图像掩模中每两个参考帧所对应的第二图像掩模对应的加权权重可以是相同的,也可以不同的。所有参考帧的第三图像掩模中每两个参考帧的第三图像掩模的权重可以是相同,也可以不同的。每个参考帧的第二图像掩模和第三图像掩模的权重可以设置得相同,也可不同,比如第二图像掩模的权重可以设置得比第三图像掩模的权重更大。
权重确定方式一可达到帧间平滑的作用,同时计算量相对更小,计算速度更快。
权重确定方式二:在对相关图像掩模进行加权处理的权重是针对各个像素单元分别确定的,各个像素单元的权重组成权重矩阵,其中,每个像素单元的权重可以是根据像素单元在当前帧与参考帧之间的变化值确定,像素单元的变化值与该像素单元对应的权重反相关。反相关可以理解为像素单元的变化值越大,像素单元对应的权重越小,像素单元的变化值越小,像素单元对应的权重越大。
在视频拍摄过程中,参考帧中各个像素单元会不断发生变化,如果两帧之间变化较小,那么表示目标对象的运动相对较小,因此,两帧之间的图像掩模变化也应该不大,这样可以融合参考帧更多的图像掩模信息,也就是相关图像掩模对应的权重相对更大。这样,可以采用较大的权重,减少当前帧与参考帧的图像掩模的差异,有利于减少帧间闪烁的问题。
如果两帧之间的变化较大,那么表示目标对象运动相对剧烈,因此,两帧之间的图像掩模差异较大,这样可以融合参考帧更少的图像掩模信息,相关图像掩模对应的权重可以相对更小。这种情况下,如果采用较大的权重,那么就可能存在当前帧的图像掩模滞留的情况,滞留可以理解为图像掩模与目标对象的差异较大,也可以理解为图像掩模跟不上目标对象的运动。因此,这种情况下,采用较小的权重,有利于避免当前帧的图像掩模滞留的情况。
作为一种实施例,获得权重矩阵的方式如下:
S1.1,获得当前帧与参考帧之间的光流变化矩阵;
一种获得光流变化矩阵的具体表达式示例如下:
Figure BDA0002440364470000181
其中,z表示得到的光流变化矩阵中的元素,x表示当前帧的像素单元对应的图像特征值,y表示参考帧的对应像素单元的图像特征值。图像特征值例如灰度值、亮度值、颜色值、纹理值、轮廓值、各像素单元之间的相对位置关系等。
按照上述公式(1),依次确定出每个像素单元对应的z值,将所有的z按照一定的顺序进行排列,得到光流变化矩阵,该光流变化矩阵中的每一个像素单元对应的值也就表示两帧间对应像素单元变化值。
S1.2,将光流变化矩阵中每个元素输入至预设函数,获得每个像素单元对应的权重,并按照预设顺序组合各像素单元对应的权重,获得进行加权处理的权重矩阵。
将光流变化矩阵中每个元素输入到预设函数中,也就得到每个像素单元对应的权重,然后将这些权重按预设顺序进行组合,得到权重矩阵。预设顺序比如可以是按照视频帧的构成,每一行的像素单元对应的权重,作为矩阵中的一行,以此类推,组合得到权重矩阵。
如前文所述,变化值与对应的权重反相关,因此预设函数采用自变量和因变量呈反相关的函数,例如该预设函数可以为冥函数,具体表达式如下:
w=e-z (2)
其中,w表示确定出的像素单元对应的权重,z参照公式(1),此处不再赘述。
请参照图7,表示上述公式(2)对应的预设函数的曲线图,可以看出该函数中自变量z与因变量w反相关,且w的取值最大为1,符合实际应用场景的需求。
实际视频中,目标对象的各个部分的运动程度是不确定的,比如头发主体可能运动幅度较小,发梢部位运动幅度较大,将目标对象的不同部分按照同等重要性处理会导致部分分割结果缺失或误分割问题,因此,该实施例中通过计算得到前后两帧间的光流变化矩阵,无需对各像素单元进行聚类,由光流变化矩阵估计目标匹配点的运动情况,根据不同的运动情况计算得到不同的权重,对每个像素单元对应的图像掩模区域赋予不同权重,也就是说,该实施例实际上是针对目标对象中运动程度不同的像素单元进行的逐点权重计算方法,从而达到对不同区域特殊处理的目的,提高后续分割的准确性,同时,对多个视频帧的图像掩模进行融合,实现整个处理后的各视频帧更为稳定的效果。
下面结合该实施例在前文论述的不同情况下,对第一图像掩模进行处理的方式进行介绍。
针对情况一:
情况一涉及上一帧,可以利用上述方法获得上一帧与当前帧之间的权重矩阵。
在上述A1和A2的情况下,对第一图像掩模进行平滑处理的方式如下:
A1和A2中两种情况下,获得第二图像掩模的方式不同,但是第二图像掩模对应的权重矩阵均可以利用前述方法获得,而第一图像掩模的权重矩阵可以是预设的,比如每个像素单元的权重取值为1,然后利用第一图像掩模的权重矩阵对第二图像掩模进行加权处理,再对第二图像掩模的加权结果,以及第一图像掩模的加权结果进行求和,获得当前帧的目标图像掩模。
在上述A3的情况下,对第一图像掩模进行平滑处理的方式如下:
如前文A3,对第一图像掩模进行处理的对象,除了需要上一帧的第二图像掩模,还需要上一帧的第三图像掩模,在这种情况下,对第一图像掩模进行处理的方式具体如下:
(1)第二图像掩模的加权权重可以采用上述方法获得的权重矩阵,第三图像掩模和第一图像掩模的权重可以是预设的。比如第三图像掩模的权重取值为0.5,第一图像掩模的取值为1。
(2)第三图像掩模的加权权重可以采用上述方法获得的权重矩阵,第二图像掩模和第一图像掩模的权重可以是预设的。比如第二图像掩模的权重取值为0.5,第一图像掩模的取值为1。
(3)第二图像掩模和第三图像掩模的加权权重均采用上述方法获得的权重矩阵,这种情况下目标图像掩模的具体表达式示例如下:
M=W*mask2+W*mask3+a*mask1 (3)
其中,M表示目标图像掩模,W表示采用上述方法获得的权重矩阵,mask2表示第二图像掩模,也可以称为上帧原始分割掩模,mask3表示第三图像掩模,也就是上帧融合分割掩模,mask1表示第一图像掩模,也可以称为本帧分割掩模,a表示第一图像掩模对应的权重,例如可以取固定权重1。
例如,请参照图8A和图8B,分别表示采用光流权重平滑处理相邻两帧图像之后得到的示意图。可以看出,图8A中的头发区域801和图8B中的头发区域802除了图像整体朝着右边移动了一点,头发区域的整体形状无明显抖动等情况,且两帧呈现出的视觉效果相对更佳。
针对情况二:
情况二涉及N个参考帧,可以利用上述方法获得每个参考帧与当前帧之间的权重矩阵,下面对涉及每个参考帧对应的图像掩模不同的情况下,对第一图像掩模进行平滑处理的方式进行说明:
在上述B1和B2的情况下,对第一图像掩模进行平滑处理的方式如下:
参考帧的相关图像掩模为第二图像掩模,利用参考帧对应的权重矩阵对该参考帧的第二图像掩模进行加权,再对各参考帧的加权结果,以及第一图像掩模的加权结果进行求和,获得目标图像掩模。
在上述B3的情况下,对第一图像掩模进行加权的方式如下:
(1)参考帧的第二图像掩模的加权权重可以采用上述方法获得的权重矩阵,第三图像掩模和第一图像掩模的权重可以是预设的。比如第三图像掩模的权重取值为0.5,第一图像掩模的取值为1。
(2)参考帧的第三图像掩模的加权权重可以采用上述方法获得的权重矩阵,第二图像掩模和第一图像掩模的权重可以是预设的。比如第二图像掩模的权重取值为0.5,第一图像掩模的取值为1。
(3)参考帧的第二图像掩模和第三图像掩模的加权权重均采用上述方法获得的权重矩阵。第一图像掩模的权重可以是预设的。
作为一种实施例,部分视频帧可以采用上述的权重确定方式一确定权重,进而获得目标图像掩模,部分视频帧可以采用上述的权重确定方式二确定权重,进而获得目标图像掩模。
例如:第一帧采用上述的权重确定方式二确定权重,获得目标图像掩模,第二帧采用上述的权重确定方式一确定权重,第三帧采用上述的权重确定方式二确定权重,依次类推。
作为一种实施例,如果当前帧为视频中的关键帧,可以采用上述权重确定方式二确定权重,进而确定当前帧的目标图像掩模,如果当前帧为视频中的非关键帧,可以采用上述权重确定方式一确定权重,进而确定当前帧的目标图像掩模。该实施例中,对关键帧采用帧间光流计算权重平滑策略,可以相对提高关键帧的处理效果,对非关键采用帧间固定权重平滑策略,可以简化计算。在视频处理过程中,灵活处理关键帧与非关键帧,在保证平滑效果的同时,相对减少计算量。
S503,获得当前帧中与目标图像掩模对应的目标对象区域。
利用上述任一方法,由于目标图像掩模标注有对应的目标对象区域,自然在获得目标图像掩模之后,也就能获得当前帧中的目标对象区域。
下面基于图4论述的应用场景,以在线拍摄视频为例,对本申请实施例涉及的视频帧处理方法进行示例介绍。
请参照图9,该方法包括:
S901,响应于用户选择特效元素操作,终端设备401获取该特效元素的信息。
用户可以开启终端设备401中的客户端,终端设备401可以预存有多种特效元素,用户可以是在开启该客户端之后,选择对应的特效元素,终端设备401根据该特效元素,获取该特效元素的信息,特效元素的信息可以是特效元素自身或特效元素的唯一标识,比如终端设备401中存储有各种特效元素,以及该特效元素对应的唯一标识,在终端设备401获得该特效元素之后,自然能获取该特效元素对应的唯一标识。特效元素例如可以是图像、表情、颜色、音乐等。
例如,请参照图10,表示一种用户选择特效元素的界面示意图。该界面中包括多个特效元素,例如爱心、可爱、短发或麻花辫等,例如用户选择图10中箭头所指的特效元素中的短发,终端设备根据用户的选择操作,确定用户所选择的特效元素为该麻花辫。另外,用户可以点击放弃操作控件1001,放弃选择该特效元素,或者用户可以点击确认操作控件1002,确认选择该特效元素。
S902,终端设备401将特效元素的信息发送给服务器402。
终端设备401可以直接将用户选择的特效元素自身发送给服务器402,或者也可以是将获得的特效元素的唯一标识发送给服务器402。
作为一种实施例,服务器402中预存有各个特效元素关联的目标对象。服务器402获得特效元素之后,可以根据特效元素确定出关联的目标对象。
S903,响应于用户的拍摄操作,终端设备401显示拍摄的当前帧。
在用户选择特效元素之后,用户可以进行拍摄,例如用户可以点击拍摄控件,终端设备401自动拍摄,或者用户长按拍摄控件,终端设备401显示当前拍摄的一帧画面。
例如,终端设备401拍摄的当前帧如图11所示的,用户点击拍摄操作控件1101,该图11中用户的发型属于中长卷。
S904,终端设备401将拍摄的当前帧发送给服务器402。
作为一种实施例,终端设备401可以是将当前帧直接发送给服务器402,或者是将当前帧缓存至特定路径,服务器402实时地从该路径获取当前帧。
作为一种实施例,S904和S902的步骤可以是任意的,本文不做具体限制。
S905,服务器402对当前帧进行处理,获得当前帧对应的目标对象区域。
服务器402获得目标对象区域的方式可以参照前文图5中论述的任一方式,此处不再赘述。
S906,服务器402在目标对象区域上添加特效元素,获得处理后的当前帧。
服务器402在获得目标对象区域之后,可以将特效元素增加在目标对象区域,该特效元素可能是覆盖部分或全部的目标对象区域,具体不限。
S907,服务器402将处理后的当前帧发送给终端设备401。
服务器402在对每一帧进行上述处理之后,直接将处理后的视频帧发送给终端设备401,终端设备401根据获得这些处理后的视频帧,合成视频。或者服务器402对拍摄的每一帧均经过上述处理之后,可以将这些处理后的视频帧按照时间轴合成视频。并将视频发送给终端设备401,终端设备401显示该视频。
例如,请参照图12,表示一种视频中处理后的当前帧的示意图。在识别出该用户的头发区域之后,为该用户更换了另外一种发型,更换成了用户选择的麻花辫。用户可以点击放弃操作控件1201,放弃本次处理,或者用户可以点击保存操作控件1202,保存本次处理得到的视频。
作为一种实施例,终端设备401可以自行播放视频,以向用户展示该视频。在获得视频之后,可以自动播放该视频,以便用户查看呈现效果,或者,终端设备401可以是根据用户的播放操作,播放该视频。
在本申请实施例中,由于对视频帧进行了平滑处理,避免了相邻帧的闪烁等情况,提高了视频的稳定性。
基于同一发明构思,本申请实施例提供一种视频帧处理装置,请参照图13,该装置1300包括:
分割模块1301,用于对当前帧中的目标对象进行分割处理,获得目标对象的第一图像掩模;
平滑模块1302,用于根据当前帧的至少上一帧中目标对象的第二图像掩模,对第一图像掩模进行平滑处理,获得目标对象在当前帧中的目标图像掩模;
获得模块1303,用于获得当前帧中与目标图像掩模对应的目标对象区域。
在一种可能的实施例中,获得模块1303还用于:
在根据当前帧的至少上一帧中目标对象的第二图像掩模,对第一图像掩模进行平滑处理,获得目标对象在当前帧中的目标图像掩模之前,对上一帧中的目标对象进行分割处理,获得第二图像掩模;或,
对上一帧中的目标对象进行分割处理获得的图像掩模进行平滑处理,获得第二图像掩模。
在一种可能的实施例中,平滑模块1302具体用于:
分别获得N个参考帧的每个参考帧中目标对象的第三图像掩模;其中,N个参考帧为当前帧之前的N个参考帧,每个参考帧中目标对象的第三图像掩模是对参考帧中的目标图像进行分割处理得到的;
将第一图像掩模、N个第三图像掩模进行加权处理,获得目标图像掩模。
在一种可能的实施例中,平滑模块1302具体用于:
分别获得N个参考帧的每个参考帧中目标对象的第三图像掩模,以及每个参考帧中目标对象的目标图像掩模;其中,N个参考帧为当前帧之前的N个参考帧,参考帧中目标对象的第三图像掩模是对参考帧中的目标图像进行分割处理得到的,参考帧中目标对象的目标图像掩模是对上一帧中的目标对象进行分割处理获得的图像掩模进行平滑处理获得的;参考帧中目标对象的目标图像掩模目标对象在参考帧中的目标图像掩模对第三图像掩模进行平滑处理获得的;
将第一图像掩模、N个第三图像掩模、以及N个目标图像掩模进行加权处理,获得目标图像掩模。
在一种可能的实施例中,对N个第三图像掩模或N个目标图像掩模进行加权处理的权重包括如下的以下至少一种通过如下方式获得的:
根据各像素单元在当前帧与参考帧之间的变化值,确定出的权重矩阵;其中,权重矩阵包括至少一个权重,每个权重是根据像素单元对应的变化值确定的,变化值越大,权重越小;或,
根据预设的固定权重,确定权重。
在一种可能的实施例中,根据各像素单元在当前帧与参考帧之间的变化值,确定权重矩阵,包括:
获得当前帧与参考帧之间的光流变化矩阵;其中,光流变化矩阵中各元素用于表示各像素单元在当前帧和参考帧之间的变化值;
将光流变化矩阵中每个元素输入至预设函数中,获得每个像素单元对应的权重;
将各像素单元对应的权重按照预设顺序进行组合,获得进行加权处理的权重矩阵。
在一种可能的实施例中,若当前帧为视频中的关键帧,对N个第三图像掩模或N个目标图像掩模进行加权处理的权重是根据当前帧与参考帧之间的光流变化矩阵确定的;
若当前帧为视频中的非关键帧,对N个第三图像掩模或N个目标图像掩模进行加权处理的权重是根据预设的固定权重获得的。
在一种可能的实施例中,所述装置还包括播放模块1304:
获得模块1303,还用于对当前帧中的目标对象区域添加特效处理,获得处理后的当前帧;
播放模块1304,用于根据处理后的当前帧,获得视频,并播放视频。
基于同一发明构思,本申请实施例提供了一种计算设备,该计算设备相当于前文论述的服务器402。
请参照图14,计算设备1400以通用计算设备的形式表现。计算设备1400的组件可以包括但不限于:至少一个处理器1410、至少一个存储器1420、连接不同系统组件(包括处理器1410和存储器1420)的总线1430。
总线1430表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、处理器或者使用多种总线结构中的任意总线结构的局域总线。
存储器1420可以包括易失性存储器形式的可读介质,例如随机存取存储器(RAM)1421和/或高速缓存存储器1422,还可以进一步包括只读存储器(ROM)1423。
存储器1420还可以包括具有一组(至少一个)程序模块1425的程序/实用工具1426,这样的程序模块1425包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。处理器1410用于执行存储器1420存储的程序指令等实现前文论述的视频帧处理方法。
服务器402也可以与一个或多个外部设备1440(例如键盘、指向设备等)通信,还可与一个或者多个使得终端设备401能与服务器402交互的设备通信,和/或与使得该服务器402能与一个或多个其它设备进行通信的任何设备(例如路由器、调制解调器等)通信。这种通信可以通过输入/输出(I/O)接口1450进行。并且,服务器402还可以通过网络适配器1460与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器1460通过总线1430与用于服务器402的其它模块通信。应当理解,尽管图中未示出,可以结合服务器402使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
基于同一发明构思,本申请实施例提供一种存储介质,存储介质存储有计算机指令,当计算机指令在计算机上运行时,使得计算机执行前文论述的视频帧处理方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (15)

1.一种视频帧处理方法,其特征在于,包括:
对当前帧中的目标对象进行分割处理,获得所述目标对象的第一图像掩模;
根据当前帧的至少上一帧中所述目标对象的第二图像掩模,对所述第一图像掩模进行平滑处理,获得所述目标对象在所述当前帧中的目标图像掩模;
获得所述当前帧中与所述目标图像掩模对应的目标对象区域。
2.如权利要求1所述的方法,其特征在于,在根据当前帧的至少上一帧中所述目标对象的第二图像掩模,对所述第一图像掩模进行平滑处理,获得所述目标对象在所述当前帧中的目标图像掩模之前,还包括:
对所述上一帧中的所述目标对象进行分割处理,获得所述第二图像掩模;或,
对所述上一帧中的所述目标对象进行分割处理获得的图像掩模进行平滑处理,获得所述第二图像掩模。
3.如权利要求1所述的方法,其特征在于,根据当前帧的至少上一帧中所述目标对象的第二图像掩模,对所述第一图像掩模进行平滑处理,获得所述目标对象在所述当前帧中的目标图像掩模,包括:
分别获得N个参考帧的每个参考帧中所述目标对象的第三图像掩模;其中,所述N个参考帧为当前帧之前的N个参考帧,每个参考帧中所述目标对象的第三图像掩模是对参考帧中的目标图像进行分割处理得到的;
将所述第一图像掩模、N个第三图像掩模进行加权处理,获得目标图像掩模。
4.如权利要求1所述的方法,其特征在于,根据当前帧的至少上一帧中所述目标对象的第二图像掩模,对所述第一图像掩模进行平滑处理,获得所述目标对象在所述当前帧中的目标图像掩模,包括:
分别获得所述N个参考帧的每个参考帧中所述目标对象的第三图像掩模,以及每个参考帧中所述目标对象的目标图像掩模;其中,所述N个参考帧为当前帧之前的N个参考帧,参考帧中所述目标对象的第三图像掩模是对参考帧中的目标图像进行分割处理得到的,参考帧中所述目标对象的目标图像掩模是对所述上一帧中的所述目标对象进行分割处理获得的图像掩模进行平滑处理获得的;
将所述第一图像掩模、N个第三图像掩模、以及N个目标图像掩模进行加权处理,获得目标图像掩模。
5.如权利要求3或4所述的方法,其特征在于,对N个第三图像掩模或N个目标图像掩模进行加权处理的权重是通过如下方式获得的:
根据各像素单元在所述当前帧与参考帧之间的变化值,确定权重矩阵;其中,所述权重矩阵包括至少一个权重,每个权重是根据像素单元对应的变化值确定的,变化值越大,权重越小;或,
根据预设的权重,确定权重。
6.如权利要求5所述的方法,其特征在于,根据各像素单元在所述当前帧与参考帧之间的变化值,确定权重矩阵,包括:
获得所述当前帧与参考帧之间的光流变化矩阵;其中,光流变化矩阵中各元素用于表示各像素单元在所述当前帧和参考帧之间的变化值;
将所述光流变化矩阵中每个元素输入至预设函数中,获得每个像素单元对应的权重;
将各像素单元对应的权重按照预设顺序进行组合,获得进行加权处理的权重矩阵。
7.如权利要求5所述的方法,其特征在于,
若所述当前帧为视频中的关键帧,对N个第三图像掩模或N个目标图像掩模进行加权处理的权重是根据所述当前帧与参考帧之间的光流变化矩阵确定的;
若所述当前帧为视频中的非关键帧,对N个第三图像掩模或N个目标图像掩模进行加权处理的权重是根据预设的权重获得的。
8.如权利要求1所述的方法,其特征在于,在获得所述当前帧中与所述目标图像掩模对应的目标对象区域之后,还包括:
对所述当前帧中的目标对象区域添加特效处理,获得处理后的当前帧;
根据所述处理后的当前帧,获得视频,并播放所述视频。
9.一种视频帧处理装置,其特征在于,包括:
分割模块,用于对当前帧中的目标对象进行分割处理,获得所述目标对象的第一图像掩模;
平滑模块,用于根据当前帧的至少上一帧中所述目标对象的第二图像掩模,对所述第一图像掩模进行平滑处理,获得所述目标对象在所述当前帧中的目标图像掩模;
获得模块,用于获得所述当前帧中与所述目标图像掩模对应的目标对象区域。
10.如权利要求9所述的装置,其特征在于,所述获得模块还用于:
在根据当前帧的至少上一帧中所述目标对象的第二图像掩模,对所述第一图像掩模进行平滑处理,获得所述目标对象在所述当前帧中的目标图像掩模之前,对所述上一帧中的所述目标对象进行分割处理,获得所述第二图像掩模;或,
对所述上一帧中的所述目标对象进行分割处理获得的图像掩模进行平滑处理,获得所述第二图像掩模。
11.如权利要求9所述的装置,其特征在于,所述平滑模块具体用于:
分别获得N个参考帧的每个参考帧中所述目标对象的第三图像掩模;其中,所述N个参考帧为当前帧之前的N个参考帧,每个参考帧中所述目标对象的第三图像掩模是对参考帧中的目标图像进行分割处理得到的;
将所述第一图像掩模、N个第三图像掩模进行加权处理,获得目标图像掩模。
12.如权利要求9所述的装置,其特征在于,所述平滑模块具体用于:
分别获得所述N个参考帧的每个参考帧中所述目标对象的第三图像掩模,以及每个参考帧中所述目标对象的目标图像掩模;其中,所述N个参考帧为当前帧之前的N个参考帧,参考帧中所述目标对象的第三图像掩模是对参考帧中的目标图像进行分割处理得到的,参考帧中所述目标对象的目标图像掩模是对所述上一帧中的所述目标对象进行分割处理获得的图像掩模进行平滑处理获得的;参考帧中所述目标对象的目标图像掩模所述目标对象在参考帧中的目标图像掩模对第三图像掩模进行平滑处理获得的;
将所述第一图像掩模、N个第三图像掩模、以及N个目标图像掩模进行加权处理,获得目标图像掩模。
13.如权利要求11或12所述的装置,其特征在于,对N个第三图像掩模或N个目标图像掩模进行加权处理的权重包括如下的以下至少一种通过如下方式获得的:
根据各像素单元在所述当前帧与参考帧之间的变化值,确定出的权重矩阵;其中,所述权重矩阵包括至少一个权重,每个权重是根据像素单元对应的变化值确定的,变化值越大,权重越小;或,
根据预设的固定权重,确定权重。
14.一种计算设备,其特征在于,包括:
至少一个处理器,以及
与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现如权利要求1~8中任一项所述的方法。
15.一种存储介质,其特征在于,所述存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如权利要求1~8中任一项所述的方法。
CN202010265646.8A 2020-04-07 2020-04-07 一种视频帧处理方法、装置、计算设备及存储介质 Active CN111464834B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010265646.8A CN111464834B (zh) 2020-04-07 2020-04-07 一种视频帧处理方法、装置、计算设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010265646.8A CN111464834B (zh) 2020-04-07 2020-04-07 一种视频帧处理方法、装置、计算设备及存储介质

Publications (2)

Publication Number Publication Date
CN111464834A true CN111464834A (zh) 2020-07-28
CN111464834B CN111464834B (zh) 2023-04-07

Family

ID=71681673

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010265646.8A Active CN111464834B (zh) 2020-04-07 2020-04-07 一种视频帧处理方法、装置、计算设备及存储介质

Country Status (1)

Country Link
CN (1) CN111464834B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565605A (zh) * 2020-12-02 2021-03-26 维沃移动通信有限公司 图像显示方法、装置和电子设备
CN113902760A (zh) * 2021-10-19 2022-01-07 深圳市飘飘宝贝有限公司 视频分割中物体边缘优化方法、系统、装置及存储介质
CN113923493A (zh) * 2021-09-29 2022-01-11 北京奇艺世纪科技有限公司 一种视频处理方法、装置、电子设备以及存储介质
CN114025105A (zh) * 2021-12-15 2022-02-08 北京达佳互联信息技术有限公司 视频处理方法、装置、电子设备、存储介质
CN114422848A (zh) * 2022-01-19 2022-04-29 腾讯科技(深圳)有限公司 视频分割方法、装置、电子设备及存储介质
WO2022194079A1 (zh) * 2021-03-19 2022-09-22 影石创新科技股份有限公司 天空区域分割方法、装置、计算机设备和存储介质
CN115661701A (zh) * 2022-10-09 2023-01-31 中国科学院半导体研究所 实时图像处理方法、装置、电子设备及可读存储介质
CN116112761A (zh) * 2023-04-12 2023-05-12 海马云(天津)信息技术有限公司 生成虚拟形象视频的方法及装置、电子设备和存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080037635A1 (en) * 2006-05-25 2008-02-14 Lenovo (Beijing) Limited Video coding and decoding devices and methods and systems thereof
CN103002280A (zh) * 2012-10-08 2013-03-27 中国矿业大学 基于hvs&roi的分布式编解码方法及系统
JP2014110531A (ja) * 2012-12-03 2014-06-12 Nippon Telegr & Teleph Corp <Ntt> テロップ検出装置、テロップ検出方法及びテロップ検出プログラム
RU2522043C1 (ru) * 2013-01-09 2014-07-10 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Южно-Российский государственный университет экономики и сервиса" (ФГБОУ ВПО "ЮРГУЭС") Устройство фильтрации динамических цифровых изображений в условиях ограниченного объема априорных данных
CN104486618A (zh) * 2014-12-30 2015-04-01 浙江宇视科技有限公司 视频图像的噪声检测方法及装置
CN105139438A (zh) * 2014-09-19 2015-12-09 电子科技大学 视频人脸卡通动画生成方法
US20180139456A1 (en) * 2008-11-17 2018-05-17 Checkvideo Llc Analytics-modulated coding of surveillance video
US20180240221A1 (en) * 2017-02-17 2018-08-23 Cogisen S.R.L. Method for image processing and video compression
CN108596940A (zh) * 2018-04-12 2018-09-28 北京京东尚科信息技术有限公司 一种视频分割方法和装置
CN108805898A (zh) * 2018-05-31 2018-11-13 北京字节跳动网络技术有限公司 视频图像处理方法和装置
CN108898842A (zh) * 2018-07-02 2018-11-27 武汉大学深圳研究院 一种多源监控视频的高效编码方法及其系统
CN110349163A (zh) * 2019-07-19 2019-10-18 Oppo广东移动通信有限公司 图像处理方法和装置、电子设备、计算机可读存储介质

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080037635A1 (en) * 2006-05-25 2008-02-14 Lenovo (Beijing) Limited Video coding and decoding devices and methods and systems thereof
US20180139456A1 (en) * 2008-11-17 2018-05-17 Checkvideo Llc Analytics-modulated coding of surveillance video
CN103002280A (zh) * 2012-10-08 2013-03-27 中国矿业大学 基于hvs&roi的分布式编解码方法及系统
JP2014110531A (ja) * 2012-12-03 2014-06-12 Nippon Telegr & Teleph Corp <Ntt> テロップ検出装置、テロップ検出方法及びテロップ検出プログラム
RU2522043C1 (ru) * 2013-01-09 2014-07-10 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Южно-Российский государственный университет экономики и сервиса" (ФГБОУ ВПО "ЮРГУЭС") Устройство фильтрации динамических цифровых изображений в условиях ограниченного объема априорных данных
CN105139438A (zh) * 2014-09-19 2015-12-09 电子科技大学 视频人脸卡通动画生成方法
CN104486618A (zh) * 2014-12-30 2015-04-01 浙江宇视科技有限公司 视频图像的噪声检测方法及装置
US20180240221A1 (en) * 2017-02-17 2018-08-23 Cogisen S.R.L. Method for image processing and video compression
CN108596940A (zh) * 2018-04-12 2018-09-28 北京京东尚科信息技术有限公司 一种视频分割方法和装置
CN108805898A (zh) * 2018-05-31 2018-11-13 北京字节跳动网络技术有限公司 视频图像处理方法和装置
CN108898842A (zh) * 2018-07-02 2018-11-27 武汉大学深圳研究院 一种多源监控视频的高效编码方法及其系统
CN110349163A (zh) * 2019-07-19 2019-10-18 Oppo广东移动通信有限公司 图像处理方法和装置、电子设备、计算机可读存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CHANGCHUN LI: "《Robust target detection and tracking in outdoor infrared video》", 《2008 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS,SPEECH AND SIGNAL PROCESSING》 *
王小霞: "《复杂场景中运动目标的检测》", 《计算机应用与软件》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565605A (zh) * 2020-12-02 2021-03-26 维沃移动通信有限公司 图像显示方法、装置和电子设备
CN112565605B (zh) * 2020-12-02 2022-11-25 维沃移动通信有限公司 图像显示方法、装置和电子设备
WO2022194079A1 (zh) * 2021-03-19 2022-09-22 影石创新科技股份有限公司 天空区域分割方法、装置、计算机设备和存储介质
CN113923493A (zh) * 2021-09-29 2022-01-11 北京奇艺世纪科技有限公司 一种视频处理方法、装置、电子设备以及存储介质
CN113923493B (zh) * 2021-09-29 2023-06-16 北京奇艺世纪科技有限公司 一种视频处理方法、装置、电子设备以及存储介质
CN113902760A (zh) * 2021-10-19 2022-01-07 深圳市飘飘宝贝有限公司 视频分割中物体边缘优化方法、系统、装置及存储介质
CN114025105A (zh) * 2021-12-15 2022-02-08 北京达佳互联信息技术有限公司 视频处理方法、装置、电子设备、存储介质
CN114025105B (zh) * 2021-12-15 2023-11-28 北京达佳互联信息技术有限公司 视频处理方法、装置、电子设备、存储介质
CN114422848A (zh) * 2022-01-19 2022-04-29 腾讯科技(深圳)有限公司 视频分割方法、装置、电子设备及存储介质
CN115661701A (zh) * 2022-10-09 2023-01-31 中国科学院半导体研究所 实时图像处理方法、装置、电子设备及可读存储介质
CN116112761A (zh) * 2023-04-12 2023-05-12 海马云(天津)信息技术有限公司 生成虚拟形象视频的方法及装置、电子设备和存储介质

Also Published As

Publication number Publication date
CN111464834B (zh) 2023-04-07

Similar Documents

Publication Publication Date Title
CN111464834B (zh) 一种视频帧处理方法、装置、计算设备及存储介质
Yi et al. Audio-driven talking face video generation with learning-based personalized head pose
US9747495B2 (en) Systems and methods for creating and distributing modifiable animated video messages
JP7476428B2 (ja) 画像の視線補正方法、装置、電子機器、コンピュータ可読記憶媒体及びコンピュータプログラム
CN111260754B (zh) 人脸图像编辑方法、装置和存储介质
CN111476871B (zh) 用于生成视频的方法和装置
CN113287118A (zh) 用于面部再现的系统和方法
JP2022503647A (ja) クロスドメイン画像変換
KR20210118437A (ko) 모션을 선택적으로 묘사한 이미지 디스플레이
CN110956691A (zh) 一种三维人脸重建方法、装置、设备及存储介质
WO2023103576A1 (zh) 视频处理方法、装置、计算机设备及存储介质
CN115601484B (zh) 虚拟人物面部驱动方法、装置、终端设备和可读存储介质
CN113705520A (zh) 动作捕捉方法、装置及服务器
CN113095206A (zh) 虚拟主播生成方法、装置和终端设备
CN114202615A (zh) 人脸表情的重建方法、装置、设备和存储介质
WO2022148248A1 (zh) 图像处理模型的训练方法、图像处理方法、装置、电子设备及计算机程序产品
WO2022110855A1 (zh) 人脸重建方法、装置、计算机设备及存储介质
Cheng et al. Audio-driven talking video frame restoration
Sun et al. Robust pose transfer with dynamic details using neural video rendering
CN114419253A (zh) 一种卡通人脸的构建、直播方法及相关装置
CN112449249A (zh) 视频流处理方法及装置、电子设备及存储介质
CN117241063B (zh) 基于虚拟现实技术的直播交互方法及系统
US12002139B2 (en) Robust facial animation from video using neural networks
US20220270314A1 (en) Robust facial animation from video using neural networks
CN114288647B (zh) 基于AI Designer的人工智能游戏引擎、游戏渲染方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40026335

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant