BR122014018140A2 - Método de decodificação de imagem - Google Patents

Método de decodificação de imagem Download PDF

Info

Publication number
BR122014018140A2
BR122014018140A2 BR122014018140-0A BR122014018140A BR122014018140A2 BR 122014018140 A2 BR122014018140 A2 BR 122014018140A2 BR 122014018140 A BR122014018140 A BR 122014018140A BR 122014018140 A2 BR122014018140 A2 BR 122014018140A2
Authority
BR
Brazil
Prior art keywords
motion vector
image
vector
motion
block
Prior art date
Application number
BR122014018140-0A
Other languages
English (en)
Other versions
BR122014018140B1 (pt
Inventor
Sung Chang LIM
Hui Yong KIM
Se Yoon Jeong
Suk Hee Cho
Dong San Jun
Jong Ho Kim
Ha Hyun LEE
Jin Ho Lee
Jin Soo Choi
Jin Woong Kim
Original Assignee
Electronics And Telecommunications Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=46873758&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=BR122014018140(A2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Priority claimed from KR1020110065707A external-priority patent/KR20120088494A/ko
Application filed by Electronics And Telecommunications Research Institute filed Critical Electronics And Telecommunications Research Institute
Priority claimed from KR1020120010096A external-priority patent/KR101428030B1/ko
Publication of BR122014018140A2 publication Critical patent/BR122014018140A2/pt
Publication of BR122014018140B1 publication Critical patent/BR122014018140B1/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/176Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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/423Methods 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 characterised by memory arrangements
    • H04N19/426Methods 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 characterised by memory arrangements using memory downsizing methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Abstract

resumo "método de decodificação de imagem" a presente invenção refere-se a um método para codificação e decodifica-ção de imagem utilizando um vetor de movimento. de acordo com uma modalidade da presente invenção, um método de decodificação de imagem é fornecido. o méto-do de decodificação de imagem compreende as seguintes etapas: aparar um vetor de movimento de uma imagem de referência com uma faixa dinâmica predetermina-da de modo a gerar um vetor de movimento aparado; o armazenamento do vetor de movimento aparado em um armazenador, a derivação de um vetor de movimento de um bloco a ser decodificado utilizando o vetor de movimento armazenado no arma-zenador; e realização da decodificação interprevisão utilizando o vetor de movimento do bloco a ser decodificado. de acordo com a presente invenção, o tamanho de um espaço de memória necessário para armazenar um vetor de mo-vimento pode ser reduzido.

Description

MÉTODO DE DECODIFICAÇÃO DE IMAGEM Divido do BR 11 2013 019495-2, depositado em 31/01/2012. Campo Técnico [001] A presente invenção refere-se a processamento de imagem, e mais particularmente, a um método de codificação/decodificação de vídeo utilizando um vetor de movimento aparado.
Técnica Fundamental [002] Recentemente, de acordo com a expansão de um sistema de difusão suportando resolução de alta definição (HD) no país e em todo o mundo, muitos usuários têm se acostumado a uma imagem de alta resolução e definição, de modo que muitas organizações têm conduzido muitas tentativas de desenvolver os dispositivos de vídeo de próxima geração. Adicionalmente, à medida que o interesse em HDTV e definição ultra alta (UHD possuindo uma resolução quatro vezes maior do que a HDTV tem aumentado, uma tecnologia de compressão por um vídeo de resolução mais alta e maior definição tem sido exigida.
[003] Para compressão de imagem, uma tecnologia interprevisão de previsão de valores de pixel incluídos em uma imagem atual a partir de uma imagem anterior e/ou posterior à imagem atual, uma tecnologia de intraprevisão de previsão de valores de pixel utilizando informação de pixel na imagem, uma tecnologia de codificação por entropia de alocação de um código curto para um símbolo possuindo uma alta frequência de surgimento e um código longo para um símbolo possuindo uma baixa frequência de surgimento, ou similares, pode ser utilizada.
Descrição
Problema Técnico [004] A presente invenção fornece um método de codificação e decodificação de vídeo utilizando um vetor de movimento aparado e um aparelho para tal.
[005] A presente invenção também fornece um método de aparar um vetor de movimento de uma imagem de referência.
[006] A presente invenção também fornece um método de transmissão de informação em um vetor de movimento.
Solução Técnica [007] 1. Uma modalidade da presente invenção se refere a um método de codifi2/42 cação de uma imagem. O método inclui aparar um vetor de movimento de uma imagem de referência em uma faixa dinâmica predeterminada para gerar um vetor de movimento aparado, armazenando o vetor de movimento aparado em um armazenador e codificando um vetor de movimento de um bloco de árvore de codificação utilizando um vetor de movimento armazenado no armazenador.
[008] 2. Em 1, a faixa dinâmica pode ser definida por um nível de um codec (codificador/decodificador) de vídeo.
[009] 3. Em 1, a faixa dinâmica pode ser determinada por uma profundidade predeterminada de bit, e a profundidade de bit pode ser definida por um nível de um codec de vídeo.
[010] 4. Em 1, o componente X e o componente Y do vetor de movimento da imagem de referência podem ser aparado em diferentes faixas dinâmicas.
[011] 5. Outra modalidade da presente invenção se refere a um método de decodificação de uma imagem. O método inclui aparar um vetor de movimento de uma imagem de referência em uma faixa dinâmica predeterminada para gerar um vetor de movimento aparado, o armazenamento do vetor de movimento aparado em um armazenador, a derivação de um vetor de movimento de um bloco de árvore de codificação utilizando o vetor de movimento armazenado no armazenador, e realizando o processo de decodificação interprevisão utilizando o vetor de movimento do bloco de arvore de codificação.
[012] 6. Em 5, a faixa dinâmica pode ser definida por um nível de um codec de vídeo.
[013] 7. Em 5, a faixa dinâmica pode ser determinada por uma profundidade de bit predeterminada, e a profundidade de bit pode ser definida por um nível de um codec de vídeo.
[014] 8. Em 5, a faixa dinâmica pode ser determinada por uma profundidade de bit predeterminada, e a profundidade de bit pode ser obtida através de um parâmetro de sequência determinado transmitido a partir de um aparelho de codificação de uma imagem.
[015] 9. Em 8, o parâmetro de sequência determinado pode incluir um indicador indicando se o vetor de movimento da imagem de referência é aparado e um parâmetro para obtenção da profundidade de bit.
3/42 [016] 10. Em 9, o método de decodificação de uma imagem pode incluir a compressão do vetor de movimento da imagem de referência, onde o parâmetro de sequência determinado inclui um indicador indicando se o vetor de movimento da imagem de referência é comprimida e um parâmetro para obtenção de uma razão de compressão do vetor de movimento da imagem de referência.
[017] 11. Em 5, o método de decodificação de uma imagem pode incluir a limitação de uma resolução de representação do vetor de movimento da imagem de referência.
[018] 12. Em 5, o vetor de movimento aparado pode ser armazenado de acordo com uma prioridade.
[019] 13. Em 5, o vetor de movimento aparado pode ser um vetor de movimento de um bloco codificado no modo interprevisão.
[020] 14. Em 5, o método de decodificação de uma imagem pode incluir a realização do escalonamento do vetor de movimento da imagem de referência.
[021] 15. Em 5, o componente X e o componente Y do vetor de movimento da imagem de referência pode ser aparado em diferentes faixas dinâmicas.
[022] 16. Em 15, a faixa dinâmica do componente X e a faixa dinâmica do componente Y podem ser definidas por um nível de um codec de vídeo.
[023] 17. Outra modalidade da presente invenção se refere a um aparelho de decodificação de uma imagem. O aparelho inclui um armazenador de imagem de referência armazenando uma imagem de referência e um compensador de movimento gerando um bloco previsto utilizando a imagem de referência e um vetor de movimento da imagem de referência, onde o vetor de movimento da imagem de referência é aparado em uma faixa dinâmica predeterminada.
[024] 18. Em 17, a faixa dinâmica pode ser definida por um nível de um codec de vídeo.
[025] 19. Em 17, a faixa dinâmica pode ser determinada por uma profundidade de bit predeterminada, e a profundidade de bit pode ser definida por um nível de um codec de vídeo.
[026] 20. Em 17, a faixa dinâmica pode ser determinada por uma profundidade de bit predeterminada, e a profundidade de bit pode ser obtida através de um parâmetro de sequência determinado transmitido a partir de um aparelho de codificação de
4/42 uma imagem.
Efeitos Vantajosos [027] De acordo com a modalidade ilustrativa da presente invenção, o vídeo pode ser codificado utilizando o vetor de movimento aparado.
[028] De acordo com a modalidade ilustrativa da presente invenção, um tamanho de uma memória necessária para o armazenamento de vetores pode ser reduzido.
[029] De acordo com a modalidade ilustrativa da presente invenção, uma largura de banda de acesso à memória necessária para se coletar dados da memória pode ser reduzida.
Descrição dos Desenhos [030] A figura 1 é um diagrama em bloco ilustrando um exemplo de uma estrutura de um codificador de acordo com uma modalidade ilustrativa da presente invenção;
[031] A figura 2 é um diagrama em bloco ilustrando um exemplo de uma estrutura de um decodificador de acordo com uma modalidade ilustrativa da presente invenção;
[032] A figura 3 ilustra exemplos de uma imagem de objeto de codificação e decodificação e uma imagem de referência;
[033] A figura 4 ilustra um exemplo de limitação de uma faixa dinâmica de um vetor de movimento;
[034] As figuras de 5 a 8 são fluxogramas ilustrando um método de armazenamento de um vetor de movimento de uma imagem de referência;
[035] A figura 9 ilustra um exemplo de quantização de um vetor de movimento;
[036] As figuras de 10 a 13 ilustram exemplos de coleta de informação de movimento a partir de uma imagem de referência;
[037] A figura 14 é um fluxograma ilustrando um método de codificação de uma imagem de acordo com a modalidade ilustrativa da presente invenção;
[038] A figura 15 é um fluxograma ilustrando um método de decodificação de uma imagem de acordo com a modalidade ilustrativa da presente invenção.
Modo de Invenção [039] Doravante, as modalidades ilustrativas da presente invenção serão descritas em detalhes com referência aos desenhos em anexo. No entanto, na descrição das modalidades ilustrativas da presente invenção, funções ou construções bem co
5/42 nhecidas não serão descritas em detalhes visto que podem obscurecer desnecessariamente a compreensão da presente invenção.
[040] Deve-se compreender que quando qualquer elemento é referido como estando conectado a ou acoplado a outro elemento, o mesmo pode ser conectado diretamente a ou acoplado diretamente a outro elemento ou ser conectado a ou acoplado a outro elemento, possuindo o outro elemento intervindo entre os mesmos. Adicionalmente, na presente especificação, no caso de descrição incluindo um componente específico, deve-se compreender que componentes adicionais além de um componente correspondente não estão excluídos, mas podem ser incluídos nas modalidades ilustrativas ou escopo técnico da presente invenção.
[041] Os termos utilizados na especificação, primeiro, segundo, etc. podem ser utilizados para descrever vários componentes, mas os componentes não devem ser considerados como estando limitados aos termos. Isso é, os termos são utilizados para distinguir um componente de outro componente. Por exemplo, o primeiro componente pode ser chamado de segundo componente, e vice-versa, sem se distanciar do escopo da presente invenção.
[042] Adicionalmente, os componentes descritos nas modalidades ilustrativas da presente invenção são ilustrados independentemente apenas a fim de indicar que realizam funções características diferentes. Portanto, os componentes que são ilustrados independentemente não significam que cada um dos componentes pode não ser implementado como um hardware ou software. Isso é, cada um dos componentes é dividido por motivos de conveniência de explicação, uma pluralidade de componentes pode ser combinada um com o outro para, dessa forma, ser operado como um componente ou um componente pode ser dividido em uma pluralidade de componentes para, dessa forma, ser operado como uma pluralidade de componentes, que são incluídos no escopo da presente invenção desde que se distancie das características essenciais da presente invenção.
[043] Adicionalmente, alguns dos componentes podem não ser componentes indispensáveis realizando funções essenciais da presente invenção, mas os componentes seletivos aperfeiçoando apenas o desempenho dos mesmos. A presente invenção também pode ser implementada apenas por uma estrutura incluindo os componentes indispensáveis exceto pelos componentes seletivos, e a estrutura in
6/42 cluindo apenas os componentes indispensáveis também é incluída no escopo da presente invenção.
[044] A figura 1 é um diagrama em bloco ilustrando um exemplo de uma estrutura de um codificador de acordo com uma modalidade ilustrativa da presente invenção.
[045] Com referência à figura 1, o codificador 100 inclui um previsor de movimento 111, um compensador de movimento 112, um intraprevisor 120, um comutador 115, um subtrator 125, um transformador 130, um quantizador 140, um codificador por entropia 150, um desquantizador 160, um transformador invertido 170, um somador 175, uma unidade de filtro 180 e um armazenador de imagem de referência 190.
[046] O codificador 100 codifica as imagens de entrada em um modo de intraprevisão ou um modo de interprevisão para a saída do codificador de uma sequência de bits. Intraprevisão significa previsão de intra imagem e interprevisão significa previsão inter imagem. O codificador 100 é comutado entre o modo de intraprevisão e o modo de interprevisão através da comutação do comutador 115. O codificador 100 gera um bloco previsto para um bloco de entrada da imagem de entrada e então codifica um residual entre o bloco de entrada e o bloco previsto.
[047] No caso do modo de intraprevisão, o intraprevisor 120 realiza a previsão espacial utilizando valores de pixel de blocos vizinhos que são codificados já para gerar os blocos previstos.
[048] No caso do modo de intraprevisão, o previsor de movimento 111 busca um bloco de referência idealmente combinado com o bloco de entrada em uma imagem de referência armazenada no armazenador de imagem de referência 190 durante um processo de previsão de movimento para obter um vetor de movimento. O compensador de movimento 112 realiza a compensação de movimento utilizando o vetor de movimento para gerar o bloco previsto. Aqui, o vetor de movimento pode ser um vetor bidimensional utilizado para a interprevisão e representa um desvio entre um bloco de árvore de codificação atual e o bloco de referência.
[049] O subtrator 125 gera um bloco residual com base no residual entre o bloco de entrada e o bloco previsto, e o transformador 130 transforma o bloco residual para enviar um coeficiente de transformação. O quantizador 140 quantiza o coeficiente de transformação para enviar o coeficiente quantizado.
7/42 [050] O codificador por entropia 150 realiza a codificação por entropia com base na informação obtida durante um processo de codificação e quantização para enviar a sequência de bits. A codificação por entropia representa símbolos gerados com frequência como um número pequeno de bits, reduzindo, assim, um tamanho de uma sequência de bits para um símbolo de codificação. Portanto, o desempenho de compressão de um vídeo pode ser aperfeiçoado através da codificação por entropia. O codificador por entropia 150 pode utilizar um método de codificação tal como golomb exponencial, codificação de comprimento variável adaptativo de contexto (CAVLC), codificação aritmética binária adaptativa de contexto (CABAC), ou similares, para a codificação por entropia.
[051] Uma imagem codificada precisa ser decodificada novamente e armazenada a fim de ser utilizada como uma imagem de referência para a realização da codificação interprevisão. Portanto, o desquantizador 160 desquantiza o coeficiente quantizado, e o transformador invertido 170 transforma de forma invertida o coeficiente desquantizado para enviar um bloco residual reconstruído. O somador 175 soma o bloco residual reconstruído ao bloco previsto para gerar um bloco reconstruído.
[052] A unidade de filtro 180 é chamada também de um filtro em circuito adaptativo e aplica pelo menos uma filtragem de desbloqueio, compensação de desvio adaptativo de amostra (SAO), filtragem de circuito adaptativo (ALF) ao bloco reconstruído. A filtragem de desbloqueio significa que a distorção de bloco ocorrida em um limite entre os blocos é removida, e a compensação SAO significa que um desvio adequado é adicionado a um valor de pixel a fim de compensar um erro de codificação. Adicionalmente, ALF significa que a filtragem é realizada com base em um valor de comparação entre uma imagem reconstruída e uma imagem original.
[053] Enquanto isso, o armazenador de imagem de referência 190 armazena o bloco reconstruído passando através da unidade de filtro 180.
[054] A figura 2 é um diagrama em bloco ilustrando um exemplo de uma estrutura de um decodificador de acordo com uma modalidade ilustrativa da presente invenção.
[055] Com referência à figura 2, um decodificador inclui um decodificador por entropia 210, um desquantizador 220, um transformador invertido 230, um intraprevisor 240, um compensador de movimento 250, um somador 255, uma unidade de filtro
8/42
260, e um armazenador de imagem de referência 270.
[056] O decodificador 200 decodifica a sequência de bits no modo intraprevisão ou o modo de interprevisão para enviar uma imagem reconstruída. O decodificador 200 é comutado entre o modo de intraprevisão e o modo interprevisão através da comutação do comutador. O decodificador 200 obtém um bloco residual a partir da sequência de bits para gerar um bloco previsto e então adiciona o bloco residual e o bloco previsto um para outro para gerar um bloco reconstruído.
[057] O decodificador de entropia 210 realiza uma decodificação por entropia com base na distribuição de probabilidade. O processo de decodificação por entropia é um processo oposto ao processo de codificação por entropia mencionado acima. Isso é, o decodificador por entropia 210 gera um símbolo incluindo um coeficiente quantizado a partir da sequência de bits onde um símbolo gerado com frequência é representado como um número pequeno de bits.
[058] O desquantizador 220 desquantiza o coeficiente quantizado, e o transformador invertido 230 transforma de forma invertida o coeficiente desquantizado para gerar um bloco residual.
[059] No caso do modo de intraprevisão, o intraprevisor 240 realiza a previsão espacial utilizando valores de pixel de blocos vizinhos que já são codificados para gerar os blocos previstos.
[060] No caso do modo de interprevisão, o compensador de movimento 250 realiza a compensação de movimento utilizando o vetor de movimento e a imagem de referência armazenada no armazenador de imagem de referência 270 para gerar o bloco previsto.
[061] O somador 255 adiciona o bloco previsto para o bloco residual, e a unidade de filtro 260 aplica pelo menos um dentre a filtragem de desbloqueio, compensação SAO, ALF para o bloco passando através do somador para enviar uma imagem reconstruída.
[062] A imagem reconstruída pode ser armazenada no armazenador de imagem de referência 270 para, dessa forma, ser utilizado para a compensação de movimento.
[063] Doravante, um bloco significa uma unidade de codificação e decodificação. Em um processo de codificação e decodificação, uma imagem é dividida em um ta
9/42 manho predeterminado e então codificada e decodificada. Portanto, um bloco também pode ser chamado de unidade de codificação (CU), uma unidade de previsão (PU), uma unidade de transformação (TU), ou similares, e um bloco único também pode ser dividido em sub-blocos possuindo um tamanho menor.
[064] Aqui, uma unidade de previsão significa uma unidade básica na qual a previsão e/ou compensação de movimento é realizada. Uma unidade de previsão pode ser dividida em uma pluralidade de partições, e cada uma das partições também pode ser chamada de partição de unidade de previsão. Quando uma unidade de previsão é dividida em uma pluralidade de partições, cada uma das partições de unidade de previsão pode se tornar uma unidade básica na qual a previsão e/ou compensação de movimento são realizadas. Doravante, na modalidade ilustrativa da presente invenção, uma unidade de previsão pode significar também as partições de unidade de previsão.
[065] Enquanto isso, na codificação de vídeo de alta eficiência (HEVC), um método de previsão de vetor de movimento com base na previsão de vetor de movimento avançada (AMVP) é utilizada.
[066] No método de previsão de vetor de movimento com base na previsão de vetor de movimento avançado, um vetor de movimento (MV) de um bloco, existente em uma posição que é igual a ou corresponde ao de um bloco de árvore de codificação, em uma imagem de referência além de vetores de movimento de blocos reconstruídos posicionados em torno do bloco de árvore de codificação pode ser utilizado. Aqui, o bloco, existente em uma posição que é igual a ou corresponde espacialmente à do bloco de árvore de codificação, na imagem de referência é chamada de bloco colocalizado, e um vetor de movimento do bloco colocalizado é chamado de um vetor de movimento colocalizado ou um vetor de movimento temporal. No entanto, o bloco colocalizado pode ser um bloco, existente em uma posição similar a (isso é, correspondente a) igual à do bloco de árvore de codificação, na imagem de referência além de um bloco existente na mesma posição que o bloco de árvore de codificação.
[067] Em um método de mistura de informação de movimento, a informação de movimento é estimada a partir do bloco colocalizado além de blocos reconstruídos posicionados em torno do bloco de árvore de codificação para, dessa forma, ser uti
10/42 lizado como informação de movimento do bloco de árvore de codificação. Aqui, a informação de movimento inclui pelo menos uma dentre a informação de modo de interprevisão indicando um índice de imagem de referência, um vetor de movimento, uma direção única ou uma direção dupla, ou similares, necessários no momento da interprevisão, uma lista de imagem de referência, e informação de modo de previsão sobre se a codificação é realizada em um modo de intraprevisão ou em um modo de interprevisão.
[068] Um vetor de movimento previsto no bloco de árvore de codificação pode ser um vetor de movimento do bloco colocalizado, que é um bloco temporalmente adjacente ao bloco de árvore de codificação, além de um dos vetores de movimento dos blocos vizinhos espacialmente adjacentes ao bloco de árvore de codificação.
[069] A figura 3 ilustra exemplos de uma imagem de objeto de codificação e decodificação e uma imagem de referência.
[070] Na figura 3, um bloco X indica um bloco de árvore de codificação em uma imagem de objeto de codificação e decodificação 310, e um bloco A, um bloco B, um bloco C, um bloco D, e um bloco E indicam blocos reconstruídos posicionados em torno do bloco de árvore de codificação. Adicionalmente, um bloco T na imagem de referência 320 indica um bloco colocalizado existente em uma posição correspondente à do bloco de árvore de codificação.
[071] Qual vetor de movimento no bloco de árvore de codificação é utilizado como o vetor de movimento previsto pode ser reconhecido através de um índice de previsor de vetor de movimento.
Tabela 1
11/42
prediction_unit(xO, yO, log2PUWidth, log2PUHeight) { Desciiptor
if( skipflagf xO][yO ] ) {
if( NumMVPCand( L0 ) > 1 )
mvp idx 10 [ xO ] [ yO ] ue(v) | ae(v)
if( NumMVPCand( L1 ) > 1 )
mvp idx 11 [ xO ] [ yO ] ue(v) | ae(v)
} else if( PredMode = = MODEINTRA ) {
} else { /* MODE MERGE, MODEJNIER *!
if( merge_flag[xO ][y0 ] && NumMergeCaiididates> 1 ) {
} else {
if( inter_pred_idc[xO ][ yO ] ! = Pred Ll ) {
if( NumMVPCand( L0 ) > 1 )
mvp idx 10 ue(v) | ae(v)
}
if( inter pred idc[xO ][ yO ] != Pred LO ) {
if( NumMVPCand( LI ) > 1 )
mvp idx 11 ue(v) | ae(v)
}
}
}
}
[072] Como ilustrado na tabela 1, os índices de previsor de vetor de movimento mvp_idx_10 e mvp_idx_11 para cada lista de imagem de referência são transmitidos para um decodificador, e o decodificador utiliza o mesmo vetor de movimento como um vetor de movimento previsto por um codificador como um vetor de movimento previsto.
[073] No caso no qual o bloco de árvore de codificação é codificado e decodificado utilizando os vetores de movimento dos blocos vizinhos espacialmente adjacentes ao bloco de árvore de codificação, o vetor de movimento pode ser armazenado apenas com uma memória possuindo um tamanho relativamente pequeno. No entanto, no caso no qual um vetor de movimento temporal é utilizado, visto que todos os vetores de movimento da imagem de referência precisam ser armazenados em uma memória, uma memória possuindo um tamanho relativamente grande é necessária, e um tamanho de uma largura de banda de acesso de memória necessária para se coletar os dados da memória também aumenta. Portanto, existe a necessidade de se armazenar de forma mais eficiente o vetor de movimento temporal em
12/42 um ambiente de aplicativo no qual um espaço de memória de um terminal portátil, ou similar, não é suficiente ou o consumo de energia é minimizado.
[074] Enquanto isso, como uma tecnologia de armazenamento de um vetor de movimento em uma memória, existe um método de redução de uma resolução espacial do vetor de movimento. Nesse método, o vetor de movimento é comprimido em qualquer razão e então armazenado na memória. Por exemplo, um vetor de movimento armazenado em uma unidade de bloco 4x4 é armazenado em uma unidade de bloco 4x4 ou maior para reduzir o número de vetores de movimento armazenados. Aqui, a fim de se ajustar um tamanho de bloco do vetor de movimento armazenado, a informação sobre uma razão de compressão é transmitida. A informação é transmitida através de um conjunto de parâmetros de sequência (SPS) como ilustrado na Tabela 2.
Tabela 2
seq parameter set rbsp() { C Desciiptor
mo tionve c t orbnfferc oinpíla g 0 u(l)
if (motion_vector_buffer_comp_flag)
mo tionve c t orbuffer_c oinp_ra tiolo g2 0 u(8)
rbsp_trailiiig_bits() 0
}
[075] Com referência à Tabela 2, no caso no qual motion_buffer_comp_flag é igual a 1, um processo de compressão de armazenador de vetor de movimento é realizado.
[076] motion_vector_buffer_comp_ratio_log2 indica uma razão de compressão do processo de compressão de armazenador de vetor de movimento. No caso no qual o motion_vector_buffer_comp_ratio_log2 não existe, motion_vector_buffer_comp_ratio_log2 é estimado para 0, e uma razão de compressão de armazenador de vetor de movimento é representada pela Equação 1.
Equação 1
MVBufferCompRatio = 1 « moíionpvector_buffer_comp_raíio_log2 [077] Por exemplo, no caso no qual todos os blocos 4x4 de 1920x1080 imagens possuem vetores de movimento diferente e utilizam duas listas de imagem de referência, cada uma utilizando duas imagens de referência, um espaço de memória total de 3,21 Mbytes é necessário para armazenar um vetor de movimento temporal
13/42 como descrito abaixo.
1. Profundidade de bit de 26 bits por vetor de movimento (1) Faixa dinâmica de componente X do vetor de movimento: -252 para +7676 (comprimento de bit: 13 bits) (2) Faixa dinâmica de componente Y de vetor de movimento: -252 para +4316 (comprimento de bit: 13 bits) (3) (Faixas dinâmicas de cada componente do vetor de movimento foram calculados com base em uma primeira unidade de previsão em uma imagem correspondente).
2. No caso no qual todas as unidades de bloco 4x4 possuem vetores de movimento diferentes 480 x 270 = 129600 blocos.
3. Uso de dois vetores de movimento por cada bloco
4. O número de listas de imagem de referência: 2
5. Uso de duas imagens de referência por lista de imagem de referência.
=> 26 bits x 129600 blocos x dois vetores de movimento x duas listas de imagem de referência x duas imagens de referência = 26956800 bits = 3,21 Mbytes.
[078] De acordo com o método de redução de uma resolução espacial de um vetor de movimento como descrito acima, é possível se reduzir o tamanho do espaço de memória necessário e a largura de banda de acesso demo ria utilizando a correlação espacial do vetor de movimento. No entanto, o método de redução de uma resolução espacial de um vetor de movimento não limita a faixa dinâmica do vetor de movimento.
[079] Quando o tamanho do espaço de memória é reduzido para 1/4, um tamanho de espaço de memória necessário no exemplo mencionado acima é reduzido para cerca de 0,8 Mbytes. Aqui, quando apenas seis bits da profundidade de bit necessária para o armazenamento do vetor de movimento são utilizados para cada componente do vetor de movimento pela limitação adicional da faixa dinâmica do vetor de movimento, o tamanho do espaço de memória necessário pode ser reduzido adicionalmente para 0,37 Mbytes.
[080] Portanto, na modalidade ilustrativa da presente invenção, a faixa dinâmica do vetor de movimento é limitada a fim de reduzir um tamanho de um espaço de memória necessário par ao armazenamento do vetor de movimento e uma largura
14/42 de banda de acesso de memória necessária para a coleta de dados a partir da memória. O vetor de movimento da imagem de referência do qual a faixa dinâmica é limitada pode ser utilizado como um vetor de movimento temporal no bloco de árvore de codificação.
[081] Doravante, uma faixa dinâmica significa uma faixa entre um valor mínimo e um valor máximo de um componente negativo ou um componente positivo de um vetor de movimento com base em 0, a profundidade de bit, que indica um tamanho de um espaço necessário para o armazenamento do vetor de movimento, significa uma largura de bit. Adicionalmente, a menos que particularmente descrito, o vetor de movimento significa um vetor de movimento de uma imagem de referência, isso é, um vetor de movimento temporal.
[082] No caso no qual cada componente do vetor de movimento está fora da faixa dinâmica, o mesmo é representado pelo valor mínimo ou valor máximo da faixa dinâmica correspondente. Por exemplo, no caso no qual um componente X do vetor de movimento 312 e um valor máximo de uma faixa dinâmica de cada componente do vetor de movimento 256, o componente X do vetor de movimento é limitado a 256.
[083] Da mesma forma, no caso no qual uma profundidade de bit de cada componente do vetor de movimento é igual a 16 bits e o vetor de movimento é (-36, 24), quando a profundidade de bit de cada componente do vetor de movimento é limitado a 6 bits, cada componente do vetor de movimento possui uma faixa dinâmica de -32 a +31, de modo que o vetor de movimento seja representado por (-32, 24) que está em sua faixa dinâmica.
[084] Adicionalmente, no caso no qual uma profundidade de bit de cada componente do vetor de movimento é igual a 16 bits e o vetor de movimento é (-49, 142), quando a profundidade de bit de cada componente do vetor de movimento é limitada a 9 bits, cada componente do vetor de movimento possui uma faixa dinâmica de 256 a +255, de modo que o vetor de movimento seja representado por (-49, 142) sem uma alteração.
[085] A figura 4 ilustra um exemplo de limitação de uma faixa dinâmica de um vetor de movimento.
[086] Com referência à figura 4, quando uma faixa dinâmica de um vetor de mo
15/42 vimento possuindo uma faixa dinâmica de -4096 a +4095 é limitada a -128 a +127, uma profundidade de bit pode ser reduzida de 13 bits para 8 bits.
[087] Cada componente de um vetor de movimento temporal é aparado como representado pelas Equações 2 e 3 a fim de ser armazenado em uma profundidade de bit de N bits. Onde N indica um inteiro positivo.
Equação 2 clippedMVX = min( 1 «(vV- 1)- 1, maxÇ - 1 «(N- 1), MV_X ) )
Equação 3 clippedMVJY = min( 1 «(jV- 1)- 1, maxÇ - 1 «(/V- 1), MV_Y ) ) [088] onde MV_X indica um componente X do vetor de movimento, MV_Y indica um componente Y do vetor de movimento, min(a,b) significa uma operação de envio de um valor menor em a e b, e max(a,b) significa uma operação de envio de um valor maior em a e b. Cada MV_X aparado e MV_Y aparado indica os componentes X e Y do vetor de movimento temporal aparado e é armazenado na memória para, dessa forma, ser utilizado como um vetor de movimento temporal do bloco de árvore de codificação.
[089] Por exemplo, como ilustrado na Tabela 3, no caso no qual um tamanho de um espaço de memória é de 48 bytes e cada componente do vetor de movimento utiliza uma profundidade de bit de 16 bits, um total de doze vetores de movimento pode ser armazenado.
Tabela 3
MV1-X MV1-Y MV2-X MV2-Y MV3-X MV3-Y MV4-X MV4-Y
MV5-X MV5-Y MV6-X MV6-Y MV7-X MV7-Y MV8-X MV8-Y
MV9-X MV9-Y MV10-X MV10-Y MV11-X MV11-Y MV12-X MV12- Y
[090] No entanto, quando cada componente do vetor de movimento utiliza apenas uma profundidade de bit de 8 bits, um total de vinte e quatro vetores de movimento pode ser armazenado como ilustrado na Tabela 4.
Tabela 4
MV1-X MV1-Y MV2-X MV2-Y MV3-X MV3-Y MV4-X MV4-Y
MV5-X MV5-Y MV6-X MV6-Y MV7-X MV7-Y MV8-X MV8-Y
16/42
MV9-X MV9-Y MV10-X MV10-Y MV11-X MV11-Y MV12-X MV12-
Y
[091] Portanto, de acordo com a modalidade ilustrativa da presente invenção, quando uma imagem reconstruída em um codificador e/ou um decodificador é submetida a um processo de filtragem em circuito tal como um filtro de desbloqueio, um filtro de circuito adaptativo, ou similar, e então armazenada em um armazenador de imagem decodificada (DPB), a faixa dinâmica do vetor de movimento é limitada, de modo que um vetor de movimento de uma imagem de referência seja armazenado. O armazenador de imagem decodificada significa o armazenador de imagem de referência da figura 1 ou figura 2.
I. Processo de Aparamento do Vetor de Movimento [092] Um processo de aparamento de cada componente de um vetor de movimento é invocado no caso no qual um slice_type não é igual a I. O processo de aparamento de um vetor de movimento é realizado em um bloco de árvore ou unidade de codificação maior (LCU) depois de um processo de filtragem ter sido encerrado.
[093] Os registros no processo de aparamento de um vetor de movimento são uma localização (xP, yP) especificando a amostra superior esquerda da unidade de previsão com relação à amostra superior esquerda da imagem atual, e as matrizes de vetor de movimento MvL0 e MvL1. As saídas no processo são as matrizes de vetor de movimento aparado CMvL0 e CMvL1.
[094] Com relação às matrizes MvL0, MvL1, CMvL0 e CMvL1, as operações das Equações 4 a 7 são realizadas.
Equação 4 mvLX = MvLX\ xP, yP ]
Equação 5 cmvLX[ 0 ] = Clip3{ -1«( TMVBitWidth -1), 1«( TMVBitWidth -1)-1, mvLX[ 0 ] )
Equação 6 cmvLX[ 1 ] = ClipP -1«( TMVBitWidth -1), 1«( TMVBitWidth -1)-1, mvLX[ 1 ] ) Equação 7
CMvLX [ xP, yP ] = cmvLX onde TMVBitWidth indica uma profundidade de bit de um vetor de movimento, Clip3 (a, b, c) significa uma função de aparamento c de modo a existir em uma
17/42 faixa entre a e b.
II. Processo de Armazenamento de Vetor de Movimento [095] As figuras de 5 a 8 são fluxogramas ilustrando um método de armazenamento de um vetor de movimento de uma imagem de referência.
[096] Com referência à figura 5, o vetor de movimento da imagem de referência pode ser armazenado utilizando ambos um armazenador de imagem armazenando uma imagem reconstruída e um armazenador de vetor de movimento armazenando um vetor de movimento. Aqui, a imagem reconstruída é submetida a um processo de filtragem em circuito (S510) e o vetor de movimento é submetido a um processo de faixa dinâmica limitadora (S520) e então armazenada (S540).
[097] Adicionalmente, com referência à figura 6, ambos um armazenador de imagem e um armazenador de vetor de movimento são utilizados, e o vetor de movimento é submetido a um processo de faixa dinâmica limitadora (S620) e a um processo de resolução espacial reduzida (S630) e então armazenado (S640).
[098] Adicionalmente, com referência à figura 7, a imagem reconstruída é submetida a um processo de filtragem em circuito (S710) e então armazenado em um armazenador de imagem (S740), e o vetor de movimento é submetido a um processo de faixa dinâmica limitadora (S720) e então armazenado em um armazenador de vetor de movimento (S750).
[099] Adicionalmente, com referência à figura 8, a imagem reconstruída é submetida a um processo de filtragem em circuito (S810) e então armazenado em um armazenador de imagem (S840), e o vetor de movimento é submetido a um processo de faixa dinâmica limitadora (S820) e um processo de resolução espacial reduzida (S830) e entoa armazenado (S850).
[0100] Enquanto isso, nas modalidades ilustrativas das figuras 6 e 8, uma sequência e processo de faixa dinâmica limitadora S620 ou S820 e o processo de resolução espacial reduzida S630 e S830 não é limitada, mas pode ser alterada.
[0101] Adicionalmente, a fim de se reduzir adicionalmente uma largura de banda de acesso à memória, as faixas dinâmicas de cada componente do vetor de movimento podem ser limitadas de forma diferente. Por exemplo, apenas uma dentre uma faixa dinâmica de um componente X e uma faixa dinâmica de um componente Y pode ser limitada ou a faixa dinâmica do componente Y pode ser adicionalmente
18/42 limitada em comparação com a faixa dinâmica do componente X.
[0102] A faixa dinâmica limitada do vetor de movimento é transmitida através de um conjunto de parâmetros de sequência, um conjunto de parâmetros de imagem (PPS), um cabeçalho de fatia, ou similares, e o decodificador realiza de forma similar a limitação de uma faixa dinâmica de um vetor de movimento temporal na sequência, na imagem ou na fatia. Nesse caso, uma profundidade de bit, que é um tamanho de um espaço de memória necessário para o armazenamento de vetor de movimento representado na faixa dinâmica também pode ser transmitido. Adicionalmente, é possível se armazenar de forma eficiente o vetor de movimento temporal de modo a ser combinado com as características de movimento da imagem utilizando a faixa dinâmica transmitida através do conjunto de parâmetros de sequência, conjunto de parâmetros de imagem, cabeçalho de fatia, ou similares, ao invés do armazenamento do vetor de movimento utilizando uma profundidade de bit possuindo um tamanho fixo.
[0103] Enquanto isso, o vetor de movimento pode ser quantizado e armazenado. No caso no qual o vetor de movimento é quantizado e armazenado, a precisão do vetor de movimento é reduzida. Como um método de quantização, existe a quantização uniforme na qual os tamanhos de etapa são uniformes, a quantização não uniforme na qual os tamanhos de etapa não são uniformes, e similares. O tamanho de etapa na quantização é determinado para um valor fixo predefinido entre o codificador e o decodificador ou é transmitido a partir do codificador para o decodificador através do conjunto de parâmetros de sequência, o conjunto de parâmetros de imagem, o cabeçalho de fatia ou similares. O decodificador utiliza o vetor de movimento quantizado como está ou desquantiza e utiliza o vetor de movimento quantizado. A figura 9 ilustra um exemplo da quantização de um vetor de movimento. Com referência à figura 9, no caso no qual o vetor de movimento possui um valor de componente de 32 a 48, o vetor de movimento é quantizado para 40.
[0104] Adicionalmente, o vetor de movimento pode ser limitado em uma resolução de representação e armazenado. A resolução de representação significa uma unidade de pixel inteiro (1 unidade de pixel), uma unidade de pixel de fração (uma unidade de pixel 1/2, uma unidade de pixel 1/4, ou similares). Por exemplo, uma resolução do vetor de movimento processado em uma unidade de pixel de 1/4 pode ser arma
19/42 zenada como um pixel inteiro. A resolução de representação do vetor de movimento é determinada para um valor fixo predefinido entre o codificador e o decodificador ou é transmitida a partir do codificador para o decodificador através do conjunto de parâmetros de sequência, conjunto de parâmetros de imagem, cabeçalho de fatia, ou similares.
[0105] Adicionalmente, apenas com relação a alguns vetores de movimento entre os vetores de movimento temporal armazenados em uma memória, um processo de faixa dinâmica limitadora, um processo de resolução de espaço reduzido, e um processo de quantização do vetor de movimento podem ser realizados.
[0106] No caso no qual a faixa dinâmica do vetor de movimento é limitada e armazenada, a informação sobre a faixa dinâmica do vetor de movimento pode ser adicionada ou armazenada à memória. Por exemplo, no caso no qual a faixa dinâmica do vetor de movimento é igual a -128 a +127, um indicador de 1 pode ser adicionalmente armazenado, e no caso no qual a faixa dinâmica do vetor de movimento é -32 a + 31, um indicador de 0 pode ser adicionalmente armazenado. Nesse caso, a informação de indicador pode ser armazenada juntamente com o vetor de movimento ou pode ser armazenada em uma memória diferente da memória na qual o vetor de movimento está armazenado. No caso no qual a informação de indicador e o vetor de movimento são armazenados em memórias diferentes, quando em que faixa dinâmica um vetor de movimento específico estão armazenado for reconhecido, o acesso arbitrário à informação de indicador pode ser permitida. Adicionalmente, a informação sobre em que faixa dinâmica alguns dos vetores de movimento são armazenados é transmitida através do conjunto de parâmetro de sequência, conjunto de parâmetro de imagem, cabeçalho de fatia, ou similares, possibilitando, assim, poder ser decodificar par realizar uma operação similar à de um codificador.
[0107] No caso no qual a resolução espacial do vetor de movimento é reduzida e armazenada, a informação em um tamanho de bloco do vetor de movimento pode ser adicionada e armazenada na memória. Por exemplo, no caso no qual o tamanho de bloco do vetor de movimento é 4x4, um indicador de 1 pode ser adicionalmente armazenado, e no caso no qual o tamanho de bloco do vetor de movimento é 16x16, um indicador de 0 pode ser adicionalmente armazenado. Nesse caso, a informação de indicador pode ser armazenada juntamente com o vetor d movimento ou pode ser
20/42 armazenada em uma memória diferente da memória na qual o vetor de movimento é armazenado. No caso no qual a informação de indicador e o vetor de movimento são armazenados em memórias diferentes, quando em que tamanho de bloco um vetor de movimento especifico é armazenado é reconhecido, o acesso arbitrário à informação de indicador pode ser permitido. Adicionalmente, a informação sobre qual tamanho de bloco alguns vetores de movimento são armazenados é transmitida através do conjunto de parâmetros de sequência, conjunto de parâmetros de imagem, cabeçalho de fatia, ou similares, possibilitando, assim, que um decodificador realize uma operação similar à de um codificador.
[0108] No caso no qual o vetor de movimento é quantizado e armazenado, a informação sobre a precisão do vetor de movimento pode ser adicionada e armazenada na memória. Por exemplo, no caos no qual um tamanho de etapa de quantização é igual a 4, um indicador igual a 1 pode ser adicionalmente armazenado, e no caso no qual o tamanho de etapa de quantização é igual a 1, um indicador igual a 0 pode ser adicionalmente armazenado. Nesse caso, a informação de indicador pode ser armazenada juntamente com o vetor de movimento ou pode ser armazenada em uma memória diferente da memória na qual o vetor de movimento é armazenado. No caso no qual a informação de indicador e o vetor de movimento são armazenados em memórias diferentes, quando em que tamanho de etapa um vetor de movimento específico é quantizado e armazenado é reconhecido, o acesso arbitrário à informação de indicador pode ser permitido. Adicionalmente, a informação sobre em que tamanho de etapa alguns vetores de movimento são quantizados e armazenados é transmitida através do conjunto de parâmetro de sequência, o conjunto de parâmetros de imagem, o cabeçalho de fatia, ou similares, possibilitando, assim, que um decodificador realize uma operação similar à de um codificador.
[0109] Adicionalmente, no caso no qual a informação de movimento é armazenada na memória, a resolução espacial do vetor de movimento pode ser reduzida e armazenada. Aqui, a informação de movimento inclui pelo menos uma dentre a informação de modo de interprevisão indicando um índice de imagem de referência, um vetor de movimento, uma direção única, uma direção dupla, ou similares, necessários no momento de interprevisão, uma lista de imagens de referência, uma informação de modo de previsão sobre se um modo de intraprevisão é realizado ou um modo de
21/42 interprevisão é realizado.
[0110] Por exemplo, a informação de movimento de uma unidade de previsão possuindo o maior tamanho de divisão dentre uma pluralidade de informações de movimento de uma região específica pode ser armazenada como informação de movimento representativa na memória. Aqui, a região específica pode incluir uma região no bloco de árvore de codificação e regiões dos blocos vizinhos do bloco de árvore de codificação. Adicionalmente, a região específica pode ser uma região incluindo um bloco no qual a informação de movimento é armazenada no caso no qual toda a imagem ou fatia é dividida em um tamanho predeterminado.
[0111] Por exemplo, depois da informação de movimento, que é codificada em um método de mistura de informação de movimento, um método de pular informação de codificação, ou similar, é excluído a partir da pluralidade de informações de movimento incluídas na região específica, a informação de movimento representativa podendo ser armazenada na memória. Por exemplo, a informação de movimento gerada com maior frequência entre a pluralidade de informações de movimento incluída na região específica pode ser armazenada como informação de movimento representativa na memória. Nesse caso, o número de geração de informação de movimento para cada tamanho de bloco, ou similar, pode ser calculado.
[0112] Por exemplo, a informação de movimento em uma posição específica dentre a pluralidade de informações de movimento incluídas na região específica pode ser armazenada. Aqui, a posição especifica que é uma posição incluída na região específica, pode ser uma posição fixa da região específica. Adicionalmente, a posição especifica pode ser selecionada como uma dentre uma pluralidade de posições. Quando a pluralidade de posições é utilizada, uma prioridade para cada posição pode ser determinada, e a informação de movimento pode ser armazenada na memória de acordo com a prioridade.
[0113] Por exemplo, quando a pluralidade de informações de movimento incluída na região específica é armazenada na memória, visto que a informação de movimento não existe fora de um limite de um bloco codificado em um modo de intraprevisão, um bloco codificado em um modo de modulação codificada por pulso (PCM), uma fatia ou uma imagem, a informação de movimento da posição correspondente pode não ser armazenada na memória.
22/42 [0114] Nos exemplos mencionados acima, quando a informação de movimento da posição específica é armazenada, no caso no qual a informação de movimento da posição correspondente não existe, a informação de movimento de um bloco colocalizado, informação de movimento de um bloco já codificado, ou informação de movimento de um bloco vizinho podem ser utilizadas como a informação de movimento da posição correspondente. Aqui, a posição específica pode ser uma posição de amostra em um bloco vizinho ou uma posição do bloco. Por exemplo, no caso no qual a informação de movimento da posição específica não existe, um valor médio ou valor médio entre a informação de movimento dos blocos vizinhos que são codificados em interprevisão podem ser armazenados na memória. Por exemplo, no caso no qual a informação de movimento da posição específica não existe, um valor médio da informação de posição dos blocos vizinhos pode ser armazenado na memória. Quando o valor médio e o valor de média são calculados, no caso no qual a informação de movimento dos blocos vizinhos é diferente de pelo menos um dos índices de imagem de referência, lista de imagem de referência e informação de modo de interprevisão, um tamanho do vetor de movimento pode ser ajustado de acordo com o índice de imagem de referência, lista de imagem de referência, informação de modo de interprevisão, contador de ordem de imagem, e similares.
III. Processo de Derivação de Vetor de Movimento [0115] No caso no qual a informação de movimento é armazenada na memória utilizando os métodos de informação de movimento mencionados acima e a informação de movimento da imagem de referência é utilizada no método de previsão de vetor de movimento, o método de previsão de vetor de movimento, ou o método de mistura de informação de movimento, a informação de movimento armazenada pode ser coletada.
[0116] Por exemplo, a informação de movimento de uma posição correspondente à do bloco de árvore de codificação na imagem de referência pode ser coletada. Nesse caso, a posição correspondente à do bloco de árvore de codificação na imagem de referência pode ser uma posição fixa em uma região específica ou uma posição relativa a partir da posição do bloco de árvore de codificação.
[0117] As figuras 10 a 13 ilustram exemplos de coleta de informação de movimento a partir de uma imagem de referência.
23/42 [0118] Nas figuras de 10 a 13, um bloco X indica um bloco de árvore de codificação em uma imagem de codificação e decodificação de objeto 1010, 1110, 1210 ou 1310 e um bloco A, um bloco B, um bloco C, um bloco D, e um bloco E indica os blocos vizinhos reconstruídos. Adicionalmente, um bloco T na imagem de referência 1020, 1120, 1220, e 1320 indica um bloco colocalizado correspondente ao bloco de árvore de codificação. Um bloco Y na imagem de referência 1320 da figura 13 indica um bloco correspondente a uma posição além do bloco de objeto de codificação e decodificação.
[0119] Com referência à figura 10, a informação de movimento correspondente a uma posição correspondente a uma posição de pixel superior esquerda entre as posições de um bloco de árvore de codificação X em uma imagem de referência pode ser coletada.
[0120] Com referência à figura 11, a informação de movimento correspondente a uma posição correspondente a uma posição de pixel central entre as posições de um bloco de árvore de codificação X em uma imagem de referência pode ser coletada.
[0121] Com referência à figura 12, a informação de movimento correspondente a uma posição correspondente a uma posição de pixel inferior direita entre as posições de um bloco de árvore de codificação X em uma imagem de referência pode ser coletada.
[0122] Com referência à figura 13, a informação de movimento correspondentes a uma posição correspondente a uma posição de pixel além de um bloco de árvore de codificação X em uma imagem de referência pode ser coletada.
[0123] Um método de codificação e decodificação tal como uma previsão de vetor de movimento, previsão de vetor de movimento avançada, mistura de informação de movimento, pulo de mistura de informação de movimento, ou similares, pode ser realizado utilizando-se a informação de movimento armazenada na memória, isso é, a informação de movimento da imagem de referência.
[0124] O vetor de movimento pode ser armazenado na memória utilizando pelo menos um dentre um método de limitação de uma faixa dinâmica de um vetor de movimento, um método de redução de uma resolução espacial de um vetor de movimento, um método de quantização de um vetor de movimento, e um método de
24/42 redução de uma resolução de representação de um vetor de movimento, e o vetor de movimento armazenado pode ser utilizado para prever um vetor de movimento do bloco de árvore de codificação e misturando a informação de movimento.
[0125] Um processo de coleta do vetor de movimento da imagem de referência a partir da memória é chamado de processo de derivação de um vetor de movimento temporal. Em um processo de derivação de um vetor de movimento temporal, TMVBitWidth indica uma largura de bit de um vetor de movimento temporal armazenado na memória.
[0126] Os registros no processo de derivação de um vetor de movimento temporal são uma localização (xP, yP) especificando a amostra de luminescência superior esquerda da unidade de previsão atual com relação à amostra superior esquerda da imagem atual, variáveis especificando a largura e a altura da unidade de previsão para luminescência, nPSW e nPSH, o índice de referência da partição de unidade de previsão atual refIdxLX (com X sendo igual a 0 ou 1). Saídas no processo são a previsão de vetor de movimento mvLXCol e o indicador de disponibilidade availableFlagLXCol.
[0127] A função RefPicOrderCnt(pic, refidx, LX) é especificada pelo valor de PicOrderCnt da imagem que é a imagem de referência RefPicListX[refidx] de pic com X sendo igual a 0 ou 1. PicOrderCnt da imagem de referência deve ser mantido até que a imagem seja marcada como não existente. Clip3(a,b) significa uma função aparamento c de modo a existir em uma faixa entre a e b.
[0128] Se slice_type for igual a B e collocated_from_10_flag for igual a 0, a variável colPic especifica a imagem que contém a partição colocalizada como especificado por RefPicList1[0]. Do contrário, (slice_type é igual a B e collocated_from_10_flag é igual a 1 ou slice_type é igual a P), a variável colPic especifica a imagem que contém a partição colocalizada como especificado por RefPicList0[0].
[0129] A variável colPu e sua posição (xPCol, yPCol) são derivadas nas seguintes etapas ordenadas:
1. posição de luminescência inferior direita (xPRb, yPRb) da unidade de previsão atual é definida como representado pelas Equações 8 e 9.
Equação 8 xPRb = xP + nPSW
25/42
Equação 9 yPRb -yP \ nPSH
2. Se colPu for codificado em um modo de intraprevisão ou colPu não estiver disponível, (1) a posição de luminescência Central da unidade de previsão atual é definida como representada pelas Equações 10 e 11.
Equação 10 xPCtr = ( xP + ( nPSW » 1 ) - 1
Equação 11 yPCtr = ( yP + ( nPSH » 1 ) - 1 (2) A variável colPu é configurada como a unidade de previsão que cobre a posição modificada fornecida por ((xPCtr >>4)<<4, (yPCtr >> 4)<<4) dentro de colPic.
3. (xPCol, yPCol) e configurado igual à amostra de luminescência superior esquerda de colPu com relação à amostra de luminescência superior esquerda de colPic.
[0130] As variáveis mvLXCol e availableFlagLXCol são derivadas como se segue:
1. Se colPu for codificada em um modo de intraprevisão ou colPu não estiver disponível, ambos os componentes de mvLXCol são configurados iguais a 0 e availableFlagLXCol é configurado igual a 0.
2. Do contrário, (colPu não é codificado em um modo de intraprevisão e colPu está disponível), as variáveis mvCol e refIdxCol são derivadas como se segue, (1) Se PredFlagL0[xPCol][yPCol] for igual a 0, o vetor de movimento mvCol e o índice de referência refIdxCol são configurados iguais a MvL1[xPCol][yPCol] e RefIdxL1 [xPCol][yPCol], respectivamente (2) Do contrário, (PredFlagL0xPCol][yPCol] é igual a 1), o seguinte se aplica:
1) Se PredFlagL1[xPCol][yPCol] for igual a 0, o vetor de movimento mvCol e o índice de referência refIdxCol são configurados igual a MvL0[xPCol][yPCol] e RefIdxL0[xPCol][yPCol], respectivamente,
2) Do contrário (PredFlagL1[xPCol][yPCol] é igual a 1), o seguinte se aplica:
a. As designações a seguir são feitas com X sendo igual a 0 ou 1.
i. RefIdxColLX = RefIdxLX[xPCol][yPCol] ii. Se PicOrderCnt(colPic) for inferior a PicOrderCnt (currPic) e RefPicOr
26/42 derCnt(colPic, RefIdxColLX, LX) for maior que PicOrderCnt(currPic) ou PicOrderCnt(colPic) for maior do que PicOrderCnt(currPic), a variável MvXCross é igual a 1.
iii. Do contrário, (PicOrderCnt(colPic) é inferior a PicOrderCnt(currPic) e RefPicOrderCnt(colPic, RefIdxColLX, LX) é inferior a ou igual a PicOrderCnt(currPic) ou PicOrderCnt(colPic) é maior do que PicOrderCnt(currPic) e RefPicOrderCnt(colPic, RefIdxColLX, LX) é maior do que ou igual a PicOrderCnt)currPic)), a variável MvXCross é igual a 0.
b. Se uma das seguintes condições for verdadeira, o vetor de movimento mvCol, o índice de referência RefIdxCol e ListCol são configurados iguais a MvL1[xPCol][yPCol], RefIdxColL1 e L1, respectivamente.
i. Mv0Cross é igual a 0 e Mv1Cross é igual a 1.
ii. Mv0Cross é igual a Mv1Cross e a lista de índice de referência é igual a L1
c. Do contrário, o vetor de movimento mvCol, o índice de referência refIdxCol e ListCol são configurados para MvL0[xPCol][yPCol]. RefIdxColL0 e L0, respectivamente.
3) a variável availableFlagLXCol é configurada igual a 1 e operações da Equação 12 e Equações de 13 a 18 são aplicadas.
a. Se PicOrderCnt(colPic)-RefPicOrderCnt(colPic, refIdxCol, ListCol) for igual a PicOrderCnt(currPic) - RefPicOrderCnt (currPic, refIdxLX, LX)
Equação 12 mvLXCol = C!ip3( -1«( TMVBitWidth -1), 1«( TMVBitWidth -1)-1., mvCol)
b. Do contrário,
Equação 13 tx = ( 16384 + Abs( td / 2 ) ) / td
Equação 14
DistScaleFactor = Clipil -1024, 1023, ( tb * tx + 32 ) » 6 )
Equação 15 mvLXCol = Clip3( -1«( TMVBítWidth -1), 1«( TMVBitWidth -1)- 1, mvCol)
Equação 16 mvLXCol = ClipMvÇ ( DistScaleFactor * mvLXCol + 128 ) » 8 ) onde td e Tb são derivados das Equações 17 e 18.
27/42
Equação 17 td = Clip3Ç -128, 127, PicOrderCntÇ colPic ) - RefPicOrderCntÇ colPic, refldxCol, ListCol ) )
Equação 18 tb = C!tp3( -128, 127, PicOrderCnt/ currPic ) - RejPicOrderCntÇ currPic, refldxLX, LX ) ) [0131] Isso é, com referência às Equações de 13 a 16, mvLXCol é derivado como uma versão escalonada do vetor de movimento mvCol.
[0132] Enquanto isso, apesar de o vetor de movimento ser aparado em uma faixa dinâmica, no caos no qual o vetor de movimento aparado é escalonado, o vetor de movimento aparado pode novamente estar fora da faixa dinâmica. Portanto, depois de o vetor de movimento escalonado ser derivado, a faixa dinâmica do vetor de movimento pode ser limitada. Nesse caso, cada uma das Equações 15 e 16 pode ser substituída pelas Equações 19 e 20.
Equação 19 mvLXCol = ClipMvi ( DistScaleFactor * mvLXCol + 128 ) » 8 )
Equação 20 mvLXCol = ClipX -1«( TMVBitWidth -1), 1«( TMVBitWidth -1)-1, mvCoT)
IV. Método de Transmissão de Informação para Aparamento de Vetor de Movimento Temporal no Decodificador [0133] Doravante, um método de transmissão de informação necessária para o aparamento aparado de um vetor de movimento temporal em um decodificador utilizando o mesmo método que o de um codificador será descrito.
[0134] TMVBitWidth no processo de derivação de um vetor de movimento temporal pode ser transmitido a partir do codificador para o decodificador através de um conjunto de parâmetros de sequência, um conjunto de parâmetros de imagem, um cabeçalho de fatia, ou similares.
Tabela 5
seq_parameter set rbsp() { C Descriptor
bitwidtlit einporalino tio n_ve c t orininiis 8 0 se(v)
rbsp_trailing_bits() 0
}
[0135] bit_width_temporal_motion_vector_minus8 da Tabela 5 especifica a largura
28/42 de bit do componente de vetor de movimento temporal. Quando bit_width_temporal_motion_vector_minus8 não está presente, deve ser inferido como igual a 0. A largura de bit do componente de vetor de movimento temporal é especificada como segue:
Equação 21
TMVBítWidth = bit_width_temporal_motion_vector^nínus?> + 8 [0136] Método de transmissão de informação 1 - no caso no qual o vetor de movimento é comprimido e a profundidade de bit do vetor de movimento é limitada.
Tabela 6
seq parameter set rbspf) { C Desciiptor
mo tionve c t orbnfferc oinpíla g 0 u(l)
if (motion_vector_buffer_comp_flag)
mo tionve c t orbuffer_c oinp_ra tiolo g2 0 u(8)
bitdep tht emp ora l_in o tio nve c t ore ons t raint_fla g 0 u(l)
if (bit_depth_temporal_motioii_vector_cons1raint_flag)
bitdep tht emp ora l_in o tio nve c t or_ininns8 0 se(v)
rbsp_trailiiig_bits() 0
}
[0137] Com referência à Tabela 6, no caso no qual motion_vector_buffer_comp_flag é igual a 1 o processo de compressão de armazenador de vetor de movimento é aplicado.
[0138] motion_vector_buffer_comp_ratio_log2 especifica a razão de compressão no processo de compressão de armazenador de vetor de movimento. Quando motion_vecto_buffer_com_ratio_log2 não está presente, o mesmo deve ser inferido como sendo igual a 0. A razão de compressão de armazenador de vetor de movimento é especificada como se segue.
Equação 22
MVBufferCompRatio = 1« motiongvector buffer comp raiio logl [0139] Novamente com referência à Tabela 6, no caso no qual bit_depth_temporal_motion_vector_constraint_flag é igual a 1 o processo de restrição de limitação de profundidade de bit de vetor de movimento temporal é aplicado.
[0140] bit_depth_temporal_motion_vector_minus8 especifica a profundidade de bit do vetor de movimento temporal. Quando
29/42 bit_depth_temporal_motion_vector_minus8 não está presente, deve ser inferido como sendo igual a 0. A profundidade de bit do vetor de movimento temporal é especificado como segue:
Equação 23
TMVBitDepth = bit_depth_temporal_motionpvector_minusS + 8 [0141] 2. Método de transmissão de informação 2 - no caso no qual a profundidade de bit do vetor de movimento é limitado
Tabela 7
seq parameter set rbspf) { C Desciiptor
bitdep tht einp oral_ino tio n_ve c t ore ons t raint_fla g 0 u(l)
if (bit_depth_temporal_motioii_vector_cons1raint_flag)
bitdep tht emp oral_ino tio n_ve c t orminus 8 0 se(v)
rbsp_trailiiig_bits() 0
}
[0142] Com referência à Tabela 7, no caso no qual bit_depth_temporal_motion_vector_constraint_flag é igual a 1 o processo de restrição de profundidade de bit de vetor de movimento temporal é aplicado.
[0143] bit_depth_temporal_motino_vector_minus8 especifica a profundidade de bit do vetor de movimento temporal. Quando bit_depth_temporal_motion_vector_minus8 não está presente, deve ser inferior como sendo igual a 0. A profundidade de bit do vetor de movimento temporal é especificada como se segue:
Equação 24
TMVBitDepth ~ bit deplh temporal motiori vector mimiÁÍ + 8 [0144] 3. Método de transmissão de informação 3 - no caso no qual a profundidade de bit do vetor de movimento é limitada.
Tabela 8
seq parameter set rbspQ { C Desciiptor
bit deptli temporal ínotion vector íniniisS 0 se(v)
rbsp_trailing_bits() 0
}
30/42 [0145] bit_depth_temporal_motion_vector_minus8 especifica a profundidade de bit do vetor de movimento temporal. Quando bit_depth_temporal_motion_vector_minus8 não está presente, deve ser inferido que é igual a 0. A profundidade de bit do vetor de movimento temporal é especificado como segue.
Equação 25
TMVBítDepth = bit depth temporal^notionpvector^ninusQ + 8 [0146] 4. Método de transmissão de informação 4 - no caso no qual a profundidade de bit é limitada com relação a cada um dos componentes X e Y do vetor de movimento
Tabela 9
seq parameter set rbsp() { C Desciiptor
bitdep tht einp oral_ino tio n_ve c t ore ons t raint_fla g 0 u(l)
if (bit_depth_temporal_motioii_vector_cons1raint_flag) {
bitdep tht emp oral_ino tio n_ve c t or_x_iniinis 8 0 se(v)
bitdep tht emp oral_ino tio n_ve c t or_y_miiius 8 0 se(v)
}
rbsp_trailiiig_bits() 0
}
[0147] Com referência à Tabela 9, no caso no qual bit_depth_temporal_motion_vector_constraint_flag é igual a 1 o processo de restrição de profundidade de bit de vetor de movimento temporal é aplicado.
[0148] bit_depth_temporal_motion_vector_x_minus8 especifica a profundidade de bit do componente de vetor de movimento temporal x. Quando bit_depth_temporal_motion_vector_x_minus8 não está presente, deve ser inferido como sendo igual a 0. A profundidade de bit do componente de vetor de movimento temporal x é especificado como segue:
Equação 26
TMVXBitDepth = bit depthtemporal molion veclor x rmnuxÁ + 8 [0149] bit_depth_temporal_motion_vector_y_minus8 especifica a profundidade de bit do componente de vetor de movimento temporal y. Quando bit_depth_temporal_motion_vector_y_minus8 não está presente, deve ser inferido que seja igual a 0. A profundidade de bit do componente de vetor de movimento
31/42 temporal y é especificada com se segue:
Equação 27
TMVXBitDepth = bit depth temporal motíori vector y mínusS, + 8 [0150] 5. Método de transmissão de informação 5 - no caso no qual o vetor de movimento é comprimido e a profundidade de bit do vetor de movimento é limitada.
Tabela 10
seq_parameter_set_rbsp() { C Desciiptor
ínotion vector buffer comp flag 0 u(l)
if ( motioti vector buffer comp flag) {
ínotion vector buffer comp ratio log2 0 u(8)
bit depth temporal ínotion vector minusS 0 se(v)
}
rbsp_trailing_bits() 0
}
[0151] Com referência à Tabela 10, no caso no qual motion_vector_buffer_comp_flag é igual a 1 o processo de compressão de armazenador de vetor de movimento é aplicado.
[0152] motion_vector_buffer_comp_ratio_log2 especifica a razão de compressão no processo de compressão de armazenador de vetor de movimento. Quando motion_vector_buffer_comp_ratio_log2 não está presente, deve ser inferido como sendo igual a 0. A razão de compressão de armazenador de vetor de movimento é especificada como segue:
Equação 28
MVBufferCompRatio = 1« moltoti vectorbuffer compratio log2
V. Definição de uma Faixa Dinâmica através dos Níveis de CODEC de Vídeo [0153] A faixa dinâmica do vetor de movimento temporal pode ser definida através de um nível de um codec de vídeo ao invés de ser transmitida através do conjunto de parâmetro de sequência, conjunto de parâmetro de imagem, ou cabeçalho de fatia. O codificador e o decodificador podem determinar uma faixa dinâmica limitada de vetor de movimento utilizando informação de nível.
[0154] Adicionalmente, mesmo nos níveis, as faixas dinâmicas e/ou profundidades de bit de cada um dos componentes X e Y do vetor de movimento podem ser definidas diferentemente, e valores mínimos e valores máximos de cada um dos compo32/42 nentes podem ser definidos.
[0155] As Tabelas 11 e 12 ilustram um exemplo de um caso no qual TMVBitWidth no processo de derivação de um vetor de movimento temporal descrito acima é definido nos níveis.
Tabela 11
Número de nível MaxTMVBitWidth (largura de bit de componente MV temporal máxima)
1 8
b 8
1,1 8
1,2 8
1,3 8
2 8
2,1 8
2,2 8
3 8
3,1 10
3,2 10
4 10
4,1 10
4,2 10
5 10
5,1 10
[0156] Com referência à Tabela 11, TMVBitWidth é configurado como MaxTMVBitWidth definido nos níveis. Aqui, MaxTMVBitWidth dica uma largura máxima de bit de um vetor de movimento temporal quando o vetor de movimento temporal é armazenado na memória.
[0157] Enquanto isso, TMVBitWidth também pode ser definido nos níveis, e uma diferença do valor definido (um valor delta) pode ser transmitida através do conjunto de parâmetros de sequência, conjunto de parâmetros de imagem, ou cabeçalho de fatia. Isso é, TMVBitWidth pode ser configurado como um valor obtido pela adição da diferença transmitida através do conjunto de parâmetro de sequência, conjunto
33/42 de parâmetro de imagem, ou cabeçalho de fatia para MaxTMVBitWidth definido nos níveis. Aqui, TMVBitWidth indica uma largura de bit do vetor de movimento temporal quando o vetor de movimento temporal é armazenado na memória.
Tabela 12
Número de nível MaxTMVBitWidth (largura de bit de componente MV temporal máxima)
1 8
b 8
1,1 8
1,2 8
1,3 8
2 8
2,1 8
2,2 8
3 8
3,1 10
3,2 10
4 10
4,1 10
4,2 10
5 10
5,1 10
Tabela 13
seq parameter set rbspf) { C Descriptor
delt a_bit_width_t einporal_ino tio n_ve c t ormimis 8 0 se(v)
ibsp_trailiíig_bits() 0
}
[0158] delta_bit_width_temporal_motion_vector_minus8 especifica a largura de bit delta do componente de vetor de movimento temporal. Quando delta_bit_width_temporal_motion_vector_minus8 não está presente, deve ser inferido que é igual a 9. A largura de bit do componente de vetor de movimento temporal é
34/42 especificado como se segue:
Equação 29
TMVBitWidth = delta_bit_width_temporal_motion_vector_minus8 + MaxTMVBitWidth.
[0159] Adicionalmente, como ilustrado na Tabela 14, as faixas dinâmicas de cada componente do vetor de movimento temporal também podem ser definidas em níveis.
Tabela 14
Nú- Max- MaxF MaxD- MaxBR MaxCPB MaxTmvr MinCR MaxMvs-
mero MBPS S pbMbs (taxa de (tamanho (faixa de (razão Per2Mb
de (taxa de (tama (tama- bit de CPB má- compo- de com- (número
nível proces- ma- nho de vídeo ximo) nente MV com- máximo de
samento nho armaze- máxima) (1000 bits, temporal pressão vetores de
de macrobloco máxima) (MB/s) máximo de imagem) (MBs) nador de imagem decodificada máximo) (MBs) (1000 bits/s, 1200 bits/s, cpbBrVclF ctor bits/s, ou cpbBrNalFactor bits/s) 1200 bits, pbBrVclFactor bits, ou cpbBrNalFactor bits) máximo) (amostras de imagem de luminescência) mínima) movimento por dois MBs consecutivos)
1 1485 99 396 64 175 [-64, +63,75] 2
b 1485 99 396 128 350 [-64, +63,75] 2
1,1 3000 396 900 192 500 [-128, +127,75] 2
1,2 6000 396 2376 384 1000 [-128, + 127,75] 2
1,3 11880 396 2376 768 2000 [-128, + 127,75] 2
2 11880 396 2376 2000 2000 [-128, + 127,75] 2
2,1 19800 792 4752 4000 4000 [-256, +255,75] 2
2,2 20250 1620 8100 4000 4000 [-256, 2 -
35/42
+255,75]
3 40500 1620 8100 10000 10000 [-256, +255,75] 2 32
3,1 108000 3600 18000 14000 14000 [-512, +511,75] 4 16
3,2 216000 5120 20480 20000 20000 [-512, +511,75] 4 16
4 245760 8192 32768 20000 25000 [-512, +511,75] 4 16
4,1 245760 8192 32768 50000 62500 [-512, +511,75] 2 16
4,2 522240 8704 34816 50000 62500 [-512, +511,75] 2 16
5 589824 22080 110400 135000 135000 [-512, +511,75] 2 16
5,1 983040 36864 184320 240000 240000 [-512, +511,75] 2 16
[0160] Adicionalmente, como ilustrado nas Tabelas de 15 a 17, as larguras de bit de cada componente do vetor de movimento temporal também podem ser definidos em níveis.
[0161] Tabela 15
Nú- Max- MaxF MaxD- MaxBR MaxCPB Max- MinCR MaxMvs-
mero MBPS S pbMbs (taxa de (tamanho TMVBitWid (razão Per2Mb
de (taxa de (tama (tama- bit de CPB má- th (largura de com- (número
nível proces- ma- nho de vídeo ximo) máxima de com- máximo
samento nho armaze- máxima) (1000 bit de com- pressão de vetores
de ma- má- nador de (1000 bits, 1200 ponente mínima) de movi-
crobloco ximo imagem bits/s, bits, MV tempo- mento por
máxima) de decodifi- 1200 pbBrVcl- ral) dois MBs
(MB/s) ima- cada bits/s, Factor consecuti-
gem) máximo) cpbBrVclF bits, ou vos)
(MBs) (MBs) ctor bits/s, cpbBr-
ou cpbBr- NalFactor
cpbBr- bits)
NalFactor
bits/s)
36/42
1 1485 99 396 64 175 8 2 -
b 1485 99 396 128 350 8 2 --
1,1 3000 396 900 192 500 8 2 -
1,2 6000 396 2376 384 1000 8 2 -
1,3 11880 396 2376 768 2000 8 2 -
2 11880 396 2376 2000 2000 8 2 -
2,1 19800 792 4752 4000 4000 8 2 -
2,2 20250 1620 8100 4000 4000 8 2 -
3 40500 1620 8100 10000 10000 8 2 32
3,1 108000 3600 18000 14000 14000 10 4 16
3,2 216000 5120 20480 20000 20000 10 4 16
4 245760 8192 32768 20000 25000 10 4 16
4,1 245760 8192 32768 50000 62500 10 2 16
4,2 522240 8704 34816 50000 62500 10 2 16
5 589824 22080 110400 135000 135000 10 2 16
5,1 983040 36864 184320 240000 240000 10 2 16
Tabela 16
Número de nível MaxMBPS (taxa de processamento de macrobloco máxima) (MB/s) MaxF S (tama manho máximo de imagem) (MBs) MaxDpbMbs (tamanho de armazenador de imagem decodificada máximo) (MBs) MaxBR (taxa de bit de vídeo máxima) (1000 bits/s, 1200 bits/s, cpbBrVclF ctor bits/s, ou cpbBrcpbBrNalFactor bits/s) MaxCPB (tamanho CPB máximo) (1000 bits, 1200 bits, pbBrVclFactor bits, ou cpbBrNalFactor bits) MaxTMVBitWid th (largura máxima de bit de componente MV temporal) MinCR (razão de comcompressão mínima) MaxMvsPer2Mb (número máximo de vetores de movimento por dois MBs consecutivos)
1 1485 99 396 64 175 6 2 -
b 1485 99 396 128 350 6 2 --
37/42
1,1 3000 396 900 192 500 7 2 -
1,2 6000 396 2376 384 1000 7 2 -
1,3 11880 396 2376 768 2000 7 2 -
2 11880 396 2376 2000 2000 7 2 -
2,1 19800 792 4752 4000 4000 8 2 -
2,2 20250 1620 8100 4000 4000 8 2 -
3 40500 1620 8100 10000 10000 8 2 32
3,1 108000 3600 18000 14000 14000 10 4 16
3,2 216000 5120 20480 20000 20000 10 4 16
4 245760 8192 32768 20000 25000 10 4 16
4,1 245760 8192 32768 50000 62500 10 2 16
4,2 522240 8704 34816 50000 62500 10 2 16
5 589824 22080 110400 135000 135000 10 2 16
5,1 983040 36864 184320 240000 240000 10 2 16
Tabela 17
Número de nível MaxTMVBitWidth (largura de bit de componente MV temporal máxima)
1 8
b 8
1,1 8
1,2 8
1,3 8
2 8
2,1 8
2,2 8
3 8
3,1 10
3,2 10
4 10
4,1 10
4,2 10
5 10
38/42
5,1 10
[0162] Adicionalmente, como ilustrado na Tabela 18, uma largura de bit de um componente Y do vetor de movimento temporal também pode ser definida em níveis.
Tabela 18
Nú- Max- MaxF MaxD- MaxBR MaxCPB Max- MinCR MaxMvs-
mero MBPS S pbMbs (taxa de (tamanho TMVYBitWi (razão Per2Mb
de (taxa de (tama (tama- bit de CPB má- dth (profun- de (número
nível proces- ma- nho de vídeo ximo) didade de com- máximo
samento nho armaze- máxima) (1000 bit de com- pressão de vetores
de ma- má- nador (1000 bits, 1200 ponente MV míni- de movi-
crobloco máxima) (MB/s) ximo de imagem) (MBs) de imagem decodificada máximo) (MBs) bits/s, 1200 bits/s, cpbBrVcl Fctor bits/s, ou cpbBrNalFactor bits/s) bits, pbBrVclFactor bits, ou cpbBrNalFactor bits) temporal vertical máxima) ma) mento por dois MBs consecutivos)
1 1485 99 396 64 175 8 2 -
b 1485 99 396 128 350 8 2 --
1,1 3000 396 900 192 500 8 2 -
1,2 6000 396 2376 384 1000 8 2 -
1,3 11880 396 2376 768 2000 8 2 -
2 11880 396 2376 2000 2000 8 2 -
2,1 19800 792 4752 4000 4000 8 2 -
2,2 20250 1620 8100 4000 4000 8 2 -
3 40500 1620 8100 10000 10000 8 2 32
3,1 108000 3600 18000 14000 14000 10 4 16
3,2 216000 5120 20480 20000 20000 10 4 16
4 245760 8192 32768 20000 25000 10 4 16
4,1 245760 8192 32768 50000 62500 10 2 16
4,2 522240 8704 34816 50000 62500 10 2 16
5 589824 22080 110400 135000 135000 10 2 16
5,1 983040 36864 184320 240000 240000 10 2 16
[0163] Adicionalmente, a faixa dinâmica do vetor de movimento tempora pode ser definida como um valor fixo predefinido entre o codificador e o decodificador sem
39/42 transmissão da informação em uma limitação do vetor de movimento ou ser armazenado em uma forma de uma profundidade de bit fixo.
[0164] No caso no qual TMVBitWidth é fixo no mesmo valor e utilizado no codificador e no decodificador, TMVBitWidth pode ser um inteiro positivo tal como 4, 6, 8, 10, 12, 14, 16 ou similar. Aqui, TMVBitWidth indica a largura do bit do vetor de movimento temporal quando o vetor de movimento temporal é armazenado na memória.
[0165] A figura 14 é um fluxograma ilustrando um método de codificação de uma imagem de acordo com a modalidade ilustrativa da presente invenção. Com referência à figura 14, o método de codificação de uma imagem inclui uma etapa de aparamento (S1410), uma etapa de armazenamento (S1420) e uma etapa de codificação (S1430).
[0166] Um aparelho de codificação de uma imagem e/ou um aparelho de decodificação de uma de imagem aparar um vetor de movimento de uma imagem de referência em uma faixa dinâmica predeterminada (S1410). Como descrito acima através de I. Processo de vetor de movimento de aparamento, o vetor de movimento que está fora da faixa dinâmica é representado por um valor mínimo ou um valor máximo da faixa dinâmica correspondente. Portanto, como descrito acima através de IV. Método de Transmissão de informação para Aparamento de Vetor de Movimento Temporal no Decodificador, e V. Definição da Faixa Dinâmica Através de Níveis de CODEC de Vídeo, a profundidade de bit é limitada através do nível do codec de vídeo, conjunto de parâmetro de sequência, e similares, ou a faixa dinâmica é limitada através do nível de codec de vídeo, possibilitando assim o aparamento do vetor de movimento da imagem de referência na faixa dinâmica predeterminada.
[0167] O aparelho de codificação de uma imagem e/ou o aparelho de decodificação de uma imagem armazenam o vetor de movimento aparado da imagem de referência em um armazenador como descrito acima através de II. Processo de Armazenamento de Vetor de Movimento (S1420). O vetor de movimento pode ser armazenado no armazenador juntamente com ou separadamente da imagem reconstruída.
[0168] O aparelho de codificação de uma imagem codifica um vetor de movimento de um bloco de árvore de codificação utilizando o vetor de movimento armazenado
40/42 da imagem de referência (S1430). Como descrito acima através de III. Processo de Derivação de Vetor de Movimento, no método de previsão de vetor de movimento avançado utilizado em HEVC, um vetor de movimento de um bloco existente em uma posição que é igual a ou corresponde \á do bloco de árvore de codificação na imagem de referência além dos vetores de movimento dos blocos reconstruídos posicionados em torno do bloco de árvore de codificação pode ser utilizado. Portanto, o vetor de movimento do bloco de árvore de codificação também pode ser um vetor de movimento da imagem de referência, isso é, um vetor de movimento temporal, além de vetores de movimento dos blocos vizinhos adjacentes ao bloco de árvore de codificação.
[0169] Enquanto isso, visto que a faixa dinâmica do componente X e componente Y do vetor de movimento da imagem de referência pode ser definida diferentemente, cada componente do vetor de movimento da imagem de referência pode ser aparado em cada faixa dinâmica.
[0170] Adicionalmente, um método de compressão de vetor de movimento de uma imagem de referência além de um método de limitação de uma faixa dinâmica de um vetor de movimento de uma imagem de referência pode ser utilizado. No caso de limitação de faixa dinâmica do vetor de movimento da imagem de referência ou compressão de vetor de movimento da imagem de referência, um indicador indicando a faixa dinâmica e o vetor de movimento e um parâmetro relacionado com isso podem ser definidos em um nível de um codec de vídeo, um conjunto de parâmetros de sequência, ou similares.
[0171] Adicionalmente, um método de codificação tal como uma previsão de vetor de movimento, previsão de vetor de movimento avançado, mistura de informação de movimento, pulo de mistura de informação de movimento, ou similar, pode ser realizado utilizando a informação de movimento armazenada na memória, isso é, a informação de movimento da imagem de referência.
[0172] A figura 15 é um fluxograma ilustrando um método de decodificação de uma imagem de acordo com a modalidade ilustrativa da presente invenção. Com referência à figura 15, o método de decodificação de uma imagem inclui uma etapa de aparamento (S1510), uma etapa de armazenamento (S1520), uma etapa de derivação (S1530) e uma etapa de decodificação (S1540).
41/42 [0173] A etapa de aparamento (S1510) e a etapa de armazenamento (S1520) da figura 15 são similares à etapa de aparamento (S1410) e a etapa de armazenamento (S1420) da figura 14 utilizando I. Processo de Aparamento de Vetor de Movimento e II. Processo de Armazenamento de Vetor de Movimento descritos acima. Adicionalmente, a etapa de derivação (S1530) da figura 15 utiliza III. Processo de Derivação de Vetor de Movimento descrito acima e é simétrica à etapa de codificação (S1430) da figura 14. Portanto, uma descrição detalhada será omitida.
[0174] Um aparelho de decodificação de uma imagem realiza a decodificação por interprevisão utilizando um vetor de movimento de um bloco de árvore de codificação (S1540). O aparelho de decodificação de uma imagem pode armazenar um vetor de movimento em uma memória utilizando pelo menos um dentre um método de limitação de uma faixa dinâmica de um vetor de movimento, um método de redução de uma resolução espacial de um vetor de movimento, um método de quantização de um vetor de movimento, e um método de redução de uma resolução de representação de um vetor de movimento, e utilizar o vetor de movimento armazenado para prever um vetor de movimento do bloco de árvore de codificação e misturar a informação de movimento do mesmo.
[0175] Adicionalmente, o aparelho de decodificação de uma imagem pode realizar um método de decodificação tal como a previsão de vetor de movimento, previsão de vetor de movimento avançada, mistura de informação de movimento, pulo de mistura de informação de movimento, ou similar, utilizando a informação de movimento armazenada na memória, isso é, a informação de movimento da imagem de referência.
[0176] Apesar de as modalidades ilustrativas mencionadas acima terem sido descritas através de fluxogramas representados por uma série de etapas ou blocos, a presente invenção não está limitada a uma sequência de etapas descrita acima. Isso é, algumas etapas podem ser geradas em uma sequência diferente ou simultaneamente a partir de ou com outras etapas. Adicionalmente, pode ser compreendido pelos versados na técnica à qual a presente invenção pertence que as etapas ilustradas nos fluxogramas são não exclusivas, de modo que outras etapas possam ser incluídas ou algumas etapas possam ser eliminadas.
[0177] Adicionalmente, as modalidades ilustrativas mencionadas acima incluem
42/42 exemplos de vários aspectos. Apesar de todas as possíveis combinações para ilustrar vários aspectos não serem descritas, pode ser apreciado pelos versados na técnica que outras combinações podem ser feitas. Portanto, a presente invenção deve ser considerada como incluindo todas as outras substituições, alterações e modificações que pertencem às reivindicações a seguir.

Claims (6)

  1. REIVINDICAÇÕES
    1. Método de decodificação de imagem, CARACTERIZADO pelo fato de compreender:
    aparar um vetor de movimento de uma imagem de referência em uma faixa predeterminada para gerar um vetor de movimento aparado;
    derivar um vetor de movimento de um bloco a ser decodificado utilizando o vetor de movimento; e realizar a decodificação por interprevisão utilizando o vetor de movimento do bloco a ser decodificado.
  2. 2. Método de decodificação de imagem, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de adicionalmente compreender o escalonamento por magnitude do vetor de movimento da imagem de referência;
    onde o vetor de movimento da imagem de referência escalonada por magnitude é aparado na faixa.
  3. 3. Método de decodificação de imagem, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de o vetor de movimento ser aparado em uma faixa de valor fixo predeterminado.
  4. 4. Método de decodificação de imagem, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de o vetor de movimento da imagem de referência ser armazenado em uma unidade de bloco predeterminado; e onde, na derivação do vetor de movimento, o vetor de movimento da imagem de referência armazenada na unidade de bloco predeterminada é derivado.
  5. 5. Método de decodificação de imagem, de acordo com a reivindicação 3, CARACTERIZADO pelo fato de os componentes X e Y do vetor de movimento serem aparados na mesma faixa de valor fixo.
  6. 6. Método de decodificação de imagem, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de o vetor de movimento ser um vetor de movimento de um bloco decodificado em um modo interprevisão.
BR122014018140-0A 2011-01-31 2012-01-31 Método de decodificação de imagem BR122014018140B1 (pt)

Applications Claiming Priority (13)

Application Number Priority Date Filing Date Title
KR10-2011-0009636 2011-01-31
KR20110009636 2011-01-31
KR20110019166 2011-03-03
KR10-2011-0019166 2011-03-03
KR10-2011­0050853 2011-05-27
KR1020110050853A KR20120088488A (ko) 2011-01-31 2011-05-27 시간적 움직임 벡터 저장 방법 및 그 장치
KR10-2011-0050853 2011-05-27
KR1020110065707A KR20120088494A (ko) 2011-01-31 2011-07-01 시간적 움직임 벡터 저장 방법 및 그 장치
KR10-2011-0065707 2011-07-01
PCT/KR2012/000770 WO2012105807A2 (ko) 2011-01-31 2012-01-31 움직임 벡터를 이용한 영상 부호화/복호화 방법 및 장치
BR112013019495-2A BR112013019495B1 (pt) 2011-01-31 2012-01-31 Aparelho de decodificação de imagem
KR10-2011-0010096 2012-01-31
KR1020120010096A KR101428030B1 (ko) 2011-01-31 2012-01-31 움직임 벡터를 이용한 영상 복호화 장치

Publications (2)

Publication Number Publication Date
BR122014018140A2 true BR122014018140A2 (pt) 2019-04-30
BR122014018140B1 BR122014018140B1 (pt) 2022-06-07

Family

ID=46873758

Family Applications (5)

Application Number Title Priority Date Filing Date
BR122020015455-1A BR122020015455B1 (pt) 2011-01-31 2012-01-31 Aparelho de decodificação de imagem
BR122020015411-0A BR122020015411B1 (pt) 2011-01-31 2012-01-31 Aparelho de decodificação de imagem
BR122020015452-7A BR122020015452B1 (pt) 2011-01-31 2012-01-31 Aparelho de decodificação de imagem
BR112013019495-2A BR112013019495B1 (pt) 2011-01-31 2012-01-31 Aparelho de decodificação de imagem
BR122014018140-0A BR122014018140B1 (pt) 2011-01-31 2012-01-31 Método de decodificação de imagem

Family Applications Before (4)

Application Number Title Priority Date Filing Date
BR122020015455-1A BR122020015455B1 (pt) 2011-01-31 2012-01-31 Aparelho de decodificação de imagem
BR122020015411-0A BR122020015411B1 (pt) 2011-01-31 2012-01-31 Aparelho de decodificação de imagem
BR122020015452-7A BR122020015452B1 (pt) 2011-01-31 2012-01-31 Aparelho de decodificação de imagem
BR112013019495-2A BR112013019495B1 (pt) 2011-01-31 2012-01-31 Aparelho de decodificação de imagem

Country Status (16)

Country Link
US (4) US10244252B2 (pt)
EP (2) EP3930332A1 (pt)
JP (6) JP5911890B2 (pt)
KR (5) KR20120088488A (pt)
CN (11) CN108124161B (pt)
BR (5) BR122020015455B1 (pt)
CA (3) CA3050903C (pt)
DK (1) DK2672708T3 (pt)
ES (1) ES2899990T3 (pt)
HK (2) HK1251832A1 (pt)
HU (1) HUE056876T2 (pt)
PL (1) PL2672708T3 (pt)
PT (1) PT2672708T (pt)
RU (1) RU2586017C2 (pt)
SI (1) SI2672708T1 (pt)
WO (1) WO2012105807A2 (pt)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120088488A (ko) 2011-01-31 2012-08-08 한국전자통신연구원 시간적 움직임 벡터 저장 방법 및 그 장치
KR101706318B1 (ko) * 2012-10-03 2017-02-15 에이치에프아이 이노베이션 인크. 3차원 비디오 코딩을 위한 모션 데이터 버퍼 감소 방법 및 장치
US10015515B2 (en) * 2013-06-21 2018-07-03 Qualcomm Incorporated Intra prediction from a predictive block
CN110572650B (zh) 2014-01-08 2023-10-27 索尼公司 解码设备和解码方法、以及编码设备和编码方法
KR102105606B1 (ko) 2014-06-02 2020-05-04 한국전자통신연구원 데이터 압축 장치
WO2016050219A1 (en) 2014-09-30 2016-04-07 Mediatek Inc. Method of adaptive motion vetor resolution for video coding
WO2017052250A1 (ko) * 2015-09-23 2017-03-30 엘지전자(주) 영상의 부호화/복호화 방법 및 이를 위한 장치
KR20170058838A (ko) 2015-11-19 2017-05-29 한국전자통신연구원 화면간 예측 향상을 위한 부호화/복호화 방법 및 장치
CN106954074B (zh) * 2016-01-07 2019-12-20 青岛海信电器股份有限公司 一种视频数据处理方法和装置
TW202344052A (zh) 2016-02-09 2023-11-01 弗勞恩霍夫爾協會 用於圖像/視訊資料串流而允許有效可縮減性或有效隨機存取之技術
CN105744275B (zh) * 2016-02-22 2019-04-05 青岛海信电器股份有限公司 一种视频数据输入、输出方法和装置
US10827186B2 (en) * 2016-08-25 2020-11-03 Intel Corporation Method and system of video coding with context decoding and reconstruction bypass
EP3613014B1 (en) * 2017-04-21 2023-10-18 Zenimax Media Inc. Player input motion compensation by anticipating motion vectors
EP3613015A4 (en) 2017-04-21 2021-02-24 Zenimax Media Inc. SYSTEMS AND PROCEDURES FOR TOY GENERATED MOTION VECTORS
US11700391B2 (en) 2017-05-18 2023-07-11 Hfi Innovation Inc. Method and apparatus of motion vector constraint for video coding
KR102368621B1 (ko) 2018-02-28 2022-02-28 삼성전자주식회사 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
KR102516233B1 (ko) * 2018-04-02 2023-03-30 엘지전자 주식회사 움직임 벡터에 기반한 영상 코딩 방법 및 그 장치
US10873748B2 (en) * 2018-05-12 2020-12-22 Qualcomm Incorporated Storage of high precision motion vectors in video coding
CN112040243B (zh) 2018-06-04 2021-06-29 华为技术有限公司 获取运动矢量的方法和装置
CA3105072A1 (en) * 2018-06-29 2020-01-02 Vid Scale, Inc. Adaptive control point selection for affine motion model based video coding
TWI750486B (zh) 2018-06-29 2021-12-21 大陸商北京字節跳動網絡技術有限公司 運動資訊共用的限制
US20220150529A1 (en) * 2018-09-17 2022-05-12 Electronics And Telecommunications Research Institute Image encoding/decoding method and apparatus, and recording medium storing bitstream
CN112997494B (zh) * 2018-10-08 2023-05-09 北京达佳互联信息技术有限公司 用于视频编码的运动矢量存储
AU2019381454A1 (en) * 2018-11-16 2021-06-24 FG Innovation Company Limited Systems and methods for deriving a motion vector prediction in video coding
CN113039796B (zh) 2018-11-17 2023-09-19 北京字节跳动网络技术有限公司 视频处理中的广义双向预测模式
WO2020125751A1 (en) * 2018-12-21 2020-06-25 Beijing Bytedance Network Technology Co., Ltd. Information signaling in current picture referencing mode
CN113273205A (zh) 2018-12-21 2021-08-17 北京字节跳动网络技术有限公司 使用更高比特深度精度的运动矢量推导
BR112021009911A2 (pt) * 2018-12-29 2021-08-17 Huawei Technologies Co., Ltd. codificador, decodificador e métodos correspondentes usando armazenamento de mv compacto
JP2022544164A (ja) 2019-08-06 2022-10-17 オーピー ソリューションズ, エルエルシー フレームタイプに基づく適応分解能管理の暗示的信号伝達
BR112022002204A2 (pt) * 2019-08-06 2022-10-18 Op Solutions Llc Redimensionamento de previsão de gerenciamento de resolução adaptativa
WO2021026324A1 (en) * 2019-08-06 2021-02-11 Op Solutions Adaptive resolution management prediction rescaling
KR20220090493A (ko) 2019-08-06 2022-06-29 오피 솔루션즈, 엘엘씨 블록-기반 적응적 해상도 관리
BR112022008918A2 (pt) 2019-11-08 2022-08-02 Op Solutions Llc Métodos e sistemas para corte adaptável
KR20220093915A (ko) 2020-12-28 2022-07-05 삼성전자주식회사 반도체 집적회로 레이아웃의 확률적 취약점 검출 방법 및 이를 수행하는 컴퓨터 시스템

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5262854A (en) * 1992-02-21 1993-11-16 Rca Thomson Licensing Corporation Lower resolution HDTV receivers
CA2263855C (en) * 1997-06-25 2003-04-01 Nippon Telegraph And Telephone Corporation Motion vector predictive encoding method, motion vector decoding method,predictive encoding apparatus and decoding apparatus, and storage media storing motion vector predictive encoding and decoding programs
JP2914448B2 (ja) * 1997-06-25 1999-06-28 日本電信電話株式会社 動きベクトル予測符号化方法および動きベクトル復号方法、予測符号化装置および復号装置、並びに、動きベクトルの予測符号化プログラムおよび復号プログラムを記録した記録媒体
US7206346B2 (en) * 1997-06-25 2007-04-17 Nippon Telegraph And Telephone Corporation Motion vector predictive encoding method, motion vector decoding method, predictive encoding apparatus and decoding apparatus, and storage media storing motion vector predictive encoding and decoding programs
JPH11122624A (ja) 1997-10-16 1999-04-30 Matsushita Electric Ind Co Ltd ビデオデコーダ処理量を低減する方法および装置
ATE404019T1 (de) * 2001-09-12 2008-08-15 Nxp Bv Bewegungsschätzung und/oder kompensation
KR100632072B1 (ko) * 2001-12-25 2006-10-04 마츠시타 덴끼 산교 가부시키가이샤 동화상 압축 부호화장치 및 모션벡터 검출방법
US7177356B2 (en) * 2002-01-11 2007-02-13 Webtv Networks, Inc. Spatially transcoding a video stream
EP1427216A1 (en) * 2002-07-02 2004-06-09 Matsushita Electric Industrial Co., Ltd. Image encoding method and image decoding method
US20040057521A1 (en) 2002-07-17 2004-03-25 Macchina Pty Ltd. Method and apparatus for transcoding between hybrid video CODEC bitstreams
CN101090499A (zh) * 2002-07-17 2007-12-19 达丽星网络有限公司 在混合视频codec比特流之间进行码转换的方法和装置
US8837605B2 (en) 2006-09-26 2014-09-16 Onmobile Global Limited Method and apparatus for compressed video bitstream conversion with reduced-algorithmic-delay
AU2003273307A1 (en) * 2002-10-01 2004-04-23 Thomson Licensing S.A. Implicit weighting of reference pictures in a video encoder
US7499495B2 (en) * 2003-07-18 2009-03-03 Microsoft Corporation Extended range motion vectors
KR100941123B1 (ko) * 2003-10-09 2010-02-10 톰슨 라이센싱 에러 은닉을 위한 직접 모드 도출 프로세스
JP4591657B2 (ja) * 2003-12-22 2010-12-01 キヤノン株式会社 動画像符号化装置及びその制御方法、プログラム
US7961963B2 (en) * 2005-03-18 2011-06-14 Sharp Laboratories Of America, Inc. Methods and systems for extended spatial scalability with picture-level adaptation
KR101406156B1 (ko) * 2006-02-02 2014-06-13 톰슨 라이센싱 움직임 보상 예측을 위한 적응 가중 선택 방법 및 장치
US8494052B2 (en) 2006-04-07 2013-07-23 Microsoft Corporation Dynamic selection of motion estimation search ranges and extended motion vector ranges
JP2008067194A (ja) * 2006-09-08 2008-03-21 Toshiba Corp フレーム補間回路、フレーム補間方法、表示装置
KR101365574B1 (ko) 2007-01-29 2014-02-20 삼성전자주식회사 영상 부호화 방법 및 장치, 복호화 방법 및 장치
CN101115200B (zh) * 2007-04-20 2010-05-19 西安交通大学 一种有效的运动矢量可伸缩编码方法
US8908765B2 (en) * 2007-11-15 2014-12-09 General Instrument Corporation Method and apparatus for performing motion estimation
US8345763B2 (en) * 2007-11-27 2013-01-01 Mediatek Inc. Motion compensation method and integrated circuit utilizing the same
ES2812473T3 (es) * 2008-03-19 2021-03-17 Nokia Technologies Oy Vector de movimiento combinado y predicción de índice de referencia para la codificación de vídeo
CN101873483B (zh) * 2009-04-24 2012-08-29 深圳市九洲电器有限公司 一种运动估计方法及采用运动估计方法的编码芯片、装置
JP5209572B2 (ja) 2009-06-29 2013-06-12 三菱電機株式会社 画像符号化装置及び画像復号装置
JP5738549B2 (ja) 2009-07-22 2015-06-24 株式会社Sumco 包装済石英ガラスルツボ用クレーン装置およびこの装置を用いる包装済石英ガラスルツボの梱包方法
KR20110017302A (ko) 2009-08-13 2011-02-21 삼성전자주식회사 움직임 벡터의 정확도 조절을 이용한 영상 부호화, 복호화 방법 및 장치
KR20110019166A (ko) 2009-08-19 2011-02-25 삼화주철공업 주식회사 소음 방지용 맨홀
KR101356613B1 (ko) * 2009-08-21 2014-02-06 에스케이텔레콤 주식회사 적응적 움직임 벡터 해상도를 이용한 영상 부호화/복호화 방법 및 장치
KR101074238B1 (ko) 2009-11-09 2011-10-14 부경대학교 산학협력단 초임계 처리를 이용한 오징어 및 고등어 내장에서의 단당류를 수득하는 방법
KR101418104B1 (ko) * 2010-03-08 2014-07-16 에스케이 텔레콤주식회사 움직임 벡터 해상도 조합을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
CN101841712A (zh) * 2010-04-28 2010-09-22 广西大学 面向全景视频编码的b帧扩展直接模式
US8711940B2 (en) * 2010-11-29 2014-04-29 Mediatek Inc. Method and apparatus of motion vector prediction with extended motion vector predictor
KR20120088488A (ko) 2011-01-31 2012-08-08 한국전자통신연구원 시간적 움직임 벡터 저장 방법 및 그 장치
WO2012122927A1 (en) * 2011-03-14 2012-09-20 Mediatek Inc. Method and apparatus for derivation of motion vector candidate and motion vector prediction candidate
AU2011362447B2 (en) * 2011-03-14 2015-09-24 Hfi Innovation Inc. Method and apparatus for deriving temporal motion vector prediction
US10536701B2 (en) * 2011-07-01 2020-01-14 Qualcomm Incorporated Video coding using adaptive motion vector resolution
JP5895469B2 (ja) * 2011-11-18 2016-03-30 富士通株式会社 動画像符号化装置、および動画像復号装置

Also Published As

Publication number Publication date
KR20130084286A (ko) 2013-07-24
JP2019193298A (ja) 2019-10-31
CA2826157A1 (en) 2012-08-09
US20190149837A1 (en) 2019-05-16
HK1251838A1 (zh) 2019-04-12
KR101477771B1 (ko) 2015-01-05
US20220086479A1 (en) 2022-03-17
DK2672708T3 (da) 2021-12-13
HUE056876T2 (hu) 2022-03-28
HK1251832A1 (zh) 2019-04-04
KR20130093057A (ko) 2013-08-21
JP2016129371A (ja) 2016-07-14
BR112013019495B1 (pt) 2022-05-17
CN103583044B (zh) 2018-01-26
JP2014509479A (ja) 2014-04-17
CN108124162B (zh) 2020-11-24
EP2672708A2 (en) 2013-12-11
CN108174219B (zh) 2020-11-24
KR101461499B1 (ko) 2014-11-17
US20200228822A1 (en) 2020-07-16
CN108174221A (zh) 2018-06-15
JP6203878B2 (ja) 2017-09-27
JP7369679B2 (ja) 2023-10-26
CN108124162A (zh) 2018-06-05
CA3220287A1 (en) 2012-08-09
CN107846596A (zh) 2018-03-27
RU2586017C2 (ru) 2016-06-10
CN108174215A (zh) 2018-06-15
ES2899990T3 (es) 2022-03-15
CN108124161B (zh) 2020-11-24
JP6783355B2 (ja) 2020-11-11
CA3050903C (en) 2024-01-16
CN107888927A (zh) 2018-04-06
KR20130084287A (ko) 2013-07-24
US10645411B2 (en) 2020-05-05
JP2021007261A (ja) 2021-01-21
KR101461498B1 (ko) 2014-11-17
CN108174219A (zh) 2018-06-15
US20130294522A1 (en) 2013-11-07
BR122020015452B1 (pt) 2024-01-30
CA2826157C (en) 2019-09-24
KR101378888B1 (ko) 2014-04-02
BR122020015455B1 (pt) 2022-12-27
CN108174216A (zh) 2018-06-15
PL2672708T3 (pl) 2022-02-07
CN108174220A (zh) 2018-06-15
BR122020015411B1 (pt) 2022-12-27
RU2013140464A (ru) 2015-03-10
EP2672708B1 (en) 2021-11-17
PT2672708T (pt) 2021-12-16
BR112013019495A2 (pt) 2018-04-03
JP2023018075A (ja) 2023-02-07
KR20120088488A (ko) 2012-08-08
JP6550429B2 (ja) 2019-07-24
JP5911890B2 (ja) 2016-04-27
CN107888916A (zh) 2018-04-06
CN108174215B (zh) 2020-11-24
CN107888927B (zh) 2020-11-24
WO2012105807A3 (ko) 2012-12-13
BR122014018140B1 (pt) 2022-06-07
CN103583044A (zh) 2014-02-12
CN108124161A (zh) 2018-06-05
EP3930332A1 (en) 2021-12-29
WO2012105807A2 (ko) 2012-08-09
CA3050903A1 (en) 2012-08-09
JP2018011323A (ja) 2018-01-18
SI2672708T1 (sl) 2022-01-31
EP2672708A4 (en) 2015-01-21
US10244252B2 (en) 2019-03-26
KR20140102639A (ko) 2014-08-22

Similar Documents

Publication Publication Date Title
BR122014018140A2 (pt) Método de decodificação de imagem
EP3836545A1 (en) Method and apparatus for processing video signals using inter prediction
EP3525460A1 (en) Method for processing video on basis of inter prediction mode and apparatus therefor
CN112956190A (zh) 仿射运动预测
JP2022130528A (ja) 映像符号化における動きマージモードのシグナリングのためのシステムおよび方法
KR101428030B1 (ko) 움직임 벡터를 이용한 영상 복호화 장치

Legal Events

Date Code Title Description
B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B03A Publication of a patent application or of a certificate of addition of invention [chapter 3.1 patent gazette]
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]
B15K Others concerning applications: alteration of classification

Free format text: A CLASSIFICACAO ANTERIOR ERA: H04N 7/00

Ipc: H04N 19/426 (2006.01)

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 31/01/2012, OBSERVADAS AS CONDICOES LEGAIS. PATENTE CONCEDIDA CONFORME ADI 5.529/DF, QUE DETERMINA A ALTERACAO DO PRAZO DE CONCESSAO.