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

Область техники, к которой относится изобретение
Настоящее раскрытие относится к устройству и способу обработки изображения и, более конкретно, к устройству обработки изображения и способу обработки изображения, позволяющим улучшить эффективность кодирования при многопроекционном кодировании.
Уровень техники
В последние годы, информацию изображения обрабатывают, как цифровые данные, и, с целью передачи и накопления информации с высокой эффективностью, в наше время, широко используются устройства, которые сжимают и кодируют изображения, используя систему кодирования, сжимающую информацию изображения, используя ортогональное преобразование, такое как дискретное косинусное преобразование, и сжатие движения, используя избыточность, которая является уникальной для этой информации изображения. В качестве примеров такой системы кодирования, используется MPEG (Группа экспертов движущегося изображения), Н.264, MPEG 4 Часть 10 (Усовершенствованное кодирование видеоданных, ниже называется AVC) и т.п.
В настоящее время, с целью дополнительного улучшения эффективности кодирования, так, чтобы она была выше, чем у H.264/AVC, выполняется стандартизация системы кодирования, называемой кодированием видеоданных высокой эффективности (HEVC), Объединенной группы сотрудничества - Кодирование видеоданных (JCTVC), которая представляет собой объединенную организацию по стандартизации ITU-T и ISO/IEC. Кроме того, в качестве ее расширения, параллельно был выработан непатентный документ 1, представляющий стандартизацию кодирования многопроекционного изображения, как проект для кодирования многопроекционного изображения.
В то же время, последовательно генерируют опорный список, который представляет собой список, в котором кандидаты для опорного изображения, используемого для декодирования изображения В, выстроены в заданном порядке, от начала опорных изображений, расставленных в предпочтительном порядке во временном списке, который представляет собой временный список.
В непатентном документе 1 временной список генерируют таким образом, что, после размещения опорных изображений в направлении времени, размещают опорные изображения, расположенные в направлении обзора. Таким образом, для получения предпочтительного порядка опорных изображений, расположенных в направлении обзора во временном списке, если не используется команда опорного списка, трудно разместить опорные изображения, расположенные в направлении обзора в опорном списке, и, соответственно, трудно обращаться к опорным изображениям, расположенным в направлении обзора.
Таким образом, в непатентном документе 2, предложено передавать информацию, обозначающую положение, в котором было вставлено опорное изображение, расположенное в направлении обзора, среди множества опорных изображений, расположенных в направлении времени, используя заголовок среза, когда генерируют временной список. В соответствии с этим, учитывая корреляцию направления обзора, опорное изображение, расположенное в направлении обзора, может быть вставлено в предпочтительном положении во временной список.
Список литературы
Непатентный документ
Непатентный документ 1: Gerhard Tech, Krzysztof Wegner, Ying Chen, Miska Hannuksela, "MV-HEVC Draft Text2", JCT3V-B1004, 2012, 11, 07
Непатентный документ 2: Li Zhang, Ying Chen, Jewon Kang, "AHG5: MV-Hevc software for HTM", JCT3V-B0046, 2012, 10, 07
Раскрытие изобретения
Задачи, решаемые изобретением
Однако в технологии, раскрытой в непатентном документе 2, также когда нет необходимости изменять положение вставки опорного изображения, расположенного в направлении обзора во временном списке, должен быть передан заголовок среза, и при этом возникает опасение, что может снизиться эффективность кодирования.
Настоящее раскрытие выполнено с учетом такой ситуации и позволяет улучшить эффективность кодирования при иерархическом кодировании или кодирования множества проекций.
Решения задач
В соответствии с аспектом настоящего раскрытия, предложено устройство обработки изображения, включающее в себя: модуль декодирования для генерирования изображение посредством декодирования потока битов; модуль установки опорного списка, для установки опорного списка, к которому обращаются, когда изображение, генерируемое модулем декодирования, прогнозируется посредством вставки опорного изображения, на которое можно ссылаться в направлении уровня между множеством опорных изображений, к которым можно обращаться в направлении времени; и модуль прогнозирования для прогнозирования изображения, генерируемого модулем декодирования, обращаясь к опорному списку, установленному модулем установки опорного списка.
Описанный выше модуль установки опорного списка может устанавливать опорный список посредством вставки опорного изображения, к которому можно обращаться в направлении уровня между опорным изображением, расположенным по времени перед изображением, и опорным изображением, расположенным по времени после изображения среди множества опорных изображений, к которым можно обращаться в направлении времени.
Описанный выше модуль установки опорного списка может устанавливать опорный список посредством размещения изображения в направлении L0 в порядке опорных изображений, расположенных по времени перед изображением опорного изображения, к которому можно обращаться в направлении уровня, и опорных изображений, расположенных по времени после изображения.
Описанный выше модуль установки опорного списка может устанавливать опорный список посредством размещения изображений в направлении L1 в порядке опорных изображений, расположенных по времени после изображения, опорного изображения, к которому можно обращаться в направлении уровня, и опорных изображений, расположенных по времени перед изображением.
Описанный выше модуль установки опорного списка может устанавливать опорный список посредством поочередного размещения опорного изображения, к которому можно обращаться в направлении времени, и опорного изображения, к которому можно обращаться в направлении уровня.
Описанный выше модуль установки опорного списка может устанавливать опорный список посредством поочередного размещения элемента списка опорных изображений, к которому можно обращаться в направлении времени, установленного в порядке опорных изображений, расположенных по времени перед изображением, и опорных изображений, расположенных после изображения по времени, и элемента списка опорных изображений, к которым можно обращаться в направлении уровня, который составлен из опорных изображений, к которым можно обращаться в направлении уровня, в направлении L0.
Описанный выше модуль установки опорного списка может устанавливать опорный список посредством поочередного размещения элемента списка опорных изображений, к которому можно обращаться в направлении времени, установленного в порядке опорных изображений, расположенных по времени после изображения, и опорных изображений, расположенных по времени перед изображением, и элемента списка опорных изображений, к которым можно обращаться в направлении уровня, который составлен из опорных изображений, к которым можно обращаться в направлении уровня, в направлении L1.
Описанный выше модуль установки опорного списка может устанавливать опорный список посредством вставки опорных изображений, к которым можно обращаться в направлении уровня, в направлении L1, для того, чтобы можно было обращаться к опорному изображению в направлении уровня, которое противоположно случаю использования направления L0.
Описанный выше модуль установки опорного списка может включать в себя: модуль установки временного списка, который устанавливает временной список, который представляет собой временной список, используемый для установки опорного списка, посредством вставки опорного изображения, к которому можно обращаться в направлении уровня, между множеством опорных изображений, к которым можно обращаться в направлении времени; и модуль установки списка опорного изображения, который устанавливает опорный список на основе временного списка, установленного модулем установки временного списка.
В соответствии с аспектом настоящего раскрытия предусмотрен способ обработки изображения, воплощенный в устройстве обработки изображения. Способ обработки изображения включает в себя этапы, на которых: генерируют изображения посредством декодирования потока битов; устанавливают опорный список, к которому обращаются когда прогнозируют генерируемое изображение, посредством вставки опорного изображения, к которому можно обращаться в направлении уровня между множеством опорных изображений, к которым можно обращаться в направлении времени; и прогнозируют сгенерированное изображение посредством обращения к установленному опорному списку.
В соответствии с другим аспектом настоящего раскрытия, предусмотрено устройство обработки изображения, включающее в себя: модуль установки опорного списка для установки опорного списка, к которому обращаются, когда изображение прогнозируют посредством вставки опорного изображения, к которому можно обращаться в направлении уровня между множеством опорных изображений, к которым можно обращаться в направлении времени; модуль прогнозирования для прогнозирования изображения посредством обращения к опорному списку, установленному модулем установки опорного списка; и модуль кодирования для генерирования потока битов посредством выполнения кодирования, используя изображение, прогнозированное модулем прогнозирования.
Описанный выше модуль установки опорного списка может устанавливать опорный список, посредством вставки опорного изображения, к которому можно обращаться в направлении уровня между опорным изображением, расположенным по времени перед изображением, и опорным изображением, расположенным по времени после изображения, среди множества опорных изображений, к которым можно обращаться в направлении времени.
Описанный выше модуль установки опорного списка может устанавливать опорный список посредством размещения изображения в направлении L0, в порядке опорных изображений, расположенных по времени перед изображением, опорного изображения, к которому можно обращаться в направлении уровня, и опорных изображениях, расположенных по времени после изображения.
Описанный выше модуль установки опорного списка может устанавливать опорный список посредством размещения изображения в направлении L1 в порядке опорных изображений, расположенных по времени после изображения, опорного изображения, к которому можно обращаться в направлении уровня, и опорных изображениях, расположенных по времени перед изображением.
Описанный выше модуль установки опорного списка может устанавливать опорный список посредством поочередного размещения опорного изображения, к которому можно обращаться в направлении времени, и опорного изображения, к которому можно обращаться в направлении уровня.
Описанный выше модуль установки опорного списка может устанавливать опорный список посредством поочередного размещения элемента списка опорных изображений, к которому можно обращаться в направлении времени, установленном в порядке опорных изображений, расположенных по времени перед изображением и опорными изображениями, расположенными по времени после изображения, и элемента списка опорных изображений, к которым можно обращаться в направлении уровня, который составлен из опорных изображений, к которым можно обращаться в направлении уровня, в направлении L0.
Описанный выше модуль установки опорного списка может устанавливать опорный список посредством поочередного размещения элемента списка опорных изображений, к которым можно обращаться в направлении времени, установленном в порядке опорных изображений, расположенных по времени после изображения, и опорных изображений, расположенных по времени перед изображением, и элемента списка опорных изображений, к которым можно обращаться в направлении уровня, который составлен из опорных изображений, к которым можно обращаться в направлении уровня, в направлении L1.
Описанный выше модуль установки опорного списка может устанавливать опорный список посредством вставки опорных изображений, к которым можно обращаться в направлении уровня, в направлении L1, в порядке опорного изображения, к которому можно обращаться в направлении уровня, противоположном направлению в случае, когда используется L0.
Описанный выше модуль установки опорного списка может включать в себя: модуль установки временного списка, который устанавливает временной список, который представляет собой временной список, используемый для установки опорного списка, посредством вставки опорного изображения, к которому можно обращаться в направлении уровня между множеством опорных изображений, к которым можно обращаться в направлении времени; и модуль установки списка опорного изображения, который устанавливает опорный список на основе временного списка, установленного модулем установки временного списка.
В соответствии с другим аспектом настоящего раскрытия, предусмотрен способ обработки изображения, воплощенный в устройстве обработки изображения. Способ обработки изображения включает в себя этапы, на которых: устанавливают опорный список, к которому обращаются, когда прогнозируют изображение, посредством вставки опорного изображения, к которому можно обращаться в направлении уровня между множеством опорных изображений, к которым можно обращаться в направлении времени; прогнозируют изображения посредством обращения к установленному опорному списку; и генерируют поток битов посредством выполнения кодирования, используя прогнозируемое изображение.
В соответствии с аспектом настоящего раскрытия, изображение генерируют посредством декодирования потока битов, и опорный список, к которому обращаются, когда прогнозируют генерируемое изображение, устанавливают посредством вставки опорного изображения, к которому можно обращаться в направлении уровня, между множеством опорных изображений, к которым можно обращаться в направлении времени. Затем сгенерированное изображение прогнозируют посредством обращения к установленному опорному списку.
В соответствии с другим аспектом настоящего раскрытия, опорный список, к которому обращаются, когда прогнозируют изображение, устанавливают посредством вставки опорного изображения, к которому можно обращаться в направлении уровня между множеством опорных изображений, к которым можно обращаться в направлении - времени. Затем изображение прогнозируют посредством обращения к установленному опорному списку, и поток битов генерируют посредством выполнения кодирования, используя прогнозируемое изображение.
Здесь описанное выше устройство обработки изображения может представлять собой независимое устройство или внутренний блок, который конфигурирует одно устройство кодирования изображения или устройство декодирования изображения.
Эффекты изобретения
В соответствии с аспектом настоящего раскрытия, изображение может быть декодировано. В частности, может быть улучшена эффективность кодирования.
В соответствии с другим аспектом настоящего раскрытия, изображение может быть кодировано. В частности, может быть улучшена эффективность кодирования.
Краткое описание чертежей
На фиг. 1 показана блок-схема, которая иллюстрирует пример основной конфигурации устройства кодирования изображения.
На фиг. 2 показана пояснительная схема, которая иллюстрирует пример структуры опорных изображений.
На фиг. 3 показана схема, которая иллюстрирует пример обычного способа генерирования опорного списка.
На фиг. 4 показана схема, которая иллюстрирует другой пример условного способа генерирования опорного списка.
На фиг. 5 показана схема, которая иллюстрирует пример способа генерирования опорного списка в соответствии с настоящей технологией.
На фиг. 6 показана схема, которая иллюстрирует другой пример способа генерирования опорного списка в соответствии с настоящей технологией.
На фиг. 7 показана схема, которая иллюстрирует сравнение между настоящей технологией и обычной технологией.
На фиг. 8 показана схема, которая иллюстрирует порядок компоновки между видами отображает в соответствии с настоящей технологией.
На фиг. 9 показана схема, которая иллюстрирует способ изменения порядка компоновки изображений между обзорами в соответствии с настоящей технологией.
На фиг. 10 показана блок-схема, которая иллюстрирует пример конфигурации модуля генерирования опорного списка, представленного на фиг. 1.
На фиг. 11 показана блок-схема последовательности операций, которая представляет пример потока обработки кодирования.
На фиг. 12 показана блок-схема последовательности операций, которая представляет пример потока обработки генерирования опорного списка.
На фиг. 13 показана блок-схема последовательности операций, которая представляет другой пример потока обработки генерирования опорного списка.
На фиг. 14 показана блок-схема, которая иллюстрирует пример основной конфигурации устройства декодирования изображения.
На фиг. 15 показана блок-схема, которая иллюстрирует пример конфигурации модуля генерирования опорного списка, представленного на фиг. 14.
На фиг. 16 показана блок-схема последовательности операций, которая представляет пример обработки декодирования.
На фиг. 17 показана блок-схема последовательности операций, которая представляет пример потока обработки генерирования опорного списка.
На фиг. 18 показана блок-схема последовательности операций, которая представляет другой пример обработки потока генерирования опорного списка.
На фиг. 19 показана блок-схема, которая иллюстрирует другой пример основной конфигурации устройства кодирования изображения.
На фиг. 20 показана блок-схема, которая иллюстрирует другой пример основной конфигурации устройства декодирования изображения.
На фиг. 21 показана блок-схема, которая иллюстрирует пример основной конфигурации компьютера.
На фиг. 22 показана блок-схема, которая иллюстрирует пример схематичной конфигурации телевизионного устройства.
На фиг. 23 показана блок-схема, которая иллюстрирует пример схематичной конфигурации мобильного телефона.
На фиг. 24 показана блок-схема, которая иллюстрирует пример схематичной конфигурации устройства записи/воспроизведений.
На фиг. 25 показана блок-схема, которая иллюстрирует пример схематичной конфигурации устройства формирования изображения.
На фиг. 26 показана блок-схема, которая иллюстрирует пример схематичной конфигурации видеосистемы.
На фиг. 27 показана блок-схема, которая иллюстрирует пример схематичной конфигурации видеопроцессора.
На фиг. 28 показана блок-схема, которая иллюстрирует другой пример схематичной конфигурации видеопроцессора.
Осуществление изобретения
Ниже будут описаны варианты осуществления, для выполнения настоящего раскрытия (ниже называются вариантами осуществления). Описание будет представлено в следующем порядке.
1. Первый вариант осуществления (устройство кодирования изображения)
2. Второй вариант осуществления (устройство декодирования изображения)
3. Третий вариант осуществления (устройство кодирования изображения и устройство декодирования изображения системы AVC)
4. Четвертый вариант осуществления (компьютер)
5. Пример применения
6. Пятый вариант осуществления (набор/модуль/блок/процессор)
Первый вариант осуществления
Описание иерархического кодирования
Системы кодирования изображения, такие как MPEG2 и AVC, описанные выше, теперь имеют функцию масштабируемости. Масштабируемое кодирование (иерархическое кодирование) представляет собой систему, в которой изображение конфигурируют, используя множество уровней (иерархическое упорядочивание), и кодирование выполняют для каждого уровня.
При иерархическом упорядочивании изображения одно изображение разделяют на множество изображений (уровней), обращаясь к заданному параметру. В принципе, каждый уровень конфигурируют, используя разные данные для уменьшения избыточности. Например, в случае, когда одно изображение иерархически упорядочивают на двух уровнях, включающих в себя основной уровень и уровень расширения, получают изображение, имеющее более низкое качество, чем у исходного изображения, используя только данные основного уровня, и оригинальное изображение (другими словами, изображение высокого качества) получают посредством объединения данных основного уровня и данных уровня расширения.
Благодаря иерархическому упорядочиванию изображения таким образом, изображения различного качества могут быть легко получены в соответствии с ситуацией. Например, как в случае, когда терминал имеет низкие возможности обработки, такой как мобильный телефон, передают информацию о сжатии изображений только для основного уровня, и воспроизводят движущееся изображение, имеющее низкое пространственное/временное разрешение или низкое качество изображения, и в терминал, имеющий высокие возможности обработки, такой как телевизионный приемник или персональный компьютер, передают информацию о сжатии изображений уровня расширения в дополнение к основному уровню, и воспроизводят движущееся изображение, имеющее высокое пространственное/временное разрешение или высокое качество изображения, информация сжатия изображений, в соответствии с возможностями терминала или сети, может быть передана из сервера без выполнения обработки транскодирования.
В качестве параметра, обеспечивающего такую масштабируемость, например, используется пространственное разрешение (пространственная масштабируемость). В случае такой пространственной масштабируемости, разрешение будет разным для каждого уровня. Другими словами, каждое изображение иерархически упорядочивают на двух уровнях иерархии - основного уровня, имеющего более низкое пространственное разрешение, чем у исходного изображения, и уровня расширения, который может использоваться для получения оригинального изображения (оригинальное пространственное разрешение) после составления с изображением основного уровня. Очевидно, что количество иерархий представляет собой пример, и изображение может быть иерархически упорядочено с произвольным количеством иерархий.
В качестве другого параметра, имеющего такую масштабируемость, например, можно использовать временное разрешение (временную масштабируемость). В случае такой временной масштабируемости частота кадров будет разной для каждого уровня. Другими словами, в этом случае, поскольку изображение иерархически упорядочивают, разделяя на уровни, имеющие взаимно разные частоты кадров, посредством добавления уровня с высокой частотой кадров к уровню с низкой частотой кадров, может быть получено движущееся изображение, имеющее более высокую частоту кадров, и посредством суммирования всех уровней, может быть получено исходное движущееся изображение (оригинальная частота кадров). Здесь количество иерархий представляет собой пример, и изображение может быть иерархически упорядочено с использованием произвольного количества иерархий.
Кроме того, в качестве другого параметра, обеспечивающего возможность такой масштабируемости, например, можно применять отношение сигнал-шум (SNR) (масштабируемость SNR). В случае такой масштабируемости SNR, отношение SN является разным для каждого уровня. Другими словами, каждое изображение иерархически упорядочивают, разделяя на две уровня иерархии, включающие в себя основной уровень, имеющий более низкое значение SNR, чем у исходного изображения, и уровень расширения, позволяющий получать оригинальное изображение (оригинальное SNR) при составлении с изображением основного уровня. Другими словами, в информации сжатия изображений основного уровня передают информацию, относящуюся к изображению, имеющему низкое значение PSNR, и в результате суммирования с ней информации сжатия изображений уровня расширения, можно восстановить изображение, имеющее высокое значение PSNR. Очевидно, что количество иерархий представляет собой пример, и что изображение может быть иерархически упорядочено, используя произвольное количество уровней иерархии.
Очевидно, что параметр, имеющий масштабируемость, может быть другим, чем представленный в примерах, описанных выше. Например, существует масштабируемость по битовой глубине, в которой основной уровень конфигурируют, используя 8-битное изображение, и посредством суммирования с ним уровня расширения, получают 10-битное изображение.
Кроме того, существует масштабируемость по цветности, в которой основной уровень конфигурируют, используя компонентное изображение формата 4:2:0, и компонентное изображение формата 4:2:2 получают посредством суммирования с ним уровня расширения.
Кроме того, в качестве параметра, обеспечивающего возможность масштабируемости, используется множество видов. В этом случае, каждое изображение иерархически упорядочивают с разделением на уровни с множеством проекций (точек обзора).
Уровень, описанный в данном варианте осуществления, включает в себя пространственное, временное SNR, битовую глубину, цвет, точку обзора и т.п. при кодировании масштабируемости, описанном выше.
Термин "уровень", используемый в данном описании, включает в себя каждый уровень масштабируемого (иерархического) кодирования, описанного выше, и каждый вид во время рассмотрения множества проекций множества точек обзора.
Далее, в то время как вид будет описан в качестве примера, посредством замены вида другим уровнем, настоящая технология аналогично может применяться к другим уровням, описанным выше.
Пример конфигурации устройства кодирования изображения
На фиг. 1 иллюстрируется конфигурации устройства кодирования изображения, в соответствии с вариантом осуществления, как устройство обработки изображения, в котором применяется настоящее раскрытие.
Устройство 100 кодирования изображения, показанное на фиг. 1, кодирует данные изображения, используя обработку прогнозирования. Здесь, в качестве системы кодирования, например, используется система HEVC и т.п. Другими словами, устройство 100 кодирования изображения выполняет обработку в единицах CU (модули кодирования).
В примере, показанном на фиг. 1, устройство 100 кодирования изображения включает в себя: A/D (аналогово/цифровой) преобразователь 101; буфер 102 изменения компоновки экрана; модуль 103 расчета; модуль 104 ортогонального преобразования; модуль 105 квантования; модуль 106 кодирования без потерь; и буфер 107 накопления. Кроме того, устройство 100 кодирования изображения включает в себя: модуль 108 обратного квантования; модуль 109 обратного ортогонального преобразования; модуль 110 расчета; фильтр 111 удаления блочности; буфер 112 декодированного изображения; модуль 113 выбора; модуль 114 прогнозирования внутри кадра; модуль 115 прогнозирования/компенсации параллакса движения; модуль 116 выбора; и модуль 117 управления скоростью.
Кроме того, устройство 100 кодирования изображения включает в себя: модуль 121 обработки синтаксиса; модуль 122 генерирования опорного списка; фильтр 123 адаптивного смещения; и адаптивный фильтр 124 контура.
A/D преобразователь 101 выполняет A/D преобразование входных данных изображения и выводит полученные в результате данные изображения в буфер 102 изменения компоновки экрана для сохранения в нем.
Буфер 102 изменения компоновки экрана изменяет компоновку сохраненных изображений, которые расположены в порядке отображения кадров, в порядке кадров для кодирования в соответствии с группой изображений (GOP). Буфер 102 изменения компоновки экрана подает изображение, в котором порядок кадров был изменен, в модуль 121 обработки синтаксиса.
Модуль 121 обработки синтаксиса последовательно проверяет данные изображения, считанного из буфера 102 изменения компоновки экрана, и вставляет информацию заголовка, которая поступает из предыдущего этапа, который не представлен на чертеже, в данные изображения. Информация заголовка, например, включает в себя набор параметров видеоданных (VPS), набор параметра последовательности (SPS), набор параметра изображения (PPS) и т.п. Кроме того, модуль 121 обработки синтаксиса добавляет заголовок среза (SH) в начало среза.
Модуль 121 обработки синтаксиса подает изображение, в которое была вставлена информация заголовка и т.п., в модуль 103 расчета, модуль 114 прогнозирования внутри кадра, и в модуль 115 прогнозирования/компенсации параллакса движения. Кроме того, модуль 121 обработки синтаксиса подает каждую информацию заголовка и информацию, такую как заголовок среза, в модуль 122 генерирования опорного списка.
Модуль 103 расчета вычитает прогнозируемое изображение, подаваемое из модуля 114 прогнозирования внутри кадра или модуля 115 прогнозирования/компенсации параллакса движения, из изображения, подаваемого из модуля 121 обработки синтаксиса, через модуль 116 выбора, и выводит его дифференциальную информацию в модуль 104 ортогонального преобразования.
Например, в случае изображения, для которого выполняется прогнозирование внутри кадра, модуль 103 расчета вычитает прогнозируемое изображение, подаваемое из модуля 114 прогнозирования внутри кадра, из изображения, подаваемого из модуля 121 обработки синтаксиса. С другой стороны, например, в случае изображения, для которого выполняется кодирование между кадрами, модуль 103 расчета вычитает прогнозируемое изображение, подаваемое из модуля 115 прогнозирования/компенсации параллакса движения, из изображения, подаваемого из модуля 121 обработки синтаксиса.
Модуль 104 ортогонального преобразования выполняет ортогональное преобразование, такое как дискретное косинусное преобразование или преобразование Карунена-Лоэва для дифференциальной информации, подаваемой из модуля 103 расчета, и подает его преобразованный коэффициент в модуль 105 квантования.
Модуль 105 квантования выполняет квантование преобразованного коэффициента, который выводит модуль 104 ортогонального преобразования. Модуль 105 квантования подает квантованный коэффициент преобразования в модуль 106 кодирования без потерь.
Модуль 106 кодирования без потерь выполняет кодирование без потерь, такое как кодирование переменной длины или арифметическое кодирование для квантованного коэффициента преобразования.
Модуль 106 кодирования без потерь получает информацию, представляющую режим прогнозирования внутри кадра и т.п., из модуля 114 прогнозирования внутри кадра, и получает информацию, представляющую режим прогнозирования между кадрами, информацию вектора движения и т.п. из модуля 115 прогнозирования/компенсации параллакса движения.
Модуль 106 кодирования без потерь кодирует квантованный коэффициент преобразования и устанавливает информацию режима прогнозирования внутри кадра, информацию режима прогнозирования между кадрами, информацию вектора движения, и параметр квантования, как часть информации заголовка кодированных данных (мультиплексирование). Модуль 106 кодирования без потерь подает кодированные данные, полученные при обработке кодирования, в буфер 107 накопления, для накопления в нем.
Например, модуль 106 кодирования без потерь выполняет обработку кодирования без потерь, такую как обработка кодирования переменной длины или обработка арифметического кодирования. В качестве кодирования переменной длины, например, используется контекстно-адаптивное кодирование переменной длины (CAVLC) и т.п. В качестве арифметического кодирования, например, используется контекстно-адаптивное двоичное арифметическое кодирование (САВАС) и т.п.
В буфере 107 накопления временно содержатся кодированные данные, подаваемые из модуля 106 кодирования без потерь, и выводят из него сохраненные кодированные данные в заданные моменты времени, например, в устройство декодирования изображения, расположенное в следующем каскаде, в устройство записи, в линию передачи и т.п., которая не представлена на фигуре, как кодированное изображение, которое было кодировано.
Кроме того, коэффициент преобразования, квантованный модулем 105 квантования, поступает также в модуль 108 обратного квантования. Модуль 108 обратного квантования выполняет обратное квантование квантованного коэффициента преобразования, используя способ, соответствующий обработке квантования, выполняемой модулем 105 квантования. Модуль 108 обратного квантования подает полученный коэффициент преобразования в модуль 109 обратного ортогонального преобразования.
Модуль 109 обратного ортогонального преобразования выполняет обратное ортогональное преобразование для переданного коэффициента преобразования, используя способ, соответствующий обработке ортогонального преобразования, выполняемой модулем 104 ортогонального преобразования. Выход (дифференциальная информация, которая восстанавливается), для которого было выполнено обратное ортогональное преобразование, подают в модуль 110 расчета.
Модуль 110 расчета добавляет прогнозируемое изображение, подаваемое из модуля 114 прогнозирования внутри кадра или модуля 115 прогнозирования/компенсации параллакса движения, через модуль 116 выбора, с результатом обратного ортогонального преобразование, который поступает из модуля 109 обратного ортогонального преобразования, другими словами, с восстановленной дифференциальной информацией, получая, таким образом, локально декодированное изображение (декодированное изображение).
Например, в случае, когда дифференциальная информация соответствует изображению, для которого выполняется обработка кодирования внутри кадров, модуль 110 расчета суммирует прогнозируемое изображение, подаваемое из модуля 114 прогнозирования внутри кадра, с дифференциальной информацией. Кроме того, например, в случае, когда дифференциальная информация соответствует изображению, для которого была выполнена обработка кодирования, модуль 110 расчета суммирует прогнозируемое изображение, подаваемое из модуля 115 прогнозирования/компенсации параллакса движения, с дифференциальной информацией.
Результат суммирования подают в фильтр 111 удаления блочности и в буфер 112 декодированного изображения.
Фильтр 111 удаления блочности соответствующим образом выполняет обработку фильтра удаления блочности, устраняя, таким образом, искажение блочности декодированного изображения. Фильтр 111 удаления блочности подает результат обработки фильтра в фильтр 123 адаптивного смещения.
Фильтр 123 адаптивного смещения выполняет обработку фильтра адаптивного смещения (CAO: адаптивное смещение выборки), которая, в основном, устраняет затухающее колебание, для изображения после обработки фильтра удаления блочности, выполненной фильтром 111 удаления блочности.
Более подробно, фильтр 123 адаптивного смещения определяет тип обработки фильтра адаптивного смещения для каждого наибольшего модуля кодирования (LCU), который представляет собой максимальный модуль кодирования и получает значение смещения, используемое при обработке фильтра адаптивного смещения. Фильтр 123 адаптивного смещения выполняет обработку фильтра адаптивного смещения определенного типа для изображения после адаптивной обработки фильтра удаления блочности, используя полученное смещение. Затем фильтр 123 адаптивного смещения подает изображение после обработки фильтра адаптивного смещения в фильтр 124 адаптивного контура.
Кроме того, фильтр 123 адаптивного смещения включает в себя буфер, в котором сохраняют смещение. Фильтр 123 адаптивного смещения определяет, было или нет значение смещения, используемое при обработке адаптивного фильтра удаления блочности, уже сохранено в буфере для каждого LCU.
В случае, когда определяют, что смещение, используемое при обработке фильтра адаптивного удаления блочности, уже было сохранено в буфере, фильтр 123 адаптивного смещения устанавливает флаг сохранения, который представляет, сохранено ли смещение в буфере, как значение (в данном случае, "1"), представляющее, что смещение сохранено в буфере.
Затем фильтр 123 адаптивного смещения подает флаг сохранения, установленный в "1", индекс, который представляет положение сохранения смещения в буфере, и тип информации, который представляет собой тип выполняемой обработки фильтра адаптивного смещения, в модуль 106 кодирования без потерь для каждого LCU.
С другой стороны, в случае, когда определяют, что смещение, используемое при обработке фильтра адаптивного удаления блочности еще не было сохранено в буфере, фильтр 123 адаптивного смещения последовательно сохраняет смещение в буфере. Кроме того, фильтр 123 адаптивного смещения устанавливает флаг сохранения на значение (здесь "0"), представляющее, что смещение не сохранено в буфере. Затем фильтр 123 адаптивного смещения применяет флаг сохранения, установленный в "0", смещение и информацию типа в модуле 106 кодирования без потерь для каждого LCU.
Фильтр 124 адаптивного контура выполняет обработку фильтра адаптивного контура (ALF) для изображения после обработки фильтра адаптивного смещения, которая поступает из фильтра 123 адаптивного смещения, например, для каждого LCU. В качестве обработки фильтра адаптивного контура, например, используется обработка, в которой применяется двумерный фильтр Винера. Очевидно, что можно использовать другой фильтр, кроме фильтра Винера.
Более конкретно, фильтр 124 адаптивного контура, для каждого LCU, рассчитывает коэффициент фильтра, используемого при обработке фильтра адаптивного контура, таким образом, что разность между исходным изображением, которое представляет собой изображение, выводимое из модуля 121 обработки синтаксиса, и изображением после фильтра обработки адаптивного контура, является минимальной. Затем фильтр 124 адаптивного контура выполняет обработку фильтра адаптивного контура, используя рассчитанный коэффициент фильтра для изображения после обработки фильтра адаптивного смещения для каждого LCU.
Фильтр 124 адаптивного контура подает изображение после обработки фильтра адаптивного контура в буфер 112 декодированного изображения. Кроме того, фильтр 124 адаптивного контура подает коэффициент фильтра в модуль 106 кодирования без потерь.
Здесь обработку фильтра адаптивного контура выполняют для каждого LCU, при этом модуль обработки для обработки фильтра адаптивного контура не ограничен LCU. Однако, при сопоставлении модуля обработки фильтра 123 адаптивного смещения и фильтра 124 адаптивного контура, обработка может быть эффективно выполнена.
Буфер 112 декодированного изображения выводит накопленное опорное изображение в заданные моменты времени в модуль 114 прогнозирования внутри кадра или в модуль 115 прогнозирования/компенсации параллакса движения через модуль 113 выбора.
Например, в случае изображения, для которого выполняется кодирование внутри кадра, буфер 112 декодированного изображения подает опорное изображение в модуль 114 прогнозирования внутри кадра через модуль 113 выбора. С другой стороны, например, в случае, когда выполняется кодирование между кадрами, буфер 112 декодированного изображения подает опорное изображение в модуль 115 прогнозирования/компенсации параллакса движения через модуль 113 выбора.
В случае, когда опорное изображение, подаваемое из буфера 112 декодированного изображения, представляет собой изображение, для которого выполняется кодирование внутри кадра, модуль 113 выбора подает опорное изображение в модуль 114 прогнозирования внутри кадра. С другой стороны, в случае, когда опорное изображение, подаваемое из буфера 112 декодированного изображения, представляет собой изображение, для которого выполняется кодирование между кадрами, модуль 113 выбора подает опорное изображение в модуль 115 прогнозирования/компенсации параллакса движения.
Модуль 114 прогнозирования внутри кадра выполняет прогнозирование внутри кадра (прогнозирование в пределах экрана) для генерирования прогнозируемого изображения, используя значения пикселя внутри в пределах для входного изображения, подаваемого из модуля 121 обработки синтаксиса. Модуль 114 прогнозирования внутри кадра выполняет прогнозирование внутри кадра во множестве режимов (режимов прогнозирования внутри кадра).
Модуль 114 прогнозирования внутри кадра генерирует прогнозируемые изображения во всех режимах прогнозирования внутри кадра, выполняет оценку каждого прогнозируемого изображения и выбирает оптимальный режим. Когда выбирают оптимальный режим прогнозирования внутри кадра, модуль 114 прогнозирования внутри кадра подает прогнозируемое изображение, сгенерированное в оптическом режиме, в модуль 103 расчета или в модуль 110 расчета через модуль 116 выбора.
Кроме того, как описано выше, модуль 114 прогнозирования внутри кадра соответствующим образом подает информацию, такую как информация режима прогнозирования внутри кадра, представляющую используемый режим прогнозирования внутри кадра, в модуль 106 кодирования без потерь.
Модуль 115 прогнозирования/компенсации параллакса движения выполняет прогнозирование параллакса движения для изображения, для которого было выполнено кодирование между кадрами, используя входное изображение, переданное из модуля 121 обработки синтаксиса, и опорное изображение, подаваемое из буфера 112 декодированного изображения, через модуль 113 выбора. В это время модуль 115 прогнозирования/компенсации параллакса движения использует опорное изображение индекса опорного изображения, который представлен в опорном списке, генерируемом модулем 122 генерирования опорного списка. Модуль 115 прогнозирования/компенсации параллакса движения выполняет обработку компенсации параллакса движения, в соответствии с детектируемым вектором параллакса движения, генерируя, таким образом, прогнозируемое изображение (информацию изображения, прогнозируемую между кадрами).
Модуль 115 прогнозирования/компенсации параллакса движения выполняет обработку прогнозирования между кадрами для каждого из всех режимов прогнозирования между кадрами, которые представляют собой кандидаты, генерируя, таким образом, прогнозируемые изображения. Модуль 115 прогнозирования/компенсации параллакса движения подает сгенерированное прогнозируемое изображение в модуль 103 расчета или в модуль 110 расчета через модуль 116 выбора.
Кроме того, модуль 115 прогнозирования/компенсации параллакса движения подает информацию режима прогнозирования между кадрами, представляющую используемый режим прогнозирования между кадрами, и информацию вектора движения, представляющую рассчитанный вектор движения, в модуль 106 кодирования без потерь.
Модуль 116 выбора подает выход модуля 114 прогнозирования внутри кадра в модуль 103 расчета или в модуль 110 расчета, в случае изображения, для которого выполняется обработки кодирования внутри кадра, и подает выход модуля 115 прогнозирования/компенсации параллакса движения в модуль 103 расчета или в модуль 110 расчета, в случае изображения, для которого выполняется кодирование между кадрами.
Модуль 117 управления скоростью управляет скоростью операции квантования модуля 105 квантования на основе сжатого изображения, сохраненного в буфере 107 накопления таким образом, что не возникает переполнение или потеря значимости.
Модуль 122 генерирования опорного списка генерирует опорный список, к которому обращаются, когда модуль 115 прогнозирования/компенсации параллакса движения прогнозирует текущее изображение, используя информацию (информацию РОС и информацию обзора) опорного изображения, накопленного в буфере 112 декодированного изображения. В это время модуль 122 генерирования опорного списка генерирует опорный список, вставляя опорные изображения, к которым можно обращаться в направлении вида, между множеством опорных изображений, к которым можно обращаться в направлении времени.
Другими словами, модуль 122 генерирования опорного списка генерирует временной список, который представляет собой временной список, используемый, когда опорный список генерируется посредством вставки опорных изображений, к которым можно обращаться в направлении обзора, между множеством опорных изображений, к которым можно обращаться в направлении времени. Затем модуль 122 генерирования опорного списка генерирует опорный список на основе сгенерированного временного списка.
Здесь опорные изображения, к которым можно обращаться в направлении времени, представляют собой опорные изображения, к которым можно обращаться в разные моменты времени, и опорные изображения, к которым можно обращаться в направлении обзора (уровня), представляют собой опорные изображения, к которым можно обращаться в разных обзорах (уровнях).
Структура опорного изображения
Далее, со ссылкой на фиг. 2, будет описана структура опорного изображения в соответствии с системой HEVC.
В примере, показанном на фиг. 2, в порядке РОС с левой стороны, представлены долгосрочные (LT) опорные изображения, краткосрочные (предшествующие) опорные изображения (краткосрочные, предшествующие текущему: STbC), текущее изображение, в котором представлено "С", и краткосрочные (последующие) опорные изображения (краткосрочные последующие, после текущего: STaC). Кроме того, иллюстрируется порядок в направлении обзора (параллакса) с нижней стороны, текущее изображение, в котором представлено "С", и опорные изображения между обзорами (IV). Кроме того, число, представленное в каждом опорном изображении, представляет индекс размещения каждого опорного изображения в буфере 112 декодированного изображения.
В системе HEVC, когда выполняется прогнозирование между кадрами, четыре вида изображений, включающих в себя долгосрочные опорные изображения, краткосрочные (предшествующие) опорные изображения, краткосрочные (последующие) опорные изображения и опорные изображения между обзорами, представленные на фиг. 2, могут быть установлены, как кандидаты для опорного изображения.
Краткосрочные (предшествующие) опорные изображения представляют собой краткосрочные опорные изображения, расположенные перед текущим изображением (РОС меньше), в котором представлено "С", по времени в пределах того же обзора, и краткосрочные (последующие) опорные изображения представляют собой краткосрочные опорные изображения, расположенные после текущего изображения (РОС больше), по времени в пределах того же обзора. Кроме того, долгосрочные опорные изображения представляют собой опорные изображения, обозначенные, как опорные изображения долгосрочные в пределах того же обзора. Опорные изображения между обзорами представляют собой опорные изображения разных обзоров в это же время.
Обычный способ 1 генерирования опорного списка
Далее, со ссылкой на фиг. 3, будет описан способ генерирования принятого по умолчанию опорного списка системы HEVC, в качестве обычного способа 1. В примере, представленном на фиг. 3, в качестве примера, в котором обращаются к четырем опорным изображениям, показаны список (размещение) (RefPicSetStCurrBefore[i]) краткосрочных (предшествующих) опорных изображений, список (RefPicSetStCurrAfter[i]) краткосрочных (последующих) опорных изображений, список (RefPicSetLtCurr[i]) долгосрочных опорных изображений и список (RefPicSetIvCurr[i]) (i: индекс = от 0 до 3) опорных изображений между обзорами в буфере 112 декодированного изображения.
В качестве краткосрочных опорных изображений, в синтаксисе заголовка среза или RPS (набор опорного изображения), установлен флаг used_by_curr, для каждого изображения, к которому можно обращаться. RPS представляет собой синтаксис, используемый для четкого обозначения состояния буфера декодируемого изображения для каждого изображения, включенного в SPS. Для долгосрочных опорных изображений, в синтаксисе заголовка среза или SPS, установлен флаг used_by_curr для каждого изображения, к которому можно обращаться. Только каждое изображение, для которого флаг used_by_curr равен "1", добавляют к временному списку, который представляет собой временной список, используемый, когда генерируется опорный список. Кроме того, поскольку флаг used_by_curr не установлен для опорных изображений между обзорами, все опорные изображения между обзорами, размещенные в списке опорных изображений между обзорами, добавляют к временному списку.
В примере, представленном на фиг. 3, показаны временной список (RefPicListTemp0[rIdx]) для L0 (направление L0) и временной список (RefPicListTemp1[rIdx]) для L1 (направление L1), которые генерируют из таких списков опорных изображений.
Временной список (RefPicListTemp0[rIdx]) для L0 генерируют посредством добавления изображений, флаг которых used_by_curr установлен в "1" в порядке: краткосрочное (предшествующее) опорное изображение, краткосрочное (последующее) опорное изображение, долгосрочное опорное изображение и опорное изображение между обзорами. В соответствии с этим, временной список (RefPicListTemp0[rIdx]) для L0 генерируют в порядке: краткосрочные (предшествующие) опорные изображения с индексами "0" и "1", краткосрочные (последующие) опорные изображения с индексами "0" и "1", долгосрочное опорное изображение с индексом "0" и опорные изображения между обзорами с индексами от "0" до "3".
Временной список (RefPicListTemp1[rIdx]) для L1 генерируют посредством суммирования изображения, флаг used_by_curr которых установлен в "1" в порядке: краткосрочное (последующее) опорное изображение, краткосрочное (предшествующее) опорное изображение, долгосрочное опорное изображение и опорное изображение между обзорами. В соответствии с этим, временной список (RefPicListTemp1[rIdx]) для L1 генерируют в порядке: краткосрочные (последующие) опорные изображения с индексами "0" и "1", краткосрочные (предшествующие) опорные изображения с индексами "0" и "1", долгосрочное опорное изображение с индексом "0" и опорные изображения между обзорами с индексами от "0" до "3".
Кроме того, в примере, представленном на фиг. 3, показаны опорный список (RefPicList0[rIdx]) для L0, который генерируют на основе временного списка L0, и опорный список (RefPicList1[rIdx]) для L1, который генерируют на основе временного списка L1.
Здесь, в качестве синтаксиса заголовка среза или SPS, во временном списке, в качестве количества опорных изображений, установлены num_ref_idx_l0_active_minus1 и num_ref_idx_I1_active_minus1. От начала временного списка L0/L1 количество опорных изображений, таким образом, ограничено, и только опорные изображения добавляют к опорному списку и могут использоваться, как опорные изображения.
Например, в случае, когда num_ref_idx_10_active_minus1 равно "4", изображения от начала (первое с левой стороны) до пятого во временном списке L0 добавляют к опорному списку (RefPicList0[rIdx]) для L0, в результате чего, генерируют опорный список L0. В случае примера, представленного на фиг. 3, опорный список L0 генерируют в порядке краткосрочных (предшествующих) опорных изображений с индексами "0" и "1", краткосрочных (последующих) опорных изображений с индексами "0" и "1" и долгосрочного опорного изображения с индексом "0".
Например, в случае, когда num_ref_idx_I1_active_minus1 равно "3", изображения от начала от четвертого временного списка L1 добавляют к опорному списку (RefPicList1[rIdx]) для L1, в результате чего, генерируют опорный список L1. В случае примера, показанного на фиг. 3, опорный список для L1 генерируют в порядке: краткосрочные (последующие) опорные изображения с индексами "0" и "1" и краткосрочные (предшествующие) опорные изображения с индексами "0" и "1".
Как описано выше, в соответствии с системой HEVC, временной список генерируют таким образом, что, после размещения опорных изображений в направлении времени, размещают опорные изображения, расположенные в направлении обзора. Таким образом, трудно разместить опорные изображения, размещенные в направлении обзора, в опорном списке.
Кроме того, в соответствии с системой HEVC, определена команда изменения для опорного списка, и посредством передачи команды изменения, изображения, компоновка которых свободно изменяется во временном списке, могут быть вставлены в опорный список. В соответствии с этим, можно обращаться к опорному изображению, расположенному в направлении вида. Однако, поскольку команду изменения передают в синтаксисе, генерируется дополнительный бит.
Другими словами, в случае способа, описанного выше, в то время, когда отсутствует проблема, когда временная корреляция является значительно более высокой, чем корреляция обзоров в общей последовательности, корреляция между обзорами не является заметно низкой, и, таким образом, необходимо использовать команду опорного списка для выполнения прогнозирования параллакса.
Таким образом, в непатентном документе 2, было предложено передавать информацию, обозначающую положение, в котором должно быть вставлено опорное изображение, расположенное в направлении обзора, среди множества опорных изображений, расположенных в направлении времени, используя заголовок среза, когда генерируют временной список.
Обычный способ 2 генерирования опорного списка
Далее будет описан способ генерирования принятого по умолчанию опорного списка, описанного в непатентном документе 2, как обычный способ 2 со ссылкой на фиг. 4. На фиг. 4 описан только пример L0.
В соответствии со способом, описанным в непатентном документе 2, до тех пор, пока генерируется временной список, обработка аналогична выполняемой системой HEVC, и повторное ее описание не будет здесь представлено.
Другими словами, временной список (RefPicListTemp0[rIdx]) для L0, аналогично системе HEVC, генерируют посредством суммирования изображений, в которых флаг used_by_curr устанавливают в "1" в порядке краткосрочное (предшествующее) опорное изображение, краткосрочное (последующее) опорное изображение, долгосрочное опорное изображение и опорное изображение между обзорами. В соответствии с этим, временной список (RefPicListTemp0[rIdx]) для L0 генерируют в порядке краткосрочные (предшествующие) опорные изображения для индексов "0" и "1", краткосрочные (последующие) опорные изображения для индексов "0" и "1", долгосрочное опорное изображение с индексом "0" и опорные изображения между обзорами с индексами от "0" до "3".
Здесь, в случае способа, описанного в непатентном документе 2, положение (inter_view_ref_start_position), в котором вставляют опорное изображение между обзорами во временной список, устанавливают в расширении заголовка среза и передают.
Например, в соответствии с положением inter_view_ref_start_position, как обозначено стрелкой Р1, обозначено второе положение от начала (первое) во временном списке. В таком случае временной список (RefPicListTemp0[rIdx]) для L0 генерируют в порядке: краткосрочное (предшествующее) опорное изображение с индексом "0", опорные изображения между обзорами с индексами от "0" до "3", краткосрочное (предшествующее) опорное изображение с индексом "1", краткосрочные (последующие) опорные изображения с индексами "0" и "1" и долгосрочное опорное изображение с индексом "0".
В таком случае опорный список для L0 генерируют в соответствии с num_ref_idx_l0_active_minus1=4 в порядке краткосрочное (предшествующее) опорное изображение для индекса "0" и опорные изображения между обзорами с индексами от "0" до 3.
Кроме того, например, в соответствии с положением inter_view_ref_start_position, как обозначено стрелкой Р2, обозначено третье положение от начала (первое) временного списка. В таком случае временной список (RefPicListTemp0[rIdx]) для L0 генерируют в порядке: краткосрочные (предшествующие) опорные изображения с индексами "0" и "1", опорные изображения между обзорами с индексами от "0" до "3", краткосрочные (последующие) опорные изображения с индексами "0" и "1", и долгосрочное опорное изображение с индексом "0".
В таком случае опорный список L0 генерируют в соответствии с num_ref_idx_l0_active_minus1=4 в порядке краткосрочные (предшествующие) опорные изображения с индексами "0" и "1" и опорные изображения между обзорами с индексами от "0" до "2".
Кроме того, например, в соответствии с положением inter_view_ref_start_position, как обозначено стрелкой Р3, обозначено четвертое положение от начала (первое) временного списка. В таком случае временной список (RefPicListTemp0[rIdx]) для L0 генерируют в порядке: краткосрочные (предшествующие) опорные изображения с индексами "0" и "1", краткосрочное (последующее) опорное изображение с индексом "0", опорные изображения между обзорами с индексами от "0" до "3", краткосрочное (последующее) опорное изображение с индексом "1", и долгосрочное опорное изображение с индексами "0".
В таком случае опорный список для L0 генерируют в соответствии с num_ref_idx_l0_active_minus1=4 в порядке краткосрочные (предшествующие) опорные изображения с индексами "0" и "1", краткосрочное (последующее) опорное изображение с индексом "0", и опорные изображения между обзорами с индексами от "0" до "1".
Как представлено выше, в соответствии со способом, раскрытым в непатентном документе 2, в расширении заголовка среза положения, в которых опорные изображения между обзорами вставляют во временной список, передают в синтаксисе. В соответствии с этим, учитывая корреляцию обзора, опорные изображения между обзорами могут быть вставлены в предпочтительном положении во временной список.
Однако, в случае способа, раскрытого в непатентном документе 2, также, когда опорные изображения между обзорами не требуется перемещать, синтаксис должен быть передан.
Кроме того, в таком случае, множество опорных изображений между обзорами сразу же вставляют в положение, установленное в синтаксисе. В соответствии с этим, во временном списке, когда требуется смешивать опорные изображения между обзорами и краткосрочные опорные изображения или долгосрочное опорное изображение, должна быть передана команда на изменение опорного списка.
Таким образом, в соответствии с настоящей технологией, генерируют временный список посредством вставки опорных изображения, к которым можно обращаться в направлении вида среди множества опорных изображений, к которым можно обращаться в направлении времени.
Способ генерирования опорного списка в соответствии с настоящей технологией 1
Далее, со ссылкой на фиг. 5, будет описан способ генерирования опорного списка, в соответствии с настоящей технологией 1. В примере, представленном на фиг. 5, в качестве примера, в котором обращаются к четырем опорным изображениям, список (порядок размещения) (RefPicSetStCurrBefore[i]) краткосрочных (предшествующих) опорных изображений, список (RefPicSetStCurrAfter[i]) краткосрочных (последующих) опорных изображений, список (RefPicSetLtCurr[i]) долгосрочных опорных изображений и список (RefPicSetIvCurr[i]) (i: индекс = от 0 до 3) опорных изображений между обзорами представлены в буфере 112 декодированного изображения.
В соответствии с настоящей технологией 1, временной список (RefPicListTemp0[rIdx]) для L0 генерируют в порядке: краткосрочные (предшествующие) опорные изображения с индексами "0" и "1", опорные изображения между обзорами с индексами от "0" до "3", краткосрочные (последующие) опорные изображения с индексами "0" и "1", и долгосрочное опорное изображение с индексами "0".
В таком случае опорный список для L0 генерируют в соответствии с num_ref_idx_l0_active_minus1=4 в порядке краткосрочные (предшествующие) опорные изображения с индексами "0" и "1" и опорные изображения между обзорами с индексами от "0" до "2".
В соответствии с настоящей технологией 1, временной список (RefPicListTemp1[rIdx]) L1 генерируют в порядке: краткосрочные (предшествующие) опорные изображения с индексами "0" и "1", опорные изображения между обзорами с индексами от "0" до "3", краткосрочные (последующие) опорные изображения с индексами "0" и "1" и долгосрочное опорное изображение с индексом "0".
В таком случае опорный список для L1 генерируют в соответствии с num_ref_idx_l0_active_minus1=3 в порядке краткосрочные (последующие) опорные изображения с индексами "0" и "1" и опорные изображения между обзорами с индексами "0" и "1".
Как представлено выше, в соответствии со способом настоящей технологии 1, при генерировании временного списка, изображения между обзорами вставляют между краткосрочными (предшествующими) опорными изображениями и краткосрочными (последующими) опорными изображениями.
Поскольку эта обработка является принятой по умолчанию, дополнительный синтаксис не требуется передавать. Кроме того, поскольку краткосрочные (последующие) опорные изображения входят в список с наибольшим уровнем приоритета для L1, посредством вставки опорных изображений между обзорами перед краткосрочными (последующими) опорными изображениями для L0, дублирующее использование краткосрочных (последующих) опорных изображений для L0/L1 может быть исключено.
Однако, в случае L0, когда количество краткосрочных (предшествующих) опорных изображений велико, изображения между обзорами не входят в опорный список. Учитывая это, количество краткосрочных (предшествующих) опорных изображений может быть ограничено, используя RPS. Кроме того, в случае L1, когда порядок краткосрочных опорных изображений, представляющих собой цель, является обратным, обработка может быть описана аналогично.
Кроме того, после краткосрочных (предшествующих/последующих) опорных изображений, сразу же вставляют множество опорных изображений между обзорами. Таким образом, во временном списке, когда опорные изображения между обзорами и краткосрочные опорные изображения или долгосрочные опорные изображения должны быть смешаны, должна быть передана команда на изменение опорного списка.
В случае, когда временная корреляция гораздо выше, чем корреляция между обзорами, возникает опасение, что эффективность кодирования может снизиться.
Способ генерирования опорного списка в соответствии с настоящей технологией 2
Кроме того, способ генерирования опорного списка, в соответствии с настоящей технологией 2, будет описан со ссылкой на фиг. 6. В примере, представленном на фиг. 6, в качестве примера, в котором обращаются к четырем опорным изображениям, иллюстрируется список (порядок размещения) (RefPicSetStCurrBefore[i]) краткосрочных (предшествующих) опорных изображений, список (RefPicSetStCurrAfter[i]) краткосрочных (последующих) опорных изображений, список (RefPicSetLtCurr[i]) долгосрочных опорных изображений, и список (RefPicSetIvCurr[i]) (i: индекс = от 0 до 3) опорных изображений между обзорами в буфере 112 декодированного изображения.
В соответствии с настоящей технологией 2, временной список (RefPicListTemp0[rIdx]) для L0 генерируют в порядке: краткосрочное (предшествующее) опорное изображение с индексом "0", опорное изображение между обзорами с индексом "0", краткосрочное (предшествующее) опорное изображение с индексом "1", опорное изображение между обзорами с индексом "1", краткосрочное (последующее) опорное изображение с индексом "0", опорное изображение между обзорами с индексом "2", краткосрочное (последующее) опорное изображение с индексом "1", опорное изображение между обзорами с индексом 3 и долгосрочное опорное изображение с индексом "0".
В таком случае опорный список для L0 генерируют в соответствии с num_ref_idx_l0_active_minus1=4 в порядке: краткосрочное (предшествующее) опорное изображение с индексом "0", опорное изображение между обзорами с индексом "0", краткосрочное (предшествующее) опорное изображение с индексом "1", опорное изображение между обзорами с индексом "1" и краткосрочное (последующее) опорное изображение с индексом "0".
Кроме того, в соответствии с настоящей технологией 2, временной список (RefPicListTemp1[rIdx]) для L1 генерируют в порядке: краткосрочное (предшествующее) опорное изображение с индексом "0", опорное изображение между обзорами с индексом "0", краткосрочное (последующее) опорное изображение с индексом "1", опорное изображение между обзорами с индексом "1", краткосрочное (предшествующее) опорное изображение с индексом "0", опорное изображение между обзорами с индексом "2", краткосрочное (предшествующее) опорное изображение с индексом "1", опорное изображение между обзорами с индексом 3 и долгосрочное опорное изображение с индексом "0".
В таком случае опорный список для L1 генерируют в соответствии с num_ref_idx_I1_active_minus1=3 в порядке: краткосрочное (предшествующее) опорное изображение с индексом "0", опорное изображение между обзорами с индексом "0", краткосрочное (последующее) опорное изображение с индексом "1" и опорное изображение между обзорами с индексом "1".
Как представлено выше, в соответствии со способом настоящей технологии 2, при генерировании временного списка, опорное изображение, расположенное в направлении времени и опорное изображение, расположенное в направлении обзора, размещают поочередно.
Когда степень временной корреляции и степень корреляции между обзорами поочередно выравниваются, формируется компоновка, имеющая высокую опорную эффективность. Кроме того, в случае L0, даже когда количество краткосрочных (предшествующих) опорных изображений велико, легко добавлять опорные изображения между обзорами к опорному списку, принятому по умолчанию. Кроме того, поскольку эта обработка принята по умолчанию, дополнительный синтаксис не требуется передавать.
Однако, в случае, когда временная корреляция гораздо выше, чем корреляция между обзорами, существует опасение, что снижается эффективность кодирования.
Сравнение обычной технологии и настоящей технологии
В примере, представленном на фиг. 7, показана таблица сравнения обычного способа, описанного выше, со способом в соответствии с настоящей технологией.
Существуют два преимущества настоящей технологии 1 по сравнению с обычной технологией 1. Первое преимущество состоит в том, что эффективность кодирования может быть улучшена для последовательности, имеющей высокую корреляцию между обзорами (общий случай). Корреляция между обзорами представляет корреляцию между изображениями между обзорами. Второе преимущество состоит в том, что, когда количество краткосрочных (предшествующих) опорных изображений (STbC) и краткосрочных (последующих) опорных изображений (STaC) мало, количество уникальных изображений может быть увеличено во всем списке опорных изображений L0/L1.
Существуют два преимущества настоящей технологии 1 по сравнению с обычной технологией 2. Первое преимущество состоит в том, что дополнительный синтаксис не требуется передавать. Второе преимущество состоит в том, что объем обработки является малым, благодаря отсутствию изменения компоновки временного списка.
Существуют два преимущества настоящей технологии 2 по сравнению с обычной технологией 1. Первое преимущество состоит в том, что, когда временную корреляцию и корреляцию между обзорами совмещают поочередно, эффективность кодирования может быть улучшена. Здесь временная корреляция представляет собой корреляцию между обзорами для разных точек времени. Корреляция между обзорами представляет собой корреляцию между изображениями, между обзорами. Второе преимущество состоит в том, что опорные изображения между обзорами могут быть размещены во втором положении от начала опорного списка также в наихудшем случае.
Существуют два преимущества настоящей технологии 2 по сравнению с обычной технологией 2. Первое преимущество состоит в том, что дополнительный синтаксис не требуется передавать. Второе преимущество состоит в том, что, когда временная корреляция и корреляция между обзорами выравниваются поочередно, эффективность кодирования может быть улучшена.
Кроме того, будут выполнены сравнения между настоящей технологией 1 и настоящей технологией 2.
Настоящая технология 2 имеет два преимущества по сравнению с настоящей технологией 1. Первое преимущество состоит в том, что, когда временную корреляцию и корреляцию между обзорами поочередно выравнивают, эффективность кодирования может быть улучшена. Второе преимущество состоит в том, что опорные изображения между обзорами могут быть размещены во втором положении от начала опорного списка также в наихудшем случае.
В представленном выше описании, аналогично обычному случаю, в то время как был описан пример, в котором последовательность добавления изображений между обзорами к опорному списку (временному списку), является одинаковой для L0 и L1, порядок может изменяться между L0 и L1.
Выравнивание между изображениями между проекциями
Далее, со ссылкой на фиг. 8. будет описан порядок выравнивания между изображениями между проекциями в соответствии с настоящей технологией.
Обычно соответствующие опорные изображения между проекциями добавляют к опорному списку (временному списку) в порядке j=0, 1, 2, … на основе ref_layer_id [i] [j] в VPS (набор видео параметров). Эта обработка является совершенно одинаковой для L0 и L1, и во временных списках L0/L1 порядок, в котором опорные изображения между обзорами выравнивают, является одинаковым.
Таким образом, в соответствии с этой технологией, опорные изображения между обзорами добавляют к временному списку L0 в порядке ref_layer_id [i] [j] (здесь, j=0, 1, 2, …). Кроме того, опорные изображения между обзорами добавляют к временному списку L1 в порядке ref_layer_id [i] [j] (здесь, j=…, 2, 1, 0).
Более конкретно, как представлено с левой стороны на фиг. 8, например, в случае, когда изображение обзора view_id=2 требуется кодировать среди четырех обзоров view_id=0, 1, 2 и 3, предполагается, что опорное соотношение описано в порядке view_id=1, 0 и 3 в VPS.
В этом случае, в соответствии с настоящей технологией, как представлено с правой стороны на фиг. 8, во временном списке L0, опорные изображения между обзорами выравнивают в порядке view_id=1, 0 и 3, описанном в VPS. Кроме того, во временном списке для L1, опорные изображения между обзорами выравнивают в порядке view_id=3, 0 и 1, то есть в обратном порядке, чем view_id, описанном в VPS.
В результате такой конфигурации, во временных списках L0/L1, в случае, когда обращаются только вплоть до (ref_id=n+1)-ого изображения, другими словами, в случае, когда только (ref_id=n+1)-ое изображение добавляют к опорному списку, к разным опорным изображениям между обзорами можно обращаться в L0 и L1.
Более конкретно, в примере, представленном на фиг. 8, (n+1)-ое опорное изображение между обзорами представляет собой опорное изображение v1 между обзорами для view_id=1 в L0, и (n+1)-ое опорное изображение между обзорами представляет собой опорное изображение v3 между обзорами view_id=3 в L1, в результате чего (n+1)-ое опорное изображение между обзорами можно менять между L0 и L1.
Таким образом, поскольку к разным опорным изображениям между обзорами можно обращаться в L0 и L1, существует высокая вероятность того, что будут обеспечены более высокие рабочие характеристики при прогнозировании параллакса, чем в случае, когда обращаются к тому же изображению, и ожидается, что эффективность кодирования может быть улучшена.
В примере, представленном на фиг. 8, аналогично обычному примеру, представленному на фиг. 3, в то время как иллюстрируется пример, в котором, после размещения опорных изображений в направлении времени, добавляют опорные изображения, расположенные в направлении обзора, порядок опорных изображений между обзорами для случая настоящей технологии, описанной выше со ссылкой на фиг. 5 и 6, также может использоваться.
В случае, когда применяется настоящая технология, в соответствии с технологией, раскрытой в непатентном документе 1, как обозначено сплошной линией на фиг. 9, не происходят изменения для L0, как обозначено пунктирной линией, представленной на фиг. 9, изображения между обзорами изменяются с добавлением в обратном порядке L0.
Модуль 122 генерирования опорного списка, который представлен на фиг. 1, выполняющий описанную выше обработку, выполнен, как представлено на следующей фиг. 10.
Пример конфигурации модуля генерирования опорного списка
На фиг. 10 показана блок-схема, которая иллюстрирует пример конфигурации модуля генерирования опорного списка, который выполняет описанную выше обработку.
В примере, представленном на фиг. 10, модуль 122 генерирования опорного списка выполнен таким образом, что он включает в себя: модуль 131 установки опорного изображения; модуль 132 генерирования временного списка; и модуль 133 генерирования списка опорного изображения.
Модуль 131 установки опорного изображения устанавливает краткосрочные (предшествующие) опорные изображения посредством ссылки на информацию времени (другими словами, информацию РОС) опорного изображения, подаваемого из буфера 112 декодированного изображения, и флаг used_by_curr краткосрочного опорного изображения, который установлен в заголовке среза или в RPS, передаваемом из модуля 121 обработки синтаксиса, и генерирует список (RefPicSetStCurrBefore[i]) краткосрочного (предшествующего) опорного изображения. Кроме того, модуль 131 установки опорного изображения устанавливает краткосрочные (последующие) опорные изображения посредством ссылки на информацию времени опорного изображения, подаваемого из буфера 112 декодированного изображения, и флаг used_by_curr краткосрочного опорного изображения, который установлен в заголовке среза или RPS, передаваемом из модуля 121 обработки синтаксиса, и генерирует список (RefPicSetStCurrAfter[i]) краткосрочного (последующего) опорного изображения.
Модуль 131 установки опорного изображения устанавливает долгосрочные опорные изображения посредством обращения к информации времени опорного изображения, подаваемого из буфера 112 декодированного изображения, и к флагу used_by_curr долгосрочного опорного изображения, который устанавливают в заголовке среза или в SPS, передаваемом из буфера 112 декодированного изображения, и генерирует список (RefPicSetLtCurr[i]) долгосрочного опорного изображения. Кроме того, модуль 131 установки опорного изображения устанавливает опорные изображения между обзорами (RefPicSetIvCurr[i]), обращаясь к информации обзора опорного изображения, подаваемой из буфера 112 декодированного изображения, и генерирует его список.
Модуль 132 генерирования временного списка комбинирует списки, установленные модулем 131 установки опорного изображения, в заданном порядке, в соответствии с настоящей технологией, описанной выше, генерируя, таким образом, временные списки (RefPicListTemp0[rIdx] и RefPicListTemp1[rIdx]) для L0 и L1.
Модуль 133 генерирования списка опорного изображения обращается к числам num_ref_idx_l0_active_minus1 и num_ref_idx_I1_active_minus1, установленным в заголовке среза, или SPS, передаваемым из модуля 121 обработки синтаксиса. Модуль 133 генерирования списка выделяет опорные изображения, соответствующие числу num_ref_idx_l0_active_minus1 и числу num_ref_idx_I1_active_minus1 из временных списков L0/L1, генерируемых модулем 132 генерирования временного списка, и добавляет выделенные изображения, генерируя, таким образом, опорные списки L0/L1.
К опорным спискам L0/L1, генерируемым модулем 133 генерирования списка опорных изображений, обращается модуль 115 прогнозирования/компенсации параллакса движения.
Обработка кодирования потока
Далее будет описан поток каждой обработки, выполняемой устройством 100 кодирования изображения, представленным выше. Вначале, со ссылкой на блок-схему последовательности операций представленную на фиг. 11, будет описан пример потока обработки кодирования.
На этапе S101, A/D преобразователь 101 выполняет A/D преобразование входного изображения. На этапе S102, буфер 102 изменения компоновки экрана сохраняет изображение, которое было преобразовано из аналоговой в цифровую форму, и изменяет компоновку изображения из порядка отображения изображения на порядок кодирования.
На этапе S103, модуль 121 обработки синтаксиса последовательно проверяет данные изображения, считанные из буфера 102 изменения компоновки экрана, и вставляет информацию заголовка в данные каждого изображения. Модуль 121 обработки синтаксиса подает изображение, в которое вставлена информация заголовка и т.п., в модуль 103 расчета, в модуль 114 прогнозирования внутри кадра, и в модуль 115 прогнозирования/компенсации параллакса движения. Кроме того, модуль 121 обработки синтаксиса подает информацию, такую как VPS, SPS (включая в себя RPS), и заголовок среза, в модуль 122 генерирования опорного списка.
На этапе S104, модуль 103 расчета рассчитывает разность между изображением, поданным из модуля 121 обработки синтаксиса, и прогнозируемым изображением. Прогнозируемое изображение подают в модуль 103 расчета через модуль 116 выбора из модуля 115 прогнозирования/компенсации параллакса движения в случае прогнозирования между кадрами или из модуля 114 прогнозирования внутри кадра, в случае прогнозирования внутри кадра.
Количество данных, таких как дифференциальные данные, меньше, чем количество данных исходного изображения. В соответствии с этим, количество данных может быть сжато в большей степени, чем в случае, когда изображение непосредственно кодируют.
На этапе S105, модуль 104 ортогонального преобразования выполняет ортогональное преобразование дифференциальной информации, генерируемой при обработке на этапе S104. Более конкретно, выполняют ортогональное преобразование, такое как дискретное косинусное преобразование или преобразование Карунена-Лоэва, и выводят коэффициент преобразования.
На этапе S106, модуль 105 квантования квантует коэффициент ортогонального преобразования, полученный при обработке на этапе S105.
Дифференциальную информацию, квантованную при обработке на этапе S106, локально декодируют, как описано ниже. На этапе S107, модуль 108 обратного квантования выполняет обратное квантование квантованного коэффициента ортогонального преобразования (также называется коэффициентом квантования), который генерируют с помощью обработки, выполняемой на этапе S106, в соответствии с характеристиками, соответствующими характеристикам модуля 105 квантования.
На этапе S108, модуль 109 обратного ортогонального преобразования выполняет обратное ортогональное преобразование коэффициента ортогонального преобразования, который получают при обработке на этапе S107, в соответствии с характеристиками, соответствующими характеристикам модуля 104 ортогонального преобразования.
На этапе S109, модуль 110 расчета добавляет прогнозируемое изображение к дифференциальной информации, которая была локально декодирована, генерируя, таким образом, локально декодированное изображение (изображение, соответствующее входным данным модуля 103 расчета).
На этапе S110, фильтр 111 удаления блочности выполняет фильтрацию изображения, подаваемого из модуля 110 расчета, устраняя, таким образом, искажение блоков. Затем фильтр 111 удаления блочности подает изображение, полученное в результате его обработки, в фильтр 123 адаптивного смещения.
На этапе S111, фильтр 123 адаптивного смещения выполняет обработку фильтра адаптивного смещения для изображения, подаваемого из фильтра 111 удаления блочности, для каждого LCU. Фильтр 123 адаптивного смещения подает изображение, полученное, как результат его обработки, в фильтр 124 адаптивного контура. Кроме того, фильтр 123 адаптивного смещения подает флаг сохранения, индекс или смещение, и информацию типа в модуль 106 кодирования без потерь, как информацию фильтра смещения для каждого LCU.
На этапе S112, фильтр 124 адаптивного контура выполняет обработку фильтра адаптивного контура для изображения, переданного из фильтра 123 адаптивного смещения для каждого LCU. Фильтр 124 адаптивного контура подает изображение, полученное в результате его обработки, в буфер 112 декодированного изображения. Кроме того, фильтр 124 адаптивного контура подает коэффициент фильтра, используемый при обработке фильтра адаптивного контура, в модуль 106 кодирования без потерь.
На этапе S113, буфер 112 декодированного изображения сохраняет изображение, для которого была выполнена обработка фильтра. Кроме того, изображение, для которого не была выполнена обработка фильтра, также подают в буфер 112 декодированного изображения из модуля 110 расчета и сохраняют в нем. Изображение, сохраненное в буфере 112 декодированного изображения, подают в модуль 115 прогнозирования/компенсации параллакса движения или в модуль 114 прогнозирования внутри кадра через модуль 113 выбора, как опорное изображение.
На этапе S114, модуль 114 прогнозирования внутри кадра выполняет обработку прогнозирования внутри кадра для режима прогнозирования внутри кадра.
На этапе S115, модуль 122 генерирования опорного списка генерирует опорный список, к которому обращаются, когда модуль 115 прогнозирования/компенсации параллакса движения прогнозирует текущее изображение. Обработка генерирования такого опорного списка будет описана подробно ниже со ссылкой на фиг. 12.
В результате обработки на этапе S115 временной список, который представляет собой временный список, используемый, когда генерируют опорный список, генерируют посредством вставки опорных изображений, к которым можно обращаться в направлении обзора среди множества опорных изображений, к которым можно обращаться в направлении времени. Затем генерируют опорный список на основе сгенерированного временного списка.
На этапе S116, модуль 115 прогнозирования/компенсации параллакса движения выполняет обработку прогнозирования параллакса движения между кадрами, в котором прогнозирование параллакса движения для режима прогнозирования между кадрами или компенсацию параллакса движения выполняют, используя опорное изображение или индекс опорного изображения, представленные опорным списком, сгенерированным при обработке на этапе S115.
На этапе S117, модуль 116 выбора определяет оптимальный режим прогнозирования на основе значений функции стоимости, выводимых из модуля 114 прогнозирования внутри кадра и модуля 115 прогнозирования/компенсации параллакса движения. Другими словами, модуль 116 выбора выбирает либо прогнозируемое изображение, сгенерированное модулем 114 прогнозирования внутри кадра, или прогнозируемое изображение, сгенерированное модулем 115 прогнозирования/компенсации параллакса движения.
Кроме того, информация выбора, представляющая, какое прогнозируемое изображение требуется выбрать, поступает в модуль 114 прогнозирования внутри кадра или в модуль 115 прогнозирования/компенсации параллакса движения, из которых было выбрано прогнозируемое изображение. В случае, когда выбирают прогнозируемое изображение оптимального режима прогнозирования внутри кадра, модуль 114 прогнозирования внутри кадра подает информацию (другими словами, информацию режима прогнозирования внутри кадра), представляющую оптимальный режим прогнозирования внутри кадра, в модуль 106 кодирования без потерь.
В случае, когда выбирают прогнозируемое изображение оптимального режима прогнозирования между кадрами, модуль 115 прогнозирования/компенсации параллакса движения выводит информацию, представляющую оптимальный режим прогнозирования между кадрами, и информацию в соответствии с оптимальным режимом прогнозирования между кадрами, в соответствии с необходимостью, в модуль 106 кодирования без потерь. В качестве информации, в соответствии с оптимальным режимом прогнозирования между кадрами, может быть предоставлена информация вектора движения, информация вектора параллакса, информация флага, информация опорного кадра и т.п.
На этапе S118, модуль 106 кодирования без потерь кодирует коэффициент преобразования, квантованный при обработке на этапе S106. Другими словами, для дифференциального изображения (в случае прогнозирования между кадрами, второго дифференциального изображения) выполняется кодирование без потерь, такое как кодирование переменной длины или арифметическое кодирование.
Кроме того, модуль 106 кодирования без потерь суммирует информацию, относящуюся к режиму прогнозирования для изображения прогнозирования, которое выбирают при обработке на этапе S117, с кодированными данными, полученными в результате кодирования дифференциального изображения. Другими словами, модуль 106 кодирования без потерь суммирует информацию режима прогнозирования внутри кадра, подаваемую из модуля 114 прогнозирования внутри кадра, информацию в соответствии с оптимальным режимом прогнозирования между кадрами, подаваемую из модуля 115 прогнозирования/компенсации параллакса движения, и т.п., с кодированными данным.
На этапе S119, буфер 107 накопления накапливает кодированные данные, выводимые из модуля 106 кодирования без потерь. Кодированные данные, накопленные в буфере 107 накопления, соответствующим образом считывают и передают на сторону декодирования через линию передачи.
На этапе S120, модуль 117 управления скоростью управляет скоростью операции квантования, выполняемой модулем 105 квантования, на основе сжатого изображения, накопленного в буфере 107 накопления, используя обработку на этапе S119 таким образом, что не происходит переполнение или потеря значимости.
Когда заканчивается обработка на этапе S120, обработка кодирования заканчивается.
Поток обработки генерирования опорного списка
Далее, со ссылкой на блок-схему последовательности операций, представленную на фиг. 12, будет описан пример потока обработки генерирования опорного списка, выполняемого на этапе S115, представленного на фиг. 11. При выполнении такой обработки генерируют опорные списки, в соответствии с настоящей технологией 1, описанной выше со ссылкой на фиг. 5. Такая обработка выполняется только в случае, когда декодированное изображение (другими словами, текущее изображение для прогнозирования) представляет собой изображение Ρ или изображение В.
На этапе S103, представленном на фиг. 11, описанной выше, информацию, такую как VPS, SPS (включая в себя RPS) и заголовок среза декодированного изображения подают из модуля 121 обработки синтаксиса в модуль 122 генерирования опорного списка. Флаг used_by_curr краткосрочного опорного изображения устанавливают в заголовке среза или RPS, переданном из модуля 121 обработки синтаксиса. Флаг used_by_curr долгосрочного опорного изображения устанавливают в заголовке среза или в SPS.
На этапе S131, модуль 131 установки опорного изображения модуля 122 генерирования опорного списка устанавливает краткосрочные (предшествующие) опорные изображения (STbC) при ссылке на информацию времени (другими словами, информацию РОС) опорного изображения, передаваемого из буфера 112 декодированного изображения, и флаг used_by_curr краткосрочного опорного изображения заголовка среза или RPS, и генерирует список RefPicSetStCurrBefore[i].
На этапе S132, модуль 131 установки опорного изображения устанавливает краткосрочные (последующие) опорные изображения (STaC) посредством ссылки на информацию времени опорного изображения, передаваемого из буфера 112 декодированного изображения, и флаг used_by_curr краткосрочного опорного изображения заголовка среза или RPS, и генерирует список RefPicSetStCurrAfter[i].
На этапе S133, модуль 131 установки опорного изображения устанавливает долгосрочные опорные изображения (LT) при ссылке на информацию времени опорного изображения, подаваемого из буфера 112 декодированного изображения, и флаг used_by_curr долгосрочного опорного изображения заголовка среза или SPS, и генерирует список RefPicSetLtCurr[i].
На этапе S134, модуль 131 установки опорного изображения устанавливает опорные изображения (IV) между обзорами при ссылке на информацию вида опорного изображения, подаваемого из буфера 112 декодированного изображения, и генерирует список RefPicSetIvCurr[i].
На этапе S135, модуль 132 генерирования временного списка комбинирует четыре типа списков, установленных модулем 131 установки опорного изображения, в порядке STbC, IV, STaC и LT, генерируя, таким образом, временной список (RefPicListTemp0[rIdx]) для L0.
Другими словами, только опорные изображения, для которых флаг used_by_curr равен "1" в списках четырех типов, описанных выше, комбинируют в порядке STbC, IV, STaC и LT, в результате чего, генерируется временной список для L0. Кроме того, в это время все опорные изображения (IV) между обзорами суммируют.
На этапе S136, модуль 132 генерирования временного списка комбинирует четыре типа списков, установленных модулем 131 установки опорного изображения в порядке STaC, IV, STbC и LT, генерируя, таким образом, временной список (RefPicListTemp1[rIdx]) для L1.
Другими словами, комбинируют только опорные изображения, для которых флаг used_by_curr равен "1", в порядке STaC, IV, STbC и LT, в результате чего, генерируется временной список для L1. Кроме того, затем, в то время как все опорные изображения (IV) между обзорами суммируют, порядок, как описано выше со ссылкой на фиг. 8, может быть установлен, как обратный порядок, представленный для направления L0.
Числа num_ref_idx_l0_active_minus1 и num_ref_idx_I1_active_minus1 установлены в заголовке среза или SPS, передаваемом из модуля 121 обработки синтаксиса.
На этапе S137, модуль 133 генерирования списка опорного изображения выделяет от первого до (num_ref_idx_l0_active_minus1+1)-ого элементы для временного списка (RefPicListTemp0[rIdx]) для L0 и генерирует опорный список (RefPicList0[rIdx]) для L0.
На этапе S138, модуль 133 генерирования списка опорного изображения выделяет от первого до (num_ref_idx_I1_active_minus1+1)-ого элементы временного списка (RefPicListTemp1[rIdx]) для L1 и генерирует опорный список (RefPicList1[rIdx]) для L1.
Как описано выше, изображения между обзорами вставляют между краткосрочными (предшествующими) опорными изображениями и краткосрочными (последующими) опорными изображениями, генерируя, таким образом, опорный список, описанный выше со ссылкой на фиг. 5.
Другой поток обработки генерирования опорного списка
Далее, со ссылкой на блок-схему последовательности операций, представленную на фиг. 13, будет описан пример потока обработки генерирования опорного списка, выполняемой на этапе S115, представленном на фиг. 11. При выполнении этой обработки генерируют опорные списки в соответствии с настоящей технологией 2, описанной выше со ссылкой на фиг. 6. Такая обработка выполняется только в случае, когда декодируемое изображение (другими словами, текущее изображение для прогнозирования) представляет собой изображение Ρ или изображение В.
На этапе S103, представленном на фиг. 11, описанной выше, информация, такая как VPS, SPS (включая в себя RPS) и заголовок среза декодируемого изображения, поступает из модуля 121 обработки синтаксиса в модуль 122 генерирования опорного списка. Флаг used_by_curr краткосрочного опорного изображения установлен в заголовке среза или в RPS, переданном из модуля 121 обработки синтаксиса. Флаг used_by_curr долгосрочного опорного изображения установлен в заголовке среза или в SPS.
На этапе S151, модуль 131 установки опорного изображения модуля 122 генерирования опорного списка устанавливает краткосрочные (предшествующие) опорные изображения (STbC) посредством ссылки на информацию времени (другими словами, информацию РОС) для опорного изображения, подаваемого из буфера 112 декодированного изображения, и флаг used_by_curr для краткосрочного опорного изображения заголовка среза или RPS, и генерирует список RefPicSetStCurrBefore[i].
На этапе S152, модуль 131 установки опорного изображения устанавливает краткосрочные (последующие) опорные изображения (STaC) посредством ссылки на информацию времени опорного изображения, подаваемого из буфера 112 декодированного изображения, и флаг used_by_curr краткосрочного опорного изображения заголовка среза или RPS, и генерирует список RefPicSetStCurrAfter[i].
На этапе S153, модуль 131 установки опорного изображения устанавливает долгосрочные опорные изображения (LT) со ссылкой на информацию времени опорного изображения, подаваемого из буфера 112 декодированного изображения, и флаг used_by_curr долгосрочного опорного изображения заголовка среза или SPS, и генерирует список RefPicSetLtCurr[i].
На этапе S154, модуль 131 установки опорного изображения устанавливает опорные изображения (IV) между обзорами при обращении к информации обзора опорного изображения, подаваемого из буфера 112 декодированного изображения, и генерирует список RefPicSetIvCurr[i].
На этапе S155, модуль 132 генерирования временного списка генерирует два списка, включающие в себя список 1, полученный в результате последовательного комбинирования трех списков STbC, STaC и LT, установленных модулем 131 установки опорного изображения, и список 2, сконфигурированный IV. Другими словами, только опорные изображения, в которых флаг used_by_curr равен "1", комбинируют в порядке STbC, STaC и LT, таким образом, генерируя список 1. Кроме того, список 2 генерируют посредством суммирования всех IV списка RefPicSetIvCurr[i] со списком.
На этапе S156, модуль 132 генерирования временного списка выделяет один элемент с начала каждого из списков 1 и 2, сгенерированных на этапе S155, и поочередно выравнивает выделенные элементы, генерируя, таким образом, временной список (RefPicListTemp0[rIdx]) для L0.
На этапе S157, модуль 132 генерирования временного списка генерирует два списка, включающие в себя список 11, полученный посредством последовательного комбинирования трех списков STaC, STbC и LT, установленных модулем 131 установки опорного изображения, и списка 12, сконфигурированного IV. Другими словами, только опорные изображения, для которых флаг used_by_curr равен "1", комбинируют в порядке STaC, STbC и LT, в результате чего, генерируют список 11. Кроме того, в то время как генерируют список 12, посредством суммирования всех IV списка RefPicSetIvCurr[i], в это время, как описано выше со ссылкой на фиг. 8, опорные изображения между обзорами могут быть добавлены в порядке, который представляет собой обратный порядок для направления L0.
На этапе S158, модуль 132 генерирования временного списка выделяет один элемент с начала каждого из списков 11 и 12, сгенерированных на этапе S155, и поочередно выравнивает выделенные элементы, генерируя, таким образом, временной список (RefPicListTemp1[rIdx]) для L1.
Числа num_ref_idx_l0_active_minus1 и num_ref_idx_I1_active_minus1 устанавливают в заголовке среза или в SPS, передаваемом из модуля 121 обработки синтаксиса.
На этапе S159, модуль 133 генерирования списка опорного изображения выделяет от первого до (num_ref_idx_l0_active_minus1+1)-ого элементы временного списка (RefPicListTemp0[rIdx]) для L0 и генерирует опорный список (RefPicList0[rIdx]) для L0.
На этапе S160, модуль 133 генерирования списка опорного изображения выделяет от первого до (num_ref_idx_I1_active_minus1+1)-ого элементов временного списка (RefPicListTemp1[rIdx]) для L1 и генерирует опорный список (RefPicList1[rIdx]) для L1.
Как описано выше, при генерировании временных списков, опорные изображения, расположенные в направлении времени и опорные изображениях, расположенные в направлении обзора, размещают поочередно, в результате чего, генерируют опорные списки, описанные выше со ссылкой на фиг. 6.
Кроме того, в то время как пример из двух типов опорных списков был описан в описании, представленном выше, например, может быть принята такая конфигурация, что сторона кодирования передает флаг выбора опорного списка из одного бита, представляющего выбранный опорный список, на сторону декодирования, и опорный список в соответствии с флагом выбора опорного списка генерируют на стороне декодирования. Такой флаг выбора опорного списка, например, может быть выполнен с возможностью передачи для каждого среза.
Например, как описано выше со ссылкой на фиг. 7, более соответствующий список отличается, в зависимости от степени временной корреляции или степени корреляции между обзорами последовательности. Таким образом, при передаче флага выбора опорного списка, например, эффективность кодирования может быть улучшена в большей степени, чем в случае, когда команду на изменение передают, используя изображение, или в случае, когда синтаксис передают каждый раз, как раскрыто в непатентном документе 2.
2. Второй вариант осуществления
Устройство декодирования изображения
На фиг. 14 иллюстрируется конфигурация устройства декодирования изображения, в соответствии с вариантом осуществления, как устройства обработки изображения, в котором применяется настоящее раскрытие. Устройство 200 декодирования изображения, представленное на фиг. 14, представляет собой устройство декодирования, которое соответствует устройству 100 кодирования изображения, представленному на фиг. 1.
Предполагается, что кодированные данные, кодированные устройством 100 кодирования изображения, будут переданы в устройство 200 декодирования изображения, в соответствии с устройством 100 кодирования изображения через заданную линию передачи и будут декодированы, используя систему HEVC и т.п.
Как представлено на фиг. 14, устройство 200 декодирования изображения включает в себя: буфер 201 накопления; модуль 202 декодирования без потерь; модуль 203 обратного квантования; модуль 204 обратного ортогонального преобразования; модуль 205 расчета; фильтр 206 удаления блочности; буфер 207 изменения компоновки экрана; и D/A преобразователь 208. Кроме того, устройство 200 декодирования изображения включает в себя: буфер 209 декодированного изображения; модуль 210 выбора; модуль 211 прогнозирования внутри кадра; модуль 212 прогнозирования/компенсации параллакса движения; и модуль 213 выбора.
Кроме того, устройство 200 декодирования изображения включает в себя: модуль 221 обработки синтаксиса; модуль 222 генерирования опорного списка; фильтр 223 адаптивного смещения и фильтр 224 адаптивного контура.
Буфер 201 накопления накапливает кодированные данные, которые передают. Эти кодированные данные кодируют с помощью устройства 100 кодирования изображения. Модуль 221 обработки синтаксиса получает VPS, SPS, заголовок среза и т.п. из кодированных данных, считанных из буфера 201 накопления, в заданные моменты времени, и подает каждую информацию заголовка, которая была получена, в модуль 202 декодирования без потерь вместе с кодированными данными. Кроме того, модуль 221 обработки синтаксиса подает информацию заголовка и т.п., которая была получена, в модуль 222 генерирования опорного списка.
Модуль 202 декодирования без потерь декодирует кодированные данные, подаваемые из модуля 221 обработки синтаксиса, используя систему, соответствующую системе кодирования модуля 106 кодирования без потерь, представленного на фиг. 1. Модуль 203 обратного квантования выполняет обратное квантование данных коэффициента (коэффициента квантования), полученных при обработке декодирования, выполняемой модулем 202 декодирования без потерь, используя систему, соответствующую системе квантования модуля 105 квантования, представленного на фиг. 1. Другими словами, модуль 203 обратного квантования выполняет обратное квантование для коэффициента квантования посредством использования способа, аналогичного используемому модулем 108 обратного квантования, показанным на фиг. 1, используя параметр квантования, подаваемый из устройства 100 кодирования изображения.
Модуль 203 обратного квантования подает данные коэффициента, другими словами, коэффициента ортогонального преобразования, для которых была выполнена обработка обратного квантования, в модуль 204 обратного ортогонального преобразования. Модуль 204 обратного ортогонального преобразования, используя систему, соответствующую системе ортогонального преобразования модуля 104 ортогонального преобразования, представленного на фиг. 1, выполняет обратное ортогональное преобразование для коэффициента ортогонального преобразования, получая, таким образом, декодированные остаточные данные, соответствующие остаточным данным перед выполнением обработки ортогонального преобразования устройством 100 кодирования изображения.
Декодированные остаточные данные, которые получают в результате обратного ортогонального преобразования, подают в модуль 205 расчета. Кроме того, прогнозируемое изображение подают в модуль 205 расчета через модуль 213 выбора из модуля 211 прогнозирования внутри кадра или модуля 212 прогнозирования/компенсации параллакса движения.
Модуль 205 расчета суммирует декодированные остаточные данные и прогнозируемое изображение, получая, таким образом, декодированные данные изображения, соответствующие данным изображения перед вычитанием прогнозируемого изображения, которое выполняется модулем 103 расчета, устройства 100 кодирования изображения. Модуль 205 расчета подает данные декодированного изображения в фильтр 206 удаления блочности.
Фильтр 206 удаления блочности соответствующим образом выполняет обработку фильтра удаления блочности, устраняя, таким образом, искажение блочности декодированного изображения. Фильтр 206 удаления блочности подает изображение, полученное в результате этой обработки, в фильтр 223 адаптивного смещения.
Фильтр 223 адаптивного смещения включает в себя буфер, который последовательно сохраняет смещение, подаваемое из модуля 221 обработки синтаксиса. Кроме того, фильтр 223 адаптивного смещения выполняет обработку фильтра адаптивного смещения для изображения после обработки фильтра адаптивного удаления блочности, выполняемой фильтром 206 удаления блочности, на основе информации фильтра смещения, подаваемой из модуля 221 обработки синтаксиса для каждого LCU.
Более конкретно, в случае, когда флаг сохранения, включенный в информацию фильтра смещения, равен "0", фильтр 223 адаптивного смещения выполняет обработку фильтра адаптивного смещения такого типа, которая представлена информацией типа для изображения, после обработки фильтра удаления блочности, выполняемой в модулях LCU, используя смещение, включенное в информацию фильтра смещения.
С другой стороны, в случае, когда флаг накопителя, включенный в информацию фильтра смещения, равен "1", фильтр 223 адаптивного смещения считывает смещение, сохраненное в положении, представленном индексом, включенным в информацию фильтра смещения для изображения после обработки фильтра удаления блочности, выполненной в единицах LCU. Затем фильтр 223 адаптивного смещения выполняет обработку фильтра адаптивного смещения такого типа, которая представлена информацией типа, используя считанное смещение. Фильтр 223 адаптивного смещения подает данное изображение после обработки фильтра адаптивного смещения в фильтр 224 адаптивного контура.
Фильтр 224 адаптивного контура выполняет обработку фильтра адаптивного контура для изображения, подаваемого из фильтра 223 адаптивного смещения для каждого LCU, используя коэффициент фильтра, передаваемый из модуля 221 обработки синтаксиса. Фильтр 224 адаптивного контура подает изображение, полученное в результате его обработки, в буфер 207 изменения компоновки экрана.
Буфер 207 изменения компоновки экрана выполняет обработку изменения компоновки экрана. Другими словами, порядок кадров, компоновка которых была изменена на порядок кодирования в буфере 102 изменения компоновки, представленном на фиг. 1, изменяют на исходный порядок отображения. D/A преобразователь 208 выполняет D/A преобразование изображения, подаваемого из буфера 207 изменения компоновки экрана, и выводит преобразованное изображение на дисплей, который не представлен на чертеже, для отображения на нем.
Кроме того, выход фильтра 224 адаптивного контура подают в буфер 209 декодированного изображения.
Буфер 209 декодированного изображения, модуль 210 выбора, модуль 211 прогнозирования внутри кадра, модуль 212 прогнозирования/компенсации параллакса движения и модуль 213 выбора, соответственно, соответствуют буферу 112 декодированного изображения, модулю 113 выбора, модулю 114 прогнозирования внутри кадра, модулю 115 прогнозирования/компенсации параллакса движения и модулю 116 выбора устройства 100 кодирования изображения.
Модуль 210 выбора считывает изображение, для которого выполняется обработка между кадрами, и опорное изображение из буфера 209 декодированного изображения, подает считываемое изображение в модуль 212 прогнозирования/компенсации параллакса движения. Кроме того, модуль 210 выбора считывает изображение, используемое для прогнозирования внутри кадра, из буфера 209 декодированного изображения и подает считанное изображение в модуль 211 прогнозирования внутри кадра.
Информация, представляющая режим прогнозирования внутри кадра, полученная из информации заголовка и т.п., соответствующим образом поступает в модуль 211 прогнозирования внутри кадра из модуля 202 декодирования без потерь. Модуль 211 прогнозирования внутри кадра, основываясь на такой информации, генерирует прогнозируемое изображение на основе опорного изображения, полученного из буфера 209 декодированного изображения, и подает генерируемое прогнозируемое изображение в модуль 213 выбора.
Информация (информация режима прогнозирования, информация вектора движения, информация вектора параллакса, различные параметры и т.п.), полученная из информации заголовка, поступает в модуль 212 прогнозирования/компенсации параллакса движения из модуля 202 декодирования без потерь. Кроме того, индекс опорного изображения, назначенный модулем 222 генерирования опорного списка, поступает в модуль 212 прогнозирования/компенсации параллакса движения.
Модуль 212 прогнозирования/компенсации параллакса движения генерирует прогнозируемое изображение из опорного изображения, полученного из буфера 209 декодированного изображения, на основе такой информации, подаваемой из модуля 202 декодирования без потерь, и индекс опорного изображения, представленный в опорном списке, сгенерированном модулем 222 генерирования опорного списка. Модуль 212 прогнозирования/компенсации параллакса движения подает сгенерированное прогнозируемое изображение в модуль 213 выбора.
Модуль 213 выбора выбирает прогнозируемое изображение, сгенерированное модулем 212 прогнозирования/компенсации параллакса движения или модулем 211 прогнозирования внутри кадра и подает выбранное прогнозируемое изображение в модуль 205 расчета.
Модуль 222 генерирования опорного списка, в основном, выполнен так, что он аналогичен модулю 122 генерирования опорного списка устройства 100 кодирования изображения. Модуль 222 генерирования опорного списка генерирует опорный список, к которому обращаются, когда модуль 212 прогнозирования/компенсации параллакса движения прогнозирует текущее изображение, используя информацию (информацию РОС или информацию обзора) опорного изображения, которое накапливается в буфере 209 декодированного изображения. В это время модуль 122 генерирования опорного списка генерирует опорный список посредством вставки опорных изображений, к которым можно обращаться в направлении обзора среди множества опорных изображений, к которым можно обращаться в направлении времени.
Другими словами, модуль 222 генерирования опорного списка генерирует временной список, который представляет собой временной список, используемый, когда опорный список генерируют посредством вставки опорных изображений, к которым можно обращаться в направлении обзора среди множества опорных изображений, к которым можно обращаться в направлении времени. Затем модуль 222 генерирования опорного списка генерирует опорный список на основе сгенерированного временного списка.
Пример конфигурации модуля генерирования опорного списка
На фиг. 15 показана блок-схема, которая иллюстрирует пример конфигурации модуля генерирования опорного списка, представленного на фиг. 14.
В примере, представленном на фиг. 15, модуль 222 генерирования опорного списка выполнен так, что он включает в себя: модуль 231 установки опорного изображения; модуль 232 генерирования временного списка; и модуль 233 генерирования списка опорного изображения.
Модуль 231 установки опорного изображения устанавливает краткосрочные (предшествующие) опорные изображения посредством обращения к информации времени (другими словами, к информации РОС) опорного изображения, которая поступает из буфера 209 декодированного изображения, и флагу used_by_curr краткосрочного опорного изображения, который установлен в заголовке среза или в RPS, переданном из модуля 221 обработки синтаксиса, и генерирует список краткосрочного (предшествующего) опорного изображения (RefPicSetStCurrBefore[i]). Модуль 231 установки опорного изображения устанавливает краткосрочные (последующие) опорные изображения, обращаясь к информации времени опорного изображения, которая поступает из буфера 209 декодированного изображения, и флагу used_by_curr краткосрочного опорного изображения, который установлен в заголовке среза или RPS, переданном из модуля 221 обработки синтаксиса, и генерирует список краткосрочного (последующего) опорного изображения в (RefPicSetStCurrAfter[i]).
Модуль 231 установки опорного изображения устанавливает долгосрочные опорные изображения, обращаясь к информации времени опорного изображения, которое поступает из буфера 209 декодированного изображения, и флагу used_by_curr долгосрочного опорного изображения, который установлен в заголовке среза или SPS, и генерирует список долгосрочного опорного изображения (RefPicSetLtCurr[i]). Модуль 231 установки опорного изображения устанавливает опорные изображения между обзорами (RefPicSetIvCurr[i]), обращаясь к информации обзора для опорной информации, подаваемой из буфера 209 декодированного изображения, и генерирует ее список.
Модуль 232 генерирования временного списка комбинирует списки, установленные модулем 231 установки опорного изображения, в заданном порядке, в соответствии с настоящей технологией, описанной выше, генерируя, таким образом, временные списки (RefPicListTemp0[rIdx] и RefPicListTemp1[rIdx]) для L0 и L1.
Модуль 233 генерирования списка опорного изображения обращается к числам num_ref_icbc_l0_active_minus1 и num_ref_idx_I1_active_minus1, установленным в заголовок среза или SPS, который поступает из модуля 221 обработки синтаксиса. Модуль 233 генерирования списка опорного изображения выделяет опорные изображения, соответствующие числу num_ref_idx_l0_active_minus1 и числу num_ref_idx_I1_active_minus1 из временных списков L0/L1, генерируемых модулем 232 генерирования временного списка, и суммирует выделенные опорные изображения, генерируя, таким образом, опорные списки для L0/L1.
К опорным спискам для L0/L1, сгенерированным модулем 233 генерирования списка опорного изображения, обращается модуль 212 прогнозирования/компенсации параллакса движения.
Поток обработки декодирования
Далее, будет описан поток каждой обработки, выполняемой устройством 200 декодирования изображения, описанным выше. Вначале, со ссылкой на блок-схему последовательности операций, представленную на фиг. 16, будет представлен пример потока обработки декодирования.
Когда начинается обработка декодирования, на этапе S201, буфер 201 накопления накапливает кодированные данные, которые передают в него. На этапе S202, модуль 221 обработки синтаксиса получает информацию заголовка из кодированных данных, считанных в заданные моменты времени из буфера 201 накопления. Модуль 221 обработки синтаксиса подает каждую полученную информацию заголовка в модуль 202 декодирования без потерь, вместе с кодированными данными. Кроме того, модуль 221 обработки синтаксиса подает полученную информацию заголовка (включающую в себя VPS, SPS (включающий в себя RPS) и заголовок среза) и т.п. в модуль 222 генерирования опорного списка.
На этапе S203, модуль 202 декодирования без потерь декодирует кодированные данные, которые подают из модуля 221 обработки синтаксиса. Другими словами, декодируют изображение I, изображение Ρ и изображение В, кодированное модулем 106 кодирования без потерь, представленным на фиг. 1.
В это время, информацию, такую как информация вектора движения, информация вектора параллакса, информация опорного кадра, информация режима прогнозирования (режима прогнозирования внутри кадра или режима прогнозирования между кадрами), флаг, параметр квантования и т.п. получают из каждой информации заголовка.
В случае, когда информация режима прогнозирования представляет собой информацию режима прогнозирования внутри кадра, информацию режима прогнозирования подают в модуль 211 прогнозирования внутри кадра. В случае, когда информация режима прогнозирования представляет собой информацию режима прогнозирования между кадрами, информацию режима прогнозирования и соответствующую информацию вектора движения подают в модуль 212 прогнозирования/компенсации параллакса движения.
На этапе S204, модуль 203 обратного квантования выполняет обратное квантование для квантованного коэффициента ортогонального преобразования, который получают через обработку декодирования, выполняемую модулем 202 декодирования без потерь. На этапе S205, модуль 204 обратного ортогонального преобразования выполняет обратное ортогональное преобразование для коэффициента ортогонального преобразования, который был получен через обработку обратного квантования, выполняемую модулем 203 обратного квантования, используя способ, соответствующий модулю 104 ортогонального преобразования, представленному на фиг. 1. Таким образом, декодируют дифференциальную информацию, соответствующую входным данным (выходу модуля 103 расчета) модуля 104 ортогонального преобразования, представленного на фиг. 1.
На этапе S206, модуль 205 расчета суммирует прогнозируемое изображение с дифференциальной информацией, полученной в результате обработки на этапе S205. В соответствии с этим, декодируют данные исходного изображения.
На этапе S207, фильтр 206 удаления блочности соответствующим образом фильтрует декодируемое изображение, которое получают в результате обработки на этапе S206. В соответствии с этим, соответственно, удаляют искажение блочности из декодируемого изображения. Фильтр 206 удаления блочности подает изображение, полученное в результате его обработки, в фильтр 223 адаптивного смещения.
На этапе S208, фильтр 223 адаптивного смещения выполняет обработку фильтра адаптивного смещения для изображения после обработки фильтра для удаления блочности, выполняемого фильтром 206 удаления блочности для каждого LCU на основе информации фильтра смещения, поступающей из модуля 221 обработки синтаксиса. Фильтр 223 адаптивного смещения подает изображение после обработки фильтра адаптивного смещения в фильтр 224 адаптивного контура.
На этапе S209, фильтр 224 адаптивного контура выполняет обработку фильтра адаптивного контура для изображения, подаваемого из фильтра 223 адаптивного смещения для каждого LCU, используя коэффициент фильтра, подаваемый из модуля 221 обработки синтаксиса. Фильтр 224 адаптивного контура подает изображение, полученное в результате его обработки, в буфер 209 декодированного изображения и в буфер 207 изменения компоновки экрана.
На этапе S210, буфер 209 декодированного изображения сохраняет отфильтрованное декодированное изображение.
На этапе S211, модуль 222 генерирования опорного списка генерирует опорный список, к которому обращаются, когда модуль 212 прогнозирования/компенсации параллакса движения прогнозирует текущее изображение. Эта обработка генерирования опорного списка будет подробно описана ниже со ссылкой на фиг. 17.
При обработке на этапе S211 временной список, который представляет собой временной список, используемый, когда генерируют опорный список, генерируют посредством вставки опорных изображений, к которым можно обращаться в направлении обзора, среди множества опорных изображений, к которым можно обращаться в направлении времени. Затем, на основе сгенерированного временного списка, генерируют опорные списки.
На этапе S212, модуль 211 прогнозирования внутри кадра или модуль 212 прогнозирования/компенсации параллакса движения выполняет обработку прогнозирования каждого изображения в соответствии информацией режима прогнозирования, подаваемой из модуля 202 декодирования без потерь.
Другими словами, в случае, когда информацию режима прогнозирования внутри кадра подают из модуля 202 декодирования без потерь, модуль 211 прогнозирования внутри кадра выполняет обработку прогнозирования внутри кадра режима прогнозирования внутри кадра. С другой стороны, в случае, когда информацию режима прогнозирования между кадрами подают из модуля 202 декодирования без потерь, модуль 212 прогнозирования/компенсации параллакса движения выполняет обработку прогнозирования/компенсации параллакса движения в режиме прогнозирования между кадрами, используя опорное изображение индекса опорного изображения, представленного опорным списком, генерируемым при обработке на этапе S211.
На этапе S213, модуль 213 выбора выбирает прогнозируемое изображение. Другими словами, прогнозируемое изображение, генерируемое модулем 211 прогнозирования внутри кадра, или прогнозируемое изображение, генерируемое модулем 212 прогнозирования/компенсации параллакса движения, подают в модуль 213 выбора. Модуль 213 выбора выбирает сторону, на которую подают прогнозируемое изображение, и подает прогнозируемое изображение в модуль 205 расчета. Такое прогнозируемое изображение суммируют с дифференциальной информацией, в ходе обработки на этапе S206.
На этапе S214, буфер 207 изменения компоновки экрана изменяет компоновку кадров для данных декодированного изображения. Другими словами, порядок кадров данных декодированного изображения, который был изменен для кодирования в буфере 102 изменения компоновки экрана (фиг. 1) устройства 100 кодирования изображения, изменяют на исходный порядок отображения.
На этапе S215, D/A преобразователь 208 выполняет D/A преобразование данных декодированного изображения, компоновка кадров которого была изменена в буфере 207 изменения компоновки экрана. Такие декодированные данные изображения выводят на дисплей, который не представлен на чертеже, в результате чего, отображается соответствующее изображение. Когда заканчивается обработка на этапе S215, заканчивается обработка декодирования.
Поток обработки генерирования опорного списка
Далее, со ссылкой на блок-схему последовательности операций, представленную на фиг. 17, будет описан пример потока обработки генерирования опорного списка, выполняемого на этапе S211, представленном на фиг. 16. Кроме того, в результате выполнения такой обработки, генерируют опорные списки в соответствии с настоящей технологией 1, описанной выше со ссылкой на фиг. 5. Эту обработку выполняют только в случае, когда декодированное изображение (другими словами, текущее изображение для прогнозирования) представляет собой изображение Ρ или изображение В.
На этапе S203, представленном на фиг. 16, описанной выше, информацию, такую как VPS, SPS (включающую в себя RPS) и заголовок среза декодированного изображения, подают из модуля 221 обработки синтаксиса в модуль 222 генерирования опорного списка. Флаг used_by_curr краткосрочного опорного изображения устанавливают в заголовке среза или RPS, подаваемом из модуля 221 обработки синтаксиса. Флаг used_by_curr долгосрочного опорного изображения устанавливают в заголовке среза или SPS.
На этапе S231, модуль 231 установки опорного изображения модуля 222 генерирования опорного списка устанавливает краткосрочные (предшествующие) опорные изображения (STbC), обращаясь к информации времени (другими словами, к информации РОС) опорного изображения, подаваемого из буфера 209 декодированного изображения, и флагу used_by_curr краткосрочного опорного изображения заголовка среза или RPS, и генерирует список RefPicSetStCurrBefore[i].
На этапе S232, модуль 231 установки опорного изображения устанавливает краткосрочные (последующие) опорные изображения (STaC), обращаясь к информации времени опорного изображения, подаваемого из буфера 209 декодированного изображения, и к флагу used_by_curr краткосрочного опорного изображения заголовка среза или RPS, и генерирует список RefPicSetStCurrAfter[i].
На этапе S233, модуль 231 установки опорного изображения устанавливает долгосрочные опорные изображения (RefPicSetLtCurr[i]:LT), обращаясь к информации времени (другими словами, к информации РОС) опорного изображения, подаваемого из буфера 209 декодированного изображения, и флагу used_by_curr долгосрочного опорного изображения заголовка среза или SPS, и генерирует список RefPicSetLtCurr[i].
На этапе S234, модуль 231 установки опорного изображения устанавливает опорные изображения (IV) между обзорами, обращаясь к информации обзора опорного изображения, подаваемого из буфера 209 декодированного изображения, и генерирует список RefPicSetIvCurr[i].
На этапе S235, модуль 232 генерирования временного списка комбинирует четыре типа списков, установленных модулем 231 установки опорного изображения, в порядке STbC, IV, STaC и LT, генерируя, таким образом, временной список (RefPicListTemp0[rIdx]) для L0.
Другими словами, только опорные изображения, для которых флаг used_by_curr равен "1" в списках из четырех типов, описанных выше, комбинируют в порядке STbC, IV, STaC и LT, в результате чего, что генерируют временной список для L0. Кроме того, в это время, суммируют все опорные изображения (IV) между обзорами.
На этапе S236, модуль 232 генерирования временного списка комбинирует четыре типа списков, установленных модулем 231 установки опорного изображения в порядке STaC, IV, STbC и LT, генерируя, таким образом, временной список (RefPicListTemp1[rIdx]) для L1.
Другими словами, только опорные изображения, для которых флаг used_by_curr равен "1", комбинируют в порядке STaC, IV, STbC и LT, в результате чего генерируют временной список для L1. Кроме того, в это время, в то время, как все опорные изображения (IV) между обзорами суммируют, порядок, как описано выше со ссылкой на фиг. 8, может быть установлен как обратный порядок в отношении направления L0.
Числа num_ref_idx_l0_active_minus1 и num_ref_idx_I1_active_minus1 установлены в заголовке среза или SPS, подаваемом из модуля 221 обработки синтаксиса.
На этапе S237, модуль 233 генерирования списка опорного изображения выделяет от первого до (num_ref_idx_l0_active_minus1+1)-ого элементов временного списка (RefPicListTemp0[rIdx]) для L0 и генерирует опорный список (RefPicList0[rIdx]) для L0.
На этапе S238, модуль 233 генерирования списка опорного изображения выделяет от первого до (num_ref_idx_I1_active_minus1+1)-ого элементов временного списка (RefPicListTemp1[rIdx]) L1 и генерирует опорный список (RefPicList1[rIdx]) L1.
Как описано выше, изображения между обзорами вставляют между краткосрочными (предшествующими) опорными изображениями и краткосрочными (последующими) опорными изображениями, генерируя, таким образом, опорный список, описанный выше со ссылкой на фиг. 5.
Другой поток обработки генерирования опорного списка
Далее, со ссылкой на блок-схему последовательности операций, представленную на фиг. 16, будет описан пример потока обработки генерирования опорного списка, выполняемой на этапе S211, представленном на фиг. 16. При выполнении этой обработки генерируют опорные списки в соответствии с настоящей технологией 2, описанной выше со ссылкой на фиг. 6. Такая обработка выполняется только в случае, когда декодируемое изображение (другими словами, текущее изображение для прогнозирования) представляет собой изображение Ρ или изображение В.
На этапе S203, представленном на фиг. 16, описанной выше, информация, такая как VPS, SPS (включая в себя RPS), и заголовок среза декодируемого изображения, поступает из модуля 221 обработки синтаксиса в модуль 222 генерирования опорного списка. Флаг used_by_curr краткосрочного опорного изображения установлен в заголовке среза или в RPS, переданном из модуля 121 обработки синтаксиса. Флаг used_by_curr долгосрочного опорного изображения установлен в заголовке среза или в SPS.
На этапе S251, модуль 231 установки опорного изображения модуля 222 генерирования опорного списка устанавливает краткосрочные (предшествующие) опорные изображения (STbC) посредством ссылки на информацию времени (другими словами, информацию РОС) для опорного изображения, подаваемого из буфера 209 декодированного изображения, и флаг used_by_curr для краткосрочного опорного изображения заголовка среза или RPS, и генерирует список RefPicSetStCurrBefore[i].
На этапе S252, модуль 231 установки опорного изображения устанавливает краткосрочные (последующие) опорные изображения (STaC) посредством ссылки на информацию времени опорного изображения, подаваемого из буфера 209 декодированного изображения, и флаг used_by_curr краткосрочного опорного изображения заголовка среза или RPS, и генерирует список RefPicSetStCurrAfter[i].
На этапе S253, модуль 253 установки опорного изображения устанавливает долгосрочные опорные изображения (LT) со ссылкой на информацию времени опорного изображения, подаваемого из буфера 112 декодированного изображения, и флаг used_by_curr долгосрочного опорного изображения заголовка среза или SPS, и генерирует список RefPicSetLtCurr[i].
На этапе S254, модуль 231 установки опорного изображения устанавливает опорные изображения (IV) между обзорами при обращении к информации обзора опорного изображения, подаваемого из буфера 209 декодированного изображения, и генерирует список RefPicSetIvCurr[i].
На этапе S255, модуль 232 генерирования временного списка генерирует два списка, включающие в себя список 1, полученный в результате последовательного комбинирования трех списков STbC, STaC и LT, установленных модулем 131 установки опорного изображения, и список 2, сконфигурированный IV. Другими словами, только опорные изображения, в которых флаг used_by_curr равен "1", комбинируют в порядке STbC, STaC и LT, таким образом, генерируя список 1. Кроме того, список 2 генерируют посредством суммирования всех IV списка RefPicSetIvCurr[i] со списком.
На этапе S256, модуль 132 генерирования временного списка выделяет один элемент с начала каждого из списков 1 и 2, сгенерированных на этапе S255, и поочередно выравнивает выделенные элементы, генерируя, таким образом, временной список (RefPicListTemp0[rIdx]) для L0.
На этапе S257, модуль 232 генерирования временного списка генерирует два списка, включающие в себя список 11, полученный посредством последовательного комбинирования трех списков STaC, STbC и LT, установленных модулем 231 установки опорного изображения, и списка 12, сконфигурированного IV. Другими словами, только опорные изображения, для которых флаг used_by_curr равен "1", комбинируют в порядке STaC, STbC и LT, в результате чего, генерируют список 11. Кроме того, в то время как генерируют список 12, посредством суммирования всех IV списка RefPicSetIvCurr[i], в это время, как описано выше со ссылкой на фиг. 8, опорные изображения между обзорами могут быть добавлены в порядке, который представляет собой обратный порядок для направления L0.
На этапе S258, модуль 232 генерирования временного списка выделяет один элемент с начала каждого из списков 11 и 12, сгенерированных на этапе S255, и поочередно выравнивает выделенные элементы, генерируя, таким образом, временной список (RefPicListTemp1[rIdx]) для L1.
Числа num_ref_idx_l0_active_minus1 и num_ref_idx_I1_active_minus1 устанавливают в заголовке среза или в SPS, передаваемом из модуля 221 обработки синтаксиса.
На этапе S259, модуль 233 генерирования списка опорного изображения выделяет от первого до (num_ref_idx_l0_active_minus1+1)-ого элементы временного списка (RefPicListTemp0[rIdx]) для L0 и генерирует опорный список (RefPicList0[rIdx]) для L0.
На этапе S260, модуль 233 генерирования списка опорного изображения выделяет от первого до (num_ref_idx_I1_active_minus1+1)-ого элементов временного списка (RefPicListTemp1[rIdx]) для L1 и генерирует опорный список (RefPicList1[rIdxj) для L1.
Как описано выше, при генерировании временных списков, опорные изображения, расположенные в направлении времени и опорные изображениях, расположенные в направлении обзора, размещают поочередно, в результате чего генерируют опорные списки, описанные выше со ссылкой на фиг. 6.
Кроме того, в описании, представленном выше, в качестве системы кодирования, в то время как система HEVC используется, как основа, настоящая технология представляет собой технологию во время выполнения отображения, но не ограничена конкретной системой кодирования. Таким образом, настоящая технология не ограничена системой HEVC, но может использоваться любая другая система кодирования/система декодирования. Например, настоящая технология может также применяться в устройстве, которое выполняет обработку кодирования/декодирования, имеющее систему AVC, которая будет описана ниже, в качестве ее основания.
3. Третий вариант осуществления
Другая конфигурация устройства кодирования изображения
На фиг. 19 иллюстрируется конфигурация устройства кодирования изображения, в соответствии с другим вариантом осуществления, в качестве устройства обработки изображения, в котором применяется настоящее раскрытие. Устройство 300 кодирования изображения, представленное на фиг. 19, отличается от устройства 100 кодирования изображения, представленного на фиг. 1, только тем, что выполняется обработка кодирования, используя систему AVC.
На фиг. 19 теми же номерами ссылочных позиций обозначена те же конфигурация, которая представлена на фиг. 1. Таким образом, двойное их описание не представлено, соответственно.
Устройство 300 кодирования изображения, представленное на фиг. 19, включает в себя: A/D (аналогово/цифровой) преобразователь 101; буфер 102 изменения компоновки экрана; модуль 103 расчета; модуль 104 ортогонального преобразования; модуль 105 квантования; модуль 106 кодирования без потерь; и буфер 107 накопления. Кроме того, устройство 100 кодирования изображения включает в себя: модуль 108 обратного квантования; модуль 109 обратного ортогонального преобразования; модуль 110 расчета; фильтр 111 удаления блочности; буфер 112 декодированного изображения; модуль 113 выбора; модуль 114 прогнозирования внутри кадра; модуль 115 прогнозирования/компенсации параллакса движения; модуль 116 выбора; и модуль 117 управления скоростью.
Кроме того, устройство 100 кодирования изображения включает в себя: модуль 121 обработки синтаксиса; и модуль 122 генерирования опорного списка.
Другими словами, конфигурация устройства 300 кодирования изображения, представленная на фиг. 19, отличается от устройства 100 кодирования изображения, представленного на фиг. 1 только тем, что исключены фильтр 123 адаптивного смещения и фильтр 124 адаптивного контура, и модуль 106 кодирования без потерь выполняет кодирование, не только используя систему HEVC, но используя систему AVC. Таким образом, устройство 300 кодирования изображения выполняет обработку кодирования не в модулях CU, а в модулях блоков.
Цели для обработки кодирования, выполняемой модулем 106 кодирования без потерь, являются такими же, как и у модуля 106 кодирования без потерь, представленного на фиг. 1, за исключением параметров фильтра адаптивного смещения и фильтра адаптивного контура. Другими словами, модуль 106 кодирования без потерь, аналогично модулю 106 кодирования без потерь, представленному на фиг. 1, получает информацию режима прогнозирования внутри кадра из модуля 114 прогнозирования внутри кадра. Кроме того, модуль 106 кодирования без потерь получает информацию режима прогнозирования между кадрами, вектор движения, опорные изображения, устанавливающие информацию, и т.п. из модуля 115 прогнозирования/компенсации параллакса движения.
Модуль 106 кодирования без потерь аналогично модулю 106 кодирования без потерь, представленному на фиг. 1, выполняет обработку кодирования без потерь, такую как обработка кодирования переменной длины (например, CAVLC) или обработка арифметического кодирования (например, САВАС) для квантованного коэффициента, подаваемого из модуля 105 квантования.
Модуль 106 кодирования без потерь аналогично модулю 106 кодирования без потерь, представленному на фиг. 1, кодирует квантованный коэффициент преобразования и устанавливает информацию режима прогнозирования внутри кадра, информацию режима прогнозирования между кадрами, информацию вектора движения и параметр квантования, как часть информации заголовка кодированных данных (мультиплексирование). Модуль 106 кодирования без потерь подает кодированные данные, полученные в результате обработки кодирования, в буфер 107 накопления, для ь накопления в нем.
Фильтр 111 удаления блочности фильтрует локально декодированное изображение, подаваемое из модуля 110 расчета, удаляя, таким образом, искажение блочности. Фильтр 111 удаления блочности подает изображение, полученное в результате его обработки, в буфер 112 декодированного изображения для накопления в нем.
Изображение, накопленное в буфере 112 декодированного изображения, выводят в модуль 114 прогнозирования внутри кадра или в модуль 115 прогнозирования/компенсации параллакса движения через модуль 113 выбора, как опорное изображение.
Настоящая технология может применяться для такого устройства кодирования изображения, использующего систему AVC.
Другой пример конфигурации модуля декодирования
На фиг. 20 показана конфигурация устройства декодирования изображения, в соответствии с другим вариантом осуществления, как в устройстве обработки изображения, в котором применяется настоящее раскрытие. Устройство 350 декодирования изображения, представленное на фиг. 20, представляет собой устройство декодирования, которое соответствует устройству 300 кодирования изображения, представленному на фиг. 19. Устройство 350 декодирования изображения, представленное на фиг. 20, отличается от устройства 200 декодирования изображения, представленного на фиг. 14 только тем, что обработка декодирования выполняется, используя систему AVC.
На фиг. 20 тем же номером ссылочной позиции обозначена та же конфигурация, которая представлена на фиг. 14. Таким образом, двойное описание ее не представлено, соответственно.
Устройство 350 декодирования изображения, представленное на фиг. 20, включает в себя: буфер 201 накопления; модуль 202 декодирования без потерь; модуль 203 обратного квантования; модуль 204 обратного ортогонального преобразования; модуль 205 расчета; фильтр 206 удаления блочности; буфер 207 изменения компоновки экрана; D/A преобразователь 208; буфер 209 декодированного изображения; модуль 210 выбора; модуль 211 прогнозирования внутри кадра; модуль 212 прогнозирования/компенсации параллакса движения; и модуль 213 выбора.
Конфигурация устройства 350 декодирования изображения, представленная на фиг. 20, отличается от конфигурации устройства 200 декодирования изображения, представленная на фиг. 14, только тем, что исключены фильтр 223 адаптивного смещения и фильтр 224 адаптивного контура, и модуль 202 декодирования без потерь выполняет обработку декодирования, не используя систему HEVC, но используя систему AVC. Таким образом, устройство 350 декодирования изображения выполняет обработку декодирования не в модулях CU, но в модулях блоков.
Цели для обработки декодирования, выполняемой модулем 202 декодирования без потерь, в принципе, являются такими же, как и у модуля 202 декодирования без потерь, представленного на фиг. 14, за исключением параметров фильтра адаптивного смещения и фильтра адаптивного контура. Другими словами, буфер 201 накопления накапливает кодированные данные, которые были переданы в него. Такие кодированные данные кодируют в устройстве 300 кодирования изображения.
Модуль 221 обработки синтаксиса, аналогично модулю 221 обработки синтаксиса, представленному на фиг. 14, получает набор параметров последовательности, набор параметра изображения, заголовок среза и т.п. из кодированных данных, считываемых из буфера 201 накопления в заданные моменты времени, и подает каждую информацию заголовка, которая была получена, в модуль 202 декодирования без потерь, вместе с кодированными данными. Кроме того, модуль 221 обработки синтаксиса подает информацию заголовка и т.п., которая была получена, в модуль 222 генерирования опорного списка.
Кроме того, модуль 202 декодирования без потерь, аналогично модулю 202 декодирования без потерь, представленному на фиг. 14, выполняет обработку декодирования без потерь такую, как обработка декодирования переменной длины, или обработка арифметического декодирования для кодированных данных, подаваемых из модуля 221 обработки синтаксиса, получая, таким образом, квантованный коэффициент. Модуль 202 декодирования без потерь подает квантованный коэффициент в модуль 203 обратного квантования.
Фильтр 206 удаления блочности выполняет фильтрацию изображения, подаваемого из модуля 205 расчета, удаляя, таким образом, искажение блочности. Затем фильтр 206 удаления блочности подает изображение, полученное в результате его обработки, в буфер 209 декодированного изображения, и в буфер 207 изменения компоновки экрана.
Настоящая технология также может применяться в таком устройстве декодирования изображения, в котором используется система AVC.
Кроме того, настоящее раскрытие, например, может применяться в устройстве кодирования изображения и в устройстве декодирования изображения, которые используются, когда информацию изображения (поток битов), сжатую, используя ортогональное преобразование, такое, как дискретное косинусное преобразование, и компенсация движения, такая как MPEG, H. 26х, и т.п., принимают через сетевую среду передачи, такую как спутниковая широковещательная передача, кабельное телевидение, Интернет или мобильный телефон. Кроме того, настоящее раскрытие может применяться в устройстве кодирования изображения и в устройстве декодирования изображения, которые используются, когда информацию обрабатывают на носителе записи, таком как оптический диск, магнитный диск или запоминающее устройство флэш. Кроме того, настоящее раскрытие может также применяться в устройстве прогнозирования/компенсации движения, включенном в устройство кодирования изображения и в устройство декодирования изображения, описанные выше, и т.п.
4. Четвертый вариант осуществления
Компьютер
Последовательность обработки, описанная выше, может выполняться в аппаратных средствах или в программных средствах. В случае, когда последовательность обработки выполняют в программном средстве, программу, которая конфигурирует программное средство, устанавливают в компьютер. Здесь компьютер включает в себя компьютер, который встроен в специализированные аппаратные средства, компьютер, который может исполнять различные функции в результате установки в нем различных программ, такой как компьютер общего назначения и т.п.
На фиг. 21 показана блок-схема, которая иллюстрирует пример конфигурации аппаратных средств компьютера, который выполняет последовательность обработки, описанную выше, в соответствии с программой.
В компьютере 500 центральное процессорное устройство (CPU) 501, постоянное запоминающее устройство (ROM) 502 и оперативное запоминающее устройство (RAM) 503 взаимно соединены через шину 504.
Кроме того, интерфейс 510 ввода-вывода соединен с шиной 504. Интерфейс 510 ввода-вывода, модуль 511 ввода, модуль 512 вывода, модуль 513 сохранения, модуль 514 передачи данных и привод 515 соединены друг с другом.
Модуль 511 ввода выполнен с использованием клавиатуры, "мыши", микрофона и т.п. Модуль 512 вывода выполнен с использованием дисплея, громкоговорителя и т.п. Модуль 513 сохранения выполнен с использованием жесткого диска, энергонезависимого запоминающего устройства и т.п. Модуль 514 передачи данных выполнен на основе сетевого интерфейса и т.п. Привод 515 выполняет привод съемного носителя 521 информации, такого как магнитный диск, оптический диск, магнитооптический диск или полупроводниковое запоминающее устройство.
В компьютере, выполненном, как описано выше, CPU 501 выполняет последовательность обработки, описанную выше, например, посредством загрузки программы, сохраненной в модуле 513 сохранения, в RAM 503, через интерфейс 510 ввода-вывода и шину 504, и выполнения программы.
Программа, выполняемая компьютером 500 (CPU 501), например, может быть предоставлена посредством ее записи на съемный носитель 521 информации, как пакетный носитель информации и т.п. Кроме того, программа может быть предоставлена через проводную или беспроводную среду передачи данных, такую как локальная вычислительная сеть, Интернет или цифровая спутниковая широковещательная передача.
В компьютере программа может быть установлена в модуле 513 сохранения через интерфейс 510 ввода-вывода, посредством загрузки съемного носителя 521 в привод 515. Кроме того, программа может быть принята модулем 514 передачи данных через проводную или беспроводную среду передачи данных и может быть установлена в модуле 513 сохранения. Кроме того, программа может быть установлена заранее в ROM 502 или в модуль 513 сохранения.
Кроме того, программа, выполняемая компьютером, может представлять собой программу, которая выполняет обработку во временной последовательности, в последовательности, описанной здесь, или может представлять собой программу, которая выполняет обработку параллельно или в нужные моменты времени, такие как моменты времени, когда вызывают программу.
Кроме того, в данном описании, этап, описывающий программу, записанную на носителе записи, включает в себя не только обработку, выполняемую во временной последовательности, в соответствии с описанным порядком, но также и обработку, которая выполняется параллельно или по отдельности, без необходимости обработки во временной последовательности.
Кроме того, в данном описании, система представляет все устройство, которое выполнено из множества устройств.
Кроме того, конфигурация, описанная выше, как одно устройство (или один модуль обработки) может быть разделена таким образом, чтобы она была сконфигурирована, как множество устройств (или модулей обработки). И, наоборот, конфигурация, описанная выше, как множество устройств (или модулей обработки), может быть размещена так, чтобы она была сконфигурирована, как одно устройство (или один модуль обработки). Кроме того, конфигурация, которая не была описана выше, может быть добавлена к конфигурации каждого устройства (или каждого модуля обработки). Кроме того, если только общая конфигурация и общая работа системы, по существу, являются одинаковыми, часть конфигурации конкретного устройства (или конкретного модуля обработки) может быть выполнена так, чтобы она была включена в конфигурацию другого устройства (или другого модуля обработки). Другими словами, настоящая технология не ограничена вариантами осуществления, описанными выше, но различные изменения могут быть произведены в ней, так, чтобы она не выходила пределы концепции настоящей технологии.
Устройство кодирования изображения и устройство декодирования изображения, в соответствии с вариантами осуществления, описанными выше, могут применяться в различных электронных устройствах, таких как передатчик или приемник для широковещательной передачи по кабелю, такой как спутниковая широковещательная передача или кабельное ТВ, передача по Интернет, передача в терминал, используя сотовую связь, и т.п., устройство записи, которое записывает изображение на носитель записи, такой как оптический диск, магнитный диск или запоминающее устройство флэш, или устройство воспроизведения, которое воспроизводит изображение с носителя записи. Ниже будут описаны четыре примера применения.
5. Примеры применения
Первый пример применения: Телевизионный приемник
На фиг. 22 представлен пример схематичной конфигурации телевизионного устройства, в котором применяется описанный выше вариант осуществления. Телевизионное устройство 900 включает в себя: антенну 901; тюнер 902; демультиплексор 903; декодер 904; модуль 905 обработки видеосигнала; модуль 906 отображения; модуль 907 обработки аудиосигнала; громкоговоритель 908; внешний интерфейс 909; модуль 910 управления; интерфейс 911 пользователя и шину 912.
Тюнер 902 выделяет сигнал требуемого канала из сигнала широковещательной передачи, принятого через антенну 901, и демодулирует выделенный сигнал. Затем тюнер 902 выводит кодированный поток битов, полученный в результате демодуляции, в демультиплексор 903. Другими словами, тюнер 902 используют, как средство передачи телевизионного устройства 900, которое принимает кодированный поток, в котором кодировано изображение.
Демультиплексор 903 разделяет видеопоток и аудиопоток программы, которую требуется просмотреть, из кодированного потока битов и выводит каждый раздельный поток в декодер 904. Кроме того, демультиплексор 903 выделяет вспомогательные данные, такие как EPG (электронная программа передач), из кодированного потока битов, и подает выделенные данные в модуль 910 управления. Кроме того, демультиплексор 903 может выполнять дескремблирование в случае, когда кодированный поток битов скремблирован.
Декодер 904 декодирует видеопоток и аудиопоток, вводимые из демультиплексора 903. Затем декодер 904 выводит видеоданные, сгенерированные при обработке декодирования, в модуль 905 обработки видеосигнала. Кроме того, декодер 904 выводит аудиоданные, сгенерированные при обработке декодирования, в модуль 907 обработки аудиосигнала.
Модуль 905 обработки видеосигнала воспроизводит видеоданные, введенные из декодера 904, и обеспечивает отображение видеоизображения в модуле 906 отображения. Модуль 905 обработки видеосигнала может также обеспечивать отображение модулем 906 отображения экрана приложения, передаваемого через сеть. Кроме того, модуль 905 обработки видеосигнала может выполнять дополнительную обработку, такую как удаление шумов для видеоданных, в соответствии с установкой. Кроме того, модуль 905 обработки видеосигнала может генерировать изображение GUI (графический интерфейс пользователя), такое как меню, кнопка и курсор, и накладывать сгенерированное изображение на выходное изображение.
Модулем 906 отображения управляют в соответствии с сигналом управления, подаваемым из модуля 905 обработки видеосигнала для отображения видеоизображения или изображения видеоэкрана в устройстве отображения (например, жидкокристаллический дисплей, плазменный дисплей, (дисплей органической EL) OLED и т.п.).
Модуль 907 обработки аудиосигнала выполняет обработку воспроизведения, такую как D/A преобразование и усиление для аудиоданных, вводимых из декодера 904, и обеспечивает вывод громкоговорителем 908 звука. Кроме того, модуль 907 обработки аудиосигнала может выполнять дополнительную обработку, такую как удаление шумов для аудиоданных.
Внешний интерфейс 909 представляет собой интерфейс для подключения телевизионного устройства 900 к внешнему устройству или сети. Например, видеопоток или аудиопоток, принимаемый через внешний интерфейс 909, могут быть декодированы декодером 904. Другими словами, внешний интерфейс 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 управления.
В телевизионном устройстве 900, сконфигурированном таким образом, декодер 904 имеет функцию устройства декодирования изображения, в соответствии с описанным выше вариантом осуществления. В соответствии с этим, когда изображение декодируют в телевизионном устройстве 900, эффективность кодирования при обработке кодирования с множеством точек обзора может быть улучшена.
Второй пример применения: Мобильный телефон
На фиг. 23 иллюстрируется пример схематичной конфигурации мобильного телефона, в котором применяется описанный выше вариант осуществления. Мобильный телефон 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, для вывода звука.
В мобильном телефоне 920, сконфигурированном таким образом, модуль 927 обработки изображения имеет функции устройства кодирования изображения и устройства декодирования изображения, в соответствии с описанными выше вариантами осуществления. В соответствии с этим, когда изображение кодируют и декодируют в мобильном телефоне 920, эффективность кодирования при обработке кодирования с множеством точек обзора может быть улучшена.
Третий пример применения: Устройство записи/воспроизведения
На фиг. 24 показана блок-схема, которая иллюстрирует пример схематичной конфигурации устройства записи/воспроизведения, в котором применяется описанный выше вариант осуществления. Устройство 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 записи/воспроизведения.
В случае, когда видеоданные и аудиоданные, вводимые из модуля 942 внешнего интерфейса, не кодированы, кодер 943 кодирует видеоданные и аудиоданные. Затем кодер 943 выводит кодированный поток битов в селектор 946.
Модуль 944 HDD записывает кодированный поток битов, на котором записаны сжатые данные содержания, такие как видеоданные и аудиоданные, различные программы и другие данные, на внутренний жесткий диск. Когда воспроизводят видеоданные и аудиоданные, модуль 944 HDD считывает свои данные с жесткого диска.
Привод 945 диска записывает и считывает данные на/с загруженного носителя записи. Носитель записи, загруженный в привод 945 диска, например, может представлять собой диск DVD (DVD-Video, DVD-RAM, DVD-R, DVD-RW, DVD+R, DVD+RW и т.п.), диск Blu-ray (зарегистрированный товарный знак) и т.п.
Когда записывают видеоданные и аудиоданные, селектор 946 выбирает кодированный поток битов, вводимый из тюнера 941, или кодер 943 и выводит выбранный кодированный поток битов в модуль 944 HDD или в привод 945 диска. Кроме того, когда видеоданные и аудиоданные воспроизводят, селектор 946 выводит кодированный поток битов, поступающий из модуля 944 HDD или из привода 945 диска в декодер 947.
Декодер 947 декодирует кодированный поток битов для генерирования видеоданных и аудиоданных. Затем декодер 947 выводит сгенерированные видеоданные в модуль 948 OSD. Кроме того, декодер 947 выводит сгенерированные аудиоданные во внешний громкоговоритель.
Модуль 948 OSD воспроизводит видеоданные, вводимые из декодера 947, отображая, таким образом, видеоизображение. Модуль 948 OSD может накладывать изображение GUI, такое как меню, кнопка, курсор и т.п. на отображаемое видеоизображение.
Модуль 949 управления включает в себя процессор, такой как CPU, и запоминающее устройство, такое как RAM или ROM. В запоминающем устройстве сохраняется программа, исполняемая CPU, данные программы и т.п. Программа, сохраненная в запоминающем устройстве, например, считывается и выполняется CPU при активации устройства 940 записи/воспроизведения. CPU управляет работой устройства 940 записи/воспроизведений, например, в соответствии с сигналом операции, вводимым из модуля 950 интерфейса пользователя при исполнении программы.
Модуль 950 интерфейса пользователя соединен с модулем 949 управления. Модуль 950 интерфейса пользователя, например, включает в себя кнопку и переключатель для пользователя, для выполнения операций с устройством 940 записи/воспроизведения и модулем приема для сигнала дистанционного управления. Модуль 950 интерфейса пользователя обнаруживает операцию пользователя через составляющие элементы, для генерирования сигнала операции, и выводит сгенерированный сигнал операции в модуль 949 управления.
В устройстве 940 записи/воспроизведения, сконфигурированном таким образом, кодер 943 имеет функцию устройства кодирования изображения, в соответствии с описанным выше вариантом осуществления. Кроме того, декодер 947 имеет функцию устройства декодирования изображения, в соответствии с описанным выше вариантом осуществления. В соответствии с этим, когда изображение кодируют или декодируют в устройстве 940 записи/воспроизведения, эффективность кодирования при обработке кодирования для множества точек обзора может быть улучшена.
Четвертый пример применения: Устройство формирования изображения
На фиг. 25 иллюстрируется пример схематичной конфигурации устройства формирования изображения, в котором применяется описанный выше вариант осуществления. Устройство 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 обработки изображения может выводить данные изображения, поступающие из модуля 963 обработки сигналов, в модуль 965 дисплея для отображения изображения. Кроме того, модуль 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 управления.
В устройстве 960 формирования изображения, сконфигурированным таким образом, модуль 964 обработки изображения имеет функции устройства кодирования изображения и устройства декодирования изображения, в соответствии с описанными выше вариантами осуществления. В соответствии с этим, когда изображение кодируют или декодируют в устройстве 960 формирования изображения, эффективность кодирования при обработке кодирования с множеством точек обзора может быть улучшена.
6. Пятый вариант осуществления
Другие примеры
В представленном выше описании, в то время как были описаны примеры устройств и системы и т.п., в которых применяется настоящая технология, настоящая технология не ограничена этим. Таким образом, настоящая технология может применяться, как все конфигурации, установленные в устройстве, составляющем такое устройство или систему, например, процессор, как систему, выполненную в большой интегральной микросхеме (LSI), и т.п., модуль, в котором используется множество процессоров и т.п., модуль, в котором используется множество модулей и т.п., или набор и т.п. (другими словами, часть конфигурации устройства), полученный посредством добавления других функций в модуль.
Видеонабор
Пример случая, в котором настоящая технология применяется, как набор, будет описан со ссылкой на фиг. 26. На фиг. 26 иллюстрируется пример схематичной конфигурации видеонабора, в котором применяется настоящая технология.
В последнее время осуществляется воплощение множества функций электронного устройства, и при разработке или в ходе его производства, в случае, когда часть конфигурации предусмотрена для продажи, предоставления и т.п., возникает не только случай, в котором применяется конфигурация, имеющая одну функцию, но также и случай, когда используется один набор, имеющий множество функций, которые широко применяются в результате комбинирования множества конфигураций, имеющих соответствующую функцию.
Видеонабор 1300, представленный на фиг. 26, имеет такую многофункциональную конфигурацию, и его получают посредством комбинирования устройства, имеющего функцию, относящуюся к кодированию изображения или декодированию изображения (любую одну из них или обе из них), используя устройства, имеющие другие функции, относящиеся к этой функции.
Как представлено на фиг. 26, видеонабор 1300 включает в себя группу модуля, которая включает в себя видеомодуль 1311, внешнее запоминающее устройство 1312, модуль 1313 управления питанием, модуль 1314 ввода и т.п., и устройства, имеющие соответствующие функции, такие как модуль 1321 соединения, камера 1322, датчик 1323 и т.п.
Модуль формируется, как компонент, имеющий функцию, обладающую единством, в результате размещения несколько составляющих функций, совместно относящиеся друг к другу. В то время как конкретная физическая конфигурация является произвольной, например, может быть рассмотрен модуль, полученный в результате размещения множества процессоров, каждый из которых имеет функцию, компонентов электрической цепи, таких как резистор или конденсатор, и других устройств, и т.п. на монтажной плате и т.п., для интеграции вместе. Кроме того, может быть рассмотрено формирование нового модуля посредством комбинирования модуля с другими модулями, процессорами и т.п.
В примере, показанном на фиг. 26, видеомодуль 1311 получают посредством комбинирования конфигураций, имеющих функции, относящиеся к обработке изображений, и включает в себя: процессор приложения; видеопроцессор; модем 1333 широковещательной связи; и RF модуль 1334.
Процессор получают посредством интегрирования конфигурации, имеющей заданную функцию, на полупроводниковой микросхеме, в качестве системы на микросхеме (SoC) и, например, также существует процессор, который называется системой на большой интегральной схеме (LSI) и т.п. Конфигурация, имеющая заданную функцию, может представлять собой логическую схему (конфигурацию аппаратных средств), конфигурацию, включающую в себя CPU, ROM, RAM и т.п., и программу (конфигурацию программного обеспечения), исполняемую используя их, или конфигурацию, комбинирующую обе конфигурации, описанные выше. Например, может быть установлена такая конфигурация, что процессор включает в себя логические схемы, CPU, ROM, RAM и т.п., некоторые функции реализуются, используя логические схемы (конфигурация на основе аппаратных средств), и другие функции реализуются, используя программу (конфигурация на основе программного обеспечения), исполняемую CPU.
Процессор 1331 приложения, представленный на фиг. 26, представляет собой процессор, который выполняет приложение, относящееся к обработке изображений. Для реализации заданных функций, приложение, выполняемое процессором 1331 приложения, может не только выполнять обработку расчетов, но также и управлять конфигурациями внутри и снаружи видеомодуля 1311, такими как видеопроцессор 1332, если необходимо.
Видеопроцессор 1332 представляет собой процессор, который имеет функцию, относящуюся к кодированию изображения и декодированию изображения (одну из них или их обе).
Широкополосный модем 1333 представляет собой процессор (или модуль), который выполняет обработку, относящуюся к проводной или беспроводной (или обеим им) широкополосной передачи данных, выполняемой через широкополосную линию, такую как Интернет или открытая телефонная сеть. Например, широкополосный модем 1333 преобразует данные (цифровой сигнал), предназначенный для передачи в аналоговый сигнал через цифровую модуляцию и т.п., или демодулируют принятый аналоговый сигнал для его преобразования в данные (цифровой сигнал). Например, широкополосный модем 1333 может выполнять цифровую модуляцию/демодуляцию произвольной информации, такой как данные изображения, обработанные видеопроцессором 1332, поток, в котором данные изображения кодированы, программу приложения, данные установки и т.п.
RF модуль 1334 представляет собой модуль, который выполняет преобразование частоты, модуляцию/демодуляцию, усиление, обработку фильтра и т.п. для сигнала RF (Радиочастоты), который передают/принимают через антенну. Например, RF модуль 1334 генерирует сигнал RF, выполняя преобразование частоты и т.п. для сигнала основной полосы пропускания, генерируемого широкополосным модемом 1333. Кроме того, например, RF модуль 1334 генерирует сигнал в основной полосе пропускания, выполняя преобразование частоты и т.п. для RF сигнала, принятого через входной модуль 1314.
Кроме того, как обозначено пунктирной линией 1341 на фиг. 26, процессор 1331 приложения и видеопроцессор 1332 могут быть интегрированы так, чтобы они были выполнены, как один процессор.
Внешнее запоминающее устройство 1312 представляет собой модуль, который расположен за пределами видеомодуля 1311 и включает в себя устройство накопитель, используемое видеомодулем 1311. Устройство накопитель внешнего запоминающего устройства 1312 может быть реализовано в определенной физической конфигурации. Однако, обычно, поскольку устройство накопитель часто используется для сохранения данных, имеющих большую емкость, таких как данные изображения, представленные в единицах кадров, устройство накопитель, предпочтительно, реализовано на основе полупроводникового запоминающего устройства, которое имеет большую емкость при относительно низкой стоимости, такое как динамическое оперативное запоминающее устройство (DRAM).
Модуль 1313 управления питанием контролирует и управляет подачей питания в видеомодуль 1311 (в каждой конфигурации видеомодуля 1311).
Входной модуль 1314 представляет собой модуль, который обеспечивает функцию внешнего интерфейса (конечную схему передачи/приема на стороне антенны) для RF модуля 1334. Как представлено на фиг. 26, входной модуль 1314, например, включает в себя антенный модуль 1351, фильтр 1352 и усилительный модуль 1353.
Антенный модуль 1351 включает в себя антенну, которая передает/принимает беспроводный сигнал, и ее периферийную конфигурацию. Антенный модуль 1351 передает сигнал, подаваемый из усилительного модуля 1353, как беспроводный сигнал, и подает принятый беспроводный сигнал фильтр 1352, как электрический сигнал (RF сигнал). Фильтр 1352 выполняет обработку фильтра и т.п. для RF сигнала, принятого через антенный модуль 1351, и подает RF сигнал после обработки в RF модуль 1334. Усилительный модуль 1353 усиливает RF сигнал, переданный из RF модуля 1334, и подает усиленный RF сигнал в антенный модуль 1351.
Модуль 1321 соединения представляет собой модуль, который имеет функцию, относящуюся к соединению с внешним устройством. Физическая конфигурация модуля 1321 соединения является произвольной. Например, модуль 1321 соединения включает в себя конфигурацию, имеющую другую функцию связи, чем спецификация связи, которой соответствует широкополосный модем 1333, внешние разъемы ввода-вывода и т.п.
Например, модуль 1321 соединения может быть выполнен так, что он включает в себя модуль, имеющий функции передачи данных, которые соответствуют спецификациям радиосвязи, таким как Bluetooth (зарегистрированный товарный знак), IEEE 802.11 (например, беспроводный интернет (Wi-Fi; зарегистрированный товарный знак)), передачи данных в ближнем поле (NFC) и Ассоциации по средствам передачи данных в инфракрасном диапазоне (IrDA), и антенну, которая передает/принимает сигналы, которые соответствуют спецификациям. Кроме того, например, модуль 1321 соединения может быть выполнен так, что он включает в себя модуль, имеющий функции передачи данных, которые соответствуют спецификациям кабельной передачи данных, таким как универсальная последовательная шина (USB) и мультимедийный интерфейс высокой четкости (зарегистрированный товарный знак) (HDMI) и разъемы, которые соответствуют спецификациям. Кроме того, например, модуль 1321 соединения может быть выполнен так, что он имеет дополнительную функцию передачи данных (сигналы) и т.п. аналоговых входных/выходных разъемов и т.п.
Кроме того, модуль 1321 соединения может быть выполнен так, что он включает в себя устройство, которое представляет собой место назначения передачи данных (сигнал). Например, модуль 1321 соединения может быть выполнен так, что он включает в себя привод (включающий в себя не только привод съемного носителя информации, но также и жесткого диска, твердотельный привод (SSD), сетевой подключаемый накопитель (NAS) и т.п.), который выполняет считывание данных или запись данных на носитель записи, такой как магнитный диск, оптический диск, магнитооптический диск или полупроводниковое запоминающее устройство. Кроме того, модуль 1321 соединения может быть выполнен так, что он включает в себя устройство вывода (монитор, громкоговоритель и т.п.) изображения или звука.
Камера 1322 представляет собой модуль, который имеет функцию для получения данных изображения субъекта посредством формирования изображения субъекта. Данные изображения, полученные при обработке формирования изображений, выполняемой камерой 1322, например, подают в видеопроцессор 1332 и кодируют.
Датчик 1323 представляет собой модуль, который имеет функцию произвольного датчика, такого как аудиодатчик, ультразвуковой датчик, оптический датчик, датчик освещения, инфракрасный датчик, датчик изображения, датчик вращения, датчик угла, датчик угловой скорости, датчик скорости, датчик ускорения, датчик наклона, датчик магнитной идентификации, датчик удара или датчик температуры. Данные, которые обнаруживает датчик 1323, например, подают в процессор 1331 приложения и используются приложением и т.п.
В представленном выше описании каждая конфигурация, описанная, как модуль, может быть реализована на основе процессора, и каждая конфигурация, описанная как процессор, может быть реализована как модуль.
Как будет описано ниже, настоящая технология может применяться в видеопроцессоре 1332 в видеонаборе 1300, имеющем конфигурацию, как описано выше. В соответствии с этим, видеонабор 1300 может быть выполнен, как набор, в котором применяется настоящая технология.
Пример конфигурации видеопроцессора
На фиг. 27 иллюстрируется пример схематичной конфигурации видеопроцессора 1332 (фиг. 26), в котором применяется настоящая технология.
В примере, представленном на фиг. 27, видеопроцессор 1332 имеет функцию приема входного видеосигнала и аудиосигнала, и кодирования принятых сигналов, в соответствии с заданной системой и функцией, для декодирования кодированных видеоданных и кодированных аудиоданных и воспроизведения и вывода видеосигнала и аудиосигнала.
Как представлено на фиг. 27, видеопроцессор 1332 включает в себя: модуль 1401 обработки входных видеоданных; первый модуль 1402 увеличения/уменьшения изображения; второй модуль 1403 увеличения/уменьшения изображения; модуль 1404 обработки выходных видеоданных; запоминающее устройство 1405; и модуль 1406 управления запоминающим устройством. Кроме того, видеопроцессор 1332 включает в себя: механизм 1407 кодирования/декодирования; буферы 1408А и 1408В элементарного потока (ES) видеоданных и буферы 1409А и 1409В ES аудиоданных. Кроме того, видеопроцессор 1332 включает в себя: аудио кодер 1410; аудиодекодер 1411; мультиплексор (MUX) 1412; демультиплексор (DMUX) 1413; и буфер 1414 потока.
Модуль 1401 обработки входных видеоданных, например, получает видеосигнал, вводимый из модуля 1321 соединения (фиг. 26) и т.п., и преобразует полученный видеосигнал в цифровые данные изображения. Первый модуль 1402 увеличения/уменьшения изображения выполняет преобразование формата и обработку увеличения/уменьшения для данных изображения. Второй модуль 1403 увеличения/уменьшения изображения для данных изображения выполняет обработку увеличения/уменьшения изображения, в соответствии с форматом выходного места назначения, через модуль 1404 обработки выходных видеоданных, или выполняет преобразование формата, обработку увеличения/уменьшения изображения, которая аналогична выполняемой первым модулем 1402 увеличения/уменьшения изображения и т.п. Модуль 1404 обработки выходных видеоданных выполняет преобразование формата, преобразование в аналоговый сигнал и т.п. для данных изображения и выводит полученный в результате сигнал, например, в модуль 1321 соединения (фиг. 26) и т.п., как воспроизводимый видеосигнал.
Запоминающее устройство 1405 кадра представляет собой запоминающее устройство для данных изображения, которое совместно используется модулем 1401 обработки входных видеоданных, первым модулем 1402 увеличения/уменьшения изображения, вторым модулем 1403 увеличения/уменьшения изображения, модулем 1404 обработки выходных видеоданных и механизмом 1407 кодирования/декодирования. Запоминающее устройство 1405 кадра реализовано, как полупроводниковое запоминающее устройство, такое как DRAM.
Модуль 1406 управления запоминающим устройством принимает сигнал синхронизации, подаваемый из механизма 1407 кодирования/декодирования, и управляет и получает доступ к запоминающему устройству 1405 кадра для записи/считывания, в соответствии с планом доступа для запоминающего устройства 1405 кадра, который записан в таблицу 1406А управления доступом. Таблица 1406А управления доступом обновляется модулем 1406 управления запоминающим устройством в соответствии с обработкой, которая выполняется механизмом 1407 кодирования/декодирования, первым модулем 1402 увеличения/уменьшения изображения, вторым модулем 1403 увеличения/уменьшения изображения и т.п.
Механизм 1407 кодирования/декодирования выполняет обработку кодирования данных изображения и выполняет обработку декодирования потока видеоданных, который получают посредством кодирования данных изображения. Например, механизм 1407 кодирования/декодирования кодирует данные изображения, считанные из запоминающего устройства 1405 кадра, и последовательно записывает считанные данные изображения в буфер 1408A ES видеоданных, как видеопоток. Кроме того, например, механизм 1407 кодирования/декодирования последовательно считывает видеопоток из буфера 1408В ES видеоданных, декодирует считанный видеопоток, и последовательно записывает декодированный видеопоток в запоминающее устройство 1405 кадра, как данные изображения. Механизм 1407 кодирования/декодирования использует запоминающее устройство 1405 кадра, как рабочую область при такой обработке кодирования или декодирования. Кроме того, механизм 1407 кодирования/декодирования, например, в момент начала обработки каждого макроблока, выводит сигнал синхронизации в модуль 1406 управления запоминающим устройством.
В буфере 1408А ES видеоданных размещают видеопоток, генерируемый механизмом 1407 кодирования/декодирования, и из него подают видеопоток в мультиплексор (MUX) 1412. В буфере 1408В ES видеоданных размещают видеопоток, подаваемый из демультиплексора (DMUX) 1413, и из него подает видеопоток в механизм 1407 кодирования/декодирования.
В буфере 1409A ES аудиоданных размещает аудиопоток, сгенерированный аудиокодером 1410, и из него подают аудиопоток в мультиплексор (MUX) 1412. В буфере 1409 В ES размещают аудиопоток, подаваемый из демультиплексора (DMUX) 1413, и из него подают аудиопоток в аудио декодер 1411.
Аудиокодер 1410 преобразует аудиосигнал, например, подаваемый через модуль 1321 соединения (фиг. 26) и т.п., например, в цифровой сигнал и кодирует преобразованный аудиосигнал в соответствии с заданной системой, такой как аудиосистема MPEG или система AudioCode номер 3 (АС3). Аудиокодер 1410 последовательно записывает аудиопотоки, которые представляют собой данные, полученные в результате кодирования аудиосигналов, в буфер 1409A ES аудиоданных. Декодер 1411 аудиоданных декодирует аудиопоток, подаваемый из буфера 1409В ES аудиоданных, выполняет преобразование декодированного аудиопотока, например, в аналоговый сигнал и т.п., и подает преобразованный сигнал, например, в модуль 1321 соединения (фиг. 26) и т.п., как воспроизводимый аудиосигнал.
Мультиплексор (MUX) 1412 мультиплексирует поток видеоданных и поток аудиоданных. Способ мультиплексирования (другими словами, формат потока битов, генерируемого в результате мультиплексирования), является произвольным. Кроме того, во время мультиплексирования, мультиплексор (MUX) 1412 может добавлять заданную информацию заголовка и т.п. к потоку битов. Другими словами, мультиплексор (MUX) 1412 может преобразовывать формат потока в результате обработки мультиплексирования. Например, посредством мультиплексирования потока видеоданных и потока аудиоданных, мультиплексор (MUX) 1412 преобразует поток видеоданных и поток аудиоданных в поток транспортирования, который представляет собой поток битов, имеющий формат для передачи. Кроме того, например, посредством мультиплексирования потока видеоданных и потока аудиоданных, мультиплексор (MUX) 1412 преобразует поток видеоданных и поток аудиоданных в данные (данные файла), имеющие формат для записи.
Демультиплексор (DMUX) 1413 демультиплексирует поток битов, в котором мультиплексированы поток видеоданных и поток аудиоданных, используя способ, соответствующий обработке мультиплексирования, выполняемой мультиплексором (MUX) 1412. Другими словами, демультиплексор (DMUX) 1413 выделяет поток видеоданных и поток аудиоданных из потока битов, считанных из буфера 1414 потока (поток видеоданных и поток аудиоданных разделяют). Другими словами, демультиплексор (DMUX) 1413 может преобразовывать (выполнять обратное преобразование для преобразования, выполненного мультиплексором (MUX) 1412) формата потока, используя обработку демультиплексирования. Например, демультиплексор (DMUX) 1413 получает поток транспортирования, например, подаваемый из модуля 1321 соединения (фиг. 26), широкополосного модема 1333 и т.п. (фиг. 26), через буфер 1414 потока и демультиплексирует полученный поток транспортирования, преобразуя, таким образом, поток транспортирования в поток видеоданных и поток аудиоданных. Кроме того, например, демультиплексор (DMUX) 1413 получает данные файла, считанные с различных носителей записи, например, модулем 1321 соединения (фиг. 26) через буфер 1414 потока и демультиплексирует полученные данные файла, преобразуя, таким образом, данные файла в поток видеоданных и поток аудиоданных.
В буфере 1414 потока размещается поток битов. Например, в буфере 1414 потока размещается поток транспортирования, подаваемый из мультиплексора (MUX) 1412, и из него подают поток транспортирования, например, в модуль 1321 соединения (фиг. 26), широкополосный модем 1333 (фиг. 26) и т.п. в заданные моменты времени или на основе запроса, переданного снаружи.
Кроме того, например, в буфере 1414 потока размещают данные файла, передаваемые из мультиплексора (MUX) 1412, и из него подают данные файла, например, в модуль 1321 соединения (фиг. 26) и т.п. в заданные моменты времени или на основе запроса, переданного снаружи, для записи на один из различных носителей записи.
Кроме того, в буфере 1414 потока размещают поток транспортирования, полученный, например, через модуль 1321 соединения (фиг. 26), широкополосный модем 1333 (фиг. 26), и т.п., и из него подают поток транспортирования в демультиплексор (DMUX) 1413 в заданные моменты времени или на основе запроса, поступающего снаружи, и т.п.
Кроме того, в буфере 1414 потока размещаются данные файла, считанные с различных носителей записи, например, с помощью 1321 соединения (фиг. 26) и т.п., и из него подают данные файла в демультиплексор (DMUX) 1413 в заданные моменты времени или на основе запроса, поступающего снаружи и т.п.
Далее будет описан пример работы видеопроцессора 1332, имеющего такую конфигурацию. Например, видеосигнал, поступающий в видеопроцессор 1332 из модуля 1321 соединения (фиг. 26) и т.п., преобразуют в цифровые данные изображения, в соответствии с заданной системой, таких как система 4:2:2Y/Cb/Cr, используя модуль 1401 обработки входных видеоданных, и последовательно записывают в запоминающее устройство 1405 кадра. Такие цифровые данные изображения считывают первым модулем 1402 увеличения/уменьшения изображения или вторым модулем 1403 увеличения/уменьшения изображения и выполняет преобразование формата в соответствующую систему, такую как система 4:2:0Y/Cb/Cr и т.п., и выполняет обработку увеличения/уменьшения для цифровых данных изображения, и обработанные цифровые данные изображения снова записывают в запоминающее устройство 1405 кадра. Такие данные изображения кодируют, используя механизм 1407 кодирования/декодирования, и записывают в буфер 1408A ES видеоданных, как поток видеоданных.
Кроме того, аудио сигнал, вводимый из модуля 1321 соединения (фиг. 26) и т.п. в видеопроцессор 1332, кодируют с помощью аудиокодера 1410 и записывают в буфер 1409A ES аудиоданных, как аудиопоток.
Видеопоток, сохраненный в буфере 1408A ES видеоданных, и аудиопоток, сохраненный в буфере 1409A ES аудиоданных, считают мультиплексором (MUX) 1412, мультиплексируют их и преобразуют в поток транспортирования, данные файла и т.п. Поток транспортирования, генерируемый мультиплексором (MUX) 1412, размещают в буфере 1414 потока и затем выводят во внешнюю сеть, например, через модуль 1321 соединения (фиг. 26), широкополосный модем 1333 (фиг. 26) и т.п. Кроме того, данные файла, генерируемые мультиплексором (MUX) 1412, размещают в буфере 1414 потока, затем выводят, например, в модуль 1321 соединения (фиг. 26) и т.п., и записывают на любой один из различных носителей записи.
Кроме того, поток транспортирования, который вводят из внешней сети, например, в видеопроцессор 1332, через модуль 1321 соединения (фиг. 26), широкополосный модем 1333 (фиг. 26) и т.п., размещают в буфере 1414 потока и затем демультиплексируют с помощью демультиплексора (DMUX) 1413. Кроме того, данные файла, которые считывают с любого одного из различных носителей записи, например, с использованием модуля 1321 соединения (фиг. 26) и т.п., и вводят в видеопроцессор 1332, размещают в буфере 1414 потока и затем демультиплексируют с помощью демультиплексора (DMUX) 1413. Другими словами, поток транспортирования или данные файла, вводимые в видеопроцессор 1332, разделяют на поток видеоданных и поток аудиоданных с помощью демультиплексора (DMUX) 1413.
Поток аудиоданных подают в аудиодекодер 1411 через буфер 1409В ES аудиоданных и декодируют, и воспроизводят аудиосигнал. Кроме того, поток видеоданных записывают в буфер 1408В ES видеоданных, затем последовательно считывают с помощью механизма 1407 кодирования/декодирования, декодируют и записывают в запоминающее устройство 1405 кадра. Декодированные данные изображения обрабатывают, так, чтобы они были увеличены или уменьшены вторым модулем 1403 увеличения/уменьшения изображения и записывают в запоминающее устройство 1405 кадра. Затем данные декодированного изображения считывают с помощью модуля 1404 обработки выходных видеоданных, для них выполняют преобразование формата в заданную систему, такую как система 4:2:2Y/Cb/Cr, и дополнительно преобразуют в аналоговый сигнал, и видеосигнал воспроизводят и выводят.
В случае, когда настоящая технология применяется в видеопроцессоре 1332, выполненном таким образом, настоящая технология, в соответствии с каждым вариантом осуществления, описанным выше, может применяться в механизме 1407 кодирования/декодирования. Другими словами, например, механизм 1407 кодирования/декодирования может быть выполнен так, чтобы он имел функции устройства 100 кодирования изображения (фиг. 1) в соответствии с первым вариантом осуществления, и устройства 200 декодирования изображения (фиг. 14), в соответствии со вторым вариантом осуществления. Кроме того, например, механизм 1407 кодирования/декодирования может быть выполнен так, чтобы он имел функции устройства 300 кодирования изображения (фиг. 19) и устройства 350 декодирования изображения (фиг. 20), в соответствии с третьим вариантом осуществления. Кроме того, например, механизм 1407 кодирования/декодирования может быть выполнен так, чтобы он имел функции устройства 200 кодирования изображения (фиг. 14) и устройства 350 декодирования изображения (фиг. 20), в соответствии со вторым вариантом осуществления. В результате использования такой конфигурации, видеопроцессор 1332 может получать такие же преимущества, как и преимущества, описанные выше со ссылкой на фиг. 1-18.
Кроме того, в механизме 1407 кодирования/декодирования, в соответствии с настоящей технологией (другими словами, функции устройства кодирования изображения и устройства декодирования изображения, в соответствии с каждым вариантом осуществления, описанным выше) могут быть реализованы с использованием аппаратных средств, таких как логические схемы, могут быть реализованы на основе программного обеспечения, такого как встроенная программа, или могут быть реализованы, как с использованием аппаратных, так и программных средств.
Другой пример конфигурации видеопроцессора
На фиг. 28 показана схема, которая иллюстрирует другой пример схематичной конфигурации видеопроцессора 1332 (фиг. 26), в котором применяется настоящая технология. В случае примера, представленного на фиг. 28, видеопроцессор 1332 имеет функцию кодирования/декодирования видеоданных, в соответствии с заданной системой.
Более конкретно, как представлено на фиг. 28, видеопроцессор 1332 включает в себя: модуль 1511 управления; интерфейс 1512 отображения; механизм 1513 отображения; механизм 1514 обработки изображения; и внутреннее запоминающее устройство 1515. Кроме того, видеопроцессор 1332 включает в себя: механизм 1516 кодека; интерфейс 1517 запоминающего устройства; мультиплексор/демультиплексор (MUX DMUX) 1518; сетевой интерфейс 1519; и видеоинтерфейс 1520.
Модуль 1511 управления управляет операциями модулей обработки, размещенных в видеопроцессоре 1332, таких, как интерфейс 1512 отображения, механизм 1513 отображения, механизм 1514 обработки изображения и механизм 1516 кодека.
Как представлено на фиг. 28, модуль 1511 управления, например, включает в себя основное CPU 1531, вспомогательное CPU 1532 и системный контроллер 1533. Основное CPU 1531 выполняет программу, которая используется для управления операцией каждого модуля обработки, расположенного в видеопроцессоре 1332. Основное CPU 1531 генерирует сигнал управления, в соответствии с программой и т.п., и подает сигнал управления в каждый модуль обработки (другими словами, управляет операцией каждого модуля обработки). Вспомогательное CPU 1532 выполняет вспомогательную роль для основного CPU 1531. Например, вспомогательное CPU 1532 выполняет дочернюю обработку, такую как процедура и т.п. для программы и т.п., выполняемой основным CPU 1531. Системный контроллер 1533 управляет операциями основного CPU 1531 и вспомогательного CPU 1532, такими как обозначение программ, для исполнения основным CPU 1531 и вспомогательным CPU 1532.
Интерфейс 1512 отображения выводит данные изображения, например, в модуль 1321 соединения (фиг. 26) и т.п. под управлением модуля 1511 управления. Например, интерфейс 1512 отображения преобразует данные изображения, которые представляют собой цифровые данные, в аналоговый сигнал, и выводит эти данные изображения в устройство монитора и т.п. модуля 1321 соединения (фиг. 26), как воспроизводимый видеосигнал или данные изображения, которые представляют собой цифровые данные.
Механизм 1513 отображения, под управлением модуля 1511 управления, выполняет различную обработку преобразования, такую как преобразование формата, преобразование размера и преобразование цветовой палитры для данных изображения, таким образом, чтобы их настроить в соответствии со спецификациями аппаратных средств устройства монитора, отображающего изображение, и т.п.
Механизм 1514 обработки изображения, под управлением модуля 1511 управления, выполняет заданную обработку изображения, такую как обработка фильтра, для улучшения качества изображения и т.п., для данных изображения.
Внутреннее запоминающее устройство 1515 представляет собой запоминающее устройство, расположенное внутри видеопроцессора 1332, который совместно используется механизмом 1513 отображения, механизмом 1514 обработки изображения и механизмом 1516 кодека. Внутреннее запоминающее устройство 1515, например, используется для обмена данными, выполняемого между механизмом 1513 отображения, механизмом 1514 обработки изображения и механизмом 1516 кодека. Например, внутреннее запоминающее устройство 1515 сохраняет данные, подаваемые из механизма 1513 отображения, механизма 1514 обработки изображения или механизма 1516 кодека, и подает эти данные в механизм 1513 отображения, механизм 1514 обработки изображения, или механизм 1516 кодека, в соответствии с необходимостью (например, в соответствии с запросом). В то время как это внутреннее запоминающее устройство 1515 может быть реализовано на основе любого устройства накопителя, обычно, внутреннее запоминающее устройство 1515 часто используется для сохранения данных, имеющих малый объем, таких как данные изображения, сконфигурированные в модулях блоков или параметров, и, соответственно, предпочтительно, реализовано на основе полупроводникового запоминающего устройства, имеющего относительно малую емкость (например, по сравнению с внешним запоминающим устройством 1312) и высокую скорость отклика, такого как SRAM (статическое оперативное запоминающее устройство).
Механизм 1516 кодека выполняет обработку, относящуюся к кодированию или декодированию данных изображения. Система кодирования/декодирования, которой соответствует механизм 1516 кодека, является произвольной, и ее количество может быть равно одному или двум, или больше. Например, механизм 1516 кодека может включать в себя функцию кодека множества систем кодирования/декодирования и выполнять кодирование данных изображения или декодирование кодированных данных, используя выбранную, одну из множества систем кодирования/декодирования.
В примере, показанном на фиг. 28, механизм 1516 кодека, например, включает в себя MPEG 2 Video 1541, AVC/H.264 1542, HEVC/H.265 1543, HEVC/H.265 (масштабируемый) 1544, HEVC/H.265 (многообзорный) 1545 и MPEG-DASH 1551, как функциональные блоки обработки, относящейся к кодеку.
MPEG 2 Video 1541 представляет собой функциональный блок, используемый для кодирования или декодирования данных изображения, в соответствии с системой MPEG 2. AVC/H.264 1542 представляет собой функциональный блок, используемый для кодирования или декодирования данных изображения, в соответствии с системой AVC. Кроме того, HEVC/H.265 1543 представляет собой функциональный блок, используемый для кодирования или декодирования данных изображения, в соответствии с системой HEVC. HEVC/H.265 (масштабируемой) 1544 представляет собой функциональный блок, используемый для масштабируемого кодирования или масштабируемого декодирования данных изображения, в соответствии с системой HEVC. HEVC/H.265 (многопроекционный) 1545 представляет собой функциональный блок, используемый для кодирования множества точек обзора или декодирования данных изображения множества точек обзора, в соответствии с системой HEVC.
MPEG-DASH 1551 представляет собой функциональный блок, используемый для передачи/приема данных изображения в соответствии с системой динамической адаптивной потоковой передачи MPEG через HTTP (MPEG-DASH). MPEG-DASH представляет собой технологию для потоковой передачи видеоданных, используя Протокол передачи гипертекста (HTTP), и имеет свойство, состоящее в том, что выбирают одни данные среди множества частей кодированных данных, имеющих взаимно разную разрешающую способность и т.п., которые подготавливают заранее, в единицах сегментов и передают. MPEG-DASH 1551 выполняет генерирование потока, управление передачей потока и т.п., которые соответствуют спецификации, и для данных кодирования/декодирования изображения используют MPEG 2 Video 1541 или HEVC/H.265 (многопроекционный) 1545, описанный выше.
Интерфейс 1517 запоминающего устройства представляет собой интерфейс, используемый для внешнего запоминающего устройства 1312. Данные, подаваемые из механизма 1514 обработки изображения или из механизма 1516 кодека, поступают во внешнее запоминающее устройство 1312 через интерфейс 1517 запоминающего устройства. Кроме того, данные, считываемые из запоминающего устройства 1312, поступают в видеопроцессор 1332 (механизм 1514 обработки изображения или механизм 1516 кодека) через интерфейс 1517 запоминающего устройства.
Мультиплексор/демультиплексор (MUX DMUX) 1518 мультиплексирует или демультиплексирует различного рода данные, относящиеся к изображению, такие как поток битов кодированных данных, данные изображения или видеосигнал. Способ мультиплексирования/демультиплексирования является произвольным. Например, во время обработки мультиплексирования, мультиплексор/демультиплексор (MUX DMUX) 1518 могут не только размещать множество частей данных в одну часть, но также могут добавлять заданную информацию заголовка и т.п. в данные. Кроме того, во время обработки демультиплексирования, мультиплексор/демультиплексор (MUX DMUX) 1518 может не только разделять одну часть данных на множество частей, но добавлять заданную информацию заголовка и т.п. к разделенным данным. Другими словами, мультиплексор/демультиплексор (MUX DMUX) 1518 может преобразовывать формат данных посредством обработки мультиплексирования/демультиплексирования. Например, мультиплексор/демультиплексор (MUX DMUX) 1518 может преобразовывать поток битов в поток транспортирования, который представляет собой поток битов в формате для передачи, или данные (файл данных), которые находятся в формате файла, для записи посредством мультиплексирования потока битов. Очевидно, что может быть выполнено обратное преобразование посредством обработки демультиплексирования.
Сетевой интерфейс 1519 представляет собой специально выделенный интерфейс, такой как широкополосный модем 1333 (фиг. 26) или модуль 1321 соединения (фиг. 26). Видеоинтерфейс 1520 представляет собой специально выделенный интерфейс, такой модуль 1321 соединения (фиг. 26) или камера 1322 (фиг. 26).
Далее будет описан пример работы такого видеопроцессора 1332. Например, когда поток транспортирования принимают из внешней сети, например, через модуль 1321 соединения (фиг. 26), широкополосный модем 1333 (фиг. 26) и т.п., поток транспортирования подают в мультиплексор/демультиплексор (MUX DMUX) 1518 через сетевой интерфейс 1519, демультиплексируют и декодируют, используя механизм 1516 кодека. Для данных изображения, полученных при обработке декодирования, выполняемой механизмом 1516 кодека, выполняют, например, заданную обработку изображений, используя механизм 1514 обработки изображения, и выполняют заданное преобразование механизмом 1513 отображения, полученные данные изображения подают, например, в модуль 1321 соединения (фиг. 26) и т.п. через интерфейс 1512 дисплея, и изображение отображают на мониторе. Кроме того, например, данные изображения, полученные при обработке декодирования, выполняемой механизмом 1516 кодека, повторно кодируют механизмом 1516 кодека, мультиплексируют мультиплексором/демультиплексором (MUX DMUX) 1518, преобразуют в данные файла, выводят, например, в модуль 1321 соединения (фиг. 26) и т.п. через видеоинтерфейс 1520, и записывают на любой из различных носителей записи.
Кроме того, например, данные файла кодированных данных, которые получают посредством кодирования данных изображения, считанных с носителя записи, не представленного на фигуре модулем 1321 соединения (фиг. 26) и т.п., подают в мультиплексор/демультиплексор (MUX DMUX) 1518 через видеоинтерфейс 1520, демультиплексируют и декодируют механизмом 1516 кодека. Для данных изображения, полученных при обработке декодирования, выполняемой механизмом 1516 кодека, выполняют заданную обработку изображения механизмом 1514 обработки изображения, и выполняют заданное преобразование механизмом 1513 дисплея, и полученные в результате данные изображения подают, например, в модуль 1321 соединения (фиг. 26) и т.п. через интерфейс 1512 дисплея, и отображают изображение на мониторе. Кроме того, например, данные изображения, полученные при обработке декодирования, выполняемой механизмом 1516 кодека, повторно кодируют механизмом 1516 кодека, мультиплексируют мультиплексором/демультиплексором (MUX DMUX) 1518, преобразуют в поток транспортирования, подают, например, в модуль 1321 соединения (фиг. 26), широкополосный модем 1333 (фиг. 26) и т.п. через сетевой интерфейс 1519, и передают в другое устройство, которое не показано на чертеже.
Кроме того, взаимный обмен данными изображения или другими данными между модулями обработки, расположенными в пределах видеопроцессора 1332, например, выполняют, используя внутреннее запоминающее устройство 1515 или внешнее запоминающее устройство 1312. Кроме того, модуль 1313 администрирования питанием, например, управляет подачей питания в модуль 1511 управления.
В случае, когда настоящая технология применяется в видеопроцессоре 1332, выполненном таким образом, настоящая технология в соответствии с каждым вариантом осуществления, описанным выше, может применяться в механизме 1516 кодека. Другими словами, например, механизм 1516 кодека может быть выполнен так, чтобы он включал в себя функциональные блоки, реализующие устройство 100 кодирования изображения (фиг. 1), в соответствии с первым вариантом осуществления, и устройство 200 декодирования изображения (фиг. 14), в соответствии со вторым вариантом осуществления. Кроме того, например, механизм 1516 кодека может быть выполнен так, чтобы он включал в себя функциональные блоки, реализующие устройство 300 кодирования изображения (фиг. 19) и устройство 350 декодирования изображения (фиг. 20), в соответствии с третьим вариантом осуществления. В результате использования такой конфигурации, видеопроцессор 1332 может получать те же преимущества, как и преимущества, описанные выше со ссылкой на фиг. 1-18.
Кроме того, в механизме 1516 кодека, настоящая технология (другими словами, функции устройства кодирования изображения и устройства декодирования изображения, в соответствии с каждым описанным выше вариантом осуществления), может быть реализована с помощью аппаратных средств, таких как логические схемы, может быть реализована, используя программное обеспечение, такое как встроенная программа, или может быть реализована, используя, как аппаратные, так и программные средства.
Как описано выше, в то время как две конфигурации видеопроцессора 1332 были описаны, как примеры, конфигурация видеопроцессора 1332 является произвольной и может представлять собой другую конфигурацию, чем две конфигурации, описанные выше. Кроме того, такой видеопроцессор 1332 может быть выполнен либо как одна полупроводниковая микросхема, или множество полупроводниковых микросхем. Например, видеопроцессор 1332 может быть выполнен, используя трехмерную многослойную LSI, в которой множество полупроводников расположено слоями. Кроме того, видеопроцессор 1332 может быть реализован, используя множество LSI.
Пример применения для устройства
Видеонабор 1300 может быть построен в различных устройствах, которые обрабатывают данные изображения. Например, видеонабор 1300 может быть встроен в телевизионное устройство 900 (фиг. 22), мобильный телефон 920 (фиг. 23), устройство 940 записи/воспроизведения (фиг. 24), устройство 960 формирования изображения (фиг. 25), и т.п. Благодаря встраиванию видеонабора 1300 в них, устройства могут получать преимущества, которые являются такими же, как и преимущества, описанные выше со ссылкой на фиг. 1-18.
Кроме того, некоторые из конфигураций видеонабора 1300, описанных выше, могут представлять собой конфигурации, в которых применяется настоящая технология в случае, когда видеопроцессор 1332 включен в нее. Например, только видеопроцессор 1332 может быть сконфигурирован, как видеопроцессор, в котором применяется настоящая технология. Кроме того, например, как описано выше, процессор, видеомодуль 1311 и т.п., обозначенный пунктирной линией 1341, могут быть выполнены, как процессор, модуль и т.п., в которых применяется настоящая технология. Кроме того, например, видеомодуль 1311, внешнее запоминающее устройство 1312, модуль 1313 администрирования питанием и входной модуль 1314 могут быть скомбинированы таким образом, чтобы из них была составлена конфигурация видеомодуля 1361, в котором применяется настоящая технология. В любой из конфигураций могут быть получены те же преимущества, как и описанные выше со ссылкой на фиг. 1-18.
Другими словами, любая конфигурация, которая включает в себя видеопроцессор 1332, аналогичная случаю видеонабора 1300, может быть встроена в различные устройства, который обрабатывают данные изображения. Например, видеопроцессор 1332, процессор, обозначенный пунктирной линией 1341, видеомодуль 1311 или видеомодуль 1361, могут быть встроены в телевизионное устройство 900 (фиг. 22), мобильный телефон 920 (фиг. 23), устройство 940 записи/воспроизведения (фиг. 24), устройство 960 формирования изображения (фиг. 25) и т.п. Благодаря встраиванию любой конфигурации, в которой применяется настоящая технология, аналогично случаю видеонабора 1300, устройства могут получать те же преимущества, как и описанные выше со ссылкой на фиг. 1-18.
В этом описании был описан пример, в котором различного рода информацию, такую как флаг выбора опорного списка, мультиплексируют в кодированный поток и передают со стороны кодирования на сторону декодирования. Однако, технология для передачи такой информации не ограничена такой технологией. Например, такая информация может быть передана или может быть записана, как отдельные данные, ассоциированные с кодированным потоком битов, без мультиплексирования в кодированном потоке. Здесь термин "ассоциированный" представляет, что изображение (оно может представлять собой часть изображения, такую как срез, блок и т.п.), включенное в поток битов, и информация, соответствующая изображению, могут быть связаны друг с другом во время декодирования изображения и информации. Другими словами, информация может быть передана по другой линии передачи, чем изображение (или поток битов). Кроме того, информация может быть записана на другом носителе записи, чем носитель записи для изображения (или потока битов) (или в другой области записи того же носителя записи). Кроме того, информация и изображение (или поток битов), например, могут быть ассоциированы друг с другом в единицах произвольных частей, таких как множество кадров, один кадр или часть кадра.
В то время как предпочтительные варианты осуществления настоящего раскрытия были подробно описаны со ссылкой на приложенные чертежи, технический объем настоящего раскрытия не ограничен этими примерами. Очевидно, что человек, имеющий обычные знания в области техники настоящего раскрытия, может вывести различные изменения или модификации в пределах объема технической идеи, описанной в формуле изобретения, и, естественно, следует понимать, что такие изменения и модификации принадлежат к техническому объему настоящего раскрытия.
Кроме того, в настоящей технологии может использоваться конфигурация, описанная ниже.
(1) Устройство обработки изображения, включающее в себя:
модуль декодирования для генерирования изображения посредством декодирования потока битов;
модуль установки опорного списка для установки опорного списка, к которому обращаются, когда изображение, генерируемое модулем декодирования, прогнозируется посредством вставки опорного изображения, на которое можно ссылаться в направлении уровня между множеством опорных изображений, к которым можно обращаться в направлении времени; и
модуль прогнозирования для прогнозирования изображения, генерируемого модулем декодирования, обращаясь к опорному списку, установленному модулем установки опорного списка.
(2) Устройство обработки изображения по (1), в котором модуль установки опорного списка выполнен с возможностью установки опорного списка посредством вставки опорного изображения, к которому можно обращаться в направлении уровня между опорным изображением, расположенным по времени перед изображением, и опорным изображением, расположенным по времени после изображения среди множества опорных изображений, к которым можно обращаться в направлении времени.
(3) Устройство обработки изображения по (2), в котором модуль установки опорного списка выполнен с возможностью установки опорного списка посредством размещения изображения в направлении L0 в порядке опорных изображений, расположенных по времени перед изображением опорного изображения, к которому можно обращаться в направлении уровня, и опорных изображений, расположенных по времени после изображения.
(4) Устройство обработки изображения по (2), в котором модуль установки опорного списка выполнен с возможностью установки опорного списка посредством размещения изображений в направлении L1 в порядке опорных изображений, расположенных по времени после изображения, опорного изображения, к которому можно обращаться в направлении уровня, и опорных изображений, расположенных по времени перед изображением.
(5) Устройство обработки изображения по (1), в котором модуль установки опорного списка выполнен с возможностью установки опорного списка посредством поочередного размещения опорного изображения, к которому можно обращаться в направлении времени, и опорного изображения, к которому можно обращаться в направлении уровня.
(6) Устройство обработки изображения по (5), в котором модуль установки опорного списка выполнен с возможностью установки опорного списка посредством поочередного размещения элемента списка опорных изображений, к которому можно обращаться в направлении времени, установленного в порядке опорных изображений, расположенных по времени перед изображением, и опорных изображений, расположенных после изображения по времени, и элемента списка опорных изображений, к которым можно обращаться в направлении уровня, который составлен из опорных изображений, к которым можно обращаться в направлении уровня, в направлении L0.
(7) Устройство обработки изображения по (5), в котором модуль установки опорного списка выполнен с возможностью установки опорного списка посредством поочередного размещения элемента списка опорных изображений, к которому можно обращаться в направлении времени, установленного в порядке опорных изображений, расположенных по времени после изображения, и опорных изображений, расположенных по времени перед изображением, и элемента списка опорных изображений, к которым можно обращаться в направлении уровня, который составлен из опорных изображений, к которым можно обращаться в направлении уровня, в направлении L1.
(8) Устройство обработки изображения по любому из (1)-(7), в котором модуль установки опорного списка выполнен с возможностью установки опорного списка посредством вставки опорных изображений, к которым можно обращаться в направлении уровня, в направлении L1, для того, чтобы можно было обращаться к опорному изображению в направлении уровня, которое противоположно случаю использования направления L0.
(9) Устройство обработки изображения по любому из (1)-(8), в котором модуль установки опорного списка включает в себя:
модуль установки временного списка для установки временного списка, который представляет собой временной список, используемый для установки опорного списка, посредством вставки опорного изображения, к которому можно обращаться в направлении уровня, между множеством опорных изображений, к которым можно обращаться в направлении времени; и
модуль установки списка опорного изображения для установки опорного списка на основе временного списка, установленного модулем установки временного списка.
(10) Способ обработки изображения, воплощенный в устройстве обработки изображения, способ обработки изображения включает в себя этапы, на которых:
генерируют изображение посредством декодирования потока битов;
устанавливают опорный список, к которому обращаются когда прогнозируют генерируемое изображение, посредством вставки опорного изображения, к которому можно обращаться в направлении уровня между множеством опорных изображений, к которым можно обращаться в направлении времени; и
прогнозируют сгенерированное изображение посредством обращения к установленному опорному списку.
(11) Устройство обработки изображения, включающее в себя:
модуль установки опорного списка для установки опорного списка, к которому обращаются, когда изображение прогнозируют посредством вставки опорного изображения, к которому можно обращаться в направлении уровня между множеством опорных изображений, к которым можно обращаться в направлении времени;
модуль прогнозирования для прогнозирования изображения посредством обращения к опорному списку, установленному модулем установки опорного списка; и
модуль кодирования для генерирования потока битов посредством выполнения кодирования, с использованием изображения, прогнозированного модулем прогнозирования.
(12) Устройство обработки изображения по (11), в котором модуль установки опорного списка выполнен с возможностью установки опорного списка посредством вставки опорного изображения, к которому можно обращаться в направлении уровня между опорным изображением, расположенным по времени перед изображением, и опорным изображением, расположенным по времени после изображения, среди множества опорных изображений, к которым можно обращаться в направлении времени.
(13) Устройство обработки изображения по (12), в котором модуль установки опорного списка выполнен с возможностью установки опорного списка посредством размещения изображения в направлении L0, в порядке опорных изображений, расположенных по времени перед изображением, опорного изображения, к которому можно обращаться в направлении уровня, и опорных изображениях, расположенных по времени после изображения.
(14) Устройство обработки изображения по (12), в котором модуль установки опорного списка выполнен с возможностью установки опорного списка посредством размещения изображения в направлении L1 в порядке опорных изображений, расположенных по времени после изображения, опорного изображения, к которому можно обращаться в направлении уровня, и опорных изображениях, расположенных по времени перед изображением.
(15) Устройство обработки изображения по (11), в котором модуль установки опорного списка выполнен с возможностью установки опорного списка посредством поочередного размещения опорного изображения, к которому можно обращаться в направлении времени, и опорного изображения, к которому можно обращаться в направлении уровня.
(16) Устройство обработки изображения по (15), в котором модуль установки опорного списка выполнен с возможностью установки опорного списка посредством поочередного размещения элемента списка опорных изображений, к которому можно обращаться в направлении времени, установленном в порядке опорных изображений, расположенных по времени перед изображением и опорными изображениями, расположенными по времени после изображения, и элемента списка опорных изображений, к которым можно обращаться в направлении уровня, который составлен из опорных изображений, к которым можно обращаться в направлении уровня, в направлении L0.
(17) Устройство обработки изображения по п. (15), в котором модуль установки опорного списка выполнен с возможностью установки опорного списка посредством поочередного размещения элемента списка опорных изображений, к которым можно обращаться в направлении времени, установленном в порядке опорных изображений, расположенных по времени после изображения, и опорных изображений, расположенных по времени перед изображением, и элемента списка опорных изображений, к которым можно обращаться в направлении уровня, который составлен из опорных изображений, к которым можно обращаться в направлении уровня, в направлении L1.
(18) Устройство обработки изображения по любому из (11)-(17), в котором модуль установки опорного списка выполнен с возможностью установки опорного списка посредством вставки опорных изображений, к которым можно обращаться в направлении уровня, в направлении L1, в порядке опорного изображения, к которому можно обращаться в направлении уровня, противоположном направлению в случае, когда используется L0.
(19) Устройство обработки изображения по любому из (11) - (18), в котором модуль установки опорного списка может включать в себя: модуль установки временного списка для установки временного списка, который представляет собой временной список, используемый для установки опорного списка, посредством вставки опорного изображения, к которому можно обращаться в направлении уровня между множеством опорных изображений, к которым можно обращаться в направлении времени; и модуль установки списка опорного изображения для установки опорного списка на основе временного списка, установленного модулем установки временного списка.
(20) Способ обработки изображения, воплощенный в устройстве обработки изображения, способ обработки изображения включающий в себя этапы, на которых:
устанавливают опорный список, к которому обращаются когда прогнозируют генерируемое изображение, посредством вставки опорного изображения, к которому можно обращаться в направлении уровня между множеством опорных изображений, к которым можно обращаться в направлении времени;
прогнозируют сгенерированное изображение посредством обращения к установленному опорному списку; и
генерируют поток битов, выполняя кодирование, с использованием прогнозируемого изображения.
Список номеров ссылочных позиций
100 Устройство кодирования изображения
106 Модуль кодирования без потерь
115 Модуль прогнозирования/компенсации параллакса движения
121 Модуль обработки синтаксиса
122 Модуль генерирования опорного списка
131 Модуль установки опорного изображения
132 Модуль генерирования временного списка
133 Модуль генерирования списка опорного изображения
200 Устройство декодирования изображения
202 Модуль декодирования без потерь
212 Модуль прогнозирования/компенсации параллакса движения
221 Модуль обработки синтаксиса
222 Модуль генерирования опорного списка
231 Модуль установки опорного изображения
232 Модуль генерирования временного списка
233 Модуль генерирования списка опорного изображения
300 Устройство кодирования изображения
350 Устройство декодирования изображения