BR112012009533A2 - método para decodificar um fluxo de bit. - Google Patents
método para decodificar um fluxo de bit. Download PDFInfo
- Publication number
- BR112012009533A2 BR112012009533A2 BR112012009533-1A BR112012009533A BR112012009533A2 BR 112012009533 A2 BR112012009533 A2 BR 112012009533A2 BR 112012009533 A BR112012009533 A BR 112012009533A BR 112012009533 A2 BR112012009533 A2 BR 112012009533A2
- Authority
- BR
- Brazil
- Prior art keywords
- transform
- coefficients
- path
- block
- fact
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000005192 partition Methods 0.000 claims description 28
- 238000013139 quantization Methods 0.000 claims description 5
- 238000000638 solvent extraction Methods 0.000 claims description 5
- 101100118654 Caenorhabditis elegans elo-1 gene Proteins 0.000 claims 1
- 241000407429 Maja Species 0.000 claims 1
- 241000287531 Psittacidae Species 0.000 claims 1
- 102220470058 Ribonucleoside-diphosphate reductase subunit M2_S20E_mutation Human genes 0.000 claims 1
- 229910052754 neon Inorganic materials 0.000 claims 1
- GKAOGPIIYCISHV-UHFFFAOYSA-N neon atom Chemical compound [Ne] GKAOGPIIYCISHV-UHFFFAOYSA-N 0.000 claims 1
- 210000002966 serum Anatomy 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 10
- 230000000875 corresponding effect Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000015654 memory Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- YBJHBAHKTGYVGT-ZKWXMUAHSA-N (+)-Biotin Chemical compound N1C(=O)N[C@@H]2[C@H](CCCCC(=O)O)SC[C@@H]21 YBJHBAHKTGYVGT-ZKWXMUAHSA-N 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- FEPMHVLSLDOMQC-UHFFFAOYSA-N virginiamycin-S1 Natural products CC1OC(=O)C(C=2C=CC=CC=2)NC(=O)C2CC(=O)CCN2C(=O)C(CC=2C=CC=CC=2)N(C)C(=O)C2CCCN2C(=O)C(CC)NC(=O)C1NC(=O)C1=NC=CC=C1O FEPMHVLSLDOMQC-UHFFFAOYSA-N 0.000 description 1
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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/196—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
- H04N19/463—Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
MÉTODO PARA DECODIFICAR UM FLUXO DE BIT. É descrito um fluxo de bit que inclui uma sequência de quadros. Cada quadro é particionado em blocos codificados. Para cada bloco, um conjunto de caminhos é determinado em um ângulo da transformada determinado a partir de um índice de transformadda no fluxo de bit. Coeficientes de transformada são obtidos a partir do fluxo de bit. Os coeficientes de transformada incluem um coeficiente de CC para cada caminho. Uma transformada inversa é aplicada nos coeficientes de transformada para produzir um vídeo decodificado.
Description
«2 «puaqTEEECOOQqí|COCGELOQCCECEESSESSEGCEESSSSSTELFEE..S.SSSSEEEMEMMMMLMM 1 “MÉTODO PARA DECODIFICAR UM FLUXO DE BIT”
CAMPO DA INVENÇÃO A invenção diz respeito, no geral, a codecs de vídeo e, mais particularmente, a transformadas direcionais usadas durante a codificação e a E 5 — decodificação de blocos de pixéis em quadros de vídeo e imagens. - FUNDAMENTOS DA INVENÇÃO Codecs Um codec de vídeo digital comprime e descomprime um vídeo. Codecs podem ser encontrados em equipamento de difusão, televisões, — computadores pessoais, gravadores e reprodutores de vídeo, satélites, bem como dispositivos móveis e em linha. Codecs particionam cada quadro do vídeo em blocos de pixéis e processam os blocos um de cada vez.
Durante codificação, redundâncias espacial e temporal são eliminadas para reduzir a taxa de dados. A invenção preocupa-se, particularmente, com as transformadas que são usadas durante a codificação e a decodificação de vídeos. A transformada mais comum é uma transformada discreta de cosseno (DCT), da forma especificada nos padrões MPEG e H.264/AVC. A DCT converte intensidades de pixel no domínio espacial em coeficientes de transformada no domínio de frequência. Então, os coeficientes são quantizados e codificados por entropia para produzir um fluxo de bit comprimido. O fluxo de bit pode ser armazenado em uma mídia (DVD) ou comunicado diretamente ao decodificador. Durante a decodificação, as etapas são invertidas. Depois da decodificação por entropia e da quantização inversa, uma transformada inversa é aplicada para recuperar o vídeo original.
No geral, o número de decodificadores, por exemplo, produtos ao consumidor em todo o mundo, excede muito o número de codificadores. Portanto, para habilitar a interoperabilidade, somente o fluxo de bit e o processo de decodificação são padronizados. Tipicamente, o processo de codificação não é especificado em um padrão.
Transformadas A DCT inclui uma DCT 1D horizontal aplicada em cada linha de pixéis no bloco e uma DCT 1D vertical aplicada em cada coluna. Para blocos com recursos predominantemente horizontais ou verticais, a DCT 2D é ' 5 eficiente. Entretanto, a DCT 2D não transforma eficientemente blocos que - contêm recursos que não são horizontais ou verticais, isto é, recursos direcionais, em que direcional diz respeito a orientações diferentes de horizontal e vertical.
No geral, há dois métodos que implementam transformadas direcionais. O primeiro método aplica as DCTs 2D ao longo de caminhos pré- definidos no bloco. O segundo método aplica um filtro direcional, seguido pela DCT 2D. Tipicamente, um filtro de ventilador particiona o bloco em um conjunto de sub-bandas direcionais. Transformadas são subsequentemente aplicadas em cada sub-banda. Transformadas direcionais, tais como contourlets, são implementadas desta maneira. Contourlets transformam eficientemente quadros contêm regiões uniformes separadas por limites curvos.
Transformadas direcionais foram usadas para complementar a DCT 2D ou tipo de transformada DCT existentes para métodos de codificação
20. de vídeo existentes, tal como H.264/AVC. Durante o processo de codificação, o codificador H.264/AVC seleciona a partir de um conjunto de transformadas, tal como a transformada 2D convencional, e de um conjunto de transformadas direcionais. Então, a única transformada que produz o melhor desempenho, em um sentido de taxa / distorção, é selecionada para a codificação e a — decodificação.
Depois da transformada, melhorias poder ser feitas na codificação por entropia dos dados correspondentes pela alavancagem da estatística dos dados direcionais. No H.264/AVC, um codificador aritmético binário adaptável ao contexto (CABAC) ou um codificador de comprimento
—————-———C q aq—.——.occss-xasCcsssssssss]ssss= 3 variável adaptável ao contexto (CAVLC) são usados para codificar por entropia diferentes tipos de dados. Os símbolos inseridos são mapeados em palavras-códigos binárias e comprimidos por um codificador aritmético. Contextos são usados para adaptar a estatística usada pelo codificador — aritmético. Cada contexto armazena o símbolo mais provável (tanto O quanto - 1), e a probabilidade correspondente.
O padrão H.264/AVC é desenhado para usar a DCT 2D. Métodos existentes podem usar transformadas direcionais para aumentar o desempenho dos codificadores H.264/AVC. Entretanto, estes métodos ainda geram e codificam a decisões e dados relacionados a direção usando a estrutura H.264/AVC convencional. Assim, há uma necessidade de representar eficientemente informação direcional, bem como uma necessidade de aumentar as eficiências de codificação.
O propósito da transformada é converter um bloco de valores de pixel variáveis em um bloco de coeficientes para o qual a maior parte dos coeficientes é zero. No caso de DCT, um conjunto de arranjo dos pixéis é convertido em um conjunto de coeficientes da DCT que representa dados de baixa frequência até alta frequência no bloco. A frequência mais baixa é o coeficiente de CC, que diz respeito ao valor médio de todos os pixéis convertidos pelas transformadas. O próximo coeficiente representa a magnitude da onda cosseno de frequência mais baixa que está contida no sinal. Coeficientes subsequentes correspondem a frequências crescentes. Se os dados forem bem adequados para a DCT, então, muitos dos coeficientes de frequência são zero, e não são necessários pelo decodificador para reconstruir —ovídeo.
Um problema com transformadas direcionais existentes, que usam um conjunto de transformadas 1D paralelas, é que o comprimento de cada transformada 1D pode variar, dependendo da posição da transformada no bloco. Por exemplo, para transformar um bloco 8 x 8 usando uma
—:“ Cs .0(.Q>...s!.==—— 4 transformada direcional orientada em 45 graus, a transformada 1D ao longo da diagonal principal do bloco tem oito elementos, a 1D adjacente tem sete elementos e assim por diante para transformadas de um ou dois elementos, que são ineficientes. Uma transformada de um elemento é, na melhor das É 5 — hipóteses, um escalonamento de um valor de pixel, que faz pouco para - melhorar a eficiência de codificação. Assim, há uma necessidade de um método para transformar blocos usando estas transformadas de uma maneira que não sofre das ineficiências exibidas para pequenos caminhos de transformada, ainda mantendo as propriedades direcionais da transformada original.
Também há uma necessidade de um método para aplicar um segundo conjunto de transformadas na saída do primeiro conjunto de transformadas, de uma maneira que aumente adicionalmente a eficiência de codificação sem degradar o desempenho, da maneira que uma DCT 2D faria, quando os dados estiverem incorretos na segunda direção ortogonal.
Além do mais, há uma necessidade de versões particionadas desta transformada que são adequadas para blocos residuais de previsão de codificação que são comumente encontrados em codificadores preditivos, tal como H.264/AVC.
— SUMÁRIO DA INVENÇÃO Um fluxo de bit inclui uma sequência de quadros. Cada quadro é particionado em blocos codificados. Para cada bloco, um conjunto de caminhos é determinado em um ângulo da transformada determinado a partir de um índice de transformada no fluxo de bit. Coeficientes de transformada — são obtidos a partir do fluxo de bit. Os coeficientes de transformada incluem um coeficiente de CC para cada caminho. Uma transformada inversa é aplicada nos coeficientes de transformada para produzir um vídeo decodificado.
———————————s2s s
A figura 1A é um diagrama de blocos de um sistema de vídeo de acordo com modalidades da invenção;
a figura 1B é um diagrama de blocos de um decodificador de acordo com modalidades da invenção;
Í 5 a figura IC é um diagrama de blocos de um codificador de - acordo com modalidades da invenção;
a figura 2 é um diagrama de blocos de um módulo de processamento direcional de sub-bloco e partição de acordo com modalidades da invenção;
a figura 3 é um diagrama de blocos de um módulo de decisão de tipo e direção de transformada de acordo com modalidades da invenção;
a figura 4 é um diagrama de blocos do módulo de inferência de direção de acordo com modalidades da invenção;
a figura 5 é um diagrama de blocos de um módulo de previsão
— direcional de acordo com modalidades da invenção;
a figura 6 é um diagrama de blocos de um módulo de codificação do índice direcional de acordo com modalidades da invenção;
a figura 7 é uma representação esquemática de uma primeira modalidade do módulo codificador de índice direcional de acordo com modalidades da invenção;
a figura 8 é uma representação esquemática de uma segunda modalidade do módulo codificador de índice direcional de acordo com modalidades da invenção;
as figuras 9-10 são fluxogramas para um módulo de geração
— de contexto de acordo com modalidades da invenção;
as figuras 11A-B são representações esquemáticas de caminhos para transformadas direcionais primária e secundária de acordo com modalidades da invenção;
as figuras 12A-F são diagramas de blocos para transformadas
I— —— .--——>c[ ——..-"———— 6 direcionais primárias para blocos de pixéis 8 x 8 de acordo com modalidades da invenção; e a figura 13 é um diagrama de blocos de um conjunto de transformadas direcionais particionadas de acordo com modalidades da i 5 invenção. - DESCRIÇÃO DAS MODALIDADES Codec A figura 1A mostra um sistema de vídeo de acordo com modalidades desta invenção.
O sistema inclui um codificador 10 e um decodificador 20, em combinação um codec 30. O codec pode ser implementado em processadores que incluem memórias e interfaces de entrada / saída conhecidos na tecnologia.
O codificador comprime um vídeo de entrada 1 em um fluxo de bit 15. O codificador aplica transformada, quantização e codificação por entropia no vídeo de entrada da forma descrita com detalhes a seguir.
Para garantir que o vídeo de saída reflita precisamente o vídeo de entrada, o decodificador 20 realiza as etapas inversas em uma ordem inversa.
Além do mais, tipicamente, o codificador inclui o equivalente do decodificador para prover realimentação para o processo de codificação.
Em virtude de todas as variáveis do codificador estarem prontamente disponíveis no codificador, o decodificador no codificador é relativamente simples.
A invenção preocupa- se particularmente com as transformadas direcionais inversas 25. Da forma descrita a seguir, e mostrada na figura 11B, as transformadas podem incluir transformadas primárias e secundárias.
Durante a codificação, a transformada primária opera nas intensidades de pixel para determinar coeficientes de transformada, por exemplo, coeficientes CC e CA.
A transformada secundária opera somente nos coeficientes de CC 1160 para produzir coeficientes de transformada secundários 1170 para reduzir adicionalmente redundâncias de dados.
As transformadas inversas incluem
—— aa—— —— ec——ww . .pp—— ue 7 uma transformada secundária inversa 26 para reconstruir os coeficientes de CC, e as transformadas primárias inversas 27 recuperam as intensidades de pixel para o vídeo decodificado. Para garantir a interoperabilidade entre o codificador e o — decodificador, tipicamente, padrões de codificação de vídeo especificam - somente o fluxo de bit e o processo de decodificação. Entretanto, entende-se que uma descrição do processo de codificação, da forma detalhada a seguir, é suficiente para que versados na técnica deduzam exatamente o processo de , decodificação inverso. Decodificador A figura 1B mostra partes relevantes deste decodificador 20. O decodificador recebe o codifica o fluxo de bit 15 e a informação 160. O fluxo de bit é apresentado a um decodificador por entropia CABAC 191, que produz coeficientes de transformada quantizados 192 de acordo com a informação. Para o primeiro bloco, a informação pode ser um contexto inicial. Subsequentemente, a informação diz respeito a blocos previamente processados (decodificados).
Os coeficientes são inversamente quantizados 24 e inversamente transformados 25, de forma que os blocos decodificados formem o vídeo de saída ou decodificado 2. A transformada pode ser uma transformada inversa discreta de cosseno (IDCT). As transformadas podem incluir um transformada inversa discreta de cosseno 2D e um conjunto de transformadas direcionais inversas. Transformadas secundárias inversas também podem ser aplicadas da forma descrita a seguir com mais detalhes.
A informação 160 é apresentada ao módulo de geração de contexto (CGM) do decodificador, que encaminha contextos selecionados 921-922 ao decodificador CABAC. Indicadores de transformada previstos (PTD 501 dos blocos previamente decodificados 160 são apresentados a um módulo de decodificação do índice direcional (DIDM) 601, que gera um
= 8 indicador de transformada 602 para a transformada inversa 25. AÀ transformada inversa pode usar qualquer uma das transformadas inversas, por exemplo, DCTs inversas horizontal 1D e vertical 1D (IDCT 2D) 41, um conjunto de transformadas direcionais inversas 42 e quaisquer outras á 5 — transformadas inversas conhecidas 43.
- Percebe-se que padrões de codificação de vídeo atuais usam somente uma única transformada pré-especificada, de forma que um índice para diferentes transformadas não seja necessário. Também, padrões atuais não consideram informação complementar relacionada a blocos previamente —decodificados durante a transformada inversa. Codificador A figura 1C mostra os detalhes relevantes do codificador 10. O codificador usa transformadas direcionais de acordo com modalidades da invenção. As etapas do método mostradas podem ser realizadas em um — processador de um codificador. O processador inclui memória e interfaces de entrada / saída, da forma conhecida na tecnologia.
A entrada no codificador é um bloco 101 de um quadro de um vídeo a ser codificado. Da forma aqui definida, blocos incluem macroblocos, sub-blocos e partições de bloco, no geral, um arranjo de pixéis. Na maioria das aplicações de codificação, as operações são preferivelmente realizadas nos macroblocos e nos sub-blocos. O bloco pode conter dados de vídeo originais, resíduos provenientes de uma previsão com compensação espacial ou de movimento dos dados de vídeo, ou outros dados relacionados a textura a serem transformados. O bloco pode ser particionado em sub-blocos por um —módulode processamento de partição direcional de sub-bloco (SPDPM) 200. Aqui, os sub-blocos são processados um de cada vez como "blocos".
Cada bloco é transformado usando transformadas selecionadas adicionalmente um transformada discreta de cosseno bidimensional convencional (DCT 2D) 120, um conjunto de transformadas direcionais 130
O Ltecqc«cqcEq—... 9 ou outras transformadas, no geral, transformadas 125. A saída da transformada é medida por um módulo de decisão de tipo e direção de transformada (TTDDM) 300. O TIDDM usa uma métrica, tal como um custo de taxa / distorção, para determinar qual das transformadas provê o melhor í 5 — desempenho. O custo de taxa / distorção é uma soma de uma taxa de - codificação e um escalar multiplicado pela distorção. O tipo e a direção da transformada com um custo mínimo são selecionados para a transformada. O desempenho pode ser, mas sem limitações, uma medida da eficiência de codificação. A ideia é que a transformada que tem o melhor desempenho é — selecionada para a codificação, e a transformada selecionada é sinalizada ao decodificador como em um índice 16 no fluxo de bit.
O TTDDM também pode receber entrada a partir de um módulo de inferência de direção (DIM) 400. A entrada no DIM é uma coleção de dados 160 que indica as transformadas e direções usadas para blocos — adjacentes previamente processados. A saída do DIM é um valor ou conjunto de valores correspondentes aos dados 160, tais como direções preferidas 431. O TTDDM usa esta informação para tomar a decisão em relação a quais transformadas e direções são usadas para codificar o bloco 101. O TIDDM também pode encaminhar um indicador de particionamento final (FPI) 141 no —SPDPM como um guia para o particionamento. O módulo TTDDM produz o bloco transformado 102 e um indicador de transformada selecionado (STI) 145 que representa a transformada e a direção selecionadas.
Então, o bloco transformado 102 pode ser apropriadamente codificado 150 usando codificação por entropia para produzir um bloco de — saída codificado 17.
O módulo de previsão de direção (DPM) 500 também recebe informação a partir do DIM e informação relacionada aos blocos previamente processados 160. O DPM usa esta informação para gerar um indicador de transformada previsto (PTI) 501. O PTI é inserido em um módulo de
I— w— codificação do índice direcional (DIEM) 600, juntamente com o STI 145. O DIEM converte a representação em uma palavra-código binária 603 para codificação por um codificador aritmético binário adaptável ao contexto (CABAC) 190. É 5 Os contextos usados pelo CABAC são determinados por um - módulo de geração de contexto (CGM) 900. A entrada no CGM é informação sobre as transformadas e direções usadas por blocos adjacentes previamente codificados do DIM, ou informação já codificada do bloco atual. O CGM produz contextos para que o CABAC codifique o índice direcional binário. O 10 —CABAC transmite um índice de transformada codificado 16. Módulo de Processamento Direcional de Sub-bloco e Partição A figura 2 mostra detalhes do SPDPM 200. Os pixéis no bloco de entrada 101 podem representar informação relacionada a vídeo, tais como dados de quadro de vídeo, resíduos de previsão de movimento compensado e resíduos de previsão espacial. O SPDPM particiona o bloco em partições 210, no geral, arranjos de pixéis. As transformadas convencionais ou direcionais 125 são aplicadas nas partições. O indicador de particionamento final 141 produzido pelo TIDDM indica quais partições usar para o melhor desempenho. Módulo de Decisão de Tipo e Direção da Transformada A figura 3 mostra o TIDDM 300 para selecionar as melhores transformada e direção para usar para transformar o bloco 210. Um seletor de transformada 310 escolhe quais, dentre tipos de transformada disponíveis, devem ser enviadas ao módulo de medição 320, que determina uma métrica —321,tal como o custo de taxa / distorção (R/D), que é usado para selecionar a transformada. O seletor de transformada pode ser influenciado pelo DIM
400. O DIM, por exemplo, pode examinar blocos adjacentes para determinar quais direções são mais prováveis de desempenhar bem para o bloco atual.
Então, a medição pode ser limitada a um subconjunto de direções disponíveis, assim, reduzindo o tempo de processamento. Depois que estas medições forem usadas para determinar as melhores direção ou transformada, o indicador de transformada selecionado 145 e o correspondente bloco À 5 — transformado 102 são transmitidos. Se o TTDDM estiver operando em uma . seleção de partições, então, o indicador de particionamento final 141 que produz o melhor desempenho também é transmitido ao SPDPM. Módulo de Inferência de Direção A figura 4 mostra o DIM 400. O módulo de seleção de bloco usaos blocos previamente processados e informação complementar 160 para determinar possíveis direções da transformada 411 para o bloco atual. As possíveis direções da transformada são usadas para determinar um conjunto de direções preferidas 431. Este é subsequentemente usado pelo DPM para reduzir o número de bits necessários para representar esta informação, o que resulta em uma maior eficiência no codificador e no decodificador.
Um módulo de seleção de bloco (BSM) 410 realiza seleção a partir dos blocos 160 com base em critérios, tal como uma distância dos blocos selecionados até o bloco atual. O módulo de decisão de confiabilidade (RDM) 420 estima a confiabilidade dos blocos selecionados. O módulo RDM — pode usar informação de textura, a posição e outros dados do bloco 412. Um fator de confiabilidade 421 de cada um dos blocos selecionados e a correspondente direção da transformada 411 são alimentados no módulo de determinação de direção preferencial (PDDM), em que as direções preferidas 431 são identificadas.
—Módulode Previsão Direcional A figura 5 mostra o DPM 500 para determinar o indicador de transformada previsto 501 para o DIEM 600 e o CGM. Um previsor de primeiro estágio 510 seleciona candidatos 515 a partir das direções preferidas
431. Um previsor de segundo estágio 420 usa estes candidatos e a informação
EEE Eae e re asse 12 complementar codificada 160 para selecionar o indicador de transformada preferido 501. Para codificar resíduos de textura transformados, o indicador de direção da transformada selecionado 145 pode ser correlacionado com um í 5 — previsor de textura, tal como um modo intraprevisão usado em H.264/AVC. - Portanto, a informação complementar alimentada no DPM pode incluir, por exemplo, o modo intraprevisão para selecionar o indicador 501. Módulo de Codificação do Índice Direcional A figura 6 mostra o DIEM 600. A entrada inclui o indicador de transformada selecionado 145 e o indicador de transformada previsto 501, que são mapeados 605-606 para uma representação significativa das direções.
Diferentes mapeamentos 605-606 podem ser usados para os indicadores de transformada selecionados e previstos.
Uma diferença entre as duas direções é determinada 610 como uma diferença do indicador de transformada 612. Em virtude de a previsão ser uma aproximação razoável da direção da transformada selecionada, pequenas diferenças de ângulo devem resultar em palavras-códigos similares que podem ser efetivamente codificadas.
A diferença é binarizada 620 na palavra-código 603, que é codificada por entropia pelo CABAC 190 como o índice de transformada codificado 16. Entende-se que qualquer codificador por entropia adaptável ao contexto pode ser usado, bem como codificação com comprimento variável (VLC). O cálculo da diferença pode ser desviado 611 da forma descrita a seguir.
A figura 7 mostra esquematicamente uma primeira modalidade do DIEM 600. Por exemplo, há oito possíveis direções da transformada 701 e — correspondentes previsões 702. A direção da transformada é selecionada pelo i indicador de transformada selecionado 145, e a previsão é selecionada pelo PTI 501. Os indicadores de transformada são mapeados to um código de Gray, no qual direções adjacentes diferem somente em um bit.
As palavras- códigos para as direções selecionadas e previstas são comparadas bit a bit
EEE 13 com uma operação OU exclusivo (XOR) 610 para obter a diferença 611. Para um preciso previsor, isto resulta em um fluxo de bit com a maior parte de zeros para uma baixa entropia.
Em virtude de os mapeamentos do indicador 605-606 usarem representações binárias, a binarização 620 não é usada. : 5 A figura 8 mostra uma segunda modalidade do DIEM.
Nesta - modalidade, as direções são representadas por uma sequência de números uniformemente contínua.
A diferença 610 é A=(Is-Ilp+N)modN, em que Iç e Ip são os índices mapeados dos indicadores de direção selecionados e previstos, respectivamente, e N é o número de possíveis direções, por exemplo, oito.
Em virtude de pequenas diferenças serem mais prováveis, a binarização 620 codifica diferenças próximas de zero (0, 1, N-l, 2, N-2, ...) com menos bits.
O cálculo da diferença pode ser desviado 611 e o indicador de transformada mapeado é encaminhado diretamente ao módulo de —Dbinarização 620. Neste caso, o módulo de geração de contexto 900 usa o indicador de transformada previsto para selecionar um contexto apropriado.
Módulo de Geração de Contexto As figuras 9-10 mostram modalidades do CGM 900. O CGM seleciona contextos 921-922 para o CABAC 190. Mais de dois contextos também podem ser selecionados.
Para determinar os contextos, o CGM pode usar a informação de bloco processado preferido 160, o PTI 501 e as direções preferidas 431. Os contextos A e B distinguem precisas direções previstas e previsões imprecisas.
A figura 9 mostra como as direções preferidas 431 são usadas para determinar os contextos.
Uma máxima diferença q é determinada 910 e comparada 920 com um limite pré-determinado T.
Se a diferença for menor que o limite, então, a previsão é precisa no contexto À 921, caso contrário, o contexto B 922 é impreciso.
Por exemplo, se o DIEM for usado, então, os bits alimentados no CABAC são quase todos zeros, e o contexto À é selecionado para se adequar a esta probabilidade.
A seleção de contexto do
I— ——.—w Uw —.V.-"—s—— 14 CGM 900 também pode considerar outros fatores, tal como posição do bit, para decidir entre mais de dois contextos.
A modalidade mostrada na figura 10 considera que o DIEM desvia 611 o cálculo da diferença 610. O indicador de transformada previsto É 5 SO0leum índice posicionali 1001 que representa qual bit do índice 603 deve - ser codificado são inseridos. O PTI 501 é mapeado 1010 para uma palavra- código binária com o mesmo mapeamento do indicador 605 usado no DIEM. Em virtude de ambas as palavras-códigos deverem ser iguais, o bit mais provável do CABAC deve ser igual ao bit atual CW[i] de 1030. Assim, se a comparação 1030 indicar que o bit atual é 1, o contexto A 921, que prefere 1, é selecionado, caso contrário, o contexto B 922, em que 0 é o bit preferido, é selecionado. Transformadas Direcionais Primária e Secundária A figura 11A mostra a transformada direcional de acordo com modalidades desta invenção. Entende-se que, durante a decodificação, a transformada é uma transformada inversa. A transformada (ou sua inversa) opera em um bloco M x N 1100 de pixéis. Com o propósito da transformada, os valores 110 associados com os pixéis podem ser intensidades ou coeficientes de transformada, dependendo do estágio da codificação ou da decodificação.
A transformada inclui um conjunto de transformadas 1D fTo, Ti, .... Tn) 1102, em que N é o número total de transformadas 1D aplicadas no bloco. O comprimento |; da transformada T; indica o número de pixéis nos quais a transformada 1D opera. Assim, as transformadas f To, Ti, ..., Tn1t no — conjuntotêm comprimentos correspondentes flo, 11, ..., In-1t- Cada transformada é aplicada nos pixéis ao longo de um caminho 1102 no bloco. Tipicamente, um caminho inclui um conjunto de pixéis contíguos ou adjacentes. Entretanto, pixéis não contíguos também podem ser incluídos no caminho.
= 15 Da forma mostrada na figura 11B, se os valores dos pixéis no caminho forem coeficientes, então, o primeiro coeficiente para cada caminho é o coeficiente de CC, seguido pelos coeficientes de CA.
Todos os primeiros coeficientes 1150 são coletados em um conjunto de coeficientes de i 5 — transformada secundários (STC) 1170. O primeiro coeficiente secundário no - conjunto é um coeficiente CC secundário (SDC). Durante a decodificação, a transformada direcional secundária 26 pode ser aplicada no conjunto de coeficientes de transformada secundários para reconstruir o coeficiente de CC de cada caminho.
Durante a codificação, o primeiro coeficiente ou coeficiente de ce de cada caminho é descartado depois que o conjunto de coeficientes de transformada secundários 1170 for formado.
Cada caminho é orientado, em relação à direção vertical 1103, em um ângulo da transformada 0 1105, que é determinado pelo índice de transformada direcional.
Como exposto, o índice de transformada, que é determinado durante a codificação, é parte do fluxo de bit a ser decodificado.
Os caminhos para um bloco e transformada em particular são, no geral, orientados na mesma direção.
Os caminhos são gerados como segue.
Um mínimo comprimento do caminho de transformada Lmin 1110 é especificado para o bloco.
Tipicamente, o caminho de transformada começa em um pixel de início 1120 localizado em uma borda (ou canto) do bloco 1100. Como exposto, se os valores para os pixéis forem coeficientes, o valor para o pixel de início é o coeficiente de CC.
O caminho continua ao longo do ângulo 6 até um pixel final 1121 em uma outra borda.
O comprimento do caminho, em pixéis, é m.
Se o pixel de início estiver em uma borda ou canto, então o comprimento m = 1. Se m > Lmin, então, o caminho é considerado completo.
Se o bloco ainda contiver todos os pixéis que não estão em um caminho, então, um novo caminho é iniciado.
O novo caminho pode iniciar em qualquer pixel não
——————>——————— 16 transformado no bloco. Tipicamente, o próximo caminho começa em um pixel adjacente ou próximo do início do caminho prévio, ou o caminho pode iniciar em um canto oposto do bloco, de forma que a distribuição dos comprimentos de caminho no bloco seja substancialmente simétrica. O i 5 — processo continua com a Etapa 2 até que todos os pixéis sejam transformados. - Se m < Lmin, então, o caminho é muito curto, e o processo continua pela inclusão de um pixel adjacente em um pixel previamente processado. Se houver mais de um pixel adjacente, então, outros caminhos no bloco são usados para determinar o caminho atual. Se um pixel não processado estiver disponível, o pixel torna-se parte do caminho, o comprimento do caminho m é incrementado, e o processo continua com a Etapa 2 na direção (180 - O) até que a borda do bloco seja alcançada. Assim, a direção 0 é definida em (180 - 0), efetivamente, uma reversão, antes de continuar com a Etapa 2.
As figuras 12A-C mostram transformadas direcionais para Lnin = 3 e ângulos de 45, 30 e 90 graus, respectivamente. As figuras 12D-F mostram transformadas direcionais para Lmin = 5. Modalidades alternativas são possíveis quando caminhos terminam no interior do bloco em vez de em uma borda.
A transformada inversa 26 opera ao longo dos mesmos caminhos, como exposto, exceto coeficientes de transformada inversa. Por exemplo, se uma DCT 1D for usada para cada caminho, então, a transformada inversa usará o DCT Inversa 1D (IDCT).
Transformadas Direcionais Secundárias A figura 11B mostra a transformada direcional secundária 26. Depois que a transformada direcional primária foi aplicada, a transformada secundária pode ser adaptativamente aplicada em cada bloco ao longo de um caminho que contém os coeficientes iniciais de cada caminho da transformada inicial. Tipicamente, estes coeficientes correspondem aos coeficientes de CC s—"———— s——npcC-p—ps—«<p—q—pn——————-——— Í 17 de uma transformada 1D, tal como a DCT.
A transformada secundária inversa opera ao longo do mesmo caminho, como exposto, exceto coeficientes de transformada secundária inversa. À transformada direcional secundária inversa é realizada antes da ] 5 — transformada direcional inversa durante a decodificação.
. A transformada secundária reduz adicionalmente a redundância nos componentes CC dos coeficientes da transformada direcional. Alternativamente, o componente CC de uma transformada — — direcional pode ser usado para prever o componente CC de uma outra transformada direcional.
Transformadas Direcionais Particionadas A figura 13 mostra uma transformada direcional particionada. Um bloco M X N (8x8) de pixéis 1300 é particionado em duas partições de bloco A e B aproximadamente ao longo de uma linha 1310 com um ângulo de partição q em relação à vertical. O ângulo de partição é perpendicular ao ângulo da transformada 6 1105.
Então, transformadas direcionais são geradas usando as etapas supradescritas, com a restrição de que a partição de bloco A tem um conjunto de caminhos orientado no ângulo 6, e a partição B tem um conjunto de caminhos orientado no ângulo Og. O ângulo primário da transformada direcional 0 é considerado igual a 61. À medida que um caminho é gerado na partição, a linha 1310 se aproxima da borda da partição. Assim, cada pixel na transformada direcional fica tanto na partição A quanto na partição B. Os ângulos 9, e Og podem ser diferentes.
Em uma modalidade da invenção, a transformada direcional secundária é aplicada em ambas as partições B. Para inverter o processo, a transformada secundária inversa é aplicada e, então, as transformadas direcionais inversas são aplicadas independentemente nas partições A e B. Em uma outra modalidade da invenção, a transformada secundária é aplicada
É e es e 18 independentemente em cada partição.
Isto é, qualquer uma de ambas as transformadas secundárias inversas pode ser aplicada antes das transformadas primárias inversas, ou a transformada secundária inversa e a transformada primária inversa podem ser í S aplicadas nas partições independentemente. Esta decisão é tomada . adaptativamente em uma base por bloco. Ordem de Escalonamento e Quantização Depois que as transformadas primárias e secundárias forem concluídas, os coeficientes resultantes são escalonados, ordenados e —quantizados.
O escalonamento dos coeficientes de transformada depende do comprimento m do caminho de cada transformada direcional 1D ou de um local do coeficiente no bloco. Uma transformada 1D de comprimento m tem um fator de escala Sr. Assim, todos os coeficientes no caminho de comprimento m são escalonados por Sm. Tipicamente, o fator de escala é selecionado de forma que as magnitudes dos coeficientes de CC sejam iguais durante a transformação de valores de pixel idênticos. Se uma transformada com comprimento m = 4 transformar quatro pixéis, cada qual com valor v, e uma transformada com comprimento m = 5 transformar cinco pixéis, cada com valor v, então, o fator de escala S,, é selecionado de forma que ambas as transformadas transmitam os primeiros coeficientes (CC) com o mesmo valor.
Métodos de escalonamento alternativos também são possíveis. A transformadas mais curtas podem ser dados menores ou maiores fatores de escala com base no comprimento m ou na direção 0. O escalonamento também pode se tornar parte da própria transformada para simplificar a implementação deste processo.
Os coeficientes escalonados são arranjados em uma ordem de varredura. Em uma modalidade, o conjunto de transformadas (To, Ti, ..., Tw. 1) é varrido independentemente e na ordem. Em cada transformada, o
MN — 19 primeiro coeficiente de CC é varrido primeiro, seguido pelos seguintes coeficientes de CA na mesma ordem do caminho para esta transformada.
Em uma outra modalidade, todos os primeiros coeficientes de CC provenientes de cada transformada são varridos, seguidos por todos os h 5 — segundos coeficientes provenientes de cada transformada, e assim por diante, “ até a última transformada.
Na segunda modalidade, a ordem na qual as transformadas são varridas pode variar.
Por exemplo, as transformadas podem ser varridas na ordem de seu índice, isto é, a primeira varredura usa os coeficientes de CC provenientes do conjunto de transformadas (To, Ti, -.., Tn- ;) na ordem (O, 1, -. N-l). Alternativamente, as transformadas podem ser varridas na ordem de seu comprimento flo, li, -.., lN-1). Os coeficientes podem ser varridos com base em suas posições relativas no bloco.
Por exemplo, todos os coeficientes ao longo de uma borda do bloco podem ser varridos primeiro, seguidos pelos coeficientes que estão deslocados da borda.
Embora a invenção tenha sido descrita a título de exemplos das modalidades preferidas, deve-se entender que várias outras adaptações e modificações podem ser feitas no espírito e no escopo da invenção.
Portanto, é o objetivo das reivindicações anexas cobrir todas tais variações e modificações que caem nos verdadeiros espírito e escopo da invenção.
Claims (6)
1. Método para decodificar um fluxo de bit, em que o fluxo de bit corresponde a um vídeo decodificado, em que o vídeo codificado inclui uma sequência de quadros, em que cada quadro é particionado em blocos i 5 codificados, para cada bloco codificado, caracterizado pelo fato de que . compreende as etapas de: determinar um conjunto de caminhos no bloco, em que cada caminho fica em um ângulo da transformada determinado a partir de um índice de transformada no fluxo de bit; obter coeficientes de transformada a partir do fluxo de bit, em que os coeficientes de transformada incluem um coeficiente de CC para cada caminho; e aplicar uma transformada primária inversa nos coeficientes de transformada em cada caminho para produzir um vídeo decodificado, em que as etapas de determinação, obtenção e aplicação são realizadas em um decodificador.
2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que cada caminho tem um primeiro coeficiente para formar um conjunto de primeiros coeficientes, e em que a obtenção compreende — adicionalmente: aplicar uma transformada secundária inversa no conjunto de primeiros coeficientes para obter o coeficiente de CC para cada caminho.
3. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que cada caminho tem um primeiro coeficiente para formar um conjunto de primeiros coeficientes, e em que a obtenção compreende adicionalmente: prever o componente CC para cada caminho a partir do conjunto de primeiros coeficientes.
4. Método, de acordo com a reivindicação 1, caracterizado
É SS 2 pelo fato de que compreende adicionalmente: associar um comprimento com cada caminho.
5. Método, de acordo com a reivindicação 4, caracterizado pelo fato de que os comprimentos são diferentes.
: 5
6. Método, de acordo com a reivindicação 1, caracterizado . pelo fato de que a transformada primária inversa é com base em uma transformada inversa discreta de cosseno.
7. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende adicionalmente: particionar o bloco em um conjunto de partições de acordo com um ângulo de partição.
8. Método, de acordo com a reivindicação 7, caracterizado pelo fato de que o ângulo de partição é perpendicular ao ângulo da transformada.
9. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que os blocos incluem macroblocos, sub-blocos, partições de bloco ou um arranjo de pixéis.
10. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende adicionalmente: quantizar inversamente os coeficientes de transformada de acordo com um parâmetro de quantização; e escalonar os coeficientes de transformada de acordo com um local dos coeficientes de transformada no bloco.
11. Método, de acordo com a reivindicação 4, caracterizado — pelofatode que compreende adicionalmente: quantizar inversamente os coeficientes de transformada de acordo com um parâmetro de quantização; e escalonar os coeficientes de transformada de acordo com os comprimentos.
TN snsmsescssssse— 3
12. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que uma ordem de varredura para os coeficientes depende de uma ordem em que os coeficientes são quantizados.
13. Método, de acordo com a reivindicação 1, caracterizado í 5 — pelo fato de que uma ordem de varredura para cada transformada inversa é . realizada independentemente.
= 117 a wu o = Q & o <
ELES Ss Su [x a rzg rir2 Mm õ 5 FEeLZ E ã, | I a E E So [83 | o Ea & [E | s228| o é> | zZz<5% EZ | oo rauz ref e : $ S S & « o < iz se
E é BEM 8 ks E o no us . "uu ã ae f oz > à
NL 217 uu ” o ; FE i so << | < vv = Us
26 > [11 | FE = H | ss e | ls 8 | a 3 É " QA = — | q É o | Sig nº Na FT Fm EÉ | = <u E QN 23 E az "” | .ã&% | = < 2 jo Ss Tm É as - S& 265 oo | &— o q o = = ã 3 & o D 8 > uu o uu o g||o = e a 4 - A | ! 8 õ % f- 3 lo5 S = jozZ9 E Sã ã ar= 8 s s o e Exa!
T o õ& ã 8/8 We . o mm - s &e s &s q 8 nn g UA: ã E E õ “. O E Lad Z E Hd, 5 8 T ão - RR 1 o : FT ; ; — i : ; | o 1 — E < &< 1 of o = Ss 1 uu ELO 1 no nO ' z4á zZ2<OoO 8 se ser ral F= F=o ' e ; = : LH : & s Se : q E ão : vê of EE: ; 5a 28 so ' us os E TprTrREA=A=A PES Et 8a ou So o SE Ea £o São OE o mBERUZO = Wu Z as 8% 9 mu
Us ss SSSSSSSSSSSSSDSSSSNSSSNSSSSSSSõttããSSNSNãteeeea es o 4/17 h < o q = õ o Ss)
Z Fr [| [| LIT IT] = e Zailu “fo Ho um a <s <a so so eo fe) “| = /5e| [38| |és| |8S .& S & 3%| [3% 3& 3% & << I% TZ I< A |ú- no no Ba mm qn - e< =) as o
FE 9z au
LOL sA7 f =
É & = ' = : ! á : < ' us=z , ss 1 o foco = as a sá 8 = aÉ a < e
E Jones ds < Í 8 1 us ' ao€ 1 :; uz H >
BÊ Tv W< s a 2 | ãáa |V - - nº fx as a a 2 A 2º us É é E || ÀS É V| sos oe sê ao Er) e... uu os = o o ou o os z<o às | |8332 ||83928 ||S20E |
E IES 2ÉS ars ||3Esô | |arás
—————————— 6/17 = né ns FU oz Oui
FE
E sao 8
TF à Q < e + wuo 6 ans F om Es [34 x <íu [ASS x SE oão . &| 414ãs |=oo .so | Eos) E + =m o erro dino Fo (NTso 1 o s S te w ES z T Ee o = à o o2o s | 34o a 262 v | guia u = Zona an
PMN 7117 = Ã : uu ao Es
FE mo É& = .% 7 R& o o < a 2 Ss wu ao o
E za
É o = Fe no se Wu
E Ex oo
- 4 8 > De >
FE VV ' no o < e e ' É À << : = ; m ; e ; = f e : ; À vs = SS. = p= | . e, = ' < Ss VC õ< a & ; oo = i 9 s , 3u ; o“ ; 3 ; <E ; oo 1
À o% “ 8 26 u< zo =o u< 8 <o ze =&S|4.iz 72 so &o = zo se = e Ss Ss o - 4 js &
— —e———— [> /2"—-- 9/17 . s s é õ . = 8/5868 à o << = 200 noo uu pontennensens neon soro onooeneneensnercenenmenanano] 1 2 t sS. » ' Q o 1 So o S i 1 N CE H Le < É ; ; ? H i Í E) i ; i : i ; = : ' e ' nm = E: Es ss E ' os : E o VU as do BR o : & E : x oa : : ' í 1 s . :; ds :& Hs : i 288 Es or , e 1 Dc Z | 1 o so ê zo : 18 a o u< ' 1 a sa =2 i 8: E <$ã : = = &S : Es go É8 ' CE H E 1 ' E : 8 : LoznuemnreLrpnerersases anna Rad mma ml e e a = - - € |E o & - nn ss A —— 10/17 Ss 8 s da. õ . x = 58 E íax Wu oo x . Lona W postonsesnesesn en dossmsnnssmesmrmerremenmncmesnssncoo 1 ' ; 1 À uu o H : So Ss : : gx rá ; Ss ox S ; ' au = : 16 SE < : Wi E ã : : o 1 ' : : Ieneatetatedeenr recordes rbabadalesaeeenabeerdere=ne) postessamanennsnmmnfostessnmnesmete names trnmmesmontan a 1 ' : = : : co : ' + < ' &: a SE " Ss E: Sm 28 io 8 WU ' am R& "o| o À to 28 í = E << ' i <q = sã : Í : 1 ro or rr toe proonbabendoanncan Cs x 8 : ES [E e. ox : ço S + ; > : ” d< : i ES À = À - ss ; t nÊ Ss: ” : to so ea e ' “o = o CU S : E s $ jE mn - nn a——— ww mm > ÔÔ =. 11/17 a & m > < ui = õ 8 o s a E Ss " q há Ss so - && 1a o HÁ [e T | oã “ OE <ã O =r & Es ZE z aÉ | És q Lo Ss o ú mu >
Ts 12/17 Ss - s s Ss = mn nm o o x é É o o 8 o s R = = o s - < > - - ie “ o e z e o < = E zo o u< Ns sã z o zo ” = o 8 e
Ó—N———— LEE 1317 Z 3 — - 3 “7” Ó : Z ã om - TP. du 1 to oo s >m lan o são LA Re ! My Ss — » s Dá: ss =
UN Db , .— (A - | Ê e & = &< nn " Draw / à = E Sã e = 8 a =
S !
VV QUO e "e.
A o E
RIO OCO :ia£< o < Ss ' ; : ; ima! so : É =. : * R& o ... O - NONOMO) "AR d <
A PQ IDO O ss AL < <
: FATO]
À IO ' * | III 7 E EH Ss & A > | IA e
A [BE PLE | LEVA | « EV IA A, | à ss Ti iHÍ1l/A| Ss à li) HIV) | lo | HH +11) Lila da a Lala Da la] LAVA VV | « AA VV VV | € AAA 1h | < d dA tlAdA er) S Alia VV) = ViÁAadAde) E MAIA AÃE)
: FE : Eq ooo a Fr E e do dE] e Fos=s= ErmFms== PrFHFEFR]
FA « EAAAAAZE) sas AAA 8
EAR
FAAO
FA AAA FAAÁIZ=E] | FBPrEEEER [Ir [AV "Add ib à sq AAA) e TVA)
PPA AAA A dA
E E ETA tTTIRTaoo cel: era
AFA Es TAS
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/603,100 US20110090952A1 (en) | 2009-10-21 | 2009-10-21 | Directional Transforms for Video and Image Coding |
US12/603100 | 2009-10-21 | ||
PCT/JP2010/066621 WO2011048909A2 (en) | 2009-10-21 | 2010-09-16 | Method for decoding a bitstream |
Publications (2)
Publication Number | Publication Date |
---|---|
BR112012009533A2 true BR112012009533A2 (pt) | 2020-07-07 |
BR112012009533B1 BR112012009533B1 (pt) | 2021-09-28 |
Family
ID=43879261
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BR112012009533-1A BR112012009533B1 (pt) | 2009-10-21 | 2010-09-16 | Método para decodificar um fluxo de bit |
Country Status (12)
Country | Link |
---|---|
US (1) | US20110090952A1 (pt) |
EP (1) | EP2491716B1 (pt) |
JP (1) | JP5409909B2 (pt) |
KR (1) | KR101351714B1 (pt) |
CN (1) | CN102763410B (pt) |
BR (1) | BR112012009533B1 (pt) |
DE (1) | DE112010004109B4 (pt) |
ES (1) | ES2793499T3 (pt) |
MX (1) | MX2012004642A (pt) |
PL (1) | PL2491716T3 (pt) |
RU (1) | RU2486691C1 (pt) |
WO (1) | WO2011048909A2 (pt) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8537899B1 (en) * | 2010-02-19 | 2013-09-17 | Otoy, Inc. | Fast integer and directional transforms for data encoding |
US20110243220A1 (en) * | 2010-04-05 | 2011-10-06 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding and decoding image and method and apparatus for decoding image using adaptive coefficient scan order |
JP2011259205A (ja) * | 2010-06-09 | 2011-12-22 | Sony Corp | 画像復号化装置と画像符号化装置およびその方法とプログラム |
CN102281435B (zh) * | 2010-06-11 | 2013-10-02 | 华为技术有限公司 | 编码方法、解码方法、编码装置、解码装置及编解码系统 |
US9392301B2 (en) | 2011-07-01 | 2016-07-12 | Qualcomm Incorporated | Context adaptive entropy coding for non-square blocks in video coding |
KR101718954B1 (ko) * | 2011-10-17 | 2017-03-22 | 주식회사 케이티 | 영상 부호화/복호화 방법 및 그 장치 |
US20130114685A1 (en) * | 2011-11-07 | 2013-05-09 | Sharp Laboratories Of America, Inc. | Video decoder with constrained dynamic range |
US9167261B2 (en) | 2011-11-07 | 2015-10-20 | Sharp Laboratories Of America, Inc. | Video decoder with constrained dynamic range |
JP6080375B2 (ja) * | 2011-11-07 | 2017-02-15 | キヤノン株式会社 | 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム |
US20140307780A1 (en) * | 2013-04-11 | 2014-10-16 | Mitsubishi Electric Research Laboratories, Inc. | Method for Video Coding Using Blocks Partitioned According to Edge Orientations |
RU2740863C2 (ru) * | 2016-05-13 | 2021-01-21 | Сони Корпорейшн | Устройство и способ обработки изображения |
FR3057429A1 (fr) * | 2016-10-07 | 2018-04-13 | B<>Com | Procede de codage d'une image numerique, procede de decodage, dispositifs et programmes d'ordinateurs associes |
EP3451663A1 (en) | 2017-08-31 | 2019-03-06 | Thomson Licensing | Pools of transforms for local selection of a set of transforms in video coding |
CN107547814B (zh) * | 2017-09-28 | 2019-10-15 | 维沃移动通信有限公司 | 一种视频录制方法、移动终端 |
US10999604B2 (en) | 2018-04-13 | 2021-05-04 | Mediatek Inc. | Adaptive implicit transform setting |
US11297348B2 (en) * | 2018-04-13 | 2022-04-05 | Mediatek Inc. | Implicit transform settings for coding a block of pixels |
CN112166609B (zh) * | 2018-06-08 | 2024-10-18 | 株式会社Kt | 用于处理视频信号的方法和设备 |
US11025937B2 (en) * | 2019-03-16 | 2021-06-01 | Tencent America LLC | Method and apparatus for video coding |
US11616966B2 (en) * | 2019-04-03 | 2023-03-28 | Mediatek Inc. | Interaction between core transform and secondary transform |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3298915B2 (ja) * | 1991-12-28 | 2002-07-08 | ソニー株式会社 | 符号化装置 |
JPH0683442A (ja) * | 1992-09-04 | 1994-03-25 | Sanyo Electric Co Ltd | 走行ロボット |
US5883678A (en) * | 1995-09-29 | 1999-03-16 | Kabushiki Kaisha Toshiba | Video coding and video decoding apparatus for reducing an alpha-map signal at a controlled reduction ratio |
KR100371130B1 (ko) * | 1996-05-28 | 2003-02-07 | 마쯔시다덴기산교 가부시키가이샤 | 화상예측 복호화 장치 및 그 방법과 화상예측 부호화 장치및 그 방법 |
US6671322B2 (en) * | 2001-05-11 | 2003-12-30 | Mitsubishi Electric Research Laboratories, Inc. | Video transcoder with spatial resolution reduction |
JP2003309848A (ja) * | 2002-04-12 | 2003-10-31 | Canon Inc | 画像符号化装置及びその制御方法 |
AU2003285850A1 (en) * | 2002-04-23 | 2004-04-30 | Nokia Corporation | Method and device for indicating quantizer parameters in a video coding system |
US7376280B2 (en) * | 2002-07-14 | 2008-05-20 | Apple Inc | Video encoding and decoding |
JP4253572B2 (ja) * | 2003-12-08 | 2009-04-15 | 株式会社東芝 | 画像符号化装置、画像符号化方法および画像符号化プログラム |
US7599435B2 (en) * | 2004-01-30 | 2009-10-06 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Video frame encoding and decoding |
US7565020B2 (en) * | 2004-07-03 | 2009-07-21 | Microsoft Corp. | System and method for image coding employing a hybrid directional prediction and wavelet lifting |
RU2368095C1 (ru) * | 2005-07-22 | 2009-09-20 | Мицубиси Электрик Корпорейшн | Кодер изображения и декодер изображения, способ кодирования изображения и способ декодирования изображения, программа кодирования изображения и программа декодирования изображения и компьютерно-считываемый носитель записи, на котором записана программа кодирования изображения, и компьютерно-считываемый носитель записи, на котором записана программа декодирования изображения |
US7933337B2 (en) * | 2005-08-12 | 2011-04-26 | Microsoft Corporation | Prediction of transform coefficients for image compression |
KR100750145B1 (ko) * | 2005-12-12 | 2007-08-21 | 삼성전자주식회사 | 영상의 인트라 예측 부호화, 복호화 방법 및 장치 |
KR100772873B1 (ko) * | 2006-01-12 | 2007-11-02 | 삼성전자주식회사 | 스무딩 예측을 이용한 다계층 기반의 비디오 인코딩 방법,디코딩 방법, 비디오 인코더 및 비디오 디코더 |
US7756348B2 (en) * | 2006-10-30 | 2010-07-13 | Hewlett-Packard Development Company, L.P. | Method for decomposing a video sequence frame |
US8756482B2 (en) * | 2007-05-25 | 2014-06-17 | Nvidia Corporation | Efficient encoding/decoding of a sequence of data frames |
US8331444B2 (en) * | 2007-06-26 | 2012-12-11 | Qualcomm Incorporated | Sub-band scanning techniques for entropy coding of sub-bands |
JP2009272727A (ja) * | 2008-04-30 | 2009-11-19 | Toshiba Corp | 予測誤差の方向性に基づく変換方法、画像符号化方法及び画像復号化方法 |
WO2010018992A2 (en) * | 2008-08-12 | 2010-02-18 | Lg Electronics Inc. | Method of processing a video signal |
US8514942B2 (en) * | 2008-12-31 | 2013-08-20 | Entropic Communications, Inc. | Low-resolution video coding content extraction |
US8451903B2 (en) * | 2009-05-14 | 2013-05-28 | Massachusetts Institute Of Technology | Selecting transforms for compressing visual data |
-
2009
- 2009-10-21 US US12/603,100 patent/US20110090952A1/en not_active Abandoned
-
2010
- 2010-09-16 WO PCT/JP2010/066621 patent/WO2011048909A2/en active Application Filing
- 2010-09-16 RU RU2012120752/08A patent/RU2486691C1/ru active
- 2010-09-16 CN CN201080047570.6A patent/CN102763410B/zh active Active
- 2010-09-16 EP EP10768295.7A patent/EP2491716B1/en active Active
- 2010-09-16 JP JP2012518333A patent/JP5409909B2/ja active Active
- 2010-09-16 BR BR112012009533-1A patent/BR112012009533B1/pt active IP Right Grant
- 2010-09-16 KR KR1020127011604A patent/KR101351714B1/ko active IP Right Grant
- 2010-09-16 ES ES10768295T patent/ES2793499T3/es active Active
- 2010-09-16 MX MX2012004642A patent/MX2012004642A/es active IP Right Grant
- 2010-09-16 DE DE112010004109.1T patent/DE112010004109B4/de active Active
- 2010-09-16 PL PL10768295T patent/PL2491716T3/pl unknown
Also Published As
Publication number | Publication date |
---|---|
DE112010004109T5 (de) | 2012-11-15 |
EP2491716A2 (en) | 2012-08-29 |
CN102763410B (zh) | 2016-04-27 |
WO2011048909A3 (en) | 2012-05-18 |
BR112012009533B1 (pt) | 2021-09-28 |
KR20120079137A (ko) | 2012-07-11 |
PL2491716T3 (pl) | 2020-08-24 |
US20110090952A1 (en) | 2011-04-21 |
DE112010004109B4 (de) | 2022-11-10 |
WO2011048909A2 (en) | 2011-04-28 |
KR101351714B1 (ko) | 2014-01-16 |
EP2491716B1 (en) | 2020-04-29 |
MX2012004642A (es) | 2012-05-29 |
JP5409909B2 (ja) | 2014-02-05 |
ES2793499T3 (es) | 2020-11-16 |
CN102763410A (zh) | 2012-10-31 |
JP2013507794A (ja) | 2013-03-04 |
RU2486691C1 (ru) | 2013-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BR112012009533A2 (pt) | método para decodificar um fluxo de bit. | |
CN115604472B (zh) | 用于代码化视频数据块的方法和装置 | |
KR101356733B1 (ko) | 컨텍스트 기반 적응적 이진 산술 부호화, 복호화 방법 및장치 | |
JP6284954B2 (ja) | イントラ予測のためのモード決定の簡略化 | |
RU2606066C2 (ru) | Способ и устройство для кодирования/декодирования видеоданных | |
RU2612624C2 (ru) | Способ и устройство для энтропийного кодирования видео и способ и устройство для энтропийного декодирования видео | |
RU2720975C2 (ru) | Способ кодирования и декодирования изображений, устройство кодирования и декодирования и соответствующие компьютерные программы | |
US8761240B2 (en) | Methods and devices for data compression using context-based coding order | |
CN104394418B (zh) | 一种视频数据编码、解码的方法及装置 | |
CN107347155B (zh) | 用于编码和解码图像的方法、编码和解码设备 | |
BR112012025206B1 (pt) | Dispositivo de decodificação de imagem em movimento | |
BR112014001056B1 (pt) | Varredura de coeficiente em codificação de vídeo | |
US20190215533A1 (en) | Transform coefficient coding using level maps | |
CN104883565A (zh) | 一种高效视频编码的帧内预测模式决策方法及装置 | |
KR20140029533A (ko) | 비디오 코딩에서 최종 유의 변환 계수의 스캔 순서의 위치 도출 | |
WO2012092761A1 (en) | Method and apparatus for improved intra prediction mode coding | |
JP2014523186A (ja) | エントロピー符号化/復号化方法及びその装置 | |
US11736721B2 (en) | Methods and devices for coding and decoding a data stream representative of at least one image | |
CN110868587A (zh) | 一种视频图像预测方法及装置 | |
US20110090954A1 (en) | Video Codes with Directional Transforms | |
US20230056211A1 (en) | Video encoding method and apparatus, video decoding method and apparatus, computer program product, computer-readable storage medium, and electronic device | |
JP6348742B2 (ja) | 画像間予測方法およびデバイス並びに対応する符号化方法および装置 | |
KR20170084213A (ko) | 디지털 이미지의 블록을 처리하는 시스템 및 방법 | |
US10616586B2 (en) | Method for encoding and decoding images, device for encoding and decoding images and corresponding computer programs | |
WO2019150435A1 (ja) | 映像符号化装置、映像符号化方法、映像復号装置、映像復号方法、及び映像符号化システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B06F | Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette] | ||
B15K | Others concerning applications: alteration of classification |
Free format text: AS CLASSIFICACOES ANTERIORES ERAM: H04N 7/26 , H04N 7/30 Ipc: H04N 19/122 (2014.01), H04N 19/147 (2014.01), H04N |
|
B06U | Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette] | ||
B06A | Patent application procedure suspended [chapter 6.1 patent gazette] | ||
B09A | Decision: intention to grant [chapter 9.1 patent gazette] | ||
B16A | Patent or certificate of addition of invention granted [chapter 16.1 patent gazette] |
Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 16/09/2010, OBSERVADAS AS CONDICOES LEGAIS. PATENTE CONCEDIDA CONFORME ADI 5.529/DF, QUE DETERMINA A ALTERACAO DO PRAZO DE CONCESSAO. |