УСТРОЙСТВО ДЕКОДИРОВАНИЯ ВИДЕОДАННЫХ
VIDEO DATA DECODING DEVICE

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Настоящее изобретение относится к устройству декодирования видеоданных и более конкретно к устройству получения режима внутреннего предсказания, генерирования блока предсказания и остаточного блока для воссоздания восстановленного блока для компонентов цветности и яркости.
УРОВЕНЬ ТЕХНИКИ
В AVC H.264/MPEG-4 для кодирования изображения одно изображение разделяется на макроблоки, при этом соответствующие макроблоки кодируются посредством генерирования блока предсказания с использованием взаимного предсказания или внутреннего предсказания. Разность между исходным блоком и блоком предсказания преобразовывается для генерирования преобразованного блока, и преобразованный блок квантуется с использованием параметра квантования и одной из множества предварительно определенных матриц квантования. Квантованный коэффициент квантованного блока сканируется по предварительно определенному типу сканирования и затем энтропийно кодируется. Параметр квантования регулируется для каждого макроблока и кодируется с использованием параметра квантования предыдущего элемента.
В то же время для повышения эффективности кодирования вводятся методики с использованием различных размеров элемента кодирования. Также вводятся методики, увеличивающие количество режимов внутреннего предсказания яркости и цветности для генерирования блока предсказания, более подобного исходному блоку.
Однако, количество битов кодирования, требуемых для сигнализации режима внутреннего предсказания, увеличивается, так как увеличивается количество режимов внутреннего предсказания. Кроме того, разность между исходным блоком и блоком предсказания блока предсказания становится больше, так как размер элемента кодирования становится больше. Соответственно, требуется более эффективный способ кодирования и декодирования видеоданных для компонентов цветности и яркости.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ ТЕХНИЧЕСКАЯ ЗАДАЧА
Настоящее изобретение направлено на устройство получения режима внутреннего предсказания, генерирования опорных пикселей, адаптивной фильтрации опорных пикселей и генерирования блока предсказания.
ТЕХНИЧЕСКОЕ РЕШЕНИЕ
Один аспект настоящего изобретения предоставляет устройство декодирования видеоданных, содержащее: модуль декодирования режима предсказания, сконфигурированный с возможностью получения режима внутреннего предсказания яркости и режима внутреннего предсказания цветности; модуль определения размера предсказания, сконфигурированный с возможностью определения размера элемента преобразования яркости и размера элемента преобразования цветности с использованием информации о размере преобразования яркости; модуль генерирования опорных пикселей, сконфигурированный с возможностью генерирования опорных пикселей, если, по меньшей мере, один опорный пиксель недоступен; модуль фильтрации опорных пикселей, сконфигурированный с возможностью адаптивной фильтрации опорных пикселей текущего блока яркости на основе режима внутреннего предсказания яркости и размера элемента преобразования яркости, и невыполнения фильтрации опорных пикселей текущего блока цветности; модуль генерирования блоков предсказания, сконфигурированный с возможностью генерирования блоков предсказания текущего блока яркости и текущего блока; и модуль генерирования остаточных блоков, сконфигурированный с возможностью генерирования остаточного блока остаточной яркости и остаточного блока цветности.
ПОЛОЖИТЕЛЬНЫЕ ЭФФЕКТЫ
Устройство согласно настоящему изобретению получает режим внутреннего предсказания яркости и режим внутреннего предсказания цветности, определяет размер элемента преобразования яркости и размер элемента преобразования цветности с использованием информации о размере преобразования яркости, адаптивно фильтрует опорные пиксели текущего блока яркости на основе режима внутреннего предсказания яркости и размера элемента преобразования яркости, генерирует блоки предсказания текущего блока яркости и текущего блока и генерирует остаточный блок остаточной яркости и остаточный блок цветности. Поэтому, расстояние внутреннего предсказания становится короче, и уменьшается количество битов кодирования, требуемых для кодирования режимов внутреннего предсказания и остаточных блоков компонентов яркости и цветности, и уменьшается сложность кодирования посредством адаптивного кодирования режимов внутреннего предсказания и адаптивной фильтрации опорных пикселей.
ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 является блок-схемой устройства кодирования изображений согласно настоящему изобретению.
Фиг. 2 является блок-схемой устройства декодирования изображений согласно настоящему изобретению.
Фиг. 3 является блок-схемой устройства генерирования блока предсказания согласно настоящему изобретению.
Фиг. 4 является концептуальной схемой, изображающей режимы внутреннего предсказания согласно настоящему изобретению.
Фиг. 5 является блок-схемой устройства генерирования остаточного блока согласно настоящему изобретению.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
В дальнейшем различные варианты осуществления настоящего изобретения будут описаны подробно со ссылкой на сопроводительные чертежи. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, а может быть реализовано в различных видах. Поэтому, возможны многие различные модификации и изменения настоящего изобретения, и следует понимать, что в объеме раскрытой сущности, настоящее изобретение может быть осуществлено иначе, чем как это конкретно описано.
Фиг. 1 является блок-схемой устройства 100 кодирования изображений согласно настоящему изобретению.
На Фиг. 1 устройство 100 кодирования изображений согласно настоящему изобретению включает в себя модуль 110 разделения изображения, модуль 120 внутреннего предсказания, модуль 130 взаимного предсказания, модуль 140 преобразования, модуль 150 квантования, модуль 160 сканирования, модуль 170 энтропийного кодирования, модуль 155 обратного квантования, модуль 145 обратного преобразования, модуль 180 постобработки, модуль 190 хранения изображений, вычитатель 192 и сумматор 194.
Модуль 110 разделения изображения разделяет изображение на фрагменты, разделяет фрагмент на самые большие элементы (LCU) кодирования, и разделяет каждый LCU на один или более элементов кодирования. Модуль 110 разделения изображения определяет режим предсказания каждого элемента кодирования и размер элемента предсказания. Изображение, фрагмент и элемент кодирования состоят из массива отсчетов дискретизации яркости (массив яркости) и двух массивов отсчетов дискретизации цветности (массивы цветности). Блок цветности имеет половину высоты и половину ширины блока яркости. Данный блок может быть LCU, элементом кодирования или элементом предсказания. Далее в настоящем документе элемент кодирования яркости, элемент предсказания яркости и элемент преобразования яркости упоминаются в качестве элемента кодирования, элемента предсказания и элемента преобразования, соответственно.
LCU включает в себя один или более элементов кодирования. LCU имеет структуру рекурсивного квадродерева для задания структуры деления элементов кодирования. Параметры для задания максимального размера и минимального размера элемента кодирования включены в состав набора параметров последовательности. Структура деления задается одним или более флагами (split_cu_flags) разделения элементов кодирования. Размер элемента кодирования составляет 2N×2N.
Элемент кодирования включает в себя один или более элементов предсказания. При внутреннем предсказании размер элемента предсказания составляет 2N×2N или N×N. При взаимном предсказании размер элемента предсказания составляет 2N×2N, 2N×N, N×2N или N×N.
Элемент кодирования включает в себя один или более элементов преобразования. Элемент преобразования имеет структуру рекурсивного квадродерева для задания структуры деления. Структура деления задается одним или более флагами (split_tu_flags) разделения элемента преобразования. Параметр для задания максимального размера и минимального размера элемента преобразования яркости включен в состав набора параметров последовательности. Элемент преобразования цветности имеет половину высоты и половину ширины элемента преобразования, если элемент преобразования не составляет 4×4. Минимальный размер элемента преобразования цветности составляет 4×4.
Модуль 120 внутреннего предсказания определяет режим внутреннего предсказания текущего элемента предсказания и генерирует блок предсказания с использованием режима внутреннего предсказания. Размер блока предсказания равен размеру элемента преобразования.
Модуль 130 взаимного предсказания определяет информацию о движении текущего элемента предсказания с использованием одного или более опорных изображений, сохраненных в модуле 190 хранения изображений, и генерирует блок предсказания элемента предсказания. Информация о движении включает в себя один или более индексов опорных изображений и один или более векторов движения.
Модуль 140 преобразования преобразует остаточные сигналы, сгенерированные с использованием исходного блока и блока предсказания, для генерирования преобразованного блока. Остаточные сигналы преобразовываются элементом преобразования. Тип преобразования определяется режимом предсказания и размером элемента преобразования. Тип преобразования является основанным на DCT целочисленным преобразованием или основанным на DST целочисленным преобразованием. При взаимном предсказании используются основанные на DCT целочисленные преобразования. В режиме внутреннего предсказания, если размер элемента преобразования меньше предварительно определенного размера, то используются основанные на DST целочисленные преобразования, иначе используются основанные на DCT целочисленные преобразования. Предварительно определенный размер составляет 8×8. Тип преобразования элемента преобразования цветности равен типу преобразования соответствующего элемента преобразования. Поэтому, тип преобразования для элемента преобразования цветности является основанным на DCT целочисленным преобразованием.
Модуль 150 квантования определяет параметр квантования для квантования преобразованного блока. Параметр квантования является размером шага' квантования. Параметр квантования яркости упоминается в качестве параметра квантования. Параметр квантования определяется для каждого элемента квантования. Размер элемента квантования является одним из допустимых размеров элемента кодирования. Если размер элемента кодирования равен или больше минимального размера элемента квантования, то элемент кодирования становится элементом квантования. Множество элементов кодирования может быть включено в состав элемента квантования. Минимальный размер элемента квантования определяется для каждого изображения, а параметр для задания минимального размера элемента квантования включается в состав набора параметров изображения. Параметр квантования цветности определяется параметром квантования. Отношение между параметром квантования и параметром квантования цветности может быть определено посредством изображения. Параметр для указания отношения передается в наборе параметров изображения (PPS). Данное отношение может быть изменено посредством фрагмента. Другой параметр для изменения отношения может быть передан в заголовке фрагмента.
Модуль 150 квантования генерирует предиктор параметра квантования и генерирует разностный параметр квантования посредством вычитания предиктора параметра квантования из параметра квантования. Разностный параметр квантования энтропийно кодируется.
Предиктор параметра квантования генерируется посредством использования параметров квантования соседних элементов кодирования и параметра квантования предыдущего элемента кодирования следующим образом.
Параметр квантования левого элемента, параметр квантования верхнего элемента и параметр квантования предыдущего элемента последовательно получаются в данном порядке. Среднее значение первых двух доступных параметров квантования, полученных в этом порядке, устанавливается в качестве предиктора параметра квантования, когда два или более параметров квантования доступны, а когда только один параметр квантования доступен, то доступный параметр квантования устанавливается в качестве предиктора параметра квантования. То есть, если параметры квантования левого элемента и верхнего элемента доступны, то среднее значение параметра квантования левого элемента и верхнего элемента устанавливается в качестве предиктора параметра квантования. Если доступен только один из параметра квантования левого элемента и параметра квантования верхнего элемента, то среднее значение доступного параметра квантования и параметра квантования предыдущего элемента устанавливается в качестве предиктора параметра квантования. Если оба из параметра квантования левого элемента и параметра квантования верхнего элемента недоступны, то параметр квантования предыдущего элемента устанавливается в качестве предиктора параметра квантования. Среднее значение округляется.
Модуль 150 квантования квантует преобразованный блок с использованием матрицы квантования и параметра квантования для генерирования квантованного блока. Квантованный блок предоставляется в модуль 155 обратного квантования и модуль 160 сканирования.
Модуль 160 сканирования определяет шаблон сканирования и применяет шаблон сканирования к квантованному блоку. Когда для энтропийного кодирования используется САВАС, то шаблон сканирования определяется следующим образом.
При внутреннем предсказании шаблон сканирования определяется режимом внутреннего предсказания и размером элемента преобразования. Размер элемента преобразования, размер преобразованного блока и размер квантованного блока являются одними и теми же. Шаблон сканирования выбирается среди диагонального сканирования, вертикального сканирования и горизонтального сканирования. Квантованные коэффициенты преобразования квантованного блока разделяются на флаги значимости, знаки коэффициентов и уровни коэффициентов. Шаблон сканирования применяется к флагам значимости, знакам коэффициентов и уровням коэффициентов, соответственно. Флаг значимости указывает, является ли соответствующий квантованный коэффициент преобразования нулевым или нет. Знак коэффициента указывает знак ненулевого квантованного коэффициента преобразования, а уровень коэффициента указывает абсолютное значение ненулевого квантованного коэффициента преобразования.
Когда размер элемента преобразования равен или меньше первого размера, то горизонтальное сканирование выбирается для вертикального режима и предварительно определенного количества режимов внутреннего предсказания соседних элементов с вертикальным режимом, вертикальное сканирование выбирается для горизонтального режима и предварительно определенного количества режимов внутреннего предсказания соседних элементов с горизонтальным режимом, и диагональное сканирование выбирается для других режимов внутреннего предсказания. Когда размер элемента преобразования больше первого размера, то используется диагональное сканирование. Первый размер составляет 8×8. Предварительно определенное количество составляет 8, если элемент преобразования составляет 8×8.
При взаимном предсказании предварительно определенный шаблон сканирования используется независимо от размера элемента преобразования. Предварительно определенный шаблон сканирования является диагональным сканированием.
Шаблон сканирования элемента преобразования цветности равен шаблону сканирования соответствующего элемента преобразования яркости. Поэтому, шаблон сканирования выбирается среди диагонального сканирования, вертикального сканирования и горизонтального сканирования, как показано выше, когда размер элемента преобразования цветности составляет 4×4, а диагональное сканирование используется, когда размер элемента преобразования цветности больше 4×4.
Когда размер элемента преобразования больше второго размера, то квантованный блок делится на главный поднабор и множество оставшихся поднаборов, и определенный шаблон сканирования применяется к каждому поднабору. Флаги значимости, знаки коэффициентов и уровни коэффициентов каждого поднабора сканируются соответственно согласно определенному шаблону сканирования. Главный поднабор включает в себя коэффициент DC, а оставшиеся поднаборы охватывают участок, отличный от участка, охватываемого главным поднабором. Второй размер составляет 4×4.
Поднабор является блоком 4×4, содержащим 16 коэффициентов преобразования. Поднабор для цветности также является блоком 4×4, содержащим 16 коэффициентов преобразования.
Шаблон сканирования для сканирования поднаборов является тем же самым, что и шаблон сканирования для сканирования квантованных коэффициентов преобразования каждого поднабора. Квантованные коэффициенты преобразования каждого поднабора сканируются в обратном направлении. Поднаборы также сканируются в обратном направлении.
Положение последнего ненулевого коэффициента кодируется и передается в декодер. Положение последнего ненулевого коэффициента задает положение последнего ненулевого квантованного коэффициента преобразования внутри элемента преобразования. Положение последнего ненулевого коэффициента используется для определения количества поднаборов, которые следует сигнализировать в декодер. Ненулевой флаг поднабора устанавливается для поднаборов, отличных от главного поднабора и последнего поднабора. Последний поднабор охватывает последний ненулевой коэффициент. Ненулевой флаг поднабора указывает, содержит ли поднабор ненулевые коэффициенты или нет.
Модуль 155 обратного квантования обратно квантует квантованные коэффициенты преобразования квантованного блока.
Модуль 145 обратного преобразования обратно преобразует обратно квантованный блок для генерирования остаточных сигналов пространственной области.
Сумматор 194 генерирует восстановленный блок посредством суммирования остаточного блока с блоком предсказания.
Модуль 180 постобработки выполняет процесс деблокирующей фильтрации для удаления артефакта блочности, сгенерированного в восстановленном изображении.
Модуль 190 хранения изображений принимает подвергнутое постобработке изображение от модуля 180 постобработки, и сохраняет изображение в элементах изображения. Изображение может быть кадром или полем.
Модуль 170 энтропийного кодирования энтропийно кодирует информацию об одномерном коэффициенте, принятую от модуля 160 сканирования, информацию о внутреннем предсказании, принятую от модуля 120 внутреннего предсказания, информацию о движении, принятую от модуля 130 взаимного предсказания, и так далее.
Фиг. 2 является блок-схемой устройства 200 декодирования изображений согласно настоящему изобретению.
Устройство 200 декодирования изображений согласно настоящему изобретению включает в себя модуль 210 энтропийного декодирования, модуль 220 обратного сканирования, модуль 230 обратного квантования, модуль 240 обратного преобразования, модуль 250 внутреннего предсказания, модуль 260 взаимного предсказания, модуль 270 постобработки, модуль 280 хранения изображений и сумматор 290.
Модуль 210 энтропийного декодирования извлекает информацию о внутреннем предсказании, информацию о взаимном предсказании и информацию об одномерном коэффициенте из принятого битового потока. Модуль 210 энтропийного декодирования передает информацию о взаимном предсказании в модуль 260 взаимного предсказания, информацию о внутреннем предсказании в модуль 250 внутреннего предсказания и информацию о коэффициенте в модуль 220 обратного сканирования.
Модуль 220 обратного сканирования использует шаблон обратного сканирования для генерирования квантованного блока. Когда для энтропийного кодирования используется САВАС, то шаблон сканирования определяется следующим образом.
При внутреннем предсказании шаблон обратного сканирования определяется режимом внутреннего предсказания и размером элемента преобразования. Шаблон обратного сканирования выбирается среди диагонального сканирования, вертикального сканирования и горизонтального сканирования. Выбранный шаблон обратного сканирования применяется к флагам значимости, знакам коэффициентов и уровням коэффициентов для генерирования квантованного блока. Шаблон обратного сканирования элемента преобразования цветности равен шаблону сканирования соответствующего элемента преобразования яркости. Минимальный размер элемента преобразования цветности составляет 4×4.
Когда размер элемента преобразования равен или меньше первого размера, то горизонтальное сканирование выбирается для вертикального режима и предварительно определенного количества режимов внутреннего предсказания соседних элементов с вертикальным режимом, вертикальное сканирование выбирается для горизонтального режима и предварительно определенного количества режимов внутреннего предсказания соседних элементов с горизонтальным режимом, а диагональное сканирование выбирается для других режимов внутреннего предсказания. Когда размер элемента преобразования больше первого размера, используется диагональное сканирование. Когда размер элемента преобразования больше первого размера, диагональное сканирование выбирается для всех режимов внутреннего предсказания. Первый размер составляет 8×8. Предварительно определенное количество составляет 8, если элемент преобразования составляет 8×8.
При взаимном предсказании используется диагональное сканирование.
Когда размер элемента преобразования больше второго размера, флаги значимости, знаки коэффициентов и уровни коэффициентов подвергаются обратному сканированию в элементе поднабора с использованием определенного шаблона обратного сканирования для генерирования поднаборов, и данные поднаборы подвергаются обратному сканированию для генерирования квантованного блока. Второй размер равен размеру данного поднабора. Поднабор является блоком 4×4, включающим в себя 16 коэффициентов преобразования. Поднабор для цветности также является блоком 4×4. Поэтому, когда размер элемента преобразования цветности больше второго размера, сначала генерируются поднаборы, и поднаборы подвергаются обратному сканированию.
Шаблон обратного сканирования, используемый для генерирования каждого поднабора является тем же самым, что и шаблон обратного сканирования, использованный для генерирования квантованного блока. Флаги значимости, знаки коэффициентов и уровни коэффициентов подвергаются обратному сканированию в обратном направлении. Поднаборы также подвергаются обратному сканированию в обратном направлении.
Положение последнего ненулевого коэффициента и ненулевые флаги поднабора принимаются от кодера. Количество кодированных поднаборов определяется согласно положению последнего ненулевого коэффициента и шаблону обратного сканирования. Ненулевые флаги поднабора используются для выбора поднаборов, которые следует сгенерировать. Главный поднабор и последний поднабор генерируются с использованием шаблона обратного сканирования.
Модуль 230 обратного квантования принимает разностный параметр квантования от модуля 210 энтропийного декодирования и генерирует предиктор параметра квантования для генерирования параметра квантования элемента кодирования. Действие генерирования параметра квантования является тем же самым, что и действие модуля 150 квантования с Фиг. 1. Затем, параметр квантования текущего элемента кодирования генерируется посредством суммирования разностного параметра квантования с предиктором параметра квантования. Если разностный параметр квантования для текущего элемента кодирования не принят от кодера, то разностный параметр квантования устанавливается в 0.
Параметр для указания отношения между параметром квантования и параметром квантования цветности включается в состав PPS. Другой параметр включается в состав заголовка фрагмента, если допустимо изменять отношение посредством фрагмента. Поэтому, параметр квантования цветности генерируется с использованием параметра квантования и параметра, включенного в состав PPS, или использованием параметра квантования и данных двух параметров.
Модуль 230 обратного квантования обратно квантует квантованный блок.
Модуль 240 обратного преобразования обратно преобразует обратно квантованный блок для восстановления остаточного блока. Тип обратного преобразования адаптивно определяется согласно режиму предсказания и размеру элемента преобразования. Тип обратного преобразования является основанным на DCT целочисленным преобразованием или основанным на DST целочисленным преобразованием. Например, при взаимном предсказании используются основанные на DCT целочисленные преобразования. В режиме внутреннего предсказания, если размер элемента преобразования меньше предварительно определенного размера, то используются основанные на DST целочисленные преобразования, иначе используются основанные на DCT целочисленные преобразования. Тип обратного преобразования элемента преобразования цветности равен типу обратного преобразования соответствующего элемента преобразования. Поэтому, тип обратного преобразования для элемента преобразования цветности является основанным на DCT целочисленным преобразованием.
Модуль 250 внутреннего предсказания восстанавливает режим внутреннего предсказания текущего элемента предсказания с использованием принятой информации о внутреннем предсказании и генерирует блок предсказания согласно восстановленному режиму внутреннего предсказания.
Модуль 260 взаимного предсказания восстанавливает информацию с движении текущего элемента предсказания с использованием принятой информации о взаимном предсказании и генерирует блок предсказания с использованием информации о движении.
Модуль 270 постобработки функционирует точно также, что и модуль 180 постобработки с Фиг. 1.
Модуль 280 хранения изображений принимает подвергнутое постобработке изображение от модуля 270 постобработки и сохраняет данное изображение в элементах изображения. Изображение может быть кадром или полем.
Сумматор 290 суммирует восстановленный остаточный блок с блоком предсказания для генерирования восстановленного блока.
Фиг. 3 является блок-схемой устройства 300 генерирования блока предсказания согласно настоящему изобретению.
Устройство 300 согласно настоящему изобретению включает в себя модуль 310 синтаксического анализа, модуль 320 декодирования режима предсказания, модуль 330 определения размера предсказания, модуль 340 генерирования опорных пикселей, модуль 350 фильтрации опорных пикселей и модуль 360 генерирования блоков предсказания.
Модуль 310 осуществления синтаксического анализа осуществляет синтаксический анализ параметров внутреннего предсказания текущего элемента предсказания из битового потока.
Параметры внутреннего предсказания для яркости включают в себя указатель группы режимов и индекс режима предсказания. Указатель группы режимов является флагом, указывающим, принадлежит ли режим внутреннего предсказания текущего элемента предсказания группе самых вероятных режимов (группе МРМ). Если флаг представляет собой 1, то элемент внутреннего предсказания текущего элемента предсказания принадлежит группе МРМ. Если флаг представляет собой 0, то элемент внутреннего предсказания текущего элемента предсказания принадлежит группе остаточных режимов. Группа остаточных режимов включает в себя все режимы внутреннего предсказания, кроме режимов внутреннего предсказания группы МРМ. Индекс режима предсказания задает режим внутреннего предсказания текущего элемента предсказания внутри группы, заданной указателем группы режимов. Параметр внутреннего предсказания для цветности задается индексом режима предсказания цветности.
Модуль 320 декодирования режима предсказания получает режим внутреннего предсказания яркости и режим внутреннего предсказания цветности.
Режим внутреннего предсказания яркости получается следующим образом.
Группа МРМ создается с использованием режимов внутреннего предсказания соседних элементов предсказания. Режимы внутреннего предсказания группы МРМ адаптивно определяются посредством режима внутреннего предсказания левого элемента и режима внутреннего предсказания верхнего элемента. Режим внутреннего предсказания левого элемента является режимом внутреннего предсказания соседнего левого элемента предсказания, а режим внутреннего предсказания верхнего элемента является режимом внутреннего предсказания соседнего верхнего элемента предсказания. Группа МРМ состоит из трех режимов внутреннего предсказания.
Если соседний левый или верхний элемент предсказания не существует, то режим внутреннего предсказания соседнего левого или верхнего элемента устанавливается в качестве недоступного. Например, если текущий элемент предсказания располагается на левой или верхней границе изображения, то соседний левый или верхний элемент предсказания не существует. Если соседний левый или верхний элемент располагается внутри другого фрагмента, то режим внутреннего предсказания соседнего левого или верхнего элемента устанавливается в качестве недоступного.
Фиг. 4 является концептуальной схемой, изображающей режимы внутреннего предсказания согласно настоящему изобретению. Как показано на Фиг. 4, количество режимов внутреннего предсказания составляет 35. DC режим и планарный режим являются ненаправленными режимами внутреннего предсказания, а другие являются направленными режимами внутреннего предсказания.
Когда оба из режима внутреннего предсказания левого элемента и режима внутреннего предсказания верхнего элемента доступны и отличаются друг от друга, то режим внутреннего предсказания левого элемента и режим внутреннего предсказания верхнего элемента включаются в состав • группы МРМ, и один дополнительный режим внутреннего предсказания добавляется к группе МРМ. Если один из режимов внутреннего предсказания левого элемента и верхнего элемента является ненаправленным режимом, а другой является направленным режимом, то данный другой ненаправленный режим устанавливается в качестве дополнительного режима внутреннего предсказания. Если оба из режимов внутреннего предсказания левого элемента и верхнего элемента являются ненаправленными режимами, то вертикальный режим устанавливается в качестве дополнительного режима внутреннего предсказания.
Когда доступен только один из режима внутреннего предсказания левого элемента и режима внутреннего предсказания верхнего элемента, то доступный режим внутреннего предсказания включается в состав группы МРМ, и два дополнительных режима внутреннего предсказания добавляются к группе МРМ. Если доступный режим внутреннего предсказания является ненаправленным режимом, то другой ненаправленный режим и вертикальный режим устанавливаются в качестве дополнительных режимов внутреннего предсказания. Если доступный режим внутреннего предсказания является направленным режимом, то два ненаправленных режима устанавливаются в качестве дополнительных режимов внутреннего предсказания.
Когда оба из режима внутреннего предсказания левого элемента и режима внутреннего предсказания верхнего элемента недоступны, то режим DC, планарный режим и вертикальный режим добавляются к группе МРМ.
Если указатель группы режимов указывает группу МРМ, то внутреннее предсказание группы МРМ, заданное индексом режима предсказания, устанавливается в качестве режима внутреннего предсказания текущего элемента предсказания.
Если указатель группы режимов не указывает группу МРМ, то три внутренних предсказания группы МРМ переупорядочиваются в порядке номеров режимов. Среди трех режимов внутреннего предсказания группы МРМ режим внутреннего предсказания с наименьшим номером режима устанавливается первым кандидатом, режим внутреннего предсказания со средним номером режима устанавливается вторым кандидатом, а режим внутреннего предсказания с наибольшим номером режима устанавливается третьим кандидатом.
Если индекс режима предсказания равен или больше первого кандидата группы МРМ, то значение индекса режима предсказания увеличивается на один. Если индекс режима предсказания равен или больше второго кандидата группы МРМ, то значение индекса режима предсказания увеличивается на один. Если индекс режима предсказания равен или больше третьего кандидата группы МРМ, то значение индекса режима предсказания увеличивается на один. Значение конечного индекса режима предсказания устанавливается в качестве номера режима упомянутого режима внутреннего предсказания текущего элемента предсказания.
Режим внутреннего предсказания цветности устанавливается в качестве режима внутреннего предсказания, заданного индексом режима предсказания цветности. Если индекс предсказания цветности задает режим DM, то режим внутреннего предсказания цветности устанавливается равным режиму внутреннего предсказания яркости.
Модуль 330 определения размера предсказания определяет размер блока предсказания на основе информации о размере преобразования, задающей размер элемента преобразования. Информация о размере преобразования может быть одним или более флагами split_tu_flag. Размер блока предсказания цветности также определяется на основе информации о размере преобразования. Минимальный размер предсказания цветности составляет 4×4.
Если размер элемента преобразования равен размеру текущего элемента предсказания, то размер блока предсказания равен размеру текущего элемента предсказания.
Если размер элемента преобразования меньше размера текущего элемента предсказания, то размер блока предсказания равен размеру элемента преобразования. В данном случае, процесс генерирования восстановленного блока выполняется над каждым подблоком текущего элемента предсказания. То есть генерируются блок предсказания и остаточный блок текущего подблока, и восстановленный блок каждого подблока генерируется посредством суммирования блока предсказания с остаточным блоком. Затем генерируются блок предсказания, остаточный блок и восстановленный блок следующего подблока в порядке декодирования. Восстановленный режим внутреннего предсказания используется для генерирования всех блоков предсказания всех подблоков. Некоторые пиксели восстановленного блока текущего подблока используются в качестве опорных пикселей следующего подблока. Поэтому, возможно сгенерировать блок предсказания, который более подобен исходному подблоку.
Модуль 340 генерирования опорных пикселей генерирует опорные пиксели, если один или более опорных пикселей текущего блока недоступны. Опорные пиксели текущих блоков состоят из верхних опорных пикселей, расположенных в (х=0, …, 2N-1, y=-1), левых опорных пикселей, расположенных в (х=1-, y=0,2М-1) и углового пикселя, расположенного в (х=-1, y-1). N является шириной текущего блока, а М является высотой текущего блока. Текущий блок является текущим элементом предсказания или текущим подблоком, имеющим размер элемента преобразования. Опорные пиксели текущего блока цветности также генерируются, если один или более опорных пикселей недоступны.
Если все опорные пиксели недоступны, то значением 2Ь~1 заменяют значения всех опорных пикселей. Значение L является количеством битов, используемых для представления значения пикселя яркости.
Если доступные опорные пиксели располагаются только на одной стороне недоступного опорного пикселя, то значением опорного пикселя, самого близкого к недоступному пикселю, заменяют недоступный опорный пиксель.
Если доступные опорные пиксели располагаются на обеих сторонах недоступного опорного пикселя, то средним значением опорных пикселей, самых близких к недоступному пикселю на каждой стороне, или значением опорного пикселя, самого близкого к недоступному пикселю в предварительно определенном направлении, заменяют каждый недоступный опорный пиксель.
Модуль 350 фильтрации опорных пикселей адаптивно фильтрует опорные пиксели текущего блока яркости на основе режима внутреннего предсказания и размера элемента преобразования.
В DC режиме опорные пиксели не фильтруются. В вертикальном режиме и горизонтальном режиме, опорные пиксели не фильтруются. В направленных режимах, кроме вертикального и горизонтального режимов, опорные пиксели адаптивно фильтруются согласно размеру текущего блока.
Если размер текущего блока составляет 4×4, то опорные пиксели не фильтруются во всех режимах внутреннего предсказания.
Для размера 8×8, 16×16 и 32×32, количество режимов внутреннего предсказания, где опорные пиксели фильтруются, увеличивается, так как размер текущего блока, становится больше. Например, опорные пиксели не фильтруются в вертикальном режиме и предварительно определенном количестве режимов внутреннего предсказания соседних элементов с вертикальным режимом. Опорные пиксели также не фильтруются в горизонтальном режиме и предварительно определенном количестве режимов внутреннего предсказания соседних элементов с горизонтальным режимом. Предварительно определенное количество находится между 0 и 7 и уменьшается, когда размер текущего блока становится больше.
Модуль 350 фильтрации опорных пикселей не фильтрует опорные пиксели текущего блока цветности независимо от режима внутреннего предсказания и размера элемента преобразования.
Модуль 360 генерирования блоков предсказания генерирует блок предсказания текущего блока с использованием опорных пикселей согласно восстановленному режиму внутреннего предсказания.
В DC режиме пиксели предсказания блока предсказания генерируются посредством усреднения N опорных пикселей, расположенных в (х=0, … N-1, y=-1), и М опорных пикселей, расположенных в (х=-1, y=0, … М-1). Пиксели предсказания яркости, смежные с опорным пикселем, фильтруется по одному или двум смежным опорным пикселям. Пиксели предсказания цветности не фильтруются.
В вертикальном режиме пиксели предсказания генерируются посредством копирования соответствующего верхнего опорного пикселя. Пиксели предсказания яркости, смежные с левым опорным пикселем, фильтруются по левому соседнему опорному пикселю и угловому опорному пикселю. Пиксели предсказания цветности не фильтруются.
В горизонтальном режиме пиксели предсказания генерируются посредством копирования соответствующего левого опорного пикселя. Пиксели предсказания яркости, смежные с верхним опорным пикселем, фильтруются по левому соседнему опорному пикселю и угловому опорному пикселю. Пиксели предсказания цветности не фильтруются.
Фиг. 5 является блок-схемой устройства 400 генерирования остаточного блока согласно настоящему изобретению.
Устройство 400 согласно настоящему изобретению включает в себя модуль 410 энтропийного декодирования, модуль 420 обратного сканирования, модуль 430 обратного квантования и модуль 440 обратного преобразования.
Модуль 410 энтропийного' декодирования декодирует кодированные остаточные сигналы для генерирования компонентов квантованных коэффициентов. Когда САВАС используется 'для энтропийного кодирования, то компоненты коэффициентов включает в себя флаги значимости, знаки коэффициентов и уровни коэффициентов. Флаг значимости указывает, является ли соответствующий квантованный коэффициент преобразования нулевым или нет. Знак коэффициента указывает знак ненулевого квантованного коэффициента преобразования, а уровень коэффициента указывает абсолютное значение ненулевого квантованного коэффициента преобразования.
Модуль 420 обратного сканирования определяет шаблон обратного сканирования и генерирует квантованный блок с использованием шаблона обратного сканирования. Функционирование модуля 420 обратного сканирования то же самое, что и функционирование модуля 220 обратного сканирования с Фиг. 2.
Модуль 430 обратного квантования получает параметр квантования, выбирает матрицу обратного квантования и обратно квантует квантованный блок, чтобы сгенерировать преобразованный блок.
Параметр квантования яркости получается следующим образом.
Определяется минимальный размер элемента квантования. Минимальный размер элемента квантования определяется для каждого изображения с использованием указателя размера QU, включенного в состав PPS. Указатель размера QU определяет минимальный размер элемента квантования.
Генерируется разностный параметр квантования (dQP) текущего элемента кодирования. dQP генерируется для каждого элемента квантования посредством энтропийного декодирования. Если текущий элемент кодирования не содержит кодированный dQP, то dQP устанавливается нулевым. Если элемент квантования включает в себя множество элементов кодирования, то dQP включается в состав битового потока первого элемента кодирования, содержащего ненулевой коэффициент.
Генерируется предиктор параметра квантования текущего элемента кодирования. Предиктор параметра квантования генерируется с использованием того же самого функционирования модуля 230 обратного квантования с Фиг. 2. Если элемент квантования включает в себя множество элементов кодирования, то генерируется предиктор параметра квантования первого элемента кодирования в порядке декодирования, и сгенерированный предиктор параметра квантования совместно используется для всех других элементов кодирования внутри элемента квантования.
Параметр квантования генерируется с использованием dQP и предиктора параметра квантования.
Параметр квантования цветности генерируется с использованием параметра квантования яркости и параметра смещения, указывающего отношение между параметром квантования яркости и параметром квантования цветности. Параметр смещения включается в состав PPS. Параметр смещения изменяется посредством параметра регулировки смещения, включенного в состав заголовка фрагмента, если допустимо изменять смещение посредством фрагмента.
Модуль 440 обратного преобразования обратно преобразует преобразованный блок, чтобы сгенерировать остаточный блок. Тип обратного преобразования адаптивно определяется согласно режиму предсказания и размеру элемента преобразования. Тип обратного преобразования является основанным на DCT целочисленным преобразованием или основанным на DST целочисленным преобразованием. В режиме внутреннего предсказания, если размер элемента преобразования яркости меньше 8×8, то используется основанное на DST целочисленное преобразование, иначе используется основанное на DCT целочисленное преобразование. Основанное на DCT целочисленное преобразование применяется к преобразованному блоку цветности.
Блок предсказания и остаточный блок суммируются для генерирования восстановленного блока. Размер восстановленного блока равен размеру элемента преобразования. Поэтому, если размер элемента предсказания больше элемента преобразования, то генерируется первый восстановленный блок, а затем генерируется следующий восстановленный блок в порядке декодирования посредством генерирования блока предсказания и остаточного блока, пока не будет сгенерирован последний восстановленный блок. Режим внутреннего предсказания текущего элемента предсказания используется для генерирования блоков предсказания и остаточных блоков.
Хотя изобретение было показано и описано со ссылкой на некоторые его примерные варианты осуществления, специалистам в данной области техники будет понятно, что в нем могут быть произведены различные изменения в форме и содержании без отступления от сущности и объема изобретения, заданного прилагаемой формулой изобретения.