BR112021014671A2 - Transformada discreta de cosseno de formato adaptativo para particionamento geométrico com um número adaptativo de regiões - Google Patents

Transformada discreta de cosseno de formato adaptativo para particionamento geométrico com um número adaptativo de regiões Download PDF

Info

Publication number
BR112021014671A2
BR112021014671A2 BR112021014671-7A BR112021014671A BR112021014671A2 BR 112021014671 A2 BR112021014671 A2 BR 112021014671A2 BR 112021014671 A BR112021014671 A BR 112021014671A BR 112021014671 A2 BR112021014671 A2 BR 112021014671A2
Authority
BR
Brazil
Prior art keywords
region
decoder
current block
line segment
inverse
Prior art date
Application number
BR112021014671-7A
Other languages
English (en)
Inventor
Borivoje Furht
Hari Kalva
Velibor Adzic
Original Assignee
Op Solutions, Llc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Op Solutions, Llc filed Critical Op Solutions, Llc
Publication of BR112021014671A2 publication Critical patent/BR112021014671A2/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection 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/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods 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 bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

transformada discreta de cosseno de formato adaptativo para particionamento geométrico com um número adaptativo de regiões. trata-se de um decodificador que inclui circuitos configurados para receber um fluxo de bits; determinar uma primeira região, uma segunda região e uma terceira região de um bloco atual e de acordo com um modo de particionamento geométrico e decodificação do bloco atual. aparelhos, sistemas, técnicas e artigos relacionados também são descritos. o decodificador pode determinar, a partir de um sinal contido no fluxo de bits, um tipo de transformação de codificação para decodificar a primeira região, a segunda região e/ou a terceira região, o tipo de transformação de codificação que designa pelo menos uma transformação de cosseno discreta de bloco inverso e uma transformação de cosseno discreta adaptativa de formato inverso, e a decodificação do bloco atual pode incluir o uso do tipo de transformação determinado para transformação inversa para cada uma dentre a primeira região, a segunda região e/ou a terceira região.

Description

RELATÓRIO DESCRITIVO TRANSFORMADA DISCRETA DE COSSENO DE FORMATO ADAPTATIVO PARA PARTICIONAMENTO GEOMÉTRICO COM UM NÚMERO ADAPTATIVO DE REGIÕES REFERÊNCIA CRUZADA A PEDIDOS RELACIONADOS
[001] Este pedido reivindica o benefício da prioridade do pedido de patente provisória Número de série U.S 62/797.799, depositado em 28 de janeiro de 2019, e intitulado "Shape Adaptive Discrete Cosine Transform for Geometric Partitioning with an Adaptive Number of Regions," que é incorporado a título de referência no presente documento em sua totalidade.
CAMPO DA INVENÇÃO
[002] A presente invenção refere-se de modo geral ao campo da compactação de vídeo. Em particular, a presente invenção é se refere a uma transformada discreta de cosseno de formato adaptativo para particionamento geométrico com um número adaptativo de regiões.
ANTECEDENTES
[003] Um codec de vídeo pode incluir um circuito eletrônico ou software que compacta e descompacta vídeo digital. Ele pode converter vídeo descompactado em um formato compactado ou vice-versa. No contexto da compactação de vídeo, um dispositivo que compacta vídeo (e/ou executa alguma função do mesmo) pode normalmente ser chamado de codificador e um dispositivo que descompacta vídeo (e/ou executa alguma função do mesmo) pode ser chamado de decodificador.
[004] Um formato dos dados compactados pode estar em conformidade com uma especificação de compactação de vídeo padrão. A compactação pode ter perdas, pois o vídeo compactado carece de algumas informações presentes no vídeo original. Uma consequência disso pode incluir vídeo descompactado que têm qualidade mais baixa que o vídeo não compactado já que existem informações insuficientes para reconstruir de modo preciso o vídeo original.
[005] Podem existir relações complexas entre a qualidade do vídeo, a quantidade de dados usados para representar o vídeo (por exemplo, determinados pela taxa de bit), a complexidade dos algoritmos de codificação e decodificação, sensibilidade a perda de dados e erros, facilidade de edição, acesso randômico, atraso ponta a ponta (por exemplo, latência), e semelhante.
SUMÁRIO DA REVELAÇÃO
[006] Em um aspecto, um decodificador inclui circuitos configurados para receber um fluxo de bits, determinar uma primeira região, uma segunda região e uma terceira região de um bloco atual de acordo com um modo de particionamento geométrico e decodificar o bloco atual usando uma transformada discreta de cosseno inversa para cada uma dentre primeira região, a segunda região e a terceira região.
[007] Em outro aspecto, um decodificador inclui circuitos configurados para receber um fluxo de bits, determinar uma primeira região, uma segunda região e uma terceira região de um bloco atual e, de acordo com um modo de particionamento geométrico, determinar, a partir de um sinal contido no fluxo de bits, um tipo de transformação de codificação para decodificar cada uma dentre a primeira região, a segunda região e/ou a terceira região, sendo que o tipo de transformação de codificação designa pelo menos uma transformada discreta de cosseno de bloco inverso e uma transformada discreta de cosseno adaptativa de formato inverso e decodificar o bloco atual, a decodificação do bloco atual incluindo o uso do tipo de transformação determinado para transformação inversa para cada uma dentre a primeira região, segunda região e/ou terceira região.
[008] Em outro aspecto, um método inclui receber, por um decodificador, um fluxo de bits, determinar uma primeira região, uma segunda região e uma terceira região de um bloco atual e de acordo com um modo de particionamento geométrico, determinar, a partir de um sinal contido no fluxo de bits, um tipo de transformação de codificação para decodificar a primeira região, a segunda região e/ou a terceira região, sendo que o tipo de transformação de codificação designa pelo menos uma transformada discreta de cosseno de bloco inverso ou uma transformada discreta de cosseno adaptativa de formato inverso e que decodifica o bloco atual, a decodificação do bloco atual incluindo o uso do tipo de transformação determinado para transformação inversa para cada uma dentre a primeira região, segunda região e/ou terceira região.
[009] Os detalhes de uma ou mais variações da matéria descrita no presente documento são apresentados nos desenhos anexos e na descrição abaixo. Outros recursos e vantagens da matéria descrita no presente documento serão evidentes a partir da descrição e dos desenhos e das reivindicações.
DESCRIÇÃO DOS DESENHOS
[010] Com o propósito de ilustrar a invenção, os desenhos mostram aspectos de uma ou mais modalidades da invenção. Contudo, deve ser compreendido que a presente invenção não se limita às disposições e instrumentos precisos mostrados nos desenhos, em que:
[011] A Figura 1 é uma ilustração que mostra um exemplo de um bloco residual (por exemplo, bloco atual) com particionamento exponencial em que existem três segmentos com erros de previsão diferentes;
[012] A Figura 2 é um diagrama de blocos de sistema que ilustra um exemplo de codificador de vídeo capaz de moldar transformação de cosseno discreta adaptativa (SA-DCT) para particionamento geométrico com um número adaptativo de regiões que podem melhorar a complexidade e o desempenho de processamento para codificação e decodificação de vídeo;
[013] A Figura 3 é um diagrama de fluxo de processos que ilustra um processo exemplificativo de codificação de um vídeo com SA-DCT para particionamento geométrico com um número adaptativo de regiões;
[014] A Figura 4 é um diagrama de blocos de sistema que ilustra um decodificador exemplificativo capaz de decodificar um fluxo de bits usando SA- DCT para particionamento geométrico com um número adaptativo de regiões;
[015] A Figura 5 é um diagrama de fluxo de processos que ilustra um exemplo de processo de decodificação de um fluxo de bits utilizando SA-DCT para particionamento geométrico com um número adaptativo de regiões; e
[016] A Figura 6 é um diagrama de blocos de um sistema de computação que pode ser usado para implementar qualquer uma ou mais dentre as metodologias reveladas no presente documento e qualquer uma ou mais porções das mesmas.
[017] Os desenhos não estão necessariamente em escala e podem ser ilustrados por linhas tracejadas, representações diagramáticas e vistas fragmentadas. Em certos casos, detalhes que não são necessários para uma compreensão das modalidades ou que geram outros detalhes difíceis de perceber podem ter sido omitidos. Símbolos de referência semelhantes nos vários desenhos indicam elementos semelhantes.
DESCRIÇÃO DETALHADA
[018] As modalidades apresentadas nesta revelação se referem a blocos de codificação e decodificação em particionamento geométrico, em que nem todos os blocos são necessariamente retangulares. As modalidades podem incluir e/ou ser configuradas para realizar a codificação e/ou decodificação usando transformações de cosseno discretas (DCT) e/ou DCTs inversas. Em algumas modalidades aqui apresentadas, uma escolha de DCT é feita em função do conteúdo de informação em blocos particionados geometricamente. Em algumas abordagens de codificação e decodificação de vídeo existentes, todos os blocos são retangulares e o resíduo é codificado usando um Bloco DCT regular (B-DCT) para todo o bloco retangular. Contudo, no particionamento geométrico em que um bloco pode ser particionado em múltiplas regiões não retangulares, o uso de B-DCT regular pode representar de modo não eficaz a informação de pixels subjacente para alguns blocos e pode exigir recursos de computação desnecessários para a realização. Em algumas implementações da matéria atual, ao usar um modo de particionamento geométrico, um codificador pode usar DCT adaptativo de formato (SA-DCT) alternativamente ou adicionalmente a B-DCT. Em algumas modalidades, um codificador pode selecionar entre B- DCT e SA-DCT para cada região de um bloco, como um bloco particionado geometricamente, com base em um nível de erro de previsão dessa região; a seleção pode ser sinalizada no fluxo de bits para uso na decodificação. Ao codificar e/ou decodificar uma região não retangular usando B-DCT ou SA-DCT e sinalizando tal seleção, uma taxa de bits de transmissão em um fluxo de bits pode ser reduzida porque um resíduo pode ser representado de forma mais eficiente e, como resultado, recursos computacionais necessários para executar o processamento podem ser reduzidos. A matéria atual pode ser aplicável a blocos relativamente maiores, como blocos com um tamanho de 128 x 128 ou 64 x 64, por exemplo. Em algumas implementações, o particionamento geométrico pode envolver particionamento de um bloco de corrente em um número adaptativo de regiões, tais como três ou mais regiões para um dado bloco atual; um tipo de transformação DCT (por exemplo, B-DCT ou SA-DCT) pode ser sinalizado para cada região.
[019] Em uma modalidade, uma B-DCT pode ser uma DCT realizada usando uma matriz NXN invertível em um bloco NXN de valores numéricos, tais como, sem limitação, valores de croma e/ou luma de uma matriz NXN de pixels correspondente. Por exemplo, e como um exemplo não limitador, em que uma matriz NxN X está para ser transformada, uma transformação "DCT-I" pode calcular cada elemento de uma matriz transformada como: 𝑁−2 1 𝜋 𝑋𝑘 = (𝑥0 + (−1𝑘 )𝑥𝑁−1 ) + ∑ 𝑥𝑛 𝑐𝑜𝑠 [ 𝑛𝑘] 2 𝑁−1 𝑛=1
[020] Para 𝑘 = 0, … , 𝑁 − 1. Como exemplo não limitador adicional, uma transformação" DCT-II " pode calcular os valores da matriz transformada como: 𝑁−1 𝜋 1 𝑋𝑘 = ∑ 𝑥𝑛 𝑐𝑜𝑠 [ (𝑛 + ) 𝑘] 𝑁 2 𝑛=1
[021] Para 𝑘 = 0, … , 𝑁 − 1. Como um exemplo ilustrativo, em que os blocos são blocos de pixels de 4 x 4 , a matriz de transformada discreta de cosseno generalizada pode incluir uma matriz de transformada discreta de cosseno generalizada II que assume a forma de: 𝑎 𝑎 𝑎 𝑎 𝑏 𝑐 −𝑐 −𝑏 T=( ) 𝑎 −𝑎 −𝑎 𝑎 𝑐 −𝑏 𝑏 −𝑐
1 𝜋 1 3𝜋 em que a é ½, b é √2 cos 8 , e c é √2 cos . 8
[022] Em algumas implementações, uma aproximação inteira de uma matriz de transformada pode ser utilizada, a qual pode ser usada para implementações de hardware e software eficientes. Por exemplo, em que os blocos são blocos de pixels de 4x4, uma matriz de transformada discreta de cosseno generalizada pode incluir uma matriz de transformada discreta de cosseno generalizada II que assume a forma de: 1 1 1 1 2 1 −1 −2 TINT = ( ). 1 −1 −1 1 1 −2 2 −1
[023] A B-DCT inversa pode ser calculada por uma segunda multiplicação de matriz usando a mesma matriz de transformada NxN; uma saída resultante pode ser normalizada para recuperar os valores originais. Por exemplo, uma DCT-I 2 inversa pode ser multiplicada por𝑁−1 para a normalização.
[024] Uma SA-DCT pode ser realizada em uma matriz não retangular de pixels. Em uma modalidade, uma SA-DCT pode ser calculada por meio da realização de uma versão unidimensional de uma DCT, como uma DCT-I, DCT-II ou semelhantes contra vetores que representam colunas verticais de valores de pixel em um formato de interesse, seguido por valores resultantes que são agrupados em vetores horizontais e submetidos a uma DCT unidimensional uma segunda vez; a segunda DCT pode resultar em uma transformação completa dos valores de pixel. Variações de SA-DCT podem escalar e/ou normalizar por meio de coeficientes para corrigir defeitos de ponderação média e/ou defeitos não ortonormais introduzidos pela transformação acima, quantização de saídas da transformação acima e/ou inversão de saídas de transformação e/ou saídas de transformação quantizadas. Correções adicionais podem ser realizadas, sem limitação, precedendo o processo SA-DCT acima, por meio da subtração de um valor médio individual de uma região de imagem da matéria de cada valor de pixel ou uma versão em escala do mesmo, potencialmente em combinação com um ou outro dentre os processos de escala aplicados antes e/ou depois da transformação, quantização e/ou transformação inversa. Aqueles versados na técnica, após revisarem a totalidade desta revelação, estarão cientes de várias alternativas ou variações adicionais em um processo SA-DCT que podem ser aplicadas de modo consistente com a descrição acima.
[025] A compensação de movimento pode incluir uma abordagem para prever um quadro de vídeo ou uma porção do mesmos quadros anteriores e/ou futuros dados levando em consideração o movimento de uma câmera e/ou de objetos em um vídeo contendo e/ou representado por atual, anterior e/ou quadros futuros. A compensação de movimento pode ser empregada na codificação e decodificação de dados de vídeo para compactação de vídeo, por exemplo, na codificação e decodificação usando o padrão do Grupo de Especialistas em Imagem com Movimento (MPEG) -2 (também chamado de codificação de vídeo avançada (AVC)). A compensação de movimento pode descrever uma imagem em termos de uma transformação de uma imagem de referência em uma imagem atual. A imagem de referência pode ser anterior no tempo ou do futuro quando comparada à imagem atual. Quando as imagens podem ser sintetizadas com precisão a partir de imagens transmitidas e/ou armazenadas anteriormente, a eficiência da compactação pode ser melhorada.
[026] O particionamento de bloco, conforme usado nesta revelação, pode se referir a um método na codificação de vídeo para encontrar regiões de movimento semelhante. Algumas formas de particionamento de bloco podem ser encontradas em padrões de codec de vídeo, incluindo MPEG-2, H.264 (também conhecido como AVC ou MPEG-4 Parte 10) e H.265 (também conhecido como Codificação de Vídeo de Alta Eficiência (HEVC)) Em abordagens de particionamento de bloco de exemplificativas, blocos não sobrepostos de um quadro de vídeo podem ser particionados em sub-blocos retangulares para encontrar partições de bloco que contêm pixels com movimento semelhante. Essa abordagem pode funcionar bem quando todos os pixels de uma partição de bloco têm movimento semelhante. O movimento dos pixels em um bloco pode ser determinado em relação aos quadros previamente convertidos em código.
[027] A DCT adaptável ao formato e/ou B-DCT podem ser usadas de modo eficaz no particionamento geométrica com número adaptativo de regiões. A Figura 1 é uma ilustração que mostra um exemplo não limitador de um bloco residual (por exemplo, bloco atual) 100 de tamanho 64x64 ou 128x128 com particionamento geométrico em que há três segmentos, S0, S1 e S2 com diferentes erros de predição; embora três segmentos sejam ilustrados na Figura 1 para fins exemplificativos, um número maior ou menor de segmentos pode, alternativamente ou adicionalmente, ser empregado. O bloco atual pode ser particionado geometricamente de acordo com dois segmentos de linha (P1P2 e P3P4), que podem dividir o bloco atual nas três regiões S0, S1 e S2. Neste exemplo, S0 pode ter um erro de predição relativamente alto, enquanto S1 e S2 podem ter um erro de predição relativamente menor. Para o segmento S0 (também referido como região), o codificador pode selecionar e usar B-DCT para codificação residual. Para segmentos S1 e S2 com baixo erro de predição, o codificador pode selecionar e usar SA-DCT. A seleção da transformação de codificação residual pode ser baseada em um erro de previsão (por exemplo, tamanho do resíduo. Como o algoritmo SA-DCT é relativamente mais simples em termos de complexidade e não requer tantos cálculos quanto o B-DCT, utilizar SA-DCT para codificação residual de erro de predição inferior pode melhorar a complexidade e o desempenho de processamento para codificação e decodificação de vídeo.
[028] Consequentemente, e ainda se referindo à Figura 1, SA-DCT pode ser sinalizada como uma escolha de transformação adicional para DCT de bloco completo para segmentos com erros de predição baixos. O que é considerado erro baixo ou alto pode ser um parâmetro que pode ser definido no codificador e pode variar de acordo com a aplicação. Uma escolha de tipo de transformação pode ser sinalizada no fluxo de bits. Em um decodificador, o fluxo de bits pode ser analisado e, para um bloco atual dado, um resíduo pode ser decodificado usando um tipo de transformada sinalizado no fluxo de bits. Em algumas implementações, diversos coeficientes associados à transformação podem, alternativamente ou adicionalmente, ser sinalizados no fluxo de bits.
[029] Em mais detalhes, e continuando a se referir à Figura 1, o particionamento geométrico com um número adaptativo de regiões pode incluir técnicas para codificação e decodificação de vídeo nas quais um bloco retangular é adicionalmente dividido em duas ou mais regiões que podem ser não retangulares. Por exemplo, a FIG. 1 ilustra um exemplo não limitador de particionamento geométrico no nível do pixel com um número adaptativo de regiões. Um bloco retangular exemplificativo 100 (que pode ter uma largura de M pixels e uma altura de N pixels, denotado como MxN pixels) pode ser dividido ao longo de um segmento de linha P1P2 e P3P4 em três regiões (S0, S1 e S2). Quando os pixels em S0 têm movimento semelhante, um vetor de movimento pode descrever o movimento de todos os pixels naquela região; o vetor de movimento pode ser usado para compactar a região S0. Similarmente, quando os pixels na região S1 têm movimento semelhante, um vetor de movimento associado pode descrever o movimento dos pixels na região S1. Similarmente, quando os pixels na região S2 têm movimento semelhante, um vetor de movimento associado pode descrever o movimento dos pixels na região S2. Tal partição geométrica pode ser sinalizada para o receptor (por exemplo, decodificador) por meio da codificação das posições P1, P2, P3, P4 e/ou representações dessas posições, tal como, sem limitação, usando coordenadas como coordenadas polares, coordenadas cartesianas ou semelhantes, índices em modelos predefinidos ou outras designações das partições) em um fluxo de bits de vídeo.
[030] Ainda com referência à Figura 1, ao codificar dados de vídeo utilizando particionamento geométrico no nível do pixel, um segmento de linha P1P2 (ou mais especificamente os pontos P1 e P2) pode ser determinado. A fim de determinar o segmento de linha P1P2 (ou mais especificamente os pontos P1 e P2) que melhor divide o bloco ao utilizar o particionamento geométrico no nível do pixel, as combinações possíveis de pontos P1 e P2 dependem de M e N, que são a largura e altura do bloco. Para um bloco de tamanho MxN, existem (M-1) x (N-1) x 3 partições possíveis. Identificar a partição certa, portanto, pode se tornar uma tarefa computacionalmente cara de avaliar a estimativa de movimento para todas as partições possíveis, o que pode aumentar a quantidade de tempo e/ou poder de processamento necessário para codificar um vídeo em comparação com a codificação que usa particionamento retangular (por exemplo, sem particionamento geométrico no nível do pixel). O que constitui a melhor partição ou a correta pode ser determinado de acordo com uma métrica e pode mudar de implementação para implementação.
[031] Em algumas implementações, e ainda se referindo à Figura 1, o particionamento ocorre iterativamente em que uma primeira partição pode ser determinada (por exemplo, determinar a linha P1P2 e regiões associadas) formando duas regiões e, em seguida, uma dessas regiões é adicionalmente particionada. Por exemplo, o particionamento descrito com referência à Figura 1 pode ser executado para particionar um bloco em duas regiões. Uma dessas regiões pode ser adicionalmente particionada (por exemplo, para formar uma nova região S1 e região S2). O processo pode continuar a realizar o particionamento geométrico em nível de bloco até que um critério de parada seja alcançado.
[032] A Figura 2 é um diagrama de blocos de sistema que ilustra um codificador de vídeo exemplificativo 200 capaz de SA-DCT e/ou B-DCT para particionamento geométrico com um número adaptativo de regiões que podem melhorar a complexidade e desempenho de processamento para codificação e decodificação de vídeo. O codificador de vídeo exemplificativo 200 recebe um vídeo de entrada 205, que pode ser inicialmente segmentado ou dividindo de acordo com um esquema de processamento, como um esquema de particionamento de macro bloco estruturado em árvore (por exemplo, árvore quádrupla mais árvore binária). Um exemplo de um esquema de particionamento de macro bloco estruturado em árvore pode incluir particionamento de um quadro de imagem em grandes elementos de bloco chamados de unidades de árvore de codificação (CTU). Em algumas implementações, cada CTU pode ser adicionalmente particionada uma ou mais vezes em um número de subconjuntos chamados unidades de codificação (CU). O resultado final deste particionamento pode incluir um grupo de sub-blocos que podem ser chamados de unidades preditivas (PU). As unidades de transformação (TU) também podem ser utilizadas. Tal esquema de particionamento pode incluir a realização de particionamento geométrico com um número adaptativo de regiões de acordo com alguns aspectos da matéria atual.
[033] Com referência contínua à Figura 2, o codificador de vídeo exemplificativo 200 inclui um processador de intraprevisão 215, um processador de estimativa/ compensação de movimento 220 (também referido como um processador de interprevisão) capaz de suportar particionamento geométrico com um número adaptativo de regiões, um processador de transformação/quantização 225, um processador de quantização inversa/transformação inversa 230, um filtro em loop 235, um armazenamento temporário de imagem decodificada 240 e um processador de codificação de entropia 245. Em algumas implementações, o processador de estimativa/compensação de movimento 220 pode realizar particionamento geométrico. Parâmetros de fluxo de bits que sinalizam modos de particionamento geométrico podem ser inseridos no processador de codificação de entropia 245 para inclusão no fluxo de bits de saída 250.
[034] Em operação, e continuando a se referir à Figura 2, para cada bloco de um quadro do vídeo de entrada 205, processar o bloco através de previsão intraimagem ou usando estimativa/compensação de movimento pode ser determinado. O bloco pode ser fornecido para o processador de intraprevisão 210 para o processador de estimativa/ compensação de movimento 220. Se o bloco está para ser processado através de intraprevisão, o processador de intraprevisão 210 pode realizar o processamento para enviar o previsor. Se o bloco está para ser processado através de estimativa/compensação de movimento, o processador de estimativa/compensação de movimento 220 pode realizar o processamento incluindo o uso de particionamento geométrico para enviar o previsor.
[035] Ainda com referência à Figura 2, um resíduo pode ser formado ao subtrair o previsor do vídeo de entrada. O resíduo pode ser recebido pelo processador de transformação/quantização 225, que pode determinar se o erro de previsão (por exemplo, tamanho residual) é considerado erro "alto" ou "baixo" (por exemplo, comparando um tamanho ou métrica de erro do resíduo até um limite). Com base na determinação, o processador de transformação/quantização 225 pode selecionar um tipo de transformação, que pode incluir B-DCT e SA-DCT. Em algumas implementações, o processador de transformação/quantização 225 seleciona um tipo de transformação de B-DCT em que o resíduo é considerado por ter um erro alto e seleciona um tipo de transformação de SA-DCT em que o resíduo é considerado por ter um erro baixo. Com base no tipo de transformação selecionado, o processador de transformação/quantização 225 pode realizar processamento de transformação (por exemplo, SA-DCT ou B-DCT) para produzir coeficientes, que podem ser quantizados. Os coeficientes quantizados e quaisquer informações de sinalização associadas (que podem incluir o tipo de transformação selecionada e/ou o número de coeficientes usados) podem ser fornecidos ao processador de codificação de entropia 245 para codificação de entropia e inclusão no fluxo de bits de saída 250. O processador de codificação de entropia 245 pode suportar a codificação de informações de sinalização relacionadas a SA-DCT para particionamento geométrico com número adaptativo de regiões. Em adição, os coeficientes quantizados podem ser fornecidos ao processador de quantização inversa/ transformação inversa 230, que pode reproduzir pixels, que podem ser combinados com o previsor e processados pelo filtro em loop 235, no qual a saída é armazenada no armazenamento temporário de imagem decodificada 240 para uso pelo processador de estimativa/compensação de movimento 220 que é capaz de suportar particionamento geométrico com um número adaptativo de regiões.
[036] Com referência agora à Figura 3, um diagrama de fluxo de processos que ilustra um processo exemplificativo 300 de codificação de um vídeo com SA-DCT para particionamento geométrico com um número adaptativo de regiões que podem melhorar a complexidade e o desempenho de processamento para codificação e decodificação de vídeo é ilustrado. Na etapa 310, um quadro de vídeo pode sofrer segmentação de bloco inicial, por exemplo, usando um esquema de particionamento de macro bloco estruturado em árvore que pode incluir particionar um quadro de imagem em CTUs e CUs. Em 320, um bloco pode ser selecionado para particionamento geométrico. A seleção pode incluir a identificação de acordo com uma regra métrica de que um bloco deve ser processado de acordo com um modo de particionamento geométrico. Na etapa 330, um bloco selecionado pode ser particionado em três ou mais regiões não retangulares de acordo com o modo de particionamento geométrico.
[037] Na etapa 340, e ainda se referindo à Figura 3, um tipo de transformada (também referido como um tipo de transformação) para cada região particionada geometricamente pode ser determinado. Isso pode incluir determinar se um erro de previsão (por exemplo, tamanho residual) é considerado erro "alto" ou "baixo" (por exemplo, comparando um tamanho ou métrica de erro do resíduo a um limite). Com base na determinação, um tipo de transformação pode ser selecionado, por exemplo, usando um processo de árvore de decisão de árvore quádrupla mais binária conforme descrito abaixo, o qual o tipo de transformação pode incluir, sem limitação, B-DCT ou SA-DCT. Em algumas implementações, um tipo de transformação de B-DCT é selecionado em que o resíduo é considerado por ter um erro alto e um tipo de transformação de SA-DCT é selecionado em que o resíduo é considerado por ter um erro baixo. Com base no tipo de transformação selecionado, o processamento de transformação (por exemplo, SA-DCT ou B-DCT) pode ser realizado para produzir coeficientes, que podem ser quantizados.
[038] Na etapa 350, e continuando a se referir à Figura 3, um determinado tipo de transformação pode ser sinalizado no fluxo de bits. O resíduo transformado e quantizado pode ser incluído no fluxo de bits. Em algumas implementações, o número de coeficientes de transformação pode ser sinalizado no fluxo de bits.
[039] A Figura 4 é um diagrama de blocos de sistema que ilustra um exemplo não limitador de um decodificador 400 capaz de decodificar um fluxo de bits 470 usando DCT, incluindo, sem limitação, SA-DCT e/ou B-DCT, para particionamento geométrico com um número adaptativo de regiões, que pode melhorar a complexidade e o desempenho de processamento para codificação e decodificação de vídeo. O decodificador 400 inclui um processador decodificador de entropia 410, um processador de quantização inversa e transformação inversa 420, um filtro de desblocagem 430, um armazenamento temporário de quadro 440, processador de compensação de movimento 450 e processador de predição intra 460. Em algumas implementações, o fluxo de bits 470 inclui parâmetros que sinalizam um modo de particionamento geométrico e tipo de transformação. Em algumas implementações, o fluxo de bits 470 inclui parâmetros que sinalizam o número de coeficientes de transformação. O processador de compensação de movimento 450 pode reconstruir informações de pixels usando particionamento geométrico como descrito no presente documento.
[040] Em operação, e ainda se referindo à Figura 4, o fluxo de bits 470 pode ser recebido pelo decodificador 400 e enviado para o processador decodificador de entropia 410, que pode decodificar com entropia o fluxo de bits em coeficientes quantizados. Coeficientes quantizados podem ser fornecidos para quantização inversa e processador de transformação inversa 420, que pode determinar um tipo de transformação de codificação (por exemplo, B-DCT ou SA-DCT) e realizar quantização inversa e transformação inversa de acordo com o tipo de transformação de codificação determinado para criar um sinal residual. Em algumas implementações, o processador de quantização inversa e transformação inversa 420 pode determinar uma série de coeficientes de transformada e realizar transformação inversa de acordo com o número determinado de coeficientes de transformada.
[041] Ainda com referência à Figura 4, o sinal residual pode ser adicionado a uma saída do processador de compensação de movimento 450 ou processador de intraprevisão 460 de acordo com um modo de processamento. A saída de um processador de compensação de movimento 450 e processador de intraprevisão 460 pode incluir uma previsão de bloco com base em um bloco previamente decodificado. Uma soma da previsão e do resíduo pode ser processada por meio do filtro de desblocagem 430 e armazenada em um armazenamento temporário de quadro 440. Para um bloco dado, (por exemplo, CU ou PU), quando um fluxo de bits 470 sinaliza que um modo de particionamento é um particionamento geométrico de nível de bloco, o processador de compensação de movimento 450 pode construir uma previsão com base na abordagem de partição geométrica descrita no presente documento.
[042] A Figura 5 é um diagrama de fluxo de processos que ilustra um processo exemplificativo 500 de decodificação de um fluxo de bits usando SA-DCT para particionamento geométrico com um número adaptativo de regiões, o que pode melhorar a complexidade e o desempenho de processamento para codificação e decodificação de vídeo. Na etapa 510, um fluxo de bits é recebido, que pode incluir um bloco atual (por exemplo, UAT, CU, PU). Receber pode incluir a extrair e/ou processar o bloco atual e informações de sinalização associadas a partir do fluxo de bits. O decodificador pode extrair ou determinar um ou mais parâmetros que designam o particionamento geométrico. Esses parâmetros podem incluir, por exemplo, índices de um início e fim de um segmento de linha (por exemplo, P1, P2, P3, P4); extrair ou determinar pode incluir identificar e recuperar os parâmetros a partir do fluxo de bits (por exemplo, analisar o fluxo de bits).
[043] Na etapa 520, e ainda se referindo à Figura 5, uma primeira região, uma segunda região e uma terceira região do bloco atual podem ser determinadas e de acordo com um modo de particionamento geométrico. Determinar pode incluir determinar se o modo de particionamento geométrico está habilitado (por exemplo, verdadeiro) para o bloco atual. Se o modo de particionamento geométrico não estiver habilitado (por exemplo, falso), o decodificador pode processar o bloco atual usando um modo de particionamento alternativo. Se o modo de particionamento geométrico estiver habilitado (por exemplo,
verdadeiro), três ou mais regiões podem ser determinadas e/ou processadas.
[044] Na etapa opcional 530, e continuando a se referir à Figura 5, pode ser determinado um tipo de transformação de codificação. Um tipo de transformação pode ser sinalizado no fluxo de bits. Por exemplo, o fluxo de bits pode ser processado para determinar um tipo de transformação de codificação, que pode especificar B-DCT ou SA-DCT. O tipo de transformação de codificação determinado pode ser para decodificar uma primeira região, uma segunda região e/ou uma terceira região.
[045] Em 540, e ainda se referindo à Figura 5, um bloco atual pode ser decodificado. Decodificar o bloco atual pode incluir o uso de um determinado tipo de transformação para transformação inversa para cada uma dentre uma primeira região, uma segunda região e/ou uma terceira região. Decodificar pode incluir a determinar uma informação de movimento associada para cada região e de acordo com o modo de particionamento geométrico.
[046] Embora algumas variações tenham sido descritas em detalhe acima, outras modificações ou adições são possíveis. Por exemplo, o particionamento geométrico pode ser sinalizado no fluxo de bits com base em decisões de distorção de taxa no codificador. A codificação pode ser baseada em uma combinação de partições pré-definidas regulares (por exemplo, modelos), previsão temporal e espacial do particionamento e deslocamentos adicionais. Cada região geometricamente particionada pode utilizar a previsão compensada pelo movimento ou a previsão intraprevisão. O limite das regiões previstas pode ser suavizado antes do resíduo ser adicionado.
[047] Em algumas implementações, uma árvore de decisão quádrupla mais binária (QTBT) pode ser implementada. Na QTBT, no Nível da Unidade de Arvore de Codificação, os parâmetros de partição de QTBT são derivados dinamicamente para se adaptar às características locais sem transmitir qualquer sobrecarga. Subsequentemente, no Nível da Unidade de Codificação, uma estrutura de árvore de decisão do classificador conjunto pode eliminar iterações desnecessárias e controlar o risco de falsa previsão. Em algumas implementações, o particionamento geométrico com um número adaptativo de regiões pode estar disponível como uma opção de particionamento adicional disponível em cada nó de folha do QTBT.
[048] Em algumas implementações, um decodificador pode incluir um processador de partição que gera partição geométrica para um bloco atual e fornece todas as informações relacionadas à partição para processos dependentes. O processador de partição pode influenciar diretamente a compensação de movimento, pois pode ser realizada em segmentos no caso de um bloco ser particionado geometricamente. Adicionalmente, o processador de partição pode fornecer informações de formato para o processador de intraprevisão e processador de codificação de transformação.
[049] Em algumas implementações, elementos de sintaxe adicionais podem ser sinalizados em diferentes níveis de hierarquia do fluxo de bits. Para permitir o particionamento geométrico com um número adaptativo de regiões para uma sequência inteira, um sinalizador de habilitação pode ser convertido em código em um Conjunto de Parâmetros de Sequência (SPS). Adicionalmente, um sinalizador CTU pode ser convertido em código no nível da unidade de árvore de codificação (CTU) para indicar se quaisquer unidades de codificação (CU) usam particionamento geométrico com um número adaptativo de regiões. Um sinalizador de CU pode ser convertido em código para indicar se uma unidade de codificação atual utiliza particionamento geométrico com um número adaptativo de regiões. Os parâmetros que especificam um segmento de linha no bloco podem ser convertidos em código. Para cada região, um sinalizador pode ser decodificado, o que pode especificar se uma região atual é inter ou intraprevista.
[050] Em algumas implementações, um tamanho mínimo de região pode ser especificado.
[051] A matéria descrita no presente documento fornece muitas vantagens técnicas. Por exemplo, algumas implementações da matéria atual podem fornecer particionamento de blocos que reduz a complexidade enquanto aumenta a eficácia de compactação. Em algumas implementações, os artefatos de bloqueio nos limites do objeto podem ser reduzidos.
[052] Deve ser notado que qualquer um ou mais dentre os aspectos e modalidades descritos no presente documento podem ser convenientemente implementados usando circuitos eletrônicos digitais, circuitos integrados, circuitos integrados específicos de aplicação especialmente projetados (ASICs), matrizes de portas programáveis de campo (FPGAs), hardware de computador, firmware , software e/ou combinações dos mesmos, conforme realizado e/ou implementado em uma ou mais máquinas (por exemplo, , um ou mais dispositivos de computação que são utilizados como um dispositivo de computação de usuário para um documento eletrônico, um ou mais dispositivos de servidor, como um servidor de documentos, etc.) programados de acordo com os ensinamentos do presente relatório descritivo, como será evidente para aqueles de habilidade comum na arte da computação. Esses vários aspectos ou recursos podem incluir a implementação em um ou mais programas de computador e/ou software que são executáveis e/ou interpretáveis em um sistema programável, incluindo pelo menos um processador programável, que pode ser especial ou de propósito geral, acoplado para receber dados e instruções de e para transmitir dados e instruções para um sistema de armazenamento, pelo menos um dispositivo de entrada e pelo menos um dispositivo de saída. A codificação de software apropriada pode ser prontamente preparada por programadores versados com base nos ensinamentos da presente revelação, como será evidente para aqueles de habilidade comum na técnica do software. Aspectos e implementações discutidos acima que empregam software e/ou módulos de software também podem incluir hardware apropriado para auxiliar na implementação das instruções executáveis por máquina do software e/ou módulo de software.
[053] Esse software pode ser um produto de programa de computador que emprega uma mídia de armazenamento legível por máquina. Uma mídia de armazenamento legível por máquina pode ser qualquer mídia que seja capaz de armazenar e/ou codificar uma sequência de instruções para execução por uma máquina (por exemplo, um dispositivo de computação) e que faz com que a máquina execute qualquer uma das metodologias e/ou modalidades descritas no presente documento. Exemplos de uma mídia de armazenamento legível por máquina incluem, mas não estão limitados a, um disco magnético, um disco óptico (por exemplo, CD, CD-R, DVD, DVD-R, etc.), um disco magneto-óptico, um dispositivo "ROM" de memória somente leitura, um dispositivo "RAM" de memória de acesso aleatório, um cartão magnético, um cartão óptico, um dispositivo de memória de estado sólido, uma EPROM, uma EEPROM, Dispositivos Lógicos Programáveis ( PLDs) e/ou quaisquer combinações dos mesmos. Uma mídia legível por máquina, tal como usada no presente documento, tem a intenção de incluir uma mídia único, assim como uma coleção de mídia fisicamente separada, como, por exemplo, uma coleção de discos compactos ou uma ou mais unidades de disco rígido em combinação com uma memória de computador. Conforme usado no presente documento, uma mídia de armazenamento legível por máquina não inclui formas transitórias de transmissão de sinal.
[054] Tal software pode também incluir informações (por exemplo, dados) transportadas como um sinal de dados em uma portadora de dados, como uma onda portadora. Por exemplo, as informações executáveis por máquina podem ser incluídas como um sinal de transporte de dados incorporado em uma portadora de dados na qual o sinal codifica uma sequência de instrução, ou parte dela, para execução por uma máquina (por exemplo, um dispositivo de computação) e quaisquer informações relacionadas (por exemplo, estruturas de dados e dados) que fazem com que a máquina realize qualquer uma dentre as metodologias e/ou modalidades descritas no presente documento.
[055] Exemplos de um dispositivo de computação incluem, mas não estão limitados a, um dispositivo de leitura de livro eletrônico, uma estação de trabalho de computador, um computador terminal, um computador servidor, um dispositivo portátil (por exemplo, , um tablet, um smartphone, etc.), um utensílio da web, um roteador de rede, um comutador de rede, uma ponte de rede, qualquer máquina capaz de executar uma sequência de instruções que especificam uma ação a ser realizada por essa máquina e quaisquer combinações disso. Em um exemplo, um dispositivo de computação pode incluir e/ou ser incluído em um quiosque.
[056] A Figura 6 mostra uma representação diagramática de uma modalidade de um dispositivo de computação na forma exemplificativa de um sistema de computador 600 dentro do qual um conjunto de instruções para fazer com que um sistema de controle que realiza qualquer um ou mais dentre os aspectos e/ou metodologias da presente revelação possa ser executado. Também é contemplado que vários dispositivos de computação podem ser utilizados para implementar um conjunto especialmente configurado de instruções para fazer com que um ou mais dentre os dispositivos realizem qualquer um ou mais dentre os aspectos e/ou metodologias da presente revelação. O sistema de computador 600 inclui um processador 604 e uma memória 608 que se comunicam entre si e com outros componentes por meio de um barramento 612. O barramento 612 pode incluir qualquer um dos vários tipos de estruturas de barramento, incluindo, mas sem limitação a, um barramento de memória, um controlador de memória, um barramento periférico, um barramento local e quaisquer combinações dos mesmos, usando qualquer uma dentre uma variedade de arquiteturas de barramento.
[057] A memória 608 pode incluir vários componentes (por exemplo, mídia legível por máquina) incluindo, mas sem limitação a um componente de memória de acesso aleatório, um componente somente leitura e quaisquer combinações dos mesmos. Em um exemplo, um sistema básico de entrada/ saída 616 (BIOS), incluindo rotinas básicas que ajudam a transferir informações entre elementos dentro do sistema de computador 600, tal como durante a inicialização, pode ser armazenado na memória 608. A memória 608 também pode incluir (por exemplo, armazenados em uma ou mais mídias legíveis por máquina) instruções (por exemplo, software) 620 que incorporam qualquer um ou mais dentre os aspectos e/ou metodologias da presente divulgação. Em outro exemplo, a memória 608 pode incluir ainda qualquer número de módulos de programa, incluindo, mas sem limitação a um sistema operacional, um ou mais programas de aplicativo, outros módulos de programa, dados de programa e quaisquer combinações dos mesmos.
[058] O sistema de computador 600 também pode incluir um dispositivo de armazenamento 624. Exemplos de um dispositivo de armazenamento (por exemplo, dispositivo de armazenamento 624) incluem, mas não estão limitados a, uma unidade de disco rígido, uma unidade de disco magnético, uma unidade de disco óptico em combinação com um meio óptico, um dispositivo de memória de estado sólido e quaisquer combinações dos mesmos. O dispositivo de armazenamento 624 pode ser conectado ao barramento 612 por uma interface apropriada (não mostrada). Interfaces exemplificativas incluem, mas não estão limitadas a, SCSI, conexão de tecnologia avançada (ATA), ATA serial, barramento serial universal (USB), IEEE 1394 (FIREWIRE) e quaisquer combinações dos mesmos. Em um exemplo, o dispositivo de armazenamento 624 (ou um ou mais componentes do mesmo) pode ter interface removível com o sistema de computador 600 (por exemplo, através de um conector de porta externa (não mostrado)). Particularmente, o dispositivo de armazenamento 624 e uma mídia legível por máquina associada 628 podem fornecer armazenamento não volátil e/ou volátil de instruções legíveis por máquina, estruturas de dados, módulos de programa e/ou outros dados para o sistema de computador 600. Em um exemplo, o software 620 pode residir, completa ou parcialmente, dentro da mídia legível por máquina 628. Em outro exemplo, o software 620 pode residir, completa ou parcialmente, dentro do processador 604.
[059] O sistema de computador 600 também pode incluir um dispositivo de entrada 632. Em um exemplo, um usuário do sistema de computador 600 pode inserir comandos e/ou outras informações no sistema de computador 600 através do dispositivo de entrada 632. Exemplos de um dispositivo de entrada 632 incluem, mas não estão limitados a, um dispositivo de entrada alfanumérico
(por exemplo,, um teclado), um dispositivo apontador, um joystick, um gamepad, um dispositivo de entrada de áudio (por exemplo,, um microfone, um sistema de resposta de voz, etc.), um dispositivo de controle de cursor (por exemplo, um mouse), um touchpad, um scanner óptico, um dispositivo de captura de vídeo (por exemplo,, uma câmera fotográfica, uma câmera de vídeo), uma tela sensível ao toque e quaisquer combinações das mesmas. O dispositivo de entrada 632 pode ter interface feita com o barramento 612 por meio de qualquer uma de uma variedade de interfaces (não mostradas), incluindo, mas sem limitação a, uma interface serial, uma interface paralela, uma porta de jogo, uma interface USB, uma interface FIREWIRE, uma interface direta para o barramento 612 e quaisquer combinações dos mesmos. O dispositivo de entrada 632 pode incluir uma interface de tela de toque que pode ser uma parte ou separada do exibidor 636, discutido mais abaixo. O dispositivo de entrada 632 pode ser utilizado como um dispositivo de seleção de usuário para selecionar uma ou mais representações gráficas em uma interface gráfica, conforme descrito acima.
[060] Um usuário também pode inserir comandos e/ou outras informações para o sistema de computador 600 através do dispositivo de armazenamento 624 (por exemplo, uma unidade de disco removível, uma unidade flash, etc.) e/ou dispositivo de interface de rede 640. Um dispositivo de interface de rede, como o dispositivo de interface de rede 640, pode ser utilizado para conectar o sistema de computador 600 a uma ou mais dentre uma variedade de redes, como a rede 644 e um ou mais dispositivos remotos 648 conectados à mesma. Exemplos de um dispositivo de interface de rede incluem, mas não estão limitados a, uma placa de interface de rede (por exemplo, uma placa de interface de rede móvel, uma placa LAN), um modem e qualquer combinação dos mesmos. Exemplos de uma rede incluem, mas não estão limitados a, uma rede de longa distância (por exemplo,, a Internet, uma rede corporativa), uma rede local (por exemplo,, uma rede associada a um escritório, um edifício, um campus ou outro espaço geográfico relativamente pequeno), uma rede telefônica, uma rede de dados associada a um provedor de telefone/ voz (por exemplo,, um provedor de comunicações móveis de dados e/ou rede de voz), uma conexão direta entre dois dispositivos de computação e quaisquer combinações dos mesmos. Uma rede, como a rede 644, pode empregar um modo de comunicação com fio e/ou sem fio. Em geral, qualquer topologia de rede pode ser usada. Informações (por exemplo, dados, software 620, etc.) podem ser comunicados para e/ou a partir do sistema de computador 600 através do dispositivo de interface de rede 640.
[061] O sistema de computador 600 pode ainda incluir um adaptador de exibição de vídeo 652 para comunicar uma imagem exibível a um dispositivo de exibição, como o dispositivo de exibição 636. Exemplos de um dispositivo de exibição incluem, mas não estão limitados a, um exibidor de cristal líquido (LCD), um tubo de raios catódicos (CRT), um exibidor de plasma, um exibidor de diodo emissor de luz (LED) e quaisquer combinações dos mesmos. O adaptador de exibição 652 e o dispositivo de exibição 636 podem ser utilizados em combinação com o processador 604 para fornecer representações gráficas de aspectos da presente divulgação. Em adição a um dispositivo de exibição, o sistema de computador 600 pode incluir um ou mais outros dispositivos de saída periféricos incluindo, mas sem limitação a um alto-falante de áudio, uma impressora e quaisquer combinações dos mesmos. Tais dispositivos de saída periféricos podem ser conectados ao barramento 612 por meio de uma interface periférica 656. Exemplos de uma interface periférica incluem, mas não estão limitados a, uma porta serial, uma conexão USB, uma conexão FIREWIRE, uma conexão paralela e quaisquer combinações das mesmas.
[062] O que foi exposto acima foi uma descrição detalhada de modalidades ilustrativas da invenção. Várias modificações e adições podem ser feitas sem se afastar do espírito e do escopo desta invenção. Recursos de cada uma das várias modalidades descritas acima podem ser combinadas com recursos de outras modalidades descritas, conforme apropriado, a fim de fornecer uma multiplicidade de combinações de recursos em novas modalidades associadas. Adicionalmente, embora o que foi exposto acima descreva uma série de modalidades separadas, o que foi descrito no presente documento é meramente ilustrativo da aplicação dos princípios da presente invenção. Adicionalmente, embora métodos particulares no presente documento possam ser ilustrados e/ou descritos como sendo realizados em uma ordem específica, a ordem é altamente variável dentro da habilidade comum para alcançar modalidades conforme divulgadas no presente documento. Consequentemente, esta descrição deve ser tomada apenas a título exemplificativo e não para limitar de outra forma o âmbito desta invenção.
[063] Nas descrições acima e nas reivindicações, frases como "pelo menos um dentre" ou "um ou mais dentre" podem ocorrer seguidas por uma lista conjuntiva de elementos ou recursos. O termo " e/ou" também pode ocorrer em uma lista de dois ou mais elementos ou recursos. A menos que implícita de outra forma ou explicitamente contradita pelo contexto em que é usada, tal frase se destina a significar qualquer um dentre os elementos ou recursos listados individualmente ou qualquer um dentre os elementos ou recursos recitados em combinação com qualquer um dos outros elementos ou recursos recitados. Por exemplo, as frases "pelo menos um dentre A e B;" “Um ou mais dentre A e B;” e "A e/ou B" significam, cada um, "A sozinho, B sozinho ou A e B juntos." Uma interpretação similar também se destina a listas que incluem três ou mais itens. Por exemplo, as frases "pelo menos um dentre A, B e C;" “Um ou mais dentre A, B e C;” e "A, B e/ou C" significam, cada um, "A sozinho, B sozinho, C sozinho, A e B juntos, A e C juntos, B e C juntos, ou A e B e C juntos." Em adição, o uso do termo "com base em", acima e nas reivindicações, tem a intenção de significar "com base pelo menos em parte em", de modo que um recurso ou elemento não recitado também seja permitido.
[064] A matéria descrita no presente documento pode ser incorporada em sistemas, aparelhos, métodos e/ou artigos, dependendo da configuração desejada. As implementações estabelecidas na descrição anterior não representam todas as implementações consistentes com a matéria descrita no presente documento. Em vez disso, são apenas alguns exemplos consistentes com aspectos relacionados a matéria descrita. Embora algumas variações tenham sido descritas em detalhe acima, outras modificações ou adições são possíveis.
Em particular, outros recursos e/ou variações podem ser fornecidos em adição a aqueles aqui estabelecidos.
Por exemplo, as implementações descritas acima podem ser direcionadas a várias combinações e subcombinações dos recursos revelados e/ou combinações e subcombinações de vários recursos adicionais divulgados acima.
Em adição, os fluxos lógicos representados nas figuras anexas e/ou descritos no presente documento não requerem necessariamente a ordem particular mostrada, ou ordem sequencial, para atingir os resultados desejáveis.
Outras implementações podem estar dentro do escopo das seguintes reivindicações.

Claims (36)

REIVINDICAÇÕES
1. DECODIFICADOR, sendo que o decodificador é caracterizado pelo fato de que compreende circuitos configurados para: receber um fluxo de bits; determinar uma primeira região, uma segunda região e uma terceira região de um bloco atual de acordo com um modo de particionamento geométrico; e decodificar o bloco atual usando uma transformação de cosseno discreta inversa para cada uma dentre a primeira região, segunda região e terceira região.
2. DECODIFICADOR, de acordo com a reivindicação 1, caracterizado pelo fato de que o bloco atual tem um tamanho de 128 x 128 ou 64 x 64.
3. DECODIFICADOR, de acordo com a reivindicação 1, caracterizado pelo fato de que diversos coeficientes para transformação inversa da primeira região, da segunda região e/ou da terceira são sinalizados no fluxo de bits.
4. DECODIFICADOR, de acordo com a reivindicação 1, caracterizado pelo fato de que é configurado adicionalmente para: determinar se o modo de particionamento geométrico está habilitado; determinar um primeiro segmento de linha para o bloco atual; e determinar um segundo segmento de linha para o bloco atual; em que: a decodificação do bloco atual inclui reconstruir dados de pixel usando o primeiro segmento de linha e o segundo segmento de linha; e o primeiro segmento de linha e o segundo segmento de linha particionam o bloco atual na primeira região, na segunda região e na terceira região.
5. DECODIFICADOR, de acordo com a reivindicação 4, caracterizado pelo fato de que o primeiro segmento de linha designa a primeira região e o segundo segmento de linha designa a segunda região e a terceira região.
6. DECODIFICADOR, de acordo com a reivindicação 4, caracterizado pelo fato de que reconstruir dados de pixel inclui computar um previsor para a primeira região usando um vetor de movimento associado contido no fluxo de bits.
7. DECODIFICADOR, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende adicionalmente: um processador decodificador de entropia configurado para receber o fluxo de bits e decodificar o fluxo de bits em coeficientes quantizados; um processador de quantização inversa e transformação inversa configurado para processar os coeficientes quantizados incluindo a realização de um cosseno discreto inverso de acordo com o tipo de transformação de codificação determinado; um filtro de desblocagem; um armazenamento temporário de quadro; um processador de intraprevisão.
8. DECODIFICADOR, de acordo com a reivindicação 1, caracterizado pelo fato de que o fluxo de bits inclui um parâmetro que indica se o modo de particionamento geométrico está habilitado para o bloco atual.
9. DECODIFICADOR, de acordo com a reivindicação 1, caracterizado pelo fato de que o bloco atual faz parte de uma árvore de decisão quádrupla mais binária.
10. DECODIFICADOR, de acordo com a reivindicação 1, caracterizado pelo fato de que o bloco atual é um nó não folha da árvore de decisão quádrupla mais binária.
11. DECODIFICADOR, de acordo com a reivindicação 1, caracterizado pelo fato de que o bloco atual é uma unidade de árvore de codificação ou uma unidade de codificação.
12. DECODIFICADOR, de acordo com a reivindicação 1, caracterizado pelo fato de que a primeira região é uma unidade de codificação ou uma unidade de previsão.
13. DECODIFICADOR, sendo que o decodificador é caracterizado pelo fato de que compreende circuitos configurados para: receber um fluxo de bits; determinar uma primeira região, uma segunda região e uma terceira região de um bloco atual de acordo com um modo de particionamento geométrico; determinar, a partir de um sinal contido no fluxo de bits, um tipo de transformação de codificação para decodificar cada um dentre a primeira região, a segunda região e/ou a terceira região, o tipo de transformação de codificação que designa pelo menos uma transformação de cosseno discreta de bloco inverso e uma transformação de cosseno discreta adaptativa de formato inverso; e decodificar o bloco atual, sendo que a decodificação do bloco atual inclui o uso do tipo de transformação determinado para transformação inversa para cada uma dentre a primeira região, segunda região e/ou terceira região.
14. DECODIFICADOR, de acordo com a reivindicação 13, caracterizado pelo fato de que o bloco atual tem um tamanho de 128 x 128 ou 64 x 64.
15. DECODIFICADOR, de acordo com a reivindicação 13, caracterizado pelo fato de que diversos coeficientes para transformação inversa da primeira região, da segunda região e/ou da terceira são sinalizados no fluxo de bits.
16. DECODIFICADOR, de acordo com a reivindicação 13, caracterizado pelo fato de que é configurado adicionalmente para: determinar se o modo de particionamento geométrico está habilitado; determinar um primeiro segmento de linha para o bloco atual; e determinar um segundo segmento de linha para o bloco atual; em que: a decodificação do bloco atual inclui reconstruir dados de pixel usando o primeiro segmento de linha e o segundo segmento de linha; e o primeiro segmento de linha e o segundo segmento de linha particionam o bloco atual na primeira região, na segunda região e na terceira região.
17. DECODIFICADOR, de acordo com a reivindicação 16, caracterizado pelo fato de que o primeiro segmento de linha designa a primeira região e o segundo segmento de linha designa a segunda região e a terceira região.
18. DECODIFICADOR, de acordo com a reivindicação 16, caracterizado pelo fato de que reconstruir dados de pixel inclui computar um previsor para a primeira região usando um vetor de movimento associado contido no fluxo de bits.
19. DECODIFICADOR, de acordo com a reivindicação 13, caracterizado pelo fato de que compreende adicionalmente: um processador decodificador de entropia configurado para receber o fluxo de bits e decodificar o fluxo de bits em coeficientes quantizados; um processador de quantização inversa e transformação inversa configurado para processar os coeficientes quantizados incluindo a realização de um cosseno discreto inverso de acordo com o tipo de transformação de codificação determinado; um filtro de desblocagem; um armazenamento temporário de quadro; um processador de intraprevisão.
20. DECODIFICADOR, de acordo com a reivindicação 13, caracterizado pelo fato de que o fluxo de bits inclui um parâmetro que indica se o modo de particionamento geométrico está habilitado para o bloco atual.
21. DECODIFICADOR, de acordo com a reivindicação 13, caracterizado pelo fato de que o bloco atual faz parte de uma árvore de decisão quádrupla mais binária
22. DECODIFICADOR, de acordo com a reivindicação 13, caracterizado pelo fato de que o bloco atual é um nó não folha da árvore de decisão quádrupla mais binária.
23. DECODIFICADOR, de acordo com a reivindicação 13, caracterizado pelo fato de que o bloco atual é uma unidade de árvore de codificação ou uma unidade de codificação.
24. DECODIFICADOR, de acordo com a reivindicação 13, caracterizado pelo fato de que a primeira região é uma unidade de codificação ou uma unidade de previsão.
25. MÉTODO caracterizado pelo fato de que compreende: receber, por um decodificador, um fluxo de bits;
determinar uma primeira região, uma segunda região e uma terceira região de um bloco atual de acordo com um modo de particionamento geométrico; determinar, a partir de um sinal contido no fluxo de bits, um tipo de transformação de codificação para decodificar a primeira região, a segunda região e/ou a terceira região, o tipo de transformação de codificação que designa pelo menos uma transformação de cosseno discreta de bloco inverso ou uma transformação de cosseno discreta adaptativa de formato inverso; e decodificar o bloco atual, sendo que a decodificação do bloco atual inclui o uso do tipo de transformação determinado para transformação inversa para cada uma dentre a primeira região, segunda região e/ou terceira região.
26. MÉTODO, de acordo com a reivindicação 25, caracterizado pelo fato de que o bloco atual tem um tamanho de 128 x 128 ou 64 x 64.
27. MÉTODO, de acordo com a reivindicação 25, caracterizado pelo fato de que uma série de coeficientes para a transformação inversa da primeira região, da segunda região e/ou da terceira é sinalizada no fluxo de bits.
28. MÉTODO, de acordo com a reivindicação 25, caracterizado pelo fato de que compreende adicionalmente: determinar, por meio do decodificador, se o modo de particionamento geométrico está habilitado; determinar, por meio do decodificador, um primeiro segmento de linha para o bloco atual; e determinar, por meio do decodificador, um segundo segmento linha para o bloco atual; e em que: a decodificação do bloco atual inclui reconstruir dados de pixel usando o primeiro segmento de linha e o segundo segmento de linha; e o primeiro segmento de linha e o segundo segmento de linha particionam o bloco atual na primeira região, na segunda região e na terceira região.
29. MÉTODO, de acordo com a reivindicação 28, caracterizado pelo fato de que o primeiro segmento de linha designa a primeira região e o segundo segmento de linha designa a segunda região e a terceira região.
30. MÉTODO, de acordo com a reivindicação 28, caracterizado pelo fato de que reconstruir dados de pixel inclui computar um previsor para a primeira região usando um vetor de movimento associado contido no fluxo de bits.
31. MÉTODO, de acordo com a reivindicação 25, caracterizado pelo fato de que o decodificador compreende: um processador decodificador de entropia configurado para receber o fluxo de bits e decodificar o fluxo de bits em coeficientes quantizados; um processador de quantização inversa e transformação inversa configurado para processar os coeficientes quantizados incluindo a realização de um cosseno discreto inverso de acordo com o tipo de transformação de codificação determinado; um filtro de desblocagem; um armazenamento temporário de quadro; um processador de intraprevisão.
32. MÉTODO, de acordo com a reivindicação 25, caracterizado pelo fato de que o fluxo de bits inclui um parâmetro que indica se o modo de particionamento geométrico de nível de bloco está habilitado para o bloco.
33. MÉTODO, de acordo com a reivindicação 25, caracterizado pelo fato de que o bloco atual faz parte de uma árvore de decisão quádrupla mais binária.
34. MÉTODO, de acordo com a reivindicação 25, caracterizado pelo fato de que o bloco atual é um nó não folha da árvore de decisão quádrupla mais binária.
35. MÉTODO, de acordo com a reivindicação 25, caracterizado pelo fato de que o bloco atual é uma unidade de árvore de codificação ou uma unidade de codificação.
36. MÉTODO, de acordo com a reivindicação 25, caracterizado pelo fato de que a primeira região é uma unidade de codificação ou uma unidade de previsão.
BR112021014671-7A 2019-01-28 2020-01-28 Transformada discreta de cosseno de formato adaptativo para particionamento geométrico com um número adaptativo de regiões BR112021014671A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962797799P 2019-01-28 2019-01-28
US62/797,799 2019-01-28
PCT/US2020/015401 WO2020159982A1 (en) 2019-01-28 2020-01-28 Shape adaptive discrete cosine transform for geometric partitioning with an adaptive number of regions

Publications (1)

Publication Number Publication Date
BR112021014671A2 true BR112021014671A2 (pt) 2021-09-28

Family

ID=71840394

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112021014671-7A BR112021014671A2 (pt) 2019-01-28 2020-01-28 Transformada discreta de cosseno de formato adaptativo para particionamento geométrico com um número adaptativo de regiões

Country Status (9)

Country Link
US (1) US20210360246A1 (pt)
EP (1) EP3918784A4 (pt)
JP (1) JP7482536B2 (pt)
KR (1) KR20210118166A (pt)
CN (1) CN113597757A (pt)
BR (1) BR112021014671A2 (pt)
MX (1) MX2021009030A (pt)
SG (1) SG11202107974YA (pt)
WO (1) WO2020159982A1 (pt)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10733766B2 (en) * 2016-10-19 2020-08-04 Google, Llc Methods and apparatus to encode and/or decode normals of geometric representations of surfaces
US11323748B2 (en) * 2018-12-19 2022-05-03 Qualcomm Incorporated Tree-based transform unit (TU) partition for video coding
US11876973B2 (en) * 2021-04-12 2024-01-16 Alibaba (China) Co., Ltd. Method, apparatus, and non-transitory computer-readable storage medium for motion vector refinement for geometric partition mode
WO2023195762A1 (ko) * 2022-04-05 2023-10-12 한국전자통신연구원 영상 부호화/복호화를 위한 방법, 장치 및 기록 매체

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19719383A1 (de) * 1997-05-07 1998-11-19 Siemens Ag Verfahren und Vorrichtung zur Codierung und Decodierung eines digitalisierten Bildes
JP4313710B2 (ja) * 2004-03-25 2009-08-12 パナソニック株式会社 画像符号化方法および画像復号化方法
US8879632B2 (en) * 2010-02-18 2014-11-04 Qualcomm Incorporated Fixed point implementation for geometric motion partitioning
US9747255B2 (en) * 2011-05-13 2017-08-29 Texas Instruments Incorporated Inverse transformation using pruning for video coding
JP5986639B2 (ja) * 2011-11-03 2016-09-06 トムソン ライセンシングThomson Licensing 画像精緻化に基づくビデオ符号化及び復号化
EP4161078A1 (en) * 2011-11-11 2023-04-05 GE Video Compression, LLC Effective wedgelet partition coding using spatial prediction
US20130287109A1 (en) * 2012-04-29 2013-10-31 Qualcomm Incorporated Inter-layer prediction through texture segmentation for video coding
EP4216547A1 (en) * 2012-06-29 2023-07-26 Electronics And Telecommunications Research Institute Method for encoding/decoding images
JP6055555B2 (ja) * 2012-11-13 2016-12-27 インテル コーポレイション 次世代ビデオのためのビデオコーデックアーキテクチャ
US10477232B2 (en) * 2014-03-21 2019-11-12 Qualcomm Incorporated Search region determination for intra block copy in video coding
CN109416718B (zh) * 2015-12-24 2023-05-12 英特尔公司 云数据中心中应用容器的可信部署
CN110249628B (zh) * 2017-02-06 2021-08-20 华为技术有限公司 用于预测分区的视频编码器和解码器
EP3716622A4 (en) * 2017-11-24 2020-09-30 Sony Corporation IMAGE PROCESSING DEVICE AND METHOD
WO2019111316A1 (ja) * 2017-12-05 2019-06-13 株式会社ソシオネクスト 符号化方法、復号方法、符号化装置、復号装置、符号化プログラム及び復号プログラム
EP3811611A4 (en) * 2018-06-22 2022-06-15 OP Solutions, LLC BLOCK LEVEL GEOMETRIC PARTITIONING
BR112021014788A2 (pt) * 2019-01-28 2021-09-28 Op Solutions, Llc Interpredição em divisão geométrica com um número adaptativo de regiões

Also Published As

Publication number Publication date
CN113597757A (zh) 2021-11-02
SG11202107974YA (en) 2021-08-30
WO2020159982A1 (en) 2020-08-06
JP7482536B2 (ja) 2024-05-14
JP2022524916A (ja) 2022-05-11
EP3918784A1 (en) 2021-12-08
US20210360246A1 (en) 2021-11-18
EP3918784A4 (en) 2022-04-13
MX2021009030A (es) 2021-10-13
KR20210118166A (ko) 2021-09-29

Similar Documents

Publication Publication Date Title
BR122021011274B1 (pt) Método e aparelho de decodificação de imagem, método e aparelho de codificação de imagem e mídias de armazenamento não transitória legíveis por computador
BR112021014671A2 (pt) Transformada discreta de cosseno de formato adaptativo para particionamento geométrico com um número adaptativo de regiões
BR112016027428B1 (pt) Inicialização de paleta de preditor em codificação de vídeo com base em paleta
BR112014009431B1 (pt) Método para codificar dados de vídeo, aparelho para codificar vídeo e memória legível por computador
BR112021014667A2 (pt) Interprevisão em particionamento exponencial
US11451810B2 (en) Merge candidate reorder based on global motion vector
US11695922B2 (en) Inter prediction in geometric partitioning with an adaptive number of regions
US20230239464A1 (en) Video processing method with partial picture replacement
KR20220002991A (ko) 글로벌 모션을 갖는 프레임들에서의 적응적 모션 벡터 예측 후보들
US11812044B2 (en) Signaling of global motion relative to available reference frames
US11985318B2 (en) Encoding video with extended long term reference picture retention
US11595652B2 (en) Explicit signaling of extended long term reference picture retention
BR112021014753A2 (pt) Sinalização explícita de retenção de figuração de referência de longo prazo estendida