BR122015017699B1 - Dispositivo de decodificação de imagem - Google Patents

Dispositivo de decodificação de imagem Download PDF

Info

Publication number
BR122015017699B1
BR122015017699B1 BR122015017699-9A BR122015017699A BR122015017699B1 BR 122015017699 B1 BR122015017699 B1 BR 122015017699B1 BR 122015017699 A BR122015017699 A BR 122015017699A BR 122015017699 B1 BR122015017699 B1 BR 122015017699B1
Authority
BR
Brazil
Prior art keywords
motion
prediction
block
motion vector
unit
Prior art date
Application number
BR122015017699-9A
Other languages
English (en)
Other versions
BR122015017699A2 (pt
Inventor
Kazuo Sugimoto
Akira Minezawa
Shunichi Sekiguchi
Yusuke Itani
Yoshiaki Kato
Original Assignee
Mitsubishi Electric Corporation
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=43222450&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=BR122015017699(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Mitsubishi Electric Corporation filed Critical Mitsubishi Electric Corporation
Publication of BR122015017699A2 publication Critical patent/BR122015017699A2/pt
Publication of BR122015017699B1 publication Critical patent/BR122015017699B1/pt

Links

Images

Classifications

    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/57Motion estimation characterised by a search window with variable size or shape
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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/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/186Methods 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 a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • 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
    • 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
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/53Multi-resolution motion estimation; Hierarchical motion estimation
    • 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/55Motion estimation with spatial constraints, e.g. at image or region borders
    • 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
    • H04N19/619Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding the transform being operated outside the prediction loop
    • 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/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
    • 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/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree 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/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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • 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/567Motion estimation based on rate distortion criteria
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

dispositivo de decodificação de imagem é descrito aqui um dispositivo de codificação de imagem que é fornecido com: uma unidade de predição (4) para adaptativamente determinar o tamanho de um bloco de unidade de predição de movimento de acordo com sinais de componente de cor, e dividir o bloco de unidade de predição de movimento em áreas de alocação de vetor de movi-mento para pesquisar por um vetor de movimento; e a unidade de codificação de compri-mento variável (8) para efetuar codificacão num modo de mc_skip se um vetor de movi-mento é igual a um vetor de predição, e um sinal de erro de predição (5) não está presente quando o vetor de movimento é alocado ao inteiro bloco die unidade de predição de movimento, e para efetuar a codificação em um modo de sub_mc_skip se o vetor de movimento é igual ao vetor die predição, e o sinal de erro de predição (5) não está presente quando as áreas de alocação de vetor de movimento não são menores do que tamanho predeterminado, e o vetor de movimento é alocado á inteira área die alocação de vetor de movimento.

Description

Campo da Invenção
[001] A presente invenção refere-se a um dispositivo de decodificaçãode imagem, o qual é usado para uma técnica de codificação por compressão de imagem, uma técnica de transmissão de dados de imagem comprimidos, etc. Fundamentos da Invenção
[002] Convencionalmente, em métodos de codificação de vídeos depadrão internacional, tais como MPEG e ITU-T H.26x, cada quadro de vídeo de entrada é submetido a um processo de compressão com o quadro de vídeo sendo dividido em blocos “macros” cada um dos quais consistindo de 16 x 16 blocos de pixel.
[003] Por outro lado, nos anos recentes, uma técnica de codificar porcompressão um vídeo de alta qualidade de alta definição tendo um formato de vídeo, tal como um formato de vídeo de 4K x 2K pixels tendo uma resolução de espaço que é quatro vezes tão alta quanto aquela de HDTV (Televisão de Alta Definição, 1920 x 1080 pixels), um formato de vídeo de 8K x 4K pixels tendo uma resolução de espaço que é ainda aumentada em até quatro vezes tão alta quanto aquela do formato de vídeo de 4K x 2K pixels, ou um formato de sinal de vídeo de 4:4:4 a fim de aumentar o número de sinais de crominância amostrados, e por meio do mesmo, melhorar a natureza de reprodução de cor, tem sido desejado. Quando codificando por compressão aquele vídeo de alta qualidade de alta definição, é impossível efetuar um processo de codificação usando-se uma correlação de sinal de imagem em um bloco macro de 16 x 16 pixels macro para um grau suficiente, e é, por conseguinte, difícil fornecer uma proporção de compressão alta. De modo a lidar com este problema, por exemplo, uma técnica de estender o tamanho de cada convencional bloco macro de 16 x 16 pixel convencional para um bloco de 32 x 32 pixel, como divulgado na referência não patentária 1, e aumentando a unidade para o qual um vetor de movimento é alocado, e por meio disso, reduzindo a quantidade de parâmetros codificados requeridos para predição, ou um técnica de aumentar o tamanho de bloco para a codificação de conversão de um sinal de erro de predição, e por meio disso, removendo uma correlação entre pixels do sinal de erro de predição eficazmente, tem sido proposto.
[004] A Fig. 21 é um diagrama em bloco mostrando a estrutura deum dispositivo de codificação divulgado na referência não patentária 1. Na codificação divulgada na referência não patentária 1, uma unidade de divisão de bloco 1002 divide um sinal de vídeo entrado 1001 que é um alvo para ser codificado em blocos macros (blocos retangulares de um sinal de intensidade luminosa por unidade de área cada um tendo 32 pixels x 32 linhas), e é entrado para uma unidade de predição 1004 com um sinal de vídeo codificado 1003.
[005] A unidade de predição 1004 prognostica um sinal de imagemde cada componente de cor em cada bloco macro dentro de cada quadro e entre quadros para adquirir um sinal de erro de predição 1005. Especialmente, quando efetuando uma predição compensado de movimento entre quadros, a unidade de predição pesquisa por um vetor de movimento para cada próprio bloco macro ou cada um dos sub-blocos nos quais cada bloco macro é ainda dividido, cria uma imagem de predição compensado de movimento de acordo com o vetor de movimento, e adquire um sinal de erro de predição 1005 calculando a diferença entre a imagem de predição compensado de movimento e o sinal de vídeo codificado 1003.
[006] Após efetuar um processo de DCT (transformada de cossenodiscreto) no sinal de erro de predição 1005 para remover uma correlação de sinal a partir do sinal de erro de predição 1005 enquanto mudando o tamanho do bloco de acordo com o tamanho de uma área unitária para a qual o vetor de movimento é alocado, uma unidade de compressão 1006 faz quantização do sinal de erro de predição para adquirir dados comprimidos 1007. Enquanto os dados comprimidos 1007 são codificados por entropia e emitidos como um fluxo de bit 1009 por uma unidade de codificação de comprimento variável 1008, os dados comprimidos também são enviados para uma unidade de decodificação local 1010 e um sinal de erro de predição decodificado 1011 é adquirido por esta unidade de decodificação local.
[007] Este sinal de erro de predição decodificado 1011 é adicionadoa um sinal de predição 1012 que é usado para criar o sinal de erro de predição 1005 para criar um sinal decodificado 1013, e tal sinal decodificado é entrado para um filtro de laço 1014. O sinal decodificado 1013 é armazenado em uma memória 1016 como um sinal de imagem de referência 1015 para criar um subsequente sinal de predição 1012 após o sinal decodificado ser submetido a um processo de remover uma distorção do bloco pelo filtro de laço 1014. Um parâmetro 1017 usado para a criação do sinal de predição, que é determinado pela unidade de predição 1004 de modo a adquirir o sinal de predição 1012, é enviado para a unidade de codificação de comprimento variável 1008, e é multiplexado num fluxo de bit 1009 e este fluxo de bit é emitido. Informação, tal como informação de modo de intra-predição mostrando como efetuar uma predição de espaço dentro de cada quadro, e vetor de movimento mostrando uma quantidade de movimento inter-quadro, é incluída no parâmetro 1017 usado para a criação do sinal de predição, por exemplo.
[008] Enquanto um método de codificação como o método de padrãointernacional convencional, tal como o MPEG ou o ITU-T H.26x, usa 16 x 16 pixels como o tamanho do bloco macro, o dispositivo de codificação revelado na referência não patentária 1 usa 32 x 32 pixels como o tamanho de bloco macro (super-bloco macro: SMB). A Fig. 22 mostra determinadas formas de regiões divididas para cada uma das quais um vetor de movimento é alocado no momento de efetuar uma predição compensado de movimento para cada bloco de macro de M x M pixel, e Fig. 22(a) mostra cada SMB divulgado na referência não patentária 1 e Fig. 22(b) mostra cada bloco macro com base no MPEG-4 AVC / H.264 (referir-se à referência não patentária 2). Enquanto cada SMB tem uma grande área para cada região de predição de movimento que é coberto por um único vetor de movimento com o número de pixels M = 32, cada bloco macro convencional usa o número de pixels M / 2 = 16. Como um resultado, porque no caso de SMBs a quantidade de informação do vetor de movimento que é necessário para a tela inteira diminui comparada com o caso de blocos macros convencionais tendo o número de pixels M / 2 = 16, a quantidade de código de vetor de movimento que deve ser transmitida como um fluxo de bit pode ser reduzida.Documento da Técnica RelacionadaReferência Não PatentáriaReferência Não Patentária 1: Siwei Ma e C.-C. Jay Kuo, “High-definition Video Coding com Super-macroblocks”, Proc. SPIE, Volume 6508, 650816 (2007)Referência Não Patentária 2: padrões MPEG-4 AVC (ISO / IEC 14496-10) / H.ITU-T 264 standards
Sumário da Invenção
[009] Nos métodos convencionais ora divulgados nas referências nãopatentárias 1 e 2, um modo especial chamado um modo de salto no qual quaisquer dados que devem ser codificados para um vetor de movimento e um sinal de erro de predição não ocorre por completo como um resultado da predição de movimento mencionado acima é disposto. Por exemplo, na referência não patentária 2, um caso no qual “o vetor de movimento coincide com seu vetor prognosticado, e todos os coeficientes de transformada do sinal de erro de predição são zeros” é definido como um modo de salto. Ainda mais, o modo de salto pode ser selecionado somente quando a região para o qual o vetor de movimento é alocado tem o mesmo tamanho que um bloco macro. Por conseguinte, quando o tamanho de bloco macro é aumentado conforme mostrado na referência não patentária 1, o modo de salto é configurado somente para um bloco de predição de movimento tendo um tamanho máximo. Um problema é, por conseguinte, que o modo de salto não é aplicado a qualquer predição para qualquer bloco de predição de movimento tendo um tamanho menor do que o tamanho máximo, e então é difícil melhorar a eficiência da codificação.
[0010] A presente invenção é feita de modo a resolver o problema mencionado acima, e é, por conseguinte, um objeto da presente invenção fornecer um dispositivo de codificação de imagem que implementa um método de codificação de vídeo tendo bom equilíbrio de carga, de remover uma correlação de sinal mais eficazmente de acordo com as estatísticas e propriedades locais de um sinal de vídeo que é um alvo a ser codificado e efetuar uma eficiente compressão de informação, e por meio disso, melhorar a condição de otimização para codificação de um sinal de vídeo de ultra alta definição , e um método de implementar um dispositivo de codificação de imagem, e um dispositivo de decodificação de imagem e um método de decodificação de imagem.
[0011] De acordo com a presente invenção, é fornecido um dispositivo de codificação de imagem incluindo: uma unidade de predição para adaptativamente determinar um tamanho de um bloco de unidade de predição de movimento em cada bloco macro de acordo com uma condição predeterminada, e para dividir o bloco de unidade de predição de movimento mencionado acima em regiões de alocação de vetor de movimento para pesquisar por um vetor de movimento; e uma unidade de codificação para, quando um vetor de movimento é alocado a um todo do bloco de unidade de predição de movimento, efetuar codificação em um primeiro modo de salto se o vetor de movimento mencionado acima é igual a um vetor estimado que é determinado a partir do vetores de movimento em torno dos blocos de unidade de predição de movimento e dados a serem codificados com um sinal de erro de predição de movimento não existem, e para, quando cada uma das regiões de alocação de vetor de movimento tem um tamanho igual à ou maior do que um tamanho predeterminado e um vetor de movimento é alocada a um todo de cada uma das regiões de alocação de vetor de movimento, efetuar codificação em um segundo modo de salto se o vetor de movimento mencionado acima é igual a um vetor estimado que é determinado a partir dos vetores de movimento em torno das regiões de alocação de vetor de movimento e dados a serem codificado como um sinal de erro de predição de movimento não existem.
[0012] De acordo com a presente invenção, é fornecido um dispositivo de decodificação de imagem incluindo: uma unidade de decodificação para decodificar um fluxo de bit para adquirir dados mostrando um tamanho de um bloco de unidade de predição de movimento em cada bloco macro, um modo de predição de movimento para especificar a forma de cada uma das regiões de alocação de vetor de movimento nas quais o bloco de unidade de predição de movimento é dividido, e um vetor de movimento correspondendo a cada região de alocação de vetor de movimento, e para determinar se o bloco de unidade de predição de movimento está ou não em um primeiro modo de salto e se uma das regiões de alocação de vetor de movimento está ou não em um segundo modo de salto a partir do modo de predição de movimento mencionado acima; e a unidade de predição para, quando o bloco de unidade de predição de movimento está no primeiro modo de salto ou uma das regiões de alocação de vetor de movimento está no segundo modo de salto, determinar um vetor estimado em torno dos vetores dos vetores de movimento, e configurar este vetor estimado como um vetor de movimento e também configurar todos os sinais de erro de predição de movimento para zero para criar uma imagem de predição, e para, quando o bloco de unidade de predição de movimento não está no primeiro modo de salto e as regiões de alocação de vetor de movimento do bloco de unidade de predição de movimento mencionado acima não estão no segundo modo de salto, criar uma imagem de predição em base do modo de predição de movimento e do vetor de movimento que a unidade de decodificação adquire decodificando o fluxo de bit.
[0013] De acordo com a presente invenção, é fornecido um método de codificação de imagem incluindo: uma etapa de predição para adaptativamente determinar um tamanho de um bloco de unidade de predição de movimento em cada um dos blocos mencionados de acordo com uma condição predeterminada, e dividir o bloco de unidade de predição de movimento mencionado acima em regiões de alocação de vetor de movimento para pesquisar por um vetor de movimento; e uma etapa de codificação para, quando um vetor de movimento é alocado e um todo do bloco de unidade de predição de movimento, efetuar codificação em um primeiro modo de salto se o vetor de movimento mencionado acima é igual para um vetor estimado que é determinado a partir dos vetores de movimento em torno dos blocos de unidade de predição de movimento e dados a serem codificados como um sinal de erro de predição de movimento não existem, e para, quando cada uma das regiões de alocação de vetor de movimento tem um tamanho igual à ou maior do que um tamanho predeterminado e um vetor de movimento é alocado a um todo de cada uma das regiões de alocação de vetor de movimento, efetuar codificação em um segundo modo de salto se o vetor de movimento mencionado acima é igual a um vetor estimado que é determinado a partir de vetores de movimento em torno das regiões de alocação de vetor de movimento e dados a serem codificados como um sinal de erro de predição de movimento não existem.
[0014] De acordo com a presente invenção, é fornecido um método de decodificação de imagem incluindo: uma etapa de decodificação para decodificar um fluxo de bit para adquirir dados mostrando um tamanho de um bloco de unidade de predição de movimento em cada bloco macro, um modo de predição de movimento para especificar a forma de cada uma das regiões de alocação de vetor de movimento na quais o bloco de unidade de predição de movimento é dividido, e um vetor de movimento correspondendo a cada região de alocação de vetor de movimento, para determinar se o bloco de unidade de predição de movimento está ou não em um primeiro modo de salto e se uma das regiões de alocação de vetor de movimento está ou não em um segundo modo de salto a partir do modo de predição de movimento mencionado acima; uma etapa de predição de modo de salto para, quando p bloco de unidade de predição de movimento está no primeiro modo de salto ou uma das regiões de alocação de vetor de movimento está no segundo modo de salto, determinar um vetor estimado a partir dos vetores de movimento em torno, e configurar este vetor estimado como um vetor de movimento e também configurar todos os sinais de erro de predições de movimento para zero para criar uma imagem de predição; e uma etapa de predição para, quando o bloco de unidade de predição de movimento não está no primeiro modo de salto e as regiões de alocação de vetor de movimento do bloco de unidade de predição de movimento não estão no segundo modo de salto, decodificar o fluxo de bit para adquirir dados mostrando o vetor de movimento correspondendo a cada região de alocação de vetor de movimento para criar uma imagem de predição em base do vetor de movimento mencionado acima e do moda predição de movimento que é adquirindo decodificando o fluxo de bit na etapa de decodificação.
[0015] De acordo com a presente invenção, porque o primeiro modo de salto e o segundo modo de salto são configurados para cada bloco de unidade de predição de movimento e suas regiões de alocação de vetor de movimento, respectivamente, um dispositivo de codificação de imagem e um dispositivo de decodificação de imagem podes ser construídos em tal uma maneira a fim de serem capazes de expressar uma hierarquia de modos de salto quando codificando e decodificando um sinal de vídeo tendo o formato de 4:4:4 e ser adaptativo para as características de uma mudança temporal de cada sinal de componente de cor com flexibilidade. Por conseguinte, um dispositivo de codificação de imagem pode efetuar um processo ótimo de codificação no sinal de vídeo tendo o formato 4:4:4.Breve Descrição das FigurasA Fig. 1 é uma vista mostrando o formato de 4:4:4 que é um alvo a ser processado por um dispositivo de codificação de imagem e um dispositivo de decodificação de imagem de acordo com Modalidade 1;A Fig. 2 é um diagrama em bloco mostrando a estrutura do dispositivo de codificação de imagem de acordo com Modalidade 1;A Fig. 3 é um desenho explicativo mostrando um bloco de referência que a unidade de divisão de bloco mostrada na Fig. 2 cria;A Fig. 4 é um desenho explicativo mostrando exemplos de formas nas quais a unidade de predição mostrado na Fig. 2 divide um conjunto de blocos de unidade de predição de movimento, cada uma das formas consistindo de um ou mais blocos básicos;A Fig. 5 é um fluxograma mostrando a operação da unidade de predição mostrada na Fig. 2;A Fig. 6 é uma vista para explicar um método de calcular um custo J que é executado pela unidade de predição;A Fig. 7 é uma vista mostrando um exemplo de determinação de um vetor estimado PMV em cada um dos modos de predição de movimento mc_mode1 à mc_mode4 que é realizado pela unidade de predição;A Fig. 8 é uma vista para explicar um modo de salto;A Fig. 9 é uma vista para explicar um método de codificação de entropia que uma unidade de codificação de comprimento variável usa;A Fig. 10 é um diagrama em bloco mostrando a estrutura interna da unidade de codificação de comprimento variável mostrado na Fig. 2;A Fig. 11 é um fluxograma mostrando uma operação da unidade de codificação de comprimento variável mostrada na Fig. 2; A Fig. 12 é um desenho explicativo mostrando o conceito por trás de um modelo de contexto (ctx);A Fig. 13 é um desenho explicativo mostrando um exemplo de um modelo de contexto (ctx) relacionado a um vetor de movimento;A Fig. 14 é uma vista explicando a diferença na correlação em um modo de predição de movimento, e Figs. 14(a) e 14(b) mostram dois estados do modo de predição de movimento que são selecionados para blocos básicos Ba e Bb, respectivamente;A Fig. 15 é uma vista mostrando um resultado de transformação em binário do modo de predição de movimento que é realizado por uma unidade de transformação em binário mostrada na Fig. 10;A Fig. 16A é uma vista explicando a transformação em binário do modo de predição de movimento realizada pela unidade de transformação em binário mostrada na Fig. 10, e mostra um método de selecionar um modelo de contexto para bin 0;A Fig. 16B é uma vista explicando a transformação em binário do modo de predição de movimento realizada pela unidade de transformação em binário mostrado na Fig. 10, e mostra um método de selecionar um modelo de contexto para bin 1;A Fig. 16C é uma vista explicando a transformação em binário do modo de predição de movimento realizada pela unidade de transformação em binário mostrado na Fig. 10, e mostra um método de selecionar um modelo de contexto para bin 2;A Fig. 16D é uma vista explicando a transformação em binário do modo de predição de movimento realizada pela unidade de transformação em binário mostrado na Fig. 10, e mostra um método de selecionar um modelo de contexto para bin 4;A Fig. 16E é uma vista explicando a transformação em binário do modo de predição de movimento realizada pela unidade de transformação em binário mostrado na Fig. 10, e mostra um método de selecionar um modelo de contexto para bin 5;A Fig. 17 é um desenho explicativo mostrando o arranjo de dados de um fluxo de bit;A Fig. 18 é um diagrama em bloco mostrando a estrutura de um dispositivo de decodificação de imagem de acordo com a Modalidade 1;A Fig. 19 é um diagrama em bloco mostrando a estrutura interna de uma unidade de decodificação de comprimento variável mostrada na Fig. 18;A Fig. 20 é um fluxograma mostrando a operação da unidade de decodificação de comprimento variável mostrada na Fig. 18;A Fig. 21 é um diagrama em bloco mostrando a estrutura de um dispositivo de codificação divulgado pela referência não patentária 1; eA Fig. 22 é uma vista mostrando a aparência de formas divididas de uma região de alocação de vetor de movimento no momento de efetuar uma predição compensado de movimento para cada bloco macro no dispositivo de codificação divulgado pela referência não patentária 1. Modalidades da Invenção Modalidade 1.
[0016] Daqui em diante,aquelas modalidades preferenciais da presente invenção serão explicadas em detalhes com referência aos desenhos.
[0017] Nesta modalidade, um dispositivo de codificação de imagem que efetua compressão de um sinal de vídeo digital tendo um formato de 4:4:4 entrado nele e que é adaptado para o estado de um sinal de cada componente de cor para efetuar um processo de compensação de predição de movimento, e um dispositivo de decodificação de imagem que efetua extensão de um sinal de vídeo digital tendo um formato de 4:4:4 e que é adaptado para o estado de um sinal de cada componente de cor para efetuar um processo de compensação de predição de movimento será descrito.
[0018] A Fig. 1 mostra o formato de 4:4:4 que um dispositivo de codificação de imagem e um dispositivo de decodificação de imagem de acordo com a Modalidade 1 usa como o formato de uma entrada. O formato de 4:4:4 denota um formato no qual, conforme mostrado na Fig. 1(a), os números de elementos mínimo de imagem de três componentes do sinal C0, C1, e C2 que constroem uma imagem em movimento colorida são os mesmos que uns outros. O espaço de cor dos três componentes de sinal pode ser RGB ou XYZ, ou pode ser brilho e diferença de cor (YUV, YCbCr, ou YPbPr). Ao contrário com o formato de 4:4:4, um formato de 4:2:0 conforme mostrado na Fig. 1(b) denota um formato no qual o espaço de cor é YUV, YCbCr, ou YPbPr, e cada um dos elementos do sinal de diferença de cor (e.g. Cb e Cr no caso de YCbCr) tem pixels em cada uma de uma direção horizontal W e uma direção vertical H cujo número é metade daquele do brilho Y em cada uma de uma direção horizontal e uma direção vertical.
[0019] Um dispositivo de codificação de imagem e um dispositivo de decodificação de imagem serão explicados daqui em diante especialmente limitando a um exemplo de usar um método de efetuar processos assumindo que o espaço de cor do formato de 4:4:4 é YUV, YCbCr, ou YPbPr, e cada componente de cor é equivalente a um componente de brilho. Contudo, não é necessário dizer que aquelas operações que serão explicadas daqui em diante podem ser aplicadas diretamente ao sinal de brilho mesmo quando um dispositivo de codificação de imagem e um dispositivo de decodificação de imagem lida com um sinal de vídeo tendo o formato de 4:2:0.
1. Dispositivo de codificação de imagem
[0020] A Fig. 2 é um diagrama em bloco mostrando a estrutura do dispositivo de codificação de imagem de acordo com a Modalidade 1. O dispositivo de codificação de imagem mostrado na Fig. 2 é construído em tal uma maneira quanto à dividir cada quadro de vídeo entrado tendo o formato de 4:4:4 em blocos cada um tendo um tamanho predeterminado, i.e. blocos cada um tendo Mmax x Mmax pixels (cada bloco é referido por um “bloco de referência” daqui em diante), e efetuar uma predição de movimento em cada um dos blocos de referência para codificar por compressão um sinal de erro de predição.
[0021] Primeiro, um sinal de vídeo entrado 1 que é o alvo a ser codificado é dividido em blocos de referência por uma unidade de divisão de bloco 2, e esses blocos são entrados para uma unidade de predição 4 como um sinal codificado 3. Cada bloco de referência criado pela unidade de divisão de bloco 2 é mostrado na Fig. 3. Conforme mostrado na Fig. 3, cada bloco de referência é construído como bloco de dados de referência que é uma unidade na qual blocos retangulares consistindo de Mmax x Mmax pixels são coletados. Embora mencionado mais tarde em detalhe, o tamanho do bloco de referência Mmax é determinado e codificado em um nível de dados de camada superior, tal como um quadro, uma sequência, ou um GOP (Grupo de Imagens). O tamanho do bloco de referência Mmax pode ser mudado dentro de cada quadro. Neste caso, o tamanho do bloco de referência Mmax é especificado para cada fatia ou o similar no qual uma pluralidade de blocos macros é coletada.
[0022] Cada bloco de dados de referência é ainda dividido em um ou mais “blocos de unidade de predição de movimento” que são Li x Mi blocos de pixel (i: identificador de componente de cor), e a predição de movimento e a codificação são efetuados definindo cada bloco de unidade de predição de movimento como uma base. Um padrão de blocos de unidade de predição de movimento mostrado na Fig. 3(a) tem L0 = Mmax / 2 e M0 = Mmax / 2, e um padrão de blocos de unidade de predição de movimento mostrado na Fig. 3(b) tem L0 = Mmax / 2 e M0 = Mmax. Em ambas das Figs. 3(a) e 3(b), L1 = M1 = L2 = M2 = Mmax. Na seguinte explicação, é assumido que os blocos de referência de cada componente de cor tendo o formato de 4:4:4 são os mesmos no tamanho entre os três componentes de cor C0, C1, e C2, e, quando o tamanho do bloco de referência Mmax é mudado, o tamanho do bloco de referência é mudado para um tamanho idêntico para todos os três componentes de cor. Em adição, cada um dentre os tamanhos Li e Mi de blocos de unidade de predição de movimento pode ser determinado passivelmente de selecionar para cada um dos componentes de cor C0, C1, e C2, e pode ser mudado em unidades de uma sequência, um GOP, um quadro, um bloco de referência, ou o similar. Utilizando-se esta estrutura, os tamanhos de bloco de unidade de predição de movimento Li e Mi podem ser determinados com flexibilidade de acordo com uma diferença nas propriedades do sinal de cada componente de cor sem ter de mudar o tamanho do bloco de referência Mmax. Eficiente implementação em consideração do paralelismo, e sequência de codificação, e processamento de decodificação realizados em unidades de um bloco de referência podem ser estabilizados.
[0023] A unidade de predição 4 realiza uma predição compensado de movimento do sinal de imagem de cada componente de cor em cada bloco de referência para adquirir um sinal de erro de predição (sinal de erro de predição de movimento) 5. Porque a operação da unidade de predição 4 é um recurso do dispositivo de codificação de imagem de acordo com esta modalidade 1, a operação da unidade de predição será mencionada mais tarde em detalhe. Após efetuar um processo de transformação, tal como um processo de DCT, sobre o sinal de erro de predição 5 para remover uma correlação de sinal a partir deste sinal de erro de predição, a unidade de compressão 6 faz a quantização do sinal de erro de predição para adquirir dados de erro de predição comprimidos 7. Neste momento, a unidade de compressão 6 efetua transformada ortogonal e quantização, tal como DCT, sobre o sinal de erro de predição 5, e emite os dados de erro de predição comprimidos 7 para uma unidade de codificação de comprimento variável (unidade de codificação) 8 e uma unidade de decodificação local 10.
[0024] A unidade de codificação de comprimento variável 8 codifica por entropia os dados de erro de predição comprimidos 7, e emite os dados de erro de predição comprimidos codificados por entropia como um fluxo de bit 9. A unidade de decodificação local 10 adquire um sinal de erro de predição decodificado 11 a partir dos dados de erro de predição comprimidos 7. Este sinal de erro de predição decodificado 11 é adicionado a um sinal de predição (imagem de predição) 12 que é usado para a criação do sinal de erro de predição 5 por uma unidade de adicionar, tal que um sinal decodificado 13 é criado e é entrado para um filtro de laço 14. Parâmetros 17 para criação de sinal de predição, que são determinados por uma unidade de predição 4 de modo a adquirir o sinal de predição 12, são enviados para a unidade de codificação de comprimento variável 8, e são emitidos como o fluxo de bit 9. As descrições dos parâmetros 17 para criação de sinal de predição serão explicados em maior detalhe daqui em diante junto com uma explicação da unidade de predição 4. Ainda mais, porque um método de codificar os parâmetros 17 para criação de sinal de predição que a unidade de codificação de comprimento variável 8 usa é um recurso desta modalidade 1, o método de codificação será explicado mais tarde em detalhe.
[0025] O filtro de laço 14 efetua um processo de filtragem de rejeição de distorção de bloco no sinal decodificado 13 no qual uma distorção de bloco ocorrendo como um resultado de quantização de coeficiente de transformada pela unidade de compressão 6 é obtida usando ambos os parâmetros 17 para criação de sinal de predição e parâmetros de quantização 19. O sinal decodificado 13 é armazenado em uma memória 16 como um sinal de imagem de referência 15 para criar um subsequente sinal de predição 12 após o sinal decodificado é submetido a um processo de remover ruído de codificação pelo filtro de laço 14.
[0026] Nos métodos de codificação de vídeo revelados nas referências não patentárias 1 e 2, quando cada bloco de referência é definido como um bloco macro, um método de codificar cada quadro enquanto selecionando codificar intra-quadro ou codificar predição de inter-quadro para cada bloco macro é tipicamente usado. Isto é porque quando a predição de movimento de inter-quadro não é suficiente, o uso de uma correlação entre quadros pode ainda melhorar a eficiência da codificação. Daqui em diante, no dispositivo de codificação de imagem de acordo com esta modalidade 1, embora qualquer descrição sobre a codificação de intra-quadro e o uso de forma seletivo da codificação de intra-quadro não é expressamente colocada nesta especificação quando explicando o ponto da presente invenção, um dispositivo de codificação de imagem pode ser construído em tal uma maneira a fim de ser capaz de usar de forma seletiva a codificação de intra-quadro para cada bloco de referência, exceto onde especificamente notado. No dispositivo de codificação de imagem de acordo com esta modalidade 1, embora cada bloco de referência possa ser definido como um bloco macro, o termo bloco de referência será usado daqui em diante para explicação de uma predição de movimento.
[0027] Daqui em diante, a operação da unidade de predição 4 que é um recurso da referida modalidade 1 será explicado em detalhe. A unidade de predição 4 de acordo com esta modalidade 1 tem os seguintes três recursos.(1) Adaptação do tamanho do bloco de referência e do tamanho do bloco de unidade de predição de movimento em conjunto com adaptação da forma de cada região dividida usada para predição de movimento;(2) Determinação de um modo de predição de movimento e de um vetor de movimento de acordo com as propriedades de cada componente de cor;(3) Seleção de modo de salto adaptativo com base no tamanho do bloco de referência e com base no tamanho do bloco de unidade de predição de movimento.
[0028] Como para (1) mencionado acima, a unidade de predição 4 divide cada bloco de referência em um ou mais blocos de unidade de predição de movimento cada um tendo Li x Mi pixels de acordo com as propriedades do sinal de cada componente de cor, e ainda divide cada bloco de unidade de predição de movimento em uma pluralidade de formas cada uma das quais consiste de uma combinação de um ou mais blocos cada um tendo li x mi pixels. A unidade de predição 4 então efetua uma predição alocando um vetor de movimento específico para cada região dividida, seleciona uma pluralidade de formas que proporciona a eficiência mais predição como o modo de predição de movimento, e então efetua uma predição de movimento em cada região dividida usando o vetor de movimento adquirido como um resultado da seleção para adquirir um sinal de erro de predição 5. Cada uma das formas divididas em cada bloco de unidade de predição de movimento pode ser construída de uma combinação de um ou mais “blocos básicos” cada um dos quais consiste de li x mi pixels. No dispositivo de codificação de imagem de acordo com tal modalidade 1, as seguintes restrições: “mi = Mi/2” e “li = Li/2” são fornecidos entre Mi e mi e entre Li e li, respectivamente. As formas divididas cada uma consistindo de um ou mais blocos básicos que são determinados de acordo com esses requisitos são mostrados na Fig. 4. Fig. 4 é um desenho explicativo mostrando exemplos das formas no qual a unidade de predição 4 divide cada bloco de unidade de predição de movimento em unidades cada uma das quais consiste de um ou mais blocos básicos. Daqui em diante, no dispositivo de codificação de imagem desta modalidade 1, é assumido que os padrões (padrões de divisão) mc_mode0 à mc_mode7 de formas divididas mostradas na Fig. 4 são comuns entre os três componentes de cor. Como uma alternativa, os padrões de divisão mc_mode0 à mc_mode7 podem ser determinados independentemente para cada um dos três componentes de cor. Daqui em diante, esses padrões de divisão mc_mode0 à mc_mode7 são referidos como “modos de predição de movimento”.
[0029] Nos métodos de codificação de vídeo revelados nas referências não patentárias 1 e 2, a forma de cada região de aplicação de predição de movimento é limitado a um retângulo, e tal uma divisão diagonal conforme mostrado na Fig. 4 de cada bloco de referência nas regiões incluindo uma região outra do que uma região retangular não pode ser usada. Em contraste com isto, de acordo com esta modalidade 1, porque a forma de cada região dividida, como mostrada na Fig. 4, para a qual uma predição de movimento é aplicada, é diversificada, quando um movimento complicado, tal como o esboço de um objeto em movimento, é incluído em um bloco de referência, uma predição de movimento pode ser realizada com um menor número de vetores de movimento do que aquele empregado em um caso de uma divisão retangular.
[0030] Além do mais, ‘S. Kondo e H. Sasai’, “A Motion Compensation Technique using Sliced Blocks and its Application to Hybrid Video Coding”, VCIP 2005, July 2005” divulga um método de diversificar as formas das regiões nas quais um bloco macro convencional é dividido, e para cada uma das quais uma predição de movimento é aplicado. Nesta referência, as formas divididas são expressas por cada posição de interseção entre um segmento de linha usado para a divisão do bloco macro, e uma fronteira do bloco. Contudo, porque este método aumenta o número de padrões de divisão em cada bloco de referência enquanto fixando o número de M elementos mínimo de imagem, os seguintes problemas surgem.Problema 1:
[0031] A quantidade de código para descrever os padrões de divisão de cada bloco de referência aumenta. Quando um arbitrário mi encontrando Mmax mod mi = 0 é permitido, o número de padrões de divisão em cada bloco de referência aumenta e se torna necessário codificar informação para especificar cada um dos padrões de divisão como informação geral. Porque a probabilidade que cada determinado padrão de divisão específico ocorre se dispersa conforme o número de padrões de divisão aumenta, a codificação por entropia dos padrões de divisão se torna ineficiente e se torna uma sobrecarga como uma quantidade de código, e a capacidade de codificação total atinge o seu limite.Problema 2:
[0032] Como o número de padrões de divisão aumenta, a quantidade de operação aritmética requerida para selecionar uma divisão ótima no momento da codificação aumenta. Porque a predição de movimento é um processo de carga pesado que ocupa uma grande porcentagem da carga de processamento de codificação, o dispositivo de codificação de imagem convencional não tem outra escolha senão ser concebido em tal uma maneira a fim de verificar e usar somente um padrão de divisão específico dentre a pluralidade de padrões de divisão se o dispositivo de codificação de imagem convencional usa um algoritmo que aumenta o número de padrões de divisão cegamente. Por conseguinte, há um caso no qual o dispositivo de codificação de imagem convencional não pode fazer completo uso da capacidade original que o algoritmo tem.
[0033] Em contraste com isto, a abordagem mostrada na Fig. 4 do dispositivo de codificação de imagem desta modalidade 1 resolve os problemas mencionados acima usando os seguintes três métodos: o primeiro método (1) de possibilitar uma mudança do valor de Mmax em um nível superior, tal como um quadro, de acordo com os requisitos na codificação, e a resolução e propriedades do sinal de vídeo; o segundo método (2) de possibilitar uma divisão de cada Mmax x Mmax de bloco de referência em um ou mais blocos de unidade de predição de movimento de Li x Mi pixels de acordo com as características de cada componente de cor Ci; e o terceiro método (3) de assegura variações de divisão enquanto limitando os requisitos na divisão de cada blocos de unidade de predição de movimento em blocos básicos para uma divisão tendo formas divididas que satisfazem as seguintes restrições: “mi = Mi / 2” e “li = Li / 2”. O valor do tamanho Mmax dos blocos básicos não é mudado localmente dentro de cada quadro ou cada fatia, e pode ser mudado somente em um nível de estrutura de dados de maior ordem, tal como um nível de quadro ou uma sequência de quadro (uma sequência ou um GOP). Este mecanismo permite adaptação para uma diferença no significado do padrão de sinal de imagem incluído em cada bloco de referência. Por exemplo, em um vídeo tendo uma pequena resolução (Matriz de Vídeos Gráficos: VGA, ou o similar) e um vídeo tendo uma grande resolução (HDTV ou o similar), seus padrões de sinal em cada bloco de Mmax x Mmax pixels tendo o mesmo tamanho expressa diferentes significados. Quando prognosticando um objeto idêntico a ser filmado, enquanto um padrão de sinal próximo à estrutura do objeto a ser filmado é capturado em um vídeo tendo uma pequena resolução, um padrão de sinal de uma porção do objeto local adicional a ser filmado é simplesmente capturado em um vídeo tendo uma grande resolução mesmo se o mesmo tamanho do bloco como aquele no caso do vídeo tendo uma pequena resolução é usada. Por conseguinte, quando o tamanho do bloco de referência não muda dependendo da resolução, o padrão de sinal dentro de cada bloco de referência tem um maior componente de ruído conforme a resolução aumenta, e, portanto, se torna impossível melhorar a habilidade de predição de movimento conforme uma tecnologia de coincidência padrão.
[0034] Por conseguinte, possibilitando uma mudança do valor do tamanho do bloco de referência Mmax somente em um nível de estrutura de dados de alta ordem, enquanto a quantidade de código requerida para a sinalização do valor do tamanho do bloco de referência Mmax pode ser reduzido, o padrão de sinal incluído em cada bloco de referência pode ser otimizado de acordo com as condições, tal como uma mudança de resolução e cena do vídeo, e mudanças de atividade de uma tela inteira a partir do ponto de vista da predição de movimento. Em adição a este mecanismo, possibilitando uma mudança do padrão de divisão dentro de cada bloco de unidade de predição de movimento para cada componente de cor, conforme mostrado na Fig. 3, a unidade a ser processada para a predição de movimento pode ser otimizado de acordo com as características de sinal de cada componente de cor. Em adição, fornecendo flexibilidade restrita dos padrões de divisão para cada bloco de unidade de predição de movimento, conforme mostrado na Fig. 4, enquanto a quantidade de código requerida para expressar os padrões de divisão dentro de cada bloco de unidade de predição de movimento é reduzida, a eficiência total da predição de movimento pode ser melhorada. Ainda mais, realizando o processo de determinar o valor do tamanho do bloco de referência Mmax em um nível de quadro com eficiência, as variações de padrão de divisão que devem ser verificadas dentro de cada bloco de referência depois disso podem ser reduzidas em comparação com as tecnologias convencionais, e a carga no processo de codificação pode ser reduzida.
[0035] Conforme o método de determinar o valor do tamanho do bloco de referência Mmax, por exemplo, há métodos como a seguir.
[0036] O primeiro método (1) de determinar o valor do tamanho do bloco de referência Mmax de acordo com a resolução do vídeo a ser codificado. No caso do mesmo valor Mmax, um vídeo tendo uma grande resolução representa que um padrão de sinal de imagem em cada bloco de referência tem um componente de ruído mais significante, e se torna difícil para um vetor de movimento capturar o padrão de sinal de imagem. Em tal um caso, o valor Mmax é aumentado para permitir a um vetor de movimento capturar o padrão de sinal de imagem.
[0037] O segundo método (2) de assumir que se a diferença entre quadros é ou não grande é uma atividade, e, quando a atividade é grande, efetuar a predição de movimento com um pequeno valor Mmax, ao passo que quando à atividade é pequena, efetuar a predição de movimento com um grande valor Mmax. Ainda mais, o controle de tamanho neste momento é determinado de acordo com a taxa de quadro do vídeo a ser codificado. Porque conforme a taxa de quadro aumenta, uma correlação de inter-quadro se torna grande, o intervalo dinâmico do próprio vetor de movimento se torna pequeno e então a quantidade de código se torna pequeno, um método de configurar o valor Mmax para um valor grande em tal uma maneira que este valor não se torna excessivo mesmo se a atividade é um pouco pequena para tornar possível prognosticar até um movimento fino, pode ser considerado, por exemplo.
[0038] O terceiro método (3) de combinar os métodos (1) e (2) ponderando esses métodos para determinar o valor do tamanho do bloco de referência Mmax.
[0039] Após o valor do tamanho do bloco de referência Mmax ser determinado, os tamanhos Li e Mi de cada bloco de unidade de predição de movimento para cada componente de cor são determinados. Por exemplo, no caso com o qual o sinal de vídeo entrado 1 é definido no espaço de cor de YUV (ou YCbCr ou o similar), o componente U / V que é um sinal de crominância tem uma banda de sinal estreita comparada com o componente Y do sinal de brilho. Por conseguinte, uma variância dentro dos blocos se torna pequena comparada com aquela do brilho. Um exemplo de um critério de determinação através do qual os tamanhos Li e Mi do componente U / V em tal uma maneira que eles são maiores do que os tamanhos Li e Mi do componente Y do sinal de brilho nas bases do fato que uma variância dentro dos blocos se torna pequena comparada com aquela do brilho pode ser considerado (referir-se à Fig. 3).
[0040] Os valores dos tamanhos de bloco Mmax, Li, e Mi adquiridos como o resultado de ter efetuado essas determinações são notificadas para a unidade de divisão de bloco 2, a unidade de predição 4, e a unidade de codificação de comprimento variável 8 como informação de tamanho do bloco de referência 18. Simplesmente configurando Li e Mi como valores deriváveis com relação à Mmax através de operações aritméticas simples, conforme mostrado na Fig. 3, o que se torna necessário é apenas codificar os identificadores de expressões de computação, ao invés de codificar Li e Mi como valores independentes. Por conseguinte, a quantidade de código exigida para o tamanho do bloco de informação de referência 18 pode ser reduzida.
[0041] Embora não ilustrado particularmente na Fig. 2, dispositivo de codificação de imagem pode ser construído em tal uma maneira como para incluir um tamanho da unidade de determinação de bloco de referência para determinar os valores de Mmax, Li, e Mi, e notificar esses valores para cada unidade, e determinar a informação de tamanho do bloco de referência 18.
[0042] A unidade de predição 4 efetua um processo de detecção de movimento usando os padrões de divisão mostrados nas Figs. 3 e 4 de acordo com os tamanhos de bloco de unidade de predição de movimento Li e Mi que são derivados a partir da informação de tamanho do bloco de referência 18. Fig. 5 é um fluxograma mostrando uma operação de uma unidade de predição 4. A unidade de predição 4 realiza uma predição de movimento do componente Ci do quadro em unidades de um bloco de unidade de predição de movimento tendo Li x Mi pixels. Fundamentalmente, neste processo, a unidade de predição detecta um vetor de movimento ótimo em cada região dividida dentro de um intervalo de pesquisa de movimento especificado para cada um dos padrões de divisão mc_mode0 à mc_mode7 mostrado na Fig. 4, e finalmente determina que um dos padrões de divisão mc_mode0 à mc_mode7 deve ser usado para o bloco de unidade de predição de movimento em questão para fornecer a mais alta eficiência de predição.
[0043] A eficiência de predição é definida pelo seguinte custo J que é derivado de ambos a total quantidade de código R de vetores de movimento dentro do bloco de unidade de predição de movimento, e uma quantidade D de erro de predição entre o sinal de predição 12, que é criado a partir de uma imagem de referência armazenada na memória 16 através de uma aplicação dos vetores de movimento mencionados acima, e do sinal de vídeo entrado 1. A unidade de predição 4 é construído em tal uma maneira a fim de emitir o modo de predição de movimento e o vetor de movimento que minimiza este custo J.J = D + XR (X: constante) (1)
Figure img0001
[0044] Por conseguinte, a unidade de predição 4 primeiro calcula o custo Jk para cada modo de predição de movimento mc_modek (etapa ST1). Com referência à Fig. 6, um método de calcular o custo J será explicado considerando o caso de mc_mode5 como um exemplo. Neste momento, o bloco de unidade de predição de movimento que é um alvo a ser prognosticado no quadro F(t) consiste de duas regiões divididas B0 e B1. Ainda mais, é assumido que duas imagens de referência i F’(t-1) e F’(t-2) que já foram codificados e decodificados localmente são armazenados na memória 16, e a unidade de predição pode realizar uma predição de movimento usando as duas imagens de referência F’(t-1) e F’(t-2) para as regiões divididas B0 e B1. No exemplo da Fig. 6, a unidade de predição detecta um vetor de movimento MVt-2(B0) usando a imagem de referência F’(t-2) para a região dividida B0, e também detecta um vetor de movimento MVt-1(B1) usando uma imagem de referência F’(t-1) para a região dividida B1. Quando cada região dividida é expressa como B, o valor de pixel na posição x = (i, j) na tela do n-ésimo quadro é expresso como Sn(x), e o vetor de movimento é expresso como v, a quantidade D de erro de predição da região dividida B pode ser calculada usando a soma de diferenças absolutas (SAD) de acordo com uma equação (2) mostrada abaixo.D = ∑IS,(x) - Sn_,(x + v)l (2)xe B
Figure img0002
[0045] A partir das referidas quantidades D0 e D1 de erro de predição correspondendo às regiões divididas B0 e B1, cada uma da qual é adquirida como o resultado do cálculo utilizando-se a equação (2) mencionada acima, a quantidade D de erro de predição é determinado como D = D0 + D1.
[0046] Por outro lado, quanto à uma total quantidade de código R, a unidade de predição usa vetores estimados PMV (B0) e PMV (B1) para adquirir diferenças de vetor de predição de movimento MVD(B0) e MVD(B1) de acordo com uma equação (3) mostrada abaixo, e então realiza conversão de quantidade de código desses valores para adquirir quantidades de código R0 e R1 e determina a total quantidade de código R = R0 + R1.MVD(B0) = MVt-2(B0) - PMV(B0) (3)MVD(B1) = MVt-1(B1) - PMV(B1)
Figure img0003
[0047] Como um resultado, o custo J é determinado. A unidade de predição 4 calcula o custo J de cada um de todos os vetores de movimento que são alvos a serem examinados no intervalo de pesquisa, e determina a solução que fornece o menor custo J que o padrão de divisão de mc_mode5. Um exemplo de uma determinação dos vetores estimados PMV em mc_mode1 à mc_mode4 é mostrado na Fig. 7. Na Fig. 7, cada seta significa um vetor de movimento MV em uma região adjacente ou em volta que é usado para a derivação do vetor estimado, e uma mediana de três vetores de movimento MV envolvidos por o é definido como o vetor estimado PMV da região dividida indicado pela mediana.
[0048] Quando k = 7, i.e., mc_mode7, é selecionado para cada bloco de Li x Mi pixels, cada um dos modos de predição de movimento correspondendo aos modos de mc_mode0 à mc_mode7 é selecionado para cada um dos blocos de li x mi pixels. Os modos neste momento são nomeados como sub_mc_mode0 à sub_mc_mode7, respectivamente, por conveniência. Um processo de determinar sub_mc_mode para cada um dos blocos de li x mi pixels é realizado de acordo com o fluxo de processo da Fig. 5, e o custo J7 em mc_mode7 no correspondente bloco de Li x Mi pixels é a soma total de custos adquiridos usando sub_mc_mode determinado para cada um dos blocos de li x mi pixels.
[0049] A seguir, a unidade de predição 4 verifica se o custo Jk no mc_modek que a unidade de predição determinou nesta maneira é ou não menor do que os custos em mc_modek-1, mc_modek-2, e... que verificou até agora (etapa ST2), e, quando o custo Jk em mc_modek é menor do que o custo in mc_modek que foi verificado até agora (se “Sim” na etapa ST2), mantém mc_modek como o modo de predição de movimento que é assumido ser ótimo até aquele momento, e também mantém o vetor de movimento e o sinal de erro de predição determinado naquele momento (etapa ST3). Após terminar verificação de todos os modos de predição de movimento (se “Sim” na etapa ST4), a unidade de predição 4 emite o modo de predição de movimento, o vetor de movimento, e o sinal de erro de predição 5 que uma unidade de predição tem sido mantida até agora como uma solução final (etapa ST5). Por outro lado, (se “No” na etapa ST2 ou se “No” na etapa ST4), a unidade de predição, na etapa ST6, incrementa uma variável k, e então retorna para a etapa ST1 e verifica o próximo modo de predição de movimento.
[0050] Em cada um de um modo de predição de movimento correspondendo à mc_mode0 e modo de predição de movimento correspondendo à sub_mc_mode0, um caso no qual o vetor de movimento coincide com o vetor estimado (a diferença de predição a ser codificada é zero) e todos os coeficientes do sinal de erro de predição transformado e quantizado são zero são definidos como um modo de salto especial. Daqui em diante, o modo de salto correspondendo à mc_mode0 é chamado modo de mc_ skip (um primeiro modo de salto), e o modo de salto correspondendo à sub_mc_mode0 é chamado modo de sub_mc_ skip (um segundo modo de salto). Fig. 8 é uma vista para explicar os modos de skip, e Fig. 8(a) mostra um exemplo no qual cada retângulo envolvido como uma linha sólida denota um bloco de unidade de predição de movimento, e seu vetor de movimento é denotado por MV. Neste momento, a unidade de predição calcula um vetor estimado PMV num bloco de unidade de predição de movimento usando-se, por exemplo, os vetores de movimento nos blocos de unidade de predição de movimento adjacentes e em torno, conforme mostrado na Fig. 8. Porque a codificação do vetor de movimento é feita codificando valor de diferença de predição entre o vetor de movimento e o vetor estimado, este bloco de unidade de predição de movimento é assumido ser no modo de mc_skip no caso que a diferença de predição é zero (MV = = PMV) e o sinal de erro de predição 5 não tem coeficientes não zero a serem codificados. Ainda mais, Fig. 8(b) é uma exibição ampliada de uma parte da Fig. 8(a) com o bloco básico eclodido mostrado na Fig. 8(a) sendo centrado na figura ampliada, e um quadro de linha espessa mostra uma região de bloco de unidade de predição de movimento r. Neste caso, sub_mc_mode do bloco básico alvo é sub_mc_mode0. Quando o vetor de movimento neste momento é expresso como MVs e o vetor estimado neste momento é expresso como PMVs, o modo de predição de movimento que é aplicado a este bloco básico é assumido ser modo de sub_mc_ skip no caso que a diferença de predição é zero (MVs = = PMVs) e o sinal de erro de predição 5 não tem coeficiente não zero a serem codificados, como no caso de uma determinação de mc_skip.
[0051] Nos métodos de codificação convencionais como divulgados, por exemplo, nas referências não patentárias 1 e 2, mc_mode0, i.e. o modo de salto correspondendo somente ao maior bloco de unidade de predição de movimento (nas referências não patentárias 1 e 2, um bloco de referência conforme mostrado nesta modalidade 1 tem o mesmo tamanho que um bloco de unidade de predição de movimento conforme mostrado nesta modalidade 1, e o maior bloco de unidade de predição de movimento corresponde a um bloco macro) é fornecido tipicamente, e, no modo de salto, não é designado para codificar qualquer informação sobre blocos macros por completo. Ao contrário, esta modalidade 1 é caracterizada no fato que este modo de salto é ainda definido também na camada hierárquica de sub_mc_mode. Nos métodos de codificação convencionais conforme divulgados, por exemplo, nas referências não patentárias 1 e 2, porque um sinal de vídeo que é tratado tem uma taxa de amostragem relativamente baixa que é da ordem de até a resolução de HDTV, um bloco de unidade de predição de movimento tendo uma menor do que um bloco macro simplesmente significa que o movimento se torna complicado, e é, por conseguinte, difícil de realizar a codificação com eficiência mesmo se o modo de salto é levado em consideração. Por outro lado, quando codificar um sinal de vídeo tendo uma alta taxa de amostragem, tal como um vídeo de ultra alta definição tendo uma taxa de amostragem excedendo aquela da HDTV, ou um sinal de vídeo tendo o formato de 4:4:4, simplesmente dispondo um modo de salto em consideração de somente do tamanho de cada bloco de unidade de predição de movimento que consiste de um bloco de Li x Mi pixels não pode utilizar os requisitos sobre skip eficazmente quando escolhendo um bloco básico (ou uma região de alocação de vetor de movimento que é determinado por uma combinação de blocos básicos) menor do que cada bloco de unidade de predição de movimento, e por conseguinte um vetor de movimento tendo um valor zero e valores de coeficientes zero são codificados explicitamente todo o tempo e a eficiência de codificação é ruim. Por conseguinte, um dispositivo de codificação de imagem de acordo com esta modalidade 1 é construído em tal uma maneira a fim de, quando não somente cada bloco de unidade de predição de movimento que consiste de um bloco de Li x Mi pixels que é uma unidade para alocação de mc_mode tem um tamanho maior do que um tamanho constante, mas também cada bloco básico que consiste de um bloco de li x mi pixels que é uma unidade para alocação de sub_mc_mode tem um tamanho maior do que um tamanho constante (li > lt, mi > mt), ser capaz de selecionar e usar um modo de sub_mc_ skip para cada bloco básico. Os limites lt e mt podem ser determinados de modo único, a partir dos valores de Mi e Li (e.g. lt = Li / 2 e mt = Mi / 2). Como uma alternativa, os limites podem ser transmitidos com eles sendo multiplexados em um fluxo de bit em um nível tal como um quadro ou uma sequência.
[0052] Através do processo mencionado acima por uma unidade de predição 4, o sinal de erro de predição 5 e os parâmetros 17 (o modo de predição de movimento e o vetor de movimento) para criação de sinal de predição são emitidos, e esses são codificados por entropia pela unidade de codificação de comprimento variável 8. Daqui em diante, um método de codificação de entropia para codificar por entropia os parâmetros 17 para criação de sinal de predição que é um recurso do dispositivo de codificação de imagem de acordo com esta modalidade 1 será descrito.
[0053] Na codificação do parâmetro 17 para criação de sinal de predição que será explicado daqui em diante, os dois tipos de parâmetros incluindo o vetor de movimento e o modo de predição de movimento são o alvo da explicação. Fig. 9 é uma vista para explicar o método de codificação de entropia que a unidade de codificação de comprimento variável 8 usa. No dispositivo de codificação de imagem de acordo com esta modalidade 1, conforme mostrado na Fig. 9, quando codificar o modo de predição de movimento m(Bx) de um bloco básico Bx que é um alvo para codificação de predição, uma unidade de codificação de comprimento variável efetua a codificação por entropia, de forma seletiva, referindo ao estado do modo de predição m(Ba) do bloco básico Ba na esquerda do bloco básico alvo no mesmo quadro F(t), o estado do modo de predição m(Bb) do bloco básico Bb bem acima do bloco básico alvo no mesmo quadro F(t), e o estado do modo de predição de movimento m(Bc) do bloco básico Bc na mesma posição que o bloco básico Bx no quadro adjacente imediatamente precedente F’(t-1).
[0054] A Fig. 10 mostra a estrutura interna da unidade de codificação de comprimento variável 8, e Fig. 11 mostra um fluxo de uma operação da unidade de codificação de comprimento variável. A unidade de codificação de comprimento variável 8 de acordo com esta modalidade 1 é compreendida de uma unidade de determinação de modelo de contexto 21 para determinar um modelo de contexto (que será mencionado mais tarde) definido para cada um dos tipos de dados incluindo o modo de predição de movimento e o vetor de movimento que são dados a serem codificados, uma unidade de transformação em binário 22 para converter múltiplos dados avaliados em dados binários de acordo com uma regra de transformação em binário determinada para cada tipo de dados a serem codificados, uma unidade de criação de probabilidade de ocorrência 23 para fornecer uma probabilidade de ocorrência de cada valor (0 / 1) de cada bin transformado em binário, uma unidade de codificação 24 para efetuar codificação aritmética de acordo com a probabilidade de ocorrência criada, e um memória de armazenamento de informação de probabilidade de ocorrência 25 para armazenar informação de probabilidade de ocorrência. Daqui em diante, uma explicação será feita limitando a entrada para a unidade de determinação de modelo de contexto 21 para o modo de predição de movimento e o vetor de movimento entre os parâmetros 17 para criação de imagem de predição.(A) Processo de Determinação de Modelo de Contexto (etapa ST11 na Fig. 11)
[0055] Um modelo de contexto modela uma relação de dependência com outra informação resultando em uma variação de uma probabilidade de ocorrência de um símbolo de fonte de informação, e se torna capaz de efetuar codificação que é adaptada de acordo com a probabilidade de ocorrência efetiva de um símbolo mudando o estado de uma probabilidade de ocorrência dependendo desta relação de dependência. Este conceito por trás do modelo de contexto ctx é mostrado na Fig. 12. Nesta figura, embora um símbolo de fonte de informação seja binário, pode ser alternativamente múltiplo avaliado. Contudo, naquela modalidade 1, somente a codificação aritmética binária é tratada.
[0056] Escolhas 0 à 2 do modelo de contexto ctx mostrado na Fig. 12 são definidos na suposição que o estado de uma probabilidade de ocorrência de um símbolo de fonte de informação usando este modelo de contexto ctx vai varia de acordo com condições. Aplicando-se esta definição para um dispositivo de codificação de imagem de acordo com a referida modalidade 1, o valor do modelo de contexto ctx é mudado de acordo com a relação de dependência entre os dados codificados em um determinado bloco de referência e os dados codificados em um outro bloco de referência adjacente ao bloco de referência.
[0057] Por exemplo, Fig. 13 mostra um exemplo de um modelo de contexto sobre um vetor de movimento que é divulgado por “D. Marpe et. al., “Video Compression Using Context-Based Adaptive Arithmetic Coding”, International Conferência Internacional sobre Processamento de Imagem 2001”. No exemplo da Fig. 13, um vetor de movimento de um bloco C é um alvo a ser codificado (precisamente, um valor de diferença de predição mvdk(C) que é prognosticado para o vetor de movimento do bloco C a partir de blocos adjacentes é codificado). Ainda mais, ctx_mvd(C, k) mostra um modelo de contexto aplicado ao vetor de movimento do bloco C. mvdk(A) mostra um vetor de diferença de predição de movimento em um bloco A, e mvdk(B) mostra um vetor de diferença de predição de movimento em um bloco B. Esses valores são usados para a definição de um valor avaliado avaliado ek(C) para mudar o modelo de contexto. O valor avaliado ek(C) mostra variações nos vetores de movimento adjacentes. Geralmente, quando essas variações são pequenas, o valor do vetor de diferença de predição de movimento mvdk(C) é pequeno, ao passo que quando o valor avaliado ek(C) é grande, o valor do vetor de diferença de predição de movimento (C) tem uma tendência de ser grande. É, por conseguinte, desejável que a probabilidade de ocorrência de símbolo a do vetor de diferença de predição de movimento mvdk(C) é adaptado de acordo com o valor avaliado ek(C). Um conjunto de variações desta probabilidade de ocorrência são modelos de contexto, e, neste caso, pode ser dito que há três tipos de variações de probabilidade de ocorrência.
[0058] Assim sendo, modelos de contexto são definidos para cada um dos dados a serem codificados antecipadamente, e são compartilhados entre um dispositivo de codificação de imagem e um dispositivo de decodificação de imagem. A unidade de determinação de modelo de contexto 21 realiza um processo de selecionar um dos modelos pré-determinados de acordo com o tipo de tais dados a serem codificados. Qual variação de probabilidade de ocorrência no modelo de contexto é selecionada corresponde a um processo de criação de probabilidade de ocorrência (C) que será mostrado abaixo.
[0059] Na Fig. 10, a unidade de codificação de comprimento variável 8 é caracterizada no fato que ela prepara dois ou mais candidatos para um modelo de contexto 26 que é para ser alocado ao modo de predição de movimento e ao vetor de movimento, e então comuta entre os dois ou mais candidatos para o modelo de contexto 26 que a unidade de codificação de comprimento variável usa de acordo com a informação de seleção de modelo de contexto 27. Conforme mostrado na Fig. 9, porque pode ser considerado que o modo de predição de movimento m(Bx) do bloco básico Bx que é o alvo para predição e codificação tem uma alta correlação com o estado de uma região de imagem que é adjacente espacialmente dentro do mesmo quadro se a correlação sobre o estado de movimento entre quadros é baixa (mais especificamente, o valor do modo de predição de movimento m(Bx) é fortemente influenciado pelas formas divididas nos modos de predição de movimento m(Ba) e m(Bb)), ambos o modo de predição de movimento m(Ba) do bloco básico Bb na esquerda do bloco básico alvo dentro do mesmo quadro e o modo de predição de movimento m(Bb) do bloco básico Ba bem acima do bloco básico alvo dentro do mesmo quadro são usados para a determinação do modelo de contexto 26. Um exemplo que constitui referências para este conceito é mostrado na Fig. 14. Fig. 14 mostra uma comparação entre dois estados dos modos de predição de movimento selecionados para os blocos básicos Ba e Bb no caso do modo de predição de movimento m(Bx) = mc_mode3. No estado mostrado na Fig. 14(a), as quebras de divisão de cada um dos blocos básicos Ba e Bb são conectados naturalmente às formas divididas no modo de predição de movimento m(Bx), respectivamente. Ao contrário, no estado mostrado na Fig. 14(b), as quebras de divisão de cada um dos blocos básicos Ba e Bb não são conectados naturalmente às formas divididas. Em geral, porque essas formas divididas em cada bloco de referência mostram a existência de uma pluralidade de diferentes regiões de movimento existente no bloco de referência, elas facilmente refletem a estrutura do vídeo. Por conseguinte, pode ser considerado que o estado mostrado na Fig. 14(a) é um “estado que acontece facilmente” mais propriamente do que o estado mostrado na Fig. 14(b). Mais especificamente, a probabilidade de ocorrência do modo de predição de movimento m(Bx) é afetada pelos estados dos modos de predição de movimento m(Ba) e m(Bb).
[0060] De forma similar, porque pode ser considerado que o modo de predição de movimento m(Bx) do bloco básico Bx tem uma alta correlação com o estado de uma região de imagem que é adjacente com relação ao tempo se a correlação sobre o estado de movimento entre quadros é alta (mais especificamente, a probabilidade que o modo de predição de movimento m(Bx) pode ter variedade dependendo das formas divididas no modo de predição de movimento m(Bc)), a unidade de codificação de comprimento variável 8 usa ambos o modo de predição de movimento m(Bc) do bloco básico Bc na mesma posição que o bloco básico Bx no quadro adjacente imediatamente precedente do modelo de contexto 26.
[0061] De forma similar, quando determinando o modelo de contexto 26 para o vetor de movimento, se a correlação sobre o estado de movimento entre quadros é baixa, a unidade de codificação de comprimento variável 8 usa ambos o vetor de movimento do bloco Ba na esquerda do bloco básico alvo dentro do mesmo quadro, e o vetor de movimento do bloco Bb bem acima do bloco básico alvo para uma determinação do modelo de contexto 26. Ao contrário, se a correlação sobre o estado de movimento entre quadros é alta, a unidade de codificação de comprimento variável 8 usa o vetor de movimento do bloco Bc na mesma posição que o bloco Bx no quadro adjacente imediatamente precedente para uma determinação do modelo de contexto 26. Como no caso de determinar o modelo de contexto para o modo de predição de movimento, a unidade de codificação de comprimento variável pode usar uma correlação entre os componentes de cor também para uma determinação do modelo de contexto 26 para o vetor de movimento.
[0062] Um dispositivo de codificação de imagem pode detectar se a correlação sobe o estado de movimento entre quadros é alta ou baixa usando um método pré-determinado, e pode explicitamente multiplexar o valor da informação de seleção de modelo de contexto 27 com um fluxo de bit 9 para transmitir este valor da informação de seleção de modelo de contexto para um dispositivo de decodificação de imagem. Ambos um dispositivo de codificação de imagem e um dispositivo de decodificação de imagem podem ser construído em tal uma maneira como para determinar o valor da informação de seleção de modelo de contexto 27 de acordo com informação detectável. Porque o sinal de vídeo é instável, a eficiência de codificação aritmética pode ser melhorada pode ser melhorada, tornando possível realizar tal controle adaptativo.(B) Processo de transformação em binário (etapa ST12 mostrado na Fig. 11)
[0063] A unidade de transformação em binário 22 forma cada um dos dados a ser codificado em uma sequência binária e determina um modelo de contexto de acordo com cada bin (posição binária) da sequência binária. A regra de transformação em binário segue uma distribuição aproximada de valores que cada um dos dados codificados pode ter, e a unidade de transformação em binário efetua conversão de cada um dos dados a ser codificado em uma sequência binária de comprimento variável. Porque na transformação em binário, dados a serem codificados que podem ser originalmente múltiplos avaliados são codificados por bin mais propriamente do que sendo codificados por aritmética bem como ele é, a transformação em binário tem o mérito de ser capaz de reduzir o número de divisões de uma linha de números de probabilidade e então simplificar a operação aritmética, e para adelgaçar o modelo de contexto, por exemplo.
[0064] Por exemplo, quando realizando a codificação com Li = Mi = 32 e li = mi = 16, a unidade de transformação em binário 22 efetua a transformação em binário do modo de predição de movimento, conforme mostrado nas Figs. 15(a) e 15(b).
[0065] Modelos de contexto conforme mostrado nas Figs. 16A à 16E são aplicados à Bin0, Bin1, Bin2, Bin4, e Bin5, respectivamente. Conforme mostrado na Fig. 16A, Bin0 tem um critério pelo qual comutar entre as probabilidades de ocorrência de acordo com se os estados do bloco de unidade de predição de movimento na posição superior (bloco A) e o bloco de unidade de predição de movimento na posição esquerda (bloco B) com relação aos dados a serem codificados (bloco C) são ou não “modo de salto”. Conforme mostrado na Fig. 16B, Bin1 tem um critério pelo qual comutar entre as probabilidades de ocorrência de acordo com se os estados do bloco de unidade de predição de movimento na posição superior (bloco A) e o bloco de unidade de predição de movimento na posição esquerda (bloco B) são ou não “se há ou não uma divisão do bloco de predição de movimento “. Conforme mostrado na Fig. 16C, Bin2 tem um critério pelo qual comutar entre as probabilidades de ocorrência de acordo com se os estados do bloco de unidade de predição de movimento na posição superior (bloco A) e o bloco de unidade de predição de movimento na posição esquerda (bloco B) são ou não “se o estado é ou não um modo de predição de movimento complicado”. Para Bin3, no modelo de contexto é definido e a probabilidade de ocorrência é fixada a uma pré-determinada probabilidade de ocorrência. Conforme mostrado na Fig. 16D, Bin4 tem um critério pelo qual comutar entre as probabilidades de ocorrência de acordo com se o estado do bloco de unidade de predição de movimento na posição esquerda (bloco B) é ou não “se a forma de divisão da região da predição de movimento é ou não uma divisão horizontal”. Conforme mostrado na Fig. 16E, Bin5 tem um critério pelo qual comutar entre as probabilidades de ocorrência de acordo com se o estado do bloco de unidade de predição de movimento na posição superior (bloco A) é ou não “se a forma de divisão da região da predição de movimento é ou não uma divisão vertical “. Determinando o modelo de contexto 26 de acordo com a forma da região de predição de movimento nesta maneira, a seleção da probabilidade de ocorrência relacionada à informação de modo de predição de movimento pode ser feita adaptativamente dependendo das propriedades do sinal de vídeo local, e da eficiência de codificação da codificação aritmética pode ser melhorada. Um dispositivo de codificação de imagem é construído em tal uma maneira a fim de, quando tomando uma decisão não usar sub_mc_skip en li = mi = 16 (o limite lt > = 16 e o limite mt > = 16), não codificar Bin0 mostrado na Fig. 15(b).(C) Processo de criação de probabilidade de ocorrência (etapa ST13 mostrado na Fig. 11)
[0066] Naqueles processos (etapas ST11 e ST12) de (A) e (B) acima mencionados, a transformação em binário de cada um dos dados múltiplos avaliados a ser codificado bem como a configuração do modelo de contexto que é aplicada a cada bin são completadas, e a preparação para a codificação é concluída. Unidade de criação de probabilidade de ocorrência 23 em seguida realiza um processo de criação para criar a informação de probabilidade de ocorrência usada para a codificação aritmética. Porque variações de uma probabilidade de ocorrência correspondendo a cada um dos valores 0 e 1 são incluídas em cada modelo de contexto, a unidade de criação de probabilidade de ocorrência realiza o processo com referência ao modelo de contexto 26 determinado na etapa ST11. Aquela unidade de criação de probabilidade de ocorrência 23 determina um valor avaliado para seleção de uma probabilidade de ocorrência, tal como um valor avaliado ek(C) mostrado na Fig. 13, e determina que variação de probabilidade de ocorrência a unidade de criação de probabilidade de ocorrência vai usar para a codificação corrente de acordo com este valor avaliado dentre as escolhas do modelo de contexto para as quais a unidade de criação de probabilidade de ocorrência se refere.
[0067] Em adição, a unidade de codificação de comprimento variável 8 de acordo com esta modalidade 1 é fornecida com uma memória de armazenamento de informação de probabilidade de ocorrência 25, e tem um mecanismo para armazenar a informação de probabilidade de ocorrência 28 que é atualizada por sua vez através do processo de codificação, as fatias da informação de probabilidade de ocorrência armazenada como o resultado da atualização correspondendo às variações do modelo de contexto usado. A unidade de criação de probabilidade de ocorrência 23 determina a informação de probabilidade de ocorrência 28 que é usada para a codificação corrente de acordo com o valor do modelo de contexto 26.(D) Processo de codificação (etapa ST14 mostrado na Fig. 11)
[0068] No processo (C) mencionado acima (etapa ST13), porque a probabilidade de ocorrência de cada um dos valores 0 e 1 na linha de número de probabilidade requerida para o processo de codificação aritmético é adquirido, a unidade de codificação 24 efetua codificação aritmética de acordo com o processo mencionado como um exemplo convencional (etapa ST14).
[0069] Ainda mais, o valor codificado efetivo (0/1) 29 é realimentado para a unidade de criação de probabilidade de ocorrência 23, em que a unidade de criação de probabilidade de ocorrência contabiliza uma tal frequência de ocorrência de cada um dos valores 0 e 1 de modo a atualizar a informação de probabilidade de ocorrência 28 usada (etapa ST15). Por exemplo, é assumido que quando processo de codificação de codificar 100 bin(s) for realizado com uso de uma determinada fatia de informação de probabilidade de ocorrência 28, as probabilidades de ocorrência de 0 e 1 em uma variação de probabilidade de ocorrência são 0,25 e 0,75, respectivamente. Neste caso, quando “1” é codificado usando a mesma variação de probabilidade de ocorrência, a frequência de ocorrência de “1” é atualizada, e as probabilidades de ocorrência de 0 e 1 varia para 0,247 e 0,752, respectivamente. Usando este mecanismo, a unidade de codificação se torna capaz de efetuar codificação eficiente que é adaptada para a probabilidade de ocorrência efetiva.
[0070] Após o processo de codificação em todo os bin(s) é concluído, um resultado de codificação aritmética 30 que a unidade de codificação 24 criou se torna uma saída a partir da unidade de codificação de comprimento variável 8, e é emitida a partir de um dispositivo de codificação de imagem como um fluxo de bit 9 (etapa ST16).2. Estrutura do fluxo de bit codificado
[0071] O sinal de vídeo entrado 1 é codificado por um dispositivo de codificação de imagem da Fig. 2 de acordo com os processos mencionados acima, e o sinal de vídeo codificado é emitido a partir de um dispositivo de codificação de imagem como um fluxo de bit 9 em unidades cada um os quais é o feixe consistindo de uma pluralidade de blocos de referência (cada unidade é referida como uma fatia daqui em diante). O arranjo de dados do fluxo de bit 9 é mostrado na Fig. 17. O fluxo de bit 9 é construído como a sequência na qual um número de dados codificados cujo número é igual ao número de blocos de referência incluídos em cada quadro são coletados em cada quadro, e os blocos de referência são individualizados em cada fatia. Um cabeçalho de nível de imagem para o qual os blocos de referência pertencendo ao mesmo quadro se referem como um parâmetro comu8m é preparado, e a informação de tamanho do bloco de referência 18 é armazenada neste cabeçalho de nível de imagem. Se o tamanho do bloco de referência Mmax é fixado por sequência em um maior nível do que o nível de imagem, a informação de tamanho do bloco de referência 18 pode ser formada para ser multiplexada em um cabeçalho de nível de sequência.
[0072] Cada fatia começa a partir de seu cabeçalho da fatia, e aqueles dados codificados de cada bloco de referência na fatia são continuamente arrumados após o cabeçalho da fatia. O exemplo da Fig. 17 mostra que os K blocos de referência são incluídos na segunda fatia. Cada dado de bloco de referência dados são compreendidos de um cabeçalho de bloco de referência e dados de erro de predição comprimidos. No cabeçalho de bloco de referência, os modos de predição de movimento mc_mode e o vetores de movimento dos blocos de unidade de prognóstico aos parâmetros 17 para criação de sinal de predição), os parâmetros de quantização 19 usados para criação dos dados de erro de predição comprimidos 7, etc. são arrumados.
[0073] Informação do tipo de modo, como o modo de predição de movimento mc_mode, indicando mc_skip ou um de mc_mode0 à mc_mode7 é primeiro codificado, e, quando o modo de predição de movimento mc_mode é mc_skip, quaisquer fatias subsequentes da informação de codificação do bloco macro não são transmitidas. Quando o modo de predição de movimento mc_mode é um de mc_mode0 à mc_mode6, as fatias de informação de vetor de movimento das regiões de alocação de vetor de movimento especificado pelo modo de predição de movimento são codificadas. Quando o modo de predição de movimento mc_mode é mc_mode7, se sub_mc_skip é ou não incluído no código de sub_mc_mode é determinado de acordo com a informação de tamanho do bloco de referência 18. Daqui em diante, é assumido que os limites usados para determinar se sub_mc_skip estão ou não incluídos no código de sub_mc_mode são definidos como lt = Li / 2 e mt = Mi / 2 a partir dos tamanhos de bloco de referência Mi e Li. Mais ainda, quando os requisitos de “li > lt e mi > mt” são satisfeitos, a codificação de sub_mc_mode incluindo sub_mc_skip é efetuado de acordo com a regra de transformação em binário mostrada na Fig. 15(b). Ao contrário, quando os requisitos de “li > lt e mi > mt” não são satisfeitas, somente a codificação de Bin0 é excluída a partir da regra de transformação em binário mostrada na Fig. 15(b). Ainda mais, a informação de seleção de modelo de contexto 27 mostrando uma orientação para selecionar um modelo de contexto na codificação aritmética do modo de predição de movimento e do vetor de movimento é incluído no cabeçalho de bloco de referência.
[0074] Embora não ilustrado, o tamanho da unidade de determinação de bloco de referência pode ser construído em tal uma maneira a fim de selecionar os tamanhos Li e Mi de cada bloco de unidade de predição de movimento que são usados dentro de cada bloco de referência para cada bloco de referência, e multiplexa os tamanhos Li e Mi do bloco de unidade de predição de movimento que são usados dentro de cada bloco de referência em cada cabeçalho de bloco de referência, em vez de multiplexar os tamanhos Li e Mi em um cabeçalho de nível de sequência ou de imagem. Como um resultado, embora um dispositivo de codificação de imagem necessite codificar os tamanhos Li e Mi de cada bloco de unidade de predição de movimento para cada bloco de referência, um dispositivo de codificação de imagem pode mudar os tamanhos de cada bloco de unidade de predição de movimento de acordo com as propriedades do sinal de imagem local, e se torna capaz de efetuar a predição de movimento com um maior grau de adaptabilidade. Informação indicando ao multiplex os tamanhos Li e Mi de cada bloco de unidade de predição de movimento em qualquer cabeçalho de cada bloco de referência ou fixamente multiplexá-los em um cabeçalho em um nível superior, tal como uma sequência, um GOP, uma imagem, ou uma fatia pode ser multiplexada, como informação de identificação, no cabeçalho em um nível superior, tal como uma sequência, um GOP, uma imagem, ou uma fatia. Como um resultado, quando a influência exercida quando da habilidade de predição de movimento é pequena mesmo se os tamanhos de cada bloco de unidade de predição de movimento são fixamente multiplexados em um nível superior de cabeçalho, um dispositivo de codificação de imagem pode reduzir o excesso requerido para codificar os tamanhos Li e Mi de cada bloco de unidade de predição de movimento para cada bloco de referência, e então efetua a codificação com eficiência.3. Dispositivo de decodificação de imagem
[0075] A Fig. 18 é um diagrama em bloco mostrando uma estrutura do dispositivo de decodificação de imagem de acordo com esta modalidade 1. Após receber o fluxo de bit 9 mostrado na Fig. 17 e então decodificar o cabeçalho de nível de sequência, a unidade de decodificação de comprimento variável (unidade de decodificação) 100 decodifica o cabeçalho de nível de imagem e também decodifica a informação mostrando o tamanho de bloco de referência. Como um resultado, a unidade de decodificação de comprimento variável reconhece o tamanho Mmax de cada bloco de referência e os tamanhos Li e Mi de cada bloco de unidade de predição de movimento que são usados para a imagem, e notifica esta informação de tamanho do bloco de referência 18 para uma unidade de decodificação de erro de predição 101 e para uma unidade de predição 102. A unidade de decodificação de comprimento variável 100 é construída em tal uma maneira a fim de , quando o fluxo de bit tem uma estrutura na qual os tamanhos de Li e Mi de cada bloco de unidade de predição de movimento pode ser multiplexado em cada cabeçalho do bloco de referência, decodificar a informação de identificação mostrando se os tamanhos Li e Mi de cada bloco de unidade de predição de movimento são multiplexados em cada cabeçalho de bloco de referência, e reconhecer os tamanhos Li e Mi de cada bloco de unidade de predição de movimento decodificando cada cabeçalho de bloco de referência de acordo com a informação de identificação.
[0076] A unidade de decodificação de comprimento variável primeiro inicia decodificação de cada um dos dados de bloco de referência a partir da decodificação do cabeçalho do bloco de referência. Neste processo, a unidade de decodificação de comprimento variável 100 decodifica a informação de seleção de modelo de contexto 27. A seguir, de acordo com a informação de seleção de modelo de contexto 27 decodificada, a unidade de decodificação de comprimento variável decodifica o modo de predição de movimento que é aplicada a cada bloco de unidade de predição de movimento para cada componente de cor. Quando decodificando o modo de predição de movimento, a unidade de decodificação de comprimento variável primeiro decodifica mc_mode para cada bloco de unidade de predição de movimento, e, quando mc_mode mostra mc_skip, determina um vetor estimado a partir de vetores de movimento adjacentes de acordo com os requisitos mostrados na Fig. 8 e aloca o vetor estimado ao vetor de movimento corrente. Quando mc_mode mostra mc_mode7, a unidade de decodificação de comprimento variável decodifica sub_mc_mode para cada bloco básico de acordo com os requisitos mostrados na Fig. 8. Neste momento, nas bases da informação de tamanho do bloco de referência 18, a unidade de decodificação de comprimento variável determina se usa ou não sub_mc_skip de acordo com o mesmo critério de determinação que aquele que um dispositivo de codificação de imagem usa, e então efetua um processo de decodificação sub_mc_mode de acordo com esta determinação. Quando usando sub_mc_skip, se sub_mc_mode = = sub_mc_skip, a unidade de decodificação de comprimento variável salto a decodificação dos dados decodificados do bloco básico em questão, e aloca um vetor estimado que a unidade de decodificação de comprimento variável determina usando o método mostrado na Fig. 8 para o vetor de movimento corrente. Quando mc_mode mostra um outro modo, a unidade de decodificação de comprimento variável decodifica o vetor de movimento em cada um do número de regiões de alocação de vetor de movimento de acordo com a informação de seleção de modelo de contexto 27, e ainda decodifica as fatias de informação sobre os parâmetros de quantização 19, os dados de erro de predição comprimidos 7, etc. por sua vez para cada bloco de referência.
[0077] Os dados de erro de predição comprimidos 7 e os parâmetros de quantização 19 são entrados para a unidade de decodificação do erro de predição 101, e são descomprimidos para um sinal de erro de predição decodificado 11. Esta unidade de decodificação de erro de predição 101 realiza um processo equivalente àquele realizado pela unidade de decodificação local 10 no dispositivo de codificação de imagem mostrado na Fig. 2.
[0078] A unidade de predição 102 cria um sinal de predição 12 de ambos os parâmetros 17 para criação de sinal de predição decodificado pela unidade de decodificação de comprimento variável 100, e um sinal de imagem de referência 15 armazenado em uma memória 103. Embora a unidade de predição 102 realiza um processo equivalente àquele realizado pela unidade de predição 4 no dispositivo de codificação de imagem, este processo não inclui qualquer operação de detecção de vetor de movimento. O modo de predição de movimento é um dos mc_mode0 à mc_mode7 mostrado na Fig. 4, e a unidade de predição 102 cria uma imagem de predição 12 usando o vetor de movimento alocado a cada bloco básico de acordo com as formas divididas.
[0079] O sinal de erro de predição decodificado 11 e o sinal de predição 12 são adicionados por uma unidade de adicionar, e são entrados para um filtro de laço 104 como um sinal decodificado 13. Este sinal decodificado 13 é armazenado na memória 103 como o sinal de imagem de referência 15 para criar um subsequente sinal de predição 12 após o sinal decodificado ser submetido a um processo de remover ruído de codificação no filtro de laço 104. Embora não ilustrado na Fig. 18, o filtro de laço 104 realiza um processo equivalente àquele realizado pelo filtro de laço 14 no dispositivo de codificação de imagem usando informação de coeficiente de filtro 20 em adição aos parâmetros 17 para criação de sinal de predição e os parâmetros de quantização 19 que são adquiridos através da decodificação pela unidade de decodificação de comprimento variável 100, para criar o sinal de imagem de referência 15. A diferença entre o filtro de laço 14 do dispositivo de codificação de imagem e i filtro de laço 104 do dispositivo de decodificação de imagem está no fato que enquanto o anterior cria a informação de registro de coeficiente de filtro 20 com referência ao sinal codificado 3 que é o original sinal de imagem origina, o último realiza o processo de filtragem com referência à informação de coeficiente de filtro 20 adquirido decodificando o fluxo de bit 9.
[0080] Daqui em diante, o processo de decodificar o modo de predição de movimento e o vetor de movimento de cada bloco de referência que é realizado pela unidade de decodificação de comprimento variável 100 será descrito.
[0081] A Fig. 19 mostra uma estrutura interna associada com o processo de decodificação aritmético realizada pela unidade de decodificação de comprimento variável 100, e Fig. 20 mostra um fluxo de operação do processo de decodificação aritmético.
[0082] A unidade de decodificação de comprimento variável 100 de acordo com esta modalidade 1 é ainda compreendida de uma unidade de determinação de modelo de contexto 21 para determinar o tipo de cada um dos dados a serem decodificados incluindo os parâmetros 17 para criação de sinal de predição incluindo o modo de predição de movimento, o vetor de movimento, etc., os dados de erro de predição comprimidos 7, e os parâmetros de quantização 19 para determinar um modelo de contexto que é definido em comum com um dispositivo de codificação de imagem para cada alvo para serem dados decodificados, a unidade de transformação em binário 22 para criar uma regra de transformação em binário que é definida de acordo com o tipo de cada dados a serem decodificados, uma unidade de criação de probabilidade de ocorrência 23 para fornecer uma probabilidade de ocorrência de cada bin (0 ou 1) de acordo com a regra de transformação em binário e o modelo de contexto, uma unidade de decodificação 105 para realizar decodificação aritmética de acordo com a probabilidade de ocorrência criada, e decodificar os dados codificados nas bases de uma sequência binária adquirida como um resultado da decodificação aritmética e a regra de transformação em binário mencionada acima, e uma memória de armazenamento de informação de probabilidade de ocorrência 25 para armazenar informação de probabilidade de ocorrência 28. Cada unidade que é designada pelo mesmo numeral de referência que aquele denotando um componente interno da unidade de codificação de comprimento variável 8 mostrado na Fig. 10, entre as unidades mostradas na Fig. 19, efetua a mesma operação que aquela efetuada pelo componente interno.(E) Processo de determinação de modelo de contexto, processo de transformação em binário, e processo de criação de probabilidade de ocorrência (etapas ST11 à ST13 mostradas na Fig. 20)
[0083] Porque esses processos (etapas ST11 à ST13) são similares aos processos (A) à (C) (etapas ST11 à ST13 mostradas na Fig. 11) realizados por um dispositivo de codificação de imagem, a explicação das etapas será aqui omitida daqui em diante. Para a determinação de um modelo de contexto que é usado para decodificar o modo de predição de movimento e o vetor de movimento, a informação de seleção de modelo de contexto 27 decodificada mencionada acima é referenciada.(F) Processo de decodificação aritmético (etapas ST21, ST15, e ST22 mostrado na Fig. 20)
[0084] Porque a probabilidade de ocorrência de bin que a unidade de decodificação 105 vai decodificar a partir de agora é decidida no processo mencionado acima (E), a unidade de decodificação 105 reconstrói o valor de bin de acordo com o pré-determinado processo de decodificação aritmético (etapa ST21). O valor reconstruído 40 (Fig. 19) de bin é realimentado para a unidade de criação de probabilidade de ocorrência 23, e a frequência de ocorrência de cada de um 0 e 1 é contida para uma atualização da informação de probabilidade de ocorrência 28 usada (etapa ST15). Cada vez que quando o valor reconstruído de cada bin é decidido, a unidade de decodificação 105 verifica se o valor reconstruído coincide com um padrão de sequência binário determinado com a regra de transformação em binário, e emite o valor dos dados indicado pelo padrão que o valor reconstruído coincide como um valor de dados decodificados 106 (etapa ST22). Ao menos que quaisquer dados decodificados sejam decididos, a unidade de decodificação retorna para a etapa ST11 e continua o processo de decodificação.
[0085] Embora a informação de seleção de modelo de contexto 27 seja multiplexada em unidades de uma unidade de bloco de referência na explicação mencionada acima, a informação de seleção de modelo de contexto pode ser alternativamente multiplexada em unidade de uma fatia, uma imagem ou o similar. Em um caso no qual a informação de seleção de modelo de contexto é multiplexada como um sinalizador posicionado em uma camada de dados superior, tal com uma fatia, uma imagem ou uma sequência, e um grau adequado de eficiência de codificação eficiência pode ser assegurado comutando entre camadas superiores maiores do que uma fatia, bits de overhead podem ser reduzidos em multiplexar a informação de seleção de modelo de contexto 27 um por um ao nível do bloco de referência.
[0086] Ainda mais, a informação de seleção de modelo de contexto 27 pode ser informação que é determinada dentro de um dispositivo de decodificação de imagem de acordo com informação relacionada diferente da informação de seleção de modelo de contexto e incluída no fluxo de bit. Em adição, embora na explicação mencionada acima, é explicado que a unidade de codificação de comprimento variável 8 e a unidade de decodificação de comprimento variável 100 realiza o processo de codificação aritmético e o processo de decodificação aritmético, esses processos podem ser um processo de codificação de Huffman e um processo de decodificação de Huffman e a informação de seleção de modelo de contexto 27 pode ser usada como o meio para mudar adaptativamente uma tabela de codificação de comprimento variável.
[0087] Os dispositivos de codificação e decodificação de imagem que são construídos conforme acima podem expressar uma hierarquia de modos de skip e pode codificar informação incluindo o modo de predição de movimento e um vetor de movimento adaptativamente de acordo com o estado interno de cada bloco de referência a ser codificado, e pode, por conseguinte, realizar a codificação com eficiência.
[0088] Conforme mencionado acima, um dispositivo de codificação de imagem de acordo com a Modalidade 1 é construído em tal uma maneira como para incluir uma unidade de predição 4 para adaptativamente determinar o tamanho de cada bloco de unidade de predição de movimento de acordo com sinais de componente de cor, e para dividir cada bloco de unidade de predição de movimento em regiões de alocação de vetor de movimento para pesquisar por um vetor de movimento; e uma unidade de codificação de comprimento variável 8 para, quando um vetor de movimento é alocado para o todo de cada bloco de unidade de predição de movimento, efetuar codificação para criar o fluxo de bit 9 configurando o modo de predição de movimento o modo de mc_skip se o vetor de movimento é igual a um vetor estimado que é determinado a partir dos vetores de movimento em torno dos blocos de unidade de predição de movimento e dados a serem codificados como um sinal de erro de predição 5 não existem, e para, quando cada uma das regiões de alocação de vetor de movimento tem um tamanho igual à ou maior do que um tamanho predeterminado e um vetor de movimento é alocado ao todo de cada uma das regiões de alocação de vetores de movimento, efetuar codificação para criar um fluxo de bit 9 configurando o modo de predição de movimento para o modo de sub_mc_skip se o vetor de movimento é igual a um vetor estimado que é determinado a partir dos vetores de movimento em torno das regiões de alocação de vetor de movimento e dados a serem codificados como um sinal de erro de predição 5 não existem. Por conseguinte, de modo a codificar um sinal de vídeo de cor tendo o formato de 4:4:4 com eficiência, um dispositivo de codificação de imagem pode expressar uma hierarquia de modos de skip e pode codificar uma informação incluindo o modo de predição de movimento e o vetor de movimento adaptativamente de acordo com o estado interno de cada bloco de referência a ser codificado. Como resultado, quando realizando codificação em uma baixa taxa de bit proporcionando uma alta taxa de compressão, um dispositivo de codificação de imagem pode realizar a codificação enquanto reduzindo a quantidade de código do vetor de movimento eficazmente.
[0089] Ainda mais, um dispositivo de decodificação de imagem de acordo com Modalidade 1 é construído em tal uma maneira para incluir a unidade de decodificação de comprimento variável 100 para decodificar um fluxo de bit 9 entrado no mesmo para adquirir parâmetros 17 para criação de sinal de predição mostrando o tamanho de cada bloco de unidade de predição de movimento, um modo de predição de movimento para especificar a forma de cada uma das regiões de alocação de vetor de movimento na quais cada bloco de unidade de predição de movimento é dividido, e um vetor de movimento correspondendo a cada região de alocação de vetor de movimento, e para determinar se cada bloco de unidade de predição de movimento está ou não no modo de mc_skip e se uma das regiões de alocação de vetor de movimento está ou não no modo de sub_mc_skip a partir do modo de predição de movimento mencionado acima, e uma unidade de predição 102 para, quando um bloco de unidade de predição de movimento estiver no modo de mc_skip ou uma das regiões de alocação de vetor de movimento está no modo de sub_mc_skip, determinar um vetor estimado dentre os vetores de movimento em torno, e configurar este vetor estimado como um vetor de movimento e também configurar todos os sinais de erro de predição decodificados 11 para zero para criar um sinal de predição 12, e para, quando o bloco de unidade de predição de movimento não está no modo de mc_skip e as regiões de alocação de vetor de movimento do bloco de unidade de predição de movimento não estão no modo de sub_mc_skip, criando um sinal de predição 12 nas bases do modo de predição de movimento e do vetor de movimento que a unidade de decodificação de comprimento variável 100 adquire decodificando o fluxo de bit. Consequentemente, o dispositivo de decodificação de vídeo pode ser construído em tal uma maneira a fim de corresponder ao dispositivo de codificação de imagem mencionado acima.
[0090] Embora nesta modalidade 1 o exemplo no qual um sinal de vídeo 4:4:4 é codificado e decodificado é explicado, não é necessário dizer que os processos de codificação e decodificação de acordo com a presente invenção podem ser aplicados a um caso no qual codificação e decodificação são realizadas em unidades de um bloco de referência, tal como um bloco macro, na codificação de vídeo destinada a codificar um vídeo tendo um formato 4:2:0 ou 4:2:2 no qual uma operação de desbaste de cor é efetuada em um formato de componente de diferença de cor e brilho convencional, conforme mencionado anteriormente.Aplicabilidade Industrial
[0091] Uma vez que um dispositivo de codificação de imagem, um dispositivo de decodificação de imagem, um método de codificação de imagem e um método de decodificação de imagem de acordo com a presente invenção torna possível efetuar um processo de codificação ótimo em um sinal de vídeo tendo o formato 4:4:4, os mesmos são adequados para uso em uma técnica de codificação de compressão de imagem, uma técnica de transmissão de dados comprimido de imagem, etc.

Claims (1)

1. Dispositivo de decodificação de imagem, o qual aceita um fluxo de bits codificado prognosticado, que é criado dividindo-se cada quadro de um sinal de imagem em movimento em blocos, cada um tendo um tamanho predeterminado, e efetuando-se uma predição de movimento para cada um dos blocos, e que decodifica o fluxo de bits para adquirir o sinal de imagem em movimento mencionado, o dispositivo de decodificação de imagem caracterizado por compreender:uma unidade de decodificação (100) para decodificar o fluxo de bits para adquirir dados que mostram um tamanho de um bloco da unidade de predição de movimento em cada um dos blocos, um modo de predição de movimento para especificar uma forma de cada uma das regiões de alocação de vetor de movimento nas quais o bloco da unidade de predição de movimento é dividido, e um vetor de movimento que corresponde a cada região de alocação de vetor de movimento, e para determinar se ou não o bloco da unidade de predição de movimento está em um primeiro modo de salto e se ou não uma das regiões de alocação de vetor de movimento está em um segundo modo de salto a partir do modo de predição de movimento; euma unidade de predição (102) para, quando o bloco da unidade de predição de movimento estiver no primeiro modo de salto ou uma das regiões de alocação de vetor de movimento estiver no segundo modo de salto, determinar um vetor estimado a partir daqueles vetores de movimento em torno, e configurar este vetor estimado como vetor de movimento e também configurar todos os sinais de erro de predição de movimento em zero para criar uma imagem de predição, e para, quando o bloco da unidade de predição de movimento não estiver no primeiro modo de salto e as regiões de alocação de vetor de movimento do bloco da unidade de predição de movimento não estiverem no segundo modo de salto, criar uma imagem de predição com base no modo de predição de movimento e no vetor de movimento que tal unidade de decodificação adquire ao decodificar o fluxo de bits.
BR122015017699-9A 2009-05-29 2010-05-27 Dispositivo de decodificação de imagem BR122015017699B1 (pt)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2009-130433 2009-05-29
JP2009130433 2009-05-29
PCT/JP2010/003553 WO2010137324A1 (ja) 2009-05-29 2010-05-27 画像符号化装置、画像復号装置、画像符号化方法、および画像復号方法
BRPI1015415-9A BRPI1015415B1 (pt) 2009-05-29 2010-05-27 Dispositivo de codificação de imagem

Publications (2)

Publication Number Publication Date
BR122015017699A2 BR122015017699A2 (pt) 2016-05-10
BR122015017699B1 true BR122015017699B1 (pt) 2021-06-01

Family

ID=43222450

Family Applications (4)

Application Number Title Priority Date Filing Date
BR122015017700-6A BR122015017700B1 (pt) 2009-05-29 2010-05-27 Método de codificação de imagem
BR122015017701-4A BR122015017701B1 (pt) 2009-05-29 2010-05-27 Método de decodificação de imagem
BR122015017699-9A BR122015017699B1 (pt) 2009-05-29 2010-05-27 Dispositivo de decodificação de imagem
BRPI1015415-9A BRPI1015415B1 (pt) 2009-05-29 2010-05-27 Dispositivo de codificação de imagem

Family Applications Before (2)

Application Number Title Priority Date Filing Date
BR122015017700-6A BR122015017700B1 (pt) 2009-05-29 2010-05-27 Método de codificação de imagem
BR122015017701-4A BR122015017701B1 (pt) 2009-05-29 2010-05-27 Método de decodificação de imagem

Family Applications After (1)

Application Number Title Priority Date Filing Date
BRPI1015415-9A BRPI1015415B1 (pt) 2009-05-29 2010-05-27 Dispositivo de codificação de imagem

Country Status (14)

Country Link
US (5) US8934548B2 (pt)
EP (4) EP3998776B1 (pt)
JP (6) JP5215462B2 (pt)
KR (5) KR101514191B1 (pt)
CN (5) CN104270636B (pt)
BR (4) BR122015017700B1 (pt)
CA (4) CA2904730C (pt)
ES (3) ES2902160T3 (pt)
HK (5) HK1203113A1 (pt)
MX (1) MX2011012672A (pt)
RU (7) RU2546325C2 (pt)
SG (2) SG10201402451XA (pt)
WO (1) WO2010137324A1 (pt)
ZA (5) ZA201109121B (pt)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2904730C (en) * 2009-05-29 2023-11-21 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method, and image decoding method
WO2011134642A1 (en) * 2010-04-26 2011-11-03 Panasonic Corporation Predictive coding with block shapes derived from a prediction error
JP2013034037A (ja) * 2011-03-09 2013-02-14 Canon Inc 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
CN107087179B (zh) * 2011-03-10 2021-04-27 夏普株式会社 图像解码装置及方法、以及记录介质
PL3716621T3 (pl) * 2012-04-12 2022-01-24 Jvckenwood Corporation Urządzenie do kodowania ruchomych obrazów, sposób kodowania ruchomych obrazów, program kodujący ruchome obrazy oraz urządzenie do dekodowania ruchomych obrazów, sposób dekodowania ruchomych obrazów, program dekodujący ruchome obrazy
US11317101B2 (en) * 2012-06-12 2022-04-26 Google Inc. Inter frame candidate selection for a video encoder
US20150334389A1 (en) * 2012-09-06 2015-11-19 Sony Corporation Image processing device and image processing method
US9813711B2 (en) * 2012-10-03 2017-11-07 Avago Technologies General Ip (Singapore) Pte. Ltd. Hybrid transform-based compression
JP6239838B2 (ja) * 2013-03-15 2017-11-29 キヤノン株式会社 動画像符号化装置、その制御方法、及び撮像装置
WO2014209296A1 (en) * 2013-06-26 2014-12-31 Intel Corporation Power efficient encoder architecture during static frame or sub-frame detection
JP6312312B2 (ja) * 2014-04-15 2018-04-18 日本放送協会 コンテキストモデル生成装置、符号化装置、および復号装置
US9456075B2 (en) * 2014-10-13 2016-09-27 Avaya Inc. Codec sequence detection
EP3468198A1 (en) 2017-10-05 2019-04-10 Thomson Licensing Method and apparatus for video encoding and decoding based on illumination compensation
CN110060195B (zh) * 2018-01-19 2021-05-04 华为技术有限公司 一种数据处理的方法及装置
WO2019174567A1 (zh) * 2018-03-16 2019-09-19 华为技术有限公司 划分标志位的上下文建模方法及装置
US10516812B2 (en) 2018-04-02 2019-12-24 Intel Corporation Devices and methods for selective display frame fetch
US10887594B2 (en) 2018-07-05 2021-01-05 Mediatek Inc. Entropy coding of coding units in image and video data
US11025969B1 (en) * 2018-11-06 2021-06-01 Amazon Technologies, Inc. Video packaging system using source encoding
WO2020171046A1 (en) 2019-02-20 2020-08-27 Panasonic Intellectual Property Corporation Of America Image encoder and image decoder
CN110087077A (zh) * 2019-06-05 2019-08-02 广州酷狗计算机科技有限公司 视频编码方法及装置、存储介质
WO2021060834A1 (ko) 2019-09-24 2021-04-01 엘지전자 주식회사 서브픽처 기반 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법

Family Cites Families (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2156889C (en) * 1994-09-30 1999-11-02 Edward L. Schwartz Method and apparatus for encoding and decoding data
JPH09135358A (ja) * 1995-11-08 1997-05-20 Nec Corp 算術符号を用いた画像符号化装置
JP2798035B2 (ja) * 1996-01-17 1998-09-17 日本電気株式会社 適応動きベクトル補間による動き補償フレーム間予測方法
WO1999048213A2 (en) * 1998-03-18 1999-09-23 Koninklijke Philips Electronics N.V. Prediction on data in a transmission system
AU2000257047A1 (en) * 2000-06-28 2002-01-08 Mitsubishi Denki Kabushiki Kaisha Image encoder and image encoding method
WO2003003745A1 (en) * 2001-06-29 2003-01-09 Ntt Docomo, Inc. Image encoder, image decoder, image encoding method, and image decoding method
CN101409837B (zh) * 2001-09-14 2011-07-13 株式会社Ntt都科摩 编码方法、译码方法、编码装置、译码装置、图象处理系统
EP2222084A2 (en) * 2001-11-16 2010-08-25 NTT DoCoMo, Inc. Image coding and decoding method
EP1445956A4 (en) * 2001-11-16 2009-09-02 Ntt Docomo Inc IMAGE ENCODING METHOD, IMAGE DECODING METHOD, ENCODER AND IMAGE DECODER, PROGRAM, COMPUTER DATA SIGNAL, AND IMAGE TRANSMISSION SYSTEM
MXPA04007020A (es) * 2002-01-23 2004-10-11 Nokia Corp Agrupamiento de cuadros de imagen para codificacion de video.
JP2003259377A (ja) 2002-03-06 2003-09-12 Matsushita Electric Ind Co Ltd 動画像符号化方法、動画像復号化方法および符号列フォーマット
EP1478190B1 (en) * 2002-04-26 2013-01-02 NTT DoCoMo, Inc. Image encoding device, image encoding method, and image encoding program
KR100865034B1 (ko) * 2002-07-18 2008-10-23 엘지전자 주식회사 모션 벡터 예측 방법
CN101651831B (zh) * 2003-01-08 2013-07-17 苹果公司 用于改进的编码模式选择的方法和装置
WO2005055612A1 (en) * 2003-12-02 2005-06-16 Sungkyunkwan University Method and apparatus for video encoding
KR20050061762A (ko) * 2003-12-18 2005-06-23 학교법인 대양학원 부호화 모드 결정방법, 움직임 추정방법 및 부호화 장치
JP4591657B2 (ja) * 2003-12-22 2010-12-01 キヤノン株式会社 動画像符号化装置及びその制御方法、プログラム
JP3879741B2 (ja) * 2004-02-25 2007-02-14 ソニー株式会社 画像情報符号化装置および画像情報符号化方法
JP2005348093A (ja) * 2004-06-03 2005-12-15 Sony Corp 画像処理装置、そのプログラムおよびその方法
KR100813958B1 (ko) * 2004-06-07 2008-03-14 세종대학교산학협력단 동영상의 무손실 인코딩 및 디코딩 방법, 그 장치
US8111752B2 (en) * 2004-06-27 2012-02-07 Apple Inc. Encoding mode pruning during video encoding
US20050286777A1 (en) * 2004-06-27 2005-12-29 Roger Kumar Encoding and decoding images
KR100627329B1 (ko) * 2004-08-19 2006-09-25 전자부품연구원 H.264 비디오 코덱을 위한 적응형 움직임 예측 및 모드결정 장치 및 그 방법
US8649436B2 (en) * 2004-08-20 2014-02-11 Sigma Designs Inc. Methods for efficient implementation of skip/direct modes in digital video compression algorithms
CN100345450C (zh) * 2005-01-31 2007-10-24 浙江大学 视频或图像去块滤波的方法和装置
JP4047879B2 (ja) * 2005-08-23 2008-02-13 松下電器産業株式会社 動きベクトル検出装置および動きベクトル検出方法
EP2720468B1 (en) * 2005-09-26 2017-03-29 Mitsubishi Electric Corporation Moving image decoding method
US8446954B2 (en) * 2005-09-27 2013-05-21 Qualcomm Incorporated Mode selection techniques for multimedia coding
KR100781524B1 (ko) * 2006-04-04 2007-12-03 삼성전자주식회사 확장 매크로블록 스킵 모드를 이용한 인코딩/디코딩 방법및 장치
KR101228109B1 (ko) * 2006-07-24 2013-01-31 삼성전자주식회사 움직임 예측장치 및 방법과 이를 채용하는 영상 부호화장치및 방법
JP4787100B2 (ja) * 2006-07-27 2011-10-05 パナソニック株式会社 画像符号化装置
KR101380580B1 (ko) * 2006-08-02 2014-04-02 톰슨 라이센싱 비디오 인코딩을 위한 적응형 기하학적 파티셔닝 방법 및 장치
JP4763549B2 (ja) * 2006-08-18 2011-08-31 富士通セミコンダクター株式会社 フレーム間予測処理装置、画像符号化装置、及び画像復号化装置
US7756348B2 (en) * 2006-10-30 2010-07-13 Hewlett-Packard Development Company, L.P. Method for decomposing a video sequence frame
US8804829B2 (en) * 2006-12-20 2014-08-12 Microsoft Corporation Offline motion description for video generation
KR101364532B1 (ko) * 2007-01-03 2014-02-18 삼성전자주식회사 인접 파티션의 크기를 고려한 움직임 벡터 예측 방법,장치, 인코더, 디코더 및 복호화 방법
KR101341111B1 (ko) * 2007-01-18 2013-12-13 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 화질 스케일러블 비디오 데이터 스트림
US8259793B2 (en) * 2007-03-19 2012-09-04 Sony Corporation System and method of fast MPEG-4/AVC quantization
CA2895854A1 (en) * 2007-03-20 2008-10-23 Fujitsu Limited Video encoding and decoding apparatus and method using quantization in sub-blocks
KR101366241B1 (ko) * 2007-03-28 2014-02-21 삼성전자주식회사 영상 부호화, 복호화 방법 및 장치
US8160150B2 (en) * 2007-04-10 2012-04-17 Texas Instruments Incorporated Method and system for rate distortion optimization
BRPI0809512A2 (pt) * 2007-04-12 2016-03-15 Thomson Licensing método e aparelho para mesclagem dependente de contexto para modos salto-direto para codificação e decodificação de vídeo
US8488677B2 (en) 2007-04-25 2013-07-16 Lg Electronics Inc. Method and an apparatus for decoding/encoding a video signal
US9357233B2 (en) * 2008-02-26 2016-05-31 Qualcomm Incorporated Video decoder error handling
JP4990927B2 (ja) 2008-03-28 2012-08-01 三星電子株式会社 動きベクトル情報の符号化/復号化方法及び装置
KR20090129926A (ko) * 2008-06-13 2009-12-17 삼성전자주식회사 영상 부호화 방법 및 그 장치, 영상 복호화 방법 및 그 장치
US8213503B2 (en) * 2008-09-05 2012-07-03 Microsoft Corporation Skip modes for inter-layer residual video coding and decoding
JP2012504925A (ja) * 2008-10-06 2012-02-23 エルジー エレクトロニクス インコーポレイティド ビデオ信号の処理方法及び装置
KR101233627B1 (ko) * 2008-12-23 2013-02-14 한국전자통신연구원 스케일러블 부호화 장치 및 방법
US8644389B2 (en) * 2009-05-15 2014-02-04 Texas Instruments Incorporated Real-time video image processing
CA2904730C (en) * 2009-05-29 2023-11-21 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method, and image decoding method
US20130003843A1 (en) * 2010-03-12 2013-01-03 Mediatek Singapore Pte. Ltd. Motion Prediction Method
US9282338B2 (en) * 2011-06-20 2016-03-08 Qualcomm Incorporated Unified merge mode and adaptive motion vector prediction mode candidates selection

Also Published As

Publication number Publication date
CA2763211A1 (en) 2010-12-02
CA3159686C (en) 2023-09-05
CN104270637A (zh) 2015-01-07
US20150304677A1 (en) 2015-10-22
CN104270636B (zh) 2018-11-09
ZA201506372B (en) 2016-12-21
JP2013138500A (ja) 2013-07-11
CN102450017B (zh) 2014-09-10
RU2619891C1 (ru) 2017-05-19
KR20140074401A (ko) 2014-06-17
ZA201209367B (en) 2015-02-25
JP5674971B2 (ja) 2015-02-25
JPWO2010137324A1 (ja) 2012-11-12
RU2647655C1 (ru) 2018-03-16
ZA201405602B (en) 2017-06-28
EP2437500A4 (en) 2013-04-17
RU2509438C2 (ru) 2014-03-10
US9930356B2 (en) 2018-03-27
BR122015017699A2 (pt) 2016-05-10
US20120082213A1 (en) 2012-04-05
JP6091585B2 (ja) 2017-03-08
KR20130121987A (ko) 2013-11-06
SG10201402451XA (en) 2014-07-30
CA3160155A1 (en) 2010-12-02
SG176160A1 (en) 2011-12-29
CN104270637B (zh) 2018-07-27
BR122015017701B1 (pt) 2021-06-01
JP6347860B2 (ja) 2018-06-27
JP5840286B2 (ja) 2016-01-06
JP2015084574A (ja) 2015-04-30
US9036713B2 (en) 2015-05-19
CA2763211C (en) 2015-12-08
US20150085937A1 (en) 2015-03-26
KR20120046119A (ko) 2012-05-09
BRPI1015415A2 (pt) 2016-04-19
MX2011012672A (es) 2011-12-16
RU2673107C1 (ru) 2018-11-22
CN104270635B (zh) 2018-12-11
CA2904730A1 (en) 2010-12-02
JP5215462B2 (ja) 2013-06-19
JP2016036176A (ja) 2016-03-17
RU2546325C2 (ru) 2015-04-10
CA2904730C (en) 2023-11-21
BR122015017700B1 (pt) 2021-06-01
US8934548B2 (en) 2015-01-13
EP3998776A1 (en) 2022-05-18
US20150229949A1 (en) 2015-08-13
KR101376018B1 (ko) 2014-03-27
RU2693651C1 (ru) 2019-07-03
HK1167966A1 (en) 2012-12-14
RU2571596C1 (ru) 2015-12-20
ES2954657T3 (es) 2023-11-23
CN104270635A (zh) 2015-01-07
HK1202197A1 (en) 2015-09-18
CN104159111A (zh) 2014-11-19
JP2014132765A (ja) 2014-07-17
WO2010137324A1 (ja) 2010-12-02
EP3998776B1 (en) 2023-08-30
ES2902160T3 (es) 2022-03-25
EP3998775B1 (en) 2023-08-02
US9924190B2 (en) 2018-03-20
HK1203114A1 (en) 2015-10-16
BRPI1015415B1 (pt) 2021-06-01
KR101312213B1 (ko) 2013-09-27
US20150229946A1 (en) 2015-08-13
HK1203113A1 (en) 2015-10-16
BR122015017701A2 (pt) 2016-05-10
ES2958265T3 (es) 2024-02-06
JP2017118573A (ja) 2017-06-29
RU2013152317A (ru) 2015-01-20
KR20140026649A (ko) 2014-03-05
JP5478748B2 (ja) 2014-04-23
CN104159111B (zh) 2018-11-06
KR20130076894A (ko) 2013-07-08
US9930355B2 (en) 2018-03-27
CA3159686A1 (en) 2010-12-02
KR101455579B1 (ko) 2014-10-29
RU2011154147A (ru) 2013-07-10
EP3261346A1 (en) 2017-12-27
EP2437500A1 (en) 2012-04-04
EP3998775A1 (en) 2022-05-18
BR122015017700A2 (pt) 2016-05-10
ZA201708216B (en) 2019-05-29
HK1203112A1 (en) 2015-10-16
KR101514191B1 (ko) 2015-04-21
CN104270636A (zh) 2015-01-07
ZA201109121B (en) 2013-02-27
CN102450017A (zh) 2012-05-09
EP3261346B1 (en) 2021-12-01
KR101490646B1 (ko) 2015-02-06

Similar Documents

Publication Publication Date Title
BR122015017699B1 (pt) Dispositivo de decodificação de imagem
JP5289440B2 (ja) 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
TW202037163A (zh) 改善的子劃分內預測
TW201830972A (zh) 用於視訊寫碼之低複雜度符號預測
CN113557527B (zh) 视频解码方法、视频解码器及介质
BR112013020878B1 (pt) Dispositivos e métodos de codificação e decodificação de imagem
KR20230117571A (ko) 높은 비트 심도 비디오 코딩을 위한 라이스 파라미터 도출을 위한 낮은 복잡도 히스토리 사용
JP2023521678A (ja) 組み合わせられた可逆及び非可逆符号化のための方法及びシステム

Legal Events

Date Code Title Description
B03A Publication of a patent application or of a certificate of addition of invention [chapter 3.1 patent gazette]
B11A Dismissal acc. art.33 of ipl - examination not requested within 36 months of filing
B11N Dismissal: publication cancelled [chapter 11.14 patent gazette]

Free format text: REFERENTE A RPI NO 2413 DE 04/04/2017, POR TER SIDO INDEVIDO.

B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 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/13 (2014.01), H04N 19/176 (2014.01), H04N

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 27/05/2010, OBSERVADAS AS CONDICOES LEGAIS. PATENTE CONCEDIDA CONFORME ADI 5.529/DF