CN113850833A - 使用降低分辨率的神经网络和先前帧的掩模的视频帧分割 - Google Patents

使用降低分辨率的神经网络和先前帧的掩模的视频帧分割 Download PDF

Info

Publication number
CN113850833A
CN113850833A CN202011376779.9A CN202011376779A CN113850833A CN 113850833 A CN113850833 A CN 113850833A CN 202011376779 A CN202011376779 A CN 202011376779A CN 113850833 A CN113850833 A CN 113850833A
Authority
CN
China
Prior art keywords
mask
segmentation
video frame
neural network
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.)
Pending
Application number
CN202011376779.9A
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN113850833A publication Critical patent/CN113850833A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4046Scaling of whole images or parts thereof, e.g. expanding or contracting using neural networks
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/26Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/49Segmenting video sequences, i.e. computational techniques such as parsing or cutting the sequence, low-level clustering or determining units such as shots or scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/164Detection; Localisation; Normalisation using holistic features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/165Detection; Localisation; Normalisation using facial parts and geometric relationships
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • H04N7/0127Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level by changing the field or frame frequency of the incoming video signal, e.g. frame rate converter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20004Adaptive image processing
    • G06T2207/20012Locally adaptive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Geometry (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了使用降低分辨率的神经网络和先前帧的掩模的视频帧分割。用于视频帧分割的示例装置包括用于接收要分割的当前视频帧接收器。该装置还包括分割神经网络,用于接收包括与先前帧相对应的分割掩模的先前掩模,并基于先前掩模和视频帧生成当前帧的分割掩模。

Description

使用降低分辨率的神经网络和先前帧的掩模的视频帧分割
技术领域
本发明涉及图像领域,具体地涉及使用降低分辨率的神经网络和先前帧的掩模的视频帧分割。
背景技术
在计算机视觉中,图像分割是将数字图像分成像素集的多个片段(也称为图像对象)的过程。例如,分割的目标可能是将图像的表示简化或改变为更有意义且更易于分析的表示。
发明内容
本公开的第一方面提供了一种用于视频帧分割的装置,包括:接收器,用于接收要分割的当前视频帧;以及分割神经网络,用于接收包括与先前帧相对应的分割掩模的先前掩模,并基于先前掩模和视频帧为生成用于当前视频帧生成的分割掩模。
本发开的第二方面提供了一种用于视频分割的方法,包括:经由处理器接收输入的视频帧;经由处理器将缩减输入视频帧缩减以生成降低分辨率的帧;经由分割网络基于降低分辨率的帧来生成分割掩模;经由放大网络基于输入视频帧的分辨率来放大分割掩模;以及经由处理器基于所放大的分割掩模来修改输入视频帧。
附图说明
图1是示出用于使用降低分辨率的神经网络和来自先前帧的掩模来分割视频帧的示例系统的框图;
图2是被训练以使用先前掩模作为输入来生成分割掩模的示例U-Net卷积神经网络(CNN)拓扑;
图3是示出用于生成训练输入的示例过程的流程图,该训练输入用于训练神经网络以使用来自先前帧的掩模来分割视频帧;
图4是示出用于使用输入帧的缩减来分割视频帧的方法的流程图;
图5是示出用于使用来自先前帧的掩模来分割视频帧的方法的流程图;
图6是示出用于训练神经网络以使用来自先前帧的掩模来分割视频帧的方法的流程图;
图7是示出示例计算设备的框图,该示例计算设备可以使用降低分辨率的神经网络和来自先前帧的掩模来分割视频帧;以及
图8是示出计算机可读介质的框图,该计算机可读介质存储用于使用降低分辨率的神经网络以及来自先前帧的掩模来分割视频帧的代码。
在整个公开和附图中使用相同的数字来引用相同的部件和特征。100系列中的数字是指最初在图1中发现的特征;200系列中的数字表示最初在图2中发现的特征;等等。
具体实施方式
在视频会议设置中,背景可以隐藏或模糊以在通话中提供更好的用户隐私体验。为此,可以对视频的前景与背景进行分割,以指示要隐藏或模糊的特定片段。例如,分割可以包括针对视频流的每个像素精确地确定该像素是否是说话的人的一部分。有时使用语义分割来执行该确定。语义分割是指基于像素是哪个对象的一部分来为每个像素生成标签。然而,精确地分割被拍照的人的位置可能是困难的。此外,一些方法可能消耗相当大量的功率,并且因此可能极大地影响实现这些方法的设备的电池寿命小时数(HOBL)。例如,一些方法可能在笔记本电脑或平板电脑上使用2到4瓦的系统功率,这表明使用了计算量非常大的算法。
在一些示例中,可以训练深度神经网络以提供分割。可以通过引入带标签的图像并使用现有的深度学习工具来优化用于网络推断的损失函数来进行训练。例如,损失函数可以是交叉熵损失函数。因此,可以训练网络以输出与图像相同大小的标签图。在前景和背景分割示例中,标签对于背景可以是“0”,并且对于前景可以是“1”。
使用这种方法,许多卷积神经网络(CNN)拓扑可以允许在给定适当训练的情况下执行该任务。但是,所有这些网络都具有数百万个可训练参数,并且可能是计算密集型的。例如,这些网络拓扑可以使用每秒200Giga以上的算术运算(GOP)来处理每秒1920x1080x30帧(FPS)的流。
本公开总体上涉及用于分割视频帧的技术。特别地,该技术涉及视频帧的语义分割。具体地,本文描述的技术包括用于使用降低分辨率的神经网络和来自先前帧的掩模来分割视频帧的装置、方法和系统。示例装置包括用于接收要分割的当前视频帧的接收器。该装置还包括分割(segmenting)神经网络,用于接收与前一帧相对应的前一掩模,并基于前一帧的分割掩模和视频帧生成当前帧的分割掩模。在一些示例中,该装置还包括缩减器(downscaler),用于降低视频帧的分辨率以生成要输入到训练的神经网络中的降低分辨率的帧。该装置还可以包含缩放神经网络,其被训练以将低分割分辨率掩模放大为接收到的当前视频帧的分辨率。
本文描述的技术使得能够优化用户体验。例如,所得到的输出分割可以是鲁棒的,以避免做出错误的分割决策。因此,本文描述的技术能够实现随时间稳定且实时工作的分割。另外,本文描述的技术使得视频分割能够在诸如膝上型计算机或平板计算机的移动设备上运行,而不会阻塞计算系统资源。例如,在实现相同质量结果的同时,本文描述的降低分辨率的网络可以比当前用于执行此任务的其他CNN小两到三个数量级。作为一个示例,可以使用仅具有10,000-100,000个可训练参数的神经网络,而不是使用数百万个参数的网络。因此,本文描述的技术允许以显著较低的功率影响并因此以较高的HOBL来实时实施。例如,本文描述的技术在一起使用时可以将计算成本降低到五个GOP以下。
图1是示出用于使用降低分辨率的神经网络和来自先前帧的掩模来分割视频帧的示例系统的框图。示例系统100可以使用图4和图5的方法400和500在图7中的计算设备700中实现。
示例系统100包括输入图像。例如,输入视频帧可以是来自视频流的帧。系统100包括缩减器104。例如,缩减器104可以降低输入图像的分辨率。在图1的示例中,所得到的降低的分辨率可以是8位160x90像素RGB图像。系统100还包括通信地耦合到缩减器104的分割神经网络108。例如,分割神经网络108可以是降低分辨率的神经网络。作为一个示例,分割神经网络108可以是具有10,000-100,000个参数的SegNET全卷积神经网络,这些参数被训练以对降低分辨率的输入执行语义逐像素分割。在各种示例中,可以训练分割神经网络108以处理160×90像素输入。系统100还包括由分割神经网络108生成的分割掩模110。例如,分割掩模110可以是降低分辨率的掩模,例如8位160×90像素掩模。系统100还包括帧延迟112。例如,帧延迟112可以用于将分割掩模110的传输延迟一个帧的持续时间,使得当分割神经网络108接收后续视频帧作为输入视频帧102时,分割掩模110作为先前掩模114被发送到分割神经网络108。系统100还包括通信地耦合到分割神经网络108的放大(upscaling)神经网络116。例如,可以使用在1998年11月首次发布的ScaleNET神经网络来实现放大神经网络116。作为一个示例,放大神经网络116可以具有1,000个被训练以放大降低分辨率的分割掩模110的参数。系统100还包括由放大神经网络116生成的掩模118。例如,掩模118可以具有与输入视频帧102的分辨率相同的分辨率。
图1的系统100可以用于基于输入视频帧102以及为先前帧生成的先前掩模114有效地生成分割掩模118。分割可以被分为两个任务。在第一任务中,可以使用显著降低的分辨率图像来执行每个区域的语义分割。在第二任务中,将得到的标签掩模放大为原始分辨率。
第一任务,即分割,在技术上可能更加困难。例如,实时分割通常可以使用更多的计算资源。然而,可以对降低分辨率的帧106执行分割任务,使得利用包围场景的更大部分的相同数量的像素来扩大网络有效接收场。使用降低分辨率的帧106可以使得能够使用具有较少参数的较小大小的分割神经网络108。分割神经网络108的这种减小的网络大小允许推断复杂度的数量级降低。
将掩模放大为原始分辨率的第二任务是由放大神经网络116执行的。例如,放大神经网络116可以被训练以学习将放大的掩模与全分辨率图像中的细粒度细节对准,以在推断时生成放大的掩模118。如本文所使用的,推理是指训练之后的阶段,在该阶段中,经训练的放大神经网络116用于分割视频馈送。
在各种示例中,为了将复杂度总共减少多达两到三个数量级,系统100还可以利用视频中的时间一致性。例如,可以假设在连续的帧之间,分割结果变化非常小(如果有的话),并且这也可以应用于摄像机相对静态的许多使用情况。基于该假设,来自先前帧的先前掩模114可以用作进入分割网络的另一信道。
在一些示例中,在训练期间,附加先验(未示出)也可以用作分割神经网络的输入。作为一个示例,在视频通话中的背景分割的情况下,可以用作分割神经网络108的输入的附加先验是面部检测器(未示出)的输出。例如,面部检测器的输出可以地是检测到的面部界标(landmark)的凸包(convex hull)。在一些示例中,面部提示(cue)层可以用于更快的训练收敛。在推断时,已经包含显著对象定位的足够信息的先前掩模114可以用作先验,而不是面部提示。关于图3更详细地描述了用于训练的面部提示的使用。在各种示例中,任何其他合适的提示可以用于训练。
图1的图并不旨在指示示例系统100将包括图1所示的所有组件。而是,示例系统100可以使用更少的或附加的图1中未示出的组件(例如,附加的输入帧、神经网络、缩减器、放大网络、输出掩模等)来实现。例如,在一些示例中,系统100可以不包括缩减器104和放大神经网络116。例如,分割神经网络108可以被训练以分割全分辨率图像并使用全分辨率的先前掩模114来生成掩模118。
图2是被训练以使用先前掩模作为输入来生成分割掩模的示例U-Net卷积神经网络(CNN)拓扑。示例U-Net CNN拓扑200可以在系统100中实现,并使用过程300或方法500进行训练。
图2的示例U-Net CNN拓扑200包括四个输入通道,包括对应于RGB帧202和先前掩模204的三个通道。RGB帧202和先前掩模204被示出为在四个通道输入206处被接收的。U-Net CNN拓扑200还包括通信地耦合到四通道输入206的缩减器208。例如,缩减器208可以将输入通道缩减4倍。U-Net CNN拓扑200还包括彼此通信地耦合到缩减器208的多个耦合的最大池化层210A、210B、210C。U-Net CNN拓扑200包括彼此通信地耦合到210A、210B、210C的多个卷积层212A、212B、212C、212D、212E,212F和212G。在各种示例中,卷积层212A、212B、212C、212D、212E、212F和212G中的每一个可以包括具有批归一化的整流线性单元(ReLU)。U-Net CNN拓扑200还包括通信地耦合到最大池化层210C和卷积层212E、212F和212G的一组转置的卷积层214A、214B和214C。U-Net CNN拓扑200包括通信地耦合到最大池化层210C和转置的卷积层214A的一组空洞(atrous)卷积层216。U-Net CNN拓扑200包括通信地耦合到具有批归一化的卷积整流线性单元(ReLU)222和四通道输入206的放大器218。放大器218被示为生成输出220。例如,输出220可以是具有与输入RGB帧202匹配的分辨率的分割掩模。U-Net CNN拓扑200还包括指示跳过(skip)连接222的虚线箭头以及指示常规前向连接224的实线。
在图2的示例U-Net CNN拓扑200中,可以去除U-Net CNN的卷积块中的多个滤波器,以减少不必要的深度维度,并将Net CNN拓扑200集中在其能够增益的接收场网络的大小上。例如,缩减器208可以将输入通道缩减4倍。U-Net CNN拓扑200包括编码器块的扩展路径和解码器块的收缩路径,这给予U-Net CNN拓扑200提供了u形架构。例如,收缩路径开始于卷积层212A,并结束于空洞卷积层216。扩展路径开始于转置的卷积层214A,并结束于卷积层212G。在各种示例中,收缩路径是由卷积的重复应用而组成的卷积网络。在各种示例中,每个卷积之后可以是激活单元(例如,整流线性单元(ReLU))和最大池化操作。在收缩期间,空间信息减少,而特征信息增加。扩展路径通过一系列上卷积和来自收缩路径的高分辨率特征的级联来组合特征和空间信息。
在各种示例中,具有ReLU和批归一化的三层3x3卷积212A可以处理缩减的帧。然后,可以通过大小为2x2的最大池化来处理经处理的帧,以按因子2对经处理的输入进行下采样。例如,最大池化可以包括基于样本的离散化过程,该离散过程对输入表示进行下采样并减小其维数,并允许对包含在被拣选的子区域中的特征进行假设。3×3卷积212B和212C可以类似地处理最大池化212A和212B的下采样输出。第三最大池化210C可以类似地对3×3卷积212C的输出进行下采样。
最终解码器块可以包括空洞卷积层216,其可以类似于其他编码器层执行,期望所使用的卷积可以是空洞的以进一步扩大网络的接收场。特别地,空洞卷积用于显式地控制在U-Net CNN拓扑200内计算特征响应的分辨率,并有效地扩大滤波器的场以结合更大的上下文,而不增加参数的数量或计算量。空洞卷积层216的输出特征图可以更大以扩大滤波器的场,从而结合更大的上下文。在一些示例中,空洞卷积层216可以执行空洞空间金字塔池化(ASPP)。在SPP中,在卷积层和完全连接(FC)层的过渡处,可以以不同的尺度使用多个池化层。在ASPP中,可以在输入特征图中应用具有不同速率的并行空洞卷积,并将其融合在一起。特别地,ASPP以多个采样率和有效视场探测具有滤波器的输入卷积特征层,从而以多个尺度捕获对象以及图像上下文。
类似于卷积层212A,212B,212C的具有相应的最大池化210A、210B、210C的解码器块,编码器块在一组卷积层212E和212F之后具有相应的最终层。然而,转置的卷积层214A、214B和214C可以替代地在每个步骤中以按因子2对输入支持进行上采样。在各种示例中,转置的卷积层214A、214B和214C还利用来自跳过连接222的相同分辨率的信息在空间上传播在解码器块处做出的决策。
放大器218可以放大从卷积层212G接收的特征图,以恢复细粒度的细节。例如,可以将特征图放大四倍。
图3是示出用于生成训练输入的示例过程的流程图,该训练输入用于训练神经网络以使用来自先前帧的掩模来分割视频帧。示例过程300可以在图7的计算设备700中实现,并用于训练图1的分割神经网络108或图2的神经网络200。在各个示例中,过程300可以使用图7的计算设备700的处理器702或图8的计算机可读介质800的处理器802和训练器模块818来实现。
在框302处,接收RGB视频帧。例如,视频帧可以包括与传感器检测到的光水平相对应的红色(R)通道、绿色(G)通道和蓝色(B)通道。
在框304处,执行面部界标检测。面部界标检测的结果可以生成包含面部界标的凸包306。面部界标的凸包306是包含面部界标的最小凸集。在各种示例中,可以使用计算机视觉技术离线生成凸包,该计算机技术具有预测面部界标的预训练模型。
在框308处,将面部界标用作面部提示。例如,面部提示可以是作为在训练期间传递到网络的另一通道的面部掩模。在各种示例中,面部提示可以是面部的大部分区域的掩模,并且用作位置提示。例如,可以可选地包括面部提示,以向神经网络提供关于显著对象在训练图像中的位置的附加提示。
在框310处,接收到基础真实(ground truth,GT)掩模。例如,GT掩模可以为在框302处接收到的视频帧提供正确的分割。
在框312处,执行随机仿射变换。例如,随机仿射变换可以包括诸如平移范围、旋转和剪切之类的变换参数的随机化,以及将仿射变换应用于基础真实掩模。当在当前帧的推断期间使用时,随机仿射变换可以用于强制网络学习适应和利用先前帧信息。由于用于训练语义分割的大多数可用数据集可以基于静态图像,因此可以使用随机仿射变换来修改GT掩模310,以在训练期间以合成先前帧预测314的形式生成合成先前帧反馈。在各种示例中,可以替代地或附加地使用其他随机变换。例如,随机变换可以包括仿射、投影或非线性或随机分类噪声。例如,随机分类噪声可以将掩模的随机区域从0修改为1或从1修改为0。
在框316处,将RGB帧302、面部提示308和合成先前帧预测314级联。例如,级联可用于训练输入以训练神经网络,例如图1的分割神经网络108或使用图2的U-Net CNN拓扑200的神经网络。
该过程流程图并不旨在指示示例过程300的框将以任何特定顺序执行,或者在每种情况下都将包括所有框。此外,取决于具体实现方式的细节,示例过程300内可以包括任何数量的未示出的附加框。
图4是示出用于使用来自先前帧的掩模来分割视频帧的方法的流程图。示例方法400可以使用图2的神经网络200在图1的系统100或图7的计算设备700中实现。在各种示例中,方法400可以使用图7的计算设备700的处理器702或图8的计算机可读介质800的处理器802来实现。
在框402处,接收当前视频帧。例如,当前视频帧可以是流式视频的帧。作为一个示例,流式视频可以是流式会议的视频。
在框404处,基于当前视频帧和为先前视频帧生成的先前掩模来生成分割掩模。例如,可以通过经训练的分割网络来生成分割掩模。
在框406处,使用所生成的分割掩模来修改当前视频帧。例如,可以用输入的替换背景图像来替换视频帧的背景。在一些示例中,视频帧的背景可能是模糊的。
该过程流程图并非旨在指示示例方法400的框将以任何特定顺序执行,或者在所有情况下都将包括所有框。此外,取决于具体实现方式的细节,示例方法400内可以包括任何数量的未示出的附加框。
图5是示出用于使用来自先前帧的掩模来分割视频帧的方法的流程图。示例方法500可以使用图2的神经网络200在图1的系统100或图7的计算设备700中实现。在各个示例中,方法500可以使用图7的计算设备700的处理器702或图8的计算机可读介质800的处理器802来实现。
在框502处,接收输入视频帧。例如,视频帧可以是视频流的高分辨率帧。
在框504处,缩小输入视频帧以生成降低分辨率的帧。例如,每个帧可以按因子4或任何其他合适的因子进行缩减。
在框506处,基于降低分辨率的帧来生成分割掩模。例如,可以为每个降低分辨率的帧生成分割掩模。
在框508处,基于输入视频帧的分辨率来放大分割掩模。例如,每个分割掩模可以被放大四倍。
在框510处,基于放大的分割掩模来修改输入视频帧。例如,可以输入的替换背景图像来替换每个视频帧的背景。在一些示例中,每个视频帧的背景可能是模糊的。
该过程流程图并不旨在指示示例方法500的框将以任何特定顺序执行,或者在每种情况下都将包括所有框。此外,取决于具体实现方式的细节,示例方法500内可以包括任何数量的未示出的附加框。
图6是示出用于训练神经网络以使用来自先前帧的掩模来分割视频帧的方法的流程图。示例方法600可以在图7的计算设备600中实现,并且用于训练图1的分割神经网络108或图2的神经网络200。在各种示例中,方法600可以使用图7的计算设备700的处理器702或图8的计算机可读介质800的处理器802和训练器模块818来实现。
在框602处,接收输入训练图像和相关联的基础真实掩模。例如,基础真实掩模可以是指示背景和前景的分割掩模。在一些示例中,基础真实掩模可以指示输入训练图像中的一个或多个对象。
在框604处,在训练图像中检测面部界标。例如,可以使用任何合适的面部界标检测器来检测面部界标。
在框606处,基于检测到的面部界标生成面部提示。例如,可以基于检测到的面部界标来生成凸包。凸包可以用作面部提示。
在框608处,基于随机仿射变换的基础真实掩模来生成合成先前帧预测。例如,可以使用随机仿射变换为每个基础真实掩模生成合成先前帧预测。
在框610处,输入训练图像与相应的生成的面部提示和合成帧预测级联。例如,每个输入训练图像可以与相应的生成的面部提示和合成帧预测级联。
在框612处,使用级联的输入训练图像来训练网络。例如,该网络可以是卷积神经网络(CNN),例如图2的U-Net CNN拓扑200。
该过程流程图并不旨在指示示例方法600的框将以任何特定顺序执行,或者在每种情况下都将包括所有框。此外,取决于具体实现方式的细节,示例方法600内可以包括任何数量的未示出的附加框。
现在参考图7,示出了例示示例计算设备的框图,该示例计算设备可以使用降低分辨率的神经网络和来自先前帧的掩模来分割视频帧。计算设备700可以是例如膝上型计算机、台式计算机、平板计算机、移动设备或可穿戴设备等。在一些示例中,计算设备700可以是电话会议设备。计算设备700可以包括被配置为执行存储的指令的中央处理单元(CPU)702,以及存储可以由CPU 702执行的指令的存储器设备704。CPU 702可以通过总线706耦合到存储器设备704。另外,CPU 702可以是单核处理器、多核处理器、计算集群或任何数量的其他配置。此外,计算设备700可以包括一个以上的CPU 702。在一些示例中,CPU 702可以是具有多核处理器架构的片上系统(SoC)。在一些示例中,CPU 702可以是用于图像处理的专用数字信号处理器(DSP)。存储器设备704可以包括随机存取存储器(RAM)、只读存储器(ROM)、闪存或任何其他合适的存储器系统。例如,存储器设备704可以包括动态随机存取存储器(DRAM)。
存储器设备704可以包括随机存取存储器(RAM)、只读存储器(ROM)、闪存或任何其他合适的存储器系统。例如,存储器设备704可以包括动态随机存取存储器(DRAM)。
计算设备700还可以包括图形处理单元(GPU)708。如图所示,CPU702可以通过总线706耦合到GPU 708。GPU 708可以被配置为在计算设备700中执行任何数量的图形操作。例如,GPU 708可以被配置为渲染或操纵要被显示给计算设备700的用户的图形图像、图形帧、视频等。
存储器设备704可以包括随机存取存储器(RAM)、只读存储器(ROM)、闪存或任何其他合适的存储器系统。例如,存储器设备704可以包括动态随机存取存储器(DRAM)。存储器设备704可以包括设备驱动器710,其被配置为执行用于训练多个卷积神经网络以执行序列独立处理的指令。设备驱动器710可以是软件、应用程序、应用代码等。
CPU 702还可以通过总线706连接到输入/输出(I/O)设备接口712,其被配置为将计算设备700连接到一个或多个I/O设备714。I/O设备714可以包括例如键盘和指示设备,其中指示设备可以包括触摸板或触摸屏等。I/O设备714可以是计算设备700的内置组件,或者可以是从外部连接到计算设备700的设备。在一些示例中,存储器设备704可以通过直接存储器存取(DMA)通信地耦合到I/O设备714:。
CPU 702还可以通过总线706链接到被配置为将计算设备700连接到显示设备718的显示接口716。显示设备718可以包括作为计算设备700的内置组件的显示屏。显示设备718还可以包括在计算设备700的内部或从外部连接到计算设备700的计算机监视器、电视或投影仪等。
计算设备700还包括存储设备720。存储设备720是物理存储器,例如硬盘驱动器、光盘驱动器、拇指驱动器、驱动器阵列、固态驱动器或其任何组合。存储设备720还可以包括远程存储驱动器。
计算设备700还可以包括网络接口控制器(NIC)722。NIC 722可以被配置为通过总线706将计算设备700连接到网络724。网络724可以是广域网(WAN)、局域网(LAN)或因特网等。在一些示例中,设备可以通过无线技术与其他设备通信。例如,设备可以经由无线局域网连接与其他设备通信。在一些示例中,设备可以经由
Figure BDA0002808396220000121
或类似技术与其他设备连接和通信。
计算设备700还包括相机726。例如,相机726可以包括一个或多个成像传感器。在一些示例中,相机726可以包括用于生成视频帧的处理器。
计算设备700还包括帧分割器728。例如,帧分割器728可以用于分割视频帧。帧分割器728可以包括帧接收器730、帧缩减器732、分割网络734、掩模反馈736和掩模放大器738。在一些示例中,帧分割器728的每个组件730-738可以是微控制器、嵌入式处理器或软件模块。帧接收器730可以接收要分割的视频帧。例如,视频帧可以是流式视频的当前视频帧。帧缩减器732可以降低视频帧的分辨率,以生成要输入到分割神经网络中的降低分辨率的帧。例如,分割神经网络可以是降低分辨率的神经网络。在一些示例中,帧缩减器732可以将帧缩减4倍。分割网络734可以基于先前掩模和视频帧来生成当前帧的分割掩模。在一些示例中,分割掩模可以是降低分辨率的分割掩模。在一些示例中,分割网络734可以基于降低分辨率的帧和降低分辨率的分割掩模来生成视频帧的分割掩模。掩模反馈736可以在延迟之后将生成的分割掩模发送到分割神经网络,以给后续视频帧用作先前掩模。掩模放大器738可以基于视频帧的分辨率来放大分割掩模。
计算设备700还包括训练器740。例如,训练器740可以用于训练分割网络734和掩模放大器738。在各种示例中,训练器740可以接收输入的训练图像和相关联的基础真实掩模。在一些示例中,训练器740可以使用从训练图像中检测到的面部界标生成的面部提示来训练分割网络734。在各种示例中,训练器740可以使用合成的先前帧预测来训练分割网络734。例如,训练器740可以使用基础真实掩模的随机仿射变换来生成合成的先前帧预测。在各种示例中,训练器740可以使用附加的提示来训练分割网络734。在一些示例中,附加的提示可以是从接收到的检测到的面部界标生成的面部提示。例如,训练器740可以使用图3的过程300来训练分割网络734。
图7的框图并不旨在指示计算设备700将包括图7所示的所有组件。而是,计算设备700可以包括更少的或附加的图7中未示出的组件,诸如附加缓冲器、附加处理器等。取决于具体实现方式的细节,计算设备700可以包括任何数量的图7中未示出的附加组件。例如,计算设备700可以包括用于使用分割掩模来修改视频帧的帧修改器。例如,帧修改器可以使用放大的分割掩模来模糊视频帧的背景。在一些示例中,帧修改器可以利用替换背景图像来替换使用放大的分割掩模的视频帧的背景。此外,帧接收器730、帧缩减器732、分割网络734、掩模反馈736、掩模放大器738和训练器740的任何功能可以部分或全部在硬件和/或处理器720中实现。例如,功能可以利用专用集成电路,以在处理器702中实现的逻辑或以任何其他设备来实现。另外,CPU 702的任何功能可以部分或全部地在硬件和/或处理器中实现。例如,帧分割器728的功能可以利用专用集成电路,以在处理器中实现的逻辑、以诸如GPU708之类的专用图形处理单元中实现的逻辑、或以任何其他设备来实现。
图8是示出计算机可读介质800的框图,该计算机可读介质800存储用于使用降低分辨率的神经网络和来自先前帧的掩模来分割视频帧的代码。计算机可读介质800可以由处理器802通过计算机总线804访问。此外,计算机可读介质800可以包括被配置为指导处理器802执行本文描述的方法的代码。在一些实施例中,计算机可读介质800可以是非暂态计算机可读介质。在一些示例中,计算机可读介质800可以是存储介质。
如图8所示,本文讨论的各种软件组件可以被存储在一种或多种计算机可读介质800上。例如,帧接收器模块806可以被配置为接收要分割的视频帧。例如,视频帧可以是视频流的当前视频帧。帧缩减器模块808可以被配置为缩减视频帧以生成分辨率降低的帧。例如,帧缩减器模块808可以被配置为降低视频帧的分辨率,以生成要输入到分割神经网络中的降低分辨率的帧。分割网络模块810可以被配置为基于先前掩模和视频帧生成当前视频帧的分割掩模。在一些示例中,分割网络模块810可以被配置为基于降低分辨率的视频帧来生成当前视频帧的分割掩模。掩模反馈模块812可以被配置为将所生成的分割掩模发送给分割神经网络。例如,掩模反馈模块812可以被配置为在延迟之后将所生成的分割掩模发送到分割神经网络,以给后续视频帧用作先前掩模。掩模放大器模块814可以被配置为将低分割分辨率掩模放大为所接收到的当前视频帧的分辨率。帧修改器模块816可以被配置为基于分割掩模来修改当前视频帧。在各种示例中,帧修改器模块816可以被配置为基于与当前视频帧的分辨率匹配的分割掩模来修改当前视频帧。例如,帧修改器模块816可以被配置为使用输入的替换背景图像来替换当前视频帧的背景,或者使用放大的分割掩模来模糊当前视频帧的背景。训练器模块818可以被配置为接收输入的训练图像和相关联的基础真实掩模,并使用从基础真实掩模生成的合成先前帧预测来训练分割网络。在一些示例中,训练器模块818可以被配置为使用从训练图像中检测到的面部界标生成的面部提示来训练分割网络。
图8的框图并不旨在指示计算机可读介质800将包括图8所示的所有组件。此外,取决于关于具体实现方式的细节,计算机可读介质800可以包括任何数量的图8中未示出的附加组件。
示例
示例1是一种用于视频帧分割的装置。该装置包括用于接收要分割的当前视频帧的接收器。该装置包括分割神经网络,用于接收包括与先前帧相对应的分割掩模的先前掩模,并基于先前掩模和视频帧生成当前视频帧的分割掩模。
示例2包括示例1的装置,包括或不包括可选特征。在该示例中,该装置包括缩减器,用于降低视频帧的分辨率,以生成要输入到分割神经网络中的降低分辨率的帧。分割神经网络是降低分辨率的神经网络。
示例3包括示例1至2中任一项的装置,包括或不包括可选特征。在该示例中,分割掩模包括降低分辨率的分割掩模。
示例4包括示例1至3中任一项的装置,包括或不包括可选特征。在该示例中,该装置包括放大神经网络,其被训练以将低分割分辨率掩模放大为所接收到的当前视频帧的分辨率。
示例5包括示例1至4中任一项的装置,包括或不包括可选特征。在该示例中,该装置包括掩模反馈,用于在延迟之后将所生成的分割掩模发送到分割神经网络以给后续视频帧用作先前掩模。
示例6包括示例1至5中任一项的装置,包括或不包括可选特征。在该示例中,分割神经网络包括U-Net。
示例7包括示例1至6中任一项的装置,包括或不包括可选特征。在该示例中,神经网络是使用基础真实掩模的随机仿射变换来训练的。
示例8包括示例1至7中任一项的装置,包括或不包括可选特征。在该示例中,神经网络是使用合成的先前帧预测来训练的。
示例9包括示例1至8中任一项的装置,包括或不包括可选特征。在该示例中,神经网络是使用附加提示来训练的。
示例10包括示例1至9中任一项的装置,包括或不包括可选特征。在该示例中,神经网络是使用面部提示来训练的。
示例11是一种用于视频分割的方法。该方法包括经由处理器接收输入的视频帧。该方法还包括经由处理器缩减输入的视频帧以生成降低分辨率的帧。该方法还包括经由分割网络基于降低分辨率的帧来生成分割掩模。该方法还包括经由放大网络基于输入视频帧的分辨率来放大分割掩模。该方法还包括经由处理器基于放大的分割掩模来修改输入的视频帧。
示例12包括示例11的方法,包括或不包括可选特征。在该示例中,该方法包括使用输入的训练图像和相关联的基础真实掩模来训练分割网络。
示例13包括示例11至12中任一项的方法,包括或不包括可选特征。在该示例中,该方法包括使用从训练图像中检测到的面部界标生成的面部提示来训练分割网络。
示例14包括示例11至13中任一项的方法,包括或不包括可选特征。在该示例中,该方法包括使用从随机仿射变换的基础真实掩模生成的合成先前帧预测来训练分割网络。
示例15包括示例11至14中任一项的方法,包括或不包括可选特征。在该示例中,该方法包括使用输入的训练图像、生成的面部提示和合成帧预测的级联来训练分割网络。
示例16包括示例11至15中任一项的方法,包括或不包括可选特征。在该示例中,该方法包括使用附加提示来训练分割网络。
示例17包括示例11至16中任一项的方法,包括或不包括可选特征。在该示例中,该方法包括使用随机仿射变换从基础真实掩模生成合成先前帧预测。
示例18包括示例11至17中任一项的方法,包括或不包括可选特征。在该示例中,缩减输入视频帧包括将帧缩减四倍。
示例19包括示例11至18中任一项的方法,包括或不包括可选特征。在该示例中,修改输入视频帧包括使用放大的分割掩模来使输入视频帧的背景模糊。
示例20包括示例11至19中任一项的方法,包括或不包括可选特征。在该示例中,修改输入视频帧包括利用替换背景图像来替换使用放大的分割掩模的输入视频帧的背景。
示例21是至少一种用于对视频进行分割的计算机可读介质,具有存储在其中的指令,这些指令指导处理器接收要分割的当前视频帧。该计算机可读介质包括指导处理器接收包括与先前帧相对应的分割掩模的先前掩模的指令。该计算机可读介质还包括指导处理器基于先前掩模和视频帧生成当前视频帧的分割掩模指令。该计算机可读介质还包括指导处理器基于分割掩模来修改当前视频帧的指令。
示例22包括示例21的计算机可读介质,包括或不包括可选特征。在该示例中,计算机可读介质包括用于使处理器降低视频帧的分辨率以生成要输入到分割神经网络中的降低分辨率的帧的指令。
示例23包括示例21至22中任一项的计算机可读介质,包括或不包括可选特征。在该示例中,计算机可读介质包括用于使处理器将低分割分辨率掩模放大到所接收到的当前视频帧的分辨率的指令。
示例24包括示例21至23中任一项的计算机可读介质,包括或不包括可选特征。在该示例中,计算机可读介质包括用于使处理器在延迟之后将所生成的分割掩模发送到分割神经网络以给后续视频帧用作先前掩模的指令。
示例25包括示例21至24中任一项的计算机可读介质,包括或不包括可选特征。在该示例中,计算机可读介质包括用于使处理器利用输入的替换背景图像来替换当前视频帧的背景或者使用放大的分割掩模来模糊当前视频帧的背景的指令。
示例26包括示例21至25中任一项的计算机可读介质,包括或不包括可选特征。在该示例中,计算机可读介质包括用于使用附加提示来训练分割网络的指令。
示例27包括示例21至26中任一项的计算机可读介质,包括或不包括可选特征。在该示例中,计算机可读介质包括用于使用随机仿射变换从基础真实掩模生成合成先前帧预测的指令。
示例28包括示例21至27中任一项的计算机可读介质,包括或不包括可选特征。在该示例中,计算机可读介质包括用于将输入视频帧缩减四倍的指令。
示例29包括示例21至28中任一项的计算机可读介质,包括或不包括可选特征。在该示例中,计算机可读介质包括用于使用放大的分割掩模来模糊输入视频帧的背景的指令。
示例30包括示例21至29中任一项的计算机可读介质,包括或不包括可选特征。在该示例中,计算机可读介质包括用于利用替换背景图像来替换使用放大的分割掩模的输入视频帧的背景。
示例31是一种用于三维点的标识的系统。该系统包括用于接收要分割的当前视频帧的装置。该系统还包括用于接收包括与先前帧相对应的分割掩模的先前掩模并且基于先前掩模和视频帧生成当前视频帧的分割掩模的装置。
示例32包括示例31的系统,包括或不包括可选功能。在该示例中,该系统包括用于降低视频帧的分辨率以生成要输入到分割神经网络的降低分辨率的帧的装置。用于生成分割掩模的装置是降低分辨率的神经网络。
示例33包括示例31至32中任一项的系统,包括或不包括可选特征。在该示例中,分割掩模包括降低分辨率的分割掩模。
示例34包括示例31至33中任一项的系统,包括或不包括可选特征。在该示例中,该系统包括用于将低分割分辨率掩模放大到所接收到的当前视频帧的分辨率的装置。
示例35包括示例31至34中任一项的系统,包括或不包括可选特征。在该示例中,该系统包括用于在延迟之后将所生成的分割掩模发送到分割神经网络以给后续视频帧用作先前掩模的装置。
示例36包括示例31至35中任一项的系统,包括或不包括可选特征。在该示例中,系统包括示例31-35的任何组合的项,其中用于生成分割掩模的装置包括U-Net。
示例37包括示例31至36中任一项的系统,包括或不包括可选特征。在该示例中,用于生成分割掩模的装置是使用基础真实掩模的随机仿射变换来训练的。
示例38包括示例31至37中任一项的系统,包括或不包括可选特征。在该示例中,用于生成分割掩模的装置是使用合成先前帧预测来训练的。
示例39包括示例31至38中任一项的系统,包括或不包括可选功能。在该示例中,用于生成分割掩模的装置是使用附加提示来训练的。
示例40包括示例31至39中任一项的系统,包括或不包括可选特征。在该示例中,用于生成分割掩模的装置是使用面部提示来训练的。
示例41是一种用于视频帧分割的系统。该系统包括用于接收要分割的当前视频帧的接收器。该系统还包括分割神经网络,用于接收包括对应于先前帧的分割掩模的先前掩模并基于先前掩模和视频帧生成当前视频帧的分割掩模。
示例42包括示例41的系统,包括或不包括可选特征。在该示例中,系统包括缩减器,用于降低视频帧的分辨率以生成要输入到分割神经网络中降低分辨率的帧。分割神经网络是降低分辨率的神经网络。
示例43包括示例41至42中任一项的系统,包括或不包括可选特征。在该示例中,分割掩模包括降低分辨率的分割掩模。
示例44包括示例41至43中任一项的系统,包括或不包括可选特征。在该示例中,该系统包括被训练以将低分割分辨率掩模放大为所接收到的当前视频帧的分辨率的放大神经网络。
示例45包括示例41至44中任一项的系统,包括或不包括可选特征。在该示例中,系统包括掩模反馈,用于在延迟之后将所生成的分割掩模发送到分割神经网络以给后续视频帧用作先前掩模。
示例46包括示例41至45中任一项的系统,包括或不包括可选特征。在该示例中,分割神经网络包括U-Net。
示例47包括示例41至46中任一项的系统,包括或不包括可选特征。在该示例中,神经网络是使用基础真实掩模的随机仿射变换来训练的。
示例48包括示例41至47中任一项的系统,包括或不包括可选特征。在该示例中,神经网络是使用合成先前帧预测来训练的。
示例49包括示例41至48中任一项的系统,包括或不包括可选特征。在该示例中,神经网络是使用附加提示来训练的。
示例50包括示例41至49中任一项的系统,包括或不包括可选特征。在该示例中,神经网络使用面部提示来训练的。
并非本文描述和示出的所有组件、特征、结构、特性等都需要包括在一个或多个特定方面中。如果说明书例如指出组件、特征、结构或特性“可”、“可以”、“能”或“能够”被包括,则该特定组件、特征、结构或特性不是必须被包括。如果说明书或权利要求书提及“一”元素,则并不意味着仅存在一个元素。如果说明书或权利要求书提及“附加”元素,则不排除存在一个以上附加元素。
要注意的是,尽管已经参考特定实现方式描述了一些方面,但是根据一些方面,其他实现方式也是可能的。另外,附图中示出和/或本文描述的电路元件或其他特征的布置和/或顺序不需要以示出和描述的特定方式布置。根据某些方面,许多其他布置是可能的。
在附图中所示的每个系统中,在某些情况下,元件可以各自具有相同的附图标记或不同的附图标记,以表明所表示的元件可以是不同的和/或相似的。然而,元件可以足够灵活,以具有不同的实现方式并且可以与本文示出或描述的一些或所有系统一起工作。附图中所示的各种元件可以是相同的或不同的。哪个被称为第一元件,哪个被称为第二元件是任意的。
应该理解,在一个或多个方面的任何地方都可以使用前述示例中的细节。例如,还可相对于本文描述的方法或计算机可读介质来实现上述计算设备的所有可选特征。此外,尽管流程图和/或状态图可能已在本文中用于描述各方面,但是技术不限于这些图或本文中的相应描述。例如,流程不需要经过每个示出的框或状态或以与本文示出和描述的完全相同的顺序移动。
本技术不限于本文列出的特定细节。实际上,受益于本公开的本领域技术人员将理解,可以在本技术的范围内对前述描述和附图进行许多其他变型。因此,以下权利要求包括对其的任何修改,其限定了本技术范围。

Claims (25)

1.一种用于视频帧分割的装置,包括:
接收器,用于接收要分割的当前视频帧;以及
分割神经网络,用于接收包括与先前帧相对应的分割掩模的先前掩模,并基于所述先前掩模和所述视频帧生成用于所述当前视频帧的分割掩模。
2.根据权利要求1所述的装置,包括缩减器,用于降低所述视频帧的分辨率以生成要输入到所述分割神经网络中的降低分辨率的帧,其中,所述分割神经网络是降低分辨率的神经网络。
3.根据权利要求1所述的装置,其中,所述分割掩模包括降低分辨率的分割掩模。
4.根据权利要求1所述的装置,包括放大神经网络,该放大神经网络被训练以将低分割分辨率掩膜放大为所接收到的当前视频帧的分辨率。
5.根据权利要求1所述的装置,包括掩模反馈,用于在延迟之后将所生成的分割掩模发送到所述分割神经网络以给后续视频帧用作先前掩模。
6.根据权利要求1至5中任一项所述的装置,其中,所述分割神经网络包括U-Net。
7.根据权利要求1至5中任一项所述的装置,其中,所述分割神经网络是使用基础真实掩模的随机仿射变换来训练的。
8.根据权利要求1至5中任一项所述的装置,其中,所述分割神经网络是使用合成先前帧预测来训练的。
9.根据权利要求1至5中任一项所述的装置,其中,所述分割神经网络是使用附加提示来训练的。
10.根据权利要求1至5中任一项所述的装置,其中,所述分割神经网络是使用面部提示来训练的。
11.一种用于视频分割的方法,包括:
经由处理器,接收输入的视频帧;
经由所述处理器,缩减所述输入视频帧以生成降低分辨率的帧;
经由分割网络,基于所述降低分辨率的帧来生成分割掩模;
经由放大网络,基于所述输入视频帧的分辨率来放大所述分割掩模;以及
经由所述处理器,基于所放大的分割掩模来修改所述输入视频帧。
12.根据权利要求11所述的方法,包括:使用输入训练图像和相关联的基础真实掩模来训练所述分割网络。
13.根据权利要求11所述的方法,包括:使用从所述训练图像中检测到的面部界标生成的面部提示来训练所述分割网络。
14.根据权利要求11所述的方法,包括:使用从随机仿射变换的基础真实掩模生成的合成先前帧预测来训练所述分割网络。
15.至少一种用于对视频进行分割的计算机可读介质,具有存储在其中的指令,这些指令响应于在计算设备上被执行而使该计算设备:
接收要分割的当前视频帧;
接收包括与先前帧相对应的分割掩模的先前掩模;
基于所述先前掩模和所述视频帧生成用于所述当前视频帧的分割掩模;以及
基于所述分割掩模来修改所述当前视频帧。
16.根据权利要求15所述的至少一种计算机可读介质,包括:用于使所述处理器降低所述视频帧的分辨率以生成要输入到所述分割神经网络的降低分辨率的帧的指令。
17.根据权利要求15所述的至少一种计算机可读介质,包括:用于使所述处理器将低分割分辨率掩模放大为所接收到的当前视频帧的分辨率的指令。
18.根据权利要求15所述的至少一种计算机可读介质,包括:用于使所述处理器在延迟之后将所生成的分割掩模发送到所述分割神经网络以给后续视频帧用作先前掩模的指令。
19.根据权利要求15所述的至少一种计算机可读介质,包括:用于使所述处理器利用输入的替换背景图像来替换所述当前视频帧的背景或者使用所放大的分割掩模来模糊所述当前视频帧的背景的指令。
20.一种用于三维点的标识的系统,包括:
接收装置,用于接收要分割的当前视频帧;以及
用于下述操作的装置:接收包括与先前帧相对应的分割掩模的先前掩模,并基于所述先前掩模和所述视频帧生成用于所述当前视频帧的分割掩模。
21.根据权利要求20所述的系统,包括降低装置,用于降低所述视频帧的分辨率以生成要输入到分割神经网络中的降低分辨率的帧,其中,所述用于生成分割掩模的装置是降低分辨率的神经网络。
22.根据权利要求20所述的系统,其中,所述分割掩模包括降低分辨率的分割掩模。
23.根据权利要求20所述的系统,包括放大装置,用于将低分割分辨率掩膜放大为所接收到的当前视频帧的分辨率。
24.根据权利要求20所述的系统,包括发送装置,用于在延迟之后将所生成的分割掩模发送到分割神经网络以给后续视频帧用作先前掩模。
25.根据权利要求20至24中任一项所述的系统,其中,用于生成分割掩模的装置包括U-Net。
CN202011376779.9A 2020-06-25 2020-11-30 使用降低分辨率的神经网络和先前帧的掩模的视频帧分割 Pending CN113850833A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/911,937 2020-06-25
US16/911,937 US11688070B2 (en) 2020-06-25 2020-06-25 Video frame segmentation using reduced resolution neural network and masks from previous frames

Publications (1)

Publication Number Publication Date
CN113850833A true CN113850833A (zh) 2021-12-28

Family

ID=72747440

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011376779.9A Pending CN113850833A (zh) 2020-06-25 2020-11-30 使用降低分辨率的神经网络和先前帧的掩模的视频帧分割

Country Status (4)

Country Link
US (1) US11688070B2 (zh)
KR (1) KR20220000333A (zh)
CN (1) CN113850833A (zh)
DE (1) DE102020131265A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210352347A1 (en) * 2020-05-08 2021-11-11 Synaptics Incorporated Adaptive video streaming systems and methods
US11436703B2 (en) * 2020-06-12 2022-09-06 Samsung Electronics Co., Ltd. Method and apparatus for adaptive artificial intelligence downscaling for upscaling during video telephone call
US11651477B2 (en) 2020-08-07 2023-05-16 Adobe Inc. Generating an image mask for a digital image by utilizing a multi-branch masking pipeline with neural networks
US11393100B2 (en) * 2020-08-07 2022-07-19 Adobe Inc. Automatically generating a trimap segmentation for a digital image by utilizing a trimap generation neural network
US11631161B2 (en) * 2020-11-04 2023-04-18 Ebay Inc. Image cleanup on a mobile device
US11715276B2 (en) * 2020-12-22 2023-08-01 Sixgill, LLC System and method of generating bounding polygons
US11785068B2 (en) * 2020-12-31 2023-10-10 Synaptics Incorporated Artificial intelligence image frame processing systems and methods
CN112866591A (zh) * 2021-01-12 2021-05-28 福建帝视信息科技有限公司 基于掩码检测的多帧图像融合的视频图像去噪方法
CN112949134B (zh) * 2021-03-09 2022-06-14 吉林大学 基于非结构有限元方法的地-井瞬变电磁反演方法
EP4099210A1 (en) 2021-05-31 2022-12-07 Volkswagen Aktiengesellschaft Method for training a neural network for semantic image segmentation
US20230094234A1 (en) * 2021-09-24 2023-03-30 Apple Inc. Channel-aware semantic coding
US20220092400A1 (en) 2021-12-06 2022-03-24 Intel Corporation Method and system of highly efficient neural network image processing
WO2023163757A1 (en) * 2022-02-28 2023-08-31 Google Llc High-definition video segmentation for web-based video conferencing
US20230386163A1 (en) * 2022-05-28 2023-11-30 Orbital Insight, Inc. Object Level Data Augmentation Scheme for Training Object Detectors

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9584716B2 (en) * 2015-07-01 2017-02-28 Sony Corporation Method and apparatus for autofocus area selection by detection of moving objects
US9760807B2 (en) * 2016-01-08 2017-09-12 Siemens Healthcare Gmbh Deep image-to-image network learning for medical image analysis
US10860919B2 (en) * 2017-09-27 2020-12-08 Google Llc End to end network model for high resolution image segmentation
US10671855B2 (en) * 2018-04-10 2020-06-02 Adobe Inc. Video object segmentation by reference-guided mask propagation
CN110189340B (zh) * 2019-06-03 2022-01-21 北京达佳互联信息技术有限公司 图像分割方法、装置、电子设备及存储介质
US11928753B2 (en) * 2020-01-27 2024-03-12 Intel Corporation High fidelity interactive segmentation for video data with deep convolutional tessellations and context aware skip connections

Also Published As

Publication number Publication date
US20200327334A1 (en) 2020-10-15
KR20220000333A (ko) 2022-01-03
DE102020131265A1 (de) 2021-12-30
US11688070B2 (en) 2023-06-27

Similar Documents

Publication Publication Date Title
CN113850833A (zh) 使用降低分辨率的神经网络和先前帧的掩模的视频帧分割
US20220222776A1 (en) Multi-Stage Multi-Reference Bootstrapping for Video Super-Resolution
TWI543610B (zh) 電子裝置及其影像選擇方法
US11222211B2 (en) Method and apparatus for segmenting video object, electronic device, and storage medium
TW202042175A (zh) 圖像處理方法及裝置、電子設備和電腦可讀儲存媒體
US11157764B2 (en) Semantic image segmentation using gated dense pyramid blocks
US10867390B2 (en) Computer vision processing
CN113949808B (zh) 视频生成方法、装置、可读介质及电子设备
US10810462B2 (en) Object detection with adaptive channel features
CN110516598B (zh) 用于生成图像的方法和装置
CN110858316A (zh) 对时间序列图像数据进行分类
CN112602088A (zh) 提高弱光图像的质量的方法、系统和计算机可读介质
KR102528453B1 (ko) 영상 내의 특징 추출 방법, 이를 이용하는 영상 매칭 방법 및 영상 처리 방법
US10180782B2 (en) Fast image object detector
CN114627034A (zh) 一种图像增强方法、图像增强模型的训练方法及相关设备
CN113409188A (zh) 一种图像背景替换方法、系统、电子设备及存储介质
CN116884004A (zh) 图像处理方法、装置、电子设备和存储介质
US11436442B2 (en) Electronic apparatus and control method thereof
CN114445864A (zh) 一种手势识别方法及装置、存储介质
US8749654B2 (en) Detecting objects from images of different resolutions
US20230377321A1 (en) Low-power change-based neural network inference for image processing
KR102565318B1 (ko) 블러 이미지에 포함된 연속적인 이미지의 취득 방법 및 장치
CN117635478B (zh) 一种基于空间通道注意力的低光照图像增强方法
EP4161066A1 (en) Region of interest based image data enhancement in a teleconference
CN115689862A (zh) 视频处理方法、装置、电子设备及非暂时性可读存储介质

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