BR112014010225B1 - Método e aparelho para construção de lista de vetor de movimento para predição de vetor de movimento - Google Patents
Método e aparelho para construção de lista de vetor de movimento para predição de vetor de movimento Download PDFInfo
- Publication number
- BR112014010225B1 BR112014010225B1 BR112014010225-2A BR112014010225A BR112014010225B1 BR 112014010225 B1 BR112014010225 B1 BR 112014010225B1 BR 112014010225 A BR112014010225 A BR 112014010225A BR 112014010225 B1 BR112014010225 B1 BR 112014010225B1
- Authority
- BR
- Brazil
- Prior art keywords
- block
- motion vector
- neighboring
- neighboring block
- current
- Prior art date
Links
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/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
-
- 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
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
resumo método e aparelho para construção de lista de vetor de movimento para predição de vetor de movimento em relação ao campo da codificação de vídeo, a presente invenção fornece um método e um aparelho para construção de uma lista de vetor de movimento para predição de vetor de movimento, que resolvem o problema de construir listas de vetor de movimento de pelo menos duas pus em uma mesma unidade de codificação em uma maneira serial, e melhoram a capacidade de processamento paralelo. o método inclui: obter blocos vizinhos espaciais de um bloco de predição atual, onde o bloco de predição atual é localizado no interior de uma unidade de codificação atual; determinar blocos vizinhos disponíveis do bloco de predição atual de acordo com uma maneira de partição da unidade de codificação atual, em que os blocos vizinhos disponíveis são localizados no exterior da unidade de codificação atual; e obter preditores de vetor de movimento a partir dos blocos vizinhos disponíveis em uma sequência predefinida de acordo com preditores de vetor de movimento a partir dos blocos vizinhos disponíveis, e adicionar os preditores de vetor de movimento obtidos à lista de vetor de movimento.
Description
MÉTODO E APARELHO PARA CONSTRUÇÃO DE LISTA DE VETOR DE MOVIMENTO PARA PREDIÇÃO DE VETOR DE MOVIMENTO
CAMPO TÉCNICO
[001] A presente invenção refere-se ao campo da codificação de vídeo, e em particular, a um método e um aparelho para construção de uma lista de vetor de movimento para predição de vetor de movimento.
FUNDAMENTOS
[002] Uma tecnologia de predição interquadro na HEVC (High Efficiency Video Coding, codificação de vídeo de alta eficiência padrão) adota um método MCP convencional (Motion Compensated Prediction, predição compensada de movimento). Para predição de vetor de movimento, a HEVC adota um método de competição de vetores de movimento múltiplos, o que melhora a precisão da predição de vetor de movimento, melhorando assim o desempenho de compressão de codificação.
[003] O modo de predição interquadro HEVC pode incluir, mas não está limitado a, um modo em fusão (modo "merge"), um modo de pular (modo "skip"), e assim por diante, todos os quais utilizam a competição de vetores de movimento múltiplos para realizar a predição interquadro. Uma lista de vetor de movimento é utilizada quando a predição de vetor de movimento é executada. Para o modo de fusão e o modo de pular, a lista de vetor de movimento é permitida conter no máximo quatro preditores de vetor de movimento espacial e um preditor de vetor de movimento temporal, onde o modo de fusão e modo de pular compartilham uma lista de vetor de movimento. Um codificador seleciona um melhor preditor de vetor de movimento a partir da lista de vetor de movimento como um preditor de vetor de movimento de uma PU atual (Prediction Unit, unidade de predição <que pode ser chamada de um bloco de predição daqui em diante>).
[004] Um método para construção de uma lista de vetor de movimento pode incluir: [005] Como mostrado na Figura 1, blocos vizinhos espaciais da PU atual podem incluir: um bloco vizinho A0 (um bloco de referência inferior esquerdo correspondendo a uma posição de canto inferior esquerda da PU atual), um bloco vizinho A1 (um bloco de referência esquerdo correspondendo à posição de canto inferior esquerda da PU atual), um bloco vizinho B0 (um bloco de referência superior direito correspondendo a uma posição de canto superior direita da PU atual), um bloco vizinho B1 (um bloco de referência superior correspondendo à posição de canto superior direita da PU atual), e um bloco vizinho B2 (um bloco de referência superior esquerdo correspondendo a uma posição superior esquerda da PU atual). Um TMVP (Temporal Motion Vector predictor, preditor de vetor de movimento temporal) é um preditor de vetor de movimento correspondendo à PU atual no domínio do tempo.
[006] Em primeiro lugar, preditores de vetor de movimento são obtidos sucessivamente a partir dos blocos vizinhos e o TMVP em uma sequência do bloco vizinho A1, o bloco vizinho B1, o bloco vizinho B0, o bloco vizinho A0, o bloco vizinho B2, e o TMVP. Em seguida, os preditores de vetor de movimento obtidos são adicionados à lista de vetor de movimento de acordo com uma regra na HEVC. O processo de construção de lista de vetor de movimento específico é uma tecnologia bem conhecida por uma pessoa especialista na técnica, de modo que detalhes não serão aqui descritos de novo .
[007] Além disso, a CU atual (Coding Unit, unidade de codificação <que pode ser chamada de uma unidade de codificação daqui em diante>) pode incluir pelo menos duas PUs e listas de vetor de movimento das pelo menos duas PUs são construídas de maneira serial.
[008] Durante a implementação do processo de construção de lista de vetor de movimento acima, verifica-se que a técnica anterior tem pelo menos o seguinte problema: se a CU atual inclui pelo menos duas PUs, e as listas de vetor de movimento das pelo menos duas PUs são construídas de uma maneira serial, a velocidade de construção de listas de vetor de movimento das pelo menos duas PUs na mesma CU é lenta, reduzindo assim a capacidade de processamento paralelo.
SUMÁRIO
[009] Modalidades da presente invenção fornecem um método e um aparelho para construção de uma lista de vetor de movimento para predição de vetor de movimento, que resolve o problema da construção de listas de vetor de movimento de pelo menos duas PUs em uma mesma unidade de codificação de uma maneira serial, e melhora a capacidade de processamento paralelo.
[010] A fim de alcançar o objetivo acima referido, as seguintes soluções técnicas são adotadas nas modalidades da presente invenção.
[011] Em um aspecto, um método para construção de uma lista de vetor de movimento para predição de vetor de movimento é fornecido, o qual inclui: obter blocos vizinhos espaciais de um bloco de predição atual, em que o bloco de predição atual é localizado no interior de uma unidade de codificação atual; determinar blocos vizinhos disponíveis do bloco de predição atual de acordo com uma maneira de partição da unidade de codificação atual, em que os blocos vizinhos disponíveis são localizados no exterior da unidade de codificação atual; e obter preditores de vetor de movimento a partir dos blocos vizinhos disponíveis em uma sequência predefinida de acordo com preditores de vetor de movimento a partir dos blocos vizinhos disponíveis, e adicionar os preditores de vetor de movimento obtidos à lista de vetor de movimento.
[012] Em outro aspecto, um aparelho para construção de uma lista de vetor de movimento para predição de vetor de movimento é fornecido, o qual inclui: um receptor, configurado para obter blocos vizinhos espaciais de um bloco de predição atual, em que o bloco de predição atual é localizado no interior de uma unidade de codificação atual; e um processador, configurado para determinar blocos vizinhos disponíveis do bloco de predição atual de acordo com uma maneira de partição da unidade de codificação atual, em que os blocos vizinhos disponíveis são localizados no exterior da unidade de codificação atual; e obter preditores de vetor de movimento a partir dos blocos vizinhos disponíveis em uma sequência predefinida de acordo com preditores de vetor de movimento a partir dos blocos vizinhos disponíveis, e adicionar os preditores de vetor de movimento obtidos à lista de vetor de movimento.
[013] No método e aparelho para construção de uma lista de vetor de movimento para predição de vetor de movimento fornecidos em modalidades da presente invenção, por meio das soluções acima, quando uma lista de vetor de movimento de um bloco de predição é construída, blocos vizinhos espaciais do bloco de predição atual são obtidos em primeiro lugar, em que o bloco de predição atual é localizado dentro de uma unidade de codificação atual; blocos vizinhos disponíveis do bloco de predição atual são determinados de acordo com uma maneira de partição da unidade de codificação atual, em que os blocos vizinhos disponíveis são localizados no exterior da unidade de codificação atual; e preditores de vetor de movimento são obtidos a partir dos blocos vizinhos disponíveis em uma sequência predefinida de acordo com preditores de vetor de movimento a partir dos blocos vizinhos disponíveis, e os preditores de vetor de movimento obtidos são adicionados à lista de vetor de movimento. Deste modo, quando a lista de vetor de movimento do bloco de predição é construída, nenhum bloco vizinho localizado no interior da unidade de codificação atual é considerado. Quando a unidade de codificação inclui pelo menos dois blocos de predição, listas de vetor de movimento dos pelo menos dois blocos de predição podem ser construídas de uma maneira paralela, o que aumenta a velocidade de construção das listas de vetor de movimento dos pelo menos dois blocos de predição na mesma unidade de codificação, e melhora a capacidade de processamento paralelo.
BREVE DESCRIÇÃO DOS DESENHOS
[014] Para ilustrar as soluções técnicas nas modalidades da presente invenção ou na técnica anterior de forma mais clara, o que segue descreve resumidamente os desenhos anexos necessários para descrever as modalidades ou a técnica anterior. Aparentemente, os desenhos anexos na descrição seguinte mostram apenas algumas modalidades da presente invenção, e uma pessoa com conhecimentos atuais na técnica pode ainda derivar outros desenhos a partir destes desenhos em anexo sem esforços criativos.
[015] A Figura 1 é um diagrama estrutural esquemático de uma unidade de codificação CU, uma PU, e blocos vizinhos de acordo com uma modalidade;
[016] A Figura 2a à Figura 2g são diagramas esquemáticos estruturais de uma unidade de codificação CU com diferentes maneiras de partição de acordo com uma modalidade;
[017] A Figura 3 é um fluxograma de um método para construção de uma lista de vetor de movimento para predição de vetor de movimento de acordo com uma modalidade; e [018] A Figura 4 é um diagrama estrutural esquemático de um aparelho para construção de uma lista de vetor de movimento para predição de vetor de movimento de acordo com uma modalidade.
DESCRIÇÃO DAS MODALIDADES
[019] O seguinte descreve clara e completamente as soluções técnicas nas modalidades da presente invenção com referência aos desenhos anexos nas modalidades da presente invenção. Aparentemente, as modalidades descritas são apenas uma parte, em vez de todas as modalidades da presente invenção. Todas as outras modalidades, obtidas por um vulgar perito na técnica com base nas modalidades da presente invenção sem esforços de criação, devem cair dentro do âmbito de proteção da presente invenção.
[020] Na técnica anterior, uma CU pode incluir pelo menos duas PUs, e listas de vetor de movimento das pelo menos duas PUs são construídas de uma maneira serial. Ou seja, após a lista de vetor de movimento ser construída para uma PU atual, uma lista de vetor de movimento começa a ser construída para a próxima PU.
[021] O processo específico pode incluir: Como mostrado na Figura 2a à Figura 2g, uma CU (quadro de linha sólida nas figuras) pode ser ainda particionada em várias PUs. Na HEVC, a CU pode ter sete maneiras de partição (partition). Por exemplo, nas maneiras de partição mostradas na Figura 2a à Figura 2c, uma CU atual é particionada em duas PUs (PU1 e PU2) nos lados esquerdo e direito. Para outro exemplo, na maneira de partição mostrada na Figura 2d, a CU atual é particionada em quatro PUs (PU1, PU2, PU3, e PU4), e outros tipos não são aqui descritos.
Tendo a partição mostrada na Figura 2a como um exemplo, uma vez que um bloco de referência espacial A1 da PU2 é localizado no interior da PU1, uma lista de vetor de movimento da PU2 pode começar a ser construída apenas após codificação PU1 estar terminada, onde as listas de vetor de movimento da PU1 e a PU2 são construídas de maneira serial. Especificamente, a lista de vetor de movimento da PU1 é primeiro construída de acordo com o método acima, e, em seguida, a lista de vetor de movimento da PU2 é construída de acordo com o método acima.
[022] Desta forma, a velocidade de construção das listas de vetor de movimento de pelo menos duas PUs é lenta, e o desempenho de codificação de compressão é degradado.
[023] A fim de resolver o problema acima que a velocidade de construção das listas de vetor de movimento de pelo menos duas PUs é lenta e o desempenho de codificação de compressão é degradado, um método para construção de uma lista de vetor de movimento para predição de vetor de movimento é fornecido em uma modalidade. Como mostrado na Figura 3, o método pode incluir: 301: Obter blocos vizinhos espaciais de um bloco de predição atual, onde o bloco de predição atual é localizado no interior de uma unidade de codificação atual. 302: Determinar blocos vizinhos disponíveis do bloco de predição atual de acordo com uma maneira de partição da unidade de codificação atual, em que os blocos vizinhos disponíveis são localizados no exterior da unidade de codificação atual. 303: Obter preditores de vetor de movimento a partir dos blocos vizinhos disponíveis em uma sequência predefinida de acordo com preditores de vetor de movimento a partir dos blocos vizinhos disponíveis, e adicionar os preditores de vetor de movimento obtidos à lista de vetor de movimento.
[024] Através da solução acima, quando construindo uma lista de vetor de movimento de um bloco de predição, blocos vizinhos espaciais do bloco de predição atual são obtidos em primeiro lugar, em que o bloco de predição atual é localizado no interior de uma unidade de codificação atual; blocos vizinhos disponíveis do bloco de predição atual são determinados de acordo com uma maneira de partição da unidade de codificação atual, em que os blocos vizinhos disponíveis são localizados no exterior da unidade de codificação atual; e preditores de vetor de movimento são obtidos a partir dos blocos vizinhos disponíveis em uma sequência predefinida de acordo com preditores de vetor de movimento a partir dos blocos vizinhos disponíveis, e os preditores de vetor de movimento obtidos são adicionados à lista de vetor de movimento. Deste modo, quando a lista de vetor de movimento do bloco de predição é construída, nenhum bloco vizinho localizado no interior da unidade de codificação atual é considerado. Quando a unidade de codificação inclui pelo menos dois blocos de predição, listas de vetor de movimento dos pelo menos dois blocos de predição podem ser construídas de uma maneira paralela, o que aumenta a velocidade de construção das listas de vetor de movimento dos pelo menos dois blocos de predição da mesma unidade de codificação, e melhora a capacidade de processamento paralelo.
[025] Um outro método para construção de uma lista de vetor de movimento para a predição de vetor de movimento é fornecido em uma modalidade, e o método é ainda uma extensão do método mostrado na Figura 3. Como mostrado na Figura 3, o método pode incluir: 301: Obter blocos vizinhos espaciais de um bloco de predição atual, onde o bloco de predição atual é localizado no interior de uma unidade de codificação atual.
[026] Como mostrado na Figura 1, os blocos vizinhos espaciais do bloco de predição podem incluir: um bloco vizinho A0 localizado em um lado inferior esquerdo do bloco de predição, um bloco vizinho A1 localizado em um lado esquerdo do bloco de predição, um bloco vizinho B0 em um lado superior direito do bloco de predição, um bloco vizinho B1 em um lado superior do bloco de predição, e um bloco vizinho B2 em um lado superior esquerdo do bloco de predição.
[027] Um método para obter os blocos vizinhos espaciais do bloco de predição, o bloco de predição, e os blocos vizinhos não se limita a esta modalidade, e é uma tecnologia bem conhecida por uma pessoa especialista na técnica, de modo que os detalhes não serão aqui descritos novamente. 302: Determinar blocos vizinhos disponíveis do bloco de predição atual de acordo com uma maneira de partição da unidade de codificação atual, em que os blocos vizinhos disponíveis são localizados no exterior da unidade de codificação atual.
[028] Além disso, como mostrado na Figura 2e à Figura 2g, se a unidade de codificação atual CU é particionada em um primeiro bloco de predição PU1 e um segundo bloco de predição PU2 nos lados superior e inferior, e o bloco de predição atual é o segundo bloco de predição PU2, os blocos vizinhos disponíveis da PU2 incluem: o bloco vizinho A0, o bloco vizinho A1, o bloco vizinho B0, e o bloco vizinho B2 do segundo bloco de predição. Neste momento, o bloco vizinho B1 é localizado no interior da unidade de codificação atual CU, e não atua como o bloco vizinho disponível do segundo bloco de predição PU2.
[029] Como mostrado na Figura 2a à Figura 2c, se a unidade de codificação atual CU é particionada em um primeiro bloco de predição PU1 e um segundo bloco de predição PU2 nos lados esquerdo e direito, e o bloco de predição atual é o segundo bloco de predição PU2, os blocos vizinhos disponíveis da PU2 incluem: bloco vizinho A0, bloco vizinho B0, bloco vizinho B1, e o bloco vizinho B2 do segundo bloco de predição PU2. Neste momento, o bloco vizinho A1 está localizado no interior da unidade de codificação atual CU, e não atua como o bloco vizinho disponível do segundo bloco de predição PU2.
[030] Além disso, os blocos vizinhos disponíveis podem ser determinados usando bits sinalizadores dos blocos vizinhos. Os bits sinalizadores podem, mas não se limitam a ser usados para identificar que os blocos vizinhos não são localizados no interior da CU.
[031] Um método para determinação dos blocos vizinhos disponíveis usando o bit sinalizador (es) dos blocos vizinhos não se limita a esta modalidade, e é uma tecnologia bem conhecida por uma pessoa especialista na técnica, de modo que os detalhes não serão aqui descritos de novo: 303: Obter preditores de vetor de movimento a partir dos blocos vizinhos disponíveis em uma sequência predefinida de acordo com preditores de vetor de movimento a partir dos blocos vizinhos disponíveis, e adicionar os preditores de vetor de movimento obtidos à lista de vetor de movimento.
[032] Além disso, a obtenção de preditores de vetor de movimento dos blocos vizinhos disponíveis em uma sequência predefinida pode incluir: se os blocos vizinhos disponíveis são blocos de codificação interquadro, obter os preditores de vetor de movimento a partir dos blocos vizinhos disponíveis em uma sequência do bloco vizinho A1, o bloco vizinho B1, o bloco vizinho B0, o bloco vizinho A0, e o bloco vizinho B2.
[033] Especificamente, se os blocos vizinhos disponíveis são blocos de codificação interquadro, isto indica que os blocos vizinhos incluem informação de vetor de movimento, e os preditores de vetor de movimento são obtidos a partir dos blocos vizinhos.
[034] Especificamente, se os blocos vizinhos disponíveis do bloco de predição incluem: o bloco vizinho A0, o bloco vizinho A1, o bloco vizinho B0, e o bloco vizinho B2 do segundo bloco de predição, os preditores de vetor de movimento são obtidos a partir do bloco vizinho A0, o bloco vizinho A1, o bloco vizinho B0, e o bloco vizinho B2 em uma sequência do bloco vizinho A0, o bloco vizinho A1, o bloco vizinho B0, e o bloco vizinho B2. Em face do exposto, quando a CU atual é particionada em primeira e a segunda unidades de predição nos lados superior e inferior, os blocos vizinhos disponíveis do segundo bloco de predição não incluem o bloco vizinho B1 localizado no interior do primeiro bloco de predição. Por conseguinte, o preditor de vetor de movimento a partir de B1 não é obtido.
[035] Se os blocos vizinhos disponíveis do bloco de predição incluem: o bloco vizinho A0, o bloco vizinho B0, o bloco vizinho B1, e o bloco vizinho B2 do segundo bloco de predição PU2, os preditores de vetor de movimento são obtidos a partir do bloco vizinho A0, o bloco vizinho B0, o bloco vizinho B1, e o bloco vizinho B2 em uma sequência do bloco vizinho A0, o bloco vizinho B0, o bloco vizinho B1, e o bloco vizinho B2. Em face do exposto, quando a CU atual é particionada na primeira e a segunda unidade de predição nos lados esquerdo e direito, os blocos vizinhos disponíveis do segundo bloco de predição não incluem o bloco vizinho A1 localizado no interior do primeiro bloco de predição. Portanto, o preditor de vetor de movimento a partir do A1 não é obtido.
[036] Além disso, se o preditor de vetor de movimento obtido é um preditor de vetor de movimento de um bloco vizinho disponível atual, a adição dos preditores de vetor de movimento obtidos à lista de vetor de movimento inclui: determinar se o preditor de vetor de movimento do bloco vizinho disponível atual é o mesmo que preditores de vetor de movimento de outros blocos vizinhos disponíveis exceto o bloco vizinho disponível atual; e se não, adicionar o preditor de vetor de movimento do bloco vizinho disponível atual para a lista de vetor de movimento.
[037] Em face do exposto, durante o processo descrito acima, uma vez que os blocos vizinhos disponíveis não incluem o bloco vizinho localizado no interior da CU atual, múltiplas PUs da CU não têm dependência, e pode ser executado em paralelo. Por exemplo, quando a CU atual é particionada em primeira e a segunda unidades de predição nos lados esquerdo e direito, os blocos vizinhos disponíveis do segundo bloco de predição não incluem o bloco vizinho A1 localizado no interior do primeiro bloco de predição, e o preditor de vetor de movimento do A1 não está envolvido no processo de determinação. Portanto, o segundo bloco de predição e o primeiro bloco de predição podem executar o processo em paralelo.
[038] Especificamente, como uma forma de implementação da modalidade, se o bloco vizinho disponível atual é o bloco vizinho B1, é determinado se um preditor de vetor de movimento do bloco vizinho B1 é o mesmo que um preditor de vetor de movimento do bloco vizinho A1; se o bloco vizinho disponível atual é o bloco vizinho B0, é determinado se um preditor de vetor de movimento do bloco vizinho B0 é o mesmo que o preditor de vetor de movimento do bloco vizinho B1; se o bloco vizinho disponível atual é o bloco vizinho A0, é determinado se um preditor de vetor de movimento do bloco vizinho A0 é o mesmo que o preditor de vetor de movimento do bloco vizinho A1; e se o bloco vizinho disponível atual é o bloco vizinho B2, é determinado se um preditor de vetor de movimento do bloco vizinho B2 é o mesmo que pelo menos um do preditor de vetor de movimento do bloco vizinho A1 e o preditor de vetor de movimento do bloco vizinho B1.
[039] Além disso, se o preditor de vetor de movimento obtido é um preditor de vetor de movimento de um bloco vizinho disponível atual, a adição dos preditores de vetor de movimento obtidos para a lista de vetor de movimento pode incluir ainda: determinar se o preditor de vetor de movimento do bloco vizinho disponível atual é o mesmo que preditores de vetor de movimento que foram adicionados à lista de vetor de movimento; e se não, adicionar o preditor de vetor de movimento do bloco vizinho disponível atual para a lista de vetor de movimento.
[040] Especificamente, como uma forma de implementação da modalidade, se o bloco vizinho disponível atual é o bloco vizinho B1, é determinado se o preditor de vetor de movimento do bloco vizinho B1 é o mesmo que o preditor de vetor de movimento do bloco vizinho A1 que foi adicionado à lista de vetor de movimento; se o bloco vizinho disponível atual é o bloco vizinho B0, é determinado se o preditor de vetor de movimento do bloco vizinho B0 é o mesmo que o preditor de vetor de movimento do bloco vizinho B1 que foi adicionado à lista de vetor de movimento; se o bloco vizinho disponível atual é o bloco vizinho A0, é determinado se o preditor de vetor de movimento do bloco vizinho A0 é o mesmo que o preditor de vetor de movimento do bloco vizinho A1 que foi adicionado à lista de vetor de movimento; e se o bloco vizinho disponível atual é o bloco vizinho B2, é determinado se o preditor de vetor de movimento do bloco vizinho B2 é o mesmo que pelo menos um dos preditores de vetor de movimento do bloco vizinho A1 que foi adicionado à lista de vetor de movimento e o preditor de vetor de movimento, do bloco vizinho B1 que foi adicionado à lista de vetor de movimento.
[041] Além disso, um TMVP pode ainda ser considerado durante a montagem da lista de vetor de movimento.
[042] Como uma forma de implementação da modalidade, a obtenção de preditores de vetor de movimento a partir dos blocos vizinhos disponíveis em uma sequência predefinida pode ser ainda: obter preditores de vetor de movimento a partir dos blocos vizinhos disponíveis e / ou o TMVP em uma sequência do bloco vizinho A1, o bloco vizinho B1, o bloco vizinho B0, o bloco vizinho A0, o bloco vizinho B2, e o TMVP.
[043] A fim de descrever a solução da presente invenção com mais clareza, o método para construir a lista de vetor de movimento para a CU com diferentes maneiras de partição é especificamente descrito abaixo: 1. A CU é particionada em uma PU1 e uma PU2 em lados esquerdo e direito (1) Construir uma lista de vetor de movimento da PU1 1) Obter preditores de vetor de movimento a partir do bloco vizinho A1, o bloco vizinho B1, o bloco vizinho B0, o bloco vizinho A0, e o bloco vizinho B2 em uma sequência do bloco vizinho A1, o bloco vizinho B1, o bloco vizinho B0, o bloco vizinho A0, e o bloco vizinho B2, e adicioná-los à lista de vetor de movimento. a. Quando o bloco vizinho atual é o bloco vizinho A1, e apenas quando o bloco vizinho A1 inclui um preditor de vetor de movimento, adicionar o preditor de vetor de movimento do bloco vizinho A1 à lista de vetor de movimento; b. quando o bloco vizinho atual é o bloco vizinho B1, e apenas quando o bloco vizinho B1 inclui um preditor de vetor de movimento, e o preditor é diferente do preditor de vetor de movimento, do bloco vizinho A1 que foi adicionado à lista de vetor de movimento, adicionar o preditor de vetor de movimento do bloco vizinho B1 para a lista de vetor de movimento; c. quando o bloco vizinho atual é o bloco vizinho B0, e apenas quando o bloco vizinho B0 inclui um preditor de vetor de movimento, e o preditor é diferente do preditor de vetor de movimento, do bloco vizinho B1 que foi adicionado à lista de vetor de movimento, adicionar o preditor de vetor de movimento do bloco vizinho B0 à lista de vetor de movimento; d. quando o bloco vizinho atual é o bloco vizinho A0, e apenas quando o bloco vizinho A0 inclui um preditor de vetor de movimento, e o preditor é diferente do preditor de vetor de movimento, do bloco vizinho A1 que foi adicionado à lista de vetor de movimento, adicionar o preditor de vetor de movimento do bloco vizinho A0 à lista de vetor de movimento; e e. quando o bloco vizinho atual é o bloco vizinho B2, e apenas quando o bloco vizinho B2 inclui um preditor de vetor de movimento, o preditor é diferente de tanto do preditor de vetor de movimento, do bloco vizinho A1 que foi adicionado à lista de vetor de movimento, e o preditor de vetor de movimento, do bloco vizinho B1 que foi adicionado à lista de vetor de movimento, e o preditor de vetor de movimento de pelo menos um do bloco vizinho A1, o bloco vizinho B1, o bloco vizinho B0, e o bloco vizinho A0 não foi adicionado à lista de vetor de movimento, adicionar o preditor de vetor de movimento do bloco vizinho B2 à lista de vetor de movimento. 2) Obter o TMVP, e adicioná-lo à lista de vetor de movimento. Especificamente, o TMVP da PU1 é obtido utilizando uma imagem de referência temporal da PU1, e se o TMVP da PU1 está disponível, o TMVP é adicionado à lista de vetor de movimento. (2) Construir uma lista de vetor de movimento da PU2 1) Obter preditores de vetor de movimento do a partir bloco vizinho B1, o bloco vizinho B0, o bloco vizinho A0, e o bloco vizinho B2 em uma sequência do bloco vizinho B1, o bloco vizinho B0, o bloco vizinho A0, e o bloco vizinho B2, e adicioná-los à lista de vetor de movimento. a. Quando o bloco vizinho atual é o bloco vizinho B1, e apenas quando o bloco vizinho B1 inclui um preditor de vetor de movimento, adicionar o preditor de vetor de movimento do bloco vizinho B1 à lista de vetor de movimento; b. quando o bloco vizinho atual é o bloco vizinho B0, e apenas quando o bloco vizinho B0 inclui um preditor de vetor de movimento, e o valor de predição é diferente do preditor de vetor de movimento, do bloco vizinho B1 que foi adicionado à lista de vetor de movimento, adicionar o preditor de vetor de movimento do bloco vizinho B0 à lista de vetor de movimento; c. quando o bloco vizinho atual é o bloco vizinho A0, e apenas quando o bloco vizinho A0 inclui um preditor de vetor de movimento, adicionar o preditor de vetor de movimento do bloco vizinho A0 à lista de vetor de movimento; e d. quando o bloco vizinho atual é o bloco vizinho B2, e apenas quando o bloco vizinho B2 inclui um preditor de vetor de movimento, e o preditor é diferente do preditor de vetor de movimento, do bloco vizinho B1 que foi adicionado à lista de vetor de movimento, adicionar o preditor de vetor de movimento do bloco vizinho B2 para a lista de vetor de movimento. 2) Obter o TMVP, e adicioná-lo à lista de vetor de movimento. Especificamente, o TMVP da PU1 é obtido utilizando uma imagem de referência temporal da PU1, e se o TMVP da PU1 está disponível, o TMVP é adicionado à lista de vetor de movimento.
[044] Neste momento, desde quando a lista de vetor de movimento da PU2 é construída, o bloco vizinho A1 da PU2 não é considerado, as listas de vetor de movimento da PU1 e PU2 podem ser construídas de forma paralela. 2. A CU é particionada em uma PU1 e uma PU2 em lados superior e inferior (1) Construir uma lista de vetor de movimento da PU1 [045] Este é semelhante ao método de "(1) Construir uma lista de vetor de movimento da PU1" em "1. A CU é particionada em uma PU1 e uma PU2 em lados esquerdo e direito", de modo que os detalhes não serão aqui descritos de novo. (2) Construir uma lista de vetor de movimento da PU2 1) Obter preditores de vetor de movimento do a partir bloco vizinho B1, o bloco vizinho B0, o bloco vizinho A0, e o bloco vizinho B2 em uma sequência do bloco vizinho B1, o bloco vizinho B0, o bloco vizinho A0, e o bloco vizinho B2, e adicioná-los à lista de vetor de movimento. a. Quando o bloco vizinho atual é o bloco vizinho A1, e apenas quando o bloco vizinho A1 inclui um preditor de vetor de movimento, adicionar o preditor de vetor de movimento do bloco vizinho A1 à lista de vetor de movimento; b. quando o bloco vizinho atual é o bloco vizinho B0, e apenas quando o bloco vizinho B0 inclui um preditor de vetor de movimento, adicionar o preditor de vetor de movimento do bloco vizinho B0 à lista de vetor de movimento; c. quando o bloco vizinho atual é o bloco vizinho A0, e apenas quando o bloco vizinho A0 inclui um preditor de vetor de movimento, e o preditor é diferente do preditor de vetor de movimento, do bloco vizinho A1 que foi adicionado à lista de vetor de movimento, adicionar o preditor de vetor de movimento do bloco vizinho A0 à lista de vetor de movimento; e d. quando o bloco vizinho atual é o bloco vizinho B2, e apenas quando o bloco vizinho B2 inclui um preditor de vetor de movimento, e o preditor é diferente do preditor de vetor de movimento, do bloco vizinho A1 que foi adicionado à lista de vetor de movimento, adicionar o preditor de vetor de movimento do bloco vizinho B2 para a lista de vetor de movimento. 2) Obter o TMVP, e adicioná-lo à lista de vetor de movimento. Especificamente, o TMVP da PU1 é obtido utilizando uma imagem de referência temporal da PU1, e se o TMVP da PU1 está disponível, o TMVP é adicionado à lista de vetor de movimento.
[046] Neste momento, desde quando a lista de vetor de movimento da PU2 é construída, o bloco vizinho B1 da PU2 não é considerado, as listas de vetor de movimento da PU1 e PU2 podem ser construídas de forma paralela.
[047] Através da solução acima referida, quando uma lista de vetor de movimento de um bloco de predição é construída, blocos vizinhos espaciais do bloco de predição atual são obtidos em primeiro lugar, em que o bloco de predição atual é localizado no interior de uma unidade de codificação atual; blocos vizinhos disponíveis do bloco de predição atual são determinados de acordo com uma maneira de partição da unidade de codificação atual, em que os blocos vizinhos disponíveis são localizados no exterior da unidade de codificação atual; e preditores de vetor de movimento são obtidos a partir dos blocos vizinhos disponíveis em uma sequência predefinida de acordo com preditores de vetor de movimento a partir dos blocos vizinhos disponíveis, e os preditores de vetor de movimento obtidos são adicionados à lista de vetor de movimento. Deste modo, quando a lista de vetor de movimento do bloco de predição é construída, nenhum bloco vizinho localizado no interior da unidade de codificação atual é considerado. Quando a unidade de codificação inclui pelo menos dois blocos de predição, listas de vetor de movimento dos pelo menos dois blocos de predição podem ser construídas de uma maneira paralela, o que aumenta a velocidade de construção das listas de vetor de movimento dos pelo menos dois blocos de predição da mesma unidade de codificação, e melhora a capacidade de processamento paralelo.
[048] Algumas modalidades do aparelho são fornecidas abaixo, e as modalidades de aparelhos fornecidas correspondem, respectivamente, às modalidades de método acima. Referindo-se às modalidades de método para maneiras de implementação específicas do aparelho e um receptor e um processador incluído no aparelho.
[049] Um aparelho para construção de uma lista de vetor de movimento para predição de vetor de movimento é fornecido em uma modalidade. Como mostrado na Figura 4, o aparelho pode incluir: um receptor 41, configurado para obter blocos vizinhos espaciais de um bloco de predição atual, em que o bloco de predição atual é localizado no interior de uma unidade de codificação atual; e um processador 42, configurado para determinar blocos vizinhos disponíveis do bloco de predição atual de acordo com uma maneira de partição da unidade de codificação atual, em que os blocos vizinhos disponíveis são localizados no exterior da unidade de codificação atual; e obter preditores de vetor de movimento a partir dos blocos vizinhos disponíveis em uma sequência predefinida de acordo com preditores de vetor de movimento a partir dos blocos vizinhos disponíveis, e adicionar os preditores de vetor de movimento obtidos à lista de vetor de movimento.
[050] Além disso, os blocos vizinhos espaciais do bloco de predição obtido pelo receptor 41 incluem: um bloco vizinho A0 localizado em um lado inferior esquerdo do bloco de predição, um bloco vizinho A1 localizado em um lado esquerdo do bloco de predição, um bloco vizinho B0 em um lado superior direito do bloco de predição, um bloco vizinho B1 em um lado superior do bloco de predição, e um bloco vizinho B2 em um lado superior esquerdo do bloco de predição.
[051] Além disso, o processador 42 é ainda configurado para: se a unidade de codificação atual é particionada em um primeiro bloco de predição e um segundo bloco de predição nos lados superior e inferior, e o bloco de predição atual é o segundo bloco de predição, os blocos vizinhos disponíveis do bloco de predição incluem: o bloco vizinho A0, o bloco vizinho A1, o bloco vizinho B0, e o bloco vizinho B2 do segundo bloco de predição; e se a unidade de codificação atual é particionada em um primeiro bloco de predição e um segundo bloco de predição nos lados esquerdo e direito, e o bloco de predição atual é o segundo bloco de predição, os blocos vizinhos disponíveis do bloco de predição incluem: o bloco vizinho A0, o bloco vizinho B0, o bloco vizinho B1, e o bloco vizinho B2 do segundo bloco de predição.
[052] Além disso, o processador 42 é ainda configurado para: se os blocos vizinhos disponíveis são blocos de codificação interquadro, obter os preditores de vetor de movimento dos blocos vizinhos disponíveis em uma sequência do bloco vizinho A1, o bloco vizinho B1, o bloco vizinho B0, o bloco vizinho A0, e o bloco vizinho B2.
[053] Além disso, o processador 42 é ainda configurado para determinar se um preditor de vetor de movimento de um bloco vizinho disponível atual é o mesmo que preditores de vetor de movimento de outros blocos vizinhos disponíveis, exceto o bloco vizinho disponível atual; e se não, adicionar o preditor de vetor de movimento do bloco vizinho disponível atual para a lista de vetor de movimento.
[054] Além disso, o processador 42 é ainda configurado para determinar se um preditor de vetor de movimento de um bloco vizinho disponível atual é o mesmo que preditores de vetor de movimento que foram adicionados à lista de vetor de movimento; e se não, adicionar o preditor de vetor de movimento do bloco vizinho disponível atual para a lista de vetor de movimento.
[055] Além disso, o processador 42 é ainda configurado para: se o bloco vizinho disponível atual é o bloco vizinho B1, determinar se um preditor de vetor de movimento do bloco vizinho B1 é o mesmo que um preditor de vetor de movimento do bloco vizinho A1; se o bloco vizinho disponível atual é o bloco vizinho B0, determinar se um preditor de vetor de movimento do bloco vizinho B0 é o mesmo que o preditor de vetor de movimento do bloco vizinho B1; se o bloco vizinho disponível atual é o bloco vizinho A0, determinar se um preditor de vetor de movimento do bloco vizinho A0 é o mesmo que o preditor de vetor de movimento do bloco vizinho A1; e se o bloco vizinho disponível atual é o bloco vizinho B2, determinar se um preditor de vetor de movimento do bloco vizinho B2 é o mesmo que pelo menos um do preditor de vetor de movimento do bloco vizinho A1 e o preditor de vetor de movimento do bloco vizinho B1.
[056] Além disso, o processador 42 é ainda configurado para: se o bloco vizinho disponível atual é o bloco vizinho B1, determinar se um preditor de vetor de movimento do bloco vizinho B1 é o mesmo que um preditor de vetor de movimento do bloco vizinho A1 que foi adicionado à lista de vetor de movimento; se o bloco vizinho disponível atual é o bloco vizinho B0, determinar se um preditor de vetor de movimento do bloco vizinho B0 é o mesmo que o preditor de vetor de movimento do bloco vizinho B1 que foi adicionado à lista de vetor de movimento; se o bloco vizinho disponível atual é o bloco vizinho A0, determinar se um preditor de vetor de movimento do bloco vizinho A0 é o mesmo que o preditor de vetor de movimento do bloco vizinho A1 que foi adicionado à lista de vetor de movimento; e se o bloco vizinho disponível atual é o bloco vizinho B2, determinar se um preditor de vetor de movimento do bloco vizinho B2 é o mesmo que pelo menos um dos preditores de vetor de movimento do bloco vizinho A1 que foi adicionado à lista de vetor de movimento e o preditor de vetor de movimento do bloco vizinho B1 que foi adicionado à lista de vetor de movimento.
[057] Através da solução acima referida, quando uma lista de vetor de movimento de um bloco de predição é construída, o receptor obtém blocos vizinhos espaciais do bloco de predição atual em primeiro lugar, em que o bloco de predição atual é localizado no interior de uma unidade de codificação atual; e o processador determina blocos vizinhos disponíveis do bloco de predição atual de acordo com uma maneira de partição da unidade de codificação atual, em que os blocos vizinhos disponíveis são localizados no exterior da unidade de codificação atual; e obtém os preditores de vetor de movimento a partir dos blocos vizinhos disponíveis em uma sequência predefinida de acordo com preditores de vetor de movimento a partir dos blocos vizinhos disponíveis, e adiciona os preditores de vetor de movimento obtidos à lista de vetor de movimento. Deste modo, quando a lista de vetor de movimento do bloco de predição é construída, nenhum bloco vizinho localizado no interior da unidade de codificação atual é considerado. Quando a unidade de codificação inclui pelo menos dois blocos de predição, listas de vetor de movimento dos pelo menos dois blocos de predição podem ser construídas de uma maneira paralela, o que aumenta a velocidade de construção das listas de vetor de movimento dos pelo menos dois blocos de predição da mesma unidade de codificação, e melhora a capacidade de processamento paralelo.
[058] Através da descrição anterior de modalidades, um perito na técnica pode entender claramente que a presente invenção pode ser implementada por software além de hardware universal necessário, e certamente pode também ser implementada por hardware. No entanto, na maioria das circunstâncias, o primeiro é preferido. Com base em tal compreensão, as soluções técnicas da presente invenção essencialmente, ou a parte que contribui para a técnica anterior, podem ser realizadas sob a forma de um produto de software. O produto de software está armazenado em um meio de armazenamento legível por computador, por exemplo, um disquete, um disco rígido, um disco óptico ou um computador, e inclui várias instruções para instruir um dispositivo de computador (o qual pode ser um computador pessoal, um servidor, ou um dispositivo de rede) para realizar os métodos descritos nas modalidades da presente invenção.
[059] As descrições anteriores são meramente modalidades específicas da presente invenção, mas não se destinam a limitar o âmbito de proteção da presente invenção. Qualquer variação ou substituição facilmente descoberta por um perito na técnica dentro do âmbito de técnico descrito na presente invenção cairá dentro do âmbito de proteção da presente invenção. Portanto, o âmbito de proteção da presente invenção será objeto das reivindicações anexas.
REIVINDICAÇÕES
Claims (2)
1. Método para construção de uma lista de vetor de movimento para predição de vetor de movimento, caracterizado pelo fato de que compreende: obter blocos vizinhos espaciais de um bloco de predição atual, em que o bloco de predição atual é localizado no interior de uma unidade de codificação atual; determinar blocos vizinhos disponíveis do bloco de predição atual de acordo com uma maneira de partição da unidade de codificação atual, em que os blocos vizinhos disponíveis são localizados no exterior da unidade de codificação atual; e obter vetores de movimento a partir dos blocos vizinhos disponíveis em uma sequência predefinida de acordo com vetores de movimento a partir dos blocos vizinhos disponíveis, e adicionar os vetores de movimento que são preditos a partir dos blocos vizinhos disponíveis à lista de vetor de movimento; em que os blocos vizinhos espaciais do bloco de predição compreendem: um bloco vizinho A0 localizado em um lado inferior esquerdo do bloco de predição, um bloco vizinho A1 localizado em um lado esquerdo do bloco de predição, um bloco vizinho B0 em um lado superior direito do bloco de predição, um bloco vizinho B1 em um lado superior do bloco de predição, e um bloco vizinho B2 em um lado superior esquerdo do bloco de predição; em que determinar blocos vizinhos disponíveis do bloco de predição atual de acordo com uma maneira de partição da unidade de codificação atual compreende: se a unidade de codificação atual é particionada em um primeiro bloco de predição e um segundo bloco de predição em lados superior e inferior, e o bloco de predição atual é o segundo bloco de predição, os blocos vizinhos disponíveis do bloco de predição compreendem: o bloco vizinho A0, o bloco vizinho A1, o bloco vizinho B0, e o bloco vizinho B2 do segundo bloco de predição; e se a unidade de codificação atual é particionada em um primeiro bloco de predição e um segundo bloco de predição nos lados esquerdo e direito, e o bloco de predição atual é o segundo bloco de predição, os blocos vizinhos disponíveis do bloco de predição compreendem: o bloco vizinho A0, o bloco vizinho B0, o bloco vizinho B1, e o bloco vizinho B2 do segundo bloco de predição; em que obter vetores de movimento a partir dos blocos vizinhos disponíveis em uma sequência predefinida compreende: se os blocos vizinhos disponíveis são blocos de codificação interquadro, obter os vetores de movimento a partir dos blocos vizinhos disponíveis em uma sequência do bloco vizinho A1, o bloco vizinho B1, o bloco vizinho B0, o bloco vizinho A0, e o bloco vizinho B2; e se o vetor de movimento obtido é um vetor de movimento de um bloco vizinho atual disponível, a adição dos vetores de movimento obtidos à lista de vetor de movimento compreende: determinar se o vetor de movimento do bloco vizinho disponível atual é o mesmo que um vetor de movimento que foi adicionado à lista de vetores de movimento; e se não, adicionar o vetor de movimento do bloco vizinho disponível atual para a lista de vetores de movimento; em que se a unidade de codificação for particionada em um primeiro bloco de predição e um segundo bloco de predição em lados esquerdo e direito, e o bloco de predição atual for o segundo bloco de predição, a adição dos vetores de movimento obtidos à lista de vetores de movimento compreende: quando o bloco vizinho atual é o bloco vizinho B1, e apenas quando o bloco vizinho B1 inclui um vetor de movimento, adicionar o vetor de movimento do bloco vizinho B1 à lista de vetores de movimento; e quando o bloco vizinho atual é o bloco vizinho A0, e apenas quando o bloco vizinho A0 inclui um vetor de movimento, adicionar o vetor de movimento do bloco vizinho A0 à lista de vetores de movimento a determinação de se o vetor de movimento do bloco vizinho disponível atual é o mesmo que um vetor de movimento que foi adicionado à lista de vetores de movimento compreende: se o bloco vizinho disponível atual é o bloco vizinho B0, determinar se um vetor de movimento do bloco vizinho B0 é o mesmo que um vetor de movimento do bloco vizinho B1 que foi adicionado à lista de vetores de movimento; se o bloco vizinho disponível atual é o bloco vizinho B2, determinar se um vetor de movimento do bloco vizinho B2 é o mesmo que o vetor de movimento do bloco vizinho B1 que foi adicionado à lista de vetores de movimento, em que o vetor de movimento do bloco vizinho A1 não está envolvido no processo de determinação; em que o método compreende ainda: obter um TMVP, e adicionar o TMVP à lista de vetores de movimento.
2. Aparelho para construção de uma lista de vetor de movimento para predição de vetor de movimento, caracterizado pelo fato de que compreende: um receptor, configurado para obter blocos vizinhos espaciais de um bloco de predição atual, em que o bloco de predição atual é localizado no interior de uma unidade de codificação atual; e um processador, configurado para determinar blocos vizinhos disponíveis do bloco de predição atual de acordo com uma maneira de partição da unidade de codificação atual, em que os blocos vizinhos disponíveis são localizados no exterior da unidade de codificação atual; e obter vetores de movimento a partir dos blocos vizinhos disponíveis em uma sequência predefinida de acordo com vetores de movimento a partir dos blocos vizinhos disponíveis, e adicionar os vetores de movimento que são obtidos a partir dos blocos vizinhos disponíveis à lista de vetores de movimento; em que os blocos vizinhos espaciais do bloco de predição obtido pelo receptor compreendem: um bloco vizinho A0 localizado em um lado inferior esquerdo do bloco de predição, um bloco vizinho A1 localizado em um lado esquerdo do bloco de predição, um bloco vizinho B0 em um lado superior direito do bloco de predição, um bloco vizinho B1 em um lado superior do bloco de predição, e um bloco vizinho B2 em um lado superior esquerdo do bloco de predição; em que o processador é ainda configurado para: se a unidade de codificação atual é particionada em um primeiro bloco de predição e um segundo bloco de predição nos lados superior e inferior, e o bloco de predição atual é o segundo bloco de predição, os blocos vizinhos disponíveis do bloco de predição compreendem: o bloco vizinho A0, o bloco vizinho A1, o bloco vizinho B0, e o bloco vizinho B2 do segundo bloco de predição; e se a unidade de codificação atual é particionada em um primeiro bloco de predição e um segundo bloco de predição nos lados esquerdo e direito, e o bloco de predição atual é o segundo bloco de predição, os blocos vizinhos disponíveis do bloco de predição compreendem: o bloco vizinho A0, o bloco vizinho B0, o bloco vizinho B1, e o bloco vizinho B2 do segundo bloco de predição; em que o processador é ainda configurado para: se os blocos vizinhos disponíveis são blocos de codificação interquadro, obter os vetores de movimento a partir dos blocos vizinhos disponíveis em uma sequência do bloco vizinho A1, o bloco vizinho B1, o bloco vizinho B0, o bloco vizinho A0, e o bloco vizinho B2; e em que o processador é ainda configurado para, se o vetor de movimento obtido é um vetor de movimento de um bloco vizinho disponível atual, determinar se um vetor de movimento de um bloco vizinho disponível atual é o mesmo que um vetor de movimento que foi adicionados à lista de vetores de movimento; e se não, adicionar o vetor de movimento do bloco vizinho disponível atual para a lista de vetores de movimento; em que se a unidade de codificação atual for particionada em um primeiro bloco de predição e um segundo bloco de predição em lados esquerdo e direito, e o bloco de predição atual for o segundo bloco de predição, o processador é ainda configurado para: quando o bloco vizinho disponível atual é o bloco vizinho B1, e apenas quando o bloco vizinho B1 inclui um vetor de movimento, adicionar o vetor de movimento do bloco vizinho B1 à lista de vetores de movimento; e quando o bloco vizinho disponível atual é o bloco vizinho A0, e apenas quando o bloco vizinho A0 inclui um vetor de movimento, adicionar o vetor de movimento do bloco vizinho A0 à lista de vetores de movimento; se o bloco vizinho disponível atual é o bloco vizinho B0, determinar se um vetor de movimento do bloco vizinho B0 é o mesmo que o vetor de movimento do bloco vizinho B1 que foi adicionado à lista de vetor de movimento; e se o bloco vizinho disponível atual é o bloco vizinho B2, determinar se um vetor de movimento do bloco vizinho B2 é o mesmo que o vetor de movimento do bloco vizinho B1 que foi adicionado à lista de vetores de movimento, em que o vetor de movimento do bloco vizinho A1 não está envolvido no processo de determinação; em que o processador é ainda configurado para: obter um TMVP, e adicionar o TMVP à lista de vetores de movimento.
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 (3)
Publication Number | Publication Date |
---|---|
BR112014010225A2 BR112014010225A2 (pt) | 2017-06-13 |
BR112014010225A8 BR112014010225A8 (pt) | 2017-06-20 |
BR112014010225B1 true BR112014010225B1 (pt) | 2020-03-10 |
Family
ID=47484278
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BR112014010225-2A BR112014010225B1 (pt) | 2012-10-08 | 2013-04-07 | Método e aparelho para construção de lista de vetor de movimento para predição de vetor de movimento |
Country Status (13)
Country | Link |
---|---|
US (3) | US9549181B2 (pt) |
EP (2) | EP2822283A4 (pt) |
JP (3) | JP6068490B2 (pt) |
KR (4) | KR101970216B1 (pt) |
CN (1) | CN102883163B (pt) |
AU (1) | AU2013314174B2 (pt) |
BR (1) | BR112014010225B1 (pt) |
CA (1) | CA2845442C (pt) |
HK (1) | HK1203723A1 (pt) |
MY (2) | MY165294A (pt) |
RU (1) | RU2553060C1 (pt) |
SG (2) | SG10201608387VA (pt) |
WO (1) | WO2014056314A1 (pt) |
Families Citing this family (31)
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 | 华为技术有限公司 | 一种图像预测编码方法及图像编码器 |
KR101881435B1 (ko) | 2014-01-14 | 2018-07-24 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 이더넷 신호 전송 방법 및 스케줄링 방법, 및 그 장치 및 시스템 |
TWI549489B (zh) * | 2014-04-16 | 2016-09-11 | 智原科技股份有限公司 | 移動偵測電路與方法 |
KR20180020965A (ko) * | 2015-04-27 | 2018-02-28 | 엘지전자 주식회사 | 비디오 신호의 처리 방법 및 이를 위한 장치 |
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 |
CN110662043B (zh) | 2018-06-29 | 2021-12-21 | 北京字节跳动网络技术有限公司 | 一种用于处理视频数据的方法、装置和计算机可读介质 |
TWI731360B (zh) * | 2018-06-29 | 2021-06-21 | 大陸商北京字節跳動網絡技術有限公司 | 查找表的使用條件 |
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 |
CN110662052B (zh) | 2018-06-29 | 2022-07-08 | 北京字节跳动网络技术有限公司 | 更新查找表(lut)的条件 |
EP3791585A1 (en) | 2018-06-29 | 2021-03-17 | Beijing Bytedance Network Technology Co. Ltd. | Partial/full pruning when adding a hmvp candidate to merge/amvp |
SG11202012293RA (en) | 2018-06-29 | 2021-01-28 | Beijing Bytedance Network Technology Co Ltd | Update of look up table: fifo, constrained fifo |
TWI728390B (zh) | 2018-06-29 | 2021-05-21 | 大陸商北京字節跳動網絡技術有限公司 | 查找表尺寸 |
EP4322533A3 (en) | 2018-06-29 | 2024-03-06 | Beijing Bytedance Network Technology Co., Ltd. | Checking order of motion candidates in lut |
BR112020026992A2 (pt) | 2018-07-02 | 2021-04-06 | Huawei Technologies Co., Ltd. | Método de predição de vetor de movimento e aparelho relacionado |
WO2020008349A1 (en) | 2018-07-02 | 2020-01-09 | Beijing Bytedance Network Technology Co., Ltd. | Merge index coding |
US11336914B2 (en) * | 2018-08-16 | 2022-05-17 | Qualcomm Incorporated | History-based candidate list with classification |
CN110868601B (zh) * | 2018-08-28 | 2024-03-15 | 华为技术有限公司 | 帧间预测方法、装置以及视频编码器和视频解码器 |
WO2020053800A1 (en) | 2018-09-12 | 2020-03-19 | Beijing Bytedance Network Technology Co., Ltd. | How many hmvp candidates to be checked |
US11381807B2 (en) | 2018-11-21 | 2022-07-05 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods of video picture coding with sub-block merge simplification and related apparatuses |
TWI782887B (zh) * | 2018-12-28 | 2022-11-01 | 日商Jvc建伍股份有限公司 | 影像編碼裝置、影像編碼方法、影像編碼程式、影像解碼裝置、影像解碼方法及影像解碼程式 |
JP7275286B2 (ja) | 2019-01-10 | 2023-05-17 | 北京字節跳動網絡技術有限公司 | Lut更新の起動 |
WO2020143824A1 (en) | 2019-01-13 | 2020-07-16 | Beijing Bytedance Network Technology Co., Ltd. | Interaction between lut and shared merge list |
WO2020147772A1 (en) | 2019-01-16 | 2020-07-23 | Beijing Bytedance Network Technology Co., Ltd. | Motion candidates derivation |
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 |
EP3973708A4 (en) * | 2019-06-25 | 2023-02-22 | Zhejiang Dahua Technology Co., Ltd. | INTRA-FRAME PREDICTION SYSTEMS AND METHODS |
WO2022114752A1 (ko) * | 2020-11-24 | 2022-06-02 | 현대자동차주식회사 | 효율적인 예측 및 변환을 위한 블록 분할 구조 및 이를 이용한 비디오 부호화 및 복호화를 위한 방법 및 장치 |
Family Cites Families (79)
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 | 中国科学院计算技术研究所 | 一种运动矢量预测方法 |
JP2010509799A (ja) * | 2006-11-03 | 2010-03-25 | サムスン エレクトロニクス カンパニー リミテッド | 映像の予測符号化方法及び装置、その復号化方法及び装置 |
KR101365567B1 (ko) * | 2007-01-04 | 2014-02-20 | 삼성전자주식회사 | 영상의 예측 부호화 방법 및 장치, 그 복호화 방법 및 장치 |
US20090003449A1 (en) * | 2007-06-28 | 2009-01-01 | Mitsubishi Electric Corporation | Image encoding device, image decoding device, image encoding method and image decoding method |
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 | 삼성전자주식회사 | 슬라이스 단위로 분할된 동영상을 처리하는 동영상 부호화/복호화장치 및 동영상 부호화/복호화방법 |
SI3448031T1 (sl) | 2009-06-18 | 2021-03-31 | Kabushiki Kaisha Toshiba | Naprava za video dekodiranje in postopek za video dekodiranje |
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 |
EP2532159A1 (en) * | 2010-02-05 | 2012-12-12 | Telefonaktiebolaget L M Ericsson (PUBL) | Selecting predicted motion vector candidates |
US9973768B2 (en) * | 2010-03-16 | 2018-05-15 | Texas Instruments Incorporated | CABAC decoder with decoupled arithmetic decoding and inverse binarization |
MX2012010863A (es) * | 2010-04-01 | 2012-10-15 | Sony Corp | Dispositivo y metodo de procesamiento de imagenes. |
CN102215392B (zh) * | 2010-04-09 | 2013-10-09 | 华为技术有限公司 | 用于估计像素值的帧内预测方法或装置 |
WO2011149265A2 (en) * | 2010-05-25 | 2011-12-01 | Lg Electronics Inc. | New planar prediction mode |
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 |
CN107105281B (zh) | 2010-12-14 | 2019-11-12 | 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 | 华为技术有限公司 | 获取用于合并模式的图像块的方法和设备 |
EP3139611A1 (en) * | 2011-03-14 | 2017-03-08 | HFI Innovation Inc. | Method and apparatus for deriving temporal motion vector prediction |
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 |
US9485517B2 (en) * | 2011-04-20 | 2016-11-01 | Qualcomm Incorporated | Motion vector prediction with motion vectors from multiple views in multi-view video coding |
US20120287999A1 (en) * | 2011-05-11 | 2012-11-15 | Microsoft Corporation | Syntax element prediction in error correction |
EP3879833A1 (en) * | 2011-05-31 | 2021-09-15 | JVCKENWOOD Corporation | Moving image encoding device, moving image encoding method and moving image encoding program, as well as moving image decoding device, moving image decoding method and moving image decoding program |
US9313494B2 (en) * | 2011-06-20 | 2016-04-12 | Qualcomm Incorporated | Parallelization friendly merge candidates for video coding |
US9131239B2 (en) * | 2011-06-20 | 2015-09-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 |
CN103621090B (zh) | 2011-06-24 | 2017-09-15 | 寰发股份有限公司 | 移除运动向量预测子中冗余的方法与装置 |
JP2013034171A (ja) * | 2011-06-30 | 2013-02-14 | Sony Corp | 画像処理装置および方法 |
JP5956571B2 (ja) * | 2011-06-30 | 2016-07-27 | ヴィディオ・インコーポレーテッド | スケーラブルビデオ符号化における動き予測 |
WO2013006386A1 (en) * | 2011-07-01 | 2013-01-10 | General Instrument Corporation | Motion vector prediction design simplification |
US9699456B2 (en) * | 2011-07-20 | 2017-07-04 | Qualcomm Incorporated | Buffering prediction data in video coding |
KR101960034B1 (ko) | 2011-09-09 | 2019-03-19 | 엘지전자 주식회사 | 인터 예측 방법 및 그 장치 |
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 |
EP2839660B1 (en) * | 2012-04-16 | 2020-10-07 | Nokia Technologies Oy | An apparatus, a method and a computer program for video coding and decoding |
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 |
WO2014043885A1 (en) * | 2012-09-21 | 2014-03-27 | Intel Corporation | 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 | 华为技术有限公司 | 用于运动矢量预测的运动矢量列表建立的方法、装置 |
US10334259B2 (en) * | 2012-12-07 | 2019-06-25 | Qualcomm Incorporated | Advanced residual prediction in scalable and multi-view video coding |
US9544566B2 (en) * | 2012-12-14 | 2017-01-10 | Qualcomm Incorporated | Disparity vector derivation |
US9794569B2 (en) * | 2013-01-30 | 2017-10-17 | Intel Corporation | Content adaptive partitioning for prediction and coding for next generation video |
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 |
ES2906238T3 (es) * | 2013-07-24 | 2022-04-13 | Qualcomm Inc | Predicción de movimiento avanzada simplificada para 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 BR BR112014010225-2A patent/BR112014010225B1/pt active IP Right Grant
- 2013-04-07 SG SG10201608387VA patent/SG10201608387VA/en unknown
- 2013-04-07 MY MYPI2014000722A patent/MY165294A/en unknown
- 2013-04-07 EP EP13836185.2A patent/EP2822283A4/en not_active Ceased
- 2013-04-07 SG SG11201400427VA patent/SG11201400427VA/en unknown
- 2013-04-07 JP JP2014540313A patent/JP6068490B2/ja active Active
- 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 KR KR1020147007584A patent/KR101629220B1/ko active IP Right Grant
- 2013-04-07 MY MYPI2017000481A patent/MY177902A/en unknown
- 2013-04-07 KR KR1020177005170A patent/KR101835563B1/ko active IP Right Grant
- 2013-04-07 EP EP18150524.9A patent/EP3402203A1/en not_active Ceased
- 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 KR KR1020167014630A patent/KR101711568B1/ko active IP Right Grant
- 2013-04-07 AU AU2013314174A patent/AU2013314174B2/en active Active
-
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
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BR112014010225B1 (pt) | Método e aparelho para construção de lista de vetor de movimento para predição de vetor de movimento | |
BR112017010468B1 (pt) | Método de decodificação de vídeo para blocos codificados no modo de interpredição e método de codificação de vídeo para blocos codificados no modo de interpredição | |
BR112021012638A2 (pt) | Dispositivo de decodificação, dispositivo de codificação e métodos relacionados | |
BR112020015246A2 (pt) | refinamento de vetor de movimento restrito de hardware acessível | |
BR112012019560B1 (pt) | Método para gerenciar candidatos a vetor de movimento predito, e, aparelhos de codificação e de decodificação de vídeo | |
ES2957772T3 (es) | Procedimiento de codificación predictiva, dispositivo de codificación predictiva y programa de codificación predictiva de un vector de movimiento, y procedimiento de descodificación predictiva, dispositivo de descodificación predictiva y programa de descodificación predictiva de un vector de movimiento | |
BR112013033706B1 (pt) | Método para decodificar um vetor de movimento | |
BRPI1012992B1 (pt) | Método e aparelho para obter informações de movimento de imagens de vídeo, e dispositivo eletrônico | |
JP2008245330A (ja) | 動きベクトルの決定方法 | |
BR112013022522B1 (pt) | Método e aparelho para derivação de candidato de vetor de movimento e predição de candidato de vetor de movimento | |
BR122015013887A2 (pt) | método para decodificar uma imagem | |
TWI802271B (zh) | 具有應用的塊設定以及運動儲存設定的三角形預測 | |
CN113507609B (zh) | 一种基于时空域预测的帧间图像并行编码方法 | |
BR112016014080B1 (pt) | Método de codificação de múltiplas hipóteses direta de um bloco de imagem, método de decodificação de múltiplas hipóteses direta de um bloco de imagem, aparelho de codificação de duas hipóteses direta de um bloco de imagem, e aparelho de decodificação de duas hipóteses direta de um bloco de imagem | |
BR112017007399B1 (pt) | Método de predição de imagem e aparelho relacionado |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B15K | Others concerning applications: alteration of classification |
Ipc: H04N 19/52 (2014.01), H04N 19/436 (2014.01), H04N |
|
B06F | Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette] | ||
B07A | Application suspended after technical examination (opinion) [chapter 7.1 patent gazette] | ||
B09A | Decision: intention to grant [chapter 9.1 patent gazette] | ||
B16A | Patent or certificate of addition of invention granted [chapter 16.1 patent gazette] |
Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 07/04/2013, OBSERVADAS AS CONDICOES LEGAIS. |