RU2817300C2 - Способ и устройство кодирования/декодирования изображений для передачи в служебных сигналах информации прогнозирования компонентов сигналов цветности согласно тому, является или нет палитровый режим применимым, и способ для передачи потока битов - Google Patents
Способ и устройство кодирования/декодирования изображений для передачи в служебных сигналах информации прогнозирования компонентов сигналов цветности согласно тому, является или нет палитровый режим применимым, и способ для передачи потока битов Download PDFInfo
- Publication number
- RU2817300C2 RU2817300C2 RU2023125007A RU2023125007A RU2817300C2 RU 2817300 C2 RU2817300 C2 RU 2817300C2 RU 2023125007 A RU2023125007 A RU 2023125007A RU 2023125007 A RU2023125007 A RU 2023125007A RU 2817300 C2 RU2817300 C2 RU 2817300C2
- Authority
- RU
- Russia
- Prior art keywords
- current block
- prediction
- mode
- information
- palette
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 93
- 230000009977 dual effect Effects 0.000 claims description 4
- 239000000126 substance Substances 0.000 abstract 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 50
- 241000023320 Luma <angiosperm> Species 0.000 description 49
- 230000011218 segmentation Effects 0.000 description 28
- 230000011664 signaling Effects 0.000 description 19
- 238000000638 solvent extraction Methods 0.000 description 19
- 238000001914 filtration Methods 0.000 description 18
- 238000005192 partition Methods 0.000 description 14
- 238000005070 sampling Methods 0.000 description 13
- 238000003491 array Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 230000009466 transformation Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 8
- 238000003709 image segmentation Methods 0.000 description 7
- 230000003044 adaptive effect Effects 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000013139 quantization Methods 0.000 description 5
- 238000009877 rendering Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000002123 temporal effect Effects 0.000 description 4
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000002146 bilateral effect Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000007727 signaling mechanism Effects 0.000 description 2
- 239000003086 colorant Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 239000002023 wood Substances 0.000 description 1
Abstract
Изобретение относится к области кодирования/декодирования изображений для передачи в служебных сигналах информации прогнозирования компонентов сигналов цветности. Техническим результатом является повышение эффективности кодирования/декодирования посредством передачи в служебных сигналах информации прогнозирования компонентов сигналов цветности. Предложен способ декодирования изображений, осуществляемый посредством оборудования декодирования изображений и содержащий: определение текущего блока посредством разбиения изображения; идентификацию того, применяется или нет палитровый режим для текущего блока, на основе флага палитрового режима, полученного из потока битов; получение информации кодирования в палитровом режиме текущего блока из потока битов на основе типа дерева текущего блока и того, применяется или нет палитровый режим для текущего блока; и получение информации прогнозирования компонентов сигналов цветности текущего блока из потока битов на основе палитрового режима, не применяемого для текущего блока. Информация прогнозирования компонентов сигналов цветности является информацией для прогнозирования на основе кросскомпонентной линейной модели (CCLM) или информацией внутреннего прогнозирования компонентов сигналов цветности. 3 н. и 9 з.п. ф-лы, 1 табл., 26 ил.
Description
Область техники, к которой относится изобретение
[1] Настоящее раскрытие сущности относится к способу и оборудованию кодирования/декодирования изображений, а более конкретно, к способу кодирования/декодирования изображений для передачи в служебных сигналах информации прогнозирования компонентов сигналов цветности в зависимости от того, следует или нет применять палитровый режим, и к способу передачи потока битов, сформированного посредством способа/оборудования кодирования изображений настоящего раскрытия сущности.
Уровень техники
[2] В последнее время, спрос на высококачественные изображения высокого разрешения, к примеру, изображения высокой четкости (HD) и изображения сверхвысокой четкости (UHD) растет в различных областях техники. По мере того, как разрешение и качество данных изображений повышается, объем передаваемой информации или битов относительно увеличивается по сравнению с существующими данными изображений. Увеличение объема передаваемой информации или битов приводит к увеличению затрат на передачу и затрат на хранение.
[3] Соответственно, имеется потребность в высокоэффективной технологии сжатия изображений для эффективной передачи, сохранения и воспроизведения информации относительно высококачественных изображений высокого разрешения.
Сущность изобретения
Техническая задача
[4] Цель настоящего раскрытия сущности заключается в том, чтобы предоставлять способ и оборудование кодирования/декодирования изображений с повышенной эффективностью кодирования/декодирования.
[5] Цель настоящего раскрытия сущности заключается в том, чтобы предоставлять способ и оборудование кодирования/декодирования изображений для повышения эффективности кодирования/декодирования посредством передачи в служебных сигналах информации прогнозирования компонентов сигналов цветности в зависимости от того, следует или нет применять палитровый режим.
[6] Другая цель настоящего раскрытия сущности заключается в том, чтобы предоставлять способ передачи потока битов, сформированного посредством способа или оборудования кодирования изображений согласно настоящему раскрытию сущности.
[7] Другая цель настоящего раскрытия сущности заключается в том, чтобы предоставлять носитель записи, сохраняющий поток битов, сформированный посредством способа или оборудования кодирования изображений согласно настоящему раскрытию сущности.
[8] Другая цель настоящего раскрытия сущности заключается в том, чтобы предоставлять носитель записи, сохраняющий поток битов, принимаемый, декодированный и используемый для того, чтобы восстанавливать изображение посредством оборудования декодирования изображений согласно настоящему раскрытию сущности.
[9] Технические проблемы, разрешаемые посредством настоящего раскрытия сущности, не ограничены вышеуказанными техническими проблемами, и другие технические проблемы, которые не описываются в данном документе, должны становиться очевидными для специалистов в данной области техники из нижеприведенного описания.
Техническое решение
[10] Способ декодирования изображений, осуществляемый посредством оборудования декодирования изображений согласно аспекту настоящего раскрытия сущности, может содержать определение текущего блока посредством разбиения изображения, идентификацию того, применяется или нет палитровый режим для текущего блока, на основе флага палитрового режима, полученного из потока битов, получение информации кодирования в палитровом режиме текущего блока из потока битов, на основе типа дерева текущего блока и того, применяется или нет палитровый режим для текущего блока, и получение информации прогнозирования компонентов сигналов цветности текущего блока из потока битов, на основе палитрового режима, не применяемого для текущего блока.
[11] Помимо этого, оборудование декодирования изображений согласно аспекту настоящего раскрытия сущности может содержать запоминающее устройство и, по меньшей мере, один процессор. По меньшей мере, один процессор может определять текущий блок посредством разбиения изображения, идентифицировать то, применяется или нет палитровый режим для текущего блока, на основе флага палитрового режима, полученного из потока битов, получать информацию кодирования в палитровом режиме текущего блока из потока битов, на основе типа дерева текущего блока и того, применяется или нет палитровый режим для текущего блока, и получать информацию прогнозирования компонентов сигналов цветности текущего блока из потока битов, на основе палитрового режима, не применяемого для текущего блока.
[12] Помимо этого, способ кодирования изображений, осуществляемый посредством оборудования кодирования изображений согласно аспекту настоящего раскрытия сущности, может содержать определение текущего блока посредством разбиения изображения, определение режима прогнозирования текущего блока, кодирование флага палитрового режима, указывающего то, представляет режим прогнозирования текущего блока собой или нет палитровый режим, на основе того, представляет режим прогнозирования текущего блока собой или нет палитровый режим, кодирование информации кодирования в палитровом режиме, в которой текущий блок кодируется в палитровом режиме, на основе типа дерева текущего блока, и того, представляет режим прогнозирования текущего блока собой или нет палитровый режим, и кодирование информации прогнозирования компонентов сигналов цветности текущего блока, на основе режима прогнозирования текущего блока, не представляющего собой палитровый режим.
[13] Помимо этого, способ передачи согласно другому аспекту настоящего раскрытия сущности может передавать поток битов, сформированный посредством оборудования кодирования изображений или способа кодирования изображений настоящего раскрытия сущности.
[14] Помимо этого, машиночитаемый носитель записи согласно другому аспекту настоящего раскрытия сущности может сохранять поток битов, сформированный посредством оборудования кодирования изображений или способа кодирования изображений настоящего раскрытия сущности.
[15] Признаки, кратко обобщенные выше относительно настоящего раскрытия сущности, представляют собой просто примерные аспекты нижеприведенного подробного описания настоящего раскрытия сущности и не ограничивают объем настоящего раскрытия сущности.
Преимущества изобретения
[16] Согласно настоящему раскрытию сущности, можно предоставлять способ и оборудование кодирования/декодирования изображений с повышенной эффективностью кодирования/декодирования.
[17] Кроме того, согласно настоящему раскрытию сущности, можно предоставлять способ и оборудование кодирования/декодирования изображений для повышения эффективности кодирования/декодирования посредством передачи в служебных сигналах информации прогнозирования компонентов сигналов цветности в зависимости от того, следует или нет применять палитровый режим.
[18] Кроме того, согласно настоящему раскрытию сущности, можно предоставлять способ передачи потока битов, сформированного посредством способа или оборудования кодирования изображений согласно настоящему раскрытию сущности.
[19] Кроме того, согласно настоящему раскрытию сущности, можно предоставлять носитель записи, сохраняющий поток битов, сформированный посредством способа или оборудования кодирования изображений согласно настоящему раскрытию сущности.
[20] Кроме того, согласно настоящему раскрытию сущности, можно предоставлять носитель записи, сохраняющий поток битов, принимаемый, декодированный и используемый для того, чтобы восстанавливать изображение посредством оборудования декодирования изображений согласно настоящему раскрытию сущности.
[21] Специалисты в данной области техники должны принимать во внимание, что преимущества, которые могут достигаться через настоящее раскрытие сущности, не ограничены тем, что конкретно описано выше, и другие преимущества настоящего раскрытия сущности должны более ясно пониматься из подробного описания.
Краткое описание чертежей
[22] Фиг. 1 является видом, схематично показывающим систему кодирования видео, к которой является применимым вариант осуществления настоящего раскрытия сущности.
[23] Фиг. 2 является видом, схематично показывающим оборудование кодирования изображений, к которому является применимым вариант осуществления настоящего раскрытия сущности.
[24] Фиг. 3 является видом, схематично показывающим оборудование декодирования изображений, к которому является применимым вариант осуществления настоящего раскрытия сущности.
[25] Фиг. 4 является видом, показывающим структуру сегментации изображения согласно варианту осуществления.
[26] Фиг. 5 является видом, показывающим вариант осуществления типа сегментации блока согласно многотипной древовидной структуре.
[27] Фиг. 6 является видом, показывающим механизм передачи в служебных сигналах информации разбиения на блоки в дереве квадрантов с вложенной многотипной древовидной структурой согласно настоящему раскрытию сущности.
[28] Фиг. 7 является видом, показывающим вариант осуществления, в котором CTU сегментируется на несколько CU.
[29] Фиг. 8 является видом, иллюстрирующим вариант осуществления избыточного шаблона разбиения.
[30] Фиг. 9 является видом, иллюстрирующим синтаксис для передачи в служебных сигналах форматов сигналов цветности согласно варианту осуществления.
[31] Фиг. 10 является видом, иллюстрирующим таблицу классификации форматов сигналов цветности согласно варианту осуществления.
[32] Фиг. 11 является видом, иллюстрирующим горизонтальное сканирование и вертикальное сканирование согласно варианту осуществления.
[33] Фиг. 12-13 являются видами, иллюстрирующими синтаксис для палитрового режима согласно варианту осуществления.
[34] Фиг. 14-19 являются видами, иллюстрирующими синтаксис для палитрового режима согласно варианту осуществления.
[35] Фиг. 20 является видом, иллюстрирующим уравнение для определения PredictorPaletteEntries и CurrentPaletteEntries согласно варианту осуществления.
[36] Фиг. 21 является видом, иллюстрирующим синтаксис единицы кодирования согласно модифицированному варианту осуществления.
[37] Фиг. 22 является блок-схемой последовательности операций, иллюстрирующей способ передачи в служебных сигналах предварительно определенной информации внутреннего прогнозирования сигналов цветности согласно варианту осуществления.
[38] Фиг. 23 является блок-схемой последовательности операций, иллюстрирующей способ получения информации прогнозирования сигналов цветности посредством оборудования декодирования согласно варианту осуществления.
[39] Фиг. 24 является блок-схемой последовательности операций, иллюстрирующей способ кодирования изображения посредством оборудования кодирования согласно варианту осуществления.
[40] Фиг. 30 является блок-схемой последовательности операций, иллюстрирующей способ декодирования изображения посредством оборудования декодирования согласно варианту осуществления.
[41] Фиг. 26 является видом, показывающим систему потоковой передачи контента, к которой является применимым вариант осуществления настоящего раскрытия сущности.
Оптимальный режим осуществления изобретения
[42] В дальнейшем в этом документе подробно описываются варианты осуществления настоящего раскрытия сущности со ссылкой на прилагаемые чертежи, так что они легко могут реализовываться специалистами в данной области техники. Тем не менее, настоящее раскрытие сущности может реализовываться во всевозможных формах и не ограничено вариантами осуществления, описанными в данном документе.
[43] При описании настоящего раскрытия сущности, если определяется то, что подробное описание связанной известной функции или конструкции приводит к излишней неоднозначности объема настоящего раскрытия сущности, ее подробное описание опускается. На чертежах, части, не связанные с описанием настоящего раскрытия сущности, опускаются, и аналогичные ссылки с номерами присоединяются к аналогичным частям.
[44] В настоящем раскрытии сущности, когда компонент "соединяется (connected)", "соединяется (coupled)" или "связывается (linked)" с другим компонентом, это может включать в себя не только непосредственную взаимосвязь на основе соединения, но также и косвенную взаимосвязь на основе соединения, в которой присутствует промежуточный компонент. Помимо этого, когда компонент "включает в себя" или "имеет" другие компоненты, это означает то, что другие компоненты могут включаться дополнительно, а не исключение других компонентов, если не указано иное.
[45] В настоящем раскрытии сущности, термины "первый", "второй" и т.д. могут использоваться только для целей различения одного компонента от других компонентов и не ограничивают порядок или важность компонентов, если не указано иное. Соответственно, в пределах объема настоящего раскрытия сущности, первый компонент в одном варианте осуществления может называться "вторым компонентом" в другом варианте осуществления, и аналогично, второй компонент в одном варианте осуществления может называться "первым компонентом" в другом варианте осуществления.
[46] В настоящем раскрытии сущности, компоненты, которые отличаются друг от друга, имеют намерение ясно описывать каждый признак и не означают то, что компоненты обязательно разделяются. Таким образом, множество компонентов могут интегрироваться и реализовываться в одном аппаратном или программном модуле, или один компонент может распределяться и реализовываться во множестве аппаратных или программных модулей. Следовательно, даже если не указано иное, такие варианты осуществления, в которых компоненты интегрируются, или компонент распределяется, также включаются в объем настоящего раскрытия сущности.
[47] В настоящем раскрытии сущности, компоненты, описанные в различных вариантах осуществления, не обязательно означают существенные компоненты, и некоторые компоненты могут представлять собой необязательные компоненты. Соответственно, вариант осуществления, состоящий из поднабора компонентов, описанных в варианте осуществления, также включается в объем настоящего раскрытия сущности. Помимо этого, варианты осуществления, включающие в себя другие компоненты, в дополнение к компонентам, описанным в различных вариантах осуществления, включаются в объем настоящего раскрытия сущности.
[48] Настоящее раскрытие сущности относится к кодированию и декодированию изображения, и термины, используемые в настоящем раскрытии сущности, могут иметь общий смысл, широко используемый в области техники, которой принадлежит настоящее раскрытие сущности, если не задаются впервые в настоящем раскрытии сущности.
[49] В настоящем раскрытии сущности, "кадр", в общем, означает единицу, представляющую одно изображение в конкретный период времени, и срез/плитка представляет собой единицу кодирования, составляющую часть кадра, и один кадр может состоять из одного или более срезов/плиток. Помимо этого, срез/плитка может включать в себя одну или более единиц дерева кодирования (CTU).
[50] В настоящем раскрытии сущности, "пиксел" или "пел" может означать наименьшую единицу, составляющую один кадр (или изображение). Помимо этого, "выборка" может использоваться в качестве термина, соответствующего пикселу. Выборка, в общем, может представлять пиксел или значение пиксела и может представлять только пиксел/пиксельное значение компонента сигнала яркости либо только пиксел/пиксельное значение компонента сигнала цветности.
[51] В настоящем раскрытии сущности, "единица" может представлять базовую единицу обработки изображений. Единица может включать в себя, по меньшей мере, одно из конкретной области кадра и информации, связанной с областью. Единица может использоваться взаимозаменяемо с такими терминами, как "массив выборок", "блок" или "зона" в некоторых случаях. В общем случае, блок MxN может включать в себя выборки (или массивы выборок) либо набор (или массив) коэффициентов преобразования из M столбцов и N строк.
[52] В настоящем раскрытии сущности, "текущий блок" может означать одно из "текущего блока кодирования", "текущей единицы кодирования", "целевого блока кодирования", "целевого блока декодирования" или "целевого блока обработки". Когда прогнозирование выполняется, "текущий блок" может означать "текущий блок прогнозирования" или "целевой блок прогнозирования". Когда преобразование (обратное преобразование)/квантование (деквантование) выполняется, "текущий блок" может означать "текущий блок преобразования" или "целевой блок преобразования". Когда фильтрация выполняется, "текущий блок" может означать "целевой блок фильтрации".
[53] Помимо этого, в настоящем раскрытии сущности, "текущий блок" может означать "блок сигналов яркости текущего блока", если не указан в явной форме в качестве блока сигналов цветности. "Блок сигналов цветности текущего блока" может выражаться посредством включения явного описания блока сигналов цветности, такого как "блок сигналов цветности" или "текущий блок сигналов цветности".
[54] В настоящем раскрытии сущности, термин "/" и "" должен интерпретироваться как указывающий "и/или". Например, выражение "A/B" и "A, B" может означать "A и/или B". Дополнительно, "A/B/C" и "A/B/C" может означать "по меньшей мере, одно из A, B и/или C".
[55] В настоящем раскрытии сущности, термин "или" должен интерпретироваться как указывающий "и/или". Например, выражение "A или B" может содержать 1) только "A", 2) только "B" и/или 3) "как A, так и B". Другими словами, в настоящем раскрытии сущности, термин "или" должен интерпретироваться как указывающий "дополнительно или альтернативно".
[56] Общее представление системы кодирования видео
[57] Фиг. 1 является видом, показывающим систему кодирования видео согласно настоящему раскрытию сущности.
[58] Система кодирования видео согласно варианту осуществления может включать в себя оборудование 10 кодирования и оборудование 20 декодирования. Оборудование 10 кодирования может доставлять кодированную информацию или данные видео и/или изображений в оборудование 20 декодирования в форме файла или потоковой передачи через цифровой носитель хранения данных или сеть.
[59] Оборудование 10 кодирования согласно варианту осуществления может включать в себя формирователь 11 видеоисточников, модуль 12 кодирования и передатчик 13. Оборудование 20 декодирования согласно варианту осуществления может включать в себя приемник 21, модуль 22 декодирования и модуль 23 рендеринга. Модуль 12 кодирования может называться "модулем кодирования видео/изображений", и модуль 22 декодирования может называться "модулем декодирования видео/изображений". Передатчик 13 может включаться в модуль 12 кодирования. Приемник 21 может включаться в модуль 22 декодирования. Модуль 23 рендеринга может включать в себя дисплей, и дисплей может быть сконфигурирован как отдельное устройство или внешний компонент.
[60] Формирователь 11 видеоисточников может получать видео/изображение через процесс захвата, синтезирования или формирования видео/изображения. Формирователь 11 видеоисточников может включать в себя устройство захвата видео/изображений и/или устройство формирования видео/изображений. Устройство захвата видео/изображений может включать в себя, например, одну или более камер, архивы видео/изображений, включающие в себя ранее захваченные видео/изображения, и т.п. Устройство формирования видео/изображений может включать в себя, например, компьютеры, планшетные компьютеры и смартфоны и может (электронно) формировать видео/изображения. Например, виртуальное видео/изображение может формироваться через компьютер и т.п. В этом случае, процесс захвата видео/изображений может заменяться посредством процесса формирования связанных данных.
[61] Модуль 12 кодирования может кодировать входное видео/изображение. Модуль 12 кодирования может выполнять последовательность процедур, таких как прогнозирование, преобразование и квантование, для эффективности сжатия и кодирования. Модуль 12 кодирования может выводить кодированные данные (кодированную информацию видео/изображений) в форме потока битов.
[62] Передатчик 13 может передавать кодированную информацию или данные видео/изображений, выводимую в форме потока битов, в приемник 21 оборудования 20 декодирования через цифровой носитель хранения данных или сеть в форме файла или потоковой передачи. Цифровой носитель хранения данных может включать в себя различные носители хранения данных, такие как USB, SD, CD, DVD, Blu-Ray, HDD, SSD и т.п. Передатчик 13 может включать в себя элемент для формирования мультимедийного файла через предварительно определенный формат файлов и может включать в себя элемент для передачи через широковещательную сеть/сеть связи. Приемник 21 может извлекать/принимать поток битов из носителя хранения данных или сети и передавать поток битов в модуль 22 декодирования.
[63] Модуль 22 декодирования может декодировать видео/изображение посредством выполнения последовательности процедур, таких как деквантование, обратное преобразование и прогнозирование, соответствующих работе модуля 12 кодирования.
[64] Модуль 23 рендеринга может подготавливать посредством рендеринга декодированное видео/изображение. Подготовленное посредством рендеринга видео/изображение может отображаться через дисплей.
[65] Общее представление оборудования кодирования изображений
[66] Фиг. 2 является видом, схематично показывающим оборудование кодирования изображений, к которому является применимым вариант осуществления настоящего раскрытия сущности.
[67] Как показано на фиг. 2, оборудование 100 кодирования изображений может включать в себя модуль 110 сегментации изображений, вычитатель 115, преобразователь 120, квантователь 130, деквантователь 140, обратный преобразователь 150, сумматор 155, фильтр 160, запоминающее устройство 170, модуль 180 взаимного прогнозирования, модуль 185 внутреннего прогнозирования и энтропийный кодер 190. Модуль 180 взаимного прогнозирования и модуль 185 внутреннего прогнозирования могут совместно называться "модулем прогнозирования". Преобразователь 120, квантователь 130, деквантователь 140 и обратный преобразователь 150 могут включаться в остаточный процессор. Остаточный процессор дополнительно может включать в себя вычитатель 115.
[68] Все или, по меньшей мере, часть из множества компонентов, конфигурирующих оборудование 100 кодирования изображений, могут быть сконфигурированы посредством одного аппаратного компонента (например, кодера или процессора) в некоторых вариантах осуществления. Помимо этого, запоминающее устройство 170 может включать в себя буфер декодированных кадров (DPB) и может быть сконфигурировано посредством цифрового носителя хранения данных.
[69] Модуль 110 сегментации изображений может сегментировать входное изображение (либо кадр или кинокадр), вводимое в оборудование 100 кодирования изображений, на одну более единиц обработки. Например, единица обработки может называться "единицей кодирования (CU)". Единица кодирования может получаться посредством рекурсивной сегментации единицы дерева кодирования (CTU) или наибольшей единицы кодирования (LCU) согласно структуре в виде дерева квадрантов, двоичного дерева и троичного дерева (QT/BT/TT). Например, одна единица кодирования может сегментироваться на множество единиц кодирования большей глубины на основе структуры в виде дерева квадрантов, структуры в виде двоичного дерева и/или троичной структуры. Для сегментации единицы кодирования, сначала может применяться структура в виде дерева квадрантов, и впоследствии может применяться структура в виде двоичного дерева и/или троичная структура. Процедура кодирования согласно настоящему раскрытию сущности может выполняться на основе конечной единицы кодирования, которая более не сегментируется. Наибольшая единица кодирования может использоваться в качестве конечной единицы кодирования, или единица кодирования большей глубины, полученной посредством сегментации наибольшей единицы кодирования, может использоваться в качестве конечной единицы кодирования. Здесь, процедура кодирования может включать в себя процедуру прогнозирования, преобразования и восстановления, которая описывается ниже. В качестве другого примера, единица обработки процедуры кодирования может представлять собой единицу прогнозирования (PU) или единицу преобразования (TU). Единица прогнозирования и единица преобразования могут разбиваться или сегментироваться из конечной единицы кодирования. Единица прогнозирования может представлять собой единицу выборочного прогнозирования, и единица преобразования может представлять собой единицу для извлечения коэффициента преобразования и/или единицу для извлечения остаточного сигнала из коэффициента преобразования.
[70] Модуль прогнозирования (модуль 180 взаимного прогнозирования или модуль 185 внутреннего прогнозирования) может выполнять прогнозирование относительно блока, который должен обрабатываться (текущего блока), и формировать прогнозированный блок, включающий в себя прогнозные выборки для текущего блока. Модуль прогнозирования может определять то, применяется внутреннее прогнозирование или взаимное прогнозирование, на основе текущего блока или CU. Модуль прогнозирования может формировать различную информацию, связанную с прогнозированием текущего блока, и передавать сформированную информацию в энтропийный кодер 190. Информация относительно прогнозирования может кодироваться в энтропийном кодере 190 и выводиться в форме потока битов.
[71] Модуль 185 внутреннего прогнозирования может прогнозировать текущий блок посредством ссылки на выборки в текущем кадре. Выборки для ссылки могут быть расположены в окружении текущего блока или могут быть расположены с разнесением согласно режиму внутреннего прогнозирования и/или технологии внутреннего прогнозирования. Режимы внутреннего прогнозирования могут включать в себя множество ненаправленных режимов и множество направленных режимов. Ненаправленный режим может включать в себя, например, DC-режим и планарный режим. Направленный режим может включать в себя, например, 33 режима направленного прогнозирования или 65 режимов направленного прогнозирования согласно степени детальности направления прогнозирования. Тем не менее, это представляет собой просто пример, большее или меньшее число режимов направленного прогнозирования может использоваться в зависимости от настройки. Модуль 185 внутреннего прогнозирования может определять режим прогнозирования, применяемый к текущему блоку, посредством использования режима прогнозирования, применяемого к соседнему блоку.
[72] Модуль 180 взаимного прогнозирования может извлекать прогнозированный блок для текущего блока на основе опорного блока (массива опорных выборок), указываемого посредством вектора движения для опорного кадра. В этом случае, чтобы уменьшать объем информации движения, передаваемой в режиме взаимного прогнозирования, информация движения может прогнозироваться в единицах блоков, субблоков или выборок на основе корреляции информации движения между соседним блоком и текущим блоком. Информация движения может включать в себя вектор движения и индекс опорного кадра. Информация движения дополнительно может включать в себя информацию направления взаимного прогнозирования (L0-прогнозирование, L1-прогнозирование, бипрогнозирование и т.д.). В случае взаимного прогнозирования, соседний блок может включать в себя пространственный соседний блок, присутствующий в текущем кадре, и временной соседний блок, присутствующий в опорном кадре. Опорный кадр, включающий в себя опорный блок, и опорный кадр, включающий в себя временной соседний блок, могут быть идентичными или отличающимися. Временной соседний блок может называться "совместно размещенным опорным блоком", "совместно размещенной CU (colCU)" и т.п. Опорный кадр, включающий в себя временной соседний блок, может называться "совместно размещенным кадром (colPic)". Например, модуль 180 взаимного прогнозирования может конфигурировать список возможных вариантов информации движения на основе соседних блоков и формировать информацию, указывающую то, какой возможный вариант используется для того, чтобы извлекать вектор движения и/или индекс опорного кадра текущего блока. Взаимное прогнозирование может выполняться на основе различных режимов прогнозирования. Например, в случае режима пропуска и режима объединения, модуль 180 взаимного прогнозирования может использовать информацию движения соседнего блока в качестве информации движения текущего блока. В случае режима пропуска, в отличие от режима объединения, остаточный сигнал может не передаваться. В случае режима прогнозирования векторов движения (MVP), вектор движения соседнего блока может использоваться в качестве предиктора вектора движения, и вектор движения текущего блока может передаваться в служебных сигналах посредством кодирования разности векторов движения и индикатора для предиктора вектора движения. Разность векторов движения может означать разность между вектором движения текущего блока и предиктором вектора движения.
[73] Модуль прогнозирования может формировать прогнозный сигнал на основе различных способов прогнозирования и технологий прогнозирования, описанных ниже. Например, модуль прогнозирования может не только применять внутреннее прогнозирование или взаимное прогнозирование, но также и одновременно применять как внутреннее прогнозирование, так и взаимное прогнозирование, чтобы прогнозировать текущий блок. Способ прогнозирования с одновременным применением как внутреннего прогнозирования, так и взаимного прогнозирования для прогнозирования текущего блока может называться "комбинированным взаимным и внутренним прогнозированием (CIIP)". Помимо этого, модуль прогнозирования может выполнять внутриблочное копирование (IBC) для прогнозирования текущего блока. Внутриблочное копирование может использоваться для кодирования изображений/видео контента игры и т.п., например, для кодирования экранного контента (SCC). IBC представляет собой способ прогнозирования текущего кадра с использованием ранее восстановленного опорного блока в текущем кадре в местоположении, разнесенном от текущего блока на предварительно определенное расстояние. Когда IBC применяется, местоположение опорного блока в текущем кадре может кодироваться как вектор (блочный вектор), соответствующий предварительно определенному расстоянию. IBC по существу выполняет прогнозирование в текущем кадре, но может выполняться аналогично взаимному прогнозированию в том, что опорный блок извлекается внутри текущего кадра. Таким образом, IBC может использовать, по меньшей мере, одну из технологий взаимного прогнозирования, описанных в настоящем раскрытии сущности.
[74] Прогнозный сигнал, сформированный посредством модуля прогнозирования, может использоваться для того, чтобы формировать восстановленный сигнал или формировать остаточный сигнал. Вычитатель 115 может формировать остаточный сигнал (остаточный блок или массив остаточных выборок) посредством вычитания прогнозного сигнала (прогнозированного блока или массива прогнозных выборок), выводимого из модуля прогнозирования, из сигнала входного изображения (исходного блока или массива исходных выборок). Сформированный остаточный сигнал может передаваться в преобразователь 120.
[75] Преобразователь 120 может формировать коэффициенты преобразования посредством применения технологии преобразования к остаточному сигналу. Например, технология преобразования может включать в себя, по меньшей мере, одно из дискретного косинусного преобразования (DCT), дискретного синусного преобразования (DST), преобразования Карунена-Лоэва (KLT), преобразования на основе графа (GBT) или условно нелинейного преобразования (CNT). Здесь, GBT означает преобразование, полученное из графа, когда информация взаимосвязи между пикселами представляется посредством графа. CNT означает преобразование, полученное на основе прогнозного сигнала, сформированного с использованием всех ранее восстановленных пикселов. Помимо этого, процесс преобразования может применяться к квадратным пиксельным блокам, имеющим идентичный размер, или может применяться к блокам, имеющим переменный размер, а не квадратный.
[76] Квантователь 130 может квантовать коэффициенты преобразования и передавать их в энтропийный кодер 190. Энтропийный кодер 190 может кодировать квантованный сигнал (информацию относительно квантованных коэффициентов преобразования) и выводить поток битов. Информация относительно квантованных коэффициентов преобразования может называться "остаточной информацией". Квантователь 130 может перекомпоновывать квантованные коэффициенты преобразования в блочной форме в одномерную векторную форму на основе порядка сканирования коэффициентов и формировать информацию относительно квантованных коэффициентов преобразования на основе квантованных коэффициентов преобразования в одномерной векторной форме.
[77] Энтропийный кодер 190 может осуществлять различные способы кодирования, такие как, например, кодирование экспоненциальным кодом Голомба, контекстно-адаптивное кодирование переменной длины (CAVLC), контекстно-адаптивное двоичное арифметическое кодирование (CABAC) и т.п. Энтропийный кодер 190 может кодировать информацию, необходимую для восстановления видео/изображений, отличную от квантованных коэффициентов преобразования (например, значений синтаксических элементов и т.д.), вместе или отдельно. Кодированная информация (например, кодированная информация видео/изображений) может передаваться или сохраняться в единицах слоев абстрагирования от сети (NAL) в форме потока битов. Информация видео/изображений дополнительно может включать в себя информацию относительно различных наборов параметров, таких как набор параметров адаптации (APS), набор параметров кадра (PPS), набор параметров последовательности (SPS) или набор параметров видео (VPS). Помимо этого, информация видео/изображений дополнительно может включать в себя общую информацию ограничений. Передаваемая в служебных сигналах информация, передаваемая информация и/или синтаксические элементы, описанные в настоящем раскрытии сущности, могут кодироваться через вышеописанную процедуру кодирования и включаться в поток битов.
[78] Поток битов может передаваться по сети или может сохраняться на цифровом носителе хранения данных. Сеть может включать в себя широковещательную сеть и/или сеть связи, и цифровой носитель хранения данных может включать в себя различные носители хранения данных, такие как, USB, SD, CD, DVD, Blu-Ray, HDD, SSD и т.п. Передатчик (не показан), передающий сигнал, выводимый из энтропийного кодера 190, и/или модуль хранения (не показан), сохраняющий сигнал, могут включаться в качестве внутреннего/внешнего элемента оборудования 100 кодирования, и альтернативно, передатчик может включаться в энтропийный кодер 190.
[79] Квантованные коэффициенты преобразования, выводимые из квантователя 130, могут использоваться для того, чтобы формировать остаточный сигнал. Например, остаточный сигнал (остаточный блок или остаточные выборки) может восстанавливаться посредством применения деквантования и обратного преобразования к квантованным коэффициентам преобразования через деквантователь 140 и обратный преобразователь 150.
[80] Сумматор 155 суммирует восстановленный остаточный сигнал с прогнозным сигналом, выводимым из модуля 180 взаимного прогнозирования или модуля 185 внутреннего прогнозирования, с тем чтобы формировать восстановленный сигнал (восстановленный кадр, восстановленный блок, массив восстановленных выборок). Если отсутствует остаток для блока, который должен обрабатываться, к примеру, в случае, в котором режим пропуска применяется, прогнозированный блок может использоваться в качестве восстановленного блока. Сумматор 155 может называться "модулем восстановления" или "формирователем восстановленных блоков". Сформированный восстановленный сигнал может использоваться для внутреннего прогнозирования следующего блока, который должен обрабатываться в текущем кадре, и может использоваться для взаимного прогнозирования следующего кадра посредством фильтрации, как описано ниже.
[81] Фильтр 160 может повышать субъективное/объективное качество изображений посредством применения фильтрации к восстановленному сигналу. Например, фильтр 160 может формировать модифицированный восстановленный кадр посредством применения различных способов фильтрации к восстановленному кадру и сохранять модифицированный восстановленный кадр в запоминающем устройстве 170, а именно, в DPB запоминающего устройства 170. Различные способы фильтрации могут включать в себя, например, фильтрацию для удаления блочности, дискретизированное адаптивное смещение, адаптивный контурный фильтр, билатеральный фильтр и т.п. Фильтр 160 может формировать различную информацию, связанную с фильтрацией, и передавать сформированную информацию в энтропийный кодер 190, как описано ниже в описании каждого способа фильтрации. Информация, связанная с фильтрацией, может кодироваться посредством энтропийного кодера 190 и выводиться в форме потока битов.
[82] Модифицированный восстановленный кадр, передаваемый в запоминающее устройство 170, может использоваться в качестве опорного кадра в модуле 180 взаимного прогнозирования. Когда взаимное прогнозирование применяется через оборудование 100 кодирования изображений, рассогласование прогнозирования между оборудованием 100 кодирования изображений и оборудованием декодирования изображений может исключаться, и эффективность кодирования может повышаться.
[83] DPB запоминающего устройства 170 может сохранять модифицированный восстановленный кадр для использования в качестве опорного кадра в модуле 180 взаимного прогнозирования. Запоминающее устройство 170 может сохранять информацию движения блока, из которой информация движения в текущем кадре извлекается (или кодируется), и/или информацию движения блоков в кадре, которые уже восстановлены. Сохраненная информация движения может передаваться в модуль 180 взаимного прогнозирования и использоваться в качестве информации движения пространственного соседнего блока или информации движения временного соседнего блока. Запоминающее устройство 170 может сохранять восстановленные выборки восстановленных блоков в текущем кадре и может передавать восстановленные выборки в модуль 185 внутреннего прогнозирования.
[84] Общее представление оборудования декодирования изображений
[85] Фиг. 3 является видом, схематично показывающим оборудование декодирования изображений, к которому является применимым вариант осуществления настоящего раскрытия сущности.
[86] Как показано на фиг. 3, оборудование 200 декодирования изображений может включать в себя энтропийный декодер 210, деквантователь 220, обратный преобразователь 230, сумматор 235, фильтр 240, запоминающее устройство 250, модуль 260 взаимного прогнозирования и модуль 265 внутреннего прогнозирования. Модуль 260 взаимного прогнозирования и модуль 265 внутреннего прогнозирования могут совместно называться "модулем прогнозирования". Деквантователь 220 и обратный преобразователь 230 могут включаться в остаточный процессор.
[87] Все или, по меньшей мере, часть из множества компонентов, конфигурирующих оборудование 200 декодирования изображений, могут быть сконфигурированы посредством аппаратного компонента (например, декодера или процессора) согласно варианту осуществления. Помимо этого, запоминающее устройство 250 может включать в себя буфер декодированных кадров (DPB) или может быть сконфигурировано посредством цифрового носителя хранения данных.
[88] Оборудование 200 декодирования изображений, которое принимает поток битов, включающий в себя информацию видео/изображений, может восстанавливать изображение посредством выполнения процесса, соответствующего процессу, выполняемому посредством оборудования 100 кодирования изображений по фиг. 2. Например, оборудование 200 декодирования изображений может выполнять декодирование с использованием единицы обработки, применяемой в оборудовании кодирования изображений. Таким образом, единица обработки декодирования, например, может представлять собой единицу кодирования. Единица кодирования может получаться посредством сегментации единицы дерева кодирования или наибольшей единицы кодирования. Восстановленный сигнал изображения, декодированный и выводимый посредством оборудования 200 декодирования, может воспроизводиться посредством оборудования воспроизведения.
[89] Оборудование 200 декодирования изображений может принимать сигнал, выводимый из оборудования кодирования изображений по фиг. 2 в форме потока битов. Принимаемый сигнал может декодироваться через энтропийный декодер 210. Например, энтропийный декодер 210 может синтаксически анализировать поток битов, чтобы извлекать информацию (например, информацию видео/изображений), необходимую для восстановления изображений (или восстановления кадров). Информация видео/изображений дополнительно может включать в себя информацию относительно различных наборов параметров, таких как набор параметров адаптации (APS), набор параметров кадра (PPS), набор параметров последовательности (SPS) или набор параметров видео (VPS). Помимо этого, информация видео/изображений дополнительно может включать в себя общую информацию ограничений. Оборудование декодирования изображений дополнительно может декодировать кадр на основе информации относительно набора параметров и/или общей информации ограничений. Передаваемая в служебных сигналах/принимаемая информация и/или синтаксические элементы, описанные в настоящем раскрытии сущности, могут декодироваться посредством процедуры декодирования и получаться из потока битов. Например, энтропийный декодер 210 декодирует информацию в потоке битов на основе способа кодирования, такого как кодирование экспоненциальным кодом Голомба, CAVLC или CABAC, и выходных значений синтаксических элементов, требуемых для восстановления изображений, и квантованных значений коэффициентов преобразования для остатка. Более конкретно, способ энтропийного CABAC-декодирования может принимать элемент разрешения, соответствующий каждому синтаксическому элементу в потоке битов, определять контекстную модель с использованием информации целевого синтаксического элемента декодирования, информации декодирования соседнего блока и целевого блока декодирования или информации символа/элемента разрешения, декодированного на предыдущей стадии, и выполнять арифметическое декодирование для элемента разрешения посредством прогнозирования вероятности появления элемента разрешения согласно определенной контекстной модели и формировать символ, соответствующий значению каждого синтаксического элемента. В этом случае, способ энтропийного CABAC-декодирования может обновлять контекстную модель посредством использования информации декодированного символа/элемента разрешения для контекстной модели следующего символа/элемента разрешения после определения контекстной модели. Информация, связанная с прогнозированием из информации, декодированной посредством энтропийного декодера 210, может предоставляться в модуль прогнозирования (модуль 260 взаимного прогнозирования и модуль 265 внутреннего прогнозирования), и остаточное значение, для которого энтропийное декодирование выполнено в энтропийном декодере 210, т.е. квантованные коэффициенты преобразования и связанная информация параметров, может вводиться в деквантователь 220. Помимо этого, информация относительно фильтрации из информации, декодированной посредством энтропийного декодера 210, может предоставляться в фильтр 240. Между тем, приемник (не показан) для приема сигнала, выводимого из оборудования кодирования изображений, может быть дополнительно сконфигурирован в качестве внутреннего/внешнего элемента оборудования 200 декодирования изображений, или приемник может представлять собой компонент энтропийного декодера 210.
[90] Между тем, оборудование декодирования изображений согласно настоящему раскрытию сущности может называться "оборудованием декодирования видео/изображений/кадров". Оборудование декодирования изображений может классифицироваться на информационный декодер (декодер информации видео/изображений/кадров) и выборочный декодер (декодер выборок видео/изображений/кадров). Информационный декодер может включать в себя энтропийный декодер 210. Выборочный декодер может включать в себя, по меньшей мере, одно из деквантователя 220, обратного преобразователя 230, сумматора 235, фильтра 240, запоминающего устройства 250, модуля 260 взаимного прогнозирования или модуля 265 внутреннего прогнозирования.
[91] Деквантователь 220 может деквантовать квантованные коэффициенты преобразования и выводить коэффициенты преобразования. Деквантователь 220 может перекомпоновывать квантованные коэффициенты преобразования в форме двумерного блока. В этом случае, перекомпоновка может выполняться на основе порядка сканирования коэффициентов, выполняемого в оборудовании кодирования изображений. Деквантователь 220 может выполнять деквантование для квантованных коэффициентов преобразования посредством использования параметра квантования (например, информации размера шага квантования) и получать коэффициенты преобразования.
[92] Обратный преобразователь 230 может обратно преобразовывать коэффициенты преобразования, чтобы получать остаточный сигнал (остаточный блок, массив остаточных выборок).
[93] Модуль прогнозирования может выполнять прогнозирование для текущего блока и может формировать прогнозированный блок, включающий в себя прогнозные выборки для текущего блока. Модуль прогнозирования может определять то, применяется внутреннее прогнозирование или взаимное прогнозирование к текущему блоку, на основе информации относительно прогнозирования, выводимой из энтропийного декодера 210, и может определять конкретный режим внутреннего/взаимного прогнозирования.
[94] Идентично тому, что описано в модуле прогнозирования оборудования 100 кодирования изображений, модуль прогнозирования может формировать прогнозный сигнал на основе различных способов (технологий) прогнозирования, которые описываются ниже.
[95] Модуль 265 внутреннего прогнозирования может прогнозировать текущий блок посредством ссылки на выборки в текущем кадре. Описание модуля 185 внутреннего прогнозирования в равной степени применяется к модулю 265 внутреннего прогнозирования.
[96] Модуль 260 взаимного прогнозирования может извлекать прогнозированный блок для текущего блока на основе опорного блока (массива опорных выборок), указываемого посредством вектора движения для опорного кадра. В этом случае, чтобы уменьшать объем информации движения, передаваемой в режиме взаимного прогнозирования, информация движения может прогнозироваться в единицах блоков, субблоков или выборок на основе корреляции информации движения между соседним блоком и текущим блоком. Информация движения может включать в себя вектор движения и индекс опорного кадра. Информация движения дополнительно может включать в себя информацию направления взаимного прогнозирования (L0-прогнозирование, L1-прогнозирование, бипрогнозирование и т.д.). В случае взаимного прогнозирования, соседний блок может включать в себя пространственный соседний блок, присутствующий в текущем кадре, и временной соседний блок, присутствующий в опорном кадре. Например, модуль 260 взаимного прогнозирования может конфигурировать список возможных вариантов информации движения на основе соседних блоков и извлекать вектор движения текущего блока и/или индекс опорного кадра на основе принимаемой информации выбора возможных вариантов. Взаимное прогнозирование может выполняться на основе различных режимов прогнозирования, и информация относительно прогнозирования может включать в себя информацию, указывающую режим взаимного прогнозирования для текущего блока.
[97] Сумматор 235 может формировать восстановленный сигнал (восстановленный кадр, восстановленный блок, массив восстановленных выборок) посредством суммирования полученного остаточного сигнала с прогнозным сигналом (прогнозированным блоком, массивом прогнозированных выборок), выводимым из модуля прогнозирования (включающего в себя модуль 260 взаимного прогнозирования и/или модуль 265 внутреннего прогнозирования). Если отсутствует остаток для блока, который должен обрабатываться, к примеру, когда режим пропуска применяется, прогнозированный блок может использоваться в качестве восстановленного блока. Описание сумматора 155 является в равной степени применимым к сумматору 235. Сумматор 235 может называться "модулем восстановления" или "формирователем восстановленных блоков". Сформированный восстановленный сигнал может использоваться для внутреннего прогнозирования следующего блока, который должен обрабатываться в текущем кадре, и может использоваться для взаимного прогнозирования следующего кадра посредством фильтрации, как описано ниже.
[98] Фильтр 240 может повышать субъективное/объективное качество изображений посредством применения фильтрации к восстановленному сигналу. Например, фильтр 240 может формировать модифицированный восстановленный кадр посредством применения различных способов фильтрации к восстановленному кадру и сохранять модифицированный восстановленный кадр в запоминающем устройстве 250, а именно, в DPB запоминающего устройства 250. Различные способы фильтрации могут включать в себя, например, фильтрацию для удаления блочности, дискретизированное адаптивное смещение, адаптивный контурный фильтр, билатеральный фильтр и т.п.
[99] (Модифицированный) восстановленный кадр, сохраненный в DPB запоминающего устройства 250, может использоваться в качестве опорного кадра в модуле 260 взаимного прогнозирования. Запоминающее устройство 250 может сохранять информацию движения блока, из которой информация движения в текущем кадре извлекается (или декодируется), и/или информацию движения блоков в кадре, которые уже восстановлены. Сохраненная информация движения может передаваться в модуль 260 взаимного прогнозирования, так что она используется в качестве информации движения пространственного соседнего блока или информации движения временного соседнего блока. Запоминающее устройство 250 может сохранять восстановленные выборки восстановленных блоков в текущем кадре и передавать восстановленные выборки в модуль 265 внутреннего прогнозирования.
[100] В настоящем раскрытии сущности, варианты осуществления, описанные в фильтре 160, модуле 180 взаимного прогнозирования и модуле 185 внутреннего прогнозирования оборудования 100 кодирования изображений, могут в равной или соответствующей степени применяться к фильтру 240, модулю 260 взаимного прогнозирования и модулю 265 внутреннего прогнозирования оборудования 200 декодирования изображений.
[101] Общее представление сегментации изображений
[102] Способ кодирования видео/изображений согласно настоящему раскрытию сущности может осуществляться на основе структуры сегментации изображений следующим образом. В частности, процедуры прогнозирования, остаточной обработки ((обратного) преобразования, (де)-квантования и т.д.), кодирования синтаксических элементов и фильтрации, которые описываются ниже, могут выполняться на основе CTU, CU (и/или TU, PU), извлекаемой на основе структуры сегментации изображений. Изображение может сегментироваться в единицах блоков, и процедура сегментации на блоки может выполняться в модуле 110 сегментации изображений оборудования кодирования. Связанная с сегментацией информация может кодироваться посредством энтропийного кодера 190 и передаваться в оборудование декодирования в форме потока битов. Энтропийный декодер 210 оборудования декодирования может извлекать структуру сегментации на блоки текущего кадра на основе связанной с сегментацией информации, полученной из потока битов, и на основе этого, может выполнять последовательность процедур (например, прогнозирование, остаточную обработку, восстановление блоков/кадров, внутриконтурную фильтрацию и т.д.) для декодирования изображений.
[103] Кадры могут сегментироваться на последовательность единиц дерева кодирования (CTU). Фиг. 4 показывает пример, в котором кадр сегментируется на CTU. CTU может соответствовать блоку дерева кодирования (CTB). Альтернативно, CTU может включать в себя блок дерева кодирования выборок сигналов яркости и два блока дерева кодирования соответствующих выборок сигналов цветности. Например, для кадра, который содержит три массива выборок, CTU может включать в себя блок NxN выборок сигналов яркости и два соответствующих блока выборок сигналов цветности.
[104] Общее представление сегментации CTU
[105] Как описано выше, единица кодирования может получаться посредством рекурсивной сегментации единицы дерева кодирования (CTU) или наибольшей единицы кодирования (LCU) согласно структуре в виде дерева квадрантов/двоичного дерева/троичного дерева (QT/BT/TT). Например, CTU может сначала сегментироваться на структуры в виде дерева квадрантов. После этого, узлы-листья структуры в виде дерева квадрантов дополнительно могут сегментироваться посредством многотипной древовидной структуры.
[106] Сегментация согласно дереву квадрантов означает то, что текущая CU (или CTU) сегментируется одинаково на четыре. Посредством сегментации согласно дереву квадрантов, текущая CU может сегментироваться на четыре CU, имеющие идентичную ширину и идентичную высоту. Когда текущая CU более не сегментируется на структуру в виде дерева квадрантов, текущая CU соответствует узлу-листу структуры в виде дерева квадрантов. CU, соответствующая узлу-листу структуры в виде дерева квадрантов, более не может сегментироваться и может использоваться в качестве вышеописанной конечной единицы кодирования. Альтернативно, CU, соответствующая узлу-листу структуры в виде дерева квадрантов, дополнительно может сегментироваться посредством многотипной древовидной структуры.
[107] Фиг. 5 является видом, показывающим вариант осуществления типа сегментации блока согласно многотипной древовидной структуре. Сегментация согласно многотипной древовидной структуре может включать в себя два типа разбиения согласно структуре в виде двоичного дерева и два типа разбиения согласно структуре в виде троичного дерева.
[108] Два типа разбиения согласно структуре в виде двоичного дерева могут включать в себя вертикальное двоичное разбиение (SPLIT_BT_VER) и горизонтальное двоичное разбиение (SPLIT_BT_HOR). Вертикальное двоичное разбиение (SPLIT_BT_VER) означает то, что текущая CU разбивается одинаково напополам в вертикальном направлении. Как показано на фиг. 4, посредством вертикального двоичного разбиения, могут формироваться две CU, имеющие высоту, идентичную высоте текущей CU, и имеющие ширину, которая составляет половину от ширины текущей CU. Горизонтальное двоичное разбиение (SPLIT_BT_HOR) означает то, что текущая CU разбивается одинаково напополам в горизонтальном направлении. Как показано на фиг. 5, посредством горизонтального двоичного разбиения, могут формироваться две CU, имеющие высоту, которая составляет половину от высоты текущей CU, и имеющие ширину, идентичную ширине текущей CU.
[109] Два типа разбиения согласно структуре в виде троичного дерева могут включать в себя вертикальное троичное разбиение (SPLIT_TT_VER) и горизонтальное троичное разбиение (SPLIT_TT_HOR). В вертикальном троичном разбиении (SPLIT_TT_VER), текущая CU разбивается в вертикальном направлении в соотношении 1:2:1. Как показано на фиг. 5, посредством вертикального троичного разбиения, могут формироваться две CU, имеющие высоту, идентичную высоте текущей CU, и имеющие ширину, которая составляет 1/4 от ширины текущей CU, и CU, имеющая высоту, идентичную высоте текущей CU, и имеющая ширину, которая составляет половину от ширины текущей CU. В горизонтальном троичном разбиении (SPLIT_TT_HOR), текущая CU разбивается в горизонтальном направлении в соотношении 1:2:1. Как показано на фиг. 5, посредством горизонтального троичного разбиения, могут формироваться две CU, имеющие высоту, которая составляет 1/4 от высоты текущей CU, и имеющие ширину, идентичную ширине текущей CU, и CU, имеющая высоту, которая составляет половину от высоты текущей CU, и имеющая ширины, идентичную ширине текущей CU.
[110] Фиг. 6 является видом, показывающим механизм передачи в служебных сигналах информации разбиения на блоки в дереве квадрантов с вложенной многотипной древовидной структурой согласно настоящему раскрытию сущности.
[111] Здесь, CTU трактуется в качестве корневого узла дерева квадрантов и сегментируется в первый раз на структуру в виде дерева квадрантов. Информация (например, qt_split_flag), указывающая то, выполняется или нет разбиение на дерево квадрантов для текущей CU (CTU или узла (QT_node) дерева квадрантов), передается в служебных сигналах. Например, когда qt_split_flag имеет первое значение (например, "1"), текущая CU может сегментироваться на дерево квадрантов. Помимо этого, когда qt_split_flag имеет второе значение (например, "0"), текущая CU не сегментируется на дерево квадрантов, но становится узлом-листом (QT_leaf_node) дерева квадрантов. Каждый узел-лист дерева квадрантов затем дополнительно может сегментироваться на многотипные древовидные структуры. Таким образом, узел-лист дерева квадрантов может становиться узлом (MTT_node) многотипного дерева. В многотипной древовидной структуре, первый флаг (например, Mtt_split_cu_flag) передается в служебных сигналах, чтобы указывать то, сегментируется или нет дополнительно текущий узел. Если соответствующий узел дополнительно сегментируется (например, если первый флаг равен 1), второй флаг (например, Mtt_split_cu_vertical_flag) может передаваться в служебных сигналах, чтобы указывать направление разбиения. Например, направление разбиения может представлять собой вертикальное направление, если второй флаг равен 1, и может представлять собой горизонтальное направление, если второй флаг равен 0. Затем третий флаг (например, Mtt_split_cu_binary_flag) может передаваться в служебных сигналах, чтобы указывать то, представляет тип разбиения собой тип на основе двоичного разбиения или тип на основе троичного разбиения. Например, тип разбиения может представлять собой тип на основе двоичного разбиения, когда третий флаг равен 1, и может представлять собой тип на основе троичного разбиения, когда третий флаг равен 0. Узел многотипного дерева, полученного посредством двоичного разбиения или троичного разбиения, дополнительно может сегментироваться на многотипные древовидные структуры. Тем не менее, узел многотипного дерева может не сегментироваться на структуры в виде дерева квадрантов. Если первый флаг равен 0, соответствующий узел многотипного дерева более не разбивается, но становится узлом-листом (MTT_leaf_node) многотипного дерева. CU, соответствующая узлу-листу многотипного дерева, может использоваться в качестве вышеописанной конечной единицы кодирования.
[112] На основе mtt_split_cu_vertical_flag и mtt_split_cu_binary_flag, режим разбиения на основе многотипного дерева (MttSplitMode) CU может извлекаться так, как показано в нижеприведенной таблице 1. В нижеприведенном описании, режим разбиения на основе многотипного дерева может называться "типом разбиения на основе мультидерева" или "типом разбиения".
[113]
Табл. 1 | ||
MttSplitMode | mtt_split_cu_vertical_flag | mtt_split_cu_binary_flag |
SPLIT_TT_HOR | 0 | 0 |
SPLIT_BT_HOR | 0 | 1 |
SPLIT_TT_VER | 1 | 0 |
SPLIT_BT_VER | 1 | 1 |
[114] Фиг. 7 является видом, показывающим пример, в котором CTU сегментируется на несколько CU посредством применения многотипного дерева после применения дерева квадрантов. На фиг. 7, полужирные края 710 блоков представляют сегментацию на основе дерева квадрантов, и оставшиеся края 720 представляют сегментацию на основе многотипного дерева. CU может соответствовать блоку кодирования (CB). В варианте осуществления, CU может включать в себя блок кодирования выборок сигналов яркости и два блока кодирования выборок сигналов цветности, соответствующих выборкам сигналов яркости. CB- или TB-размер компонентных (выборок) сигнала цветности может извлекаться на основе CB- или TB-размера компонентных (выборок) сигнала яркости согласно соотношению компонентов согласно цветовому формату (формату сигналов цветности, например, 4:4:4, 4:2:2, 4:2:0 и т.п.) кадра/изображения. В случае цветового формата 4:4:4, CB/TB-размер компонентов сигнала цветности может задаваться равным CB/TB-размеру компонентов сигнала яркости. В случае цветового формата 4:2:2, ширина CB/TB компонентов сигнала цветности может задаваться равной половине ширины CB/TB компонентов сигнала яркости, и высота CB/TB компонентов сигнала цветности может задаваться равной высоте CB/TB компонентов сигнала яркости. В случае цветового формата 4:2:0, ширина CB/TB компонентов сигнала цветности может задаваться равной половине ширины CB/TB компонентов сигнала яркости, и высота CB/TB компонентов сигнала цветности может задаваться равной половине высоты CB/TB компонентов сигнала яркости.
[115] В варианте осуществления, когда размер CTU равен 128 на основе единицы выборок сигналов яркости, размер CU может иметь размер от 128×128 до 4×4, что составляет идентичный размер с CTU. В одном варианте осуществления, в случае цветового формата 4:2:0 (или формата сигналов цветности), CB-размер сигналов цветности может иметь размер от 64×64 до 2×2.
[116] Между тем, в варианте осуществления, CU-размер и TU-размер могут быть идентичными. Альтернативно, может быть предусмотрено множество TU в CU-области. TU-размер, в общем, представляет размер блока преобразования (TB) компонентных (выборок) сигналов яркости.
[117] TU-размер может извлекаться на основе наибольшего допустимого TB-размера maxTbSize, который составляет предварительно определенное значение. Например, когда CU-размер превышает maxTbSize, множество TU (TB), имеющих maxTbSize, могут извлекаться из CU, и преобразование/обратное преобразование может выполняться в единицах TU (TB). Например, наибольший допустимый TB-размер сигналов яркости может составлять 64×64, и наибольший допустимый TB-размер сигналов цветности может составлять 32×32. Если ширина или высота CB, сегментированного согласно древовидной структуре, больше наибольшей ширины или высоты преобразования, CB может автоматически (или неявно) сегментироваться до тех пор, пока предел TB-размера в горизонтальном и вертикальном направлениях не удовлетворяется.
[118] Помимо этого, например, когда внутреннее прогнозирование применяется, режим/тип внутреннего прогнозирования может извлекаться в единицах CU (или CB), и процедура извлечения соседних опорных выборок и формирования прогнозных выборок может выполняться в единицах TU (или TB). В этом случае, может быть предусмотрена одна или множество TU (или TB) в одной CU-(или CB-)области, и, в этом случае, множество TU или (TB) могут совместно использовать идентичный режим/тип внутреннего прогнозирования.
[119] Между тем, для схемы дерева кодирования на основе дерева квадрантов с вложенным многотипным деревом, следующие параметры могут передаваться в служебных сигналах в качестве синтаксических SPS-элементов из оборудования кодирования в оборудование декодирования. Например, по меньшей мере, одно из CTU-размера, который представляет собой параметр, представляющий размер корневых узлов дерева квадрантов, MinQTSize, который представляет собой параметр, представляющий минимальный разрешенный размер узлов-листьев дерева квадрантов, MaxBtSize, который представляет собой параметр, представляющий максимальный разрешенный размер корневых узлов двоичного дерева, MaxTtSize, который представляет собой параметр, представляющий максимальный разрешенный размер корневых узлов троичного дерева, MaxMttDepth, который представляет собой параметр, представляющий максимальную разрешенную глубину иерархии разбиения на основе многотипного дерева из узла-листа дерева квадрантов, MinBtSize, который представляет собой параметр, представляющий минимальный разрешенный размер узлов-листьев двоичного дерева, или MinTtSize, который представляет собой параметр, представляющий минимальный разрешенный размер узлов-листьев троичного дерева, передается в служебных сигналах.
[120] В качестве варианта осуществления использования формата сигнала цветности 4:2:0, CTU-размер может задаваться равным блокам сигналов яркости 128×128 и двум блокам сигналов цветности 64×64, соответствующим блокам сигналов яркости. В этом случае, MinOTSize может задаваться равным 16×16, MaxBtSize может задаваться равным 128×128, MaxTtSzie может задаваться равным 64×64, MinBtSize и MinTtSize могут задаваться равными 4×4, и MaxMttDepth может задаваться равным 4. Сегментация на основе дерева квадрантов может применяться к CTU, чтобы формировать узлы-листья дерева квадрантов. Узел-лист дерева квадрантов может называться "QT-узлом-листом". Узлы-листья дерева квадрантов могут иметь размер от размера 16×16 (например, MinOTSize) до размера 128×128 (например, CTU-размера). Если QT-узел-лист составляет 128×128, он может дополнительно не сегментироваться на двоичное дерево/троичное дерево. Это обусловлено тем, что в этом случае, даже при сегментации, он превышает MaxBtsize и MaxTtszie (например, 64×64). В других случаях, QT-узлы-листья дополнительно могут сегментироваться на многотипное дерево. Следовательно, QT-узел-лист представляет собой корневой узел для многотипного дерева, и QT-узел-лист может иметь значение в 0 для глубины многотипного дерева (mttDepth). Если глубина многотипного дерева достигает MaxMttdepth (например, 4), дополнительная сегментация может более не рассматриваться. Если ширина узла многотипного дерева равна MinBtSize и меньше или равна 2xMinTtSize, то дополнительная горизонтальная сегментация может не рассматриваться. Если высота узла многотипного дерева равна MinBtSize и меньше или равна 2xMinTtSize, дополнительная вертикальная сегментация может не рассматриваться. Когда сегментация не рассматривается, оборудование кодирования может пропускать передачу в служебных сигналах информации сегментации. В этом случае, оборудование декодирования может извлекать информацию сегментации с предварительно определенным значением.
[121] Между тем, одна CTU может включать в себя блок кодирования выборок сигналов яркости (далее называемый "блоком сигналов яркости") и два блока кодирования выборок сигналов цветности, соответствующих ему (далее называемые "блоками сигналов цветности"). Вышеописанная схема на основе дерева кодирования можно одинаково или отдельно применяться к блоку сигналов яркости и к блоку сигналов цветности текущей CU. В частности, блоки сигналов яркости и сигналов цветности в одной CTU могут сегментироваться на идентичную блочную древовидную структуру, и в этом случае, древовидная структура представляется как SINGLE_TREE. Альтернативно, блоки сигналов яркости и сигналов цветности в одной CTU могут сегментироваться на отдельные блочные древовидные структуры, и в этом случае, древовидная структура может представляться как DUAL_TREE. Таким образом, когда CTU сегментируется на сдвоенные деревья, блочная древовидная структура для блока сигналов яркости и блочная древовидная структура для блока сигналов цветности могут отдельно присутствовать. В этом случае, блочная древовидная структура для блока сигналов яркости может называться "DUAL_TREE_LUMA", и блочная древовидная структура для компонента сигнала цветности может называться "DUAL_TREE_CHROMA". Для групп P- и B-срезов/плиток, блоки сигналов яркости и сигналов цветности в одной CTU могут быть ограничены тем, что они имеют идентичную структуру в виде дерева кодирования. Тем не менее, для групп I-срезов/плиток, блоки сигналов яркости и сигналов цветности могут иметь отдельную блочную древовидную структуру относительно друг друга. Если отдельная блочная древовидная структура применяется, CTB сигналов яркости может сегментироваться на CU на основе конкретной структуры в виде дерева кодирования, и CTB сигналов цветности может сегментироваться на CU сигнала цветности на основе другой структуры в виде дерева кодирования. Таким образом, это означает то, что CU в группе I-срезов/плиток, к которой применяется отдельная блочная древовидная структура, может включать в себя блок кодирования компонентов сигнала яркости или блоки кодирования двух компонентов сигнала цветности, и CU группы P- или B-срезов/плиток может включать в себя блоки трех цветовых компонентов (компонента сигнала яркости и двух компонентов сигнала цветности).
[122] Хотя описывается структура в виде дерева кодирования на основе дерева квадрантов с вложенным многотипным деревом, структура, в которой CU сегментируется, не ограничена этим. Например, BT-структура и TT-структура могут интерпретироваться в качестве понятия, включенного в структуру в виде дерева с несколькими видами сегментации (MPT), и CU может интерпретироваться как сегментируемая через QT-структуру и MPT-структуру. В примере, в котором CU сегментируется через QT-структуру и MPT-структуру, синтаксический элемент (например, MPT_split_type), включающий в себя информацию относительно того, на сколько блоков сегментируется узел-лист QT-структуры, и синтаксический элемент (например, MPT_split_mode), включающий в себя информацию относительно того, в каком из вертикального и горизонтального направлений сегментируется узел-лист QT-структуры, может передаваться в служебных сигналах, чтобы определять структуру сегментации.
[123] В другом примере, CU может сегментироваться способом, отличающимся от QT-структуры, BT-структуры или TT-структуры. Таким образом, в отличие от того, что CU меньшей глубины сегментируется на 1/4 от CU большей глубины согласно QT-структуре, CU меньшей глубины сегментируется на 1/2 от CU большей глубины согласно BT-структуре, или CU меньшей глубины сегментируется на 1/4 или 1/2 от CU большей глубины согласно TT-структуре, CU меньшей глубины может сегментироваться на 1/5, 1/3, 3/8, 3/5, 2/3 или 5/8 от CU большей глубины в некоторых случаях, и способ сегментации CU не ограничен этим.
[124] Структура блоков кодирования дерева квадрантов с многотипным деревом может предоставлять очень гибкую структуру сегментации на блоки. Вследствие типов сегментации, поддерживаемых в многотипном дереве, различные шаблоны сегментации могут потенциально приводить к идентичной структуре блоков кодирования в некоторых случаях. В оборудовании кодирования и оборудовании декодирования, посредством ограничения возникновения таких избыточных шаблонов сегментации, может уменьшаться объем данных информации сегментации.
[125] Например, фиг. 8 показывает избыточные шаблоны разбиения, которые могут возникать при разбиении на двоичное дерево и разбиении на троичное дерево. Как показано на фиг. 8, непрерывное двоичное разбиение 810 и 820 для одного направления двухэтапных уровней имеет структуру блоков кодирования, идентичную структуре блоков кодирования для двоичного разбиения для центрального сегмента после троичного разбиения. В этом случае, разбиение на двоичное дерево для центральных блоков 830 и 840 разбиения на троичное дерево может запрещаться. этот запрет является применимым к CU всех кадров. Когда такое конкретное разбиение запрещается, передача в служебных сигналах соответствующих синтаксических элементов может модифицироваться посредством отражения этого запрещенного случая, за счет этого уменьшая число битов, передаваемых в служебных сигналах для разбиения. Например, как показано в примере, приведенном на фиг. 8, когда разбиение на двоичное дерево для центрального блока CU запрещается, синтаксический элемент mtt_split_cu_binary_flag, указывающий то, представляет разбиение собой двоичное разбиение или троичное разбиение, не передается в служебных сигналах, и его значение может извлекаться в качестве 0 посредством оборудования декодирования.
[126] Общее представление формата сигналов цветности
[127] В дальнейшем в этом документе описывается формат сигналов цветности. Изображение может кодироваться в кодированные данные, включающие в себя массив компонентов сигнала яркости (например, Y) и два массива компонентов сигнала цветности (например, Cb и Cr). Например, один пиксел кодированного изображения может включать в себя выборку сигналов яркости и выборку сигналов цветности. Формат сигналов цветности может использоваться для того, чтобы представлять конфигурационный формат выборки сигналов яркости и выборки сигналов цветности, и формат сигналов цветности может называться "цветовым форматом".
[128] В варианте осуществления, изображение может кодироваться в различные форматы сигналов цветности, такие как монохромный, 4:2:0, 4:2:2 или 4:4:4. При монохромной дискретизации, может быть предусмотрен один массив выборок, и массив выборок может представлять собой массив сигналов яркости. При дискретизации 4:2:0, могут быть предусмотрены один массив выборок сигналов яркости и два массива выборок сигналов цветности, каждый из двух массивов сигналов цветности может иметь высоту, равную половине высоты массива сигналов яркости, и ширину, равную половине ширины массива сигналов яркости. При дискретизации 4:2:2, могут быть предусмотрены один массив выборок сигналов яркости и два массива выборок сигналов цветности, каждый из двух массивов сигналов цветности может иметь высоту, равную высоте массива сигналов яркости, и ширину, равную половине ширины массива сигналов яркости. При дискретизации 4:4:4, могут быть предусмотрены один массив выборок сигналов яркости и два массива выборок сигналов цветности, и каждый из двух массивов сигналов цветности может иметь высоту и ширину, равную высоте и ширине массива сигналов яркости.
[129] Например, при дискретизации 4:2:0, выборка сигналов цветности может быть расположена ниже выборки сигналов яркости, соответствующей ей. При дискретизации 4:2:2, выборка сигналов цветности может быть расположена с возможностью перекрывать выборку сигналов яркости, соответствующую ей. При дискретизации 4:4:4, как выборка сигналов яркости, так и выборка сигналов цветности могут быть расположены в перекрывающейся позиции.
[130] Формат сигналов цветности, используемый в оборудовании кодирования и оборудовании декодирования, может быть предварительно определен. Альтернативно, формат сигналов цветности может передаваться в служебных сигналах из оборудования кодирования в оборудование декодирования с возможностью адаптивно использоваться в оборудовании кодирования и оборудовании декодирования. В варианте осуществления, формат сигналов цветности может передаваться в служебных сигналах на основе, по меньшей мере, одного из chroma_format_idc или separate_colour_plane_flag. По меньшей мере, один из chroma_format_idc или separate_colour_plane_flag может передаваться в служебных сигналах через высокоуровневый синтаксис, такой как DPS, VPS, SPS или PPS. Например, chroma_format_idc и separate_colour_plane_flag могут включаться в SPS-cинтаксис, показанный на фиг. 9.
[131] Между тем, фиг. 10 показывает вариант осуществления классификации форматов сигналов цветности с использованием передачи в служебных сигналах chroma_format_idc и separate_colour_plane_flag; chroma_format_idc может представлять собой информацию, указывающую формат сигналов цветности, применяемый к кодированному изображению; separate_colour_plane_flag может указывать то, обрабатывается или нет цветовой массив отдельно в конкретном формате сигналов цветности.
Например, первое значение (например, 0) chroma_format_idc может указывать монохромную дискретизацию. Второе значение (например, 1) chroma_format_idc может указывать дискретизацию 4:2:0. Третье значение (например, 2) chroma_format_idc может указывать дискретизацию 4:2:2. Четвертое значение (например, 3) chroma_format_idc может указывать дискретизацию 4:4:4.
[132] При 4:4:4, может применяться следующее на основе значения separate_colour_plane_flag. Если значение separate_colour_plane_flag составляет первое значение (например, 0), каждый из двух массивов сигналов цветности может иметь высоту и ширину, идентичные высоте и ширине массива сигналов яркости. В этом случае, значение ChromaArrayType, указывающего тип массива выборок сигналов цветности, может задаваться равным chroma_format_idc. Если значение separate_colour_plane_flag составляет второе значение (например, 1), массивы выборок сигналов яркости, Cb-выборок и Cr-выборок могут отдельно обрабатываться и обрабатываться наряду с монохромно дискретизированными кадрами. В этом случае, ChromaArrayType может задаваться равным 0.
[133] Внутреннее прогнозирование для блока сигналов цветности
[134] Когда внутреннее прогнозирование выполняется для текущего блока, прогнозирование относительно блока компонентов сигнала яркости (блока сигналов яркости) текущего блока и прогнозирование относительно блока компонентов сигнала цветности (блока сигналов цветности) могут выполняться. В этом случае, режим внутреннего прогнозирования для блока сигналов цветности может задаваться отдельно от режима внутреннего прогнозирования для блока сигналов яркости.
[135] Например, режим внутреннего прогнозирования для блока сигналов цветности может указываться на основе информации режима внутреннего прогнозирования сигналов цветности, и информация режима внутреннего прогнозирования сигналов цветности может передаваться в служебных сигналах в форме синтаксического элемента intra_chroma_pred_mode. Например, информация режима внутреннего прогнозирования сигналов цветности может представлять одно из планарного режима, DC-режима, вертикального режима, горизонтального режима, извлеченного режима (DM) и режима на основе кросскомпонентной линейной модели (CCLM). Здесь, планарный режим может указывать режим #0 внутреннего прогнозирования, DC-режим может указывать режим #1 внутреннего прогнозирования, вертикальный режим может указывать режим #26 внутреннего прогнозирования, и горизонтальный режим может указывать режим #10 внутреннего прогнозирования. DM также может называться "прямым режимом". CCLM также может называться "линейной моделью (LM)". CCLM-режим может включать в себя, по меньшей мере, одно из L_CCLM, T_CCLM и LT_CCLM.
[136] Между тем, DM и CCLM представляют собой зависимые режимы внутреннего прогнозирования для прогнозирования блока сигналов цветности с использованием информации относительно блока сигналов яркости. DM может представлять режим, в котором режим внутреннего прогнозирования, идентичный режиму внутреннего прогнозирования для компонента сигнала яркости, применяется в качестве режима внутреннего прогнозирования для компонента сигнала цветности. Помимо этого, CCLM может представлять режим внутреннего прогнозирования с использованием, в качестве прогнозных выборок блока сигналов цветности, выборок, извлекаемых посредством субдискретизации восстановленных выборок блока сигналов яркости и последующего применения α и β, которые представляют собой CCLM-параметры, к субдискретизированным выборкам в процессе формирования блока прогнозирования для блока сигналов цветности.
[137] Режим на основе CCLM (кросскомпонентной линейной модели)
[138] Как описано выше, CCLM-режим может применяться к блоку сигналов цветности. CCLM-режим представляет собой режим внутреннего прогнозирования с использованием корреляции между блоком сигналов яркости и блоком сигналов цветности, соответствующим блоку сигналов яркости, и выполняется посредством извлечения линейной модели на основе соседних выборок блока сигналов яркости и соседних выборок блока сигналов цветности. Помимо этого, прогнозная выборка блока сигналов цветности может извлекаться на основе извлеченной линейной модели и восстановленных выборок блока сигналов яркости.
[139] В частности, когда CCLM-режим применяется к текущему блоку сигналов цветности, параметры для линейной модели могут извлекаться на основе соседних выборок, используемых для внутреннего прогнозирования текущего блока сигналов цветности, и соседних выборок, используемых для внутреннего прогнозирования текущего блока сигналов яркости. Например, линейная модель для CCLM может выражаться на основе следующего уравнения.
[140] уравнение 1
[141] ,
[142] где predc(i, j) может обозначать прогнозную выборку координат (i, j) текущего блока сигналов цветности в текущей CU; recL'(i, j) может обозначать восстановленную выборку координат (i, j) текущего блока сигналов яркости в CU. Например, recL'(i, j) может обозначать понижающе дискретизированную восстановленную выборку текущего блока сигналов яркости. Коэффициенты α и β линейной модели могут передаваться в служебных сигналах или извлекаться из соседних выборок.
[143] Общее представление палитрового режима
[144] В дальнейшем в этом документе описывается палитровый режим. Оборудование кодирования согласно варианту осуществления может кодировать изображение с использованием палитрового режима, и оборудование декодирования может декодировать изображение с использованием палитрового режима способом, соответствующим ему. Палитровый режим может называться "режимом палитрового кодирования", "внутренним палитровым режимом", "режимом внутреннего палитрового кодирования" и т.д. Палитровый режим может рассматриваться в качестве типа режима внутреннего кодирования или может рассматриваться в качестве одного из способов внутреннего прогнозирования. Тем не менее, аналогично вышеописанному режим пропуска, отдельное остаточное значение для соответствующего блока может не передаваться в служебных сигналах.
[145] В варианте осуществления, палитровый режим может использоваться для того, чтобы повышать эффективность кодирования при кодировании экранного контента, который представляет собой изображение, сформированное посредством компьютера, включающее в себя существенный объем текста и графики. В общем, локальная область изображения, сформированного в качестве экранного контента, разделяется посредством резких краев и выражается с помощью небольшого числа цветов. Чтобы использовать эту характеристику, в палитровом режиме, выборки для одного блока могут выражаться посредством индексов, указывающих запись цвета таблицы палитр.
[146] Чтобы применять палитровый режим, информация относительно таблицы палитр может передаваться в служебных сигналах. В варианте осуществления, таблица палитр может включать в себя значение индекса, соответствующее каждому цвету. Чтобы передавать в служебных сигналах значение индекса, информация прогнозирования индексов палитр может передаваться в служебных сигналах. Информация прогнозирования индексов палитр может включать в себя значение индекса, по меньшей мере, для части карты индексов палитр. В карте индексов палитр, пикселы видеоданных могут преобразовываться в цветовые индексы таблицы палитр.
[147] Информация прогнозирования индексов палитр может включать в себя информацию значений серий. По меньшей мере, для части карты индексов палитр, информация значений серий может ассоциировать значение серии со значением индекса. Одно значение серии может быть ассоциировано с цветовым индексом с управляющим кодом. Карта индексов палитр может формироваться из информации прогнозирования индексов палитр. Например, по меньшей мере, часть карты индексов палитр может формироваться посредством определения того, следует или нет регулировать значение индекса информации прогнозирования индексов палитр на основе последнего значения индекса.
[148] Текущий блок в текущем кадре может кодироваться или восстанавливаться согласно карте индексов палитр. При применении палитрового режима, пиксельное значение в текущей единице кодирования может выражаться как небольшой набор характерных значений цвета. Этот набор может называться "палитрой". Для пикселов, имеющих значение, близкое к цвету палитры, индекс палитры может передаваться в служебных сигналах. Для пикселов, имеющих значение, которое не принадлежит (находится за пределами) палитре, соответствующие пикселы могут обозначаться посредством символа управляющего кода, и квантованное пиксельное значение может непосредственно передаваться в служебных сигналах. В этом документе, пиксел или пиксельное значение может описываться как выборка.
[149] Чтобы кодировать блок, кодированный в палитровом режиме, оборудование декодирования может декодировать цвет и индекс палитры. Цвет палитры может описываться в таблице палитр и может кодироваться с использованием инструментального средства кодирования таблиц палитр. Флаг управляющего кода может передаваться в служебных сигналах для каждой единицы кодирования. Флаг управляющего кода может указывать то, присутствует или нет символ управляющего кода в текущей единице кодирования. Если символ управляющего кода присутствует, таблица палитр может увеличиваться на 1 единицу (например, единицу индекса), и последний индекс может обозначаться как режим кодирования управляющим кодом. Индексы палитр всех пикселов для одной единицы кодирования могут конфигурировать карту индексов палитр и могут кодироваться с использованием инструментального средства кодирования карт индексов палитр.
[150] Например, чтобы кодировать таблицу палитр, предиктор палитры может поддерживаться. Предиктор палитры может инициализироваться в начальной точке каждого среза. Например, предиктор палитры может сбрасываться до 0. Для каждой записи предиктора палитры, флаг многократного использования, указывающий то, представляет она собой часть текущей палитры или нет, может передаваться в служебных сигналах. Флаг многократного использования может передаваться в служебных сигналах с использованием кодирования по длинам серий значения в 0.
[151] После этого, числа для новых записей палитры могут передаваться в служебных сигналах с использованием экспоненциального кода Голомба нулевого порядка. В завершение, значения компонентов для новой записи палитры могут передаваться в служебных сигналах. После кодирования текущей единицы кодирования, предиктор палитры может обновляться с использованием текущей палитры, и запись из предыдущего предиктора палитры, которая не используется многократно в текущей палитре (до достижения разрешенного максимального размера), может добавляться в конец нового предиктора палитры, и это может называться "заполнением палитры".
[152] Например, чтобы кодировать карту индексов палитр, индексы могут кодироваться с использованием горизонтального или вертикального сканирования. Порядок сканирования может передаваться в служебных сигналах через поток битов с использованием palette_transpose_flag, который представляет собой параметр, указывающий направление сканирования. Например, когда горизонтальное сканирование применяется к индексам сканирования для выборок в текущей единице кодирования, palette_transpose_flag может иметь первое значение (например, 0), а когда вертикальное сканирование применяется, palette_transpose_flag может иметь второе значение (например, 1). Фиг. 11 показывает вариант осуществления горизонтального сканирования и вертикального сканирования согласно варианту осуществления.
[153] Помимо этого, в варианте осуществления, индекс палитры может кодироваться с использованием "индексного" режима и режима "копирования сверху". За исключением случая, в котором режим индекса палитры передается в служебных сигналах для самой верхней строки, когда горизонтальное сканирование используется, случая, в котором режим индекса палитры передается в служебных сигналах для самого левого столбца, когда вертикальное сканирование используется, и случая, в котором непосредственно предыдущий режим представляет собой "копирование сверху", эти два режима могут передаваться в служебных сигналах с использованием одного флага.
[154] В "индексном" режиме, индекс палитры может явно передаваться в служебных сигналах. Для "индексного" режима и режима "копирования сверху", значение серии, указывающее число пикселов, кодированных с использованием идентичного режима, может передаваться в служебных сигналах.
[155] Порядок кодирования для карты индексов может задаваться следующим образом. Во-первых, число значений индекса для единицы кодирования может передаваться в служебных сигналах. Это может выполняться после передачи в служебных сигналах фактического значения индекса для всей единицы кодирования с использованием усеченного двоичного кодирования. Как число индексов, так и значения индекса могут кодироваться в обходном режиме. За счет этого, обходные элементы разрешения, связанные с индексом, могут группироваться. Затем палитровый режим ("индексный" или "копирование сверху") и значение серии могут передаваться в служебных сигналах с использованием способа перемежения.
[156] В завершение, значения с управляющим кодом компонентов, соответствующие выборкам с управляющим кодом для всей единицы кодирования, могут взаимно группироваться и кодироваться в обходном режиме; last_run_type_flag, который представляет собой дополнительный синтаксический элемент, может передаваться в служебных сигналах после передачи в служебных сигналах значения индекса. Посредством использования last_run_type_flag наряду с числом индексов, передача в служебных сигналах значения серии, соответствующего последней серии в блоке, может пропускаться.
[157] В варианте осуществления, тип со структурой в виде сдвоенного дерева, в котором независимая сегментация единиц кодирования выполняется для компонента сигнала яркости и компонента сигнала цветности, может использоваться для I-среза. Палитровый режим может применяться к компоненту сигнала яркости и компоненту сигнала цветности отдельно или вместе. Если сдвоенное дерево не применяется, палитровый режим является применимым ко всем Y-, Cb- и Cr-компонентам.
[158] В варианте осуществления, синтаксический элемент для палитрового режима может кодироваться и передаваться в служебных сигналах, как показано на фиг. 12-19. Фиг. 12-13 показывают последовательный синтаксис в единице кодирования (CU) для палитрового режима, и фиг. 14-19 показывают последовательный синтаксис для палитрового режима.
[159] В дальнейшем в этом документе описывается каждый синтаксический элемент; pred_mode_plt_flag, который представляет собой флаг палитрового режима, может указывать то, применяется или нет палитровый режим к текущей единице кодирования. Например, первое значение (например, 0) pred_mode_plt_flag может указывать то, что палитровый режим не применяется к текущей единице кодирования. Второе значение (например, 1) pred_mode_plt_flag может указывать то, что палитровый режим применяется к текущей единице кодирования. Когда pred_mode_plt_flag не получается из потока битов, значение pred_mode_plt_flag может определяться как составляющее первое значение.
[160] Параметр PredictorPaletteSize[startComp] может указывать размер палитры предикторов для startComp, который представляет собой первый цветовой компонент текущей таблицы палитр.
[161] Параметр PalettePredictorEntryReuseFlags[i] может представлять собой информацию, указывающую то, следует или нет многократно использовать запись. Например, первое значение (например, 0) PalettePredictorEntryReuseFlags[i] может указывать то, что i-ая запись палитры предикторов может указывать то, что i-ая запись палитры предикторов не представляет собой запись текущей палитры, и второе значение (например, 1) может указывать то, что i-ая запись палитры предикторов может многократно использоваться в текущей палитре. Для использования PalettePredictorEntryReuseFlags[i], начальное значение может задаваться равным 0.
[162] Параметр palette_predictor_run может указывать число нулей, присутствующих перед ненулевой записью в массиве PalettePredictorEntryReuseFlags.
[163] Параметр num_signalled_palette_entries может указывать число записей в текущей палитре, явно передаваемой в служебных сигналах для первого цветового компонента startComp текущей таблицы палитр. Когда num_signalled_palette_entries не получается из потока битов, значение num_signalled_palette_entries может определяться равным 0.
[164] Параметр CurrentPaletteSize[startComp] может указывать размер текущей палитры для первого цветового компонента startComp текущей таблицы палитр. Это может вычисляться так, как показано в следующем уравнении. Значение CurrentPaletteSize[startComp] может иметь диапазон от 0 до palette_max_size.
[165] уравнение 2
[166] CurrentPaletteSize[startComp]=NumPredictedPaletteEntries+num_signalled_palette_entries
[167] Параметр new_palette_entries[cIdx][i] может указывать значение записи палитры, передаваемой в служебных сигналах i-ой для цветового компонента cIdx.
[168] Параметр PredictorPaletteEntries[cIdx][i] может указывать i-ый элемент в палитре предикторов для цветового компонента cIdx.
[169] Параметр CurrentPaletteEntries[cIdx][i] может указывать i-ый элемент в текущей палитре для цветового компонента cIdx. PredictorPaletteEntries и CurrentPaletteEntries могут формироваться так, как показано в уравнении по фиг. 20.
[170] Параметр palette_escape_val_present_flag может указывать то, присутствует или нет выборка кодирования управляющим кодом. Например, первое значение (например, 0) palette_escape_val_present_flag может указывать то, что выборка кодирования управляющим кодом присутствует для текущей единицы кодирования, и второе значение (например, 1) palette_escape_val_present_flag может указывать то, что текущая единица кодирования включает в себя, по меньшей мере, одну выборку кодирования управляющим кодом. Когда palette_escape_val_present_flag не получается из потока битов, значение palette_escape_val_present_flag может определяться равным 1.
[171] Параметр MaxPaletteIndex может указывать максимальное доступное значение индекса палитры для текущей единицы кодирования. Значение MaxPaletteIndex может определяться равным CurrentPaletteSize[startComp]+palette_escape_val_present_flag.
[172] Параметр num_palette_indices_minus1 может указывать число индексов палитр, явно или неявно передаваемых в служебных сигналах для текущего блока. Например, значение, полученное посредством суммирования 1 с num_palette_indices_minus1, может указывать число индексов палитр, явно или неявно передаваемых в служебных сигналах для текущего блока. Когда num_palette_indices_minus1 не включается в поток битов, значение num_palette_indices_minus1 может определяться равным 0.
[173] Параметр palette_idx_idc может представлять собой индикатор индекса для таблицы CurrentPaletteEntries палитр. Значение palette_idx_idc может иметь значение от 0 до MaxPaletteIndex для первого индекса соответствующего блока и может иметь значение от 0 до MaxPaletteIndex-1 для оставшихся индексов соответствующего блока. Когда значение palette_idx_idc не получается из потока битов, значение palette_idx_idc может определяться равным 0.
[174] Параметр PaletteIndexIdc[i] может представлять собой массив, сохраняющий значение i-ого palette_idx_idc, передаваемого в служебных сигналах явно или неявно. Значения всех элементов PaletteIndexIdc[i] могут инициализироваться равным 0.
[175] Параметр copy_above_indices_for_final_run_flag может указывать информацию, указывающую то, следует или нет копировать предыдущий индекс для последней серии, первое значение (например, 0) может указывать то, что индекс палитры в последней позиции текущей единицы кодирования явно или неявно передается в служебных сигналах через поток битов, и второе значение (например, 1) может указывать то, что индекс палитры в последней позиции текущей единицы кодирования явно или неявно передается в служебных сигналах через поток битов. Когда copy_above_indices_for_final_run_flag не получается из потока битов, значение copy_above_indices_for_final_run_flag может определяться равным 0.
[176] Параметр palette_transpose_flag может представлять собой информацию, указывающую способ сканирования, используемый для того, чтобы сканировать индекс для пиксела текущей единицы кодирования. Например, первое значение (например, 0) palette_transpose_flag может указывать то, что горизонтальное сканирование применяется для того, чтобы сканировать индекс для пиксела текущей единицы кодирования, и второе значение (например, 1) palette_transpose_flag может указывать то, что вертикальное сканирование применяется для того, чтобы сканировать индекс для пиксела текущей единицы кодирования. Когда palette_transpose_flag не получается из потока битов, значение palette_transpose_flag может определяться равным 0.
[177] Первое значение (например, 0) параметра copy_above_palette_indices_flag может указывать то, что индикатор, указывающий индекс палитры выборки, получается или извлекается из кодированного значения потока битов. Второе значение (например, 1) copy_above_palette_indices_flag может указывать то, что индекс палитры является идентичным индексу палитры соседней выборки. Например, соседняя выборка может представлять собой выборку, расположенную в позиции, идентичной позиции текущей выборки в левом столбце текущей выборки, когда вертикальное сканирование используется в данный момент. Альтернативно, соседняя выборка может представлять собой выборку, расположенную в позиции, идентичной позиции текущей выборки в верхней строке текущей выборки, когда горизонтальное сканирование используется в данный момент.
[178] Первое значение (например, 0) параметра CopyAboveIndicesFlag[xC][yC] может указывать то, что индекс палитры явно или неявно получается из потока битов. Второе значение (например, 1) может указывать то, что индекс палитры формируется посредством копирования индекса палитры левого столбца, когда вертикальное сканирование используется в данный момент, либо посредством копирования индекса палитры верхней строки, когда горизонтальное сканирование используется в данный момент. Здесь, xC и yC представляют собой индикаторы координат, относительно указывающие позицию текущей выборки относительно левой верхней выборки текущего кадра. PaletteIndexMap[xC][yC] может иметь значение от 0 до (MaxPaletteIndex-1).
[179] Параметр PaletteIndexMap[xC][yC] может указывать индекс палитры и, например, указывать индекс для массива, представленного посредством CurrentPaletteEntries. Индексы массивов xC и yC представляют собой индикаторы координат, указывающие координаты текущей выборки относительно левой верхней выборки текущего кадра, как описано выше. PaletteIndexMap[xC][yC] может иметь значение от 0 до (MaxPaletteIndex-1).
[180] Параметр PaletteRun может указывать число последовательных позиций, имеющих идентичный индекс палитры, когда значение CopyAboveIndicesFlag[xC][yC] равно 0. Между тем, когда значение CopyAboveIndicesFlag[xC][yC] равно 1, PaletteRun может указывать число последовательных позиций, имеющих индекс палитры, идентичный индексу палитры в позиции в верхней строке, когда текущее направление сканирования представляет собой горизонтальное сканирование, и индексу палитры в позиции в левом столбце, когда текущее направление сканирования представляет собой вертикальное сканирование.
[181] Параметр PaletteMaxRun может указывать максимальное доступное значение PaletteRun. Значение PaletteMaxRun может быть целым числом, большим 0.
[182] Параметр palette_run_prefix может указывать префиксную часть, используемую для преобразования в двоичную форму PaletteRun.
[183] Параметр palette_run_suffix может указывать суффиксную часть, используемую для преобразования в двоичную форму PaletteRun. Когда palette_run_suffix не получается из потока битов, его значение может определяться равным 0.
[184] Значение PaletteRun может определяться следующим образом. Например, когда значение palette_run_prefix меньше 2, оно может вычисляться следующим образом.
[185] уравнение 3
[186] PaletteRun=palette_run_prefix
[187] В противном случае, когда значение palette_run_prefix равно или больше 2, оно может вычисляться следующим образом.
[188] уравнение 4
[189] PrefixOffset=1<<(palette_run_prefix-1)
[190] PaletteRun=PrefixOffset+palette_run_suffix
[191] Параметр palette_escape_val может указывать квантованное выборочное значение кодирования управляющим кодом для компонента. Параметр PaletteEscapeVal[cIdx][xC][yC] может указывать значение с управляющим кодом выборки со значением PaletteIndexMap[xC][yC] (MaxPaletteIndex-1) и значением palette_escape_val_present_flag в 1. Здесь, cIdx может указывать цветовой компонент. Индикаторы xC и yC массивов могут представлять собой индикаторы позиции, указывающие относительные расстояния позиции текущей выборки от левой верхней выборки текущего кадра, как описано выше.
[192] Передача в служебных сигналах режима прогнозирования сигналов цветности при применении палитрового режима
[193] В дальнейшем в этом документе описывается способ передачи в служебных сигналах информации режима прогнозирования сигналов цветности при применении палитрового режима. В варианте осуществления, прогнозное кодирование сигналов цветности, такое как CCLM, может не применяться к единице кодирования (или блоку кодирования), к которой применяется палитровый режим. Помимо этого, intra_chroma_pred_mode может не передаваться в служебных сигналах для единицы кодирования, к которой применяется палитровый режим.
[194] При определении того, что CCLM доступна для компонента сигнала цветности, флаг включения-выключения для нее может передаваться в служебных сигналах. В варианте осуществления, доступность CCLM может определяться с использованием sps_palette_enabled_flag или sps_plt_enabled_flag, и флаг включения-выключения CCLM может передаваться в служебных сигналах с использованием sps_palette_enabled_flag или sps_plt_enabled_flag.
[195] Между тем, в примере по фиг. 13, передача в служебных сигналах CCLM-информации (например, cclm_mode_flag) не рассматривает то, следует или нет применять палитровый режим единицы кодирования. Например, в примере по фиг. 13, описывается вариант осуществления, в котором передается в служебных сигналах предварительно определенная информация прогнозирования сигналов цветности (например, cclm_mode_flag, intra_chroma_pred_mode), когда палитровый режим не применяется к текущей единице кодирования, либо когда единица кодирования не представляет собой сигнал цветности со структурой в виде сдвоенного дерева.
[196] В этом случае, поскольку предварительно определенная информация прогнозирования сигналов цветности передается в служебных сигналах в кодированном в палитровом режиме блоке в одиночном дереве, необязательная передача в служебных сигналах синтаксиса может возникать. Помимо этого, поскольку предварительно определенная информация прогнозирования сигналов цветности передается в служебных сигналах, даже если компонент сигнала цветности в единице кодирования кодируется в палитровом режиме, внутреннее прогнозирование сигналов цветности согласно CCLM может выполняться, и внутреннее прогнозирование сигналов цветности согласно DM-режиму может выполняться.
[197] Чтобы разрешать вышеописанную проблему, синтаксис для единицы кодирования может модифицироваться так, как показано на фиг. 21. Фиг. 21 показывает синтаксис единицы кодирования, указывающий то, что предварительно определенная информация 2120 внутреннего прогнозирования сигналов цветности получается из потока битов, когда значение pred_mode_plt_flag 2110, который представляет собой параметр, указывающий то, применяется или нет палитровый режим к текущей единице кодирования, составляет первое значение (например, 0), указывающее то, что палитровый режим не применяется. Помимо этого, синтаксис по фиг. 21 указывает то, что предварительно определенная информация 2120 внутреннего прогнозирования сигналов цветности не получается из потока битов, когда значение pred_mode_plt_flag 2110 составляет второе значение (например, 1), указывающее то, что палитровый режим применяется.
[198] Аналогично варианту осуществления по фиг. 21, чтобы передавать в служебных сигналах предварительно определенную информацию прогнозирования сигналов цветности (например, cclm_mode_flag, intra_chroma_pred_mode), предварительно определенная информация прогнозирования сигналов цветности (например, cclm_mode_flag, intra_chroma_pred_mode) может передаваться в служебных сигналах в зависимости от того, применяется или нет палитровый режим к текущей единице кодирования.
[199] В дальнейшем в этом документе описывается передача в служебных сигналах предварительно определенной информации внутреннего прогнозирования сигналов цветности согласно синтаксису по фиг. 21 со ссылкой на фиг. 22. Оборудование кодирования или оборудование декодирования согласно варианту осуществления может определять то, применяется или нет палитровый режим к текущей единице кодирования (например, к блоку кодирования) (S2210). Например, оборудование декодирования может определять то, применяется или нет палитровый режим к текущей единице кодирования согласно значению pred_mode_plt_flag.
[200] Затем, когда палитровый режим применяется к текущей единице кодирования, оборудование кодирования может кодировать соответствующую единицу кодирования в палитровом режиме, и оборудование декодирования может декодировать соответствующую единицу кодирования в палитровом режиме. Следовательно, оборудование кодирования или оборудование декодирования может не передавать в служебных сигналах предварительно определенную информацию прогнозирования сигналов цветности (S2220). Например, оборудование кодирования может не кодировать предварительно определенную информацию прогнозирования сигналов цветности (например, cclm_mode_flag, intra_chroma_pred_mode), и оборудование декодирования может не получать предварительно определенную информацию прогнозирования сигналов цветности из потока битов.
[201] Затем, когда палитровый режим не применяется к текущей единице кодирования, оборудование кодирования или оборудование декодирования может передавать в служебных сигналах предварительно определенную информацию прогнозирования сигналов цветности. В варианте осуществления, оборудование кодирования или оборудование декодирования может определять то, доступен или нет CCLM-режим для текущей единицы кодирования (S2230), передавать в служебных сигналах CCLM-параметр, при его наличии (S2240), и передавать в служебных сигналах параметр intra_chroma_pred_mode, при его отсутствии (S2250).
[202] Для этого, в дальнейшем подробнее описывается этап получения информации прогнозирования сигналов цветности посредством оборудования декодирования со ссылкой на фиг. 23. Когда палитровый режим не применяется к текущей единице кодирования (S2310), оборудование декодирования может определять то, доступен или нет CCLM-режим для текущей единицы кодирования (S2320). Например, параметр sps_cclm_enabled_flag, указывающий доступность CCLM-режима, передаваемого в служебных сигналах в наборе параметров последовательности, имеет первое значение (например, 0), указывающее то, что CCLM-режим не доступен, оборудование декодирования может определять то, что CCLM-режим не доступен для текущей единицы кодирования. Альтернативно, когда sps_cclm_enabled_flag имеет второе значение (например, 1), указывающее то, что CCLM-режим доступен, параметр sh_slice_type типа среза, передаваемый через заголовок среза, указывает то, что тип текущего среза не представляет собой I-срез, или размер компонента сигнала яркости текущего блока меньше 64, оборудование декодирования может определять то, что CCLM-режим доступен для текущей единицы кодирования. Альтернативно, когда sps_cclm_enabled_flag имеет второе значение (например, 1), указывающее то, что CCLM-режим доступен, каждая единица дерева кодирования (CTU), в которой параметр sps_qtbtt_dual_tree_intra_flag, передаваемый в служебных сигналах в наборе параметров последовательности, включается в I-срез, разбивается на блоки компонентов сигнала яркости, имеющие размер 64×64, и оно не указывает то, что каждая CTU становится узлом заголовка сдвоенного дерева, оборудование декодирования может определять то, что CCLM-режим доступен для текущей единицы кодирования.
[203] Когда CCLM-режим доступен, оборудование декодирования может определять то, применяется или нет CCLM к текущей единице кодирования (S2330). Например, оборудование декодирования может получать параметр cclm_mode_flag из потока битов. Параметр cclm_mode_flag может указывать то, следует или нет применять CCLM-режим. Первое значение (например, 0) cclm_mode_flag может указывать то, что CCLM-режим не применяется. Второе значение (например, 1) cclm_mode_flag может указывать то, что CCLM-режим в форме любого из T_CCLM, L_CCLM и LT_CCLM является применимым. Когда значение cclm_mode_flag не получается из потока битов, значение cclm_mode_flag может определяться равным 0.
[204] При применении CCLM-режима (например, cclm_mode_flag==1), оборудование декодирования может получать параметр cclm_mode_idx из потока битов (S2340). Параметр cclm_mode_idx может указывать индекс, указывающий CCLM-режим, используемый для того, чтобы декодировать компонент сигнала цветности текущей единицы кодирования, из T_CCLM, L_CCLM и LT_CCLM.
[205] Между тем, когда CCLM-режим не доступен, или CCLM-режим не применяется (например, cclm_mode_flag==0), оборудование декодирования может получать параметр intra_chroma_pred_mode из потока битов (S2350). Как описано выше, параметр intra_chroma_pred_mode может указывать режим внутреннего прогнозирования, используемый для того, чтобы декодировать компонент сигнала цветности текущей единицы кодирования. Например, intra_chroma_pred_mode может указывать одно из планарного режима, DC-режима, вертикального режима, горизонтального режима и извлеченного режима (DM)).
[206] Способ кодирования
[207] В дальнейшем в этом документе описывается способ выполнения кодирования посредством оборудования кодирования согласно варианту осуществления с использованием вышеописанного способа со ссылкой на фиг. 24. Оборудование кодирования согласно варианту осуществления включает в себя запоминающее устройство и, по меньшей мере, один процессор, и, по меньшей мере, один процессор может осуществлять следующий способ кодирования.
[208] Во-первых, оборудование кодирования может определять текущий блок посредством разбиения изображения (S2410). Например, оборудование кодирования может определять текущий блок посредством разбиения изображения, как описано выше со ссылкой на фиг. 4-6. В процессе разбиения согласно варианту осуществления, информация разбиения изображений может кодироваться, и кодированная информация разбиения изображений может формироваться в качестве потока битов.
[209] Затем, оборудование кодирования может определять режим прогнозирования текущего блока (S2420). После этого, оборудование кодирования может кодировать флаг палитрового режима (например, pred_mode_plt_flag), указывающий то, что режим прогнозирования текущего блока представляет собой палитровый режим, на основе того, представляет режим прогнозирования текущего режима собой или нет палитровый режим (S2430). Кодированный флаг палитрового режима может формироваться в качестве потока битов.
[210] Затем, оборудование кодирования может кодировать информацию кодирования в палитровом режиме, в которой текущий блок кодируется в палитровом режиме, на основе типа дерева текущего блока и того, представляет режим прогнозирования текущего блока собой или нет палитровый режим (S2440). Например, при определении того, что палитровый режим применяется, оборудование кодирования может формировать поток битов посредством формирования информации кодирования в палитровом режиме с использованием синтаксиса palette_coding(), как описано со ссылкой на фиг. 14-19.
[211] Между тем, кодирование информации кодирования в палитровом режиме текущего блока может включать в себя кодирование информации кодирования в палитровом режиме компонента сигнала яркости текущего блока. Например, когда тип дерева текущего блока представляет собой тип одиночного дерева или тип сигналов яркости со структурой в виде сдвоенного дерева, и палитровый режим применяется для текущего блока, информация для прогнозирования в палитровом режиме компонента сигнала яркости текущего блока может кодироваться, и поток битов может формироваться с использованием кодированной информации.
[212] В этом случае, информация кодирования в палитровом режиме компонента сигнала яркости текущего блока может кодироваться на основе размера блока компонентов сигнала яркости текущего блока. Например, аналогично варианту осуществления по фиг. 13, оборудование кодирования может формировать информацию кодирования в палитровом режиме в качестве потока битов согласно синтаксису palette_coding(), заданному на основе ширины (например, cbWidth) блока компонентов сигнала яркости текущего блока и высоты (например, cbHeight) блока компонентов сигнала яркости текущего блока.
[213] Помимо этого, кодирование информации кодирования в палитровом режиме текущего блока дополнительно может включать в себя кодирование информации кодирования в палитровом режиме компонента сигнала цветности текущего блока. Например, когда палитровый режим применяется для текущего блока, и тип дерева текущего блока представляет собой тип сигналов цветности со структурой в виде сдвоенного дерева, информация для прогнозирования в палитровом режиме компонента сигнала цветности текущего блока может кодироваться, и поток битов может формироваться с использованием кодированной информации.
[214] В этом случае, информация кодирования в палитровом режиме компонента сигнала цветности текущего блока может кодироваться на основе размера блока компонентов сигнала цветности текущего блока. Например, аналогично варианту осуществления по фиг. 13, оборудование кодирования может формировать информацию кодирования в палитровом режиме в качестве потока битов, согласно синтаксису palette_coding(), заданному на основе ширины (например, cbWidth/subWidthC) блока компонентов сигнала цветности текущего блока и высоты (например, cbHeight/subHeightC) блока компонентов сигнала цветности текущего блока. Здесь, subWidthC и subHeightC могут представлять собой соотношения высоты и ширины блока компонентов сигнала яркости относительно блока компонентов сигнала цветности. В варианте осуществления, subWidthC и subHeightC могут определяться на основе chroma_format_idc и separate_cour_plane_flag, как показано на фиг. 10.
[215] Затем, когда режим прогнозирования текущего блока не представляет собой палитровый режим, оборудование кодирования может кодировать информацию прогнозирования компонентов сигналов цветности текущего блока (S2450). Информация прогнозирования компонентов сигналов цветности может представлять собой информацию (например, cclm_mode_flag, cclm_mode_idx) для прогнозирования на основе CCLM (кросскомпонентной линейной модели) или информацию внутреннего прогнозирования компонентов сигналов цветности (например, intra_chroma_pred_mode).
[216] Между тем, когда палитровый режим применяется к текущему блоку, оборудование кодирования может не кодировать информацию прогнозирования компонентов сигналов цветности.
[217] Более конкретно, информация относительно CCLM-прогнозирования может включать в себя CCLM-флаг (например, cclm_mode_flag), указывающий то, выполняется или нет CCLM-прогнозирование, и индекс CCLM-режима (например, cclm_mode_idx), указывающий режим CCLM-прогнозирования. CCLM-флаг может кодироваться и формироваться в качестве потока битов, когда CCLM-прогнозирование доступно для текущего блока. Индекс CCLM-режима может кодироваться и формироваться в качестве потока битов, когда CCLM-флаг указывает то, что CCLM-прогнозирование выполняется.
[218] Между тем, когда CCLM-флаг указывает то, что CCLM-прогнозирование не выполняется, информация внутреннего прогнозирования компонентов сигналов цветности (например, intra_chroma_pred_mode) может кодироваться и формироваться в качестве потока битов.
[219] Способ декодирования
[220] В дальнейшем в этом документе описывается способ выполнения декодирования посредством оборудования декодирования согласно варианту осуществления с использованием вышеописанного способа со ссылкой на фиг. 25. Оборудование декодирования согласно варианту осуществления может включать в себя запоминающее устройство и, по меньшей мере, один процессор, и, по меньшей мере, один процессор может осуществлять следующий способ декодирования.
[221] Во-первых, оборудование декодирования может определять текущий блок посредством разбиения изображения (S2510). Например, оборудование декодирования может определять текущий блок посредством разбиения изображения, как описано выше со ссылкой на фиг. 4-6. В процессе разбиения согласно варианту осуществления, может использоваться информация разбиения изображений, полученная из потока битов.
[222] Затем, оборудование декодирования может идентифицировать то, применяется или нет палитровый режим для текущего блока, на основе флага палитрового режима (например, pred_mode_plt_flag), полученного из потока битов (S2520).
[223] После этого, оборудование декодирования может получать информацию кодирования в палитровом режиме текущего блока из потока битов, на основе типа дерева текущего блока и того, применяется или нет палитровый режим для текущего блока (S2530). Например, при определении того, что палитровый режим применяется, оборудование декодирования может получать информацию кодирования в палитровом режиме из потока битов с использованием синтаксиса palette_coding(), как описано со ссылкой на фиг. 14-19.
[224] Между тем, получение информации кодирования в палитровом режиме текущего блока может включать в себя получение информации кодирования в палитровом режиме компонента сигнала яркости текущего блока. Например, когда тип дерева текущего блока представляет собой тип одиночного дерева или тип сигналов яркости со структурой в виде сдвоенного дерева, и палитровый режим применяется для текущего блока, информация для прогнозирования в палитровом режиме компонента сигнала яркости текущего блока может получаться из потока битов.
[225] В этом случае, информация кодирования в палитровом режиме компонента сигнала яркости текущего блока может получаться на основе размера блока компонентов сигнала яркости текущего блока. Например, аналогично варианту осуществления по фиг. 13, синтаксис palette_coding() может выполняться на основе ширины (например, cbWidth) блока компонентов сигнала яркости текущего блока и высоты (например, cbHeight) блока компонентов сигнала яркости текущего блока.
[226] Между тем, получение информации кодирования в палитровом режиме текущего блока дополнительно может включать в себя получение информации кодирования в палитровом режиме компонента сигнала цветности текущего блока. Например, когда палитровый режим применяется для текущего блока, и тип дерева текущего блока представляет собой тип сигналов цветности со структурой в виде сдвоенного дерева, информация для прогнозирования в палитровом режиме компонента сигнала цветности текущего блока может получаться из потока битов.
[227] В этом случае, информация кодирования в палитровом режиме компонента сигнала цветности текущего блока может получаться на основе размера блока компонентов сигнала цветности текущего блока. Например, аналогично варианту осуществления по фиг. 13, синтаксис palette_coding() может выполняться на основе ширины (например, cbWidth/subWidthC) блока компонентов сигнала цветности текущего блока и высоты (например, cbHeight/subHeightC) блока компонентов сигнала цветности текущего блока. Здесь, subWidthC и subHeightC могут представлять собой соотношения высоты и ширины блока компонентов сигнала яркости относительно блока компонентов сигнала цветности. В варианте осуществления, subWidthC и subHeightC могут определяться на основе chroma_format_idc и separate_colour_plane_flag, как показано на фиг. 10.
[228] Затем, когда палитровый режим не применяется для текущего блока, оборудование декодирования может получать информацию прогнозирования компонентов сигналов цветности текущего блока из потока битов (S2540). Например, когда палитровый режим не применяется, оборудование декодирования может получать информацию CCLM-прогнозирования (например, cclm_mode_flag, cclm_mode_idx) или информацию внутреннего прогнозирования компонентов сигналов цветности (например, intra_chroma_pred_mode) из потока битов, как описано со ссылкой на фиг. 23. Между тем, когда палитровый режим не применяется для текущего блока, информация прогнозирования компонентов сигналов цветности может не получаться из потока битов.
[229] Более конкретно, информация для CCLM-прогнозирования может включать в себя CCLM-флаг (например, cclm_mode_flag), указывающий то, выполняется или нет CCLM-прогнозирование, и индекс CCLM-режима (например, cclm_mode_idx), указывающий режим CCLM-прогнозирования. CCLM-флаг может получаться из потока битов, когда CCLM-прогнозирование доступно для текущего блока. Индекс CCLM-режима может получаться из потока битов, когда CCLM-флаг указывает то, что CCLM-прогнозирование выполняется.
[230] Между тем, когда CCLM-флаг указывает то, что CCLM-прогнозирование не выполняется, информация внутреннего прогнозирования компонентов сигналов цветности (например, intra_chroma_pred_mode) может получаться из потока битов.
[231] Вариант применения
[232] Хотя примерные способы настоящего раскрытия сущности, описанного выше, представляются как последовательность операций для ясности описания, это не имеет намерение ограничивать порядок, в котором выполняются этапы, и этапы могут выполняться одновременно или в другом порядке при необходимости. Чтобы реализовывать способ согласно настоящему раскрытию сущности, описанные этапы дополнительно могут включать в себя другие этапы, могут включать в себя оставшиеся этапы, за исключением некоторых этапов, либо могут включать в себя другие дополнительные этапы, за исключением некоторых этапов.
[233] В настоящем раскрытии сущности, оборудование кодирования изображений или оборудование декодирования изображений, которое выполняет предварительно определенную операцию (этап), может выполнять операцию (этап) подтверждения условия или ситуации выполнения соответствующей операции (этап). Например, если описывается то, что предварительно определенная операция выполняется, когда предварительно определенное условие удовлетворяется, оборудование кодирования изображений или оборудование декодирования изображений может выполнять предварительно определенную операцию после определения того, удовлетворяется или нет предварительно определенное условие.
[234] Различные варианты осуществления настоящего раскрытия сущности не представляют собой список всех возможных комбинаций и имеют намерение описывать характерные аспекты настоящего раскрытия сущности, и вопросы, описанные в различных вариантах осуществления, могут применяться независимо либо в комбинации двух или более из них.
[235] Различные варианты осуществления настоящего раскрытия сущности могут реализовываться в аппаратных средствах, микропрограммном обеспечении, программном обеспечении либо в комбинации вышеозначенного. В случае реализации настоящего раскрытия сущности посредством аппаратных средств, настоящее раскрытие сущности может реализовываться с помощью специализированных интегральных схем (ASIC), процессоров цифровых сигналов (DSP), устройств обработки цифровых сигналов (DSPD), программируемых логических устройств (PLD), программируемых пользователем вентильных матриц (FPGA), общих процессоров, контроллеров, микроконтроллеров, микропроцессоров и т.д.
[236] Помимо этого, оборудование декодирования изображений и оборудование кодирования изображений, к которым применяются варианты осуществления настоящего раскрытия сущности, могут включаться в мультимедийное широковещательное приемо-передающее устройство, терминал мобильной связи, видеоустройство системы домашнего кинотеатра, видеоустройство системы цифрового кинотеатра, камеру наблюдения, устройство проведения видеочатов, устройство связи в реальном времени, к примеру, для видеосвязи, мобильное устройство потоковой передачи, носитель хранения данных, записывающую видеокамеру, устройство предоставления услуг на основе технологии "видео по запросу" (VoD), устройство на основе OTT-видео (видео поверх сетей), устройство предоставления услуг потоковой передачи по Интернету, трехмерное видеоустройство, видеоустройство системы видеотелефонии, медицинское видеоустройство и т.п. и могут использоваться для того, чтобы обрабатывать видеосигналы или сигналы данных. Например, OTT-видеоустройства могут включать в себя игровую консоль, Blu-Ray-проигрыватель, телевизор с доступом в Интернет, систему домашнего кинотеатра, смартфон, планшетный PC, цифровое записывающее видеоустройство (DVR) и т.п.
[237] Фиг. 26 является видом, показывающим систему потоковой передачи контента, к которой является применимым вариант осуществления настоящего раскрытия сущности.
[238] Ссылаясь на фиг. 26, система потоковой передачи контента, к которой применяется вариант(ы) осуществления настоящего документа, может включать в себя, главным образом, сервер кодирования, потоковый сервер, веб-сервер, хранилище мультимедиа, пользовательское устройство и устройство ввода мультимедиа.
[239] Сервер кодирования сжимает контент, вводимый из устройств ввода мультимедиа, таких как смартфон, камера, записывающая видеокамера и т.д., в цифровые данные для того, чтобы формировать поток битов, и передает поток битов на потоковый сервер. В качестве другого примера, когда устройства ввода мультимедиа, такие как смартфоны, камеры, записывающие видеокамеры и т.д., непосредственно формируют поток битов, сервер кодирования может опускаться.
[240] Поток битов может формироваться посредством способа кодирования изображений или оборудования кодирования изображений, к которому применяется вариант осуществления настоящего раскрытия сущности, и потоковый сервер может временно сохранять поток битов в процессе передачи или приема потока битов.
[241] Потоковый сервер передает мультимедийные данные в пользовательское устройство на основе запроса пользователя через веб-сервер, и веб-сервер служит в качестве среды для информирования пользователя в отношении услуги. Когда пользователь запрашивает требуемую услугу из веб-сервера, веб-сервер может доставлять ее на потоковый сервер, и потоковый сервер может передавать мультимедийные данные пользователю. В этом случае, система потоковой передачи контента может включать в себя отдельный сервер управления. В этом случае, сервер управления служит для того, чтобы управлять командой/ответом между устройствами в системе потоковой передачи контента.
[242] Потоковый сервер может принимать контент из хранилища мультимедиа и/или сервера кодирования. Например, когда контент принимается из сервера кодирования, контент может приниматься в реальном времени. В этом случае, чтобы предоставлять плавную услугу потоковой передачи, потоковый сервер может сохранять поток битов в течение предварительно определенного времени.
[243] Примеры пользовательского устройства могут включать в себя мобильный телефон, смартфон, переносной компьютер, цифровой широковещательный терминал, персональное цифровое устройство (PDA), портативный мультимедийный проигрыватель (PMP), навигационное устройство, грифельный планшетный PC, планшетные PC, ультрабуки, носимые устройства (например, интеллектуальные часы, интеллектуальные очки, наголовные дисплеи), цифровые телевизоры, настольные компьютеры, систему цифровых информационных табло и т.п.
[244] Каждый сервер в системе потоковой передачи контента может работать в качестве распределенного сервера, причем в этом случае данные, принимаемые из каждого сервера, могут распределяться.
[245] Объем раскрытия сущности включает в себя программное обеспечение или машиноисполняемые команды (например, операционную систему, приложение, микропрограммное обеспечение, программу и т.д.) для обеспечения возможности выполнения операций согласно способам различных вариантов осуществления в оборудовании или компьютере, энергонезависимый машиночитаемый носитель, имеющий такое программное обеспечение или команды, сохраненные и выполняемые в оборудовании или компьютере.
Промышленная применимость
[246] Варианты осуществления настоящего раскрытия сущности могут использоваться для того, чтобы кодировать или декодировать изображение.
Claims (35)
1. Способ декодирования изображений, осуществляемый посредством оборудования декодирования изображений, при этом способ декодирования изображений содержит этапы, на которых:
определяют текущий блок посредством разбиения изображения;
идентифицируют то, применяется или нет палитровый режим для текущего блока, на основе флага палитрового режима, полученного из потока битов;
получают информацию кодирования в палитровом режиме текущего блока из потока битов на основе типа дерева текущего блока и того, применяется или нет палитровый режим для текущего блока; и
получают информацию прогнозирования компонентов сигналов цветности текущего блока из потока битов на основе палитрового режима, не применяемого для текущего блока,
при этом информация прогнозирования компонентов сигналов цветности является информацией для прогнозирования на основе кросскомпонентной линейной модели (CCLM) или информацией внутреннего прогнозирования компонентов сигналов цветности.
2. Способ декодирования изображений по п. 1, в котором информацию прогнозирования компонентов сигналов цветности не получают из потока битов в зависимости от палитрового режима, применяемого для текущего блока.
3. Способ декодирования изображений по п. 1, в котором получение информации кодирования в палитровом режиме текущего блока содержит получение информации кодирования в палитровом режиме компонента сигнала яркости текущего блока, и
при этом информацию для прогнозирования в палитровом режиме компонента сигнала яркости текущего блока получают из потока битов на основе типа дерева текущего блока, представляющего собой тип одиночного дерева или тип сигналов яркости со структурой в виде сдвоенного дерева, и палитрового режима, применяемого для текущего блока.
4. Способ декодирования изображений по п. 3, в котором получение информации кодирования в палитровом режиме компонента сигнала яркости выполняют на основе размера блока компонентов сигнала яркости текущего блока.
5. Способ декодирования изображений по п. 1, в котором получение информации кодирования в палитровом режиме текущего блока содержит этап, на котором получают информацию кодирования в палитровом режиме компонента сигнала цветности текущего блока,
при этом информацию для прогнозирования в палитровом режиме компонента сигнала цветности текущего блока получают из потока битов на основе палитрового режима, применяемого для текущего блока, и типа дерева текущего блока, представляющего собой тип сигналов цветности со структурой в виде сдвоенного дерева.
6. Способ декодирования изображений по п. 5, в котором получение информации кодирования в палитровом режиме компонента сигнала цветности текущего блока выполняют на основе размера блока компонентов сигнала цветности текущего блока.
7. Способ декодирования изображений по п. 1, в котором информация для CCLM-прогнозирования содержит CCLM-флаг, указывающий то, выполняется или нет CCLM-прогнозирование, и индекс CCLM-режима, указывающий режим CCLM-прогнозирования,
при этом CCLM-флаг получают из потока битов на основе CCLM-прогнозирования, доступного для текущего блока,
при этом индекс CCLM-режима получают из потока битов на основе CCLM-флага, указывающего то, что CCLM-прогнозирование выполняется.
8. Способ декодирования изображений по п. 7, в котором информация внутреннего прогнозирования компонентов сигналов цветности получают из потока битов на основе CCLM-флага, указывающего то, что CCLM-прогнозирование не выполняется.
9. Способ кодирования изображений, осуществляемый посредством оборудования кодирования изображений, при этом способ кодирования изображений содержит этапы, на которых:
определяют текущий блок посредством разбиения изображения;
определяют режим прогнозирования текущего блока;
кодируют флаг палитрового режима, указывающий то, представляет режим прогнозирования текущего блока собой или нет палитровый режим, на основе того, представляет режим прогнозирования текущего блока собой или нет палитровый режим;
кодируют информацию кодирования в палитровом режиме, в котором текущий блок кодируется в палитровом режиме на основе типа дерева текущего блока и того, представляет режим прогнозирования текущего блока собой или нет палитровый режим;
кодируют информацию прогнозирования компонентов сигналов цветности текущего блока на основе режима прогнозирования текущего блока, не представляющего собой палитровый режим,
при этом информация прогнозирования компонентов сигналов цветности является информацией для прогнозирования на основе кросскомпонентной линейной модели (CCLM) или информацией внутреннего прогнозирования компонентов сигналов цветности.
10. Способ кодирования изображений по п. 9, в котором информацию прогнозирования компонентов сигналов цветности не кодируют в зависимости от палитрового режима, применяемого для текущего блока.
11. Способ кодирования изображений по п. 9, в котором информация кодирования в палитровом режиме, в котором компонент сигнала цветности текущего блока кодируется в палитровом режиме, кодируется на основе палитрового режима, применяемого для текущего блока, и типа дерева текущего блока, представляющего собой тип сигналов цветности со структурой в виде сдвоенного дерева,
при этом информация для прогнозирования на основе кросскомпонентной линейной модели (CCLM) или информация внутреннего прогнозирования компонентов сигналов цветности кодируется как информация прогнозирования компонентов сигналов цветности на основе палитрового режима, не применяемого для текущего блока.
12. Оборудование для декодирования изображений, содержащее:
запоминающее устройство;
по меньшей мере один процессор, соединенный с запоминающим устройством, при этом по меньшей мере один процессор выполнен с возможностью:
определять текущий блок посредством разбиения изображения;
идентифицировать то, применяется или нет палитровый режим для текущего блока, на основе флага палитрового режима, полученного из потока битов;
получать информацию кодирования в палитровом режиме текущего блока из потока битов на основе типа дерева текущего блока и того, применяется или нет палитровый режим для текущего блока; и
получать информацию прогнозирования компонентов сигналов цветности текущего блока из потока битов на основе палитрового режима, не применяемого для текущего блока,
при этом информация прогнозирования компонентов сигналов цветности является информацией для прогнозирования на основе кросскомпонентной линейной модели (CCLM) или информацией внутреннего прогнозирования компонентов сигналов цветности.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US62/876,766 | 2019-07-21 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2022104196A Division RU2804732C2 (ru) | 2019-07-21 | 2020-07-21 | Способ и устройство кодирования/декодирования изображений для передачи в служебных сигналах информации прогнозирования компонентов сигналов цветности согласно тому, является или нет палитровый режим применимым, и способ для передачи потока битов |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2023125007A RU2023125007A (ru) | 2023-10-12 |
RU2817300C2 true RU2817300C2 (ru) | 2024-04-12 |
Family
ID=
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2336663C1 (ru) * | 2004-12-30 | 2008-10-20 | Самсунг Электроникс Ко., Лтд. | Способ и устройство кодирования и декодирования цветных изображений с помощью корреляции между составляющими сигнала цветности |
WO2016197314A1 (en) * | 2015-06-09 | 2016-12-15 | Microsoft Technology Licensing, Llc | Robust encoding/decoding of escape-coded pixels in palette mode |
EA201791616A1 (ru) * | 2015-01-29 | 2017-11-30 | Квэлкомм Инкорпорейтед | Кодирование в режиме палитры для кодирования видеоданных |
WO2017206805A1 (en) * | 2016-05-28 | 2017-12-07 | Mediatek Inc. | Method and apparatus of palette mode coding for colour video data |
RU2017142953A (ru) * | 2015-06-12 | 2019-07-12 | Квэлкомм Инкорпорейтед | Группирование бинов обхода палитр для видеокодирования |
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2336663C1 (ru) * | 2004-12-30 | 2008-10-20 | Самсунг Электроникс Ко., Лтд. | Способ и устройство кодирования и декодирования цветных изображений с помощью корреляции между составляющими сигнала цветности |
EA201791616A1 (ru) * | 2015-01-29 | 2017-11-30 | Квэлкомм Инкорпорейтед | Кодирование в режиме палитры для кодирования видеоданных |
WO2016197314A1 (en) * | 2015-06-09 | 2016-12-15 | Microsoft Technology Licensing, Llc | Robust encoding/decoding of escape-coded pixels in palette mode |
RU2017142953A (ru) * | 2015-06-12 | 2019-07-12 | Квэлкомм Инкорпорейтед | Группирование бинов обхода палитр для видеокодирования |
WO2017206805A1 (en) * | 2016-05-28 | 2017-12-07 | Mediatek Inc. | Method and apparatus of palette mode coding for colour video data |
Non-Patent Citations (2)
Title |
---|
Yung-Hsuan Chao et al. CE15-2: Palette mode of HEVC SCC, Joint Video Experts Team (JVET) of ITU-T SG 16 WP3 and ISO/IEC JTC 1/SC 29/WG 11, JVET-L0336-v4, 12th Meeting: Macao, 3-12 Oct. 2018. Edouard Franсois et al. AHG16/non-CE3: Study of CCLM restrictions in case of separate luma/chroma tree, Joint Video Experts Team (JVET) of ITU-T SG 16 WP3 and ISO/IEC JTC 1/SC 29/WG 11, JVET-N0390r1, 14th Meeting: Geneva, 19-27 March 2019. * |
Yung-Hsuan Chao et al. CE8-2.1: Palette mode in HEVC, Joint Video Experts Team (JVET) of ITU-T SG 16 WP3 and ISO/IEC JTC 1/SC 29/WG 11, JVET-O0119, 15th Meeting: Gothenburg, 3-12 July 2019. * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2020318306B2 (en) | Image encoding/decoding method and device for signaling chroma component prediction information according to whether palette mode is applicable, and method for transmitting bitstream | |
JP7358622B2 (ja) | ルマサンプル位置を参照してクロマブロックの予測モードを決定する画像符号化/復号化方法、装置、及びビットストリームを伝送する方法 | |
US12003740B2 (en) | Image encoding/decoding method and device using palette mode, and method for transmitting bitstream | |
JP2023158204A (ja) | 変換スキップ及びパレットコーディング関連情報のシグナリングベースの映像又はビデオコーディング | |
US20240267549A1 (en) | High level syntax signaling method and device for image/video coding | |
JP2023175009A (ja) | ピクチャ分割情報をシグナリングする方法及び装置 | |
RU2817300C2 (ru) | Способ и устройство кодирования/декодирования изображений для передачи в служебных сигналах информации прогнозирования компонентов сигналов цветности согласно тому, является или нет палитровый режим применимым, и способ для передачи потока битов | |
RU2804732C2 (ru) | Способ и устройство кодирования/декодирования изображений для передачи в служебных сигналах информации прогнозирования компонентов сигналов цветности согласно тому, является или нет палитровый режим применимым, и способ для передачи потока битов | |
RU2809033C2 (ru) | Способ и оборудование кодирования/декодирования изображений с использованием матрицы квантования и способ для передачи потока битов | |
RU2811759C2 (ru) | Способ и устройство кодирования/декодирования изображений с использованием адаптивного преобразования цветов и способ для передачи потока битов | |
RU2795473C1 (ru) | Способ и оборудование кодирования/декодирования изображений с использованием матрицы квантования и способ для передачи потока битов | |
RU2809518C2 (ru) | Способ и устройство кодирования/декодирования изображений с использованием фильтрации и способ для передачи потока битов | |
RU2820843C1 (ru) | Способ кодирования изображений на основе bdpcm и устройство для этого | |
RU2820148C2 (ru) | Оборудование кодирования и декодирования изображений и оборудование для передачи данных для изображения | |
RU2812196C2 (ru) | Способ кодирования/декодирования изображений, оборудование и способ для передачи потока битов с использованием задания максимального размера преобразования блока сигналов цветности | |
RU2792223C1 (ru) | Кодирование информации относительно набора ядер преобразования | |
RU2815430C2 (ru) | Способ и оборудование кодирования/декодирования изображений для выполнения внутриконтурной фильтрации на основе структуры субкадра и способ для передачи потока битов | |
RU2815810C2 (ru) | Кодирование информации относительно набора ядер преобразования | |
RU2806813C2 (ru) | Способ кодирования изображений на основе bdpcm и устройство для этого | |
RU2805218C2 (ru) | Способ кодирования изображений на основе преобразования и устройство для этого | |
RU2785731C1 (ru) | Способ и оборудование кодирования/декодирования изображений и способ передачи потока битов | |
RU2811456C2 (ru) | Способ и оборудование кодирования/декодирования изображений и способ передачи потока битов | |
RU2808004C2 (ru) | Способ и устройство внутреннего прогнозирования на основе внутренних субсегментов в системе кодирования изображений | |
AU2024201463A1 (en) | Image encoding/decoding method and apparatus for performing prediction on basis of reconfigured prediction mode type of leaf node, and bitstream transmission method | |
KR20220161427A (ko) | 픽처 분할 정보 및 서브픽처 정보에 기반하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체 |