RU2807582C2 - Method, device and stream for 3d video format - Google Patents

Method, device and stream for 3d video format Download PDF

Info

Publication number
RU2807582C2
RU2807582C2 RU2020135597A RU2020135597A RU2807582C2 RU 2807582 C2 RU2807582 C2 RU 2807582C2 RU 2020135597 A RU2020135597 A RU 2020135597A RU 2020135597 A RU2020135597 A RU 2020135597A RU 2807582 C2 RU2807582 C2 RU 2807582C2
Authority
RU
Russia
Prior art keywords
segments
data
scene
segment
track
Prior art date
Application number
RU2020135597A
Other languages
Russian (ru)
Other versions
RU2020135597A (en
Inventor
Жульен ФЛЕРО
Бертран ШЮПО
Тьерри ТАПИ
Франк ТЮДОР
Original Assignee
ИНТЕРДИДЖИТАЛ ВиСи ХОЛДИНГЗ, ИНК.
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
Priority claimed from EP18305372.7A external-priority patent/EP3547704A1/en
Application filed by ИНТЕРДИДЖИТАЛ ВиСи ХОЛДИНГЗ, ИНК. filed Critical ИНТЕРДИДЖИТАЛ ВиСи ХОЛДИНГЗ, ИНК.
Publication of RU2020135597A publication Critical patent/RU2020135597A/en
Application granted granted Critical
Publication of RU2807582C2 publication Critical patent/RU2807582C2/en

Links

Images

Abstract

FIELD: volumetric video content.
SUBSTANCE: invention is related in particular to encoding and/or formatting of data representing volumetric content. According to the proposed solution, the first data representing the texture of the 3D scene is encoded into at least the first track, the second data representing depth associated with points of the 3D scene is encoded into at least a second track, the instructions for retrieving at least a portion of said first data and second data from at least a portion of said first track and second track is encoded into at least a third track. The first data is located in a plurality of first segments into which a first frame is divided, with a portion of the 3D scene associated with each first segment of the plurality of first segments. The second data is located in a plurality of second segments into which the second frame is divided, wherein the total number of second segments of the second frame is greater than the total number of first segments of the first frame. The resulting rendered content may be presented on an end user's viewing device, such as an HMD, according to a viewpoint orientation consistent with the instructions.
EFFECT: efficient encoding/decoding of data representing volumetric content.
20 cl, 21 dwg

Description

1. Область техники1. Field of technology

Настоящее изобретение относится к области контента объемного видео. Настоящее изобретение также следует понимать в контексте кодирования и/или форматирования данных, представляющих объемный контент, например, для визуализации на устройствах конечного пользователя, таких как мобильные устройства или Дисплеи, Устанавливаемые на Голове.The present invention relates to the field of volumetric video content. The present invention should also be understood in the context of encoding and/or formatting data representing rich content, for example, for display on end user devices such as mobile devices or Head Mounted Displays.

2. Уровень техники2. State of the art

Данный раздел предназначен для ознакомления читателя с различными аспектами области техники, которые могут быть связаны с различными аспектами настоящего изобретения, которые описаны и/или заявлены ниже. Предполагается, что данное обсуждение будет полезно при предоставлении читателю информации об уровне техники, чтобы способствовать более хорошему пониманию различных аспектов настоящего изобретения. Соответственно, эти утверждения следует читать в этом свете, а не в качестве допущений предшествующего уровня техники.This section is intended to familiarize the reader with various aspects of the art that may be associated with various aspects of the present invention that are described and/or claimed below. It is intended that this discussion will be useful in providing the reader with background information to facilitate a better understanding of the various aspects of the present invention. Accordingly, these statements should be read in that light and not as statements of prior art.

В последнее время наблюдается рост доступного контента с большим полем обзора (вплоть до 360°). Такой контент потенциально не полностью виден пользователю, просматривающему контент на устройствах демонстрации с погружением, таких как Дисплеи, Устанавливаемые на Голове, интеллектуальные очки, экраны ПК, планшеты, интеллектуальные телефоны и аналогичное. Это означает, что в заданный момент пользователь может просматривать только часть контента. Однако обычно пользователь может перемещаться по контенту с помощью различных средств, таких как перемещение головы, перемещение мыши, сенсорный экран, голос и аналогичное. Обычно желательно кодировать и декодировать этот контент.Recently, there has been an increase in the availability of content with a large field of view (up to 360°). Such content is potentially not fully visible to the user viewing the content on immersive display devices such as Head-Mounted Displays, smart glasses, PC screens, tablets, smart phones and the like. This means that a user can only view part of the content at a given time. Typically, however, the user can navigate the content through various means, such as moving the head, moving the mouse, touch screen, voice, and the like. It is usually desirable to encode and decode this content.

Видео с погружением, также называемое 360° плоским видео, позволяет пользователю просматривать все вокруг себя посредством поворотов его головы вокруг неподвижной точки зрения. Повороты обеспечивают только восприятие с 3 Степенями Свободы (3DoF). Даже если 3DoF видео является достаточным для первого всенаправленного восприятия видео, например, с использованием устройства Дисплея, Устанавливаемого на Голове (HMD), то 3DoF видео может быстро стать разочарованием для зрителя, который бы ожидал большей свободы, например, путем восприятия параллакса. В дополнение, 3DoF также может вызывать головокружение, потому что пользователь никогда не осуществляет только поворот своей головы, а перемещает свою голову также в трех направлениях, причем эти перемещения не воспроизводятся в восприятии 3DoF видео.Immersive video, also called 360° flat video, allows the user to view everything around them by rotating their head around a stationary point of view. Rotations provide only 3 Degrees of Freedom (3DoF) perception. Even if 3DoF video is sufficient for the first omnidirectional video perception, for example using a Head Mounted Display (HMD) device, 3DoF video can quickly become a disappointment for a viewer who would have expected more freedom, for example through parallax perception. In addition, 3DoF can also cause dizziness because the user never only rotates their head, but also moves their head in three directions, and these movements are not reproduced in the perception of 3DoF video.

Контент с большим полем обзора может, среди прочего, быть сценой трехмерного видеоряда компьютерной графики (3D CGI сцена), облаком точек или видео с погружением. Для создания таких видеороликов с погружением может быть использовано много понятий: Виртуальная Реальность (VR), 360, панорамное, 4π стерадиан, с погружением, всенаправленное или с большим полем зрения, например.The wide field of view content can be, among other things, a 3D computer graphics video scene (3D CGI scene), a point cloud, or an immersive video. Many concepts can be used to create such immersive videos: Virtual Reality (VR), 360, panoramic, 4π steradian, immersive, omnidirectional or wide field of view, for example.

Объемное видео (также известное как видео с 6 Степенями Свободы (6DoF)) является альтернативой 3DoF видео. При просмотре 6DoF видео, в дополнение к поворотам, пользователь также может перемещать свою голову, и даже свое тело, внутри просматриваемого контента и воспринимать параллакс и даже объемы. Такие видеоролики значительно увеличивают ощущение погружения и восприятие глубины сцены, и не допускают головокружения путем обеспечения согласующейся визуальной обратной связи во время перемещений головы. Контент создается посредством специальных датчиков, обеспечивающих одновременную запись цвета и глубины сцены интереса. Использование установки из цветных камер, объединенной с методиками фотограмметрии, является распространенным способом выполнения такой записи.Volumetric video (also known as 6 Degrees of Freedom (6DoF) video) is an alternative to 3DoF video. When watching 6DoF video, in addition to rotation, the user can also move their head, and even their body, within the content being viewed and perceive parallax and even volumes. Such videos significantly increase the sense of immersion and depth perception of a scene, and prevent vertigo by providing consistent visual feedback during head movements. The content is created through special sensors that simultaneously record the color and depth of the scene of interest. The use of a color camera setup combined with photogrammetry techniques is a common way of performing such recording.

При том, что 3DoF видеоролики содержат последовательность изображений, полученных в результате отмены отображения изображений текстуры (например, сферические изображения, кодированные в соответствии с проекционным отображением по широте/долготе или равнопрямоугольным проекционным отображением), 6DoF видеокадры содержат информацию с нескольких точек зрения. Их можно рассматривать в качестве временных рядов из облаков точек, полученных в результате трехмерного захвата. Может рассматриваться два вида объемных видеороликов в зависимости от условий просмотра. Первый (т.е. полный 6DoF) обеспечивает полную свободную навигацию по видеоконтенту, тогда как второй (также известный как 3DoF+) ограничивает пространство просмотра пользователя ограниченным объемом, обеспечивая ограниченное перемещение головы и восприятие параллакса. Этот второй контекст является ценным компромиссом между свободной навигацией и условиями пассивного просмотра сидящего члена аудитории.Whereas 3DoF videos contain a sequence of images resulting from the demapping of texture images (e.g., spherical images encoded according to a latitude/longitude projection mapping or an equirectangular projection mapping), 6DoF video frames contain information from multiple viewpoints. They can be viewed as time series of point clouds obtained from 3D capture. Two types of three-dimensional videos can be considered depending on viewing conditions. The former (i.e., full 6DoF) allows for complete free navigation of video content, while the latter (also known as 3DoF+) limits the user's viewing space to a limited volume, allowing limited head movement and parallax perception. This second context is a valuable compromise between free navigation and the passive viewing environment of a seated audience member.

3DoF видеоролики могут быть кодированы в потоке в качестве последовательности прямоугольных цветных изображений, сформированных в соответствии с выбранным проекционным отображением (например, кубическое проекционное отображение, пирамидальное проекционное отображение или равнопрямоугольное проекционное отображение). Преимущество данного кодирования заключается в использовании общепринятых стандартов обработки изображения и видео. 3DoF+ и 6DoF видеоролики требуют дополнительных данных для кодирования глубины цветных точек облаков точек. Вид визуализации (т.е. 3DoF или объемная визуализация) для объемной сцены неизвестен заранее при кодировании сцены в потоке. На сегодняшний день потоки кодируются для того или иного вида визуализации. Отсутствует поток, и ассоциированные способы и устройства, который может нести данные, представляющие собой объемную сцену, который может быть кодирован один раз и декодирован либо в качестве 3DoF видео, либо в качестве объемного видео (3DoF+ или 6DoF).3DoF videos may be encoded into the stream as a sequence of rectangular color images formed according to a selected projection mapping (eg, cubic projection mapping, pyramidal projection mapping, or equirectangular projection mapping). The advantage of this encoding is the use of generally accepted image and video processing standards. 3DoF+ and 6DoF videos require additional data to encode the depth of the color pixels of the point clouds. The rendering type (i.e., 3DoF or volumetric rendering) for a volumetric scene is not known in advance when the scene is encoded into the stream. Today, streams are coded for one type of visualization or another. There is no stream, and associated methods and devices, that can carry data representing a volumetric scene that can be encoded once and decoded as either 3DoF video or volumetric video (3DoF+ or 6DoF).

Более того, объем данных, которые должны быть транспортированы для, например, визуализации на устройствах конечного пользователя, может быть очень важен, значительно увеличивая потребности в полосе пропускания по сетям.Moreover, the amount of data that must be transported for, for example, visualization on end-user devices can be very important, significantly increasing the bandwidth requirements across networks.

3. Сущность изобретения3. Essence of the invention

Обращения в техническом описании к «одному варианту осуществления», «варианту осуществления», «примерному варианту осуществления», «конкретному варианту осуществления» указывают то, что описанный вариант осуществления может включать в себя конкретный признак, структуру или характеристику, но каждый вариант осуществления не обязательно может включать в себя конкретный признак, структуру или характеристику. Более того, такие фразы не обязательно обращаются к одному и тому же варианту осуществления. Кроме того, когда конкретный признак, структура или характеристика описываются в связи с вариантом осуществления, предполагается, что специалист в соответствующей области техники может повлиять на такой признак, структуру или характеристику в связи с другими вариантами осуществления, описано или нет это в явной форме.References in the technical description to “one embodiment,” “an embodiment,” “an exemplary embodiment,” or “a specific embodiment” indicate that the described embodiment may include a particular feature, structure, or characteristic, but that each embodiment does not may necessarily include a specific feature, structure or characteristic. Moreover, such phrases do not necessarily refer to the same embodiment. Moreover, when a particular feature, structure, or characteristic is described in connection with an embodiment, it is contemplated that one skilled in the relevant art would be able to influence such feature, structure, or characteristic in connection with other embodiments, whether or not it is explicitly described.

Настоящее изобретение относится к способу кодирования данных, представляющих собой 3D сцену, причем способ, содержащий этапы, на которых:The present invention relates to a method for encoding data representing a 3D scene, the method comprising the steps of:

- кодируют, в, по меньшей мере, первую дорожку, первые данные, представляющие собой текстуру 3D сцены, которая видна в соответствии с первой точкой обзора, причем первые данные размещаются во множестве первых сегментов (tile) первого кадра, причем часть 3D сцены связана с каждым первым сегментом из множества первых сегментов;- encoding, into at least a first track, first data representing a texture of the 3D scene that is visible in accordance with the first viewpoint, the first data being located in a plurality of first tiles of the first frame, wherein a portion of the 3D scene is associated with each first segment of the plurality of first segments;

- кодируют, в, по меньшей мере, вторую дорожку, вторые данные, представляющие собой глубину, связанную с точками 3D сцены, причем вторые данные размещаются во множестве вторых сегментов второго кадра, при этом общее количество вторых сегментов второго кадра больше общего количества первых сегментов первого кадра, при этом для каждого первого сегмента по меньшей мере части из множества первых сегментов:- encoding, into at least a second track, second data representing depth associated with points of the 3D scene, wherein the second data is located in a plurality of second segments of the second frame, wherein the total number of second segments of the second frame is greater than the total number of first segments of the first frame, wherein for each first segment at least a portion of the plurality of first segments:

набор вторых сегментов, содержащий по меньшей мере один второй сегмент из множества вторых сегментов, распределяется каждому первому сегменту по меньшей мере части из множества первых сегментов;a set of second segments comprising at least one second segment of the plurality of second segments is allocated to each first segment of at least a portion of the plurality of first segments;

набор по меньшей мере фрагмента (patch) размещается в наборе вторых сегментов, причем каждый фрагмент соответствует двумерной параметризации группы из 3D точек, которые содержатся в части 3D сцены, связанной с каждым первым сегментом, и содержит вторые данные, представляющие собой глубину, связанную с 3D точками группы;a set of at least a patch is located within a set of second segments, each patch corresponding to a two-dimensional parameterization of a group of 3D points that are contained in a portion of the 3D scene associated with each first segment, and comprising second data representing depth associated with the 3D group points;

- кодируют, в, по меньшей мере, третью дорожку, по меньшей мере инструкцию для извлечения по меньшей мере части первых данных и вторых данных из по меньшей мере части по меньшей мере первой дорожки и по меньшей мере второй дорожки.- encoding, into at least the third track, at least an instruction for retrieving at least a portion of the first data and the second data from at least a portion of the at least the first track and at least the second track.

Настоящее изобретение относится к устройству, выполненному с возможностью кодирования данных, представляющих собой 3D сцену, причем устройство содержит память, связанную по меньшей мере с одним процессором, выполненным с возможностью:The present invention relates to a device configured to encode data representing a 3D scene, the device comprising a memory coupled to at least one processor configured to:

- кодирования, в, по меньшей мере, первую дорожку, первых данных, представляющих собой текстуру 3D сцены, которая видна в соответствии с первой точкой обзора, причем первые данные размещаются во множестве первых сегментов первого кадра, причем часть 3D сцены связана с каждым первым сегментом из множества первых сегментов;- encoding, into at least a first track, first data representing a texture of a 3D scene that is visible in accordance with the first viewpoint, the first data being located in a plurality of first segments of the first frame, a portion of the 3D scene being associated with each first segment from a plurality of first segments;

- кодирования, в, по меньшей мере, вторую дорожку, вторых данных, представляющих собой глубину, связанную с точками 3D сцены, причем вторые данные размещаются во множестве вторых сегментов второго кадра, при этом общее количество вторых сегментов второго кадра больше общего количества первых сегментов первого кадра, при этом для каждого первого сегмента по меньшей мере части из множества первых сегментов:- encoding, into at least a second track, second data representing depth associated with points in the 3D scene, the second data being located in a plurality of second segments of the second frame, wherein the total number of second segments of the second frame is greater than the total number of first segments of the first frame, wherein for each first segment at least a portion of the plurality of first segments:

набор вторых сегментов, содержащий по меньшей мере один второй сегмент из множества вторых сегментов, распределяется каждому первому сегменту по меньшей мере части из множества первых сегментов;a set of second segments comprising at least one second segment of the plurality of second segments is allocated to each first segment of at least a portion of the plurality of first segments;

набор по меньшей мере фрагмента размещается в наборе вторых сегментов, причем каждый фрагмент соответствует двумерной параметризации группы из 3D точек, которые содержатся в части 3D сцены, связанной с каждым первым сегментом, и содержит вторые данные, представляющие собой глубину, связанную с 3D точками группы;the set of at least a fragment is located in a set of second segments, each fragment corresponding to a two-dimensional parameterization of a group of 3D points that are contained in a portion of the 3D scene associated with each first segment, and contains second data representing a depth associated with the 3D points of the group;

- кодирования, в, по меньшей мере, третью дорожку, по меньшей мере инструкции для извлечения по меньшей мере части первых данных и вторых данных из по меньшей мере части по меньшей мере первой дорожки и по меньшей мере второй дорожки.- encoding, into at least a third track, at least instructions for retrieving at least a portion of the first data and second data from at least a portion of the at least the first track and at least the second track.

Настоящее изобретение относится к устройству, выполненному с возможностью кодирования данных, представляющих собой 3D сцену, причем устройство содержит:The present invention relates to a device configured to encode data representing a 3D scene, the device comprising:

- кодер, выполненный с возможностью кодирования, в, по меньшей мере, первую дорожку, первых данных, представляющих собой текстуру 3D сцены, которая видна в соответствии с первой точкой обзора, причем первые данные размещаются во множестве первых сегментов первого кадра, причем часть 3D сцены связана с каждым первым сегментом из множества первых сегментов;- an encoder configured to encode, into at least a first track, first data representing the texture of a 3D scene that is visible in accordance with the first viewpoint, the first data being located in a plurality of first segments of the first frame, wherein a portion of the 3D scene associated with each first segment of the plurality of first segments;

- кодер, выполненный с возможностью кодирования, в, по меньшей мере, вторую дорожку, вторых данных, представляющих собой глубину, связанную с точками 3D сцены, причем вторые данные размещаются во множестве вторых сегментов второго кадра, при этом общее количество вторых сегментов второго кадра больше общего количества первых сегментов первого кадра, при этом для каждого первого сегмента по меньшей мере части из множества первых сегментов:- an encoder configured to encode, into at least a second track, second data representing depth associated with points in the 3D scene, the second data being located in a plurality of second segments of the second frame, wherein the total number of second segments of the second frame is greater the total number of first segments of the first frame, wherein for each first segment at least part of the plurality of first segments:

набор вторых сегментов, содержащий по меньшей мере один второй сегмент из множества вторых сегментов, распределяется каждому первому сегменту по меньшей мере части из множества первых сегментов;a set of second segments comprising at least one second segment of the plurality of second segments is allocated to each first segment of at least a portion of the plurality of first segments;

набор по меньшей мере фрагмента размещается в наборе вторых сегментов, причем каждый фрагмент соответствует двумерной параметризации группы из 3D точек, которые содержатся в части 3D сцены, связанной с каждым первым сегментом, и содержит вторые данные, представляющие собой глубину, связанную с 3D точками группы;the set of at least a fragment is located in a set of second segments, each fragment corresponding to a two-dimensional parameterization of a group of 3D points that are contained in a portion of the 3D scene associated with each first segment, and contains second data representing a depth associated with the 3D points of the group;

- кодер, выполненный с возможностью кодирования, в, по меньшей мере, третью дорожку, по меньшей мере инструкции для извлечения по меньшей мере части первых данных и вторых данных из по меньшей мере части по меньшей мере первой дорожки и по меньшей мере второй дорожки.- an encoder configured to encode, into at least a third track, at least instructions for extracting at least a portion of the first data and second data from at least a portion of the at least the first track and at least the second track.

Настоящее изобретение относится к устройству, выполненному с возможностью кодирования данных, представляющих собой 3D сцену, причем устройство содержит:The present invention relates to a device configured to encode data representing a 3D scene, the device comprising:

- средство для кодирования, в, по меньшей мере, первую дорожку, первых данных, представляющих собой текстуру 3D сцены, которая видна в соответствии с первой точкой обзора, причем первые данные размещаются во множестве первых сегментов первого кадра, причем часть 3D сцены связана с каждым первым сегментом из множества первых сегментов;- means for encoding, into at least a first track, first data representing the texture of a 3D scene that is visible in accordance with a first viewpoint, the first data being located in a plurality of first segments of the first frame, a portion of the 3D scene being associated with each a first segment of the plurality of first segments;

- средство для кодирования, в, по меньшей мере, вторую дорожку, вторых данных, представляющих собой глубину, связанную с точками 3D сцены, причем вторые данные размещаются во множестве вторых сегментов второго кадра, при этом общее количество вторых сегментов второго кадра больше общего количества первых сегментов первого кадра, при этом для каждого первого сегмента по меньшей мере части из множества первых сегментов:means for encoding, into at least a second track, second data representing depth associated with points in the 3D scene, the second data being located in a plurality of second segments of the second frame, wherein the total number of second segments of the second frame is greater than the total number of the first segments of the first frame, wherein for each first segment at least part of the plurality of first segments:

набор вторых сегментов, содержащий по меньшей мере один второй сегмент из множества вторых сегментов, распределяется каждому первому сегменту по меньшей мере части из множества первых сегментов;a set of second segments comprising at least one second segment of the plurality of second segments is allocated to each first segment of at least a portion of the plurality of first segments;

набор по меньшей мере фрагмента размещается в наборе вторых сегментов, причем каждый фрагмент соответствует двумерной параметризации группы из 3D точек, которые содержатся в части 3D сцены, связанной с каждым первым сегментом, и содержит вторые данные, представляющие собой глубину, связанную с 3D точками группы;the set of at least a fragment is located in a set of second segments, each fragment corresponding to a two-dimensional parameterization of a group of 3D points that are contained in a portion of the 3D scene associated with each first segment, and contains second data representing a depth associated with the 3D points of the group;

- средство для кодирования, в, по меньшей мере, третью дорожку, по меньшей мере инструкции для извлечения по меньшей мере части первых данных и вторых данных из по меньшей мере части по меньшей мере первой дорожки и по меньшей мере второй дорожки.- means for encoding, into at least a third track, at least instructions for retrieving at least a portion of the first data and second data from at least a portion of the at least the first track and at least the second track.

В соответствии с конкретным отличительным свойством, каждый фрагмент дополнительно содержит третьи данные, представляющие собой текстуру, связанную с 3D точками группы, причем третьи данные кодируются в, по меньшей мере, вторую дорожку.In accordance with the particular distinctive property, each fragment further includes third data representing a texture associated with the 3D points of the group, the third data being encoded into at least a second track.

В соответствии с особым отличительным свойством, набор третьих сегментов третьего кадра, содержащий по меньшей мере один третий сегмент, распределяется каждому первому сегменту, и набор по меньшей мере фрагмента, содержащий третьи данные, представляющие собой текстуру, связанную с 3D точками группы, размещается в наборе третьих сегментов, причем по меньшей мере фрагмент соответствует двумерной параметризации группы 3D точек, причем третьи данные кодируются в, по меньшей мере, третью дорожку.In accordance with a particular feature, a set of third frame third segments comprising at least one third segment is allocated to each first segment, and a set of at least a fragment containing third data representing a texture associated with the 3D points of the group is allocated to the set third segments, wherein the at least fragment corresponds to a two-dimensional parameterization of a group of 3D points, wherein the third data is encoded into at least a third track.

В соответствии с другим особым отличительным свойством, когда размер фрагмента набора больше размера второго сегмента, в который должен быть размещен фрагмент, тогда фрагмент разбивается на множество суб-фрагментов, причем размер каждого меньше размера второго сегмента.According to another particular feature, when the size of a set fragment is larger than the size of the second segment into which the fragment is to be placed, then the fragment is split into a plurality of sub-fragments, each of a size smaller than the size of the second segment.

В соответствии с дополнительным особым отличительным свойством, фрагменты набора размещаются в приоритетном порядке в зависимости от визуальной важности фрагментов, причем визуальная важность зависит от вторых данных, связанных с фрагментами.In accordance with a further special feature, the tiles of the set are prioritized based on the visual importance of the tiles, wherein the visual importance depends on second data associated with the tiles.

В соответствии с дополнительным особым отличительным свойством, вторые сегменты имеют один и тот же размер, который является фиксированным для множества следующих друг за другом по времени вторых кадров.In accordance with a further special feature, the second segments have the same size, which is fixed for a plurality of successive second frames.

Настоящее изобретение относится к способу декодирования данных, представляющих собой 3D сцену, причем способ, содержащий этапы, на которых:The present invention relates to a method for decoding data representing a 3D scene, the method comprising the steps of:

- декодируют, по меньшей мере из третьей дорожки, по меньшей мере инструкцию для извлечения первых данных и вторых данных из по меньшей мере первой дорожки и по меньшей мере второй дорожки;- decoding, from at least the third track, at least an instruction for extracting first data and second data from at least the first track and at least the second track;

- декодируют первые данные из по меньшей мере первой дорожки, причем первые данные представляют собой текстуру 3D сцены, которая видна в соответствии с первой точкой обзора, причем первые данные размещаются во множестве первых сегментов первого кадра, причем часть 3D сцены связана с каждым первым сегментом из множества первых сегментов;- decoding first data from at least a first track, wherein the first data represents a 3D scene texture that is visible in accordance with the first viewpoint, wherein the first data is located in a plurality of first segments of the first frame, wherein a portion of the 3D scene is associated with each first segment of a set of first segments;

- декодируют вторые данные из по меньшей мере второй дорожки, причем вторые данные представляют собой глубину, связанную с точками 3D сцены, причем вторые данные, представляющие собой глубину, содержатся по меньшей мере в фрагменте, который размещен по меньшей мере в наборе вторых сегментов второго кадра, причем набор вторых сегментов распределяется каждому первому сегменту, причем по меньшей мере фрагмент соответствует двумерной параметризации группы из 3D точек, которые содержатся по меньшей мере в части 3D сцены, связанной с каждым первым сегментом, причем вторые данные представляют собой глубину, связанную с 3D точками группы.- decoding second data from at least a second track, wherein the second data represents depth associated with points in the 3D scene, wherein the second data representing depth is contained in at least a fragment that is located in at least a set of second segments of the second frame wherein a set of second segments is allocated to each first segment, wherein the at least fragment corresponds to a two-dimensional parameterization of a group of 3D points that are contained in at least a portion of the 3D scene associated with each first segment, wherein the second data represents a depth associated with the 3D points groups.

Настоящее изобретение относится к устройству, выполненному с возможностью декодирования данных, представляющих собой 3D сцену, причем устройство содержит память, связанную по меньшей мере с одним процессором, выполненным с возможностью:The present invention relates to a device configured to decode data representing a 3D scene, the device comprising a memory associated with at least one processor configured to:

- декодирования, по меньшей мере из третьей дорожки, по меньшей мере инструкции для извлечения первых данных и вторых данных из по меньшей мере первой дорожки и по меньшей мере второй дорожки;- decoding, from at least the third track, at least instructions for extracting first data and second data from at least the first track and at least the second track;

- декодирования первых данных из по меньшей мере первой дорожки, причем первые данные представляют собой текстуру 3D сцены, которая видна в соответствии с первой точкой обзора, причем первые данные размещаются во множестве первых сегментов первого кадра, причем часть 3D сцены связана с каждым первым сегментом из множества первых сегментов;- decoding first data from at least a first track, wherein the first data represents a texture of a 3D scene that is visible in accordance with the first viewpoint, wherein the first data is located in a plurality of first segments of the first frame, wherein a portion of the 3D scene is associated with each first segment of a set of first segments;

- декодирования вторых данных из по меньшей мере второй дорожки, причем вторые данные представляют собой глубину, связанную с точками 3D сцены, причем вторые данные, представляющие собой глубину, содержатся по меньшей мере в фрагменте, который размещен по меньшей мере в наборе вторых сегментов второго кадра, причем набор вторых сегментов распределяется каждому первому сегменту, причем по меньшей мере фрагмент соответствует двумерной параметризации группы из 3D точек, которые содержатся по меньшей мере в части 3D сцены, связанной с каждым первым сегментом, причем вторые данные представляют собой глубину, связанную с 3D точками группы.- decoding second data from at least a second track, wherein the second data represents depth associated with points in the 3D scene, wherein the second data representing depth is contained in at least a fragment that is located in at least a set of second segments of the second frame wherein a set of second segments is allocated to each first segment, wherein the at least fragment corresponds to a two-dimensional parameterization of a group of 3D points that are contained in at least a portion of the 3D scene associated with each first segment, wherein the second data represents a depth associated with the 3D points groups.

Настоящее изобретение относится к устройству, выполненному с возможностью декодирования данных, представляющих собой 3D сцену, причем устройство содержит:The present invention relates to a device configured to decode data representing a 3D scene, the device comprising:

- декодер, выполненный с возможностью декодирования, по меньшей мере из третьей дорожки, по меньшей мере инструкции для извлечения первых данных и вторых данных из по меньшей мере первой дорожки и по меньшей мере второй дорожки;- a decoder configured to decode, from at least the third track, at least instructions for extracting first data and second data from at least the first track and at least the second track;

- декодер, выполненный с возможностью декодирования первых данных из по меньшей мере первой дорожки, причем первые данные представляют собой текстуру 3D сцены, которая видна в соответствии с первой точкой обзора, причем первые данные размещаются во множестве первых сегментов первого кадра, причем часть 3D сцены связана с каждым первым сегментом из множества первых сегментов;- a decoder configured to decode first data from at least a first track, wherein the first data is a texture of a 3D scene that is visible in accordance with the first viewpoint, wherein the first data is located in a plurality of first segments of the first frame, wherein a portion of the 3D scene is associated with each first segment of the plurality of first segments;

- декодер, выполненный с возможностью декодирования вторых данных из по меньшей мере второй дорожки, причем вторые данные представляют собой глубину, связанную с точками 3D сцены, причем вторые данные, представляющие собой глубину, содержатся по меньшей мере в фрагменте, который размещен по меньшей мере в наборе вторых сегментов второго кадра, причем набор вторых сегментов распределяется каждому первому сегменту, причем по меньшей мере фрагмент соответствует двумерной параметризации группы из 3D точек, которые содержатся по меньшей мере в части 3D сцены, связанной с каждым первым сегментом, причем вторые данные представляют собой глубину, связанную с 3D точками группы.- a decoder configured to decode second data from at least a second track, wherein the second data represents depth associated with points in the 3D scene, wherein the second data representing depth is contained in at least a fragment that is located in at least a set of second segments of a second frame, wherein the set of second segments is allocated to each first segment, wherein the at least fragment corresponds to a two-dimensional parameterization of a group of 3D points that are contained in at least a portion of the 3D scene associated with each first segment, wherein the second data represents depth , associated with the 3D points of the group.

Настоящее изобретение относится к устройству, выполненному с возможностью декодирования данных, представляющих собой 3D сцену, причем устройство содержит:The present invention relates to a device configured to decode data representing a 3D scene, the device comprising:

- средство для декодирования, по меньшей мере из третьей дорожки, по меньшей мере инструкции для извлечения первых данных и вторых данных из по меньшей мере первой дорожки и по меньшей мере второй дорожки;- means for decoding, from at least the third track, at least instructions for extracting first data and second data from at least the first track and at least the second track;

- средство для декодирования первых данных из по меньшей мере первой дорожки, причем первые данные представляют собой текстуру 3D сцены, которая видна в соответствии с первой точкой обзора, причем первые данные размещаются во множестве первых сегментов первого кадра, причем часть 3D сцены связана с каждым первым сегментом из множества первых сегментов;- means for decoding first data from at least a first track, wherein the first data is a texture of a 3D scene that is visible in accordance with the first viewpoint, wherein the first data is located in a plurality of first segments of the first frame, and a portion of the 3D scene is associated with each first a segment of a plurality of first segments;

- средство для декодирования вторых данных из по меньшей мере второй дорожки, причем вторые данные представляют собой глубину, связанную с точками 3D сцены, причем вторые данные, представляющие собой глубину, содержатся по меньшей мере в фрагменте, который размещен по меньшей мере в наборе вторых сегментов второго кадра, причем набор вторых сегментов распределяется каждому первому сегменту, причем по меньшей мере фрагмент соответствует двумерной параметризации группы из 3D точек, которые содержатся по меньшей мере в части 3D сцены, связанной с каждым первым сегментом, причем вторые данные представляют собой глубину, связанную с 3D точками группы.- means for decoding second data from at least a second track, wherein the second data represents depth associated with points in the 3D scene, wherein the second data representing depth is contained in at least a fragment that is located in at least a set of second segments of a second frame, wherein a set of second segments is allocated to each first segment, wherein the at least segment corresponds to a two-dimensional parameterization of a group of 3D points that are contained in at least a portion of the 3D scene associated with each first segment, wherein the second data represents a depth associated with 3D points group.

В соответствии с конкретным отличительным свойством третьи данные, представляющие собой текстуру, связанную с 3D точками группы, которые содержатся в каждом фрагменте, дополнительно декодируются из по меньшей мере второй дорожки.In accordance with a particular feature, third data representing a texture associated with 3D group points that are contained in each fragment is further decoded from at least a second track.

В соответствии с особым отличительным свойством третьи данные, представляющие собой текстуру, дополнительно декодируются из по меньшей мере третьей дорожки, причем третьи данные размещаются во множестве третьих сегментов третьего кадра, причем набор третьих сегментов, содержащий по меньшей мере один третий сегмент, распределяется каждому первому сегменту, причем набор по меньшей мере фрагмента, содержащий третьи данные, связанные с 3D точками группы, размещается в наборе третьих сегментов, причем по меньшей мере фрагмент соответствует двумерной параметризации группы 3D точек.In accordance with a particular feature, third data representing a texture is further decoded from at least a third track, wherein the third data is allocated to a plurality of third segments of a third frame, wherein a set of third segments comprising at least one third segment is allocated to each first segment wherein the set of at least a fragment containing third data associated with the 3D points of the group is located in the set of third segments, wherein the at least fragment corresponds to a two-dimensional parameterization of the group of 3D points.

В соответствии с другим отличительным свойством визуализация по меньшей мере части 3D сцены осуществляется в соответствии с первыми и вторыми данными.In accordance with another distinctive property, rendering of at least a portion of the 3D scene is carried out in accordance with the first and second data.

Настоящее изобретение также относится к битовому потоку, несущему данные, представляющие собой 3D сцену, причем данные содержат, по меньшей мере в первом элементе синтаксиса, первые данные, представляющие собой текстуру 3D сцены, которая видна в соответствии с первой точкой обзора, причем первые данные связаны со множеством первых сегментов первого кадра, причем часть 3D сцены связана с каждым первым сегментом из множества первых сегментов; по меньшей мере во втором элементе синтаксиса, вторые данные, представляющие собой глубину, связанную с точками 3D сцены, причем вторые данные связаны со множеством вторых сегментов второго кадра, причем общее количество вторых сегментов второго кадра больше общего количества первых сегментов первого кадра, причем набор вторых сегментов содержит по меньшей мере один второй сегмент, распределенный упомянутому каждому первому сегменту, причем набор по меньшей мере фрагмента размещается в наборе вторых сегментов, причем каждый фрагмент соответствует двумерной параметризации группы из 3D точек, которые содержатся в части 3D сцены, связанной с каждым первым сегментом, и содержит вторые данные, представляющие собой глубину, связанную с 3D точками группы; причем битовый поток дополнительно несет по меньшей мере в третьем элементе синтаксиса по меньшей мере инструкцию для извлечения по меньшей мере части первых данных и вторых данных.The present invention also relates to a bitstream carrying data representing a 3D scene, the data comprising, at least in a first syntax element, first data representing a texture of the 3D scene that is visible in accordance with a first viewpoint, wherein the first data is associated with a plurality of first segments of a first frame, wherein a portion of the 3D scene is associated with each first segment of the plurality of first segments; at least in a second syntax element, second data representing depth associated with points in the 3D scene, wherein the second data is associated with a plurality of second segments of a second frame, wherein the total number of second segments of the second frame is greater than the total number of first segments of the first frame, wherein the set of second segments comprises at least one second segment allocated to said each first segment, wherein the set of at least a fragment is located within the set of second segments, each fragment corresponding to a two-dimensional parameterization of a group of 3D points that are contained in a portion of the 3D scene associated with each first segment , and contains second data representing the depth associated with the 3D points of the group; wherein the bitstream further carries, in at least a third syntax element, at least an instruction for retrieving at least a portion of the first data and the second data.

Настоящее изобретение также относится к компьютерному программному продукту, содержащему инструкции программного кода для исполнения этапов способа кодирования или декодирования данных, представляющих собой 3D сцену, когда данная программа исполняется на компьютере.The present invention also relates to a computer program product containing program code instructions for executing steps of a method for encoding or decoding data representing a 3D scene when the program is executed on a computer.

Настоящее изобретение также относится к (долговременному) читаемому процессором носителю информации, с хранящимися на нем инструкциями для предписания процессору выполнять по меньшей мере вышеупомянутый способ кодирования или декодирования данных, представляющих собой 3D сцену.The present invention also relates to a (non-transitory) processor-readable storage medium having instructions stored thereon for causing the processor to perform at least the above-mentioned method of encoding or decoding data representing a 3D scene.

4. Список фигур4. List of figures

Настоящее изобретение будет лучше понятно, и будут выяснены другие особые признаки и преимущества, после прочтения нижеследующего описания, причем описание обращается к приложенным чертежам, на которых:The present invention will be better understood, and other special features and advantages will be apparent, after reading the following description, the description being referred to the accompanying drawings, in which:

- Фигура 1 показывает изображение, представляющее собой трехмерную сцену, содержащую поверхностное представление нескольких объектов, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 1 shows an image representing a three-dimensional scene containing a surface representation of several objects, in accordance with a non-limiting embodiment of the present principles;

- Фигура 2 иллюстрирует примерное размещение точек зрения в сцене фигуры 1 и видимые точки данной сцены с разных точек зрения данного размещения, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 2 illustrates an exemplary arrangement of viewpoints in the scene of Figure 1 and visible points of a given scene from different viewpoints of a given arrangement, in accordance with a non-limiting embodiment of the present principles;

- Фигура 3 иллюстрирует восприятие параллакса путем показа разных видов сцены фигуры 1 в соответствии с точкой зрения фигуры 2, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 3 illustrates parallax perception by showing different views of the scene of Figure 1 in accordance with the point of view of Figure 2, in accordance with a non-limiting embodiment of the present principles;

- Фигура 4 показывает изображение текстуры точек сцены фигуры 1, которые видны с точки зрения фигуры 2 в соответствии с равнопрямоугольным проекционным отображением, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 4 shows a texture image of the scene points of Figure 1 as seen from the perspective of Figure 2 in accordance with an equirectangular projection mapping, in accordance with a non-limiting embodiment of the present principles;

- Фигура 5 показывает изображение тех же самых точек сцены, как на фигуре 4, представленных в кубическом проекционном отображении, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 5 shows an image of the same scene points as in Figure 4, presented in a cubic projection display, in accordance with a non-limiting embodiment of the present principles;

- Фигура 6 показывает изображение глубины (также называемое картой глубины) 3D сцены фигуры 1 в соответствии с точкой зрения фигуры 2, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 6 shows a depth image (also called a depth map) of a 3D scene of Figure 1 in accordance with the view of Figure 2, in accordance with a non-limiting embodiment of the present principles;

- Фигура 7 показывает трехмерную (3D) модель объекта 3D сцены фигуры 1 и точки облака точек, соответствующего 3D модели, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 7 shows a three-dimensional (3D) object model of the 3D scene of Figure 1 and point cloud points corresponding to the 3D model, in accordance with a non-limiting embodiment of the present principles;

- Фигура 8 показывает изображение фигуры 4 разбитое на множество сегментов, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 8 shows an image of Figure 4 divided into multiple segments, in accordance with a non-limiting embodiment of the present principles;

- Фигура 9 показывает 2D параметризацию части 3D сцены фигуры 1, связанную с одним сегментом изображения фигуры 4, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 9 shows a 2D parameterization of a portion of the 3D scene of Figure 1 associated with one image segment of Figure 4, in accordance with a non-limiting embodiment of the present principles;

- Фигура 10 показывает двумерный вид углового сектора обзора части сцены, проиллюстрированной на фигуре 9, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 10 shows a two-dimensional angular sector view of a portion of the scene illustrated in Figure 9, in accordance with a non-limiting embodiment of the present principles;

- Фигура 11 показывает пример групп фрагментов 3D сцены, полученных путем 2D параметризации частей сцены, связанных с сегментами фигуры 8, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 11 shows an example of groups of 3D scene fragments obtained by 2D parameterization of portions of the scene associated with segments of Figure 8, in accordance with a non-limiting embodiment of the present principles;

- Фигура 12 показывает пример кодирования, передачи и декодирования последовательности 3D сцены в формате, который является, одновременно, совместимым с 3DoF визуализацией и совместимым с 3DoF+ визуализацией, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 12 shows an example of encoding, transmitting and decoding a 3D scene sequence in a format that is both 3DoF rendering compatible and 3DoF+ rendering compatible, in accordance with a non-limiting embodiment of the present principles;

- Фигура 13 показывает пример размещения фрагментов фигуры 11 в сегментах кадра, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 13 shows an example of placing fragments of Figure 11 into frame segments, in accordance with a non-limiting embodiment of the present principles;

- Фигура 14 показывает пример процесса для размещения фрагментов фигуры 11 в разделенном на сегменты кадре фигуры 13, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 14 shows an example process for placing fragments of Figure 11 in the segmented frame of Figure 13, in accordance with a non-limiting embodiment of the present principles;

- Фигура 15 показывает примеры четвертых кадров, полученных из сегментов разделенного на сегменты кадра фигуры 13, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 15 shows examples of fourth frames obtained from segments of the segmented frame of Figure 13, in accordance with a non-limiting embodiment of the present principles;

- Фигура 16 показывает пример синтаксиса битового потока, несущего информацию и данные, представляющие собой 3D сцену фигуры 1, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 16 shows an example of the syntax of a bitstream carrying information and data representing the 3D scene of Figure 1, in accordance with a non-limiting embodiment of the present principles;

- Фигура 17 показывает пример процесса, чтобы кодировать 3D сцену фигуры 1, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 17 shows an example of a process to encode the 3D scene of Figure 1, in accordance with a non-limiting embodiment of the present principles;

- Фигура 18 показывает пример процесса, чтобы декодировать 3D сцену фигуры 1, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 18 shows an example of a process to decode a 3D scene of Figure 1, in accordance with a non-limiting embodiment of the present principles;

- Фигура 19 показывает примерную архитектуру устройства, которое может быть выполнено с возможностью реализации способа или процесса, описанного по отношению к фигурам 14, 17, 18, 20 и/или 21, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 19 shows an exemplary architecture of a device that may be configured to implement the method or process described with respect to Figures 14, 17, 18, 20 and/or 21, in accordance with a non-limiting embodiment of the present principles;

- Фигура 20 иллюстрирует пример способа для кодирования данных, представляющих собой 3D сцену фигуры 1, реализованный, например, в устройстве фигуры 19, в соответствии с неограничивающим вариантом осуществления настоящих принципов;- Figure 20 illustrates an example of a method for encoding data representing a 3D scene of Figure 1, implemented, for example, in the device of Figure 19, in accordance with a non-limiting embodiment of the present principles;

- Фигура 21 иллюстрирует способ для декодирования данных, представляющих собой 3D сцену фигуры 1, реализованный, например, в устройстве фигуры 19, в соответствии с неограничивающим вариантом осуществления настоящих принципов.- Figure 21 illustrates a method for decoding data representing a 3D scene of Figure 1, implemented, for example, in the device of Figure 19, in accordance with a non-limiting embodiment of the present principles.

5. Подробное описание вариантов осуществления5. Detailed Description of Embodiments

Теперь предмет изобретения описывается при обращении к чертежам, на которых аналогичные номера позиций используются для обращения к аналогичным элементам на всем протяжении. В нижеследующем описании, в целях объяснения, изложены многочисленные особые подробности для того, чтобы обеспечить исчерпывающее понимание предмета изобретения. Однако, может быть очевидно, что варианты осуществления предмета изобретения могут быть реализованы на практике без этих особых подробностей.The subject matter of the invention is now described with reference to the drawings, in which like reference numerals are used to refer to like elements throughout. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the subject matter of the invention. However, it may be apparent that embodiments of the subject matter may be practiced without these specific details.

Настоящее описание иллюстрирует принципы настоящего изобретения. Таким образом, будет понятно, что специалисты в соответствующей области техники могут разработать различные компоновки, которые, несмотря на то, что в явной форме не описано или не показано в данном документе, воплощают принципы изобретения.The present description illustrates the principles of the present invention. Thus, it will be appreciated that those skilled in the art may develop various arrangements which, although not expressly described or shown herein, embody the principles of the invention.

В соответствии с неограничивающими вариантами осуществления настоящего изобретения раскрываются способы и устройства, чтобы кодировать изображения объемного видео (также называемого 3DoF+ или 6DoF видео), например, в одном или более кадрах, в контейнере и/или в битовом потоке. Также раскрываются способы и устройства, чтобы декодировать изображения объемного видео из потока и/или кадров. Также раскрываются примеры синтаксиса битового потока для кодирования одного или более изображений/кадров объемного видео.In accordance with non-limiting embodiments of the present invention, methods and apparatuses are disclosed for encoding volumetric video images (also referred to as 3DoF+ or 6DoF video), for example, into one or more frames, a container, and/or a bitstream. Methods and apparatuses for decoding volumetric video images from a stream and/or frames are also disclosed. Examples of bitstream syntax for encoding one or more volumetric video images/frames are also disclosed.

В соответствии с неограничивающим аспектом, настоящие принципы будут описаны при обращении к первому конкретному варианту осуществления способа (и устройства, выполненного с возможностью) кодирования данных, представляющих собой 3D сцену (представленную с помощью объемного контента, также называемого видео с погружением), в один или несколько кадров контейнера и/или битового потока.In accordance with a non-limiting aspect, the present principles will be described with reference to the first specific embodiment of a method (and apparatus configured to) encode data representing a 3D scene (represented by volumetric content, also called immersive video) into one or multiple container and/or bitstream frames.

Для достижения этой цели первые данные, представляющие собой текстуру (например, информацию о цвете, связанную с элементами, например, точками, 3D сцены) 3D сцены, которая видна в соответствии с первой точкой обзора, кодируются в одной или более первых дорожках, связанных по меньшей мере с частью первых сегментов первого кадра. Первые данные соответствует информации о текстуре 3DoF вида/изображения сцены, т.е. вида сцены в соответствии с центральной точкой обзора только с текстурой и без геометрии (т.е. глубины или 3D информации), т.е. «плоского» вида/изображения 3D сцены. Первый кадр разбивается на множество первых сегментов (сегмент, соответствующий суб-зоне кадра, и является, например, определенным в стандарте HEVC (Высокоэффективное Кодирование Видео) или в VP9 от Google с различной аббревиатурой), причем часть 3D сцены связана с каждым первым сегментом первого кадра.To achieve this goal, first data representing texture (e.g., color information associated with elements, e.g., points, of a 3D scene) of a 3D scene that is visible according to a first viewpoint is encoded in one or more first tracks associated by with at least part of the first segments of the first frame. The first data corresponds to the 3DoF texture information of the scene view/image, i.e. view of the scene according to the central viewpoint with only texture and no geometry (i.e. depth or 3D information), i.e. “flat” view/image of a 3D scene. The first frame is divided into a plurality of first segments (a segment corresponding to a sub-zone of the frame, and is, for example, defined in the HEVC (High Efficiency Video Coding) standard or Google's VP9 with a different abbreviation), with a portion of the 3D scene associated with each first segment of the first frame.

Второй кадр разбивается на множество вторых сегментов, причем общее количество вторых сегментов больше общего количества первых сегментов первого кадра. Применительно по меньшей мере к части первых сегментов, набор вторых сегментов распределяется для каждого первого сегмента. Что касается каждого первого сегмента, фрагменты части 3D сцены, соответствующие каждому первому сегменту, размещаются в распределенных вторых сегментах. Фрагмент соответствует двумерной (2D) параметризации 3D части сцены и содержит по меньшей мере вторые данные, представляющие собой глубину по меньшей мере некоторых точек, которые содержатся в 3D части.The second frame is divided into a plurality of second segments, the total number of second segments being greater than the total number of first segments of the first frame. For at least a portion of the first segments, a set of second segments is allocated to each first segment. With respect to each first segment, portions of the 3D scene corresponding to each first segment are allocated to the distributed second segments. The fragment corresponds to a two-dimensional (2D) parameterization of the 3D portion of the scene and contains at least second data representing the depth of at least some points that are contained in the 3D portion.

Вторые данные кодируются в одной или более вторых дорожках, связанных со вторыми сегментами.The second data is encoded in one or more second tracks associated with the second segments.

Инструкции, адаптированные для извлечения по меньшей мере части первых данных (из по меньшей мере части первых дорожек) и по меньшей мере части вторых данных (из по меньшей мере части вторых дорожек) кодируются в одну или более третьих дорожек.Instructions adapted to retrieve at least a portion of the first data (from at least a portion of the first tracks) and at least a portion of the second data (from at least a portion of the second tracks) are encoded into one or more third tracks.

2D параметризация 3D части 3D сцены соответствует 2D представлению 3D части (например, точек 3D сцены, которые содержатся в 3D части). 2D параметризация может быть получена различными путями, как будет объяснено более подробно в описании.The 2D parameterization of the 3D part of a 3D scene corresponds to the 2D representation of the 3D part (for example, the points of the 3D scene that are contained in the 3D part). The 2D parameterization can be obtained in various ways, as will be explained in more detail in the description.

Кадр соответствует изображению (например, у последовательности следующих один за другим по времени неподвижных изображений, формирующих видео) и соответствует массиву пикселей, причем атрибут (например, информация о глубине и/или информация о текстуре) связан с пикселями кадра.A frame corresponds to an image (eg, a sequence of temporally sequential still images forming a video) and corresponds to an array of pixels, with an attribute (eg, depth information and/or texture information) associated with the pixels of the frame.

Соответствующий способ (и устройство, выполненное с возможность) декодирования данных, представляющих собой 3D сцену, также описывается в отношении неограничивающего аспекта настоящих принципов.A corresponding method (and apparatus capable of) decoding data representing a 3D scene is also described with respect to a non-limiting aspect of the present principles.

Фигура 1 показывает изображение, представляющее собой трехмерную (3D) сцену 10, содержащую поверхностное представление нескольких объектов. Сцена могла быть получена с использованием любой подходящей технологии. Например, она могла быть создана с использованием инструментов интерфейса компьютерной графики (CGI). Она могла быть получена с помощью устройств получения цветного изображения и изображения глубины. В таком случае возможно, что одна или несколько частей объектов, которые не видны с устройств получения (например, камер), могут быть не представлены в сцене, как описано по отношению к фигуре 2. Примерная сцена, проиллюстрированная на фигуре 1, содержит дома, двух персонажей и колодец. Куб 11 иллюстрирует пространство зрения, из которого пользователь может наблюдать 3D сцену. Пространство 11 зрения, например, является с центром в первой точке обзора. 3D сцена (или ее часть) может, например, быть представлена с помощью плоского изображения (или плоского видео, также называемого всенаправленным изображением/видео), представляющего собой 3D сцену в соответствии с первой точкой обзора, и позволяющего пользователю (например, с надетым HMD) просматривать сцену в соответствии с 3 степенями свободы (3Dof), т.е. с поворотами вокруг продольной, вертикальной и поперечной оси. 3D сцена (или дополнительные части 3D сцены) могут быть представлены с помощью дополнительных данных (в дополнение к данным текстуры/цвета плоского изображения), связанных с частями 3D сцены, просматриваемой с точек обзора куба 11, за исключением первой точки обзора для данных текстуры. Дополнительные данные, например, могут содержать одну или любое сочетание из следующей информации:Figure 1 shows an image representing a three-dimensional (3D) scene 10 containing a surface representation of several objects. The scene could have been produced using any suitable technology. For example, it may have been created using computer graphics interface (CGI) tools. It could be obtained using color and depth imaging devices. In such a case, it is possible that one or more portions of objects that are not visible from acquisition devices (eg, cameras) may not be represented in the scene as described with respect to Figure 2. The example scene illustrated in Figure 1 contains houses, two characters and a well. Cube 11 illustrates a view space from which a user can view a 3D scene. The view space 11, for example, is centered at the first view point. The 3D scene (or part thereof) may, for example, be represented by a planar image (or planar video, also called omnidirectional image/video) representing the 3D scene according to the first viewpoint, and allowing the user (for example, while wearing an HMD ) view the scene in accordance with 3 degrees of freedom (3Dof), i.e. with rotations around the longitudinal, vertical and transverse axis. The 3D scene (or additional portions of the 3D scene) may be represented by additional data (in addition to the flat image texture/color data) associated with portions of the 3D scene viewed from viewpoints of cube 11 other than the first viewpoint for texture data. The additional data, for example, may contain one or any combination of the following information:

- информация о глубине, связанная с точками 3D сцены, просматриваемой с первой точки обзора;- depth information associated with points in the 3D scene viewed from the first viewpoint;

- информация о глубине, связанная с частями 3D сцены, просматриваемой с точек обзора куба 11, исключая первую точку обзора;- depth information associated with parts of the 3D scene viewed from the viewpoints of the cube 11, excluding the first viewpoint;

- информация о текстуре (также называемая информация о цвете), связанная с частями 3D сцены, просматриваемой с точек обзора куба 11, исключая первую точку обзора.- texture information (also called color information) associated with portions of the 3D scene viewed from viewpoints of cube 11 excluding the first viewpoint.

Дополнительные данные в сочетании с плоским видео обеспечивают 3DoF+ и/или 6DoF просмотр в представлении 3D сцены.The additional data combined with flat video provides 3DoF+ and/or 6DoF viewing in the 3D scene view.

Фигура 2 показывает примерное размещение точек зрения в сцене, например, 3D сцене 10 фигуры 1. Фигура 2 также показывает точки данной 3D сцены 10, которые видны с/в соответствии с разными точками зрения данного размещения. Для обеспечения визуализации и демонстрации посредством устройства визуализации с погружением (например, CAVE или устройство Монитора, Устанавливаемого на Голове (HMD)), 3D сцена рассматривается с первой точки обзора (также называемой первой точкой зрения), например, первой точки 20 зрения. Точка 21 сцены, соответствующая правому локтю первого персонажа, видна с первой точки 20 обзора, поскольку отсутствует какой-либо непрозрачный объект, лежащий между первой точкой 20 зрения и точкой 21 сцены. В противоположность, точка 22 3D сцены 10, которая соответствует, например, левому локтю второго персонажа, не видна с первой точки 20 зрения, поскольку она закрыта точками первого персонажа.Figure 2 shows an exemplary arrangement of viewpoints in a scene, for example, the 3D scene 10 of Figure 1. Figure 2 also shows the points of a given 3D scene 10 that are visible from/according to different viewpoints of a given arrangement. To enable visualization and presentation via an immersive rendering device (eg, a CAVE or a Head Mounted Monitor (HMD) device), the 3D scene is viewed from a first viewpoint (also referred to as a first viewpoint), such as a first viewpoint 20. The scene point 21 corresponding to the first character's right elbow is visible from the first view point 20 since there is no opaque object lying between the first view point 20 and the scene point 21. In contrast, a point 22 of the 3D scene 10, which corresponds to, for example, the second character's left elbow, is not visible from the first view point 20 because it is obscured by the first character's points.

Применительно к 3DoF визуализации, рассматривается только одна точка зрения, например, первая точка 20 обзора. Пользователь может поворачивать свою голову в трех степенях свободы вокруг первой точки зрения, чтобы просматривать различные части 3D сцены, но пользователь не может перемещать первую точку обзора. Точки сцены, которые должны быть кодированы в потоке, являются точками, которые видны с данной первой точки зрения. Не нужно кодировать точки сцены, которые не видны с данной первой точки зрения, поскольку пользователь не может осуществить к ним доступ путем перемещения первой точки обзора.For 3DoF visualization, only one viewpoint is considered, for example, the first viewpoint 20. The user can rotate their head in three degrees of freedom around the first viewpoint to view different parts of the 3D scene, but the user cannot move the first viewpoint. The points in the scene to be encoded in the stream are the points that are visible from a given first viewpoint. There is no need to encode points in the scene that are not visible from this first viewpoint, since the user cannot access them by moving the first viewpoint.

В отношении 6DoF визуализации, пользователь может перемещать точку обзора в любое место в сцене. В данном случае, важно кодировать каждую точку сцены в битовом потоке контента, поскольку каждая точка является потенциально доступной пользователю, который может перемещать его/ее точку зрения. На стадии кодирования, нет никаких средств заранее знать, с какой точки зрения пользователь будет смотреть 3D сцену 10.For 6DoF rendering, the user can move the viewpoint to any location in the scene. In this case, it is important to encode each point in the scene in the content bitstream, since each point is potentially accessible to the user, who can move his/her point of view. At the encoding stage, there is no means of knowing in advance from what point of view the user will view the 3D scene 10.

В отношении визуализации 3DoF+, пользователь может перемещать точку зрения в рамках ограниченного пространства вокруг точки зрения, например, вокруг первой точки 20 обзора. Например, пользователь может перемещать свою точку зрения в рамках куба 11 с центром в первой точке 20 обзора. Это позволяет воспринимать параллакс, как проиллюстрировано по отношению к фигуре 3. Данные, представляющие собой часть сцены, которая видна с любой точки пространства зрения, например, куба 11, должны быть кодированы в поток, включая данные, представляющие собой 3D сцену, которая видна в соответствии с первой точкой 20 обзора. Размер и форма пространства зрения могут, например, быть решены и определены на этапе кодирования и могут быть кодированы в битовом потоке. Декодер может получать данную информацию из битового потока и визуализатор ограничивает пространство зрения до пространства, определенного полученной информации. В соответствии с другим примером, визуализатор определяет пространство зрения в соответствии с ограничениями аппаратного обеспечения, например, по отношению к возможностям датчика(ов), которые обнаруживают перемещения пользователя. В таком случае, если, на фазе кодирования, точка, которая видна с точки в рамках пространства зрения визуализатора, не была кодирована в битовом потоке, то не будет осуществлена визуализация данной точки. В соответствии с дополнительным примером, данные (например, текстура и/или геометрия), представляющие собой каждую точку 3D сцены, кодируются в потоке без учета пространства зрения визуализации. Чтобы оптимизировать размер потока, может быть кодировано лишь подмножество точек сцены, например, подмножество точек, которые могут быть видны в соответствии с пространством зрения визуализации.With respect to 3DoF+ rendering, the user can move the viewpoint within a limited space around the viewpoint, for example, around the first viewpoint 20. For example, the user may move his or her viewpoint within the cube 11 centered on the first viewpoint 20. This allows parallax to be perceived, as illustrated with respect to Figure 3. Data representing the portion of the scene that is visible from any point of view space, such as cube 11, must be encoded into a stream, including data representing the 3D scene that is visible in in accordance with the first review point 20. The size and shape of the view space can, for example, be decided and determined at the encoding stage and can be encoded into a bitstream. The decoder can obtain given information from the bitstream and the renderer limits the view space to the space defined by the received information. According to another example, the renderer determines the view space in accordance with hardware limitations, for example, in relation to the capabilities of the sensor(s) that detect the user's movements. In such a case, if, during the encoding phase, a point that is visible from a point within the view space of the renderer has not been encoded in the bitstream, then the rendering of that point will not occur. According to a further example, data (eg, texture and/or geometry) representing each point in a 3D scene is encoded into the stream without regard to the view space of the rendering. To optimize stream size, only a subset of the scene points may be encoded, for example, the subset of points that can be seen according to the view space of the rendering.

Фигура 3 иллюстрирует восприятие параллакса, которое обеспечивается объемным (т.е. 3DoF+ и 6DoF) визуализацией. Фигура 3B иллюстрирует часть сцены, которую пользователь может видеть с первой точки 20 обзора фигуры 2. С данной первой точки 20 обзора два персонажа находятся в заданной пространственной конфигурации, например, левый локоть второго персонажа (в белой рубашке) спрятан телом первого персонажа при том, что видна его голова. Когда пользователь поворачивает его/ее голову в соответствии с тремя степенями свободы вокруг первой точки 20 обзора, данная конфигурация не меняется. Если точка обзора фиксирована, левый локоть второго персонажа не виден. Фигура 3A иллюстрирует ту же самую часть сцены, которая видна с точки обзора, расположенной с левой стороны пространства 11 зрения фигуры 2. С такой точки обзора, точка 22 фигуры 2 видна из-за эффекта параллакса. Вследствие этого, применительно к объемному визуализации, точка 22 должна быть кодирована в поток. Если не кодируется, то не будет осуществляться визуализация данной точки 22. Фигура 3C иллюстрирует ту же самую часть сцены, которая наблюдается с точки обзора, расположенной с правой стороны пространства 11 зрения фигуры 3. С данной точки обзора второй персонаж почти полностью скрыт первым персонажем.Figure 3 illustrates the perception of parallax that is provided by volumetric (i.e., 3DoF+ and 6DoF) imaging. Figure 3B illustrates the part of the scene that the user can see from the first view point 20 of figure 2. From this first view point 20, two characters are in a given spatial configuration, for example, the left elbow of the second character (in a white shirt) is hidden by the body of the first character, while that his head is visible. When the user rotates his/her head according to three degrees of freedom around the first view point 20, this configuration does not change. If the viewpoint is fixed, the second character's left elbow is not visible. Figure 3A illustrates the same portion of the scene as seen from a viewpoint located on the left side of the figure 2's view space 11. From such a viewpoint, point 22 of the figure 2 is visible due to a parallax effect. As a consequence, in relation to volumetric rendering, point 22 must be encoded into a stream. If not encoded, this point 22 will not be rendered. Figure 3C illustrates the same portion of the scene as viewed from a viewpoint located on the right side of the view space 11 of Figure 3. From this viewpoint, the second character is almost completely hidden by the first character.

Путем перемещения точки обзора в 3D сцене пользователь может воспринимать эффект параллакса.By moving the viewpoint in a 3D scene, the user can perceive a parallax effect.

Фигура 4 показывает изображение 40 текстуры (также называемое цветным изображением), содержащее информацию о текстуре (например, данные RGB или данные YUV) точек 3D сцены 10, которые видны с первой точки 20 обзора фигуры 2, причем данная информация о текстуре получается в соответствии с равнопрямоугольным проекционным отображением. Равнопрямоугольное проекционное отображение является примером сферического проекционного отображения.Figure 4 shows a texture image 40 (also referred to as a color image) containing texture information (e.g., RGB data or YUV data) of points in the 3D scene 10 that are visible from the first view point 20 of Figure 2, which texture information is obtained in accordance with equirectangular projection mapping. The equirectangular projection mapping is an example of a spherical projection mapping.

Фигура 5 показывает изображение 50 точек 3D сцены, полученное или кодированное в соответствии с кубическим проекционным отображением. Существуют разные кубические проекционные отображения. Например, грани куба могут быть размещены по-другому в изображении 50 фигуры 5 и/или грани могут быть сориентированы другим образом.Figure 5 shows an image of 50 points of a 3D scene obtained or encoded according to a cubic projection mapping. There are different cubic projection mappings. For example, the faces of the cube may be placed differently in the figure 5 image 50 and/or the faces may be oriented in a different manner.

Проекционное отображение, использованное для получения/кодирования точек сцены, которые видны с определенной точки обзора, выбирается, например, в соответствии с критериями сжатия или, например, в соответствии с опцией стандарта. Специалисту в соответствующей области техники известно, что можно преобразовать изображение, полученное путем проецирования, например, облака точек в соответствии с проекционным отображением в эквивалентное изображение того же самого облака точек в соответствии с другим проекционным отображением. Такое преобразование может все же повлечь за собой некоторую потерю в разрешении проекции.The projection mapping used to obtain/encode the scene points that are visible from a certain viewpoint is selected, for example, according to compression criteria or, for example, according to a standard option. One skilled in the art will know that it is possible to transform an image obtained by projecting, for example, a point cloud according to a projection mapping into an equivalent image of the same point cloud according to another projection mapping. Such a conversion may still incur some loss in projection resolution.

Фигуры 4 и 5 показаны в оттенках серого. Естественно понятно, что они являются примерами (цветных) изображений текстуры (кодирующих текстуру (цвет) точек сцены), например, в RGB или в YUV. Каждое из изображений 40 и 50 содержит данные, необходимые для 3DoF визуализации 3D сцены. Декодер, принимающий битовый поток или поток данных, содержащий, в первом элементе синтаксиса, изображение, как примерные изображения 40 и/или 50 фигуры 4 и/или фигуры 5, декодирует изображение с использованием способа, который коррелирует со способом, использованным для кодирования изображения. Поток может быть кодирован в соответствии со стандартными способами сжатия изображения и видео и стандартным форматом для транспортировки изображения и видео, например, MPEG-2, H.264 или HEVC. Декодер может передавать декодированное изображение (или последовательность изображений) 3DoF визуализатору или модулю для переформатирования, например. 3DoF визуализатор будет сначала выполнять отмену проецирования декодированного изображения с проекционной поверхности (например, сферы применительно к ERP изображению 40 фигуры 4 или куба применительно к изображению 50 фигуры 5) и затем формировать прямоугольное окно просмотра, запрошенное просматривающим устройством конечного пользователя. В варианте, визуализатор преобразует изображение в соответствии с другим отличным проекционным отображением перед его проецированием.Figures 4 and 5 are shown in grayscale. It is naturally clear that these are examples of (color) texture images (encoding the texture (color) of points in the scene), for example in RGB or in YUV. Each of the images 40 and 50 contains data necessary for 3DoF rendering of a 3D scene. A decoder receiving a bit stream or data stream containing, in a first syntax element, an image, such as the exemplary images 40 and/or 50 of Figure 4 and/or Figure 5, decodes the image using a method that correlates with the method used to encode the image. The stream may be encoded according to standard image and video compression techniques and a standard image and video transport format, such as MPEG-2, H.264 or HEVC. The decoder may pass the decoded 3DoF image (or sequence of images) to a renderer or module for reformatting, for example. The 3DoF renderer will first deproject the decoded image from the projection surface (e.g., a sphere in relation to ERP image 40 of Figure 4 or a cube in relation to ERP image 50 of Figure 5) and then generate a rectangular viewport requested by the end user's viewing device. In an embodiment, the renderer transforms the image according to another different projection mapping before projecting it.

Изображение совместимо с 3DoF визуализацией, когда изображение кодирует точки 3D сцены в соответствии с проекционным отображением. Сцена может содержать точки под углом 360°. Проекционные отображения, которые обычно используются чтобы кодировать изображения, совместимые с 3DoF визуализацией, соответствуют, например, среди сферических отображений: равнопрямоугольной проекции; проекции по долготе/широте; или разным схемам расположения кубических проекционных отображений или пирамидальных проекционных отображений.The image is compatible with 3DoF rendering, where the image encodes points in the 3D scene according to the projection mapping. The scene can contain 360° points. Projection mappings that are commonly used to encode images compatible with 3DoF rendering correspond, for example, to spherical mappings: equirectangular projection; longitude/latitude projections; or different layouts of cubic projection maps or pyramidal projection maps.

Фигура 6 показывает изображение глубины (также называемое картой глубины) 3D сцены 10 в соответствии с первой точкой 20 обзора. Информация о глубине требуется для объемной визуализации. В примере кодирования изображения фигуры 6, чем темнее пиксель, тем ближе точка, которая проецируется в данный пиксель, от точки обзора. Например, глубина может быть кодирована двенадцатью битами, т.е. глубина представляется целым числом в диапазоне от 0 до 212-1 (= 4095). Если, например, самая близкая точка располагается на 1 метре от определенной точки обзора, а наиболее удаленная точка на 25 метрах от определенной точки обзора, то линейное кодирование глубины будет выполнено с шагами в 0,586 сантиметров (=(2500-100)/4096). Глубина также может быть кодирована в соответствии с логарифмической шкалой, поскольку неточность значения глубины точки, которая находится дальше от точки обзора, менее важна, чем неточность значения глубины для точки, которая находится ближе к точке обзора. В примерном варианте осуществления фигуры 6 глубина точек сцены, которые видны с точки обзора, кодируется в карте глубины в соответствии с тем же самым проекционным отображением, как проекционное отображение, используемое для кодирования карты цветов фигуры 5. В другом варианте осуществления глубина может быть кодирована в соответствии с другим проекционным отображением. Визуализатор преобразует карту глубины и/или цветное изображение в де-проекционные точки сцены, кодированные в этих данных.Figure 6 shows a depth image (also called a depth map) of a 3D scene 10 according to a first view point 20. Depth information is required for volume rendering. In the Figure 6 image encoding example, the darker the pixel, the closer the point that is projected to that pixel is from the viewpoint. For example, the depth may be encoded in twelve bits, i.e. depth is represented as an integer in the range from 0 to 2 12 -1 (= 4095). If, for example, the closest point is 1 meter from a certain viewpoint and the farthest point is 25 meters from a certain viewpoint, then the linear depth encoding will be done in steps of 0.586 centimeters (=(2500-100)/4096). Depth can also be encoded according to a logarithmic scale, since the inaccuracy in the depth value of a point that is farther away from the viewpoint is less important than the inaccuracy in the depth value for a point that is closer to the viewpoint. In the exemplary embodiment of Figure 6, the depth of the scene points that are visible from the viewpoint is encoded in the depth map in accordance with the same projection mapping as the projection map used to encode the color map of Figure 5. In another embodiment, the depth may be encoded in consistent with another projection mapping. The renderer converts the depth map and/or color image into de-projection points of the scene encoded in this data.

Фигура 7 показывает трехмерную (3D) модель объекта 70 и точки облака 71 точек, соответствующие 3D модели 70. Модель 70 может быть 3D представлением сетки, а точки облака 71 точек могут быть вершинами сетки. Точки облака 71 точек также могут быть точками, рассеянными по поверхности граней сетки. Модель 70 также может быть представлена в качестве полученной посредством сплэттинга (splatting) версии облака 71 точек, причем поверхность модели 70 создается путем сплэттинга точек облака 71 точек. Модель 70 может быть представлена посредством множества разных представлений, таких как в вокселях или сплайнах. Фигура 7 иллюстрирует тот факт, что облако точек может быть определено с помощью представления поверхности 3D объекта и что представление поверхности 3D объекта может быть сформировано из точки облака. Используемые в данном документе проецирование точек 3D объекта (путем продления точек 3D сцены) на изображение является эквивалентным проецированию любого представления изображения данного 3D объекта для создания объекта.Figure 7 shows a three-dimensional (3D) model of an object 70 and point cloud 71 points corresponding to the 3D model 70. Model 70 may be a 3D representation of a mesh, and point cloud 71 points may be mesh vertices. The points of the point cloud 71 may also be points scattered across the surface of the mesh faces. Model 70 may also be represented as a splatting version of point cloud 71, wherein the surface of model 70 is created by splatting points of point cloud 71. The model 70 can be represented through a variety of different representations, such as voxels or splines. Figure 7 illustrates the fact that a point cloud can be defined using a surface representation of a 3D object and that a surface representation of a 3D object can be generated from a cloud point. As used herein, projecting 3D object points (by extending 3D scene points) onto an image is equivalent to projecting any image representation of a given 3D object to create the object.

Облако точек может быть рассмотрено в качестве векторной структуры, при этом каждая точка имеет свои координаты (например, трехмерные координаты XYZ, или глубину/расстояние от заданной точки обзора) и один или несколько атрибутов, также называемых составляющей. Примером составляющей является цветовая составляющая, которая может быть выражена в различных цветовых пространствах, например, RGB (Красный, Зеленый и Синий) или YUV (Y является составляющей яркости, а UV двумя составляющими цветности). Облако точек является представлением объекта с заданной точки обзора или диапазона точек обзора. Облако точек может быть получено посредством множества способов, например:A point cloud can be viewed as a vector structure, with each point having its own coordinates (for example, 3D XYZ coordinates, or depth/distance from a given viewpoint) and one or more attributes, also called a component. An example of a component is a color component, which can be expressed in different color spaces, such as RGB (Red, Green and Blue) or YUV (Y is the luminance component and UV is the two chrominance components). A point cloud is a representation of an object from a given viewpoint or range of viewpoints. The point cloud can be obtained through a variety of methods, for example:

из захвата реального объекта, снятого установкой из камер, необязательно дополненного активным устройством регистрации глубины;from the capture of a real object, filmed by a camera setup, optionally supplemented with an active depth recording device;

из захвата виртуального/искусственного объекта, снятого установкой из виртуальных камер в инструменте моделирования;from the capture of a virtual/artificial object captured by a virtual camera setup in a modeling tool;

из смеси как реальных, так и виртуальных объектов.from a mixture of both real and virtual objects.

Объемные части 3D сцены могут, например, быть представлены с помощью одного или более облаков точек, таких как облако 71 точек.Volumetric portions of a 3D scene may, for example, be represented using one or more point clouds, such as point cloud 71.

Фигура 8 показывает разбиение на сегменты изображения 40 (также называемого первым кадром 40 в нижеследующем), в соответствии с неограничивающим вариантом осуществления настоящих принципов. Первый кадр 40 соответствует плоскому представлению большого поля обзора (вплоть до 360°) 3D сцены, т.е. 2D представлению только с информацией о текстуре (цвете) и без глубины. Контент большого поля обзора (также называемый всенаправленным контентом) является контентом с полем обзора, которое, как правило, больше окна просмотра устройства конечного пользователя, т.е. только суб-часть первого кадра 40 демонстрируется за раз на устройстве конечного пользователя. Первый кадр 40 разбит на множество суб-частей или суб-зон с 81 по 88, которые могут соответствовать сегментам в смысле HEVC, VP9 или AV1 (разработанного Альянсом за Открытые Медиа), например. Сегменты могут, например, быть получены путем использования разбиение на сегменты HEVC с ограничением движения (MCTS).Figure 8 shows a segmentation of an image 40 (also referred to as the first frame 40 below), in accordance with a non-limiting embodiment of the present principles. The first frame 40 corresponds to a flat view of a large field of view (up to 360°) of the 3D scene, i.e. A 2D representation with only texture (color) information and no depth. Wide field of view content (also called omnidirectional content) is content with a field of view that is typically larger than the viewing window of the end user's device, i.e. only a sub-portion of the first frame 40 is displayed at a time on the end user's device. The first frame 40 is divided into a plurality of sub-parts or sub-zones 81 to 88, which may correspond to segments in the HEVC, VP9 or AV1 sense (developed by the Alliance for Open Media), for example. The segments can, for example, be obtained by using HEVC motion-constrained segmentation (MCTS).

В соответствии с неограничивающим примером первый кадр (после того, как было выполнено равнопрямоугольное проецирование (EPR)) делится на 8 сегментов HEVC с 81 по 88. Сегменты HEVC соответствуют неперекрывающимся прямоугольным областям, содержащим целое количество CTU (Единица Дерева Кодирования, CTU соответствует наибольшему блоку кодирования, например, размера 64×64) и организованным в шаблоне сетки со строками и столбцами фиксированного или переменного размера (например, Основной профиль 10 уровня 5.1 в HEVC устанавливает максимальное количество строк и столбцов сегментов в 11×10). Контент первого кадра может, например, быть кодирован в одном или более разрешениях с использованием наборов сегментов с ограничением движения (MCTS), т.е. при отсутствии другого предсказания из других сегментов. Каждая кодированная последовательность MCTS может быть сохранена инкапсулированной в отдельную дорожку сегмента в рамках, например, контейнера ISOBMFF (Базовый Формат Файла Мультимедиа ISO). Количество сегментов не ограничено 8 и может быть любым целым числом, например, больше или равным 2 и меньше 110 (11×10), если основано на Основном профиле 10 уровня 5.1 HEVC.According to a non-limiting example, the first frame (after equirectangular projection (EPR) has been performed) is divided into 8 HEVC segments 81 to 88. HEVC segments correspond to non-overlapping rectangular regions containing an integer number of CTUs (Coding Tree Unit, CTU corresponding to the largest block encoding, e.g. size 64x64) and organized in a grid pattern with rows and columns of fixed or variable size (e.g. Core Profile 10 Level 5.1 in HEVC sets the maximum number of rows and columns of segments to 11x10). The content of the first frame may, for example, be encoded at one or more resolutions using Motion Constrained Segment Sets (MCTS), i.e. in the absence of another prediction from other segments. Each MCTS encoded sequence can be stored encapsulated in a separate segment track within, for example, an ISOBMFF (ISO Basic Multimedia File Format) container. The number of segments is not limited to 8 and can be any integer, such as greater than or equal to 2 and less than 110 (11x10) if based on the Level 5.1 HEVC Core Profile 10.

Разная 3D часть или 3D секция 3D сцены связывается с каждым сегментом T1 81, T2 82, T3 83, T4 84, T5 85, T6 86, T7 87 и T8 88 первого кадра 40 (как объяснено более подробно в отношении фигуры 10), причем видеоконтент определенного сегмента первого кадра соответствует результату проецирования 3D части 3D сцены, связанной с данным определенным сегментом.A different 3D portion or 3D section of the 3D scene is associated with each segment T1 81, T2 82, T3 83, T4 84, T5 85, T6 86, T7 87 and T8 88 of the first frame 40 (as explained in more detail in relation to Figure 10), wherein the video content of a specific segment of the first frame corresponds to the result of projecting a 3D portion of a 3D scene associated with that specific segment.

Фигура 9 показывает 2D параметризацию 3D части 3D сцены, связанной с одним сегментом T6 86 первого кадра, в соответствии с неограничивающим вариантом осуществления настоящего принципа. Точно такой же процесс может быть применен к каждой 3D части 3D сцены, связанной с сегментами T1, T2, T3, T4, T5, T7 и T8 первого кадра 40.Figure 9 shows a 2D parameterization of a 3D portion of a 3D scene associated with one first frame segment T6 86, in accordance with a non-limiting embodiment of the present principle. The exact same process can be applied to each 3D portion of the 3D scene associated with segments T1, T2, T3, T4, T5, T7, and T8 of the first frame 40.

Точки 3D сцены, которые содержатся в 3D части 3D сцены, связанной с сегментом T6 86, могут быть сгруппированы, чтобы формировать одну или несколько групп из точек, причем точки, принадлежащие одной и той же группе, обладают, например, информацией о глубине, которая содержится в определенном диапазоне глубины (т.е. точки одной и той же группы являются согласованными по глубине). Диапазон точек обзора, которые содержатся в пространстве 11 зрения (например, кубе), например, получается путем дискретизации на множество точек обзора (например, 5, 10 или 20 точек обзора). В соответствии с другим примером множество точек обзора получается из пространства 11 зрения путем определения тетраэдра с центром в первой точке 20 обзора, причем каждая из четырех вершин тетраэдра определяет точку обзора из множества точек обзора в дополнение к первой точке 20 обзора. Точки 3D части 3D сцены, связанной с сегментом T6 86, группируются с учетом 3D части с каждой точки обзора из множества. Чтобы избежать того, что одна и та же точка принадлежит множеству групп, группирование может быть сначала выполнено для первой точки обзора, и точки, которые были сгруппированы в соответствии с первой точкой обзора, не рассматриваются для следующего группирования в соответствии с другой точкой обзора. Примеры групп точек иллюстрируются на фигуре 9, например, группы с 91 по 95, причем каждая группа содержит, например, точки с согласованной глубиной, например, группа 94 содержит точки с глубиной, которая находится между 2м и 2.5м (расстояние от первой точки обзора), группа 95 содержит точки с глубиной, которая находится между 3,2м и 3,9м, группа 93 содержит точки с глубиной, которая находится между 3,9м и 10м.The 3D scene points that are contained in the 3D portion of the 3D scene associated with the segment T6 86 may be grouped to form one or more groups of points, wherein the points belonging to the same group have, for example, depth information that contained within a specific depth range (i.e. points in the same group are consistent in depth). The range of viewpoints that are contained in the view space 11 (eg, cube), for example, is obtained by sampling into multiple viewpoints (eg, 5, 10, or 20 viewpoints). According to another example, a plurality of viewpoints is obtained from view space 11 by defining a tetrahedron centered on a first viewpoint 20, with each of the four vertices of the tetrahedron defining a viewpoint from a plurality of viewpoints in addition to the first viewpoint 20. The points of the 3D portion of the 3D scene associated with the segment T6 86 are grouped taking into account the 3D portion from each viewpoint of the set. To avoid that the same point belongs to multiple groups, grouping may be first performed on the first viewpoint, and points that have been grouped according to the first viewpoint are not considered for the next grouping according to another viewpoint. Examples of groups of points are illustrated in Figure 9, for example groups 91 to 95, with each group containing, for example, points with a consistent depth, for example group 94 containing points with a depth that is between 2m and 2.5m (distance from the first viewpoint ), group 95 contains points with depths that are between 3.2m and 3.9m, group 93 contains points with depths that are between 3.9m and 10m.

Применительно к каждой группе точек формируется фрагмент, причем фрагмент соответствует 2D параметризации группы точек. Например, фрагмент 904 формируется из группы 94 точек. Один или несколько фрагментов каждой группы точек 3D части формируются, чтобы представлять каждую группу точек в двух измерениях, т.е. в соответствии с 2D параметризацией. Одна или несколько 2D параметризаций могут быть получены для каждой группы 91, 92, 93, 94 и 95 точек. 2D параметризация может варьироваться от группы точек к другой. В соответствии с вариантом все 2D параметризации, связанные со всеми группами точек, являются одного и того же типа, например, линейным перспективным проецированием или ортогональным проецированием. В соответствии с вариантом разные 2D параметризации могут быть использованы для одной и той же группы точек.For each group of points, a fragment is formed, and the fragment corresponds to the 2D parameterization of the group of points. For example, fragment 904 is formed from a group of 94 points. One or more fragments of each group of points of the 3D part are formed to represent each group of points in two dimensions, i.e. according to 2D parameterization. One or more 2D parameterizations can be obtained for each group of 91, 92, 93, 94 and 95 points. The 2D parameterization may vary from group of points to another. According to an embodiment, all 2D parameterizations associated with all groups of points are of the same type, for example, linear perspective projection or orthogonal projection. According to an option, different 2D parameterizations can be used for the same group of points.

2D параметризация, связанная с одной заданной группой точек, например, группой 94, соответствует просмотру в 2 измерениях заданной 3D группы точек облака точек, что позволяет осуществить выборку заданной 3D группы точек, т.е. 2D представление контента (т.е. точки(ек)) данной заданной 3D группы точек, содержащее множество выборок (которые могут соответствовать пикселям изображения фрагмента), количество который зависит от применяемого шага выборки. 2D параметризация может быть представлена с помощью набора параметров и может быть получена посредством множества способов, например, путем применения любого из следующих способов:A 2D parameterization associated with one given group of points, for example group 94, corresponds to a 2-dimensional view of a given 3D group of points of a point cloud, which allows the selection of a given 3D group of points, i.e. A 2D representation of the content (i.e., point(s)) of a given 3D group of points, containing a number of samples (which may correspond to the pixels of the fragment image), the number of which depends on the sampling step applied. The 2D parameterization can be represented by a set of parameters and can be obtained through a variety of methods, for example by applying any of the following methods:

- равнопрямоугольное проецирование (EPR) точек у группы точек облака точек на сферу, связанную с точкой обзора, причем параметры, представляющие собой ERP проецирование, содержат местоположение сферы, ее ориентацию и шаг пространственной выборки;- equirectangular projection (EPR) of points from a group of points of the point cloud onto a sphere associated with the viewpoint, and the parameters representing the ERP projection contain the location of the sphere, its orientation and the spatial sampling step;

- линейное перспективное проецирование точек у группы точек облака точек на плоскость, связанную с точкой обзора, причем параметры, представляющие собой линейное перспективное проецирование, содержат местоположение виртуальной камеры, фокусное расстояние, шаг пространственной выборки и поле зрения в 2 измерениях;- linear perspective projection of points from a group of points of the point cloud onto a plane associated with the viewpoint, wherein the parameters representing the linear perspective projection include the location of the virtual camera, focal length, spatial sampling step and field of view in 2 dimensions;

- ортогональное проецирование точек у группы точек облака точек на поверхность, причем параметры, представляющие собой ортогональное проецирование, содержат геометрию (форму, размер и ориентацию) проецирующей поверхности и шаг пространственной выборки;- orthogonal projection of points from a group of points of the point cloud onto the surface, and the parameters representing the orthogonal projection contain the geometry (shape, size and orientation) of the projecting surface and the spatial sampling step;

- LLE (Локально-Линейное Вложение), которое соответствует математической операции уменьшения размерности, здесь применяется для конвертирования/преобразования из 3D в 2D, причем параметры, представляющие LLE, содержат коэффициенты преобразования.- LLE (Local Linear Embedding), which corresponds to the mathematical operation of dimensionality reduction, is used here to convert/convert from 3D to 2D, with the parameters representing the LLE containing the conversion coefficients.

Каждый фрагмент обладает преимущественно прямоугольной формой, чтобы упростить процесс упаковки, который будет объяснен ниже. Каждый фрагмент может содержать геометрическую информацию, полученную путем проецирования/2D параметризации точек у связанной группы точек. Геометрическая информация может соответствовать информации о глубине или информации о позиции вершин элемента сетки. Фрагмент может дополнительно содержать информацию о текстуре, связанную с точками у связанной группы точек, за исключением того, когда фрагмент получается из точек, которые видны с первой точки обзора. Применительно к точкам, которые видны с первой точки обзора, информация о текстуре может быть получена из первого кадра 40. В соответствии с вариантом формируются геометрические фрагменты, содержащие только геометрическую информацию, и дополнительно формируются фрагменты текстуры, содержащие только информацию о текстуре, при необходимости.Each piece is predominantly rectangular in shape to facilitate the packaging process, which will be explained below. Each fragment can contain geometric information obtained by projecting/2D parameterizing points from a related group of points. Geometric information may correspond to depth information or information about the position of mesh element vertices. The fragment may additionally contain texture information associated with the points of the associated group of points, except when the fragment is derived from points that are visible from the first viewpoint. For points that are visible from the first viewpoint, texture information may be obtained from the first frame 40. According to an embodiment, geometric fragments containing only geometric information are generated, and further texture fragments containing only texture information are generated, if necessary.

Может быть сформирована информация об отображении, которая связывает каждую 2D параметризацию с ее связанным фрагментом. Информация об отображении может быть сформирована для обеспечения связи между 2D параметризацией и связанным геометрическим фрагментом, и фрагментом текстуры в кадрах, в которые размещаются фрагменты. Информация об отображении может, например, быть в форме:Display information can be generated that associates each 2D parameterization with its associated fragment. Display information may be generated to provide a link between the 2D parameterization and the associated geometric fragment and texture fragment in the frames into which the fragments are placed. The display information may, for example, be in the form:

{параметры 2D параметризации; ID геометрического фрагмента; ID фрагмента текстуры}{2D parameterization parameters; Geometric fragment ID; Texture fragment ID}

при этом ID геометрического фрагмента может быть целочисленным значением или парой значений, содержащей индекс U столбца и индекс V строки, к которым принадлежит геометрический фрагмент в кадре, в котором он размещен; ID фрагмента текстуры может быть целочисленным значением или парой значений, содержащей индекс U’ столбца и индекс V’ строки, к которым принадлежит фрагмент текстуры в матрице фрагментов кадра(ов) (или сегментов кадра(ов)), к которому принадлежат фрагменты.wherein the ID of the geometric fragment may be an integer value or a pair of values containing the column index U and row index V to which the geometric fragment belongs in the frame in which it is placed; The texture fragment ID may be an integer value or a pair of values containing the column index U' and the row index V' to which the texture fragment belongs in the matrix of frame(s) fragments (or frame(s) segments) to which the fragments belong.

Точно такая же информация об отображении формируется для каждой 2D параметризации и связанного геометрического фрагмента, и фрагмента текстуры. Такая информация об отображении обеспечивает воссоздание соответствующих частей 3D сцены путем создания связки 2D параметризации с соответствующим геометрическим фрагментом и фрагментом текстуры. Если 2D параметризация является проецированием, то соответствующая часть 3D сцены может быть воссоздана путем де-проецирования (выполнения обратного проецирования) геометрической информации, которая содержится в связанном геометрическом фрагменте, и информации о текстуре в связанном фрагменте текстуры. Тогда информация об отображении соответствует списку информации об отображении:Exactly the same mapping information is generated for each 2D parameterization of both the associated geometric fragment and the texture fragment. This mapping information allows the corresponding parts of the 3D scene to be reconstructed by linking the 2D parameterization with the corresponding geometric and texture fragments. If the 2D parameterization is a projection, then the corresponding portion of the 3D scene can be reconstructed by de-projecting (backprojecting) the geometric information contained in the associated geometry fragment and the texture information in the associated texture fragment. Then the display information corresponds to the list of display information:

{параметры 2D параметризации; ID геометрического и фрагмента текстуры}i,{2D parameterization parameters; Geometric and texture fragment ID} i ,

Для i=1 до n, причем n количество 2D параметризаций.For i=1 to n, where n is the number of 2D parameterizations.

Фигура 10 показывает двумерный вид углового сектора обзора, соответствующего 3D части 3D сцены, связанной с сегментом T6 80 первого кадра 40, в соответствии с неограничивающим вариантом осуществления настоящего принципа.Figure 10 shows a two-dimensional view of an angular viewing sector corresponding to a 3D portion of a 3D scene associated with segment T6 80 of the first frame 40, in accordance with a non-limiting embodiment of the present principle.

Как объяснено по отношению к фигуре 8, каждый первый сегмент с T1 81 по T8 88 связан с 3D частью 3D сцены. Когда первый кадр 40 получается путем равнопрямоугольного или по кубической карте проекционного отображения, 3D часть, связанная с заданным первым сегментом T (T∈[1,8] в неограничивающем примере фигуры 8) соответствует угловому диапазону 101 обзора с первой точки обзора, которая может быть определена с помощью . Количество 3D-фрагментов может быть получено из 3D части, чтобы сформировать фрагменты, такие как фрагмент 904, путем 2D-параметризации 3D-фрагментов. 3D-фрагмент соответствует подмножеству 3D части, т.е. группе точек, полученной как объяснено в отношении фигуры 9. 3D-фрагмент 102 может, например, быть определен с помощью угла обзора и диапазона расстояний от определенной точки обзора (либо первой точки 20 обзора, либо любой из точек обзора, полученных из дискретизации пространства 11 зрения). 3D-фрагмент 102, например, определяется с помощью , при этом соответствуют угловому диапазону, соответствующему углу обзора, а соответствует диапазону расстояний. Одно или несколько ограничений может быть применено при определении 3D-фрагментов (или групп точек). Например, сферический диапазон , связанный с 3D-фрагментом, должен содержаться или должен соответствовать диапазону угла обзора первого сегмента T6 86, определенного в первом кадре, чтобы избежать того, что один и тот же 3D-фрагмент охватывает два разных первых сегмента первого кадра (или эквивалентно два разных диапазона угла обзора, связанных с двумя разными сегментами). Фрагмент 904, содержащий информацию о глубине и/или информацию о текстуре, получается путем 2D-параметризации точек 3D-фрагмента 102, как объяснено в отношении фигуры 9. Как объяснено в отношении фигуры 9, может быть сформирован геометрический фрагмент 904, связанный с 3D-фрагментом 102, и дополнительно может быть сформирован геометрический фрагмент текстуры, связанный с 3D-фрагментом 102. Когда 3D-фрагмент 102 просматривается/определяется с первой точки 20 обзора, фрагмент 904 содержит только геометрическую информацию, причем информация о текстуре может быть извлечена из первого кадра 40.As explained with respect to Figure 8, each first segment T1 81 to T8 88 is associated with a 3D portion of the 3D scene. When the first frame 40 is obtained by equirectangular or cube map projection mapping, the 3D portion associated with a given first segment T (T∈[1,8] in the non-limiting example of Figure 8) corresponds to the angular range 101 of the view from the first viewpoint, which may be defined using . The number of 3D tiles can be obtained from the 3D portion to form tiles, such as tile 904, by 2D parameterizing the 3D tiles. A 3D fragment corresponds to a subset of a 3D part, i.e. group of points obtained as explained with respect to Figure 9. The 3D fragment 102 may, for example, be defined by a viewing angle and a range of distances from a particular view point (either the first view point 20 or any of the view points obtained from the space discretization 11 vision). The 3D fragment 102 is, for example, defined using , wherein correspond to the angular range corresponding to the viewing angle, and corresponds to a range of distances. One or more constraints can be applied when defining 3D fragments (or groups of points). For example, spherical range associated with the 3D fragment must be contained or must match the viewing angle range the first segment T6 86 defined in the first frame to avoid the same 3D fragment covering two different first segments of the first frame (or equivalently two different viewing angle ranges associated with two different segments). A fragment 904 containing depth information and/or texture information is obtained by 2D parameterizing the points of a 3D fragment 102, as explained in relation to Figure 9. As explained in relation to Figure 9, a geometric fragment 904 associated with a 3D fragment 102, and further a geometric texture fragment may be generated associated with the 3D fragment 102. When the 3D fragment 102 is viewed/determined from the first viewpoint 20, the fragment 904 contains only geometric information, and the texture information can be extracted from the first frame 40.

Фигура 11 показывает примеры групп фрагментов, полученных путем 2D параметризации 3D-фрагментов 3D частей сцены, связанной с первыми сегментами первого кадра, в соответствии с неограничивающим вариантом осуществления настоящего принципа.Figure 11 shows examples of groups of fragments obtained by 2D parameterization of 3D fragments of 3D portions of the scene associated with the first segments of the first frame, in accordance with a non-limiting embodiment of the present principle.

Фигура 11 иллюстрирует некоторые из групп фрагментов, полученных путем 2D-параметризации групп точек, которые содержатся в частях сцены, связанных с некоторыми первыми сегментами первого кадра 40. Фигура 11 показывает, например, группу фрагментов S1, связанных с первым сегментом T1 81 первого кадра 40, группу фрагментов S3, связанных с первым сегментом T3 83 первого кадра 40, группу фрагментов S5, связанных с первым сегментом T5 85 первого кадра 40, группу фрагментов S6, связанных с первым сегментом T6 86 первого кадра 40 и группу фрагментов S8, связанных с первым сегментом T8 88 первого кадра 40. Даже если не проиллюстрировано, группы фрагментов S2, S4 и S7 могут быть получены из контента 3D частей сцены, связанных с соответствующими первыми сегментами T2 82, T4 84 и T7 87.Figure 11 illustrates some of the groups of fragments obtained by 2D parameterization of groups of points that are contained in parts of the scene associated with some of the first segments of the first frame 40. Figure 11 shows, for example, a group of fragments S1 associated with the first segment T1 81 of the first frame 40 , a group of fragments S3 associated with the first segment T3 83 of the first frame 40, a group of fragments S5 associated with the first segment T5 85 of the first frame 40, a group of fragments S6 associated with the first segment T6 86 of the first frame 40, and a group of fragments S8 associated with the first segment T8 88 of the first frame 40. Even if not illustrated, groups of fragments S2, S4 and S7 can be obtained from the content of the 3D portions of the scene associated with the corresponding first segments T2 82, T4 84 and T7 87.

Группа фрагментов может содержать фрагменты, содержащие информацию о глубине и информацию о текстуре. В соответствии с вариантом группа фрагментов может содержать фрагменты, содержащие только информацию о глубине или только информацию о текстуре. Когда группа фрагментов содержит фрагменты, содержащие только информацию о глубине (соответственно информацию о текстуре), может быть сформирована соответствующая группа фрагментов, содержащая фрагменты, которые содержат только информацию о текстуре (соответственно информацию о глубине). В соответствии с последним вариантом количество фрагментов глубины, которые содержатся в соответствующей группе (например, группе S1, связанной с первым сегментом T1) может отличаться от (например, быть больше, чем) количества фрагментов текстуры, которые содержатся в соответствующей группе (например, в группе S1’, не проиллюстрировано, связанной с тем же самым первым сегментом T1, что и группа S1).A group of fragments may contain fragments containing depth information and texture information. In an embodiment, the group of fragments may contain fragments containing only depth information or only texture information. When a tile group contains tiles that contain only depth information (respectively, texture information), a corresponding tile group can be formed containing tiles that contain only texture information (respectively, depth information). According to the latter embodiment, the number of depth fragments that are contained in the corresponding group (for example, the group S1 associated with the first segment T1) may be different from (for example, be greater than) the number of texture fragments that are contained in the corresponding group (for example, in group S1', not illustrated, associated with the same first T1 segment as group S1).

Количество фрагментов, которые содержатся в группе, может варьироваться от группы к другой группе. Например, количество фрагментов, которое содержится в группе S1, больше количества фрагментов, которое содержится в группах S5 и S8, но меньше, чем количество фрагментов, которое содержится в группах S3 и S6. Количество фрагментов, которое содержится в группе (например, группе S1), может зависеть от контента 3D части сцены, связанной с первым сегментом, связанным с упомянутой группой (например, первым сегментом T1). Количество фрагментов может, например, зависеть от количества согласованных по глубине групп точек, которые содержатся в 3D части сцены, соответствующей первому сегменту (например, первому сегменту T1), связанному с группой фрагментов (например, S1).The number of fragments that are contained in a group may vary from group to other group. For example, the number of fragments that is contained in group S1 is greater than the number of fragments that is contained in groups S5 and S8, but less than the number of fragments that is contained in groups S3 and S6. The number of fragments that are contained in a group (eg, group S1) may depend on the content of the 3D portion of the scene associated with the first segment associated with said group (eg, first segment T1). The number of fragments may, for example, depend on the number of depth-matched groups of points that are contained in the 3D portion of the scene corresponding to the first segment (eg, the first segment T1) associated with the group of fragments (eg, S1).

В соответствии с вариантом, количество фрагментов является одним и тем же в каждой из групп фрагментов. Количество фрагментов может быть определяемым пользователем значением или значением по умолчанию, которое хранится в устройстве, выполненном с возможностью формирования фрагментов и групп фрагментов.According to an embodiment, the number of fragments is the same in each of the fragment groups. The number of fragments may be a user-defined value or a default value that is stored in a device configured to generate fragments and groups of fragments.

Фигура 12 показывает неограничивающий пример кодирования, передачи и декодирования данных, представляющих собой 3D сцену в формате, который, одновременно, совместим с 3DoF и 3DoF+ визуализацией.Figure 12 shows a non-limiting example of encoding, transmitting and decoding data representing a 3D scene in a format that is simultaneously compatible with 3DoF and 3DoF+ rendering.

3D сцена 120 (или последовательность 3D сцен) кодируется в потоке 122 кодером 121. Поток 122 содержит первый элемент синтаксиса, несущий данные, представляющие собой 3D сцену для 3DoF визуализации (данные первого изображения 40 фигуры 8), и по меньшей мере второй элемент синтаксиса, несущий данные, представляющие собой 3D сцену для 3DoF+ визуализации (например, данные одного или более вторых/третьих изображений 130 фигуры 13 и/или данные одного или более четвертых изображений 151, 152 фигуры 15).A 3D scene 120 (or a sequence of 3D scenes) is encoded into a stream 122 by an encoder 121. The stream 122 includes a first syntax element carrying data representing a 3D scene for 3DoF rendering (data from the first image 40 of Figure 8), and at least a second syntax element carrying data representing a 3D scene for 3DoF rendering (data from the first image 40 of Figure 8). carrying data representing a 3D scene for 3DoF+ rendering (eg, data of one or more second/third images 130 of Figure 13 and/or data of one or more fourth images 151, 152 of Figure 15).

Кодер 121 является, например, совместимым с кодером, таким как:Encoder 121 is, for example, compatible with an encoder such as:

HEVC (его спецификация находится на веб-сайте ITU, рекомендация T, выпуск H, h265, http://www.itu.int/rec/T-REC-H.265-201612-I/en);HEVC (its specification is on the ITU website, Recommendation T, Issue 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/en приложение G и I);3D-HEVC (an extension of HEVC whose specification is on the ITU website, Recommendation T, Issue H, h265, http://www.itu.int/rec/T-REC-H.265-201612-I/en appendix G and I);

VP9, разработанный Google; илиVP9, developed by Google; or

AV1 (AOMedia Video 1) разработанный Альянсом за Открытые Медиа.AV1 (AOMedia Video 1) developed by the Alliance for Open Media.

Декодер 123 получает поток 122 от источника. Например, источник принадлежит к набору, содержащему:Decoder 123 receives stream 122 from the source. For example, the source belongs to the set containing:

- локальную память, например, видеопамять или RAM (или Память с Произвольным Доступом), флэш-память, ROM (или Постоянная Память), жесткий диск;- local memory, for example, video memory or RAM (or Random Access Memory), flash memory, ROM (or Read Only Memory), hard drive;

- интерфейс хранения, например, интерфейс с запоминающим устройством большой емкости, RAM, флэш-памятью, ROM, оптическим диском или магнитным средством обеспечения;- a storage interface, for example, an interface with a mass storage device, RAM, flash memory, ROM, optical disk or magnetic media;

- интерфейс связи, например, проводной интерфейс (например, интерфейс шины, интерфейс глобальной сети, интерфейс локальной сети) или беспроводной интерфейс (такой как интерфейс IEEE 802.11 или интерфейс Bluetooth®); и- a communication interface, for example a wired interface (such as a bus interface, a WAN interface, a LAN interface) or a wireless interface (such as an IEEE 802.11 interface or a Bluetooth® interface); And

- интерфейс пользователя, такой как Графический Интерфейс Пользователя, позволяющий пользователю вводить данные.- a user interface, such as a Graphical User Interface, allowing the user to enter data.

Декодер 123 декодирует первый элемент синтаксиса потока 122 для 3DoF визуализации 124. Применительно к 3DoF+ визуализации 125 декодер декодирует как первый элемент синтаксиса, так и второй элемент синтаксиса потока 122.Decoder 123 decodes the first syntax element of stream 122 for 3DoF rendering 124. For 3DoF+ rendering 125, the decoder decodes both the first syntax element and the second syntax element of stream 122.

Декодер 123 совместим с кодером 121, например, совместим с декодером, таким как:Decoder 123 is compatible with encoder 121, for example, compatible with a decoder such as:

HEVC;HEVC;

3D-HEVC (расширение HEVC);3D-HEVC (HEVC extension);

VP9; илиVP9; or

AV1.AV1.

Фигура 13 показывает пример размещения фрагментов, которые содержатся в группах фрагментов фигуры 11 во вторых сегментах с 1301 по 13032 второго кадра 130, в соответствии с неограничивающим вариантом осуществления настоящих принципов.Figure 13 shows an example of the arrangement of tiles that are contained in the tile groups of Figure 11 in second segments 130 1 to 130 32 of second frame 130, in accordance with a non-limiting embodiment of the present principles.

Второй кадр 130 делится на множество вторых сегментов с 1301 по 13032, например, 32 вторых сегмента в неограничивающем примере фигуры 13. Количество вторых сегментов не ограничено 32 и может быть любым количеством при условии, что количество вторых сегментов больше количества первых сегментов первого изображения 40. Как и для первых сегментов, размер (например, высота и ширина) каждого второго сегмента с 1301 по 13032 является таким, что второй сегмент может содержать целое количество (больше или равное 1) CTU (Единица Дерева Кодирования, CTU соответствует наибольшему блоку кодирования, например, размера 64×64), причем вторые сегменты с 1301 по 13032 организованы в шаблоне сетки, со строками и столбцами фиксированного или переменного размера (например, Основной профиль 10 уровень 5.1 HEVC устанавливает максимальное количество строк и столбцов сегментов в 11×10).The second frame 130 is divided into a plurality of second segments 130 1 to 130 32 , for example, 32 second segments in the non-limiting example of Figure 13. The number of second segments is not limited to 32 and can be any number, provided that the number of second segments is greater than the number of first segments of the first image 40. As with the first segments, the size (eg, height and width) of every second segment from 130 1 to 130 32 is such that the second segment can contain an integer number (greater than or equal to 1) CTU (Coding Tree Unit, CTU corresponding to the largest encoding block, for example, of size 64x64), with the second segments 130 1 to 130 32 organized in a grid pattern, with rows and columns of fixed or variable size (for example, the Main Profile 10 level 5.1 HEVC sets the maximum number of rows and columns of segments in 11x10).

Вторые сегменты с 1301 по 13032 связаны с первыми сегментами с T1 по T8, причем один или несколько вторых сегментов связаны с каждым первым сегментом. Например, 2 вторых сегмента (например, вторые сегменты с 1301 по 1302) могут быть назначены первому сегменту T1, 4 вторых сегмента (например, вторые сегменты с 1303 по 1306) могут быть назначены первому сегменту T2, 5 вторых сегментов (например, вторые сегменты с 1307 по 13011) могут быть назначены первому сегменту T3, 5 вторых сегментов (например, вторые сегменты с 13012 по 13016) могут быть назначены первому сегменту T4, 3 вторых сегмента (например, вторые сегменты с 13017 по 13019) могут быть назначены первому сегменту T5, 5 вторых сегментов (например, вторые сегменты с 13020 по 13024) могут быть назначены первому сегменту T6, 5 вторых сегментов (например, вторые сегменты с 13025 по 13029) могут быть назначены первому сегменту T7 и 3 вторых сегмента (например, вторые сегменты с 13030 по 13032) могут быть назначены первому сегменту T8. Вторые сегменты используются, чтобы содержать и транспортировать фрагменты, полученные путем 2D-параметризации 3D частей сцены, связанных с первыми сегментами с T1 по T8. Фрагменты, которые содержатся в группе фрагментов S1, полученной путем 2D параметризации 3D части, связанной с первым сегментом T1, размещаются во вторых сегментах с 1301 по 1302, назначенных первому сегменту T1; фрагменты группы S2 размещаются во вторых сегментах с 1303 по 1306, назначенных первому сегменту T2; фрагменты группы S3 размещаются во вторых сегментах с 1307 по 13011, назначенных первому сегменту T3 и т.д.Second segments 130 1 to 130 32 are associated with first segments T1 through T8, with one or more second segments associated with each first segment. For example, 2 second segments (eg, second segments 130 1 to 130 2 ) may be assigned to the first segment T1, 4 second segments (eg, second segments 130 3 to 130 6 ) may be assigned to the first segment T2, 5 second segments ( e.g. second segments 130 7 to 130 11 ) can be assigned to the first segment T3, 5 second segments (e.g. second segments 130 12 to 130 16 ) can be assigned to the first segment T4, 3 second segments (e.g. second segments 130 17 to 130 19 ) can be assigned to the first segment T5, 5 second segments (for example, second segments 130 20 to 130 24 ) can be assigned to the first segment T6, 5 second segments (for example, second segments 130 25 to 130 29 ) can be assigned to the first segment T7 and 3 second segments (for example, second segments 130 30 to 130 32 ) can be assigned to the first segment T8. The second segments are used to contain and transport fragments obtained by 2D parameterization of the 3D portions of the scene associated with the first segments T1 to T8. The fragments that are contained in the fragment group S 1 obtained by 2D parameterization of the 3D part associated with the first T1 segment are placed in the second segments 130 1 to 130 2 assigned to the first T1 segment; fragments of the group S 2 are placed in the second segments from 130 3 to 130 6 assigned to the first segment T2; fragments of group S 3 are placed in the second segments from 130 7 to 130 11 assigned to the first segment T3, etc.

Вторые сегменты получаются, например, путем подразделения первых сегментов. Первый сегмент может, например, быть подразделен на 2, 4 или 8 вторых сегментов.The second segments are obtained, for example, by subdividing the first segments. The first segment can, for example, be subdivided into 2, 4 or 8 second segments.

Количество вторых сегментов, назначенных первому сегменту, может, например, зависеть от количества фрагментов, которые содержатся в группе фрагментов, связанной с первым сегментом. Данное количество может быть дополнительно ограничено максимальным значением так, что каждый первый сегмент может быть назначен по меньшей мере одному второму сегменту.The number of second segments assigned to the first segment may, for example, depend on the number of fragments that are contained in a group of fragments associated with the first segment. This number may be further limited to a maximum value such that each first segment may be assigned to at least one second segment.

Второе изображение 130 может содержать фрагменты, содержащие информацию о глубине и текстуре. В соответствии с вариантом второе изображение 130 может содержать фрагменты, содержащие только информацию о глубине, и формируется третье изображение, чтобы содержать фрагменты, содержащие информацию о текстуре, связанные с первыми сегментами, за исключением фрагментов, полученных из первой точки обзора. Третье изображение содержит множество третьих сегментов, причем количество третьих сегментов больше количества первых сегментов.The second image 130 may contain slices containing depth and texture information. In an embodiment, the second image 130 may contain fragments containing only depth information, and a third image is generated to contain fragments containing texture information associated with the first segments, excluding the fragments obtained from the first viewpoint. The third image contains a plurality of third segments, the number of third segments being greater than the number of first segments.

Параметры, такие как размер кадра и количество сегментов, могут быть одними и теми же для первых и вторых изображений. В соответствии с вариантом один или несколько параметров отличаются для первого и второго изображений.Parameters such as frame size and number of segments may be the same for the first and second images. In an embodiment, one or more parameters are different for the first and second images.

Фигура 14 показывает неограничивающий пример процесса для размещения фрагментов у группы фрагментов с S1 по S8 во вторых сегментах второго кадра 130 (и/или в третьем кадре).Figure 14 shows a non-limiting example of a process for placing tiles of a group of tiles S 1 through S 8 in the second segments of the second frame 130 (and/or in the third frame).

Первоначальный бюджет по вторым сегментам составляет 32 в соответствии с примером Фигуры 14.The initial budget for the second segments is 32 in accordance with the example of Figure 14.

Ввод для процесса состоит из списка из групп St из фрагментов ( и целые числа, причем соответствует количеству фрагментов в группе, причем = 8 в соответствии с примером Фигуры 14), причем , каждая группа с S1 по S8 соответствует первому сегменту с T1 по T8 в первом кадре 40.The input for the process consists of a list of groups S t of fragments ( And integers, and corresponds to the number of fragments in the group, and = 8 in accordance with the example of Figure 14), and , each group S 1 to S 8 corresponds to the first segment T1 to T8 in the first frame 40.

На первой операции проверяется, является ли размер каждого входного фрагмента не шире или выше размера второго сегмента. Например, с учетом того, что размер второго кадра 130 составляет 2048×1024 пикселей, и что 32 вторых сегмента имеют один и тот же размер, размер второго сегмента составляет 256×256 пикселей. Когда фрагмент не помещается в целевой размер второго сегмента, фрагмент дробится на более мелкие фрагменты, причем размер каждого меньше целевого размера второго сегмента.The first operation checks whether the size of each input fragment is no wider or higher than the size of the second segment. For example, given that the size of the second frame 130 is 2048×1024 pixels, and that the 32 second segments are the same size, the size of the second segment is 256×256 pixels. When a fragment does not fit into the second segment's target size, the fragment is split into smaller fragments, each smaller than the second segment's target size.

На второй операции входные фрагменты сортируются по убыванию визуальной важности. Визуальная важность фрагмента может зависеть от его расстояния от точки просмотра (чем дальше, тем меньше важность), и/или его углового местоположения по отношению к основному направлению просмотра (крайние левые, правые, верхние или нижние фрагменты менее важны, чем центральные), и/или преград (фрагменты, которые закрыты с центральной точки просмотра являются менее важными). Сортировка в соответствии с визуальной важностью выполняется для всех входных фрагментов, т.е. путем обработки всех входных фрагментов всех групп фрагментов с S1 по S8 в одно и то же время и без параллельного рассмотрения групп фрагментов с S1 по S8 или одного после другого. Тем не менее информация, связанная с принадлежностью входных фрагментов к группам фрагментов, сохраняется для последующих операций.In the second operation, the input fragments sorted in descending order of visual importance. The visual importance of a fragment may depend on its distance from the viewing point (the farther away, the less important), and/or its angular location relative to the main viewing direction (the far left, right, top or bottom fragments are less important than the central ones), and /or obstructions (fragments that are obscured from the central viewing point are less important). Sorting according to visual importance is performed on all input fragments, i.e. by processing all input fragments of all fragment groups S 1 to S 8 at the same time and without considering the fragment groups S 1 to S 8 in parallel or one after the other. However, information related to the membership of input fragments in fragment groups is retained for subsequent operations.

алгоритмов упаковки могут, например, выполняться параллельно, причем один алгоритм упаковки для каждой группы фрагментов с S1 по S8. В качестве примеров, в качестве алгоритма упаковки могут быть использованы способы Шельфов, Гильотины, Максимальных Прямоугольников и Горизонта, со всеми их вариантами, описанные в документе «A thousand ways to pack the bin - A practical approach to two-dimensional rectangle bin packing», автор J. Jylänki. packing algorithms can, for example, be executed in parallel, with one packing algorithm for each group of fragments S 1 to S 8 . As examples, the Shelf, Guillotine, Maximum Rectangle and Horizon methods, with all their variants, described in the document “A thousand ways to pack the bin - A practical approach to two-dimensional rectangle bin packing” can be used as a packing algorithm. by J. Jylänki.

На третьей операции входные фрагменты могут быть обработаны один за другим, начиная с наиболее визуально важного. Определяется группа фрагментов, к которой принадлежит входной фрагмент (например, извлекается из метаданных, связанных с входными фрагментами) и входные фрагменты направляются в ветвь упаковки (t=с 1 по 8), соответствующую группе фрагментов, к которой каждый из них принадлежит. Один или несколько вторых сегментов с 1301 по 13032 назначаются каждой ветви упаковки.In the third operation, the input fragments can be processed one by one, starting with the most visually important. The fragment group to which the input fragment belongs is determined (eg, extracted from the metadata associated with the input fragments) and the input fragments are directed to the packaging branch (t=1 to 8) corresponding to the fragment group to which each belongs. One or more second segments 130 1 to 130 32 are assigned to each branch of the package.

Когда в одной из ветвей упаковки больше нет места в текущем втором сегменте для текущего поступающего фрагмента, создается новый пустой второй сегмент и упаковка возобновляется до следующего раунда упаковки. Применительно к следующим фрагментам в той ветви упаковки, все вторые сегменты, созданные в течение предыдущего раунда упаковки, остаются в качестве потенциальных целевых вторых сегментов. Конечно, новый поступающий входной фрагмент может быть меньше предыдущего и может быть размещен в ранее созданном втором сегменте.When one of the packing branches no longer has room in the current second segment for the current incoming fragment, a new empty second segment is created and packaging resumes until the next round of packaging. For subsequent fragments in that packaging branch, all second segments created during the previous packaging round remain as potential target second segments. Of course, the new incoming input fragment may be smaller than the previous one and may be placed in the previously created second segment.

Процесс останавливается, когда все входные фрагменты были обработаны или, был использован бюджет вторых сегментов и все вторые сегменты заполнены. Если второй кадр 130 недостаточного размера и все входные фрагменты не могут быть упакованы, оставшиеся неупакованные фрагменты не пакуются и отбрасываются. Поскольку входные фрагменты были обработаны в соответствии с их визуальной важностью, то отброшенные входные фрагменты соответствуют наименее визуально важным входным фрагментам, что ограничивает проблемы при визуализации 3D сцены из фрагментов второго кадра 130.The process stops when all input fragments have been processed or the budget for the second segments has been used and all second segments are full. If the second frame 130 is not of sufficient size and all input fragments cannot be packed, the remaining unpacked fragments are not packed and are discarded. Since the input tiles have been processed according to their visual importance, the discarded input tiles correspond to the least visually important input tiles, limiting problems when rendering a 3D scene from the tiles of the second frame 130.

Фигура 15 показывает неограничивающие примеры двух четвертых кадров 151, 152, полученных из вторых сегментов второго кадра 130 (и/или из третьих сегментов третьего кадра).Figure 15 shows non-limiting examples of two fourth frames 151, 152 derived from second segments of second frame 130 (and/or from third segments of third frame).

Каждый из четвертых кадров 151, 152 содержит фрагменты, которые содержатся в части вторых сегментов второго кадра 130. Вторые сегменты в четвертом кадре соответствуют выбору некоторых из первых сегментов в первом кадре, причем существует отображение между первыми сегментами и вторыми сегментами. На стороне визуализации может потребоваться только часть первого кадра, поскольку окно просмотра устройства конечного пользователя, которое используется для визуализации контента, может быть меньше поля обзора контента первого кадра 40. В соответствии с направлением просмотра, которое может быть определено на уровне устройства конечного пользователя, может быть продемонстрирована только суб-часть кадра 40 и должно быть осуществлено декодирование и визуализация только первых сегментов, соответствующих данной суб-части.Each of the fourth frames 151, 152 contains fragments that are contained in a portion of the second segments of the second frame 130. The second segments in the fourth frame correspond to a selection of some of the first segments in the first frame, and there is a mapping between the first segments and the second segments. On the rendering side, only a portion of the first frame may be needed because the viewport of the end user device that is used to render the content may be smaller than the content viewport of the first frame 40. According to the view direction, which may be defined at the end user device level, may Only a sub-portion of frame 40 will be shown, and only the first segments corresponding to that sub-portion must be decoded and rendered.

Четвертый кадр 151 содержит, например, 20 четвертых сегментов, размещенных в 5 столбцах и 4 строках (с, например, разрешением 1280×1024 пикселей). Четвертый кадр 151 содержит данные, соответствующие окну просмотра, которое охватывает 3D части 3D сцены, связанные с первыми сегментами T1, T2, T5 и T6, и содержит фрагменты, полученные путем 3D-параметризации 3D частей 3D сцены, связанной с этими первыми сегментами T1, T2, T5 и T6, т.е. фрагменты, которые содержатся во вторых сегментах 1301, 1302, 1033, 1034, 1305, 1306, 13017, 13018, 13019, 13020, 13021, 13022, 13023 и 13024. Сегмент данного четвертого кадра может соответствовать второму сегменту и содержать контент (фрагменты и данные, которые содержатся в фрагментах) соответствующего второго сегмента, причем второй сегмент идентифицируется своим индексом, т.е. с 1 по 32. Оставшиеся сегменты данного четвертого кадра, т.е. сегменты, заполненные диагональными полосами, являются пустыми и не содержат данные или содержат фиктивные данные.The fourth frame 151 contains, for example, 20 fourth segments arranged in 5 columns and 4 rows (with, for example, a resolution of 1280×1024 pixels). The fourth frame 151 contains data corresponding to a viewport that covers the 3D portions of the 3D scene associated with the first segments T1, T2, T5, and T6, and contains fragments obtained by 3D parameterizing the 3D portions of the 3D scene associated with these first segments T1, T2, T5 and T6, i.e. fragments contained in the second segments 130 1 , 130 2 , 103 3 , 103 4 , 130 5 , 130 6 , 130 17 , 130 18 , 130 19 , 130 20 , 130 21 , 130 22 , 130 23 and 130 24 . A segment of a given fourth frame may correspond to a second segment and contain the content (fragments and data contained in the fragments) of the corresponding second segment, the second segment being identified by its index, i.e. 1 to 32. The remaining segments of this fourth frame, i.e. segments filled with diagonal stripes are empty and contain no data or contain dummy data.

Четвертые сегменты могут быть получены из вторых сегментов или непосредственно из процесса 2D параметризации, без формирования вторых сегментов второго кадра фигуры 13.The fourth segments can be obtained from the second segments or directly from the 2D parameterization process, without generating the second segments of the second frame of Figure 13.

Каждый из первого, второго, третьего и четвертого кадров имеет фиксированный по времени размер и фиксированное по времени количество сегментов. Размер и/или количество сегментов могут быть либо одними и теми же для первого, второго, третьего и четвертого кадров, либо могут быть разными между первым, вторым, третьим и/или четвертым кадрами.Each of the first, second, third and fourth frames has a time-fixed size and a time-fixed number of segments. The size and/or number of segments may be either the same for the first, second, third and fourth frames, or may be different between the first, second, third and/or fourth frames.

Четвертый кадр 152 содержит 20 четвертых сегментов, размещенных в 5 столбцах и 4 строках, как для четвертого кадра 151. Четвертый кадр 152 содержит данные, соответствующие окну просмотра, которое охватывает 3D части 3D сцены, связанной с первыми сегментами T2, T3, T6 и T7, и содержит фрагменты, полученные путем 3D-параметризации 3D частей 3D сцены, связанных в этими первыми сегментами T2, T3, T6 и T7, т.е. фрагменты, которые содержатся во вторых сегментах 1033, 1034, 1305, 1306, 1037, 1038, 1309, 13010, 13011, 13020, 13021, 13022, 13023, 13024, 13025, 13026, 13027, 13028 и 13029. Вторые сегменты, распределенные четвертому кадру, идентифицируются с помощью их индекса 3, 4, 5, 6, 7, 8, 9, 10, 11,20, 21, 22, 23, 24, 25, 26, 27, 28 и 29. Оставшийся сегмент четвертого кадра, т.е. сегмент, заполненный диагональными полосами, является пустым и не содержит данные или содержит фиктивные данные.The fourth frame 152 contains 20 fourth segments arranged in 5 columns and 4 rows as for the fourth frame 151. The fourth frame 152 contains data corresponding to a viewport that covers the 3D portions of the 3D scene associated with the first segments T2, T3, T6 and T7 , and contains fragments obtained by 3D parameterization of 3D parts of the 3D scene, connected in these first segments T2, T3, T6 and T7, i.e. fragments contained in the second segments 103 3 , 103 4 , 130 5 , 130 6 , 103 7 , 103 8 , 130 9 , 130 10 , 130 11 , 130 20 , 130 21 , 130 22 , 130 23 , 130 24 , 130 25 , 130 26 , 130 27 , 130 28 and 130 29 . The second segments allocated to the fourth frame are identified by their index 3, 4, 5, 6, 7, 8, 9, 10, 11,20, 21, 22, 23, 24, 25, 26, 27, 28 and 29. The remaining segment of the fourth frame, i.e. a segment filled with diagonal stripes is empty and contains no data or contains dummy data.

Вообще говоря, существует сочетаний первых сегментов в первом кадре 40, соответствующих всенаправленному плоскому изображению/видео сцены, причем каждое сочетание из первых сегментов соответствует разной ориентации окна просмотра ( является целым числом, например, равным 4). Запрашивается только первых сегментов из полного набора из первых сегментов ( причем W равно 4 и H равно 2 в примере фигуры 8) и дорожка экстрактора выполняет их агрегацию в разделенный на сегментный совместимый с HEVC (или VP9 или AV1) битовый поток перед декодированием.Generally speaking, there is combinations of first segments in the first frame 40 corresponding to an omnidirectional planar image/video scene, each combination of the first segments correspond to different orientations of the viewing window ( is an integer, for example equal to 4). Only requested the first segments from the complete set of first segments ( wherein W is 4 and H is 2 in the example of Figure 8) and the extractor track aggregates them into a segmented HEVC (or VP9 or AV1) compatible bitstream before decoding.

Аналогичный процесс агрегации выполняется для подмножества вторых сегментов (из полного набора из вторых сегментов), соответствующих одному из сочетаний первых сегментов. Вторые сегменты все одного и того же размера, причем всегда возможна агрегация с разделением на сегменты в прямоугольный кадр (например, четвертый кадр 151, 152) из сегментов . Существует 3 возможности:A similar aggregation process is performed for the subset second segments (from the full set of second segments) corresponding to one of combinations of the first segments. The second segments are all the same size, and aggregation into segments into a rectangular frame (for example, fourth frame 151, 152) is always possible from segments . There are 3 possibilities:

(i) полная сетка деления на сегменты на стороне декодера (т.е. четвертый кадр) используется для агрегации;(i) the full segmentation grid on the decoder side (ie the fourth frame) is used for aggregation;

(ii) используется только часть сетки деления на сегменты на стороне декодера, и фиктивные значения заполняют неиспользованные сегменты (показаны с помощью диагональных полос);(ii) only part of the decoder-side segmentation grid is used, and dummy values fill in the unused segments (shown with diagonal bars);

(iii) используется полная сетка деления на сегменты на стороне декодера (т.е. четвертый кадр), но некоторые вторые сегменты сбрасываются; поскольку каждому фрагменту назначается значение визуальной важности (в соответствии с алгоритмом упаковки, описанным по отношению к фигуре 14), то визуальная важность сегментов определяется как максимальная визуальная важность фрагментов в нем упакованных; приоритетно сбрасываются сегменты с наименьшей визуальной важностью.(iii) the full decoder-side segmentation grid is used (i.e. the fourth frame), but some second segments are discarded; since each fragment is assigned a visual importance value (in accordance with the packing algorithm described in relation to Figure 14), the visual importance of segments is defined as the maximum visual importance of the fragments packed within it; Segments with the least visual importance are reset with priority.

Фигура 16 показывает неограничивающий пример варианта осуществления синтаксиса потока, несущего информацию и данные, представляющие собой 3D сцену, когда данные передаются через основанный на пакете протокол передачи. Фигура 16 показывает примерную структуру 16 потока объемного видео. Структура состоит из контейнера, который организует поток в независимых элементах синтаксиса. Структура может содержать часть 161 заголовка, которая является набором данных общих для каждого из элементов синтаксиса потока. Например, часть заголовка содержит метаданные об элементах синтаксиса, описывающие характер и роль каждого из них. Часть заголовка также может содержать координаты точки обзора, использованной для кодирования первого кадра для 3DoF визуализации, и информацию о размере и разрешении кадров. Структура содержит полезную нагрузку, содержащую первый элемент 162 синтаксиса и по меньшей мере один второй элемент 163 синтаксиса. Первый элемент 162 синтаксиса содержит данные, представляющие собой первый кадр, подготовленный для 3DoF визуализации, соответствующий, например, первой видеодорожке, связанной с данными текстуры первого кадра, кодированного в первом элементе синтаксиса.Figure 16 shows a non-limiting example of an embodiment of a stream syntax carrying information and data representing a 3D scene when the data is transmitted through a packet-based transfer protocol. Figure 16 shows an exemplary volumetric video stream structure 16. The structure consists of a container that organizes flow into independent syntax elements. The structure may contain a header portion 161, which is a set of data common to each of the flow syntax elements. For example, the header portion contains metadata about the syntax elements, describing the nature and role of each one. The header portion may also contain the coordinates of the viewpoint used to encode the first frame for 3DoF rendering, and information about the size and resolution of the frames. The structure contains a payload containing a first syntax element 162 and at least one second syntax element 163. The first syntax element 162 contains data representing a first frame prepared for 3DoF rendering, corresponding to, for example, a first video track associated with the texture data of the first frame encoded in the first syntax element.

Один или несколько вторых элементов 163 синтаксиса содержат геометрическую информацию и информацию о текстуре, связанные с, например, одной или несколькими вторыми видеодорожками. Один или несколько вторых элементов 163 синтаксиса содержат, например, данные, представляющие собой один или несколько вторых кадров и/или третьих кадров, описанных по отношению к фигуре 13.One or more second syntax elements 163 comprise geometric and texture information associated with, for example, one or more second video tracks. One or more second syntax elements 163 contain, for example, data representing one or more second frames and/or third frames described with respect to Figure 13.

В соответствии с вариантом один или несколько вторых элементов 163 синтаксиса содержат данные, представляющие собой один или несколько четвертых кадров, описанных по отношению к фигуре 15.In an embodiment, one or more second syntax elements 163 comprise data representing one or more fourth frames described with respect to FIG. 15.

В соответствии с дополнительным вариантом поток дополнительно содержит по меньшей мере инструкцию для извлечения по меньшей мере части упомянутых первых данных и вторых данных в одном или более третьих элементах синтаксиса.According to a further embodiment, the stream further comprises at least instructions for retrieving at least a portion of said first data and second data in one or more third syntax elements.

В целях иллюстрации в контексте стандарта формата файла ISOBMFF, обращение к фрагментам текстуры, геометрическим фрагментам и метаданным как правило будет осуществляться в дорожках ISOBMFF в блоке типа moov, причем сами данные текстуры и данные геометрии встроены в блок медиа-данных типа mdat.For purposes of illustration, in the context of the ISOBMFF file format standard, texture chunks, geometry chunks, and metadata will typically be accessed in ISOBMFF tracks in a block of type moov, with the texture data and geometry data themselves embedded in a media data block of type mdat.

Фигура 17 показывает неограничивающий пример процесса, чтобы кодировать 3D сцену. Процесс фигуры 17 соответствует основанному на сегментах кодированию (например, основанному на сегментах HEVC или основанному на сегментах AV1) и инкапсуляции в файл объемного видео.Figure 17 shows a non-limiting example of a process to encode a 3D scene. The process of Figure 17 corresponds to segment-based encoding (eg, HEVC segment-based or AV1 segment-based) and volumetric video file encapsulation.

Последовательность 171 первых кадров 40 может быть кодирована, чтобы получить:The sequence 171 of the first frames 40 can be encoded to obtain:

Множество дорожек 1710 сегментов, которые переносят обратно совместимое всенаправленное видео, причем каждая дорожка сегментов содержит данные, которые содержатся в одном отличном первом сегменте из первых сегментов с T1 по T8 (например, одна дорожка сегментов для переноса контента первого сегмента T1, одна дорожка сегментов для переноса контента первого сегмента T2, одна дорожка сегментов для переноса контента первого сегмента T3, … и одна дорожка сегментов для переноса контента первого сегмента T8); причем количество дорожек сегментов может находиться между, например, 2 и N, причем N соответствует количеству первых сегментов в первом кадре 40;A plurality of segment tracks 1710 that carry backwards compatible omnidirectional video, each segment track containing data that is contained in one distinct first segment of the first segments T1 to T8 (for example, one segment track to carry the content of the first segment T1, one segment track to carry the content of the first segment T2, one segment track to carry the content of the first segment T3, ... and one segment track to carry the content of the first segment T8 ); wherein the number of segment tracks may be between, for example, 2 and N, with N corresponding to the number of first segments in the first frame 40;

Метаданные 1712, соответствующие проецированию, которое используется для получения первого кадра, сшиванию и упаковке по областям, чтобы осуществлять визуализацию всенаправленного видео;Metadata 1712 corresponding to the projection that is used to obtain the first frame, stitching and packing into regions to render omnidirectional video;

Одну или несколько дорожек 1711 экстрактора, вплоть до максимального количества дорожек экстрактора, соответствующих количеству C возможных ориентаций окна просмотра; экстрактор содержит инструкции для воссоздания битового потока, который может быть декодирован одним декодером, причем воссозданный битовый поток является синтаксически корректным для декодирования посредством декодера.One or more extractor tracks 1711, up to a maximum number of extractor tracks corresponding to the number C of possible viewport orientations; the extractor contains instructions for reconstructing a bit stream that can be decoded by a single decoder, the reconstructed bit stream being syntactically correct for decoding by the decoder.

Сигнал, полученный на выходе процесса кодирования, может содержать, например, 8 дорожек 1710 сегментов (8 соответствует количеству первых сегментов в примере фигуры 8), 4 дорожки 1711 экстрактора (4 соответствует количеству возможных сочетаний первых сегментов в соответствии с ориентацией окна просмотра на устройстве конечного пользователя, а именно первое сочетание, содержащее первые сегменты T1, T2, T5, T6; второе сочетание, содержащее первые сегменты T2, T3, T6, T7; третье сочетание, содержащее первые сегменты T3, T4, T7, T8; и четвертое сочетание, содержащее первые сегменты T4, T1, T8, T5), и метаданные 1712.The output signal from the encoding process may contain, for example, 8 segment tracks 1710 (8 corresponds to the number of first segments in the example of Figure 8), 4 extractor tracks 1711 (4 corresponds to the number of possible combinations of first segments in accordance with the orientation of the viewport on the end device user, namely a first combination containing the first segments T1, T2, T5, T6; a second combination containing the first segments T2, T3, T6, T7; a third combination containing the first segments T3, T4, T7, T8; and a fourth combination, containing the first segments T4, T1, T8, T5), and metadata 1712.

В соответствии с вариантом сигнал содержит только часть из 8 дорожек 1710 сегментов, только одну дорожку 1711 экстрактора и метаданные 1712. Например, декодер может передавать запрос, который запрашивает заданную ориентацию окна просмотра, соответствующую одному сочетанию первых сегментов, например, второму сочетанию, содержащему первые сегменты T2, T3, T6, T7. В ответ на запрос кодер может кодировать только дорожку экстрактора, соответствующую запросу с дорожками 2, 3, 6 и 7 сегментов, содержащими связанные первые сегменты T2, T3, T6 и T7, и передавать запрошенный экстрактор, 4 дорожки сегментов, необходимые для воссоздания битового потока для визуализации запрошенного окна просмотра, с связанными метаданными 1712. Такой вариант обеспечивает уменьшение затрат на кодирование и уменьшение полосы пропускания, которая необходима для транспортировки данных. Такая зависимая от окна просмотра доставка контента может быть реализована на основании механизма потоковой передачи DASH (документ «ISO/IEC 23009-1, Dynamic adaptive streaming over HTTP» (Динамическая адаптивная потоковая передача через HTTP)).In an embodiment, the signal contains only a portion of the 8 segment tracks 1710, only one extractor track 1711, and metadata 1712. For example, the decoder may transmit a request that requests a given viewport orientation corresponding to one combination of the first segments, for example, a second combination containing the first segments T2, T3, T6, T7. In response to a request, the encoder can encode only the extractor track corresponding to the request with segment tracks 2, 3, 6, and 7 containing the associated first segments T2, T3, T6, and T7, and transmit the requested extractor, the 4 segment tracks needed to reconstruct the bitstream to render the requested viewport, with associated metadata 1712. This option reduces encoding costs and reduces the bandwidth required to transport the data. Such viewport-dependent content delivery can be implemented based on the DASH streaming mechanism (ISO/IEC 23009-1, Dynamic adaptive streaming over HTTP).

Кодирование последовательности 171 обеспечивает визуализацию всенаправленного видео после декодирования, причем дорожки, полученные из кодирования данной последовательности 171, совместимы, например, со стандартом OMAF (документ «ISO/IEC 23090-2 Information Technology - Coded representation of immersive media (MPEG-I) - Part 2: Omnidirectional media format» (Информационные Технологии - Кодированное представление мультимедиа с погружением (MPEG-I) - Часть 2: Формат всенаправленного мультимедиа).The encoding of the sequence 171 provides visualization of omnidirectional video after decoding, and the tracks obtained from the encoding of this sequence 171 are compatible, for example, with the OMAF standard (ISO/IEC 23090-2 Information Technology - Coded representation of immersive media (MPEG-I) - Part 2: Omnidirectional media format"

Последовательность 172 вторых кадров 130 может быть кодирована, чтобы получить:The sequence 172 of second frames 130 may be encoded to obtain:

Множество дорожек 1720 сегментов, которые переносят вторые сегменты и связанные фрагменты, причем каждая дорожка сегментов содержит данные, которые содержатся в одном отличном втором сегменте из вторых сегментов с 1301 по 13032;A plurality of segment tracks 1720 that carry second segments and associated fragments, each segment track containing data that is contained in one distinct second segment of second segments from 130 1 to 130 32 ;

Метаданные 1722, содержащие, например, параметры отмены проецирования фрагментов, информацию, представляющую собой местоположение внутри вторых сегментов второго кадра (соответственно местоположение внутри третьих сегментов третьего кадра, если применимо); иMetadata 1722 containing, for example, fragment deprojection parameters, information representing the location within the second segments of the second frame (respectively, the location within the third segments of the third frame, if applicable); And

Одну или несколько дорожек 1721 экстрактора, вплоть до максимального количества дорожек экстрактора, соответствующего количеству C возможных ориентаций окна просмотра; экстрактор содержит одну или несколько инструкций для воссоздания битового потока, который может быть декодирован одним декодером, причем воссозданный битовый поток является синтаксически корректным для декодирования посредством декодера; экстрактор содержит инструкцию для извлечения данных из другой дорожки, которая связана с дорожкой, в которой находится экстрактор, как описано в документе «Information Technology - Coding of audiovisual objects - Part 15: carriage of NAL unit structured video in the ISO Base Media File Format, AMENDMENT 1: Carriage of Layered HEVC», ISO/IEC 14496-15:2014/PDAM 1, датированный 11 июля 2014 г.One or more extractor tracks 1721, up to a maximum number of extractor tracks corresponding to the number C of possible viewport orientations; the extractor contains one or more instructions for reconstructing a bitstream that can be decoded by a single decoder, wherein the reconstructed bitstream is syntactically correct for decoding by the decoder; The extractor contains an instruction to extract data from another track that is associated with the track in which the extractor is located, as described in the document "Information Technology - Coding of audiovisual objects - Part 15: carriage of NAL unit structured video in the ISO Base Media File Format." AMENDMENT 1: Carriage of Layered HEVC", ISO/IEC 14496-15:2014/PDAM 1, dated 11 July 2014.

Сигнал, полученный на выходе процесса кодирования может содержать, например, 32 дорожки 1720 сегментов (32 соответствует количеству вторых сегментов в примере фигуры 13), 4 дорожки 1721 экстрактора (4 соответствует количеству возможных сочетаний первых сегментов в соответствии с ориентацией окна просмотра устройства конечного пользователя, а именно первое сочетание, содержащее вторые сегменты, распределенные для первых сегментов T1, T2, T5, T6; второе сочетание, содержащее вторые сегменты, распределенные для первых сегментов T2, T3, T6, T7; третье сочетание, содержащее вторые сегменты, распределенные для первых сегментов T3, T4, T7, T8; и четвертое сочетание, содержащее вторые сегменты, распределенные для первых сегментов T4, T1, T8, T5), и метаданные 1722.The output signal from the encoding process may contain, for example, 32 segment tracks 1720 (32 corresponds to the number of second segments in the example of Figure 13), 4 extractor tracks 1721 (4 corresponds to the number of possible combinations of the first segments according to the orientation of the end user device's viewing window, namely, a first combination containing second segments allocated to the first segments T1, T2, T5, T6; a second combination containing second segments allocated to the first segments T2, T3, T6, T7; a third combination containing second segments allocated to the first segments T3, T4, T7, T8; and a fourth combination containing the second segments allocated to the first segments T4, T1, T8, T5), and metadata 1722.

В соответствии с вариантом сигнал содержит только часть из 32 дорожек 1720 сегментов, только одну дорожку 1721 экстрактора и метаданные 1722. Например, декодер может передавать запрос, который запрашивает заданную ориентацию окна просмотра, соответствующую одному сочетанию первых сегментов, например, второму сочетанию, содержащему вторые сегменты, распределенные для первых сегментов T2, T3, T6, T7. В ответ на запрос кодер может формировать только дорожку экстрактора, соответствующую запросу, и кодировать дорожки сегментов, содержащие вторые сегменты, распределенные для первых сегментов T2, T3, T6 и T7, содержащих данные, связанные со вторыми сегментами, распределенными первым сегментам T2, T3, T6 и T7, и передавать запрошенный экстрактор, причем связанные дорожки сегментов необходимы для воссоздания битового потока для визуализации запрошенного окна просмотра с связанными метаданными 1722. Такой вариант обеспечивает уменьшение затрат на кодирование и уменьшение полосы пропускания, которая необходима для транспортировки данных. Такая зависимая от окна просмотра доставка контента может быть реализована на основании механизма потоковой передачи DASH (документ «ISO/IEC 23009-1, Dynamic adaptive streaming over HTTP»).In an embodiment, the signal contains only a portion of the 32 segment tracks 1720, only one extractor track 1721, and metadata 1722. For example, the decoder may transmit a request that requests a given viewport orientation corresponding to one combination of the first segments, for example, a second combination containing the second segments allocated for the first segments T2, T3, T6, T7. In response to the request, the encoder may generate only the extractor track corresponding to the request, and encode the segment tracks containing the second segments allocated to the first segments T2, T3, T6 and T7 containing data associated with the second segments allocated to the first segments T2, T3, T6 and T7, and transmit the requested extractor, wherein the associated segment tracks are needed to recreate the bitstream for rendering the requested viewport with associated metadata 1722. This option reduces encoding costs and reduces the bandwidth required to transport the data. Such viewport-dependent content delivery can be implemented based on the DASH streaming mechanism (document “ISO/IEC 23009-1, Dynamic adaptive streaming over HTTP”).

Кодирование последовательности 172 с последовательностью 171 обеспечивает визуализацию объемного видео.Encoding sequence 172 with sequence 171 provides volumetric video rendering.

Если последовательность 172 соответствует последовательности вторых изображений, содержащих только геометрическую информацию, то дополнительная последовательность из третьих кадров, содержащих информацию о текстуре, может быть кодирована точно таким же образом, как последовательность 172.If sequence 172 corresponds to a sequence of second images containing only geometric information, then an additional sequence of third frames containing texture information may be encoded in exactly the same manner as sequence 172.

Фигура 18 показывает неограничивающий пример процесса, чтобы декодировать битовый поток, полученный с помощью процесса кодирования фигуры 17.Figure 18 shows a non-limiting example of a process to decode a bitstream obtained using the encoding process of Figure 17.

Процесс декодирования содержит два основных процесса, первый процесс, чтобы декодировать данные, представляющие собой всенаправленный контент (только информация о текстуре) для 3DoF визуализации, и второй процесс, чтобы декодировать данные, обеспечивающие визуализацию объемного контента применительно к 3DoF+ визуализации.The decoding process contains two main processes, a first process to decode data representing omnidirectional content (texture information only) for 3DoF rendering, and a second process to decode data representing volumetric content rendering for 3DoF+ rendering.

В первом процессе осуществляется синтаксический анализ дорожек 1810 сегментов, связанных с запрошенной ориентацией окна просмотра (дорожек, содержащих данные, связанные с первыми сегментами T2, T3, T6 и T7 в соответствии с неограничивающим примером фигуры 17) посредством синтаксического анализатора (парсера) 181 в соответствии с инструкциями, принятыми в дорожке экстрактора. Синтаксический анализатор 181 позволяет воссоздать битовый поток 1811, который совместим с декодером 183 (например, совместимый с HEVC битовый поток, если декодер 183 является HEVC-совместимым, или совместимый с AV1 битовый поток, если декодер 183 является AV1-совместимым). Данные, которые содержатся в битовом потоке 1811, декодируются декодером 183 и декодированные данные передаются визуализатору 185, который выполнен с возможностью визуализации всенаправленного контента с использованием метаданных 1712, которые содержатся в битовом потоке, полученном с помощью процесса кодирования фигуры 17.The first process parses the segment tracks 1810 associated with the requested viewport orientation (tracks containing data associated with the first segments T2, T3, T6, and T7 in accordance with the non-limiting example of Figure 17) by a parser 181 in accordance with the instructions adopted in the extractor track. Parser 181 allows you to recreate a bitstream 1811 that is compatible with decoder 183 (eg, a HEVC-compatible bitstream if decoder 183 is HEVC-compatible, or an AV1-compatible bitstream if decoder 183 is AV1-compatible). The data that is contained in the bitstream 1811 is decoded by the decoder 183 and the decoded data is transmitted to the renderer 185, which is configured to render omnidirectional content using the metadata 1712 that is contained in the bitstream obtained through the encoding process of Figure 17.

Во втором процессе осуществляется синтаксический анализ дорожек 1820 сегментов, связанных с запрошенной ориентацией окна просмотра (дорожек, содержащих фрагменты, которые содержатся во вторых сегментах (или третьих сегментах для данных текстуры), связанных с первыми сегментами T2, T3, T6 и T7, в соответствии с неограничивающим примером фигуры 17) посредством синтаксического анализатора 182 в соответствии с инструкциями, принятыми в дорожке экстрактора. Синтаксический анализатор 182 позволяет воссоздать битовый поток 1821, который совместим с декодером 184 (например, совместимый с HEVC битовый поток, если декодер 184 является HEVC-совместимым, или совместимый с AV1 битовый поток, если декодер 184 является AV1-совместимым). Воссозданный битовый поток содержит, например, данные одного или более четвертых кадров, описанных по отношению к фигуре 15. Данные, которые содержатся в битовом потоке 1821, декодируются декодером 184 и декодированные данные передаются визуализатору 186, который выполнен с возможностью визуализации объемной части объемного контента с использованием метаданных 1722, которые содержатся в битовом потоке, полученном с помощью процесса кодирования фигуры 17. Второй процесс может быть выполнен для дорожек сегментов, содержащих информацию о глубине, и для дорожек сегментов, содержащих информацию о текстуре.The second process parses the segment tracks 1820 associated with the requested viewport orientation (tracks containing fragments contained in the second segments (or third segments for texture data) associated with the first segments T2, T3, T6, and T7, according to with the non-limiting example of Figure 17) through the parser 182 in accordance with the instructions received in the extractor track. Parser 182 allows you to recreate a bitstream 1821 that is compatible with decoder 184 (eg, a HEVC-compatible bitstream if decoder 184 is HEVC-compatible, or an AV1-compatible bitstream if decoder 184 is AV1-compatible). The reconstructed bit stream contains, for example, the data of one or more fourth frames described with respect to figure 15. The data that is contained in the bit stream 1821 is decoded by the decoder 184 and the decoded data is transmitted to the renderer 186, which is configured to render a volumetric portion of the volumetric content with using metadata 1722 that is contained in the bitstream obtained by the encoding process of Figure 17. The second process may be performed for segment tracks containing depth information and for segment tracks containing texture information.

Фигура 19 показывает примерную архитектуру устройства 19, которое может быть выполнено с возможностью реализации способа, описанного по отношению к фигурам 17, 18, 20 и/или 21. Устройство 19 может быть выполнено в виде кодера 121 или декодера 123 фигуры 12.Figure 19 shows an exemplary architecture of a device 19 that may be configured to implement the method described with respect to Figures 17, 18, 20 and/or 21. The device 19 may be implemented as an encoder 121 or a decoder 123 of Figure 12.

Устройство 19 содержит следующие элементы, которые связаны вместе шиной 191 адресов и данных:The device 19 contains the following elements, which are connected together by an address and data bus 191:

- микропроцессор 192 (или CPU), который является, например, DSP (или Цифровым Сигнальным Процессором);- microprocessor 192 (or CPU), which is, for example, a DSP (or Digital Signal Processor);

- ROM 193 (или Постоянную Память);- ROM 193 (or Read Only Memory);

- RAM 194 (или Память с Произвольным Доступом);- RAM 194 (or Random Access Memory);

- интерфейс 195 хранения;- storage interface 195;

- интерфейс 196 I/O для приема данных для передачи, от приложения; и- interface 196 I/O for receiving data for transmission from the application; And

- источник питания, например, батарею.- power source, for example a battery.

В соответствии с примером, источник питания является внешним для устройства. В каждой упомянутой памяти слово «регистр», используемое в спецификации, может соответствовать зоне небольшой емкости (в несколько битов) или очень большой зоне (например, целой программе или большому объему принятых или декодированных данных). ROM 193 содержит по меньшей мере программу и параметры. ROM 193 может хранить алгоритмы и инструкции, чтобы выполнять методики в соответствии с настоящими принципами. При включении CPU 192 выгружает программу в RAM и исполняет соответствующие инструкции.According to the example, the power supply is external to the device. In each memory mentioned, the word "register" used in the specification may correspond to an area of small capacity (a few bits) or a very large area (for example, an entire program or a large amount of received or decoded data). ROM 193 contains at least a program and parameters. ROM 193 can store algorithms and instructions to perform techniques in accordance with these principles. When turned on, the CPU 192 downloads the program into RAM and executes the corresponding instructions.

RAM 194 содержит, в регистре, программу, исполняемую CPU 192 и выгружаемую после включения устройства 19, входные данные в регистре, промежуточные данные в разных состояниях способа в регистре и прочие переменные, которые используются для исполнения способа в регистре.RAM 194 contains, in a register, a program executed by the CPU 192 and unloaded after turning on the device 19, input data in the register, intermediate data in different states of the method in the register, and other variables that are used to execute the method in the register.

Реализации, описанные в данном документе, могут быть реализованы в, например, способе или процессе, устройстве, компьютерном программном продукте, потоке данных или сигнале. Даже при обсуждении только в контексте единственной формы реализации (например, при обсуждении только в качестве способа или устройства), реализация обсуждаемых признаков также может быть реализована в других формах (например, в программе). Устройство может быть реализовано в, например, надлежащем аппаратном обеспечении, программном обеспечении или встроенном программном обеспечении. Способы могут быть реализованы в, например, устройстве, таком как, например, процессор, который относится к устройствам обработки в целом, включая, например, компьютер, микропроцессор, интегральную микросхему или программируемое логическое устройство. Процессоры также включают в себя устройства связи, такие как, например, компьютеры, сотовые телефоны, портативные/персональные цифровые помощники («PDA») и прочие устройства, которые обеспечивают сообщение для передачи информации между конечными пользователями.The implementations described herein may be implemented in, for example, a method or process, device, computer program product, data stream, or signal. Even when discussed only in the context of a single form of implementation (for example, when discussed only as a method or device), the implementation of the features discussed may also be implemented in other forms (for example, in a program). The device may be implemented in, for example, appropriate hardware, software or firmware. The methods may be implemented in, for example, a device such as, for example, a processor, which refers to processing devices in general, including, for example, a computer, microprocessor, integrated circuit, or programmable logic device. Processors also include communications devices, such as, for example, computers, cellular phones, portable/personal digital assistants (“PDAs”), and other devices that provide communications for the transfer of information between end users.

В соответствии с примером кодирования или кодера 121 фигуры 12, от источника получается трехмерная сцена. Например, источник принадлежит к набору, содержащему:According to the example encoding or encoder 121 of Figure 12, a three-dimensional scene is obtained from the source. For example, the source belongs to the set containing:

- локальную память (193 или 194), например, видеопамять или RAM (или Память с Произвольным Доступом), флэш-память, ROM (или Постоянную Память), жесткий диск;- local memory (193 or 194), for example, video memory or RAM (or Random Access Memory), flash memory, ROM (or Read Only Memory), hard drive;

- интерфейс (195) хранения, например, интерфейс с запоминающим устройством большой емкости, RAM, флэш-памятью, ROM, оптическим диском или магнитным средством обеспечения;- a storage interface (195), for example, an interface with a mass storage device, RAM, flash memory, ROM, optical disk or magnetic media;

- интерфейс (196) связи, например, проводной интерфейс (например, интерфейс шины, интерфейс глобальной сети, интерфейс локальной сети) или беспроводной интерфейс (такой как интерфейс IEEE 802.11 или интерфейс Bluettoth®); и- a communication interface (196), for example a wired interface (such as a bus interface, a WAN interface, a LAN interface) or a wireless interface (such as an IEEE 802.11 interface or a Bluetoth® interface); And

- интерфейс пользователя, такой как Графический Интерфейс Пользователя, позволяющий пользователю вводить данные.- a user interface, such as a Graphical User Interface, allowing the user to enter data.

В соответствии с примерами декодирования или декодера(ов) 123 фигуры 12, поток отправляется получателю; в частности, получатель принадлежит к набору, содержащем:According to the examples of decoding or decoder(s) 123 of Figure 12, the stream is sent to the recipient; specifically, the recipient belongs to the set containing:

- локальную память (193 или 194), например, видеопамять или RAM, флэш-память, жесткий диск;- local memory (193 or 194), for example, video memory or RAM, flash memory, hard drive;

- интерфейс (195) хранения, например, интерфейс с запоминающим устройством большой емкости, RAM, флэш-памятью, ROM, оптическим диском или магнитным средством обеспечения;- a storage interface (195), for example, an interface with a mass storage device, RAM, flash memory, ROM, optical disk or magnetic media;

- интерфейс (196) связи, например, проводной интерфейс (например, интерфейс шины (например, USB (или Универсальная Последовательная Шина)), интерфейс глобальной сети, интерфейс локальной сети, интерфейс HDMI (Мультимедийный Интерфейс Высокой Четкости)) или беспроводной интерфейс (такой как интерфейс IEEE 802.11 или интерфейс WiFi® и Bluettoth®).- a communication interface (196), for example, a wired interface (for example, a bus interface (for example, USB (or Universal Serial Bus)), a WAN interface, a LAN interface, an HDMI (High Definition Multimedia Interface) interface) or a wireless interface (such such as IEEE 802.11 interface or WiFi® and Bluettoth® interface).

В соответствии с примерами кодирования или кодера битовый поток, содержащий данные, представляющие собой объемную сцену, отправляется получателю. В качестве примера битовый поток сохраняется в локальной или удаленной памяти, например, видеопамяти или RAM, на жестком диске. В варианте битовый поток отправляется интерфейсу хранения, например, интерфейсу с запоминающим устройством большой емкости, флэш-памятью, ROM, оптическим диском или магнитным средством обеспечения и/или передается через интерфейс связи, например, интерфейс с линией связи типа точка-точка, шиной связи, линией связи типа точка-многоточка или широковещательной сетью.According to encoding or encoder examples, a bitstream containing data representing a volumetric scene is sent to a recipient. As an example, a bitstream is stored in local or remote memory, such as video memory or RAM, on a hard disk. In an embodiment, the bitstream is sent to a storage interface, such as an interface with a mass storage device, flash memory, ROM, optical disk, or magnetic media, and/or transmitted through a communications interface, such as an interface with a point-to-point link, a communications bus , point-to-multipoint link or broadcast network.

В соответствии с примерами декодирования или декодера, или визуализатора 123 фигуры 12 битовый поток получается от источника. В качестве примера битовый поток считывается из локальной памяти, например, видеопамяти, RAM, ROM, флэш-памяти или жесткого диска. В варианте битовый поток принимается от интерфейса хранения, например, интерфейса с запоминающим устройством большой емкости, RAM, ROM, флэш-памятью, оптическим диском или магнитным средством обеспечения и/или принимается от интерфейса связи, например, интерфейса с линией связи типа точка-точка, шиной, линией связи типа точка-многоточка или широковещательной сетью.According to the decoding examples, either the decoder or the renderer 123 of Figure 12, a bit stream is obtained from the source. As an example, a bitstream is read from local memory, such as video memory, RAM, ROM, flash memory, or hard disk. In an embodiment, the bitstream is received from a storage interface, such as an interface with a mass storage device, RAM, ROM, flash memory, optical disk, or magnetic media, and/or is received from a communication interface, such as an interface with a point-to-point link , bus, point-to-multipoint link, or broadcast network.

В соответствии с примерами устройство 19 выполнено с возможностью реализации способа, описанного по отношению к фигурам 17, 18, 20 и/или 21, и принадлежит к набору, содержащему:According to the examples, the device 19 is configured to implement the method described in relation to figures 17, 18, 20 and/or 21, and belongs to a set containing:

- мобильное устройство;- mobile device;

- устройство связи;- communication device;

- игровое устройство;- gaming device;

- планшет (или планшетный компьютер);- tablet (or tablet computer);

- лэптоп;- laptop;

- камеру для неподвижных картинок;- camera for still images;

- видеокамеру;- video camera;

- чип кодирования;- coding chip;

- сервер (например, широковещательный сервер, сервер видео по запросу или веб-сервер).- server (for example, broadcast server, video-on-demand server or web server).

Фигура 20 иллюстрирует способ для кодирования данных, представляющих собой 3D сцену, например, 3D сцену 10, в соответствии с неограничивающим вариантом осуществления настоящих принципов. Способ может, например, быть реализован в кодере 121 и/или в устройстве 19. Разные параметры устройства 19 могут быть обновлены. 3D сцена может, например, быть получена от источника, может быть определена одна или несколько точек зрения в пространстве 3D сцены, могут быть инициализированы параметры, связанные с проекционным отображением(ями).Figure 20 illustrates a method for encoding data representing a 3D scene, eg, 3D scene 10, in accordance with a non-limiting embodiment of the present principles. The method may, for example, be implemented in the encoder 121 and/or in the device 19. Various parameters of the device 19 can be updated. The 3D scene may, for example, be obtained from a source, one or more viewpoints in the 3D scene space may be defined, and parameters associated with the projection display(s) may be initialized.

На первой операции 201 первые данные, представляющие собой текстуру 3D сцены, кодируются или форматируются в одну или более первых дорожек контейнера или файла в соответствии с определенным форматом, например, в соответствии с документом HEVC/H265: «ITU-T H.265 TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU (10/2014), SERIES H: AUDIOVISUAL AND MULTIMEDIA SYSTEMS, Infrastructure of audiovisual services - Coding of moving video, High efficiency video coding, Recommendation ITU-T H.265» или в соответствии с AV1. Контейнер соответствует, например, файлу ISOBMFF (Базовый Формат Файла Мультимедиа ISO, документ ISO/IEC 14496-12-MPEG-4 Часть 12). Первые данные относятся к частям (например, точкам или элементам сетки) 3D сцены, которые видны в соответствии с одной первой точкой обзора. Первые данные содержат, например, метаданные и информацию сигнализации, указывающую на первый элемент синтаксиса битового потока, который содержит информацию о текстуре, кодированную в пикселях первого кадра, причем первый кадр разбит на множество сегментов. 3D часть 3D сцены 10 связана с каждым первым сегментом первого кадра 40. Каждая первая дорожка, например, связана с одним отличным первым сегментом и содержит первые данные связанного первого сегмента. Первые данные, как только декодированы или интерпретированы, обеспечивают получение 3DoF представления 3D сцены в соответствии с первой точкой обзора, т.е. представление без параллакса.In a first operation 201, first data representing a 3D scene texture is encoded or formatted into one or more first tracks of a container or file in accordance with a specific format, for example, in accordance with the HEVC/H265 document: “ITU-T H.265 TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU (10/2014), SERIES H: AUDIOVISUAL AND MULTIMEDIA SYSTEMS, Infrastructure of audiovisual services - Coding of moving video, High efficiency video coding, Recommendation ITU-T H.265" or in accordance with AV1. The container corresponds, for example, to an ISOBMFF file (ISO Basic Multimedia File Format, document ISO/IEC 14496-12-MPEG-4 Part 12). The first data refers to the parts (eg, points or mesh elements) of the 3D scene that are visible according to one first viewpoint. The first data includes, for example, metadata and signaling information indicative of a first bitstream syntax element that contains texture information encoded in the pixels of the first frame, the first frame being divided into a plurality of segments. A 3D portion of the 3D scene 10 is associated with each first segment of the first frame 40. Each first track, for example, is associated with one distinct first segment and contains the first data of the associated first segment. The first data, once decoded or interpreted, provides a 3DoF representation of the 3D scene according to the first viewpoint, i.e. parallax-free view.

На второй операции 202 вторые данные, представляющие собой глубину, связанную с точками 3D сцены, кодируются в одну или более вторых дорожек контейнера или файла. Вторые данные размещаются во вторых сегментах второго кадра, который может соответствовать четвертому кадру 151, 152 фигуры 15. Разный набор вторых сегментов связывается с каждым первым сегментом и количество вторых сегментов, которые содержатся во втором кадре, больше количества первых сегментов первого кадра. Фрагменты вторых данных (вторые данные соответствуют, например, геометрической информации (глубине)) размещаются во вторых сегментах и кодируются в соответствующую вторую дорожку, например, в соответствии с форматом HEVC или AV1. Каждый фрагмент соответствует 2D параметризации части (т.е. группы точке) 3D сцены. Фрагменты, полученные путем 2D параметризации 3D части 3D сцены, связанной с заданными первыми сегментами, размещаются во вторых сегментах, распределенных для данного первого сегмента. Вторые данные, как только декодированы или интерпретированы, позволяют получить 3DoF+ представление 3D сцены в соответствии со множеством точек обзора, включая первую точку обзора, т.е. представление с параллаксом.In a second step 202, second data representing depth associated with points in the 3D scene is encoded into one or more second tracks of the container or file. The second data is located in second segments of a second frame, which may correspond to the fourth frame 151, 152 of Figure 15. A different set of second segments is associated with each first segment, and the number of second segments that are contained in the second frame is greater than the number of first segments of the first frame. Portions of the second data (the second data corresponding to, for example, geometric information (depth)) are placed in the second segments and encoded into a corresponding second track, for example, in accordance with the HEVC or AV1 format. Each fragment corresponds to a 2D parameterization of a part (i.e., a point group) of a 3D scene. The fragments obtained by 2D parameterization of the 3D part of the 3D scene associated with the given first segments are placed in the second segments allocated for the given first segment. The second data, once decoded or interpreted, allows a 3DoF+ representation of the 3D scene to be obtained according to multiple viewpoints, including the first viewpoint, i.e. parallax view.

В соответствии с вариантом фрагменты содержат информацию о текстуре в дополнение к геометрической информации, за исключением фрагментов, полученных с учетом первой точки обзора. Другими словами, вторые данные содержат геометрические данные и данные текстуры.In an embodiment, the fragments contain texture information in addition to the geometric information, except for the fragments derived from the first viewpoint. In other words, the second data contains geometry data and texture data.

В соответствии с дополнительным вариантом фрагменты содержат только геометрическую информацию. В соответствии с данным вариантом может быть получен один или несколько дополнительных вторых кадров, причем каждый дополнительный второй кадр разбивается на множество вторых сегментов, причем количество вторых сегментов больше общего количества первых сегментов. Один или несколько вторых сегментов связываются с каждым первым сегментом и фрагменты данных текстуры размещаются во вторых сегментах и кодируются в дополнительные дорожки, называемые четвертыми дорожками. Фрагменты, полученные путем 2D параметризации 3D части 3D сцены, связанной с заданными первыми сегментами, размещаются во вторых сегментах, распределенных данному первому сегменту.According to a further embodiment, the fragments contain only geometric information. In this embodiment, one or more additional second frames may be obtained, each additional second frame being divided into a plurality of second segments, the number of second segments being greater than the total number of first segments. One or more second segments are associated with each first segment, and pieces of texture data are placed in the second segments and encoded into additional tracks called fourth tracks. The fragments obtained by 2D parameterization of the 3D part of the 3D scene associated with the given first segments are placed in the second segments allocated to the given first segment.

На третьей операции 204 одна или несколько инструкций кодируются в одной или более третьих дорожках контейнера или файла. Инструкции выполнены с возможностью извлечения первых и вторых данных из первой и второй дорожек и размещения извлеченных первых и вторых данных в битовый поток, отформатированный для декодирования одним декодером. Третья дорожка соответствует, например, дорожке экстрактора в соответствии с HEVC. Вторые данные кодируются во второй кадр(ы). Количество третьих дорожек, например, равно числу величины C возможных ориентаций окна просмотра, описанных по отношению к фигуре 17.In a third operation 204, one or more instructions are encoded into one or more third tracks of the container or file. The instructions are configured to extract first and second data from the first and second tracks and place the extracted first and second data into a bit stream formatted for decoding by a single decoder. The third track corresponds, for example, to the extractor track according to HEVC. The second data is encoded into the second frame(s). The number of third tracks, for example, is equal to the number of C values of possible viewport orientations described with respect to Figure 17.

В соответствии с дополнительным необязательным вариантом данные и инструкции первой, второй и третьей дорожек формируют битовый поток, который передается декодеру или визуализатору, содержащему декодер.In accordance with a further optional embodiment, the data and instructions of the first, second and third tracks form a bitstream that is transmitted to a decoder or renderer including the decoder.

Фигура 21 иллюстрирует способ для декодирования данных, представляющих собой 3D сцену, например, 3D сцену 10, в соответствии с неограничивающим вариантом осуществления настоящих принципов. Способ может, например, быть реализован в декодере 123 и/или в устройстве 19.Figure 21 illustrates a method for decoding data representing a 3D scene, eg, 3D scene 10, in accordance with a non-limiting embodiment of the present principles. The method may, for example, be implemented in the decoder 123 and/or in the device 19.

На первой операции 211 одна или несколько инструкций декодируются из одной или более третьих дорожек контейнера или файла. Инструкции выполнены с возможностью извлечения первых и вторых данных из первой и второй дорожек и размещения извлеченных первых и вторых данных в битовый поток, отформатированный для декодирования одним декодером. Третья дорожка соответствует, например, дорожке экстрактора в соответствии с HEVC.In a first operation 211, one or more instructions are decoded from one or more third tracks of the container or file. The instructions are configured to extract first and second data from the first and second tracks and place the extracted first and second data into a bit stream formatted for decoding by a single decoder. The third track corresponds, for example, to the extractor track according to HEVC.

На второй операции 212 первые данные, представляющие собой текстуру части 3D сцены, которая видна в соответствии с первой точкой обзора, декодируются или интерпретируются из первых сегментов, которые содержатся в одной или более первых дорожках, как предписано инструкциями, полученными на операции 211. Первые данные позволяют получить 3DoF представление 3D сцены в соответствии с первой точкой обзора, т.е. представление без параллакса.At a second step 212, first data representing the texture of the portion of the 3D scene that is visible in accordance with the first viewpoint is decoded or interpreted from the first segments that are contained in one or more first tracks, as prescribed by the instructions received at step 211. First data allow you to get a 3DoF representation of the 3D scene in accordance with the first viewpoint, i.e. parallax-free view.

На третьей операции 213 вторые данные, представляющие собой геометрию 3D сцены, которая видна в соответствии с набором точек зрения, содержащих первую точку обзора, декодируются или интерпретируются из вторых сегментов, которые содержатся в одной или более вторых дорожках, как предписано инструкциями, полученными на операции 211. Вторые данные содержатся в фрагментах, полученных путем 2D параметризации группы точек 3D сцены. В соответствии с вариантом третьи данные, представляющие собой текстуру 3D сцены, которая видна в соответствии с упомянутым набором точек обзора, за исключением первой точки обзора, декодируются или интерпретируются из одного или более третьих сегментов дополнительных дорожек. Вторые данные с третьими данными обеспечивают получение 3DoF+ представления 3D сцены в соответствии с упомянутыми точками обзора, т.е. представление с параллаксом.In a third operation 213, second data representing the geometry of the 3D scene that is visible in accordance with the set of viewpoints containing the first viewpoint is decoded or interpreted from second segments that are contained in one or more second tracks, as prescribed by the instructions received at the operation 211. The second data is contained in fragments obtained by 2D parameterization of a group of points in a 3D scene. In an embodiment, third data representing a 3D scene texture that is visible according to said set of viewpoints other than the first viewpoint is decoded or interpreted from one or more third segments of additional tracks. The second data with the third data provides a 3DoF+ representation of the 3D scene in accordance with said viewpoints, i.e. parallax view.

В соответствии с вариантом декодированные первые и вторые данные размещаются в битовом потоке, как предписано инструкциями, полученными на операции 211, чтобы сформировать битовый поток, который должен быть декодирован декодером. В соответствии с другим вариантом полученный битовый поток декодируется декодером для визуализации визуализатором. Полученный в результате визуализации контент может быть продемонстрирован на устройстве конечного пользователя для просмотра, таком как HMD, в соответствии с ориентацией точки обзора, соответствующей инструкциям.In an embodiment, the decoded first and second data are placed in a bit stream as prescribed by the instructions received at operation 211 to form a bit stream to be decoded by the decoder. In another embodiment, the resulting bitstream is decoded by a decoder for rendering by a renderer. The resulting rendered content may be presented on an end user's viewing device, such as an HMD, according to a viewpoint orientation consistent with the instructions.

Естественно настоящее изобретение не ограничивается ранее описанными вариантами осуществления.Naturally, the present invention is not limited to the previously described embodiments.

В частности, настоящее изобретение не ограничивается способом и устройством для кодирования/декодирования данных, представляющих собой 3D сцену, а также расширяется на способ для формирования битового потока, содержащего кодированные данные, и устройство, реализующее данный способ и в особенности на любые устройства, содержащие по меньшей мере один CPU и/или по меньшей мере один GPU.In particular, the present invention is not limited to a method and apparatus for encoding/decoding data representing a 3D scene, but also extends to a method for generating a bit stream containing encoded data and an apparatus implementing this method, and in particular to any devices containing at least one CPU and/or at least one GPU.

Настоящее изобретение также относится к способу (и устройству, выполненному с возможностью) для демонстрации изображений, полученных в результате визуализации из декодированных данных битового потока.The present invention also relates to a method (and apparatus configured) for displaying images resulting from rendering from decoded bitstream data.

Настоящее изобретение также относится к способу (и устройству, выполненному с возможностью) для передачи и/или приема битового потока.The present invention also relates to a method (and apparatus configured) for transmitting and/or receiving a bit stream.

Реализации, описанные в данном документе, могут быть реализованы в, например, способе или процессе, устройстве, компьютерном программном продукте, потоке данных или сигнале. Даже при обсуждении только в контексте одной формы реализации (например, при обсуждении только в качестве способа или устройства), реализация признаков, которые обсуждались, также может быть реализована в других формах (например, программе). Устройство может быть реализовано в, например, надлежащем аппаратном обеспечении, программном обеспечении и встроенном программном обеспечении. Способы могут быть реализованы в, например, устройстве, таком как, например, процессор, который относится к устройствам обработки в целом, включая, например, компьютер, микропроцессор, интегральную микросхему или программируемое логическое устройство. Процессоры также включают в себя устройства связи, такие как, например, интеллектуальные телефоны, планшеты, компьютеры, мобильные телефоны, портативные/персональные цифровые помощники («PDA») и прочие устройства, которые обеспечивают сообщение для передачи информации между конечными пользователями.The implementations described herein may be implemented in, for example, a method or process, device, computer program product, data stream, or signal. Even when discussed only in the context of one form of implementation (for example, when discussed only as a method or device), the implementation of the features that have been discussed may also be implemented in other forms (for example, a program). The device may be implemented in, for example, appropriate hardware, software and firmware. The methods may be implemented in, for example, a device such as, for example, a processor, which refers to processing devices in general, including, for example, a computer, microprocessor, integrated circuit, or programmable logic device. Processors also include communications devices, such as, for example, smart phones, tablets, computers, mobile phones, portable/personal digital assistants (“PDAs”), and other devices that provide communications for the transfer of information between end users.

Реализации различных процессов и признаков, описанных в данном документе, могут быть воплощены в многообразии разного оборудования или приложений, в частности, например, оборудовании или приложениях, связанных с кодированием данных, декодированием данных, формированием просмотра, обработкой текстуры и другой обработкой изображений, и связанной информации о текстуре и/или информации о глубине. Примеры такого оборудования включают кодер, декодер, постпроцессор, обрабатывающий выход с декодера, препроцессор, обеспечивающий ввод для кодера, кодер видео, декодер видео, кодек видео, веб-сервер, телевизионную абонентскую приставку, лэптоп, персональный компьютер, сотовый телефон, PDA и другие устройства связи. Как должно быть ясно, оборудование может быть мобильным или даже инсталлированным на мобильном транспортом средстве.Implementations of the various processes and features described herein may be embodied in a variety of different equipment or applications, particularly, for example, equipment or applications associated with data encoding, data decoding, view generation, texture processing and other image processing, and related texture information and/or depth information. Examples of such equipment include an encoder, decoder, post processor, processing output from the decoder, a preprocessor providing input to the encoder, video encoder, video decoder, video codec, web server, set-top box, laptop, personal computer, cell phone, PDA, and others. communication devices. As will be clear, the equipment may be mobile or even installed on a mobile vehicle.

Дополнительно, способы могут быть реализованы посредством инструкций, выполняемых процессором, и такие инструкции (и/или значения данных, создаваемые путем реализации) могут быть сохранны на читаемом процессором носителе информации, таком как, например, интегральная микросхемы, носитель программного обеспечения или другое запоминающее устройство, такое как, например, жесткий диск, компакт-дискета («CD»), оптический диск (такой как, например, DVD, часто упоминаемый как цифровой универсальный диск или цифровой видеодиск), память с произвольным доступом («RAM») или постоянная память («ROM»). Инструкции могут формировать прикладную программу, которая вещественным образом воплощается на читаемом процессором носителе информации. Инструкции могут быть, например, в аппаратном обеспечении, встроенном программном обеспечении, программном обеспечении или сочетании. Инструкции можно найти, например, в операционной системе, отдельном приложении или сочетании двух видов. Вследствие этого процессор может быть охарактеризован в качестве, например, как устройства, выполненного с возможностью осуществления процесса, так и устройства, которое включает в себя читаемый процессором носитель информации (такой как запоминающее устройство) с инструкциями для осуществления процесса. Кроме того, читаемый процессором носитель информации может хранить, в дополнение к или вместо инструкций, значения данных, созданных путем реализации.Additionally, the methods may be implemented by instructions executed by a processor, and such instructions (and/or data values created by the implementation) may be stored on a processor-readable storage medium, such as, for example, an integrated circuit, software storage medium, or other storage device , such as, for example, a hard disk, compact diskette (“CD”), optical disk (such as, for example, a DVD, often referred to as a digital versatile disk or digital video disk), random access memory (“RAM”), or read only memory (“ROM”). The instructions may form an application program that is physically embodied on a processor-readable storage medium. The instructions may be, for example, in hardware, firmware, software, or a combination. Instructions can be found, for example, in the operating system, a separate application, or a combination of the two. As a result, a processor may be characterized as, for example, both a device configured to carry out a process and a device that includes a processor-readable storage medium (such as a storage device) with instructions for carrying out the process. In addition, the processor-readable storage medium may store, in addition to or instead of instructions, data values created by the implementation.

Как будет очевидно специалисту в соответствующей области техники, реализации могут создавать многообразие сигналов, отформатированных для переноса информации, которая может быть, например, сохранена или передана. Информация может включать в себя, например, инструкции для выполнения способа, или данные, созданные одной из описанных реализаций. Например, сигнал может быть отформатирован для переноса в качестве данных правил для записи или чтения синтаксиса описанного варианта осуществления, или переноса в качестве данных фактических синтаксических значений, записанных описанным вариантом осуществления. Такой сигнал может быть отформатирован, например, в качестве электромагнитной волны (например, с использованием радиочастотного сегмента спектра) или в качестве сигнала основной полосы частот. Форматирование может включать в себя, например, кодирование потока данных и модуляцию несущей с помощью потока кодированных данных. Информация, которую несет сигнал, может быть, например, аналоговой или цифровой информацией. Сигнал может быть передан через многообразие разных проводных или беспроводных линий связи, как известно. Сигнал может быть сохранен на читаемом процессором носителе информации.As will be apparent to one skilled in the art, implementations may create a variety of signals formatted to carry information that may, for example, be stored or transmitted. The information may include, for example, instructions for performing a method, or data generated by one of the described implementations. For example, the signal may be formatted to carry as data the rules for writing or reading the syntax of the described embodiment, or to carry as data the actual syntax values written by the described embodiment. Such a signal may be formatted, for example, as an electromagnetic wave (eg, using the radio frequency portion of the spectrum) or as a baseband signal. Formatting may include, for example, encoding the data stream and modulating the carrier with the encoded data stream. The information carried by the signal can be, for example, analog or digital information. The signal can be transmitted through a variety of different wired or wireless communication lines, as is known. The signal may be stored on a processor-readable storage medium.

Было описано некоторое количество реализаций. Тем не менее будет понятно, что могут быть выполнены различные модификации. Например, элементы разных реализаций могут быть объединены, дополнены, модифицированы или удалены, чтобы создавать другие реализации. Дополнительно, специалист в соответствующей области техники будет понимать, что в отношении раскрытых структур и процессов может быть осуществлено замещение на другие структуры и процессы, и результирующие реализации будут выполнять по меньшей мере практически ту же самую функцию(ии), по меньшей мере практически тем же самым образом, для достижения по меньшей мере практически того же самого результата(ов), как и раскрытие реализации. Соответственно, данная заявка предполагает эти и другие реализации.A number of implementations have been described. However, it will be appreciated that various modifications may be made. For example, elements of different implementations can be combined, extended, modified, or removed to create different implementations. Additionally, one skilled in the art will appreciate that the disclosed structures and processes may be substituted for other structures and processes, and the resulting implementations will perform at least substantially the same function(s) in at least substantially the same way. thereby achieving at least substantially the same result(s) as disclosing the implementation. Accordingly, this application contemplates these and other implementations.

Claims (36)

1. Способ кодирования данных, представляющих 3D сцену (10), причем способ содержит этапы, на которых:1. A method for encoding data representing a 3D scene (10), the method comprising the steps of: - кодируют (201) в, по меньшей мере, первую дорожку первые данные, представляющие текстуру 3D сцены, которая видна в соответствии с первой точкой (20) обзора, причем первые данные размещаются во множестве первых сегментов, на которые разделен первый кадр (40), при этом часть 3D сцены связана с каждым первым сегментом из множества первых сегментов;- encoding (201) into at least a first track first data representing the texture of the 3D scene that is visible in accordance with the first view point (20), the first data being located in a plurality of first segments into which the first frame (40) is divided wherein a portion of the 3D scene is associated with each first segment of the plurality of first segments; - кодируют в, по меньшей мере, вторую дорожку вторые данные, представляющие глубину, связанную с точками 3D сцены, причем вторые данные размещаются во множестве вторых сегментов второго кадра (151, 152), при этом общее количество вторых сегментов второго кадра больше общего количества первых сегментов первого кадра, при этом для каждого первого сегмента из, по меньшей мере, части множества первых сегментов:- encoding into at least a second track second data representing depth associated with points in the 3D scene, wherein the second data is located in a plurality of second segments of the second frame (151, 152), wherein the total number of second segments of the second frame is greater than the total number of the first segments of the first frame, wherein for each first segment of at least a portion of the plurality of first segments: набор вторых сегментов, содержащий по меньшей мере один второй сегмент из множества вторых сегментов, распределяется каждому первому сегменту из, по меньшей мере, части множества первых сегментов,a set of second segments comprising at least one second segment of the plurality of second segments is allocated to each first segment of at least a portion of the plurality of first segments, набор содержащий, по меньшей мере, фрагмент (904), который размещается в наборе вторых сегментов, причем каждый фрагмент соответствует двумерной параметризации группы из 3D точек (94), которые содержатся в части 3D сцены, связанной с упомянутым каждым первым сегментом, и содержит вторые данные, представляющие глубину, связанную с 3D точками группы;a set containing at least a fragment (904) that is placed within a set of second segments, each fragment corresponding to a two-dimensional parameterization of a group of 3D points (94) that are contained in a portion of the 3D scene associated with said each first segment, and contains second data representing the depth associated with the 3D points of the group; - кодируют в, по меньшей мере, третью дорожку, по меньшей мере, инструкцию для извлечения, по меньшей мере, части упомянутых первых данных и вторых данных из, по меньшей мере, части упомянутой по меньшей мере первой дорожки и по меньшей мере второй дорожки.- encoding into at least a third track at least an instruction for extracting at least a portion of said first data and a second data from at least a portion of said at least a first track and at least a second track. 2. Устройство (19), сконфигурированное для кодирования данных, представляющих 3D сцену (10), причем устройство содержит память (194), связанную с по меньшей мере одним процессором (192), выполненным с возможностью:2. A device (19) configured to encode data representing a 3D scene (10), the device comprising a memory (194) coupled to at least one processor (192) configured to: - кодировать в, по меньшей мере, первую дорожку первые данные, представляющие текстуру 3D сцены, которая видна в соответствии с первой точкой (20) обзора, причем первые данные размещаются во множестве первых сегментов, на которые разделен первый кадр (40), при этом часть 3D сцены связана с каждым первым сегментом из множества первых сегментов;- encoding into at least a first track first data representing the texture of the 3D scene that is visible in accordance with the first view point (20), the first data being located in a plurality of first segments into which the first frame (40) is divided, wherein a portion of the 3D scene is associated with each first segment of the plurality of first segments; - кодировать в, по меньшей мере, вторую дорожку вторые данные, представляющие глубину, связанную с точками 3D сцены, причем вторые данные размещаются во множестве вторых сегментов второго кадра (151, 152), при этом общее количество вторых сегментов второго кадра больше общего количества первых сегментов первого кадра, при этом для каждого первого сегмента из, по меньшей мере, части множества первых сегментов:- encode into at least a second track second data representing depth associated with points in the 3D scene, the second data being located in a plurality of second segments of the second frame (151, 152), wherein the total number of second segments of the second frame is greater than the total number of the first segments of the first frame, wherein for each first segment of at least a portion of the plurality of first segments: набор вторых сегментов, содержащий по меньшей мере один второй сегмент из множества вторых сегментов, распределяется каждому первому сегменту из, по меньшей мере, части множества первых сегментов,a set of second segments comprising at least one second segment of the plurality of second segments is allocated to each first segment of at least a portion of the plurality of first segments, набор содержит, по меньшей мере, фрагмент (904), который размещается в наборе вторых сегментов, причем каждый фрагмент соответствует двумерной параметризации группы из 3D точек (94), которые содержатся в части 3D сцены, связанной с упомянутым каждым первым сегментом, и содержит вторые данные, представляющие глубину, связанную с 3D точками группы;the set contains at least a fragment (904) that is located in a set of second segments, each fragment corresponding to a two-dimensional parameterization of a group of 3D points (94) that are contained in a portion of the 3D scene associated with each first segment, and contains second data representing the depth associated with the 3D points of the group; - кодировать в, по меньшей мере, третью дорожку, по меньшей мере, инструкцию для извлечения, по меньшей мере, части упомянутых первых данных и вторых данных из, по меньшей мере, части упомянутой по меньшей мере первой дорожки и по меньшей мере второй дорожки.- encode into at least a third track at least an instruction for retrieving at least a portion of said first data and second data from at least a portion of said at least a first track and at least a second track. 3. Способ по п.1, в котором упомянутый каждый фрагмент дополнительно содержит третьи данные, представляющие текстуру, связанную с 3D точками группы, причем третьи данные кодируются в упомянутую по меньшей мере вторую дорожку.3. The method of claim 1, wherein said each fragment further comprises third data representing a texture associated with the 3D points of the group, the third data being encoded into said at least second track. 4. Способ по п.1, в котором набор третьих сегментов третьего кадра, содержащий по меньшей мере один третий сегмент, распределяется упомянутому каждому первому сегменту, и набор, по меньшей мере, фрагмента, содержащий третьи данные, представляющие текстуру, связанную с 3D точками группы, размещается в упомянутом наборе третьих сегментов, причем, по меньшей мере, фрагмент соответствует двумерной параметризации группы 3D точек, при этом третьи данные кодируются в, по меньшей мере, третью дорожку.4. The method of claim 1, wherein a set of third frame segments comprising at least one third segment is allocated to said each first segment, and a set of at least a fragment comprising third data representing a texture associated with the 3D points group is located in said set of third segments, wherein at least the fragment corresponds to a two-dimensional parameterization of a group of 3D points, and the third data is encoded into at least a third track. 5. Способ по одному из пп.1, 3 и 4, в котором, когда размер фрагмента набора больше размера второго сегмента, в который должен быть размещен фрагмент, тогда фрагмент разбивается на множество субфрагментов, причем размер каждого меньше размера второго сегмента.5. The method according to one of claims 1, 3 and 4, wherein when the size of the fragment of the set is larger than the size of the second segment in which the fragment is to be placed, then the fragment is divided into a plurality of sub-fragments, each of a size less than the size of the second segment. 6. Способ по одному из пп.1, 3 и 4, в котором фрагменты набора размещаются в приоритетном порядке в зависимости от визуальной важности фрагментов, причем визуальная важность зависит от вторых данных, связанных с фрагментами.6. The method according to one of claims 1, 3 and 4, wherein the fragments of the set are placed in priority order depending on the visual importance of the fragments, the visual importance depending on the second data associated with the fragments. 7. Способ по одному из пп.1, 3 и 4, в котором вторые сегменты имеют один и тот же размер, который является фиксированным для множества следующих друг за другом по времени вторых кадров.7. The method according to one of claims 1, 3 and 4, in which the second segments have the same size, which is fixed for a plurality of consecutive second frames. 8. Способ декодирования данных, представляющих 3D сцену (10), причем способ содержит этапы, на которых:8. A method for decoding data representing a 3D scene (10), the method comprising the steps of: - декодируют из, по меньшей мере, третьей дорожки, по меньшей мере, инструкцию для извлечения первых данных и вторых данных из, по меньшей мере, первой дорожки и, по меньшей мере, второй дорожки;- decoding from at least the third track, at least an instruction for extracting first data and second data from at least the first track and at least the second track; - декодируют упомянутые первые данные из упомянутой по меньшей мере первой дорожки, причем упомянутые первые данные представляют текстуру 3D сцены, которая видна в соответствии с первой точкой (20) обзора, причем первые данные размещаются во множестве первых сегментов, на которые разделен первый кадр (40), при этом часть 3D сцены связана с каждым первым сегментом из множества первых сегментов;- decoding said first data from said at least first track, wherein said first data represents the texture of a 3D scene that is visible in accordance with the first view point (20), wherein the first data is located in a plurality of first segments into which the first frame (40) is divided ), wherein a portion of the 3D scene is associated with each first segment of the plurality of first segments; - декодируют упомянутые вторые данные из упомянутой по меньшей мере второй дорожки, причем упомянутые вторые данные представляют глубину, связанную с точками 3D сцены, причем упомянутые вторые данные, представляющие глубину, содержатся в, по меньшей мере, фрагменте, который размещен в, по меньшей мере, наборе вторых сегментов второго кадра, при этом набор вторых сегментов распределяется упомянутому каждому первому сегменту, причем по меньшей мере фрагмент соответствует двумерной параметризации группы из 3D точек, которые содержатся в, по меньшей мере, части 3D сцены, связанной с упомянутым каждым первым сегментом, при этом вторые данные представляют глубину, связанную с 3D точками группы.- decoding said second data from said at least second track, wherein said second data represents depth associated with points in the 3D scene, wherein said second data representing depth is contained in at least a fragment that is located in at least , a set of second segments of a second frame, wherein the set of second segments is allocated to said each first segment, wherein at least the fragment corresponds to a two-dimensional parameterization of a group of 3D points that are contained in at least a portion of the 3D scene associated with said each first segment, wherein the second data represents the depth associated with the 3D points of the group. 9. Устройство (19), сконфигурированное для декодирования данных, представляющих 3D сцену, причем устройство содержит память (194), связанную с по меньшей мере одним процессором (192), выполненным с возможностью:9. A device (19) configured to decode data representing a 3D scene, the device comprising a memory (194) coupled to at least one processor (192) configured to: - декодировать из, по меньшей мере, третьей дорожки, по меньшей мере, инструкцию для извлечения первых данных и вторых данных из, по меньшей мере, первой дорожки и, по меньшей мере, второй дорожки;- decode from at least the third track, at least an instruction for extracting first data and second data from at least the first track and at least the second track; - декодировать упомянутые первые данные из упомянутой по меньшей мере первой дорожки, причем упомянутые первые данные представляют текстуру 3D сцены, которая видна в соответствии с первой точкой (20) обзора, при этом первые данные размещаются во множестве первых сегментов, на которые разделен первый кадр (40), причем часть 3D сцены связана с каждым первым сегментом из множества первых сегментов;- decode said first data from said at least first track, wherein said first data represents the texture of the 3D scene that is visible in accordance with the first view point (20), wherein the first data is located in a plurality of first segments into which the first frame is divided ( 40), wherein a portion of the 3D scene is associated with each first segment of the plurality of first segments; - декодировать упомянутые вторые данные из упомянутой по меньшей мере второй дорожки, причем упомянутые вторые данные представляют глубину, связанную с точками 3D сцены, причем упомянутые вторые данные, представляющие глубину, содержатся в, по меньшей мере, фрагменте, который размещен в, по меньшей мере, наборе вторых сегментов второго кадра, при этом набор вторых сегментов распределяется упомянутому каждому первому сегменту, причем, по меньшей мере, фрагмент соответствует двумерной параметризации группы из 3D точек, которые содержатся в, по меньшей мере, части 3D сцены, связанной с упомянутым каждым первым сегментом, при этом вторые данные представляют глубину, связанную с 3D точками группы.- decode said second data from said at least a second track, wherein said second data represents depth associated with points in the 3D scene, wherein said second data representing depth is contained in at least a fragment that is located in at least , a set of second segments of a second frame, wherein the set of second segments is allocated to said each first segment, wherein at least the fragment corresponds to a two-dimensional parameterization of a group of 3D points that are contained in at least a portion of the 3D scene associated with said each first segment, with the second data representing the depth associated with the 3D points of the group. 10. Способ по п.8, в котором третьи данные, представляющие текстуру, связанную с 3D точками группы, которые содержатся в упомянутом каждом фрагменте, дополнительно декодируются из, по меньшей мере, второй дорожки.10. The method of claim 8, wherein third data representing a texture associated with the 3D group points that are contained in said each fragment is further decoded from at least the second track. 11. Способ по п.8, в котором третьи данные, представляющие текстуру, дополнительно декодируются из, по меньшей мере, третьей дорожки, причем третьи данные размещаются во множество третьих сегментов третьего кадра, при этом набор третьих сегментов, содержащий по меньшей мере один третий сегмент, распределяется упомянутому каждому первому сегменту, причем набор, по меньшей мере, фрагмента, содержащий третьи данные, связанные с 3D точками группы, размещается в наборе третьих сегментов, при этом, по меньшей мере, фрагмент соответствует двумерной параметризации группы 3D точек.11. The method of claim 8, wherein third data representing the texture is further decoded from at least a third track, the third data being allocated to a plurality of third segments of the third frame, the set of third segments comprising at least one third segment is allocated to said each first segment, wherein a set of at least a fragment containing third data associated with the 3D points of the group is allocated to the set of third segments, wherein the at least fragment corresponds to a two-dimensional parameterization of the group of 3D points. 12. Способ по одному из пп.8, 10 и 11, в котором визуализация, по меньшей мере, части 3D сцены осуществляется в соответствии с первыми и вторыми данными.12. The method according to one of claims 8, 10 and 11, wherein the rendering of at least a portion of the 3D scene is carried out in accordance with the first and second data. 13. Устройство по п.2, при этом упомянутый каждый фрагмент дополнительно содержит третьи данные, представляющие текстуру, связанную с 3D точками группы, причем третьи данные кодируются в упомянутую по меньшей мере вторую дорожку.13. The apparatus of claim 2, wherein said each fragment further comprises third data representing a texture associated with the 3D points of the group, the third data being encoded into said at least second track. 14. Устройство по п.2, при этом набор третьих сегментов третьего кадра, содержащий по меньшей мере один третий сегмент, распределяется упомянутому каждому первому сегменту, и набор, по меньшей мере, фрагмента, содержащий третьи данные, представляющие текстуру, связанную с 3D точками группы, размещается в упомянутом наборе третьих сегментов, при этом, по меньшей мере, фрагмент соответствует двумерной параметризации группы 3D точек, причем третьи данные кодируются в, по меньшей мере, третью дорожку.14. The apparatus of claim 2, wherein a set of third frame segments comprising at least one third segment is allocated to said each first segment, and a set of at least a fragment comprising third data representing a texture associated with the 3D points group is located in said set of third segments, wherein at least the fragment corresponds to a two-dimensional parameterization of a group of 3D points, and the third data is encoded into at least a third track. 15. Устройство по одному из пп.2, 13 и 14, при этом, когда размер фрагмента набора больше размера второго сегмента, в который должен быть размещен фрагмент, тогда фрагмент разбивается на множество субфрагментов, причем размер каждого меньше размера второго сегмента.15. The device according to one of claims 2, 13 and 14, wherein when the size of the fragment of the set is larger than the size of the second segment in which the fragment is to be placed, then the fragment is divided into a plurality of subfragments, each of which is smaller than the size of the second segment. 16. Устройство по одному из пп.2, 13 и 14, при этом фрагменты набора размещаются в приоритетном порядке в зависимости от визуальной важности фрагментов, причем визуальная важность зависит от вторых данных, связанных с фрагментами.16. The apparatus according to one of claims 2, 13 and 14, wherein the tiles of the set are placed in priority order based on the visual importance of the tiles, wherein the visual importance depends on second data associated with the tiles. 17. Устройство по одному из пп.2, 13 и 14, при этом вторые сегменты имеют один и тот же размер, который является фиксированным для множества следующих друг за другом по времени вторых кадров.17. The device according to one of claims 2, 13 and 14, wherein the second segments have the same size, which is fixed for a plurality of consecutive second frames. 18. Устройство по п.9, при этом третьи данные, представляющие текстуру, связанную с 3D точками группы, которые содержатся в упомянутом каждом фрагменте, дополнительно декодируются из, по меньшей мере, второй дорожки.18. The apparatus of claim 9, wherein third data representing a texture associated with the 3D group points contained in said each fragment is further decoded from at least the second track. 19. Устройство по п.9, при этом третьи данные, представляющие текстуру, дополнительно декодируются из, по меньшей мере, третьей дорожки, причем третьи данные размещаются во множество третьих сегментов третьего кадра, причем набор третьих сегментов, содержащий по меньшей мере один третий сегмент, распределяется упомянутому каждому первому сегменту, причем набор, по меньшей мере, фрагмента, содержащий третьи данные, связанные с 3D точками группы, размещается в наборе третьих сегментов, при этом, по меньшей мере, фрагмент соответствует двумерной параметризации группы 3D точек.19. The apparatus of claim 9, wherein third data representing the texture is further decoded from at least a third track, the third data being allocated to a plurality of third segments of the third frame, the set of third segments comprising at least one third segment , is allocated to said each first segment, wherein a set of at least a fragment containing third data associated with the 3D points of the group is allocated to the set of third segments, wherein the at least fragment corresponds to a two-dimensional parameterization of the group of 3D points. 20. Устройство по одному из пп.9, 18 и 19, в котором визуализация, по меньшей мере, части 3D сцены осуществляется в соответствии с первыми и вторыми данными.20. The device according to one of claims 9, 18 and 19, wherein the rendering of at least a portion of the 3D scene is carried out in accordance with the first and second data.
RU2020135597A 2018-03-30 2019-03-27 Method, device and stream for 3d video format RU2807582C2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP18305372.7 2018-03-30
EP18305372.7A EP3547704A1 (en) 2018-03-30 2018-03-30 Method, apparatus and stream for volumetric video format
PCT/US2019/024245 WO2019191205A1 (en) 2018-03-30 2019-03-27 Method, apparatus and stream for volumetric video format

Publications (2)

Publication Number Publication Date
RU2020135597A RU2020135597A (en) 2022-05-04
RU2807582C2 true RU2807582C2 (en) 2023-11-16

Family

ID=

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009008864A1 (en) * 2007-07-12 2009-01-15 Thomson Licensing System and method for three-dimensional object reconstruction from two-dimensional images
RU2453922C2 (en) * 2010-02-12 2012-06-20 Георгий Русланович Вяхирев Method of displaying original three-dimensional scene based on results of capturing images in two-dimensional projection
RU2606875C2 (en) * 2015-01-16 2017-01-10 Общество с ограниченной ответственностью "Системы Компьютерного зрения" Method and system for displaying scaled scenes in real time
US9674507B2 (en) * 2013-04-30 2017-06-06 Qualcomm Incorporated Monocular visual SLAM with general and panorama camera movements
US20170347084A1 (en) * 2016-05-27 2017-11-30 Intel Corporation Virtual reality panoramic video system using scalable video coding layers
US20180035134A1 (en) * 2015-04-15 2018-02-01 Lytro, Inc. Encoding and decoding virtual reality video
US20180045963A1 (en) * 2016-08-11 2018-02-15 Magic Leap, Inc. Automatic placement of a virtual object in a three-dimensional space
WO2018050529A1 (en) * 2016-09-13 2018-03-22 Thomson Licensing Method, apparatus and stream for immersive video format

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009008864A1 (en) * 2007-07-12 2009-01-15 Thomson Licensing System and method for three-dimensional object reconstruction from two-dimensional images
RU2453922C2 (en) * 2010-02-12 2012-06-20 Георгий Русланович Вяхирев Method of displaying original three-dimensional scene based on results of capturing images in two-dimensional projection
US9674507B2 (en) * 2013-04-30 2017-06-06 Qualcomm Incorporated Monocular visual SLAM with general and panorama camera movements
RU2606875C2 (en) * 2015-01-16 2017-01-10 Общество с ограниченной ответственностью "Системы Компьютерного зрения" Method and system for displaying scaled scenes in real time
US20180035134A1 (en) * 2015-04-15 2018-02-01 Lytro, Inc. Encoding and decoding virtual reality video
US20170347084A1 (en) * 2016-05-27 2017-11-30 Intel Corporation Virtual reality panoramic video system using scalable video coding layers
US20180045963A1 (en) * 2016-08-11 2018-02-15 Magic Leap, Inc. Automatic placement of a virtual object in a three-dimensional space
WO2018050529A1 (en) * 2016-09-13 2018-03-22 Thomson Licensing Method, apparatus and stream for immersive video format

Similar Documents

Publication Publication Date Title
KR102468178B1 (en) Method, device and stream for immersive video format
US11647177B2 (en) Method, apparatus and stream for volumetric video format
US20210195162A1 (en) Method, apparatus and stream for volumetric video format
CN111615715A (en) Method, apparatus and stream for encoding/decoding volumetric video
EP3562159A1 (en) Method, apparatus and stream for volumetric video format
JP2021502033A (en) How to encode / decode volumetric video, equipment, and streams
US20220343549A1 (en) A method and apparatus for encoding, transmitting and decoding volumetric video
WO2019191202A1 (en) Method, apparatus and stream for volumetric video format
EP3741110A1 (en) A method and apparatus for encoding and decoding three-dimensional scenes in and from a data stream
CN114945946A (en) Volumetric video with auxiliary chunking
KR20220035229A (en) Method and apparatus for delivering volumetric video content
RU2807582C2 (en) Method, device and stream for 3d video format
CN114868396A (en) Method and apparatus for encoding and decoding of multi-view 3DoF + content
WO2020185529A1 (en) A method and apparatus for encoding and decoding volumetric video
US20230032599A1 (en) Methods and apparatuses for encoding, decoding and rendering 6dof content from 3dof+ composed elements
US20230239451A1 (en) A method and apparatus for encoding and decoding volumetric content in and from a data stream
US20230224501A1 (en) Different atlas packings for volumetric video