CN114868401A - 使用下采样/上采样和深度图非线性滤波对视频数据的编码方案 - Google Patents
使用下采样/上采样和深度图非线性滤波对视频数据的编码方案 Download PDFInfo
- Publication number
- CN114868401A CN114868401A CN202080088330.4A CN202080088330A CN114868401A CN 114868401 A CN114868401 A CN 114868401A CN 202080088330 A CN202080088330 A CN 202080088330A CN 114868401 A CN114868401 A CN 114868401A
- Authority
- CN
- China
- Prior art keywords
- depth map
- map
- video
- decoded
- generate
- 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
Links
- 238000001914 filtration Methods 0.000 title claims description 93
- 238000000034 method Methods 0.000 claims abstract description 115
- 238000012545 processing Methods 0.000 claims description 64
- 238000013528 artificial neural network Methods 0.000 claims description 37
- 230000008569 process Effects 0.000 claims description 23
- 230000002093 peripheral effect Effects 0.000 claims description 21
- 238000005070 sampling Methods 0.000 claims description 21
- 238000004422 calculation algorithm Methods 0.000 claims description 19
- 238000010801 machine learning Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 8
- 238000009499 grossing Methods 0.000 claims description 7
- 238000012549 training Methods 0.000 description 17
- 238000011176 pooling Methods 0.000 description 10
- 238000013479 data entry Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- 238000013527 convolutional neural network Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 210000002569 neuron Anatomy 0.000 description 5
- 230000009467 reduction Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000000877 morphologic effect Effects 0.000 description 4
- 230000002829 reductive effect Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 3
- 244000068988 Glycine max Species 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000005056 compaction Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000012856 packing Methods 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/161—Encoding, multiplexing or demultiplexing different image signal components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/042—Knowledge-based neural networks; Logical representations of neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4046—Scaling of whole images or parts thereof, e.g. expanding or contracting using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/001—Model-based coding, e.g. wire frame
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/002—Image coding using neural networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/111—Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
- H04N13/117—Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation the virtual viewpoint locations being selected by the viewers or determined by viewer tracking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/122—Improving the 3D impression of stereoscopic images by modifying image signal contents, e.g. by filtering or adding monoscopic depth cues
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/128—Adjusting depth or disparity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/172—Processing image signals image signals comprising non-image signal components, e.g. headers or format information
- H04N13/178—Metadata, e.g. disparity information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/194—Transmission of image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/204—Image signal generators using stereoscopic image cameras
- H04N13/243—Image signal generators using stereoscopic image cameras using three or more 2D image sensors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/271—Image signal generators wherein the generated image signals comprise depth maps or disparity maps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2213/00—Details of stereoscopic systems
- H04N2213/003—Aspects relating to the "2D+depth" image format
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Library & Information Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computer Graphics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
提供了对视频数据进行编码和解码的方法。在一种编码方法中,将包括一幅或多幅源视图的源视频数据编码成视频码流。在编码前,对源视图中的至少一幅源视图的深度数据进行非线性滤波和下采样。在解码后,对经解码的深度数据进行上采样和非线性滤波。
Description
技术领域
本发明涉及视频编码。特别地,本发明涉及用于对沉浸式视频进行编码和解码的方法和装置。
背景技术
沉浸式视频(也被称为六自由度(6DoF)视频)是一种三维(3D)场景视频,它允许针对在位置和取向上变化的视点重建场景的视图。它表示三自由度(3DoF)视频的进一步发展,3DoF视频允许针对具有任意取向但仅在固定空间点处的视点重建视图。在3DoF中,自由度是角度——即,俯仰角、翻滚角和偏航角。3DoF视频支持头部旋转——换句话说,消费视频内容的用户能够望向场景中的任何方向,但是无法移动到场景中的不同位置。6DoF视频支持头部旋转,并且额外地支持选择场景中从中观看场景的位置。
为了生成6DoF视频,要求多个相机来记录场景。每个相机都会生成图像数据(在该背景中通常被称为纹理数据)和对应的深度数据。对于每个像素,深度数据表示通过给定的相机观察到对应图像像素数据的深度。多个相机中的每个相机都提供场景的相应视图。在许多应用中,传输针对所有视图的所有纹理数据和深度数据可能是不切实际的或低效的。
为了减少视图之间的冗余,已经提出精简视图并针对视频流的每一帧将视图包装成“纹理地图集”。这种方法试图减少或消除多个视图之间的交叠部分,从而提高效率。在精简后剩余的不同视图的非交叠部分可以被称为“拼片”。Alvaro Collet等人在“High-quality streamable free-viewpoint video”(ACM Trans.Graphics(SIGGRAPH),34(4),2015年)中描述了这种方法的示例。
发明内容
期望提高沉浸式视频的质量和编码效率。如上所述,使用精简(即,排除冗余的纹理拼片)来产生纹理地图集的方法能够帮助降低像素率。然而,精简视图通常要求进行详细的分析,这种详细的分析并不是没有错误并且可能导致针对最终用户的质量降低。因此,需要鲁棒而简单的降低像素率的方法。
本发明由权利要求来限定。
根据本发明的一个方面的示例,提供了一种对包括一幅或多幅源视图的视频数据进行编码的方法,每幅源视图包括纹理图和深度图,所述方法包括:
接收所述视频数据;
处理至少一幅源视图的所述深度图以生成经处理的深度图,所述处理包括:
非线性滤波,以及
下采样;并且
对所述至少一幅源视图的所述经处理的深度图和所述纹理图进行编码以生成视频码流。
优选地,在下采样之前,执行非线性滤波的至少部分。
发明人已经发现:在下采样之前对深度图的非线性滤波能够有助于避免、减少或减轻由下采样引入的错误。特别地,由于下采样,非线性滤波可以有助于防止小或薄的前景对象从深度图中部分消失或完全消失。已经发现,在这方面,非线性滤波可以比线性滤波更为优选,因为线性滤波可以在前景对象与背景之间的边界处引入中间深度值。这使解码器很难在对象边界和大深度梯度之间进行区分。
视频数据可以包括6DoF沉浸式视频。
所述非线性滤波包括扩大所述深度图中的至少一个前景对象的面积。
在下采样之前放大前景对象能够有助于确保更好地避免前景对象受到下采样过程的损害——换句话说,在经处理的深度图中能够更好的保留前景对象。
前景对象能够被识别为一组处于相对较小深度的局部像素。背景能够被识别为处于相对较大深度的像素。能够例如通过将阈值应用于深度图中的深度值来在局部区分前景对象的周边像素与背景。
非线性滤波可以包括形态滤波,特别是灰度级形态滤波,例如,最大滤波器、最小滤波器或其他序滤波器。当深度图包含具有特殊含义的深度水平时(例如,深度水平“零”指示无效深度),则尽管这样的深度水平具有实际值,这样的深度水平也应优选被认为是前景。正因如此,在下采样之后优先保留这些水平。因此,他们的面积也会扩大。
所述非线性滤波可以包括应用使用机器学习算法设计的滤波器。
机器学习算法可以被训练为减少或最小化在已经对经处理的深度图进行了编码和解码之后的经重建的深度图的重建错误。
经训练的滤波器可以类似地有助于将前景对象保留在经处理的(经下采样的)深度图中。
所述方法还可以包括使用机器学习算法来设计滤波器,其中,滤波器被设计为减少在已经对经处理的深度图进行了编码和解码之后的经重建的深度图的重建错误,并且其中,非线性滤波包括应用所设计的滤波器。
非线性滤波可以包括通过神经网络进行的处理,并且滤波器的设计可以包括训练神经网络。
所述非线性滤波可以是通过包括多个层的神经网络来执行的,并且所述下采样可以是在所述多个层中的两个层之间执行的。
下采样可以通过神经网络的最大池化(或最小池化)层来执行。
所述方法可以包括根据处理参数的多个集合来处理所述深度图以生成相应的多幅经处理的深度图,所述方法还包括:在已经对相应的经处理的深度图进行了编码和解码之后选择减少经重建的深度图的重建错误的处理参数的集合;并且生成识别所选择的参数的集合的元数据码流。
这能够允许针对给定的应用或给定的视频序列来优化参数。
所述处理参数可以包括执行的所述非线性滤波的定义和/或执行的所述下采样的定义。替代地或额外地,所述处理参数可以包括当重建所述深度图时要在解码器处执行的处理操作的定义。
对于处理参数的每个集合,所述方法可以包括:根据处理参数的所述集合来生成相应的经处理的深度图;对所述经处理的深度图进行编码以生成经编码的深度图;对所述经编码的深度图进行解码;根据所述经解码的深度图来重建所述深度图;并且将所述经重建的深度图与至少一幅源视图的深度图进行比较以确定重建错误。
根据另一方面,提供了一种对包括一幅或多幅源视图的视频数据进行解码的方法,所述方法包括:
接收包括针对至少一幅源视图的经编码的深度图和经编码的纹理图的视频码流;
对所述经编码的深度图进行解码以产生经解码的深度图;
对所述经编码的纹理图进行解码以产生经解码的纹理图;并且
处理所述经解码的深度图以生成经重建的深度图,其中,所述处理包括:
上采样,以及
非线性滤波。
所述方法还可以包括:在处理所述经解码的深度图以生成所述经重建的深度图的步骤之前,检测所述经解码的深度图的分辨率低于所述经解码的纹理图的分辨率。
在一些编码方案中,可以仅在某些情况下或仅针对某些视图对深度图进行下采样。通过将经解码的深度图的分辨率与经解码的纹理图的分辨率进行比较,解码方法能够确定是否在编码器处应用下采样。这能够避免在元数据码流中需要元数据来信号通知哪些深度图被下采样和这些深度图被下采样到什么程度。(在该示例中,假定纹理图是在全分辨率处编码的。)
为了生成经重建的深度图,可以将经解码的深度图上采样到与经解码的纹理图相同的分辨率。
优选地,解码方法中的非线性滤波适于补偿在编码方法中应用的非线性滤波的效果。
非线性滤波可以包括减小在深度图中的至少一个前景对象的面积。当在编码期间的非线性滤波包括增大至少一个前景对象的面积时,这可以是适当的。
非线性滤波可以包括形态滤波,特别是灰度级形态滤波,例如,最大滤波器、最小滤波器或其他序滤波器。
在解码期间的非线性滤波优选补偿或逆转在编码期间的非线性滤波的效果。例如,如果在编码期间的非线性滤波包括最大滤波器(灰度级增强),则在解码期间的非线性滤波可以包括最小滤波器(灰度级减弱),并且反之亦然,当深度图包含具有特殊含义的深度水平时(例如,深度水平“零”指示无效深度),则尽管这样的深度水平具有实际值,这样的深度水平也应优选被认为是前景。
优选地,在所述上采样之后执行所述非线性滤波的至少部分。任选地,所有非线性滤波都是在上采样之后执行的。
对所述经解码的深度图的所述处理可以至少部分基于所述经解码的纹理图。发明人已经认识到:纹理图包含有助于重建深度图的有用信息。特别地,在编码期间通过非线性滤波改变了前景对象的边界的情况下,对纹理图的分析能够有助于补偿或逆转变化。
所述方法可以包括:对所述经解码的深度图进行上采样;识别在所述经上采样的深度图中的至少一个前景对象的周边像素;基于所述经解码的纹理图来确定所述周边像素是与所述前景对象更相似还是与背景更相似;并且将非线性滤波仅应用于被确定为与所述背景更相似的周边像素。
以这种方式,纹理图用于帮助识别由于在编码期间的非线性滤波而引起的已经从背景转换到前景的像素。在解码期间的非线性滤波可以有助于将这些识别的像素恢复为背景的部分。
所述非线性滤波可以包括对至少一个前景对象的边缘进行平滑化处理。
所述平滑化处理可以包括:识别在经上采样的深度图中的至少一个前景对象的周边像素;对于每个周边像素,分析在该周边像素周围的邻域中的前景像素和背景像素的数量和/或布置;基于分析的结果来识别从对象投射到背景中的边远周边像素;并且将非线性滤波仅应用于所识别的周边像素。
所述分析可以包括对邻域中的背景像素的数量进行计数,其中,如果邻域中的背景像素的数量高于预定义阈值,则将周边像素识别为偏离对象的离群值。
替代地或额外地,所述分析可以包括识别邻域中的前景像素和背景像素的空间模式,其中,如果周边像素的邻域与一种或多种预定义空间模式相匹配,则该周边像素被识别为离群值。
所述方法还可以包括接收与所述视频码流相关联的元数据码流,所述元数据码流识别参数的集合,所述方法任选地还包括根据所识别的参数的集合来处理所述经解码的深度图。
所述处理参数可以包括所述非线性滤波的定义和/或要被执行的所述上采样的定义。
所述非线性滤波可以包括应用使用机器学习算法设计的滤波器。
机器学习算法可以被训练为减少或最小化在已经对经处理的深度图进行了编码和解码之后的经重建的深度图的重建错误。
可以在与视频码流相关联的元数据码流中定义滤波器。
还提供了一种包括计算机代码的计算机程序,当所述程序在处理系统上运行时,所述计算机代码用于使所述处理系统实施如上面所概述的方法。
计算机程序可以被存储在计算机可读存储介质上。这可以是非瞬态存储介质。
根据另一方面,提供了一种被配置为对包括一幅或多幅源视图的视频数据进行编码的视频编码器,每幅源视图包括纹理图和深度图,所述视频编码器包括:
输入部,其被配置为接收所述视频数据;
视频处理器,其被配置为处理至少一幅源视图的所述深度图以生成经处理的深度图,所述处理包括:
非线性滤波,以及
下采样;
编码器,其被配置为对所述至少一幅源视图的所述纹理图以及所述经处理的深度图进行编码以生成视频码流;以及
输出部,其被配置为输出所述视频码流。
根据又一方面,提供了一种被配置为对包括一幅或多幅源视图的视频数据进行解码的视频解码器,所述视频解码器包括:
码流输入部,其被配置为接收视频码流,其中,所述视频码流包括针对至少一幅源视图的经编码的深度图和经编码的纹理图;
第一解码器,其被配置为根据所述视频码流对所述经编码的深度图进行解码以产生经解码的深度图;
第二解码器,其被配置为根据所述视频码流对所述经编码的纹理图进行解码以产生经解码的纹理图;
重建处理器,其被配置为处理所述经解码的深度图以生成经重建的深度图,其中,所述处理包括:
上采样,以及
非线性滤波,以及
输出部,其被配置为输出所述经重建的深度图。
参考下文描述的(一个或多个)实施例,本发明的这些方面和其他方面将变得明显并且得到阐明。
附图说明
为了更好地理解本发明并且更清楚地示出如何将本发明付诸实践,现在将仅通过举例的方式参考附图,在附图中:
图1图示了使用现有的视频编解码器对沉浸式视频进行编码和解码的示例;
图2是示出根据实施例的对视频数据进行编码的方法的流程图;
图3是根据实施例的视频编码器的框图;
图4是图示根据另外的实施例的对视频数据进行编码的方法的流程图;
图5是示出根据实施例的对视频数据进行解码的方法的流程图;
图6是根据实施例的视频解码器的框图;
图7图示了根据实施例的用于在解码方法中将非线性滤波选择性地应用于特定像素的方法;
图8是图示根据另外的实施例的对视频数据进行解码的方法的流程图;并且
图9图示了根据实施例的使用神经网络处理对视频数据进行编码和解码的使用过程。
具体实施方式
将参考附图来描述本发明。
应当理解,虽然详细的描述和特定示例指示装置、系统和方法的示例性实施例,但是详细的描述和特定示例旨在仅用于说明的目的且并不旨在限制本发明的范围。根据下面的描述、权利要求和附图将更好地理解本发明的装置、系统和方法的这些和其他特征、方面和优点。应当理解,这些附图仅仅是示意性的且并未按缩放比例绘制。还应当理解,贯穿所有附图,使用相同的附图标记来指示相同或相似的部分。
公开了对沉浸式视频进行编码和解码的方法。在一种编码方法中,将包括一幅或多幅源视图的源视频数据编码成视频码流。在编码前对源视图中的至少一幅源视图的深度数据进行非线性滤波和下采样。对深度图进行下采样有助于减少要被传输的数据量,因此有助于降低比特率。然而,发明人已经发现:简单的下采样能够导致薄或小的前景对象(例如,线缆)从经下采样的深度图中消失。本发明的实施例试图减轻这种效应并将小的对象和薄的对象保留在深度图中。
本发明的实施例可以适合用于实施技术标准的部分,例如,ISO/IEC 23090-12MPEG-I第12部分的沉浸式视频。在可能的情况下,在本文中使用的术语被选择为与在MPEG-I第12部分中使用的术语一致。尽管如此,应当理解,本发明的范围既不限于MPEG-I第12部分,也不限于任何其他技术标准。
阐述以下定义/解释会有所帮助:
“3D场景”是指在全局参考坐标系中的视觉内容。
“地图集”是将在包装过程之后的来自一个或多个视图表示的拼片聚合到包含纹理分量图片和对应的深度分量图片的图片对的聚合内容。
“地图集分量”是地图集的纹理分量或深度分量。
“相机参数”定义用于从3D场景生成视图表示的投影。
“精简”是识别和提取跨视图的遮挡区域而得到拼片的过程。
“绘制”是从3D场景表示创建与观看位置和取向相对应的视口或全向视图的过程的实施例。
“源视图”是在与视图表示的格式相对应的编码之前的源视频材料,该视图表示可以是通过真实相机捕获3D场景来采集的,或者是通过虚拟相机使用源相机参数进行到表面上的投影来采集的。
“目标视图”被定义为在所期望的观看位置和取向上的透视视口或全向视图。
“视图表示”包括纹理分量和对应的深度分量的2D样本阵列,它表示使用相机参数将3D场景投影到表面上的投影。
机器学习算法是处理输入数据以产生或预测输出数据的任何自我训练算法。在本发明的一些实施例中,输入数据包括从码流解码的一幅或多幅视图,并且输出数据包括目标视图的预测结果/重建结果。
适合用于本发明的机器学习算法对于技术人员来说是显而易见的。合适的机器学习算法的示例包括决策树算法和人工神经网络。其他机器学习算法(例如,逻辑回归、支持向量机或朴素贝叶斯模型)是合适的替代方法。
人工神经网络(或简称为神经网络)的结构受到人脑的启发。神经网络由多层构成,每层都包括多个神经元。每个神经元都包括数学运算。特别地,每个神经元都可以包括单一类型的变换(例如,相同类型的变换、sigmoid等,但被不同地加权)的不同加权组合。在处理输入数据的过程中,对输入数据执行每个神经元的数学运算以产生数值输出,并且将神经网络中的每层的输出(例如顺序地)馈入一个或多个其他层。最后一层提供输出。
训练机器学习算法的方法是众所周知的。通常,此类方法包括获得训练数据集,所述训练数据集包括训练输入数据条目和对应的训练输出数据条目。将经初始化的机器学习算法应用于每个输入数据条目以生成预测的输出数据条目。使用所预测的输出数据条目和对应的训练输出数据条目之间的误差来修改机器学习算法。能够重复该过程,直到误差收敛并且所预测的输出数据条目与训练输出数据条目充分相似(例如±1%)为止。这通常被称为有监督的学习技术。
例如,在机器学习算法是由神经网络形成的情况下,可以修改每个神经元的数学运算(的加权),直到误差收敛为止。已知的修改神经网络的方法包括梯度下降、反向传播算法等。
卷积神经网络(CNN或ConvNet)是一类深度神经网络,它最常用于分析视觉影像。CNN是多层感知器的正规化版本。
图1以简化形式图示了用于对沉浸式视频进行编码和解码的系统。相机10的阵列用于捕获场景的多幅视图。每个相机捕获常规图像(在本文中被称为纹理图)以及在纹理图前面的视图的深度图。将包括纹理数据和深度数据的视图的集合提供给编码器300。编码器将纹理数据和深度数据都编码成常规的视频码流——在这种情况下是高效的视频编码(HEVC)码流。这伴随着元数据码流,以将视频码流的不同部分的含义告知解码器400。例如,元数据告诉解码器视频码流的哪些部分对应于纹理图以及视频码流的哪些部分对应于深度图。取决于编码方案的复杂性和灵活性,可以要求更多或更少的元数据。例如,一个非常简单的方案可以非常紧密地规定码流的结构,使得在解码器端对码流的解包几乎不要求或根本不要求元数据。在码流具有更多任选可能性的情况下,将要求更大量的元数据。
解码器400对经编码的(纹理和深度)视图进行解码。解码器400将经解码的视图传递给合成器500。合成器500被耦合到显示设备,例如,虚拟现实头戴式设备550。头戴式设备550请求合成器500根据头戴式设备550的当前位置和取向使用经解码的视图来合成并绘制3D场景的特定视图。
图1所示的系统的优点在于,它能够使用常规的2D视频编解码器来对纹理数据和深度数据进行编码和解码。然而,缺点在于需要对大量数据进行编码、传输和解码。因此,期望降低数据速率,同时尽可能小地损害经重建的视图的质量。
图2图示了根据第一实施例的编码方法。图3图示了能够被配置为执行图2的方法的视频编码器。视频编码器包括:输入部310,其被配置为接收视频数据;视频处理器320,其被耦合到输入部并且被配置为接收由输入部接收的深度图;编码器330,其被布置为从视频处理器320接收经处理的深度图;输出部370,其被布置为接收并输出由编码器330生成的视频码流。视频编码器300还包括深度解码器340、重建处理器350和优化器360。将联系下面参考图4描述的编码方法的第二实施例来更详细地描述这些部件。
参考图2和图3,第一实施例的方法开始于步骤110,其中,输入部310接收包括纹理图和深度图的视频数据。在步骤120和130中,视频处理器320处理深度图以生成经处理的深度图。这种处理包括在步骤120中对深度图的非线性滤波以及在步骤130中对经滤波的深度图的下采样。在步骤140中,编码器330对经处理的深度图以及纹理图进行编码以生成视频码流。然后经由输出部370来输出所生成的视频码流。
在输入部310处接收的源视图可以是由相机10的阵列捕获的视图。然而,这种情况并不是必须的,并且源视图无需与由相机捕获的视图相同。在输入部310处接收的一些或全部源视图可以是经合成的或以其他方式处理的源视图。在输入部310处接收的源视图的数量可以比由相机10的阵列捕获的视图的数量更多或更少。
在图2的实施例中,在单个步骤中组合非线性滤波120与下采样130。使用“最大池化2×2”向下缩放滤波器。这意味着:经处理的深度图中的每个像素取用在原始输入深度图中的四个像素的2×2邻域中的最大像素值。这种非线性滤波和下采样的选择源于以下两方面的见解:
1、向下缩放的结果不应包含中间的(即,“之间的”)深度水平。当例如使用线性滤波器时会产生此类中间深度水平。发明人已经认识到:在解码器端的视图合成之后,中间深度水平常常会产生错误的结果。
2、应当保留在深度图中表示的薄的前景对象。否则,例如相对较薄的对象会消失在背景上。注意,假定前景(即,附近的对象)被编码为高(明亮)水平而背景(即,遥远的对象)被编码为低(黑暗)水平(差异约定)。替代地,当使用z坐标编码约定(z坐标随着距离镜头的距离而增大)时,“最小池化2×2”下缩放器将具有相同的效果。
这种处理操作有效地增大了所有局部前景对象的大小并因此保持了小和薄的对象。然而,解码器应当优选意识到应用了哪些操作,因为它优选撤消所引入的偏差并收缩所有对象以使深度图与纹理再次对齐。
根据目前的实施例,降低了对视频解码器的存储器要求。原始的像素率是:1Y+0.5CrCb+1D,其中,y=亮度通道,CrCb=色度通道,D=深度通道。根据本示例,通过使用4倍(2×2)的下采样,像素率变为:1Y+0.5CrCb+0.25D。因此,能够实现30%的像素率降低。大多数实际的视频解码器是4:2:0并且不包括单色模式。在这种情况下,实现了37.5%的像素降低。
图4是图示根据第二实施例的编码方法的流程图。与图2的方法相似,该方法开始于在步骤110中视频编码器的输入部310接收源视图。在步骤120a和130a中,视频处理器320根据处理参数的多个集合来处理深度图以生成相应的多幅经处理的深度图(每幅深度图对应于处理参数的一个集合)。在该实施例中,该系统的目的在于测试这些深度图中的每幅深度图以确定哪幅深度图将在解码器端产生最佳质量。经处理的深度图中的每幅经处理的深度图都由编码器330在步骤140a中进行编码。在步骤154中,深度解码器340对每幅经编码的深度图进行解码。将经解码的深度图传递给重建处理器350。在步骤156中,重建处理器350根据经解码的深度图来重建深度图。然后,在步骤158中,优化器360将每幅经重建的深度图与源视图的原始深度图进行比较以确定重建错误。重建错误量化了原始深度图与经重建的深度图之间的差异。基于比较的结果,优化器360选择使得经重建的图像具有最小重建错误的参数的集合。选择参数的这个集合以用于生成视频码流。输出部370输出与所选择的参数的集合相对应的视频码流。
注意,将在下面参考解码方法(参见图5-8)更详细地描述深度解码器340和重建处理器350的操作。
有效地,视频编码器300循环实施解码器以允许其预测将如何在远端解码器处对码流进行解码。视频编码器300选择在远端解码器处给出(针对给定的目标比特率或像素率,在使重建错误最小化的方面的)最佳性能的参数的集合。如图4的流程图所示,能够迭代地执行优化这种优化,其中,在由优化器360进行的比较158之后的每次迭代中更新非线性滤波120a和/或下采样130a的参数。替代地,视频解码器可以测试固定的多个参数集,并且可以顺序地或并行地进行上述操作。例如,在高度并行的实施方式中,在视频编码器300中可以有N个编码器(和解码器),其中的每个编码器都被配置为测试参数的一个集合以用于对深度图进行编码。这可以增加能够在可用时间测试的参数集的数量,但会以编码器300的复杂性和/或大小的增加为代价。
测试的参数可以包括非线性滤波120a的参数、下采样130a的参数或这两者。例如,该系统可以在一个或两个维度中通过各种因素进行下采样实验。同样,该系统可以进行不同的非线性滤波器的实验。例如,代替最大滤波器(其将局部邻域中的最大值分配给每个像素),可以使用其他类型的序滤波器。例如,非线性滤波器可以分析给定像素周围的局部邻域,并且可以将邻域中的第二高值分配给像素。这可以提供与最大滤波器相似的效果,同时有助于避免对单个离群值的敏感性。非线性滤波器的内核大小是另一个可以变化的参数。
注意,在视频解码器处的处理参数也可以被包括在参数集中(将在下面进行更详细的描述)。以这种方式,视频编码器可以为编码和解码都选择有助于优化质量与比特率/像素率的参数的集合。可以针对给定的场景或给定的视频序列执行这种优化,也可以更一般地在各种场景和视频序列的训练集上执行这种优化。因此,针对每个序列、每个比特率和/或每个允许的像素率,最佳参数集合会改变。
视频解码器对视频码流进行正确解码所要求的有用参数或必要参数可以被嵌入在与视频码流相关联的元数据码流中。该元数据码流可以与视频码流一起被发送/传输到视频解码器,也可以与视频码流分开地被发送/传输到视频解码器。
图5是根据实施例的对视频数据进行解码的方法的流程图。图6是对应的视频解码器400的框图。视频解码器400包括输入部410、纹理解码器424、深度解码器426、重建处理器450,以及输出部470。输入部410被耦合到纹理解码器424和深度解码器426。重建处理器450被布置为从纹理解码器424接收经解码的纹理图并从深度解码器426接收经解码的深度图。重建处理器450被布置为向输出部470提供经重建的深度图。
图5的方法始于步骤210,其中,输入部410接收视频码流并且任选地接收元数据码流。在步骤224中,纹理解码器424对来自视频码流的纹理图进行解码。在步骤226中,深度解码器426对来自视频码流的深度图进行解码。在步骤230和240中,重建处理器450处理经解码的深度图以生成经重建的深度图。该处理包括上采样230和非线性滤波240。该处理(特别是非线性滤波240)也可以取决于经解码的纹理图的内容,下面将更详细地描述这些内容。
现在将参考图8来更详细地描述图5的方法的一个示例。在该实施例中,上采样230包括最近邻上采样,其中,在经上采样的深度图中的2×2像素的块中的每个像素被分配了来自经解码的深度图的像素中的一个像素的值。这种“最近邻2×2”上缩放器将深度图缩放到其原始大小。就像在编码器处的最大池化操作一样,在解码器处的这种流程避免了产生中间深度水平。与在编码器处的原始深度图相比,经上缩放的深度图的特性是可以提前预测的:“最大池化”下缩放滤波器倾向于扩大前景对象的面积。因此,在经上采样的深度图中的一些深度像素是前景像素,但应改为背景像素。然而,通常没有应改为前景像素的背景深度像素。换句话说,在上缩放之后,对象有时太大,但通常不会太小。
在目前的实施例中,为了撤消偏置(大小增长的前景对象),对经上缩放的深度图的非线性滤波240包括颜色自适应、条件筛选、减弱滤波(图8中的步骤242、244和240a)。减弱部分(最小算子)确保缩小对象的大小,而颜色自适应则确保深度边缘在正确的空间位置处结束——即,在全尺度纹理图中的转变指示边缘应在的位置。由于减弱滤波在其中起作用的非线性方式(即,像素是否被减弱),因此所得到的对象边缘会很嘈杂。邻近的边缘像素能够针对最小化的不同输入在“是否减弱”分类上给出不同的结果。这种噪声对对象边缘平滑度有不利影响。发明人已经认识到:这种平滑度是足够感知质量的视图合成结果的重要要求。因此,非线性滤波240还包括轮廓平滑度滤波(步骤250),以使深度图中的边缘变得平滑。
现在将更详细地描述根据本实施例的非线性滤波240。图7示出了在非线性滤波240之前的表示滤波器内核的经上采样的深度图的小的放大区。灰色正方形指示前景像素;黑色正方形指示背景像素。前景对象的周边像素被标示为X。这些像素可以表示由在编码器处的非线性滤波引起的前景对象的扩展/放大区。换句话说,周边像素X是真正的前景像素还是背景像素存在不确定性。
执行自适应减弱所采取的步骤是:
1、寻找局部前景边缘——即,前景对象的周边像素(在图7中标记为X)。这能够通过应用局部阈值来区分前景像素与背景像素来完成。然后将周边像素识别为与背景像素邻近的那些前景像素(在该示例中,在4个连接的意义上)。这是通过在步骤242中的重建处理器450完成的。深度图可以(为了提高效率)包含来自多个相机视图的包装区域。忽略此类区域的边界上的边缘,因为这些边缘没有指示对象边缘。
2、对于所识别的边缘像素(例如,图7中的5×5内核中的中心像素),确定5×5内核中的平均前景纹理颜色和平均背景纹理颜色。这是仅基于“自信”像素(用点●标记)来完成的——换句话说,平均前景纹理和平均背景纹理的计算排除了不确定的边缘像素X。它们还排除来自应用例如其他相机视图的可能邻近拼片区域的像素。
3、确定与前景的相似性——即,前景置信:
其中:D指示中心像素的颜色与背景像素或前景像素的平均颜色之间的(例如欧几里得)颜色距离。如果中心像素与邻域中的平均前景颜色相对更相似,则该置信度将接近于1。如果中心像素与邻域中的平均背景颜色相对更相似,则该置信度将接近于零。在步骤244中,重建处理器450确定所识别的周边像素与前景的相似性。
4、将C前景<阈值(例如,0.5)的所有周边像素标记为X。
5、减弱所有经标记的像素——即,取局部(例如3×3)邻域中的最小值。在步骤240a中,重建处理器450将该非线性滤波应用于经标记的周边像素(它与背景的相似性大于它与前景的相似性)。
如上面所提到的,该过程会很嘈杂,并且会导致深度图中的锯齿状边缘。对在深度图中表示的对象边缘进行平滑化处理所采取的步骤是:
1、寻找局部前景边缘——即,前景对象的周边像素(如在图7中被标记为X的那些像素)。
2、对于这些边缘像素(例如,图7中的中心像素),对感兴趣像素周围的3×3内核中的背景像素的数量进行计数。
3、对计数>阈值的所有边缘像素进行标记。
4、减弱所有经标记的像素——即,取局部(例如3×3)邻域中的最小值。该步骤由重建处理器450在步骤250中执行。
这种平滑化处理将倾向于将离群的或突出的前景像素转变成背景像素。
在上面的示例中,该方法使用3×3内核中的背景像素的数量来识别给定像素是否是从前景对象投射的离群周边像素。也可以使用其他方法。例如,作为对像素数量进行计数的替代方案或补充方案,还可以分析内核中的前景像素和背景像素的位置。如果背景像素全部都在正在讨论的像素的一侧,那么该背景像素更可能是前景像素。另一方面,如果背景像素全部都散布在正在讨论的像素周围,那么该像素可能是离群值或噪声,并且更可能是真正的背景像素。
可以以二进制方式将内核中的像素分类为前景或背景。针对每个像素用二进制标志进行编码,其中,逻辑“1”指示背景,并且逻辑“0”指示前景。然后能够通过n位二进制数来描述邻域(即,内核中的像素),其中,n是包围感兴趣像素的内核中的像素的数量。一种构建二进制数的示例性方法如下表所示:
b<sub>7</sub>=1 | b<sub>6</sub>=0 | b<sub>5</sub>=1 |
b<sub>4</sub>=0 | b<sub>3</sub>=0 | |
b<sub>2</sub>=1 | b<sub>1</sub>=0 | b<sub>0</sub>=1 |
在该示例中,b=b7 b6 b5 b4 b3 b2 b1 b0=101001012=165。(注意,上面参考图5描述的算法对应于对b(=4)中的非零位的数量进行计数。
训练包括针对b的每个值对感兴趣像素(内核的中心像素)是前景或背景的频率进行计数。假定针对虚假警报和错过的成本相等,那么如果(训练集中的)像素更可能是前景像素而不是背景像素,则确定该像素为前景像素,并且反之亦然。
解码器的实施方式将构建b并从查找表(LUT)中取回答案(感兴趣像素是前景或者感兴趣像素是背景)。
在编码器和解码器这两者处对深度图的非线性滤波的方法(例如,如上所述,分别为增强和减弱)是违反直觉的,因为它通常被期望从深度图中删除信息。然而,发明人已经出人意料地发现:针对给定的比特率,能够(使用常规的视频编解码器)以较高的质量对通过非线性下采样方法产生的较小的深度图进行编码。这种质量增益超过了重建的损失;因此,净效应是在减小像素率的同时提高了端到端的质量。
如上面参考图3和图4所描述的,可以在视频编码器内部实施解码器,以便优化非线性滤波和下采样的参数,从而减少重建错误。在这种情况下,视频编码器300中的深度解码器340与视频解码器400中的深度解码器426基本相同;并且视频编码器300处的重建处理器350与视频解码器400处的重建处理器450基本相同。这些相应的部件执行基本相同的过程。
如上所述,当已经选择了在视频编码器处的非线性滤波和下采样的参数以减少重建错误时,可以在元数据码流中用信号发送所选择的参数,该元数据码流被输入到视频解码器。重建处理器450可以使用在元数据码流中用信号发送的参数来辅助正确重建深度图。重建处理的参数可以包括但不限于在一个或两个维度中的上采样因子、用于识别前景对象的周边像素的内核大小、用于减弱的内核大小;要应用的非线性滤波的类型(例如,是使用最小滤波器还是使用其他类型的滤波器)、用于识别前景像素以进行平滑化处理的内核大小,以及用于平滑化处理的内核大小。
现在将参考图9来描述替代实施例。在该实施例中,代替使用针对编码器和解码器的手工编码非线性滤波器,使用神经网络架构。神经网络被拆分以对深度下缩放操作和深度上缩放操作进行建模。该网络是端到端训练的,并且学习如何最优地进行下缩放和最优地进行上缩放。然而,在部署(即,对真实序列的编码和解码)期间,第一部分是在视频编码器之前,并且第二部分是在视频解码器之后。因此,第一部分提供了针对编码方法的非线性滤波120;并且第二部分提供了针对解码方法的非线性滤波240。
可以用码流将网络的第二部分的网络参数(权重)传输为元数据。注意,神经网参数的不同集合可能是对应地利用不同编码配置(不同的下缩放因子、不同的目标比特率等)创建的。这意味着,对于纹理图的给定比特率,针对深度图的上缩放滤波器将以最优方式工作。这能够提高性能,因为纹理编码伪影会改变亮度和色度特性,并且尤其是在对象边界处,这种变化将引起深度上缩放神经网络的不同权重。
图9示出了针对该实施例的示例架构,其中,神经网络是卷积神经网络(CNN)。图中的符号具有以下含义:
I=输入3通道全分辨率纹理图
D=输入1通道全分辨率深度图
Ddown=经下缩放的深度图
Ck=具有k×k内核的卷积
Pk=因子k下缩放
Uk=因子k上缩放
图中的每个垂直黑色条表示输入数据或中间数据的张量——换句话说,输入数据到神经网络的层的张量。每个张量的维度由三元组(p,w,h)来描述,其中,w和h分别是图像的宽度和高度,并且p是数据的平面或通道的数量。因此,输入纹理图具有维度(3,w,h)——与三条颜色通道相对应的三个平面。经下采样的深度图具有维度(1,w/2,h/2)。
下缩放的Pk可以包括因子k下缩放的平均值,或内核大小k的最大池化(或最小池化)操作。下缩放的平均操作可能引入一些中间值,但是神经网络的后面的层可以(例如基于纹理信息)解决该问题。
注意,在训练阶段中,不使用经解码的深度图而是使用未经压缩的经下缩放的深度图Ddown。这样做的原因是:神经网的训练阶段要求计算导数,而对于非线性视频编码器功能来说,这是不可能的。实际上,这种近似可能是有效的——尤其是对于较高的质量(较高的比特率)。在推理阶段(即,用于处理真实视频数据)中,视频解码器显然不可获得未经压缩的经下缩放的深度图Ddown。因此,使用经解码的深度图还要注意,在训练阶段和推理阶段中使用经解码的全分辨率纹理图不需要计算导数,因为这是辅助信息,而不是由神经网络处理的数据。
由于在客户端设备处可能存在的复杂性约束,(在视频解码之后的)网络的第二部分通常仅包含少量卷积层。
对于使用深度学习方法至关重要的是训练数据的可用性。在这种情况下,这些训练数据很容易获得。在视频编码之前,在输入侧使用未经压缩的纹理图像和全分辨率深度图。网络的第二部分使用经解码的纹理图和经下缩放的深度图(经由网络的前半部分作为用于训练的输入),并且相对于也被用作输入的真实情况的全分辨率深度图来评价错误。因此,从本质上讲,来自高分辨率源深度图的拼片既充当输入,又充当针对神经网络的输出。因此,网络具有自动编码器架构和UNet架构这两者的某些方面。然而,所提出的架构不仅仅是这些方法的组合。例如,经解码的纹理图以辅助数据的形式进入网络的第二部分,以最优地重建高分辨率深度图。
在图9所示的示例中,对在视频编码器300处的神经网络的输入包括纹理图I和深度图D。下采样P2是在神经网络的其他两个层之间执行的。在下采样之前有三个神经网络层,并且在下采样之后有两个层。在视频编码器300处的神经网络的部分的输出包括经下采样的深度图Ddown。这是由编码器320在步骤140中编码的。
经编码的深度图在视频码流中被传输到视频解码器400。经编码的深度图由深度解码器426在步骤226中进行解码。这会产生经下缩放的经解码的深度图这是要在视频解码器400处的神经网络的部分中使用的上采样(U2)。神经网络的这一部分的另一输入是由纹理解码器424生成的经解码的全分辨率纹理图神经网络的该第二部分有三层。它产生与原始深度图D相比较的经重建的估计结果作为输出,以产生所得到的错误e。
根据上述情况将明显看出,神经网络处理可以在视频编码器300处由视频处理器320实施,并且可以在视频解码器400处由重建处理器450实施。在所示出的示例中,在视频编码器300处由神经网络的部分以集成方式执行非线性滤波120和下采样130。在视频解码器400处,在由神经网络执行的非线性滤波240之前单独执行上采样230。
应当理解,图9所示的神经网络层的布置是非限制性的,并且在其他实施例中可以发生改变。在示例中,网络产生2×2的下采样的深度图。当然也可以使用不同的缩放因子。
在上述实施例中的若干实施例中,在编码器处提到了最大滤波、最大池化、增强或类似操作。应当理解,这些实施例假定深度被编码为1/d(或其他类似的反向关系),其中,d是与相机的距离。在这种假定情况下,深度图中的高值指示前景对象,并且深度图中的低值指示背景。因此,通过应用最大型操作或增强型操作,该方法倾向于扩大前景对象。在解码器处的对应的逆向过程可以是应用最小型操作或减弱型操作。
当然,在其他实施例中,深度可以被编码为d或log d(或与d具有直接相关关系的另一变量)。这意味着前景对象由d的低值表示,并且背景由d的高值表示。在此类实施例中,可以在编码器处执行最小滤波、最小池化、减弱或类似操作。再一次地,这将倾向于扩大前景对象(这是目标)。在解码器处的对应的逆向过程可以是应用最大型操作或增强型操作。
图2、图4、图5、图8和图9的编码方法和解码方法以及图3和图6的编码器和解码器可以被设施在硬件或软件或这两者的混合方案(例如被实施为在硬件设备上运行的固件)中。在某种程度上,在软件中部分或完全实施了实施例,在过程流程图中说明的功能步骤可以通过经适当编程的物理计算设备(例如,一个或多个中央处理单元(CPU)、图形处理单元(GPU)或神经网络加速器(NNA))来执行。如在流程图中图示的每个过程及其个体分量步骤可以通过相同或不同的计算设备来执行。根据实施例,一种计算机可读存储介质存储包括计算机程序代码的计算机程序,当所述程序在一个或多个物理计算设备上运行时,所述计算机程序代码被配置为使所述一个或多个物理计算设备执行上述编码方法或解码方法。
存储介质可以包括易失性和非易失性计算机存储器,例如,RAM、PROM、EPROM和EEPROM。各种存储介质可以被固定在计算设备内,也可以是可转移的,使得在存储介质上存储的一个或多个程序被加载到处理器中。
可以将根据实施例的元数据存储在存储介质上。可以将根据实施例的码流存储在相同的存储介质或不同的存储介质上。可以将元数据嵌入在码流中,但这并不是必需的。同样,可以将元数据和/或码流(在码流中具有元数据或者将元数据从码流中分离)发射为被调制到电磁载波上的信号。可以根据数字通信标准来定义信号。载波可以是光学载波、射频波、毫米波或近场通信波。它可以是有线的或无线的。
在某种程度上,在硬件中部分或完全实施了实施例,在图3和图6的框图中示出的块可以是单独的物理部件,也可以是单个物理部件的逻辑细分结果,也可以以集成方式全部被实施在一个物理部件中。在实施方式中可以将附图中示出的一个块的功能拆分到多个部件之间,在实施方式中也可以将附图中示出的多个块的功能组合在单个部件中。例如,虽然图6将纹理解码器424和深度解码器46示为单独的部件,但是它们的功能可以由单个统一的解码器部件来提供。
总体上,编码数据和解码数据的方法、实施这些方法的计算机程序以及视频编码器和解码器的示例由下面的实施例来指示。
实施例:
1、一种对包括一幅或多幅源视图的视频数据进行编码的方法,每幅源视图包括纹理图和深度图,所述方法包括:
接收(110)所述视频数据;
处理至少一幅源视图的所述深度图以生成经处理的深度图,所述处理包括:
非线性滤波(120),以及
下采样(130);并且
对所述至少一幅源视图的所述经处理的深度图和所述纹理图进行编码(140)以生成视频码流。
2、根据实施例1的方法,其中,所述非线性滤波包括扩大所述深度图中的至少一个前景对象的面积。
3、根据实施例1或实施例2的方法,其中,所述非线性滤波包括应用使用机器学习算法设计的滤波器。
4、根据前述实施例之一的方法,其中,所述非线性滤波是通过包括多个层的神经网络来执行的,并且所述下采样是在所述多个层中的两个层之间执行的。
5、根据前述实施例之一的方法,其中,所述方法包括根据处理参数的多个集合来处理(120a、130a)所述深度图以生成相应的多幅经处理的深度图,
所述方法还包括:
在已经对相应的经处理的深度图进行了编码和解码之后选择减少经重建的深度图的重建错误的处理参数的集合;并且
生成识别所选择的参数的集合的元数据码流。
6、一种对包括一幅或多幅源视图的视频数据进行解码的方法,所述方法包括:
接收(210)包括针对至少一幅源视图的经编码的深度图和经编码的纹理图的视频码流;
对所述经编码的深度图进行解码(226)以产生经解码的深度图;
对所述经编码的纹理图进行解码(224)以产生经解码的纹理图;并且
处理所述经解码的深度图以生成经重建的深度图,其中,所述处理包括:
上采样(230),以及
非线性滤波(240)。
7、根据实施例6的方法,还包括:在处理所述经解码的深度图以生成所述经重建的深度图的步骤之前,检测所述经解码的深度图的分辨率低于所述经解码的纹理图的分辨率。
8、根据实施例6或实施例7的方法,其中,所述非线性滤波包括减小所述深度图中的至少一个前景对象的面积。
9、根据实施例6-8之一的方法,其中,对所述经解码的深度图的所述处理至少部分基于所述经解码的纹理图。
10、根据实施例6-9之一的方法,包括:
对所述经解码的深度图进行上采样(230);
识别(242)在所述经上采样的深度图中的至少一个前景对象的周边像素;
基于所述经解码的纹理图来确定(244)所述周边像素是与所述前景对象更相似还是与背景更相似;并且
将非线性滤波(240a)仅应用于被确定为与所述背景更相似的周边像素。
11、根据前述实施例之一的方法,其中,所述非线性滤波包括对至少一个前景对象的边缘进行平滑化处理(250)。
12、根据实施例6-11之一的方法,还包括接收与所述视频码流相关联的元数据码流,所述元数据码流识别参数的集合,
所述方法还包括根据所识别的参数的集合来处理所述经解码的深度图。
13、一种包括计算机代码的计算机程序,当所述程序在处理系统上运行时,所述计算机代码用于使所述处理系统实施根据实施例1至12之一的实施例。
14、一种被配置为对包括一幅或多幅源视图的视频数据进行编码的视频编码器(300),每幅源视图包括纹理图和深度图,所述视频编码器包括:
输入部(310),其被配置为接收所述视频数据;
视频处理器(320),其被配置为处理至少一幅源视图的所述深度图以生成经处理的深度图,所述处理包括:
非线性滤波(120),以及
下采样(130);
编码器(330),其被配置为对所述至少一幅源视图的所述纹理图以及所述经处理的深度图进行编码以生成视频码流;以及
输出部(360),其被配置为输出所述视频码流。
15、一种被配置为对包括一幅或多幅源视图的视频数据进行解码的视频解码器(400),所述视频解码器包括:
码流输入部(410),其被配置为接收视频码流,其中,所述视频码流包括针对至少一幅源视图的经编码的深度图和经编码的纹理图;
第一解码器(426),其被配置为根据所述视频码流对所述经编码的深度图进行解码以产生经解码的深度图;
第二解码器(424),其被配置为根据所述视频码流对所述经编码的纹理图进行解码以产生经解码的纹理图;
重建处理器(450),其被配置为处理所述经解码的深度图以生成经重建的深度图,其中,所述处理包括:
上采样(230),以及
非线性滤波(240),以及
输出部(470),其被配置为输出所述经重建的深度图。
适合用于本发明的实施例的硬件部件包括但不限于常规的微处理器、专用集成电路(ASIC)和现场可编程门阵列(FPGA)。一个或多个块可以被实施为用于执行一些功能的专用硬件与用于执行其他功能的一个或多个经编程的微处理器和相关联的电路的组合。
更具体地,本发明由权利要求来限定。
本领域技术人员通过研究附图、公开内容以及权利要求,在实践请求保护的发明时能够理解并实现对所公开的实施例的变型。在权利要求中,“包括”一词不排除其他元件或步骤,并且词语“一”或“一个”不排除多个。单个处理器或其他单元可以实现在权利要求中记载的若干项的功能。虽然某些措施被记载在互不相同的从属权利要求中,但是这并不指示不能有利地使用这些措施的组合。如果上面讨论了计算机程序,则可以将计算机程序存储/分布在合适的介质上,例如,与其他硬件一起提供的或作为其他硬件的部分而提供的光学存储介质或固态介质,但是也可以以其他形式分布,例如经由互联网或其他有线或无线的电信系统进行分布。如果在权利要求书或说明书中使用了术语“适于”,则应当注意术语“适于”旨在等同于术语“被配置为”。权利要求中的任何附图标记都不应被解释为对范围的限制。
Claims (13)
1.一种对包括一幅或多幅源视图的视频数据进行编码的方法,每幅源视图包括纹理图和深度图,所述方法包括:
接收(110)所述视频数据;
处理至少一幅源视图的所述深度图以生成经处理的深度图,所述处理包括:
对所述深度图进行非线性滤波(120)以生成经非线性滤波的深度图,以及
对所述经非线性滤波的深度图进行下采样(130)以生成经处理的深度图;并且
对所述至少一幅源视图的所述经处理的深度图和所述纹理图进行编码(140)以生成视频码流,
其中,所述非线性滤波包括扩大所述深度图中的至少一个前景对象的面积。
2.根据权利要求1所述的方法,其中,所述非线性滤波包括应用使用机器学习算法设计的滤波器。
3.根据前述权利要求中的任一项所述的方法,其中,所述非线性滤波是通过包括多个层的神经网络来执行的,并且所述下采样是在所述多个层中的两个层之间执行的。
4.根据前述权利要求中的任一项所述的方法,其中,所述方法包括根据处理参数的多个集合来处理(120a、130a)所述深度图以生成相应的多幅经处理的深度图,
其中,所述处理参数包括以下各项中的至少一项:执行的所述非线性滤波的定义、执行的所述下采样的定义,以及当重建所述深度图时要在解码器处执行的处理操作的定义,
所述方法还包括:
在已经对相应的经处理的深度图进行了编码和解码之后选择减少经重建的深度图的重建错误的处理参数的集合;并且
生成识别所选择的参数的集合的元数据码流。
5.一种对包括一幅或多幅源视图的视频数据进行解码的方法,所述方法包括:
接收(210)包括针对至少一幅源视图的经编码的深度图和经编码的纹理图的视频码流;
对所述经编码的深度图进行解码(226)以产生经解码的深度图;
对所述经编码的纹理图进行解码(224)以产生经解码的纹理图;并且
处理所述经解码的深度图以生成经重建的深度图,其中,所述处理包括:
对所述经解码的深度图进行上采样(230)生成经上采样的深度图,以及
对所述经上采样的深度图进行非线性滤波(240)以生成经重建的深度图,
其中,所述非线性滤波包括减小所述深度图中的至少一个前景对象的面积。
6.根据权利要求5所述的方法,还包括:在处理所述经解码的深度图以生成所述经重建的深度图的步骤之前,检测所述经解码的深度图的分辨率低于所述经解码的纹理图的分辨率。
7.根据权利要求5-6中的任一项所述的方法,其中,对所述经解码的深度图的所述处理至少部分基于所述经解码的纹理图。
8.根据权利要求5-7中的任一项所述的方法,包括:
对所述经解码的深度图进行上采样(230);
识别(242)在所述经上采样的深度图中的至少一个前景对象的周边像素;
基于所述经解码的纹理图来确定(244)所述周边像素是与所述前景对象更相似还是与背景更相似;并且
将非线性滤波(240a)仅应用于被确定为与所述背景更相似的周边像素。
9.根据权利要求5-8中的任一项所述的方法,其中,所述非线性滤波包括对至少一个前景对象的边缘进行平滑化处理(250)。
10.根据权利要求5-9中的任一项所述的方法,还包括接收与所述视频码流相关联的元数据码流,所述元数据码流识别包括所述非线性滤波的定义和/或要被执行的所述上采样的定义的参数的集合,
所述方法还包括根据所识别的参数的集合来处理所述经解码的深度图。
11.一种包括计算机代码的计算机程序,当所述程序在处理系统上运行时,所述计算机代码用于使所述处理系统实施根据权利要求1至10中的任一项所述的方法。
12.一种被配置为对包括一幅或多幅源视图的视频数据进行编码的视频编码器(300),每幅源视图包括纹理图和深度图,所述视频编码器包括:
输入部(310),其被配置为接收所述视频数据;
视频处理器(320),其被配置为处理至少一幅源视图的所述深度图以生成经处理的深度图,所述处理包括:
对所述深度图进行非线性滤波(120)以生成经非线性滤波的深度图,以及
对所述经非线性滤波的深度图进行下采样(130)以生成经处理的深度图;
编码器(330),其被配置为对所述至少一幅源视图的所述纹理图以及所述经处理的深度图进行编码以生成视频码流;以及
输出部(360),其被配置为输出所述视频码流,
其中,所述非线性滤波包括扩大所述深度图中的至少一个前景对象的面积。
13.一种被配置为对包括一幅或多幅源视图的视频数据进行解码的视频解码器(400),所述视频解码器包括:
码流输入部(410),其被配置为接收视频码流,其中,所述视频码流包括针对至少一幅源视图的经编码的深度图和经编码的纹理图;
第一解码器(426),其被配置为根据所述视频码流对所述经编码的深度图进行解码以产生经解码的深度图;
第二解码器(424),其被配置为根据所述视频码流对所述经编码的纹理图进行解码以产生经解码的纹理图;
重建处理器(450),其被配置为处理所述经解码的深度图以生成经重建的深度图,其中,所述处理包括:
对所述经解码的深度图进行上采样(230)以生成经上采样的深度图,以及
对所述经上采样的深度图进行非线性滤波(240)以生成所述经重建的深度图,以及
输出部(470),其被配置为输出所述经重建的深度图,
其中,所述非线性滤波包括减小所述深度图中的至少一个前景对象的面积。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP19217418.3 | 2019-12-18 | ||
EP19217418.3A EP3840389A1 (en) | 2019-12-18 | 2019-12-18 | Coding scheme for video data using down-sampling/up-sampling and non-linear filter for depth map |
PCT/EP2020/086900 WO2021123072A1 (en) | 2019-12-18 | 2020-12-17 | Coding scheme for video data using down-sampling/up-sampling and non-linear filter for depth map |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114868401A true CN114868401A (zh) | 2022-08-05 |
Family
ID=68944588
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080088330.4A Pending CN114868401A (zh) | 2019-12-18 | 2020-12-17 | 使用下采样/上采样和深度图非线性滤波对视频数据的编码方案 |
Country Status (11)
Country | Link |
---|---|
US (1) | US20230051960A1 (zh) |
EP (2) | EP3840389A1 (zh) |
JP (1) | JP2023506911A (zh) |
KR (1) | KR20220113800A (zh) |
CN (1) | CN114868401A (zh) |
AR (1) | AR120833A1 (zh) |
BR (1) | BR112022011828A2 (zh) |
CA (1) | CA3164785A1 (zh) |
MX (1) | MX2022007492A (zh) |
TW (1) | TW202131695A (zh) |
WO (1) | WO2021123072A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116303731A (zh) * | 2023-05-22 | 2023-06-23 | 四川互慧软件有限公司 | 医院标准主数据的对码方法、装置及电子设备 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210192019A1 (en) * | 2019-12-18 | 2021-06-24 | Booz Allen Hamilton Inc. | System and method for digital steganography purification |
US11875810B1 (en) * | 2021-09-29 | 2024-01-16 | Amazon Technologies, Inc. | Echo cancellation using neural networks for environments with unsynchronized devices for audio capture and rendering |
CN117981324A (zh) * | 2021-09-30 | 2024-05-03 | Oppo广东移动通信有限公司 | 使用多传感器协作的图像和视频编码 |
WO2023123497A1 (en) * | 2021-12-31 | 2023-07-06 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Collaborative video processing mechanism and methods of operating the same |
EP4246988A1 (en) * | 2022-03-16 | 2023-09-20 | Koninklijke Philips N.V. | Image synthesis |
GB2625720A (en) * | 2022-12-21 | 2024-07-03 | V Nova Int Ltd | Immersive Video Data Processing |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100806201B1 (ko) * | 2006-10-30 | 2008-02-22 | 광주과학기술원 | 깊이영상의 계층적 분해를 이용한 삼차원 비디오 생성방법, 이를 위한 장치, 및 그 시스템과 기록 매체 |
US20120269458A1 (en) * | 2007-12-11 | 2012-10-25 | Graziosi Danillo B | Method for Generating High Resolution Depth Images from Low Resolution Depth Images Using Edge Layers |
CN108259917A (zh) * | 2016-12-28 | 2018-07-06 | 中国移动通信集团山东有限公司 | 基于深度时域下采样的三维视频编解码方法及系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101484487B1 (ko) * | 2007-10-11 | 2015-01-28 | 코닌클리케 필립스 엔.브이. | 깊이-맵을 프로세싱하는 방법 및 디바이스 |
AU2014218390B2 (en) * | 2014-08-27 | 2017-01-12 | Canon Kabushiki Kaisha | Method, system and apparatus for forming a high resolution depth map |
US10701334B2 (en) * | 2017-10-11 | 2020-06-30 | Adobe Inc. | Virtual reality parallax correction |
-
2019
- 2019-12-18 EP EP19217418.3A patent/EP3840389A1/en not_active Withdrawn
-
2020
- 2020-12-17 WO PCT/EP2020/086900 patent/WO2021123072A1/en unknown
- 2020-12-17 KR KR1020227024478A patent/KR20220113800A/ko unknown
- 2020-12-17 BR BR112022011828A patent/BR112022011828A2/pt unknown
- 2020-12-17 EP EP20824576.1A patent/EP4078982A1/en active Pending
- 2020-12-17 US US17/785,118 patent/US20230051960A1/en active Pending
- 2020-12-17 MX MX2022007492A patent/MX2022007492A/es unknown
- 2020-12-17 CN CN202080088330.4A patent/CN114868401A/zh active Pending
- 2020-12-17 CA CA3164785A patent/CA3164785A1/en active Pending
- 2020-12-17 JP JP2022537120A patent/JP2023506911A/ja active Pending
- 2020-12-18 TW TW109145157A patent/TW202131695A/zh unknown
- 2020-12-18 AR ARP200103570A patent/AR120833A1/es unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100806201B1 (ko) * | 2006-10-30 | 2008-02-22 | 광주과학기술원 | 깊이영상의 계층적 분해를 이용한 삼차원 비디오 생성방법, 이를 위한 장치, 및 그 시스템과 기록 매체 |
US20120269458A1 (en) * | 2007-12-11 | 2012-10-25 | Graziosi Danillo B | Method for Generating High Resolution Depth Images from Low Resolution Depth Images Using Edge Layers |
CN108259917A (zh) * | 2016-12-28 | 2018-07-06 | 中国移动通信集团山东有限公司 | 基于深度时域下采样的三维视频编解码方法及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116303731A (zh) * | 2023-05-22 | 2023-06-23 | 四川互慧软件有限公司 | 医院标准主数据的对码方法、装置及电子设备 |
CN116303731B (zh) * | 2023-05-22 | 2023-07-21 | 四川互慧软件有限公司 | 医院标准主数据的对码方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
BR112022011828A2 (pt) | 2022-08-30 |
CA3164785A1 (en) | 2021-06-24 |
US20230051960A1 (en) | 2023-02-16 |
MX2022007492A (es) | 2022-07-01 |
EP3840389A1 (en) | 2021-06-23 |
EP4078982A1 (en) | 2022-10-26 |
WO2021123072A1 (en) | 2021-06-24 |
JP2023506911A (ja) | 2023-02-20 |
KR20220113800A (ko) | 2022-08-16 |
AR120833A1 (es) | 2022-03-23 |
TW202131695A (zh) | 2021-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114868401A (zh) | 使用下采样/上采样和深度图非线性滤波对视频数据的编码方案 | |
Kaplanyan et al. | DeepFovea: Neural reconstruction for foveated rendering and video compression using learned statistics of natural videos | |
US10860929B2 (en) | Machine-learning based video compression | |
KR20180100976A (ko) | 딥 신경망 기반 블러 영상 학습을 이용한 영상 부호화/복호화 방법 및 장치 | |
US20220021870A1 (en) | Predicted frame generation by deformable convolution for video coding | |
KR20210067783A (ko) | 전자 장치, 그 제어 방법 및 시스템 | |
CN112446826A (zh) | 用于图像超分辨率、图像增强及模型训练的方法及装置 | |
US11792453B2 (en) | Coding scheme for immersive video with asymmetric down-sampling and machine learning | |
Ong et al. | Fast recovery of unknown coefficients in DCT-transformed images | |
Ameur et al. | Deep-based film grain removal and synthesis | |
Liu et al. | Arbitrary-scale super-resolution via deep learning: A comprehensive survey | |
US8982950B1 (en) | System and method for restoration of dynamic range of images and video | |
US20230342890A1 (en) | High Resolution Inpainting with a Machine-learned Augmentation Model and Texture Transfer | |
US11570465B2 (en) | Machine-learned in-loop predictor for video compression | |
Bacchus et al. | Joint compression and demosaicking for satellite images | |
US20240020788A1 (en) | Machine-Learned Models for Imperceptible Message Watermarking in Videos | |
Hu | Video enhancement: content classification and model selection | |
Mosleh et al. | Image and video spatial super-resolution via bandlet-based sparsity regularization and structure tensor | |
US10194157B2 (en) | Encoder, decoder, system and methods for video coding | |
CN113170094B (zh) | 视频解码方法、计算机设备、计算机可读介质及视频解码器 | |
Ye et al. | Learning multi-granularity semantic interactive representation for joint low-light image enhancement and super-resolution | |
WO2016043774A1 (en) | System and method for restoration of dynamic range of images and video | |
WO2023003528A1 (en) | Guided contextual attention map for inpainting tasks |
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 |