УСТРОЙСТВО ОБРАБОТКИ ИЗОБРАЖЕНИЯ И СПОСОБ ОБРАБОТКИ ИЗОБРАЖЕНИЯ
IMAGE PROCESSING DEVICE AND IMAGE PROCESSING METHOD

Область техники, к которой относится изобретение
Настоящее раскрытие относится к устройству обработки изображения и способу обработки изображения.
Уровень техники
Стандарты схемы кодирования изображения, называемой Высокоэффективное кодирование видеоданных (HEVC), разрабатываемые Joint Collaboration Team-Video Coding (JCTVC), которая представляет собой объединенную организацию по стандартизации ITU-T и ISO/IEC, в настоящее время выполняется с целью улучшения эффективности кодирования, в большей степени, чем H.264/AVC (см., например, непатентную литературу 1, представленную ниже).
HEVC обеспечивает не только кодирование одного уровня, но также и масштабируемое кодирование видеоданных, как в известных схемах кодирования изображения, таких как MPEG2 и усовершенствованное кодирование видеоданных (AVC) (например, см. представленную ниже непатентную литературу 2). Технология масштабируемого кодирования видеоданных HEVC также называется масштабируемым HEVC (SHVC). В SHVC, в то время как значение уровня расширения кодируют в схеме HEVC, основный уровень может быть кодирован в схеме HEVC или может быть кодирован в другой схеме кодирования изображения, кроме схемы HEVC (например, в схеме AVC).
Обычно масштабируемое кодирование видеоданных относится к технологии для иерархического кодирования уровня, передающего необработанный сигнал изображения, и уровня, передающего сигнал изображения более высокого качества. Типичные атрибуты, для которых установлена иерархия при масштабируемом кодировании видеоданных, в основном, включают в себя следующие три:
- Пространственная масштабируемость: иерархию устанавливают для пространственного разрешения или размеров изображения.
- Временная масштабируемость: иерархию устанавливают для скорости передачи кадров.
- Масштабируемость отношения "сигнал-шум" (SNR): иерархию устанавливают для отношения SN.
Далее, хотя это еще не принято в стандарте, также описываются масштабируемость глубины битов и масштабируемость формата цветности.
При масштабируемом кодировании видеоданных, эффективность кодирования может быть улучшена путем кодирования только на одном уровне параметра, который может повторно использоваться на разных уровнях (например, см. непатентную литературу 3).
Список литературы
Непатентная литература
th
th
Непатентная литература 1: “High Efficiency Video Coding (HEVC) text specification draft 9” by Benjamin Bross, Woo-Jin Han, Jens-Rainer Ohm, Gary J. Sullivan, Thomas Wiegand (JCTVC-K1003_v9, October 10 to 19, 2012)
th
th
Непатентная литература 2: “NAL unit header and parameter set designs for HEVC extensions” by Jill Boyce, Ye-Kui Wang (JCTVC-K1007, October 10 to 19, 2012)
th
th
Непатентная Литература 3: “TE6: Inter-layer syntax prediction from AVC base layer” by Jill Boyce, Kawamura Kei, Haricharan Lakshman (JCTVC-K1106v2, October 10 to 19, 2012)
Раскрытие изобретения
Техническая задача
В соответствии с технологиями масштабируемого кодирования видеоданных, предложенными до настоящего времени, однако, множество параметров, относящихся к квантованию данных коэффициента преобразования после ортогонального преобразования, не используются повторно на уровнях. Для оптимизации эффективности кодирования желательно обеспечить повторное использование параметров, относящихся к квантованию на уровнях, если это возможно. Этот момент относится не только к масштабируемому кодированию видеоданных, но также и к общему многоуровневому кодеку, который поддерживает прогнозирование между уровнями. Другой пример многоуровневого кодека представляет собой многопроекционный кодек.
Решение задачи
В соответствии с вариантом осуществления настоящего раскрытия, обеспечивается устройство обработки изображения, включающее в себя блок управления, выполненный с возможностью установки, на основе смещения первого параметра квантования, установленного для компонента цветности первого уровня, смещения второго параметра квантования, для компонента цветности второго уровня, декодированного со ссылкой на первый уровень, и блок обратного квантования, выполненный с возможностью обратного квантования данных коэффициента преобразования компонента цветности второго уровня, с использованием параметра квантования, вычисленного с использованием смещения второго параметра квантования, установленного блоком управления.
Упомянутое выше устройство обработки изображения может обычно быть реализовано, как устройство декодирования изображения, которое декодирует изображение.
В соответствии с другим вариантом осуществления настоящего раскрытия, обеспечивается способ обработки изображения, включающий в себя этапы, на которых: устанавливают, на основе смещения первого параметра квантования, установленного для компонента цветности первого уровня, второй параметр квантования, смещенный для компонента цветности второго уровня, декодированного со ссылкой на первый уровень, и выполняют преобразование с обратным квантованием данных коэффициента компонента цветности второго уровня, с использованием параметра квантования, вычисленного, с использованием второго установленного смещения второго параметра квантования.
В соответствии с другим вариантом осуществления настоящего раскрытия, обеспечивается устройство обработки изображения, включающее в себя блок квантования, выполненный с возможностью квантования данных коэффициента преобразования компонента цветности второго уровня, кодированных со ссылкой на первый уровень, с использованием заданного параметра квантования, и блок кодирования, выполненный с возможностью кодирования смещения второго параметра квантования компонента цветности второго уровня, вычисленного на основе первого параметра квантования, установленного со смещением, для компонента цветности первого уровня и заданного параметра квантования.
Упомянутое выше устройство обработки изображения обычно может быть реализовано, как устройство кодирования изображения, которое кодирует изображение.
В соответствии с другим вариантом осуществления настоящего раскрытия, обеспечивается способ обработки изображения, включающий в себя этапы, на которых: квантуют данные коэффициента преобразования компонента цветности второго уровня, кодированные со ссылкой на первый уровень, с использованием заданного параметра квантования, и кодируют смещение второго параметра квантования компонента цветности второго уровня, вычисленного на основе смещения первого параметра квантования, установленного для компонента цветности первого уровня и заданного параметра квантования.
Предпочтительные эффекты изобретения
В соответствии с технологией, относящейся к настоящему раскрытию, в многоуровневом кодеке, эффективность кодирования может быть повышена, путем повторного использования параметра, относящего к уровням квантования.
Краткое описание чертежей
На фиг. 1 представлена иллюстративная схема для описания масштабируемого кодирования видеоданных.
На фиг. 2 представлена иллюстративная схема для описания гранулярности управления скоростью.
На фиг. 3 представлена иллюстративная схема для описания примера отношения между параметрами квантования и шагами квантования.
На фиг. 4 представлена иллюстративная схема для описания примера ссылочной взаимосвязи блоков при прогнозировании в-CTB и при прогнозировании между-CTB.
На фиг. 5 показана блок-схема, представляющая схематическую конфигурацию устройства кодирования изображения в соответствии с вариантом осуществления.
На фиг. 6 показана блок-схема, представляющая схематическую конфигурацию устройства декодирования изображения в соответствии с вариантом осуществления.
На фиг. 7 показана блок-схема, представляющая пример конфигурации блока кодирования EL, представленного на фиг. 5.
На фиг. 8 показана блок-схема, представляющая пример конфигурации блока управления квантованием, представленного на фиг. 7.
На фиг. 9A показана первая иллюстративная схема для описания повторного использования матриц квантования.
На фиг. 9B показана вторая иллюстративная схема для описания повторного использования матриц квантования.
На фиг. 9C показана третья иллюстративная схема для описания повторного использования матриц квантования.
На фиг. 9D показана четвертая иллюстративная схема для описания повторного использования матриц квантования.
На фиг. 10 показана блок-схема последовательности операций, представляющая пример последовательности операций схематического потока обработки для кодирования в соответствии с вариантом осуществления.
На фиг. 11 показана блок-схема последовательности операций, представляющая пример последовательности операций потока обработки, относящейся к квантованию, при обработке кодирования уровня расширения.
На фиг. 12 показана блок-схема, представляющая пример конфигурации блока декодирования EL, представленного на фиг. 6.
На фиг. 13 показана блок-схема, представляющая пример конфигурации блока управления обратным квантованием, представленного на фиг. 12.
На фиг. 14 показана блок-схема последовательности операций, представляющая пример последовательности операций схемы последовательности обработки для декодирования, в соответствии с вариантом осуществления.
На фиг. 15 показана блок-схема последовательности операций, представляющая пример последовательности операций потока обработки, относящейся к обратному квантованию при обработке декодирования на уровне расширения.
На фиг. 16A показана первая иллюстративная схема для описания примера синтаксиса уровня расширения, которая может использоваться в варианте осуществления.
На фиг. 16B показана вторая иллюстративная схема для описания примера синтаксиса уровня расширения, которая может использоваться в варианте осуществления.
На фиг. 16C показана третья иллюстративная схема для описания примера синтаксиса уровня расширения, которая может использоваться в варианте осуществления.
На фиг. 16D представлена иллюстративная схема для описания первого модифицированного примера синтаксиса уровня расширения.
На фиг. 16E представлена иллюстративная схема для описания второго модифицированного примера синтаксиса уровня расширения.
На фиг. 17A показана первая иллюстративная схема для описания комбинации кодеков, которые могут быть разрешены или запрещены.
На фиг. 17B показана вторая иллюстративная схема для описания комбинации кодеков, которые могут быть разрешены или запрещены.
На фиг. 18 показана блок-схема, представляющая пример схематической конфигурации телевизора.
На фиг. 19 показана блок-схема, представляющая пример схематической конфигурации мобильного телефона.
На фиг. 20 показана блок-схема, представляющая пример схематической конфигурации устройства записи и воспроизведения.
На фиг. 21 показана блок-схема, представляющая пример схематической конфигурации устройства формирования изображения.
На фиг. 22 представлена иллюстративная схема для описания первого примера использования масштабируемого кодирования видеоданных.
На фиг. 23 представлена иллюстративная схема для описания второго примера использования масштабируемого кодирования видеоданных.
На фиг. 24 представлена иллюстративная схема для описания третьего примера использования масштабируемого кодирования видеоданных.
На фиг. 25 представлена иллюстративная схема для описания многопроекционного кодека.
На фиг. 26 показана блок-схема, представляющая схематическую конфигурацию устройства кодирования изображения для многопроекционного кодека.
На фиг. 27 показана блок-схема, представляющая схематическую конфигурацию устройства декодирования изображения для многопроекционного кодека.
На фиг. 28 показана блок-схема, представляющая пример схематической конфигурации видеонабора.
На фиг. 29 показана блок-схема, представляющая пример схематической конфигурации видеопроцессора.
На фиг. 30 показана блок-схема, представляющая другой пример схематической конфигурации видеопроцессора.
На фиг. 31 показана иллюстративная схема, представляющая краткий обзор системы воспроизведения содержания.
На фиг. 32 показана иллюстративная схема, представляющая пример потока данных в системе воспроизведения содержания.
На фиг. 33 показана иллюстративная схема, представляющая конкретный пример MPD.
На фиг. 34 показаны блок-схема, представляющая пример конфигурации содержания сервера.
На фиг. 35 показана блок-схема, представляющая пример конфигурации устройства воспроизведения содержания.
На фиг. 36 показана блок-схема, представляющая другой пример конфигурации содержания сервера.
На фиг. 37 показана половина предыдущей схемы последовательности, представляющая основную последовательность операций в системе беспроводной связи, которая формируется в режиме P2P Wi-Fi.
На фиг. 38 показана половина более поздней схемы последовательности, представляющая основную последовательность операций в системе беспроводной связи, которая формируется в режиме P2P Wi-Fi.
На фиг. 39 показана иллюстративная схема представляющая пример формата фрейма для фрейма MAC для расширенной последовательности операций.
На фиг. 40 показана схема последовательности, представляющая расширенную последовательность операций.
Осуществление изобретения
Ниже будут подробно описаны предпочтительные варианты осуществления настоящего раскрытия со ссылкой на приложенные чертежи. Следует отметить, что в данном описании и на чертежах, элементы, которые имеют, по существу, одинаковую функцию и структуру, обозначены одинаковыми номерами ссылочных позиций, и повторное их пояснение исключено.
Кроме того, описание будет представлено в следующем порядке.
1. Краткий обзор
1-1. Масштабируемое кодирование видеоданных
1-2. Общее управление скоростью
1-3. Параметр квантования компонента цветности
1-4. Матрица квантования
1-5. Пример основной конфигурации кодера
1-6. Пример основной конфигурации декодера
2. Пример конфигурации блока кодирования EL в соответствии с вариантом осуществления
2-1. Общая конфигурация
2-2. Подробная конфигурация блока управления квантованием
3. Поток обработки кодирования в соответствии с вариантом осуществления
3-1. Схема потока
3-2. Обработка, относящаяся к квантованию
4. Пример конфигурации блока декодирования EL в соответствии с вариантом осуществления
4-1. Общая конфигурация
4-2. Подробная конфигурация блока управления обратным квантованием
5. Поток обработки декодирования в соответствии с вариантом осуществления
5-1. Схема потока
5-2. Обработка, относящаяся к обратному квантованию
5-3. Пример синтаксиса
6. Пример комбинации кодека
7. Пример применения
7-1. Применение к различным продуктам
7-2. Различные варианты использования масштабируемого кодирования видеоданных
7-3. Применение для другого кодека
7-4. Различные уровни установки
7-5. Система, в которой используется MPEG-DASH
7-6. Система, в которой используется режим P2P для Wi-Fi
8. Заключение
1. Краткий обзор
1-1. Масштабируемое кодирование видеоданных
При масштабируемом кодировании видеоданных кодируют множество уровней, каждый из которых содержит последовательность изображений. Основной уровень представляет собой уровень, кодируемый первым, для представления изображения самого низкого качества. Кодированный поток основного уровня может быть независимо декодирован, без декодирования кодированных потоков других уровней. Другие уровни, кроме основного уровня, представляют собой уровни, называемые уровнями расширения, представляющие изображения более высокого качества. Кодированные потоки уровней расширения кодируют, используя информацию, содержащуюся в кодированном потоке основного уровня. Поэтому для воспроизведения изображения уровня расширения, декодируют кодированные потоки, как основного уровня, так и уровня расширения. Количество уровней, обрабатываемых при масштабируемом кодировании видеоданных, может представлять собой любое количество, равное или большее 2. Когда кодируют три уровня или больше, самый нижний уровень представляет собой основной уровень, и остальные множество уровней представляют собой уровни расширения. Для кодированного потока более высокого уровня расширения информация, содержащаяся в кодированных потоках более низкого уровня расширения и основного уровня, может использоваться для кодирования и декодирования.
На фиг. 1 показаны три уровня L1, L2 и L3, подвергаемые масштабируемому кодированию видеоданных. Уровень L1 представляет собой основной уровень и уровни L2 и L3 представляют собой уровни расширения. Следует отметить, что среди различных видов масштабируемости пространственная масштабируемость принята в данном случае в качестве примера. Отношение пространственного разрешения уровня L2 к уровню L1 составляет 2:1. Отношение пространственного разрешения уровня L3 к уровню L1 составляет 4:1. Отношения разрешения здесь представляют просто примеры, и можно использовать, например, нецелочисленное отношение разрешения, такое, как 1,5:1. Блок B1 уровня L1 представляет собой модуль обработки для обработки кодирования в изображении основного уровня. Блок B2 уровня L2 представляет собой модуль обработки при обработке кодирования в изображении уровня расширения, для которого спроектирована общая сцена для модуля B1. Модуль B2 соответствует модулю B1 уровня L1. Модуль B3 уровня L3 представляет собой модуль обработки процесса кодирования в изображении уровня расширения более высокого, чем уровни, в которых запроектирована общая сцена для модулей B1 и B2. Модуль B3 соответствует модуля B1 уровня L1 и модулю B2 уровня L2.
В такой структуре уровня уровни, в которых запроектирована общая сцена, имеют аналогичные характеристики частоты кадров. Например, когда изображение модуля B1 уровня L1 является плоским, и его компонент высокой частоты мал, существует высокая вероятность того, что изображение модуля B2 уровня L2 также имеет малый компонент высокой частоты. То же относится к модулю B2 уровня L2 и модулю B3 уровня L3.
1-2. Общее управление скоростью
Частотная характеристика изображения влияет на количество битов данных коэффициента преобразования, которые генерируют в результате ортогонального преобразования. Для поддержания частоты битов кодированного потока данные коэффициента преобразования обычно квантуют, используя больший шаг квантования, если количество битов данных коэффициента преобразования большое. Пример схемы управления скоростью для реализации ожидаемой скорости битов выражен в модели тестирования MPEG2. В модели тестирования MPEG2 количество выделенного кода каждого изображения вначале определяют на основе количества битов, выделенных для GOP, типа изображения каждого изображения в GOP, и сложности (Мера глобальной сложности). Кроме того, параметр квантования каждого макроблока в каждом изображении (коде шкалы квантования) рассчитывают на основе активности, рассчитанной для каждого макроблока и выделенного количества кода изображения. Упомянутая здесь активность представляет собой тип индекса, выражающего сложность изображения. Следует отметить, что детали схемы управления скоростью в модели тестирования MPEG2 раскрыты на следующей веб-странице.
- URL ссылки
http://www.mpeg.org/MPEG/MSSG/tm5/Ch10/Ch10.html
В схеме MPEG2, однако, описанный выше код шкалы квантования определяют для каждого макроблока, имеющего размер 16x16 пикселей. Максимальный размер наибольшего модуля кодирования (LCU), соответствующий макроблоку в схеме HEVC, составляет 64x64 пикселя. Когда гранулярность управления скоростью становится чрезмерно большой, однако, могут быть сгенерированы локальные области, в которых шаг квантования не соответствует сложности изображения. Например, на фиг. 2, результат, полученный в результате расчета активности нормализации изображения, показанного в верхней части с гранулярностью 64x64 пикселя, представлен в средней части, и результат, полученный путем расчета активности нормализации с гранулярностью 16x16 пикселей, показан в нижней части. Здесь более высокая активность представлена белым. Как можно понять на фиг. 2, если управление скоростью выполняют с гранулярностью 64x64 пикселя, можно сгенерировать множество областей, в которых, например, выполняется квантование, используя только большой шаг квантования, даже при том что сложность низкая, или квантование выполняют, используя малый шаг квантования, даже при том что сложность высокая.
Для соответствующего выполнения управления скоростью, исключая такое несоответствие, из-за описанных выше размеров блока, в схеме HEVC используется технология управления шагами квантования в модулях блоков, которые меньше, чем LCU. Более конкретно, обращаясь к синтаксису установленного параметра изображения (PPS), описанного в Непатентной литературе 1, описанной выше, когда cu_qp_delta_enabled_flag имеет значение true, размер блока, который представляет собой единицу для обозначения шага квантования, обозначен на основе информации размера diff_cu_qp_delta_depth. На практике, поскольку логарифм шага квантования представляет собой пропорциональную взаимосвязь с отношением сигнал-шум (SN), параметр квантования обозначают для каждого блока, вместо того, чтобы использовать прямое обозначение шага квантования. Если шаг квантования, соответствующий параметру квантования qp, установлен как S (qp), взаимосвязь между параметром qp квантования и шагом S (qp) квантования определяется таким образом, что шаг S (qp) квантования удовлетворяет следующему выражению.
Уравнение 1
В схеме HEVC значения переменной a=6 и переменной b=2 приняты так, чтобы диапазоны параметра квантования и шага квантования были оптимизированными. Взаимосвязь между параметрами qp квантования и шагами S (qp) квантования в этом случае представлена на фиг. 3. Как показано на фиг. 3, значение шага S (qp квантования) удваивается каждый раз, когда значение параметра qp квантования увеличивается в шесть раз.
Y
Параметр квантования фактически устанавливают, используя комбинацию множества соответствующих параметров квантования. Что касается синтаксиса, описанного в Непатентной литературе 1, описанной выше, параметры квантования инициализируют, используя параметры pic_init_qp_minus26 в PPS и slice_qp_delta в заголовке среза (SliceQP = 26 + pic_init_qp_minus26 + slice_qp_delta). Параметры квантования отдельных модулей кодирования (CU) прогнозируют по параметру квантования одного из верхнего соседнего CU и левого соседнего CU или по параметрам квантования их обоих (при прогнозировании в-CTB), или прогнозируют из параметра квантования предыдущего CU в порядке декодирования (при прогнозировании между-CTB). На фиг. 4 представлен пример ссылочной взаимосвязи при прогнозировании параметров квантования, при кодировании древовидных блоков (CTB) и между-CTB. При прогнозировании в-CTB, в котором ссылка может быть сделана на оба из верхнего соседнего CU и левого соседнего CU, прогнозируемое значение параметра квантования равно среднему значению ((TopQP + LeftQP + 1)>> 1) параметров квантования верхнего соседнего CU и левого соседнего CU (TopQP и LeftQP). Кроме того, путем добавления остатков, обозначенных как cu_qp_delta_abs и cu_qp_delta_sign в модуле преобразования (ТU) к прогнозируемому значению, рассчитывают значения отдельных параметров квантования.
1-3. Параметр квантования компонента цветности
Технология расчета параметра квантования, описанная в представленном выше разделе, в основном, представляет собой технологию, относящуюся к параметру квантования компонента яркости. Что касается компонента цветности, в результате добавления смещения к параметру квантования компонента яркости, можно использовать параметр квантования, который регулируют для компонента цветности. Что касается синтаксиса, описанного в Непатентной литературе 1, описанной выше, смещение параметра квантования для компонента цветности устанавливают на основе pic_cb_qp_offset и pic_cr_qp_offset в PPS, и slice_cb_qp_offset, и slice_cr_qp_offset в заголовке среза. Сумма pic_cb_qp_offset и slice_cb_qp_offset представляет собой смещение параметра квантования компонента Cb, и сумма pic_cr_qp_offset и slice_cr_qp_offset представляет собой смещение параметра квантования компонента Cr.
Следует отметить, что конкретное выражение взаимоотношения между параметром квантования компонента яркости и параметром квантования компонента цветности в схеме HEVC описано в Непатентной литературе 1, описанной выше. Поскольку в отличие от схемы AVC, когда значения смещения компонента Cb и компонента Cr равны друг другу в схеме AVC, в PPS кодируют только один chroma_qp_index_offset. С другой стороны, в схеме HEVC, соответствующие смещения компонента Cb и компонента Cr кодируют в PPS и в заголовке среза, как описано выше. Таким образом, параметр квантования компонента цветности можно гибко регулировать в единицах срезов, в схеме HEVC. Кроме того, в то время, как верхнее значение параметра квантования компонента цветности равно 39 в схеме AVC, верхнее значение параметра квантования компонента цветности равно 51, что является таким же, как у компонента яркости в схеме HEVC. Таким образом, в схеме HEVC легко исключается переполнение буфера гипотетического опорного декодера (HRD), благодаря уменьшению количества информации данных коэффициента преобразования компонента цветности.
1-4. Матрица квантования
Матрица квантования (которая также называется списком масштабирования) представляет собой технологию, введенную для квантования компонентов высокой частоты более грубого, чем компонентов низкой частоты, используя характеристики зрения человека, который с трудом воспринимает высокочастотные компоненты изображения. Когда используется матрица квантования, шаг квантования, масштабированный значениями соответствующих элементов матрицы квантования, используется для квантования и обратного квантования по данным коэффициента преобразования вместо самого шага квантования, соответствующего параметру квантования, описанному в представленном выше разделе. В схеме AVC каждая матрица квантования имеет размеры 4x4 пикселя и могут использоваться 8x8 пикселей. С другой стороны, в схеме HEVC может использоваться матрица квантования, каждая из которых имеет размеры 4x4 пикселя, 8x8 пикселей, 16x16 пикселей и 32x32 пикселей. В схеме HEVC, однако, каждая из матриц квантования размером 16x16 пикселей и 32x32 пикселей кодированы размером 8x8 пикселей, исключая компоненты постоянного тока, для уменьшения количества кода, и их подвергают предварительной выборке, используя фиксатор нулевого порядком с размером 8x8 пикселей при использовании. Компоненты постоянного тока кодируют отдельно.
Как описано выше, различные параметры, относящиеся к квантованию, кодируют в текущем описании в схеме HEVC. Здесь характеристики частоты изображения аналогичны уровням, как описано выше. Кроме того, такие характеристики частоты изображения влияют на количество битов данных коэффициента преобразования, и количеством битов управляют с помощью квантования. Таким образом, путем управления квантованием основного уровня и уровня расширения при масштабируемом кодировании видеоданных, используя общие параметры для уровней, ожидается, что можно будет реализовать соответствующее управление скоростью, и можно будет уменьшить количество кода параметра, относящегося к квантованию. Таким образом, варианты осуществления устройства обработки изображения, которое обеспечивает возможность повторного использования параметра, относящегося к квантованию, предназначенного для использования на уровнях, будут описаны подробно в следующих разделах.
1-5. Пример основной конфигурации кодера
На фиг. 5 показана блок-схема, представляющая схематичную конфигурацию устройства 10 кодирования изображения, в соответствии с вариантом осуществления, поддерживающим масштабируемое кодирование видеоданных. На фиг. 5 устройство 10 кодирования изображения включает в себя блок 1a кодирования основного уровня (BL), блок 1b кодирования уровня расширения (EL), общее запоминающее устройство 2 и блок 3 мультиплексирования.
В блоке 1a кодирования BL кодируют изображение основного уровня для генерирования кодированного потока основного уровня. Блок 1b кодирования EL кодирует изображение уровня расширения для генерирования кодированного потока уровня расширения. В общем запоминающем устройстве 2 содержится информация, обычно используемая между уровнями. Блок 3 мультиплексирования мультиплексирует кодированный поток основного уровня, генерируемый блоком 1a кодирования BL, и кодированный поток одного или больше уровней расширения, генерируемый блоком 1b кодирования EL, для генерирования мультиплексированного потока для множества уровней.
1-6. Пример основной конфигурации декодера
На фиг. 6 показана блок-схема, представляющая схематичную конфигурацию устройства 60 декодирования изображения в соответствии с вариантом осуществления, поддерживающим масштабируемое кодирование видеоданных. На фиг. 6 устройство 60 декодирования изображения включает в себя блок 5 демультиплексирования, блок 6a декодирования основного уровня (BL), блок 6b декодирования уровня расширения (EL), и общее запоминающее устройство 7.
Блок 5 демультиплексирования демультиплексирует мультиплексированный поток для множества уровней в кодированный поток основного уровня и кодированный поток одного или больше уровней расширения. Блок 6a декодирования BL декодирует изображение основного уровня из кодированного потока основного уровня. Блок 6b декодирования EL декодирует изображение уровня расширения из кодированного потока уровня расширения. Общее запоминающее устройство 7 содержит информацию, совместно используемую между уровнями.
В устройстве 10 кодирования изображения, представленном на фиг. 5, конфигурация блока 1a кодирования BL, предназначенного для кодирования основного уровня и блока 1b кодирования EL, предназначенного для кодирования уровня расширения, аналогичны друг другу. Некоторые параметры, генерируемые или получаемые блоком 1a кодирования BL, могут быть размещены в буфере, используя общее запоминающее устройство 2, и могут повторно использоваться блоком 1b кодирования EL. В следующем разделе такая конфигурация блока 1b кодирования EL будет описана подробно.
Аналогично, в устройстве 60 декодирования изображения, представленном на фиг. 6, конфигурация блока 6a декодирования BL для декодирования основного уровня и блока 6b кодирования EL для декодирования уровня расширения аналогичны друг другу. Некоторые параметры, генерируемые или получаемые блоком 6a декодирования BL, могут быть размещены в буфере путем использования общего запоминающего устройства 7 и могут повторно использоваться блоком 6b декодирования EL. Кроме того, такая конфигурация блока 6b декодирования EL будет подробно описана в следующем разделе.
2. Пример конфигурации блока кодирования EL в соответствии с вариантом осуществления
2-1. Общая конфигурация
На фиг. 7 показана блок-схема, представляющая пример конфигурации блока 1b кодирования EL, представленного на фиг. 5. Как показано на фиг. 7, блок 1b кодирования EL включает в себя буфер 11 сортировки, блок 13 вычитания, блок 14 ортогонального преобразования, блок 15 квантования, блок 16 кодирования без потерь, буфер 17 накопления, блок 18 управления скоростью, блок 21 обратного квантования, блок 22 обратного ортогонального преобразования, блок 23 суммирования, фильтр 24 удаления блочности, запоминающее устройство 25 кадра, селекторы 26 и 27, блок 30 прогнозирования внутри кадра, блок 35 прогнозирования между кадрами и блок 40 управления квантованием.
Буфер 11 сортировки сортирует изображения, включенные в последовательность данных изображения. После сортировки изображений, в соответствии со структурой GOP (группа изображений), в соответствии с процессом кодирования, буфер 11 сортировки выводит данные изображения, которые были отсортированы, в блок 13 вычитания, блок 30 прогнозирования внутри кадра и блок 35 прогнозирования между кадрами.
Данные изображения, подаваемые из буфера 11 сортировки, и данные прогнозируемого изображения, подаваемые блоком 30 прогнозирования внутри кадра, или блоком 35 прогнозирования между кадрами, которые будут описаны ниже, подают в блок 13в вычитания. Блок 13 вычитания вычисляет данные ошибки прогнозирования, которые представляют собой разность между данными изображения, вводимыми из буфера 11 сортировки, и данными прогнозируемого изображения и выводит вычисленные прогнозируемые данные ошибки в блок 14 ортогонального преобразования.
Блок 14 ортогонального преобразования выполняет ортогональное преобразование для прогнозируемых данных ошибки, вводимых из блока 13 вычитания. Ортогональное преобразование, которое должно быть выполнено блоком 14 ортогонального преобразования, может представлять собой, например, дискретное косинусное преобразование (DCT) или преобразование Карунена-Лоэва. Блок 14 ортогонального преобразования выводит данные коэффициента преобразования, полученные при обработке ортогонального преобразования, в блок 15 квантования.
Блок 15 квантования принимает данные коэффициента преобразования из блока 14 ортогонального преобразования и принимает параметр квантования из блока 40 управления квантованием, который будет описан ниже. Блок 15 квантования может также принимать матрицу квантования из блока 40 управления квантованием. Используя шаг квантования, определенный из введенного параметра квантования (и матрицы квантования), блок 15 квантования квантует данные коэффициента преобразования уровня расширения и, таким образом, генерирует квантованные данные (квантованные данные коэффициента преобразования). Затем блок 15 квантования выводит квантованные данные в блок 16 кодирования без потерь и в блок 21 обратного квантования.
Блок 16 кодирования без потерь выполняет обработку кодирования без потерь для квантованных данных, введенных из блока 15 квантования, для генерирования кодированного потока уровня расширения. Блок 16 кодирования без потерь кодирует различные параметры, к которым обращаются, когда декодируют кодированный поток, и вводит кодированные параметры в область заголовка кодированного потока. Параметры, кодируемые блоком 16 кодирования без потерь, могут включать в себя информацию, относящуюся к прогнозированию внутри кадра, которое будет описано ниже, информацию, относящуюся к прогнозированию между кадрами, и параметры, относящиеся к квантованию. Затем блок 16 кодирования без потерь выводит сгенерированный кодированный поток в буфер 17 накопления.
Буфер 17 накопления временно накапливает кодированный поток, вводимый из блока 16 кодирования без потерь, используя носитель информации, такой как полупроводниковое запоминающее устройство. Затем буфер 17 накопления выводит накопленный кодированный поток в блок передачи, который не показан (например, интерфейс связи или интерфейс соединения с периферийными устройствами) со скоростью, в соответствии с полосой пропускания маршрута передачи.
Блок 18 управления скоростью отслеживает свободную емкость буфера 17 накопления. Затем блок 18 управления скоростью генерирует сигнал управления скоростью, в соответствии с вакантной емкостью буфера 17 накопления, и выводит сгенерированный сигнал управления скоростью в блок 40 управления квантованием. Блок 18 управления скоростью может управлять скоростью кодированного потока, в соответствии с определенной схемой управления скоростью, как в описанной выше модели тестирования MPEG2, и в соответствии с другими схемами управления скоростью. Сигнал управления скоростью, выводимый блоком 40 управления квантованием, может включать в себя параметр квантования и матрицу квантования.
Блок 21 обратного квантования, блок 22 обратного ортогонального преобразования и блок 23 суммирования составляют локальный декодер. Блок 21 обратного квантования принимает квантованные данные из блока 15 квантования и принимает параметр квантования из блока 40 управления квантованием, который будет описан ниже. Блок 21 обратного квантования также может принимать матрицу квантования из блока 40 управления квантованием. Блок 21 обратного квантования выполняет обратное квантование для квантованных данных уровня расширения, для восстановления данных коэффициента преобразования, используя шаг квантования, определенный по входному параметру квантования (и матрице квантования). Затем блок 21 обратного квантования выводит данные восстановленного коэффициента преобразования в блок 22 обратного ортогонального преобразования.
Блок 22 обратного ортогонального преобразования восстанавливает прогнозируемые данные ошибки, путем выполнения обработки обратного ортогонального преобразования для преобразованных данных коэффициента, введенных из блока 21 обратного квантования. Затем блок 22 обратного ортогонального преобразования выводит восстановленные прогнозируемые данные ошибки в блок 23 суммирования.
Блок 23 суммирования добавляет восстановленные данные прогнозируемой ошибки, введенной из блока 22 обратного ортогонального преобразования, и данные прогнозируемого изображения, введенные из блока 30 прогнозирования внутри кадра или блока 35 прогнозирования между кадрами, для того, чтобы, таким образом, сгенерировать декодированные данные изображения (восстановленные изображение уровня расширения). Затем блок 23 суммирования выводит сгенерированные декодированные данные изображения в фильтр 24 удаления блочности и в запоминающее устройство 25 кадра.
Фильтр 24 удаления блочности выполняет обработку фильтрации для уменьшения искажения блочности, которые возникают во время кодирования изображения. Фильтр 24 удаления блочности выполняет фильтрацию для декодированных данных изображения, введенных из блока 23 суммирования, для удаления искажения блочности, и затем выводит отфильтрованные данные декодированного изображения в запоминающее устройство 25 кадра.
Запоминающее устройство 25 кадра сохраняет декодированные данные изображения, введенные из блока 23 суммирования, и отфильтрованные декодированные данные изображения, введенные фильтром 24 удаления блочности, используя носитель информации.
Селектор 26 считывает декодированные данные изображения перед фильтрацией, используемой для прогнозирования внутри кадра, из запоминающего устройства 25 кадра, и подает считанные декодированные данные изображения, как данные опорного изображения, в блок 30 прогнозирования внутри кадра. Кроме того, селектор 26 считывает отфильтрованные декодированные данные изображения, используемые для прогнозирования между кадрами, из запоминающего устройства 25 кадра, и подает считанные, декодированные данные изображения, как данные опорного изображения, в блок 35 прогнозирования между кадрами.
В режиме прогнозирования внутри кадра селектор 27 выводит прогнозируемые данные изображения, как результат прогнозирования внутри кадра, выводимый из блока 30 прогнозирования внутри кадра, в блок 13 вычитания и также выводит информацию о прогнозировании внутри кадра в блок 16 кодирования без потерь. Кроме того, в режиме прогнозирования между кадрами, селектор 27 данных выводит прогнозируемое изображение, как результат прогнозирования между кадрами, выводимый из блока 35 прогнозирования между кадрами, в блок 13 вычитания, и также выводит информацию о прогнозировании между кадрами в блок 16 кодирования без потерь. Селектор 27 переключает режим прогнозирования между кадрами и режим прогнозирования внутри кадра, в соответствии с магнитудой значения функции стоимости.
Блок 30 прогнозирования внутри кадра выполняет обработку прогнозирования внутри кадра для каждого модуля прогнозирования (PU) схемы HEVC на основе данных оригинального изображения и данных декодированного изображения уровня расширения. Например, блок 30 прогнозирования внутри кадра выполняет оценку результата прогнозирования, в соответствии с каждым режимом-кандидатом в режиме прогнозирования, установленным, используя заданную функцию стоимости. Затем блок 30 прогнозирования внутри кадра выбирает режим прогнозирования, в котором значение функции стоимости является минимальным, то есть, режим прогнозирования, в котором степень сжатия является наибольшей, в качестве оптимального режима прогнозирования. Кроме того, блок 30 прогнозирования внутри кадра генерирует прогнозируемые данные изображения для уровня расширения, в соответствии с оптимальным режимом прогнозирования. Далее, блок 30 прогнозирования внутри кадра выводит информацию, относящуюся к прогнозированию внутри кадра, включающую в себя информацию о режиме прогнозирования, обозначающую выбранный оптимальный режим прогнозирования, значение функции стоимости и данные прогнозируемого изображения, в селектор 27.
Блок 35 прогнозирования между кадрами выполняет обработку прогнозирования между кадрами для каждого модуля прогнозирования схемы HEVC на основе данных оригинального изображения и декодированных данных изображения уровня расширения. Например, блок 35 прогнозирования между кадрами выполняет оценку результата прогнозирования, в соответствии с каждым режимом-кандидатом, в режиме прогнозирования, установленном используя заданную функцию стоимости. Затем блок 35 прогнозирования между кадрами выбирает режим прогнозирования, в котором значение функции стоимости является минимальным, то есть, режим прогнозирования, в котором степень сжатия является наибольшей, в качестве оптимального режима прогнозирования. Кроме того, блок 35 прогнозирования между кадрами генерирует прогнозируемые данные изображения для уровня расширения, в соответствии с оптимальным режимом прогнозирования. Далее, блок 35 прогнозирования между кадрами выводит информацию, относящуюся к прогнозированию между кадрами, включающую в себя информацию о режиме прогнозирования и информацию движении, обозначающую выбранный оптимальный режим прогнозирования, значение функции стоимости и данные прогнозируемого изображения в селектор 27.
Блок 40 управления квантованием управляет обработкой квантования и обработкой обратного квантования, выполняемой в блоке 1b кодирования EL, используя информацию, размещенную в буфере, на основе общего запоминающего устройства 2. Кроме того, блок 40 управления квантованием генерирует параметр, относящийся к квантованию. В настоящем варианте осуществления параметр, относящийся к квантованию, генерируемый блоком 40 управления квантованием, может включать в себя параметр, используемый, когда устанавливают параметр квантования и параметр, используемый при определении матрицы квантования. В настоящем описании параметр, используемый при определении параметра квантования, будет называться параметром квантования (QP), и параметр, используемый при определении матрицы квантования, будет называться параметром списка масштабирования (SL).
Параметр QP, в основном, включает в себя группу параметров, относящихся к компонентам яркости, и группу параметров, относящихся к компонентам цветности. В качестве примера, группа параметров, относящаяся к компонентам яркости, может включать в себя pic_init_qp_minus26, который представляет собой параметр модуля изображения, slice_qp_delta, который представляет собой параметр модуля среза, и cu_qp_delta_abs, и cu_qp_delta_sign, которые представляют собой параметры модуля CU. Группа параметров, относящаяся к компонентам цветности, может включать в себя slice_cbE_qp_offset и slice_crE_qp_offset, которые представляют собой параметры модуля среза. pic_cb_qp_offset и pic_cr_qp_offset, которые представляют собой параметры модуля изображения, относящиеся к компонентам цветности, генерируемые в известной технологии, не генерируются в настоящем варианте осуществления.
Когда матрица квантования, установленная в основном уровне, не используется повторно в уровне расширения, генерируют параметр SL, который обозначает матрицу квантования, имеющую один или больше размеров, которые должны быть установлены для уровня расширения. Когда матрицу квантования повторно используют по уровням, если основной уровень кодируют в схеме HEVC, параметр SL может не генерироваться. Когда матрицы квантования повторно используются на уровнях, если основной уровень кодируют в схеме AVC, может быть сгенерирован параметр SL, который обозначает параметры матрицы квантования, имеющей размеры 16x16 пикселей и 32×32 пикселя, которые должны быть установлены для уровня расширения. Когда матрицы квантования повторно используются на уровнях, флаг, который обозначает повторное использование матрицы квантования, и информация, которая обозначает уровень, матрица квантования которого должна повторно использоваться, могут быть сгенерированы как параметр SL.
Следует отметить, что шаг квантования (или параметр квантования), который фактически используется для квантования, и данные коэффициента преобразования обратного квантования могут быть установлены на основе, например, сигнала управления скоростью, вводимого из блока 18 управления скоростью. Вместо этого, шаг квантования (или параметр квантования), который фактически используется, может быть заранее установлен пользователем.
2-2. Подробная конфигурация блока управления квантованием
На фиг. 8 показана блок-схема, представляющая пример конфигурации блока 40 управления квантованием, представленным на фиг. 7. На фиг. 8 блок 40 управления квантованием имеет блок 41 установки QP, блок 42 генерирования параметра QP, блок 43 установки SL и блок 44 генерирования параметра SL.
(1) Блок установки QP
Блок 41 установки QP устанавливает квантованные параметры, которые фактически используются блоком 15 квантования во время квантования данных коэффициента преобразования компонента яркости и компонентов цветности уровня расширения для каждого из соответствующих блоков уровня расширения. Параметры квантования, установленные блоком 41 установки QP, также используются, когда блок 21 обратного квантования выполняет обратное квантование квантованных данных. Здесь блок может иметь размер, который равен или меньше, чем у LCU. Например, блок 41 установки QP может устанавливать параметры квантования компонента (Y) яркости и квантованных параметров компонентов (Cb и Cr) цветности, в соответствии с сигналом управления скоростью, вводимым из блока 18 управления скоростью. Вместо этого, блок 41 установки QP может устанавливать квантованные параметры компонента яркости и параметры квантования компонентов цветности, заранее обозначенных пользователем. Затем блок 41 установки QP выводит квантованные параметры (QP (EL)), установленные для соответствующих блоков уровня расширения блока 15 квантования, блока 21 обратного квантования и блока 42 генерирования параметра QP.
(2) Блок генерирования параметра QP
Блок 42 генерирования параметра QP генерирует параметр QP для уровня расширения на основе параметров квантования уровня расширения, введенных из блока 41 установки QP, и параметра QP для основного уровня, размещенного в буфере общего запоминающего устройства 2. Параметр QP компонента яркости может быть сгенерирован в соответствии со спецификацией, описывающей Непатентную литературу 1, описанную выше.
Например, когда основной уровень кодируют в схеме HEVC, параметр QP компонента Cb основного уровня может включать в себя pic_cb_qp_offset и slice_cb_qp_offset. Когда смещение параметра квантования, соответствующее заданному параметру квантования, который фактически используется для компонента Cb уровня расширения, установлено, как cbE_qp_offset, QP параметр slice_cbE_qp_offset компонента Cb уровня расширения может быть сгенерирован в соответствии, например, со следующим выражением:
Уравнение 2
Аналогично, когда основной уровень кодируют в схеме HEVC, параметр QP компонента Cr основного уровня может включать в себя pic_cr_qp_offset и slice_cr_qp_offset. Когда смещение параметра квантования, соответствующее заданному параметру квантования, который фактически используется для компонента Cr уровня расширения, установлен в crE_qp_offset, параметр QP slice_crE_qp_offset компонента Cr уровня расширения может быть сгенерирован в соответствии, например, со следующим выражением:
Уравнение 3
В соответствии с выражениями (2) и (3), QP параметры slice_cbE_qp_offset и slice_crE_qp_offset, генерируемые блоком 42 генерирования параметра QP, равны разности между смещением параметра квантования (cbE_qp_offset/crE_qp_offset) уровня расширения и смещением параметра квантования (cbB_qp_offset/crB_qp_offset) основного уровня. Здесь смещение параметра квантования (cbB_qp_offset/crB_qp_offset) основного уровня представляет собой сумму смещения модуля изображения и смещения модуля среза.
Для генерирования параметров QP slice_cbE_qp_offset и slice_crE_qp_offset, можно использовать следующие выражения (4) и (5), вместо выражений (2) и (3).
Уравнение 4
В соответствии с выражениями (4) и (5), параметры QP slice_cbE_qp_offset и slice_crE_qp_offset, генерируемые блоком 42 генерирования параметра QP, равны разности между смещением параметра квантования уровня расширения и смещением параметра квантования (pic_cb_qp_offset/pic_cr_qp_offset) модуля изображения основного уровня.
Когда основной уровень кодируют в схеме AVC, параметры QP компонентов цветности основного уровня не включают в себя смещение параметра квантования модуля среза, но могут включать в себя chroma_qp_index_offset и second_chroma_qp_index_offset модуля изображения. Когда отсутствует second_chroma_qp_index_offset, QP параметры slice_cbE_qp_offset и slice_crE_qp_offset уровня расширения могут быть соответственно сгенерированы в соответствии, например, со следующими выражениями (6) и (7).
Уравнение 5
Когда присутствует second_chroma_qp_index_offset, описанное выше выражение (7) заменяют следующим выражением (8).
Уравнение 6
Блок 42 генерирования параметра QP выводит QP параметры slice_cbE_qp_offset и slice_crE_qp_offset уровня расширения, сгенерированные, как описано выше, в блок 16 кодирования без потерь.
Следует отметить, что эта технология не ограничена описанным выше примером, и блок 40 управления квантованием может не использовать повторно параметры QP в уровнях. Кроме того, блок 42 генерирования параметра QP может генерировать флаг повторного использования параметра QP, который обозначает, следует ли повторно использовать в уровнях QP параметры компонентов цветности, то есть, смещение параметра квантования уровня расширения должно быть установлено на основе смещения параметра квантования основного уровня. Флаг повторного использования параметра QP обычно кодируют в PPS, используя блок 16 кодирования без потерь. Когда флаг повторного использования параметра QP обозначает "true", только slice_cbE_qp_offset и slice_crE_qp_offset модуля среза уровня расширения могут быть кодированы в пределах заголовка среза. Когда флаг повторного использования параметра QP обозначает "false", pic_cb_qp_offset и pic_cr_qp_offset модуля изображения уровня расширения могут быть кодированы в PPS.
(3) Блок установки SL
Блок 43 установки SL устанавливает матрицы квантования, которые могут фактически использоваться блоком 15 квантования, когда выполняют квантование данных коэффициента преобразования компонента яркости и компонентов цветности уровня расширения для соответствующих блоков уровня расширения. Матрицы квантования, установленные блоком 43 установки SL, также могут использоваться, когда блок 21 обратного квантования выполняет обратное квантование квантованных данных. Например, блок 43 установки SL может устанавливать соответствующие матрицы квантования, имеющие размеры 4x4 пикселя, 8x8 пикселей, 16x16 пикселей и 32x32 пикселя соответствующих режимов прогнозирования (внутри и между кадрами) соответствующих компонентов цвета (Y, Cb и Cr), в соответствии с сигналом управления скоростью передачи, вводимым из блока 18 управления скоростью передачи. Вместо этого, блок 43 установки SL может устанавливать матрицы квантования, установленные заранее пользователем. Затем блок 43 установки SL выводит матрицы квантования (SL (EL)), установленные для соответствующих блоков уровня расширения, в блок 15 квантования, блок 21 обратного квантование и в блок 44 генерирования параметра SL.
(4) Блок генерирования параметра SL
Когда матрицы квантования повторно используются в уровнях, обработка, выполняемая блоком 44 генерирования параметра SL, отличается в зависимости от того, кодирован или нет основной уровень по схеме HEVC. В соответствии с Непатентной литературой 2, описанной выше, был или нет основной слой кодирован по схеме HEVC, обозначается флагом avc_base_layer_flag, который кодирован в наборе видео параметра (VPS). На фиг. 9A - 9D показаны иллюстративные схемы для описания повторного использования матриц квантования.
В примере на фиг. 9A основной уровень кодирован в схеме HEVC. В этом случае матрицы квантования, имеющие размеры 4x4 пикселя, 8x8 пикселей, 16x16 пикселей и 32x32 пикселя, установлены в основном уровне. Таким образом, поскольку матрицы квантования могут повторно использоваться в уровне расширения, блок 44 генерирования параметра SL не генерирует параметр SL уровня расширения. Это означает, что блок 16 кодирования без потерь не кодирует матрицу квантования уровня расширения. Следует отметить, что, на основном уровне, параметры SL, которые обозначают матрицы квантования, каждый генерируют, используя технологию, такую как зигзагообразная развертка. Параметры SL для матриц квантования, имеющих размер 16x16 пикселей и 32x32 пикселя, однако, генерируют после понижающей выборки матриц квантования, так, чтобы они имели размер 8x8 пикселей (затененный участок на чертеже).
В примере на фиг. 9B основной уровень кодируют в схеме AVC. В этом случае матрицы квантования, имеющие размеры 4x4 пиксели и 8x8 пикселей, устанавливают для соответствующих блоков в основном уровне, и повторно используют в уровне расширения. Таким образом, блок 44 генерирования параметра SL не генерирует параметр SL, который обозначает матрицы квантования, имеющие размеры 4x4 пикселя и 8x8 пикселей. С другой стороны, матрицы квантования, имеющие размеры 16x16 пикселей и 32x32 пикселя, не устанавливают в основном уровне. Таким образом, блок 44 генерирования параметра SL генерирует параметры SL, которые обозначают матрицы квантования, имеющие размеры 16x16 пикселей и 32x32 пикселя уровня расширения, установленного блоком 43 установки SL. Следует отметить, что эти параметры SL генерируют после выборки с понижением каждой матрицы квантования, так, чтобы она имела размер 8x8 пикселей (затененный участок на чертеже).
В примере на фиг. 9C основной уровень кодируют в схеме AVC. В отличие от примера на фиг. 9B, матрицы квантования основного уровня не используются повторно в уровне расширения, независимо от их размеров. Таким образом, блок 44 генерирования параметра SL генерирует параметры SL, которые обозначают матрицы квантования, имеющие размеры 4x4 пикселя, 8x8 пикселей, 16x16 пикселей и 32x32 пикселя уровня расширения, установленного блоком 43 установки SL. Следует отметить, что параметры SL для матриц квантования, имеющих размеры 16x16 пикселей и 32x32 пикселя, генерируют после выборки с понижением каждой матрицы квантования, так, чтобы она имела размер 8x8 пикселей.
В соответствии с технологией, представленной в качестве примера на фиг. 9B, поскольку матрицы квантования могут быть повторно использоваться, независимо от схемы кодирования изображения, количество кода, необходимое для обозначения матриц квантования, может быть сведено к минимуму. С другой стороны, в соответствии с технологией, представленной на фиг. 9C, матрицы квантования повторно используются только в уровнях, схема кодирования изображения которых является такой же. В последнем случае, эффективность кодирования может быть улучшена, путем повторного использования оптимальной матрицы квантования в той степени, которая возможна пока используется матрица квантования, которая пригодна для характеристики схемы кодирования изображения.
В схеме HEVC, в определенном уровне расширения могут присутствовать один или больше второстепенны уровней. Таким образом, параметр SL, генерируемый блоком 44 генерирования параметра SL, может включать в себя информацию опорного уровня, которая обозначает уровень, матрица квантования которого должна повторно использоваться. В примере на фиг. 9D уровень BL0 и уровень BL1 представляют собой высшие уровни для уровня EL2 расширения, и обычно кодируются в схеме HEVC. В уровне EL2 расширения матрицы квантования, имеющие размеры 4x4 пикселя и 8x8 пикселей, повторно используются в уровне BL0. Кроме того, матрицы квантования, имеющие размеры 16x16 пикселей и 32x32 пикселя, повторно используются в уровне BL1. Таким образом, информация опорного уровня (ref_layer), генерируемая блоком 44 генерирования параметра SL, обозначает уровень BL0 относительно размеров 4x4 пикселя и 8x8 пикселей, и уровень BL1 в отношении размеров 16x16 пикселей и 32x32 пикселя. Информация опорного уровня может быть отдельно сгенерирована и кодирована в соответствии с разными размерами и разными типами матриц квантования (комбинация компонента цвета и режима прогнозирования (внутри или между кадрами)). Вместо этого, одиночный вид информации опорного уровня, которая является общей для множества размеров или множества типов, может быть сгенерирован и кодирован.
Когда матрица квантования определенного размера и типа, не используется повторно в уровнях, блок 44 генерирования параметра SL, генерирует параметр SL, который обозначает матрицу квантования, которая является уникальной для уровня расширения по размеру и типу, установленными блоком 43 установки SL.
Когда генерируют параметр SL уровня расширения, блок 43 установки SL выводит сгенерированный параметр SL в блок 16 кодирования без потерь.
Следует отметить, что блок 40 управления квантованием может не использовать повторно матрицу квантования в уровнях, как описано выше. Блок 44 генерирования параметра SL может генерировать флаг повторного использования матрицы квантования, который обозначает, следует ли повторно использовать матрицу квантования в уровнях, то есть, следует ли генерировать матрицу квантования уровня расширения на основе матрицы квантования основного уровня. Флаг повторного использования матрицы квантования обычно кодируют в пределах SPS или PPS, используя блок 16 кодирования без потерь. Когда флаг повторного использования матрицы квантования обозначает "true", матрицу квантования уровня расширения дублируют или прогнозируют из матрицы квантования основного уровня. Остаток прогнозирования матрицы квантования может быть дополнительно кодирован в уровне расширения. Блок 44 генерирования параметра SL может генерировать флаг технологии установки для установки матрицы квантования уровня расширения. Флаг технологии установки может обозначать либо дублирование, или прогнозирование. Блок 44 генерирования параметра SL может отдельно генерировать такой флаг повторного использования матрицы квантования и флаг технологии установки для разных размеров или разных типов матриц квантования.
3. Последовательность обработки кодирования в соответствии с вариантом осуществления
3-1. Схема последовательности
На фиг. 10 показана блок-схема последовательности операций, представляющая пример схемы потока обработки кодирования, в соответствии с вариантом осуществления. Для краткости описания этапы обработки, которые не относятся непосредственно к технологии, в соответствии с настоящим раскрытием, исключены из чертежей.
Как показано на фиг. 10, блок 1a кодирования BL вначале выполняет обработку кодирования для основного уровня, для генерирования кодированного потока основного уровня (Этап S11).
Общее запоминающее устройство 2 размещает в буфере соответствующие параметры квантования, сгенерированные при обработке кодирования основного уровня (Этап S12). Здесь размещенные в буфере соответствующие параметры квантования могут включать в себя смещение параметра квантования компонентов цветности, установленное для каждого блока основного уровня и матрицы квантования.
Затем блок 1b кодирования EL выполняет обработку кодирования уровня расширения, используя информацию, размещенную в буфере, в общем запоминающем устройстве 2, для генерирования кодированного потока уровня расширения (Этап S13).
Затем блок 4 мультиплексирования мультиплексирует кодированный поток основного уровня, сгенерированный блоком 1a кодирования BL, и кодированный поток уровня расширения, сгенерированный блоком 1b кодирования EL, для генерирования многоуровневого мультиплексированного потока (Этап S14).
3-2. Обработка, относящаяся к квантованию
На фиг. 11 показана блок-схема последовательности обработки, представляющая пример потока обработки, относящейся к квантованию, при обработке кодирования уровня расширения (Этап S13 по фиг. 10). Эта обработка, описанная на фиг. 11, может повторяться для каждого среза в пределах, например, изображения уровня расширения.
На фиг. 11 блок 41 установки QP вначале устанавливает параметры квантования соответствующих компонентов цвета, которые определены блоком 18 управления скоростью, или обозначены пользователем для соответствующих блоков среза (Этап S21). Кроме того, блок 43 установки SL устанавливает одну или больше матриц квантования, которые определяются блоком 18 управления скоростью или обозначены пользователем для соответствующих блоков среза (Этап S22).
Далее блок 42 генерирования параметра QP генерирует параметры QP уровня расширения на основе параметров квантования, установленных для уровня расширения блоком 41 установки QP, используя информацию, размещенную в буфер в общем запоминающем устройстве 2 (Этап S23). Например, в качестве параметров QP компонентов цветности, блок 42 генерирования параметра QP генерирует разности смещения параметра квантования slice_cbE_qp_offset и slice_crE_qp_offset, в соответствии с описанными выше уравнениями (2) и (3) или (4) и (5).
Кроме того, блок 44 генерирования параметра SL определяет, используются или нет повторно матрицы квантования в уровнях (Этап S24). Когда матрицы квантования повторно используются в уровнях, блок 44 генерирования параметра SL дополнительно определяет, является или нет схема кодирования основного уровня схемой HEVC (Этап S25). Когда матрицы квантования не используются повторно в уровнях, или когда схема кодирования основного уровня не является схемой HEVC, блок 44 генерирования параметра SL генерирует параметры SL уровня расширения (Этап S26). Например, когда матрицы квантования не используются повторно в уровнях, блок 44 генерирования параметра SL может генерировать параметры SL, которые обозначают все необходимые матрицы квантования уровня расширения. Кроме того, когда матрицы квантования повторно используются в уровнях, и когда схема кодирования основного уровня представляет собой схему AVC, блок 44 генерирования параметра SL может генерировать параметры SL, которые обозначают матрицы квантования, имеющие размер 16x16 пикселей и 32x32 пикселя уровня расширения.
Затем блок 15 квантования квантует данные коэффициента преобразования уровня расширения для генерирования квантованных данных, используя этап квантования, определенный из параметров квантования (и матриц квантования), установленных блоком 40 управления квантованием (Этап S27). Затем блок 15 квантования выводит квантованные данные в блок 16 кодирования без потерь и в блок 21 обратного квантования.
Затем блок 16 кодирования без потерь кодирует квантованные данные, введенные из блока 15 квантования, для генерирования кодированного потока уровня расширения (Этап S28). Кроме того, блок 16 кодирования без потерь кодирует соответствующие параметры квантования, введенные из блока 40 управления квантованием (которые могут включать в себя параметры QP и параметры SL), вводя, таким образом, кодированные параметры в область заголовка кодированного потока (Этап S29). Затем блок 16 кодирования без потерь выводит кодированный поток уровня расширения в буфер 17 накопления.
Затем блок 21 обратного квантования выполняет обратное квантование квантованных данных уровня расширения, используя шаг квантования, определенный по параметрам квантования (и матрицам квантования), установленных блоком 40 управления квантованием, для восстановления данных коэффициента преобразования (Этап S30). Затем блок 21 обратного квантования выводит восстановленные данные коэффициента преобразования в блок 22 обратного ортогонального преобразования.
Затем выполняется последовательная обработка, такая как обратное ортогональное преобразование, фильтрация, прогнозирование внутри кадра и прогнозирование между кадрами.
4. Пример конфигурации блока декодирования EL в соответствии с вариантом осуществления
4-1. Общая конфигурация
На фиг. 12 показана блок-схема, представляющая пример конфигурации блока 6b декодирования EL, представленного на фиг. 6. На фиг. 12, блок 6b декодирования EL включает в себя буфер 61 накопления, блок 62 декодирования без потерь, блок 63 обратного квантования, блок 64 обратного ортогонального преобразования, блок 65 суммирования, фильтр 66 удаления блочности, буфер 67 сортировки, блок 68 цифро-аналогового (D/A) преобразования, запоминающее устройство 69 кадра, селекторы 70 и 71, блок 75 прогнозирования внутри кадра, блок 80 прогнозирования между кадрами блок 90 управления обратным квантованием.
В буфере 61 накопления временно накапливают кодированный поток уровня расширения, вводимый из блока 5 демультиплексирования, используя носитель информации.
Блок 62 декодирования без потерь декодирует квантованные данные уровня расширения из кодированного потока уровня расширения, вводимого из буфера 61 накопления, в соответствии со схемой кодирования, используемой во время кодирования. Кроме того, блок 62 декодирования без потерь декодирует информацию, вставленную в область заголовка кодированного потока. Информация, декодируемая блоком 62 декодирования без потерь, может включать в себя, например, информацию, относящуюся к прогнозированию внутри кадра, информацию, относящуюся к прогнозированию между кадрами, и соответствующие параметры квантования. Блок 62 декодирования без потерь выводит информацию, относящуюся к прогнозированию внутри кадра, в блок 75 прогнозирования внутри кадра. Кроме того, блок 62 декодирования без потерь выводит информацию, относящуюся к прогнозированию между кадрами, в блок 80 прогнозирования между кадрами. Кроме того, блок 62 декодирования без потерь выводит квантованные данные в блок 63 обратного квантования и выводит соответствующие параметры квантования в блок 90 управления обратным квантованием.
Блок 63 обратного квантования выполняет обратное квантование квантованных данных, вводимых из блока 62 декодирования без потерь, используя шаг квантования, определенный по параметрам квантования (и матрицам квантования), вводимым из блока 90 управления обратным квантованием, для восстановления данных коэффициента преобразования уровня расширения. Затем блок 63 обратного квантования выводит восстановленные данные коэффициента преобразования в блок 64 обратного ортогонального преобразования.
Блок 64 обратного ортогонального преобразования выполняет обратное ортогональное преобразование для данных коэффициента преобразования, вводимых из блока 63 обратного квантования, в соответствии со схемой ортогонального преобразования, используемой во время кодирования, для генерирования прогнозируемых данных ошибки. Блок 64 обратного ортогонального преобразования выводит сгенерированные прогнозируемые данные ошибки в блок 65 суммирования.
Блок 65 суммирования добавляет прогнозируемые данные ошибки, вводимые из блока 64 обратного ортогонального преобразования, и прогнозируемые данные изображения, вводимые из селектора 71, для генерирования декодированных данных изображения. Затем блок 65 суммирования выводит сгенерированные декодированные данные изображения в фильтр 66 удаления блочности и в запоминающее устройство 69 кадра.
Фильтр 66 удаления блочности удаляет искажения блочности путем фильтрации декодированных данных изображения, подаваемых из блока 65 суммирования, и затем выводит данные отфильтрованного декодированного изображения в буфер 67 сортировки и в запоминающее устройство 69 кадра.
Буфер 67 сортировки сортирует изображения, вводимые из фильтра 66 удаления блочности, для генерирования хронологических последовательностей данных изображения. Затем буфер 67 сортировки выводит сгенерированные данные изображения в блок 68 D/A преобразования.
Блок 68 D/A преобразования преобразует данные изображения в цифровом формате, вводимые из буфера 67 сортировки, в сигнал изображения в аналоговом формате. Затем блок 68 D/A преобразования обеспечивает изображение уровня расширения изображения, путем вывода сигнала аналогового изображения, например, на устройство отображения (не представлено), подключенное к устройству 60 декодирования изображения.
В запоминающем устройстве 69 кадра содержатся декодированные данные изображения перед фильтрацией, вводимые из блока 65 суммирования, и декодированные данные изображения после фильтрации, вводимые из фильтра 66 удаления блочности, используя носитель информации.
Селектор 70 переключает и выводит место назначения данных изображения из запоминающего устройства 69 кадра между блоком 75 прогнозирования внутри кадра и блоком 80 прогнозирования между кадрами для каждого блока в изображении, в соответствии с информацией режима, полученной блоком 62 декодирования без потерь. Например, когда обозначен режим прогнозирования внутри кадра, селектор 70 выводит декодированные данные изображения перед фильтрацией, подаваемые из запоминающего устройства 69 кадра, как данные опорного изображения, в блок 75 прогнозирования внутри кадра. Кроме того, когда режим обозначен прогнозирования между кадрами, селектор 70 выводит декодированные данные изображения после фильтрации, как данные опорного изображения, в блок 80 прогнозирования между кадрами.
Селектор 71 переключает выходной источник прогнозируемых данных изображения, которые должны быть поданы в блок 65 суммирования между блоком 75 прогнозирования внутри кадра и блоком 80 прогнозирования между кадрами, в соответствии с информацией режима, полученной блоком 62 декодирования без потерь. Например, когда обозначен режим 71 прогнозирования внутри кадра, селектор подает прогнозируемые данные изображения, выводимые из блока 75 прогнозирования внутри кадра, в блок 65 суммирования. Кроме того, когда обозначен режим прогнозирования между кадрами, селектор 71 подает данные прогнозируемого изображения, выводимые из блока 80 прогнозирования между кадрами в блок 65 суммирования.
Блок 75 прогнозирования внутри кадра выполняет обработку прогнозирования внутри кадра для уровня расширения на основе информации, относящейся к прогнозированию внутри кадра, вводимой из блока 62 декодирования без потерь, и данных опорного изображения из запоминающего устройства 69 кадра для генерирования данных прогнозируемого изображения. Кроме того, блок 75 прогнозирования внутри кадра выводит сгенерированные данные прогнозируемого изображения уровня расширения в селектор 71.
Блок 80 прогнозирования между кадрами выполняет обработку компенсации движения уровня расширения на основе информации, относящейся к вводу прогнозирования между кадрами из блока 62 декодирования без потерь, и данных опорного изображения из запоминающего устройства 69 кадра, для генерирования прогнозируемых данных изображения. Блок 80 прогнозирования между кадрами выводит сгенерированные прогнозированные данные изображения уровня расширения в селектор 71.
Блок 90 управления обратным квантованием управляет обработкой обратного квантования, выполняемой в блоке 6b декодирования EL, используя соответствующие параметры квантования, декодированные блоком 62 декодирования без потерь, и информацию, размещенную в буфере, в общем запоминающем устройстве 7. В настоящем варианте осуществления соответствующие параметры квантования могут включать в себя параметр QP, который используется, когда определяют параметр квантования, и параметр SL, который используется, когда определяют матрицу квантования.
4-2. Подробная конфигурация блока управления обратным квантованием
На фиг. 13 показана блок-схема, представляющая пример конфигурации блока 90 управления обратным квантованием, представленного на фиг. 12. Как показано на фиг. 13, блок 90 управления обратным квантованием имеет блок 91 получения параметра QP, блок 92 установки QP, блок 93 получения параметра SL и блок 94 установки SL.
(1) Блок получения параметра QP
Блок 91 получения параметра QP получает параметры QP, декодируемые блоком 62 декодирования без потерь, из кодированного потока уровня расширения. Параметры QP компонента яркости, полученные блоком 91 получения параметра QP, могут включать в себя описанные выше pic_init_qp_minus26, slice_qp_delta, cu_qp_delta_abs и cu_qp_delta_sign. Кроме того, параметры QP компонентов цветности, полученные блоком 91 получения параметра QP, могут включать в себя разность смещения параметра квантования slice_cbE_qp_offset для компонента Cb и разность смещения параметра квантования slice_crE_qp_offset для компонента Cr.
Далее, когда флаг повторного использования параметра QP декодируют в блоке 62 декодирования без потерь, блок 91 получения параметра QP может получать флаг повторного использования декодированного параметра QP. Блок 91 получения параметра QP выводит полученные параметры QP уровня расширения в блок 92 установки QP.
(2) Блок установки QP
Блок 92 установки QP устанавливает параметры квантования, используемые блоком 63 обратного квантования, при обратном квантовании данных коэффициента преобразования уровня расширения для соответствующих блоков уровня расширения. Здесь блоки могут иметь размер, равный или меньший, чем в LCU.
Например, блок 92 установки QP рассчитывает параметр квантования для компонента яркости, путем добавления остатка, обозначенного cu_qp_delta_abs и cu_qp_delta_sign, к прогнозируемому значению параметра квантования, прогнозированного для каждого CU, используя pic_init_qp_minus26 и slice_qp_delta. Затем блок 92 установки QP выводит вычисленный параметр квантования в блок 63 обратного квантования.
Кроме того, блок 92 установки QP устанавливает смещения параметра квантования уровня расширения для компонентов цветности на основе смещения параметра квантования основного уровня. Смещения параметра квантования компонента Cb и компонента Cr уровня расширения cbE_qp_offset и crE_qp_offset могут, соответственно, быть сгенерированы в соответствии, например, со следующими выражениями (9) и (10):
Уравнение 7
В выражениях (9) и (10) первые члены с правых сторон представляют собой разности смещения параметра квантования slice_cbE_qp_offset и slice_crE_qp_offset, полученные блоком 91 получения параметра QP. Вторые члены с правых сторон представляют собой смещения параметра квантования cbB_qp_offset и crB_qp_offset основного уровня. В первой технологии каждое смещение параметра квантования cbB_qp_offset и crB_qp_offset основного уровня равно сумме смещения модуля изображения и смещения модуля среза, как представлено в следующих выражениях (11) и (12).
Уравнение 8
Во второй технологии каждое смещение параметров квантования cbB_qp_offset и crB_qp_offset основного уровня равно смещениям модуля изображения, как представлено в следующих выражениях (13) и (14).
Уравнение 9
В обеих технологиях смещения параметра квантования cbB_qp_offset и crB_qp_offset основного уровня определяют из параметров QP основного уровня, которые размещены в буфере общего запоминающего устройства 7.
Блок 92 установки QP рассчитывает параметры квантования для компонентов цветности уровня расширения, путем ввода суммы смещений параметра квантования, рассчитанных в соответствии с одной из описанных выше технологий, и параметра квантования компонента яркости в заданном выражении взаимосвязи. Выражение взаимосвязи, используемое здесь, описано в Непатентной литературе 1, описанной выше. Затем блок 92 установки QP выводит рассчитанный параметр квантования в блок 63 обратного квантования.
Следует отметить, что, когда флаг повторного использования параметра QP, полученный блоком 91 получения параметра QP, обозначает, что смещение параметра квантования должно повторно использоваться компонентами цветности (то есть, смещения параметра квантования уровня расширения должны быть установлены на основе смещения параметра квантования основного уровня), блок 92 установки QP может выполнять описанную выше обработку в отношении компонентов цветности. Когда флаг повторного использования параметра QP не обозначает, что смещения параметра квантования должны быть повторно использоваться, блок 92 установки QP может устанавливать смещения параметра квантования компонентов цветности уровня расширения, без ссылки на смещения параметра квантования основного уровня.
(3) Блок получения параметра SL
Блок 93 получения параметра SL получает параметр SL, декодированный блоком 62 декодирования без потерь, из кодированного потока уровня расширения, когда основной уровень кодируют в схеме кодирования изображения, другой, чем схема HEVC (например, в схеме AVC). Например, когда основной уровень кодируют в схеме AVC, блок 93 получения параметра SL получает параметры SL, которые обозначают матрицы квантования, имеющие размеры 16x16 пикселей и 32x32 пикселя. Кроме того, даже когда матрицы квантования не используются повторно в уровнях, блок 93 получения параметра SL получает параметры SL, декодированные блоком 62 декодирования без потерь, из кодированного потока уровня расширения. В этом случае получают параметры SL, которые обозначают матрицы квантования, имеющие размеры от 4x4 пикселя до 32x32 пикселя. Следует отметить, что параметры SL матриц квантования, имеющих размеры, равные или больше чем 16x16 пикселей, обычно кодируют после выборки с понижением каждой из матриц квантования, так, чтобы они имели размер 8x8 пикселей, как описано со ссылкой на фиг. 9B. Блок 93 получения параметра SL выводит полученные параметры SL уровня расширения в блок 94 установки SL. Следует отметить, что, когда матрицы квантования повторно используются в уровнях, и основной уровень кодируют в схеме HEVC, блок 93 получения параметра SL может не получать параметры SL уровня расширения. Блок 93 получения параметра SL может определять, был или не был кодирован основной уровень в схеме HEVC со ссылкой на флаг avc_base_layer_flag, декодированный из VPS.
Кроме того, когда флаг повторного использования матрицы квантования и флаг технологии установки были декодированы блоком 62 декодирования без потерь, блок 93 получения параметра SL может выводить декодированный флаг повторного использования матрицы квантования и флаг технологии установки в блок 94 установки SL.
(4) Блок установки SL
Блок 94 установки SL устанавливает матрицы квантования, предназначенные для использования блоком 63 обратного квантования, когда данные коэффициента преобразования компонента яркости и компонентов цветности уровня расширения обратно квантуют для уровня расширения.
Например, блок 94 установки SL получает матрицы квантования основного уровня, имеющие размеры 4x4 пикселя и 8x8 пикселей, из общего запоминающего устройства 7, когда основной уровень кодируют в схеме HEVC или в схеме AVC. Например, блок 94 установки SL может дублировать соответствующие матрицы квантования уровня расширения из полученных матриц квантования основного уровня. Вместо этого блок 94 установки SL может прогнозировать соответствующие матрицы квантования уровня расширения из полученных матриц квантования основного уровня. В последнем случае остаток прогнозирования матриц квантования дополнительно декодируют из кодированного потока уровня расширения, и остаток может быть добавлен к прогнозируемым матрицам квантования. Блок 94 установки SL может выбирать, следует ли дублировать матрицы квантования уровня расширения или прогнозировать в соответствии с флагом технологии установки, полученным блоком 93 получения параметра SL.
Когда основной уровень был кодирован в схеме HEVC, блок 94 установки SL также получает матрицы квантования основного уровня, имеющие размеры 16x16 пикселей и 32x32 пикселя, из общего запоминающего устройства 7. Затем блок 94 установки SL дублирует или прогнозирует соответствующие матрицы квантования уровня расширения из полученных матриц квантования основного уровня. Когда основной уровень был кодирован в схеме AVC, блок 94 установки SL генерирует соответствующие матрицы квантования уровня расширения, имеющие размеры 16x16 пикселей и 32x32 пикселя, в соответствии с параметрами SL, вводимыми из блока 93 получения параметра SL, не основываясь на матрицах квантования основного уровня.
Следует отметить, что, когда флаг повторного использования матрицы квантования, который может быть получен блоком 93 получения параметра SL, обозначает, что матрицы квантования не используются повторно (то есть, матрицы квантования должны быть декодированы из кодированного потока уровня расширения), блок 94 установки SL может генерировать все необходимые матрицы квантования, в соответствии с параметрами SL уровня расширения, не основываясь на матрицах квантования основного уровня. Флаг повторного использования матрицы квантования и флаг технологии установки могут быть декодированы из кодированного потока уровня расширения отдельно для разных размеров матрицы квантования, разных режимов прогнозирования или разных компонентов цвета.
5. Последовательность обработки декодирования в соответствии с вариантом осуществления
5-1. Схема последовательности
На фиг. 14 показана блок-схема последовательности операций, представляющая пример потока схемы обработки для декодирования, в соответствии с вариантом осуществления. Для краткости описания этапы обработки, не соответствующие непосредственно технологии настоящего раскрытия, будут исключены из чертежей.
Как показано на фиг. 14, блок 5 демультиплексирования вначале демультиплексирует многоуровневый мультиплексированный поток на кодированный поток основного уровня и кодированный поток уровня расширения (Этап S60).
Далее, блок 6a декодирования BL выполняет обработку декодирования основного уровня, для реконструкции изображения основного уровня из кодированного пара основного уровня (Этап S61).
Общее запоминающее устройство 7 размещает в буфере соответствующие параметры квантования, декодированные при обработке декодирования основного уровня (Этап S62). Соответствующие параметры квантования, размещенные в буфере, могут включать в себя, например, смещения параметров квантования компонентов цветности, установленные для каждого блока основного уровня и матриц квантования.
Затем блок 6b декодирования EL выполняет обработку декодирования уровня расширения, используя информацию, помещенную в буфере общего запоминающего устройства 7, для реконструкции изображения уровня расширения (Этап S63).
5-2. Обработка, относящаяся к обратному квантованию
На фиг. 15 показана блок-схема последовательности операций, представляющая пример потока обработки, относящейся к обратному квантованию, при обработке декодирования (Этап S63 на фиг. 14) для уровня расширения. Обработка, показанная на фиг. 15, может повторяться, например, для каждого среза изображения уровня расширения.
Как показано на фиг. 15, вначале блок 91 получения параметра QP получает параметры QP, декодированные блоком 62 декодирования без потерь, из кодированного потока уровня расширения (Этап S71). Затем блок 91 получения параметра QP выводит полученные параметры QP уровня расширения в блок 92 установки QP.
Кроме того, блок 93 получения параметра SL определяет, используются или нет повторно матрицы квантования в уровнях, обращаясь, например, к флагу повторного использования матрицы квантования (Этап S72). Когда матрицы квантования повторно используются в уровнях, блок 93 получения параметра SL дополнительно определяет, является или нет схема кодирования основного уровня схемой HEVC (Этап S73). Когда матрицы квантования не используются повторно на уровнях или когда схема кодирования основного уровня не является схемой HEVC, блок 93 получения параметра SL получает параметры SL уровня расширения, декодированные блоком 62 декодирования без потерь из кодированного потока уровня расширения (Этап S74). Затем блок 93 получения параметра SL выводит полученные параметры SL уровня расширения в блок 94 установки SL.
Затем блок 92 установки QP устанавливает параметры квантования уровня расширения для каждого блока уровня расширения (Этап S75). Например, блок 92 установки QP рассчитывает смещения параметра квантования уровня расширения для компонентов цветности на основе разностей смещения параметра квантования, обозначенных смещениями параметра квантования и параметрами QP основного уровня. Кроме того, блок 92 установки QP вводит суммы рассчитанных смещений параметра квантования и параметра квантования компонента яркости в заданное выражение взаимосвязи для расчета параметров квантования уровня расширения. Затем блок 92 установки QP выводит рассчитанные параметры квантования в блок 63 обратного квантования.
Следует отметить, что, когда флаг повторного использования параметра QP не обозначает, что смещения параметра квантования основного уровня должны повторно использоваться, блок 92 установки QP может устанавливать смещение параметра квантования, обозначенное параметрами QP для уровня расширения, не обращаясь к смещениям параметра квантования основного уровня для компонентов цветности.
Кроме того, блок 94 установки SL устанавливает матрицы квантования уровня расширения для каждого блока уровня расширения (Этап S76). Например, когда основной уровень был кодирован в схеме HEVC или в схеме AVC, блок 94 установки SL может получать матрицы квантования основного уровня, имеющие размеры 4x4 пикселя и 8x8 пикселей из общего запоминающего устройства 7. Кроме того, когда основной уровень был кодирован в схеме HEVC, блок 94 установки SL также получает матрицы квантования основного уровня, имеющие размеры 16x16 пикселей и 32x32 пикселя из общего запоминающего устройства 7. Затем блок 94 установки SL дублирует или прогнозирует соответствующие матрицы квантования уровня расширения из полученных матриц квантования основного уровня, для установки матриц квантования уровня расширения. Когда основной уровень был кодирован в схеме AVC, блок 94 установки SL устанавливает матрицы квантования уровня расширения, имеющие размеры 16x16 пикселей и 32x32 пикселя, в соответствии с параметрами SL, введенными из блока 93 получения параметра SL. Затем блок 94 установки SL выводит установленные матрицы квантования в блок 63 обратного квантования.
Следует отметить, что, когда флаг повторного использования матрицы квантования обозначает, что матрицы квантования основного уровня не используются повторно, блок 94 установки SL может устанавливать все необходимые матрицы квантования уровня расширения в соответствии с параметрами SL, введенными из блока 93 получения параметра SL.
Затем блок 62 декодирования без потерь декодирует квантованные данные уровня расширения из кодированного потока уровня расширения (Этап S77). Затем блок 62 декодирования без потерь выводит декодированные квантованные данные в блок 63 обратного квантования.
Затем блок 63 обратного квантования выполняет обратное квантование квантованных данных уровня расширения, используя этап квантования, определенный из параметров квантования (и матриц квантования), введенных из блока 90 управления обратным квантованием, для восстановления данных коэффициента преобразования (Этап S78). Затем блок 63 обратного квантования выводит восстановленные данные коэффициента преобразования в блок 64 обратного ортогонального преобразования.
Затем выполняется последовательная обработка, такая как обратное ортогональное преобразование, суммирование прогнозируемого изображения и прогнозируемые ошибки, и фильтрация.
5-3. Пример синтаксиса
(1) Основной пример
На фиг. 16A - 16C показаны иллюстративные схемы для описания примеров синтаксиса уровня расширения, которые могут использоваться для технологии, в соответствии с настоящим раскрытием. Здесь флаг повторного использования параметра QP и флаг повторного использования матрицы квантования кодированы в PPS уровня расширения.
-й
-й
-й
На фиг. 16A и 16B иллюстрируется синтаксис PPS в качестве примера. На фиг. 16A флаг повторного использования параметра QP “BL_chroma_qp_offset_flag находится в 15 строке. Когда флаг повторного использования параметра QP обозначает “false”, смещения параметра квантования не используются повторно на уровнях, и смещение параметра квантования “pic_cb_qp_offset” и “pic_cr_qp_offset” модуля изображения кодируют в 18 и 19 строках. Когда флаг повторного использования параметра QP обозначает “true”, кодирование смещения параметра квантования “pic_cb_qp_offset” и “pic_cr_qp_offset” модуля изображения пропускают.
-й
-й
-я
-й
.
На фиг. 16B функция “scaling_list_data ()” для параметров SL уровня расширения присутствует в 52 строке. На фиг. 16C показан конкретный синтаксис функции “scaling_list_data ()”. На фиг. 16C флаг повторного использования матрицы квантования “BL_scaling_list_flag” присутствует в 2 строке. Когда флаг повторного использования матрицы квантования обозначает “true”, матрицы квантования повторно используются в уровнях. Когда флаг повторного использования матрицы квантования обозначает "true", и основной уровень кодируют по схеме AVC, однако, только матрицы квантования, имеющие размеры 4x4 пикселя и 8x8 пикселей, повторно используются (см. 7 строка; “sizeID=0” означает размер 4x4 пикселя и “sizeID=1” означает размер 8x8 пикселей). Когда матрицы квантования не используются повторно, параметр SL, который обозначает матрицу квантования уровня расширения, кодируют с 8строки
Следует отметить, что синтаксис, описанный здесь, представляет собой просто пример. Флаг повторного использования параметра QP и флаг повторного использования матрицы квантования, например, каждый может быть кодирован в другой области заголовка, чем PPS (например, в SPS и т.п.). Кроме того, когда повторно используют матрицы квантования, PPS может включать в себя описанный выше флаг установки технологии или остаточные данные, полученные, когда прогнозируют матрицы квантования.
(2) Модифицируемые примеры
На каждой из фиг. 16D и 16E иллюстрируются модифицированные примеры синтаксиса уровня расширения. В этих модифицированных примерах параметры SL, кодируемые блоком 1b кодирования EL и декодируемые блоком 6b декодирования EL, включают в себя информацию опорного уровня, со ссылкой на фиг. 9D.
-м
-й
В первом модифицированном примере, показанном на фиг. 16D, одну общую часть информации опорного уровня кодируют для множества размеров и множества типов матриц квантования. Флаг copy_scaling_list_from_ref_layer_flag в 3 строке расширения SPS (sps_extension) на фиг. 16D представляет собой флаг повторного использования матрицы квантования, обозначающей, следует или нет генерировать матрицу квантования уровня расширения на основе матрицы квантования вспомогательного уровня, обозначенного информацией опорного уровня. Когда флаг повторного использования матрицы квантования обозначает “true”, дополнительно кодируют информацию опорного уровня scaling_list_ref_layer в 5строке. В качестве примера, информация опорного уровня scaling_list_ref_layer может обозначать вспомогательный уровень, который используется как основа дублирования или прогнозирования матрицы квантования, используя номер уровня (например, 6-битное целое число без символа и т.п.), заданный для опорного целевого уровня. Расширение PPS (pps_extension) также может включать в себя ту же информацию опорного уровня синтаксиса, что и расширение SPS.
-й
-й
-я
-я
-й
-й
Во втором модифицированном примере, показанном на фиг. 16E, разные виды информации опорного уровня кодируют для каждого размера и типа матриц квантования. Функции scaling_list_extension () в 3 строке расширения SPS и в 3 строке расширения PPS на фиг. 16E определяют синтаксис для информации опорного уровня. 2 строка функции scaling_list_extension () означает итерацию в отношении приблизительно 4 размеров матриц квантования, установленных по переменной sizeId. Следующая 3 строка означает итерацию относительно приблизительно 6 типов матриц квантования, установленных переменной matrixId (поскольку максимальный размер компонента цветности составляет 16x16 пикселей, существуют только приблизительно два ее типа относительно 32x32 пикселей). Флаг copy_scaling_list_from_ref_layer_flag [sizeId] [matrixId] в 4 строке в каждой итерации представляет собой флаг повторного использования матрицы квантования, обозначающий, что матрица квантования должна повторно использоваться в уровнях. Когда флаг повторного использования матрицы квантования обозначает "true", дополнительно кодируют информацию опорного уровня scaling_list_ref_layer [sizeId] [matrixId] в 6 строке. Здесь информация опорного уровня также может обозначать вспомогательный уровень, который используется как основа дублирования или прогнозирования матрицы квантования, используя, например, номер уровня, заданный для опорного целевого уровня.
Следует отметить, что, когда матрицы квантования повторно используются только в уровнях, в которых совместно используется схема кодирования изображения, как описано со ссылкой на фиг. 9C, и самый нижний основной уровень кодируют в схеме AVC, информация опорного уровня может обозначать другой номер уровня, чем номер самого нижнего основного уровня (например, ноль) (обычно, в SHVC только самый нижний уровень представляет собой уровень, который может быть кодирован в схеме AVC).
Если информация опорного уровня, как описано выше, будет введена здесь, путем гибкого выбора матрицы квантования, предназначенной для повторного использования из множества вспомогательных уровней, оптимальная матрица квантования может использоваться на уровнях расширения, и, таким образом, эффективность кодирования может быть эффективно расширена.
6. Пример комбинации кодеков
Технология, в соответствии с настоящим раскрытием, может применяться при масштабируемом кодировании видеоданных с различными комбинациями кодеков. Количество уровней, которые должны быть мультиплексированы, может представлять собой любое число, равное или большее 2. Когда используется комбинация кодеков, которые не были стандартизованы, однако, существует вероятность того, что декодер не будет нормально работать. Таким образом, только комбинации кодеков, которые были определены заранее, может быть разрешены для иерархического кодирования. Вместо этого может быть запрещено иерархическое кодирование нескольких комбинаций кодеков.
На фиг. 17A и 17B показаны иллюстративные схемы для описания комбинаций кодеков, которые могут быть разрешены или запрещены.
На фиг. 17A показаны пять уровней от самого нижнего первого уровня L10 до самого верхнего пятого уровня L14. Первый уровень L10 и второй уровень L11 кодированы в схеме MPEG2. Третий уровень L12 и четвертый уровень L13 кодированы в схеме AVC. Пятый уровень L14 кодирован в схеме HEVC. Среди этих уровней разрешено иерархическое кодирование первого уровня L10 и второго уровня L11, из-за их совместно используемого кодека. Иерархическое кодирование второго уровня L11 и третьего уровня L12 может быть запрещено, вследствие того факта, что комбинация схемы MPEG2 и схемы AVC не является стандартизованной. Иерархическое кодирование третьего уровня L12 и четвертого уровня L13 разрешено из-за их совместно используемого кодека. Иерархическое кодирование четвертого уровня L13 и пятого уровня L14 разрешено из-за того, что комбинация схемы AVC и схемы HEVC является стандартизованной. В примере на фиг. 17A мультиплексированный поток первого уровня L10 и второго уровня L11, и мультиплексированный поток третьего уровня L12, четвертого уровня L13 и пятого уровня L14 могут быть мультиплексированы, используя кодирование при одновременной передаче, вместо масштабируемого кодирования видеоданных.
На фиг. 17B показаны пять уровней от самого нижнего первого уровня L20 до самого верхнего пятого уровня L24. Первый уровень L20 и второй уровень L21 кодированы в схеме AVC. Третий уровень L22 и четвертый уровень L23 кодированы в схеме MPEG2. Пятый уровень L24 кодирован в схеме HEVC. Среди этих уровней иерархическое кодирование первого уровня L20 и второго уровня L21 разрешено, из-за их совместно используемого кодека. Иерархическое кодирование второго уровня L21 и третьего уровня L22 может быть запрещено вследствие того, что комбинация схемы AVC и схемы MPEG2 не являются стандартизованными. Иерархическое кодирование третьего уровня L22 и четвертого уровня L23 разрешено из-за их совместно используемого кодека. Иерархическое кодирование четвертого уровня L23 и пятого уровня L24 разрешено вследствие того факта, что комбинация схемы MPEG2 и схемы HEVC является стандартизованной. В примере на фиг. 17B мультиплексированный поток первого уровня L20 и второго уровня L21, и мультиплексированный поток третьего уровня L22, четвертого уровня L23 и пятого уровня L24 может быть мультиплексирован, используя кодирование при одновременной передаче, вместо масштабируемого кодирования видеоданных.
7. Пример применения
7-1. Применение к различным продуктам
Устройство 10 кодирования изображения и устройство 60 декодирования изображения, в соответствии с вариантом осуществления, описанным выше, могут применяться для различных электронных устройств, таких как передатчик и приемник для спутниковой широковещательной передачи, кабельной широковещательной передачи кабельного телевидения, распределения в Интернет, распределения по терминалам через сотовую передачу данных и т.п., в устройстве записи, которое записывает изображения на носителе, таком как оптический диск, магнитный диск или запоминающее устройство флэш, устройство воспроизведения, которое воспроизводит изображения из таких носителей информации, и т.п. Четыре примера применения будут описаны ниже.
(1) Первый пример применения
На фиг. 18 иллюстрируется пример схематичной конфигурации телевизионного устройства, в котором применяется упомянутый выше вариант осуществления. Телевизионное устройство 900 включает в себя антенну 901, тюнер 902, демультиплексор 903, декодер 904, блок 905 обработки видеосигнала, дисплей 906, блок 907 обработки аудиосигнала, громкоговоритель 908, внешний интерфейс 909, блок 910 управления, интерфейс 911 пользователя и шину 912.
Тюнер 902 выделяет сигнал требуемого канала из сигнала широковещательной передачи, принятого через антенну 901, и демодулирует выделенный сигнал. Тюнер 902 затем выводит кодированный поток битов, полученный путем демодуляции, в демультиплексор 903. Таким образом, тюнер 902 играет роль средства передачи, принимающего кодированный поток, в котором кодировано изображение, в телевизионном устройстве 900.
Демультиплексор 903 отделяет видеопоток и аудиопоток программы, предназначенной для просмотра, из кодированного потока битов, и выводит каждый из отделенных потоков в декодер 904. Демультиплексор 903 также выделяет вспомогательные данные, такие как электронная программа передач (GEP), из кодированного потока битов, и подает выделенные данные в блок 910 управления. Здесь демультиплексор 903 может дескремблировать кодированный поток битов, когда тот скремблирован.
Декодер 904 декодирует поток видео и аудиоданных, которые были введены из демультиплексора 903. Декодер 904 затем выводит видеоданные, сгенерированные при обработке декодирования, в блок 905 обработки видеосигнала. Кроме того, декодер 904 выводит аудиоданные, сгенерированные при обработке декодирования, в блок 907 обработки аудиосигнала.
Блок 905 обработки видеосигнала воспроизводит видеоданные, введенные из декодера 904, и отображает видеоизображение на устройстве 906 отображения. Блок 905 обработки видеосигнала также может отображать экран приложения, подаваемый через сеть, на устройстве 906 отображения. Блок 905 обработки видеосигнала может дополнительно выполнять дополнительную обработку, например, уменьшение уровня шумов видеоданных, в соответствии с установкой. Кроме того, блок 905 обработки видеосигнала может генерировать изображение графического интерфейса пользователя (GUI), такое как меню, кнопка или курсор, и накладывать сгенерированное изображение на выходное изображение.
Устройством 906 отображения управляют, используя сигнал управления, подаваемый из блока 905 обработки видеосигнала, и он отображает видеоизображение или видеоизображение экрана в устройстве отображения (такого как жидкокристаллический дисплей, плазменный дисплей или OELD).
Блок 907 обработки аудиосигнала выполняет обработку воспроизведения, такую как D-A преобразование и усиление, для аудиоданных, введенных из декодера 904, и выводит звук через громкоговоритель 908. Блок 907 обработки аудиосигнала может также выполнять дополнительную обработку, такую как уменьшение уровня шумов для аудиоданных.
Внешний интерфейс 909 представляет собой интерфейс для соединения телевизионного устройства 900 с внешним устройством или сетью. Например, декодер 904 может декодировать поток видеоданных или поток аудиоданных, принятый, например, через внешний интерфейс 909. Другими словами, внешний интерфейс 909 также играет роль средства передачи, принимающий кодированный поток, в котором кодировано изображение, в телевизионное устройство 900.
Блок 910 управления включает в себя процессор, такой как центральное процессорное устройство (CPU), и запоминающее устройство, такое как оперативное запоминающее устройство (RAM) и постоянное запоминающее устройство (ROM). В запоминающем устройстве содержится программа, исполняемая CPU, данные программы, данные EPG и данные, получаемые через сеть. Программа, сохраненная в запоминающем устройстве, считывается, например, CPU при включении телевизионного устройства 900, и исполняется. В результате исполнения программы, CPU управляет операциями телевизионного устройства 900, в соответствии с сигналом операции, который, например, вводят через интерфейс 911 пользователя.
Интерфейс 911 пользователя соединен с блоком 910 управления. Интерфейс 911 пользователя включает в себя кнопку и переключатель для пользователя, для выполнения операций с телевизионным устройством 900, а также, например, с приемной частью сигнала дистанционного управления. Интерфейс 911 пользователя обнаруживает операцию пользователя через эти компоненты, генерирует сигнал операции и выводит сгенерированный сигнал операции в блок 910 управления.
Шина 912 соединяет тюнер 902, демультиплексор 903, декодер 904, блок 905 обработки видеосигнала, блок 907 обработки аудиосигнала, внешний интерфейс 909 и блок 910 управления друг с другом.
Декодер 904 в телевизионном устройстве 900 выполнен так, как упомянуто выше, имеет функцию устройства 60 декодирования изображения, в соответствии с упомянутым выше вариантом осуществления. Таким образом, когда телевизионное устройство 900 декодирует изображение с многоуровневым кодеком, эффективность кодирования может быть улучшена, благодаря повторному использованию параметров, относящихся к квантованию в уровнях.
2-й пример применения
На фиг. 19 представлен пример схематичной конфигурации мобильного телефона, в котором применяется упомянутый выше вариант осуществления. Мобильный телефон 920 включает в себя антенну 921, блок 922 связи, аудиокодек 923, громкоговоритель 924, микрофон 925, блок 926 камеры, блок 927 обработки изображения, блок 928 мультиплексирования и разделения, блок 929 записи и воспроизведения, устройство 930 отображения, блок 931 управления, блок 932 оперирования и шину 933.
Антенна 921 соединена с блоком 922 связи. Громкоговоритель 924 и микрофон 925 соединены с аудиокодеком 923. Блок 932 оперирования соединен с блоком 931 управления. Шина 933 соединяет блок 922 связи, аудиокодек 923, блок 926 камеры, блок 927 обработки изображения, блок 928 мультиплексирования и разделения, блок 929 записи и воспроизведения, устройство 930 отображения и блок 931 управления друг с другом.
Мобильный телефон 920 выполняет операции, такие как передача/прием аудиосигнала, передача/прием электронной почты или данных изображения, формирование изображения и запись данных в различных режимах работы, включая в себя режим голосового вызова, режим передачи данных, режим фотографирования и режим видеотелефона.
В режиме голосового вызова аналоговый аудиосигнал, генерируемый микрофоном 925, подают в аудиокодек 923. Аудиокодек 923 затем преобразует аналоговый аудиосигнал в аудиоданные, выполняет A-D преобразование для преобразованных аудиоданных и сжимает эти данные. Аудиокодек 923 после этого выводит сжатые аудиоданные в блок 922 связи. Блок 922 связи кодирует и модулирует аудиоданные для генерирования сигнала передачи. Блок 922 связи затем передает сгенерированный сигнал передачи в базовую станцию (не представлена) через антенну 921. Кроме того, блок 922 связи усиливает радиосигнал, принятый через антенну 921, преобразует частоту сигнала, и получает сигнал приема. Блок 922 связи после этого демодулирует и декодирует сигнал приема для генерирования аудиоданных и выводит сгенерированные аудиоданные в аудиокодек 923. Аудиокодек 923 разворачивает аудиоданные, выполняет D-A преобразование для данных, и генерирует аналоговый аудиосигнал. Аудиокодек 923 затем выводит звук, путем подачи сгенерированного аудиосигнала в громкоговоритель 924.
Кроме того, в режиме передачи данных, например, блок 931 управления генерирует данные знаков, составляющие электронную почту, в соответствии с операцией пользователя, через блок 932 оперирования. Блок 931 управления затем обеспечивает отображение этих знаков на устройстве 930 отображения. Кроме того, блок 931 управления генерирует данные электронной почты, в соответствии с инструкцией передачи от пользователя, через блок 932 оперирования и выводит сгенерированные данные электронной почты в блок 922 связи. Блок 922 связи кодирует и модулирует данные электронной почты для генерирования сигнала передачи. Затем блок 922 связи передает сгенерированный сигнал передачи в базовую станцию (не показана) через антенну 921. Блок 922 связи затем усиливает радиосигнал, принятый через антенну 921, преобразует частоту сигнала, и получает сигнал приема. Блок 922 связи после этого демодулирует и декодирует сигнал приема, восстанавливает данные электронной почты, и выводит восстановленные данные электронной почты в блок 931 управления. Блок 931 управления обеспечивает отображение содержания электронной почты на устройстве 930 отображения, а также данные электронной почты, которые должны быть сохранены на носителе информации блока 929 записи и воспроизведения.
Блок 929 записи и воспроизведения включает в себя произвольный, пригодный для записи и считывания носитель информации. Например, носитель информации может представлять собой встроенный носитель информации, такой как RAM или запоминающее устройство флэш, или может представлять собой подключаемый внешне носитель информации, такой как жесткий диск, магнитный диск, магнитооптический диск, оптический диск, запоминающее устройство USB или карта памяти.
В режиме фотографии, например, блок 926 камеры получает изображения объекта, генерирует данные изображения и выводит сгенерированные данные изображения в блок 927 обработки изображения. Блок 927 обработки изображения кодирует данные изображения, введенные из блока 926 камеры, и сохраняет кодированный поток на носителе информации блока 929 записи и воспроизведения.
Кроме того, в режиме видеотелефона, например, блок 928 мультиплексировании и разделения мультиплексирует поток видеоданных, кодированный блоком 927 обработки изображения, и поток аудиоданных, вводимый из аудиокодека 923, и выводит мультиплексированные потоки в блок 922 связи. Блок 922 связи кодирует и модулирует потоки, для генерирования сигнала передачи. Блок 922 связи затем передает сгенерированный сигнал передачи в базовую станцию (не показана) через антенну 921. Кроме того, блок 922 связи усиливает радиосигнал, принятый через антенну 921, преобразует частоту сигнала, и получает сигнал приема. Сигнал передачи и сигнал приема могут включать в себя кодированный поток битов. Затем блок 922 связи демодулирует и декодирует сигнал приема для восстановления потока, и выводит восстановленный поток в блок 928 мультиплексирования и разделения. Блок 928 мультиплексирования и разделения отделяет поток видеоданных и поток аудиоданных от входного потока и выводит поток видеоданных и поток аудиоданных в блок 927 обработки изображения и в аудиокодек 923, соответственно. Блок 927 обработки изображения декодирует поток видеоданных, для генерирования видеоданных. Видеоданные затем подают в дисплей 930, и, таким образом, устройство 930 отображения отображает последовательность изображений. Аудиокодек 923 разворачивает и выполняет D-A преобразование для потока аудиоданных, для генерирования аналогового аудиосигнала. Аудиокодек 923 затем подает сгенерированный аудиосигнал в громкоговоритель 924 для вывода звука.
Блок 927 обработки изображения в мобильном телефоне 920, выполненном так, как описано выше, имеет функцию устройства 10 кодирования изображения и устройства 60 декодирования изображения, в соответствии с упомянутым выше вариантом осуществления. Таким образом, когда мобильный телефон 920 кодирует или декодирует изображение, используя многоуровневый кодек, эффективность кодирования может быть улучшена в результате повторного использования параметров, относящихся к квантованию в уровнях.
(3) Третий пример применения
На фиг. 20 показан пример схематичной конфигурации устройства записи и воспроизведения, в котором применяется упомянутый выше вариант осуществления. Устройство 940 записи и воспроизведения кодирует аудиоданные и видеоданные принятой программы широковещательной передачи и записывает эти данные, например, на носитель записи. Устройство 940 записи и воспроизведения также может кодировать аудиоданные и видеоданные, полученные из другого устройства, и записывать эти данные, например, на носитель записи. Кроме того, в ответ на инструкцию пользователя, например, устройство 940 записи и воспроизведения воспроизводит данные, записанные на носителе записи, на мониторе и выводят через громкоговоритель. Устройство 940 записи и воспроизведения в это время декодирует аудиоданные и видеоданные.
Устройство 940 записи и воспроизведения включает в себя тюнер 941, внешний интерфейс 942, кодер 943, привод 944 жесткого диска (HDD), привод 945 диска, селектор 946, декодер 947, блок 948 отображения на экране (OSD), блок 949 управления и интерфейс 950 пользователя.
Тюнер 941 отделяет сигнал требуемого канала от сигнала широковещательной передачи, принятого через антенну (не показана), и демодулирует выделенный сигнал. Тюнер 941 затем выводит кодированный поток битов, полученный в результате демодуляции, в селектор 946. Таким образом, тюнер 941 играет роль средства передачи в устройстве 940 записи и воспроизведения.
Внешний интерфейс 942 представляет собой интерфейс для подключения устройства 940 записи и воспроизведения к внешнему устройству или сети. Внешний интерфейс 942 может представлять собой, например, интерфейс IEEE 1394, сетевой интерфейс, интерфейс USB, или интерфейс запоминающего устройства флэш. Видеоданные и аудиоданные, принятые через внешний интерфейс 942, вводят, например, в кодер 943. Таким образом, внешний интерфейс 942 играет роль средства передачи в устройстве 940 записи и воспроизведения.
Кодер 943 кодирует видеоданные и аудиоданные, когда видеоданные и аудиоданные, вводимые из внешнего интерфейса 942, являются не кодированными. Кодер 943 после этого выводит кодированный поток битов в селектор 946.
HDD 944 записывает кодированный поток битов, в котором сжаты данные содержания, такие как видеоданные и аудиоданные, различные программы и другие данные, на внутренний жесткий диск. Кроме того, HDD 944 считывает эти данные с жесткого диска, при воспроизведении видеоданных и аудиоданных.
Привод 945 диска записывает и считывает данные на и с носителя записи, который устанавливается в привод диска. Носитель записи, установленный в привод 945 диска, может представлять собой, например, диск DVD (такой как DVD-Video, DVD-RAM, DVD-R, DVD-RW, DVD+R или DVD+RW) или диск Blu-ray (зарегистрированный товарный знак).
Селектор 946 выбирает кодированный поток битов, вводимый через тюнер 941 или кодер 943, при записи видео и аудиоданных, и выводит выбранный кодированный поток битов в HDD 944 или в привод 945 диска. Кроме того, при воспроизведении видеоданных и аудиоданных, селектор 946 выводит кодированный поток битов, вводимый из HDD 944, или из привода 945 диска в декодер 947.
Декодер 947 декодирует кодированный поток битов для генерирования видеоданных и аудиоданных. Затем декодер 947 выводит сгенерированные видеоданные в OSD 948. Кроме того, декодер 904 выводит сгенерированные аудиоданные во внешний громкоговоритель.
OSD 948 воспроизводит видеоданные, водимые из декодера 947, и отображает видеоданные. OSD 948 может также накладывать изображение GUI, например, меню, кнопки или курсор, на отображаемое видеоизображение.
Блок 949 управления включает в себя процессор, такой как CPU, и запоминающее устройство, такое как RAM и ROM. В запоминающем устройстве содержится программа, исполняемая CPU, а также данные программы. Программа, содержащаяся в запоминающем устройстве, считывается, например, CPU при включении устройства 940 записи и воспроизведения и исполняется. В результате исполнения программы, CPU управляет операциями устройства 940 записи и воспроизведения, в соответствии с сигналом операций, который вводят, например, через интерфейс 950 пользователя.
Интерфейс 950 пользователя соединен с блоком 949 управления. Интерфейс 950 пользователя включает в себя, например, кнопку и переключатель для пользователя, для управления устройством 940 записи и воспроизведения, а также как часть приема сигнала дистанционного управления. Интерфейс 950 пользователя детектирует операцию пользователя через эти компоненты, генерирует сигнал операции, и выводит сгенерированный сигнал операции в блок управления 949.
Кодер 943 в устройстве 940 записи и воспроизведения, выполненный, как упомянуто выше, имеет функцию устройства 10 кодирования изображения в соответствии с упомянутым выше вариантом осуществления. Кроме того, декодер 947 имеет функцию устройства 60 декодирования изображения, в соответствии с упомянутым выше вариантом осуществления. Таким образом, когда устройство 940 записи и воспроизведения кодирует или декодирует изображение с многоуровневым кодеком, эффективность кодирования может быть улучшена, в результате повторного использования соответствующих параметров квантования в уровнях.
(4) Четвертый пример применения
На фиг. 21 показан пример схематичной конфигурации устройства формирования изображения, в котором применяется упомянутый выше вариант осуществления. Устройство 960 формирования изображения формирует изображения объекта, генерирует изображение, кодирует данные изображения и записывает эти данные на носитель записи.
Устройство 960 формирования изображения включает в себя оптический блок 961, блок 962 формирования изображения, блок 963 обработки сигналов, блок 964 обработки изображения, устройство 965 отображения, внешний интерфейс 966, запоминающее устройство 967, привод 968 носителя информации, OSD 969, блок 970 управления, интерфейс 971 пользователя и шину 972.
Оптический блок 961 соединен с блоком 962 формирования изображения. Блок 962 формирования изображения соединен с блоком 963 обработки сигналов. Устройство 965 отображения соединено с блоком 964 обработки изображения. Интерфейс 971 пользователя соединен с блоком 970 управления. Шина 972 соединяет блок 964 обработки изображения, внешний интерфейс 966, запоминающее устройство 967, привод 968 носителя информации, OSD 969 и блок 970 управления друг с другом.
Оптический блок 961 включает в себя линзу фокусирования и механизм диафрагмы. Оптический блок 961 формирует оптическое изображение субъекта на поверхности формирования изображения блока 962 формирования изображения. Блок 962 формирования изображения включает в себя датчик изображения, такой как CCD или CMOS, и выполняет фотоэлектрическое преобразование для преобразования оптического изображения, сформированного на поверхности формирования изображения, в сигнал изображения, как электрический сигнал. Затем блок 962 формирования изображения выводит сигнал изображения в блок 963 обработки сигналов.
Блок 963 обработки сигналов выполняет различную обработку сигнала камеры, такую как коррекция изгиба характеристики передачи уровня яркости, гамма-коррекция и коррекция цветности для сигнала изображения, вводимого из блока 962 формирования изображения. Блок 963 обработки сигналов выводит данные изображения, для которых была выполнена обработка сигнала камеры, в блок 964 обработки изображения.
Блок 964 обработки изображения кодирует данные изображения, вводимые из блока 963 обработки сигналов, для генерирования кодированных данных. Блок 964 обработки изображения затем выводит сгенерированные кодированные данные во внешний интерфейс 966 или в привод 968 носителя информации. Блок 964 обработки изображения также декодирует кодированные данные, вводимые из внешнего интерфейса 966 или с привода 968 носителя информации для генерирования данных изображения. Блок 964 обработки изображения затем выводит сгенерированные данные изображения в дисплей 965. Кроме того, блок 964 обработки изображения может выводить в устройство 965 отображения данные изображения, введенные из блока 963 обработки сигналов, для отображения изображения. Кроме того, блок 964 обработки изображения может накладывать данные отображения, полученные из OSD 969, на изображение, которое выводят на устройство 965 отображения.
OSD 969 генерирует изображение GUI, например, меню, кнопки или курсор, и выводит сгенерированное изображение в блок 964 обработки изображения.
Внешний интерфейс 966 выполнен, например, как USB разъем ввода и вывода. Внешний интерфейс 966 соединяет, например, устройство 960 формирования изображения с принтером, при печати изображения. Кроме того, привод соединяют с внешним интерфейсом 966, по мере необходимости. Съемный носитель информации, такой как магнитный диск или оптический диск, устанавливают в привод, например, так, что программа, считываемая из съемного носителя информации, может быть установлена в устройстве 960 формирования изображения. Внешний интерфейс 966 также может быть выполнен, как сетевой интерфейс, который соединяется с сетью, такой как LAN или Интернет. Таким образом, внешний интерфейс 966 играет роль средства передачи в устройстве 960 формирования изображения.
Носитель записи, установленный в привод 968 носителя информации, может представлять собой произвольный съемный носитель информации с возможностью считывания и записи, например, магнитный диск, магнитооптический диск, оптический диск или полупроводниковое запоминающее устройство. Кроме того, носитель записи может быть постоянно установлен в приводе 968 носителя информации таким образом, что формируется, например, нетранспортабельный носитель сохранения, такой как встроенный привод жесткого диска или твердотельный привод (SSD).
Блок 970 управления включает в себя процессор, такой как CPU, и запоминающее устройство, такое как RAM и ROM. В запоминающем устройстве содержится программа, выполняемая CPU, а также данные программы. Программу, сохраненную в запоминающем устройстве, считывают с помощью CPU, например, при запуске устройства 960 формирования изображения, и затем исполняют. При исполнении программы, CPU управляет операциями устройства 960 формирования изображения, в соответствии с сигналом операций, который вводят, например, из интерфейса 971 пользователя.
Интерфейс 971 пользователя соединен с блоком 970 управления. Интерфейс 971 пользователя включает в себя, например, кнопку и переключатель, которые позволяют пользователю управлять устройством 960 формирования изображения. Интерфейс 971 пользователя детектирует операцию пользователя через эти компоненты, генерирует сигнал операции и выводит сгенерированный сигнал операции в блок 970 управления.
Блок 964 обработки изображения в устройстве 960 формирования изображения, выполненный таким образом, как упомянуто выше, имеет функции устройства 10 кодирования изображения и устройства 60 декодирования изображения, в соответствии с упомянутым выше вариантом осуществления. Таким образом, когда устройство 960 формирования изображения кодирует или декодирует изображение с помощью многоуровневого кодека, эффективность кодирования может быть улучшена, в результате повторного использования соответствующих параметров квантования на уровнях.
7-2. Различные варианты использования масштабируемого кодирования видеоданных
Преимущества масштабируемого кодирования видеоданных, описанного выше, могут иметь различное применение. Ниже будут описаны три примера использования.
(1) Первый пример
В первом примере масштабируемое кодирование видеоданных используется для избирательной передачи данных. Как показано на фиг. 22, система 1000 передачи данных включает в себя устройство 1001 накопления потока и сервер 1002 доставки. Сервер 1002 доставки соединен с некоторыми устройствами терминала через сеть 1003. Сеть 1003 может представлять собой проводную сеть или беспроводную сеть, или их комбинацию. На фиг. 22 показан персональный компьютер (PC) 1004, AV устройство 1005, планшетное устройство 1006 и мобильный телефон 1007, как примеры устройств терминала.
В устройстве 1001 накопителя потока сохраняются, например, потоковые данные 1011, включающие в себя мультиплексированный поток, генерируемый устройством 10 кодирования изображения. Мультиплексированный поток включает в себя кодированный поток основного уровня (BL) и кодированный поток уровня расширения (EL). Сервер 1002 доставки считывает данные 1011 потока, сохраненные в устройстве 1001 сохранения потока и доставляет, по меньшей мере, часть считанных данных 1011 потока в PC 1004, AV устройство 1005, планшетное устройство 1006 и мобильный телефон 1007 через сеть 1003.
Когда поток доставляют в терминальное устройство, сервер 1002 доставки выбирает поток, который должен быть доставлен, на основе некоторых условий, таких как возможности терминального устройства или среда передачи данных. Например, сервер 1002 доставки может исключать задержку терминального устройства или возникновение переполнения или перегрузки процессора, путем прекращения доставки кодированного потока, имеющего высокое качество изображения, которое превышает качество изображения, которое может быть обработано устройством терминала. Кроме того, сервер 1002 доставки также может исключать занятие полос передачи данных сети 1003, при доставке некодированного потока, имеющего высокое качество изображения. С другой стороны, когда отсутствует риск, которого требуется избежать, или считается соответствующим на основе контракта пользователя или некоторых условий, сервер 1002 доставки может доставлять полный мультиплексированный поток в терминальное устройство.
В примере на фиг. 22 сервер 1002 доставки считывает данные 1011 потока из устройства 1001 сохранения потока. Затем сервер 1002 доставки доставляет данные 1011 потока непосредственно в PC 1004, имеющий высокие возможности обработки. Поскольку AV устройство 1005 имеет низкие способности обработки, сервер 1002 доставки генерирует данные 1012 потока, содержащие только кодированный поток основного уровня, выделенный из данных 1011 потока, и доставляет данные 1012 потока в AV устройство 1005. Сервер 1002 доставки доставляет данные 1011 потока непосредственно в планшетное устройство 1006, выполненное с возможностью передачи данных, с высокой скоростью передачи данных без изменения. Поскольку мобильный телефон 1007 может выполнять передачу данных только с низкой скоростью передачи данных, сервер 1002 доставки доставляет данные 1012 потока, содержащие только кодированный поток основного уровня, в мобильный телефон 1007.
Благодаря использованию мультиплексированного потока таким образом, можно адаптивно регулировать количество трафика, которое должно быть передано. Кроме того, количество кода данных 1011 потока уменьшается по сравнению со случаем, когда каждый уровень кодируют индивидуально и, таким образом, даже если все данные 1011 потока будут доставлены, нагрузка на сеть 1003 может быть уменьшена. Кроме того, ресурсы памяти устройства 1001 сохранения потока экономятся.
Характеристики аппаратных средств терминальных устройств отличаются от устройства к устройству. Кроме того, возможности приложений, работающих в терминальных устройствах, являются разными. Кроме того, возможности по передаче данных сети 1003 изменяются. Возможности, доступные для передачи данных, могут изменяться в любой момент, из-за другого трафика. Таким образом, перед началом доставки данных потока, сервер 1002 доставки может получать информацию терминала о характеристиках аппаратных средств и возможностях приложения устройств терминала, и сетевой информации о возможностях передачи данных сети 1003 путем обмена сигналами с терминальным устройством назначения доставки. Затем сервер 1002 доставки может выбирать поток, который должен быть доставлен, на основе полученной информации.
В частности, уровень, который должен быть декодирован, может быть выделен терминальным устройством. Например, PC 1004 может отображать выделенное и декодированное изображение основного уровня из принятого мультиплексированного потока на своем экране. Кроме того, после генерирования данных 1012 потока, путем выделения кодированного потока основного уровня из принятого мультиплексированного потока, PC 1004 может обеспечить сохранение на носителе сохранения сгенерированных данных 1012 потока или передать данные потока в другое устройство.
Конфигурация системы 1000 связи, показанная на фиг. 22, представляет собой только пример. Система 1000 связи может включать в себя любое количество устройств 1001 сохранения потока, серверов 1002 доставки, сетей 1003 и терминальных устройств.
(2) Второй пример
Во втором примере масштабируемое кодирование видеоданных используется для передачи данных через множество каналов связи. Как показано на фиг. 23, система 1100 связи включает в себя станцию 1101 широковещательной передачи и устройство 1102 терминала. Станция 1101 широковещательной передачи выполняет широковещательную передачу кодированного потока 1121 основного уровня по наземному каналу 1111. Станция 1101 широковещательной передачи также передает кодированный поток 1122 уровня расширения в устройство 1102 терминала через сеть 1112.
Устройство 1102 терминала имеет функцию приема, для приема наземной широковещательной передачи, передаваемой станцией 1101 широковещательной передачи, и принимает кодированный поток 1121 основного уровня через наземный канал 1111. Кроме того, устройство 1102 терминала также имеет функцию связи для обмена данными со станцией 1101 широковещательной передачи и принимает кодированный поток 1122 уровня расширения через сеть 1112.
После приема кодированного потока 1121 основного уровня, например, в ответ на инструкции пользователя, терминальное устройство 1102 может декодировать изображение основного уровня из принятого кодированного потока 1121 и отображать изображение основного уровня на экране. В качестве альтернативы, терминальное устройство 1102 может обеспечить сохранение на носителе сохранения декодированного изображения основного уровня или передавать изображение основного уровня в другое устройство.
Кроме того, после приема кодированного потока 1122 уровня расширения через сеть 1112, например, в ответ на инструкции пользователя, терминальное устройство 1102 может генерировать мультиплексированный поток путем мультиплексирования кодированного потока 1121 основного уровня и кодированного потока 1122 уровня расширения. Терминальное устройство 1102 также может декодировать изображение уровня расширения из кодированного потока 1122 уровня расширения для отображения изображения уровня расширения на экране. В качестве альтернативы, терминальное устройство 1102 может обеспечивать сохранение носителем сохранения декодированного изображения уровня расширения или передавать изображение уровня расширения в другое устройство.
Как описано выше, кодированный поток каждого уровня, содержащегося в мультиплексированном потоке, может быть передан через разный канал связи для каждого уровня. В соответствии с этим, задержка передачи данных или возникновение переполнения могут быть предотвращены путем распределения нагрузки, прикладываемой к отдельным каналам.
Кроме того, канал связи, предназначенный для использования для передачи, может быть динамически выбран в соответствии с некоторыми условиями. Например, кодированный поток 1121 основного уровня, количество данных в котором относительно велико, может быть передан через канал связи, имеющий более широкую полосу пропускания, и кодированный поток 1122 уровня расширения, количество данных которого относительно мало, может быть передан через канал связи, имеющий более узкую полосу пропускания. Кроме того, канал связи, по которому передают кодированный поток 1122 определенного уровня, можно переключать в соответствии с полосой пропускания канала связи. В соответствии с этим, нагрузка, прикладываемая к отдельным каналам, может быть более эффективно уменьшена.
Следует отметить, что конфигурация системы 1100 связи, представленной на фиг. 23, представляет собой только пример. Система 1100 связи может включать в себя любое количество каналов связи и терминальных устройств. Конфигурация системы, описанная здесь, также может применяться в других вариантах использования, кроме широковещательной передачи.
(3) Третий пример
В третьем примере масштабируемое кодирование видеоданных используется для сохранения видеоизображений. Как показано на фиг. 24, система 1200 связи включает в себя устройство 1201 формирования изображения и устройство 1202 сохранения потока. Устройство 1201 формирования изображения кодирует с масштабированием данные изображения, генерируемые с субъектом 1211, изображение которого формируют для генерирования мультиплексированного потока 1221. Мультиплексированный поток 1221 включает в себя кодированный поток основного уровня и кодированный поток уровня расширения. Затем устройство 1201 формирования изображения подает мультиплексированный поток 1221 на устройство 1202 сохранения потока.
Устройство 1202 сохранения потока сохраняет мультиплексированный поток 1221, передаваемый из устройства 1201 формирования изображения с разным качеством изображения для каждого режима. Например, устройство 1202 сохранения потока выделяет кодированный поток 1222 основного уровня из мультиплексированного потока 1221 в нормальном режиме и сохраняет выделенный кодированный поток 1222 основного уровня. С другой стороны, в режиме высокого качества, устройство 1202 сохранения потока сохраняет мультиплексированный поток 1221, в том виде, как он есть. В соответствии с этим, устройство 1202 сохранения потока может записывать поток высокого качества с большим количеством данных только, когда требуется запись видеоизображения с высоким качеством изображения. Поэтому ресурсы запоминающего устройства могут быть сэкономлены, в то время как влияние ухудшения качества изображения на пользователей может быть сдержано.
Например, предполагается, что устройство 1201 формирования изображения представляет собой камеру наблюдения. Когда объект наблюдения (например, злоумышленник) отсутствует в снятом изображении, выбирают нормальный режим. В этом случае снятое изображение, вероятно, будет не важным, и приоритет предоставляют уменьшению количества данных таким образом, что видеоизображение записывают с низким качеством изображения (то есть, сохраняют только кодированный поток 1222 основного уровня). С другой стороны, когда объект наблюдения (например, субъект 1211, такой как злоумышленник) появляется в снятом изображении, выбирается режим высокого качества. В этом случае снятое изображение, вероятно, будет важным, и приоритет предоставляют высокому качеству изображения таким образом, что видеоизображение записывают с высоким качеством изображения (то есть сохраняют мультиплексированный поток 1221).
В примере на фиг. 24 режим, выбираемый устройством 1202 сохранения потока, основывается, например, на результате анализа изображения. Однако настоящий вариант осуществления не ограничен таким примером, и устройство 1201 формирования изображения может выбрать режим. В последнем случае устройство 1201 формирования изображения может подавать кодированный поток 1222 основного уровня в устройство 1202 сохранения потока в нормальном режиме и мультиплексированный поток 1221 в устройство 1202 сохранения потока в режиме высокого качества.
Любые критерии возможны для выбора режима. Например, режим можно переключать в соответствии с громкостью голоса, полученного через микрофон, или формой колебаний голоса. Кроме того, режим также можно периодически переключать. Кроме того, режим может переключаться в ответ на инструкции пользователя. Кроме того, количество выбираемых режимов может представлять собой любое количество, если только оно не превышает количество уровней сформированной иерархии.
Конфигурация системы 1200 связи, представленной на фиг. 24, представляет собой только пример. Система 1200 связи может включать в себя любое количество устройств 1201 формирования изображения. Конфигурация системы, описанной здесь, также может применяться для других вариантов использования, кроме камеры наблюдения.
7-3. Применение для другого кодека
(1) Применение в многопроекционном кодеке
Многопроекционный кодек представляет собой вид многопроекционного кодека и представляет собой схему кодирования изображения, предназначенную для кодирования и декодирования, так называемых, многопроекционных видеоизображений. На фиг. 25 показаны иллюстративные схемы для описания многопроекционного кодека. На фиг. 25 представлена последовательность из трех кадров обзора, снятых из трех точек обзора. ID вида (view_id) представлен для каждого вида. Среди множества этих видов один вид установлен, как основной вид. Другие виды, кроме основного вида, называются неосновными видами. В примере на фиг. 25, вид, ID вида которого равен “0”, представляет собой основной вид, и два вида, ID вида которых равны “1” или “2”, представляют собой неосновные виды. Когда эти виды иерархически кодируют, каждый вид может соответствовать уровню. Как представлено стрелками на фиг. 25, изображение неосновного вида кодируют и декодируют, обращаясь к изображению основного вида (также можно обращаться к изображениям других неосновных видов).
На фиг. 26 показана блок-схема, представляющая схематичную конфигурацию устройства 10v кодирования изображения, поддерживающего многопроекционный кодек. На фиг. 26 в устройстве 10v кодирования изображения предусмотрен блок 1c кодирования первого уровня, блок 1d кодирования второго уровня, общее запоминающее устройство 2 и блок 3 мультиплексирования.
Функция блока 1c кодирования первого уровня является такой же, как и у блока 1a кодирования BL, описанного со ссылкой на фиг. 5, за исключением того, что вместо изображения основного уровня, изображение основного вида принимают, как входное. Блок 1c кодирования первого уровня кодирует изображение основного вида для генерирования кодированного потока первого уровня. Функция блока 1d кодирования второго уровня является такой же, как и у блока 1b кодирования EL, описанного со ссылкой на фиг. 5, за исключением того, что вместо изображения уровня расширения, изображение неосновного вида принимают, в качестве входного. Блок 1d кодирования второго уровня кодирует изображение неосновного вида для генерирования кодированного потока второго уровня. Общее запоминающее устройство 2 сохраняет информацию, обычно используемую в уровнях. Блок 3 мультиплексирования мультиплексирует кодированный поток первого уровня, сгенерированный блоком 1c кодирования первого уровня, и кодированный поток второго уровня, сгенерированный блоком 1d кодирования второго уровня, для генерирования многоуровневого мультиплексированного потока.
На фиг. 27 показана блок-схема, представляющая схематичную конфигурацию устройства 60v декодирования изображения, поддерживающего многопроекционный кодек. Как представлено на фиг. 27, в устройстве 60v декодирования изображения предусмотрен блок демультиплексирования 5, блок 6c декодирования первого уровня, блок 6d декодирования второго уровня и общее запоминающее устройство 7.
Блок 5 демультиплексирования демультиплексирует многоуровневый мультиплексированный поток в кодированный поток первого уровня и кодированный поток второго уровня. Функция блока 6c декодирования первого уровня является такой же, как и у блока 6a декодирования BL, описанного со ссылкой на фиг. 6, за исключением того, что кодированный поток, в котором, вместо изображения основного уровня, кодировано изображение основного вида, принимают, как входные данные. Блок 6c декодирования первого уровня декодирует изображение основного вида из кодированного потока первого уровня. Функция блока 6d декодирования второго уровня является такой же, как и у блока 6b декодирования EL, описанного со ссылкой на фиг. 6, за исключением того, что кодированный поток, в котором, вместо изображения уровня расширения, кодировано изображение неосновного вида, принимают, как входные данные. Блок 6d декодирования второго уровня декодирует изображение неосновного вида из кодированного потока второго уровня. В общем запоминающем устройстве 7 содержится информация, совместно используемая в уровнях.
В соответствии с технологией настоящего раскрытия, когда данные многопроекционного изображения кодируют или декодируют, общее количество кода может быть уменьшено, благодаря повторному использованию параметров, относящихся к квантованию основного вида в неосновном виде. В соответствии с этим, эффективность кодирования в многопроекционном кодеке может быть дополнительно улучшена, как в случаях масштабируемого кодирования видеоданных.
(2) Применение в технологии потоковой передачи
Технология, в соответствии с настоящим раскрытием, также может применяться в протоколе потоковой передачи данных. Например, в Динамической адаптивной потоковой передаче по HTTP (MPEG-DASH), множество кодированных потоков, имеющих взаимно разные параметры, такие как разрешающая способность, подготавливают заранее в сервере потоковой передачи данных. Затем сервер потоковой передачи данных динамически выбирает соответствующие данные, которые должны быть переданы при потоковой передаче, из множества кодированных потоков в модулях сегментов, и передает выбранные данные. Используя такой протокол потоковой передачи, параметры, относящиеся к квантованию одного кодированного потока, могут повторно использоваться для других кодированных потоков.
7-4. Различные уровни установки
Технология в соответствии с настоящим раскрытием может быть реализована на различных уровнях установки, например, в процессоре, таком как системная большая интегральная схема (LSI), модуль, в котором используется множество процессоров, модуль, в котором используется множество модулей, или набор, в котором другие функции дополнительно добавлены к модулю.
(1) Видеонабор
Пример, в котором реализована технология, в соответствии с настоящим раскрытием, будет описан со ссылкой на фиг. 28. На фиг. 28 показана блок-схема, представляющая пример схематичной конфигурации видеонабора.
В последние годы электронные устройства стали многофункциональными. Развитие и производство электронного устройства выполняется в отношении отдельных функций, и затем их усовершенствуют до состояния, в котором множество функций интегрировано. Таким образом, существуют деловые операторы, которые изготовляют или продают только части электронных устройств. Такой деловой оператор обеспечивает составляющий элемент, который имеет одну функцию или множество функций, которые соотносятся друг с другом, или предоставляет набор, который имеет интегрированную группу функций. Видеонабор 1300, представленный на фиг. 28, представляет собой набор, который интегрально включает в себя составляющие элементы для кодирования и декодирования (любой из которых возможен) изображений и составляющих элементов, имеющих другие функции, относящиеся к упомянутым выше функциям.
На фиг. 28 представлен видеонабор 1300, который имеет группу модулей, которая включает в себя видеомодуль 1311, внешнее запоминающее устройство 1312, модуль 1313 управления мощностью и модуль 1314 внешнего интерфейса, и группу устройств для соответствующих функций, которая включает в себя модуль 1321 соединения, камеру 1322 и датчик 1323.
Модуль представляет собой составляющий элемент, который сформирован из интегрирующих компонентов для множества функций, относящихся друг к другу. Модуль может иметь любую физическую конституцию. В качестве примера, модуль может быть сформирован путем интегрального размещения множества процессоров, каждый из которых имеет одинаковые или разные функции элемента электрической цепи, такого как резистор или конденсатор, и других устройств на поверхности схемы. Различные модули может быть сформированы путем комбинирования другого модуля или процессора с этим модулем.
В примере на фиг. 28 компоненты для функций, относящихся к обработке изображений, интегрированы в видеомодуле 1311. Видеомодуль 1311 имеет процессор 1331 приложения, видеопроцессор 1332, широкополосный модем 1333 и модуль 1334 основной полосы.
Процессор может представлять собой, например, систему на микросхеме (SOC) или системную большую интегральную схему (LSI). SoC или системная LSI могут включать в себя аппаратные средства, в которых установлена заданная логика. Кроме того, SoC или системная LSI могут включать в себя CPU и энергонезависимый физический носитель информации, в котором содержится программа, которая обеспечивает исполнение CPU заданных функций. Программа может быть сохранена, например, в ROM, и может быть выполнена в CPU, после ее считывания оперативным запоминающим устройством (RAM) для ее исполнения.
Процессор 1331 приложения представляет собой процессор, который исполняет приложение, относящееся к обработке изображений. Приложение, исполняемое в процессоре 1331 приложения, может выполнять управление, например, видеопроцессором 1332 и другими составляющими элементами, в дополнение к любой арифметической операции для обработки изображения. Видеопроцессор 1332 представляет собой процессор, имеющий функции, относящиеся к кодированию и декодированию изображений. Следует отметить, что процессор 1331 приложения и видеопроцессор 1332 могут быть интегрированы, как один процессор (см. пунктирную линию 1341 на чертеже).
Широкополосный модем 1333 представляет собой модуль, который выполняет обработку, относящуюся к передаче данных через сеть, такую как Интернет или открытая, коммутируемая телефонная сеть. Например, широкополосный модем 1333 выполняет цифровую модуляцию для преобразования цифрового сигнала, который включает в себя данные передачи, в аналоговый сигнал, и цифровую демодуляцию для преобразования аналогового сигнала, который включает в себя данные приема, в цифровой сигнал. Данные передачи и данные приема, обрабатываемые широкополосным модемом 1333, могут включать в себя произвольную информацию, например, данные изображения, кодированный поток данных изображения, данные приложения, программы приложения и данные установки.
Модуль 1334 основной полосы пропускания представляет собой модуль, который выполняет обработку в основной полосе пропускания для сигналов высокой частоты (RF), передаваемых и принимаемых через модуль 1314 внешнего интерфейса. Например, модуль 1334 основной полосы пропускания модулирует переданный сигнал основной полосы пропускания, включая в себя передачу данных и преобразует его частоту в сигнал RF, и затем выводит сигнал RF в модуль 1314 внешнего интерфейса. Кроме того, модуль 1334 основной полосы пропускания преобразует частоту RF сигнала, введенного из модуля 1314 внешнего интерфейса, и демодулирует этот сигнал для генерирования принятого сигнала в основной полосе пропускания, включая в себя данные приема.
Внешнее запоминающее устройство 1312 представляет собой запоминающее устройство, которое предусмотрено за пределами видеомодуля 1311, и доступ к нему осуществляется из видеомодуля 1311. Когда данные большого объема, такие как видеоданные, который включает в себя большое количество кадров, сохраняют во внешнем запоминающем устройстве 1312, внешнее запоминающее устройство 1312 может включать в себя относительно недорогостоящее полупроводниковое запоминающее устройство большой емкости, например, динамическое оперативное запоминающее устройство (DRAM).
Модуль 1313 управления питанием представляет собой модуль, который управляет источником питания для видеомодуля 1311 и модуля 1314 внешнего интерфейса.
Модуль 1314 внешнего интерфейса представляет собой модуль, который соединен с модулем 1334 в основной полосе пропускания и обеспечивает функции внешнего интерфейса. В примере на фиг. 28, модуль 1314 внешнего интерфейса имеет антенный блок 1351, фильтр 1352 и блок 1353 усиления. Антенный блок 1351 имеет один или больше антенных элементов, которые передают или принимают радиосигналы и составляющие элементы, относящиеся к переключению антенны и т.п. Антенный блок 1351 передает RF сигнал, усиленный в блоке 1353 усиления, как радиосигнал. Кроме того, антенный блок 1351 выводит RF сигнал, принятый как радиосигнал, в фильтр 1352, и затем RF сигнал фильтруется фильтром 1352.
Модуль 1321 соединения представляет собой модуль, имеющий функцию, относящуюся к внешнему соединению видеонабора 1300. Модуль 1321 соединения может поддерживать произвольный внешний протокол соединения. Модуль 1321 соединения может иметь, например, подмодуль, который поддерживает произвольный внешний протокол беспроводного соединения, такой как Bluetooth (зарегистрированный товарный знак), IEEE802.11 (например, Wi-Fi (зарегистрированный товарный знак)), обмен данными в ближнем поле (NFC), или стандарт Ассоциации инфракрасной передачи данных (IrDA) и соответствующую антенну. Кроме того, модуль 1321 соединения может иметь подмодуль, который поддерживает проводной протокол соединения, такой как универсальная последовательная шина (USB) или мультимедийный интерфейс высокой четкости (HDMI) и соответствующий разъем для соединения.
Кроме того, модуль 1321 соединения может включать в себя привод, который выполняет запись данных на носителе сохранения, таком как магнитный диск, оптический диск, магнитооптический диск или полупроводниковое запоминающее устройство или устройство сохранения, такое как твердотельный привод (SSD) или накопитель, подключаемый к сети (NAS), и считывание данных с носителя сохранения. Модуль 1321 соединения может включать в себя такой носитель сохранения или устройство сохранения. Кроме того, модуль 1321 соединения может обеспечивать соединение с устройством отображения, который выводит изображение или громкоговоритель, который выводит звук.
Камера 1322 представляет собой модуль, который получает снятые изображения, путем формирования изображений субъектов. Последовательность снятых изображений, полученных с помощью камеры 1322, составляет видеоданные. Видеоданные, генерируемые камерой 1322, могут быть кодированы, например, с помощью видеопроцессора 1332, если необходимо, и сохранены во внешнем запоминающем устройстве 1312 или на носителе сохранения, таком, который подключен к модулю 1321 соединения.
Датчик 1323 представляет собой модуль, который может включать в себя один или больше, например, датчика GPS, датчика звука, ультразвукового датчика, оптического датчика, датчика освещенности, инфракрасного датчика, датчика угловой скорости, датчика углового ускорения, датчика скорости, датчика ускорения, гиродатчика, геомагнитного датчика, датчика ударов и датчика температуры. Данные датчика, генерируемые датчиком 1323, могут использоваться, например, для выполнения приложения процессором 1331 приложения.
В видеонаборе 1300, выполненном, как описано выше, может использоваться технология в соответствии с настоящим раскрытием, например, в видеопроцессоре 1332. В этом случае видеонабор 1300 устанавливает, какая применяется технология, в соответствии с настоящим раскрытием.
Следует отметить, что видеонабор 1300 может быть реализован различным образом из устройств, обрабатывающих данные изображения. Например, видеонабор 1300 может соответствовать телевизионному устройству 900, мобильному телефону 920, устройству 940 записи и воспроизведения или устройству 960 формирования изображения, со ссылкой на фиг. 18 - 21. Кроме того, видеонабор 1300 может соответствовать терминальному устройству, такому как PC 1004, AV устройство 1005, планшетное устройство 1006 или мобильный телефон 1007 в системе 1000 передачи данных, описанной со ссылкой на фиг. 22, в станции 1101 широковещательной передачи данных или в терминальном устройстве 1102 системы 1100 связи, описанных со ссылкой на фиг. 23, или в устройстве 1201 формирования изображения или в устройстве 1202 сохранения потока системы 1200 связи, описанных со ссылкой на фиг. 24. Кроме того, видеонабор 1300 может соответствовать системе воспроизведения содержания, пример которой представлен на фиг. 31, или устройству, включенному в систему беспроводной связи, пример которой представлен на фиг. 40.
(2) Видеопроцессор
На фиг. 29 показана блок-схема, представляющая пример схематичной конфигурации видеопроцессора 1332. Видеопроцессор 1332 имеет функцию кодирования входного видеосигнала и входного аудиосигнала и генерирования, таким образом, видеоданных и аудиоданных, и функцию декодирования кодированных видеоданных и аудиоданных и, таким образом, генерирования выходного видеосигнала и выходного аудиосигнала.
Как представлено на фиг. 29, видеопроцессор 1332 имеет блок 1401 обработки ввода видеоданных, блок 1402 первого масштабирования, блок 1403 второго масштабирования, блок 1404 обработки вывода видеоданных, запоминающее устройство 1405 кадра, блок 1406 управления запоминающим устройством, механизм 1407 кодера и декодера, буферы 1408A и 1408B элементарного потока (ES) видеоданных, буферы 1409A и 1409B ES аудиоданных, аудиокодер 1410, аудиодекодер 1411, блок 1412 мультиплексирования (MUX), блок 1413 демультиплексирования (DEMUX) и буфер 1414 потока.
Блок 1401 обработки ввода видеоданных преобразует, например, видеосигнал, вводимый из модуля 1321 соединения в цифровые данные изображения. Блок 1402 первого масштабирования выполняет преобразование формата и масштабирование (увеличение или уменьшение) данных изображения, подаваемых из блока 1401 обработки ввода видеоданных. Блок 1403 второго масштабирования выполняет преобразование формата и масштабирование (увеличение или уменьшение) данных изображения, которое должно быть выведено, в блок 1404 обработки вывода видеоданных. Преобразование формата, выполняемое блоком 1402 первого масштабирования и блоком 1403 второго масштабирования, может представлять собой преобразование между, например, форматом 4:2:2/Y-Cb-Cr и форматом 4:2:0/Y-Cb-Cr. Блок 1404 обработки вывода видеоданных преобразует цифровые данные изображения в выходной видеосигнал, и выводит выходной видеосигнал, например, в модуль 1321 соединения.
Запоминающее устройство 1405 кадра представляет собой запоминающее устройство для сохранения данных изображения, и совместно используется блоком 1401 обработки ввода видеоданных, блоком 1402 первого масштабирования, блоком 1403 второго масштабирования, блоком 1404 обработки вывода видеоданных, и механизмом 1407 кодера и декодера. Запоминающее устройство 1405 кадра может быть реализовано, используя, например, полупроводниковое запоминающее устройство, такое как DRAM.
Блок 1406 управления запоминающим устройством управляет доступом к запоминающему устройству 1405 кадра на основе сигнала синхронизации, вводимого из механизма 1407 кодера и декодера, в соответствии с планом доступа для запоминающего устройства 1405 кадра, сохраненным в таблице 1406A администрирования доступом. Таблица 1406A управления доступом зависит от обработки, выполняемой механизмом 1407 кодера и декодера, блока 1402 первого масштабирования, блока 1403 второго масштабирования и т.п., и обновляется блоком 1406 управления запоминающим устройством.
Механизм 1407 кодера и декодера выполняет обработку кодирования, состоящую в кодировании данных изображения, для генерирования кодированного потока видеоданных и обработку декодирования для декодирования данных изображения из кодированного потока видеоданных. Например, механизм 1407 кодера и декодера кодирует данные изображения, считанные из запоминающего устройства 1405 кадра, и последовательно записывает кодированный поток видеоданных в буфер 1408A ES видеоданных. Кроме того, например, механизм кодера и декодера последовательно считывает кодированный поток видеоданных из буфера 1408B ES видеоданных и записывает декодированные данные изображения в запоминающее устройство 1405 кадра. Механизм 1407 кодера и декодера может использовать запоминающее устройство 1405 кадра в качестве рабочей области для обработки. Механизм 1407 кодера и декодера выводит сигнал синхронизации в блок 1406 управления запоминающим устройством, например, в моменты времени, в которые начинается обработка каждого из наибольших модулей кодирования (LCU).
В буфере 1408A ES видеоданных помещают кодированный поток видеоданных, генерируемый механизмом 1407 кодера и декодера. Кодированный поток видеоданных, размещенный в буфере с использованием буфера 1408A ES видеоданных, выводят в блок 1412 мультиплексирования. В буфере 1408B ES видеоданных помещают кодированный поток видеоданных, подаваемый из блока 1413 демультиплексирования. Кодированный поток видеоданных, размещенный в буфере с использованием буфера 1408B ES видеоданных, выводят в механизм 1407 кодера и декодера.
В буфере 1409A ES аудиоданных размещают кодированный поток видеоданных, генерируемый аудиокодером 1410. Кодированный поток аудиоданных, размещенный в буфере с использованием буфера 1409A ES аудиоданных, выводят в блок 1412 мультиплексирования. В буфере 1409B ES аудиоданных помещают кодированный поток аудиоданных, подаваемый из блока 1413 демультиплексирования. Кодированный поток аудиоданных, помещенный в буфер с использованием буфера 1409B ES аудиоданных, выводят в аудиодекодер 1411.
Аудиокодер 1410 выполняет цифровое преобразование, например, в отношении входного аудиосигнала, подаваемого из модуля 1321 соединения, и кодирует входной аудиосигнал в соответствии со схемой кодирования аудиоданных, например, аудиосхемой MPEG или со схемой аудиокода номер 3 (AC3). Аудиокодер 1410 последовательно записывает кодированный поток аудиоданных в буфер 1409A ES аудиоданных. Аудиодекодер 1411 декодирует аудиоданные из кодированного потока аудиоданных, вводимого из буфера 1409B ES аудиоданных, и преобразует данные в аналоговый сигнал. Аудиодекодер 1411 выводит, например, аудиосигнал в модуль 1321 соединения, как воспроизводимый аналоговый аудиосигнал.
Блок 1412 мультиплексирования мультиплексирует кодированный поток видеоданных и кодированный поток аудиоданных, для генерирования мультиплексированного потока битов. Формат мультиплексированного потока битов может представлять собой любой формат. Блок 1412 мультиплексирования может добавлять заданную информацию заголовка к потоку битов. Кроме того, блок 1412 мультиплексирования может преобразовывать формат потока. Например, блок 1412 мультиплексирования может генерировать транспортный поток (поток битов в формате для транспортирования), полученный путем мультиплексирования кодированного потока видеоданных и кодированного потока аудиоданных. Кроме того, блок 1412 мультиплексирования может генерировать данные файла (данные в формате для записи), полученные путем мультиплексирования кодированного потока видеоданных и кодированного потока аудиоданных.
Блок 1413 демультиплексирования демультиплексирует кодированный поток видеоданных и кодированный поток аудиоданных из мультиплексированного потока битов, используя способ, противоположный мультиплексированию, выполняемому блоком 1412 мультиплексирования. Другими словами, блок 1413 демультиплексирования выделяет (или отделяет) поток видеоданных и поток аудиоданных из потока битов, считанного из буфера 1414 потока. Блок 1413 демультиплексирования может преобразовывать (подвергать обратному преобразованию) формат потока. Например, блок 1413 демультиплексирования может получать транспортный поток, который может быть введен из модуля 1321 соединения или широкополосного модема 1333 через буфер 1414 потока, и преобразовывать транспортный поток в поток видеоданных и поток аудиоданных. Кроме того, блок 1413 демультиплексирования может получать данные файла, считанные с носителя сохранения, используя модуль 1321 соединения, через буфер 1414 потока и преобразовывать данные файла в поток видеоданных и поток аудиоданных.
В буфере 1414 потока размещают поток битов. Например, в буфере 1414 потока размещают транспортный поток, подаваемый из блока 1412 мультиплексирования, и выводят транспортный поток, например, в модуль 1321 соединения или широкополосный модем 1333, в заданные моменты времени или в соответствии с запросом, поступающим извне. Кроме того, в буфере 1414 потока, например, размещают данные файла, подаваемые из блока 1412 мультиплексирования, и выводят данные файла, например, в модуль 1321 соединения, для записи данных в заданные моменты времени или в соответствии с запросом, поступающим извне. Кроме того, в буфере 1414 потока также размещают транспортный поток, полученный, например, через модуль 1321 соединения или широкополосный модем 1333, и выводят транспортный поток в блок 1413 демультиплексирования в заданные моменты времени или в соответствии с запросом, поступающим извне. Кроме того, в буфере 1414 потока помещают данные файла, считанные с носителя сохранения, например, с помощью модуля 1321 соединения, и выводят данные файла в блок 1413 демультиплексирования в заданный момент времени или в соответствии с запросом, поступающим извне.
В видеопроцессоре 1332, выполненном, как описано выше, технология в соответствии с настоящим раскрытием может использоваться, например, в механизме 1407 кодера и декодера. В этом случае видеопроцессор 1332 представляет собой микросхему или модуль, в котором применяется технология в соответствии с настоящим раскрытием.
На фиг. 30 показана блок-схема, представляющая другой пример схематичной конфигурации видеопроцессора 1332. В примере на фиг. 30 видеопроцессор 1332 имеет функции кодирования и декодирования видеоданных, используя заданную схему.
Как показано на фиг. 30, видеопроцессор 1332 имеет блок 1511 управления, интерфейс 1512 отображения, механизм 1513 отображения, механизм 1514 обработки изображения, внутреннее запоминающее устройство 1515, механизм 1516 кодека, интерфейс 1517 запоминающего устройства, блок 1518 мультиплексирования и демультиплексирования, сетевой интерфейс 1519 и видеоинтерфейс 1520.
Блок 1511 управления управляет операциями различных блоков обработки внутри видеопроцессора 1332, такими как интерфейс 1512 отображения, механизм 1513 отображения, механизм 1514 обработки изображения, механизм 1516 кодека и т.п. Блок 1511 управления имеет, например, основное CPU 1531, вспомогательное CPU 1532, и системный контроллер 1533. Основное CPU 1531 исполняет программы, для управления операциями каждого блока обработки видеопроцессора 1332. Основное CPU 1531 подает сгенерированные сигналы управления в каждый блок обработки в ходе исполнения программ. Вспомогательное CPU 1532 играет вспомогательную роль в отношении основного CPU 1531. Например, вспомогательное CPU 1532 исполняет обработку дочерних процессов и подпрограмм для программ, исполняемых основным CPU 1531. Системный контроллер 1533 администрирует исполнением программ основным CPU 1531 и вспомогательным CPU 1532.
Интерфейс 1512 дисплея выводит данные изображения, например, в модуль 1321 соединения под управлением блока 1511 управления. Например, интерфейс 1512 отображения выводит аналоговый сигнал изображения, преобразованный из цифровых данных изображения или сами цифровые данные изображения в устройство отображения, которое подключено к модулю 1321 соединения. Механизм 1513 отображения выполняет преобразование формата, преобразование размера и преобразование цветового пространства для данных изображения таким образом, чтобы атрибуты данных изображения соответствовали спецификациям дисплея, который представляет собой место назначения вывода под управлением блока 1511 управления. Механизм 1514 обработки изображения выполняет обработку изображений, которая может включать в себя обработку фильтрации, с целью улучшения качества изображения и т.п. для данных изображения под управлением блока 1511 управления.
Внутреннее запоминающее устройство 1515 представляет собой запоминающее устройство, которое предусмотрено внутри видеопроцессора 1332, и совместно используется механизмом 1513 отображения, механизмом 1514 обработки изображения и механизмом 1516 кодека. Внутреннее запоминающее устройство 1515 используется, когда данные изображения вводят и выводят между, например, механизмом 1513 отображения, механизмом 1514 обработки изображения и механизмом 1516 кодека. Внутреннее запоминающее устройство 1515 может представлять собой запоминающее устройство любого типа. Например, внутреннее запоминающее устройство 1515 может иметь относительно малые размеры запоминающего устройства для сохранения данных изображения модуля блока и соответствующих параметров. Внутреннее запоминающее устройство 1515 может представлять собой запоминающее устройство, которое имеет малую емкость, но высокую скорость отклика (например, относительно внешнего запоминающего устройства 1312), например, статическое оперативное запоминающее устройство (SRAM).
Механизм 1516 кодека выполняет обработку кодирования, состоящую в кодировании данных изображения, для генерирования кодированного потока видеоданных, и обработку декодирования, состоящую в декодировании данных изображения из кодированного потока видеоданных. Схема кодирования изображения, поддерживаемая механизмом 1516 кодека, может представлять собой одну или больше из произвольных схем. В примере, представленном на фиг. 30, механизм 1516 кодека имеет видеоблок 1541 MPEG 2, блок 1542 AVC/H.264, блок 1543 HEVC/H.265, блок 1544 HEVC/H.265 (масштабируемый), блок 1545 HEVC/H.265 (многопроекционный) и блок 1551 MPEG-DASH. Эти соответствующие функциональные блоки кодируют и декодируют данные изображения в соответствии с соответствующей схемой кодирования изображения.
Блок 1551 MPEG-DASH представляет собой функциональный блок, который обеспечивает возможность передачи данных изображения в соответствии со схемой MPEG-DASH. Блок MPEG 1551 MPEG-DASH выполняет генерирование потока на основе стандартной спецификации и управляет передачей сгенерированного потока. Кодирование и декодирование переданных данных изображения могут быть выполнены другим функциональным блоком, включенным в механизм 1516 кодека.
Интерфейс 1517 запоминающего устройства представляет собой интерфейс для подключения видеопроцессора 1332 к внешнему запоминающему устройству 1312. Данные, генерируемые механизмом 1514 обработки изображения или механизмом 1516 кодека, выводят во внешнее запоминающее устройство 1312 через интерфейс 1517 запоминающего устройства. Кроме того, данные, подаваемые из внешнего запоминающего устройства 1312 подают в механизм 1514 обработки изображения или механизм 1516 кодека через интерфейс 1517 запоминающего устройства.
Блок 1518 мультиплексирования и демультиплексирования выполняет мультиплексирование и демультиплексирование кодированного потока видеоданных и соответствующего потока битов. Во время мультиплексирования блок 1518 мультиплексирования и демультиплексирования может добавлять заданную информацию заголовка к мультиплексированному потоку. Кроме того, во время демультиплексирования, блок 1518 мультиплексирования и демультиплексирования может добавлять заданную информацию заголовка к разделенным отдельным потокам. Другими словами, блок 1518 мультиплексирования и демультиплексирования может исполнять преобразование формата вместе с мультиплексированием и демультиплексированием. Например, блок 1518 мультиплексирования и демультиплексирования может поддерживать преобразование и обратное преобразование между множеством потоков битов и транспортным потоком, который представляет собой мультиплексированный поток в формате транспортирования, и преобразование и обратное преобразование между множеством потоков битов и данными файла в формате записи.
Сетевой интерфейс 1519 представляет собой интерфейс для соединения видеопроцессора 1332, например, с широкополосным модемом 1333 или модулем 1321 соединения. Видеоинтерфейс 1520 представляет собой интерфейс для подключения видеопроцессора 1332, например, к модулю 1321 соединения или камере 1322.
В видеопроцессоре 1332, выполненном, как описано выше, может использоваться технология в соответствии с настоящим раскрытием, например, в механизме 1516 кодека. В этом случае видеопроцессор 1332 представляет собой микросхему или модуль, в которой применяется технология в соответствии с настоящим раскрытием.
Следует отметить, что конфигурация видеопроцессора 1332 не ограничена двумя примерами, описанными выше. Видеопроцессор 1332, например, может быть реализован, как одна полупроводниковая схема или множество полупроводниковых схем. Кроме того, видеопроцессор 1332 может быть реализован как трехмерная ламинированная LSI, которая сформирована путем ламинирования множества полупроводников или комбинирования множества LSI.
7-5. Система, в которой используется MPEG-DASH
(1) Общий обзор системы воспроизведения содержания
Вначале, со ссылкой на фиг. 31 – 33, кратко будет описана система воспроизведения содержания, в которой может применяться технология, в соответствии настоящим раскрытием. На фиг. 31 представлена иллюстративная схема, представляющая общий обзор системы воспроизведения содержания. Система воспроизведения содержания, представленная на фиг. 31, включает в себя серверы 1610 и 1611 содержания, сеть 1612 и устройства 1620 (1620A, 1620B, и 1620C) воспроизведения содержания (устройства - клиенты).
Серверы 1610 и 1611 содержания подключены к устройствам 1620 воспроизведения содержания через сеть 1612. Сеть 1612 представляет собой проводной или беспроводный маршрут передачи для информации, передаваемой или принимаемой устройствами, подключенными через сеть 1612. Сеть 1612 может представлять собой, например, сеть общего пользования, такую как Интернет, телефонную коммутируемую сеть общего пользования или спутниковую сеть передачи данных, или может представлять собой частную сеть, такую как локальная вычислительная сеть (LAN), включающую в себя Ethernet (зарегистрированный товарный знак), глобальная вычислительная сеть (WAN), или виртуальную частную сеть, работающую на протоколе Интернет (IP VPN).
Сервер 1610 содержания представляет собой устройство сервера, которое имеет базу данных, в которой накапливают файлы данных, включающие в себя кодированные данные, генерируемые путем кодирования данных содержания, и соответствующие метаданные. Когда сервер 1610 содержания генерирует файл данных в соответствии с форматом файла MP4, кодированные данные могут быть сохранены в блоке “mdat” и метаданные в блоке “moov”. Данные содержания могут включать в себя аудиосодержание, такое как музыка, лекции или радиопередачи. Кроме того, данные содержания могут включать в себя видеосодержание, такое как кинофильмы, телевизионные программы или видеопрограммы. Кроме того, данные содержания могут включать в себя содержание изображения такое как фотографии, документы, чертежи или таблицы. Кроме того, данные содержания могут включать в себя другие типы содержания, такие как игровые данные или программные приложения.
Сервер 1610 содержания генерирует множество файлов данных с разными скоростями передачи битов для одного и того же содержания. Кроме того, как ответ на запрос на воспроизведение содержания из устройства 1620 воспроизведения содержания, сервер 1611 содержания передает URL сервера 1610 содержания в устройство 1620 воспроизведения содержания в дополнение к информации, относящейся к параметрам, которые должны быть прикреплены к URL.
На фиг. 32 показана иллюстративная схема, представляющая пример потока данных в описанной выше системе воспроизведения содержания. Сервер 1610 содержания кодирует одно и то же содержание с разными скоростями передачи битов для генерирования, например, файла А для 2 Мбит/с, файла B для 1,5 Мбит/с, и файла C для 1 Мбит/с, представленных на фиг. 32. Файл A имеет высокую скорость передачи битов, файл B имеет стандартную скорость передачи битов, и файл C имеет низкую скорость передачи битов относительно друг друга.
Кроме того, как представлено на фиг. 32, кодированные данные каждого файла разделяют на множество сегментов. Например, кодированные данные файла A разделяют на сегменты "A1", "A2", "A3", … и An, кодированные данные файла B разделяют на сегменты "B1", "B2", "B3", … и "Bm", и кодированные данные файла C разделяют на "C1", "C2", "C3", … и "Cn".
-й
-й
Каждый сегмент может представлять собой последовательность одной или больше выборок, которая начинается, например, с выборки синхронизации MP4 (например, выборка, включающая в себя изображения IDR) и может быть воспроизведена для одного сегмента. Например, когда видеоданные с частотой 30 кадров в секунду кодируют, используя структуру GOP, которая имеет фиксированную длину 15 кадров, каждый сегмент может включать в себя 2 секунды видеоизображения и звук, который эквивалентен 4 GOP, или может включать в себя 10 секунд видеоизображения и звук, который эквивалентен 20 GOP. Диапазон временного воспроизведения сегмента в одном и том же положении в файле A, файле B и файле C обычно является одинаковым. Например, диапазоны воспроизведения сегмента "A2", сегмента "B2" и сегмента “C2” являются одинаковыми. Когда каждый сегмент занимает продолжительность по времени, равную две секунды при воспроизведении, все диапазоны воспроизведения сегмента "A2", сегмента "B2" и сегмента “C2” могут соответствовать диапазону от 2секунды до 4 секунды содержания.
Сервер 1610 содержания генерирует файлы от A до C, которые включают в себя множество сегментов, как описано выше, и сохраняет сгенерированные файлы от А до C. Затем сервер 1610 содержания передает сегменты, включенные в каждый файл, в устройство 1620 воспроизведения содержания, как представлено на фиг. 32. Устройство 1620 воспроизведения содержания воспроизводит содержание на основе последовательно принятых сегментов.
Сервер 1610 содержания передает файл списка воспроизведения (который будет называться описанием мультимедийного представления (MPD)), который включает в себя информацию о скорости передачи битов и информацию доступа каждой части кодированных данных, в устройство 1620 воспроизведения содержания. На основе MPD, принятого из сервера 1610 содержания, устройство 1620 воспроизведения содержания выбирает любую скорость передачи битов из множества скоростей передачи битов, и запрашивает передачу сегментов, в соответствии с выбранной скоростью передачи битов, в сервер 1610 содержания.
На фиг. 33 представлена иллюстративная схема, представляющая конкретный пример MPD. Как показано на фиг. 33, MPD включает в себя информацию доступа, относящуюся к множеству частей кодированных данных, имеющих разные скорости передачи битов (полосы пропускания). MPD, показанное на фиг. 33, представляет, что существует приблизительно 6 частей кодированных данных, имеющих соответствующие скорости передачи битов 256 Кбит/с, 512 Кбит/с, 1,024 Мбит/с, 1,384 Мбит/с, 1,536 Мбит/с и 2,048 Мбит/с. Кроме того, MPD включает в себя информацию доступа, относящуюся к каждой части кодированных данных. Устройство 1620 воспроизведения содержания может динамически выбирать скорость передачи битов содержания, предназначенного для формирования потока, для воспроизведения со ссылкой на такое MPD.
Следует отметить, что, хотя на фиг. 31 иллюстрируется мобильный терминал, в качестве примера устройств 1620 воспроизведения содержания, устройства 1620 воспроизведения содержания не ограничены этим. Устройства 1620 воспроизведения содержания могут представлять собой устройства терминала, например, PC, PDA, смартфоны, устройства записи содержания, устройства воспроизведения содержания, игровые устройства, цифровые бытовые устройства и т.п.
(2) Пример конфигурации сервера содержания
На фиг. 34 показана блок-схема, представляющая пример конфигурации сервера 1610 содержания. Как показано на фиг. 34, в сервере 1610 содержания предусмотрен блок 1631 генерирования файла, блок 1632 сохранения и блок 1633 связи.
Блок 1631 генерирования файла имеет кодер 1641, который кодирует данные содержания и генерирует множество частей кодированных данных, имеющих разные скорости передачи битов из тех же данных содержания. Кроме того, блок 1631 генерирования файла генерирует описанную выше MPD. Блок 1631 генерирования файла, например, может генерировать приблизительно 6 частей кодированных данных, имеющих соответствующие скорости передачи битов 256 Кбит/с, 512 Кбит/с, 1,024 Мбит/с, 1,384 Мбит/с, 1,536 Мбит/с и 2,048 Мбит/с, генерируя, таким образом, MPD, пример которого представлен на фиг. 33.
Блок 1632 сохранения сохраняет множество частей кодированных данных и соответствующий MPD, генерируемый блоком 1631 генерирования файла. Блок 1632 сохранения может включать в себя носитель сохранения, такой как энергонезависимое запоминающее устройство, магнитный диск, оптический диск или магнитооптический (MO) диск. Например, энергонезависимое запоминающее устройство может представлять собой электрически стираемое программируемое постоянное запоминающее устройство (EEPROM) или стираемое программируемое ROM (EPROM). Магнитный диск может представлять собой жесткий диск или дисковидный магнитный диск. Оптический диск может представлять собой компактный диск (CD), цифровой универсальный диск с возможностью записи (DVD-R) или диск Blu-ray (BD; зарегистрированный товарный знак).
Блок 1633 связи представляет собой интерфейс связи или функциональный объект для связи с устройством 1620 воспроизведения содержания. Блок 1633 связи выполняет обмен данными с устройством 1620 воспроизведения содержания через сеть 1612. Более конкретно, блок 1633 связи имеет функцию сервера HTTP. Например, блок 1633 связи предоставляет MPD в устройство 1620 воспроизведения содержания. Кроме того, в соответствии с запросом HTTP из устройства 1620 воспроизведения содержания, блок 1633 связи передает сегменты кодированных данных, имеющих скорость передачи битов, выбранную на основе MPD устройством 1620 воспроизведения содержания, в устройство 1620 воспроизведения содержания, в качестве ответа HTTP.
(3) Пример конфигурации устройства воспроизведения содержания
На фиг. 35 показана блок-схема, представляющая пример конфигурации устройства 1620 воспроизведения содержания. Как показано на фиг. 35 в устройстве 1620 воспроизведения содержания предусмотрен блок 1651 связи, блок 1652 сохранения, блок 1653 воспроизведения, блок 1654 выбора и блок 1656 получения положения.
Блок 1651 связи представляет собой интерфейс связи или функциональный объект для связи с сервером 1610 содержания. Блок 1651 связи передает запросы HTTP в сервер 1610 содержания и принимает ответы HTTP из сервера 1610 содержания. Другими словами, блок 1651 связи может работать, как клиент HTTP. Блок 1651 связи может избирательно получать MPD и сегменты кодированных данных для целевого содержания из сервера 1610 содержания, используя запрос диапазона HTTP.
В блоке 1652 сохранения содержатся различного вида данные, относящиеся к воспроизведению содержания. В блоке 1652 сохранения, например, последовательно размещаются в буфере сегменты, полученные блоком 1651 связи из сервера 1610 содержания. Сегменты, размещенные в буфере блоком 1652 сохранения, могут быть выведены в блок 1653 воспроизведения в соответствии с, например, принципом "первым пришел – первым обслужен" (FIFO). Кроме того, блок 1652 сохранения содержит определение параметра, который должен быть добавлен к URL содержания, который описан в MPD, принятом из сервера 1610 содержания. Кроме того, блок 1652 сохранения может сохранять информацию выбора параметра, принятую из сервера 1611 содержания, который будет описан ниже.
Блок 1653 воспроизведения последовательно получает сегменты, размещенные в буфере с использованием блока 1652 сохранения, и декодирует данные содержания из полученных сегментов. Затем блок 1653 воспроизведения выполняет DA преобразование и представление декодированных данных содержания, для воспроизведения содержания.
Блок 1654 выбора динамически выбирает скорость передачи битов, соответствующую для воспроизведения с помощью блока 1653 воспроизведения среди множества скоростей передачи битов, определенных в MPD. Затем запрос HTTP для получения сегментов кодированных данных, соответствующих выбранной скорости передачи битов, передают из блока 1651 связи в сервер 1610 содержания.
Блок 1656 получения положения представляет собой модуль, который получает данные положения, обозначающие текущие положения устройства 1620 воспроизведения содержания. Блок 1656 получения положения может представлять собой, например, приемник Системы глобальной навигации (GPS). Вместо блока 1656 получения положения может быть представлен механизм установки положения, который получает текущие положения, используя беспроводную сеть.
(4) Другой пример конфигурации сервера содержания
На фиг. 36 показана блок-схема, представляющая другой пример конфигурации сервера 1611 содержания. Как показано на фиг. 36, в сервере 1611 содержания предусмотрен блок 1671 сохранения и блок 1672 связи.
В блоке 1671 сохранения содержится информация URL, которая устанавливает URL для доступа к каждой части содержания. Кроме того, в блоке 1671 сохранения содержится информация выбора параметра, к которой можно обращаться, когда устройство 1620 воспроизведения содержания выбирает параметр, который должен быть прикреплен к URL каждой части содержания. Информация выбора параметра может отображать соответствующие параметры на индексы, например, текущее положение клиента, ID пользователя клиента, размер памяти запоминающего устройства, которое имеет клиент, емкость сохранения, которую имеет клиент, и т.п.
Блок 1672 связи представляет собой интерфейс связи или функциональный объект для связи с устройством 1620 воспроизведения содержания. Блок 1672 связи выполняет связь с устройством 1620 воспроизведения содержания через сеть 1612. Более конкретно, блок 1672 связи передает информацию URL и информацию выбора параметра, сохраненную в блоке 1671 сохранения, в устройство 1620 воспроизведения содержания, в соответствии с запросом из устройства 1620 воспроизведения содержания. Устройство 1620 воспроизведения содержания может выбирать параметр, который должен быть прикреплен к URL, когда передают запрос на потоковую передачу содержания в сервер 1610 содержания, в соответствии с информацией выбора параметра, принятой из сервера 1611 содержания.
В системе воспроизведения содержания, описанной со ссылкой на фиг. 31 - 36, технология в соответствии с настоящим раскрытием может использоваться, например, в кодере 1641 сервера содержания 1610.
7-6. Система, в которой используется режим P2P для Wi-Fi
В этом разделе будет описан пример, в котором технология, в соответствии с настоящим раскрытием, применяется в системе, в которой используется режим P2P Wi-Fi.
(1) Последовательность основной операции
На фиг. 37 и 38 показаны блок-схемы последовательности операций, иллюстрирующие последовательность основной операции системы беспроводной связи, сформированной в режиме P2P Wi-Fi. Здесь иллюстрируется последовательность, которая устанавливает пиринговое (P2P) соединение между первым устройством 1701 беспроводной связи и вторым устройством 1702 беспроводной связи для начала операции конкретного приложения. Более конкретно, представленная последовательность соответствует спецификации Wi-Fi Direct (которая также может называться Wi-Fi P2P), которая стандартизована в Wi-Fi Alliance.
Вначале выполняется процедура определения устройства между первым устройством 1701 беспроводной связи и вторым устройством 1702 беспроводной связи (Этап S1711). В процедуре определения устройства, например, первое устройство 1701 беспроводной связи выполняет широковещательную передачу пробного запроса (сигнал запроса отклика). Затем первое устройство 1701 беспроводной связи принимает пробный отклик (сигнал отклика) из второго устройства 1702 беспроводной связи, которое приняло пробный запрос. Первое устройство 1701 беспроводной связи и второе устройство 1702 беспроводной связи, таким образом, определяют присутствие друг друга. Кроме того, в процедуре определения устройства, может выполняться обмен информацией атрибута, такой как название устройств и типы (такие как телевизионное устройство, PC, или смартфон) соответствующих устройств и т.п.
Затем выполняют процедуру определения услуги между первым устройством 1701 беспроводной связи и вторым устройством 1702 беспроводной связи (Этап S1712). В процедуре поиска услуги, например, первое устройство 1701 беспроводной связи передает запрос на определение услуги во второе устройство 1702 беспроводной связи, для запроса услуги или протокола, который поддерживает второе устройство 1702 беспроводной связи. Затем первое устройство 1701 беспроводной связи принимает ответ на раскрытие услуги из второго устройства 1702 беспроводной связи, распознавая, таким образом, услугу или протокол, который поддерживает второе устройство 1702 беспроводной связи. Пример протокола, который может поддерживаться каждым устройством, может включать в себя протокол Альянса цифровых сетей для дома (DLNA). Кроме того, пример услуги, которая может поддерживаться каждым устройством, может включать в себя блок цифрового мультимедийного рендеринга (DMR) в DLNA.
Затем пользователь выполняет операцию выбора партнера по соединению (операция выбора партнера по соединению) (Этап S1713). Операция выбора партнера по соединению может быть выполнена только для одного из первого устройства 1701 беспроводной связи и второго устройства 1702 беспроводной связи, или для обоих из них. Например, экран выбора партнера по соединению отображается на устройстве отображения первого устройства 1701 беспроводной связи. Затем пользователь выбирает второе устройство 1702 беспроводной связи, отображаемое, как вариант выбора, на экране выбора партнера по соединению после ввода пользователем заданной операции.
После операции выбора партнера по соединению выполняется согласование с владельцем группы между первым устройством 1701 беспроводной связи и вторым устройством 1702 беспроводной связи (Этап S1714). Здесь, в результате согласования, первое устройство 1701 беспроводной связи, назначается для использования в качестве владельца 1715 группы, и второе устройство 1702 беспроводной связи используется в качестве клиента 1716.
Затем устанавливается ассоциация (соединение L2) между первым устройством 1701 беспроводной связи и вторым устройством 1702 беспроводной связи (Этап S1717), и кроме того, устанавливается защищенное соединение (Этап S1718). Кроме того, выполняется выделение IP-адреса (Этап S1719) и установка L4 для L3, используя простой протокол определения услуги (SSDP) (Этап S1720) между первым устройством 1701 беспроводной связи и вторым устройством 1702 беспроводной связи. Следует отметить, что L2 означает второй уровень (уровень соединения данных), L3 означает третий уровень (уровень сети), и L4 означает четвертый уровень (уровень транспортирования).
Затем пользователь выполняет операцию переключения конкретного приложения (операцию переключения приложения) (Этап S1721). Операция переключения приложения может быть выполнена только для одного из первого устройства 1701 беспроводной связи и второго устройства 1702 беспроводной связи, или для обоих из них. Например, экран назначения и переключения приложения отображаются устройством отображения первого устройства 1701 беспроводной связи. Затем пользователь назначает требуемое приложение среди кандидатов, представленных в виде списка на экране назначения и переключения приложения, используя определенную операцию, вводимую пользователем.
После операции переключения приложения обозначенное приложение переключают в первом устройстве 1701 беспроводной связи и втором устройстве 1702 беспроводной связи, и выполняют обмен трафиком приложения между устройствами (Этап S1722).
Здесь также может быть установлено соединение P2P между точкой доступа (AP) и станцией (STA) в спецификациях IEEE802.11, которые были стандартизированы раньше, чем Wi-Fi Direct. В соответствии со спецификациями, принятыми в прошлом, однако, невозможно знать информацию, такую как тип партнера по соединению, или какую услугу партнер по соединению поддерживает, перед тем, как будет установлено соединение L2. С другой стороны, в Wi-Fi Direct, информация в отношении партнера по соединению может быть получена заранее в процедуре определения устройства и в процедуре определения услуги. Затем пользователь может выбирать требуемого партнера по соединению со ссылкой на полученную информацию в отношении партнера по соединению.
(2) Расширенная последовательность операций
Операция переключения приложения, которая выполняется после установления соединения L2, также может быть исключена в результате расширения структуры описанной выше процедуры определения устройства и процедуры определения услуги, и заставляет пользователя назначить требуемое приложение прежде, чем будет установлено соединение L2. Пример формата фрейма для фрейма MAC для такого расширения и пример последовательности операций представлены на фиг. 39 и фиг. 40, соответственно.
На фиг. 39 представлен пример формата фрейма для фрейма MAC запроса и ответа ассоциации, передаваемых, когда предпринимается попытка установления соединения L2. 6 полей для поля 1751 управления фреймом для поля 1756 управления последовательностью составляют заголовок MAC. Например, в поле 1751 управления фреймом, установлено значение для идентификации запроса на ассоциацию и ответа ассоциации. В то время как множество других полей представляют собой поля для информационных элементов (IE), определенных в спецификации IEEE802.11-2007, несколько полей расширены.
В поле 1761 ID информационного элемента, значение, обозначающее информацию, специфичную для заголовка, устанавливается в поле 1760 (127 в десятичной форме) IE, специфичном для поставщика. В этом случае в поле 1760 IE, специфичном для поставщика, длина поля 1762, поля 1763 OUI и поля 1764 содержания, специфичного для поставщика, продолжают друг друга. В этом расширении поле 1764 содержания, специфичное для поставщика, включает в себя поле 1765 типа IE и одно или больше полей 1766 подэлементов. Поле 1766 подэлемента может включать в себя одно или больше, например, из поля 1767, для идентификации приложения, которое требуется переключать, поле 1768, для идентификации роли устройства, относящегося к приложению, поле 1769 для установки информации L4, которое может включать в себя номер порта, соответствующий приложению, и поле 1770 для информации, относящейся к возможности приложения. Информация, относящаяся к возможности, может включать в себя, например, информацию, устанавливающую возможность приложения DLNA, исполняющего распределение аудиоданных, по воспроизведению аудиоданных, распределению видеоданных и воспроизведению видеоданных.
Выполняют обмен описанным выше расширенным запросом на ассоциацию и ответом ассоциации, когда, например, первое устройство 1701 беспроводной связи и второе устройство 1702 беспроводной связи пытается установить ассоциацию (соединение L2) в последовательности, показанной на фиг. 40 (Этап S1717b). Запрос на ассоциацию может устанавливать приложение, обозначенное пользователем во время операции выбора партнера по соединению (Этап S1713b). Затем, после установления соединения L2, приложение, обозначенное пользователем заранее, автоматически запускается (Этап S1720b), без выполнения операции запуска приложения.
В системе беспроводной связи, описанной в этом разделе, технология в соответствии настоящим раскрытием может использоваться, когда кодируют или декодируют, например, видеоданные, включенные в трафик приложения. Следует отметить, что схемы последовательности, описанные в этом разделе, представляют собой только иллюстративные части этапов обработки, которые могут быть включены в последовательность операций с целью краткости описания. Фактически, последовательность операций может включать в себя большее количество этапов обработки, таких как дополнительный обмен пакетами.
8. Заключение
Выше, со ссылкой на фиг. 1-40, были подробно описаны варианты осуществления технологии, в соответствии с настоящим раскрытием. В соответствии с вариантами осуществления, описанными выше, смещения параметров квантования для параметров квантования, которые используются, когда данные коэффициента преобразования компонентов цветности второго уровня, декодированные со ссылкой на первый уровень, квантуют или обратно квантуют, устанавливают на основе смещения параметра квантования компонентов цветности первого уровня. Таким образом, при масштабируемом кодировании видеоданных, возможно избежать избыточного кодирования параметров, относящихся к квантованию и улучшить эффективность кодирования в целом. В общем, регулировка параметров квантования компонентов цветности зависит от тенденции цвета, появляющегося в каждом изображении, но не зависит от различий между уровнями (или от различий в разрешающей способности). Таким образом, даже если смещения параметра квантования для регулирования параметров квантования компонентов цветности повторно используются в уровнях, регулировка может быть соответствующим образом выполнена.
Кроме того, в соответствии с вариантами осуществления, описанными выше, смещение параметра квантования, установленное для второго уровня, равно сумме смещения параметра квантования первого уровня и смещения параметра квантования разности, кодируемой и декодируемой для второго уровня. В соответствии с такой конфигурацией, в то время как количество кода уменьшается, в результате повторного использования смещения параметра квантования первого уровня, смещения параметра квантования второго уровня, могут быть адаптивно изменены, используя разность смещения параметра квантования. В соответствии с этим, качество изображения компонентов цветности второго уровня может быть оптимизировано, например, для каждого среза.
Кроме того, в соответствии с вариантами осуществления, описанными выше, смещения параметра квантования второго уровня устанавливают отдельно для компонента Cb и компонента Cr второго уровня. В соответствии с этим, возможна гибкая регулировка таким образом, что, например, параметр квантования компонента Cb устанавливают так, чтобы он был относительно низким, для поддержания серой шкалы изображения с сильным красным, и параметр квантования компонента Cr устанавливают так, чтобы он был относительно низким для поддержания шкалы серых тонов в изображении с сильным синим.
Кроме того, в соответствии с вариантами осуществления, описанными выше, матрицы квантования, которые используются, когда данные коэффициента преобразования второго уровня квантуют или обратно квантуют, устанавливают на основе матрицы квантования первого уровня. Также в этом случае, возможно избежать избыточного кодирования параметров, относящихся к квантованию, и улучшить эффективность кодирования в целом в многоуровневом кодеке. Когда информацию опорного уровня для обозначения уровня, к которому обращаются, когда повторно используются матрицы квантования, кодируют или декодируют, возможно гибко повторно использовать оптимальную матрицу квантования во втором уровне.
Когда матрицы квантования второго уровня дублируют из матриц квантования первого уровня, кодирование для матриц квантования второго уровня не происходит. Когда матрицы квантования второго уровня прогнозируют из матриц квантования первого уровня, происходит кодирование для относительно малого остатка, но может использоваться оптимальная матрица квантования, в то время как количество кода второго уровня уменьшается в определенной степени.
Кроме того, в соответствии с вариантами осуществления, описанными выше, когда первый уровень кодируют в схеме AVC, и второй уровень кодируют в схеме HEVC, в то время как матрицы квантования, имеющие размеры 8x8 пикселей или меньше, повторно используются в уровнях, матрицы квантования, имеющие размеры 16x16 пикселей или больше, могут быть кодированы и декодированы во втором уровне. В соответствии с такой конфигурацией, в то время как количество кода уменьшается, из-за повторного использования матриц квантования, возможно гарантировать правильные операции устройств, путем подачи недостаточных матриц квантования.
Кроме того, в соответствии с вариантами осуществления, описанными выше, различные флаги, такие как флаг, обозначающий, следует или нет повторно использовать смещения параметра квантования в уровне, флаг, обозначающий, следует или нет повторно использовать матрицы квантования в уровнях, и флаг, обозначающий технологию для установки матрицы квантования второго уровня, могут быть кодированы и декодированы. Флаги для матриц квантования могут быть кодированы и декодированы отдельно для разных размеров матриц квантования, разных режимов прогнозирования или разных компонентов цвета. При приеме этих флагов обработка кодирования может быть гибко разработана в соответствии с различными условиями, такими как требования пользователя, характеристики устройства, возможности приложения, и среда передачи данных.
Здесь, в основном, описан пример, в котором различные части информации, такие как информация, относящаяся к квантованию, мультиплексируют в заголовок кодированного потока и передают со стороны кодирования на сторону декодирования. Способ передачи этих частей информации, однако, не ограничен этим примером. Например, такие части информации могут быть переданы или записаны, как отдельные данные, ассоциированные с кодированным потоком битов, без мультиплексирования в кодированный поток битов. Здесь термин "ассоциация" означает разрешение для изображения, включенного в поток битов (изображение может составлять часть изображения, такую как срез или блок), и информации, соответствующей изображению установить соединение при декодировании. А именно, информация может быть передана по другому пути передачи, чем изображение (или поток битов). Кроме того, информация также может быть записана на другом носителе записи (или в другой области записи на том же носителе записи), чем изображение (или поток битов). Кроме того, информация и изображение (или поток битов) могут быть ассоциированы друг с другом в произвольном модуле, таком как множество кадров, один кадр или часть в пределах кадра.
Предпочтительные варианты осуществления настоящего раскрытия были описаны выше со ссылкой на приложенные чертежи, в то врем, как настоящее раскрытие, конечно, не ограничено описанными выше примерами. Специалист в данной области техники может найти различные изменения и модификации в объеме приложенной формулы изобретения, и следует понимать, что они, естественно, попадают в технический объем настоящего раскрытия.
Кроме того, настоящая технология также может быть выполнена следующим образом.
(1) Устройство обработки изображения, включающее в себя:
блок управления, выполненный с возможностью установки, на основе смещения первого параметра квантования, установленного для компонента цветности первого уровня, смещения второго параметра квантования, для компонента цветности второго уровня, декодированного со ссылкой на первый уровень; и
блок обратного квантования, выполненный с возможностью обратного квантования данных коэффициента преобразования компонента цветности второго уровня, с использованием параметра квантования, вычисленного с использованием смещения второго параметра квантования, установленного блоком управления.
(2) Устройство обработки изображения по (1), в котором смещение второго параметра квантования равно сумме смещения первого параметра квантования и разности смещения параметра квантования.
(3) Устройство обработки изображения по (2), дополнительно включающее в себя:
блок декодирования, выполненный с возможностью декодирования разности смещения параметра квантования из кодированного потока.
(4) Устройство обработки изображения по любому из (1) - (3), в котором смещение первого параметра квантования равно сумме смещения, установленного для первого уровня в модуле изображения, и смещения, установленного для первого уровня в модуле среза.
(5) Устройство обработки изображения по любому из (1) - (3), в котором первое смещение параметра квантования равно смещению, установленному для первого уровня в модуле изображения.
(6) Устройство обработки изображения по любому из (1) - (5), в котором блок управления выполнен с возможностью установки смещения второго параметра квантования отдельно для компонента Cb и компонента Cr второго уровня.
(7) Устройство обработки изображения по любому из (1) - (6), в котором, когда первый флаг, декодированный из кодированного потока, обозначает, что смещение второго параметра квантования должно быть установлено на основе смещения первого параметра квантования, блок управления выполнен с возможностью установки смещения второго параметра квантования на основе смещения первого параметра квантования.
(8) Устройство обработки изображения по любому из (1) - (7), в котором
на основе первой матрицы квантования, установленной для первого уровня, блок управления выполнен с возможностью установки второй матрицы квантования для второго уровня, и
в котором блок обратного квантования выполнен с возможностью осуществления обратного квантования данных коэффициента преобразования второго уровня, с использованием второй матрицы квантования, установленной блоком управления.
(9) Устройство обработки изображения по (8), в котором, когда информация опорного уровня указывает первый уровень, в качестве опорного уровня, блок управления выполнен с возможностью установки второй матрицы квантования для второго уровня на основе первой матрицы квантования, установленной для первого уровня.
(10) Устройство обработки изображения по (8) или (9), в котором блок управления выполнен с возможностью дублирования или прогнозирования второй матрицы квантования из первой матрицы квантования.
(11) Устройство обработки изображения по любому из (8) - (10), в котором, когда второй флаг, декодируемый из кодированного потока, указывает, что вторая матрица квантования подлежит установке на основе первой матрицы квантования, блок управления выполнен с возможностью установки второй матрицы квантования на основе первой матрицы квантования.
(12) Устройство обработки изображения по (11), характеризующееся тем, что выполнено с возможностью декодирования второго флага из кодированного потока отдельно для разных размеров матрицы квантования, разных режимов прогнозирования или разных компонентов цвета.
(13) Устройство обработки изображения по (10), в котором блок управления выполнен с возможностью выбора технологии установки для установки второй матрицы квантования в соответствии с третьим флагом, декодируемым из кодированного потока.
(14) Устройство обработки изображения по (13), характеризующееся тем, что выполнено с возможностью декодирования третьего флага из кодированного потока отдельно для разных размеров матрицы квантования, разных режимов прогнозирования или разных компонентов цвета.
(15) Устройство обработки изображения по любому из (8) - (14), характеризующееся тем, что выполнено с возможностью
кодирования второго уровня в схеме высокоэффективного кодировании видеоданных (HEVC), при этом
когда первый уровень кодирован в схеме Усовершенствованного кодирования видеоданных (AVC), блок управления выполнен с возможностью установки второй матрицы квантования, имеющей размер 8x8 пикселей или меньше, для второго уровня на основе первой матрицы квантования, и установки третьей матрицы квантования, имеющей размер 16x16 пикселей или больше для второго уровня, не основываясь на первой матрице квантования.
(16) Способ обработки изображения, включающий в себя этапы, на которых:
устанавливают, на основе смещения первого параметра квантования, установленного для компонента цветности первого уровня, второй параметр квантования, смещенный для компонента цветности второго уровня, декодированного со ссылкой на первый уровень; и
выполняют преобразование обратное квантованию данных коэффициента компонента цветности второго уровня, с использованием параметра квантования, вычисленного с использованием второго установленного смещения второго параметра квантования.
(17) Устройство обработки изображения, включающее в себя:
блок квантования, выполненный с возможностью квантования данных коэффициента преобразования компонента цветности второго уровня, кодированных со ссылкой на первый уровень, с использованием заданного параметра квантования; и
блок кодирования, выполненный с возможностью кодирования смещения второго параметра квантования компонента цветности второго уровня, вычисленного на основе смещения первого параметра квантования, установленного для компонента цветности первого уровня и заданного параметра квантования.
(18) Устройство обработки изображения по (17), в котором
блок квантования выполнен с возможностью квантования данных коэффициента преобразования второго уровня, с использованием заданной матрицы квантования, и
когда декодеру необходимо установить заданную матрицу квантования для второго уровня на основе матрицы квантования, установленной для первого уровня, блок кодирования выполнен с возможностью воздержания от кодирования данной матрицы квантования.
(19) Устройство обработки изображения по (18), в котором блок кодирования выполнен с возможностью кодирования информации опорного уровня, указывающей первый уровень, в качестве опорного уровня, на который ссылаются при установке заданной матрицы квантования.
(20) Способ обработки изображения, включающий в себя этапы, на которых:
квантуют данные коэффициента преобразования компонента цветности второго уровня, кодированные со ссылкой на первый уровень, с использованием заданного параметра квантования; и
кодируют смещение второго параметра квантования компонента цветности второго уровня, вычисленное на основе смещения первого параметра квантования, установленного для компонента цветности первого уровня и заданного параметра квантования.
Список номеров ссылочных позиций
10, 10v устройство кодирования изображения (устройство обработки изображения)
1a блок кодирования основного уровня
1b блок кодирования уровня расширения
15 блок квантования
16 блок кодирования без потерь
21 блок обратного квантования
40 блок управления квантованием
60, 60v устройство декодирования изображения (устройство обработки изображения)
6a блок декодирования основного уровня
6b блок декодирования уровня расширения
62 блок декодирования без потерь
63 блок обратного квантования
90 блок управления обратным квантованием.