ЭФФЕКТИВНОЕ КОДИРОВАНИЕ МНОЖЕСТВА ВИДОВ
EFFICIENT MULTIPLE TYPES ENCODING

Изобретение относится к способу кодирования множества видов изображения в сигнале изображения, таком, как, например, сжатый телевизионный сигнал, соответствующий одному из MPEG стандартов.
Изобретение также относится к устройству для генерирования такого сигнала, приемнику для приема такого сигнала, способу выделения кодированной информации из сигнала, так что она может быть использована для множества видов, и эффективному кодированию самого сигнала.
Настоящая работа направлена на стандартизацию кодирования информации трехмерного изображения. Например, “Efficient encoding of multiple views” Редер А. и другие: «Проверка: продвинутые технологии трехмерных телевизионных систем» 3D-визуализация обработанных данных и передача, 2002, Доклады. Первый международный симпозиум, июнь 19-21, 2002, Пискатавей, NJ, IEFF, 19 июня 2002 (2002-06-19), страницы 313-319, XP010596672 ISBN: 0-7695-1521-4 обсуждение элементов трехмерных телевизионных систем для сред широковещания. Статья Кристофа Фена и др.: «Изучение некоторых MPEG инструментов, относящихся к 3D-видео» ISO MPEG, Документ М8423 от 30 апреля 2002 (2002-04-30), страницы 1-5, ХР030037386, Фэрфакс, США “Efficient encoding of multiple views” обеспечивает краткий обзор некоторых инструментов, определенных в стандарте MPEG и существенных для трехмерных видеоприложений.
Популярный формат представляет собой левый/правый формат, в котором картинка записана с помощью камеры слева и картинка записана с помощью камеры справа. Эти картинки могут быть продемонстрированы на разных дисплеях, например, левая картинка может быть показана в течение первого набора моментов времени, а правая картинка попеременно в течение второго набора моментов времени, причем правый и левый глаза наблюдателя должны закрываться синхронно с демонстрацией с помощью очков-шторок. Проектор со средствами поляризации представляет собой другой вариант дисплея, способного генерировать трехмерное впечатление о сцене, по меньшей мере, визуализировать какую-либо трехмерную информацию о сцене, а именно, как она приблизительно выглядит в определенном направлении (а именно стерео).
Могут быть выполнены разные качества приближения сцены, например 3D-сцена может быть представлена как набор плоских слоев друг за другом. Но эти разные качества могут быть закодированы с помощью существующих форматов.
Другой популярный дисплей представляет собой автостереоскопический дисплей. Этот дисплей сформирован, например, с помощью установки жидкокристаллического индикатора за набором линз, так что группа пикселей проектируется на область в пространстве с помощью соответствующей линзы. Таким образом, количество конусов генерируется в пространстве, которое попарно содержит правое и левое изображения для левого и правого глаза, так что без очков пользователь может располагаться в определенном количестве областей в пространстве и воспринимать 3D. Однако данные для этих групп пикселей должны быть получены от правого и левого изображений. Другой возможный вариант заключается в том, что пользователь может видеть объект с некоторого числа промежуточных направлений между правым и левым видом кодированного стереоизображения, чьи промежуточные виды могут быть получены путем вычисления рассогласования поля между левой и правой картинками и последовательно интерполированы.
Недостаток предыдущего способа правого/левого кодирования заключается в том, что требуются значительные данные, чтобы получить промежуточные виды и что до сих пор могут быть получены некоторые неутешительные результаты. Трудно вычислить точное совмещение рассогласования поля, которое приведет к ложным изображениям при интерполяциях, таким как части заднего фона, прилипающие к переднему объекту. Пожелание, которое привело к представленным здесь ниже технологическим осуществлениям, было иметь способ кодирования, приводящий к существенной точности результатов при преобразовании в разные форматы, такой как набор видов с промежуточными видами, которые вдобавок не содержат непомерного количества данных.
Такие требования, по меньшей мере, частично выполнены с помощью способа кодирования информации о множестве видов изображения в сигнале (200) изображения, содержащего:
- добавление к сигналу (200) изображения первого изображения (220) значений пикселей, представляющих один или более объектов (110, 112), снятых камерой (101);
- добавление к сигналу (200) изображения карты (222), содержащей для соответствующих наборов пикселей первого изображения (220) соответствующие значения, представляющие трехмерное положение в пространстве области одного или более объектов (110, 112), представленных с помощью соответствующего набора пикселей; и
- добавление к сигналу (200) изображения карты (222), содержащей для соответствующих наборов пикселей первого изображения (220) соответствующие значения, представляющие трехмерное положение в пространстве области одного или более объектов (110, 112), представленных с помощью соответствующего набора пикселей; и
- обеспечение второго изображения (224) значений пикселей, представляющих один или более объектов (110, 112), снятых второй камерой (102) с другого положения, чем первой камерой;
- определение того, по меньшей мере, какие области представлены во втором изображении и не присутствуют в первом изображении (220) в ответ на рассогласования между первым изображением (220) и вторым изображением (224); и
- добавление к сигналу (200) изображения частичного представления (223), содержащего второе изображение (224) частичного представления (223), содержащего, по меньшей мере, большинство пикселей областей;
и сигнал, полученный с помощью способа или устройства, позволяющего выполнить метод.
Изобретатели поняли, что если по соображениям качества лучше добавить к левому и правому изображениям карту, содержащую информацию о трехмерной структуре сцены, представляющую, по меньшей мере, часть информации о трехмерной сцене, которая требуется для разрешения особого применения (с желаемым качеством), то может быть разработан интересующий формат кодирования. Для интерполяции видов карта может быть, например, точно сегментированной картой рассогласования, векторы рассогласования которой приведут к хорошей интерполяции промежуточных видов. Важно отметить, что эта карта может быть оптимально настроена на создающей/передающей стороне, соответствующей ее использованию на приемной стороне, т.е., например, соответствующей тому, как трехмерное окружение будет смоделировано на дисплее, что означает, что обычно она будет иметь другие свойства, чем если бы она была использована, чтобы оптимально предсказать области пикселей в левом и правом видах.
Карта может, например, быть точно настроенной или даже созданной с помощью человека-оператора, который может предварительно просматривать на своей стороне, как заданное количество дисплеев будет вести при приеме сигнала. В настоящее время, а в будущем так даже больше, часть контента уже создана с помощью компьютера, как, например, трехмерная модель динозавра или наложенные графические элементы, которые означают, что не слишком проблематично создать, по меньшей мере, для областей, содержащих такие сделанные вручную объекты, пиксельные карты точного рассогласования или карты глубин, или подобные карты.
Это, несомненно, верно для игровых применений, в которых, например, пользователь может передвигаться незначительно перед сценой, и может захотеть посмотреть сцену по-иному, но в ближайшем будущем это изобретение может также стать важным для 3D-телевидения, снятого с двух камер или даже сформированного на основе, например, движения параллакса. Уже возрастающее число студий (например, для ВВС) используют, например, виртуальное окружение для новостей.
Эта карта может быть закодирована с малыми служебными данными, как, например, значениями серого изображения, сжатого в соответствии со стандартом MPEG-2 и добавленного в конце к левому/правому изображению (или изображениям для нескольких моментов времени для движущегося видеоизображения) уже в сигнал.
Наличие этой карты, как, однако, признали изобретатели, допускает дальнейшее уменьшение количества данных, потому что часть сцены изображена обеими камерами. Хотя пиксельная информация может быть полезна для двумерной интерполяции (например, зеркальные отражения по отношению к одной из камер могут быть ослаблены), на самом деле не такая важная информация будет представлена в дважды кодированных частях. Поэтому, имея доступную карту, можно определить, какие части второго изображения (например, правого изображения) нужно закодировать (и передать), а какие части менее существенны для особого применения. И на приемной стороне может быть реализовано хорошее качество восстановления пропущенных данных.
Например, в простом сценическом приближении (съемке) с объектом с существенно плоской поверхностью, обращенной к камерам (который может быть расположен параллельно или под небольшим углом к сцене) и не слишком близко, пропущенная часть в первом (левом) изображении, которая снята во втором (правом) изображении, состоит из пикселей объекта заднего плана (например, элементов сцены в бесконечности).
Интересующий вариант осуществления включает в себя кодирование частичного второго рассогласования или карты глубин, или подобное. Это частичная, например, карта глубин будет в основном содержать значения глубин области, которая может быть не изображена с помощью первой камеры. Из этих данных о глубинах затем может быть логически выведено на приемной стороне, какая обнаруженная часть принадлежит к объекту переднего плана, имеющего первую глубину (указанную под номером 130 на фиг.1), а какая часть принадлежит заднему плану (132). Это может позволить лучшие стратегии интерполяции, например, сумма растяжения и заполнения отверстий может быть точно отрегулирована, псевдо-перспективная визуализация отверстия может быть визуализирована в промежуточном изображении вместо просто пикселей заднего плана, и т.д. Другой пример - трапецеидальное рассогласование угловых камер может быть закодировано в этой второй карте для компенсации приемной стороны.
В случае трапецеидальной деформации от съемки (обычно слабой) с помощью сходящихся камер, вообще будет присутствовать вертикальное рассогласование в дополнение к горизонтальному. Этот вертикальный компонент может быть кодирован вертикально или во второй карте, как уже представлено, например, в предложениях «представления дополнительных данных» MPEG-4 подгруппы Video-3DAV (например, ISO/JEC JTCI/SC29/WG11 Docs.MPEG2005/12602, 12602, 12600, 12595). Компоненты рассогласования могут быть отображены для яркостных и/или хроматических данных дополнительной картинки, например, горизонтальное рассогласование может быть отражено с высоким разрешением для яркости, а вертикальные рассогласования могут быть отображены со схемой от одного до двух хроматических компонентов (поэтому некоторые данные находятся в U и путем математического разделения как многие из дополнительных данных в V).
Преимущества частичного формата левый + правый + «глубина» перед, например, первым кодированием для центрального вида + «глубина» + данные двусторонней окклюзии следующие. Преобразование данных окклюзии для центрального вида, вместо хранения ее на первой камере, снимающей вид, ведет к обработке ошибок (в частности, если карта(ы) глубин является автоматически выведенной и более низкого качества/согласованности, имеющая временные и пространственные дефекты), и, следовательно, кодирование неэффективно. Также, когда вычисление дальнейших ошибок промежуточного вида приблизится к самым высоким значениям.
Эти и другие аспекты способа и устройства, в соответствии с данным изобретением, будут очевидны из описания и объяснены со ссылкой на выполнения и осуществления, описанные ниже, и со ссылкой на сопровождающие чертежи, которые служат просто в качестве неограничивающих особенных иллюстраций, поясняющих наиболее общую концепцию, и в которых пунктирные линии указывают, какой компонент необязателен; незаштрихованные компоненты необязательно существенны.
На чертежах:
фиг.1 схематично иллюстрирует съемку сцены с, по меньшей мере, двух камер;
фиг.2 схематично иллюстрирует некоторые варианты кодирования требуемых данных в сигнале изображения;
фиг.3 схематично иллюстрирует пример устройства для генерирования сигнала изображения; и
фиг.4 схематично иллюстрирует пример приемного устройства, которое способно использовать сигнал.
Фиг.1 показывает первую камеру 101, снимающую первое изображение сцены, содержащую ближний объект 110 и удаленный объект 112. Ее поле зрения определяется линиями 103 и 104. Ее вид заднего плана закрывается ближним объектом, а именно область 132 на левой стороне касательной 120 не видна. Вторая камера 102, однако, способна снять часть этой области 132 во втором изображении, которое может для простоты понимания считаться и называться правым изображением (но это не следует интерпретировать более узко, снятое несколько правее другой картинки). Вторая камера также способна снимать удаленную часть 130 ближнего объекта 110.
Фиг.2 символически показывает, что эти снятые изображения будут выглядеть как набор пикселей. Сигнал 200 изображения может, например, иметь заранее описанный формат кодирования JPEG и содержать кодированную фотографию сцены или может быть MPEG-4 кодированной киносъемкой. В последнем случае 3D-данные 210 содержат требуемую информацию для восстановления сцены в отдельный промежуток времени.
Изображение 220 представляет собой левое изображение, снятое первой камерой, содержащее ближний объект 110 и задний план 112.
Карта 222 - это карта, содержащая любую информацию, касающуюся того, как объекты размещены в трехмерном пространстве, содержащая, по меньшей мере, такую информацию, которая требуется для визуализации числа требуемых видов (статически или динамически, например, при взаимодействии с мобильным пользователем во время игры) на дисплее. Возможны некоторые такие отображения, например это может быть карта глубин, содержащая, например, ортогональное приблизительное (например, среднее по всем областям объектов) расстояние до центра камеры объекта заднего плана, в его двумерных положениях в качестве воспринятых первой камерой, или это может быть рассогласование или параллакс, или только горизонтальный компонент рассогласования.
Глубина и параллакс и т.д. могут быть соотнесены друг с другом математически.
Эта карта глубин может быть, например, точным пикселем или может иметь единственное значение для каждого 8х8 блоков пикселей, и может быть закодирована, например, как изображение.
Дальнейшая информация может быть добавлена к карте глубин (которая может содержать скаляры или кортежи для каждого набора пикселей, набора, возможно включающего только единственный пиксель), так как, например, точные данные (о том, насколько надежна определенная часть карты глубин) определены на основании алгоритма согласования для ее получения.
Структура 223 частичных данных (часть правого изображения 224) содержит информацию о пикселях (например, только яркость или цвет, или любое другое привычное представление, такое как, например, модель текстуры, способные генерировать пиксели в области) заднего плана, которые могут быть увидены только с помощью второй камеры (смежной со сдвигом параллакса ближнего объекта 225). Это кодирование частичной области или, по меньшей мере, данных, требуемых для получения значений пикселей в части формы большей кодированной области, соответствующей генерированию алгоритма «заплаты» изображения, может быть чем-то меньшим, чем действительная незакрытая область, снятая в правом изображении; в случае приемной стороны применение может допускать некоторый пропуск пикселей, например, путем генерирования их простой экстраполяцией, расширением и т.д.
Кодированная область может также быть больше (например, вплоть до двойной ширины и похожего размера буфера, добавленного в вертикальное направление). Это может представлять интерес, например, в случае неопределенности относительно точности формы при автоматическом выведении, или в случае, когда по некоторым причинам желательна двунаправленная интерполяция.
Это может быть по соображениям кодирования. Может быть дешевле кодировать блоки целиком, и можно получить выгоду из экстракодированных пикселей, несмотря на то, что общая форма кодирования может быть дорогой. Поэтому на передающей стороне ручной или (полу)автоматический анализ может быть выполнен по данным правого изображения, которые предложены как продукт предыдущей стадии выделения, чтобы быть полезными в дополнение к данным в левом изображении. Например, можно посмотреть на свойства пикселей, чтобы определить зеркальное отражение и принять решение кодировать область пикселей, содержащих отражение в обоих изображениях.
Также форма разных областей может быть проанализирована с помощью морфологического анализа, в частности, могут быть определены размер или ширина области. Маленькие области могут включать в себя значительные затраты кодирования, но могут часто быть аппроксимированы на приемной стороне с малым количеством или отсутствием информации. Поэтому маленькие области могут быть изъяты из частичной второй картинки. Это может быть выполнено под управлением оператора-человека, который проверяет эффект каждого стирания.
Форма (обобщенная или точная) области может быть кодирована, например, с помощью полигональной аппроксимации или ограничивающего прямоугольника, а нижние значения пикселей (текстура) могут быть прямо кодированы или с помощью коэффициентов представления линейного преобразования формы или с помощью другой математической модели. Также, наоборот, могут быть определены части, которые не нуждаются в кодировании/передаче.
Частичное представление может быть отражено (например, простым сдвигом в линиях бланкирования, трансформацией или вырезанием субблоков, которые перераспределены в соответствии с заранее заданным порядком) в изображении или данных пользователя (например, модель восстановления), не используемых для первого изображения.
Если первое изображение с сопутствующей картой глубин является центральным изображением, то для каждой стороны могут быть частичные вторые изображения, т.е. на определенном угловом расстоянии (база-линия), между которыми можно проводить интерполяцию.
Первая камера может быть изображающей задний план, а вторая камера может быть изображающей задний план с, например, диктором новостей, закрывающим часть этого заднего плана, например, с одной и той же точки зрения в разное время. То есть камерам не нужно быть действующими камерами, присутствующими в одно и то же определенное время, но скорее, например, один из видов может быть, например, загруженным из хранилища картинок.
По выбору, по меньшей мере, для части вокруг областей изображаемого незакрытого объекта во втором изображении вторая карта 239 глубин (часть полной карты 240 глубин) или подобное представление могут быть добавлены в сигнал. Эта карта глубин может содержать границу между ближайшим и удаленным объектами. С этой информацией приемная сторона может добавлять во время интерполяции разные пиксели к корректируемым объектам/глубинным слоям.
Дальнейшие данные 230 могут также быть добавлены к сигналу - например, в собственные поля - такие как информация о раздельной или общей трехмерной композиции объектов в сцене. Указатель может быть простым как линия, следующая за границей изображаемого объекта сцены (если, например, карта глубин не достаточна или точность достаточна, чтобы само по себе обозначить объекты), или даже быть чем-нибудь таким полным, как каркасная модель с полигональной сеткой (например, локальная глубинная структура в незакрытых частях), или информацией, выделенной из них.
Также информации о положении камеры и информация о дальности сцены может быть включена, позволяя приемной стороне выполнять более усовершенствованные восстановления множества (по меньшей мере, двух) видов.
Фиг.3 показывает устройство 310 для генерирования сигнала изображения. Обычно это будет персональный компьютер или часть персонального компьютера, или процессор с подходящим программным обеспечением. Устройство может быть в составе большего устройства, такого как специально созданное устройство в студии, а может быть присоединенным к компьютеру, или может быть в составе компьютера. В примере осуществления первая камера 301 и вторая камера 302 соединены с входом устройства 310. Каждая камера имеет дальномер (308 соотв. 309), который может использовать, например, лазерный луч или проекционную сетку и т.д.
В устройстве есть устройство 312 оценки рассогласования, которое приспособлено, чтобы определять рассогласования между, по меньшей мере, двумя картинками, по меньше мере, принимая в расчет геометрию объекта (используя информацию в карте глубин). Известны разные способы оценки рассогласования из предыдущего уровня техники, например, посредством суммирования абсолютной разницы значений пикселей в соответствующих блоках.
Есть договоренность определять, по меньшей мере, какие области присутствуют только в одном из изображений и какие присутствуют в обоих, но можно дополнительно иметь устройства, которые способны применять критерий согласования для областей пикселей.
Также может быть устройство 314 карты глубин, способное генерировать и/или анализировать и/или усовершенствовать карты глубин (или подобное представление, аналогичное карте рассогласований) или определяемые с помощью устройства 312 оценки рассогласования, или извлеченные из входящего сигнала камеры, содержащего, например, данные дальности. По выбору может быть введено устройство 316 визуализации, которое может генерировать, например, промежуточные виды таким образом, что студийный артист может проверить воздействие любого изменения и/или более эффективного кодирования. Это делается через устройство 318 интерфейса пользователя, которое может позволить, например, пользователю изменять значения в частичном представлении 223 или изменять его форму (например, делать его больше или меньше). Пользователь также может модифицировать карту 222. Для этого дисплей 335 и пользовательское средство ввода соединены. Это обеспечено устройством, передающим полностью скомпонованный сигнал изображения в сеть 330 через сигнал передачи и средство 339 объединения, которые специалист может найти для подходящей сети (например, преобразование в телевизионный сигнал включает в себя преобразование с повышением передающей частоты, межсетевая передача включает в себя пакетирование, а далее могут быть устройства защиты от ошибок и т.д.).
Не следует интерпретировать функциональную сеть ограниченно, и она предназначена, чтобы также включать в себя, например, передачу устройству памяти или среде хранения через устройство внутренней сети, такое как шина.
Фиг.4 показывает пример приемника 400, который может опять же быть, например, частью персонального компьютера, и который содержит средства для выделения релевантной информации из сигнала изображения, принятого от сети 330, по меньшей мере:
- средство (402), приспособленное для выделения первого изображения (220) значений пикселей, представляющих один или более объектов (110, 112), снятых первой камерой (101);
- средство (404), приспособленное для выделения из сигнала (200) изображения карты, например, карты глубин, соответствующей положениям объекта первого изображения; и
- средство (406), приспособленное для выделения частичного представления (223) второго изображения (224) значений пикселей, представляющих один или более объектов (110, 112), снятых второй камерой (102).
Конечно, могут быть представлены дальнейшие средства, так как приемник (и способ выделения) может отражать любые возможные осуществления для генерации, так что это могут быть, например, средства для выделения дальнейших данных, таких как указатель границы между двумя объектами.
Эта выделенная информация передается восстановителю изображения, который может генерировать, например, полное левое и правое изображение. Устройство 412 восстановления изображения может генерировать, например, промежуточный вид (например, с помощью моно- или двунаправленной интерполяции, или любого другого известного алгоритма), или сигналы, требуемые для двух видов (стерео) на автостереоскопическом дисплее. В зависимости от типа 3D-дисплея и от того, как 3D действительно представлен, эти два устройства могут быть реализованы в различных комбинациях.
Приемник обычно может быть связан с или включен в 3D-дисплей 415, который может визуализировать, по меньшей мере, два вида, или восстановленные сигнал(ы) могут быть сохранены в устройстве 420 памяти, например на записываемом диске 422 или на твердотельном устройстве памяти и т.д.
Компоненты алгоритма, раскрытые в этом тексте, могут быть на практике (полностью или частично) реализованы как аппаратные средства или как программное обеспечение, установленные на специальном цифровом процессоре обработки сигналов или типовом процессоре и т.д.
Под программным компьютерным продуктом следует понимать любую физическую реализацию набора команд, разрешающих процессору общего или специального назначения, после серии этапов загрузки (которые могут включать в себя промежуточные этапы преобразования, возможно, перевод на промежуточный язык и конечный язык процессора) передавать команды в процессор, чтобы выполнять любую характеристическую функцию изобретения. В частности, компьютерный программный продукт может быть реализован как данные на носителе, таком как диск или лента, данные, представленные в памяти, данные, проходящие по сетевому соединению, проводному или беспроводному, или как программный код на бумажном носителе. Помимо программного кода, характеристические данные, требуемые для программы, могут также быть выполнены как компьютерный программный продукт.
Некоторые из этапов, требуемых для обработки способа, могут быть уже представлены в функциональных возможностях процессора вместо описанных в компьютерном программном продукте, например данные входного и выходного этапов.
Следует заметить, что вышеупомянутые варианты осуществления скорее иллюстрируют, чем ограничивают изобретение. Помимо сочетаний элементов изобретения, как скомпоновано в формуле, возможны другие сочетания элементов. Любые сочетания элементов могут быть реализованы в едином специализированном элементе.
Любой ссылочный знак между круглыми скобками в формуле не предназначен для ограничения формулы. Слово «содержащий» не исключает наличия элементов или аспектов, не приведенных в формуле. Наличие элементов, указанных в единственном числе, не исключает наличия множества таких элементов.