Предсказание вектора движения текущего раздела изображения, указывающего на опорную зону, которая перекрывает несколько разделов опорного изображения, кодирование и декодирование с использованием такого предсказания

Изобретение относится к средствам кодирования и декодирования изображений. Техническим результатом является повышение точности предсказания вектора движения раздела изображения. В способе вектор движения опорного раздела имеет такую же форму, что и текущий раздел, и принадлежит опорному изображению, отличному от текущего изображения и предварительно разбитому в результате кодирования с последующим декодированием на множество разделов. Когда опорный раздел перекрывает совокупность из опорных разделов из указанного множества разделов опорного изображения, определяют указанный вектор движения текущего раздела изображения на основании функции опорного вектора движения, принадлежащего совокупности из опорных векторов движения, связанных с k перекрываемыми опорными разделами. 7 н. и 8 з.п. ф-лы, 6 ил.

 

Уровень техники

Настоящее изобретение в целом относится к области обработки изображений и, в частности, к кодированию и декодированию посредством сопоставления цифровых изображений и последовательностей цифровых изображений.

Для передачи изображений существуют несколько способов кодирования и декодирования. В частности, различают большие типы кодирования, такие как кодирование, называемое "intra", когда изображение кодируют автономно, то есть без ссылки на другие изображения, или же кодирование, называемое "inter", которое состоит в кодировании текущего изображения относительно прошлых изображений таким образом, чтобы выражать и передавать только различия между этими изображениями.

Как правило, способы кодирования вышеуказанного типа включают в себя этап предсказательного кодирования, в ходе которого участки изображений, называемые блоками или макроблоками, текущего изображения предсказывают относительно других опорных блоков или макроблоков, то есть ранее закодированных, а затем декодированных блоков или макроблоков.

Например, в случае применения стандарта H264/MPEG-4 AVC (от английского "Advanced Video Coding") предсказательное кодирование макроблока состоит в разбивке макроблоков на множество разделов, которые, как правило, имеют форму блоков меньшего размера.

В частности, в случае inter-кодирования согласно вышеуказанному стандарту предназначенный для кодирования текущий макроблок можно разбить на разделы по вариантам 16×16, 8×16, 16×8 и 8×8. Если выбирают вариант 8×8, каждый блок 8×8 опять разбивают на разделы по вариантам 8×8, 4×8, 8×4 и 4×4. Каждый текущий блок сравнивают с одним или несколькими блоками соответственно одного или нескольких опорных изображений. Таким образом, получают вектор движения, который описывает движение между текущим блоком и опорным блоком, занимающим то же положение, что и текущий макроблок в предыдущем изображении. При этом вычисляют предсказанное значение этого вектора движения, чтобы закодировать остаток между вышеуказанным вектором движения и вычисленным предсказанным вектором движения.

Такое предсказание вектора движения подходит не ко всем типам разбивки на разделы и, в частности, к случаю, когда опорный макроблок перекрывает несколько опорных разделов опорного изображения. Такая ситуация показана на фиг.1А, которая иллюстрирует случай временного предсказания для кодируемого текущего макроблока, обозначенного MBCN, изображения N, предназначенного для кодирования согласно вышеуказанному стандарту. В представленном примере такой макроблок MBCN имеет квадратную форму и соответствует типу 4×4. Макроблок MBCN окружен другими макроблоками BR1, BR2, BR3, BR4, которые находятся в непосредственной близости от него и имеют такую же форму и размер, что и макроблок MBCN.

В представленном примере вектор движения текущего макроблока MBCN, обозначенный MV, указывает на опорный макроблок MBCN-1 опорного изображения, обозначенного N-1, которое является, например, предыдущим изображением. Опорный MBCN-1 имеет такое же положение, что и текущий макроблок MBCN в предыдущем изображении N-1. Особенностью опорного макроблока MBCN-1 является то, что он перекрывает уже закодированные и затем декодированные опорные разделы, обозначенные BR′1, BR′2, BR′3 и BR′4 на фиг.1A.

В соответствии со стандартом H264/AVC вышеуказанный вектор движения MV предсказывают только пространственно. В частности, производят вычисление опорного вектора движения, который равен среднему из векторов движения MV1, MV3, MV4, соответственно связанных с опорными макроблоками BR1, BR3, BR4. В некоторых ситуациях вектор движения MV2, связанный с опорным макроблоком BR2, можно использовать вместо одного из векторов MV1, MV3, MV4.

Кроме того, недавно появились новые типы разбивки на разделы предназначенного для кодирования текущего макроблока, которые не были предусмотрены стандартом H264/AVC. Так, как показано на фиг.1B, кодируемый текущий MBCN можно разбить на несколько разделов Р1-Рр, имеющих линейную форму, Г-образную форму или совершенно произвольную форму.

Стандарт H264/AVC не предусматривает предсказания для различных типов разбивки на разделы, показанных на фиг.1B, и для частного случая, когда разбитый таким образом опорный макроблок перекрывает несколько разделов опорного изображения. Такая ситуация представлена на фиг.1С, которая иллюстрирует случай временного предсказания для кодируемого текущего макроблока, обозначенного MBCN, изображения N, предназначенного для кодирования согласно вышеуказанному стандарту. В представленном примере такой макроблок MBCN разбивают на несколько меньших разделов P1, Р2, P3, которые имеют любую геометрическую форму.

В представленном примере вектор движения первого раздела Р1 текущего макроблока MBCN, обозначенный MVp1, указывает на раздел Р′1 опорного макроблока MBCN-1 в предыдущем изображении N-1. Особенностью опорного макроблока MBCN-1 является то, что он перекрывает уже закодированные и затем декодированные опорные разделы, обозначенные BR′1, BR′2, BR′3 и BR′4 на фиг.1С.

В соответствии со стандартом H264/AVC, чтобы предсказать вышеуказанный вектор движения MVp1, производят вычисление опорного вектора движения, который, как правило, равен среднему пространственному из векторов движения MV1, MV3, MV4, соответственно связанных с опорными макроблоками BR1, BR3, BR4.

Такое пространственное предсказание вектора движения может оказаться неточным, поскольку в изображении N-1 существуют различия формы и размера между опорным разделом Р′1 и опорными макроблоками BR′1, BR′2, BR′3 и BR′4.

Кроме того, известны другие методы вычисления предсказанного вектора движения с целью inter-кодирования текущего макроблока.

Один из них описан в публикации IEEE Transactions on Circuits and System for Video Technology, том 18, 1247-1257 (Сентябрь 2008), G.Laroche, J.Jung и В.Pesquet-Popescu, и касается случаев, когда, как и в стандарте H264/AVC, макроблоки разбивают на множество разделов, которые, как правило, имеют форму блоков меньшего размера. Согласно этому методу, предсказывают вектор движения макроблока текущего изображения относительно опорного вектора, который выбирают как вектор, указывающий на пиксель, находящийся вверху в крайней левой части макроблока, имеющего такое же положение, что и текущий макроблок в предыдущем изображении.

Если попытаться применить этот последний метод для предсказания вектора MV на фиг.1А или для предсказания вектора MVp1 на фиг.1С, то каждый из векторов MV и MVp1 будет получен на основании опорного вектора MV2, связанного с опорным макроблоком BR'2, при этом самый крайний слева пиксель опорного макроблока MBCN-1 находится в опорном макроблоке BR′2, с которым связан вектор движения MV2.

Предсказание вектора движения с применением этого метода тоже не отличается точностью по тем же причинам, которые были указаны выше.

Задача и раскрытие изобретения

Одной из задач настоящего изобретения является устранение вышеуказанных недостатков предшествующего уровня техники.

В этой связи первым объектом настоящего изобретения является способ предсказания вектора движения текущего раздела изображения относительно вектора движения опорного раздела, имеющего такую же форму, что и текущий раздел, и принадлежащего к опорному изображению, отличному от текущего изображения и предварительно разбитому после кодирования с последующим декодированием на множество n разделов.

Согласно изобретению, в случае, когда опорный раздел перекрывает совокупность из k опорных разделов из множества n разделов опорного изображения, где k≤n, вектор движения текущего раздела изображения определяют на основании функции по меньшей мере одного опорного вектора движения, принадлежащего k совокупности из k опорных векторов движения, соответственно связанных с k перекрываемыми опорными разделами.

Такой отличительный признак позволяет значительно повысить точность предсказания, учитывая:

- особую разбивку на разделы текущего макроблока или опорного макроблока,

- только перекрываемые зоны опорных разделов.

Кроме того, предсказание в соответствии с настоящим изобретением можно применить для любого метода вычисления предсказываемого вектора движения текущего раздела, например, для метода согласно стандарта H264/AVC или для метода, описанного в вышеуказанной ссылке IEEE.

В варианте выполнения определение вектора движения текущего раздела содержит следующие этапы:

- вычисление числа общих пикселей между опорным разделом и соответственно k перекрываемыми опорными разделами,

- сравнение вычисленного числа общих пикселей между k перекрываемыми опорными разделами на основании заранее определенного критерия сравнения.

Такой отличительный признак позволяет достаточно точно выбирать опорный вектор движения на основании определенной характеристики, которая в данном случае основана на количестве общих пикселей между опорным разделом и перекрываемыми опорными разделами.

Согласно первому варианту, критерий сравнения состоит в выборе из k опорных векторов движения, соответственно связанных с k перекрываемыми опорными разделами, опорного вектора движения, связанного с опорным разделом, в котором вычисленное число общих пикселей является самым большим.

Согласно второму варианту, критерий сравнения состоит во взвешивании, при помощи вычисленного числа общих пикселей, среднего значения из k опорных векторов движения, соответственно связанных с k перекрываемыми опорными разделами.

Согласно третьему варианту, критерий сравнения состоит в выборе из k опорных векторов движения, соответственно связанных с k перекрываемыми опорными разделами, опорного вектора движения, который связан с перекрываемым опорным разделом, имеющим больше пикселей внутри опорного раздела, чем снаружи этого опорного раздела.

В другом варианте выполнения определение вектора движения текущего раздела содержит следующие этапы:

- вычисление для каждого из k перекрываемых опорных разделов коэффициента, являющегося функцией пространственного градиента опорного раздела,

- выбор коэффициента, имеющего наибольшее вычисленное значение,

- выбор опорного вектора движения, который соответствует перекрываемому опорному разделу с выбранным коэффициентом.

Такой отличительный признак позволяет достаточно точно выбрать опорный вектор движения на основании некоторой характеристики, которая в данном случае основана на вычислении коэффициента, выражающего степень надежности в выборе опорного вектора движения, который предполагается более точным в зоне изображения, содержащего прерывистости, чем в зоне цельного изображения.

Согласно варианту выполнения, вектор движения текущего раздела определяют в результате этапа вычисления среднего значения из k опорных векторов движения, соответственно связанных с k перекрываемыми опорными разделами, при этом такое среднее значение взвешивают при помощи k вычисленных коэффициентов.

В еще одном варианте выполнения определение вектора движения текущего раздела содержит следующие этапы:

- выбор отдельной точки опорного раздела,

- выбор опорного вектора движения, связанного с перекрываемым опорным разделом, содержащего выбранную отдельную точку.

Такой отличительный признак позволяет достаточно точно выбрать опорный вектор движения на основании некоторой характеристики, которая в данном случае основана на оценке расположения опорного раздела относительно k перекрываемых опорных разделов.

Согласно еще одному варианту выполнения, определение вектора движения текущего раздела содержит следующие этапы:

- идентификация в опорном разделе характеристики, связанной с содержимым изображения,

- выбор опорного вектора движения, связанного с перекрываемым опорным разделом, содержащим указанную характеристику.

Такой отличительный признак позволяет достаточно точно выбрать опорный вектор движения на основании некоторой характеристики, которая в данном случае основана на идентификации рисунка, цвета, контура и т.д. в опорном разделе.

Вторым объектом изобретения является способ кодирования изображения или последовательности изображений, в котором генерируют поток данных, содержащий данные, характеризующие, по меньшей мере, один раздел изображения, при этом способ содержит этап предсказания вектора движения для раздела изображения.

Согласно изобретению, этап предсказания такого способа кодирования осуществляют согласно вышеуказанному способу предсказания.

Третьим объектом изобретения является способ декодирования потока данных, характеризующего изображение или последовательность изображений, при этом поток содержит данные, характеризующие, по меньшей мере, один раздел изображения, при этом способ содержит этап предсказания вектора движения для раздела изображения.

Согласно изобретению, этап предсказания такого способа декодирования осуществляют согласно вышеуказанному способу предсказания.

Соответственно, четвертым объектом настоящего изобретения является устройство предсказания вектора движения для текущего раздела изображения относительно вектора движения для опорного раздела, имеющего такую же форму, что и указанный текущий раздел, и принадлежащего к опорному изображению, отличного от текущего изображения и предварительно разбитого после кодирования и последующего декодирования на множество n разделов.

Согласно изобретению, в случае, когда опорный раздел перекрывает совокупность из k опорных разделов из множества n разделов опорного изображения, где k≤n, такое устройство предсказания содержит вычислительный модуль, выполненный с возможностью определения вектора движения текущего раздела изображения на основании функции по меньшей мере одного опорного вектора движения, принадлежащего к совокупности из k опорных векторов движения, соответственно связанных с k перекрываемыми опорными разделами.

Соответственно, пятым объектом изобретения является устройство кодирования изображения или последовательности изображений, которое генерирует поток данных, содержащий данные, характеризующие, по меньшей мере, один раздел изображения, при этом такое устройство содержит средства предсказания вектора движения раздела изображения.

Согласно изобретению, устройство предсказания такого устройства кодирования соответствует вышеуказанному устройству предсказания.

Соответственно, шестым объектом изобретения является устройство декодирования потока данных, характеризующего изображение или последовательность изображений, при этом поток данных содержит данные, характеризующие, по меньшей мере, один раздел изображения, при этом такое устройство содержит средства предсказания вектора движения для раздела изображения.

Согласно изобретению, устройство предсказания такого устройства декодирования соответствует вышеуказанному устройству предсказания.

Объектом изобретения является также компьютерная программа, содержащая команды для применения одного из способов в соответствии с настоящим изобретением, когда ее исполняет компьютер.

Способ кодирования, способ декодирования, устройство предсказания, устройство кодирования и устройство декодирования имеют, по меньшей мере, те же преимущества, что и преимущества, обеспечиваемые способом предсказания в соответствии с настоящим изобретением.

Краткое описание чертежей

Другие отличительные признаки и преимущества изобретения будут более очевидны из нижеследующего описания предпочтительного варианта выполнения со ссылками на прилагаемые чертежи, на которых:

фиг.1А - пример известного временного предсказания, в котором применяют временные взаимосвязи между предназначенным для кодирования текущим макроблоком изображения N и опорным макроблоком предыдущего изображения N-1, при этом опорный макроблок имеет квадратную форму и перекрывает несколько соседних опорных макроблоков;

фиг.1B - макроблок, разбитый на разделы разных типов согласно известным решениям;

фиг.1С - пример известного временного предсказания, в котором применяют временные взаимосвязи между предназначенным для кодирования текущим макроблоком изображения N и опорным макроблоком предыдущего изображения N-1, при этом опорный макроблок разбит на несколько разделов произвольной формы и перекрывает несколько соседних опорных макроблоков;

фиг.2 - этапы способа кодирования в соответствии с настоящим изобретением;

фиг.3 - вариант выполнения устройства кодирования в соответствии с настоящим изобретением;

фиг.4 - пример временного предсказания в соответствии с настоящим изобретением, в котором применяют временные взаимосвязи между предназначенным для кодирования текущим макроблоком изображения и опорными макроблоками предыдущего изображения;

фиг.5 - устройство декодирования в соответствии с настоящим изобретением;

фиг.6 - этапы способа декодирования в соответствии с настоящим изобретением.

Осуществление изобретения

Далее следует описание варианта выполнения изобретения, в котором применяют способ кодирования в соответствии с настоящим изобретением для inter-кодирования последовательности изображений в виде двоичного потока, близкого к потоку, получаемому согласно стандарту H264/MPEG-4 AVC. В этом варианте выполнения способ кодирования в соответствии с настоящим изобретением осуществляют при помощи программного или аппаратного обеспечения посредством внесения изменений в кодер, первоначально соответствующий стандарту H264/MPEG-4 AVC. Способ кодирования в соответствии с настоящим изобретением представлен в виде алгоритма, содержащего этапы С0-С7, показанные на фиг.2.

Способ кодирования в соответствии с настоящим изобретением осуществляют при помощи устройства кодирования CO, показанного на фиг.3.

Первый этап C0, показанный на фиг.2, представляет собой выбор, - для макроблока, принадлежащего к изображению предназначенной для кодирования последовательности изображений, обозначенной IN на фиг.3, - конкретной разбивки на разделы, соответствующие этому макроблоку.

Следует отметить, что этап С0 может быть факультативными, при этом предсказание вектора движения текущего макроблока можно осуществлять, рассматривая последний в его совокупности, то есть как единственный и единый раздел.

В ходе этапа С0 макроблок MBN, например, имеющий размер 4×4 и принадлежащий к изображению IN, направляют на вход модуля SP выбора разбивки на разделы, показанного на фиг.3.

В этом модуле SP разбивки применяют, например, метод выбора посредством избыточного сопоставления или метод выбора при помощи априорного алгоритма. Такие методы хорошо известны специалистам (см.: G.F.Sullivan and T.Wiegand, "Rate-distorsion optimization for video compression", IEEE Signal Proc. Mag., стр.74-90, 1998). Поэтому их описание опускается.

Различные типы возможных алгоритмов разбивки на разделы сгруппированы в базе данных BD кодера CO. Они позволяют произвести разбивку текущего макроблока на множество разделов либо прямоугольной или квадратной формы, либо других геометрических форм, например, таких как по существу линейные формы, либо совершенно произвольной формы.

В представленном примере модуль выбора SP выбирает разбивку на разделы произвольной формы.

Следующий этап С1, показанный на фиг.2, представляет собой разбивку макроблока MBN на число p предназначенных для предсказания разделов.

Например, макроблок MBn разбивают на три раздела P1, Р2 и P3 произвольной формы. Такую разбивку осуществляет модуль РМВСО разбивки макроблоков, показанный на фиг.3, который использует классический алгоритм разбивки на разделы.

На фиг.4 показан макроблок MBN, полученный после такой разбивки.

После этапа С1 разбивки на разделы во время этапа С2, показанного на фиг.2, модуль разбивки РМВСО передает только что разбитый на разделы макроблок MBN в модуль PREDCO предсказания, показанный на фиг.3.

Классически такой модуль PREDCO предсказания предназначен для предсказания разбитого на разделы текущего макроблока MBN относительно уже закодированного и затем декодированного макроблока, обозначенного MBrN-1 на фиг.4, который имеет такое же положение, что и текущий макроблок MBN в предыдущем изображении IN-1, которое было предварительно разбито после кодирования и последующего декодирования на множество n разделов r′1, r′2, …, r′n.

Согласно изобретению, опорный макроблок MBrN-1 перекрывает совокупность из k опорных разделов r′1, r′2, …, r′k, при k≤n. В представленном примере опорный макроблок MBrN-1 частично перекрывает четыре опорных раздела r′1, r′2, r′3 и r′4. Разумеется, что в других возможных вариантах выполнения опорный макроблок MBrN-1 может полностью перекрывать один или несколько опорных разделов r′1, r′2, r′3 и r′4.

Как показано на фиг.3, такой опорный макроблок MBrN-1 кодируют согласно стандарту H264/MPEG-4 AVC, то есть, как известно, его подвергают:

- кодированию посредством дискретно-косинусного преобразования и квантования, которое осуществляет модуль TQCO преобразования и квантования,

- затем декодированию посредством обратного дискретно-косинусного преобразования и квантования, которое осуществляет модуль TQICO обратного преобразования и квантования.

Как показано на той же фиг.3, согласно изобретению, модуль PREDCO предсказания содержит:

- модуль РМВ разбивки на разделы, предназначенный для разбивки опорного макроблока MBrN-1 на множество опорных разделов,

- вычислительный модуль CAL, предназначенный для вычисления каждого вектора движения MVp1, MVp2, …, MVpp, которые соответственно связаны с разделами Р1, Р2, …, Рр текущего макроблока MBrN-1, на основании функции, по меньшей мере, одного опорного вектора движения, принадлежащего к совокупности k опорных векторов движения MVr′1, MVr′2, …, MVr′k, которые соответственно связаны с k перекрываемыми опорными разделами r′1, r′2, …, r′k.

Во время этапа С3, показанного на фиг.2, модуль РМВ разбивки на разделы, показанный на фиг.3, производит разбивку опорного макроблока MBrN-1 на р опорных разделов. В примере, представленном на фиг.4, опорный макроблок MBrN-1 разбивают идентично текущему макроблоку MBN, то есть на три раздела Pr′1, Pr′2 и Pr′3, которые имеют разные форму и размер.

Во время этапа С4, показанного на фиг.2, вычислительный модуль CAL, показанный на фиг.3, вычисляет для каждого текущего раздела P1, Р2 и P3 связанный с ним предсказанный вектор движения MVp1, MVp2 и MVp3 при помощи описанных ниже различных методов в соответствии с настоящим изобретением.

Согласно первому методу, модуль CAL определяет предсказанный вектор движения MVpl текущего раздела Р1 в зависимости от опорных векторов движения MVr′1, MVr′2, MVr′3 и MVr′4, соответственно связанных с четырьмя перекрываемыми опорными разделами r′1, r′2, r′3 и r′4, показанными на фиг.4. Такое определение состоит, например, в вычислении среднего значения опорных векторов движения MVr′1, MVr′2, MVr′3 и MVr′4 согласно следующему уравнению:

MVp1=Moy(MVr′1, MVr′2, MVr′3, MVr′4)

Согласно второму методу, представленному со ссылкой на фиг.4, модуль CAL определяет предсказанный вектор движения MVp1 как равный опорному вектору движения, связанному с перекрываемым опорным разделом, имеющим наибольшее число пикселей, общих с опорным разделом Pr′1 опорного макроблока MBrN-1.

В примере, представленном на фиг.4, MVp1=MVr′2.

Согласно первой версии этого второго метода, модуль CAL определяет предсказанный вектор движения MVp1 как равный опорному вектору движения, связанному с перекрываемым опорным разделом, имеющим наибольший процент пикселей, общих с опорным разделом Рr′1 опорного макроблока MBrN-1.

В примере, представленном на фиг.4, MVp1=MVr′2.

Согласно второму варианту этого второго метода, модуль CAL определяет среднее значение опорных векторов движения MVr′1, MVr′2, MVr′3 и MVr′4, которое взвешивают по числу общих пикселей между опорным разделом Pr′1 макроблока MBrN-1 и каждым из перекрываемых опорных разделов r′1, r′2, r′3 и r′4. Такое определение состоит в вычислении предсказанного вектора движения MVp1 согласно следующему уравнению:

M V P 1 = 1 T [ k = 1 K p r ' 1 r k ' M V r ' k ]

где:

- K=4,

- T представляет собой число пикселей, образующих опорный макроблок MBrN-1

- Pr ' 1 r ' k является числом пикселей, общих между опорным разделом Pr′1 макроблока MBrN-1 и каждым из перекрываемых опорных разделов r′1, r′2, r′3 и r′4,

В примере, представленном на фиг.4, MVp1=MVr′2.

Альтернативно вышеуказанное среднее значение можно взвешивать по числу общих пикселей минус число не общих пикселей.

Другая альтернатива состоит во взвешивании среднего значения по проценту пикселей, общих между разделом Pr′1 опорного макроблока MBrN-1 и каждым из опорных разделов r′1, r′′2, r′3 и r′4.

Еще одной альтернативой является определение предсказанного вектора движения MVp1 как равного опорному вектору движения, связанному с перекрываемым опорным разделом, который имеет больше пикселей внутри Pr′1, чем снаружи Pr′1.

Согласно третьему методу, представленному со ссылкой на фиг.4, вычислительный модуль CAL:

- определяет, - для каждого из k перекрываемых опорных разделов r′1, r′2, r′3 и r′4, - коэффициент Ck (при k=4), который является функцией пространственного градиента g указанного опорного раздела Pr′1,

- выбирает коэффициент Cj (при 1≤j≤k), вычисленное значение которого является самым большим, согласно следующему уравнению:

C j = arg max k { C k } , где ( C k = 1 Pr ' 1 r k ' i = 1 Pr ' 1 r k ' g x 2 ( i ) + g y 2 ( i ) )

Этот третий метод предусматривает первую альтернативу, согласно которой вычислительный модуль CAL определяет предсказанный вектор движения MVp1 как равный опорному вектору движения, связанному с перекрываемым опорным разделом, соответствующим вычисленному коэффициенту Cj.

Этот третий метод предусматривает вторую альтернативу, согласно которой вычислительный модуль CAL определяет предсказанный вектор движения MVp1 как равный среднему значению опорных векторов движения MVr′1, MVr′2, MVr′3 и MVr′4, которое взвешивают при помощи вычисленных коэффициентов C1, C2, C3, С4.

Согласно четвертому методу, представленному со ссылкой на фиг.4, вычислительный модуль CAL в первую очередь идентифицирует отдельную точку опорного раздела Pr′1, например, его центр, обозначенный CTr′1. Центр CTr′1 вычисляют при помощи алгоритма, который минимизирует сумму расстояний относительно всех точек опорного раздела Pr′1.

После этого вычислительный модуль CAL определяет предсказанный вектор движения MVpl как равный опорному вектору движения, связанному с перекрываемым опорным разделом, который содержит выбранную отдельную точку, то есть центр CTr′1. В представленном примере центр CTr′1 содержится в опорном разделе r′2, и, следовательно, MVp1=MVr′2.

Согласно пятому методу, представленному со ссылкой на фиг.4, вычислительный модуль CAL в первую очередь идентифицирует в опорном разделе Pr′1 отдельную характеристику, связанную с содержимым изображения. В представленном примере такая характеристика показана крестиком, вставленным в изображение IN-1 и обозначенным CIr′1.

Затем вычислительный модуль CAL определяет предсказанный вектор движения MVp1 как равный опорному вектору движения, связанному с перекрываемым опорным разделом, который содержит выбранную характеристику, то есть крестик CIr′1. В представленном примере крестик CIr′l содержится в опорном разделе r′1, и, следовательно, MVp1=MVr′1.

В качестве альтернативы этому пятому методу характеристика, связанная с содержимым изображения, может быть отдельным цветом, отдельным рисунком, контуром, который пересекает опорный раздел Pr′1, или любой другой особенностью изображения, нарушающей его однородность.

По завершении указанного этапа С4 вычисления по тому или иному из вышеуказанных методов в соответствии с настоящим изобретением вычислительный модуль предсказания PREDCO выдает первый предсказанный вектор MVp1, который при его выборе кодером CO в качестве оптимального вектора движения сразу же кодируется модулем TQCO преобразования и квантования, затем декодируется модулем TQICO обратного преобразования и квантования, которые представлены на фиг.3.

Затем вышеуказанный этап С4 повторяют, чтобы предсказать другие векторы движения MVp2 и MVp3, которые соответственно связаны с разделами Р2 и P3 текущего макроблока MBN.

После различных возможных предсказаний, вычисленных вычислительным модулем предсказания PREDCO, на этапе С5, показанном на фиг.2, модуль DCNCO принятия решения, показанный на фиг.3, просматривает разбитые на разделы макроблоки изображения IN и выбирает на этом этапе С5 вариант предсказания для кодирования каждого из этих макроблоков. Среди возможных предсказаний для макроблока модуль принятия решения DCNCO выбирает оптимальное предсказание согласно критерию степени искажения, хорошо известному специалистам.

Как показано на фиг.2, каждый предсказанный макроблок кодируют на этапе С6, как указано в стандарте H264/MPEG-4 AVC.

Как показано на фиг.3, после осуществления структурного кодирования модулем DCNCO принятия решения коэффициенты остатков, если они существуют, соответствующие блокам изображения IN, направляют в модуль TQCO преобразования и квантования, где их подвергают дискретно-косинусному преобразованию и затем квантованию. После этого участки макроблоков с квантованными коэффициентами передают в модуль CE энтропийного кодирования для выработки, - вместе с другими изображениями видеопоследовательности, уже закодированными так же, как и изображение IN, - двоичного потока видео F, закодированного в соответствии с изобретением.

Закодированный двоичный поток F передают через сеть связи на удаленный терминал. Он содержит декодер DO в соответствии с настоящим изобретением, показанный на фиг.5.

Сначала двоичный поток F направляют в модуль DE энтропийного декодирования, которое является обратным кодированию, осуществляемому модулем СЕ энтропийного кодирования, показанным на фиг.3. Затем для каждого макроблока воссоздаваемого изображения коэффициенты, декодированные модулем DE, направляют в модуль QTIDO обратного квантования и преобразования.

Модуль RI воспроизведения изображения получает декодированные данные, соответствующие данным, производимым модулем DCNCO (фиг.3) на этапе С5 кодирования в соответствии с настоящим изобретением, с учетом ошибок передачи. Модуль RI осуществляет этапы D0-D6 способа декодирования в соответствии с настоящим изобретением, показанные на фиг.6. Такой способ декодирования в соответствии с настоящим изобретением можно также осуществлять при помощи программного или аппаратного обеспечения с внесением изменений в декодер, первоначально соответствующий стандарту H264/MPEG-4 AVC.

Первый этап DO представляет собой декодирование структуры закодированных данных в первом участке текущего макроблока декодируемого изображения IN. Как известно, модуль RI воспроизведения определяет на основании данных указанного участка макроблока:

- тип кодирования указанных данных, Intra или Inter: в соответствии с настоящим изобретением - Inter-кодирование,

- тип разбивки на разделы воспроизводимого макроблока, Inter 4×4, 8×8, линейный и т.д.: в описанном варианте выполнения - Inter 4×4,

- индекс оптимального предиктора, выбранного модулем DCNCO принятия решения на вышеуказанном этапе С5.

Следующий этап D1, показанный на фиг.6, представляет собой разбивку предназначенного для декодирования текущего макроблока в соответствии с разбивкой на разделы, определенной на этапе D0. Для этого, как показано на фиг.5, модуль PMBDO разбивки макроблоков на разделы, который является абсолютно аналогичным модулю, показанному на фиг.3, разбивает макроблок на множество р разделов, то есть на три раздела произвольной формы в представленном примере.

Во время этапа D2, показанного на фиг.6, модуль PMBDO разбивки на разделы передает предназначенный для декодирования текущий макроблок, который только что был разбит на р=3 разделов, в модуль PREDDO предсказания, показанный на фиг.5, который является абсолютно аналогичным модулю PREDCO предсказания кодера СО, показанного на фиг.3, и поэтому его дальнейшее подробное описание опускается.

Во время этапов D3 и D4, показанных на фиг.6, модуль PREDDO предсказания, показанный на фиг.5, исполняет такой же алгоритм, что и модуль PREDCO вышеуказанного кодера CO, чтобы получить текущий макроблок, соответствующие векторы движения которого были предсказаны согласно тому или иному из описанных выше методов.

На этапе D5 модуль DCNDO принятия решения выбирает оптимальное предсказание согласно критерию степени искажения, хорошо известному специалистам.

После этого на этапе D6 каждый предсказанный макроблок декодируют так же, как это предусмотрено стандартом H264/MPEG-4 AVC.

После декодирования всех макроблоков изображения IN, как показано на фиг.5, модуль RI воспроизведения изображения выдает на выходе декодера DO изображение IDN, соответствующее декодированию изображения IN.

Учитывая, что алгоритм предсказания, исполняемый декодером DO, по всем показателям является аналогичным алгоритму, осуществляемому кодером CO, стоимость информации, зависящая от используемых предикторов, существенно снижается.

Разумеется, описанные варианты выполнения представлены исключительно в качестве примера и не являются ограничительными, и специалист может вносить в них различные изменения, не выходя при этом за рамки изобретения.

1. Способ предсказания вектора движения текущего раздела изображения относительно вектора движения опорного раздела, имеющего такую же форму, что и текущий раздел, и принадлежащего опорному изображению, отличному от текущего изображения и предварительно разбитому в результате кодирования с последующим декодированием на множество n разделов (r'1, r'2, …, r'n), содержащий этап, на котором в случае, когда указанный опорный раздел перекрывает совокупность из k опорных разделов из указанного множества n разделов (r'1, r'2, …, r'n) опорного изображения, где k≤n, определяют указанный вектор движения текущего раздела изображения на основании функции по меньшей мере одного опорного вектора движения, принадлежащего совокупности из k опорных векторов движения (mvr'1, mvr'2, …, mvr'k), соответственно связанных с k перекрываемыми опорными разделами.

2. Способ предсказания по п.1, в котором этап определения вектора движения текущего раздела содержит этапы, на которых:
вычисляют число общих пикселей между опорным разделом и соответственно k перекрываемыми опорными разделами,
сравнивают вычисленное число общих пикселей между k перекрываемыми опорными разделами на основании заданного критерия сравнения.

3. Способ предсказания по п.2, в котором критерий сравнения основан на выборе из k опорных векторов движения, соответственно связанных с k перекрываемыми опорными разделами, опорного вектора движения, связанного с опорным разделом, в котором вычисленное число общих пикселей является наибольшим.

4. Способ предсказания по п.2, в котором критерий сравнения основан на взвешивании, при помощи вычисленного числа общих пикселей, среднего значения из k опорных векторов движения, соответственно связанных с k перекрываемыми опорными разделами.

5. Способ предсказания по п.2, в котором критерий сравнения основан на выборе из k опорных векторов движения, соответственно связанных с k перекрываемыми опорными разделами, опорного вектора движения, связанного с перекрываемым опорным разделом, имеющим больше пикселей внутри опорного раздела, чем вне опорного раздела.

6. Способ предсказания по п.1, в котором определение вектора движения текущего раздела содержит этапы, на которых:
вычисляют для каждого из k перекрываемых опорных разделов коэффициент, являющийся функцией пространственного градиента указанного опорного раздела,
выбирают коэффициент, имеющий наибольшее вычисленное значение,
выбирают опорный вектор движения, соответствующий перекрываемому опорному разделу с выбранным коэффициентом.

7. Способ предсказания по п.1, в котором этап определения вектора движения текущего раздела содержит этапы, на которых:
вычисляют для каждого из k перекрываемых опорных разделов коэффициент, являющийся функцией пространственного градиента указанного опорного раздела,
вычисляют среднее значения из k опорных векторов движения, соответственно связанных с k перекрываемыми опорными разделами, при этом указанное среднее значение взвешивают при помощи указанных k вычисленных коэффициентов.

8. Способ предсказания по п.1, в котором этап определения вектора движения текущего раздела содержит этапы, на которых:
выбирают отдельную точку опорного раздела,
выбирают опорный вектор движения, связанный с перекрываемым опорным разделом, содержащим выбранную отдельную точку.

9. Способ предсказания по п.1, в котором этап определения вектора движения текущего раздела содержит этапы, на которых:
идентифицируют в опорном разделе характеристику, связанную с содержимым изображения,
выбирают опорный вектор движения, связанный с перекрываемым опорным разделом, содержащим указанную характеристику.

10. Способ кодирования изображения или последовательности изображений, характеризующийся тем, что генерируют поток (F) данных, содержащий данные, характеризующие по меньшей мере один раздел изображения, при этом способ содержит этап предсказания вектора движения указанного раздела изображения,
причем указанное предсказание осуществляют согласно способу предсказания по любому из пп.1-9.

11. Способ декодирования потока (F) данных, характеризующего изображение или последовательность изображений, при этом указанный поток содержит данные, характеризующие по меньшей мере один раздел изображения, при этом указанный способ содержит этап предсказания вектора движения указанного раздела изображения,
причем указанное предсказание осуществляют согласно способу предсказания по любому из пп.1-9.

12. Устройство (PREDCO) предсказания вектора движения текущего раздела изображения относительно вектора движения опорного раздела, имеющего такую же форму, что и указанный текущий раздел, и принадлежащего опорному изображению, отличному от текущего изображения и предварительно разбитому в результате кодирования с последующим декодированием на множество n разделов (r'1, r'2, …, r'n),
при этом в случае, когда опорный раздел перекрывает совокупность из k опорных разделов из указанного множества n разделов (r'1, r'2, …, r'n) опорного изображения, где k≤n, устройство предсказания содержит вычислительный модуль (CAL), выполненный с возможностью определения указанного вектора движения текущего раздела изображения на основании функции по меньшей мере одного опорного вектора движения, принадлежащего совокупности из k опорных векторов движения (mvr'1, mvr'2, …, mvr'k), соответственно связанных с k перекрываемыми опорными разделами.

13. Устройство (CO) кодирования изображения или последовательности изображений, характеризующееся тем, что выполнено с возможностью генерирования потока (F) данных, содержащего данные, характеризующие по меньшей мере один раздел изображения, при этом указанное устройство содержит средства предсказания вектора движения указанного раздела изображения,
причем указанные средства предсказания содержатся в устройстве (PREDCO) предсказания, соответствующем устройству по п.12.

14. Устройство (DO) декодирования потока (F) данных, характеризующееся тем, что указанный поток данных характеризует изображение или последовательность изображений, при этом указанный поток (F) данных содержит данные, характеризующие по меньшей мере один раздел изображения, при этом указанное устройство содержит средства предсказания вектора движения указанного раздела изображения,
причем указанные средства предсказания содержатся в устройстве (PREDDO) предсказания, соответствующем устройству по п.12.

15. Компьютерная программа, содержащая команды для выполнения одного из способов по любому из пп.1-11 при ее исполнении компьютером.



 

Похожие патенты:

Изобретение относится к области кодирования/декодирования фильмов с предсказанием вектора движения. Технический результат - улучшение эффективности предсказания и кодирования фильмов.

Изобретение относится к вычислительной технике, а именно к области обработки изображений. Техническим результатом является повышение эффективности кодирования изображений.

Изобретение относится к средствам видеоконтроля. Техническим результатом является обеспечение пользователей возможностью осуществления видеоконтроля контрольной точки посредством мобильного терминала.

Изобретение относится к области кодирования/декодирования сигналов изображений. Техническим результатом является увеличение эффективности кодирования в случае затухания.

Изобретение относится к вычислительной технике. Техническим результатом является повышение защиты потока незашифрованных изображений.

Изобретение относится к вычислительной технике. Технический результат заключается в сжатии без визуальных потерь.

Изобретение относится к средствам оцифровки изображения кадра. Техническим результатом является выполнение оцифровывания кадра не тремя преобразователями в каждом элементе матрицы, а одним преобразователем в каждом элементе матрицы, выполняющем за период кадра параллельно и синхронно три последовательных преобразования цветов R, G, В по 15 бит каждое, и оцифровывание изображения заканчивается с окончанием периода кадра.

Изобретение относится к вычислительной технике. Технический результат заключается в устранении потери целостности изображения, повышении эффективности сжатия изображений, содержащих большие участки одного тона или градиента, и сохранении контрастности границ между различными объектами изображения.

Группа изобретений относится к кодированию и декодированию изображений с использованием процедуры генерации прогнозируемого значения пикселя. Техническим результатом является повышение эффективности кодирования и декодирования и дополнительно сокращение релевантного объема кода.

Изобретение относится к области обработки растровых изображений, а именно к способам сжимающего кодирования и декодирования для систем связи и хранения растровых изображений.

Изобретение относится к кодированию сигналов трехмерного видеоизображения, а именно к транспортному формату, используемому для транслирования трехмерного контента. Технический результат заключается в повышении качества трехмерных изображений при высоком количестве используемых представлений. Технический результат достигается за счет устройства, которое отличается тем, что содержит средство для формирования потока, структурированного на несколько уровней: уровень 0, содержащий два независимых слоя: базовый слой, содержащий видеоданные правого изображения, и слой расширения уровня 0, содержащий видеоданные левого изображения, или наоборот, уровень 1, содержащий два независимых слоя расширения: первый слой расширения уровня 1, содержащий карту глубин, относящуюся к изображению базового слоя, второй слой расширения уровня 1, содержащий карту глубин, относящуюся к изображению слоя расширения уровня 0, уровень 2, содержащий слой расширения уровня 2, содержащий данные перекрытия, относящиеся к изображению базового слоя. 2 н. и 4 з.п. ф-лы, 2 ил.

Изобретение относится к кодированию видео и декодированию видео, которые выполняют преобразование между пространственной областью и областью преобразования. Техническим результатом является повышение эффективности сжатия изображения и, соответственно, повышение эффективности кодирования и декодирования видео. В способе кодирования видео разбивают картинки видео на блоки кодирования, имеющие максимальный размер. Кодируют картинки на основании блоков кодирования согласно глубинам, которые получены иерархическим разбиением каждого максимального блока кодирования по глубинам, и на основании типа раздела, определенного согласно глубинам блоков кодирования по глубинам. При этом тип раздела включает в себя блок данных, имеющий такой же размер, как текущий блок кодирования, и частичный блок данных, полученный разбиением высоты или ширины текущего блока кодирования. Определяют блоки кодирования согласно кодовым глубинам в отношении каждого из блоков кодирования по глубинам, и таким образом, определяют блоки кодирования, имеющие древовидную структуру. Выводят кодированные данные. 6 н. и 9 з.п. ф-лы, 15 ил., 1 табл.

Изобретение относится к технологиям кодирования изображений. Техническим результатом является повышение качества структурного изображения биообъекта в оптической когерентной томографии, а именно значения отношения сигнал/шум за счет растровых усреднений. Заявлен способ получения структурного изображения биообъекта в оптической когерентной томографии. Согласно способу осуществляют разбиение исходного цветного видеокадра на неперекрывающиеся пространственные блоки, состоящие более чем из одного пикселя. Структурное изображение получают посредством метода малоуглового растрового сканирования в плече образца оптического когерентного томографа. Полученное изображение размером Pисх байт разбивается на неперекрывающиеся пространственные блоки только по столбцам, соседние блоки-столбцы попиксельно усредняются, формируя при этом новое изображение размером Pстл байт, новое изображение разбивается на неперекрывающиеся пространственные блоки только по строкам, соседние блоки-строки попиксельно усредняются, формируя при этом результирующее изображение размером Pрез байт, и процесс усреднения контролируется по экспоненциальной зависимости Pстл от числа усреднений блоков-столбцов - Uстл и Pрез от числа усреднений блоков-строк - Uстр. 7 ил.

Изобретение относится к средствам оцифровки изображения кадра. Техническим результатом является повышение разрешения кадра посредством выполнения элементов матрицы преобразователями “яркость излучения цветов R, G, B - три кода”, выдающими синхронно коды трех цветов R, G, B. Устройство содержит объектив, приемник изображения, включающий матрицу элементов по числу разрешения кадра 106, расположенную в фокальной плоскости объектива и имеющую три группы выходов кодов цветов R, G, B, включает три блока регистров и генератор управляющих сигналов, выдающий с первого выхода импульсы частоты кадров /25 Гц/, подключенный к управляющим входам в элементах матрицы, со второго выхода - импульсы частоты дискретизации кодов, подключенные параллельно ко вторым управляющим входам первого - третьего блоков регистров. 5 ил., 1 табл.

Изобретение относится к средствам оцифровки изображения кадра. Техническим результатом является повышение скорости оцифровки кадра. Устройство содержит объектив, приемник изображения, содержащий матрицу, расположенную в фокальной плоскости объектива, из элементов, являющихся преобразователями излучения в коды по числу разрешения кадра 106, каждый из которых включает непрозрачный корпус, в передней части которого в перегородке расположен микрообъектив, по оптической оси которого и под углом 45° к ней последовательно друг за другом расположены и жестко закреплены по числу разрядов в коде полупрозрачные микрозеркала, каждое впереди расположенное микрозеркало пропускает на следующее за ним поток излучения, ослабленный в два раза. 1 табл., 4 ил.

Изобретение относится к технологии оцифровывания изображения кадра. Техническим результатом является повышение разрешения кадра изображения за счет осуществления преобразования трех цветов R, G, B в коды посредством одного преобразователя. Предложено устройство оцифровывания изображения кадра. Заявленное устройство содержит объектив, в фокальной плоскости которого расположен приемник изображения, имеющий матрицу элементов, генератор управляющих сигналов и три блока регистров, выходы которых являются выходами устройства оцифровывания. Каждый элемент матрицы выполнен преобразователем «излучение цветов R, G, B - три кода». При этом в приемник вводят изображения по числу элементов в матрице и числу цветов R, G, В аналого-цифровых преобразователей (АЦП). 4 ил., 2 табл.

Изобретение относится к средствам оцифровки изображения кадра. Техническим результатом является снижение поперечных размеров элементов матрицы в приемнике изображения, позволяющее уменьшить размеры формата кадра или увеличить разрешение приемника изображения. Технический результат достигается за счет выполнения каждого элемента матрицы в приемнике изображения из одного преобразователя “яркость излучения цветов R, G, B - коды”, выполняющего параллельное синхронное преобразование излучений трех цветов аналоговых видеосигналов R, G, B в три кода. Устройство оцифровки изображения кадра включает объектив, приемник изображения, содержащий матрицу элементов, три блока ключей, три блока регистров и генератор управляющих сигналов, причем в каждый блок ключей введены шифраторы по числу преобразователей. 6 ил., 1 табл.

Изобретение относится к вычислительной технике. Технический результат заключается в сокращении времени сжатия графического файла фрактальным методом. Способ сжатия графического файла фрактальным методом с использованием кольцевой классификации сегментов, в котором графический файл разбивают на ранговые области и домены, и для каждой ранговой области находят домен и соответствующее аффинное преобразование, которое наилучшим образом приближает его к соответствующей ранговой области, и, используя полученные значения параметров доменов, включающие их координаты, коэффициенты аффинных преобразований, значения яркости и контрастности, формируют архив, причем вводят классификацию доменов и ранговых областей, основанную на выделении в них «колец» и расчете математического ожидания интенсивностей пикселей данных «колец», позволяющую сократить сложность этапа соотнесения сегментов и ускорить сжатие. 3 ил.

Изобретение относится к устройству обработки изображений и способу, которые могут улучшить эффективность кодирования, предотвращая увеличение нагрузки. Технический результат заключается в снижении нагрузки с точки зрения объема обработки за счет пространственного повышения частоты выборки уровня основания для кодирования текущего кадра. Технический результат достигается за счет того, что схема 71 выделения из схемы 64 прогнозирования путем фильтрации выделяет изображения компенсации движения для генерирования изображения прогнозирования на уровне расширения с высоким разрешением из опорных кадров на уровне основания с низким разрешением. Схема 72 фильтрации схемы 64 прогнозирования путем фильтрации выполняет фильтрацию, которая включает в себя преобразование с повышением частоты и которая использует анализ в направлении времени множества изображений компенсации движения на уровне основания, выделенном схемой 71 выделения, чтобы сгенерировать изображение прогнозирования на уровне расширения. 2 н. и 17 з.п. ф-лы, 26 ил.

Изобретение относится к средствам ввода, обработки и вывода видеоданных. Техническим результатом является повышение эффективности использования внутренней памяти независимо от типа алгоритмов обработки видеоданных. В способе на этапе ввода входное растровое видеоизображение в виде потока кадров построчно сохраняют во входном буфере строк, разбивают кадры на входные микроблоки, сжимают и сохраняют входные микроблоки во внешней памяти, на этапе обработки считывают входные микроблоки из внешней памяти, разжимают и записывают входные микроблоки во внутреннюю память, формируют растровые макроблоки, обрабатывают растровые макроблоки посредством процессоров обработки. 2 н. и 20 з.п. ф-лы, 2 ил.
Наверх