BRPI0302580B1 - Método de codificação de vetor de movimento, método de decodificação de vetor de movimento, aparelho de codificação de vetor de movimento, aparelho de decodificação de vetor de movimento - Google Patents
Método de codificação de vetor de movimento, método de decodificação de vetor de movimento, aparelho de codificação de vetor de movimento, aparelho de decodificação de vetor de movimento Download PDFInfo
- Publication number
- BRPI0302580B1 BRPI0302580B1 BRPI0302580-2A BRPI0302580A BRPI0302580B1 BR PI0302580 B1 BRPI0302580 B1 BR PI0302580B1 BR PI0302580 A BRPI0302580 A BR PI0302580A BR PI0302580 B1 BRPI0302580 B1 BR PI0302580B1
- Authority
- BR
- Brazil
- Prior art keywords
- motion vector
- block
- encoded
- neighboring block
- motion
- 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
- 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
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/02—Detecting, measuring or recording for evaluating the cardiovascular system, e.g. pulse, heart rate, blood pressure or blood flow
- A61B5/021—Measuring pressure in heart or blood vessels
- A61B5/022—Measuring pressure in heart or blood vessels by applying pressure to close blood vessels, e.g. against the skin; Ophthalmodynamometers
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/02—Detecting, measuring or recording for evaluating the cardiovascular system, e.g. pulse, heart rate, blood pressure or blood flow
- A61B5/026—Measuring blood flow
- A61B5/0261—Measuring blood flow using optical means, e.g. infrared light
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/72—Signal processing specially adapted for physiological signals or for diagnostic purposes
- A61B5/7203—Signal processing specially adapted for physiological signals or for diagnostic purposes for noise prevention, reduction or removal
- A61B5/7207—Signal processing specially adapted for physiological signals or for diagnostic purposes for noise prevention, reduction or removal of noise induced by motion artifacts
-
- 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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- 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/184—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 bits, e.g. of the compressed video 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using 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/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/513—Processing of motion vectors
-
- 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
- H04N19/517—Processing of motion vectors by encoding
-
- 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
- H04N19/521—Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting motion vectors
-
- 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/533—Motion estimation using multistep search, e.g. two-dimensional [2D]-log search or one-at-a-time search [OTS]
-
- 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/537—Motion estimation other than block-based
-
- 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/56—Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
-
- 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/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- 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/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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- 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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- 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/172—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 picture, frame or field
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Public Health (AREA)
- Physics & Mathematics (AREA)
- Physiology (AREA)
- Biophysics (AREA)
- Pathology (AREA)
- Biomedical Technology (AREA)
- Heart & Thoracic Surgery (AREA)
- Medical Informatics (AREA)
- Cardiology (AREA)
- Surgery (AREA)
- Animal Behavior & Ethology (AREA)
- General Health & Medical Sciences (AREA)
- Veterinary Medicine (AREA)
- Vascular Medicine (AREA)
- Psychiatry (AREA)
- Artificial Intelligence (AREA)
- Ophthalmology & Optometry (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Hematology (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Error Detection And Correction (AREA)
- Color Television Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Closed-Circuit Television Systems (AREA)
Abstract
"método de codificação de vetor de movimento e método de decodificação de vetor de movimento". a invenção refere-se a uma unidade de codificação de vetor de movimento (117), que realiza uma etapa de especificação de bloco periférico (s100) para especificar um bloco periférico em torno de um bloco a ser codificado, etapas de determinação (s1o2 e s104) para determinar se o bloco periférico é codificado com o uso de um vetor de movimento de outros blocos, etapas de predição (s106 e s108) para derivar valores de predição do vetor de movimento do bloco a ser codificado por meio do uso do vetor de movimento obtido do vetor de movimento do outro bloco como o vetor de movimento do bloco periférico e uma etapa de codificação (s110), para codificar o vetor de movimento do bloco a ser codificado usando o valor de predição.
Description
(54) Título: MÉTODO DE CODIFICAÇÃO DE VETOR DE MOVIMENTO, MÉTODO DE
DECODIFICAÇÃO DE VETOR DE MOVIMENTO, APARELHO DE CODIFICAÇÃO DE VETOR DE MOVIMENTO, APARELHO DE DECODIFICAÇÃO DE VETOR DE MOVIMENTO (51) Int.CI.: H04N 19/56; H04N 19/513 (52) CPC: H04N 19/56,H04N 19/513 (30) Prioridade Unionista: 09/01/2002 JP 001983/2002, 12/07/2002 JP 204714/2002, 28/11/2002 JP 346062/2002 (73) Titular(es): PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA (72) Inventor(es): SATOSHI KONDO; SHINYA KADONO; MAKOTO HAGAI; KIYOFUMI ABE
1/62
Relatório Descritivo da Patente de Invenção para MÉTODO DE CODIFICAÇÃO DE VETOR DE MOVIMENTO, MÉTODO DE DECODIFICAÇÃO DE VETOR DE MOVIMENTO, APARELHO DE CODIFICAÇÃO DE VETOR DE MOVIMENTO, APARELHO DE DECODIFICAÇÃO DE VETOR DE MOVIMENTO.
CAMPO DA TÉCNICA [001] A presente invenção refere-se a um método de codificação de vetor de movimento e a um método de decodificação de vetor de movimento utilizando codificação de predição interfigura.
TÉCNICA FUNDAMENTAL [002] Na era da multimídia que lida integralmente com informações de áudio, vídeo e outras, meios de informação existentes, isto é, jornais, revistas, televisões, rádios, telefones e outros meios através dos quais a informação é levada às pessoas, recentemente vieram a ser incluídos no escopo de multimídia. De modo geral, multimídia refere-se a algo que é representado pela associação não apenas de caracteres, mas também gráficos, vozes e, especialmente, figuras e similares juntos, mas de modo a incluir o meio de informação existente mencionado anteriormente no escopo de multimídia, aparece como um pré-requisito representar tais informações em forma digital.
[003] No entanto, quando se calcula a quantidade de informação contida em cada um dos meios de informações mencionados anteriormente como a quantidade de informação digital, embora a quantidade de informação por caractere seja 1 ~ 2 bytes, a quantidade de informação a ser requerida para voz é 64 Kbits ou mais por segundo (qualidade de telefone) e 100 Mbits ou mais por segundo, para figuras em movimento (qualidade de recepção de televisão atual) e não é realístico o meio de informação mencionado anteriormente lidar com tal enorme quantidade de informação, como é na forma digital. Por exemplo, embora vídeo-fones já estejam em uso real via Rede Digital de
Petição 870170091001, de 24/11/2017, pág. 5/76
2/62
Serviços Integrados (ISDN - Integrated Services Digital Network), que oferece uma velocidade de transmissão de 64 Kbps/s ~ 1,5 Mbps/s, não é prático transmitir tomadas de vídeo por câmeras de televisão diretamente através de ISDN.
[004] Contra tal inconveniente, técnicas de compressão de informações se tornaram necessárias e técnicas de compressão de figura em movimento concordantes com os padrões H.261 e H.263, padronizados internacionalmente pela ITU-T (International Telecommunication Union - Telecommunication Standardization Sector), são empregadas para vídeo-fones, por exemplo (veja, por exemplo, Information Technology - Coding of audio-visual objects - Part 2: video (ISO/IEC 14496-2), pp. 146-148, 1999.12.1). Além do mais, de acordo com técnicas de compressão de informações concordantes com o padrão MPEG-1, é possível armazenar informações de figura em um CD (disco compacto) de música comum junto com informações de som.
[005] No contexto, MPEG (Moving Picture Experts Group) é um padrão internacional sobre compressão de sinais de figura em movimento e MPEG-1 é um padrão para a compressão de informações de sinal de televisão em aproximadamente um décimo, tal que sinais de figura em movimento podem ser transmitidos a uma taxa de 1,5 Mbps. Além do mais, como a velocidade da transmissão dentro do escopo do padrão MPEG-1 é limitada primariamente a cerca de 1,5 Mbps, MPEG-2, que foi padronizado com a finalidade de satisfazer requisitos de qualidade de figura mais aperfeiçoados, permite a transmissão de dados de sinais de figura em movimento a uma taxa de 2 ~15 Mbps. Além do mais, MPEG-4, que atinge uma razão de compressão mais alta do que aquela de MPEG-1 e MPEG-2, permite a codificação, decodificação e operação em uma unidade de objeto e realiza uma nova função requerida pela era da multimídia, foi padronizada pelo grupo de trabalho (ISO/IEC JTC1/SC29/WG11), que foi engajado na padronizaPetição 870170091001, de 24/11/2017, pág. 6/76
3/62 ção de MPEG-1 e MPEG-2. Inicialmente, MPEG-4 visou a padronização de um método de codificação para uma taxa de bits baixa, mas agora ela se estendeu para a padronização de um método de codificação mais versátil para mover figuras que incluam, adicionalmente, imagens entrelaçadas e taxas de bits mais altas.
[006] Na codificação de figura em movimento mencionada acima, a quantidade de informação é comprimida explorando-se redundâncias nas direções espacial e temporal. Aqui, a codificação de predição interfigura é usada como um método de usar as redundâncias temporais. Na codificação de predição interfigura, uma figura é codificada usando uma figura temporariamente avançada ou retrocedida como uma figura de referência. O movimento (um vetor de movimento) da figura atual a ser codificado a partir da figura de referência, é estimado, e a diferença entre a figura obtida pela compensação do movimento e a figura atual é calculada. Então, as redundâncias espaciais são eliminadas desta diferença, de modo a comprimir a quantidade de informações da figura em movimento.
[007] Em um método de codificação de figura em movimento, de acordo com MPEG-1, MPEG-2, MPEG-4, H.263, H.26L ou similares, uma figura que não seja codificada por predição interfigura, a saber, que seja codificada intrafigura, é chamada uma I-figura. Aqui, uma figura significa uma unidade de codificação simples que inclui tanto um quadro quanto um campo. Além disso, uma figura que seja codificada por predição interfigura com referência a uma figura, é chamada uma P-figura e uma figura que seja codificada por predição interfigura com referência a duas figuras processadas anteriormente, é chamada uma B-figura.
[008] A Figura 1 é um diagrama que mostra uma relação preditiva entre figuras no método de codificação de figura em movimento mencionado acima.
Petição 870170091001, de 24/11/2017, pág. 7/76
4/62 [009] Na Figura 1, uma linha vertical indica uma figura, com um tipo de figura (I, P ou B) indicada em sua parte inferior direita. Além disso, a Figura 1 indica que uma figura apontada por uma seta é codificada por predição interfigura usando uma figura localizada na outra extremidade da ponta da seta, como uma figura de referência. Por exemplo, uma B-figura que é a segunda a partir da esquerda, é codificada usando a primeira I-figura e a quarta P-figura, como figuras de referência.
[0010] No método de codificação de figura em movimento, de acordo com MPEG-4, H-26L ou similares, um modo de codificação chamado modo direto pode ser selecionado para a codificação de uma B-figura.
[0011] Um método de codificação de predição interfigura no modo direto será explicado com referência à Figura 2.
[0012] A Figura 2 é uma ilustração para explicar o método de codificação de predição interfigura no modo direto.
[0013] Assume-se agora que um bloco C em uma figura B3 é codificado no modo direto. Neste caso, um vetor de movimento MVp de um bloco X em uma figura de referência (uma figura P4 que seja uma figura de referência retrocedida, neste caso) que tenha sido codificado imediatamente antes da figura B3 ser explorada, onde o bloco X é colocalizado com o bloco C. O vetor de movimento MVp é um vetor de movimento que foi usado quando o bloco X foi codificado e refere-se à Figura P1. O bloco C é bidirecionalmente predito a partir das figuras de referência, a saber, a figura P1 e a figura P4, usando vetores de movimento paralelos ao vetor de movimento MVp. Os vetores de movimento usados para a codificação do bloco C são, neste caso, um vetor de movimento MVFc para a figura P1 e um vetor de movimento MVBc, para a figura P4.
[0014] No método de codificação de figura em movimento, de
Petição 870170091001, de 24/11/2017, pág. 8/76
5/62 acordo com MPEG-4, H.26L ou similares, uma diferença entre um valor predito obtido de vetores de movimento de blocos vizinhos e um vetor de movimento de um bloco atual a ser codificado, é codificado para a codificação do vetor de movimento. Na descrição a seguir, um valor predito indica um valor predito de um vetor de movimento. Como os vetores de movimento de blocos vizinhos têm direção e movimento similares em muitos casos, a quantidade de codificação do vetor de movimento pode ser reduzida por meio da codificação da diferença a partir do valor predito obtido dos vetores de movimento dos blocos vizinhos.
[0015] Aqui, um método de codificação de vetor de movimento em MPEG-4 será explicado com referência à Figura 3.
[0016] A Figura 3 é uma ilustração para explicar um método para codificar um vetor de movimento MV de um bloco atual A a ser codificado em MPEG-4.
[0017] Nas Figuras 3A a 3D, blocos indicados por uma linha grossa são macroblocos de 16 x 16 pixels e existem 4 blocos de 8 x 8 pixels em cada macrobloco. Aqui, assume-se que um vetor de movimento é obtido em um nível de bloco de 8 x 8 pixels.
[0018] Conforme mostrado na Figura 3A, quanto a um bloco atual A localizado na parte superior esquerda em um macrobloco, uma diferença entre um valor predito e um vetor de movimento MV do bloco atual A é codificado, onde o valor predito é calculado a partir de um vetor de movimento MVb de um bloco vizinho B à esquerda do bloco atual A, um vetor de movimento MVc de um bloco vizinho C logo acima do bloco atual A e um vetor de movimento MVd, de um bloco vizinho D acima e à direita do bloco atual A.
[0019] De maneira similares, conforme mostrado na Figura 3B, quanto ao bloco atual A, localizado na parte superior direita em um macrobloco, uma diferença entre um valor predito e um vetor de moPetição 870170091001, de 24/11/2017, pág. 9/76
6/62 vimento MV do bloco atual A é codificado, onde o valor predito é calculado a partir de um vetor de movimento MVb de um bloco vizinho B à esquerda do bloco atual A, um vetor de movimento MVc de um bloco vizinho C logo acima do bloco atual A e um vetor de movimento MVd de um bloco vizinho D, acima e à direita do bloco atual A.
[0020] Conforme mostrado na Figura 3C, quanto ao bloco atual A localizado na parte esquerda inferior em um macrobloco, uma diferença entre um valor predito e um vetor de movimento MV do bloco atual A é codificado, onde o valor predito é calculado a partir de um vetor de movimento MVb de um bloco vizinho B à esquerda do bloco atual A, um vetor de movimento MVc de um bloco vizinho C logo acima do bloco atual A e um vetor de movimento MVd de um bloco vizinho D acima e à direita do bloco atual A.
[0021] Conforme mostrado na Figura 3D, quanto ao bloco atual A localizado na parte inferior direita em um macrobloco, uma diferença entre um valor predito e um vetor de movimento MV do bloco atual A é codificado, onde o valor predito é calculado a partir de um vetor de movimento MVb de um bloco vizinho B à esquerda do bloco atual A, um vetor de movimento MVc de um bloco vizinho C acima e à esquerda do bloco atual A e um vetor de movimento MVd de um bloco vizinho D logo acima do bloco atual A. Aqui, o valor predito é calculado usando as medianas obtidas das componentes horizontal e vertical destes vetores de movimento MVb, MVc e MVd, respectivamente.
[0022] A seguir, um método de codificação de vetor de movimento em H.26L, que foi desenvolvido para padronização, será explicado com referência à Figura 4.
[0023] A Figura 4 é uma ilustração para explicar um método para a codificação de um vetor de movimento MV de um bloco atual A em H26L.
[0024] Um bloco atual A é um bloco de 4 x 4 pixels, 8 x 8 pixels ou
Petição 870170091001, de 24/11/2017, pág. 10/76
7/62 x 16 pixels e um vetor de movimento deste bloco atual A é codificado usando um vetor de movimento de um bloco vizinho B, incluindo um pixel b localizado à esquerda do bloco atual A, um vetor de movimento de um bloco vizinho C, incluindo um pixel c localizado logo acima do bloco atual A e um vetor de movimento de um bloco vizinho D, incluindo um pixel d localizado acima à direita do bloco atual A. Note que os tamanhos dos blocos vizinhos B, C e D não são limitados àqueles mostrados na Figura 4 por linhas pontilhadas.
[0025] A Figura 5 é um fluxograma que mostra o procedimento de codificação do vetor de movimento MV do bloco atual A usando os vetores de movimento de blocos vizinhos, conforme mencionado acima. [0026] Primeiro, o bloco vizinho que refere-se à figura a qual o bloco atual A refere-se, é especificado fora dos blocos vizinhos B, C e D (etapa S502) e o número de blocos vizinhos especificados é determinado (etapa S504).
[0027] Quando o número dos blocos vizinhos determinados na etapa S504 for 1, o vetor de movimento daquele bloco vizinho que refere-se a mesma figura, é considerado um valor predito do vetor de movimento MV do bloco atual A (etapa S506).
[0028] Quando o número dos blocos vizinhos determinados na etapa S505 é um outro valor que não 1, o vetor de movimento do bloco vizinho, que refere-se a uma outra figura que não a figura a que o bloco atual A refere-se, fora dos blocos vizinhos B, C e D, é considerado como sendo 0 (etapa S507). E a mediana dos vetores de movimento dos blocos vizinhos B, C e D é considerada como sendo um valor predito do vetor de movimento do bloco atual A (etapa S508).
[0029] Usando o valor predito derivado na etapa S506 ou etapa S508, desta maneira, a diferença entre o valor predito e o vetor de movimento MV do bloco atual A, é calculada e a diferença é calculada (etapa S510).
Petição 870170091001, de 24/11/2017, pág. 11/76
8/62 [0030] Conforme descrito acima, nos métodos de codificação de vetor de movimento de acordo com MPEG-4 e H.26L, os vetores de movimento de blocos vizinhos são explorados quando da codificação de um vetor de movimento de um bloco atual a ser codificado.
[0031] No entanto, existem casos onde vetores de movimento de blocos vizinhos não são codificados. Por exemplo, são casos onde um bloco vizinho é codificado intrafigura, uma B-figura é codificada em modo direto e uma P-figura é codificada em modo de salto. Nestes casos, os blocos vizinhos são codificados usando os vetores de movimento de outros blocos, exceto quando eles são codificados intrafigura, a saber, os blocos vizinhos são codificados usando seus próprios vetores de movimento com base no resultado de estimativa de movimento.
[0032] Assim, de acordo com o método de codificação de vetor de movimento tradicional mencionado acima, um vetor de movimento de um bloco atual é codificado como segue: quando existe um bloco vizinho, entre três blocos vizinhos, que não tenha vetor de movimento baseado no resultado acima de estimativa de movimento e foi codificado usando vetores de movimento de outros blocos, o vetor de movimento daquele bloco vizinho é considerado como sendo 0. Quando existem dois tais blocos vizinhos, o vetor de movimento do bloco vizinho remanescente é usado como um valor predito. E quando existem três blocos vizinhos, o vetor de movimento é codificado considerando-se um valor predito como sendo 0.
[0033] No entanto, no modo direto ou modo salto, a compensação do movimento é realizada, na realidade, como é o caso onde um vetor de movimento de um bloco vizinho é usado com base no resultado da estimativa, embora a informação do vetor de movimento não seja codificada. Como resultado, no método tradicional acima, se um bloco vizinho for codificado em modo direto ou modo salto, o vetor de movimenPetição 870170091001, de 24/11/2017, pág. 12/76
9/62 to do bloco vizinho não é usado como um candidato par um valor predito. Então, existe um problema de causar um valor predito impreciso de um vetor de movimento quando da codificação do vetor de movimento e assim, causar menor eficiência de codificação.
[0034] A presente invenção é concebida para solucionar este problema e o seu objetivo é proporcionar um método de codificação de vetor de movimento e um método de decodificação de vetor de movimento para a obtenção de um valor predito mais preciso para eficiência de codificação mais alta.
DESCRIÇÃO DA INVENÇÃO [0035] De modo a atingir o objetivo acima, o método de codificação do vetor de movimento, de acordo com a presente invenção, é um método de codificação de vetor de movimento para codificar um vetor de movimento de um bloco atual em uma figura em movimento, compreendendo: uma etapa de especificação de bloco vizinho de especificar um bloco vizinho que esteja localizado na vizinhança do bloco atual e que já tenha sido codificado; uma etapa de julgamento para julgar se o bloco vizinho foi codificado ou não usando um vetor de movimento de um outro bloco; uma etapa de predição para derivar um vetor de movimento preditivo do bloco atual usando um vetor de movimento calculado a partir do vetor de movimento do dito um outro bloco como um vetor de movimento do bloco vizinho, quando se julga, na etapa de julgamento, se o bloco vizinho foi codificado usando o vetor de movimento do dito um outro bloco; e uma etapa de codificação para codificar o vetor de movimento do bloco atual usando o vetor de movimento preditivo.
[0036] Como resultado, quando um vetor de movimento de um bloco atual é codificado usando um vetor de movimento preditivo derivado de vetores de movimento de blocos vizinhos, se qualquer um dos blocos vizinhos tiver sido codificado com o uso de vetores de moviPetição 870170091001, de 24/11/2017, pág. 13/76
10/62 mento de outros blocos, o vetor de movimento do bloco vizinho não é considerado como sendo 0, mas como sendo o vetor de movimento calculado a partir dos vetores de movimento dos outros blocos. Logo, um vetor de movimento preditivo mais preciso pode ser obtido e, assim, a eficiência de codificação do vetor de movimento pode ser melhorada.
[0037] Além disso, o método de decodificação de vetor de movimento, de acordo com a presente invenção, é um método de decodificação de vetor de movimento para decodificar um vetor de movimento codificado de um bloco atual em uma figura em movimento, compreendendo: uma etapa de especificação de bloco vizinho para especificar um bloco vizinho que esteja localizado na vizinhança do bloco atual e já tenha sido codificado, uma etapa de julgamento para julgar se o bloco vizinho foi ou não codificado usando um vetor de movimento de um outro bloco; uma etapa de predição para derivar um vetor de movimento preditivo do bloco atual usando um vetor de movimento calculado a partir do vetor de movimento do dito um outro bloco como um vetor de movimento do bloco vizinho, quando se julga, na etapa de julgamento, que o bloco vizinho foi codificado usando o vetor de movimento do dito um outro bloco; e uma etapa de decodificação para decodificar o vetor de movimento codificado do bloco atual usando o vetor de movimento preditivo.
[0038] Como resultado, o vetor de movimento que foi codificado de acordo com o método de codificação de vetor de movimento da presente invenção, pode ser decodificado de maneira apropriada e, deste modo, seu valor prático é alto.
[0039] Note que a presente invenção também pode ser realizada como um aparelho e programa de codificação de figura em movimento usando o método de codificação de vetor de movimento mencionado acima e um meio de armazenamento que armazena o programa e um
Petição 870170091001, de 24/11/2017, pág. 14/76
11/62 aparelho e um programa de decodificação de figura de movimento usando o método de decodificação de vetor de movimento mencionado acima e um meio de armazenamento que armazena o programa.
BREVE DESCRIÇÃO DOS DESENHOS [0040] A Figura 1 é um diagrama que mostra uma relação de predição entre figuras em um método de codificação de figura em movimento.
[0041] A Figura 2 é uma ilustração para explicar o método de predição interfigura em modo direto.
[0042] A Figura 3 é uma ilustração para explicar um método para a codificação de um vetor de movimento de um bloco atual em MPEG-4. [0043] A Figura 4 é uma ilustração para explicar um método para a codificação de um vetor de movimento de um bloco atual em H.26L. [0044] A Figura 5 é um fluxograma que mostra o procedimento de codificação em H26L.
[0045] A Figura 6 é um diagrama de bloco que mostra uma estrutura de um aparelho de codificação de figura em movimento em uma primeira modalidade da presente invenção.
[0046] A Figura 7 é um diagrama que mostra como as figuras em uma memória de quadro são inseridas e produzidas na primeira modalidade.
[0047] A Figura 8 é um fluxograma que mostra uma operação de uma unidade de codificação de vetor de movimento na primeira modalidade.
[0048] A Figura 9 é uma ilustração para explicar como codificar um bloco vizinho em modo de salto na primeira modalidade.
[0049] A Figura 10 é uma ilustração para explicar codificação de predição interfigura usando vetores de movimento bidirecionais na primeira modalidade.
[0050] A Figura 11 é uma ilustração para explicar como codificar
Petição 870170091001, de 24/11/2017, pág. 15/76
12/62 um bloco vizinho em modo direto temporal na primeira modalidade. [0051] A Figura 12 é uma ilustração para explicar como codificar um bloco vizinho em um modo direto espacial na primeira modalidade. [0052] A Figura 13 é um fluxograma que mostra uma outra operação da unidade de codificação de vetor de movimento na primeira modalidade.
[0053] A Figura 14 é um diagrama de bloco que mostra uma estrutura de um aparelho de decodificação de figura em movimento em uma segunda modalidade da presente invenção.
[0054] A Figura 15 é um fluxograma que mostra uma operação de uma unidade de decodificação de vetor de movimento na segunda modalidade.
[0055] A Figura 16 é uma ilustração para explicar como as figuras são inseridas e como elas saem do aparelho de decodificação de figura em movimento na segunda modalidade.
[0056] A Figura 17 é um fluxograma que mostra uma outra operação da unidade de decodificação de vetor de movimento na segunda modalidade.
[0057] A Figura 18 é uma ilustração de um meio de gravação em uma terceira modalidade da presente invenção.
[0058] A Figura 19 é um diagrama de bloco que mostra uma configuração geral de um sistema de provisão de conteúdo em uma quarta modalidade da presente invenção.
[0059] A Figura 20 é uma vista frontal de um telefone móvel na quarta modalidade.
[0060] A Figura 21 é um diagrama de bloco do telefone móvel na quarta modalidade.
[0061] A Figura 22 é um diagrama de bloco que mostra uma configuração geral de um sistema de transmissão digital na quarta modalidade.
Petição 870170091001, de 24/11/2017, pág. 16/76
13/62
MELHOR MODO PARA REALIZAR A INVENÇÃO (PRIMEIRA MODALIDADE) [0062] Um aparelho de codificação de figura em movimento em uma primeira modalidade da presente invenção será explicado com referência às figuras.
[0063] A Figura 6 é um diagrama de bloco do aparelho de codificação de figura em movimento na primeira modalidade da presente invenção.
[0064] Este aparelho de codificação de figura em movimento 100 visa melhorar a eficiência de codificação ao melhorar a precisão de um valor de predição de um vetor de movimento e inclui uma memória de quadro 101, uma unidade de cálculo de diferença 102, uma unidade de codificação de erro de predição 103, uma unidade de geração de fluxo de bits 104, uma unidade de decodificação de erro de predição 105, uma unidade de adição 106, uma memória de quadro 107, uma unidade de estimativa de vetor de movimento 108, uma unidade de seleção de modo 109, uma unidade de controle de codificação 110, comutadores 111 a 115, uma unidade de armazenamento de vetor de movimento 116 e uma unidade de codificação de vetor de movimento 117.
[0065] A memória de quadro 101 é uma memória de figura que detém figuras inseridas em uma base figura a figura e reordena as figuras inseridas e obtidas em ordem de tempo em ordem de codificação para saída. As figuras são reordenadas sob o controle da unidade de controle de codificação 110.
[0066] A Figura 7A mostra como as figuras são inseridas na memória de quadro 101.
[0067] Na Figura 7A, linhas verticais mostram figuras e uma letra e um número na parte inferior direita de cada figura, indica um tipo de figura (I, P ou B) e um número de figura em ordem de tempo. As figuPetição 870170091001, de 24/11/2017, pág. 17/76
14/62 ras inseridas na memória de quadro 101 são reordenadas em ordem de codificação. As figuras são reordenadas em ordem de codificação com base nas relações de referência em codificação de predição interfigura, ou seja, as figuras são reordenadas de tal modo que as figuras usadas como figuras de referência são codificadas antes das figuras que referem-se àquelas figuras de referência. Por exemplo, as relações de referência das figuras P7 a P13 são mostradas por setas na Figura 7A. Na Figura 7A, as pontas das sentas indicam as figuras que referem-se às figuras de referência e as outras extremidades das setas indicam as figuras de referência. Neste caso, as figuras mostradas na Figura 7A são reordenadas naquelas conforme mostradas na Figura 7B.
[0068] A Figura 7B mostra as figuras inseridas conforme mostrado na Figura 7A, e são reordenadas. As figuras reordenadas na memória de quadro 101 são lidas em uma base de macrobloco. Neste caso, um macrobloco tem horizontal 16 x vertical 16 pixels de tamanho.
[0069] A unidade de cálculo de diferença 102 obtém dados de imagem de cada macrobloco a partir da memória de quadro 101 via comutador 111 e também obtém uma imagem de compensação de movimento a partir da unidade de seleção de modo 109. Então, a unidade de cálculo de diferença 102 calcula a diferença entre os dados de imagem e a imagem de compensação de movimento em uma base de macrobloco para gerar uma imagem de erro de predição para saída.
[0070] A unidade de codificação de erro de predição 103 realiza processamento de codificação incluindo transformação de freqüência, como uma transformada de coseno discreta e quantificação dos dados de imagem obtidos a partir da memória de quadro 101 via comutador 112 e a imagem de erro de predição obtida pela unidade de cálculo de diferença 102, de modo a criar dados codificados. Por exemplo, a
Petição 870170091001, de 24/11/2017, pág. 18/76
15/62 transformação de freqüência e a quantificação são realizadas em uma unidade de horizontal 8 x vertical 8 pixels. Então, a unidade de codificação de erro de predição 103 dá saída aos dados codificados para a unidade de geração de fluxo de bits 104 e a unidade de decodificação de erro de predição 105.
[0071] A unidade de geração de fluxo de bits 104 realiza codificação com comprimento variável sobre os dados codificados produzidos pela unidade de codificação de erro de predição 103, converte os dados em um formato de fluxo de bits para saída e ainda adiciona informações sobre vetores de movimento inseridos a partir da unidade de codificação de vetor de movimento 117, informações sobre um modo de codificação inserido a partir da unidade de seleção de modo 109, informações de cabeçalho e outros, de modo a gerar um fluxo de bits. [0072] A unidade de decodificação de erro de predição 105 quantifica inversamente os dados codificados produzidos a partir da unidade de codificação de erro de predição 103 e então realiza transformação de freqüência inversa, tal como uma transformada de coseno discreta inversa, de modo a decodificá-los em uma imagem de erro de predição.
[0073] A unidade de adição 106 adiciona a imagem de compensação de movimento à imagem de erro de predição obtida como resultado de decodificação e dá saída a uma figura decodificada, que é dado de imagem indicando uma imagem de uma figura que foi codificada e decodificada.
[0074] A memória de quadro 107 e uma memória de figura que detém, em uma base de figura a figura, figuras usadas como figuras de referência quando da codificação de outras figuras, entre as figuras decodificadas produzidas pela unidade de adição 106.
[0075] A unidade de estimativa de vetor de movimento 108 estima vetores de movimento de cada bloco em um macrobloco atual a ser
Petição 870170091001, de 24/11/2017, pág. 19/76
16/62 codificado, usando as figuras decodificadas acumuladas na memória de quadro 107 como figuras de referência. Os vetores de movimento estimados têm saída para a unidade de seleção de modo 109.
[0076] A unidade de seleção de modo 109 determina um modo de codificação do macrobloco usando os vetores de movimento estimados pela unidade de estimativa de vetor de movimento 108. Aqui, o modo de codificação significa um método para codificar um macrobloco. Por exemplo, quando uma figura atual é uma P-figura, a unidade de seleção de modo 109 determina um modo de codificação entre os seguintes: codificação intrafiguras, codificação de predição interfigura usando vetores de movimento, e modo salto (codificação de predição interfigura em que nenhum vetor de movimento de um bloco atual é codificado porque a codificação de predição é realizada usando um vetor de movimento obtido a partir de vetores de movimento de outros blocos e nenhum valor de coeficiente é codificado porque todos os valores de coeficientes são 0, como resultado da codificação de erro de predição). De maneira geral, um modo de codificação é determinado de modo a minimizar um erro de codificação usando uma quantidade de bits predeterminada.
[0077] A unidade de seleção de modo 109 dá saída ao modo de codificação determinado para a unidade de geração de fluxo de bits 104 e dá saída aos vetores de movimento usados para aquele modo de codificação para a unidade de codificação de vetor de movimento 117, respectivamente. Quando o modo de codificação determinado é codificação de predição interfigura utilizando vetores de movimento, a unidade de seleção de modo 109 armazena ainda os vetores de movimento e o modo de codificação usado para aquela codificação de predição interfigura na unidade de armazenamento de vetor de movimento 116.
[0078] Além disso, a unidade de seleção de modo 109 realiza
Petição 870170091001, de 24/11/2017, pág. 20/76
17/62 compensação de movimento com base no modo de codificação determinado e os vetores de movimento estimados pela unidade de estimativa de vetor de movimento 108, de modo a criar uma imagem de compensação de movimento e dá saída à imagem de compensação de movimento para a unidade de cálculo de diferença 102 e unidade de adição 106. No entanto, se for selecionada codificação intrafigura, nenhuma imagem de compensação de movimento é produzida. Quando da seleção da codificação intrafigura, a unidade de seleção de modo 109 controla adicionalmente o comutador 111 e o comutador 112 para conectar a um terminal a e um terminal c respectivamente, e quando da seleção de codificação de predição interfigura, ela controla o comutador 111 e o comutador 112 para conectar a um terminal b e um terminal d, respectivamente. A compensação de movimento mencionada acima é realizada em uma base bloco a bloco (8 x 8 pixels, neste caso).
[0079] A unidade de controle de codificação 110 determina um tipo de figura (I, P ou B) usado para a codificação de uma imagem inserida e controla os comutadores 113, 114 e 115, dependendo do tipo de figura. Aqui, um tipo de figura é geralmente determinado usando um método para alocar um tipo de figura periodicamente, por exemplo. [0080] A unidade de armazenamento de vetor de movimento 116 obtém os vetores de movimento usados para codificação de predição interfigura e o modo de codificação a partir da unidade de seleção de modo 109 e os armazena.
[0081] Quando a unidade de seleção de modo 109 seleciona a codificação de predição interfigura usando vetores de movimento, a unidade de codificação de vetor de movimento 117 codifica um vetor de movimento de um bloco atual pelos métodos conforme descritos na Figura 3 e na Figura 4. Conforme descrito acima, a unidade de codificação de vetor de movimento 117 especifica três blocos vizinhos do
Petição 870170091001, de 24/11/2017, pág. 21/76
18/62 bloco atual, determina um valor de predição com base nos vetores de movimento dos blocos vizinhos e codifica uma diferença entre o valor de predição e o vetor de movimento do bloco atual a ser codificado. [0082] Quando da codificação de um vetor de movimento de um bloco atual, se um bloco vizinho é codificado usando vetores de movimento de outros blocos, tal como modo de salto e modo direto, a unidade de codificação de vetor de movimento 117, na presente modalidade, não considera o vetor de movimento do bloco vizinho como sendo 0, como a técnica convencional faz, porém trata o vetor de movimento obtido a partir dos vetores de movimento dos outros blocos como o vetor de movimento do bloco vizinho, quando o codifica.
[0083] A Figura 8 é um fluxograma que mostra a operação geral da unidade de codificação de vetor de movimento 117 na presente modalidade.
[0084] Primeiro, a unidade de codificação de vetor de movimento 117 especifica três blocos vizinhos codificados anteriormente de um bloco atual (etapa S100).
[0085] A unidade de codificação de vetor de movimento 117 julga se cada um dos blocos vizinhos especificados é ou não um bloco vizinho Ba que foi codificado usando vetores de movimento de outros blocos ou um bloco vizinho Bb, que foi codificado sem usar vetores de movimento de outros blocos (etapa S102).
[0086] Como resultado, a unidade de codificação de vetor de movimento 117 determina se os três blocos vizinhos especificados incluem ou não um bloco vizinho Ba (etapa S104).
[0087] Quando se julga, na etapa S104, que o bloco vizinho Ba é incluído (Y na etapa S104), a unidade de codificação de vetor de movimento 117 deriva um valor de predição a partir dos vetores de movimento dos três blocos vizinhos ao tratar o vetor de movimento obtido dos vetores de movimento dos outros blocos como um vetor de moviPetição 870170091001, de 24/11/2017, pág. 22/76
19/62 mento do bloco vizinho Ba para codificá-lo, conforme mencionado acima (etapa S106).
[0088] Por outro lado, quando se julga, na etapa S104, que o bloco vizinho Ba não está incluído (N na etapa S104), a unidade de codificação de vetor de movimento 117 deriva um valor de predição dos vetores de movimento obtidos com base na estimativa de movimento dos três blocos vizinhos respectivos Bb e a seleção de modo (etapa S108). [0089] Então, a unidade de codificação de vetor de movimento 117 codifica uma diferença entre o vetor de movimento do bloco atual e o valor de predição derivado nas etapas S106 ou s108 (etapa s110). A unidade de codificação de vetor de movimento 117 também dá saída ao vetor de movimento codificado conforme acima, para a unidade de geração de fluxo de bits 104.
[0090] Aqui, o processamento de codificação mencionado acima pelo aparelho de codificação de figura em movimento 100, será explicado especificamente ao se pegar a codificação de uma figura P13 e uma figura B11, conforme mostrado na Figura 7, como um exemplo. (CODIFICAÇÃO DA FIGURA P13) [0091] Como a figura P13 é uma P-figura, o aparelho de codificação de figura em movimento 100 codifica a figura 13 pela codificação de predição interfigura usando uma outra figura como uma figura de referência. Neste caso, a figura de referência é uma figura P10. Esta figura P10 já foi codificada e sua figura decodificada é armazenada na memória de quadro 107.
[0092] Quando da codificação de uma P-figura, a unidade de controle de codificação 110 controla os comutadores 113, 114 e 115 para estarem ligados (ON). Logo, macroblocos na figura P13, que são lidos da memória de quadro 101, são obtidos pela unidade de estimativa de vetor de movimento 108, unidade de seleção de modo 109 e unidade de cálculo de diferença 102.
Petição 870170091001, de 24/11/2017, pág. 23/76
20/62 [0093] A unidade de estimativa de vetor de movimento 108 estima o vetor de movimento de cada bloco no macrobloco usando a figura decodificada da figura P10 armazenada na memória de quadro 107 como uma figura de referência e dá saída ao vetor de movimento estimado para a unidade de seleção de modo 109.
[0094] A unidade de seleção de modo 109 determina um modo de codificação do macrobloco na figura P13 usando o vetor de movimento estimado pela unidade de estimativa de vetor de movimento 108. Como a figura P13 é uma P-figura, a unidade de seleção de modo 109 determina, conforme mencionado acima, um modo de codificação dentre os seguintes: codificação intrafigura, codificação de predição interfigura usando vetores de movimento, e modo salto (uma codificação de predição interfigura em que nenhum vetor de movimento de um bloco atual é codificado porque a codificação de predição é realizada usando um vetor de movimento obtido de vetores de movimento de outros blocos, e nenhum valor de coeficiente é codificado porque todos os valores de coeficientes são 0, como resultado da codificação de erro de predição).
[0095] Quando a unidade de seleção de modo 109 seleciona codificação de predição interfigura usando vetores de movimento, a unidade de codificação de vetor de movimento 117, na presente modalidade, codifica o vetor de movimento do bloco atual na figura P13 pelo método, conforme explicado na Figura 3. Quando um bloco vizinho do bloco atual é codificado no modo salto, a unidade de codificação de vetor de movimento 117 não considera o vetor de movimento do bloco vizinho como sendo 0, mas ao invés disso, trata um vetor de movimento obtido a partir de outros blocos para a codificação do bloco vizinho como um vetor de movimento daquele bloco.
[0096] Um método de codificação de um vetor de movimento de um bloco atual usado quando um bloco vizinho é codificado em modo
Petição 870170091001, de 24/11/2017, pág. 24/76
21/62 salto será explicado.
[0097] A Figura 9 é uma ilustração para explicar como codificar um bloco vizinho C no modo salto.
[0098] Conforme mostrado na Figura 9, quando um bloco vizinho C na figura P13 é codificado no modo salto, uma mediana de um vetor de movimento MVe de um bloco E, um vetor de movimento MVf de um bloco F e um vetor de movimento MVg de um bloco G, que estão localizados na vizinhança do bloco vizinho C, é calculada e o bloco vizinho C é codificado usando um vetor de movimento MVcm, indicando a mediana. Aqui, uma mediana de vetores de movimento é obtida por meio do cálculo de medianas de componentes horizontal e vertical dos vetores de movimento, respectivamente, por exemplo.
[0099] Quando da codificação do vetor de movimento do bloco atual A, conforme mostrado na Figura 9, a unidade de codificação de vetor de movimento 117 especifica três blocos vizinhos B, C e D do bloco atual A (quanto aos locais dos blocos B, C e D, veja a Figura 3 e a Figura 4) e julga se cada um dos blocos vizinhos B, C e D é ou não um bloco que foi codificado usando vetores de movimento de outros blocos. Como resultado, quando se julga que apenas o bloco vizinho C é codificado no modo salto, ou seja, codificado usando outros blocos, a unidade de codificação de vetor de movimento 117 trata a mediana (um vetor de movimento MVcm) calculada a partir dos vetores de movimento dos outros blocos E, F e G, para codificar o bloco vizinho C como um vetor de movimento do bloco vizinho c, conforme mencionado acima e calcula a mediana do vetor de movimento MVcm e os vetores de movimento dos blocos vizinhos B e D, de modo a considerá-la como um valor de predição do vetor de movimento do bloco atual A. Então, a unidade de codificação do vetor de movimento 117 codifica uma diferença entre o valor de predição e o vetor de movimento do bloco atual A.
Petição 870170091001, de 24/11/2017, pág. 25/76
22/62 [00100] A unidade de armazenamento de vetor de movimento 116 armazena os modos de codificação de blocos codificados. A unidade de codificação de vetor de movimento 117 julga se cada um dos blocos vizinhos B, C e D é um bloco codificado usando vetores de movimento de outros blocos ou não, com base nos modos de codificação armazenados na unidade de armazenamento de vetor de movimento 116. A unidade de armazenamento de vetor de movimento 116 armazena ainda vetores de movimento de blocos que tenham sido codificados sem usar vetores de movimento de outros blocos, mas usando seus próprios vetores de movimento estimados a partir de figuras de referência. Para ser mais específico, a unidade de armazenamento de vetor de movimento 116 armazena os vetores de movimento MVe, MVf e MVg dos blocos E, F e G e a unidade de codificação do vetor de movimento 117 calcula o vetor de movimento MVcm mencionado acima do bloco vizinho C usando estes vetores de movimento armazenados na unidade de armazenamento de vetor de movimento 116, quando da codificação do vetor de movimento do bloco atual A. Note que, quanto a uma figura que tenha sido codificada usando vetores de movimento de outros blocos, um vetor de movimento seu que é obtido por meio do cálculo de uma mediana dos vetores de movimento dos outros blocos, pode ser armazenado na unidade de armazenamento de vetor de movimento 116 antecipadamente. Neste caso, como a unidade de armazenamento de vetor de movimento 116 armazena o vetor de movimento MVcm antecipadamente, a unidade de codificação do vetor de movimento 117 não precisa calcular o vetor de movimento MVcm do bloco vizinho C, mas pode usar o vetor de movimento MVcm armazenado na unidade de armazenamento de vetor de movimento 116 diretamente como um vetor de movimento do bloco vizinho C, quando da codificação do vetor de movimento do bloco atual A.
[00101] Por outro lado, uma imagem de erro de predição indicando
Petição 870170091001, de 24/11/2017, pág. 26/76
23/62 uma diferença entre um macrobloco atual na figura P13 e uma imagem de compensação de movimento, é codificada pela unidade de codificação de erro de predição 103 é gerada como dado codificado, e informações sobre o vetor de movimento codificado, conforme mencionado acima, são acrescentadas aos dados codificados pela unidade de geração de fluxo de bits 104. No entanto, uma diferença entre um macrobloco que tenha sido codificado em modo salto e uma imagem de compensação de movimento é 0 e informações sobre o vetor de movimento não são acrescentadas aos dados codificados.
[00102] Os macroblocos remanescentes na figura P13 são codificados da mesma maneira. Depois de completar a codificação de todos os macroblocos na Figura P13, segue a codificação da figura B11. (CODIFICAÇÃO DA FIGURA B11) [00103] Como a figura B11 é uma B-figura, o aparelho de codificação da figura em movimento 100 codifica a figura B11 por meio da codificação de predição interfigura usando duas outras figuras como figuras de referência. Neste caso, as figuras de referência são a figura P10, localizada à frente da figura B11 e a figura P13, localizada atrás da figura B11. Estas figuras P10 e P13 já foram codificadas e as suas figuras decodificadas são armazenadas na memória de quadro 107. [00104] Quando da codificação de uma B-figura, a unidade de controle de codificação 110 controla o comutador 113 para estar ligado (ON) e os comutadores 114 e 115 para estarem desligados (OFF). Logo, macroblocos na Figura B11, que são lidos da memória de quadro 101, são obtidos pela unidade de estimativa de vetor de movimento 108, unidade de seleção de modo 109 e unidade de cálculo de diferença 102.
[00105] A unidade de estimativa de vetor de movimento 108 estima o vetor de movimento anterior e o vetor de movimento posterior de cada bloco em um macrobloco, usando uma figura decodificada da figura
Petição 870170091001, de 24/11/2017, pág. 27/76
24/62
P10 armazenada na memória de quadro 107 como uma figura de referência anterior e uma figura decodificada da figura P13, como uma figura de referência posterior, e dá saída aos vetores de movimento estimados anterior e posterior, para a unidade de seleção de modo 109. [00106] A unidade de seleção de modo 109 determina um modo de codificação do macrobloco na figura B11 usando os vetores de movimento anterior e posterior estimados pela unidade de estimativa de vetor de movimento 108. Como a figura B11 é uma B-figura, a unidade de seleção de modo 109 determina um modo de codificação dentre os seguintes: codificação intrafigura, codificação de predição interfigura usando vetores de movimento anteriores, codificação de predição interfigura usando vetores de movimento posteriores, codificação de predição interfigura usando vetores de movimento bidirecionais e modo direto (codificação de predição interfigura em que a compensação de movimento é realizada usando um vetor de movimento obtido de vetores de movimento de outros blocos e nenhum vetor de movimento é codificado), por exemplo.
[00107] Quando a unidade de seleção de modo 109 seleciona codificação de predição interfigura usando vetores de movimento, a unidade de codificação de vetor de movimento 117, na presente modalidade, codifica os vetores de movimento do bloco atual na figura B11 pelo método conforme explicado na Figura 3.
[00108] Mais especificamente, quando a unidade de seleção de modo 109 seleciona a codificação de predição interfigura usando vetores de movimento bidirecionais, a unidade de codificação de vetor de movimento 117 codifica os vetores de movimento do bloco atual da seguinte maneira.
[00109] A Figura 10 é uma ilustração para explicar a codificação de predição interfigura usando vetores de movimento bidirecionais.
[00110] Quando da codificação de vetores de movimento de um
Petição 870170091001, de 24/11/2017, pág. 28/76
25/62 bloco atual A, a unidade de codificação de vetor de movimento 117 codifica um vetor de movimento anterior MVF e um vetor de movimento posterior MVB.
[00111] Para ser mais específico, a unidade de codificação de vetor de movimento 117 considera uma mediana de vetores de movimento anteriores MVF1, MVF2 e MVF3 dos blocos vizinhos B, C e D, como sendo um valor de predição do vetor de movimento anterior MVF, e codifica uma diferença entre o vetor de movimento anterior MVF e o seu valor de predição. A unidade de codificação de vetor de movimento 117 também considera uma mediana de vetores de movimento posteriores MVB1, MVB2 e MVB3 dos blocos vizinhos B, C e D como sendo um valor de predição do vetor de movimento posterior MVB e codifica uma diferença entre o vetor de movimento posterior MVB e o seu valor de predição. Aqui, a mediana dos vetores de movimento é obtida por meio do cálculo de medianas de componentes horizontal e vertical dos vetores de movimento, respectivamente, por exemplo. [00112] Quando da codificação de vetores de movimento de um bloco atual em uma B-figura, se um bloco vizinho tiver sido codificado em modo direto, a unidade de codificação de vetor de movimento 117, na presente modalidade, não considera os vetores de movimento do bloco vizinho como sendo 0, mas considera vetores de movimento obtidos de outros blocos como vetores de movimento do bloco vizinho. Existem dois tipos de modos diretos: modo direto temporal e modo direto espacial.
[00113] Primeiro, será explicado como codificar vetores de movimento de um bloco atual quando um bloco vizinho é codificado em modo direto temporal.
[00114] A Figura 11 é uma ilustração para explicar como codificar o bloco vizinho em modo direto temporal.
[00115] Conforme mostrado na Figura 11, quando o bloco vizinho C
Petição 870170091001, de 24/11/2017, pág. 29/76
26/62 na figura B11 é codificado em modo direto, é usado um vetor de movimento MVp de um bloco X, que está co-localizado com o bloco vizinho C, na figura P13, que é uma figura de referência posterior recentemente codificada. O vetor de movimento MVp é um vetor de movimento usado para codificar o bloco X e é armazenado na unidade de armazenamento de vetor de movimento 116. Este vetor de movimento MVp refere-se à figura P10. O bloco vizinho C é codificado por predição bidirecional a partir das figuras de referência, a figura P10 e a figura P13, usando vetores de movimento paralelos ao vetor de movimento MVp. Neste caso, os vetores de movimento usados para codificar o bloco vizinho C são um vetor de movimento MVFc, para a figura P10 e um vetor de movimento MVBc, para a figura P13.
[00116] Neste caso, quando o vetor de movimento anterior MVFc for mvf, o vetor de movimento posterior MVBc é mvb, o vetor de movimento MVp é mvp, a distância temporal entre a figura de referência (figura P13) para a figura atual (figura B11) e a figura de referência (figura P10), apontada pelo bloco na figura de referência posterior é TRD, e a distância temporal entre a figura atual (figura B11) e a figura de referência (figura P10) apontada pelo bloco, na figura de referência posterior é TRB, mvf e mvb são calculados, respectivamente, pela Equação 1 e Equação 2.
mvf = mvp x TRB/TRDEquação 1 mvb = (TRB - TRD) x xmvp/TRDEquação 2 [00117] onde mvf e mvb representam, respectivamente, componentes horizontais e componentes verticais dos vetores de movimento. E os valores positivos indicam a direção do vetor de movimento MVp e os valores negativos indicam a direção oposta àquela do vetor de movimento MVp.
[00118] O bloco vizinho C é codificado usando os vetores de movimento MVFc e MVBc, obtidos conforme mencionado acima.
Petição 870170091001, de 24/11/2017, pág. 30/76
27/62 [00119] Quando da codificação dos vetores de movimento MVF e MVB do bloco atual A, conforme mostrado na Figura 10, a unidade de codificação de vetor de movimento 117 especifica os três blocos vizinhos B, C e D do bloco atual A e julga se cada um dos três blocos vizinhos B, C e D, é ou não um bloco que foi codificado usando um vetor de movimento de um outro bloco. Como um resultado, quando se julga que apenas o bloco vizinho C é codificado em modo direto temporal, ou seja, codificado com o uso do vetor de movimento do outro bloco, a unidade de codificação de vetor de movimento 117 trata os vetores de movimento MVFc e MVBc calculados a partir do vetor de movimento MVp do bloco X, que é o outro bloco para codificação do bloco vizinho C como vetores de movimento do bloco vizinho C, e calcula as medianas dos vetores de movimento MVFc e MVBc e os vetores de movimento dos blocos vizinhos B e D, de modo a derivar valores preditivos dos vetores de movimento do bloco atual A. Um valor de predição anterior e um valor de predição posterior são derivados separadamente. Então, a unidade de codificação de vetor de movimento 117 codifica diferenças entre os valores de predição e os vetores de movimento MVF e MVB do bloco atual A, respectivamente.
[00120] A unidade de armazenamento de vetor de movimento 116 armazena modos de codificação de blocos codificados e, com base nos modos de codificação armazenados nesta unidade de armazenamento de vetor de movimento 116, a unidade de codificação de vetor de movimento 117 julga se cada um dos blocos vizinhos B, C e D foi ou não codificado usando vetores de movimento de outros blocos. A unidade de armazenamento de vetor de movimento 116 armazena ainda vetores de movimento de blocos que foram codificados sem usar vetores de movimento de outros blocos, mas usando seus próprios vetores de movimento estimados a partir de figuras de referência. Em outras palavras, quando da codificação de vetores de movimento do
Petição 870170091001, de 24/11/2017, pág. 31/76
28/62 bloco atual A, a unidade de codificação de vetor de movimento 117 utiliza os vetores de movimento armazenados na unidade de armazenamento de vetor de movimento 116 como eles são para os blocos vizinhos B e D, mas para o bloco vizinho C, ela lê o vetor de movimento MVp do bloco X armazenado na unidade de armazenamento de vetor de movimento 116 para calcular os vetores de movimento MVFc e MVBc. Note que a unidade de armazenamento de vetor de movimento 116 pode armazenar, antecipadamente, vetores de movimento calculados a partir de vetores de movimento de outros blocos de modo a codificar um bloco que tenha sido codificado usando os vetores de movimento dos outros blocos. Neste caso, a unidade de armazenamento de vetor de movimento 116 armazena, antecipadamente, os vetores de movimento MVFc e MVBc. Logo, quando da codificação dos vetores de movimento do bloco atual A, a unidade de codificação de vetor de movimento 117 não precisa ler o vetor de movimento MVp do bloco X de modo a calcular os vetores de movimento MVFc e MVBc do bloco vizinho C usando a Equação 1 e a Equação 2, mas pode usar os vetores de movimento MVFc e MVBc armazenados na unidade de armazenamento de vetor de movimento 116, diretamente como os vetores de movimento do bloco vizinho C.
[00121] A seguir, será explicado um método para a codificação de vetores de movimento de um bloco atual, no caso em que um bloco vizinho é codificado no modo direto espacial.
[00122] A Figura 12 é uma ilustração para explicar como codificar um bloco vizinho no modo direto espacial.
[00123] Conforme mostrado na Figura 12, quando um bloco vizinho da figura B11 é codificado em modo direto espacial, ele é codificado usando vetores de movimento MVFc e MVBc, calculados com base nas medianas nas direções anterior e posterior, respectivamente, que são obtidas dos vetores de movimento MVFe e MVBe do bloco E, dos
Petição 870170091001, de 24/11/2017, pág. 32/76
29/62 vetores de movimento MVFf e MVBf do bloco F e os vetores de movimento MVFg e MVBg do bloco G, onde os blocos E, F e G estão localizados na vizinhança do bloco vizinho C.
[00124] Quando da codificação dos vetores de movimento MVF e MVB do bloco atual A, conforme mostrado na Figura 10, a unidade de codificação de vetor de movimento 117 especifica os três blocos vizinhos B, C e D na vizinhança do bloco atual A e julga se cada um dos blocos vizinhos B, C e D é ou não um bloco que foi codificado usando vetores de movimento de outros blocos. Como resultado, quando a unidade de codificação de vetor de movimento 117 julga que apenas o bloco vizinho C foi codificado no modo direto espacial, ou seja, usando vetores de movimento de outros blocos, ela trata os vetores de movimento MVFc e MVBc calculados dos blocos E, F e G, que são os outros blocos usados para codificar o bloco vizinho C como os vetores de movimento de bloco vizinho C, calcula as medianas dos vetores de movimento MVFc e MVBc e os vetores de movimento dos blocos vizinhos B e D, e assim, deriva valores de predição dos vetores de movimento do bloco atual A, conforme mostrado na Figura 12. Então, a unidade de codificação de vetor de movimento 117 codifica diferenças entre os valores de predição e os vetores de movimento MVF e MVB do bloco atual A.
[00125] A unidade de armazenamento de vetor de movimento 116 armazena vetores de movimento de blocos que tenham sido codificados sem usar vetores de movimento de outros blocos, mas usando seus próprios vetores de movimento estimados a partir de figuras de referência. Em outras palavras, ela armazena dois vetores de movimento nas direções anterior e posterior para cada um dos blocos E, f e G. Quando da codificação dos vetores de movimento do bloco atual A, a unidade de codificação de vetor de movimento 117 calcula os vetores de movimento MVFc e MVBc do bloco vizinho C usando estes vePetição 870170091001, de 24/11/2017, pág. 33/76
30/62 tores de movimento armazenados na unidade de armazenamento de vetor de movimento 116. Note que a unidade de armazenamento de vetor de movimento 116 pode armazenar, antecipadamente, dois vetores de movimento nas direções anterior e posterior , os quais são calculados com base em medianas obtidas de vetores de movimento de outros blocos, de modo a codificar um bloco que tenha sido codificado usando os vetores de movimento dos outros blocos. Neste caso, a unidade de armazenamento de vetor de movimento 116 armazena, antecipadamente, os vetores de movimento MVFc e MVBc. Logo, quando da codificação dos vetores de movimento do bloco atual A, a unidade de codificação de vetor de movimento 117 não precisa calcular os vetores de movimento MVFc e MVBc do bloco vizinho C, porém, pode usar os vetores de movimento MVFc e MVBc armazenados na unidade de armazenamento de vetor de movimento 116 diretamente como os vetores de movimento do bloco vizinho C.
[00126] Conforme descrito acima, quando o bloco vizinho C é codificado no modo direto temporal, os vetores de movimento da figura de referência posterior (a figura P13, no caso acima) à figura atual, precisam ser armazenados na unidade de armazenamento de vetor de movimento 116, mas quando o bloco vizinho C é codificado no modo direto espacial, seu armazenamento pode ser omitido.
[00127] Aqui, quando da codificação de vetores de movimento de um bloco atual, o aparelho de codificação de figura em movimento 100 realiza um processamento excepcional se um bloco vizinho do bloco atual não estiver codificado por predição de interfigura, conforme mencionado acima, mas estiver codificado por intrafigura.
[00128] Por exemplo, quando existe um bloco que tenha sido codificado intrafigura nos três blocos vizinhos, a unidade de codificação de vetor de movimento 117 do aparelho de codificação de figura em movimento 100, realiza o processamento considerando os vetores de
Petição 870170091001, de 24/11/2017, pág. 34/76
31/62 movimento do bloco como sendo 0. Quando existem dois blocos vizinhos que tenham sido codificados intrafigura, a unidade de codificação de vetor de movimento 117 usa os vetores de movimento do bloco vizinho remanescente como valores de predição de vetores de movimento de um bloco atual. Adicionalmente, quando todos os três blocos vizinhos forem codificados intrafigura, a unidade de codificação de vetor de movimento 117 realiza processamento de codificação dos vetores de movimento do bloco atual considerando seus valores de predição como sendo 0.
[00129] Por outro lado, a imagem de erro de predição indicando uma diferença entre um macrobloco atual na figura B11 e a imagem de compensação de movimento, foi codificada pela unidade de codificação de erro de predição 103 e gerada como dado codificado, e informações sobre os vetores de movimento que foram codificados, conforme mencionado acima, são adicionadas aos dados codificados pela unidade de geração de fluxo de bits 104. No entanto, informações sobre vetores de movimento de um macrobloco que foram codificados em modo direto, não são acrescentadas aos dados codificados.
[00130] O processamento de codificação dos macroblocos remanescentes na figura B11 é realizado da mesma maneira. Depois de o processamento ser completado para todos os macroblocos na figura B11, segue o processamento de codificação da figura B12.
[00131] Conforme descrito acima, de acordo com o método de codificação de vetor de movimento da presente invenção, um vetor de movimento de cada bloco atual é codificado usando um valor de predição derivado de vetores de movimento dos blocos vizinhos codificados anteriormente e o vetor de movimento do bloco atual. Se qualquer um dos blocos vizinhos tiver sido codificado com o uso de um vetor de movimento calculado a partir de vetores de movimento de outros blocos, por exemplo, no modo salto ou modo direto, um valor de predição
Petição 870170091001, de 24/11/2017, pág. 35/76
32/62 é derivado usando, como um vetor de movimento do bloco vizinho, o vetor de movimento calculado a partir dos vetores de movimento dos outros blocos para a codificação daquele bloco vizinho.
[00132] Por conseguinte, quando um vetor de movimento de um bloco atual é codificado usando um valor de predição derivado de um vetor de movimento de um bloco vizinho, se o bloco vizinho for codificado usando vetores de movimento de outros blocos, o vetor de movimento do bloco vizinho não é considerado como 0, como a técnica convencional, mas o vetor de movimento calculado a partir dos vetores de movimento dos outros blocos é usado como o vetor de movimento do bloco vizinho. Como resultado, a precisão do valor de predição acima é melhorado e, assim, a eficiência da codificação de vetores de movimento pode ser melhorada.
[00133] Note que na presente modalidade, foi explicado um caso em que um macrobloco é codificado em cada horizontal 16 x vertical 16 pixels, a compensação de movimento é realizada em cada bloco de horizontal 8 x vertical 8 pixels e uma imagem de erro de predição de bloco é codificada em cada horizontal 8 x vertical 8 pixels, mas este processamento pode ser realizado em outras unidades de pixels. [00134] Além disso, na presente modalidade, foi explicado um caso em que uma mediana calculada a partir de vetores de movimento de três blocos vizinhos codificados anteriormente, é usada como um valor de predição para codificar um vetor de movimento, mas qualquer outro número de blocos vizinhos que não três, pode ser aplicado e o valor de predição pode ser determinado por qualquer outro método. Por exemplo, um vetor de movimento de um bloco imediatamente à esquerda pode ser usado como um valor de predição ou uma média, ao invés de uma mediana, pode ser usada.
[00135] Além disso, na presente modalidade, foram explicados locais de blocos vizinhos para a codificação de um vetor de movimento,
Petição 870170091001, de 24/11/2017, pág. 36/76
33/62 usando a Figura 3 e a Figura 4, mas quaisquer outros locais podem ser aplicados.
[00136] Também, na presente modalidade, um método para codificar um bloco atual usando vetores de movimento de outros blocos, foi explicado tomando-se como exemplos modo de salto e modos temporal e espacial direto, mas qualquer outro método pode ser utilizado. [00137] Além disso, na presente modalidade, foi explicado um caso onde uma diferença entre um vetor de movimento de um bloco atual e um valor de predição obtidos, a partir de vetores de movimento de blocos vizinhos, de modo a codificar o vetor de movimento, mas qualquer outro método que não a obtenção de uma diferença, pode ser usado para codificar o vetor de movimento.
[00138] Além disso, na presente modalidade, foi explicado um caso onde, quando um bloco vizinho é codificado em modo direto espacial, uma mediana de vetores de movimento de três blocos codificados anteriormente na vizinhança do bloco vizinho, é calculada e é tratada como um vetor de movimento do bloco vizinho, mas qualquer outro número de blocos que não três pode ser usado, e qualquer outro método pode ser usado para determinar o vetor de movimento. Por exemplo, um vetor de movimento de um bloco imediatamente à esquerda pode ser usado como um vetor de movimento de um bloco vizinho, ou uma média, ao invés de uma mediana, pode ser usada. [00139] Além disso, na presente modalidade, quando um bloco em uma B-figura é codificado no modo espacial direto, dois vetores de movimento do bloco nas direções para frente e para trás são calculados, mas dois vetores de movimento na direção para frente apenas ou dois vetores de movimento na direção para trás apenas, podem ser calculados. Neste caso, a B-figura refere-se a duas figuras na direção para frente apenas ou duas figuras na direção para trás.
[00140] Além disso, na presente modalidade, foi explicado um caso
Petição 870170091001, de 24/11/2017, pág. 37/76
34/62 onde uma figura predeterminada é referida na codificação de uma Pfigura (uma figura P10 é referida na codificação de uma figura P13, por exemplo) e duas figuras predeterminadas são referidas na codificação de uma B-figura (figuras P10 e P13 são referidas na codificação de uma figura B11), mas estas P-figura e B-figura podem ser codificadas por meio da seleção de figuras de referência para cada macrobloco ou bloco dentre uma pluralidade de figuras. Em tal caso, um valor de predição de um vetor de movimento pode ser gerado da maneira conforme mostrada na Figura 13.
[00141] A Figura 13 é um fluxograma mostrando uma operação que a unidade de codificação de vetor de movimento 117 conduz na derivação de um valor de predição de um vetor de movimento de um bloco atual para codificar o vetor de movimento, quando figuras de referência são selecionadas para cada bloco.
[00142] Primeiro, a unidade de codificação de vetor de movimento 117 especifica três blocos vizinhos codificados anteriormente de um bloco atual (etapa S300).
[00143] Então, a unidade de codificação de vetor de movimento 117 julga se cada um dos blocos vizinhos especificados é um bloco vizinho Ba, que foi codificado usando vetores de movimento de outros blocos ou um bloco vizinho Bb que foi codificado sem usar vetores de movimento de outros blocos (etapa S302).
[00144] Aqui, como para o bloco vizinho Ba, a unidade de codificação de vetor de movimento 117 obtém informações indicando vetores de movimento usados para codificar o bloco Ba e figuras de referência para o bloco vizinho Ba, e trata aqueles vetores de movimento usados para codificar o bloco Ba como seus vetores de movimento. Quanto ao bloco vizinho Bb, a unidade de codificação de vetor de movimento 117 obtém informações indicando vetores de movimento do bloco vizinho Bb e figuras de referência para o bloco vizinho Bloco vizinho Bb (etapa
Petição 870170091001, de 24/11/2017, pág. 38/76
35/62
S304).
[00145] A seguir, a unidade de codificação de vetor de movimento 117 especifica, dentre os três blocos vizinhos, um bloco vizinho que se refira à figura a que um bloco atual refere-se com base nas informações obtidas na etapa S304 (Etapa S306) e determina o número de blocos vizinhos especificados (Etapa S308).
[00146] Então, se o número dos blocos vizinhos julgados na Etapa S308 for 1, a unidade de codificação de vetor de movimento 117 considera o vetor de movimento como sendo um valor de predição do vetor de movimento MV do bloco atual (Etapa S310).
[00147] Se o número dos blocos vizinhos julgados na etapa S308 não for 1, a unidade de codificação de vetores de movimento 117 considera os vetores de movimento dos blocos vizinhos que referem-se a uma outra figura, à qual o bloco atual refere-se, dentre três blocos vizinhos, como sendo 0 (etapa S312), e considera uma mediana dos vetores de movimento dos três blocos vizinhos como sendo um valor de predição do vetor de movimento MV do bloco atual (etapa s314). [00148] Usando o valor de predição derivado na etapa S310, ou Etapa S314, conforme mencionado acima, a unidade de codificação de vetor de movimento 117 calcula uma diferença entre o valor de predição e o vetor de movimento MV do bloco atual e codifica a diferença (etapa S316).
[00149] Além disso, quando um vetor de movimento é codificado usando um vetor de movimento de um bloco espacialmente adjacente como um valor de predição, uma quantidade de vetores de movimento de 1 linha de macrobloco (uma parte de 1 macrobloco de altura e uma tela de largura) precisa ser armazenada na unidade de armazenamento de vetor de movimento 116 para codifica o vetor de movimento, se os vetores de movimento que foram realmente usados para compensação de movimento no modo salto ou modo direto são armazenados
Petição 870170091001, de 24/11/2017, pág. 39/76
36/62 na unidade de armazenamento de vetor de movimento 116. Isso se aplica ao caso onde os vetores de movimento que foram realmente usados para compensação de movimento no modo salto ou modo direto, são armazenados na unidade de armazenamento de vetor de movimento 116. Isso é porque quando são usados os blocos vizinhos explicados na Figura 3 e Figura 4 da presente modalidade, existem uma fatia de macrobloco de blocos que são referidos como blocos vizinhos para a codificação do vetor de movimento, com o macrobloco atual como um ponto de partida.
(SEGUNDA MODALIDADE) [00150] Um aparelho de decodificação de figura em movimento 700, na segunda modalidade da presente invenção, será explicado com referência às Figuras.
[00151] A Figura 14 é um diagrama de bloco mostrando a estrutura do aparelho de decodificação de figura em movimento 700 na segunda modalidade da presente invenção.
[00152] O aparelho de decodificação de figura em movimento 700, conforme mostrado na Figura 14, decodifica as figuras em movimento codificadas pelo aparelho de codificação de figura em movimento 100 na primeira modalidade, e inclui uma unidade de análise de fluxo de bits 701, uma unidade de decodificação de erro de predição 702, uma unidade de decodificação de modo 703, uma unidade de decodificação de compensação de movimento 705, uma unidade de armazenamento de vetor de movimento 706, uma memória de quadro 707, uma unidade de adição 708, comutadores 709 e 710 e uma unidade de decodificação de vetor de movimento 711.
[00153] A unidade de análise de fluxo de bits 701 extrai diversos dados do fluxo de bits inserido. Aqui, diversos dados incluem informações sobre modo de codificação, informações sobre vetores de movimento e assim por diante. A informação de modo de codificação extraPetição 870170091001, de 24/11/2017, pág. 40/76
37/62 ída sai para a unidade de decodificação de modo 703. A informação de vetor de movimento extraída sai para a unidade de decodificação de vetor de movimento 711. Adicionalmente, o dado de erro de predição codificado extraído sai para a unidade de decodificação de erro de predição 702.
[00154] A unidade de decodificação de erro de predição 702 decodifica o dado de erro de predição codificado inserido de modo a gerar uma imagem de erro de predição. A imagem de erro de predição gerada sai para o comutador 709. Quando o comutador 709 é conectado ao terminal b, a imagem de erro de predição sai para a unidade de adição 708.
[00155] A unidade de decodificação de modo 703 controla o comutador 709 e o comutador 710, com referência à informação de modo de codificação extraída do fluxo de bits. Se o modo de codificação for codificação intrafigura, a unidade de decodificação de modo 703 controla os comutadores 709 e 710 para conectar ao terminal a e terminal c, respectivamente, e, se o modo de codificação for codificação interfigura, ela controla os comutadores 709 e 710 para conectar ao terminal b e ao terminal d, respectivamente. A unidade de decodificação de modo 703 dá ainda saída à informação de modo de codificação para a unidade de decodificação de vetor de movimento 711. [00156] A unidade de decodificação de vetor de movimento 711 decodifica a informação do vetor de movimento produzida a partir da unidade de análise de fluxo de bits 701.
[00157] Para ser mais específico, quando a informação de modo de codificação indicar codificação de predição interfigura usando vetores de movimento, a unidade de decodificação de vetor de movimento 711 deriva um valor de predição para um bloco atual ser decodificado usando os vetores de movimento de blocos vizinhos decodificados anteriormente, da mesma maneira conforme descrito na Figura 3 e FiguPetição 870170091001, de 24/11/2017, pág. 41/76
38/62 ra 4. Por exemplo, conforme mostrado na Figura 3, a unidade de decodificação de vetor de movimento 711 deriva um valor de predição para um bloco atual A a partir do vetor de movimento MVb do bloco vizinho B, o vetor de movimento MVc do bloco vizinho C e o vetor de movimento MVd do bloco vizinho d. Aqui, o valor de predição é calculado com base em uma mediana calculada a partir de cada uma das componentes horizontais e componentes verticais dos três vetores de movimento decodificados anteriormente MVb, MVc e MVd. Então, a unidade de decodificação de vetor de movimento 711 acrescenta o valor de predição à diferença, que é a informação de vetor de movimento produzida pela unidade de análise de fluxo de bits 701, de modo a determinar o vetor de movimento MV do bloco atual A. Quando a informação de modo de codificação for qualquer dentre o modo de salto, modo direto temporal e modo direto espacial mencionados acima, a unidade de decodificação de vetor de movimento 711 determina o vetor de movimento usando apenas os vetores de movimento dos blocos vizinhos decodificados anteriormente.
[00158] A Figura 15 é um fluxograma que mostra a operação geral da unidade de decodificação de vetor de movimento 711 na presente modalidade.
[00159] Primeiro, a unidade de decodificação de vetor de movimento 711 especifica três blocos vizinhos decodificados anteriormente de um bloco atual a ser decodificado (etapa S200).
[00160] Então, a unidade de decodificação de vetor de movimento 711 julga se cada um dos blocos vizinhos especificados é um bloco vizinho que tenha sido codificado usando vetores de movimento de outros blocos ou um bloco vizinho Bb que tenha sido codificado sem usar vetores de movimento de outros blocos (etapa S202) [00161] Como resultado, a unidade de decodificação de vetor de movimento 711 determina se um bloco vizinho Ba está incluído ou não
Petição 870170091001, de 24/11/2017, pág. 42/76
39/62 nos três blocos vizinhos especificados (etapa S204).
[00162] Na etapa S204, quando se julga que um bloco vizinho Ba está incluído (Y na etapa S204), a unidade de decodificação de vetor de movimento 711 deriva um valor de predição a partir dos vetores de movimento dos três blocos vizinhos por meio do tratamento de um vetor de movimento calculado a partir de vetores de movimento de outros blocos para decodificação do bloco vizinho Ba como um vetor de movimento do bloco vizinho Ba, conforme mencionado acima (etapa S206).
[00163] Por outro lado, na etapa S206, quando se julga que um bloco vizinho Ba não está incluído (N na etapa S204), a unidade de decodificação de vetor de movimento 711 deriva um valor de predição dos vetores de movimento obtidos respectivamente com base nos resultados de estimativa dos três blocos vizinhos Bb (etapa S208).
[00164] Então, a unidade de decodificação de vetor de movimento 711 acrescenta o valor de predição derivado na etapa S206 ou S208, à diferença que é a informação de vetor de movimento que sai da unidade de análise de fluxo de bits 701, de modo a decodificar o vetor de movimento codificado do bloco atual (etapa S210). A unidade de decodificação de vetor de movimento 711 também dá saída ao vetor de movimento decodificado para a unidade de decodificação de compensação de movimento 705.
[00165] A unidade de armazenamento de vetor de movimento 706 armazena o vetor de movimento decodificado na unidade de decodificação de vetor de movimento 711 e o modo de codificação obtido na unidade de decodificação de modo 703.
[00166] A unidade de decodificação de compensação de movimento 705 obtém uma imagem de compensação de movimento de cada macrobloco a partir da memória de quadro 707 com base no vetor de movimento decodificado na unidade de decodificação de vetor de moPetição 870170091001, de 24/11/2017, pág. 43/76
40/62 vimento 711.
[00167] A unidade de adição 708 acrescenta a imagem de erro de predição inserida e a imagem de compensação de movimento para gerar a imagem decodificada e dá saída à imagem decodificada gerada para a memória de quadro 707.
[00168] A memória de quadro 707 armazena a imagem decodificada gerada pela unidade de adição 708, na base de cada figura.
[00169] A operação deste aparelho de decodificação de figura em movimento 700, particularmente sua operação geral, será explicada primeiro.
[00170] A Figura 16 é uma ilustração para explicar a entrada e a saída do aparelho de decodificação de figura em movimento 700. [00171] Conforme mostrado na Figura 16A, o aparelho de decodificação de figura em movimento 700 obtém o fluxo de bits produzido pelo aparelho de codificação de figura em movimento 100, na primeira modalidade, em ordem de saída, e decodifica as figuras incluídas no fluxo de bits em seqüência. Então, conforme mostrado na Figura 16B, o aparelho de decodificação de figura em movimento 700 reordena as figuras decodificadas em ordem de exibição para saída.
[00172] O processamento de decodificação realizado pelo aparelho de decodificação de figura em movimento 700 acima, será explicado abaixo pegando-se a decodificação da figura P13 e a figura B11, conforme mostrado na Figura 16, como um exemplo específico. (DECODIFICAÇÃO DA FIGURA P13) [00173] Primeiro, a unidade de análise de fluxo de bits 701 do aparelho de decodificação de figura em movimento 700, obtém o fluxo de bits levando em conta a figura P13 e extrai a informação de seleção de modo e a informação de vetor de movimento e o dado de erro de predição codificado do fluxo de bits.
[00174] A unidade de decodificação de modo 703 controla os comuPetição 870170091001, de 24/11/2017, pág. 44/76
41/62 tadores 709 e 710 com referência à informação de seleção de modo extraída do fluxo de bits da figura P13.
[00175] Um caso em que a seleção de modo indica codificação de predição interfigura, será explicado abaixo.
[00176] A unidade de decodificação de vetor de movimento 711 realiza o processamento de decodificação acima sobre a informação de vetor de movimento extraída do fluxo de bits da figura P13, em uma base bloco a bloco, com base na informação de seleção de modo indicando codificação de predição interfigura, que sai da unidade de decodificação de modo 703.
[00177] Aqui, quando da decodificação do vetor de movimento do bloco atual na figura P13, a unidade de decodificação de vetor de movimento 711 especifica três blocos vizinhos decodificados anteriormente do bloco atual e julga se cada um destes blocos vizinhos foi codificado usando vetores de movimento de outros blocos ou não. Quando qualquer dos blocos vizinhos for um bloco que tenha sido codificado usando vetores de movimento de outros blocos, a saber, no modo salto, a unidade de decodificação de vetor de movimento 711 trata um vetor de movimento calculado a partir dos vetores de movimento dos outros blocos para decodificar o bloco vizinho como um vetor de movimento do bloco vizinho, da mesma maneira que a unidade de codificação de vetor de movimento 117 na primeira modalidade. Para ser mais específico, a unidade de decodificação de vetor de movimento 711 calcula a mediana dos vetores de movimento dos três blocos decodificados anteriormente na vizinhança daquele bloco vizinho e a trata como um vetor de movimento do bloco vizinho.
[00178] Além disso, a unidade de armazenamento de vetor de movimento 706 armazena a informação de seleção de modo que sai da unidade de decodificação de modo 703 e a unidade de decodificação de vetor de movimento 711 julga se cada um dos blocos vizinhos é ou
Petição 870170091001, de 24/11/2017, pág. 45/76
42/62 não um bloco que tenha sido codificado usando vetores de movimento de outros blocos, com base na informação de seleção de modo armazenada na unidade de armazenamento de vetor de movimento 706. A unidade de armazenamento de vetor de movimento 706 armazena, adicionalmente, os vetores de movimento de outros blocos usados para decodificar o bloco vizinho. Para ser mais específico, a unidade de armazenamento de vetor de movimento 706 armazena os vetores de movimento dos três blocos na vizinhança do bloco vizinho que foi codificado no modo salto. Quando da decodificação do vetor de movimento do bloco atual, a unidade de decodificação de vetor de movimento 711 calcula uma mediana a partir dos vetores de movimento dos três blocos acima armazenados na unidade de armazenamento de vetor de movimento 706. Note que a unidade de armazenamento de vetor de movimento 706 pode armazenar antecipadamente, um vetor de movimento de um bloco que tenha sido codificado usando vetores de movimento de outros blocos, por meio do cálculo de uma mediana dos vetores de movimento para decodificar o bloco. Neste caso, quando da decodificação do vetor de movimento do bloco atual, a unidade de decodificação de vetor de movimento 711 não precisa obter o vetor de movimento do bloco vizinho que foi codificado no modo salto, mas pode usar o vetor de movimento armazenado na unidade de armazenamento de vetor de movimento 706 diretamente como um vetor de movimento do bloco vizinho.
[00179] Por outro lado, o dado de erro de predição codificado do macrobloco atual na figura P13, é decodificado na unidade de decodificação de erro de predição 702 e gerado como uma imagem de erro de predição e os comutadores 709 e 710 são conectados à unidade de adição 708. Consequentemente, a imagem de compensação de movimento, gerada com base no vetor de movimento decodificado na unidade de decodificação de vetor de movimento 711, é acrescentada
Petição 870170091001, de 24/11/2017, pág. 46/76
43/62 à imagem de erro de predição e sai para a memória de quadro 707. [00180] Além disso, quando da decodificação de um vetor de movimento de uma P-figura, a unidade de decodificação de vetor de movimento 711 armazena seu vetor de movimento e um modo de codificação obtido da unidade de decodificação de modo 703, na unidade de armazenamento de vetor de movimento 706 para decodificar as figuras e blocos seguintes.
[00181] Os macroblocos remanescentes na figura P13 são decodificados em seqüência. Depois de a decodificação de todos os macroblocos na figura P13 estar completa, segue a decodificação da figura B11.
(DECODIFICAÇÃO DA FIGURA B11) [00182] Primeiro, a unidade de análise de fluxo de bits 701 do aparelho de decodificação de figura em movimento 700 obtém o fluxo de bits da figura B11, e extrai a informação de seleção de modo e a informação de vetor de movimento e o dado de erro de predição codificado do fluxo de bits.
[00183] A unidade de decodificação de modo 703 controla os comutadores 709 e 710 com referência à informação de seleção de modo extraída do fluxo de bit da figura B11.
[00184] Um caso onde a informação de seleção de modo indica codificação de predição interfigura, será explicado agora.
[00185] A unidade de decodificação de vetor de movimento 711 realiza o processamento de decodificação acima na informação de vetor de movimento extraída do fluxo de bits da figura B11, em uma base bloco a bloco, com base na informação de seleção de modo indicando codificação de predição interfigura, que sai da unidade de decodificação de modo 703.
[00186] Quando da decodificação de um vetor de movimento de um bloco atual na figura B11, a unidade de decodificação de vetor de moPetição 870170091001, de 24/11/2017, pág. 47/76
44/62 vimento 711 especifica três blocos vizinhos decodificados anteriormente do bloco atual e julga se cada um destes blocos vizinhos foi codificado ou não usando vetores de movimento de outros blocos. Quando qualquer um dos blocos vizinhos for um bloco que foi codificado usando vetores de movimento de outros blocos, a saber, no modo direto temporal ou espacial, a unidade de decodificação de vetor de movimento 711 trata um vetor de movimento obtido usando os vetores de movimento dos outros blocos para decodificar o bloco vizinho como um vetor de movimento seu, da mesma maneira que a unidade de codificação de vetor de movimento 117 na primeira modalidade.
[00187] Mais especificamente, quando o bloco vizinho tiver sido codificado em modo direto temporal, a unidade de decodificação de vetor de movimento 711 lê a partir da unidade de armazenamento de vetor de movimento 706, um vetor de movimento de um bloco, que está colocalizado com um bloco vizinho que foi codificado no modo direto, em uma figura de referência que acabou de ser decodificada (figura P13). Por exemplo, conforme mostrado na Figura 11, se o bloco vizinho C tiver sido codificado em modo direto temporal, a unidade de decodificação de vetor de movimento 711 lê o vetor de movimento decodificado do bloco X na figura P13 a partir da unidade de armazenamento de vetor de movimento 706. Então, a unidade de decodificação de vetor de movimento 711 calcula um vetor de movimento anterior MVFc e um vetor de movimento MVBc posterior usado para a codificação do bloco vizinho C usando a Equação 1 e a Equação 2, e usa estes vetores de movimento MVFc e MVBc como vetores de movimento do bloco vizinho C.
[00188] No caso acima, a unidade de decodificação de vetor de movimento 711 lê, a partir da unidade de armazenamento de vetor de movimento 706, o vetor de movimento MVp do bloco X na figura P13, que está co-localizado com o bloco vizinho C, que foi codificado em
Petição 870170091001, de 24/11/2017, pág. 48/76
45/62 modo direto. No entanto, quanto ao bloco que foi codificado usando vetores de movimento de outros blocos, a unidade de armazenamento de vetor de movimento 706 pode armazenar o vetor de movimento do bloco calculado a partir dos vetores de movimento dos outros blocos para decodificar o bloco. Neste caso, a unidade de armazenamento de vetor de movimento 706 armazena os vetores de movimento MVFc e MVBc antecipadamente. Logo, quando da decodificação do vetor de movimento do bloco atual A, a unidade de decodificação de vetor de movimento 711 não precisa calcular os vetores de movimento MVFc e MVBc para o bloco vizinho C, por meio da leitura do vetor de movimento MVp do bloco X e usando a Equação 1 e a Equação 2, mas pode usar os vetores de movimento MVFc e MVBc armazenados na unidade de armazenamento de vetor de movimento 706 diretamente como vetores de movimento do bloco vizinho C.
[00189] Por outro lado, quando um bloco vizinho tiver sido codificado em modo direto espacial, a unidade de decodificação de vetor de movimento 711 trata vetores de movimento calculados usando vetores de movimento de outros blocos na vizinhança do bloco vizinho como seus vetores de movimento. Por exemplo, na situação, conforme mostrado na Figura 12, a unidade de decodificação de vetor de movimento 711 calcula as medianas a partir dos vetores de movimento dos três blocos E, F e G decodificados anteriormente na vizinhança do bloco vizinho C, que foi codificado em modo direto espacial, e trata o vetor de movimento anterior MVFc e o vetor de movimento posterior MVBc indicados pelas medianas, como vetores de movimento do bloco vizinho C.
[00190] Além disso, a unidade de armazenamento de vetor de movimento 706 armazena vetores de movimento usados para a decodificação de um bloco que foi codificado sem usar vetores de movimento de outros blocos. Para ser mais específico, na situação conforme mosPetição 870170091001, de 24/11/2017, pág. 49/76
46/62 trada na Figura 12, a unidade de armazenamento de vetor de movimento 706 armazena os vetores de movimento dos três blocos E, F e G na vizinhança do bloco vizinho C, que foi codificado em modo direto espacial. Logo, quando da decodificação do vetor de movimento do bloco atual A, a unidade de decodificação de vetor de movimento 711 calcula os vetores de movimento MVFc e MVBc para o bloco vizinho, a partir dos vetores de movimento dos três blocos acima E, F e G, armazenados na unidade de armazenamento de vetor de movimento 706. Note que a unidade de armazenamento de vetor de movimento 706 pode armazenar, antecipadamente, vetores de movimento obtidos por meio do cálculo de medianas para a decodificação de um bloco que foi codificado usando vetores de movimento de outros blocos. Neste caso, na situação conforme mostrada na Figura 12, a unidade de armazenamento de vetor de movimento 706 armazena os vetores de movimento MVFc e MVBc antecipadamente. Consequentemente, quando da decodificação dos vetores de movimento do bloco atual A, a unidade de decodificação de vetor de movimento 711 não precisa calcular os vetores de movimento do bloco vizinho C, que foi codificado em modo direto espacial, mas pode usar os vetores de movimento MVFc e MVBc armazenados na unidade de armazenamento de vetor de movimento 706 diretamente como vetores de movimento do bloco vizinho C.
[00191] Aqui, quando os vetores de movimento de um bloco atual a ser decodificado, são decodificados, se o bloco vizinho do bloco atual decodificado anteriormente tiver sido processado em codificação intrafigura, não em codificação interfigura, conforme mencionado acima, o aparelho de decodificação de figura em movimento 700 realiza processamento excepcional.
[00192] Por exemplo, quando um dos três blocos vizinhos tiver sido codificado intrafigura, a unidade de decodificação de vetor de moviPetição 870170091001, de 24/11/2017, pág. 50/76
47/62 mento 711 do aparelho de decodificação de figura em movimento 700 realiza processamento considerando os vetores de movimento do bloco vizinho como sendo 0. Quando dois blocos vizinhos tiverem sido codificados intrafigura, a unidade de decodificação de vetor de movimento 711 usa os vetores de movimento do bloco vizinho remanescente, como valores de predição dos vetores de movimento do bloco atual. Adicionalmente, quando todos os três blocos vizinhos tiverem sido codificados intrafigura, a unidade de decodificação de vetor de movimento 711 decodifica os vetores de movimento do bloco atual considerando seus valores de predição como sendo 0.
[00193] Por outro lado, o dado de erro de predição codificado para o macrobloco atual na figura B11, foi decodificado na unidade de decodificação de erro de predição 702 e gerado como uma imagem de erro de predição e os comutadores 709 e 710 são conectados à unidade de adição 708. Logo, a imagem de compensação de movimento gerada com base no vetor de movimento decodificado pela unidade de decodificação de vetor de movimento 711, é adicionada à imagem de erro de predição e sai para a memória de quadro 707.
[00194] O processo de decodificação dos macroblocos remanescentes na figura B11, é realizado da mesma maneira. Depois de o processamento ser completado para todos os macroblocos na figura B11, segue o processamento de decodificação da figura B12.
[00195] Conforme descrito acima, de acordo com o método de decodificação de vetor de movimento da presente invenção, um valor de predição é derivado de vetores de movimento de blocos vizinhos decodificados anteriormente e um vetor de movimento de cada bloco atual é decodificado usando o valor de predição e a diferença. Se qualquer um dos blocos vizinhos tiver sido codificado usando vetores de movimento de outros blocos, por exemplo, no modo salto ou modo direto, um valor de predição é derivado usando, como um vetor de
Petição 870170091001, de 24/11/2017, pág. 51/76
48/62 movimento do bloco vizinho, um vetor de movimento calculado a partir dos vetores de movimento dos outros blocos para decodificar aquele bloco vizinho.
[00196] Por conseguinte, vetores de movimento que tenham sido codificados da maneira conforme mostrada na primeira modalidade, podem ser decodificados de maneira apropriada.
[00197] Note que, na presente modalidade, foi explicado um caso onde uma mediana calculada a partir de vetores de movimento de três blocos vizinhos decodificados anteriormente, é usada como um valor de predição para decodificar um vetor de movimento, mas qualquer outro número de blocos vizinhos, que não três, pode ser aplicado e o valor de predição pode ser determinado por qualquer outro método. Por exemplo, um vetor de movimento de um bloco imediatamente à esquerda, pode ser usado como um valor de predição, ou uma média, ao invés de uma mediana, pode ser usada.
[00198] Além disso, na presente modalidade, locais de blocos vizinhos para decodificar um vetor de movimento, foram explicados usando a Figura 3 e a Figura 4, mas quaisquer outros locais podem ser aplicados.
[00199] Além disso, na presente modalidade, um método para a codificação de um bloco atual, usando vetores de movimento de outros blocos, foi explicado pegando-se o modo de salto e os modos diretos temporal e espacial como exemplos, mas qualquer outro modo pode ser usado.
[00200] Além disso, na presente modalidade, foi explicado um caso onde um vetor de movimento é decodificado adicionando-se um valor de predição obtido de vetores de movimento de blocos vizinhos e uma diferença, conforme indicado em um fluxo de bits, mas qualquer outro método, que não adição, pode ser usado para decodificar o vetor de movimento.
Petição 870170091001, de 24/11/2017, pág. 52/76
49/62 [00201] Além disso, na presente modalidade, foi explicado um caso em que um bloco vizinho foi codificado em modo direto espacial, uma mediana de vetores de movimento de três blocos codificados anteriormente na vizinhança do bloco vizinho, é calculada e é tratada como um vetor de movimento do bloco vizinho, mas qualquer outro número de blocos, que não três, pode ser usado e qualquer outro método pode ser usado para determinar o vetor de movimento. Por exemplo, um vetor de movimento de um bloco imediatamente à esquerda, pode ser usado como vetor de movimento do bloco vizinho, ou uma média, ao invés de uma mediana, pode ser usada.
[00202] Além disso, na presente modalidade, quando existir um bloco vizinho que tenha sido codificado em modo direto espacial, são calculados dois vetores de movimento do bloco nas direções para frente e para trás, mas dois vetores de movimento na direção para frente apenas ou dois vetores de movimento na direção para trás apenas, podem ser calculados. Neste caso, uma B-figura atual a ser decodificada, refere-se a duas figuras na direção para frente apenas ou duas figuras na direção para trás apenas.
[00203] Além disso, na presente modalidade, foi explicado um caso em que uma figura predeterminada é referida na decodificação de uma P-figura (a figura P10 é referida na decodificação da Figura P13, por exemplo) e duas figuras predeterminadas são referidas na decodificação de uma B-figura (as figuras P10 e P13 são referidas na decodificação da figura B11), mas estas P-figura e B-figura podem ser decodificadas por meio da seleção de figuras de referência dentre uma pluralidade de figuras, em uma base de cada macrobloco ou bloco. Em tal caso, um valor de predição de um vetor de movimento pode ser gerado da maneira conforme mostrada na Figura 17.
[00204] A Figura 17 é um fluxograma que mostra uma operação da unidade de decodificação de vetor de movimento 711 para derivar um
Petição 870170091001, de 24/11/2017, pág. 53/76
50/62 valor de predição de um vetor de movimento de um bloco atual a ser decodificado e decodificar o vetor de movimento usando o valor de predição, quando uma figura de referência é selecionada em uma base bloco a bloco.
[00205] Primeiro, a unidade de decodificação de vetor de movimento 711 especifica três blocos vizinhos decodificados anteriormente do bloco atual (etapa S400).
[00206] Então, a unidade de decodificação de vetor de movimento 711 julga se cada um dos blocos vizinhos especificados é um bloco vizinho Ba, que foi codificado usando vetores de movimento de outros blocos, ou um bloco vizinho Bb, que foi codificado sem usar vetores de movimento de outros blocos (etapa S402).
[00207] Aqui, quanto ao bloco vizinho Ba, a unidade de decodificação de vetor de movimento 711 obtém informações indicando um vetor de movimento usado para decodificar o bloco vizinho Ba e a que figura de referência ele refere-se, e trata o vetor de movimento usado para a decodificação, como um vetor de movimento do bloco vizinho Ba. Quanto ao bloco vizinho Bb, a unidade de decodificação de vetor de movimento 711 obtém informações indicando o vetor de movimento do bloco vizinho Bb e a que figura de referência refere-se (etapa S404). [00208] A seguir, a unidade de decodificação de vetor de movimento 711 especifica o bloco vizinho que refere-se à figura a que o bloco atual refere-se, dentre os três blocos vizinhos, com base na informação obtida na etapa S404 (etapa S406) e determina o número de blocos vizinhos especificados (etapa S408).
[00209] Se o número dos blocos vizinhos determinados na etapa
S408 for 1, a unidade de decodificação de vetor de movimento 711 considera o vetor de movimento daquele um bloco vizinho, que referese a mesma figura, como sendo um valor de predição do vetor de movimento do bloco atual (etapa S410).
Petição 870170091001, de 24/11/2017, pág. 54/76
51/62 [00210] Se o número dos blocos vizinhos determinado na etapa S408 for um outro número que não 1, a unidade de decodificação de vetor de movimento 711 considera o vetor de movimento do bloco vizinho, dentre os três blocos vizinhos, que refere-se a uma outra figura a que o bloco vizinho refere-se como sendo 0 (etapa S412) e considera a mediana dos vetores de movimento dos três blocos vizinhos, como um valor de predição do vetor de movimento do bloco atual (etapa S414).
[00211] Conforme descrito acima, o vetor de movimento codificado do bloco atual é decodificado por meio da adição da diferença ao valor de predição derivado na etapa S410 ou etapa S414.
[00212] Além disso, quando um vetor de movimento é decodificado usando um vetor de movimento de um bloco espacialmente adjacente como um valor de predição, uma quantidade de vetores de movimento de 1 linha de macrobloco (uma parte de 1 altura de um macrobloco e largura de uma tela) precisa ser armazenada na unidade de armazenamento de vetor de movimento 706, para a decodificação do vetor de movimento, se os vetores de movimento que realmente foram usados para compensação de movimento no modo salto ou modo direto, estiverem armazenados na unidade de armazenamento de vetor de movimento 706. Isso se aplica ao caso onde os vetores de movimento, que foram realmente usados para compensação de movimento no modo de salto ou modo direto, estão armazenados na unidade de armazenamento de vetor de movimento 706. Essa é a razão pela qual, quando os blocos vizinhos explicados na Figura 3 e na Figura 4 da presente invenção, são usados, passa-se uma fatia de 1 macrobloco de blocos que são referidos como blocos vizinhos para a decodificação do vetor de movimento, como o macrobloco atual como um ponto de partida.
(TERCEIRA MODALIDADE)
Petição 870170091001, de 24/11/2017, pág. 55/76
52/62 [00213] Em adição, se um programa para realizar o método de codificação de vetor de movimento ou o método de decodificação de vetor de movimento, conforme mostrado em cada uma das modalidades mencionadas acima, for gravado em um meio de armazenamento, tal como um disco flexível, torna-se possível realizar facilmente o processamento, conforme mostrado em cada uma das modalidades acima, em um sistema de computador independente.
[00214] A Figura 18 é uma ilustração de um meio de armazenamento que armazena um programa para realizar o método de codificação de vetor de movimento e o método de decodificação de vetor de movimento, executados pelo aparelho de codificação de figura em movimento 100 na primeira modalidade e o aparelho de decodificação de vetor de movimento 200, na segunda modalidade, por um sistema de computador.
[00215] A Figura 18B mostra a vista frontal e a vista em corte transversal da aparência de um disco flexível FD e um disco FD1, e a Figura 18A mostra um exemplo de um formato físico do disco FD1, como um meio de gravação em si.
[00216] O disco FD1 está contido em um envoltório F, uma pluralidade de trilhas Tr são formadas concentricamente sobre a superfície do disco FD1 na direção do raio, a partir da periferia e, cada trilha, é dividida em 16 setores Se na direção angular. Logo, no disco flexível que armazena o programa mencionado acima, o método de codificação de vetor de movimento e o método de decodificação de vetor de movimento, como o programa acima, são gravados em uma área alocada para isso no disco FD1.
[00217] A Figura 18c mostra a estrutura para gravação e reprodução do programa no e a partir do disco flexível FD.
[00218] Para gravar o programa no disco flexível FD, o sistema de computador Cs grava o método de codificação de vetor de movimento
Petição 870170091001, de 24/11/2017, pág. 56/76
53/62 ou o método de decodificação de vetor de movimento como o programa no disco flexível FD via um drive de disco flexível FDD. Para construir o método de codificação de vetor de movimento e o método de decodificação de vetor de movimento acima no sistema de computador Cs, por meio do programa gravado no disco flexível FD, o programa é lido do disco flexível FD via drive de disco flexível FDD e transferido para o sistema de computador Cs.
[00219] Note que a explicação acima é dada assumindo-se que um meio de gravação é um disco flexível FD, mas o mesmo processamento também pode ser realizado usando um disco ótico. Em adição, o meio de gravação não está limitado a estes, mas quaisquer outros meios, tais como um cartão IC e uma fita ROM podem ser usados da mesma maneira, se um programa puder ser gravado neles.
(QUARTA MODALIDADE) [00220] Adicionalmente, serão explicadas as aplicações do método de codificação de vetor de movimento e do método de decodificação de vetor de movimento, conforme mostrado nas modalidades acima, e um sistema que os utiliza.
[00221] A Figura 19 é um diagrama de bloco que mostra a configuração geral de um sistema que proporciona conteúdo ex100 para realizar o serviço de distribuição de conteúdo. A área para proporcionar serviço de comunicação é dividida em células de tamanho desejado e estações base ex107 a ex110, que são estações fixas sem fio, são colocadas nas respectivas células.
[00222] Neste sistema de provisão de conteúdo ex100, diversos dispositivos, tais como um computador ex111, um PDA (assistente digital pessoal) ex112, uma câmera ex113, um telefone móvel ex114 e um telefone móvel equipado com câmera ex115, são conectados à Internet ex101, via um provedor de serviço de Internet ex102, uma rede de telefone ex104 e estações base ex107 a ex110, por exemplo.
Petição 870170091001, de 24/11/2017, pág. 57/76
54/62 [00223] No entanto, o sistema de provisão de conteúdo ex100 não está limitado à combinação, conforme mostrada na Figura 19, e pode ser conectado a uma combinação de qualquer deles. Além disso, cada dispositivo pode ser conectado diretamente à rede de telefone ex104, não através das estações base ex107 a ex110, que são as estações sem fio fixas.
[00224] A câmera ex113 é um dispositivo tal como uma câmera de vídeo digital, capaz de filmar figuras em movimento. O telefone móvel pode ser qualquer dentre um telefone móvel de um sistema PDC (Personal Digital Communications), um sistema CDMA (Code Division Multiple Access), um sistema W-CDMA (Wideband-Code Division Multiple Access) ou um sistema GSM (Global System for Mobile Communications), um PHS (Personal Handyphone System) e similares.
[00225] Além disso, um servidor de fluxo ex103 é conectado à câmera ex113 via estação base ex109 e a rede de telefone ex104, que permite a distribuição ao vivo ou similares, usando a câmera ex113, com base nos dados codificados transmitidos do usuário. Ou a câmera ex113 ou o servidor para transmitir os dados podem codificar os dados filmados pela câmera. Além disso, a tomada de dados de figura em movimento por uma câmera ex116, pode ser transmitida para o servidor de fluxo ex103, via computador ex111. A câmera ex116 é um dispositivo tal como uma câmera digital capaz de filmar figuras paradas e em movimento. Neste caso, ou a câmera ex116 ou o computador ex111 pode codificar os dados da figura em movimento. Um LSI ex117, incluído no computador ex111 ou a câmera ex116, realiza processamento de codificação. Note que o software para codificar e decodificar figuras pode ser integrado em qualquer tipo de um meio de armazenamento (tal como um CD-ROM, um disco flexível e um disco rígido), que seja um meio de gravação que pode ser lido pelo computador ex111 ou similares. Além disso, o telefone móvel equipado com
Petição 870170091001, de 24/11/2017, pág. 58/76
55/62 câmera ex115 pode transmitir os dados da figura em movimento. Estes dados de figura em movimento são os dados codificados pelo LSI incluído no telefone móvel ex115.
[00226] Neste sistema de provisão de conteúdo ex100, o conteúdo (tal como um vídeo de música ao vivo) filmado por usuários utilizando a câmera ex113, a câmera ex116 ou similares, é codificado da mesma maneira que as modalidades acima e transmitido para o servidor de fluxo ex103, enquanto o servidor de fluxo ex103 faz distribuição de fluxo do dado de conteúdo acima para os clientes, a sua solicitação. Os clientes incluem o computador ex111, o PDA ex112, a câmera ex113, o telefone móvel ex114 e assim por diante, capazes de decodificar o dado codificado mencionado acima. O sistema de provisão de conteúdo ex100 é um sistema em que os clientes, deste modo, pode receber e reproduzir os dados codificados e adicionalmente podem receber, decodificar e reproduzir os dados em tempo real de modo a realizar transmissão pessoal.
[00227] Quando cada dispositivo neste sistema realiza codificação ou decodificação, o aparelho de codificação de figura em movimento ou o aparelho de decodificação de figura em movimento, conforme mostrado em cada uma das modalidades mencionadas acima, pode ser usado.
[00228] Um telefone móvel será explicado como um exemplo. [00229] A Figura 20 é um diagrama que mostra um telefone móvel ex115 que usa o método de codificação de vetor de movimento e o método de decodificação de vetor de movimento, conforme explicado nas modalidades acima. O telefone móvel ex115 tem uma antena ex201 para enviar e receber ondas de rádio entre a estação base ex110, uma unidade de câmera ex203, tal como uma câmera CCD, capaz de filmar vídeo e figuras paradas, uma unidade de exibição ex202, tal como um visor de cristal líquido, para exibir os dados obtiPetição 870170091001, de 24/11/2017, pág. 59/76
56/62 dos por decodificação da filmagem de vídeo pela unidade de câmera ex203, vídeo recebido pela antena ex201, ou similares, um corpo principal incluindo um conjunto de chaves de operação ex204, uma unidade de saída de voz ex208, tal como um alto-falante para dar saída a vozes, uma unidade de entrada de voz ex205, tal como um microfone, para inserção de vozes, um meio de armazenamento ex207 para armazenar dados codificados ou decodificados, tais como dados de figuras em movimento ou paradas, filmadas pela câmera e dados de texto, figuras em movimento ou figuras paradas de e-mails recebidos e uma unidade de slot ex206, para fixar o meio de armazenamento ex207 no telefone móvel ex115. O meio de armazenamento ex207 inclui um elemento de memória rápida, um tipo de EEPROM (Electrically Erasable and Programmable Read Only Memory), que é uma memória nãovolátil, que pode ser apagada e gravada novamente, em um envoltório plástico, tal como um cartão SD.
[00230] Adicionalmente, o telefone móvel ex115 será explicado com referência à Figura 21. No telefone móvel ex115, uma unidade de controle principal ex311, para o controle geral de cada unidade do corpo principal, incluindo a unidade de exibição ex202 e as chaves de operação ex204, é conectada a uma unidade de circuito de fornecimento de energia ex310, uma unidade de controle de inserção de operação ex304, uma unidade de codificação de figura ex312, uma unidade de interface de câmera ex303, uma unidade de controle LCD (Liquid Crystal Display) ex302, uma unidade de decodificação de figura ex309, uma unidade de multiplexação/desmultiplexação ex308, uma unidade de gravação/reprodução ex307, uma unidade de circuito de modem ex306 e uma unidade de processamento de voz ex305, entre si via um barramento síncrono ex313.
[00231] Quando uma chave de extremidade de chamada ou uma chave de energia é ligada (ON) por meio da operação de um usuário,
Petição 870170091001, de 24/11/2017, pág. 60/76
57/62 a unidade de circuito de fornecimento de energia ex310 supre as respectivas unidades com energia a partir de uma bateria, de modo a ativar o telefone móvel digital equipado com câmera ex115 para um estado pronto.
[00232] No telefone móvel ex115, sob o controle da unidade de controle principal ex311, incluindo uma CPU, ROM, RAM e similares, a unidade de processamento de voz ex305 converte os sinais de voz recebidos pela unidade de inserção de voz ex205 em modo de conversação, para dados de voz digitais, a unidade de circuito de modem ex306 realiza processamento de espectro disperso dos dados de voz digitais e a unidade de circuito de envio/recebimento ex301 realiza conversão digital para analógica e transformação de freqüência dos dados, de modo a transmitir o resultado via antena ex201. Além disso, no telefone móvel ex115, os dados recebidos pela antena ex201 no modo de conversação, são amplificados e é realizada transformação de freqüência e conversão analógica para digital, a unidade de circuito de modem ex306 realiza processamento de espectro disperso inverso dos dados e a unidade de processamento de voz ex305, os converte para dados de voz analógicos, de modo a dar saída ao resultado via unidade de saída de voz ex208.
[00233] Além disso, quando da transmissão de um e-mail no modo de comunicação de dados, os dados de texto do e-mail inseridos por meio da operação das chaves de operação ex204 no corpo principal, são enviados para a unidade de controle principal ex311 via unidade de controle de inserção de operação ex304. Na unidade de controle principal ex311, depois de a unidade de circuito de modem ex306 realizar processamento de espectro disperso dos dados de texto e de a unidade de circuito de envio/recebimento ex301 realizar conversão digital para analógica e transformação de freqüência, o resultado é transmitido para a estação base ex110 via antena ex201.
Petição 870170091001, de 24/11/2017, pág. 61/76
58/62 [00234] Quando os dados de figura são transmitidos no modo de comunicação de dados, os dados de figura filmados pela unidade de câmera ex203, são fornecidos à unidade de codificação de figura ex312 via a unidade de interface de câmera ex303. Quando os dados de figura não são transmitidos, os dados de figura filmados pela unidade de câmera ex203 também podem ser exibidos diretamente na unidade de exibição 202, via unidade de interface de câmera ex303 e unidade de controle LCD ex302.
[00235] A unidade de codificação de figura ex312, incluindo o aparelho de codificação de figura explicado na presente invenção, comprime e codifica os dados de figura fornecidos a partir da unidade de câmera ex203 pelo método de codificação usado para o aparelho de codificação de figura, conforme mostrado nas modalidades mencionadas acima, de modo a transformá-los em dados de figura codificados e os envia para a unidade de multiplexação/desmultiplexação ex308. Neste momento, o telefone móvel ex115 envia as vozes recebidas pela unidade de inserção de voz ex205, durante a tomada da figura pela unidade de câmera ex203, para a unidade de multiplexação/desmultiplexação ex308, como dados digitais de voz via unidade de processamento de voz ex305.
[00236] A unidade de multiplexação/desmultiplexação ex308 multiplexa os dados de figura codificados fornecidos pela unidade de codificação de figura ex312 e os dados de voz fornecidos pela unidade de processamento de voz ex305, por um método predeterminado, a unidade de circuito de modem ex306 realiza processamento de espectro disperso dos dados multiplexados resultantes e a unidade de circuito de envio/recebimento ex301 realiza conversão digital para analógica e transformação de freqüência sobre o resultado para transmissão via antena ex201.
[00237] Quanto ao recebimento de dados de um arquivo de figura
Petição 870170091001, de 24/11/2017, pág. 62/76
59/62 em movimento, que esteja ligado a um Website ou similares, no modo de comunicação de dados, a unidade de circuito de modem ex306 realiza processamento de espectro disperso inverso dos dados recebidos da estação base ex110 via antena ex201 e envia os dados multiplexados resultantes para a unidade de multiplexação/desmultiplexação ex308.
[00238] De modo a decodificar os dados multiplexados recebidos via antena ex201, a unidade de multiplexação/desmultiplexação ex308 desmultiplexa os dados multiplexados em um fluxo de bits codificados de dados de figura e um fluxo de bits codificados de dados de voz, e fornece os dados de figura codificados para a unidade de decodificação de figura ex309 e os dados de voz para a unidade de processamento de voz ex305, respectivamente, via barramento síncrono ex313. [00239] A seguir, a unidade de decodificação de figura ex309, incluindo o aparelho de decodificação de figura explicado na presente invenção, decodifica o fluxo de bits codificado dos dados de figura por meio do método de decodificação emparelhado com o método de codificação, conforme mostrado nas modalidades mencionadas acima, de modo a gerar dados de figura em movimento reproduzidos, e fornece estes dados à unidade de exibição ex202 via unidade de controle LCD ex302 e assim, os dados de figura em movimento incluídos em um arquivo de figura em movimento ligado a um Website, por exemplo, são exibidos. Ao mesmo tempo, a unidade de processamento de voz ex305 converte os dados de voz para dados de voz analógicos e fornece estes dados para a unidade de saída de voz ex208 e, assim, dados de voz incluídos em um arquivo de figura em movimento ligado a um Website, por exemplo, são reproduzidos.
[00240] A presente invenção não está limitada ao sistema mencionado acima. Transmissão terrestre ou digital por satélite tem estado nos noticiários ultimamente, e pelo menos, ou o aparelho de codificaPetição 870170091001, de 24/11/2017, pág. 63/76
60/62 ção de figura ou o aparelho de decodificação de figura, nas modalidades mencionadas acima, pode ser incorporado em tal sistema de transmissão digital, conforme mostrado na Figura 22. Mais especificamente, um fluxo de bits codificados de informações de vídeo, é transmitido a partir de uma estação de transmissão ex409 para ou comunicado com um satélite de transmissão ex410, via ondas de rádio. Quando de sua recepção, o satélite de transmissão ex410 transmite ondas de rádio para transmissão, uma antena doméstica ex406 com uma função de recepção de satélite de transmissão recebe as ondas de rádio, e um aparelho, tal como uma televisão (receptor) ex401 ou uma caixa decodificadora (STB ex407 decodifica o fluxo de bits codificado para reprodução. O aparelho de decodificação de figura, conforme mostrado nas modalidades mencionadas acima, pode ser implementado no dispositivo de reprodução ex403 para ler um fluxo de bits codificado gravado em um meio de armazenamento ex402, tal como uma unidade de CD e DVD, que é um meio de gravação, e decodificálo. Neste caso, os sinais de vídeo reproduzidos são exibidos em um monitor ex404. Também é concebido implementar o aparelho de decodificação de figura na caixa decodificadora ex407 conectada a um cabo ex405 para uma televisão a cabo, ou antena ex406 para transmissão por satélite e/ou transmissão terrestre, de modo a reproduzi-los em um monitor ex408 da televisão. O aparelho de decodificação de figura pode ser incorporado na televisão, não na caixa decodificadora. Ou, um carro ex412 tendo uma antena ex411 pode receber sinais do satélite ex410, a estação base ex107 ou similares para reprodução de figuras em movimento em um aparelho de exibição, tal como um dispositivo de navegação do carro ex413 ou similares no carro ex412. [00241] Além disso, o aparelho de codificação de figura, conforme mostrado nas modalidades mencionadas acima, pode codificar sinais de figura para gravá-los em um meio de gravação. Como um exemplo
Petição 870170091001, de 24/11/2017, pág. 64/76
61/62 concreto, existe um gravador ex420, tal como um gravador de DVD, para gravar sinais de figura em um disco DVD ex421 e um gravador de disco para gravá-los em um disco rígido. Eles também podem ser registrados em um cartão SD ex422. Se o gravador ex420 incluir o aparelho de decodificação de figura, conforme mostrado nas modalidades mencionadas acima, os sinais de figura gravados no disco DVD ex421 ou cartão SD ex422, podem ser reproduzidos para exibição no monitor ex408.
[00242] Note que, como a estrutura do dispositivo de navegação do carro ex413, a estrutura sem a unidade de câmera ex203, a unidade de interface de câmera ex303 e a unidade de codificação de figura ex312, dentre as unidades, conforme mostrado na Figura 21, são concebíveis. O mesmo se aplica ao computador ex111, à televisão (receptor) ex401 e outros.
[00243] Em adição, três tipos de implementações podem ser concebidas para um terminal, tal como o telefone móvel ex114 mencionado acima; um terminal de envio/recebimento equipado tanto com um codificador quanto com um decodificador, um terminal de envio equipado apenas com um codificador e um terminal de recepção equipado apenas com um decodificador.
[00244] Conforme descrito acima, é possível usar o método de codificação de vetor de movimento ou o método de decodificação de vetor de movimento, conforme mostrado nas modalidades acima, em qualquer dos dispositivos e sistemas mencionados acima e, assim, os efeitos explicados nas modalidades acima podem ser obtidos. APLICABILIDADE INDUSTRIAL [00245] O método de codificação de vetor de movimento e o método de decodificação de vetor de movimento, de acordo com a presente invenção, são adequados para uso em um aparelho de codificação de figura em movimento para codificar figuras em movimento, um aparePetição 870170091001, de 24/11/2017, pág. 65/76
62/62
Iho de decodificação de figura em movimento para decodificar figuras em movimento codificadas e um sistema que inclua estes aparelhos, tal como um sistema de provisão de conteúdo para fornecer conteúdo, como trabalhos digitais, por exemplo, e um sistema de transmissão digital.
Petição 870170091001, de 24/11/2017, pág. 66/76
1/7
Claims (18)
- REIVINDICAÇÕES1. Método de codificação de vetor de movimento para a codificação de um vetor de movimento de um bloco atual em uma figura em movimento, compreendendo:uma etapa de especificação de bloco vizinho (S100) para especificar um bloco vizinho que está localizado na vizinhança do bloco atual e já foi codificado; o referido método caracterizado pelo fato de compreender ainda:uma etapa de julgamento (S104) para julgar se o bloco vizinho foi ou não codificado usando um vetor de movimento de um outro bloco;uma etapa de predição (S106) para derivar um vetor de movimento preditivo do bloco atual, usando um vetor de movimento calculado a partir do vetor de movimento do dito um outro bloco, como um vetor de movimento do bloco vizinho, quando se julga, na etapa de julgamento, se o bloco vizinho foi codificado usando o vetor de movimento do dito um outro bloco; e uma etapa de codificação (S110) para codificar uma diferença entre um vetor de movimento do bloco atual e o vetor de movimento preditivo.
- 2. Método de codificação de vetor de movimento, de acordo com a reivindicação 1, caracterizado pelo fato de que o bloco vizinho que é julgado como tendo sido codificado usando o vetor de movimento do dito um outro bloco na etapa de julgamento, inclui um bloco vizinho que foi codificado usando um vetor de movimento calculado a partir de um vetor de movimento de um outro bloco localizado temporariamente na frente e atrás do bloco vizinho.
- 3. Método de codificação de vetor de movimento, de acordo com a reivindicação 1, caracterizado pelo fato de que o bloco vizinho que é julgado como tendo sido codificado usando o vetor de movimenPetição 870170091001, de 24/11/2017, pág. 67/762/7 to do dito um outro bloco na etapa de julgamento, inclui um bloco vizinho que foi codificado usando um vetor de movimento calculado a partir de um vetor de movimento de um outro bloco na figura, incluindo o bloco vizinho.
- 4. Método de codificação de vetor de movimento, de acordo com a reivindicação 1, caracterizado pelo fato de compreender adicionalmente uma etapa de armazenamento para armazenar antecipadamente, o vetor de movimento calculado a partir do vetor de movimento do dito um outro bloco, quando o bloco vizinho é codificado usando o vetor de movimento do dito um outro bloco, em que, na etapa de predição, o vetor de movimento preditivo é derivado usando o vetor de movimento armazenado na etapa de armazenamento como o vetor de movimento do bloco vizinho, quando se julga, na etapa de julgamento, se o bloco vizinho foi codificado usando o vetor de movimento do dito um outro bloco.
- 5. Método de codificação de vetor de movimento, de acordo com a reivindicação 1, caracterizado pelo fato de compreender adicionalmente uma etapa de armazenamento, para armazenar antecipadamente o vetor de movimento do dito um outro bloco para codificar o bloco vizinho, em que, na etapa de predição, o vetor de movimento usado como o vetor de movimento do bloco vizinho, é calculado a partir do vetor de movimento armazenado na etapa de armazenamento e o vetor de movimento preditivo é derivado do dito vetor de movimento calculado, quando se julga, na etapa de julgamento, se o bloco vizinho foi codificado usando o vetor de movimento do dito um outro bloco.
- 6. Método de codificação de vetor de movimento, de acordo com a reivindicação 1, caracterizado pelo fato de que, em um caso onde o dito um outro bloco tem dois vetores de movimento, o vetor de movimento preditivo é derivado, na direção temporariamente para frente e na direção temporariamente para trás, separadamente, na etapaPetição 870170091001, de 24/11/2017, pág. 68/763/7 de predição, e o vetor de movimento do bloco atual é codificado na direção temporariamente para frente e na direção temporariamente para trás, separadamente, na etapa de codificação.
- 7. Método de codificação de vetor de movimento, de acordo com a reivindicação 1, caracterizado pelo fato de que, em um caso onde o dito um outro bloco tem um vetor de movimento especificado na direção temporariamente para frente e um vetor de movimento especificado na direção temporariamente para trás, sendo que o vetor de movimento preditivo que inclui dois vetores de movimento de predição, é derivado na etapa de predição, um na direção temporariamente para frente e o outro na direção temporariamente para trás, separadamente, e o vetor de movimento do bloco atual, incluindo dois vetores de movimento, é codificado na etapa de codificado, um na direção temporariamente para frente e o outro na direção temporariamente para trás, separadamente.
- 8. Método de decodificação de vetor de movimento para decodificar um vetor de movimento codificado de um bloco atual em uma figura em movimento, compreendendo:uma etapa de especificação de bloco vizinho (S200), para especificar um bloco vizinho que está localizado na vizinhança do bloco atual e já foi decodificado, o referido método caracterizado pelo fato de compreender ainda uma etapa de julgamento (S204), para julgar se o bloco vizinho foi codificado ou não usando um vetor de movimento de um outro bloco;uma etapa de predição (S206), para derivar um vetor de movimento preditivo do bloco atual, usando um vetor de movimento calculado a partir do vetor de movimento do dito um outro bloco como um vetor de movimento do bloco vizinho, quando se julga, na etapa de julgamento, se o bloco vizinho foi codificado usando o vetor de moviPetição 870170091001, de 24/11/2017, pág. 69/764/7 mento do dito um outro bloco; e uma etapa de decodificação (S210), para decodificar o vetor de movimento codificado do bloco atual adicionando o vetor preditivo a uma diferença derivada de um fluxo de bits.
- 9. Método de decodificação de vetor de movimento, de acordo com a reivindicação 8, caracterizado pelo fato de que o bloco vizinho que é julgado como tendo sido codificado usando o vetor de movimento do dito um outro bloco na etapa de julgamento, inclui um bloco vizinho que foi codificado usando um vetor de movimento calculado a partir de um vetor de movimento de um outro bloco localizado temporariamente na frente ou atrás do bloco vizinho.
- 10. Método de decodificação de vetor de movimento, de acordo com a reivindicação 8, caracterizado pelo fato de que o bloco vizinho que é julgado como tendo sido codificado usando o vetor de movimento do dito um outro bloco na etapa de julgamento, inclui um bloco vizinho que foi codificado usando um vetor de movimento calculado a partir de um vetor de movimento de um outro bloco na figura que inclui o bloco vizinho.
- 11. Método de decodificação de vetor de movimento, de acordo com a reivindicação 8, caracterizado pelo fato de que compreende adicionalmente uma etapa de armazenamento para armazenar, antecipadamente, o vetor de movimento calculado a partir do vetor de movimento do dito um outro bloco, quando o bloco vizinho é decodificado usando o vetor de movimento do dito um outro bloco, em que, na etapa de predição, o vetor de movimento preditivo é derivado usando o vetor de movimento armazenado na etapa de armazenamento como o vetor de movimento do bloco vizinho, quando se julga, na etapa de julgamento, se o bloco vizinho foi codificado usando o vetor de movimento do dito um outro bloco.
- 12. Método de decodificação de vetor de movimento, dePetição 870170091001, de 24/11/2017, pág. 70/765/7 acordo com a reivindicação 8, caracterizado pelo fato de que compreende adicionalmente uma etapa de armazenamento, para armazenar antecipadamente o vetor de movimento do dito um outro bloco usado para decodificar o bloco vizinho, em que, na etapa de predição, o vetor de movimento usado como o vetor de movimento do bloco vizinho é calculado a partir do vetor de movimento armazenado na etapa de armazenamento e o vetor de movimento preditivo é derivado do dito vetor de movimento calculado, quando se julga, na etapa de julgamento, se o bloco vizinho foi codificado usando o vetor de movimento do dito um outro bloco.
- 13. Método de decodificação de vetor de movimento, de acordo com a reivindicação 8, caracterizado pelo fato de que, em um caso onde o dito um outro bloco tem dois vetores de movimento, o vetor de movimento preditivo é derivado na direção temporariamente para frente e na direção temporariamente para trás, separadamente na etapa de predição, e o vetor de movimento codificado do bloco atual é decodificado na direção temporariamente para frente e na direção temporariamente para trás, separadamente na etapa de decodificação.
- 14. Método de decodificação de vetor de movimento, de acordo com a reivindicação 8, caracterizado pelo fato de que em um caso onde o dito um outro bloco tem um vetor de movimento especificado na direção temporariamente para frente e um vetor de movimento especificado na direção temporariamente para trás, o vetor de movimento preditivo incluindo dois vetores de movimento de predição, é derivado na etapa de predição, um na direção temporariamente para frente e o outro na direção temporariamente para trás separadamente, e o vetor de movimento codificado do bloco atual, incluindo dois vetores de movimento, é decodificado na etapa de decodificação, um na direção temporariamente para frente e o outro na direção temporariamente para trás, separadamente.Petição 870170091001, de 24/11/2017, pág. 71/766/7
- 15. Aparelho de codificação de vetor de movimento (117) para a codificação de um vetor de movimento de um bloco atual em uma figura em movimento, compreendendo:uma unidade de especificação de bloco vizinho operável de modo a especificar um bloco vizinho que está localizado na vizinhança do bloco atual e já foi codificado; o referido aparelho caracterizado pelo fato de compreender ainda uma unidade de julgamento operável para julgar se o bloco vizinho foi ou não codificado usando um vetor de movimento de um outro bloco;uma unidade de predição operável de modo a derivar um vetor de movimento preditivo do bloco atual usando um vetor de movimento calculado a partir do vetor de movimento do dito um outro bloco, como um vetor de movimento do bloco vizinho, quando a unidade de julgamento julga se o bloco vizinho foi codificado usando o vetor de movimento do dito um outro bloco; e uma unidade de codificação operável para codificar uma diferença entre um vetor de movimento do bloco atual e o vetor de movimento preditivo.
- 16. Aparelho de codificação de figura em movimento para a codificação de uma figura em movimento, caracterizado pelo fato de que compreende:o aparelho de codificação de vetor de movimento, de acordo com a reivindicação 15; e uma unidade de codificação de figura, operável de modo a codificar a figura correspondente ao vetor de movimento que foi codificado pelo dito aparelho de codificação de vetor de movimento.
- 17. Aparelho de decodificação de vetor de movimento (711), para a decodificação de um vetor de movimento codificado de um bloco atual em uma figura em movimento, compreendendo:Petição 870170091001, de 24/11/2017, pág. 72/767/7 uma unidade de especificação de bloco vizinho, operável de modo a especificar um bloco vizinho que está localizado na vizinhança do bloco atual e já foi codificado, o referido aparelho caracterizado pelo fato de compreender ainda uma unidade de julgamento operável de modo a julgar se o bloco vizinho foi codificado ou não usando um vetor de movimento de um outro bloco;uma unidade de predição operável de modo a derivar um vetor de movimento preditivo do bloco atual, usando um vetor de movimento calculado a partir do vetor de movimento do dito um outro bloco como um vetor de movimento do bloco vizinho, quando a unidade de julgamento julga se o bloco vizinho foi codificado usando o vetor de movimento do dito um outro bloco; e uma unidade de decodificação, operável de modo a decodificar o vetor de movimento codificado do bloco atual adicionando o vetor preditivo a uma diferença derivada de um fluxo de bits.
- 18. Aparelho de decodificação de figura em movimento para a decodificação de uma figura em movimento codificada, caracterizado pelo fato de compreender ainda:o aparelho de decodificação de vetor de movimento, de acordo com a reivindicação 17, e uma unidade de decodificação de figura, operável de modo a decodificar a figura codificada correspondente ao vetor de movimento que foi decodificado pelo dito aparelho de decodificação de vetor de movimento.Petição 870170091001, de 24/11/2017, pág. 73/76 • 0 ♦1/22 • « ·
Applications Claiming Priority (7)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP001983/2002 | 2002-01-09 | ||
| JP2002001983 | 2002-01-09 | ||
| JP204714/2002 | 2002-07-12 | ||
| JP2002204714 | 2002-07-12 | ||
| JP346062/2002 | 2002-11-28 | ||
| JP2002346062A JP4114859B2 (ja) | 2002-01-09 | 2002-11-28 | 動きベクトル符号化方法および動きベクトル復号化方法 |
| PCT/JP2003/000055 WO2003061297A1 (en) | 2002-01-09 | 2003-01-08 | Motion vector coding method and motion vector decoding method |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| BRPI0302580B1 true BRPI0302580B1 (pt) | 2018-02-27 |
Family
ID=27348065
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| BRPI0302580-2A BRPI0302580B1 (pt) | 2002-01-09 | 2003-01-08 | Método de codificação de vetor de movimento, método de decodificação de vetor de movimento, aparelho de codificação de vetor de movimento, aparelho de decodificação de vetor de movimento |
| BR0302580-2A BR0302580A (pt) | 2002-01-09 | 2003-01-08 | Método de codificação de vetor de movimento e método de decodificação de vetor de movimento |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| BR0302580-2A BR0302580A (pt) | 2002-01-09 | 2003-01-08 | Método de codificação de vetor de movimento e método de decodificação de vetor de movimento |
Country Status (18)
| Country | Link |
|---|---|
| US (22) | US7362807B2 (pt) |
| EP (12) | EP2249576B1 (pt) |
| JP (1) | JP4114859B2 (pt) |
| KR (4) | KR100923379B1 (pt) |
| CN (1) | CN1295934C (pt) |
| AT (1) | ATE493846T1 (pt) |
| AU (1) | AU2003201906B2 (pt) |
| BR (2) | BRPI0302580B1 (pt) |
| CA (3) | CA2438295C (pt) |
| CY (5) | CY1114052T1 (pt) |
| DE (1) | DE60335516D1 (pt) |
| DK (12) | DK2249577T3 (pt) |
| ES (11) | ES2408013T3 (pt) |
| HU (2) | HUE031077T2 (pt) |
| MX (1) | MXPA03007629A (pt) |
| PT (11) | PT2249573E (pt) |
| SI (5) | SI2249570T1 (pt) |
| WO (1) | WO2003061297A1 (pt) |
Families Citing this family (96)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6765964B1 (en) | 2000-12-06 | 2004-07-20 | Realnetworks, Inc. | System and method for intracoding video data |
| KR100424762B1 (ko) * | 2001-09-06 | 2004-03-30 | 삼성전자주식회사 | 영상 데이터 제공 시스템 및 방법 |
| USRE50574E1 (en) | 2002-01-09 | 2025-09-02 | Dolby International Ab | Motion vector coding method and motion vector decoding method |
| US7003035B2 (en) * | 2002-01-25 | 2006-02-21 | Microsoft Corporation | Video coding methods and apparatuses |
| US20040001546A1 (en) | 2002-06-03 | 2004-01-01 | Alexandros Tourapis | Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation |
| KR100906473B1 (ko) * | 2002-07-18 | 2009-07-08 | 삼성전자주식회사 | 개선된 움직임 벡터 부호화 및 복호화 방법과 그 장치 |
| US7154952B2 (en) | 2002-07-19 | 2006-12-26 | Microsoft Corporation | Timestamp-independent motion vector prediction for predictive (P) and bidirectionally predictive (B) pictures |
| US20040134390A1 (en) | 2003-01-09 | 2004-07-15 | Rehrig Pacific Company | Nestable pallet |
| NO318318B1 (no) * | 2003-06-27 | 2005-02-28 | Tandberg Telecom As | Fremgangsmate for forbedret koding av video |
| US7609763B2 (en) * | 2003-07-18 | 2009-10-27 | Microsoft Corporation | Advanced bi-directional predictive coding of video frames |
| US8064520B2 (en) * | 2003-09-07 | 2011-11-22 | Microsoft Corporation | Advanced bi-directional predictive coding of interlaced video |
| FR2860678A1 (fr) * | 2003-10-01 | 2005-04-08 | Thomson Licensing Sa | Procede de codage differentiel |
| US7480334B2 (en) * | 2003-12-23 | 2009-01-20 | Genesis Microchip Inc. | Temporal motion vector filtering |
| JP3879741B2 (ja) * | 2004-02-25 | 2007-02-14 | ソニー株式会社 | 画像情報符号化装置および画像情報符号化方法 |
| MXPA06014690A (es) | 2004-07-07 | 2007-03-12 | Dow Global Technologies Inc | Proceso en multiples etapas para producir composiciones de polimeros de etileno. |
| US20060012719A1 (en) * | 2004-07-12 | 2006-01-19 | Nokia Corporation | System and method for motion prediction in scalable video coding |
| KR100584603B1 (ko) | 2004-08-03 | 2006-05-30 | 학교법인 대양학원 | 다시점 영상의 다이렉트 모드 움직임 예측 방법 및 장치 |
| KR101104828B1 (ko) * | 2004-12-09 | 2012-01-16 | 삼성전자주식회사 | 움직임 벡터 연산 장치 및 그 방법 |
| US7728909B2 (en) * | 2005-06-13 | 2010-06-01 | Seiko Epson Corporation | Method and system for estimating motion and compensating for perceived motion blur in digital video |
| JP2007028393A (ja) * | 2005-07-20 | 2007-02-01 | Matsushita Electric Ind Co Ltd | 双方向予測符号化ピクチャの直接モードブロックの動きベクトルを求める方法 |
| JP4879558B2 (ja) * | 2005-11-02 | 2012-02-22 | パナソニック株式会社 | 動きベクトル検出装置 |
| US8315308B2 (en) * | 2006-01-11 | 2012-11-20 | Qualcomm Incorporated | Video coding with fine granularity spatial scalability |
| US7644666B2 (en) | 2006-02-09 | 2010-01-12 | Rehrig Pacific Company | Pallet |
| US20070274396A1 (en) * | 2006-05-26 | 2007-11-29 | Ximin Zhang | Complexity adaptive skip mode estimation for video encoding |
| EP2090113A4 (en) * | 2006-11-07 | 2014-08-20 | Samsung Electronics Co Ltd | METHOD AND DEVICE FOR VIDEO CODING AND DECODING BASED ON MOTION ESTIMATION |
| KR101383540B1 (ko) | 2007-01-03 | 2014-04-09 | 삼성전자주식회사 | 복수의 움직임 벡터 프리딕터들을 사용하여 움직임 벡터를추정하는 방법, 장치, 인코더, 디코더 및 복호화 방법 |
| KR100968204B1 (ko) * | 2007-01-11 | 2010-07-06 | 전자부품연구원 | 다시점 비디오 코덱에서의 영상 예측 방법 및 이를 위한프로그램을 기록한 컴퓨터로 판독 가능한 기록매체 |
| TWI373696B (en) * | 2007-04-04 | 2012-10-01 | Mstar Semiconductor Inc | Methods of calculating a motion estimation value and estimating a motion vector of an image |
| US20080247466A1 (en) * | 2007-04-09 | 2008-10-09 | Jian Wang | Method and system for skip mode detection |
| BRPI0809512A2 (pt) * | 2007-04-12 | 2016-03-15 | Thomson Licensing | método e aparelho para mesclagem dependente de contexto para modos salto-direto para codificação e decodificação de vídeo |
| WO2008153262A1 (en) | 2007-06-15 | 2008-12-18 | Sungkyunkwan University Foundation For Corporate Collaboration | Bi-prediction coding method and apparatus, bi-prediction decoding method and apparatus, and recording midium |
| KR100955396B1 (ko) * | 2007-06-15 | 2010-04-29 | 성균관대학교산학협력단 | 양-예측 부호화 방법 및 장치, 양-예측 복호화 방법 및장치 및 기록매체 |
| US8254455B2 (en) * | 2007-06-30 | 2012-08-28 | Microsoft Corporation | Computing collocated macroblock information for direct mode macroblocks |
| CN100583649C (zh) * | 2007-07-23 | 2010-01-20 | 华为技术有限公司 | 矢量编/解码方法、装置及流媒体播放器 |
| JP2009055519A (ja) * | 2007-08-29 | 2009-03-12 | Sony Corp | 符号化処理装置、符号化処理方法、復号処理装置、及び、復号処理方法 |
| KR101560182B1 (ko) | 2008-01-07 | 2015-10-15 | 삼성전자주식회사 | 다시점 비디오 부호화 방법과 그 장치 및 다시점 비디오 복호화 방법과 그 장치 |
| KR101524465B1 (ko) | 2008-01-10 | 2015-06-02 | 삼성전자주식회사 | 색차 보상을 이용한 다시점 비디오 부호화 방법과 그 장치 및 다시점 비디오 복호화 방법과 그 장치 |
| JP5194833B2 (ja) * | 2008-01-23 | 2013-05-08 | ソニー株式会社 | 符号化装置および方法、記録媒体、並びにプログラム |
| JP5322956B2 (ja) * | 2008-01-29 | 2013-10-23 | パナソニック株式会社 | 画像符号化装置および画像符号化方法 |
| CN102016975A (zh) | 2008-03-28 | 2011-04-13 | 寇平公司 | 适合用作移动式互联网装置的具有高分辨率显示器的手持式无线显示装置 |
| US8165211B2 (en) * | 2008-05-30 | 2012-04-24 | Hong Kong Applied Science and Technology Research Institute Company Limited | Method and apparatus of de-interlacing video |
| US8189666B2 (en) | 2009-02-02 | 2012-05-29 | Microsoft Corporation | Local picture identifier and computation of co-located information |
| TWI405469B (zh) * | 2009-02-20 | 2013-08-11 | Sony Corp | Image processing apparatus and method |
| JP5083248B2 (ja) * | 2009-03-05 | 2012-11-28 | 富士通セミコンダクター株式会社 | 画像データ復号演算装置 |
| US9113168B2 (en) * | 2009-05-12 | 2015-08-18 | Lg Electronics Inc. | Method and apparatus of processing a video signal |
| ES3058729T3 (en) | 2009-06-18 | 2026-03-12 | Toshiba Kk | Video encoding |
| AU2009348128B2 (en) * | 2009-06-18 | 2014-05-15 | Kabushiki Kaisha Toshiba | Dynamic Image Encoding Device |
| US8917769B2 (en) | 2009-07-03 | 2014-12-23 | Intel Corporation | Methods and systems to estimate motion based on reconstructed reference frames at a video decoder |
| US9654792B2 (en) | 2009-07-03 | 2017-05-16 | Intel Corporation | Methods and systems for motion vector derivation at a video decoder |
| US8462852B2 (en) | 2009-10-20 | 2013-06-11 | Intel Corporation | Methods and apparatus for adaptively choosing a search range for motion estimation |
| US20110002387A1 (en) * | 2009-07-03 | 2011-01-06 | Yi-Jen Chiu | Techniques for motion estimation |
| KR101768207B1 (ko) | 2010-01-19 | 2017-08-16 | 삼성전자주식회사 | 축소된 예측 움직임 벡터의 후보들에 기초해 움직임 벡터를 부호화, 복호화하는 방법 및 장치 |
| AU2015201666C1 (en) * | 2010-01-19 | 2017-04-27 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding and decoding motion vector based on reduced motion vector predictor candidates |
| CN104967857B (zh) | 2010-01-19 | 2019-08-23 | 三星电子株式会社 | 对图像进行编码/解码的方法和设备 |
| US8354548B2 (en) * | 2010-02-19 | 2013-01-15 | Bristol-Myers Squibb Company | Glycine chroman-6-sulfonamides for use as inhibitors of diacylglycerol lipase |
| TW201143457A (en) * | 2010-04-01 | 2011-12-01 | Sony Corp | Image processing device and method |
| KR102233820B1 (ko) * | 2010-05-26 | 2021-03-29 | 엘지전자 주식회사 | 비디오 신호의 처리 방법 및 장치 |
| US9300970B2 (en) | 2010-07-09 | 2016-03-29 | Samsung Electronics Co., Ltd. | Methods and apparatuses for encoding and decoding motion vector |
| KR101456499B1 (ko) * | 2010-07-09 | 2014-11-03 | 삼성전자주식회사 | 움직임 벡터의 부호화 방법 및 장치, 그 복호화 방법 및 장치 |
| US10013976B2 (en) | 2010-09-20 | 2018-07-03 | Kopin Corporation | Context sensitive overlays in voice controlled headset computer displays |
| KR101815723B1 (ko) | 2010-09-24 | 2018-01-05 | 선 페이턴트 트러스트 | 화상 부호화 방법, 화상 복호화 방법, 화상 부호화 장치, 및 화상 복호화 장치 |
| MX2013003694A (es) * | 2010-09-30 | 2013-04-24 | Mitsubishi Electric Corp | Dispositivo de codificacion de imagen en movimiento, dispositivo de decodificacion de imagen en movimiento, metodo de codificacion de imagen en movimiento y metodo de decodificacion de imagen en movimiento. |
| JP5195875B2 (ja) * | 2010-11-10 | 2013-05-15 | ソニー株式会社 | 復号装置及び方法、記録媒体、並びにプログラム |
| CN103069804B (zh) * | 2010-11-24 | 2017-05-03 | 太阳专利托管公司 | 运动矢量计算方法、图像解码方法、运动矢量计算装置及图像解码装置 |
| US8711940B2 (en) * | 2010-11-29 | 2014-04-29 | Mediatek Inc. | Method and apparatus of motion vector prediction with extended motion vector predictor |
| CN108848379A (zh) | 2010-12-07 | 2018-11-20 | 韩国电子通信研究院 | 视频编解码方法、生成比特流的方法和存储比特流的介质 |
| CN105611298B (zh) | 2010-12-13 | 2019-06-18 | 韩国电子通信研究院 | 利用解码设备执行的帧间预测方法 |
| US8781165B2 (en) * | 2010-12-14 | 2014-07-15 | The United States Of America As Represented By The Secretary Of The Navy | Method and apparatus for displacement determination by motion compensation |
| US9547911B2 (en) | 2010-12-14 | 2017-01-17 | The United States Of America, As Represented By The Secretary Of The Navy | Velocity estimation from imagery using symmetric displaced frame difference equation |
| KR101422422B1 (ko) | 2010-12-21 | 2014-07-23 | 인텔 코오퍼레이션 | Dmvd 처리 향상을 위한 시스템 및 방법 |
| KR101377528B1 (ko) | 2011-01-15 | 2014-03-27 | 에스케이텔레콤 주식회사 | 움직임 벡터 부호화/복호화 방법 및 장치 |
| WO2012096551A2 (ko) * | 2011-01-15 | 2012-07-19 | 에스케이텔레콤 주식회사 | 움직임 벡터 부호화/복호화 방법 및 장치 |
| EP2666297A4 (en) * | 2011-01-19 | 2016-01-27 | Mediatek Inc | METHOD AND DEVICE FOR PARSING THE ERROR RESISTANCE OF ANTICIPATING TEMPORARY MOTION VECTORS |
| US9749657B2 (en) | 2011-01-21 | 2017-08-29 | Sharp Kabushiki Kaisha | Buffer compression for motion vector competition |
| MX2013008691A (es) * | 2011-02-10 | 2013-08-21 | Panasonic Corp | Metodo de codificacion de imagenes en movimiento, aparato de codificacion de imagenes en movimiento, metodo de decodificacion de imagenes en movimiento, aparato de decodificacion de imagenes en movimiento y aparato de codificacion y decodificacion de imagenes en movimiento. |
| PL3937497T3 (pl) * | 2011-03-21 | 2023-07-17 | Lg Electronics, Inc. | Wybieranie predyktora wektora ruchu |
| US9648334B2 (en) | 2011-03-21 | 2017-05-09 | Qualcomm Incorporated | Bi-predictive merge mode based on uni-predictive neighbors in video coding |
| WO2012140904A1 (ja) * | 2011-04-15 | 2012-10-18 | パナソニック株式会社 | 画像圧縮装置、画像圧縮方法、集積回路、プログラムおよび映像表示装置 |
| TWI526056B (zh) * | 2011-04-27 | 2016-03-11 | Jvc Kenwood Corp | A moving picture coding apparatus, a motion picture coding method, a motion picture coding program, a transmission apparatus, a transmission method, a transmission program, a video decoding apparatus, a video decoding method, a video decoding program, a reception device, a reception method, Receiving program |
| WO2012147344A1 (ja) | 2011-04-27 | 2012-11-01 | 株式会社Jvcケンウッド | 動画像復号装置、動画像復号方法、及び動画像復号プログラム |
| CN103620527B (zh) | 2011-05-10 | 2018-08-17 | 寇平公司 | 使用动作和语音命令来控制信息显示和远程设备的头戴式计算机 |
| KR101539312B1 (ko) | 2011-05-27 | 2015-07-24 | 미디어텍 인크. | 비디오 프로세싱에 대한 라인 버퍼 감소를 위한 방법 및 장치 |
| KR20130030181A (ko) * | 2011-09-16 | 2013-03-26 | 한국전자통신연구원 | 움직임 벡터 예측기를 이용한 움직임 벡터 부호화/복호화 방법 및 장치 |
| US8929954B2 (en) | 2012-04-25 | 2015-01-06 | Kopin Corporation | Headset computer (HSC) as auxiliary display with ASR and HT input |
| CN102946535B (zh) * | 2012-10-09 | 2015-05-13 | 华为技术有限公司 | 预测块的视差矢量预测值获取的方法和装置 |
| KR101676788B1 (ko) * | 2014-10-17 | 2016-11-16 | 삼성전자주식회사 | 멀티코어 시스템 기반 비디오 병렬 복호화 방법 및 그 장치 |
| EP3278558B1 (en) | 2015-03-31 | 2021-07-21 | RealNetworks, Inc. | Motion vector selection and prediction in video coding systems and methods |
| CN105163123B (zh) * | 2015-09-06 | 2018-02-13 | 福州瑞芯微电子股份有限公司 | 一种hevc帧间预测子块mv信息的存取方法和装置 |
| US10652569B2 (en) | 2015-12-22 | 2020-05-12 | Realnetworks, Inc. | Motion vector selection and prediction in video coding systems and methods |
| JP6356762B2 (ja) * | 2016-10-31 | 2018-07-11 | 株式会社東芝 | 動画像符号化装置及び方法 |
| US20180184107A1 (en) * | 2016-12-28 | 2018-06-28 | Novatek Microelectronics Corp. | Motion estimation method and motion estimation apparatus |
| CN117425006A (zh) * | 2017-03-22 | 2024-01-19 | 韩国电子通信研究院 | 使用参考块的预测方法和装置 |
| SG11202007843YA (en) * | 2018-03-19 | 2020-10-29 | Qualcomm Inc | Improvements to advanced temporal motion vector prediction |
| US10469869B1 (en) * | 2018-06-01 | 2019-11-05 | Tencent America LLC | Method and apparatus for video coding |
| EP3648059B1 (en) * | 2018-10-29 | 2021-02-24 | Axis AB | Video processing device and method for determining motion metadata for an encoded video |
| US20250211779A1 (en) * | 2022-03-31 | 2025-06-26 | Mediatek Inc. | Bilateral template with multipass decoder side motion vector refinement |
Family Cites Families (45)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US2002017A (en) * | 1931-03-21 | 1935-05-21 | Bendix Brake Co | Brake |
| FR2644779A1 (fr) * | 1989-03-22 | 1990-09-28 | Centre Nat Rech Scient | Composition ceramique a constante dielectrique elevee |
| EP0535746B1 (en) * | 1991-09-30 | 1997-01-29 | Philips Electronics Uk Limited | Motion vector estimation, motion picture encoding and storage |
| ES2159553T3 (es) | 1993-03-24 | 2001-10-16 | Sony Corp | Metodo y aparato para codificar/descodificar un vector de movimiento, y metodo y aparato para codificar/descodificar una señal de imagen. |
| JPH0730896A (ja) | 1993-06-25 | 1995-01-31 | Matsushita Electric Ind Co Ltd | 動きベクトル符号化及び復号化方法 |
| FR2725577B1 (fr) * | 1994-10-10 | 1996-11-29 | Thomson Consumer Electronics | Procede de codage ou de decodage de vecteurs mouvement et dispositif de codage ou de decodage mettant en oeuvre ledit procede |
| EP1274252A3 (en) | 1995-08-29 | 2005-10-05 | Sharp Kabushiki Kaisha | Video coding device and video decoding device with a motion compensated interframe prediction |
| JP2001224036A (ja) | 1995-10-18 | 2001-08-17 | Sharp Corp | 動画像符号化装置 |
| KR0181069B1 (ko) * | 1995-11-08 | 1999-05-01 | 배순훈 | 움직임 추정장치 |
| JP3263807B2 (ja) | 1996-09-09 | 2002-03-11 | ソニー株式会社 | 画像符号化装置および画像符号化方法 |
| JP3344577B2 (ja) | 1996-09-09 | 2002-11-11 | ソニー株式会社 | 画像符号化装置および画像符号化方法、画像復号化装置および画像復号化方法、並びに記録方法 |
| US6005980A (en) * | 1997-03-07 | 1999-12-21 | General Instrument Corporation | Motion estimation and compensation of video object planes for interlaced digital video |
| US5991447A (en) * | 1997-03-07 | 1999-11-23 | General Instrument Corporation | Prediction and coding of bi-directionally predicted video object planes for interlaced digital video |
| TW563265B (en) * | 1998-02-18 | 2003-11-21 | Murata Manufacturing Co | Piezoelectric ceramic composition |
| TW429636B (en) * | 1998-02-18 | 2001-04-11 | Murata Manufacturing Co | Piezoelectric ceramic composition |
| EP0940774A3 (en) * | 1998-03-05 | 2000-07-05 | Matsushita Electric Industrial Co., Ltd. | Motion vector coding and decoding apparatus and method |
| JPH11317961A (ja) | 1998-03-05 | 1999-11-16 | Matsushita Electric Ind Co Ltd | 画像符号化装置及び画像復号化装置,画像符号化方法及び画像復号化方法,並びにデ―タ記憶媒体 |
| JP2000099864A (ja) | 1998-09-21 | 2000-04-07 | Yoshitaka Kurita | 介護者支援装置 |
| US6983018B1 (en) | 1998-11-30 | 2006-01-03 | Microsoft Corporation | Efficient motion vector coding for video compression |
| JP2000299864A (ja) | 1999-04-12 | 2000-10-24 | Canon Inc | 動画像処理方法 |
| JP2000299684A (ja) * | 1999-04-12 | 2000-10-24 | Telecommunication Advancement Organization Of Japan | データ通信システム |
| US7885340B2 (en) * | 1999-04-27 | 2011-02-08 | Realnetworks, Inc. | System and method for generating multiple synchronized encoded representations of media data |
| CN1147159C (zh) * | 1999-04-27 | 2004-04-21 | 三星电子株式会社 | 实时运动图像编码的高速运动估计方法及其装置 |
| EP1056293A1 (en) * | 1999-05-25 | 2000-11-29 | Deutsche Thomson-Brandt Gmbh | Method and apparatus for block motion estimation |
| EP1142343A1 (en) * | 1999-10-29 | 2001-10-10 | Koninklijke Philips Electronics N.V. | Video encoding method |
| US6671319B1 (en) * | 1999-12-28 | 2003-12-30 | Sony Corporation | Methods and apparatus for motion estimation using neighboring macroblocks |
| KR100680452B1 (ko) * | 2000-02-22 | 2007-02-08 | 주식회사 팬택앤큐리텔 | 움직임 벡터 메모리의 갱신방법 및 장치 |
| KR100708091B1 (ko) * | 2000-06-13 | 2007-04-16 | 삼성전자주식회사 | 양방향 움직임 벡터를 이용한 프레임 레이트 변환 장치 및그 방법 |
| US8005145B2 (en) * | 2000-08-11 | 2011-08-23 | Nokia Corporation | Method and apparatus for transferring video frame in telecommunication system |
| US6842483B1 (en) * | 2000-09-11 | 2005-01-11 | The Hong Kong University Of Science And Technology | Device, method and digital video encoder for block-matching motion estimation |
| US7327787B1 (en) * | 2000-11-20 | 2008-02-05 | Intel Corporation | Method and apparatus for motion estimation |
| JP2004532540A (ja) * | 2001-03-05 | 2004-10-21 | インタービデオインコーポレイテッド | 誤り耐性のある符号化のためのシステム及び方法 |
| KR100378795B1 (ko) * | 2001-04-02 | 2003-04-03 | 엘지전자 주식회사 | 동영상에서 b픽쳐의 신축적인 다이렉트 모드 코딩 방법 |
| US8111754B1 (en) * | 2001-07-11 | 2012-02-07 | Dolby Laboratories Licensing Corporation | Interpolation of video compression frames |
| US6980596B2 (en) | 2001-11-27 | 2005-12-27 | General Instrument Corporation | Macroblock level adaptive frame/field coding for digital video content |
| US7003035B2 (en) * | 2002-01-25 | 2006-02-21 | Microsoft Corporation | Video coding methods and apparatuses |
| JP4130783B2 (ja) * | 2002-04-23 | 2008-08-06 | 松下電器産業株式会社 | 動きベクトル符号化方法および動きベクトル復号化方法 |
| KR100491530B1 (ko) * | 2002-05-03 | 2005-05-27 | 엘지전자 주식회사 | 모션 벡터 결정 방법 |
| US20040001546A1 (en) * | 2002-06-03 | 2004-01-01 | Alexandros Tourapis | Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation |
| KR100774296B1 (ko) * | 2002-07-16 | 2007-11-08 | 삼성전자주식회사 | 움직임 벡터 부호화 방법, 복호화 방법 및 그 장치 |
| US7020200B2 (en) * | 2002-08-13 | 2006-03-28 | Lsi Logic Corporation | System and method for direct motion vector prediction in bi-predictive video frames and fields |
| US7227901B2 (en) * | 2002-11-21 | 2007-06-05 | Ub Video Inc. | Low-complexity deblocking filter |
| US6646578B1 (en) * | 2002-11-22 | 2003-11-11 | Ub Video Inc. | Context adaptive variable length decoding system and method |
| US8085846B2 (en) * | 2004-08-24 | 2011-12-27 | Thomson Licensing | Method and apparatus for decoding hybrid intra-inter coded blocks |
| CN102439978A (zh) * | 2010-03-12 | 2012-05-02 | 联发科技(新加坡)私人有限公司 | 运动预测方法 |
-
2002
- 2002-11-28 JP JP2002346062A patent/JP4114859B2/ja not_active Expired - Lifetime
-
2003
- 2003-01-08 DK DK10169925.4T patent/DK2249577T3/da active
- 2003-01-08 EP EP20100169924 patent/EP2249576B1/en not_active Expired - Lifetime
- 2003-01-08 DK DK10169913.0T patent/DK2249573T3/da active
- 2003-01-08 BR BRPI0302580-2A patent/BRPI0302580B1/pt unknown
- 2003-01-08 ES ES10169913T patent/ES2408013T3/es not_active Expired - Lifetime
- 2003-01-08 ES ES10187172.1T patent/ES2600520T3/es not_active Expired - Lifetime
- 2003-01-08 KR KR1020037011000A patent/KR100923379B1/ko not_active Expired - Lifetime
- 2003-01-08 SI SI200332252T patent/SI2249570T1/sl unknown
- 2003-01-08 PT PT101699130T patent/PT2249573E/pt unknown
- 2003-01-08 DK DK03700472.8T patent/DK1439713T3/da active
- 2003-01-08 BR BR0302580-2A patent/BR0302580A/pt active IP Right Grant
- 2003-01-08 KR KR1020097022830A patent/KR100946848B1/ko not_active Expired - Lifetime
- 2003-01-08 DE DE60335516T patent/DE60335516D1/de not_active Expired - Lifetime
- 2003-01-08 EP EP20100169923 patent/EP2249575B1/en not_active Expired - Lifetime
- 2003-01-08 ES ES10169924T patent/ES2441223T3/es not_active Expired - Lifetime
- 2003-01-08 EP EP20100169926 patent/EP2249578B1/en not_active Expired - Lifetime
- 2003-01-08 ES ES10169923T patent/ES2441222T3/es not_active Expired - Lifetime
- 2003-01-08 MX MXPA03007629A patent/MXPA03007629A/es active IP Right Grant
- 2003-01-08 ES ES10187156T patent/ES2392513T3/es not_active Expired - Lifetime
- 2003-01-08 SI SI200332251T patent/SI2249573T1/sl unknown
- 2003-01-08 PT PT101699197T patent/PT2249574E/pt unknown
- 2003-01-08 PT PT101699247T patent/PT2249576E/pt unknown
- 2003-01-08 EP EP10187151.5A patent/EP2293581B1/en not_active Expired - Lifetime
- 2003-01-08 ES ES10169922T patent/ES2408245T3/es not_active Expired - Lifetime
- 2003-01-08 AT AT03700472T patent/ATE493846T1/de active
- 2003-01-08 EP EP20030700472 patent/EP1439713B1/en not_active Expired - Lifetime
- 2003-01-08 ES ES10169926T patent/ES2410533T3/es not_active Expired - Lifetime
- 2003-01-08 EP EP20100169922 patent/EP2249570B1/en not_active Expired - Lifetime
- 2003-01-08 ES ES10169919T patent/ES2408241T3/es not_active Expired - Lifetime
- 2003-01-08 PT PT101871515T patent/PT2293581T/pt unknown
- 2003-01-08 EP EP10187172.1A patent/EP2273795B1/en not_active Expired - Lifetime
- 2003-01-08 WO PCT/JP2003/000055 patent/WO2003061297A1/ja not_active Ceased
- 2003-01-08 DK DK10187156.4T patent/DK2273793T3/da active
- 2003-01-08 DK DK10169924.7T patent/DK2249576T3/da active
- 2003-01-08 EP EP20100169919 patent/EP2249574B1/en not_active Expired - Lifetime
- 2003-01-08 CN CNB038000555A patent/CN1295934C/zh not_active Expired - Lifetime
- 2003-01-08 DK DK10169922.1T patent/DK2249570T3/da active
- 2003-01-08 ES ES10187151.5T patent/ES2600786T3/es not_active Expired - Lifetime
- 2003-01-08 ES ES10169925T patent/ES2408214T3/es not_active Expired - Lifetime
- 2003-01-08 AU AU2003201906A patent/AU2003201906B2/en not_active Expired
- 2003-01-08 DK DK10169926.2T patent/DK2249578T3/da active
- 2003-01-08 DK DK10169919.7T patent/DK2249574T3/da active
- 2003-01-08 DK DK10187151.5T patent/DK2293581T3/en active
- 2003-01-08 EP EP20100187156 patent/EP2273793B1/en not_active Expired - Lifetime
- 2003-01-08 PT PT101699239T patent/PT2249575E/pt unknown
- 2003-01-08 PT PT101699262T patent/PT2249578E/pt unknown
- 2003-01-08 ES ES10187162T patent/ES2388814T3/es not_active Expired - Lifetime
- 2003-01-08 PT PT10187156T patent/PT2273793E/pt unknown
- 2003-01-08 CA CA2438295A patent/CA2438295C/en not_active Expired - Lifetime
- 2003-01-08 US US10/468,203 patent/US7362807B2/en not_active Expired - Lifetime
- 2003-01-08 EP EP20100187162 patent/EP2273794B1/en not_active Expired - Lifetime
- 2003-01-08 PT PT101699254T patent/PT2249577E/pt unknown
- 2003-01-08 HU HUE10187172A patent/HUE031077T2/en unknown
- 2003-01-08 PT PT101699221T patent/PT2249570E/pt unknown
- 2003-01-08 PT PT101871721T patent/PT2273795T/pt unknown
- 2003-01-08 CA CA 2762023 patent/CA2762023C/en not_active Expired - Lifetime
- 2003-01-08 SI SI200332318T patent/SI2249576T1/sl unknown
- 2003-01-08 EP EP20100169913 patent/EP2249573B1/en not_active Expired - Lifetime
- 2003-01-08 CA CA 2762054 patent/CA2762054C/en not_active Expired - Lifetime
- 2003-01-08 SI SI200332250T patent/SI2249578T1/sl unknown
- 2003-01-08 PT PT03700472T patent/PT1439713E/pt unknown
- 2003-01-08 KR KR1020097022828A patent/KR100946845B1/ko not_active Expired - Lifetime
- 2003-01-08 DK DK10187162.2T patent/DK2273794T3/da active
- 2003-01-08 EP EP20100169925 patent/EP2249577B1/en not_active Expired - Lifetime
- 2003-01-08 DK DK10187172.1T patent/DK2273795T3/en active
- 2003-01-08 DK DK10169923.9T patent/DK2249575T3/da active
- 2003-01-08 SI SI200332497A patent/SI2293581T1/sl unknown
- 2003-01-08 HU HUE10187151A patent/HUE032083T2/en unknown
- 2003-01-08 KR KR1020077026287A patent/KR100946846B1/ko not_active Expired - Lifetime
-
2007
- 2007-10-30 US US11/979,012 patent/US8290047B2/en active Active
- 2007-10-30 US US11/979,033 patent/US8401080B2/en not_active Ceased
- 2007-10-30 US US11/979,010 patent/US8290046B2/en active Active
- 2007-10-30 US US11/979,013 patent/US20080069229A1/en not_active Abandoned
-
2010
- 2010-01-21 US US12/691,195 patent/US8290048B2/en not_active Expired - Fee Related
-
2013
- 2013-06-11 CY CY20131100467T patent/CY1114052T1/el unknown
- 2013-06-11 CY CY20131100463T patent/CY1114049T1/el unknown
- 2013-06-11 CY CY20131100465T patent/CY1114230T1/el unknown
- 2013-08-09 US US13/963,210 patent/US8885717B2/en not_active Expired - Lifetime
- 2013-08-14 US US13/966,527 patent/US8902987B2/en not_active Expired - Lifetime
- 2013-08-14 US US13/966,522 patent/US8885719B2/en not_active Expired - Lifetime
- 2013-08-14 US US13/966,477 patent/US8885718B2/en not_active Expired - Lifetime
- 2013-08-14 US US13/966,538 patent/US8885720B2/en not_active Expired - Lifetime
- 2013-08-14 US US13/966,484 patent/US8908769B2/en not_active Expired - Lifetime
- 2013-12-13 CY CY20131101127T patent/CY1114867T1/el unknown
-
2014
- 2014-11-04 US US14/532,284 patent/US9161050B2/en not_active Expired - Fee Related
- 2014-11-05 US US14/533,318 patent/US9124896B2/en not_active Expired - Fee Related
- 2014-11-06 US US14/534,425 patent/US9124897B2/en not_active Expired - Fee Related
-
2015
- 2015-07-20 US US14/803,739 patent/USRE46924E1/en active Active
- 2015-08-31 US US14/840,427 patent/US9407927B2/en not_active Expired - Fee Related
- 2015-08-31 US US14/840,492 patent/US9451278B2/en not_active Expired - Fee Related
-
2016
- 2016-08-16 US US15/237,938 patent/US20160360227A1/en not_active Abandoned
- 2016-08-16 US US15/237,956 patent/US10362328B2/en not_active Expired - Fee Related
- 2016-11-09 CY CY20161101146T patent/CY1118320T1/el unknown
-
2017
- 2017-09-14 US US15/704,463 patent/US10313700B2/en not_active Expired - Fee Related
-
2018
- 2018-06-11 US US16/005,223 patent/USRE48035E1/en active Active
Also Published As
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| BRPI0302580B1 (pt) | Método de codificação de vetor de movimento, método de decodificação de vetor de movimento, aparelho de codificação de vetor de movimento, aparelho de decodificação de vetor de movimento | |
| DK2271108T3 (en) | Method for encoding moving pictures and procedure to decode moving pictures | |
| JP5085757B2 (ja) | 画像復号化方法、画像復号化装置、プログラムおよび記録媒体 |