Область техники
[0001] Настоящее изобретение относится к способу и устройству для обработки видеосигнала и, в частности, к технологии для конфигурирования комбинации преобразований для каждой группы конфигурации преобразования, выделенной на основании по меньшей мере одного из режима предсказания, размера блока или формы блока.
Уровень техники
[0002] Видеоконтент следующего поколения будет обладать характеристиками высокого пространственного разрешения, высокой частоты кадров и высокой степенью многомерности представления сцены. Обработка такого контента приведет к значительному росту объема памяти, скорости доступа к памяти и мощности обработки.
[0003] Соответственно необходимо разработать новый инструмент кодирования для более эффективной обработки видеоконтента следующего поколения. В частности, необходимо разработать более эффективное преобразование с точки зрения эффективности и комплексности кодирования, когда применяется преобразование.
Сущность изобретения
Техническая проблема
[0004] Изобретение предназначено для разработки более эффективной конфигурации преобразования с точки зрения эффективности и комплексности кодирования.
[0005] Изобретение предназначено для того, чтобы предложить способ конфигурирования комбинации преобразований для каждой группы конфигурации преобразования, выделенной на основании по меньшей мере одного из режима предсказания, размера блока или формы блока.
[0006] Кроме того, изобретение предназначено для того, чтобы предложить структуру кодера/декодера для включения нового исполнения преобразования.
Техническое решение
[0007] Для выполнения задач,
[0008] изобретение предоставляет способ замены дискретного косинусного преобразования типа 8 (DCT8) на модифицированную форму дискретного синусного преобразования типа 7 (DST7) при использовании данных коэффициента ядра DST7 без каких-либо изменений.
[0009] Кроме того, изобретение предоставляет способ замены DST7 на DST4 и замены DCT8 на модифицированную форму DCT4 при использовании данных коэффициента ядра DST4 без каких-либо изменений.
[0010] Кроме того, изобретение предоставляет способ конфигурирования групп конфигурации преобразования на основании по меньшей мере одного из режима предсказания, размера блоки или формы блока, и по-разному конфигурирования преобразования, соответствующего каждой строке или столбцу, при этом одна группа конфигурации преобразования сконфигурирована с одной или более комбинациями преобразований, и одна комбинация преобразований сконфигурирована с преобразованиями, соответствующими всем строкам и столбцам.
[0011] Кроме того, изобретение предоставляет способ конфигурирования преобразований для всех строк и столбцов на основании одного преобразования, такого как DST7 или DST4, и преобразования, модифицированного из них.
[0012] Кроме того, изобретение предоставляет способ конфигурирования набора преобразований, который может быть извлечен по отношению к всем преобразованиям таким образом, как использование линейных отношений между всеми тригонометрическими преобразованиями (8 DCT, 8 DST), или добавление процесса пост-/пред- обработки к части ввода/вывода преобразования, вычисление объединения извлеченных наборов преобразований, и использование объединения для определения комбинации преобразований.
Полезные эффекты
[0013] Изобретение может формировать коэффициенты преобразования с более высокой эффективностью кодирования путем конфигурирования преобразований для всех строк и столбцов для каждой группы конфигурации преобразования на основании предварительно определенного количества преобразований, когда кодируется неподвижное изображение или движущееся изображение.
Описание чертежей
[0014] Фиг. 1 является структурной схемой, иллюстрирующей конфигурацию кодера для кодирования видеосигнала в соответствии с вариантом осуществления настоящего изобретения.
[0015] Фиг. 2 является структурной схемой, иллюстрирующей конфигурацию декодера для декодирования видеосигнала в соответствии с вариантом осуществления настоящего изобретения.
[0016] Фиг. 3 иллюстрирует варианты осуществления, к которым может быть применено изобретение, Фиг. 3A является схемой для описания структуры дробления блока на основании квадродерева (именуемого в дальнейшем «QT»), Фиг. 3B является схемой для описания структуры дробления блока на основании двоичного дерева (именуемого в дальнейшем «BT»), Фиг. 3C является схемой для описания структуры дробления блока на основании тернарного дерева (именуемого в дальнейшем «TT»), и Фиг. 3D является схемой для описания структуры дробления блока на основании ассиметричного дерева (именуемого в дальнейшем «AT»).
[0017] Фиг. 4 является вариантом осуществления, к которому применяется изобретение, и иллюстрирует принципиальную структурную схему модуля 120/130 преобразования квантования и модуля 140/150 обратного квантования и преобразования в кодере.
[0018] Фиг. 5 является вариантом осуществления, к которому применяется изобретение, и иллюстрирует принципиальную структурную схему модуля 220/230 обратного квантования и преобразования в декодере.
[0019] Фиг. 6 является вариантом осуществления, к которому применяется изобретение, и является таблицей, иллюстрирующей группу конфигурации преобразования, к которой применяются адаптивные множественные преобразования (AMT).
[0020] Фиг. 7 является вариантом осуществления, к которому применяется изобретение, и является блок-схемой, иллюстрирующей процесс кодирования, в котором выполняются адаптивные множественные преобразования (AMT).
[0021] Фиг. 8 является вариантом осуществления, к которому применяется изобретение, и является блок-схемой, иллюстрирующей процесс декодирования, в котором выполняются адаптивные множественные преобразования (AMT).
[0022] Фиг. 9 является вариантом осуществления, к которому применяется изобретение, и является блок-схемой для описания процесса кодирования флага AMT и индекса AMT.
[0023] Фиг. 10 является вариантом осуществления, к которому применяется изобретение, и является блок-схемой для описания процесса декодирования с применением горизонтального преобразования или вертикального преобразования к строке или столбцу на основании флага AMT и индекса AMT.
[0024] Фиг. 11 является вариантом осуществления, к которому применяется изобретение, и является схемой для описания способа по-разному конфигурирования преобразования, соответствующего каждой строке или столбцу, комбинации преобразований.
[0025] Фиг. 12 является вариантом осуществления, к которому применяется изобретение, и является схемой для описания способа конфигурирования общей группы конфигурации преобразования на основании по меньшей мере одного из режима предсказания, размера блока или формы блока.
[0026] Фиг. 13 и 14 являются вариантами осуществления, к которым применяется изобретение, и являются таблицами для описания способа разделения групп конфигурации преобразования на множество таблиц на основании по меньшей мере одного из режима предсказания, размера блока или формы блока и объединения групп конфигурации преобразования.
[0027] Фиг. 15 является вариантом осуществления, к которому применяется изобретение, и иллюстрирует пример, в котором группа конфигурации преобразования конфигурируется с использованием одного набора преобразований.
[0028] Фиг. 16 является вариантом осуществления, к которому применяется изобретение, и иллюстрирует пример, в котором группа конфигурации преобразования конфигурируется с использованием разных наборов преобразований на основании размера блока преобразования.
[0029] Фиг. 17 является вариантом осуществления, к которому применяется изобретение, и иллюстрирует пример, в котором конфигурируется натянутый набор (spanned set).
[0030] Фиг. 18 иллюстрирует систему кодирования видео, к которой применяется изобретение.
[0031] Фиг. 19 иллюстрирует систему потоковой передачи контента, к которой применяется изобретение.
Предпочтительный вариант осуществления
[0032] Изобретение предоставляет способ декодирования видеосигнала на основании адаптивных множественных преобразований (AMT), включающий в себя этапы, на которых: получают индекс AMT из видеосигнала, при этом индекс AMT указывает любую из множества комбинаций преобразований в группе конфигурации преобразования, и группа конфигурации преобразования включает в себя дискретное синусное преобразование типа 7 (DST7) и дискретное косинусное преобразование типа 8 (DCT8); извлекают комбинацию преобразований, соответствующую индексу AMT, при этом комбинация преобразований сконфигурирована с горизонтальным преобразованием и вертикальным преобразованием и включает в себя по меньшей мере одно из DST-7 или DCT-8; выполняют обратное преобразование над текущим блоком на основании комбинации преобразований; и воссоздают видеосигнал с использованием текущего блока, подвергнутого обратному преобразованию, при этом AMT указывает способ преобразования, выполняемый на основании комбинации преобразований, адаптивно выбранной из множества комбинаций преобразований.
[0033] В изобретении группа конфигурации преобразования конфигурируется на основании по меньшей мере одного из режима предсказания, размера блока или формы блока у текущего блока.
[0034] В изобретении обратное преобразование применяется только когда как ширина, так и высота единицы преобразования составляют 32 или меньше.
[0035] В изобретении способ дополнительно включает в себя этап, на котором получают флаг AMT из видеосигнала, при этом флаг AMT указывает, выполняется ли AMT, и при этом индекс AMT получается, когда AMT выполняется на основании флага AMT.
[0036] В изобретении способ дополнительно включает в себя этап, на котором проверяют, является ли количество ненулевых коэффициентов преобразования большим, чем пороговая величина, если AMT выполняется на основании флага AMT, при этом индекс AMT получается, когда количество ненулевых коэффициентов преобразования больше пороговой величины.
[0037] В изобретении этап, на котором выполняют обратное преобразование, включает в себя этап, на котором применяют обратное преобразование DST-7 или обратное преобразование DCT-8 к каждой строке после применения обратного преобразования DST-7 или обратного преобразования DCT-8 к каждому столбцу, если вертикальное преобразование или горизонтальное преобразование является DST-7 или DCT-8.
[0038] В изобретении вертикальное преобразование или горизонтальное преобразование по-разному применяется к каждой строке и/или каждому столбцу.
[0039] В изобретении флаг AMT или индекс AMT определяется по меньшей мере на одном уровне из уровней последовательности, картинки, слайса, блока, единицы кодирования, единицы преобразования или единицы предсказания.
[0040] Изобретение предоставляет устройство для декодирования видеосигнала на основании адаптивных множественных преобразований (AMT), включающее в себя: модуль синтаксического анализа, сконфигурированный с возможностью определения посредством синтаксического анализа индекса AMT из видеосигнала, при этом индекс AMT указывает любую из множества комбинаций преобразований в группе конфигурации преобразования, и группа конфигурации преобразования включает в себя дискретное синусное преобразование типа 7 (DST7) и дискретное косинусное преобразование типа 8 (DCT8); модуль обратного преобразования, сконфигурированный с возможностью извлечения комбинации преобразований, соответствующей индексу AMT, и выполнения обратного преобразования над текущим блоком на основании комбинации преобразований; и модуль воссоздания, сконфигурированный с возможностью воссоздания видеосигнала с использованием текущего блока, подвергнутого обратному преобразованию. AMT указывает способ преобразования, выполняемый на основании комбинации преобразований, адаптивно выбранной из множества комбинаций преобразований. Комбинация преобразований сконфигурирована с горизонтальным преобразованием и вертикальным преобразованием и включает в себя по меньшей мере одно из DST-7 или DCT-8.
[0041] В изобретении модуль синтаксического анализа сконфигурирован с возможностью дополнительного определения посредством синтаксического анализа из видеосигнала флага AMT, указывающего, выполняется ли AMT, и индекс AMT получается, когда AMT выполняется на основании флага AMT.
[0042] В изобретении модуль обратного преобразования сконфигурирован с возможностью дополнительной проверки того, является ли количество ненулевых коэффициентов преобразования большим, чем пороговая величина, если AMT выполняется на основании флага AMT, и индекс AMT получается, когда количество ненулевых коэффициентов преобразования больше пороговой величины.
[0043] В изобретении модуль обратного преобразования сконфигурирован с возможностью применения обратного преобразования DST-7 или обратного преобразования DCT-8 к каждой строке после применения обратного преобразования DST-7 или обратного преобразования DCT-8 к каждому столбцу, если вертикальное преобразование или горизонтальное преобразование является DST-7 или DCT-8.
Вариант осуществления изобретения
[0044] Далее конфигурация и работа варианта осуществления настоящего изобретения будут подробно описаны при обращении к сопроводительным чертежам, причем конфигурация и работа настоящего изобретения, описанные при обращении к чертежам, описываются в качестве варианта осуществления, и объем, базовая конфигурация и работа настоящего изобретения этим не ограничиваются.
[0045] Кроме того, понятия, используемые в настоящем изобретении, выбраны из широко используемых в настоящее время общих понятий, но в особом случае, заявитель использует случайно выбранные понятия. В таком случае в подробном описании соответствующей части, так как четко описывается его значение, понятия не следует толковать только исходя из названия понятий, используемых в описании настоящего изобретения, и следует понимать и толковать значение соответствующего понятия.
[0046] Кроме того, когда присутствует общее понятие, выбранное для описания изобретения, или другое понятие со сходным значением, то понятия, используемые в настоящем изобретении, могут быть замещены для более подходящей интерпретации. Например, в каждом процессе кодирования сигнал, данные, выборка, картинка, кадр и блок могут быть надлежащим образом замещены и истолкованы. Кроме того, в каждом процессе кодирования разбиение, разложение, дробление и деление могут быть надлежащим образом замещены и истолкованы.
[0047] Фиг. 1 показывает принципиальную структурную схему кодера для кодирования видеосигнала в соответствии с одним вариантом осуществления настоящего изобретения.
[0048] Обращаясь к Фиг. 1 кодер 100 включает в себя модуль 110 сегментации изображения, модуль 120 преобразования, модуль 130 квантования, модуль 140 обратного квантования, модуль 150 обратного преобразования, модуль 160 фильтрации, буфер 170 декодированной картинки (DPB), модуль интер-предсказания (межкадрового предсказания), модуль 185 интра-предсказания (внутрикадрового предсказания) и модуль 190 энтропийного кодирования.
[0049] Модуль 110 сегментации изображения может сегментировать входное изображение (или картинку или кадр), которое вводится в кодер 100, на одну или более единиц обработки. Например, единицей обработки может быть единица дерева кодирования (CTU), единица кодирования (CU), единица предсказания (PU) или единица преобразования (TU).
[0050] Однако эти понятия используются только для удобства иллюстрации настоящего изобретения, причем настоящее изобретение не ограничивается определениями понятий. В данном техническом описании для удобства иллюстрации понятие «единица кодирования» используется в качестве единицы, которая используется в процессе кодирования или декодирования видеосигнала, однако, настоящее изобретение этим не ограничивается, причем другая единица обработки может быть надлежащим образом выбрана на основании содержимого настоящего изобретения.
[0051] Кодер 100 может формировать остаточный сигнал путем вычитания сигнала предсказания, который выводится из модуля 180 интер-предсказания или модуля 185 интра-предсказания, из входного сигнала изображения. Сформированный остаточный сигнал может быть передан модулю 120 преобразования.
[0052] Модуль 120 преобразования может формировать коэффициент преобразования путем применения схемы преобразования к остаточному сигналу. Процесс преобразования может быть применен к блоку (квадратному или прямоугольному), который получен путем дробления на квадратный блок структуры квадродерева или структуры двоичного дерева, тернарной структуры или ассиметричной структуры.
[0053] Модуль 120 преобразования может выполнять преобразование на основании множества преобразований (или комбинаций преобразований). Такой способ преобразования может именоваться улучшенным множественным преобразованием (EMT). EMT может упоминаться как адаптивное множественное преобразование (AMT) или выбор множественного преобразования (MTS).
[0054] EMT (или AMT или MTS) может означать способ преобразования, который выполняется на основании преобразования (или комбинаций преобразований), адаптивно выбранного из множества преобразований (или комбинаций преобразований).
[0055] Множество преобразований (или комбинаций преобразований) может включать в себя преобразование (или комбинации преобразований), описанные на Фиг. 6 и с 12 по 17 изобретения. В изобретении преобразование или тип преобразования могут быть указаны подобно DCT-Типа 2, DCT-II, DCT-2 или DCT2, например.
[0056] Модуль 120 преобразования может выполнять следующие варианты осуществления.
[0057] Изобретение предоставляет способ замены дискретного косинусного преобразования типа 8 (DCT) на модифицированную форму дискретного синусного преобразования типа 7 (DST7) при использовании данных коэффициента ядра DST7 без каких-либо изменений.
[0058] Кроме того, изобретение предоставляет способ замены DST7 на DST4 и замены DCT8 на модифицированную форму DCT4 при использовании данных коэффициента ядра DST4 без каких-либо изменений.
[0059] Кроме того, изобретение предоставляет способ конфигурирования групп конфигурации преобразования на основании по меньшей мере одного из режима предсказания, размера блока или формы блока, и по-разному конфигурирования преобразования, соответствующего каждой строке или столбцу, при этом одна группа конфигурации преобразования сконфигурирована с одной или более комбинациями преобразований, и одна комбинация преобразований сконфигурирована с преобразованиями, соответствующими всем строкам и столбцам.
[0060] Кроме того, изобретение предоставляет способ конфигурирования преобразований для всех строк и столбцов на основании одного преобразования, такого как DST7 или DST4, и преобразования, модифицированного из них.
[0061] Кроме того, изобретение предоставляет способ конфигурирования набора преобразований, который может быть извлечен по отношению к всем преобразованиям таким образом, как использование линейных отношений между всеми тригонометрическими преобразованиями (8 DCT, 8 DST), или добавление процесса пост-/пред- обработки к части ввода/вывода преобразования, вычисление объединения извлеченных наборов преобразований, и использование объединения для определения комбинации преобразований.
[0062] Его подробные варианты осуществления описаны более конкретно в изобретении.
[0063] Модуль 130 квантования может осуществлять квантование коэффициента преобразования и передавать его модулю 190 энтропийного кодирования. Модуль 190 энтропийного кодирования может осуществлять энтропийное кодирование квантованного сигнала и выводить его в качестве битового потока.
[0064] Модуль 120 преобразования и модуль 130 квантования описаны как отдельные функциональные модули, но изобретение этим не ограничивается. Модуль 120 преобразования и модуль 130 квантования могут быть объединены в единый функциональный модуль. Аналогичным образом модуль 140 обратного квантования и модуль 150 преобразования могут быть объединены в единый функциональный модуль.
[0065] Квантованный сигнал, который выводится модулем 130 квантования, может быть использован, чтобы формировать сигнал предсказания. Например, остаточный сигнал может быть воссоздан путем применения обратного квантования и обратного преобразования к квантованному сигналу посредством модуля 140 обратного квантования и модуля 150 преобразования в цикле. Воссозданный сигнал может быть сформирован путем сложения воссозданного остаточного сигнала с сигналом предсказания, который выводится модулем 180 интер-предсказания или модулем 185 интра-предсказания.
[0066] Между тем, искажения, при которых появляются границы блока, могут возникать из-за ошибки квантования, которая происходит в таком процессе сжатия. Такое явление именуется искажением блочности, которое является одним из важных факторов при оценке качества картинки. Для того чтобы уменьшить такие искажения может быть выполнен процесс фильтрации. Качество картинки может быть улучшено путем уменьшения ошибки текущей картинки при удалении искажения блочности посредством такого процесса фильтрации.
[0067] Модуль 160 фильтрации может применять фильтрацию к воссозданному сигналу и затем выводить отфильтрованный воссозданный сигнал на устройство воспроизведения или в буфер 170 декодированной картинки. Отфильтрованный сигнал, переданный в буфер 170 декодированной картинки, может быть использован в качестве опорной картинки в модуле 180 интер-предсказания. Таким образом при использовании отфильтрованной картинки в качестве опорной картинке в режиме интер-предсказания картинки может быть улучшено не только качество картинки, но также и эффективность кодирования.
[0068] Буфер 170 декодированной картинки может хранить отфильтрованную картинку для использования в качестве опорной картинки в модуле 180 интер-предсказания.
[0069] Модуль 180 интер-предсказания может выполнять временное предсказание и/или пространственное предсказание по воссозданной картинке для того, чтобы удалять временную избыточность и/или пространственную избыточность. В данном случае опорная картинка, используемая для предсказания, может быть преобразованным сигналом, полученным через квантование и обратное квантование на основе блока в предыдущем кодировании/декодировании. Таким образом это может привести к искажениям блочности или искажениям на краях.
[0070] Соответственно для решения проблемы производительности, которая относится к нарушению непрерывности или квантованию сигнала, модуль 180 интер-предсказания может интерполировать сигналы между пикселями на основе подпикселей, используя низкочастотный фильтр. В данном случае подпиксель может означать виртуальный пиксель, сформированный путем применения фильтра интерполяции. Целый пиксель означает фактический пиксель, существующий в воссозданной картинке. Способ интерполяции может включать в себя линейную интерполяцию, билинейную интерполяцию, винеровский фильтр и т.д.
[0062] Фильтр интерполяции применяется к воссозданной картинке и таким образом может улучшить точность предсказания. Например, модуль 180 интер-предсказания может формировать интерполированный пиксель путем применения фильтра интерполяции к целому пикселю, и может выполнять предсказание с использованием интерполированного блока, сконфигурированного с интерполированными пикселями, в качестве блока предсказания.
[0063] Между тем модуль 185 интра-предсказания может предсказывать текущий блок при обращении к выборкам, которые являются периферийными для блока, который должен быть кодирован сейчас. Модуль 185 интра-предсказания может выполнять следующий процесс для того, чтобы выполнять интра-предсказание. Сначала модуль предсказания может подготовить опорную выборку, необходимую для формирования сигнала предсказания. К тому же модуль предсказания может сформировать остаточный сигнал, используя подготовленную опорную выборку. Затем модуль предсказания кодирует режим предсказания. В данном случае опорная выборка может быть подготовлена посредством заполнения опорной выборки и/или фильтрации опорной выборки. Опорная выборка может включать в себя ошибку квантования из-за того, что процесс предсказания и воссоздания был выполнен по опорной выборке. Соответственно для того, чтобы уменьшить такую ошибку процесс фильтрации опорной выборки может быть выполнен в каждом режиме предсказания, который используется для интра-предсказания.
[0064] Сигнал предсказания, сформированный посредством модуля 180 интер-предсказания или модуля 185 интра-предсказания, может быть использован, чтобы формировать воссозданный сигнал, или может быть использован, чтобы формировать остаточный сигнал.
[0071] Фиг. 2 является структурной схемой, иллюстрирующей конфигурацию декодера для декодирования видеосигнала в соответствии с вариантом осуществления настоящего изобретения.
[0072] Обращаясь к Фиг. 2 декодер 200 может быть сконфигурирован с возможностью включения модуля синтаксического анализа (не проиллюстрировано), модуля 210 энтропийного декодирования, модуля 220 обратного квантования, модуля 230 преобразования, фильтра 240, буфера 250 декодированной картинки (DPB), модуля 260 интер-предсказания и модуля 265 интра-предсказания.
[0073] Кроме того, воссозданный сигнал изображения, который выводится посредством декодера 200, может быть воспроизведен посредством устройства воспроизведения.
[0074] Декодер 200 может принимать сигнал, который выводится кодером 100 на Фиг. 1. Принятый сигнал может быть энтропийно декодирован посредством модуля 210 энтропийного декодирования.
[0075] Модуль 220 обратного квантования получает коэффициент преобразования из энтропийно декодированного сигнала, используя информацию о размере шага квантования.
[0076] Модуль 230 преобразования получает остаточный сигнал путем обратного преобразования коэффициента преобразования.
[0077] В данном случае изобретение предоставляет способ для конфигурирования комбинации преобразований для каждой группы конфигурации преобразования, выделенной на основании по меньшей мере одного из режима предсказания, размера блока или формы блока. Модуль 230 преобразования может выполнять обратное преобразование на основании комбинации преобразования, сконфигурированной изобретением. Кроме того, могут быть применены варианты осуществления, описанные в изобретении.
[0078] Модуль 220 обратного квантования и модуль 230 преобразования описаны как отдельные функциональные модули, но изобретение этим не ограничивается. Модуль 220 обратного квантования и модуль 230 преобразования могут быть объединены в едином функциональном модуле.
[0079] Воссозданный сигнал формируется путем сложения полученного остаточного сигнала с сигналом предсказания, который выводится модулем 260 интер-предсказания или модулем 265 интра-предсказания.
[0080] Фильтр 240 может выводить или передавать воссозданный сигнал на устройство воспроизведения или модуль 250 буфера декодированной картинки путем применения фильтрации к воссозданному сигналу. Отфильтрованный сигнал, переданный модулю 250 буфера декодированной картинки, может быть использован в качестве опорной картинки в модуле 260 интер-предсказания.
[0081] В изобретении, варианты осуществления, описанные в модуле 120 преобразования и каждом функциональном модуле кодера 100, могут быть в равной степени применены к модулю 230 преобразования и соответствующим функциональным модулям декодера.
[0082] Фиг. 3 иллюстрирует варианты осуществления, к которым может быть применено изобретение, Фиг. 3A является схемой для описания структуры дробления блока на основании квадродерева (именуемого в дальнейшем «QT»), Фиг. 3B является схемой для описания структуры дробления блока на основании двоичного дерева (именуемого в дальнейшем «BT»), Фиг. 3C является схемой для описания структуры дробления блока на основании тернарного дерева (именуемого в дальнейшем «TT»), и Фиг. 3D является схемой для описания структуры дробления блока на основании ассиметричного дерева (именуемого в дальнейшем «AT»).
[0083] При кодировании видео один блок может быть раздроблен на основании квадродерева (QT). Кроме того, один субблок, раздробленный посредством QT, может быть дополнительно раздроблен рекурсивно, используя QT. Концевой блок, который более не дробится посредством QT, может быть раздроблен с использованием по меньшей мере одного способа из двоичного дерева (BT), тернарного дерева (TT) или ассиметричного дерева (AT). BT может иметь два типа дроблений из горизонтального BT (2N×N, 2N×N) и вертикального BT (N×2N, N×2N). TT может иметь два типа дроблений из горизонтального TT (2N×1/2N, 2N×N, 2N×1/2N) и вертикального TT (1/2N×2N, N×2N, 1/2N×2N). AT может иметь четыре типа разбиений из горизонтального верхнего AT (2N×1/2N, 2N×3/2N), горизонтального нижнего AT (2N×3/2N, 2N×1/2N), вертикального левого AT (1/2N×2N, 3/2N×2N) и вертикального правого AT (3/2N×2N, 1/2N×2N). Каждое BT, TT или AT могут быть дополнительно раздроблены рекурсивно с использованием BT, TT или AT.
[0084] Фиг. 3A показывает пример дробления QT. Блок A может быть раздроблены на четыре субблока A0, A1, A2 и A3 посредством QT. Субблок A1 может быть раздроблен на четыре субблока B0, B1, B2 и B3 посредством QT.
[0085] Фиг. 3B показывает пример дробления BT. Блок B3, который более не дробится посредством QT, может быть раздроблен на вертикальные BT C0 и C1 или горизонтальные BT D0 и D1. Как в блоке C0, каждый субблок может быть дополнительно раздроблен рекурсивно аналогично форме горизонтальных BT E0 и E1 или вертикальных BT F0 и F1.
[0086] Фиг. 3C показывает пример дробления TT. Блок B3, который более не дробится посредством QT, может быть раздроблен на вертикальные TT C0, C1 и C2 или горизонтальные TT D0, D1 и D2. Как в блоке C1 каждый субблок может быть дополнительно раздроблен рекурсивно аналогично форме горизонтальных TT E0, E1 и E2 или вертикальных TT F0, F1 и F2.
[0087] Фиг. 3D показывает пример дробления AT. Блок B3, который более не дробится посредством QT, может быть раздроблен на вертикальные AT C0 и C1 или горизонтальные AT D0 и D1. Как в блоке C1 каждый субблок может быть дополнительно раздроблен рекурсивно аналогично форме горизонтальных AT E0 и E1 или вертикальных AT F0 и F1.
[0088] Между тем дробления BT, TT и AT могут быть раздроблены вместе. Например, субблок, раздробленный посредством BT, может быть раздроблен посредством TT или AT. Кроме того, субблок, раздробленный посредством TT, может быть раздроблен посредством BT или AT. Субблок, раздробленный посредством AT, может быть раздроблен посредством BT или TT. Например, после горизонтального дробления BT каждый субблок может быть раздроблен на вертикальные BT, или после вертикального дробления BT каждый субблок может быть раздроблен на горизонтальные BT. Два типа способов дробления являются разными по последовательности дробления, но имеют одну и ту же итоговую форму дробления.
[0089] Кроме того, если блок раздроблен, то последовательность, по которой осуществляется поиск блока, может быть определена различными путями. В целом поиск осуществляется слева на право или сверху вниз. Поиск блока может означать последовательность для определения, дробить ли дополнительный блок каждого субблока дробления, или может означать последовательность кодирования каждого субблока, если блок более не дробится, или может означать последовательность поиска, когда в субблоке происходит обращение к информации другого соседнего блока.
[0090] Фиг. 4 и 5 являются вариантами осуществления, к которым применяется изобретение. Фиг. 4 иллюстрирует принципиальную структурную схему модуля 120/130 преобразования и квантования и модуля 140/150 обратного квантования и преобразования в кодере, а Фиг. 5 иллюстрирует принципиальную структурную схему модуля 220/230 обратного квантования и преобразования в декодере.
[0091] Обращаясь к Фиг. 4 модуль 120/130 преобразования и квантования может включать в себя модуль 121 первичного преобразования, модуль 122 вторичного преобразования и модуль 130 квантования. Модуль 140/150 обратного квантования и преобразования может включать в себя модуль 140 обратного квантования, модуль 151 обратного вторичного преобразования и модуль 152 обратного первичного преобразования.
[0092] Обращаясь к Фиг. 5 модуль 220/230 обратного квантования и преобразования может включать в себя модуль 220 обратного квантования, модуль 231 обратного вторичного преобразования и модуль 232 обратного первичного преобразования.
[0093] В изобретении, когда выполняется преобразование, преобразование может быть выполнено посредством множества этапов. Например, как на Фиг. 4, может быть применено два этапа из первичного преобразования и вторичного преобразования, или может быть использовано больше этапов преобразования в соответствии с алгоритмом. В данном случае первичное преобразование может упоминаться как базовое преобразование.
[0094] Модуль 121 первичного преобразования может применять первичное преобразование к остаточному сигналу. В данном случае первичное преобразование может быть предопределено в форме таблицы в кодере и/или декодере.
[0095] Дискретное косинусное преобразование типа 2 (далее «DCT2») может быть применено к первичному преобразованию. В качестве альтернативы дискретное синусное преобразование-типа 7 (далее именуемое «DST7») может быть применено к особому случаю. Например, в режиме интра-предсказания DST7 может быть применено к 4×4 блоку.
[0096] Кроме того, комбинации нескольких преобразований (DST 7, DCT 8, DST 1 и DCT 5) из адаптивных множественных преобразований (AMT) могут быть применены к первичному преобразованию. Например, может быть применена Фиг. 6.
[0097] Модуль 122 вторичного преобразования может применять вторичное преобразование к сигналу после первичного преобразования. В данном случае вторичное преобразование может быть предопределено в форме таблицы в кодере и/или декодере.
[0098] В одном варианте осуществления неразделимое вторичное преобразование (далее «NSST») может быть условно применено к вторичному преобразованию. Например, NSST применяется только к блоку интра-предсказания и может иметь набор преобразований, который может быть применен к каждой группе режима предсказания.
[0099] В данном случае группа режима предсказания может быть сконфигурирована на основании симметрии для направления предсказания. Например, режим 52 предсказания и режим 16 предсказания являются симметричными по отношению к режиму 34 предсказания (диагональное направление), и могут формировать единую группу. Соответственно один и тот же набор преобразований может быть применен к единой группе. В данном случае, когда применяется преобразование для режима 52 предсказания, то оно применяется после того, как входные данные транспонированы. Причина этого состоит в том, что набор преобразований для режима 16 предсказания является точно таким же, как тот что для режима 52 предсказания.
[0100] Между тем, плоский режим и режим DC имеют соответствующей набор преобразований, так как не присутствует симметрия для направления, причем соответствующий набор преобразований может быть сконфигурирован с двумя преобразованиями. Оставшийся направленный режим может быть сконфигурирован с тремя преобразованиями для каждого набора преобразований.
[0101] В другом варианте осуществления NSST не применяется к всей зоне блока после первичного преобразования, а может быть применено только к верхней левой 8×8 зоне. Например, если размер блока составляет 8×8 или больше, то применяется 8×8 NSST. Если размер блока меньше 8×8, то применяется 4×4 NSST, в данном случае после того, как блок раздроблен на 4×4 блоки, 4×4 NSST применяется к каждому из блоков.
[0102] Модуль 130 квантования может выполнять квантование сигнала после вторичного преобразования.
[0103] Модуль 140/150 обратного квантования и преобразования выполняет вышеупомянутый процесс в обратную сторону и его избыточное описание опущено.
[0104] Фиг. 5 иллюстрирует принципиальную структурную схему модуля 220/230 обратного квантования и преобразования в декодере.
[0105] Обращаясь к Фиг. 5 модуль 220/230 обратного квантования и преобразования может включать в себя модуль 220 обратного квантования, модуль 231 обратного вторичного преобразования и модуль 232 обратного первичного преобразования.
[0106] Модуль 220 обратного квантования получает коэффициент преобразования из энтропийно декодированного сигнала, используя информацию о размере шага квантования.
[0107] Модуль 231 обратного вторичного преобразования выполняет обратное вторичное преобразование над коэффициентом преобразования. В данном случае обратное вторичное преобразование указывает обратное преобразование для вторичного преобразования, описанного на Фиг. 4.
[0108] Модуль 232 обратного первичного преобразования выполняет обратное первичное преобразование над сигналом (или блоком) после обратного вторичного преобразования и получает остаточный сигнал. В данном случае обратное первичное преобразование указывает обратное преобразование для первичного преобразования, описанного на Фиг. 4.
[0109] Изобретение предоставляет способ для конфигурирования комбинации преобразований для каждой группы конфигурации преобразования, выделенной посредством по меньшей мере одного из режима предсказания, размера блока или формы блока. Модуль 232 обратного первичного преобразования может выполнять обратное преобразование на основании комбинации преобразований, сконфигурированной изобретением. Кроме того, могут быть применены варианты осуществления, описанные в изобретении.
[0110] Фиг. 6 является вариантом осуществления, к которому применяется изобретение, и является таблицей, иллюстрирующей группу конфигурации преобразования, к которой применяются адаптивные множественные преобразования (AMT).
[0111] Группа конфигурации преобразования, к которой применяются адаптивные множественные преобразования (AMT).
[0112] В изобретение j-я потенциальная комбинация преобразований для группы Gi конфигурации преобразования указывается в парах, таких как Уравнение 1.
[0113] [Уравнение 1]
(H(Gi, j), V(Gi, j))
[0114] В данном случае H(Gi, j) указывает горизонтальное преобразование для j-ой потенциальной комбинации, а V(Gi, j) указывает вертикальное преобразование для j-ой потенциальной комбинации. Например, на Фиг. 6 может быть указано H(G3, 2) = DST7, V(G3, 2) = DCT8. В соответствии с контекстом значение, назначенное H(Gi, j) или V(Gi, j), может быть номинальным значением, чтобы проводить различие между преобразованиями, как в примере, или может быть значением индекса, указывающим соответствующее преобразование, или может быть 2-мерной матрицей (2D матрица) для соответствующего преобразования.
[0115] Кроме того, в изобретении значения 2D матрицы для DCT и DST могут быть указаны аналогично Уравнениям 2 и 3.
[0116] [Уравнение 2]
DCT тип 2: , DCT тип 8:
[0117] [Уравнение 3]
DST тип 7: , DST тип 4:
[0118] В данном случае, является ли преобразование DST или DCT, указывается как S или C, номер типа указывается как надстрочный индекс в форме римской цифры, а N у подстрочного индекса указывает N×N преобразование. Кроме того, предполагается, что в 2D матрицах, таких как и , векторы-столбцы образуют базис преобразования.
[0119] Обращаясь к Фиг. 6, группы конфигурации преобразования могут быть определены на основании режима предсказания, и в общей сложности количество групп может составлять 6 G0 ~ G5. Кроме того, G0 ~ G4 соответствуют случаю, когда применяется интра-предсказание, а G5 указывает комбинации преобразований (или набор преобразований, набор комбинаций преобразований), которые применяются к остаточному блоку, сформированному посредством интер-предсказания.
[0120] Одна комбинация преобразований может быть сконфигурирована с горизонтальным преобразованием (или преобразованием строки), которое применяется к строкам соответствующего 2D блока, и вертикальным преобразованием (или преобразование столбца), которое применяется к столбцам соответствующего 2D блока.
[0121] В данном случае каждая из групп конфигурации преобразования может иметь четыре потенциальные комбинации преобразований. Четыре потенциальные комбинации преобразований могут быть выбраны или определены посредством индексов 0~3 комбинации преобразований. Кодер может кодировать индекс комбинации преобразований и передавать его декодеру.
[0122] В одном варианте осуществления остаточные данные (или остаточный сигнал), полученные посредством интра-предсказания, могут обладать разными статистическими характеристиками в зависимости от своего режима интра-предсказания. Соответственно, как на Фиг. 6, другие преобразования, не являющиеся общим косинусным преобразованием, могут быть применены для каждого режима интра-предсказания.
[0123] Фиг. 6 иллюстрирует случай, когда используется 35 режимов интра-предсказания, и случай, когда используется 67 режимов интра-предсказания. Множество комбинаций преобразований может быть применено к каждой группе конфигурации преобразования, выделенной в столбце режима интра-предсказания. Например, множество комбинаций преобразований может быть сконфигурировано с четырьмя (преобразование направления строки и преобразование направления столбца) комбинациями. В качестве подробного примера в группе 0 доступно в общей сложности четыре комбинации, так как DST-7 и DCT-5 могут быть применены как в (горизонтальном) направлении строки, так и (вертикальном) направлении столбца.
[0124] Поскольку всего четыре комбинации ядра преобразования могут быть применены к каждому режиму интра-предсказания, то индекс комбинации преобразований для выбора одной из четырех комбинаций ядра преобразования может быть передан для каждой единицы преобразования. В изобретении индекс комбинации преобразований может именоваться индексом AMT и может быть представлен как amt_idx.
[0125] Кроме того, в дополнение к ядрам преобразования, предложенным на Фиг. 6, случай, когда DCT-2 является наилучшим как для направления строки, так и направления столбца, может возникнуть из сущности остаточного сигнала. Соответственно, преобразование может быть адаптивно выполнено путем определения флага AMT для каждой единицы кодирования. В данном случае, когда флаг AMT является 0, DCT-2 может быть применено как к направлению строки, так и направлению столбца. Когда флаг AMT является 1, одна из четырех комбинаций может быть выбрана или определена посредством индекса AMT.
[0126] В одном варианте осуществления, когда флаг AMT является 1, если количество ненулевых коэффициентов преобразования для одной единицы преобразования не больше пороговой величины, то DST-7 может быть применено как к направлению строки, так и направлению столбца без применений ядер преобразования на Фиг. 6. Например, пороговая величина может быть установлена в 2, которая может быть по-разному установлена на основании размера для размера блока или единицы преобразования. Это также может быть применено к другим вариантам осуществления изобретения.
[0127] В одном варианте осуществления сначала может быть осуществлен синтаксический анализ значений коэффициента преобразования. Если количество ненулевых коэффициентов преобразования не больше пороговой величины, то не осуществляется синтаксический анализ индекса AMT и применяется DST-7, тем самым сокращая объем передаваемой дополнительной информации.
[0128] В одном варианте осуществления, когда флаг AMT является 1, если количество ненулевых коэффициентов преобразования для одной единицы преобразования больше пороговой величины, то осуществляется синтаксический анализ индекса AMT и горизонтальное преобразование и вертикальное преобразование могут быть определены на основании индекса AMT.
[0129] В одном варианте осуществления AMT может быть применено к случаю, когда как ширина, так и высота единицы преобразования составляют 32 или меньше.
[0130] В одном варианте осуществления Фиг. 6 может быть представлена посредством автономного обучения.
[0131] В одном варианте осуществления индекс AMT может быть определен в качестве одного индекса, выполненного с возможностью указания комбинации горизонтального преобразования и вертикального преобразования. В качестве альтернативы индекс AMT может отдельно определять индекс горизонтального преобразования и индекс вертикального преобразования.
[0132] В одном варианте осуществления флаг AMT или индекс AMT могут быть определены по меньшей мере на одном уровне из уровней последовательности, картинки, слайса, блока, единицы кодирования, единицы преобразования или единицы предсказания. Например, флаг AMT или индекс AMT могут быть определены по меньшей мере в одном из набора параметров последовательности (SPS) или единицы преобразования.
[0133] Вариант (1) осуществления: способ замены DCT8 на модифицированную форму DST7
[0134] и удовлетворяют уравнению отношения для Уравнения 4.
[0135] [Уравнение 4]
где
и
[0136] В Уравнении 4 является матрицей со значение 1 только в обратной линии диагонали, а является матрицей, в которой 1 и -1, чередуясь, появляются только в линии диагонали.
[0137] Уравнение 5 иллюстрирует процесс получения N×1 вектора коэффициентов преобразования путем применения прямого преобразования ( ) у DCT8 к N×1 входному вектору .
[0138] [Уравнение 5]
где
и
если и .
[0139] В данном случае подстрочный индекс A является сокращением от чередующийся и указывает, что знак меняется чередуясь. Подстрочный индекс R означает, что меняется порядок векторов, а подстрочный индекс AR означает, что применяются два случая.
[0140] Если уравнение разворачивается, как в Уравнении 5, путем применения Уравнения 4, то отдельное пространство памяти для хранения не требуется в кодеке, так как преобразование для может быть применено, используя только базисные векторы преобразования, образующие .
[0141] Как в Уравнении 5, когда применяется прямое преобразование для , то может быть вычислено и может быть умножено или может быть умножено без изменения . Кроме того, когда применяются и , то перемена знака не применяется к самим базисным векторам, образующим , но как в Уравнении 6, скалярное произведение может быть вычислено путем применения перемены знака к , когда вычисляются каждый базисный вектор и скалярное произведение для .
[0142] [Уравнение 6]
[0143] Уравнения 5 и 6 предлагают способ, который позволяет избавиться от памяти, которая требуется для хранения , путем представления в качестве данных коэффициента ядра у . В дополнение может быть использовано вместо , как в Уравнении 7, без применения уравнения отношения из Уравнения 4 без каких-либо изменений.
[0144] [Уравнение 7]
[0145] В данном случае указывает зеркально отображенное DST7. Если используется как в Уравнении 7, то это является точно тем же, как то, что применяется к , вместо . Соответственно нет необходимости в чередующемся применении перемены знака как в Уравнениях 5 и 6. Способ применения обратного (инверсного) преобразования, соответствующий Уравнению 5, является точно таким же, как Уравнение 8, а способ применения обратного (инверсного) преобразования, соответствующий Уравнению 7, является точно таким же, как Уравнение 9.
[0146] [Уравнение 8]
где .
[0147] [Уравнение 9]
где .
[0148] Вариант (2) осуществления: способ замены DST7 на DST4 и замены DCT8 на модифицированную форму DST4
[0149] В одном варианте осуществления изобретения предлагается способ использования DST4 вместо DST7. Как в Уравнении 10 точно такое уравнение отношения устанавливается между DST4 и DCT4, как между DST7 и DCT8.
[0150] [Уравнение 10]
[0151] Соответственно, если DST4 используется вместо DST7, если DCT4 используется вместо DCT8, то DCT4 может быть представлено как DST4, используя Уравнение 10. Соответственно, не требуется отдельное пространство памяти для хранения DCT4. Способ применения прямого преобразования к DCT4 с использованием точно такого же способа, как Уравнение 5, описывается как Уравнение 11.
[0152] [Уравнение 11]
где
и
если и .
[0153] В Уравнении 12, как в Уравнении 6, точно такие же результаты как Уравнение 11 могут быть получены без какой-либо модификации для данных коэффициента ядра у путем правильного применения перемены знака для .
[0154] [Уравнение 12]
[0155] Кроме того, как в Уравнении 13, можно избежать перемены знака, используя вместо , используя точно такой же способ как Уравнение 7.
[0156] [Уравнение 13]
[0157] Способ применения обратного (инверсного) преобразования, соответствующий Уравнению 11, является точно таким же, как Уравнение 14, а способ применения обратного (инверсного) преобразования, соответствующий Уравнению 13, является точно таким же как Уравнение 15.
[0158] [Уравнение 14]
где .
[0159] [Уравнение 15]
где .
[0160] Фиг. 7 является вариантом осуществления, к которому применяется изобретение, и является блок-схемой, иллюстрирующей процесс кодирования, в котором применяются адаптивные множественные преобразования (AMT).
[0161] В изобретении, главным образом, описывается вариант осуществления, в котором преобразования отдельно применяются к горизонтальному направлению и вертикальному направлению, но комбинация преобразования может быть сконфигурирована с неразделимыми преобразованиями.
[0162] В качестве альтернативы, разделимые преобразования и неразделимые преобразования могут быть смешаны и сконфигурированы. В данном случае, если используется неразделимое преобразование, то не требуется выбор преобразования для каждой строки/столбца или для каждого горизонтального/вертикального направления, и комбинации преобразований на Фиг. 6 могут быть использованы, только когда выбираются разделимые преобразования.
[0163] Кроме того, способы, предложенные в изобретении, могут быть применены независимо от первичного преобразования или вторичного преобразования. Т.е. отсутствует ограничение в том, что способы должны применяться только к любому из первичного преобразования или вторичного преобразования, и могут быть применены к обоим. В данном случае первичное преобразование может означать преобразование для первого преобразования остаточного блока, а вторичное преобразование может означать преобразование для применения преобразования к блоку, сформированному в результате первичного преобразования.
[0164] Сначала кодер может определять группу конфигурации преобразования, соответствующую текущему блоку (S710). В данном случае группа конфигурации преобразования может означать группу конфигурации преобразования на Фиг. 6, но изобретение этим не ограничивается. Группа конфигурации преобразования может быть сконфигурирована с другими комбинациями преобразований.
[0165] Кодер может выполнять преобразование для доступных потенциальных комбинаций преобразования в группе конфигурации преобразования (S720).
[0166] Кодер может определять или выбирать комбинацию преобразований с наименьшей стоимостью отношения скорости к искажению (RD) на основании результата исполнения преобразования (S730).
[0167] Кодер может кодировать индекс комбинации преобразований, соответствующий выбранной комбинации преобразования (S740).
[0168] Фиг. 8 является вариантом осуществления, к которому применяется изобретение, и является блок-схемой, иллюстрирующей процесс декодирования, в котором выполняются адаптивные множественные преобразования (AMT).
[0169] Сначала декодер может определять группу конфигурации преобразования для текущего блока (S810).
[0170] Декодер может определять посредством синтаксического анализа (или получать) индекс комбинации преобразований из видеосигнала. В данном случае индекс комбинации преобразований может соответствовать любой из множества комбинаций преобразований в группе конфигурации преобразования (S820). Например, группа конфигурации преобразования может включать в себя дискретное синусное преобразование типа 7 (DST 7) и дискретное косинусное преобразование типа 8 (DCT8). Индекс комбинации преобразований может именоваться индексом AMT.
[0171] В одном варианте осуществления группа конфигурации преобразования может быть сконфигурирована на основании по меньшей мере одного из режима предсказания, размера блока или формы блока у текущего блока.
[0172] Декодер может извлекать комбинацию преобразований, соответствующую индексу комбинации преобразований (S830). В данном случае комбинация преобразований конфигурируется с горизонтальным преобразованием и вертикальным преобразованием, и может включать в себя одно из DST-7 или DCT-8.
[0173] Кроме того комбинация преобразований может означать комбинацию преобразований, описанную на Фиг. 6, но изобретение этим не ограничивается. Т.е. возможно конфигурирование на основании другой комбинации преобразований в соответствии с другим вариантом осуществления изобретения.
[0174] Декодер может выполнять обратное преобразование над текущим блоком на основании комбинации преобразования (S840). Если комбинация преобразований сконфигурирована с (горизонтальным) преобразованием строки и (вертикальным) преобразованием столбца, то после того, как сначала применяется (горизонтальное) преобразование строки, может быть применено (вертикальное) преобразование столбца. В данном случае изобретение этим не ограничивается и может быть применено в обратном порядке или если комбинация преобразований сконфигурирована с неразделимыми преобразованиями, то сразу могут быть применены неразделимые преобразования.
[0175] В одном варианте осуществления, если вертикальное преобразование или горизонтальное преобразование является DST-7 или DCT-8, то обратное преобразование DST-7 или обратное преобразование DCT-8 может быть применено для каждого столбца и затем применено для каждой строки.
[0176] В одном варианте осуществления вертикальное преобразование или горизонтальное преобразование может быть по-разному применено к каждой строке и/или каждому столбцу.
[0177] В одном варианте осуществления индекс комбинации преобразований может быть получен на основании флага AMT, указывающего, выполняется ли AMT. Т.е. индекс комбинации преобразований может быть получен, если выполняется AMT, на основании флага AMT.
[0178] В одном варианте осуществления декодер может проверять, является ли количество ненулевых коэффициентов преобразования большим, чем пороговая величина. В данном случае индекс комбинации преобразования может быть получен, когда количество ненулевых коэффициентов преобразования больше пороговой величины.
[0179] В одном варианте осуществления флаг AMT или индекс AMT могут быть определены по меньшей мере на одном уровне из уровней последовательности, картинки, слайса, блока, единицы кодирования, единицы преобразования или единицы предсказания.
[0180] В одном варианте осуществления обратное преобразование может быть применено, когда как ширина, так и высота единицы преобразования соответствует 32 или меньше.
[0181] Между тем, в другом варианте осуществления процесс определения группы конфигурации преобразования и процесс синтаксического анализа индекса комбинации преобразований могут быть выполнены одновременно. В качестве альтернативы этап S810 может быть предварительно установлен в кодере и/или декодере и опущен.
[0182] Фиг. 9 является вариантом осуществления, к которому применяется изобретение, и является блок-схемой для описания процесса кодирования флага AMT и индекса AMT.
[0183] Кодер может определять, применяются ли адаптивные множественные преобразования (AMT) к текущему блоку (S910).
[0184] Если адаптивные множественные преобразования (AMT) применяются, то кодер может кодировать флаг AMT=1 (S920).
[0185] Кроме того, кодер может определять индекс AMT на основании по меньшей мере одного из режима предсказания, горизонтального преобразования и вертикального преобразования текущего блока (S930). В данном случае индекс AMT означат индекс, указывающий любую из множества комбинаций преобразований для каждого режима интра-предсказания, и индекс AMT может быть передан для каждой единицы преобразования.
[0186] Когда определяется индекс AMT, кодер может кодировать индекс AMT (S940).
[0187] Между тем, если адаптивные множественные преобразования (AMT) не применяются, то кодер может кодировать флаг AMT=0 (S950).
[0188] Фиг. 10 является вариантом осуществления, к которому применяется изобретение, и является блок-схемой для описания процесса декодирования с применением горизонтального преобразования или вертикального преобразования к строке или столбцу на основании флага AMT и индекса AMT.
[0189] Декодер может определять посредством синтаксического анализа флаг AMT из битового потока (S1010). В данном случае флаг AMT может указывать, применяются ли адаптивные множественные преобразования (AMT) к текущему блоку.
[0190] Декодер может проверять, применяются ли адаптивные множественные преобразования (AMT) к текущему блоку на основании флага AMT (S1020). Например, декодер может проверять, является ли 1 флаг AMT.
[0191] Если флаг AMT является 1, то декодер может проверять, является ли количество ненулевых коэффициентов преобразования большим, чем пороговая величина (или более) (S1030). Например, пороговая величина может быть установлена в 2. Она может быть по-разному установлена на основании размера блока или размера единицы преобразования.
[0192] Если количество ненулевых коэффициентов преобразования больше пороговой величины, то декодер может определять посредством синтаксического анализа индекс AMT (S1040). В данном случае индекс AMT означает индекс, указывающий любую из множества комбинаций преобразований для каждого режима интра-предсказания или режима интер-предсказания. Индекс AMT может быть передан для каждой единицы преобразования. В качестве альтернативы индекс AMT может означать индекс, указывающий любую комбинацию преобразований, определенную в предварительно установленной таблице комбинаций преобразований. Предварительно установленная таблица комбинаций преобразований может означать Фиг. 6, но изобретение этим не ограничивается.
[0193] Декодер может извлекать или определять горизонтальное преобразование и вертикальное преобразование на основании по меньшей мере одного из индекса AMT или режима предсказания (S1050).
[0194] В качестве альтернативы декодер может извлекать комбинацию преобразований, соответствующую индексу AMT. Например, декодер может извлекать или определять горизонтальное преобразование и вертикальное преобразование, соответствующие индексу AMT.
[0195] Между тем, если количество ненулевых коэффициентов преобразования не больше пороговой величины, то декодер может применять предварительно установленное вертикальное обратное преобразование к каждому столбцу (S1060). Например, вертикальное обратное преобразование может быть обратным преобразованием DST7.
[0196] Кроме того, декодер может применять предварительно установленное горизонтальное обратное преобразование к каждой строке (S1070). Например, горизонтальное обратное преобразование может быть обратным преобразованием DST7. Т.е., если количество ненулевых коэффициентов преобразования не больше пороговой величины, то может быть использовано ядро преобразования, предварительно установленное в кодере или декодере. Например, могут быть использованы не ядра преобразования, которые определены в таблице комбинаций преобразований на Фиг. 6, а обычно используемые ядра преобразования.
[0197] Между тем, когда флаг AMT являет 0, декодер может применять предварительно установленное вертикальное обратное преобразование к каждому столбцу (S1080). Например, вертикальным обратным преобразованием может быть обратное преобразование DCT-2.
[0198] Кроме того, декодер может применять предварительно установленное горизонтальное обратное преобразование к каждой строке (S1090). Например, горизонтальным обратным преобразованием может быть обратное преобразование DCT-2. Т.е., когда флаг AMT является 0, может быть использовано ядро преобразования, предварительно установленное в кодере или декодере. Например, могут быть использованы не ядра преобразования, которые определены в таблице комбинаций преобразований на Фиг. 6, а обычно используемые ядра преобразования.
[0199] Фиг. 11 является вариантом осуществления, к которому применяется изобретение, и является схемой для описания способа по-разному конфигурирования преобразования, соответствующего каждой строке или столбцу, комбинации преобразований.
[0200] Вариант (3) осуществления: способ по-разному конфигурирования преобразования, соответствующего каждой строке или столбцу, комбинации преобразований
[0201] В одном варианте осуществления изобретения N×N преобразование может быть применено к M×N 2-мерному (2D) блоку в горизонтальном направлении (строки), и M×M преобразование может быть применено к M×N 2D блоку в вертикальном направлении (столбца).
[0202] В другом варианте осуществления различные преобразования могут быть применены к M строкам на Фиг. 11, и различные преобразования могут быть применены к N столбцам на Фиг. 11. Все горизонтальные преобразования (строки) и вертикальные преобразования (столбца) могут быть указаны как знаки аналогично Уравнению 16.
[0203] [Уравнение 16]
Горизонтальные преобразования (строки):
Вертикальные преобразования (столбца):
[0204] и могут быть элементами, принадлежащими соответствующим назначенным наборам преобразований. Например, следующим образом, предполагая, что присутствуют , т.е. набор преобразований для , и , т.е. набор преобразований для , могут быть представлены Уравнение 17 и Уравнение 18.
[0205] [Уравнение 17]
[0206] где (количество элементов, составляющих , число элементов множества).
[0207] [Уравнение 18]
где (количество элементов, составляющих , число элементов множества).
[0208] В данном случае устанавливаются и , и и могут перекрываться. Т.е. они могут иметь одно и то же преобразование.
[0209] Если все являются одним и тем же преобразованием и также являются одним и тем же преобразованием, то получается общее 2D разделимое преобразование. Если M=N, то и могут иметь общий элемент, т.е. они могут иметь пересечение, а не пустой набор.
[0210] Примеры и перечислены как Уравнения с 19 по 21. В изобретении для удобства предполагается, что и далее вместе именуются , и применяемое направление (горизонтальное или вертикальное) или размер преобразования (M×M или N×N) могут быть проверены по контексту.
[0211] [Уравнение 19]
[0212] [Уравнение 20]
[0213] [Уравнение 21]
[0214] Как на Фиг. 6, могут быть разными в зависимости от группы конфигурации преобразования. Кроме того, могут быть разными в зависимости от длины каждой стороны 2D блока в дополнение к группе конфигурации преобразования. Разные могут быть сконфигурированы в зависимости от формы блока.
[0215] В Уравнении 21 не был обозначен размер преобразования (отмечено □). Это означает, что размер не учитывается при выборе (или определении) преобразования или правильный размер адаптивно выбирается в зависимости от ситуации, в которой применяется преобразование. Например, предполагая, что было выбрано , это может означать, что применяется , если длина составляет 8, и используется , если длина составляет 4. Например, на Фиг. 6 для горизонтального преобразования в G1 соответствует .
[0216] Фиг. 12 является вариантом осуществления, к которому применяется изобретение, и является схемой для описания способа конфигурирования общей группы конфигурации преобразования на основании по меньшей мере одного из режима предсказания, размера блока или формы блока.
[0217] Как описано на Фиг. 6, j-я потенциальная комбинация преобразований для группы Gi конфигурации преобразования была указана как (H(Gi, j), V(Gi, j)). В данном случае H(Gi, j) и V(Gi, j) указывают соответствующее применяемое горизонтальное преобразование и вертикальное преобразование.
[0218] На Фиг. 6 горизонтальное преобразование и вертикальное преобразование каждой потенциальной комбинации было указано как уравнение, такое как H(Gi, j) = DST7, потому что они являются одиночным преобразованием (например, DST7, DCT5). Если разные преобразования могут быть применены к всем строкам или столбцам, то H(Gi, j) и V(Gi, j) могут быть представлены в качестве кортежа, сконфигурировано с M и N элементами, как в Уравнении 22.
[0219] [Уравнение 22]
[0220] В Уравнении 22 может быть выбрано из разных , и может быть назначено из одного и того же . То же самое применяется и к . Таблица для конфигурирования общей группы конфигурации преобразования с использованием системы обозначений в Уравнении 22 показана на Фиг. 12.
[0221] Группа конфигурации преобразования на Фиг. 12 может быть сконфигурирована на основании режима предсказания, как на Фиг. 6, и может быть сконфигурирована на основании комбинации по меньшей мере одного из режима предсказания, размера блока или формы блока. Например, потенциальные преобразования, применяемые к 4×8 остаточному блоку, который формируется посредством режима 0 интра-предсказания (плоский режим), могут быть назначены в качестве Группы 0. В данном случае H(G0, j) является кортежем, сконфигурированным с четырьмя 8×8 преобразованиями, а V(G0, j) является кортежем, сконфигурированным с восемью 4×4 преобразованиями.
[0222] Группы конфигурации преобразования могут быть сконфигурированы путем одновременного выделения всех случаев, как на Фиг. 12, но группы конфигурации преобразования могут быть объединены путем разделения их на множество таблиц.
[0223] Фиг. 12 и 14 являются вариантами осуществления, к которым применяется изобретение, и являются таблицами для описания способа разделения групп конфигурации преобразования на множество таблиц на основании по меньшей мере одного из режима предсказания, размера блока или формы блока, и объединения групп конфигурации преобразования.
[0224] Фиг. 13 показывает группу, конфигурирующую преобразование строки (или горизонтальное преобразование), а Фиг. 14 показывает группу, конфигурирующую преобразование столбца (или вертикальное преобразование).
[0225] В одном варианте осуществления изобретения предоставляется способ для деления на таблицу для конфигурации преобразования строки и таблицу для конфигурации преобразования столбца.
[0226] Если кодер передает индекс преобразования, указывающий, какая комбинация преобразований будет использована, он может раздельно сигнализировать индекс преобразования строки для обозначения преобразования строки (H(HGi, j)) и индекс преобразования столбца, указывающий преобразование столбца (V(VGi, j)), или может сигнализировать один индекс преобразования, включающий в себя два фрагмента информации об индексе.
[0227] На Фиг. 12 и 14 предоставлены таблицы только для 4×4 преобразования, но изобретение этим н ограничивается. Например, отличные таблицы групп конфигурации преобразования могут быть определены для других размеров (например, 8×8 и 32×32).
[0228] Если преобразование применяется к 16×8 блоку, то происходит обращение к таблице горизонтального преобразования 8×8 в горизонтальном направлении и таблице вертикального преобразования 16×16 в вертикальном направлении.
[0229] Фиг. 15 является вариантом осуществления, к которому применяется изобретение, и иллюстрирует пример, в котором группа конфигурации преобразования конфигурируется с использованием одного набора преобразований.
[0230] Вариант (4) осуществления: способ конфигурирования группы конфигурации преобразования с использованием одного набора преобразований
[0231] Как описано в Варианте (1) осуществления на Фиг. 6, DST7 и модифицированная форма DST7 могут быть использованы в качестве набора преобразований. Тот же самый может применяться к кортежу (H(Gi, j)) для всех горизонтальных преобразований и кортежу (V(Gi, j)) для всех вертикальных преобразований. В данном случае в преобразованиях, конфигурирующих набор преобразований, соответствующий размер может быть выбран в соответствии с обстоятельствами независимо от размеров преобразования (4×4 и 8×8). Связанные доступные наборы преобразований могут быть перечислены как Уравнение 23.
[0232] [Уравнение 23]
[0233] В данном случае надстрочный индекс A является сокращением от чередующийся и указывает, что знак меняется чередуясь. Надстрочный индекс R означает, что меняется порядок векторов, а надстрочный индекс AR означает, что применяются два типа.
[0234] В уравнении 23, для в частности, не требуется добавления отельных данных коэффициента ядра, поскольку используются точно такие же данные коэффициента ядра, что и в .
[0235] Кроме того, в общем кодеке DCT2 может быть включено в набор преобразований без добавления памяти, поскольку DCT2 уже включено. Примеры набора преобразований, включающего в себя DCT2, показаны в Уравнении 24.
[0236] [Уравнение 24]
[0237] Группа конфигурации преобразования может быть сконфигурирована как на Фиг. 6 или Фиг. 12 с использованием наборов преобразований в Уравнении 23 или Уравнении 24.
[0238] Например, если группа конфигурации преобразования сконфигурирована аналогично Фиг. 6, то это указывает способ применения одного и того же горизонтального преобразования к всем строкам и одного и того же вертикального преобразования к всем столбцам в отношении блока.
[0239] Кроме того, на Фиг. 6 преобразование, соответствующее размеру соответствующего блока должно выбираться только в отношении назначенного преобразования, так как таблица не отличается в зависимости от формы или размера блока. Если группа конфигурации преобразования сконфигурирована как на Фиг. 6, для того чтобы сократить память, требуемую для хранения данных коэффициента ядра преобразования, то может быть выбран один из наборов преобразований, предложенных в Уравнении 23, и могут быть описаны потенциальные группы из всех групп конфигурации преобразования, или может быть выбран один из наборов преобразований, предложенных в Уравнении 24, и могут быть определены потенциальные группы из всех групп конфигурации преобразования.
[0240] Фиг. 15 иллюстрирует пример, в котором комбинации преобразований всех группы конфигурации преобразования описываются с использованием только набора преобразований .
[0241] Далее Фиг. 16 описывает пример, в котором группа конфигурации преобразования конфигурируется с использованием разных наборов преобразований на основании размера блока преобразования.
[0242] Фиг. 16 является вариантом осуществления, к которому применяется изобретение, и иллюстрирует пример, в котором группа конфигурации преобразования конфигурируется с использованием разных наборов преобразований на основании размера блока преобразования.
[0243] В качестве примера, в котором группа конфигурации преобразования конфигурируется с использованием способа на Фиг. 12, Фиг. 16 иллюстрирует случай, когда набор преобразований используется в случае 4×4 преобразования и набор преобразований используется в случае 8×8 преобразования.
[0244] Например, на Фиг. 16 Группа 0 соответствует 8×4 блоку, к которому применяется плоский режим и режим DC.
[0245] В одном варианте осуществления изобретения, предполагая, что DST4 может быть использовано вместо DST7, как в Уравнении (2), набор преобразований может быть установлен с использованием точно такого же способа, как в Уравнениях 23 и 24. Уравнение 25 указывает пример, в котором только используется в качестве данных коэффициента ядра преобразования, и Уравнение 26 показывает пример, в котором и используются в качестве данных коэффициента ядра преобразования.
[0246] [Уравнение 25]
[0247] [Уравнение 26]
[0248] Так же комбинации преобразований, такие как на Фиг. 15 или Фиг. 16, могут быть сконфигурированы с использованием наборов преобразований, предложенных в Уравнениях 25 и 26. Если группа конфигурации преобразования отличается в зависимости от размера блока или формы блока, то должен использоваться только набор преобразований, соответствующий размеру блока.
[0249] По существу набор преобразований может включать в себя любые преобразования. Например, как в Уравнении 27, набор преобразований может быть сконфигурирован путем включения всех преобразований, относящихся к и . В качестве альтернативы, как в Уравнении 28, набор преобразований может быть сконфигурирован путем включения всех типов косинусных преобразований/синусных преобразований. В качестве альтернативы, как в Уравнении 29, набор преобразований может быть сконфигурирован путем включения преобразования Корунена-Лоэва (KLT) или разряженного ортонормального преобразования (SOT), полученного из обучающих данных.
[0250] [Уравнение 27]
[0251] [Уравнение 28]
[0252] [Уравнение 29]
[0253] Кроме того, в изобретении предполагается, что, по существу, преобразования раздельно применяются к горизонтальному направлению и вертикальному направлению, но набор преобразований может быть сконфигурирован с неразделимыми преобразования и разделимыми преобразованиями, и неразделимые преобразования могут быть смешаны и сконфигурированы в соответствии с обстоятельствами.
[0254] В случае смешанной конфигурации, если выбирается неразделимое преобразование, то не нужен выбор преобразования для каждой строки/столбца или для каждого горизонтального/вертикального направления. Комбинации преобразований, предложенные посредством вышеупомянутых вариантов осуществления, могут быть сконфигурированы, только если выбираются разделимые преобразования.
[0255] Варианты осуществления изобретения могут быть применены независимо от первичного преобразования или вторичного преобразования. Т.е. отсутствует ограничение в том, что варианты осуществления должны применяться к любому из первичного преобразования или вторичного преобразования и могут быть применены к ним.
[0256] Фиг. 17 является вариантом осуществления, к которому применяется изобретение, и иллюстрирует пример, в котором конфигурируется натянутый набор.
[0257] Вариант (5) осуществления: конфигурируют натянутый набор
[0258] Уравнение для косинусного преобразования, применяемого в изобретении, является точно таким же как Уравнение 30.
[0259] [Уравнение 30]
где для или , для , и для .
[0260] В данном случае γl, σl, εl имеют значения 1 в случаях отличных от значений. Т.е. имеют значение 1 по умолчанию.
[0261] Кроме того, уравнение для синусного преобразования, применяемого в изобретении, является точно таким же, как Уравнение 31.
[0262] [Уравнение 31]
где для .
[0263] В данном случае εk, εl имеют значение 1 в случаях отличных от значений. Т.е. имеют значение 1 по умолчанию.
[0264] Уравнения отношения из Уравнения 32, включающие в себя отношение с и , предложенное Вариантами (1) и (2) осуществления, и отношение с и , могут быть извлечены из уравнений для косинусных преобразования и синусных преобразований.
[0265] [Уравнение 32]
[0266] Кроме того, уравнения отношения, такое как уравнение 33, могут быть извлечены из уравнений отношения из Уравнения 32.
[0267] [Уравнение 33]
[0268] Вычисление и , которые встречаются в Уравнении 33, может быть выполнено путем правильного объединения шаблонов перемены последовательности и перемены знака для ввода, как в Уравнении 34 ниже.
[0269] [Уравнение 34]
[0270] Соответственно, несколько других преобразований может быть извлечено с использованием только данных коэффициента ядра для одного особого преобразования из уравнений отношения из Уравнений 32 и 33. Уравнение 35 представляет, в качестве набора, преобразования, по которым может быть натянуто одно преобразование.
[0271] [Уравнение 35]
[0272] Может быть вычислено соответствующее степенное множество для каждого набора-оболочки (span set), предложенного в Уравнении 35. Например, степенное множество для может быть представлено как Уравнение 36.
[0273] [Уравнение 36]
[0274] Если один элемент степенного множества для набора-оболочки, именуемого A, указывается как , оно может быть представлено как Уравнение 37.
[0275] [Уравнение 37]
[0276] Набор преобразований, определенный в Вариантах (2) и (3) осуществления, может быть сконфигурирован как Уравнение 37. , которое встречается в Уравнении 37, не может быть разъединено, поскольку присутствуют перекрывающиеся элементы между степенными множествами для наборов-оболочек в Уравнении 35.
[0277] Количество преобразований, которое требуется для хранения в фактическом пространстве памяти в форме данных коэффициента может быть много меньше, поскольку одно преобразование может быть натянуто на несколько преобразований, как в Уравнении 35. Например, двух преобразований достаточно, чтобы натянуть , и возможна в качестве одной из нескольких комбинаций.
[0278] В большинстве систем кодеков известно, что в целом является эффективным для остаточных данных, сформированных из интра-предсказания, поскольку включено . Если может быть заменено на , как в Варианте (2) осуществления, то максимальный набор преобразований, который может быть натянут по преобразованиям, т.е. исходный элемент (seed), может быть сформирован как на Фиг. 17.
[0279] Максимально натянутый набор, предложенный на Фиг. 17, является набором преобразований, которые могут использоваться в максимальной степени. Когда максимальный натянутый набор используется в качестве набора преобразований, то может быть использован частичный набор Фиг. 17.
[0280] Набор-оболочка для и из уравнений отношения из Уравнений 32 и 33 может быть представлен с использованием и как в Уравнении 38. В данном случае и определяются в Уравнении 4.
[0281] [Уравнение 38]
[0282] Вариант (1) осуществления предлагает пример, в котором используется вместо как в Уравнении 7. В данном случае есть эффект в том, что знак коэффициента, который формируется когда применяется прямое преобразование (например, ), используется без инвертирования. Если тот же самый способ применяется к Уравнению 38, то соответствующий натянутый набор меняется как в Уравнении 39, поскольку исключается , на которое выполняют умножение в начале прямого преобразования.
[0283] [Уравнение 39]
[0284] Соответственно даже в наборах-оболочках, перечисленных в Уравнении 35 на Фиг. 17, все преобразования, включенные в каждый набор-оболочку, могут быть представлены в качестве линейного отношения и , и исходного преобразования (seed transform) аналогично Уравнению 38 с использованием уравнений отношения в Уравнениях 32 и 33. В дальнейшем прямое преобразование вычисляется как в Уравнении 39. Если исключается передний , то могут быть извлечены наборы-оболочки, сконфигурированные с преобразованиями, знаки коэффициентов преобразования которых не инвертируются. Требуемый набор преобразований может быть сконфигурирован на основании уравнения отношения из Уравнения 37 с использованием полученных наборов-оболочек.
[0285] Из Уравнения 38 может быть видно, что исходное преобразование, именуемое , помещено в центре и преобразования натягиваются посредством правильного умножения на и до и после. Может быть видно, что в матрицах, на которые происходит умножение ранее, вывод, полученный после применения исходного преобразования в центре, подвергается постобработке. Кроме того, может быть видно, что в матрицах, на которые происходит умножение позже, выполняется предобработка над входом до того, как применяется исходное преобразование в центре. Результаты, полученные путем умножения на и несколько раз в различных комбинациях, могут быть обобщены как в Уравнении 40.
[0286] [Уравнение 40]
и
[0287] Соответственно 64 случая возникает для двух комбинаций, так как 8 случаев возможно для каждой из предобработки и постобработки в отношении одного исходного преобразования. Однако, если рассматриваются как значение на стороне предобработки, так и значение на стороне постобработки, то возникают перекрывающиеся случаи (т.е. так как смена знака в итоге приводит к двум случаям из +/-), то количество случаев составляет всего 32 случая. Если рассматривается только аспект смены знака результатов преобразования, а самим значением знака пренебрегают, то общее количество случаев составляет 16, так как значение может быть зафиксировано равным 1 в Уравнении 40. Пример, в котором Уравнение 40 применяется как к предобработке, так и постобработке включает Уравнение 41.
[0288] [Уравнение 41]
[0289] Пример для случая, когда значение не рассматривается по отношению к примеру Уравнения 41, включает в себя Уравнение 42.
[0290] [Уравнение 42]
[0291] Если пренебрегают знаком коэффициентов преобразования, полученных путем применения прямого преобразования, как в Уравнении 39, то общее количество случаев сокращается до 8, потому что комбинация из и используется без каких-либо изменений на стороне предобработки ввода и только должно использоваться на постобработке вывода в отношении прямого преобразования. Уравнение 43 показывает соответствующий пример.
[0292] [Уравнение 43]
[0293] В изобретении набор-оболочка может быть извлечен как в Уравнении 43 в отношении всех косинусных преобразований/синусных преобразований. Каждое соответствующее степенное множество может быть сконфигурировано как в Уравнении 36. Набор преобразований, который должен использоваться для определения комбинации преобразований, может быть сконфигурирован посредством Уравнения 37.
[0294] Кроме того, способы конфигурирования нескольких комбинаций преобразований, предложенные в Варианте (3) осуществления, могут быть применены с использованием наборов преобразований, извлеченных из способов, предложенных в Варианте (4) осуществления.
[0295] Способ добавления этапа предобработки ввода и этапа постобработки вывода к одному преобразованию в различных формах, как в Уравнениях с 40 по 43, применяется не только к тригонометрическим преобразованиям, как в Уравнениях с 41 по 43, но также применяется к другим заданным преобразованиям (например, KLT и SOT), и таким образом может быть извлечен соответствующий набор-оболочка.
[0296] Кроме того, в Уравнениях с 40 по 43 матрица, соответствующая этапам пред- и постобработки была сконфигурированы только с комбинацией и , но любые другие матрицы отличные от и могут быть сконфигурированы посредством вычисления любой формы.
[0297] Фиг. 18 иллюстрирует систему кодирования видео, к которой применяется изобретение.
[0298] Система кодирования видео может включать в себя устройство-источник и принимающее устройство. Устройство-источник может передавать принимающему устройство кодированную информацию видео/изображения или данные посредством цифрового запоминающего носителя информации или через сеть в файле или в форме потоковой передачи.
[0299] Устройство-источник может включать в себя источник видео, устройство кодирования и передатчик. Принимающее устройство может включать в себя приемник, устройство декодирования и рендерер (модуль воспроизведения). Устройство кодирования может именоваться устройством кодирования видео/изображения. Устройство декодирования может именоваться устройством декодирования видео/изображения. Передатчик может быть включен в устройство кодирования. Приемник может быть включен в устройство декодирования. Рендерер может включать в себя дисплей. Дисплей может быть сконфигурирован для каждого устройства или внешнего компонента.
[0300] Источник видео может получать видео/изображение посредством процесса захвата, синтеза или формирования видео/изображения. Источник видео может включать в себя устройство захвата видео/изображения и/или устройство формирования видео/изображения. Устройство захвата видео/изображения может включать в себя одну или более камеры, архив видео/изображений, включающий в себя ранее захваченное видео/изображение и т.д., например. Устройство формирования видео/изображения может включать в себя компьютер, планшет и интеллектуальный телефон, например, и может (электронным образом) формировать видео/изображение. Например, виртуальное видео/изображение может быть сформировано посредством компьютера. В данном случае процесс формирования связанных данных может быть заменен процессом захвата видео/изображения.
[0301] Устройство кодирования может кодировать входное видео/изображение. Устройство кодирования может выполнять ряд процедур, такие как предсказание, преобразование и квантование, для сжатия и эффективности кодирования. Кодированные данные (кодированная информация видео/изображения) могут быть выведены в форме битового потока.
[0302] Передатчик может передавать приемнику принимающего устройства кодированную информацию видео/изображения или данные, выведенные в форме битового потока, посредством цифрового запоминающего носителя информации или через сети в файле или в форме потоковой передачи. Цифровой запоминающий носитель информации может включать в себя различные запоминающие носители информации, такие как USB, SD, CD, DVD, Blu-ray, HDD и SSD. Передатчик может включать в себя элемент для формирования мультимедийного файла посредством предопределенного формата файла, и может включать в себя элемент для передачи через сеть вещания/связи. Приемник может извлекать битовый поток и передавать его устройству декодирования.
[0303] Устройство декодирования может декодировать видео/изображение путем выполнения ряда процедур, таких как обратное квантование, обратное преобразование и предсказание, соответствующих операциям устройства кодирования.
[0304] Рендерер может осуществлять рендеринг декодированного видео/изображения. Видео/изображение после рендеринга может быть отображено посредством дисплея.
[0305] Фиг. 19 иллюстрирует систему потоковой передачи контента, к которой применяется изобретение.
[0306] Обращаясь к Фиг. 19 система потоковой передачи контента, к которой применяется изобретение, главным образом может включать в себя сервер кодирования, сервер потоковой передачи, веб-сервер, хранилище мультимедиа, оборудование пользователя и мультимедийное устройство ввода.
[0307] Сервер кодирования главным образом функционирует, чтобы формировать битовый поток путем сжатия контента, который вводится от мультимедийных устройств ввода, таких как интеллектуальный телефон, камера или видеокамера, в цифровые данные, и передавать битовый поток серверу потоковой передачи. В качестве другого примера, если мультимедийные устройства ввода, такие как интеллектуальный телефон, камера или видеокамера, непосредственно формирую битовый поток, то сервер кодирования может быть опущен.
[0308] Битовый поток может быть сформирован посредством способа кодирования или способа формирования битового потока, к которому применяется изобретение. Сервер потоковой передачи может временно сохранять битовый поток в процессе передачи или приема битового потока.
[0309] Сервер потоковой передачи передает мультимедийные данные оборудованию пользователя на основании запроса пользователя через веб-сервер. Веб-сервер играет роль средства для уведомления пользователя о том, какая услуга предоставляется. Когда пользователь запрашивает требуемую услугу у веб-сервера, веб-сервер передает запрос серверу потоковой передачи. Сервер потоковой передачи передает мультимедийные данные пользователю. В данном случае система потоковой передачи контента может включать в себя отдельный сервер управления. В данном случае сервер управления функционирует, чтобы управлять инструкцией/ответом между устройствами в системе потоковой передачи контента.
[0310] Сервер потоковой передачи может принимать контент от хранилища мультимедиа и/или сервера кодирования. Например, если контент принимается от сервера кодирования, то сервер потоковой передачи может принимать контент в режиме реального времени. В данном случае для того, чтобы обеспечить бесперебойную услугу потоковой передачи сервер потоковой передачи может сохранять битовый поток для заданного времени.
[0311] Примеры оборудования пользователя могут включать в себя мобильный телефон, интеллектуальный телефон, компьютер класса лэптоп, терминал цифрового вещания, персональные цифровые помощники (PDA), портативный мультимедийный проигрыватель (PMP), навигатор, тонкий ПК, планшетный ПК, ультрабук, носимое устройство (например, терминал типа наручных часов (интеллектуальные наручные часы), терминал типа очков (интеллектуальные очки) и шлем-дисплей (HMD)), цифровой ТВ, настольный компьютер и цифровую вывеску.
[0312] Серверы в системе потоковой передачи контента могут работать в качестве распределенных серверов. В этом случае могут быть распределены и обработаны данные, принимаемые от серверов.
[0313] Как описано выше варианты осуществления, описанные в изобретении, могут быть реализованы и выполнены процессором, микропроцессором, контроллером или чипом. Например, функциональные модули, проиллюстрированные на чертежах, могут быть реализованы и выполнены на компьютере, процессоре, микропроцессоре, контроллере или чипе.
[0314] Кроме того, декодер и кодер, к которым применяется изобретение, могут быть включены в устройство передачи и приема мультимедийного вещания, терминал мобильной связи, видеоустройство домашнего кинотеатра, видеоустройство цифрового кинотеатра, камеру для мониторинга, устройство для видео диалога, устройство связи в режиме реального времени, такой как видеосвязь, мобильное устройство потоковой передачи, запоминающий носитель информации, видеокамеру, устройство предоставления услуги видео по запросу (VoD), видеоустройство телевидения через Интернет (OTT), устройство предоставления услуги потоковой передачи через Интернет, устройство трехмерного (3D) видео, устройство видеотелефонии и медицинское видеоустройство, и могут быть использованы, чтобы обрабатывать видеосигнал или сигнал данных. Например, видеоустройство OTT может включать в себя игровую консоль, проигрыватель Blu-ray, ТВ с доступом к сети Интернет, систему домашнего кинотеатра, интеллектуальный телефон, планшетный ПК и устройство записи цифрового видео (DVR).
[0315] Кроме того, способ обработки, к которому применяется изобретение, может быть создан в форме программы, исполняемой компьютером, и может быть сохранены на машиночитаемом записывающем носителе информации. Мультимедийные данные со структурой данных в соответствии с изобретением также могут быть сохранены на машиночитаемом записывающем носителе информации. Машиночитаемый записывающий носитель информации включает в себя все типы запоминающих устройств, в которых хранятся машиночитаемые данные. Машиночитаемый записывающий носитель информации может включать в себя диск Blu-ray (BD), устройство универсальной последовательной шины (USB), ROM, PROM, EPROM, EEPROM, RAM, CD-ROM, магнитную ленту, гибкий диск и оптическое устройство хранения данных, например. Кроме того, машиночитаемый записывающий носитель информации включает в себя средства, реализованные в форме носителей (например, передача через Интернет). Кроме того, битовый поток, сформированный с использованием способа кодирования, может быть сохранен в машиночитаемом записывающем носителе информации или может быть передан через сети проводной или беспроводной связи.
[0316] Кроме того, вариант осуществления изобретения может быть реализован в качестве компьютерного программного продукта с использованием программного кода. Программный код может быть выполнен компьютером в соответствии с вариантом осуществления изобретения. Программный код может быть сохранен на носителе, который может быть считан компьютером.
Промышленная применимость
[0317] Вышеупомянутые предпочтительные варианты осуществления изобретения были раскрыты в целях иллюстрации и специалисты в соответствующей области техники могут улучшить, изменить, заменить или добавить различные другие варианты осуществления, не отступая от технической сущности и объема изобретения, раскрытого в прилагаемой формуле изобретения.
название | год | авторы | номер документа |
---|---|---|---|
СПОСОБ И УСТРОЙСТВА ДЛЯ КОНФИГУРИРОВАНИЯ ПРЕОБРАЗОВАНИЯ ДЛЯ СЖАТИЯ ВИДЕО | 2018 |
|
RU2745021C1 |
СПОСОБ И УСТРОЙСТВО ДЛЯ КОНФИГУРИРОВАНИЯ ПРЕОБРАЗОВАНИЯ ДЛЯ СЖАТИЯ ВИДЕО | 2022 |
|
RU2795258C1 |
СПОСОБ КОДИРОВАНИЯ/ДЕКОДИРОВАНИЯ ВИДЕОСИГНАЛОВ И УСТРОЙСТВО ДЛЯ ЭТОГО | 2019 |
|
RU2766571C1 |
СПОСОБ КОДИРОВАНИЯ/ДЕКОДИРОВАНИЯ ВИДЕОСИГНАЛОВ И УСТРОЙСТВО ДЛЯ ЭТОГО | 2019 |
|
RU2792219C2 |
СПОСОБ ОБРАБОТКИ ИЗОБРАЖЕНИЙ И УСТРОЙСТВО ДЛЯ ЭТОГО | 2022 |
|
RU2783332C1 |
СПОСОБ ОБРАБОТКИ ИЗОБРАЖЕНИЙ И УСТРОЙСТВО ДЛЯ ЭТОГО | 2021 |
|
RU2769348C1 |
СПОСОБ ОБРАБОТКИ ИЗОБРАЖЕНИЙ И УСТРОЙСТВО ДЛЯ ЭТОГО | 2017 |
|
RU2745779C2 |
СПОСОБ ОБРАБОТКИ ИЗОБРАЖЕНИЙ И УСТРОЙСТВО ДЛЯ ЭТОГО | 2017 |
|
RU2720066C1 |
СПОСОБ КОДИРОВАНИЯ ИЗОБРАЖЕНИЯ НА ОСНОВЕ НЕРАЗДЕЛИМОГО ВТОРИЧНОГО ПРЕОБРАЗОВАНИЯ И УСТРОЙСТВО ДЛЯ НЕГО | 2018 |
|
RU2748907C1 |
СПОСОБ КОДИРОВАНИЯ ИЗОБРАЖЕНИЯ НА ОСНОВЕ НЕРАЗДЕЛИМОГО ВТОРИЧНОГО ПРЕОБРАЗОВАНИЯ И УСТРОЙСТВО ДЛЯ НЕГО | 2021 |
|
RU2776032C1 |
Изобретение относится к обработке видеосигнала, в частности к технологии конфигурирования комбинации преобразований на основании по меньшей мере одного из режима предсказания, размера или формы блока. Техническим результатом изобретения является повышение эффективности и комплексности кодирования/декодирования. Предложен способ декодирования видеосигнала на основе адаптивных множественных преобразований (AMT), содержащий этапы, на которых: получают индекс AMT из видеосигнала, при этом индекс AMT указывает любую из множества комбинаций преобразований в группе конфигурации преобразования, и группа конфигурации преобразования включает дискретные синусное преобразование типа 7 (DST-7) и косинусное типа 8 (DCT-8); а также извлекают комбинацию преобразований, соответствующую индексу AMT. Комбинация преобразований состоит из горизонтального и вертикального преобразований и включает по меньшей мере одно из DST-7 или DCT-8; выполняют обратное преобразование над текущим блоком на основании комбинации преобразований и воссоздают видеосигнал посредством использования текущего блока, подвергнутого обратному преобразованию. При этом AMT представляет собой схему преобразования, которая выполняется на основании комбинации преобразований, адаптивно выбранной из множества комбинаций преобразований, а матрицу для обратного преобразования извлекают на основании типа комбинации преобразований и размер единицы преобразования составляет 32 или меньше. 3 н. и 5 з.п. ф-лы, 19 ил.
1. Способ декодирования видеосигнала на основании адаптивных множественных преобразований (AMT), причем способ содержит этапы, на которых:
получают флаг AMT из видеосигнала, при этом флаг AMT используется для представления, выполняется ли AMT;
получают индекс AMT из видеосигнала на основе флага AMT, при этом индекс AMT указывает любую из множества комбинаций преобразований и при этом индексом AMT является индекс одиночного преобразования, включающий в себя информацию о 2 индексах для горизонтального преобразования и вертикального преобразования;
извлекают комбинацию преобразований, соответствующую индексу AMT, при этом комбинация преобразований сконфигурирована с горизонтальным преобразованием и вертикальным преобразованием и включает в себя по меньшей мере одно из дискретного синусного преобразования типа 7 (DST-7) или дискретного косинусного преобразования типа 8 (DCT-8);
выполняют обратное преобразование в отношении единицы преобразования на основании комбинации преобразований; и
воссоздают видеосигнал на основании единицы преобразования,
при этом матрицу для обратного преобразования извлекают на основании типа комбинации преобразований и размера единицы преобразования, составляющего 32 или меньше.
2. Способ по п. 1, в котором комбинацию преобразований выбирают на основании по меньшей мере одного из режима предсказания, размера или формы единицы преобразования.
3. Способ по п. 1, дополнительно содержащий этап, на котором:
проверяют, является ли количество ненулевых коэффициентов преобразования большим, чем пороговая величина, когда AMT выполняется на основании флага AMT,
при этом индекс AMT получают на основании того, что количество ненулевых коэффициентов преобразования больше пороговой величины.
4. Способ по п. 1, в котором этап, на котором выполняют обратное преобразование, содержит этап, на котором применяют обратное преобразование DST-7 или обратное преобразование DCT-8 к каждой строке после применения обратного преобразования DST-7 или обратного преобразования DCT-8 к каждому столбцу, если вертикальное преобразование или горизонтальное преобразование является DST-7 или DCT-8.
5. Способ по п. 1, в котором вертикальное преобразование или горизонтальное преобразование по-разному применяется к каждой строке и/или каждому столбцу.
6. Способ по п. 1, в котором флаг AMT или индекс AMT определяется по меньшей мере на одном уровне последовательности, картинки, слайса, блока, единицы кодирования, единицы преобразования или единицы предсказания.
7. Способ кодирования видеосигнала на основании адаптивных множественных преобразований (AMT), причем способ содержит этапы, на которых:
извлекают комбинацию преобразований, применяемую к единице преобразования, при этом комбинация преобразований сконфигурирована с горизонтальным преобразованием и вертикальным преобразованием и включает в себя по меньшей мере одно из дискретного синусного преобразования типа 7 (DST-7) или дискретного косинусного преобразования типа 8 (DCT-8);
выполняют преобразование в отношении единицы преобразования на основании комбинации преобразований;
формируют индекс AMT, соответствующий комбинации преобразований, при этом индекс AMT указывает любую из множества комбинаций преобразований и при этом индексом AMT является индекс одиночного преобразования, включающий в себя информацию о 2 индексах для горизонтального преобразования и вертикального преобразования; и
формируют флаг AMT, который используется для представления, выполняется ли AMT,
при этом матрицу для преобразования извлекают на основании типа комбинации преобразований и размера единицы преобразования, составляющего 32 или меньше.
8. Машиночитаемый носитель, хранящий информацию видео, формируемую для выполнения этапов, на которых:
извлекают комбинацию преобразований, применяемую к единице преобразования, при этом комбинация преобразований сконфигурирована с горизонтальным преобразованием и вертикальным преобразованием и включает в себя по меньшей мере одно из дискретного синусного преобразования типа 7 (DST-7) или дискретного косинусного преобразования типа 8 (DCT-8);
выполняют преобразование в отношении единицы преобразования на основании комбинации преобразований;
формируют индекс AMT, соответствующий комбинации преобразований, при этом индекс AMT указывает любую из множества комбинаций преобразований и при этом индексом AMT является индекс одиночного преобразования, включающий в себя информацию о 2 индексах для горизонтального преобразования и вертикального преобразования; и
формируют флаг AMT, который используется для представления, выполняется ли AMT,
при этом матрица для преобразования извлекается на основании типа комбинации преобразований и размера единицы преобразования, составляющего 32 или меньше.
JIANLE CHEN et al., Algorithm Description of Joint Exploration Test Model 5 (JEM 5), Joint Video Exploration Team (JVET) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, JVET-E1001-v2, 15th Meeting: Geneva, 12-20 January 2017 | |||
US 2017094314 A1, 2017.03.30 | |||
PHILIPPE P | |||
et al., EE2: Adaptive Primary Transform improvement, Joint Video Exploration Team |
Авторы
Даты
2022-04-11—Публикация
2018-08-06—Подача