BR112014026035A2 - métodos e aparelhos de decodificação e codificação de vídeo, software de computador, meio de armazenamento não transitório, sinal de dados, e, aparelhos de captura, exibição, transmissão, recepção e/ou armazenamento de vídeo - Google Patents
métodos e aparelhos de decodificação e codificação de vídeo, software de computador, meio de armazenamento não transitório, sinal de dados, e, aparelhos de captura, exibição, transmissão, recepção e/ou armazenamento de vídeo Download PDFInfo
- Publication number
- BR112014026035A2 BR112014026035A2 BR112014026035-4A BR112014026035A BR112014026035A2 BR 112014026035 A2 BR112014026035 A2 BR 112014026035A2 BR 112014026035 A BR112014026035 A BR 112014026035A BR 112014026035 A2 BR112014026035 A2 BR 112014026035A2
- Authority
- BR
- Brazil
- Prior art keywords
- samples
- chrominance
- prediction
- chroma
- video
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 151
- 230000005540 biological transmission Effects 0.000 title claims abstract description 15
- 230000033001 locomotion Effects 0.000 claims abstract description 65
- 239000013598 vector Substances 0.000 claims abstract description 40
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 159
- 241000023320 Luma <angiosperm> Species 0.000 description 157
- 238000013139 quantization Methods 0.000 description 127
- 239000000523 sample Substances 0.000 description 77
- 239000011159 matrix material Substances 0.000 description 54
- 230000008569 process Effects 0.000 description 48
- 238000007906 compression Methods 0.000 description 32
- 230000006835 compression Effects 0.000 description 29
- 230000006837 decompression Effects 0.000 description 29
- 238000001914 filtration Methods 0.000 description 24
- 230000006870 function Effects 0.000 description 16
- 238000006073 displacement reaction Methods 0.000 description 15
- 230000009466 transformation Effects 0.000 description 15
- 238000013144 data compression Methods 0.000 description 14
- 238000005070 sampling Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 10
- 230000003044 adaptive effect Effects 0.000 description 9
- 230000000694 effects Effects 0.000 description 9
- 230000004048 modification Effects 0.000 description 9
- 238000012986 modification Methods 0.000 description 9
- 230000001419 dependent effect Effects 0.000 description 8
- 238000013507 mapping Methods 0.000 description 7
- 230000002441 reversible effect Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000012360 testing method Methods 0.000 description 6
- 230000003247 decreasing effect Effects 0.000 description 5
- 239000013074 reference sample Substances 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000000670 limiting effect Effects 0.000 description 3
- 230000001131 transforming effect Effects 0.000 description 3
- 230000017105 transposition Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000003466 anti-cipated effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 241000269627 Amphiuma means Species 0.000 description 1
- 101100068859 Caenorhabditis elegans ggr-1 gene Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 208000006673 asthma Diseases 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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/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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N11/00—Colour television systems
- H04N11/24—High-definition television systems
- H04N11/28—High-definition television systems involving bandwidth reduction, e.g. subsampling
-
- 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/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/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- 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/117—Filters, e.g. for pre-processing or post-processing
-
- 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- 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/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
-
- 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/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- 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/124—Quantisation
-
- 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/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- 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/129—Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/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/182—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 a pixel
-
- 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/186—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 a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- 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
-
- 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/547—Motion estimation performed in a transform domain
-
- 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/587—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- 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
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/649—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding the transform being applied to non rectangular image segments
-
- 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/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
-
- 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/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
-
- 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
-
- 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/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/523—Motion estimation or motion compensation with sub-pixel accuracy
-
- 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/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Color Television Systems (AREA)
Abstract
MÉTODOS E APARELHOS DE DECODIFICAÇÃO E CODIFICAÇÃO DE VÍDEO, MEIO DE GRAVAÇÃO, SINAL DE DADOS, E, APARELHO DE CAPTURA, EXIBIÇÃO, TRANSMISSÃO, RECEPÇÃO E/OU ARMAZENAMENTO DE VÍDEO
Um método de codificação ou decodificação de vídeo usando predição interimagem para codificar dados de vídeo de entrada em que cada componente de crominância tem 1/M-ésimo da resolução horizontal do componente de luminância e 1/N-ésimo da resolução vertical do componente de luminância, onde M e N são inteiros iguais a 1 ou mais, compreende: armazenar uma ou mais imagens precedendo uma imagem atual; interpolar uma versão de resolução mais alta de unidades de predição das imagens armazenadas de forma que o componente de luminância de uma unidade de predição interpolada tenha uma resolução horizontal P vezes aquela da porção correspondente da imagem armazenada e uma resolução vertical Q vezes aquela da porção correspondente da imagem armazenada, onde P e Q são inteiros maiores que 1; detectar movimento interimagem entre uma imagem atual e a uma ou mais imagens armazenadas interpoladas de modo a gerar vetores de movimento entre uma unidade de predição da imagem atual e áreas da uma ou mais imagens anteriores; e gerar uma predição compensada em movimento da unidade de predição da imagem atual com respeito a uma área de uma imagem armazenada interpolada apontada por um vetor de movimento respectivo; em que a etapa de interpolação compreender: aplicar um xR filtro de interpolação horizontal e vertical xS aos componentes de crominância de uma imagem armazenada para gerar uma unidade de predição de crominância interpolada, onde R é igual a (U x M x P) e S é igual a (V x N x Q), U e V sendo inteiros iguais a 1 ou mais; e subamostrar a unidade de predição de crominância interpolada, tal que sua resolução horizontal seja dividida por um fator de U e sua resolução vertical seja dividida por um fator de V, por esse meio resultando em um bloco de MP x NQ amostras.
Description
[0001] O pedido presente reivindica o benefício da data de depósito anterior de GB1211072.2, GB1211073.0 e GB 1207459.7 depositados no Escritório de Propriedade Intelectual do Reino Unido em 22 de junho de 2012, 22 de junho de 2012 e 26 de abril de 2012 respectivamente, os conteúdos inteiros de quais pedidos estão incorporados aqui por referência.
FUNDAMENTO Campo
[0002] Esta descrição relaciona-se à codificação e decodificação de dados. Descrição da Técnica Relacionada
[0003] A descrição de "fundamento" provida aqui é para o propósito de apresentar geralmente o contexto da descrição. Trabalho dos inventores agora nomeados, à extensão que é descrito nesta seção de fundamento, como também aspectos da descrição que podem não qualificar caso contrário como técnica anterior na hora de depósito, nem é expressamente ou implicitamente admitido como técnica anterior contra a descrição presente.
[0004] Há vários sistemas de codificação e decodificação de dados de vídeo que envolvem transformar dados de vídeo em uma representação de domínio de frequência, quantizando os coeficientes de domínio de frequência e então aplicando alguma forma de codificação de entropia aos coeficientes quantizados. Isto pode alcançar compressão dos dados de vídeo. Uma técnica de decodificação ou descompressão correspondente é aplicada para recuperar uma versão reconstruída dos dados de vídeo originais.
[0005] Codecs (codificadores-decodificadores) de vídeo atuais tais como aqueles usados em Codificação de Vídeo Avançada H.264/MPEG-4 (AVC) alcançam compressão de dados principalmente só codificando as ' diferenças entre quadros de vídeo sucessivos. Este codecs usam um arranjo . regular de denominados macroblocos, cada um dos quais é usado como uma região de comparação com um macrobloco correspondente em um quadro de vídeo prévio, e a região de imagem dentro do macrobloco é então codificada de acordo com o grau de movimento achado entre os macroblocos atuais e prévios correspondentes na sequência de vídeo, ou entre macroblocos vizinhos dentro de um único quadro da sequência de vídeo.
[0006] Codificação de Vídeo de Alta Eficiência (HEVC), também conhecida como H.265 ou MPEG-H parte 2, é um sucessor proposto para H.264/MPEG-4 AVC. É planejado para HEVC melhorar a qualidade de vídeo e dobrar a relação de compressão de dados comparado a H.264, e para isto ser graduável de resolução de 128x96 para 7680x4320 pixels, aproximadamente equivalente a taxas de bit variando de 128 kbit/s a 800 Mbit/s.
[0007] Em HEVC, uma denominada estrutura de bloco de 4:2:0 é proposta para equipamento de consumidor, em que a quantidade de dados usada em cada canal de croma é um quarto daquela no canal de luma. Isto é porque subjetivamente as pessoas são mais sensíveis a variações de brilho do que variações de cor, e assim é possível usar maior compressão e/ou menos informação nos canais de cor sem uma perda subjetiva de qualidade.
[0008] HEVC substitui os macroblocos achados em padrões de H.264 e MPEG existentes com um esquema mais flexível baseado nas unidades de codificação (CUSs), que são estruturas de tamanho variável.
[0009] Consequentemente, ao codificar os dados de imagem em quadros de vídeo, os tamanhos de CU podem ser selecionados responsivo à complexidade de imagem aparente ou níveis de movimento detectados, em vez de usar macroblocos distribuídos uniformemente. Consequentemente,
compressão muito maior pode ser alcançada em regiões com pequeno movimento entre quadros e com pequena variação dentro de um quadro, enquanto qualidade de imagem melhor pode ser preservada em áreas de alto ' movimento interquadro ou complexidade de imagem.
. [00010] Cada CU contém uma ou mais unidades de predição de tamanho de bloco variável (PUs) de tipo de predição intraquadro ou interquadro, e uma ou mais unidades de transformada (TUs) que contêm coeficientes para transformada e quantização de bloco espacial.
[00011] Além disso, blocos de PU e TU são providos para cada um de três canais; luma (Y), sendo um canal de luminância ou brilho, e que pode ser pensado como um canal de escala de cinza, e dois canais de diferença de cor ou crominância (croma); Cb e Cr. Estes canais provêem a cor para a imagem de escala de cinza do canal de luma. Os termos Y, luminância e luma são usados intercambiavelmente nesta descrição, e semelhantemente os termos Cb e Cr, crominância e croma, são usados intercambiavelmente como apropriado, notando que crominância ou croma pode ser usado genericamente para "um ou ambos de Cr e Cb", enquanto quando um canal de crominância específico está sendo discutido ele, será identificado pelo termo Cb ou Cr.
[00012] Geralmente PUs são consideradas serem independentes de canal, exceto que uma PU tem uma parte de luma e uma parte de croma. Geralmente, isto significa que as amostras fazendo parte da PU para cada canal representam a mesma região da imagem, de forma que há uma relação fixa entre as PUs entre os três canais. Por exemplo, para vídeo de 4:2:0, uma PU 8x8 para Luma sempre tem uma PU 4x4 correspondente para croma, com as partes de croma da PU representando a mesma área como a parte de luma, mas contendo um número menor de pixels por causa da natureza subamostrada dos dados de croma de 4:2:0 comparados aos dados de luma em vídeo de 4:2:0. Os dois canais de croma partilham informação de intrapredição; e os três canais partilham informação de interpredição.
Semelhantemente, a estrutura de TU também tem uma relação fixa entre os três canais.
[00013] Porém, para equipamento de radiodifusão e cinema digital ' profissional, é desejável ter menos compressão (ou mais informação) nos . canais de croma, e isto pode afetar como processamento de HEVC atual e proposto opera.
[00014] A descrição presente trata ou reduz problemas surgindo deste processamento.
[00015] Aspectos e características respectivos da descrição presente estão definidos nas reivindicações anexas.
[00016] É para ser entendido que ambas a descrição geral precedente e a descrição detalhada seguinte são exemplares, mas não são restritivas da tecnologia presente.
[00017] Uma apreciação mais completa da descrição e muitas das vantagens decorrentes dela serão obtidas prontamente quando a mesma fica entendida melhor por referência à descrição detalhada seguinte quando considerada com relação aos desenhos acompanhantes, em que: a Figura 1 ilustra esquematicamente um sistema de transmissão e recepção de dados de áudio/vídeo (A/V) usando compressão e descompressão de dados de vídeo; a Figura 2 ilustra esquematicamente um sistema de exibição de vídeo usando descompressão de dados de vídeo; a Figura 3 ilustra esquematicamente um sistema de armazenamento de áudio/vídeo usando compressão e descompressão de dados de vídeo; a Figura 4 ilustra esquematicamente uma câmera de vídeo usando compressão de dados de vídeo;
a Figura 5 provê um panorama esquemático de um aparelho de compressão e descompressão de dados de vídeo; a Figura 6 ilustra esquematicamente a geração de imagens ' preditas; . a Figura 7 ilustra esquematicamente uma unidade de codificação maior (LCU); a Figura 8 ilustra esquematicamente um conjunto de quatro unidades de codificação (CU); a Figuras 9 e 10 ilustram esquematicamente as unidades de codificação da Figura 8 subdivididas em unidades de codificação menores; a Figura 11 ilustra esquematicamente um arranjo de unidades de predição (PU); a Figura 12 ilustra esquematicamente um arranjo de unidades de transformada (TU); a Figura 13 ilustra esquematicamente uma imagem codificada parcialmente;
[00018] a Figura 14 ilustra esquematicamente um conjunto de possíveis direções de intrapredição; a Figura 15 ilustra esquematicamente um conjunto de modos de predição; a Figura 16 ilustra esquematicamente uma varredura diagonal para cima-direita; a Figura 17 ilustra esquematicamente um aparelho de compressão de vídeo; as Figuras 18a e 18b ilustram esquematicamente possíveis tamanhos de bloco; a Figura 19 ilustra esquematicamente o uso de informação colocalizada de blocos de croma e luma; a Figura 20 ilustra esquematicamente uma situação na qual informação colocalizada de um canal de croma é usada em relação a outro canal de croma; a Figura 21 ilustra esquematicamente pixels usados para um ' modo de LM-CHROMA; . a Figura 22 ilustra esquematicamente um conjunto de direções de predição de luma; a Figura 23 ilustra esquematicamente as direções da Figura 22, como aplicadas a um canal de croma disperso horizontalmente; a Figura 24 ilustra esquematicamente as direções da Figura 22 mapeadas a um arranjo de pixel de croma retangular; a Figuras 25-28 ilustram esquematicamente interpolação de pixel de luma e croma; a Figuras 29a e 2b ilustram esquematicamente tabelas de parâmetro de quantização para 4:2:0 e 4:2:2; respectivamente a Figuras 30 e 31 ilustram esquematicamente tabelas de variação de quantização;
[00019] Se referindo agora aos desenhos, Figuras 1-4 são providas para dar ilustrações esquemáticas de aparelho ou sistemas fazendo uso do aparelho de compressão e/ou descompressão a ser descrito abaixo com relação às concretizações da tecnologia presente.
[00020] Tudo do aparelho de compressão e/ou descompressão de dados a ser descrito abaixo pode ser implementado em hardware, em software correndo em um aparelho de processamento de dados de propósito geral tal como um computador de propósito geral, como hardware programável tal como um circuito integrado específico de aplicação (ASIC) ou arranjo de portas programáveis no campo (FPGA) ou como combinações destes. Em casos onde as concretizações são implementadas através de software e/ou firmware, será apreciado que tal software e/ou firmware, e meios de armazenamento de dados não transitórios pelos quais tal software e/ou firmware são armazenados ou caso contrário providos, são considerados como concretizações da tecnologia presente.
é [00021] A Figura | ilustra esquematicamente um sistema de . transmissão e recepção de dados de áudio/vídeo usando compressão e descompressão de dados de vídeo.
[00022] Um sinal de áudio/vídeo de entrada 10 é provido a um aparelho de compressão de dados de vídeo 20 que comprime pelo menos o componente de vídeo do sinal de áudio/vídeo 10 para transmissão ao longo de uma rota de transmissão 30 tal como um cabo, uma fibra óptica, uma ligação sem fios ou similar. O sinal comprimido é processado por um aparelho de descompressão 40 para prover um sinal de áudio/vídeo de saída 50. Para o trajeto de retorno, um aparelho de compressão 60 comprime um sinal de áudio/vídeo para transmissão ao longo da rota de transmissão 30 para um aparelho de descompressão 70.
[00023] O aparelho de compressão 20 e aparelho de descompressão 70 podem portanto formar um nó de uma ligação de transmissão. O aparelho de descompressão 40 e aparelho de descompressão 60 podem formar outro nó da ligação de transmissão. Certamente, em casos onde a ligação de transmissão é unidirecional, um dos nós requereria um aparelho de compressão e o outro nó requereria só um aparelho de descompressão.
[00024] A Figura 2 ilustra esquematicamente um sistema de exibição de vídeo usando descompressão de dados de vídeo. Em particular, um sinal de áudio/vídeo comprimido 100 é processado por um aparelho de descompressão 110 para prover um sinal descomprimido que pode ser exibido em um visor
120. O aparelho de descompressão 110 poderia ser implementado como uma parte integrante do visor 120, por exemplo sendo provido dentro da mesma cobertura como o dispositivo de exibição. Alternativamente, o aparelho de descompressão 110 pode ser provido como (por exemplo) um denominado conversor de TV (STB), notando que a expressão "conversor" não implica uma exigência para a caixa estar localizada em qualquer orientação ou posição particular com respeito ao visor 120; é simplesmente um termo usado º na técnica para indicar um dispositivo que é conectável a um visor como um . dispositivo periférico.
[00025] A Figura 3 ilustra esquematicamente um sistema de armazenamento de áudio/vídeo usando compressão e descompressão de dados de vídeo. Um sinal de áudio/vídeo de entrada 130 é provido a um aparelho de compressão 140 que gera um sinal comprimido para armazenamento por um dispositivo de armazenamento 150 tal como um dispositivo de disco magnético, um dispositivo de disco óptico, um dispositivo de fita magnética, um dispositivo de armazenamento de estado sólido tal como uma memória de semicondutor ou outro dispositivo de armazenamento. Para repetição, dados comprimidos são lidos do dispositivo de armazenamento 150 e passados a um aparelho de descompressão 160 para descompressão para prover a um sinal de áudio/vídeo de saída 170.
[00026] Será apreciado que o sinal comprimido ou codificado, e um meio de armazenamento armazenando esse sinal, são considerados como concretizações da descrição presente.
[00027] A Figura 4 ilustra esquematicamente uma câmera de vídeo usando compressão de dados de vídeo. Na Figura 4, um dispositivo de captura de imagem 180, tal como um sensor de imagem de dispositivo acoplado por carga (CCD) e controle e eletrônica de leitura associada, gera um sinal de vídeo que é passado a um aparelho de compressão 190. Um microfone (ou vários microfones) 200 gera um sinal de áudio a ser passado ao aparelho de compressão 190. O aparelho de compressão 190 gera um sinal de áudio/vídeo comprimido 210 a ser armazenado e/ou transmitido (mostrado genericamente como uma fase esquemática 220).
[00028] As técnicas a serem descritas abaixo relacionam-se principalmente à compressão e descompressão de dados de vídeo. Será apreciado que muitas técnicas existentes podem ser usadas para compressão de dados de áudio junto com as técnicas de compressão de dados de vídeo que . serão descritas, para gerar um sinal de áudio/vídeo comprimido. Por . conseguinte, uma discussão separada de compressão de dados de áudio não será provida. Também será apreciado que a taxa de dados associada com dados de vídeo, em particular dados de vídeo de qualidade de radiodifusão, é geralmente muito mais alta do que a taxa de dados associada com dados de áudio (se comprimidos ou não comprimidos). Será portanto apreciado que dados de áudio não comprimidos poderiam acompanhar dados de vídeo comprimidos para formar um sinal de áudio/vídeo comprimido. Será adicionalmente apreciado que embora os exemplos presentes (mostrados nas Figuras 1-4) relacionem-se a dados de áudio/vídeo, as técnicas a serem descritas abaixo podem achar uso em um sistema que simplesmente lida (quer dizer, comprime, descomprime, armazena, exibe e/ou transmite) dados de vídeo. Quer dizer, as concretizações podem aplicar a compressão de dados de vídeo sem necessariamente ter quaisquer dados de áudio associados manipulando absolutamente.
[00029] A Figura 5 provê um panorama esquemático de um aparelho de compressão e descompressão de dados de vídeo.
[00030] Um controlador 343 controla a operação global do aparelho e, em particular ao se referir a um modo de compressão, controla os processos de codificação de ensaio (a ser descrito abaixo) atuando como um seletor para selecionar vários modos de operação tais como tamanhos de bloco de CU, PU e TU e se os dados de vídeo são para serem codificados sem perda ou caso contrário. Imagens sucessivas de um sinal de vídeo de entrada 300 são providas a um somador 310 e a um preditor de imagem 320. O preditor de imagem 320 será descrito abaixo em mais detalhe com referência à Figura 6. O somador 310 na realidade executa uma operação de subtração (adição negativa), visto que recebe o sinal de vídeo de entrada 300 em uma entrada "+" e a saída do preditor de imagem 320 em uma entrada "-", de forma que a imagem predita 7 seja subtraída da imagem de entrada. O resultado é gerar um denominado - sinal residual de imagem 330 representando a diferença entre as imagens real e predita.
[00031] Uma razão por que um sinal de imagem residual é gerado é como segue. As técnicas de codificação de dados a serem descritas, quer dizer as técnicas que serão aplicadas ao sinal de imagem residual, tendem a funcionar mais eficazmente quando há menos "energia" na imagem a ser codificada. Aqui, o termo "eficazmente" se refere à geração de uma quantidade pequena de dados codificados; para um nível de qualidade de imagem particular, é desejável (e considerado "eficiente") gerar tão poucos dados quanto é possível praticamente. A referência à "energia" na imagem residual relaciona-se à quantidade de informação contida na imagem residual. Se a imagem predita fosse para ser idêntica à imagem real, a diferença entre as duas (quer dizer, a imagem residual) conteria informação zero (energia zero) e seria muito fácil de codificar em uma quantidade pequena de dados codificados. Em geral, se o processo de predição puder ser feito trabalhar razoavelmente bem, a expectativa é que os dados de imagem residuais conterão menos informação (menos energia) do que a imagem de entrada e assim será mais fácil codificar em uma quantidade pequena de dados codificados.
[00032] O resto do aparelho atuando como um codificador (para codificar a imagem residual ou de diferença) será descrito agora. Os dados de imagem residuais 330 são providos a uma unidade de transformada 340, que gera uma representação transformada de co-seno discreta (DCT) dos dados de imagem residuais. A própria técnica de DCT é bem conhecida e não será descrita em detalhes aqui. Há porém aspectos das técnicas usadas no aparelho presente que serão descritos em mais detalhe abaixo, em particular relativos à seleção de blocos diferentes de dados aos quais a operação de DCT é aplicada. Estes serão discutidos com referência às Figuras 7-12 abaixo.
bi [00033] A saída da unidade de transformada 340, quer dizer, um . conjunto de coeficientes de DCT para cada bloco transformado de dados de imagem, é provido a um quantizador 350. Várias técnicas de quantização são conhecidas no campo de compressão de dados de vídeo, variando de uma multiplicação simples por um fator de graduação de quantização pela aplicação de tabelas de consulta complicadas sob o controle de um parâmetro de quantização. A pontaria geral é dupla. Primeiramente, o processo de quantização reduz o número de possíveis valores dos dados transformados. Secundariamente, o processo de quantização pode aumentar a probabilidade que valores dos dados transformados sejam zero. Ambos destes podem fazer o processo de codificação de entropia, a ser descrito abaixo, trabalhar mais eficazmente em gerar quantidades pequenas de dados de vídeo comprimidos.
[00034] Um processo de varredura de dados é aplicado por uma unidade de varredura 360. O propósito do processo de varredura é reordenar os dados transformados quantizados de modo a juntar tanto quanto possível dos coeficientes transformados quantizados não zero juntos, e certamente portanto juntar tanto quanto possível dos coeficientes de valor zero juntos. Estas características podem permitir denominadas técnicas de codificação de comprimento corrido ou semelhantes serem aplicadas eficazmente. Assim, o processo de varredura envolve selecionar coeficientes dos dados transformados quantizados, e em particular de um bloco de coeficientes correspondendo a um bloco de dados de imagem que foram transformados e quantizados, de acordo com uma "ordem de varredura", de forma que (a) todos os coeficientes sejam selecionados uma vez como parte da varredura, e (b) a varredura tende a prover a reordenação desejada. Uma ordem de varredura de exemplo que pode tender a dar resultados úteis é uma denominada ordem de varredura diagonal para cima-direita.
[00035] Os coeficientes varridos são então passados a um codificador de entropia (EE) 370. Novamente, vários tipos de codificação de entropia . podem ser usados. Dois exemplos são variantes do denominado sistema de . CABAC (Codificação Aritmética Binária Adaptável a Contexto) e variantes do denominado sistema de CAVLC (Codificação de Comprimento Variável Adaptável a Contexto). Em termos gerais, CABAC é considerado prover uma eficiência melhor, e em alguns estudos foi mostrado prover uma redução de 10-20% na quantidade de dados de saída codificados para uma qualidade de imagem comparável comparada a CAVLC. Porém, CAVLC é considerado representar um nível de complexidade muito mais baixo (em termos de sua implementação) do que CABAC. Note que o processo de varredura e o processo de codificação de entropia são mostrados como processos separados, mas na realidade podem ser combinados ou tratados juntos. Quer dizer, a leitura de dados no codificador de entropia pode acontecer na ordem de varredura. Considerações correspondentes se aplicam aos processos inversos respectivos a serem descritos abaixo. Note que os documentos de HEVC atuais sob consideração na hora de depósito não incluem mais a possibilidade de um codificador de coeficiente de CAVLC.
[00036] A saída do codificador de entropia 370, junto com dados adicionais (mencionados acima e/ou discutidos abaixo), por exemplo definindo a maneira na qual o preditor 320 gera a imagem predita, provê um sinal de vídeo de saída comprimido 380.
[00037] Porém, um trajeto de retorno também é provido porque a operação do próprio preditor 320 depende de uma versão descomprimida dos dados de saída comprimidos.
[00038] A razão para esta característica é como segue. Na fase apropriada no processo de descompressão (a ser descrito abaixo), uma versão descomprimida dos dados residuais é gerada. Estes dados residuais descomprimidos têm que ser adicionados a uma imagem predita para gerar uma imagem de saída (porque os dados residuais originais eram a diferença entre a imagem de entrada e uma imagem predita). A fim de que este processo * seja comparável, como entre o lado de compressão e o lado de : descompressão, as imagens preditas geradas pelo preditor 320 deveriam ser as mesmas durante o processo de compressão e durante o processo de descompressão. Certamente, na descompressão, o aparelho não tem acesso às imagens de entrada originais, mas só às imagens descomprimidas. Portanto, na compressão, o preditor 320 baseia sua predição (pelo menos, para codificação interimagem) em versões descomprimidas das imagens comprimidas.
[00039] O processo de codificação de entropia executado pelo codificador de entropia 370 é considerado ser "sem perda", quer dizer, pode ser invertido para chegar a exatamente aos mesmos dados que foram providos primeiro ao codificador de entropia 370. Assim, o trajeto de retorno pode ser implementado antes da fase de codificação de entropia. Realmente, o processo de varredura executado pela unidade de varredura 360 também é considerada sem perda, mas na concretização presente, o trajeto de retorno 390 é da saída do quantizador 350 à entrada de um quantizador inverso complementar 420.
[00040] Em termos gerais, um decodificador de entropia 410, a unidade de varredura inversa 400, um quantizar inverso 420 e uma unidade de transformada inversa 430 provêem as funções inversas respectivas do codificador de entropia 370, da unidade de varredura 360, do quantizador 350 e da unidade de transformada 340. Para agora, a discussão continuará pelo processo de compressão; o processo para descomprimir um sinal de vídeo de entrada comprimido será discutido separadamente abaixo.
[00041] No processo de compressão, os coeficientes varridos são passados pelo trajeto de retorno 390 do quantizador 350 para o quantizador inverso 420 que executa a operação inversa da unidade de varredura 360. Um processo de quantização inversa e transformação inversa são executados pelas unidades 420, 430 para gerar uma sinal imagem residual comprimido- descomprimido 440.
? [00042] O sinal de imagem 440 é somado, a um somador 450, à saída . do preditor 320 para gerar uma imagem de saída reconstruída 460. Isto forma uma entrada para o preditor de imagem 320, como será descrito abaixo.
[00043] Retornando agora ao processo aplicado para descomprimir um sinal de vídeo comprimido recebido 470, o sinal é provido ao decodificador de entropia 410 e de lá para a cadeia da unidade de varredura inversa 400, o quantizador inverso 420 e a unidade de transformada inversa 430 antes de ser adicionado à saída do preditor de imagem 320 pelo somador 450. Em termos diretos, a saída 460 do somador 450 forma o sinal de vídeo descomprimido de saída 480. Na prática, filtragem adicional pode ser aplicada antes que o sinal seja produzido.
[00044] Assim, o aparelho das Figuras 5 e 6 pode atuar como um aparelho de compressão ou um aparelho de descompressão. As funções dos dois tipos de aparelho se sobrepõem muito fortemente. A unidade de varredura 360 e codificador de entropia 370 não são usados em um modo de descompressão, e a operação do preditor 320 (que será descrito em detalhes abaixo) e outras unidades seguem informação de modo e parâmetro contida ou caso contrário associada com o fluxo de bits comprimido recebido em lugar de gerar tal informação eles mesmos.
[00045] A Figura 6 ilustra esquematicamente a geração de imagens preditas, e em particular a operação do preditor de imagem 320.
[00046] Há dois modos básicos de predição executados pelo preditor de imagem 320: denominada predição intraimagem e denominada predição interimagem, ou predição compensada em movimento (MC). No lado de codificador, cada uma envolve detectar uma direção de predição em relação a um bloco atual a ser predito, e gerar um bloco predito de amostras de acordo com outras amostras (na mesma (intra) ou outra (inter) imagem). Em virtude das unidades 310 ou 450, a diferença entre o bloco predito e o bloco atual é codificada ou aplicada de modo a codificar ou decodificar o bloco 1 respectivamete.
. [00047] Predição intraimagem se baseia em uma predição do conteúdo de um bloco da imagem de dentro em dados da mesma imagem. Isto corresponde à denominada codificação de quadro I em outras técnicas de compressão de vídeo. Em contraste com codificação de quadro 1, onde a imagem inteira é intracodificada, nas concretizações presentes, a escolha entre intra e intercodificação pode ser feita em uma base de bloco por bloco, entretanto em outras concretizações da descrição, a escolha ainda é feita em uma base de imagem por imagem.
[00048] Predição compensada em movimento é um exemplo de predição interimagem e faz uso de informação de movimento que tenta definir a fonte, em outra imagem adjacente ou perto, de detalhe de imagem a ser codificada na imagem atual. Por conseguinte, em um exemplo ideal, os conteúdos de um bloco de dados de imagem na imagem predita podem ser codificados muito simplesmente como uma referência (um vetor de movimento) apontando para um bloco correspondente na mesma ou uma posição ligeiramente diferente em uma imagem adjacente.
[00049] Retornando à Figura 6, dois arranjos de imagem de predição (correspondendo à predição intra e interimagem) são mostrados, os resultados de quais são selecionados por um multiplexador 500 sob o controle de um sinal de modo 510 de modo a prover blocos da imagem predita para provisão aos somadores 310 e 450. A escolha é feita na dependência de qual seleção dá a "energia" mais baixa (que, como discutido acima, pode ser considerado como conteúdo de informação requerendo codificação), e a escolha é sinalizada ao codificador dentro do fluxo de dados de saída codificado. Energia de imagem, neste contexto, pode ser detectada, por exemplo,
executando uma subtração de ensaio de uma área das duas versões da imagem predita da imagem de entrada, elevando ao quadrado cada valor de pixel da imagem de diferença, somando os valores quadrados, e identificando qual das Í duas versões dá origem ao valor quadrado médio mais baixo da imagem de . diferença relativa àquela área de imagem.
[00050] A predição atual, no sistema de intra-codificação, é feita na base de blocos de imagem recebidos como parte do sinal 460, quer dizer, a predição é baseada em blocos de imagem codificada-decodificada em ordem que exatamente a mesma predição pode ser feita a um aparelho de descompressão. Porém, dados podem ser derivados da sinal de vídeo entrada 300 por um seletor de intramodo 520 para controlar a operação do preditor de intraimagem 530.
[00051] Para predição interimagem, um preditor compensado em movimento (MC) 540 usa informação de movimento tais como vetores de movimento derivados por um estimador de movimento 550 do sinal de vídeo de entrada 300. Esses vetores de movimento são aplicados a uma versão processada da imagem reconstruída 460 pelo preditor compensado em movimento 540 para gerar blocos da predição interimagem.
[00052] Por conseguinte, as unidades 530 e 540 (operando com o estimador 550) cada uma atua como detectores para detectar uma direção de predição em relação a um bloco atual a ser predito, e como um gerador para gerar um bloco predito de amostras (fazendo parte da predição passada às unidades 310 e 450) de acordo com as outras amostras definidas pela direção de predição.
[00053] O processamento aplicado ao sinal 460 será descrito agora. Primeiramente, o sinal é filtrado por uma unidade de filtro 560, que será descrita em maior detalhe abaixo. Isto envolve aplicar um filtro de "'desbloqueio"" para remover ou pelo menos tender a reduzir os efeitos do processamento baseado em bloco executado pela unidade de transformada
340 e operações subsequentes. Um filtro de compensação adaptável à amostra (SAO) (descrito adicionalmente abaixo) também pode ser usado. Também, um filtro de malha adaptável é aplicado usando coeficientes derivados : processando o sinal reconstruído 460 e o sinal de vídeo de entrada 300. O . filtro de malha adaptável é um tipo de filtro que, usando técnicas conhecidas, aplica coeficientes de filtro adaptável aos dados a serem filtrados. Quer dizer, os coeficientes de filtro podem variar em dependência de vários fatores. Dados definindo quais coeficientes de filtro usar estão incluídos como parte do fluxo de dados de saída codificado.
[00054] Filtragem adaptável representa filtragem em malha para restauração de imagem. Uma LCU pode ser filtrada por até 16 filtros, com uma escolha de filtro e um estado ativo/inativo de ALF sendo derivado em relação a cada CU dentro da LCU. Atualmente, o controle está ao nível de LCU, não ao nível de CU.
[00055] A saída filtrada da unidade de filtro 560 na realidade forma o sinal de vídeo de saída 480 quando o aparelho está operando como um aparelho de compressão. Também é armazenada temporariamente em um ou mais armazenamentos de imagem ou quadro 570; o armazenamento de imagens sucessivas é uma exigência de processamento de predição compensada em movimento, e em particular a geração de vetores de movimento. Para economizar em exigências de armazenamento, as imagens armazenadas nos armazenamentos de imagem 570 podem ser contidas em uma forma comprimida e então descomprimidas para uso em gerar vetores de movimento. Para este propósito particular, qualquer sistema de compressão/descompressão “conhecido pode ser usado. As imagens armazenadas são passadas a um filtro de interpolação 580, que gera uma versão de resolução mais alta das imagens armazenadas; neste exemplo, amostras intermediárias (sub-amostras) são geradas tal que a resolução da imagem interpolada que é produzida pelo filtro de interpolação 580 seja 4 vezes (em cada dimensão) aquela das imagens armazenadas nos armazenamentos de imagem 570 para o canal de luminância de 4:2:0 e 8 vezes (em cada dimensão) aquela das imagens armazenadas nos ' armazenamentos de imagem 570 para os canais de crominância de 4:2:0. As imagens interpoladas são passadas como uma entrada ao estimador de movimento 550 e também ao preditor compensado em movimento 540.
[00056] Em concretizações da descrição, uma fase opcional adicional é provida, que é multiplicar os valores de dados do sinal de vídeo de entrada por um fator de quatro usando um multiplicador 600 (apenas deslocando efetivamente os valores de dados deixados por dois bits), e aplicar uma operação de divisão correspondente (deslocamento à direita por dois bits) na saída do aparelho usando um divisor ou deslocador à direita 610. Assim, o deslocamento esquerdo e deslocamento direito muda os dados puramente para a operação interna do aparelho. Esta medida pode prover precisão de cálculo mais alta dentro do aparelho, como o efeito de quaisquer erros de arredondamento de dados é reduzido.
[00057] O modo no qual uma imagem é dividida para processamento de compressão será descrito agora. A um nível básico, uma imagem a ser comprimida é considerada como um arranjo de blocos de amostras. Para os propósitos da discussão presente, o tal bloco maior sob consideração é uma denominada unidade de codificação maior (LCU) 700, que representa um arranjo quadrado de tipicamente 64 x 64 amostras (o tamanho de LCU é configurável pelo codificador, até um tamanho máximo tal como definido pelos documentos de HEVC). Aqui, a discussão relaciona-se a amostras de luminância. Dependendo do modo de crominância, tais como 4:4:4, 4:2:2, 4:2:0 ou 4:4:4:4 (GBR mais dados de chave), haverá números diferentes de amostras de crominância correspondentes correspondendo ao bloco de luminância.
[00058] Três tipos básicos de blocos serão descritos: unidades de codificação, unidades de predição e unidades de transformada. Em termos gerais, a subdivisão recursiva das LCUs permite a um quadro de entrada ser dividido de tal modo que ambos o tamanho de bloco e os parâmetros de ' codificação de bloco (tal como predição ou modos de codificação residual) . possam ser fixados de acordo com as características específicas da imagem a ser codificada.
[00059] A LCU pode ser subdividida em denominadas unidades de codificação (CU). Unidades de codificação sempre são quadradas e têm um tamanho entre 8x8 amostras e o tamanho completo da LCU 700. As unidades de codificação podem ser arranjadas como um tipo de estrutura de árvore, de forma que uma primeira subdivisão possa acontecer como mostrado na Figura 8, dando unidades de codificação 710 de 32x32 amostras; subdivisões subsequentes podem então acontecer em uma base seletiva de modo a dar algumas unidades de codificação 720 de 16x16 amostras (Figura 9) e potencialmente algumas unidades de codificação 730 de 8x8 amostras (Figura 10). Globalmente, este processo pode prover uma estrutura de árvore de codificação adaptável a conteúdo de blocos de CU, cada um dos quais pode ser tão grande quanto a LCU ou tão pequeno quanto 8x8 amostras. Codificação dos dados de vídeo de saída acontece na base da estrutura de unidade de codificação, quer dizer, essa uma LCU é codificada, e então o processo se move para a próxima LCU, e assim por diante.
[00060] A Figura 11 ilustra esquematicamente um arranjo de unidades de predição (PU). Uma unidade de predição é uma unidade básica para levar informação relativa ao processos de predição de imagem, ou em outras palavras, os dados adicionais adicionados aos dados de imagem residuais codificados em entropia para formar o sinal de vídeo de saída do aparelho da Figura 5. Em geral, unidades de predição não estão restringidas a serem quadradas em forma. Elas podem levar outras formas, em particular formas retangulares formando a metade de uma das unidades de codificação quadradas (por exemplo, CUs 8x8 podem ter PUs 8x4 ou 4x8). Empregar PUs que alinham a características de imagem não é uma parte compulsória do sistema de HEVC, mas a pontaria geral seria permitir a um bom codificador ' alinhar o limite de unidades de predição adjacentes para casar (tão : proximamente quanto possível) com o limite de objetos reais no quadro, de forma que parâmetros de predição diferentes possam ser aplicados a objetos reais diferentes. Cada unidade de codificação pode conter uma ou mais unidades de predição.
[00061] A Figura 12 ilustra esquematicamente um arranjo de unidades de transformada (TU). Uma unidade de transformada é uma unidade básica do processo de transformada e quantização. Unidades de transformada podem ou não ser quadradas e podem levar um tamanho de 4x4 até 32x32 amostras. Cada unidade de codificação pode conter uma ou mais unidades de transformada. O acrônimo SDIP-P na Figura 12 significa uma denominada partição intrapredição de distância curta. Neste arranjo, só uma transformada dimensional é usada, assim um bloco 4xN é passado por N transformadas com dados de entrada para as transformadas sendo baseados nos blocos vizinhos decodificados previamente e nas linhas vizinhas decodificadas previamente dentro do SDIP-P atual. SDIP-P não está incluído atualmente em HEVC na hora de depositar o pedido presente.
[00062] Como mencionado acima, codificação acontece como uma LCU, então uma próxima LCU, e assim por diante. Dentro de uma LCU, codificação é executada CU por CU. Dentro de uma CU, codificação é executada para uma TU, então uma próxima TU e assim por diante.
[00063] O processo de intrapredição será discutido agora. Em termos gerais, intrapredição envolve gerar uma predição de um bloco atual (uma unidade de predição) de amostras codificadas previamente e amostras decodificadas na mesma imagem. Figura 13 ilustra esquematicamente uma imagem codificada parcialmente 800. Aqui, a imagem está sendo codificada de topo-esquerdo para fundo-direito em uma base de LCU. Uma LCU de exemplo codificada parcialmente pela manipulação da imagem inteira é mostrada como um bloco 810. Uma região sombreada 820 acima e à esquerda S do bloco 810 já foi codificada. A predição intraimagem dos conteúdos do - bloco 810 pode fazer uso de qualquer da área sombreada 820, mas não pode fazer uso da área não sombreada debaixo disso. Note porém que para uma TU individual dentro da LCU atual, a ordem hierárquica de codificação (CU por CU então TU por TU) discutida acima significa que pode haver amostras codificadas previamente na LCU atual e disponíveis à codificação dessa TU que são, por exemplo, acima-direita ou abaixo-esquerda dessa TU.
[00064] O bloco 810 representa uma LCU; como discutido acima, para os propósitos de processamento de predição intraimagem, isto pode ser subdividido em um conjunto de unidades de predição e unidades de transformada menores. Um exemplo de uma TU 830 atual é mostrado dentro da LCU 810.
[00065] A predição intraimagem leva em conta amostras codificadas antes da TU atual ser considerada, tais como aquelas acima e/ou à esquerda da TU atual. Amostras de fonte, de quais as amostras exigidas são preditas, podem estar localizadas a posições ou direções diferentes relativas à TU atual. Para decidir qual direção é apropriada para uma unidade de predição atual, o seletor de modo 520 de um codificador de exemplo pode testar todas as combinações de estruturas de TU disponíveis para cada direção de candidato e selecionar a direção de PU e estrutura de TU com a melhor eficiência em compressão.
[00066] O quadro também pode ser codificado em uma base de "fatia". Em um exemplo, uma fatia é um grupo adjacente horizontalmente de LCUs. Mas em termos mais gerais, a imagem residual inteira poderia formar uma fatia, ou uma fatia poderia ser uma única LCU, ou uma fatia poderia ser uma fila de LCUSs, e assim por diante. Fatias podem dar alguma resiliência a erros como elas são codificadas como unidades independentes. Os estados de codificador e decodificador são reajustados completamente a um limite de fatia. Por exemplo, intrapredição não é executada por limites de fatia; limites ' de fatia são tratados como limites de imagem para este propósito.
- [00067] A Figura 14 ilustra esquematicamente um conjunto de possíveis (candidatas) direções de predição. O conjunto completo de 34 direções de candidato está disponível a uma unidade de predição de 8x8, 16x16 ou 32x32 amostras. Os casos especiais de tamanhos de unidade de predição de 4x4 e 64x64 amostras têm um conjunto reduzido de direções de candidato disponíveis para eles (17 direções de candidato e 5 direções de candidato, respectivamente). As direções são determinadas através de deslocamento horizontal e vertical relativo a uma posição de bloco atual, mas são codificadas como "modos" de predição, um conjunto de qual é mostrado na Figura 15. Note que o denominado modo de CC representa uma média aritmética simples das amostras circundantes superiores e esquerdas.
[00068] Em termos gerais, depois de detectar uma direção de predição em relação a cada unidade de predição, os sistemas são operáveis para gerar um bloco predito de amostras de acordo com outras amostras definidas pela direção de predição.
[00069] A Figura 16 ilustra esquematicamente uma denominada varredura de diagonal para cima-direita, sendo um padrão de varredura de exemplo que pode ser aplicado pela unidade de varredura 360. Na Figura 16, o padrão é mostrado para um bloco de exemplo de coeficientes de DCT 8x8, com o coeficiente de CC estando posicionado na posição esquerda de topo 840 do bloco, e frequências espaciais horizontais e verticais crescentes sendo representadas através de coeficientes a distâncias crescentes para baixo e à direita da posição de topo-esquerda 840. Outras ordens de varredura alternativas podem ser usadas ao invés.
[00070] Variações dos arranjos de bloco e das estruturas de CU, PU e
TU serão discutidas abaixo. Estas serão discutidas no contexto do aparelho da Figura 17, que é semelhante em muitos aspectos àquele ilustrado nas Figuras e 6 discutidas acima. Realmente, muitos dos mesmos numerais de referência í foram usados, e estas partes não serão discutidas adicionalmente.
. [00071] As diferenças substantivas principais com respeito às Figuras 5 e 6 relacionam-se ao filtro 560 (Figura 6), que na Figura 17 é mostrado em mais detalhe como compreendendo um filtro de 'desbloqueio' 1000 e bloco de decisão de codificação associado 1030, um filtro de compensação de adaptável à amostra (SAO) 1010 e gerador de coeficiente associado 1040, e um filtro de malha adaptável (ALF) 1020 e gerador de coeficiente associado
1050.
[00072] O filtro de 'desbloqueio' 1000 tenta reduzir a distorção e melhorar a qualidade visual e desempenho de predição retificação as bordas agudas que podem se formar entre limites de CU, PU e TU quando técnicas de codificação de bloco são usadas.
[00073] O filtro de SAO 1010 classifica pixels reconstruídos em categorias diferentes e então tenta reduzir a distorção adicionando simplesmente um Compensação para cada categoria de pixels. A intensidade de pixel e propriedades de borda são usadas para classificação de pixel. Para adicionalmente melhorar a eficiência de codificação, um quadro pode ser dividido em regiões para localização de parâmetros de Compensação.
[00074] O ALF 1020 tenta restaurar o quadro comprimido tal que a diferença entre os quadros reconstruídos e de fonte seja minimizada. Os coeficientes de ALF são calculados e transmitidos em uma base de quadro. O ALF pode ser aplicado ao quadro inteiro ou a áreas locais.
[00075] Como notado acima, os documentos de HEVC propostos usam um esquema de amostragem de croma particular conhecido como o esquema 4:2:0. O esquema 4:2:0 pode ser usado para equipamento doméstico/de consumidor. Porém, vários outros esquemas são possíveis.
[00076] Em particular, um denominado esquema 4:4:4 seria adequado para radiodifusão profissional, masterização e cinema digital, e em princípio teria a qualidade e taxa de dados mais alta.
' [00077] Semelhantemente, um denominado esquema 4:2:2 poderia ser . usado em radiodifusão profissional, masterização e cinema digital com alguma perda de fidelidade.
. [00078] Estes esquemas e suas possíveis estruturas de bloco PU e TU correspondentes são descritos abaixo.
[00079] Além disso, outros esquemas incluem o esquema monocromático 4:0:0.
[00080] No esquema 4:4:4, cada um dos três canais de Y, Cb e Cr tem a mesma taxa de amostra. Em princípio portanto, neste esquema haveria duas vezes tantos dados de croma quanto dados de luma.
[00081] Consequentemente em HEVC, neste esquema, cada um do três canais de Y, Cb e Cr teria blocos de TU e PU correspondentes que são o mesmo tamanho; por exemplo um bloco de luma 8x8 teria blocos de croma 8x8 correspondentes para cada um dos dois canais de croma.
[00082] Consequentemente neste esquema haveria geralmente uma relação direta de 1:1 entre tamanhos de bloco em cada canal.
[00083] No esquema 4:2:2, os dois componentes de croma são amostrados à meia taxa de amostra de luma (por exemplo usando subamostragem vertical ou horizontal, mas para os propósitos da descrição presente, subamostragem horizontal é assumida). Em princípio portanto, neste esquema haveria tantos dados de croma quanto dados de luma, entretanto os dados de croma seriam divididos entre os dois canais de croma.
[00084] Consequentemente em HEVC, neste esquema, os canais Cb e Cr teriam blocos de PU e TU de tamanho diferente para o canal de luma; por exemplo um bloco de luma 8x8 poderia ter blocos de croma de 4 de largura x 8 de altura correspondentes para cada canal de croma.
[00085] Notavelmente portanto neste esquema, os blocos de croma poderiam ser não quadrados, embora eles correspondam a blocos de luma quadrados. ' [00086] No esquema de HEVC 4:2:0 proposto atualmente, os dois . componentes de croma são amostrados a um quarto da taxa de amostra de ' luma (por exemplo usando subamostragem vertical e horizontal). Em ' princípio portanto, neste esquema há meio tantos dados de croma quanto dados de luma, os dados de croma sendo divididos entre os dois canais de croma.
[00087] Consequentemente em HEVC, neste esquema, novamente os canais Cb e Cr têm blocos de PU e TU de tamanho diferente para o canal de luma. Por exemplo, um bloco de luma 8x8 teria blocos de croma 4x4 correspondentes para cada canal de croma.
[00088] Os esquemas anteriores são conhecidos coloquialmente na técnica como 'relações de canal', como em 'uma relação de canal 4:2:0'; porém, será apreciado da descrição anterior que na realidade isto não significa sempre que os canais Y, Cb e Cr estão comprimidos ou caso contrário providos nessa relação. Consequentemente, enquanto referido com uma relação de canal, isto não deveria ser assumido ser literal. Na realidade, as relações corretas para o esquema 4:2:0 são 4:1:1 (as relações para o esquema 4:2:2 e esquema 4:4:4 estão na realidade corretas).
[00089] Antes de discutir arranjos particulares com referência às Figuras 18a e 18b, alguma terminologia geral será resumida ou revisitada.
[00090] Uma Unidade de Codificação Maior (LCU) é um objeto de quadro de raiz. Tipicamente, cobre a área equivalente a pixels de luma 64 x
64. É dividida recursivamente para formar uma hierarquia de árvore de Unidades de Codificação (CUs). Em termos gerais, os três canais (um canal de luma e dois canais de croma) têm a mesma hierarquia de árvore de CU. Tendo dito isto, porém, dependendo da relação de canal, uma CU de luma particular pode compreender um número diferente de pixels para as CUs de croma correspondentes.
[00091] As CUs ao término da hierarquia de árvore, quer dizer, as CUS " menores resultando do processo de divisão recursiva (que pode ser chamado : CUs de folha) são então divididas em Unidades de Predição (PUs). Os três canais (luma e dois canais de croma) têm a mesma estrutura de PU, exceto . quando a PU correspondente para um canal de croma teria muito pouco amostras, em qual caso apenas uma PU para aquele canal está disponível. Isto é configurável, mas geralmente a dimensão mínima de uma intra PU é 4 amostras; a dimensão mínima de uma inter PU é 4 amostras de luma (ou 2 amostras de croma para 4:2:0). A restrição no tamanho de CU mínimo sempre é grande bastante para pelo menos uma PU para qualquer canal.
[00092] As CUs de folha também são divididas em Unidades de Transformada (TUs). As TUs podem - e, quando elas são muito grandes (por exemplo, mais de amostras 32x32), devem ser divididas em TUs adicionais. Um limite é aplicado de forma que TUs possam ser divididas até uma profundidade de árvore máxima, atualmente configurada como 2 níveis. isto é, pode haver não mais que 16 TUs para cada CU. Um tamanho de TU permissível menor ilustrativo é amostras 4x4 e o tamanho de TU permissível maior é 32x32 amostras. Novamente, os três canais têm a mesma estrutura de TU onde quer que possível, mas se uma TU não puder ser dividida a uma profundidade particular para um dado canal devido à restrição de tamanho, permanece ao tamanho maior. O denominado arranjo de transformada de 'quad-tree' não quadrado (NSQT) é semelhante, mas o método de dividir em quatro TUs não precisa ser 2x2, mas pode ser 4x1 ou 1x4.
[00093] Se referindo às Figuras 18a e 18b, os tamanhos de bloco diferentes possíveis estão resumidos para blocos de CU, PU e TU, com Y se referindo a blocos de luma e C se referindo em um senso genérico a um representativo dos blocos de croma, e os números se referindo a pixels. 'Inter'
se refere a PUs de predição interquadro (ao invés de PUs de predição de intraquadro). Em muitos casos, só os tamanhos de bloco para os blocos de luma são mostrados. Os tamanhos correspondentes dos blocos de croma ' associados estão relacionados aos tamanhos de bloco de luma acordo com as : relações de canal.
' [00094] Assim, para 4:4:4, os canais de croma têm os mesmos ' tamanhos de bloco como os blocos de luma mostrados nas Figuras 18a e 18b. Por conseguinte, a estrutura de PU de croma inverte (ou é respectivamente idêntica a) a estrutura de PU de luma a todos os níveis de divisão (onde um "nível de divisão" se refere à escolha das opções de tamanho de CU e, dentro de uma opção de CU, a escolha de tamanho de PU e opções de forma).
Enquanto seria possível empregar o mesmo conjunto de possíveis tamanhos de bloco e formas, mas permitir os diferentes (desse conjunto) serem selecionados em relação a componentes de luma e croma de uma CU, em algumas concretizações da descrição, o mesmo tamanho e forma de bloco de PU são selecionados para os componentes de croma e luma correspondendo a uma CU. Portanto, qualquer tamanho e forma de PU selecionado para uma CU de luma, as PUs de tamanho e forma idênticos são selecionadas para os componentes de croma dessa PU. Note que como discutido abaixo, a seleção de tamanhos e formas de bloco e PUs é uma decisão baseada em codificador, sob o controle do controlador 343. Em tais arranjos, as amostras de crominância e luminância estão em formato 4:4:4 e estão arranjadas como várias unidades de codificação, cada uma compreendendo um bloco de amostras de luminância e crominância; e uma direção de predição é detectada em relação a uma unidade de predição atual, sendo um bloco de amostras de luminância e crominância representando pelo menos um subconjunto de uma unidade de codificação respectiva. Para uma unidade de codificação particular, um tamanho e forma de uma ou mais unidades de predição cada uma compreendendo amostras de luminância e crominância dessa unidade de codificação (por exemplo, pelo controlador 343), tal que a seleção do tamanho e forma de unidade de predição seja a mesma para amostras de luminância e para amostras de crominância. ' [00095] Para 4:2:2 e 4:2:0, os blocos de croma cada um terá menos . pixels do que o bloco de luma correspondente, de acordo com a relação de ' canal.
. [00096] Os arranjos mostrados nas Figuras 18a e 18b se relacionam a quatro possíveis tamanhos de CU: pixels de luma 64x64, 32x32, 16x16 e 8x8, respectivamente. Cada uma destas CUs tem uma fila correspondente de opções de PU (mostradas em uma coluna 1140) e opções de TU (mostradas em uma coluna 1150). Para os possíveis tamanhos de CU definidos acima, as filas de opções estão referenciadas como 1100, 1110, 1120 e 1130, respectivamente.
[00097] Note que 64x64 é atualmente um tamanho máximo de CU, mas esta restrição poderia mudar.
[00098] Dentro de cada fila 1100 ... 1130, opções de PU diferentes são mostradas aplicáveis àquele tamanho de CU. As opções de TU aplicáveis àquelas configurações de PU são mostradas alinhadas horizontalmente com as opções de PU respectivas).
[00099] Note que em vários casos, múltiplas opções de PU são providas. Como discutido acima, a pontaria do aparelho em selecionar uma configuração de PU é casar (tão proximamente quanto possível) o limite de objetos reais no quadro, de forma que parâmetros de predição diferentes possam ser aplicados a objetos reais diferentes.
[000100] Os tamanhos de bloco e formas e PUs são uma decisão baseada em codificador, sob o controle do controlador 343. O método atual envolve conduzir tentativas de muitas estruturas de árvore de TU para muitas direções, adquirindo o melhor "custo" a cada nível. Aqui, o custo pode ser expresso como uma medida da distorção, ou ruído, ou erros, ou taxa de bit resultando de cada estrutura de bloco. Assim, o codificador pode tentar duas ou mais (ou até mesmo todas disponíveis) permutações de tamanhos e formas de bloco dentro daqueles permitidos sob as estruturas de árvore e hierarquias : discutidas acima, antes de selecionar a uma das tentativas que dá a taxa de bit . mais baixa para uma certa medida de qualidade exigida, ou a distorção mais ' baixa (ou erros, ou ruído, ou combinações destas medidas) para uma taxa de . bit exigida, ou uma combinação destas medidas.
[000101] Dada a seleção de uma configuração de PU particular, vários níveis de divisão podem ser aplicados para gerar as TUs correspondentes. Se referindo à fila 1100, no caso de um PU 64x64, este tamanho de bloco é muito grande para uso como uma TU e assim um primeiro nível de divisão (de "nível 0" (não divida) a nível 1") é compulsório, resultando em um arranjo de quatro TUs de luma 32x32. Cada um destes pode ser sujeito à divisão adicional em uma hierarquia de árvore (de "nível 1" a nível 2") como exigido, com a divisão sendo executada antes de transformar ou quantizar aquela TU é executado. O número máximo de níveis na árvore de TU está limitado (por exemplo) pelos documentos de HEVC.
[000102] Outras opções são providas para tamanhos e formas de PU no caso de um CU de pixel de luma 64x64. Estes estão restringidos a usar só com quadros inter-codificados e, em alguns casos, com a denominada opção de AMP habilitada. AMP se refere à Divisão de Movimento Assimétrica e permite a PUs serem divididas assimetricamente.
[000103] Semelhantemente, em alguns casos, opções são providas para tamanhos e formas de TU. Se NQST (transformada de 'quad-tree' não quadrada, permitindo basicamente uma TU não quadrada) é habilitado, então divisão a nível 1 e/ou nível 2 pode ser executada como mostrado, enquanto se NQST não estiver habilitado, os tamanhos de TU seguem o padrão de divisão da TU maior respectiva para aquele tamanho de CU.
[000104] Opções semelhantes são providas para outros tamanhos de CU.
[000105] Além da representação gráfica mostrada nas Figuras 18a e 18b, a parte numérica da mesma informação é provida na tabela seguinte, entretanto a apresentação nas Figuras 18a e 18b é considerada definitiva. ' "n/a" indica um modo que não é permitido. O tamanho de pixel horizontal é . recitado primeiro. Se uma terceira figura for dada, ela relaciona-se ao número ' de casos desse tamanho de bloco, como em blocos (horizontal) x (vertical) x . (número de casos). N é um inteiro. de CU 64x64 64x32x2 (configuração na 32x32x4 32x8x4 horizontal) 64x16 + 64x48 configuração horizontal 2 32x64x2 (configuração na 32x32x4 8x32x4 vertical) 16x64 + 48x64 configuração vertical 2 32x32 32x16x2 (configuração na 32x8x4 16x4x4 (luma) + horizontal) 4x4x4 (croma, 4:2:0 ou 32x8 + 32x24 4:2:2) ou 8x4x4 (croma, configuração horizontal 2 4222 16x32x2 (configuração na 8x32x4 4x16Xx4 (luma) + 4x4x4 vertical) (croma) 8x32 + 24x32 configuração vertical 2 4x8x4 (croma: 16x8x2 (configuração na 16x4x4 (luma) 4x4x4 (luma) + 4x8x]1 horizontal) +4x8x4 (croma) (4:2:0 | (croma) (4:2:0 ou 4:2:2) 16x4 + 16x12 ou 4:2:2) 4x4x4 (luma) + 8x4x1 (configuração horizontal 2) 16x4x4 (luma) + (croma) 8x4x4 (croma) (4:2:2) 4:2:2 8x16x2 (configuração na vertical) 4x16+ 12x16 configuração vertical 2 8x8 8x8 8x8 4x4x4 (luma) + A4x4x4 4x8x1 (croma) na 8x4x2 (configuração horizontal) 4x8x2 (configuração vertical sita cego croma) 4x8x1 (croma) n/a Variantes de estrutura de bloco 4:2:0, 4:2:2 e 4:4:4
[000106] Foi apreciado que ambos os esquemas 4:2:0 e 4:4:4 têm blocos de PU quadrados para codificação de intrapredição. Além disso, atualmente o esquema 4:2:0 permite blocos de PU e TU de pixel 4x4.
[000107] Em concretizações, é proposto consequentemente que para o esquema 4:4:4, a recursão para blocos de CU seja permitida até pixels 4x4 em ' lugar de pixels 8x8, desde que como notado acima, no modo 4:4:4, os blocos " de luma e croma serão o mesmo tamanho (isto é, os dados de croma não estão º subamostrados), e assim para um CU 4x4, nenhuma PU ou TU precisará ser : menos que o mínimo já permitido de pixels 4x4. Isto é portanto um exemplo de selecionar, para uma unidade de codificação particular, um tamanho e forma de uma ou mais unidades de predição, cada uma compreendendo amostras de luminância e crominância de pelo menos um subconjunto dessa unidade de codificação, a seleção do tamanho e forma de unidade de predição sendo a mesma para amostras de luminância e para amostras de crominância.
[000108] Semelhantemente, no esquema 4:4:4, em uma concretização da descrição presente, cada um dos canais Y, Cr, Cb, ou o Y e os dois canais Cr, Cb juntos, poderiam ter hierarquias de árvore de CU respectivas. Uma bandeira pode então ser usada para sinalizar qual hierarquia ou arranjo de hierarquias é para ser usado. Esta abordagem também poderia ser usada para um esquema de espaço de cor RGB 4:4:4. Porém, em uma alternativa, as hierarquias de árvore para croma e luma podem ao invés ser independentes.
[000109] No exemplo de uma CU 8x8 no esquema 4:2:0, isto resulta em quatro PUs de luma 4x4 e uma PU de croma 4x4. Consequentemente no esquema 4:2:2, tendo duas vezes tantos dados de croma, uma opção neste caso é ter duas PUs de croma 4x4, onde (por exemplo) o bloco de croma de fundo corresponderia em posição ao bloco de luma de fundo esquerdo. Porém, foi apreciado que usar uma PU de croma 4x8 não quadrada neste caso seria mais consistente com arranjos para o formato de croma 4:2:0.
[000110] No esquema 4:2:0, há em princípio alguns blocos de TU não quadrados permitidos para certas classes de codificação de interpredição, mas não para codificação de intrapredição. Porém em codificação de bh. 32/91 interpredição, quando transformadas de 'quad-tree' não quadradas (NSQT) estão desabilitadas (que é o padrão atual para o esquema 4:2:0), todas as TUs são quadradas. Consequentemente em efeito, o esquema 4:2:0 obriga ' atualmente TUs quadradas. Por exemplo, uma TU de luma 4:2:0 16x16 : corresponderia com TUs de Croma 4:2:0 8x8 Cb e Cr respectivas.
' [000111] Porém, como notado previamente, o esquema 4:2:2 pode ter bi. PUs não quadradas. Consequentemente em uma concretização da descrição presente, é proposto permitir TUs não quadradas para o esquema 4:2:2.
[000112] Por exemplo, enquanto uma TU de luma 4:2:2 16x16 poderia corresponder com duas TUs de Croma 4:2:2 8x8Cb e Cr respectivas, nesta concretização poderia ao invés corresponder com TUs de Croma 4:2:2 8x16 Cb e Cr respectivas.
[000113] Semelhantemente, quatro TUs de luma 4:2:2 4x4 poderiam corresponder com duas TUs 4:2:24x4 Cb+Cr respectivas, ou nesta concretização poderia ao invés corresponder com TUs 4:2:2 4x8 Cb e Cr respectivas. [0001 14] Tendo TUs de croma não quadradas, e consequentemente menos TUs, pode ser mais eficiente como elas são prováveis conter menos informação. Porém, isto pode afetar os processos de transformação e varredura de tais TUs, como será descrito mais tarde.
[000115] Finalmente, para o esquema 4:4:4, pode ser preferível ter a estrutura de TU independente de canal, e selecionável ao nível de sequência, quadro, pedaço ou mais fino.
[000116] Como notado acima, NSQT está atualmente desabilitado no esquema 4:2:0 de HEVC. Porém, se para predição interquadro, NSQT estiver habilitado e divisão assimétrica de movimento (AMP) for permitida, isto permite a PUs serem divididas assimetricamente; assim por exemplo um CU 16x16 pode ter uma PU 4x16 e uma PU 12x16. Nestas circunstâncias, considerações adicionais de estrutura de bloco são importantes para cada um dos esquemas 4:2:0 e 4:2:2.
[000117] Para o esquema 4:2:0, em NSQT, a largura/altura mínima de uma TU pode ser restringida a 4 amostras de luma/croma: ' [000118] Consequentemente em um exemplo não limitante, uma . estrutura de PU de luma 16x4/16x12 tem quatro TUs de luma 16x4 e quatro ' TUs de croma 4x4, onde as TUs de luma estão em um arranjo de bloco . vertical 1x4 e as TUs de croma estão em um arranjo de bloco 2x2.
[000119] Em um arranjo semelhante onde a divisão era vertical em lugar de horizontal, uma estrutura de PU de luma 4x16/12x16 tem quatro TUs de luma 4x16 e quatro TUs de croma 4x4, onde as TUs de luma estão em um arranjo horizontal de bloco 4x1 e as TUs de croma estão em um arranjo de bloco 2x2.
[000120] Para o esquema 4:2:2, em NSQT como um exemplo não limitante, uma estrutura de PU de luma 4x16/12x16 tem quatro TUs de luma 4x16 e quatro TUs de croma 4x8, onde as TUs de luma estão em um arranjo de bloco horizontal 4x1; as TUs de croma estão em um arranjo de bloco 2x2.
[000121] Porém, foi apreciado que uma estrutura diferente pode ser considerada para alguns casos. Consequentemente em uma concretização da descrição presente, em NSQT como um exemplo não limitante, estrutura de PU de luma 16x4/16x12 tem quatro TUs de luma 16x4 e quatro TUs de croma 8x4, mas agora as TUs de luma e croma estão em um arranjo de bloco vertical 1x4, alinhado com a disposição de PU (ao invés do arranjo de estilo 4:2:0 de quatro TUs de croma 4x8 em um arranjo de bloco 2x2).
[000122] Semelhantemente, PU 32x8 pode ter quatro TUs de luma 16x4 e quatro TUs de croma 8x4, mas agora as TUs de luma e croma estão em um arranjo de bloco 2x2.
[000123] Consequentemente mais geralmente, para o esquema 4:2:2, em NSQT, os tamanhos de bloco de TU são selecionados para alinhar com a disposição de bloco de PU assimétrico. Consequentemente, o NSQT permite proveitosamente limites de TU para alinhar com limites de PU, que reduz técnicafatos de alta frequência que podem caso contrário ocorrer.
[000124] Em termos gerais, concretizações da descrição podem se ' relacionar a um método de codificação de vídeo, aparelho ou programa . operável em relação a imagens de um sinal de vídeo de formato 4:2:2. Uma ' imagem a ser codificada é dividida em unidades de codificação, unidades de - predição e unidades de transformada para codificação, uma unidade de codificação sendo um arranjo quadrado de amostras de luminância e as amostras de crominância correspondentes, havendo uma ou mais unidades de predição em uma unidade de codificação, e havendo uma ou mais unidades de transformada em uma unidade de codificação; em que uma unidade de predição é uma unidade elementar de predição de forma que todas as amostras dentro de uma única unidade de predição sejam preditas usando uma técnica de predição comum, e uma unidade de transformada é uma unidade básica de transformação e quantização.
[000125] Um modo transformada não quadrada (tal como um modo de NSQT) é permitido de modo a permitir unidades de predição não quadradas. Opcionalmente, divisão assimétrica de movimento é habilitada de modo a permitir a assimetria entre duas ou mais unidades de predição correspondendo a uma única unidade de codificação.
[000126] O controlador 343 controla a seleção de tamanhos de bloco de unidade de transformada para alinhar com a disposição de bloco de unidade de predição, por exemplo detectando características de imagem na porção da imagem correspondendo a uma PU e selecionando tamanhos de bloco de TU em relação àquela PU de modo a alinhar limites de TU com bordas de características de imagem na porção da imagem.
[000127] As regras discutidas acima ditam que combinações de tamanhos de bloco estejam disponíveis. O codificador pode apenas tentar combinações diferentes. Como discutido acima, uma tentativa pode incluir duas ou mais, por todas as opções disponíveis. Os processos de codificação de tentativa podem ser executados de acordo com uma métrica de função de custo e um resultado selecionado de acordo com uma avaliação da função de : custo.
: [000128] Dado que há três níveis de variação, de acordo com o tamanho ' e forma de CU, o tamanho e forma de PU e o tamanho e forma de TU, isto : poderia conduzir a um número grande de permutações a serem codificadas por tentativa. Para reduzir esta variação, o sistema poderia codificar por tentativa para um tamanho de CU usando uma selecionada arbitrariamente das configurações de PU/TU permissíveis para cada tamanho de CU; então, tendo selecionado um tamanho de CU, um tamanho e forma de PU poderiam ser selecionados por tentativa codificando as opções de PU diferentes cada uma com uma única configuração de TU escolhida arbitrariamente. Então, tendo selecionado uma CU e PU, o sistema poderia tentar todas as configurações de TU aplicáveis para selecionar uma configuração de TU final.
[000129] Outra possibilidade é que alguns codificadores podem usar uma escolha fixa de configuração de bloco, ou podem permitir um subconjunto limitado das combinações mostradas nas discussões acima. Intrapredição Intrapredição 4:2:0
[000130] Retornando agora à Figura 22, para intrapredição, HEVC permite predição de croma angular.
[000131] Por meio de introdução, Figura 22 ilustra 35 modos de predição aplicáveis a blocos de luma, 33 de quais especificam direções para amostras de referência para uma posição de amostra predita atual 110. Os dois modos restantes são modo 0 (planar) e modo 1 (cc).
[000132] HEVC permite croma ter modos de CC, Vertical, Horizontal, Planar, DM CROMA e LM CHROMA.
[000133] DM CHROMA indica que o modo de predição a ser usado é o mesmo como aquele da PU de luma colocalizada (isto é, um dos 35 mostrados na Figura 22).
[000134] LM CHROMA (croma de modo linear) indica que amostras ' de luma colocalizadas (subamostradas como apropriado às relações de canal) são usadas para derivar as amostras de croma preditas. Neste caso, se a PU de : luma da qual o modo de predição de DM CHROMA seria levado a CC f selecionado, Vertical, Horizontal ou Planar, essa entrada na lista de predição de croma usando é substituída modo 34. No modo de LM CHROMA, os pixels de luma dos quais os pixels de croma são preditos são graduados (e têm um Compensação aplicado se apropriado) de acordo com uma relação linear entre luma e croma. Esta relação linear é derivada de pixels circundantes, e a derivação pode ser executada em uma base de bloco por bloco, com o decodificador terminando decodificar um bloco antes de se mover para o próximo.
[000135] É notável que os modos de predição 2-34 amostram uma gama angular de 45 graus para 225 graus; quer dizer, uma diagonal metade de um quadrado. Isto é útil no caso do esquema 4:2:0, como notado acima só usa PUs de croma quadradas para predição intraquadro. Variantes de intrapredição 4:2:2
[000136] Porém, também como notado acima, o esquema 4:2:2 poderia ter PUs de croma retangulares (não quadradas) até mesmo quando as PUs de luma são quadradas. Ou realmente, o oposto poderia ser verdade: uma PU de luma retangular poderia corresponder a uma PU de croma quadrada. A razão para a discrepância é que em 4:2:2, a croma é subamostrada horizontalmente (relativa à luma), mas não verticalmente. Assim, a relação de aspecto de um bloco de luma e um bloco de croma correspondente seria esperada ser diferente.
[000137] Consequentemente, em uma concretização, para PUs de croma tendo uma relação de aspecto diferente para o bloco de luma correspondente,
uma tabela de mapeamento pode ser requerida para a direção. Assumindo (por exemplo) uma relação de aspecto de 1 para 2 para PUs de croma retangulares, então por exemplo modo 18 (atualmente a um ângulo de 135 graus) pode ser ' remapeado a 123 graus. Alternativamente, seleção de modo atual 18 pode ser é remapeada para uma seleção de modo atual 22, para o mesmo efeito.
[000138] Consequentemente mais geralmente, para PUs não quadradas, ' um mapeamento diferente entre a direção da amostra de referência e o modo de intrapredição selecionado pode ser provido comparado com aquele para PUs quadradas.
[000139] Mais geralmente ainda, quaisquer dos modos, incluindo os modos não direcionais, também pode ser remapeado baseado em evidência empírica.
[000140] É possível que tal mapeamento resultará em uma relação de muitos para um, fazendo a especificação do conjunto completo de modos redundante para PUs de croma 4:2:2. Neste caso, por exemplo, pode ser que só 17 modos (correspondendo à meia resolução angular) sejam necessários. Alternativamente ou além disso, estes modos podem ser distribuídos angularmente de uma maneira não uniforme.
[000141] Semelhantemente, o filtro de retificação usado na amostra de referência ao predizer o pixel na posição de amostra pode ser usado diferentemente; no esquema 4:2:0 só é usado para retificar pixels de luma, mas não os de croma. Porém, nos esquemas 4:2:2 e 4:4:4, este filtro pode ser usado também para as PUs de croma. No esquema 4:2:2, novamente o filtro pode ser modificado em resposta à relação de aspecto diferente da PU, por exemplo só sendo usado para um subconjunto de modos horizontais próximos. Um subconjunto de exemplo de modos é preferivelmente 2-18 e 34, ou mais preferivelmente 7-14. Em 4:2:2, a retificação de somente a coluna esquerda de amostras de referência pode ser executado em concretizações.
[000142] Estes arranjos são discutidos mais tarde em mais detalhe.
Variantes de intrapredição 4:4:4
[000143] No esquema 4:4:4, as PUs de croma e luma são o mesmo tamanho, e assim o modo de intrapredição para uma PU de croma pode ser ' tanto a mesma como a PU de luma colocalizada (assim economizando alguns . dados no fluxo de bits não tendo que codificar um modo separado), ou i alternativamente, pode ser selecionado independentemente.
s [000144] Neste caso posterior portanto, em uma concretização da descrição presente, alguém pode ter 1, 2 ou 3 modos de predição diferentes para cada uma das PUs em uma CU;
[000145] Em um primeiro exemplo, as PUs de Y, Cb e Cr podem todas usar o mesmo modo de intrapredição.
[000146] Em um segundo exemplo, a PU de Y pode usar um modo de intrapredição, e as PUs de Cb e Cr ambas usam outro modo de intrapredição selecionado independentemente.
[000147] Em um terceiro exemplo, as PUs de Y, Cb e Cr cada uma usa um modo de intrapredição selecionado independentemente respectivo.
[000148] Será apreciado que ter modos de predição independentes para os canais de croma (ou cada canal de croma) melhorará a precisão de predição de cor. Mas isto é às custas de dados auxiliares adicionais para comunicar os modos de predição independentes como parte dos dados codificados.
[000149] Para aliviar isto, a seleção do número de modos poderia ser indicada na sintaxe de alto nível (por exemplo ao nível de sequência, quadro, ou fatia). Alternativamente, o número de modos independentes poderia ser derivado do formato de vídeo; por exemplo, GBR poderia ter até 3, enquanto YCbCr poderia ser restringido a até 2.
[000150] Além de selecionar independentemente os modos, os modos disponíveis podem ser permitidos diferir do esquema 4:2:0 no esquema 4:4:4.
[000151] Por exemplo como as PUs de luma e croma são o mesmo tamanho em 4:4:4, a PU de croma pode se beneficiar de acesso a todas das 35
+ LMCHROMA + direções de DMCROMA disponíveis. Consequentemente para o caso de Y, Cb e Cr cada um tendo modos de predição independentes, então o canal de Cb poderia ter acesso a ' DM CHROMA e LM CHROMA, enquanto o canal de Cr poderia ter acesso ã a DM CHROMAY, DM CHROMA Cb, LMCHROMAY e ' LM CHROMA Cb, onde estes substituem referências para o canal de Luma & com referências para os canais de croma Y ou Cb.
[000152] Onde os modos de predição de luma são sinalizados derivando uma lista da dos modos mais prováveis e enviando um índice para essa lista, então se os modos de predição de croma forem independentes, pode ser necessário derivar listas independentes de modos mais prováveis para cada canal.
[000153] Finalmente, de uma maneira semelhante àquela notada para o caso de 4:2:2 acima, no esquema 4:4:4, o filtro de retificação usado na amostra de referência ao predizer o pixel na posição de amostra pode ser usado para PUs de croma de uma maneira semelhante para PUs de luma. Atualmente, um filtro passa-baixo [1,2,1] pode ser aplicado às amostras de referência antes de intrapredição. Isto só é usado para TUs de luma ao usar certos modos de predição.
[000154] Um dos modos de intrapredição disponíveis a TUs de croma é basear as amostras preditas em amostras de luma colocalizadas. Tal arranjo está ilustrado esquematicamente na Figura 19, que mostra um arranjo de TUs 1200 (de uma região de uma imagem de fonte) representado através de quadrados pequenos nos canais Cb, Cr e Y, mostrando o alinhamento especial entre características de imagem (indicado esquematicamente por caixas escuras e claras 1200) nos canais Cb e Y e nos canais Cr e Y. Neste exemplo, é de benefício forçar as TUs de croma basear suas amostras preditas em amostras de luma colocalizadas. Porém, não é sempre o caso que características de imagem correspondem entre os três canais. Na realidade,
certas características podem se aparecer só em um ou dois dos canais, e em geral o conteúdo de imagem dos três canais pode diferir.
[000155] Em concretizações da descrição, para TUs de Cr, LM Chroma . pode opcionalmente estar baseada em amostras colocalizadas do canal Cb . (ou, em outras concretizações, a dependência poderia ser ao contrário). Tal : arranjo é mostrado em forma esquemática na Figura 20. Aqui, TUs alinhadas . espacialmente estão ilustradas entre os canais Cr, Cb e Y. Um conjunto adicional de TUs etiquetado "fonte" é uma representação esquemática do quadro a cores como visto como um todo. As características de imagem (um triângulo de topo esquerdo e um triângulo inferior direito) visto na imagem de fonte não representa na realidade mudanças na luminância, mas só mudanças em crominância entre as duas regiões triangulares. Neste caso, basear LM Chroma para Cr nas amostras de luminância produziria uma predição pobre, mas basear isto nas amostras de Cb poderia dar uma predição melhor.
[000156] A decisão sobre qual modo de LM Chroma ser usado pode ser feita pelo controlador 343 e/ou o controlador de modo 520, baseado em codificação de tentativa de opções diferentes (incluindo a opção de basear LM Chroma nas amostras de luma colocalizadas ou croma colocalizadas), com a decisão sobre qual modo selecionar sendo feita avaliando uma função de custo, semelhante àquela descrita acima, com respeito às codificações de ensaio diferentes. Exemplos da função de custo são ruído, distorção, taxa de erro ou taxa de bit. Um modo dentre aqueles sujeitos à codificação de tentativa que dá a mais baixa de qualquer uma ou mais destas funções de custo é selecionado.
[000157] A Figura 21 ilustra esquematicamente um método usado para obter amostras de referência para intrapredição em concretizações da descrição. Ao ver a Figura 21, deveria ser tido em mente codificação é executada de acordo com um padrão de varredura, tal que em termos gerais, versões codificadas dos blocos acima e à esquerda de um bloco atual a ser codificado estejam disponíveis ao processo de codificação. Às vezes amostras abaixo-esquerda ou acima-direita são usadas, se elas foram codificados previamente como parte de outras TUs já codificadas dentro da LCU atual. Referência é feita à Figura 13 como descrito acima, por exemplo.
&: [000158] Uma área sombreada 1210 representa uma TU atual, quer ' dizer, uma TU que está sendo codificada atualmente.
[000159] Em 4:2:0 e 4:2:2, a coluna de pixels imediatamente à esquerda da TU atual não contém amostras de luminância e crominância colocalizadas por causa de subamostragem horizontal. Em outras palavras, isto é porque os formatos 4:2:0 e 4:2:2 têm meio tantos pixels de crominância quanto pixels de luminância (em uma direção horizontal), assim não toda posição de amostra de luminância tem uma amostra de crominância colocalizada. Portanto, embora amostras de luminância possam estar presentes na coluna de pixels imediatamente à esquerda da TU, amostras de crominância não estão presentes. Portanto, em concretizações da descrição, a coluna localizada duas amostras à esquerda da TU atual é usada para prover amostras de referência para LM Chroma. Note que a situação é diferente em 4:4:4, visto que a coluna imediatamente à esquerda da TU atual realmente contém amostras de luma e croma colocalizadas. Esta coluna poderia portanto ser usada para prover amostras de referência.
[000160] As amostras de referência são usadas como segue.
[000161] No modo de LM Chroma, amostras de croma preditas são derivadas de amostras de luma reconstruídas de acordo com uma relação linear. Assim, em termos gerais, pode ser dito que os valores de crominância preditos dentro da TU são dados por: Pc=a+bP, onde Pc é um valor de amostra de crominância, Pr, é um valor de amostra de luminância reconstruído naquela posição de amostra, e a e b são constantes. As constantes são derivadas para um bloco particular detectando a relação entre amostras de luma e croma reconstruídas amostras na fila logo acima daquele bloco e na coluna logo à esquerda daquele bloco, estas sendo posições de amostra que já foram codificadas (veja acima). ' [000162] Em concretizações da descrição, as constantes a e b são - derivadas como segue: ' a = R(Pj', Pc') / R(P1', PU) : onde R representa um função de regressão linear (mínimos quadrados), e P/' e Pc' são amostras de luminância e crominância respectivamente da fila adjacente e coluna como discutido acima, e: b = média (Pc') - a.média (Pj')
[000163] Para 4:4:4, os valores de Py' e Pc' são tomados da coluna imediatamente à esquerda da TU atual, e a fila imediatamente acima da TU atual. Para 4:2:2, os valores de Pr' e Pc' são tomados da fila imediatamente acima da TU atual e a coluna no bloco adjacente que está duas posições de amostra longe da borda esquerda da TU atual. Para 4:2:0 (que está subamostrado verticalmente e horizontalmente) os valores de P,' e Pc' seriam tomados idealmente de uma fila que está duas filas acima da TU atual, mas na realidade são tomados de uma fila no bloco adjacente que está uma posição de amostra acima da TU atual, e a coluna no bloco adjacente que está duas posições de amostra longe da borda esquerda da TU atual. A razão é evitar ter que manter uma fila inteira adicional de dados em memória. Assim nesta consideração, 4:2:2 e 4:2:0 são tratados de um modo semelhante.
[000164] Por conseguinte, estas técnicas se aplicam a métodos de codificação de vídeo tendo um modo de predição de crominância no qual um bloco atual de amostras de crominância representando uma região da imagem é codificado derivando e codificando uma relação das amostras de crominância com respeito a um bloco colocalizado de amostras de luminância (tais como amostras de luminância reconstruídas) representando a mesma região da imagem. A relação (tal como a relação linear) é derivada comparando (caso contrário expresso como correspondentemente localizado) amostras de luminância e crominância de blocos já codificados adjacentes. As amostras de crominância são derivadas de amostras de luminância de acordo ' com a relação; e a diferença entre as amostras de crominância preditas e as : amostras de crominância atuais é codificada como dados residuais. ' [000165] Em relação a uma primeira resolução de amostragem (tal como : 4:4:4), onde as amostras de crominância têm a mesma taxa de amostragem como as amostras de luminância, as amostras colocalizadas são amostras em posições de amostra adjacentes ao bloco atual.
[000166] Em relação a uma segunda resolução de amostragem (tal como 4:2:2 ou 4:2:0), onde as amostras de crominância têm uma taxa de amostragem mais baixa do que aquela das amostras de luminância, uma coluna mais próxima ou fila de amostras de luminância e crominância colocalizadas do bloco já codificado adjacente é usada para prover as amostras colocalizadas. Ou onde, no caso da segunda resolução de amostragem sendo uma resolução de amostragem 4:2:0, as amostras correspondentemente localizadas são uma fila de amostras adjacentes ao bloco atual e uma coluna mais próxima ou fila de amostras de luminância e crominância correspondentemente localizadas, dos blocos já codificados adjacentes.
[000167] A Figura 22 ilustra esquematicamente os ângulos de predição disponíveis para amostras de luma. O pixel atual sendo predito como mostrado ao centro do diagrama como um pixel 1220. Os pontos menores 1230 representam pixels adjacentes. Aqueles localizados nos lados de topo ou esquerdo do pixel atual estão disponíveis como amostras de referência para gerar uma predição, porque eles foram codificados previamente. Outros pixels são desconhecidos atualmente (na hora de predizer o pixel 1220) e serão preditos no tempo devido eles mesmos.
[000168] Cada direção de predição numerada aponta para amostras de referência 1230 de dentro um grupo de amostras de referência de candidato nas bordas de topo ou esquerda do bloco atual que são usadas para gerar o pixel atual predito. No caso de blocos menores, onde as direções de predição : apontam para locais entre amostras de referência, uma interpolação linear . entre amostras de referência adjacentes (qualquer lado da posição de amostra ' apontada pela direção indicada pelo modo de predição atual) é usada.
. [000169] Voltando agora à predição intra-angular para croma amostras, para 4:2:0, menos direções de predição estão disponíveis por causa da escassez relativa das amostras de croma. Porém, se o modo de DM CHROMA for selecionado, então o bloco de croma atual usará a mesma direção de predição como o bloco de luma colocalizado. Em troca, isto significa que as direções de luma para intrapredição também estão disponíveis para croma.
[000170] Porém, para amostras de croma em 4:2:2, pode ser considerado contra-intuitivo usar o mesmo algoritmo de predição e direção como luma quando DM CHROMA é selecionado, dado que blocos de croma agora têm uma relação de aspecto diferente daquela dos blocos de luma. Por exemplo, uma linha de 45º para um arranjo de luma quadrado de amostras ainda deveria mapear a uma linha de 45º para amostras de croma, embora com um arranjo de amostras de tamanho retangular. Sobrepor a grade retangular sobre uma grade quadrada indica que a linha de 45º então mapearia na realidade a uma linha de 26,6º.
[000171] A Figura 23 ilustra esquematicamente direções de intrapredição de luma como aplicadas a pixels de croma em 4:2:2, em relação a um pixel atual a ser predito 1220. Note que há meio tantos pixels horizontalmente quantos há verticalmente, porque 4:2:2 têm metade da taxa de amostra horizontal no canal de croma quando comparado ao canal de luma.
[000172] A Figura 24 ilustra esquematicamente a transformação ou mapeamento dos pixels de croma 4:2:2 a uma grade quadrada, e subsequentemente como esta transformação muda as direções de predição.
[000173] As direções de predição de luma são mostradas como linhas interrompidas 1240. O pixels de croma 1250 são remapeados a uma grade ' quadrada dando um arranjo retangular metade da largura 1260 do arranjo de . luma correspondente (tal como aquele mostrado na Figura 22). As direções de predição mostradas na Figura 23 foram remapeadas ao arranjo retangular. . Pode ser visto que para alguns pares de direções (um par sendo uma direção de luma e uma direção de croma) tanto há um sobreposição ou uma relação íntima. Por exemplo, direção 2 no arranjo de luma cobre substancialmente a direção 6 no arranjo de croma. Porém, também será notado que algumas direções de luma, aproximadamente metade delas, não têm nenhuma direção de croma correspondente. Um exemplo é a direção de luma numerada 3. Também, algumas direções de croma (2-5) não tem nenhum equivalente no arranjo de luma, e algumas direções de luma (31-34) não têm nenhum equivalente no arranjo de croma. Mas em geral, a sobreposição como mostrada na Figura 24 demonstra que seria impróprio usar o mesmo ângulo para ambos os canais de luma e croma.
[000174] Por conseguinte, a fim de derivar o ângulo de predição apropriado para croma quando (a) DM CHROMA é selecionado e (b) o modo de DM CHROMA atualmente em uso indica que a direção de predição de croma deveria ser aquela do bloco de luma colocalizado, o procedimento seguinte é aplicado: (1) derive o passo de ângulo de intrapredição e seu inverso de acordo com a direção de luma e de acordo com regras de HEVC usuais; (ii) se a direção de luma for predominantemente vertical (quer dizer, por exemplo, um modo numerado de 18 a 34 inclusive), então o passo de ângulo de intrapredição é dividido ao meio e seu inverso é dobrado; (li) caso contrário, se a direção de luma for predominantemente horizontal (quer dizer, por exemplo, um modo numerado de 2 a 17 inclusive), então o passo de ângulo de intrapredição é dobrado e seu inverso dividido ao meio.
[000175] Por conseguinte, estas concretizações relacionam-se a métodos : de codificação e decodificação de vídeo, aparelho ou programas em que . amostras de luminância e crominância são preditas de outras amostras de ' referência respectivas de acordo com uma direção de predição associada com + uma amostra a ser predita. Em modos tais como 4:2:2, as amostras de crominância têm uma taxa de amostragem horizontal e/ou vertical mais baixa do que as amostras de luminância, de forma que a relação de resolução horizontal de luminância para resolução horizontal de crominância seja diferente para a resolução vertical de luminância para resolução vertical de crominância. Em resumo, isto significa que um bloco de amostras de luminância tem uma relação de aspecto diferente para um bloco correspondente de amostras de crominância.
[000176] O preditor intraquadro 530, por exemplo, é operável para detectar uma primeira direção de predição definida em relação a uma grade de uma primeira relação de aspecto a respeito de um conjunto de amostras atuais a serem preditas; e aplicar um mapeamento de direção à direção de predição de modo a gerar uma segunda direção de predição definida em relação a uma grade de amostras de uma relação de aspecto diferente do mesmo conjunto de amostras atuais a serem preditas.
[000177] Em concretizações, a primeira direção de predição é definida a respeito de amostras de luminância ou crominância, e a segunda direção de predição é definida a respeito da outra das amostras de luminância e crominância. Nos exemplos particulares discutidos na descrição presente, a direção de predição de luminância pode ser modificada para prover a direção de predição de crominância. Mas, o outro modo poderia ser usado.
[000178] A técnica é particularmente aplicável à intrapredição, de modo que as amostras de referência sejam amostras da mesma imagem respectiva como as amostras a serem preditas.
[000179] Em pelo menos alguns arranjos, a primeira direção de predição é definida com respeito a um bloco quadrado de amostras de luminância ' incluindo a amostra de luminância atual; e a segunda direção de predição é . definida com respeito a um bloco retangular de amostras de crominância incluindo a amostra de crominância atual.
. [000180] É possível prover modos de predição independentes para os dois componentes de crominância. Em tal arranjo, as amostras de crominância compreedem amostras de primeiro e segundo componentes de crominância, e a técnica compreede aplicar a etapa de mapeamento de direção discutida acima em relação ao primeiro componente de crominância (tal como Cb); e prover um modo de predição diferente em relação ao segundo componente de crominância (tal como Cr).
[000181] Os dados de vídeo podem estar em um formato 4:2:2 ou um formato 4:4:4, por exemplo.
[000182] Em termos gerais, concretizações da descrição podem prover modos de predição independentes para os componentes de crominância (por exemplo, para cada um dos componentes de luminância e crominância separadamente). Estas concretizações relacionam-se a métodos de codificação de vídeo em que amostras de luminância e crominância de uma imagem são preditas de outras amostras de referência respectivas da mesma imagem de acordo com uma direção de predição associada com uma amostra a ser predita, as amostras de crominância tendo uma taxa de amostragem horizontal e/ou vertical mais baixa do que as amostras de luminância de forma que a relação de resolução de luminância horizontal para resolução de crominância horizontal seja diferente para a relação de resolução de luminância vertical para resolução de crominância vertical de forma que um bloco de amostras de luminância tenha uma relação de aspecto diferente para a um bloco correspondente de amostras de crominância, e as amostras de crominância representando primeiro e segundo componentes de crominância.
[000183] O seletor de modo intraquadro 520 seleciona um modo de predição definindo uma seleção de uma ou mais amostras de referência para . predizer uma amostra de crominância atual do primeiro componente de A crominância (tal como Cb). Também seleciona um modo de predição ' diferente definindo uma seleção diferente de uma ou mais amostras de : referência para predizer uma amostra de crominância atual do segundo componente de crominância (tal como Cr), colocalizado com a amostra de crominância atual do primeiro componente de crominância.
[000184] Um filtro de amostra de referência pode opcionalmente ser aplicado a amostras horizontais ou amostras verticais (ou ambas). Como discutido acima, o filtro pode ser um filtro de 3 derivações normalizadas "1 2 1", aplicado atualmente a todas as amostras de referência de luma exceto o fundo esquerdo e topo direito (as amostras de um bloco de NxN são juntadas para formar um único arranjo 1D de tamanho 2N+1, e então opcionalmente filtradas). Em concretizações da descrição, é aplicado só a primeira (borda esquerda) ou última (borda de topo) N+1 amostras de croma para 4:2:2, mas notando que o fundo esquerdo, topo direito e topo esquerdo não seriam ajustados então; ou todas as amostras de croma (como para luma), para 4:2:2 e 4:4:4.
[000185] Concretizações também podem prover métodos de codificação ou decodificação de vídeo, aparelho ou programas em que luminância e primeira e segunda amostras de componente de crominância são preditas de outras amostras de referência respectivas de acordo com uma direção de predição associada com uma amostra a ser predita, envolvendo predizer amostras do segundo componente de crominância de amostras do primeiro componente de crominância.
[000186] Concretizações também podem prover métodos de codificação ou decodificação de vídeo, aparelho ou programas em que luminância e primeira e segunda amostras de componente de crominância são preditas de outras amostras de referência respectivas de acordo com uma direção de predição associada com uma amostra a ser predita, envolvendo filtrar as * amostras de referência.
: [000187] Como discutido com referência às Figuras 19 e 20, é possível que o modo de predição diferente compreenda um modo pelo qual amostras " do segundo componente de crominância são preditas de amostras do primeiro componente de crominância.
[000188] Note que modos 0 e 1 não são modos de predição angulares e assim não estão incluídos neste procedimento. O efeito do procedimento mostrado acima é mapear as direções de predição de croma sobre as direções de predição de luma na Figura 24.
[000189] Para 4:2:0, quando tanto um modo de predição puramente horizontal (modo de luma 10) ou um modo de predição puramente vertical (modo de luma 26) é selecionado, as bordas de topo ou esquerda da TU predita estão sujeitas à filtragem para o canal de luma somente. Para o modo de predição horizontal, a fila de topo é filtrada na direção vertical. Para o modo de predição vertical, a coluna esquerda é filtrada na direção horizontal.
[000190] Filtrar uma coluna de amostras na direção horizontal pode ser entendido como aplicar um filtro orientado horizontalmente a cada amostra por vez da coluna de amostras. Assim, para uma amostra individual, seu valor será modificado pela ação do filtro, baseado em um valor filtrado gerado do valor atual daquela amostra e de uma ou mais outras amostras a posições de amostra deslocadas daquela amostra em uma direção horizontal (quer dizer, uma ou mais outras amostras à esquerda e/ou direita da amostra em questão).
[000191] Filtrar uma fila de amostras na direção vertical pode ser entendido como aplicar um filtro orientado verticalmente a cada amostra por vez da fila de amostras. Assim, para uma amostra individual, seu valor será modificado pela ação do filtro, baseado em um valor filtrado gerado do valor atual daquela amostra e de uma ou mais outras amostras a posições de amostra deslocadas daquela amostra em uma direção vertical (quer dizer, uma ou mais outras amostras acima e/ou abaixo da amostra em questão). : [000192] Um propósito do processo de filtragem de pixel de borda . descrito acima é apontar a reduzir efeitos de borda baseados em bloco na ' predição, por esse meio apontando a reduzir energia nos dados de imagem ' residuais.
[000193] Em concretizações, um processo de filtragem correspondente também é provido para TUs de croma em 4:4:4 e 4:2:2. Levando em conta a subamostragem horizontal, uma proposta é só filtrar a fila de topo da TU de croma em 4:2:2, mas filtrar ambas a fila de topo e coluna esquerda (como apropriado, de acordo com o modo selecionado) em 4:4:4. É considerado apropriado filtrar só nestas regiões de modo a evitar filtrar fora detalhe demais útil, que (se filtrado fora) conduziria a uma energia aumentada dos dados residuais.
[000194] Para 4:2:0, quando modo de CC é selecionado, uma ou ambas das bordas de topo e/ou esquerda da TU predita são sujeitas à filtragem para o canal de luma somente. Aqui, este é um exemplo de um caso onde as amostras de luminância representam um componente de luminância e amostras de crominância respectivas representam dois componentes de crominância, a etapa de filtragem é aplicada a um subconjunto dos três componentes. O subconjunto pode consistir no componente de luminância. À filtragem pode envolver filtrar uma ou ambas da coluna esquerda de amostras no bloco predito de amostras e a fila de topo de amostras no bloco predito de amostras.
[000195] A filtragem podem ser tal que em Modo de CC, o filtro faça uma operação de média (1xamostra exterior vizinha + 3*amostra de borda)/4 para todas as amostras em ambas as bordas. Porém, para o topo esquerdo, a função de filtro é (2xamostra atual + lIxamostra acima + lxamostra esquerda)/4. Isto é um exemplo de uma operação na qual em um modo de CC no qual uma amostra predita é gerada como uma média aritmética simples de amostras circundantes, a etapa de filtragem compreedendo filtrar a coluna ' esquerda de amostras no bloco predito de amostras e filtrar a fila de topo de “ amostras no bloco predito de amostras.
[000196] O filtro de H/V é uma média entre amostra exterior vizinha e . amostra de borda.
[000197] Em algumas concretizações, este processo de filtragem também é provido para TUs de croma em 4:4:4 e 4:2:2. Novamente, levando em conta a subamostragem horizontal, em algumas concretizações, só a fila de topo das amostras de croma é filtrada para 4:2:2, mas a fila de topo e coluna esquerda da TU de croma são filtradas para 4:4:4.
[000198] Por conseguinte, esta técnica pode aplicar em relação a um método de codificação ou decodificação de vídeo, aparelho ou programa em que amostras de luminância e crominância em (por exemplo) um formato 4:4:4 ou um formato 4:2:2 são preditas de outras amostras respectivas de acordo com uma direção de predição associada com blocos de amostras a serem preditas.
[000199] Em concretizações da técnica, uma direção de predição é detectada em relação a um bloco atual a ser predito. Um bloco predito de amostras de crominância é gerado de acordo com outras amostras de crominância definidas pela direção de predição. Se a direção de predição detectada for substancialmente vertical (por exemplo, estando dentro de +/- n modos de ângulo do modo precisamente vertical, onde n é (por exemplo) 2), a coluna esquerda de amostras é filtrada (por exemplo, em uma direção horizontal usando um filtro orientado horizontalmente) no bloco predito de amostras de crominância. Ou, se a direção de predição detectada for substancialmente horizontal (por exemplo, estando dentro de +/- n modos de ângulo do modo precisamente horizontal, onde n é (por exemplo) 2), a fila de topo de amostras é filtrada (por exemplo, em uma direção vertical usando um filtro orientado verticalmente) no bloco predito de amostras de crominância. Em cada caso, a operação pode aplicar só na coluna esquerda ou na coluna de ' topo, respectivamente. Então, a diferença entre o bloco de crominância . predito filtrado e o bloco de crominância atual é codificada, por exemplo como dados residuais. Alternativamente, o teste poderia ser para um modo ' precisamente vertical ou horizontal em lugar de um modo substancialmente vertical ou horizontal. A tolerância de +/- n poderia ser aplicada a um dos testes (vertical ou horizontal), mas não ao outro. Em concretizações da descrição, só a coluna esquerda ou a fila de topo do bloco predito pode ser filtrada, e a filtragem pode ser executada por um filtro orientado horizontalmente ou um filtro orientado verticalmente, respectivamente.
[000200] A filtragem pode ser executada pelos preditores respectivos 520, 530, atuando como um filtro nesta consideração.
[000201] Depois do processo de filtragem, concretizações da técnica tanto codificam uma diferença entre o bloco de crominância predito filtrado e o bloco de crominância atual (a um codificador) ou aplicam uma diferença decodificada ao bloco de crominância predito filtrado de modo a codificar o bloco (a um decodificador). Inter-predição
[000202] É notado que interpredição em HEVC já permite PUs retangulares, assim modos 4:2:2 e 4:4:4 já são compatíveis com processamento de interpredição de PU.
[000203] Cada quadro de uma imagem de vídeo é uma amostragem discreta de uma cena real, e como resultado cada pixel é uma aproximação gradual de um gradiente de mundo real em cor e brilho.
[000204] Em reconhecimento disto, ao predizer o valor de Y, Cb ou Cr de um pixel em um novo quadro de vídeo de um valor em um quadro de vídeo prévio, os pixels nesse quadro de vídeo prévio são interpolados para criar uma
$3/91 estimativa melhor dos gradientes de mundo real originais, para permitir uma seleção mais precisa de brilho ou cor para o novo pixel. Consequentemente, os vetores de movimento usados para apontar entre quadros de vídeo não ' estão limitados a uma resolução de pixel inteiro. Em lugar disso, eles podem " apontar para uma posição de sub-pixel dentro da imagem interpolada.
' Inter-predição 4:2:0 : [000205] Se referindo agora às Figuras 25 e 26, no esquema 4:2:0, como notado acima, tipicamente uma PU de luma 8x8 1300 estará associada com PUs de croma 4x4 de Cb e Cr 1310. Consequentemente, para interpolar os dados de pixel de luma de croma até a mesma resolução efetiva, filtros de interpolação diferentes são usados.
[000206] Por exemplo para a PU de luma 4:2:0 8x8, interpolação é '4 de pixel, e assim um filtro de 8 derivações x4 é aplicado horizontalmente primeiro, e então o mesmo filtro de 8 derivações x4 é aplicado verticalmente, de forma que a PU de luma seja efetivamente esticada 4 vezes em cada direção, para formar um arranjo interpolado 1320 como mostrado na Figura
25. Enquanto isso, a PU de croma 4:2:0 4x4 correspondente é interpolada 1/8 pixel para gerar a mesma resolução eventual, e assim um filtro de x8 de 4 derivações é aplicado horizontalmente primeiro, então o mesmo filtro de 4 derivações x8 é aplicado verticalmente, de forma que as PUs de croma 4:2:0 sejam efetivamente esticadas 8 vezes em cada direção para formar um arranjo 1330, como mostrado na Figura 26. Inter-predição 4:2:2
[000207] Um arranjo semelhante para 4:2:2 será descrito agora com referência às Figuras 27 e 28, que ilustram uma PU de luma 1350 e um par de PUs de croma correspondentes 1360.
[000208] Se referindo à Figura 28, como notado previamente, no esquema 4:2:2, a PU de croma 1360 pode ser não quadrada, e para o caso de uma PU de luma 4:2:2 8x8, será tipicamente uma PU de Croma de 4 de largura x 8 de altura 4:2:2 para cada um dos canais Cb e Cr. Note que a PU de croma está desenhada, para os propósitos da Figura 28, como um arranjo de forma quadrada de pixels não quadrados, mas em termos gerais, é notado que : as PUs 1360 são arranjos de pixel 4 (horizontal) x 8 (vertical).
" [000209] Enquanto pode ser possível portanto usar o filtro de luma de 8 derivações x4 existente verticalmente na PU de croma, em uma concretização - da descrição presente, foi apreciado que o filtro de croma de 4 derivações x8 existente bastaria para interpolação vertical como na prática alguém só está interessado nos locais fracionários pares da PU croma interpolada.
[000210] Consequentemente, Figura 27 mostra que a PU de luma 4:2:2 8x8 1350 interpolada como antes com um filtro de 8 derivações x4, e as PUs de croma 4:2:2 4x8 1360 interpoladas com o filtro de croma de 4 derivações x8 existente na direção horizontal e vertical, mas só com os resultados fracionários pares usados para formar a imagem interpolada na direção vertical.
[000211] Estas técnicas são aplicáveis a métodos de codificação ou decodificação de vídeo, aparelho ou programas usando predição interimagem para codificar dados de vídeo de entrada nos quais cada componente de crominância tem 1/M-ésimo da resolução horizontal do componente de luminância e 1/N-ésimo da resolução vertical do componente de luminância, onde M e N são inteiros iguais a 1 ou mais. Por exemplo, para 4:2:2, M=2, N=1. Para 4:2:0, M=2, N=2.
[000212] O armazenamento de quadro 570 é operável para armazenar uma ou mais imagens precedendo uma imagem atual.
[000213] O filtro de interpolação 580 é operável para interpolar uma versão de resolução mais alta de unidades de predição das imagens armazenadas de forma que o componente de luminância de uma unidade de predição interpolada tenha uma resolução horizontal P vezes aquela da porção correspondente da imagem armazenada e uma resolução vertical Q vezes aquela da porção correspondente da imagem armazenada, onde P e Q são inteiros maiores que 1. Nos exemplos atuais, P = Q = 4 de forma que o filtro de interpolação 580 seja operável para gerar uma imagem interpolada a 4 de ' resolução de amostra.
. [000214] O estimador de movimento 550 é operável para detectar movimento interimagem entre uma imagem atual e a uma ou mais imagens . armazenadas interpoladas de modo a gerar vetores de movimento entre uma unidade de predição da imagem atual e áreas da uma ou mais imagens anteriores.
[000215] O preditor compensado em movimento 540 é operável para gerar uma predição compensada em movimento da unidade de predição da imagem atual com respeito a uma área de uma imagem armazenada interpolada apontada por um vetor de movimento respectivo.
[000216] Retornando a uma discussão da operação do filtro de interpolação 580, concretizações deste filtro são operáveis para aplicar um filtro de interpolação horizontal xR e vertical xS aos componentes de crominância de uma imagem armazenada para gerar uma unidade de predição de crominância interpolada, onde R é igual a (Ux Mx P) e S é igual a (V x N x Q), U e V sendo inteiros iguais a | ou mais; e para subamostrar a unidade de predição de crominância interpolada, tal que sua resolução horizontal seja dividida por um fator de U e sua resolução vertical seja dividida por um fator de V, por esse meio resultando em um bloco de MP x NQ amostras.
[000217] Assim, no caso de 4:2:2, o filtro de interpolação 580 aplica uma interpolação x8 nas direções horizontal e vertical, mas então subamostra verticalmente por um fator de 2, por exemplo usando toda 2º amostra na saída interpolada. Um modo para alcançar isto é dobrar um valor de índice no arranjo de amostras. Assim, considere uma direção de arranjo (tal como a direção vertical neste exemplo) no arranjo de amostras que é 8 amostras através, indexado como 0,7. Uma amostra requerida na gama subamostrada é indexada na gama de 0,3. Assim, dobrar este índice dará valores de 0,2,4e 6 que podem então ser usados para acessar amostras no arranjo original tal que toda amostra alternada seja usada. Isto é um exemplo de selecionar um f subconjunto de amostras da unidade de predição de crominância interpolada.
. [000218] Esta técnica portanto permite o mesmo filtro (por exemplo, x8) ' ser usado em relação a 4:2:0 e 4:2:2, mas com uma etapa adicional de . subamostragem onde precisado com 4:2:2.
[000219] Em concretizações, como discutido, a unidade de predição de crominância interpolada tem uma altura em amostras duas vezes aquela de uma unidade de predição de formato 4:2:0 interpolada usando os mesmos filtros de interpolação xR e xS.
[000220] A necessidade para prover filtros diferentes pode ser evitada ou aliviada usando estas técnicas, e em particular usando os mesmos filtros de interpolação horizontal xR e vertical xS, em relação a dados de vídeo de entrada 4:2:0 e dados de vídeo de entrada 4:2:2.
[000221] Como discutido, na etapa de subamostragem, a unidade de predição de crominância interpolada compreende usar toda V-ésima amostra da unidade de predição de crominância interpolada na direção vertical, e/ou usar toda U-ésima amostra da unidade de predição de crominância interpolada na direção vertical. Mais geralmente, a subamostragem pode compreender selecionar um subconjunto de amostras da unidade de predição de crominância interpolados.
[000222] Concretizações podem envolver derivar um vetor de movimento de luminância para uma unidade de predição; e derivar independentemente um ou mais vetores de movimento de crominância para aquela unidade de predição.
[000223] Em algumas concretizações, pelo menos um de R e S é igual a 2 ou mais, em algumas concretizações, os filtros de interpolação horizontal xR e vertical xS também são aplicados aos componentes de luminância da imagem armazenada. Variantes de interpredição 4:4:4
[000224] Por extensão, o mesmo princípio de só usar os resultados : fracionários pares para o filtro de croma de 4 derivações x8 existente pode ser : aplicado ambos verticalmente e horizontalmente para as PUs de croma 8x8 ' 4:4:4. - [000225] Adicionalmente para estes exemplos, o filtro de croma de x8 pode ser usado para toda a interpolação, incluindo luma. Variantes de interpredição adicionais
[000226] Em uma implementação de derivação de vetor de movimento (MV), um vetor é produzido para uma PU em uma fatia P (e dois vetores para uma PU em uma fatia B (onde uma fatia P leva predições de um quadro precedente, e uma fatia B leva predições de um quadro precedente e seguinte, de uma maneira semelhante para quadros P e B de MPEG). Notavelmente, nesta implementação no esquema 4:2:0, os vetores são comuns a todos os canais, e além disso, os dados de croma não precisam ser usados para calcular os vetores de movimento. Em outras palavras, todos os canais usam um vetor de movimento baseado nos dados de luma.
[000227] Em uma concretização, no esquema 4:2:2, o vetor de croma poderia ser derivado de modo a ser independente de luma (isto é, um único vetor para os canais Cb e Cr poderia ser derivado separadamente), e no esquema 4:4:4, vetores de croma poderiam ser adicionalmente independentes para cada um dos canais Cb e Cr. Transformadas
[000228] Em HEVC, a maioria das imagens é codificada como vetores de movimento de quadros codificados/decodificados previamente, com os vetores de movimento contando ao decodificador onde, nestes outros quadros decodificados, copiar boas aproximações da imagem atual. O resultado é uma versão aproximada da imagem atual. HEVC então codifica o denominado resíduo, que é o erro entre essa versão aproximada e a imagem correta. Este resíduo requer muito menos informação do que especificar a imagem real diretamente. Porém, ainda é geralmente preferível comprimir esta informação ' residual para reduzir a taxa de bit global adicionalmente.
- [000229] Em muitos métodos de codificação incluindo HEVC, tais dados são transformados no domínio de frequência espacial usando uma * transformada co-seno inteira (ICT), e tipicamente alguma compressão é então alcançada retendo dados de frequência espacial baixa e descartando dados de frequência espacial mais alta de acordo com o nível de compressão desejado. Transformadas 4:2:0
[000230] As transformadas de frequência espacial usadas em HEVC são convencionalmente as que geram coeficientes em potências de 4 (por exemplo 64 coeficientes de frequência) como isto é particularmente ameno a métodos de quantização/compressão comuns. As TUs quadradas no esquema 4:2:0 são todas potências de 4 e consequentemente isto é direto para alcançar.
[000231] Se as opções de NSQT estiverem habilitadas, algumas transformadas não quadradas estão disponíveis para TUs não quadradas, tais como 4x16, mas novamente notavelmente estes resultam em 64 coeficientes, isto é, novamente uma potência de 4.
Variantes de transformada 4:2:2 e 4:4:4
[000232] O esquema 4:2:2 pode resultar em TUs não quadradas que não são potências de 4; por exemplo, uma TU 4x8 tem 32 pixels, e 32 não é uma potência de 4.
[000233] Em uma concretização portanto, uma transformada não quadrada para uma não potência de número 4 de coeficientes pode ser usada, reconhecendo que modificações podem ser requeridas ao processo de quantização subsequente.
[000234] Alternativamente, em uma concretização, TUs não quadradas são divididas em blocos quadrados tendo uma área de potência de 4 para transformação, e então os coeficientes resultantes podem ser intercalados.
[000235] Por exemplo, para blocos 4x8, amostras verticais ímpares/pares podem ser divididas em dois blocos quadrados. ' Alternativamente, para blocos 4x8, os pixels de topo 4x4 e os pixels de fundo . 4x4 poderiam formar dois blocos quadrados. Alternativamente novamente, para blocos 4x8, uma decomposição de 'wavelet' de Haar pode ser usada para . formar um bloco 4x4 de frequência inferior e superior.
[000236] Quaisquer destas opções podem ser feitas disponíveis, e a seleção de uma alternativa particular pode ser sinalizada ou derivada pelo decodificador. Outros modos de transformada
[000237] No esquema 4:2:0, há uma bandeira proposta (a denominada 'apprime y zero transquant bypass flag') permitindo aos dados residuais serem incluídos no fluxo de bits sem perdas (isto é, sem ser transformado, quantizado ou adicionalmente filtrado). No esquema 4:2:0, a bandeira se aplica a todos os canais.
[000238] Por conseguinte, tais concretizações representam um método de codificação ou decodificação de vídeo, aparelho ou programa em que amostras de luminância e crominância são preditas e a diferença entre as amostras e as amostras preditas respectivas é codificada, fazendo uso de um indicador configurado para indicar se dados de diferença de luminância são para serem incluídos em um fluxo de bits de saída sem perda; e indicar independentemente se dados de diferença de crominância são para serem incluídos no fluxo de bits sem perda. Tal bandeira ou bandeiras (ou indicador ou indicadores respectivamente) podem ser inseridos pelo controlador 343, por exemplo.
[000239] Em uma concretização, é proposto que a bandeira para o canal de luma esteja separada para os canais de croma. Consequentemente para o esquema 4:2:2, tais bandeiras deveriam ser providas separadamente para o canal de luma e para os canais de croma, e para o esquema 4:4:4, tais bandeiras deveriam ser providas tanto separadamente para os canais de luma e croma, ou uma bandeira é provida para cada um dos três canais. Isto : reconhece as taxas de dados de croma aumentadas associadas com os . esquemas 4:2:2 e 4:4:4, e habilita, por exemplo, dados de luma sem perda junto com dados de croma comprimidos.
. [000240] Para codificação de intrapredição, transformada direcional dependente de modo (MDDT) permite o ICT horizontal ou vertical (ou ambos os ICTs) para uma TU serem substituídas com uma Transformada de Seno Inteira dependendo da direção de intrapredição. No esquema 4:2:0, isto não é aplicado a TUs de croma. Porém, em uma concretização, é proposto aplicar isto a TUs de croma 4:2:2 e 4:4:4, notando que o IST só está definido atualmente para uma dimensão de transformada de 4 amostras (tanto horizontalmente ou verticalmente), e portanto não pode ser aplicado atualmente verticalmente a um TU de croma 4x8.
[000241] Em métodos de codificação de vídeo, as várias concretizações podem ser arranjadas de modo a indicar se dados de diferença de luminância são para serem incluídos em um fluxo de bits de saída sem perda; e indicar independentemente se dados de diferença de crominância são para serem incluídos no fluxo de bits sem perda, e codificar ou incluir os dados pertinentes na forma definida por tais indicações. Quantização
[000242] No esquema 4:2:0, o cálculo de quantização é o mesmo para crominância como para luminância. Só os parâmetros de quantização (QPs) diferem.
[000243] QPs para crominância são calculados dos QPs de luminância como segue: Qpcv = Tabeladegraduação [Qpluminância + chroma qp index offset] Qpcr = Tabeladegraduação [Qpiuminância + Second chroma qp index offset]
onde a tabela de graduação está definida como visto na Figura 29a ou 29b (para 4:2:0 e 4:2:2, respectivamente), e "croma qp index offset" e "second croma qp index offset" estão definidos no conjunto de parâmetro . de quadro e podem ser o mesmo ou diferente para Cr e Cb. Em outras - palavras, o valor em colchetes quadrados define em cada caso um "índice" na tabela de graduação (Figuras 29a e b) e a tabela de graduação então dá um . valor revisado de Qp ("valor").
[000244] Note que "croma qp index offset" E "second croma qp index offset" podem ser ao invés referidos como cb qp offset ecr qp offset, respectivamente.
[000245] Canais de crominância tipicamente contêm menos informação do que luminância e consequentemente têm coeficientes de magnitude menor; esta limitação no QP de crominância pode prevenir todos os detalhes de crominância serem perdidos a níveis de quantização pesados.
[000246] A relação de divisor de QP no 4:2:0 é um logarítmico um tal que um aumento de 6 no QP seja equivalente a uma dobra do divisor (o tamanho de passo de quantização discutido em outro lugar nesta descrição, entretanto notando que pode ser modificado adicionalmente por matrizes Q antes de uso). Consequentemente, a diferença maior na tabela de graduação de 51-39=12 representa uma mudança de fator de 4 no divisor.
[000247] Porém, em uma concretização da descrição presente, para o esquema 4:2:2, que contém potencialmente duas vezes tanta informação de croma quanto o esquema 4:2:0, o valor de QP de crominância máximo na tabela de graduação pode ser elevado a 45 (isto é, dividindo ao meio o divisor). Semelhantemente para o esquema 4:4:4, o valor de QP de crominância máximo na tabela de graduação pode ser elevado a 51 (isto é, o mesmo divisor). Neste caso, a tabela de graduação é em efeito redundante, mas pode ser retida simplesmente para eficiência operacional (isto é, de forma que o sistema trabalhe por referência a uma tabela da mesma maneira para cada esquema). Consequentemente, mais geralmente em uma concretização da descrição presente, o divisor de QP de croma é modificado responsivo à quantidade de informação no esquema de codificação relativo ao esquema : 4:2:0. - [000248] Por conseguinte, concretizações se aplicam a um método de codificação ou decodificação de vídeo operável para quantizar blocos de à. luminância transformados em frequência e dados vídeos de componente de crominância em um formato 4:4:4 ou 4:2:2 de acordo com um parâmetro de quantização selecionado que define um tamanho de passo de quantização. Uma associação de parâmetro de quantização (tal como, por exemplo, a tabela apropriada na Figura 29a ou 29b) está definida entre parâmetros de quantização de luminância e crominância, onde a associação é tal que um tamanho de passo de quantização de crominância máximo seja menos do que um tamanho de passo de quantização de luminância máximo para o formato 4:2:2 (por exemplo, 45), mas igual ao tamanho de passo de quantização de luminância máximo para o formato 4:4:4 (por exemplo, 51). O processo de quantização opera visto que cada componente dos dados transformados em frequência é dividido por um valor respectivo derivado do tamanho de passo de quantização respectivo, e o resultado é arredondado a um valor inteiro, para gerar um bloco correspondente de dados de frequência espacial quantizados.
[000249] Será apreciado que as etapas de divisão e arredondamento são exemplos indicativos de uma fase de quantização genérica, de acordo com o tamanho de passo de quantização respectivo (ou dados derivados disto, por exemplo pela aplicação de matrizes Q).
[000250] Concretizações incluem a etapa de selecionar um parâmetro de quantização ou índice (QP para luminância) para quantizar os coeficientes de frequência espacial, o parâmetro de quantização atuando como uma referência a um respectivo de um conjunto de tamanhos de passo de quantização de acordo com as tabelas de QP aplicáveis a dados de luminância.
O processo de definir a associação de parâmetro de quantização pode então compreender: para componentes de crominância, referenciar uma tabela de parâmetros de ' quantização modificados (tal como a tabela das Figuras 29a ou 29b) de acordo . com o parâmetro de quantização selecionado, que em troca pode envolver (i) para o primeiro componente de crominância, adicionar um primeiro * Compensação (tal como croma qp index offset) ao parâmetro de quantização e selecionar o índice de quantização modificado correspondendo à entrada, na tabela, para o índice de quantização mais o primeiro Compensação; e (ii) para o segundo componente de crominância, adicionar um segundo Compensação (tal como second croma qp index offset) ao parâmetro de quantização e selecionar o índice de quantização modificado correspondendo à entrada, na tabela, para o índice de quantização mais o segundo Compensação; e referenciar um tamanho de passo de quantização respectivo no conjunto de acordo com o parâmetro de quantização para os dados de luminância e o primeiro e segundo índices de quantização modificados para o primeiro e segundo componentes de crominância.
Visto de um modo diferente, este é um exemplo de um processo envolvendo selecionar um parâmetro de quantização para quantizar os coeficientes de frequência espacial, o parâmetro de quantização atuando como uma referência a um respectivo de um conjunto de tamanhos de passo de quantização; e em que a etapa de definição compreende: para componentes de crominância, referenciar uma tabela de parâmetros de quantização modificados de acordo com o parâmetro de quantização selecionado, a etapa de referência, compreendendo: para cada componente de crominância, adicionar um Compensação respectivo ao parâmetro de quantização e selecionar o parâmetro de quantização modificado correspondendo à entrada, na tabela, para o parâmetro de quantização mais o Compensação respectivo; e referenciar um tamanho de passo de quantização respectivo no conjunto de acordo com o parâmetro de quantização para os dados de luminância e o primeiro e segundo parâmetros de quantização modificados para o primeiro e segundo componentes de crominância. - [000251] As técnicas são particularmente aplicáveis a arranjos nos quais . valores sucessivos dos tamanhos de passo de quantização no conjunto estão relacionados logaritmicamente, de forma que uma mudança em parâmetro de . quantização de m (onde m é um inteiro) represente uma mudança em tamanho de passo de quantização por um fator de p (onde p é um inteiro maior que 1). Nas concretizações presentes, m=6ep=2.
[000252] Em concretizações, como discutido acima, um parâmetro de quantização de luminância máximo é 51; um parâmetro de quantização de crominância máximo é 45 para o formato 4:2:2; e um parâmetro de quantização de crominância máximo é 51 para o formato 4:4:4.
[000253] Em concretizações, o primeiro e segundo Compensaçãos podem ser comunicados em associação com os dados de vídeo codificados.
[000254] Em 4:2:0, as matrizes de transformada A são criadas inicialmente (pela unidade de transformada 340) desses de uma DCT A' NxXN verdadeira normalizada usando: A, =intlí4x/N x A',) onde i e j indicam uma posição dentro da matriz. Esta graduação com respeito a uma matriz de transforma normalizada provê um aumento em precisão, evita a necessidade por cálculos fracionários e aumenta a precisão interna.
[000255] Ignorando diferenças devido a arredondamento de Aij, desde que X é multiplicado por ambos A e A" (a transposição da matriz A), os coeficientes resultantes diferem daqueles de uma DCT MxN verdadeira normalizado (M=altura; N=largura) por um fator de graduação comum de: (64x /N)64x VM )=4096/N JM
[000256] Note que o fator de graduação comum poderia ser diferente para este exemplo. Note também que multiplicação de matriz por ambos A e
A' pode ser executada de vários modos, tal como o denominado método de Butterfly. O fato significante é se a operação que é executada é equivalente a uma multiplicação de matriz tradicional, não se é executada em uma arranjo * tradicional particular de operações.
. [000257] Este fator de graduação é equivalente a uma operação de bit binária = de deslocamento à esquerda por vários bits de . DeslocamentodeTranformação, desde que em HEVC isto resulta em um potência de 2: DeslocamentodeTransformação = (12 +0,510g, (N)+0,5 log, (M))
[000258] Para reduzir a exigência em precisão de bit interna, os coeficientes são deslocados à direita (usando arredondamento positivo) duas vezes durante o processo de transformada: Deslocamento! = log, (N) + Profundidade debits — 9 Deslocamento2 = log, (M)+6
[000259] Como resultado, os coeficientes quando eles deixam o processo de transformada dianteiro e entram no quantizador são efetivamente deslocados à esquerda por: | Deslocamen toresult = (12 + 0,510g, (NM )) - (desloc! + desloc2 ) =(12+0,510g,(N)+0,510g, (M))- (log, (N)+ profdebits —9 + log, (M)+6) =15 -(0,510g, (N) + 0,510g, (M) + profdebits )
[000260] Em 4:2:0, os coeficientes separados em frequência (por exemplo, DCT) gerados pela transformada de frequência são um fator de (2PeslocamentoResultantey) major do que aqueles que uma DCT normalizada produziria.
[000261] Em algumas concretizações, os blocos são tanto quadrados ou retangulares com uma relação de aspecto 2:1. Portanto, para um tamanho de bloco de N x M, tanto: N=M, em qual caso, deslocamentoResultante é um inteiro e S=N=M=sqrt(NM); ou
0,5N=2M ou 2N=0,5M, em qual caso deslocamentoResultante ainda é um inteiro e S=sqrt(NM) deslocamento Re sult = 15 — (0,510g, (N)+0,510g,(M )-+ Pr ofunddebits) =15 — (log ,(S)+ Pr ofunddebits) : [000262] Os coeficientes são quantizados subsequentemente, onde o . divisor quantizando é derivado de acordo com o parâmetro de quantização QP.
. [000263] Note que deslocamentoResultante é equivalente a um inteiro, assim o fator de graduação comum é uma potência inteira de 2, o 'deslocamentoResultante' deslocado à esquerda global do processo de transformada também é considerado nesta fase aplicando um “quantDeslocTranformDireito' igual, mas oposto deslocado à direita.
[000264] Esta operação de deslocamento de bit é possível porque deslocamentoResultante é um inteiro.
[000265] Também note que a relação de QP de divisor (parâmetro ou índice de quantização) segue uma curva de potência de base 2, como mencionado acima, em que um aumento em QP por 6 tem o efeito de dobrar o divisor enquanto um aumento em QP por 3 tem o efeito de aumentar o divisor por um fator de sqrt(2) (raiz quadrada de 2).
[000266] Devido ao formato de croma em 4:2:2, há mais relações de largura:altura (N:M) de TU: N=M (de antes) onde S=N=M=sqrt(NM) (deslocamentoResultante é um inteiro) 0,5N=2M e 2N=0,5M, (de antes), = onde S=sqgrt(NM) (deslocamentoResultante é um inteiro) N=2M onde S=sqgrt(NM) 2M=N onde S=sqrt(NM) 4N=0,5SM onde S=sqrt(NM) Deslocamentoresultante =15 — (log, (S )+ profdebits)
[000267] Nestas três situações posteriores, deslocamentoresultante não é um inteiro. Por exemplo, isto pode se aplicar onde pelo menos alguns dos blocos de amostras de dados de vídeo compreendem amostras MxN, onde a raiz quadrada de N/M não é igual a uma potência de 2 inteira. Tais tamanhos ' de bloco podem ocorrer em relação a amostras de croma em algumas das . concretizações presentes.
[000268] Por conseguinte, em tais casos, as técnicas seguintes são ' pertinentes, quer dizer, em métodos de codificação ou decodificação de vídeo, aparelho ou programas operáveis para gerar blocos de dados de frequência espacial quantizados executando transformação de frequência em blocos de amostras de dados de vídeo usando uma matriz de transformada compreendendo um arranjo de valores inteiros que são cada um graduado com respeito a valores respectivos de uma matriz de transformada normalizada por uma quantidade dependente de uma dimensão da matriz de transformada, e para quantizar os dados de frequência espacial de acordo com um tamanho de passo de quantização selecionado, tendo a etapa de transformar em frequência um bloco de amostras de dados de vídeo multiplicando por matriz o bloco pela matriz de transformada e a transposição da matriz de transformada para gerar um bloco de coeficientes de frequência espacial graduados que são cada um maior, por um fator de graduação comum (por exemplo, deslocamentoResultante), do que os coeficientes de frequência espacial que resultariam de uma transformação em frequência normalizada daquele bloco de amostras de dados de vídeo.
[000269] Portanto na fase de quantização, uma operação de deslocamento de bit apropriada não pode ser usada para cancelar a operação de uma maneira simples.
[000270] Uma solução para isto é proposta como segue:
[000271] Na fase de quantizador, aplique um deslocamento direito: quantdesloctranformdireito = 15 — log? (S') — profunddebits
[000272] Onde o valor S' é derivado tal que:
deslocamentoresultante — quantDeslocTranformDireito = +” quantDeslocTranformDireito é um inteiro.
[000273] A diferença entre deslocamentos de 1º é equivalente à . multiplicação por sqrt(2), isto é, neste momento os coeficientes são sqart(2) . vezes maior do que eles deveriam ser, fazendo o deslocamento de bit um deslocamento de bit inteiro.
. [000274] Para o processo de quantização, aplique um parâmetro de quantização de (QP + 3), significando que o divisor de quantização é aumentado efetivamente por um fator de sqrt(2), assim cancelando o fator de escala sqrt(2) da etapa prévia.
[000275] Por conseguinte, estas etapas podem ser resumidas (no contexto de um método de codificação ou decodificação de vídeo (ou aparelho ou programa correspondente) operável para gerar blocos de dados de frequência espacial quantizados executando transformação de frequência em blocos de amostras de dados de vídeo usando uma matriz de transformada compreendendo um arranjo de valores inteiros que são cada um graduado com respeito a valores respectivos de uma matriz de transformada normalizada, e para quantizar os dados de frequência espacial de acordo com um tamanho de passo de quantização selecionado, envolvendo transformar em frequência um bloco de amostras de dados de vídeo multiplicando por matriz o bloco pela matriz de transformada e a transposição da matriz de transformada para gerar um bloco de coeficientes de frequência espacial graduados que são cada um maior, por um fator de graduação comum, do que os coeficientes de frequência espacial que resultariam de uma transformação em frequência normalizada daquele bloco de amostras de dados de vídeo) como segue: selecionar um tamanho de passo de quantização para quantizar os coeficientes de frequência espacial; aplicar um deslocamento de n bits (por exemplo, quantDeslocTranformDireito) para dividir cada um dos coeficientes de frequência espacial graduado por um fator de 2", onde n é um inteiro; e detectar um fator de graduação residual (por exemplo, deslocamentoResultante - quantDeslocTranformDireito), sendo o fator de graduação comum dividido por 2". Por exemplo, na situação discutida acima, à. o tamanho de passo de quantização está então de acordo com o fator de . graduação residual para gerar um tamanho de passo de quantização modificado; e cada um dos coeficientes de frequência espacial graduados no - bloco é dividido por um valor dependente do tamanho de passo de quantização modificado e arredondando o resultado a um valor inteiro, para gerar o bloco de dados de frequência espacial quantizados. Como discutido, a modificação do tamanho de passo de quantização pode ser executada simplesmente adicionando um Compensação a QP de modo a selecionar um tamanho de passo de quantização diferente quando QP é mapeado na tabela de tamanhos de passo de quantização.
[000276] Os coeficientes são agora da magnitude correta para o QP original.
[000277] A matriz de transformada pode compreende um arranjo de valores inteiros que são cada um graduado com respeito a valores respectivos de uma matriz de transformada normalizada por uma quantidade dependente de uma dimensão da matriz de transformada.
[000278] Segue que o valor exigido para S' sempre pode ser derivado como segue: S' = sart(2*M*N)
[000279] Como uma proposta alternativa, S' poderia ser derivado tal que: Deslocamentoresultante — quantDeslocTranformDireito = -
[000280] Neste caso, S' = sart (14 * M * N)) e o parâmetro de quantização aplicado é (QP — 3).
[000281] Em qualquer um destes casos, (adicionando 3 a QP ou subtraindo 3 de QP), a etapa de selecionar o tamanho de passo de quantização compreende selecionar um índice de quantização (por exemplo, QP), o índice de quantização definindo uma entrada respectiva em uma tabela de tamanhos de passo de quantização, e a etapa de modificação compreende mudar o . índice de quantização de modo a selecionar um tamanho de passo de . quantização diferente, tal que a relação do tamanho de passo de quantização i diferente para o tamanho de passo de quantização selecionado originalmente - seja substancialmente igual ao fator de graduação residual.
[000282] Isto funciona particularmente bem onde, como nas concretizações presentes, valores sucessivos dos tamanhos de passo de quantização na tabela estão relacionados logaritmicamente, de forma que uma mudança em índice de quantização (por exemplo, QP) de m (onde m é um inteiro) represente uma mudança em tamanho de passo de quantização por um fator de p (onde p é um inteiro maior que 1). Nas concretizações presentes, m =6ep=2,de forma que um aumento de 6 em QP represente uma dobra do tamanho de passo de quantização aplicado, e uma diminuição em QP de 6 represente uma divisão do tamanho de passo de quantização resultante.
[000283] Como discutido acima, a modificação pode ser executada selecionando um índice de quantização (por exemplo, um QP básico) em relação a amostras de luminância; gerando um Compensação de índice de quantização, relativo ao índice de quantização selecionado para as amostras de luminância, para amostras de cada um ou ambos os componentes de crominância; mudando o Compensação de índice de quantização de acordo com o fator de graduação residual; e comunicando o Compensação de índice de quantização em associação com os dados de vídeo codificados. Em concretizações de HEVC, Compensaçãos de QP para os dois canais de croma são enviados no fluxo de bits. Estas etapas correspondem a um sistema no qual o Compensação de QP (para responder pelo fator de graduação residual) de +/- 3 poderiam ser incorporadas nestes Compensaçãos, ou eles poderiam ser incrementados/decrementados quando eles são usados para derivar a QP de croma.
[000284] Note que o Compensação de QP não tem que ser +/-3 se blocos formados diferentemente fossem usados; é apenas que +/-3 representa : um Compensação aplicável às formas de bloco e relações de aspecto , discutidas acima em relação a vídeo 4:2:2, por exemplo.
[000285] Em algumas concretizações, n (o deslocamento de bit como . aplicado) é selecionado de forma que 2" seja maior do que ou igual ao fator de graduação comum. Em outras concretizações, n é selecionado de forma que 2" seja menos do que ou igual ao fator de graduação comum. Em concretizações da descrição (usando qualquer um destes arranjos), um deslocamento de bit n pode ser selecionado de modo a ser o próximo mais perto (em qualquer direção) ao fator de graduação comum, de forma que o fator de graduação residual represente um fator tendo uma magnitude de menos que 2.
[000286] Em outras concretizações, a modificação do tamanho de passo de quantização pode ser executada simplesmente multiplicando o tamanho de passo de quantização por um fator dependente do fator de graduação residual. Quer dizer, a necessidade de modificação não envolve modificar o QP de índice.
[000287] Note também que o tamanho de passo de quantização como discutido não é necessariamente o tamanho de passo de quantização real pelo qual uma amostra transformada é dividida. O tamanho de passo de quantização derivado deste modo pode ser modificado adicionalmente. Por exemplo, em alguns arranjos, o tamanho de passo de quantização é modificado adicionalmente por entradas respectivas em uma matriz de valores (Qmatrix) de forma que tamanhos de passo de quantização finais diferentes sejam usados a posições de coeficiente diferentes em um bloco quantizado de coeficientes.
[000288] Também é notado que no esquema 4:2:0, a TU de croma maior é 16x16, enquanto para o esquema 4:2:2, TUs 16x32 são possíveis, e para o esquema 4:4:4, TUs de croma 32x32 são possíveis. Consequentemente, em uma concretização da descrição presente, matrizes de quantização (matrizesQ) para TUs de croma 32x32 são propostas. Semelhantemente, . matrizesQ deveriam ser definidas para TUs não quadradas tal como a TU . 16x32, com uma concretização sendo a subamostragem de uma matriz de Q À quadrada maior. - [000289] matrizesQ poderiam ser definidas por qualquer um do seguinte: valores em uma grade (como para matrizesQ 4x4 e 8x8); interpoladas espacialmente de matrizes menores ou maiores; - em HEVC, matrizesQ maiores podem ser derivadas de grupos respectivos de coeficientes das de referência menores, ou matrizes menores podem ser subamostradas de matrizes maiores. Note que esta interpolação ou subamostragem pode ser executada dentro de uma relação de canal - por exemplo, uma matriz maior para uma relação de canal pode ser interpolada de uma menor para aquela relação de canal.
relativo a outras matrizesQ (isto é, valores de diferença, ou deltas); - consequentemente só as deltas precisam ser enviadas.
[000290] Tomando um exemplo pequeno apenas para propósitos ilustrativos, uma matriz particular para uma relação de canal poderia ser definida, tal como uma matriz 4 x 4 em relação a 4:2:0 (ab) (cd) onde a, b, c e d são coeficientes respectivos. Isto atua como uma matriz de referência.
[000291] Concretizações da descrição poderiam então definir um conjunto de valores de diferença para uma matriz de tamanho semelhante em relação a outra relação de canal:
(diffl diff2) (diff3 diif4) de forma que a fim de gerar a Qmatrix para a outra relação de * canal, a matriz de diferenças seja somada em matriz à matriz de referência.
" [000292] Em vez de diferenças, uma matriz de fatores multiplicativos poderia ser definida para a outra relação de canal, tal que tanto (1) a matriz de . fatores multiplicativos seja multiplicada em matriz com a matriz de referência para gerar a Qmatrix para a outra relação de canal, ou (ii) cada coeficiente na matriz de referência seja multiplicado individualmente por um fator respectivo para gerar a Qmatrix para a outra relação de canal.
[000293] Como uma função de outra Qmatrix; - por exemplo uma relação de graduação relativa a outra matriz (de forma que cada um de a, b, c e d no exemplo anterior seja multiplicado pelo mesmo fator, ou tenha a mesma diferença acrescentada a isto). Isto reduz as exigências de dados para transmitir os dados de diferença ou fator.
- consequentemente só os coeficientes das funções precisam ser enviados (tal como a relação de graduação), como uma equação/função (por exemplo curva linear em pedaço, exponencial, polinomial); - consequentemente só os coeficientes das equações precisam ser enviados para derivar a matriz, ou qualquer combinação do anterior. Por exemplo, cada um de a, b, ce d poderia ser definido na realidade por uma função que poderia incluir uma dependência da posição de coeficiente (1,)) dentro da matriz. (i, j) poderia representar, por exemplo, a posição de coeficiente de esquerda à direita seguido pela posição de coeficiente de topo para fundo da matriz. Um exemplo é: coeficiente ;; =31i + 2)
[000294] Note que MatrizesQ podem ser chamadas Listas de Graduação dentro do ambiente de HEVC. Em concretizações nas quais a quantização é aplicada depois do processo de varredura, os dados varridos podem ser um . fluxo linear de amostras de dados sucessivos. Em tais casos, o conceito de uma Qmatrix ainda se aplica, mas a matriz (ou Lista de Varredura) pode ser ' considerada como uma matriz 1xN, tal que a ordem dos N valores de dados - dentro da matriz 1xN corresponda à ordem de amostras varridas às quais o valor de Qmatrix respectivo é para ser aplicado. Em outras palavras, há uma relação 1:1 entre ordem de dados nos dados varridos, frequência espacial de acordo com o padrão de varredura, e ordem de dados na Qmatrix 1xN.
[000295] Note que é possível, em algumas implementações, desviar ou omitir a fase de DCT (separação de frequência), mas reter a fase de quantização.
[000296] Outra informação útil inclui um indicador opcional ao qual outros valores de matriz estão relacionados, isto é, o canal prévio ou o primeiro (primário) canal; por exemplo, a matriz para Cr poderia ser um fator graduado de uma matriz para Y, ou para Cb, como indicado.
[000297] Por conseguinte, concretizações da descrição podem prover um método de codificação ou decodificação de vídeo (e um aparelho ou programa de computação correspondente) operável para gerar blocos de dados de frequência espacial quantizados (opcionalmente) executando transformação de frequência em blocos de amostras de dados de vídeo e quantizando os dados de vídeo (tais como os dados de frequência espacial) de acordo com um tamanho de passo de quantização selecionado e uma matriz de dados modificando o tamanho de passo de quantização para uso a posições de bloco respectivas diferentes dentro de um bloco ordenado de amostras (tal como um bloco ordenado de amostras transformadas em frequência), o método sendo operável com respeito a pelo menos dois formatos de subamostragem de crominância diferentes.
[000298] Para pelo menos um dos formatos de subamostragem de crominância, uma ou mais matrizes de quantização são definidas como uma ou mais modificações predeterminadas com respeito a uma ou mais matrizes * de quantização de referência definidas para o de referência um dos formatos de subamostragem de crominância. ] [000299] Em concretizações da descrição, a etapa de definição - compreende definir uma ou mais matrizes de quantização como uma matriz de valores, cada uma interpolada de uma pluralidade respectiva de valores de uma matriz de quantização de referência. Em outras concretizações, a etapa de definição compreende definir uma ou mais matrizes de quantização como uma matriz de valores, cada uma subamostrada de valores de uma matriz de quantização de referência.
[000300] Em concretizações da descrição, a etapa de definição compreende definir uma ou mais matrizes de quantização como uma matriz de diferenças com respeito a valores correspondentes de uma matriz de quantização de referência.
[000301] Em concretizações da descrição, a etapa de definição compreende definir uma ou mais matrizes de quantização como uma função predeterminada de valores de uma matriz de quantização de referência. Em tais casos, a função predeterminada pode ser uma função polinomial.
[000302] Em concretizações da descrição, um ou ambos do seguinte é provido, por exemplo como parte ou em associação com os dados de vídeo codificados: (i) dados de indicador de referência para indicar, com respeito a dados de vídeo codificados, a matriz de quantização de referência; e (11) dados de indicador de modificação para indicar, com respeito a valores de dados codificados, a uma ou mais modificações predeterminadas.
[000303] Estas técnicas são particularmente aplicáveis onde dois dos formatos de subamostragem de crominância são formatos 4:4:4 e 4:2:2.
[000304] O número de Matrizes Q em HEVC 4:2:0 é atualmente 6 para cada tamanho de transformada: 3 para os canais correspondentes, e um conjunto para intra e para inter. No caso de um esquema de GBR 4:4:4, será apreciado que tanto um conjunto de matrizes de quantização poderia ser é usado para todos os canais, ou três conjuntos de matrizes de quantização respectivos poderiam ser usados. ' [000305] Em concretizações da descrição, pelo menos uma das matrizes . é uma matriz 1xN. Este seria o caso em (como descrito aqui) uma ou mais das matrizes é na realidade uma Lista de Graduação ou similar, sendo um arranjo ordenado 1xN linear de coeficientes.
[000306] As soluções propostas envolvem incrementar ou decrementar o QP aplicado. Porém, isto poderia ser alcançado de vários modos:
[000307] Em HEVC, Compensaçãos de QP para os dois canais de croma são enviados no fluxo de bits. O +/- 3 poderia ser incorporado nestes Compensaçãos, ou eles poderiam ser incrementados/decrementados quando eles são usados para derivar o QP de croma.
[000308] Como discutido, acima, em HEVC, (QP de luma + Compensação de croma) é usado como um índice para uma tabela a fim de derivar o QP de croma. Esta tabela poderia ser modificada para incorporar o +/- 3 (isto é, incrementando/decrementando os valores da tabela original por 3).
[000309] Depois que o QP de croma foi derivado, como pelo processo de HEVC normal, os resultados então poderiam ser incrementados (ou decrementados) por 3.
[000310] Como uma alternativa a modificar o QP, um fator de sqrt(2) ou 1/sqrt(2) pode ser usado para modificar os coeficientes de quantização.
[000311] Para quantização dianteira/inversa, os processos de divisão/multiplicação são implementados usando (QP % 6) como um índice para uma tabela para obter um coeficiente de quantização ou tamanho de passo de quantização, inverseQStep/scaledQStep. (Aqui, QP % 6 significa QP módulo 6). Note que, como discutido acima, isto pode não representar o tamanho de passo de quantização final que é aplicado aos dados transformados; pode ser adicionalmente modificado pelas MatrizesQ antes de * uso.
[000312] As tabelas prefixadas em HEVC são de comprimento 6, cobrindo uma oitava (uma dobra) de valores. Este é simplesmente um meio de . reduzir exigências de armazenamento; as tabelas estão estendidas para uso atual selecionando uma entrada na tabela de acordo com o módulo de QP (mod 6) e então multiplicando ou dividindo por uma potência de 2 apropriada, dependente da diferença de (QP — QP módulo 6) de um valor básico predeterminado.
[000313] Este arranjo poderia ser variado para permitir o Compensação de +/-3 no valor de QP. O Compensação pode ser aplicado no processo de tabela de consulta, ou o processo de módulo discutido acima poderia ao invés ser executado usando o QP modificado. Assumindo que o Compensação é aplicado na tabela de consulta, porém, entradas adicionais na tabela podem ser providas como segue:
[000314] Uma alternativa é estender as tabelas por 3 entradas, onde as novas entradas são como segue (para os valores de índice de 6-8).
[000315] A tabela de exemplo mostrada na Figura 30 seria indexada por [(QP % 6) + 3] (um "método de incremento de QP"), onde a notação QP % 6 significa "QP módulo 6".
[000316] A tabela de exemplo mostrada na Figura 31 seria indexada por [(QP % 6) — 3] (um "método de decremento de QP"), tendo entradas extras para os valores de índice de -1 a -3.
Codificação de Entropia
[000317] Codificação de entropia básica compreende nomear palavras- códigos a símbolos de dados de entrada, onde as palavras-códigos disponíveis mais curtas são nomeadas aos símbolos mais prováveis nos dados de entrada.
Em média, o resultado é uma representação sem perda, mas muito menor dos dados de entrada.
[000318] Este esquema básico pode ser melhorado adicionalmente reconhecendo que probabilidade de símbolo é frequentemente condicional em recentes dados anteriores, e consequentemente fazendo o processo de nomeação adaptável a contexto.
. [000319] Em um tal esquema, variáveis de contexto (CVs) são usadas para determinar a escolha de modelos de probabilidade respectivos, e tais CVs são providos no esquema de HEVC 4:2:0.
[000320] Para estender codificação de entropia ao esquema 4:2:2, que por exemplo usará TUs de croma 4x8 em lugar de TUs 4x4 para uma TU de luma 8x8, opcionalmente as variáveis de contexto podem ser providas simplesmente repetindo verticalmente as seleções de CV equivalentes.
[000321] Porém, em uma concretização da descrição presente, as seleções de CV não são repetidas para os coeficientes de topo-esquerdo (isto é, a alta energia, CC e/ou coeficientes de frequência espacial baixa), e ao invés novos CVs são derivados. Neste caso, por exemplo, uma mapeamento pode ser derivado do mapa de luma. Esta abordagem também pode ser usada para o esquema 4:4:4.
[000322] Durante codificação, no esquema 4:2:0, uma denominada varredura de zig varre pelos coeficientes em ordem de frequências alta para baixa. Porém, novamente é notado que as TUs de croma no esquema 4:2:2 podem ser não quadradas, e assim em uma concretização da descrição presente, uma varredura de croma diferente é proposta com o ângulo da varredura sendo inclinado a fazer isto mais horizontal, ou mais geralmente, responsivo à relação de aspecto da TU.
[000323] Semelhantemente, a vizinhança para seleção de CV de mapa de significação e o sistema de cl/c2 para seleção de CV maior que um e maior que dois pode ser adaptada por conseguinte.
[000324] Igualmente, em uma concretização da descrição presente, a última posição de coeficiente significante (que se torna o ponto de partida durante decodificação) também poderia ser ajustado para o esquema 4:4:4, com posições menos significantes para TUs de croma sendo codificadas diferencialmente da posição menos significante na TU de luma colocalizada.
[000325] A varredura de coeficiente também podem ser feita : dependente de modo de predição para certos tamanhos de TU. Consequentemente, uma ordem de varredura diferente pode ser usada para alguns tamanhos de TU dependente do modo de intrapredição.
[000326] No esquema 4:2:0, varredura de coeficiente dependente de modo (MDCS) só é aplicada para TUs de luma 4x4/8x8 e TUs de croma 4x4 para intrapredição. MDCS é usado dependente do modo de intrapredição, com ângulos +/-4 da horizontal e vertical sendo considerado.
[000327] Em uma concretização da descrição presente, é proposto que no esquema 4:2:2, MDCS seja aplicado a TUs de croma 4x8 e 8x4 para intrapredição. Semelhantemente, é proposto que no 4 esquema:4:4, MDCS seja aplicado a TUs de croma 8x8 e 4x4. MDCS para 4:2:2 só pode ser feito nas direções horizontal ou vertical, e que as gamas de ângulo podem diferir para croma 4:4:4 vs luma 4:4:4 vs croma 4:2:2 vs luma 4:2:2 vs luma 4:2:0. Filtros em malha 'Desbloqueio'
[000328] 'Desbloqueio' é aplicado a todos os limites de CU, PU e TU, e a forma de CU/PU/TU não é levada em conta. A intensidade e tamanho de filtro são dependentes de estatísticas locais, e 'desbloqueio' tem uma granularidade de pixels de Luma 8x8.
[000329] Consequentemente, é antecipado que o 'desbloqueio' atual aplicado para o esquema 4:2:0 também deveria ser aplicável para os esquemas 4:2:2 e 4:4:4. Compensação adaptável a amostra
[000330] Em compensação adaptável a amostra (SAO), cada canal é completamente independente. SAO divide os dados de imagem para cada canal usando uma 'quad-tree', e os blocos resultantes são pelo menos uma LCU em tamanho. Os blocos de folha são alinhados a limites de LCU e cada folha pode correr em um de três modos, como determinado pelo codificador ("Compensação de banda central", "Compensação de banda lateral" ou - "Compensação de borda"). Cada folha categoriza seus pixels, e o codificador deriva um valor de Compensação para cada uma das 16 categorias comparando os dados de entrada de SAO aos dados originais. Estes Compensaçãos são enviados ao decodificador. O Compensação para a categoria de um pixel decodificado é adicionado a seu valor para minimizar o desvio da fonte.
[000331] Além disso, SAO é habilitado ou desabilitado a nível de quadro; se habilitado para luma, também pode ser habilitado separadamente para cada canal de croma. SAO será aplicado portanto a croma somente se for aplicado à luma.
[000332] Consequentemente, o processo é largamente transparente ao esquema de bloco subjacente e é antecipado que o SAO atual aplicado para o esquema 4:2:0 também deveria ser aplicável para os esquemas 4:2:2 e 4:4:4. Filtragem de malha adaptável
[000333] No esquema 4:2:0, filtragem de malha adaptável (ALF) é desabilitada de modo prefixado. Porém, em princípio (isto é, se permitido) então ALF seria aplicada ao quadro inteiro para croma.
[000334] Em ALF, amostras de luma podem ser ordenadas em uma de várias categorias, como determinado pelos documentos de HEVC; cada categoria usa um filtro baseado em Wiener diferente.
[000335] Por contraste, em 4:2:0, amostras de croma não são categorizadas — há apenas um filtro baseado em Wiener para Cb, e um para Cr.
[000336] Consequentemente, em uma concretização da descrição presente, baseado na informação de croma aumentada nos esquemas 4:2:2 e 4:4:4, é proposto que as amostras de croma sejam categorizadas; por exemplo com K categorias para 4:2:2 e J categorias para 4:4:4.
[000337] Enquanto no esquema 4:2:0, ALF pode ser desabilitada para luma em uma base por CU usando uma bandeira de controle de ALF (até ao “ nível de CU especificado pela profundidade de controle de ALF), só pode ser desabilitada para croma em uma base por quadro. Note que em HEVC, esta profundidade está limitada atualmente ao nível de LCU somente.
[000338] Consequentemente em uma concretização da descrição presente, os esquemas 4:2:2 e 4:4:4 são providos com uma ou duas bandeiras de controle de ALF específicas de canal para croma.
Sintaxe
[000339] Em HEVC, sintaxe está já presente para indicar esquemas 4:2:0, 4:2:2 ou 4:4:4, e é indicada ao nível de sequência. Porém, em uma concretização da descrição presente, é proposto também indicar codificação de GBR 4:4:4 a este nível.
Sinais de Dados
[000340] Será apreciado que sinais de dados gerados pelas variantes de aparelho de codificação discutidas acima, e meios de armazenamento ou transmissão — levando tais sinais, são considerados representarem concretizações da descrição presente.
[000341] Características respectivas de concretizações estão definidas pelas clausulas numeradas seguintes:
1. Um método de codificação de vídeo operável em relação a imagens de um sinal de vídeo de formato 4:2:2, compreendendo: dividir uma imagem a ser codificada em unidades de codificação, unidades de predição e unidades de transformada para codificação, uma unidade de codificação que é um arranjo quadrado de amostras de luminância e amostras de crominância correspondentes, havendo uma ou mais unidades de predição em uma unidade de codificação, e havendo uma ou mais unidades de transformada em uma unidade de codificação; em que uma unidade de predição é uma unidade elementar de predição de forma que todas as amostras dentro de uma única unidade de predição sejam preditas i usando uma técnica de predição comum, e uma unidade de transformada seja uma unidade básica de transformação e quantização; habilitar transformadas não quadradas para permitir unidades de predição não quadradas; e selecionar tamanhos de bloco de unidade de transformada para alinhar com o bloco de unidade de predição plano.
2. Um método de acordo com cláusula 1, compreendendo: habilitar divisão de movimento assimétrico para permitir assimetria entre duas ou mais unidades de predição correspondendo a uma única unidade de codificação.
3. Um método de acordo com cláusula 1 ou cláusula 2, em que a etapa de selecionar tamanhos de bloco de unidade de transformada compreende: detectar características de imagem na porção da imagem correspondendo a uma unidade de predição; e selecionar tamanhos de bloco de unidade de transformada em relação àquela unidade de predição para alinhar limites de unidade de transformada com bordas de características de imagem na porção da imagem.
4. Um método de acordo com cláusula 3, em que a etapa de selecionar tamanhos de bloco de unidade de transformada compreende: selecionar tamanhos de bloco de unidade de transformada para a uma ou mais unidades de transformada derivadas de uma unidade de codificação, de acordo com uma hierarquia de árvore de divisões definida com respeito ao tamanho da unidade de predição respectiva.
5. Um método de acordo com qualquer uma das cláusulas anteriores em que a etapa de selecionar tamanhos de bloco de unidade de transformada compreende selecionar tamanhos de bloco de unidade de transformada da tabela seguinte, de acordo com a unidade de codificação selecionada e configuração de unidade de predição: de CU ” 64x64 64x32x2 (configuração na 32x32x4 32x8x4 horizontal) 64x16 + 64x48 (configuração horizontal 2 32x64x2 (configuração na 32x32x4 8x32x4 vertical) 16x64 + 48x64 configuração vertical 2 3232 | axa 332 Ia | 884 = = | 32x16x2 (configuração na 32x8x4 16x4x4 (luma) + horizontal) A4x4Xx4 (croma, 4:2:0 ou 32x8 + 32x24 4:2:2) ou 8x4x4 (croma, (configuração horizontal 2 422 16x32x2 (configuração na 8x32x4 4x16x4 (luma) + 4x4x4 vertical) (croma) 8x32 + 24x32 configuração vertical 2 A4x8x4 (croma 16x8x2 (configuração na 16x4x4 (luma) 4x4x4 (luma) + 4x8x]1 horizontal) +4x8x4 (croma) (4:2:0 | (croma) (4:2:0 ou 4:2:2) 16x4 + 16x12 ou 4:2:2) 4x4x4 (luma) + 8x4x]1 (configuração horizontal 2) 16x4x4 (luma) + (croma) 8x4x4 (croma) (4:2:2) 4:2:2 8x16x2 (configuração na vertical) 4x16 + 12x16 configuração vertical 2 8x8 8x8 8x8 4x4x4 (luma) + A4x4x4 4x8x1 (croma) n/a 8x4x2 (configuração horizontal) 4x8x2 (configuração vertical) tamento 1 o) edi |O | croma. 4x8x1 (croma) n/a onde nível 0, nível 1 e nível 2 representam níveis sucessivos na hierarquia de árvore de divisões, n/a indica um modo não permissível, cada tamanho de bloco é representado pela notação (dimensão horizontal) x (dimensão vertical) x (número de exemplos, se aplicável), e N é um inteiro maior que 1.
6. Um método de acordo com qualquer uma de cláusulas 1 a 4,
em que a etapa de selecionar tamanhos de bloco de unidade de transformada compreende selecionar tamanhos de bloco de unidade de transformada da tabela seguinte, de acordo com a unidade de codificação selecionada e configuração de unidade de predição: : de CU 64Xx64 64x32x2 (configuração na 32x32x4 32x8x4 horizontal) 64x16 + 64x48 (configuração horizontal 2 32x64x2 (configuração na 32x32x4 8x32x4 vertical) 16x64 + 48x64 (configuração vertical 2 32x32 32x16x2 (configuração na 32x8x4 16x4x4 (luma) + horizontal) 4x4x4 (croma, 4:2:0 ou 32x8 + 32x24 4:2:2) ou 8x4x4 (croma, (configuração horizontal 2) 42:2 16x32x2 (configuração na 8x32x4 4x16x4 (luma) + 4x4x4 vertical) (croma) 8x32 + 24x32 configuração vertical 2 4x8x4 (croma 16x8x2 (configuração na 16x4x4 (luma) 4x4x4 (luma) + 4x8x] horizontal) +4x8x4 (croma) (4:2:0 | (croma) (4:2:0 ou 4:2:2) 16x4 + 16x12 ou 4:2:2) A4x4x4 (luma) + 8x4x] (configuração horizontal 2) 16x4x4 (luma) + (croma) 8x4x4 (croma) (4:2:2) 4:2:2 8x16x2 (configuração na vertical) 4x16 + 12x16 configuração vertical 2 8x8 8x8 8x8 4x4x4 (luma) + Ax4x4 4x8x1 (croma) na 8x4x2 (configuração horizontal) 4x8x2 (configuração vertical eme | o | asma | (croma' 4x8x1 (croma) n/a onde nível 0, nível 1 e nível 2 representam níveis sucessivos na hierarquia de árvore de divisões, n/a indica um modo não permissível, cada tamanho de bloco é representado pela notação (dimensão horizontal) x (dimensão vertical) x (número de exemplos, se aplicável), e N é um inteiro maior que |.
7. Um método de acordo com qualquer uma das cláusulas anteriores, compreendendo a etapa de dividir uma unidade de transformada não quadrada em uma pluralidade de unidades de transformada quadradas antes de transformar ou quantizar essa unidade de transformada.
8. software de computador que, quando executado por um computador, faz o computador executar um método de acordo com qualquer uma das cláusulas anteriores.
9. Um meio de armazenamento não transitório legível por ' máquina que armazena software de acordo com a cláusula 8.
10. Um sinal de dados compreendendo dados codificados gerados de acordo com o método de qualquer uma de cláusulas 1 a 7.
11. Um aparelho de codificação de vídeo operável em relação a imagens de um sinal de vídeo de formato 4:2:2, compreendendo: um controlador configurado para dividir uma imagem a ser codificada em unidades de codificação, unidades de predição e unidades de transformada para codificação, uma unidade de codificação que é um arranjo quadrado de amostras de luminância e amostras de crominância correspondentes, havendo uma ou mais unidades de predição em uma unidade de codificação, e havendo uma ou mais unidades de transformada em uma unidade de codificação; em que uma unidade de predição é uma unidade elementar de predição de forma que todas as amostras dentro de uma única unidade de predição sejam preditas usando uma técnica de predição comum, e uma unidade de transformada é uma unidade básica de transformação e quantização; habilitar transformada não quadrada para permitir unidades de predição não quadradas; e selecionar tamanhos de bloco de unidade de transformada para alinhar com a disposição de bloco de unidade de predição.
[000342] Concretizações respectivas adicionais estão definidas pelas cláusulas numeradas seguintes:
1. Um método de decodificação de vídeo usando predição interimagem para codificar dados de vídeo de entrada nos quais cada componente de crominância tem 1/M-ésimo da resolução horizontal do componente de luminância e 1/N-ésimo da resolução vertical do componente de luminância, onde M e N são inteiros iguais a | ou mais, o método compreendendo: armazenar uma ou mais imagens precedendo uma imagem atual; interpolar uma versão de resolução mais alta de unidades de , predição das imagens armazenadas de forma que o componente de luminância de uma unidade de predição interpolada tenha uma resolução horizontal P vezes aquela da porção correspondente da imagem armazenada e uma resolução vertical Q vezes aquela da porção correspondente da imagem armazenada, onde P e Q são inteiros maiores que 1; detectar movimento interimagem entre uma imagem atual e a uma ou mais imagens armazenadas interpoladas para gerar vetores de movimento entre uma unidade de predição da imagem atual e áreas do uma ou mais imagens anteriores; e gerar uma predição compensada em movimento da unidade de predição da imagem atual com respeito a uma área de uma imagem armazenada interpolada apontada para por um vetor de movimento respectivo; em que a etapa de interpolação compreende: aplicar um filtro de interpolação horizontal xR e vertical xS aos componentes de crominância de uma imagem armazenada para gerar uma unidade de predição de crominância interpolada, onde R é igual (Ux Mx P) e S é igual a (V x Nx Q), U e V que são inteiros iguais a | ou mais; e subamostrar a unidade de predição de crominância interpolada, tal que sua resolução horizontal seja dividida por um fator de U e sua resolução vertical seja dividida por um fator de V, por esse meio resultando em um bloco de MP x NQ amostras.
[000343] Note que a etapa de detecção pode não ser requerida em um arranjo de decodificação, como pode usar o decodificador que os vetores de movimento providos isto (por exemplo, como parte do fluxo de dados de vídeo) pelo codificador.
2. Um método de acordo com cláusula 1 em que M=2 e N=1.
3. Um método de acordo com cláusula 2 em que dados de vídeo de entrada estão em um formato 4:2:2.
: 4. Um método de acordo com cláusula 3 em que a unidade de predição de crominância interpolada tem uma altura duas vezes em amostras aquela de uma unidade de predição de formato 4:2:0 interpolada usando os mesmos filtros de interpolação xR e de xS.
5. Um método de acordo com cláusula 2, o método sendo separadamente operável, usando os mesmos filtros de interpolação horizontal xR e vertical xS, em relação a dados de vídeo de entrada 4:2:0 e dados de vídeo de entrada 4:2:2.
6. Um método de acordo com qualquer uma das cláusulas anteriores em que P = 4.
7. Um método de acordo com qualquer uma das cláusulas anteriores em que Q=4.
8. Um método de acordo com qualquer um das cláusulas anteriores em que a etapa de subamostrar a unidade de predição de crominância interpolada compreende usar toda V-ésima amostra da unidade de predição de crominância interpolada na direção vertical.
9. Um método de acordo com qualquer uma das cláusulas anteriores em que a etapa de subamostrar a unidade de predição de crominância interpolada compreende usar toda U-ésima amostra da unidade de predição de crominância interpolada na direção vertical.
10. Um método de acordo com qualquer uma das cláusulas anteriores, compreendendo: derivar um vetor de movimento de luminância para uma unidade de predição; e derivar um ou mais vetores de movimento de crominância independentemente para aquela unidade de predição.
11. Um método de acordo com qualquer uma das cláusulas anteriores em que pelo menos um de R e S é igual a 2 ou mais.
12. Um método de acordo com qualquer uma das cláusulas . anteriores, compreendendo aplicar o filtro de interpolação horizontal xR e vertical xS aos componentes de luminância da imagem armazenada.
13. Um método de acordo com qualquer uma das cláusulas anteriores em que a subamostragem compreendendo selecionar um subconjunto de amostras da unidade de predição de crominância interpolada.
14. Um método de codificação de vídeo usando predição interimagem para codificar dados de vídeo em que cada componente de crominância tem 1/M-ésimo da resolução horizontal do componente de luminância e 1/N-ésimo da resolução vertical do componente de luminância, onde M e N são inteiros iguais a 1 ou mais, o método compreendendo: armazenar uma ou mais imagens precedendo uma imagem atual; interpolar uma versão de resolução mais alta de unidades de predição das imagens armazenadas de forma que o componente de luminância de uma unidade de predição interpolada tenha uma resolução horizontal P vezes aquela da porção correspondente da imagem armazenada e uma resolução vertical Q vezes aquela da porção correspondente da imagem armazenada, onde P e Q são inteiros maiores que 1; detectar movimento interimagem entre uma imagem atual e a uma ou mais imagens armazenadas interpoladas para gerar vetores de movimento entre uma unidade de predição da imagem atual e áreas da uma ou mais imagens anteriores; e gerar uma predição compensada em movimento da unidade de predição da imagem atual com respeito a uma área de uma imagem armazenada interpolada apontada para por um vetor de movimento respectivo; | em que a etapa de interpolação compreende: aplicar um filtro de interpolação horizontal xR e vertical xS aos componentes de crominância de uma imagem armazenada para gerar uma ' unidade de predição de crominância interpolada, onde R é igual a (Ux M x P) eSéiguala(VxNxQ),Ue V sendo inteiros iguais a 1 ou mais; e subamostrar a unidade de predição de crominância interpolada, tal que sua resolução horizontal seja dividida por um fator de U e sua resolução vertical seja dividida por um fator de V, por esse meio resultando em um bloco de MP x NQ amostras.
15. software de computador que, quando executado por um computador, faz o computador executar um método de acordo com qualquer uma das cláusulas anteriores.
16. Um meio de armazenamento não transitório legível por máquina armazenando software de acordo com a cláusula 15.
17. Um sinal de dados compreendendo dados codificados gerados de acordo com o método de qualquer uma de cláusulas 1 a 14.
18. Um aparelho de decodificação de vídeo usando predição interimagem para codificar dados de vídeo de entrada em que cada componente de crominância tem 1/M-ésimo da resolução horizontal do componente de luminância e 1/N-ésimo da resolução vertical do componente de luminância, onde M e N são inteiros iguais a | ou mais, o aparelho compreendendo: um armazenamento de imagem configurado para armazenar uma ou mais imagens precedendo uma imagem atual; um interpolador configurado para interpolar uma versão de resolução mais alta de unidades de predição das imagens armazenadas de forma que o componente de luminância de uma unidade de predição interpolada tenha uma resolução horizontal P vezes aquela da porção correspondente da imagem armazenada e uma resolução vertical Q vezes aquela da porção correspondente da imagem armazenada, onde P e Q são inteiros maiores que 1; i um detector configurado para detectar movimento . interimagem entre uma imagem atual e a uma ou mais imagens armazenadas interpoladas para gerar vetores de movimento entre uma unidade de predição da imagem atual e áreas da uma ou mais imagens anteriores; e um gerador configurado para gerar uma predição compensada em movimento da unidade de predição da imagem atual com respeito a uma área de uma imagem armazenada interpolada apontada para por um vetor de movimento respectivo; em que o interpolador está configurado para: aplicar um filtro de interpolação horizontal xR e vertical xS aos componentes de crominância de uma imagem armazenada para gerar uma unidade de predição de crominância interpolada, onde R é igual a (Ux M x P) eSéiguala(VxNxQ),Ue V sendo inteiros iguais a | ou mais; e subamostrar a unidade de predição de crominância interpolada, tal que sua resolução horizontal seja dividida por um fator de U e sua resolução vertical seja dividida por um fator de V, por esse meio resultando em um bloco de MP x NQ amostras.
19. Um aparelho de codificação de vídeo usando predição | interimagem para codificar dados de vídeo de entrada em que cada | componente de crominância tem 1/M-ésimo da resolução horizontal do | componente de luminância e 1/N-ésimo da resolução vertical do componente | de luminância, onde M e N são inteiros iguais a | ou mais, o aparelho compreendendo: um armazenamento de imagem configurado para armazenar uma ou mais imagens precedendo uma imagem atual; um interpolador configurado para interpolar uma versão de resolução mais alta de unidades de predição das imagens armazenadas de forma que o componente de luminância de uma unidade de predição interpolada tenha uma resolução horizontal P vezes aquela da porção i correspondente da imagem armazenada e uma resolução vertical Q vezes * aquela da porção correspondente da imagem armazenada, onde P e Q são inteiros maiores que |; um detector configurado para detectar movimento interimagem entre uma imagem atual e a uma ou mais imagens armazenadas interpoladas para gerar vetores de movimento entre uma unidade de predição da imagem atual e áreas da uma ou mais imagens anteriores; e um gerador configurado para gerar uma predição compensada em movimento da unidade de predição da imagem atual com respeito a uma área de uma imagem armazenada interpolada apontada para por um vetor de movimento respectivo; em que o interpolador está configurado para: aplicar um filtro de interpolação horizontal xR e vertical xS aos componentes de crominância de uma imagem armazenada para gerar uma unidade de predição de crominância interpolada, onde R é igual a (Ux M x P) eSéiguala(VxNxQ),Ue V sendo inteiros iguais a | ou mais; e subamostrar a unidade de predição de crominância interpolada, tal que sua resolução horizontal seja dividida por um fator de U e sua resolução vertical seja dividida por um fator de V, por esse meio resultando em um bloco de MP x NQ amostras.
20. Aparelho de captura, exibição, transmissão, recepção e/ou armazenamento de vídeo compreendendo aparelho de acordo com cláusula 18 ou cláusula 19.
Claims (11)
1. Método de decodificação de vídeo para decodificação de sinal de vídeo, o método sendo operável em relação a um sinal de formato de vídeo 4:2:0 e 4:2:2, o método caracterizado pelo fato de compreender: gerar unidades de predição de uma imagem atual a partir de uma ou mais imagens armazenadas precedendo a imagem atual, a etapa de geração compreendendo: em relação a um sinal de formato de vídeo 4:2:0, derivar amostras de uma unidade de predição interpolada pelo uso de um filtro de luminância de 8 derivações x4 aplicado verticalmente e horizontalmente a uma unidade de predição de luminância e pela aplicação de um filtro de crominância de 4 derivações x8 verticalmente e horizontalmente para uma unidade de predição de crominância; e em relação a um sinal de formato de vídeo 4:2:2; derivar amostras de uma unidade de predição de crominância pela aplicação do mesmo filtro de crominância de 4 derivações x8 horizontalmente e verticalmente para uma unidade de predição de crominância, mas usando somente resultados fracionários de posições alternadas como amostras interpoladas na direção vertical.
2. Método de acordo com reivindicação 1, caracterizado pelo fato de que a etapa de geração compreende: acessar amostras da unidade de predição interpolada apontada por um vetor de movimento para gerar uma previsão de movimento compensado de uma unidade de predição da imagem atual em relação a uma área representada por as amostras da unidade de predição interpolada.
3. Método de acordo com reivindicação 1, o método caracterizado pelo fato de que é também operável em relação aos dados de vídeo 4:4:4, o mesmo filtro de crominância de 4 derivações x8 sendo aplicados horizontalmente e verticalmente para gerar amostra de uma unidade de predição de crominância interpolada, mas somente resultados fracionais de posições alternadas sendo usados como amostras interpoladas em direções horizontais e verticais.
4. Método de acordo com a reivindicação 2, caracterizado pelo fato de que o vetor de movimento é um vetor de movimento de precisão de subpixel.
5. Método de acordo com a reivindicação 1, caracterizado pelo fato de que resultados fracionários de posição alternados são resultados ainda fracionários de posição.
6. Método de codificação de vídeo para codificar um sinal de vídeo, o método sendo operável em relação a um sinal de formato de vídeo 4:2:0 e 4:2:2, o método caracterizado pelo fato de compreender: gerar vetores de movimento para predição de unidades de predição de uma imagem atual a partir de uma ou mais imagens armazenadas precedendo a imagem atual, a etapa de geração compreendendo: em relação a um sinal de formato de vídeo 4:2:0, derivar amostras de uma unidade de predição interpolada pelo uso de um filtro de luminância de 8 derivações x4 aplicado verticalmente e horizontalmente a uma unidade de predição de luminância armazenada e pela aplicação de um filtro de crominância de 4 derivações x8 verticalmente e horizontalmente para uma unidade de predição de crominância; e em relação a um sinal de formato de vídeo 4:2:2; derivar amostras de uma unidade de predição de crominância interpolada pela aplicação do mesmo filtro de crominância de 4 derivações x8 horizontalmente e verticalmente, mas usando somente resultados fracionários de posição alternados como amostras interpoladas na direção vertical.
7. Meio de gravação, caracterizado pelo fato de compreender instruções que, quando executadas por um computador, realizam um método como definido em qualquer uma das reivindicações | a 5.
8. Sinal de dados caracterizado pelo fato de compreender dados codificados gerados pelo método como definido na reivindicação 6.
9. Aparelho de decodificação de vídeo para decodificar um sinal de vídeo, o aparelho sendo operável em relação a um sinal de formato de vídeo 4:2:0 e 4:2:2, o aparelho caracterizado pelo fato de compreender: um filtro de interpolação configurado para gerar unidades de predição de uma imagem atual a partir de uma ou mais imagens armazenadas precedendo a imagem atual por: em relação a um sinal de formato de vídeo 4:2:0, derivar amostras de uma unidade de predição interpolada pelo uso de um filtro de luminância de 8 derivações x4 aplicado verticalmente e horizontalmente a uma unidade de predição de luminância armazenada e pela aplicação de um filtro de crominância de 4 derivações x8 verticalmente e horizontalmente para uma unidade de predição de crominância; e em relação a um sinal de formato de vídeo 4:2:2; derivar amostras de uma unidade de predição de crominância interpolada pela aplicação do mesmo filtro de crominância de 4 derivações x8 horizontalmente e verticalmente, mas usando somente resultados fracionários de posição alternados como amostras interpoladas na direção vertical.
10. Aparelho de codificação de vídeo para codificar um sinal de vídeo, o aparelho sendo operável em relação a um sinal de formato de vídeo 4:2:0 e 4:2:2, o aparelho caracterizado pelo fato de compreender: um gerador de vetor de movimento configurado para gerar vetores de movimento para predição de unidades de predição de uma imagem atual a partir de uma ou mais imagens armazenadas precedendo a imagem atual, por: em relação a um sinal de formato de vídeo 4:2:0, derivar amostras de uma unidade de predição interpolada pelo uso de um filtro de luminância de 8 derivações x4 aplicado verticalmente e horizontalmente a uma unidade de predição de luminância armazenada e pela aplicação de um filtro de crominância de 4 derivações x8 verticalmente e horizontalmente para uma unidade de predição de crominância; e em relação a um sinal de formato de vídeo 4:2:2; derivar amostras de uma unidade de predição de crominância interpolada pela aplicação do mesmo filtro de crominância de 4 derivações x8 horizontalmente e verticalmente, mas usando somente resultados fracionários de posição alternados como amostras interpoladas na direção vertical.
11. Aparelho de captura de vídeo, exibição, transmissão, recepção e/ou armazenamento de vídeo como definido na reivindicação 10.
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1207459.7 | 2012-04-26 | ||
GB1207459.7A GB2501535A (en) | 2012-04-26 | 2012-04-26 | Chrominance Processing in High Efficiency Video Codecs |
GB1211072.2A GB2501550A (en) | 2012-04-26 | 2012-06-22 | Subsampling Interpolated Chrominance Prediction Units in Video Encoding and Decoding |
GB1211073.0 | 2012-06-22 | ||
GB1211073.0A GB2501551A (en) | 2012-04-26 | 2012-06-22 | Partitioning Image Data into Coding, Prediction and Transform Units in 4:2:2 HEVC Video Data Encoding and Decoding |
GB1211072.2 | 2012-06-22 | ||
PCT/GB2013/051076 WO2013160699A1 (en) | 2012-04-26 | 2013-04-26 | Generating subpixel values for different color sampling formats |
Publications (2)
Publication Number | Publication Date |
---|---|
BR112014026035A2 true BR112014026035A2 (pt) | 2020-06-30 |
BR112014026035B1 BR112014026035B1 (pt) | 2023-02-07 |
Family
ID=46330504
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BR112014026021-4A BR112014026021B1 (pt) | 2012-04-26 | 2013-04-26 | Aparelhos e métodos para decodificação e codificação de dados de vídeo, e, aparelho de armazenamento, transmissão, captura ou exibição de vídeo |
BR112014026035-4A BR112014026035B1 (pt) | 2012-04-26 | 2013-04-26 | Métodos e aparelhos de decodificação e codificação de vídeo, meio de armazenamento não transitório legível por computador, e, aparelho de captura, exibição, transmissão, recepção e/ou armazenamento de vídeo |
BR112014026024A BR112014026024A8 (pt) | 2012-04-26 | 2013-04-26 | métodos e aparelhos de decodificação e codificação de vídeo, meio de armazenamento legível por máquina, sinal de dados, e, aparelho de armazenamento, transmissão, captura ou exibição de vídeo |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BR112014026021-4A BR112014026021B1 (pt) | 2012-04-26 | 2013-04-26 | Aparelhos e métodos para decodificação e codificação de dados de vídeo, e, aparelho de armazenamento, transmissão, captura ou exibição de vídeo |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BR112014026024A BR112014026024A8 (pt) | 2012-04-26 | 2013-04-26 | métodos e aparelhos de decodificação e codificação de vídeo, meio de armazenamento legível por máquina, sinal de dados, e, aparelho de armazenamento, transmissão, captura ou exibição de vídeo |
Country Status (13)
Country | Link |
---|---|
US (20) | US9948929B2 (pt) |
EP (8) | EP2842321A2 (pt) |
JP (11) | JP2015518339A (pt) |
KR (6) | KR101840025B1 (pt) |
CN (14) | CN104285445A (pt) |
AU (5) | AU2013254443A1 (pt) |
BR (3) | BR112014026021B1 (pt) |
CA (6) | CA2870591C (pt) |
GB (13) | GB2501535A (pt) |
MX (3) | MX343351B (pt) |
RU (4) | RU2603548C2 (pt) |
TW (5) | TWI611689B (pt) |
WO (9) | WO2013160656A2 (pt) |
Families Citing this family (213)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2549157C1 (ru) * | 2010-04-23 | 2015-04-20 | М энд К ХОЛДИНГС ИНК. | Устройство для кодирования движущегося изображения |
CN103283237B (zh) * | 2010-12-22 | 2017-03-22 | Lg电子株式会社 | 帧内预测方法和使用该方法的设备 |
US10645398B2 (en) * | 2011-10-25 | 2020-05-05 | Texas Instruments Incorporated | Sample-based angular intra-prediction in video coding |
EP2777250B1 (en) * | 2011-11-07 | 2017-05-31 | Intel Corporation | Cross-channel residual prediction |
GB2501535A (en) | 2012-04-26 | 2013-10-30 | Sony Corp | Chrominance Processing in High Efficiency Video Codecs |
US9591302B2 (en) * | 2012-07-02 | 2017-03-07 | Microsoft Technology Licensing, Llc | Use of chroma quantization parameter offsets in deblocking |
US9414054B2 (en) | 2012-07-02 | 2016-08-09 | Microsoft Technology Licensing, Llc | Control and use of chroma quantization parameter values |
AU2012232992A1 (en) | 2012-09-28 | 2014-04-17 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding the transform units of a coding unit |
US9667994B2 (en) | 2012-10-01 | 2017-05-30 | Qualcomm Incorporated | Intra-coding for 4:2:2 sample format in video coding |
RU2641223C2 (ru) * | 2012-11-08 | 2018-01-16 | Кэнон Кабусики Кайся | Способ, устройство и система для кодирования и декодирования единиц преобразования единицы кодирования |
US9743091B2 (en) | 2012-12-17 | 2017-08-22 | Lg Electronics Inc. | Method for encoding/decoding image, and device using same |
JP6005572B2 (ja) * | 2013-03-28 | 2016-10-12 | Kddi株式会社 | 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム |
HUE056673T2 (hu) | 2013-03-29 | 2022-02-28 | Jvckenwood Corp | Képdekódoló készülék, képdekódoló eljárás és képdekódoló program |
AU2013202653A1 (en) * | 2013-04-05 | 2014-10-23 | Canon Kabushiki Kaisha | Method, apparatus and system for generating intra-predicted samples |
GB2513111A (en) | 2013-04-08 | 2014-10-22 | Sony Corp | Data encoding and decoding |
WO2014166965A1 (en) * | 2013-04-08 | 2014-10-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Inter-component prediction |
GB2513110A (en) | 2013-04-08 | 2014-10-22 | Sony Corp | Data encoding and decoding |
WO2014166381A1 (en) | 2013-04-09 | 2014-10-16 | Mediatek Singapore Pte. Ltd. | Method and apparatus for non-square intra mode coding |
US9686561B2 (en) * | 2013-06-17 | 2017-06-20 | Qualcomm Incorporated | Inter-component filtering |
EP3021578B1 (en) * | 2013-07-10 | 2019-01-02 | KDDI Corporation | Sub-sampling of reference pixels for chroma prediction based on luma intra prediction mode |
NZ715990A (en) * | 2013-07-24 | 2019-11-29 | Microsoft Technology Licensing Llc | Scanning orders for non-transform coding |
US9294766B2 (en) * | 2013-09-09 | 2016-03-22 | Apple Inc. | Chroma quantization in video coding |
US9813737B2 (en) * | 2013-09-19 | 2017-11-07 | Blackberry Limited | Transposing a block of transform coefficients, based upon an intra-prediction mode |
KR101530774B1 (ko) | 2013-09-30 | 2015-06-22 | 연세대학교 산학협력단 | 영상 부호화 및 복호화 방법, 장치 및 시스템 |
RU2654129C2 (ru) | 2013-10-14 | 2018-05-16 | МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи | Функциональные возможности режима внутреннего предсказания с блочным копированием для кодирования и декодирования видео и изображений |
EP3058736B1 (en) | 2013-10-14 | 2019-02-27 | Microsoft Technology Licensing, LLC | Encoder-side options for intra block copy prediction mode for video and image coding |
JP6336058B2 (ja) | 2013-10-14 | 2018-06-06 | マイクロソフト テクノロジー ライセンシング,エルエルシー | ビデオ及び画像符号化及び復号のためのベースカラーインデックスマップモードの機能 |
KR101530782B1 (ko) | 2013-12-03 | 2015-06-22 | 연세대학교 산학협력단 | 영상 부호화 및 복호화 방법, 장치 및 시스템 |
EP3041235A4 (en) * | 2013-12-27 | 2017-03-22 | Sony Corporation | Image processing device and method |
US10390034B2 (en) | 2014-01-03 | 2019-08-20 | Microsoft Technology Licensing, Llc | Innovations in block vector prediction and estimation of reconstructed sample values within an overlap area |
RU2669005C2 (ru) | 2014-01-03 | 2018-10-05 | МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи | Предсказание вектора блока в кодировании/декодировании видео и изображений |
US10368097B2 (en) * | 2014-01-07 | 2019-07-30 | Nokia Technologies Oy | Apparatus, a method and a computer program product for coding and decoding chroma components of texture pictures for sample prediction of depth pictures |
US11284103B2 (en) | 2014-01-17 | 2022-03-22 | Microsoft Technology Licensing, Llc | Intra block copy prediction with asymmetric partitions and encoder-side search patterns, search ranges and approaches to partitioning |
US10542274B2 (en) | 2014-02-21 | 2020-01-21 | Microsoft Technology Licensing, Llc | Dictionary encoding and decoding of screen content |
JP5897159B2 (ja) | 2014-02-25 | 2016-03-30 | キヤノン株式会社 | 表示装置及びその制御方法 |
JP6504174B2 (ja) * | 2014-03-03 | 2019-04-24 | ソニー株式会社 | 装置及び方法 |
CA2939431C (en) | 2014-03-04 | 2020-09-22 | Microsoft Techology Licensing, Llc | Block flipping and skip mode in intra block copy prediction |
JP6731574B2 (ja) * | 2014-03-06 | 2020-07-29 | パナソニックIpマネジメント株式会社 | 動画像符号化装置および動画像符号化方法 |
US10171823B2 (en) * | 2014-05-26 | 2019-01-01 | Sharp Kabushiki Kaisha | Image decoding device and image coding device |
US10715833B2 (en) * | 2014-05-28 | 2020-07-14 | Apple Inc. | Adaptive syntax grouping and compression in video data using a default value and an exception value |
US10142642B2 (en) | 2014-06-04 | 2018-11-27 | Qualcomm Incorporated | Block adaptive color-space conversion coding |
KR102413529B1 (ko) | 2014-06-19 | 2022-06-24 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | 통합된 인트라 블록 카피 및 인터 예측 모드 |
US10567755B2 (en) | 2014-07-06 | 2020-02-18 | Lg Electronics Inc. | Method for processing video signal, and apparatus therefor |
WO2016049839A1 (en) | 2014-09-30 | 2016-04-07 | Microsoft Technology Licensing, Llc | Rules for intra-picture prediction modes when wavefront parallel processing is enabled |
GB2532420A (en) | 2014-11-18 | 2016-05-25 | Sony Corp | Data encoding and decoding |
US9591325B2 (en) | 2015-01-27 | 2017-03-07 | Microsoft Technology Licensing, Llc | Special case handling for merged chroma blocks in intra block copy prediction mode |
EP3051818A1 (en) | 2015-01-30 | 2016-08-03 | Thomson Licensing | Method and device for decoding a color picture |
US10057587B2 (en) * | 2015-01-31 | 2018-08-21 | Qualcomm Incorporated | Coding escape pixels for palette mode coding |
CN107211149A (zh) * | 2015-02-05 | 2017-09-26 | 联发科技股份有限公司 | 调色板语法的解码操作装置与方法 |
CN107251558B (zh) * | 2015-02-27 | 2019-12-31 | Kddi株式会社 | 编码装置以及解码装置 |
US10291932B2 (en) * | 2015-03-06 | 2019-05-14 | Qualcomm Incorporated | Method and apparatus for low complexity quarter pel generation in motion search |
WO2016145162A2 (en) * | 2015-03-12 | 2016-09-15 | NGCodec Inc. | Intra-picture prediction processor with progressive block size computations and dual stage computations |
US10362305B2 (en) * | 2015-03-27 | 2019-07-23 | Sony Corporation | Image processing device, image processing method, and recording medium |
RU2684193C1 (ru) * | 2015-05-21 | 2019-04-04 | Хуавэй Текнолоджиз Ко., Лтд. | Устройство и способ для компенсации движения в видеоизображении |
WO2016200984A1 (en) * | 2015-06-08 | 2016-12-15 | Vid Scale, Inc. | Intra block copy mode for screen content coding |
CN106664405B (zh) | 2015-06-09 | 2020-06-09 | 微软技术许可有限责任公司 | 用调色板模式对经逸出编码的像素的稳健编码/解码 |
FR3038484B1 (fr) * | 2015-07-01 | 2017-07-28 | Ateme | Procede d'encodage d'image et equipement pour la mise en oeuvre du procede |
ES2677193B1 (es) | 2015-08-28 | 2019-06-19 | Kt Corp | Procedimiento y dispositivo para procesar señales de vídeo |
WO2017041271A1 (en) * | 2015-09-10 | 2017-03-16 | Mediatek Singapore Pte. Ltd. | Efficient context modeling for coding a block of data |
WO2017043786A1 (ko) * | 2015-09-10 | 2017-03-16 | 엘지전자 주식회사 | 비디오 코딩 시스템에서 인트라 예측 방법 및 장치 |
WO2017073362A1 (ja) * | 2015-10-30 | 2017-05-04 | ソニー株式会社 | 画像処理装置および方法 |
WO2017084577A1 (en) | 2015-11-18 | 2017-05-26 | Mediatek Inc. | Method and apparatus for intra prediction mode using intra prediction filter in video and image compression |
US10194170B2 (en) * | 2015-11-20 | 2019-01-29 | Mediatek Inc. | Method and apparatus for video coding using filter coefficients determined based on pixel projection phase |
KR20180075660A (ko) * | 2015-11-24 | 2018-07-04 | 삼성전자주식회사 | 비디오 복호화 방법 및 그 장치 및 비디오 부호화 방법 및 그 장치 |
US20170150186A1 (en) * | 2015-11-25 | 2017-05-25 | Qualcomm Incorporated | Flexible transform tree structure in video coding |
CN108702508B (zh) | 2016-02-12 | 2023-04-11 | 交互数字Vc控股公司 | 用于帧内预测编码/解码的方法和设备 |
RU2707719C1 (ru) | 2016-02-12 | 2019-11-28 | Хуавей Текнолоджиз Ко., Лтд. | Способ и устройство выбора порядка сканирования |
KR102159252B1 (ko) | 2016-02-12 | 2020-10-14 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 스캔 순서 선택을 위한 방법 및 장치 |
EP3220643A1 (en) * | 2016-03-14 | 2017-09-20 | Thomson Licensing | Method and device for encoding at least one image unit, and method and device for decoding a stream representative of at least one image unit |
US10455228B2 (en) * | 2016-03-21 | 2019-10-22 | Qualcomm Incorporated | Determining prediction parameters for non-square blocks in video coding |
US20170332103A1 (en) * | 2016-05-13 | 2017-11-16 | Intel Corporation | Interleaving luma and chroma coefficients to reduce the intra prediction loop dependency in video encoders and decoders |
WO2017205700A1 (en) * | 2016-05-25 | 2017-11-30 | Arris Enterprises Llc | Binary, ternary and quad tree partitioning for jvet coding of video data |
EP4199515A1 (en) * | 2016-05-27 | 2023-06-21 | SHARP Kabushiki Kaisha | Systems and methods for varying quantization parameters |
PL3731527T3 (pl) * | 2016-05-28 | 2023-01-09 | Hfi Innovation Inc. | Sposób i urządzenie do kodowania w trybie palety dla danych kolorowego wideo |
CN114222139A (zh) * | 2016-05-28 | 2022-03-22 | 世宗大学校产学协力团 | 视频信号的解码方法 |
US11039147B2 (en) | 2016-05-28 | 2021-06-15 | Mediatek Inc. | Method and apparatus of palette mode coding for colour video data |
US10687003B2 (en) | 2016-08-04 | 2020-06-16 | Omnivision Technologies, Inc. | Linear-logarithmic image sensor |
US10326986B2 (en) | 2016-08-15 | 2019-06-18 | Qualcomm Incorporated | Intra video coding using a decoupled tree structure |
US10368107B2 (en) | 2016-08-15 | 2019-07-30 | Qualcomm Incorporated | Intra video coding using a decoupled tree structure |
US10652575B2 (en) * | 2016-09-15 | 2020-05-12 | Qualcomm Incorporated | Linear model chroma intra prediction for video coding |
ES2711473R1 (es) * | 2016-09-20 | 2021-04-07 | Kt Corp | Metodo y aparato para procesar una senal de video |
WO2018062921A1 (ko) * | 2016-09-30 | 2018-04-05 | 엘지전자 주식회사 | 영상 코딩 시스템에서 블록 분할 및 인트라 예측 방법 및 장치 |
US10506228B2 (en) * | 2016-10-04 | 2019-12-10 | Qualcomm Incorporated | Variable number of intra modes for video coding |
US10341659B2 (en) * | 2016-10-05 | 2019-07-02 | Qualcomm Incorporated | Systems and methods of switching interpolation filters |
WO2018079888A1 (ko) * | 2016-10-28 | 2018-05-03 | 엘지전자(주) | 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치 |
CN116647677A (zh) | 2016-10-28 | 2023-08-25 | 韩国电子通信研究院 | 视频编码/解码方法和设备以及存储比特流的记录介质 |
US10192295B2 (en) * | 2016-11-09 | 2019-01-29 | AI Analysis, Inc. | Methods and systems for normalizing images |
US10609367B2 (en) * | 2016-12-21 | 2020-03-31 | Qualcomm Incorporated | Low-complexity sign prediction for video coding |
KR102327944B1 (ko) * | 2016-12-23 | 2021-11-17 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 미리 결정된 방향성 인트라 예측 모드들의 세트로부터 방향성 인트라 예측 모드를 제거하기 위한 인트라 예측 장치 |
CN115633170A (zh) * | 2016-12-23 | 2023-01-20 | 华为技术有限公司 | 一种用于矩形视频编码块的解码方法、装置及计算机可读存储介质 |
EP3535972B1 (en) * | 2016-12-23 | 2020-11-18 | Huawei Technologies Co., Ltd. | An intra-prediction apparatus for extending a set of predetermined directional intra-prediction modes |
US11025903B2 (en) * | 2017-01-13 | 2021-06-01 | Qualcomm Incorporated | Coding video data using derived chroma mode |
CN116684603A (zh) * | 2017-03-31 | 2023-09-01 | 松下电器(美国)知识产权公司 | 图像编码装置、图像解码装置及存储介质 |
AU2018252853A1 (en) * | 2017-04-13 | 2019-12-05 | Lg Electronics Inc. | Image encoding/decoding method and device therefor |
CN114422780A (zh) * | 2017-04-28 | 2022-04-29 | 夏普株式会社 | 图像解码装置以及图像编码装置 |
CN108989820B (zh) * | 2017-06-03 | 2022-07-05 | 上海天荷电子信息有限公司 | 各阶段采用各自相应色度采样格式的数据压缩方法和装置 |
RU2759218C2 (ru) * | 2017-06-21 | 2021-11-11 | Вид Скейл, Инк. | Адаптивное квантование для кодирования 360-градусного видео |
CN117560488A (zh) * | 2017-07-06 | 2024-02-13 | Lx 半导体科技有限公司 | 图像编码/解码方法、发送方法和数字存储介质 |
US10567772B2 (en) * | 2017-07-11 | 2020-02-18 | Google Llc | Sub8×8 block processing |
CN109274969B (zh) * | 2017-07-17 | 2020-12-22 | 华为技术有限公司 | 色度预测的方法和设备 |
WO2019027241A1 (ko) * | 2017-07-31 | 2019-02-07 | 한국전자통신연구원 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 |
CN107483934B (zh) * | 2017-08-17 | 2019-12-10 | 西安万像电子科技有限公司 | 编解码方法、装置和*** |
JP2021005741A (ja) * | 2017-09-14 | 2021-01-14 | シャープ株式会社 | 画像符号化装置及び画像復号装置 |
RU2669874C1 (ru) * | 2017-09-15 | 2018-10-16 | Федеральное государственное унитарное предприятие "Государственный научно-исследовательский институт авиационных систем" (ФГУП "ГосНИИАС") | Способы и устройство сжатия изображений. Способ и устройство восстановления изображений |
KR20190033457A (ko) | 2017-09-21 | 2019-03-29 | 주식회사 케이티 | 비디오 신호 처리 방법 및 장치 |
CN118042095A (zh) * | 2017-10-09 | 2024-05-14 | 诺基亚技术有限公司 | 用于视频编码和解码的装置、方法和计算机程序 |
US10812798B2 (en) * | 2017-10-19 | 2020-10-20 | Qualcomm Incorporated | Chroma quantization parameter (QP) offset |
US10368071B2 (en) * | 2017-11-03 | 2019-07-30 | Arm Limited | Encoding data arrays |
EP3490253A1 (en) * | 2017-11-23 | 2019-05-29 | Thomson Licensing | Encoding and decoding methods and corresponding devices |
CN108063947B (zh) * | 2017-12-14 | 2021-07-13 | 西北工业大学 | 一种基于像素纹理的无损参考帧压缩方法 |
US10986349B2 (en) | 2017-12-29 | 2021-04-20 | Microsoft Technology Licensing, Llc | Constraints on locations of reference blocks for intra block copy prediction |
US11825117B2 (en) | 2018-01-15 | 2023-11-21 | Samsung Electronics Co., Ltd. | Encoding method and apparatus therefor, and decoding method and apparatus therefor |
GB2570711B (en) * | 2018-02-05 | 2023-04-05 | Sony Corp | Data encoding and decoding |
US11069026B2 (en) | 2018-03-02 | 2021-07-20 | Mediatek Inc. | Method for processing projection-based frame that includes projection faces packed in cube-based projection layout with padding |
US10922783B2 (en) | 2018-03-02 | 2021-02-16 | Mediatek Inc. | Cube-based projection method that applies different mapping functions to different square projection faces, different axes, and/or different locations of axis |
CN116366844A (zh) | 2018-03-09 | 2023-06-30 | 韩国电子通信研究院 | 使用样点滤波的图像编码/解码方法和设备 |
JP6982525B2 (ja) * | 2018-03-16 | 2021-12-17 | Kddi株式会社 | 動画像の符号化装置および方法、復号装置および方法ならびに符号化復号システム |
CN118301330A (zh) | 2018-03-25 | 2024-07-05 | 有限公司B1影像技术研究所 | 图像编码/解码方法、存储介质和传输比特流的方法 |
US11336919B2 (en) * | 2018-03-30 | 2022-05-17 | Sony Corporation | Image processing apparatus and method |
JP7073495B2 (ja) * | 2018-04-01 | 2022-05-23 | エルジー エレクトロニクス インコーポレイティド | 量子化パラメータ導出に基づく映像コーディング装置及び方法 |
WO2019194147A1 (en) | 2018-04-02 | 2019-10-10 | Sharp Kabushiki Kaisha | Systems and methods for deriving quantization parameters for video blocks in video coding |
US11259023B2 (en) * | 2018-04-12 | 2022-02-22 | Qualcomm Incorporated | Harmonization of transform-based quantization and dynamic range adjustment scale derivation in video coding |
WO2019209028A1 (ko) * | 2018-04-24 | 2019-10-31 | 삼성전자 주식회사 | 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치 |
US11449256B2 (en) | 2018-05-15 | 2022-09-20 | Samsung Electronics Co., Ltd. | Method for accelerating image storing and retrieving differential latency storage devices based on access rates |
US10949087B2 (en) | 2018-05-15 | 2021-03-16 | Samsung Electronics Co., Ltd. | Method for rapid reference object storage format for chroma subsampled images |
WO2019234605A1 (en) * | 2018-06-05 | 2019-12-12 | Beijing Bytedance Network Technology Co., Ltd. | Extended quad-tree with asymmetric sub-blocks and different tree for chroma |
KR20230127354A (ko) * | 2018-06-29 | 2023-08-31 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 인트라-예측을 위한 디바이스 및 방법 |
US10284844B1 (en) | 2018-07-02 | 2019-05-07 | Tencent America LLC | Method and apparatus for video coding |
US10382772B1 (en) | 2018-07-02 | 2019-08-13 | Tencent America LLC | Method and apparatus for video coding |
CN112425161A (zh) | 2018-07-11 | 2021-02-26 | 英迪股份有限公司 | 基于帧内预测的视频编码方法和装置 |
US11265579B2 (en) * | 2018-08-01 | 2022-03-01 | Comcast Cable Communications, Llc | Systems, methods, and apparatuses for video processing |
CA3109014C (en) * | 2018-08-09 | 2024-04-09 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Video image component prediction method and apparatus, and computer storage medium |
WO2020036132A1 (ja) | 2018-08-15 | 2020-02-20 | 日本放送協会 | 画像符号化装置、画像復号装置、及びプログラム |
CN112771865A (zh) * | 2018-08-23 | 2021-05-07 | 交互数字Vc控股法国公司 | 使用参数化模型对量化矩阵进行编解码 |
CN110876061B (zh) * | 2018-09-03 | 2022-10-11 | 华为技术有限公司 | 色度块预测方法及装置 |
KR20200033195A (ko) | 2018-09-19 | 2020-03-27 | 한국전자통신연구원 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 |
WO2020060077A1 (ko) * | 2018-09-20 | 2020-03-26 | 삼성전자 주식회사 | 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치 |
US10469845B1 (en) | 2018-09-21 | 2019-11-05 | Tencent America, Llc | Method and apparatus for intra mode coding |
CN112740276A (zh) * | 2018-09-23 | 2021-04-30 | 华为技术有限公司 | 用于帧内参考样本插值滤波器切换的方法和装置 |
US11303904B2 (en) * | 2018-09-28 | 2022-04-12 | Qualcomm Incorporated | Rectangular block transform scaling |
US11178397B2 (en) * | 2018-10-09 | 2021-11-16 | Mediatek Inc. | Method and apparatus of encoding or decoding using reference samples determined by predefined criteria |
US11140404B2 (en) * | 2018-10-11 | 2021-10-05 | Tencent America LLC | Method and apparatus for video coding |
CN112889277B (zh) * | 2018-10-22 | 2024-07-23 | 松下电器(美国)知识产权公司 | 编码装置、解码装置、编码方法和解码方法 |
WO2020085955A1 (en) * | 2018-10-26 | 2020-04-30 | Huawei Technologies Co., Ltd. | Method and apparatus for reference sample filtering |
WO2020094067A1 (en) | 2018-11-06 | 2020-05-14 | Beijing Bytedance Network Technology Co., Ltd. | Simplified parameter derivation for intra prediction |
WO2020094154A1 (en) * | 2018-11-09 | 2020-05-14 | Beijing Bytedance Network Technology Co., Ltd. | Improvements for region based adaptive loop filter |
WO2020098786A1 (en) * | 2018-11-16 | 2020-05-22 | Mediatek Inc. | Method and apparatus of luma-chroma separated coding tree coding with constraints |
US11438583B2 (en) * | 2018-11-27 | 2022-09-06 | Tencent America LLC | Reference sample filter selection in intra prediction |
KR20210084567A (ko) | 2018-11-28 | 2021-07-07 | 주식회사 윌러스표준기술연구소 | 화면 내 예측 필터링을 이용한 비디오 신호 처리 방법 및 장치 |
CN113170122B (zh) | 2018-12-01 | 2023-06-27 | 北京字节跳动网络技术有限公司 | 帧内预测的参数推导 |
CN113170169B (zh) * | 2018-12-07 | 2024-01-30 | 夏普株式会社 | 预测图像生成装置、运动图像解码装置、运动图像编码装置以及预测图像生成方法 |
CN116962710A (zh) * | 2018-12-15 | 2023-10-27 | 华为技术有限公司 | 图像重建方法和装置 |
JP2020098984A (ja) * | 2018-12-17 | 2020-06-25 | キヤノン株式会社 | 画像符号化装置及び画像復号装置及びそれらの制御方法及びプログラム |
CN116886927B (zh) * | 2018-12-21 | 2024-05-14 | 北京达佳互联信息技术有限公司 | 视频编码的方法和装置、存储介质和计算机程序产品 |
WO2020135346A1 (en) | 2018-12-23 | 2020-07-02 | Huawei Technologies Co., Ltd. | An encoder, a decoder and corresponding methods using an adaptive loop filter |
WO2020176635A1 (en) | 2019-02-27 | 2020-09-03 | Futurewei Technologies, Inc. | Adaptation parameter set identifier value spaces in video coding |
US20200288130A1 (en) * | 2019-03-07 | 2020-09-10 | Qualcomm Incorporated | Simplification of sub-block transforms in video coding |
CN117956147A (zh) * | 2019-03-08 | 2024-04-30 | 佳能株式会社 | 自适应环路滤波器 |
CN113545049B (zh) | 2019-03-08 | 2024-04-19 | 北京字节跳动网络技术有限公司 | 视频处理中对基于模型的整形的约束 |
AU2019201653A1 (en) * | 2019-03-11 | 2020-10-01 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding a tree of blocks of video samples |
CN114143548B (zh) * | 2019-03-11 | 2023-02-14 | 北京达佳互联信息技术有限公司 | 视频编解码中变换系数的编解码 |
EP4351135A3 (en) * | 2019-03-24 | 2024-07-03 | Huawei Technologies Co., Ltd. | Method and apparatus for chroma intra prediction in video coding |
JP7480170B2 (ja) | 2019-03-25 | 2024-05-09 | オッポ広東移動通信有限公司 | 画像予測方法、エンコーダー、デコーダー及び記憶媒体 |
EP3935836A4 (en) | 2019-04-12 | 2022-06-08 | Beijing Bytedance Network Technology Co., Ltd. | INTRA PREDICTION CALCULATION BASED ON A MATRIX |
CN118175314A (zh) | 2019-04-16 | 2024-06-11 | Lg电子株式会社 | 解码和编码设备及发送用于图像的数据的设备 |
CN113767623B (zh) * | 2019-04-16 | 2024-04-02 | 北京字节跳动网络技术有限公司 | 用于视频编解码的自适应环路滤波 |
US10764507B1 (en) | 2019-04-18 | 2020-09-01 | Kneron (Taiwan) Co., Ltd. | Image processing system capable of generating a snapshot image with high image quality by using a zero-shutter-lag snapshot operation |
WO2020211869A1 (en) * | 2019-04-18 | 2020-10-22 | Beijing Bytedance Network Technology Co., Ltd. | Parameter derivation in cross component mode |
CN117579841A (zh) | 2019-04-23 | 2024-02-20 | 北京字节跳动网络技术有限公司 | 降低跨分量依赖性的方法 |
JP7368496B2 (ja) * | 2019-04-26 | 2023-10-24 | 華為技術有限公司 | クロマ量子化パラメータのマッピング関数のシグナリングのための方法及び装置 |
CN113785566A (zh) * | 2019-04-27 | 2021-12-10 | 韦勒斯标准与技术协会公司 | 基于帧内预测处理视频信号的方法和设备 |
WO2020224629A1 (en) | 2019-05-08 | 2020-11-12 | Beijing Bytedance Network Technology Co., Ltd. | Conditions for applicability of cross-component coding |
CN110266316B (zh) * | 2019-05-08 | 2023-02-21 | 创新先进技术有限公司 | 一种数据压缩、解压方法、装置和设备 |
JP7265040B2 (ja) | 2019-05-13 | 2023-04-25 | 北京字節跳動網絡技術有限公司 | 変換スキップ・モードのブロック寸法設定 |
WO2020228718A1 (en) * | 2019-05-13 | 2020-11-19 | Beijing Bytedance Network Technology Co., Ltd. | Interaction between transform skip mode and other coding tools |
CN113841397A (zh) * | 2019-05-15 | 2021-12-24 | 现代自动车株式会社 | 影像编码和解码方法及装置 |
CN117354528A (zh) | 2019-05-22 | 2024-01-05 | 北京字节跳动网络技术有限公司 | 基于子块使用变换跳过模式 |
WO2020239017A1 (en) | 2019-05-31 | 2020-12-03 | Beijing Bytedance Network Technology Co., Ltd. | One-step downsampling process in matrix-based intra prediction |
WO2020244610A1 (en) * | 2019-06-05 | 2020-12-10 | Beijing Bytedance Network Technology Co., Ltd. | Context determination for matrix-based intra prediction |
US11212545B2 (en) | 2019-06-07 | 2021-12-28 | Tencent America LLC | Method and apparatus for improved implicit transform selection |
CN114208175B (zh) | 2019-06-11 | 2023-06-13 | Lg电子株式会社 | 基于色度量化参数数据的图像解码方法及其设备 |
CN114208169A (zh) | 2019-06-11 | 2022-03-18 | Lg电子株式会社 | 用于色度分量的图像解码方法及其装置 |
TW202106017A (zh) * | 2019-06-21 | 2021-02-01 | 法商內數位Vc控股法國公司 | 用於視訊編碼及解碼的單一索引量化矩陣設計 |
CN113994697A (zh) | 2019-06-22 | 2022-01-28 | 北京字节跳动网络技术有限公司 | 色度残差缩放的语法元素 |
CN116866574A (zh) * | 2019-06-25 | 2023-10-10 | 日本放送协会 | 帧内预测装置、图像解码装置及程序 |
US11368693B2 (en) * | 2019-07-01 | 2022-06-21 | Sony Group Corporation | Forward and inverse quantization for point cloud compression using look-up tables |
KR20220004767A (ko) | 2019-07-05 | 2022-01-11 | 엘지전자 주식회사 | 루마 맵핑 기반 비디오 또는 영상 코딩 |
KR102660738B1 (ko) | 2019-07-07 | 2024-04-26 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 크로마 잔차 스케일링의 시그널링 |
WO2021023258A1 (en) | 2019-08-06 | 2021-02-11 | Beijing Bytedance Network Technology Co., Ltd. | Video region partition based on color format |
CN117395420A (zh) | 2019-08-15 | 2024-01-12 | 字节跳动有限公司 | 用于调色板逸出符号的熵编解码 |
KR20220044278A (ko) | 2019-08-15 | 2022-04-07 | 바이트댄스 아이엔씨 | 상이한 분할 구조들을 갖는 팔레트 모드 |
EP4018668A4 (en) * | 2019-08-23 | 2023-06-21 | Samsung Electronics Co., Ltd. | INTRA PREDICTION METHOD AND DEVICE USING IT, ENCODING AND DECODE METHOD AND DEVICE USING IT BASED ON INTRA PREDICTION |
CN114270842A (zh) * | 2019-08-27 | 2022-04-01 | 现代自动车株式会社 | 利用差分编码的视频编码和解码 |
EP4008106A4 (en) | 2019-09-02 | 2022-11-09 | Beijing Bytedance Network Technology Co., Ltd. | PARTITION OF A VIDEO ZONE ACCORDING TO A COLOR FORMAT |
WO2021051044A1 (en) | 2019-09-14 | 2021-03-18 | Bytedance Inc. | Quantization parameter offset for chroma deblocking filtering |
JP7232160B2 (ja) * | 2019-09-19 | 2023-03-02 | Tvs Regza株式会社 | 画質回路、映像処理装置および信号特徴検出方法 |
JP2022548737A (ja) * | 2019-09-19 | 2022-11-21 | バイトダンス インコーポレイテッド | パレット・モードのための量子化パラメータ導出 |
MX2022003122A (es) | 2019-09-21 | 2022-04-06 | Beijing Bytedance Network Tech Co Ltd | Modo intra basado para croma de restriccion de tama?o. |
CN114667734A (zh) * | 2019-09-23 | 2022-06-24 | 阿里巴巴集团控股有限公司 | 通过重采样执行运动补偿插值的滤波器 |
CN114424567B (zh) * | 2019-09-24 | 2023-07-07 | 华为技术有限公司 | 使用基于矩阵的帧内预测进行组合的帧间-帧内预测的方法和装置 |
WO2021072177A1 (en) | 2019-10-09 | 2021-04-15 | Bytedance Inc. | Cross-component adaptive loop filtering in video coding |
JP2022552338A (ja) | 2019-10-14 | 2022-12-15 | バイトダンス インコーポレイテッド | クロマ残差の共同コーディング及びビデオ処理におけるフィルタリング |
CN114762352A (zh) * | 2019-11-27 | 2022-07-15 | 北京达佳互联信息技术有限公司 | 用于视频编解码的去块滤波 |
EP4055827A4 (en) | 2019-12-09 | 2023-01-18 | ByteDance Inc. | USING QUANTIFICATION GROUPS IN VIDEO CODING |
CA3129687A1 (en) * | 2019-12-24 | 2021-07-01 | Telefonaktiebolaget Lm Ericsson (Publ) | Virtual boundary processing for adaptive loop filtering |
KR102558336B1 (ko) * | 2019-12-30 | 2023-07-20 | 베이징 다지아 인터넷 인포메이션 테크놀로지 컴퍼니 리미티드 | 비디오 데이터의 크로마 및 루마 성분의 교차 성분 결정 |
CN114902657A (zh) | 2019-12-31 | 2022-08-12 | 字节跳动有限公司 | 视频编解码中的自适应颜色变换 |
US11197001B2 (en) * | 2020-02-05 | 2021-12-07 | Tencent America LLC | Method and apparatus for interactions between decoder-side intra mode derivation and adaptive intra prediction modes |
CN116193125B (zh) * | 2020-04-30 | 2024-07-23 | 北京达佳互联信息技术有限公司 | 用于针对视频编解码的预测相关残差缩放的方法和设备 |
GB2599433A (en) * | 2020-10-02 | 2022-04-06 | Sony Group Corp | Data encoding and decoding |
TWI776294B (zh) * | 2020-11-30 | 2022-09-01 | 中華電信股份有限公司 | 光框架交換機 |
CN113099229B (zh) * | 2021-02-22 | 2022-08-09 | 浙江大华技术股份有限公司 | 块划分方法、帧间预测方法、视频编码方法及相关装置 |
WO2023131211A1 (en) * | 2022-01-05 | 2023-07-13 | Beijing Bytedance Network Technology Co., Ltd. | Method, apparatus, and medium for video processing |
Family Cites Families (142)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4602285A (en) * | 1983-04-08 | 1986-07-22 | Ampex Corporation | System and method for transforming and filtering a video image |
GB9013217D0 (en) * | 1990-06-13 | 1990-08-01 | Indep Broadcasting Authority | Evaluation of detail in video images,and applications thereof |
US5294974A (en) * | 1992-07-24 | 1994-03-15 | Matsushita Electric Corporation Of America | High-definition video encoding system having color-sensitive quantization |
JPH07121687A (ja) | 1993-10-20 | 1995-05-12 | Sony Corp | 画像コーデック用プロセッサおよびアクセスパターン変換方法 |
KR100208375B1 (ko) * | 1995-12-27 | 1999-07-15 | 윤종용 | 동화상 부호화 방법 및 장치 |
US5737023A (en) * | 1996-02-05 | 1998-04-07 | International Business Machines Corporation | Hierarchical motion estimation for interlaced video |
EP1835762A3 (en) * | 1996-05-28 | 2007-10-03 | Matsushita Electric Industrial Co., Ltd. | decoding apparatus with intra prediction |
FR2752474B1 (fr) | 1996-08-14 | 1998-12-31 | Iona Donescu | Procede de transformation du signal image sur des supports de forme arbitraire |
KR100442229B1 (ko) * | 1996-09-13 | 2004-10-08 | 엘지전자 주식회사 | 간이형hdtv비디오디코더및디코딩방법 |
TW366648B (en) | 1996-10-24 | 1999-08-11 | Matsushita Electric Ind Co Ltd | Method of supplementing pixel signal coding device, and pixel signal decoding device |
WO1999016252A1 (en) * | 1997-09-19 | 1999-04-01 | Sony Electronics Inc. | Motion compensated digital video decoding with buffered picture storage memory map |
AR025609A1 (es) | 1999-09-13 | 2002-12-04 | Hoffmann La Roche | Formulaciones lipidas solidas |
US6647061B1 (en) * | 2000-06-09 | 2003-11-11 | General Instrument Corporation | Video size conversion and transcoding from MPEG-2 to MPEG-4 |
US6788338B1 (en) * | 2000-11-20 | 2004-09-07 | Petko Dimitrov Dinev | High resolution video camera apparatus having two image sensors and signal processing |
JP4254147B2 (ja) * | 2001-11-30 | 2009-04-15 | ソニー株式会社 | 画像情報符号化方法及び装置、並びにプログラム及び記録媒体 |
EP1833261A1 (en) * | 2002-01-18 | 2007-09-12 | Kabushiki Kaisha Toshiba | Video encoding method and apparatus and video decoding method and apparatus |
CN100448285C (zh) | 2002-12-18 | 2008-12-31 | 索尼株式会社 | 信息处理设备和信息处理方法 |
US8824553B2 (en) * | 2003-05-12 | 2014-09-02 | Google Inc. | Video compression method |
CN1778118A (zh) * | 2003-06-06 | 2006-05-24 | 联发科技股份有限公司 | 用于影像信号的格式转换及混合的装置与方法 |
EP1509045A3 (en) * | 2003-07-16 | 2006-08-09 | Samsung Electronics Co., Ltd. | Lossless image encoding/decoding method and apparatus using intercolor plane prediction |
JP4617644B2 (ja) | 2003-07-18 | 2011-01-26 | ソニー株式会社 | 符号化装置及び方法 |
US7193656B2 (en) * | 2003-08-14 | 2007-03-20 | Broadcom Corporation | Line address computer for providing coefficients to a chroma filter |
US7599438B2 (en) * | 2003-09-07 | 2009-10-06 | Microsoft Corporation | Motion vector block pattern coding and decoding |
US7620106B2 (en) | 2003-09-07 | 2009-11-17 | Microsoft Corporation | Joint coding and decoding of a reference field selection and differential motion vector information |
US7724827B2 (en) * | 2003-09-07 | 2010-05-25 | Microsoft Corporation | Multi-layer run level encoding and decoding |
US7317839B2 (en) * | 2003-09-07 | 2008-01-08 | Microsoft Corporation | Chroma motion vector derivation for interlaced forward-predicted fields |
EP2373033A3 (en) * | 2004-01-30 | 2011-11-30 | Panasonic Corporation | Picture coding and decoding method, apparatus, and program thereof |
KR100813958B1 (ko) | 2004-06-07 | 2008-03-14 | 세종대학교산학협력단 | 동영상의 무손실 인코딩 및 디코딩 방법, 그 장치 |
JP4763422B2 (ja) * | 2004-12-03 | 2011-08-31 | パナソニック株式会社 | イントラ予測装置 |
KR100843196B1 (ko) * | 2004-12-17 | 2008-07-02 | 삼성전자주식회사 | H.264/avc 비디오 디코더의 디블록킹 필터 |
KR101138392B1 (ko) * | 2004-12-30 | 2012-04-26 | 삼성전자주식회사 | 색차 성분의 상관관계를 이용한 컬러 영상의 부호화,복호화 방법 및 그 장치 |
EP1869568A4 (en) | 2005-03-23 | 2009-04-29 | Alcatel Lucent | SYSTEM AND METHOD FOR SEARCHING A DIGITAL MEDIA CONTENT FROM A BROADCAST LIST FROM A NETWORK NODE |
WO2006118383A1 (en) * | 2005-04-29 | 2006-11-09 | Samsung Electronics Co., Ltd. | Video coding method and apparatus supporting fast fine granular scalability |
KR101424969B1 (ko) * | 2005-07-15 | 2014-08-04 | 삼성전자주식회사 | 영상 복호화 방법 |
WO2007010690A1 (ja) * | 2005-07-22 | 2007-01-25 | Mitsubishi Electric Corporation | 画像符号化装置、画像復号装置、および画像符号化方法、画像復号方法、画像符号化プログラム、画像復号プログラム、ならびに画像符号化プログラムを記録したコンピュータ読み取り可能な記録媒体、画像復号プログラムを記録したコンピュータ読み取り可能な記録媒体 |
US7933337B2 (en) * | 2005-08-12 | 2011-04-26 | Microsoft Corporation | Prediction of transform coefficients for image compression |
US8199819B2 (en) * | 2005-10-21 | 2012-06-12 | Electronics And Telecommunications Research Institute | Apparatus and method for encoding and decoding moving picture using adaptive scanning |
JP5143120B2 (ja) * | 2006-03-23 | 2013-02-13 | サムスン エレクトロニクス カンパニー リミテッド | 画像の符号化方法及び装置、復号化方法及び装置 |
US7995649B2 (en) * | 2006-04-07 | 2011-08-09 | Microsoft Corporation | Quantization adjustment based on texture level |
US9001899B2 (en) | 2006-09-15 | 2015-04-07 | Freescale Semiconductor, Inc. | Video information processing system with selective chroma deblock filtering |
CA2665182A1 (en) | 2006-10-10 | 2008-04-17 | Nippon Telegraph And Telephone Corporation | Video encoding method and decoding method, apparatuses therefor, programs therefor, and storage media for recording the programs |
US8121195B2 (en) * | 2006-11-30 | 2012-02-21 | Lsi Corporation | Memory reduced H264/MPEG-4 AVC codec |
JP2008193627A (ja) * | 2007-01-12 | 2008-08-21 | Mitsubishi Electric Corp | 画像符号化装置、画像復号装置、および画像符号化方法、画像復号方法 |
JP5026092B2 (ja) * | 2007-01-12 | 2012-09-12 | 三菱電機株式会社 | 動画像復号装置および動画像復号方法 |
US8718139B2 (en) | 2007-01-12 | 2014-05-06 | Mitsubishi Electric Corporation | Image decoding device and image decoding method |
KR101539240B1 (ko) * | 2007-06-14 | 2015-07-30 | 삼성전자주식회사 | 영상 데이터의 엔트로피 부호화, 복호화 방법 및 장치 |
US8488668B2 (en) * | 2007-06-15 | 2013-07-16 | Qualcomm Incorporated | Adaptive coefficient scanning for video coding |
JP2009004920A (ja) * | 2007-06-19 | 2009-01-08 | Panasonic Corp | 画像符号化装置および画像符号化方法 |
US8422803B2 (en) * | 2007-06-28 | 2013-04-16 | Mitsubishi Electric Corporation | Image encoding device, image decoding device, image encoding method and image decoding method |
US8265144B2 (en) * | 2007-06-30 | 2012-09-11 | Microsoft Corporation | Innovations in video decoder implementations |
TWI410139B (zh) * | 2007-09-12 | 2013-09-21 | Sony Corp | Image processing apparatus and image processing method |
JP2009081579A (ja) * | 2007-09-25 | 2009-04-16 | Toshiba Corp | 動画像復号装置、および動画像復号方法 |
US8194741B2 (en) * | 2007-10-12 | 2012-06-05 | Broadcom Corporation | Method and system for processing B pictures with missing or invalid forward reference pictures |
US8953685B2 (en) * | 2007-12-10 | 2015-02-10 | Qualcomm Incorporated | Resource-adaptive video interpolation or extrapolation with motion level analysis |
JP2009206911A (ja) * | 2008-02-28 | 2009-09-10 | Mitsubishi Electric Corp | 動画像変換装置 |
US8804831B2 (en) * | 2008-04-10 | 2014-08-12 | Qualcomm Incorporated | Offsets at sub-pixel resolution |
KR101493905B1 (ko) * | 2008-08-12 | 2015-03-02 | 삼성전자 주식회사 | 영상처리장치 및 영상처리방법 |
EP2157799A1 (en) * | 2008-08-18 | 2010-02-24 | Panasonic Corporation | Interpolation filter with local adaptation based on block edges in the reference frame |
JP4952685B2 (ja) | 2008-08-26 | 2012-06-13 | 株式会社Jvcケンウッド | 映像信号符号化装置 |
US8548041B2 (en) * | 2008-09-25 | 2013-10-01 | Mediatek Inc. | Adaptive filter |
US8483285B2 (en) * | 2008-10-03 | 2013-07-09 | Qualcomm Incorporated | Video coding using transforms bigger than 4×4 and 8×8 |
US9078007B2 (en) * | 2008-10-03 | 2015-07-07 | Qualcomm Incorporated | Digital video coding with interpolation filters and offsets |
US9055293B2 (en) * | 2008-10-15 | 2015-06-09 | France Telecom | Prediction of an image by compensation during forward movement |
EP2187647A1 (en) * | 2008-11-12 | 2010-05-19 | Sony Corporation | Method and device for approximating a DC coefficient of a block of pixels of a frame |
CN101742328B (zh) * | 2008-11-14 | 2013-03-27 | 北京中星微电子有限公司 | 图像残差矩阵整数变换方法及装置、反变换方法及装置 |
US8578272B2 (en) | 2008-12-31 | 2013-11-05 | Apple Inc. | Real-time or near real-time streaming |
TW201028018A (en) | 2009-01-07 | 2010-07-16 | Ind Tech Res Inst | Encoder, decoder, encoding method and decoding method |
US20100178038A1 (en) * | 2009-01-12 | 2010-07-15 | Mediatek Inc. | Video player |
JP2010177809A (ja) * | 2009-01-27 | 2010-08-12 | Toshiba Corp | 動画像符号化装置および動画像復号装置 |
JP5502336B2 (ja) * | 2009-02-06 | 2014-05-28 | パナソニック株式会社 | 映像信号符号化装置及び、映像信号符号化方法 |
WO2010113227A1 (ja) | 2009-03-31 | 2010-10-07 | パナソニック株式会社 | 画像復号装置 |
EP2237557A1 (en) * | 2009-04-03 | 2010-10-06 | Panasonic Corporation | Coding for filter coefficients |
JP5158003B2 (ja) * | 2009-04-14 | 2013-03-06 | ソニー株式会社 | 画像符号化装置と画像符号化方法およびコンピュータ・プログラム |
JP5169978B2 (ja) * | 2009-04-24 | 2013-03-27 | ソニー株式会社 | 画像処理装置および方法 |
US8761531B2 (en) * | 2009-07-09 | 2014-06-24 | Qualcomm Incorporated | Image data compression involving sub-sampling of luma and chroma values |
JP5234368B2 (ja) | 2009-09-30 | 2013-07-10 | ソニー株式会社 | 画像処理装置および方法 |
US8477845B2 (en) | 2009-10-16 | 2013-07-02 | Futurewei Technologies, Inc. | Predictive adaptive scan ordering for video coding |
TW201143448A (en) * | 2009-10-30 | 2011-12-01 | Panasonic Corp | Image encoding method, image decoding method, image encoding device and image decoding device |
EA021750B1 (ru) * | 2009-10-30 | 2015-08-31 | Панасоник Интеллекчуал Проперти Корпорэйшн оф Америка | Способ декодирования, декодирующее устройство, способ кодирования и кодирующее устройство |
JPWO2011061880A1 (ja) * | 2009-11-19 | 2013-04-04 | 三菱電機株式会社 | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 |
JP5488612B2 (ja) | 2009-12-28 | 2014-05-14 | 富士通株式会社 | 動画像符号化装置および動画像復号装置 |
TWI562600B (en) * | 2010-02-08 | 2016-12-11 | Nokia Technologies Oy | An apparatus, a method and a computer program for video coding |
US20110200108A1 (en) * | 2010-02-18 | 2011-08-18 | Qualcomm Incorporated | Chrominance high precision motion filtering for motion interpolation |
CN102164284A (zh) * | 2010-02-24 | 2011-08-24 | 富士通株式会社 | 视频解码方法和*** |
KR101503269B1 (ko) * | 2010-04-05 | 2015-03-17 | 삼성전자주식회사 | 영상 부호화 단위에 대한 인트라 예측 모드 결정 방법 및 장치, 및 영상 복호화 단위에 대한 인트라 예측 모드 결정 방법 및 장치 |
US8929440B2 (en) | 2010-04-09 | 2015-01-06 | Sony Corporation | QP adaptive coefficients scanning and application |
JP2011223303A (ja) * | 2010-04-09 | 2011-11-04 | Sony Corp | 画像符号化装置と画像符号化方法および画像復号化装置と画像復号化方法 |
CN102860009A (zh) * | 2010-04-13 | 2013-01-02 | 松下电器产业株式会社 | 编码失真除去方法、编码方法、解码方法、编码失真除去装置、编码装置、及解码装置 |
CN102236502A (zh) | 2010-04-21 | 2011-11-09 | 上海三旗通信科技有限公司 | 一种移动终端压力触控手势识别的人机交互方式 |
US20110317757A1 (en) * | 2010-06-25 | 2011-12-29 | Qualcomm Incorporated | Intra prediction mode signaling for finer spatial prediction directions |
US9661338B2 (en) * | 2010-07-09 | 2017-05-23 | Qualcomm Incorporated | Coding syntax elements for adaptive scans of transform coefficients for video coding |
CA3011241C (en) * | 2010-07-20 | 2019-09-10 | Ntt Docomo, Inc. | Video prediction encoding and decoding for partitioned regions while determining whether or not to use motion information from neighboring regions |
KR20180039757A (ko) * | 2010-08-17 | 2018-04-18 | 엠앤케이홀딩스 주식회사 | 영상 복호화 장치 |
KR101719448B1 (ko) | 2010-09-27 | 2017-03-23 | 엘지전자 주식회사 | 블록 분할 방법 및 복호화 장치 |
CN102447895B (zh) | 2010-09-30 | 2013-10-02 | 华为技术有限公司 | 扫描方法及装置、反扫描方法及装置 |
US8885704B2 (en) * | 2010-10-01 | 2014-11-11 | Qualcomm Incorporated | Coding prediction modes in video coding |
CN101938657B (zh) * | 2010-10-07 | 2012-07-04 | 西安电子科技大学 | 高效视频编码中编码单元自适应划分方法 |
US20120134425A1 (en) * | 2010-11-29 | 2012-05-31 | Faouzi Kossentini | Method and System for Adaptive Interpolation in Digital Video Coding |
KR102555352B1 (ko) * | 2010-12-08 | 2023-07-13 | 엘지전자 주식회사 | 인트라 예측 방법과 이를 이용한 부호화 장치 및 복호화 장치 |
JP5741076B2 (ja) | 2010-12-09 | 2015-07-01 | ソニー株式会社 | 画像処理装置及び画像処理方法 |
US10045046B2 (en) * | 2010-12-10 | 2018-08-07 | Qualcomm Incorporated | Adaptive support for interpolating values of sub-pixels for video coding |
US9049444B2 (en) * | 2010-12-22 | 2015-06-02 | Qualcomm Incorporated | Mode dependent scanning of coefficients of a block of video data |
US9172972B2 (en) * | 2011-01-05 | 2015-10-27 | Qualcomm Incorporated | Low complexity interpolation filtering with adaptive tap size |
GB2487242A (en) * | 2011-01-17 | 2012-07-18 | Sony Corp | Interpolation Using Shear Transform |
JP2012186617A (ja) | 2011-01-31 | 2012-09-27 | Sony Corp | 画像処理装置および方法 |
JP5966932B2 (ja) | 2011-02-10 | 2016-08-10 | ソニー株式会社 | 画像処理装置、画像処理方法、プログラム及び媒体 |
WO2012113197A1 (zh) * | 2011-02-24 | 2012-08-30 | 中兴通讯股份有限公司 | 一种预测模式的编码或解码方法及装置 |
JP2012175615A (ja) | 2011-02-24 | 2012-09-10 | Sony Corp | 画像処理装置及び画像処理方法 |
US10499059B2 (en) * | 2011-03-08 | 2019-12-03 | Velos Media, Llc | Coding of transform coefficients for video coding |
US8494290B2 (en) * | 2011-05-05 | 2013-07-23 | Mitsubishi Electric Research Laboratories, Inc. | Method for coding pictures using hierarchical transform units |
US9602839B2 (en) * | 2011-06-15 | 2017-03-21 | Futurewei Technologies, Inc. | Mode dependent intra smoothing filter table mapping methods for non-square prediction units |
KR101753551B1 (ko) * | 2011-06-20 | 2017-07-03 | 가부시키가이샤 제이브이씨 켄우드 | 화상 부호화 장치, 화상 부호화 방법 및 화상 부호화 프로그램을 저장한 기록매체 |
JP5678814B2 (ja) * | 2011-06-20 | 2015-03-04 | 株式会社Jvcケンウッド | 画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに、送信装置、送信方法及び送信プログラム |
GB2492130A (en) * | 2011-06-22 | 2012-12-26 | Canon Kk | Processing Colour Information in an Image Comprising Colour Component Sample Prediction Being Based on Colour Sampling Format |
US20140104383A1 (en) * | 2011-06-22 | 2014-04-17 | Sony Corporation | Image processing device and method |
JP5990948B2 (ja) * | 2011-06-22 | 2016-09-14 | セイコーエプソン株式会社 | プロジェクター |
JP5614381B2 (ja) * | 2011-06-23 | 2014-10-29 | 株式会社Jvcケンウッド | 画像符号化装置、画像符号化方法、及び画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム |
CN103621087B (zh) | 2011-06-23 | 2016-12-07 | Jvc建伍株式会社 | 图像解码装置及图像解码方法 |
US9854275B2 (en) * | 2011-06-25 | 2017-12-26 | Qualcomm Incorporated | Quantization in video coding |
JP5907367B2 (ja) * | 2011-06-28 | 2016-04-26 | ソニー株式会社 | 画像処理装置および方法、プログラム、並びに記録媒体 |
US20130044811A1 (en) * | 2011-08-18 | 2013-02-21 | Hyung Joon Kim | Content-Based Adaptive Control of Intra-Prediction Modes in Video Encoding |
WO2013036845A2 (en) * | 2011-09-08 | 2013-03-14 | General Instrument Corporation | Methods and apparatus for quantization and dequantization of a rectangular block of coefficients |
US9787982B2 (en) * | 2011-09-12 | 2017-10-10 | Qualcomm Incorporated | Non-square transform units and prediction units in video coding |
US9762899B2 (en) * | 2011-10-04 | 2017-09-12 | Texas Instruments Incorporated | Virtual memory access bandwidth verification (VMBV) in video coding |
US9807401B2 (en) * | 2011-11-01 | 2017-10-31 | Qualcomm Incorporated | Transform unit partitioning for chroma components in video coding |
GB2496197A (en) | 2011-11-07 | 2013-05-08 | Sony Corp | Frequency Domain Video Data Reordering for Encoding |
GB201119180D0 (en) | 2011-11-07 | 2011-12-21 | Sony Corp | Data encoding and decoding |
GB2496201A (en) | 2011-11-07 | 2013-05-08 | Sony Corp | Context adaptive data encoding and decoding |
GB2496194A (en) | 2011-11-07 | 2013-05-08 | Sony Corp | Entropy encoding video data using reordering patterns |
BR112014004645B1 (pt) * | 2011-11-08 | 2022-04-26 | Kabushiki Kaisha Toshiba | Método de codificação de imagem e aparelho de codificação de imagem |
US9451252B2 (en) * | 2012-01-14 | 2016-09-20 | Qualcomm Incorporated | Coding parameter sets and NAL unit headers for video coding |
US9363516B2 (en) * | 2012-01-19 | 2016-06-07 | Qualcomm Incorporated | Deblocking chroma data for video coding |
US8581753B2 (en) * | 2012-01-19 | 2013-11-12 | Sharp Laboratories Of America, Inc. | Lossless coding technique for CABAC in HEVC |
JP5995448B2 (ja) * | 2012-01-19 | 2016-09-21 | シャープ株式会社 | 画像復号装置、および画像符号化装置 |
US9538200B2 (en) * | 2012-01-19 | 2017-01-03 | Qualcomm Incorporated | Signaling of deblocking filter parameters in video coding |
EP2805492B1 (en) * | 2012-01-19 | 2018-11-14 | VID SCALE, Inc. | System and method of video coding quantization and dynamic range control |
US9106936B2 (en) * | 2012-01-25 | 2015-08-11 | Altera Corporation | Raw format image data processing |
US9123278B2 (en) * | 2012-02-24 | 2015-09-01 | Apple Inc. | Performing inline chroma downsampling with reduced power consumption |
US9325991B2 (en) * | 2012-04-11 | 2016-04-26 | Qualcomm Incorporated | Motion vector rounding |
GB2501535A (en) * | 2012-04-26 | 2013-10-30 | Sony Corp | Chrominance Processing in High Efficiency Video Codecs |
US9253483B2 (en) * | 2012-09-25 | 2016-02-02 | Google Technology Holdings LLC | Signaling of scaling list |
US9667994B2 (en) * | 2012-10-01 | 2017-05-30 | Qualcomm Incorporated | Intra-coding for 4:2:2 sample format in video coding |
-
2012
- 2012-04-26 GB GB1207459.7A patent/GB2501535A/en not_active Withdrawn
- 2012-06-22 GB GB1211070.6A patent/GB2501549A/en not_active Withdrawn
- 2012-06-22 GB GB1211073.0A patent/GB2501551A/en not_active Withdrawn
- 2012-06-22 GB GB1211066.4A patent/GB2501546A/en not_active Withdrawn
- 2012-06-22 GB GB1211069.8A patent/GB2501548A/en not_active Withdrawn
- 2012-06-22 GB GB1211067.2A patent/GB2501547A/en not_active Withdrawn
- 2012-06-22 GB GB1211072.2A patent/GB2501550A/en not_active Withdrawn
- 2012-06-22 GB GB1211075.5A patent/GB2501553A/en not_active Withdrawn
- 2012-06-29 GB GB1211623.2A patent/GB2501555A/en not_active Withdrawn
- 2012-06-29 GB GB201211619A patent/GB2501554B/en active Active
- 2012-06-29 GB GB1211629.9A patent/GB2501557A/en not_active Withdrawn
- 2012-06-29 GB GB1211628.1A patent/GB2501556A/en not_active Withdrawn
- 2012-11-19 GB GB1220836.9A patent/GB2501566A/en not_active Withdrawn
-
2013
- 2013-04-08 JP JP2015507590A patent/JP2015518339A/ja active Pending
- 2013-04-08 WO PCT/GB2013/050903 patent/WO2013160656A2/en active Application Filing
- 2013-04-08 US US14/396,190 patent/US9948929B2/en active Active
- 2013-04-08 EP EP13721026.6A patent/EP2842321A2/en not_active Withdrawn
- 2013-04-08 CN CN201380022425.6A patent/CN104285445A/zh active Pending
- 2013-04-25 TW TW102114853A patent/TWI611689B/zh active
- 2013-04-25 TW TW106131037A patent/TWI677236B/zh active
- 2013-04-25 TW TW102114851A patent/TWI575942B/zh active
- 2013-04-25 TW TW108118597A patent/TWI711301B/zh active
- 2013-04-25 TW TW102114850A patent/TWI586152B/zh active
- 2013-04-26 WO PCT/GB2013/051078 patent/WO2013160700A1/en active Application Filing
- 2013-04-26 CN CN201810164769.5A patent/CN108134931B/zh active Active
- 2013-04-26 CA CA2870591A patent/CA2870591C/en active Active
- 2013-04-26 CN CN201380022421.8A patent/CN104272739B/zh active Active
- 2013-04-26 JP JP2015507601A patent/JP5986294B2/ja active Active
- 2013-04-26 AU AU2013254443A patent/AU2013254443A1/en not_active Abandoned
- 2013-04-26 MX MX2014012847A patent/MX343351B/es active IP Right Grant
- 2013-04-26 JP JP2015507602A patent/JP6050478B2/ja active Active
- 2013-04-26 US US14/394,834 patent/US10827169B2/en active Active
- 2013-04-26 CA CA3128787A patent/CA3128787C/en active Active
- 2013-04-26 CN CN201380022426.0A patent/CN104255030B/zh active Active
- 2013-04-26 CN CN201380022423.7A patent/CN104255029B/zh active Active
- 2013-04-26 US US14/396,979 patent/US9686547B2/en active Active
- 2013-04-26 WO PCT/GB2013/051076 patent/WO2013160699A1/en active Application Filing
- 2013-04-26 EP EP23184270.9A patent/EP4243420A3/en active Pending
- 2013-04-26 WO PCT/GB2013/051072 patent/WO2013160695A1/en active Application Filing
- 2013-04-26 JP JP2015507605A patent/JP5965054B2/ja active Active
- 2013-04-26 RU RU2014147451/08A patent/RU2603548C2/ru active
- 2013-04-26 EP EP23184271.7A patent/EP4243421A3/en active Pending
- 2013-04-26 AU AU2013254448A patent/AU2013254448B2/en active Active
- 2013-04-26 MX MX2014012565A patent/MX346235B/es active IP Right Grant
- 2013-04-26 CN CN201910234246.8A patent/CN110225337A/zh active Pending
- 2013-04-26 WO PCT/GB2013/051075 patent/WO2013160698A1/en active Application Filing
- 2013-04-26 BR BR112014026021-4A patent/BR112014026021B1/pt active IP Right Grant
- 2013-04-26 CN CN201380021815.1A patent/CN104247425B/zh active Active
- 2013-04-26 JP JP2015507603A patent/JP6328613B2/ja active Active
- 2013-04-26 KR KR1020177012287A patent/KR101840025B1/ko active IP Right Grant
- 2013-04-26 RU RU2017116180A patent/RU2751080C2/ru active
- 2013-04-26 CN CN201911312887.7A patent/CN110933409B/zh active Active
- 2013-04-26 KR KR1020177009416A patent/KR20170041288A/ko not_active Application Discontinuation
- 2013-04-26 WO PCT/GB2013/051070 patent/WO2013160693A2/en active Application Filing
- 2013-04-26 US US14/396,983 patent/US9693058B2/en active Active
- 2013-04-26 BR BR112014026035-4A patent/BR112014026035B1/pt active IP Right Grant
- 2013-04-26 AU AU2013254444A patent/AU2013254444B2/en active Active
- 2013-04-26 US US14/396,127 patent/US9826231B2/en active Active
- 2013-04-26 KR KR1020197017932A patent/KR102104400B1/ko active IP Right Grant
- 2013-04-26 CN CN201810353123.1A patent/CN108366257B/zh active Active
- 2013-04-26 CN CN201811158537.5A patent/CN109068135B/zh active Active
- 2013-04-26 EP EP13719164.9A patent/EP2842315B1/en active Active
- 2013-04-26 MX MX2014012846A patent/MX345237B/es active IP Right Grant
- 2013-04-26 EP EP13719166.4A patent/EP2842317A1/en not_active Ceased
- 2013-04-26 RU RU2014147445/08A patent/RU2599935C2/ru active
- 2013-04-26 WO PCT/GB2013/051074 patent/WO2013160697A1/en active Application Filing
- 2013-04-26 CN CN201911311674.2A patent/CN111182299B/zh active Active
- 2013-04-26 CN CN201710999406.9A patent/CN107734330B/zh active Active
- 2013-04-26 WO PCT/GB2013/051073 patent/WO2013160696A1/en active Application Filing
- 2013-04-26 KR KR1020147029912A patent/KR20150003219A/ko active Application Filing
- 2013-04-26 BR BR112014026024A patent/BR112014026024A8/pt not_active Application Discontinuation
- 2013-04-26 EP EP13719165.6A patent/EP2842316A1/en not_active Ceased
- 2013-04-26 CN CN201810162324.3A patent/CN108347604B/zh active Active
- 2013-04-26 KR KR1020147029919A patent/KR101734974B1/ko active IP Right Grant
- 2013-04-26 CA CA2870596A patent/CA2870596C/en active Active
- 2013-04-26 KR KR1020187007295A patent/KR101994597B1/ko active IP Right Grant
- 2013-04-26 EP EP13719163.1A patent/EP2842314B1/en active Active
- 2013-04-26 CN CN201380022424.1A patent/CN104247426A/zh active Pending
- 2013-04-26 JP JP2015507604A patent/JP6128707B2/ja active Active
- 2013-04-26 WO PCT/GB2013/051071 patent/WO2013160694A1/en active Application Filing
- 2013-04-26 CA CA2870602A patent/CA2870602C/en active Active
- 2013-04-26 EP EP18186999.1A patent/EP3442229A1/en not_active Withdrawn
- 2013-04-26 CA CA3028883A patent/CA3028883C/en active Active
- 2013-04-26 RU RU2014147453A patent/RU2619888C2/ru active
- 2013-04-26 CA CA2871556A patent/CA2871556C/en active Active
-
2014
- 2014-10-24 US US14/523,637 patent/US9686548B2/en active Active
- 2014-10-24 US US14/523,675 patent/US9674531B2/en active Active
-
2016
- 2016-06-22 AU AU2016204227A patent/AU2016204227B2/en active Active
- 2016-06-30 JP JP2016129527A patent/JP6325606B2/ja active Active
- 2016-11-24 JP JP2016227411A patent/JP6231647B2/ja active Active
-
2017
- 2017-06-05 US US15/614,226 patent/US10244232B2/en active Active
- 2017-06-14 US US15/623,059 patent/US10205941B2/en active Active
- 2017-06-26 US US15/632,970 patent/US10419750B2/en active Active
- 2017-10-19 JP JP2017202338A patent/JP6407389B2/ja active Active
- 2017-11-01 US US15/800,186 patent/US10531083B2/en active Active
-
2018
- 2018-01-18 US US15/874,737 patent/US10440358B2/en active Active
- 2018-03-29 US US15/940,084 patent/US10291909B2/en active Active
- 2018-04-12 JP JP2018077039A patent/JP6606794B2/ja active Active
- 2018-04-12 JP JP2018077038A patent/JP6503492B2/ja active Active
- 2018-08-17 AU AU2018217304A patent/AU2018217304B2/en active Active
-
2019
- 2019-02-11 US US16/272,644 patent/US11252402B2/en active Active
- 2019-03-22 US US16/362,276 patent/US10499052B2/en active Active
- 2019-04-26 US US16/395,908 patent/US10616572B2/en active Active
- 2019-09-16 US US16/572,235 patent/US10674144B2/en active Active
- 2019-12-02 US US16/700,775 patent/US11109019B2/en active Active
- 2019-12-23 US US16/725,966 patent/US10841572B2/en active Active
-
2022
- 2022-01-20 US US17/580,261 patent/US11770519B2/en active Active
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BR112014026035A2 (pt) | métodos e aparelhos de decodificação e codificação de vídeo, software de computador, meio de armazenamento não transitório, sinal de dados, e, aparelhos de captura, exibição, transmissão, recepção e/ou armazenamento de vídeo | |
EP2858367A2 (en) | Quantisation parameter selection for different colour sampling formats |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B06F | Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette] | ||
B06U | Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette] | ||
B15K | Others concerning applications: alteration of classification |
Free format text: AS CLASSIFICACOES ANTERIORES ERAM: H04N 7/26 , H04N 7/36 Ipc: H04N 19/176 (2014.01), H04N 19/186 (2014.01), H04N |
|
B350 | Update of information on the portal [chapter 15.35 patent gazette] | ||
B09A | Decision: intention to grant [chapter 9.1 patent gazette] | ||
B16A | Patent or certificate of addition of invention granted [chapter 16.1 patent gazette] |
Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 26/04/2013, OBSERVADAS AS CONDICOES LEGAIS |