BR112021012462A2 - Dispositivo e método de codificação de vídeo - Google Patents

Dispositivo e método de codificação de vídeo Download PDF

Info

Publication number
BR112021012462A2
BR112021012462A2 BR112021012462-4A BR112021012462A BR112021012462A2 BR 112021012462 A2 BR112021012462 A2 BR 112021012462A2 BR 112021012462 A BR112021012462 A BR 112021012462A BR 112021012462 A2 BR112021012462 A2 BR 112021012462A2
Authority
BR
Brazil
Prior art keywords
hmvp
list
candidate
motion
prediction
Prior art date
Application number
BR112021012462-4A
Other languages
English (en)
Inventor
Xiaoyu Xiu
Yuwen He
Jiancong Luo
Original Assignee
Vid Scale, Inc.
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 Vid Scale, Inc. filed Critical Vid Scale, Inc.
Publication of BR112021012462A2 publication Critical patent/BR112021012462A2/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/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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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

Landscapes

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

Abstract

dispositivo, e, método. a presente invenção se refere a sistemas, métodos e instrumentalidades para o processamento de predição de vetor de movimento com base em histórico (pvh). um dispositivo de codificação de vídeo pode gerar uma lista de predição de vetor de movimento com base em histórico (hmvp - history-based motion vector prediction) para um bloco atual. o dispositivo de codificação de vídeo deriva uma candidata a hmvp de um bloco codificado previamente. a candidata a hmvp pode incluir informações de movimento associadas a um bloco vizinho do bloco atual, um ou mais índices de referência e um índice de peso de bipredição. o dispositivo de codificação de vídeo pode adicionar a candidata a hmvp à lista de hmvp para predição com compensação de movimento de um vetor de movimento associado ao bloco atual; o dispositivo de codificação de vídeo usa uma hmvp selecionada da lista de hmvp para realizar a predição com compensação de movimento do bloco atual. a predição com compensação de movimento pode ser realizada usando as informações de movimento associadas ao bloco vizinho do bloco atual, o um ou mais índices de referência e o índice de peso de bipredição.

Description

1 / 46 DISPOSITIVO, E, MÉTODO
REFERÊNCIA CRUZADA A PEDIDOS DE DEPÓSITO CORRELATOS
[001] Este pedido reivindica o benefício do pedido de patente provisório US n° 62/786.429, depositado em 29 de dezembro de 2018, cujo conteúdo está aqui incorporado, por referência, em sua totalidade.
ANTECEDENTES
[002] Sistemas de codificação de vídeo são amplamente usados para comprimir sinais de vídeo digital para reduzir a necessidade de armazenamento e/ou largura de banda de transmissão de tais sinais. Entre os vários tipos de sistemas de codificação de vídeo, como sistemas baseados em blocos, baseados em ondeletas e baseados em objetos, os sistemas de codificação de vídeo híbridos baseados em blocos são amplamente usados e implantados. Várias técnicas de codificação de vídeo incluindo, por exemplo, predição de vetor de movimento com base em histórico podem ser usadas para executar a codificação de vídeo. A interação potencial das técnicas de codificação de vídeo com outras ferramentas de codificação em um padrão de codificação de vídeo pode não ser usada. Isso pode resultar em queda significativa no desempenho de codificação das técnicas de codificação de vídeo.
SUMÁRIO
[003] A presente invenção se refere a sistemas, métodos e instrumentalidades para o processamento de predição de vetor de movimento com base em histórico (HMVP). Um dispositivo de codificação de vídeo pode gerar uma lista de HMVP para um bloco atual. O dispositivo de codificação de vídeo pode derivar uma candidata a HMVP de um bloco codificado previamente. A candidata a HMVP pode incluir informações de movimento associadas a um bloco codificado anteriormente (por exemplo, um bloco vizinho do bloco atual), um ou mais índices de referência e um índice de peso de bipredição. As informações de movimento podem incluir ao menos um ou
2 / 46 mais vetores de movimento. O índice de peso de bipredição pode incluir um ou mais índices de peso associados ao bloco vizinho. Um ou mais pesos podem ser aplicados a um sinal de predição que é gerado mediante a execução da predição com compensação de movimento do bloco atual.
[004] O dispositivo de codificação de vídeo pode adicionar a candidata a HMVP à lista de HMVP para predição com compensação de movimento de um vetor de movimento associado ao bloco atual; O dispositivo de codificação de vídeo pode usar uma HMVP selecionada da lista de HMVP para realizar a predição com compensação de movimento do bloco atual. A predição com compensação de movimento pode ser realizada usando as informações de movimento associadas ao bloco vizinho do bloco atual, o um ou mais índices de referência e o índice de peso de bipredição.
[005] O dispositivo de codificação de vídeo pode executar a remoção determinando se a candidata a HMVP é idêntica a uma HMVP na lista de HMVP do bloco atual. Se a candidata a HMVP for idêntica a qualquer uma das HMVPs na lista de HMVP, o dispositivo de codificação de vídeo pode remover a HMVP da lista de HMVP. O dispositivo de codificação de vídeo pode adicionar a candidata a HMVP ao final da lista de HMVP. O dispositivo de codificação de vídeo pode mover adiante uma posição uma ou mais HMVPs após a HMVP removida na lista de HMVP. Em um exemplo, a candidata a HMVP pode ser considerada idêntica a uma HMVP na lista de HMVP se a candidata a HMVP e a HMVP na lista de HMVP tiverem os mesmos vetores de movimento e os mesmos índices de referência. Em um exemplo, a candidata a HMVP pode ser considerada idêntica a uma HMVP na lista de HMVP se a candidata a HMVP e a HMVP na lista de HMVP tiverem os mesmos vetores de movimento, os mesmos índices de referência e os mesmos pesos de bipredição generalizada (GBi) ou bipredição com pesos no nível da unidade de codificação (BCW).
[006] Se a candidata a HMVP não for idêntica a nenhuma das
3 / 46 HMVPs na lista de HMVP, o dispositivo de codificação de vídeo pode remover a entrada de HMVP mais antiga da lista de HMVP, por exemplo, se a lista de HMVP estiver cheia. O dispositivo de codificação de vídeo pode adicionar a candidata a HMVP ao final da lista de HMVP. O dispositivo de codificação de vídeo pode redefinir uma lista de HMVP quando a codificação de uma nova linha de unidade de árvore de codificação (CTU) é iniciada.
BREVE DESCRIÇÃO DOS DESENHOS
[007] A Figura 1 ilustra um diagrama exemplificador de um codificador de vídeo com base em blocos.
[008] A Figura 2 ilustra partições de bloco exemplificadoras em uma estrutura de árvore de múltiplos tipos.
[009] A Figura 3 ilustra um diagrama exemplificador de um decodificador de vídeo com base em blocos.
[0010] A Figura 4 ilustra um procedimento de codificação de predição de vetor de movimento com base em histórico (HMVP) exemplificador.
[0011] A Figura 5 ilustra um exemplo de uma predição com compensação de movimento baseada em partição triangular diagonal e um exemplo de uma predição com compensação de movimento baseada em partição triangular diagonal inversa.
[0012] A Figura 6 ilustra um exemplo de geração dos vetores de movimento (VMs) de unipredição, por exemplo, em modo triangular.
[0013] A Figura 7 ilustra um fluxograma exemplificador para gerar uma lista de VM de unipredição com base em um ou mais candidatos a integração.
[0014] A Figura 8A ilustra um exemplo de adição de uma candidata a HMVP a uma lista de HMVP considerando o peso de GBi.
[0015] A Figura 8B ilustra um exemplo de adição de uma candidata a HMVP a uma lista de HMVP usando o esquema de primeiro a entrar, primeiro a sair (FIFO - first-in-first-out).
4 / 46
[0016] A Figura 9 ilustra um exemplo de adição de uma candidata a HMVP a uma lista de HMVP.
[0017] A Figura 10 ilustra um fluxograma exemplificador para gerar uma lista de VM de unipredição para modo triangular com base em candidatos espaciais/temporais e candidatas a HMVP.
[0018] A Figura 11 ilustra um fluxograma exemplificador para gerar uma lista de VM de unipredição para modo triangular com base na intercalação dos VMs de unipredição de candidatos espaciais/temporais e candidatas a HMVP.
[0019] A Figura 12A é um diagrama de sistema de um sistema de comunicação exemplificador no qual uma ou mais modalidades reveladas podem ser implementadas.
[0020] A Figura 12B é um diagrama de sistema de uma unidade de transmissão/recepção sem fio (WTRU - wireless transmit/receive unit) exemplificadora que pode ser usada no sistema de comunicação ilustrado na Figura 12A.
[0021] A Figura 12C é um diagrama de sistema de uma rede de acesso por rádio (RAN - radio access network) exemplificadora e uma rede principal (CN - core network) exemplificadora que podem ser usadas no sistema de comunicação ilustrado na Figura 12A.
[0022] A Figura 12D é um diagrama de sistema de uma RAN adicional exemplificadora e uma CN adicional exemplificadora que podem ser usadas no sistema de comunicação ilustrado na Figura 12A.
DESCRIÇÃO DETALHADA
[0023] Uma descrição detalhada das modalidades ilustrativas será agora descrita com referência às várias Figuras. Embora esta descrição forneça um exemplo detalhado de possíveis implementações, deve-se notar que os detalhes se destinam a ser exemplificadores e de forma alguma limitam o escopo do pedido.
5 / 46
[0024] Um ou mais dispositivos de codificação de vídeo em um sistema de codificação de vídeo podem comprimir sinais de vídeo digital, por exemplo, para reduzir o espaço de armazenamento e/ou largura de banda de transmissão associados ao armazenamento e/ou fornecimento de tais sinais. Um dispositivo de codificação de vídeo pode ser baseado em uma estrutura de codificação de vídeo híbrida baseada em blocos. Uma estrutura de particionamento de blocos baseada em árvore de múltiplos tipos pode ser empregada. Um ou mais dos módulos de codificação, por exemplo, um módulo intrapreditivo, um módulo interpreditivo, um módulo de transformada/transformada inversa e um módulo de quantificação/desquantificação podem ser incluídos. O dispositivo de codificação de vídeo pode incluir filtros em circuito.
[0025] O dispositivo de codificação de vídeo pode incluir uma ou mais ferramentas de codificação que podem fornecer maior eficiência de codificação e complexidade de implementação moderada. As ferramentas de codificação podem incluir um ou mais dentre os seguintes: modelo de movimento afim, predição de vetor de movimento temporal alternativo (ATMVP), vetor de movimento inteiro (VMI), bipredição generalizada (GBi) ou bipredição com pesos no nível de UC (BCW), fluxo óptico bidirecional (BDOF), intrapredição/integração combinadas, integração com diferença de vetor de movimento (MMVD), candidato a integração média em pares, interpredição triangular para intercodificação; modelo linear entre componentes (CCLM), intrapredição de múltiplas linhas, referência de imagem atual (RCP) para intrapredição; transformada múltipla aprimorada (EMT), quantificação dependente para codificação de transformada e quantificação, e filtragem de circuito adaptável (ALF) para filtros em circuito.
[0026] Um sistema de codificação de vídeo baseado em blocos exemplificador pode incluir uma estrutura de codificação de vídeo híbrida baseada em blocos. A Figura 1 ilustra um diagrama de blocos exemplificador
6 / 46 de um sistema de codificação de vídeo híbrido baseado em blocos. Como ilustrado na Figura 1, o sinal de vídeo de entrada 1002 pode ser processado bloco por bloco. Tamanhos de bloco estendidos (por exemplo, chamados de uma unidade de codificação ou UC) podem ser usados para comprimir sinais de vídeo de alta resolução (por exemplo, de 1080p e/ou mais). Uma UC pode incluir tamanhos de até 128x128 pixels. Os blocos podem ser particionados com base em árvores quaternárias. Uma unidade de árvore de codificação (CTU) pode ser dividida em UCs para se adaptar às características locais variáveis com base na árvore binária/ternária/quaternária. Uma UC pode ou não ser particionada em unidades de predição (UPs), para as quais predições separadas podem ser aplicadas. Uma UC pode ser usada (por exemplo, pode sempre ser usada) como a unidade básica para predição e transformada sem partições adicionais. Em uma estrutura de árvore de múltiplos tipos, uma (por exemplo, uma única) CTU pode ser particionada (por exemplo, pode ser primeiramente particionada) por uma estrutura de árvore quaternária. Um nó de folha da árvore quaternária (por exemplo, cada nó principal da árvore quaternária) pode ser adicionalmente particionado por uma estrutura de árvore binária e ternária. Conforme ilustrado na Figura 2, pode haver um ou mais (por exemplo, cinco) tipos de divisão incluindo, por exemplo, particionamento quaternário, particionamento binário horizontal, particionamento binário vertical, particionamento ternário horizontal e particionamento ternário vertical.
[0027] Com referência à Figura 1, um bloco de vídeo de entrada (por exemplo, um macrobloco (MB) e/ou uma UC), a predição espacial 1060 e/ou a predição temporal 1062 pode ser executada. A predição espacial 1060 (ou intrapredição) pode usar pixels de amostras de blocos vizinhos codificados (por exemplo, amostras de referência) na mesma imagem/fatia de vídeo para predizer o bloco de vídeo atual. A predição espacial 1060 pode reduzir a redundância espacial, por exemplo, que pode ser inerente ao sinal de vídeo. A
7 / 46 predição de movimento 1062 (por exemplo, interpredição e/ou predição temporal) pode usar pixels reconstruídos a partir das imagens de vídeo codificadas, por exemplo, para predizer o bloco de vídeo atual. A predição de movimento 1062 pode reduzir a redundância temporal, por exemplo, que pode ser inerente ao sinal de vídeo. Os sinais de predição de movimento (por exemplo, um sinal de predição temporal) para um bloco de vídeo (por exemplo, uma UC) podem ser sinalizados por um ou mais vetores de movimento (VMs). Os VMs podem indicar a intensidade e/ou a direção do movimento entre o bloco atual e/ou o bloco de referência do bloco atual ou sua referência temporal. Se múltiplas imagens de referência forem suportadas para um (por exemplo, cada) bloco de vídeo, o índice de imagem de referência do bloco de vídeo pode ser enviado por um codificador. O índice de imagem de referência pode ser usado para identificar a partir de qual imagem de referência em um armazenamento de imagem de referência 1064 o sinal de predição de movimento pode derivar.
[0028] Após a predição espacial 1060 e/ou a predição de movimento 1062, um bloco de decisão de modo 1080 no codificador pode determinar um modo de predição (por exemplo, o melhor modo de predição), por exemplo, com base em uma otimização de distorção de taxa. O bloco de predição pode ser subtraído de um bloco de vídeo atual em 1016, e/ou o resíduo de predição pode ser descorrelacionado com o uso de uma transformada 1004 e/ou uma quantificação 1006 para atingir uma taxa de bits, como uma taxa de bits alvo. Os coeficientes residuais quantificados podem ser quantificados inversamente na quantificação inversa 1010 e/ou transformados inversamente na transformada 1012, por exemplo, para formar o resíduo reconstruído, que pode ser adicionado ao bloco de predição em 1026, por exemplo, para formar um bloco de vídeo reconstruído. A filtragem em circuito (por exemplo, filtro de desbloqueio e/ou filtros de circuito adaptativos) pode ser aplicada no filtro de circuito 1066 sobre o bloco de vídeo reconstruído, antes de o bloco de
8 / 46 vídeo reconstruído poder ser colocado no armazenamento de imagem de referência 1064 e/ou usado para codificar blocos de vídeo (por exemplo, blocos de vídeo futuros). Para formar o fluxo de bits de vídeo de saída 1020, o modo de codificação (por exemplo, intercodificação ou intracodificação), as informações do modo de predição, as informações de movimento e/ou os coeficientes residuais quantificados podem ser enviados (por exemplo, podem ser todos enviados) para um módulo de codificação de entropia 1108, por exemplo, para serem adicionalmente comprimidos e/ou compactados para formar o fluxo de bits.
[0029] A Figura 3 ilustra um diagrama de blocos de uma estrutura de decodificação de vídeo exemplificadora baseada em blocos para um decodificador. Um fluxo de bits de vídeo 1102 (por exemplo, o fluxo de bits de vídeo 1020 na Figura 1) pode ser descompactado (por exemplo, primeiro descompactado) e/ou decodificado por entropia em um módulo de decodificação por entropia 1108. O modo de codificação e informações de predição podem ser enviados para um módulo de predição espacial 1170 (por exemplo, se intracodificada) e/ou para um módulo de predição de compensação de movimento 1172 (por exemplo, se intercodificada e/ou com codificação temporal) para formar um bloco de predição. Os coeficientes de transformada residual podem ser enviados para um módulo de quantificação inversa 1110 e/ou um módulo de transformada inversa 1112, por exemplo, para reconstruir o bloco residual. O bloco de predição e/ou o bloco residual podem ser adicionados em 1126. O bloco reconstruído pode passar pela filtragem em circuito em um filtro de circuito 1176, por exemplo, antes de o bloco reconstruído ser armazenado em um armazenamento de imagem de referência 1174. O vídeo reconstruído 1120 no armazenamento de imagem de referência 1174 pode ser enviado para acionar um dispositivo de exibição e/ou usado para predizer blocos de vídeo (por exemplo, blocos de vídeo futuros).
9 / 46
[0030] Um ou mais módulos de codificação, por exemplo, os módulos de codificação associados a interpredição, podem ser aprimorados para melhorar a eficiência de intercodificação. Por exemplo, conforme descrito aqui, a eficiência de codificação da predição de vetor de movimento com base em histórico (HMVP) pode ser aprimorada.
[0031] Os VMs de blocos intercodificados podem ser sinalizados com o uso de um ou mais mecanismos conforme descrito aqui. Por exemplo, os VMs de blocos intercodificados podem ser sinalizados com o uso do modo de predição de vetor de movimento avançado (AMVP) ou do modo de integração. No modo AMVP, a diferença entre o VM real e um preditor de VM (MVP), um índice de referência e um índice de MVP que se refere a uma lista de candidatas a AMVP pode ser sinalizada. Para o modo de integração, um índice de integração que se refere a uma lista de candidatas a integração pode ser sinalizado. As informações de movimento associadas a uma candidata a integração podem ser herdadas da candidata a integração sinalizada. As informações de movimento, por exemplo, para a AMVP e as candidatas a integração, podem ser derivadas dos blocos espaciais que são vizinhos a uma UC. Por exemplo, os blocos espaciais podem ser diretamente vizinhos (por exemplo, ser adjacentes) à UC atual ou a um bloco colocalizado em uma imagem de referência temporal. Uma ou mais candidatas a integração (por exemplo, até 6 candidatas a integração) e uma ou mais candidatas a AMVP (por exemplo, até 2 candidatas a AMVP) podem ser adicionadas a uma lista de candidatas para predição de vetor de movimento.
[0032] A HMVP pode ser empregada para explorar a correlação entre os VMs de blocos vizinhos. Por exemplo, a HMVP pode ser usada para explorar a correlação entre blocos não adjacentes espacialmente vizinhos. Embora seja feita referência na presente invenção à HMVP sendo usada por blocos vizinhos que são espacialmente não adjacentes, o versado na técnica poderá observar que os blocos vizinhos também podem incluir blocos que são
10 / 46 blocos adjacentes.
[0033] Uma candidata a HMVP pode indicar as informações de movimento de uma UC previamente codificada. As informações de movimento podem incluir um ou mais dentre: os VMs e o índice de imagem de referência. Uma tabela de múltiplas candidatas a HMVP pode ser mantida em um codificador e/ou em um decodificador. A tabela de candidatas a HMVP pode ser redefinida (por exemplo, redefinida como vazia) quando a codificação de uma nova linha de CTU é iniciada. Após uma UC que não contém múltiplos sub-blocos (por exemplo, a ATMVP e as UCs codificadas afins) ser codificada, as informações de movimento associadas podem ser adicionadas a uma entrada (por exemplo, a última entrada na tabela de candidatas a HMVP) com base em uma regra (por exemplo, uma regra restrita de primeiro a entrar, primeiro a sair (FIFO)). Uma verificação de redundância pode ser aplicada para identificar se há uma candidata a HMVP existente que é idêntica a uma nova candidata de movimento (por exemplo, antes de adicionar a candidata de movimento à tabela ou lista de candidatas a HMVP). Se uma candidata a HMVP existente que é idêntica à nova candidata a movimento for encontrada, a candidata a HMVP idêntica pode ser removida da tabela ou lista de candidatas a HMVP e as candidatas a HMVP podem ser movidas adiante uma posição, por exemplo, reduzindo o índice de tabela das candidatas a HMVP em uma unidade. A Figura 4 ilustra um fluxo de trabalho de decodificação exemplificador quando a HMVP é aplicada para predizer VMs. Conforme ilustrado na Figura 4, em 402, as candidatas a HMVP existentes podem ser carregadas em uma lista de candidatas a HMVP existentes. Em 404, o VM associado a um bloco atual pode ser decodificado a partir das candidatas a HMVP. Em 406, a lista de candidatas a HMVP pode ser atualizada com base no VM decodificado.
[0034] A bipredição generalizada (GBi) ou a bipredição com pesos no nível de UC (BCW) pode ser realizada. Por exemplo, GBi ou BCW podem
11 / 46 ser realizadas para melhorar a eficiência da bipredição quando uma UC é predita por dois blocos de predição temporal a partir das imagens de referência que são reconstruídas. No modo de bipredição, o sinal de predição na amostra x pode ser calculado como a média de dois sinais de predição, conforme mostrado na equação (1).
P[x] = /2, (1)
[0035] Com referência à equação (1): P[x] pode ser o sinal de predição resultante de uma amostra x localizada em uma posição de imagem x, P1[x+v1] pode ser o sinal de predição com compensação de movimento de x com o uso do vetor de movimento (VM) v1 para a i-ésima lista (por exemplo, lista 0, lista 1). A GBi pode aplicar uma variedade de valores de peso (por exemplo, w0 e w1) aos dois sinais de predição da lista 0 e da lista 1. Uma ou mais configurações de w0 e w1 podem implicar similaridades de predição com a unipredição e a bipredição (por exemplo, a mesma predição que a unipredição e a bipredição convencionais). Por exemplo, similaridades de predição com a unipredição e bipredição podem existir quando (w0, w1) é igual a: (1, 0) para unipredição com a lista de referência L0; (0, 1) para unipredição com a lista de referência L1; e (0,5, 0,5) para a bipredição convencional com duas listas de referência. Em GBi, os pesos aplicados aos sinais de predição das listas L0 e L1 podem ser sinalizados pela UC. Uma restrição pode ser aplicada de modo que a soma de w0 e w1 seja 1, por exemplo, w0+w1=1. A restrição pode ser aplicada para reduzir a sobrecarga de sinalização. Dada essa restrição, um peso único pode ser sinalizado, e o sinal de bipredição final quando a GBi é aplicada pode ser calculado, por exemplo, com o uso da equação (2).
P[x] = . (2)
[0036] Com referência a (2), w1 pode ser discretizado, por exemplo, com o uso dos valores {-1/4, 1/4, 3/8, 1/2, 5/8, 3/4, 5/4}, de modo que cada
12 / 46 valor de peso possa ser indicado por um valor de índice dentro de uma pequena faixa limitada. A discretização de w1 com o uso de uma pequena faixa pode ser usada para reduzir a sobrecarga de sinalização. Os valores de peso {1/4, 3/8, 1/2, 5/8, 3/4} podem ser aplicados a uma imagem intercodificada (por exemplo, todas as imagens intercodificadas) e os valores de peso {-1/4, 5/4} podem ser aplicados a imagens de baixo atraso. Os valores de peso podem ser aplicados a imagens de baixo atraso que podem ser preditas com o uso da imagem de referência precedendo a imagem atual de acordo com a ordem de exibição.
[0037] A interpredição triangular pode ser realizada. Em alguns conteúdos de vídeo (por exemplo, conteúdo de vídeo de natureza), os limites entre dois objetos em movimento podem não ser horizontais ou verticais (por exemplo, puramente horizontais ou verticais). Tais limites não horizontais ou não verticais podem ser difíceis de ser precisamente aproximados por blocos retangulares. A predição triangular pode, portanto, ser aplicada, por exemplo, para possibilitar partições triangulares para predição com compensação de movimento. Conforme ilustrado na Figura 5, a predição triangular pode dividir uma UC em uma ou mais (por exemplo, duas) unidades de predição triangular, por exemplo, em uma direção diagonal (502) ou uma direção diagonal inversa (504). Uma unidade de predição triangular (por exemplo, cada unidade de predição triangular) na UC pode ser interpredita com o uso de seu vetor de movimento de unipredição e índice de quadro de referência. O vetor de movimento de unipredição e o índice de quadro de referência podem ser derivados de uma lista de candidatos a unipredição.
[0038] Uma lista de candidatos a unipredição pode incluir um ou mais (por exemplo, cinco) candidatos a vetores de movimento de unipredição. Os candidatos a vetores de movimento de unipredição podem ser derivados de blocos espacialmente/temporalmente vizinhos similares (por exemplo, iguais) àqueles que são usados para um processo de integração (por exemplo, o
13 / 46 processo de integração da HEVC). Os candidatos de VM de unipredição podem ser derivados de cinco blocos espacialmente vizinhos e dois blocos temporalmente colocalizados, conforme ilustrado na Figura 6. Com referência à Figura 6, os vetores de movimento dos sete blocos vizinhos podem ser coletados e armazenados na lista de candidatos a VM de unipredição na seguinte ordem: o vetor de movimento L0 dos blocos vizinhos, o vetor de movimento L1 dos blocos vizinhos, e o vetor de movimento médio dos vetores de movimento L0 e L1 dos blocos vizinhos, por exemplo, se os blocos vizinhos forem bipreditos. Se o número de candidatos a VM for menor que cinco, zero (0) vetores de movimento podem ser adicionados à lista de candidatos a VM.
[0039] A Figura 7 ilustra um fluxograma para adicionar os VMs de unipredição de candidatos a integração à lista de VM de unipredição de uma UC que é codificada por modo de predição triangular. Em 702, um dispositivo de codificação de vídeo pode determinar se um candidato a integração inclui o VM L0. Se inclui, em 704, o dispositivo de codificação de vídeo pode adicionar o VM L0 associado ao candidato a integração a uma lista de VM de unipredição. Em 708, o dispositivo de codificação de vídeo pode verificar se o candidato espacial/temporal é o último na lista. Em 710, o dispositivo de codificação de vídeo pode determinar se um candidato a integração inclui o VM L1. Se inclui, em 712, o dispositivo de codificação de vídeo pode adicionar o VM L1 associado ao candidato a integração a uma lista de VM de unipredição. Em 714, o dispositivo de codificação de vídeo pode verificar se o candidato espacial/temporal é o último na lista. Em 716, o dispositivo de codificação de vídeo pode determinar se um candidato a integração inclui os VMs L0 e L1. Se inclui, em 718, o dispositivo de codificação de vídeo pode adicionar a média do VM L0 e VM L1 associados ao candidato a integração a uma lista de VM de unipredição. Em 720, o dispositivo de codificação de vídeo pode verificar se o candidato espacial/temporal é o último na lista.
14 / 46
[0040] A ordem do um ou mais blocos vizinhos (por exemplo, a ordem em que os blocos candidatos podem ser verificados e considerados para adição a uma lista de candidatos) pode incluir o um ou mais blocos espacialmente vizinhos (por exemplo, 1 a 5) seguidos de um ou mais blocos temporalmente colocalizados (6 a 7). Com referência à Figura 6, os vetores de movimento dos sete blocos vizinhos (por exemplo, A1, A0, B0, B1, B2, T0, T1) podem ser coletados e armazenados em uma lista de candidatos a unipredição de acordo com a ordem dos vetores de movimento de unipredição, vetor de movimento L0 de vetores de movimento de bipredição, vetor de movimento L1 de vetores de movimento de bipredição e vetor de movimento médio dos vetores de movimento L0 e L1 de vetores de movimento de bipredição. Se o número de candidatos for menor que cinco, o vetor de movimento zero é adicionado à lista.
[0041] O ganho de codificação de HMVP pode ser aprimorado, por exemplo, pela extensão da aplicação de HMVP a outras ferramentas de codificação, por exemplo, bipredição generalizada e/ou interpredição triangular. A HMVP pode ser empregada para determinar a correlação do VM entre os blocos vizinhos. Por exemplo, A HMVP pode ser usada para determinar a correlação do VM entre blocos vizinhos espacialmente não adjacentes. Embora seja feita referência na presente invenção à HMVP sendo usada para determinar a correlação de VM entre blocos vizinhos que são espacialmente não adjacentes, o versado na técnica poderá observar que os blocos vizinhos podem incluir blocos que são blocos adjacentes. A HMVP pode ser usada para determinar a correlação de VM através da manutenção de uma tabela de um ou mais candidatos a VM. A tabela pode ser mantida em um dispositivo de codificação e/ou em um dispositivo de decodificação. Uma candidata a HMVP pode ser definida com base nas informações de movimento que compreendem um ou mais dos seguintes: um vetor de movimento (por exemplo, um ou mais vetores de movimento), uma lista de
15 / 46 referência (por exemplo, uma ou mais listas de referência) ou um índice de imagem de referência (por exemplo, um ou mais índices de imagem de referência) associados a um bloco previamente codificado
[0042] Em um exemplo, uma candidata a HMVP pode ser usada para derivar o sinal de predição de uma UC com GBi desabilitada. Nesse caso, pesos iguais podem ser aplicados a dois sinais de predição associados à lista 0 e à lista 1.
[0043] Em um exemplo, a HMVP e a GBi podem ser habilitadas, por exemplo, mediante a associação de uma GBi com um índice de HMVP. A GBi pode ser habilitada mediante a associação de pelo menos um índice de GBi com cada uma das entradas de HMVP ou índices de HMVP. Isso pode resultar em um aprimoramento da eficiência de codificação de HMVP. O índice de GBi pode também ser chamado de índice de peso de bipredição.
[0044] Em um exemplo, para cada candidato a HMVP, além das informações de movimento, o pelo menos um índice de GBi pode ser criado com base em um ou mais dos itens a seguir. Quando uma candidata a HMVP é derivada de uma UC intercodificada onde o peso de GBi é sinalizado, o peso de GBi da candidata a HMVP pode ser definido como o peso de GBi sinalizado. Quando uma candidata a HMVP é derivada de uma candidata a integração espacial, o peso de GBi da candidata a HMVP pode ser definido como o peso de GBi da candidata espacial. Quando uma candidata a HMVP é derivada de uma candidata a integração temporal, o peso de GBi da candidata a HMVP pode ser definido como o peso de GBi de um bloco colocalizado em uma imagem temporalmente colocalizada. Quando a candidata a HMVP é derivada de uma candidata a integração média, o peso de GBi da candidata a HMVP pode ser definido como um certo valor fixo (por exemplo, 0,5).
[0045] Conforme descrito na presente invenção, a remoção pode ser realizada em um ou mais estágios diferentes do procedimento de processamento de HMVP. Por exemplo, a remoção pode ser realizada para
16 / 46 remover entradas redundantes em uma lista de HMVP ao adicionar um candidato a VM ou uma candidata a HMVP à lista de HMVP. Em um exemplo, a remoção pode ser realizada após determinar se uma entrada na lista de HMVP é idêntica ao candidato a VM ou à candidata a HMVP. Se uma candidata idêntica for encontrada na lista de HMVP, a HMVP idêntica é removida da lista de HMVP. Em um exemplo, pode-se dizer que uma candidata a HMVP é idêntica a uma entrada de HMVP na lista de HMVP se as informações de movimento associadas à candidata a HMVP forem similares às informações de movimento associadas à entrada de HMVP na lista de HMVP. As informações de movimento que são comparadas podem incluir um ou mais dentre: um vetor de movimento (por exemplo, um ou mais vetores de movimento), uma lista de referência (por exemplo, uma ou mais listas de referência) e um índice de imagem de referência (por exemplo, um ou mais índices de imagem de referência).
[0046] Em um exemplo, além das informações do vetor de movimento, os pesos de GBi podem ser considerados para determinar se deve uma candidata a HMVP ser adicionada a uma lista de candidatas a HMVP. A Figura 8A ilustra um exemplo em que o peso de GBi é considerado durante a adição de uma candidata a HMVP a uma lista de candidatas a HMVP. Conforme ilustrado na Figura 8A, a segunda entrada da lista de HMVP e a nova candidata a HMVP a ser adicionada à lista de HMVP podem ser tratadas como idênticas quando as informações de movimento e os pesos de GBi da segunda entrada da lista de HMVP existente (por exemplo, HMVP1) são similares às informações de movimento e aos pesos de GBi de uma nova candidata a HMVP (por exemplo, Cl-1). Em tal exemplo, antes da adição da candidata a HMVP Cl-1 ao final da lista de HMVP, a entrada de HMVP correlacionada na lista de HMVP, HMVP1, pode ser removida da lista e as entradas de HMVP após as entradas de HMVP (por exemplo, HMVP2 a HMVPl-1) podem ser movidas adiante conforme indicado pelas setas. Isso
17 / 46 pode ser obtido, por exemplo, reduzindo-se os respectivos índices em uma unidade.
[0047] A Figura 8B ilustra um exemplo em que uma candidata a HMVP pode ser tratada como não idêntica a uma entrada em uma lista de HMVP. Conforme ilustrado na Figura 8B, embora as informações de movimento de HMVP1 e Cl-1 sejam iguais, diz-se que HMVP1 e Cl-1 não são idênticas porque seus respectivos pesos de GBi não são iguais. Um processo FIFO (por exemplo, o processo FIFO padrão) pode ser aplicado. Conforme ilustrado na Figura 8B, o procedimento FIFO pode incluir remover a primeira candidata a HMVP (por exemplo, HMVP0) da tabela, mover a posição de cada entrada uma unidade, conforme indicado pelas setas na Figura 8B, para criar uma posição vazia no final da lista de HMVP, e adicionar a nova candidata Cl-1 à posição vazia no final da lista de HMVP.
[0048] Candidatas a HMVP (por exemplo, que podem, cada uma, ser associadas a um peso de GBi, respectivamente) podem ser usadas como candidatas para um modo de integração e/ou um modo AMVP. As candidatas a HMVP (por exemplo, todas os candidatos a HMVP da última entrada até a primeira entrada na tabela de HMVP) podem ser inseridas, por exemplo, após a candidata a TMVP. Quando a HMVP é aplicada ao modo de integração, a remoção pode ser aplicada para remover as candidatas com informações de movimento similares (por exemplo, iguais) e peso de GBi similar (por exemplo, igual).
[0049] Os índices de GBi podem ser usados para predição com compensação de movimento e para o processo de remoção de HMVP. A predição com compensação de movimento e o processo de remoção de HMVP podem melhorar o ganho de codificação e aumentar a complexidade do processo de remoção. A complexidade do processo de remoção de HMVP pode aumentar quando as informações de movimento e o peso de GBi das candidatas a HMVP (por exemplo, cada candidata a HMVP na lista) são
18 / 46 verificados. Em um exemplo, o peso de GBi de cada uma das candidatas a HMVP (por exemplo, todos os candidatos a HMVP) pode ser usado para predição com compensação de movimento. Um subconjunto das candidatas a HMVP pode ser usado para o processo de remoção de HMVP. Conforme descrito aqui, uma candidata a HMVP pode ser associada a um índice de GBi (por exemplo, cada candidata a HMVP pode ser associada a um índice de GBi). O peso de GBi associado pode ser usado para gerar um sinal de predição de uma UC (por exemplo, em vez de determinar se duas candidatas a HMVP são idênticas).
[0050] A Figura 9 ilustra um exemplo de adição de uma candidata a HMVP a uma lista de HMVP, sendo que o peso de GBi pode não ser considerado ao adicionar uma candidata a HMVP a uma lista de HMVP. No exemplo fornecido na Figura 9, o índice de GBi da segunda entrada da lista de HMVP existente (por exemplo, HMVP1) e a nova candidata a HMVP (por exemplo, Cl-1) não são iguais enquanto as informações de movimento da segunda entrada da lista de HMVP existente (por exemplo, HMVP1) e a nova candidata a HMVP (por exemplo, Cl-1) forem iguais. Nesse exemplo, se as informações de movimento da segunda entrada da lista de HMVP existente (por exemplo, HMVP1) e da nova candidata a HMVP (por exemplo, Cl-1) forem iguais, e os índices de GBi da segunda entrada da lista de HMVP existente (por exemplo, HMVP1) e da nova candidata a HMVP (por exemplo, Cl-1) não forem iguais, a segunda entrada da lista de HMVP e da nova candidata a HMVP podem ser tratadas como idênticas. Conforme ilustrado na Figura 9, a HMVP1 pode ser removida da lista de candidatas a HMVP, e a candidata a HMVP subsequente (por exemplo, HMVP2 a HMVPl-1) pode ser movida adiante, por exemplo, reduzindo os índices em uma unidade conforme ilustrado pelas setas. Cl-1 pode, então, ser adicionada ao final da lista de HMVP.
[0051] A interpredição triangular pode ser realizada com a HMVP.
19 / 46 Na interpredição triangular, os VMs em uma lista de candidatos a unipredição podem ser derivados de vizinhos temporais e espaciais. Por exemplo, os vizinhos espaciais e temporais convencionais podem ser os vizinhos que são usados para o modo de integração do HEVC. Por exemplo, a interpredição triangular pode derivar os VMs na lista de candidatos a unipredição a partir de cinco vizinhos espaciais e dois vizinhos temporais, conforme ilustrado na Figura 6. Em um exemplo, a derivação de VM pode não considerar a correlação entre os VMs dos blocos que não são vizinhos diretamente espaciais (por exemplo, blocos não adjacentes). Em tal caso, a derivação de VM pode não gerar candidatos de VM de unipredição precisos (por exemplo, os candidatos de VM de unipredição mais precisos) para capturar o movimento verdadeiro das duas partições triangulares. Em um exemplo, as informações de movimento de blocos vizinhos ao longo de um limite de oclusão podem não ser correlacionadas (por exemplo, devido a objetos oclusivos que podem existir comumente em conteúdo, como conteúdo de vídeo de natureza). Se as informações de movimento de blocos vizinhos ao longo de um limite de oclusão não estiverem correlacionadas, os VMs provenientes dos vizinhos espaciais no limite de oclusão podem não ser precisos (por exemplo, suficientemente precisos) para agir como o preditor de VM de uma UC atual. Isso pode reduzir a eficiência de intercodificação. Em um exemplo, candidatas a HMVP (por exemplo, além dos candidatos a VM espaciais e temporais existentes) podem ser usadas para derivar uma lista de candidatos a VM de unipredição para o modo de predição triangular, por exemplo, para explorar a correlação entre os VMs de um ou mais blocos vizinhos (por exemplo, blocos espacialmente não adjacentes).
[0052] Os VMs de unipredição de candidatas a HMVP podem ser colocados em diferentes posições de uma lista de candidatos (por exemplo, uma lista de candidatos final) dos VMs de unipredição para o modo triangular. Em um exemplo, os VMs de unipredição associados a uma ou mais
20 / 46 candidatas a HMVP podem ser verificados e inseridos em uma lista após candidatos espaciais e/ou temporais. Os VMs associados a uma candidata a HMVP podem ser verificados (por exemplo, verificar se o VM de uma candidata a HMVP é idêntico a um VM na lista de VM de unipredição) e inseridos na lista de candidatos de unipredição (por exemplo, após os candidatos espaciais e temporais). Os VMs dos blocos candidatos podem ser coletados na ordem dos cinco vizinhos espaciais (por exemplo, A1, A0, B1, B0 e B2) seguidos pelos dois vizinhos temporais (por exemplo, T0 e T1) conforme ilustrado na Figura 6 e as N candidatas a HMVP.
[0053] Os VMs de unipredição que são usados para o modo triangular podem ser gerados conforme descrito aqui. Em um exemplo, os VMs de unipredição usados para o modo triangular podem ser gerados pela adição dos VMs L0 associados a um ou mais dos candidatos espaciais/temporais e candidatas a HMVP. Em um exemplo, os VMs de unipredição usados para o modo triangular podem ser gerados pela adição dos VMs L1 associados a um ou mais candidatos espaciais/temporais e candidatas a HMVP. Em um exemplo, os VMs de unipredição usados para o modo triangular podem ser gerados pela adição de uma média dos VMs L0 e L1 dos candidatos espaciais/temporais e candidatas a HMVP, por exemplo, se a candidata a HMVP for bipredita.
[0054] A Figura 10 ilustra um exemplo associado à inserção dos VMs de unipredição de candidatos a integração à lista de VMs de unipredição de uma UC triangular. Conforme ilustrado na Figura 10, em 1030, um dispositivo de codificação de vídeo pode determinar se um candidato (por exemplo, um i-ésimo candidato a integração) inclui um VM L0. Em caso afirmativo, em 1032, o dispositivo de codificação de vídeo pode adicionar o VM L0 associado ao candidato a uma lista de VM de unipredição. Em 1034, o dispositivo de codificação de vídeo pode verificar se o candidato espacial/temporal ou candidata a HMVP é o último na lista. Em 1036, o
21 / 46 dispositivo de codificação de vídeo pode determinar se o candidato inclui um VM L1. Em caso afirmativo, em 1038, o dispositivo de codificação de vídeo pode adicionar o VM L1 do candidato à lista de VM de unipredição. Em 1040, o dispositivo de codificação de vídeo pode verificar se o candidato espacial/temporal ou candidata a HMVP é o último na lista. Em 1042, o dispositivo de codificação de vídeo pode determinar se o candidato inclui os VMs L0 e L1. Em caso afirmativo, em 1044, o dispositivo de codificação de vídeo pode adicionar a média dos VMs L0 e L1 do candidato à lista de VM de unipredição. Em 1046, o dispositivo de codificação de vídeo pode verificar se o candidato espacial/temporal ou candidata a HMVP é o último na lista.
[0055] O movimento (por exemplo, as informações de movimento) de vizinhos espaciais e temporais pode ser correlacionado ao movimento (por exemplo, as informações de movimento) de uma UC atual (por exemplo, mais correlacionada do que o movimento de candidatas a HMVP). Os VMs de unipredição dos candidatos espaciais e temporais podem receber prioridades mais altas do que os VMs de unipredição dos candidatos a HMVP (por exemplo, para reduzir a sobrecarga de VMs de candidatos de sinalização). Nos exemplos, os VMs de unipredição de candidatos espaciais/temporais podem ser intercalados com os VMs de unipredição das candidatas a HMVP.
[0056] Uma lista de VM de unipredição (por exemplo, a lista de VM de unipredição final) de uma UC triangular pode ser gerada. Em um exemplo, a lista VM de unipredição de uma UC triangular pode ser gerada mediante a inserção da VM L0 de cada candidato espacial/temporal na lista de VM de unipredição. Em um exemplo, a lista VM de unipredição de uma UC triangular pode ser gerada mediante a inserção da VM L1 de cada candidato espacial/temporal na lista de VM de unipredição. Em um exemplo, a lista VM de unipredição de uma UC triangular pode ser gerada mediante a inserção da VM L0 de cada candidata a HMVP na lista de VM de unipredição. Em um exemplo, a lista VM de unipredição de uma UC triangular pode ser gerada
22 / 46 mediante a inserção da VM L1 de cada candidata a HMVP na lista de VM de unipredição.
[0057] Em um exemplo, a lista de VM de unipredição de uma UC triangular pode ser gerada inserindo-se a média dos VMs L0 e L1 do candidato espacial/temporal (por exemplo, cada candidato espacial/temporal, se o candidato for bipredito) na lista de VM de unipredição. Em um exemplo, a lista de VM de unipredição de uma UC triangular pode ser gerada inserindo- se a média dos VMs L0 e L1 da candidata a HMVP (por exemplo, cada candidata a HMVP, se a candidata for bipredita) na lista de VM de unipredição.
[0058] A Figura 11 ilustra um exemplo de geração da lista de VM de unipredição de modo triangular quando os VMs de unipredição de candidatos espaciais/temporais e as candidatas a HMVP são intercalados. Conforme ilustrado na Figura 11, em 1130, um dispositivo de codificação de vídeo pode determinar se um candidato (por exemplo, um i-ésimo candidato a integração) inclui um VM L0. Em caso afirmativo, em 1132, o dispositivo de codificação de vídeo adiciona o VM L0 associado ao candidato a uma lista de VM de unipredição. Em 1134, o dispositivo de codificação de vídeo pode verificar se o candidato espacial/temporal é o último na lista. Em 1136, o dispositivo de codificação de vídeo pode determinar se um candidato inclui um VM L1. Em caso afirmativo, em 1138, o dispositivo de codificação de vídeo pode adicionar o VM L1 associado ao candidato a uma lista de VM de unipredição. Em 1140, o dispositivo de codificação de vídeo pode verificar se o candidato espacial/temporal é o último na lista. Em 1142, o dispositivo de codificação de vídeo pode determinar se um candidato inclui um VM L0. Em caso afirmativo, em 1144, o dispositivo de codificação de vídeo pode adicionar o VM L1 associado ao candidato a uma lista de VM de unipredição. Em 1146, o dispositivo de codificação de vídeo pode verificar se a candidata a HMVP é a última na lista. Em 1148, o dispositivo de codificação de vídeo pode
23 / 46 determinar se um candidato inclui um VM L1. Em caso afirmativo, em 1150, o dispositivo de codificação de vídeo pode adicionar o VM L1 associado ao candidato a uma lista de VM de unipredição. Em 1152, o dispositivo de codificação de vídeo pode verificar se a candidata a HMVP é a última na lista. Em 1154, o dispositivo de codificação de vídeo pode determinar se um candidato inclui os VMs L0 e L1. Em caso afirmativo, em 1156, o dispositivo de codificação de vídeo pode adicionar a média dos VMs L0 e L1 associados a uma lista de VM de unipredição. Em 1158, o dispositivo de codificação de vídeo pode verificar se o candidato espacial/temporal é o último na lista. Em 1160, o dispositivo de codificação de vídeo pode determinar se um candidato inclui os VMs L0 e L1. Em caso afirmativo, em 1162, o dispositivo de codificação de vídeo pode adicionar a média dos VMs L0 e L1 associados a uma lista de VM de unipredição. Em 1164, o dispositivo de codificação de vídeo pode verificar se a candidata a HMVP é a última na lista.
[0059] A Figura 12A é um diagrama que ilustra um sistema de comunicação exemplificador 100 no qual uma ou mais modalidades reveladas podem ser implementadas. Por exemplo, um ou mais dos recursos associados ao dispositivo de codificação de vídeo conforme descrito aqui podem ser incluídos em uma ou mais das WTRUs 102a, 102b, 102c e 102d do sistema de comunicação 100. O sistema de comunicações 100 pode ser um sistema de acesso múltiplo que fornece conteúdo, como voz, dados, vídeo, mensagens, radiodifusão, etc., para múltiplos usuários sem fio. O sistema de comunicações 100 pode possibilitar que múltiplos usuários sem fio acessem esse conteúdo através do compartilhamento de recursos de sistema, inclusive largura de banda sem fio. Por exemplo, os sistemas de comunicações 100 podem empregar um ou mais métodos de acesso de canal, como acesso múltiplo por divisão de código (CDMA - "code division multiple access"), acesso múltiplo por divisão de tempo (TDMA - "time division multiple access"), acesso múltiplo por divisão de frequência (FDMA - "frequency
24 / 46 division multiple access"), FDMA ortogonal (OFDMA - "orthogonal frequency division multiple access"), FDMA de portadora única (SC-FDMA - "single-carrier frequency division multiple access"), OFDM de espalhamento de transformada de Fourier discreta (DFT - "discrete Fourier transform") de palavra única "zero tail" (ZT UW DTS-s OFDM - "zero-tail unique-word discrete single transform spread orthogonal frequency division multiplexing"), OFDM filtrada por palavra única (UW-OFDM - "unique word orthogonal frequency division multiplexing"), OFDM filtrada por bloco de recurso, multiportadora de banco de filtro (FBMC - "filter bank multicarrier") e similares.
[0060] Conforme mostrado na Figura 12A, o sistema de comunicação 100 pode incluir unidades de transmissão/recepção sem fio (WTRUs) 102a, 102b, 102c, 102d, uma RAN 104/113, uma CN 106/115, uma rede telefônica pública comutada (PSTN - public switched telephone network) 108, a Internet 110 e outras redes 112, embora deva-se considerar que as modalidades reveladas contemplam qualquer número de WTRUs, estações-base, redes e/ou elementos de rede. Cada uma das WTRUs 102a, 102b, 102c, 102d pode ser qualquer tipo de dispositivo configurado para operar e/ou se comunicar em um ambiente sem fio. A título de exemplo, as WTRUs 102a, 102b, 102c, 102d, sendo que qualquer uma destas pode ser chamada de uma "estação" e/ou uma "STA", podem ser configuradas para transmitir e/ou receber sinais sem fio e podem incluir um equipamento de usuário (UE - "user equipment"), uma estação móvel, uma unidade assinante fixa ou móvel, uma unidade baseada em assinatura, um pager, um telefone celular, um assistente digital pessoal (PDA - "personal digital assistant"), um telefone inteligente, um computador do tipo laptop, um computador do tipo netbook, um computador pessoal, um sensor sem fio, um dispositivo de ponto de acesso ou Mi-Fi, um dispositivo de Internet das coisas (IoT - "Internet of things"), um relógio de pulso ou outro dispositivo para ser usado junto ao corpo, um capacete de
25 / 46 realidade virtual (HMD - "head-mounted display"), uma portadora, um drone, um dispositivo e aplicações médicas (por exemplo, cirurgia remota), um dispositivo e aplicações industriais (por exemplo, um robô e/ou outros dispositivos sem fio operando em um contexto de cadeia de processamento industrial e/ou automatizado), um dispositivo eletrônico de consumo, um dispositivo que opera em redes sem fio comerciais e/ou industriais e similares. Qualquer uma das WTRUs 102a, 102b, 102c e 102d pode ser chamada de forma intercambiável de UE.
[0061] Os sistemas de comunicação 100 podem incluir também uma estação-base 114a e/ou uma estação-base 114b. Cada uma das estações-base 114a, 114b pode ser qualquer tipo de dispositivo configurado para fazer interface sem fio com pelo menos uma das WTRUs 102a, 102b, 102c, 102d para facilitar o acesso a uma ou mais redes de comunicação, como a CN 106/115, a Internet 110 e/ou as outras redes 112. A título de exemplo, as estações-base 114a, 114b podem ser uma estação-base transceptora (BTS - "base transceiver station"), um nó B, um nó B evoluído (eNodeB), um Nó B de origem, um eNodeB de origem, um gNB, um NodeB de novo rádio (NR - "new radio"), um controlador de local, um ponto de conexão (AP - "access point"), um roteador sem fio e similares. Embora cada uma dentre as estações-base 114a, 114b seja mostrada como um elemento único, deve-se considerar que as estações-base 114a, 114b podem incluir qualquer número de estações-base e/ou elementos de rede interconectados.
[0062] A estação-base 114a pode ser parte da RAN 104/113, que pode também incluir outras estações-base e/ou elementos de rede (não mostrados), como um controlador de estação-base (BSC - "base station controller"), um controlador de rede de rádio (RNC - "radio network controller"), nós de retransmissão etc. A estação-base 114a e/ou a estação-base 114b pode ser configurada para transmitir e/ou receber sinais sem fio em uma ou mais frequências de portadora, que podem ser chamadas de célula (não mostrada).
26 / 46 Essas frequências podem estar em espectro licenciado, espectro não licenciado ou uma combinação de espectro licenciado e não licenciado. Uma célula pode proporcionar cobertura para um serviço sem fio a uma área geográfica específica que pode ser relativamente fixa ou que pode mudar ao longo do tempo. A célula pode, ainda, ser dividida em setores de célula. Por exemplo, a célula associada à estação-base 114a pode ser dividida em três setores. Dessa forma, em uma modalidade, a estação-base 114a pode incluir três transceptores, isto é, um para cada setor da célula. Em uma modalidade, a estação-base 114a pode empregar tecnologia de múltiplas entradas e múltiplas saídas (MIMO - "multiple input multiple output") e, pode usar múltiplos transceptores para cada setor da célula. Por exemplo, a formação de feixes pode ser usada para transmitir e/ou receber sinais em direções espaciais desejadas.
[0063] As estações-base 114a, 114b podem se comunicar com uma ou mais dentre as WTRUs 102a, 102b, 102c, 102d através de uma interface aérea 116, que pode ser qualquer enlace de comunicação sem fio adequado (por exemplo, radiofrequência (RF - "radio frequency"), micro-ondas, onda centimétrica, onda micrométrica, infravermelho (IR - "Infrared"), ultravioleta (UV - "ultraviolet"), luz visível etc.). A interface aérea 116 pode ser estabelecida através do uso de qualquer tecnologia de acesso por rádio (RAT - "radio access technology") adequada.
[0064] Mais especificamente, conforme indicado acima, o sistema de comunicações 100 pode ser um sistema de acesso múltiplo e pode empregar um ou mais esquemas de acesso ao canal, como CDMA, TDMA, FDMA, OFDMA, SC-FDMA e similares. Por exemplo, a estação-base 114a na RAN 104/113 e as WTRUs 102a, 102b, 102c podem implementar uma tecnologia de rádio, como o acesso terrestre universal por rádio (UTRA - "universal terrestrial radio access") do sistema universal de telecomunicações móveis (UMTS - "universal mobile telecommunications system"), que pode
27 / 46 estabelecer a interface aérea 115/116/117 mediante o uso de CDMA de banda larga (WCDMA - "wideband code division multiple access"). O WCDMA pode incluir protocolos de comunicação, como acesso de pacote de alta velocidade (HSPA - "high-speed packet access") e/ou HSPA evoluído (HSPA+). O HSPA pode incluir acesso de pacote de enlace descendente (DL - "downlink") de alta velocidade (HSDPA - "high-speed downlink packet access") e/ou acesso de pacote de enlace ascendente (UL - "uplink") de alta velocidade (HSUPA - "high-speed uplink packet access").
[0065] Em uma modalidade, a estação-base 114a e as WTRUs 102a, 102b, 102c podem implementar uma tecnologia de rádio, como o acesso terrestre por rádio de UMTS evoluído (E-UTRA), que pode estabelecer a interface aérea 116 mediante o uso de evolução de longo prazo (LTE - "long term evolution") e/ou LTE avançada (LTE-A) e/ou LTE Avançada Pro (LTE- A Pro).
[0066] Em uma modalidade, a estação-base 114a e as WTRUs 102a, 102b, 102c podem implementar uma tecnologia de rádio, como acesso por rádio NR, que pode estabelecer a interface aérea 116 com o uso da tecnologia Novo Rádio (NR, new radio).
[0067] Em uma modalidade, a estação-base 114a e as WTRUs 102a, 102b, 102c podem implementar múltiplas tecnologias de acesso por rádio. Por exemplo, a estação-base 114a e as WTRUs 102a, 102b, 102c podem implementar acesso por rádio LTE e acesso por rádio NR em conjunto, por exemplo, usando-se princípios de conectividade dupla (DC - "dual connectivity"). Dessa forma, a interface aérea utilizada pelas WTRUs 102a, 102b, 102c pode ser caracterizada por múltiplos tipos de tecnologias de acesso por rádio e/ou transmissões enviadas para/a parir de múltiplos tipos de estações-base (por exemplo, um eNB e um gNB).
[0068] Em outras modalidades, a estação-base 114a e as WTRUs 102a, 102b, 102c podem implementar tecnologias de rádio, como IEEE
28 / 46
802.11 (isto é, fidelidade sem fio (Wi-Fi - "wireless fidelity")), IEEE 802.16 (isto é, interoperabilidade mundial para acesso de micro-ondas (WiMAX - "worldwide interoperability for microwave access")), CDMA2000, CDMA2000 1X, CDMA2000 EV-DO, Norma provisória 2000 (IS-2000), Norma provisória 95 (IS-95), Norma provisória 856 (IS-856), Sistema global para comunicações móveis (GSM - "global system for mobile communications"), taxas de dados aprimoradas para evolução GSM (EDGE - "enhanced data rates for GSM evolution"), EDGE de GSM (GERAN) e similares.
[0069] A estação-base 114b na Figura 12A pode ser um roteador sem fio, um nó B de origem, um eNodeB de origem, ou um ponto de conexão, por exemplo, e pode usar qualquer RAT adequada para facilitar a conectividade sem fio em uma área localizada, como um local de trabalho, uma residência, um veículo, um campus, uma instalação industrial, um corredor de ar (por exemplo, para uso por drones), uma rodovia e similares. Em uma modalidade, a estação-base 114b e as WTRUs 102c, 102d podem implementar uma tecnologia de rádio, como IEEE 802.11, para estabelecer uma rede de área local sem fio (WLAN - "wireless local area network"). Em uma modalidade, a estação-base 114b e as WTRUs 102c, 102d podem implementar uma tecnologia de rádio, como IEEE 802.15, para estabelecer uma rede de área pessoal sem fio (WPAN - "wireless personal area network"). Em ainda outra modalidade, a estação-base 114b e as WTRUs 102c, 102d podem usar uma RAT com base em celular (por exemplo, WCDMA, CDMA2000, GSM, LTE, LTE-A, LTE-A Pro, NR etc.) para estabelecer uma picocélula ou femtocélula. Conforme mostrado na Figura 12A, a estação-base 114b pode ter uma conexão direta com a Internet 110. Dessa forma, a estação-base 114b pode não ser necessária para acessar a Internet 110 através da CN 106/115.
[0070] A RAN 104/113 pode estar em comunicação com a CN 106/115, que pode ser qualquer tipo de rede configurada para fornecer voz,
29 / 46 dados, aplicativos e/ou serviços de voz sobre protocolo de Internet (VoIP - "voice over Internet protocol") para uma ou mais dentre as WTRUs 102a, 102b, 102c, 102d. Os dados podem ter requisitos de qualidade de serviço (QoS - "quality of service") variados, como diferentes requisitos de capacidade de processamento, requisitos de latência, requisitos de tolerância a erros, requisitos de confiabilidade, os requisitos de capacidade de processamento de dados, requisitos de mobilidade e similares. A CN 106/115 pode fornecer controle de chamada, serviços de cobrança, serviços móveis com base em localização, chamada pré-paga, conectividade de Internet, distribuição de vídeo etc., e/ou executar funções de segurança de alto nível, como autenticação de usuário. Embora não mostrado na Figura 12A, deve-se considerar que a RAN 104/113 e/ou a CN 106/115 podem estar em comunicação direta ou indireta com outras RANs que empregam a mesma RAT, como a RAN 104/113, ou uma RAT diferente. Por exemplo, além de ser conectada à RAN 104/113, que pode usar uma tecnologia de rádio NR, a CN 106/115 também pode estar em comunicação com outra RAN (não mostrada) que emprega uma tecnologia de rádio GSM, UMTS, CDMA 2000, WiMAX, E-UTRA ou Wi-Fi.
[0071] A CN 106/115 também pode servir como uma porta de comunicação ("gateway") para as WTRUs 102a, 102b, 102c, 102d acessarem a PSTN 108, a Internet 110 e/ou as outras redes 112. A PSTN 108 pode incluir redes telefônicas de circuito comutado que fornecem serviço telefônico convencional (POTS - "plain old telephone service"). A Internet 110 pode incluir um sistema global de redes de computador e dispositivos interconectados que usam protocolos de comunicação comuns, como o protocolo de controle de transmissão (TCP - "transmission control protocol"), o protocolo de datagrama de usuário (UDP - "user datagram protocol") e o protocolo de Internet (IP - "Internet protocol") no conjunto de protocolos de Internet TCP/IP. As redes 112 podem incluir redes de comunicações com fio
30 / 46 e/ou sem fio pertencentes a, e/ou operadas por, outros provedores de serviços. Por exemplo, as redes 112 podem incluir outra CN conectada a uma ou mais RANs, que podem empregar a mesma RAT, como a RAN 104/113, ou uma RAT diferente.
[0072] Algumas ou todas as WTRUs 102a, 102b, 102c, 102d no sistema de comunicações 100 podem incluir capacidades de modo múltiplo (por exemplo, as WTRUs 102a, 102b, 102c, 102d podem incluir múltiplos transceptores para comunicação com redes sem fio diferentes através de enlaces sem fio diferentes). Por exemplo, a WTRU 102c mostrada na Figura 12A pode ser configurada para se comunicar com a estação-base 114a, que pode empregar uma tecnologia de rádio baseada em celular, e com a estação- base 114b, que pode empregar uma tecnologia de rádio IEEE 802.
[0073] A Figura 12B é um diagrama de sistema que ilustra um exemplo de WTRU 102. Conforme mostrado na Figura 12B, a WTRU 102 pode incluir um processador 118, um transceptor 120, um elemento de transmissão/recepção 122, um alto-falante/microfone 124, um teclado numérico 126, um monitor/touchpad 128, uma memória não removível 130, uma memória removível 132, uma fonte de energia 134, um chipset de sistema de posicionamento global (GPS - global positioning system) 136 e/ou outros periféricos 138, entre outros. Será reconhecido que a WTRU 102 pode incluir qualquer subcombinação dos elementos supracitados enquanto permanece consistente com uma modalidade.
[0074] O processador 118 pode ser um processador de propósito geral, um processador de propósito especial, um processador convencional, um processador de sinal digital (DSP - "digital signal processor"), uma pluralidade de microprocessadores, um ou mais microprocessadores em associação com um núcleo de DSP, um controlador, um microcontrolador, circuitos integrados de aplicação específica (ASICs - "application specific integrated circuits"), circuitos de matriz de portas programáveis em campo
31 / 46 (FPGAs - "field programmable gate arrays"), qualquer outro tipo de circuito integrado (IC - "integrated circuit"), uma máquina de estado e similares. O processador 118 pode executar codificação de sinais, processamento de dados, controle de potência, processamento de entrada/saída e/ou qualquer outra funcionalidade que possibilite que a WTRU 102 opere em um ambiente sem fio. O processador 118 pode ser acoplado ao transceptor 120, que pode ser acoplado ao elemento de transmissão/recepção 122. Embora a Figura 12B represente o processador 118 e o transceptor 120 como componentes separados, será reconhecido que o processador 118 e o transceptor 120 podem ser integrados juntos em um pacote eletrônico ou circuito eletrônico.
[0075] O elemento de transmissão/recepção 122 pode ser configurado para transmitir sinais a, ou receber sinais de, uma estação-base (por exemplo, a estação-base 114a) através da interface aérea 116. Por exemplo, em uma modalidade, o elemento de transmissão/recepção 122 pode ser uma antena configurada para transmitir e/ou receber sinais de RF. Em uma modalidade, o elemento de transmissão/recepção 122 pode ser um emissor/detector configurado para transmitir e/ou receber sinais de IR, UV ou luz visível, por exemplo. Em ainda outra modalidade, o elemento de transmissão/recepção 122 pode ser configurado para transmitir e/ou receber tanto sinais RF como de luz. Será reconhecido que o elemento de transmissão/recepção 122 pode ser configurado para transmitir e/ou receber qualquer combinação de sinais sem fio.
[0076] Embora o elemento de transmissão/recepção 122 seja representado na Figura 12B como um elemento único, a WTRU 102 pode incluir qualquer número de elementos de transmissão/recepção 122. Mais especificamente, a WTRU 102 pode empregar a tecnologia MIMO. Dessa forma, em uma modalidade, a WTRU 102 pode incluir dois ou mais elementos de transmissão/recepção 122 (por exemplo, múltiplas antenas) para transmitir e receber sinais sem fio pela interface aérea 116.
32 / 46
[0077] O transceptor 120 pode ser configurado para modular os sinais que se destinam a serem transmitidos pelo elemento de transmissão/recepção 122, e para demodular os sinais que são recebidos pelo elemento de transmissão/recepção 122. Conforme indicado acima, a WTRU 102 pode ter capacidades multimodo. Dessa forma, o transceptor 120 pode incluir múltiplos transceptores para possibilitar que a WTRU 102 se comunique por meio de múltiplas RATs, como NR e IEEE 802.11, por exemplo.
[0078] O processador 118 da WTRU 102 pode ser acoplado ao alto- falante/microfone 124, ao teclado numérico 126 e/ou ao monitor/touchpad 128 (por exemplo, uma unidade de exibição de tela de cristal líquido (LCD - "liquid crystal display") ou uma unidade de exibição de diodo emissor de luz orgânico (OLED - "organic light-emitting diode"), e pode receber entradas de dados pelo usuário provenientes dos mesmos. O processador 118 pode emitir também dados de usuário para o alto-falante/microfone 124, o teclado 126 e/ou o monitor/touchpad 128. Além disso, o processador 118 pode acessar informações de, e armazenar dados em, qualquer tipo de memória adequada, como a memória não removível 130 e/ou a memória removível 132. A memória não removível 130 pode incluir uma memória de acesso aleatório (RAM - "random access memory"), memória só de leitura (ROM - "read-only memory"), um disco rígido, ou qualquer outro tipo de dispositivo de armazenamento de memória. A memória removível 132 pode incluir um cartão de módulo de identidade de assinante (SIM - "subscriber identity module"), um cartão de memória, um cartão de memória digital segura (SD - "secure digital") e similares. Em outras modalidades, o processador 118 pode acessar informações da, e armazenar dados na, memória que não está fisicamente localizada na WTRU 102, como em um servidor ou um computador de uso doméstico (não mostrado).
[0079] O processador 118 pode receber energia da fonte de energia 134, e pode ser configurado para distribuir e/ou controlar a energia para os
33 / 46 outros componentes na WTRU 102. A fonte de energia 134 pode ser qualquer dispositivo adequado para alimentar a WTRU 102. Por exemplo, a fonte de energia 134 pode incluir uma ou mais baterias de célula seca (por exemplo, níquel-cádmio (NiCd), níquel-zinco (NiZn), níquel-hidreto metálico (NiMH), íon de lítio (Li-Íon), etc.), células solares, células de combustível e similares.
[0080] O processador 118 pode ser também acoplado ao chipset de GPS 136, o qual pode ser configurado para fornecer informações de localização (por exemplo, longitude e latitude) quanto à localização atual da WTRU 102. Em adição às, ou em vez das, informações do conjunto de circuitos eletrônicos do GPS 136, a WTRU 102 pode receber informações de localização através da interface aérea 116 de uma estação-base (por exemplo, estações-base 114a, 114b) e/ou determinar sua localização com base na temporização dos sinais recebidos de duas ou mais estações-base próximas. Deve-se considerar que a WTRU 102 pode capturar informações de localização por meio de qualquer método de determinação de localização adequado, e ainda permanecer compatível com uma modalidade.
[0081] O processador 118 pode, ainda, ser acoplado a outros periféricos 138, os quais podem incluir um ou mais módulos de software e/ou hardware que fornecem recursos, funcionalidade e/ou conectividade sem fio ou com fio adicionais. Por exemplo, os periféricos 138 podem incluir um acelerômetro, uma bússola eletrônica, um transceptor de satélite, uma câmera digital (para fotografias e/ou vídeo), uma porta de barramento serial universal (USB - "universal serial bus"), um dispositivo de vibração, um transceptor de televisão, um headset de mãos livres, um módulo Bluetooth®, uma unidade de rádio em frequência modulada (FM - "frequency modulated"), um reprodutor de música digital, um reprodutor de mídia, um módulo reprodutor de videogame, um navegador de Internet, um dispositivo de realidade virtual e/ou realidade aumentada (VR/AR - "virtual reality/augmented reality"), um rastreador de atividade e similares. Os periféricos 138 podem incluir um ou
34 / 46 mais sensores, os sensores podem ser um ou mais dentre um giroscópio, um acelerômetro, um sensor de efeito hall, um magnetômetro, um sensor de orientação, um sensor de proximidade, um sensor de temperatura, um sensor de tempo; um sensor de geolocalização; um altímetro, um sensor de luz, um sensor de toque, um magnetômetro, um barômetro, um sensor de gestos, um sensor biométrico e/ou um sensor de umidade.
[0082] A WTRU 102 pode incluir um rádio duplex completo para o qual a transmissão e recepção de alguns ou todos dentre os sinais (por exemplo, associados a um determinado para ambos os subquadros de UL (por exemplo, para a transmissão) e enlace descendente (por exemplo, para recepção) podem ser concomitantes e/ou simultâneos. O rádio duplex completo pode incluir uma unidade de gerenciamento de interferência e reduzir ou eliminar substancialmente autointerferência através de hardware (por exemplo, um obturador) ou processamento de sinal por meio de um processador (por exemplo, um processador separado (não mostrado) ou por meio do processador 118). Em uma modalidade, a WTRU 102 pode incluir um rádio half duplex para qual transmissão e recepção de alguns ou todos os sinais (por exemplo, associados a subquadros específicos para a UL (por exemplo, para transmissão) ou para o enlace descendente (por exemplo, para recepção).
[0083] A Figura 12C é um diagrama de sistema que ilustra a RAN 104 e a CN 106 de acordo com uma modalidade. Conforme observado acima, a RAN 104 pode empregar uma tecnologia de rádio E-UTRA para se comunicar com as WTRUs 102a, 102b, 102c através da interface aérea 116. A RAN 104 pode também estar em comunicação com a CN 106.
[0084] A RAN 104 pode incluir os eNodeBs 160a, 160b, 160c, embora deva-se considerar que a RAN 104 pode incluir qualquer número de eNodeBs e ainda permanecer consistente com uma modalidade. Cada um dos eNodeBs 160a, 160b, 160c pode incluir um ou mais transceptores para
35 / 46 comunicação com as WTRUs 102a, 102b, 102c através da interface aérea
116. Em uma modalidade, os eNodeBs 160a, 160b, 160c podem implementar a tecnologia MIMO. Assim, o eNodeB 160a, por exemplo, pode usar múltiplas antenas para transmitir e/ou receber sinais sem fio da WTRU 102a.
[0085] Cada um dos eNodeBs 160a, 160b, 160c pode estar associado a uma célula específica (não mostrada) e pode ser configurado para lidar com decisões de gerenciamento de recurso de rádio, decisões de mudança automática, agendamento de usuários no UL e/ou DL e similares. Conforme mostrado na Figura 12C, os eNodeBs 160a, 160b, 160c podem se comunicar uns com os outros através de uma interface X2.
[0086] A CN 106 mostrada na Figura 12C pode incluir uma entidade de gerenciamento de mobilidade (MME - mobility management entity) 162, uma porta de comunicação servidora (SGW - serving gateway) 164 e uma porta de comunicação de rede de dados de pacote (PDN - packet data network) (ou PGW) 166. Embora cada um dos elementos supracitados seja mostrado como parte da CN 106, deve-se considerar que qualquer um desses elementos pode pertencer e/ou ser operado por uma entidade diferente do operador da CN.
[0087] A MME 162 pode ser conectada a cada um dos eNodeBs 162a, 162b, 162c na RAN 104 por meio de uma interface S1 e pode servir como um nó de controle. Por exemplo, a MME 162 pode ser responsável pela autenticação de usuários das WTRUs 102a, 102b, 102c, pela ativação/desativação da portadora, pela seleção de uma porta de comunicação servidora específica durante uma conexão inicial das WTRUs 102a, 102b, 102c e similares. A MME 162 pode fornecer uma função de plano de controle para a comutação entre a RAN 104 e outras RANs (não mostradas) que empregam outras tecnologias de rádio, como GSM ou WCDMA.
[0088] A SGW 164 pode estar conectada a cada um dos eNodeBs 160a, 160b, 160c na RAN 104 através da interface S1. A SWH 164 pode, de
36 / 46 modo geral, rotear e encaminhar pacotes de dados de usuário destinados às/provenientes das WTRUs 102a, 102b, 102c. A SGW 164 pode realizar outras funções, como ancoragem de planos de usuário durante as mudanças automáticas entre eNodeBs, disparar paginação quando dados de DL estiverem disponíveis para as WTRUs 102a, 102b, 102c, gerenciar e armazenar os contextos das WTRUs 102a, 102b, 102c e similares.
[0089] A SGW 164 pode ser conectada à PGW 166, a qual pode dotar as WTRUs 102a, 102b, 102c de acesso a redes de comutação de pacotes, como a Internet 110, para facilitar as comunicações entre as WTRUs 102a, 102b, 102c e dispositivos habilitados para IP.
[0090] A CN 106 pode facilitar as comunicações com outras redes. Por exemplo, a CN 106 pode dotar as WTRUs 102a, 102b, 102c de acesso a redes comutadas por circuito, como a PSTN 108, para facilitar as comunicações entre as WTRUs 102a, 102b, 102c e dispositivos de comunicações terrestres tradicionais. Por exemplo, a CN 106 pode incluir, ou pode se comunicar com uma porta de comunicação de IP (por exemplo, um servidor de subsistema multimídia de IP (IMS)) que serve como uma interface entre a CN 106 e a PSTN 108. Além disso, a CN 106 pode proporcionar o acesso das WTRUs 102a, 102b, 102c a outras redes 112, que podem incluir outras redes com fio e/ou sem fio que pertencem e/ou são operadas por outros provedores de serviço.
[0091] Embora a WTRU seja descrita nas Figuras 12A a 12D como um terminal sem fio, é contemplado que, em certas modalidades representativas, tal terminal pode usar (por exemplo, temporária ou permanentemente) interfaces de comunicação com fio com a rede de comunicação.
[0092] Em modalidades representativas, a outra rede 112 pode ser uma WLAN.
[0093] Uma WLAN no modo de conjunto de serviços básicos (BSS -
37 / 46 "basic service set") pode ter um ponto de conexão (AP - "access point") para o BSS e uma ou mais estações (STAs - "stations") associadas ao AP. O AP pode ter acesso ou uma interface com um sistema de distribuição (DS - "distribution system") ou outro tipo de rede com fio/sem fio que transporta tráfego para dentro e/ou para fora do BSS. O tráfego para as STAs que se originam do lado de fora de um BSS pode chegar através do AP e pode ser entregue para as STAs. O tráfego proveniente de STAs para destinos fora do BSS pode ser enviado para o AP para ser entregue aos respectivos destinos. O tráfego entre STAs dentro do BSS pode ser enviado através do AP, por exemplo, onde a STA de origem pode enviar tráfego para o AP e o AP pode entregar o tráfego para a STA de destino. O tráfego entre STAs dentro de um BSS pode ser considerado e/ou chamado como tráfego ponto a ponto. O tráfego ponto a ponto pode ser enviado entre (por exemplo, diretamente entre) as STAs de origem e destino com uma configuração de enlace direto (DLS - "direct link setup"). Em certas modalidades representativas, a DLS pode usar uma DLS 802.11e ou uma DLS em túnel 80211z (TDLS - "tunneled direct link setup"). Uma WLAN que usa um modo BSS independente (IBSS - "independent basic service set") pode não ter um AP, e as STAs (por exemplo, todas as STAs) dentro ou que usam o IBSS podem se comunicar diretamente entre si. O modo de comunicação IBSS pode ser chamado algumas vezes no presente documento de um modo de comunicação "ad hoc".
[0094] Quando se usa o modo de operação ou um modo de operações similar de infraestrutura 802.11ac, o AP pode transmitir um sinalizador em um canal fixo, como um canal primário. O canal primário pode ter uma largura fixa (por exemplo, 20 MHz de largura de largura de banda) ou uma largura dinamicamente definida por meio de sinalização. O canal primário pode ser o canal operacional do BSS e pode ser usado pelas STAs para estabelecer uma conexão com o AP. Em certas modalidades representativas, o acesso múltiplo com detecção de portadora com prevenção de colisão
38 / 46 (CSMA/CA - "carrier sense multiple access with collision avoidance") pode ser implementado, por exemplo, em sistemas 802.11. Para CSMA/CA, as STAs (por exemplo, a cada STA), incluindo o AP, pode detectar o canal primário. Se o canal primário é detectado e/ou determinado/detectado como estando ocupado por uma determinada STA, a STA específica pode recuar. Uma STA (por exemplo, apenas uma estação) pode transmitir em qualquer dado momento em um dado BSS.
[0095] STAs de alta capacidade de processamento (HT - "high throughput") podem usar um canal de 40 MHz de largura para comunicação, por exemplo, por meio de uma combinação do canal primário de 20 MHz com um canal de 20 MHz adjacente ou não adjacente para formar um canal de 40 MHz de largura.
[0096] As STAs de capacidade de processamento muito alta (VHT - "very high throughput") podem suportar canais de 20 MHz, 40 MHz, 80 MHz e/ou 160 MHz de largura. Os canais de 40 MHz e/ou 80 MHz podem ser formados, por exemplo, pela combinação de canais contíguos de 20 MHz. Um canal de 160 MHz pode ser formado, por exemplo, pela combinação de oito canais de 20 MHz contíguos ou pela combinação de dois canais não contíguos de 80 MHz, que pode ser chamada de uma configuração 80+80. Para a configuração 80 + 80, os dados, após a codificação do canal, podem ser passados por um analisador de segmento que pode dividir os dados em dois fluxos. O processamento da transformada inversa rápida de Fourier (IFFT - "inverse fast Fourier transform") e o processamento de domínio de tempo podem ser realizados, por exemplo, em cada fluxo separadamente. Os fluxos podem ser mapeados para os dois canais de 80 MHz, e os dados podem ser transmitidos por uma STA de transmissão. No receptor da STA de recepção, a operação descrita acima para a configuração 80 + 80 pode ser revertida, e os dados combinados podem ser enviados para o controle de acesso a mídias (MAC - "medium access control").
39 / 46
[0097] Os modos de operação de sub 1 GHz são suportados por
802.11af e 802.11ah. As larguras de banda de operação do canal, e as portadoras, são reduzidas em 802.11af e 802.11ah em relação àquelas usadas em 802.11n e 802.11ac. 802.11af suporta larguras de banda de 5 MHz, 10 MHz e 20 MHz no espectro de espaço branco de TV (TVWS - "TV white space") e 802.11ah suporta larguras de banda de 1 MHz, 2 MHz, 4 MHz, 8 MHz e 16 MHz que usam o espectro que não o TVWS. De acordo com uma modalidade representativa, 802.11ah pode suportar controle do tipo medidor/comunicações do tipo máquina, como dispositivos MTC (MTC - "machine-type communications") em uma área de cobertura macro. Os dispositivos MTC podem ter certas capacidades, por exemplo, recursos limitados que incluem o suporte (por exemplo, suporte apenas para) e/ou larguras de banda limitada determinadas. Os dispositivos MTC podem incluir uma bateria com uma vida útil da bateria acima de um limite (por exemplo, para manter uma longa vida útil da bateria).
[0098] Os sistemas WLAN, que podem suportar vários canais e larguras de banda de canal, como 802.11n, 802.11ac, 802.11af e 802.11ah, incluem um canal que pode ser designado como o canal primário. O canal primário pode ter, por exemplo, uma largura de banda igual a maior largura de banda operacional comum suportada por todas as STAs no BSS. A largura de banda do canal primário pode ser definida e/ou limitada por uma STA, dentre todas as STAs em operação em um BSS, que suporta o menor modo de operação de largura de banda. No exemplo de 802.11ah, o canal primário pode ser de 1 MHz de largura para STAs (por exemplo, dispositivos do tipo MTC) que suportam (por exemplo, apenas suportam) um modo de 1 MHz, mesmo se o AP, e outras STAs no modo BSS suportam os modos operacionais de largura de banda de 2 MHz, 4 MHz, 8 MHz, 16 MHz e/ou outros canais. As configurações de detecção de portadora e/ou de Vetor de Alocação de Rede (NAV - "network allocation vector") podem depender do
40 / 46 estado do canal primário. Se o canal primário estiver ocupado, por exemplo, devido a uma STA (que suporta apenas um modo de funcionamento de 1 MHz), transmitindo para o AP, todas as bandas de frequência disponíveis podem ser consideradas ocupadas mesmo que a maioria das bandas de frequência permaneça ociosa e possa estar disponível.
[0099] Nos Estados Unidos, as bandas de frequência disponíveis, que podem ser usadas por 802.11ah, são de 902 MHz a 928 MHz. Na Coreia, as bandas de frequência disponíveis são de 917,5 MHz a 923,5 MHz. No Japão, as bandas de frequência disponíveis são de 916,5 MHz a 927,5 MHz. Por exemplo, a largura de banda total disponível para 802.11ah é 6 MHz a 26 MHz, dependendo do código do país.
[00100] A Figura 12D é um diagrama de sistema que ilustra a RAN 113 e a CN 115 de acordo com uma modalidade. Conforme observado acima, a RAN 113 pode empregar uma tecnologia de rádio NR para se comunicar com as WTRUs 102a, 102b, 102c através da interface aérea 116. A RAN 113 pode também estar em comunicação com a CN 115.
[00101] A RAN 113 pode incluir os gNBs 180a, 180b, 180c, embora deva-se reconhecer que a RAN 113 pode incluir qualquer número de gNBs e ainda permanecer consistente com uma modalidade. Os gNBs 180a, 180b, 180c pode incluir um ou mais transceptores para comunicação com as WTRUs 102a, 102b, 102c através da interface aérea 116. Em algumas modalidades, os gNBs 180a, 180b, 180c podem implementar a tecnologia MIMO. Por exemplo, gNBs 180a, 108b podem usar formação de feixes para transmitir sinais para e/ou receber sinais dos gNBs 180a, 180b, 180C. Dessa forma, o gNBs 180a, por exemplo, pode usar múltiplas antenas para transmitir sinais sem fio e/ou receber sinais sem fio a partir da WTRU 102a. Em uma modalidade, os gNBs 180a, 180b e 180c podem implementar a tecnologia de agregação de portadora. Por exemplo, o gNB 180a pode transmitir portadoras de múltiplos componentes para a WTRU 102a (não mostrado). Um
41 / 46 subconjunto dessas portadoras componentes pode estar no espectro não licenciado enquanto as portadoras de componentes restantes podem estar no espectro licenciado. Em uma modalidade, os gNBs 180a, 180b e 180c podem implementar a tecnologia multiponto coordenada (CoMP - "coordinated multi-point"). Por exemplo, a WTRU 102a pode receber transmissões coordenadas de gNB 180a e gNB 180b (e/ou gNB 180C).
[00102] As WTRUs 102a, 102b, 102c podem se comunicar com gNBs 180a, 180b, 180c com o uso de transmissões associadas a uma numerologia escalável. Por exemplo, o espaçamento de símbolo OFDM e/ou espaçamento de subportadora OFDM pode variar para diferentes transmissões, células diferentes, e/ou diferentes porções do espectro de transmissão sem fio. As WTRUs 102a, 102b, 102c podem se comunicar com os gNBs 180a, 180b, 180c com o uso de intervalos de tempo de subquadro ou de transmissão (TTIs - "transmission time intervals") de vários comprimentos escaláveis (por exemplo, contendo um número variável de símbolos OFDM e/ou comprimentos variáveis duradouros de tempo absoluto).
[00103] Os gNBs 180a, 180b e 180c podem ser configurados para se comunicar com as WTRUs 102a, 102b, 102c em uma configuração autônoma e/ou uma configuração não autônoma. Na configuração autônoma, as WTRUs 102a, 102b, 102c podem se comunicar com os gNBs 180a, 180b, 180c sem também acessar outras RANs (por exemplo, como eNode-Bs 160a, 160b, 160c). Na configuração autônoma, as WTRUs 102a, 102b, 102c podem usar um ou mais dos gNBs 180a, 180b, 180c como um ponto de ancoragem de mobilidade. Na configuração autônoma, as WTRUs 102a, 102b, 102c podem se comunicar com gNBs 180a, 180b, 180c com o uso de sinais em uma banda não licenciadas. Em uma configuração não autônoma, WTRUs 102a, 102b, 102c podem se comunicar com/se conectar com gNBs 180a, 180b, 180c enquanto também se comunica com/se conecta a outra RAN como eNode-Bs 160a, 160b, 160C. Por exemplo, WTRUs 102a, 102b, 102c pode implementar
42 / 46 princípios DC para se comunicar com um ou mais gNBs 180a, 180b, 180c e um ou mais eNode-Bs 160a, 160b, 160c de maneira substancialmente simultânea. Na configuração não-autônoma, eNode-Bs 160a, 160b, 160c podem servir como uma âncora de mobilidade para WTRUs 102a, 102b, 102c e gNBs 180a, 180b, 180c podem proporcionar cobertura e/ou capacidade de processamento adicionais para manutenção das WTRUs 102a, 102b, 102c.
[00104] Cada um dos gNBs 180a, 180b, 180c pode estar associado a uma célula particular (não mostrada) e pode ser configurado para suportar as decisões de gerenciamento de recurso de rádio, as decisões de mudança automática, o agendamento de usuários em UL e/ou DL, suporte de rede fatiamento, ligações duplas, interconexão de número e E-UTRA, roteamento de dados de plano de usuário para a função de plano de usuário (UPF - "user plane function") 184a, 184b, roteamento de informações de plano de controle para a função de gerenciamento de acesso e mobilidade (AMF - "access and mobility management function") 182a, 182b, e similares. Conforme mostrado na Figura 12D, os gNBs 180a, 180b, 180c podem se comunicar uns com os outros através de uma interface Xn.
[00105] A CN 115 mostrada na Figura 12D pode incluir pelo menos uma AMF 182a, 182b, pelo menos uma UPF 184a,184b, pelo menos uma função de gerenciamento de sessão (SMF - session management function) 183a, 183b e possivelmente uma rede de dados (DN - data network) 185a, 185b. Embora cada um dos elementos supracitados seja mostrado como parte da CN 115, deve-se considerar que qualquer um desses elementos pode pertencer e/ou ser operado por uma entidade diferente do operador da CN.
[00106] A AMF 182a, 182b pode ser conectada a cada um dos gNBs 180a, 180b, 180c na RAN 113 por meio de uma interface N2, e pode servir como um nó de controle. Por exemplo, a AMF 182a, 182b pode ser responsável pela autenticação dos usuários do WTRUs 102a, 102b, 102c, suporte para divisão de rede (por exemplo, manuseio de diferentes sessões de
43 / 46 unidade de protocolo de dados (PDU - "protocol data unit") com diferentes requisitos), selecionando uma SMF 183a, 183b, gerenciamento da área de registro, terminação da sinalização de armazenamento de dados em rede (NAS - "network-attached storage"), gerenciamento de mobilidade e similares. A divisão de rede pode ser usada pela AMF 182a, 182b para personalizar o suporte CN para WTRUs 102a, 102b, 102c com base nos tipos de serviços que são usados pelas WTRUs 102a, 102b, 102c. Por exemplo, fatias de rede diferentes podem ser estabelecidas para diferentes casos de uso como serviços que dependem do acesso de baixa latência ultraconfiável (URLLC - "ultra reliable low latency communications"), serviços que dependem do acesso de banda larga móvel em massa (eMBB - "enhanced massive mobile broadband"), serviços para acesso de comunicação do tipo máquina (MTC) e/ou similares. A AMF 162 pode fornecer uma função de plano de controle para comutar entre a RAN 113 e outras RANs (não mostradas) que empregam outras tecnologias de rádio, como LTE, LTE-A, LTE-A Pro e/ou tecnologias de acesso não 3GPP como Wi-Fi.
[00107] A SMF 183a, 183b pode ser conectada a uma AMF 182a, 182b na CN 115 por meio de uma interface N11. A SMF 183a, 183b pode também ser conectada a uma UPF 184a, 184b na CN 115 através de uma interface N4. A SMF 183a, 183b pode selecionar e controlar a UPF 184a, 184b e configurar o roteamento de tráfego através da UPF 184a, 184b. A SMF 183a e 183b pode executar outras funções, como gerenciar e alocar o endereço IP de UE, gerenciar sessões de PDU, controlar a aplicação de políticas e QoS, fornecer notificações de dados de enlace descendente e similares. Um tipo de sessão PDU pode ser baseado em IP, baseado em não-IP, baseado em Ethernet e similares.
[00108] A UPF 184a, 184b pode ser conectada a um ou mais dos gNBs 180a, 180b, 180c na RAN 113 através de uma interface N3, que pode dotar as WTRUs 102a, 102b, 102c de acesso às redes comutadas por pacote, como a
44 / 46 Internet 110, para facilitar as comunicações entre as WTRUs 102a, 102b, 102c e os dispositivos habilitados para IP. A UPF 184 e 184b pode executar outras funções, como roteamento e encaminhamento de pacotes, aplicação de diretivas de plano de usuário, suporte a sessões PDU com múltiplas bases, manipulação de QoS de plano de usuário, armazenamento temporário de pacotes de enlace descendente, fornecimento de ancoramento de mobilidade e similares.
[00109] A CN 115 pode facilitar a comunicação com outras redes. Por exemplo, a CN 115 pode incluir, ou pode se comunicar com uma porta de comunicação de IP (por exemplo, um servidor de subsistema multimídia de IP (IMS)) que serve como uma interface entre a CN 115 e a PSTN 108. Além disso, a CN 115 pode proporcionar o acesso das WTRUs 102a, 102b, 102c a outras redes 112, que podem incluir outras redes com fio e/ou sem fio que pertencem e/ou são operadas por outros provedores de serviço. Em uma modalidade, as WTRUs 102a, 102b, 102c podem ser conectadas a uma rede de dados local (DN) 185a, 185b através da UPF 184a, 184b através da interface N3 para a UPF 184a, 184b e uma interface N6 entre a UPF 184a, 184b e a DN 185a, 185b.
[00110] Em vista das Figuras 12A a 12D e da descrição correspondente das Figuras 12A a 12D, uma ou mais, ou todas, dentre as funções descritas na presente invenção em relação a uma ou mais dentre: a WTRU 102a-d, estação-base 114a-b, eNode B 160a-c, MME 162, SGW 164, PGW 166, gNB 180a-c, AMF 182a-ab, UPF 184a-b, SMF 183a-b, DN 185a-b e/ou quaisquer outros dispositivos aqui descritos podem ser executadas por um ou mais dispositivos de emulação (não mostrados). Os dispositivos de emulação podem ser um ou mais dispositivos configurados para emular uma ou mais, ou todas, as funções aqui descritas. Por exemplo, os dispositivos de emulação podem ser usados para testar outros dispositivos e/ou para simular funções de rede e/ou WTRU.
45 / 46
[00111] Os dispositivos de emulação podem ser projetados para implementar um ou mais testes de outros dispositivos em um ambiente de laboratório e/ou em um ambiente de rede de operador. Por exemplo, os um ou mais dispositivos de emulação podem executar as uma ou mais, ou todas, as funções ao mesmo tempo em que são total ou parcialmente implementadas/implantadas como parte de uma rede de comunicação com fio e/ou sem fio a fim de testar outros dispositivos dentro da rede de comunicação. Os um ou mais dispositivos de emulação podem executar as uma ou mais, ou todas, dentre as funções enquanto são temporariamente implementadas/implantadas como parte de uma rede de comunicação com fio e/ou sem fio. O dispositivo de emulação pode ser diretamente acoplado a outro dispositivo para fins de teste e/ou pode realizar testes com o uso de comunicações sem fio pelo ar.
[00112] Os um ou mais dispositivos de emulação podem executar as uma ou mais, incluindo todas, as funções enquanto não são implementadas/implantadas como parte de uma rede de comunicação com fio e/ou sem fio. Por exemplo, os dispositivos de emulação podem ser usados em um cenário de teste em um laboratório de testes e/ou em uma rede de comunicação sem fio (por exemplo, teste) com fio e/ou sem fio para implementar o teste de um ou mais componentes. Os um ou mais dispositivos de emulação podem ser equipamentos de teste. O acoplamento de RF direto e/ou comunicações sem fio através de circuitos de RF (por exemplo, que podem incluir uma ou mais antenas) podem ser usadas pelos dispositivos de emulação para transmitir e/ou receber dados.
[00113] Os processos e técnicas descritos neste documento podem ser implementados em um programa de computador, software e/ou firmware incorporados em uma mídia legível por computador para execução por um computador e/ou processador. Exemplos de mídias legíveis por computador incluem, mas não se limitam a, sinais eletrônicos (transmitidos através de
46 / 46 conexões com fio e/ou sem fio) e/ou mídias de armazenamento legíveis por computador.
Exemplos de mídias de armazenamento legíveis por computador incluem, mas não se limitam a, memórias de apenas leitura (ROM), memórias de acesso aleatório (RAM), registradores, memórias cache, dispositivos de memória semicondutores, mídia magnética, como, mas não se limitando a, discos rígidos internos e discos removíveis, mídias magneto-ópticas e/ou mídias ópticas, como discos CD-ROM e/ou discos versáteis digitais (DVDs). Um processador em associação com software pode ser usado para implementar um transceptor de radiofrequência para uso em uma WTRU, terminal, estação-base, RNC e/ou qualquer computador hospedeiro.

Claims (20)

REIVINDICAÇÕES
1. Dispositivo, caracterizado por compreender: um processador configurado para ao menos: gerar uma lista de predição de vetor de movimento com base em histórico (HMVP - history-based motion vector prediction) para um bloco atual; derivar uma candidata a HMVP de um bloco codificado previamente, sendo que a candidata a HMVP compreende informações de movimento associadas a um bloco vizinho do bloco atual, um ou mais índices de referência e um índice de peso de bipredição; adicionar a candidata a HMVP à lista de HMVP para predição com compensação de movimento de um vetor de movimento associado ao bloco atual; e usar uma HMVP selecionada dentre a lista de HMVP para executar a predição com compensação de movimento do bloco atual, sendo que a predição com compensação de movimento é executada com o uso das informações de movimento associadas ao bloco vizinho do bloco atual, ao um ou mais índices de referência e ao índice de peso de bipredição.
2. Dispositivo de acordo com a reivindicação 1, caracterizado por o processador ser adicionalmente configurado para: determinar se a candidata a HMVP é idêntica a uma HMVP na lista de HMVP do bloco atual; em uma condição em que a candidata a HMVP é idêntica a qualquer HMVP na lista de HMVP, remover a HMVP da lista de HMVP e adicionar a candidata a HMVP ao final da lista de HMVP; e em uma condição em que a candidata a HMVP não é idêntica a nenhuma HMVP na lista de HMVP, remover a entrada mais antiga de HMVP da lista de HMVP se a lista de HMVP estiver cheia, e adicionar a candidata a HMVP ao final da lista de HMVP.
3. Dispositivo de acordo com a reivindicação 2, caracterizado por o bloco vizinho ser um bloco espacialmente não adjacente.
4. Dispositivo de acordo com a reivindicação 2, caracterizado por, se a candidata a HMVP for idêntica à HMVP na lista de HMVP, mover adiante uma posição uma ou mais HMVPs após a HMVP removida na lista de HMVP.
5. Dispositivo de acordo com a reivindicação 2, caracterizado por a candidata a HMVP ser idêntica à HMVP na lista de HMVP se a candidata a HMVP e a HMVP na lista de HMVP tiverem os mesmos vetores de movimento e os mesmos índices de referência.
6. Dispositivo de acordo com a reivindicação 2, caracterizado por a candidata a HMVP ser idêntica à HMVP na lista de HMVP se a candidata a HMVP e a HMVP na lista de HMVP tiverem os mesmos vetores de movimento, os mesmos índices de referência e o mesmo índice de peso de bipredição.
7. Dispositivo de acordo com a reivindicação 1, caracterizado por as informações de movimento compreenderem ao menos um ou mais vetores de movimento.
8. Dispositivo de acordo com a reivindicação 1, caracterizado por o índice de peso de bipredição compreender um ou mais índices de peso associados ao bloco vizinho.
9. Dispositivo de acordo com a reivindicação 8, caracterizado por um ou mais pesos com base no um ou mais índices de peso serem aplicados a um sinal de predição que é gerado executando-se a predição com compensação de movimento do bloco atual.
10. Dispositivo de acordo com a reivindicação 1, caracterizado por o processador ser adicionalmente configurado para redefinir uma lista de HMVP quando a codificação de uma nova linha de unidade de árvore de codificação (CTU - coding tree unit) é iniciada.
11. Método, caracterizado por compreender: gerar uma lista de predição de vetor de movimento com base em histórico (HMVP) para um bloco atual; derivar uma candidata a HMVP de um bloco codificado previamente, sendo que a candidata a HMVP compreende informações de movimento associadas a um bloco vizinho do bloco atual, um ou mais índices de referência e um índice de peso de bipredição; adicionar a candidata a HMVP à lista de HMVP para predição com compensação de movimento de um vetor de movimento associado ao bloco atual; e usar uma HMVP selecionada dentre a lista de HMVP para executar a predição com compensação de movimento do bloco atual, sendo que a predição com compensação de movimento é executada com o uso das informações de movimento associadas ao bloco vizinho do bloco atual, ao um ou mais índices de referência e ao índice de peso de bipredição.
12. Método de acordo com a reivindicação 11, caracterizado por compreender: determinar se a candidata a HMVP é idêntica a uma HMVP na lista de HMVP do bloco atual; em uma condição em que a candidata a HMVP é idêntica a qualquer HMVP na lista de HMVP, remover a HMVP da lista de HMVP e adicionar a candidata a HMVP ao final da lista de HMVP; e em uma condição em que a candidata a HMVP não é idêntica a nenhuma HMVP na lista de HMVP, remover a entrada mais antiga de HMVP da lista de HMVP se a lista de HMVP estiver cheia, e adicionar a candidata a HMVP ao final da lista de HMVP.
13. Método de acordo com a reivindicação 11, caracterizado por o bloco vizinho ser um bloco espacialmente não adjacente.
14. Método de acordo com a reivindicação 12, caracterizado por, se a candidata a HMVP for idêntica à HMVP na lista de HMVP, mover adiante uma posição uma ou mais HMVPs após a HMVP removida na lista de HMVP.
15. Método de acordo com a reivindicação 12, caracterizado por a candidata a HMVP ser idêntica à HMVP na lista de HMVP se a candidata a HMVP e a HMVP na lista de HMVP tiverem os mesmos vetores de movimento e os mesmos índices de referência.
16. Método de acordo com a reivindicação 12, caracterizado por a candidata a HMVP ser idêntica à HMVP na lista de HMVP se a candidata a HMVP e a HMVP na lista de HMVP tiverem os mesmos vetores de movimento, os mesmos índices de referência e o mesmo índice de peso de bipredição.
17. Método de acordo com a reivindicação 11, caracterizado por as informações de movimento compreenderem ao menos um ou mais vetores de movimento.
18. Método de acordo com a reivindicação 11, caracterizado por o índice de peso de bipredição compreender um ou mais índices de peso associados ao bloco vizinho.
19. Método de acordo com a reivindicação 18, caracterizado por um ou mais pesos com base no um ou mais índices de peso serem aplicados a um sinal de predição que é gerado executando-se a predição com compensação de movimento do bloco atual.
20. Método de acordo com a reivindicação 11, caracterizado por compreender redefinir uma lista de HMVP quando a codificação de uma nova linha de unidade de árvore de codificação (CTU) é iniciada.
BR112021012462-4A 2018-12-29 2019-12-19 Dispositivo e método de codificação de vídeo BR112021012462A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862786429P 2018-12-29 2018-12-29
US62/786,429 2018-12-29
PCT/US2019/067639 WO2020139717A1 (en) 2018-12-29 2019-12-19 History-based motion vector prediction

Publications (1)

Publication Number Publication Date
BR112021012462A2 true BR112021012462A2 (pt) 2021-09-08

Family

ID=69191247

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112021012462-4A BR112021012462A2 (pt) 2018-12-29 2019-12-19 Dispositivo e método de codificação de vídeo

Country Status (8)

Country Link
US (2) US20220078406A1 (pt)
EP (1) EP3903496A1 (pt)
JP (1) JP2022516091A (pt)
KR (1) KR20210118068A (pt)
CN (1) CN113316936A (pt)
BR (1) BR112021012462A2 (pt)
TW (1) TW202032986A (pt)
WO (1) WO2020139717A1 (pt)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7308428B2 (ja) 2019-03-08 2023-07-14 合同会社IP Bridge1号 画像符号化装置、画像符号化方法及び画像符号化プログラム
WO2023198075A1 (en) * 2022-04-13 2023-10-19 Beijing Bytedance Network Technology Co., Ltd. Method, apparatus, and medium for video processing

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101630688B1 (ko) * 2010-02-17 2016-06-16 삼성전자주식회사 움직임 예측 장치 및 방법과 영상 처리 장치
WO2013077659A1 (ko) * 2011-11-24 2013-05-30 에스케이텔레콤 주식회사 모션 벡터의 예측 부호화/복호화 방법 및 장치
US9479778B2 (en) * 2012-08-13 2016-10-25 Qualcomm Incorporated Device and method for coding video information using base layer motion vector candidate
US20140071235A1 (en) * 2012-09-13 2014-03-13 Qualcomm Incorporated Inter-view motion prediction for 3d video
US9357214B2 (en) * 2012-12-07 2016-05-31 Qualcomm Incorporated Advanced merge/skip mode and advanced motion vector prediction (AMVP) mode for 3D video
US11477477B2 (en) * 2015-01-26 2022-10-18 Qualcomm Incorporated Sub-prediction unit based advanced temporal motion vector prediction
CN117459721A (zh) * 2018-10-24 2024-01-26 华为技术有限公司 视频编解码器和方法
US11394989B2 (en) * 2018-12-10 2022-07-19 Tencent America LLC Method and apparatus for video coding
US11876957B2 (en) * 2018-12-18 2024-01-16 Lg Electronics Inc. Method and apparatus for processing video data
US10855992B2 (en) * 2018-12-20 2020-12-01 Alibaba Group Holding Limited On block level bi-prediction with weighted averaging

Also Published As

Publication number Publication date
WO2020139717A1 (en) 2020-07-02
KR20210118068A (ko) 2021-09-29
US20240089427A1 (en) 2024-03-14
US20220078406A1 (en) 2022-03-10
TW202032986A (zh) 2020-09-01
CN113316936A (zh) 2021-08-27
WO2020139717A8 (en) 2021-08-05
EP3903496A1 (en) 2021-11-03
JP2022516091A (ja) 2022-02-24

Similar Documents

Publication Publication Date Title
US11553206B2 (en) Bl-prediction for video coding
US10917660B2 (en) Prediction approaches for intra planar coding
BR112020000032A2 (pt) dispositivo e método de codificação de dados de vídeo.
US11503328B2 (en) Adaptive control point selection for affine motion model based video coding
WO2019006363A1 (en) LOCAL LIGHTING COMPENSATION USING GENERALIZED BI-PREDICTION
US20220070441A1 (en) Combined inter and intra prediction
US11979595B2 (en) Symmetric merge mode motion vector coding
US20240089427A1 (en) History-based motion vector prediction
JP2021502019A (ja) マルチタイプツリーコーディング
US20240196004A1 (en) Affine motion estimation for affine model-based video coding
US20220116656A1 (en) Improved intra planar prediction using merge mode motion vector candidates
US20220150486A1 (en) Intra sub-partitions in video coding
TWI842802B (zh) 結合的間和內預測的裝置及方法
WO2023118259A1 (en) Video block partitioning based on depth or motion information