BR122020007663B1 - Codificação de uma amostragem espacial de um sinal de informação bidimensional usando subdivisão - Google Patents
Codificação de uma amostragem espacial de um sinal de informação bidimensional usando subdivisão Download PDFInfo
- Publication number
- BR122020007663B1 BR122020007663B1 BR122020007663-1A BR122020007663A BR122020007663B1 BR 122020007663 B1 BR122020007663 B1 BR 122020007663B1 BR 122020007663 A BR122020007663 A BR 122020007663A BR 122020007663 B1 BR122020007663 B1 BR 122020007663B1
- Authority
- BR
- Brazil
- Prior art keywords
- tree
- blocks
- block
- subdivision
- prediction
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/96—Tree coding, e.g. quad-tree coding
Abstract
A invenção se relaciona a esquemas de codificação para codificar um sinal de informação espacialmente testado de subdivisão e esquemas de codificação para a codificação de uma subdivisão ou uma estrutura multitree são descritos, onde modalidades representativas se relacionam a aplicativos de codificação de foto e /ou vídeo.
Description
[001] A presente invenção se relaciona a esquemas de codificação para a codificação de um sinal de informação espacialmente amostrado utilizando subdivisão e esquemas de codificação para a codificação de uma subdivisão ou uma estrutura multitree, formas de realização representativas em que se relacionam com codificação de aplicativos de imagem e / ou vídeo.
[002] Na codificação de imagem e vídeo, as imagens ou conjuntos particulares de arranjos de amostra para as imagens são geralmente decompostos em blocos, que são associados com determinados parâmetros de codificação. As imagens geralmente consistem em arranjos de amostras múltiplas. Além disso, uma imagem pode também ser associada a arranjos de amostras auxiliares adicionais, o que pode, por exemplo, especificar a transparência da informação ou mapas de profundidade. Os arranjos de amostra de uma imagem (incluindo arranjos de amostra auxiliares) podem ser agrupados em um ou mais dos denominados grupos de plano, em que cada grupo de plano consiste em um ou mais arranjos de amostra. Os grupos de plano de uma imagem podem ser codificados de forma independente, ou, se a imagem estiver associada a mais de um grupo de plano, com a previsão de grupos de plano outras da mesma imagem. Cada grupo de plano normalmente é decomposta em blocos. Os blocos (ou os correspondentes blocos de arranjos de amostra), são previstos por uma predição de inter-imagem ou predição intra-imagem. Os blocos podem ter diferentes tamanhos, podendo ser ou quadrados ou retangulares. O parcionamento de uma imagem em blocos pode ser tanto fixado pela sintaxe, ou pode ser (pelo menos parcialmente) sinalizado dentro do fluxo de bits. Muitas vezes, elementos de sintaxe são transmitidos de de forma que sinalize a subdivisão para blocos de tamanhos pré-definidos. Tais elementos de sintaxe podem especificar se e como um bloco é subdividido em blocos menores e parâmetros de codificação associados, por exemplo, para efeitos de predição. Para todas as amostras de um bloco (ou os correspondentes blocos de arranjos de amostra), a decodificação dos parâmetros associados de codificação é especificada de uma determinada maneira. No exemplo, todas as amostras em um bloco são previstas usando o mesmo conjunto de parâmetros de predição, tais como os índices de referência (identificando uma imagem de referência no conjunto de imagens já codificadas), os parâmetros de movimento (especificando uma medida para o movimento de blocos entre uma imagem de referência e a imagem atual), parâmetros para especificar a interpolação de filtro, modos de intra-predição, etc. Os parâmetros de movimento podem ser representados por vetores de deslocamento com um componente horizontal e vertical, ou por meio de parâmetros de movimento de ordem mais elevada, tais como os parâmetros de movimento relacionados consistindo de seis componentes. Também é possível que mais do que um conjunto de parâmetros de predição particulares (tais como os índices de referência e de parâmetros de movimento) estejam associados a um único bloco. Neste caso, para cada conjunto destes parâmetros de predição determinados, um sinal de predição único intermediário para o bloco (ou os blocos de arranjos de amostra correspondentes) é gerado, e o sinal de predição final é construído por uma combinação incluindo a sobreposição dos sinais de predição intermediários. Os parâmetros de peso correspondentes e eventualmente também uma constante de deslocamento (que é adicionado à soma de peso) pode ser fixado para uma imagem, ou uma imagem de referência, ou um conjunto de imagens de referência, ou podem ser incluídas no conjunto de parâmetros de predição para o bloco correspondente. A diferença entre os blocos originais (ou os blocos de arranjos de amostra correspondentes) e os seus sinais de predição, também referido como o sinal residual, é geralmente transformado e quantificado. Muitas vezes, uma transformação bidimensional é aplicada ao sinal residual (ou aos arranjos de amostras correspondentes do bloco residual). Para a codificação de transformação, os blocos (ou os blocos de arranjos de amostra correspondentes), para os quais um determinado conjunto de parâmetros de predição tem sido utilizado, podem ainda ser divididos, antes de aplicar a transformação. Os blocos de transformação podem ser iguais ou menores do que os blocos que são usados para a predição. Também é possível que um bloco de transformação inclua mais do que um dos blocos que são usados para a predição. Diferentes blocos de transformação podem ter tamanhos diferentes e os blocos de transformação podem representar blocos quadrados ou retangulares. Após a transformação, os coeficientes de transformação resultantes são quantificados e os assim chamados níveis de coeficientes de transformação são obtidos. Os níveis de coeficientes de transformação, bem como os parâmetros de predição, e, se estiver presente, a informação da subdivisão são codificados por entropia.
[003] Nos padrões de codificação de imagem e vídeo, as possibilidades de subdividir uma imagem (ou um grupo de plano) em blocos que são fornecidos pela sintaxe são muito limitadas. Normalmente, só pode ser especificado se, e (potencialmente como) um bloco de um tamanho pré-definido pode ser subdividido em blocos menores. Como um exemplo, o tamanho do maior bloco de H.264 é 16x16. Os blocos de 16x16 são também referidos como macroblocos e cada imagem está dividida em macroblocos em uma primeira etapa. Para cada macrobloco 16x16, pode ser sinalizado se é codificado como bloco de 16x16, ou como dois blocos de 16x8, ou como dois blocos8x16, ou como quatro blocos 8x8. Se um bloco de 16x16 é subdividido em quatro blocos 8x8, cada um destes blocos de 8x8 podem ser codificados ou como um bloco de 8x8, ou como dois blocos 8x4, ou como dois blocos 4x8, ou como quatro blocos 4x4. O conjunto de possibilidades reduzidas para especificar o parcionamento em blocos em padrões de codificação de imagem e vídeo do estado da técnica tem a vantagem de que a taxa de informação lateral para informar a sinalização da subdivisão pode ser mantida pequena, mas tem a desvantagem de que a taxa de bits requerida para a transmissão dos parâmetros de predição para os blocos podem tornar-se significativa, conforme explicado a seguir. A taxa de informação lateral para a sinalização das informações de predição não representam geralmente uma quantidade significativa da taxa de bits total de um bloco. E a eficiência de codificação pode ser aumentada quando a referida informação lateral é reduzida, o que, por exemplo, pode ser alcançado através de tamanhos maiores de bloco. Imagens reais ou imagens de uma sequência de vídeo consistem em objetos de forma arbitrária com propriedades específicas. Como um exemplo, os objetos ou de partes de objetos são caracterizados por uma textura única ou um movimento único. E, geralmente, o mesmo conjunto de parâmetros de predição pode ser aplicado para tal objeto, ou parte de um objeto. Mas os limites do objeto geralmente não coincidem com os limites de blocos possíveis para blocos de predição de grandes dimensões (por exemplo, macroblocos 16x16 em H.264). Um codificador determina geralmente a subdivisão (entre o conjunto limitado de possibilidades) que resulta no mínimo de uma medida de custo em particular taxa de distorção. Para objetos moldados arbitrariamente, isso pode resultar em um grande número de pequenos blocos. E uma vez que cada um destes blocos pequenos está associado com um conjunto de parâmetros de predição, que precisam ser transmitidos, a taxa de informação lateral pode se tornar uma parte significativa da taxa total de bits. Porém, uma vez que muitos dos pequenos blocos ainda representam áreas do mesmo objeto ou parte de um objeto, os parâmetros de predição para certo número de blocos obtidos são iguais ou muito semelhantes.
[004] Isto é, a subdivisão ou organização de uma imagem em porções menores ou ladrilhos ou blocos substancialmente influencia a eficiência da codificação e complexidade de codificação. Como descrito acima, uma subdivisão de um imagem para um maior número de blocos menores permite um ajuste mais fino espacialmente dos parâmetros de codificação, em que permite uma melhor adaptabilidade dos parâmetros de codificação para o material de imagem / vídeo. Por outro lado, definir os parâmetros de codificação em uma granularidade mais fina representa uma carga maior sobre a quantidade de informação lateral necessária, a fim de informar o decodificador sobre as configurações necessárias. Além disso, deve ser notado que qualquer liberdade para o codificador para (posteriormente) subdividir a imagem/vídeo em blocos espacialmente aumenta imensamente a quantidade de possíveis configurações de parâmetros de codificação e, assim, em geral, torna a procura pela configuração do parâmetro de codificação que conduz a um melhor compromisso de taxa / distorção ainda mais difícil.
[005] De acordo com um primeiro aspecto do presente pedido, é um objetivo fornecer um esquema de codificação para a codificação de um arranjo de amostras que representam um sinal de informação espacialmente amostrado, tal como, mas não limitado a, imagens de um vídeo ou ainda imagens, o que permite a obtenção de um melhor compromisso entre a complexidade de codificação e proporção de distorção de taxa alcançável, e / ou para alcançar um melhor índice da taxa de distorção.
[006] Este objetivo é atingido por um decodificador de acordo com a reivindicação 1, um codificador de acordo com os métodos da reivindicação 18 de acordo com qualquer uma das reivindicações 17 ou 19, um programa de computador de acordo com a reivindicação 20 e um fluxo de dados de acordo com a reivindicação 21.
[007] De acordo com o primeiro aspecto, o presente pedido de patente baseia-se na constatação de que uma divisão espacial do arranjo de amostras de informação que representam o sinal de informação espacialmente amostrado em regiões de raiz da árvore, então em primeiro lugar com subdivisão, de acordo com a subdivisão multitree de informação extraída a partir de um fluxo de dados, pelo menos um subconjunto de regiões da raiz da árvore em regiões menores simplesmente ligadas de diferentes tamanhos por multi-parcionamento recursivo do subconjunto de regiões da raiz da árvore que permitir encontrar um bom compromisso entre uma subdivisão muito fina e uma subdivisão muito grossa da taxa-sentido de distorção, a complexidade de codificação razoável, quando o tamanho da região máxima das regiões de raízes de árvores em que o arranjo de amostras da informação é espacialmente dividido, está incluído dentro do fluxo de dados e é extraído do fluxo de dados na decodificação lateral.
[008] Consequentemente, de acordo com um primeiro aspecto da presente invenção, um decodificador compreende um dispositivo de extração para extrair um tamanho máximo de região e informações de subdivisão multi-tree a partir de um fluxo de dados, um subdivisor configurado para dividir espacialmente um arranjo de amostras de informação que representa um sinal de informação espacialmente amostrado em regiões de árvore profundas do tamanho máximo e região de subdivisão, de acordo com a informação da subdivisão multi-tree, pelo menos, um subconjunto de regiões da raiz da árvore em regiões menores simplesmente ligadas de diferentes tamanhos por multi-parcionamento recursivo do subconjunto regiões de raiz da árvore, e um reconstutor configurado para reconstruir o arranjo de amostras a partir do fluxo de informação de dados usando a subdivisão em regiões menores simplesmente ligadas.
[009] De acordo com uma modalidade de realização da presente invenção, o fluxo de dados contém também o nível máximo de hierarquia até ao qual o subconjunto de regiões da raiz da árvore é submetido ao multi-parcionamento recursivo. Por esta medida, a sinalização da informação de subdivisão multi-tree se torna mais fácil e mais precisa com menos bits para codificação.
[010] Além disso, o reconstrutor pode ser configurado para executar uma ou mais das seguintes medidas até uma granularidade que depende da subdivisão multi-tree: decisão de qual modo de predição usar entre, pelo menos, o modo de intra e inter-predição; transformação do domínio espectral para o espacial, realização e / ou definição dos parâmetros para uma inter-predição; realização e/ou definição dos parâmetros para uma intra- predição.
[011] Além disso, o extrator pode ser configurado para extrair os elementos de sintaxe associados com as regiões de folhas dos blocos de árvore parcionado em uma ordem de profundidade de passagem a partir do fluxo de dados. Por essa medida, o extrator é capaz de explorar as estatísticas dos elementos de sintaxe já codificadas de regiões folha vizinhas com uma maior probabilidade de usar uma ordem transversal de primeira amplitude.
[012] De acordo com outra modalidade de realização, outro subdivisor é utilizado para subdividir, de acordo com ainda outra informação da subdivisão multi-tree, pelo menos um subconjunto de regiões menores simplesmente ligadas em regiões menores, mesmo simplesmente ligadas. A primeira fase de subdivisão pode ser utilizada pelo reconstrutor para realizar a predição da área de informação de amostras, ao passo que a segunda fase de subdivisão pode ser utilizada pelo reconstrutor para executar a retransformação do domínio espectral para o espacial. Definindo a subdivisão residual a ser relativamente subordinada à predição da subdivisão torna a codificação da subdivisão total um pouco menos demorada e, por outro lado, a restrição e a liberdade para a subdivisão residual resultante da subordinação têm meramente efeitos negativos menores sobre a eficiência de codificação desde a maioria de suas partes de imagens com os parâmetros de compensação de movimento semelhantes são maiores do que as partes semelhantes com propriedades espectrais.
[013] De acordo com ainda outra modalidade de realização, outra região de tamanho máximo está contida no fluxo de dados, o outro tamanho máximo da região definindo o tamanho das subregiões da raiz da árvore dentro do qual as regiões menores simplesmente ligadas são, em primeiro lugar divididas antes de subdividir pelo menos um subconjunto da raiz da árvore de sub-regiões de acordo com outra informação de subdivisão multi-tree em regiões menores simplesmente ligadas. Isto, por sua vez, permite um ajuste independente das dimensões máximas da região da predição da subdivisão por um lado e a subdivisão residual, por outro lado, e, por conseguinte, permite encontrar um melhor compromisso de taxa / distorção.
[014] De acordo com ainda outra modalidade de realização da presente invenção, o fluxo de dados compreende um primeiro subconjunto de elementos de sintaxe disjuntos de um segundo subconjunto de elementos de sintaxe que formam a informação de subdivisão multi-tree, em que uma concentração no lado de decodificação seja capaz de combinar, de acordo com o primeiro subconjunto de elementos de sintaxe, regiões pequenas vizinha espacialmente simplesmente ligadas da subdivisão multi-tree para obter uma subdivisão intermediária do arranjo de amostras. O reconstrutor pode ser configurado para reconstruir o arranjo de amostras utilizando a subdivisão intermediária. Por esta medida, é mais fácil para o codificador se adaptar a subdivisão eficaz para a distribuição espacial das propriedades do arranjo de amostras da informação encontrar um compromisso de velocidade / distorção ótimo. Por exemplo, se o tamanho da região máxima é grande, a informação da subdivisão multi-tree é suscetível de se tornar mais complexa devido às regiões de raízes de árvores se tornando maiores. Por outro lado, no entanto, se o tamanho da região máxima é pequeno, torna-se mais provável que as regiões vizinhas de raízes de árvores pertençam ao conteúdo da informação com propriedades semelhantes, de modo que estas regiões de raízes de árvores também possam ter sido processadas em conjunto. A fusão preenche esta lacuna entre os extremos acima mencionados, o que permite uma subdivisão quase ideal de granularidade. Do ponto de vista do codificador, os elementos de sintaxe que se fundem para permitir um procedimento de codificação mais relaxado ou computacionalmente menos complexo, uma vez que o codificador utiliza erradamente uma subdivisão muito fina, este erro pode ser compensado pelo codificador posteriormente, subsequentemente, pela configuração da junção de elementos de sintaxe com ou sem adaptação de apenas uma pequena parte dos elementos de sintaxe tendo sido fixado antes de definir os elementos de sintaxe que se fundem.
[015] De acordo com ainda outra modalidade de realização, o tamanho da região máxima e a informação da subdivisão multi-tree é utilizada para a subdivisão residual, em vez da predição da subdivisão.
[016] De acordo com outro aspecto da presente invenção, é um objetivo do presente pedido fornecer um esquema de codificação através do qual um compromisso melhor de taxa / distorção é alcançável.
[017] Este objetivo é alcançado por um decodificador de acordo com a reivindicação 22, um codificador de acordo com a reivindicação 30, os métodos de acordo com as reivindicações 29 ou 31, um programa de computador de acordo com a reivindicação 32 e um fluxo de dados de acordo com a reivindicação 33.
[018] A ideia subjacente a este aspecto é que uma primeira ordem transversal de profundidade para o tratamento das regiões simplesmente ligadas de uma subdivisão quadtree de um arranjo de amostras que representam um sinal de informação da informação espacialmente amostrado é preferido em relação a uma primeira ordem transversal de largura devido ao fato de que, quando usar a ordem transversal de profundidade, cada região simplesmente ligada tem uma maior probabilidade de ter regiões vizinhas simplesmente ligadas que tenham já sido percorridos de modo que a informação sobre estas regiões vizinhas simplesmente ligadas podem ser exploradas de forma positiva para a reconstrução da região atual respectiva simplesmente ligada.
[019] Quando o arranjo de amostras de informação é em primeiro lugar dividido em um arranjo regular de regiões de raiz da árvore de tamanho de hierarquia de ordem zero subdivide então pelo menos um subconjunto de regiões da raiz da árvore em regiões menores simplesmente ligadas de diferentes tamanhos, o reconstrutor pode usar uma varredura em ziguezague a fim de verificar as regiões de raízes de árvores onde, para cada região da raiz da árvore a ser parcionada, são tratadas as regiões de folha simplesmente ligadas em ordem transversal de profundidade antes de entrar para a próxima região da raiz da árvore na ordem de varredura em ziguezague. Além disso, as regiões de folhas de acordo com a ordem transversal de profundidade simplesmente ligadas do mesmo nível de hierarquia podem ser também atravessadas por uma ordem de varredura em ziguezague. Assim, o aumento da probabilidade de ter regiões de folha vizinhas simplesmente ligadas é mantido.
[020] De acordo com outro aspecto da presente invenção, é um objetivo fornecer um esquema de codificação para a codificação de uma sinalização de uma estrutura multi-tree prescrevendo uma subdivisão multi-tree espacial de uma região da raiz da árvore de acordo com a qual a região da raiz da árvore é multi-parcionada recursivamente em regiões menores, simplesmente ligadas, de modo que a quantidade de dados necessários para a codificação da sinalização é reduzida.
[021] Este objetivo é alcançado por um decodificador de acordo com a reivindicação 34, um codificador de acordo com a reivindicação 42, os métodos de acordo com as reivindicações 41ou 43, um programa de computador de acordo com a reivindicação 44 e um fluxo de dados de acordo com a reivindicação 45.
[022] A idéia subjacente a este aspecto é que, embora seja favorável arranjar sequencialmente os sinalizadores associados com os nós da estrutura multi-tree numa primeira ordem transversal de profundidade, a codificação sequencial dos sinalizadores deve utilizar contextos de estimativa de probabilidade que são os mesmos para os sinalizadores associados com os nós da estrutura multi-tree situada no mesmo nível de hierarquia da estrutura multitree, mas diferente de nós da estrutura multi-tree situado dentro de níveis de hierarquia diferentes da estrutura multi-tree, permitindo assim um bom compromisso entre o número de contextos a ser prestado e a adaptação para as estatísticas de símbolos atuais dos sinalizadores por outro lado.
[023] De acordo com uma modalidade de realização, os contextos de probabilidade de estimação para um sinalizador pré-determinado utilizado também depende dos sinalizadores que precedem o sinalizador pré-determinado de acordo com a ordem transversal de profundidade e correspondendo a áreas da região da raiz da árvore que tem uma relação de localização pré-determinada em relação à área a qual corresponde o sinalizador pré-determinado. Semelhante à ideia subjacente ao aspecto do processo, a utilização da ordem transversal de profundidade garante uma alta probabilidade de que sinalizadores que já tenham sido codificados compreendem também os sinalizadores correspondentes às zonas vizinhas da área correspondente ao sinalizador pré- determinado de modo que este conhecimento pode ser utilizado para adaptar melhor o contexto a ser usado para o sinalizador pré-determinado.
[024] Os sinalizadores que podem ser utilizados para estabelecer o contexto de um sinalizador pré-determinado, podem ser os correspondentes às áreas de descanso para o topo e / ou a esquerda da área à qual o sinalizador pré-determinado corresponde. Além disso, os sinalizadores usados para a seleção do contexto podem ser restringidos aos sinalizadores pertencentes ao mesmo nível de hierarquia como o nó com o qual o sinalizador pré-determinado está associado.
[025] Consequentemente, de acordo com um aspecto adicional, um sistema de codificação para a codificação de uma sinalização de uma estrutura multi-tree é fornecido que permite uma codificação mais eficaz.
[026] Este objetivo é alcançado por um decodificador de acordo com a reivindicação 46, um codificador de acordo com a reivindicação 48, os métodos de acordo com as reivindicações 47 ou 49, e um programa de computador de acordo com a reivindicação 50.
[027] De acordo com este aspecto, a sinalização codificada compreende uma indicação de um nível de hierarquia mais alto e uma sequência de sinalizadores associadas com os nós da estrutura multi-tree de desigualdade para o maior nível de hierarquia, cada sinalizador indicando se o nó associado é um nó intermediário ou nó descendente, e uma decodificação sequencial, em uma primeira ordem transversal de profundidade ou de largura, da sequência de sinalizadores do fluxo de dados ocorre com nós intercalados do nível de hierarquia mais alto e automaticamente indicando os mesmos nós de folha, reduzindo assim a taxa de codificação.
[028] De acordo com outra modalidade de realização, a sinalização codificada da estrutura multi-tree pode compreender a indicação do nível de hierarquia mais alto. Por esta medida, é possível restringir a existência de sinalizadores de níveis de hierarquia diferentes de nível de hierarquia mais alto como outro parcionamento de blocos do nível de hierarquia mais elevado é excluído de qualquer maneira.
[029] No caso da subdivisão multi- tree espacial sendo parte de uma subdivisão secundária de nós da folha e regiões de raiz da árvore não- parcionadas de uma subdivisão multi- tree primária, o contexto usado para codificar os sinalizadores da subdivisão secundária pode ser selecionado de modo que os contextos são os mesmos para os sinalizadores associados às áreas do mesmo tamanho.
[030] De acordo com outras modalidades de realização, uma fusão favorável ou agrupamento de regiões simplesmente ligadas em que o arranjo de amostras de informação é subdividido, é codificado com um número reduzido de dados. Para este fim, para as regiões ligadas simplesmente, uma relação relativa de localização pré-determinada é definida permitindo uma identificação, para uma região pré-determinada simplesmente ligada, de regiões simplesmente ligadas dentro da pluralidade de regiões simplesmente ligadas pré-determinadas que têm a relação relativa de localização pré-determinada para a região simplesmente ligada. Ou seja, se o número for igual a zero, um indicador de fusão para a região pré-determinada simplesmente ligada pode estar ausente no fluxo de dados. Além disso, se o número de regiões simplesmente ligadas que possuem a relação de localização pré-determinada em relação à região pré- determinada simplesmente ligada for um, os parâmetros de codificação da região simplesmente ligada podem ser aprovados ou podem ser utilizados para a predição dos parâmetros de codificação para a região pré-determinada simplesmente ligada sem a necessidade de qualquer elemento de sintaxe adicional. Caso contrário, ou seja, se o número de regiões simplesmente ligadas que possuem a relação de localização pré-determinada em relação às regiões pré-determinadas simplesmente ligadas for maior que um, a introdução de um elemento de sintaxe adicional pode ser suprimida, mesmo se os parâmetros de codificação associados a estas regiões identificadas simplesmente ligadas forem idênticos entre si.
[031] De acordo com uma modalidade de realização, se os parâmetros de codificação das regiões vizinhas simplesmente ligadas são desiguais entre si, um identificador de referência vizinho pode identificar um subconjunto apropriado do número de regiões simplesmente ligadas com a relação pré-determinada relativamente à localização da região pré-determinada simplesmente ligada e este subconjunto apropriado é usado quando adota os parâmetros de codificação, ou a predição dos parâmetros de codificação da região pré- determinada simplesmente ligada.
[032] De acordo com ainda outras modalidades de realização, uma subdivisão espacial de uma área de amostras que representam uma amostragem espacial do sinal de informação bidimensional numa pluralidade de regiões simplesmente ligadas de diferentes tamanhos por multi-particionamento recursivo é executada de acordo com um primeiro subconjunto de elementos de sintaxe contidos no fluxo de dados, seguido por uma combinação de regiões espacialmente vizinhas simplesmente ligadas, dependendo de um segundo subconjunto de elementos de sintaxe dentro do fluxo de dados sendo dissociada do primeiro subconjunto, para obter uma subdivisão intermediária do arranjo de amostras em conjuntos disjuntos de regiões simplesmente ligadas, cuja união é a pluralidade de regiões simplesmente ligadas. A subdivisão intermediária é usada na reconstrução do arranjo de amostras a partir do fluxo de dados. Isto permite uma otimização em relação à subdivisão tornando-a menos crítica devido ao fato de uma subdivisão muito fina poder ser compensada pela fusão depois. Além disso, a combinação da subdivisão permite a realização da fusão de subdivisões intermediárias que não seria possível por meio de multi- parcionamento recursivo somente para que a concatenação da subdivisão e da fusão com o uso de conjuntos disjuntos de elementos de sintaxe permita uma melhor adaptação da subdivisão intermediária eficaz ou ao conteúdo real do sinal de informação bidimensional. Comparado com as vantagens, a sobrecarga adicional resultante do subconjunto adicional de elementos de sintaxe para indicar os detalhes que se fundem, é insignificante.
[033] Modalidades de realização preferidas da presente invenção são descritas a seguir com relação às seguintes figs, entre as quais: Fig. 1 mostra um diagrama de blocos de um codificador de acordo com uma modalidade de realização do presente pedido; Fig. 2 mostra um diagrama de blocos de um descodificador de acordo com uma modalidade de realização do presente pedido; As Figs. 3a-c mostram esquematicamente um exemplo ilustrativo de uma subdivisão quadtree, em que a Fig. 3a mostra um primeiro nível de hierarquia, Fig. 3b mostra um segundo nível hierárquico e Fig. 3c mostra um terceiro nível de hierarquia; Fig. 4 mostra esquematicamente uma estrutura de árvore para a subdivisão quadtree ilustrativa das Figs. 3a a 3c de acordo com uma modalidade de realização; Figs. 5a, b ilustram esquematicamente a subdivisão quadtree das Figs. 3a a 3c e da estrutura de árvore com índices que indexam os blocos de folhas individuais; Figs. 6a, b mostram esquematicamente cadeias binárias ou sequências de sinalizadores representando a estrutura da árvore da figura. 4 e a subdivisão quadtree da fig. 3a a 3c, respectivamente, de acordo com modalidades de realização diferentes; Fig. 7 mostra um fluxograma, que mostra os passos executados por um fluxo de dados extrator de acordo com uma modalidade de realização; Fig. 8 mostra um fluxograma que ilustra a funcionalidade de um fluxo de dados de extrator de acordo com outra modalidade de realização; Fig. 9a, b mostram diagramas esquemáticos ilustrando subdivisões de quadtree com blocos vizinhos candidatos para um bloco pré-determinado a ser destacado, de acordo com uma modalidade de realização; Fig. 10 mostra um fluxograma de uma funcionalidade de um fluxo de dados de extrator de acordo com outra modalidade de realização; Fig. 11 mostra esquematicamente uma composição de uma imagem de planos e grupos de plano e ilustra uma codificação utilizando adaptação/ predição inter-plano de acordo com uma modalidade de realização; Fig. 12a e 12b ilustram esquematicamente uma estrutura de sub- árvore e a subdivisão correspondente, a fim de ilustrar o esquema de herança de acordo com uma modalidade de realização; Fig. 12c e 12d ilustram esquematicamente uma estrutura de sub- árvore, a fim de ilustrar o esquema de herança com aprovação e predição, respectivamente, de acordo com modalidades de realização; Fig. 13 mostra um fluxograma que mostra os passos executados por um codificador de realização de um esquema de herança de acordo com uma modalidade de realização; Fig. 14a e 14b mostram uma subdivisão primária e uma subdivisão subordinada para ilustrar uma possibilidade de implementar um esquema de herança em conexão com a inter-predição de acordo com uma modalidade de realização; Fig. 15 mostra um diagrama de blocos que ilustra um processo de decodificação, em conexão com o esquema de herança de acordo com uma modalidade de realização; Fig. 16 mostra um diagrama esquemático ilustrando a ordem de pesquisa entre as subregiões de uma subdivisão multitree de acordo com uma modalidade de realização, com as subregiões que são objeto de intra-predição; Fig. 17 mostra um diagrama de blocos de um decodificador de acordo com uma modalidade de realização; Fig. 18 mostra um diagrama esquemático que ilustra o conteúdo do fluxo de dados de acordo com outras modalidades de realização; Fig. 19 mostra um diagrama de blocos de um codificador de acordo com uma modalidade de realização; Fig. 20 mostra um diagrama de blocos de um descodificador de acordo com outra modalidade de realização, e Fig. 21 mostra um diagrama de blocos de um decodificador de acordo com outra modalidade.
[034] Na seguinte descrição das figs., elementos que ocorrem em várias dessas figs. estão indicadas por números de referência comuns e uma explicação repetida destes elementos é evitada. Em vez disso, as explicações em relação a um elemento apresentado dentro de uma fig. aplica-se igualmente a outras figs. em que o respectivo elemento ocorre enquanto a explicação apresentada com essas outras figs. indicam os desvios dos mesmos.
[035] Além disso, a descrição a seguir tem início com modalidades de realização de um codificador e descodificador, que são explicadas em relação às figs. 1 a 11. As modalidades de realização descritas em relação a estas figuras combinam vários aspectos do presente pedido de patente que, contudo, também seria vantajoso se implementados individualmente dentro de um esquema de codificação e, por conseguinte, com relação às figs.subsequentes, as modalidades de realização que são brevemente discutidas para explorar aspectos apenas mencionados individualmente com cada uma destas modalidades de realização representando uma abstração das modalidades de realização descritas em relação às figs. 1 e 11 em um sentido diferente.
[036] Fig. 1 mostra um codificador de acordo com uma modalidade de realização da presente invenção. O codificador 10 da Fig. 1 compreende um preditor 12, um precodificador residual 14, um reconstrutor residual 16, um fluxo de dados de inserção 18 e um divisor de bloco 20. O codificador 10 é para a codificação de um sinal de informação temporal espacialmente recolhido num fluxo de dados 22. O sinal de informação temporal espacialmente amostrado pode ser, por exemplo, um vídeo, isto é, uma sequência de imagens. Cada imagem representa um arranjo de amostras de imagem. Outros exemplos de informações de sinais espaciais temporais compreendem, por exemplo, as imagens capturadas pela profundidade, por exemplo, câmaras de tempo de luz. Além disso, deve ser notado que um sinal de informação espacialmente amostrado pode compreender mais do que um arranjo por carimbo ou moldura de tempo, tais como no caso de um vídeo de cor, que compreende, por exemplo, um arranjo de amostras de luminância, juntamente com dois arranjos de amostras de crominância por imagem. Pode também ser possível que a taxa de amostragem temporal para os diferentes componentes do sinal de informação, isto é, luminância e crominância podem ser diferentes. O mesmo se aplica para a resolução espacial. Um vídeo também pode ser acompanhado de informações espacialmente amostradas, como profundidade ou informações de transparência. A descrição a seguir, no entanto, irá concentrar-se na transformação de um desses arranjos para o bem de uma melhor compreensão dos aspectos principais do presente pedido pela primeira vez com, em seguida, voltando-se para o tratamento de mais de um plano.
[037] O codificador 10 da Fig. 1 é configurado para criar o fluxo de dados 22 de modo que os elementos de sintaxe do fluxo de dados 22 descreve as imagens em uma granularidade situada entre imagens inteiras e as amostras de imagem individuais. Para este fim, a divisória 20 está configurada para subdividir cada imagem em regiões 24 simplesmente ligadas de tamanhos diferentes 26. A seguir estas regiões serão simplesmente chamadas de blocos ou subregiões 26.
[038] Como será descrito em maior detalhe abaixo, o divisor 20 utiliza um sistema subdivisão multi-tree, a fim de subdividir o imagem 24 para os blocos 26 de diferentes tamanhos. Para ser ainda mais preciso, as modalidades de realização específicas descritas abaixo em relação às Figs. 1-11 usam principalmente uma subdivisão quadtree. Como também será explicado em maior detalhe abaixo, o divisor 20 pode, internamente, compreender uma concatenação de um sub-divisor 28 para subdividir as imagens 24 para os blocos 26 já mencionados seguido por uma fusão 30 que permite que os grupos de combinação destes blocos 26, a fim de obter uma subdivisão efetiva ou a granularidade, que se situa entre a não-subdivisão de imagens 24 e a subdivisão definida pelo subdivisor 28.
[039] Tal como ilustrado pelas linhas tracejadas na fig. 1, o indicador 12, o pré-codificador residual 14, o reconstrutor residual 16 e o insersor de fluxo de dados 18 operam no imagem de subdivisões definidos pelo divisor 20. Por exemplo, como será descrito em mais detalhe abaixo, o preditor 12 usa uma predição da subdivisão definida pelo divisor 20, a fim de determinar para subregiões individuais da predição de subdivisão quanto ao fato de a respectiva subregião ser submetida a predição de intra imagem ou predição de inter imagem a definição dos parâmetros de predição correspondente para a respectiva subregião, de acordo com o modo de predição selecionado.
[040] O pré-codificador residual 14, por sua vez, pode utilizar uma subdivisão residual das imagens 24, a fim de codificar o resíduo da predição das imagens 24 fornecidas pelo preditor 12. Como o reconstrutor residual 16 reconstrói o resíduo da produção por elementos de sintaxe pelo pré-codificador residual 14, o reconstrutor residual 16 também opera na subdivisão residual recém-mencionada. O insersor de fluxo de dados 18 pode explorar apenas as divisões mencionadas, ou seja, as subdivisões de predição e residual, a fim de determinar a ordem de inserção e vizinhança entre os elementos de sintaxe para a inserção da saída por elementos de sintaxe pelo pré-codificador residual 14 e o preditor 12 para dentro do fluxo de dados 22 por meio de, por exemplo, codificação por entropia.
[041] Como mostrado na fig. 1, o codificador 10 inclui uma entrada 32 onde o sinal de informação original entra o codificador 10. Um subextrator 34, o pré- codificador residual 14 e o dispositivo de inserção de fluxo de dados 18 são ligados em série pela ordem mencionada entre a entrada 32 e a saída do fluxo de dados de inserção 18 no qual o fluxo de dados codificados 22 é a saída. O subextrator 34 e o pré-codificador residual 14 fazem parte de um circuito de previsão que é fechada pelo construtor residual 16, um somador 36 e um preditor 12 que estão ligados em série pela ordem mencionada entre a saída do pré- codificador residual 14 e à entrada inversora do subextrator 34. A saída do preditor 12 é também ligada à outra entrada do adicionador 36. Além disso, o indicador 12 compreende uma entrada diretamente ligada à entrada 32 e pode compreender outra entrada, também ligada à saída do adicionador 36 através de um opcional no circuito de filtro 38. Além disso, o preditor 12 gera informação lateral durante a operação e, por conseguinte, uma saída do preditor 12 é também acoplada ao dispositivo de inserção de dados de fluxo 18. Da mesma forma, o divisor 20 compreende uma saída que está ligada a outra entrada de fluxo de dados de inserção 18.
[042] Tendo descrito a estrutura do codificador 10, o modo de funcionamento é descrito mais detalhadamente a seguir.
[043] Como descrito acima, o divisor 20 decide para cada imagem 24 como subdividir a mesma em 26 subregiões. De acordo com uma subdivisão da imagem 24 a ser utilizado para a predição, o previsor 12 decide para cada subregião correspondente a esta subdivisão, como prever a respectiva subregião. Preditor 12 produz a predição da subregião para a entrada inversora do subextrator 34 e para a outra entrada do adicionador 36 e produz a informação de predição que reflete a maneira como o preditor 12 obtido a partir desta prevê porções previamente codificadas de vídeo, para o insersor do fluxo de dados 18.
[044] Na saída do subextrator 34, a predição residual é assim obtida, em que o pré-codificador residual 14 processa esta predição residual, de acordo com uma subdivisão residual também prescrita pelo divisor 20. Conforme descrito em maior detalhe abaixo com relação às Figs. 3 a 10, a subdivisão de imagem residual 24 utilizada pelo pré-codificador residual 14 pode ser relacionada com a subdivisão de predição utilizada pelo preditor 12, de modo que cada subregião de predição é adotada como subregião residual ou ainda subdividida em subregiões residuais menores. No entanto, a predição totalmente independente e subdivisões residuais também seriam possíveis.
[045] O pré-codificador residual 14 submete cada subregião residual para uma transformação de domínio espacial para espectral por um transformador bidimensional seguido de, ou inerentemente envolvendo, uma quantização dos coeficientes de transformação resultantes de blocos de transformação resultantes onde a distorção resulta do ruído de quantização. O insersor de fluxo de dados 18 pode, por exemplo, codificar sem perdas os elementos de sintaxe que descrevem coeficientes de transformação acima mencionados no fluxo de dados 22 através da utilização de, por exemplo, codificação por entropia.
[046] O reconstrutor residual 16, por sua vez, reconverte, por utilização de uma re-quantização seguida por uma re-transformação, os coeficientes de transformaçãoem um sinal residual, em que o sinal residual é combinado com o adicionador 36 com a previsão utilizada pelo subextrator 34 para obter a predição residual, obtendo-se assim uma parte reconstruída ou sub-região de uma imagem atual na saída do somador 36. Preditor 12 pode usar a imagem da subregião reconstruída para a intra-predição diretamente, que é para prever determinada predição da subregião por extrapolação a partir da previsão previamente de subregiões vizinhas reconstruídas. No entanto, uma intra- predição realizada com o domínio espectral prevendo o espectro da sub-região atual a partir de um vizinho, diretamente, seria teoricamente também possível.
[047] Para a inter-predição, o preditor 12 pode usar imagens previamente codificadas e reconstruídas em uma versão segundo a qual elas foram filtradas por um filtro de anel opcional 38. O filtro de anel 38 pode, por exemplo, compreender um filtro de bloqueio ou um filtro adaptativo que tem uma função de transferência adaptado para formar, vantajosamente, o ruído de quantização mencionado anteriormente.
[048] O preditor 12 escolhe os parâmetros de predição que revelam a maneira de prever uma predição determinada da sub-região através da utilização de uma comparação com as amostras originais dentro da imagem 24. Os parâmetros de predição podem, tal como descrito em maiores detalhes abaixo, compreende, para cada sub-região da predição a indicação do modo de predição, tal como a previsão de intra predição e inter predição de imagem. No caso da intra- predição de imagem, os parâmetros de predição podem também incluir uma indicação de um ângulo ao longo do qual as bordas da sub-região a ser previsto na forma de intra predição principalmente se estende, e no caso de predição de inter imagem, vetores de movimento, índices de imagem em movimento e, eventualmente, parâmetros de ordem mais elevada de transformação de movimento e, no caso da predição de intra e / ou inter imagem,informações de filtro opcional para a filtragem das amostras de imagem reconstruídas com base no qual a predição da subregião atual está prevista.
[049] Como será descrito em maior detalhe abaixo, as referidos subdivisões definidas por um divisor 20 influencia substancialmente a razão de taxa / distorção máxima alcançável por pré-codificador residual 14, 12 e o preditor de fluxo de dados de inserção 18. No caso de uma subdivisão muito fina, os parâmetros de predição da saída 40 por preditor 12 para ser inserido no fluxo de dados 22 necessitam de uma taxa de codificação muito grande embora a previsão obtida pelo preditor 12 pode ser melhor e o sinal residual a ser codificado pelo pré-codificador residual 14 podem ser menores, de modo que o mesmo pode ser codificado por menos bits. No caso de uma subdivisão muito grossa, o oposto é aplicável. Além disso, apenas o pensamento mencionado também se aplica para a subdivisão residual de um modo similar: a transformação de uma imagem usando uma granularidade mais fina dos blocos individuais de transformação conduz a uma menor complexidade para calcular as transformações e uma maior resolução espacial da transformação resultante. Isto é, menor subregiões residuais permitem a distribuição espectral do conteúdo dentro de cada sub-região residual para ser mais consistente. No entanto, a resolução espectral é reduzida e a razão entre significante e insignificante, isto é, quantizada a zero, os coeficientes pioram. Ou seja, a granularidade de transformação deverá ser adaptada para o conteúdo da imagem localmente. Além disso, independente do efeito positivo de um localizador de granularidade, uma granularidade mais fina aumenta regularmente a quantidade de informação lateral necessária, a fim de indicar a subdivisão escolhida para o decodificador. Como será descrito em mais detalhe abaixo, as modalidades de realização descritas abaixo fornecem o codificador 10, com a capacidade de adaptar as subdivisões de forma muito eficaz para o conteúdo do sinal de informação a ser codificado e para sinalizar as subdivisões a serem utilizadas para a decodificação lateral a instruir o dispositivo de inserção de fluxo de dados 18 para inserir a informação de subdivisão para o fluxo de dados codificados 22. Os detalhes são apresentados abaixo.
[050] No entanto, antes de definir a subdivisão do divisor 20 mais detalhadamente, um decodificador de acordo com uma modalidade do presente pedido de patente é descrita em mais detalhes com referência à fig. 2.
[051] O decodificador da FIG. 2 é indicado pelo sinal de referência 100 e compreende um extrator 102, um divisor 104, um reconstrutor residual 106, um adicionador 108, um indicador 110, filtro em anel opcional 112 e um pós-filtro opcional 114. O extrator 102 recebe o fluxo de dados codificados em uma entrada 116 do decodificador 100 e extraem da informação da subdivisão do fluxo de dados codificados 118, os parâmetros de predição 120 e dados residuais 122 que o extrator processa 102 para o divisor de imagem 104, preditor 110 e reconstrutor residual 106, respectivamente. O reconstrutor residual 106 tem uma saída ligada a uma primeira entrada do adicionador 108. A outra entrada do adicionador 108 e as suas saídas estão ligadas a um circuito de predição para o qual o filtro em anel opcional 112 e o preditor 110 são ligados em série pela ordem mencionada com uma rota de passagem que conduz da saída do adicionador 108 para o preditor 110 de forma diretamente semelhante à das ligações acima mencionadas entre o adicionador 36 e o preditor 12 na Fig. 1, ou seja, um para a predição de intra imagem e o outro para a predição de inter imagem. Tanto a saída do acionador 108 ou a saída do filtro em anel 112 pode ser ligada a uma saída 124 do decodificador 100, em que o sinal de informação reconstruído é enviado para um dispositivo de reprodução, por exemplo. Um pós- filtro opcional 114 pode ser ligado dentro do caminho que conduz para a saída 124 a fim de melhorar a qualidade visual da impressão visual do sinal reconstruído na saída 124.
[052] De um modo geral, o reconstrutor residual 106, o adicionador 108 e o preditor 110 atuam como elementos 16, 36 e 12 na fig. 1. Em outras palavras, mesmo emula o funcionamento dos elementos já referidos da fig. 1. Para este fim, o reconstrutor residual 106 e o preditor 110 são controlados pelos parâmetros de predição 120 e a subdivisão prescrito pelo divisor de imagem 104 de acordo com a informação da subdivisão 118 a partir do extrator 102, respectivamente, a fim de prever a predição de sub-regiões da mesma maneira como o preditor 12 fez ou decidiu fazer, e a fim de retransformar os coeficientes de transformação recebidos na mesma granularidade que o pré-codificador residual 14 fez. O divisor de imagem 104, por sua vez, reconstitui as subdivisões escolhidas pelo divisor 20 da fig. 1 de uma forma sincronizada, baseando-se na informação da subdivisão 118. O extrator pode usar, por sua vez, a informação da subdivisão, a fim de controlar a extração de dados, tais como, em termos de seleção de contexto, a determinação da vizinhança, a estimativa de probabilidade, analisar a sintaxe do fluxo de dados etc.
[053] Vários desvios podem ser realizados sobre as modalidades de realização acima referidas. Alguns são mencionados na descrição detalhada a seguir em relação à subdivisão feita pelo subdivisor 28 e da fusão realizada por fusão 30 e outros são descritos em relação às Figs. 12 a 16 subsequentes. Na ausência de quaisquer obstáculos, todos estes desvios podem ser aplicados, individualmente ou em subconjuntos à descrição acima mencionada da Fig. 1 e Fig. 2, respectivamente. Por exemplo, os divisores 20 e 104 não podem determinar uma subdivisão de predição e uma subdivisão residual por imagem somente. Em vez disso, eles também podem determinar uma subdivisão para o filtro em anel opcional 38 e 112, respectivamente, tanto independente ou dependente da outra subdivisão para codificação preditiva ou residual, respectivamente. Além disso, a determinação da subdivisão de ou subdivisões por estes elementos não podem ser realizadas sobre uma imagem por base de imagem. Em vez disso, uma subdivisão ou subdivisões determinadas para uma determinada imagem pode ser reutilizada ou adotado para determinado número de sequência de imagems apenas então transferindo uma nova subdivisão.
[054] Ao fornecer mais detalhes sobre a divisão das imagens em sub- regiões, a seguinte descrição se concentra em primeiro lugar na parte da subdivisão onde o subdivisor 28 e 104a assume a responsabilidade. Em seguida, o processo de fusão onde o fusor 30 e o fusor 104b assumem a responsabilidade, é descrita. Por último, a adaptação /predição do inter plano é descrita.
[055] A forma como o subdivisor 28 e 104 dividem as figuras é tal que uma imagem é dividida em um determinado número de blocos de tamanhos diferentes, possivelmente com a finalidade de codificação preditiva e residual dos dados de imagem ou de vídeo. Como mencionado anteriormente, uma imagem 24 pode ser disponível como um ou mais arranjos de valores de amostra de imagem. No caso do espaço de cor YUV / YCbCr, por exemplo, o primeira arranjo pode representar o canal de luminância, enquanto os outros dois arranjos representam canais de crominância. Estes arranjos podem ter diferentes dimensões. Todos os arranjos podem ser agrupados em um ou mais grupos de plano, com cada grupo de plano que consiste em um ou mais planos consecutivos onde cada plano está contido em um e somente um grupo de plano. Para cada grupo de plano é aplicável o seguinte. O primeiro arranjo de um grupo de plano particular pode ser denominado arranjo principal deste grupo de plano. Os possíveis arranjos seguintes são arranjos subordinados. A divisão de blocos da disposição primária pode ser feita com base em uma abordagem quadtree como descrito abaixo. A divisão em blocos dos arranjos subordinados pode ser derivada com base na divisão do conjunto principal.
[056] De acordo com as modalidadess de realização descritas a seguir, os subdivisores 28 e 104a são configurados para dividir o arranjo principal em um número de blocos quadrados de tamanho igual, os assim chamados blocos de árvore a seguir. O comprimento da aresta dos blocos de árvores é tipicamente uma potência de dois, tais como 16, 32 ou 64, quando são usados quadtrees. Por acréscimo, no entanto, deve ser notado que a utilização de outros tipos de árvores seria possível, assim como as árvores ou árvores binárias com qualquer número de folhas. Além disso, o número de árvore descendente pode ser variada dependendo do nível da árvore e, dependendo do que o sinal da árvore representa.
[057] Além disso, como mencionado acima, o arranjo de amostras pode também representar outras informações de sequências de vídeo, tais como mapas de profundidade ou campos luminosos, respectivamente. Para simplificar, a seguinte descrição se concentra em quadtrees como um exemplo representativo para multi-trees. Quadtrees são árvores que têm exatamente quatro descendentes em cada nó interno. Cada um dos blocos de árvores constitui um quadtree primário juntamente com quadtrees subordinados em cada uma das folhas do quadtree primário. O quadtree primário determina a subdivisão de uma dada para a predição do bloco de árvore enquanto um quadtree subordinado determina a subdivisão de um bloco de predição feita com o propósito de codificação residual.
[058] O nó da raiz do quadtree primário corresponde ao bloco de árvore completo. Por exemplo, a fig. 3a mostra um bloco de árvore 150. Deve ser relembrado que cada imagem é dividida em uma grade regular de linhas e colunas de blocos de árvores 150 de modo que o mesmo, por exemplo, cobre a gama de amostras sem intervalos. No entanto, deve ser notado que para todas as subdivisões de blocos mostradas a seguir, a subdivisão constante sem sobreposição não é crítica. Em vez disso, o bloco vizinho pode sobrepor-se entre si, desde que nenhum bloco de folhas seja uma subporção adequada de um bloco de folhas vizinho.
[059] Ao longo da estrutura quadtree para bloco de árvore 150, cada nó pode ser ainda dividido em quatro nós descendentes, que, no caso do quadtree primário significa que cada bloco de árvore 150 pode ser dividido em quatro sub- blocos com metade da largura e metade da altura do bloco de árvore 150. Na fig. 3a, estes sub-blocos são indicados com números de referência 152a a 152d. Da mesma maneira, cada um destes sub-blocos podem ainda ser divididos em quatro sub-blocos menores, com metade da largura e metade da altura dos primeiros sub-blocos. Na fig. 3d isso é mostrado de forma exemplar para o sub- bloco 152c, que é sub-dividido em quatro pequenos sub-blocos 154a a 154d. Na medida em que as Figs. 3a a 3c mostram como um bloco de árvore exemplar 150 é primeiro dividido em seus quatro sub-blocos 152a a 152d, então o sub- bloco 152c inferior esquerdo é ainda dividido em quatro pequenos sub-blocos 154a a 154d e, finalmente, como mostrado na Fig. 3c, o bloco 154b superior direito desses pequenos sub-blocos é mais uma vez dividido em quatro blocos de uma largura e altura do oitavo bloco de árvore original de 150, com estes blocos menores até ser denotado com 156a a 156d.
[060] A Fig. 4 mostra a estrutura da árvore de base para a divisão quadtree exemplar, como mostrado nas Figs. 3a-3d. Os números ao lado dos nós da árvore são os valores de um chamado sinalizador de subdivisão, que serão explicados em detalhe posteriormente quando se discute a sinalização da estrutura quadtree. O nó da raiz do quadtree é representado no topo da figura (rotulado "Nível 0"). As quatro ramificações no nível 1 deste nó da raiz correspondem aos quatro sub-blocos, como mostrado na figura. 3a. À medida que o terceiro dentre esses sub-blocos é posteriormente sub-dividido nos seus quatro sub-blocos, na fig. 3b, o terceiro nó no nível 1 na Fig.4 também tem quatro ramificações. Mais uma vez, o correspondendo à subdivisão do segundo (canto superior direito) nó descendente na fig. 3c, existem quatro sub-ramificações relacionadas com o segundo nó no nível 2 da hierarquia quadtree. Os nós no nível 3 não são mais subdivididos.
[061] Cada folha do quadtree primário corresponde a um bloco de tamanho variável para o qual os parâmetros de predição individuais podem ser especificados (isto é, o modo de intra ou inter predição, parâmetros de movimento, etc.) A seguir, estes blocos são chamados blocos de predição. Em particular, estes blocos de folhas são os blocos mostrados na Fig. 3c. Com breve referência anterior à descrição das Figuras. 1 e 2, o divisor 20 ou subdivisor 28 determina a subdivisão quadtree como apenas explicada. O subdivisor 152a-d efetua a decisão que dos blocos de árvores 150, sub-blocos 152a-d, pequenos sub-blocos 154a-d e assim por diante, para subdivisão ou partição adicional, com o objetivo de encontrar uma compensação ótima entre uma previsão de subdivisão muito fina e uma previsão de subdivisão muito grossa, como já indicado acima. O preditor 12, por sua vez, utiliza a predição de subdivisão prescrita, a fim de determinar os parâmetros de predição mencionados acima a uma granularidade dependendo da predição de subdivisão ou para cada uma das sub-regiões de predição representada pelos blocos mostrados na Fig. 3c, por exemplo.
[062] Os blocos de predição representados na fig. 3c podem ser ainda divididos em blocos menores para o propósito de codificação residual. Para cada bloco de predição, ou seja, para cada nó de folha do quadtree primário, a subdivisão correspondente é determinada por um ou mais quadtree subordinado (s) para a codificação residual. Por exemplo, ao permitir que o tamanho do bloco máximo de resíduos de 16x16, de 32 x 32 do bloco de predição podem ser divididos em quatro 16 x 16 blocos, cada um dos quais sendo determinado por um quadtree subordinado para codificação residual. Cada bloco de 16 x 16, neste exemplo, corresponde ao nó de raiz de um quadtree subordinado.
[063] Tal como descrito para o caso da subdivisão de um dado do bloco de árvore em blocos de predição, cada bloco de predição pode ser dividido em um certo número de blocos residuais pelo uso de de composição quadtree subordinado (s). Cada folha de um quadtree subordinado corresponde a um bloco residual do qual parâmetros de codificação individuais residuais podem ser especificados (isto é, transformar o modo, coeficientes de transformação, etc) pelo pré-codificador residual 14 que codifica o controle de parâmetros, por sua vez, reconstrutores residuais 16 e 106 , respectivamente.
[064] Em outras palavras, o subdivisor 28 pode ser configurado para determinar, para cada imagem, ou para cada grupo de imagens de uma predição de subdivisão de um subordinado e subdivisão residual em primeiro lugar, dividindo a imagem em um arranjo regular de blocos de árvore 150, um parcionamento recursivo do subconjunto destes blocos de árvore por subdivisão quadtree, a fim de obter a predição de subdivisão em blocos de previsão - que pode ser blocos de árvore se nenhuma separação ocorreu no bloco de árvore respectivo, ou os blocos de folhas da subdivisão quadtree - com, em seguida, ainda outra subdivisão de um subconjunto destes blocos de predição, em uma maneira similar, por, se um bloco de predição é maior do que o tamanho máximo do o subdivisãoresidual subordinad, em primeiro lugar, separar o bloco de predição correspondente a um arranjo regular de sub-blocos de árvore com a então subdivisão de um subconjunto destes sub-blocos de árvore em conformidade com o procedimento de subdivisão quadtree, a fim de obter os blocos residuais - que podem ser blocos de predição, se não se divide em sub- blocos de árvore teve lugar no bloco de predição respectiva sub-blocos de árvore se nenhuma divisão em regiões ainda menores teve lugar no respectivo sub- blocos, ou os blocos de folhas da subdivisão quadtree residual.
[065] Como brevemente descrito acima, as sub-divisões escolhidas para um arranjo primária pode ser mapeado sobre arranjos subordinados. Isso é fácil quando se considera arranjos subordinados da mesma dimensão do arranjo primário. No entanto, medidas especiais devem ser tomadas quando as dimensões dos arranjos subordinados diferem da dimensão do arranjo principal. De um modo geral, o mapeamento do arranjo principal da subdivisão para os arranjos subordinadas em caso de dimensões diferentes pode ser feita por mapeamento espacial, ou seja, por mapeamento espacial das fronteiras de blocos do arranjo principal da subdivisão para os arranjos subordinados. Em particular, para cada arranjo subordinado, pode haver um fator de escala no sentido horizontal e vertical, que determina a relação entre a dimensão do arranjo principal para o arranjo subordinado. A divisão do arranjo subordinado em sub- blocos de codificação preditiva e residual pode ser determinada pelo quadtree primário e o quadtree subordinado (s) de cada um dos blocos de árvore co- instalados do arranjo principal, respectivamente, com os blocos de árvore resultantes do arranjo subordinado sendo escalado pelo fator de escala relativa. No caso dos fatores de escala em direções horizontais e verticais diferentes (por exemplo, como em crominância 4:2:2 sub-amostragem), a previsão resultante e blocos residuais do arranjo subordinado não seria quadrados mais. Neste caso, é possível predeterminar, ou seja, selecionar adaptativamente (quer seja para toda a sequência, uma imagem fora de sequência ou para cada previsão única ou residual) se o bloco não-quadrado residual deve ser dividido em blocos quadrados. No primeiro caso, por exemplo, o codificador e decodificador podem concordar em uma subdivisão em blocos quadrados de cada vez onde um bloco mapeado não é elevado ao quadrado. No segundo caso, o subdivisor 28 pode indicar o fluxo de dados por meio de seleção de inserção 18 e 22 de fluxo de dados do subdivisor 104a. Por exemplo, no caso de crominância 4:2:2 sub- amostragem, em que os arranjos subordinados têm metade da largura, mas a mesma altura que o arranjo principal, os blocos residuais teriam o dobro de largura. Através da dividisão vertical, este bloco poderia obter dois blocos quadrados de novo.
[066] Como mencionado acima, o subdivisor 28 ou divisor 20, respectivamente, sinaliza a divisão quadtree através do fluxo de dados 22 para o sub-divisor 104a. Para este fim, o subdivisor 28 informa os dados de fluxo de inserção 18 sobre as subdivisões escolhidas para imagens 24. O insersor de fluxo de dados, por sua vez, transmite a estrutura do quadtree primário e secundário e, por conseguinte, a divisão do arranjo de imagem em blocos de tamanho variável de previsão ou de codificação de resíduos dentro da sequência de dados de fluxo de bits ou 22, respectivamente, para a descodificação lateral.
[067] Os tamanhos mínimos e máximos de bloco admissíveis são transmitidos como informação lateral e pode mudar de imagem para imagem. Ou os tamanhos mínimos e máximos de bloco admissíveis podem ser fixados no codificador e no decodificador. Estes tamanhos do bloco mínimo e máximo podem ser diferentes para os blocos de predição e residual. Para a sinalização da estrutura quadtree, o quadtree tem que ser percorrido e para cada nó que tem de ser especificado se este nó particular é um nó de folha quadtree (ou seja, o bloco correspondente não é subdividido posteriormente), ou, se é ramificado nos seus quatro nós descendentes (isto é, o bloco correspondente é dividido em quatro subblocos com metade do tamanho).
[068] A sinalização dentro de uma imagem é feita por bloco de árvore em uma ordem de digitalização raster como da esquerda para a direita e de cima para baixo, como ilustrado na fig. 5a a 140. Esta ordem de digitalização também pode ser diferente, como do lado inferior direito para cima, à esquerda ou no sentido de xadrez. Numa modalidade de realização preferida, cada bloco de árvore e, portanto, cada quadtree é percorrido em profundidade de primeira ordem para a sinalização das informações da subdivisão.
[069] Numa modalidade de realização preferida, não só as informações de subdivisão, ou seja, a estrutura da árvore, mas também os dados de predição, etc, isto é, a carga útil associada aos nós das folhas da árvore, é transmitida / processados em profundidade de primeira ordem. Isso é feito porque a primeira ordem transversal de profundidade tem grandes vantagens sobre a primeira ordem de largura. Na fig. 5b, uma estrutura quadtree é apresentada com os nós da folha marcadas como a, b, ..., j. A Fig. 5a mostra a divisão de blocos resultante. Se os blocos/nós da folha são percorridos em primeira ordem de largura, obtemos a seguinte ordem: abjchidefg. Em ordem de profundidade, no entanto, a ordem é abc ... ij. Como pode ser visto a partir da fig. 5a, na primeira ordem de profundidade, o bloco vizinho esquerdo e superior do bloco vizinho é sempre transmitido / processado antes do bloco atual. Assim, a predição do vetor de movimento e modelagem de contexto pode usar sempre os parâmetros especificados para o bloco vizinho esquerdo e superior, a fim de obter um melhor desempenho de codificação. Para primeira ordem de largura, isto não será o caso, uma vez que o bloco j é transmitido antes dos blocos e, g, e i, por exemplo.
[070] Por conseguinte, a sinalização para cada bloco de árvore é feito recursivamente ao longo da estrutura quadtree do quadtree primário de tal forma que para cada nó é transmitido um sinal, indicando se o bloco correspondente é dividido em quatro sub-blocos. Se esse sinalizador tem o valor "1" (para "verdadeiro"), então este processo de sinalização é repetido recursivamente para todos os quatro nós descendentes, ou seja, os sub-blocos em ordem de digitalização raster (canto superior esquerdo, superior direito, inferior esquerdo, canto inferior direito) até que o nó de folha do quadtree primária é alcançado. Note-se que um nó de folha é caracterizado por ter um sinalizador da subdivisão com um valor de "0". Para o caso em que um nó reside no nível mais baixo de hierarquia do quadtree primário e, portanto, corresponde ao tamanho menor do bloco de predição admissível, nenhum sinalizador da subdivisão tem que ser transmitido. Para o exemplo na fig. 3a-c, em primeiro lugar uma transmissão de "1", tal como mostrado em 190 na fig. 6a, especificando que o bloco de árvore 150 é dividido em seus quatro sub-blocos 152a-d. Em seguida, pode-se codificar recursivamente a informação da subdivisão de todos os quatro sub-blocos 152a- d em ordem de verificação raster 200. Para os dois primeiros sub-blocos 152a, b um iria transmitir "0", indicando que não se encontram sub-divididos (ver 202 na Figura 6a). Para o terceiro sub-bloco 152c (esquerda inferior), pode-se transmitir "1", indicando que este bloco é sub-dividido (ver 204 na fig. 6a). Agora, de acordo com a abordagem recursiva, os quatro sub-blocos 154a-d deste bloco seria processado. Aqui, pode-se transmitir "0" para o primeiro sub-bloco (206) e "1" para o segundo (superior direito) sub-bloco (208). Agora, os quatro blocos de tamanho de bloco menor 156a-d na fig. 3c seria processado. No caso, já atingiu o menor tamanho de bloco permitido neste exemplo, há mais dados que teriam que ser transmitidos, uma vez que uma subdivisão adicional não é possível. Caso contrário, "0000", indicando que nenhum destes blocos é dividido, seria transmitido como indicado nas figs. 6a a 210. Depois disso, seria transmitido "00" para os dois blocos mais baixos, na fig. 3b (ver 212 na fig. 6a), e, finalmente, "0" para o bloco do canto inferior direito na fig. 3a (ver 214). Assim, a cadeia binária representando a estrutura completa quadtree seria ilustrada na fig. 6a.
[071] Os diferentes sombreados de fundo nesta seqüência binária na representação da figura. 6a correspondem a diferentes níveis na hierarquia do quadtree baseada em subdivisão. O sombreado 216 representa o nível 0 (correspondendo a um tamanho de bloco igual ao tamanho de bloco de árvore original), o sombreado 218 representa o nível 1 (correspondendo a um tamanho de bloco igual a metade do tamanho do bloco de árvore original), o sombreado 220 representa o nível 2 (correspondendo a um tamanho de bloco igual a um quarto do tamanho do bloco de árvore original), e 222 representa o sombreado de nível 3 (correspondente a um tamanho de bloco igual a um oitavo do tamanho de bloco de árvore original). Todos os sinalizadores da subdivisão do mesmo nível de hierarquia (o que corresponde ao tamanho do mesmo bloco e da mesma cor que na representação de sequência binária exemplar) podem ser codificados por entropia e usando um ou mais do mesmo modelo de probabilidade de inserção 18, por exemplo.
[072] Note que, para o caso de um percurso de primeira amplitude, a informação da subdivisão seria transmitida numa ordem diferente, mostrada na fig. 6b.
[073] Semelhante à subdivisão de cada bloco de árvore para efeitos de previsão, a divisão de cada bloco de predição resultante em blocos residuais tem que ser transmitida no fluxo de bits. Além disso, pode haver um tamanho de bloco máximo e mínimo para a codificação residual que é transmitida como informação lateral e que pode mudar de imagem para imagem. Ou o valor máximo e mínimo para o tamanho do bloco de codificação residual pode ser fixado no codificador e decodificador. Em cada nó da folha primária do quadtree, tal como os mostrados na fig. 3c, o bloco de predição correspondente pode ser dividido em blocos residuais do tamanho máximo admissível. Estes blocos são os nós de raiz constituintes da estrutura quadtree subordinada para codificação residual. Por exemplo, se o tamanho do bloco máximo residual para a imagem é de 64 x 64 e o bloco de predição é de tamanho 32x32, em seguida, o bloco inteiro de predição que corresponderia a um nó raiz subordinado do quadtree (residual) de tamanho 32x32. Por outro lado, se o tamanho do bloco máximo residual para a imagem é de 16 x 16, então o bloco de predição 32x32 consistiria de quatro nós de raiz quadtree residuais, cada um de tamanho 16 x 16. Dentro de cada bloco de predição, a sinalização da estrutura quadtree subordinada é feita nó de raiz por nó de raiz na ordem de digitalização raster (esquerda para a direita, de cima para baixo). Tal como no caso da estrutura primária quadtree (predição), para cada nó de um sinalizador é codificado, que especifica se esse nó particular é dividido em quatro nós descendentes. Então, se esse sinalizador tem um valor de "1", este procedimento é repetido recursivamente para todos os quatro nós descendentes correspondentes e seus correspondentes sub-blocos na ordem de digitalização raster (canto superior esquerdo, superior direito, inferior esquerdo, canto inferior direito) até que um nó de folha do quadtree subordinado seja atingido. Tal como no caso do quadtree primário, não é necessária a sinalização para os nós de nível mais baixo da hierarquia do quadtree subordinada, uma vez que os nós correspondem aos blocos do bloco residual do tamanho menor possível, que não podem ainda ser divididos.
[074] Para codificação por entropia, sinalizadores da subdivisão residual do bloco pertencente a blocos residuais do mesmo tamanho de bloco podem ser codificados utilizando um único modelo de mesma probabilidade.
[075] Assim, de acordo com o exemplo apresentado acima em relação às Figs. 3a a 6a, o subdivisor 28 definiu uma subdivisão principal para fins de predição e uma subdivisão subordinada dos blocos de tamanhos diferentes da subdivisão primária para fins de codificação residuais. O insersor do fluxo de dados 18 codificou a subdivisão primária através da sinalização para cada bloco de árvore numa ordem de digitalização em ziguezague, uma sequência de bits construídos de acordo com a fig. 6a, juntamente com o tamanho do bloco de codificação máximo primário e o nível de hierarquia máxima da subdivisão principal. Para cada bloco de predição assim definido, os parâmetros de predição associados foram incluídos no fluxo de dados. Além disso, uma codificação de informações semelhantes, ou seja, o tamanho máximo, o nível de hierarquia e sequências de bits máxima de acordo com a fig. 6a, foi realizada para cada bloco de predição do tamanho o qual era igual ou menor do que o tamanho máximo para a sub-divisão residual e para cada bloco residual da raiz da árvore no qual os blocos de predição pré-dividiram o tamanho que excede o tamanho máximo definido para os blocos residuais. Para cada bloco residual assim definido, os dados residuais são inseridos no fluxo de dados.
[076] O extractor 102 extrai as sequências de bits respectivas a partir do fluxo de dados na entrada 116 e informa os divisores 104 sobre as informações da subdivisão assim obtida. Além disso, o insersor dos dados de fluxo 18 e o extrator 102 podem usar a ordem acima mencionada entre os blocos de predição e os blocos residuais para transmitir elementos de sintaxe adicionais, tais como saída de dados residuais pelo pré-codificador residual 14 e saída da predição dos parâmetros pelo preditor 12. Usando esta ordem tem vantagens em que os contextos adequados para codificar os elementos de sintaxe individuais para um determinado bloco pode ser escolhido através da exploração de elementos de sintaxe já codificados / decodificados de blocos vizinhos. Além disso, de forma semelhante, o pré-codificador residual 14 e o preditor 12, bem como o reconstrutor residual 106 e o pré-codificador 110 podem processar a predição individual e blocos residuais na ordem acima descrita.
[077] A Fig. 7 mostra um diagrama de fluxo em etapas, que podem ser realizadas pelo extrator 102, a fim de extrair a informação da subdivisão do fluxo de dados 22, quando codificado no modo como descrito acima. Em um primeiro passo, o extrator 102 divide a imagem em blocos 24 de árvores de raiz 150. Este passo está indicado como passo 300 na fig. 7. O passo 300 pode envolver o extrator 102 extraindo o tamanho máximo do bloco de predição a partir do fluxo de dados 22. Adicionalmente ou em alternativa, o passo 300 pode envolver o extractor 102 para extrair o máximo nível de hierarquia do fluxo de dados 22.
[078] Em seguida, num passo 302, um extrator 102 decodifica o sinalizador ou bit do fluxo de dados. O passo 302 é executado pela primeira vez, o extrator 102 sabe que o sinalizador correspondente é o primeiro sinalizador da sequência de bits pertencentes ao primeiro bloco de raiz da árvore 150 na ordem de digitalização do bloco da raiz da árvore 140. Como este sinalizador é um sinalizador de nível de hierarquia 0, o extrator 102 pode usar um contexto associado a modelagem de nível 0 de hierarquia no passo 302, a fim de determinar um contexto. Cada contexto pode ter uma estimativa de probabilidade correspondente para o sinalizador de decodificação por entropia associada com a mesma. A estimativa da probabilidade dos contextos em contexto individual pode ser adaptada para a respectiva estatística do contexto símbolo. Por exemplo, a fim de determinar um contexto apropriado para decodificar o sinalizador de nível 0 de hierarquia no passo 302, o extrator 102 pode selecionar um contexto de um conjunto de contextos, que está associado com esse nível 0 de hierarquia, dependendo do nível 0 de hierarquia do sinalizador de blocos de árvore vizinhos, ou mesmo, dependendo da informação contida dentro das cadeias de bits que definem a subdivisão quadtree de blocos de árvore vizinhos do bloco de árvore atualmente processado, tais como o bloco de árvore vizinho superior e esquerdo.
[079] No passo seguinte, ou seja, passo 304, o extrator 102 verifica se o sinalizador recentemente decodificado sugere um parcionamento. Se este for o caso, o extrator 102 parciona o bloco atual - presente como um bloco de árvore - ou indica esse parcionamento para o subdivisor 104a na etapa 306 e verifica, na etapa 308, se o nível de hierarquia do fluxo era igual ao nível de hierarquia máxima menos um. Por exemplo, o extrator 102 pode, por exemplo, também ter o nível de hierarquia máximo extraído do fluxo de dados no passo 300. Se o nível de hierarquia atual é desigual ao nível de hierarquia máxima menos um, o extrator 102 aumenta o nível de hierarquia atual por 1 no passo 310 e recua para o passo 302 para decodificar o próximo sinalizador do fluxo de dados. Desta vez, os sinalizadores a ser descodificados no passo 302 pertencem a outro nível de hierarquia e, portanto, de acordo com uma modalidade de realização, o extrator 102 pode selecionar um dos diferentes conjuntos de contextos, o conjunto que pertence ao nível de hierarquia atual. A seleção também pode basear-se em sequências de subdivisão de bits de acordo com a fig. 6a de blocos de árvore vizinhos já tendo sido decodificado.
[080] Se um sinalizador é decodificado, e a verificação no passo 304 revela que este sinalizador não sugere uma divisão do bloco atual, o extrator 102 continua com o passo 312 para verificar se o nível de hierarquia atual é 0. Se este for o caso, o extractor 102 prossegue o processamento em relação ao bloco seguinte da raiz da árvore na ordem da digitalização 140 no passo 314, ou interrompe o processamento da extração da informação da subdivisão, se não houver nenhum bloco da raiz da árvore a ser processado para a esquerda.
[081] Deve ser notado que a descrição da fig. 7 concentra-se na decodificação dos sinalizadores de indicação de subdivisão da predição da subdivisão apenas, de modo que, de fato, o passo 314 pode envolver a decodificação de caixas adicionais ou elementos de sintaxe referentes, por exemplo, para o bloco de árvore atual. Em qualquer caso, se outro ou um próximo bloco de raiz da árvore existe, o extrator 102 prossegue a partir do passo 314 para o passo 302 para decodificar o sinalizador próximo a partir da informação da subdivisão, isto é, o primeiro sinalizador da sequência do indicador em relação ao novo bloco de raiz da árvore.
[082] Se, no passo 312, o nível de hierarquia acaba sendo diferente de 0, a operação prossegue na etapa 316 com uma verificação para saber se outros nós descendentes pertencentes ao nó atual existe. Isto é, quando o extrator 102 executa a verificação no passo 316, que já foi verificado no passo 312 que o nível de hierarquia atual é um nível de hierarquia diferente do nível 0 de hierarquia. Isto, por sua vez, significa que existe um nó parente, que pertence a um bloco de raiz da árvore 150 ou um dos blocos menores 152a-d, ou blocos ainda menores 152a-d, e assim por diante. O nó da estrutura da árvore, ao qual o sinalizador recém-descodificado pertence, tem um nó parente, que é comum a três nós adicionais da estrutura da árvore atual. A ordem de digitalização entre nós descendentes tais com um nó parente comum foi ilustrado na figura exemplar 3 para o nível 0 de hierarquia com o sinal de referência 200. Assim, no passo 316, o extrator 102 controla quanto ao fato de cada um destes quatro nós descendentes já terem sido visitados no âmbito do processo da fig. 7. Se este não for o caso, isto é, se não houver nós descendentes adicionais com o nó parente atual, o processo da fig. 7 prossegue com o passo 318, onde o nó descendente seguinte de acordo com uma ordem de digitalização em ziguezague 200 dentro do nível de hierarquia atual é visitado, de modo que o seu subbloco correspondente agora representa o bloco em curso de processo 7 e, a partir daí, um sinalizador é decodificado no passo 302 a partir do fluxo de dados em relação ao bloco atual ou o nó atual. Se, no entanto, não existir nós descendentes adicionais para o nó parente atual no passo 316, o processo da fig. 7 prossegue para a etapa 320, onde o nível de hierarquia atual é diminuído por 1, em que a seguir o processo avança com o passo 312.
[083] Ao realizar as etapas mostradas na fig. 7, o extrator 102 e o subdivisor 104a cooperam para recuperar a subdivisão lateral escolhida do codificador a partir do fluxo de dados. O processo da fig. 7 é concentrado no caso acima descrito, a predição de subdivisão. A Fig. 8 mostra, em combinação com o diagrama de fluxo da fig. 7, como o extrator 102 e o subdivisor 104a cooperam para recuperar a subdivisão residual do fluxo de dados.
[084] Em particular, a fig. A Fig. 8 mostra os passos executados pelo extrator 102 e do subdivisor 104a, respectivamente, para cada bloco de predição resultante da predição da subdivisão. Estes blocos de predição são percorridos, como mencionado acima, de acordo com uma análise em ziguezague 140 a ordem entre os 150 blocos de árvore da predição da subdivisão e utilização de uma profundidade de primeira ordem transversal no interior de cada bloco de árvore 150 atualmente visitado para atravessar os blocos de folha como mostrado, por exemplo, na fig. 3c. De acordo com a ordem de busca em profundidade, os blocos de folhas de blocos de árvore primários parcionados são visitados na ordem de busca em profundidade com a visita de sub-blocos de um determinado nível hierárquico tendo um nó comum atual na ordem de digitalização em ziguezague 200 e principalmente a digitalização da subdivisão de cada um destes sub-blocos antes de prosseguir para o próximo sub-bloco, por esta ordem de digitalização em ziguezague 200.
[085] Para o exemplo na fig. 3c, a ordem de verificação resultante entre os nós de folha do bloco de árvore 150 é mostrado com o sinal de referência 350.
[086] Para um bloco de predição atualmente visitado, o processo da fig. 8 começa no passo 400. No passo 400, um parâmetro interno indicando o tamanho atual do bloco atual é ajustado igual ao tamanho do nível de hierarquia 0 da subdivisão residual, ou seja, o tamanho máximo do bloco da sub-divisão residual. Deve ser lembrado que o tamanho máximo do bloco residual pode ser menor do que o menor tamanho de bloco de predição da subdivisão ou pode ser igual ou maior do que o último. Em outras palavras, de acordo com uma modalidade de realização, o codificador é livre para escolher qualquer uma das possibilidades apenas mencionadas.
[087] No passo seguinte, ou seja, o passo 402, é realizada uma verificação se o tamanho do bloco do bloco de predição atualmente visitado é maior do que o parâmetro que indica o tamanho interno atual. Se este for o caso, o bloco de predição atualmente visitado, o qual pode ser um bloco de folhas de predição da subdivisão ou um bloco de árvore da predição da subdivisão, que não tenha sido parcionado mais longe, é maior do que o tamanho máximo de bloqueio residual e, neste caso, o processo da fig. 8 prossegue com passo 300 da figura. 7. Isto é, o bloco de predição atualmente visitado é dividido em blocos de raízes da árvore residuais e o primeiro sinalizador da sequência do primeiro sinalizador do bloco de árvore residual dentro deste bloco de predição actualmente visitada é descodificado no passo 302, e assim por diante.
[088] Se, no entanto, o bloco de predição atualmente visitado tem um tamanho igual ou menor do que o parâmetro interno indicando o tamanho atual, o processo da fig. 8 prossegue para o passo 404, onde o tamanho do bloco de predição é verificado para determinar se o mesmo é igual ao parâmetro interno indicando o tamanho atual. Se este for o caso, a etapa de divisão 300 pode ser omitida e o processo prossegue diretamente com passo 302 da fig. 7.
[089] Se, no entanto, o tamanho do bloco de predição de bloco de predição atualmente visitada é menor do que o parâmetro interno indicando o tamanho atual, o processo da fig. 8 prossegue com o passo 406, onde o nível de hierarquia é aumentado em 1 e o tamanho atual é ajustado para o tamanho do novo nível de hierarquia, assim como dividido por 2 (em ambos os sentidos do eixo no caso de subdivisão quadtree). Depois disso, a verificação do passo 404 é realizada novamente. O efeito do circuito formado pelos passos 404 e 406 é a de que o nível de hierarquia sempre corresponde ao tamanho dos blocos correspondentes a serem parcionados e independente da predição do bloco respectivo ter sido menor ou igual a / maior do que o tamanho máximo do bloco residual. Assim, durante a decodificação dos sinalizadores no passo 302, o contexto de modelagem realizada depende do nível de hierarquia e o tamanho do bloco para o qual o sinalizador refere-se, ao mesmo tempo. O uso de diferentes contextos de sinalizadores de diferentes níveis de hierarquia ou tamanhos de bloco, respectivamente, é vantajoso na medida em que a estimativa de probabilidade pode caber bem a distribuição de probabilidade real entre as ocorrências do valor do sinalizador com, por outro lado, ter um número relativamente moderado de contextos a serem administrados, reduzindo desse modo a sobrecarga do contexto de gestão, bem como aumentar a adaptação do contexto para as estatísticas do símbolos atuais.
[090] Como já foi notado acima, pode haver mais de um conjunto de amostras e estes arranjos de amostras podem ser agrupados em um ou mais grupos de plano. O sinal de entrada a ser codificado, indicando a entrada 32, por exemplo, pode ser uma imagem de uma sequência de vídeo ou a imagem fixa. A imagem pode assim, ser administrada na forma de um ou mais arranjos de amostra. No contexto da codificação de uma imagem de uma sequência de vídeo ou da imagem fixa, os arranjos de amostra podem referir-se aos três planos de cores, tais como vermelho, verde e azul de luminância ou crominância de plano e, como em representações de cor de YUV ou YCbCr. Além disso, os arranjos de amostras representando alfa, isto é, transparência, e / ou a informação da profundidade em 3-D de material de vídeo pode estar presente também. Um determinado número destes arranjos de amostra pode ser agrupado em conjunto como um assim chamado grupo de plano. Por exemplo, a luminância (Y) pode ser um grupo de plano com apenas um arranjo de amostra e de crominância, como CbCr, pode ser outro grupo de plano com dois arranjos de amostra ou, num outro exemplo, YUV pode ser um grupo com três arranjos de plano e uma informação de profundidade para o material de vídeo em 3-D pode ser um grupo de plano diferente com um único arranjo de amostra. Para cada grupo de plano, uma estrutura quadtree primária pode ser codificada dentro do fluxo de dados 22 para representar a divisão em blocos de predição e para cada bloco de predição, uma estrutura secundária quadtree representa a divisão em blocos residuais. Assim, de acordo com um primeiro exemplo que acabamos de mencionar, onde o componente de luminância é um grupo de plano, enquanto que o componente de crominância forma o outro grupo plano, haveria uma estrutura quadtree para os blocos de predição do plano de luminância, uma estrutura quadtree para os blocos residuais de luminância, o plano de uma estrutura quadtree para o bloco de predição do plano de crominância e uma estrutura quadtree para os blocos residuais do plano de crominância. No segundo exemplo mencionado anteriormente, no entanto, haveria uma estrutura quadtree para os blocos de predição de luminância e crominância juntos (YUV), uma estrutura quadtree para os blocos residuais de luminância e crominância juntos (YUV), uma estrutura quadtree para a predição de informações de blocos de profundidade para o material de vídeo em 3-D e uma estrutura quadtree para os blocos residuais da informação de profundidade para o material de vídeo em 3-D.
[091] Além disso, na descrição anterior, o sinal de entrada foi dividido em blocos de predição utilizando uma estrutura primária quadtree e foi descrito como esses blocos de predição foram ainda subdivididos em blocos residuais, utilizando uma estrutura de quadtree subordinado. De acordo com uma modalidade de realização alternativa, a subdivisão não pode terminar no estágio quadtree subordinado. Isto é, os blocos obtidos a partir de uma divisão usando a estrutura quadtree subordinada podem ainda ser subdivididos com uma estrutura quadtree terciária. Esta divisão, por sua vez, pode ser utilizada para a finalidade da utilização de codificação de novas ferramentas que podem facilitar a codificação do sinal residual.
[092] A descrição anterior concentrou-se na subdivisão feita pelo subdivisor 28 e subdivisores 104a, respectivamente. Como mencionado acima, a subdivisão definida pelo subdivisor 28 e 104a, respectivamente, podem controlar a granularidade de processamento de um dos módulos acima mencionados do codificador 10 e do decodificador 100. No entanto, de acordo com as modalidades de realização descritas a seguir, os subdivisores 228 e 104a, respectivamente, são seguidos por uma concentração de fusão 30 e 104b, respectivamente. Deve notar-se, contudo, que as concentrações 30 e 104b são opcionais e podem ser deixadas fora.
[093] Com efeito, no entanto, e como será descrita em mais detalhe abaixo, a concentração proporciona o codificador com a oportunidade de combinar alguns dos blocos de predição ou blocos residuais para grupos ou agregados, de modo que o outro, ou pelo menos alguns dos outros módulos podem tratar estes grupos de blocos juntos. Por exemplo, o indicador 12 pode sacrificar os pequenos desvios entre os parâmetros de predição de alguns blocos de predição determinados pela otimização utilizando a subdivisão do subdivisor 28 e usar parâmetros de predição comuns a todos estes blocos em vez de predição, se a sinalização do grupoo dos blocos de predição juntamente com um parâmetro de transmissão comum para todos os blocos pertencentes a este grupo forem mais promissores em sentido de taxa / proporção de distorção do que sinalizar individualmente os parâmetros de predição para todos os blocos de predição. O processamento para recuperar a predição de preditores 12 e 110, em si, com base nestes parâmetros de predição comuns pode, no entanto, ainda ocorrer a predição de bloco. No entanto, é também possível que os indicadores 12 e 110 ainda realizem o processo de predição de uma vez para todo o grupo de blocos de predição.
[094] Como será descrito em maior detalhe abaixo, é também possível que o grupo de blocos de predição seja não só para a utilização dos mesmos parâmetros de predição ou comum para um grupo de blocos de previsão, mas, em alternativa, ou, além disso, permite que o codificador 10 envie um parâmetro de predição para este grupo, juntamente com os resíduos de predição para blocos de predição que pertencem a este grupo, de modo que a sobrecarga de sinalização para a sinalização dos parâmetros de predição para este grupo pode ser reduzida. Neste último caso, o processo de fusão pode apenas influenciar a inserção do fluxo de dados 18, em vez das decisões tomadas pelo pré- codificador residual 14 e o preditor 12. No entanto, mais detalhes são apresentados abaixo. Para completar, no entanto, deve notar-se que apenas o aspecto mencionado também se aplica a outras subdivisões, tais como a subdivisão residual ou o filtro de subdivisão mencionado acima.
[095] Em primeiro lugar, a fusão de conjuntos de amostras, tais como acima mencionada e a predição de blocos residuais, é motivada, num sentido mais amplo, isto é, não se limita a subdivisão multi-tree acima mencionada. Subsequentemente, no entanto, a descrição foca na fusão de blocos resultantes da subdivisão multi-tree para os quais modalidades de realização acabam de ser descritas acima.
[096] De modo geral, a fusão dos elementos de sintaxe associados com conjuntos específicos de amostras para o propósito de transmitir associados parâmetros de codificação permite reduzir a taxa de informações de aplicações de codificação lateral de imagem e vídeo. Por exemplo, os arranjos de amostra do sinal a ser codificado são usualmente divididos em conjuntos particulares de amostras ou conjuntos de amostras, que podem representar blocos retangulares ou quadrados, ou qualquer outra de coleção de amostras, incluindo as regiões arbitrariamente em forma de triângulos, ou outras formas. Nas modalidades de realização acima descritas, as regiões simplesmente ligadas eram os blocos de predição e os blocos residuais resultantes da subdivisão multi-tree. A subdivisão de arranjos de amostra pode ser fixada pela sintaxe ou, como descrito acima, a divisão parcial pode ser, pelo menos parcialmente, sinalizada no interior do fluxo de bits. Para manter a taxa de informação lateral para a sinalização de informações de subdivisão pequena, a sintaxe geralmente permite apenas um número limitado de escolhas, resultando em separação simples, tais como a subdivisão de blocos para blocos menores. Os conjuntos de amostras estão associados a determinados parâmetros de codificação, os quais podem especificar a informação de predição ou modos de codificação residuais, etc. Detalhes sobre este assunto foram descritos acima. Para cada conjunto de amostra, os parâmetros individuais de codificação, tais como para a especificação de predição e / ou codificação residuais podem ser transmitidos. A fim de obter uma melhor eficiência de codificação, o aspecto da fusão descrita a seguir, ou seja, a fusão de dois ou mais conjuntos de amostras nos assim denominados grupos de conjuntos de amostras, permite algumas vantagens, que são descritas mais abaixo. Por exemplo, os conjuntos de amostras podem ser combinados de tal modo que toda a amostra fixa de um determinado grupo de partes dos mesmos parâmetros de codificação, os quais podem ser transmitidos em conjunto com uma amostra ajusta-se no grupo. Ao fazer isso, os parâmetros de codificação não têm que ser transmitidos para cada conjunto de amostras de um grupo de conjuntos de amostras de forma individual, mas, em vez disso, os parâmetros de codificação são transmitidos apenas uma vez para todo o grupo de conjuntos de amostras. Como resultado, a taxa de informação lateral para a transmissão dos parâmetros de codificação pode ser reduzida e a eficiência geral de codificação pode ser melhorada. Como uma abordagem alternativa, um refinamento adicional de um ou mais parâmetros de codificação podem ser transmitidos a um ou mais conjuntos de amostras de um grupo de conjuntos de amostras. O refinamento pode ser aplicado a todos os conjuntos de amostras de um grupo ou apenas para o conjunto de amostras para o qual é transmitido.
[097] O aspecto da fusão descrito abaixo também fornece ao codificador uma maior liberdade na criação do fluxo de bits 22, uma vez que a abordagem de fusão aumenta significativamente o número de possibilidades para a seleção de um parcionamento para os arranjos de amostras de uma imagem. Uma vez que o codificador pode escolher entre mais opções, tais como, minimizar a taxa de medida / distorção particular, a eficiência de codificação pode ser melhorada. Existem várias possibilidades de operar um codificador. Em uma abordagem simples, o codificador poderia em primeiro lugar determinar a melhor subdivisão dos arranjos de amostra. Numa breve referência à fig. 1, o subdivisor 28 pode determinar a subdivisão ótima em uma primeira fase. Posteriormente, pode ser verificado, para cada conjunto de amostras, se uma fusão com um outro conjunto de amostras ou um outro grupo de conjuntos de amostras, reduz uma medida de custo em particular de taxa / distorção. Com isso, os parâmetros de predição associados a um grupo resultante da fusão de conjuntos de amostras podem ser re-estimados, tais como através da realização de uma varredura de movimento novo ou os parâmetros de predição que tenham sido determinados para o conjunto de amostra comum e o conjunto candidato de amostras ou grupo de conjuntos de amostras para a fusão pode ser avaliado para o grupo considerado de conjuntos de amostras. Numa abordagem mais abrangente, uma medida de custo, em particular de taxa / distorção pode ser avaliada para grupos candidatos adicionais de conjuntos de amostras.
[098] Deve ser notado que a abordagem de fusão descrita a seguir não altera a ordem de processamento dos conjuntos de amostras. Isto é, o conceito de fusão pode ser executado de certo modo que o atraso não é aumentado, isto é, cada conjunto de amostras continua decodificável no mesmo tempo sem utilizar a abordagem de fusão.
[099] Se, por exemplo, a taxa de bits que é economizada por reduzir o número de parâmetros de predição codificados for maior do que a taxa de bits que está para ser adicionalmente gasta para a codificação de informação de fusão para a indicação da fusão para a decodificação lateral, a abordagem de fusão adicional a ser descrita abaixo resulta em um aumento da eficiência de codificação. Além disso, deve ser mencionado que a extensão de sintaxe descrita para a fusão proporciona o codificador com a liberdade adicional na seleção de parcionamento de uma imagem ou um grupo de plano em blocos. Em outras palavras, o codificador não se restringe a realizar a subdivisão em primeiro lugar e, em seguida, verifica se algum dos blocos resultantes tem o mesmo conjunto ou um conjunto semelhante de parâmetros de predição. Como uma alternativa simples, o codificador pode determinar primeiro a subdivisão de acordo com uma medida de distorção da taxa de custo e, em seguida, o codificador pode verificar, para cada bloco, se uma fusão com um dos seus blocos vizinhos ou o grupo associado de blocos já determinado reduz uma medida de custo da taxa de distorção. Com isso, os parâmetros de predição associados com o novo grupo de blocos pode ser re-estimado, tais como através da realização de uma varredura de novo movimento ou os parâmetros de predição que tenham sido determinados para o bloco em curso e o bloco vizinho ou grupos de blocos pode ser avaliado para o novo grupo de blocos. A informação da fusão pode ser sinalizada com base em blocos. Efetivamente, a fusão pode também ser interpretada como inferência dos parâmetros de predição para um bloco atual, em que os parâmetros de predição inferidos são igualados com os parâmetros de predição de um dos blocos vizinhos. Em alternativa, os resíduos podem ser transmitidos por blocos dentro de um grupo de blocos.
[100] Assim, a idéia fundamental subjacente ao conceito da fusão descrita abaixo é a de reduzir a taxa de bits que é necessária para a transmissão dos parâmetros de predição ou outros parâmetros de codificação, fundindo blocos vizinhos para um grupo de blocos, onde cada grupo de blocos está associado a um único conjunto de parâmetros de codificação, tais como parâmetros de predição ou parâmetros de codificação residuais. A informação de fusão é sinalizada dentro do fluxo de bits em complemento à informação da subdivisão, se presente. A vantagem do conceito de fusão é um aumento de eficiência de codificação resultante de uma diminuição da taxa de informação lateral para os parâmetros de codificação. Deve-se notar que os processos de fusão descritos aqui podem também estender-se a outras dimensões do que as dimensões espaciais. Por exemplo, um grupo de conjuntos de amostras ou blocos, respectivamente, encontrando-se dentro de várias imagens de vídeo diferentes, podem ser fundidos em um grupo de blocos. A fusão pode também ser aplicada a compressão de 4-D e de luz de campo de codificação.
[101] Assim, resumidamente retornando para a descrição anterior das fig. 1 a 8, deve ser notado que o processo de fusão subsequente a subdivisão é vantajoso independente do modo específico que sub-divisores 28 e 104a, respectivamente, subdividem as imagens. Para ser mais preciso, este último pode também subdividir as imagens de um modo semelhante a, por exemplo, H.264, ou seja, através da divisão de cada sub-imagem num arranjo regular de macro blocos retangulares ou quadrados de um tamanho pré-determinado, tal como amostras de luminância 16 x 16 ou um tamanho sinalizado dentro do fluxo de dados, cada macrobloco com certos parâmetros de codificação que lhe estão associados que compreende, inter alia, os parâmetros de parcionamento que define, para cada macrobloco, uma repartição em uma sub-rede regular de 1, 2, 4 ou algum outro número de divisores que servem como uma granularidade de predição e os parâmetros de predição correspondentes no fluxo de dados, bem como para definir a separação do resíduo e a granularidade de transformação residual correspondente.
[102] Em qualquer caso, a fusão proporciona as vantagens acima mencionadas brevemente discutidas, tais como a redução da taxa de bits de informação lateral em aplicações de codificação de imagem e vídeo. Um conjunto particular de amostras, que podem representar os blocos retangulares ou quadrados ou regiões moldadas arbitrariamente, ou qualquer outra coleção de amostras, tais como qualquer região simplesmente ligada ou as amostras são normalmente ligadas a um determinado conjunto de parâmetros de codificação e para cada um dos conjuntos de amostras, os parâmetros de codificação são incluídos no fluxo de bits, os parâmetros de codificação que representam, por exemplo, parâmetros de predição, que especificam como o conjunto de amostras correspondente é previsto utilizando amostras já codificadas. O parcionamento dos arranjos de amostras de uma imagem em conjuntos de amostras pode ser fixado pela sintaxe ou pode ser sinalizado pela informação de subdivisão correspondente dentro do fluxo de bits. Os parâmetros de codificação para o conjunto de amostra podem ser transmitidos numa ordem pré-definida, a qual é dada pela sintaxe. De acordo com a funcionalidade de fusão, a fusão 30 é capaz de sinalizar, por um conjunto comum de amostras ou de um bloco fluxo, tais como um bloco ou um bloco de predição residual que está fundido com um ou mais conjuntos de amostras, para um grupo de conjuntos de amostras. Os parâmetros de codificação para um grupo de conjuntos de amostras, por conseguinte, necessita ser transmitido apenas uma vez. Numa modalidade de realização particular, os parâmetros de codificação de um conjunto de amostras de fluxo não são transmitidos, se o conjunto de amostras de fluxo é fundido com um conjunto de amostras ou um grupo já existente de conjuntos de amostras para o qual os parâmetros de codificação já tenham sido transmitidos. Em vez disso, os parâmetros de codificação para o atual conjunto de amostras são igualados com os parâmetros de codificação do conjunto de amostras ou um grupo de conjuntos de amostras com a qual o atual conjunto de amostras é fundido. Como uma abordagem alternativa, um refinamento adicional de um ou mais parâmetros de codificação podem ser transmitidos por um conjunto de amostra. O refinamento pode ser aplicado a todos os conjuntos de amostras de um grupo ou apenas para o conjunto de amostras para o qual é transmitido.
[103] De acordo com uma modalidade de realização, para cada conjunto de amostras, tais como um bloco de predição como mencionado acima, um bloco residual tal como acima referido, ou um bloco de folhas de uma subdivisão multitree como mencionado acima, o conjunto de todos os conjuntos de amostras previamente codificados / decodificados é chamado de "conjunto de conjuntos de amostras causais". Ver, por exemplo, a fig. 3c. Todos os blocos mostrados nesta figura são o resultado de uma determinada subdivisão, tal como uma subdivisão de predição ou uma subdivisão residual ou de qualquer subdivisão multitree, ou similar, e a ordem de codificação / decodificação definida entre estes blocos são definidos pela seta 350. Considerando-se um determinado bloco entre esses blocos como sendo o conjunto de amostras atual ou região atual simplesmente ligada, o seu conjunto de conjuntos de amostras causais é feito de todos os blocos anteriores do bloco atual ao longo da ordem 350. No entanto, deve novamente ser relembrado que outra subdivisão não utilizando subdivisão multi-tree seria possível, assim como a seguinte discussão dos princípios que se fundem são relatados.
[104] Os conjuntos de amostras que podem ser utilizados para a fusão com um conjunto atual de amostras é chamado o "conjunto de conjuntos de amostras candidatos" a seguir e é sempre um subconjunto de "conjunto de conjuntos de amostras causais". A maneira como o subconjunto é formado pode ser conhecido para o decodificador, ou pode ser especificada no interior do fluxo de dados ou fluxo de bits a partir do codificador para o decodificador. Se um determinado conjunto de amostras de fluxo é codificado / decodificado e o seu conjunto de conjuntos de amostras candidatos não estiver vazio, ele é sinalizado dentro do fluxo de dados no codificador ou derivado a partir do fluxo de dados no decodificador se o conjunto de amostras é fundido com um conjunto de amostras para fora do conjunto de conjuntos de amostras candidatos e, se assim for, com um deles. Caso contrário, a união não pode ser usada para este bloco, uma vez que o conjunto de conjuntos de amostras candidatos está vazio de qualquer maneira.
[105] Existem diferentes maneiras para determinar como o subconjunto do conjunto de conjuntos de amostras causais constitui o conjunto de conjuntos de amostras candidatos. Por exemplo, as determinações dos conjuntos de amostras candidatos podem basear-se em uma amostra no interior do atual conjunto de amostras, o qual é exclusivamente geometricamente definido, tais como a amostra de imagem superior esquerda de um bloco retangular ou quadrado. A partir desta amostra única geometricamente definida, um número diferente de zero, em particular de amostras, é determinado, que representa diretamente vizinhos espaciais desta amostra exclusiva geometricamente definida. Por exemplo, em particular, o número diferente de zero de amostras compreende o vizinho superior e o vizinho esquerdo da amostra exclusiva geometricamente definida do atual conjunto de amostras, de modo que o número não-zero de amostras vizinhos pode ser, no máximo , dois, um, se um dos vizinhos de cima e à esquerda não estiver disponível ou estiver fora da imagem, ou zero, no caso de ambos os vizinhos ausentes.
[106] O conjunto de conjuntos de amostras candidatas pode então ser determinado a abranger esses conjuntos de amostras que contêm pelo menos um número diferente de zero das amostras vizinhas apenas mencionadas. Ver, por exemplo, a fig. 9a. A amostra atual do conjunto atualmente sob consideração como sendo a objeto de fusão, deve ser o bloco X e sua amostra geometricamente exclusivamente definida, deve ser exemplarmente a amostra superior esquerda indicada em 400. As amostras vizinhas superiores e esquerdas da amostra 400 são indicadas em 402 e 404. O conjunto de conjuntos de amostras causais ou conjunto de blocos causais é destacado de forma sombreada. Entre estes blocos, os blocos A e B formam uma das amostras vizinhas 402 e 404 e, portanto, estes blocos formam o conjunto de blocos de candidatos ou o conjunto de conjuntos de amostras candidatos.
[107] De acordo com outra modalidade de realização, o conjunto de conjuntos de amostras candidatas determinado por uma questão de fusão pode adicionalmente ou exclusivamente incluir conjuntos de amostras que contenham um número diferente de zero em particular de amostras, que podem ser um ou dois, que têm a mesma localização espacial, mas estão contidos em uma imagem diferente, a saber, por exemplo, uma imagem previamente codificada / decodificada. Por exemplo, além dos blocos A e B na fig. 9a, um bloco de uma imagem previamente codificada pode ser usado, que compreende a amostra na mesma posição como a amostra 400. A propósito, deve ser notado que apenas a parte superior da amostra 404 vizinha ou meramente de exemplo a esquerda vizinha 402 poderia ser usada para definir o número diferente de zero de amostras vizinhos acima mencionados. Em geral, o conjunto de conjuntos de amostras candidatas pode ser derivado a partir dos dados anteriormente processados dentro da imagem atual ou em outras imagens. A derivação pode incluir informação direcional espacial, como transformar coeficientes associados com uma determinada direção e gradientes de imagem da imagem atual ou pode incluir informação direcional temporal, tais como representações de movimento vizinho. A partir de tais dados disponíveis para os dados do receptor / decodificador e outro lado e informações no interior do fluxo de dados, se estiver presente, o conjunto de conjuntos de amostras candidatas podem ser derivadas.
[108] Deve notar-se que a derivação dos conjuntos de amostras candidatas é realizada em paralelo por ambos fusores 30 na lateral do codificador e fusores 104b na lateral do decodificador. Como já mencionado, tanto pode determinar o conjunto dos conjuntos de amostras candidatas independente um do outro com base em uma maneira pré-definida conhecida para ambos ou o codificador pode sinalizar dicas dentro do fluxo de bits, que trazem o fusor 104b em condições de desempenhar a derivação destes conjuntos de amostras candidatas de um modo igual à forma de fusão 30 na lateral do codificador determinando o conjunto de conjuntos de amostras candidatas.
[109] Como será descrito em maior detalhe abaixo, a fusão de fluxo de dados 30 e inserção do fluxo de dados 18 cooperam a fim de transmitir um ou mais elementos de sintaxe para cada conjunto de amostras, as quais especificam se o conjunto de amostras é fundido com outro conjunto de amostras, o que, por sua vez, pode ser parte de um grupo já mesclado de conjuntos de amostras, e que do conjunto de conjuntos de amostras é utilizado para candidatos de fusão. O extrator 102, por sua vez, extrai esses elementos de sintaxe e informa o fusor 104b adequadamente. Em particular, de acordo com a modalidade de realização específica descrita mais adiante, um ou dois elementos de sintaxe são transmitidos para especificar a informação de fusão para um determinado conjunto de amostras. O primeiro elemento de sintaxe especifica se o conjunto atual de amostras é mesclado com outro conjunto de amostras. O segundo elemento de sintaxe, só é transmitido se o primeiro elemento de sintaxe especificar que o atual conjunto de amostras é mesclado com outro conjunto de amostras, especificando qual conjunto dos conjuntos de amostras candidatos é empregado para a fusão. A transmissão do primeiro elemento de sintaxe pode ser suprimida se um conjunto de derivados de conjuntos de amostras candidatas está vazio. Em outras palavras, o primeiro elemento de sintaxe apenas pode ser transmitido se um conjunto de derivados de conjuntos de amostras candidatos não estiver vazio. O segundo elemento de sintaxe só pode ser transmitido se um conjunto de conjuntos de amostras derivadas candidatas contém mais do que um conjunto de amostras, uma vez que, se apenas um conjunto de amostra está contido no conjunto de conjuntos de amostras candidatas, outra seleção não é possível de qualquer maneira. Além disso, a transmissão do segundo elemento de sintaxe pode ser suprimida se o conjunto de conjuntos de amostras candidatas compreenderem mais do que um conjunto de amostras, mas se todos os conjuntos de amostras no conjunto de conjuntos de amostras candidatas são associados com o mesmo parâmetro de codificação. Em outras palavras, o segundo elemento de sintaxe só pode ser transmitido se pelo menos dois conjuntos de amostras de um conjunto de conjuntos de amostras derivadas candidatas são associados com diferentes parâmetros de codificação.
[110] Dentro do fluxo de bits, a informação de fusão para um conjunto de amostras pode ser codificada antes dos parâmetros de predição ou outros parâmetros de codificação específicos que estão associados a esse conjunto de amostras. A predição ou parâmetros de codificação só podem ser transmitidos se a informação do objeto de fusão sinalizar que o atual conjunto de amostras não deve ser mesclado com qualquer outro conjunto de amostras.
[111] A informação de fusão para um determinado conjunto de amostras, isto é, um bloco, por exemplo, pode ser codificada depois de um subconjunto apropriado dos parâmetros de predição, ou, num sentido mais amplo, a codificação de parâmetros que estão associados com o conjunto da amostra respectiva, tiver sido transmitido. O subconjunto de predição / parâmetros de codificação pode consistir de um ou mais índices de referência de imagem ou de um ou mais componentes de um vetor de parâmetros de movimento ou de um índice de referência e um ou mais componentes de um vetor de parâmetros de movimento, etc. O subconjunto de predição ou parâmetros de codificação já transmitidos pode ser utilizado para obter um conjunto de amostra candidata estabelecendo um conjunto maior provisório de conjuntos de amostras candidatas, que podem ter sido derivadas como descrito acima. Como um exemplo, uma medida de diferença ou distância de acordo com uma medida de distância pré-determinada, entre a predição já codificada e os parâmetros de codificação do atual conjunto de amostras e de predição correspondente ou os parâmetros de codificação do conjunto preliminar de conjuntos de amostras candidatos pode ser calculada. Então, apenas os conjuntos de amostras para os quais a medida de diferença calculada, ou a distância, é menor ou igual a um limiar pré-definido ou derivado, e estão incluídos no final, ou seja, um conjunto limitado de conjuntos de amostras candidatas. Ver, por exemplo, a fig. 9a. O atual conjunto de amostras é de bloco de X. Um subconjunto dos parâmetros de codificação que pertencem a este bloco já terá sido inserido no fluxo de dados 22. Imagine, por exemplo, o bloco X era um bloco de predição, caso em que o subconjunto apropriado dos parâmetros de codificação pode ser um subconjunto dos parâmetros de predição para este bloco X, tais como um subconjunto de um conjunto que compreende um índice de referência de imagem e informação do mapeamento e movimento, tal como um vetor de movimento. Se o bloco X era um bloco residual, o subconjunto de parâmetros de codificação é um subconjunto da informação residual, tais como coeficientes de transformação, ou um mapa que indica as posições dos coeficientes de transformação significativos no bloco X. Com base nesta informação, tanto o fluxo de dados de inserção 18 e o extrator 102 é capaz de utilizar esta informação para determinar um subconjunto de blocos A e B, a qual forma, nesta modalidade de realização específica, o conjunto previamente mencionado preliminar de conjuntos de amostras candidatas. Em particular, uma vez que os blocos A e B pertencem ao conjunto de conjuntos de amostras causais, os parâmetros de codificação destes estão disponíveis para o codificador e decodificador, no momento em que os parâmetros de codificação de blocos X estão codificados / decodificados. Por conseguinte, a comparação acima referida utilizando a medida de diferença pode ser usada para excluir qualquer número de blocos do conjunto inicial dos conjuntos de amostras candidatas A e B. O conjunto resultante reduzido de conjuntos de amostras candidatas pode então ser utilizado como descrito acima,a saber, de modo a determinar quanto ao fato de um indicador de fusão indicando a fusão deve ser transmitido ou deve ser extraído do fluxo de dados, dependendo do número de conjuntos de amostras no conjunto de conjuntos de amostras reduzidas e candidatas quanto ao fato de um segundo elemento de sintaxe ter que ser transmitido, ou ter que ser extraída do fluxo de dados com um elemento de sintaxe indicando que o segundo exemplo definido dentro do conjunto reduzido de conjuntos de amostras candidatas deve ser o bloco parceiro para a fusão.
[112] O limiar acima mencionado em relação ao qual as distâncias acima mencionadas são comparadas pode ser fixado e conhecido pelo codificador e decodificador, ou pode ser derivado com base nas distâncias calculadas, tais como a média dos valores de diferença, ou alguma outra tendência central ou semelhante. Neste caso, o conjunto reduzido de conjuntos de amostras candidatas seria inevitável proceder a um subconjunto apropriado do conjunto preliminar de conjuntos de amostras candidatas. Em alternativa, apenas os conjuntos de amostras são selecionados entre o conjunto preliminar de conjuntos candidatos de amostra para o qual a distância de acordo com a distância medida é minimizada. Alternativamente, exatamente um conjunto de amostras é selecionado do conjunto inicial de amostras utilizando o candidato de conjuntos de medida de distância acima mencionado. Neste último caso, a informação de fusão só precisa especificar se o conjunto atual de amostras deverá ser fundido com um candidato único do conjunto de amostras ou não.
[113] Assim, o conjunto de blocos de candidatos pode ser formado ou derivado, tal como descrito a seguir, com referência à fig. 9a. Partindo da posição da amostra superior esquerda 400 do bloco atual X na fig. 9a, sua posição da amostra esquerda vizinha 402 e sua posição amostra superior vizinha 404 é derivada em suas lateriais do codificador e decodificador. O conjunto de blocos candidatos pode, portanto, ter apenas até dois elementos, a saber, os blocos do conjunto de blocos sombreados causais na Fig. 9a que contêm uma das duas posições de amostra, o que no caso da fig. 9a, são blocos B e A. Deste modo, o conjunto de blocos candidatos pode ter apenas dois blocos diretamente vizinhos da posição da amostra superior esquerda do bloco atual, como seus elementos. De acordo com outra modalidade de realização, o conjunto de blocos de candidatos pode ser dado por todos os blocos que foram codificados antes do bloco atual e contêm uma ou mais amostras que representam os vizinhos diretos espaciais de qualquer amostra do bloco atual. A vizinhança direta espacial pode ser restringida para direcionar vizinhos diretamente da esquerda e / ou vizinhos diretamente superiores e / ou vizinhos diretamente da direita e / ou vizinhos diretamente inferiores de uma amostra do bloco atual. Ver, por exemplo, a fig. 9b mostrando outra subdivisão do bloco. Neste caso, os blocos candidatos compreendem quatro blocos, denominados os blocos A, B, C e D.
[114] Alternativamente, o conjunto de blocos candidatos, adicionalmente, ou exclusivamente, podem incluir blocos que contêm uma ou mais amostras que estão localizadas na mesma posição, como qualquer uma das amostras do bloco atual, mas estão contidas em uma forma diferente, ou seja, imagem já codificada / decodificada.
[115] Mesmo alternativamente, o conjunto candidato de blocos representa um subconjunto dos conjuntos acima descritos de blocos, que foram determinados pela vizinhança em direção espacial ou temporal. O subconjunto de blocos candidatos pode ser fixado, sinalizado ou derivado. A derivação do subconjunto de blocos candidatos podem considerar as decisões tomadas por outros blocos na imagem ou em outras imagens. A título de exemplo, os blocos que estão associados com os mesmos parâmetros de codificação ou muito semelhante que bloqueia outros candidatos não pode ser incluído no conjunto de blocos candidatos.
[116] A descrição a seguir de uma modalidade de realização aplica-se para o caso em que apenas dois blocos que contêm o exemplo vizinho esquerdo e superior da amostra superior esquerda do bloco atual são considerados como candidatos potenciais ao máximo.
[117] Se o conjunto de blocos de candidatos não estiver vazio, um sinalizador denominado Merge_flag é sinalizado, especificando se o bloco atual é mesclado com qualquer um dos blocos candidatos. Se o Merge_flag for igual a 0 (para "falso"), este bloco não é mesclado com um de seus blocos candidatos e todos os parâmetros de codificação são transmitidos normalmente. Se o Merge_flag for igual a 1 (para "verdadeiro"), o seguinte aplica-se. Se o conjunto de blocos candidatos contém um único bloco, o bloco candidato é utilizado para a fusão. Caso contrário, o conjunto de blocos candidatos contém exactamente dois blocos. Se os parâmetros de predição destes dois blocos forem idênticos, estes parâmetros de predição são utilizados para o bloco atual. Caso contrário (os dois blocos têm parâmetros diferentes de predição), um sinalizador denominado merge_left_flag é sinalizado. Se o merge_left_flag for igual a 1 (para "verdadeiro"), o bloco com a posição da amostra vizinha esquerda da posição da amostra superior esquerda do bloco atual é selecionado do conjunto de blocos candidatos. Se o merge_left_flag for igual a 0 (para "falso"), o outro (isto é, vizinhança superior) bloqueio do conjunto de blocos candidatos é selecionado. Os parâmetros de predição do bloco selecionado são utilizados para o bloco atual.
[118] Em resumo, para algumas das modalidades acima descritas em relação à fusão, é feita referência à fig. 10 mostrando os passos realizados pelo extrator 102 para extrair a informação de fusão a partir do fluxo de dados 22 da introdução da entrada 116.
[119] O processo começa em 450 com a identificação de blocos candidatos ou de conjuntos de amostras para um conjunto de amostras ou blocos atuais. Deve ser lembrado que os parâmetros de codificação para os blocos são transmitidos dentro do fluxo de dados 22, em uma ordem de uma dimensão determinada e, por conseguinte, a fig. 10 refere-se ao processo de recuperação da informação de intercalação para um conjunto de amostras ou de blocos atualmente visitados.
[120] Como mencionado anteriormente, a identificação e o passo 450 pode incluir a identificação entre blocos previamente decodificados, isto é, o conjunto casual de blocos, com base em aspectos da vizinhança. Por exemplo, os blocos vizinhos podem ser nomeados candidatos, que incluem certas amostras de vizinhança que são vizinhas a uma ou mais amostras geometricamente predeterminadas do bloco atual X no espaço ou no tempo. Além disso, o passo de identificação pode compreender duas fases, nomeadas, uma primeira fase envolvendo uma identificação como apenas mencionado, ou seja, com base na vizinhança, que conduz a um conjunto de blocos candidatos preliminar, e uma segunda fase de acordo com a qual apenas os blocos candidatos são nomeados os parâmetros já transmitidos de codificação que satisfazem uma determinada relação com o subconjunto adequado de um dos parâmetros de codificação do bloco X atuais, o que já foi decodificado a partir do fluxo de dados antes do passo 450.
[121] Em seguida, os passos do processo para o passo 452, onde é determinado se o número de blocos candidatos é maior do que zero. Se este for o caso, um Merge_flag é extraído do fluxo de dados no passo 454. O passo de extração 454 pode envolver a entropia de decodificação. O contexto para decodificar a entropia Merge_flag no passo 454 pode ser determinado com base em elementos de sintaxe pertencentes, por exemplo, ao conjunto de blocos candidatos ou ao conjunto de blocos candidatos preliminares, em que a dependência em relação aos elementos de sintaxe pode ser restringida com a informação se os blocos pertencentes ao conjunto de interesse tem sido objeto de fusão ou não. A estimativa de probabilidade do contexto selecionado pode ser adaptada.
[122] Se, no entanto, o número de blocos de candidatos é determinado, por sua vez para ser igual a zero 452, o processo da Fig. 10 prossegue com o passo 456 em que os parâmetros de codificação do bloco atual são extraídos do fluxo de bits, ou, no caso da alternativa de identificação acima mencionada de dois estágios, os parâmetros restantes de codificação do mesmo, em que, em seguida os extratores 102 prosseguem com o processamento do próximo bloco da ordem de varredura do bloco, tais como a ordem 350 mostrada na fig. 3c.
[123] Voltando para a etapa 454, o processo continua, depois da extração no passo 454, com o passo 458 com uma verificação sobre se o Merge_flag extraído sugere a ocorrência ou ausência de uma fusão do bloco atual. Se não houver a fusão terá lugar o processo que prossegue com o passo 456 acima mencionado. Caso contrário, o processo prossegue com o passo 460, incluindo a verificação se o número de blocos candidatos é igual a um. Se este for o caso, a transmissão de uma indicação de um bloco candidato determinada entre os blocos de candidatos não era necessária e, portanto, o processo da fig. 10 prossegue com o passo 462, segundo o qual o parceiro de fusão do bloco de fluxo é ajustado para ser o único bloco candidato, que em seguida no passo 464 os parâmetros de codificação do bloco parceiro de fusão são utilizados para a adaptação ou a predição dos parâmetros de codificação ou dos parâmetros de codificação restantes do bloco atual. Em caso de adaptação, os parâmetros de codificação ausentes do bloco atual são meramente copiados a partir do bloco parceiro de fusão. No outro caso, ou seja, no caso de predição, o passo 464 pode incluir uma extração adicional de dados residuais do fluxo de dados dos dados residuais relativos a predição residual dos parâmetros de codificação ausentes do bloco atual e uma combinação destes dados residuais com a predição destes parâmetros de codificação ausentes obtidos a partir do bloco parceiro de fusão.
[124] Se, no entanto, o número de blocos de candidatos é determinado para ser maior do que um no passo 460, o processo da fig. 10 segue para o passo 466, onde é realizada uma verificação para saber se os parâmetros de codificação ou a parte interessante dos parâmetros de codificação - nomeada subparte relacionada à parte ainda não ter sido transferida dentro do fluxo de dados para o bloco atual - são idênticos entre si. Se for esse o caso, estes parâmetros de codificação comuns são definidos como intercalação de referência ou os blocos candidatos são definidos como parceiros de fusão no passo 468 e os respectivos parâmetros de codificação são interessantes utilizados para adaptação ou predição no passo 464.
[125] Deve notar-se que o parceiro de fusão por si só pode ter sido um obstáculo para o qual a fusão foi sinalizada. Neste caso, os parâmetros adotados ou preditivamente obtidos codificando parceiros de fusão são usados no passo 464.
[126] Caso contrário, no entanto, isto é, no caso em que os parâmetros de codificação não são idênticos, o processo da fig. 10 prossegue para o passo 470, onde um elemento de sintaxe adicional é extraído do fluxo de dados, ou seja, este merge_left_flag. Um conjunto separado de contextos pode ser utilizado para decodificar por entropia este sinalizador. O conjunto de contextos utilizado para descodificar por entropia o merge_left_flag também pode compreender apenas um contexto. Após a etapa 470, o bloco candidato indicado por merge_left_flag está definido para ser o parceiro de fusão no passo 472 e usado para adaptação ou predição no passo 464. Após a etapa 464, o extrator 102 prossegue com a manipulação do bloco na próxima ordem do bloco.
[127] É claro que existem muitas alternativas. Por exemplo, um elemento de sintaxe combinado pode ser transmitido dentro do fluxo de dados, em vez de separar os elementos de sintaxe e Merge_flag merge_left_flag descrito antes, os elementos de sintaxe combinados sinalizam o processo de fusão. Além disso, o merge_left_flag acima mencionado pode ser transmitido dentro do fluxo de dados, independente do fato de os dois blocos candidatos ter os mesmos parâmetros de predição ou não, reduzindo assim a carga computacional para a realização do processo da fig. 10.
[128] Como já foi indicado em relação a, por exemplo, a fig. 9b, mais do que dois blocos podem ser incluídos no conjunto de blocos candidatos. Além disso, as informações de fusão, isto é, a informação de sinalização se um bloco é fundido e, em caso afirmativo, que o bloco é candidato a ser incorporado pode ser sinalizado por um ou mais elementos de sintaxe. Um elemento de sintaxe pode especificar se o bloco é fundido com qualquer um dos blocos candidatos, tais como o Merge_flag descrito acima. O sinalizador só pode ser transmitido se o conjunto de blocos candidatos não estiver vazio. Um segundo elemento de sintaxe pode sinalizar que um dos blocos candidatos é empregado para fusão tal como o merge_left_flag acima mencionado, mas, em geral, indica uma seleção entre dois ou mais do que dois blocos candidatos. O segundo elemento de sintaxe pode ser transmitido apenas se o primeiro elemento de sintaxe sinaliza que o bloco atual está para ser fundido com um dos blocos candidatos. O segundo elemento de sintaxe pode ainda ser transmitido apenas se o conjunto de blocos candidatos contiver mais do que um bloco candidato e / ou, se qualquer um dos blocos candidatos tiver parâmetros de predição diferentes do que qualquer outro dentre os blocos de candidatos. A sintaxe pode ser, dependendo de quantos blocos candidatos são apresentados e / ou como os parâmetros de predição diferentes estão associados com os blocos candidatos.
[129] A sintaxe para sinalizar qual dos blocos dentre os blocos candidatos a ser utilizado, pode ser definida simultaneamente e / ou paralelamente, na lateral do codificador e decodificador. Por exemplo, se houver três opções para blocos candidatos identificadas no passo 450, a sintaxe é escolhida de tal modo que apenas estas três opções estão disponíveis e são consideradas para a codificação por entropia, por exemplo, no passo 470. Em outras palavras, o elemento de sintaxe é escolhido de tal modo que o seu alfabeto simbólico tem simplesmente tantos elementos como escolhas de blocos candidatos existem. As probabilidades para todas as outras escolhas podem ser consideradas como sendo zero e a codificação/decodificação por entropia pode ser ajustada simultaneamente no codificador e decodificador.
[130] Além disso, como já foram referidos em relação ao passo 464, os parâmetros de predição que são inferidos como uma consequência do processo de fusão pode representar o conjunto completo de parâmetros de predição que são associados com o bloco em curso ou podem representar um subconjunto destes parâmetros de predição, tais como os parâmetros de predição para uma hipótese de um bloco para o qual várias hipóteses de predição são usadas.
[131] Como notado acima, os elementos de sintaxe referentes à informação da fusão pode ser codificada por entropia utilizando modelos de contexto. Os elementos de sintaxe podem consistir no Merge_flag e no merge_left_flag descrito acima (ou elementos de sintaxe semelhantes). Num exemplo concreto, um em três modelos de contexto ou contextos pode ser utilizado para codificação / decodificação do Merge_flag no passo 454, por exemplo. O índice usado no modelo do contexto de merge_flag_ctx pode ser derivado da seguinte forma: se o conjunto de blocos candidatos contiver dois elementos, o valor do merge_flag_ctx é igual à soma dos valores do Merge_flag dos dois blocos candidatos. Se o conjunto de blocos candidatos contiver um elemento, no entanto, o valor de merge_flag_ctx pode ser igual a duas vezes o valor do Merge_flag deste bloco de um candidato. À medida que cada um dos blocos de Merge_flag candidatos vizinhos pode ser tanto um ou zero, os três contextos estão disponíveis para Merge_flag. O merge_left_flag pode ser codificado utilizando apenas um único modelo probabilístico.
[132] No entanto, de acordo com uma modalidade de realização alternativa, os modelos de contexto diferentes podem ser usados. Por exemplo, os elementos de sintaxe não binários podem ser mapeados para uma sequência de símbolos binários, os chamados compartimentos. Os modelos de contexto para alguns elementos de sintaxe ou compartimentos de elementos de sintaxe que definem a informação da fusão podem ser obtidos com base em elementos de sintaxe já transmitidos de blocos vizinhos ou o número de blocos de candidatos ou de outras medidas, enquanto outros elementos de sintaxe ou compartimentos dos elementos de sintaxe podem ser codificados com um modelo de contexto fixo.
[133] Em relação à descrição acima da fusão de blocos, é verificado que o conjunto de blocos candidatos pode também ser derivado da mesma maneira que para qualquer uma das modalidades descritas acima, com a seguinte modificação: Os blocos candidatos são restritos a blocos com predição com compensação de movimento ou interpredição, respectivamente. Apenas estes podem ser elementos de um conjunto de blocos candidatos. A sinalização e modelagem do contexto da informação da fusão podem ser realizadas como descrito acima.
[134] Voltando para a combinação das modalidades de realização descritas acima a subdivisão multitree e o aspecto de fusão descrita agora, se a imagem está dividida em blocos quadrados de tamanho variável com o uso de uma estrutura de subdivisão quadtree baseada, por exemplo, nos Merge_flag e merge_left_flag ou outros elementos de sintaxe especificando a fusão pode ser intercalada com os parâmetros de predição que são transmitidos para cada nó de folha da estrutura quadtree. Considere-se novamente, por exemplo, a fig. 9a. A Fig. 9 mostra um exemplo de uma subdivisão quadtree baseada em uma imagem em blocos de predição de tamanho variável. Os primeiros dois blocos de maior tamanho são os chamados blocos de árvore, isto é, eles são os blocos de predição do tamanho máximo possível. Os outros blocos nesta figura são obtidos como uma subdivisão do seu bloco de árvore correspondente. O bloco atual é marcado com um "X". Todos os blocos sombreados são co / decodificados antes do bloco atual, e formam o conjunto de blocos causais. Como explicado na descrição da derivação do conjunto de blocos candidatos para uma das modalidades de realização, apenas os blocos que contêm as amostras diretamente vizinhas (isto é, superior ou esquerda) da posição da amostra superior esquerda do bloco atual podem ser membros do conjunto de blocos candidatos. Assim, o bloco atual pode ser mesclado com qualquer bloco "A" ou bloco "B". Se o Merge_flag for igual a 0 (para "falso"), o bloco atual "X" não é fundido com qualquer um dos dois blocos. Se os blocos "A" e "B" tem os parâmetros de predição idênticos, nenhuma distinção precisa ser feita, uma vez que a fusão com qualquer um dos dois blocos vai provocar o mesmo resultado. Assim, neste caso, o merge_left_flag não é transmitido. Caso contrário, se os blocos "A" e "B" têm parâmetros diferentes de predição, o merge_left_flag igual a 1 (para "verdadeiro") irá fundir blocos "X" e "B", enquanto o merge_left_flag igual a 0 (para "falso") irá fundir os blocos "X" e "A". Numa outra modalidade de realização preferida, blocos vizinhos adicionais (já transmitidos) representam candidatos para a fusão.
[135] Na fig. 9b, outro exemplo é mostrado. Aqui, o fluxo do bloco "X", e o bloco vizinho esquerdo "B" são blocos de árvore, ou seja, eles têm o tamanho de bloco máximo permitido. O tamanho do bloco vizinho superior "A" é um quarto do tamanho do bloco de árvore. Os blocos que são o elemento do conjunto de blocos causais estão sombreados. Note que de acordo com uma modalidade de realização preferida, o bloco atual "X" pode somente ser fundido com os dois blocos "A" ou "B", e não com quaisquer um dos outros principais blocos vizinhos. Na outra realização preferida, outros blocos vizinhos (já transmitidos) representam candidatos para a fusão.
[136] Antes de proceder com a descrição em relação ao aspecto de como lidar com os arranjos de amostras diferentes de uma imagem, de acordo com modos de realização do presente pedido de patente, deve ser notado que a discussão acima sobre a subdivisão multitree e a sinalização por um lado e o aspecto de fusão por outro lado é claro que estes aspectos proporcionam vantagens que podem ser exploradas independentes entre si. Isto é, como já foi explicado acima, a combinação de uma subdivisão multitree com fusão tem vantagens específicas, mas também estas vantagens resultam a partir de alternativas que, por exemplo, o recurso de fusão é incorporado com, no entanto, a subdivisão feita por subdivisores 30 e 104 não baseando-se em uma subdivisão quadtree ou multitree, mas corresponde a uma subdivisão do macrobloco com o parcionamento regular destes macroblocos em partes menores. Por outro lado, por sua vez, a combinação da subdivisão multitree juntamente com a transmissão do tamanho do bloco de árvore máximo dentro do fluxo de bits, e o uso da subdivisão multitree juntamente com a utilização da ordem transversal de profundidade transportam a codificação dos parâmetros dos blocos correspondentes é vantajoso independente da característica de fusão a ser utilizada concomitantemente ou não. Em geral, as vantagens de fusão podem ser entendidas, quando se considera que, intuitivamente, a eficiência de codificação pode ser aumentada quando a sintaxe de códigos de arranjo de amostra é estendida de modo a não só permitir a subdivisão de um bloco, mas também para fundir dois ou mais blocos que são obtidos após a subdivisão. Como resultado, obtém-se um grupo de blocos que são codificados com os mesmos parâmetros de predição. Os parâmetros de predição para um grupo de blocos têm de ser codificados uma vez. Além disso, em relação à fusão de conjuntos de amostras, deve novamente ser notado que os conjuntos considerados de amostras podem ser blocos retangulares ou quadrados, caso em que os conjuntos de amostras fundidos representam uma coleção de blocos retangulares e / ou quadrados. Em alternativa, no entanto, os conjuntos de amostras considerados são arbitrariamente regiões em forma de imagem e os conjuntos intercalados de amostras representando um conjunto de regiões em forma de imagem de forma arbitrária.
[137] A descrição a seguir concentra-se na manipulação de arranjos de amostras diferentes de uma imagem no caso de haver mais de uma amostra por arranjos de imagem e, em alguns aspectos descritos na seguinte sub-descrição são vantajosos independente do tipo de subdivisão usada, isto é, independente da subdivisão sendo baseado em subdivisão multitree ou não, e independente da fusão que está sendo usado ou não. Antes de começar com a descrição de modalidades específicas relativas ao processamento de arranjos de amostras diferentes de uma imagem, o principal problema destas modalidades é motivado por meio de uma breve introdução no campo do manejo de arranjos de amostra diferentes por imagem.
[138] A discussão a seguir concentra-se em parâmetros de codificação entre os blocos de arranjos de amostras diferentes de uma imagem na imagem, ou uma aplicação de codificação de vídeo, e, em particular, uma forma de prever adaptativamente os parâmetros de codificação entre os arranjos de amostras diferentes de uma imagem, por exemplo, mas não exclusivamente o codificador e decodificador das Figs. 1 e 2, respectivamente, ou outro ambiente de imagem de vídeo ou de codificação. Os arranjos de amostra podem, tal como observado acima, representar arranjos de amostra que estão relacionados com os componentes de cor diferentes ou arranjos de amostra que estão associados a uma imagem com informação adicional, tal como dados de transparência ou mapas de profundidade. Arranjos de amostra que estão relacionados com os componentes de cor de uma imagem são também referidos como planos de cor. A técnica descrita a seguir também é referida como a adoção do inter plano / predição e pode ser usado em bloco de imagem baseados e os codificadores e descodificadores de vídeo, em que a ordem de processamento dos blocos de arranjos de amostra para uma imagem pode ser arbitrária.
[139] Codificadores de imagem e vídeo são normalmente concebidos para a codificação de imagens a cores (tanto de imagens estáticas ou imagens de uma sequência de vídeo). Uma imagem de cores consiste de planos de cores múltiplos, que representam arranjos de amostra para componentes de cores diferentes. Muitas vezes, as imagens de cor são codificadas como um conjunto de arranjos de amostra consistindo de um plano de luminância e dois planos de crominância, em que estes últimos especificam componentes de diferença de cor. Em alguns domínios de aplicação, é também comum que o conjunto de arranjos de amostras codificados consista em três planos de cores que representam os arranjos de amostra para as três cores primárias: vermelho, verde e azul. Além disso, para uma representação de cor melhorada, uma imagem a cores pode ser constituída por mais do que três planos de cor. Além disso, uma imagem pode ser associada a arranjos de amostra auxiliares que especificam informações adicionais para a imagem. Por exemplo, esses arranjos de amostra auxiliares podem ser arranjos de amostra que especificam a transparência (adequado para fins de exibição específica) para os arranjos de cor associada a amostra ou arranjos de amostra que especificam um mapa de profundidade (adequado para render visões múltiplas, por exemplo, para mostra 3-D ).
[140] Nas normas convencionais de codificação de imagem e vídeo (como H.264), os planos de cor são geralmente codificados juntos, em que determinados parâmetros de codificação, tais como os modos de macrobloco e sub-macrobloco de predição, índices de referência, e os vetores de movimento são usados para todos os componentes de cor de um bloco. O plano de luminância pode ser considerado como o plano de cor primária para o qual os parâmetros específicos de codificação estão especificados no fluxo de bits, e os planos de crominância podem ser considerados como planos secundários, para o qual os parâmetros de codificação correspondentes são inferidos a partir do plano de luminância principal. Cada bloco de luminância está associado com dois blocos de crominância que representam a mesma área de uma imagem. Dependendo do formato de amostragem utilizado de crominância, os arranjos de amostras de crominância podem ser menores do que a amostra de arranjo de luminância para um bloco. Para cada macrobloco, que consiste de uma luminância e dois componentes de crominância, o mesmo parcionamento em blocos menores é usado (se o macrobloco é subdividido). Para cada bloco composto por um bloco de amostras de luminância e dois blocos de amostras de crominância (que pode ser o próprio macrobloco ou de um sub-bloco do macrobloco), o mesmo conjunto de parâmetros de predição, tais como os índices de referência, os parâmetros de movimento, e os modos de intra-predição, por vezes, são empregados. Nos perfis específicos das normas de codificação de vídeo convencionais (tais como os perfis de 04:04:04 em H.264), também é possível codificar os planos de cores diferentes de uma imagem independente. Nessa configuração, o parcionamento do macrobloco, os modos de predição, índices de referência, e os parâmetros de movimento podem ser separadamente escolhidos para um componente de cor de um macrobloco ou sub-bloco. Normas de codificação convencionais de todos os planos de cor são codificadas em conjunto, utilizando o mesmo conjunto de parâmetros de codificação específicos (tais como informações da subdivisão e os parâmetros de predição) ou todos os planos de cor são codificadas de forma completamente independente entre si.
[141] Se os planos de cor são codificados em conjunto, um conjunto de parâmetros de predição da subdivisão deve ser utilizado para todos os componentes de cor de um bloco. Isto assegura que a informação lateral seja mantida pequena, mas pode resultar numa redução da eficiência de codificação em comparação com uma codificação independente, uma vez que o uso de decomposições de bloco diferentes e parâmetros de predição de componentes de cores diferentes podem resultar num menor custo de taxa de distorção. Como um exemplo, a utilização de um vetor de movimento diferente ou a imagem de referência para os componentes de crominância pode reduzir significativamente a energia do sinal residual para os componentes de crominância e aumentar a sua eficiência global de codificação. Se os planos de cor são codificados de forma independente, os parâmetros de codificação, como o bloco de parcionamento, os índices de referência, e os parâmetros do movimento podem ser selecionados para cada componente de cor separadamente a fim de otimizar a eficiência de codificação para cada componente de cor. Mas não é possível empregar a redundância entre os componentes de cor. As transmissões múltiplas de determinados parâmetros de codificação tem como resultado um aumento da taxa de informação lateral (em comparação com a codificação combinados) e esta taxa de aumento de informações laterais pode ter um impacto negativo sobre a eficiência geral de codificação. Além disso, o suporte para arranjos de amostra auxiliares nos padrões do estado da técnica de codificação de vídeo (tal como H.264) se restringe ao caso em que os arranjos de amostra auxiliares são codificados utilizando seu próprio conjunto de parâmetros de codificação.
[142] Assim, em todas as modalidades de realização descritas até agora, os planos de imagem podem ser resolvidos como descrito acima, mas também como discutido acima, a eficiência geral de codificação para a codificação de arranjos de amostras múltiplas (que podem ser relacionados com os planos de cores diferentes e / ou de amostras de arranjos auxiliares) pode ser aumentada, quando seria possível decidir com base em blocos, por exemplo, se todos os arranjos de amostra para um bloco são codificados com os mesmos parâmetros de codificação ou se diferentes parâmetros de codificação são usados. A idéia básica da predição inter-plano seguinte é a de permitir uma decisão adaptativa com base em blocos, por exemplo. O codificador pode escolher, por exemplo, com base no critério de taxa de distorção, se todos ou alguns dos conjuntos de amostras de um determinado bloco são codificados utilizando os mesmos parâmetros de codificação ou se diferentes parâmetros de codificação são usados para arranjos de amostras diferentes. Esta seleção pode também ser alcançada através de sinalização para um determinado bloco de um arranjo de amostra se os parâmetros específicos de codificação são inferidos a partir de um bloco codificado já co-localizado de um arranjo de amostra diferente. É também possível organizar os arranjos de amostra diferentes para obter uma imagem em grupos, que são também referidos como grupos de amostras de arranjo ou grupos de plano. Cada grupo de plano pode conter um ou mais arranjos de amostras de uma imagem. Em seguida, os blocos dos arranjos de amostra dentro de um grupo de plano dividem os mesmos parâmetros de codificação selecionados, como a informação de subdivisão, modos de predição, e modos de codificação residuais, enquanto que outros parâmetros de codificação, tais como os níveis de coeficientes de transformação são transmitidos separadamente para cada um dos conjuntos de amostras no interior do grupo de plano. Um grupo de plano é codificado como grupo plano primário, isto é, nenhum dos parâmetros de codificação é inferido ou previsto a partir de outros grupos de plano. Para cada bloco de um grupo de plano secundário, pode ser escolhido de forma adaptativa se um novo conjunto de parâmetros de codificação selecionados é transmitido, ou se os parâmetros de codificação selecionados são inferidos ou previstos a partir do grupo de plano primário ou outro grupo de planop secundário. As decisões sobre se alguns parâmetros de codificação para um determinado bloco são inferidos ou previsíveis são incluídos no fluxo de bits. A predição inter- plano permite uma maior liberdade na escolha da troca entre a taxa de informações laterais e qualidade de predição em relação à codificação do estado da técnica das imagens que consistem em arranjos de amostra múltiplas. A vantagem é uma maior eficiência de codificação em relação à codificação de imagens convencionais que consistem em arranjos de amostras múltiplas.
[143] A adoção / predição intra-plano pode estender um codificador de imagem ou de vídeo, tais como os das modalidades de realização anteriores, de maneira que ela pode ser escolhida de forma adaptável para um bloco de um arranjo de amostra de cor, ou um arranjo de amostra auxiliar ou de um conjunto de arranjos de amostras de cores e / ou arranjos de amostra auxiliares se um conjunto de parâmetros de codificação selecionado seja inferido ou previsto a partir dos blocos co-localizados já codificados de outros arranjos de amostras na mesma imagem, ou se o conjunto selecionado de parâmetros de codificação para o bloco é independentemente codificado sem referência aos blocos co- localizados de arranjos de outras amostras da mesma imagem. As decisões se o conjunto de parâmetros de codificação selecionado é inferido ou previsto para um bloco de um arranjo de amostra ou um bloco de conjuntos de amostras múltiplas pode ser incluído no fluxo de bits. Os arranjos de amostra diferentes que estão associados com uma imagem não precisa ter o mesmo tamanho.
[144] Como descrito acima, os arranjos de amostra que estão associados a uma imagem (os conjuntos de amostras podem representar os componentes de cor e / ou arranjos de amostra auxiliares) podem ser dispostos em dois ou mais dos assim chamados grupos de plano, em que cada grupo de plano consiste em um ou mais arranjos de amostras. Os arranjos de amostra que estão contidos em um grupo de plano particular, não precisa ter o mesmo tamanho. Note que este arranjo em um grupo de plano inclui o caso em que cada arranjo de amostra é codificado separadamente.
[145] Para ser mais preciso, de acordo com uma modalidade de realização, é escolhido de forma adaptativa, para cada bloco de um grupo de plano, se os parâmetros de codificação que especificam como um bloco é previsto são inferidos ou previstos a partir de um bloco co-localizado já codificado de um grupo de plano diferente para a mesma imagem ou se estes parâmetros de codificação são codificados separadamente para o bloco. Os parâmetros de codificação que especificam como um bloco está previsto inclui um ou mais dos seguintes parâmetros de codificação: modos de predição de bloco especificando qual a predição é utilizada para o bloco (intra predição, a inter predição utilizando o vetor de movimento único e a imagem de referência, a inter predição utilizando dois vetores de movimento e imagens de referência, a inter predição usando uma ordem mais elevada, ou seja, o modelo de movimento de não translação e uma imagem de referência única, a inter predição usando modelos de movimento múltiplos e imagens de referência), modos de intra predição especificam como um sinal de intra predição é gerado, um identificador que especifica como vários sinais de predição são combinados para gerar o sinal de predição final para o bloco, os índices de referência especificando quais imagem de referência (s) é / são empregados para com compensação de movimento, movimento de predição de parâmetros (tais como vetores de deslocamento ou parâmetros de movimento afins) especificando como o sinal de predição (s) é / são gerados utilizando a imagem de referência (s), um identificador que especifica como a imagem de referência (s) é / são filtrados para a geração de sinais de movimento de predição compensada. Note que, em geral, um bloco pode ser associado com apenas um subconjunto dos parâmetros de codificação mencionados. Por exemplo, se o modo de predição do bloco especifica que um bloco é intra previsto, os parâmetros de codificação para um bloco pode incluir adicionalmente os modos de intra predição, mas os parâmetros de codificação, tais como os índices de referência e parâmetros de movimento que especificam como um sinal de inter predição é gerado não são especificados, ou, se o modo de predição de bloco especifica a inter predição, os parâmetros associados de codificação pode incluir, adicionalmente, os índices de referência e parâmetros de movimento, mas os modos de intra predição não são especificados.
[146] Um dos dois ou mais grupos de plano podem ser codificados ou indicados dentro do fluxo de bits como o grupo de plano primário. Para todos os blocos desse grupo de plano principal, os parâmetros de codificação que especificam como o sinal de predição é gerado são transmitidos, sem se referir a outros grupos de plano da mesma imagem. Os grupos de plano restantes são codificados como grupos de plano secundários. Para cada bloco de um dos grupos de plano secundários, um ou mais elementos de sintaxe são transmitidos que sinalizam se os parâmetros de codificação para especificar como o bloco é predito são inferidos ou previstos a partir de um bloco co-localizado de grupos de outros planos ou se um novo conjunto destes parâmetros de codificação é transmitido para o bloco. Um dentre um ou mais elementos de sintaxe pode ser referido como sinalizador de predição inter-plano ou parâmetro de predição interplano. Se os elementos de sintaxe sinalizam que os parâmetros de codificação correspondentes não são inferidos ou previstos, um novo conjunto de parâmetros de codificação para os blocos correspondentes são transmitidos no fluxo de bits. Se os elementos de sintaxe sinalizam que os parâmetros de codificação correspondentes são inferidos ou previstos, o bloco co-localizado num assim chamado grupo de plano de referência é determinado. A atribuição do grupo plano de referência para o bloco pode ser configurado de diversas maneiras. Numa modalidade de realização, um grupo de plano particular de referência é atribuído a cada segundo grupo de plano; esta atribuição pode ser fixada ou pode sinalizada em estruturas de alto nível de sintaxe, tais como os conjuntos de parâmetros, cabeçalho da unidade de acesso, o cabeçalho da imagem, ou cabeçalho de seção.
[147] Numa segunda modalidade de realização, a atribuição do grupo de plano de referência é codificada dentro do fluxo de bits e assinalada por um ou mais elementos de sintaxe que são codificados para um bloco, a fim de especificar se os parâmetros de codificação selecionados são inferidos ou previstos ou separadamente codificados.
[148] A fim de facilitar as possibilidades recentemente mencionadas, em ligação com a predição inter-plano e as seguintes modalidades de realização detalhadas, é feita referência à fig. 11, que mostra uma imagem ilustrativa 500 composta por três arranjos de amostras 502, 504 e 506. Por razões de mais compreensão fácil, simples sub-porções dos arranjos de amostra 502-506 são mostrados na Fig. 11. Os arranjos de amostra são mostrados como se os dados fossem registrados contra o outro no espaço, de modo que os conjuntos de amostras 502-506 sobrepõem entre si ao longo de uma direção 508 e de modo a que a projeção das amostras dos arranjos de amostra 502-506 juntamente os resultados de direção 508 nas amostras de todos esses arranjos de amostra 502-506 a ser corretamente espacialmente localizados um para o outro. Em ainda outras palavras, os planos 502 e 506 foram espalhados ao longo da direção horizontal e vertical, a fim de adaptar a sua resolução espacial entre si e registrá-los uns aos outros.
[149] De acordo com uma modalidade de realização, todos os arranjos de amostras de uma imagem pertencem à mesma porção de uma cena em que a resolução espacial ao longo da direção vertical e horizontal pode diferir entre os arranjos de amostras individuais 502-506. Além disso, para fins de ilustração, os arranjos de amostra 502 e 504 são considerados como pertencendo a um grupo plano 510, enquanto que a amostra de arranjo 506 é considerada como pertencendo a outro grupo de plano 512. Além disso, a fig. A Figura 11 ilustra o caso exemplar onde a resolução espacial ao longo do eixo horizontal do arranjo de amostra 504 é o dobro da resolução na direção horizontal do arranjo de amostra 502. Além disso, o arranjo de amostra 504 é considerado, para formar a arranjo primário em relação ao arranjo da amostra 502, o qual forma um arranjo em relação ao arranjo primário subordinado 504. Como explicado anteriormente, neste caso, a subdivisão de arranjo da amostra 504 em blocos como decidido pelo subdivisor 30 da fig. 1 é adotado pela qual o arranjo subordinado 502, de acordo com o exemplo da fig. 11, em função da resolução vertical do arranjo da amostra 502 sendo metade da resolução na direção vertical do arranjo principal 504, cada bloco foi reduzido para metade em dois blocos horizontalmente justaposicionados, que, devido à redução para metade são blocos quadrados, quando medido em unidades das posições da amostra no interior do arranjo de amostra 502.
[150] Como é exemplarmente representada na fig. 11, a subdivisão escolhida para a amostra de arranjo 506 é diferente da subdivisão do grupo de outro plano 510. Como descrito antes, o subdivisor 30 pode selecionar a subdivisão do arranjo de pixel 506 separadamente ou independente da subdivisão para o grupo de plano 510. Naturalmente, a resolução de amostra do arranjo 506 pode também diferir das resoluções dos planos 502 e 504 do grupo de plano 510.
[151] Agora, quando se codifica os arranjos de amostras individuais 502506, o codificador 10 pode começar com a codificação do arranjo principal 504 do grupo de plano 510, por exemplo, da maneira descrita acima. Os blocos representados na fig. 11 pode, por exemplo, ser os blocos de predição acima mencionados. Alternativamente, os blocos são blocos residuais ou outros blocos que definem a granularidade para definir certos parâmetros de codificação. A predição do inter plano não se restringe a subdivisão quadtree ou multitree, embora isto esteja ilustrado na fig. 11.
[152] Após a transmissão do elemento de sintaxe para o arranjo primário 504, o codificador 10 pode decidir declarar o arranjo primário 504 para ser o plano de referência para o plano subordinado 502. O codificador 10 e um extrator 30, respectivamente, pode sinalizar esta decisão através do fluxo de bits 22, enquanto a associação pode ser evidente a partir do fato de o arranjo de amostra 504 fazer o arranjo do grupo de plano principal 510 em que a informação, por sua vez, também pode ser parte da sequência de bits 22. Em qualquer caso, para cada bloco de amostra 502 no interior de inserção do arranjo 18 ou qualquer outro módulo de codificação 10, juntamente com o dispositivo de inserção 18 pode decidir a suprimir a transferência dos parâmetros de codificação deste bloco dentro do fluxo de bits e sinalizar dentro do fluxo de bits para esse bloco ao invés dos parâmetros de codificação de um bloco co-localizado no interior do arranjo principal 504 que deve ser utilizado em vez disso, ou os parâmetros de codificação do bloco co-localizado no interior do arranjo principal 504 que deve ser utilizado como uma predição para os parâmetros de codificação do atual bloqueio de arranjo de amostra de 502 simplesmente transferindo os dados residuais do mesmo para o bloco atual do arranjo de amostra 502 no interior do fluxo de bits. No caso de uma decisão negativa, os parâmetros de codificação são transferidos no interior do fluxo de dados, como de costume. A decisão é sinalizada dentro do fluxo de dados 22 para cada bloco. Na lateral do decodificador, o extrator 102 utiliza esta informação de predição inter-plano para cada bloco, a fim de obter os parâmetros de codificação do bloco respectivo do arranjo da amostra 502 em conformidade, a saber, por inferência dos parâmetros de codificação do bloco co-localizado do arranjo principal 504 ou, alternativamente, a extração de dados residuais para aquele bloco a partir do fluxo de dados e combinar esses dados residuais com uma predição obtida a partir dos parâmetros de codificação do bloco co-localizado do arranjo primário 504, se a informação de aprovação / predição de inter- plano sugerir a adoção / predição do inter- plano, ou extrair os parâmetros de codificação do bloco atual do arranjo de amostra 502, como de costume independentes do arranjo principal 504.
[153] Como também foi anteriormente descrito, os planos de referência não são restritos a residir dentro do mesmo grupo de plano que o plano de bloco para os quais a inter-predição é atualmente de interesse. Assim, como descrito acima, o plano de grupo 510 pode representar o grupo de plano primário ou grupo de plano de referência para o grupo de plano secundário 512. Neste caso, o fluxo de bits pode conter um elemento de sintaxe indicando, para cada bloco de amostras de arranjo 506, como a adoção / predição de parâmetros de codificação acima mencionados de macroblocos co-localizados de qualquer um dos planos 502 e 504 do grupo de plano primário ou do grupo do plano de referência 510 deve ser realizado ou não, em que no último caso, os parâmetros de codificação do atual bloco do arranjo de amostra 506 são transmitidos normalmente.
[154] Deve notar-se que os parâmetros da subdivisão e / ou de predição para os planos dentro de um grupo de plano pode ser o mesmo, isto é, porque são apenas codificados uma vez por um grupo de plano (todos os planos secundários de um grupo de plano inferem a informação da subdivisão e / ou dos parâmetros de predição a partir do plano principal dentro do mesmo grupo de plano), e a predição adaptável ou inferem a informação da subdivisão e / ou os parâmetros de predição que é feita entre os grupos de plano.
[155] Deve notar-se que o grupo de plano de referência pode ser um grupo de plano primário ou um grupo de plano secundário.
[156] A co-localização entre os blocos de diferentes planos dentro de um grupo de plano é facilmente compreensível em que a subdivisão do arranjo da amostra primária 504 é espacialmente adaptada pelo arranjo da amostra subordinado 502, exceto o recém-descrito sub-parcionamento dos blocos, a fim de tornar os blocos de folhas adotados em blocos quadrados. Em caso de adoção / predição inter-plano entre diferentes grupos de plano, a co-localização pode ser definida de uma maneira, de modo a permitir uma maior liberdade entre as subdivisões destes grupos de plano. Dado o grupo plano de referência, o bloco co-localizado no interior do grupo de plano de referência é determinado. A derivação do bloco co-localizado e o grupo de plano de referência pode ser feito por um processo semelhante ao seguinte. A amostra particular 514 no bloco atual 516 de uma amostra de arranjos 506 do grupo de plano secundário 512 é selecionada. O mesmo pode ser para a amostra superior esquerda do bloco atual 516, como mostrado em 514 na fig. 11 para fins ilustrativos, ou, de uma amostra no próximo bloco atual 516 para o meio do bloco atual 516 ou qualquer outra amostra no interior do bloco atual, o qual é exclusivamente definido geometricamente. A localização desta amostra selecionada dentro de um arranjo 515 de amostras 502 e 504 do plano de referência são calculadas por grupo 510. As posições da amostra 514 no interior dos arranjos de amostra 502 e 504 estão indicadas na fig. 11 em 518 e 520, respectivamente. Dentre os planos 502 e 504 dentro do grupo do plano de referência 510 é realmente utilizado e pode ser determinado, ou pode ser assinalado dentro do fluxo de bits. A amostra no interior do arranjo da amostra correspondente 502 ou 504 do grupo do plano de referência 510, sendo o mais próximo para as posições 518 e 520, respectivamente, é determinada e o bloco que contém essa amostra é escolhido como o bloco co-localizado dentro do arranjo de amostra respectivo 502 e 504, respectivamente. No caso da fig. 11, estes são os blocos 522 e 524, respectivamente. Uma abordagem alternativa para a determinação do bloco co- localizado em outros planos é descrito posteriormente.
[157] Numa modalidade, os parâmetros de codificação especificando a predição para o bloco atual 516 são completamente inferidos utilizando os parâmetros de predição correspondentes do bloco co-localizado 522/524 em um plano diferente do grupo 510 da mesma imagem 500, sem transmitir a informação lateral adicional. A inferência pode consistir de uma simples cópia dos respectivos parâmetros de codificação ou uma adaptação dos parâmetros de codificação levando em conta as diferenças entre o atual 512 e o plano de referência do grupo 510. Como um exemplo, esta adaptação pode consistir em adição de um parâmetro de correção de movimento (por exemplo, um vetor de correção de deslocamento) para ter em conta a diferença de fase entre os arranjos de amostra de luminância e crominância, ou a adaptação pode consistir em modificar a precisão dos parâmetros de movimento ( por exemplo, modificando a precisão dos vetores de deslocamento) para ter em conta a resolução diferente de arranjos de amostra de luminância e crominância. Numa outra modalidade de realização, um ou mais dos parâmetros de codificação inferidos para especificar a geração do sinal de predição não são diretamente utilizados para o bloco atual 516, mas são usados como uma predição para os respectivos parâmetros de codificação para o bloco atual 516 e um refinamento destes parâmetros de codificação para o bloco atual 516 é transmitido no fluxo de bits 22. Como um exemplo, os parâmetros do movimento inferidos não são diretamente utilizados, mas as diferenças de movimento de parâmetros (tal como uma diferença de vetores de deslocamento) que especificam o desvio entre os parâmetros de movimento que são utilizados para o bloco atual 516 e os parâmetros de movimento inferidos são codificados no fluxo de bits ; na lateral do decodificador, os parâmetros de movimento atuais utilizados são obtidos por combinação dos parâmetros do movimento inferidos e as diferenças dos parâmetros de movimento transmitidos.
[158] Noutra modalidade de realização, a subdivisão de um bloco, tais como os blocos de árvore da subdivisão da predição acima mencionados em blocos de predição (isto é, blocos de amostras para os quais o mesmo conjunto de parâmetros de predição é usado) é adaptativamente inferido ou previsto a partir de um bloco co- localizado já codificado de um grupo de plano diferente para a mesma imagem, ou seja, a sequência de bits de acordo com a fig. 6a ou 6b. Numa modalidade de realização, um dos dois ou mais grupos de plano é codificado como grupo de plano principal. Para todos os blocos desse grupo de plano principal, a informação de subdivisão é transmitida, sem se referir a outros grupos de plano da mesma imagem. Os grupos de plano restantes são codificados como grupos de plano secundários. Para os blocos dos grupos de planos secundários, um ou mais elementos de sintaxe são transmitidos de forma que o sinal da informação de subdivisão é inferido ou previsto a partir de outros blocos co-localizados de grupos de plano ou se a informação de subdivisão é transmitida no fluxo de bits. Um dos um ou mais elementos de sintaxe pode ser referido como sinalizador de predição inter- plano ou parâmetro de predição inter-plano. Se os elementos de sintaxe sinalizarem que a informação da subdivisão não é inferida ou prevista, a informação para a subdivisão do bloco é transmitido no fluxo de bits sem se referir a outros grupos de plano da mesma imagem. Se os elementos de sintaxe sinalizam que a informação de subdivisão é inferida ou prevista, o bloco co-localizado num assim chamado grupo de plano de referência é determinado. A atribuição do grupo de plano de referência para o bloco pode ser configurado de diversas maneiras. Numa modalidade de realização, um grupo de plano de referência particular é atribuído a cada grupo plano secundário; esta atribuição pode ser fixada ou pode ser sinalizada em estruturas de alto nível de sintaxe, como os conjuntos de parâmetros, cabeçalho da unidade de acesso, o cabeçalho de imagem, ou cabeçalho de seção. Numa segunda modalidade de realização, a atribuição do grupo de plano de referência é codificada dentro do fluxo de bits e assinalada por um ou mais elementos de sintaxe que são codificados para um bloco, a fim de especificar se a informação de subdivisão é inferida ou prevista ou separadamente codificada. O grupo de plano de referência pode ser o grupo de plano primário ou outro grupo plano secundário. Dado o grupo de plano de referência, o bloco co-localizado no interior do grupo de plano de referência é determinado. O bloco co-localizado é o bloco no grupo de plano de referência que corresponde à mesma área de imagem como bloco atual, ou o bloco que representa o bloco dentro do grupo de plano de referência, que partilha a maior parte da área de imagem com o bloco atua . O bloco co- localizado pode ser dividido em blocos de predição menores.
[159] Numa outra modalidade de realização, a informação de subdivisão para o bloco atual, tal como a subdivisão quadtree baseada de acordo com as Figs. 6a ou 6b, está completamente inferida com base nas informações de subdivisão do bloco co-localizado num plano diferente do grupo da mesma imagem, sem transmitir a informação lateral adicional. Como um exemplo particular, se o bloco co-localizado, está dividido em dois ou quatro blocos de predição, o bloco atual está também dividido em dois ou quatro sub-blocos, para efeitos de predição. Como outro exemplo particular, se o bloco co-localizado, estiver dividido em quatro sub-blocos e um destes sub-blocos é adicionalmente dividido em quatro sub-blocos menores, o bloco atual está também dividido em quatro sub-blocos e um desses sub-blocos (o que corresponde ao sub-bloco do bloco co-localizado, que está ainda em decomposição) está também dividido em quatro sub-blocos menores. Numa modalidade de realização ainda mais preferida, a informação da subdivisão inferida não é diretamente usada para o bloco atual, mas é usada como uma predição para a informação de subdivisão efetiva para o bloco atual, e a informação de refinamento correspondente é transmitida no fluxo de bits. Como um exemplo, a informação de subdivisão que é inferida a partir do bloco co-localizado pode ser aperfeiçoada. Para cada sub- bloco que corresponde a um sub-bloco do bloco co-localizado, que não é dividido em blocos menores, um elemento de sintaxe pode ser codificado no fluxo de bits, que especifica se o sub-bloco é adicionalmente decomposto em grupo de plano atual. A transmissão de tal elemento de sintaxe pode ser condicionada ao tamanho do sub-bloco. Ou pode ser um sinal de fluxo de bits em que um sub- bloco que é ainda dividido no grupo plano de referência não é dividido em blocos menores do grupo de plano atual.
[160] Numa outra modalidade de realização, tanto a subdivisão de um bloco em blocos de predição e os parâmetros de codificação que especificam como sub-blocos são preditos são adaptativamente inferidos ou previstos a partir de um bloco codificado já co-localizado de um grupo de plano diferente para a mesma imagem. Numa modalidade de realização preferida da invenção, um dos dois ou mais grupos de plano é codificado como grupo de plano primário. Para todos os blocos desse grupo de plano primário, as informações subdivisão e os parâmetros de predição são transmitidos, sem se referir a outros grupos de plano da mesma imagem. Os grupos de plano restantes são codificados como grupos de plano secundários. Para os blocos dos grupos de planos secundários, um ou mais elementos de sintaxe que são transmitidos sinalizam se a informação da subdivisão e os parâmetros de predição são inferidos ou previstos a partir de um bloco co-localizado de outros grupos de plano ou se a informação da subdivisão e os parâmetros de predição são transmitidos no fluxo de bits. Um dos um ou mais elementos de sintaxe pode ser referido como o sinalizador de predição inter- plano ou parâmetro de predição inter-plano. Se os elementos de sintaxe sinalizam que a informação de subdivisão e os parâmetros de predição não são inferidos ou previstos, a informação de subdivisão para o bloco, e os parâmetros de predição para os sub-blocos resultantes são transmitidos no fluxo de bits sem se referir a outros grupos de plano da mesma imagem. Se os elementos de sintaxe sinalizam que a informação de subdivisão e os parâmetros de predição para o sub-bloco são inferidos ou previstos, o bloco co-localizado num assim chamado grupo de plano de referência é determinado. A atribuição do grupo de plano de referência para o bloco pode ser configurado de diversas maneiras. Numa modalidade de realização, um grupo de plano de referência particular é atribuído a cada grupo de plano secundário; esta atribuição pode ser fixada ou pode sinalizada em estruturas de alto nível de sintaxe, tais como os conjuntos de parâmetros, cabeçalho da unidade de acesso, o cabeçalho de imagem, ou de cabeçalho de seção. Numa segunda modalidade de realização, a atribuição do grupo de plano de referência é codificada dentro do fluxo de bits e assinalada por um ou mais elementos de sintaxe que são codificados para um bloco, a fim de especificar se a informação da subdivisão e os parâmetros de predição são inferidos ou previstos ou separadamente codificados. O grupo de plano de referência pode ser o grupo de plano primário ou de outro grupo de plano secundário. Dado o grupo plano de referência, o bloco co-localizado no interior do grupo de plano de referência é determinado. O bloco co-localizado pode ser o bloco no grupo de plano de referência que corresponde à mesma área de imagem como bloco de fluxo, ou o bloco que representa o bloco dentro do grupo de plano de referência, que partilha a maior parte da área de imagem com o bloco atual. O bloco co- localizado pode ser dividido em blocos menores de predição. Numa modalidade de realização preferida, a informação de subdivisão para o bloco atual, bem como os parâmetros de predição para os sub-blocos resultantes são completamente inferidos com base nas informações de subdivisão do bloco co-localizado num grupo de plano diferente de mesma imagem e os parâmetros de predição dos sub-blocos correspondentes, sem transmissão de informações colaterais adicionais. Como um exemplo particular, se o bloco co-localizado, estiver dividido em dois ou quatro blocos de predição, o bloco atual está também dividido em dois ou quatro sub-blocos com a finalidade de predição e os parâmetros de predição para os sub-blocos do bloco atual são derivados, como descritos acima. Como outro exemplo particular, se o bloco co-localizado, estiver dividido em quatro sub-blocos e um destes sub- blocos é adicionalmente dividido em quatro sub-blocos menores, o bloco atual está também dividido em quatro sub-blocos e um desses sub-blocos (o que corresponde aos sub-blocos do bloco co-localizado, que está ainda em decomposição) está também dividido em quatro sub-blocos mais pequenos e os parâmetros de predição para todos os sub-blocos não mais particionadas são inferidos como descrito acima. Numa modalidade de realização ainda mais preferida, a informação é completamente subdivisão inferida com base na informação de subdivisão do bloco co-localizado no grupo de plano de referência, mas os parâmetros de predição inferidos para os sub-blocos são usados apenas como previsão para os parâmetros de predição reais dos subblocos . Os desvios entre os parâmetros de predição reais e os parâmetros de predição inferidos são codificados no fluxo de bits. Numa outra modalidade de realização, as informações de subdivisão inferida é usado como uma previsão para a informação de subdivisão efectiva do bloco fluxo e que a diferença é transmitida no fluxo de bits (tal como descrito acima), mas os parâmetros de predição são completamente inferida. Numa outra modalidade de realização, tanto a informação de subdivisão inferida e os parâmetros de predição inferidos são usados como a previsão e as diferenças entre a informação de subdivisão efectiva e os parâmetros de predição e seus valores inferidos são transmitidos no fluxo de bits.
[161] Noutra modalidade de realização, é escolhido de forma adaptativa, para um bloco de um grupo de plano, se os modos de codificação residuais (tais como o tipo de transformação) são inferidos a partir de um ou prevista já codificado bloco co-localizado de um grupo plano diferente para a mesma imagem ou se os modos de codificação residuais são codificados separadamente para o bloco. Esta modalidade de realização é semelhante à modalidade de realização para a inferência adaptativa / predição dos parâmetros de predição descritos acima.
[162] Noutra modalidade de realização, a subdivisão de um bloco (por exemplo, um bloco de predição) em blocos de transformação (isto é, blocos de amostras para o qual a transformação bidimensional é aplicada) está adaptativamente inferida ou prevista a partir de um bloco codificado já co- localizado de um grupo de plano diferente para a mesma imagem. Esta modalidade de realização é semelhante à modalidade de realização para a inferência adaptativa / predição da subdivisão em blocos de predição descrita acima.
[163] Noutra modalidade de realização, a subdivisão de um bloco para transformar os blocos e os modos de codificação residuais (por exemplo, tipos de transformação) para os blocos de transformação resultantes são adaptativamente inferidos ou previstos a partir de um bloco codificado já co- localizado de um grupo de plano diferente para a mesma imagem . Esta modalidade de realização é semelhante à modalidade de realização para a inferência adaptativa / predição da subdivisão em blocos de predição e os parâmetros de predição para os blocos de predição resultantes descritos acima.
[164] Noutra modalidade de realização, a subdivisão de um bloco em blocos de predição, os parâmetros de predição associados, a informação de subdivisão dos blocos de predição, e os modos de codificação para os resíduos de blocos de transformação são adaptativamente inferidos ou previstos a partir de um bloco codificado já co-localizado de um grupo de plano diferente para a mesma imagem. Esta modalidade de realização representa uma combinação das modalidades de realização descritas acima. Também é possível que apenas alguns dos parâmetros de codificação inferidos ou previstos sejam mencionados.
[165] Assim, a adoção / previsão do inter-plano pode aumentar a eficiência de codificação descrita anteriormente. No entanto, o ganho de eficiência de codificação por meio do plano de adoção / predição também está disponível em caso de outras subdivisões de bloco a ser utilizado do que multitree baseados em loteamentos e independentes do bloco de fusão a ser implementado ou não.
[166] As modalidades de realização acima delineadas em relação ao plano de adaptação / inter predição são aplicáveis a imagem de vídeo e os codificadores e decodificadores que dividem os planos de cor de uma imagem e, se presente, os arranjos de amostra auxiliares associados a uma imagem em blocos e associados com estes blocos de parâmetros de codificação. Para cada bloco, um conjunto de parâmetros de codificação pode ser incluído no fluxo de bits. Por exemplo, estes parâmetros de codificação podem ser parâmetros que descrevem a forma como um bloco é previsto ou decodificado na lateral do decodificador. Como exemplos particulares, os parâmetros de codificação podem representar modos de macroblocos ou blocos de predição, subdivisão de informação, modos de intra predição, índices de referência utilizados para predição de parâmetros de movimento compensados, de movimento, como vetores de deslocamento, modos de codificação residuais, coeficientes de transformação, etc. Os diferentes arranjos de amostra que estão associados com uma imagem podem ter tamanhos diferentes.
[167] A seguir, um sistema de sinalização aumentada de parâmetros de codificação dentro de um esquema de parcionamento baseada em árvore, como, por exemplo, os descritos acima com referência à fig. 1-8 é descrito. Tal como com os outros sistemas, ou seja, a fusão e plano de adoção internacional / predição, os efeitos e as vantagens dos sistemas avançados de sinalização, a seguir frequentemente chamado de herança, são descritos independente das modalidades de realização acima, embora os esquemas a seguir descritos são combinados com qualquer uma das modalidades de realização anteriores, tanto isoladamente ou em combinação.
[168] Geralmente, o esquema de codificação para melhor codificação de informação lateral dentro de um esquema de parcionamento baseado em árvore, chamado de herança, descrito a seguir permite as seguintes vantagens em relação aos sistemas convencionais de tratamento do parâmetro de codificação.
[169] Na codificação de imagem e vídeo convencionais, as imagens ou conjuntos particulares de arranjos de amostra para as imagens são geralmente decompostos em blocos, que são associados com determinados parâmetros de codificação. As imagens geralmente consistem em arranjos de amostras múltiplas. Além disso, uma imagem pode também ser associada a outros arranjos de amostras auxiliares, o que pode, por exemplo, especificar informação de transparência ou mapas de profundidade. Os arranjos de amostra de uma imagem (incluindo arranjos de amostra auxiliares) podem ser agrupados em um ou mais dos assim chamados grupos de plano, em que cada grupo de plano consiste em um ou mais arranjos de amostra. Os grupos de plano de uma imagem podem ser codificados de forma independente, ou, se a imagem estiver associada a mais de um grupo de plano, com a predição de outros grupos de plano da mesma imagem. Cada grupo de plano normalmente é decomposto em blocos. Os blocos (ou os blocos de arranjos de amostra correspondentes), são previstos por uma predição de inter-imagem ou predição de intra-imagem. Os blocos podem ter diferentes tamanhos, podendo ser quadrados ou retangulares. O parcionamento de uma imagem em blocos pode ser fixado pela sintaxe, ou pode ser (pelo menos parcialmente) sinalizado dentro do fluxo de bits. Muitas vezes, os elementos de sintaxe são transmitidos sinalizando a subdivisão para blocos de tamanhos pré-definidos. Tais elementos de sintaxe podem especificar se e como um bloco é subdividido em blocos menores e estão associados a parâmetros de codificação, como por exemplo, para efeitos de predição. Para todas as amostras de um bloco (ou os correspondentes blocos de arranjos de amostra) a decodificação dos parâmetros associados de codificação é especificada de uma maneira determinada. No exemplo, todas as amostras em um bloco são previstas usando o mesmo conjunto de parâmetros de predição, tais como os índices de referência (a identificação de uma imagem de referência no conjunto de imagens já codificado), os parâmetros de movimento (especificando uma medida para o movimento de um bloco entre uma imagem de referência e a imagem atual), parâmetros para especificar a interpolação de filtro, modos de intra predição, etc. Os parâmetros de movimento podem ser representados por vetores de deslocamento com um componente horizontal e vertical, ou por meio de parâmetros de ordem mais elevada de movimento, tais como os parâmetros de movimento afins consistem de seis componentes. Também é possível que mais do que um conjunto de parâmetros de predição particulares (tais como os índices de referência e parâmetros de movimento) estão associados a um único bloco. Neste caso, para cada conjunto destes parâmetros de predição determinados, um sinal de predição intermediária única para o bloco (ou os correspondentes blocos de arranjos de amostra) é gerado, e o sinal de predição final é construído por uma combinação incluindo a sobreposição dos sinais de predição intermediários. Os parâmetros de peso correspondentes e eventualmente também uma constante de deslocamento (que é adicionada à soma de peso) podem ser fixados para uma imagem, ou uma imagem de referência, ou um conjunto de imagens de referência, ou podem ser incluídos no conjunto de parâmetros de predição para o bloco correspondente. A diferença entre os blocos originais (ou os blocos de arranjos de amostra correspondentes) e os seus sinais de predição, também referido como o sinal residual, é geralmente transformado e quantizado. Muitas vezes, uma transformação bidimensional é aplicada ao sinal residual (ou os arranjos de amostras correspondentes do bloco residual). Para transformar a codificação, os blocos (ou os blocos de arranjos de amostra correspondentes), para o qual um determinado conjunto de parâmetros de predição tem sido utilizado, pode ser ainda dividido, antes de aplicar a transformação. Os blocos de transformação podem ser iguais a ou menores do que os blocos que são usados para a predição. Também é possível que um bloco de transformação inclua mais do que um dos blocos que são usados para a predição. Diferentes blocos de transformação podem ter tamanhos diferentes e os blocos de transformação podem representar blocos quadrados ou retangulares. Após a transformação, os coeficientes de transformação resultantes são quantificados e os assim chamados níveis de coeficientes de transformação são obtidos. Os níveis de coeficientes de transformação, bem como os parâmetros de predição, e, se estiver presente, a informação de subdivisão é codificada por entropia.
[170] Em alguns padrões de codificação de imagem e vídeo, as possibilidades para subdividir uma imagem (ou um grupo de plano) em blocos que são fornecidos pela sintaxe são muito limitadas. Normalmente, ele só pode ser especificado se, e (potencialmente como) um bloco de um tamanho pré- definido pode ser subdividido em blocos menores. Como um exemplo, o tamanho do maior bloco de H.264 é 16x16. Os blocos de 16x16 são também referidos como macroblocos e cada imagem está dividida em macroblocos em uma primeiro passo. Para cada macrobloco 16x16, pode ser sinalizado se é codificado como bloco de 16x16, ou como dois blocos de 16x8, ou como dois blocos de 8x16, ou como quatro blocos de 8x8. Se um bloco de 16x16 é subdividido em quatro blocos 8x8, cada um destes blocos de 8x8 podem ser codificados como um bloco de 8x8, ou como dois blocos8x4, ou como dois blocos 4x8, ou como quatro blocos 4x4. O conjunto reduzido de possibilidades para especificar o parcionamento em blocos em padrões do estado da técnica de codificação de imagem e vídeo tem a vantagem de que a taxa de informação lateral para a sinalização das informações da subdivisão pode ser mantida pequena, mas tem a desvantagem de que a taxa de bit necessária para transmitir os parâmetros de predição para os blocos podem tornar-se significativa, conforme explicado a seguir. A taxa de informação lateral para a sinalização das informações de predição não representam geralmente uma quantidade significativa da taxa de bits total de um bloco. E a eficiência de codificação pode ser aumentada quando a referida informação lateral é reduzida, o que, por exemplo, pode ser conseguido através de tamanhos de bloco maiores. Imagens reais ou imagens de uma seqüência de vídeo consistem em objetos de forma arbitrária com propriedades específicas. Como um exemplo, os objetos ou partes de objetos são caracterizados por uma textura única ou um movimento único. E, geralmente, o mesmo conjunto de parâmetros de predição pode ser aplicado para tal objeto, ou parte de um objeto. Mas os limites do objeto geralmente não coincidem com os limites de blocos possíveis para blocos de predição de grandes dimensões (por exemplo, macroblocos 16x16 em H.264). Um codificador geralmente determina a subdivisão (entre o conjunto limitado de possibilidades) que resulta no mínimo de uma medida de custo em particular de taxa de distorção. Para objetos em forma arbitrária, isso pode resultar em um grande número de pequenos blocos. E uma vez que cada um destes blocos pequenos está associado com um conjunto de parâmetros de predição, precisa ser transmitido, a taxa de informação lateral pode se tornar uma parte significativa da taxa de bits total. Mas, uma vez que muitos dos pequenos blocos ainda representam áreas do mesmo objeto ou parte de um objeto, os parâmetros de predição para um determinado número de blocos obtidos são iguais ou muito semelhantes. Intuitivamente, a eficiência de codificação pode ser aumentada quando a sintaxe é estendida de modo que não só permite a subdivisão de um bloco, mas também compartilhar os parâmetros de codificação entre os blocos que são obtidos após a subdivisão. Em uma subdivisão baseada em árvore, a partilha de parâmetros de codificação para um determinado conjunto de blocos pode ser alcançado através da atribuição dos parâmetros de codificação ou de partes de um ou mais nós parentes na hierarquia baseada em árvore. Como resultado, os parâmetros partilhados, ou partes destes podem ser utilizados para reduzir a informação lateral que é necessária para assinalar a escolha real dos parâmetros de codificação para os blocos obtidos após a subdivisão. A redução pode ser obtida ao omitir a sinalização de parâmetros para os blocos subsequentes ou usando o parâmetro comum (s) para a predição e/ou modelagem do contexto dos parâmetros para os blocos subsequentes.
[171] A idéia básica do esquema de herança descrita abaixo é a de reduzir a taxa de bits que é necessária para a transmissão dos parâmetros de codificação e partilhando a informação ao longo da hierarquia de árvore baseada de blocos. A informação partilhada é sinalizada dentro do fluxo de bits (além da informação da subdivisão). A vantagem do esquema de herança é um aumento de eficiência de codificação resultante de uma diminuição da taxa de informação lateral para os parâmetros de codificação.
[172] A fim de reduzir a taxa de informação lateral, de acordo com as formas de realização descritas a seguir, os respectivos parâmetros de codificação para um conjunto particular de amostras, isto é, regiões simplesmente ligadas, que podem representar blocos retangulares ou quadrados ou regiões formadas arbitrariamente ou qualquer outra coleção de amostras, de uma subdivisão multitree são sinalizadas no fluxo de dados de forma eficiente. O esquema de herança descrito abaixo permite que os parâmetros de codificação não necessitam ser explicitamente incluídos no fluxo de bits para cada um desses conjuntos de amostras na íntegra. Os parâmetros de codificação podem representar parâmetros de predição, que especificam como o conjunto de amostras correspondente é previsto usando amostras já codificadas. Muitas possibilidades e exemplos foram acima descritos e também se aplicam aqui. Como também foi indicado acima, e será descrito mais adiante, na medida em que o esquema de herança seguinte está relacionado, a partição baseada em árvore dos conjuntos de amostras de uma imagem em conjuntos de amostras pode ser fixada pela sintaxe ou pode ser assinalada por informações de subdivisão correspondente dentro do fluxo de bits. Os parâmetros de codificação para os conjuntos de amostras podem, como acima descrito, ser transmitidos em uma ordem pré-definida, que é dada pela sintaxe.
[173] De acordo com o esquema de herança, o decodificador ou extrator 102 do decodificador está configurado para derivar a informação sobre os parâmetros de codificação da região individual simplesmente ligada ou conjuntos de amostras de uma maneira específica. Em particular, os parâmetros de codificação, ou partes destes, tais como os parâmetros que servem para a finalidade de predição, são partilhados entre os blocos ao longo do esquema de parcionamento dado baseado em árvore com o grupo de partilha ao longo da estrutura de árvore a ser decidido pelo codificador ou insersor 18, respectivamente. Numa modalidade de realização particular, partilhar os parâmetros de codificação para todos os nós descendentes de um dado nó interno da árvore de parcionamento é indicado por meio de um sinalizador de partilha específico com valor binário. Como uma abordagem alternativa, refinamentos dos parâmetros de codificação podem ser transmitidos para cada nó de tal forma que os refinamentos acumulados de parâmetros ao longo da hierarquia baseada em árvore de blocos podem ser aplicados a todos os conjuntos de amostras do bloco a um nó de folha fornecida. Em outra modalidade de realização, as partes dos parâmetros de codificação que são transmitidos para nós internos ao longo da hierarquia com base em árvore de blocos podem ser utilizados para a codificação por entropia do contexto adaptativo e decodificação do parâmetro de codificação ou de partes do bloco a um nó de folha fornecida.
[174] Fig. 12a e 12b ilustram a idéia básica da herança para o caso específico de utilizar um parcionamento baseado em quadtree. No entanto, como indicado acima, muitas vezes, outros sistemas de subdivisão multitree podem ser utilizados, assim a estrutura da árvore é mostrado na Fig. 12a enquanto que o parcionamento correspondente espacial que corresponde à estrutura da árvore da fig. 12a é mostrada na Fig. 12b. O parcionamento mostrado aí é semelhante ao mostrado em relação às Figs. 3a a 3c. De um modo geral, o regime de herança irá permitir que a informação lateral a ser atribuída aos nós localizados em diferentes camadas não-folha no interior da estrutura da árvore. Dependendo da atribuição de informações laterais para os nós em diferentes camadas da árvore, tal como os nós internos da árvore da fig. 12a ou o nó da raiz dos mesmos, diferentes graus de informação lateral partilhada pode ser alcançada dentro da hierarquia de blocos de árvore mostrado na fig. 12b. Por exemplo, se for decidido que todos os nós das folhas da camada 4, a qual, no caso da fig. 12a têm todos os mesmos nós parentes, devem partilhar a informação lateral, virtualmente isto significa que os blocos menores, na fig. 12b indicado como 156a 156d compartilham desta informação lateral e não é mais necessário transmitir a informação lateral por todos esses pequenos blocos 156A a 156d, na íntegra, ou seja, quatro vezes, embora isso seja mantido como uma opção para o codificador. No entanto, seria também possível decidir que uma região inteira de um nível de hierarquia (camada 2) da fig. 12-A, nomeada a quarta parte no canto superior direito do bloco de árvore 150, incluindo o sub-blocos 154a, 154b e 154d bem como os sub-blocos ainda menores 156a a 156d recentemente mencionado, serve como uma região em que parâmetros de codificação são compartilhados. Assim, a área de informação lateral partilhada é aumentada. O próximo nível de crescimento seria a soma de todos os sub-blocos da camada 1, ou seja, sub-blocos 152a, 152c e 152d e os blocos menores acima mencionados. Em outras palavras, nesse caso o bloco de árvore inteiro teria a informação lateral atribuída ao mesmo, com todos os sub-blocos deste bloco de árvore 150 partilhando a informação lateral.
[175] Na descrição de hereditariedade seguinte, a seguinte notação é usada para descrever as modalidades de realização: a. Amostras reconstruídas do nó da folha atual: r b. Amostras reconstruídos de folhas vizinhas: r' c. Preditor do nó da folha atual: p d. Resíduo do nó folha atual: Res e. Resíduo reconstruído do nó folha atual: RecRes f. Escala e transformação inversa: SIT g. Sinalizador de compartilhamento: f
[176] Como um primeiro exemplo de hereditariedade, a sinalização intra- predição nos nós internos pode ser descrita. Para ser mais exato, é descrito como sinalizar os modos de intra-predição dos nós internos da árvore de um bloco baseado no parcionamento com a finalidade de predição. Ao percorrer a árvore a partir do nó da raiz para os nós da folha, os nós internos (incluindo o nó da raiz) podem transmitir partes de informação lateral que vai ser explorada por seus nós descendentes correspondentes. Para ser mais específico, um sinalizador de partilha f é transmitido para os nós internos com o seguinte significado: • Se f tem um valor de 1 ("verdadeiro"), todos os nós descendentes de um determinado nó interno compartilha o modo de intra- predição do mesmo. Além do sinalizador de partilha f com um valor de 1, o nó interno também sinaliza o parâmetro do modo de intra-predição a ser usado para todos os nós descendentes. Consequentemente, todos nós descendentes posteriores não possuem qualquer informação do modo de predição, bem como todos os sinalizadores de compartilhamento. Para a reconstrução de todos os nós de folha relacionados, o decodificador aplica o modo de intra-predição do nó interno correspondente. • Se f tem um valor 0 ("falso"), os nós descendentes do nó correspondente interno não compartilham o modo de intra- predição do mesmo e cada nó filho que é um nó interno carrega um sinalizador de compartilhamento separado.
[177] A Fig. 12c ilustra a sinalização da intra-predição nos nós internos como descrito acima. O nó interno da camada 1 transmite o sinalizador de compartilhamento e a informação lateral que é dada pela informação do modo de intra-predição e os nós descendentes não transportam qualquer informação lateral.
[178] Como um segundo exemplo de hereditariedade, o refinamento entre predição pode ser descrito. Para ser mais preciso, é descrito como sinalizar a informação lateral de modos de inter- predição a modos internos de um parcionamento do bloco baseado em árvore com a finalidade de refinamento de parâmetros de movimento, como por exemplo, dados por vetores de movimento. Ao percorrer a árvore a partir do nó da raiz para os nós da folha, os nós internos (incluindo o nó da raiz) podem transmitir partes de informação lateral que vai ser refinada por seus nós descendentes correspondentes. Para ser mais específico, um sinalizador de compartilhamento é transmitido para os nós internos com o seguinte significado: • Se f tem um valor de 1 ("verdadeiro"), todos os nós descendentes do determinado nó interno compartilha a referência do mesmo vetor de movimento. Além do sinalizador de compartilhamento com um valor de 1, o nó interno também sinaliza o vetor de movimento e o índice de referência. Consequentemente, todos nós descendentes subsequentes não carregam mais os sinalizadores de compartilhamento, mas pode realizar um refinamento desta referência do vetor de movimento herdado. Para a reconstrução de todos os nós de folha relacionados, o decodificador adiciona o refinamento do vetor de movimento no determinado nó de folha à referência do vetor de movimento herdado pertencente ao nó parente interno correspondente que tem um sinalizador de partilha com um valor de 1. Isto significa que o vetor de movimento no refinamento de um dado nó de folha é a diferença entre o vetor de movimento atual a ser aplicado com compensação de movimento de predição para este nó de folha e o vetor de movimento de referência do nó parente correspondente interno. • Se f tem um valor de 0 ("falso"), os nós descendentes do nó correspondente interno não compartilham necessariamente o modo de inter-predição e mesmo sem refinamento dos parâmetros de movimento é executado no nó descendente, usando os parâmetros do movimento a partir do nó correspondente interno e cada nó descendente que é um nó interno carrega um sinalizador de partilha separado.
[179] A Fig. 12d ilustra o refinamento do parâmetro de movimento como descrito acima. O nó interno na camada 1 transmita o sinalizador de partilha e a informação lateral. Os nós descendentes que são nós de folha transportam apenas os refinamentos de parâmetros de movimento e, por exemplo, o nó descendente interno na camada 2 não transporta nenhuma informação lateral.
[180] Faz-se referência agora à fig. 13. A Fig. 13 mostra um diagrama de fluxo que ilustra o modo de operação de um decodificador, tais como o decodificador da FIG. 2 reconstruindo um conjunto de amostras que representam um sinal de informação espacial exemplar, que é subdividido em regiões de folhas de diferentes tamanhos por subdivisão multi-tree, a partir de um fluxo de dados. Como foi descrito acima, cada uma das regiões da folha tem com ela associado um nível de hierarquia de uma sequência de níveis de hierarquia da subdivisão multi-tree. Por exemplo, todos os blocos mostrados na Fig. 12b são regiões de folha. A região da folha 156c, por exemplo, está associada com a camada de hierarquia 4 (ou nível 3). Cada região de folha tem com ela associado parâmetros de codificação. Exemplos destes parâmetros de codificação foram descritos acima. Os parâmetros de codificação são, para cada região da folha, representados por um conjunto de elementos de sintaxe respetivo. Cada elemento de sintaxe é de um tipo de elemento de sintaxe respectivo de um conjunto de tipos de elementos de sintaxe. Tal tipo de elemento de sintaxe é, por exemplo, um modo de predição, um componente de vetor de movimento, uma indicação de um modo de intra-predição ou afins. De acordo com a fig. 13, o decodificador executa os seguintes passos.
[181] No passo 550, uma informação de herança é extraída do fluxo de dados. No caso da fig. 2, o extrator 102 é responsável pelo passo 550. A informação de herança indica se a herança é usada ou não para o arranjo de amostras de informação atual. A descrição a seguir vai revelar que existem várias possibilidades para a informação de herança, tais como, entre outros aspectos, o sinalizador de partilha f e a sinalização de uma estrutura multitree dividida em uma parte primária e secundária.
[182] O arranjo de amostras da informação podem já ser uma sub-parte de uma imagem, tal como um bloco de árvore, denominado o bloco de árvore 150 da fig. 12b, por exemplo. Assim, a informação de herança indica quanto ao fato de a herança ser usada ou não para o bloco de árvore específico 150. Tal informação de herança pode ser inserida no fluxo de dados para todos os blocos de árvores da subdivisão de predição, por exemplo.
[183] Além disso, a informação de herança indica se a herança é indicada para ser utilizada, pelo menos, uma região de herança do arranjo de amostras de informação, que é composto por um conjunto de regiões de folha e corresponde a um nível de hierarquia da sequência de níveis de hierarquia da subdivisão multi-tree, sendo menor do que cada um dos níveis hierárquicos com a qual o conjunto de regiões de folhas está associado. Em outras palavras, a informação de herança indica quanto ao fato de a herança será usada ou não para o arranjo da amostra, tais como o bloco de árvore 150. Se sim, denota pelo menos, uma região de herança ou subregião deste bloco de árvore 150, com o qual as partes de regiões de folha de parâmetros de codificação. Assim, a região de herança não pode ser uma região de folha. No exemplo da fig. 12b, esta região de herança pode, por exemplo, ser a região formada pelos subblocos 156a a 156b. Em alternativa, a região de herança pode ser maior e pode englobar também adicionalmente os subblocos154a, b e d, e, mesmo, alternativamente, a região de herança pode ser o bloco de árvore 150 propriamente com todos os blocos de folhas do mesmo partilhando os parâmetros de codificação associados a essa região de herança.
[184] Deve-se notar, no entanto, que mais do que uma região de herança pode ser definida dentro uma arranjo de amostra ou bloco de árvore 150, respectivamente. Imagine, por exemplo, o sub-bloco no canto inferior esquerdo 152c também foi dividido em blocos menores. Neste caso, o sub-bloco 152c pode também formar uma região de herança.
[185] No passo 552, a informação de herança é verificada quanto ao fato de a herança ser usada ou não. Se sim, o processo da fig. 13 continua com o passo 554, onde um subconjunto de herança incluindo pelo menos um elemento de sintaxe de um tipo pré-determinado de elemento sintaxe é extraído do fluxo de dados por região inter-herança. No passo seguinte 556, este subconjunto de herança é então copiado para, ou utilizados como uma predição para, um subconjunto de herança correspondente de elementos de sintaxe dentro do conjunto de elementos de sintaxe que representam os parâmetros de codificação associados ao conjunto das regiões da folha respectivo onde pelo menos uma região é constituída por herança. Em outras palavras, para cada região de herança indicada na informação de herança, o fluxo de dados compreende um subconjunto de elementos de sintaxe de herança. Em ainda outras palavras, a herança pertence a pelo menos um determinado tipo de elemento de sintaxe ou categoria de elemento de sintaxe que está disponível para a herança. Por exemplo, o modo de predição ou modo de inter-predição ou modo de intra- predição do elemento de sintaxe podem ser submetidos a herança. Por exemplo, o subconjunto de herança contido dentro do fluxo de dados para a região pode compreender uma sucessão do modo de inter-predição do elemento de sintaxe. O subconjunto de herança também pode compreender outros elementos de sintaxe dos tipos de elemento de sintaxe, que depende do valor do tipo acima mencionado do elemento sintaxe fixo associado com o esquema de herança. Por exemplo, no caso do modo de inter-predição ser um componente fixo do subconjunto de herança, os elementos de sintaxe definindo a compensação de movimento, tais como os componentes de vetor de movimento, podem ou não ser incluídos no subconjunto de herança pela sintaxe. Imagine, por exemplo, o quarto superior direito do bloco de árvore 150, ou seja, sub-bloco 152b, foi a região de herança, em seguida, o modo de inter-predição só poderia ser indicado para esta região de herança ou o modo de inter-predição juntamente com os vetores de movimento e índices do vetor de movimento.
[186] Todos os elementos de sintaxe contidos no subconjunto de herança é copiado ou usado como uma predição para os respectivos parâmetros de codificação de blocos de folhas dentro daquela região de herança da folha, ou seja, blocos 154a, b, d e 156a a 156d. No caso da predição a ser utilizada, os resíduos são transmitidos para os blocos de folhas individuais.
[187] Uma possibilidade para transmitir a informação de herança para o bloco de árvore 150 é a transmissão acima mencionada de um sinalizador de partilha f. A extração da informação de herança no passo 550 pode, neste caso, ter a seguinte composição. Em especial, o decodificador pode ser configurado para extrair e verificar, para regiões de não folha correspondentes a qualquer um de uma sucessão para definir, pelo menos, um nível de hierarquia da subdivisão multi-tree, utilizando uma ordem do nível de hierarquia a partir do nível mais baixo de hierarquia ao nível mais alto de hierarquia, o sinalizador de partilha f do fluxo de dados, para saber se o sinalizador de respectivo ou sinalizador de partilha herança prescreve a herança ou não. Por exemplo, o conjunto de herança de níveis de hierarquia pode ser formado por camadas de hierarquia 13 na fig. 12a. Assim, para qualquer um dos nós da estrutura de sub-árvore não sendo um nó de folha e localizado dentro de qualquer uma das camadas 1-3 pode ter um sinalizador de partilha a ele associado no fluxo de dados. O decodificador extrai esses sinalizadoresde compartilhamento na ordem da camada 1 para a camada 3, como em uma primeira ordem de busca em profundidade e largura. Logo que um dos sinalizadores de partilha é igual a 1, o descodificador sabe que os blocos de folhas contidos numa proporção correspondente a região de herança do subconjunto de herança subsequentemente extraído no passo 554. Para nós descendentes do nó atual, uma verificação de sinalizadores de herança não é mais necessária. Em outras palavras, os sinalizadores de herança para estes nós descendentes não foram transmitidos no fluxo de dados, uma vez que é evidente que a área desses nós já pertence à região da herança dentro da qual o subconjunto de elementos de sintaxe de herança é compartilhado.
[188] Os sinalizadores de partilha f podem ser intercalados com os bits de sinalização acima mencionados na subdivisão quadtree. Por exemplo, uma sequência de bits intercalada incluindo ambos os sinalizadores de subdivisão, bem como os sinalizadores de partilha podem ser:10001101 (0000) 000,que é a mesma informação da subdivisão, tal como ilustrado na fig. 6a com os dois sinalizadores de partilha intercalados, os quais são destacados como sublinhados a fim de indicar que, na fig. 3c todos os sub-blocos no canto inferior esquerdo do bloco de árvore 150 compartilha os parâmetros de codificação.
[189] Outra forma de definir a informação de herança indicando a região de herança seria a utilização de duas sub-divisões definidas de uma forma dependente uma da outro, tal como explicado acima em relação à predição e subdivisão residual, respectivamente. De um modo geral, os blocos de folhas da subdivisão primária pode formar a região de herança para definir as regiões em que os subconjuntos de herança de elementos de sintaxe são compartilhados, enquanto a subdivisão subordinada define os blocos dentro destas regiões de herança para as quais o subconjunto de elementos de sintaxe herança é copiado ou utilizado como uma predição.
[190] Considere, por exemplo, a árvore residual, como uma extensão da árvore de predição. Além disso, considere o caso em que os blocos de predição podem ser ainda divididos em blocos menores para o propósito de codificação residual. Para cada bloco de predição que corresponde a um nó de folha da predição quadtree relacionada, a subdivisão correspondente a codificação residual é determinada por um ou mais quadtree subordinado (s).
[191] Neste caso, em vez de usar qualquer sinalização de predição em nós internos, consideramos a árvore residual como sendo interpretada de forma a também especificar um refinamento da árvore de predição, no sentido da utilização de um modo de predição constante (sinalizado pelo nó de folha da árvore correspondente relacionado à predição), mas com as amostras de referência refinadas. O exemplo a seguir ilustra este caso.
[192] Por exemplo, as fig. 14a e 14b mostram um parcionamento quadtree para intra predição com amostras de referência vizinhas sendo destacadas para um nó de folha específica da subdivisão primária, enquanto a Fig. 14b mostra a subdivisão quadtree residual para a mesmo predição do nó de folha com amostras de referência refinados. Todos os sub-blocos mostrados na Fig. 14b apresentam os mesmos parâmetros de inter-predição contidos dentro do fluxo de dados para o respectivo bloco de folhas em destaque na fig. 14a. Assim, a fig. 14a mostra um exemplo para o prcionamento quadtree convencional para a intra predição, onde as amostras de referência para um nó de folha específico são descritas. Na nossa modalidade de realização preferida, no entanto, um sinal de intra predição parcionado é calculado para cada nó de folha na árvore residual usando amostras vizinhas já reconstruídas de nós de folha na árvore residual, por exemplo, conforme indicado pelas riscas cinzentas sombreadas na fig. 4 (b). Em seguida, o sinal reconstruído de um determinado nó de folha residual é obtido da maneira habitual, adicionando o sinal quantizado residual a este sinal de predição. Este sinal reconstruído é então usado como um sinal de referência para o processo de predição seguinte. Note que a ordem de decodificação para a predição é a mesma que a ordem de decodificação residual.
[193] No processo de decodificação, como mostrado na Figura 15, para cada nó de folha residual, o sinal de predição p é calculado de acordo com o modo de intra-predição atual (como indicado pelo nó de folha quadtree relacionada a predição) utilizando as amostras de referência. Após o processo, RecRes=SIT(Res) o sinal reconstruído é calculado e armazenado para o próximo processo de predição de cálculo:r = Re c Re s + p
[194] A ordem de decodificação para a predição é a mesma que a ordem de decodificação residual, que é ilustrada na Figura 16.
[195] Cada nó de folha residual é decodificado como descrito no parágrafo anterior. O sinal reconstruído é armazenado numa memória intermediária, como mostrado na Figura 16. Fora desta memória, as amostras de referência serão levadas para a próxima predição e processo de decodificação.
[196] Depois de ter descrito modalidades específicas em relação às Figs. 1-16 com subconjuntos combinados distintos dos aspectos acima delineados, modalidades de realização adicionais do presente pedido de patente está descrito que se concentram em determinados aspectos já descritos acima, mas que representam modalidades de realização generalizadas de algumas das modalidades de realização descritas acima.
[197] Em particular, as modalidades de realização descritas acima, com respeito à estrutura das Figs. 1 e 2, particularmente combinadou muitos dos aspectos do presente pedido de patente, o que seria também vantajoso quando utilizado em outras aplicações ou outros campos de codificação. Como frequentemente mencionado durante a discussão acima, a subdivisão multitree, por exemplo, pode ser utilizada sem a fusão e / ou sem plano de adoção / predição e / ou sem a herança. Por exemplo, a transmissão do tamanho máximo do bloco, a utilização da ordem transversal de profundidade, a adaptação do contexto, dependendo do nível de hierarquia do sinalizador da subdivisão respectiva e a transmissão do nível de hierarquia máximo dentro do fluxo de bits, a fim de economizar a taxa de bits da informação lateral, todos estes aspectos são vantajosos independentes um do outro. Isso também é verdadeiro quando se considera o esquema de fusão. A fusão é vantajosamente independente da forma exata que uma imagem é subdividida em regiões simplesmente ligadas e é vantajosamente independente da existência de mais do que um arranjo de amostra ou o uso do plano de adoção/ predição e/ou herança. O mesmo se aplica para as vantagens envolvidas com adoção / predição do inter-plano e herança.
[198] Por conseguinte, as modalidades de realização descritas a seguir generalizam as modalidades de realização já referidas em relação a aspectos relacionados com a fusão. Como as modalidades de realização seguintes representam generalizações das modalidades de realização acima descritas, muitos dos pormenores acima descritos podem ser considerados como sendo combinados com as modalidades de realização descritas a seguir.
[199] A Fig. 17 mostra decodificador de acordo com tal modalidade de realização adicional. O decodificador compreende um extrator 600, um subdivisor 602 e um reconstrutor 604. Estes blocos são ligados em série pela ordem mencionada entre uma entrada 606 e uma saída 608 do decodificador da fig. 17. O extrator 600 é configurado para extrair um tamanho máximo e uma região de informação de subdivisão multitree a partir de um fluxo de dados recebidos pelo decodificador na entrada 606. O tamanho da região máxima pode corresponder, por exemplo, ao tamanho máximo do bloco acima mencionado que indica o tamanho das regiões simplesmente ligadas, aqui brevemente denominado "blocos", da subdivisão de predição, ou ao tamanho máximo do bloco definindo o tamanho dos blocos de árvores da subdivisão residual. A informação da subdivisão multitree, por sua vez, pode corresponder à informação da subdivisão quadtree e pode ser codificado para o fluxo de bits de uma maneira semelhante às Figs. 6a e 6b. No entanto, a subdivisão quadtree descrita acima em relação às figuras anteriores foi meramente um exemplo de um grande número de exemplos possíveis. Por exemplo, o número de nós descendentes de um nó parente pode ser qualquer número maior do que um, e o número pode variar de acordo com o nível de hierarquia. Além disso, o parcionamento de um nó da subdivisão não pode ser formado de tal modo que a área dos subblocos correspondentes aos nós descendentes de um determinado nó seja igual entre si. Em vez disso, as regras de parcionamento podem ser aplicadas e pode variar de um nível de hierarquia para outro nível de hierarquia. Além disso, uma informação sobre o nível de hierarquia máxima da subdivisão multitree ou, estando de acordo, o tamanho mínimo da sub-região resultante da subdivisão multitree não precisa ser transmitido dentro do fluxo de dados e o extrator não pode, assim, extrair a informação de tais fluxos de dados.
[200] O subdivisor 602 é configurado para dividir espacialmente um arranjo de amostras de informação, como arranjo 24, nas regiões de raiz da árvore 150 da região de tamanho máximo. O arranjo de amostras de informação pode, como acima descrito, representar um sinal de informação temporariamente variável, tal como um vídeo ou um vídeo em 3-D ou afins. Alternativamente, o arranjo de amostras da informação pode representar uma imagem fixa. O subdivisor 602 é configurado para subdividir ainda mais, de acordo com a informação da subdivisão multitree extraída por extração 600, pelo menos, um subconjunto de regiões da raiz da árvore em regiões menores simplesmente ligadas de diferentes tamanhos por multi-parcionamento recursivo do subconjunto de regiões da raiz da árvore. Como recentemente descrito em relação ao extrator 600, o parcionamento não se restringe ao quad-parcionamento.
[201] O reconstrutor 604, por sua vez, é configurado para reconstruir o arranjo de amostras da informação a partir do fluxo de dados 606, utilizando a subdivisão em regiões menores simplesmente ligadas. As regiões menores simplesmente ligadas correspondem aos blocos mostrados na Fig. 3c, por exemplo, ou para os blocos representados nas fig. 9a e 9b. A ordem de processamento não se restringe a ordem transversal de profundidade.
[202] Com o mapeamento dos elementos mostrados na fig. 2, para os elementos mostrados na fig. 17, então o elemento 102 da fig. 2 corresponde ao elemento 600 da fig. 12, o elemento 104 da fig. 2 corresponde a subdivisor 602 da fig. 12, e os elementos 104b, 106, 108, 110, 112 e 114 formam o reconstrutor 604.
[203] A vantagem de transmitir o tamanho máximo da região dentro do fluxo de dados é que o codificador é ativado para se adaptar a subdivisão de um conteúdo de imagem típica através da utilização de informações inferiores laterais uma vez que é dada a possibilidade ao codificador decidir sobre o tamanho da região máximo em uma imagem por base de imagem. Numa modalidade de realização preferida, o tamanho da região máximo é transferido dentro do fluxo de bits para cada imagem. Alternativamente, o tamanho da região máximo é transmitido dentro do fluxo de bits em uma granularidade mais grossa tal como em unidades de grupos de imagens.
[204] A Fig. 18 mostra esquematicamente o conteúdo de um fluxo de dados que o descodificador da Fig. 17 é capaz de decodificar. O fluxo de dados compreende dados 610, tais como parâmetros de codificação de informação e residual, com base em que, em combinação com a informação da subdivisão multitree, o reconstrutor é capaz de reconstruir o arranjo de amostras de informação. Além disso, é claro, o fluxo de dados compreende a informação da subdivisão multitree 612 e o tamanho da região máximo 614. A fim de decodificar, o tamanho da região máximo de preferência precede a informação da subdivisão multitree 612 e os dados restantes 610 na ordem de codificação / decodificação. A informação da subdivisão multitree 612 e os dados restantes 610 podem ser codificados como para o fluxo de dados que a informação da subdivisão multitree 612 precede os dados restantes 610, mas também como descrito acima, a informação da subdivisão multitree 612 pode ser intercalada com os dados restantes 610 em unidades de sub-regiões dentro das quais o arranjo de amostras da informação é dividido de acordo com a informação da subdivisão multitree. Além disso, as informações de subdivisão podem mudar ao longo do tempo, tais como, para cada imagem. A codificação pode ser realizada utilizando parâmetros de tempo de predção. Ou seja, apenas as diferenças para a subdivisão de informação anterior podem ser codificadas. O recém-relato também se aplica para o tamanho da região máximo. No entanto, estes podem também mudar com uma resolução do tempo comum.
[205] Tal como indicado pelas linhas tracejadas, o fluxo de dados pode compreender ainda uma informação sobre o nível máximo de hierarquia, isto é, a informação 616. As três caixas vazias mostradas em linhas pontilhadas em 618 indica que o fluxo de dados pode também incluir os elementos de dados 612-616 novamente para uma nova subdivisão multitree, o que pode ser uma subdivisão subordinada relativa a subdivisão multitree definida pelos elementos 612 -616, ou pode ser uma subdivisão de amostras da informação de forma independentemente definida.
[206] A Fig. 19 mostra, de uma forma muito abstrata, um codificador para gerar o fluxo de dados da fig. 18 decoficável pelo descodificador da fig. 17. O codificador compreende um subdivisor 650 e um codificador finais 652. O subdivisor é configurado para determinar um tamanho de região máximo e multitree informação da subdivisão e para dividir espacialmente e subdividir o arranjo de amostras de informação, assim como de acordo com o subdivisor 602, assim controlada pela informação transmitida 612 e 614 dentro do fluxo de dados. O decodificador 652 final, está configurado para codificar o arranjo de amostras para o fluxo de informação de dados usando a subdivisão em regiões menores simplesmente ligadas definidas pelo subdivisor 650, juntamente com o tamanho da região máximo e as informações da subdivisão multitree.
[207] Como mencionado anteriormente, o diagrama de blocos da fig. 19 mostra o codificador da fig. 19 como estruturado em subdivisor 650 e um codificador final 652 deve ser entendido em um sentido bastante abstrato. Para ser mais preciso, tanto o subdivisor 650 quanto o codificador final 652, tem que determinar um arranjo ideal de elementos de sintaxe que compreende as indicações relativas à subdivisão, o tamanho máximo da região 614 e a informação da subdivisão multitree 612, e os dados restantes 610 e, de modo a determinar este arranjo otimizado de elementos de sintaxe, um algoritmo iterativo pode ser utilizado de acordo com o qual os arranjos preliminares de elementos de sintaxe são utilizados pelo subdivisor 602 e o reconstrutor 604, respectivamente. Isto está ilustrado na Fig. 19 através da existência de um codificador de teste 654, o qual é mostrado com o fim de ilustrar que alguns arranjos de elementos de sintaxe descrevendo os elementos 610-614 podem ter sido preliminarmente usados para codificação dentro do codificador de teste 654 antes da inserção efetiva do fluxo de dados e da geração de fluxo de código pelo subdivisor 650 e codificador final 652 ocorrer. Embora apresentado como entidades separadas, o codificador de teste 654 e o codificador final 652, podem, em grande medida, coincidir em termos de subrotinas, partes de circuitos ou firmware lógicos, respectivamente.
[208] De acordo com outra modalidade de realização, um decodificador pode ser estruturado como mostrado na fig. 20. O decodificador da Fig. 20 compreende um subdivisor 700 e um reconstrutor 702. O subdivisor está configurado para subdividir espacialmente, utilizando uma subdivisão quadtree, um arranjo de amostras que representam um sinal de informação da informação espacialmente amostrada, tais como um arranjo de amostras de informação 24, em blocos de diferentes tamanhos por parcionamento quadtree recursivo como descrito, por exemplo, com a referência à fig. 3c e as Figs. 9a e 9b, respectivamente. O reconstrutor 702 está configurado para reconstruir o arranjo de amostras da informação a partir de um fluxo de dados usando a subdivisão em blocos ou regiões simplesmente ligadas com o tratamento dos blocos numa ordem transversal de profundidade, tais como a ordem transversal de profundidade tendo sido descrita acima e mostrada em 350 na fig. 3c, por exemplo.
[209] Tal como descrito acima, usando a primeira ordem transversal de profundidade para a reconstrução do arranjo de amostras de imagem em conexão com a subdivisão quadtree ajuda a explorar os elementos de sintaxe já codificados dentro do fluxo de dados de blocos vizinhos, a fim de aumentar a eficiência de codificação do bloco atual.
[210] Deve notar-se que o subdivisor 700 da fig. 20 não pode esperar que o fluxo de dados compreenda uma informação sobre o tamanho máximo da região 514 da subdivisão quadtree. Além disso, um nível de hierarquia máximo 616 não pode ser indicado no fluxo de dados de acordo com a modalidade da Fig. 20. De acordo com a modalidade da Fig. 20, mesmo a informação da subdivisão quadtree não precisa ser explicitamente sinalizada dentro do fluxo de dados, no sentido dos elementos de sintaxe especialmente dedicados. Em vez disso, o subdivisor 700 poderia prever a subdivisão quadtree a partir de uma análise dos dados restantes do fluxo de dados, tais como a análise de uma imagem em miniatura potencialmente contida dentro do fluxo de dados. Em alternativa, o subdivisor 700 é configurado para, na extração da informação da subdivisão quadtree do fluxo de dados, prever a informação da subdivisão para o arranjo atual de amostras de informação a partir de uma subdivisão quadtree previamente reconstruída/ decodificada de um arranjo de amostras de informação previamente descodificado no caso do arranjo de amostras de informações pertencerem a uma imagem de um vídeo ou algum outro sinal de informações temporalmente variáveis. Além disso, a predição do arranjo de amostra nos blocos de árvores, como era o caso com as modalidades de realização acima descritas da fig. 1 a 16, não necessita ser realizada. Em vez disso, a subdivisão quadtree pode ser realizada diretamente sobre o arranjo de amostra, tal como ele é.
[211] Quanto à concordância dos elementos representados na fig. 20 e os elementos mostrados na Fig. 2, o subdivisor 700 corresponde ao subdivisor 104a da fig. 2, enquanto que o reconstrutor 702 corresponde aos elementos 104b, 106, 108, 110, 112 e 114. Semelhante à descrição da fig. 17, a fusão 104b pode ser deixada de fora. Além disso, o reconstrutor 702 não está restrito a codificação híbrida. O mesmo se aplica para o reconstrutor 604 da fig. 12. Como mostrado pelas linhas tracejadas, o decodificador da Fig.15 pode compreender um extrator que extrai, por exemplo, a informação da subdivisão quadtree com base na qual o subdivisor subdivide espacialmente o arranjo de amostras de informação, com o presente extrator correspondente ao extrator 102 da fig. 2. Como mostrado com uma seta pontilhada, o subdivisor 700 pode até mesmo prever uma subdivisão do atual arranjo de amostras de informação a partir de um arranjo reconstruído da saída de amostras de informações pelo reconstrutor 702.
[212] Um codificador capaz de fornecer um fluxo de dados que é decodificável por um descodificador da fig. 25 é estruturado como mostrado na fig. 19, ou seja, em um subdivisor e um codificador final com o subdivisor sendo configurado para determinar a subdivisão quadtree e um arranjo espacialmente subdividido de amostras de informação adequadamente e do codificador final sendo configurado para codificar o arranjo de amostras para o fluxo de informação de dados usando a subdivisão tratando o bloco na ordem transversal de profundidade.
[213] A Fig. 21 mostra um decodificador para descodificar uma sinalização codificada de uma estrutura espacial multitree prescrevendo uma subdivisão multitree de um bloco de árvore tal como a sinalização ilustrada nas Figs. 6a e 6b em relação a uma subdivisão quadtree. Como observado acima, a subdivisão multitree não se restringe a uma subdivisão quadtree. Além disso, o número de nós descendentes por nó parente pode variar dependendo do nível de hierarquia do nó parente, de uma maneira conhecida para a codificação e decodificação lateral, ou de uma maneira indicada para o decodificador como informação lateral. A sinalização codificada compreende uma sequência de sinalizadores associados com os nós da estrutura multitree numa ordem traveral em profundidade, tais como a ordem 350 na fig. 3c. Cada sinalizador especifica se uma área do bloco de árvore correspondente para o nó com o qual o sinalizador respectivo está associado é multi-parcionado, tais como os sinalizadores de sequências dos sinalizadores das Figs. 6a e 6b. O decodificador na fig. 21 é então configurado para sequencialmente decodificar por entropia os sinalizadores usando contextos de estimativa de probabilidade que são os mesmos para os sinalizadores associados com os nós da estrutura multitree situada no mesmo nível de hierarquia da estrutura multitree, mas diferente para os nós da estrutura multitree que se encontra em diferentes níveis de hierarquia da estrutura multitree. A primeira ordem traversal de profundidade ajuda na exploração das estatísticas de amostras vizinhas do subblocos vizinhos da estrutura multitree, enquanto o uso de contexto diferente na probabilidade de estimativa para sinalizadores associados com os nós de nível de hierarquia diferentes permite uma solução de compromisso entre a gestão do contexto de sobrecarga por um lado e a eficiência de codificação, por outro lado.
[214] Em alternativa, a fig. 21 pode generalizar a descrição acima mencionada com relação às Figs. 1-16 de outra maneira. O decodificador da Fig. 16 poderia ser configurado para decodificar um sinal codificado de uma estrutura multitree, que não é necessariamente uma prescrição da subdivisão multitree espacial de um bloco de árvore, mas que compreende uma sequência de sinalizadores associados com os nós da estrutura multitree em uma ordem transversal de profundidade como foi descrito acima. Por exemplo, a estrutura multitree pode ser utilizada na descodificação lateral para outros fins, tais como em outros aplicativos de codificação, tais como a codificação de áudio ou outros aplicacativos. Além disso, de acordo com esta alternativa da Fig. 21, a sinalização codificada compreende também uma informação sobre o nível de hierarquia máxima da estrutura multitree e a sequência de sinalizadores estão associados apenas com os nós da estrutura multitree numa ordem em profundidade não estando associada com os nós que se encontram no presente nível de hierarquia máxima. Por essa medida, o número de sinalizadores é reduzido significativamente.
[215] Com relação às alternativas descritas acima com referência à fig. 21, deve ser notado que um codificador fornece a respectiva sinalização codificada de uma estrutura multitree decodificada por um decodificador da fig. 21 podendo também ser usado independentemente do cenário de aplicação descrito acima.
[216] Embora alguns aspectos tenham sido descritos no contexto de um aparelho, é evidente que estes aspectos representam também uma descrição do método correspondente, onde um bloco ou um dispositivo corresponde a uma etapa do método, ou uma característica do método de um passo. De forma análoga, os aspectos descritos no contexto de uma etapa do método também representam uma descrição de um bloco correspondente ou item ou característica de um aparelho correspondente. Alguns ou todos os passos do processo podem ser executados por (ou com) um aparelho de hardware, como, por exemplo, um microprocessador, um computador programável ou um circuito eletrônico. Em algumas modalidades, alguns de um ou mais passos mais importantes do método pode ser executado por esse tal aparelho.
[217] Os sinais codificados / comprimidos inventivos podem ser armazenados num meio de armazenamento digital ou podem ser transmitidos em um meio de transmissão, tal como um meio de transmissão sem fio ou de um meio de transmissão com fio, tal como a Internet.
[218] Dependendo dos requisitos de implementação, determinadas modalidades de realização da invenção podem ser implementadas em hardware ou em software. A implementação pode ser realizada utilizando um meio de armazenamento digital, por exemplo, um disquete, um DVD, um Blu-Ray, um CD, um ROM, um PROM, um EPROM, um EEPROM ou uma memória flash, apresentando sinais de controle de leitura eletrônica armazenados nela, que cooperam (ou são capazes de cooperar) com um sistema de computador programável de modo que o respectivo método é realizado. Portanto, o meio de armazenamento digital pode ser de leitura por computador.
[219] Algumas modalidades de realização de acordo com a invenção compreendem um suporte de dados com os sinais de controle legíveis eletronicamente, os quais são capazes de cooperar com um sistema de computador programável, de modo que um dos métodos aqui descritos é realizado.
[220] Geralmente, as modalidades de realização da presente invenção podem ser implementadas como um produto de programa de computador com um código de programa, o código de programa sendo operativo para a realização de um dos métodos em que o produto de programa de computador é executado em um computador. O código de programa, por exemplo, pode ser armazenado em um portador de leitura ótica.
[221] Outras modalidades incluem o programa de computador para a execução de um dos métodos descritos no presente documento, armazenado em um portador de leitura ótica.
[222] Em outras palavras, uma modalidade de realização do método da invenção é, portanto, um programa de computador com um código de programa para realizar um dos métodos aqui descritos, quando o programa de computador é executado em um computador.
[223] Outra modalidade de realização dos métodos da invenção é, portanto, um suporte de dados (ou um meio de armazenamento digital, ou um meio legível por computador), que inclui nele gravado, o programa de computador para a realização de um dos métodos aqui descritos.
[224] Outra modalidade de realização do método da invenção é, portanto, um fluxo de dados ou uma sequência de sinais que representam o programa de computador para a realização de um dos métodos aqui descritos. O fluxo de dados ou a sequência de sinais podem, por exemplo, ser configurado para ser transferidos através de uma ligação de comunicação de dados, por exemplo, através da Internet.
[225] Uma modalidade de realização compreende, além disso, um meio de processamento, por exemplo, um computador ou um dispositivo lógico programável, configurado para ou adaptado para executar um dos métodos aqui descritos.
[226] Outra modalidade de realização compreende um computador tendo nele instalado um programa de computador para a execução de um dos métodos aqui descritos.
[227] Em algumas modalidades de realização, um dispositivo lógico programável (por exemplo, um arranjo de porta de campo programável - field programmable gate array) pode ser usado para executar uma parte ou todas as funcionalidades dos métodos aqui descritos. Em algumas modalidades de realização, um arranjo de porta de campo programável pode cooperar com um microprocessador para executar um dos métodos aqui descritos. Geralmente, os métodos são de preferência realizados por qualquer dispositivo de hardware.
[228] As modalidades de realização acima descritas são meramente ilustrativas dos princípios da presente invenção. Entende-se que modificações e variações dos arranjos e detalhes aqui descritos serão evidentes para outros técnicos no assunto. É intenção, portanto, ser limitado apenas pelo âmbito das reivindicações da patente anexas e não pelos pormenores específicos apresentados a título de descrição e explicação das modalidades de realização da presente invenção.
Claims (21)
1. Decodificador para decodificação de uma sinalização codificada de uma estrutura multiárvores que prescreve uma subdivisão multiárvores espacial de um bloco de raiz da árvore, de acordo com a qual, o bloco de raiz da árvore é recursivamente multiparticionado em blocos folhas, a sinalização codificada compreendendo uma sequência de indicadores associados com os nós da estrutura multiárvores em uma ordem de primeira profundidade, e cada indicador especificando se uma área do bloco de raiz da árvore correspondente ao nó com o qual o respectivo indicador é associado é multiparticionada, o decodificador caracterizado por ser configurado para decodificar em entropia sequencialmente os indicadores usando contextos de estimativa de probabilidade que são os mesmos para os indicadores associados com os nós da estrutura multiárvores que ficam no mesmo nível de hierarquia da estrutura multiárvores, mas diferentes para os nós da estrutura multiárvores que ficam em diferentes níveis de hierarquia da estrutura multiárvores,em que o decodificador é configurado para decodificar as sinalizações das estruturas multiárvores que prescrevem uma subdivisão multiárvores espacial de uma pluralidade de blocos de raiz da árvore que, por sua vez, são blocos folhas de uma outra subdivisão multiárvores de uma maior parte bidimensional, em uma ordem de travessia da primeira profundidade definida entre a pluralidade de blocos de raiz da árvore, e em que a codificação de cada uma das sinalizações das estruturas multiárvores compreende uma sequência de indicadores associados com os nós da respectiva estrutura multiárvores na ordem de travessia da primeira profundidade, e cada indicador especificando se uma área dos respectivos blocos de raiz da árvore correspondente ao nó com o qual o respectivo indicador é associado é multiparticionada, o decodificador sendo configurado para decodificar em entropia sequencialmente os indicadores usando contextos de estimativa de probabilidade que são os mesmos para os indicadores associados com áreas do mesmo tamanho.
2. Decodificador, de acordo com a reivindicação 1, caracterizado por a subdivisão multiárvores espacial ser uma subdivisão de árvore quádrupla, e, de acordo com a ordem de travessia da primeira profundidade, um escaneamento em zigue-zague é definido entre os nós do mesmo nível de hierarquia da subdivisão da árvore quádrupla com um nó pai comum, em que o decodificador é configurado de maneira tal que o contexto de estimativa de probabilidade para um indicador pré-determinado também dependa dos indicadores que precedem o indicador pré-determinado de acordo com a ordem de travessia da primeira profundidade e correspondente às áreas do bloco de raiz da árvore com um pré-determinado relacionamento de localização relativo a uma área com a qual o indicador pré-determinado corresponde.
3. Decodificador, de acordo com a reivindicação 2, caracterizado por o decodificador ser configurado de maneira tal que um contexto de estimativa de probabilidade usado para o indicador pré-determinado dependa de indicadores que precedem o indicador pré-determinado de acordo com a ordem de travessia da primeira profundidade e correspondente às áreas do bloco de raiz da árvore que ficam ao topo ou à esquerda da área com a qual o indicador pré-determinado corresponde.
4. Decodificador, de acordo com as reivindicações 2 ou 3, caracterizado por o decodificador ser configurado de maneira tal que o contexto de estimativa de probabilidade usado para o indicador pré-determinado dependa meramente dos indicadores que ficam no mesmo nível de hierarquia do nó com o qual o indicador pré-determinado é associado.
5. Decodificador, de acordo com as reivindicações 2 ou 3, caracterizado por o decodificador também ser configurado para extrair uma indicação de um nível de hierarquia mais alto do fluxo contínuo de dados, até o qual o bloco de árvore é recursivamente multiparticionado, a sequência de indicadores meramente compreendendo indicadores para os níveis de hierarquia não iguais ao nível de hierarquia mais alto.
6. Decodificador, de acordo com a reivindicação 1, caracterizado por o decodificador ser configurado para decodificar as sinalizações das estruturas multiárvores que prescrevem uma subdivisão multiárvores espacial de uma pluralidade de blocos de raiz da árvore que, em conjunto, formam um divisão em grade contínua e regular de uma maior parte bidimensional, em uma ordem de escaneamento em zigue-zague definida entre a pluralidade de blocos de raiz da árvore.
7. Decodificador, de acordo com a reivindicação 1, caracterizado por o bloco de raiz da árvore ser compreendido por uma figura de um vídeo que é codificado no fluxo contínuo de dados de uma maneira acompanhada com a informação de profundidade.
8. Decodificador, de acordo com a reivindicação 1, caracterizado por o bloco de raiz da árvore ser compreendido por uma figura codificada no fluxo contínuo de dados de uma maneira que compreende um arranjo de amostras de luma juntamente com dois arranjos de amostras de croma, em que um fator de escalonamento para uma resolução espacial dos arranjos de amostras de croma em relação ao arranjo de amostras de luma na direção horizontal difere de um fator de escalonamento para uma resolução espacial na direção vertical.
9. Decodificador, de acordo com a reivindicação 1, caracterizado por o bloco de raiz da árvore ser compreendido por uma figura codificada no fluxo contínuo de dados em diferentes planos de cor correspondentes a diferentes componentes de cor, e o decodificador é configurado para decodificar os diferentes planos de cor da figura independentemente.
10. Método para decodificação de uma sinalização codificada de uma estrutura multiárvores que prescreve uma subdivisão multiárvores espacial de um bloco de raiz da árvore de acordo com a qual o bloco de raiz da árvore é recursivamente multiparticionado em blocos folhas, a sinalização codificada compreendendo uma sequência de indicadores associados com os nós da estrutura multiárvores em uma ordem de primeira profundidade, e cada indicador especificando se uma área do bloco de raiz da árvore correspondente ao nó com o qual o respectivo indicador é associado é multiparticionada, caracterizado por o método compreender decodificar em entropia sequencialmente os indicadores usando contextos de estimativa de probabilidade que são os mesmos para os indicadores associados com os nós da estrutura multiárvores que ficam no mesmo nível de hierarquia da estrutura multiárvores, mas diferentes para os nós da estrutura multiárvores que ficam em diferentes níveis de hierarquia da estrutura multiárvores,em que o método compreende decodificar as sinalizações das estruturas multiárvores que prescrevem uma subdivisão multiárvores espacial de uma pluralidade de blocos de raiz da árvore que, por sua vez, são blocos folhas de uma outra subdivisão multiárvores de uma maior parte bidimensional, em uma ordem de travessia da primeira profundidade definida entre a pluralidade de blocos de raiz da árvore, e em que a codificação de cada uma das sinalizações das estruturas multiárvores compreende uma sequência de indicadores associados com os nós da respectiva estrutura multiárvores na ordem de travessia da primeira profundidade, e cada indicador especificando se uma área dos respectivos blocos de raiz da árvore correspondente ao nó com o qual o respectivo indicador é associado é multiparticionada, em que o método compreende decodificar em entropia sequencialmente os indicadores usando contextos de estimativa de probabilidade que são os mesmos para os indicadores associados com áreas do mesmo tamanho.
11. Método, de acordo com a reivindicação 10, caracterizado por o bloco de raiz da árvore ser compreendido por uma figura de um vídeo que é codificado no fluxo contínuo de dados de uma maneira acompanhada com a informação de profundidade.
12. Método, de acordo com a reivindicação 10, caracterizado por o bloco de raiz da árvore ser compreendido por uma figura codificada no fluxo contínuo de dados de uma maneira que compreende um arranjo de amostras de luma juntamente com dois arranjos de amostras de croma, em que um fator de escalonamento para uma resolução espacial dos arranjos de amostras de croma em relação ao arranjo de amostras de luma na direção horizontal difere de um fator de escalonamento para uma resolução espacial na direção vertical.
13. Método, de acordo com a reivindicação 10, caracterizado por o bloco de raiz da árvore ser compreendido por uma figura codificada no fluxo contínuo de dados em diferentes planos de cor correspondentes a diferentes componentes de cor, e o método compreende decodificar os diferentes planos de cor da figura independentemente.
14. Codificador para gerar uma sinalização codificada de uma estrutura multiárvores que prescreve uma subdivisão multiárvores espacial de um bloco de raiz da árvore da figura, de acordo com a qual, o bloco de raiz da árvore é recursivamente multiparticionado em blocos folhas, a sinalização codificada compreendendo uma sequência de indicadores associados com os nós da estrutura multiárvores em uma ordem de primeira profundidade, e cada indicador especificando se uma área do bloco de raiz da árvore correspondente ao nó com o qual o respectivo indicador é associado é multiparticionada, o codificador caracterizado por ser configurado para codificar em entropia sequencialmente os indicadores usando contextos de estimativa de probabilidade que são os mesmos para os indicadores associados com os nós da estrutura multiárvores que ficam no mesmo nível de hierarquia da estrutura multiárvores, mas diferentes para os nós da estrutura multiárvores que ficam em diferentes níveis de hierarquia da estrutura multiárvores, em que o codificador é configurado para codificar sinalizações das estruturas multiárvores que prescrevem uma subdivisão multiárvores espacial de uma pluralidade de blocos de raiz da árvore que, por sua vez, são blocos folhas de uma outra subdivisão multiárvores de uma maior parte bidimensional, em uma ordem de travessia da primeira profundidade definida entre a pluralidade de blocos de raiz da árvore, e em que a codificação de cada uma das sinalizações das estruturas multiárvores compreende uma sequência de indicadores associados com os nós da respectiva estrutura multiárvores na ordem de travessia da primeira profundidade, e cada indicador especificando se uma área dos respectivos blocos de raiz da árvore correspondente ao nó com o qual o respectivo indicador é associado é multiparticionada, o codificador sendo configurado para codificar em entropia sequencialmente os indicadores usando contextos de estimativa de probabilidade que são os mesmos para os indicadores associados com áreas do mesmo tamanho.
15. Codificador, de acordo com a reivindicação 14, caracterizado por o bloco de raiz da árvore ser compreendido por uma figura de um vídeo que é codificado no fluxo contínuo de dados de uma maneira acompanhada com a informação de profundidade.
16. Codificador, de acordo com a reivindicação 14, caracterizado por o bloco de raiz da árvore ser compreendido por uma figura codificada no fluxo contínuo de dados de uma maneira que compreende um arranjo de amostras de luma juntamente com dois arranjos de amostras de croma, em que um fator de escalonamento para uma resolução espacial dos arranjos de amostras de croma em relação ao arranjo de amostras de luma na direção horizontal difere de um fator de escalonamento para uma resolução espacial na direção vertical.
17. Codificador, de acordo com a reivindicação 14, caracterizado por o bloco de raiz da árvore ser compreendido por uma figura codificada no fluxo contínuo de dados em diferentes planos de cor correspondentes a diferentes componentes de cor, e o codificador é configurado para codificar os diferentes planos de cor da figura independentemente.
18. Método para gerar uma sinalização codificada de uma estrutura multiárvores que prescreve uma subdivisão multiárvores espacial de um bloco de raiz da árvore de acordo com a qual o bloco de raiz da árvore é recursivamente multiparticionado em blocos folhas, a sinalização codificada compreendendo uma sequência de indicadores associados com os nós da estrutura multiárvores em uma ordem de primeira profundidade, e cada indicador especificando se uma área do bloco de raiz da árvore correspondente ao nó com o qual o respectivo indicador é associado é multiparticionada, caracterizado por o método compreender codificar em entropia sequencialmente os indicadores usando contextos de estimativa de probabilidade que são os mesmos para os indicadores associados com os nós da estrutura multiárvores que ficam no mesmo nível de hierarquia da estrutura multiárvores, mas diferentes para os nós da estrutura multiárvores que ficam em diferentes níveis de hierarquia da estrutura multiárvores, em que o método compreende codificar as sinalizações das estruturas multiárvores que prescrevem uma subdivisão multiárvores espacial de uma pluralidade de blocos de raiz da árvore que, por sua vez, são blocos folhas de uma outra subdivisão multiárvores de uma maior parte bidimensional, em uma ordem de travessia da primeira profundidade definida entre a pluralidade de blocos de raiz da árvore, e em que a codificação de cada uma das sinalizações das estruturas multiárvores compreende uma sequência de indicadores associados com os nós da respectiva estrutura multiárvores na ordem de travessia da primeira profundidade, e cada indicador especificando se uma área dos respectivos blocos de raiz da árvore correspondente ao nó com o qual o respectivo indicador é associado é multiparticionada, o método compreende codificar em entropia sequencialmente os indicadores usando contextos de estimativa de probabilidade que são os mesmos para os indicadores associados com áreas do mesmo tamanho.
19. Método, de acordo com a reivindicação 18, caracterizado por o bloco de raiz da árvore ser compreendido por uma figura de um vídeo que é codificado no fluxo contínuo de dados de uma maneira acompanhada com a informação de profundidade.
20. Método, de acordo com a reivindicação 18, caracterizado por o bloco de raiz da árvore ser compreendido por uma figura codificada no fluxo contínuo de dados de uma maneira que compreende um arranjo de amostras de luma juntamente com dois arranjos de amostras de croma, em que um fator de escalonamento para uma resolução espacial dos arranjos de amostras de croma em relação ao arranjo de amostras de luma na direção horizontal difere de um fator de escalonamento para uma resolução espacial na direção vertical.
21. Método, de acordo com a reivindicação 18, caracterizado por o bloco de raiz da árvore ser compreendido por uma figura codificada no fluxo contínuo de dados em diferentes planos de cor correspondentes a diferentes componentes de cor, e o método compreendendo codificar os diferentes planos de cor da figura independentemente.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EPPCT/EP2010/054843 | 2010-04-13 | ||
EP10159819.1 | 2010-04-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
BR122020007663B1 true BR122020007663B1 (pt) | 2023-08-15 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BR122020007669B1 (pt) | Codificação de uma amostragem espacial de um sinal de informação bidimensional usando subdivisão | |
BR112012026391B1 (pt) | Herança em amostra de arranjo em subdivisão multitree | |
BR112012026393B1 (pt) | Fusão de região de amostra | |
BR122020007922B1 (pt) | Predição interplano | |
BR122020007663B1 (pt) | Codificação de uma amostragem espacial de um sinal de informação bidimensional usando subdivisão |