BRPI0911307B1 - Codificação e decodificação de uma imagem ou de uma sequência de imagens recortadas, segundo partições de pixels de forma linear - Google Patents

Codificação e decodificação de uma imagem ou de uma sequência de imagens recortadas, segundo partições de pixels de forma linear Download PDF

Info

Publication number
BRPI0911307B1
BRPI0911307B1 BRPI0911307-0A BRPI0911307A BRPI0911307B1 BR PI0911307 B1 BRPI0911307 B1 BR PI0911307B1 BR PI0911307 A BRPI0911307 A BR PI0911307A BR PI0911307 B1 BRPI0911307 B1 BR PI0911307B1
Authority
BR
Brazil
Prior art keywords
pixels
group
partitions
partition
predicted
Prior art date
Application number
BRPI0911307-0A
Other languages
English (en)
Inventor
Joël Jung
Guillaume Laroche
Original Assignee
France Telecom
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
Application filed by France Telecom filed Critical France Telecom
Publication of BRPI0911307A2 publication Critical patent/BRPI0911307A2/pt
Publication of BRPI0911307B1 publication Critical patent/BRPI0911307B1/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/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
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B63/00Targets or goals for ball games
    • A63B63/004Goals of the type used for football, handball, hockey or the like
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B63/00Targets or goals for ball games
    • A63B63/08Targets or goals for ball games with substantially horizontal opening for ball, e.g. for basketball
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B71/00Games or sports accessories not covered in groups A63B1/00 - A63B69/00
    • A63B71/0054Features for injury prevention on an apparatus, e.g. shock absorbers
    • 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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)

Abstract

codificação e decodificação de uma imagem ou de uma sequência de imagens recortadas, segundo partições de pixels de forma linear. a invenção refere-se a um processo de codificação de uma imagem ou de uma sequência de imagens gerando um fluxo (f) de dados comportando dados representativos de pelo menos um grupo de pixels em uma dessas imagens (ie). esse processo comporta as etapas de:- seleção (c1), para um grupo de pixels a codificar, de uma partição inicial de forma linear predeterminada; - recorte (c2) desse grupo de pixels a codificar segundo essa partição inicial selecionada; - propagação (c2) dessa partição inicial selecionada nesse grupo de pixels a codificar, até que este seja recortado em sua totalidade em uma pluralidade de partições de forma predeterminada; - seleção, para esse grupo de pixels recortado, de uma ordem de percurso predeterminado dessas partições; - predicção e codificação (c4) dessas partições uma após a outra, segundo essa ordem de percurso selecionado.

Description

Planejamento da Invenção
[0001] A presente invenção refere-se, de maneira geral, ao domínio do tratamento de imagens, e mais precisamente à codificação e à decodificação de imagens numéricas e de sequências de imagens numéricas.
[0002] As imagens e sequências de imagens numéricas são conhecidas por ocuparem muito espaço na memória, o que necessita, quando se transmitem essas imagens, de comprimi-las, a fim de evitar os problemas de volumes sobre a rede de comunicação utilizada para essa transmissão, o fluxo utilizável sobre esta sendo geralmente limitado.
[0003] A norma H.264/MPEG-4 AVC (a partir do inglês "Advanced Vídeo Coding"), tal como apresentada no documento ISO/IEC 14496- 10, descreve uma técnica segundo a qual grupos de pixels, denominados macroblocos, de uma imagem comum são preditos espacialmente em relação a outros macroblocos pertencentes à mesma imagem. É o que se denomina a codificação em Intra ("Intra- frame-coding"). Após essa codificação preditiva, os blocos de pixels são transformados, por uma transformação de tipo transformada em cosseno discreta, depois quantificados. Os coeficientes dos blocos de pixels quantificados são em seguida percorridos em uma ordem de leitura, permitindo explorar o número importante de coeficientes nulos nas altas frequências, depois são codificados por uma codificação entrópica.
[0004] Mais precisamente, quando da codificação preditiva de um macrobloco conforme a norma pré-citada, com exceção de um macrobloco de tipo 16 x 16, o macrobloco é particionado em blocos de menor tamanho, cuja forma é retangular ou quadrada. A predição espacial desse macrobloco em uma imagem consiste em predizer cada bloco de menor tamanho, formando esse macrobloco em relação a um ou vários blocos de um outro macrobloco dessa mesma imagem. Essa predição só será possível que se esse outro macrobloco for um macrobloco a predizer e achando-se em certas direções predeterminadas em relação a este, isto é, geralmente acima e à esquerda, nas proximidades ditas "casuais".
[0005] Assim, por exemplo, no caso de um macrobloco de tipo 16 x 16, a predição dos pixels que ficam situados embaixo, à direita desse macrobloco é necessariamente efetuada em relação a pixels de referência que ficam situados acima e à esquerda do macrobloco. Esses pixels de referência são muito afastados espacialmente dos pixels a predizer.
[0006] A precisão desse tipo de predição não é, portanto, otimizada, sobretudo, no caso de macroblocos que têm uma atividade espacial elevada, isto é, no caso em que a imagem a codificar apresenta numerosos detalhes.
[0007] A presente invenção visa a resolver os inconvenientes da técnica anterior, fornecendo processos e dispositivos de codificação e de decodificação de imagens, nos quais a distância de predição entre os pixels a predizer e os pixels e os pixels de referência é minimizada.
Objeto e resumo da invenção
[0008] Para isso, a invenção propõe um processo de codificação de uma imagem ou de uma sequência de imagens gerando um fluxo de dados que comportam dados representativos de pelo menos um grupo de pixels em uma das imagens, caracterizado pelo fato de comportar as etapas de: - seleção, para um grupo de pixels a codificar, de uma partição inicial de forma linear predeterminada; - recorte do grupo de pixels a codificar, segundo a partição inicial selecionada; - propagação da partição inicial selecionada no grupo de pixels a codificar, até que o último seja recortado em sua totalidade em uma pluralidade de partições de forma predeterminada; - seleção, para o grupo de pixels recortado, de uma ordem de percurso predeterminado das partições; - predição e codificação das partições uma após a outra, segundo a ordem de percurso selecionado.
[0009] Graças por um lado, esse recorte de macrobloco por propagação de uma partição de forma específica, diferente da forma quadrada ou retangular habitual, e, por outro lado, uma ordem de percurso particular das partições do macrobloco, a intracodificação assim obtida, de acordo com a invenção, é tornada muito mais fina que as codificações intraclássicas, considerando-se que a predição é efetuada com pixels de referência que são mais próximas.
[00010] Além disso, o fato de as partições não serem quadradas ou retangulares permite melhor adaptação da codificação a estruturas ou motivos particulares da imagem.
[00011] Enfim, o fato de a ordem de percurso das partições ser diferente em relação à ordem de percurso clássico permite a criação de novas partições de forma e de tamanho diferentes. Essas partições apresentam a vantagem de poder utilizar pixels de referência oriundos de várias partições já codificadas, depois decodificadas.
[00012] De acordo com uma característica vantajosa, a predição e a codificação de uma partição corrente no grupo de pixels são efetuadas em relação a pelo menos uma partição de referência, esta sendo uma partição que foi propagada antes da partição corrente e que foi codificada, depois decodificada. Essa disposição permite assim reduzir, de forma satisfatória a distância de predição entre os pixels a predizer e os pixels de referência.
[00013] De acordo com outras características vantajosas: - a ordem de percurso das partições selecionado é a mesma que a ordem na qual estas formas propagadas: esse modo de realização permite: - predizer sistematicamente os pixels de uma partição corrente a predizer em relação aos pixels de uma partição de referência imediatamente próxima; - aplicar, para cada partição, uma transformada frequencial mais localizada, e, portanto, melhor adaptado ao conteúdo da partição; - a ordem de percurso das partições selecionada permite a predição e a codificação de pelo menos uma partição comum em relação a duas partições de referência que lhe são imediatamente vizinhas: esse modo de realização permite assim afinar a precisão da predição; - a ordem de percurso das partições selecionada é de tipo dicotômico: esse modo de realização permite assim afinar ainda mais a precisão da predição.
[00014] De acordo ainda com uma outra característica vantajosa, o fluxo de dados compreende informações relativas à forma da partição selecionada e à ordem de percurso que foi selecionada.
[00015] Assim, o decodificador é capaz de deduzir de forma determinista, para um macrobloco corrente a decodificar, a forma da partição a propagar e a ordem na qual vai decodificar as partições desse macrobloco.
[00016] A invenção refere-se também a um processo de decodificação de um fluxo de dados representativo de uma imagem ou de uma sequência de imagens, esse fluxo comportando dados representativos de pelo menos um grupo de pixels em uma das imagens, caracterizado pelo fato de comportar as etapas de: - determinação, no fluxo a decodificar, de uma partição inicial de forma linear predeterminada; - recorte do grupo de pixels a decodificar, segundo a partição inicial determinada; - propagação da partição inicial determinada no grupo de pixels a decodificar, até que este seja recortado em sua totalidade em uma pluralidade de partições de forma predeterminada; - determinação, no fluxo a decodificar, de uma ordem de percurso das partições; - decodificação das partes uma após a outra, segundo a ordem de percurso determinado.
[00017] De acordo com outras características vantajosas: - a decodificação de uma partição corrente no grupo de pixels é feita em relação a pelo menos uma parte referência, a partição de referência sendo uma partição que foi propagada anteriormente à partição corrente e que já foi decodificada; - a ordem de percurso das partições é a mesma que a ordem, na qual estas foram propagadas; - a ordem de percurso das partições permite a decodificação de pelo menos uma partição corrente em relação a duas partições de referência que lhe são imediatamente vizinhas; - a ordem de percurso das partições é de tipo dicotômico.
[00018] A invenção se refere também um sinal portador de um fluxo de dados representativo de uma imagem ou de uma sequência de imagens, o fluxo comportando dados representativos de pelo menos um grupo de pixels em uma das imagens, caracterizado pelo fato de: - determinados dos dados representativos são relativos a uma forma linear predeterminada de uma partição inicial que foi selecionada no momento da predição e da codificação do grupo de pixels; e - determinados outros dos dados representativas são relativas a uma ordem de percurso das partições que formam esse grupo de pixels e resultando da propagação da partição inicial selecionada, visando a predição e da codificação das partições.
[00019] A invenção refere-se ainda a um dispositivo de codificação de uma imagem ou de uma sequência de imagens que gera um fluxo de dados que comporta dados representativos de pelo menos um grupo de pixels em uma das imagens, caracterizado pelo fato de comportar: - meios de seleção, para um grupo de pixels a codificar, de uma partição inicial de forma linear predeterminada; - meios de recorte do grupo de pixels a codificar, segundo a partição inicial selecionada; - meios de propagação da partição inicial selecionada no grupo de pixels a codificar, até que este seja recortado em sua totalidade em uma pluralidade de partições de forma predeterminado; - meios de seleção, para o grupo de pixels recortado, de uma ordem de percurso predeterminado das partições; - meios de predição e de codificação das partições uma após a outra, segundo a ordem de percurso selecionada.
[00020] A invenção refere-se também a um dispositivo de decodificação de um fluxo de dados representativo de uma imagem ou de uma sequência de imagens, o fluxo comportando dados representativos de pelo menos um grupo de pixels em uma das imagens, caracterizado pelo fato de comportar: - meios de determinação, no fluxo a decodificar, de uma partição inicial de forma linear predeterminada; - meios de recorte do grupo de pixels a decodificar, segundo a partição inicial determinada; - meios de propagação da partição inicial determinada no grupo de pixels a decodificar, até que este seja recortado em sua totalidade em uma pluralidade de partições de forma predeterminada; - meios de determinação, no fluxo a decodificar, de uma ordem de percurso das partições; - meios de decodificação das partições uma após a outra, segundo a ordem de percurso determinado.
[00021] A invenção se refere ainda um programa de computador que comporta instruções para aplicar um dos processos segundo a invenção, quando é executado sobre um computador.
Breve Descrição dos Desenhos
[00022] Outras características e vantagens aparecerão com a leitura de modo de realização preferidos descritos com referência às figuras, nas quais: - a figura 1 representa etapas do processo de codificação, de acordo com a invenção; - a figura 2 representa um modo de realização de um dispositivo de codificação, de acordo com a invenção; - a figura 3 representa diferentes formas lineares de partições susceptíveis de serem selecionadas no dispositivo de codificação, de acordo com a invenção; - a figura 4 representa macroblocos particionados por propagação das diferentes partições por propagação das diferentes partições iniciais representadas na figura 3; - a figura 5 representa o macrobloco particionado da figura 4A, que foi predito segundo três ordens de percurso possíveis; - a figura 6 representa o macrobloco particionado da figura 4C que foi predito, de acordo com uma das três ordens de percurso representadas na figura 5; - a figura 7 representa a estrutura de um macrobloco codificado pelo dispositivo de codificação, de acordo com a invenção; - a figura 8 representa o detalhe de um campo que compõe a estrutura do macrobloco codificado da figura 7; - a figura 9 representa um dispositivo de decodificação, de acordo com a invenção; - a figura 10 representa etapas do processo de decodificação, de acordo com a invenção.
Descrição Detalhada de um Modo de Realização
[00023] Um modo de realização da invenção vai a seguir ser descrito, no qual o processo de codificação, de acordo com a invenção, é utilizado para codificar uma sequência de imagens segundo um fluxo binário próximo daquele que se obtém por uma codificação segundo a norma H.264/MPEG-4 AVC. Nesse modo de realização, o processo de codificação, de acordo com a invenção, é, por exemplo, implementado de maneira virtual ou material por modificações de um codificador inicialmente de acordo com a norma H.264/MPEG-4 AVC.. O processo de codificação, de acordo com a invenção, é representado sob a forma de um algoritmo que comporta etapas C1 a C6, representadas na figura 1.
[00024] Deve ser observado que o processo de decodificação, de acordo com a invenção, é simetricamente implementado de maneira virtual ou material por modificações de um decodificador inicialmente conforme a norma H.264/MPEG-4 AVC.
[00025] De acordo com o modo de realização da invenção, o processo de codificação, de acordo com a invenção, é implementado em um dispositivo de codificação CO representado na figura 2. A codificação feita pelo codificador CO é de tipo Intra.
[00026] A primeira etapa C1, representada na figura 1, é a seleção, para um grupo de pixels ou macrobloco pertencente a uma imagem IE da sequência de imagens a codificar, de uma partição particular escolhida em um conjunto predeterminado de partições de forma linear predeterminada. Para isto, um macrobloco MB pertencente à imagem IE, por exemplo, de tamanho 8 X 8, é aplicado na entrada de um módulo SP de seleção de partições, representado na figura 2.
[00027] Esse módulo SP de seleção de partições utiliza, por exemplo, um método de escolha por competição exaustiva ou ainda um método de escolha com o auxílio de um algoritmo com a priori. Esses métodos são bem conhecidos do técnico (cf. G.J. Sullivan and T. Wiegand, Ratedistorsion optimization for video compression, IEEE Signal Proc. Mag., pp. 74-90, 1998). Elas não serão, portanto, descritas antes.
[00028] Essas partições são agrupadas em uma base de dados BD1 do codificador CO. Elas se caracterizam pelo fato de terem formas lineares, o que as distinguem nitidamente partições quadradas ou retangulares utilizadas habitualmente nas técnicas de codificação da técnica anterior.
[00029] Diferentes partições de um macrobloco, por exemplo, de tamanho 8x8, capazes de serem selecionadas pelo módulo de seleção SP, são representadas a título de exemplos não limitativos na figura 3.
[00030] A figura 3A representa um macrobloco MB recortado, segundo uma partição inicial P1 que tem a forma de uma linha.
[00031] A figura 3B representa um macrobloco MB recortado, segundo uma partição inicial P1 que tem a forma de uma coluna.
[00032] A figura 3C representa um macrobloco MB recortado, segundo uma partição inicial P1 que tem a forma de um "L".
[00033] A figura 3D representa um macrobloco MB recortado, segundo uma partição inicial P1 que tem a forma de uma cruz.
[00034] A figura 3E representa um macrobloco MB recortado, segundo uma partição inicial P1 que tem a forma de uma linha partida contendo segmentos vertical, horizontal e diagonal.
[00035] A figura 3F representa um macrobloco MB recortado, segundo uma partição inicial P1 que tem a forma de uma linha partida, cujas duas extremidades se unem de modo a formar um ponto. Essa linha partida é, por exemplo, determinada pelo gradiente de um macrobloco situado na mesma posição em uma imagem precedente (colocalizado).
[00036] A etapa seguinte C2 representada na figura 1 é o particionamento do macrobloco MB, segundo a partição inicial P1 escolhida. Esse particionamento é feito por um módulo PMB de particionamento de macroblocos representa na figura 2. Para isso, o módulo de particionamento PMB compreende um submodelo de recorte PART destinado a recortar uma primeira vez o macrobloco MB, segundo a predição inicial P1 selecionada, conforme representado na figura 3.
[00037] Com referência na figura 2, o módulo de particionamento PMB compreende, além disso, um submódulo de propagação PROP destinado a propagar essa partição inicial selecionada P1 um número n de vezes (n sendo um inteiro) no macrobloco MB, até que este seja recortado em sua totalidade em um número n+1 de partições de forma predeterminada.
[00038] O módulo de propagação PMB utiliza um algoritmo de propagação que utiliza, por exemplo, um operador de morfologia matemática, como, por exemplo, uma dilatação bem conhecida do técnico. Essa dilatação é descrita, em particular, na obra: Fundamentals of Digital Image Processing, A.K. Jain, Prentice Hall Editions.
[00039] Esse algoritmo permite assim vantajosamente particionar um macrobloco de forma determinista, independentemente da foram da partição inicial.
[00040] De acordo com uma variante da invenção, o algoritmo de propagação poderia utilizar uma função de cálculo de minimização da distância de predição entre uma partição corrente Pj a predizer (1<j<n+1) e pelo menos a partição precedente Pj-1, uma vez que esta última foi codificada, depois decodificada.
[00041] A figura 4 representa os macroblocos MBpart que foram obtidos após recorte segundo as partições iniciais P1 representadas na figura 3.
[00042] Conforme se pode constatar, o algoritmo de propagação, segundo a invenção, é concebido de forma que as partições P1, ...., Pn+1, assim obtidas: - tenham a mesma forma ou sensivelmente a mesma forma que a partição inicial P1; e - não se sobrepõem no macrobloco MBpart; e - não têm necessariamente o mesmo número de pixels.
[00043] A figura 4A representa um macrobloco particionado MBpart compreendendo oito partições P1, ,...P8, que têm todas a forma de uma linha e o mesmo número de pixels.
[00044] A figura 4B representa um macrobloco particionado MBpart que compreende oito partições P1.... P8, tendo todas a forma de uma coluna e o mesmo número de pixels.
[00045] A figura 4C representa um macrobloco particionado MBpart,q eu compreende oito partições P1 ... P8, tendo todas a forma de um "L", salvo a última partição P8, mas cada uma um número diferentes de pixels.
[00046] A figura 4D representa um macrobloco particionado MBpart que compreende quatro partições P1...P4, tendo quase todas a forma de um cruz, mas um número diferentes de pixels.
[00047] A figura 4E representa um macrobloco particionado MBpart que compreende quatro partições P1...P4, tendo quase todas a forma de uma linha partida contendo segmentos verticais, horizontais e diagonais, mas cada uma um número diferente de pixels.
[00048] A figura 4F representa um macrobloco particionado MBpart que compreende quatro partições P1 ... P4, tendo todas a forma de uma linha partida, cujas duas extremidades se unem, mas, cada uma, tem um número diferente de pixels.
[00049] Na sequência da etapa de particionamento C2, no decorrer de uma etapa C3 representada na figura 1, o módulo de particionamento PMB transmite o macrobloco MBpart que acaba de ser particionado em um módulo de cálculo de predição PRED representado na figura 2.
[00050] No decorrer de uma etapa C4 representada na figura 1, o módulo de cálculo de predição PRED calcula de predição PRED calcula diferentes pré-dicções possíveis do macrobloco particionado MBpart recebido. Considerando-se o fato de o codificador CO é de tipo Intra, o módulo de cálculo de predição PRED calcula as pré-dicções espaciais possíveis de cada partição P1,..., Pn+1 do macrobloco MBpart, em relação à última partição anteriormente codificada, depois decodificada.
[00051] De forma particularmente vantajosa, o módulo de cálculo de predição PREDE pré-diz as partições do macrobloco MBpart uma após a outra, uma partição corrente a predizer sendo predita com referência à partição que a precede imediatamente e que foi codificada, depois decodificada, de modo a servir de partição de referência.
[00052] Assim, a distância de predição é minimizada, já que a predição de uma partição é feita em relação a pixels de referência situados nas proximidades dos pixels dessa partição a predizer.
[00053] Com referência à figura 2, essa partição de referência é codificada conforme a norma H./264/MPEG-4AVC, isto é, que ela sofre, de forma conhecida em si: - uma codificação por transformada em cosseno discreto e quantificação que é efetuada por um módulo MTQ de transformada de quantificação; - depois uma decodificação por transformada em cosseno discreto inverso e quantificação inversa, a qual é feita pelo módulo MTQI de transformada e de quantificação inversa.
[00054] No modo de realização descrito, três tipos de pré-dicções espaciais são considerados que correspondem respectivamente a três ordens de percurso diferentes 01, 02, 03 das partições, nos quais e o módulo de cálculo de predição PRED tem a possibilidade de predizer as partes P1Pn+1 de um macrobloco particionado MBpart.
[00055] Para uma mesma forma de partição inicial P1 selecionada, três macroblocos MBpred, que foram preditos de acordo com as três ordens de percurso pré-citados, são ilustrados com referência à figura 5.
[00056] Supõe-se, no exemplo representado na figura 5, que cada macrobloco particionado MBpart a predizer é aquele da figura 4A, isto é, recortado em oito partições P1,..., P8 tendo a forma de linhas. Naturalmente que, todavia, as partições que têm as outras formas representadas nas figuras 4B a 4F são também adaptadas para serem preditas, de acordo com as três ordens de percurso 01, 02, 03 que vão ser descritos.
[00057] Com referência à figura 5A, as partições P1,..., P8 do macrobloco MBpart são preditas uma após a outra, na ordem na qual elas foram propagadas na figura 4A.
[00058] Mais precisamente, o módulo de cálculo de predição PRED da figura 2 percorre da esquerda para a direita uma primeira linha do macrobloco MBpart, a fim de predizer a primeira partição P1, dita partição inicial. A primeira linha de predição escolhida corresponde à primeira linha do macrobloco MBpart. O módulo de cálculo de predição PRED pré-diz essa partição de referência PR de um macrobloco vizinho (não representado), a qual vindo imediatamente ser codificada, depois decodificada, conforme explicado anteriormente. O módulo de cálculo de predição PRED libera uma primeira partição predita que é imediatamente codificada pelo módulo de transformada e de quantificação MTQ, depois decodificada pelo módulo MTQI de transformada e de quantificação inversa. Ao final dessas operações, uma partição de referência PR1 é obtida conforme representado na figura 5A.
[00059] O módulo de cálculo de predição PRED percorre em seguida da esquerda para a direita uma segunda linha do macrobloco MBpart. A segunda linha escolhida é a segunda linha do macrobloco MBpart. O módulo de cálculo de predição PRED escolhe afetar essa segunda linha na predição da segunda partição P2 do macrobloco MBpart. O módulo de cálculo de predição PRED pré-diz essa partição P2 com referência aos pixels da partição PR1 que acaba de imediatamente ser codificada, depois decodificada, como explicado acima. O módulo de cálculo de predição PRED libera uma segunda partição predita que é imediatamente codificada pelo módulo de transformada e de quantificação MTQ, depois decodificada pelo módulo MTQI de transformada e de quantificação inversa. Ao final dessas operações, uma partição de referência PR2 é obtida, conforme representado na figura 5A.
[00060] O módulo de cálculo de predição PRED procede, da forma descrita, acima para as partições P3, P4, P5, P6, P7, depois P8 do macrobloco MBpart da figura 4A. Ao final dessa predição e com referência à figura 5A, um macrobloco predito MBpred é obtido, as partições preditas PR1, PR2, ... PR8 sucedendo-se no macrobloco predito MBpred, na ordem em que as partições P1, P2,...P8 associadas tinham sido propagadas.
[00061] Com referência a seguir à figura 5B, as partições do macrobloco MB são preditas uma após a outra, mas em uma ordem diferente daquela na qual foram propagadas na figura 4A.
[00062] Mais precisamente, o módulo de cálculo de predição PRED da figura 2 percorre da esquerda para a direita uma primeira linha do macrobloco MBpart representado na figura 4A que é destinada a ser afetada na predição da partição inicial P1. A primeira linha escolhida corresponde à segunda linha do macrobloco MBpart. O módulo de cálculo de predição PRED pré-diz então essa partição P1 em referência aos pixels da partição de referência PR de um macrobloco vizinho (não representado), a qual vindo imediatamente ser codificada, depois decodificada, conforme explicado anteriormente. Embora os pixels de referência da partição de referência PR não estejam imediatamente nas proximidades dos pixels a predizer, como era o caso no exemplo da figura 5A, esses pixels de referência o são, todavia, suficientemente para que a distância de predição seja minimizada corretamente. O módulo de cálculo de predição PRED libera uma primeira partição predita que é imediatamente codificada pelo módulo de transformada e de quantificação MTQ, depois decodificada pelo módulo MTQI de transformada e de quantificação inversa. Ao final dessas operações, uma partição de referência PR1 é obtida, conforme representado na figura 5B.
[00063] O módulo de cálculo de predição PRED percorre em seguida da esquerda para a direita uma segunda linha do macrobloco PBpart que é destinada a ser afetada na predição da segunda partição P2. A segunda linha escolhida é a primeira linha do macrobloco MBpart. O módulo de cálculo de predição PRED pré-diz essa partição P2 com referência aos pixels da partição PR1 que acaba imediatamente de ser codificada, depois decodificada, como explicado acima, mas também com referência aos pixels dessa partição de referência PR.
[00064] O módulo de cálculo de predição PRED libera uma segunda partição predita que é imediatamente codificada pelo módulo de transformada e de quantificação MTQ, depois decodificada pelo módulo MTQI de transformada e de quantificação inversa. Ao final dessas operações, uma partição de referência PR2 é obtida, conforme representado na figura 5B.
[00065] A predição da predição 2 é assim muito mais precisa do que no exemplo da figura 5A, já que a partição P2 é predita em referência a duas partições de referência imediatamente vizinhas desta, ao invés de ser predita com referência a uma única partição de referência.
[00066] O módulo de cálculo de predição PRED procede da forma descrita acima, efetuando a predição das partições P3, P4, P5, P6, P7 e P8, respectivamente sobre as quarta, terceira, sexta, quinta, oitava e sétima linhas do macrobloco MBpart da figura 4A. Ao final dessa predição e com referência à figura 5B, um macrobloco pré-diz MBpred é obtido, as partições preditas PR2, PR1,...Pi+1, Pi, ..., PR8, PR7 sucedendo-se no macrobloco predito MBpred, em uma ordem diferente da ordem de propagação das partes P1 a P8.
[00067] A escolha da ordem de percurso que acaba de ser descrita em relação com um particionamento de tipo linear permite obter um ganho de aproximadamente 4 % sobre esse fluxo em relação aos ganhos obtidos nas codificações Intraclássicas.
[00068] Com referência a seguir à figura 5C, as partições do macrobloco MBpart são preditas uma após a outra, ainda em uma outra ordem diferentes daquela na qual foram propagadas na figura 4A. A ordem de percurso descrita na figura 5C é de tipo dicotômico.
[00069] Mais precisamente, o módulo de cálculo de predição PRED da figura 2 percorre da esquerda para a direita uma primeira linha do macrobloco MBpart representado na figura 4A que é destinada a ser afetada na predição da partição inicial P1. A primeira linha escolhida corresponde à última linha do macrobloco MBpart. O módulo de cálculo de predição PRED prediz então essa partição P1 com referência aos pixels da partição de referência PR de um macrobloco vizinho (não representado), a qual vindo imediatamente ser codificada, depois decodificada, conforme explicado anteriormente. O módulo de cálculo de predição PRED libera uma primeira parte predita que imediatamente codificada pelo módulo de transformada e de quantificação MTQ, depois decodificada pelo módulo MTQI de transformada e de quantificação inversa. Ao final dessas operações, uma partição de referência PR1 é obtida, conforme representado na figura 5C.
[00070] O módulo de cálculo de predição PRED percorre em seguida da esquerda para a direita uma segunda linha do macrobloco MBpart que é destinada a ser afetada à predição da segunda partição P2. A segunda linha escolhida é a quarta linha do macrobloco MBpart. O módulo de cálculo de predição PRED prediz essa partição P2 em referência aos pixels da partição PR1 que acaba imediatamente de ser codificada, depois decodificada, conforme explicado acima, mas também com referência aos pixels dessa partição de referência PR.
[00071] O módulo de cálculo de predição PRED libera uma segunda partição predita que é imediatamente codificada pelo módulo de transformada e de quantificação MRQ, depois decodificada pelo módulo MTQI de transformada e de quantificação inversa. Ao final dessas operações, uma partição de referência PR2 é obtida, conforme representado na figura 5C.
[00072] A predição da partição P2, embora efetuada com pixels de referência sensivelmente afastados desta, é, todavia, muito mais precisa do que no exemplo da figura 5A, já que a partição P2 é predita com referência a duas partições de referência, ao invés de ser predita com referência a uma única partição de referência.
[00073] O módulo de cálculo de predição PRED percorre em seguida da esquerda para a direita uma terceira linha do macrobloco MBpart que é destinada a ser afetada na predição da terceira partição P3. A terceira linha escolhida é a segunda linha do macrobloco MBpart. O módulo de cálculo de predição PRED prediz essa partição P3 com referência aos pixels da partição PR2 que acaba imediatamente de ser codificada, depois decodificada, conforme explicado acima, mas também com referência aos pixels dessa partição de referência PR.
[00074] O módulo de cálculo de predição PRED libera uma terceira partição predita que é imediatamente codificada pelo módulo de transformada e de quantificação MTQ, depois decodificada pelo módulo MTQI de transformada e de quantificação inversa. Ao final dessas operações, uma partição de referência PR3 é obtida, conforme representado na figura 5C.
[00075] O módulo de cálculo de predição PRED percorre em seguida da esquerda para a direita uma quarta linha do macrobloco MBpart que é destinada a ser afetada na predição da quarta partição P4. A quara linha escolhida é a sexta linha do macrobloco MBpart. O módulo de cálculo de predição PRED prediz essa partição P4 com referência aos pixels das partições de referência as mais próximas desta, a saber os pixels da partição PR1 e os pixels da partição PR1 e os pixels da partição PR2.
[00076] O módulo de cálculo de predição PRED libera uma quarta partição predita que é imediatamente codificada pelo módulo de transformada e de quantificação MTQ, depois decodificada pelo módulo MTQI de transformada e de quantificação inversa. Ao final dessas operações, uma partição de referência PR4 é obtida, como representada na figura 5C.
[00077] O módulo de cálculo de predição PRED percorre em seguida da esquerda para a direita uma quinta linha do macrobloco MBpart que é destinada a ser afetada à predição da quinta partição P5.A quinta linha escolhida é a primeira linha do macrobloco MBpart. O módulo de cálculo de predição PRED predito essa partição P5 em referência aos pixels das partições de referência as mais próximas desta, a saber os pixels da partição PR e os pixels da partição PR3.
[00078] O módulo de cálculo de predição PRED libera uma quinta partição predita que é imediatamente codificada pelo módulo transformada e de quantificação MTQ, depois decodificada pelo módulo MTQI de transformada e de quantificação inversa. Ao final dessas operações, uma partição de referência PR5 é obtida, conforme representado na figura 5C.
[00079] O módulo de cálculo de predição PRED percorre em seguida da esquerda para a direita um sexta linha do macrobloco MBpart que é destinada a ser afetada na predição da sexta partição P6. A sexta linha escolhida é a terceira linha do macrobloco MBpart. O módulo de cálculo de predição PRED prediz essa partição P6: - com referência aos pixels das partições de referência as mais próximas desta, a saber os pixels das partições PR2 e PR3; - mas também com referência aos pixels das partições de referência mais afastadas desta e defasadas em relação a esta de um número de partições idêntico, a saber os pixels das partições PR e PR4.
[00080] O módulo de cálculo de predição PRED libera uma sexta parte predita que é imediatamente codificada pelo módulo de transformada e de quantificação MTQ, depois decodificada pelo módulo MRQI de transformada e de quantificação inversa. Ao final dessas operações, uma partição de referência PR6 é obtida, conforme representado na figura 5C.
[00081] O módulo de cálculo de predição PRED percorre em seguida da esquerda para a direita uma sétima linha do macrobloco MBpart que é destinada a ser afetada na predição da sétima partição P7. A sétima linha escolhida é a quinta linha do macrobloco MBpart. O módulo de cálculo de predição PRED prediz essa partição P7: - com referência aos pixels das partições de referência os mais próximos desta, a saber os pixels das partições PR2 e PR4; - ,mas também com referência aos pixels das partições de referência mais afastadas desta e defasadas em relação a esta última de um número de partições idênticas, a saber os pixels das partições PR1 e PR5.
[00082] O módulo de cálculo de predição PRED libera uma sétima partição predita que é imediatamente codificada pelo módulo de transformada e de quantificação MTQ, depois decodificada pelo módulo MTQI de transformada e de quantificação inversa. Ao final dessas operações, uma partição de referência PT7 é obtida, conforme representado na figura 5C.
[00083] O módulo de cálculo de predição PRED percorre em seguida da esquerda para a direita uma oitava linha de macrobloco MBpart que é destinada a ser afetada na predição da oitava partição P8. A oitava linha escolhida é a sétima linha do macrobloco MBpart. O módulo de cálculo de predição PRED prediz essa partição P8 com referência aos pixels das partições de referência os mais próximos desta, a saber os pixels das partições PR1 e PR4.
[00084] O módulo de cálculo de predição PRED libera uma oitava partição predita que é imediatamente codificada pelo módulo de transformada e de quantificação MTQ, depois decodificada pelo módulo MTQI de transformada e de quantificação inversa. Ao final dessas operações, uma partição de referência PR8 é obtida, conforme representado na figura 5C.
[00085] De acordo com a ordem de percurso representada na figura 5C, embora a precisão de certas partições seja efetuada com pixels de referência sensivelmente afastadas destas, a precisão da predição do macrobloco MBpart em sua totalidade permanece elevada, considerando-se o fato de certas partições serem preditas com referência a duas partições de referência e de certas outras partições poderem ser preditas com referência a quatro partições de referência.
[00086] Ao final dessa predição e com referência à figura 5C, um macrobloco predito MBpred é obtido, as partições preditas PR5, PR3, PR2, ....PR8, PR1 sucedendo-se no macrobloco predito MBpred, segundo uma ordem dicotômica diferente da ordem de propagação das partições P1 a P8.
[00087] A escolha da ordem de percurso que acaba de ser descrita em relação com um particionamento de tipo linear permite obter um ganho de aproximadamente 3 % sobre a vazão em relação aos ganhos obtidos nas codificações intraclássicas.
[00088] A terceira ordem de percurso das partições que acaba de ser descrita convém particularmente à predição de um macrobloco MBpart de textura não uniforme, o que é o caso quando a imagem IE contém numerosos detalhes, ou variações de luminância sobre motivos ligados à partição. Foi observado, em particular, que, selecionando-se uma partição inicial P1 em forma de "L"conforme representado na figura 3C, o custo da codificação utilizado em termos de fluxo e distorção era sensivelmente reduzido.
[00089] Um macrobloco predito MBPred que foi predito, segundo essa terceira ordem de percurso, sobre a base da propagação de uma partição inicial P1 em forma de "L", foi representado na figura 6.
[00090] O custo em termos de vazão e distorção é certamente elevado para se obter a primeira partição predita PR1 que é muito afastada da partição de referência PR. Todavia, essa primeira predição é feita sobre um único pixel que apresenta a vantagem de poder servir à predição dos pixels das outras partições do macrobloco MBpart da figura 4C. No final, a predição do macrobloco MBpart em sua totalidade é de maior precisão que no caso de uma predição por blocos clássico ou que no caso das outras ordens de percurso de partições que foram descritos acima.
[00091] Uma vez as predicções possíveis calculadas pelo módulo de cálculo de predição PRED, no decorrer de uma etapa C5 representada na figura 1, um módulo de decisão DCN, representado na figura 2, percorrem os macroblocos particionados da imagem IE e escolhem, nessa etapa C5, o modo de predição utilizado para codificar cada um desses macroblocos. Dentre as predicções possíveis para um macrobloco, o módulo e decisão DCN escolhe a predição ótima segundo um critério fluxo distorção bem conhecido do técnico.
[00092] Para um macrobloco MB corrente a codificar, o módulo de decisão DCN coloca, por exemplo, em competição: - as três ordens de percurso de partições representadas na figura 5, o macrobloco MB corrente que foi particionado, por exemplo, como representado na figura 4A; - e o modo de predição clássico, o macrobloco MB corrente que foi particionado segundo blocos de forma quadrada, de tamanho 8 x 8.
[00093] Segundo uma outra variante, o módulo de decisão DC coloca, por exemplo, em competição: - as duas ordens de percurso de partições 01, 02 representadas respectivamente nas figuras 5A e 5B, o macrobloco MB corrente que foi particionado, por exemplo, conforme representado na figura 4A; - a ordem de percurso dicotômico 03 representada na figura 6, o macrobloco MB corrente tendo sido particionado, por exemplo, conforme representado na figura 4C; e - o modo de predição clássica, o macrobloco M<B corrente tendo sido particionado, segundo blocos de forma quadrada, de tamanho 8x8.
[00094] Cada monobloco predito MBpred é codificado no decorrer de uma etapa C6, conforme na norma H.264/MPEG-4 AVC. Mais precisamente com referência à figura 7, na qual uma parte T de macrobloco codificado da imagem IE está representada, cada macrobloco codificado comporta um campo CH1 que precisa o tipo de codificação do macrobloco MB considerado, Intra no caso do modo de realização representado, um campo CH2, indicando a forma da partição selecionada (quadrada, linha, coluna cruz, "L", etc...), um campo CH3 indicando o modo de predição utilizado (modo de predição clássica ou ordens de percurso 01, 02 ou 03, tais como descritos acima), e um campo CH4 codificando os valores dos resíduos macrobloco predito MBpred.
[00095] Conforme se pode ver na figura 8, as informações codificadas no campo CH3 ficam contidas previamente em uma base de dados BD2 do codificador CO representado na figura 2.
[00096] Com referência de novo à figura 8, essas informações de correspondência são memorizadas em uma mesa de correspondência TC a quatro colunas. A primeira coluna compreende um campo "partição" que lista todas as partições de um macrobloco MBpart, na ordem em que elas foram propagadas. As segunda e quarta colunas compreendem, cada uma, um campo "ordem de percurso"O1, 02, 03 que afeta em cada partição propagada um número de ordem de percurso específico para sua predição, conforme foi descrito acima.
[00097] Uma vez essa codificação estrutural efetuada pelo módulo de decisão DCN, os coeficientes de resíduos se existirem, correspondentes aos blocos da imagem IE, são enviados ao módulo MTQ de transformada e de quantificação, para sofrer transformadas em cosseno discretas, depois uma quantificação. As partes de macroblocos com esses coeficientes quantificados são em seguida transmitidas ao módulo CE de codificação entrópica, para produzir, com as outras imagens da sequência vídeo já codificadas da mesma forma que a imagem IE, um fluxo vídeo F, binário, codificado, segundo a invenção.
[00098] O fluxo binário F assim codificado é transmitido por uma rede de comunicação a um terminal distante. Este comporta um decodificador DEC, de acordo com a invenção, representado na figura 9.
[00099] O fluxo binário F é inicialmente enviado a um módulo DE de decodificação entrópica, decodificação inversa daquela efetuada pelo módulo de codificação entrópica CE representada na figura 2. Depois, para cada macrobloco de imagem a reconstruir, os coeficientes decodificados pelo módulo DE são enviados a um módulo QTI de quantificação inversa e de transformada inversa.
[000100] Um módulo RI de reconstrução de imagem recebe então dados decodificados correspondente aos dados produzidos pelo módulo DCN (figura 2) na etapa C5 de codificação, segundo a imagem, aos erros de transmissão aproximadamente. O módulo RI utiliza etapas D1 a D4 do processo de decodificação, segundo a invenção, tal como representadas na figura 10.
[000101] A primeira etapa D1 é a decodificação de estruturas de dados codificados em uma parte T de um macrobloco corrente da imagem IE a decodificar.
[000102] De forma conhecida em si, o módulo de reconstrução RI determina no campo CH1 (figura 7) que os dados da parte T sofreram uma codificação de tipo Intra.
[000103] No decorrer dessa mesma etapa, o módulo de reconstrução RI determina, de acordo com o processo de decodificação, de acordo com a invenção: - a forma de partição inicial P1 a reconstruir, graças ao campo CH2 (figura 7); - o modo de predição ótima selecionado pelo módulo de decisão DCN (figura 2), graças ao campo CH3.
[000104] Se, por exemplo, a partição inicial P1 tem a forma de um "L"conforme representado figura 4C e que o modo de predição ótima é da ordem de percurso 03 representado na figura 5C, o módulo de reconstrução RI deduz daí a ordem na qual vão ser decodificadas as diferentes partições P1 a P8 do macrobloco corrente. Essa dedução é feita por meio da mesa TC representada na figura 8 e memorizada no decodificador DEC.
[000105] A etapa seguinte D2 representada na figura 10 é o particionamento do macrobloco corrente a decodificar, segundo a partição inicial P1 determinada na etapa D1. Esse particionamento é feito por um módulo PMB de particionamento de macroblocos que se assemelha em todos os pontos àquele representado na figura 2.
[000106] Para isso, com referência à figura 10, o módulo de particionamento PMB compreende: - um submódulo de recorte PART destinado a recortar uma primeira vez o macrobloco corrente a decodificar segundo a partição inicial P1 determinada; - um submódulo de propagação PROP destinado a propagar essa partição inicial determinada P1 um número n de vezes (n sendo um inteiro) no macrobloco MB, até que este seja recortado em sua totalidade em um número n +1 de partições de forma predeterminada.
[000107] O módulo de propagação PMB utiliza um algoritmo de propagação do tipo daquele que foi descrito anteriormente.
[000108] Na sequência da etapa de particionamento D2, no decorrer de uma etapa D3 representada na figura 10, o módulo de particionamento PMB transmite o macrobloco corrente a decodificar e que acaba de ser particionado em n + 1 partições, a um módulo de decodificação de partições DECP representado na figura 9.
[000109] No decorrer de uma etapa D4 representada na figura 10, o módulo DECP efetua então uma decodificação dos n+1 partições, segundo a ordem de decodificação determinado na etapa D1.
[000110] Para isso, para cada partição a decodificar de um macrobloco corrente a decodificar, o módulo de decodificação DECP utiliza valores de predição da partição imediatamente precedente que são fornecidas pelo módulo PRED de cálculo de predição, representado na figura 9.
[000111] O módulo PRED de cálculo de predição recebe com efeito os valores das partições anteriormente decodificadas pelo módulo de reconstrução RI, valores que ele mantém na memória.
[000112] As n + 1 partições de um macrobloco da imagem IE são decodificadas, utilizando a predição espacial intraindicado no campo CH1 representado na figura 7.
[000113] Uma vez todos os macroblocos da imagem IE decodificados, o módulo RI de reconstrução de imagem fornece na saída do decodificador DEC, uma imagem ID correspondente à decodificação da imagem IE.

Claims (6)

1. Processo de codificação de uma imagem ou de uma sequência de imagens que geram um fluxo (F) de dados que comportam dados representativos de pelo menos um grupo de pixels em uma dessas imagens (IE), o dito processo sendo realizado por um dispositivo de codificação, caracterizado pelo fato de comporta as etapas de: - seleção (C1), para um grupo de pixels (MB) a ser codificado, de uma partição inicial (P1) de forma linear predeterminada em um conjunto predeterminado de partições de forma linear predeterminada; - recorte (C2) parcial desse grupo de pixels a ser codificado segundo essa partição inicial selecionada; - propagação (C2) dessa partição inicial selecionada no resto deste grupo de pixels a ser codificado, até que este seja recortado em sua totalidade em uma pluralidade de partições, o resto do dito grupo de pixels sendo recortado em uma pluralidade de partições cuja respectiva forma é adaptada de modo que as partições não sobreponham o resto do grupo de pixels; - predição (C4) do dito grupo de pixels por meio de: - seleção, no dito grupo de pixels, de uma primeira partição corrente a ser predita; - predizer dita primeira partição corrente em relação a ao menos uma partição que tenha sido já codificada e depois decodificada, pertencendo a um grupo de pixels próximo, - codificar e decodificar dita primeira partição corrente, - predizer outras partições do dito grupo de pixels uma após a outra, cada uma das partições sendo predita em relação a ao menos uma partição do dito grupo de pixels, esta partição tendo sido previamente selecionada, codificada e decodificada, em que as partições do dito grupo de pixels são preditas de acordo com uma ordem de percurso (01) das ditas partições, selecionada (C5)dentre uma pluralidade de ordens de percurso, de uma ordem de percurso, dita ordem de percurso correspondendo a uma ordem na qual as partições do dito grupo de pixels tenham sido propagadas e selecionadas como otimizantes da predição do dito grupo de pixels de acordo com um critério de fluxo de distorção, uma partição corrente selecionada dentre ditas outras partições sendo predita em relação a uma partição do dito grupo de pixels o qual foi previamente selecionado, predito, codificado e então decodificado e a qual seja imediatamente vizinho da dita partição corrente, - codificação (C6) do dito grupo de pixels predito.
2. Processo de codificação, de acordo com a reivindicação 1, caracterizado pelo fato de que o fluxo de dados (F) compreende informações relativas à forma dessa partição selecionada (CH2) e à ordem de percurso (01; 02; 03) que foi selecionado (CH2) e à ordem de percurso (01) que foi selecionado (CH3).
3. Processo de decodificação de um fluxo (F) de dados representativo de uma imagem ou de uma sequência de imagens, esse fluxo (F) comportando dados representativos de pelo menos um grupo de pixels em uma dessas imagens (IE), o dito processo sendo realizado por um dispositivo de decodificação, caracterizado pelo fato de comportar as etapas de: - determinação (D1), nesse fluxo (F) a decodificar, de uma partição inicial de forma linear predeterminada; - recorte (D2) parcial desse grupo de pixels a decodificar, segundo essa partição inicial determinada; - propagação (D2) dessa partição inicial determinada no resto deste grupo de pixels a decodificar até que este seja recortado em sua totalidade em uma pluralidade de partições, o resto do dito grupo de pixels sendo recortado em uma pluralidade de partições cuja respectiva forma é adaptada de modo que as partições não sobreponham o resto do grupo de pixels; - determinação, nesse fluxo (F) a decodificar, de uma ordem de percurso na qual as partições do dito grupo de pixels serão preditas, dita ordem de percurso correspondendo à ordem na qual as partições do dito grupo de pixels foram propagadas e sendo selecionada na codificação do dito grupo de pixels, dentre uma pluralidade de ordens de percurso, como otimização da predição do dito grupo de pixels; - predição (C4) do dito grupo de pixels por meio de: - seleção, no dito grupo de pixels, de uma primeira partição corrente a ser predita; - predizer dita primeira partição corrente em relação a ao menos uma partição que tenha sido já codificada e depois decodificada, pertencendo a um grupo de pixels próximo, - decodificar dita primeira partição corrente predita, - predizer as outras partições do dito grupo de pixels uma após a outra, segundo essa ordem de percurso determinada, cada uma das partições sendo predita em relação a ao menos uma partição do dito grupo de pixels, esta partição tendo sido previamente selecionada, codificada e decodificada e a qual seja imediatamente vizinho da dita partição corrente, - decodificar (D4) dito grupo de pixels predito.
4. Sinal portador de um fluxo (F) de dados representativo de uma imagem ou de uma sequência de imagens que são codificados de acordo com um processo de codificação tal como definido na reivindicação 1, esse fluxo (F) comportando dados representativos de pelo menos um grupo de pixels em uma dessas imagens (IE), caracterizado pelo fato de: - determinados desses dados representativos serem relativos a uma forma linear predeterminada de uma partição inicial que foi selecionada no momento da predição e da codificação desse grupo de pixels; e - determinados outros desses dados representativos serem relativos a dita selecionada ordem de percurso das partições que formam esse grupo de pixels.
5. Dispositivo de codificação (CO) para codificação de uma imagem ou de uma sequência de imagens que geram um fluxo (F) de dados que comporta dados representativos de pelo menos um grupo de pixels em uma dessas imagens (IE), caracterizado pelo fato de comportar: - meios de seleção (SP), para um grupo de pixels (MB) a codificar, de uma partição inicial (P1) de forma linear predeterminada em um conjunto predeterminado de partições de fora linear predeterminada; - meios de recorte (PMB) parcial desse grupo de pixels a ser codificado, segundo essa partição inicial selecionada; - meios de propagação (PROP) dessa partição inicial selecionada no resto do dito grupo de pixels a serem codificados, até que este grupo seja recortado em sua totalidade em uma pluralidade de partições, o resto do dito grupo de pixels sendo recortado em uma pluralidade de partições, cuja respectiva forma é adaptada de modo que as partições não sobreponham o resto do grupo de pixels; - meios (PRED) para predizer dito grupo de pixels compreendendo: - selecionar, no dito grupo de pixels, de uma primeira partição corrente a ser predita, - predizer dita primeira partição corrente em relação a ao menos uma partição que tenha sido já codificada e depois decodificada, pertencendo a um grupo de pixels próximo, - codificar e decodificar dita primeira partição corrente - predição as outras partições do dito grupo de pixels uma após a outra de acordo com a pluralidade de ordens de percurso das ditas partições, cada uma das partições sendo predita em relação a ao menos uma partição do dito grupo de pixels, esta partição tendo sido previamente selecionada, codificada e decodificada, em que as partições do dito grupo de pixels são preditas de acordo com uma ordem de percurso (01) das ditas partições selecionadas dentre a dita pluralidade de ordens de percurso, dita ordem de percurso correspondendo a uma ordem na qual as partições do dito grupo de pixels tenham sido propagadas e selecionadas como uma ordem de percurso otimizando a predição do dito grupo de pixels de acordo com um critério de fluxo de distorção, uma partição corrente selecionada dentre ditas outras partições sendo predita em relação a uma partição do dito grupo de pixels o qual foi previamente selecionado, predito, codificado e então decodificado e a qual seja imediatamente vizinho da dita partição corrente; - meios (CE) de codificar dito grupo de pixels predito.
6. Dispositivo de decodificação (DEC) para decodificação de um fluxo (F) de dados representativo de uma imagem ou de uma sequência de imagens, esse fluxo (F) comportando dados representativos de pelo menos um grupo de pixels em uma dessas imagens (IE), caracterizado pelo fato de comportar: - meios (DE) de determinação, nesse fluxo (F) a decodificar, de um a partição inicial de forma linear predeterminada; - meios de recorte (PART) parcial desse grupo de pixels a decodificar, segundo essa partição inicial determinada; - meios de propagação (PROP) dessa partição inicial determinada no resto deste grupo de pixels a decodificar, até que este seja recortado em sua totalidade em uma pluralidade de partições, o resto do dito grupo de pixels sendo recortado em uma pluralidade de partições cuja respectiva forma é adaptada de modo que as partições não sobreponham o resto do grupo de pixels; - meios (DE) de determinação, nesse fluxo (F) a decodificar, de uma ordem de percurso na qual as partições do dito grupo de pixels serão preditas, dita ordem de percurso correspondendo à ordem na qual as partições do dito grupo de pixels foram propagadas e sendo selecionada na codificação do dito grupo de pixels, dentre uma pluralidade de ordens de percurso, como otimização da predição do dito grupo de pixels; - meios (PRED) para predizer dito grupo de pixels compreendendo: - selecionar, no dito grupo de pixels, de uma primeira partição corrente a ser predita, - predizer dita primeira partição corrente em relação a ao menos uma partição que tenha sido já codificada e depois decodificada, pertencendo a um grupo de pixels próximo, - decodificar dita primeira partição corrente predita - predizer as outras partições do dito grupo de pixels uma após a outra de acordo com a pluralidade de ordens de percurso das ditas partições, cada uma das partições sendo predita em relação a ao menos uma partição do dito grupo de pixels, esta partição tendo sido previamente selecionada, codificada e decodificada e que seja imediatamente vizinha da dita partição corrente, - meios (DECP) para decodificar dito grupo de pixels.
BRPI0911307-0A 2008-04-15 2009-04-06 Codificação e decodificação de uma imagem ou de uma sequência de imagens recortadas, segundo partições de pixels de forma linear BRPI0911307B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0852532 2008-04-15
FR0852532 2008-04-15
PCT/FR2009/050584 WO2009136051A2 (fr) 2008-04-15 2009-04-06 Codage et decodage d'une image ou d'une sequence d'images decoupees selon des partitions de pixels de forme lineaire

Publications (2)

Publication Number Publication Date
BRPI0911307A2 BRPI0911307A2 (pt) 2015-09-29
BRPI0911307B1 true BRPI0911307B1 (pt) 2020-09-29

Family

ID=40130856

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0911307-0A BRPI0911307B1 (pt) 2008-04-15 2009-04-06 Codificação e decodificação de uma imagem ou de uma sequência de imagens recortadas, segundo partições de pixels de forma linear

Country Status (8)

Country Link
US (1) US8842731B2 (pt)
EP (1) EP2277318B1 (pt)
JP (1) JP5400133B2 (pt)
KR (1) KR101595899B1 (pt)
CN (1) CN102007770B (pt)
BR (1) BRPI0911307B1 (pt)
RU (1) RU2518390C2 (pt)
WO (1) WO2009136051A2 (pt)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2969456A1 (fr) * 2010-12-15 2012-06-22 France Telecom Procedes et dispositifs de codage et de decodage d'au moins une image mettant en œuvre une selection des pixels a predire, programme d'ordinateur correspondant
KR101383775B1 (ko) * 2011-05-20 2014-04-14 주식회사 케이티 화면 내 예측 방법 및 장치
GB2494172B (en) * 2011-09-01 2014-10-22 Canon Kk Communication of video information
PL3454561T3 (pl) * 2011-09-14 2020-05-18 Samsung Electronics Co., Ltd. Sposób i urządzenie do kodowania jednostki predykcji (pu) w oparciu o jej rozmiar i odpowiadające urządzenie do dekodowania
WO2017030260A1 (ko) * 2015-08-19 2017-02-23 엘지전자(주) 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2018128466A1 (ko) * 2017-01-09 2018-07-12 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
KR20180082330A (ko) 2017-01-09 2018-07-18 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
GB2567427B (en) 2017-10-06 2020-10-07 Imagination Tech Ltd Data compression
CN117041594B (zh) 2018-12-30 2024-05-14 北京达佳互联信息技术有限公司 用于对视频进行编码的方法、设备、存储介质和程序产品

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04162893A (ja) * 1990-10-26 1992-06-08 Hitachi Ltd ハイブリッド符号化方式
JPH04250774A (ja) * 1991-01-08 1992-09-07 Murata Mach Ltd 符号化方式
AU718453B2 (en) * 1996-07-17 2000-04-13 Sony Corporation Image coding and decoding using mapping coefficients corresponding to class information of pixel blocks
EP0859524B1 (en) * 1996-08-29 2007-06-27 Matsushita Electric Industrial Co., Ltd. Image decoder and image memory overcoming various kinds of delaying factors caused by hardware specifications specific to image memory by improving storing system and reading-out system
AU4884397A (en) * 1996-11-07 1998-05-29 Matsushita Electric Industrial Co., Ltd. Image encoder and image decoder
JP3052893B2 (ja) * 1997-05-16 2000-06-19 日本電気株式会社 動画像符号化装置
FI117534B (fi) * 2000-01-21 2006-11-15 Nokia Corp Menetelmä digitaalisten kuvien suodattamiseksi ja suodatin
RU2314656C2 (ru) * 2002-06-11 2008-01-10 Нокиа Корпорейшн Внутреннее кодирование, основанное на пространственном прогнозировании
WO2004013810A1 (en) * 2002-07-31 2004-02-12 Koninklijke Philips Electronics N.V. System and method for segmenting
US6795584B2 (en) * 2002-10-03 2004-09-21 Nokia Corporation Context-based adaptive variable length coding for adaptive block transforms
EP1582063B1 (en) * 2003-01-07 2018-03-07 Thomson Licensing DTV Mixed inter/intra video coding of macroblock partitions
KR100695141B1 (ko) * 2005-02-15 2007-03-14 삼성전자주식회사 영상처리시스템에 있어서 메모리 억세스장치 및 방법, 데이터 기록장치 및 방법과 데이터 독출장치 및 방법
JP4708819B2 (ja) * 2005-03-14 2011-06-22 キヤノン株式会社 画像処理装置、方法、コンピュータプログラム及び記憶媒体
KR20060123939A (ko) * 2005-05-30 2006-12-05 삼성전자주식회사 영상의 복부호화 방법 및 장치
US7747096B2 (en) * 2005-07-15 2010-06-29 Samsung Electronics Co., Ltd. Method, medium, and system encoding/decoding image data
KR100727972B1 (ko) * 2005-09-06 2007-06-14 삼성전자주식회사 영상의 인트라 예측 부호화, 복호화 방법 및 장치
EP1971154A4 (en) * 2006-01-05 2010-10-27 Nippon Telegraph & Telephone VIDEO CODING METHOD AND DECODING METHOD, DEVICE THEREFOR, DEVICE THEREFOR AND STORAGE MEDIUM WITH THE PROGRAM
JP2007336435A (ja) * 2006-06-19 2007-12-27 Matsushita Electric Ind Co Ltd デジタル放送の送信装置及び受信装置
US8270490B2 (en) * 2006-07-06 2012-09-18 Canon Kabushiki Kaisha Motion vector detection apparatus, motion vector detection method, image encoding apparatus, image encoding method, and computer program
CN101502124B (zh) * 2006-07-28 2011-02-23 株式会社东芝 图像编码和解码的方法以及装置
US20090196342A1 (en) * 2006-08-02 2009-08-06 Oscar Divorra Escoda Adaptive Geometric Partitioning For Video Encoding
WO2008042127A2 (en) * 2006-09-29 2008-04-10 Thomson Licensing Geometric intra prediction
WO2008048489A2 (en) * 2006-10-18 2008-04-24 Thomson Licensing Method and apparatus for video coding using prediction data refinement
EP2090112A4 (en) * 2006-11-07 2014-04-23 Samsung Electronics Co Ltd METHOD AND DEVICE FOR ENCODING AND DECODING BASED ON INTRA PREDICTION
KR101365570B1 (ko) * 2007-01-18 2014-02-21 삼성전자주식회사 인트라 예측 부호화, 복호화 방법 및 장치
JP2009055542A (ja) * 2007-08-29 2009-03-12 Toshiba Corp 動画像符号化装置および動画像符号化方法
US8098733B2 (en) * 2008-03-10 2012-01-17 Neomagic Corp. Multi-directional motion estimation using parallel processors and pre-computed search-strategy offset tables

Also Published As

Publication number Publication date
RU2518390C2 (ru) 2014-06-10
EP2277318B1 (fr) 2020-11-04
RU2010146196A (ru) 2012-05-20
EP2277318A2 (fr) 2011-01-26
KR101595899B1 (ko) 2016-02-19
CN102007770A (zh) 2011-04-06
JP2011517250A (ja) 2011-05-26
US8842731B2 (en) 2014-09-23
KR20100137002A (ko) 2010-12-29
JP5400133B2 (ja) 2014-01-29
WO2009136051A3 (fr) 2010-03-18
US20110026594A1 (en) 2011-02-03
BRPI0911307A2 (pt) 2015-09-29
CN102007770B (zh) 2013-07-31
WO2009136051A2 (fr) 2009-11-12

Similar Documents

Publication Publication Date Title
BRPI0911307B1 (pt) Codificação e decodificação de uma imagem ou de uma sequência de imagens recortadas, segundo partições de pixels de forma linear
AU2017208363B2 (en) Sample array coding for low-delay
JP5826747B2 (ja) 適応的な幾何学的な分割を使用した映像符号化及び復号化の方法及び装置
US9179147B2 (en) Soft decision and iterative video coding for MPEG and H.264
ES2831415T3 (es) Codificación de imagen con bajo retardo
KR101839629B1 (ko) 비디오 인코딩 및 디코딩을 위한 적응적 템플릿 매칭 예측 방법 및 장치
US8761240B2 (en) Methods and devices for data compression using context-based coding order
KR101826294B1 (ko) 이미지들을 코딩 및 디코딩하는 방법, 코딩 및 디코딩 디바이스 및 그에 대응하는 컴퓨터 프로그램들
US8436755B2 (en) Methods and devices for reducing sources in binary entropy coding and decoding
WO2015078422A1 (zh) 图像编码、解码方法及装置
KR20110112171A (ko) 적응적 계수 스캔 순서를 이용한 영상 부호화, 복호화 방법 및 장치
KR20130119467A (ko) 인코딩 방법 및 장치, 디코딩 방법 및 장치 및 컴퓨터 판독가능한 저장 매체
BR112013032716B1 (pt) método de decodificação de vídeo e método de codificação de vídeo para compensação de movimento
WO2013071721A1 (en) Method and apparatus of video encoding with partitioned bitstream
WO2012168242A2 (en) Method and device for encoding a sequence of images and method and device for decoding a sequence of image
US20220094925A1 (en) Region based intra block copy
JP2021077957A (ja) 動画像符号化装置及びその動作方法
WO2018135520A1 (ja) 量子化装置、量子化方法および記録媒体
KR102379196B1 (ko) 처리 장치들 및 그 제어 방법들
JP4563981B2 (ja) 映像符号化方法、映像符号化装置、映像符号化プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体
KR20180018903A (ko) 참조 프레임 선택 방법 및 그 장치
JP2011205354A (ja) 動画像符号化装置及び動画像符号化方法並びにプログラム
CN116405694A (zh) 一种编码、解码方法、装置及其设备
CN115733982A (zh) 预测处理系统及预测处理方法
CN106488248A (zh) 视频编码方法和视频编码系统

Legal Events

Date Code Title Description
B15K Others concerning applications: alteration of classification

Free format text: PROCEDIMENTO AUTOMATICO DE RECLASSIFICACAO. A CLASSIFICACAO IPC ANTERIOR ERA H04N 7/34.

Ipc: A63B 63/00 (2006.01), A63B 63/08 (2006.01), A63B 7

Ipc: A63B 63/00 (2006.01), A63B 63/08 (2006.01), A63B 7

B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B06T Formal requirements before examination [chapter 6.20 patent gazette]
B15K Others concerning applications: alteration of classification

Free format text: AS CLASSIFICACOES ANTERIORES ERAM: A63B 63/00 , A63B 63/08 , A63B 71/00

Ipc: H04N 19/105 (2014.01), H04N 19/11 (2014.01), H04N

B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 10 (DEZ) ANOS CONTADOS A PARTIR DE 29/09/2020, OBSERVADAS AS CONDICOES LEGAIS.