×
10.06.2015
216.013.5423

Результат интеллектуальной деятельности: СПОСОБ И УСТРОЙСТВО ДЛЯ ПОСТРОЕНИЯ СПИСКА ВЕКТОРОВ ДВИЖЕНИЯ ДЛЯ ПРЕДСКАЗАНИЯ ВЕКТОРОВ ДВИЖЕНИЯ

Вид РИД

Изобретение

№ охранного документа
0002553060
Дата охранного документа
10.06.2015
Аннотация: Настоящее изобретение относится к области кодирования видео. Технический результат - повышение эффективности сжатия при кодировании за счет возможности параллельной обработки, по меньшей мере, двух единиц предсказания в одной и той же единице кодирования. Способ построения списка векторов движения для предсказания векторов движения содержит: получение соседних в пространстве блоков относительно текущего блока предсказания, причем текущий блок предсказания расположен внутри текущей единицы кодирования; определение доступных соседних блоков относительно текущего блока предсказания в соответствии с типом разделения текущей единицы кодирования, причем доступные соседние блоки расположены за пределами текущей единицы кодирования; получение предикторов векторов движения из доступных соседних блоков в предварительно заданной последовательности в соответствии с предикторами векторов движения доступных соседних блоков и добавление получаемых предикторов векторов движения в список векторов движения. 2 н. и 14 з.п. ф-лы, 10 ил.

[0001]

ОБЛАСТЬ ТЕХНИКИ

[0002] Настоящее изобретение относится к области кодирования видео и, в частности, к способу и устройству для построения списка векторов движения для предсказания векторов движения.

УРОВЕНЬ ТЕХНИКИ

[0003] Технология межкадрового предсказания в HEVC (High Efficiency Video Coding, стандарт высокоэффективного кодирования видео) заимствовала стандартный способ MCP (Motion Compensated Prediction, предсказание с компенсацией движения). Для предсказания векторов движения в HEVC заимствован способ конкуренции множества векторов движения, который повышает точность предсказания векторов движения, тем самым повышая эффективность сжатия при кодировании.

[0004] Режим межкадрового предсказания HEVC может включать, но не ограничиваясь этим, режим объединения (merge mode), режим пропуска (skip mode) и так далее, в них во всех используют конкуренцию множества векторов движения для того, чтобы осуществлять межкадровое предсказание. Список векторов движения используют, когда осуществляют предсказание векторов движения. Для режима объединения и режима пропуска допустимо, что список векторов движения содержит предикторы четырех наибольших пространственных векторов движения и один временной предиктор вектора движения, причем режим объединения и режим пропуска совместно используют один список векторов движения. Кодировщик выбирает наилучший предиктор вектора движения из списка векторов движения в качестве предиктора вектора движения текущей PU (Prediction Unit, единица предсказания (которую можно далее в настоящем документе называть блоком предсказания)).

[0005] Способ построения списка векторов движения может включать:

[0006] Как показано на фиг. 1, соседние в пространстве блоки текущего PU могут включать: соседний блок A0 (нижний левый опорный блок, соответствующий нижнему левому угловому положению текущей PU), соседний блок A1 (левый опорный блок, соответствующий нижнему левому угловому положению текущей PU), соседний блок B0 (верхний правый опорный блок, соответствующий верхнему правому угловому положению текущей PU), соседний блок B1 (верхний опорный блок, соответствующий верхнему правому угловому положению текущей PU) и соседний блок B2 (верхний левый опорный блок, соответствующий верхнему левому положению текущей PU). TMVP (Temporal Motion Vector predictor, временной предиктор вектора движения) представляет собой предиктор вектора движения, соответствующий текущей PU во временной области.

[0007] Сначала предикторы векторов движения последовательно получают из соседних блоков и TMVP в последовательности из соседнего блока A1, соседнего блока B1, соседнего блока B0, соседнего блока A0, соседнего блока B2 и TMVP. Затем получаемые предикторы векторов движения добавляют в список векторов движения согласно правилу в HEVC. Конкретный способ построения списка векторов движения представляют собой технологию, хорошо известную специалистам в данной области, так что подробности не будут снова изложены в настоящем документе.

[0008] Кроме того, текущая CU (Coding Unit, единица кодирования (которую можно далее в настоящем документе называть единицей кодирования)) может включать по меньшей мере две PU, а списки векторов движения по меньшей мере двух PU строят по порядку.

[0009] Во время реализации упомянутого выше способа построения списка векторов движения обнаружено, что в известном уровне техники имеет место по меньшей мере следующая проблема: если текущая CU содержит по меньшей мере две PU, а списков векторов движения из по меньшей мере двух PU строят по порядку, скорость построения списков векторов движения из по меньшей мере двух PU в одной и той же CU является низкой, тем самым снижая возможность параллельной обработки.

КРАТКОЕ ИЗЛОЖЕНИЕ СУЩЕСТВА ИЗОБРЕТЕНИЯ

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

[0011] Для того чтобы решить упомянутую выше задачу, следующие технические решения использованы в вариантах осуществления настоящего изобретения.

[0012] В одном из аспектов предусмотрен способ построения списка векторов движения для предсказания векторов движения, который включает в себя:

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

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

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

[0013] В другом аспекте предоставлено устройство для построения списка векторов движения для предсказания векторов движения, который содержит:

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

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

[0014] В способе и устройстве для построения списка векторов движения для предсказания векторов движения, предусмотренных в вариантах осуществления настоящего изобретения, посредством приведенных выше решений, когда строят список векторов движения блока предсказания, сначала получают соседние в пространстве блоки относительно текущего блока предсказания, причем текущий блок предсказания расположен внутри текущей единицы кодирования; доступные соседние блоки относительно текущего блока предсказания определяют в соответствии с типом разделения текущей единицы кодирования, причем доступные соседние блоки расположены за пределами текущей единицы кодирования; и предикторы векторов движения получают из доступных соседних блоков в предварительно заданной последовательности в соответствии с предикторами векторов движения доступных соседних блоков, и получаемые предикторы векторов движения добавляют в список векторов движения. Таким образом, когда строят список векторов движения блока предсказания, не учитывают соседний блок, расположенный внутри текущей единицы кодирования. Когда единица кодирования содержит по меньшей мере два блока предсказания, списки векторов движения по меньшей мере двух блоков предсказания можно строить параллельно, что увеличивает скорость построения списков векторов движения по меньшей мере двух блоков предсказания в одной и той же единице кодирования и увеличивает возможность параллельной обработки.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

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

[0016] На фиг. 1 представлена схематическая структурная диаграмма единицы кодирования CU, PU и соседних блоков согласно одному из вариантов осуществления.

[0017] На фиг. 2a-2g представлены схематические структурные диаграммы единицы кодирования CU с различными типами разделения согласно одному из вариантов осуществления.

[0018] На фиг. 3 представлена блок-схема способа построения списка векторов движения для предсказания векторов движения согласно одному из вариантов осуществления; и

[0019] на фиг. 4 представлена схематическая структурная диаграмма устройства для построения списка векторов движения для предсказания векторов движения согласно одному из вариантов осуществления.

ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ

[0020] Далее ясно и в полной мере описаны технические решения в вариантах осуществления настоящего изобретения со ссылкой на сопроводительные чертежи в вариантах осуществления настоящего изобретения. Очевидно, описанные варианты осуществления представляют собой лишь часть, а не все варианты осуществления настоящего изобретения. Все другие варианты осуществления, которые получит специалист в данной области, основываясь на вариантах осуществления настоящего изобретения, без творческих усилий входят в объем защиты настоящего изобретения.

[0021] В известном уровне техники CU может содержать по меньшей мере две PU, а списки векторов движения по меньшей мере двух PU строят по порядку. То есть после построения списка векторов движения строят для текущей PU, начинают строить список векторов движения для следующей PU.

[0022] Конкретный способ может включать:

[0023] Как показано на фиг. 2a-2g, CU (сплошная рамка на чертежах) дополнительно можно разделять на множество PU. В HEVC CU может иметь семь типов разделения (partition). Например, в типах разделения, представленных на фиг. 2a-2c, текущая CU разделена на две PU (PU1 и PU2) на левой и правой сторонах. В качестве другого примера в типе разделения, представленном на фиг. 2d, текущая CU разделена на четыре PU (PU1, PU2, PU3 и PU4), а другие типы не описаны в настоящем документе.

[0024] Взяв разделение, представленное на фиг. 2a, в качестве примера, поскольку пространственный опорный блок A1 для PU2 расположен внутри PU1, список векторов движения в PU2 можно начинать строить только после завершения кодирования PU1, причем списки векторов движения в PU1 и PU2 строят по порядку. В частности, список векторов движения в PU1 сначала строят согласно приведенному выше способу, а затем список векторов движения в PU2 строят согласно приведенному выше способу.

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

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

[0027] 301: Получить соседние в пространстве блоки относительно текущего блока предсказания, причем текущий блок предсказания расположен внутри текущей единицы кодирования.

[0028] 302: Определить доступные соседние блоки относительно текущего блока предсказания в соответствии с типом разделения текущей единицы кодирования, причем доступные соседние блоки расположены за пределами текущей единицы кодирования.

[0029] 303: Получить предикторы векторов движения из доступных соседних блоков в предварительно заданной последовательности в соответствии с предикторами векторов движения доступных соседних блоков и добавить получаемые предикторы векторов движения в список векторов движения.

[0030] Посредством приведенного выше решения, при построении списка векторов движения блока предсказания, сначала получают соседние в пространстве блоки относительно текущего блока предсказания, причем текущий блок предсказания расположен внутри текущей единицы кодирования; доступные соседние блоки относительно текущего блока предсказания определяют в соответствии с типом разделения текущей единицы кодирования, причем доступные соседние блоки расположены за пределами текущей единицы кодирования; и предикторы векторов движения получают из доступных соседних блоков в предварительно заданной последовательности в соответствии с предикторами векторов движения доступных соседних блоков, и получаемые предикторы векторов движения добавляют в список векторов движения. Таким образом, когда строят список векторов движения блока предсказания, не учитывают соседний блок, расположенный внутри текущей единицы кодирования. Когда единица кодирования содержит по меньшей мере два блока предсказания, списки векторов движения по меньшей мере двух блоков предсказания можно строить параллельно, что увеличивает скорость построения списков векторов движения по меньшей мере двух блоков предсказания в одной и той же единице кодирования и повышает возможность параллельной обработки.

[0031] Другой способ построения списка векторов движения для предсказания векторов движения предоставлен в одном из вариантов осуществления, и способ представляет собой дальнейшее расширение способа, представленного на фиг. 3. Как показано на фиг. 3, способ может включать:

[0032] 301: Получить соседние в пространстве блоки относительно текущего блока предсказания, причем текущий блок предсказания расположен внутри текущей единицы кодирования.

[0033] Как показано на фиг. 1, соседние в пространстве блоки относительно блока предсказания могут содержать: соседний блок A0, расположенный на нижней левой стороне относительно блока предсказания, соседний блок A1, расположенный на левой стороне относительно блока предсказания, соседний блок B0 на верхней правой стороне относительно блока предсказания, соседний блок B1 на верхней стороне относительно блока предсказания, и соседний блок B2 на верхней левой стороне относительно блока предсказания.

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

[0035] 302: Определить доступные соседние блоки относительно текущего блока предсказания в соответствии с типом разделения текущей единицы кодирования, причем доступные соседние блоки расположены за пределами текущей единицы кодирования.

[0036] Кроме того, как показано на фиг. 2e-2g, если текущая единица кодирования CU разделена на первый блок предсказания PU1 и второй блок предсказания PU2 на верхней и нижней сторонах, и текущий блок предсказания представляет собой второй блок предсказания PU2, доступные соседние блоки относительно PU2 включают: соседний блок A0, соседний блок A1, соседний блок B0 и соседний блок B2 относительно второго блока предсказания. В этот момент соседний блок В1 расположен внутри текущей единицы кодирования CU и не действует в качестве доступного соседнего блока относительно второго блока предсказания PU2.

[0037] Как показано на фиг. 2a-2c, если текущая единица кодирования CU разделена на первый блок предсказания PU1 и второй блок предсказания PU2 на левой и правой сторонах, и текущий блок предсказания представляет собой второй блок предсказания PU2, доступные соседние блоки PU2 включают: соседний блок A0, соседний блок B0, соседний блок B1 и соседний блок B2 относительно второго блока предсказания PU2. В этот момент соседний блок A1 расположен внутри текущей единицы кодирования CU и не действует в качестве доступного соседнего блока относительно второго блока предсказания PU2.

[0038] Кроме того, доступные соседние блоки можно определять посредством использования флаговых битов соседних блоков. Флаговые биты можно, но без ограничения, использовать для того, чтобы идентифицировать, что соседние блоки не расположены внутри CU.

[0039] Способ определения доступных соседних блоков посредством использования флагового бита(ов) соседних блоков не ограничен в этом варианте осуществления, и технология хорошо известна специалисту в данной области, так что подробности не описаны еще раз в настоящем документе.

[0040] 303: Получить предикторы векторов движения из доступных соседних блоков в предварительно заданной последовательности в соответствии с предикторами векторов движения доступных соседних блоков и добавить получаемые предикторы векторов движения в список векторов движения.

[0041] Кроме того, получение предикторов векторов движения из доступных соседних блоков в предварительно заданной последовательности может включать:

если доступные соседние блоки представляют собой блоки межкадрового кодирования, получение предикторов векторов движения из доступных соседних блоков в последовательности из соседнего блока A1, соседнего блока B1, соседнего блока B0, соседнего блока A0 и соседнего блока B2.

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

[0043] В частности, если доступные соседние блоки относительно блока предсказания включают: соседний блок A0, соседний блок A1, соседний блок B0 и соседний блок B2 относительно второго блока предсказания, предикторы векторов движения получают из соседнего блока A0, соседнего блока A1, соседнего блока B0 и соседнего блока B2 в последовательности из соседнего блока A0, соседнего блока A1, соседнего блока B0 и соседнего блока B2. Ввиду приведенного выше, когда текущая CU разделена на первый и второй блоки предсказания на верхней и нижней сторонах, доступные соседние блоки относительно второго блока предсказания не включают соседний блок B1, расположенный внутри первого блока предсказания. Следовательно, предиктор вектора движения из B1 не получают.

[0044] Если доступные соседние блоки относительно блока предсказания включают: соседний блок A0, соседний блок B0, соседний блок B1 и соседний блок B2 относительно второго блока предсказания PU2, предикторы векторов движения получают из соседнего блока A0, соседнего блока B0, соседнего блока B1 и соседнего блока B2 в последовательности из соседнего блока A0, соседнего блока B0, соседнего блока B1 и соседнего блока B2. Ввиду приведенного выше, когда текущая CU разделена на первый и второй блоки предсказания на левой и правой сторонах, доступные соседние блоки относительно второго блока предсказания не включают соседний блок A1, расположенный внутри первого блока предсказания. Следовательно, предиктор вектора движения из A1 не получают.

[0045] Кроме того, если получаемый предиктор вектора движения представляет собой предиктор вектора движения текущего доступного соседнего блока, добавление получаемых предикторов векторов движения в список векторов движения включает:

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

[0046] Ввиду приведенного выше, во время приведенного выше способа, поскольку доступные соседние блоки не включают соседний блок, расположенный внутри текущей CU, множество PU из CU не имеют зависимости и их можно исполнять параллельно. Например, когда текущая CU разделена на первый и второй блоки предсказания на левой и правой сторонах, доступные соседние блоки относительно второго блока предсказания не включают соседний блок A1, расположенный внутри первого блока предсказания, и предиктор вектора движения A1 не вовлечен в процесс определения. Следовательно, для второго блока предсказания и первого блока предсказания способ можно исполнять параллельно.

[0047] В частности, в качестве типа реализации варианта осуществления, если текущий доступный соседний блок представляет собой соседний блок B1, то определяют, является ли предиктор вектора движения соседнего блока B1 таким же, как предиктор вектора движения соседнего блока A1;

если текущий доступный соседний блок представляет собой соседний блок B0, то определяют, является ли предиктор вектора движения соседнего блока B0 таким же, как предиктор вектора движения соседнего блока B1;

если текущий доступный соседний блок представляет собой соседний блок A0, то определяют, является ли предиктор вектора движения соседнего блока A0 таким же, как предиктор вектора движения соседнего блока A1; и

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

[0048] Кроме того, если получаемый предиктор вектора движения представляет собой предиктор вектора движения текущего доступного соседнего блока, то добавление получаемых предикторов векторов движения в список векторов движения дополнительно может включать:

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

[0049] В частности, в качестве типа реализации варианта осуществления, если текущий доступный соседний блок представляет собой соседний блок В1, то определяют, является ли предиктор вектора движения соседнего блока B1 таким же, как предиктор вектора движения соседнего блока A1, который добавлен в список векторов движения;

если текущий доступный соседний блок представляет собой соседний блок B0, то определяют, является ли предиктор вектора движения соседнего блока B0 таким же, как предиктор вектора движения соседнего блока B1, который добавлен в список векторов движения;

если текущий доступный соседний блок представляет собой соседний блок A0, то определяют, является ли предиктор вектора движения соседнего блока A0 таким же, как предиктор вектора движения соседнего блока A1, который добавлен в список векторов движения; и

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

[0050] Кроме того, TMVP дополнительно можно принимать во внимание во время построения списка векторов движения.

[0051] В качестве типа реализации варианта осуществления получение предикторов векторов движения из доступных соседних блоков в предварительно заданной последовательности дополнительно может представлять собой: получение предикторов векторов движения из доступных соседних блоков и/или TMVP в последовательности из соседнего блока A1, соседнего блока B1, соседнего блока B0, соседнего блока A0, соседнего блока B2 и TMVP.

[0052] Для того чтобы описать решение по настоящему изобретению более ясно, способ построения списка векторов движения для CU с различными типами разделения конкретно описаны ниже.

[0053] 1. CU разделена на PU1 и PU2 на левой и правой сторонах

[0054] (1) Строить список векторов движения PU1

[0055] 1) Получать предикторы векторов движения из соседнего блока A1, соседнего блока B1, соседнего блока B0, соседнего блока A0 и соседнего блока B2 в последовательности из соседнего блока A1, соседнего блока B1, соседнего блока B0, соседнего блока A0 и соседнего блока B2 и добавлять их в список векторов движения.

[0056] a. Когда текущий соседний блок представляет собой соседний блок A1 и только когда соседний блок A1 содержит предиктор вектора движения, добавлять предиктор вектора движения соседнего блока A1 в список векторов движения;

b. Когда текущий соседний блок представляет собой соседний блок B1 и только когда соседний блок B1 содержит предиктор вектора движения, и предиктор отличается от предиктора вектора движения соседнего блока A1, который добавлен в список векторов движения, добавлять предиктор вектора движения соседнего блока B1 в список векторов движения;

c. Когда текущий соседний блок представляет собой соседний блок B0 и только когда соседний блок B0 содержит предиктор вектора движения, и предиктор отличается от предиктора вектора движения соседнего блока B1, который добавлен в список векторов движения, добавлять предиктор вектора движения соседнего блока B0 в список векторов движения;

d. Когда текущий соседний блок представляет собой соседний блок A0 и только когда соседний блок A0 содержит предиктор вектора движения, и предиктор отличается от предиктора вектора движения соседнего блока A1, который добавлен в список векторов движения, добавлять предиктор вектора движения соседнего блока A0 в список векторов движения; и

e. Когда текущий соседний блок представляет собой соседний блок B2 и только когда соседний блок B2 содержит предиктор вектора движения, предиктор отличается как от предиктора вектора движения соседнего блока A1, который добавлен в список векторов движения, так и от предиктора вектора движения соседнего блока B1, который добавлен в список векторов движения, и предиктор вектора движения по меньшей мере одного из соседнего блока A1, соседнего блока B1, соседнего блока B0 и соседнего блока A0 не добавлен в список векторов движения, добавлять предиктор вектора движения соседнего блока B2 в список векторов движения.

[0057] 2) Получать TMVP и добавлять его в список векторов движения. В частности, TMVP для PU1 получают посредством использования временного опорного изображения PU1, и если TMVP для PU1 доступен, TMVP добавляют в список векторов движения.

[0058] (2) Строить список векторов движения PU2

[0059] 1) Получать предикторы векторов движения из соседнего блока B1, соседнего блока B0, соседнего блока A0 и соседнего блока B2 в последовательности из соседнего блока B1, соседнего блока B0, соседнего блока A0 и соседнего блока B2 и добавлять их в список векторов движения.

[0060] a. Когда текущий соседний блок представляет собой соседний блок B1 и только когда соседний блок B1 содержит предиктор вектора движения, добавлять предиктор вектора движения соседнего блока B1 в список векторов движения;

b. Когда текущий соседний блок представляет собой соседний блок B0 и только когда соседний блок B0 содержит предиктор вектора движения и значение предсказания отличается от предиктора вектора движения соседнего блока В1, который добавлен в список векторов движения, добавлять предиктор вектора движения соседнего блока B0 в список векторов движения;

c. Когда текущий соседний блок представляет собой соседний блок A0 и только когда соседний блок A0 содержит предиктор вектора движения, добавлять предиктор вектора движения соседнего блока A0 в список векторов движения; и

d. Когда текущий соседний блок представляет собой соседний блок B2 и только когда соседний блок B2 содержит предиктор вектора движения и предиктор отличается от предиктора вектора движения соседнего блока B1, который добавлен в список векторов движения, добавлять предиктор вектора движения соседнего блока B2 в список векторов движения.

[0061] 2) Получать TMVP и добавлять его в список векторов движения. В частности, TMVP для PU1 получают посредством использования временного опорного изображения PU1, и если TMVP для PU1 доступен, TMVP добавляют в список векторов движения.

[0062] В этот момент, поскольку, когда строят список векторов движения PU2, соседний блок A1 из PU2 не учитывают, списки векторов движения в PU1 и PU2 можно строить параллельно.

[0063] 2. CU разделена на PU1 и PU2 на верхней и нижней сторонах

[0064] (1) Строить список векторов движения PU1

[0065] Это похоже на способ «(1) Строить список векторов движения PU1» в «1. CU разделена на PU1 и PU2 на левой и правой сторонах», так что подробности не описаны еще раз в настоящем документе.

[0066] (2) Строить список векторов движения PU2

[0067] 1) Получать предикторы векторов движения из соседнего блока B1, соседнего блока B0, соседнего блока A0 и соседнего блока B2 в последовательности из соседнего блока B1, соседнего блока B0, соседнего блока A0 и соседнего блока B2 и добавлять их в список векторов движения.

[0068] a. Когда текущий соседний блок представляет собой соседний блок A1 и только когда соседний блок A1 содержит предиктор вектора движения, добавлять предиктор вектора движения соседнего блока A1 в список векторов движения;

b. Когда текущий соседний блок представляет собой соседний блок B0 и только когда соседний блок B0 содержит предиктор вектора движения, добавлять предиктор вектора движения соседнего блока B0 в список векторов движения;

c. Когда текущий соседний блок представляет собой соседний блок A0 и только когда соседний блок A0 содержит предиктор вектора движения, и предиктор отличается от предиктора вектора движения соседнего блока A1, который добавлен в список векторов движения, добавлять предиктор вектора движения соседнего блока A0 в список векторов движения; и

d. Когда текущий соседний блок представляет собой соседний блок B2 и только когда соседний блок B2 содержит предиктор вектора движения, и предиктор отличается от предиктора вектора движения соседнего блока A1, который добавлен в список векторов движения, добавлять предиктор вектора движения соседнего блока B2 в список векторов движения.

[0069] 2) Получать TMVP и добавлять его в список векторов движения. В частности, TMVP для PU1 получают посредством использования временного опорного изображения PU1, и если TMVP для PU1 доступен, TMVP добавляют в список векторов движения.

[0070] В этот момент, поскольку когда строят список векторов движения PU2, не учитывают соседний блок B1 из PU2, списки векторов движения в PU1 и PU2 можно строить параллельно.

[0071] Посредством приведенного выше решения, когда строят список векторов движения блока предсказания, сначала получают соседние в пространстве блоки относительно текущего блока предсказания, причем текущий блок предсказания расположен внутри текущей единицы кодирования; доступные соседние блоки относительно текущего блока предсказания определяют в соответствии с типом разделения текущей единицы кодирования, причем доступные соседние блоки расположены за пределами текущей единицы кодирования; и предикторы векторов движения получают из доступных соседних блоков в предварительно заданной последовательности в соответствии с предикторами векторов движения доступных соседних блоков, и получаемые предикторы векторов движения добавляют в список векторов движения. Таким образом, когда строят список векторов движения блока предсказания, не учитывают соседний блок, расположенный внутри текущей единицы кодирования. Когда единица кодирования содержит по меньшей мере два блока предсказания, списки векторов движения по меньшей мере двух блоков предсказания можно строить параллельно, что увеличивает скорость построения списков векторов движения по меньшей мере двух блоков предсказания в одной и той же единице кодирования и увеличивает возможность параллельной обработки.

[0072] Некоторые варианты осуществления устройства предоставлены ниже, и предоставленные варианты осуществления устройства соответствуют приведенным выше вариантам осуществления способа. Конкретные типы реализации устройства, а также приемника и процессора, включенных в устройство, см. в вариантах осуществления способа.

[0073] Устройство для построения списка векторов движения для предсказания векторов движения предоставлено в одном из вариантов осуществления. Как показано на фиг. 4, устройство может содержать:

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

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

[0074] Кроме того, соседние в пространстве блоки относительно блока предсказания, получаемые посредством приемника 41, включают: соседний блок A0, расположенный на нижней левой стороне относительно блока предсказания, соседний блок A1, расположенный на левой стороне относительно блока предсказания, соседний блок B0 на верхней правой стороне относительно блока предсказания, соседний блок B1 на верхней стороне относительно блока предсказания и соседний блок B2 на верхней левой стороне относительно блока предсказания.

[0075] Кроме того, процессор 42 дополнительно выполнен с возможностью: если текущая единица кодирования разделена на первый блок предсказания и второй блок предсказания на верхней и нижней сторонах, и текущий блок предсказания представляет собой второй блок предсказания, доступные соседние блоки относительно блока предсказания включают: соседний блок A0, соседний блок A1, соседний блок B0 и соседний блок B2 относительно второго блока предсказания; и

если текущая единица кодирования разделена на первый блок предсказания и второй блок предсказания на левой и правой сторонах, и текущий блок предсказания представляет собой второй блок предсказания, доступные соседние блоки относительно блока предсказания включают: соседний блок A0, соседний блок B0, соседний блок B1 и соседний блок B2 относительно второго блока предсказания.

[0076] Кроме того, процессор 42 дополнительно выполнен с возможностью: если доступные соседние блоки представляют собой блоки межкадрового кодирования, получать предикторы векторов движения из доступных соседних блоков в последовательности из соседнего блока A1, соседнего блока B1, соседнего блока B0, соседнего блока A0 и соседнего блока B2.

[0077] Кроме того, процессор 42 дополнительно выполнен с возможностью определять, является ли предиктор вектора движения текущего доступного соседнего блока таким же, как предикторы векторов движения других доступных соседних блоков, за исключением текущего доступного соседнего блока; и

если нет, добавлять предиктор вектора движения текущего доступного соседнего блока в список векторов движения.

[0078] Кроме того, процессор 42 дополнительно выполнен с возможностью определять, является ли предиктор вектора движения текущего доступного соседнего блока таким же, как предикторы векторов движения, которые добавлены в список векторов движения; и

если нет, добавлять предиктор вектора движения текущего доступного соседнего блока в список векторов движения.

[0079] Кроме того, процессор 42 дополнительно выполнен с возможностью: если текущий доступный соседний блок представляет собой соседний блок B1, определять, является ли предиктор вектора движения соседнего блока B1 таким же, как предиктор вектора движения соседнего блока A1;

если текущий доступный соседний блок представляет собой соседний блок B0, определять, является ли предиктор вектора движения соседнего блока B0 таким же, как предиктор вектора движения соседнего блока В1;

если текущий доступный соседний блок представляет собой соседний блок A0, определять, является ли предиктор вектора движения соседнего блока A0 таким же, как предиктор вектора движения соседнего блока A1; и

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

[0080] Кроме того, процессор 42 дополнительно выполнен с возможностью: если текущий доступный соседний блок представляет собой соседний блок B1, определять, является ли предиктор вектора движения соседнего блока B1 таким же, как предиктор вектора движения соседнего блока A1, который добавлен в список векторов движения;

если текущий доступный соседний блок представляет собой соседний блок B0, определять, является ли предиктор вектора движения соседнего блока B0 таким же, как предиктор вектора движения соседнего блока B1, который добавлен в список векторов движения;

если текущий доступный соседний блок представляет собой соседний блок A0, определять, является ли предиктор вектора движения соседнего блока A0 таким же, как предиктор вектора движения соседнего блока A1, который добавлен в список векторов движения; и

если текущий доступный соседний блок представляет собой соседний блок B2, определять, является ли предиктор вектора движения соседнего блока B2 таким же, как по меньшей мере один из предиктора вектора движения соседнего блока A1, который добавлен в список векторов движения, и предиктора вектора движения соседнего блока B1, который добавлен в список векторов движения.

[0081] Посредством приведенного выше решения, когда строят список векторов движения блока предсказания, приемник получает соседние в пространстве блоки относительно текущего блока предсказания сначала, причем текущий блок предсказания расположен внутри текущей единицы кодирования; и процессор определяет доступные соседние блоки относительно текущего блока предсказания в соответствии с типом разделения текущей единицы кодирования, причем доступные соседние блоки расположены за пределами текущей единицы кодирования; и получает предикторы векторов движения из доступных соседних блоков в предварительно заданной последовательности в соответствии с предикторами векторов движения доступных соседних блоков, и добавляет получаемые предикторы векторов движения в список векторов движения. Таким образом, когда строят список векторов движения блока предсказания, не учитывают соседний блок, расположенный внутри текущей единицы кодирования. Когда единица кодирования содержит по меньшей мере два блока предсказания, списки векторов движения по меньшей мере двух блоков предсказания можно строить параллельно, что увеличивает скорость построения списков векторов движения по меньшей мере двух блоков предсказания в одной и той же единице кодирования и увеличивает возможность параллельной обработки.

[0082] С помощью приведенного выше описания вариантов осуществления специалист в данной области может ясно понять, что настоящее изобретение можно реализовать посредством программного обеспечения в дополнение к необходимому универсальному аппаратному обеспечению, и определенно также можно реализовать посредством аппаратного обеспечения. Однако в большинстве случаев первое является предпочтительным. Основываясь на таком понимании, технические решения по настоящему изобретению по существу или часть, вносящую вклад в известный уровень техники, можно реализовать в форме программного продукта. Компьютерный программный продукт хранят в считываемом носителе данных, например на гибком диске, жестком диске или оптическом диске компьютера, и он содержит несколько инструкций для управления компьютерным устройством (которое может представлять собой персональный компьютер, сервер или сетевое устройство) для того, чтобы осуществлять способы, описанные в вариантах осуществления настоящего изобретения.

[0083] Приведенные выше описания представляют собой лишь конкретные варианты осуществления настоящего изобретения и не предназначены для того, чтобы ограничивать объем защиты настоящего изобретения. Какие-либо вариации или замены, которые легко может представить себе специалист в данной области, в пределах технического объема, раскрытого в настоящем изобретении, попадают в объем защиты настоящего изобретения. Следовательно, объем защиты настоящего изобретения представляет собой предмет приложенной формулы изобретения.


СПОСОБ И УСТРОЙСТВО ДЛЯ ПОСТРОЕНИЯ СПИСКА ВЕКТОРОВ ДВИЖЕНИЯ ДЛЯ ПРЕДСКАЗАНИЯ ВЕКТОРОВ ДВИЖЕНИЯ
СПОСОБ И УСТРОЙСТВО ДЛЯ ПОСТРОЕНИЯ СПИСКА ВЕКТОРОВ ДВИЖЕНИЯ ДЛЯ ПРЕДСКАЗАНИЯ ВЕКТОРОВ ДВИЖЕНИЯ
СПОСОБ И УСТРОЙСТВО ДЛЯ ПОСТРОЕНИЯ СПИСКА ВЕКТОРОВ ДВИЖЕНИЯ ДЛЯ ПРЕДСКАЗАНИЯ ВЕКТОРОВ ДВИЖЕНИЯ
СПОСОБ И УСТРОЙСТВО ДЛЯ ПОСТРОЕНИЯ СПИСКА ВЕКТОРОВ ДВИЖЕНИЯ ДЛЯ ПРЕДСКАЗАНИЯ ВЕКТОРОВ ДВИЖЕНИЯ
СПОСОБ И УСТРОЙСТВО ДЛЯ ПОСТРОЕНИЯ СПИСКА ВЕКТОРОВ ДВИЖЕНИЯ ДЛЯ ПРЕДСКАЗАНИЯ ВЕКТОРОВ ДВИЖЕНИЯ
СПОСОБ И УСТРОЙСТВО ДЛЯ ПОСТРОЕНИЯ СПИСКА ВЕКТОРОВ ДВИЖЕНИЯ ДЛЯ ПРЕДСКАЗАНИЯ ВЕКТОРОВ ДВИЖЕНИЯ
СПОСОБ И УСТРОЙСТВО ДЛЯ ПОСТРОЕНИЯ СПИСКА ВЕКТОРОВ ДВИЖЕНИЯ ДЛЯ ПРЕДСКАЗАНИЯ ВЕКТОРОВ ДВИЖЕНИЯ
СПОСОБ И УСТРОЙСТВО ДЛЯ ПОСТРОЕНИЯ СПИСКА ВЕКТОРОВ ДВИЖЕНИЯ ДЛЯ ПРЕДСКАЗАНИЯ ВЕКТОРОВ ДВИЖЕНИЯ
СПОСОБ И УСТРОЙСТВО ДЛЯ ПОСТРОЕНИЯ СПИСКА ВЕКТОРОВ ДВИЖЕНИЯ ДЛЯ ПРЕДСКАЗАНИЯ ВЕКТОРОВ ДВИЖЕНИЯ
СПОСОБ И УСТРОЙСТВО ДЛЯ ПОСТРОЕНИЯ СПИСКА ВЕКТОРОВ ДВИЖЕНИЯ ДЛЯ ПРЕДСКАЗАНИЯ ВЕКТОРОВ ДВИЖЕНИЯ
Источник поступления информации: Роспатент

Показаны записи 211-220 из 705.
27.04.2016
№216.015.3960

Способ и устройство для установления автономного высокоскоростного выделенного физического канала управления

Изобретение относится к способу и устройству для установления Автономного высокоскоростного выделенного физического канала управления HS-DPCCH. Технический результат изобретения заключается в сокращении расхода ресурсов, уменьшении задержки в планировании данных нисходящей линии связи у UE,...
Тип: Изобретение
Номер охранного документа: 0002582543
Дата охранного документа: 27.04.2016
10.05.2016
№216.015.3ce1

Способ и устройство для управления передачей сервиса

Изобретение относится к технологиям сетевой связи. Технический результат заключается в повышении скорости передачи данных. Способ содержит этапы, на которых: принимают сообщение запроса соединения, получают информацию статуса, которая используется для указания статуса сервиса; определяют в...
Тип: Изобретение
Номер охранного документа: 0002583723
Дата охранного документа: 10.05.2016
20.05.2016
№216.015.3f2f

Системы и способы для опорных сигналов и обратной связи по csi

Изобретение относится к беспроводной связи. Технический результат заключается в уменьшении объема служебной информации. Варианты осуществления системы и способа предоставляются для передачи в служебных сигналах опорных сигналов и обратной...
Тип: Изобретение
Номер охранного документа: 0002584145
Дата охранного документа: 20.05.2016
20.05.2016
№216.015.4059

Способ и устройство выбора маршрута

Изобретение относится к технологиям связи. Технический результат заключается в повышении скорости передачи данных. Способ содержит этапы, на которых вычисляют сквозной маршрут для недавно добавленной службы в соответствии с топологией сети и ограничением длины волны и выделяют длину волны для...
Тип: Изобретение
Номер охранного документа: 0002584448
Дата охранного документа: 20.05.2016
10.06.2016
№216.015.477a

Способ и устройство управления операцией блокировки системы баз данных

Изобретение относится к управлению операцией блокировки системы баз данных. Техническим результатом является повышение производительности системы баз данных за счет того, что узел обработки реализует операцию блокировки посредством использования операнда блокировки и весь процесс управления...
Тип: Изобретение
Номер охранного документа: 0002585973
Дата охранного документа: 10.06.2016
10.06.2016
№216.015.47e9

Способ и оборудование пользователя для определения ресурса канала управления

Изобретение относится к области связи. Техническим результатом является возможность избежать конфликта ресурсов между различными оборудованиями пользователей. Способ включает в себя: детектирование канала управления нисходящей линии связи, который несет информацию о планировании канала данных...
Тип: Изобретение
Номер охранного документа: 0002585983
Дата охранного документа: 10.06.2016
10.06.2016
№216.015.499c

Способ и устройство кодирования или декодирования

Изобретение относится к области обработки видеоизображений и, в частности, к способу и устройству декодирования видеоизображений. Техническим результатом является уменьшение сложности декодирования видеоизображений и повышение эффективности декодирования. Предложен способ декодирования...
Тип: Изобретение
Номер охранного документа: 0002586639
Дата охранного документа: 10.06.2016
20.08.2016
№216.015.4c01

Способ, базовая станция и пользовательское оборудование для активирования или деактивирования несущей

Изобретение относится к беспроводной связи. Технический результат заключается в том, что пользовательское оборудование способно корректно активировать или деактивировать несущую. Вариант осуществления настоящего изобретения обеспечивает способ, базовую станцию и пользовательское оборудование...
Тип: Изобретение
Номер охранного документа: 0002594752
Дата охранного документа: 20.08.2016
20.08.2016
№216.015.4c9c

Терминал, беспроводная сеть и способы осуществления связи с малым энергопотреблением

Изобретение относится к беспроводной связи. Варианты осуществления настоящего изобретения обеспечивают способ осуществления связи терминала MTC с малым энергопотреблением, который включает в себя этапы: отправки, посредством терминала MTC, сообщения-запроса беспроводного канала на базовую...
Тип: Изобретение
Номер охранного документа: 0002594896
Дата охранного документа: 20.08.2016
27.08.2016
№216.015.4e3e

Способ, устройство и система для записи мультимедийных данных

Изобретение относится к устройствам обработки и распределения мультимедийных данных, а также определения идентификационной информации мультимедийных данных. Технический результат состоит в увеличении эффективности записи мультимедийных данных и достигается за счет того, что мультимедийные...
Тип: Изобретение
Номер охранного документа: 0002595526
Дата охранного документа: 27.08.2016
Показаны записи 211-220 из 368.
20.04.2016
№216.015.33da

Способ и система пересылки и обработки сервисного пакета и точка доступа ар

Изобретение относится к технологиям связи. Технический результат заключается в повышении скорости передачи данных в сети. Способ содержит этапы, на которых: получают информацию изменения пути пересылки пакета мобильного терминала; и имитируют, в качестве реакции на получение информации...
Тип: Изобретение
Номер охранного документа: 0002582059
Дата охранного документа: 20.04.2016
20.04.2016
№216.015.34da

Способ и устройство конфигурирования длины волны для пассивной оптической сети с множеством длин волн и система пассивной оптической сети с множеством длин волн

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

Способ, система и устройство узла для установления пути восстановления

Изобретение относится к технологиям сетевой связи. Технический результат заключается в повышении надежности и эффективности сети. Способ содержит: получение, на первом узле, согласно информации маршрута пути восстановления службы и информации маршрута рабочего пути службы, набора рабочих узлов,...
Тип: Изобретение
Номер охранного документа: 0002581780
Дата охранного документа: 20.04.2016
27.04.2016
№216.015.38ae

Способ, устройство и система для управления качеством обслуживания

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

Способ и устройство для установления автономного высокоскоростного выделенного физического канала управления

Изобретение относится к способу и устройству для установления Автономного высокоскоростного выделенного физического канала управления HS-DPCCH. Технический результат изобретения заключается в сокращении расхода ресурсов, уменьшении задержки в планировании данных нисходящей линии связи у UE,...
Тип: Изобретение
Номер охранного документа: 0002582543
Дата охранного документа: 27.04.2016
10.05.2016
№216.015.3ce1

Способ и устройство для управления передачей сервиса

Изобретение относится к технологиям сетевой связи. Технический результат заключается в повышении скорости передачи данных. Способ содержит этапы, на которых: принимают сообщение запроса соединения, получают информацию статуса, которая используется для указания статуса сервиса; определяют в...
Тип: Изобретение
Номер охранного документа: 0002583723
Дата охранного документа: 10.05.2016
20.05.2016
№216.015.3f2f

Системы и способы для опорных сигналов и обратной связи по csi

Изобретение относится к беспроводной связи. Технический результат заключается в уменьшении объема служебной информации. Варианты осуществления системы и способа предоставляются для передачи в служебных сигналах опорных сигналов и обратной...
Тип: Изобретение
Номер охранного документа: 0002584145
Дата охранного документа: 20.05.2016
20.05.2016
№216.015.4059

Способ и устройство выбора маршрута

Изобретение относится к технологиям связи. Технический результат заключается в повышении скорости передачи данных. Способ содержит этапы, на которых вычисляют сквозной маршрут для недавно добавленной службы в соответствии с топологией сети и ограничением длины волны и выделяют длину волны для...
Тип: Изобретение
Номер охранного документа: 0002584448
Дата охранного документа: 20.05.2016
10.06.2016
№216.015.477a

Способ и устройство управления операцией блокировки системы баз данных

Изобретение относится к управлению операцией блокировки системы баз данных. Техническим результатом является повышение производительности системы баз данных за счет того, что узел обработки реализует операцию блокировки посредством использования операнда блокировки и весь процесс управления...
Тип: Изобретение
Номер охранного документа: 0002585973
Дата охранного документа: 10.06.2016
10.06.2016
№216.015.47e9

Способ и оборудование пользователя для определения ресурса канала управления

Изобретение относится к области связи. Техническим результатом является возможность избежать конфликта ресурсов между различными оборудованиями пользователей. Способ включает в себя: детектирование канала управления нисходящей линии связи, который несет информацию о планировании канала данных...
Тип: Изобретение
Номер охранного документа: 0002585983
Дата охранного документа: 10.06.2016
+ добавить свой РИД