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 PDFInfo
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/005—Statistical coding, e.g. Huffman, run length coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/40—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods 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/43—Hardware specially adapted for motion estimation or compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/587—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4305—Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing 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)
- 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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
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)
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)
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 |
-
2002
- 2002-11-08 US US10/291,320 patent/US7088776B2/en not_active Expired - Lifetime
-
2003
- 2003-07-11 SG SG10201502256TA patent/SG10201502256TA/en unknown
- 2003-07-11 EP EP11155441A patent/EP2343829B1/en not_active Expired - Lifetime
- 2003-07-11 EP EP11155493A patent/EP2343827A1/en not_active Ceased
- 2003-07-11 EP EP11155462A patent/EP2328280A3/en not_active Ceased
- 2003-07-11 EP EP11155440A patent/EP2343828A1/en not_active Ceased
- 2003-07-11 DK DK11155441.6T patent/DK2343829T3/da active
- 2003-07-11 EP EP11155437A patent/EP2343817A1/en not_active Ceased
- 2003-07-11 PT PT101772762T patent/PT2276180E/pt unknown
- 2003-07-11 DK DK11155467.1T patent/DK2328283T3/da active
- 2003-07-11 EP EP11155464A patent/EP2328282A3/en not_active Withdrawn
- 2003-07-11 EP EP11155489A patent/EP2343824A1/en not_active Ceased
- 2003-07-11 KR KR1020117017349A patent/KR101194952B1/ko active IP Right Grant
- 2003-07-11 SG SG200702807-9A patent/SG168406A1/en unknown
- 2003-07-11 CN CNA038167395A patent/CN1669234A/zh active Granted
- 2003-07-11 EP EP08005966A patent/EP1976299A3/en not_active Ceased
- 2003-07-11 SG SG10201607076UA patent/SG10201607076UA/en unknown
- 2003-07-11 CN CN038167395A patent/CN1669234B/zh not_active Expired - Lifetime
- 2003-07-11 EP EP11155388A patent/EP2328279A3/en not_active Withdrawn
- 2003-07-11 DK DK11152174.6T patent/DK2326019T3/da active
- 2003-07-11 EP EP11155381A patent/EP2346179A1/en not_active Ceased
- 2003-07-11 EP EP11152144A patent/EP2317662A3/en not_active Ceased
- 2003-07-11 EP EP11155463A patent/EP2328281A3/en not_active Withdrawn
- 2003-07-11 EP EP03764499A patent/EP1532746B1/en not_active Expired - Lifetime
- 2003-07-11 EP EP11155434A patent/EP2343816A1/en not_active Ceased
- 2003-07-11 ES ES11155467T patent/ES2393969T3/es not_active Expired - Lifetime
- 2003-07-11 BR BR0312659-5A patent/BR0312659A/pt active IP Right Grant
- 2003-07-11 PT PT111554416T patent/PT2343829E/pt unknown
- 2003-07-11 CN CN201210009587.3A patent/CN102892006B/zh not_active Expired - Lifetime
- 2003-07-11 EP EP11155445A patent/EP2343896A1/en not_active Ceased
- 2003-07-11 EP EP11155496A patent/EP2343818A1/en not_active Ceased
- 2003-07-11 CN CN201210009459.9A patent/CN102892005B/zh not_active Expired - Lifetime
- 2003-07-11 WO PCT/US2003/021714 patent/WO2004008654A1/en active Application Filing
- 2003-07-11 EP EP11155431A patent/EP2346183A1/en not_active Ceased
- 2003-07-11 CA CA2491741A patent/CA2491741C/en not_active Expired - Lifetime
- 2003-07-11 EP EP11155378A patent/EP2346178A1/en not_active Ceased
- 2003-07-11 EP EP11155447A patent/EP2363963A1/en not_active Ceased
- 2003-07-11 CN CN201210009744.0A patent/CN102420992B/zh not_active Expired - Lifetime
- 2003-07-11 EP EP11155444A patent/EP2343821A1/en not_active Ceased
- 2003-07-11 EP EP11155387A patent/EP2346187A1/en not_active Ceased
- 2003-07-11 EP EP11155491A patent/EP2343830A1/en not_active Ceased
- 2003-07-11 SG SG2010069979A patent/SG179316A1/en unknown
- 2003-07-11 KR KR1020107000888A patent/KR101192559B1/ko active IP Right Grant
- 2003-07-11 PT PT111521746T patent/PT2326019E/pt unknown
- 2003-07-11 CN CN201210009701.2A patent/CN102420991B/zh not_active Expired - Lifetime
- 2003-07-11 CA CA2820164A patent/CA2820164C/en not_active Expired - Lifetime
- 2003-07-11 EP EP11155414A patent/EP2346182A1/en not_active Ceased
- 2003-07-11 ES ES11155441T patent/ES2393544T3/es not_active Expired - Lifetime
- 2003-07-11 EP EP10177289A patent/EP2276181A3/en not_active Ceased
- 2003-07-11 EP EP11152176A patent/EP2326020A3/en not_active Ceased
- 2003-07-11 EP EP11155385A patent/EP2328278A3/en not_active Withdrawn
- 2003-07-11 KR KR1020127005128A patent/KR101210189B1/ko active IP Right Grant
- 2003-07-11 DK DK03764499.4T patent/DK1532746T3/da active
- 2003-07-11 CN CN2008100822320A patent/CN101262605B/zh not_active Expired - Lifetime
- 2003-07-11 EP EP11155492A patent/EP2343826A1/en not_active Ceased
- 2003-07-11 EP EP11155487A patent/EP2343819A1/en not_active Ceased
- 2003-07-11 EP EP10177276A patent/EP2276180B1/en not_active Expired - Lifetime
- 2003-07-11 EP EP11155467A patent/EP2328283B1/en not_active Expired - Lifetime
- 2003-07-11 AT AT03764499T patent/ATE487282T1/de active
- 2003-07-11 CN CN201210009457.XA patent/CN102427535B/zh not_active Expired - Lifetime
- 2003-07-11 EP EP11155494A patent/EP2343815A1/en not_active Ceased
- 2003-07-11 KR KR1020097025466A patent/KR101005135B1/ko active IP Right Grant
- 2003-07-11 KR KR1020107025988A patent/KR101210015B1/ko active IP Right Grant
- 2003-07-11 EP EP11155383A patent/EP2346184A1/en not_active Ceased
- 2003-07-11 CN CN201210009977.0A patent/CN102420993B/zh not_active Expired - Lifetime
- 2003-07-11 EP EP11155442A patent/EP2343820A1/en not_active Ceased
- 2003-07-11 BR BRPI0312659-5A patent/BRPI0312659B1/pt unknown
- 2003-07-11 EP EP11155409A patent/EP2346181A1/en not_active Ceased
- 2003-07-11 ES ES10177276T patent/ES2394188T3/es not_active Expired - Lifetime
- 2003-07-11 EP EP11155384A patent/EP2346185A1/en not_active Ceased
- 2003-07-11 CA CA2629246A patent/CA2629246C/en not_active Expired - Lifetime
- 2003-07-11 EP EP11155490A patent/EP2343825A1/en not_active Ceased
- 2003-07-11 KR KR1020057000715A patent/KR100850810B1/ko active IP Right Grant
- 2003-07-11 KR KR1020087000940A patent/KR100987911B1/ko active IP Right Grant
- 2003-07-11 EP EP11155479A patent/EP2343823A1/en not_active Ceased
- 2003-07-11 PT PT03764499T patent/PT1532746E/pt unknown
- 2003-07-11 EP EP11155376A patent/EP2346177A1/en not_active Ceased
- 2003-07-11 EP EP11155386A patent/EP2346186A1/en not_active Ceased
- 2003-07-11 EP EP11155448A patent/EP2343822A1/en not_active Ceased
- 2003-07-11 CN CN201210009742.1A patent/CN102427536B/zh not_active Expired - Lifetime
- 2003-07-11 ES ES03764499T patent/ES2355816T3/es not_active Expired - Lifetime
- 2003-07-11 DK DK10177276.2T patent/DK2276180T3/da active
- 2003-07-11 AU AU2003256494A patent/AU2003256494B2/en not_active Expired
- 2003-07-11 CA CA2931419A patent/CA2931419C/en not_active Expired - Lifetime
- 2003-07-11 ES ES11152174T patent/ES2393968T3/es not_active Expired - Lifetime
- 2003-07-11 EP EP11155498A patent/EP2328284A3/en not_active Withdrawn
- 2003-07-11 EP EP11152174A patent/EP2326019B1/en not_active Expired - Lifetime
- 2003-07-11 PT PT111554671T patent/PT2328283E/pt unknown
- 2003-07-11 JP JP2005505120A patent/JP4620586B2/ja not_active Expired - Lifetime
- 2003-07-11 EP EP11155377A patent/EP2328277A3/en not_active Withdrawn
- 2003-07-11 KR KR1020077017042A patent/KR100987894B1/ko active IP Right Grant
- 2003-07-11 DE DE60334804T patent/DE60334804D1/de not_active Expired - Lifetime
- 2003-07-11 EP EP11155408A patent/EP2346180A1/en not_active Ceased
-
2004
- 2004-03-02 US US10/792,669 patent/US7292636B2/en active Active
-
2005
- 2005-02-15 NO NO20050802A patent/NO338810B1/no not_active IP Right Cessation
- 2005-11-10 HK HK05110030.6A patent/HK1076207A1/xx not_active IP Right Cessation
-
2007
- 2007-01-10 US US11/621,974 patent/US7668240B2/en not_active Expired - Lifetime
- 2007-01-10 US US11/621,969 patent/US7903730B2/en not_active Expired - Lifetime
- 2007-01-10 US US11/621,971 patent/US7826528B2/en not_active Expired - Lifetime
- 2007-02-07 JP JP2007028606A patent/JP4676450B2/ja not_active Expired - Lifetime
- 2007-08-08 US US11/835,727 patent/US8094724B2/en not_active Expired - Fee Related
- 2007-08-08 US US11/835,732 patent/US8090026B2/en not_active Expired - Fee Related
- 2007-08-08 US US11/835,773 patent/US7548584B2/en not_active Expired - Lifetime
- 2007-08-08 US US11/835,739 patent/US7551674B2/en not_active Expired - Lifetime
-
2008
- 2008-03-24 JP JP2008076587A patent/JP2008187735A/ja active Pending
-
2010
- 2010-01-18 US US12/689,157 patent/US8711924B2/en not_active Expired - Lifetime
- 2010-09-02 JP JP2010197131A patent/JP5385233B2/ja not_active Expired - Lifetime
- 2010-12-15 JP JP2010279834A patent/JP5385251B2/ja not_active Expired - Lifetime
- 2010-12-17 US US12/972,419 patent/US8630339B2/en not_active Expired - Lifetime
-
2011
- 2011-07-11 HK HK11107148.3A patent/HK1153057A1/xx not_active IP Right Cessation
- 2011-10-17 HK HK11111075.2A patent/HK1156747A1/xx not_active IP Right Cessation
- 2011-10-17 HK HK11111073.4A patent/HK1156745A1/xx not_active IP Right Cessation
- 2011-12-22 US US13/335,598 patent/US8824559B2/en not_active Expired - Lifetime
- 2011-12-22 US US13/334,843 patent/US10154277B2/en active Active
- 2011-12-22 US US13/334,818 patent/US8654857B2/en not_active Expired - Lifetime
- 2011-12-22 US US13/335,726 patent/US8817883B2/en not_active Expired - Lifetime
- 2011-12-22 US US13/335,741 patent/US8831106B2/en not_active Expired - Lifetime
- 2011-12-22 US US13/334,716 patent/US8737483B2/en not_active Expired - Lifetime
- 2011-12-29 US US13/340,043 patent/US8737462B2/en not_active Expired - Lifetime
- 2011-12-29 US US13/339,899 patent/US8737468B2/en not_active Expired - Lifetime
- 2011-12-29 US US13/339,890 patent/US8737484B2/en not_active Expired - Lifetime
- 2011-12-29 US US13/339,864 patent/US8837597B2/en not_active Expired - Lifetime
- 2011-12-29 US US13/340,035 patent/US8743951B2/en not_active Expired - Lifetime
- 2011-12-29 US US13/339,927 patent/US8837580B2/en not_active Expired - Lifetime
-
2012
- 2012-01-06 HK HK12100148.7A patent/HK1159875A1/xx not_active IP Right Cessation
- 2012-02-16 JP JP2012031962A patent/JP5385414B2/ja not_active Expired - Lifetime
- 2012-10-18 HK HK12110325.1A patent/HK1169535A1/zh not_active IP Right Cessation
- 2012-10-18 HK HK12110327.9A patent/HK1169537A1/zh not_active IP Right Cessation
- 2012-10-18 HK HK12110326.0A patent/HK1169536A1/zh not_active IP Right Cessation
- 2012-10-19 HK HK12110421.4A patent/HK1169768A1/zh not_active IP Right Cessation
-
2013
- 2013-07-16 HK HK13108333.4A patent/HK1181225A1/zh not_active IP Right Cessation
-
2014
- 2014-08-18 US US14/462,396 patent/US9204161B2/en not_active Expired - Fee Related
-
2015
- 2015-10-30 US US14/929,145 patent/US9516337B2/en not_active Expired - Lifetime
-
2016
- 2016-08-22 NO NO20161327A patent/NO341570B1/no not_active IP Right Cessation
- 2016-11-01 US US15/340,976 patent/US9838707B2/en not_active Expired - Lifetime
-
2017
- 2017-04-03 NO NO20170550A patent/NO342829B1/no not_active IP Right Cessation
Also Published As
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 |