СПОСОБ КОДИРОВАНИЯ ТЕКУЩЕГО БЛОКА ПЕРВОГО КОМПОНЕНТА ИЗОБРАЖЕНИЯ ОТНОСИТЕЛЬНО КОНТРОЛЬНОГО БЛОКА ПО МЕНЬШЕЙ МЕРЕ ОДНОГО ВТОРОГО КОМПОНЕНТА ИЗОБРАЖЕНИЯ, УСТРОЙСТВО КОДИРОВАНИЯ И СООТВЕТСТВУЮЩАЯ КОМПЬЮТЕРНАЯ ПРОГРАММА
METHOD FOR ENCODING CURRENT BLOCK OF FIRST IMAGE COMPONENT RELATIVE TO REFERENCE BLOCK OF AT LEAST ONE SECOND IMAGE COMPONENT, ENCODING DEVICE AND CORRESPONDING COMPUTER PROGRAM

Область техники
Настоящее изобретение относится в целом к области обработки изображений, а точнее к кодированию цифровых изображений и последовательностей цифровых изображений.
Таким образом, изобретение может применяться, в частности, для кодирования видеосигнала, реализуемого в существующих видеокодерах в будущем (ITU-T/ISO MPEG HEVC) и их программные расширениях.
Предпосылки к созданию изобретения
N
1
2
i
L
i
Стандарт HEVC, разработанный и описанный в документе «В. Bross, W. - J. Han, J. - R. Ohm, G.J. Sullivan, and T. Wiegand, "High efficiency video coding (HEVC) text specification draft 6," document JCTVC-H1003 of JCT-VC, San Jose CA, USA, February 2012", похож на предшествующий стандарт Н.264 тем, что в нем используется блок разбиения видеопоследовательности. Однако стандарт HEVC отличается от стандарта Н.264 тем, что разбиение реализуется в соответствии с древовидной структурой, которая называется «дерево квадрантов». С этой целью, как показано на фиг. 1А, текущее изображение I разбивается первый раз на множество квадратных блоков CTB, СТВ, …, CTB, …, CTB размером 64×64 пикселя (1≤i≤L). Для данного блока CTB, этот блок считается корнем дерева кодирования, в котором:
i
i
- первый уровень листьев под корнем соответствует первому уровню глубины разбиения для блока CTB, для которого блок CTB разбивали первый раз на множество блоков кодирования,
i
i
- второй уровень листьев под первым уровнем листьев соответствует второму уровню глубины разбиения для блока CTB, для которого разбитый первый раз блок CTB разбивали второй раз на множество блоков кодирования, …
i
i
- … k-й уровень листьев под k-1-м уровнем листьев соответствует k-му уровню глубины разбиения для блока CTB, для которого блок CTB, разбитый k-1 раз, последний раз разбивали на множество блоков кодирования.
i
В HEVC-совместимом кодирующем устройстве цикл разбиения блока CTB выполняется, пока не будет достигнут заданный уровень глубины разбиения.
i
1
2
j
М
По завершении вышеупомянутых последовательных разбиений блока CTB, как показано на фиг. 1А, последний, в конечном итоге, разбивают на множество блоков кодирования, обозначенных CB, СВ, …, CB, …, СВ, где l≤j≤M.
1
2
j
М
Размер указанных блоков кодирования может выбираться адаптивно при помощи разбиения блоков согласно дереву, относящемуся к типу «дерева квадрантов», в котором листья указанного дерева соответственно представляют блоки кодирования CB, СВ, …, CB, …, СВ, полученные на различных уровнях глубины разбиения.
j
j
j
1
2
t
Р
t
Согласно фиг. 1А, для данного блока CB считается, что этот блок составляет корень предсказания и дерево разложения для указанного блока, относящееся, например, к типу дискретного косинусного преобразования (DCT). Дерево предсказания для данного блока CB соответствует пути, которым блок CB разбивают на множество блоков РВ, РВ, …, PB, …, РВ, (1≤t≤P), которые называются блоками предсказания. Для рассматриваемого блока PB предсказания параметры предсказания, такие, например, как режим кодирования, векторы движения и т.д., указываются в узле предсказания.
j
j
Для рассматриваемого блока CB кодирования существуют различные режимы разбиения. Например, на фиг. 1А показаны различные режимы разбиения рассматриваемого блока CB кодирования в случае INTER-предсказания для последнего. Существуют четыре указанных режима разбиения:
j
1
- режим PART_2Nx2N соответствует отсутствию разбиения рассматриваемого блока CB кодирования, который, таким образом, соответствует единичному блоку PB предсказания,
j
1
2
- режим PART_2NxN соответствует горизонтальному разбиению рассматриваемого блока CB кодирования на два прямоугольных блока PB и РВ предсказания,
j
1
2
- режим PART_Nx2N соответствует вертикальному разбиению рассматриваемого блока CB кодирования на два прямоугольных блока PB и РВ предсказания,
j
1
2
3
4
- режим PART_NxN соответствует разбиению рассматриваемого блока CB кодирования на четыре квадратных блока PB, РВ, РВ, РВ предсказания одинакового размера.
j
1
2
v
Q
1
2
v
Q
После кодирования с предсказанием рассматриваемого блока CB кодирования последний может быть снова разбит на множество меньших блоков TB, ТВ, …, TB, …, TB(1≤v≤Q), которые называются блоками преобразований. Такое разбиение выполняют согласно дереву, которое принадлежит к типу «дерева квадрантов» и называется «разностным деревом квадрантов», причем листья указанного дерева соответственно представляют блоки TB, ТВ, …, TB, …, TB кодирования, полученные на различных уровнях глубины разбиения.
j
2
3
j
1
2
3
4
5
6
7
8
Фиг. 1А показывает иллюстративное разбиение блока CB кодирования, который был предсказан при помощи разбиения PART_NxN. В показанном примере каждый из блоков РВ и РВ блока CB кодирования, например, разбивается на четыре меньших квадратных блока одинакового размера, TB, ТВ, ТВ, ТВ и ТВ, ТВ, ТВ, TB, соответственно. Такое разбиение представлено на фиг. 1А пунктирными линиями.
i
Фиг. 1В показывает иллюстративное разбиение рассматриваемого блока CTB, который был получен после кодирования с предсказанием и кодирования с преобразованием указанного блока, а также соответствующее дерево разбиения. В показанном примере:
i
- блок CTB, который считается корнем дерева кодирования, представлен сплошной жирной линией,
1
16
- блоки кодирования CB-СВ, которые составляют, с одной стороны, листья дерева кодирования, а с другой стороны, корни дерева, принадлежащего к типу «разностного дерева квадрантов», представлены сплошными тонкими линиями,
1
16
- блоки преобразований TB-ТВ, которые составляют листья дерева, принадлежащего к типу «разностного дерева квадрантов», представлены пунктирными линиями.
Составленная таким образом древовидная структура имеет:
1
4
- первый уровень глубины NP1 разбиения, который содержит только блоки кодирования, такие как блоки CB-СВ,
- второй уровень глубины NP2 разбиения, который содержит:
5
8
1
9
12
4
- блоки кодирования, такие как блоки СВ-CB, полученные по завершении разбиения блока CB, а также блоки СВ-СВ, полученные по завершении разбиения блока СВ,
1
4
2
- блоки преобразований, такие как блоки TB-ТВ, полученные по завершении разбиения блока СВ,
- третий уровень глубины NP3 разбиения, который содержит:
13
16
10
- блоки кодирования, такие как блоки СВ-CB, полученные по завершении разбиения блока СВ,
5
8
7
9
12
2
12
16
12
- блоки преобразований, такие как блоки ТВ-TB, полученные по завершении разбиения блока СВ, блоки ТВ-ТВ, полученные по завершении разбиения блока ТВ, блоки ТВ-TB, полученные по завершении разбиения блока СВ.
i
i
В HEVC-совместимом кодирующем устройстве для рассматриваемого блока CTB несколько разных разбиений указанного блока конкурируют в кодирующем устройстве, иначе говоря, разные соответствующие комбинации циклов разбиения конкурируют с целью выбора лучшего разбиения, то есть разбиения, которое оптимизирует кодирование рассматриваемого блока CTB согласно заданному показателю эффективности кодирования, например, соотношению скорость/потери искажения или эффективность/сложность, которые являются показателями, хорошо известными специалистам в области техники.
i
После выполнения оптимального разбиения рассматриваемого блока CTB, цифровая информационная последовательность, такая, например, как строка битов, представляющая это оптимальное разбиение, передается потоком, предназначенным для считывания видеодекодером.
Такой поток также содержит:
- разностные данные, которые представляют собой коэффициенты разбитого на подгруппы разностного блока, и необязательно, при кодировании в режиме «Inter», разностные данные векторов движения,
- параметры кодирования, которые соответствуют используемому режиму кодирования, в частности:
- режим предсказания (интра-предсказание, интер-предсказание, предсказание по умолчанию, осуществляющее предсказание, для которого на декодер не передается никакая информация, т.е. «пропускание»);
- информация, определяющая тип предсказания (ориентация, компонент эталонного изображения, и т.д.);
- тип преобразования, например 4×4 DCT, 8×8 DCT и т.д.;
- информация о перемещениях, если необходимо;
- и т.д.
В частности, согласно технологии 3D HEVC предлагается кодировать первый компонент изображения относительно по меньшей мере одного второго уже закодированного изображения, а затем декодированного компонента изображения, причем указанный первый и второй компоненты изображения представляют один и тот же кадр.
Вышеупомянутыми первым и вторым компонентами изображения являются, например, растровый компонент и связанный с ним компонент с глубиной, соответственно, как в новом формате кодирования видеосигнала, называемом MVD (от англ. «Multiview Video+Depth»), который является предметом текущих разработок.
Альтернативно вышеупомянутыми первым и вторым компонентами изображения могут быть компонент с глубиной и связанный с ним растровый компонент соответственно.
В соответствии с технологией 3D HEVC, первый и второй компоненты разбиваются на множество блоков, которые после этого разбиваются, как объяснялось выше. Такие операции разбиения оказываются очень затратными в смысле вычислений в кодирующем устройстве, поскольку они должны полностью выполняться сначала на втором компоненте, а затем на первом.
Предмет и сущность изобретения
Одна из целей изобретения состоит в том, чтобы устранить недостатки вышеупомянутого предшествующего уровня техники.
С этой целью предмет данного изобретения относится к способу кодирования по меньшей мере одного текущего блока первого компонента изображения относительно контрольного блока по меньшей мере одного второго компонента изображения, причем первый и второй компоненты изображения представляют один и тот же кадр, причем контрольный блок предварительно подвергали кодированию путем разбиения, а затем декодированию, причем разбиение контрольного блока выполняют множество раз, пока не будет достигнут заданный уровень глубины разбиения.
Такой способ кодирования отличается тем, что включает этапы, которые в зависимости от типа первого и второго компонентов изображения предусматривают:
- либо разбиение текущего блока множество раз, пока не будет достигнут уровень глубины разбиения, зависящий от уровня разбиения контрольного блока,
- либо разбиение текущего блока на основании уровня глубины разбиения, предварительно инициализированного уровнем глубины разбиения, который зависит от уровня глубины разбиения для контрольного блока.
Таким образом, такая мера позволяет, в соответствии с характером первого и второго компонентов изображения:
- либо остановить последовательные операции разбиения текущего блока на уровне глубины разбиения, который считается достаточным, поскольку оно выполняется согласно заданному показателю эффективности кодирования, такому, например, как соотношение скорость/потери искажения,
- либо непосредственно разбить текущий блок на основании уже установленного уровня глубины разбиения, который близок к уровню глубины разбиения для контрольного блока.
В результате это дает существенное понижение сложности вычислений в кодирующем устройстве, благодаря чему становится возможным, чтобы первый и второй компоненты изображения представляли один и тот же кадр.
Следует отметить, что первый и второй компоненты изображения не являются частями изображения, но представляют два разных ракурса цельного изображения, представляющего один и тот же кадр.
Согласно одному конкретному варианту осуществления этап разбиения текущего блока реализуют множество раз, когда первым компонентом изображения является изображение с глубиной, а вторым компонентом изображения является растровое изображение, связанное с изображением с глубиной, причем текущий блок и контрольный блок занимают идентичные положения в первом компоненте изображения и во втором компоненте изображения соответственно.
Такая мера позволяет снизить сложность в смысле вычислений в кодирующем устройстве, когда изображение с глубиной закодировано относительно растрового изображения.
Согласно другому конкретному варианту осуществления этап разбиения текущего блока на основании предварительно инициализированного уровня глубины разбиения реализуется, когда первым компонентом изображения является растровое изображение, а вторым компонентом изображения является изображение с глубиной, связанное с растровым изображением, причем текущий блок и контрольный блок занимают идентичные положения в первом компоненте изображения и во втором компоненте изображения соответственно.
Такая мера позволяет снизить сложность в смысле вычислений в кодирующем устройстве, когда растровое изображение закодировано относительно изображения с глубиной.
Разумеется, могут предусматриваться другие типы первого и второго компонентов изображения.
Таким образом, первым и вторым компонентами изображения, соответственно, могут быть:
- два ракурса одного и того же многоракурсного изображения, причем указанные два ракурса представляют один и тот же кадр либо в тот же момент, либо в другой момент, или же
- компонент яркости и компонент цвета, или же
- два разных слоя при масштабированном кодировании видеосигнала, причем текущий блок и контрольный блок занимают идентичные положения в первом компоненте изображения и во втором компоненте изображения соответственно.
Также можно предусмотреть кодирование первого компонента изображения относительно второго компонента изображения и третьего компонента изображения. В этом случае, например:
- первым компонентом изображения может быть Y-компонент,
- вторым компонентом изображения может быть U-компонент,
- третьим компонентом изображения может быть V-компонент.
Изобретение также относится к устройству кодирования по меньшей мере одного текущего блока первого компонента изображения относительно контрольного блока по меньшей мере одного второго компонента изображения, причем первый и второй компоненты изображения представляют один и тот же кадр, причем контрольный блок предварительно подвергали кодированию путем разбиения, а затем декодированию, причем разбиение контрольного блока выполняют множество раз, пока не будет достигнут заданный уровень глубины разбиения.
Такое устройство кодирования примечательно тем, что содержит:
- первые средства разбиения текущего блока, выполненные с возможностью разбиения последнего множество раз, пока не будет достигнут уровень глубины разбиения, зависящий от уровня разбиения контрольного блока,
- вторые средства разбиения текущего блока, выполненные с возможностью разбиения последнего на основании уровня глубины разбиения для текущего блока, предварительно инициализированного уровнем глубины разбиения, зависящим от уровня глубины разбиения для контрольного блока,
причем первые и вторые средства разбиения запускают выборочно в зависимости от типа первого и второго компонентов изображения.
Согласно одному конкретному варианту осуществления первые средства разбиения запускают, когда первым компонентом изображения является изображение с глубиной, а вторым компонентом изображения является растровое изображение, связанное с изображением с глубиной, причем текущий блок и контрольный блок занимают идентичные положения в первом компоненте изображения и во втором компоненте изображения соответственно.
Согласно другому конкретному варианту осуществления вторые средства разбиения запускают, когда первым компонентом изображения является растровое изображение, а вторым компонентом изображения является изображение с глубиной, связанное с растровым изображением, причем текущий блок и контрольный блок занимают идентичные положения в первом компоненте изображения и во втором компоненте изображения соответственно.
Изобретение также относится к компьютерной программе, содержащей команды для реализации способа кодирования согласно изобретению, когда его выполняет компьютер.
Эта программа может использовать любой язык программирования и иметь вид исходного кода, объектного кода или кода, который является промежуточным между исходным кодом и объектным кодом, например частично скомпилированный вид или любой другой требуемый вид.
Целью изобретения также является считываемый компьютером носитель информации, на который записана компьютерная программа, причем эта программа содержит команды, подходящие для реализации способа кодирования согласно изобретению, как описано выше.
Носителем информации может быть любой объект или устройство, выполненное с возможностью хранения программы. Например, носитель может содержать средство хранения, такое как ROM, например CD-ROM или ROM на интегральной микросхеме, или средство магнитной записи, например флэш-накопитель USB или жесткий диск.
Более того, носителем информации может быть передаваемый носитель, такой как электрический или оптический сигнал, который можно передавать посредством электрического или оптического кабеля, по радио или другими средствами. Программу согласно изобретению можно, в частности, загружать в сеть, например Интернет.
Альтернативно носителем информации может быть интегральная схема, в которую встроена программа, причем схема выполнена с возможностью исполнения или использования для исполнения рассматриваемого способа.
Вышеупомянутое устройство кодирования и соответствующая компьютерная программа демонстрируют, по меньшей мере, такие же преимущества, как те, которые предоставляются способом кодирования согласно настоящему изобретению.
Краткое описание графических материалов
Другие характеристики и преимущества станут понятны после ознакомления с предпочтительными вариантами осуществления, описанными со ссылками на фигуры, на которых:
- на фиг. 1А показаны последовательные операции разбиения блока в соответствии с HEVC-технологией,
- на фиг. 1В показано иллюстративное разбиение блока кодирования, которое было достигнуто после предсказывания и разложения указанного блока, а также соответствующее дерево предсказания и разложения,
- на фиг. 2А и 2В показаны этапы способа кодирования согласно изобретению,
- на фиг. 3 показан вариант осуществления устройства кодирования согласно изобретению,
- на фиг. 4А показано иллюстративное разбиение контрольного блока уже закодированного, а затем декодированного компонента изображения, а также дерево, представляющее выполненное разбиение,
- на фиг. 4В показано иллюстративное разбиение текущего блока компонента изображения, который подлежит кодированию, относительно разбиения контрольного блока, показанного на фиг. 4А, а также дерево, представляющее выполненное разбиение,
- на фиг. 4С показано другое иллюстративное разбиение текущего блока компонента изображения, который подлежит кодированию, относительно разбиения контрольного блока, показанного на фиг. 4А, а также дерево, представляющее выполненное разбиение.
Подробное описание способа кодирования согласно изобретению
Теперь будет описан вариант осуществления изобретения, в котором способ кодирования согласно изобретению предназначен для кодирования последовательности изображений согласно бинарному потоку, близкому к тому, который получают кодированием согласно проектируемому стандарту 3D HEVC. В этом варианте осуществления способ кодирования согласно изобретению реализуют, например, с использованием программного или аппаратного обеспечения при помощи изменений в кодирующем устройстве, изначально совместимом со стандартом 3D HEVC. Способ кодирования согласно изобретению представлен в виде алгоритма, включающего этапы С1-С4а) или С1-C4b), показанные на фиг. 2А и 2В.
Согласно варианту осуществления изобретения способ кодирования согласно изобретению реализуют в устройстве СО кодирования, показанном на фиг. 3.
11
11
21
1W
2W
21
11
21
Как объяснялось выше в описании со ссылками на фиг. 2 и 3, способ кодирования согласно изобретению, в частности, заключается в кодировании первого компонента CI изображения, который является текущим компонентом подлежащей кодированию последовательности S изображений (CI, CI), …, (CI, CI), относительно по меньшей мере одного второго компонента CI изображения, который является контрольным компонентом изображения подлежащей кодированию последовательности изображений, то есть компонентом, который предварительно кодировали, а затем декодировали. Первый компонент CI изображения запрашивается совместно со вторым компонентом CI изображения, причем первый и второй компоненты изображения представляют один и тот же кадр.
21
11
21
21
2W
11
1W
В случае, когда компонентом CI изображения, который только что закодировали, является растровое изображение, а подлежащим кодированию компонентом CI изображения, который связан с компонентом CI изображения, является изображение с глубиной, компоненты CI, …, CI последовательности S сначала известным per se способом кодируют, а затем декодируют. Далее компоненты CI, …, CI последовательности S кодируют один за другим по очереди.
21
11
21
2W
1W
2W
В случае компонентов других типов, таких как различные SVC-слои или YUV-компоненты, действие включает кодирование/декодирование известным per se способом компонента CI, а затем кодирование компонента CI относительно компонента CI и т.д., пока не будет выполнено кодирование/декодирование компонента CI, а затем кодирование компонента CI относительно компонента CI.
21
В ходе выполнения этапа С1, показанного на фиг. 2А, действие известным per se способом включает кодирование путем разбиения компонента CI изображения.
21
1
2
i
L
В ходе выполнения подэтапа С11, показанного на фиг. 2А, компонент CI изображения разбивают на множество блоков CTBr, CTBr, …, CTBr, …, CTBr размером 64×64 пикселя (1≤i≤L). Такое разбиение выполняет посредством модуля MPCI разбиения программного обеспечения, показанного на фиг. 3.
Следует отметить, что в контексте изобретения термин «блок» означает узел кодирования. Указанная терминология, в частности, используется в стандарте HEVC, например, в документе "В. Bross, W. - J. Han, J. - R. Ohm, G.J. Sullivan, and T. Wiegand, "High efficiency video coding (HEVC) text specification draft 6," document JCTVC-H1003 of JCT-VC, San Jose CA, USA, February 2012", JCTVC-H1003 of JCT-VC, San Jose CA, USA, February 2012".
В частности, такой узел кодирования группирует наборы пикселей прямоугольной или квадратной формы, также называемые блоками, макроблоками, или наборы пикселей другой геометрической формы.
i
21
В ходе выполнения подэтапа С12, показанного на фиг. 2А, выбирают блок CTBr компонента CI изображения.
i
1
2
j
M
В ходе выполнения подэтапа С13, показанного на фиг. 2А, выбранный блок CTBr разбивают на множество блоков кодирования Br, Br, …, Br, …, Br, где 1≤j≤M.
i
Вышеупомянутое разбиение допускает многократное выполнение, пока не будет достигнут заданный уровень k (k≥0) глубины разбиения, для которого финальное разбиение, полученное для выбранного блока CTBr, оптимизирует показатель эффективности кодирования, например, в частности, соотношение скорость/потери искажения.
Указанное разбиение реализуется модулем МР1 разбиения программного обеспечения, показанный на фиг. 3.
i
В ходе выполнения подэтапа С14, показанного на фиг. 2А, уровень глубины разбиения для выбранного блока CTBr инициализируют значением k.
1
2
L
Этапы С12-С14 повторяют для набора блоков CTBr, CTBr, …, CTBr.
i
Иллюстративное разбиение блока CTBr показано на фиг. 4А.
В показанном примере выполненное разбиение соответствует дереву, которое принадлежит к типу «дерева квадрантов», такому как описывалось выше в описании, и в котором уровень глубины k разбиения инициализирован значением 3.
Разумеется, могут рассматриваться и другие типы деревьев.
i
Согласно фиг. 4А для данного блока CTBr считается, что этот блок составляет корень дерева ACr кодирования, в котором:
i
i
1
2
3
4
- первый уровень листьев под корнем соответствует первому уровню глубины разбиения для блока CTBr, для которого блок CTBr разбивали первый раз на множество блоков кодирования, например на 4 блока Br, Br, Br, Br кодирования,
i
i
5
6
7
8
1
- второй уровень листьев под первым уровнем листьев соответствует второму уровню глубины разбиения для блока CTBr, для которого разбитый первый раз блок CTBr разбили второй раз на множество блоков кодирования, например на 4 блока Br, Br, Br, Br кодирования, являющихся результатом разбиения блока Br,
i
i
9
10
11
12
7
- третий уровень листьев под вторым уровнем листьев соответствует третьему уровню глубины разбиения для блока CTBr, для которого разбитый второй раз блок CTBr разбивают третий раз на множество блоков кодирования, например на 4 блока Br, Br, Br, Br кодирования, являющихся результатом разбиения блока Br.
1
2
i
L
1
2
i
L
1
2
i
L
1
2
i
L
11
В ходе выполнения этапа С2, показанного на фиг. 2А, действие включает создание L последовательностей битов Sr, Sr, …, Sr, …, Sr, которые представляют разбиения, выполненные на блоках CTBr, CTBr, …, CTBr, …, CTBr соответственно. Действие также включает порождение декодированных версий блоков CTBr, CTBr, …, CTBr, …, CTBr, которые обозначены CTBDr, CTBDr, …, CTBDr, …, CTBDr на фиг. 2 и 3. Такие декодированные блоки предназначены для повторного использования кодирующим устройством СО, чтобы кодировать последующий компонент изображения, такой как, в частности, компонент CI.
Такой этап создания бинарных последовательностей реализуется статистическим кодирующим устройством СЕ, показанным на фиг. 3.
Вышеупомянутый этап декодирования, в свою очередь, реализуется модулем MD декодирования, который также показан на фиг. 3.
11
21
Согласно фиг. 2В в соответствии с изобретением, в зависимости от типа первого и второго компонентов изображения CI и CI для кодирования путем разбиения предусмотрено две альтернативы С3а) и C3b).
21
11
21
В случае, например, когда компонентом CI изображения, который только что закодировали, является растровое изображение, а подлежащим кодированию компонентом CI изображения, который связан с компонентом CI изображения, является изображение с глубиной, выбирают описанную ниже альтернативу С3а) кодирования.
11
1
2
u
S
В ходе выполнения подэтапа С31а), показанного на фиг. 2В, компонент CI изображения разбивают на множество блоков CTB, СТВ, …, CTB, …, CTB размером 64×64 пикселя (1≤u≤S). Такой этап разбиения реализуется модулем MPCI разбиения, показанным на фиг. 3.
u
11
1
2
i
L
21
i
u
i
11
21
В ходе выполнения подэтапа С32а), показанного на фиг. 2В, блок CTB компонента CI изображения выбирают в качестве текущего блока, подлежащего кодированию, относительно по меньшей мере одного закодированного, а затем декодированного контрольного блока, выбранного из блоков CTBr, CTBr, …, CTBr, …, CTBr предварительно закодированного, а затем декодированного компонента CI изображения. В приводимом далее описании выбранным контрольным блоком, например, считается блок CTBr, причем текущий блок CTB и контрольный блок CTBr занимают идентичные положения в первом компоненте CI изображения и во втором компоненте CI изображения соответственно.
u
1
2
f
G
В ходе выполнения подэтапа С33а), показанного на фиг. 2В, выбранный блок CTB разбивают на множество блоков B, В, …, B, …, B кодирования, где 1≤f≤G.
u
i
В соответствии с изобретением разбиение блока CTB выполняют множество раз, пока не будет достигнут уровень k'(k'≥0), который зависит от уровня глубины k разбиения для контрольного блока CTBr.
Такое отношение зависимости выражается уравнением k'=a*k+b, где а и b - относительные целочисленные переменные, заданные в кодирующем устройстве.
u
u
Таким образом, такое отношение зависимости позволяет избегать при кодировании липших переразбиений блока CTB, что является очень сложным, и при этом получать для блока CTB такое разбиение, которое остается в соответствии с показателем эффективности кодирования, таким как, например, соотношение скорость/потери искажения.
Указанное разбиение реализуется указанным первым модулем МР1 разбиения программного обеспечения, показанным на фиг. 3.
1
2
S
Этапы С32а)-С33а) повторяют для всего набора блоков CTB, СТВ, …, CTB.
u
Иллюстративное разбиение блока CTB показано на фиг. 4В.
u
i
В показанном примере разбиение текущего блока CTB выполняют на уровне глубины k'=2, который ниже уровня глубины k разбиения для контрольного блока CTBr. С этой целью в уравнении k'-a*k+b, а и b заранее фиксируют в кодирующем устройстве следующим образом: а=1 и b=-1.
11
21
Разумеется, согласно контексту рассматриваемого кодирования, такому, например, как содержание компонентов CI и CI изображения, уровень глубины k' разбиения может быть ниже или выше уровня глубины k разбиения более чем на один уровень глубины разбиения. В этом плане отношение зависимости k'-а*k+b является особенно выгодным, поскольку позволяет проявлять определенную гибкость адаптации для уровня глубины k' разбиения в зависимости от ситуаций, которые складываются во время кодирования.
u
Согласно фиг. 4В для данного текущего блока CTB считается, что этот блок составляет корень дерева АС кодирования, в котором:
u
u
1
2
3
4
- первый уровень листьев под корнем соответствует первому уровню глубины разбиения для блока CTB, для которого блок CTB разбивали первый раз на множество блоков кодирования, например на 4 блока B, В, В, В кодирования,
u
u
5
6
7
8
1
- второй уровень листьев под первым уровнем листьев соответствует второму уровню глубины разбиения для блока CTB, для которого разбитый первый раз блок CTB разбивали второй раз на множество блоков кодирования, например на 4 блока В, В, В, В кодирования, являющихся результатом разбиения блока B.
7
7
i
Поэтому в показанном примере блок В не разбивали еще раз на 4 блока, как блок Br контрольного блока CTBr.
1
2
u
S
1
2
u
S
1
2
u
S
1
2
u
S
В ходе выполнения этапа С4а), показанного на фиг. 2В, действие включает создание S-последовательностей битов S, S, …, S, …, S, которые представляют разбиения, выполненные на блоках CTB, СТВ, …, CTB, …, CTB, соответственно. Действие также включает создание декодированных версий блоков CTB, СТВ, …, CTB, …, CTB, которые на фиг. 2В обозначены CTBD, CTBD, …, CTBD, …, CTBD. Такие декодированные блоки предназначены для повторного использования кодирующим устройством СО, чтобы кодировать последующий компонент изображения.
Такой этап создания бинарных последовательностей реализуется статистическим кодирующим устройством СЕ, показанным на фиг. 3.
Вышеупомянутый этап декодирования, в свою очередь, реализуется модулем MD декодирования, также показанным на фиг. 3.
Теперь согласно фиг. 2В будет описана вторая альтернатива C3b) кодирования путем разбиения, которая рассматривается согласно изобретению.
21
11
21
Такую альтернативу рассматривают, например, в случае, когда компонентом CI изображения, который только что закодировали, является изображение с глубиной, а подлежащим кодированию компонентом CI изображения, который связан с компонентом CI изображения, является растровое изображение.
11
В ходе выполнения подэтапа C31b), показанного на фиг. 2В, компонент CI изображения разбивают на множество блоков , , …, , …,  размером 64×64 пикселя (l≤u≤S). Такой этап разбиения реализуется модулем MPCI разбиения, показанным на фиг. 3.
11
1
2
i
L
21
i
i
11
21
В ходе выполнения подэтапа C32b), показанного на фиг. 2В, блок  компонента CI изображения выбирают в качестве текущего блока, подлежащего кодированию, относительно по меньшей мере одного закодированного, а затем декодированного контрольного блока, выбранного из блоков CTBr, CTBr, …, CTBr, …, CTBr предварительно закодированного компонента CI изображения. В приводимом далее описании выбранным контрольным блоком, например, считается блок CTBr, причем текущий блок  и контрольный блок CTBr занимают идентичные положения в первом компоненте CI изображения и во втором компоненте CI изображения соответственно.
В ходе выполнения подэтапа C33b), показанного на фиг. 2В, действие включает инициализацию уровня глубины разбиения для блока , на основании уровня глубины разбиения k'=a*k+b.
С этой целью в ходе выполнения этапа C34b), показанного на фиг. 2В, блок непосредственно разбивают на множество блоков , , …, , …,  кодирования, где 1≤g≤H, на основании предварительно инициализированного уровня глубины k' разбиения. Таким образом, промежуточные этапы разбиения блока  опускаются, благодаря чему заметно понижается сложность вычислений в процессе кодирования.
После этапа C34b) разбиения блока  последний могут снова многократно разбивать, пока в кодирующем устройстве не будет достигнут заранее заданный уровень глубины разбиения.
Указанное разбиение реализуется вторым модулем МР2 разбиения программного обеспечения, показанным на фиг. 3.
Этапы C32b)-C34b) повторяют для всего набора блоков , , …, .
Иллюстративное разбиение блока  показано на фиг. 4С.
i
В этом примере контрольным блоком CTBr, используемым для кодирования текущего блока , считается тот, который разбили, как показано на фиг. 4А.
i
В примере, показанном на фиг. 4С, разбиение текущего блока  выполняют на основании уровня глубины k'=4, который выше уровня глубины k разбиения для контрольного блока CTBr. С этой целью в уравнении k'=a*k+b а и b заранее фиксируют в кодирующем устройстве следующим образом: a=1 и b=1. Как объяснялось в приводимом выше описании, в зависимости от контекста видеосигнала возможен другой выбор уровня глубины k' разбиения. В частности, уровень глубины k' разбиения может быть ниже или выше уровня глубины k разбиения более чем на один уровень глубины разбиения.
Согласно фиг. 4С для данного текущего блока  считается, что этот блок составляет корень дерева АС' кодирования, в котором:
- первый уровень листьев под корнем соответствует первому уровню глубины разбиения для блока , для которого блок  разбивали первый раз на множество блоков кодирования, например на 4 блока , , ,  кодирования,
- второй уровень листьев под первым уровнем листьев соответствует второму уровню глубины разбиения для блока , для которого разбитый первый раз блок  разбивают второй раз на множество блоков кодирования, например на 4 блока , , ,  кодирования, являющихся результатом разбиения блока ,
- третий уровень листьев под вторым уровнем листьев соответствует третьему уровню глубины разбиения для блока , для которого разбитый второй раз блок  разбивают третий раз на множество блоков кодирования, например на 4 блока , , ,  кодирования, являющихся результатом разбиения блока ,
- четвертый уровень листьев под третьим уровнем листьев соответствует четвертому уровню глубины разбиения для блока , для которого разбитый третий раз блок  разбивают четвертый раз на множество блоков кодирования, например на 4 блока , , ,  кодирования, являющихся результатом разбиения блока .
11
i
Поэтому в "показанном примере блок  разбивали на 4 блока, в отличие от блока Br контрольного блока CTBr.
В ходе выполнения этапа C4b), показанного на фиг. 2В, действие включает создание S-последовательностей битов , , …, , …, , которые представляют разбиения, выполненные на блоках , , …, , …,  соответственно. Действие также включает порождение декодированных версий блоков , , …, , …, , которые на фиг. 2В обозначены , , …, , …, . Такие декодированные блоки предназначены для повторного использования кодирующим устройством СО, чтобы кодировать последующий компонент изображения.
Такой этап создания бинарных последовательностей реализует статистическое кодирующее устройство СЕ, показанное на фиг. 3.
Вышеупомянутый этап декодирования, в свою очередь, реализуется модулем MD декодирования, также показанным на фиг. 3.
Понятно, что описанные выше варианты осуществления приводились исключительно с целью неограничивающего пояснения, и что специалист в области техники может без труда произвести многочисленные модификации, не выходя при этом за пределы объема изобретения.