PT2276180E - Processo e aparelho de temporização entre imagens com precisão variável para codificação vídeo digital - Google Patents

Processo e aparelho de temporização entre imagens com precisão variável para codificação vídeo digital Download PDF

Info

Publication number
PT2276180E
PT2276180E PT101772762T PT10177276T PT2276180E PT 2276180 E PT2276180 E PT 2276180E PT 101772762 T PT101772762 T PT 101772762T PT 10177276 T PT10177276 T PT 10177276T PT 2276180 E PT2276180 E PT 2276180E
Authority
PT
Portugal
Prior art keywords
video image
video
value
image
order
Prior art date
Application number
PT101772762T
Other languages
English (en)
Inventor
Adriana Dumitras
Atul Puri
Barin Haskell
David Singer
Original Assignee
Apple 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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=30117972&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=PT2276180(E) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Apple Inc filed Critical Apple Inc
Publication of PT2276180E publication Critical patent/PT2276180E/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • 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
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • 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/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/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4305Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
  • Television Signal Processing For Recording (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Image Processing (AREA)
  • Synchronizing For Television (AREA)
  • Studio Circuits (AREA)

Description

DESCRICAO
Processo e aparelho de temporização entre imagens com precisão variável para codificação video digital
CAMPO DO INVENTO 0 presente invento refere-se ao campo de sistemas de compressão multimédia. Em particular, o presente invento revela processos e sistemas para especificação de temporização entre imagens com precisão variável.
ENQUADRAMENTO DO INVENTO
Os formatos média electrónicos com base digital estão finalmente na iminência de substituir largamente os formatos média electrónicos analógicos. Os discos compactos digitais (CDs) substituíram, há muito, as gravações vinil analógicas. As fitas magnéticas analógicas são cada vez mais raras. Os sistemas áudio digitais de segunda e terceira geração, tais como os Mini-disc e os MP3 (MPEG audio - layer 3) ganham agora quota de mercado aos formatos áudio digital de primeira geração dos discos compactos.
Os meios vídeo têm sido mais lentos na passagem para o armazenamento e formatos de transmissão digitais do que o áudio. Isto deve-se, em muito, às quantidades imensas de informação digital necessárias para representar o vídeo, com precisão, em forma digital. As quantidade imensas de informação digital necessárias para representar o vídeo de forma precisa exigem sistemas de armazenamento digital com enorme capacidade e sistemas de transmissão com elevada largura de banda. 1
No entanto, o vídeo está a passar rapidamente para o formatos de armazenamento e transmissão digitais. Processadores de computador mais rápidos, sistemas de armazenamento de alta densidade, e uma compressão eficiente nova e novos algoritmos de codificação colocaram, finalmente, o vídeo digital em preços acessíveis ao consumidor. Os DVD (disco versátil digital), um sistema vídeo digital, têm sido um dos produtos electrónicos de consumo mais rápido em anos. Os DVDs ultrapassaram rapidamente os gravadores de cassete de vídeo (VCR) como os sistemas escolhidos de reprodução vídeo pré-gravados, devido à sua elevada qualidade vídeo, qualidade áudio muito elevada, conveniência, e funcionalidades extra. Os sistemas antiquados de transmissão vídeo analógico NTSC (National Television Standard Committee) estão actualmente em fase de substituição pelo sistema de transmissão vídeo digital ATSC (Advanced Television Standard Committee).
Os sistemas informáticos têm utilizado formatos de codificação vídeo digital muito diferentes desde há alguns anos. Entre os melhores sistemas de compressão e codificação vídeo digital usados nos sistemas informáticos estão os sistemas vídeo digitais suportados pela Motion Pictures Expert Group conhecido pelo acrónimo MPEG. Os três formatos vídeo digital mais conhecidos e altamente usados da MPEG são conhecidos simplesmente como MPEG-1, MPEG-2, e MPEG-4. Os CDs vídeo (VCD) e os sistemas de edição vídeo digital mais antigos destinados ao consumidor usam o primeiro formato de codificação vídeo digital MPEG-1. Os DVD e / ou sistemas de difusão por televisão DBS (Satélite de Emissão Directa) da marca Dish Network usam o sistema de compressão e codificação vídeo digital com maior qualidade MPEG-2. 0 sistema de codificação MPEG-4 está a ser rapidamente adaptado pelos mais recentes 2 codificadores video digital baseados em computador e reprodutores vídeo digital associados.
As normas MPEG-2 e MPEG-4 comprimem uma série de fotogramas (frame) vídeo ou campos vídeo e codificam então os fotogramas ou campos comprimidos num fluxo binário digital. Quando se codifica um fotograma ou campo vídeo com os sistemas MPEG-2 e MPEG-4, o fotograma ou campo vídeo é dividido numa grelha rectangular de macroblocos. Cada macrobloco é comprimido e codificado independentemente.
Quando comprime um fotograma ou campo vídeo, a norma MPEG-4 pode comprimir o fotograma ou campo num dos três tipos de fotogramas ou campos comprimidos: intra-frame (I-frames), Unidirectional Predicted frames (P-frames) ou Bidirectional Predicted frames (B-frames). As intra-frames codificam de uma forma totalmente independente um fotograma vídeo independente sem referência a outros fotogramas vídeo. Os P-frames definem um fotograma vídeo com referência a um único fotograma vídeo apresentado anteriormente. Os B-frames definem um fotograma vídeo com referência quer a um fotograma vídeo apresentado antes do fotograma corrente, quer a um fotograma vídeo a ser apresentado depois do fotograma corrente. Devido à sua eficiente utilização de informação vídeo redundante, os P-frames e B-frames proporcionam, normalmente, a melhor compressão.
RESUMO DO INVENTO São revelados um processo e aparelho para especificação de temporização entre imagens com precisão variável para codificação vídeo digital. Especificamente, o presente invento revela um sistema que permite que a temporização relativa de 3 imagens vídeo próximas seja codificada de uma forma muito eficiente. Numa forma de realização, é determinada a diferença de tempo de apresentação entre uma imagem vídeo corrente e uma imagem vídeo próxima. A diferença de tempo de apresentação é então codificada numa representação digital da imagem vídeo. Numa forma de realização preferida, a imagem vídeo próxima é a imagem guardada transmitida mais recentemente.
Para efeitos de eficiência de codificação, a diferença de tempo de apresentação pode ser codificada usando um sistema de codificação com um comprimento variável ou uma codificação aritmética. Numa forma de realização alternativa, a diferença de tempo de apresentação é codificada como uma potência de dois para reduzir um número de bits transmitidos.
Outros objectivos, características e vantagens do presente invento serão evidentes a partir dos desenhos acompanhantes e da descrição detalhada seguinte.
BREVE DESCRIÇÃO DOS DESENHOS
Os objectivos características e vantagens do presente invento serão evidentes para quem tem experiência na técnica, tendo em vista a descrição detalhada seguinte, em que: A figura 1 ilustra um diagrama de blocos de alto nível de um possível sistema de codificação vídeo digital. A figura 2 ilustra uma série de imagens vídeo na ordem pela qual as imagens deveriam ser apresentadas, em que as setas ligando as diferentes imagens indicam a dependência inter-imagem criada usando compensação de movimento. A figura 3 ilustra as imagens vídeo da figura 2 listadas numa ordem de transmissão de imagens preferida em que as 4 setas ligando imagens diferentes imagens indicam dependência uma inter-imagem criada usando compensação de movimento. A figura 4 ilustra graficamente uma série de imagens vídeo em que as distâncias entre imagens vídeo que se referenciam entre si são escolhidas para ser uma potência de dois.
DESCRIÇÃO DETALHADA DA FORMA DE REALIZAÇÃO PREFERIDA É apresentado um processo e um sistema para especificar a temporização entre imagens com precisão variável num sistema de compressão e codificação multimédia. Na descrição seguinte, para efeitos de explicação, é definida uma nomenclatura específica para proporcionar um entendimento exaustivo do presente invento. No entanto, será evidente para quem tem experiência na técnica que estes detalhes especifico não são exigidos para colocar em prática o presente invento. Por exemplo, o presente invento foi descrito com referência ao sistema de codificação e compressão multimédia MPEG-4. No entanto, as mesmas técnicas podem ser facilmente aplicadas a outros tipos de sistemas de compressão e codificação.
Panorâmica da compressão e codificação multimédia A figura 1 é um diagrama de blocos de alto nível de um codificador vídeo digital 100 típico, como é bem conhecido na técnica. O codificador vídeo digital 100 recebe um fluxo vídeo de entrada de fotogramas vídeo 105 à esquerda do diagrama de blocos. Cada fotograma vídeo é processado por uma unidade DCT (transformação discreta de cossenos) 110. O fotograma pode ser 5 processado independentemente (um intra-frame) ou com referência à informação de outros fotogramas recebidos da unidade de compensação de movimento (uma inter-frame). Seguidamente, uma unidade quantificadora Q (Quantizer) 120 quantifica a informação da unidade DCT 110. Finalmente, o fotograma vídeo quantificado é então codificado com uma unidade de codificação de entropia (H) 180 para produzir um fluxo binário codificado. A unidade de codificação de entropia (H) 180 pode usar um sistema de codificação com comprimento variável (VLC).
Uma vez que um fotograma vídeo codificado inter-frame é definido com referência a outros fotogramas vídeo próximos, o codificador vídeo digital 100 precisa de criar uma cópia de como cada fotograma descodificado irá aparecer num descodificador vídeo digital, de forma a que as inter-frames possam ser codificadas. Assim, a porção inferior do codificador vídeo digital 100 é, de facto, um sistema descodificador vídeo digital. Especificamente, uma unidade de quantificação inversa (Q-1) inverte a quantificação da informação de fotograma vídeo e uma unidade DCT inversa (DCT-1) 140 inverte a DCT da informação de fotograma vídeo. Depois de todos os coeficientes DCT serem reconstruídos a partir da iDCT, a unidade de compensação de movimento irá usar a informação, em conjunto com os vectores de movimento, para reconstruir o fotograma codificado que é então usado como o fotograma de referência para o cálculo de movimento do fotograma seguinte. O fotograma vídeo descodificado pode então ser usada para codificar inter-frames (P-frames ou B-frames) que são definidos relativamente à informação na imagem vídeo descodificada. Especificamente, são usadas uma unidade de compensação de movimento (MC) 150 e uma unidade de estimação de movimento (ME) 6 160 para determinar vectores de movimento e gerar valores diferenciais usados para codificar inter-frames.
Um controlador de quantidade 190 recebe informação de componentes muito diferentes num codificador video digital 100 e utiliza a informação para alocar uma provisão de bits a cada fotograma vídeo. O controlador de quantidade 190 deveria alocar a provisão de bits de uma forma que vá gerar o fluxo binário vídeo digital com a maior qualidade que cumpre com um conjunto especificado de restrições. Especificamente, o controlador de quantidade 190 tenta gerar o fluxo vídeo comprimido com maior qualidade sem sobrepor memórias intermédias (excedendo a quantidade de memória disponível num descodificador enviando mais informação do que aquela que pode ser guardada) ou enviando menos memórias intermédias (não enviando fotogramas vídeo com rapidez suficiente, de forma que o descodificador fica sem imagens vídeo para apresentar).
Panorâmica da compressão e codificação multimédia
Nalguns sinais vídeo, o tempo entre imagens vídeo sucessivas (fotogramas ou campos) pode não ser constante. (Nota: este documento usará o termo imagens vídeo para se referir genericamente a fotograma vídeo ou campos vídeo).
Por exemplo, algumas imagens vídeo podem perder-se devido a restrições de largura de banda de transmissão. Além disso, a temporização vídeo pode também variar devido a irregularidades da câmara ou efeitos especiais, tais como câmara lenta ou rápida. Nalguns fluxos vídeo, a fonte de vídeo original pode ter simplesmente, de origem, tempos inter-imagem não uniformes. Por exemplo, o vídeo sintetizado, tal como as animações gráficas computorizadas podem ter uma temporização não 7 uniforme, uma vez que não é criada uma temporização vídeo arbitrária por um sistema uniforme de captura vídeo, tal como um sistema de câmara vídeo. Um sistema flexível de codificação vídeo digital deveria poder gerir uma temporização não uniforme.
Muitos sistemas de codificação vídeo digital dividem as imagens vídeo numa grelha rectangular de macroblocos. Cada macrobloco individual da imagem vídeo é comprimido e codificado independentemente. Nalgumas formas de realização, são usados os sub-blocos de macroblocos conhecidos como blocos de pixéis. Estes blocos de pixéis podem ter os seus próprios vectores de movimento que podem ser interpolados. Este documento fará referência aos macroblocos, embora as revelações do presente invento possam ser igualmente aplicadas, quer a macroblocos, quer a blocos de pixéis.
Algumas normas de codificação vídeo, por exemplo normas ISO MPEG ou a norma ITU H.264, usam tipos diferentes de macroblocos previstos para codificar imagens vídeo. Num cenário, um macrobloco pode ser um de três tipos: 1. Macrobloco-I - um macrobloco intra (I) não usa informação de quaisquer outras imagens vídeo na sua codificação (está completamente autodefinido); 2. Macrobloco-P - um macrobloco previsto unidireccionalmente refere-se a informação de imagem de uma imagem vídeo precedente; ou 3. Macrobloco-B - um macrobloco previsto bidireccionalmente (B) usa informação de uma imagem precedente e de uma imagem vídeo futura. 8
Se todos os macroblocos numa imagem vídeo forem intra-macroblocos, então a imagem vídeo é um intra-frame. Se uma imagem vídeo só incluir blocos macro-previstos unidireccionalmente ou intra-macroblocos, então a imagem vídeo é conhecida como P-frame. Se a imagem vídeo contiver quaisquer macroblocos previstos bidireccionalmente, então a imagem vídeo é conhecida como B-frame. Por simplicidade, este documento irá considerar a situação em que todos os macroblocos numa determinada imagem são do mesmo tipo.
Uma sequência exemplo de imagens vídeo a ser codificada podia ser representada como li B2 B3 B4 B5 Ββ B7 Ββ B9 Pio B11 P12 B13 I14· · · em que as letras (I, P ou B) indicam se a imagem vídeo é um I- frame, P-frame ou B-frame e o número representa a ordem da câmara da imagem vídeo na sequência de imagens vídeo. A ordem da câmara é a ordem na qual uma câmara gravou as imagens vídeo e é, assim, a ordem na qual as imagens vídeo deveriam ser apresentadas (a ordem de apresentação). A série de exemplos anteriores de imagens vídeo está ilustrada graficamente na figura 2. Com referência à figura 2, as setas indicam que os macroblocos de uma imagem guardada (I-frame ou P-frame neste caso) são usados na predição de movimento compensado de outras imagens.
No cenário da figura 2, não é usada informação de outras imagens na codificação da imagem vídeo intra-frame li. A imagem vídeo P5 é um P-frame que usa informação vídeo da imagem vídeo anterior li na sua codificação, de forma que uma seta é arrastada da imagem vídeo li para a imagem vídeo P5. A imagem vídeo B2, imagem vídeo B3, imagem vídeo B4, usam todas 9 informação de ambas as imagens vídeo li e imagem vídeo P5 na sua codificação, de forma que as setas são arrastadas da imagem vídeo li e imagem vídeo P5 para a imagem vídeo B2, imagem vídeo B3, e imagem vídeo B4. Como foi referido acima, os tempos inter-imagem não são, em geral, os mesmos.
Uma vez que as imagens B usam informação de imagens futuras (imagens que serão apresentadas posteriormente), a ordem de transmissão é normalmente diferente da ordem de apresentação. Especificamente, as imagens vídeo que são necessárias para construir outras imagens vídeo deveriam ser transmitidas em primeiro lugar. Para a sequência acima, a ordem de transmissão poderia ser li P5 B2 B3 B4 Pio Ββ B7 B§ Bg P42 Bn I14 B13. . . A figura 3 ilustra graficamente a ordem de transmissão acima das imagens vídeo da figura 2. Mais uma vez, as setas na figura indicam que os macroblocos de uma imagem vídeo guardada (I ou p neste caso) são usados na predição de movimento compensado de outras imagens vídeo.
Com referência à figura 3, o sistema transmite em primeiro lugar o I-frame I4 que não depende de qualquer outro fotograma. Seguidamente, o sistema transmite a imagem vídeo P5 P-frame que depende da imagem vídeo I1. Seguidamente, o sistema transmite a imagem vídeo B2 B-frame depois da imagem vídeo P5, mesmo que a imagem vídeo B2 seja apresentada antes da imagem vídeo P5. Isto deve-se ao facto de, quando chega o momento de descodificar B2, o descodificador já ter recebido e guardado a informação nas imagens vídeo li e P5 necessárias para descodificar a imagem vídeo B2. De forma semelhante, as imagens vídeo li e Ρε estão prontas para ser usadas para descodificar a subsequente imagens vídeo B3 e imagem vídeo B4. 0 receptor / descodificador reordena a sequência de imagens vídeo para apresentação adequada. Nesta 10 operação, as imagens I e P são referidas, muitas vezes, como as imagens guardadas. A codificação das imagens P-frame utiliza normalmente compensação de movimento, em que o vector de movimento é calculado para cada macrobloco na imagem. Usando o vector de movimento calculado, um macrobloco de predição (P-macrobloco) pode ser formado por translação de pixéis na imagem anterior acima mencionada. A diferença entre o macrobloco actual na imagem P-frame e o macrobloco de predição é então codificada para transmissão.
Cada vector de movimento pode ser também transmitido através de codificação preditiva. Por exemplo, pode ser formada uma predição de vector de movimento usando vectores de movimento próximos. Nesse caso, então a diferença entre o vector de movimento actual e a predição de vector de movimento é codificada para transmissão.
Cada B-macrobloco usa dois vectores de movimento: um primeiro vector de movimento referenciando a imagem vídeo anterior acima mencionada, e um segundo vector de movimento referenciando a futura imagem vídeo. A partir destes dois vectores de movimento são calculados dois macroblocos de predição. Os dois macroblocos preditos são então combinados em conjunto, utilizando alguma função, para formar um macrobloco final predito. Tal como foi referido acima, a diferença entre o macrobloco actual na imagem B-frame e o macrobloco predito final é então codificada para transmissão.
Tal como com os P-macroblocos, cada vector de movimento (MV) de um B-macrobloco pode ser transmitido através de codificação preditiva. Especificamente, é formado um vector de movimento predito usando vectores de movimento próximos. Então, 11 a diferença entre o vector de movimento actual e o predito é codificado para transmissão.
No entanto, com os B-macroblocos existe a oportunidade de interpolar vectores de movimento de vectores de movimento no macrobloco de imagem guardada mais próximo. Esta interpolação é executada quer no codificador video digital quer no descodificador video digital.
Esta interpolação do vector de movimento funciona particularmente bem em imagens video de uma sequência video em que a câmara corre ligeiramente através de um enquadramento imóvel. De facto, esta interpolação do vector de movimento pode ser suficientemente boa para ser usada sozinha. Especificamente, isto significa que não é necessário calcular ou transmitir a informação diferencial para estes vectores de movimento do B-macrobloco codificados usando a interpolação.
Para mais ilustração, no cenário acima represente-se o tempo de apresentação entre imagens entre imagens i j como Di(j, isto é, se os tempos de apresentação das imagens forem Ti e Tj, respectivamente, então
Di.j = Ti - Tj de onde se tira que:
Di.k = Di.j + Dj.k Di.k = -Djt.i
Notar que Di(j pode ser, nalguns casos, negativo. 12
Assim, se MV5,i for um vector de movimento para o macrobloco P5 como referenciado para ilf então para os macroblocos correspondentes em B2, B3 e B4 os vectores de movimento, referenciados como I1 e P5, respectivamente, seriam interpolados por MV2,j = MVs<l*Da,i/D5<1 MVj.j = MVs.i*Ds,2/Ds.! MV3,i = MVs.^Di.i/Ds.i MVs.a a MVs,i*Ds.3/Os.i MV4.1 = MVs.i*D4.i/D5.i MV5.4 = MVs.^Ds^/Ds.i
De notar que, uma vez que as relações dos tempos de apresentação são usadas para predição do vector de movimento, não são necessários tempos de apresentação absolutos. Assim, os tempos de apresentação relativos podem ser usados para valores de tempo de apresentação Di,j.
Este cenário pode ser generalizado, como por exemplo para a norma H.264. Na generalização, uma imagem P ou B pode usar qualquer imagem transmitida anteriormente para a sua predição de vector de movimento. Assim, no caso acima, a imagem B3 pode usar a imagem Ι2 e a imagem B2 na sua predição. Além disso, os vectores de movimento podem ser extrapolados, não apenas interpolados. Assim, neste caso teríamos: 13 •MVa.x = MVa.i*D3,x/D3,i
Esta extrapolação (ou interpolação) do vector de movimento pode também ser usada no processo de predição para codificação preditiva dos vectores de movimento.
Em qualquer caso, o problema no caso de tempos inter-imagem não uniformes, consiste em transmitir os valores de tempo de apresentação relativos de Difj ao receptor, e este é o tema do presente invento. Numa forma de realização do presente invento, para cada imagem depois da primeira imagem transmite-se a diferença de tempo de apresentação entre a imagem actual e a imagem guardada transmitida mais recentemente. Para resiliência de erro, a transmissão poderia ser repetida várias vezes dentro da imagem, por exemplo nos chamados slice headers da norma MPEG ou H.264. Se todos os slice headers se perderem, então presumivelmente outras imagens, que assentam na imagem perdida para informação de descodificação, também não podem ser descodificadas.
Assim, no cenário acima, transmitir-se-ia o seguinte: D5,4 ^2,5 D3(5 D4,s D10,5 D6,10 D7fio O8,10 Dg,io 0x2,10 011,12 D14, 12 D13,14 · · ·
Para efeitos de cálculo do vector de movimento, as exigências de precisão para D4,j podem variar de imagem para imagem. Por exemplo, se só houver uma única imagem Βε B-frame a meio caminho entre duas imagens P-frame Ps e P7 basta então enviar apenas: D7.s = 2 and D6.7 =. -1 14 em que os valores de tempo de apresentação Di(j são valores temporais relativos. Se, em vez disso, a imagem vídeo Ββ estiver apenas a um quarto da distância entre a imagem vídeo P5 e a imagem vídeo P7, então os valores de tempo de apresentação adequados Di,j a enviar seriam: D7,5 = 4 and D«.7 = -1
De notar que em ambos os dois exemplos precedentes, o tempo de apresentação entre a imagem vídeo Βε e a imagem P7 está a ser usado como a “unidade" de tempo de apresentação e a diferença de tempo de apresentação entre a imagem vídeo P5 e a imagem vídeo P7 é quatro "unidades" de tempo de apresentação.
Em geral, o cálculo do vector de movimento é menos complexo se os divisores forem potência de dois. Isto consegue-se facilmente nesta forma de realização se Di(j (o tempo inter-imagem) entre duas imagens guardadas for escolhido para ser uma potência de dois, tal como está ilustrado graficamente na figura 4. Em alternativa, o procedimento de cálculo poderia ser definido para truncar ou arredondar todos os divisores para uma potência de 2.
Quando o tempo inter-imagem for uma potência de 2, o número de bits de dados pode ser reduzido se apenas a potência integral (de dois) for transmitida, em vez do valor total do tempo inter-imagem. A figura 4 ilustra graficamente uma situação em que as distâncias entre imagens são escolhidas para serem potências de dois. Nesse caso, o valor do tempo de apresentação D3,i de dois entre a imagem vídeo P7 e a imagem vídeo P3 é transmitido como 1 (uma vez que 21=2), e o valor do tempo de apresentação D7f3 de 4 entre a imagem vídeo P7 e a imagem vídeo P3 pode ser transmitida como 2 (uma vez que 22=4). 15
Nalguns casos pode não usar-se a interpolação do vector de movimento. No entanto, é ainda necessário transmitir a ordem de apresentação das imagens video para o sistema receptor / reprodutor de forma que o sistema receptor / reprodutor apresente as imagens video na ordem certa. Neste caso, os valores integrais assinados simples para Di(j são suficientes, independente do tempo de apresentação actual. Nalgumas aplicações basta o sinal.
Os tempos inter-imagem Di(j podem ser transmitidos simplesmente como valores integrais assinados simples. No entanto, podem ser usados muitos processos para codificar os valores Difj para se conseguir compressão adicional. Por exemplo, um bit de sinal seguido por uma magnitude codificada com comprimento variável é relativamente fácil de implementar e proporciona eficiência de codificação. código. 1 = 1 2 = 0 1 0 3 = 0 1 1 4 = 0 0 1 0 0 5 = 0 0 1 0 1 6 = 0 0 1 1 0 7 = 0 0 1 1 1 8=0 0 0 1 0 0
Um tal sistema de codificação com comprimento variável que pode ser usado é conhecido por UVLC (Universal Variable Length Code - código universal com comprimento variável). 0 sistema de codificação com comprimento variável UVLC é dado pelas palavras 16
Outro processo de codificação dos tempos inter-imagem pode consistir na utilização de codificação aritmética. Normalmente, a codificação aritmética usa probabilidades condicionais para efectuar uma compressão muito elevada dos bits de dados.
Assim, o presente invento introduz um processo simples mas poderoso de codificação e transmissão de tempos de apresentação inter-imagem. A codificação de tempos de apresentação inter-imagem pode ser tornada muito eficiente usando uma codificação com comprimento variável ou codificação aritmética. Além disso, pode ser escolhida uma precisão desejada para satisfazer as necessidades do descodificador vídeo, mas não mais. 0 referido acima descreveu um sistema para especificar temporização inter-imagem com precisão variável num sistema de compressão e de codificação multimédia. Está previsto gue possam ser feitas alterações e modificações, por guem tenha experiência na técnica, aos materiais e arranjos de elemento do presente invento, sem se afastar do âmbito do invento.
Lisboa, 19 de Novembro de 2012. 17

Claims (13)

  1. REIVINDICAÇÕES 1. Processo de descodificação de uma pluralidade de imagens video, o processo compreendendo: a recepção de uma primeira imagem video codificada, de uma segunda imagem video codificada e de um valor inteiro que é um expoente de um valor de potência de dois, o dito expoente servindo para descodificar o dito valor de potência de dois como um valor de ordem que é representativo de uma posição da segunda imagem video com referência à primeira imagem video numa sequência de imagens video; e a descodificação da segunda imagem video pela utilização do valor de ordem para o cálculo de um vector de movimento para a segunda imagem video.
  2. 2. Processo de acordo com a reivindicação 1, compreendendo ainda o cálculo de um outro vector de movimento para a segunda imagem video.
  3. 3. Processo de acordo com a reivindicação 1, no qual o cálculo do vector de movimento para a segunda imagem video compreende o cálculo de um valor especifico que se baseia em (i) uma primeira diferença de valores de ordem entre um valor de ordem de uma terceira imagem video e um valor de ordem da primeira imagem video e (ii) uma segunda diferença de valores de ordem entre o valor de ordem da segunda imagem video e o valor de ordem da primeira imagem video. 1
  4. 4. Processo de acordo com a reivindicação 3, no qual o cálculo do vector de movimento para a segunda imagem vídeo compreende ainda a multiplicação de um vector de movimento para a terceira imagem vídeo pelo valor específico.
  5. 5. Suporte de memória legível por computador guardando um fluxo binário, o fluxo binário compreendendo: uma primeira imagem vídeo codificada; uma segunda imagem vídeo codificada; e um valor inteiro que é um expoente de um valor de potência de dois para codificar o dito valor de potência de dois como um valor de ordem que é representativo de uma posição da segunda imagem vídeo com referencia à primeira imagem vídeo numa sequência de imagens vídeo, a segunda imagem vídeo estando codificada pela utilização do valor de ordem para calcular um valor de movimento para a segunda imagem vídeo.
  6. 6. Suporte de memória legível por computador de acordo com a reivindicação 5, no qual a primeira imagem codificada é uma imagem vídeo I que não compreende macrobloco com predição unidireccional ou bidireccional.
  7. 7. Dispositivo para codificar uma pluralidade de imagens vídeo compreendendo uma primeira e uma segunda imagem vídeo, o dispositivo compreendendo: meios de codificação de um expoente inteiro com um valor de uma potência de dois, o valor de potência de 2 dois sendo um valor de ordem representativo de uma posição da segunda imagem video com referência à primeira imagem vídeo numa sequência de imagens vídeo; e meios de codificação da segunda imagem vídeo por utilização do alvor de ordem para calcular um vector de movimento para a segunda imagem vídeo.
  8. 8. Dispositivo de acordo com a reivindicação 7, compreendendo ainda meios de cálculo de um outro vector de movimento para a segunda imagem vídeo.
  9. 9. Dispositivo de acordo com a reivindicação 7, no qual os meios de cálculo do vector de movimento para a segunda imagem vídeo compreendem meios de cálculo de um valor específico que se baseia em (i) uma primeira diferença de valores de ordem entre um valor de ordem de uma terceira imagem vídeo e um valor de ordem da primeira imagem vídeo e (ii) uma segunda diferença de valores de ordem entre o valor de ordem da segunda imagem vídeo e o valor de ordem da primeira imagem vídeo.
  10. 10. Dispositivo de acordo com a reivindicação 7, no qual os meios de cálculo do vector de movimento para a segunda imagem vídeo compreendem ainda meios para executar uma operação de interpolação com base num vector de movimento para uma terceira imagem vídeo.
  11. 11. Processo de acordo com a reivindicação 1, no qual a primeira imagem vídeo é uma imagem vídeo 1, uma imagem 3 vídeo I sendo uma imagem que não compreende macrobloco com predição unidireccional ou bidireccional.
  12. 12. Dispositivo de acordo com a reivindicação 7, no qual no qual a primeira imagem vídeo é uma imagem vídeo I, uma imagem vídeo I sendo uma imagem que não compreende macrobloco com predição unidireccional ou bidireccional.
  13. 13. Suporte de memória legível por computador guardando um programa informático que é executável por pelo menos um processador, o programa informático compreendendo conjuntos de instruções adaptadas para implementar o processo de acordo com qualquer uma das reivindicações 1 a 4 e 11. Lisboa, 19 de Novembro de 2012. 4
PT101772762T 2002-07-15 2003-07-11 Processo e aparelho de temporização entre imagens com precisão variável para codificação vídeo digital PT2276180E (pt)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US39636302P 2002-07-15 2002-07-15
US10/291,320 US7088776B2 (en) 2002-07-15 2002-11-08 Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding

Publications (1)

Publication Number Publication Date
PT2276180E true PT2276180E (pt) 2012-12-04

Family

ID=30117972

Family Applications (5)

Application Number Title Priority Date Filing Date
PT101772762T PT2276180E (pt) 2002-07-15 2003-07-11 Processo e aparelho de temporização entre imagens com precisão variável para codificação vídeo digital
PT111554416T PT2343829E (pt) 2002-07-15 2003-07-11 Processo e aparelho de temporização entre imagens com precisão variável para codificação vídeo digital
PT111521746T PT2326019E (pt) 2002-07-15 2003-07-11 Processo e aparelho de temporização entre imagens com precisão variável para codificação vídeo digital
PT03764499T PT1532746E (pt) 2002-07-15 2003-07-11 Processo e aparelho de temporização entre imagens com precisão variável para codificação vídeo digital
PT111554671T PT2328283E (pt) 2002-07-15 2003-07-11 Processo e aparelho de temporização entre imagens com precisão variável para codificação vídeo digital

Family Applications After (4)

Application Number Title Priority Date Filing Date
PT111554416T PT2343829E (pt) 2002-07-15 2003-07-11 Processo e aparelho de temporização entre imagens com precisão variável para codificação vídeo digital
PT111521746T PT2326019E (pt) 2002-07-15 2003-07-11 Processo e aparelho de temporização entre imagens com precisão variável para codificação vídeo digital
PT03764499T PT1532746E (pt) 2002-07-15 2003-07-11 Processo e aparelho de temporização entre imagens com precisão variável para codificação vídeo digital
PT111554671T PT2328283E (pt) 2002-07-15 2003-07-11 Processo e aparelho de temporização entre imagens com precisão variável para codificação vídeo digital

Country Status (17)

Country Link
US (26) US7088776B2 (pt)
EP (44) EP2343829B1 (pt)
JP (6) JP4620586B2 (pt)
KR (8) KR101194952B1 (pt)
CN (10) CN1669234A (pt)
AT (1) ATE487282T1 (pt)
AU (1) AU2003256494B2 (pt)
BR (2) BR0312659A (pt)
CA (4) CA2491741C (pt)
DE (1) DE60334804D1 (pt)
DK (5) DK2343829T3 (pt)
ES (5) ES2393969T3 (pt)
HK (10) HK1076207A1 (pt)
NO (3) NO338810B1 (pt)
PT (5) PT2276180E (pt)
SG (4) SG10201502256TA (pt)
WO (1) WO2004008654A1 (pt)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7088776B2 (en) * 2002-07-15 2006-08-08 Apple Computer, Inc. Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding
AU2013204651B2 (en) * 2002-07-15 2015-12-24 Apple Inc Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding
US6728315B2 (en) 2002-07-24 2004-04-27 Apple Computer, Inc. Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding with reduced requirements for division operations
US8254461B2 (en) * 2002-07-24 2012-08-28 Apple Inc. Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding with reduced requirements for division operations
US7949101B2 (en) 2005-12-16 2011-05-24 Rapiscan Systems, Inc. X-ray scanners and X-ray sources therefor
US20050207490A1 (en) * 2004-03-18 2005-09-22 Wang Jason N Stored picture index for AVC coding
JP2006311366A (ja) * 2005-04-28 2006-11-09 Matsushita Electric Ind Co Ltd 画像記録装置及び画像記録装置の駆動方法
US20090201380A1 (en) * 2008-02-12 2009-08-13 Decisive Analytics Corporation Method and apparatus for streamlined wireless data transfer
WO2009128208A1 (ja) * 2008-04-16 2009-10-22 株式会社日立製作所 動画像符号化装置、動画像復号化装置、動画像符号化方法、および動画像復号化方法
US8458105B2 (en) * 2009-02-12 2013-06-04 Decisive Analytics Corporation Method and apparatus for analyzing and interrelating data
US20100235314A1 (en) * 2009-02-12 2010-09-16 Decisive Analytics Corporation Method and apparatus for analyzing and interrelating video data
US20100279418A1 (en) * 2009-05-04 2010-11-04 Loren Robert Larson Glucose meter adaptable for use with handheld devices, and associated communication network
US8976856B2 (en) * 2010-09-30 2015-03-10 Apple Inc. Optimized deblocking filters
US20130177084A1 (en) * 2012-01-10 2013-07-11 Qualcomm Incorporated Motion vector scaling in video coding
EP2880798A1 (en) * 2012-08-02 2015-06-10 Nokia Solutions and Networks Oy Dual codeword re-transmission
US9900316B2 (en) * 2013-12-04 2018-02-20 International Business Machines Corporation Accessing storage units of a dispersed storage network
US10199074B2 (en) * 2017-06-02 2019-02-05 Apple Inc. Techniques for selecting frames for decode in media player
GB2578629B (en) 2018-11-01 2022-02-23 Samsung Electronics Co Ltd Device and method for processing rendered frames
CN115209144B (zh) * 2018-12-29 2024-01-02 华为技术有限公司 编码器,解码器和使用压缩mv存储的对应方法

Family Cites Families (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US247031A (en) * 1881-09-13 Drier for paints
US202586A (en) * 1878-04-16 Improvement in flushing-boxes for water-closets
US5467136A (en) 1991-05-31 1995-11-14 Kabushiki Kaisha Toshiba Video decoder for determining a motion vector from a scaled vector and a difference vector
US5647049A (en) * 1991-05-31 1997-07-08 Kabushiki Kaisha Toshiba Video recording/reproducing apparatus which uses a differential motion vector determined using two other motion vectors
WO1993002529A1 (en) 1991-07-23 1993-02-04 British Telecommunications Public Limited Company Method and device for frame interpolation of a moving image
US5539466A (en) 1991-07-30 1996-07-23 Sony Corporation Efficient coding apparatus for picture signal and decoding apparatus therefor
JP3092280B2 (ja) * 1991-07-30 2000-09-25 ソニー株式会社 画像信号の高能率符号化及び復号化装置
US5227878A (en) 1991-11-15 1993-07-13 At&T Bell Laboratories Adaptive coding and decoding of frames and fields of video
US5842033A (en) * 1992-06-30 1998-11-24 Discovision Associates Padding apparatus for passing an arbitrary number of bits through a buffer in a pipeline system
KR940003404A (ko) * 1992-07-23 1994-02-21 이헌조 프레임 간/프레임 내 움직임 보상 시스템
JPH0662389A (ja) 1992-08-04 1994-03-04 Matsushita Electric Ind Co Ltd 映像信号符号化装置
FR2696026B1 (fr) * 1992-09-18 1994-12-30 Sgs Thomson Microelectronics Procédé de masquage d'erreurs de transmission d'image compressée en MPEG.
JP3264043B2 (ja) 1993-04-30 2002-03-11 ソニー株式会社 量子化コントロール装置および方法
US5398072A (en) * 1993-10-25 1995-03-14 Lsi Logic Corporation Management of channel buffer in video decoders
US5502493A (en) * 1994-05-19 1996-03-26 Matsushita Electric Corporation Of America Variable length data decoder for use with MPEG encoded video data
KR100287211B1 (ko) 1994-08-30 2001-04-16 윤종용 양방향 움직임 추정방법 및 장치
US5838380A (en) * 1994-09-30 1998-11-17 Cirrus Logic, Inc. Memory controller for decoding a compressed/encoded video data frame
US6608966B1 (en) * 1994-10-07 2003-08-19 Intel Corporation VCR-type controls for video server system
JPH08149416A (ja) * 1994-11-17 1996-06-07 Hitachi Ltd 動画像復号化方法並びにその装置
JPH08149479A (ja) 1994-11-24 1996-06-07 Matsushita Electric Ind Co Ltd 超低ビットレートビデオ符号化方法
US5724446A (en) * 1995-04-18 1998-03-03 Advanced Micro Devices, Inc. Video decoder apparatus using non-reference frame as an additional prediction source and method therefor
GB2301973B (en) 1995-06-06 1999-10-20 Sony Uk Ltd Motion compensated video processing
US5745183A (en) 1995-08-25 1998-04-28 Thomson Consumer Electronics, Inc. Image motion estimation system which derives candidate block from interpolated motion vectors
US5652629A (en) 1995-09-12 1997-07-29 International Business Machines Corporation Bidirectional motion estimation in a motion video compression system
US6057893A (en) 1995-12-28 2000-05-02 Sony Corporation Picture encoding method, picture encoding apparatus, picture transmitting method and picture recording medium
US5737023A (en) 1996-02-05 1998-04-07 International Business Machines Corporation Hierarchical motion estimation for interlaced video
DE69718749T2 (de) 1996-05-17 2003-10-16 Matsushita Electric Industrial Co., Ltd. Bilddecodierer
ES2158570T3 (es) * 1996-07-05 2001-09-01 Matsushita Electric Ind Co Ltd Un metodo para la visualizacion de las franjas horarias y la sincronizacion de multiples planos de los objetos de video.
US5812199A (en) 1996-07-11 1998-09-22 Apple Computer, Inc. System and method for estimating block motion in a video image sequence
JPH10174065A (ja) * 1996-12-06 1998-06-26 Matsushita Electric Ind Co Ltd 画像音声多重化データ編集方法およびその装置
JPH10174035A (ja) 1996-12-16 1998-06-26 Sharp Corp 画像情報処理装置
JP3223962B2 (ja) 1997-01-24 2001-10-29 松下電器産業株式会社 画像復号化方法
JP3304799B2 (ja) 1997-01-30 2002-07-22 株式会社日立製作所 信号処理方法及び装置
US6539120B1 (en) 1997-03-12 2003-03-25 Matsushita Electric Industrial Co., Ltd. MPEG decoder providing multiple standard output signals
US6404813B1 (en) 1997-03-27 2002-06-11 At&T Corp. Bidirectionally predicted pictures or video object planes for efficient and flexible video coding
JP3164031B2 (ja) * 1997-05-30 2001-05-08 日本ビクター株式会社 動画像符号化復号化装置、動画像符号化復号化方法、及び動画像符号化記録媒体
US6018368A (en) 1997-07-11 2000-01-25 Samsung Electro-Mechanics Co., Ltd. Scalable encoding apparatus and method with improved function of scaling motion vector
KR100240770B1 (ko) 1997-07-11 2000-01-15 이형도 에너지보상/역보상기능을개선한스케러블부호화기및그방법
JP4010024B2 (ja) * 1997-09-02 2007-11-21 ソニー株式会社 圧縮動画像信号のデコード装置
US5978029A (en) * 1997-10-10 1999-11-02 International Business Machines Corporation Real-time encoding of video sequence employing two encoders and statistical analysis
US6040861A (en) * 1997-10-10 2000-03-21 International Business Machines Corporation Adaptive real-time encoding of video sequence employing image statistics
US6108047A (en) 1997-10-28 2000-08-22 Stream Machine Company Variable-size spatial and temporal video scaler
IT1297939B1 (it) 1997-12-23 1999-12-20 Fiatavio Spa Gruppo di trasmissione ad ingranaggi
JPH11275592A (ja) 1998-01-22 1999-10-08 Victor Co Of Japan Ltd 動画像符号列変換装置及びその方法
EP0935395A2 (en) * 1998-02-06 1999-08-11 Sony Corporation Video encoding methods and apparatus
US6462744B1 (en) * 1998-02-13 2002-10-08 Matsushita Electric Industrial Co., Ltd. Image decoding apparatus that performs image decoding so that frame areas that occupy a large area in a storage apparatus can be used for other purposes, and a recording medium recording an image decoding program
JP3649370B2 (ja) 1998-02-25 2005-05-18 日本ビクター株式会社 動き補償符号化装置及び動き補償符号化方法
KR19990036646U (ko) 1998-02-26 1999-09-27 최종환 원예작물 가지 유인 밴드.
JPH11275580A (ja) 1998-03-24 1999-10-08 Sony Corp 画像データ処理装置、画像データ復号装置及び画像データ符号化装置並びにそれらの方法
US6317460B1 (en) 1998-05-12 2001-11-13 Sarnoff Corporation Motion vector generation by temporal interpolation
JP3104681B2 (ja) 1998-06-10 2000-10-30 日本電気株式会社 オーディオ・ビデオ同期再生方法および装置
JP2000013790A (ja) * 1998-06-19 2000-01-14 Sony Corp 画像符号化装置および画像符号化方法、画像復号装置および画像復号方法、並びに提供媒体
US6018386A (en) * 1998-07-03 2000-01-25 The United States Of America As Represented By The Secretary Of The Air Force Oscillatory, optically coupled measurement system
US6295377B1 (en) 1998-07-13 2001-09-25 Compaq Computer Corporation Combined spline and block based motion estimation for coding a sequence of video images
US6591015B1 (en) 1998-07-29 2003-07-08 Matsushita Electric Industrial Co., Ltd. Video coding method and apparatus with motion compensation and motion vector estimator
JP2000059790A (ja) 1998-08-05 2000-02-25 Victor Co Of Japan Ltd 動画像符号列変換装置及びその方法
ID24586A (id) * 1998-12-21 2000-07-27 Matsushita Electric Ind Co Ltd Perangkat dan metode penyelarasan waktu dengan menggunakan modul basis waktu dan resolusi peningkatan waktu
US6297852B1 (en) * 1998-12-30 2001-10-02 Ati International Srl Video display method and apparatus with synchronized video playback and weighted frame creation
US6552749B1 (en) * 1999-01-29 2003-04-22 Intel Corporation Method and apparatus for video motion compensation, reduction and color formatting
US6625322B1 (en) * 1999-06-08 2003-09-23 Matsushita Electric Industrial Co., Ltd. Image coding apparatus
JP3264659B2 (ja) * 1999-06-17 2002-03-11 松下電器産業株式会社 ノイズリダクション装置および方法とその記録媒体
JP3609291B2 (ja) 1999-07-19 2005-01-12 日本電信電話株式会社 多地点通信用マルチキャスト中継装置
JP2001136528A (ja) 1999-11-10 2001-05-18 Matsushita Electric Ind Co Ltd 画像圧縮符号化装置
US20030043918A1 (en) 1999-12-20 2003-03-06 Jiang Hong H. Method and apparatus for performing video image decoding
US6859609B1 (en) * 2000-02-11 2005-02-22 Lsi Logic Corporation Portable digital recorder
JP3593944B2 (ja) 2000-03-08 2004-11-24 日本電気株式会社 画像データ処理装置及びそれに用いる動き補償処理方法
KR100349058B1 (ko) * 2000-06-15 2002-08-21 (주)씨앤에스 테크놀로지 영상압축복원장치
JP2001069530A (ja) 2000-07-28 2001-03-16 Fujitsu Ltd 立体映像高能率符号化装置
US7266150B2 (en) * 2001-07-11 2007-09-04 Dolby Laboratories, Inc. Interpolation of video compression frames
US7257312B2 (en) 2001-10-23 2007-08-14 Thomson Licensing Fast motion trick mode using dummy predictive pictures
WO2003077567A1 (en) 2002-03-14 2003-09-18 Matsushita Electric Industrial Co., Ltd. Motion vector detection method
KR100508798B1 (ko) * 2002-04-09 2005-08-19 엘지전자 주식회사 쌍방향 예측 블록 예측 방법
KR100931750B1 (ko) 2002-04-19 2009-12-14 파나소닉 주식회사 움직임 벡터 계산방법
JP2004048632A (ja) * 2002-05-16 2004-02-12 Matsushita Electric Ind Co Ltd 動画像符号化方法および動画像復号化方法
JP2004023458A (ja) 2002-06-17 2004-01-22 Toshiba Corp 動画像符号化/復号化方法及び装置
JP2004088737A (ja) * 2002-07-02 2004-03-18 Matsushita Electric Ind Co Ltd 画像符号化方法および画像復号化方法
US20040234143A1 (en) * 2002-07-02 2004-11-25 Makoto Hagai Image encoding method and picture decoding method
JP3824268B2 (ja) * 2002-07-02 2006-09-20 松下電器産業株式会社 動きベクトル導出方法、および動きベクトル導出装置
US7088776B2 (en) 2002-07-15 2006-08-08 Apple Computer, Inc. Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding
AU2008201106C1 (en) 2002-07-15 2011-06-09 Apple Inc. Method and bitstream for variable accuracy inter-picture timing specification for digital video encoding
AU2013204651B2 (en) 2002-07-15 2015-12-24 Apple Inc Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding
US6728315B2 (en) * 2002-07-24 2004-04-27 Apple Computer, Inc. Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding with reduced requirements for division operations
US8254461B2 (en) 2002-07-24 2012-08-28 Apple Inc. Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding with reduced requirements for division operations
US7801217B2 (en) * 2002-10-01 2010-09-21 Thomson Licensing Implicit weighting of reference pictures in a video encoder
CN1689242B (zh) 2002-10-01 2011-09-14 汤姆森许可贸易公司 视频解码器中参考画面的隐式加权
KR100506864B1 (ko) 2002-10-04 2005-08-05 엘지전자 주식회사 모션벡터 결정방법
AU2011265362A1 (en) 2002-12-06 2012-01-19 Apple Inc Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding with reduced requirements for division operations
US6728615B1 (en) * 2003-02-03 2004-04-27 Visteon Global Technologies, Inc. System and method of controlling vehicle steer-by-wire systems with adjustable steering feel
TW200806217A (en) * 2006-05-08 2008-02-01 Korea Ind Fastener Corp Release buckle
US20080025408A1 (en) 2006-07-31 2008-01-31 Sam Liu Video encoding

Also Published As

Publication number Publication date
US7292636B2 (en) 2007-11-06
EP2343830A1 (en) 2011-07-13
CA2629246C (en) 2013-09-17
CA2629246A1 (en) 2004-01-22
EP2317662A2 (en) 2011-05-04
KR20100005242A (ko) 2010-01-14
EP2328278A2 (en) 2011-06-01
EP2328281A3 (en) 2011-07-13
ES2393968T3 (es) 2013-01-03
EP2343822A1 (en) 2011-07-13
EP1976299A2 (en) 2008-10-01
US8737468B2 (en) 2014-05-27
ES2355816T3 (es) 2011-03-31
EP2326020A2 (en) 2011-05-25
KR20100128354A (ko) 2010-12-07
NO342829B1 (no) 2018-08-13
EP2343896A1 (en) 2011-07-13
AU2003256494A1 (en) 2004-02-02
KR100987894B1 (ko) 2010-10-13
BRPI0312659B1 (pt) 2019-04-16
KR101194952B1 (ko) 2012-10-25
EP2328283A3 (en) 2011-07-13
EP2346178A1 (en) 2011-07-20
DE60334804D1 (de) 2010-12-16
EP2346183A1 (en) 2011-07-20
US20120093230A1 (en) 2012-04-19
KR101192559B1 (ko) 2012-10-17
CN102420992B (zh) 2016-01-20
JP4620586B2 (ja) 2011-01-26
DK2328283T3 (da) 2012-12-10
US20160073128A1 (en) 2016-03-10
WO2004008654A8 (en) 2004-06-24
CN102420993B (zh) 2015-09-09
JP2005533465A (ja) 2005-11-04
JP2012135016A (ja) 2012-07-12
ES2393969T3 (es) 2013-01-03
EP2346186A1 (en) 2011-07-20
EP2343825A1 (en) 2011-07-13
EP2346187A1 (en) 2011-07-20
US20070274394A1 (en) 2007-11-29
US8831106B2 (en) 2014-09-09
US8743951B2 (en) 2014-06-03
US8817883B2 (en) 2014-08-26
EP2328279A2 (en) 2011-06-01
US20120099650A1 (en) 2012-04-26
PT2328283E (pt) 2012-12-04
EP2317662A3 (en) 2011-07-13
US20040240557A1 (en) 2004-12-02
DK2343829T3 (da) 2012-11-26
US8737483B2 (en) 2014-05-27
PT2343829E (pt) 2012-12-04
CN102420991B (zh) 2016-04-13
EP2328280A3 (en) 2011-07-13
US7903730B2 (en) 2011-03-08
EP2343817A1 (en) 2011-07-13
CA2491741A1 (en) 2004-01-22
ES2393544T3 (es) 2012-12-26
SG10201502256TA (en) 2015-07-30
US9838707B2 (en) 2017-12-05
CA2931419A1 (en) 2004-01-22
US20150049815A1 (en) 2015-02-19
HK1076207A1 (en) 2006-01-06
EP2346180A1 (en) 2011-07-20
EP2328284A2 (en) 2011-06-01
US7088776B2 (en) 2006-08-08
EP2328284A3 (en) 2011-07-13
KR100850810B1 (ko) 2008-08-06
EP2343815A1 (en) 2011-07-13
US20040008776A1 (en) 2004-01-15
BR0312659A (pt) 2005-04-26
CN102427535A (zh) 2012-04-25
PT2326019E (pt) 2012-12-05
HK1153057A1 (en) 2012-03-16
EP2326020A3 (en) 2011-07-13
US20120093233A1 (en) 2012-04-19
CN102892006B (zh) 2016-02-10
SG10201607076UA (en) 2016-10-28
KR20080015938A (ko) 2008-02-20
US10154277B2 (en) 2018-12-11
JP2007181227A (ja) 2007-07-12
JP2011024245A (ja) 2011-02-03
US20120099647A1 (en) 2012-04-26
CA2931419C (en) 2018-09-11
CN102427535B (zh) 2015-03-11
CN102892005A (zh) 2013-01-23
CN102420993A (zh) 2012-04-18
JP4676450B2 (ja) 2011-04-27
US20070274677A1 (en) 2007-11-29
CN1669234B (zh) 2013-08-14
EP2343829A1 (en) 2011-07-13
HK1156747A1 (en) 2012-06-15
JP2008187735A (ja) 2008-08-14
EP2346181A1 (en) 2011-07-20
EP2343828A1 (en) 2011-07-13
US8824559B2 (en) 2014-09-02
US20120099640A1 (en) 2012-04-26
US20120093229A1 (en) 2012-04-19
US8837597B2 (en) 2014-09-16
US20120093228A1 (en) 2012-04-19
EP2326019A2 (en) 2011-05-25
PT1532746E (pt) 2011-02-09
JP2011097617A (ja) 2011-05-12
KR101210015B1 (ko) 2012-12-07
US8654857B2 (en) 2014-02-18
EP2343824A1 (en) 2011-07-13
EP2328281A2 (en) 2011-06-01
HK1181225A1 (zh) 2013-11-01
HK1159875A1 (en) 2012-08-03
EP2326019B1 (en) 2012-08-29
US20070189378A1 (en) 2007-08-16
CN102420992A (zh) 2012-04-18
US20070274395A1 (en) 2007-11-29
EP1532746A1 (en) 2005-05-25
HK1169768A1 (zh) 2013-02-01
CN1669234A (zh) 2005-09-14
CN102892005B (zh) 2016-07-13
CA2820164A1 (en) 2004-01-22
NO341570B1 (no) 2017-12-04
EP2343820A1 (en) 2011-07-13
US9204161B2 (en) 2015-12-01
US8630339B2 (en) 2014-01-14
US20120099653A1 (en) 2012-04-26
EP2346184A1 (en) 2011-07-20
US20070274678A1 (en) 2007-11-29
CN102892006A (zh) 2013-01-23
WO2004008654A1 (en) 2004-01-22
KR100987911B1 (ko) 2010-10-13
AU2003256494B2 (en) 2008-01-24
EP2276181A2 (en) 2011-01-19
HK1169536A1 (zh) 2013-01-25
JP5385251B2 (ja) 2014-01-08
US8837580B2 (en) 2014-09-16
KR101210189B1 (ko) 2012-12-07
EP2328282A3 (en) 2011-07-13
US20070189379A1 (en) 2007-08-16
HK1169535A1 (zh) 2013-01-25
CN101262605A (zh) 2008-09-10
CN102427536A (zh) 2012-04-25
US20120093232A1 (en) 2012-04-19
HK1169537A1 (zh) 2013-01-25
CA2820164C (en) 2016-08-23
EP2343826A1 (en) 2011-07-13
EP2343816A1 (en) 2011-07-13
EP2343819A1 (en) 2011-07-13
SG168406A1 (en) 2011-02-28
EP1976299A3 (en) 2008-12-03
EP1532746A4 (en) 2008-12-03
JP5385233B2 (ja) 2014-01-08
EP2346179A1 (en) 2011-07-20
DK1532746T3 (da) 2011-02-21
EP2363963A1 (en) 2011-09-07
US7551674B2 (en) 2009-06-23
US20070183492A1 (en) 2007-08-09
NO20050802L (no) 2005-02-15
EP2328282A2 (en) 2011-06-01
EP1532746B1 (en) 2010-11-03
EP2328277A3 (en) 2011-07-13
DK2276180T3 (da) 2012-12-17
HK1156745A1 (en) 2012-06-15
EP2328283A2 (en) 2011-06-01
KR101005135B1 (ko) 2011-01-04
US20110085594A1 (en) 2011-04-14
US8094724B2 (en) 2012-01-10
CA2491741C (en) 2010-06-29
US20170054994A1 (en) 2017-02-23
US8737462B2 (en) 2014-05-27
US7548584B2 (en) 2009-06-16
US7826528B2 (en) 2010-11-02
EP2343818A1 (en) 2011-07-13
EP2343823A1 (en) 2011-07-13
ATE487282T1 (de) 2010-11-15
SG179316A1 (en) 2012-04-27
KR20110089378A (ko) 2011-08-05
EP2276180A2 (en) 2011-01-19
JP5385414B2 (ja) 2014-01-08
US20120093224A1 (en) 2012-04-19
CN102427536B (zh) 2015-10-21
ES2394188T3 (es) 2013-01-23
EP2346177A1 (en) 2011-07-20
NO20161327A1 (no) 2016-08-22
EP2328278A3 (en) 2011-07-13
NO338810B1 (no) 2016-10-24
DK2326019T3 (da) 2012-12-10
EP2343821A1 (en) 2011-07-13
EP2343829B1 (en) 2012-08-29
KR20100012060A (ko) 2010-02-04
US20120093223A1 (en) 2012-04-19
US8711924B2 (en) 2014-04-29
NO20170550A1 (no) 2005-02-15
US9516337B2 (en) 2016-12-06
KR20120037030A (ko) 2012-04-18
US7668240B2 (en) 2010-02-23
EP2346185A1 (en) 2011-07-20
US8090026B2 (en) 2012-01-03
EP2328277A2 (en) 2011-06-01
EP2328283B1 (en) 2012-08-29
EP2276180B1 (en) 2012-09-05
EP2326019A3 (en) 2011-07-13
EP2346182A1 (en) 2011-07-20
US8737484B2 (en) 2014-05-27
EP2328280A2 (en) 2011-06-01
US20100183073A1 (en) 2010-07-22
EP2343827A1 (en) 2011-07-13
US20120099649A1 (en) 2012-04-26
KR20070091036A (ko) 2007-09-06
EP2328279A3 (en) 2011-07-13
CN102420991A (zh) 2012-04-18
EP2276181A3 (en) 2011-07-13
CN101262605B (zh) 2012-05-30
EP2276180A3 (en) 2011-07-13
KR20060015440A (ko) 2006-02-17

Similar Documents

Publication Publication Date Title
US7551674B2 (en) Using order difference for calculating motion vector
AU2013204690B2 (en) Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding
AU2008201106C1 (en) Method and bitstream for variable accuracy inter-picture timing specification for digital video encoding
BRPI0318777B1 (pt) Método de especificação de informação de vídeo digital e sistema de codificação para codificar informação de vídeo digital