RU2553060C1 - Способ и устройство для построения списка векторов движения для предсказания векторов движения - Google Patents
Способ и устройство для построения списка векторов движения для предсказания векторов движения Download PDFInfo
- Publication number
- RU2553060C1 RU2553060C1 RU2014117043/08A RU2014117043A RU2553060C1 RU 2553060 C1 RU2553060 C1 RU 2553060C1 RU 2014117043/08 A RU2014117043/08 A RU 2014117043/08A RU 2014117043 A RU2014117043 A RU 2014117043A RU 2553060 C1 RU2553060 C1 RU 2553060C1
- Authority
- RU
- Russia
- Prior art keywords
- neighboring block
- motion vector
- block
- predictor
- motion vectors
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/43—Hardware specially adapted for motion estimation or compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/436—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
- H04N19/463—Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Настоящее изобретение относится к области кодирования видео. Технический результат - повышение эффективности сжатия при кодировании за счет возможности параллельной обработки, по меньшей мере, двух единиц предсказания в одной и той же единице кодирования. Способ построения списка векторов движения для предсказания векторов движения содержит: получение соседних в пространстве блоков относительно текущего блока предсказания, причем текущий блок предсказания расположен внутри текущей единицы кодирования; определение доступных соседних блоков относительно текущего блока предсказания в соответствии с типом разделения текущей единицы кодирования, причем доступные соседние блоки расположены за пределами текущей единицы кодирования; получение предикторов векторов движения из доступных соседних блоков в предварительно заданной последовательности в соответствии с предикторами векторов движения доступных соседних блоков и добавление получаемых предикторов векторов движения в список векторов движения. 2 н. и 14 з.п. ф-лы, 10 ил.
Description
[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] Приведенные выше описания представляют собой лишь конкретные варианты осуществления настоящего изобретения и не предназначены для того, чтобы ограничивать объем защиты настоящего изобретения. Какие-либо вариации или замены, которые легко может представить себе специалист в данной области, в пределах технического объема, раскрытого в настоящем изобретении, попадают в объем защиты настоящего изобретения. Следовательно, объем защиты настоящего изобретения представляет собой предмет приложенной формулы изобретения.
Claims (16)
1. Способ построения списка векторов движения для предсказания векторов движения, содержащий:
получение соседних в пространстве блоков относительно текущего блока предсказания, причем текущий блок предсказания расположен внутри текущей единицы кодирования;
определение доступных соседних блоков относительно текущего блока предсказания в соответствии с типом разделения текущей единицы кодирования, причем доступные соседние блоки расположены за пределами текущей единицы кодирования; и
получение предикторов векторов движения из доступных соседних блоков в предварительно заданной последовательности в соответствии с предикторами векторов движения доступных соседних блоков и добавление получаемых предикторов векторов движения в список векторов движения.
получение соседних в пространстве блоков относительно текущего блока предсказания, причем текущий блок предсказания расположен внутри текущей единицы кодирования;
определение доступных соседних блоков относительно текущего блока предсказания в соответствии с типом разделения текущей единицы кодирования, причем доступные соседние блоки расположены за пределами текущей единицы кодирования; и
получение предикторов векторов движения из доступных соседних блоков в предварительно заданной последовательности в соответствии с предикторами векторов движения доступных соседних блоков и добавление получаемых предикторов векторов движения в список векторов движения.
2. Способ построения списка векторов движения для предсказания векторов движения по п. 1, причем соседние в пространстве блоки относительно блока предсказания содержат:
соседний блок A0, расположенный на нижней левой стороне относительно блока предсказания, соседний блок A1, расположенный на левой стороне относительно блока предсказания, соседний блок B0 на верхней правой стороне относительно блока предсказания, соседний блок В1 на верхней стороне относительно блока предсказания и соседний блок B2 на верхней левой стороне относительно блока предсказания.
соседний блок A0, расположенный на нижней левой стороне относительно блока предсказания, соседний блок A1, расположенный на левой стороне относительно блока предсказания, соседний блок B0 на верхней правой стороне относительно блока предсказания, соседний блок В1 на верхней стороне относительно блока предсказания и соседний блок B2 на верхней левой стороне относительно блока предсказания.
3. Способ построения списка векторов движения для предсказания векторов движения по п. 2, причем определение доступных соседних блоков относительно текущего блока предсказания в соответствии с типом разделения текущей единицы кодирования содержит:
если текущая единица кодирования разделена на первый блок предсказания и второй блок предсказания на верхней и нижней сторонах, и текущий блок предсказания представляет собой второй блок предсказания, доступные соседние блоки относительно блока предсказания содержат: соседний блок A0, соседний блок A1, соседний блок B0 и соседний блок B2 относительно второго блока предсказания; и
если текущая единица кодирования разделена на первый блок предсказания и второй блок предсказания на левой и правой сторонах, и текущий блок предсказания представляет собой второй блок предсказания, доступные соседние блоки относительно блока предсказания содержат: соседний блок A0, соседний блок B0, соседний блок B1 и соседний блок B2 относительно второго блока предсказания.
если текущая единица кодирования разделена на первый блок предсказания и второй блок предсказания на верхней и нижней сторонах, и текущий блок предсказания представляет собой второй блок предсказания, доступные соседние блоки относительно блока предсказания содержат: соседний блок A0, соседний блок A1, соседний блок B0 и соседний блок B2 относительно второго блока предсказания; и
если текущая единица кодирования разделена на первый блок предсказания и второй блок предсказания на левой и правой сторонах, и текущий блок предсказания представляет собой второй блок предсказания, доступные соседние блоки относительно блока предсказания содержат: соседний блок A0, соседний блок B0, соседний блок B1 и соседний блок B2 относительно второго блока предсказания.
4. Способ построения списка векторов движения для предсказания векторов движения по п. 2 или 3, причем получение предикторов векторов движения из доступных соседних блоков в предварительно заданной последовательности содержит:
если доступные соседние блоки представляют собой блоки межкадрового кодирования, получение предикторов векторов движения из доступных соседних блоков в последовательности из соседнего блока A1, соседнего блока B1, соседнего блока B0, соседнего блока A0 и соседнего блока B2.
если доступные соседние блоки представляют собой блоки межкадрового кодирования, получение предикторов векторов движения из доступных соседних блоков в последовательности из соседнего блока A1, соседнего блока B1, соседнего блока B0, соседнего блока A0 и соседнего блока B2.
5. Способ построения списка векторов движения для предсказания векторов движения по п. 4, причем если получаемый предиктор вектора движения представляет собой предиктор вектора движения текущего доступного соседнего блока, добавление получаемых предикторов векторов движения в список векторов движения содержит:
определение того, является ли предиктор вектора движения текущего доступного соседнего блока таким же, как предикторы векторов движения других доступных соседних блоков, за исключением текущего доступного соседнего блока; и
если нет, добавление предиктора вектора движения текущего доступного соседнего блока в список векторов движения.
определение того, является ли предиктор вектора движения текущего доступного соседнего блока таким же, как предикторы векторов движения других доступных соседних блоков, за исключением текущего доступного соседнего блока; и
если нет, добавление предиктора вектора движения текущего доступного соседнего блока в список векторов движения.
6. Способ построения списка векторов движения для предсказания векторов движения по п. 4, причем если получаемый предиктор вектора движения представляет собой предиктор вектора движения текущего доступного соседнего блока, добавление получаемых предикторов векторов движения в список векторов движения включает:
определение того, является ли предиктор вектора движения текущего доступного соседнего блока таким же, как предикторы векторов движения, которые добавлены в список векторов движения; и
если нет, добавление предиктора вектора движения текущего доступного соседнего блока в список векторов движения.
определение того, является ли предиктор вектора движения текущего доступного соседнего блока таким же, как предикторы векторов движения, которые добавлены в список векторов движения; и
если нет, добавление предиктора вектора движения текущего доступного соседнего блока в список векторов движения.
7. Способ построения списка векторов движения для предсказания векторов движения по п. 5, причем определение того, является ли предиктор вектора движения текущего доступного соседнего блока таким же, как предикторы векторов движения других доступных соседних блоков, за исключением текущего доступного соседнего блока, включает:
если текущий доступный соседний блок представляет собой соседний блок B1, определение того, является ли предиктор вектора движения соседнего блока В1 таким же, как предиктор вектора движения соседнего блока A1;
если текущий доступный соседний блок представляет собой соседний блок B0, определение того, является ли предиктор вектора движения соседнего блока B0 таким же, как предиктор вектора движения соседнего блока В1;
если текущий доступный соседний блок представляет собой соседний блок A0, определение того, является ли предиктор вектора движения соседнего блока A0 таким же, как предиктор вектора движения соседнего блока A1; и
если текущий доступный соседний блок представляет собой соседний блок B2, определение того, является ли предиктор вектора движения соседнего блока B2 таким же, как по меньшей мере один из предиктора вектора движения соседнего блока A1 и предиктора вектора движения соседнего блока B1.
если текущий доступный соседний блок представляет собой соседний блок B1, определение того, является ли предиктор вектора движения соседнего блока В1 таким же, как предиктор вектора движения соседнего блока A1;
если текущий доступный соседний блок представляет собой соседний блок B0, определение того, является ли предиктор вектора движения соседнего блока B0 таким же, как предиктор вектора движения соседнего блока В1;
если текущий доступный соседний блок представляет собой соседний блок A0, определение того, является ли предиктор вектора движения соседнего блока A0 таким же, как предиктор вектора движения соседнего блока A1; и
если текущий доступный соседний блок представляет собой соседний блок B2, определение того, является ли предиктор вектора движения соседнего блока B2 таким же, как по меньшей мере один из предиктора вектора движения соседнего блока A1 и предиктора вектора движения соседнего блока B1.
8. Способ построения списка векторов движения для предсказания векторов движения по п. 6, причем определение того, является ли предиктор вектора движения текущего доступного соседнего блока таким же, как предикторы векторов движения, которые добавлены в список векторов движения, содержит:
если текущий доступный соседний блок представляет собой соседний блок B1, определение того, является ли предиктор вектора движения соседнего блока B1 таким же, как предиктор вектора движения соседнего блока A1, который добавлен в список векторов движения;
если текущий доступный соседний блок представляет собой соседний блок B0, определение того, является ли предиктор вектора движения соседнего блока B0 таким же, как предиктор вектора движения соседнего блока B1, который добавлен в список векторов движения;
если текущий доступный соседний блок представляет собой соседний блок A0, определение того, является ли предиктор вектора движения соседнего блока A0 таким же, как предиктор вектора движения соседнего блока A1, который добавлен в список векторов движения; и
если текущий доступный соседний блок представляет собой соседний блок B2, определение того, является ли предиктор вектора движения соседнего блока B2 таким же, как по меньшей мере один из предиктора вектора движения соседнего блока A1, который добавлен в список векторов движения, и предиктора вектора движения соседнего блока B1, который добавлен в список векторов движения.
если текущий доступный соседний блок представляет собой соседний блок B1, определение того, является ли предиктор вектора движения соседнего блока B1 таким же, как предиктор вектора движения соседнего блока A1, который добавлен в список векторов движения;
если текущий доступный соседний блок представляет собой соседний блок B0, определение того, является ли предиктор вектора движения соседнего блока B0 таким же, как предиктор вектора движения соседнего блока B1, который добавлен в список векторов движения;
если текущий доступный соседний блок представляет собой соседний блок A0, определение того, является ли предиктор вектора движения соседнего блока A0 таким же, как предиктор вектора движения соседнего блока A1, который добавлен в список векторов движения; и
если текущий доступный соседний блок представляет собой соседний блок B2, определение того, является ли предиктор вектора движения соседнего блока B2 таким же, как по меньшей мере один из предиктора вектора движения соседнего блока A1, который добавлен в список векторов движения, и предиктора вектора движения соседнего блока B1, который добавлен в список векторов движения.
9. Устройство для построения списка векторов движения для предсказания векторов движения, содержащее:
приемник, выполненный с возможностью получать соседние в пространстве блоки относительно текущего блока предсказания, причем текущий блок предсказания расположен внутри текущей единицы кодирования; и
процессор, выполненный с возможностью определять доступные соседние блоки относительно текущего блока предсказания в соответствии с типом разделения текущей единицы кодирования, причем доступные соседние блоки расположены за пределами текущей единицы кодирования; и получать предикторы векторов движения из доступных соседних блоков в предварительно заданной последовательности в соответствии с предикторами векторов движения доступных соседних блоков, и добавлять получаемые предикторы векторов движения в список векторов движения.
приемник, выполненный с возможностью получать соседние в пространстве блоки относительно текущего блока предсказания, причем текущий блок предсказания расположен внутри текущей единицы кодирования; и
процессор, выполненный с возможностью определять доступные соседние блоки относительно текущего блока предсказания в соответствии с типом разделения текущей единицы кодирования, причем доступные соседние блоки расположены за пределами текущей единицы кодирования; и получать предикторы векторов движения из доступных соседних блоков в предварительно заданной последовательности в соответствии с предикторами векторов движения доступных соседних блоков, и добавлять получаемые предикторы векторов движения в список векторов движения.
10. Устройство для построения списка векторов движения для предсказания векторов движения по п. 9, причем соседние в пространстве блоки относительно блока предсказания, получаемые посредством приемника, содержат:
соседний блок A0, расположенный на нижней левой стороне относительно блока предсказания, соседний блок A1, расположенный на левой стороне относительно блока предсказания, соседний блок B0 на верхней правой стороне относительно блока предсказания, соседний блок B1 на верхней стороне относительно блока предсказания и соседний блок B2 на верхней левой стороне относительно блока предсказания.
соседний блок A0, расположенный на нижней левой стороне относительно блока предсказания, соседний блок A1, расположенный на левой стороне относительно блока предсказания, соседний блок B0 на верхней правой стороне относительно блока предсказания, соседний блок B1 на верхней стороне относительно блока предсказания и соседний блок B2 на верхней левой стороне относительно блока предсказания.
11. Устройство для построения списка векторов движения для предсказания векторов движения по п. 10, причем процессор дополнительно выполнен с возможностью: если текущая единица кодирования разделена на первый блок предсказания и второй блок предсказания на верхней и нижней сторонах и текущий блок предсказания представляет собой второй блок предсказания, доступные соседние блоки относительно блока предсказания содержат: соседний блок A0, соседний блок A1, соседний блок B0 и соседний блок B2 относительно второго блока предсказания; и
если текущая единица кодирования разделена на первый блок предсказания и второй блок предсказания на левой и правой сторонах, и текущий блок предсказания представляет собой второй блок предсказания, доступные соседние блоки относительно блока предсказания содержат: соседний блок A0, соседний блок B0, соседний блок B1 и соседний блок B2 относительно второго блока предсказания.
если текущая единица кодирования разделена на первый блок предсказания и второй блок предсказания на левой и правой сторонах, и текущий блок предсказания представляет собой второй блок предсказания, доступные соседние блоки относительно блока предсказания содержат: соседний блок A0, соседний блок B0, соседний блок B1 и соседний блок B2 относительно второго блока предсказания.
12. Устройство для построения списка векторов движения для предсказания векторов движения по п. 10 или 11, причем процессор дополнительно выполнен с возможностью: если доступные соседние блоки представляют собой блоки межкадрового кодирования, получать предикторы векторов движения из доступных соседних блоков в последовательности из соседнего блока A1, соседнего блока B1, соседнего блока B0, соседнего блока A0 и соседнего блока B2.
13. Устройство для построения списка векторов движения для предсказания векторов движения по п. 12, причем процессор дополнительно выполнен с возможностью, если получаемый предиктор вектора движения представляет собой предиктор вектора движения текущего доступного соседнего блока, определять, является ли предиктор вектора движения текущего доступного соседнего блока таким же, как предикторы векторов движения других доступных соседних блоков, за исключением текущего доступного соседнего блока; и
если нет, добавлять предиктор вектора движения текущего доступного соседнего блока в список векторов движения.
если нет, добавлять предиктор вектора движения текущего доступного соседнего блока в список векторов движения.
14. Устройство для построения списка векторов движения для предсказания векторов движения по п. 12, причем процессор дополнительно выполнен с возможностью, если получаемый предиктор вектора движения представляет собой предиктор вектора движения текущего доступного соседнего блока, определять, является ли предиктор вектора движения текущего доступного соседнего блока таким же, как предикторы векторов движения, которые добавлены в список векторов движения; и
если нет, добавлять предиктор вектора движения текущего доступного соседнего блока в список векторов движения.
если нет, добавлять предиктор вектора движения текущего доступного соседнего блока в список векторов движения.
15. Устройство для построения списка векторов движения для предсказания векторов движения по п. 13, причем процессор дополнительно выполнен с возможностью: если текущий доступный соседний блок представляет собой соседний блок B1, определять, является ли предиктор вектора движения соседнего блока B1 таким же, как предиктор вектора движения соседнего блока A1;
если текущий доступный соседний блок представляет собой соседний блок B0, определять, является ли предиктор вектора движения соседнего блока B0 таким же, как предиктор вектора движения соседнего блока В1;
если текущий доступный соседний блок представляет собой соседний блок A0, определять, является ли предиктор вектора движения соседнего блока A0 таким же, как предиктор вектора движения соседнего блока A1; и
если текущий доступный соседний блок представляет собой соседний блок B2, определять, является ли предиктор вектора движения соседнего блока B2 таким же, как по меньшей мере один из предиктора вектора движения соседнего блока A1 и предиктора вектора движения соседнего блока В1.
если текущий доступный соседний блок представляет собой соседний блок B0, определять, является ли предиктор вектора движения соседнего блока B0 таким же, как предиктор вектора движения соседнего блока В1;
если текущий доступный соседний блок представляет собой соседний блок A0, определять, является ли предиктор вектора движения соседнего блока A0 таким же, как предиктор вектора движения соседнего блока A1; и
если текущий доступный соседний блок представляет собой соседний блок B2, определять, является ли предиктор вектора движения соседнего блока B2 таким же, как по меньшей мере один из предиктора вектора движения соседнего блока A1 и предиктора вектора движения соседнего блока В1.
16. Устройство для построения списка векторов движения для предсказания векторов движения по п. 14, причем процессор дополнительно выполнен с возможностью: если текущий доступный соседний блок представляет собой соседний блок B1, определять, является ли предиктор вектора движения соседнего блока B1 таким же, как предиктор вектора движения соседнего блока A1, который добавлен в список векторов движения;
если текущий доступный соседний блок представляет собой соседний блок B0, определять, является ли предиктор вектора движения соседнего блока B0 таким же, как предиктор вектора движения соседнего блока B1, который добавлен в список векторов движения;
если текущий доступный соседний блок представляет собой соседний блок A0, определять, является ли предиктор вектора движения соседнего блока A0 таким же, как предиктор вектора движения соседнего блока A1, который добавлен в список векторов движения; и
если текущий доступный соседний блок представляет собой соседний блок B2, определять, является ли предиктор вектора движения соседнего блока B2 таким же, как по меньшей мере один из предиктора вектора движения соседнего блока A1, который добавлен в список векторов движения, и предиктора вектора движения соседнего блока B1, который добавлен в список векторов движения.
если текущий доступный соседний блок представляет собой соседний блок B0, определять, является ли предиктор вектора движения соседнего блока B0 таким же, как предиктор вектора движения соседнего блока B1, который добавлен в список векторов движения;
если текущий доступный соседний блок представляет собой соседний блок A0, определять, является ли предиктор вектора движения соседнего блока A0 таким же, как предиктор вектора движения соседнего блока A1, который добавлен в список векторов движения; и
если текущий доступный соседний блок представляет собой соседний блок B2, определять, является ли предиктор вектора движения соседнего блока B2 таким же, как по меньшей мере один из предиктора вектора движения соседнего блока A1, который добавлен в список векторов движения, и предиктора вектора движения соседнего блока B1, который добавлен в список векторов движения.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210377579.4A CN102883163B (zh) | 2012-10-08 | 2012-10-08 | 用于运动矢量预测的运动矢量列表建立的方法、装置 |
CN201210377579.4 | 2012-10-08 | ||
PCT/CN2013/073817 WO2014056314A1 (zh) | 2012-10-08 | 2013-04-07 | 用于运动矢量预测的运动矢量列表建立的方法、装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2553060C1 true RU2553060C1 (ru) | 2015-06-10 |
Family
ID=47484278
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2014117043/08A RU2553060C1 (ru) | 2012-10-08 | 2013-04-07 | Способ и устройство для построения списка векторов движения для предсказания векторов движения |
Country Status (13)
Country | Link |
---|---|
US (3) | US9549181B2 (ru) |
EP (2) | EP2822283A4 (ru) |
JP (3) | JP6068490B2 (ru) |
KR (4) | KR101835563B1 (ru) |
CN (1) | CN102883163B (ru) |
AU (1) | AU2013314174B2 (ru) |
BR (1) | BR112014010225B1 (ru) |
CA (1) | CA2845442C (ru) |
HK (1) | HK1203723A1 (ru) |
MY (2) | MY177902A (ru) |
RU (1) | RU2553060C1 (ru) |
SG (2) | SG11201400427VA (ru) |
WO (1) | WO2014056314A1 (ru) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2765206C1 (ru) * | 2018-12-28 | 2022-01-26 | ДжейВиСиКЕНВУД Корпорейшн | Устройство кодирования кадров, способ кодирования кадров, устройство декодирования кадров и способ декодирования кадров |
RU2776437C2 (ru) * | 2018-12-28 | 2022-07-20 | ДжейВиСиКЕНВУД Корпорейшн | Устройство кодирования кадров, способ кодирования кадров, устройство декодирования кадров и способ декодирования кадров |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102883163B (zh) | 2012-10-08 | 2014-05-28 | 华为技术有限公司 | 用于运动矢量预测的运动矢量列表建立的方法、装置 |
CN104104957B (zh) * | 2013-04-08 | 2018-03-16 | 华为技术有限公司 | 解码方法、编码方法、解码装置和编码装置 |
CN104125463A (zh) * | 2013-04-26 | 2014-10-29 | 华为技术有限公司 | 一种图像预测编码方法及图像编码器 |
WO2015106386A1 (zh) | 2014-01-14 | 2015-07-23 | 华为技术有限公司 | 以太网信号传送方法、调度方法及其装置和系统 |
TWI549489B (zh) * | 2014-04-16 | 2016-09-11 | 智原科技股份有限公司 | 移動偵測電路與方法 |
US20180131943A1 (en) * | 2015-04-27 | 2018-05-10 | Lg Electronics Inc. | Method for processing video signal and device for same |
KR102379196B1 (ko) * | 2017-05-31 | 2022-03-28 | 삼성전자주식회사 | 처리 장치들 및 그 제어 방법들 |
WO2019203527A1 (ko) * | 2018-04-16 | 2019-10-24 | 엘지전자 주식회사 | 영상 코딩 시스템에서 복수의 주변 블록들을 사용하는 인터 예측에 따른 영상 디코딩 방법 및 장치 |
US10469869B1 (en) * | 2018-06-01 | 2019-11-05 | Tencent America LLC | Method and apparatus for video coding |
BR112020024142A2 (pt) | 2018-06-29 | 2021-03-02 | Beijing Bytedance Network Technology Co., Ltd. | método para processamento de vídeo, aparelho para codificação de dados de vídeo, meio de armazenamento e meio de gravação legíveis por computador não transitório |
EP3794825A1 (en) | 2018-06-29 | 2021-03-24 | Beijing Bytedance Network Technology Co. Ltd. | Update of look up table: fifo, constrained fifo |
EP4322533A3 (en) | 2018-06-29 | 2024-03-06 | Beijing Bytedance Network Technology Co., Ltd. | Checking order of motion candidates in lut |
WO2020003282A1 (en) | 2018-06-29 | 2020-01-02 | Beijing Bytedance Network Technology Co., Ltd. | Managing motion vector predictors for video coding |
JP7460617B2 (ja) | 2018-06-29 | 2024-04-02 | 北京字節跳動網絡技術有限公司 | Lut更新条件 |
TWI719525B (zh) | 2018-06-29 | 2021-02-21 | 大陸商北京字節跳動網絡技術有限公司 | Lut與amvp之間的交互 |
EP3791586A1 (en) | 2018-06-29 | 2021-03-17 | Beijing Bytedance Network Technology Co. Ltd. | Concept of using one or multiple look up tables to store motion information of previously coded in order and use them to code following blocks |
CN114900694A (zh) * | 2018-06-29 | 2022-08-12 | 抖音视界(北京)有限公司 | 哪个查找表需要更新或不更新 |
CN110876282B (zh) * | 2018-07-02 | 2022-10-18 | 华为技术有限公司 | 运动矢量预测方法以及相关装置 |
TWI748202B (zh) | 2018-07-02 | 2021-12-01 | 大陸商北京字節跳動網絡技術有限公司 | Lamvr中取整和修剪的順序 |
US11336914B2 (en) * | 2018-08-16 | 2022-05-17 | Qualcomm Incorporated | History-based candidate list with classification |
CN117241039A (zh) * | 2018-08-28 | 2023-12-15 | 华为技术有限公司 | 帧间预测方法、装置以及视频编码器和视频解码器 |
CN111064961B (zh) | 2018-09-12 | 2023-06-09 | 北京字节跳动网络技术有限公司 | 视频处理方法和装置 |
KR20210075203A (ko) | 2018-11-21 | 2021-06-22 | 텔레폰악티에볼라겟엘엠에릭슨(펍) | 서브-블록 병합 단순화를 포함하는 비디오 화상 코딩 방법 및 관련된 장치 |
WO2020143741A1 (en) | 2019-01-10 | 2020-07-16 | Beijing Bytedance Network Technology Co., Ltd. | Invoke of lut updating |
CN113383554B (zh) | 2019-01-13 | 2022-12-16 | 北京字节跳动网络技术有限公司 | LUT和共享Merge列表之间的交互 |
CN113302937A (zh) | 2019-01-16 | 2021-08-24 | 北京字节跳动网络技术有限公司 | 运动候选推导 |
CN111698506B (zh) | 2019-03-11 | 2022-04-26 | 杭州海康威视数字技术股份有限公司 | 运动信息候选者列表构建方法、三角预测解码方法及装置 |
WO2020192611A1 (en) | 2019-03-22 | 2020-10-01 | Beijing Bytedance Network Technology Co., Ltd. | Interaction between merge list construction and other tools |
WO2020259589A1 (en) * | 2019-06-25 | 2020-12-30 | Zhejiang Dahua Technology Co., Ltd. | Systems and methods for inter-frame prediction |
US20240007623A1 (en) * | 2020-11-24 | 2024-01-04 | Hyundai Motor Company | Block splitting structure for efficient prediction and transform, and method and appartus for video encoding and decoding using the same |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2010102711A (ru) * | 2007-06-28 | 2011-08-10 | Мицубиси Электрик Корпорейшн (Jp) | Устройство кодирования изображения и устройство декодирования изображения |
Family Cites Families (78)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5982441A (en) | 1996-01-12 | 1999-11-09 | Iterated Systems, Inc. | System and method for representing a video sequence |
US6594313B1 (en) * | 1998-12-23 | 2003-07-15 | Intel Corporation | Increased video playback framerate in low bit-rate video applications |
US7280700B2 (en) * | 2002-07-05 | 2007-10-09 | Microsoft Corporation | Optimization techniques for data compression |
US7724827B2 (en) | 2003-09-07 | 2010-05-25 | Microsoft Corporation | Multi-layer run level encoding and decoding |
US8625680B2 (en) | 2003-09-07 | 2014-01-07 | Microsoft Corporation | Bitstream-controlled post-processing filtering |
US20060222074A1 (en) * | 2005-04-01 | 2006-10-05 | Bo Zhang | Method and system for motion estimation in a video encoder |
CN100473168C (zh) * | 2005-06-21 | 2009-03-25 | 中国科学院计算技术研究所 | 视频编码的运动矢量空间预测方法 |
US8509551B2 (en) | 2005-07-22 | 2013-08-13 | Mitsubishi Electric Corporation | Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recording with image encoding program and computer readable recording medium recorded with image decoding program |
KR100750136B1 (ko) * | 2005-11-02 | 2007-08-21 | 삼성전자주식회사 | 영상의 부호화, 복호화 방법 및 장치 |
CN101072356B (zh) * | 2006-05-12 | 2011-02-09 | 中国科学院计算技术研究所 | 一种运动矢量预测方法 |
KR101365567B1 (ko) * | 2007-01-04 | 2014-02-20 | 삼성전자주식회사 | 영상의 예측 부호화 방법 및 장치, 그 복호화 방법 및 장치 |
JP2010509799A (ja) * | 2006-11-03 | 2010-03-25 | サムスン エレクトロニクス カンパニー リミテッド | 映像の予測符号化方法及び装置、その復号化方法及び装置 |
KR101364195B1 (ko) * | 2008-06-26 | 2014-02-21 | 에스케이텔레콤 주식회사 | 움직임벡터 부호화/복호화 방법 및 그 장치 |
KR101517768B1 (ko) * | 2008-07-02 | 2015-05-06 | 삼성전자주식회사 | 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치 |
US8634457B2 (en) | 2008-09-26 | 2014-01-21 | Qualcomm Incorporated | Determining availability of video data units |
KR101590633B1 (ko) | 2008-11-11 | 2016-02-02 | 삼성전자주식회사 | 슬라이스 단위로 분할된 동영상을 처리하는 동영상 부호화/복호화장치 및 동영상 부호화/복호화방법 |
BRPI0924908B1 (pt) | 2009-06-18 | 2021-05-11 | Kabushiki Kaisha Toshiba | aparelhos de codificação e decodificação de vídeo, métodos para codificação e decodificação de vídeo |
KR20110008653A (ko) | 2009-07-20 | 2011-01-27 | 삼성전자주식회사 | 움직임 벡터 예측 방법과 이를 이용한 영상 부호화/복호화 장치 및 방법 |
KR101675116B1 (ko) * | 2009-08-06 | 2016-11-10 | 삼성전자 주식회사 | 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치 |
US9036692B2 (en) | 2010-01-18 | 2015-05-19 | Mediatek Inc. | Motion prediction method |
WO2011095260A1 (en) * | 2010-02-05 | 2011-08-11 | Telefonaktiebolaget L M Ericsson (Publ) | Managing predicted motion vector candidates |
US9973768B2 (en) * | 2010-03-16 | 2018-05-15 | Texas Instruments Incorporated | CABAC decoder with decoupled arithmetic decoding and inverse binarization |
AU2011236288A1 (en) * | 2010-04-01 | 2012-11-01 | Sony Corporation | Image processing device and method |
CN102215392B (zh) * | 2010-04-09 | 2013-10-09 | 华为技术有限公司 | 用于估计像素值的帧内预测方法或装置 |
PL3457689T3 (pl) * | 2010-05-25 | 2020-12-28 | Lg Electronics Inc. | Nowy tryb predykcji planarnej |
US9124898B2 (en) * | 2010-07-12 | 2015-09-01 | Mediatek Inc. | Method and apparatus of temporal motion vector prediction |
KR20120016991A (ko) | 2010-08-17 | 2012-02-27 | 오수미 | 인터 프리딕션 방법 |
WO2012034690A1 (en) | 2010-09-14 | 2012-03-22 | Panasonic Corporation | Limitation of error propagation in line-based prediction for intra coding |
US20120106622A1 (en) * | 2010-11-03 | 2012-05-03 | Mediatek Inc. | Method and Apparatus of Slice Grouping for High Efficiency Video Coding |
US8711940B2 (en) * | 2010-11-29 | 2014-04-29 | Mediatek Inc. | Method and apparatus of motion vector prediction with extended motion vector predictor |
CN107071460B (zh) * | 2010-12-14 | 2020-03-06 | M&K控股株式会社 | 用于编码运动画面的设备 |
US9049455B2 (en) | 2010-12-28 | 2015-06-02 | Panasonic Intellectual Property Corporation Of America | Image coding method of coding a current picture with prediction using one or both of a first reference picture list including a first current reference picture for a current block and a second reference picture list including a second current reference picture for the current block |
US8755437B2 (en) * | 2011-03-17 | 2014-06-17 | Mediatek Inc. | Method and apparatus for derivation of spatial motion vector candidate and motion vector prediction candidate |
US9319716B2 (en) * | 2011-01-27 | 2016-04-19 | Qualcomm Incorporated | Performing motion vector prediction for video coding |
CN102685477B (zh) * | 2011-03-10 | 2014-12-10 | 华为技术有限公司 | 获取用于合并模式的图像块的方法和设备 |
KR101532665B1 (ko) * | 2011-03-14 | 2015-07-09 | 미디어텍 인크. | 시간적 움직임 백터 예측을 도출하기 위한 방법 및 장치 |
US20120236934A1 (en) | 2011-03-18 | 2012-09-20 | Qualcomm Incorporated | Signaling of multiview video plus depth content with a block-level 4-component structure |
US9143795B2 (en) * | 2011-04-11 | 2015-09-22 | Texas Instruments Incorporated | Parallel motion estimation in video coding |
US9247249B2 (en) * | 2011-04-20 | 2016-01-26 | Qualcomm Incorporated | Motion vector prediction in video coding |
US20120287999A1 (en) * | 2011-05-11 | 2012-11-15 | Microsoft Corporation | Syntax element prediction in error correction |
SI2717574T1 (sl) * | 2011-05-31 | 2021-04-30 | JVC Kenwood Corporation | Naprava za dekodiranje gibljivih slik, postopek za dekodiranje gibljivih slik, program za dekodiranje gibljivih slik |
US9313494B2 (en) * | 2011-06-20 | 2016-04-12 | Qualcomm Incorporated | Parallelization friendly merge candidates for video coding |
US9282338B2 (en) * | 2011-06-20 | 2016-03-08 | Qualcomm Incorporated | Unified merge mode and adaptive motion vector prediction mode candidates selection |
WO2012177664A1 (en) | 2011-06-20 | 2012-12-27 | Sweetlabs, Inc. | Systems and methods for streamlined content download |
WO2012174990A1 (en) | 2011-06-24 | 2012-12-27 | Mediatek Inc. | Method and apparatus for removing redundancy in motion vector predictors |
JP2013034171A (ja) * | 2011-06-30 | 2013-02-14 | Sony Corp | 画像処理装置および方法 |
WO2013003143A2 (en) * | 2011-06-30 | 2013-01-03 | Vidyo, Inc. | Motion prediction in scalable video coding |
US9094689B2 (en) * | 2011-07-01 | 2015-07-28 | Google Technology Holdings LLC | Motion vector prediction design simplification |
US9699456B2 (en) * | 2011-07-20 | 2017-07-04 | Qualcomm Incorporated | Buffering prediction data in video coding |
PT3468197T (pt) | 2011-09-09 | 2022-05-31 | Lg Electronics Inc | Processo de inter-predição e aparelho para o efeito |
US9736489B2 (en) | 2011-09-17 | 2017-08-15 | Qualcomm Incorporated | Motion vector determination for video coding |
US9083983B2 (en) * | 2011-10-04 | 2015-07-14 | Qualcomm Incorporated | Motion vector predictor candidate clipping removal for video coding |
US9871537B2 (en) * | 2011-10-27 | 2018-01-16 | Qualcomm Incorporated | Mapping states in binary arithmetic coder for video coding |
US9124895B2 (en) * | 2011-11-04 | 2015-09-01 | Qualcomm Incorporated | Video coding with network abstraction layer units that include multiple encoded picture partitions |
KR20130050406A (ko) * | 2011-11-07 | 2013-05-16 | 오수미 | 머지 모드에서의 움직임 정보 생성 방법 |
US20130177084A1 (en) * | 2012-01-10 | 2013-07-11 | Qualcomm Incorporated | Motion vector scaling in video coding |
US20130188716A1 (en) * | 2012-01-20 | 2013-07-25 | Qualcomm Incorporated | Temporal motion vector predictor candidate |
US9674527B2 (en) * | 2012-01-31 | 2017-06-06 | Qualcomm Incorporated | Implicit derivation of parallel motion estimation range size |
US10200709B2 (en) * | 2012-03-16 | 2019-02-05 | Qualcomm Incorporated | High-level syntax extensions for high efficiency video coding |
US10863170B2 (en) * | 2012-04-16 | 2020-12-08 | Nokia Technologies Oy | Apparatus, a method and a computer program for video coding and decoding on the basis of a motion vector |
US9549180B2 (en) * | 2012-04-20 | 2017-01-17 | Qualcomm Incorporated | Disparity vector generation for inter-view prediction for video coding |
US20130336405A1 (en) * | 2012-06-15 | 2013-12-19 | Qualcomm Incorporated | Disparity vector selection in video coding |
US9325990B2 (en) * | 2012-07-09 | 2016-04-26 | Qualcomm Incorporated | Temporal motion vector prediction in video coding extensions |
US9479778B2 (en) * | 2012-08-13 | 2016-10-25 | Qualcomm Incorporated | Device and method for coding video information using base layer motion vector candidate |
SG11201500308RA (en) * | 2012-09-21 | 2015-02-27 | Intel Corp | Cross-layer motion vector prediction |
US20140086328A1 (en) * | 2012-09-25 | 2014-03-27 | Qualcomm Incorporated | Scalable video coding in hevc |
US9491459B2 (en) * | 2012-09-27 | 2016-11-08 | Qualcomm Incorporated | Base layer merge and AMVP modes for video coding |
US9491461B2 (en) * | 2012-09-27 | 2016-11-08 | Qualcomm Incorporated | Scalable extensions to HEVC and temporal motion vector prediction |
US9699450B2 (en) * | 2012-10-04 | 2017-07-04 | Qualcomm Incorporated | Inter-view predicted motion vector for 3D video |
CN102883163B (zh) | 2012-10-08 | 2014-05-28 | 华为技术有限公司 | 用于运动矢量预测的运动矢量列表建立的方法、装置 |
US9357212B2 (en) * | 2012-12-07 | 2016-05-31 | Qualcomm Incorporated | Advanced residual prediction in scalable and multi-view video coding |
US9350970B2 (en) * | 2012-12-14 | 2016-05-24 | Qualcomm Incorporated | Disparity vector derivation |
CN104885467B (zh) * | 2013-01-30 | 2018-08-17 | 英特尔公司 | 用于下一代视频编码的内容自适应参数变换 |
US9762905B2 (en) * | 2013-03-22 | 2017-09-12 | Qualcomm Incorporated | Disparity vector refinement in video coding |
US20140301463A1 (en) * | 2013-04-05 | 2014-10-09 | Nokia Corporation | Method and apparatus for video coding and decoding |
SG11201510554RA (en) * | 2013-07-24 | 2016-02-26 | Qualcomm Inc | Simplified advanced motion prediction for 3d-hevc |
US9554150B2 (en) * | 2013-09-20 | 2017-01-24 | Qualcomm Incorporated | Combined bi-predictive merging candidates for 3D video coding |
US9693077B2 (en) * | 2013-12-13 | 2017-06-27 | Qualcomm Incorporated | Controlling sub prediction unit (sub-PU) motion parameter inheritance (MPI) in three dimensional (3D) HEVC or other 3D coding |
-
2012
- 2012-10-08 CN CN201210377579.4A patent/CN102883163B/zh active Active
-
2013
- 2013-04-07 KR KR1020177005170A patent/KR101835563B1/ko active IP Right Grant
- 2013-04-07 CA CA2845442A patent/CA2845442C/en active Active
- 2013-04-07 KR KR1020187005956A patent/KR101970216B1/ko active IP Right Grant
- 2013-04-07 EP EP13836185.2A patent/EP2822283A4/en not_active Ceased
- 2013-04-07 MY MYPI2017000481A patent/MY177902A/en unknown
- 2013-04-07 SG SG11201400427VA patent/SG11201400427VA/en unknown
- 2013-04-07 MY MYPI2014000722A patent/MY165294A/en unknown
- 2013-04-07 WO PCT/CN2013/073817 patent/WO2014056314A1/zh active Application Filing
- 2013-04-07 RU RU2014117043/08A patent/RU2553060C1/ru active
- 2013-04-07 AU AU2013314174A patent/AU2013314174B2/en active Active
- 2013-04-07 KR KR1020167014630A patent/KR101711568B1/ko active IP Right Grant
- 2013-04-07 SG SG10201608387VA patent/SG10201608387VA/en unknown
- 2013-04-07 JP JP2014540313A patent/JP6068490B2/ja active Active
- 2013-04-07 KR KR1020147007584A patent/KR101629220B1/ko active IP Right Grant
- 2013-04-07 BR BR112014010225-2A patent/BR112014010225B1/pt active IP Right Grant
- 2013-04-07 EP EP18150524.9A patent/EP3402203A1/en not_active Ceased
-
2014
- 2014-06-20 US US14/311,012 patent/US9549181B2/en active Active
-
2015
- 2015-04-22 HK HK15103885.5A patent/HK1203723A1/xx unknown
-
2016
- 2016-11-08 US US15/345,948 patent/US10091523B2/en active Active
- 2016-12-22 JP JP2016249359A patent/JP2017079491A/ja active Pending
-
2018
- 2018-08-03 US US16/054,750 patent/US10511854B2/en active Active
- 2018-10-04 JP JP2018188780A patent/JP6863943B2/ja active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2010102711A (ru) * | 2007-06-28 | 2011-08-10 | Мицубиси Электрик Корпорейшн (Jp) | Устройство кодирования изображения и устройство декодирования изображения |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2765206C1 (ru) * | 2018-12-28 | 2022-01-26 | ДжейВиСиКЕНВУД Корпорейшн | Устройство кодирования кадров, способ кодирования кадров, устройство декодирования кадров и способ декодирования кадров |
RU2776437C2 (ru) * | 2018-12-28 | 2022-07-20 | ДжейВиСиКЕНВУД Корпорейшн | Устройство кодирования кадров, способ кодирования кадров, устройство декодирования кадров и способ декодирования кадров |
US11503277B2 (en) | 2018-12-28 | 2022-11-15 | Jvckenwood Corporation | Picture coding device, picture coding method, and picture coding program, picture decoding device, picture decoding method, and picture decoding program |
US11785211B2 (en) | 2018-12-28 | 2023-10-10 | Jvckenwood Corporation | Picture coding device, picture coding method, and picture coding program, picture decoding device, picture decoding method, and picture decoding program |
US11979562B2 (en) | 2018-12-28 | 2024-05-07 | Jvckenwood Corporation | Picture coding device, picture coding method, and picture coding program, picture decoding device, picture decoding method, and picture decoding program |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2553060C1 (ru) | Способ и устройство для построения списка векторов движения для предсказания векторов движения | |
US11553175B2 (en) | Method and apparatus for candidate list pruning | |
KR102173475B1 (ko) | 픽처 예측 방법 및 픽처 예측 장치 | |
CN103841426B (zh) | 用于运动矢量预测的运动矢量列表建立的方法、装置 | |
JP2020523817A (ja) | 動きベクトル予測方法およびデバイス | |
US11076168B2 (en) | Inter-prediction method and apparatus, and storage medium | |
KR20130124526A (ko) | 인코딩 또는 디코딩의 예측 방법 및 예측기 | |
CN104067619A (zh) | 视频解码器、视频编码器、视频解码方法以及视频编码方法 | |
JP2020523818A (ja) | 低減されたメモリアクセスを用いてfrucモードでビデオデータを符号化又は復号する方法及び装置 | |
CN103841425A (zh) | 用于运动矢量预测的运动矢量列表建立的方法、装置 | |
WO2014056315A1 (zh) | 预测块的视差矢量预测值获取的方法和装置 | |
US20230199216A1 (en) | Method and apparatus for reference area transfer with pre-analysis | |
JP2013005169A (ja) | 動画像復号装置、動画像符号化装置、動画像復号方法、動画像符号化方法、動画像復号プログラム及び動画像符号化プログラム |