Область техники, к которой относится настоящее изобретение
Принципы настоящего изобретения в целом относится к области трехмерной (3D) сцены и объемного видеоконтента. Настоящий документ также касается области кодирования, форматирования и декодирования данных, представляющих геометрию 3D-сцен, например, для рендеринга объемного контента на устройствах конечного пользователя, например, на мобильных устройствах или на наголовных дисплеях (HMD).
Предшествующий уровень техники настоящего изобретения
Данный раздел предназначен для знакомства читателя с различными аспектами этой области техники, которые могут быть связаны с различными аспектами принципов настоящего изобретения, которые описаны и/или заявлены ниже. Считается, что это обсуждение будет полезным для предоставления читателю вводной информации для содействия лучшему пониманию различных аспектов принципов настоящего изобретения. Аналогичным образом следует понимать, что такие утверждения следует рассматривать с этой точки зрения, а не как знакомство с предшествующим уровнем техники.
В последнее время наблюдался рост доступного контента с большим полем зрения (вплоть до 360°). Такой контент потенциально не полностью видим для пользователя, просматривающего контент на дисплейных устройствах с эффектом погружения, в частности, на наголовных дисплеях, умных стеклах, экранах ПК, планшетах, смартфонах и тому подобном. Это означает, что в текущий момент пользователь может просматривать только часть контента. Однако пользователь может обычно перемещаться внутри контента с помощью различных средств, в частности, движения головы, перемещения мыши, сенсорного экрана, голоса и тому подобных. Обычно желательно кодировать и декодировать этот контент.
Видео с эффектом погружения, также называемое плоским видео 360°, позволяет пользователю просмотреть все вокруг себя с помощью поворотов головы вокруг неподвижной точки зрения. Повороты позволяют получить только впечатление с 3 степенями свободы (3DoF). Даже если 3DoF видео достаточно для первого впечатления от видео с круговым обзором, например, с использованием устройства наголовного дисплея (HMD), 3DoF видео может быстро стать раздражающим для зрителя, который ожидал бы получить больше свободы, например, почувствовать параллакс.Кроме того, 3DoF может также вызвать пространственную дезориентацию, поскольку пользователь никогда не поворачивает только свою голову, он также перемещает свою голову в трех направлениях, эти перемещения не воспроизводятся при просмотрах 3DoF видео.
Контентом с большим полем зрения может быть, помимо прочего, сцена трехмерного изображения, созданного компьютером (сцена 3D CGI), облако точек или видео с эффектом погружения. Для разработки таких видео с эффектом погружения можно использовать много терминов: виртуальная реальность (BP), 360, панорамное, 4 л стерадианов, с эффектом погружения, с круговым обзором или с большим полем зрения, например.
Объемное видео (также называемое видео с 6 степенями свободы (6DoF)) является альтернативой к 3DoF видео. При просмотре 6DoF видео, в дополнение к поворотам, пользователь также может перемещать свою голову, и даже свое тело внутри просматриваемого контента и почувствовать параллакс и даже объемные эффекты. Такие видео существенно повышают чувства эффекта погружения и восприятия глубины сцены и предотвращают пространственную дезориентацию за счет предоставления согласованной визуальной обратной связи во время перемещений головы. Контент создается с применением специализированных датчиков, позволяющих одновременно записывать цвет и глубину интересующей сцены. Использование штатива с цветными видеокамерами совместно с технологиями фотограмметрии является способом для выполнения такой записи, даже если при этом остаются технические трудности.
В то время как 3DoF видео состоят из последовательности изображений, полученных в результате обратного мэппинга текстурных изображений (т.е. сферические изображения, закодированные согласно проекционному мэппингу по широте/долготе или равнопромежуточному проекционному мэппингу), кадры 6DoF видео содержат в себе информацию с нескольких точек зрения. Их можно рассматривать, как темпоральную последовательность облаков точек, получающихся при трехмерной съемке. В зависимости от условий просмотра можно говорить о двух типах объемных видео. Первый тип (т.е. полное 6DoF) позволяет выполнять полностью свободную навигацию внутри видеоконтента, в то время как второй тип (также известный как 3DoF+) ограничивает пространство просмотра пользователя до ограниченного объема, называемого ограничивающим объемом просмотра, который позволяет достичь ограниченного перемещения головы и восприятия параллакса. Этот второй контекст является ценным компромиссом между свободной навигации и условиями пассивного просмотра сидящего зрителя.
Помимо конкретного случая объемного видео, кодирование и декодирование информации о глубине 3D сцены или объемного контента могут также быть проблемой, в частности, когда подлежащий кодированию диапазон значений глубин является большим и глубина в битах, имеющаяся для кодирования, не обеспечивает достаточное количество кодированных значений.
Краткое раскрытие настоящего изобретения
Ниже представлено упрощенное краткое раскрытие принципов настоящего изобретения для получения базового понимания некоторых аспектов принципов настоящего изобретения. Это краткое раскрытие не является подробным обзором принципов настоящего изобретения. Оно не предназначено для идентификации основных или важных элементов принципов настоящего изобретения. Представленное ниже краткое раскрытие просто описывает некоторые аспекты принципов настоящего изобретения в упрощенной форме в качестве введения к более подробному описанию, которое представлено далее.
Принципы настоящего изобретения связаны со способом кодирования данных, описывающих расстояния между точками в облаке точек и первой точкой, расположенной внутри облака точек. Способ содержит квантование значения, описывающего расстояние между первой и второй точками посредством использования функции квантования определенной третьей точкой, данным углом и значением ошибки. Функция квантования может быть определена образом, что деквантование суммы квантованного значения и значения ошибки создает четвертую точку; причем угол, образованный четвертой, третьей, второй точками, не превышает данного угла (меньше либо равен данному углу). Когда значение квантовано, способ кодирует это квантованное значение в поток данных совместно с метаданными, описывающими функцию квантования. Согласно вариантуосуществления функция квантования является параметризованной функцией, известной как кодировщику, так и декодировщику, и при этом метаданные содержат данный угол и/или значение ошибки и/или координаты третьей точки или, согласно одному варианту, расстояние между первой точкой и третьей точкой. Согласно другому варианту осуществления метаданные содержат таблицу поиска, описывающую функцию обратного квантования.
Принципы настоящего изобретения также относятся к потоку данных, создаваемому устройством, реализующим такой способ. Поток данных содержит данные, описывающие квантованные значения, которые описывают расстояние между точками в облаке точек и первой точкой, расположенной внутри облака точек; причем расстояния были квантованы посредством использования функции квантования, определенной третьей точкой, данным углом и значением ошибки.
Принципы настоящего изобретения также связаны со способом декодирования данных, описывающих расстояния между точками в облаке точек и первой точкой, расположенной внутри облака точек. Способ предусматривает декодирование из потока данных квантованного значения и ассоциированных метаданных. Метаданные содержат данные, описывающие функцию квантования, определенную третьей точкой, данным углом и значением ошибки. Способы дополнительно деквантуют извлеченное квантованное значение посредством использования функции, обратной к этой функции квантования. Согласно варианту осуществления функция обратного квантования является параметризованной функцией, известной как кодировщику, так и декодировщику, и при этом метаданные содержат данный угол и/или значение ошибки и/или координаты третьей точки или, согласно одному варианту, расстояние между первой точкой и третьей точкой. В этом варианте осуществления на стороне декодирования функции обратного квантования инициализируется этими параметрами. Согласно вариантам некоторые из этих параметров являются необязательными, если значение по умолчанию настроено для одного из них. Согласно другому варианту осуществления метаданные содержат таблицу поиска, описывающую функцию обратного квантования. Вещественные значения расстояния получаются при поиске в таблице квантованного значения.
Принципы настоящего изобретения также связаны с устройствами, содержащими процессор, выполненный с возможностью реализации таких способов.
Краткое описание фигур
Представленное изобретение будет лучше понято и другие конкретные функции и преимущества будут понятны после чтения следующего описания, при этом в описании используются ссылки на приложенные фигуры, в которых:
На фиг. 1 показана трехмерная (3D) модель объекта и точки облака точек, соответствующих 3D модели, согласно не имеющему ограничительного характера варианту осуществления принципов настоящего изобретения;
На фиг. 2 показан не имеющий ограничительного характера пример кодирования, передачи и декодирования данных, описывающих последовательность 3D сцен, согласно не имеющему ограничительного характера варианту осуществления принципов настоящего изобретения;
На фиг. 3 показан пример архитектуры устройства, которое можно выполнить с возможностью реализации способа, описанного со ссылками на фиг. 8 и 9, согласно не имеющему ограничительного характера варианту осуществления принципов настоящего изобретения;
На фиг. 4 показан пример варианта осуществления синтаксиса потока, когда данные передаются с помощью основанного на пакетах протокола передачи, согласно не имеющему ограничительного характера варианту осуществления принципов настоящего изобретения;
На фиг. 5 показана сферическая проекция из центральной точки зрения, согласно не имеющему ограничительного характера варианту осуществления принципов настоящего изобретения;
На фиг. 6 показан пример проекционной карты, содержащей информацию глубины точек 3D сцены, видимых из центра проецирования (также называемой первой точкой), согласно не имеющему ограничительного характера варианту осуществления принципов настоящего изобретения;
На фиг. 7 показано, как ошибка квантования воспринимается согласно второй точке зрения 3D сцены, согласно не имеющему ограничительного характера варианту осуществления принципов настоящего изобретения;
На фиг. 8 показан способ кодирования данных, описывающих глубину точек 3D сцены, согласно не имеющему ограничительного характера варианту осуществления принципов настоящего изобретения;
На фиг. 9 показан способ декодирования данных, описывающих расстояние между точками 3D сцены и первой точкой внутри 3D сцены, согласно не имеющему ограничительного характера варианту осуществления принципов настоящего изобретения.
Подробное описание вариантов осуществления
Принципы настоящего изобретения будут описаны ниже более полно со ссылками на сопровождающие фигуры, на которых показаны примеры принципов настоящего изобретения. Принципы настоящего изобретения могут, однако, быть реализованы во многих альтернативных формах и не следует понимать, что они ограничены изложенными ниже примерами. Соответственно, хотя принципы настоящего изобретения допускают различные модификации и альтернативные формы, их конкретные примеры показаны с помощью примеров на фигурах и будут подробно описаны в настоящем документе. Однако следует понимать, что нет никакого намерения ограничить принципы настоящего изобретения раскрытыми конкретными формами, а наоборот, намерение заключается в охвате настоящим изобретением всех модификаций, эквивалентов и альтернатив, находящихся в пределах сущности и объема принципов настоящего изобретения, как определено в формуле изобретения.
Используемая здесь терминология служит только для целей описания конкретных примеров и не предназначена иметь ограничительный характер для принципов настоящего изобретения. Как используется в настоящем документе, формы единственного числа имен существительных также включают в себя ссылки на множественное число, кроме случаев, когда контекст явно указывает иное. Следует также понимать, что термины «содержит», «содержащий», «включает в себя» и/или «включающий в себя» при использовании в этом описании указывают наличие заявленных признаков, систем, стадий, операций, элементов и/или компонентов, но не препятствуют наличию или добавлении одного или нескольких других признаков, систем, стадий, операций, элементов, компонентов и/или их групп. Более того, когда элемент указан как являющийся «описывающим» другой элемент или «подсоединенным» к нему, он может непосредственно описывать другой элемент или быть к нему подсоединенным, либо могут присутствовать промежуточные элементы. В отличие от этого, когда элемент указан как являющийся «непосредственно описывающим» другой элемент или «непосредственно подсоединенным» к нему, нет никаких промежуточных элементов. Как используется в настоящем документе, термин «и/или» включает любые и все комбинации одной или нескольких ассоциированных перечисленных позиций и может быть сокращен как «/».
Следует понимать, что хотя термины первый, второй и т.д. могут быть использованы в настоящем документе для описания различных элементов, эти элементы не будут ограничены такими терминами. Такие термины используются только для того, чтобы отличить один элемента от другого. Например, первый элемент может быть назван вторым элементом, и, аналогичным образом, второй элемент может быть назван первым элементом, без отклонения от принципов настоящего изобретения.
Хотя на некоторых схемах приведены стрелки на путях передачи данных для указания основного направления передачи данных, следует понимать, что передача данных может происходить в направлении, противоположном к показанному стрелками.
Некоторые примеры описаны со ссылками на блочные схемы и блок-схемы алгоритмов, в которых каждый блок представляет элемент схемы, модуль или часть кода, которая содержит одну или несколько выполняемых инструкций для реализации указанной логической функции. Следует также отметить, что в других реализациях указанные в блоках функции могут появляться не в указанном порядке. Например, два блока, которые показаны как последовательность, могут фактически выполняться практически одновременно, или блоки иногда могут выполняться в обратном порядке, в зависимости от предусмотренной функциональности.
Используемые в настоящем документе ссылки «согласно примеру» или «в примере» означают, что конкретная функция, структура и характеристика, описанная в связи с этим примером, может быть включена в, по меньшей мере, одну реализацию принципов настоящего изобретения. Появляющиеся в различных местах описания фразы «согласно примеру» или «в примере» не обязательно все указывают на тот же самый пример, а также отдельные или альтернативные примеры не обязательно являются взаимно исключающими к другим примерам.
Появляющиеся в формуле изобретения номера позиций приведены только для иллюстрации и не имеют никакого ограничительного характера для объема формулы настоящего изобретения. Хотя это не описано явно, представленные примеры и варианты могут применяться в любой комбинации или в упрощенной комбинации.
Согласно не имеющим ограничительного характера вариантам осуществления настоящего изобретения, в настоящем документе представлены способы и устройства для кодирования и декодирования данных, описывающих глубину точек 3D сцены. Согласно принципам настоящего изобретения, глубина точки в 3D сцене является расстоянием (например, евклидовым расстоянием в декартовой системе координат) между этой точкой и данной точкой, называемой в настоящем документе первой точкой или центром проецирования. Часть подлежащей кодированию 3D сцены проецируется на плоскость изображения относительно центра проецирования. Операция центрального проецирования используется совместно с операцией мэппинга, например, сферического проекционного мэппинга (например, равнопромежуточной проекции (ERP) или проекции Кассини или синусоидальной проекции) или кубического проекционного мэппинга (согласно различным расположениям граней куба) или пирамидального проекционного мэппинга. В контексте этого изобретения данные глубины квантуются и хранятся как данные изображения, то есть как двумерная матрица или массив пикселей. Такие изображения сжимаются и передаются на декодер, который распаковывает их.
Точка Р0 проецируется на плоскость изображения, и ее глубина хранится как вещественное число (т.е. значение представлено в формате с плавающей запятой). Квантование является процессом ограничения входных значений из непрерывного или иным образом большого набора значений (например, вещественных чисел) в дискретной набор, например в интервал целых чисел, типично между 0 и n. Таким образом, квантование вводит потерю точности, когда число квантуемых значений больше, чем n.
При кодировании расстояние d0 квантуется как значение v0 согласно функции квантования, а при декодировании значение v0 деквантуется в расстояние d1 согласно функции обратного квантования. Затем точка Р1 депроецируется на расстоянии D1 от центра проецирования.
Операция сжатия и распаковки вносит некоторые ошибки в квантованные значения. Квантованное значение v0 может перескочить, после сжатия и распаковки, в значение v2 между v0-δ и v0+δ, где δ=1 или 2 или 10, например. Это значение v2 деквантуется в расстоянии d2 согласно функции обратного квантования. Так что вместо точки Р1 точка Р2 депроецируется на расстоянии d2 от центра проецирования на той же самой линии, проходящей через центр проецирования. Ошибка (d1-d2) зависит от функции квантования. Кроме того, ошибка в месте положения между Р1 и Р2 по-разному воспринимается в зависимости от положения точки зрения А, с которой они наблюдаются. Действительно, угол определяет разность положений между Р1 и Р2 при осмотре из А. Например, известно, что при угле, меньшем угла γ=0,5' (половина угловой минуты), называемом остротой зрения человека, человеческий глаз не может различить две различные точки в 3D пространстве.
Согласно не имеющему ограничительного характера варианту осуществления принципов настоящего изобретения, данные, описывающие расстояние между точками 3D сцены и первой точкой внутри 3D сцены, кодируются в поток данных. Эти данные глубины квантуются при использовании функции квантования, определенной согласно второй точке, данному углу и значению ошибки, таким образом, что разница в значении ошибки между двумя квантованными значениями приводит к углу ошибки у вышеуказанной второй точки меньшему, чем вышеуказанный данный угол. Данные глубины представляют собой расстояние между точкой P1 и центром проецирования. Разница в значении ошибки (например, разница величиной 1, 3 или 7) между квантованным значением данных глубины для точки Р перед сжатием и квантованным значением тех же самых данных после распаковки приводит к депроекции этих данных на другое расстояние и помещает точку Р2 дальше или ближе к центру проецирования. Угол ошибки в данной точке А является углом образованным в этой данной точке из-за значения ошибки в квантованном значении. Согласно принципам настоящего изобретения, функция квантования определяется таким образом, чтобы гарантировать, что для данной второй точки в 3D сцене угол ошибки не превысит данного угла (выбранного согласно ожидаемый точности), когда ошибка квантованного значения находится на данном уровне, называемом значением ошибки.
На фиг. 1 показана трехмерная (3D) модель 10 объекта и точки облака 11 точек, соответствующего 3D модели 10. 3D модель 10 и облако 11 точек могут, например, соответствовать возможному 3D изображению объекта 3D сцены, содержащей другие объекты. Модель 10 может быть 3D изображением сетки и точки облака 11 точек могут быть вершинами сетки. Точки облака 11 точек могут также быть точками, распределенными на поверхности граней сетки. Модель 10 может также быть представлена как «набрызганная» версия облака 11 точек, при этом поверхность модели 10 была создана набрасыванием точек облака 11 точек. Модель 10 может быть представлена множеством различных изображений, например, вокселами или сплайнами. На фиг. 1 показан тот факт, что облако точек может быть определено с помощью изображения поверхности 3D объекта, и что изображение поверхности 3D объекта может быть создано из точек облака. Как используется в настоящем документе, проецирование точек 3D объекта (путем удлинения положения точек 3D сцены) на изображение эквивалентно проецированию любого представления этого 3D объекта, например облака точек, сетки, сплайновой модели или воксельной модели.
Облако точек может быть представлено в памяти, например, векторной структурой, в которой каждая точка имеет свои собственные координаты в системе координат с началом в точке обзора (например, трехмерные координаты XYZ, или телесный угол и расстояние (также называемая глубиной) от/до точки обзора) и одним или несколькими атрибутами, также называемых компонентами. Примером компонента является компонент цвета, который может быть выражен в различных цветовых пространствах, например RGB (красный, зеленый и синий) или YUV (Y является компонентом яркости, a UV - двумя компонентами цветности). Облако точек является изображением 3D сцены, содержащий объекты. 3D сцену можно просматривать с данной точки осмотра или с ряда точек осмотра. Облако точек можно получить многими способами, например:
посредством захвата реального объекта, снятого набором камер, при необходимости дополненных активным устройством измерения глубины;
посредством захвата виртуального/синтетического объекта, снятого набором виртуальных камер в моделирующей системе;
в виде смеси, как реальных, так и виртуальных объектов.
На фиг. 2 показан не имеющий ограничительного характера пример кодирования, передачи и декодирования данных, описывающих последовательность 3D сцен. Формат кодирования может быть, например, и одновременно, совместимым для декодирования 3DoF, 3DoF+и 6DoF.
Получается последовательность 20 3D сцен. Как последовательность картинок является 2D видео, так и последовательность 3D сцен является 3D (также называемым объемным) видео. Последовательность 3D сцен может быть предоставлена для устройства рендеринга объемного видео для рендеринга и отображения 3DoF, 3Dof+ или 6DoF.
Последовательность 20 3D сцен подается на кодировщик 21. Кодировщик 21 берет одну 3D сцену или последовательность 3D сцен в качестве входных данных и создает поток битов, соответствующий входным данным. Поток битов можно сохранить в памяти 22 и/или на электронном носителе данных, и его можно передать по сети 22. Поток битов, представляющий последовательность 3D сцен, можно прочитать из памяти 22 и/или принять из сети 22 с помощью декодера 23. На вход декодера 23 подается вышеуказанный поток битов, и декодер создает последовательность 3D сцен, например, в формате облака точек.
Кодировщик 21 может содержать несколько схем, реализующих несколько стадий. На первой стадии кодировщик 21 проецирует каждую 3D сцену на, по меньшей мере, одну 2D картинку. 3D проекция является любым способом отображения трехмерных точек на двумерную плоскость. Так как большинство текущих методов для отображения графических данных основаны на плоской (пиксельная информация с нескольких битовых плоскостей) двумерной среде, использование этого типа проекции получило широкое распространение, в частности, в компьютерной графике, проектировании и черчении. Проекционная схема 211 создает, по меньшей мере, один двумерный кадр 2111 для 3D сцены из последовательности 20. Кадр 2111 содержит информацию глубины, описывающую 3D сцену, спроецированную на кадр 2111. Согласно варианту, цветовая информация, описывающая информацию цветов точек 3D сцены, также проецируется и хранится в пикселях кадра 2111. Согласно другому варианту, информация о цвете и глубине кодируется в двух отдельных кадрах 2111 и 2112. Например, точки 3D сцены 10 фиг. 1 содержит только информацию глубины. Никакой текстуры не прикреплено к модели, у точек 3D сцены нет компоненты цвета. В любом случае информацию глубины требуется закодировать в представлении 3D сцены.
Метаданные 212 используются и обновляются проекционной схемой 211. Метаданные 212 содержат информацию об операции проецирования (например, параметры проецирования) и о способе организации информации цвета и глубины внутри кадров 2111 и 2112, как описано со ссылками на фигуры 5-7. Согласно принципам настоящего изобретения, метаданные содержат информацию, описывающую функцию обратного квантования, использовавшуюся для кодирования информации глубины.
Схема 213 кодирования видео кодирует последовательность кадров 2111 и 2112 как видео. Картинки 2111 и 2112 3D сцены (или последовательность картинок 3D сцены) кодируется в поток кодировщиком 213 видео. Затем видеоданные и метаданные 212 инкапсулируются в поток данных схемой 214 инкапсуляции данных.
Кодировщик 213, например, соответствует кодировщику, в частности, по стандарту:
JPEG, спецификация ISO/CEI 10918-1 рекомендация UIT-T Т.81, https://www.itu.int/rec/T-REC-T.81/en;
AVC, также называемом MPEG-4 AVC или h264. Описан в спецификации, как UIT-Т Н.264, так и ISO/CEI MPEG-4 часть 10 (ISO/CEI 14496-10), http://www.itu.int/rec/T-REC-H.264/en, HEVC (эта спецификация находится на веб-сайте ITU, рекомендация Т, серия Н, h265, http://www.itu.int/rec/T-REC-H.265-201612-I/en);
3D-HEVC (как расширение HEVC, спецификация которого находится на веб-сайте I'I'U, рекомендация Т, серия Н, h265, http://www.itu.int/rec/T-REC-H.265-201612-I/en приложение G и I);
VP9, разработанный Google; или
AVI (AOMedia Video 1), разработанный организацией Alliance for Open Media.
Поток данных хранится в памяти, к которой есть доступ, например, через сеть 22 посредством декодера 23. Декодер 23 содержит различные схемы, реализующие различные стадии декодирования. Декодер 23 принимает поток данных, созданный кодировщиком 21, в качестве входных данных, и создает последовательность 24 3D сцен для рендеринга и отображения устройством объемного видеодисплея, наподобие наголовного устройства (HMD). Декодер 23 получает поток от источника 22. Например, источник 22 принадлежит к набору, содержащему в себе:
локальную память, например, видеопамять или ОЗУ (или оперативное запоминающее устройство), флеш-память, ПЗУ (или постоянное запоминающее устройство), накопитель на жестком диске;
интерфейс хранилища, например, интерфейс с массовой памятью, ОЗУ, флеш-памятью, ПЗУ, оптическим диском или магнитным диском;
интерфейс передачи данных, например, интерфейс проводного канала (например, интерфейс шины, интерфейс глобальной вычислительной сети, интерфейс локальной вычислительной сети) или беспроводной интерфейс (в частности, интерфейс IEEE 802.11 или интерфейс Bluetooth®); и
интерфейс пользователя, в частности, графический интерфейс пользователя, позволяющий пользователю вводить данные.
Декодер 23 содержит схему 234 для извлечения данных, закодированных в потоке данных. Схема 234 получает поток данных в качестве входных данных и создает метаданные 232, соответствующие метаданным 212, закодированным в потоке, и двумерное видео. Согласно принципам настоящего изобретения, метаданные 232 содержат информацию, описывающую функцию обратного квантования, используемую для восстановления глубины точек 3D сцены. В контексте настоящего изобретения глубина точки соответствует расстоянию между точкой для депроецирования и центром проецирования. Координаты центра проецирования содержится в метаданных 232 или определяются по умолчанию, например, в начале системы координат трехмерного пространства 3D сцены. Видео декодируется видеодекодером 233, который создает последовательность кадров. Декодированные кадры содержит информацию глубины. Вследствие процесса сжатия-распаковки квантованные значения глубины после декодирования могут отличаться от квантованных значений глубины при кодировании. Согласно варианту, декодированные кадры содержит информацию глубины и цветовую информацию. Согласно другому варианту, видеодекодер 233 создает две последовательности кадров, одна содержит цветовую информацию, другая содержит информацию глубины. Схема 231 использует метаданные 232 для восстановления функции обратного квантования и депроецирования информации глубины и, в конечном итоге, цветовой информации из декодированных кадров для создания последовательности 24 3D сцен. Последовательность 24 3D сцен соответствует последовательности 20 3D сцен, с возможной потери точности, связанной с кодированием в виде двумерного видео и со сжатием видео. 3D сцена декодированной последовательности 24 отрисовывается из текущей точки зрения посредством проецирования 3D сцены на плоскость изображения окна просмотра.
На фиг. 3 показан пример архитектуры устройства 30, которое можно выполнить с возможностью реализации способа, описанного со ссылками на фиг. 8 и 9. Показанные на фиг. 2 кодировщик 21 и/или декодер 23 могут реализовать эту архитектуру. В соответствии с другим вариантом каждая из схем кодировщика 21 и/или декодера 23 может быть устройством с архитектурой, показанной на фиг. 3, они связаны вместе, например, с помощью их шины 31 и/или с помощью интерфейса 36 Вх/Вых.
Устройство 30 содержит следующие элементы, которые соединены вместе с помощью шины 31 данных и адресов:
Микропроцессор 32 (или ЦП), который является, например, ЦСП (или цифровым сигнальным процессором);
ПЗУ (или постоянное запоминающее устройство) 33;
ОЗУ (или оперативное запоминающее устройство) 34; интерфейс 35 хранилища;
интерфейс 36 Вх/Вых для приема данных для передачи из прикладной программы; и
блок питания, например, аккумулятор.
Согласно примеру блок питания является внешним для устройства. В каждом из упомянутых устройств памяти используемое в этом описании слово «регистр» может соответствовать участку небольшой емкости (несколько битов) или очень большому участку (например, целой программе или большому количеству принятых или декодированных данных). ПЗУ 33 содержит, по меньшей мере, программу и параметры. В ПЗУ 33 могут храниться алгоритмы и инструкции для выполнения способов согласно принципам настоящего изобретения. При включении питания ЦП 32 загружает программу в ОЗУ и выполняет соответствующие инструкции.
ОЗУ 34 содержит в регистре программу, выполняемую ЦП 32 и загруженную после включения питания устройства 30, входные данные в регистре, промежуточные данные в различных состояниях процесса в регистре и другие переменные, используемые для выполнения способа, в регистре.
Описанные в настоящем документе реализации можно реализовать, например, как способ или процесс, как аппаратуру, программный продукт для компьютера, поток данных или сигнал. Даже если обсуждение ведется только в контексте единственной формы реализации (например, обсуждается только как способ или как устройство), реализация обсуждаемых функций также может быть выполнена в различных формах (например, как программа). Аппаратуру можно реализовать, например, в виде соответствующих аппаратных средств, программного обеспечения, и встроенного программного обеспечения. Способы можно реализовать, например, в виде аппаратуры, в частности, например, процессора, который обозначает в общем случае обрабатывающие устройства, включая, например, компьютер, микропроцессор, интегральную схему или программируемое логическое устройство. Процессоры также включают в себя устройства связи, в частности, например, компьютеры, сотовые телефоны, портативные/персональные цифровые помощники (PDA или карманный персональный компьютер (КПК)) и другие устройства, которые упрощают передачу информации между конечными пользователями.
Согласно примерам, устройство 30 выполнено с возможностью реализации способа, описанного со ссылками на фиг. 8 и 9, и принадлежит набору, содержащему в себе:
мобильное устройство;
устройство связи;
игровое устройство;
планшет (или планшетный компьютер);
ноутбук;
фотоаппарат;
видеокамеру;
кодирующую микросхему;
сервер (например, широковещательный сервер, сервер видео по запросу или вебсервер).
На фиг. 4 показан пример варианта осуществления синтаксиса потока, когда данные передаются с помощью основанного на пакетах протокола передачи. На фиг. 4 показан пример структуры 4 объемного видеопотока. Структура содержит контейнер, который организует поток в виде независимых элементов синтаксиса. Структура может содержать часть 41 заголовка, который является набором данных, общим для всех элементов синтаксиса потока. Например, часть заголовка содержит некоторые из метаданных об элементах синтаксиса, описывающих характер и роль каждого из них. Часть заголовка может также содержать часть метаданных 212, показанных на фиг. 2, например координаты центральной точки зрения, используемой для проецирования точек 3D сцены на кадры 2111 и 2112. Структура содержит полезные данные, содержащие элемент синтаксиса 42 и, по меньшей мере, один элемент синтаксиса 43. Элемент синтаксиса 42 содержит данные, описывающее цвет и глубину кадров. Изображения могут быть сжаты согласно способу сжатия видео.
Элемент синтаксиса 43 является частью полезных данных потока данных и может содержать метаданные о том, как закодированы кадры элементов синтаксиса 42, например, параметры, используемые для проецирования и упаковки точек 3D сцены в кадры. Такие метаданные могут быть ассоциированы с каждым кадром видео или с группой кадров (также называемой группой картинок (GoP) в стандартах сжатия видео).
На фиг. 5 показана сферическая проекция из центральной точки зрения 50. В показанном на фиг. 5 примере 3D сцена содержит три объекта 52, 53 и 54.
Точки объекта 52 образуют поверхность с передней стороной и с задней стороной относительно точки зрения 50. Точки задней стороны объекта 52 не видны из точки зрения 50. Точки объектов 53 и 54 образуют поверхности с передней стороной относительно точки зрения 50. Точки объекта 53 видны из точки зрения 50, но только часть точек объекта 54 видна из точки зрения из-за затенения поверхностью объекта 53. Таким образом, сферическая проекция (например, равнопромежуточная проекция ERP) не проецирует каждую точку 3D сцены в кадр. Можно использовать другие многочисленные типы проекций, например, перспективные проекции или ортогональные проекции. Например, точки облака точек, видимые из точки зрения 50, проецируются на проекционную карту 51 согласно методу проекции. В показанном на фиг. 5 примере методом проекции является сферическая проекция, например, проекция по широте и долготе или равнопромежуточная проекция (также называемая ERP), так что проекционная карта показана как сфера 51 на фиг. 5. Согласно варианту, методом проекции является метод кубической проекции, метод пирамидальной проекции или любой метод проекции с центром в точке зрения 50. Точки передней стороны объекта 52 проецируются на участок 55 проекционной карты. Точки задней стороны объекта 52 не проецируются, так как они не видны из точки зрения 50. Каждая точка объекта 53 видна из точки зрения 50. Они проецируются согласно методу проекции на участок 56 проекционной карты 51. Согласно варианту осуществления только часть точек объекта 54 видна из точки зрения 50. Видимые точки объекта 54 проецируются на участок 57 проекционной карты 51. Информация, хранящаяся в пикселях проекционный карты 51, соответствует расстояниям между проецируемыми точками 3D сцены и центром проецирования 50. Согласно варианту осуществления цветовой компонент проецированных точек также хранится в пикселях проекционный карты 51.
На фиг. 6 показан пример проекционной карты 60, содержащей информацию глубины точек 3D сцены, видимых из центра проецирования (также называемой первой точкой), согласно не имеющему ограничительного характера варианту осуществления принципов настоящего изобретения. В показанном на фиг. 6 примере, чем дальше от центра проецирования расположена точка 3D сцены, тем ярче пиксель в изображении 60. Расстояние, которое должно храниться в пикселе изображения 60, квантуется по уровню серого, то есть это целое число, лежащее в интервале между 0 и N=2n-1; где n является глубиной кодирования бита (т.е. числом битов, используемых для кодирования целого значения, обычно 8, 10 или 12 для кодеков HEVC). В показанном на фиг. 6 примере глубина закодирована 10 битами, следовательно, пиксель хранит значение между 0 и 1023. Информация о глубине, например, для показанного на фиг. 6 примера, меняется от zmin=0,5 метра до zmax=28 метров. Там имеется более чем 1024 различных расстояний и нужно использовать функцию квантования, чтобы преобразовать действительные значения в дискретные значения. Афинное преобразование по формуле 1 или обратная функция по формуле 2 являются возможными функциями квантования для квантования действительного значения глубины z:
Однако такие квантования не являются чувственно согласованными, а скорее управляются сценой, так как объективно зависят от zmin и zmax.
На фиг. 7 показано, как ошибка квантования воспринимается согласно второй точке зрения 3D сцены. В показанном на фиг. 7 примере точка 71 проецируется на плоскость изображения проекционной карты. Сфера 72 представляет зону просмотра, также называемую ограничивающим объемом просмотра, из которого пользователь может просматривать 3D сцену в контексте сценария 3DoF+. Сфера 72 может также представлять проекционную карту. Расстояние 74, которое мы называем z, между точкой 71 и первой точкой 73 (т.е. центром проецирования), квантуется с помощью функции квантования f и квантованное значение v хранится в пикселе проекционной карты. Проекционная карта сжимается кодеком изображения и распаковывается на стороне декодирования, как показано на фиг. 2. Значение v может быть сдвинуто до значения v' этим процессом сжатия и распаковки, например, на плюс или минус 1, 5 или 8. Расстояние между первой точкой 73 и депроецированной точкой 76 определяется путем применения функции обратного квантования к значению v'. Разница 75 между расстоянием 74 и расстоянием между точками 76 и 73 вызвана ошибкой сжатия. Разница 75 зависит от функции обратного квантования, а также от функции квантования. При наблюдении из первой точки 73 разница 75 воспринимается только в отношении между точкой 76 и ее соседями, которые являются окружающими точками депроецирования. Однако при наблюдении из другой точки зоны просмотра, например, из точки 77, разница 75 воспринимается сама по себе, поскольку это разница между положениями точек 71 и 76 образует угол 78 с вершиной в точке 77. Чем больше угол 78, чем больше визуальный дефект, вызванный ошибкой сжатия. Угол 78 называется углом ошибки в точке 77.
Согласно принципам настоящего изобретения, функция квантования выбирается и параметризуется для того, чтобы удерживать угол 78 меньшим заранее определенного угла γ для второй точки в трехмерном пространстве. Например, вторая точка 77 или 79 выбирается в зоне просмотра, определенной для данного рендеринга 3DoF+ для 3D сцены. Например, угол γ настроен в значение, соответствующее известной остроте зрения человека около половины угловой минуты. Угол γ можно настроить на любое значение угла согласно ожидаемой надежности квантования при ожидаемом уровне ошибки сжатия. В этом контексте в зависимости от положения пользователя в зоне просмотра ассоциированный угол ошибки 78, называемый в настоящем документе φ(z), может быть нулевым, когда пользователь стоит в центре проецирования, но может быть значительно большим, когда он стоит в точке А. В показанном на фиг. 7 примере зона просмотра является сферой и можно продемонстрировать, что максимальное значение φ(z) достигается на точках на передней границе ограничивающей сферы. Это свойство важно в случае точки зрения в ограниченной зоне (т.е. рендеринга 3DoF+) для проектирования специального закона (т.е. функции) глубины квантования, который предотвращает наблюдение пользователем визуальных дефектов в пределах зоны просмотра. Если мы назовем φmax(z) максимальное значение φ(z) по зоне просмотра, то закон квантования должен гарантировать, что ассоциированная ошибка квантования обеспечивает φmax(z)=γ, где γ является заранее определенным углом для ожидаемой надежности функции квантования по уровню ошибки сжатия, например, введенной ранее в этом документе остроте зрения человека. Соблюдение такого принципа гарантирует, что ни одна ошибка квантования вследствие процесса сжатия и распаковки не будет восприниматься из зоны просмотра, поскольку ассоциированный угол ошибки остается ниже порога восприятия. Получающийся закон квантования зависит только от заранее определенного угла γ и от координат второй точки, например, размещенной в зоне просмотра. Согласно варианту вместо координат второй точки функция квантования может зависеть от расстояния от первой точки. Это эквивалентно определению функции квантования согласно любой точке на сфере с центром в первой точке, например, точки 79 на фиг. 7.
Такой закон квантования нельзя аналитически представить в оптимальном положении (где φ(z)=φmax(z)), но таблицу дискретного квантования можно получить численными методами. Например, хорошее приближение для функции квантования, которое гарантирует, что угол ошибки в точке 79 будет меньше заранее определенного угла γ для значения ошибки 1 (т.е. распакованное значение исходного значения v равно v+1 или v-1), может быть получено для точки 79 на расстоянии R от центра проецирования 73 по формуле 3.
Где K является константой, которая настроена так, что qP(z)=0 для максимального заранее определенного значения глубины. Определение функции квантования, соблюдающей эти критерии, зависит от контекста. Нахождение хорошего кандидата для второй точки зависит от формы и размера зоны просмотра. Выбранная функция не всегда аналитически разрешается, как в показанном на фиг. 7 примере. Другими словами, параметризуемая функция должна быть известна кодировщику и декодеру, и выбранные в кодировщике параметры должны быть закодированы в метаданных, ассоциированных с 3D сценой в отформатированном потоке, чтобы их можно было извлечь на стороне декодирования. Согласно другому варианту осуществления таблица поиска (LUT), описывающая функцию обратного квантования, составляется кодировщиком и кодируется в метаданных, ассоциированных с изображениями, представляющими 3D сцену. Таблица поиска является информацией, ассоциирующей каждое значение в интервале квантованных значений с действительным значением расстояния. Этот вариант осуществления обладает преимуществом, поскольку функция обратного квантования не должна быть заранее известна декодеру. Декодер извлекает таблицу LUT из потока и восстанавливает действительную глубину из квантованной глубины с помощью этой LUT. Так как функция квантования была определена, чтобы обеспечить угол ошибки во второй точке (как определено выше) меньшим заранее определенного угла для значения ошибки е, функция обратного квантования, закодированная в виде таблицы LUT, также соблюдает те же самые критерии.
В контексте кодирования и декодирования 3D сцены или последовательности 3D сцен для сценария рендеринга 3DoF+, принципы настоящего изобретения имеют преимущество, обеспечивая величину воспринимаемой ошибки квантования меньше заранее определенного уровня, например, меньше остроты зрения человека для любой точки зрения внутри зоны просмотра сценария.
На фиг. 8 показан способ кодирования данных, описывающих глубину точек 3D сцены, согласно не имеющему ограничительного характера варианту осуществления принципов настоящего изобретения. На стадии 81 данные глубины получаются из источника и квантуются при использовании функции квантования, определенной согласно второй точке, данному углу и значению ошибки таким образом, что разница в значении вышеуказанной ошибки между двумя квантованными значениями приводит к углу ошибки во второй точки меньшему, чем данный угол. Данные глубины квантуются и хранятся в пикселях изображения, которое сжимается с помощью кодека изображения или видео. На стадии 82 сжатое изображения кодируется в поток данных совместно с метаданными, описывающими функцию обратного квантования. Согласно варианту осуществления функция обратного квантования является параметризованной функцией, известной как кодировщику, так и декодировщику. Согласно этому варианту осуществления метаданные содержат угол и/или значение ошибки и/или координаты второй точки или расстояние между первой и второй точками. Эти метаданные являются не обязательными, если они были заранее определены и заранее известны декодеру.
Согласно другому варианту осуществления таблица поиска, ассоциирующая каждое возможное квантованное значение с расстоянием, определенным с помощью функции квантования, создается и кодируется в потоке данных совместно со сжатым изображением.
На фиг. 9 показан способ декодирования данных, описывающих расстояние между точками 3D сцены и первой точкой внутри 3D сцены. На стадии 91 поток данных с закодированными данными, описывающими геометрию 3D сцены, получается из потока. Из потока данных извлекаются сжатое изображение и метаданные, описывающие функцию обратного квантования. Изображение распаковывается. На стадии 92 действительные значения информации глубины, содержащиеся в пикселях распакованного изображение, извлекаются с помощью обработки квантованных значений функцией обратного квантования. Точки 3D сцены депроецируются, то есть устанавливаются на деквантованном расстоянии от первой точки в направлении, определенном согласно координатам пикселя изображения, и операция проецирования используется для создания изображения. Согласно варианту осуществления функция обратного квантования является параметризованной функцией, известной как кодировщику, так и декодировщику. Метаданные содержат параметры, необходимые для инициализации функции: угол и/или значение ошибки и/или координаты второй точки или расстояние между первой и второй точками. Эти метаданные являются не обязательными, если они были заранее определены и заранее известны декодеру. Согласно другому варианту осуществления функции обратного квантования закодирована в таблице поиска в метаданных. Действительные значения расстояния извлекаются непосредственно из этой таблицы поиска согласно квантованным значениям, хранящимся в пикселях.
Описанные в настоящем документе варианты реализации можно реализовать, например, как способ или процесс, как аппаратуру, программный продукт для компьютера, поток данных или сигнал. Даже если обсуждение ведется только в контексте единственной формы реализации (например, обсуждается только как способ или как устройство), реализация обсуждаемых функций также может быть выполнена в различных формах (например, как программа). Аппаратуру можно реализовать, например, в виде соответствующих аппаратных средств, программного обеспечения, и встроенного программного обеспечения. Способы можно реализовать, например, в виде аппаратуры, в частности, например, процессора, который означает в общем случае обрабатывающие устройства, включая, например, компьютер, микропроцессор, интегральную схему или программируемое логическое устройство. Процессоры также включают в себя устройства связи, в частности, например, смартфоны, планшеты, компьютеры, мобильные телефоны, портативные/персональные цифровые помощники (PDA или карманный персональный компьютер (КПК)) и другие устройства, которые упрощают передачу информации между конечными пользователями.
Варианты реализации различных процессов и функций, описанных в настоящем документе, могут быть воплощены во множестве различного оборудования или прикладных программ, в частности, например, оборудования или прикладных программ, ассоциированных с кодированием данных, декодированием данных, созданием представлений, обработкой текстуры и другой обработки изображений и соответствующей информации текстуры и/или информации глубины. Примеры такого оборудования включают в себя кодировщик, декодер, постпроцессор, обрабатывающей выход с декодера, препроцессор, создающий входной сигнал для кодировщика, видеокодек, веб-сервер, телевизионную приставку, ноутбук, персональный компьютер, сотовый телефон, КПК и другие устройства связи. Как должно быть понятно, оборудование может быть мобильным и даже установленным в подвижном транспортном средстве.
Дополнительно, способы могут быть реализованы с помощью инструкций, выполняемых процессором, и такие инструкции (и/или данные, созданные с помощью варианта реализации) могут храниться на носителе данных для процессора, например, в интегральной схеме, в носителе программного обеспечения или в другом запоминающем устройстве, в частности, например, на жестком магнитном диске, компакт-диске («CD»), оптическом диске (в частности, например, DVD, часто называемым цифровым универсальным диском или цифровым видеодиском), в оперативном запоминающем устройстве («ОЗУ») или в постоянном запоминающим устройстве («ПЗУ»). Инструкции могут образовать прикладную программу, в явном виде записанную на носителе данных для процессора. Инструкции могут, например, содержатся в аппаратном обеспечении, встроенном программном обеспечении, программном обеспечении или в их комбинации. Инструкции могут находиться, например, в операционной системе, в отдельной прикладной программе, или в их комбинации. Процессор может быть описан, следовательно, в виде, например, как устройства, выполненного с возможностью выполнять процесс, так и устройства, которое содержит носитель данных для процессора (в частности, запоминающее устройство) с хранящимися инструкциями для выполнения процесса. Более того, носитель данных для процессора может хранить, в дополнение к инструкциям или вместо них, значения данных, созданные с помощью варианта реализации.
Как будет очевидно специалисту в этой области техники, в реализациях может создаваться множество сигналов, отформатированных для пересылки информации, которую можно, например, сохранить или передать. Информация может включать в себя, например, инструкции для осуществления способа, или данные, созданные согласно одному из описанных вариантов реализации. Например, сигнал может быть отформатирован для пересылки в качестве данных правил для записи или чтения синтаксиса описанного варианта реализации, или для пересылки в качестве данных фактических значений синтаксиса, записанных с помощью описанного варианта осуществления. Такой сигнал может быть отформатирован, например, как электромагнитная волна (например, используя радиочастотную часть спектра) или как сигнал базовых частот. Форматирование может включать в себя, например, кодирование потока данных и модулирование несущей с помощью закодированного потока данных. Информация, которую переносит сигнал, может быть, например, аналоговой или цифровой информацией. Сигнал, как это известно, можно передавать по ряду различных проводных и беспроводных каналов. Сигнал можно сохранить на носителе данных для процессора.
Был описан ряд вариантов реализации. Тем не менее, следует понимать, что можно выполнить различные модификации. Например, элементы различных вариантов реализации можно объединять, дополнять ими друг друга, модифицировать или удалять для создания других вариантов реализации. Дополнительно, специалисту обычной квалификации будет понятно, что другие структуры и процессы можно подставлять вместо раскрытых, и что получающиеся варианты реализации будут выполнять, по меньшей мере, существенно те же самые функции, и, по меньшей мере, существенно тем же самым образом, чтобы достичь, по меньшей мере, существенно тех же самых результатов, как у раскрытых вариантов реализации. Соответственно эти и другие варианты реализации предложены в этой заявке.
Изобретение относится к средствам для кодирования объемного видеоконтента. Технический результат заключается в повышении эффективности кодирования объемного видеоконтента. Квантуют значение, описывающее расстояние между первой и второй точками посредством использования функции квантования, определенной третьей точкой, данным углом и значением ошибки. Причем вышеуказанная функция квантования определяется таким образом, что сумма деквантованного вышеуказанного квантованного значения и вышеуказанного значения ошибки создает четвертую точку таким образом, что угол, образованный четвертой, третьей, второй точками, не превышает вышеуказанного данного угла. Кодируют в поток данных вышеуказанное квантованное значение, совместно с метаданными, описывающими вышеуказанную функцию квантования. 4 н. и 8 з.п. ф-лы, 9 ил.
1. Способ кодирования, предусматривающий стадии:
квантования значения, описывающего расстояние между первой и второй точками посредством использования функции квантования, определенной третьей точкой (77, 79), данным углом и значением ошибки; причем вышеуказанная функция квантования определяется таким образом, что сумма деквантованного вышеуказанного квантованного значения и вышеуказанного значения ошибки создает четвертую точку таким образом, что угол, образованный четвертой, третьей, второй точками, не превышает вышеуказанного данного угла; и
кодирования в поток данных (4) вышеуказанного квантованного значения (42), совместно с метаданными (43), описывающими вышеуказанную функцию квантования.
2. Способ по п. 1, в котором вышеуказанные метаданные содержат вышеуказанный данный угол и координаты вышеуказанной третьей точки или расстояние между первой точкой и третьей точкой.
3. Способ по п. 1, в котором вышеуказанные метаданные содержат таблицу поиска, описывающую функцию, обратную к вышеуказанной функции квантования.
4. Устройство (30) кодирования, содержащее процессор (32), выполненный с возможностями для:
квантования значения, описывающего расстояние между первой и второй точками посредством использования функции квантования, определенной третьей точкой (77, 79), данным углом и значением ошибки; причем вышеуказанная функция квантования определяется таким образом, что сумма деквантованного вышеуказанного квантованного значения и вышеуказанного значения ошибки создает четвертую точку таким образом, что угол, образованный четвертой, третьей, второй точками, не превышает вышеуказанного данного угла; и
кодирования в поток данных (4) вышеуказанного квантованного значения (42), совместно с метаданными (43), описывающими вышеуказанную функцию квантования.
5. Устройство по п. 4, в котором вышеуказанные метаданные содержат вышеуказанный данный угол и координаты вышеуказанной третьей точки или расстояние между первой точкой и третьей точкой.
6. Устройство по п. 4, в котором вышеуказанные метаданные содержат таблицу поиска, описывающую функцию, обратную к вышеуказанной функции квантования.
7. Способ декодирования, предусматривающий стадии:
декодирования из потока данных (4) квантованного значения (42) и ассоциированных метаданных (43), описывающих функцию квантования, вышеуказанная функция квантования определяется третьей точкой (77, 79), данным углом и значением ошибки; причем вышеуказанная функция квантования определяется таким образом, что сумма деквантованного вышеуказанного квантованного значения и вышеуказанного значения ошибки создает четвертую точку таким образом, что угол, образованный четвертой, третьей, второй точками, не превышает вышеуказанного данного угла; и
деквантования вышеуказанного квантованного значения согласно функции, обратной к вышеуказанной функции квантования.
8. Способ по п. 7, в котором вышеуказанные метаданные содержат вышеуказанный данный угол и координаты вышеуказанной третьей точки или расстояние между первой точкой и третьей точкой.
9. Способ по п. 7, в котором вышеуказанные метаданные содержат таблицу поиска, описывающую функцию, обратную к вышеуказанной функции квантования.
10. Устройство декодирования, содержащее процессор, выполненный с возможностями для:
декодирования из потока данных (4) квантованного значения (42) и ассоциированных метаданных (43), описывающих функцию квантования, вышеуказанная функция квантования определяется третьей точкой (77, 79), данным углом и значением ошибки, причем вышеуказанная функция квантования определяется таким образом, что сумма деквантованного вышеуказанного квантованного значения и вышеуказанного значения ошибки создает четвертую точку таким образом, что угол, образованный четвертой, третьей, второй точками, не превышает вышеуказанного данного угла; и
деквантования вышеуказанного квантованного значения согласно функции, обратной к вышеуказанной функции квантования.
11. Устройство по п. 10, в котором вышеуказанные метаданные содержат вышеуказанный данный угол и координаты вышеуказанной третьей точки или расстояние между первой точкой и третьей точкой.
12. Устройство по п. 10, в котором вышеуказанные метаданные содержат таблицу поиска, описывающую функцию, обратную к вышеуказанной функции квантования.
Способ получения цианистых соединений | 1924 |
|
SU2018A1 |
CN 104820981 B, 31.10.2017 | |||
EP 1591963 A1, 02.11.2005 | |||
EP 3432581 A1, 23.01.2019 | |||
СПОСОБ УПРАВЛЕНИЯ КОДИРОВАНИЕМ ВИДЕО, УСТРОЙСТВО КОДИРОВАНИЯ ВИДЕО И ПРОГРАММА КОДИРОВАНИЯ ВИДЕО | 2011 |
|
RU2527740C2 |
Авторы
Даты
2023-12-07—Публикация
2020-03-17—Подача