CN112219398B - 用于深度编码和解码的方法和装置 - Google Patents
用于深度编码和解码的方法和装置 Download PDFInfo
- Publication number
- CN112219398B CN112219398B CN201980036964.2A CN201980036964A CN112219398B CN 112219398 B CN112219398 B CN 112219398B CN 201980036964 A CN201980036964 A CN 201980036964A CN 112219398 B CN112219398 B CN 112219398B
- Authority
- CN
- China
- Prior art keywords
- depth
- parameters
- picture
- block
- values
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 94
- 230000006870 function Effects 0.000 claims description 50
- 230000015654 memory Effects 0.000 claims description 34
- 230000016776 visual perception Effects 0.000 claims description 7
- 238000013139 quantization Methods 0.000 abstract description 244
- 230000008569 process Effects 0.000 description 22
- 238000004891 communication Methods 0.000 description 12
- 230000003287 optical effect Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000033001 locomotion Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 230000000295 complement effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000004438 eyesight Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 229920001690 polydopamine Polymers 0.000 description 3
- 230000004304 visual acuity Effects 0.000 description 3
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 208000002173 dizziness Diseases 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 230000004886 head movement Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000007654 immersion Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- AWSBQWZZLBPUQH-UHFFFAOYSA-N mdat Chemical compound C1=C2CC(N)CCC2=CC2=C1OCO2 AWSBQWZZLBPUQH-UHFFFAOYSA-N 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000004544 sputter deposition Methods 0.000 description 1
Classifications
-
- 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/124—Quantisation
-
- 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
- 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/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- 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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/154—Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
-
- 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/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- 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/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/179—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scene or a shot
-
- 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/46—Embedding additional information in the video signal during the compression process
- H04N19/463—Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
-
- 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/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/98—Adaptive-dynamic-range coding [ADRC]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
Abstract
用于编码/解码表示3D场景深度的数据的方法和设备。在大于所确定的编码位深度允许的编码值的范围的量化深度值的范围内对深度数据进行量化。对于包括深度数据的像素块,确定候选量化参数的第一集合。将量化参数的第二集合确定为第一集合的并集的子集。该第二集合包括多个块共有的候选量化参数。第二集合的一个或多个量化参数与该画面的每个像素块相关联。对量化参数的第二集合进行编码,并且根据量化参数对量化深度值进行编码。
Description
技术领域
本公开涉及三维(3D)场景和体积式视频内容的领域。本公开还可以在表示3D场景深度的数据的编码和/或格式化的背景下予以理解,例如,用于在终端用户设备(诸如移动设备或头戴式显示器等)上呈现体积式内容。
背景技术
本部分旨在向读者介绍本领域的各个方面,这些方面可能与以下描述的和/或请求保护的本原理的各个方面有关。该论述有助于向读者提供背景信息,以便于更好地理解本原理的各个方面。因此,应以该角度来阅读这些陈述,而不是作为对现有技术的承认。
最近,可用的大视场(高达360°)内容有所增长。这种内容对于在沉浸式显示设备(诸如头戴式显示器、智能眼镜、PC屏幕、平板电脑、智能手机等)上观看内容的用户来说可能是不完全可见的。这意味着在给定的时刻,用户可能只在观看部分内容。然而,用户通常可以通过诸如头部移动、鼠标移动、触摸屏、语音等各种方式在内容内导航。通常期望对该内容进行编码和解码。
沉浸式视频(也称为360°平面视频)允许用户通过围绕静止视点旋转头部来观看自己周围的一切。旋转仅允许3个自由度(3DoF)的体验。即使3DoF视频足以满足首次全向视频体验(例如,使用头戴式显示设备(Head Mounted Display,HMD)),对于希望获得更大自由度的观看者来说,例如,体验视差,3DoF视频会很快变得令人沮丧。另外,3DoF还可能引起头晕,这是因为用户不仅旋转头部,而且还向三个方向平移头部,而这些平移在3DoF视频体验中是无法再现的。
大视场内容可以是三维计算机图形成像场景(3D CGI场景)、点云或沉浸式视频以及其它。许多术语可以被用来设计这样的沉浸式视频,诸如例如虚拟现实(VirtualReality,VR)、360、全景、4π球面度、沉浸式、全向、大视场。
体积式视频(也称为6自由度(6DoF)视频)是3DoF视频的替代方式。在观看6DoF视频时,除了旋转之外,用户还可以在观看的内容内平移头部,甚至平移身体,并体验视差甚至体积。这样的视频可大大提高沉浸感和景深感,并通过在头部平移期间提供一致的视觉反馈来防止头晕。通过专用传感器创建内容,从而同时记录感兴趣场景的色彩和深度。彩色照相机装备与摄影测量技术结合使用是执行此类记录的常用方法。
3DoF视频包含因未映射纹理图像而产生的图像序列(例如,根据纬度/经度投影映射或等量矩形投影映射编码的球形图像),而6DoF视频帧从若干个视点嵌入信息。可以将它们视为三维捕获的时间序列点云。根据观看条件,可以考虑两种体积式视频。第一种(即完整的6DoF)允许在视频内容中进行完全自由的导航,而第二种(又称为3DoF+)将用户的视空间限制在有限的体积内,从而允许有限的头部平移和视差体验。第二种情况是在自由导航和就座观众的被动观看条件之间的宝贵权衡。
3DoF视频可以在流中被编码为根据所选择的投影映射(例如,立方投影映射、金字塔投影映射、或等量矩形投影映射)生成的矩形彩色图像序列。这种编码的优点是可以使用标准的图像和视频处理标准。3DoF+和6DoF视频需要附加数据来编码点云的彩色点的深度。当在流中编码该场景时,用于体积式场景的呈现类型(即3DoF或体积式呈现)是先验未知的。到目前为止,流是针对一种呈现或另一种呈现进行编码的。缺少可以携带表示可以立即编码和可以解码为3DoF视频或体积式视频(3DoF+或6DoF)的体积式场景的数据的流,以及相关的方法和设备。
除了体积式视频的特定情况之外,可能还会出现3D场景或体积式内容的深度信息的编码和解码问题,尤其是当要编码的深度值的范围较大且可用于编码的位深度不能提供足够数量的编码值时。
发明内容
说明书中对“一个实施例”、“实施例”、“示例实施例”、“特定实施例”的引用表示所描述的实施例可以包括特定的特征、结构或特性,但是每个实施例不一定都包括该特定的特征、结构或特性。此外,这样的短语不一定指相同的实施例。进一步地,当结合实施例来描述该特定的特征、结构或特性时,可以认为结合其他实施例(无论是否明确描述)来实施这种特征、结构或特性是在本领域技术人员的知识范围内的。
本公开涉及一种对表示3D场景深度的数据进行编码的方法,该方法包括:
-对数据进行量化,以获得大于所确定的编码位深度允许的编码值的数量的量化深度值的数量;
-对于包括该数据的画面的每个第一像素块,确定表示包括在每个第一像素块的量化深度值的每个范围的候选量化参数的第一集合,该第一集合是根据编码值的数量来确定的;
-将量化参数的第二集合确定为第一集合的并集的子集,该第二集合包括画面的多个第一像素块共有的候选量化参数,该第二集合的一个或多个量化参数与画面的每个第一像素块相关联;
-对量化参数的第二集合进行编码;以及
-根据量化参数的第二集合对量化深度值进行编码。
本公开涉及一种被配置为对表示3D场景深度的数据进行编码的设备,该设备包括与至少一个处理器相关联的存储器,该至少一个处理器被配置为:
-对数据进行量化,以获得大于所确定的编码位深度允许的编码值的数量的量化深度值的数量;
-对于包括该数据的画面的每个第一像素块,确定表示包括在每个第一像素块的量化深度值的每个范围的候选量化参数的第一集合,该第一集合是根据编码值的数量来确定的;
-将量化参数的第二集合确定为第一集合的并集的子集,该第二集合包括画面的多个第一像素块共有的候选量化参数,该第二集合的一个或多个量化参数与画面的每个第一像素块相关联;
-对量化参数的第二集合进行编码;以及
-根据量化参数的第二集合对量化深度值进行编码。
本公开涉及一种被配置为对表示3D场景的数据进行编码的设备,该设备包括:
-量化器,被配置为:对数据进行量化,以获得大于所确定的编码位深度允许的编码值的数量的量化深度值的数量;
-确定器,被配置为:对于包括该数据的画面的每个第一像素块,确定表示包括在每个第一像素块的量化深度值的每个范围的候选量化参数的第一集合,该第一集合是根据编码值的数量来确定的;
-确定器,被配置为:将量化参数的第二集合确定为第一集合的并集的子集,该第二集合包括画面的多个第一像素块共有的候选量化参数,该第二集合的一个或多个量化参数与画面的每个第一像素块相关联;
-编码器,被配置为:对量化参数的第二集合进行编码;和
-编码器,被配置为:根据量化参数的第二集合对量化深度值进行编码。
本公开涉及一种被配置为对表示3D场景的数据进行编码的设备,该设备包括:
-用于对数据进行量化的部件,以获得大于所确定的编码位深度允许的编码值的数量的量化深度值的数量;
-用于对于包括该数据的画面的每个第一像素块,确定表示包括在每个第一像素块的量化深度值的每个范围的候选量化参数的第一集合的部件,该第一集合是根据编码值的数量来确定的;
-用于将量化参数的第二集合确定为第一集合的并集的子集的部件,该第二集合包括画面的多个第一像素块共有的候选量化参数,该第二集合的一个或多个量化参数与画面的每个第一像素块相关联;
-用于对量化参数的第二集合进行编码的部件;以及
-用于根据量化参数的第二集合对量化深度值进行编码的部件。
根据一个特定特性,对映射到量化参数的第二集合的标识符列表进一步编码,该量化参数的第二集合是根据标识符列表进行编码的。
根据一个具体特性,标识符列表包括每个映射到第二集合的一个量化参数的第一标识符和每个映射到多个第一标识符的第二标识符,该量化参数的第二集合是通过对包括与画面的第一像素块的数量相对应的第二像素的数量的图像进行编码来编码的,每个第二像素包括:
·列表的第一标识符,当单个量化参数与第一像素块相关联时,标识与对应于每个第二像素的第一像素块相关联的量化参数;或者
·列表的第二标识符,当多个量化参数与第一像素块相关联时,标识与对应于每个第二像素的第一像素块相关联的量化参数。
根据另一个具体特性,当根据具有量化误差的量化函数对数据进行量化时,深度越大,量化误差越大,其中该量化误差说明了深度和人类视觉感知。
根据又一个具体特性,将编码值的数量分配给每个第一像素块,以对包括在每个第一像素块中的量化深度值进行编码,该编码值的数量的第一部分被分配给对包括在每个第一像素块中的量化深度值的每个范围的编码,编码量化深度值的两个范围由该编码值的数量的第二部分分开,该第二部分不用于量化深度值的编码。
根据又一个具体特性,该画面是一组时间上连续的画面的一部分,该量化参数的第二集合对于一组时间上连续的画面的每个画面是共有的。
本公开涉及一种对表示3D场景深度的数据进行解码的方法,该方法包括:
-对量化参数的集合进行解码,该集合的一个或多个量化参数与画面每个第一像素块相关联,该集合的量化参数的至少一部分是画面的多个第一像素块共有的;
-根据与每个第一像素块相关联的一个或多个量化参数,对包括在画面的第一像素中的量化深度值进行解码,所解码的量化深度值的数量大于所确定的编码位深度允许的编码值的数量。
本公开涉及一种被配置为对表示3D场景深度的数据进行解码的设备,该设备包括与至少一个处理器相关联的存储器,该至少一个处理器被配置为:
-对量化参数的集合进行解码,该集合的一个或多个量化参数与画面的每个第一像素块相关联,该集合的量化参数的至少一部分是画面的多个第一像素块共有的;
-根据与每个第一像素块相关联的一个或多个量化参数,对包括在画面的第一像素中的量化深度值进行解码,所解码的量化深度值的数量大于所确定的编码位深度允许的编码值的数量。
本公开涉及一种被配置为对表示3D场景深度的数据进行解码的设备,该设备包括:
-解码器,被配置为:对量化参数的集合进行解码,该集合的一个或多个量化参数与画面的每个第一像素块相关联,该集合的量化参数的至少一部分是画面的多个第一像素块共有的;
-解码器,被配置为:根据与每个第一像素块相关联的一个或多个量化参数,对包括在画面的第一像素中的量化深度值进行解码,所解码的量化深度值的数量大于所确定的编码位深度允许的编码值的数量。
本公开涉及一种被配置为对表示3D场景深度的数据进行解码的设备,该设备包括:
-用于对量化参数的集合进行解码的部件,该集合的一个或多个量化参数与画面的每个第一像素块相关联,该集合的量化参数的至少一部分是画面的多个第一像素块共有的;
-用于根据与每个第一像素块相关联的一个或多个量化参数,对包括在画面的第一像素中的量化深度值进行解码的部件,所解码的量化深度值的数量大于所确定的编码位深度允许的编码值的数量。
根据一个特定特性,对映射到量化参数的集合的标识符列表进一步解码,该量化参数的集合是根据标识符列表进行解码的。
根据一个具体特性,标识符列表包括每个映射到集合的一个量化参数的第一标识符和每个映射到多个第一标识符的第二标识符,该量化参数的集合是从包括与画面的第一像素块的数量相对应的第二像素的数量的图像中解码的,每个第二像素包括:
·列表的第一标识符,当单个量化参数与第一像素块相关联时,标识与对应于每个第二像素的第一像素块相关联的量化参数;或者
·列表的第二标识符,当多个量化参数与第一像素块相关联时,标识与对应于每个第二像素的第一像素块相关联的量化参数。
根据另一个特性,当根据具有量化误差的量化函数从已解码的量化深度值中获得数据时,深度越大,量化误差越大,该量化误差说明了深度和人类视觉感知。
根据又一个特性,该画面是一组时间上连续的画面的一部分,该量化参数的集合对于一组时间上连续的画面的每个画面是共有的。
本公开还涉及一种比特流,其承载表示3D场景深度的数据,该数据在第一语法元素中包括表示与画面的像素块相关联的量化参数的数据;在第二语法元素中包括表示根据量化参数编码的量化深度值的数据。
本公开还涉及一种计算机程序产品,其包括程序代码指令,当该程序在计算机上执行时,该程序代码指令用于执行用于编码或解码表示3D场景深度的数据的方法的步骤。
本公开还涉及一种(非暂时性)处理器可读介质,其上存储有指令,所述指令用于使处理器至少执行上述用于编码或解码表示3D场景深度的数据的方法。
附图说明
参照附图阅读下文中的描述,将更好地理解本公开以及其他具体特征和优点将出现,附图中:
图1示出了根据本原理的非限制性实施例的表示三维(3D)场景的图像;
图2示出了根据本原理的非限制性实施例的图1中的3D场景的对象的三维(3D)模型以及与3D模型相对应的点云的点;
图3示出了根据本原理的非限制性实施例的包括图1中的3D场景的点的纹理信息的画面;
图4示出了根据本原理的非限制性实施例的包括图1中的3D场景的点的深度信息的画面;
图5示出了根据本原理的又一个非限制性实施例的包括图1中的3D场景的点的深度信息的画面;
图6示出了根据本原理的非限制性实施例的对同时以3DoF呈现兼容和3DoF+呈现兼容的格式表示3D场景的数据的编码、发送和解码的示例;
图7A、图7B和图7C示出了根据本原理的非限制性实施例的用于量化图4或图5中的画面的深度信息的量化函数的示例;
图8示出了根据本原理的非限制性实施例的人类视觉的视敏度的概念;
图9示出了根据本原理的非限制性实施例的从图4或图5中的画面确定量化参数的过程的示例;
图10示出了根据本原理的非限制性实施例的包含表示与图4或图5中的画面相关联的量化参数的信息的图像的示例;
图11示出了根据本原理的非限制性实施例的将标识符和与图4或图5中的画面相关联的量化参数映射的表的示例;
图12示出了根据本原理的非限制性实施例的从图4或图5中的画面的单个像素块确定多个量化参数的过程的示例;
图13示出了根据本原理的两个非限制性实施例的对图1中的3D场景的量化深度值进行编码的方法的示例;
图14示出了根据本原理的非限制性实施例的承载表示图1中的3D场景的深度的信息和数据的比特流的语法的示例;
图15示出了根据本原理的非限制性实施例的设备的示例架构,该设备可以被配置为实现结合图9、图12、图13、图16,和/或图21描述的方法或过程;
图16示出了根据本原理的非限制性实施例的一种用于编码表示图1中的3D场景深度的数据的方法的示例,该方法例如在图15的设备中实现。
图17示出了根据本原理的非限制性实施例的一种用于解码表示图1中的3D场景的深度的数据的方法的示例,该方法例如在图15的设备中实现。
具体实施方式
现在参考附图来描述主题,其中,全文中相似的参考标号用于指代相似的元件。在下面的描述中,出于解释的目的,阐述了许多具体细节以便提供对主题的透彻理解。然而,显然的是,在没有这些具体细节的情况下也可以实践主题实施例。
本说明书示出了本公开的原理。因此,可以理解的是,尽管本文未明确描述或示出,但是本领域技术人员能够设计出体现本公开原理的各种配置。
根据本公开的非限制性实施例,公开了用于在容器和/或比特流中编码其中包括3D场景的深度信息(也称为(多个)深度图)的一个或多个画面的方法和设备。还公开了用于从流中解码3D场景的深度的画面(或深度图)的方法和设备。还公开了用于对深度信息的一个或多个画面/深度图进行编码的比特流的语法的示例。
根据非限制性方面,参考用于将表示3D场景(可以用体积式内容(也称为沉浸式视频)或标准3D内容表示)的深度的数据编码到容器和/或比特流中的方法(和被配置的设备)的第一特定实施例来描述本原理。
为了达到该目的,将表示3D场景的深度(例如,表示为与3D场景的元素(例如,点)相关联的浮点值的距离或深度值)的数据量化为大于所确定的编码位深度允许的编码值数量的量化深度值的数量。例如,8位编码位深度允许使用256(28)个值进行编码,10位编码位深度允许使用1024(210)个值进行编码,而量化深度值的数量例如可以等于16384(214)或65536(216)。使用大数量的值对深度数据进行量化使得能够使用在整个范围内保持较小的量化步长对大范围深度数据(例如,介于0到50米之间或0到100米之间,甚至更大的范围的深度或距离)进行量化,从而将量化误差最小化,尤其是对于靠近场景(多个)视点的对象(例如前景对象)。
包括代表深度的数据的画面被分成像素块(例如8×8或16×16的像素块),并且为每个像素块确定候选量化参数的第一集合。候选量化参数对应于表示与块的像素相关联的量化值范围的量化值(该量化值是通过对存储在画面的像素中的深度数据进行量化而获得的)。考虑到所考虑的块的编码值的数量(例如,该块的1024个值),确定候选量化参数的第一集合,该候选量化参数例如对应于可用作在编码值的数量的限制中表示量化深度值的范围的起始值的参考量化值。
将量化参数的第二集合确定为第一集合的并集的子集,即,该第二集合包括为画面的所有像素块确定的候选量化参数的一部分。通过检索能够表示整个画面的所有像素块的量化深度值的所有范围的候选量化参数的最小数量,即通过检索若干个像素块(如果存在)所共有的候选量化参数,来确定第二集合。
将量化参数的第二集合编码到例如文件。
然后,根据第二集合中的量化参数对量化深度值进行编码。
根据与第一像素块相关联的量化参数对量化深度值进行编码,使得有更多的编码值可用于量化深度值的编码,所确定的编码位深度允许的编码值集合可用于每个块的量化深度值的编码(例如,可用于画面的每个块的1024个编码值,而不是可用于整个画面的编码的1024个编码值)。
画面对应于像素阵列,属性(例如,深度信息和/或纹理信息)与画面的像素相关联。
根据本原理的非限制性方面,还描述了对表示3D场景的深度的数据进行解码的对应方法(和配置的设备)。
图1示出了包括表示若干个表面的三维(3D)场景10的图像。可以使用任何合适的技术来获取场景。例如,它可能是使用计算机图形界面(CGI)工具创建的。它可能已经由色彩和深度图像采集设备采集。在这种情况下,在如参考图1所描述的场景中有可能无法将对采集设备(例如,相机)不可见的对象的一个或多个部分进行表示。图1所示的示例场景包括房间中的人物和对象。根据图1中确定的视点来表示3D场景10。该视点例如可以是用户可以从中观看3D场景的视空间的一部分。根据变型,可用的3D场景的内容(深度和/或纹理信息)仅对应于从图1的确定的视点可见的场景的元素(例如,点)。
图2示出了对象20的三维(3D)模型和对应于3D模型20的点云21的点。3D模型20和点云21可以例如对应于3D场景10的对象(例如,人物的头部)的可能的3D表示。模型20可以是3D网格表示,并且点云21的点可以是网格的顶点。点云21的点也可以是散布在网格的面的表面上的点。模型20也可以表示为点云21的喷溅(splatted)版本,通过喷溅点云21的点来创建模型20的表面。模型20可以由诸如体素或样条的许多不同的表示来表示。图2示出了一个事实:可以用3D对象的表面表示来定义点云,并且可以从云点生成3D对象的表面表示。如本文中所使用的,将3D对象的点(通过3D场景的扩展点)投影到图像上等同于将该3D对象的任何图像表示进行投影以创建对象。
点云可被视为基于矢量的结构,其中,每个点具有其坐标(例如,三维坐标XYZ或距给定视点的深度/距离)和一个或多个属性(也称为分量)。分量的示例是可以在各种色彩空间中表示的颜色分量,例如RGB(红色、绿色、蓝色)或YUV(Y是亮度分量,而UV是两个色度分量)。点云是从给定视点或一系列视点看到的对象的表示。点云可以通过多种方式获得,例如:
·通过捕获由一组的摄像机拍摄的真实对象,并可选配深度主动传感设备;
·通过捕获建模工具中的一组虚拟摄像机拍摄的虚拟/合成对象;
·通过真实和虚拟对象的组合。
3D场景的体积式部分可以例如由一个或若干个点云(诸如点云21)表示。
图3示出了根据本原理的非限制性实施例的包括3D场景10的点的纹理信息(例如,RGB数据或YUV数据)的画面30的示例。
画面30包括第一部分301和一个或多个第二部分302,第一部分301包括从第一视点可见的3D场景的元素(点)的纹理信息。例如,可以根据等量矩形投影映射来获得第一部分301的纹理信息,等量矩形投影映射是球形投影映射的示例。在图3的示例中,第二部分设置在第一部分301的左侧和右侧边界处,但是第二部分可以进行不同的布置。第二部分302包括与从第一视点可见的部分互补的3D场景的部分的纹理信息。可以通过从3D场景中去除从第一视点可见的点(其纹理存储在第一部分中)并通过根据相同的第一视点投影其余点来获得第二部分。可以迭代地重复后一过程,以便每次获得3D场景的隐藏部分。根据一个变型,可以通过从3D场景中去除从第一视点可见的点(其纹理存储在第一部分中)并且通过根据与第一视点不同的视点(例如,从以第一视点为中心的视空间中的一个或多个第二视点)投影其余点来获得第二部分。
第一部分301可以被视为第一大的纹理补片(对应于3D场景的第一部分),第二部分302包括较小的纹理补片(对应于与第一部分互补的3D场景的第二部分)。
图4示出了根据本原理的非限制性实施例的包括3D场景10的点的深度信息的画面40的示例。画面40可以被视为与纹理画面30相对应的深度画面。
画面40包括第一部分401和一个或多个第二部分402,第一部分401包括从第一视点可见的3D场景的元素(点)的深度信息。画面40可以以与画面30相同的方式获得,但是包含与3D场景的点相关联的深度信息,而不是如画面30中的纹理信息。
第一部分401可以被视为第一大深度补片(对应于3D场景的第一部分),第二部分402包括较小的纹理补片(对应于与第一部分互补的3D场景的第二部分)。
对于3D场景的3DoF呈现,仅考虑一个视点,例如第一个视点。用户可以围绕第一视点以三个自由度旋转其头部以观看3D场景的各个部分,但是用户不能移动第一视点。待编码场景的点是从该第一视点可见的点,并且仅纹理信息需要进行3DoF呈现的编码/解码。不需要对从该第一视点不可见的场景的点进行编码,因为用户无法通过移动第一视点来访问它们。
对于6DoF呈现,用户可以将视点移动到场景中的任何位置。在这种情况下,在比特流中对场景的每个点(深度和纹理)进行编码是很有价值的,因为能够移动其视点的用户潜在地可访问每个点。在编码阶段,没有先验的方式可以知道用户将从哪个视点观察3D场景10。
对于3DoF+呈现,用户可以在视点周围(例如,在第一视点周围)的有限空间内移动视点。例如,用户可以在以第一视点为中心的确定的视空间内移动他的视点。这样可以体验视差。表示从视空间的任何点可见的场景的部分的数据将被编码到流中,包括表示根据第一视点可见的3D场景的数据(即,第一部分301和401)。例如,可以在编码步骤决定和确定视空间的大小和形状,并在比特流中进行编码。解码器可以从比特流中获得此信息,并且呈现器将视空间限制在由所获得的信息确定的空间。根据另一个示例,呈现器根据例如与检测用户的运动的(多个)传感器的功能有关的硬件约束来确定视空间。在这种情况下,如果在编码阶段从呈现器视空间内的某个点可见的点尚未在比特流中进行编码,则不会呈现该点。根据另一示例,表示3D场景的每个点的数据(例如,纹理和/或几何形状)在流中被编码,而无需考虑视空间的呈现。为了优化流的大小,可以仅编码场景的点的子集,例如可以根据呈现视空间看到的点的子集。
图5示出了根据本发明的非限制性实施例的例如在从单个视点获取3D场景的情况下,包括3D场景10的点的深度信息的画面50的示例。画面50对应于第一像素的阵列,每个第一像素包括代表深度的数据。画面50也可以称为深度图。该数据例如对应于浮点值,浮点值指示对于每个第一像素,画面50的视点(或当通过投射获得画面50时的投影中心)到z的径向距离。深度数据可以通过一个或多个深度传感器获得,或者例如对于场景的CGI部分是先验已知的。画面50中包含的深度范围[zmin,zmax],即包括在场景的最小深度值zmin和最大深度值zmax之间的深度值的范围可以很大,例如从0到100米。深度数据在图5中用灰色阴影表示,像素(或点)越暗,越靠近视点。
画面50可以是场景的时间上连续的画面组的一部分,称为GOP(画面组)。GOP例如可以包括不同类型的画面,例如I画面(即,帧内编码画面)、P画面(即,预测编码画面)、和“B”画面到708(即,双向预测编码画面)。画面之间存在编码关系。例如,可以通过参考I画面来对P画面进行编码,可以通过参考I画面和P画面来对B画面进行编码。GOP可以是帧内周期的一部分,即,包括在两个I画面之间的画面序列,第一个I画面属于所述帧内周期并指示帧内周期的开始,而第二个(时间上而言)I画面不属于所述帧内周期而是属于随后的帧内周期。
I画面是独立于所有其他画面进行编码的画面。每个帧内周期都以这种类型的画面开始(按解码顺序)。
P画面包括相对于先前解码的画面的运动补偿的差异信息。在诸如MPEG-1、H.262/MPEG-2之类的压缩标准中,每个P画面只能引用一个画面,并且该画面必须按照显示顺序和解码顺序位于P画面之前,并且必须为I画面或P画面。这些约束条件不适用于最新的标准,例如H.264/MPEG-4AVC和HEVC。
B画面包括相对于先前解码的画面的运动补偿的差异信息。在诸如MPEG-1和H.262/MPEG-2之类的标准中,每个B画面只能引用两个画面,即按照显示顺序在B画面之前的一个画面和随后的一个画面,所有引用的画面必须是I画面或P画面。这些约束条件不适用于最新的标准,例如H.264/MPEG-4AVC和HEVC。
画面30和画面40也可以分别是GOP的一部分,例如,画面50。
图6示出了以可以同时兼容3DoF和3DoF+呈现的格式表示3D场景的深度的数据的编码、发送和解码的非限制性示例。
3D场景60的画面(或3D场景的画面序列)由编码器61在流62中进行编码。流62包含携带表示3DoF呈现的3D场景的数据(例如,画面30的第一部分的数据)的第一语法元素和携带表示用于3DoF+呈现的3D场景的数据的至少第二语法元素(例如画面30和画面40的第二部分的数据)。
编码器61例如与以下编码器兼容:
·JPEG,规范ISO/CEI 10918-1 UIT-T建议书T.81,https://www.itu.int/rec/T-REC-T.81/en;
·AVC,也称为MPEG-4 AVC或h264。在UIT-T H.264和ISO/CEI MPEG-4第10部分(ISO/CEI 14496-10)中规定,http://www.itu.int/rec/T-REC-H.264/en,HEVC(其规范可在ITU网站上找到,T建议书,H系列,h265,http//www.itu.int/rec/T-REC-H.265-201612- I/en);
·3D-HEVC(HEVC的扩展,其规范可在ITU网站上找到,T建议书,H系列,h265,http://www.itu.int/rec/T-REC-H.265-201612-I/附录G和I);
·由Google开发的VP9;或
·开放媒体联盟(Alliance for Open Media)开发的AV1(AOMedia Video1)。
解码器63从源中获得流62。例如,源属于包含以下内容的集合:
-本地内存,例如,视频存储器或RAM(随机存取存储器)、闪存、ROM(只读存储器)、硬盘;
-存储器接口,例如,与大容量存储器、RAM、闪存、ROM、光盘或磁性载体的接口;
-通信接口,例如,有线接口(例如,总线接口、广域网接口、局域网接口)或无线接口(例如,IEEE 802.11接口或接口);和
-用户界面,例如,使用户能够输入数据的图形用户界面。
解码器63为3DoF呈现64解码流62的第一语法元素。对于3DoF+呈现65,解码器对流62的第一语法元素和第二语法元素均进行解码。
解码器63与编码器61兼容,例如,与以下解码器兼容:
·JPEG;
·AVC;
·HEVC;
·3D-HEVC(HEVC的扩展);
·VP9;或
·AV1。
图7A、图7B和图7C示出了根据本原理的非限制性实施例的可用于量化画面40和/或画面50的深度数据的量化函数的示例。
图7A示出了用于量化表示存储在画面40和/或画面50的第一像素中的深度的数据的量化函数71的第一示例。横坐标轴表示深度(用浮点值表示,在zmin=0和zmax=50米之间),纵坐标轴表示量化深度值(在0和65536之间)。量化函数71ql(z)是深度z的仿射变换,例如:
其中,D表示编码位深度,例如,在图7A的示例中D等于16,以获得足够的量化深度值以实现较小的量化步长,这对于以良好的质量表示深度是必要的,尤其是对于靠近视点的对象。根据另一个示例,D可以设置为32。
利用这样的量化函数71,无论深度z如何,量化误差都是相同的。例如,对于10位编码(1024个值可用于对3D场景的整个深度范围(例如50米)的量化深度进行编码),误差为5厘米,这可能会生成可见的伪像,尤其是对于前景对象。对于12位编码,误差为0.8毫米。量化误差可以是:eq=(zmax-zmin)/2D。
图7B示出了用于量化表示存储在画面40和/或画面50的第一像素中的深度的数据的量化函数72的第二示例。横坐标轴表示深度(用浮点值表示,在zmin=0.1和zmax=50米之间),纵坐标轴表示量化深度值(在0和65536之间)。量化函数72qi(z)是深度1/z的倒数的仿射变换,例如:
其中,D表示编码位深度,例如,在图7B的示例中D等于16,以获得足够的量化深度值以实现较小的量化步长,这对于以良好的质量表示量化深度是必要的,尤其是对于远离视点的对象。根据另一个示例,D可以设置为32。
利用这样的量化函数72,对于低深度值,量化误差最小,而对于高深度值,量化误差非常高。例如,对于10位编码(1024个值可用于对3D场景的整个深度范围(例如50米)的量化深度进行编码),在zmax处的误差为24米,这可能会生成背景对象的可见伪像。对于12位编码,误差为38厘米。量化误差可以是:eq=z2.(zmax-zmin)/(2D.zmin.zmax)。
量化函数71和72在感知上不一致,即,它们不考虑人类视觉的视敏度。图7C示出了用于量化表示存储在画面40和/或画面50的第一像素中的深度的数据的量化函数73的第三示例,量化函数73在感觉上是一致的。
为了说明量化函数的感知一致性,引入了量化误差函数:
后一个量表示在给定深度z且对于给定量化函数qx发生等于1的量化增量时出现的深度变化量。该误差函数从根本上有助于理解当从错误的量化输入深度(通常由于压缩伪像)获得时,深度值如何变化。
还引入了人类视觉的视敏度概念,如图8所示。后者表示最小的角度82人眼81可以从中区分3D空间中的2个不同的点85、86。从这个角度82,可以计算出两个点85、86之间的最小可感知距离δ(z)84,该距离可由人眼在一定距离z 83上区分:
表示感知一致性的参数α可以定义为:
感知一致的量化方案qx应该确保,无论所考虑的深度如何,对于最小可感知距离的量化误差都是恒定的。换句话说,应该有:
对于ql和qi都不是这种情况。相反,由qα(z)定义的量化函数73在感知上是一致的:
该量化函数73暗含以下的倒数递归序列zi+1=(1+α)zi(z0=zmin)和相关的倒数函数zα(q)=zmin(1+α)q。此外,可直接得到:
这确保了无论深度z如何,相关的量化误差在感知上都是一致的(误差与深度成线性关系)。
然而,与量化函数71和72类似,量化函数73不满足由诸如HEVC编码器之类的传统视频编码器施加的编码位深度(通常为8位或10位或12位)约束条件。如图7C所示,对于包括在zmin=0和zmax=50米之间的深度范围,需要超过5000个量化深度值,也就是说,超过212个值。
图9示出了根据本原理的非限制性实施例的从画面40或50中确定量化参数的过程的示例。
在第一操作90中,将包括表示深度(与画面40、50的每个第一像素相关联(或存储在其中)的深度值)的数据的画面40(或50)划分为多个第一像素块,例如以8×8或16×16的第一像素块,形成第一像素块的阵列。可选地,画面40(或50)可以是画面组901的一部分。相同的量化函数,例如量化函数71、72或73,被应用于画面40,即应用于画面40的所有块。当画面40是GOP 901的一部分时,将相同的量化函数应用于GOP的每个画面,在相同的多个第一像素块中,以相同的方式划分GOP的每个画面。当对单个画面40(或50)执行过程时,将参考一个块来描述图5的过程,例如参考该画面的右上块,且以相同的方式将相同的过程应用于每个块。当画面40是GOP 901的一部分时,将参考一个时空块902来描述图5的过程,该时空块902表示GOP 901的每个画面的所有右上块的集合并集。块902包含GOP 901的每个画面的所有右上块的所有量化深度值。画面40的每个第一像素块可以由该块所属的行索引“i”和列索引“j”表示。由块902表示的第一像素块在它们各自的画面中具有相同的行索引和列索引。
在第二操作91中,将量化函数73应用于画面40的右上块的深度数据(或应用于GOP901的所有画面的每个右上块)。深度数据由具有最小深度值zmin和最大深度值zmax的深度值范围912表示,其对应于范围912的极限。将量化函数73应用于范围912,使得能够获得量化深度值的范围911。
在第三操作92中,分析量化值的范围911以确定唯一的逐块量化器,该量化器对应于表示量化深度值的范围911的量化参数。为了达到该目的,为范围911确定候选量化参数集合。该候选量化参数集合包括多个量化深度值,其可以用作表示量化深度值的范围911的参考。候选量化参数qi,j是量化尺度的特殊值,使得范围[qi,j,qi,j+N-1]覆盖先前为所考虑的第一像素块标识的量化深度值的范围911,N对应于用于对画面40或50(或GOP 901的画面)的深度数据进行编码的编码器的位深度所允许的编码值的数量。例如,位深度为10位,且N=210=1024。例如,考虑量化深度值的范围911为[3990,4700],其中zmin=3990和zmax=4700。考虑N 921的值等于1024,候选量化参数集合922对应于值范围[3676,4699],其中3676=zmax–N。对于画面40(或GOP 901)的每个第一像素块重复相同的过程,以获得画面40(或GOP901)的每个块的候选量化参数的第一集合。
在第四操作93中,确定与候选量化参数的第一集合的子集相对应的量化参数的第二集合。为了达到该目的,在候选量化参数的第一集合内确定可用于表示所有第一像素块(即,量化深度值的所有范围)的候选量化参数的最小数量。例如,可以通过应用贪婪算法来获得该第二集合,以得到针对整个画面40(或针对整个GOP 901)的最佳大小的第二集合。贪婪算法迭代地在每个阶段局部地做出最优选择。根据一个变型,可以用遗传算法或进化算法或粒子群算法获得第二集合。所获得的量化参数的第二集合可以例如存储在结合图10所描述的图像100中。
图10示出了根据本原理的非限制性实施例的图像100的示例,该图像包含表示与画面40或50(或与包括画面40或50的GOP)相关联的量化参数的信息。
图像100对应于以行和列排列的第二像素的矩阵。图像100的列数对应于画面40的行中的第一像素的数目除以块尺寸,而行数对应于画面40的列中的第一像素的数目除以块尺寸。例如,如果画面40的尺寸是4096×2160个第一像素,并且块尺寸是8×8个第一像素,则图像100的列数是512,行数是270。因此,第二像素的数量为512x270。图像100的每个第二像素与画面40或50(或GOP 901)的相应的第一像素块相关联。例如,左上第二像素10000与画面40或50的左上第一像素块相关联,该左上第二像素的参考标号10000的索引00对应于该左上第二像素所属的行索引和列索引。可以用参考标号10000至100mn标识第二像素,其索引对应于与第二像素相关联的第一像素块的索引(画面40或50的第一像素块的阵列中的行和列)。每个第二像素可以接收在操作93中确定的量化参数,以表示与每个第二像素相关联的第一像素块的量化深度值的范围。由于若干个第二像素接收相同的量化参数(因为至少空间相邻第一像素块共用第二公共(相同)量化参数),所以在对该图像100进行编码时,图像100的压缩效率很高。
为了在发送编码的图像100时降低比特率,可以将标识符映射到第二集合中的量化参数,并且将这些标识符存储在第二像素中而不是量化参数中。已经观察到,几十个量化参数可能足以表示包括在画面40或50的第一像素块中的量化深度值的所有范围。根据该具体实施例,图像100可以在每第二像素中包含一个标识符,该图像使得能够将标识符与第一像素块映射,因为图像100的一个第二像素与画面40或50的一个第一像素块相关联(或相对应)。标识符和量化参数之间的映射可以例如被存储在LUT(查找表)上,诸如结合图11所描述的表110上。
图11示出了根据本原理的非限制性实施例的表格110的示例,该表格将标识符和与画面40或50相关联的量化参数进行映射。
表110包括映射到第二集合的量化参数的值的标识符“Id”的列表,一个标识符映射到表的第一部分111中的一个量化参数,且一个标识符映射到表的第二部分112中的多个量化参数。例如,标识符“Id”可以以8位编码,Id取0到255之间的整数值。
根据一个变型,为了降低发送表110时的比特率,将第二部分112中与一个标识符相关联的多个量化参数的值替换为这些量化参数值映射到的第一部分111的标识符。例如,标识符128映射到第一部分的标识符1、7、0和0,这意味着用Id 128标识的量化参数是值1200和5010,其中1200用第一部分111中的标识符“1”标识,而5010用标识符“7”标识。第二部分112引用标识符列表或表110的第一部分111。根据该变型,标识符映射到的值可以例如以32位编码。
在第一实施例中,将第一部分的尺寸设置为由编码器和解码器共用的固定值。例如,表110尺寸的一半。在图11的示例中,标识符0到127用于表110的第一部分,标识符128到255用于表110的第二部分。第一部分和第二部分之间的比率可以不同,例如,第一部分的标识符的60%或80%,只要该比率是解码器已知的,以便它可以检索到第一部分和第二部分从而正确解码表110中存储的值。
在另一个实施例中,第一部分的尺寸根据场景和图9的步骤92的结果而变化。例如,在一个画面组(Group Of Picture,GOP)上(或一个帧内时间段内),如所述执行模型深度分析,但是表110的第一部分的标识符数量可以是找到的单个模式的数量在GOP上加一。如果模式总数(单个+组合)超过表110的尺寸(例如,256个值),则可以执行智能选择以保持例如256个更具代表性或更接近的模式。然后将第一部分的尺寸设置为保留的单个模式的数量在GOP上加一。该尺寸值是添加到与表100相关联的元数据的信息,因此解码器可以检索第一部分的尺寸以正确解码存储在表110中的值。
图12示出了根据本原理的非限制性实施例的确定画面40或50的单个像素块的多个量化参数的过程的示例。
该过程类似于结合图9所描述的过程,但是适用于包括多个范围的量化深度值的第一像素块,所述范围在量化尺度上不连续。当由第一像素块覆盖的场景的内容包括位于不同深度的场景的对象或对象的部分时,会出现这种情况。考虑到GOP时,在GOP中发生运动时也会出现这种情况。在这种情况下,单个量化参数不足以表示所考虑的第一像素块的整个量化深度值。
第一操作120对应于图9的第一操作90,即,将画面40(或GOP的画面)划分成多个第一像素块。根据图12的示例,考虑了特定第一像素块1204。块1204包括若干个区域1201、1202和1203,每个区域对应于3D场景10的对象的一部分,每个部分处于不同的深度,在对象1201至1203的每个部分之间具有深度间隙。
第二操作121对应于图9的第二操作91,即,将相同的量化函数(例如,量化函数71、72或73)应用于画面40或画面的GOP,特别是应用于图12的示例中的块1204。深度1211、1212和1213的三个范围,分别对应于块1204的区域1201、1202和1203的深度值/数据。这3个范围不连续,这意味着在这些范围之间存在距离间隙,即,在范围1211的上限与范围1212的下限之间存在间隙,并且在范围1212的上限与范围1213的下限之间存在另一间隙。将量化函数应用于这些深度范围使得能够获得三个对应的量化深度值范围,分别用于每个深度值范围1211、1212和1213,在每对量化深度值范围之间具有间隙。
第三操作122对应于图9的第三操作92和第四操作93,即,量化参数的确定。应用相同的过程,但是对于每个量化深度值范围,编码器的位深度仅允许编码值的数量N的一部分。例如,用于确定候选量化参数的集合的编码值的数量为N除以在该块中检测到的深度值的范围的数量,即在图12的示例中为3。M(i,j)个量化因子的组合与每个第一像素块相关联。在这种情况下,与图9相比,量化参数(也可以称为量化器)的定义略有修改。它变为量化尺度的值,以使范围/>覆盖相关的量化深度值的范围。后一个范围/>例如可以称为深度模式,而/>是模式的长度。编码器的动态量N=2D可以在每个模式之间和谐共用,并且每当需要新的量化因子时,即,每次在块中检测到新的深度值范围时,就减小每个量化因子的动态量。在图12的示例中,可以确定候选量化参数的3个范围1221、1222和1223,分别用于每个量化深度值的范围。第一范围1221可以等于[979,1319],第二范围1222可以等于[2809,3149],而第三范围1223可以等于[4359,4699]。然后可以以与结合图9描述的第四操作93相同的方式来确定与候选量化参数的第一集合的子集相对应的量化参数的第二集合。
在3D场景10的示例中,量化参数的示例数量(包含其中包括单个深度范围的单模块和包括若干个深度范围的多模块的情况)接近40(即,低于对应于表110的第一部分111的128),而多模块(即,具有若干个深度范围的块)中涉及的量化参数的不同组合的数量例如接近30(也低于对应于表110的第二部分112的128)。此外,对于多模块,每个块所涉及的量化参数的数量M(i,j)很少超过3。
通过考虑具有256个元素(即,标识符)的图11的量化表110,可以实现存储和参考每个块的不同模式(即,单模和多模)的简洁方式,每个元素均以32位编码。根据其在表中的位置,每个元素的解释可能不同(取决于元素是属于第一部分111还是属于第二部分112)。如果它属于表的前半部分111(位置1至127—0被保留用于空块),则关联的值应解释为32位的整数,该值是量化参数值。如果它属于表的后半部分112(位置128至255),则应将32位解释为最多四个8位的整数的组合,每个整数都介于0和127之间,并指向表的第一部分的相应元素。表的该第二部分112隐式编码最多4个量化器的组合,并且相应的表位置被量化图(即,图像100)引用,以描述多模块。量化图100仅包含0到255之间的值(量化表大小),并且可以由每个元素图(即第二像素)8位编码。
对于多模块,通过对量化图111中对应值的32位中嵌入的4×8位整数中的非零值的数量进行计数,可以推断出该块上涉及的量化器的数量M(i,j)。根据后一个数字,可以直接推断出每个关联模式(单模和多模)的长度。
图13示出了根据本原理的非限制性实施例的对画面40或50的量化深度值进行编码的方法的示例。
在第一操作130中,如在图12的操作120中那样,使用诸如量化函数71、72或73之类的量化函数来量化块的深度范围。可以根据两种不同的方法对获得的量化深度值的范围进行编码,第一方法A具有操作131和132,第二方法B具有操作133和134。
对于方法A,在操作131中以与结合图12的操作122所描述的相同的方式来确定量化参数。如上所述,生成图像100和关联表110。
在操作132中,可以解决画面40的深度值的量化。为此,确定位于(i,j)的块量化参数图像100和关联表110隐式描述了量化参数的第二集合。对于给定的待量化的深度z,调用/>该量化参数使得:
然后,量化深度可以表示为:
如可以在图13的对应于操作132的部分中观察到的,考虑到每个深度范围的量化参数,后一个量化函数对应于用于量化每个深度范围的量化函数qα的“部分”级联。然而,操作132中的简单级联可能会产生一些问题,而深度值的编码可以对每个块使用完整的编码动态量N。实际上,如果在每个部分1322和1323“之内”,qα的特性保证了对视频编码伪像的良好鲁棒性,而在每个级联部分的极限处并非如此。例如,在与部分1323的下限相对应的部分1322的上限1321的等级处,编码伪像可能使量化值从一种深度模式1322切换到另一种深度模式1323(或者相反),并且可能在解码端产生不想要的视觉冲击。例如,在部分1323的下限处的解码的量化深度值中的误差为1可引起使用量化函数的倒数的部分1322而不是量化函数的倒数的部分1323,或者相反。
可以实施方法B以解决方法A的问题。在操作133中,确定量化参数。并非在所有范围之间共用编码值的数量N(如图12的操作122中所述,N除以范围的数量),而是保留一部分编码值,该部分例如被称为DMZ。该部分被保留,是因为该部分的值不能用于根据相关联的量化参数对量化深度值进行编码。例如,保留编码值的数量N的6.25%,即,N=1024中的64个值。这样的修改影响深度模式长度的计算方式。对于后者,到目前为止表示为现在将被计算为/>因此,一方面,此安全区域的引入将每个深度范围(即,每个量化参数)分配的编码值的数量减少了一位,但另一方面,它保证了每个编码深度模式之间的极限或边界处的良好鲁棒性。通过此修改,逐块量化函数略有调整,并最终表示为:
其中,
在操作134中示出了逐块量化函数的结果。纵坐标轴示出了根据与每个深度模式(或每个深度范围)相关联的量化参数编码的量化深度值。从操作134可以清楚地看出,编码值的某些部分DMZ不用于量化深度值的编码,这些部分位于深度模式(深度范围)的极限处。当对编码的量化深度值进行解码时,如果解码的值落在DMZ部分内,则将该值简单地丢弃,这避免了伪像的产生。
图14示出了在通过基于分组的传输协议来发送表示3D场景的深度数据时携带该数据的流的语法的实施例的非限制性示例。图14示出了视频流的示例结构14。该结构在于以独立的语法元素来组织流的容器。该结构可以包括报头部分141,该报头部分是该流的每个语法元素共有的一组数据。例如,报头部分包括有关语法元素的元数据,描述了每个语法元素的特性和作用。报头部分还可以包括用于对画面40、50进行编码的视点的坐标以及关于画面的尺寸和分辨率的信息。该结构包括有效载荷,该有效载荷包括第一语法元素142和至少一个第二语法元素143.第一语法元素142包括表示量化参数的数据,例如图像100和表110(可选地)。
一个或多个第二语法元素143包括几何信息,即深度信息。该一个或多个第二语法元素143包括例如根据量化参数编码的量化深度值。
根据一个变型,一个或多个另外的第二语法元素143包括表示画面30的纹理的数据。
根据另一可选变型,流进一步包括例如以元数据的形式的以下参数中的至少一个:
-DMZ值;
-计算量化函数所需的参数,例如α和zmin;
-编码器位深度允许的编码值的数量N。
针对每个GOP,可以发送以下参数或它们的至少一部分(例如,DMZ值或量化函数的参数)。根据一个变型,这些参数被存储在解码器处并且不被发送。
出于说明目的,在ISOBMFF文件格式标准的上下文中,通常会在moov类型的框内的ISOBMFF轨道中引用纹理补片、几何补片、和元数据,而纹理数据和几何数据本身嵌入在mdat类型的媒体数据框内。
在解码侧,检索上述元数据集,并将其用于对接收到的深度图集(atlases)的每个块进行去量化。更确切地说,对于每个块(i,j),所需量化参数(又称为量化因子)的集合是从量化表110和图以及相关联的模式长度中推导出的。令q为待去量化的量化深度。请注意,kz,0≤kz<M(i,j)使得:
(如前所述,其中,)。令/> 为关联的量化器,则与画面40或50的第一像素(i,j)相关联的深度值z可以被去量化为:
zα是量化函数qα的倒数。
后一个示例对应于实现DMZ的方法。对于不使用DMZ的方法,相同的公式适用于DMZ=0的情况。
图15示出了可以被配置为实现结合图9、图12、图13、图16、和/或图17描述的方法的设备15的示例架构。该设备15可以被配置为图6的编码器61或解码器63。
该设备15包含以下元件,这些元件通过数据和地址总线151链接在一起:
-微处理器152(或CPU),例如,DSP(数字信号处理器);
-ROM(只读存储器)153;
-RAM(随机存取存储器)154;
-存储接口155;
-I/O接口156,用于接收来自应用程序的要发送的数据;和
-电源,例如电池。
根据一个示例,电源在设备外部。在每个提到的存储器中,说明书中使用的“寄存器”一词可能对应于容量较小(一些比特位)的区域,也可能对应于非常大的区域(例如,整个程序或大量接收或解码的数据)。ROM 153至少包括程序和参数。ROM 153可以存储算法和指令,以执行根据本原理的技术。当开启时,CPU 152将程序上载到RAM中并执行相应的指令。
RAM 154在寄存器中包括由CPU 152执行并在开启设备15之后上载的程序、寄存器中的输入数据、寄存器中该方法的不同状态的中间数据、以及寄存器中其他用于执行该方法的变量。
本文描述的实施方式可以例如由方法或过程、装置、计算机程序产品、数据流、或信号来实现。即使在上下文中仅讨论了单一的实施方式(例如,仅讨论了作为方法或设备),所讨论的特征的实施方式也可以由其他形式(例如程序)来实现。装置可以例如以适当的硬件、软件、和固件来实现。方法可以在例如诸如处理器之类的装置中实现,处理器通常指的是处理设备,例如包括计算机、微处理器、集成电路、或可编程逻辑设备。处理器还包括通信设备,例如计算机、手机、便携式/个人数字助理(“PDA”)、以及其他有助于终端用户之间信息通信的设备。
根据图6的编码过程或编码器61的示例,三维场景的深度数据是从源中获得的。例如,该源属于包含以下内容的集合:
-本地存储器(153或154),例如:视频存储器或RAM(随机存取存储器)、闪存、ROM(只读存储器)、硬盘;
-存储接口(155),例如:大容量存储器、RAM、闪存、ROM、光盘、或磁性载体的接口;
-通信接口(156),例如:有线接口(例如,总线接口、广域网接口、局域网接口)或无线接口(例如,IEEE 802.11接口或接口);和
-用户界面,例如:图形用户界面(Graphical User Interface),使用户能够输入数据。
根据图6的解码过程或解码器63的示例,该流被发送到目的地。具体而言,该目的地属于包含以下内容的集合:
-本地存储器(153或154),例如:视频存储器或RAM、闪存、硬盘;
-存储接口(155),例如:大容量存储器、RAM、闪存、ROM、光盘、或磁性载体的接口;和
-通信接口(156),例如:有线接口(例如,总线接口(诸如USB(通用串行总线))、广域网接口、局域网接口、HDMI接口(高清晰度多媒体接口))或无线接口(例如,IEEE 802.11接口、或/>接口)。
根据编码过程或编码器的示例,将包括表示3D场景深度的数据的比特流发送到目的地。作为一个示例,将比特流存储在本地或远程存储器中,例如存储在视频存储器或RAM、硬盘中。在一个变型中,比特流被发送到存储接口中,例如,大容量存储器、闪存、ROM、光盘、或磁性载体的接口,和/或通过通信接口发送,例如,点对点链接、通信总线、点对多点链接、或广播网络的接口。
根据图6的解码过程或解码器或呈现器63的示例,从源中获得比特流。示例性地,从本地存储器,例如,从视频存储器、RAM、ROM、闪存、或硬盘中读取比特流。在一个变型中,从存储接口,例如,大容量存储器、RAM、ROM、闪存、光盘、或磁性载体的接口中接收比特流,和/或从通信接口,例如,点对点链接、总线、点对多点链接、或广播网络的接口中接收比特流。
根据示例,设备15被配置为实现结合图9、图12、图13、图16、和/或图17所描述的方法,并且属于包括以下内容的集合:
-移动设备;
-通信设备;
-游戏设备;
-平板(或平板电脑);
-笔记本电脑;
-静态相机;
-摄像机;
-编码芯片;
-服务器(例如,广播服务器、视频点播服务器、或Web服务器)。
图16示出了根据本原理的非限制性实施例的一种用于编码表示3D场景(例如,3D场景10)的深度的数据的方法。该方法可以例如在编码器61和/或设备15中实现。可以更新设备15的不同参数。例如,可以从源中获得3D场景,可以在3D场景的空间中确定一个或多个视点,可以初始化与(多个)投影映射相关的参数。
在第一操作161中,将表示深度的数据(例如,画面40或50的视点与从该视点可见的3D场景的点之间的距离)进行量化,从而生成量化深度值的数量。根据深度范围和量化函数,量化深度值的数量可以很大,例如大于5000,大于50000或更大。在任何情况下,量化深度值的数量都大于或远大于用于对深度数据进行编码的编码器的编码位深度所允许的编码值的数量N。例如,编码值的数量等于256个值(位深度为8位)或等于1024(位深度为10位)。可选地,用于量化深度数据的量化函数可以是具有量化误差的函数,该量化误差解释了深度和人类视觉感知,深度越大,量化误差越大。
在第二操作162中,为包括3D场景的深度数据或3D场景的深度数据的至少一部分的画面40或50的每个第一像素块确定候选量化参数地第一集合(例如,根据确定的视点)。候选量化参数的值可以用作对量化深度值的范围内的量化深度值进行编码的参考值,该范围由其下限zmin和上限zmax定义。第一集合包括可用作参考值的所有可能值。量化深度值的范围的候选量化参数可以例如对应于用于值范围的编码的起始值或初始值。根据编码值的数量N确定第一集合,即,由等于候选量化参数的值的下限和等于候选量化参数的所述值+(N-1)的上限所定义的范围覆盖了所述候选量化参数表示的量化深度值的范围。
在第三操作163中,将量化参数的第二集合确定为在操作162中获得的第一集合的子集。量化参数的第二集合包括可用于表示画面40或50的所有块的量化深度值的所有范围的量化参数的最小数量。候选量化参数的选择可以基于第一集合之间的交集,从而最小化所选候选量化参数的数量。可以将第二集合的至少一部分的相同量化参数用于与若干个第一像素块相关联,即,可以表示量化深度值的多个不同范围。
在第四操作164中,对量化参数的第二集合进行编码,例如,在包括分别与画面40或50的第一像素块相关联的第二像素的图像的形式下,每个第二像素包括一个或多个量化参数,该量化参数用作对包括在相关联的第一像素块中的量化深度值的一个或多个范围进行编码的参考。根据一种变型,第二集合中的量化参数每个由唯一的标识符标识,每个第二像素包括用于标识与相应的第一像素块相关联的一个或多个量化参数的一个或多个标识符。根据该变型,还对映射标识符列表与量化参数的表进行编码。根据另一变型,该表包括每个映射到单个量化参数的第一标识符的第一列表和每个映射到多个第一标识符的第二标识符的第二列表。有利地,量化参数的第二集合例如使用放气(deflate)压缩算法或运行游程编码算法进行无损编码。表格110也有利地被无损编码。
在第五操作165中,根据量化参数的第二集合对画面40或50的每个第一像素块的量化深度值进行编码。换句话说,每个块的量化深度值的每个范围根据其相关的第二集合的量化参数进行编码。根据确定的格式,例如根据HEVC/H265:“《ITU-T H.265 ITU电信标准化部门(2014年10月),H系列:视听和多媒体系统》,视听服务基础设施–运动视频编码,高效视频编码,ITU-T H.265建议书”,或根据AV1,量化深度值例如被编码或格式化为容器或文件的轨道。该容器例如对应于ISOBMFF(ISO基本媒体文件格式,ISO/IEC 14496-12-MPEG-4Part 12)文件。
根据一种变型,画面40或50是画面组(GOP)的一部分,根据相同的第二集合对GOP的深度数据进行编码。根据该变型,针对每个GOP仅需要将第二集合发送一次。
根据另一变型,该方法包括发送包括编码的第二集合和编码的量化深度值的比特流。
图17示出了根据本原理的非限制性实施例的一种用于解码表示3D场景(例如3D场景10)的深度的数据的方法。该方法可以例如在解码器63和/或设备15中实现。
在第一操作171中,例如从接收到的比特流中解码量化参数的集合。该集合的一个或多个量化参数与画面40或50的每个第一像素块相关联,该集合的量化参数的至少一部分是画面40或50的多个第一像素块所共有的。
在第二操作172中,根据与每个第一像素块相关联的一个或多个量化参数,对与画面40或50的第一像素相关联的量化深度值进行编码。解码的量化深度值的数量大于用于对量化的深度值进行编码的编码器的编码位深度所允许的编码值的数量N。
本公开自然不限于先前描述的实施例。
具体而言,本公开不限于用于编码/解码表示3D场景深度的数据的方法和设备,而是还扩展到用于生成包括编码的数据的比特流的方法,并扩展到实现这些方法的任何设备,尤其是包括至少一个CPU和/或至少一个GPU的任何设备。
本公开还涉及一种用于显示从比特流的解码的数据中呈现的图像的方法(和配置的设备)。
本公开还涉及一种用于发送和/或接收比特流的方法(和配置的设备)。
本文描述的实施方式可以例如由方法或过程、装置、计算机程序产品、数据流、或信号来实现。即使在上下文中仅讨论了单一的实施方式(例如,仅讨论了作为方法或设备),所讨论的特征的实施方式也可以由其他形式(例如程序)来实现。装置可以例如以适当的硬件、软件、和固件来实现。方法可以在例如诸如处理器之类的装置中实现,处理器通常指的是处理设备,例如包括计算机、微处理器、集成电路、或可编程逻辑设备。处理器还包括通信设备,例如智能手机、平板电脑、计算机、手机、便携式/个人数字助理(“PDA”)、以及其他有助于终端用户之间信息通信的设备。
本文描述的各种过程和特征的实施方式可以体现在各种不同的设备或应用中,尤其是例如与数据编码、数据解码、视图生成、纹理处理、以及图像和相关的纹理信息和/或深度信息的其他处理过程相关联的设备或应用中。此类设备的示例包括编码器、解码器、用于处理解码器的输出的后处理器、向编码器提供输入的预处理器、视频编码器、视频解码器、视频编解码器、Web服务器、机顶盒、笔记本电脑、个人计算机、手机、PDA、和其他通信设备。应当清楚的是,设备可以是移动的,甚至可以安装在移动车辆中。
另外,可以通过由处理器执行的指令来实现所述方法,并且可以将这样的指令(和/或由实现方式产生的数据值)存储在处理器可读介质中,例如,集成电路、软件载体、或其他存储设备中;其他存储设备例如可以是硬盘、光盘(CD)、光盘(例如DVD,通常称为数字通用盘或数字视频盘)、随机存取存储器(RAM)、或只读存储器(ROM)。指令可以形成有形地体现在处理器可读介质上的应用程序。指令可以是在例如硬件、固件、软件、或其组合中。指令可以在例如操作系统、单独的应用程序、或两者的组合中找到。因此,处理器的特征可以在于,例如,被配置为执行过程的设备和包括具有用于执行过程的指令的处理器可读介质(诸如存储设备)的设备。此外,除了指令之外或者代替指令,处理器可读介质还可以存储由实施方式产生的数据值。
对于本领域技术人员将显然的是,实施方式中可以产生各种信号,这些信号被格式化以携带例如可以被存储或发送的信息。该信息可以包括例如用于执行方法的指令或由所描述的实施方式之一产生的数据。例如,信号可以被格式化以携带用于写入或读取所描述的实施例的语法的规则作为数据,或者携带由所描述的实施例写入的实际语法值作为数据。这样的信号可以被格式化为例如电磁波(例如,使用频谱的射频部分)或基带信号。格式化可包括例如对数据流进行编码并且利用编码的数据流来调制载波。信号所携带的信息可以是例如模拟信息或数字信息。众所周知,该信号可以通过各种不同的有线或无线链路传输。该信号可以存储在处理器可读介质上。
已经描述了许多实施方式。然而,可以理解的是,可以对其进行各种修改。例如,不同实施方式的元素可以被组合、补充、修改、或移除,以产生其他实施方式。另外,本领域普通技术人员可以理解的是,可以用其他结构和过程代替所公开的结构和过程,并且所得到的实施方式将以至少基本上相同的方法执行至少基本上相同的功能,以至少实现与所公开的实施方式基本相同的结果。因此,本申请考虑了这些和其他实施方式。
Claims (28)
1.一种对表示3D场景深度的数据进行编码的方法,该方法包括:
-在量化深度值的第一范围内对所述数据进行量化,所述第一范围包括多于编码位深度允许的值的数量;
-对于包括所述数据的画面的每个第一像素块,确定候选参数的第一集合,候选参数定义所述第一范围内值的候选范围,所述候选范围包括从所述候选参数开始的所述值的数量使得量化深度值被包括在所述候选范围内;
-将候选参数的第二集合确定为关于每个第一像素块确定的每个第一集合的并集的子集,所述第二集合包括所述块的多个块共有的所述候选参数,所述第二集合的一个或多个候选参数与所述画面的每个第一像素块相关联;
-对所述候选参数的第二集合进行编码;以及
-基于所述候选参数的第二集合对所述量化深度值进行编码。
2.根据权利要求1所述的方法,其中,对映射到所述候选参数的第二集合的标识符列表进一步编码,所述候选参数的第二集合是根据所述标识符列表进行编码的。
3.根据权利要求2所述的方法,其中,所述标识符列表包括每个映射到所述第二集合的一个候选参数的第一标识符和每个映射到多个所述第一标识符的第二标识符,所述候选参数的第二集合是通过对包括与画面的第一像素块的数量相对应的第二像素的数量的图像进行编码来编码的,每个第二像素包括:
●所述列表的第一标识符,当单个候选参数与第一像素块相关联时,用于标识与对应于所述每个第二像素的所述第一像素块相关联的候选参数;或者
●所述列表的第二标识符,当多个候选参数与第一像素块相关联时,用于标识与对应于所述每个第二像素的所述第一像素块相关联的候选参数。
4.根据权利要求3所述的方法,其中,所述列表与指示该列表中的第一标识符的数量的值相关联。
5.根据权利要求1至4中的一项所述的方法,其中,根据具有误差的函数对所述数据进行量化,深度越大,误差越大,该误差说明了深度和人类视觉感知。
6.根据权利要求1至4中的一项所述的方法,其中,将所述值的数量分配给所述每个第一像素块,以对被包括在所述每个第一像素块中的量化深度值进行编码,所述值的数量的第一部分被分配给对被包括在所述每个第一像素块中的量化深度值的每个范围的编码,编码的量化深度值的两个范围由所述值的数量的第二部分分开,所述第二部分不用于量化深度值的编码。
7.根据权利要求1至4中的一项所述的方法,其中,所述画面是一组时间上连续的画面的一部分,所述候选参数的第二集合对于所述一组时间上连续的画面的每个画面是共有的。
8.一种对表示3D场景深度的数据进行解码的方法,该方法包括:
-对参数的集合进行解码,所述集合的一个或多个参数与画面的每个第一像素块相关联,所述集合的参数的至少一部分是所述画面的多个第一像素块共有的;
-根据与每个第一像素块相关联的所述一个或多个参数,对被包括在所述画面的所述第一像素中的量化深度值进行解码,所解码的量化深度值的数量大于编码位深度允许的值的数量。
9.根据权利要求8所述的方法,其中,对映射到所述参数的集合的标识符列表进一步解码,所述参数的集合是根据所述标识符列表进行解码的。
10.根据权利要求9所述的方法,其中,所述标识符列表包括每个映射到所述集合的一个参数的第一标识符和每个映射到多个所述第一标识符的第二标识符,所述参数的集合是从包括与画面的第一像素块的数量相对应的第二像素的数量的图像中解码的,每个第二像素包括:
●所述列表的第一标识符,当单个参数与第一像素块相关联时,用于标识与对应于所述每个第二像素的所述第一像素块相关联的参数;或者·所述列表的第二标识符,当多个参数与第一像素块相关联时,用于标识与对应于所述每个第二像素的所述第一像素块相关联的参数。
11.根据权利要求10所述的方法,其中,所述列表与指示该列表中的第一标识符的数量的值相关联。
12.根据权利要求8至11中的一项所述的方法,其中,根据具有误差的函数从已解码的量化深度值中获得所述数据,深度越大,误差越大,该误差说明了深度和人类视觉感知。
13.根据权利要求8至11中的一项所述的方法,其中,所述画面是一组时间上连续的画面的一部分,所述参数的集合对于所述一组时间上连续的画面的每个画面是共有的。
14.一种非暂时性处理器可读介质,其上存储有指令,所述指令用于使处理器至少执行根据权利要求1至7中的一项所述的方法的步骤。
15.一种非暂时性处理器可读介质,其上存储有指令,所述指令用于使处理器至少执行根据权利要求8至13中的一项所述的方法的步骤。
16.一种被配置为对表示3D场景深度的数据进行编码的设备,该设备包括与至少一个处理器相关联的存储器,该至少一个处理器被配置为:
-在量化深度值的第一范围内对所述数据进行量化,所述第一范围包括多于编码位深度允许的值的数量;
-对于包括所述数据的画面的每个第一像素块,确定候选参数的第一集合,候选参数定义所述第一范围内值的候选范围,所述候选范围包括从所述候选参数开始的所述值的数量使得量化深度值被包括在所述候选范围内;
-将候选参数的第二集合确定为关于每个第一像素块确定的每个第一集合的并集的子集,所述第二集合包括所述块的多个块共有的所述候选参数,所述第二集合的一个或多个候选参数与所述画面的每个第一像素块相关联;
-对所述候选参数的第二集合进行编码;以及
-基于所述候选参数的第二集合对所述量化深度值进行编码。
17.根据权利要求16所述的设备,其中,对映射到所述候选参数的第二集合的标识符列表进一步编码,所述候选参数的第二集合是根据所述标识符列表进行编码的。
18.根据权利要求17所述的设备,其中,所述标识符列表包括每个映射到所述第二集合的一个候选参数的第一标识符和每个映射到多个所述第一标识符的第二标识符,所述候选参数的第二集合是通过对包括与画面的第一像素块的数量相对应的第二像素的数量的图像进行编码来编码的,每个第二像素包括:
·所述列表的第一标识符,当单个候选参数与第一像素块相关联时,用于标识与对应于所述每个第二像素的所述第一像素块相关联的候选参数;或者
·所述列表的第二标识符,当多个候选参数与第一像素块相关联时,用于标识与对应于所述每个第二像素的所述第一像素块相关联的候选参数。
19.根据权利要求18所述的设备,其中,所述列表与指示该列表中的第一标识符的数量的值相关联。
20.根据权利要求16至19中的一项所述的设备,其中,根据具有误差的函数对所述数据进行量化,深度越大,误差越大,该误差说明了深度和人类视觉感知。
21.根据权利要求16至19中的一项所述的设备,其中,将所述值的数量分配给所述每个第一像素块,以对被包括在所述每个第一像素块中的量化深度值进行编码,所述值的数量的第一部分被分配给对被包括在所述每个第一像素块中的量化深度值的每个范围的编码,编码的量化深度值的两个范围由所述值的数量的第二部分分开,所述第二部分不用于量化深度值的编码。
22.根据权利要求16至19中的一项所述的设备,其中,所述画面是一组时间上连续的画面的一部分,所述候选参数的第二集合对于所述一组时间上连续的画面的每个画面是共有的。
23.一种被配置为对表示3D场景深度的数据进行解码的设备,该设备包括与至少一个处理器相关联的存储器,该至少一个处理器被配置为:
-对参数的集合进行解码,所述集合的一个或多个参数与画面的每个第一像素块相关联,所述集合的参数的至少一部分是所述画面的多个第一像素块共有的;
-根据与每个第一像素块相关联的所述一个或多个参数,对被包括在所述画面的所述第一像素中的量化深度值进行解码,所解码的量化深度值的数量大于编码位深度允许的值的数量。
24.根据权利要求23所述的设备,其中,对映射到所述参数的集合的标识符列表进一步解码,所述参数的集合是根据所述标识符列表进行解码的。
25.根据权利要求24所述的设备,其中,所述标识符列表包括每个映射到所述集合的一个参数的第一标识符和每个映射到多个所述第一标识符的第二标识符,所述参数的集合是从包括与画面的第一像素块的数量相对应的第二像素的数量的图像中解码的,每个第二像素包括:
·所述列表的第一标识符,当单个参数与第一像素块相关联时,用于标识与对应于所述每个第二像素的所述第一像素块相关联的参数;或者
·所述列表的第二标识符,当多个参数与第一像素块相关联时,用于标识与对应于所述每个第二像素的所述第一像素块相关联的参数。
26.根据权利要求25所述的设备,其中,所述列表与指示该列表中的第一标识符的数量的值相关联。
27.根据权利要求23至26中的一项所述的设备,其中,根据具有误差的函数从已解码的量化深度值中获得所述数据,深度越大,误差越大,该误差说明了深度和人类视觉感知。
28.根据权利要求23至26中的一项所述的设备,其中,所述画面是一组时间上连续的画面的一部分,所述参数的集合对于所述一组时间上连续的画面的每个画面是共有的。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP18305462.6A EP3554074A1 (en) | 2018-04-13 | 2018-04-13 | Methods and apparatus for depth encoding and decoding |
EP18305462.6 | 2018-04-13 | ||
PCT/US2019/026433 WO2019199714A1 (en) | 2018-04-13 | 2019-04-09 | Methods and apparatus for depth encoding and decoding |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112219398A CN112219398A (zh) | 2021-01-12 |
CN112219398B true CN112219398B (zh) | 2023-12-05 |
Family
ID=62046829
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980036964.2A Active CN112219398B (zh) | 2018-04-13 | 2019-04-09 | 用于深度编码和解码的方法和装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11671596B2 (zh) |
EP (2) | EP3554074A1 (zh) |
JP (1) | JP7445601B2 (zh) |
CN (1) | CN112219398B (zh) |
WO (1) | WO2019199714A1 (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7320352B2 (ja) * | 2016-12-28 | 2023-08-03 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 三次元モデル送信方法、三次元モデル受信方法、三次元モデル送信装置及び三次元モデル受信装置 |
JP7278719B2 (ja) * | 2018-06-27 | 2023-05-22 | キヤノン株式会社 | 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム |
WO2020072842A1 (en) * | 2018-10-05 | 2020-04-09 | Interdigital Vc Holdings, Inc. | Methods and apparatus for depth encoding and decoding |
US11956478B2 (en) * | 2019-01-09 | 2024-04-09 | Tencent America LLC | Method and apparatus for point cloud chunking for improved patch packing and coding efficiency |
EP3713237A1 (en) * | 2019-03-20 | 2020-09-23 | InterDigital VC Holdings, Inc. | A method and apparatus for depth encoding and decoding |
CN113785590A (zh) * | 2019-05-10 | 2021-12-10 | 松下电器(美国)知识产权公司 | 三维数据编码方法、三维数据解码方法、三维数据编码装置及三维数据解码装置 |
KR102476057B1 (ko) | 2019-09-04 | 2022-12-09 | 주식회사 윌러스표준기술연구소 | 클라우드 가상 현실을 위한 imu 센서 데이터를 활용한 비디오 인코딩 및 디코딩 가속 방법 및 장치 |
KR20220058534A (ko) * | 2019-09-14 | 2022-05-09 | 바이트댄스 아이엔씨 | 크로마 디블로킹 필터링을 위한 양자화 파라미터 |
CN114651442A (zh) | 2019-10-09 | 2022-06-21 | 字节跳动有限公司 | 视频编解码中的跨分量适应性回路滤波 |
EP4029264A4 (en) | 2019-10-14 | 2022-11-23 | ByteDance Inc. | JOINT CODING OF CHROMINANCE RESIDUE AND FILTERING IN VIDEO PROCESSING |
EP4055827A4 (en) | 2019-12-09 | 2023-01-18 | ByteDance Inc. | USING QUANTIFICATION GROUPS IN VIDEO CODING |
WO2021138293A1 (en) | 2019-12-31 | 2021-07-08 | Bytedance Inc. | Adaptive color transform in video coding |
GB2605965A (en) * | 2021-04-16 | 2022-10-26 | Canon Kk | Methods and devices for improving storage and transmission of uncompressed data while using a standard format |
CN113747155B (zh) * | 2021-09-06 | 2022-08-19 | 中国电信股份有限公司 | 特征量化方法和装置、编码器、通信系统 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE602004014901D1 (de) * | 2004-04-29 | 2008-08-21 | Mitsubishi Electric Corp | Adaptive Quantisierung einer Tiefenkarte |
KR101642965B1 (ko) | 2009-12-21 | 2016-07-26 | 삼성전자주식회사 | 비트 심도 감소를 이용한 깊이 영상 처리 장치 및 방법 |
US9363535B2 (en) | 2011-07-22 | 2016-06-07 | Qualcomm Incorporated | Coding motion depth maps with depth range variation |
RU2571511C2 (ru) | 2011-07-22 | 2015-12-20 | Квэлкомм Инкорпорейтед | Кодирование карт глубин движения с изменением диапазона глубины |
US20130069968A1 (en) * | 2011-09-16 | 2013-03-21 | Qualcomm Mems Technologies, Inc. | Methods and apparatus for hybrid halftoning of an image |
CN105009575B (zh) * | 2013-03-13 | 2018-12-07 | 华为技术有限公司 | 一种基于子范围编码深度查询表的方法 |
WO2014168642A1 (en) | 2013-04-12 | 2014-10-16 | Intel Corportation | Simplified depth coding with modified intra-coding for 3d video coding |
AU2013206815A1 (en) * | 2013-07-11 | 2015-03-05 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding video data |
US9510002B2 (en) * | 2013-09-09 | 2016-11-29 | Apple Inc. | Chroma quantization in video coding |
KR20170069957A (ko) * | 2014-10-08 | 2017-06-21 | 엘지전자 주식회사 | 3d 비디오 코딩에서 카메라 파라미터 처리 방법 및 장치 |
WO2016164235A1 (en) * | 2015-04-06 | 2016-10-13 | Dolby Laboratories Licensing Corporation | In-loop block-based image reshaping in high dynamic range video coding |
EP3466072A4 (en) * | 2016-05-27 | 2019-04-10 | Sharp Kabushiki Kaisha | SYSTEMS AND METHOD FOR VARIATING QUANTIZING PARAMETERS |
US11019339B2 (en) * | 2017-07-12 | 2021-05-25 | Futurewei Technologies, Inc. | Fractional quantization parameter offset in video compression |
KR102432486B1 (ko) * | 2017-11-22 | 2022-08-12 | 삼성전자주식회사 | 비디오 복호화 장치 및 이를 포함하는 컴퓨팅 시스템 및 비디오 복호화 방법 |
-
2018
- 2018-04-13 EP EP18305462.6A patent/EP3554074A1/en not_active Withdrawn
-
2019
- 2019-04-09 CN CN201980036964.2A patent/CN112219398B/zh active Active
- 2019-04-09 JP JP2020555057A patent/JP7445601B2/ja active Active
- 2019-04-09 EP EP19718049.0A patent/EP3777154A1/en active Pending
- 2019-04-09 WO PCT/US2019/026433 patent/WO2019199714A1/en active Application Filing
- 2019-04-09 US US17/047,251 patent/US11671596B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP3554074A1 (en) | 2019-10-16 |
CN112219398A (zh) | 2021-01-12 |
JP2021521678A (ja) | 2021-08-26 |
US11671596B2 (en) | 2023-06-06 |
WO2019199714A1 (en) | 2019-10-17 |
EP3777154A1 (en) | 2021-02-17 |
US20210385454A1 (en) | 2021-12-09 |
JP7445601B2 (ja) | 2024-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112219398B (zh) | 用于深度编码和解码的方法和装置 | |
KR102600011B1 (ko) | 3 자유도 및 볼류메트릭 호환 가능한 비디오 스트림을 인코딩 및 디코딩하기 위한 방법들 및 디바이스들 | |
CN111615715A (zh) | 编码/解码体积视频的方法、装置和流 | |
US20220327743A1 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method | |
KR20220069086A (ko) | 볼류메트릭 비디오를 인코딩, 송신 및 디코딩하기 위한 방법 및 장치 | |
US20230362409A1 (en) | A method and apparatus for signaling depth of multi-plane images-based volumetric video | |
US12069301B2 (en) | Method and apparatus for encoding and decoding volumetric video | |
WO2020072842A1 (en) | Methods and apparatus for depth encoding and decoding | |
CN114930812B (zh) | 用于解码3d视频的方法和装置 | |
US20230224501A1 (en) | Different atlas packings for volumetric video | |
US12101507B2 (en) | Volumetric video with auxiliary patches | |
CN114503554B (zh) | 用于传送体积视频内容的方法和装置 | |
JP7561135B2 (ja) | 深度の符号化および復号の方法および装置 | |
US20220345681A1 (en) | Method and apparatus for encoding, transmitting and decoding volumetric video | |
WO2020185529A1 (en) | A method and apparatus for encoding and decoding volumetric video | |
WO2019185983A1 (en) | A method, an apparatus and a computer program product for encoding and decoding digital volumetric video | |
RU2809180C2 (ru) | Способ и аппаратура для кодирования и декодирования глубины |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |