Область техники
Изобретение относится к области кодирования и декодирования видео. Согласно настоящему изобретению представлены способ, система и кодер для кодирования сигнала трехмерного видео. Настоящее изобретение также относится к способу, системе и декодеру для декодирования сигнала трехмерного видео. Кроме того, настоящее изобретение относится к кодированному сигналу трехмерного видео.
Уровень техники
В последнее время растет интерес к области предоставления трехмерных изображений на трехмерных дисплеях. Предполагается, что технология формирования трехмерных изображений будет следующей по значимости инновацией в области формирования изображений после изобретения способа формирования цветных изображений. В ближайшее время ожидается вывод трехмерных дисплеев на рынок потребительских товаров.
Устройство трехмерного отображения, как правило, представляет собой экран, на котором отображаются изображения.
По существу, ощущение трехмерности может быть создано путем использования стереопар, то есть двух слегка отличающихся друг от друга изображений, направленных на два глаза наблюдателя.
Существует ряд способов произведения стереоизображений. Изображения могут быть мультиплексированы по времени на двумерном дисплее, но для этого требуется, чтобы наблюдатели носили очки с, например, LCD-затворами. Когда стереоизображения отображаются одновременно, изображения могут быть направлены на соответствующий глаз посредством головного дисплея, посредством поляризованных очков (в последнем случае изображения генерируются посредством ортогонально поляризованного света) путем использования очков с затворами. Очки наблюдающего эффективно направляют соответствующие правый и левый виды на соответствующие глаза. Затворы или поляризаторы в очках синхронизируются с частотой смены кадров, чтобы управлять трассировкой. Для предотвращения мерцания частота смены кадров должна быть вдвое больше либо разрешение должно быть вдвое меньше относительно двумерного эквивалентного изображения. Недостатком подобной системы является необходимость применения очков для создания стереоэффекта. Это вызывает неудобства для наблюдателей, которые не носят очки в повседневной жизни, и может вызвать потенциальную проблему для тех наблюдателей, которые уже носят очки, поскольку может быть невозможным одновременное применение двух пар очков.
Вместо разделения изображения вблизи глаз наблюдателя изображения также могут быть разделены на дисплее посредством разделительного экрана, такого как линзово-растровый экран, например, раскрытый в документе US 6118584, или параллактический барьер, например, раскрытый в документе US 5969850. Подобные устройства называются автостереоскопическими дисплеями, поскольку они обеспечивают (авто)стереоскопический эффект без применения очков. Известно несколько разных типов автостереоскопических устройств.
Независимо от типа используемого дисплея в устройство отображения должна быть введена информация трехмерного изображения. Обычно это выполняется в форме видеосигнала, содержащего цифровые данные.
Из-за огромных объемов данных, свойственных цифровым изображениям, обработка и/или передача сигналов цифрового изображения представляет существенные проблемы. Во многих случаях доступной вычислительной мощности и/или пропускной способности бывает недостаточно для обработки и/или передачи сигналов высококачественного видео. Более конкретно, каждый кадр цифрового изображения являет собой неподвижное изображение, формируемое из матрицы пикселей.
Исходные (необработанные) цифровые данные обычно имеют огромные объемы, что требует большой вычислительной мощности и/или высоких скоростей передачи, которые не всегда доступны. Для уменьшения объема передаваемых данных были предложены различные способы сжатия, такие как, например, MPEG-2, MPEG-4 и H.264.
Эти способы сжатия изначально были определены для стандартного двумерного видео/последовательностей изображений.
Когда содержимое отображается на автостереоскопическом трехмерном дисплее, должны быть сформированы множество видов, которые должны быть переданы в разных направлениях. Наблюдатель получает разные изображения на разных глазах, и эти изображения формируются так, что наблюдатель ощущает глубину. Разные виды представляют разные углы наблюдения. Тем не менее, на входных данных обычно виден только один угол наблюдения. Следовательно, в формируемых видах будет недоставать информации в областях позади, например, объектов переднего плана или информации о стороне объектов. Существуют различные способы для решения этой проблемы. Один из способов заключается в добавлении дополнительных точек наблюдения с разных углов (включая соответствующую информацию глубины), с которых могут быть сформированы промежуточные виды. Тем не менее, это существенно увеличивает объем данных. Кроме того, в сложных картинах требуется более чем один дополнительный угол наблюдения, что также увеличивает объем данных. Еще одно решение заключается в добавлении в изображение данных в форме данных загораживания, представляющих часть трехмерного изображения, которая скрыта за объектами переднего плана. Эта информация заднего плана сохраняется либо с того же угла наблюдения, либо также с бокового угла наблюдения. Все эти способы требуют дополнительной информации, причем слоистая структура для этой информации является наиболее эффективной.
Может существовать множество разных дополнительных слоев дополнительной информации, если в трехмерном изображении множество объектов расположены друг за другом. Количество дополнительных слоев может существенно увеличиться, в результате чего объем генерируемых данных достигает громадных размеров. Дополнительные слои данных могут быть разных типов, причем все эти типы входят в объем настоящего изобретения и обозначаются как дополнительные слои. В простой компоновке все объекты являются непрозрачными. Объекты заднего плана могут быть скрыты за объектами переднего плана, и для реконструкции трехмерного изображения могут потребоваться различные слои данных заднего плана. Для предоставления всей информации должны быть известны различные слои, из которых формируется трехмерное изображение. Предпочтительно, с каждым слоем заднего плана также ассоциирован слой глубины. В результате создается еще один тип дополнительных слоев данных. Еще сложнее ситуация, где один или более из объектов являются прозрачными. Для реконструкции трехмерного изображения требуются данные цвета, данные глубины, а также данные прозрачности для различных слоев, из которых формируется трехмерное изображение. Это обеспечивает возможность реконструкции трехмерных изображений, в которых некоторые или все объекты являются прозрачными. Задача еще более усложняется, когда различным объектам назначаются данные прозрачности, которые, опционально, также зависят от угла. Для некоторых объектов прозрачность зависит от угла, под которым наблюдатель смотрит через объект, поскольку под прямым углом прозрачность объекта обычно больше, чем под косым углом. Один из способов предоставления таких дополнительных данных заключается в предоставлении данных толщины. В результате добавляются дополнительные слои дополнительных данных. В очень сложном варианте осуществления прозрачные объекты могут иметь эффект фокусировки и каждому объекту также присваиваются данные эффекта фокусировки. Эффект отражения, например эффект зеркального отражения, формирует еще один набор данных.
Другие дополнительные слои данных могут представлять собой данные с боковых видов.
Если кто-то стоит перед объектом, таким как шкаф, боковая стенка этого объекта будет невидима. Даже если добавить данные объектов, расположенных позади шкафа, в различных слоях, эти слои данных все равно не обеспечат возможность реконструкции изображения на боковой стенке. Путем добавления данных бокового вида, предпочтительно с разных точек бокового наблюдения (слева и справа относительно главного вида), может быть реализована возможность реконструкции также и изображений боковой стенки. Информация бокового вида сама по себе может содержать несколько слоев информации с такими данными, как цвет, глубина, прозрачность, толщина относительно прозрачности и т.п. В результате добавляются дополнительные слои данных. В представлении с множеством видов количество слоев может возрасти очень быстро.
При добавлении новых эффектов или видов для предоставления более реалистического трехмерного вида требуются дополнительные слои данных как с позиции количества слоев объектов, так и с позиции разных типов данных, которые назначаются каждому слою объектов.
Как упомянуто выше, разные типы данных могут быть упорядочены по слоям, где относительно простые данные, такие как данные цвета и данные глубины, формируются в одном слое, а более сложные типы, такие как данные прозрачности, толщины, (зеркального) отражения, формируются в другом слое.
Таким образом, целью настоящего изобретения является предоставление способа кодирования данных трехмерного изображения, в котором объем генерируемых данных сокращается без или только с небольшой потерей данных. Предпочтительно эффективность кодирования имеет высокое значение. Кроме того, предпочтительно упомянутый способ совместим с существующими стандартами кодирования.
Еще одной целью настоящего изобретения является предоставление усовершенствованного кодера для кодирования сигнала трехмерного видео, декодера для декодирования сигнала трехмерного видео, а также предоставление сигнала трехмерного видео.
Раскрытие изобретения
Для этой цели способ кодирования согласно настоящему изобретению отличается тем, что он содержит этапы, на которых кодируют входной сигнал трехмерного видео, причем входной сигнал трехмерного видео содержит главный слой данных видео, карту глубины для главного слоя данных видео и дополнительные слои данных для главного слоя данных видео, причем сегменты данных, входящие в разные слои данных из числа главного слоя данных видео, карты глубины для главного слоя видео и дополнительных слоев данных, перемещаются в один или более общих слоев данных, при этом генерируется дополнительный поток данных, содержащий дополнительные данные, задающие исходную позицию и/или исходный дополнительный слой для каждого перемещенного сегмента данных.
Главный слой данных видео представляет собой слой данных, который принимается в качестве базового. Часто этот слой представляет собой вид, который отображался бы на двумерном дисплее. Часто этот вид представляет собой центральный вид, содержащий объекты центрального вида. Тем не менее, в рамках настоящего изобретения выбор кадра главного вида не ограничивается этим. Например, в некоторых вариантах осуществления центральный вид может состоять из нескольких слоев объектов, причем наиболее релевантная информация переносится не слоем, содержащим те объекты, большинство из которых располагаются на переднем плане, а следующим слоем объектов, например слоем объектов, которые находятся в фокусе, когда некоторые объекты переднего плана не в фокусе. Например, это может иметь место в случае, если маленький объект переднего плана перемещается между точкой наблюдения и наиболее интересными объектами.
В рамках настоящего изобретения дополнительные слои для главного слоя данных видео представляют собой слои, которые используются в сочетании с главным слоем данных видео при реконструкции трехмерного видео. Эти слои могут представлять собой слои заднего плана, если главный слой данных видео отображает объекты переднего плана, или они могут представлять собой слои переднего плана, если главный слой данных видео отображает объекты заднего плана, или как слои переднего плана, так и слои заднего плана, если главный слой данных видео содержит данные об объектах между объектами переднего плана и объектами заднего плана.
Эти дополнительные слои могут содержать слои заднего плана/переднего плана для главного слоя данных видео, для одной и той же точки наблюдения или содержать слои данных для боковых видов, которые должны использоваться в сочетании с главным слоем данных видео.
Различные данные, которые могут быть предоставлены в дополнительных слоях, включают в себя:
- данные цвета,
- данные глубины,
- данные прозрачности,
- данные отражающей способности,
- данные масштаба.
В предпочтительных вариантах осуществления настоящего изобретения дополнительные слои содержат данные изображения и/или глубины и/или дополнительные данные с той же точки наблюдения, что и вид для главного слоя данных видео.
Варианты осуществления в рамках настоящего изобретения также содержат данные видео с других точек наблюдения, такие как содержимое видео с множеством видов. В последнем случае слои/виды могут комбинироваться, поскольку большие части боковых видов могут быть реконструированы из центрального изображения и глубины, так что такие части боковых видов могут быть использованы для сохранения другой информации, такой как части из дополнительных слоев.
Дополнительный поток данных генерируется для сегментов, перемещаемых из дополнительного слоя в главный слой. Дополнительные данные в упомянутом дополнительном потоке данных задают исходную позицию и/или исходный дополнительный слой для сегмента. Этот дополнительный поток обеспечивает возможность реконструкции исходных слоев на стороне декодера.
В некоторых случаях перемещаемые сегменты сохранят свою позицию x-y и будут перемещены только в направлении общего слоя. В этих обстоятельствах будет достаточно, если дополнительный поток данных будет содержать данные для сегмента, задающие дополнительный слой источника.
В рамках настоящего изобретения общий слой может иметь сегменты главного слоя данных и сегменты дополнительных слоев данных. Примером является ситуация, где главный слой данных содержит большие куски неба. Такие части слоя часто могут быть представлены посредством параметров, описывающих размеры синей части и цвет (и, например, изменение цвета). Это создаст пространство на главном слое, в которое могут быть перемещены данные из дополнительных слоев. Это может дать возможность сокращения количества общих слоев.
С точки зрения обратной совместимости предпочтительными являются те варианты осуществления, в которых общие слои содержат только сегменты дополнительных слоев.
Отсутствие изменений главного слоя и, предпочтительно, отсутствие изменений карты глубины для главного слоя обеспечивают возможность простой реализации способа на существующих устройствах.
В рамках настоящего изобретения сегменты могут принять любую форму, но в предпочтительных вариантах осуществления данные обрабатываются на уровне гранулярности, соответствующем уровню гранулярности схемы кодирования видео, таком как, например, уровень макроблока.
Сегменты или блоки из разных дополнительных слоев могут иметь идентичные позиции x-y в исходных дополнительных слоях, например в разных слоях загораживания. В таких вариантах осуществления позиция x-y, по меньшей мере, некоторых сегментов в общем слое переупорядочивается и, по меньшей мере, некоторые блоки передислоцируются, то есть их позиция x-y смещается на еще пустую часть общего слоя данных. В таких вариантах осуществления дополнительный поток данных предоставляет для сегмента не только данные, указывающие исходный слой, то также данные, указывающие передислокацию. Данные передислокации могут быть представлены, например, в форме задания исходной позиции в исходном слое или в форме смещения относительно текущей позиции. В некоторых вариантах осуществления это смещение может быть одинаковым для всех элементов дополнительного слоя.
Перемещение в общий слой, включая возможную передислокацию, предпочтительно выполняется в той же позиции во времени, в которой выполняется передислокация в плоскости x-y. Тем не менее, в вариантах осуществления перемещение или передислокация также может выполняться вдоль временной оси. Если в сцене некоторое количество деревьев располагаются на одной линии и камера формирует панорамный кадр, так что в один момент эти деревья располагаются на одной линии, то возникает короткий интервал с большим объемом данных загораживания (по меньшей мере, несколькими слоями). В вариантах осуществления некоторые из этих макроблоков могут быть перемещены в общие слои предыдущего/следующего кадров. В таких вариантах осуществления дополнительный поток данных, связанный с перемещаемым сегментом, задает исходный дополнительный слой данных и включает в себя индикацию времени.
Перемещенные сегменты могут представлять собой обширные области, однако передислокация, предпочтительно, применяется к одному или более макроблокам. Предпочтительно будет закодирован дополнительный поток данных, содержащий информацию для каждого блока из общего слоя, включая их позицию в исходном дополнительном слое. Дополнительный поток также может содержать дополнительную информацию, которая, сверх того, задает экстра информацию относительно блоков или относительно слоя, в который входят эти блоки. В вариантах осуществления настоящего изобретения информация об исходном слое может быть явной, например, она может задавать сам слой. Тем не менее, в некоторых вариантах осуществления эта информация также может быть неявной.
Во всех случаях дополнительные потоки будут относительно небольшими из-за того, что один элемент данных описывает все 16×16 пикселей в макроблоке или даже больше пикселей в сегменте, причем это реализуется эксклюзивно и одновременно. Сумма эффективных данных увеличилась немного, однако количество дополнительных слоев существенно сократилось, что сокращает общий объем данных.
Общие слои, а также дополнительный поток или дополнительные потоки могут быть переданы, например, через ограниченный по полосе пропускания интерфейс монитора и переупорядочены обратно в исходную многослойную форму в самом мониторе (то есть, посредством внутреннего программного обеспечения монитора), после чего эти слои могут быть использованы для формирования трехмерного изображения. Настоящее изобретение позволяет передавать через интерфейс большее количество слоев при меньшей полосе пропускания. То есть сейчас ограничение ставится на объем данных дополнительного слоя, а не на количество слоев. Кроме того, этот поток данных может быть эффективно размещен в фиксированной форме данных типа изображения, так что обеспечивается совместимость с существующими интерфейсами дисплея.
В предпочтительных вариантах осуществления общие слои содержат сегмент данных одного и того же типа.
Как описано выше, дополнительные слои могут содержать данные разных типов, такие как цвет, глубина, прозрачность и т.п.
В рамках настоящего изобретения в некоторых вариантах осуществления данные разных типов комбинируются в общий слой. Так, общие слои могут содержать сегменты, содержащие, например, данные цвета, и/или сегменты, содержащие данные глубины и/или данные прозрачности. Дополнительный поток данных обеспечит возможность освобождения сегментов и реконструкции разных дополнительных слоев. Такие варианты осуществления предпочтительны в ситуациях, где количество слоев должно быть сокращено как можно больше.
В предпочтительных вариантах осуществления общие слои содержат сегмент данных одного и того же типа. Хотя это увеличит количество общих слоев, которые должны быть переданы, эти варианты осуществления обеспечивают возможность реализации менее сложного анализа на стороне реконструкции, поскольку каждый общий слой содержит данные только одного типа. В других вариантах осуществления общие слои содержат сегменты с данными ограниченного количества типов. Наиболее предпочтительной комбинацией является комбинация данных цвета и данных глубины, где другие типы данных размещаются в отдельных общих слоях.
В различных вариантах осуществления настоящего изобретения перемещение сегмента из дополнительного слоя данных в общий слой данных может быть выполнено на разных фазах либо в течение создания содержимого, где эти данные переупорядочиваются на уровне макроблока (макроблоки особо оптимальны для кодеров двухмерного видео), далее кодируются до кодера видео, или на стороне плеера, где множество слоев декодируются, и далее в реальном масштабе времени переупорядочиваются на уровне макроблока или более крупного сегмента. В первом случае сгенерированные координаты переупорядочивания также должны быть кодированы в поток видео. Недостатком может быть то, что это переупорядочивание может оказать отрицательное воздействие на эффективность кодирования видео. Во втором случае недостаток заключается в том, что отсутствует полное управление процессом переупорядочивания. Это особо выражается, когда присутствует слишком много макроблоков для объема возможных общих слоев на выходе, и макроблоки могут быть отброшены. Создатель содержимого, наверняка, пожелает управлять тем, что будет отброшено, а что нет. Также возможна комбинация этих двух вариантов. Например, кодирование всех слоев в исходном виде и дополнительное сохранение координат смещения, которые впоследствии могут быть использованы плеером для фактического смещения макроблоков в течение воспроизведения. Последняя опция позволит управлять тем, что может быть отображено, и также обеспечивает возможность обычного кодирования.
В дополнительных вариантах осуществления объем данных для стандартного изображения RGB+D, дополнительно, сокращается путем использования сокращенных цветовых пространств, в результате чего обеспечивается большая полоса пропускания, так что в страницах изображения может быть сохранено еще большее количество макроблоков. Например, это может быть реализовано путем кодирования RGBD-пространства в YUVD-пространство, где U и V подвергаются субдискретизации, что обычно для случая кодирования видео. Применение этого подхода на интерфейсе дисплея может создать больше места для информации. Также может быть отброшена обратная совместимость, так что канал глубины второго слоя может использоваться для настоящего изобретения. Еще один способ для создания больше пустого пространства заключается в использовании карты глубины с меньшим разрешением, так чтобы было место вне дополнительной информации глубины для хранения, например, изображения и блоков глубины с 3-го слоя. Во всех перечисленных случаях дополнительная информация на уровне макроблока или уровне сегмента может быть использована для кодирования масштаба сегментов или макроблоков.
Настоящее изобретение также реализовано в системе, содержащей кодер, и в кодере для кодирования сигнала трехмерного видео, причем кодированный сигнал трехмерного видео содержит главный слой данных видео, карту глубины для главного слоя данных видео и дополнительные слои данных для главного слоя данных видео, причем кодер содержит входы для дополнительных слоев, кодер содержит формирователь, который комбинирует сегменты данных из более чем одного дополнительного слоя в один или более общих слоев данных путем перемещения сегментов данных разных дополнительных слоев данных в общий слой данных и путем генерации дополнительного потока данных, который содержит идентификацию источника перемещаемых сегментов данных.
В предпочтительном варианте осуществления блоки передислоцируются только горизонтально, так что вместо полноразмерного и быстрого буфера кадров в декодере требуется только небольшая память размером приблизительно 16 строк. Если требуемый объем памяти небольшой, то может использоваться встроенная память. Эта память обычно является гораздо более быстродействующей, но в меньшей степени, чем отдельные чипы памяти. Предпочтительно также генерируются данные, задающие исходный слой загораживания. Тем не менее, эти данные также могут быть выведены из других данных, таких как данные глубины.
Было выявлено, что дополнительное уменьшение количества битов может быть достигнуто путем уменьшения объема дополнительных данных по способу, который отличается от способа уменьшения объема данных для главного слоя. Уменьшение объема данных в данных загораживания и, в особенности, для более глубоких слоев имеет только ограниченный эффект на качество, между тем сокращается количество битов в кодированном сигнале трехмерного видео.
Настоящее изобретение реализовано в способе для кодирования, но оно в равной степени реализовано в соответствующем кодере, имеющем средство для выполнения различных этапов упомянутого способа. Такое средство может быть предоставлено в аппаратном обеспечении, или программном обеспечении, или комбинации аппаратного обеспечения и программного обеспечения или условно-бесплатном программном обеспечении.
Настоящее изобретение также реализовано в сигнале, произведенном посредством данного способа кодирования, и в любом способе декодирования и декодере, используемых для декодирования подобных сигналов.
В частности, настоящее изобретения также реализовано в способе для декодирования кодированного сигнала видео, в котором декодируют сигнал трехмерного видео, который содержит кодированный главный слой данных видео, карту глубины для главного слоя данных видео и один или более общих слоев данных, содержащих сегменты из разных исходных дополнительных слоев данных, и дополнительный поток данных, содержащий дополнительные данные, задающие источник сегментов в общих слоях данных, причем эти исходные дополнительные слои реконструируются на основе общего слоя данных и дополнительного потока данных и генерируют трехмерное изображение.
Настоящее изобретение также реализовано в системе, содержащей декодер для декодирования кодированного сигнала видео, в котором сигнал трехмерного видео декодируется, причем этот сигнал трехмерного видео содержит кодированный главный слой данных видео, карту глубины для главного слоя данных видео и один или более общих слоев данных, содержащих сегменты из разных исходных дополнительных слоев данных, и дополнительный поток данных, содержащий дополнительные данные, задающие источник сегментов в общих слоях данных, причем декодер содержит считыватель для считывания главного слоя данных видео, одного или более слоев данных и дополнительного потока данных, и блок реконструкции для реконструкции исходных дополнительных слоев на основе общего слоя данных и дополнительного потока данных.
Настоящее изобретение также реализовано в декодере для такой системы.
В рамках настоящего изобретения источником сегментов данных является слой данных, из которого исходят эти сегменты данных, и позиция в этом слое данных. Источник также может указывать тип слоя данных, а также временной слот, в случае если сегменты данных перемещаются в общие слои в другом временном слоте.
Эти и другие аспекты настоящего изобретения более подробно описаны ниже со ссылкой на сопутствующие чертежи.
Краткое описание чертежей
Фиг.1 - иллюстрация примера устройства автостереоскопического отображения;
Фиг.2 и 3 - иллюстрации проблемы загораживания;
Фиг.4 - левый и правый виды сцены, сгенерированной компьютером;
Фиг.5 - иллюстрация представления с Фиг.4 в четырех картах данных: главный вид, карта глубины для главного вида и двух дополнительных слоев, данные загораживания и данные глубины для данных загораживания;
Фиг.6-9 - иллюстрации основного принципа настоящего изобретения;
Фиг.10 - иллюстрация еще одного варианта осуществления настоящего изобретения;
Фиг.11 - иллюстрация еще одного варианта осуществления настоящего изобретения;
Фиг.12 - схема последовательности операций для одного варианта осуществления настоящего изобретения;
Фиг.13 и 14 - иллюстрация кодера и декодера согласно настоящему изобретению;
Фиг.15 - иллюстрация одного аспекта настоящего изобретения;
Фиг.16 - иллюстрация одного варианта осуществления настоящего изобретения, в котором сегменты данных главного слоя перемещаются в общий слой.
Перечисленные чертежи представлены не в масштабе. Как правило, на чертежах идентичные компоненты обозначены одинаковыми ссылочными позициями.
Осуществление изобретения
Фиг.1 представляет собой иллюстрацию примера автостереоскопического устройства отображения. Данное устройство отображения содержит линзово-растровый экран 3 для формирования двух стереоизображений 5 и 6. Вертикальные линии двух стереоизображений поочередно (пространственно) отображаются на, например, пространственном модуляторе 2 света (например, ЖК-экране) с тыловой подсветкой 1. В сочетании тыловая подсветка и пространственный модулятор света формируют матрицу пикселей. Структура линз линзово-растрового экрана 3 направляет стереоизображение на соответствующий глаз наблюдателя. В данном примере показаны два изображения. Настоящее изобретение не ограничивается структурой с двумя видами. По существу, чем больше видов должно быть сформировано, тем больше информации должно быть кодировано, и тем более эффективно настоящее изобретение. Тем не менее, для простоты описания на Фиг.1 проиллюстрирована ситуация с двумя видами. Следует отметить, что важным преимуществом настоящего изобретения является то, что множество (типов) слоев обеспечивают возможность более широкого бокового обзора и/или реализации дисплеев с большим диапазоном глубины, поскольку обеспечивается более эффективное декодирование и сохранение широких конусов наблюдения.
На Фиг.2 и 3 проиллюстрирована проблема загораживания. Линия, обозначенная термином "задний план", является задним планом, а линия, обозначенная термином "передний план", представляет объект, который расположен перед задним планом. Обозначения "левый" и "правый" представляют два вида этой сцены. Эти два вида могут представлять собой, например, левый и правый вид для стереоизображения либо крайние два вида в случае использования n-мерного дисплея. Линии, обозначенные как L+R, могут быть видны с обоих видов, тогда как часть L может быть видна только с левого вида, а часть R может быть видна только с правого вида. Следовательно, часть R не может быть видна с левого вида, а часть L не может быть видна с правого вида. На Фиг.3 центр обозначает главный вид. Как показано на этой фигуре, доля (L1 и, соответственно, R1) части L и R заднего плана, показанного на Фиг.3, может быть видна с главного вида. Тем не менее, некоторая доля части L и R невидима с главного вида, поскольку она скрыта за объектом переднего плана. Эти области, обозначенные как Oc, скрыты для главной точки наблюдения, но видны с левой и правой точек наблюдения. Как показано, области загораживания, как правило, образуются по краям объектов переднего плана. При использовании сочетания двухмерного изображения и глубины определенные части трехмерного изображения не могут быть реконструированы. Генерация трехмерных данных только из главного вида и карты глубины создает проблемы для загороженных областей. Данные частей изображения, которые скрыты за объектами переднего плана, неизвестны. Более подходящее формирование трехмерного изображения может быть получено путем добавления информации объектов, загороженных позади других объектов в главном виде. Может быть множество объектов, скрытых друг за другом, так что эта информация наилучшим образом разделяется по слоям. В лучшем случае для каждого слоя предоставляются не только данные изображения, но также данные глубины. В случае, когда объекты являются прозрачными и/или присутствуют данные отражения, эти оптические величины также должны быть разделены по слоям. По существу, для большей реалистичности можно дополнительно предоставить информацию о разных слоях объектов также и для боковых видов. Более того, в случае, если количество видов и точность трехмерного формирования изображения должна быть улучшена, также можно кодировать не только центральный вид, но и левый и правый виды, или даже большее количество видов.
Более подходящие карты глубины обеспечат возможность отображения на трехмерных дисплеях с большой глубиной и большим углом обзора. Увеличение в воспроизведении глубины приведет к видимым дефектам вокруг разрывов глубины по причине недостатка данных загораживания. Следовательно, настоящие изобретатели осознали необходимость точных и дополнительных данных для высококачественных карт глубины и дисплеев с большой глубиной. Следует отметить, что "карта глубины" должна быть интерпретирована в рамках настоящего изобретения в широком смысле, как состоящая из данных, которые предоставляют информацию о глубине. Это может быть реализовано в форме информации глубины (z-величине) или информации расхождения, которая схожа с глубиной. Глубина и расхождение могут быть легко преобразованы друг в друга. В настоящем изобретении вся такая информация обозначается как "карта глубины", независимо от представленной формы.
Фиг.4 представляет собой иллюстрацию левого и правого видов сцены, сгенерированной компьютером. На данной иллюстрации мобильный телефон парит в виртуальной комнате с желтым мозаичным полом и двумя стенами. В левом виде ясно видна женщина, тогда как на правом виде она не видна. С другой стороны, на правом виде видна коричневая корова, которая не видна на левом виде.
На Фиг.5 показана та же сцена, что и описанная выше со ссылкой на Фиг.4. В данном случае эта сцена согласно настоящему изобретению представлена посредством четырех карт данных:
- карта с данными изображения для главного вида (5a),
- карта глубины для главного вида (5b),
- данные изображения для карты загораживания для главного вида (5c), то есть части изображения, скрытой позади объекта переднего плана, и
- карта глубины для данных загораживания (5d).
Зона охвата функциональных данных загораживания определяется картой глубины главного вида и диапазоном глубины/трехмерным конусом предполагаемых трехмерных дисплеев. По существу, она соответствует линиям шагов в глубине главного вида. Области, содержащиеся в данных загораживания, цвета (5a) и глубины (5d), формируются в этом примере посредством полос, следующих по контуру мобильного телефона. Эти полосы (которые, таким образом, определяют размер данных загораживания) могут быть определены различными способами:
- как ширина, соответствующая максимальному диапазону видов и шагу глубины;
- как стандартная ширина;
- как ширина, которая должна быть установлена;
- как область, смежная с контуром мобильного телефона (с наружной и/или с внутренней стороны). В рамках настоящего изобретения в этом примере присутствует два дополнительных слоя - слой, представленный посредством номера 5c, то есть данные изображения, и слой, представленный посредством 5d, то есть карта глубины.
Фиг.5a представляет собой иллюстрацию данных изображения для главного вида, а Фиг.5b представляет собой иллюстрацию данных глубины для главного вида.
Карта 5b глубины являет собой плотную карту. В этой карте глубины светлые части представляют объекты, которые расположены близко к наблюдателю, а темные части представляют объекты, которые расположены дальше от наблюдателя.
Согласно примеру настоящего изобретения, проиллюстрированному на Фиг.5, функциональные дополнительные данные ограничиваются полосой с шириной, которая соответствует данным той области, которая будет видна при заданной карте глубины и максимальном сдвиге влево и вправо. Остальная часть данных в слоях 5c и 5d, то есть пустая область вне упомянутых полос, является нефункциональной.
Большинство стандартов кодирования цифрового видео поддерживают дополнительные каналы данных, которые могут быть либо на уровне видео, либо на уровне системы. При доступности этих каналов передача дополнительных данных может быть реализована напрямую.
Фиг.5e представляет собой иллюстрацию еще одного простого варианта осуществления настоящего изобретения: слои 5c и 5d комбинируются в один общий дополнительный слой 5e. Слой 5d данных вставляется в слой 5c и смещается горизонтально на величину сдвига ∆x. Вместо двух дополнительных слоев данных 5c и 5d требуется только один общий слой дополнительных данных 5e, плюс дополнительный поток данных, который для данных из 5d содержит сдвиг ∆x, информацию сегмента, идентифицирующую сегмент, который должен быть смещен, и источник исходного слоя, то есть слоя 5d, указывающий, что это данные глубины. На стороне декодера эта информация обеспечивает возможность реконструкции всех четырех карт данных, хотя были переданы только три карты данных.
Специалистам в данной области техники будет очевидно, что вышеупомянутая информация смещения является лишь примером, и данные могут быть кодированы, используя например, позицию источника и смещение, позицию цели и смещение, или позицию источника и позицию цели. Хотя для показанного здесь примера требуется дескриптор сегмента, указывающий форму этого сегмента, дескрипторы сегмента являются опциональными. Например, рассмотрим вариант осуществления, в котором сегменты соответствуют макроблокам. В таком варианте осуществления достаточно идентифицировать смещение и/или одно из источника и назначения на уровне макроблока.
На Фиг.5 присутствуют два дополнительных слоя 5c и 5d, которые комбинируются в общий слой 5e. Тем не менее, Фиг.5 является относительно простой иллюстрацией.
В более сложных изображениях присутствуют несколько слоев загораживания и их соответствующие карты глубины, например, когда некоторые части скрыты позади частей, которые сами скрыты позади объектов переднего плана.
Фиг.6 представляет собой иллюстрацию сцены. Эта сцена состоит из леса с расположенным перед ним домом, а перед домом расположено дерево. Соответствующие карты глубины опущены, поскольку они обрабатываются схожим образом. В терминах загораживания образуется слой загораживания, содержащий лес позади дома (I), и слой загораживания с домом позади дерева (II). Эти два слоя загораживания совмещены в позиции, так что они не могут быть комбинированы в один слой.
Тем не менее, как показано в нижней части Фиг.6, посредством смещения макроблоков, которые содержат часть дома позади дерева, вправо на расстояние ∆x (и сохранения реверса в форме смещения в метаданных), эти два сегмента данных слоев I и II данных загораживания больше не будут перекрывать друг друга в позиции, и они могут комбинироваться в общий слой CB(I+II) загораживания путем из перемещения в упомянутый общий слой данных. Рассмотрим сценарий, в котором смещения предоставляются на уровне макроблока.
В простом случае с Фиг.6 присутствует только два сдвига (нулевой сдвиг для леса позади дома и горизонтальный сдвиг только для дома позади дерева), так что если составить их таблицу, то метаданные будут формироваться по принципу только одного сдвига на макроблок. Безусловно, если сдвиг равен нулю, то данные могут быть отброшены при условии, что на стороне декодера известно, что данные передислокации означают, что сдвиг равен нулю. Путем использования одного горизонтального сдвига для дома позади дерева сохраняется вертикальная когерентность (возможно, временная когерентность, если это выполняется по множеству кадров, например, в одном GOP), что может способствовать сжатию с использованием стандартных кодеков видео.
Следует отметить, что если необходимо больше пространства, то нижняя часть данных загораживания позади дома будет хорошим кандидатом для отбрасывания, поскольку она может быть предсказана из окружения. Деревья леса должны быть кодированы, поскольку они не могут быть предсказаны. В этом примере глубина обеспечивает упорядочивание двух слоев. В сложных ситуациях в метаданные может быть добавлена дополнительная информация, задающая слой.
Схожим образом две карты глубины двух слоев загораживания могут быть комбинированы в один общий слой для карты глубины заднего плана.
Сверх того, четыре дополнительных слоя, то есть два слоя загораживания и их карты глубины, могут быть комбинированы в один общий слой.
В общем слое упомянутых двух слоев загораживания все же есть открытые области, как показано на Фиг.6. В эти пустые области с Фиг.6 могут быть размещены данные глубины для двух слоев загораживания.
Более сложные ситуации проиллюстрированы на Фиг.7-9. На Фиг.7 несколько объектов с A по E были расположены один позади другого. Первый слой загораживания дает данные всех данных, загораживаемых (при наблюдении центрального вида) объектами переднего плана, второй слой загораживания дает данные для объектов, загороженных первыми загороженными объектами. Два или три слоя загораживания представляют обычную ситуацию в сценах реальной жизни. На данной иллюстрации легко можно увидеть, что в точке X присутствует четыре слоя данных заднего плана.
Один слой загораживания не будет содержать данные для дополнительных слоев загораживания.
Фиг.8 представляет собой дополнительную иллюстрацию настоящего изобретения, где первый слой загораживания занимает область, определенную всеми затененными областями. Кроме полезных блоков, отображающих объект, загороженный объектом переднего плана, этот слой содержит также области, которые не имеют полезной информации, то есть белые области. Второй слой загораживания лежит позади первого слоя загораживания и имеет меньший размер. Вместо выделения отдельного слоя данных настоящее изобретение позволяет передислоцировать макроблоки (или более обобщенно - данные) второго слоя загораживания в общий слой загораживания. Это схематически указано посредством двух областей IIA и IIB на Фиг.9. Метаданные предоставляются для обеспечения информации об отношении между исходной позицией и передислоцированной позицией. На Фиг.9 это схематически показано стрелкой. То же самое может быть сделано с данными загораживания третьего слоя путем передислокации области III и с четвертым слоем загораживания путем передислокации области IV. Кроме связанных данных и, в особенности, в этом сложном варианте осуществления, данные, предпочтительно, также содержат данные о номере слоя загораживания. Если есть только один дополнительный слой загораживания или порядок ясен из других данных (таких, как z-данные, см.Фиг.6), то такая информация может не потребоваться. Передислокация сегментов данных (предпочтительно, для макроблоков) более глубоких слоев загораживания в общий слой загораживания и формирование дополнительного потока данных, в котором отслеживаются передислокация и, предпочтительно, исходный слой загораживания, обеспечивают возможность сохранения в одном общем слое загораживания большего объема информации. Генерированные метаданные обеспечивают возможность отслеживания источника различных перемещаемых сегментов данных, что позволяет реконструировать содержимое исходного слоя на стороне декодера.
Фиг.10 представляет собой иллюстрацию еще одного варианта осуществления настоящего изобретения. Некоторое количество слоев, включая первый слой FR, то есть главный слой, и некоторое количество слоев загораживания многослойного представления B1, B2, B3 комбинируются согласно настоящему изобретению. Слои B1, B2, B3 комбинируются в общий слой CB (информацию заднего плана комбинированного изображения). Информация, указывающая, как перемещаются сегменты данных, сохраняется в потоке M данных. Далее эти комбинированные потоки могут быть переданы через интерфейс дисплея (dvi, hdmi и т.п.) на трехмерное устройство, такое как трехмерный дисплей. Внутри дисплея исходные слои реконструируются снова для отображения множества видов с использованием информации из M.
Следует отметить, что в примере с Фиг.10 проиллюстрированы слои B1, B2, B3 и т.д. заднего плана. С каждый слоем заднего плана может быть ассоциирована карта глубины B1D, B2D, B3D и т.д. Также могут быть ассоциированы данные прозрачности B1T, B2T, B3T и т.д. Как описано выше, каждый из этих наборов слоев комбинируется в один или более общих слоев. Альтернативно различные наборы слоев могут быть комбинированы в один или более общих слоев. Кроме того, слои изображения и глубины могут быть комбинированы в первый тип общих слоев, а другие слои данных, такие как прозрачность и отражательная способность, могут быть комбинированы во второй тип слоев.
Следует отметить, что устройство визуализации с множеством видов не должно полностью реконструировать плоскости изображения для всех слоев. Оно может сохранять комбинированные слои и реконструировать только карту уровня макроблока для исходных слоев, содержащих указатели на позиции, в которых действительные данные видео могут быть найдены в комбинированных слоях. Для этой цели в течение кодирования могут быть сгенерированы и/или предоставлены метаданные M.
Фиг.11 представляет собой иллюстрацию еще одного варианта осуществления настоящего изобретения.
Некоторое количество слоев многослойного представления комбинируется согласно настоящему изобретению.
Комбинированные слои могут быть сжаты с использованием стандартных кодеров видео в меньшее количество потоков видео (или в потоки видео с меньшим разрешением, если эти слои имеют мозаичное расположение), тогда как метаданные M добавляются как отдельный поток (со сжатием без потерь). Результирующий файл видео может быть передан в стандартный декодер видео при условии, что он также выводит метаданные, по которым могут быть реконструированы исходные слои для, например, видеопроигрывателя или для дальнейшего редактирования. Следует отметить, что эта система и система с Фиг.10 могут быть комбинированы так, чтобы сохранять комбинированные слои и передавать их через интерфейс дисплея до реконструкции исходных слоев.
В рамках настоящего изобретения слой данных представляет собой любую совокупность данных, которые содержат планарные координаты, задающие плоскость или точки в плоскости или в части плоскости, или связанные с ними, спаренные с ними и/или сохраненные и/или сгенерированные для планарных координат данные информации изображения для точек и/или областей упомянутой плоскости или части упомянутой плоскости. Например, данные информации изображения могут представлять собой, но не ограничиваются перечисленным, цветовые координаты (например, RGB или YUV), z-величину (глубину), прозрачность, отражающую способность, масштаб и т.п.
Фиг.12 представляет собой схему последовательности операций одного варианта осуществления для кодера, который комбинирует блоки нескольких дополнительных слоев данных, например, слоев загораживания в общий слой данных, и генерирует метаданные. Декодер выполняет обратное, то есть копирует данные изображения/глубины в соответствующее место в соответствующем слое, используя метаданные.
В кодере блоки могут обрабатываться согласно приоритету. Например в случае данных загораживания, данные, относящиеся к областям, которые находятся очень далеко от края объекта переднего плана, будут видны редко, так что этим данным может быть дан более низкий приоритет, чем данным вблизи края. Еще одним другим критерием может быть, например, резкость блока. Назначение приоритета блокам имеет преимущество, заключающееся в том, что если блоки были пропущены, то будут пропущены, по меньшей мере, релевантные блоки.
На этапе 121 результаты инициализируются в значение "все пустые". На этапе 122 проверяется, есть ли во входных слоях какие-либо необработанные непустые блоки. Если таких блоков нет, то результат возвращается, а если такие блоки есть, то на этапе 123 выбирается один блок. Это, предпочтительно, выполняется на основе приоритета. Пустой блок обнаруживается в общем слое загораживания (этап 124). Этап 124 также может предшествовать этапу 123. Если отсутствуют пустые блоки, то результат возвращается, а если присутствует пустой блок, то данные изображения/глубины из входного блока копируются в результирующий блок на этапе 125, и данные о передислокации и, предпочтительно, номер слоя сохраняются в метаданных (этап 126). Так процесс повторяется до тех пор, пока результат не будет возвращен.
В несколько более сложной схеме могут быть добавлены дополнительные этапы на создание дополнительного пространства, если обнаруживается, что в результирующем слое больше не остается пустых блоков. Если результирующий слой содержит множество блоков со схожим содержимым или блоки, которые могут быть предсказаны из окружения, такие блоки могут быть опущены, чтобы создать пространство для дополнительных блоков. Например, нижняя часть данных загораживания позади дома с Фиг.6 будет хорошим кандидатом для опущения, поскольку она может быть предсказана из окружения.
Фиг.13 и 14 представляют собой иллюстрации кодера и декодера согласно настоящему изобретению. Кодер имеет вход для дополнительных слоев, например, слоев загораживания B1-Bn. Блоки этих слоев загораживания в этом примере комбинируются в два общих слоя загораживания и два потока данных (которые могут быть комбинированы в один дополнительный поток) в формирователе CR. Данные главного кадра, карта глубины для главного кадра, данные общих слоев загораживания и метаданные комбинируются в видеопоток VS посредством кодера с Фиг.13. Декодер с Фиг.14 выполняет обратную операцию и содержит блок RC реконструкции.
Следует отметить, что метаданные могут быть введены в отдельный поток данных, но дополнительный поток данных также может быть введен в сами данные видео (в особенности, если эти данные видео не сжаты, например, при передаче через интерфейс дисплея). Часто изображение содержит несколько линий, которые никогда не отображаются.
Если метаданные имеют небольшой размер, например, когда присутствует только небольшое количество величин ∆x, ∆y, которые идентифицируют общий сдвиг для большого количества макроблоков, упомянутая информация может быть сохранена в этих линиях. В вариантах осуществления настоящего изобретения в общем слое может быть зарезервировано несколько блоков для этих данных, например первый макроблок на линии содержит метаданные для первой части линии, описывающие метаданные для следующих n макроблоков (где n зависит от объема метаданных, которые могут быть вмещены в один макроблок). Так, макроблок n+1 содержит метаданные для следующих n макроблоков и т.п.
Настоящее изобретение вкратце можно описать следующим образом.
В способе для кодирования и кодере для сигнала трехмерного видео кодируют главные кадры, карту глубины для главных кадров и дополнительные слои данных. Несколько дополнительных слоев данных комбинируют в один или более общих слоев путем перемещения сегментов данных разных слоев в общий слой и путем отслеживания перемещений. Декодер выполняет обратную операцию и реконструирует слоистую структуру, используя общие слои и информацию о том, как сегменты данных перемещаются в общий слой, то есть из которого слоя они исходят и какова была их исходная позиция в исходном слое.
Настоящее изобретение также реализовано в любом компьютерном программном продукте для способа или устройства согласно настоящему изобретению. Термин "компьютерный программный продукт" обозначает любой физически реализованный набор команд, позволяющий процессору общего или специального назначения после загрузки ряда этапов (которые могут включать в себя промежуточные этапы преобразования, такие как преобразование в промежуточный язык и финальный язык обработки) выполнять любые отличительные функции настоящего изобретения. В частности, компьютерный программный продукт может быть реализован как данные на носителе, таком как диск или лента, данные в памяти, данные, передаваемые по проводному или беспроводному сетевому соединению, или программный код на бумаге. Кроме программного кода отличительные данные, необходимые для упомянутой программы, также могут быть реализованы как компьютерный программный продукт.
Некоторые из этапов, необходимых для реализации способа, могут уже присутствовать в функциональных возможностях процессора, а не описаны в компьютерном программном продукте, например, на этапах ввода и вывода данных.
Следует отметить, что вышеописанные варианты осуществления приведены только для иллюстрации настоящего изобретения, а не для его ограничения, и специалисты в данной области техники будут в состоянии разработать множество альтернативных вариантов осуществления в рамках объема изобретения, который определен прилагаемой формулой изобретения.
Так, в приведенных выше примерах рассматривается случай, в котором используются центральный вид и слои загораживания, содержащие данные об объектах, лежащих позади объектов переднего плана. В рамках настоящего изобретения слой загораживания также может представлять собой данные в боковом виде на главный вид.
В верхней части Фиг.15 приведена иллюстрация главного вида. Боковые виды проиллюстрированы в нижней части фигуры. Боковой вид содержит все данные главного вида, но для данных видео небольшой области, которая была загорожена телефоном на главном виде. Боковой вид на левую сторону SVL будет включать в себя данные, которые также входят в состав главного видео, выделенного серой областью, и небольшую полосу данных, которая была загорожена в главном виде и которая выделена оттенками серого. Аналогично вид на правую сторону главного вида будет содержать данные, которые являются общими для главного вида (показанные серым), и небольшую полосу данных (которая отличается от полосы для левого вида), которые были загорожены в главном виде. Вид с позиции, расположенной левее, будет содержать более широкую полосу загороженных данных. Тем не менее, по меньшей мере, часть эти данных загораживания уже содержится на левом виде. Схема, показанная на Фиг.10-14, может быть использована для комбинирования данных загораживания различных видов в комбинированный слой данных загораживания. Таким образом, может быть сокращено количество слоев (то есть, количество кадров с множеством видов). В схемах с множеством видов главным видом может быть любой вид.
Настоящее изобретение вкратце можно описать следующим образом.
В способе для кодирования и кодере для сигнала трехмерного видео кодируют главный слой данных, карту глубины для главных слоев данных и дополнительные слои данных. Несколько слоев данных комбинируют в один или более общих слоев данных путем перемещения сегментов данных, таких как блоки данных, из слоев данных источника в общие слои данных и путем записи сдвига в дополнительном потоке данных.
В формуле изобретения ссылочные символы, включенные в скобки, не следует рассматривать как ограничивающие данный пункт формулы изобретения.
Термин "содержащий" не исключает наличия других элементов или этапов, отличных от перечисленных в заданном пункте формулы изобретения. Настоящее изобретение может быть реализовано посредством аппаратного обеспечения, содержащего ряд отдельных элементов, а также посредством соответствующим образом запрограммированного компьютера. Для пунктов типа устройство, в которых перечислено несколько средств, некоторые из этих средств могут быть реализованы в одном и том же элементе аппаратного обеспечения. Способ кодирования или декодирования согласно настоящему изобретению может быть реализован и выполнен на подходящем компьютере общего назначения или, альтернативно, специализированной (интегральной) схеме. Также рассматривается реализация на альтернативных вычислительных платформах. Настоящее изобретение может быть реализовано посредством любого сочетания отличительных признаков различных предпочтительных вариантов осуществления, как описано выше.
Настоящее изобретение может быть реализовано различными способами. Например в вышеупомянутых примерах главный слой данных видео остается нетронутым и только сегменты данных дополнительных слоев данных комбинируются в общие слои данных.
В рамках настоящего изобретения общий слой может также содержать сегменты данных главного слоя данных и сегменты дополнительных слоев данных. Примером является ситуация, где главный слой данных содержит большие куски неба. Такие части главного слоя данных видео часто могут быть представлены посредством параметров, описывающих размеры синей части и цвет (и, например, изменение цвета). Это создаст пространство на главном слое данных видео, в которое могут быть перемещены сегменты данных из дополнительных слоев данных. Это может дать возможность сокращения количества общих слоев. Фиг.16 представляет собой иллюстрацию одного такого варианта осуществления. Главный слой FR и первый дополнительный слой (который обозначен B1) комбинируются в общий слой C(FR+B1) и метаданные M1 генерируются, чтобы отслеживать то, как сегменты данных двух слоев FR и B1 перемещаются в общий слой. Дополнительные слои данных B2 в Bn комбинируются в общий слой данных B2, для которого генерируются метаданные M2.
С точки зрения обратной совместимости предпочтительными являются те варианты осуществления, в которых общие слои содержат только сегменты дополнительных слоев (B1, B1T и т.п.).
Отсутствие изменений главного слоя и, предпочтительно, отсутствие изменений карты глубины для главного слоя обеспечивают возможность легкой реализации способа на существующих устройствах.
Изобретение относится к области кодирования и декодирования, а также к способу, системе и декодеру для декодирования сигнала трехмерного видео. В способе для кодирования и кодере для сигнала трехмерного видео кодируют главный слой данных, карту глубины для главных слоев данных и дополнительные слои данных. Несколько слоев данных комбинируют в один или более общих слоев данных путем перемещения сегментов данных, таких как блоки данных, из слоев данных источника в общие слои данных и путем записи сдвига в дополнительном потоке данных. Технический результат - представление способа кодирования данных трехмерного изображения с сокращением объема генерируемых данных без или только с небольшой потерей данных с высоким значением эффективного кодирования. 6 н. и 7 з.п. ф-лы, 16 ил.
1. Способ кодирования сигналов трехмерного (3D) видео, в котором кодируют входной сигнал трехмерного видео, содержащий главный слой (FR) данных видео, карту глубины для главного слоя данных и дополнительные слои (B1, B2, B1T, B2T) данных для главного слоя данных, причем сегменты данных, входящие в состав карт данных разных слоев данных из главного слоя данных видео, карты глубины для главного слоя данных видео и дополнительных слоев данных, перемещаются в карту данных общего слоя данных (СВ1, СВ2, C(FR+B1), при этом генерируется дополнительный поток данных, содержащий дополнительные данные (М, M1, M2), задающие исходную позицию и/или исходный дополнительный слой для каждого перемещаемого сегмента данных, при этом кодированный сигнал трехмерного видео содержит главный слой данных видео, карту глубины, карту общих данных и поток дополнительных данных.
2. Способ по п.1, в котором сегменты данных представляют собой макроблоки.
3. Способ по п.1 или 2, в котором дополнительные слои содержат данные изображения и/или глубины и/или дополнительные данные с той же точки наблюдения, что и вид для главного слоя данных видео.
4. Способ по п.1, в котором в общий слой (СВ1, СВ2) данных перемещаются только сегменты данных дополнительных слоев (B1, B2, B1T, B2T) данных.
5. Способ по п.1, в котором общий слой данных содержит сегменты данных только одного типа.
6. Способ по п.1, в котором общий слой данных содержит сегменты данных разных типов.
7. Способ по п.1, в котором сегменты данных перемещаются в общий слой в том же временном слоте, что и главный слой данных видео.
8. Способ по п.1, в котором сегменты данных перемещаются или отбрасываются на основании приоритета.
9. Кодер для кодирования сигнала трехмерного видео, причем кодированный сигнал трехмерного видео содержит главный слой (FR) данных видео, карту глубины для главного слоя данных видео и дополнительные слои (B1, B2, B1T, B2T) данных для главного слоя данных видео, причем кодер содержит входы для дополнительных слоев данных, и кодер содержит формирователь (CR), который комбинирует сегменты данных из карт данных более чем одного слоя данных из главного слоя данных видео, карты глубины для главного слоя данных видео и дополнительных слоев данных в карту данных общего слоя данных путем перемещения сегментов данных из более чем одного слоя данных в карту данных общего слоя (СВ1, СВ2, C(FR+B)) данных и генерации дополнительного потока (М, M1, M2) данных, содержащего данные, идентифицирующие источник перемещаемых сегментов данных, при этом кодированный сигнал трехмерного видео содержит главный слой данных видео, карту глубины, карту общих данных и поток дополнительных данных
10. Способ декодирования кодированного сигнала видео, в котором декодируют сигнал трехмерного видео, при этом сигнал трехмерного видео содержит главный слой (FR) данных видео, карту глубины для главного слоя данных видео, карту данных кодированного общего слоя (СВ1, СВ1, C(FR+B1)) данных, содержащую сегменты данных из карт данных двух или более слоев данных главного слоя данных видео и содержащую дополнительный поток (М, M1, M2) д1нных, содержащий дополнительные данные, определяющие источник сегментов в карте данных кодированного общего слоя данных, причем два или более слоев данных главного слоя данных видео, карты глубины для главного слоя данных видео и дополнительных слоев данных для главного слоя видео реконструируются на основании карты данных кодированного общего слоя (СВ1, СВ2, C(Fr+B1)) данных и дополнительного потока (М, M1, M2) данных и генерируется трехмерное изображение.
11. Декодер для декодирования кодированного сигнала видео, в котором декодируется сигнал трехмерного видео, при этом сигнал трехмерного видео содержит главный слой (FR) данных видео, карту глубины для главного слоя данных видео, карту данных кодированного общего слоя (СВ1, СВ1, C(FR+B1)) данных, содержащую сегменты данных из карт данных двух или более слоев данных кодированного главного слоя данных видео, сигнал трехмерного видео дополнительно содержит дополнительный поток (М, M1, M2) данных, содержащий дополнительные данные, определяющие источник сегментов в карте данных кодированного общего слоя данных, причем декодер содержит считыватель для считывания карты данных кодированного общего слоя данных и дополнительного потока данных и блок (RC) реконструкции для реконструкции исходного главного слоя данных видео, карты глубины для главного слоя данных видео и одного или более дополнительных слоев данных на основании карты данных кодированного общего слоя данных и дополнительного потока данных.
12. Носитель данных, хранящий компьютерную программу, содержащую средство программного кода для реализации способа по одному из пп.1, 2 и 4-8, когда упомянутая программа выполняется на компьютере.
13. Носитель данных, хранящий компьютерную программу, содержащую средство программного кода для реализации способа по п.10, когда упомянутая программа выполняется на компьютере.
WO 2007063478 A2, 07.06.2007 | |||
US 2006008000 A1, 12.01.2006 | |||
СПОСОБ ГЕНЕРИРОВАНИЯ СТРУКТУРЫ УЗЛОВ, ПРЕДНАЗНАЧЕННЫХ ДЛЯ ПРЕДСТАВЛЕНИЯ ТРЕХМЕРНЫХ ОБЪЕКТОВ С ИСПОЛЬЗОВАНИЕМ ИЗОБРАЖЕНИЙ С ГЛУБИНОЙ | 2002 |
|
RU2237284C2 |
Волноводный аналог вибраторной антенной решетки | 1979 |
|
SU1841235A1 |
US 2005084006 A1, 21.04.2005. |
Авторы
Даты
2013-12-27—Публикация
2009-08-17—Подача