RU2689191C2 - Упаковка кадров для кодирования видео - Google Patents

Упаковка кадров для кодирования видео Download PDF

Info

Publication number
RU2689191C2
RU2689191C2 RU2015102754A RU2015102754A RU2689191C2 RU 2689191 C2 RU2689191 C2 RU 2689191C2 RU 2015102754 A RU2015102754 A RU 2015102754A RU 2015102754 A RU2015102754 A RU 2015102754A RU 2689191 C2 RU2689191 C2 RU 2689191C2
Authority
RU
Russia
Prior art keywords
information
pictures
filter
video
spatial
Prior art date
Application number
RU2015102754A
Other languages
English (en)
Other versions
RU2015102754A3 (ru
RU2015102754A (ru
Inventor
Дун ТЯНЬ
Полин ЛАИ
Цзянькон ЛО
Пэн ИНЬ
Original Assignee
Томсон Лайсенсинг
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Томсон Лайсенсинг filed Critical Томсон Лайсенсинг
Publication of RU2015102754A publication Critical patent/RU2015102754A/ru
Publication of RU2015102754A3 publication Critical patent/RU2015102754A3/ru
Application granted granted Critical
Publication of RU2689191C2 publication Critical patent/RU2689191C2/ru

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/194Transmission of image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2383Channel coding or modulation of digital bit-stream, e.g. QPSK modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4347Demultiplexing of several video streams

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

Изобретение относится к вычислительной технике. Технический результат заключается в повышении эффективности кодирования. Устройство для декодирования видео содержит средство для осуществления доступа к видеокартинке, которая включает в себя многочисленные картинки, объединенные в единую картинку; средство для осуществления доступа к информации, которая является частью принятого видеопотока, причем информация, к которой осуществляется доступ, указывает, каким образом объединены многочисленные картинки в видеокартинке, к которой осуществляется доступ, и включает в себя информацию о пространственном перемежении и информацию о дискретизации, при этом информация о пространственном перемежении указывает пространственное перемежение, примененное к многочисленным картинкам при формировании единой картинки, и при этом информация о дискретизации указывает один или более параметров, относящихся к фильтру повышающей дискретизации для восстановления каждой из многочисленных картинок в другое разрешение, причем один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание направления фильтрации; и средство для декодирования видеокартинки для предоставления декодированного представления по меньшей мере одной из многочисленных картинок. 12 н. и 31 з.п. ф-лы, 41 ил., 10 табл.

Description

Перекрестная ссылка на родственные заявки
Эта заявка испрашивает преимущество по каждой из (1) предварительной заявки на выдачу патента США под порядковым № 61/205938, озаглавленной «Spatial Interleaving» («Пространственное перемежение») и поданной 26 января 2009 года (досье поверенного PU090010), и (2) предварительной заявки на выдачу патента США под порядковым № 61/269955, озаглавленной «Communicating Filter Parameters For Frame Packing Applications» («Передача параметров фильтра для приложений упаковки кадров») и поданной 1 июля 2009 года (досье поверенного PU090084). Каждая из этих двух заявок в явной форме включена в материалы настоящей заявки посредством ссылки во всей своей полноте для всех целей.
Эта заявка также родственна международной заявке под № PCT/US2008/004747, озаглавленной «Tiling In Video Encoding And Decoding» («Мозаичное размещение при кодировании и декодировании видео») и имеющей дату международной подачи 11 апреля 2008 года. Эта заявка также идентифицирована в качестве заявки на выдачу патента США под порядковым № 12/450829 (досье поверенного № PU070078).
Область техники
Описаны реализации, которые в целом относятся к областям кодирования и/или декодирования видео.
Уровень техники
С появлением устройств трехмерного (3D) отображения на рынке, в том числе, устройств стереоскопического и автостереоскопического отображения, есть большой спрос на трехмерный контент, который должен быть доступен. Типично, задача исследования состоит в том, чтобы кодировать трехмерный контент, обычно включающий в себя многочисленные проекции и, возможно, также соответствующие карты глубин. Каждый кадр трехмерного контента может требовать, чтобы система обрабатывала огромный объем данных. В типичных применениях трехмерного видео, многопроекционным видеосигналам требуется эффективно передаваться или храниться, например, вследствие ограничений по ширине полосы пропускания, ограничений по памяти и ограничения обработки. Многопроекционное кодирование видео (MVC) расширяет стандарт H.264/усовершенствованного кодирования видео (AVC) с использованием высокоуровневого синтаксиса для содействия кодированию многочисленных проекций. Этот синтаксис помогает в последующей обработке трехмерных изображений процессорами изображений.
H.264/AVC, хотя и разработанный как будто бы для двухмерного видео, также может использоваться для передачи стереоскопического контента посредством применения технологии упаковки кадров. Технология упаковки кадров представлена просто, как изложено ниже: на стороне кодера, две проекции или картинки обычно подвергаются понижающей дискретизации для упаковки в один единственный видеокадр, который затем подается в кодер H.264/AVC для вывода в качестве битового потока; на стороне декодера, битовый поток декодируется, и восстановленный кадр затем распаковывается. Распаковка предоставляет возможность извлечения двух исходных проекций из восстановленного кадра и, обычно, включает в себя операцию повышающей дискретизации для возвращения исходного размера каждой проекции, так что проекции могут воспроизводиться для отображения. Этот подход способен использоваться для двух или более проекций, таких как при многопроекционных изображениях или с информацией о глубине, и тому подобным.
Упаковка кадров может полагаться на существование вспомогательной информации, ассоциативно связанной с кадром и его проекциями. Сообщения дополнительной расширительной информации (SEI) могут использоваться для передачи некоторой информации об упаковке кадров. В качестве примера, в проекте поправки AVC, было предложено, чтобы сообщение SEI использовалось для информирования декодера о различных характеристиках пространственного перемежения упакованной картинки, в том числе, чтобы составляющие картинки формировались посредством шахматного пространственного перемежения. Посредством применения сообщения SEI, можно кодировать подвергнутую шахматному перемежению картинку стереоскопических видеоизображений непосредственно с использованием AVC. Фиг. 26 показывает известный пример шахматного перемежения. До настоящего времени, однако, контент сообщения SEI и контент других высокоуровневых синтаксисов был ограничен передачей информации, релевантной для картинок или проекций, которые были подвергнуты упаковке кадра.
Сущность изобретения
Согласно общему аспекту, кодируется видеокартинка, которая включает в себя многочисленные картинки, объединенные в единую картинку. Генерируется информация, указывающая, каким образом объединены многочисленные картинки в подвергнутой доступу видеокартинке. Сгенерированная информация включает в себя информацию о пространственном перемежении и информацию о дискретизации. Информация о пространственном перемежении указывает пространственное перемежение, примененное к многочисленным картинкам при формировании единой картинки. Информация о дискретизации указывает один или более параметров, относящихся к фильтру повышающей дискретизации для восстановления каждой из многочисленных картинок в требуемое разрешение. Один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание направления фильтрации. Формируется битовый поток, который включает в себя кодированную видеокартинку и сгенерированную информацию. Сгенерированная информация предоставляет информацию для использования при обработке кодированной видеокартинки.
Согласно еще одному общему аспекту, структура видеосигнала или видео включает в себя секцию кодированной картинки и секцию сигнализации. Секция кодированной картинки включает в себя кодирование видеокартинки, видеокартинка включает в себя многочисленные картинки, объединенные в единую картинку. Секция сигнализации включает в себя кодирование сгенерированной информации, указывающей, каким образом объединены многочисленные картинки в подвергнутой доступу видеокартинке. Сгенерированная информация включает в себя информацию о пространственном перемежении и информацию о дискретизации. Информация о пространственном перемежении указывает пространственное перемежение, примененное к многочисленным картинкам при формировании единой картинки. Информация о дискретизации указывает один или более параметров, относящихся к фильтру повышающей дискретизации для восстановления каждой из многочисленных картинок в требуемое разрешение. Один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание направления фильтрации. Сгенерированная информация предоставляет информацию для использования при декодировании кодированной видеокартинки.
Согласно еще одному общему аспекту, подвергается доступу видеокартинка, которая включает в себя многочисленные картинки, объединенные в единую картинку, видеокартинка является частью принятого видеопотока. Подвергается доступу информация, которая является частью принятого видеопотока, подвергнутая доступу информация указывает, каким образом объединены многочисленные картинки в подвергнутой доступу видеокартинке. Подвергнутая доступу информация включает в себя информацию о пространственном перемежении и информацию о дискретизации. Информация о пространственном перемежении указывает пространственное перемежение, примененное к многочисленным картинкам при формировании единой картинки. Информация о дискретизации указывает один или более параметров, относящихся к фильтру повышающей дискретизации для восстановления каждой из многочисленных картинок в требуемое разрешение. Один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание направления фильтрации. Видеокартинка декодируется для предоставления декодированного представления по меньшей мере одной из многочисленных картинок.
Подробности одной или более реализаций изложены на прилагаемых чертежах и в описании, приведенном ниже. Даже если описаны одним конкретным образом, должно быть ясно, что реализации могут быть сконфигурированы или воплощены различными способами. Например, реализация может быть выполнена в качестве способа или воплощена в качестве устройства, сконфигурированного для выполнения набора операций, либо воплощена в качестве устройства, хранящего команды для выполнения набора операций, или воплощена в сигнале. Другие аспекты и признаки станут очевидными из последующего подробного описания, рассмотренного совместно с прилагаемыми чертежами и формулой изобретения.
Краткое описание чертежей
Фиг. 1 - схема, показывающая пример четырех проекций, подвергнутых мозаичному размещению в едином кадре.
Фиг. 2 - схема, показывающая пример четырех проекций, транспонированных и подвергнутых мозаичному размещению в едином кадре.
Фиг. 3 показывает структурную схему для реализации видеокодера, к которому могут быть применены настоящие принципы.
Фиг. 4 показывает структурную схему для реализации видеодекодера, к которому могут быть применены настоящие принципы.
Фиг. 5 - схема последовательности операций для реализации способа для кодирования картинок для множества проекций с использованием стандарта AVC MPEG-4.
Фиг. 6 - схема последовательности операций для реализации способа для декодирования картинок для множества проекций с использованием стандарта AVC MPEG-4.
Фиг. 7 - схема последовательности операций для реализации способа для кодирования картинок для множества проекций и глубин с использованием стандарта AVC MPEG-4.
Фиг. 8 - схема последовательности операций для реализации способа для декодирования картинок для множества проекций и глубин с использованием стандарта AVC MPEG-4.
Фиг. 9 - схема, показывающая пример сигнала глубины.
Фиг. 10 - схема, показывающая пример сигнала глубины, добавленного в качестве мозаики.
Фиг. 11 - схема, показывающая пример 5 проекций, подвергнутых мозаичному размещению в едином кадре.
Фиг. 12 - структурная схема для примерного кодера многопроекционного кодирования видео (MVC), к которому могут быть применены настоящие принципы.
Фиг. 13 - структурная схема для примерного кодера многопроекционного кодирования видео (MVC), к которому могут быть применены настоящие принципы.
Фиг. 14 - схема последовательности операций для реализации способа для обработки картинок для множества проекций при подготовке к кодированию картинок с использованием расширения многопроекционного кодирования видео (MVC) стандарта AVC MPEG-4.
Фиг. 15 - схема последовательности операций для реализации способа для кодирования картинок для множества проекций с использованием расширения многопроекционного кодирования видео (MVC) стандарта AVC MPEG-4.
Фиг. 16 - схема последовательности операций для реализации способа для обработки картинок для множества проекций при подготовке к декодированию картинок с использованием расширения многопроекционного кодирования видео (MVC) стандарта AVC MPEG-4.
Фиг. 17 - схема последовательности операций для реализации способа для декодирования картинок для множества проекций с использованием расширения многопроекционного кодирования видео (MVC) стандарта AVC MPEG-4.
Фиг. 18 - схема последовательности операций для реализации способа для обработки картинок для множества проекций и глубин при подготовке к кодированию картинок с использованием расширения многопроекционного кодирования видео (MVC) стандарта AVC MPEG-4.
Фиг. 19 - схема последовательности операций для реализации способа для кодирования картинок для множества проекций и глубин с использованием расширения многопроекционного кодирования видео (MVC) стандарта AVC MPEG-4.
Фиг. 20 - схема последовательности операций для реализации способа для обработки картинок для множества проекций и глубин при подготовке к декодированию картинок с использованием расширения многопроекционного кодирования видео (MVC) стандарта AVC MPEG-4.
Фиг. 21 - схема последовательности операций для реализации способа для декодирования картинок для множества проекций и глубин с использованием расширения многопроекционного кодирования видео (MVC) стандарта AVC MPEG-4.
Фиг. 22 - схема, показывающая примеры мозаичного размещения на уровне пикселей.
Фиг. 23 показывает структурную схему для реализации устройства обработки видео, к которому могут быть применены настоящие принципы.
Фиг. 24 показывает упрощенную схему для примерной трехмерной видеосистемы.
Фиг. 25 показывают примерные левую и правую карты глубин для изображения из разных опорных проекций.
Фиг. 26 показывает примерную структурную схему для пространственного перемежения двух составляющих картинок в единую картинку или кадр с использованием шахматного перемежения.
Фиг. 27 показывает примерную картинку поперечного пространственного перемежения двух составляющих картинок.
Фиг. 28 показывает примерную картинку верхне-нижнего пространственного перемежения двух составляющих картинок.
Фиг. 29 показывает примерную картинку построчного пространственного перемежения двух составляющих картинок.
Фиг. 30 показывает примерную картинку постолбцового пространственного перемежения двух составляющих картинок.
Фиг. 31 показывает примерную картинку поперечного пространственного перемежения двух составляющих картинок, в котором правая картинка транспонирована горизонтально.
Фиг. 32 показывает примерную картинку верхне-нижнего пространственного перемежения двух составляющих картинок, в котором нижняя картинка транспонирована вертикально.
Фиг. 33 показывает примерную перемеженную картинку или кадр, в котором составляющие картинки представляют формат видео с многослойной глубиной (LDV).
Фиг. 34 показывает примерную перемеженную картинку или кадр, в котором составляющие картинки представляют формат в двух измерениях плюс глубина.
Фиг. 35-38 показывают примерные блок-схемы последовательностей операций разных вариантов осуществления для обработки кодирования и декодирования видеоизображений с использованием сообщений SEI для информации об упаковке пакетов.
Фиг. 39 показывает примерную систему передачи видео, к которой могут быть применены настоящие принципы.
Фиг. 40 показывает примерную систему приема видео, к которой могут быть применены настоящие принципы.
Фиг. 41 показывает примерное устройство обработки видео, к которому могут быть применены настоящие принципы.
Примерные варианты осуществления, изложенные в материалах настоящей заявки, иллюстрируют различные варианты осуществления, и такие примерные варианты осуществления не должны истолковываться в качестве ограничивающих объем этого раскрытия никоим образом.
Подробное описание
Различные реализации направлены на способы и устройство для мозаичного размещения проекций при кодировании и декодировании видео. Таким образом, должно быть принято во внимание, что специалисты в данной области техники будут способны разработать различные компоновки, которые, хотя и не описаны и не показаны в материалах настоящей заявки явным образом, воплощают настоящие принципы и включены в пределы ее сущности и объема.
Все примеры и условные формулировки, изложенные в материалах настоящей заявки, предназначены для образовательных целей, чтобы помочь читателю в понимании представленных принципов и концепций, внесенных изобретателем(ями) в развитие данной области техники, и должны истолковываться в качестве существующих без ограничения такими конкретно изложенными примерами и условиями.
Более того, все выражения в материалах настоящей заявки, излагающие принципы, аспекты и варианты осуществления настоящих принципов, а также их специфичные примеры, предназначены для охвата как конструктивных, так и функциональных их эквивалентов. Дополнительно, подразумевается, что такие эквиваленты включают в себя известные в настоящее время эквиваленты, а также эквиваленты, разработанные в будущем, то есть, любые разработанные элементы, которые выполняют идентичную функцию, независимо от конструкции.
Таким образом, например, специалистами в данной области техники должно приниматься во внимание, что структурные схемы, представленные в материалах настоящей заявки, изображают концептуальные представления иллюстративных компонентов и/или компоновки схем системы. Подобным образом, должно приниматься во внимание, что любые блок-схемы последовательностей операций, схемы последовательностей операций, диаграммы переходов, псевдокод, и тому подобное, изображают различные последовательности операций, которые, по существу, могут быть представлены на машиночитаемых носителях и, значит, выполняться компьютером или процессором, показан или нет такой компьютер или процессор явным образом.
Функции различных элементов, показанных на фигурах, могут обеспечиваться благодаря использованию специализированных аппаратных средств, а также аппаратных средств, допускающих выполнение программного обеспечения при ассоциативной связи с надлежащим программным обеспечением. При обеспечении процессором, функции могут обеспечиваться одиночным выделенным процессором, одиночным совместно используемым процессором или множеством отдельных процессоров, некоторые из которых могут совместно использоваться. Более того, явное использование термина «процессор» или «контроллер» не должно толковаться указывающим исключительно на аппаратные средства, допускающие выполнение программного обеспечения, и может неявно включать в себя, без ограничения, аппаратные средства цифрового сигнального процессора («ЦСП», «DSP»), постоянное запоминающее устройство («ПЗУ», «ROM») для хранения программного обеспечения, оперативное запоминающее устройство («ОЗУ», «RAM») и энергонезависимую память.
Другие аппаратные средства, стандартные и/или специализированные, также могут быть включены в осуществление различных реализаций. Например, любые переключатели, показанные на фигурах, являются всего лишь абстрактными. Их функция может выполняться благодаря работе программной логики, благодаря специализированной логике, благодаря взаимодействию программного управления и специализированной логики, или даже вручную, конкретная технология является выбираемой конструктором в качестве более точно понятной из контекста.
В формуле изобретения из этого документа, любой элемент, выраженный в качестве средства для выполнения предписанной функции, предназначен для охвата любого способа выполнения такой функции, в том числе, например, а) комбинации элементов схемы, которые выполняют такую функцию, или b) программного обеспечения в любой форме, поэтому, включающего в себя аппаратно реализованное программное обеспечение, микрокод или тому подобное, объединенные с надлежащей схемой для выполнения такого программного обеспечения, чтобы выполнять функцию. Настоящим принципам, как определено такой формулой изобретения, свойственно то обстоятельство, что функциональные возможности, предусмотренные различными перечисленными средствами, комбинируются и сведены вместе таким образом, к которому обязывает формула изобретения. Соответственно, считается, что любые средства, которые могут обеспечивать такие функциональные возможности, эквивалентны показанным в материалах настоящей заявки.
Ссылка в описании изобретения на «один из вариантов осуществления» (либо «одну из реализаций») или «вариант осуществления» (либо «реализацию») настоящих принципов означает, что конкретный признак, конструкция, характеристика, и так далее, описанные в связи с вариантом осуществления, включены в по меньшей мере один вариант осуществления настоящих принципов. Таким образом, появление фразы «в одном из вариантов осуществления» или «в варианте осуществления», фигурирующей в различных местах по всему описанию изобретения, не обязательно является всецело указывающим на один и тот же вариант осуществления.
Должно быть принято во внимание, что, несмотря на то, что один или более вариантов осуществления представленных принципов описаны в материалах настоящей заявки относительно стандарта AVC MPEG-4, принципы, описанные в этой заявке, не ограничены только этим стандартом, и, соответственно, могут использоваться по отношению к другим стандартам, рекомендациям и их расширениям, более точно, стандартам, рекомендациям кодирования видео и их расширениям, в том числе, расширениям стандарта AVC MPEG-4, наряду с сохранением сущности принципов этой заявки.
Кроме того, должно быть принято во внимание, что, несмотря на то, что один или более других вариантов осуществления описаны в материалах настоящей заявки относительно расширения многопроекционного кодирования видео стандарта AVC MPEG-4, настоящие принципы не ограничены только этим расширением и/или этим стандартом и, таким образом, могут использоваться по отношению к другим стандартам, рекомендациям кодирования видео и их расширениям, относящимся к многопроекционному кодированию видео, наряду с сохранением сущности принципов этой заявки. Многопроекционное кодирование видео (MVC) является инфраструктурой сжатия для кодирования многопроекционных последовательностей. Последовательность многопроекционного кодирования видео (MVC) является набором из двух или более видеопоследовательностей, которые фиксируют одну и ту же сцену с разных точек обзора.
К тому же, должно быть принято во внимание, что, несмотря на то, что в материалах настоящей заявки описаны один или более других вариантов осуществления, которые используют информацию о глубине по отношению к видеоконтенту, принципы этой заявки не ограничены такими вариантами осуществления и, таким образом, могут быть реализованы другие варианты осуществления, которые не используют информацию о глубине, наряду с сохранением сущности настоящих принципов.
Дополнительно, используемый в материалах настоящей заявки термин «высокоуровневый синтаксис» указывает на синтаксис, присутствующий в битовом потоке, который находится иерархически выше уровня макроблоков. Например, термин высокоуровневый синтаксис, используемый в материалах настоящей заявки, может указывать, но не в качестве ограничения, на синтаксис на уровне заголовка секции, уровне дополнительной расширительной информации (SEI), уровне набора параметров картинки (PPS), уровне набора параметров последовательности (SPS), набора параметров проекции (VPS) и уровне заголовка блока сетевого уровня абстракции (NAL).
В текущей реализации многопроекционного кодирования видео (MVC), основанной на стандарте усовершенствованного кодирования видео (AVC) части 10 стандарта 4 Экспертной группы по движущемуся изображению (MPEG-4) Международной организации по стандартизации/Международной электротехнической комиссии (ISO/IEC)/рекомендациях H.264 Международного союза электросвязи, сектора телекоммуникаций (ITU-T) (в дальнейшем, «стандарт AVC MPEG4/H.264»), справочное программное обеспечение добивается многопроекционного предсказания, кодируя каждую проекцию одиночным кодером и принимая во внимание межпроекционные ссылки. Каждая проекция кодируется в качестве отдельного битового потока кодером при своем исходном разрешении, а позже, все битовые потоки объединяются, чтобы сформировать одиночный битовый поток, который затем декодируется. Каждая проекция создает отдельный декодированный выходной сигнал YUV.
Примерная видеосистема, поддерживающая выработку и использование трехмерных изображений, схематически представлена на фиг. 24. Сторона выработки контента системы показывает фиксацию изображения различными средствами, в том числе, но не в качестве ограничения, стереокамерами, камерами глубины, многочисленными камерами, работающими одновременно, и преобразование двухмерных изображений в трехмерные изображения. Пример информации о карте глубин (например, Z-информации), зафиксированной для левой и правой проекций одной и той же сцены, показан на фиг. 25. Каждый из этих подходов не только фиксирует контент видеоизображения, но некоторые также генерируют определенную информацию о глубине, ассоциативно связанную с записанными видеоизображениями. После обработки и кодирования, вся эта информация доступна для того, чтобы распространяться, передаваться и, в конечном счете, визуализироваться. Метаданные также генерируются с видеоконтентом для использования при последующей визуализации трехмерного видео. Визуализация может происходить с использованием двухмерных систем отображения или трехмерных устройств отображения. Трехмерные устройства отображения могут варьироваться от стереоскопических устройств отображения до много проекционных трехмерных устройств отображения, как показано на фигуре.
Еще один подход для многопроекционного предсказания включает в себя группировку набора проекций в псевдопроекции. В одном из примеров этого подхода, мы можем мозаично размещать картинки из каждых N проекций из суммарных M проекций (подвергнутых одновременной выборке) в большем кадре или суперкадре с возможной понижающей дискретизацией или другими операциями. Обращаясь к фиг. 1, пример четырех проекций, мозаично размещенных в едином кадре, в целом указан номером 100 ссылки. Верхние четыре проекции находятся в своей нормальной ориентации.
Обращаясь к фиг. 2, пример четырех проекций, транспонированных и мозаично размещенных в едином кадре, в целом указан номером 200 ссылки. Верхняя левая проекция находится в своей нормальной ориентации. Верхняя правая проекция транспонирована горизонтально. Нижняя левая проекция транспонирована вертикально. Нижняя правая проекция транспонирована как горизонтально, так и вертикально. Таким образом, если есть четыре проекции, то картинка из каждой проекции компонуется в суперкадре подобно мозаике. Это дает в результате единую некодированную входную последовательность с большим разрешением.
В качестве альтернативы, мы можем осуществлять понижающую дискретизацию изображения для создания меньшего разрешения. Таким образом, мы создаем многочисленные последовательности, каждая из которых включает в себя разные проекции, которые мозаично размещаются вместе. Каждая такая последовательность, в таком случае, формирует псевдопроекцию, где каждая псевдопроекция включает в себя N разных мозаичных проекций. Фиг. 1 показывает одну псевдопроекцию, а фиг. 2 показывает еще одну псевдопроекцию. Эти псевдопроекции затем могут кодироваться с использованием существующих стандартов кодирования видео, таких как стандарт MPEG-2 ISO/IEC и стандарт AVC MPEG-4.
Еще один другой подход к многопроекционному кодированию просто включает в себя независимое кодирование разных проекций с использованием нового стандарта, и, после декодирования, мозаичное размещение проекций, как требуется проигрывателем.
Кроме того, в еще одном подходе, проекции также могут подвергаться мозаичному размещению попиксельным образом. Например, в суперпроекции, которая состоит из четырех проекций, пиксель (x, y) может быть из проекции 0, наряду с тем, что пиксель (x+1, y) может быть из проекции 1, пиксель (x, y+1) может быть из проекции 2, а пиксель (x+1, y+1) может быть из проекции 3.
Многие производители устройств отображения используют такую инфраструктуру компоновки или мозаичного размещения разных проекций в едином кадре, а затем, извлечения из их соответственных местоположений и визуализации их. В таких случаях, нет стандартного способа, чтобы определять, имеет ли битовый поток такое свойство. Таким образом, если система использует способ мозаичного размещения картинок разных проекций в большом кадре, то способ извлечения разных проекций является специализированным.
Однако, нет стандартного способа, чтобы определять, имеет ли битовый поток такое свойство. Мы предлагаем высокоуровневый синтаксис, для того чтобы облегчать визуализатору или проигрывателю извлечение такой информации, для того чтобы содействовать в отображении или другой постобработке. Также возможно, субкартинки имеют разные разрешения, и некоторая повышающая дискретизация может быть необходима, чтобы визуализировать проекцию в конечном счете. Пользователь также может пожелать иметь способ повышающей дискретизации, указанной в высокоуровневом синтаксисе. Дополнительно, также могут передаваться параметры для изменения фокуса глубины.
В варианте осуществления, мы предлагаем новое сообщение дополнительной расширительной информации (SEI) для сигнализации информации о многих проекциях в совместимом со стандартом AVC MPEG-4 потоке, где каждая картинка включает в себя субкартинки, которые принадлежат к разным проекциям. Вариант осуществления, например, предназначен для легкого и удобного отображения многопроекционных видеопотоков на трехмерных (3D) мониторах, которые могут использовать такую инфраструктуру. Концепция может быть распространена на другие стандарты и рекомендации кодирования видео, сигнализирующие такую информацию с использованием высокоуровневого синтаксиса.
Более того, в варианте осуществления, мы предлагаем способ сигнализации того, каким образом следует компоновать проекции перед тем, как они отправлены в многопроекционный видеокодер и/или декодер. Преимущественно, вариант осуществления может приводить к упрощенной реализации многопроекционного кодирования и может давать выгоду в эффективности кодирования. Определенные проекции могут быть собраны вместе и формировать псевдопроекцию или суперпроекцию, а затем, подвергнутая мозаичному размещению суперпроекция обрабатывается как нормальная проекция обычным многопроекционным видекодером и/или декодером, например, согласно основанной на текущем стандарте AVC MPEG-4 реализации многопроекционного кодирования видео. Новый флаг, показанный в таблице 1, предложен в расширении набора параметров последовательности (SPS) многопроекционного кодирования видео, чтобы сигнализировать об использовании технологии псевдопроекций. Вариант осуществления предназначен для легкого и удобного отображения многопроекционных видеопотоков на трехмерных мониторах, которые могут использовать такую инфраструктуру.
Еще один подход к многопроекционному кодированию включает в себя мозаичное размещение картинок из каждой проекции (подвергнутых одновременной выборке) в большем кадре или суперкадре с возможной операцией понижающей дискретизации. Обращаясь к фиг. 1, пример четырех проекций, мозаично размещенных в едином кадре, в целом указан номером 100 ссылки. Обращаясь к фиг. 2, пример четырех проекций, транспонированных и мозаично размещенных в едином кадре, в целом указан номером 200 ссылки. Таким образом, если есть четыре проекции, то картинка из каждой проекции компонуется в суперкадре подобно мозаике. Это дает в результате единую некодированную входную последовательность с большим разрешением. Этот сигнал затем может кодироваться с использованием существующих стандартов кодирования видео, таких как стандарт MPEG-2 ISO/IEC и стандарт AVC MPEG-4.
Обращаясь к фиг. 3, видеокодер, способный к выполнению кодирования видео в соответствии со стандартом AVC MPEG-4, в целом указан номером 300 ссылки.
Видеокодер 300 включает в себя буфер 310 упорядочения кадров, имеющий выход в сигнальной связи с неинвертирующим входом объединителя 385. Выход объединителя 385 соединен по сигнальной связи с первым входом преобразователя и квантователя 325. Выход преобразователя и квантователя 325 соединен по сигнальной связи с первым входом энтропийного кодера 345 и первым входом обратного преобразователя и обратного квантователя 350. Выход энтропийного кодера 345 соединен по сигнальной связи с первым неинвертирующим входом объединителя 390. Выход объединителя 390 соединен по сигнальной связи с первым входом выходного буфера 335.
Первый выход контроллера 305 кодера соединен по сигнальной связи ко второму входу буфера 310 упорядочения кадров, второму входу обратного преобразователя и обратного квантователя 350, входу модуля 315 принятия решения о типе картинки, входу модуля 320 принятия решения о типе макроблока (типа MB), второму входу модуля 360 внутреннего предсказания, второму входу деблокинг-фильтра 365, первому входу компенсатора 370 движения, первому входу блока 375 оценки движения и второму входу буфера 380 опорных картинок.
Второй выход контроллера 305 кодера соединен по сигнальной связи с первым входом блока 330 вставки дополнительной расширительной информации (SEI), вторым входом преобразователя и квантователя 325, вторым входом энтропийного кодера 345, вторым входом выходного буфера 335 и входом блока 340 вставки набора параметров последовательности (SPS) и набора параметров картинки (PPS).
Первый выход модуля 315 принятия решения о типе картинки соединен по сигнальной связи с третьим входом буфера 310 упорядочения кадров. Второй выход модуля 315 принятия решения о типе картинки соединен по сигнальной связи со вторым входом модуля 320 принятия решения о типе макроблока.
Выход блока 340 вставки набора параметров последовательности (SPS) и набора параметров картинки (PPS) соединен по сигнальной связи с третьим неинвертирующим входом объединителя 390. Выход блока 330 вставки SEI соединен по сигнальной связи со вторым неинвертирующим входом объединителя 390.
Выход обратного квантователя и обратного преобразователя 350 соединен по сигнальной связи с первым неинвертирующим входом объединителя 319. Выход объединителя 319 соединен по сигнальной связи с первым входом модуля 360 внутреннего предсказания и первым входом деблокинг-фильтра 365. Выход деблокинг-фильтра 365 соединен по сигнальной связи с первым входом буфера 380 опорных картинок. Выход буфера 380 опорных картинок соединен по сигнальной связи со вторым входом блока 375 оценки движения и с первым входом блока 370 компенсатора движения. Первый выход блока 375 оценки движения соединен по сигнальной связи со вторым входом компенсатора 370 движения. Второй выход блока 375 оценки движения соединен по сигнальной связи с третьим входом энтропийного кодера 345.
Выход компенсатора 370 движения соединен по сигнальной связи с первым входом переключателя 397. Выход модуля 360 внутреннего предсказания соединен по сигнальной связи со вторым входом переключателя 397. Выход модуля 320 принятия решения о типе макроблока соединен по сигнальной связи с третьим входом переключателя 397, для того чтобы предоставлять управляющий входной сигнал на переключатель 397. Третий вход переключателя 397 определяет, должен или нет входной сигнал «данные» переключателя (по сравнению с управляющим входным сигналом, то есть, третьим входом) предоставляться компенсатором 370 движения или модулем 360 внутреннего предсказания. Выход переключателя 397 соединен по сигнальной связи со вторым неинвертирующим входом объединителя 319 и с инвертирующим входом объединителя 385.
Входы буфера 310 упорядочения кадров и контроллера 105 кодера доступны в качестве входа кодера 300, для приема входной картинки 301. Более того, вход блока 330 вставки дополнительной расширительной информации (SEI) доступен в качестве входа кодера 300, для приема метаданных. Выход выходного буфера 335 доступен в качестве выхода кодера 300 для вывода битового потока.
Обращаясь к фиг. 4, видеодекодер, способный к выполнению декодирования видео в соответствии со стандартом AVC MPEG-4, в целом указан номером 400 ссылки.
Видеодекодер 400 включает в себя входной буфер 410, имеющий выход, соединенный по сигнальной связи с первым входом энтропийного декодера 445. Первый выход энтропийного декодера 445 соединен по сигнальной связи с первым входом обратного преобразователя и обратного квантователя 450. Выход обратного преобразователя и обратного квантователя 450 соединен по сигнальной связи со вторым неинвертирующим входом объединителя 425. Выход объединителя 425 соединен по сигнальной связи со вторым входом деблокинг-фильтра 465 и первым входом модуля 460 внутреннего предсказания. Второй выход деблокинг-фильтра 465 соединен по сигнальной связи с первым входом буфера 480 опорных картинок. Выход буфера 480 опорных картинок соединен по сигнальной связи со вторым входом компенсатора 470 движения.
Второй выход энтропийного декодера 445 соединен по сигнальной связи с третьим входом компенсатора 470 движения и первым входом деблокинг-фильтра 465. Третий выход энтропийного декодера 445 соединен по сигнальной связи с входом контроллера 405 декодера. Первый выход контроллера 405 декодера соединен по сигнальной связи со вторым входом энтропийного декодера 445. Второй выход контроллера 405 декодера соединен по сигнальной связи со вторым входом обратного преобразователя и обратного квантователя 450. Третий выход контроллера 405 декодера соединен по сигнальной связи с третьим входом деблокинг-фильтра 465. Четвертый выход контроллера 405 декодера соединен по сигнальной связи со вторым входом модуля 460 внутреннего предсказания, с первым входом компенсатора 470 движения и со вторым входом буфера 480 опорных картинок.
Выход компенсатора 470 движения соединен по сигнальной связи с первым входом переключателя 497. Выход модуля 460 внутреннего предсказания соединен по сигнальной связи со вторым входом переключателя 497. Выход переключателя 497 соединен по сигнальной связи с первым неинвертирующим входом объединителя 425.
Вход входного буфера 410 доступен в качестве входа декодера 400, для приема входного битового потока. Первый выход деблокинг-фильтра 465 доступен в качестве выхода декодера 400, для вывода выходной картинки.
Обращаясь к фиг. 5, примерный способ для кодирования картинок для множества проекций с использованием стандарта AVC MPEG-4 в целом указан номером 500 ссылки.
Способ 500 включает в себя начальный этап 502, который передает управление на функциональный этап 504. Функциональный этап 504 компонует каждую проекцию в конкретный момент времени в качестве субкартинки в мозаичном формате и передает управление на функциональный этап 506. Функциональный этап 506 устанавливает элемент num_coded_views_minus1 синтаксиса и передает управление на функциональный этап 508. Функциональный этап 508 устанавливает элементы org_pic_width_in_mbs_minus1 и org_pic_height_in_mbs_minus1 синтаксиса и передает управление на функциональный этап 510. Функциональный этап 510 устанавливает переменную i равной нулю и передает управление на этап 512 принятия решения. Этап 512 принятия решения определяет, является или нет переменная i меньшей, чем количество проекций. Если так, то управление передается на функциональный этап 514. Иначе, управление передается на функциональный этап 524.
Функциональный этап 514 устанавливает элемент view_id[i] синтаксиса и передает управление на функциональный этап 516. Функциональный этап 516 устанавливает элемент num_parts[view_id[i]] синтаксиса и передает управление на функциональный этап 518. Функциональный этап 518 устанавливает переменную j равной нулю и передает управление на этап 520 принятия решения. Этап 520 принятия решения определяет, является или нет текущее значение переменной j меньшим, чем текущее значение элемента num_parts[view_id[i]] синтаксиса. Если так, то управление передается на функциональный этап 522. Иначе, управление передается на функциональный этап 528.
Функциональный этап 522 устанавливает следующие элементы синтаксиса, инкрементирует переменную j, а затем, возвращает управление на этап 520 принятия решения: depth_flag[view_id[i]][j]; flip_dir[view_id[i]][j]; loc_left_offset[view_id[i]][j]; loc_top_offset[view_id[i]][j]; frame_crop_left_offset[view_id[i]][j]; frame_crop_right_offset[view_id[i]][j]; frame_crop_top_offset[view_id[i]][j]; и frame_crop_bottom_offset[view_id[i]][j].
Функциональный этап 528 устанавливает элемент upsample_view_flag[view_id[i]] синтаксиса и передает управление на этап 530 принятия решения. Этап 530 принятия решения определяет, является или нет текущее значение элемента upsample_view_flag[view_id[i]] синтаксиса равным единице. Если так, то управление передается на функциональный этап 532. Иначе, управление передается на этап 534 принятия решения.
Функциональный этап 532 устанавливает элемент upsample_filter[view_id[i]] синтаксиса и передает управление на этап 534 принятия решения.
Этап 534 принятия решения определяет, является или нет текущее значение элемента upsample_filter[view_id[i]] синтаксиса равным трем. Если так, то управление передается на функциональный этап 536. Иначе, управление передается на функциональный этап 540.
Функциональный этап 536 устанавливает следующие элементы синтаксиса и передает управление на функциональный этап 538: vert_dim[view_id[i]]; hor_dim[view_id[i]]; и quantizer[view_id[i]].
Функциональный этап 538 устанавливает коэффициенты фильтра для каждой компоненты YUV и передает управление на функциональный этап 540.
Функциональный этап 540 инкрементирует переменную i и возвращает управление на этап 512 принятия решения.
Функциональный этап 524 записывает эти элементы синтаксиса в по меньшей мере одно из набора параметров последовательности (SPS), набора параметров картинки (PPS), сообщения дополнительной расширительной информации (SEI), заголовка блока сетевого уровня абстракции (NAL) и заголовка секции, и передает управление на функциональный этап 526. Функциональный этап 526 кодирует каждую картинку с использованием кодека стандарта AVC MPEG-4 или другого кодека с одиночной проекцией и передает управление на конечный этап 599.
Обращаясь к фиг.6, примерный способ для декодирования картинок для множества проекций с использованием стандарта AVC MPEG-4 в целом указан номером 600 ссылки.
Способ 600 включает в себя начальный этап 602, который передает управление на функциональный этап 604. Функциональный этап 604 синтаксически анализирует элементы синтаксиса в по меньшей мере одном из набора параметров последовательности (SPS), набора параметров картинки (PPS), сообщения дополнительной расширительной информации (SEI), заголовка блока сетевого уровня абстракции (NAL) и заголовка секции, и передает управление на функциональный этап 606. Функциональный этап 606 синтаксически анализирует элемент num_coded_views_minus1 синтаксиса и передает управление на функциональный этап 608. Функциональный этап 608 синтаксически анализирует элементы org_pic_width_in_mbs_minus1 и org_pic_height_in_mbs_minus1 синтаксиса и передает управление на функциональный этап 610. Функциональный этап 610 устанавливает переменную i равной нулю и передает управление на этап 612 принятия решения. Этап 612 принятия решения определяет, является или нет переменная i меньшей, чем количество проекций. Если так, то управление передается на функциональный этап 614. Иначе, управление передается на функциональный этап 624.
Функциональный этап 614 синтаксически анализирует элемент view_id[i] синтаксиса и передает управление на функциональный этап 616. Функциональный этап 616 синтаксически анализирует элемент num_parts_minus1[view_id[i]] синтаксиса и передает управление на функциональный этап 618. Функциональный этап 618 устанавливает переменную j равной нулю и передает управление на этап 620 принятия решения. Этап 620 принятия решения определяет, является или нет текущее значение переменной j меньшим, чем текущее значение элемента num_parts[view_id[i]] синтаксиса. Если так, то управление передается на функциональный этап 622. Иначе, управление передается на функциональный этап 628.
Функциональный этап 622 синтаксически анализирует следующие элементы синтаксиса, инкрементирует переменную j, а затем, возвращает управление на этап 620 принятия решения: depth_flag[view_id[i]][j]; flip_dir[view_id[i]][j]; loc_left_offset[view_id[i]][j]; loc_top_offset[view_id[i]][j]; frame_crop_left_offset[view_id[i]][j]; frame_crop_right_offset[view_id[i]][j]; frame_crop_top_offset[view_id[i]][j]; и frame_crop_bottom_offset[view_id[i]][j].
Функциональный этап 628 синтаксически анализирует элемент upsample_view_flag[view_id[i]] синтаксиса и передает управление на этап 630 принятия решения. Этап 630 принятия решения определяет, является или нет текущее значение элемента upsample_view_flag[view_id[i]] синтаксиса равным единице. Если так, то управление передается на функциональный этап 632. Иначе, управление передается на этап 634 принятия решения.
Функциональный этап 632 синтаксически анализирует элемент upsample_filter[view_id[i]] синтаксиса и передает управление на функциональный этап 634.
Этап 634 принятия решения определяет, является или нет текущее значение элемента upsample_filter[view_id[i]] синтаксиса равным трем. Если так, то управление передается на функциональный этап 636. Иначе, управление передается на функциональный этап 640.
Функциональный этап 636 синтаксически анализирует следующие элементы синтаксиса и передает управление на функциональный этап 638: vert_dim[view_id[i]]; hor_dim[view_id[i]]; и quantizer[view_id[i]].
Функциональный этап 638 синтаксически анализирует коэффициенты фильтра для каждой компоненты YUV и передает управление на функциональный этап 640.
Функциональный этап 640 инкрементирует переменную i и возвращает управление на этап 612 принятия решения.
Функциональный этап 624 декодирует каждую картинку с использованием кодека стандарта AVC MPEG-4 или другого кодека с одиночной проекцией и передает управление на функциональный этап 626. Функциональный этап 626 выделяет каждую проекцию из картинки с использованием высокоуровневого синтаксиса и передает управление на конечный этап 699.
Обращаясь к фиг. 7, примерный способ для кодирования картинок для множества проекций и глубин с использованием стандарта AVC MPEG-4 в целом указан номером 700 ссылки.
Способ 700 включает в себя начальный этап 702, который передает управление на функциональный этап 704. Функциональный этап 704 компонует каждую проекцию и соответствующую глубину в конкретный момент времени в качестве субкартинки в мозаичном формате и передает управление на функциональный этап 706. Функциональный этап 706 устанавливает элемент num_coded_views_minus1 синтаксиса и передает управление на функциональный этап 708. Функциональный этап 708 устанавливает элементы org_pic_width_in_mbs_minus1 и org_pic_height_in_mbs_minus1 синтаксиса и передает управление на функциональный этап 710. Функциональный этап 710 устанавливает переменную i равной нулю и передает управление на этап 712 принятия решения. Этап 712 принятия решения определяет, является или нет переменная i меньшей, чем количество проекций. Если так, то управление передается на функциональный этап 714. Иначе, управление передается на функциональный этап 724.
Функциональный этап 714 устанавливает элемент view_id[i] синтаксиса и передает управление на функциональный этап 716. Функциональный этап 716 устанавливает элемент num_parts[view_id[i]] синтаксиса и передает управление на функциональный этап 718. Функциональный этап 718 устанавливает переменную j равной нулю и передает управление на этап 720 принятия решения. Этап 720 принятия решения определяет, является или нет текущее значение переменной j меньшим, чем текущее значение элемента num_parts[view_id[i]] синтаксиса. Если так, то управление передается на функциональный этап 722. Иначе, управление передается на функциональный этап 728.
Функциональный этап 722 устанавливает следующие элементы синтаксиса, инкрементирует переменную j, а затем, возвращает управление на этап 720 принятия решения: depth_flag[view_id[i]][j]; flip_dir[view_id[i]][j]; loc_left_offset[view_id[i]][j]; loc_top_offset[view_id[i]][j]; frame_crop_left_offset[view_id[i]][j]; frame_crop_right_offset[view_id[i]][j]; frame_crop_top_offset[view_id[i]][j]; и frame_crop_bottom_offset[view_id[i]][j].
Функциональный этап 728 устанавливает элемент upsample_view_flag[view_id[i]] синтаксиса и передает управление на этап 730 принятия решения. Этап 730 принятия решения определяет, является или нет текущее значение элемента upsample_view_flag[view_id[i]] синтаксиса равным единице. Если так, то управление передается на функциональный этап 732. Иначе, управление передается на этап 734 принятия решения.
Функциональный этап 732 устанавливает элемент upsample_filter[view_id[i]] синтаксиса и передает управление на этап 734 принятия решения.
Этап 734 принятия решения определяет, является или нет текущее значение элемента upsample_filter[view_id[i]] синтаксиса равным трем. Если так, то управление передается на функциональный этап 736. Иначе, управление передается на функциональный этап 740.
Функциональный этап 736 устанавливает следующие элементы синтаксиса и передает управление на функциональный этап 738: vert_dim[view_id[i]]; hor_dim[view_id[i]]; и quantizer[view_id[i]].
Функциональный этап 738 устанавливает коэффициенты фильтра для каждой компоненты YUV и передает управление на функциональный этап 740.
Функциональный этап 740 инкрементирует переменную i и возвращает управление на этап 712 принятия решения.
Функциональный этап 724 записывает эти элементы синтаксиса в по меньшей мере одно из набора параметров последовательности (SPS), набора параметров картинки (PPS), сообщения дополнительной расширительной информации (SEI), заголовка блока сетевого уровня абстракции (NAL) и заголовка секции, и передает управление на функциональный этап 726. Функциональный этап 726 кодирует каждую картинку с использованием кодека стандарта AVC MPEG-4 или другого кодека с одиночной проекцией и передает управление на конечный этап 799.
Обращаясь к фиг. 8, примерный способ для декодирования картинок для множества проекций и глубин с использованием стандарта AVC MPEG-4 в целом указан номером 800 ссылки.
Способ 800 включает в себя начальный этап 802, который передает управление на функциональный этап 804. Функциональный этап 804 синтаксически анализирует элементы синтаксиса в по меньшей мере одном из набора параметров последовательности (SPS), набора параметров картинки (PPS), сообщения дополнительной расширительной информации (SEI), заголовка блока сетевого уровня абстракции (NAL) и заголовка секции, и передает управление на функциональный этап 806.
Функциональный этап 806 синтаксически анализирует элемент num_coded_views_minus1 синтаксиса и передает управление на функциональный этап 808. Функциональный этап 808 синтаксически анализирует элементы org_pic_width_in_mbs_minus1 и org_pic_height_in_mbs_minus1 синтаксиса и передает управление на функциональный этап 810. Функциональный этап 810 устанавливает переменную i равной нулю и передает управление на этап 812 принятия решения. Этап 812 принятия решения определяет, является или нет переменная i меньшей, чем количество проекций. Если так, то управление передается на функциональный этап 814. Иначе, управление передается на функциональный этап 824.
Функциональный этап 814 синтаксически анализирует элемент view_id[i] синтаксиса и передает управление на функциональный этап 816. Функциональный этап 816 синтаксически анализирует элемент num_parts_minus1[view_id[i]] синтаксиса и передает управление на функциональный этап 818. Функциональный этап 818 устанавливает переменную j равной нулю и передает управление на этап 820 принятия решения. Этап 820 принятия решения определяет, является или нет текущее значение переменной j меньшим, чем текущее значение элемента num_parts[view_id[i]] синтаксиса. Если так, то управление передается на функциональный этап 822. Иначе, управление передается на функциональный этап 828.
Функциональный этап 822 синтаксически анализирует следующие элементы синтаксиса, инкрементирует переменную j, а затем, возвращает управление на этап 820 принятия решения: depth_flag[view_id[i]][j]; flip_dir[view_id[i]][j]; loc_left_offset[view_id[i]][j]; loc_top_offset[view_id[i]][j]; frame_crop_left_offset[view_id[i]][j]; frame_crop_right_offset[view_id[i]][j]; frame_crop_top_offset[view_id[i]][j]; и frame_crop_bottom_offset[view_id[i]][j].
Функциональный этап 828 синтаксически анализирует элемент upsample_view_flag[view_id[i]] синтаксиса и передает управление на этап 830 принятия решения. Этап 830 принятия решения определяет, является или нет текущее значение элемента upsample_view_flag[view_id[i]] синтаксиса равным единице. Если так, то управление передается на функциональный этап 832. Иначе, управление передается на этап 834 принятия решения.
Функциональный этап 832 синтаксически анализирует элемент upsample_filter[view_id[i]] синтаксиса и передает управление на функциональный этап 834.
Этап 834 принятия решения определяет, является или нет текущее значение элемента upsample_filter[view_id[i]] синтаксиса равным трем. Если так, то управление передается на функциональный этап 836. Иначе, управление передается на функциональный этап 840.
Функциональный этап 836 синтаксически анализирует следующие элементы синтаксиса и передает управление на функциональный этап 838: vert_dim[view_id[i]]; hor_dim[view_id[i]]; и quantizer[view_id[i]].
Функциональный этап 838 синтаксически анализирует коэффициенты фильтра для каждой компоненты YUV и передает управление на функциональный этап 840.
Функциональный этап 840 инкрементирует переменную i и возвращает управление на этап 812 принятия решения.
Функциональный этап 824 декодирует каждую картинку с использованием кодека стандарта AVC MPEG-4 или другого кодека с одиночной проекцией и передает управление на функциональный этап 826. Функциональный этап 826 выделяет каждую проекцию и соответствующую глубину из картинки с использованием высокоуровневого синтаксиса и передает управление на функциональный этап 827. Функциональный этап 827 потенциально выполняет синтез проекции с использованием извлеченных сигналов проекции и глубины, и передает управление на конечный этап 899.
Что касается глубины, используемой на фиг. 7 и 8, фиг. 9 показывает пример сигнала 900 глубины, где глубина предоставляется в качестве значения пикселя для каждого соответствующего местоположения изображения (не показано). Кроме того, фиг. 10 показывает пример двух сигналов глубины, включенных в мозаику 1000. Верхний правый участок мозаики 1000 является сигналом глубины, имеющим значения глубины, соответствующие изображению сверху слева мозаики 1000. Нижний правый участок мозаики 1000 является сигналом глубины, имеющим значения глубины, соответствующие изображению снизу слева мозаики 1000.
Обращаясь к фиг. 11, пример 5 проекций, мозаично размещенных в едином кадре, в целом указан номером 1100 ссылки. Верхние четыре проекции находятся в нормальной ориентации. Пятая проекция также находится в нормальной ориентации, но разделена на два участка по низу мозаики 1100. Левый участок пятой проекции показывает «верх» пятой проекции, а правый участок пятой проекции показывает «низ» пятой проекции.
Обращаясь к фиг. 12, примерный кодер многопроекционного кодирования видео (MVC) в целом указан номером 1200 ссылки. Кодер 1200 включает в себя объединитель 1205, имеющий выход, соединенный по сигнальной связи с входом преобразователя 1210. Выход преобразователя 1210 соединен по сигнальной связи с входом квантователя 1215. Выход квантователя 1215 соединен по сигнальной связи с входом энтропийного кодера 1220 и входом обратного квантователя 1225. Выход обратного квантователя 1225 соединен по сигнальной связи с входом обратного преобразователя 1230. Выход обратного преобразователя 1230 соединен по сигнальной связи с первым неинвертирующим входом объединителя 1235. Выход объединителя 1235 соединен по сигнальной связи с входом внутреннего предсказателя 1245 и входом деблокинг-фильтра 1250. Выход деблокинг-фильтра 1250 соединен по сигнальной связи с входом хранилища 1255 опорных картинок (для проекции i). Выход хранилища 1255 опорных картинок соединен по сигнальной связи с первым входом компенсатора 1275 движения и первым входом блока 1280 оценки движения. Выход блока 1280 оценки движения соединен по сигнальной связи со вторым входом компенсатора 1275 движения.
Выход хранилища 1260 опорных картинок (для других проекций) соединен по сигнальной связи с первым входом блока 1270 оценки несоразмерности и первым входом компенсатора 1265 несоразмерности. Выход блока 1270 оценки несоразмерности соединен по сигнальной связи со вторым входом компенсатора 1265 несоразмерности.
Выход энтропийного декодера 1220 доступен в качестве выхода кодера 1200. Неинвертирующий вход объединителя 1205 доступен в качестве входа кодера 1200 и соединен по сигнальной связи со вторым входом блока 1270 оценки несоразмерности и вторым входом блока 1280 оценки движения. Выход переключателя 1285 соединен по сигнальной связи со вторым неинвертирующим входом объединителя 1235 и с инвертирующим входом объединителя 1205. Переключатель 1285 включает в себя первый вход, соединенный по сигнальной связи с выходом компенсатора 1275 движения, второй вход, соединенный по сигнальной связи с выходом компенсатора 1265 несоразмерности, и третий вход, соединенный по сигнальной связи с выходом внутреннего предсказателя 1245.
Модуль 1240 принятия решения о режиме имеет выход, присоединенный к переключателю 1285 для управления, какой вход выбран переключателем 1285.
Обращаясь к фиг. 13, примерный декодер многопроекционного кодирования видео (MVC) в целом указан номером 1300 ссылки. Декодер 1300 включает в себя энтропийный декодер 1305, имеющий выход, соединенный по сигнальной связи с входом обратного квантователя 1310. Выход обратного квантователя соединен по сигнальной связи с входом обратного преобразователя 1315. Выход обратного преобразователя 1315 соединен по сигнальной связи с первым неинвертирующим входом объединителя 1320. Выход объединителя 1320 соединен по сигнальной связи с входом деблокинг-фильтра 1325 и входом внутреннего предсказателя 1330. Выход деблокинг-фильтра 1325 соединен по сигнальной связи с входом хранилища 1340 опорных картинок (для проекции i). Выход хранилища 1340 опорных картинок соединен по сигнальной связи с первым входом компенсатора 1335 движения.
Выход хранилища 1345 опорных картинок (для других проекций) соединен по сигнальной связи с первым входом компенсатора 1350 несоразмерности.
Вход энтропийного кодера 1305 доступен в качестве входа в декодер 1300 для приема остаточного битового потока. Более того, вход модуля 1360 режима также доступен в качестве входа в декодер 1300, для приема управляющего синтаксиса, чтобы управлять тем, какой вход выбран переключателем 1355. Кроме того, второй вход компенсатора 1335 движения доступен в качестве входа декодера 1300, для приема векторов движения. К тому же, второй вход компенсатора 1350 несоразмерности доступен в качестве входа в декодер 1300, для приема векторов несоразмерности.
Выход переключателя 1355 соединен по сигнальной связи со вторым неинвертирующим входом объединителя 1320. Первый вход переключателя 1355 соединен по сигнальной связи с выходом компенсатора 1350 несоразмерности. Второй вход переключателя 1355 соединен по сигнальной связи с выходом компенсатора 1335 движения. Третий вход переключателя 1355 соединен по сигнальной связи с выходом внутреннего предсказателя 1330. Выход модуля 1360 режима соединен по сигнальной связи с переключателем 1355 для управления, какой вход выбран переключателем 1355. Выход деблокинг-фильтра 1325 доступен в качестве выхода декодера 1300.
Обращаясь к фиг. 14, примерный способ для обработки картинок для множества проекций при подготовке к кодированию картинок с использованием расширения многопроекционного кодирования видео (MVC) стандарта AVC MPEG-4 в целом указан номером 1400 ссылки.
Способ 1400 включает в себя начальный этап 1405, который передает управление на функциональный этап 1410. Функциональный этап 1410 компонует каждые N проекций, в числе суммарных M проекций, в конкретный момент времени в качестве суперкартинки в мозаичном формате и передает управление на функциональный этап 1415. Функциональный этап 1415 устанавливает элемент num_coded_views_minus1 синтаксиса и передает управление на функциональный этап 1420. Функциональный этап 1420 устанавливает элемент view_id[i] синтаксиса для всех (num_coded_views_minus1 + 1) проекций и передает управление на функциональный этап 1425. Функциональный этап 1425 устанавливает информацию о зависимости межпроекционных ссылок для картинок привязки и передает управление на функциональный этап 1430. Функциональный этап 1430 устанавливает информацию о зависимости межпроекционных ссылок для картинок не привязки и передает управление на функциональный этап 1435. Функциональный этап 1435 устанавливает элемент pseudo_view_present_flag синтаксиса и передает управление на этап 1440 принятия решения. Этап 1440 принятия решения определяет, является или нет текущее значение элемента pseudo_view_present_flag синтаксиса равным истине. Если так, то управление передается на функциональный этап 1445. Иначе, управление передается на конечный этап 1499.
Функциональный этап 1445 устанавливает следующие элементы синтаксиса и передает управление на функциональный этап 1450: tiling_mode; org_pic_width_in_mbs_minus1; и org_pic_height_in_mbs_minus1. Функциональный этап 1450 вызывает элемент pseudo_view_info(view_id) синтаксиса для каждой кодированной проекции и передает управление на конечный этап 1499.
Обращаясь к фиг. 15, примерный способ для кодирования картинок для множества проекций с использованием расширения многопроекционного кодирования видео (MVC) стандарта AVC MPEG-4 в целом указан номером 1500 ссылки.
Способ 1500 включает в себя начальный этап 1502, который получает входной параметр pseudo_view_id и передает управление на функциональный этап 1504. Функциональный этап 1504 устанавливает элемент num_sub_views_minus1 синтаксиса и передает управление на функциональный этап 1506. Функциональный этап 1506 устанавливает переменную i равной нулю и передает управление на этап 1508 принятия решения. Этап 1508 принятия решения определяет, является или нет переменная i меньшей, чем количество подпроекций. Если так, то управление передается на функциональный этап 1510. Иначе, управление передается на функциональный этап 1520.
Функциональный этап 1510 устанавливает элемент sub_view_id[i] синтаксиса и передает управление на функциональный этап 1512. Функциональный этап 1512 устанавливает элемент num_parts_minus1[sub_view_id[i]] синтаксиса и передает управление на функциональный этап 1514. Функциональный этап 1514 устанавливает переменную j равной нулю и передает управление на этап 1516 принятия решения. Этап 1516 принятия решения определяет, является или нет переменная j меньшей, чем элемент num_parts_minus1[sub_view_id[i]] синтаксиса. Если так, то управление передается на функциональный этап 1518. Иначе, управление передается на этап 1522 принятия решения.
Функциональный этап 1518 устанавливает следующие элементы синтаксиса, инкрементирует переменную j и возвращает управление на этап 1516 принятия решения: loc_left_offset[sub_view_id[i]][j]; loc_top_offset[sub_view_id[i]][j]; frame_crop_left_offset[sub_view_id[i]][j]; frame_crop_right_offset[sub_view_id[i]][j]; frame_crop_top_offset[sub_view_id[i]][j]; и frame_crop_bottom_offset[sub_view_id[i][j].
Функциональный этап 1520 кодирует текущую картинку для текущей проекции с использованием многопроекционного кодирования видео (MVC) и передает управление на функциональный этап 1599.
Этап 1522 принятия решения определяет, равен или нет нулю элемент tiling_mode синтаксиса. Если так, то управление передается на функциональный этап 1524. Иначе, управление передается на функциональный этап 1538.
Функциональный этап 1524 устанавливает элемент flip_dir[sub_view_id[i]] синтаксиса и элемент upsample_view_flag[sub_view_id[i]] синтаксиса, и передает управление на этап 1526 принятия решения. Этап 1526 принятия решения определяет, является или нет текущее значение элемента upsample_view_flag[sub_view_id[i]] синтаксиса равным единице. Если так, то управление передается на функциональный этап 1528. Иначе, управление передается на этап 1530 принятия решения.
Функциональный этап 1528 устанавливает элемент upsample_filter[sub_view_id[i]] синтаксиса и передает управление на функциональный этап 1530. Этап 1530 принятия решения определяет, является или нет значение элемента upsample_filter[sub_view_id[i]] синтаксиса равным трем. Если так, управление передается на функциональный этап 1532. Иначе, управление передается на функциональный этап 1536.
Функциональный этап 1532 устанавливает следующие элементы синтаксиса и передает управление на функциональный этап 1534: vert_dim[sub_view_id[i]]; hor_dim[sub_view_id[i]]; и quantizer[sub_view_id[i]]. Функциональный этап 1534 устанавливает коэффициенты фильтра для каждой компоненты YUV и передает управление на функциональный этап 1536.
Функциональный этап 1536 инкрементирует переменную i и возвращает управление на этап 1508 принятия решения.
Функциональный этап 1538 устанавливает элемент pixel_dist_x[sub_view_id[i]] синтаксиса и элемент flip_dist_y[sub_view_id[i]] синтаксиса, и передает управление на функциональный этап 1540. Функциональный этап 1540 устанавливает переменную j равной нулю и передает управление на этап 1542 принятия решения. Этап 1542 принятия решения определяет, является или нет текущее значение переменной j меньшим, чем текущее значение элемента num_parts[sub_view_id[i]] синтаксиса. Если так, то управление передается на функциональный этап 1544. Иначе, управление передается на функциональный этап 1536.
Функциональный этап 1544 устанавливает элемент num_pixel_tiling_filter_coeffs_minus1[sub_view_id[i]] синтаксиса и передает управление на функциональный этап 1546. Функциональный этап 1546 устанавливает коэффициенты для всех фильтров мозаичного размещения пикселей и передает управление на функциональный этап 1536.
Обращаясь к фиг. 16, примерный способ для обработки картинок для множества проекций при подготовке к кодированию картинок с использованием расширения многопроекционного декодирования видео (MVC) стандарта AVC MPEG-4 в целом указан номером 1600 ссылки.
Способ 1600 включает в себя начальный этап 1605, который передает управление на функциональный этап 1615. Функциональный этап 1615 синтаксически анализирует элемент num_coded_views_minus1 синтаксиса и передает управление на функциональный этап 1620. Функциональный этап 1620 синтаксически анализирует элемент view_id[i] синтаксиса для всех (num_coded_views_minus1 + 1) проекций и передает управление на функциональный этап 1625. Функциональный этап 1625 синтаксически анализирует информацию о зависимости межпроекционных ссылок для картинок привязки и передает управление на функциональный этап 1630. Функциональный этап 1630 синтаксически анализирует информацию о зависимости межпроекционных ссылок для картинок не привязки и передает управление на функциональный этап 1635. Функциональный этап 1635 синтаксически анализирует элемент pseudo_view_present_flag синтаксиса и передает управление на этап 1640 принятия решения. Этап 1640 принятия решения определяет, является или нет текущее значение элемента pseudo_view_present_flag синтаксиса равным истине. Если так, то управление передается на функциональный этап 1645. Иначе, управление передается на конечный этап 1699.
Функциональный этап 1645 синтаксически анализирует следующие элементы синтаксиса и передает управление на функциональный этап 1650: tiling_mode; org_pic_width_in_mbs_minus1; и org_pic_height_in_mbs_minus1. Функциональный этап 1650 вызывает элемент pseudo_view_info(view_id) синтаксиса для каждой кодированной проекции и передает управление на конечный этап 1699.
Обращаясь к фиг. 17, примерный способ для декодирования картинок для множества проекций с использованием расширения многопроекционного кодирования видео (MVC) стандарта AVC MPEG-4 в целом указан номером 1700 ссылки.
Способ 1700 включает в себя начальный этап 1702, который начинается с входного параметра pseudo_view_id и передает управление на функциональный этап 1704. Функциональный этап 1704 синтаксически анализирует элемент num_sub_views_minus1 синтаксиса и передает управление на функциональный этап 1706. Функциональный этап 1706 устанавливает переменную i равной нулю и передает управление на этап 1708 принятия решения. Этап 1708 принятия решения определяет, является или нет переменная i меньшей, чем количество подпроекций. Если так, то управление передается на функциональный этап 1710. Иначе, управление передается на функциональный этап 1720.
Функциональный этап 1710 синтаксически анализирует элемент sub_view_id[i] синтаксиса и передает управление на функциональный этап 1712. Функциональный этап 1712 синтаксически анализирует элемент num_parts_minus1[sub_view_id[i]] синтаксиса и передает управление на функциональный этап 1714. Функциональный этап 1714 устанавливает переменную j равной нулю и передает управление на этап 1716 принятия решения. Этап 1716 принятия решения определяет, является или нет переменная j меньшей, чем элемент num_parts_minus1[sub_view_id[i]] синтаксиса. Если так, то управление передается на функциональный этап 1718. Иначе, управление передается на этап 1722 принятия решения.
Функциональный этап 1718 устанавливает следующие элементы синтаксиса, инкрементирует переменную j и возвращает управление на этап 1716 принятия решения: loc_left_offset[sub_view_id[i]][j]; loc_top_offset[sub_view_id[i]][j]; frame_crop_left_offset[sub_view_id[i]] [j]; frame_crop_right_offset[sub_view_id[i]][j]; frame_crop_top_offset[sub_view_id[i]][j]; и frame_crop_bottom_offset[sub_view_id[i][j].
Функциональный этап 1720 декодирует текущую картинку для текущей проекции с использованием многопроекционного кодирования видео (MVC) и передает управление на функциональный этап 1721. Функциональный этап 1721 выделяет каждую проекцию из картинки с использованием высокоуровневого синтаксиса и передает управление на конечный этап 1799.
Выделение каждой проекции из декодированной картинки выполняется с использованием высокоуровневого синтаксиса, указанной в битовом потоке. Этот высокоуровневый синтаксис может указывать точное местоположение и возможную ориентацию проекций (и возможную соответствующую глубину), присутствующих в картинке.
Этап 1722 принятия решения определяет, равен или нет нулю элемент tiling_mode синтаксиса. Если так, то управление передается на функциональный этап 1724. Иначе, управление передается на функциональный этап 1738.
Функциональный этап 1724 синтаксически анализирует элемент flip_dir[sub_view_id[i]] синтаксиса и элемент upsample_view_flag[sub_view_id[i]] синтаксиса, и передает управление на этап 1726 принятия решения. Этап 1726 принятия решения определяет, является или нет текущее значение элемента upsample_view_flag[sub_view_id[i]] синтаксиса равным единице. Если так, то управление передается на функциональный этап 1728. Иначе, управление передается на этап 1730 принятия решения.
Функциональный этап 1728 синтаксически анализирует элемент upsample_filter[sub_view_id[i]] синтаксиса и передает управление на этап 1730 принятия решения. Этап 1730 принятия решения определяет, является или нет значение элемента upsample_filter[sub_view_id[i]] синтаксиса равным трем. Если так, управление передается на функциональный этап 1732. Иначе, управление передается на функциональный этап 1736.
Функциональный этап 1732 синтаксически анализирует следующие элементы синтаксиса и передает управление на функциональный этап 1734: vert_dim[sub_view_id[i]]; hor_dim[sub_view_id[i]]; и quantizer[sub_view_id[i]]. Функциональный этап 1734 синтаксически анализирует коэффициенты фильтра для каждой компоненты YUV и передает управление на функциональный этап 1736.
Функциональный этап 1736 инкрементирует переменную i и возвращает управление на этап 1708 принятия решения.
Функциональный этап 1738 синтаксически анализирует элемент pixel_dist_x[sub_view_id[i]] синтаксиса и элемент flip_dist_y[sub_view_id[i]] синтаксиса, и передает управление на функциональный этап 1740. Функциональный этап 1740 устанавливает переменную j равной нулю и передает управление на этап 1742 принятия решения. Этап 1742 принятия решения определяет, является или нет текущее значение переменной j меньшим, чем текущее значение элемента num_parts[sub_view_id[i]] синтаксиса. Если так, то управление передается на функциональный этап 1744. Иначе, управление передается на функциональный этап 1736.
Функциональный этап 1744 синтаксически анализирует элемент num_pixel_tiling_filter_coeffs_minusl[sub_view_id[i]] синтаксиса и передает управление на функциональный этап 1746. Функциональный этап 1776 синтаксически анализирует коэффициенты для всех фильтров мозаичного размещения пикселей и передает управление на функциональный этап 1736.
Обращаясь к фиг. 18, примерный способ для обработки картинок для множества проекций и глубин при подготовке к кодированию картинок с использованием расширения многопроекционного кодирования видео (MVC) стандарта AVC MPEG-4 в целом указан номером 1800 ссылки.
Способ 1800 включает в себя начальный этап 1805, который передает управление на функциональный этап 1810. Функциональный этап 1810 компонует каждые N проекций и карт глубин, в числе суммарных M проекций и карт глубин, в конкретный момент времени в качестве суперкартинки в мозаичном формате и передает управление на функциональный этап 1815. Функциональный этап 1815 устанавливает элемент num_coded_views_minus1 синтаксиса и передает управление на функциональный этап 1820. Функциональный этап 1820 устанавливает элемент view_id[i] синтаксиса для всех (num_coded_views_minus1 + 1) глубин, соответствующих view_id[i], и передает управление на функциональный этап 1825. Функциональный этап 1825 устанавливает информацию о зависимости межпроекционных ссылок для картинок глубины привязки и передает управление на функциональный этап 1830. Функциональный этап 1830 устанавливает информацию о зависимости межпроекционных ссылок для картинок глубины не привязки и передает управление на функциональный этап 1835. Функциональный этап 1835 устанавливает элемент pseudo_view_present_flag синтаксиса и передает управление на этап 1840 принятия решения. Этап 1840 принятия решения определяет, является или нет текущее значение элемента pseudo_view_present_flag синтаксиса равным истине. Если так, то управление передается на функциональный этап 1845. Иначе, управление передается на конечный этап 1899.
Функциональный этап 1845 устанавливает следующие элементы синтаксиса и передает управление на функциональный этап 1850: tiling_mode; org_pic_width_in_mbs_minus1; и org_pic_height_in_mbs_minus1. Функциональный этап 1850 вызывает элемент pseudo_view_info(view_id) синтаксиса для каждой кодированной проекции и передает управление на конечный этап 1899.
Обращаясь к фиг. 19, примерный способ для кодирования картинок для множества проекций и глубин с использованием расширения многопроекционного кодирования видео (MVC) стандарта AVC MPEG-4 в целом указан номером 1900 ссылки.
Способ 1900 включает в себя начальный этап 1902, который передает управление на функциональный этап 1904. Функциональный этап 1904 устанавливает элемент num_sub_views_minus1 синтаксиса и передает управление на функциональный этап 1906. Функциональный этап 1906 устанавливает переменную i равной нулю и передает управление на этап 1908 принятия решения. Этап 1908 принятия решения определяет, является или нет переменная i меньшей, чем количество подпроекций. Если так, то управление передается на функциональный этап 1910. Иначе, управление передается на функциональный этап 1920.
Функциональный этап 1910 устанавливает элемент sub_view_id[i] синтаксиса и передает управление на функциональный этап 1912. Функциональный этап 1912 устанавливает элемент num_parts_minus1[sub_view_id[i]] синтаксиса и передает управление на функциональный этап 1914. Функциональный этап 1914 устанавливает переменную j равной нулю и передает управление на этап 1916 принятия решения. Этап 1916 принятия решения определяет, является или нет переменная j меньшей, чем элемент num_parts_minus1[sub_view_id[i]] синтаксиса. Если так, то управление передается на функциональный этап 1918. Иначе, управление передается на этап 1922 принятия решения.
Функциональный этап 1918 устанавливает следующие элементы синтаксиса, инкрементирует переменную j и возвращает управление на этап 1916 принятия решения: loc_left_offset[sub_view_id[i]][j]; loc_top_offset[sub_view_id[i]][j]; frame_crop_left_offset[sub_view_id[i]] [j]; frame_crop_right_offset[sub_view_id[i]][j]; frame_crop_top_offset[sub_view_id[i]][j]; и frame_crop_bottom_offset[sub_view_id[i][j].
Функциональный этап 1920 кодирует текущую глубину для текущей проекции с использованием многопроекционного кодирования видео (MVC) и передает управление на функциональный этап 1999. Сигнал глубины может кодироваться подобно способу, которым кодируется его соответствующий видеосигнал. Например, сигнал глубины для проекции может быть включен в мозаику, которая включает в себя только другие сигналы глубины или только видеосигналы, или как сигналы глубины, так и видеосигналы. Мозаика (псевдопроекция) затем обрабатывается в качестве одиночной проекции для MVC, и также предположительно есть другие мозаики, которые обрабатываются в качестве других проекций для MVC.
Этап 1922 принятия решения определяет, равен или нет нулю элемент tiling_mode синтаксиса. Если так, то управление передается на функциональный этап 1924. Иначе, управление передается на функциональный этап 1938.
Функциональный этап 1924 устанавливает элемент flip_dir[sub_view_id[i]] синтаксиса и элемент upsample_view_flag[sub_view_id[i]] синтаксиса, и передает управление на этап 1926 принятия решения.
Этап 1926 принятия решения определяет, является или нет текущее значение элемента upsample_view_flag[sub_view_id[i]] синтаксиса равным единице. Если так, то управление передается на функциональный этап 1928. Иначе, управление передается на этап 1930 принятия решения.
Функциональный этап 1928 устанавливает элемент upsample_filter[sub_view_id[i]] синтаксиса и передает управление на этап 1930 принятия решения. Этап 1930 принятия решения определяет, является или нет значение элемента upsample_filter[sub_view_id[i]] синтаксиса равным трем. Если так, управление передается на функциональный этап 1932. Иначе, управление передается на функциональный этап 1936.
Функциональный этап 1932 устанавливает следующие элементы синтаксиса и передает управление на функциональный этап 1934: vert_dim[sub_view_id[i]]; hor_dim[sub_view_id[i]]; и quantizer[sub_view_id[i]]. Функциональный этап 1934 устанавливает коэффициенты фильтра для каждой компоненты YUV и передает управление на функциональный этап 1936.
Функциональный этап 1936 инкрементирует переменную i и возвращает управление на этап 1908 принятия решения.
Функциональный этап 1938 устанавливает элемент pixel_dist_x[sub_view_id[i]] синтаксиса и элемент flip_dist_y[sub_view_id[i]] синтаксиса, и передает управление на функциональный этап 1940. Функциональный этап 1940 устанавливает переменную j равной нулю и передает управление на этап 1942 принятия решения. Этап 1942 принятия решения определяет, является или нет текущее значение переменной j меньшим, чем текущее значение элемента num_parts[sub_view_id[i]] синтаксиса. Если так, то управление передается на функциональный этап 1944. Иначе, управление передается на функциональный этап 1936.
Функциональный этап 1944 устанавливает элемент num_pixel_tiling_filter_coeffs_minus1[sub_view_id[i]] синтаксиса и передает управление на функциональный этап 1946. Функциональный этап 1946 устанавливает коэффициенты для всех фильтров мозаичного размещения пикселей и передает управление на функциональный этап 1936.
Обращаясь к фиг. 20, примерный способ для обработки картинок для множества проекций и глубин при подготовке к декодированию картинок с использованием расширения многопроекционного кодирования видео (MVC) стандарта AVC MPEG-4 в целом указан номером 2000 ссылки.
Способ 2000 включает в себя начальный этап 2005, который передает управление на функциональный этап 2015. Функциональный этап 2015 синтаксически анализирует элемент num_coded_views_minus1 синтаксиса и передает управление на функциональный этап 2020. Функциональный этап 2020 синтаксически анализирует элемент view_id[i] синтаксиса для всех (num_coded_views_minus1 + 1) глубин, соответствующих view_id[i], и передает управление на функциональный этап 2025. Функциональный этап 2025 синтаксически анализирует информацию о зависимости межпроекционных ссылок для картинок глубины привязки и передает управление на функциональный этап 2030. Функциональный этап 2030 синтаксически анализирует информацию о зависимости межпроекционных ссылок для картинок глубины не привязки и передает управление на функциональный этап 2035. Функциональный этап 2035 синтаксически анализирует элемент pseudo_view_present_flag синтаксиса и передает управление на этап 2040 принятия решения. Этап 2040 принятия решения определяет, является или нет текущее значение элемента pseudo_view_present_flag синтаксиса равным истине. Если так, то управление передается на функциональный этап 2045. Иначе, управление передается на конечный этап 2099.
Функциональный этап 2045 синтаксически анализирует следующие элементы синтаксиса и передает управление на функциональный этап 2050: tiling_mode; org_pic_width_in_mbs_minus1; и org_pic_height_in_mbs_minus1. Функциональный этап 2050 вызывает элемент pseudo_view_info(view_id) синтаксиса для каждой кодированной проекции и передает управление на конечный этап 2099.
Обращаясь к фиг. 21, примерный способ для декодирования картинок для множества проекций и глубин с использованием расширения многопроекционного кодирования видео (MVC) стандарта AVC MPEG-4 в целом указан номером 2100 ссылки.
Способ 2100 включает в себя начальный этап 2102, который начинается с входного параметра pseudo_view_id и передает управление на функциональный этап 2104. Функциональный блок 2104 синтаксически анализирует элемент num_sub_views_minus1 синтаксиса и передает управление в функциональный блок 2106. Функциональный этап 2106 устанавливает переменную i равной нулю и передает управление на этап 2108 принятия решения. Этап 2108 принятия решения определяет, является или нет переменная i меньшей, чем количество подпроекций. Если так, то управление передается на функциональный этап 2110. Иначе, управление передается на функциональный этап 2120.
Функциональный этап 2110 синтаксически анализирует элемент sub_view_id[i] синтаксиса и передает управление на функциональный этап 2112. Функциональный этап 2112 синтаксически анализирует элемент num_parts_minus1[sub_view_id[i]] синтаксиса и передает управление на функциональный этап 2114. Функциональный этап 2114 устанавливает переменную j равной нулю и передает управление на этап 2116 принятия решения. Этап 2116 принятия решения определяет, является или нет переменная j меньшей, чем элемент num_parts_minus1[sub_view_id[i]] синтаксиса. Если так, то управление передается на функциональный этап 2118. Иначе, управление передается на этап 2122 принятия решения.
Функциональный этап 2118 устанавливает следующие элементы синтаксиса, инкрементирует переменную j и возвращает управление на этап 2116 принятия решения: loc_left_offset[sub_view_id[i]][j]; loc_top_offset[sub_view_id[i]][j]; frame_crop_left_offset[sub_view_id[i]][j]; frame_crop_right_offset[sub_view_id[i]][j]; frame_crop_top_offset[sub_view_id[i]][j]; и frame_crop_bottom_offset[sub_view_id[i][j].
Функциональный этап 2120 декодирует текущую картинку с использованием многопроекционного кодирования видео (MVC) и передает управление на функциональный этап 2121. Функциональный этап 2121 выделяет каждую проекцию из картинки с использованием высокоуровневого синтаксиса и передает управление на конечный этап 2199. Выделение каждой проекции с использованием высокоуровневого синтаксиса происходит, как описано ранее.
Этап 2122 принятия решения определяет, равен или нет нулю элемент tiling_mode синтаксиса. Если так, то управление передается на функциональный этап 2124. Иначе, управление передается на функциональный этап 2138.
Функциональный этап 2124 синтаксически анализирует элемент flip_dir[sub_view_id[i]] синтаксиса и элемент upsample_view_flag[sub_view_id[i]] синтаксиса, и передает управление на этап 2126 принятия решения. Этап 2126 принятия решения определяет, является или нет текущее значение элемента upsample_view_flag[sub_view_id[i]] синтаксиса равным единице. Если так, то управление передается на функциональный этап 2128. Иначе, управление передается на этап 2130 принятия решения.
Функциональный этап 2128 синтаксически анализирует элемент upsample_filter[sub_view_id[i]] синтаксиса и передает управление на этап 2130 принятия решения. Этап 2130 принятия решения определяет, является или нет значение элемента upsample_filter[sub_view_id[i]] синтаксиса равным трем. Если так, управление передается на функциональный этап 2132. Иначе, управление передается на функциональный этап 2136.
Функциональный этап 2132 синтаксически анализирует следующие элементы синтаксиса и передает управление на функциональный этап 2134: vert_dim[sub_view_id[i]]; hor_dim[sub_view_id[i]]; и quantizer[sub_view_id[i]]. Функциональный этап 2134 синтаксически анализирует коэффициенты фильтра для каждой компоненты YUV и передает управление на функциональный этап 2136.
Функциональный этап 2136 инкрементирует переменную i и возвращает управление на этап 2108 принятия решения.
Функциональный этап 2138 синтаксически анализирует элемент pixel_dist_x[sub_view_id[i]] синтаксиса и элемент flip_dist_y[sub_view_id[i]] синтаксиса, и передает управление на функциональный этап 2140. Функциональный этап 2140 устанавливает переменную j равной нулю и передает управление на этап 2142 принятия решения. Этап 2142 принятия решения определяет, является или нет текущее значение переменной j меньшим, чем текущее значение элемента num_parts[sub_view_id[i]] синтаксиса. Если так, то управление передается на функциональный этап 2144. Иначе, управление передается на функциональный этап 2136.
Функциональный этап 2144 синтаксически анализирует элемент num_pixel_tiling_filter_coeffs_minusl[sub_view_id[i]] синтаксиса и передает управление на функциональный этап 2146. Функциональный этап 2146 синтаксически анализирует коэффициенты для всех фильтров мозаичного размещения пикселей и передает управление на функциональный этап 2136.
Обращаясь к фиг. 22, примеры мозаичного размещения на уровне пикселей в целом указаны номером 2200 ссылки. Фиг. 22 дополнительно описана ниже.
Применением многопроекционного кодирования видео является телевидение со свободной точкой обзора (или FTV). Это применение требует, чтобы пользователь мог свободно переходить между двумя или более проекциями. Для того чтобы достигать этого, «виртуальным» проекциям между двумя проекциями необходимо интерполироваться или синтезироваться. Есть несколько способов для выполнения интерполяции проекций. Один из способов использует глубину для интерполяции/синтеза проекций.
Каждая проекция может иметь ассоциативно связанный сигнал глубины. Таким образом, глубина может считаться еще одной формой видеосигнала. Фиг. 9 показывает пример сигнала 900 глубины. Для того чтобы обеспечить возможность применения, такого как FTV, сигнал глубины передается наряду с видеосигналом. В предложенной инфраструктуре мозаичного размещения, сигнал глубины также может добавляться в качестве одной из мозаик.
Фиг. 10 показывает пример сигналов глубины, добавленных в качестве мозаик. Сигналы/мозаики глубины показаны на правой стороне фиг. 10.
Как только глубина кодируется в качестве мозаики полного кадра, высокоуровневый синтаксис должен указывать, какая мозаика является сигналом глубины, так что визуализатор может использовать сигнал глубины надлежащим образом.
В случае, когда входная последовательность (такая как показанная на фиг. 1) кодируется с использованием кодера стандарта AVC MPEG-4 (или кодера, соответствующего другим стандарту и/или рекомендации кодирования видео), предложенный высокоуровневый синтаксис, например, может присутствовать в наборе параметров последовательности (SPS), наборе параметров картинки (PPS), заголовке секции и/или сообщении дополнительной расширительной информации (SEI). Вариант осуществления предложенного способа показан в таблице 1, где синтаксис присутствует в сообщении дополнительной расширительной информации (SEI).
В случае, когда входные последовательности псевдопроекций (таких как показанные на фиг. 1) кодируются с использованием кодера расширения многопроекционного кодирования видео (MVC) стандарта AVC MPEG-4 (или кодера, соответствующего стандарту многопроекционного кодирования видео по другим стандарту и/или рекомендации кодирования видео), предложенный высокоуровневый синтаксис может присутствовать в SPS, PPS, заголовке секции, сообщении SEI или заданном профиле. Вариант осуществления предложенного способа показан в таблице 1. Таблица 1 показывает элементы синтаксиса, присутствующие в структуре набора параметров последовательности (SPS), в том числе, элементы синтаксиса, реализованные в соответствии с настоящими принципами.
Таблица 1
seq_parameter_set_mvc_extension() { C Дескриптор
num_views_minus_1 ue(v)
for(i=0; i<= num_views_minus_1; i++)
view_id[i] ue(v)
for(i=0; i<= num_views_minus_1; i++) {
num_anchor_refs_10[i] ue(v)
for(j=0; j<num_anchor_refs_10[i]; j++)
anchor_ref_10[i][j] ue(v)
num_anchor_refs_11 [i] ue(v)
for(j=0; j<num_anchor_refs_11[i]; j++)
anchor_ref_11[i][j] ue(v)
}
for(i=0; i <= num_views_minus_1; i++) {
num_non_anchor_refs_10[i] ue(v)
for(j=0; j<num_non_anchor_refs_10[i];j++)
non_anchor_ref_10[i][j] ue(v)
num_non_anchor_refs_11 [i] ue(v)
for(j=0; j<num_non_anchor_refs_11[i]; j++)
non_anchor_ref_11 [i][j] ue(v)
}
pseudo_view_present_flag u(1)
if (pseudo_view_present_flag) {
tiling_mode
org_pic width in_mbs_minus1
org_pic_height_in_mbs_minus1
for (i=0; i<num_views_minus_1; i++)
pseudo_view_info(i);
}
}
Таблица 2 показывает элементы синтаксиса для элемента pseudo_view_info синтаксиса по таблице 1
Таблица 2
pseudo_view_info (pseudo_view_id) { C Дескриптор
num_sub_views_minus_1[pseudo_view_id] 5 ue(v)
if(num sub_views_minus_1 !=0){
for (i=0; i<num_sub_views_minus_1[pseudo_view_id]; i++) {
sub_view_id[i] 5 ue(v)
num_parts_minusl[sub_view_id[i]] 5 ue(v)
for(j=0; j<=num_parts_minusl[sub_view_id[i]]; j++) {
loc_left_offset[sub_view_id[i]] [j] 5 ue(v)
loc_top_offset[sub_view_id[i]] [j] 5 ue(v)
frame_crop_left_offset[sub_view_id[i]] [j] 5 ue(v)
frame_crop_right_offset[sub_view_id[i]] [j] 5 ue(v)
frame crop top offset[sub_view id[i]] [j] 5 ue(v)
frame_crop_bottom_offset[sub_view_id[i]] [j] 5 ue(v)
}
if(tiling_mode= =0) {
flip_dir[sub_view_id[i][j] 5 u(2)
upsample_view_flag[sub_view_id[i]] 5 u(1)
if(upsample_view_flag[sub_view_id[i]])
upsample_filter[sub view_id[i]] 5 u(2)
if(upsample_fiter[sub_view_id[i]] = = 3) {
vert_dim[sub_view_id[i]] 5 ue(v)
hor_dim[sub_view_id[i]] 5 ue(v)
quantizer[sub_view_id[i]] 5 ue(v)
for (yuv=0; yuv< 3; yuv++) {
for (y=0; y<vert_dim[sub_view_id[i]]-1; y ++) {
for (x=0; x<hor_dim[sub_view_id[i]]-1; x ++)
filter_coeffs[sub_view_id[i]] [yuv][y][x] 5 se(v)
}
}
}
}// if(tiling_mode = = 0)
else if (tiling_mode = = 1){
pixel_dist x[sub_view_id[i] ]
pixel_dist_y[sub_view_id[i]]
for(j=0; j<= num_parts[sub_view_id[i]]; j++) {
num_pixel_tiling_filter_coeffs_minus1[sub_view_id[i]][j]
for (coeff_idx=0; coeff_idx <= num_pixel_tiling_filter_coeffs_minus1[sub_view_id[i]][j]; j++)
pixel_tiling_filter_coeffs[sub_view_id[i]][j]
}// for (j=0; j<= num_parts[sub_view_id[i]]; j++)
}// else if (tiling_mode = = 1)
}// for (i=0; i< num_sub_views_minus_1; i++)
}// if (num_sub_views_minus_1 != 0)
}
Семантика элементов синтаксиса, представленных в таблице 1 и таблице 2, описана ниже:
pseudo_view_present_flag (флаг_наличия_псевдопроекции), равный значению «истина», указывает, что некоторая проекция является суперпроекцией многочисленных подпроекций.
tiling_mode (режим_мозаичного_размещения), равный 0, указывает, что подпроекции подвергаются мозаичному размещению на уровне картинок. Значение 1 указывает, что мозаичное размещение выполняется на уровне пикселей.
Новое сообщение SEI могло бы использовать значение для типа полезной нагрузки SEI, который не был использован в стандарте AVC MPEG-4 или расширении стандарта AVC MPEG-4. Новое сообщение SEI включает в себя несколько элементов синтаксиса со следующей семантикой.
num_coded_views_minus1
(количество_кодированных_проекций_минус1) плюс 1 указывает количество кодированных проекций, поддерживаемых битовым потоком. Значение num_coded_views_minus1 находится в объеме от 0 до 1023 включительно.
org_pic_width_in_mbs_minus1 (ширина_картинки_структуры_в_макроблоках_минус1) плюс 1 задает ширину картинки в каждой проекции в единицах макроблоков.
Переменная для ширины картинки в единицах макроблоков выводится, как изложено ниже:
PicWidthInMbs = org_pic_width_in_mbs_minus1 + 1
Переменная для ширины картинки для компоненты яркости выводится, как изложено ниже:
PicWidthInSamplesL = PicWidthInMbs * 16
Переменная для ширины картинки для компоненты цветности выводится, как изложено ниже:
PicWidthInSamplesC = PicWidthInMbs * MbWidthC
org_pic_height_in_mbs_minus1 (высота_картинки_структуры_в_макроблоках_минус1) плюс 1 задает высоту картинки в каждой проекции в единицах макроблоков.
Переменная для высоты картинки в единицах макроблоков выводится, как изложено ниже:
PicHeightInMbs = org_pic_height_in_mbs_minus1 + 1
Переменная для высоты картинки для компоненты яркости выводится, как изложено ниже:
PicHeightInSamplesL = PicHeightInMbs * 16
Переменная для высоты картинки для компоненты цветности выводится, как изложено ниже:
PicHeightInSamplesC = PicHeightInMbs * MbHeightC
num_sub_views_minus1 (количество_подпроекций_минус1) плюс 1 указывает количество кодированных подпроекций, включенных в текущую проекцию. Значение num_coded_views_minus1 находится в объеме от 0 до 1023 включительно.
sub_view_id[i] (идентификатор_подпроекции[i]) задает sub_view_id подпроекции с очередностью декодирования, указанной посредством i.
num_parts[sub_view_id[i]] (количество_частей[идентификатор_подпроекции[i]]) задает количество частей, на которое разделяется картинка у sub_view_id[i].
loc_left_offset[sub_view_id[i]][j] (местное_левое_смещение[идентификатор_подпроекции[i]][j]) и loc_top_offset[sub_view_id[i]][j] (местное_верхнее_смещение[идентификатор_подпроекции[i]][j]) задают местоположения в левом и верхнем смещениях пикселей, соответственно, где текущая часть j расположена в реконструированной картинке проекции с sub_view_id, равным sub_view_id[i].
view_id[i] (идентификатор_проекции[i]) задает view_id проекции с очередностью декодирования, указанной посредством i.
frame_crop_left_offset[view_id[i]][j] (левое_смещение_вырезки_кадра[идентификатор_проекции[i]][j]), frame_crop_right_offset[view_id[i]][j] (правое_смещение_вырезки_кадра[идентификатор_проекции[i]][j]), frame_crop_top_offset[view_id[i]][j] (верхнее_смещение_вырезки_кадра[идентификатор_проекции[i]][j]), и frame_crop_bottom_offset[view_id[i]][j] (нижнее_смещение_вырезки_кадра[идентификатор_проекции[i]][j]) задают выборки картинок в кодированной видеопоследовательности, которые являются частью num_part j и view_id i, в выражении прямоугольных областей, заданных в координатах кадра для вывода.
Переменные CropUnitX и CropUnitY выводятся, как изложено ниже:
- Если chroma_format_idc равно 0, CropUnitX и CropUnitY выводятся, как изложено ниже:
CropUnitX = 1
CropUnitY = 2 - frame_mbs_only_flag
- Иначе (chroma_format_idc равно 1, 2 или 3) CropUnitX и CropUnitY выводятся, как изложено ниже:
CropUnitX = SubWidthC
CropUnitY = SubHeightC * (2 - frame_mbs_only_fiag)
Прямоугольник вырезки кадра включает в себя выборки яркости с горизонтальными координатами кадра из следующего:
с CropUnitX * frame_crop_left_offset по PicWidthInSamplesL - (CropUnitX * frame_crop_right_offset + 1), и вертикальными координатами кадра с CropUnitY * frame_crop_top_offset по (16 * FrameHeightInMbs) - (CropUnitY * frame_crop_bottom_offset + 1) включительно. Значение frame_crop_left_offset будет находиться в диапазоне от 0 до (PicWidthInSamplesL/CropUnitX) - (frame_crop_right_offset + 1) включительно; а значение frame_crop_top_offset будет находиться в диапазоне от 0 до (16 * FrameHeightInMbs/CropUnitY) - (frame_crop_bottom_offset + 1) включительно.
Когда chroma_format_idc не равно 0, соответствующие заданные выборки двух массивов цветности являются выборками, имеющими координаты кадра (x/SubWidthC, y/SubHeightC), где (x, y) - координаты кадра заданных выборок яркости.
Для декодированных областей, заданные выборки декодированной области являются выборками, которые попадают внутрь прямоугольника, заданного в координатах кадра.
num_parts[sub_view_id[i]] (количество_частей[идентификатор_проекции[i]]) задает количество частей, на которое разделяется картинка у view_id[i].
depth_flag[view_id[i]] (флаг_глубины[идентификатор_проекции[i]]) задает, является или нет текущая часть сигналом глубины. Если depth_flag равен 0, то текущая часть не является сигналом глубины. Если depth_flag равен 1, то текущая часть является сигналом глубины, ассоциативно связанным с проекцией, идентифицированной посредством view_id[i].
flip_dir[sub_view_id[i]][j] (направление_транспонирования[идентификатор_подпроекции[i]][j]) задает направление транспонирования для текущей части. flip_dir, равное 0, указывает отсутствие транспонирования, flip_dir, равное 1, указывает транспонирование в горизонтальном направлении, flip_dir, равное 2, указывает транспонирование в вертикальном направлении, а flip_dir, равное 3, указывает транспонирование в горизонтальном и вертикальном направлениях.
flip_dir[view_id[i]][j] (направление_транспонирования[идентификатор_проекции[i]][j]) задает направление транспонирования для текущей части, flip_dir, равное 0, указывает отсутствие транспонирования, flip_dir, равное 1, указывает транспонирование в горизонтальном направлении, flip_dir, равное 2, указывает транспонирование в вертикальном направлении, а flip_dir, равное 3, указывает транспонирование в горизонтальном и вертикальном направлениях.
loc_left_offset[view_id[i]][j] (местное_левое_смещение[идентификатор_проекции[i]][j]), loc_top_offset[view_id[i]][j] (местное_верхнее_смещение[идентификатор_проекции[i]][j]) задают местоположение в смещениях пикселей, где текущая часть j расположена в заключительной реконструированной картинке проекции с view_id, равным view_id[i].
upsample_view_flag[view_id[i]] (флаг_проекции_повышающей_дискретизации[идентификатор_проекции[i]]) указывает, необходимо ли подвергаться повышающей дискретизации картинке, принадлежащей проекции, заданной посредством view_id[i]. upsample_view_flag[view_id[i]], равное 0, предписывает, что картинка с view_id, равным view_id[i], не будет подвергаться повышающей дискретизации. upsample_view_flag[view_id[i]], равное 1, предписывает, что картинка с view_id, равным view_id[i], будет подвергнута повышающей дискретизации.
upsample_filter[view_id[i]] (фильтр_повышающей_дискретизации[идентификатор_проекции[i]]) указывает тип фильтра, который должен использоваться для повышающей дискретизации. upsample_filter[view_id[i]] равно 0 указывает, что должен использоваться 6-отводный фильтр AVC, upsample_filter[view_id[i]] равно 1 указывает, что должен использоваться 4-отводный фильтр SVC, upsample_filter[view_id[i]] равно 2 указывает, что должен использоваться билинейный фильтр, upsample_filter[view_id[i]] равно 3 указывает, что передаются специализированные коэффициенты фильтра. Когда upsample_filter[view_id[i]] не присутствует, он устанавливается в 0. В этом варианте осуществления, мы используем двухмерный специализированный фильтр. Он может быть легко расширен до одномерного фильтра и некоторого другого нелинейного фильтра.
vert_dim[view_id[i]]
(вертикальный_размер[идентификатор_проекции[i]]) задает вертикальный размер специализированного двухмерного фильтра.
hor_dim[view_id[i]]
(горизонтальный_размер[идентификатор_проекции[i]) задает горизонтальный размер специализированного двухмерного фильтра.
quantizer[view_id[i]]
(квантователь[идентификатор_проекции[i]]) задает коэффициент квантования для каждого коэффициента фильтра.
filter_coeffs[view_id[i]][yuv][y][x] (коэффициенты_фильтра[идентификатор_проекции[i]][yuv][y][x]) задает квантованные коэффициенты фильтра, yuv сигнализирует компоненту, к которой применяются коэффициенты фильтра. yuv, равное 0, задает компоненту Y, yuv, равное 1, задает компоненту U, а yuv, равное 2, задает компоненту V.
pixel_dist_x[sub_view_id[i]] (расстояние_в_пикселях_по_оси_x[идентификатор_подпроекции[i]][j] ) и pixel_dist_y[sub_view_id[i]] (расстояние_в_пикселях_по_оси_y[идентификатор_подпроекции[i]][j]) соответственно задают расстояние в горизонтальном направлении и вертикальном направлении в заключительной реконструированной псевдопроекции между соседними пикселями в проекции с sub_view_id, равным sub_view_id[i].
num_pixel_tiling_filter_coeffs_minus1[sub_view_id[i]][j] (количество_коэффициентов_фильтра_мозаичного_размещения_пикселей_минус1[идентификатор_подпроекции[i]][j]) плюс единица указывает количество коэффициентов фильтра, когда режим мозаичного размещения установлен равным 1.
pixel_tiling_filter_coeffs[sub_view_id[i]][j] (коэффициенты_фильтра_мозаичного_размещения_пикселей[идентификатор_подпроекции[i]][j]) сигнализирует коэффициенты фильтра, которые требуются для представления фильтра, который может использоваться для фильтрации подвергнутого мозаичному размещению картинки.
Обращаясь к фиг. 22, два примера, показывающие компоновку псевдопроекции посредством мозаичного размещения пикселей из четырех проекций, соответственно указаны номерами 2210 и 2220 ссылки, соответственно. Четыре проекции совместно указываются номером 2250 ссылки. Значения синтаксиса для первого примера на фиг. 22 предоставлены в таблице 3, приведенной ниже.
Таблица 3
pseudo_view_info (pseudo_view_id) { Значение
num_sub_views_minus l[pseudo_view_id] 3
sub_view_id[0] 0
num_parts_minus1[0] 0
loc_left_offset[0][0] 0
loc_top_offset[0][0] 0
pixel_dist_x[0][0] 0
pixel_dist_y[0][0] 0
sub_view_id[l] 0
num_parts_minusl[l] 0
loc_left_offset[l][0] 1
loc_top_offset[1][0] 0
pixel_dist_x[l][0] 0
pixel_dist_y[l][0] 0
sub_view_id[2] 0
num_parts_minus1 [2] 0
loc_left_offset[2][0] 0
loc_top_offset[2][0] 1
pixel_dist_x[2][0] 0
pixel_dist_y[2][0] 0
sub_view_id[3] 0
num_parts_minus1[3] 0
loc_left_offset[3][0] 1
loc_top_offset[3][0] 1
pixel_dist_x[3][0] 0
pixel_dist_y[3][0] 0
Значения синтаксиса для второго варианта осуществления на фиг.22 являются всецело прежними, за исключением следующих двух элементов синтаксиса: loc_left_offset[3][0], равный 5, и loc_top_offset[3][0], равный 3.
Смещение указывает, что пиксели, соответствующие проекции, должны начинаться в определенном смещенном местоположении. Это показано на фиг.22 (2220). Это может делаться, например, когда две проекции создают изображения, в которых появляются объекты, смещенные с одной проекции на другую. Например, если первая и вторая камеры (представляющие первую и вторую проекции) снимают картинки объекта, объект может появляться смещенным на пять пикселей вправо на второй проекции по сравнению с первой проекцией. Это означает, что пиксель (i-5, j) в первой проекции соответствует пикселю (i, j) по второй проекции. Если пиксели двух проекций мозаично размещены просто пиксель за пикселем, то может не быть большой корреляции между соседними пикселями в мозаике, и выигрыш от пространственного кодирования может быть небольшим. Наоборот, посредством сдвига мозаичного размещения, так что пиксель (i-5, j) из проекции один помещается возле пикселя(i, j) из проекции два, пространственная корреляция может быть увеличена, а пространственное кодирование также вновь может быть увеличено. Это, например, следует потому, что соответствующие пиксели для объекта в первой и второй проекциях мозаично размещены рядом друг с другом.
Таким образом, наличие loc_left_offset и loc_top_offset могут приносить выгоду в эффективности кодирования. Информация о смещении может быть получена внешним средством. Например, информация о положении камер или векторы глобальной несоразмерности между проекциями могут использоваться для определения такой информации о смещении.
В результате смещения, некоторым пикселям в псевдопроекции не назначены значения пикселя из какой-нибудь проекции. Продолжая пример, приведенный выше, при мозаичном размещении пикселя(i-5, j) из проекции один около пикселя(i, j) из проекции два, для значений i=0 … 4 нет пикселя (i-5, j) из проекции один для мозаичного размещения, поэтому, такие пиксели пусты в мозаике. Что касается тех пикселей в псевдопроекции (мозаике), которым не назначены значения пикселей из какой-нибудь проекции, по меньшей мере одна реализация использует процедуру интерполяции, подобную процедуре интерполяции подпикселя при компенсации движения в AVC. То есть, пустые пиксели мозаики могут интерполироваться из соседних пикселей. Такая интерполяция может иметь результатом большую пространственную корреляцию в мозаике и большую эффективность кодирования для мозаики.
При кодировании видео, можем выбирать разный тип кодирования для каждой картинки, такой как I-, P- и B-картинки. Для многопроекционного кодирования видео, в дополнение, определяем привязку для картинок без привязки. В варианте осуществления, предположим, что выбор группировки может производиться на основании типа картинки. Эта информация группировки сигнализируется в высокоуровневом синтаксисе.
Обращаясь к фиг. 11, пример 5 проекций, мозаично размещенных в едином кадре, в целом указан номером 1100 ссылки. В частности, последовательность танцевального зала показана с 5 проекциями, мозаично размещенными в едином кадре. Дополнительно, может быть видно, что пятая проекция разделена на две части, так что она может быть скомпонована в прямоугольном кадре. Здесь, каждая проекция имеет размер QVGA, поэтому, общим размером кадра является 640×600. Поскольку 600 не является кратным 16, оно должно быть расширено до 608.
Для этого примера, возможное сообщение SEI могло бы быть как показанное в таблице 4
Таблица 4
multiview_display_info(payloadSize) { Значение
num_coded_views_minusl 5
org_pic_width_in_mbs_minus1 40
org_pic_height_in_mbs_minus1 30
view_id[0] 0
num_parts[view_id[0]] 1
depth_flag[view_id[0]][0] 0
flip_dir[view_id[0]][0] 0
loc_left_offset[view_id[0]] [0] 0
loc_top_offset[view_id[0]] [0] 0
frame_crop_left_offset[view_id[0]] [0] 0
frame_crop_right_offset[view_id[0]][0] 320
frame_crop_top_offset[view_id[0]][0] 0
frame_crop_bottom_offset[view_id[0]][0] 240
upsample_view_flag[view_id[0]] 1
if(upsample_view_flag[view_id[0]]) {
vert_dim [view_id[0]] 6
hor_dim[view_id[0]] 6
quantizer[view_id[0]] 32
for (yuv=0; yuv<3; yuv++) {
for (y=0; y<vert_dim[view_id[i]]-1; y ++) {
for (x=0; x<hor_dim[view_id[i]]-1; x ++)
filter_coeffs[view_id[i]] [yuv][y][x] XX
view_id[l] 1
num_parts[view_id[1]] 1
depth_flag[view_id[0]][0] 0
flip_dir[view_id[1]][0] 0
loc_left_offset[view_id[1]][0] 0
loc_top_offset[view_id[1]][0] 0
frame_crop_left_offset[view_id[1]][0] 320
frame_crop_right_offset[view_id[1]][0] 640
frame_crop_top_offset[view_id[1]][0] 0
frame_crop_bottom_offset[view_id[1]][0] 320
upsample_view_flag[view_id[1]] 1
if(upsample_view_flag[view_id[1]]) {
vert_dim[view_id[1]] 6
hor_dim[view_id[1]] 6
quantizer[view_id[1]] 32
for (yuv=0; yuv<3; yuv++) {
for (y=0; y<vert_dim[view_id[i]]-1; y ++) {
for (x=0; x<hor_dim[view_id[i]]-1; x ++)
filter_coeffs[view_id[i]] [yuv][y][x] XX
......(similarly for view 2,3)
view_id[4] 4
num_parts[view_id[4]] 2
depth_flag[view_id[0]][0] 0
flip_dir[view_id[4]][0] 0
loc_left_offset[view_id[4]][0] 0
loc_top_offset[view_id[4]][0] 0
frame_crop_left_offset[view_id[4]] [0] 0
frame_crop_right_offset[view_id[4]][0] 320
frame_crop_top_offset[view_id[4]] [0] 480
frame_crop_bottom_offset[view_id[4]][0] 600
flip_dir[view_id[4]][1] 0
loc_left_offset[view_id[4]][1] 0
loc_top_offset[view_id[4]][1] 120
frame_crop_left_offset[view_id[4]][1] 320
frame_crop_right_offset[view_id[4]][1] 640
frame_crop_top_offset[view_id[4]][1] 480
frame_crop_bottom_offset[view_id[4]][1] 600
upsample_view_flag[view_id[4]] 1
if(upsample_view_flag[view_id[4]]) {
vert_dim[view_id[4]] 6
hor_dim[view_id[4]] 6
quantizer[view_id[4]] 32
for (yuv=0; yuv<3; yuv++) {
for (y=0; y<vert_dim[view_id[i]]-1; y ++) {
for (x=0; x<hor_dim[view_id[i]]-1; x ++)
filter_coeffs[view_id[i]] [yuv][y][x] XX
Таблица 5 показывает общую синтаксическую структуру для передачи информации о многочисленных проекциях для примера, показанного в таблице 4.
Таблица 5
multiview_display_info(payloadSize) { C Дескриптор
num_coded_views_minus1 5 ue(v)
org_pic_width_in_mbs_minus1 5 ue(v)
org_pic_height_in_mbs_minus1 5 ue(v)
for(i=0; i<= num_coded_views_minus1; i++) {
view_id[i] 5 ue(v)
num_parts[view_id[i]] 5 ue(v)
for(j=0; j<= num_parts[i]; j++) {
depth_flag[view_id[i]][j]
flip_dir[view_id[i]][j] 5 u(2)
loc_left_offset[view_id[i]][j] 5 ue(v)
loc_top_offset[view_id[i]][j] 5 ue(v)
frame_crop_left_offset[view_id[i]][j] 5 ue(v)
frame_crop_right_offset[view_id[i]][j] 5 ue(v)
frame_crop_top_offset[view_id[i]][j] 5 ue(v)
frame_crop_bottom_offset[view_id[i]][j] 5 ue(v)
}
upsample_view_flag[view_id[i]] 5 u(1)
if(upsample_view_flag[view_id[i]])
upsample_filter[view_id[i]] 5 u(2)
if(upsample_fiter[view_id[i]] == 3) {
vert_dim[view_id[i]] 5 ue(v)
hor_dim[view_id[i]] 5 ue(v)
quantizer[view_id[i]] 5 ue(v)
for (yuv=0; yuv<3; yuv++) {
for (y=0; y<vert_dim[view_id[i]]-1; y ++) {
for (x=0; x<hor_dim[view_id[i]]-1; x ++)
filter_coeffs[view_id[i]] [yuv][y][x] 5 se(v)
}
}
}
}
}
Со ссылкой на фиг. 23, показано устройство 2300 обработки видео. Устройство 2300 обработки видео, например, может быть телевизионной абонентской приставкой или другим устройством, которое принимает кодированное видео и, например, предоставляет декодированное видео для отображения пользователю или для сохранения. Таким образом, устройство 2300 может предоставлять их вывод на телевизор, компьютерный монитор, либо компьютер или другое устройство обработки.
Устройство 2300 включает в себя декодер 2310, который принимает сигнал 2320 данных. Сигнал 2320 данных, например, может включать в себя совместимый с AVC или MVC поток. Декодер 2310 декодирует весь или часть принятого сигнала 2320 и предоставляет, в качестве выходных данных, декодированный видеосигнал 2330 и информацию 2340 о мозаичном размещении. Декодированное видео 2330 и информация 2340 о мозаичном размещении предоставляются в селектор 2350. Устройство 2300 также включает в себя пользовательский интерфейс 2360, который принимает пользовательский ввод 2370. Пользовательский интерфейс 2360 предоставляет сигнал 2380 выбора картинки, на основании пользовательского ввода 2370, в селектор 2350. Сигнал 2380 выбора картинки и пользовательский ввод 2370 указывают, какие из многочисленных картинок пользователь желает иметь отображенными. Селектор 2350 предоставляет выбранную картинку(и) в качестве выходных данных 2390. Селектор 2350 использует информацию 2380 о выборе картинки для выбора, какие картинки в декодированном видео 2330 предоставлять в качестве выходных данных 2390. Селектор 2350 использует информацию 2340 о мозаичном размещении для определения местоположения выбранной картинки(ок) в декодированном видео 2330.
В различных реализациях, селектор 2350 включает в себя пользовательский интерфейс 2360, а в других реализациях, никакой пользовательский интерфейс 2360 не нужен, так как селектор 2350 принимает пользовательский ввод 2370 непосредственно без того, чтобы выполнялась отдельная интерфейсная функция. Селектор 2350, например, может быть реализован в программном обеспечении или в качестве интегральной схемы. Селектор 2350 также может заключать в себе декодер 2310.
В более общем смысле, декодеры различных реализаций, описанных в этой заявке, могут предоставлять декодированные выходные данные, которые включают в себя полностью мозаику. Дополнительно или в качестве альтернативы, декодеры могут предоставлять декодированные выходные данные, которые включают в себя только одну или более выбранных картинок (например, изображений и сигналов глубины) из мозаики.
Как отмечено выше, высокоуровневый синтаксис может использоваться для выполнения сигнализации в соответствии с одним или более вариантами осуществления настоящих принципов. Высокоуровневый синтаксис, например, может использоваться, но не в качестве ограничения, для сигнализации любого из следующего: количества кодированных проекций, присутствующих в большем кадре; исходных ширины и высоты всех проекций; для каждой кодированной проекции, идентификатора проекции, соответствующего проекции; для каждой кодированной проекции, количества частей, на которое делится кадр проекции; для каждой части проекции, направления транспонирования (которым, например, может быть отсутствие транспонирования, только горизонтальное транспонирование, только вертикальное транспонирование или горизонтальное и вертикальное транспонирование); для каждой части проекции, левого положения в пикселях или количестве макроблоков, где находится текущая часть в заключительном кадре для проекции; для каждой части проекции, верхнего положения части в пикселях или количестве макроблоков, где находится текущая часть в заключительном кадре для проекции; для каждой части проекции, левого положения, в текущем большом декодированном/кодированном кадре, окна вырезки в пикселях или количестве макроблоков; для каждой части проекции, правого положения, в текущем большом декодированном/кодированном кадре, окна вырезки в пикселях или количестве макроблоков; для каждой части проекции, верхнего положения, в текущем большом декодированном/кодированном кадре, окна вырезки в пикселях или количестве макроблоков; и для каждой части проекции, нижнего положения, в текущем большом декодированном/кодированном кадре, окна вырезки в пикселях или количестве макроблоков; для каждой кодированной проекции, необходимо ли проекции подвергаться повышающей дискретизации перед выводом (где, если повышающей дискретизации нужно выполняться, высокоуровневый синтаксис может использоваться для указания способа для повышающей дискретизации, в том числе, но не в качестве ограничения, 6-отводный фильтр AVC, 4-отводный фильтр SVC, билинейный фильтр или специализированный одномерный, двумерный линейный или нелинейный фильтр).
Должно быть отмечено, что термины «кодер» и «декодер» подразумевают обобщенные конструкции и не ограничены никакими конкретными функциями или признаками. Например, декодер может принимать модулированную несущую, которая несет кодированный битовый поток, и демодулировать кодированный битовый поток, а также декодировать битовый поток.
Были описаны различные способы. Многие из этих способов детализированы, чтобы дать пространное раскрытие. Однако, отмечено, что предполагаются варианты, которые могут менять один или более специфичных признаков, описанных для этих способов. Кроме того, многие из признаков, которые перечислены, известны в данной области техники и, соответственно, более детально не описаны.
Кроме того, была сделана ссылка на использование высокоуровневого синтаксиса для отправки определенной информации в некоторых реализациях. Должно быть понятно, однако, что другие реализации используют более низкоуровневый синтаксис, или действительно в целом другие механизмы (например, такие как отправка информации в качестве части кодированных данных) для предоставления той же самой информации (или вариантов такой информации).
Различные реализации предусматривают мозаичное размещение и надлежащую сигнализацию, чтобы предоставить многочисленным проекциям (в более общем смысле, картинкам) возможность мозаично размещаться в единую картинку, кодироваться в качестве единой картинки и отправляться в качестве единой картинки. Сигнальная информация может предоставлять постпроцессору возможность извлекать проекции/картинки порознь. К тому же, многочисленные картинки, которые подвергаются мозаичному размещению, могли бы быть проекциями, но по меньшей мере одна из картинок могла бы быть информацией о глубине. Эти реализации могут давать одно или более преимуществ. Например, пользователи могут пожелать отображать многочисленные проекции мозаичным образом, и эти различные реализации дают эффективный способ для кодирования и передачи или сохранения таких проекций посредством их мозаичного размещения перед кодированием и передачей/сохранением их мозаичным образом.
Реализации, которые мозаично размещают многочисленные проекции в контексте AVC и/или MVC, также дают дополнительные преимущества. AVC, по видимому, используется только для одиночной проекции, поэтому, дополнительная проекция не ожидается. Однако, такие основанные на AVC реализации могут предусматривать многочисленные проекции в среде AVC, так как мозаично размещенные проекции, например, могут компоноваться так, что декодер знает, что такие мозаичные картинки принадлежат разным проекциям (например, верхняя левая картинка в псевдопроекции является проекцией 1, верхняя правая картинка является проекцией 2, и т.д.).
Дополнительно, MVC уже включает в себя многочисленные проекции, значит, не ожидается, что многочисленные проекции должны быть включены в одиночную псевдопроекцию. Кроме того, MVC имеет ограничение на количество проекций, которое может поддерживаться, и такие основанные на MVC реализации эффективно увеличивают количество проекций, которые могут поддерживаться посредством предоставления возможности (как в основанных на AVC реализациях) мозаично размещаться дополнительным проекциям. Например, каждая псевдопроекция может соответствовать одной из поддерживаемых проекций MVC, и декодер может знать, что такая «поддерживаемая проекция» фактически включает в себя четыре проекции в предварительно скомпонованном мозаичном порядке. Таким образом, в такой реализации, количество возможных проекций в четыре раза больше количества «поддерживаемых проекций».
В описании, которое следует, более высокоуровневый синтаксис, такой как сообщение SEI, расширяется в различных реализациях, чтобы включать в себя информацию о том, какие из множества режимов пространственного перемежения являются приписываемыми картинкам, которые подвергнуты мозаичному размещению в качестве единой картинки. Пространственное перемежение может происходить во множестве режимов, например, таких как поперечный, верхне-нижнее, вертикальное чередование, горизонтальное чередование и шахматный порядок. Дополнительно, синтаксис расширен, чтобы включать в себя информацию о соотношении касательно контента в подвергнутых мозаичному размещению картинках. Информация о соотношении может включать в себя обозначение левого и правого картинок в стереоскопическом изображении или идентификацию в качестве картинки с глубинами, когда два измерения плюс глубина используются для картинок, или даже указание, что картинки формируют сигнал видео с многослойной глубиной (LDV).
Как уже отмечено выше в материалах настоящей заявки, синтаксис предполагается в качестве реализуемого в любом высокоуровневом синтаксисе помимо сообщения SEI, таком как синтаксис на уровне заголовка секции, уровне набора параметров картинок (PPS), уровне набора параметров последовательности (SPS), уровне набора параметров проекции (VPS) и уровне заголовка блока сетевого уровня абстракции (NAL). Дополнительно, предполагается, что низкоуровневый синтаксис может использоваться для сигнализации информации. Даже еще предполагается, что информация может сигнализироваться вне полосы различными способами.
Синтаксис сообщения SEI для шахматного пространственного перемежения, описанный в вышеупомянутом проекте поправки AVC, определен в таблице 6, как изложено ниже:
Таблица 6
spatially_interleaved_pictures(payloadSize) { C Дескриптор
spatially_interleaved_pictures_id 5 ue(v)
spatially_interleaved_pictures_cancel_flag 5 u(1)
if(!spatially_interleaved_pictures_cancel_flag) {
basic_spatial_interleaving_type_id 5 u(8)
spatially_interleaved_pictures_repetition_period 5 ue(v)
}
additional_extension_flag 5 u(1)
}
Это сообщение SEI информирует декодер, что выходные декодированные картинки сформированы пространственным перемежением многочисленных отдельных картинок с использованием указанной схемы пространственного перемежения. Информация в этом сообщении SEI может использоваться декодером для надлежащего обращенного перемежения и обработки данных картинки для отображения и других целей.
Семантика для определенных значений синтаксиса сообщения SEI пространственно перемеженных картинок в таблице 6 является следующей:
spatially_interleaved_pictures_id (идентификатор_пространственно_перемеженных_картинок) содержит в себе номер идентификации, который может использоваться для идентификации использования сообщения SEI пространственно перемеженных картинок.
spatially_interleaved_pictures_cancel_flag (флаг_отмены_пространственно_перемеженных_картинок), равный 1, указывает, что сообщение SEI пространственно перемеженных картинок отменяет последействие любого предыдущего сообщения SEI пространственно перемеженных картинок в выходной команде. spatially_interleaved_pictures_cancel_flag, равный 0, указывает, что информация о пространственно перемеженных картинках соблюдается.
basic_spatial_interleaving_type_id (идентификатор_основного_типа_пространственного_перемежения) указывает тип пространственного перемежения многочисленных картинок, включенных в единой мозаичной картинке.
basic_spatial_interleaving_type_id, равный 0, указывает, что каждая составляющая плоскость декодированных картинок содержит в себе основанное на «шахматном порядке» перемежение соответствующих плоскостей двух картинок, как проиллюстрировано на фиг. 26.
basic_spatial_interleaving_type_id, равный 1, указывает, что каждая составляющая плоскость декодированных картинок содержит в себе основанное на «шахматном порядке» перемежение соответствующих плоскостей двух картинок, как проиллюстрировано на фиг. 26, и дополнительно указывает, что две составляющих картинки образуют левую и правую проекции сцены стереоскопического обзора, как проиллюстрировано на фиг. 26.
spatially_interleaved_pictures_repetition_period (период_повторения_пространственно_перемеженных_картинок) задает последействие сообщения SEI пространственно перемеженных картинок и может задавать интервал счета очередности картинки, в пределах которого другое сообщение SEI пространственно перемеженных картинок с тем же самым значением spatially_interleaved_pictures_id или конец кодированной видеопоследовательности будет присутствовать в битовом потоке.
spatially_interleaved_pictures_repetition_period, равный 0, предписывает, что сообщение SEI пространственно перемеженных картинок применяется только к текущей декодированной картинке. spatially_interleaved_pictures_repetition_period, равный 1, предписывает, что сообщение SEI пространственно перемеженных картинок продолжает действовать в выходной команде до тех пор, пока истинно любое из следующих условий:
- Начинается новая кодированная видеопоследовательность.
- Картинка в блоке доступа, содержащая в себе сообщение SEI пространственно перемеженных картинок с тем же самым значением spatially_interleaved_pictures_id, выводится, обладая PicOrderCnt(), большим чем PicOrderCnt(CurrPic).
spatially_interleaved_pictures_repetition_period, равный 0 или равный 1, указывает, что другое сообщение SEI пространственно перемеженных картинок с тем же самым значением spatially_interleaved_pictures_id может или не может быть присутствующим.
spatially_interleaved_pictures_repetition_period, больший чем 1, предписывает, что сообщение SEI пространственно перемеженных картинок продолжает действовать до тех пор, пока истинно любое из следующих условий:
- Начинается новая кодированная видеопоследовательность.
- Картинка в блоке доступа, содержащая в себе сообщение SEI пространственно перемеженных картинок с тем же самым значением spatially_interleaved_pictures_id, выводится, обладая PicOrderCnt(), большим чем PicOrderCnt(CurrPic), и меньшим чем или равным PicOrderCnt(CurrPic) + spatially_interleaved_pictures_repetition_period.
spatially_interleaved_pictures_repetition_period, больший чем 1, указывает, что другое сообщение SEI пространственно перемеженных картинок с тем же самым значением spatially_interleaved_pictures_id будет присутствовать для картинки в блоке доступа, которая выводится имеющей PicOrderCnt(), большее чем PicOrderCnt(CurrPic), и меньшее чем или равное PicOrderCnt(CurrPic) + spatially_interleaved_pictures_repetition_period; если не заканчивается битовый поток и новая кодированная видеопоследовательность не начинается без вывода такой картинки.
additional_extension_flag
(флаг_дополнительного_расширения), равный 0, указывает, что никакие дополнительные данные не следуют в пределах сообщения SEI пространственно перемеженных картинок.
Без изменения синтаксиса, показанного в таблице 6, реализация по этой заявке предоставляет информацию о соотношении и информацию о пространственном перемежении в пределах примерного сообщения SEI. Диапазон возможных значений для basic_spatial_interleaving_type_id модифицируется и расширяется в этой реализации, чтобы указывать скорее множество способов пространственного перемежения, чем только одного способа шахматного порядка. Более того, параметр basic_spatial_interleaving_type_id применяется, чтобы указывать, что конкретный тип пространственного перемежения присутствует в картинке, и что составляющие перемеженные картинки связаны друг с другом. В этой реализации, для basic_spatial_interleaving_type_id, семантика является следующей:
Значение 2 или 3 означает, что единая картинка содержит в себе «поперечное» перемежение соответствующих плоскостей двух картинок, как проиллюстрировано на фиг. 27. Значение 3 дополнительно означает, что две составляющих картинки образуют левую и правую проекции сцены стереоскопического обзора. Что касается поперечного перемежения, одна картинка помещается с одной стороны другой картинки, так что комбинированная картинка включает в себя два изображения рядом.
Значение 4 или 5 означает, что единая картинка содержит в себе «верхне-нижнее» перемежение соответствующих плоскостей двух картинок, как проиллюстрировано на фиг. 28. Значение 5 дополнительно означает, что две составляющих картинки образуют левую и правую проекции сцены стереоскопического обзора. Что касается верхне-нижнего перемежения, одна картинка помещается над другой картинкой, так что комбинированная картинка выглядит имеющей одно изображение над другим.
Значение 6 или 7 означает, что единая картинка содержит в себе «построчное» перемежение или просто чередование строк соответствующих плоскостей двух картинок, как проиллюстрировано на фиг. 29. Значение 7 дополнительно означает, что две составляющих картинки образуют левую и правую проекции сцены стереоскопического обзора. Что касается построчного перемежения, следующие друг за другом строки единой картинки чередуются от одной составляющей картинки к другому. В своей основе, единая картинка является чередованием горизонтальных секций составляющих изображений.
Значение 8 или 9 означает, что единая картинка содержит в себе «постолбцовое» перемежение соответствующих плоскостей двух картинок, как проиллюстрировано на фиг. 30. Значение 9 дополнительно означает, что две составляющих картинки образуют левую и правую проекции сцены стереоскопического обзора. Что касается постолбцового перемежения, следующие друг за другом столбцы единой картинки чередуются от одной составляющей картинки к другой. В своей основе, единая картинка является чередованием вертикальных секций составляющих изображений.
В еще одном варианте осуществления синтаксиса для использования в примерном сообщении SEI, чтобы передавать информацию об ассоциативно связанной картинке, несколько дополнительных элементов синтаксиса были включены в таблицу 7 для указания дополнительной информации. Такие дополнительные элементы синтаксиса, например, включены в состав, чтобы указывать ориентацию одной или более составляющих картинок (например, транспонирование), чтобы отдельно указывать, существует ли соотношение левой-правой стереоскопической пары для изображений, чтобы указывать, необходима ли повышающая дискретизация для обеих составляющих картинок, и чтобы указывать возможную степень и направление повышающей дискретизации.
Таблица 7
spatially_interleaved_pictures(payloadSize) { C Дескриптор
spatially_interleaved_pictures_id 5 ue(v)
spatially_interleaved_pictures_cancel_flag 5 U(l)
if (!spatially_interleaved_pictures_cancel_flag) {
basic_spatial_interleaving_type_id 5 U(8)
stereo_pair_flag 5 U(1)
upsample_conversion_horizontal_flag 5 U(1)
upsample_conversion_vertical_flag 5 U(1)
if (basic_spatial_interleaving_type_id = = 1 or basic_spatial_interleaving_type_id = = 2) {
flip_flag 5 U(1)
}
spatially_interleaved_pictures_repetition_period 5 ue(v)
}
additional_extension_flag 5 U(1)
}
Семантика определена, как приведено ниже:
basic_spatial_interleaving_type_id (идентификатор_основного_типа_пространственного_перемежения) указывает тип пространственного перемежения картинок.
basic_spatial_interleaving_type_id, равный 0, указывает, что каждая составляющая плоскость декодированных картинок содержит в себе основанное на «шахматном порядке» перемежение соответствующих плоскостей двух картинок, как в более раннем предложении (см. фиг. 26).
basic_spatial_interleaving_type_id, равный 1, указывает, что каждая составляющая плоскость декодированных картинок содержит в себе основанное на «поперечном порядке» перемежение соответствующих плоскостей двух картинок, как проиллюстрировано на фиг. 27.
basic_spatial_interleaving_type_id, равный 2, указывает, что каждая составляющая плоскость декодированных картинок содержит в себе основанное на «верхне-нижнем порядке» перемежение соответствующих плоскостей двух картинок, как проиллюстрировано на фиг. 28.
basic_spatial_interleaving_type_id, равный 3, указывает, что каждая составляющая плоскость декодированных картинок содержит в себе основанное на «построчном порядке» перемежение соответствующих плоскостей двух картинок, как проиллюстрировано на фиг. 29.
basic_spatial_interleaving_type_id, равный 4, указывает, что каждая составляющая плоскость декодированных картинок содержит в себе основанное на «постолбцовом порядке» перемежение соответствующих плоскостей двух картинок, как проиллюстрировано на фиг. 30.
stereo_pair_flag (флаг_стереоскопической_пары) указывает, имеют ли две составляющих картинки соотношение в качестве формирующих левую и правую проекцию сцены стереоскопического обзора. Значение 0 указывает, что составляющие картинки не формируют левую и правую проекции. Значение 1 указывает, что они связаны в качестве формирующих левую и правую проекции изображения.
upsample_conversion_horizontal_flag (флаг_горизонтального_преобразования_повышающей_дискретизации) указывает, необходима ли двум составляющим картинкам повышающая дискретизация в горизонтальном направлении после того, как они извлечены из единой картинки во время кодирования. Значение 0 указывает, что повышающая дискретизации не нужна. Таковое соответствует коэффициенту повышающей дискретизации ноль. Значение 1 указывает, что требуется повышающая дискретизация согласно коэффициенту дискретизации два.
upsample_conversion_vertical_flag (флаг_вертикального_преобразования_повышающей_дискретизации) указывает, необходима ли двум составляющим картинкам повышающая дискретизация в вертикальном направлении после того, как они извлечены из единой картинки во время кодирования. Значение 0 указывает, что повышающая дискретизации не нужна. Таковое соответствует коэффициенту повышающей дискретизации ноль. Значение 1 указывает, что требуется повышающая дискретизация согласно коэффициенту дискретизации два.
Как подробнее описано ниже, предполагается, что многие аспекты операции повышающей дискретизации могут передаваться в сообщении SEI, так что операция повышающей дискретизации надлежащим образом обрабатывается во время декодирования картинки. Например, может указываться дополнительный диапазон коэффициентов для повышающей дискретизации; также может указываться тип фильтра повышающей дискретизации; также может указываться фильтр понижающей дискретизации, так что декодер может определять надлежащий, или даже оптимальный, фильтр для повышающей дискретизации. Также предполагается, что информация о коэффициентах фильтра, включающая в себя количество и значение коэффициентов фильтра повышающей дискретизации, дополнительно может указываться в сообщении SEI, так что приемник выполняет предпочтительную операцию повышающей дискретизации.
Коэффициент дискретизации указывает отношение между исходным размером и дискретизированным размером видеокартинки. Например, когда коэффициент дискретизации имеет значение 2, исходный размер картинки в два раза больше размера дискретизированной картинки. Размер картинки обычно является показателем разрешения в пикселях. Поэтому, подвергнутая горизонтальной понижающей дискретизации картинка требует соответствующей горизонтальной повышающей дискретизации согласно тому же коэффициенту для восстановления разрешения исходной видеокартинки. Если исходные картинки имеют ширину в 1024 пикселя, например, они могут быть подвергнуты горизонтальной понижающей дискретизации согласно коэффициенту дискретизации 2, чтобы становиться подвергнутой понижающей дискретизации картинкой с шириной 512 пикселей. Размер картинки обычно является показателем разрешения в пикселях. Подобный анализ может быть показан для вертикальной понижающей дискретизации или повышающей дискретизации. Коэффициент дискретизации может применяться к понижающей дискретизации или повышающей дискретизации, которым полагаются комбинированный, горизонтальный и вертикальный, подход.
flip_flag (флаг_транспонирования) указывает, транспонирована или нет вторая составляющая картинка. Значение 0 указывает, что транспонирование не присутствует в такой картинке. Значение 1 указывает, что транспонирование выполняется. Специалистами в данной области техники должно пониматься, что транспонирование должно влечь за собой поворот на 180° вокруг центральной оси в плоскости картинки. Направление транспонирования, в этом варианте осуществления, определяется типом перемежения. Например, когда поперечное перемежение (basic_spatial_interleaving_type_id равен 1), присутствует в составляющих картинках, предпочтительно транспонировать правую картинку в горизонтальном направлении (то есть вокруг вертикальной оси), если указано надлежащим значением flip_flag (см. фиг. 31). Когда верхне-нижнее перемежение (basic_spatial_interleaving_type_id равен 2), присутствует в составляющих картинках, предпочтительно транспонировать нижнюю картинку в вертикальном направлении (то есть вокруг центральной горизонтальной оси), если указано надлежащим значением flip_flag (см. фиг. 32). Несмотря на то, что транспонирование второй составляющей картинки было описано в материалах настоящей заявки, предполагается, что другие примерные варианты осуществления могут влечь за собой транспонирование первой картинки, такой как верхняя картинка при верхне-нижнем перемежении или левая картинка при поперечном перемежении. Конечно, для того чтобы обрабатывать эти дополнительные степени свободы для flip_flag, может быть необходимым увеличить диапазон значений или привнести другую семантику, относящуюся к нему.
Также предполагается, что дополнительные варианты осуществления могут предоставлять возможность транспонирования картинки в обоих, горизонтальном и вертикальном, направлениях. Например, когда четыре проекции подвергнуты мозаичному размещению вместе в единой картинке с одной проекцией (то есть картинкой) на квадрант, как показано на фиг. 2, можно заставлять верхний левый квадрант включать в себя первую проекцию, которая не транспонирована, наряду с тем, что верхний правый квадрант включает в себя третью проекцию, которая транспонирована только вертикально, и тогда как нижний правый квадрант включает в себя четвертую проекцию, которая транспонирована как горизонтально, так и вертикально. Посредством мозаичного размещения или перемежения этим способом, может быть видно, что границы на стыке между проекциями имеют большую вероятность обладания общим контентом сцены по обеим сторонам границ от соседних проекций в картинке. Этот тип транспонирования может обеспечивать дополнительную эффективность при сжатии. Указание этого типа транспонирования предполагается в пределах объема этого раскрытия.
Кроме того, предполагается, что синтаксис в таблице 7 может быть перенят для использования при обработке перемежения в двух измерениях плюс глубина. Например, могут быть разработаны коммерческие устройства отображения, которые допускают такой формат в качестве входных данных. Примерный синтаксис для такого применения изложен в таблице 8. Многое из семантики уже было определено выше. Только вновь привнесенная семантика описана ниже.
Таблица 8
spatially_interleaved_pictures(payloadSize) { Дескриптор
spatially_interleaved_pictures_id ue(v)
spatially_interleaved_pictures_cancel_flag u(1)
if(!spatially_interleaved_pictures_cancel_flag) {
basic_spatial_interleaving_type_id u(8)
semantics_id u(1)
upsample_conversion_horizontal_flag u(1)
upsample_conversion_vertical_flag u(1)
spatially_interleaved_pictures_repetition_period ue(v)
if (basic_spatial_interleaving_type_id = = 1 or basic_spatial_interleaving_type_id = = 2) {
flip_flag u(1)
}
if (semantics_id = = 1) {
camera_parameter_set()
}
}
additional_extension_flag u(1)
}
semantics_id (идентификатор_семантики) замещает stereo_pair_flag в предыдущем примерном варианте осуществления и используется для указания, какое соотношение подразумевается для двух перемеженных картинок, другими словами, какие две картинки физически имеют значение. Значение 0 указывает, что две составляющих картинки образуют левую и правую проекцию изображения. Значение 1 указывает, что вторая картинка представляет соответствующую карту глубин первой составляющей картинки. Фиг. 34 показывает примерную единую картинку, в которой составляющие изображения с видео и глубиной (например, 2D + Z) перемежаются поперечным образом. Должно быть принято во внимание, что другие способы перемежения могут указываться конкретным значением basic_spatial_interleaving_type_id. Значение 2 указывает, что соотношение между двумя перемеженными картинками не задано. Значения, большие чем 2, могут использоваться для указания дополнительных соотношений.
camera_parameter_set (набор_параметров_камеры) указывает параметры сцены, относящиеся к камере. Параметры могут появляться в этом же самом сообщении SEI, или параметры могут передаваться в другом сообщении SEI, либо они могут появляться в пределах других синтаксисов, таких как SPS, PPS, заголовки секций, и тому подобное. Параметры камеры обычно включают в себя по меньшей мере фокусное расстояние, длину базовой линии, положение(я) камеры, Znear (минимальное расстояние между сценой и камерами) и Zfar (максимальное расстояние между сценой и камерами). Набор параметров камеры также может включать в себя полный набор параметров для каждой камеры, в том числе, матрицу внутренней калибровки 3×3, матрицу поворота 3×3 и вектор трехмерного смещения. Параметры камеры, например, используются при визуализации, а также, возможно, при кодировании.
При использовании сообщения SEI или другого синтаксиса, сопоставимого с показанным в таблице 8, может быть возможным избежать необходимости для синхронизации на уровне системы между видео и глубиной. Это получается, так как видео и ассоциативно связанная глубина уже подвергнуты мозаичному размещению в один единый кадр.
Формат видео с многослойной глубиной (LDV) для картинок показан на фиг. 33. На этой фигуре, перемежаются четыре картинки - поперечным и верхне-нижним образом - для формирования комбинированной картинки. Картинка верхнего левого квадранта представляет уровень центральной проекции, тогда как картинка верхнего правого квадранта представляет уровень центральной глубины. Подобным образом, картинка нижнего левого квадранта представляет уровень проекции смыкания, тогда как картинка нижнего правого квадранта представляет уровень глубины смыкания. Формат, показанный на фиг. 33, может использоваться в качестве входного формата для промышленного автостереоскопического устройства отображения.
Наличие LDV указано с использованием синтаксиса, подобного показанному в предыдущих вариантах осуществления. Главным образом, семантика semantics_id расширена для привнесения варианта выбора LDV, как изложено ниже:
Таблица 9
spatially_interleaved_pictures( payloadSize) { C Дескриптор
spatially_interleaved_pictures_id 5 ue(v)
spatially_interleaved_pictures_cancel_flag 5 u(1)
if( !spatially_interleaved_pictures_cancel_flag) {
basic_spatial_interleaving_type_id 5 u(8)
semantics_id 5 u(1)
upsample_conversion_horizontal_flag 5 u(1)
upsample_conversion_vertical_flag 5 u(1)
spatially_interleaved_pictures_repetition_period 5 ue(v)
if (basic_spatial_interleaving_type_id = = 1 or basic_spatial_interleaving_type_id = = 2) {
flip_flag 5 u(1)
}
if (semantics_id = = 1 || semantics_id = = 3) {
camera_parameter_set()
}
}
additional_extension_flag 5 u(1)
}
semantics_id указывает соотношение между картинками, то есть, какие перемеженные картинки физически имеют значение по отношению друг к другу.
Значения от 0 до 2 означают, что две картинки связаны, как определено выше. Значение 0 указывает, что две картинки формируют левую и правую проекции. Это значение также указывает, что проекции являются стереоскопическими проекциями сцены. Значение 1 указывает, что вторая картинка обозначает соответствующую карту глубин первой картинки, то есть набор картинок 2D+Z. Значение 2 указывает, что соотношение между двумя перемеженными картинками не задано.
Значение 3 указывает, что четыре составляющих картинки перемежаются, и они соответствуют четырем составляющим картинкам представления LDV, например, как показано на фиг. 33. Значения, большие чем 3, могут применяться для указаний дополнительных соотношений.
Указания дополнительных соотношений, предполагаемые в материалах настоящей заявки, включают в себя, но не в качестве ограничения: указание, что многочисленные проекции являются многочисленными наборами картинок 2D+Z, также известными как «много проекций плюс глубина» (MVD); указание, что многочисленные проекции представляют изображения в двух наборах картинок LDV, которое известно как расширенное глубиной стереоизображение (DES).
Когда semantics_id равен 3, а basic_spatial_interleaving_type_id равен 1 (поперечное) или 2 (верхне-нижнее), четыре составляющих картинки перемежаются, как показано на фиг. 33.
Когда semantics_id равен 3, а basic_spatial_interleaving_type_id равен 0, четыре картинки перемежаются, как проиллюстрировано на фиг. 22, в качестве примера 1 (элемент 2210) или примера 2 (элемент 2220), если смещения проекций 1, 2 и 3 относительно проекции 0 дополнительно сигнализируются конкретным указанием, таким как посредством новой семантики в синтаксисе. Предполагается, что, когда semantics_id равен 3, перемежение выполняется для картинок LDV, как показано в примере 1 (элемент 2210) по фиг. 22. Кроме того, предполагается, что, когда semantics_id равен 4, перемежение выполняется для картинок LDV, как показано в примере 2 (элемент 2220) по фиг. 22. Перемежение для LDV с и без смещения уже было описано выше по фиг. 22.
Как отмечено выше, контент трехмерного/стереоскопического видео может кодироваться с использованием стандартов кодирования двухмерного видео. Способ упаковки кадра предоставляет подвергнутым понижающей дискретизации пространственно или даже по времени проекциям возможность упаковываться в один кадр для кодирования. Декодированный кадр распаковывается в составляющие многочисленные проекции, которые, затем, обычно подвергаются повышающей дискретизации в исходное разрешение.
Повышающая дискретизация, а более точно, фильтр повышающей дискретизации, играет важную роль в качестве реконструкции составляющих проекций или картинок. Выбор фильтра повышающей дискретизации типично зависит от фильтра понижающей дискретизации, используемого в кодере. Качество каждого подвергнутого повышающей дискретизации декодированной картинки может улучшаться, если информация о фильтре понижающей дискретизации или повышающей дискретизации передается в декодер в битовом потоке или посредством другого нестандартизованного средства. Хотя характеристики фильтра повышающей дискретизации в декодере не обязательно ограничены характеристиками фильтра понижающей дискретизации в кодере, такими как согласно обратному или взаимному соотношению, может ожидаться, что согласованный фильтр повышающей дискретизации должен обеспечивать оптимальную реконструкцию сигнала. В по меньшей мере одной реализации из экспериментальной практики, было определено, что сообщение SEI может использоваться для сигнализирования параметров повышающей дискретизации в декодер. В других реализациях, предполагается, что параметры фильтра повышающей дискретизации и понижающей дискретизации указываются видеодекодеру в пределах сообщения SEI. Типичные видеокодеры и видеодекодеры AVC H.264/MPEG-4 изображены на фиг. 3 и 4, соответственно, как описано выше. Эти устройства пригодны для осуществления на практике аспектов различных реализаций, раскрытых в материалах настоящей заявки. Дополнительно, другие устройства, не изготовленные для специального применения или даже не работающие с AVC H.264/MPEG-4, пригодны для осуществления на практике различных реализаций, описанных в этой заявке.
Как описано выше, сообщение SEI повышающей дискретизации упаковки кадра определено ниже в пределах инфраструктуры упаковки кадров AVC H.264/MPEG-4 для сигнализирования различных фильтров повышающей дискретизации. Этот синтаксис не подразумевается быть ограниченным только сообщением SEI, поскольку предполагается, что информация сообщения также может поставляться другим средством, например, таким как использование в других высокоуровневых синтаксисах, например, таких как SPS, PPS, VPS, заголовок секции и заголовок NAL.
В примерном варианте осуществления, применяющем информацию о повышающей дискретизации, фильтр повышающей дискретизации выбирается в качестве 2-мерного симметричного КИХ-фильтра с нечетным количеством отводов, определенных k ненулевыми коэффициентами, представленными в следующей форме:
Figure 00000001
Коэффициенты ci фильтра нормализованы, из условия чтобы сумма всех коэффициентов ci имела значение 0,5 для i в диапазоне {1,...,k}.
Примерная последовательность операций горизонтальной повышающей дискретизации, использующая параметры фильтра, показанные выше, описана на протяжении последовательности этапов, как более подробно представлено ниже. Исходное изображение изображено в качестве матрицы X m×n. Матрица A определена в качестве матрицы n×(2k+n), имеющей следующие атрибуты:
Figure 00000002
где
Figure 00000003
- антидиагональная единичная матрица k×k. Исходное изображение X преобразуется в новую матрицу X' изображения с использованием операции тензорного произведения, как изложено ниже:
Figure 00000004
Матрица H определена в качестве матрицы n×(4k+n-1), включающей в себя k ненулевых коэффициентов отводов, как показано выше (то есть,
Figure 00000005
), сдвинутых вдоль каждой следующей одна за другой строки и заполненных находящимися впереди и/или замыкающими нулями, как изложено ниже:
Figure 00000006
Выходная матрица Y изображения после горизонтальной повышающей дискретизации, в таком случае, представлена в качестве:
Figure 00000007
Подобным образом, примерная последовательность операций вертикальной повышающей дискретизации описана, как изложено ниже. Новая матрица A' определена подобно такой матрице, как:
Figure 00000008
Изображение Y затем преобразуется в новую матрицу Y' изображения посредством операции тензорного произведения, как показано ниже:
Figure 00000009
Выходная матрица изображения после вертикальной повышающей дискретизации, в таком случае, представлена в качестве:
Figure 00000010
Матрица F - заключительная матрица изображения после преобразования горизонтальной и вертикальной повышающей дискретизации.
Повышающая дискретизация в примере, приведенном выше, была изображена в качестве как горизонтальной, так и вертикальной операции. Предполагается, что очередность операций может быть изменена на обратную, так что вертикальная повышающая дискретизация выполняется перед горизонтальной повышающей дискретизацией. Более того, предполагается, что только один тип повышающей дискретизации может выполняться в определенных случаях.
Для того, чтобы применять сообщение SEI для передачи информации о повышающей дискретизации в декодер, предполагается, что некоторая семантика может быть включена в пределы синтаксисов, представленных выше. Синтаксис, показанный ниже в таблице 10, включает в себя информацию, полезную для повышающей дискретизации в видеодекодере. Синтаксис, приведенный ниже, был сокращен, чтобы показывать только параметры, необходимые для передачи информации о повышающей дискретизации. Специалистами в данной области техники должно быть принято во внимание, что синтаксис, показанный ниже, может комбинироваться с любым одним или более из предыдущих синтаксисов, чтобы передавать существенный объем информации об упаковке кадра, например, относящейся к указанию о соотношении, указанию ориентации, указанию повышающей дискретизации и указанию пространственного перемежения.
Таблица 10
Frame_packing_filter( payloadSize) { Дескриптор
for(c=0;c<3;c++)
{
number_of_horizontal_filter_parameters[c] ue(v)
for (i=0; i<number_of_horizontal_filter parameters[c];
i++)
{
h[c][i] s(16)
}
number_of_vertical_filter_parameters[c] ue(v)
for (i=0; i<number_of_horizontal_filter parameters[c];
i++)
{
v[c][i] s(16)
}
}
}
Семантика элементов синтаксиса определена ниже, как изложено ниже:
number_of_horizontal_filter_parameters[c] (количество_параметров_горизонтального_фильтра[c]) указывает порядок (4k-1)-отводного горизонтального фильтра для цветовой компоненты c, где c - одна из трех разных цветовых компонент.
h[c][i] задает iый коэффициент горизонтального фильтра для цветовой компоненты c при 16-битной точности, которая находится в диапазоне от -215 до 215-1. Норма фильтра имеет значение 216.
number_of_vertical_filter_parameters (количество_параметров_вертикального_фильтра) указывает порядок (4k-1)-отводного вертикального фильтра для цветовой компоненты c.
v[c][i] задает iый коэффициент вертикального фильтра для цветовой компоненты c при 16-битной точности, которая находится в диапазоне от -215 до 215-1. Норма фильтра имеет значение 216.
Для этого синтаксиса, предполагается, что известный тип фильтра присутствует в декодере. Однако, ожидается, что различные другие типы фильтров повышающей дискретизации могут использоваться в дополнение к, или вместо, вышеописанного 2-мерного симметричного КИХ-фильтра. Такие другие фильтры повышающей дискретизации включают в себя, но не в качестве ограничения, конструкции интерполяционных фильтров, такие как билинейный фильтр, кубический фильтр, сплайновый фильтр, фильтр Винера или фильтр наименьших квадратов. Когда другие типы фильтров доступны для использования, предполагается, что синтаксис, приведенный выше, должен быть расширен, чтобы включать в себя одну или более семантик для указания информации о типе фильтра для повышающей дискретизации.
Специалистами в данной области техники должно быть принято во внимание, что параметры фильтра повышающей дискретизации могут выводиться в кодере для включения в сообщение SEI на основании различных входных данных, таких как информация о фильтре понижающей дискретизации, или тому подобное. В дополнение, также должно быть принято во внимание, что такая информация может просто поставляться в кодер для включения в сообщение SEI.
Дополнительно предполагается, что синтаксис, показанный в таблице 10, мог бы быть модифицирован для передачи параметров фильтра понижающей дискретизации вместо параметров фильтра повышающей дискретизации. В этом варианте осуществления, указание параметров фильтра понижающей дискретизации декодеру дает декодирующему приложению способность определять оптимальные параметры фильтра повышающей дискретизации на основании параметров фильтра понижающей дискретизации. Подобный синтаксис и семантика могут использоваться для сигнализации фильтра понижающей дискретизации. Может быть включена в состав семантика для указания, что параметры являются представляющими фильтр понижающей дискретизации или фильтр повышающей дискретизации.
Если оптимальный фильтр повышающей дискретизации должен быть определен декодером, декодер может выполнять такое определение любым образом, известным в данной области техники. Дополнительно, декодер может определять фильтр повышающей дискретизации, который не оптимален, или который не обязательно оптимален. Определение в декодере может быть основано на ограничениях обработки данных или анализе параметров устройства отображения, или тому подобном. В качестве дополнительного примера, декодер изначально мог бы выбирать многочисленные разные типы фильтров повышающей дискретизации, а затем, в итоге, выбирать один фильтр, который дает результат, определенный некоторыми критериями декодера оптимальным для декодера.
Блок-схема последовательности операций, показывающая примерную технологию кодирования, относящуюся к указанию информации о фильтре повышающей дискретизации, показана на фиг. 35 и кратко описана ниже. В начале, определяется конфигурация кодера и создается высокоуровневый синтаксис. Картинки (например, проекции) подвергаются понижающей дискретизации фильтром понижающей дискретизации для упаковки в кадры. Повергнутые понижающей дискретизации картинки пространственно перемежаются в кадры. Параметры фильтра повышающей дискретизации определяются кодером или поставляются непосредственно в кодер. В одном из вариантов осуществления, параметры фильтра повышающей дискретизации, такие как тип, размер и значения коэффициентов, выводятся из фильтра понижающей дискретизации. Для каждой цветовой компоненты (например, YUV, RGB), параметры фильтра повышающей дискретизации определяются по количеству и значению. Это показано на фиг. 35 тремя циклами: первым циклом для компонент, вторым циклом (вложенным в первый цикл) для параметров горизонтального фильтра для компоненты и третьим циклом (вложенным в первый цикл) для параметров вертикального фильтра для компоненты. Параметры фильтра повышающей дискретизации затем записываются в сообщение SEI. Сообщение SEI затем отправляется в декодер отдельно (внеполосным образом) от битового потока видеоизображения, либо вместе (внутриполосным образом) с битовым потоком видеоизображения. Кодер объединяет сообщение с последовательностью упакованных кадров, когда необходимо.
В противоположность способу кодирования, изображенному на фиг. 35, альтернативный вариант осуществления, показанный на фиг. 37, показывает, что параметры фильтра понижающей дискретизации включены в сообщение SEI вместо параметров фильтра повышающей дискретизации. В этом варианте осуществления, параметры фильтра повышающей дискретизации не выводятся кодером и не передаются в декодер с упакованными кадрами.
Блок-схема последовательности операций, показывающая примерную технологию декодирования, относящуюся к указанию информации о фильтре повышающей дискретизации, показана на фиг. 36 и кратко описана ниже. В начале, сообщение SEI и другие связанные сообщения принимаются декодером, и синтаксисы читаются декодером. Сообщение SEI синтаксически анализируется, чтобы определить информацию, включенную в него, в том числе, информацию о дискретизации, информацию о перемежении, и тому подобное. В этом примере, определено, что информация о фильтре повышающей дискретизации для каждой цветовой компоненты включена в сообщение SEI. Информация о вертикальном и горизонтальном фильтре повышающей дискретизации извлекается для получения количества и значения каждого коэффициент горизонтального и вертикального фильтра повышающей дискретизации. Это извлечение показано на фиг. 36 тремя циклами: первым циклом для компонент, вторым циклом (вложенным в первый цикл) для параметров горизонтального фильтра для компоненты и третьим циклом (вложенным в первый цикл) для параметров вертикального фильтра для компоненты. Сообщение SEI затем сохраняется, и последовательность упакованных кадров декодируется для получения картинок, упакованных в них. Картинки затем подвергаются повышающей дискретизации с использованием восстановленных параметров фильтра повышающей дискретизации для восстановления картинок в их исходное полное разрешение.
В противоположность способу декодирования, изображенному на фиг. 36, альтернативный вариант осуществления, показанный на фиг. 38, показывает, что параметры фильтра понижающей дискретизации включены в сообщение SEI вместо параметров фильтра повышающей дискретизации. В этом варианте осуществления, параметры фильтра повышающей дискретизации не выводятся кодером и не передаются в декодер с упакованными кадрами. Отсюда, декодер применяет принятые параметры фильтра понижающей дискретизации для выведения параметров фильтра повышающей дискретизации, которые должны использоваться для возвращения полного исходного разрешения картинкам, извлеченным из перемежения в упакованных видеокадрах.
Фиг. 39 показывает примерную систему 2500 передачи видео, к которой могут быть применены настоящие принципы, в соответствии с реализацией настоящих принципов. Система 2500 передачи видео, например, может быть головной системой или системой передачи для передачи сигнала с использованием любого из многообразия средств связи, например, спутникового, кабельного, по телефонной линии или наземного вещания. Передача может быть предусмотрена через сеть Интернет или некоторую другую сеть.
Система 2500 передачи видео способна к генерированию и доставке сжатых видео с глубиной. Это достигается генерирование кодированного сигнала(ов), включающего в себя информацию о глубине или информацию, допускающую использование для синтеза информации о глубине на стороне приемника, которая, например, может иметь декодер.
Система 2500 передачи видео включает в себя кодер 2510 и передатчик 2520, способный к передаче кодированного сигнала. Кодер 2510 принимает видеоинформацию и генерирует кодированный сигнал(ы) с глубиной. Кодер 2510 может включать в себя подмодули, например, включающие в себя блок сборки для приема и сборки различных порций информации в структурированный формат для сохранения или передачи. Различные порции информации, например, могут включать в себя кодированное или некодированное видео, кодированную или некодированную информацию о глубине и кодированные или некодированные элементы, например, такие как векторы движения, индикаторы режима кодирования и элементы синтаксисов.
Передатчик 2520, например, может быть приспособлен для передачи сигнала вещательной программы, имеющего один или более битовых потоков, представляющих кодированные картинки и/или информацию, относящуюся к ним. Типичные передатчики выполняют функции, например, такие как одно или более из обеспечения кодирования с исправлением ошибок, перемежения данных в сигнале, рандомизации энергии в сигнале и/или модулирования сигнала в одну или более несущих. Передатчик может включать в себя или сопрягаться по интерфейсу с антенной (не показана). Соответственно, реализации передатчика 2520 могут включать в себя или ограничиваться модулятором.
Фиг. 40 показывает примерную систему 2600 приема видео, к которой могут быть применены настоящие принципы, в соответствии с вариантом осуществления настоящих принципов. Система 2600 приема видео может быть сконфигурирована для приема сигналов через многообразие средств связи, например, таких как спутниковое, кабельное, по телефонной линии или наземное вещание. Сигналы могут приниматься через сеть Интернет или некоторую другую сеть.
Система 2600 приема видео, например, может быть сотовым телефоном, компьютером, телевизионной абонентской приставкой, телевизором или другим устройством, которое принимает кодированное видео и, например, предоставляет декодированное видео для отображения пользователю или для сохранения. Таким образом, система 2600 приема видео может предусматривать его вывод, например, на экран телевизора, компьютерный монитор, компьютер (для сохранения, обработки или отображения), или некоторое другое устройство хранения, обработки или отображения.
Система 2600 приема видео способна к приему и обработке видеоконтента, включающего в себя видеоинформацию. Система 2600 приема видео включает в себя приемник 2610, способный к приему кодированного сигнала, например, такого как сигналы, описанные в реализациях этой заявки, и декодер 2620, способный к декодированию принятого сигнала.
Приемник 2610, например, может быть приспособлен для приема сигнала вещательной программы, имеющего множество битовых потоков, представляющих кодированные картинки. Типичные приемники выполняют функции, например, такие как одно или более из приема модулированного и кодированного сигнала данных, демодулирования сигнала данных из одной или более несущих, дерандомизации энергии в сигнале, обращенного перемежения данных в сигнале и/или декодирования с исправлением ошибок сигнала. Приемник 2610 может включать в себя или сопрягаться с антенной (не показана). Реализации приемника 2610 могут включать в себя или ограничиваться демодулятором. Декодер 2620 выводит видеосигналы, включающие в себя видеоинформацию и информацию о глубине.
Фиг. 41 показывает примерное устройство 2700 обработки видео, к которому могут быть применены настоящие принципы, в соответствии с вариантом осуществления настоящих принципов. Устройство 2700 обработки видео, например, может быть телевизионной абонентской приставкой или другим устройством, которое принимает кодированное видео и, например, предоставляет декодированное видео для отображения пользователю или для сохранения. Таким образом, устройство 2700 обработки видео может предусматривать его вывод на телевизор, компьютерный монитор, либо компьютер или другое устройство обработки.
Устройство 2700 обработки видео включает в себя устройство 2705 входного каскада (FE) и декодер 2710. Устройство 2705 входного каскада, например, может быть приемником, приспособленным для приема сигнала вещательной программы, имеющего множество битовых потоков, представляющих кодированные картинки, и для выбора одного или более битовых потоков для декодирования из множества битовых потоков. Типичные приемники выполняют функции, например, такие как одно или более из приема модулированного и кодированного сигнала данных, демодулирования сигнала данных, декодирования одного или более кодирований (например канального кодирования и/или исходного кодирования) сигнала данных и/или исправления ошибок сигнала данных. Устройство 2705 входного каскада может принимать сигнал вещательной программы, например, с антенны (не показана). Устройство 2705 входного каскада предоставляет принятый сигнал данных в декодер 2710.
Декодер 2710 принимает сигнал 2720 данных. Сигнал 2720 данных, например, может включать в себя один или более совместимых с усовершенствованным кодированием видеосигнала (AVC), масштабируемым кодированием видео (SVC), или многопроекционным кодированием видео (MVC) потоков.
Декодер 2710 декодирует весь или часть принятого сигнала 2720 и предоставляет, в качестве выходных данных, декодированный видеосигнал 2730. Декодированное видео 2730 предоставляется в селектор 2750. Устройство 2700 также включает в себя пользовательский интерфейс 2760, который принимает пользовательский ввод 2770. Пользовательский интерфейс 2760 предоставляет сигнал 2780 выбора картинки, на основании пользовательского ввода 2770, в селектор 2750. Сигнал 2780 выбора картинки и пользовательский ввод 2770 указывают, что из многочисленных картинок, последовательностей, масштабированных вариантов, проекций или других вариантов выбора доступных декодированных данных пользователь желает иметь отображенным. Селектор 2750 предоставляет выбранную картинку(ы) в качестве выходных данных 2790. Селектор 2750 использует информацию 2780 о выборе картинки для выбора, какие картинки в декодированном видео 2730 предоставлять в качестве выходных данных 2790.
В различных реализациях, селектор 2750 включает в себя пользовательский интерфейс 2760, а в других реализациях, никакой пользовательский интерфейс 2760 не нужен, так как селектор 2750 принимает пользовательский ввод 2770 непосредственно без того, чтобы выполнялась отдельная интерфейсная функция. Селектор 2750, например, может быть реализован в программном обеспечении или в качестве интегральной схемы. В одной из реализаций, селектор 2750 включен в состав декодером 2710, а в другой реализации, декодер 2710, селектор 2750 и пользовательский интерфейс 2760 являются полностью интегрированными.
В одном из применений, входной каскад 2705 принимает вещание различных телевизионных показов и выбирает один для обработки. Выбор одного показа основан на пользовательском вводе требуемого канала для просмотра. Хотя пользовательский ввод в устройство 2705 входного каскада не показан на фиг. 41, устройство 2705 входного каскада принимает пользовательский ввод 2770. Входной каскад 2705 принимает вещание и обрабатывает требуемый показ, демодулируя релевантную часть вещательного спектра и декодируя какое-нибудь внешнее кодирование демодулированного показа. Входной каскад 2705 предоставляет декодированный показ в декодер 2710. Декодер 2710 является интегрированным блоком, который включает в себя устройства 2760 и 2750. Декодер 2710, таким образом, принимает пользовательский ввод, который является поданным пользователем указанием требуемой проекции для просмотра в показе. Декодер 2710 декодирует выбранную проекцию, а также любые требуемые опорные картинки из других проекций, и предоставляет декодированную проекцию 2790 для отображения на телевизоре (не показан).
Продолжая вышеприведенное применение, пользователь может пожелать переключить проекцию, которая отображается, а затем, может предоставлять новые входные данные в декодер 2710. После приема «изменения проекции» от пользователя, декодер 2710 декодирует обе, старую проекцию и новую проекцию, а также любые проекции, которые находятся между старой проекцией и новой проекцией. То есть, декодер 2710 декодирует любые проекции, которые берутся с камер, которые физически расположены между камерой, снимающей старую проекцию, и камерой, снимающей новую проекцию. Устройство 2705 входного каскада также принимает информацию, идентифицирующую старую проекцию, новую проекцию, и проекции между ними. Такая информация, например, может предоставляться контроллером (не показан на фиг. 41), имеющим информацию о местоположениях проекций, или декодером 2710. Другие реализации могут использовать устройство входного каскада, которое имеет контроллер, интегрированный с устройством входного каскада.
Декодер 2710 предоставляет все из этих декодированных проекций в качестве выходных данных 2790. Постпроцессор (не показан на фиг. 41) осуществляет интерполяцию между проекциями, чтобы обеспечивать плавный переход от старой проекции к новой проекции, и отображает этот переход пользователю. После перехода к новой проекции, постпроцессор информирует (через одну или более линий связи, не показанные) декодер 2710 и устройство 2705 входного каскада, что необходима только новая проекция. После этого, декодер 2710 предоставляет в качестве выходных данных 2790 только новую проекцию.
Система 2700 может использоваться для приема многочисленных проекций последовательности изображений и для представления одиночной проекции для отображения, а также для переключения между различными проекциями плавным образом. Плавный образ действий может включать в себя интерполяцию между проекциями для перехода к другой проекции. Дополнительно, система 2700 может предоставлять пользователю возможность поворачивать объект или сцену, или иначе, видеть трехмерное представление объекта или сцены. Поворачивание объекта, например, может соответствовать переходу от проекции к проекции и интерполяции между проекциями для получения плавного перехода между проекциями или просто для получения трехмерного представления. То есть, пользователь может «выбирать» интерполированную проекцию в качестве «проекции», которая должна отображаться.
Как представлено в материалах настоящей заявки, реализации и признаки, описанные в этой заявке, могут использоваться в контексте кодирования видео, кодирования глубины и/или кодирования других типов данных. Дополнительно, эти реализации и признаки могут использоваться в контексте или быть приспособленными для использования в контексте стандарта AVC H.264/MPEG-4 (AVC), стандарта AVC с расширением MVC, стандарта AVC с расширением SVC, стандарта 3DV и/или с другим стандартом (существующим или будущим), или в контексте, который не касается стандарта. Соответственно, должно быть понятно, что специфичные реализации, описанные в этой заявке, которые действуют в соответствии с AVC, не подразумеваются ограниченными AVC и могут быть приспособлены для использования вне AVC.
К тому же, как отмечено выше, реализации могут сигнализировать или указывать информацию с использованием многообразия технологий, в том числе, но не в качестве ограничения, сообщений SEI, заголовков секций, другого высокоуровневого синтаксиса, невысокоуровневого синтаксиса, внеполосной информации, данных потока данных и неявной сигнализации. Хотя реализации, описанные в материалах настоящей заявки, могут быть описаны в конкретном контексте, такие описания никоим образом не должны браться в качестве ограничения признаков и концепций в отношении таких реализаций или контекстов.
Различные реализации включают в себя декодирование. Термин «декодирование», используемый в этой заявке, может охватывать все или часть последовательностей операций, например, выполняемых над принятой кодированной последовательностью, для того чтобы вырабатывать окончательные выходные данные, пригодные для отображения. Такие последовательности операций могут включать в себя последовательности операций, типично выполняемые декодером, например, такие как энтропийное декодирование, обратное преобразование, обратное квантование, дифференциальное кодирование. Такие последовательности операций, к тому же, или в качестве альтернативы, могут включать в себя последовательности операций, выполняемые декодером различных реализаций, описанных в этой заявке, например, такие как извлечение картинки из подвергнутой мозаичному размещению (упакованной) картинки, определение фильтра повышающей дискретизации для использования, а затем, повышающая дискретизация картинки и транспонирование картинки обратно в ее планируемую ориентацию.
Различные реализации, описанные в этой заявке, объединяют многочисленные картинки в единую картинку. Последовательность операций объединения картинок, например, может влечь за собой выбор картинок, например, на основании соотношения между картинками, пространственное перемежение, дискретизацию и изменение ориентации картинки. Соответственно, информация, описывающая последовательность операций объединения, например, может включать в себя информацию о соотношении, информацию о пространственном перемежении, информацию о дискретизации и информацию об ориентации.
Пространственное перемежение указывается при описании различных реализаций. Термин «перемежение», используемый в этой заявке, например, также указывается как «мозаичное размещение» и «упаковка». Перемежение включает в себя многообразие типов перемежения, в том числе, например, поперечное размещение рядом картинок, верхне-нижнее размещение картинок, комбинированное поперечное и верхне-нижнее (например, для объединения 4 картинок), построчное чередование, постолбцовое чередование и различные схемы уровня пикселей (также указываемые как попиксельные или основанные на пикселях).
К тому же, используемые в материалах настоящей заявки слова «картинка» и «изображение» используются взаимозаменяемо и, например, указывают на все или часть неподвижного изображения, либо всю или часть картинки из видеопоследовательности. Как известно, картинка может быть кадром или областью. Дополнительно, используемый в материалах настоящей заявки термин картинка также может быть подмножеством кадра, например, таким как верхняя половина кадра, одиночный макроблок, чередующиеся столбцы, чередующиеся строки или периодические пиксели. В качестве еще одного примера, картинка глубин, например, может быть полной картой глубин или частичной картой глубин, которая включает в себя только информацию о глубине, например, одиночного макроблока или соответствующего видеокадра.
Ссылка в описании изобретения на «один из вариантов осуществления» или «вариант осуществления», либо «одну из реализаций» или «реализацию» настоящих принципов, а также другие ее варианты, означают, что конкретный признак, конструкция, характеристика, и так далее, описанные в связи с вариантом осуществления, включены в по меньшей мере один вариант осуществления настоящих принципов. Таким образом, появление фразы «в одном из вариантов осуществления» или «в варианте осуществления», либо «в одной из реализаций» или «в реализации», а также любых других ее вариантов, фигурирующих в различных местах по всему описанию изобретения, не обязательно является всецело указывающим на один и тот же вариант осуществления.
Должно быть принято во внимание, что использование любого из следующего: «/», «и/или» и «по меньшей мере один из», например, в случаях «A/B», «A и/или B» и «по меньшей мере одно из A и B», подразумевается охватывающим выбор только первого перечисленного варианта (A) или выбор только второго перечисленного варианта (B), либо выбор обоих вариантов (A и B). В качестве дополнительного примера, в случаях «A, B и/или C» и «по меньшей мере одно из A, B и C», а также «по меньшей мере одно из A, B или C», такое выражение подразумевается охватывающим выбор только первого перечисленного варианта (A) или выбор только второго перечисленного варианта (B), или выбор только третьего перечисленного варианта (C), или выбор только первого и второго перечисленных вариантов (A и B), или выбор только первого и третьего перечисленных вариантов (A и C), или выбор только второго и третьего перечисленных вариантов (B и C), или выбор всех трех вариантов (A и B, и C). Как без труда очевидно рядовому специалисту в этой и связанных областях техники, это можно расширять на столько элементов, сколько перечислено.
Дополнительно, эта заявка или ее формула изобретения может указывать на «определение» различных порций информации. Определение информации может включать в себя, например, одно или более из оценивания информации, расчета информации, предсказания информации или извлечения информации из памяти.
Подобным образом, «осуществление доступа» подразумевается широким термином. Осуществление доступа к порции информации может включать в себя любую операцию, которая, например, использует, сохраняет, отправляет, передает, принимает, извлекает, модифицирует или предоставляет информацию.
Должно быть понятно, что элементы, показанные на фигурах, могут быть реализованы в различных формах аппаратных средств, программного обеспечения или их комбинации. Предпочтительно, эти элементы реализованы в комбинации аппаратных средств и программного обеспечения на одном или более надлежащим образом запрограммированных устройств общего применения, которые могут включать в себя процессор, память и интерфейсы ввода/вывода. Более того, реализации, описанные в материалах настоящей заявки, например, могут быть реализованы в качестве способа или последовательности операций, устройства или программно реализованной программы. Даже если обсуждена только в контексте одиночной формы реализации (например, обсужденной исключительно в качестве способа), реализация обсужденных признаков также может быть реализована в других формах (например, устройстве или программе). Устройство может быть реализовано, как упомянуто выше. Способы, например, могут быть реализованы на устройстве, например, таком как процессор, который указывает на устройства обработки вообще, в том числе, например, компьютер, микропроцессор, интегральную схему или программируемое логическое устройство. Устройства обработки также включают в себя устройства связи, например, такие как компьютеры, сотовые телефоны, портативные/персональные цифровые секретари («PDA») и другие устройства, которые содействуют передаче информации между конечными пользователями.
Реализации различных последовательностей операций и признаков, описанных в материалах настоящей заявки, могут быть воплощены в многообразии разного оборудования или приложений, более точно, например, оборудовании или приложениях, ассоциативно связанных с кодированием и декодированием данных. Примеры оборудования включают в себя видеокодеры, видеодекодеры, видеокодеки, веб-серверы, телевизионные абонентские приставки, переносные компьютеры, персональные компьютеры, сотовые телефоны, PDA, другие устройства связи, персональные записывающие устройства (например, PVR (программируемые видеозаписывающие устройства), компьютеры, выполняющие записывающее программное обеспечение, устройства записи VHS), записывающие видеокамеры, потоковую передачу данных через сеть Интернет или другие линии связи, и видео по запросу. Как должно быть ясно, оборудование может быть мобильным или даже установленным на движущемся транспортном средстве.
Дополнительно, способы могут быть реализованы командами, являющимися выполняемыми процессором, и такие команды могут храниться на читаемом процессором носителе, например, таком как интегральная схема, носитель программного обеспечения или другое запоминающее устройство, например, такое как жесткий диск, гибкий магнитный компакт-диск, оперативное запоминающее устройство («ОЗУ») или постоянное запоминающее устройство («ПЗУ»). Команды могут формировать прикладную программу, реально воплощенную на читаемом процессором носителе. Как должно быть ясно, процессор может включать в себя читаемый процессором носитель, например, имеющий команды для выполнения последовательности операций. Такие прикладные программы могут выгружаться в, и выполняться машиной, содержащей любую подходящую архитектуру. Предпочтительно, машина реализована на компьютерной платформе, содержащей аппаратные средства, такие как один или более центральных процессорных устройств («ЦПУ», «CPU»), оперативное запоминающее устройство («ОЗУ»), и интерфейсы ввода/вывода («I/O»). Компьютерная платформа также может включать в себя операционную систему и микрокомандный код. Различные последовательности операций и функции, описанные в материалах настоящей заявки, могут быть частью микрокомандного кода либо частью прикладной программы, или любой их комбинацией, которая может выполняться ЦПУ. В дополнение, различные другие периферийные устройства могут быть присоединены к компьютерной платформе, такие как дополнительное устройство хранения данных и печатающее устройство.
Как должно быть очевидно специалисту в данной области техники, реализации также могут вырабатывать сигнал, форматированный для несения информации, которая, например, может сохраняться или передаваться. Информация, например, может включать в себя команды для выполнения способа или данные, выработанные одной из описанных реализаций. Такой сигнал, например, может быть форматирован в качестве электромагнитной волны (например, с использованием радиочастотного участка спектра) или в качестве сигнала основной полосы. Форматирование, например, может включать в себя кодирование потока данных, создание синтаксиса и модулирование несущей кодированным потоком данных или синтаксисом. Информация, которую несет сигнал, например, может быть аналоговой или цифровой информацией. Сигнал, как известно, может передаваться через многообразие разных проводных или беспроводных линий связи.
Кроме того, должно быть понятно, что, так как некоторые из составляющих компонентов и способов системы, изображенных на прилагаемых чертежах, предпочтительно реализованы в программном обеспечении, реальные связи между компонентами системы или функциональными блоками последовательности операций могут отличаться в соотношении от образа действий, которым запрограммированы настоящие принципы. При заданных доктринах, приведенных в материалах настоящей заявки, рядовой специалист в относящейся к делу области техники, будет способен предполагать эти и подобные реализации или конфигурации настоящих принципов.
Было описано некоторое количество реализаций. Тем не менее, должно быть понятно, что могут быть произведены различные модификации. Например, элементы разных реализаций могут быть комбинированы, дополнены, модифицированы или удалены для создания других реализаций. Дополнительно, рядовой специалист должен понимать, что другие конструкции и последовательности операций могут быть использованы вместо раскрытых, и получающиеся в результате реализации будут выполнять по меньшей мере по существу такую же функцию(ии), по меньшей мере по существу таким же образом, для достижения по меньшей мере по существу такого же результата(ов), как раскрытые реализации. В частности, хотя иллюстративные варианты осуществления были описаны в материалах настоящей заявки со ссылкой на прилагаемые чертежи, должно быть понятно, что настоящие принципы не ограничены такими отдельно взятыми вариантами осуществления, и что различные изменения и модификации могут быть осуществлены в них рядовым специалистом в относящейся к делу области техники, не выходя из объема и сущности настоящих принципов. Соответственно, эти и другие реализации предполагаются этой заявкой и находятся в пределах объема последующей формулы изобретения.

Claims (73)

1. Устройство для декодирования видео, содержащее:
средство для осуществления доступа к видеокартинке, которая включает в себя многочисленные картинки, объединенные в единую картинку, причем видеокартинка является частью принятого видеопотока;
средство для осуществления доступа к информации, которая является частью принятого видеопотока, причем информация, к которой осуществляется доступ, указывает, каким образом объединены многочисленные картинки в видеокартинке, к которой осуществляется доступ, при этом информация, к которой осуществляется доступ, включает в себя информацию о пространственном перемежении и информацию о дискретизации, при этом информация о пространственном перемежении указывает пространственное перемежение, примененное к многочисленным картинкам при формировании единой картинки, и при этом информация о дискретизации указывает один или более параметров, относящихся к фильтру повышающей дискретизации для восстановления каждой из многочисленных картинок в другое разрешение, причем один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание направления фильтрации, и при этом информация о пространственном перемежении дополнительно включает в себя информацию о соотношении, причем информация о соотношении указывает тип соотношения, которое существует между множеством картинок, причем информация о соотношении указывает, что множество картинок являются стереоскопическими проекциями изображения, множество картинок являются двухмерным изображением и его соответствующей картой глубин (2D+Z), множество картинок являются множеством наборов 2D+Z (MVD), множество картинок представляют изображения в формате видео с многослойной глубиной (LDV) или множество картинок представляют изображения в двух наборах LDV (DES); и
средство для декодирования видеокартинки для предоставления декодированного представления по меньшей мере одной из многочисленных картинок.
2. Устройство по п.1, в котором декодирование выполняется на основании информации о пространственном перемежении и информации о дискретизации.
3. Устройство по п.1, в котором информация о пространственном перемежении указывает пространственное перемежение типа, выбранного из группы, включающей в себя по меньшей мере два из бокового перемежения, верхне-нижнего перемежения, построчного перемежения, постолбцового перемежения и шахматного перемежения.
4. Устройство по п.1, в котором декодирование дополнительно основано на информации о соотношении.
5. Устройство по п.1, в котором информация, к которой осуществляется доступ, дополнительно включает в себя информацию о параметрах камеры, информация о параметрах камеры включает в себя по меньшей мере одно из фокусного расстояния камеры, длины базовой линии, по меньшей мере одного положения камеры, параметра Znear для указания минимального расстояния между изображением в многочисленных картинках и камерой, параметра Zfar для указания максимального расстояния между изображением в многочисленных картинках и камерой, матрицы внутренней калибровки 3×3, матрицы поворота 3×3, и вектора трехмерного смещения.
6. Устройство по п.5, в котором декодирование дополнительно основано на информации о параметрах камеры.
7. Устройство по п.1, в котором информация, к которой осуществляется доступ, дополнительно включает в себя информацию об ориентации, информация об ориентации указывает ориентацию по меньшей мере одной из многочисленных картинок.
8. Устройство по п.7, в котором декодирование дополнительно основано на информации об ориентации.
9. Устройство по п.7, в котором информация об ориентации происходит из группы, состоящей из: ни одна картинка не имеет транспонированной ориентации, одна картинка из многочисленных картинок имеет свою ориентацию, транспонированную вертикально, и одна картинка из многочисленных картинок имеет свою ориентацию, транспонированную горизонтально.
10. Устройство по п.9, в котором информация об ориентации также указывает одну или более картинок из многочисленных картинок, к которым относится информация об ориентации.
11. Устройство по п.1, в котором информация о дискретизации включает в себя информацию из группы, состоящей из указания дискретизации, коэффициента дискретизации, типа фильтра дискретизации, количества коэффициентов фильтра и одного или более значений коэффициентов фильтра дискретизации.
12. Устройство по п.11, в котором указание дискретизации указывает, относится ли информация о дискретизации к повышающей дискретизации или понижающей дискретизации.
13. Устройство по п.11, в котором коэффициент дискретизации указывает, что дискретизация выполняется посредством коэффициента, выбранного из группы, состоящей из значений 0, 2 и 4.
14. Устройство по п.11, в котором тип фильтра дискретизации указывает тип фильтра дискретизации из группы, состоящей из 2-мерного симметричного КИХ-фильтра, интерполяционного фильтра, билинейного фильтра, кубического фильтра, сплайнового фильтра, фильтра Винера, фильтра наименьших квадратов, 6-отводного фильтра AVC, 4-отводного фильтра SVC, специализированного фильтра, включающего в себя двухмерный специализированный фильтр, одномерный фильтр и нелинейный фильтр.
15. Устройство по п.11, в котором одно или более значений коэффициентов фильтра дискретизации происходят из группы, состоящей из значений коэффициентов фильтра повышающей дискретизации и значений коэффициентов фильтра понижающей дискретизации.
16. Устройство по п.11, в котором декодирование дополнительно включает в себя этап, на котором получают набор из одного или более значений коэффициентов фильтра повышающей дискретизации из значений коэффициентов фильтра понижающей дискретизации, включенных в информацию, к которой осуществляется доступ.
17. Устройство по п.1, в котором информация включена в по меньшей мере одно из заголовка секции, набора параметров последовательности, набора параметров картинки, набора параметров проекции, заголовка блока сетевого уровня абстракции или сообщения дополнительной расширительной информации (804).
18. Устройство по п.1, в котором указание направления фильтрации указывает, что повышающая дискретизации должна выполняться в горизонтальном направлении.
19. Устройство по п.1, в котором указание направления фильтрации указывает, что повышающая дискретизации должна выполняться в вертикальном направлении.
20. Устройство по п.1, в котором указание направления фильтрации указывает, что повышающая дискретизации должна выполняться в горизонтальном направлении и вертикальном направлении.
21. Устройство по п.1, дополнительно содержащее средство для предоставления декодированного представления и информации, к которой осуществляется доступ, в качестве выходного сигнала для дальнейшей обработки декодированного представления на основании информации, к которой осуществляется доступ.
22. Устройство по п.1, в котором информация, к которой осуществляется доступ, включена в сообщение дополнительной расширительной информации по стандарту, такому как H.264/AVC.
23. Устройство по п.1, дополнительно содержащее средство для предоставления декодированного представления для отображения.
24. Устройство по п.1, в котором один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание параметров фильтра, используемых при понижающей дискретизации одной или более из многочисленных картинок для объединения многочисленных картинок в единую картинку.
25. Устройство по п.24, в котором указание параметров фильтра, используемых при понижающей дискретизации, является используемым при определении параметров фильтра повышающей дискретизации для использования при повышающей дискретизации, чтобы предоставлять декодированное представление.
26. Устройство для декодирования видео, содержащее процессор, выполненный с возможностью выполнения по меньшей мере следующего:
осуществления доступа к видеокартинке, которая включает в себя многочисленные картинки, объединенные в единую картинку, причем видеокартинка является частью принятого видеопотока;
осуществления доступа к информации, которая является частью принятого видеопотока, причем информация, к которой осуществляется доступ, указывает, каким образом объединены многочисленные картинки в видеокартинке, к которой осуществляется доступ, при этом информация, к которой осуществляется доступ, включает в себя информацию о пространственном перемежении и информацию о дискретизации, при этом информация о пространственном перемежении указывает пространственное перемежение, примененное к многочисленным картинкам при формировании единой картинки, и при этом информация о дискретизации указывает один или более параметров, относящихся к фильтру повышающей дискретизации для восстановления каждой из многочисленных картинок в другое разрешение, причем один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание направления фильтрации, и при этом информация о пространственном перемежении дополнительно включает в себя информацию о соотношении, причем информация о соотношении указывает тип соотношения, которое существует между множеством картинок, причем информация о соотношении указывает, что множество картинок являются стереоскопическими проекциями изображения, множество картинок являются двухмерным изображением и его соответствующей картой глубин (2D+Z), множество картинок являются множеством наборов 2D+Z (MVD), множество картинок представляют изображения в формате видео с многослойной глубиной (LDV) или множество картинок представляют изображения в двух наборах LDV (DES);
декодирования видеокартинки для предоставления декодированного представления по меньшей мере одной из многочисленных картинок.
27. Читаемый процессором носитель, имеющий хранимые на нем команды для побуждения процессора выполнять по меньшей мере следующее:
осуществление доступа к видеокартинке, которая включает в себя многочисленные картинки, объединенные в единую картинку, причем видеокартинка является частью принятого видеопотока;
осуществление доступа к информации, которая является частью принятого видеопотока, причем информация, к которой осуществляется доступ, указывает, каким образом объединены многочисленные картинки в видеокартинке, к которой осуществляется доступ, при этом информация, к которой осуществляется доступ, включает в себя информацию о пространственном перемежении и информацию о дискретизации, при этом информация о пространственном перемежении указывает пространственное перемежение, примененное к многочисленным картинкам при формировании единой картинки, и при этом информация о дискретизации указывает один или более параметров, относящихся к фильтру повышающей дискретизации для восстановления каждой из многочисленных картинок в другое разрешение, причем один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание направления фильтрации, и при этом информация о пространственном перемежении дополнительно включает в себя информацию о соотношении, причем информация о соотношении указывает тип соотношения, которое существует между множеством картинок, причем информация о соотношении указывает, что множество картинок являются стереоскопическими проекциями изображения, множество картинок являются двухмерным изображением и его соответствующей картой глубин (2D+Z), множество картинок являются множеством наборов 2D+Z (MVD), множество картинок представляют изображения в формате видео с многослойной глубиной (LDV) или множество картинок представляют изображения в двух наборах LDV (DES);
декодирование видеокартинки для предоставления декодированного представления по меньшей мере одной из многочисленных картинок.
28. Устройство для декодирования видео, содержащее:
декодер, выполненный с возможностью осуществления доступа к видеокартинке, которая включает в себя многочисленные картинки, объединенные в единую картинку, причем видеокартинка является частью принятого видеопотока; и выполненный с возможностью осуществления доступа к информации, которая является частью принятого видеопотока, причем информация, к которой осуществляется доступ, указывает, каким образом объединены многочисленные картинки в видеокартинке, к которой осуществляется доступ, при этом информация, к которой осуществляется доступ, включает в себя информацию о пространственном перемежении и информацию о дискретизации, при этом информация о пространственном перемежении указывает пространственное перемежение, примененное к многочисленным картинкам при формировании единой картинки, и при этом информация о дискретизации указывает один или более параметров, относящихся к фильтру повышающей дискретизации для восстановления каждой из многочисленных картинок в другое разрешение, причем один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание направления фильтрации, и при этом информация о пространственном перемежении дополнительно включает в себя информацию о соотношении, причем информация о соотношении указывает тип соотношения, которое существует между множеством картинок, причем информация о соотношении указывает, что множество картинок являются стереоскопическими проекциями изображения, множество картинок являются двухмерным изображением и его соответствующей картой глубин (2D+Z), множество картинок являются множеством наборов 2D+Z (MVD), множество картинок представляют изображения в формате видео с многослойной глубиной (LDV) или множество картинок представляют изображения в двух наборах LDV (DES); и выполненный с возможностью декодирования видеокартинки, чтобы предоставлять декодированное представление по меньшей мере одной из многочисленных картинок.
29. Устройство для декодирования видео, содержащее:
демодулятор для демодуляции сигнала, который включает в себя принятый видеопоток; и
декодер, выполненный с возможностью осуществления доступа к видеокартинке, которая включает в себя многочисленные картинки, объединенные в единую картинку, причем видеокартинка является частью принятого видеопотока; и выполненный с возможностью осуществления доступа к информации, которая является частью принятого видеопотока, причем информация, к которой осуществляется доступ, указывает, каким образом объединены многочисленные картинки в видеокартинке, к которой осуществляется доступ, при этом информация, к которой осуществляется доступ, включает в себя информацию о пространственном перемежении и информацию о дискретизации, при этом информация о пространственном перемежении указывает пространственное перемежение, примененное к многочисленным картинкам при формировании единой картинки, и при этом информация о дискретизации указывает один или более параметров, относящихся к фильтру повышающей дискретизации для восстановления каждой из многочисленных картинок в другое разрешение, причем один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание направления фильтрации, и при этом информация о пространственном перемежении дополнительно включает в себя информацию о соотношении, причем информация о соотношении указывает тип соотношения, которое существует между множеством картинок, причем информация о соотношении указывает, что множество картинок являются стереоскопическими проекциями изображения, множество картинок являются двухмерным изображением и его соответствующей картой глубин (2D+Z), множество картинок являются множеством наборов 2D+Z (MVD), множество картинок представляют изображения в формате видео с многослойной глубиной (LDV) или множество картинок представляют изображения в двух наборах LDV (DES); и выполненный с возможностью декодирования видеокартинки, чтобы предоставлять декодированное представление по меньшей мере одной из многочисленных картинок.
30. Читаемый процессором носитель, имеющий хранимую на нем структуру видеосигнала, причем структура видеосигнала содержит:
секцию кодированной картинки, включающую в себя кодирование видеокартинки, причем видеокартинка включает в себя многочисленные картинки, объединенные в единую картинку; и
секцию сигнализации, включающую в себя кодирование сгенерированной информации, указывающей, каким образом объединены многочисленные картинки в видеокартинке, к которой осуществляется доступ, при этом сгенерированная информация включает в себя информацию о пространственном перемежении и информацию о дискретизации, при этом информация о пространственном перемежении указывает пространственное перемежение, примененное к многочисленным картинкам при формировании единой картинки, и при этом информация о дискретизации указывает один или более параметров, относящихся к фильтру повышающей дискретизации для восстановления каждой из многочисленных картинок в другое разрешение, причем один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание направления фильтрации, и при этом информация о пространственном перемежении дополнительно включает в себя информацию о соотношении, причем информация о соотношении указывает тип соотношения, которое существует между множеством картинок, причем информация о соотношении указывает, что множество картинок являются стереоскопическими проекциями изображения, множество картинок являются двухмерным изображением и его соответствующей картой глубин (2D+Z), множество картинок являются множеством наборов 2D+Z (MVD), множество картинок представляют изображения в формате видео с многослойной глубиной (LDV) или множество картинок представляют изображения в двух наборах LDV (DES), причем сгенерированная информация предоставляет информацию для использования при декодировании кодированной видеокартинки.
31. Способ кодирования видео, содержащий этапы, на которых:
кодируют видеокартинку, которая включает в себя многочисленные картинки, объединенные в единую картинку (826);
генерируют информацию, указывающую, каким образом объединены многочисленные картинки в видеокартинке, к которой осуществляется доступ, при этом сгенерированная информация включает в себя информацию о пространственном перемежении и информацию о дискретизации, при этом информация о пространственном перемежении указывает пространственное перемежение, примененное к многочисленным картинкам при формировании единой картинки, и при этом информация о дискретизации указывает один или более параметров, относящихся к фильтру повышающей дискретизации для восстановления каждой из многочисленных картинок в другое разрешение, причем один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание направления фильтрации, и при этом информация о пространственном перемежении дополнительно включает в себя информацию о соотношении, причем информация о соотношении указывает тип соотношения, которое существует между множеством картинок, причем информация о соотношении указывает, что множество картинок являются стереоскопическими проекциями изображения, множество картинок являются двухмерным изображением и его соответствующей картой глубин (2D+Z), множество картинок являются множеством наборов 2D+Z (MVD), множество картинок представляют изображения в формате видео с многослойной глубиной (LDV) или множество картинок представляют изображения в двух наборах LDV (DES); и
формируют битовый поток, который включает в себя кодированную видеокартинку и сгенерированную информацию, причем сгенерированная информация предоставляет информацию для использования при обработке кодированной видеокартинки.
32. Способ по п.31, в котором информация о пространственном перемежении указывает пространственное перемежение типа, выбранного из группы, включающей в себя по меньшей мере два из бокового перемежения, верхне-нижнего перемежения, построчного перемежения, постолбцового перемежения и шахматного перемежения.
33. Способ по п.31, в котором информация о соотношении также предназначена для использования при обработке кодированной видеокартинки.
34. Способ по п.31, в котором сгенерированная информация дополнительно включает в себя информацию об ориентации, причем информация об ориентации указывает ориентацию по меньшей мере одной из многочисленных картинок; и
при этом информация об ориентации также предназначена для использования при обработке кодированной видеокартинки.
35. Способ по п.34, в котором информация об ориентации происходит из группы, состоящей из: ни одна картинка не имеет транспонированной ориентации, одна картинка из многочисленных картинок имеет свою ориентацию, транспонированную вертикально, и одна картинка из многочисленных картинок имеет свою ориентацию, транспонированную горизонтально.
36. Способ по п.31, в котором указание направления фильтрации указывает, что повышающая дискретизации должна выполняться в горизонтальном направлении.
37. Способ по п.31, в котором указание направления фильтрации указывает, что повышающая дискретизации должна выполняться в вертикальном направлении.
38. Способ по п.31, в котором указание направления фильтрации указывает, что повышающая дискретизации должна выполняться в горизонтальном направлении и вертикальном направлении.
39. Устройство для кодирования видео, содержащее
средство для кодирования видеокартинки, которая включает в себя многочисленные картинки, объединенные в единую картинку;
средство для генерирования информации, указывающей, каким образом объединены многочисленные картинки в видеокартинке, к которой осуществляется доступ, при этом сгенерированная информация включает в себя информацию о пространственном перемежении и информацию о дискретизации, при этом информация о пространственном перемежении указывает пространственное перемежение, примененное к многочисленным картинкам при формировании единой картинки, и при этом информация о дискретизации указывает один или более параметров, относящихся к фильтру повышающей дискретизации для восстановления каждой из многочисленных картинок в другое разрешение, причем один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание направления фильтрации, и при этом информация о пространственном перемежении дополнительно включает в себя информацию о соотношении, причем информация о соотношении указывает тип соотношения, которое существует между множеством картинок, причем информация о соотношении указывает, что множество картинок являются стереоскопическими проекциями изображения, множество картинок являются двухмерным изображением и его соответствующей картой глубин (2D+Z), множество картинок являются множеством наборов 2D+Z (MVD), множество картинок представляют изображения в формате видео с многослойной глубиной (LDV) или множество картинок представляют изображения в двух наборах LDV (DES); и
средство для формирования битового потока, который включает в себя кодированную видеокартинку и сгенерированную информацию, причем сгенерированная информация предоставляет информацию для использования при обработке кодированной видеокартинки.
40. Устройство для кодирования видео, содержащее процессор, выполненный с возможностью выполнения по меньшей мере следующего:
кодирования видеокартинки, которая включает в себя многочисленные картинки, объединенные в единую картинку (826);
генерирования информации, указывающей, каким образом объединены многочисленные картинки в видеокартинке, к которой осуществляется доступ, при этом сгенерированная информация включает в себя информацию о пространственном перемежении и информацию о дискретизации, при этом информация о пространственном перемежении указывает пространственное перемежение, примененное к многочисленным картинкам при формировании единой картинки, и при этом информация о дискретизации указывает один или более параметров, относящихся к фильтру повышающей дискретизации для восстановления каждой из многочисленных картинок в другое разрешение, причем один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание направления фильтрации, и при этом информация о пространственном перемежении дополнительно включает в себя информацию о соотношении, причем информация о соотношении указывает тип соотношения, которое существует между множеством картинок, причем информация о соотношении указывает, что множество картинок являются стереоскопическими проекциями изображения, множество картинок являются двухмерным изображением и его соответствующей картой глубин (2D+Z), множество картинок являются множеством наборов 2D+Z (MVD), множество картинок представляют изображения в формате видео с многослойной глубиной (LDV) или множество картинок представляют изображения в двух наборах LDV (DES); и
формирования битового потока, который включает в себя кодированную видеокартинку и сгенерированную информацию, причем сгенерированная информация предоставляет информацию для использования при обработке кодированной видеокартинки.
41. Читаемый процессором носитель, имеющий хранимые на нем команды для побуждения процессора выполнять по меньшей мере следующее:
кодирование видеокартинки, которая включает в себя многочисленные картинки, объединенные в единую картинку (826);
генерирование информации, указывающей, каким образом объединены многочисленные картинки в видеокартинке, к которой осуществляется доступ, при этом сгенерированная информация включает в себя информацию о пространственном перемежении и информацию о дискретизации, при этом информация о пространственном перемежении указывает пространственное перемежение, примененное к многочисленным картинкам при формировании единой картинки, и при этом информация о дискретизации указывает один или более параметров, относящихся к фильтру повышающей дискретизации для восстановления каждой из многочисленных картинок в другое разрешение, причем один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание направления фильтрации, и при этом информация о пространственном перемежении дополнительно включает в себя информацию о соотношении, причем информация о соотношении указывает тип соотношения, которое существует между множеством картинок, причем информация о соотношении указывает, что множество картинок являются стереоскопическими проекциями изображения, множество картинок являются двухмерным изображением и его соответствующей картой глубин (2D+Z), множество картинок являются множеством наборов 2D+Z (MVD), множество картинок представляют изображения в формате видео с многослойной глубиной (LDV) или множество картинок представляют изображения в двух наборах LDV (DES); и
формирование битового потока, который включает в себя кодированную видеокартинку и сгенерированную информацию, причем сгенерированная информация предоставляет информацию для использования при обработке кодированной видеокартинки.
42. Устройство для кодирования видео, содержащее:
кодер, выполненный с возможностью кодирования видеокартинки, которая включает в себя многочисленные картинки, объединенные в единую картинку, и с возможностью генерирования информации, указывающей, каким образом объединены многочисленные картинки в видеокартинке, к которой осуществляется доступ, при этом сгенерированная информация включает в себя информацию о пространственном перемежении и информацию о дискретизации, при этом информация о пространственном перемежении указывает пространственное перемежение, примененное к многочисленным картинкам при формировании единой картинки, и при этом информация о дискретизации указывает один или более параметров, относящихся к фильтру повышающей дискретизации для восстановления каждой из многочисленных картинок в другое разрешение, причем один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание направления фильтрации, и при этом информация о пространственном перемежении дополнительно включает в себя информацию о соотношении, причем информация о соотношении указывает тип соотношения, которое существует между множеством картинок, причем информация о соотношении указывает, что множество картинок являются стереоскопическими проекциями изображения, множество картинок являются двухмерным изображением и его соответствующей картой глубин (2D+Z), множество картинок являются множеством наборов 2D+Z (MVD), множество картинок представляют изображения в формате видео с многослойной глубиной (LDV) или множество картинок представляют изображения в двух наборах LDV (DES), и с возможностью формирования битового потока, который включает в себя кодированную видеокартинку и сгенерированную информацию, причем сгенерированная информация предоставляет информацию для использования при обработке кодированной видеокартинки.
43. Устройство для кодирования видео, содержащее:
кодер, выполненный с возможностью кодирования видеокартинки, которая включает в себя многочисленные картинки, объединенные в единую картинку, и с возможностью генерирования информации, указывающей, каким образом объединены многочисленные картинки в видеокартинке, к которой осуществляется доступ, при этом сгенерированная информация включает в себя информацию о пространственном перемежении и информацию о дискретизации, при этом информация о пространственном перемежении указывает пространственное перемежение, примененное к многочисленным картинкам при формировании единой картинки, и при этом информация о дискретизации указывает один или более параметров, относящихся к фильтру повышающей дискретизации для восстановления каждой из многочисленных картинок в другое разрешение, причем один или более параметров, относящихся к фильтру повышающей дискретизации, включают в себя указание направления фильтрации, и при этом информация о пространственном перемежении дополнительно включает в себя информацию о соотношении, причем информация о соотношении указывает тип соотношения, которое существует между множеством картинок, причем информация о соотношении указывает, что множество картинок являются стереоскопическими проекциями изображения, множество картинок являются двухмерным изображением и его соответствующей картой глубин (2D+Z), множество картинок являются множеством наборов 2D+Z (MVD), множество картинок представляют изображения в формате видео с многослойной глубиной (LDV) или множество картинок представляют изображения в двух наборах LDV (DES), и с возможностью формирования битового потока, который включает в себя кодированную видеокартинку и сгенерированную информацию, причем сгенерированная информация предоставляет информацию для использования при обработке кодированной видеокартинки; и
модулятор для модуляции сигнала, который включает в себя кодированную видеокартинку.
RU2015102754A 2009-01-26 2010-01-26 Упаковка кадров для кодирования видео RU2689191C2 (ru)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US20593809P 2009-01-26 2009-01-26
US61/205,938 2009-01-26
US26995509P 2009-07-01 2009-07-01
US61/269,955 2009-07-01

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
RU2011135541/08A Division RU2543954C2 (ru) 2009-01-26 2010-01-26 Упаковка кадров для кодирования видео

Publications (3)

Publication Number Publication Date
RU2015102754A RU2015102754A (ru) 2015-06-10
RU2015102754A3 RU2015102754A3 (ru) 2018-08-31
RU2689191C2 true RU2689191C2 (ru) 2019-05-24

Family

ID=42356375

Family Applications (2)

Application Number Title Priority Date Filing Date
RU2015102754A RU2689191C2 (ru) 2009-01-26 2010-01-26 Упаковка кадров для кодирования видео
RU2011135541/08A RU2543954C2 (ru) 2009-01-26 2010-01-26 Упаковка кадров для кодирования видео

Family Applications After (1)

Application Number Title Priority Date Filing Date
RU2011135541/08A RU2543954C2 (ru) 2009-01-26 2010-01-26 Упаковка кадров для кодирования видео

Country Status (10)

Country Link
US (2) US9036714B2 (ru)
EP (1) EP2389764A2 (ru)
JP (2) JP5877065B2 (ru)
KR (1) KR101676059B1 (ru)
CN (5) CN104717521B (ru)
AU (1) AU2010206977B2 (ru)
BR (1) BRPI1007163A2 (ru)
RU (2) RU2689191C2 (ru)
WO (1) WO2010085361A2 (ru)
ZA (1) ZA201104938B (ru)

Families Citing this family (117)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7068729B2 (en) 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US8692695B2 (en) 2000-10-03 2014-04-08 Realtime Data, Llc Methods for encoding and decoding data
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
WO2004034589A2 (en) 2002-10-05 2004-04-22 Digital Fountain, Inc. Systematic encoding and decoding of chain reaction codes
CN101834610B (zh) 2003-10-06 2013-01-30 数字方敦股份有限公司 通过通信信道接收从源发射的数据的方法和装置
KR101161193B1 (ko) 2004-05-07 2012-07-02 디지털 파운튼, 인크. 파일 다운로드 및 스트리밍 시스템
CN1859576A (zh) * 2005-10-11 2006-11-08 华为技术有限公司 对空间分层编码视频图象的上采样方法及其系统
JP5550834B2 (ja) 2006-02-13 2014-07-16 デジタル ファウンテン, インコーポレイテッド 可変fecオーバヘッド及び保護期間を利用したストリーミング及びバッファリング
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
WO2007134196A2 (en) 2006-05-10 2007-11-22 Digital Fountain, Inc. Code generator and decoder using hybrid codes
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9237101B2 (en) 2007-09-12 2016-01-12 Digital Fountain, Inc. Generating and communicating source identification information to enable reliable communications
US12120326B2 (en) * 2009-02-19 2024-10-15 Interdigital Madison Patent Holdings Method and apparatus for encoding and decoding 3D video content
US9281847B2 (en) 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
KR101648455B1 (ko) 2009-04-07 2016-08-16 엘지전자 주식회사 방송 송신기, 방송 수신기 및 3d 비디오 데이터 처리 방법
CN105791861B (zh) 2009-04-20 2018-12-04 杜比实验室特许公司 定向内插和数据后处理
KR101749269B1 (ko) * 2009-06-30 2017-06-22 삼성전자주식회사 적응적인 인루프 필터를 이용한 동영상 부호화와 복호화 장치 및 그 방법
US9036700B2 (en) * 2009-07-15 2015-05-19 Google Technology Holdings LLC Simulcast of stereoviews for 3D TV
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
US9225961B2 (en) 2010-05-13 2015-12-29 Qualcomm Incorporated Frame packing for asymmetric stereo video
US8918533B2 (en) 2010-07-13 2014-12-23 Qualcomm Incorporated Video switching for streaming video data
US9185439B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
CN103026706B (zh) * 2010-07-21 2016-04-20 杜比实验室特许公司 用于多层帧兼容视频传输的系统及方法
US9716920B2 (en) 2010-08-05 2017-07-25 Qualcomm Incorporated Signaling attributes for network-streamed video data
US9456015B2 (en) 2010-08-10 2016-09-27 Qualcomm Incorporated Representation groups for network streaming of coded multimedia data
US9712811B2 (en) * 2010-09-01 2017-07-18 Jeramie J Keys Viewing of different full-screen television content by different viewers at the same time using configured glasses and a related display
CA2806846A1 (en) * 2010-09-03 2012-03-08 Sony Corporation Encoding device, encoding method, decoding device, and decoding method
WO2012036464A2 (ko) * 2010-09-19 2012-03-22 엘지전자 주식회사 방송 수신기 및 3d 비디오 데이터 처리 방법
US9681117B2 (en) * 2010-10-28 2017-06-13 Lg Electronics Inc. Receiver apparatus and method for receiving a three-dimensional broadcast signal in a mobile environment
CN103210653B (zh) 2010-11-15 2016-08-31 Lg电子株式会社 用于转换帧格式的方法及使用该方法的装置
JP5879713B2 (ja) * 2010-12-09 2016-03-08 ソニー株式会社 画像処理装置、および画像処理方法、並びにプログラム
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
CA2829290C (en) * 2011-03-10 2017-10-17 Vidyo, Inc. Render-orientation information in video bitstream
US9565449B2 (en) 2011-03-10 2017-02-07 Qualcomm Incorporated Coding multiview video plus depth content
US20120236934A1 (en) * 2011-03-18 2012-09-20 Qualcomm Incorporated Signaling of multiview video plus depth content with a block-level 4-component structure
CN103563387A (zh) * 2011-05-16 2014-02-05 索尼公司 图像处理设备和图像处理方法
JP2012249137A (ja) * 2011-05-30 2012-12-13 Sony Corp 記録装置、記録方法、再生装置、再生方法、プログラム、および記録再生装置
EP2723079A4 (en) * 2011-06-15 2015-03-04 Korea Electronics Telecomm MODULABLE VIDEO ENCODING AND DECODING METHOD AND DEVICE APPLYING THE SAME
US11496760B2 (en) 2011-07-22 2022-11-08 Qualcomm Incorporated Slice header prediction for depth maps in three-dimensional video codecs
US20130188013A1 (en) * 2011-07-22 2013-07-25 Qualcomm Incorporated Mvc based 3dvc codec supporting inside view motion prediction (ivmp) mode
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US20130070051A1 (en) * 2011-09-20 2013-03-21 Cheng-Tsai Ho Video encoding method and apparatus for encoding video data inputs including at least one three-dimensional anaglyph video, and related video decoding method and apparatus
EP2579591A1 (en) * 2011-10-04 2013-04-10 Thomson Licensing Method of and device for encoding an HDR image, method of and device for reconstructing an HDR image and non-transitory storage medium
US9843844B2 (en) 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
US9473752B2 (en) 2011-11-30 2016-10-18 Qualcomm Incorporated Activation of parameter sets for multiview video coding (MVC) compatible three-dimensional video coding (3DVC)
WO2013115562A1 (ko) * 2012-01-30 2013-08-08 삼성전자 주식회사 시점변환을 위한 예측구조에 기초한 다시점 비디오 부호화 방법 및 그 장치, 시점변환을 위한 예측구조에 기초한 다시점 비디오 복호화 방법 및 그 장치
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery
CN104247433B (zh) * 2012-04-06 2018-02-06 索尼公司 解码装置和解码方法以及编码装置和编码方法
US10257488B2 (en) 2012-04-19 2019-04-09 Telefonaktiebolaget Lm Ericsson (Publ) View synthesis using low resolution depth maps
CN103491363A (zh) * 2012-06-11 2014-01-01 珠海扬智电子科技有限公司 一种多图层实现三维显示制式的方法
WO2014023330A1 (en) 2012-08-06 2014-02-13 Huawei Technologies Co., Ltd. Method for providing a multimedia message service
WO2014025294A1 (en) 2012-08-08 2014-02-13 Telefonaktiebolaget L M Ericsson (Publ) Processing of texture and depth images
US9396514B2 (en) * 2012-08-23 2016-07-19 Pixia Corp. Method and system for storing and retrieving wide-area motion imagery frames as objects on an object storage device
RU2012138174A (ru) * 2012-09-06 2014-03-27 Сисвел Текнолоджи С.Р.Л. Способ компоновки формата цифрового стереоскопического видеопотока 3dz tile format
JP6282763B2 (ja) * 2012-09-21 2018-02-21 株式会社東芝 復号装置、符号化装置、復号方法、及び符号化方法
US9992490B2 (en) 2012-09-26 2018-06-05 Sony Corporation Video parameter set (VPS) syntax re-ordering for easy access of extension parameters
US9979960B2 (en) * 2012-10-01 2018-05-22 Microsoft Technology Licensing, Llc Frame packing and unpacking between frames of chroma sampling formats with different chroma resolutions
KR20140048802A (ko) * 2012-10-08 2014-04-24 삼성전자주식회사 멀티 레이어 비디오 부호화 방법 및 장치, 멀티 레이어 비디오 복호화 방법 및 장치
US9661340B2 (en) 2012-10-22 2017-05-23 Microsoft Technology Licensing, Llc Band separation filtering / inverse filtering for frame packing / unpacking higher resolution chroma sampling formats
CN102905136B (zh) * 2012-10-29 2016-08-24 安科智慧城市技术(中国)有限公司 一种视频编解码方法、系统
US9568985B2 (en) * 2012-11-23 2017-02-14 Mediatek Inc. Data processing apparatus with adaptive compression algorithm selection based on visibility of compression artifacts for data communication over camera interface and related data processing method
US10419778B2 (en) 2013-01-04 2019-09-17 Sony Corporation JCTVC-L0227: VPS_extension with updates of profile-tier-level syntax structure
US10219006B2 (en) 2013-01-04 2019-02-26 Sony Corporation JCTVC-L0226: VPS and VPS_extension updates
US9325992B2 (en) * 2013-01-07 2016-04-26 Qualcomm Incorporated Signaling of clock tick derivation information for video timing in video coding
KR101511227B1 (ko) * 2013-04-12 2015-04-16 (주)이엠아이지 플래시 기반 입체영상 생성 방법
CN103198523B (zh) * 2013-04-26 2016-09-21 清华大学 一种基于多深度图的非刚体三维重建方法及系统
US9497439B2 (en) * 2013-07-15 2016-11-15 Ati Technologies Ulc Apparatus and method for fast multiview video coding
TWI602145B (zh) * 2013-10-02 2017-10-11 國立成功大學 包裝圖框之解包裝方法、裝置及系統
KR102156402B1 (ko) * 2013-11-05 2020-09-16 삼성전자주식회사 영상 처리 방법 및 장치
KR102111436B1 (ko) * 2014-01-06 2020-05-18 에스케이 텔레콤주식회사 다중 영상의 단일 비트 스트림 생성방법 및 생성장치
JP6456980B2 (ja) * 2014-02-10 2019-01-23 エルジー エレクトロニクス インコーポレイティド 3d放送サービスのための放送信号の送受信方法及び装置
US9031138B1 (en) * 2014-05-01 2015-05-12 Google Inc. Method and system to combine multiple encoded videos for decoding via a video docoder
WO2015183480A1 (en) * 2014-05-30 2015-12-03 Thomson Licensing High frame rate tiling compression technique
US9955159B2 (en) 2014-10-31 2018-04-24 Google Llc Multi-video decoding with input switching
US9854201B2 (en) 2015-01-16 2017-12-26 Microsoft Technology Licensing, Llc Dynamically updating quality to higher chroma sampling rate
US9749646B2 (en) 2015-01-16 2017-08-29 Microsoft Technology Licensing, Llc Encoding/decoding of high chroma resolution details
US20160330453A1 (en) * 2015-05-05 2016-11-10 Cisco Technology, Inc. Parameter Set Header
JP6971976B2 (ja) * 2015-09-21 2021-11-24 ハイファイ ユーエスエー インコーポレーテッド 不完全な電磁経路を通じた信号の搬送
WO2017093916A1 (en) * 2015-11-30 2017-06-08 Nokia Technologies Oy Method and apparatus live virtual reality streaming
US10636121B2 (en) * 2016-01-12 2020-04-28 Shanghaitech University Calibration method and apparatus for panoramic stereo video system
EP3236657A1 (en) * 2016-04-21 2017-10-25 Ultra-D Coöperatief U.A. Dual mode depth estimator
CN115037949A (zh) 2016-05-27 2022-09-09 松下电器(美国)知识产权公司 编码方法、解码方法、及编码和解码方法
WO2018045108A1 (en) 2016-09-02 2018-03-08 Vid Scale, Inc. Method and system for signaling of 360-degree video information
US10368080B2 (en) 2016-10-21 2019-07-30 Microsoft Technology Licensing, Llc Selective upsampling or refresh of chroma sample values
WO2018092642A1 (ja) * 2016-11-15 2018-05-24 ソニー株式会社 送信装置、送信方法、受信装置および受信方法
CN106791854B (zh) * 2016-11-22 2019-11-29 北京疯景科技有限公司 图像编码、解码方法及装置
BR112019016820B1 (pt) * 2017-04-11 2022-05-24 Dolby Laboratories Licensing Corporation Método para experiências de entretenimento aumentadas em camadas
WO2019131778A1 (ja) * 2017-12-26 2019-07-04 シャープ株式会社 画像復号装置及び画像符号化装置
CN117834831A (zh) * 2018-01-16 2024-04-05 Vid拓展公司 用于360度视频译码的自适应帧封装
EP3515067A1 (en) * 2018-01-19 2019-07-24 Thomson Licensing A method and apparatus for encoding and decoding three-dimensional scenes in and from a data stream
EP3515068A1 (en) * 2018-01-19 2019-07-24 Thomson Licensing A method and apparatus for encoding and decoding three-dimensional scenes in and from a data stream
EP3515066A1 (en) * 2018-01-19 2019-07-24 Thomson Licensing A method and apparatus for encoding and decoding three-dimensional scenes in and from a data stream
US10929704B2 (en) * 2018-03-12 2021-02-23 Phantom Auto Inc. Landscape video stream compression using computer vision techniques
WO2019182704A1 (en) * 2018-03-21 2019-09-26 Futurewei Technologies, Inc. Signaling a constraint flag in a video bitstream
KR20210107128A (ko) 2019-01-09 2021-08-31 후아웨이 테크놀러지 컴퍼니 리미티드 비디오 인코더, 비디오 디코더 및 대응하는 방법
CN114503581A (zh) 2019-08-06 2022-05-13 Op方案有限责任公司 基于块的自适应分辨率管理
EP4011085A4 (en) * 2019-08-06 2023-07-26 OP Solutions, LLC ADAPTIVE RESOLUTION MANAGEMENT USING SUBFRAME
EP4011084A4 (en) 2019-08-06 2023-08-09 OP Solutions PRESCALE ADAPTIVE RESOLUTION MANAGEMENT
KR20220088680A (ko) 2019-08-06 2022-06-28 오피 솔루션즈, 엘엘씨 프레임 타입에 기반한 적응적 해상도 관리의 묵시적 시그널링
MX2022005534A (es) * 2019-11-08 2022-08-04 Op Solutions Llc Metodos y sistemas para recorte adaptativo..
US11677979B2 (en) * 2020-08-24 2023-06-13 Tencent America LLC Freeview video coding
US11146818B1 (en) * 2020-09-21 2021-10-12 Tencent America LLC Methods of intra picture block prediction for multi-view video compression
US11924408B2 (en) * 2021-01-14 2024-03-05 Tencent America LLC Method and apparatus for video coding
WO2023001042A1 (en) * 2021-07-17 2023-01-26 Beijing Bytedance Network Technology Co., Ltd. Signaling of down-sampling information for video bitstreams
US12041248B2 (en) * 2021-08-02 2024-07-16 Mediatek Singapore Pte. Ltd. Color component processing in down-sample video coding
WO2023097095A1 (en) * 2021-11-29 2023-06-01 Beijing Dajia Internet Information Technology Co., Ltd. Invertible filtering for video coding
WO2024147066A1 (en) * 2023-01-03 2024-07-11 Nokia Technologies Oy Selection of frame rate upsampling filter
CN117544782A (zh) * 2023-11-09 2024-02-09 四川新视创伟超高清科技有限公司 一种无人机8k视频中目标增强的编码方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040028288A1 (en) * 2002-01-14 2004-02-12 Edgar Albert D. Method, system, and software for improving signal quality using pyramidal decomposition
EP1501318A1 (en) * 2002-04-25 2005-01-26 Sharp Corporation Image encodder, image decoder, record medium, and image recorder
WO2006041261A1 (en) * 2004-10-16 2006-04-20 Electronics And Telecommunications Research Institute Method and system for encoding/decoding multi-view video based on layered-depth image
RU2007103160A (ru) * 2004-07-29 2008-08-10 Майкрософт Корпорейшн (Us) Обработка изображений с помощью линейных параметров светоустановки и других усовершенствований обработки изображений
WO2008127676A2 (en) * 2007-04-12 2008-10-23 Thomson Licensing Tiling in video encoding and decoding
US20090002481A1 (en) * 2007-06-26 2009-01-01 Samsung Electronics Co., Ltd. Method and apparatus for generating stereoscopic image bitstream using block interleaved method

Family Cites Families (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0461659B1 (en) * 1990-06-13 1997-03-26 Mitsubishi Denki Kabushiki Kaisha Coding method and coding apparatus
US5193000A (en) 1991-08-28 1993-03-09 Stereographics Corporation Multiplexing technique for stereoscopic video system
US5689641A (en) 1993-10-01 1997-11-18 Vicor, Inc. Multimedia collaboration system arrangement for routing compressed AV signal through a participant site without decompressing the AV signal
US5748786A (en) * 1994-09-21 1998-05-05 Ricoh Company, Ltd. Apparatus for compression using reversible embedded wavelets
US6055012A (en) * 1995-12-29 2000-04-25 Lucent Technologies Inc. Digital multi-view video compression with complexity and compatibility constraints
DE19619598A1 (de) 1996-05-15 1997-11-20 Deutsche Telekom Ag Verfahren zur Speicherung oder Übertragung von stereoskopischen Videosignalen
US6075905A (en) 1996-07-17 2000-06-13 Sarnoff Corporation Method and apparatus for mosaic image construction
US6173087B1 (en) 1996-11-13 2001-01-09 Sarnoff Corporation Multi-view image registration with application to mosaicing and lens distortion correction
KR100281329B1 (ko) * 1998-01-31 2001-02-01 전주범 이진 형상 신호의 모드 신호 부호화 방법 및 그 복원 방법
DE69942595D1 (de) * 1998-05-27 2010-08-26 Nippon Telegraph & Telephone Verschachtelungsvorrichtung und Verfahren mit Fehlerschutz
US6157396A (en) 1999-02-16 2000-12-05 Pixonics Llc System and method for using bitstream information to process images for use in digital display systems
US6390980B1 (en) * 1998-12-07 2002-05-21 Atl Ultrasound, Inc. Spatial compounding with ultrasonic doppler signal information
US6223183B1 (en) 1999-01-29 2001-04-24 International Business Machines Corporation System and method for describing views in space, time, frequency, and resolution
DE10016074B4 (de) 2000-04-01 2004-09-30 Tdv Technologies Corp. Verfahren und Vorrichtung zur Erzeugung von 3D-Bildern
US7254265B2 (en) 2000-04-01 2007-08-07 Newsight Corporation Methods and systems for 2D/3D image conversion and optimization
GB0013273D0 (en) 2000-06-01 2000-07-26 Philips Electronics Nv Video signal encoding and buffer management
CN1210645C (zh) 2000-09-18 2005-07-13 国际商业机器公司 管理计算机显示器上的视图的方法
US6859235B2 (en) * 2001-05-14 2005-02-22 Webtv Networks Inc. Adaptively deinterlacing video on a per pixel basis
KR20040071145A (ko) 2001-11-24 2004-08-11 티디브이 테크놀러지스 코포레이션 2차원 영상 시퀀스로부터 입체 영상 시퀀스를 생성하는방법 및 장치
CA2380105A1 (en) 2002-04-09 2003-10-09 Nicholas Routhier Process and system for encoding and playback of stereoscopic video sequences
JP4154569B2 (ja) 2002-07-10 2008-09-24 日本電気株式会社 画像圧縮伸長装置
CN101982979B (zh) * 2002-07-16 2013-01-02 韩国电子通信研究院 立体适配方法和立体适配装置
US20050041736A1 (en) * 2003-05-07 2005-02-24 Bernie Butler-Smith Stereoscopic television signal processing method, transmission system and viewer enhancements
US7489342B2 (en) 2004-12-17 2009-02-10 Mitsubishi Electric Research Laboratories, Inc. Method and system for managing reference pictures in multiview videos
US20040260827A1 (en) 2003-06-19 2004-12-23 Nokia Corporation Stream switching based on gradual decoder refresh
KR100519776B1 (ko) * 2003-11-24 2005-10-07 삼성전자주식회사 영상 신호의 해상도 변환 방법 및 장치
KR100587952B1 (ko) 2003-12-05 2006-06-08 한국전자통신연구원 좌우영상의 비대칭적 크기로의 축소에 의한 보상을 수행하는 영상 부호화/복호화 장치 및 그 방법
US7599435B2 (en) * 2004-01-30 2009-10-06 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Video frame encoding and decoding
GB2412519B (en) 2004-03-23 2010-11-03 British Broadcasting Corp Monitoring system
JP4542447B2 (ja) 2005-02-18 2010-09-15 株式会社日立製作所 画像の符号化/復号化装置、符号化/復号化プログラム及び符号化/復号化方法
KR100585966B1 (ko) * 2004-05-21 2006-06-01 한국전자통신연구원 3차원 입체 영상 부가 데이터를 이용한 3차원 입체 디지털방송 송/수신 장치 및 그 방법
KR100679740B1 (ko) 2004-06-25 2007-02-07 학교법인연세대학교 시점 선택이 가능한 다시점 동영상 부호화/복호화 방법
KR101323966B1 (ko) * 2004-07-30 2013-10-31 익스트림 리얼리티 엘티디. 이미지 프로세싱을 기반으로 한 3d 공간 차원용 시스템 및 방법
KR100775871B1 (ko) * 2004-10-12 2007-11-13 한국전자통신연구원 영상합성기반 다시점 동영상 부호화 및 복호화를 수행하기위한 방법 및 장치
EP1667448A1 (en) 2004-12-02 2006-06-07 Deutsche Thomson-Brandt Gmbh Method and apparatus for encoding and for decoding a main video signal and one or more auxiliary video signals
US7728878B2 (en) 2004-12-17 2010-06-01 Mitsubishi Electric Research Labortories, Inc. Method and system for processing multiview videos for view synthesis using side information
US20060176318A1 (en) * 2005-02-09 2006-08-10 Martin Virginia L Method for manipulating artwork to form decorative pieces
US8228994B2 (en) 2005-05-20 2012-07-24 Microsoft Corporation Multi-view video coding based on temporal and view decomposition
KR100716999B1 (ko) 2005-06-03 2007-05-10 삼성전자주식회사 영상의 대칭성을 이용한 인트라 예측 방법, 이를 이용한영상의 복호화, 부호화 방법 및 장치
JP5020947B2 (ja) 2005-06-23 2012-09-05 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 画像及び関連する深さデータの結合されたやり取り
US7668366B2 (en) 2005-08-09 2010-02-23 Seiko Epson Corporation Mosaic image data processing
US20100158133A1 (en) 2005-10-12 2010-06-24 Peng Yin Method and Apparatus for Using High-Level Syntax in Scalable Video Encoding and Decoding
MY159176A (en) 2005-10-19 2016-12-30 Thomson Licensing Multi-view video coding using scalable video coding
US7903737B2 (en) * 2005-11-30 2011-03-08 Mitsubishi Electric Research Laboratories, Inc. Method and system for randomly accessing multiview videos with known prediction dependency
US8457219B2 (en) 2005-12-30 2013-06-04 Ikanos Communications, Inc. Self-protection against non-stationary disturbances
US7956930B2 (en) * 2006-01-06 2011-06-07 Microsoft Corporation Resampling and picture resizing operations for multi-resolution video coding and decoding
ZA200805337B (en) 2006-01-09 2009-11-25 Thomson Licensing Method and apparatus for providing reduced resolution update mode for multiview video coding
WO2007081176A1 (en) 2006-01-12 2007-07-19 Lg Electronics Inc. Processing multiview video
US20070205367A1 (en) * 2006-03-01 2007-09-06 General Electric Company Apparatus and method for hybrid computed tomography imaging
KR101245251B1 (ko) 2006-03-09 2013-03-19 삼성전자주식회사 균일한 화질을 제공하는 다시점 영상 부호화 및 복호화방법 및 장치
JP2008034892A (ja) * 2006-03-28 2008-02-14 Victor Co Of Japan Ltd 多視点画像符号化装置
MX2008011652A (es) * 2006-03-29 2008-09-22 Thomson Licensing Metodos y aparatos para usarse en un sistema de codificacion de video de multiples vistas.
US7609906B2 (en) 2006-04-04 2009-10-27 Mitsubishi Electric Research Laboratories, Inc. Method and system for acquiring and displaying 3D light fields
US8139142B2 (en) 2006-06-01 2012-03-20 Microsoft Corporation Video manipulation of red, green, blue, distance (RGB-Z) data including segmentation, up-sampling, and background substitution techniques
WO2008024345A1 (en) 2006-08-24 2008-02-28 Thomson Licensing Adaptive region-based flipping video coding
KR101362941B1 (ko) * 2006-11-01 2014-02-17 한국전자통신연구원 스테레오스코픽 콘텐츠 재생에 이용되는 메타 데이터의복호화 방법 및 장치
US8515194B2 (en) 2007-02-21 2013-08-20 Microsoft Corporation Signaling and uses of windowing information for images
WO2008140190A1 (en) 2007-05-14 2008-11-20 Samsung Electronics Co, . Ltd. Method and apparatus for encoding and decoding multi-view image
JP4418827B2 (ja) 2007-05-16 2010-02-24 三菱電機株式会社 画像表示装置及び方法、並びに画像発生装置及び方法
US8373744B2 (en) 2007-06-07 2013-02-12 Reald Inc. Stereoplexing for video and film applications
KR100962696B1 (ko) 2007-06-07 2010-06-11 주식회사 이시티 부호화된 스테레오스코픽 영상 데이터 파일의 구성방법
EP2757788B1 (en) 2007-06-19 2020-03-11 Electronics and Telecommunications Research Institute Metadata structure for storing and playing stereoscopic data, and method for storing stereoscopic content file using this metadata
MY162861A (en) 2007-09-24 2017-07-31 Koninl Philips Electronics Nv Method and system for encoding a video data signal, encoded video data signal, method and system for decoding a video data signal
US8218855B2 (en) 2007-10-04 2012-07-10 Samsung Electronics Co., Ltd. Method and apparatus for receiving multiview camera parameters for stereoscopic image, and method and apparatus for transmitting multiview camera parameters for stereoscopic image
KR101506217B1 (ko) 2008-01-31 2015-03-26 삼성전자주식회사 스테레오스코픽 영상의 부분 데이터 구간 재생을 위한스테레오스코픽 영상 데이터스트림 생성 방법과 장치, 및스테레오스코픽 영상의 부분 데이터 구간 재생 방법과 장치
US20090219985A1 (en) 2008-02-28 2009-09-03 Vasanth Swaminathan Systems and Methods for Processing Multiple Projections of Video Data in a Single Video File
US8878836B2 (en) 2008-02-29 2014-11-04 Samsung Electronics Co., Ltd. Method and apparatus for encoding datastream including additional information on multiview image and method and apparatus for decoding datastream by using the same
KR101506219B1 (ko) 2008-03-25 2015-03-27 삼성전자주식회사 3차원 영상 컨텐츠 제공 방법, 재생 방법, 그 장치 및 그기록매체
US20110135005A1 (en) 2008-07-20 2011-06-09 Dolby Laboratories Licensing Corporation Encoder Optimization of Stereoscopic Video Delivery Systems
US8106924B2 (en) 2008-07-31 2012-01-31 Stmicroelectronics S.R.L. Method and system for video rendering, computer program product therefor
EP2197217A1 (en) 2008-12-15 2010-06-16 Koninklijke Philips Electronics N.V. Image based 3D video format

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040028288A1 (en) * 2002-01-14 2004-02-12 Edgar Albert D. Method, system, and software for improving signal quality using pyramidal decomposition
EP1501318A1 (en) * 2002-04-25 2005-01-26 Sharp Corporation Image encodder, image decoder, record medium, and image recorder
RU2007103160A (ru) * 2004-07-29 2008-08-10 Майкрософт Корпорейшн (Us) Обработка изображений с помощью линейных параметров светоустановки и других усовершенствований обработки изображений
WO2006041261A1 (en) * 2004-10-16 2006-04-20 Electronics And Telecommunications Research Institute Method and system for encoding/decoding multi-view video based on layered-depth image
WO2008127676A2 (en) * 2007-04-12 2008-10-23 Thomson Licensing Tiling in video encoding and decoding
US20090002481A1 (en) * 2007-06-26 2009-01-01 Samsung Electronics Co., Ltd. Method and apparatus for generating stereoscopic image bitstream using block interleaved method

Also Published As

Publication number Publication date
CN104702960B (zh) 2018-01-02
JP2012516114A (ja) 2012-07-12
CN102365869B (zh) 2015-04-29
US20150222928A1 (en) 2015-08-06
US20110286530A1 (en) 2011-11-24
US9420310B2 (en) 2016-08-16
RU2015102754A3 (ru) 2018-08-31
AU2010206977B2 (en) 2016-02-25
CN104717521B (zh) 2018-06-01
CN104768031A (zh) 2015-07-08
RU2015102754A (ru) 2015-06-10
CN104768031B (zh) 2018-02-09
US9036714B2 (en) 2015-05-19
CN102365869A (zh) 2012-02-29
JP5877065B2 (ja) 2016-03-02
JP6176871B2 (ja) 2017-08-09
CN104768032B (zh) 2018-06-01
CN104768032A (zh) 2015-07-08
WO2010085361A3 (en) 2010-10-21
ZA201104938B (en) 2012-10-31
RU2011135541A (ru) 2013-03-10
KR101676059B1 (ko) 2016-11-14
JP2016105631A (ja) 2016-06-09
WO2010085361A2 (en) 2010-07-29
CN104702960A (zh) 2015-06-10
KR20110113752A (ko) 2011-10-18
BRPI1007163A2 (pt) 2018-09-25
RU2543954C2 (ru) 2015-03-10
AU2010206977A1 (en) 2011-08-04
EP2389764A2 (en) 2011-11-30
CN104717521A (zh) 2015-06-17

Similar Documents

Publication Publication Date Title
RU2689191C2 (ru) Упаковка кадров для кодирования видео
JP6825155B2 (ja) ビデオ符号化及び復号化におけるタイリング
EP2591609B1 (en) Method and apparatus for multi-layered image and video coding using reference processing signals
US20110038418A1 (en) Code of depth signal
JP2009513074A (ja) スケーラブル映像符号化を用いた多視点映像符号化
RU2789309C1 (ru) Мозаичное расположение при кодировании и декодировании видео

Legal Events

Date Code Title Description
PD4A Correction of name of patent owner
PC41 Official registration of the transfer of exclusive right

Effective date: 20191111