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

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
[0001] Настоящее изобретение относится к способам декодирования изображений для декодирования кодированных движущихся изображений и к способам кодирования изображений для кодирования движущихся изображений.
УРОВЕНЬ ТЕХНИКИ
[0002] При кодировании и декодировании движущегося изображения, предложены способ декодирования изображений и способ кодирования изображений, которые применяют операцию контурной фильтрации (операцию внутриконтурной фильтрации) к пикселам около границы между слайсами (границы слайса) (непатентный документ 1).
СПИСОК БИБЛИОГРАФИЧЕСКИХ ССЫЛОК
НЕПАТЕНТНЫЕ ДОКУМЕНТЫ
[0003] [NPL 1]
Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 9th Meeting: Geneva, CH, 27 April - 7 May 2012, Title: High efficiency video coding (HEVC) text specification draft 7, Document: JCTVC-I1003_d5
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
ТЕХНИЧЕСКАЯ ЗАДАЧА
[0004] Тем не менее, имеется проблема в том, что нагрузка по обработке является большой в способе декодирования изображений и способе кодирования изображений согласно непатентному документу 1.
[0005] Настоящее изобретение предоставляет способ декодирования изображений и способ кодирования изображений, допускающие снижение нагрузки по обработке.
РЕШЕНИЕ ЗАДАЧИ
[0006] Способ декодирования изображений согласно аспекту настоящего изобретения представляет собой способ декодирования изображений для декодирования кодированного изображения, причем способ декодирования изображений включает в себя: получение флага управления границей для совместного управления операцией фильтрации для удаления блочности и операцией адаптивного к выборке смещения для границы слайса у текущего слайса, который должен быть декодирован, включенного в кодированное изображение; декодирование текущего слайса; выполнение операции фильтрации для удаления блочности на основе флага управления границей только над по меньшей мере одной из верхней границы слайса или левой границы слайса из всех границ слайса у текущего слайса, который декодирован; и выполнение операции адаптивного к выборке смещения, зависящей от флага управления границей, только над по меньшей мере одной из верхней границы слайса или левой границы слайса из всех границ слайса у текущего слайса, который декодирован.
[0007] Общие и конкретные аспекты, раскрытые выше, могут быть реализованы с использованием системы, способа, интегральной схемы, компьютерной программы или считываемого компьютером носителя записи, такого как CD-ROM, либо любой комбинации систем, способов, интегральных схем, компьютерных программ или считываемых компьютером носителей записи.
ПРЕИМУЩЕСТВА ИЗОБРЕТЕНИЯ
[0008] Способ декодирования изображений и способ кодирования изображений, раскрытые в данном документе, обеспечивают снижение нагрузки по обработке.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0009] Фиг. 1A иллюстрирует структуру изображения.
Фиг. 1B иллюстрирует диапазон для операции фильтрации для удаления блочности, управляемой посредством флага управления границей.
Фиг. 1C иллюстрирует диапазон для SAO, управляемой посредством флага управления границей.
Фиг. 2 является видом для иллюстрации GDR.
Фиг. 3 является блок-схемой последовательности операций способа, иллюстрирующей способ кодирования изображений с вовлечением GDR.
Фиг. 4 показывает слайс, обновленный посредством GDR.
Фиг. 5 иллюстрирует отношение между флагами управления границами для слайсов и операцией контурной фильтрации для границ слайсов.
Фиг. 6 является блок-схемой, иллюстрирующей конфигурацию устройства кодирования изображений согласно варианту 1 осуществления.
Фиг. 7A служит для иллюстрации управления границами слайсов согласно варианту 1 осуществления.
Фиг. 7B служит для иллюстрации управления границами слайсов согласно варианту 1 осуществления.
Фиг. 7C служит для иллюстрации управления границами слайсов согласно варианту 1 осуществления.
Фиг. 8 служит для более подробной иллюстрации управления границами слайсов согласно варианту 1 осуществления.
Фиг. 9 является блок-схемой последовательности операций способа, иллюстрирующей операцию обработки устройства кодирования изображений согласно варианту 1 осуществления.
Фиг. 10 является блок-схемой, показывающей конфигурацию устройства декодирования изображений согласно варианту 1 осуществления.
Фиг. 11 является блок-схемой последовательности операций способа, иллюстрирующей операцию обработки устройства декодирования изображений согласно варианту 1 осуществления.
Фиг. 12 служит для иллюстрации управления SAO для границ слайсов согласно разновидности 1 варианта 1 осуществления.
Фиг. 13 показывает пример маски для SAO в угловой области слайса согласно разновидности 2 варианта 1 осуществления.
Фиг. 14 показывает другой пример маски для SAO в угловой области слайса согласно разновидности 2 варианта 1 осуществления.
Фиг. 15A показывает еще один другой пример маски для SAO в угловой области слайса согласно разновидности 2 варианта 1 осуществления.
Фиг. 15B показывает еще один другой пример маски для SAO в угловой области слайса согласно разновидности 2 варианта 1 осуществления.
Фиг. 15C показывает еще один другой пример маски для SAO в угловой области слайса согласно разновидности 2 варианта 1 осуществления.
Фиг. 15D показывает еще один другой пример маски для SAO в угловой области слайса согласно разновидности 2 варианта 1 осуществления.
Фиг. 15E показывает еще один другой пример маски для SAO в угловой области слайса согласно разновидности 2 варианта 1 осуществления.
Фиг. 15F показывает еще один другой пример маски для SAO в угловой области слайса согласно разновидности 2 варианта 1 осуществления.
Фиг. 16 показывает позиционную взаимосвязь между средним пикселом, подвергнутым SAO, и окружающими пикселами согласно разновидности 2 варианта 1 осуществления.
Фиг. 17 показывает пример SAO-маски в 45° в угловой области слайса согласно разновидности 2 варианта 1 осуществления.
Фиг. 18 показывает пример SAO-маски в 135° в угловой области слайса согласно разновидности 2 варианта 1 осуществления.
Фиг. 19A является блок-схемой последовательности операций способа, иллюстрирующей способ декодирования изображений согласно аспекту настоящего изобретения.
Фиг. 19B является блок-схемой, иллюстрирующей конфигурацию устройства декодирования изображений согласно аспекту настоящего изобретения.
Фиг. 20A является блок-схемой последовательности операций способа, иллюстрирующей способ декодирования изображений согласно другому аспекту настоящего изобретения.
Фиг. 20B является блок-схемой, иллюстрирующей конфигурацию устройства декодирования изображений согласно другому аспекту настоящего изобретения.
Фиг. 21A является блок-схемой последовательности операций способа, иллюстрирующей способ кодирования изображений согласно аспекту настоящего изобретения.
Фиг. 21B является блок-схемой, иллюстрирующей конфигурацию устройства кодирования изображений согласно аспекту настоящего изобретения.
Фиг. 22A является блок-схемой последовательности операций способа, иллюстрирующей способ кодирования изображений согласно другому аспекту настоящего изобретения.
Фиг. 22B является блок-схемой, иллюстрирующей конфигурацию устройства кодирования изображений согласно другому аспекту настоящего изобретения.
Фиг. 23 показывает общую конфигурацию системы предоставления контента для реализации услуг распространения контента.
Фиг. 24 показывает общую конфигурацию цифровой широковещательной системы.
Фиг. 25 показывает блок-схему, иллюстрирующую пример конфигурации телевизионного приемника.
Фиг. 26 показывает блок-схему, иллюстрирующую пример конфигурации модуля воспроизведения/записи информации, который считывает и записывает информацию с и на носитель записи, который является оптическим диском.
Фиг. 27 показывает пример конфигурации носителя записи, который является оптическим диском.
Фиг. 28A показывает пример сотового телефона.
Фиг. 28B является блок-схемой, показывающей пример конфигурации сотового телефона.
Фиг. 29 иллюстрирует структуру мультиплексированных данных.
Фиг. 30 схематично показывает то, как каждый поток мультиплексируется в мультиплексированные данные.
Фиг. 31 показывает то, как видеопоток сохраняется в потоке PES-пакетов.
Фиг. 32 показывает структуру TS-пакетов и исходных пакетов в мультиплексированных данных.
Фиг. 33 показывает структуру данных PMT.
Фиг. 34 показывает внутреннюю структуру информации мультиплексированных данных.
Фиг. 35 показывает внутреннюю структуру информации атрибутов потока.
Фиг. 36 показывает этапы для идентификации видеоданных.
Фиг. 37 показывает пример конфигурации интегральной схемы для реализации способа кодирования движущихся изображений и способа декодирования движущихся изображений согласно каждому из вариантов осуществления.
Фиг. 38 показывает конфигурацию для переключения между частотами возбуждения.
Фиг. 39 показывает этапы для идентификации видеоданных и переключения между частотами возбуждения.
Фиг. 40 показывает пример таблицы поиска, в которой стандарты видеоданных ассоциированы с частотами возбуждения.
Фиг. 41A является схемой, показывающей пример конфигурации для совместного использования модуля процессора сигналов.
Фиг. 41B является схемой, показывающей другой пример конфигурации для совместного использования модуля процессора сигналов.
ПОДРОБНОЕ ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
БАЗОВАЯ ОСНОВА ФОРМИРОВАНИЯ ЗНАНИЙ НАСТОЯЩЕГО ИЗОБРЕТЕНИЯ
[0010] Относительно способа декодирования изображений и способа кодирования изображений согласно непатентному документу 1, раскрытому в разделе "Уровень техники", авторы изобретения обнаружили проблему, указываемую ниже.
[0011] Фиг. 1A иллюстрирует структуру изображения.
[0012] Изображение конфигурируется, по меньшей мере, из одного слайса, и как показывает фиг. 1A, включает в себя, например, три слайса: слайс s1, слайс s2 и слайс s3. Следует отметить, что "изображение" используется для того, чтобы означать то же, что и "кадр". Слайс состоит из по меньшей мере одной наибольшей единицы кодирования (LCU).
[0013] Каждый слайс имеет флаг управления границей (slice_loop_filter_across_slices_enabled_flag). Этот флаг управления границей представляет собой флаг для управления операцией контурной фильтрации (операцией внутриконтурной фильтрации) для границы слайса (границы слайса), к примеру, операцией фильтрации для удаления блочности и операцией адаптивного к выборке смещения (SAO). Эта операция контурной фильтрации выполняется до того, как отображается восстановленное изображение, используемое при формировании прогнозного изображения, или до того, как это восстановленное изображение сохраняется в буфере кадров. Операция фильтрации для удаления блочности представляет собой операцию для подавления искажения в виде блочности, вытекающего из поблочного кодирования или декодирования движущегося изображения. Эта операция фильтрации для удаления блочности повышает субъективное качество изображения. SAO представляет собой операцию, которая суммирует значение смещения с пиксельным значением каждого пиксела, включенного в восстановленное изображение, и включает в себя полосовое смещение и краевое смещение. Кроме того, эта SAO повышает как субъективное качество, так и объективное качество изображения. Следует отметить, что возможный вариант для операции контурной фильтрации, управляемой посредством флага управления границей, представляет собой границу слайса, но более конкретно, представляет собой по меньшей мере один пиксел около границы слайса.
[0014] Фиг. 1B иллюстрирует диапазон, обозначенный в качестве возможного варианта для операции фильтрации для удаления блочности, управляемой посредством флага управления границей.
[0015] Например, операция фильтрации для удаления блочности для верхней границы sb1 слайса для слайса s2 и левой границы sb2 слайса для слайса s2 управляется посредством флага управления границей для слайса s2. Другими словами, когда флаг управления границей=0, операция фильтрации для удаления блочности не выполняется для пикселов около границы sb1 и sb2 слайса (выборки). С другой стороны, когда флаг управления границей=1, операция фильтрации для удаления блочности выполняется для пикселов около границы sb1 слайса и границы sb2 слайса. Таким образом, операция фильтрации для удаления блочности включается и выключается в соответствии с флагом управления границей.
[0016] Фиг. 1C иллюстрирует диапазон, обозначенный в качестве возможного варианта для SAO, управляемой посредством флага управления границей.
[0017] Наряду с вышеописанной операцией фильтрации для удаления блочности, флаг управления границей для слайса s2 управляет SOA для верхней, левой и нижней границ sb1, sb2, sb3, sb4 и sb5 слайсов для слайса s2. Другими словами, когда флаг управления границей=0, SAO выполняется в соответствии с рабочим режимом, который не использует пикселы в других слайсах (слайсах s1, s3) (дополнение или режим дополнения), для пикселов в слайсе s2, которые находятся около этих границ слайсов. С другой стороны, когда флаг управления границей=1, SAO выполняется в соответствии с рабочим режимом, который дает возможность использования пикселов в других слайсах (слайсах s1, s3) (обычным режимом работы или обычным рабочим режимом), для пикселов в слайсе s2, которые находятся около этих границ слайсов. Таким образом, рабочий режим SAO переключается в соответствии с флагом управления границей.
[0018] Другими словами, можно задавать флаги управления границей с возможностью указывать различные значения для каждого слайса, и посредством задания флага управления границей равным 0, можно подавлять зависимость между слайсами, которая возникает в результате операции контурной фильтрации, в операции фильтрации для удаления блочности или SAO. Поскольку этот флаг управления границей допускает подавление зависимости между слайсами, он может быть использован для того, чтобы функционально выполнять параллельное кодирование или декодирование изображения либо операцию обновления, известную как постепенное обновление при декодировании (GDR).
[0019] Здесь, GDR означает, например, произвольный доступ, при котором обращаются к данным, не принимаемым посредством устройства декодирования изображений, и движущееся изображение постепенно восстанавливается во множестве изображений в четкие изображения.
[0020] Фиг. 2 является видом для иллюстрации GDR.
[0021] Когда GDR начинается для изображения p1, начальный слайс s1 изображения p1 кодируется только с внутренним прогнозированием. Другими словами, слайс s1 кодируется в режиме обновления. Как результат, слайс s1 кодируется без обращения к изображениям, предшествующим в порядке кодирования изображению p1. Этот тип слайса s1 представляет собой область, которая обновлена (в дальнейшем называемую "обновленной областью"). Кроме того, области изображения p1, отличные от слайса s1, представляют собой области, которые не обновлены (в дальнейшем называемые "необновленной областью").
[0022] Начальный слайс s1 изображения p2 кодируется посредством компенсации движения, в которой можно обращаться только к слайсу s1 изображения p1, либо посредством внутреннего прогнозирования. Другими словами, слайс s1 изображения p2 также кодируется в режиме обновления. Эта слайс s1 изображения p2 также представляет собой обновленную область. Обновленная область в изображении p2 увеличена.
[0023] Начальный слайс s1 и второй слайс s2 изображения p3 кодируются посредством компенсации движения, которая может обращаться только к слайсу s1 изображения p1 и слайсу s1 изображения p2, либо посредством внутреннего прогнозирования. Другими словами, слайс s1 и слайс s2 изображения p3 также кодируются в режиме обновления. Эти слайсы s1 и s2 изображения p3 также представляют собой обновленные области. Обновленная область в изображении p3 еще более увеличена. Другими словами, когда GDR начинается, обновленные области, включенные в изображения, постепенно увеличиваются по размеру в порядке кодирования изображений.
[0024] В конце GDR, должны быть обновлены все области изображения. Следовательно, GDR требует, по меньшей мере, времени, которое необходимо для того, чтобы обновлять все области изображения. Это время передается в устройство декодирования изображений в качестве информации, включающей в себя дополнительную улучшающую информацию (SEI).
[0025] Фиг. 3 является блок-схемой последовательности операций способа, иллюстрирующей способ кодирования изображений с вовлечением GDR.
[0026] Когда устройство кодирования изображений начинает кодирование с вовлечением GDR, устройство кодирования изображений сначала задает первый параметр управления (refreshed_LCUs_in_current_frame) равным 0 (этап S901). Затем, устройство кодирования изображений кодирует текущий слайс (текущий слайс, который должен быть кодирован) в режиме обновления (этап S902). Следует отметить, что в начале кодирования с вовлечением GDR, начальный слайс в изображении выбирается в качестве текущего слайса. Устройство кодирования изображений затем подсчитывает число LCU в текущего слайса (number_of_LCUs_in_current_slice) (этап S903).
[0027] После этого устройство кодирования изображений суммирует LCU-число с первым параметром управления (этап S904). Здесь, устройство кодирования изображений определяет то, меньше или равен либо нет этот первый параметр управления сумме (i) второго параметра управления, указывающего число LCU, кодированных в режиме обновления в предыдущем изображении (refreshed_LCUs_in_prev_frame), и (ii) дельты D (этап S905). Дельта D представляет собой параметр, используемый для того, чтобы управлять временем, требуемым для GDR. Когда значение этой дельты D является высоким, требуется только небольшое число изображений для того, чтобы обновлять все области одного изображения. Когда значение дельты D является низким, то требуется большее число изображений.
[0028] Когда устройство кодирования изображений определяет то, что первый параметр управления не меньше или равен вышеописанной сумме ("Нет" на этапе S905), устройство кодирования изображений кодирует оставшиеся области в изображении в режиме без обновления (этап S906). С другой стороны, когда устройство кодирования изображений определяет то, что первый параметр управления меньше или равен вышеописанной сумме ("Да" на этапе S905), устройство кодирования изображений определяет то, имеется или нет некодированный слайс в изображении (этап S907). Здесь, когда устройство кодирования изображений определяет то, что имеется некодированный слайс ("Да" на этапе S907), устройство кодирования изображений выбирает некодированный слайс в качестве текущего слайса (этап S908) и повторяет процесс от этапа S902.
[0029] Таким образом, когда устройство кодирования изображений начинает кодирование слайсов, устройство кодирования изображений должно определять то, должен текущий слайс кодироваться в режиме обновления или нет. Тем не менее, устройство кодирования изображений может выполнять это определение только для текущего слайса, другими словами, может выполнять это определение только в начале кодирования текущего слайса. Другими словами, когда устройство кодирования изображений кодирует текущий слайс, устройство кодирования изображений не может определять то, должен следующий слайс кодироваться в режиме обновления или нет. Это определение может выполняться только в начале кодирования следующего слайса.
[0030] Кроме того, в GDR, должна не допускаться зависимость между обновленными и необновленными областями. В связи с этим, с использованием флага управления границей в заголовке слайса, операция контурной фильтрации управляется для границ слайсов для слайса, принадлежащего заголовку слайса, чтобы предотвращать смешивание данных необновленной области с обновленной областью.
[0031] Здесь, в краевом смещении в SAO, каждый пиксел, обозначенный в качестве возможного варианта смещения, классифицируется как определенный класс посредством сравнения этого пиксела с двумя соседними пикселами. Каждый класс задается посредством индекса края.
[0032] Следовательно, когда SAO выполняется для пикселов около границы слайса для текущего слайса (текущих пикселов), возникают моменты времени, когда пикселы за пределами текущего слайса сравниваются с текущими пикселами в качестве пикселов, которые граничат с текущими пикселами. В этом случае, когда должно не допускаться сравнение с пикселами за пределами текущего слайса, флаг управления границей задается равным 0. Это задает индекс края равным 0, и вышеописанное сравнение не выполняется в отношении пикселов около границы слайса для текущего слайса (текущих пикселов).
[0033] Например, как показывает фиг. 1C, в SAO для пикселов около границы слайса в слайсе s2 (текущих пикселов), возникают моменты времени, когда пикселы за пределами слайса s2 (пикселы в слайсе s1 или слайсе s3) используются в качестве возможных вариантов сравнения. В этом случае, когда должно не допускаться использование пикселов за пределами слайса s2 в качестве возможных вариантов сравнения, флаг управления границей для слайса s2 задается равным 0. Это задает индекс края равным 0, и пикселы за пределами слайса s2 не используются в качестве возможных вариантов сравнения для пикселов около границы слайса для слайса s2 (текущих пикселов).
[0034] В SAO, когда индекс края для текущего пиксела равен 0, значение смещения 0 суммируется с пиксельным значением этого текущего пиксела. Таким образом, в SAO, процесс суммирования значения смещения 0 с пиксельным значением текущего пиксела без сравнения текущего пиксела с двумя соседними пикселами называется "дополнением (режимом дополнения)". Другими словами, дополнение представляет собой один рабочий режим SAO и рабочий режим, который не использует пикселы из другого слайса относительно текущего слайса. В SAO, это дополнение позволяет не допускать смешивания данных необновленной области с обновленной областью. Следует отметить, что в SAO, рабочий режим, который сравнивает текущий пиксел с двумя пикселами, граничащими с текущим пикселом, чтобы задавать индекс края для этого текущего пиксела, называется "обычным режимом работы (обычным рабочим режимом)".
[0035] Фиг. 4 показывает слайс, обновленный посредством GDR.
[0036] Как показывает фиг. 4, обновляются слайс s1 и слайс s2, и не обновляются слайс s3 и слайс s4.
[0037] В этом случае, требуется, чтобы не возникала зависимость по данным из слайса s3 в необновленной области для слайса s2 в обновленной области. Другими словами, требуется, чтобы операция контурной фильтрации для слайса s2 не обращалась к пикселам в слайсе s3. Это предотвращает "загрязнение" данных из слайса s3 в необновленной области для слайса s2 в обновленной области.
[0038] Фиг. 5 иллюстрирует отношение между флагами управления границей для слайсов и операцией контурной фильтрации для границ слайсов. Следует отметить, что BD на фиг. 5 означает операцию фильтрации для удаления блочности.
[0039] Чтобы удовлетворять такое требование, что не возникает зависимость по данным из слайса s3 для слайса s2, показанная на фиг. 4, флаг управления границей для слайса s3 должен задаваться равным 0, и должна выключаться операция фильтрации для удаления блочности для границы слайса между слайсом s2 и слайсом s3. Кроме того, флаг управления границей для слайса s2 должен задаваться равным 0, и SAO для слайса s2 не должна обращаться к пикселам в слайсе s3. Это позволяет не допускать возникновения зависимости по данным из слайса s3 для слайса s2 в результате операции контурной фильтрации.
[0040] Тем не менее, как проиллюстрировано с использованием фиг. 3, невозможно определять то, слайс s3 должен кодироваться в режиме без обновления либо не при кодировании слайса s2.
[0041] Другими словами, невозможно определять то, какой из режима обновления и режима без обновления должен быть использован для того, чтобы кодировать следующий слайс, если не после того, как кодируется заголовок слайса для текущего слайса, и завершено все кодирование для этого текущего слайса. В связи с этим, после того как кодируется заголовок слайса для текущего слайса, и завершено все кодирование для этого текущего слайса, возникают моменты времени, когда необходимо модифицировать флаг управления границей в заголовке слайса для текущего слайса, когда определяется то, что следующий слайс (например, слайс s3) должен быть кодирован в режиме без обновления. В этом случае, это означает то, что кодирование заголовка слайса требует двух проходов, и это является проблематичным в том, что оно повышает затраты на реализацию и повышает нагрузку по обработке. Другими словами, сохранение всех обработанных слайсов в запоминающем устройстве требуется для того, чтобы модифицировать заголовок слайса впоследствии, и как результат, возрастают затраты на реализацию, главным образом, запоминающего устройства.
[0042] Кроме того, в вариантах применения с небольшим временем задержки, таких как телевизионные системы, слайсы дополнительно фрагментируются на меньшие пакеты, чтобы уменьшать время задержки при передаче. В этом типе варианта применения, слайс дополнительно фрагментируется на меньшие единицы фрагментации, и единицы фрагментации передаются в устройство декодирования изображений до того, как завершается все кодирование для слайса.
[0043] Тем не менее, как описано выше, после того как кодируется весь слайс, возникают моменты времени, когда необходимо модифицировать флаг управления границей. Как результат, фрагментация слайса на меньшие единицы не позволяет уменьшать время задержки при передаче, поскольку невозможно быстро передавать первую единицу фрагментации, которая включает в себя заголовок слайса, который, возможно, должен быть модифицирован впоследствии.
[0044] Кроме того, в случае режима работы с несколькими слайсами, который осуществляется параллельно с декодированием множества слайсов, ожидание кодирования следующего слайса требуется для того, чтобы выполнять SAO для текущего слайса, что создает такую проблему, что возрастает нагрузка по обработке. Например, когда флаг управления границей текущего слайса указывает 1, необходимо выполнять SAO посредством обычного режима работы для пикселов в текущего слайса, которые находятся около нижней и правой границ слайсов для текущего слайса. Тем не менее, чтобы выполнять эту SAO, требуются пикселы в следующего слайса, противоположные вышеописанным нижней и правой границам слайсов для текущего слайса. Как результат, независимо от того, какое значение указывает флаг управления границей для следующего слайса (0 или 1), SAO для текущего слайса не может выполняться до тех пор, пока не будет выполнено кодирование для следующего слайса.
[0045] Как описано в данном документе, в способе декодирования изображений и способе кодирования изображений согласно непатентному документу 1 имеется проблема в том, что нагрузка по обработке является большой.
[0046] Чтобы разрешать эту проблему, способ декодирования изображений согласно аспекту настоящего изобретения представляет собой способ декодирования изображений для декодирования кодированного изображения, причем способ декодирования изображений включает в себя: получение флага управления границей для совместного управления операцией фильтрации для удаления блочности и операцией адаптивного к выборке смещения для границы слайса у текущего слайса, который должен быть декодирован, включенного в кодированное изображение; декодирование текущего слайса; выполнение операции фильтрации для удаления блочности на основе флага управления границей только над по меньшей мере одной из верхней границы слайса или левой границы слайса из всех границ слайса у текущего слайса, который декодирован; и выполнение операции адаптивного к выборке смещения, зависящей от флага управления границей, только над по меньшей мере одной из верхней границы слайса или левой границы слайса из всех границ слайса у текущего слайса, который декодирован.
[0047] Вследствие этого, граница слайса, обозначенная в качестве возможного варианта для операции адаптивного к выборке смещения (SAO), управляемой посредством флага управления границей (slice_loop_filter_across_slices_enabled_flag) для текущего слайса, идентично операции фильтрации для удаления блочности, ограничена, по меньшей мере, только одной из верхней или нижней границ слайсов из всех границ слайса у текущего слайса. В связи с этим, даже если флаг управления границей для текущего слайса указывает 1, если флаг управления границей для следующего слайса указывает 0, операция контурной фильтрации (операция фильтрации для удаления блочности и SAO) может выполняться для текущего слайса, и текущий слайс может выводиться или отображаться без необходимости ожидать следующего слайса, который должен быть кодирован. Это позволяет снижать нагрузку по обработке.
[0048] Кроме того, в способе кодирования изображений, можно выполнять процесс, идентичный процессу операции контурной фильтрации с использованием флага управления границей в способе декодирования изображений согласно аспекту настоящего изобретения. В этом случае, операция контурной фильтрации для границ слайсов (нижней границы слайса и правой границы слайса для текущего слайса) между текущим слайсом и следующим слайсом не управляется посредством флага управления границей для текущего слайса. В связи с этим, когда выполняется кодирование изображений с вовлечением GDR, нет необходимости модифицировать флаг управления границей, кодированный перед текущим слайсом, после того как кодирован текущий слайс, даже если известно, что следующий слайс представляет собой необновленную область. Это позволяет снижать нагрузку по обработке.
[0049] Чтобы разрешать эту проблему, способ декодирования изображений согласно аспекту настоящего изобретения представляет собой способ декодирования изображений для декодирования кодированного изображения, причем способ декодирования изображений включает в себя: получение флага управления границей для управления операцией адаптивного к выборке смещения для границы слайса у текущего слайса, который должен быть декодирован, включенного в кодированное изображение; декодирование текущего слайса; и совместное выполнение операции адаптивного к выборке смещения в соответствии с флагом управления границей над по меньшей мере одним пикселом в текущем слайсе, который декодирован, и над по меньшей мере одним пикселом в другом слайсе, который декодирован, причем пикселы находятся около по меньшей мере одной из верхней границы слайса или левой границы слайса у текущего слайса.
[0050] Вследствие этого, операция адаптивного к выборке смещения (SAO), управляемая посредством флага управления границей (slice_loop_filter_across_slices_enabled_flag) для текущего слайса, идентично операции фильтрации для удаления блочности, выполняется совместно не только для пикселов в текущего слайса, которые находятся около по меньшей мере одной из верхней или нижней границ слайсов для текущего слайса, но также и для пикселов в другом слайсе. В связи с этим, даже если флаг управления границей для текущего слайса указывает 1, если флаг управления границей для следующего слайса указывает 0, операция контурной фильтрации (операция фильтрации для удаления блочности и SAO) может выполняться для текущего слайса, и текущий слайс может выводиться или отображаться без необходимости ожидать следующего слайса, который должен быть кодирован. Это позволяет снижать нагрузку по обработке.
[0051] Кроме того, в способе кодирования изображений, можно выполнять процесс, идентичный процессу операции контурной фильтрации с использованием флага управления границей в способе декодирования изображений согласно аспекту настоящего изобретения. Другими словами, операция контурной фильтрации для границ слайсов (нижней границы слайса и правой границы слайса для текущего слайса) между текущим слайсом и следующим слайсом не управляется посредством флага управления границей для текущего слайса. В связи с этим, когда выполняется кодирование изображений с вовлечением GDR, нет необходимости модифицировать флаг управления границей для текущего слайса, после того как кодирован текущий слайс, даже если известно, что следующий слайс представляет собой необновленную область. Это позволяет снижать нагрузку по обработке.
[0052] Кроме того, при выполнении операции адаптивного к выборке смещения, рабочий режим операции адаптивного к выборке смещения может переключаться в соответствии с флагом управления границей, и операция адаптивного к выборке смещения может выполняться согласно рабочему режиму, выбранному в результате переключения. Например, при выполнении операции адаптивного к выборке смещения, когда флаг управления границей указывает 0, рабочий режим операции адаптивного к выборке смещения может переключаться на режим дополнения, который суммирует значение смещения 0 с пикселом, обозначенным в качестве возможного варианта смещения, и операция адаптивного к выборке смещения может выполняться согласно режиму дополнения. Более конкретно, операция адаптивного к выборке смещения может включать в себя множество рабочих режимов, классифицированных на основе характеристик на краю пиксела, обозначенного в качестве возможного варианта смещения, причем каждому из упомянутого множества рабочих режимов выделяется индекс края, и при выполнении операции адаптивного к выборке смещения, когда флаг управления границей указывает 0, индекс края может задаваться равным 0, чтобы переключать рабочий режим операции адаптивного к выборке смещения на режим дополнения.
[0053] Вследствие этого, когда флаг управления границей равен 0, режим дополнения позволяет инструктировать фактически не функционировать операции адаптивного к выборке смещения. Поскольку операция адаптивного к выборке смещения фактически не выполняется для по меньшей мере одной из верхней границы слайса или левой границы слайса у текущего слайса, другими словами, для пикселов около по меньшей мере одной из верхней или левой границ слайсов, можно подавлять зависимость по данным между (i) другим слайсом, противоположным по меньшей мере одной из верхней или левой границ слайсов для текущего слайса, и (ii) текущим слайсом. Вследствие этого, можно легко осуществлять режим работы с несколькими слайсами, выполняемый параллельно с декодированием множества слайсов.
[0054] Кроме того, операция фильтрации для удаления блочности может переключаться между включением и выключением на основе флага управления границей, и операция фильтрации для удаления блочности может выполняться только тогда, когда включается операция фильтрации для удаления блочности.
[0055] Вследствие этого, например, когда флаг управления границей равен 0, можно не допускать функционирования операции фильтрации для удаления блочности посредством выключения операции фильтрации для удаления блочности. Поскольку операция фильтрации для удаления блочности не выполняется для по меньшей мере одной из верхней границы слайса или левой границы слайса у текущего слайса, можно подавлять зависимость по данным между (i) другим слайсом, противоположным по меньшей мере одной из верхней или левой границ слайсов для текущего слайса, и (ii) текущим слайсом. Вследствие этого, можно легко осуществлять режим работы с несколькими слайсами, выполняемый параллельно с декодированием множества слайсов.
[0056] Кроме того, когда флаг управления границей указывает 0, операция фильтрации для удаления блочности может выключаться, чтобы обходить операцию фильтрации для удаления блочности, и при выполнении операции адаптивного к выборке смещения, рабочий режим операции адаптивного к выборке смещения может переключаться на режим дополнения, который суммирует значение смещения 0 с пиксельным значением, и операция адаптивного к выборке смещения может выполняться согласно режиму дополнения.
[0057] Вследствие этого, когда флаг управления границей равен 0, поскольку операция фильтрации для удаления блочности не выполняется, и операция адаптивного к выборке смещения фактически не выполняется для по меньшей мере одной из верхней границы слайса или левой границы слайса у текущего слайса, можно дополнительно подавлять зависимость по данным между (i) другим слайсом, противоположным по меньшей мере одной из верхней или левой границ слайсов для текущего слайса, и (ii) текущим слайсом. Вследствие этого, можно еще проще осуществлять режим работы с несколькими слайсами, выполняемый параллельно с декодированием множества слайсов.
[0058] Кроме того, когда пиксел, обозначенный в качестве возможного варианта для операции адаптивного к выборке смещения, зависящей от флага управления границей, представляет собой конкретный пиксел, также обозначенный в качестве возможного варианта для операции адаптивного к выборке смещения в зависимости от другого флага управления границей для другого слайса, при выполнении операции адаптивного к выборке смещения, когда по меньшей мере один из флага управления границей или другого флага управления границей указывает 0, рабочий режим операции адаптивного к выборке смещения может переключаться на режим дополнения, и операция адаптивного к выборке смещения может выполняться для конкретного пиксела согласно режиму дополнения.
[0059] Вследствие этого, когда множество флагов управления границами для одного пиксела (конкретного пиксела) конкурируют на предмет управления операцией адаптивного к выборке смещения, приоритет имеет флаг управления границей, указывающий 0, из этих флагов управления границами. Как результат, можно надлежащим образом выполнять операцию адаптивного к выборке смещения для конкретного пиксела.
[0060] Чтобы разрешать вышеописанную проблему, способ кодирования изображений согласно аспекту настоящего изобретения представляет собой способ кодирования изображений для кодирования изображения, причем способ кодирования изображений включает в себя: кодирование флага управления границей для совместного управления операцией фильтрации для удаления блочности и операцией адаптивного к выборке смещения для границы слайса у текущего слайса, который должен быть кодирован, включенного в изображение; кодирование текущего слайса; восстановление текущего слайса из данных, сгенерированных посредством кодирования текущего слайса; выполнение операции фильтрации для удаления блочности на основе флага управления границей только над по меньшей мере одной из верхней границы слайса или левой границы слайса из всех границ слайса у текущего слайса, который восстановлен; и выполнение операции адаптивного к выборке смещения, зависящей от флага управления границей, только над по меньшей мере одной из верхней границы слайса или левой границы слайса из всех границ слайса у текущего слайса, который восстановлен.
[0061] Вследствие этого, граница слайса, обозначенная в качестве возможного варианта для операции адаптивного к выборке смещения (SAO), управляемой посредством флага управления границей (slice_loop_filter_across_slices_enabled_flag) для текущего слайса, идентично операции фильтрации для удаления блочности, ограничена, по меньшей мере, только одной из верхней или нижней границ слайсов из всех границ слайсов для восстановленного текущего слайса. В связи с этим, даже если флаг управления границей для текущего слайса указывает 1, если флаг управления границей для следующего слайса указывает 0, без ожидания восстановления следующего слайса, операция контурной фильтрации (операция фильтрации для удаления блочности и SAO) может выполняться для восстановленного текущего слайса, и восстановленная текущий слайс может быть использована при формировании прогнозного изображения. Это позволяет снижать нагрузку по обработке.
[0062] Кроме того, операция контурной фильтрации для границ слайсов (нижней границы слайса и правой границы слайса для текущего слайса) между восстановленным текущим слайсом и восстановленным следующим слайсом не управляется посредством флага управления границей для текущего слайса. В связи с этим, когда выполняется кодирование изображений с вовлечением GDR, нет необходимости модифицировать флаг управления границей, кодированный перед текущим слайсом, после того как кодирован текущий слайс, даже если известно, что следующий слайс представляет собой необновленную область. Это позволяет снижать нагрузку по обработке.
[0063] Чтобы разрешать вышеописанную проблему, способ кодирования изображений согласно аспекту настоящего изобретения представляет собой способ кодирования изображений для кодирования изображения, причем способ кодирования изображений включает в себя: кодирование флага управления границей для управления операцией адаптивного к выборке смещения для границы слайса у текущего слайса, который должен быть кодирован, включенного в изображение; кодирование текущего слайса; восстановление текущего слайса из данных, сгенерированных посредством кодирования текущего слайса; и совместное выполнение операции адаптивного к выборке смещения в соответствии с флагом управления границей над по меньшей мере одним пикселом в текущем слайсе, который восстановлен, и над по меньшей мере одним пикселом в другом слайсе, который восстановлен, причем пикселы находятся около по меньшей мере одной из верхней границы слайса или левой границы слайса у текущего слайса.
[0064] Вследствие этого, операция адаптивного к выборке смещения (SAO), управляемая посредством флага управления границей (slice_loop_filter_across_slices_enabled_flag) для текущего слайса, идентично операции фильтрации для удаления блочности, выполняется совместно не только для пикселов в восстановленной текущего слайса, которые находятся около по меньшей мере одной из верхней или нижней границ слайсов для восстановленного текущего слайса, но также и для пикселов в другом восстановленном слайсе, которые находятся около по меньшей мере одной из верхней или нижней границ слайсов для восстановленного текущего слайса. В связи с этим, даже если флаг управления границей для текущего слайса указывает 1, если флаг управления границей для следующего слайса указывает 0, без ожидания восстановления следующего слайса, операция контурной фильтрации (операция фильтрации для удаления блочности и SAO) может выполняться для восстановленного текущего слайса, и восстановленная текущий слайс может быть использована при формировании прогнозного изображения. Это позволяет снижать нагрузку по обработке.
[0065] Кроме того, операция контурной фильтрации для пикселов около границ слайсов (нижней границы слайса и правой границы слайса для текущего слайса) между восстановленным текущим слайсом и восстановленным следующим слайсом не управляется посредством флага управления границей для текущего слайса. В связи с этим, когда выполняется кодирование изображений с вовлечением GDR, нет необходимости модифицировать флаг управления границей, кодированный перед текущим слайсом, после того как кодирован текущий слайс, даже если известно, что следующий слайс представляет собой необновленную область. Это позволяет снижать нагрузку по обработке.
[0066] Эти общие и конкретные аспекты могут быть реализованы с использованием системы, способа, интегральной схемы, компьютерной программы или считываемого компьютером носителя записи, такого как CD-ROM, либо любой комбинации систем, способов, интегральных схем, компьютерных программ или считываемых компьютером носителей записи.
[0067] В дальнейшем в этом документе, подробно описываются варианты осуществления со ссылкой на чертежи.
[0068] Каждый из вариантов осуществления, описанных ниже, показывает общий или конкретный пример. Числовые значения, формы, материалы, структурные элементы, компоновка и соединение структурных элементов, этапы, порядок обработки этапов и т.д., показанные в следующих вариантах осуществления, являются просто примерами, и, следовательно, не ограничивают объем формулы изобретения. Следовательно, из структурных элементов в следующих вариантах осуществления, структурные элементы, не изложенные в любом из независимых пунктов формулы изобретения, описываются как произвольные структурные элементы. Кроме того, в нижеприведенном описании, возникают случаи, в которых термин "кодирование (coding)" используется для того, чтобы означать "кодирование (encoding)".
[0069] ПЕРВЫЙ ВАРИАНТ ОСУЩЕСТВЛЕНИЯ
Фиг. 6 является блок-схемой, иллюстрирующей конфигурацию устройства кодирования изображений согласно этому варианту осуществления.
[0070] Устройство 100 кодирования изображений включает в себя модуль 101 вычитания, модуль 102 преобразования, модуль 103 квантования, модуль 104 энтропийного кодирования, модуль 105 обратного квантования, модуль 106 обратного преобразования, сумматор 107, фильтр 109 удаления блочности, SAO-модуль 110, модуль 111 управления границами и модуль 112 прогнозирования.
[0071] Для каждого блока, включенного в движущееся изображение, модуль 101 вычитания вычисляет, в качестве разностного изображения, разность между блоком и прогнозным изображением, сформированным посредством модуля 112 прогнозирования.
[0072] Модуль 102 преобразования формирует блок коэффициентов, включающий в себя по меньшей мере один частотный коэффициент, посредством выполнения ортогонального преобразования, такого как косинусное преобразование, для разностного изображения.
[0073] Модуль 103 квантования квантует каждый частотный коэффициент, включенный в блок коэффициентов, согласно параметру квантования (QP), чтобы формировать блок квантования, включающий в себя по меньшей мере одно значение квантования.
[0074] Модуль 104 энтропийного кодирования формирует поток битов посредством энтропийного кодирования каждого значения квантования, включенного в блок квантования, вышеописанного параметр квантования и флага управления границей.
[0075] Модуль 105 обратного квантования восстанавливает блок коэффициентов, включающий в себя по меньшей мере один частотный коэффициент, посредством обратного квантования вышеописанного блока квантования. Следует отметить, что этот блок коэффициентов не является идентичным блоку коэффициентов, сформированному посредством модуля 102 преобразования, и включает в себя предел допустимой ошибки квантования.
[0076] Модуль 106 обратного преобразования формирует декодированное разностное изображение посредством выполнения обратного ортогонального преобразования, такого как обратное дискретное косинусное преобразование, для блока коэффициентов, восстановленного посредством модуля 105 обратного квантования.
[0077] Сумматор 107 формирует восстановленное изображение посредством суммирования декодированного разностного изображения и прогнозного изображения, сформированного посредством модуля 112 прогнозирования.
[0078] Фильтр 109 удаления блочности получает по меньшей мере одно восстановленное изображение из сумматора 107 и выполняет операцию фильтрации для удаления блочности для данной границы по меньшей мере одного восстановленного изображения. Здесь, фильтр 109 удаления блочности выполняет операцию фильтрации для удаления блочности для данной границы слайса для текущего слайса в соответствии с управлением посредством модуля 111 управления границами.
[0079] Когда SAO-модуль 110 получает по меньшей мере одно восстановленное изображение из фильтра 109 удаления блочности, SAO-модуль 110 выполняет SAO для полученного по меньшей мере одного восстановленного изображения. Здесь, SAO-модуль 110 выполняет SAO для данной границы слайса для текущего слайса, состоящей из этих восстановленных изображений, в соответствии с управлением посредством модуля 111 управления границами.
[0080] Модуль 112 прогнозирования формирует прогнозное изображение текущего блока с использованием текущего слайса, для которой выполнена SAO, и выводит прогнозное изображение в модуль 101 вычитания и сумматор 107.
[0081] Фиг. 7A-7C служат для иллюстрации управления границами согласно этому варианту осуществления.
[0082] Модуль 111 управления границами задает флаг управления границей для текущего слайса (текущего слайса, который должен быть кодирован).
[0083] Флаг управления границей (slice_loop_filter_across_slices_enable_flag) служит для совместного управления каждой операцией контурной фильтрации из операции фильтрации для удаления блочности и SAO. Другими словами, флаг управления границей используется для того, чтобы включать и выключать операцию фильтрации для удаления блочности и переключать рабочий режим SAO между обычным режимом работы (обычным рабочим режимом) и дополнением (режим дополнения).
[0084] Как показывает фиг. 7A, граница слайса, обозначенная в качестве возможного варианта для операции фильтрации для удаления блочности, управляемой посредством флага управления границей согласно этому варианту осуществления, представляет собой по меньшей мере одну из верхней границы слайса или левой границы слайса из всех границ слайса у текущего слайса, соответствующей флагу управления границей. Более конкретно, когда текущий слайс представляет собой слайс s2, на основе флага управления границей для слайса s2, операция фильтрации для удаления блочности выполняется только для верхней границы sb1 слайса и левой границы sb2 слайса из всех границ sb1-sb5 слайсов для слайса s2. Следует отметить, что когда текущий слайс имеет верхнюю границу слайса и левую границу слайса, эти границы слайсов становятся возможными вариантами для операции фильтрации для удаления блочности, а когда текущий слайс имеет только одну из этих границ слайсов, эта одна граница слайса становится возможным вариантом для операции фильтрации для удаления блочности. Кроме того, операция фильтрации для удаления блочности выполняется для по меньшей мере одного пиксела в текущего слайса, который находится около границы слайса, и для по меньшей мере одного пиксела в другом слайсе около границы слайса.
[0085] Как показывает фиг. 7B, границы слайсов, обозначенные в качестве возможных вариантов для SAO, управляемой посредством флага управления границей согласно этому варианту осуществления, представляют собой идентичные границы слайсов, обозначенные в качестве возможных вариантов для операции фильтрации для удаления блочности. Другими словами, граница слайса, обозначенная в качестве возможного варианта для SAO, представляет собой по меньшей мере одну из верхней границы слайса или левой границы слайса из всех границ слайса у текущего слайса, соответствующей флагу управления границей. Более конкретно, когда текущий слайс представляет собой слайс s2 на основе флага управления границей для слайса s2, SAO выполняется только для верхней границы sb1 слайса и левой границы sb2 слайса из всех границ sb1-sb5 слайсов для слайса s2. Следует отметить, что когда текущий слайс имеет верхнюю границу слайса и левую границу слайса, эти границы слайсов становятся возможными вариантами для SAO, а когда текущий слайс имеет только одну из этих границ слайсов, эта одна граница слайса становится возможным вариантом для SAO. Кроме того, аналогично операции фильтрации для удаления блочности, SAO выполняется совместно для по меньшей мере одного пиксела в текущего слайса, который находится около границы слайса, и для по меньшей мере одного пиксела в другом слайсе около границы слайса.
[0086] Как показывает фиг. 7C, операция фильтрации для удаления блочности и SAO для окрестности границы слайса между слайсом s1 и слайсом s2, другими словами, для пикселов около верхней и левой границ слайсов для слайса s2, управляются посредством флага управления границей для слайса s2. Например, когда флаг управления границей=1, операция фильтрации для удаления блочности, выполняемая посредством фильтра 109 удаления блочности, включается, и рабочий режим SAO, выполняемой посредством SAO-модуля 110, задается как обычный режим работы. Другими словами, фильтр 109 удаления блочности выполняет операцию фильтрации для удаления блочности, и SAO-модуль 110 выполняет SAO согласно обычному режиму работы для пикселов в слайсе s2, которые находятся около верхней и левой границ слайсов для слайса s2, и пикселов в слайсе s1, которые находятся около верхней и левой границ слайсов для слайса s2.
[0087] Кроме того, операция фильтрации для удаления блочности и SAO для окрестности границы слайса между слайсом s2 и слайсом s3, другими словами, для пикселов в слайсе s3 и пикселов в слайсе s2, которые находятся около верхней и левой границ слайсов для слайса s3, управляются посредством флага управления границей для слайса s3. Например, когда флаг управления границей=0, операция фильтрации для удаления блочности, выполняемая посредством фильтра 109 удаления блочности, выключается, и рабочий режим SAO, выполняемой посредством SAO-модуля 110, задается как дополнение. Другими словами, фильтр 109 удаления блочности не выполняет операцию фильтрации для удаления блочности, и SAO-модуль 110 выполняет SAO согласно дополнению для пикселов в слайсе s3, которые находятся около верхней и левой границ слайсов для слайса s3, и пикселов в слайсе s2, которые находятся около верхней и левой границ слайсов для слайса s3.
[0088] Более конкретно, SAO-модуль 110 выполняет дополнение для пикселов в слайсе s3 и слайсе s2, которые находятся около вышеописанных границ в результате задания индекса края равным 0. Следует отметить, что поскольку имеется вероятность того, что SAO-модуль 110 обращается к пикселам в слайсе s3 при выполнении SAO для пикселов в слайсе s2, которые находятся около вышеописанных границ слайсов, SAO-модуль 110 выполняет SAO согласно дополнению для этих пикселов в слайсе s2. Кроме того, аналогично пикселам в слайсе s2, поскольку имеется вероятность того, что SAO-модуль 110 обращается к пикселам в слайсе s2 при выполнении SAO для пикселов в слайсе s3, которые находятся около вышеописанных границ слайсов, SAO-модуль 110 выполняет SAO согласно дополнению для этих пикселов в слайсе s3.
[0089] Таким образом, в этом варианте осуществления, аналогично границе слайса, обозначенной в качестве возможного варианта для операции фильтрации для удаления блочности, SAO-модуль 110 выполняет SAO только для верхней и левой границ слайсов из границ слайсов для текущего слайса, в соответствии с флагом управления границей для текущего слайса. Как результат, устройство 100 кодирования изображений может выполнять кодирование с вовлечением GDR без необходимости модифицировать заголовок слайса после того, как устройство 100 кодирования изображений кодирует все LCU, включенные в слайс.
[0090] Кроме того, поскольку переключение операции контурной фильтрации не выполняется для границы слайса между слайсом s1 и слайсом s2 и для границы слайса между слайсом s3 и слайсом s4, можно повышать качество изображений на этих границах слайсов.
[0091] Фиг. 8 служит для более подробной иллюстрации управления границами согласно этому варианту осуществления.
[0092] Например, как показывает фиг. 8, в результате GDR, слайсы s1 и слайсы s2 представляют собой обновленные области, а слайс s3 и слайс s4 представляют собой необновленные области.
[0093] В этом случае, в этом варианте осуществления, посредством просто задания флага управления границей для слайса s3 равным 0, можно не допускать возникновения зависимости по данным между обновленной областью и необновленной областью, даже если флаги управления границами для других трех слайсов задаются равными 1.
[0094] Как результат, нет необходимости делать операцию контурной фильтрации нефункциональной, так что операция фильтрации для удаления блочности выключается, и SAO задается как дополнение для границы слайса между слайсом s1 и слайсом s2 и границы слайса между слайсом s3 и слайсом s4.
[0095] Таким образом, согласно этому варианту осуществления, флаг управления границей для текущего слайса используется для того, чтобы совместно управлять операцией фильтрации для удаления блочности и SAO только для верхней границы слайса и левой границы слайса из границ слайсов для текущего слайса.
[0096] Фиг. 9 является блок-схемой последовательности операций способа, иллюстрирующей операцию обработки устройства 100 кодирования изображений согласно этому варианту осуществления.
[0097] Во-первых, модуль 111 управления границами устройства 100 кодирования изображений определяет флаг управления границей для текущего слайса, и модуль 104 энтропийного кодирования энтропийно кодирует флаг управления границей (этап S101). Затем, устройство 100 кодирования изображений кодирует текущий слайс и формирует восстановленное изображение для текущего слайса из данных, сгенерированных в результате кодирования текущего слайса (этап S102). Затем, модуль 111 управления границами определяет то, равен или нет флаг управления границей, определенный на этапе S101, 0 (этап S103). Здесь, когда модуль 111 управления границами определяет то, что флаг управления границей равен 0 ("Да" на этапе S103), модуль 111 управления границами управляет фильтром 109 удаления блочности, чтобы выключить операцию фильтрации для удаления блочности для верхней и левой границ слайсов для текущего слайса. Кроме того, модуль 111 управления границами управляет SAO-модулем 110, чтобы задавать рабочий режим SAO для этих границ слайсов как дополнение (этапа S104). С другой стороны, когда модуль 111 управления границами определяет то, что флаг управления границей равен 1 ("Нет" на этапе S103), модуль 111 управления границами управляет фильтром 109 удаления блочности, чтобы включить операцию фильтрации для удаления блочности для вышеописанных верхней и левой границ слайсов (этапе S105). Затем, фильтр 109 удаления блочности выполняет операцию фильтрации для удаления блочности для вышеописанных верхней и левой границ слайсов (этап S106).
[0098] Затем, после того, как закончена обработка на этапе S104 и этапе S106, SAO-модуль 110 выполняет SAO для вышеописанных верхней и левой границ слайсов (этап S107). Следует отметить, что в это время, когда рабочий режим SAO на этапе S104 задается как дополнение, SAO выполняется в соответствии с этим дополнением.
[0099] Устройство 100 кодирования изображений затем определяет то, имеется или нет слайс, который не кодирован в текущем изображении (этап S108). Здесь, если устройство 100 кодирования изображений определяет то, что имеется слайс, который не кодирован ("Да" на этапе S108), устройство 100 кодирования изображений выбирает этот некодированный слайс в качестве нового текущего слайса (этап S109) и повторяет обработку от этапа S101.
[0100] Следует отметить, что операция контурной фильтрации управляется только для вышеописанных верхней и левой границ слайсов из всех границ слайса у текущего слайса. Кроме того, если одна из верхней и левой границ слайсов не присутствует, операция контурной фильтрации управляется только для одной из границ слайсов. Кроме того, для границ слайсов, обозначенных в качестве возможных вариантов для операции контурной фильтрации, операция контурной фильтрации выполняется для пикселов около и с обеих сторон от границ слайсов.
[0101] Таким образом, в способе кодирования изображений согласно этому варианту осуществления, граница слайса, обозначенная в качестве возможного варианта для операции адаптивного к выборке смещения (SAO), управляемой посредством флага управления границей (slice_loop_filter_across_slices_enabled_flag) для текущего слайса, идентично операции фильтрации для удаления блочности, ограничена, по меньшей мере, только одной из верхней или нижней границ слайсов из всех границ слайсов для восстановленного текущего слайса. Кроме того, операция адаптивного к выборке смещения (SAO), управляемая посредством флага управления границей для текущего слайса, идентично операции фильтрации для удаления блочности, выполняется совместно не только для пикселов в восстановленной текущего слайса, которые находятся около по меньшей мере одной из верхней или нижней границ слайсов для восстановленного текущего слайса, но также и для пикселов в другом восстановленном слайсе, которые находятся около по меньшей мере одной из верхней или нижней границ слайсов для восстановленного текущего слайса.
[0102] В связи с этим, даже если флаг управления границей для текущего слайса указывает 1, если флаг управления границей для следующего слайса указывает 0, без ожидания восстановления следующего слайса, операция контурной фильтрации (операция фильтрации для удаления блочности и SAO) может выполняться для восстановленного текущего слайса, и восстановленная текущий слайс может быть использована при формировании прогнозного изображения. Это позволяет снижать нагрузку по обработке.
[0103] Кроме того, операция контурной фильтрации для границ слайсов (нижней границы слайса и правой границы слайса для текущего слайса) между восстановленным текущим слайсом и восстановленным следующим слайсом не управляется посредством флага управления границей для текущего слайса. В связи с этим, когда выполняется кодирование изображений с вовлечением GDR, нет необходимости модифицировать флаг управления границей, кодированный перед текущим слайсом, после того как кодирован текущий слайс, даже если известно, что следующий слайс представляет собой необновленную область. Это позволяет снижать нагрузку по обработке.
[0104] Фиг. 10 является блок-схемой, иллюстрирующей конфигурацию устройства декодирования изображений согласно этому варианту осуществления.
[0105] Устройство 200 декодирования изображений включает в себя модуль 204 энтропийного декодирования, модуль 205 обратного квантования, модуль 206 обратного преобразования, сумматор 207, фильтр 209 удаления блочности, SAO-модуль 210, модуль 211 управления границами и модуль 212 прогнозирования.
[0106] Модуль 204 энтропийного декодирования получает поток битов, показывающий кодированное движущееся изображение, и энтропийно декодирует поток битов. Как результат, модуль 204 энтропийного декодирования выводит блок квантования, включающий в себя по меньшей мере одно значение квантования, параметр квантования (QP) и флаг управления границей.
[0107] Модуль 205 обратного квантования получает параметр квантования и блок квантования, выводимые посредством модуля 204 энтропийного декодирования, и восстанавливает блок коэффициентов, включающий в себя по меньшей мере один частотный коэффициент, посредством обратного квантования блока квантования с использованием параметра квантования.
[0108] Модуль 206 обратного преобразования формирует декодированное разностное изображение посредством выполнения обратного ортогонального преобразования, такого как обратное дискретное косинусное преобразование, для блока коэффициентов, восстановленного посредством модуля 205 обратного квантования.
[0109] Сумматор 207 формирует восстановленное изображение посредством суммирования декодированного разностного изображения и прогнозного изображения, сформированного посредством модуля 212 прогнозирования. Текущая слайс (текущий слайс, который должен быть декодирован), включенный в кодированное изображение в потоке битов, декодируется в результате этого последовательного формирования восстановленного изображения.
[0110] Фильтр 209 удаления блочности получает по меньшей мере одно восстановленное изображение из сумматора 207 и выполняет операцию фильтрации для удаления блочности для данной границы по меньшей мере одного восстановленного изображения. Здесь, фильтр 209 удаления блочности выполняет операцию фильтрации для удаления блочности для данной границы слайса для текущего слайса в соответствии с управлением посредством модуля 211 управления границами.
[0111] Когда SAO-модуль 210 получает по меньшей мере одно восстановленное изображение из фильтра 209 удаления блочности, SAO-модуль 110 выполняет SAO для полученного по меньшей мере одного восстановленного изображения. Здесь, SAO-модуль 110 выполняет SAO для данной границы слайса для текущего слайса, состоящей из этих восстановленных изображений, в соответствии с управлением посредством модуля 211 управления границами.
[0112] Модуль 212 прогнозирования формирует прогнозное изображение текущего блока с использованием текущего слайса, для которой выполнена SAO, и выводит прогнозное изображение в сумматор 207.
[0113] Фиг. 11 является блок-схемой последовательности операций способа, иллюстрирующей операцию обработки устройства 200 декодирования изображений согласно этому варианту осуществления.
[0114] Во-первых, модуль 204 энтропийного декодирования устройства 200 декодирования изображений извлекает, из потока битов, флаг управления границей для текущего слайса (текущего слайса, которая должна быть декодирована) и энтропийно декодирует флаг управления границей (этап S201). Затем, устройство 200 декодирования изображений декодирует текущий слайс (этап S202). Затем, модуль 211 управления границами определяет то, равен или нет флаг управления границей, энтропийно декодированный на этапе S201, 0 (этап S203). Здесь, когда модуль 211 управления границами определяет то, что флаг управления границей равен 0 ("Да" на этапе S203), модуль 211 управления границами управляет фильтром 209 удаления блочности, чтобы выключить фильтрации для удаления блочности для верхней и левой границ слайсов для текущего слайса. Кроме того, модуль 211 управления границами управляет SAO-модулем 210, чтобы задавать рабочий режим SAO для этих границ слайсов как дополнение (этапа S204). С другой стороны, когда модуль 211 управления границами определяет то, что флаг управления границами равен 1 ("Нет" на этапе S203), модуль 211 управления границами управляет фильтром 209 удаления блочности, чтобы включить операцию фильтрации для удаления блочности для вышеописанных верхней и левой границ слайсов (этапе S205). Затем, фильтр 209 удаления блочности выполняет операцию фильтрации для удаления блочности для вышеописанных верхней и левой границ слайсов (этап S206).
[0115] Затем, после того, как закончена обработка на этапе S204 и этапе S206, SAO-модуль 210 выполняет SAO для вышеописанных верхней и левой границ слайсов (этап S207). Следует отметить, что в это время, когда рабочий режим SAO на этапе S204 задается как дополнение, SAO выполняется в соответствии с этим дополнением.
[0116] Устройство 200 декодирования изображений затем определяет то, имеется или нет слайс, который не декодирован в текущем изображении (этап S208). Здесь, если устройство 200 декодирования изображений определяет то, что имеется слайс, который не декодирован ("Да" на этапе S208), устройство 200 декодирования изображений выбирает этот недекодированный слайс в качестве нового текущего слайса (этап S209) и повторяет обработку от этапа S201.
[0117] Следует отметить, что операция контурной фильтрации управляется только для вышеописанных верхней и левой границ слайсов из всех границ слайса у текущего слайса. Кроме того, если одна из верхней и левой границ слайсов не присутствует, операция контурной фильтрации управляется только для одной из границ слайсов. Кроме того, для границ слайсов, обозначенных в качестве возможных вариантов для операции контурной фильтрации, операция контурной фильтрации выполняется для пикселов около и с обеих сторон от границ слайсов.
[0118] Таким образом, способ декодирования изображений и устройство 200 декодирования изображений согласно этому варианту осуществления, аналогично вышеописанным способу кодирования изображений и устройству 100 кодирования изображений, управляют операцией контурной фильтрации для границ слайсов для текущего слайса на основе флага управления границей. Другими словами, способ декодирования изображений и устройство 200 декодирования изображений согласно этому варианту осуществления выполняют операцию фильтрации для удаления блочности и SAO для границ слайсов для текущего слайса в соответствии с операциями обработки, проиллюстрированными с использованием фиг. 7A-8. Следует отметить, что текущий слайс, используемый в способе декодирования изображений и устройстве 200 декодирования изображений, представляет собой текущий слайс, который должен быть декодирован, и текущий слайс в способе кодирования изображений и устройстве 100 кодирования изображений представляет собой текущий слайс, который должен быть кодирован.
[0119] Другими словами, в способе декодирования изображений согласно этому варианту осуществления, граница слайса, обозначенная в качестве возможного варианта для операции адаптивного к выборке смещения (SAO), управляемой посредством флага управления границей (slice_loop_filter_across_slices_enabled_flag) для текущего слайса, идентично операции фильтрации для удаления блочности, ограничена, по меньшей мере, только одной из верхней или нижней границ слайсов из всех границ слайса у текущего слайса. Кроме того, операция адаптивного к выборке смещения (SAO), управляемая посредством флага управления границей для текущего слайса, идентично операции фильтрации для удаления блочности, выполняется совместно не только для пикселов в текущего слайса, которые находятся около по меньшей мере одной из верхней или нижней границ слайсов для текущего слайса, но также и для пикселов в другом слайсе, которые находятся около по меньшей мере одной из верхней или нижней границ слайсов для текущего слайса.
[0120] В связи с этим, даже если флаг управления границей для текущего слайса указывает 1, если флаг управления границей для следующего слайса указывает 0, операция контурной фильтрации (операция фильтрации для удаления блочности и SAO) может выполняться для текущего слайса, и текущий слайс может выводиться или отображаться без необходимости ожидать следующего слайса, который должен быть кодирован. Это позволяет снижать нагрузку по обработке.
[0121] Кроме того, в этом варианте осуществления, когда флаг управления границей равен 0, режим дополнения позволяет инструктировать фактически не функционировать операции адаптивного к выборке смещения. Как результат, поскольку операция адаптивного к выборке смещения фактически не выполняется для по меньшей мере одной из верхней границы слайса или левой границы слайса у текущего слайса, другими словами, для пикселов около по меньшей мере одной из верхней границы слайса или левой границы слайса у текущего слайса, можно подавлять зависимость по данным между (i) другим слайсом, противоположным по меньшей мере одной из верхней или левой границ слайсов для текущего слайса, и (ii) текущим слайсом. Вследствие этого, можно легко осуществлять режим работы с несколькими слайсами, выполняемый параллельно с обработкой множества слайсов.
[0122] Кроме того, в этом варианте осуществления, когда флаг управления границей равен 0, можно инструктировать операции фильтрации для удаления блочности не функционировать посредством переключения операции фильтрации для удаления блочности на ВЫКЛ. Как результат, поскольку операция фильтрации для удаления блочности не выполняется для по меньшей мере одной из верхней границы слайса или левой границы слайса у текущего слайса, можно подавлять зависимость по данным между (i) другим слайсом, противоположным по меньшей мере одной из верхней или левой границ слайсов для текущего слайса, и (ii) текущим слайсом. Вследствие этого, можно легко осуществлять режим работы с несколькими слайсами, выполняемый параллельно с обработкой множества слайсов.
[0123] РАЗНОВИДНОСТЬ 1
В способе кодирования изображений и способе декодирования изображений согласно вышеописанному варианту осуществления, рабочий режим SAO переключается между обычным режимом работы и дополнением в соответствии с флагом управления границей, но аналогично операции фильтрации для удаления блочности, SAO может включаться и выключаться.
[0124] Фиг. 12 служит для иллюстрации управления SAO для границ слайсов согласно этой разновидности.
[0125] Как показывает фиг. 12, SAO для окрестности границы слайса между слайсом s2 и слайсом s3, другими словами, для пикселов около верхней и левой границ слайсов для слайса s3, переключается между ВКЛ и ВЫКЛ посредством флага управления границей для слайса s3, аналогично операции фильтрации для удаления блочности.
[0126] Например, когда флаг управления границей=0, в этой разновидности, выключается операция фильтрации для удаления блочности, идентично вышеописанному варианту 1 осуществления, и также выключается SAO. Другими словами, фильтр 109 и 209 удаления блочности не выполняет операцию фильтрации для удаления блочности, и SAO-модуль 110 и 210 не выполняет SAO для пикселов в слайсе s3, которые находятся около верхней и левой границ слайсов для слайса s3, и пикселов в слайсе s2, которые находятся около верхней и левой границ слайсов для слайса s3.
[0127] Другими словами, поскольку имеется вероятность того, что SAO-модуль 110 и 210 обращается к пикселам в слайсе s3 при выполнении SAO для пикселов в слайсе s2, которые находятся около вышеописанных границ слайсов, SAO-модуль 110 и 210 не выполняет SAO для пикселов в слайсе s2. Кроме того, аналогично пикселам в слайсе s2, поскольку имеется вероятность того, что SAO-модуль 110 и 210 обращается к пикселам в слайсе s2 при выполнении SAO для пикселов в слайсе s3, которые находятся около вышеописанных границ слайсов, SAO-модуль 110 не выполняет SAO для пикселов в слайсе s3.
[0128] За счет этой разновидности, можно достигать преимуществ, идентичных преимуществам вышеописанного варианта 1 осуществления, посредством переключения SAO между ВКЛ и ВЫКЛ.
[0129] РАЗНОВИДНОСТЬ 2
В способе кодирования изображений и способе декодирования изображений согласно вышеописанному варианту осуществления, возникают моменты времени, когда один пиксел становится возможным вариантом для операции контурной фильтрации в зависимости от множества флагов управления границами. В этом случае, характеристика этой разновидности заключается в том, что можно надлежащим образом выполнять операцию контурной фильтрации для этого пиксела.
[0130] Фиг. 13 показывает пример маски для SAO в угловой области слайса.
[0131] Для флага управления границей в вышеописанном варианте осуществления, возникают моменты времени, когда непонятно, как выполнять SAO для пикселов в угловой области слайса. Пиксел, подвергнутый SAO, представляет собой пиксел в середине трех пикселов (три черных точки, показанные на фиг. 13), включенных в маску, показанную на фиг. 13. SAO, выполняемая для этого пиксела, управляется одновременно посредством флагов управления границами для слайса s2 и слайса s3.
[0132] Фиг. 14 показывает другой пример маски для SAO в угловой области слайса.
[0133] Пиксел, подвергнутый SAO, представляет собой пиксел в середине трех пикселов, включенных в маску, показанную на фиг. 14. Аналогично примеру, показанному на фиг. 13, SAO, выполняемая для этого пиксела, управляется одновременно посредством флагов управления границами для слайса s2 и слайса s3.
[0134] Фиг. 15A-15F показывают еще один другой пример маски для SAO в угловой области слайса.
[0135] Даже в этих примерах, показанных на фиг. 15A-15F, аналогично вышеописанным примерам, непонятно, посредством флага управления границей какого слайса (слайса s2 или слайса s3) должна управляться SAO, выполняемая для среднего пиксела. В этом примере также, управление должно выполняться надлежащим образом.
[0136] Фиг. 16 показывает позиционную взаимосвязь между средним пикселом, подвергнутым SAO, и окружающими пикселами. В этой разновидности используются правило 1 и правило 2.
[0137] Для правила 1, когда удовлетворяются следующие первое-третье условия, индекс края задается равным 0 для SAO, выполняемой для среднего пиксела. Первое условие состоит в том, что средний пиксел находится в текущем слайсе (слайсе s1), и пиксел в другом слайсе (слайсе s2) требуется для SAO для среднего пиксела. Второе условие состоит в том, что пиксел в другом слайсе (слайсе s2) представляет собой пиксел справа, сверху, снизу, сверху справа или снизу слева от среднего пиксела. Третье условие состоит в том, что флаг управления границей для другого слайса (слайса s2) равен 0.
[0138] Для правила 2, когда удовлетворяются следующие первое-третье условия, индекс края задается равным 0 для SAO, выполняемой для среднего пиксела. Первое условие состоит в том, что средний пиксел находится в текущем слайсе (слайсе s1), и пиксел в другом слайсе (слайсе s2) требуется для SAO для среднего пиксела. Второе условие состоит в том, что пиксел в другом слайсе (слайсе s2) представляет собой пиксел слева, сверху, слева сверху, справа сверху или слева снизу от среднего пиксела. Третье условие состоит в том, что флаг управления границей для текущего слайса (слайса s1) равен 0.
[0139] Фиг. 17 показывает пример SAO-маски в 45° в угловой области слайса.
[0140] SAO выполняется для середины трех пикселов, показанных на фиг. 17, с использованием маски в 45°. В этом случае, средний пиксел находится в текущем слайсе (слайсе s3), и пиксел в другом слайсе s2 требуется для SAO для среднего пиксела. В связи с этим, когда любой из флагов управления границами для слайса s2 и слайса s3 указывает 0, индекс края задается равным 0 для SAO, выполняемой для среднего пиксела.
[0141] Фиг. 18 показывает пример SAO-маски в 135° в угловой области слайса.
[0142] SAO выполняется для середины трех пикселов, показанных на фиг. 18, с использованием маски в 135°. В этом случае, средний пиксел находится в текущем слайсе (слайсе s2), и пиксел в другом слайсе s1 и пиксел в слайсе s3 требуются для SAO для среднего пиксела. В связи с этим, когда любой из флагов управления границами для слайса s2 и слайса s3 указывает 0, индекс края задается равным 0 для SAO, выполняемой для среднего пиксела.
[0143] Таким образом, в этой разновидности, дополнение имеет приоритет в угловых областях слайсов. Вследствие этого, поскольку нет необходимости выполнять дополнение для всех границ слайсов для слайса для одного пиксела в угловой области слайса, можно надлежащим образом выполнять операцию контурной фильтрации для пикселов около границ слайсов.
[0144] Другими словами, в этой разновидности, пиксел, обозначенный в качестве возможного варианта для SAO, зависящего от флага управления границей, представляет собой конкретный пиксел, также обозначенный в качестве возможного варианта для SAO в зависимости от другого флага управления границей для другого слайса, и когда по меньшей мере один из флага управления границей или другого флага управления границей указывает 0, рабочий режим SAO переключается на дополнение. Затем, в соответствии с дополнением, SAO выполняется над конкретным пикселом. Вследствие этого, когда множество флагов управления границами для одного пиксела (конкретного пиксела) конкурируют на предмет управления SAO, приоритет имеет флаг управления границей, указывающий 0, из этих флагов управления границами. Как результат, можно надлежащим образом выполнять SAO для конкретного пиксела.
[0145] Хотя способ декодирования изображений и способ кодирования изображений согласно одному или более аспектам описаны выше на основе примерного варианта осуществления и его разновидностей, настоящее изобретение не ограничено этим. Специалисты в данной области техники должны легко принимать во внимание, что различные модификации могут вноситься в эти примерные варианты осуществления, и что другие варианты осуществления могут быть получены посредством произвольного комбинирования структурных элементов вариантов осуществления без существенного отступления от новых идей и преимуществ предмета изобретения, изложенного в прилагаемой формуле изобретения. Кроме того, способ декодирования изображений и устройство декодирования изображений согласно аспекту настоящего изобретения или другому аспекту могут быть реализованы следующим образом.
[0146] Фиг. 19A является блок-схемой последовательности операций способа, иллюстрирующей способ декодирования изображений согласно аспекту настоящего изобретения.
[0147] Способ декодирования изображений, который декодирует кодированное изображение, включает в себя следующие этапы S11-S14. На этапе S11 флаг управления границей получается для совместного управления операцией фильтрации для удаления блочности и операцией адаптивного к выборке смещения для границы слайса у текущего слайса, который должен быть декодирован, включенного в кодированное изображение. Затем, на этапе S12 текущий слайс декодируется. Затем, на этапе S13 операция фильтрации для удаления блочности выполняется на основе флага управления границей только над по меньшей мере одной из верхней границы слайса или левой границы слайса из всех границ слайса у текущего слайса, который декодирован. Затем, на этапе S14, операция адаптивного к выборке смещения, зависящая от флага управления границей, выполняется только над по меньшей мере одной из верхней границы слайса или левой границы слайса из всех границ слайса у текущего слайса, который декодирован.
[0148] Фиг. 19B является блок-схемой, иллюстрирующей конфигурацию устройства декодирования изображений согласно аспекту настоящего изобретения.
[0149] Устройство 10 декодирования изображений, которое декодирует кодированное изображение, включает в себя модуль 11 получения флагов, модуль 12 декодирования, фильтр 13 удаления блочности и SAO-модуль 14. Модуль 11 получения флагов получает флаг управления границей для совместного управления операцией фильтрации для удаления блочности и операцией адаптивного к выборке смещения для границы слайса у текущего слайса, который должен быть декодирован, включенного в кодированное изображение. Затем, модуль 12 декодирования декодирует текущий слайс. Затем, фильтр 13 удаления блочности выполняет операцию фильтрации для удаления блочности на основе флага управления границей только над по меньшей мере одной из верхней границы слайса или левой границы слайса из всех границ слайса у текущего слайса, который декодирован. Затем, SAO-модуль 14 выполняет операцию адаптивного к выборке смещения, зависящую от флага управления границей, только над по меньшей мере одной из верхней границы слайса или левой границы слайса из всех границ слайса у текущего слайса, который декодирован.
[0150] Этот тип способа декодирования изображений и устройства декодирования изображений согласно аспекту настоящего изобретения также реализует идентичные преимущества вышеописанного варианта осуществления и его разновидностей.
[0151] Фиг. 20A является блок-схемой последовательности операций способа, иллюстрирующей способ декодирования изображений согласно другому аспекту настоящего изобретения.
[0152] Способ декодирования изображений, который декодирует кодированное изображение, включает в себя следующие этапы S21-S23. На этапе S21, флаг управления границей получается для управления операцией адаптивного к выборке смещения для границы слайса у текущего слайса, который должен быть декодирован, включенного в кодированное изображение. Затем, на этапе S22, текущий слайс декодируется. Затем, на этапе S23, операция адаптивного к выборке смещения совместно выполняется в соответствии с флагом управления границей над по меньшей мере одним пикселом в текущем слайсе, который декодирован, и над по меньшей мере одним пикселом в другом слайсе, который декодирован, причем пикселы находятся около по меньшей мере одной из верхней границы слайса или левой границы слайса у текущего слайса.
[0153] Фиг. 20B является блок-схемой, иллюстрирующей конфигурацию устройства декодирования изображений согласно другому аспекту настоящего изобретения.
[0154] Устройство 20 декодирования изображений, которое декодирует кодированное изображение, включает в себя модуль 21 получения флагов, модуль 22 декодирования и SAO-модуль 23. Модуль 21 получения флагов получает флаг управления границей для управления операцией адаптивного к выборке смещения для границы слайса у текущего слайса, который должен быть декодирован, включенного в кодированное изображение. Затем, модуль 22 декодирования декодирует текущий слайс. Затем, SAO-модуль 23 совместно выполняет операцию адаптивного к выборке смещения в соответствии с флагом управления границей над по меньшей мере одним пикселом в текущем слайсе, который декодирован, и над по меньшей мере одним пикселом в другом слайсе, который декодирован, причем пикселы находятся около по меньшей мере одной из верхней границы слайса или левой границы слайса у текущего слайса.
[0155] Этот тип способа декодирования изображений и устройства декодирования изображений согласно другому аспекту настоящего изобретения также реализует идентичные преимущества вышеописанного варианта осуществления и его разновидностей.
[0156] Фиг. 21A является блок-схемой последовательности операций способа, иллюстрирующей способ кодирования изображений согласно аспекту настоящего изобретения.
[0157] Способ кодирования изображений, который кодирует изображение, включает в себя следующие этапы S31-S35. На этапе S31, флаг управления границей кодируется для совместного управления операцией фильтрации для удаления блочности и операцией адаптивного к выборке смещения для границы слайса у текущего слайса, который должен быть кодирован, включенного в изображение. Затем, на этапе S32, текущий слайс кодируется. Затем, на этапе S33, текущий слайс восстанавливается из данных, сгенерированных посредством кодирования текущего слайса. Затем, на этапе S34, операция фильтрации для удаления блочности на основе флага управления границей выполняется только над по меньшей мере одной из верхней границы слайса или левой границы слайса из всех границ слайса у текущего слайса, который восстановлен. Затем, на этапе S35, операция адаптивного к выборке смещения, зависящая от флага управления границей, выполняется только над по меньшей мере одной из верхней границы слайса или левой границы слайса из всех границ слайса у текущего слайса, который восстановлен.
[0158] Фиг. 21B является блок-схемой, иллюстрирующей конфигурацию устройства кодирования изображений согласно аспекту настоящего изобретения.
[0159] Устройство 30 кодирования изображений, которое кодирует изображение, включает в себя модуль 31 кодирования флагов, модуль 32 кодирования, модуль 33 восстановления, фильтр 34 удаления блочности и SAO-модуль 35. Другими словами, модуль 31 кодирования флагов кодирует флаг управления границей для совместного управления операцией фильтрации для удаления блочности и операцией адаптивного к выборке смещения для границы слайса у текущего слайса, который должен быть кодирован, включенного в изображение. Затем, модуль 32 кодирования кодирует текущий слайс. Затем, модуль 33 восстановления восстанавливает текущий слайс из данных, сгенерированных посредством кодирования текущего слайса. Затем, фильтр 34 удаления блочности выполняет операцию фильтрации для удаления блочности на основе флага управления границей только над по меньшей мере одной из верхней границы слайса или левой границы слайса из всех границ слайса у текущего слайса, который восстановлен. Затем, SAO-модуль 35 выполняет операцию адаптивного к выборке смещения, зависящую от флага управления границей, только над по меньшей мере одной из верхней границы слайса или левой границы слайса из всех границ слайса у текущего слайса, который восстановлен.
[0160] Этот тип способа кодирования изображений и устройства кодирования изображений согласно аспекту настоящего изобретения также реализует идентичные преимущества вышеописанного варианта осуществления и его разновидностей.
[0161] Фиг. 22A является блок-схемой последовательности операций способа, иллюстрирующей способ кодирования изображений согласно другому аспекту настоящего изобретения.
[0162] Способ кодирования изображений, который кодирует изображение, включает в себя следующие этапы S41-S44. На этапе S41, флаг управления границей кодируется для управления операцией адаптивного к выборке смещения для границы слайса у текущего слайса, который должен быть кодирован, включенного в изображение. Затем, на этапе S42, текущий слайс кодируется. Затем, на этапе S43, текущий слайс восстанавливается из данных, сгенерированных посредством кодирования текущего слайса. Затем, на этапе S44, операция адаптивного к выборке смещения совместно выполняется в соответствии с флагом управления границей над по меньшей мере одним пикселом в текущем слайсе, который восстановлен, и над по меньшей мере одним пикселом в другом слайсе, который восстановлен, причем пикселы находятся около по меньшей мере одной из верхней границы слайса или левой границы слайса у текущего слайса.
[0163] Фиг. 22B является блок-схемой, иллюстрирующей конфигурацию устройства кодирования изображений согласно другому аспекту настоящего изобретения.
[0164] Устройство 40 кодирования изображений, которое кодирует изображение, включает в себя модуль 41 кодирования флагов, модуль 42 кодирования, модуль 43 восстановления и SAO-модуль 44. Другими словами, модуль 41 кодирования флагов кодирует флаг управления границей для управления операцией адаптивного к выборке смещения для границы слайса у текущего слайса, который должен быть кодирован, включенного в изображение. Затем, модуль 42 кодирования кодирует текущий слайс. Затем, модуль 43 восстановления восстанавливает текущий слайс из данных, сгенерированных посредством кодирования текущего слайса. Затем, SAO-модуль 44 совместно выполняет операцию адаптивного к выборке смещения в соответствии с флагом управления границей над по меньшей мере одним пикселом в текущем слайсе, который восстановлен, и над по меньшей мере одним пикселом в другом слайсе, который восстановлен, причем пикселы находятся около по меньшей мере одной из верхней границы слайса или левой границы слайса у текущего слайса.
[0165] Этот тип способа кодирования изображений и устройства кодирования изображений согласно другому аспекту настоящего изобретения также реализует идентичные преимущества вышеописанного варианта осуществления и его разновидностей.
[0166] Каждый из структурных элементов в каждом из вышеописанных вариантов осуществления может быть сконфигурирован в форме полностью аппаратного продукта или может быть реализован посредством выполнения программы, подходящей для структурного элемента. Каждый из структурных элементов может быть реализован посредством модуля выполнения программ, такого как CPU и процессор, считывающий и выполняющий программу, записанную на носителе записи, таком как жесткий диск или полупроводниковое запоминающее устройство. Другими словами, устройство кодирования изображений и устройство декодирования изображений включают в себя схему обработки и устройство хранения, которое электрически соединено со схемой обработки (которое является доступным из схемы обработки). Схема обработки включает в себя по меньшей мере одно из полностью аппаратного продукта или модуля выполнения программ. Помимо этого, когда схема обработки включает в себя модуль выполнения программ, устройство хранения сохраняет программу, которая выполняется посредством модуля выполнения программ. Здесь, программное обеспечение, которое осуществляет устройство декодирования изображений согласно вышеописанному варианту осуществления, представляет собой программу, которая инструктирует компьютеру выполнять этапы, показанные на фиг. 19A или фиг. 20A. Кроме того, программное обеспечение, которое осуществляет устройство кодирования изображений согласно вышеописанному варианту осуществления, представляет собой программу, которая инструктирует компьютеру выполнять этапы, показанные на фиг. 21A или фиг. 22A.
[0167] Следует отметить, что в вышеописанном варианте осуществления и его разновидностях, операция контурной фильтрации выполняется для границы слайса, которая представляет собой границу между текущим слайсом и другим слайсом, но эта граница слайса не имеет намерение быть ограничивающей, и операция контурной фильтрации может выполняться для любой границы, которая представляет собой границу текущего слайса. Кроме того, в вышеописанном варианте осуществления и его разновидностях, операция контурной фильтрации для границы слайса управляется на основе флага управления границей, но внутри слайса, операция контурной фильтрации может выполняться, как обычно.
[0168] ВТОРОЙ ВАРИАНТ ОСУЩЕСТВЛЕНИЯ
Обработка, описанная в каждом из вариантов осуществления, может быть реализована просто в независимой компьютерной системе, посредством записи, на носителе записи, программы для реализации конфигураций способа кодирования движущихся изображений (способа кодирования изображений) и способа декодирования движущихся изображений (способа декодирования изображений), описанных в каждом из вариантов осуществления. Носители записи могут быть любыми носителями записи при условии, что программа может записываться, такими как магнитный диск, оптический диск, магнитооптический диск, IC-карта и полупроводниковое запоминающее устройство.
[0169] В дальнейшем в этом документе описываются варианты применения к способу кодирования движущихся изображений (способу кодирования изображений) и способу декодирования движущихся изображений (способу декодирования изображений), описанных в каждом из вариантов осуществления, и к системам с их использованием. Система имеет признак наличия устройства кодирования и декодирования изображений, которое включает в себя устройство кодирования изображений с использованием способа кодирования изображений и устройство декодирования изображений с использованием способа декодирования изображений. Другие конфигурации в системе могут быть изменены надлежащим образом в зависимости от случаев применения.
[0170] Фиг. 23 иллюстрирует общую конфигурацию системы ex100 предоставления контента для реализации услуг распространения контента. Область для предоставления услуг связи разделяется на соты требуемого размера, и базовые станции ex106, ex107, ex108, ex109 и ex110, которые являются стационарными беспроводными станциями, размещаются в каждой из сот.
[0171] Система ex100 предоставления контента подключается к таким устройствам, как компьютер ex111, персональное цифровое устройство (PDA) ex112, камера ex113, сотовый телефон ex114 и игровая машина ex115, через Интернет ex101, поставщика ex102 Интернет-услуг, телефонную сеть ex104, а также базовые станции ex106-ex110, соответственно.
[0172] Тем не менее, конфигурация системы ex100 предоставления контента не ограничена конфигурацией, показанной на фиг. 23, и комбинация, в которой подключаются любые из элементов, является допустимой. Помимо этого, каждое устройство может подключаться к телефонной сети ex104 непосредственно, а не через базовые станции ex106-ex110, которые являются стационарными беспроводными станциями. Кроме того, устройства могут быть подключены друг к другу через беспроводную связь ближнего действия и т.п.
[0173] Камера ex113, такая как цифровая видеокамера, допускает захват видео. Камера ex116, такая как цифровая камера, допускает захват как неподвижных изображений, так и видео. Кроме того, сотовый телефон ex114 может быть телефоном, который удовлетворяет любому из таких стандартов, как глобальная система мобильной связи (GSM) (зарегистрированная торговая марка), множественный доступ с кодовым разделением каналов (CDMA), широкополосный множественный доступ с кодовым разделением каналов (W-CDMA), стандарт долгосрочного развития (LTE) и высокоскоростной пакетный доступ (HSPA). Альтернативно, сотовый телефон ex114 может соответствовать стандарту системы персональных мобильных телефонов (PHS).
[0174] В системе ex100 предоставления контента сервер ex103 потоковой передачи подключается к камере ex113 и т.п. через телефонную сеть ex104 и базовую станцию ex109, которая предоставляет распространение изображений трансляции в прямом эфире и т.п. При таком распределении, контент (например, видео музыкального концерта в прямом эфире), захватываемый пользователем с использованием камеры ex113, кодируется так, как описано выше в каждом из вариантов осуществления (т.е. камера выступает в качестве устройства кодирования изображений согласно аспекту настоящего изобретения), и кодированный контент передается на сервер ex103 потоковой передачи. С другой стороны, сервер ex103 потоковой передачи выполняет потоковое распространение передаваемых данных контента в клиенты при запросах. Клиенты включают в себя компьютер ex111, PDA ex112, камеру ex113, сотовый телефон ex114 и игровую машину ex115, которые допускают декодирование вышеуказанных кодированных данных. Каждое из устройств, которое принимает распределенные данные, декодирует и воспроизводит кодированные данные (т.е. выступает в качестве устройства декодирования изображений согласно аспекту настоящего изобретения).
[0175] Захватываемые данные могут кодироваться посредством камеры ex113 или сервера ex103 потоковой передачи, который передает данные, или процессы кодирования могут быть совместно использованы камерой ex113 и сервером ex103 потоковой передачи. Аналогично, распространенные данные могут быть декодированы посредством клиентов или сервера ex103 потоковой передачи, или процессы декодирования могут быть совместно использованы клиентами и сервером ex103 потоковой передачи. Кроме того, данные неподвижных изображений и видео, захватываемых не только посредством камеры ex113, но также и камеры ex116, могут быть переданы на сервер ex103 потоковой передачи через компьютер ex111. Процессы кодирования могут выполняться посредством камеры ex116, компьютера ex111 или сервера ex103 потоковой передачи или совместно использоваться ими.
[0176] Кроме того, процессы кодирования и декодирования могут выполняться посредством LSI ex500, в общем, включенной в каждый из компьютера ex111 и устройств. LSI ex500 может быть сконфигурирована из одного кристалла или множества кристаллов. Программное обеспечение для кодирования и декодирования видео может быть интегрировано в определенный тип носителя записи (такой как CD-ROM, гибкий диск и жесткий диск), который является читаемым посредством компьютера ex111 и т.п., и процессы кодирования и декодирования могут выполняться с использованием программного обеспечения. Кроме того, когда сотовый телефон ex114 содержит камеру, могут передаваться видеоданные, полученные посредством камеры. Видеоданные - это данные, кодированные посредством LSI ex500, включенной в сотовый телефон ex114.
[0177] Кроме того, сервер ex103 потоковой передачи может состоять из серверов и компьютеров и может децентрализовать данные и обрабатывать децентрализованные данные, записывать или распространять данные.
[0178] Как описано выше, клиенты могут принимать и воспроизводить кодированные данные в системе ex100 предоставления контента. Другими словами, клиенты могут принимать и декодировать информацию, передаваемую пользователем, и воспроизводить декодированные данные в режиме реального времени в системе ex100 предоставления контента, так что пользователь, который не имеет конкретных прав и оборудования, может реализовывать персональную широковещательную передачу.
[0179] Помимо примера системы ex100 предоставления контента по меньшей мере одно из устройства кодирования движущихся изображений (устройства кодирования изображений) и устройства декодирования движущихся изображений (устройства декодирования изображений), описанных в каждом из вариантов осуществления, может быть реализовано в цифровой широковещательной системе ex200, проиллюстрированной на фиг. 24. Более конкретно, широковещательная станция ex201 сообщает или передает по радиоволнам в широковещательный спутник ex202 мультиплексированные данные, полученные посредством мультиплексирования аудиоданных и т.п. в видеоданные. Видеоданные являются данными, кодированными посредством способа кодирования движущихся изображений, описанного в каждом из вариантов осуществления (т.е. данными, кодированными посредством устройства кодирования изображений согласно аспекту настоящего изобретения). При приеме мультиплексированных видеоданных широковещательный спутник ex202 передает радиоволны для широковещательной передачи. Затем, антенна ex204 для домашнего применения с функцией приема спутниковой широковещательной передачи принимает радиоволны. Далее такое устройство, как телевизионный приемник (приемное устройство) ex300 и абонентская приставка (STB) ex217, декодирует принятые мультиплексированные данные и воспроизводит декодированные данные (т.е. выступает в качестве устройства декодирования изображений согласно аспекту настоящего изобретения).
[0180] Кроме того, модуль ex218 считывания/записи (i) считывает и декодирует мультиплексированные данные, записанные на носителе ex215 записи, таком как DVD и BD, или (i) кодирует видеосигналы на носителе ex215 записи, и в некоторых случаях записывает данные, полученные посредством мультиплексирования аудиосигнала, в кодированные данные. Модуль ex218 считывания/записи может включать в себя устройство декодирования движущихся изображений или устройство кодирования движущихся изображений, как показано в каждом из вариантов осуществления. В этом случае, воспроизведенные видеосигналы отображаются на мониторе ex219 и могут быть воспроизведены посредством другого устройства или системы с использованием носителя ex215 записи, на котором записываются мультиплексированные данные. Также можно реализовывать устройство декодирования движущихся изображений в абонентской приставке ex217, подключенной к кабелю ex203 для кабельного телевидения или к антенне ex204 для спутниковой и/или наземной широковещательной передачи, с тем чтобы отображать видеосигналы на мониторе ex219 телевизионного приемника ex300. Устройство декодирования движущихся изображений может быть реализовано не в абонентской приставке, а в телевизионном приемнике ex300.
[0181] Фиг. 25 иллюстрирует телевизионный приемник (приемное устройство) ex300, который использует способ кодирования движущихся изображений и способ декодирования движущихся изображений, описанные в каждом из вариантов осуществления. Телевизионный приемник ex300 включает в себя: тюнер ex301, который получает или предоставляет мультиплексированные данные, полученные посредством мультиплексирования аудиоданных в видеоданные, через антенну ex204 или кабель ex203 и т.д., который принимает широковещательную передачу; модуль ex302 модуляции/демодуляции, который демодулирует принятые мультиплексированные данные или модулирует данные в мультиплексированные данные, которые должны подаваться наружу; и модуль ex303 мультиплексирования/демультиплексирования, который демультиплексирует модулированные мультиплексированные данные в видеоданные и аудиоданные или мультиплексирует видеоданные и аудиоданные, кодированные посредством процессора ex306 сигналов, в данные.
[0182] Телевизионный приемник ex300 дополнительно включает в себя: процессор ex306 сигналов, включающий в себя процессор ex304 аудиосигналов и процессор ex305 видеосигналов, которые декодируют аудиоданные и видеоданные и кодируют аудиоданные и видеоданные, соответственно (которые выступают в качестве устройства кодирования изображений и устройства декодирования изображений согласно аспектам настоящего изобретения); и модуль ex309 вывода, включающий в себя динамик ex307, который предоставляет декодированный аудиосигнал, и модуль ex308 отображения, который отображает декодированный видеосигнал, такой как дисплей. Кроме того, телевизионный приемник ex300 включает в себя интерфейсный модуль ex317, включающий в себя модуль ex312 функционального ввода, который принимает ввод пользовательской операции. Кроме того, телевизионный приемник ex300 включает в себя модуль ex310 управления, который осуществляет общее управление каждым составляющим элементом телевизионного приемника ex300, и модуль ex311 схемы электропитания, который предоставляет питание в каждый из элементов. Кроме модуля ex312 функционального ввода, интерфейсный модуль ex317 может включать в себя: мост ex313, который подключается к внешнему устройству, такому как модуль ex218 считывания/записи; модуль ex314 гнезда для предоставления возможности присоединения носителя ex216 записи, такого как SD-карта; драйвер ex315 для того, чтобы подключаться к внешнему носителю записи, такому как жесткий диск; и модем ex316 для того, чтобы подключаться к телефонной сети. Здесь, носитель ex216 записи может электрически записывать информацию с использованием элемента энергонезависимого/энергозависимого полупроводникового запоминающего устройства для хранения. Составляющие элементы телевизионного приемника ex300 подключены друг к другу через синхронную шину.
[0183] Во-первых, описывается конфигурация, в которой телевизионный приемник ex300 декодирует мультиплексированные данные, полученные снаружи через антенну ex204 и т.п., и воспроизводит декодированные данные. В телевизионном приемнике ex300, при пользовательской операции через удаленный контроллер ex220 и т.п., модуль ex303 мультиплексирования/демультиплексирования демультиплексирует мультиплексированные данные, демодулированные посредством модуля ex302 модуляции/демодуляции, под управлением модуля ex310 управления, включающего в себя CPU. Кроме того, процессор ex304 аудиосигналов декодирует демультиплексированные аудиоданные, и процессор ex305 видеосигналов декодирует демультиплексированные видеоданные с использованием способа декодирования, описанного в каждом из вариантов осуществления, в телевизионном приемнике ex300. Модуль ex309 вывода предоставляет декодированный видеосигнал и аудиосигнал наружу, соответственно. Когда модуль ex309 вывода предоставляет видеосигнал и аудиосигнал, сигналы могут временно сохраняться в буферах ex318 и ex319 и т.п. так, что сигналы воспроизводятся синхронно друг с другом. Кроме того, телевизионный приемник ex300 может считывать мультиплексированные данные не через широковещательную передачу и т.п., а из носителей ex215 и ex216 записи, таких как магнитный диск, оптический диск и SD-карта. Далее описывается конфигурация, в которой телевизионный приемник ex300 кодирует аудиосигнал и видеосигнал и передает данные наружу или записывает данные на носитель записи. В телевизионном приемнике ex300, при пользовательской операции через удаленный контроллер ex220 и т.п., процессор ex304 аудиосигналов кодирует аудиосигнал, и процессор ex305 видеосигналов кодирует видеосигнал под управлением модуля ex310 управления с использованием способа кодирования, как описано в каждом из вариантов осуществления. Модуль ex303 мультиплексирования/демультиплексирования мультиплексирует кодированный видеосигнал и аудиосигнал и предоставляет результирующий сигнал наружу. Когда модуль ex303 мультиплексирования/демультиплексирования мультиплексирует видеосигнал и аудиосигнал, сигналы могут временно сохраняться в буферах ex320 и ex321 и т.п. так, что сигналы воспроизводятся синхронно друг с другом. Здесь, буферов ex318, ex319, ex320 и ex321 может быть множество, как проиллюстрировано, или по меньшей мере один буфер может быть совместно использован в телевизионном приемнике ex300. Кроме того, данные могут быть сохранены в буфере, так что может не допускаться переполнение и опустошение в системе, например, между модулем ex302 модуляции/демодуляции и модулем ex303 мультиплексирования/демультиплексирования.
[0184] Кроме того, телевизионный приемник ex300 может включать в себя конфигурацию для приема AV-ввода из микрофона или камеры, отличную от конфигурации для получения аудио- и видеоданных из широковещательной передачи или носителя записи, и может кодировать полученные данные. Хотя телевизионный приемник ex300 может кодировать, мультиплексировать и предоставлять наружу данные в описании, он может допускать только прием, декодирование и предоставление наружу данных, а не кодирование, мультиплексирование и предоставление наружу данных.
[0185] Кроме того, когда модуль ex218 считывания/записи считывает или записывает мультиплексированные данные с или на носитель записи, один из телевизионного приемника ex300 и модуля ex218 считывания/записи может декодировать или кодировать мультиплексированные данные, и телевизионный приемник ex300 и модуль ex218 считывания/записи могут совместно использовать декодирование или кодирование.
[0186] В качестве примера, фиг. 26 иллюстрирует конфигурацию модуля ex400 воспроизведения/записи информации, когда данные считываются или записываются с или на оптический диск. Модуль ex400 воспроизведения/записи информации включает в себя составляющие элементы ex401, ex402, ex403, ex404, ex405, ex406 и ex407, которые описаны ниже. Оптическая головка ex401 испускает лазерное пятно на поверхности для записи носителя ex215 записи, который является оптическим диском, чтобы записывать информацию, и обнаруживает отраженный свет от поверхности для записи носителя ex215 записи, чтобы считывать информацию. Модуль ex402 модуляционной записи электрически возбуждает полупроводниковый лазер, включенный в оптическую головку ex401, и модулирует лазерное излучение согласно записанным данным. Модуль ex403 воспроизводящей демодуляции усиливает сигнал воспроизведения, полученный посредством электрического обнаружения отраженного света от поверхности для записи, с использованием фотодетектора, включенного в оптическую головку ex401, и демодулирует сигнал воспроизведения посредством разделения компонента сигнала, записанного на носитель ex215 записи, чтобы воспроизводить необходимую информацию. Буфер ex404 временно хранит информацию, которая должна записываться на носитель ex215 записи, и информацию, воспроизведенную из носителя ex215 записи. Дисковый электромотор ex405 вращает носитель ex215 записи. Модуль ex406 сервоуправления перемещает оптическую головку ex401 в заранее определенную информационную дорожку при одновременном управлении вращательным приводом дискового электромотора ex405, чтобы следовать лазерному пятну. Модуль ex407 управления системой осуществляет общее управление модулем ex400 воспроизведения/записи информации. Процессы считывания и записи могут реализовываться посредством модуля ex407 управления системой с использованием различной информации, хранимой в буфере ex404, и формирования и добавления новой информации по мере необходимости, и посредством модуля ex402 модуляционной записи, модуля ex403 демодуляции при воспроизведении и модуля ex406 сервоуправления, которые записывают и воспроизводят информацию через оптическую головку ex401 при координированном управлении. Модуль ex407 управления системой включает в себя, например, микропроцессор и выполняет обработку посредством инструктирования компьютеру выполнять программу для считывания и записи.
[0187] Хотя в описании оптическая головка ex401 испускает лазерное пятно, она может выполнять запись с высокой плотностью с использованием света в поле в ближней зоне.
[0188] Фиг. 27 иллюстрирует носитель ex215 записи, который является оптическим диском. На поверхности для записи носителя ex215 записи, направляющие канавки формируются по спирали, и информационная дорожка ex230 записывает, заранее, информацию адреса, указывающую абсолютную позицию на диске, согласно изменению в форме направляющих канавок. Информация адреса включает в себя информацию для определения позиций блоков ex231 записи, которые являются единицей для записи данных. Воспроизведение информационной дорожки ex230 и считывание информации адреса в устройстве, которое записывает и воспроизводит данные, может приводить к определению позиций блоков записи. Кроме того, носитель ex215 записи включает в себя зону ex233 записи данных, зону ex232 внутренней окружности и зону ex234 внешней окружности. Зона ex233 записи данных является зоной для использования при записи пользовательских данных. Зона ex232 внутренней окружности и зона ex234 внешней окружности, которые находятся внутри и снаружи зоны ex233 записи данных, соответственно, предназначены для конкретного применения за исключением записи пользовательских данных. Модуль 400 воспроизведения/записи информации считывает и записывает кодированное аудио, кодированные видеоданные или мультиплексированные данные, полученные посредством мультиплексирования кодированного аудио и кодированных видеоданных, из и в зону ex233 записи данных носителя ex215 записи.
[0189] Хотя оптический диск, имеющий слой, такой как DVD и BD, описывается в качестве примера в описании, оптический диск не ограничен таким образом и может быть оптическим диском, имеющим многослойную структуру и допускающим запись на часть, отличную от поверхности. Кроме того, оптический диск может иметь структуру для многомерной записи/воспроизведения, к примеру, записи информации с использованием света цветов с различными длинами волн в одной части оптического диска и для записи информации, имеющей различные слои, с различных углов.
[0190] Кроме того, автомобиль ex210, имеющий антенну ex205, может принимать данные из спутника ex202 и т.п. и воспроизводить видео на устройстве отображения, таком как автомобильная навигационная система ex211, установленная в автомобиле ex210, в цифровой широковещательной системе ex200. Здесь, конфигурация автомобильной навигационной системы ex211 является конфигурацией, например, включающей в себя приемный GPS-модуль, из конфигурации, проиллюстрированной на фиг. 25. То же применимо для конфигурации компьютера ex111, сотового телефона ex114 и т.п.
[0191] Фиг. 28A иллюстрирует сотовый телефон ex114, который использует способ кодирования движущихся изображений и способ декодирования движущихся изображений, описанные в вариантах осуществления. Сотовый телефон ex114 включает в себя: антенну ex350 для передачи и приема радиоволн через базовую станцию ex110; модуль ex365 камеры, допускающий захват движущихся и неподвижных изображений; и модуль ex358 отображения, к примеру, жидкокристаллический дисплей для отображения данных, таких как декодированное видео, захватываемое посредством модуля ex365 камеры или принимаемое посредством антенны ex350. Сотовый телефон ex114 дополнительно включает в себя: модуль основного корпуса, включающий в себя модуль ex366 функциональных клавиш; модуль ex357 аудиовывода, к примеру, динамик для вывода аудио; модуль ex356 аудиоввода, к примеру, микрофон для ввода аудио; запоминающее устройство ex367 для сохранения захваченного видео или неподвижных изображений, записанного аудио, кодированных данных принимаемого видео, неподвижных изображений, почтовых сообщений и т.п.; и модуль ex364 гнезда, который является интерфейсным модулем для носителя записи, который сохраняет данные таким же образом, как запоминающее устройство ex367.
[0192] Далее описывается пример конфигурации сотового телефона ex114 со ссылкой на фиг. 28B. В сотовом телефоне ex114 главный модуль ex360 управления, спроектированный с возможностью полностью управлять каждым модулем основного корпуса, включающим в себя модуль ex358 отображения, а также модуль ex366 функциональных клавиш, взаимно соединяется, через синхронную шину ex370, с модулем ex361 схемы электропитания, модулем ex362 управления функциональным вводом, процессором ex355 видеосигналов, модулем ex363 интерфейса камеры, модулем ex359 управления жидкокристаллическим дисплеем (ЖК-дисплеем), модулем ex352 модуляции/демодуляции, модулем ex353 мультиплексирования/демультиплексирования, процессором ex354 аудиосигналов, модулем ex364 гнезда и запоминающим устройством ex367.
[0193] Когда клавиша завершения вызова или клавиша включения питания включается посредством пользовательской операции, модуль ex361 схемы электропитания предоставляет в соответствующие модули питание из аккумуляторной батареи с тем, чтобы активировать сотовый телефон ex114.
[0194] В сотовом телефоне ex114 процессор ex354 аудиосигналов преобразует аудиосигналы, собираемые посредством модуля ex356 аудиоввода в режиме речевой связи, в цифровые аудиосигналы под управлением главного модуля ex360 управления, включающего в себя CPU, ROM и RAM. Затем, модуль ex352 модуляции/демодуляции выполняет обработку с расширенным спектром для цифровых аудиосигналов, и приемо-передающий модуль ex351 выполняет цифро-аналоговое преобразование и преобразование частоты для данных, с тем чтобы передавать результирующие данные через антенну ex350. Так же, в сотовом телефоне ex114, приемо-передающий модуль ex351 усиливает данные, принимаемые посредством антенны ex350 в режиме речевой связи, и выполняет преобразование частоты и аналого-цифровое преобразование для данных. Затем, модуль ex352 модуляции/демодуляции выполняет обработку с обратным расширенным спектром для данных, и процессор ex354 аудиосигналов преобразует их в аналоговые аудиосигналы, с тем чтобы выводить их через модуль ex357 аудиовывода.
[0195] Кроме того, когда передается электронная почта в режиме передачи данных, текстовые данные электронной почты, введенные посредством операций с модулем ex366 функциональных клавиш и т.п. основного корпуса, отправляются в главный модуль ex360 управления через модуль ex362 управления функциональным вводом. Главный модуль ex360 управления инструктирует модулю ex352 модуляции/демодуляции выполнять обработку с расширенным спектром для текстовых данных, и приемо-передающий модуль ex351 выполняет цифро-аналоговое преобразование и преобразование частоты для результирующих данных, чтобы передавать данные в базовую станцию ex110 через антенну ex350. Когда принимается почтовое сообщение, обработка, которая является приблизительно обратной относительно обработки для передачи почтового сообщения, выполняется для принимаемых данных, и результирующие данные предоставляются в модуль ex358 отображения.
[0196] Когда передается видео, неподвижные изображения либо видео и аудио в режиме передачи данных, процессор ex355 видеосигналов сжимает и кодирует видеосигналы, предоставляемые из модуля ex365 камеры, с использованием способа кодирования движущихся изображений, показанного в каждом из вариантов осуществления (т.е. выступает в качестве устройства кодирования изображений согласно аспекту настоящего изобретения), и передает кодированные видеоданные в модуль ex353 мультиплексирования/демультиплексирования. Напротив, в течение времени, когда модуль ex365 камеры захватывает видео, неподвижные изображения и т.п., процессор ex354 аудиосигналов кодирует аудиосигналы, собранные посредством модуля ex356 аудиоввода, и передает кодированные аудиоданные в модуль ex353 мультиплексирования/демультиплексирования.
[0197] Модуль ex353 мультиплексирования/демультиплексирования мультиплексирует кодированные видеоданные, подаваемые из процессора ex355 видеосигналов, и кодированные аудиоданные, подаваемые из процессора ex354 аудиосигналов, с использованием предварительно определенного способа. Затем, модуль ex352 модуляции/демодуляции (модуль схемы модуляции/демодуляции) выполняет обработку с расширенным спектром для мультиплексированных данных, и приемо-передающий модуль ex351 выполняет цифро-аналоговое преобразование и преобразование частоты для данных, с тем чтобы передавать результирующие данные через антенну ex350.
[0198] При приеме данных видеофайла, который связывается с веб-страницей и т.п., в режиме передачи данных или при приеме почтового сообщения с присоединенным видео и/или аудио, чтобы декодировать мультиплексированные данные, принятые через антенну ex350, модуль ex353 мультиплексирования/демультиплексирования демультиплексирует мультиплексированные данные в поток битов видеоданных и поток битов аудиоданных и предоставляет в процессор ex355 видеосигналов кодированные видеоданные, а в процессор ex354 аудиосигналов кодированные аудиоданные через синхронную шину ex370. Процессор ex355 видеосигналов декодирует видеосигнал с использованием способа декодирования движущихся изображений, соответствующего способу кодирования движущихся изображений, показанному в каждом из вариантов осуществления (т.е. выступает в качестве устройства декодирования изображений согласно аспекту настоящего изобретения), и затем модуль ex358 отображения отображает, например, видеоизображения и неподвижные изображения, включенные в видеофайл, связанный с веб-страницей, через модуль ex359 управления ЖК-дисплеем. Кроме того, процессор ex354 аудиосигналов декодирует аудиосигнал, и модуль ex357 аудиовывода предоставляет аудио.
[0199] Кроме того, аналогично телевизионному приемнику ex300, терминал, такой как сотовый телефон ex114, вероятно, имеет 3 типа реализованных конфигураций, включающих в себя не только (i) приемо-передающий терминал, включающий в себя как устройство кодирования, так и устройство декодирования, но также и (ii) передающий терминал, включающий в себя только устройство кодирования, и (iii) приемный терминал, включающий в себя только устройство декодирования. Хотя в описании цифровая широковещательная система ex200 принимает и передает мультиплексированные данные, полученные посредством мультиплексирования аудиоданных в видеоданные в описании, мультиплексированные данные могут быть данными, полученными посредством мультиплексирования не аудиоданных, а символьных данных, связанных с видео, в видеоданные, и могут быть не мультиплексированными данными, а самими видеоданными.
[0200] По сути, способ кодирования движущихся изображений и способ декодирования движущихся изображений в каждом из вариантов осуществления могут использоваться в любых из описанных устройств и систем. Таким образом, могут быть получены преимущества, описанные в каждом из вариантов осуществления.
[0201] Кроме того, настоящее изобретение не ограничено вариантами осуществления, и различные модификации и изменения возможны без отступления от объема настоящего изобретения.
[0202] ТРЕТИЙ ВАРИАНТ ОСУЩЕСТВЛЕНИЯ
Видеоданные могут быть сформированы посредством переключения, по мере необходимости, между (i) способом кодирования движущихся изображений или устройством кодирования движущихся изображений, показанными в каждом из вариантов осуществления, и (ii) способом кодирования движущихся изображений или устройством кодирования движущихся изображений в соответствии с другим стандартом, таким как MPEG-2, MPEG-4 AVC и VC-1.
[0203] Здесь, когда множество видеоданных, которые соответствуют различным стандартам, формируются, а затем декодируются, способы декодирования должны быть выбраны таким образом, что они соответствуют различным стандартам. Тем не менее, поскольку не может быть обнаружено то, какому стандарту соответствуют каждые из множества из видеоданных, которые должны быть декодированы, имеется проблема в том, что не может быть выбран надлежащий способ декодирования.
[0204] Чтобы разрешать проблему, мультиплексированные данные, полученные посредством мультиплексирования аудиоданных и т.п. в видеоданные, имеют структуру, включающую в себя идентификационную информацию, указывающую то, какому стандарту соответствуют видеоданные. Далее описывается конкретная структура мультиплексированных данных, включающих в себя видеоданные, сформированные в способе кодирования движущихся изображений и посредством устройства кодирования движущихся изображений, показанных в каждом из вариантов осуществления. Мультиплексированные данные являются цифровым потоком в формате транспортных потоков MPEG-2.
[0205] Фиг. 29 иллюстрирует структуру мультиплексированных данных. Как проиллюстрировано на фиг. 29, мультиплексированные данные могут быть получены посредством мультиплексирования по меньшей мере одного из видеопотока, аудиопотока, потока презентационной графики (PG) и потока интерактивной графики. Видеопоток представляет первичное видео и вторичное видео фильма, аудиопоток (IG) представляет часть первичного аудио и часть вторичного аудио, которая должна смешиваться с частью первичного аудио, а поток презентационной графики представляет субтитры фильма. Здесь, первичное видео является обычным видео, которое должно отображаться на экране, а вторичное видео является видео, которое должно отображаться в меньшем окне в первичном видео. Кроме того, поток интерактивной графики представляет интерактивный экран, который должен быть сформирован посредством размещения GUI-компонентов на экране. Видеопоток кодируется в способе кодирования движущихся изображений или посредством устройства кодирования движущихся изображений, показанных в каждом из вариантов осуществления, либо в способе кодирования движущихся изображений или посредством устройства кодирования движущихся изображений в соответствии с традиционным стандартом, таким как MPEG-2, MPEG-4 AVC и VC-1. Аудиопоток кодируется в соответствии с таким стандартом, как AC-3 Dolby, Dolby Digital Plus, MLP, DTS, DTS-HD и линейная PCM.
[0206] Каждый поток, включенный в мультиплексированные данные, идентифицируется посредством PID. Например, 0x1011 выделяется видеопотоку, который должен быть использован для видео фильма, 0x1100-0x111F выделяются аудиопотокам, 0x1200-0x121F выделяются потокам презентационной графики, 0x1400-0x141F выделяются потокам интерактивной графики, 0x1B00-0x1B1F выделяются видеопотокам, которые должны быть использованы для вторичного видео фильма, и 0x1A00-0x1A1F выделяются аудиопотокам, которые должны быть использованы для вторичного аудио, которое должно смешиваться с первичным аудио.
[0207] Фиг. 30 схематично иллюстрирует то, как мультиплексируются данные. Во-первых, видеопоток ex235, состоящий из видеокадров, и аудиопоток ex238, состоящий из аудиокадров, преобразуются в поток PES-пакетов ex236 и поток PES-пакетов ex239 и дополнительно в TS-пакеты ex237 и TS-пакеты ex240, соответственно. Аналогично, данные потока ex241 презентационной графики и данные потока ex244 интерактивной графики преобразуются в поток PES-пакетов ex242 и поток PES-пакетов ex245 и дополнительно в TS-пакеты ex243 и TS-пакеты ex246, соответственно. Эти TS-пакеты мультиплексируются в поток, чтобы получать мультиплексированные данные ex247.
[0208] Фиг. 31 иллюстрирует то, как видеопоток сохраняется в потоке PES-пакетов. Первая панель на фиг. 31 показывает поток видеокадров в видеопотоке. Вторая панель показывает поток PES-пакетов. Как указано посредством стрелок, обозначенных как yy1, yy2, yy3 и yy4 на фиг. 31, видеопоток разделяется на изображения, такие как I-изображения, B-изображения и P-изображения, каждое из которых является единицей видеопредставления, и изображения сохраняются в рабочих данных каждого из PES-пакетов. Каждый из PES-пакетов имеет PES-заголовок, и PES-заголовок сохраняет временную метку представления (PTS), указывающую время отображения изображения, и временную метку декодирования (DTS), указывающую время декодирования изображения.
[0209] Фиг. 32 иллюстрирует формат TS-пакетов, которые должны быть в итоге записаны в мультиплексированные данные. Каждый из TS-пакетов является 188-байтовым пакетом фиксированной длины, включающим в себя 4-байтовый TS-заголовок, имеющий такую информацию, как PID для идентификации потока, и 184-байтовые рабочие TS-данные для сохранения данных. PES-пакеты разделяются и сохраняются в рабочих данных TS, соответственно. Когда используется BD-ROM, каждому из TS-пакетов присваивается 4-байтовый TP_Extra_Header, тем самым приводя к 192-байтовым исходным пакетам. Исходные пакеты записываются в мультиплексированные данные. TP_Extra_Header хранит такую информацию, как Arrival_Time_Stamp (ATS). ATS показывает время начала передачи, в которое каждый из TS-пакетов должен быть передан в PID-фильтр. Исходные пакеты размещаются в мультиплексированных данных, как показано в нижней части фиг. 32. Номера, увеличивающиеся с заголовка мультиплексированных данных, называются номерами исходных пакетов (SPN).
[0210] Каждый из TS-пакетов, включенных в мультиплексированные данные, включает в себя не только потоки аудио, видео, субтитров и т.п., но также и таблицу ассоциаций программ (PAT), таблицу структуры программ (PMT) и временную отметку программ (PCR). PAT показывает то, что указывает PID в PMT, используемой в мультиплексированных данных, и PID самого PAT регистрируется как нуль. PMT сохраняет PID потоков видео, аудио, субтитров и т.п., включенных в мультиплексированные данные, и информацию атрибутов потоков, соответствующих PID. PMT также имеет различные дескрипторы, связанные с мультиплексированными данными. Дескрипторы имеют такую информацию, как информация управления копированием, показывающая то, разрешено или нет копирование мультиплексированных данных. PCR сохраняет информацию STC-времени, соответствующую ATS, показывающей, когда PCR-пакет передается в декодер, чтобы достигать синхронизации между таймером поступления (ATC), т.е. временной осью ATS, и системным таймером (STC), т.е. временной осью PTS и DTS.
[0211] Фиг. 33 подробно поясняет структуру данных PMT. PMT-заголовок располагается в верхней части PMT. PMT-заголовок описывает длину данных, включенных в PMT, и т.п. Множество дескрипторов, связанных с мультиплексированными данными, располагается после PMT-заголовка. Информация, такая как информация управления копированием, описывается в дескрипторах. После дескрипторов располагается множество фрагментов информации потока, связанных с потоками, включенными в мультиплексированные данные. Каждый фрагмент информации потока включает в себя дескрипторы потоков, каждый из которых описывает такую информацию, как тип потока для идентификации кодека сжатия потока, PID потока и информация атрибутов потока (такая как частота кадров или соотношение сторон). Дескрипторы потоков по числу равны числу потоков в мультиплексированных данных.
[0212] Когда мультиплексированные данные записываются на носителе записи и т.д., они записываются вместе с файлами информации мультиплексированных данных.
[0213] Каждый из файлов информации мультиплексированных данных является управляющей информацией мультиплексированных данных, как показано на фиг. 34. Файлы информации мультиплексированных данных находятся в соответствии "один-к-одному" с мультиплексированными данными, и каждый из файлов включает в себя информацию мультиплексированных данных, информацию атрибутов потока и карту вхождений.
[0214] Как проиллюстрировано на фиг. 34, информация мультиплексированных данных включает в себя системную скорость, время начала воспроизведения и время завершения воспроизведения. Системная скорость указывает максимальную скорость передачи, на которой декодер системных целевых объектов, который должен быть описан ниже, передает мультиплексированные данные в PID-фильтр. Интервалы ATS, включенных в мультиплексированные данные, задаются не больше системной скорости. Время начала воспроизведения указывает PTS в видеокадре в заголовке мультиплексированных данных. Интервал одного кадра добавляется к PTS в видеокадре в конце мультиплексированных данных, и PTS задается равным времени завершения воспроизведения.
[0215] Как показано на фиг. 35, фрагмент информации атрибутов регистрируется в информации атрибутов потока для каждого PID каждого потока, включенного в мультиплексированные данные. Каждый фрагмент информации атрибутов имеет различную информацию в зависимости от того, является соответствующий поток видеопотоком, аудиопотоком, потоком презентационной графики или потоком интерактивной графики. Каждый фрагмент информации атрибутов видеопотока переносит информацию, включающую в себя то, какой кодек сжатия используется для сжатия видеопотока, а также разрешение, соотношение сторон и частоту кадров фрагментов данных изображений, которые включаются в видеопоток. Каждый фрагмент информации атрибутов аудиопотока переносит информацию, включающую в себя то, какой кодек сжатия используется для сжатия аудиопотока, сколько каналов включается в аудиопоток, какой язык поддерживает аудиопотока, и насколько высокой является частота дискретизации. Информация атрибутов видеопотока и информация атрибутов аудиопотока используются для инициализации декодера до того, как проигрыватель воспроизводит информацию.
[0216] В настоящем варианте осуществления мультиплексированные данные, которые должны быть использованы, имеют тип потока, включенный в PMT. Кроме того, когда мультиплексированные данные записываются на носителе записи, используется информация атрибутов видеопотока, включенная в информацию мультиплексированных данных. Более конкретно, способ кодирования движущихся изображений или устройство кодирования движущихся изображений, описанные в каждом из вариантов осуществления, включают в себя этап или модуль для выделения уникальных видеоданных, указывающих информацию, сформированную посредством способа кодирования движущихся изображений или устройства кодирования движущихся изображений в каждом из вариантов осуществления, для типа потока, включенного в PMT, или информации атрибутов видеопотока. При этой конфигурации, видеоданные, сформированные посредством способа кодирования движущихся изображений или устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления, могут отличаться от видеоданных, которые соответствуют другому стандарту.
[0217] Кроме того, фиг. 36 иллюстрирует этапы способа декодирования движущихся изображений согласно настоящему варианту осуществления. На этапе exS100, тип потока, включенный в PMT или информацию атрибутов видеопотока, включенную в информацию мультиплексированных данных, получается из мультиплексированных данных. Затем, на этапе exS101, определяется то, указывает или нет тип потока либо информация атрибутов видеопотока то, что мультиплексированные данные формируются посредством способа кодирования видео или устройства кодирования видео в каждом из вариантов осуществления. Когда определяется то, что тип потока или информация атрибутов видеопотока указывают то, что мультиплексированные данные формируются посредством способа кодирования движущихся изображений или устройства кодирования движущихся изображений в каждом из вариантов осуществления, на этапе exS102, декодирование выполняется посредством способа декодирования движущихся изображений в каждом из вариантов осуществления. Кроме того, когда тип потока или информация атрибутов видеопотока указывает соответствие традиционным стандартам, таким как MPEG-2, MPEG-4 AVC и VC-1, на этапе exS103, декодирование выполняется посредством способа декодирования движущихся изображений в соответствии с традиционными стандартами.
[0218] Так же, выделение нового уникального значения для типа потока или информации атрибутов видеопотока обеспечивает определение того, могут или нет выполнять декодирование способ декодирования движущихся изображений или устройство декодирования движущихся изображений, которые описываются в каждом из вариантов осуществления. Даже когда вводятся мультиплексированные данные, которые соответствуют другому стандарту, может быть выбран надлежащий способ или устройство декодирования. Таким образом, появляется возможность декодировать информацию без ошибок. Кроме того, способ или устройство кодирования движущихся изображений либо способ или устройство декодирования движущихся изображений в настоящем варианте осуществления могут быть использованы в устройствах и системах, описанных выше.
[0219] ЧЕТВЕРТЫЙ ВАРИАНТ ОСУЩЕСТВЛЕНИЯ
Каждый из способа кодирования движущихся изображений, устройства кодирования движущихся изображений, способа декодирования движущихся изображений и устройства декодирования движущихся изображений в каждом из вариантов осуществления типично осуществляется в форме интегральной схемы или большой интегральной (LSI) схемы. В качестве примера LSI, фиг. 37 иллюстрирует конфигурацию LSI ex500, которая состоит из одного кристалла. LSI ex500 включает в себя элементы ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508 и ex509, которые должны быть описаны ниже, и элементы соединяются друг с другом через шину ex510. Модуль ex505 схемы электропитания активируется посредством предоставления в каждый из элементов питания, когда модуль ex505 схемы электропитания включается.
[0220] Например, когда выполняется кодирование, LSI ex500 принимает AV-сигнал из микрофона ex117, камеры ex113 и т.п. через AV-ввод/вывод ex509 под управлением модуля ex501 управления, включающего в себя CPU ex502, контроллер ex503 запоминающего устройства, потоковый контроллер ex504 и модуль ex512 управления частотой возбуждения. Принимаемый AV-сигнал временно сохраняется во внешнем запоминающем устройстве ex511, к примеру, SDRAM. Под управлением модуля ex501 управления, сохраненные данные сегментируются на части данных согласно объему и скорости обработки так, что они передаются в процессор ex507 сигналов. Затем, процессор ex507 сигналов кодирует аудиосигнал и/или видеосигнал. Здесь, кодирование видеосигнала является кодированием, описанным в каждом из вариантов осуществления. Кроме того, процессор ex507 сигналов иногда мультиплексирует кодированные аудиоданные и кодированные видеоданные, и потоковый ввод-вывод ex506 предоставляет мультиплексированные данные наружу. Предоставляемый поток битов передается в базовую станцию ex107 или записывается на носителе ex215 записи. Когда наборы данных мультиплексируются, данные должны временно сохраняться в буфере ex508 так, что наборы данных являются синхронизированными друг с другом.
[0221] Хотя запоминающее устройство ex511 является элементом за пределами LSI ex500, оно может быть включено в LSI ex500. Буфер ex508 не ограничен одним буфером, а может состоять из буферов. Кроме того, LSI ex500 может состоять из одного кристалла или множества кристаллов.
[0222] Кроме того, хотя модуль ex501 управления включает в себя CPU ex502, контроллер ex503 запоминающего устройства, потоковый контроллер ex504, модуль ex512 управления частотой возбуждения, конфигурация модуля ex501 управления не ограничена этой. Например, процессор ex507 сигналов дополнительно может включать в себя CPU. Включение другого CPU в процессор ex507 сигналов может повышать скорость обработки. Кроме того, в качестве другого примера, CPU ex502 может выступать в качестве или быть частью процессора ex507 сигналов и, например, может включать в себя процессор аудиосигналов. В таком случае, модуль ex501 управления включает в себя процессор ex507 сигналов или CPU ex502, включающий в себя часть процессора ex507 сигналов.
[0223] Используемым здесь названием является LSI, но она также может называться IC, системной LSI, супер-LSI или ультра-LSI в зависимости от степени интеграции.
[0224] Кроме того, способы достигать интеграции не ограничены LSI, и специальная схема или процессор общего назначения и т.д. также позволяет достигать интеграции. Программируемая пользователем вентильная матрица (FPGA), которая может программироваться после изготовления LSI, или реконфигурируемый процессор, который дает возможность переконфигурирования подключения или конфигурации LSI, может использоваться для аналогичной цели. Этот тип устройств с программируемой логикой приспособлен выполнять способ кодирования изображений или способ декодирования изображений согласно описанному выше варианту осуществления типично посредством загрузки или считывания, из памяти или т.п., программы, реализованной в программном обеспечении или микропрограммном обеспечении.
[0225] В будущем, с развитием полупроводниковых технологий совершенно новая технология может заменять LSI. Функциональные блоки могут быть интегрированы с использованием этой технологии. Имеется возможность того, что настоящее изобретение применимо к биотехнологии.
[0226] ПЯТЫЙ ВАРИАНТ ОСУЩЕСТВЛЕНИЯ
Когда декодируются видеоданные, сформированные в способе кодирования движущихся изображений или посредством устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления, по сравнению с тем, когда декодируются видеоданные, которые соответствуют традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1, объем обработки, вероятно, возрастает. Таким образом, LSI ex500 должна задаваться на частоте возбуждения, превышающей частоту CPU ex502, которая должна быть использована, когда видеоданные декодируются в соответствии с традиционным стандартом. Тем не менее, когда частота возбуждения задается большей, имеется проблема в том, что возрастает энергопотребление.
[0227] Чтобы разрешать проблему, устройство декодирования движущихся изображений, такое как телевизионный приемник ex300 и LSI ex500, сконфигурировано с возможностью определять то, какому стандарту соответствуют видеоданные, и переключаться между частотами возбуждения согласно определенному стандарту. Фиг. 38 иллюстрирует конфигурацию ex800 в настоящем варианте осуществления. Модуль ex803 переключения частоты возбуждения задает частоту возбуждения равной высокой частоте возбуждения, когда видеоданные формируются посредством способа кодирования движущихся изображений или устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления. Затем, модуль ex803 переключения частоты возбуждения инструктирует процессору ex801 декодирования, который осуществляет способ декодирования движущихся изображений, описанный в каждом из вариантов осуществления, декодировать видеоданные. Когда видеоданные соответствуют традиционному стандарту, модуль ex803 переключения частоты возбуждения задает частоту возбуждения равной меньшей частоте возбуждения, чем частота возбуждения видеоданных, сформированных посредством способа кодирования движущихся изображений или устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления. Затем, модуль ex803 переключения частоты возбуждения инструктирует процессору ex802 декодирования, который соответствует традиционному стандарту, декодировать видеоданные.
[0228] Более конкретно, модуль ex803 переключения частоты возбуждения включает в себя CPU ex502 и модуль ex512 управления частотой возбуждения на фиг. 37. Здесь, каждый из процессора ex801 декодирования, который осуществляет способ декодирования движущихся изображений, описанный в каждом из вариантов осуществления, и процессора ex802 декодирования, который соответствует традиционному стандарту, соответствует процессору ex507 сигналов на фиг. 37. CPU ex502 определяет то, какому стандарту соответствуют видеоданные. Затем, модуль ex512 управления частотой возбуждения определяет частоту возбуждения на основе сигнала из CPU ex502. Кроме того, процессор ex507 сигналов декодирует видеоданные на основе сигнала из CPU ex502. Например, идентификационная информация, описанная в третьем варианте осуществления, вероятно, используется для идентификации видеоданных. Идентификационная информация не ограничена идентификационной информацией, описанной в третьем варианте осуществления, а может быть любой информацией при условии, что информация указывает то, какому стандарту соответствуют видеоданные. Например, когда то, какому стандарту соответствуют стандартные видеоданные, может быть определено на основе внешнего сигнала для определения того, что видеоданные используются для телевизионного приемника или диска и т.д., определение может выполняться на основе такого внешнего сигнала. Кроме того, CPU ex502 выбирает частоту возбуждения на основе, например, таблицы поиска, в которой стандарты видеоданных ассоциированы с частотами возбуждения, как показано на фиг. 40. Частота возбуждения может быть выбрана посредством сохранения таблицы поиска в буфере ex508 и внутреннем запоминающем устройстве LSI и при обращении к таблице поиска посредством CPU ex502.
[0229] Фиг. 39 иллюстрирует этапы для осуществления способа в настоящем варианте осуществления. Во-первых, на этапе exS200, процессор ex507 сигналов получает идентификационную информацию из мультиплексированных данных. Затем, на этапе exS201, CPU ex502 определяет на основе идентификационной информации то, формируются или нет видеоданные посредством способа кодирования и устройства кодирования, описанных в каждом из вариантов осуществления. Когда видеоданные формируются посредством способа кодирования движущихся изображений и устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления, на этапе exS202, CPU ex502 передает сигнал для задания частоты возбуждения равной большей частоте возбуждения в модуль ex512 управления частотой возбуждения. Затем, модуль ex512 управления частотой возбуждения задает частоту возбуждения равной большей частоте возбуждения. С другой стороны, когда идентификационная информация указывает то, что видеоданные соответствуют традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1, на этапе exS203, CPU ex502 передает сигнал для задания частоты возбуждения равной меньшей частоте возбуждения в модуль ex512 управления частотой возбуждения. Затем, модуль ex512 управления частотой возбуждения задает частоту возбуждения равной меньшей частоте возбуждения, чем частота возбуждения в случае, если видеоданные формируются посредством способа кодирования движущихся изображений и устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления.
[0230] Кроме того, наряду с переключением частот возбуждения, энергосберегающий эффект может быть повышен посредством изменения напряжения, которое должно прикладываться к LSI ex500 или к устройству, включающему в себя LSI ex500. Например, когда частота возбуждения задается меньшей, напряжение, которое должно прикладываться к LSI ex500 или к устройству, включающему в себя LSI ex500, вероятно, задается равным напряжению, меньшему напряжения в случае, если частота возбуждения задается большей.
[0231] Кроме того, когда объем обработки для декодирования больше, частота возбуждения может задаваться большей, а когда объем обработки для декодирования меньше, частота возбуждения может задаваться меньшей в качестве способа для задания частоты возбуждения. Таким образом, способ задания не ограничен способами, описанными выше. Например, когда объем обработки для декодирования видеоданных в соответствии с MPEG-4 AVC превышает объем обработки для декодирования видеоданных, сформированных посредством способа кодирования движущихся изображений и устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления, частота возбуждения, вероятно, задается в обратном порядке относительно задания, описанного выше.
[0232] Кроме того, способ для задания частоты возбуждения не ограничен способом для задания частоты возбуждения меньшей. Например, когда идентификационная информация указывает то, что видеоданные формируются посредством способа кодирования движущихся изображений и устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления, напряжение, которое должно прикладываться к LSI ex500 или к устройству, включающему в себя LSI ex500, вероятно, задается большим. Когда идентификационная информация указывает то, что видеоданные соответствуют традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1, напряжение, которое должно прикладываться к LSI ex500 или к устройству, включающему в себя LSI ex500, вероятно, задается меньшим. В качестве другого примера, когда идентификационная информация указывает то, что видеоданные формируются посредством способа кодирования движущихся изображений и устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления, возбуждение CPU ex502, вероятно, не должно приостанавливаться. Когда идентификационная информация указывает то, что видеоданные соответствуют традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1, возбуждение CPU ex502, вероятно, приостанавливается в данное время, поскольку CPU ex502 имеет дополнительную производительность обработки. Даже когда идентификационная информация указывает то, что видеоданные формируются посредством способа кодирования движущихся изображений и устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления, в случае, если CPU ex502 имеет дополнительную производительность обработки, возбуждение CPU ex502, вероятно, приостанавливается в данное время. В таком случае, время приостановки, вероятно, задается меньшим времени приостановки в случае, когда идентификационная информация указывает то, что видеоданные соответствуют традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1.
[0233] Соответственно, энергосберегающий эффект может быть повышен посредством переключения между частотами возбуждения согласно стандарту, которому соответствуют видеоданные. Кроме того, когда LSI ex500 или устройство, включающее в себя LSI ex500, возбуждается с использованием аккумулятора, время работы от аккумулятора может быть продлено за счет энергосберегающего эффекта.
[0234] ШЕСТОЙ ВАРИАНТ ОСУЩЕСТВЛЕНИЯ
Возникают случаи, когда множество видеоданных, которые соответствуют различным стандартам, предоставляются в устройства и системы, такие как телевизионный приемник и сотовый телефон. Чтобы обеспечивать декодирование множества видеоданных, которые соответствуют различным стандартам, процессор ex507 сигналов LSI ex500 должен соответствовать различным стандартам. Тем не менее, проблемы увеличения масштаба схемы LSI ex500 и роста затрат возникают при отдельном использовании процессоров ex507 сигналов, которые соответствуют соответствующим стандартам.
[0235] Чтобы разрешать проблему, задумана конфигурация, в которой частично совместно используются процессор декодирования для реализации способа декодирования движущихся изображений, описанного в каждом из вариантов осуществления, и процессор декодирования, который соответствует традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1. Ex900 на фиг. 41A показывает пример конфигурации. Например, способ декодирования движущихся изображений, описанный в каждом из вариантов осуществления, и способ декодирования движущихся изображений, который соответствует MPEG-4 AVC, имеют, частично совместно, сведения по обработке, такой как энтропийное кодирование, обратное квантование, фильтрация для удаления блочности и прогнозирование с компенсацией движения. Сведения по обработке, которая должна совместно использоваться, вероятно, включают в себя использование процессора ex902 декодирования, который соответствует MPEG-4 AVC. Напротив, выделенный процессор ex901 декодирования, вероятно, используется для другой обработки, уникальной для аспекта настоящего изобретения и не соответствует MPEG-4 AVC. Процессор декодирования для реализации способа декодирования движущихся изображений, описанного в каждом из вариантов осуществления, может быть совместно использован для обработки, которая должна совместно использоваться, и выделенный процессор декодирования может использоваться для обработки, уникальной для MPEG-4 AVC.
[0236] Кроме того, ex1000 на фиг. 41B показывает другой пример, в котором обработка совместно используется частично. Этот пример использует конфигурацию, включающую в себя выделенный процессор ex1001 декодирования, который поддерживает обработку, уникальную для аспекта настоящего изобретения, выделенный процессор ex1002 декодирования, который поддерживает обработку, уникальную для другого традиционного стандарта, и процессор ex1003 декодирования, который поддерживает обработку, которая должна совместно использоваться способом декодирования движущихся изображений согласно аспекту настоящего изобретения и традиционным способом декодирования движущихся изображений. Здесь, выделенные процессоры ex1001 и ex1002 декодирования не обязательно являются специализированными для обработки согласно аспекту настоящего изобретения и обработки по традиционному стандарту, соответственно, и могут быть процессорами, допускающими реализацию общей обработки. Кроме того, конфигурация настоящего варианта осуществления может быть реализована посредством LSI ex500.
[0237] Так же, уменьшение масштаба схемы LSI и сокращение затрат возможно за счет совместного использования процессора декодирования для обработки, которая должна совместно использоваться способом декодирования движущихся изображений согласно аспекту настоящего изобретения и способом декодирования движущихся изображений в соответствии с традиционным стандартом.
ПРОМЫШЛЕННАЯ ПРИМЕНИМОСТЬ
[0238] Способ декодирования изображений и способ кодирования изображений согласно настоящему изобретению обеспечивают преимущество снижения нагрузки по обработке и являются применимыми для множества целей, таких как накопление, передача и обмен изображениями. Способ декодирования изображений и способ кодирования изображений согласно настоящему изобретению могут быть использованы в таких устройствах отображения информации или устройствах формирования изображений, как телевизионный приемник, цифровое записывающее видеоустройство, автомобильная навигационная система, сотовый телефон, цифровая камера, цифровая видеокамера и т.д.
СПИСОК НОМЕРОВ ССЫЛОК
[0239] 10, 20 - устройство декодирования изображений
30, 40 - устройство кодирования изображений
11, 21 - модуль получения флагов
12, 22 - модуль декодирования
13, 34 - фильтр удаления блочности
14, 23, 35, 44 - SAO-модуль
31, 41 - модуль кодирования флагов
32, 42 - модуль кодирования
33, 43 - модуль восстановления
100 - устройство кодирования изображений
101 - модуль вычитания
102 - модуль преобразования
103 - модуль квантования
104 - модуль энтропийного кодирования
105 - модуль обратного квантования
106 - модуль обратного преобразования
107 - сумматор
109 - фильтр удаления блочности
110 - SAO-модуль
111 - модуль управления границами
112 - модуль прогнозирования
200 - устройство декодирования изображений
204 - модуль энтропийного декодирования
205 - модуль обратного квантования
206 - модуль обратного преобразования
207 - сумматор
209 - фильтр удаления блочности
210 - SAO-модуль
211 - модуль управления границами
212 - модуль прогнозирования