BRPI0716957A2 - Sintaxe de gerenciamento de lista de imagens de referência para codificação de vídeo de múltiplas vistas - Google Patents

Sintaxe de gerenciamento de lista de imagens de referência para codificação de vídeo de múltiplas vistas Download PDF

Info

Publication number
BRPI0716957A2
BRPI0716957A2 BRPI0716957-4A BRPI0716957A BRPI0716957A2 BR PI0716957 A2 BRPI0716957 A2 BR PI0716957A2 BR PI0716957 A BRPI0716957 A BR PI0716957A BR PI0716957 A2 BRPI0716957 A2 BR PI0716957A2
Authority
BR
Brazil
Prior art keywords
image
num
pic
list
reordering
Prior art date
Application number
BRPI0716957-4A
Other languages
English (en)
Inventor
Purvin Bibhas Pandit
Yeping Su
Peng Yin
Original Assignee
Thomson Licensing
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 Thomson Licensing filed Critical Thomson Licensing
Publication of BRPI0716957A2 publication Critical patent/BRPI0716957A2/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/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/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/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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

Landscapes

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

Description

"SINTAXE DE GERENCIAMENTO DE LISTA DE IMAGENS DE REFERÊNCIA PARA CODIFICAÇÃO DE VÍDEO DE MÚLTIPLAS VISTAS"
Referência Cruzada a Pedidos Relacionados
Este pedido reivindica o benefício do Pedido Provisório U.S. No. Serial 60/851.863, depositado em 13 de outubro de 2006, que é incorporado aqui a título de referência em sua totalidade e do Pedido Provisório U.S. No. Serial 60/851.521, depositado em 13 de outubro de 2006, que é incorporado aqui a título de referência em sua totalidade também.
Campo da Invenção
A presente invenção refere-se ao campo das imagens em movimento, especialmente o evento do ordenamento de imagens de referência quando usadas para codificar uma imagem de vídeo.
Fundamentos da Invenção
Muitos sistemas de codificação intra-quadros faz uso de imagens de referência on- de o uso de tais imagens de referência auxilia na redução do tamanho de um fluxo de bits codificados. Esse tipo de resultado na eficácia de codificação é melhor que simplesmente usar técnicas de codificação intra-quadros por elas mesmas. Muitos padrões de codificação, portanto, incorporam ambas as técnicas de codificação intra-quadros e inter-quadros para codificar um fluxo de bits a partir de uma série de imagens em movimento. Como conhecido pela técnica, diferentes tipos de imagens de referência são usados para codificar os padrões tal como uma imagem "Γ que é codificada usando somente os elementos dentro da própria imagem (intra-quadros), uma imagem "B" que é codificada usando elementos de dentro da própria imagem e/ou elementos de duas imagens de referência anteriores (inter-quadros), e uma imagem "P" que é codificada usando elementos de dentro da própria imagem e/ou ele- mentos de uma imagem de referência anterior (inter-quadros). Quando as imagens "B" ou "P" estão sendo codificadas e/ou decodificadas, tais i-
magens são, portanto, dependentes de outros quadros de referência tal que tais imagens podem ser apropriadamente codificadas ou construídas durante uma operação de codifica- ção. O sistema de codificação/decodificação deveria fornecer algum tipo de localização de memória tal que a imagem de referência pode ser armazenada enquanto outras imagens estão sendo codificadas ou decodificadas em vista de tais imagens de referência. Esses tipos de imagens têm uma relação temporal entre eles.
Essa situação torna-se mais complexa quando se considera um padrão de vídeo onde as múltiplas vistas entre diferentes imagens de vídeo são consideradas. Por exemplo, a FIG. 1 representa uma modalidade exemplificada de uma estrutura de imagem de referên- cia em um sistema de Codificação de Vídeo de Múltiplas Vistas. Especificamente, a estrutu- ra apresentada pertence ao uso de oito diferentes vistas (S0-S7) para instantes (TO-TIOO) de acordo com o esquema de codificação de múltiplas vistas (MVC) proposto em A. Vetro, Y. Su1 Η. Kimata, Α. Smolic1 "Joint Multiview Video Model (JMVM) 1.0", JVT-T208.doc. Kla- genfurt, Áustria, julho de 2006. Esse padrão de codificação de múltiplas vistas é baseado no padrão de Codificação de Vídeo Avançada (AVC) (G. Sulivan1 T. Wiegand, A. Luthra, "Draft of Version 4 of H.264/AVC (ITU-T Recommendation H.264 e ISO/IEC 14496-10 (MPEG-4 part 10) Advanced Video Coding)" Palma de Mallorca, ES 18722, outubro de 2004). A grande diferença entre ambos os padrões é que o AVC não aborda a codificação de imagens de múltiplas vistas enquanto que o MVC aborda.
Com relação novamente à FIG. 1, pode-se ver, por exemplo, que quando se codifi- ca uma imagem associada com as vistas S1 em T1, a imagem a ser codificada é relaciona- da às imagens (imagens de referência) de uma mesma vista (S1 em TO e S1 em T2), e a imagem a ser codificada é relacionada às imagens de uma vista diferente (SO em T1 e S2 em T1). Portanto, quando se codifica a imagem associada com S1, T1, faria sentido manter as imagens de referência (S1 em TO, S1 em T2, SO em T1 e S2 em T1) em um dispositivo de memória tal como um armazenador temporário, registrador, RAM, e seus similares. Uma implementação generalizada para a operação para um codificador e um dis-
positivo de memória que armazena as imagens de referência usadas no padrão de vídeo AVC é mostrada na FIG. 2. Especificamente, no diagrama de bloco 200, um codificador 205, um armazenador temporário de codificação 210, e um armazenador temporário de imagem decodificada (DPB) 215 são descritos. Durante uma operação de codificação (ou codificação ou decodificação), uma imagem que está sendo atualmente codificada pelo codificador está presente no armazenador temporário de codificação 210, enquanto que as imagens de refe- rência anteriormente codificadas são armazenadas no armazenador temporário de imagem decodificada 215.
Um problema resulta, entretanto, quando se tem que codificar uma imagem que e- xige o uso de mais de duas imagens de referência, quando tais imagens são armazenadas no DPB 215. Ou seja, o DPB 215 tem que fornecer algum tipo de organização a tais ima- gens de referência para tomá-las disponíveis ao codificador 205 durante a operação de co- dificação. Deve-se também apreciar que as diferentes imagens de referência podem ter que ser acessadas por um codificador 205 via o DPB 215, quando se está codificando uma se- gunda imagem. No caso temporal (tal como o AVC), este problema é bastante complexo, mas ele se torna maior ao tornar as imagens de referência disponíveis quando tem que con- siderar as imagens de referência a partir de diferentes vistas (como mostrado na FIG. 1) quando codificando uma imagem em um padrão de vídeo tal como o MVC.
Sumário da Invenção
Esses e outros defeitos e desvantagens da técnica anterior são abordados através
do presentes princípios, os quais são direcionados a um método e aparelho para reutilizar a informação de movimento disponível como um preditor de estimativa de movimento para codificação de vídeo.
De acordo com um aspecto dos presentes princípios, é fornecido um codificador que executa operações de gerenciamento de memória em uma imagem de referência arma- zenada em um dispositivo de memória em vista da informação de uma imagem sendo deco- dificada pelo decodificador, onde tal informação é relacionada à informação de vista associ- ada com essa imagem de referência.
Esses e outros aspectos, características e vantagens dos presentes princípios se tornarão aparentes a partir da seguinte descrição detalhada de modalidades exemplificadas, que serão lidas em conjunto com os desenhos em anexo. Breve Descrição dos Desenhos
Os presentes princípios podem ser mais bem entendidos de acordo com as seguin- tes figuras exemplificadas, nas quais:
A FIG. 1 ilustra uma modalidade exemplificada de codificação de múltiplas vistas de vistas de imagem de vídeo em diferentes instantes, onde tais imagens de vídeo são codifi- cadas usando as imagens de referência da forma indicada na figura.
A FIG. 2 ilustra uma modalidade exemplificada de um codificador de vídeo de acor- do com os princípios da presente invenção.
A FIG. 3 ilustra uma modalidade de pseudocódigo para um elemento de sintaxe ref_pic_list_reordering() usado de acordo com os princípios da presente invenção. A FIG. 4 ilustra uma modalidade de pseudocódigo para um elemento de sintaxe sli-
ce_shead_mvc_extension() usado de acordo com os princípios da presente invenção.
A FIG. 5 ilustra uma modalidade de pseudocódigo para um elemento de sintaxe ref_pic_list_reordering_mvc_extension() usado de acordo com os princípios da presente invenção.
A FIG. 6 ilustra uma modalidade de pseudocódigo para um elemento de sintaxe
ref_pic_list_reordering_mvc_extension() usado de acordo com os princípios da presente invenção.
A FIG. 7 ilustra um diagrama de bloco de uma modalidade de um método de reor- denamento de lista de referência de imagens de acordo com os princípios da presente in- venção.
Descrição Detalhada da Invenção
Os princípios da invenção podem ser aplicados a qualquer padrão de codificação baseado em intra-quadros e inter-quadros. O termo "imagem" que é usado por toda esta especificação é usado como um termo genérico para descrever as várias formas de infor- mação de imagem de vídeo que pode ser conhecida na técnica como um "quadro", "campo", e "partição", bem como o próprio termo "imagem". Dever-se-ia notar que embora o termo imagem esteja sendo usado para representar vários elementos de informação de vídeo, a AVC refere-se ao uso de partições onde tais imagens de referência podem usar partições da mesma imagem como uma "imagem de referência", e sem levar em consideração como uma imagem pode ser subdividida, os princípios da presente invenção se aplicam.
Também, na descrição da presente invenção, os vários comandos (elementos de sintaxe) que usam o tipo de linguagem C de formatação são detalhados nas figuras que u- sam a seguinte nomenclatura para os descritores em tais comandos:
u(n): inteiro sem sinal usando η bits. Quando η é V na tabela de sintaxe, o número de bits varia de uma forma dependente do valor de outros elementos de sintaxe. O processo de análise sintática para esse descritor é especificado pelo valor de retorno da função re- ad_bits(n) interpretado como uma representação binária de um inteiro sem sinal com o bit mais significativo escrito primeiro.
ue(v): Elemento de sintaxe Exp-Golomb-coded de inteiro sem sinal com o bit es- querdo primeiro.
se(v): Elemento de sintaxe Exp-Golomb-coded de inteiro com sinal com o bit es- querdo primeiro.
C: representa a categoria para a qual um elemento de sintaxe se aplica, isto é, a qual nível um campo particular deveria se aplicar.
A presente descrição ilustra os princípios da presente invenção. Aprecia-se assim que os versados na técnica serão capazes de desenvolver os vários arranjos que, embora não explicitamente descritos e mostrados aqui, incorporam os presentes princípios e são incluídos em seu espírito e escopo.
Todos os exemplos e linguagem condicional citados aqui são destinados para pro- pósitos pedagógicos a auxiliar o leitor no entendimento dos presentes princípios e dos con- ceitos contribuídos pelos inventores para promover a técnica, e serão interpretados sem limitação a tais exemplos e condições citadas especificamente.
Além disso, todas as situações citando aqui os princípios, aspectos, e modalidades dos presentes princípios, bem como os exemplos específicos desses, são destinadas a a- branger ambos os equivalentes estruturais e funcionais desses. Adicionalmente, pretende- se que tais equivalentes incluam ambos os equivalentes atualmente conhecidos bem como os equivalentes desenvolvidos no futuro, isto é, quaisquer elementos desenvolvidos que executam a mesma função, sem levar em consideração a estrutura.
Com relação novamente à FIG. 2, quando o codificador 205 (sob AVC e MVC) exe- cuta uma operação de codificação onde uma imagem em movimento é codificada, a imagem codificada é associada com vários valores diferentes, onde tais valores são localizados no cabeçalho (por exemplo, cabeçalho de partição) da imagem pelo codificador 205. O primeiro valor chamado um pic_num (número da imagem) indica a ordem da imagem, à medida que codificada, em uma seqüência de imagens de vídeo codificadas. Por exemplo, a primeira imagem na seqüência teria um valor de "1", enquanto a quarta imagem que é codificada teria um valor de "4".
Uma imagem também teria um valor chamado de contagem de ordem de imagem (POC) que determina a ordem na qual uma imagem codificada será exibida quando ela é finalmente decodificada. Isso significa que é possível que uma imagem codificada tenha um número de quadros que é diferente do número POC associado com a imagem.
A codificação de vídeo de múltiplas vistas introduz um terceiro valor que pode ser usado em conjunto com uma imagem. Um valor viewjd (identificação da vista) indica a vista à qual uma imagem corresponde. Por exemplo, uma imagem que está associada com uma vista S3 tem um viewjd igual a "3", enquanto a imagem correspondente à vista S5 tem um viewjd igual a "5". O número viewjd é também útil porque o uso de tal valor permite que o codificador desacople o pic_num e o POC entre as diferentes vistas, o que fornece um DPB 215 para armazenar as imagens de referência com o mesmo pic_num e/ou POC. Tais ima- gens (com o mesmo POC e pic-num), então, são distinguidas umas das outras usando o valor viewjd.
Dever-se-ia apreciar que os valores descritos acima podem ser implementados de diferentes formas (usando outros números, nomes de variáveis, tabelas de verificação, e seus similares).
Quando se armazena as imagens de referência no DPB 215 (como explicado em "Frame and Picture Management" por G. Richardson localizado em http://www.rgu.ac.uk/files/avc picmanagement draft1.pdf). a tais imagens são atribuídos um estado de memória que marca uma imagem de referência como uma a imagem de referên- cia de curta duração (que é referida ou por PicNum ou PicOrderCount) ou uma imagem de referência de longa duração (que é referida por LongTermPicNum que representa um núme- ro no índice LongTermPic). Entende-se que o estado de uma imagem de referência pode ser mudado (pelo uso, por exemplo, de um operador de comando de gerenciamento de memória, como conhecido na AVC) entre longa duração, curta duração, ou até mesmo a um estado conhecido como "uma não referência" onde a imagem de referência será eventual- mente removida do DPB 215. As imagens de referência são ordenadas em ou uma ou duas listas, que são usa-
das antes da codificação de uma imagem (partição). A referência para uma imagem P usará uma única lista de imagens (IistaO), enquanto uma imagem B usará duas listas (IistaO e lis- tai). A organização padrão de uma imagem em uma lista de imagens depende da ordem de decodificação (PicNum) quando uma imagem atual que está sendo codificada é uma ima- gem P e da ordem de exibição quando uma imagem atual que está sendo codificada é uma imagem B. Às imagens de referência designadas como imagens de referência de longa du- ração são atribuídos tipicamente um LongTermPicNum e são localizadas na lista de referên- cia em uma posição, tal que a imagem será retida por mais tempo do que a imagem de curta duração.
A AVC permite que um codificador 205 mude a ordem padrão de imagens de refe- rência na IistaO (e listai para as imagens B (partições)) quando codificando uma partição de imagem. Isto é, o codificador pode reconhecer que uma imagem de referência (na lista) po- de ser uma imagem de referência melhor que a indicada na lista de referência. Isso também auxilia na eficácia da codificação fazendo com que as imagens de referência, mais correla- cionadas com uma imagem atual a ser codificada, ocupem uma posição na lista de referên- cia que é mais baixa nos índices (mais próxima) que uma imagem de referência que é me- nos relacionada a uma imagem a ser codificada. Portanto, os comandos conhecidos como Comandos de Reordenamento de Lista de Imagens de Referência (RPLR) são usados para deslocar a ordem de tais imagens de referência, e são mostrados na FIG. 3.
A FIG. 3 mostra um elemento de sintaxe de AVC como ref_pic_list_reordering (que é descrito em relação às partições, embora seja apreciado que tais conceitos possam ser executados para as imagens, como explicado acima), que fornece os comandos de AVC usados para reordenar uma lista de imagens, onde os seus significados são explicados com a referência AVC.
Quando se considera o uso das listas de imagens de referência dentro do contexto da MVC, haverá normalmente dois conjuntos de referências a considerar, onde existem re- ferências temporais e referências de vista cruzada, ao contrário da AVC que considera so- mente as referências temporais.
Portanto, foi proposto na técnica anterior nos princípios descritos em K. Muller, P. Merkle, A. Smolic1 T. Wiegand, "Multiview Coding using AVC", m12945, Bangkok, Tailândia, janeiro de 2006, construir uma única seqüência intercalada que intercalará todas as seqüên- cias de vídeo em uma única seqüência, que pode então ser codificada por um codificador compatível com AVC e que produzirá um fluxo de bits compatível. Mais uma vez, o aspecto negativo desta implementação de AVC proposta é que não existe uma forma de identificar a qual vista qualquer imagem pertence desde que os valores únicos para pic_num e POC têm que ser atribuídos a cada imagem que é codificada de modo a implementar os comandos RPLP à medida que eles existem atualmente na AVC.
De volta à implementação atual de MVC, foi proposto incorporar uma sintaxe adi- cional que é adicionada ao Conjunto de Parâmetros de Seqüência (SPS) para sinalizar as referências de vista cruzada. Esse elemento de sintaxe, como mostrado abaixo, é usado para indicar as referências de vista cruzada a serem usadas para as imagens âncora e não âncora.
O seguinte procedimento deve ser conduzido para localizar as imagens de referên- cia a partir de uma vista que é diferente da vista atual nas listas de predição de referência: - Para cada valor de i de 0 a num_multiview_ref_for_listX-1:
- A imagem reconstruída a partir da vista reference_view_for_list_X[i], que é tempo- rariamente alinhada com a imagem atual deve ser obtida e inserida no armazenador tempo- rário de predição decodificada (DPB).
- Um índice para esta imagem deve ser inserido no próximo encaixe vazio na Ref-
PicListX.
Esta implementação, entretanto, tem um problema já que existe uma forma fixa de inicializar (e construir) uma lista de imagens de referência, que não pode ser mudada. Isto é, não existe flexibilidade na ordem das imagens de vista cruzada e temporais. Adicional- mente, o número de imagens de referência designadas para cada imagem âncora (I) e não âncora (B e P) é o mesmo.
A presente invenção, então, propõe uma estrutura para como reordenar uma lista de imagens de referência que considera imagens de múltiplas vistas. Entende-se que embo- ra as modalidades da presente invenção sejam descritas dentro do contexto dos ambientes AVC e MVC, entende-se que os princípios da presente invenção se aplicam também a ou- tros padrões de codificação de vídeo.
A presente invenção propõe um movo elemento de sintaxe, ref_pic_list_reordering_mvc_extension() na FIG. 4 como presente em um cabeçalho de ima- gem (cabeçalho de partição). Primeiro, a presente invenção propõe que os elementos de sintaxe compatíveis
com AVC num_refJdx_IO_active_minus1 e num_ref_idxJ1_active_minus1 devessem ser redefinidos para refletir o fato de que eles indicam somente o número de imagens de refe- rência ativas no sentido temporal:
O num_ref_idx_IO_active_minus1 especifica o índice de referência máximo para a lista 0 de imagens de referência temporais que dever ser usada para decodificar a partição. A faixa de num_ref_idx_IO_active_minus1 é especificada como segue.
- Se field_pic_flag é igual a 0, num_ref_idx_IO_active_minus1 deve estar na faixa de 0 a 15, inclusive. Quando MbaffFrameFIag é igual a 1, o num_ref_idx_IO_active_minus1 é o valor de índice máximo para a decodificação de macroblocos de quadro e 2*
num_ref_idx_IO_active_minus1 + 1 é o valor de índice máximo para a decodificação de ma- croblocos de campo.
- De outra forma (field_pic_flag é igual a 1), num_ref_idx_IO_active_minus1 deve estar na faixa de 0 a 31, inclusive.
um_ref_idx_l1_active_minus1 tem a mesma semântica de num_ref_idx_IO_active_minus1 com IO e a lista 0 substituídos por 11 e lista 1, respectivamen- te.
- Segundo, dois novos elementos de sintaxe são propostos, os quais indicam o nú- mero de imagens de referência ativas que devem estar em um sentido de vista cruzada: num_ref_idx_IO_active_view_minus1 especifica o índice de referência máximo para a lista 0 de imagens de referência de vista cruzada que deve ser usada para decodificar a partição. A faixa de num_ref_idx_IO_active_view_minus1 é especificada como segue.
- Se field_pic_flag é igual a 0, num_ref_idx_IO_active_view_minus1 deve estar na faixa de 0 a 15, inclusive. Quando MbaffFrameFIag é igual a 1, num_refJdxJ0_active_view_minus1 é o valor de índice máximo para a decodificação de macroblocos de quadro e 2* num_ref_idx_IO_active_view_minus1 + 1 é o valor de índice máximo para a decodificação de macroblocos de campo.
- De outra forma (field_pic_flag é igual a 1), num_ref_idx_IO_active_view_minus1 deve estar na faixa de 0 a 31, inclusive.
Num_refJdxJ1_active_view_minus1 (o outro elemento de sintaxe proposto) tem a mesma semântica de num_refJdx_IO_active_view_minus1 com IO e lista 0 substituídos por 11 e lista 1, respectivamente.
Essas duas sintaxes têm valores que satisfazem as seguintes equações:
num_ref_idx_IO_active_minus1 + num_refJdxJ0_active_view_minus1 <= num_ref_frames
e
num_ref_idxJ1_active_minus1 + num_ref_idxJ1_active_view_minus1 <= num_ref_frames.
Como descrito anteriormente, o processo de inicialização padrão para um sistema MVC necessita ser definido. Portanto, várias modalidades diferentes são propostas para tal processo:
Uma primeira modalidade dos princípios da presente invenção tem todas as ima- gens temporais da vista atual sendo inicializadas como definido pela especificação MPEG_4 AVC. Essa lista inicializada é então truncada pelo valor especificado em num_ref_idx_IO_active_minus1 e num_ref_idxJ1_active_minus1 para LIST_0 e LIST_1 res- pectivamente.
Seguindo essas imagens, as imagens de referência de vista cruzada especificadas no SPS da especificação MVC são inseridas e truncadas pelo valor especificado em num_ref_idx_IO_active_view_minus1 e num_ref_idxJ1_active_view_minus1 para LIST_0 e LIST_1 respectivamente.
De modo a permitir que os comandos de ordenamento da lista de imagens de refe- rência como especificado na especificação MVC atual funcione corretamente, impõe-se uma restrição de que esses comandos possam somente funcionar nas imagens de referência temporais. O processo RPLR pode ou seguir imediatamente após a inicialização das ima- gens temporais e antes da inicialização das referências de vista cruzada ou pode seguir a- g 15
pós ambas as referências de vista cruzada e temporais que foram inicializadas às suas po- sições padrão, e no último caso somente as imagens de referência temporais serão reorde-
nadas
Uma desvantagem dessa primeira modalidade proposta é que as imagens de refe- rência de vista cruzada não podem ser reordenadas.
Uma segunda modalidade é proposta onde as imagens de referência de vista cru- zada especificadas no SPS da especificação MVC são inseridas e truncadas pelo valor es- pecificado em num_refJdxJ0_active_view_minus1 e num_refJdxJ1_active_view_minus1 para LIST_0 e LISTJ respectivamente.
Seguindo essas figuras, todas as imagens temporais da vista atual são inicializadas
como definido na especificação MPEG-4 AVC. Essa lista é então truncada pelo valor especi- ficado em num_ref_idx_IO_active_minus 1 e num_refJdxJ1_active_minus1 para LIST_0 e LISTJ respectivamente.
Uma terceira modalidade é proposta para abordar o problema com a primeira mo- dalidade descrita acima. Especificamente, com relação ao pedido PCT depositado em 12 de outubro de 2007 [número serial a ser determinado] que reivindica a prioridade do Pedido Provisório U.S. N° Serial 60/851.522, depositado em 13 de outubro de 2006 e do Pedido Provisório U.S. N0. 60/851.589, depositado em 13 de outubro de 2006, o elemento de sinta- xe IongjermJrameJdx é usado para atribuir um índice (valor) de longa duração a uma i- magem com um viewjd que é diferente da vista associada com uma imagem sendo atual- mente codificada. Atribuindo-se um índice de longa duração às imagens de vista cruzada, tais imagens podem então ser tratadas como se elas fossem usadas como imagens AVC que permitiriam o uso de comandos RPLR como aplicados às imagens de longa duração. Portanto, as imagens de vista cruzada podem ser eficazmente reordenadas usando AVC.
Uma quarta modalidade é também proposta onde novos comandos RPLP são pro- postos. Esses comandos são similares aos comandos de gerenciamento de memória que são usados para controlar um DPB 215, mas esses novos comandos são usados para ope- rar em imagens em vistas além de uma vista associada com uma imagem sendo atualmente operada. Esses novos elementos de sintaxe são apresentados na FIG. 5 que mostra a sin- taxe de reordenamento da lista de imagens de referência MVC proposta.
A inicialização padrão para esta modalidade pode ser ao primeiro local de todas as referências temporais quando especificadas em relação a inicialização de lista como defini- do na especificação H.264/MPEG-4 AVC e então segue estas imagens com a imagens de vista cruzada na SPS da extensão MVC do H.264/MPEG-4 AVC.
Parte da operação dessa modalidade é que os elementos de sintaxe são separados entre o ref_picJist_reordering_mvc_extension, que podem ter o elemento de sintaxe picJist_reordering chamado. Isto é, a organização da chamada pode ter imagens baseadas em múltiplas vistas processadas no ambiente AVC e então os resultados de tal processo podem ter as imagens baseadas em referência de múltiplas vistas processadas no ambiente AVC.
Os vários estados usados em conjunto com o índice mvc_reordering_of_pic_nums_idc são descritos na TABELA 1 abaixo.
mvc_reordering_of_pic_nums_idc Reordenamento especificado 0 abs_diffjDic_num_minus1 está presente e corresponde a uma diferença a subtrair de um valor de predição de número de imagem 1 abs_diff_pic_num_minus1 está presente e corresponde a uma diferença a adicionar em um valor de predição de número de imagem 2 long_term_pic_num está presente e especi- fica o número de imagem de longa duração para uma imagem de referência 3 Final do ciclo para reordenamento da lista de imagens de referência inicial fABELA 1
Em adição, os elementos de sintaxe mvc_reordering_of_pic_nums_idc, abs_diff j)ic_num_minus1, e long_term_pic_num especificam a mudança das listas de ima- gens de referência iniciais nas listas de imagens de referência a serem usadas para decodi- ficar a partição.
O mvc_ref_pic_list_reordering_flag_IO igual a 1 especifica que o elemento de sinta- xe mvc_reordering_of_pic_nums_idc está presente para especificar a lista 0 de imagens de referência. O mvc_ref_pic_list_reordering_flagJO igual a 0 especifica que esse elemento de sintaxe não está presente. Quando mvc_ref_pic_list_reordering_flag_IO é igual a 1, o número de vezes que
mvc_reordering_of_pic_nums_idc não é igual a 3 seguindo mvc_ref_pic_list_reordering_flagJO, não deve exceder num_ref_idxJ0_active_minus1 + 1.
Quando o RefPicList0[ num_ref_idxJ0_active_minus1 ] na lista de imagens de re- ferência iniciais produzida como especificada na especificação AVC H.264/MPEG-4 é igual a "imagem de não referência", o mvc_ref_pic_list_reordering_flagJO deve ser igual a 1 e mvc_reordering_of_pic_nums_idc não deve ser igual a 3 até que o RefPicListO[ num_ref_idx_IO_active_minus1 ] na lista reordenada produzida como especificado na espe- cificação AVC H.264/MPEG-4 não é igual a "imagem de não referência".
O mvc_ref_picJÍst_reordering_flag_J1 igual a 1 especifica que o elemento de sinta- xe mvc_reordering_of_pic_nums_idc está presente para especificar a lista 1 de imagens de referência. O mvc_ref_pic_IÍst_reordering_flagJ1 igual a O especifica que esse elemento de sintaxe não está presente.
Quando o mvc_ref_pic_list_reordering_flag_l1 é igual 1, o número de vezes que o mvc_reordering_of_pic_nums_idc não é igual a 3 seguindo mvc_ref_pic_list_reordering_flag_l1 não deve exceder num_ref_idx_IO_active_minus1 + 1.
Quando se decodifica uma partição B e RefPicListI [ num_refjdx_l1_active_minus1] na lista de imagens de referência iniciais produzida como especificado na especificação AVC H.264/MPEG-4 é igual à "imagem de não referência", mvc_ref_pic_list_reordering_flag_M deve ser igual a 1 e mvc_reordering_of_pic_nums_idc não deve ser igual a 3 até que RefPicListO[ num_ref_idx_l1_active_minus1] na lista reorde- nada produzida como especificado na especificação AVC H.264/MPEG-4 não seja igual a "imagem de não referência".
O mvc_reordering_of_pic_nums_idc junto com diference_of_view_id e o abs_diff_pic_num_minus1 ou long_term_pic_num especificam quais das imagens são re- mapeadas. Os valores de mvc_reordering_of_pic_nums_idc são especificados na especifi- cação AVC H.264/MPEG-4. O valor do primeiro mvc_reordering_of_pic_numsJdc que se- gue imediatamente após m vc_ref_p io_Ii st_reo rd eri ng_f IagJ O ou
mvc_ref_pic_list_reordering_flagJ1 não deve ser igual a 3.
O abs_diff_pic_num_minus1 mais 1 especifica a diferença absoluta entre o número de imagem da imagem que está sendo movida para o índice atual na lista e o valor de pre- dição do número de imagens. abs_diffj>ic_num_minus1 deve estar na faixa de O a MaxPic- Num - 1.A imagem que está sendo movida precisa ter um viewjd diferente do viewjd da imagem atual.
O long_term_pic_num especifica o número de imagem de longa duração da ima- gem que está sendo movida para o índice atual na lista. Quando se decodifica um quadro codificado, o long_term_pic_num deve ser igual a um LongTermPicNum atribuído a um dos pares de quadros de referência ou de campos de referência complementares marcados co- mo "usado para a referência de longa duração". Quando se decodifica um campo codificado, o long_term_pic_num deve ser igual a um LongTermPicNum atribuído a um dos campos de referência marcados como "usado para referência de longa duração". A imagem que está sendo movida precisa ter um viewjd diferente do viewjd da imagem atual.
Difference_of_viewJd especifica a diferença entre o viewjd da imagem que está sendo movida para o índice atual na lista e o valor de predição de viewjd.
O processo para executar a reordenação das imagens de referência é baseado na lista padrão e pode ser descrito como segue:
Quando o mvc_ref_picJist_reordering_flagJO é igual a 1, aplica-se o seguinte:
- Faz-se o refldxLO ser um índice na lista de imagens de referência RefPicListO. Ini- cialmente ele é definido como igual a 0.
- Os elementos de sintaxe correspondentes mvc_reordering_of_pic_nums_idc são processados na ordem em que eles ocorrem no fluxo de bits. Para cada um desses elemen- tos de sintaxe, aplica-se o seguinte.
1) Se o mvc_reordering_of_pic_nums_idc é igual a O ou igual a 1, o processo espe-
cificado em I abaixo é invocado com refldxLO como entrada, e a saída é atribuída a refldxLO.
2) De outra forma, se mvc_reordering_of_pic_nums_idc é igual a 2, o processo es- pecificado em Il abaixo é invocado com refldxLO como entrada, e a saída é atribuída a refld- xLO.
3) De outra forma (mvc_reordering_of_pic_nums_idc é igual a 3), o processo de re-
ordenamento para a lista de imagens de referência RefPicListO é terminado.
Quando mvc_ref_pic_list_reordering_flag_l1 é igual a 1, o seguinte se aplica.
- Faz-se refldxLI ser um índice na lista de imagens de referência RefPicListI. Ele é inicialmente configurado para ser igual a 0.
-Os elementos de sintaxe correspondentes mvc_reordering_of_pic_nums_idc são
processados na ordem em que eles ocorrem no fluxo de bits. Para cada um desses elemen- tos de sintaxe, aplica-se o seguinte.
4) Se o mvc_reordering_of_pic_nums_idc é igual a 0 ou igual a 1, o processo espe- cificado em I abaixo é invocado com refldxLI como entrada, e a saída é atribuída a refldxLI.
5) De outra forma, se mvc_reordering_of_pic_nums_idc é igual a 2, o processo es-
pecificado em Il abaixo é invocado com refldxLI como entrada, e a saída é atribuída a refld- xLI.
6) De outra forma (mvc_reordering_of_pic_nums_idc é igual a 3), o processo de re- ordenamento para a lista de imagens de referência RefPicListI é terminado.
O seguinte é proposto para reordenar as listas de imagens de referência para ima-
gens de referência de curta duração com um viewjd que é diferente do viewjd de uma imagem que está sendo atualmente codificada:
A entrada para esse processo é um índice refldxLX (com X sendo 0 ou 1). A saída desse processo é um índice aumentado refldxLX.
viewldLX = viewldLXPred + difference_of_view_id
A variável picNumLXNoWrap é derivada como segue:
- Se mvc_reordering_of_pic_nums_idc é igual a 0
Se ( picNumLXPred - ( abs_diff_pic_num_minus1 +1 ) < 0 )
picNumLXNoWrap = picNumLXPred - ( abs_diffjDic_num_minus1 + 1 ) + Max-
PicNum
senão
picNumLXNoWrap = picNumLXPred - ( abs_diff_pic_num_minus1 + 1 ) - De outra forma (mvc_reordering_of_pic_nums_idc é igual a 1), Se ( picNumLXPred + (abs_diff_pic_num_minus1 + 1) >= MaxPicNum ) picNumLXNoWrap = picNumLXPred + ( abs_diffj3ic_num_minus1 + 1) MaxPicNum senão
picNumLXNoWrap = picNumLXPred + ( abs_diffj)ic_num_minus1 + 1). ViewIdLXPred é o valor de predição para a variável viewldLX. Quando o processo especificado nessa sub-cláusula é invocado pela primeira vez para uma partição (ou seja, para a primeira ocorrência de mvc_reordering_of_pic_nums_idc igual a 0 ou 1 na sintaxe ref_picJist_reordering()), viewldLOPred e viewldLIPred são inicialmente configurados igual a CurrViewId. Após cada atribuição de viewldLx, o valor de viewldLX é atribuído a viewl- dLXPred.
picNumLXPred é o valor de predição para a variável picNumLXNoWrap. Quando o processo especificado nessa sub-cláusula é invocado pela primeira vez para uma partição (ou seja, para a primeira ocorrência de mvc_reordering_of_pic_numsJdc igual a 0 ou 1 na sintaxe ref_pic_list_reordering()), picNumLOPred e picNumLIPred são inicialmente configu- rados iguais a CurrPicNum. Após cada atribuição de picNumLXNoWrap, o valor de picNu- mLXNoWrap é atribuído a picNumLXPred.
A variável picNumLX é derivada como segue: Se ( picNumLXNoWrap > CurrPicNum ) picNumLX = picNumLXNoWrap - MaxPicNum senão
picNumLX = picNumLXNoWrap
picNumLX e viewldLX devem ser iguais a PicNum e viewld de uma imagem de refe- rência que é marcada como "usada para referência de curta duração" e não devem ser i- guais a PicNum de uma imagem de referência de curta duração que é marcada como "não existente".
O seguinte procedimento é conduzido para localizar a imagem com número de i- magem de curta duração picNumLX com viewjd igual a viewldLX na posição de índice re- fldxLX, deslocar a posição de quaisquer das imagens restantes para último na lista, e au- mentar o valor de refldxLX.
Para (cldx = num_ref_idx_IX_active_minus1 + 1; cldx > refldxLX; cldx-) RefPicListXf cldx ] = RefPicListXf cldx - 1]
RefPicListXf refldxLX++ ] = imagem de referência de curta duração com PicNum i- gual a picNumLX e viewjd igual a viewldLX η Idx = refldxLX
para ( cldx = refldxLX; cldx <= numJdx_IX_active_minus1 + 1; cldx++ ) se ((PicNumF( RefPicListXf cldx ])!= picNumLX ) && ViewIdF (RefPicListXf cldx ])!= viewldLX)
RefPicListXf nldx++ ] = RefPicListX[ cldx ]
Onde a função PicNumF( RefPicListXf cldx ]) é derivado como segue:
- Se a imagem RefPicListXf cldx ] é marcada como "usada para referência de curta duração", PicNumF( RefPicListXf cldx ]) é o PicNum da imagem RefPicListXf cldx ].
- De outra forma (a imagem RefPicListXf cldx ] não é marcada como "usada para referência de curta duração"), PicNumF( RefPicListXf cldx ]) é igual a MaxPicNum.
Nota-se que o valor de MaxPicNum não pode nunca ser igual a picNumLX. Onde a função ViewldF( RefPicListXf cldx ]) é derivado como segue: - ViewldF( RefPicListXf cldx ]) é o viewld da imagem RefPicListXf cldx ].
Também nota-se, dentro desse procedimento de pseudocódigo, que o comprimento da lista RefPicListX é temporariamente feito um elemento maior do que o comprimento ne- cessário para a lista final. Após a execução desse procedimento, somente elementos 0 a num_red_ldx_IX_active_minus1 da lista precisam ser retidos. Para o reordenamento das listas de imagens de referência que contêm imagem de
referência de longa duração, o seguinte é proposto:
A entrada para esse processo é um índice refldxLX (com X sendo 0 ou 1). A saída desse processo é um índice aumentado refldxLX.
O seguinte procedimento é conduzido para localizar a imagem com número de i- magem de longa duração long_term_pic_num que está presente na vista indicada por vie- wldX como derivado acima na posição de índice refldxLX, deslocar a posição de quaisquer outras imagens restantes para mais adiante na lista, e aumentar o valor de refldxLX. Para( cldx = num_ref_idxJX_active_minus1 + 1; cldx > refldxLX; cldx- ) RefPicListXf cldx ] = RefPicListXf cldx - 1 ] RefPicListXf refldxLX++ ] = imagem de referência de longa duração com Long-
TermPicNum igual a long_term_pic_num e viewld igual a viewldLX nldx = refldxLX
para( cldx = refldxLX; cldx <= num_refJdx_IX_active_minus1 + 1; cldx++ ) se( ( LongTermPicNumF( RefPicListXf cldx ])! = long_term_pic_num ) && ViewldF( RefPicListXf cldx ]))! = viewldLX )
RefPicListXf nldx++ ] = RefPicListXf cldx ]
Onde a função LongTermPicNumF( RefPicListXf cldx ]) é derivado como segue:
- Se a imagem RefPicListXf cldx ] é marcada como "usada para referência de longa duração", LongTermPicNumF( RefPicListXf cldx ]) é o LongTermPicNum da imagem RefPi-
cListXf cldx ].
- De outra forma (a imagem RefPicListXf cldx ] ) não é marcada como "usada para referência de longa duração"), LongTermPicNumF( RefPicListXf cldx ] ) é igual a 2*( Ma- xLongTermFrameldx + 1 ).
Nota-se que o valor de 2*( MaxLongTermFrameIdx + 1) não pode nunca ser igual a long_term _pic_num.
Onde a função ViewldF( RefPicListXf cldx ] ) é derivada como segue: - Se a imagem RefPicListXf cldx ] é marcada como "usada para referência de curta
duração", ViewldF( RefPicListXf cldx ]) é o viewld da imagem RefPicListXf cldx ].
- De outra forma (a imagem RefPicListXf cldx ]) não é marcada como "usada para referência de curta duração"), PicNumF( RefPicListXf cldx ] ) é igual a MaxPicNum.
Nota-se também que o valor de MaxPicNum não pode nunca ser igual a picNumLX e dentro desse procedimento de pseudocódigo, o comprimento da lista RefPicListX é tempo- rariamente feito um elemento maior do que o comprimento necessário para a lista final. A- pós a execução desse procedimento, somente elementos 0 a num_ref_idx_IX_active_minus1 da lista precisam ser retidos.
Uma estrutura adicional para os princípios da presente invenção é descrita abaixo para o elemento de sintaxe ref_pic_reordering_mvc_extensiona() mostrado na FIG. 6. Uma diferença entre a operação desse elemento de sintaxe contra o elemento de sintaxe descrito com relação à FIG. 5, é que as listas de reordenamento podem ser feitas para qualquer vista e que tal reordenamento é feito usando somente uma chamada ao invés de ter que chamar o comando rec_pic_list_reordering separado (como mostrado na FIG. 3). Para uma primeira modalidade sob essa estrutura alternativa, as variáveis
num_ref_idxJ0_active_minus1 e num_ref_idxJ1_active_minus1 são redefinidas novamente para representar o número de imagens de referência ativas no sentido temporal (ver as se- ções anteriores que descrevem essas variáveis).
Essa modalidade define as variáveis num_ref_idxJO_active_viw e num_ref_idxJ1_active_view que são usadas para indicar o número de imagens ativas em uma vista cruzada:
Num_ref_idxJO_active_view especifica o índice máximo de referência para a lista 0 de imagens de referência de vista cruzada que deve ser usada para decodificar a partição. A faixa de num_ref_idx_IO_active é especificada como segue. - Se Field_pic_flag é igual a 0, num_ref_idx_IO_active_view deve estar na faixa de 0
a 16, inclusive. Quando MbaffFrameFIag é igual a 1, num_ref_idx_IO_active_view é o valor de índice máximo para a decodificação dos macroblocos de quadro e 2* num_refJdx_IO_active_view é o valor de índice máximo para a decodificação de macroblo- cos de campo.
- De outra forma (Field_pic_flag é igual a 1), num_ref_idx_IO_active_view deve es-
tar na faixa de 0 a 32, inclusive.
num ref idx 11 active view tem a mesma semântica de num_ref_idx_IO_active_view com IO e lista 0 substituídos por 11 e lista 1, respectivamente. Essas sintaxes têm valores que satisfazem a seguinte equação: num_ref_idx_IO_active_minus1 + num_ref_idx_IO_active_view <= num_ref_frames e
num_refJdxJ1_active_minus1 + num_ref_idxJ1_active_view <= num_ref_frames.
Como mencionado anteriormente, o processo de inicialização padrão para o siste- ma MVC necessita ser claramente definido.
Primeiro, todas as imagens temporais da vista atual são inicializadas como definido na especificação AVC MPEG-4. Isso inclui referência de curta duração e de longa duração. Essa lista é então truncada pelo valor especificação em num_ref_idx_IO_active_minus1 e num_ref_idxJ1_active_minus1 para LIST_0 e LISTJ respectivamente.
Seguindo essas imagens, as imagens de referência de vista cruzada especificadas no SPS da especificação MVC são inseridas e truncadas pelo valor especificado em num_ref_idx_IO_active_view e num_ref_idxJO_active_view para LIST_0 e LISTJ respecti- vãmente.
Os comandos RPLR que são similares aos comandos RPLR AVC H.264/MPEG-4 são introduzidos. Esses comandos substituem os comandos RPLR existentes em AVC H.264/MPEG-4 (ver FIG. 6).
Os novos comandos RPLR têm a seguinte semântica. O comando para indicar se os comandos de reordenamento estão presentes ou não é mostrado na TABELA 1 anterior.
Os elementos de sintaxe mvc_reordering_of_pic_numsJdc, abs_diff_pic_num_minus1, e IongJerm_pic_num especificam a mudança das listas de ima- gens de referência iniciais para as listas de imagens de referência a serem usadas para de- codificar a informação de imagem (tal como uma partição). Mvc_ref_picJist_reorderingJlagJO igual a 1 especifica que o elemento de sintaxe
mvc_reordering_of_pic_numsJdc está presente para especificar a lista O de imagens de referência. Mvc_ref_picJist_reorderingJlagJO igual a O especifica que esse elemento de sintaxe não está presente.
Quando mvc_ref_picJist_reorderingJlagJO é igual a 1, o número de vezes que mvc_reordering_of_pic_numsJdc não é igual a 3 seguindo mvc_ref_picJist_reorderingJlag_IO não deve exceder num_refJdx_IO_active_minus1 + 1 + num_refJdx_IO_active_view.
Quando RefPicListO[ num_refJdxJ0_active_minus1 + num_refJdxJO_active_view ] na lista de imagens de referência inicial, produzida como especificado na especificação AVC H.264/MPEG-4, é igual a "imagem de não referência", mvc_ref_picJist_reorderingJIagJO deve ser igual a 1 e mvc_reordering_of_pic_numsJdc não deve ser igual a 3 até que RefPicListO[ num_refJdxJ0_active_minus1 + num_ref_idx_IO_active_view ] na lista reordenada, produzida na especificação AVC H.264/MPEG-4, não é igual a "imagem de não referência".
mvc_ref_pic_list_reordering_flagJ1 igual a 1 especifica que o elemento de sintaxe mvc_reordering_of_pic_nums_idc está presente para especificar a lista 1 de imagens de referência.
mvc_ref_pic_list_reordering_flagJ1 igual a 0 especifica que o element de sintaxe não está presente.
Quando mvc_ref_picJist_reordering_flagJ1 é igual a 1, o número de vezes que mvc_reordering_ofJc_nums_idc não é igual a 3 seguindo mvc_ref_pic_list_reordering_flag_l1 não deve exceder num_ref_idx_l1_active_minus1 + 1 + num_refJdxJ 1 _active_view.
Quando decodificando uma partição B e RefPicListI [ num_refJdxJ1_active_minus1 + num_refjdx_l1_active_view] na lista de imagens de refe- rência inicial produzida como especificado na especificação AVC H.264/MPEG-4 é igual a "imagem de não referência", mvc_refjdícJist_reordering_flag J1 deve ser igual a 1 e mvc_reordering_of_pic_numsJdc não deve ser igual a 3 até que RefPicListI [ num_refJdxJ1_active_minus1 + num_refJdxJ1_active_view) na lista reordenada produzi- da como na especificação AVC H.264/MPEG-4 não é igual a "imagem de não referência".
mvc_reordering_of_pic_numsJdc junto com difference_of_viewJd e abs_diff_pic_num_minus1 ou longJerm_pic_num especifica quais das imagens de referên- cia são re-mapeadas. Os valores de mvc_reordering_ of_pic_numsJdc são especificados na especificação AVC H.264/MPEG-4. O valor do primeiro mvc_reordering_of_pic_numsJdc que segue imediatamente após mvc_ref_picJist_reordering_flag_IO ou
mvc_ref_picJist_reordering JIagJI não deve ser igual a 3. abs_diff_pic_num_minus1 plus 1 especifica a diferença absoluta entre o número da
imagem que está sendo movida para o índice atual na lista e o valor de predição de número de imagem. abs_diff_pic_num_minus1 deve estar na faixa de 0 a MaxPicNum -1.
long_term_pic_num especifica o número de imagem de longa duração da imagem que está sendo movida para o índice atual na lista. IongJerm_pic_num deve ser igual a um LongTermPicNum atribuído a um dos quadros de referência ou pares de campos de refe- rência complementares marcados como "usados para referência de longa duração". Quan- do decodificando um campo codificado, IongJerm_pic_num deve ser igual a um LongTerm- PicNum atribuído a um dos campos de referência marcados como "usado para referência de longa duração".
difference_of_viewJd especifica a diferença entre o viewjd da imagem que está
sendo movida para o índice atual na lista e o valor de predição de viewjd.
O processo para executar o reordenamento das imagens de referência é baseado na lista padrão e pode ser descrito como segue:
Quando mvc_ref_picJist_reordering_flagJO é igual a 1, o seguinte se aplica,
- Faz-se refldxLO ser um índice na lista de imagens de referência RefPicListO. Ele é inicialmente configurado para 0.
-Os elementos de sintaxe correspondentes mvc_reordering_of_pic_nums_idc são
processados na ordem em que eles ocorrem no fluxo de bits. Para cada um dos elementos de sintaxe, o seguinte se aplica.
1) Se mvc_reordering_of_pic-numsJdc é igual a 0 ou igual a 1, o processo especi- ficado em I abaixo é invocado com refldxLO como entrada, e a saída é atribuída a refldxLO.
2) De outra forma, se mvc_reordering_of_pic_nums_idc é igual a 2, o processo es-
pecificado em Il abaixo é invocado com refldxLO como entrada, e a saída é atribuída para refldxLO.
3) De outra forma (mvc_reordering_of_pic _nums_idc é igual a 3), o processo de reordenamento para a lista de imagens de referência RefPicIistO é terminado.
Quando mvc_ref_pic_list_reordering_flagJ1 é igual a 1, o seguinte se aplica.
- Faz-se refldxLI ser um índice na lista de imagens de referência RefPicListI. Ele é inicialmente configurado igual a 0.
- Os elementos de sintaxe correspondentes mvc_reordering_of_pic_nums_idc são processados na ordem em que eles ocorrem no fluxo de bits. Para cada um desses elemen-
tos de sintaxe, o seguinte se aplica.
4) Se mvc_reordering_of_pic_nums_idc é igual a 0 ou igual a 1, o processo especi- ficado em I abaixo é invocado com refldxLI como entrada, e a saída é atribuída a refldxLI.
5) De outra forma, se mvc_reordering_of_pic _nums_idc é igual a 2, o processo es- pecificado em Il abaixo é invocado com refldxLI como entrada, e a saída é atribuída a refld-
xL1.
6) De outra forma (mvc_reordering_of_pic _nums_idc é igual a 3), o processo de reordenamento para a lista de imagens de referência RefPicListI é terminado.
Um esquema para reordenar listas de imagens de referência para imagens de refe- rência de curta duração é descrito abaixo:
A entrada para esse processo é um índice refldxLX (com X sendo 0 ou 1).
A saída desse processo é um índice aumentado refldxLX, viewldLX = viewldLXPred + difference_of_view_id picNumLXNoWrap é derivado como segue, se mvc_reordering_of_pic_nums_idc é igual a 0
se( picNumLXPred - ( abs_diff_pic_num_minus1 + 1 ) < 0 )
picNumLXNoWrap = picNumLXPred - (abs_diffj3ic_num_minus1 + 1 ) + Max-
PicNum senão
picNumLXNoWrap = picNumLXPred - ( abs_diff_pic_num_minus1 + 1 ) De outra forma (mvc_reordering_of_pic_numsjdc é igual a 1), se( picNumLXPred + (abs_diff_pic_num_minus1 + 1) >= MaxPicNurn) picNumLXNoWrap = picNumLXPred + ( abs_dlff_pic_num_minus1 + 1 ) - MaxPic-
Num
senão
picNumLXNoWrap = picNumLXPred + (abs_diffj)ic_num_minus1 + 1 ) viewldLXPred é o valor de predição para a variável viewldLX. Quando o processo especificado na sub-cláusula é invocado pela primeira vez para uma partição (ou seja, para a primeira ocorrência de mvc_reordering_of_pic_nums_idc igual a 0 ou 1 na sintaxe ref_pic_list_reordering()), viewldLOPred e viewldLIPred são inicialmente configurados igual a CurrViewId. Após a atribuição de viewldLX, o valor de viewldLX é atribuído a viewldLX- Pred.
picNumLXPred é o valor de predição para a variável picNumLXNoWrap. Quando o processo especificado na sub-cláusula é invocado pela primeira vez para uma partição (ou seja, para a primeira ocorrência de mvc_reordering_of_pic_nums_idc igual a 0 ou 1 na sin- taxe ref_pic_list_reordering()), picNumLOPred e picNumLIPred são inicialmente configura- dos igual a CurrPicNum. After cada atribuição de picNumLXNoWrap, o valor de picNumLX- NoWrap é atribuído a picNumLXPred.
picNumLX é derivado como segue se( picNumLXNoWrap > CurrPicNum ) picNumLX = picNumLXNoWrap - MaxPicNum senão
picNumLX = picNumLXNoWrap
picNumLX e viewldLX devem ser iguais a PicNum e viewld de uma imagem de refe- rência que é marcada como "usada para referência de curta duração" e não devem ser i- guais a PicNum de uma imagem de referência de curta duração que é marcada como "não existente".
O seguinte procedimento é conduzido para localizar a imagem com o número de imagem de curta duração picNumLX com viewjd igual a viewldLX na posição de índice re- fldxLX, deslocar a posição de quaisquer outras imagens restantes para adiante na lista, e aumentar o valor de refldxLX.
para( cldx = num_ref_idx_IX_active_minus1 + 1; cldx > refldxLX; cldx-) RefPicListX[ cldx ] = RefPicListX[ cldx -1]
RefPicListX[ refldxLX++] = imagem de referência de curta duração com PicNum i- gual a picNumLx e viewjd igual a viewldLX nldx = refldxLX
para( cldx = refldxLX; cldx <= num_ref_idxJX_active_minus1 + 1; cldx++ ) se( (PicNumF( RefPicListX[ cldx])! = picNumLX ) && ViewldF(RefPicListX[ cldx ]) != viewldLX)
RefPicListX( nldx++ ] = RefPicListX[ cldx]
A função PicNumF( RefPicListX[ cldx]) é derivada como segue: Se a imagem RefPicListX[ cldx] é marcada como "usada para referência de curta duração", PicNumF( RefPicListx[ cldx ]) é o PicNum da imagem RefPicListX[ cldx].
De outra forma (a imagem RefPicListX[ cldx ] não é marcada como "usada para re- ferência de curta duração"), PicNumF( RefPicListX[ cldx ]) é igual a MaxPicNum.
Nota-se que o valor de MaxPicNum não pode nunca ser igual a picNumLX. A função ViewldF( RefPicListX[ cldx ]) é derivada como segue: ViewldF( RefPicListX[ cldx ]) é o viewld da imagem RefPicListX[ cldx]. Dentro desse procedimento de pseudocódigo, o comprimento da lista RefPicListX é feito temporariamente um elemento maior do que o comprimento da lista final. Após a exe- cução desse procedimento, somente elementos 0 a num_ref_idx_IX_active_minus1 da lista precisam ser retidos.
Um esquema para reordenar listas de imagens de referência para imagens de refe- rência de longa duração é descrito abaixo: A entrada para esse processo é um índice refldxLX (com X sendo 0 ou 1). A saída
desse processo é um índice aumentado refldxLX.
O seguinte procedimento é conduzido para Iocalizer a imagem com número de i- magem de longa duração long_term_pic_num que está presente na vista indica por viewldX como derivado acima na posição de índice refldxLX, deslocar a posição de quaisquer outras imagens restantes para adiante na lista, e aumentar o valor de refldxLX.
para( cldx = num_ref_idx_IX_active_minus1 + 1; cldx > refldxLX: cldx--) RefPicListX[ cldx ] = RefPicListX[ cldx -1]
RefPicListX[ refldxLX++ ] = imagem de referência de longa duração com Long- TermPicNum igual a long_term_pic_num e viewld igual a viewldLX nldx = refldxLX
para( cldx = refldxLX; cldx <= num_ref_idx_IX_active_minus1 + 1; cldx++) se( (LongTermPicNumF( RefPicListX[ cldx ]) != long_term_pic_num ) && ViewldF(RefPicListX[ cldx ] ]) != viewldLX) RefPicListX[ nldx++ ] = RefPicListX[ cldx ) A função LongTermPicNumF( RefPicListX[ cldx]) é derivado como segue:
Se a imagem RefPicListX[ cldx] é marcada como "usada para referência de longa duração", LongTermPicNumF( RefPicListX[ cldx] ) é o LongTermPicNum da imagem RefPi- cListXf cldx ].
- De outra forma (a imagem RefPicListX[ cldx] não é marcada como "usada para re- ferência de longa duração"). LongTermPicNumF( RefPicListX[ cldx]) é igual a 2 * (Max- LongTermFrameIdx + 1 ).
NOTA 1 - Um valor de 2 * ( MaxLongTermFrameIdx + 1 ) não pode ser nunca igual
a long_term_pic_num.
A função ViewldF( RefPicListX[ cldx ]) é derivada como segue:
- Se a imagem RefPicListXf cldx ] é marcada como "usada para referência de curta duração", ViewldF( RefPicListX[ cldx]) é o viewed da imagem RefPicListX[ cldx].
-De outra forma (a imagem RefPicListx[ cldx] não é marcada como "usada para re-
ferência de curta duração"), PicNumF( RefPicListX[ cldx ] ) é igual a MaxPicNum.
Um valor de MaxPicNum não pode nunca ser igual a picNumLX.
Nota-se que dentro desse procedimento de pseudocódigo, o comprimento da lista RefPicListX é temporariamente feito um elemento maior do que o comprimento necessário para a lista final. Após a execução desse procedimento, somente elementos O a num_ref_idx_IX_active_minus1 da lista podem ser retidos.
Em uma segunda modalidade da presente invenção sob essa estrutura alternativa considera que o reordenamento das imagens de vista cruzada acontecerá mais freqüente- mente para imagens temporariamente alinhadas, o que significa que a diferença de número da imagem será zero. Portanto, essa modalidade foca nesse aspecto de reordenar imagens de vista cruzada que é mais eficaz do que a descrita acima.
Essa modalidade muda a variável abs_diff_pic_num_minus1 para abs_diff_pic_num e define a variável como segue:
Abs_diff_pic_num especifica a diferença absoluta entre o número de imagem da imagem que está sendo movida para o índice atual na lista e o valor de predição de número de imagem. A faixa de abs_diff_pic_num é especificada como segue.
- Se reordering_of_pic_nums_idc é igual a O, abs_diff_pic_num deve estar na faixa de O a MaxPicNum / 2.
De outra forma (reordering_of_pic_nums_idc é igual a 1), abs_diff_pic_num_minus1 deve estará na faixa de 0 a MaxPicNum / 2 - 1.
Fazendo isso, se permite que abs_diff_pic_num obtenha o valor de 0, o que seria o caso mais freqüente para o reordenamento de vista cruzada.
Uma terceira modalidade é também proposta sob a estrutura alternativa, que é também usada para considerar que o reordenamento das imagens de vista cruzada aconte- cerá mais freqüentemente para imagens temporariamente alinhadas, o que significa que a diferença de número de imagem será zero.
Nos métodos anteriores, abs_diff_pic_num é codificado como código Exp-Golomb sem sinal, assim a sintaxe adicional para indicar se essa diferença representa diferença po- sitiva ou negativa necessita ser enviada como mostrado na FIG. 6 como mvc_reordering_of_pic_nums_idc.
A modalidade reduz os valores que esse elemento de sintaxe pode obter como mostrado na TABELA 2 e transmite um código Exp-Golomb com sinal para a diferença do número de imagem como diff_pic_num como mostrado na FIG. 7 que descreve uma defini- ção revisada para o RPPL ref_pic_list_reordering_mvc_extension.
mvc_reordering_of_pic_nums_idc Reordenamento especificado 0 diff_pic_num_minus1 está presente e cor- responde a uma diferença a subtrair de um valor de predição de número de imagem 1 long_term_pic_num está presente e especi- fica o número de imagem de longa duração para uma imagem de referência 2 Final do ciclo para reordenamento da lista de imagens de referência inicial
TABELA 2
A semântica de diff_pic_num pode então ser definida como: Diff_pic_num especifica a diferença entre o número de imagem da imagem que es-
tá sendo movida para o índice atual na lista e o valor de predição de número de imagem. A faixa de diff_pic_num é especificada como segue.
-MaxPicNum /2-1 para MaxPicNum / 2.
picNumLXNoWrap é então definido como segue: picNumLXNoWrap = picNumLXPred + diff_pic_num.
A FIG. 7 apresenta um diagrama de bloco 700 representando os princípios da pre- sente invenção como aplicado ao reordenamento das imagens de referência para um ambi- ente de codificação de múltiplas vistas. Para propósitos da operação desse fluxograma, as- sume-se que as imagens de referência já estão presentes em um DPB 215. As imagens de referência, entretanto, podem ser para diferentes vistas.
Na etapa 705, o método considera se a presente imagem a ser codificada está den- tro de um ambiente onde imagens de múltiplas vistas (MVC e AVC) são usadas ou se o am- biente de codificação é simplesmente temporal (isto é, AVC).
Se as imagens de referência usadas em conjunto para a codificação da presente imagem não têm nada a ver com a codificação de múltiplas vistas, a etapa 710 opera como para aplicar os princípios conhecidos em associação com um padrão de codificação tipo 10
15
35
AVC para reordenar as listas de imagens de referência. Se a imagem a ser codificada, en- tretanto, é relacionada a imagens de múltiplas vistas, onde é possível que as relações de vistas cruzadas entre as imagens possa ter que ser considerada, a etapa 715 é selecionada.
Como descrito acima, há várias aplicações diferentes tipo como executar realmente o reordenamento das imagens. Algumas modalidades apresentadas acima (como aplicado para a etapa 715) descrevem um ambiente onde uma comparação é feita para considerar se a presente imagem a ser codificada tem quaisquer relações de vista cruzada com as ima- gens de referência. Em algumas modalidades, o reordenamento das listas de imagens reor- denaria as imagens de referência associadas com qualquer vista. Em outras modalidades, o reordenamento de imagens de referência é primeiro feito para todas as vistas cruzadas, e
então para as imagens de referência com a mesma vista da imagem que está sendo codifi- cada.
A etapa 720 considera se a imagem a ser codificada terá uma relação temporal com as imagens de referência. Como descrito acima, quando as imagens P fazem uso de uma lista de referência, enquanto uma imagem "B" pode exigir o uso de duas listas de refe- rência. Portanto, a forma com que as listas são reordenadas (como descrito em várias mo- dalidades da presente invenção) depende de tais relações temporais.
A etapa 725 é o reordenamento real das listas de imagens de referência. As várias formas de executar tais operações, mais uma vez, depende dos resultados das etapas 715 e 720, e são aplicadas em conjunto com os princípios e modalidades descritos acima.
Assim, por exemplo, os versados na técnica apreciam que os diagramas de bloco apresentados aqui representam vistas conceituais de circuitos ilustrativos incorporando os presentes princípios. Similarmente, aprecia-se que quaisquer fluxogramas, diagramas de fluxo, diagramas de transição de estado, pseudocódigo, e seus similares representam vários processos que podem ser substancialmente representados em meios legíveis por computa- dor e assim executados por um computador ou processador, se ou não tal computador ou processador é explicitamente mostrado.
As funções dos vários elementos mostrados nas figuras podem ser fornecidas atra- vés do uso de hardware dedicado bem como hardware capaz de executar software em as- sociação com software apropriado. Quando fornecidas por um processador, as funções po- dem ser fornecidas por um único processador dedicado, por um único processador compar- tilhado, ou por uma pluralidade de processadores individuais, alguns dos quais podem ser compartilhados. Além disso, o uso explícito do termo "processador" ou "Controlador" não deveria ser interpretado como se referindo exclusivamente a hardware capaz de executar software, e pode implicitamente incluir, sem limitação, hardware processador de sinal digital ("DSP"), memória somente de leitura ("ROM") para armazenar software, memória de acesso aleatório ("RAM"), e armazenamento não volátil.
25
30 Outro hardware, convencional e/ou padrão, pode também ser incluído. Similarmen- te, quaisquer comutadores mostrados nas figuras são somente conceituais. Sua função po- de ser executada através da operação de lógica de programa, lógica dedicada, interação de controle de programa e lógica dedicada, ou até manualmente, a técnica particular sendo selecionada pelo implementador como mais especificamente entendido a partir do contexto.
Nas reivindicações, qualquer elemento expresso como um dispositivo para executar uma função especificada é destinado a abranger qualquer forma de executar essa função incluindo, por exemplo, (a) uma combinação de elementos de circuito que executam essa função ou (b) software em qualquer forma, incluindo, então, suporte lógico inalterável, mi- crocódigo ou seus similares, combinados com circuito apropriado para executar esse soft- ware para executar a função. Os presentes princípios como definidos por tais reivindicações residem no fato de que as funcionalidades fornecidas pelos vários dispositivos citados são combinadas e colocadas juntas da maneira que reivindicações exigem. Considera-se assim que quaisquer dispositivos que podem fornecer essas funcionalidades são equivalentes aos mostrados aqui.
Referência na especificação a "uma modalidade" dos presentes princípios significa que uma característica, estrutura particular, e assim por diante descrita em conjuntos com a modalidade está incluída em ao menos uma modalidade dos presentes princípios. Assim, as aparências da frase "em uma modalidade" aparecendo em vários locais por toda a especifi- cação não estão necessariamente todas se referindo à mesma modalidade.
Essas e outras características e vantagens dos presentes princípios podem ser prontamente verificadas por um versado na técnica pertinente com base nos ensinamentos aqui fornecidos. Entende-se que os ensinamentos dos presentes princípios podem ser im- plementados em várias formas de hardware, software, suporte lógico inalterável, processa- dores de propósito especial, ou combinações desses.
Mais preferencialmente, os ensinamentos dos presentes princípios são implemen- tados como uma combinação de hardware e software. Além disso, o software pode ser im- plementado como um programa aplicativo incorporado de forma tangível em uma unidade de armazenamento de programa. O programa aplicativo pode ser transferido, e executado por uma máquina compreendendo qualquer arquitetura adequada. Preferencialmente, a máquina é implementada em uma plataforma de computador tendo hardware tal como uma ou mais unidades de processamento central ("CPU"), uma memória de acesso aleatório ("RAM"), e interfaces de entrada/saída ("l/O"). A plataforma de computador pode também incluir um sistema operacional e código de microinstrução. Os vários processos e funções descritos aqui podem ou ser parte do código de microinstrução ou parte do programa aplica- tivo, ou qualquer combinação desses, que podem ser executados por uma CPU. Em adição, várias outras unidades periféricas podem ser conectadas à plataforma de computador tal como uma unidade de armazenamento de dados e uma unidade de impressão.
Entende-se adicionalmente que, porque alguns componentes de sistema constituin- tes e métodos descritos nos desenhos em anexo são preferencialmente implementados em software, as conexões reais entre os componentes do sistema ou os blocos de funciona- mento do processo podem diferir dependendo da maneira na qual os presentes princípios são programados. Dados os ensinamentos aqui fornecidos, um versado na técnica pertinen- te será capaz de observar essas implementações ou configurações e implementações simi- lares dos presentes princípios.
Embora as modalidades ilustrativas tenham sido descritas aqui com relação aos desenhos em anexo, entende-se que os presentes princípios não estão limitados às modali- dades precisas, e que várias mudanças e modificações podem ser efetuadas por um versa- do na técnica pertinente sem abandonar o escopo ou espírito dos presentes princípios. To- das as tais mudanças e modificações são destinadas a serem incluídas no escopo dos pre- sentes princípios como apresentado nas reivindicações em anexo.

Claims (8)

1. Método para o reordenamento de uma lista de imagens de referência para uma operação de codificação para uma imagem, CARACTERIZADO pelo fato de que compreen- de as etapas de: determinar se uma imagem a ser codificada está associada com uma vista a partir de uma pluralidade de vistas (715); ordenar a ordem de codificação de ao menos uma imagem de referência armaze- nada em uma lista de imagens de referência como para considerar a vista da dita imagem a ser codificada (725).
2. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a dita etapa de ordenar considera se a vista da dita imagem a ser codificada é a mesma vista da vista associada com ao menos uma dita imagem de referência.
3. Método, de acordo com a reivindicação 2, CARACTERIZADO pelo fato de que a dita etapa de ordenar ordenará imagens de referência com a mesma vista da dita imagem a ser codificada em um tempo diferente do que o reordenamento das imagens de referência com uma vista diferente a partir da referida pluralidade de vistas da dita imagem a ser codifi- cada.
4. Método, de acordo com a reivindicação 2, CARACTERIZADO pelo fato de que a dita etapa de ordenar ordenará imagens de referência de qualquer vista.
5. Método, de acordo com qualquer uma das reivindicações 1-4, CARACTERIZADO pelo fato de que a dita etapa de ordenar é o reordenamento da ordem de codificação de ao menos duas ditas imagens a partir de ao menos uma dita imagem de referência armazenada, onde a dita ordem de codificação é usada para codificar a dita ima- gem.
6. Método, de acordo com qualquer uma das reivindicações 1-5, CARACTERIZADO pelo fato de que uma lista de imagens de referência é usada se a dita imagem a ser codificada é uma imagem "P", e duas listas de imagens de referência são u- sadas se a dita imagem a ser codificada é uma imagem "B".
7. Método, de acordo com qualquer uma das reivindicações 1-5, CARACTERIZADO pelo fato de que a dita imagem a ser codificada é codificada usando a ordem de imagens de referência especificada na dita lista
8. Método, de acordo com qualquer uma das reivindicações 1-5, CARACTERIZADO pelo fato de que ordenar a referida lista de imagem de referência tam- bém se determina de acordo com o fato de se a referida imagem a ser codificada será uma imagem âncora ou uma imagem não âncora.
BRPI0716957-4A 2006-10-13 2007-10-12 Sintaxe de gerenciamento de lista de imagens de referência para codificação de vídeo de múltiplas vistas BRPI0716957A2 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US85186306P 2006-10-13 2006-10-13
US85152106P 2006-10-13 2006-10-13
US60/851,521 2006-10-13
US60/851,863 2006-10-13
PCT/US2007/021842 WO2008048499A2 (en) 2006-10-13 2007-10-12 Reference picture list management syntax for multiple view video coding

Publications (1)

Publication Number Publication Date
BRPI0716957A2 true BRPI0716957A2 (pt) 2013-10-29

Family

ID=39253962

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0716957-4A BRPI0716957A2 (pt) 2006-10-13 2007-10-12 Sintaxe de gerenciamento de lista de imagens de referência para codificação de vídeo de múltiplas vistas

Country Status (7)

Country Link
US (3) US8948256B2 (pt)
EP (1) EP2090110A2 (pt)
JP (5) JP5184539B2 (pt)
KR (1) KR101368493B1 (pt)
CN (1) CN102761744B (pt)
BR (1) BRPI0716957A2 (pt)
WO (1) WO2008048499A2 (pt)

Families Citing this family (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8902971B2 (en) 2004-07-30 2014-12-02 Euclid Discoveries, Llc Video compression repository and model reuse
US9532069B2 (en) 2004-07-30 2016-12-27 Euclid Discoveries, Llc Video compression repository and model reuse
US9578345B2 (en) 2005-03-31 2017-02-21 Euclid Discoveries, Llc Model-based video encoding and decoding
US9743078B2 (en) 2004-07-30 2017-08-22 Euclid Discoveries, Llc Standards-compliant model-based video encoding and decoding
US8908766B2 (en) 2005-03-31 2014-12-09 Euclid Discoveries, Llc Computer method and apparatus for processing image data
WO2007114612A1 (en) 2006-03-30 2007-10-11 Lg Electronics Inc. A method and apparatus for decoding/encoding a video signal
WO2008023968A1 (en) 2006-08-25 2008-02-28 Lg Electronics Inc A method and apparatus for decoding/encoding a video signal
CN102761744B (zh) * 2006-10-13 2015-10-28 汤姆逊许可公司 用于多视点视频编码的参考图像列表管理语法
US20090180546A1 (en) 2008-01-09 2009-07-16 Rodriguez Arturo A Assistance for processing pictures in concatenated video streams
US8875199B2 (en) 2006-11-13 2014-10-28 Cisco Technology, Inc. Indicating picture usefulness for playback optimization
US8416859B2 (en) 2006-11-13 2013-04-09 Cisco Technology, Inc. Signalling and extraction in compressed video of pictures belonging to interdependency tiers
CA2676023C (en) 2007-01-23 2015-11-17 Euclid Discoveries, Llc Systems and methods for providing personal video services
CN101622874A (zh) 2007-01-23 2010-01-06 欧几里得发现有限责任公司 对象存档系统和方法
JP5023739B2 (ja) * 2007-02-28 2012-09-12 ソニー株式会社 画像情報符号化装置及び符号化方法
JP5273824B2 (ja) * 2007-04-04 2013-08-28 トムソン ライセンシング 参照ピクチャー・リスト管理
US8958486B2 (en) 2007-07-31 2015-02-17 Cisco Technology, Inc. Simultaneous processing of media and redundancy streams for mitigating impairments
US8804845B2 (en) 2007-07-31 2014-08-12 Cisco Technology, Inc. Non-enhancing media redundancy coding for mitigating transmission impairments
US8718388B2 (en) 2007-12-11 2014-05-06 Cisco Technology, Inc. Video processing with tiered interdependencies of pictures
US8416858B2 (en) 2008-02-29 2013-04-09 Cisco Technology, Inc. Signalling picture encoding schemes and associated picture properties
WO2009152450A1 (en) 2008-06-12 2009-12-17 Cisco Technology, Inc. Picture interdependencies signals in context of mmco to assist stream manipulation
US8705631B2 (en) 2008-06-17 2014-04-22 Cisco Technology, Inc. Time-shifted transport of multi-latticed video for resiliency from burst-error effects
US8699578B2 (en) 2008-06-17 2014-04-15 Cisco Technology, Inc. Methods and systems for processing multi-latticed video streams
US8971402B2 (en) 2008-06-17 2015-03-03 Cisco Technology, Inc. Processing of impaired and incomplete multi-latticed video streams
JP5567021B2 (ja) 2008-10-07 2014-08-06 ユークリッド・ディスカバリーズ・エルエルシー 特徴を基礎とするビデオ圧縮
EP2356812B1 (en) 2008-11-12 2015-06-10 Cisco Technology, Inc. Processing of a video program having plural processed representations of a single video signal for reconstruction and output
WO2010086500A1 (en) * 2009-01-28 2010-08-05 Nokia Corporation Method and apparatus for video coding and decoding
WO2010096767A1 (en) 2009-02-20 2010-08-26 Cisco Technology, Inc. Signalling of decodable sub-sequences
US8782261B1 (en) 2009-04-03 2014-07-15 Cisco Technology, Inc. System and method for authorization of segment boundary notifications
US8949883B2 (en) 2009-05-12 2015-02-03 Cisco Technology, Inc. Signalling buffer characteristics for splicing operations of video streams
US8780999B2 (en) 2009-06-12 2014-07-15 Qualcomm Incorporated Assembling multiview video coding sub-BITSTREAMS in MPEG-2 systems
US8411746B2 (en) 2009-06-12 2013-04-02 Qualcomm Incorporated Multiview video coding over MPEG-2 systems
US8279926B2 (en) 2009-06-18 2012-10-02 Cisco Technology, Inc. Dynamic streaming with latticed representations of video
JPWO2011013257A1 (ja) * 2009-07-29 2013-01-07 パナソニック株式会社 マルチビュービデオ復号装置およびその方法
JP2011082683A (ja) * 2009-10-05 2011-04-21 Sony Corp 画像処理装置、画像処理方法、及び、プログラム
JP2012023651A (ja) * 2010-07-16 2012-02-02 Sony Corp 画像処理装置と画像処理方法
WO2012091640A1 (en) * 2010-12-27 2012-07-05 Telefonaktiebolaget Lm Ericsson (Publ) Method and arrangement for processing of encoded video
JP5988252B2 (ja) 2011-01-12 2016-09-07 サン パテント トラスト 複数の参照ピクチャを用いた、動画像符号化方法、動画像復号方法、動画像符号化装置、及び、動画像復号装置
US9008181B2 (en) * 2011-01-24 2015-04-14 Qualcomm Incorporated Single reference picture list utilization for interprediction video coding
JP6078883B2 (ja) * 2011-02-08 2017-02-15 サン パテント トラスト 多数の参照ピクチャを用いる動画像符号化方法、動画像復号方法、動画像符号化装置、および動画像復号方法
KR20120095814A (ko) * 2011-02-21 2012-08-29 한밭대학교 산학협력단 복수 참조 영상을 이용한 영상 부복호화 방법 및 이러한 방법을 사용하는 장치
US9521418B2 (en) 2011-07-22 2016-12-13 Qualcomm Incorporated Slice header three-dimensional video extension for slice header prediction
US11496760B2 (en) 2011-07-22 2022-11-08 Qualcomm Incorporated Slice header prediction for depth maps in three-dimensional video codecs
US9288505B2 (en) 2011-08-11 2016-03-15 Qualcomm Incorporated Three-dimensional video with asymmetric spatial resolution
US9900592B2 (en) 2011-08-25 2018-02-20 Sun Patent Trust Methods and apparatuses for encoding and decoding video using periodic buffer description
CN107257492B (zh) 2011-09-07 2020-04-28 太阳专利托管公司 图像编码方法以及图像编码装置
PL2760205T3 (pl) 2011-09-19 2021-05-17 Sun Patent Trust Sposób dekodowania obrazów, urządzenie do dekodowania obrazów
US9131245B2 (en) 2011-09-23 2015-09-08 Qualcomm Incorporated Reference picture list construction for video coding
US9451284B2 (en) * 2011-10-10 2016-09-20 Qualcomm Incorporated Efficient signaling of reference picture sets
MX2014003992A (es) * 2011-10-19 2014-05-07 Panasonic Corp Metodo de codificacion de imagenes, metodo de decodificacion de imagenes, aparato de codificacion de imagenes, aparato de decodificacion de imagenes y aparato de codificacion y decodificacion de imagenes.
US9264717B2 (en) 2011-10-31 2016-02-16 Qualcomm Incorporated Random access with advanced decoded picture buffer (DPB) management in video coding
US10003817B2 (en) * 2011-11-07 2018-06-19 Microsoft Technology Licensing, Llc Signaling of state information for a decoded picture buffer and reference picture lists
ES2898887T3 (es) 2011-11-08 2022-03-09 Nokia Technologies Oy Manejo de imágenes de referencia
US10440389B2 (en) * 2011-11-11 2019-10-08 Lg Electronics Inc. Method and device for transmitting image information, and decoding method and device using same
US9485503B2 (en) 2011-11-18 2016-11-01 Qualcomm Incorporated Inside view motion prediction among texture and depth view components
US9262986B2 (en) * 2011-12-07 2016-02-16 Cisco Technology, Inc. Reference frame management for screen content video coding using hash or checksum functions
KR102137149B1 (ko) * 2012-03-02 2020-07-23 선 페이턴트 트러스트 화상 부호화 방법, 화상 복호 방법, 화상 부호화 장치, 화상 복호 장치 및 화상 부호화 복호 장치
US9609341B1 (en) * 2012-04-23 2017-03-28 Google Inc. Video data encoding and decoding using reference picture lists
CN104380746A (zh) 2012-04-23 2015-02-25 三星电子株式会社 多视点视频编码方法和装置以及多视点视频解码方法和装置
EP2838264A4 (en) * 2012-04-23 2016-01-06 Samsung Electronics Co Ltd METHOD FOR ENCODING MULTIVUE VIDEO USING A MULTIVUE VIDEO PREDICTION REFERENCE LIST AND DEVICE THEREFOR, AND METHOD FOR DECODING MULTIVUE VIDEO USING A MULTIVUE VIDEO PREDICTION REFERENCE LIST AND DEVICE THEREOF
CN104396252B (zh) * 2012-04-25 2018-05-04 三星电子株式会社 使用用于多视点视频预测的参考画面集的多视点视频编解码方法及其装置
US9762903B2 (en) * 2012-06-01 2017-09-12 Qualcomm Incorporated External pictures in video coding
US9319679B2 (en) * 2012-06-07 2016-04-19 Qualcomm Incorporated Signaling data for long term reference pictures for video coding
US9332255B2 (en) 2012-06-28 2016-05-03 Qualcomm Incorporated Signaling long-term reference pictures for video coding
US9313500B2 (en) 2012-09-30 2016-04-12 Microsoft Technology Licensing, Llc Conditional signalling of reference picture list modification information
US9351011B2 (en) * 2012-11-28 2016-05-24 Intel Corporation Video pipeline with direct linkage between decoding and post processing
US10091507B2 (en) 2014-03-10 2018-10-02 Euclid Discoveries, Llc Perceptual optimization for model-based video encoding
US9621917B2 (en) 2014-03-10 2017-04-11 Euclid Discoveries, Llc Continuous block tracking for temporal prediction in video encoding
US10097851B2 (en) 2014-03-10 2018-10-09 Euclid Discoveries, Llc Perceptual optimization for model-based video encoding
US11595652B2 (en) 2019-01-28 2023-02-28 Op Solutions, Llc Explicit signaling of extended long term reference picture retention
CN107133348B (zh) * 2017-05-23 2021-04-30 胡海峰 大规模图片集中基于语义一致性的近似搜索方法
CN108388656B (zh) * 2018-03-06 2022-03-15 南京邮电大学 一种基于标记相关性的图片搜索方法
EP3831064B1 (en) * 2018-08-17 2024-02-07 Huawei Technologies Co., Ltd. Reference picture management in video coding
MX2021002950A (es) * 2018-09-12 2021-07-21 Huawei Tech Co Ltd Un codificador de video, un decodificador de video y metodos correspondientes.
EP3918801A4 (en) * 2019-01-28 2022-06-15 OP Solutions, LLC ONLINE AND OFFLINE CHOICE OF EXTENDED LONG-TERM REFERENCE IMAGE STORAGE
US11044477B2 (en) * 2019-12-16 2021-06-22 Intel Corporation Motion adaptive encoding of video
US11956441B2 (en) * 2021-12-23 2024-04-09 Ati Technologies Ulc Identifying long term reference frame using scene detection and perceptual hashing

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3288142B2 (ja) * 1992-10-20 2002-06-04 富士通株式会社 液晶表示装置およびその駆動方法
JP4562999B2 (ja) 2002-07-11 2010-10-13 パナソニック株式会社 画像復号化方法および画像復号化装置
US7489342B2 (en) * 2004-12-17 2009-02-10 Mitsubishi Electric Research Laboratories, Inc. Method and system for managing reference pictures in multiview videos
KR100679740B1 (ko) 2004-06-25 2007-02-07 학교법인연세대학교 시점 선택이 가능한 다시점 동영상 부호화/복호화 방법
EP2538674A1 (en) 2004-12-10 2012-12-26 Electronics and Telecommunications Research Institute Apparatus for universal coding for multi-view video
US7903737B2 (en) * 2005-11-30 2011-03-08 Mitsubishi Electric Research Laboratories, Inc. Method and system for randomly accessing multiview videos with known prediction dependency
KR100934677B1 (ko) 2006-01-12 2009-12-31 엘지전자 주식회사 다시점 비디오의 처리
KR101245251B1 (ko) * 2006-03-09 2013-03-19 삼성전자주식회사 균일한 화질을 제공하는 다시점 영상 부호화 및 복호화방법 및 장치
WO2007114612A1 (en) * 2006-03-30 2007-10-11 Lg Electronics Inc. A method and apparatus for decoding/encoding a video signal
JP4793366B2 (ja) * 2006-10-13 2011-10-12 日本ビクター株式会社 多視点画像符号化装置、多視点画像符号化方法、多視点画像符号化プログラム、多視点画像復号装置、多視点画像復号方法、及び多視点画像復号プログラム
CN102761744B (zh) * 2006-10-13 2015-10-28 汤姆逊许可公司 用于多视点视频编码的参考图像列表管理语法
JP5296225B2 (ja) * 2010-01-13 2013-09-25 株式会社東芝 立体映像表示装置
US20130038704A1 (en) * 2010-05-14 2013-02-14 Sharp Kabushiki Kaisha Stereoscopic video image display method and stereoscopic video image display device
JP2012128197A (ja) * 2010-12-15 2012-07-05 Toshiba Corp 立体画像表示装置および立体画像表示方法
JP2012191588A (ja) * 2011-03-14 2012-10-04 Funai Electric Co Ltd 映像出力装置

Also Published As

Publication number Publication date
JP2010507275A (ja) 2010-03-04
KR20090077907A (ko) 2009-07-16
JP5619923B2 (ja) 2014-11-05
JP5184539B2 (ja) 2013-04-17
KR101368493B1 (ko) 2014-02-28
JP2013038808A (ja) 2013-02-21
CN102761744A (zh) 2012-10-31
JP5184713B2 (ja) 2013-04-17
JP2017126999A (ja) 2017-07-20
JP2015029316A (ja) 2015-02-12
JP2013102504A (ja) 2013-05-23
CN102761744B (zh) 2015-10-28
EP2090110A2 (en) 2009-08-19
JP6164742B2 (ja) 2017-07-19
US20090262804A1 (en) 2009-10-22
US20160191950A1 (en) 2016-06-30
WO2008048499A3 (en) 2008-06-05
US20190182506A1 (en) 2019-06-13
WO2008048499A2 (en) 2008-04-24
US8948256B2 (en) 2015-02-03

Similar Documents

Publication Publication Date Title
BRPI0716957A2 (pt) Sintaxe de gerenciamento de lista de imagens de referência para codificação de vídeo de múltiplas vistas
KR101351935B1 (ko) 멀티뷰 비디오 코딩을 수반하는 참조 화상 관리를 위한 방법
KR101350591B1 (ko) 멀티뷰 비디오 인코딩 및 디코딩을 위해 프레임 넘버 및/또는 픽쳐 오더 카운트를 분리시키는 방법 및 장치
TWI422230B (zh) 參考圖像清單管理
BRPI0709167A2 (pt) método e aparelho para uso em um sistema de condificação de vìdeo de múltiplas visões
CN101496407B (zh) 用于针对多视角视频编码和解码解耦合帧号和/或图像顺序计数(poc)的方法和装置
CN112601089A (zh) 管理已解码图像缓存器的方法及视频编码器或视频解码器
BR122012021950A2 (pt) Aparelho para incorporação de informação de usabilidade de vídeo (vui) em um sistema de codificação de vídeo com múltiplos visualizações (mvc)
KR20100032390A (ko) 다시점 코딩된 영상의 단일 루프 디코딩
BRPI0714564A2 (pt) mÉtodo e aparelhagem para capacitaÇço de graduaÇço visual por sinalizaÇço em codificaÇço multi-visual em vÍdeo
CN107295350A (zh) 用于多视点视频编码的参考图像列表管理语法
BR112015024940B1 (pt) Método e dispositivo para construir uma primeira lista de imagens de referência e uma segunda lista de imagens de referência para predição intercamadas de uma imagem atual de uma sequência de vídeo multicamadas, meio de armazenamento legível por computador, e, terminal móvel
BRPI0714150A2 (pt) mÉtodos e aparelho para uso em codificaÇço de vÍdeo de méltiplas visualizaÇÕes

Legal Events

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

Ipc: H04N 19/597 (2014.01), H04N 19/46 (2014.01), H04N

B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B06T Formal requirements before examination [chapter 6.20 patent gazette]
B25G Requested change of headquarter approved

Owner name: THOMSON LICENSING (FR)

B25G Requested change of headquarter approved

Owner name: THOMSON LICENSING (FR)

B25A Requested transfer of rights approved

Owner name: INTERDIGITAL VC HOLDINGS, INC. (US)

B07A Technical examination (opinion): publication of technical examination (opinion) [chapter 7.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B11D Dismissal acc. art. 38, par 2 of ipl - failure to pay fee after grant in time