ES2546514T3 - Aparato de codificación de imágenes - Google Patents

Aparato de codificación de imágenes Download PDF

Info

Publication number
ES2546514T3
ES2546514T3 ES11772290.0T ES11772290T ES2546514T3 ES 2546514 T3 ES2546514 T3 ES 2546514T3 ES 11772290 T ES11772290 T ES 11772290T ES 2546514 T3 ES2546514 T3 ES 2546514T3
Authority
ES
Spain
Prior art keywords
block
transform
intra prediction
prediction mode
coefficients
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES11772290.0T
Other languages
English (en)
Inventor
Soo Mi Oh
Moonock Yang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
M&K Holdings Inc
Original Assignee
M&K Holdings Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=44834700&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=ES2546514(T3) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by M&K Holdings Inc filed Critical M&K Holdings Inc
Application granted granted Critical
Publication of ES2546514T3 publication Critical patent/ES2546514T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/109—Selection of coding mode or of prediction mode among a plurality of temporal 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
    • 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/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/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/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
    • H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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/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/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/18—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 set of transform coefficients
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96—Tree coding, e.g. quad-tree coding

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)
  • Magnetic Resonance Imaging Apparatus (AREA)

Abstract

Un aparato para codificar una imagen, comprendiendo el aparato: un determinador de modo de codificación (110) configurado para dividir una imagen de entrada en una pluralidad de unidades de codificación; un intra predictor (140) configurado para generar un bloque de predicción usando intra predicción; una unidad de transformada/cuantificación (120) configurada para transformar y cuantificar un bloque residual para generar un bloque de transformada cuantificado; una unidad de transformada/cuantificación inversa (160) configurada para cuantificar de forma inversa y transformar de forma inversa el bloque de transformada cuantificado; un filtro de desbloqueo (170) configurado para realizar un procedimiento de filtrado de desbloqueo para datos de imagen recibidos de la unidad de cuantificación/transformada inversa (160); y un codificador entrópico (130) configurado para codificar entrópicamente coeficientes de transformada cuantificados del bloque de transformada cuantificado, en el que los coeficientes de transformada cuantificados se dividen en una pluralidad de subbloques si se determina que un tamaño de un bloque de transformada es igual o mayor que 8x8 en una intra predicción, y en el que la pluralidad de subbloques se escanean y coeficientes diferentes a cero de cada subbloque se escanean de acuerdo con un patrón de escaneo, en el que dicho patrón de escaneo para escanear la pluralidad de subbloques y para escanear los coeficientes diferentes a cero de cada subbloque se determina por un modo de intra predicción del bloque de predicción para codificar entrópicamente los coeficientes escaneados diferentes a cero, en el que, cuando el modo de intra predicción es un modo de intra predicción horizontal, el patrón de escaneo es un modo de escaneo vertical.

Description

5
10
15
20
25
30
35
40
45
50
E11772290
01-09-2015
DESCRIPCIÓN
Aparato de codificación de imágenes
Campo técnico
La presente invención se refiere a un aparato de procesamiento de imágenes y a un procedimiento, más particularmente, a un aparato para reducir la cantidad de señales residuales de una imagen y codificar entrópicamente las señales residuales.
Antecedentes de la invención
Para transmitir de forma eficaz una señal de imagen en movimiento a una baja tasa de transmisión de datos, mientras que se mantiene una alta calidad de imagen, se han propuesto diversas tecnologías de compresión digital de imágenes en movimiento. Estas tecnologías de compresión de imágenes en movimiento incluyen H.261, Grupo de Expertos de Imágenes en Movimiento (MPEG)-2/H.262, H.263, MPEG-4, Advanced Video Coding (AVC)/H.264 etc. Las tecnologías de compresión incluyen un esquema de transformada de coseno discreta (DCT), un esquema de compensación de movimiento (MC), un esquema de cuantificación, un esquema de codificación entrópica etc.
Para la codificación de imágenes, cada imagen está dividida en una pluralidad de fragmentos, y cada fragmento está dividido en una pluralidad de bloques de codificación de un tamaño previamente determinado. Puesto que una imagen de un grado de alta definición (HD) o superior tiene muchas regiones planas, una compresión de imágenes se puede mejorar codificando la imagen con bloques de codificación que son más grandes que un macrobloque (MB).
Por tanto, son necesarios una técnica de predicción novedosa y cambios en la codificación de transformada, la codificación entrópica, la intra predicción, y la inter predicción, ya que el tamaño de la unidad de codificación aumenta para aumentar la relación de compresión de imágenes sin aumentar la complejidad de la compresión de imágenes.
Winken (Fraunhofer HHI) M et al: “Video coding technology proposal by Fraunhofer HHI”, 1a reunión JCT-VC; 15/4/2010 – 23/4/2010; Dresde; (Joint Collaborative Team on Video Coding de ISO/IEC JTC1/SC29/WG11 e ITUTSG.16), 16 de abril de 2010, proporciona una descripción de la propuesta de tecnología de codificación de vídeo por Fraunhofer HHI. El algoritmo propuesto se basa en el enfoque de codificación de vídeo híbrida usando una predicción temporal y espacial seguida por codificación por transformada de la codificación residual y entrópica.
Ugur (Nokia) K et al:“Description of video coding technology proposal by Tandberg, Nokia, Ericsson”, 1a reunión de JCT-VC; 15/4/2010. – 23/4/2010; Dresden; (Joint Collaborative Team on Video Coding de ISO/IEC JTC1/SC29/WG11 e ITU-T SG.16), n° JCTVC-A119, 19 de abril de 2010, presenta el modelo de prueba de Tandberg-Ericsson-Nokia (TENTM) que está diseñado para cumplir con los requisitos de las industrias móviles de videoconferencia y radiodifusión.
Wiegand T et al:“Overview of the H.264/AVC video coding standard”, IEEE Transactions on Circuits and Systems for Video Technology, IEEE Service Center, Piscataway, NJ, EEUU, vol. 13, n° 7, 1 de julio de 2003, páginas 560-576, se refiere a H.264/AVC, la norma de codificación de vídeo más novedosa del Grupo de Expertos de Codificación de Vídeo ITU-T y del Grupo de Expertos de Imágenes en Movimiento ISO/IEC. Los objetivos principales del esfuerzo de estandarización H.264/AVC han sido un rendimiento de compresión mejorado y la previsión de una representación de vídeo “compatible con la red” dirigida a aplicaciones “de conversación” (telefonía de vídeo) y “no de conversación” (almacenamiento, radiodifusión o transferencia continua).
Marta Karczewicz et al:“Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 JCTVC-A121” da a conocer un codificador y decodificador de vídeo basado en escaneo de coeficientes adaptivo dependiente del modo de predicción.
Por tanto, el objetivo de la invención es prever un aparato mejorado para codificar una imagen en movimiento.
Esto objetivo se consigue mediante el objeto de las reivindicaciones independientes.
Realizaciones preferidas están definidas por las reivindicaciones dependientes.
Divulgación
Problema técnico
La presente invención está dirigida a un aparato para codificar una imagen en movimiento, y más particularmente a un aparato para codificar de forma eficaz señales residuales transformadas de una imagen en movimiento teniendo un tamaño previamente determinado o superior.
10
15
20
25
30
35
40
45
50
E11772290
01-09-2015
Solución técnica
Un aspecto de la presente invención proporciona un aparato para codificar una imagen en movimiento que incluye: un determinador de modo de codificación configurado para dividir una imagen de entrada en unidades de codificación y determinar un modo de predicción de la unidad de codificación y un tamaño de un bloque de codificación predictiva de la unidad de codificación; una unidad de transformada/cuantificación configurada para transformar y cuantificar un bloque residual entre el bloque de codificación predictiva y un bloque de predicción generado a través de intra predicción o inter predicción; una unidad de cuantificación/transformada inversa configurada para cuantificar de forma inversa y transformar de forma inversa el bloque de transformada cuantificado en un dominio de frecuencia; un filtro de desbloqueo configurado para aplicar un procedimiento de filtración de desbloqueo a datos de imagen recibidos de la unidad de decodificación de cuantificación/transformada inversa; un generador de bloques de predicción configurado para generar el bloque de codificación predictiva; y un codificador entrópico configurado para codificar los coeficientes de transformada cuantificados a partir de la unidad de codificación/cuantificación de transformada, en el que, cuando un tamaño de un bloque de transformada es igual o más grande que un tamaño previamente determinado, el codificador entrópico divide los coeficientes de transformada cuantificados en una pluralidad de subconjuntos y escanea y codifica entrópicamente coeficientes de transformada cuantificados diferentes a cero de cada subconjunto.
Efectos ventajosos
La presente invención posibilita mejorar la eficacia de codificación reduciendo la cantidad de señales residuales de un bloque a codificar. Asimismo, al escanear de forma eficaz un coeficiente de transformada cuantificado diferente a 0 durante la codificación entrópica, el número de bits requerido para la codificación entrópica está minimizado de modo que se puede mejorar la eficacia de codificación.
Descripción de los dibujos
La figura 1 muestra una estructura de división de bloques de acuerdo con una realización ejemplar de la presente invención.
La figura 2 ilustra un procedimiento para determinar un modo de codificación de acuerdo con la presente invención.
La figura 3 ilustra un aparato para codificar una imagen en movimiento de acuerdo con la presente invención.
Las figuras 4 a 6 son diagramas que ilustran un procedimiento de división de bloques adaptativo de acuerdo con la presente invención.
La figura 7 es un diagrama que ilustra un procedimiento de codificar una señal residual.
Modo de la invención
A continuación en el presente documento, se describirán en detalle diversas realizaciones de la presente invención con referencia a los dibujos adjuntos. Sin embargo, la presente invención no está limitada a las realizaciones ejemplares dadas a conocer a continuación, sino que se puede implementar en diversos tipos. Por tanto, son posibles muchas otras modificaciones y variaciones de la presente invención y se debe entender que, dentro del alcance del concepto dado a conocer, la presente invención se puede practicar de forma diferente de lo que se ha descrito específicamente.
Para la codificación de imágenes, cada imagen está dividida en una pluralidad de fragmentos, y cada fragmento está dividido en una pluralidad de unidades de codificación de un tamaño previamente determinado. Puesto que una imagen de un grado de alta definición (HD) o superior tiene muchas regiones planas, una relación de compresión de imágenes se puede mejorar codificando la imagen con unidades de codificación que son más grandes que un macrobloque (MB) que tiene un tamaño de 16x16.
La unidad de codificación de acuerdo con la presente invención puede ser un bloque que tiene un tamaño de 32x32
o un bloque que tiene un tamaño de 64x64 y unos MB que tienen el tamaño de 16x16. Asimismo, un bloque que tiene un tamaño de 8x8 o inferior puede ser la unidad de codificación. Para mayor comodidad, a la unidad de codificación más grande se refiere como un supermacrobloque (SMB). Un tamaño del SMB se puede determinar de acuerdo con información que indica un tamaño de la unidad de codificación más pequeña e información de profundidad. La información de profundidad indica una diferencia entre un tamaño del SMB y un tamaño de la unidad de codificación más pequeña.
Por tanto, la unidad de codificación que se usará para codificar todas las imágenes de una secuencia de imágenes puede ser un SMB o un subbloque del SMB. Los tamaños permisibles de las unidades de codificación se pueden designar por defecto o en una cabecera de secuencias. Cuando los tamaños permisibles de unidades de codificación se designan en la cabecera de secuencias, los tamaños permisibles de las unidades de codificación se designan de acuerdo con el tamaño de la unidad de codificación más pequeña y la información de profundidad.
10
15
20
25
30
35
40
45
50
55
E11772290
01-09-2015
Cada imagen o fragmento está dividido en una pluralidad de unidades SMB. Cada SMB o subbloque del SMB está intracodificado o intercodificado y decodificado.
Para posibilitar una decodificación precisa de la unidad de codificación (es decir, un SMB o un subbloque del SMB), un codificador debería añadir información de tamaño en un bloque de codificación predictiva de la unidad de codificación e información de modo de predicción que indica que la unidad de codificación se ha codificado en el modo de intra predicción o en el modo de inter predicción en un flujo de bits. Para este fin, la información de modo de predicción y la información que indica el tamaño del bloque de codificación predictiva deberían estar incluidas en el flujo de bits de la unidad de codificación. El modo de predicción varía de acuerdo con un tipo del fragmento.
Cuando el tipo del fragmento es intra (I), todos los bloques de codificación predictiva en el fragmento están intrapredictos, y un tipo de predicción de un bloque de codificación predictiva se puede determinar de acuerdo con un tamaño del bloque de codificación predictiva. Sin embargo, cuando el tipo de fragmento es una predicción unidireccional (P) o una predicción bidireccional (B), un tipo de predicción de un bloque de codificación predictiva se puede determinar de acuerdo con información de modo de predicción y un tamaño del bloque de codificación predictiva. Por tanto, es preferible generar el tipo de predicción del bloque de codificación predictiva basándose en el tipo de fragmento, la información de modo de predicción y la información que indica el tamaño del bloque de codificación predictiva, e insertar el tipo de predicción generado en una cabecera de la unidad de codificación.
Cuando el bloque de codificación predictiva está intracodificado, la información de modo de intra predicción usada para la intra predicción así como el tipo de predicción se tienen que transmitir a un decodificador.
Cuando el bloque de codificación predictiva está intercodificado, el bloque de codificación predictiva se codifica por cualquiera de una predicción unidireccional y una predicción bidireccional. En el caso de una predicción unidireccional, un flujo de bits debería incluir información acerca de una imagen de referencia e información de vector de movimiento usada para la predicción así como un tipo de predicción del bloque de codificación predictiva para la predicción unidireccional. En el caso de la predicción bidireccional, una cabecera del bloque de codificación predictiva debería incluir información acerca de dos imágenes de referencia e información de vector de movimiento usada para la predicción bidireccional así como un tipo de predicción del bloque para la predicción bidireccional. La información de vector de movimiento puede incluir información que indique un vector de movimiento residual y un predictor de vector de movimiento.
La figura 1 muestra una estructura de división jerárquica que ilustra bloques de codificación predictiva permisibles para un SMB que tiene un tamaño de 64x64 de acuerdo con una realización ejemplar de la presente invención.
Cuando un SMB se usa como una unidad de codificación, es preferible tener cuatro etapas de división de subbloques, tal como se muestra en la figura 1, aunque la división de bloques no está limitada a las cuatro etapas de división de subbloques. Cuando existen cuatro etapas de división de subbloques, se puede definir un total de 13 tipos de bloques predictivos (64x64, 64x32, 32x64, 32x32, 32x16, 16x32, 16x16, 16x8, 8x16, 8x8, 8x4, 4x8 y 4x4).
En este caso, puede que no existan datos a transmitir para bloques de codificación interpredictiva que tienen un tamaño mayor que un MB. Por tanto, es preferible añadir de nuevo un modo MB64_SKIP cuando un tamaño de un bloque de codificación predictiva es 64x64, y un modo MB32_SKIP cuando el tamaño del bloque de codificación predictiva es 32x32. Para transmitir la información de modo al decodificador se puede usar una etiqueta MB64_SKIP_flag o una etiqueta MB32_SKIP_flag. Cuando valores de estas etiquetas son 1, no existen datos de transmisión del bloque de codificación predictiva correspondiente.
Mientras tanto, cuando no se codifican varios SMB sucesivos, una etiqueta MB64_SKIP_flag sólo se puede insertar en un primer SMB, y se puede omitir en los siguientes SMB. En este caso, el número de los SMB que se omiten de forma sucesiva se puede añadir al fragmento o al primer SMB. Específicamente, cuando la pluralidad de SMB sucesivos no se codifican, una etiqueta SMB_SKIP_flag del primer SMB se establece en 1, y también se puede aplicar a varios SMB sucesivos en común. En este caso, información correspondiente al número de SMB que no se codifican sucesivamente (por ejemplo, un número SMB_SKIP_number) se puede añadir al fragmento.
Cuando una unidad de codificación tiene un tamaño de 32x32, un bloque que tiene un tamaño de 32x32, 32x16 o 16x32 adicionalmente a un bloque existente que tiene un tamaño de 16x16, 16x8, 8x16, 8x8, 8x4, 4x8 o 4x4 se puede usar como un bloque de codificación predictiva.
En un modo de inter predicción, un tipo de predicción (Mb32_type) de una unidad de codificación puede indicar una partición de 32x32 cuando el tipo de predicción es 0, una partición de 32x16 cuando el tipo de predicción es 1, una partición de 16x32 cuando el tipo de predicción es 2 y una partición de 16x16 cuando el tipo de predicción es 3.
Cuando una unidad de codificación se divide en cuatro unidades de subcodificación, las cuatro unidades de subcodificación se codifican y se transmiten en un orden de escaneo por tramas. En este caso, se puede transmitir un parámetro de cuantificación para cada unidad de codificación y se puede transmitir sólo una vez en una cabecera de una unidad de supercodificación cuando el mismo parámetro de cuantificación se aplica a todas las unidades de subcodificación. Sin embargo, cuando un parámetro de cuantificación se tiene que cambiar en una unidad de subcodificación, sólo se puede transmitir un valor de diferencia con respecto a un parámetro de cuantificación de la
10
15
20
25
30
35
40
45
50
55
E11772290
01-09-2015
unidad de codificación de capa superior o de la unidad de codificación anterior del mismo nivel.
Cada unidad de subcodificación se puede dividir usando un procedimiento de árbol cuaternario, y un patrón de bloque codificado (cbp, coded block pattern) y un coeficiente residual también se pueden transmitir usando el procedimiento de árbol cuaternario. Cuando se usa un cbp de 1 bit, un valor cbp de 1 puede indicar que la unidad de codificación tiene al menos un coeficiente diferente a 0, y un valor cbp de 0 puede indicar que todos los coeficientes son 0.
La figura 2 ilustra un procedimiento para determinar un modo de codificación cuando un tamaño de un SMB es 64x64 de acuerdo con la presente invención.
Tal como se ilustra en la figura 2, cuando un SMB es un bloque de 64x64, un codificador determina si es posible o no omitir el bloque de 64x64, y determina un modo SKIP como un modo de codificación cuando es posible omitir el bloque de 64x64. En este momento, una etiqueta mb64_skip_flag se debería transmitir al decodificador. Cuando el bloque de 64x64 tiene datos que se tienen que codificar, pero no está dividido en bloques de 32x32, el tamaño de codificación del SMB, que es de 64x64, 64x32 y 32x64 e información acerca de si el SMB está intracodificado o intercodificado, se insertan en una cabecera SMB, y se genera un bloque de datos SMB usando datos codificados.
Cuando el bloque de 64x64 tiene los datos que se tienen que codificar y se divide en bloques de 32x32, se determina de manera similar si existen datos que se tienen que codificar en los bloques de 32x32 correspondientes. Cuando no existen datos que se tienen que codificar en los bloques de 32x32 correspondientes, el modo SKIP se determina como el modo de bloques de 32x32, y se transmite una etiqueta mb32_skip_flag al decodificador.
Sin embargo, cuando el bloque de 32x32 tiene datos que se tienen que codificar, pero no está dividido en bloques de 16x16, el tamaño de codificación del bloque de 32x32, que es uno de 32x32, 32x16 y 16x32, e información acerca de si los bloques de 32x32 están intracodificados o intercodificados, se insertan en cabeceras de los bloques de 32x32 y se genera un bloque de datos usando datos codificados.
Cuando el bloque de 32x32 tiene datos que se tienen que codificar y se divide en bloques de 16x16, se determina si existen datos que se tienen que codificar en los bloques de 16x16 correspondientes. Cuando no existen datos que se tienen que codificar en los bloques de 16x16 correspondientes, el modo SKIP se determina como el modo de bloques de 16x16 y se transmite una etiqueta mb16_skip_flag al decodificador. Por otro lado, cuando existen datos que se tienen que codificar en los bloques de 16x16 correspondientes, el tamaño de codificación del bloque de 16x16, que es uno de 16x16, 16x8 y 8x16, e información acerca de si el bloque de 16x16 está intracodificado o intercodificado, se insertan en una cabecera del bloque de 16x16 y se genera un bloque de datos usando datos codificados.
Cuando se usan bloques que tienen tal variedad de tamaños, la información de tamaño de bloque puede variar de acuerdo con cada nivel de secuencia, nivel de imagen, nivel de fragmento, SMB o unidad de subcodificación del SMB.
La figura 3 ilustra un aparato para codificar una imagen en movimiento de acuerdo con la presente invención.
Con respecto a la figura 3, un aparato para codificar una imagen en movimiento de acuerdo con la presente invención incluye un determinador de modo de codificación 110, una unidad de transformada/cuantificación 120, un codificador entrópico 130, un intra predictor 140, un compensador de movimiento 150, un estimador de movimiento 155, una unidad de cuantificación/transformada inversa 160, un filtro de desbloqueo 170, una memoria de imágenes 180, un sumador y un sustractor.
El determinador de modo de codificación 110 analiza una señal de vídeo de entrada para dividir una imagen en unidades de codificación, y determina un tamaño de un bloque de codificación predictiva y un modo de predicción para cada unidad de codificación. Asimismo, el determinador de modo de codificación 110 envía al sustractor 180 el bloque de codificación predictiva correspondiente al tamaño determinado.
La unidad de transformada/cuantificación 120 determina un tamaño de un bloque de transformada para transformar una señal residual recibida del sustractor. El tamaño de un bloque de transformada puede ser igual o menor que aquél del bloque de codificación predictiva, pero puede estar fijado de diferente manera en un modo inter. Dicho de otro modo, el tamaño del bloque de transformada puede ser mayor que aquél del bloque de codificación predictiva en el modo inter. En este caso, la unidad de transformada/cuantificación recibe múltiples bloques residuales del sustractor 180 y genera un bloque de transformada que consiste en los múltiples bloques residuales. Un tamaño del bloque de transformada es igual o menor que aquél de la unidad de codificación. La unidad de transformada/cuantificación realiza una transformada de coseno discreta bidimensional (2D) (DCT) en el bloque de transformada para generar coeficientes de transformada. La DCT puede ser una DCT entera.
Asimismo, la unidad de transformada/cuantificación 120 determina un tamaño de etapa de cuantificación usado para cuantificar los coeficientes de transformada, y cuantifica los coeficientes de transformada usando una matriz de cuantificación determinada de acuerdo con el tamaño de etapa de cuantificación determinado y un modo de codificación.
10
15
20
25
30
35
40
45
50
E11772290
01-09-2015
La unidad de cuantificación/transformada inversa 160 cuantifica de forma inversa y transforma de forma inversa los coeficientes de cuantificación cuantificados por la unidad de codificación/cuantificación de transformada 120, restableciendo de este modo un bloque residual en el dominio espacial de un bloque residual transformado en el dominio de frecuencia.
El filtro de desbloqueo 160 recibe datos de imagen que se cuantifican de forma inversa y se transforman de forma inversa de la unidad de cuantificación/transformada inversa 141 y realiza un procedimiento de filtrado para eliminar un efecto de bloqueo. El procedimiento de filtrado de desbloqueo se puede aplicar a un límite entre bloques de codificación predictiva y entre bloques de transformada. El límite es un borde de una cuadrícula que tiene un tamaño previamente determinado o más y el tamaño previamente determinado puede ser de 8x8. El procedimiento de filtrado de desbloqueo incluye una etapa de determinar un límite a filtrar, una etapa de determinar una intensidad de filtrado de límite a aplicar al límite, una etapa de determinar si se aplica o no un filtro de desbloqueo, y una etapa de seleccionar un filtro a aplicar al límite cuando se determina aplicar el filtro de desbloqueo.
Si se aplica o no el filtro de desbloqueo se determina de acuerdo con i) si la intensidad de filtrado de límite es o no mayor que 0 e ii) si un valor que indica la diferencia entre píxeles de límite del bloque P y del bloque Q es o no menor que un primer valor de referencia determinado de acuerdo con un parámetro de cuantificación.
Pueden existir dos o más filtros. Cuando un valor absoluto de una diferencia entre dos píxeles adyacentes al límite de bloque es igual o mayor que un segundo valor de referencia, se selecciona un filtro débil. El segundo valor de referencia se determina mediante el parámetro de cuantificación y la intensidad de filtrado de límite.
La memoria de imágenes 180 recibe una imagen filtrada del filtro de desbloqueo 160, almacena la imagen en unidades de imagen. La imagen puede ser una imagen de una trama o una imagen de un campo. La memoria de imágenes 180 tiene una memoria intermedia (no mostrada) que es capaz de almacenar una pluralidad de imágenes.
El estimador de movimiento 155 realiza una estimación de movimiento usando al menos una imagen de referencia almacenada en la memoria de imágenes 180, y emite un índice de imagen de referencia que representa la imagen de referencia y un vector de movimiento.
El compensador de movimiento 150 extrae un bloque de predicción correspondiente a un bloque a codificar de la imagen de referencia usada para la estimación de movimiento entre una pluralidad de imágenes de referencia almacenadas en la memoria de imágenes 150 de acuerdo con el índice de imagen de referencia y la entrada de vector de movimiento del estimador de movimiento 155 y emite el bloque de predicción extraído.
El intra predictor 140 realiza intra predicción usando valores de píxeles reconstruidos en la misma imagen. El intra predictor 140 recibe un bloque corriente a codificar de forma predictiva, selecciona uno de un número previamente determinado de modos de intra predicción de acuerdo con un tamaño del bloque corriente y realiza una intra predicción.
El codificador entrópico 130 codifica entrópicamente los coeficientes de cuantificación cuantificados por la unidad de transformada/cuantificación 120, información de movimiento generada por el estimador de movimiento 155, y así sucesivamente. Los coeficientes de transformada cuantificados se convierten en información de transformada cuantificada de forma unidimensional (1D) mediante un procedimiento de escaneo previamente determinado y se codifican entrópicamente.
Un procedimiento de intra predicción se describirá a continuación con referencia a la figura 3.
En primer lugar, el inter predictor 140 recibe información de posición y tamaño acerca de un bloque de codificación a codificar del determinador de modo de codificación 110.
A continuación, el inter predictor 140 recibe píxeles de referencia válidos para determinar un modo de intra predicción del bloque de codificación predictiva corriente de la memoria de imágenes 180. Los píxeles de referencia ya han sido codificados y restaurados, y son adyacentes al bloque de codificación predictiva corriente (a continuación en el presente documento se hace referencia al mismo como bloque corriente). Cuando el bloque corriente se coloca en un límite superior de la imagen corriente, píxeles adyacentes al lado superior del bloque corriente no se definen. Cuando el bloque corriente se coloca en un límite izquierdo de la imagen corriente, píxeles adyacentes al lado izquierdo del bloque corriente no se definen. Asimismo, cuando el bloque corriente se coloca en los límites superior o izquierdo del fragmento, píxeles adyacentes a los lados superior o izquierdo no se definen.
Cuando no existen píxeles adyacentes al lado izquierdo o superior del bloque corriente o no existen píxeles que se han codificado previamente y restaurado, tal como se mencionó anteriormente, se puede determinar un modo de intra predicción del bloque corriente usando sólo píxeles válidos.
Sin embargo, los píxeles de referencia inválidos se pueden generar usando píxeles adyacentes al bloque corriente o píxel disponible. Por ejemplo, cuando píxeles de un bloque superior no son válidos, píxeles en el lado superior se pueden generar usando uno o más píxeles de referencia disponibles en el lado izquierdo.
10
15
20
25
30
35
40
45
50
55
E11772290
01-09-2015
Mientras tanto, incluso cuando existen píxeles en los lados superior o izquierdo del bloque corriente, los píxeles se pueden determinar como píxeles inválidos de acuerdo con un modo de codificación de un bloque al que pertenecen los píxeles. Por ejemplo, cuando un bloque, al que pertenecen píxeles adyacentes al lado superior del bloque corriente, se ha intercodificado y restaurado, los píxeles se pueden determinar como píxeles inválidos. En este caso se pueden generar píxeles de referencia usando píxeles de referencia de un bloque que tiene un modo intra.
A continuación, el intra predictor 140 determina el modo de intra predicción del bloque corriente usando los píxeles de referencia. El número de modos de intra predicción depende de un tamaño del bloque.
De acuerdo con el tamaño del bloque están permitidos 33, 16 o 2 modos direccionales y al menos un modo no direccional. El modo no direccional puede ser un modo de corriente continua (DC) o un modo plano.
Diferentes números de modos de intra predicción se pueden asignar a bloques que tienen el mismo tamaño. Para indicar que están permitidos diferentes números de modos de intra predicción, información que indica el número de modos de intra predicción se puede insertar en al menos uno de una cabecera de secuencia, una cabecera de imagen, una cabecera de fragmento y una cabecera de unidad de codificación. Es preferible insertar la información en una cabecera de secuencia o en una cabecera de imagen.
A continuación, cuando se determina el modo de intra predicción del bloque corriente, se genera un bloque de predicción del bloque corriente. El bloque de predicción se genera usando píxeles de referencia incluyendo píxeles generados o usando una combinación lineal de los píxeles de referencia basándose en el modo de intra predicción del bloque corriente. Por ejemplo, en un modo direccional de una dirección específica, se puede generar un modo de predicción usando píxeles de referencia en el lado superior del bloque corriente y aquéllos en el lado izquierdo del bloque corriente.
Los píxeles de referencia válidos usados para generar el bloque de predicción pueden ser píxeles de referencia filtrados. Un filtro a aplicar a los píxeles de referencia válidos puede ser de un gran número. Asimismo, la pluralidad de filtros se pueden aplicar de forma adaptativa de acuerdo con un tamaño del bloque corriente y el modo de intra predicción.
A continuación, un bloque residual obtenido usando el bloque corriente y el bloque de predicción generado por el intra predictor 120 se codifican mediante la unidad de transformada/cuantificación 140 y el codificador entrópico 150.
Mientras tanto, el modo de intra predicción del bloque corriente se codifica por separado. El modo de intra predicción se puede codificar por el intra predictor 120, un codificador de modo de intra predicción independiente (no mostrado)
o el codificador entrópico 150.
El modo de intra predicción del bloque corriente se codifica usando modos de intra predicción de un bloque superior y un bloque izquierdo del bloque corriente.
En primer lugar, se derivan los modos de intra predicción de los bloques izquierdo y superior del bloque corriente. Cuando el bloque superior es de un número grande, un bloque más a la izquierda superior o un bloque que tiene el número de modo mínimo se establece como un bloque superior del bloque corriente. Asimismo, cuando el bloque izquierdo es de un número grande, un bloque más alto a la izquierda o un bloque que tiene el número de modo mínimo se establece como un bloque izquierdo del bloque corriente. Cuando el bloque superior o el bloque izquierdo no se codifican en un modo de intra predicción, el modo DC (modo número 2) se puede establecer como un modo de intra predicción del bloque superior o del bloque izquierdo.
A continuación, cuando el número de modo de intra predicción del bloque superior o izquierdo es igual o mayor que el número de modos de intra predicción permisibles del bloque corriente, el modo de intra predicción del bloque superior o izquierdo se convierte en uno de los modos de intra predicción permisibles para el bloque corriente.
A continuación, cuando el modo de intra predicción del bloque corriente es igual que uno de los modos de intra predicción del bloque izquierdo y el modo de intra predicción del bloque superior, una etiqueta que indica que el modo de intra predicción del bloque corriente es igual a uno del modo de intra predicción del bloque izquierdo y del modo de intra predicción del bloque superior, y una etiqueta que indica que uno de los modos de intra predicción de los bloques superior e izquierdo se transmiten. En este caso, cuando los bloques izquierdo y superior del bloque corriente tienen el mismo modo de intra predicción, sólo se puede transmitir la etiqueta que indica que el modo de predicción intra del bloque corriente es igual a uno del modo de intra predicción del bloque izquierdo y del modo de intra predicción del bloque superior. De manera similar, cuando sólo uno de los modos de intra predicción de los bloques superiores e izquierdos es válido e igual que aquél del bloque corriente, sólo se puede transmitir la etiqueta que indica que el modo de intra predicción del bloque corriente es igual a uno del modo de intra predicción del bloque izquierdo y el modo de intra predicción del bloque superior.
Sin embargo, cuando el modo de intra predicción del bloque corriente es diferente a aquéllos de los bloques izquierdos y superiores, se determina si el número de modo de intra predicción del bloque corriente es menor o no que aquéllos de los bloques izquierdo y superior.
10
15
20
25
30
35
40
45
50
55
60
E11772290
01-09-2015
Cuando se determina que ambos números de modo de intra predicción de los bloques izquierdo y superior del bloque corriente son mayores que el número de modo de intra predicción del bloque corriente, el modo de intra predicción del bloque corriente se determina como un modo de intra predicción final. Sin embargo, cuando sólo uno de los números de modo de intra predicción de los bloques izquierdo y superior del bloque corriente no es mayor que el número de modo de intra predicción del bloque corriente, un modo de intra predicción que tiene un número de modo obtenido sustrayendo 1 del número de modo de intra predicción del bloque corriente se determina como el modo de intra predicción final del bloque corriente. Asimismo, cuando ninguno de los números de modo de predicción intra de los bloques izquierdo y superior del bloque corriente es mayor que el número de modo de intra predicción del bloque corriente, un modo de intra predicción que tiene un número de modo obtenido sustrayendo 2 del número de modo de intra predicción del bloque corriente se determina como el modo de intra predicción final del bloque corriente.
A continuación se codifica el modo de intra predicción final del bloque corriente. Usando diferentes tablas de codificación de acuerdo con si el bloque superior del bloque corriente tiene o no el mismo modo de intra predicción que el bloque izquierdo del bloque corriente, se codifica el modo de intra predicción final del bloque corriente. El modo de intra predicción del bloque superior o del bloque izquierdo del bloque corriente puede ser un modo de intra predicción modificado. Dicho de otro modo, el modo de intra predicción del bloque superior o del bloque izquierdo del bloque corriente puede ser un modo de intra predicción modificado por una tabla para mapear modos de intra predicción permisibles para el bloque superior y el bloque izquierdo con un número previamente determinado de modos de intra predicción. El número previamente determinado puede ser 9 ó 3.
A continuación se describe un procedimiento de codificación de coeficiente de transformada cuantificado del codificador entrópico 130 de la figura 3.
Los coeficientes de transformada cuantificados se codifican entrópicamente usando codificación de longitud variable adaptativa por contexto (CAVLC) o codificación aritmética binaria adaptativa por contexto (CABAC). Cuando un tamaño de un bloque de transformada se vuelve grande, existe una alta posibilidad de que sea necesario un gran número de bits para escanear y codificar entrópicamente coeficientes diferentes a 0. Por tanto, es preferible introducir un procedimiento de escaneo novedoso para reducir el número de bits para un bloque de transformada que tienen un tamaño igual o mayor que un tamaño previamente determinado.
En primer lugar, se determina si se dividen o no coeficientes de transformada cuantificados en una pluralidad de subconjuntos. Depende de un tamaño de bloque de transformada. Dicho de otro modo, cuando el tamaño de un bloque de transformada es igual o mayor que un tamaño previamente determinado, los coeficientes de transformada cuantificados se dividen en una pluralidad de subconjuntos. El tamaño previamente determinado puede ser 8x8 o 16x16. La pluralidad de subconjuntos consiste en un subconjunto principal y uno o más subconjuntos residuales. El subconjunto principal se coloca en un lado izquierdo superior incluyendo un coeficiente de DC, y los uno o más subconjuntos residuales cubren una región diferente a la región que cubre el subconjunto principal.
A continuación, cuando el tamaño del bloque de transformada es igual o mayor que el tamaño previamente determinado, los coeficientes de transformada cuantificados se dividen en un subconjunto principal y uno o más subconjuntos residuales, y coeficientes de transformada cuantificados incluidos en cada subconjunto se escanean y se codifican. Los coeficientes de transformada cuantificados en el subconjunto se pueden escanear usando uno de una pluralidad de patrones de escaneo. Un patrón de escaneo, en el que el número de bits a codificar se vuelve el mínimo, se puede seleccionar de acuerdo con la distribución de píxeles diferentes a cero de los coeficientes de transformada cuantificados en el subconjunto. La pluralidad de patrones de escaneo puede incluir un escaneo en zigzag, un escaneo vertical y un escaneo horizontal. Asimismo, se puede incluir un escaneo vertical u horizontal del Grupo de Expertos de Imágenes en Movimiento (MPEG)-4. Cuando se transmite un patrón de escaneo para cada subconjunto, es necesario un gran número de bits. Por tanto, se puede aplicar un patrón de escaneo a una pluralidad de subconjuntos.
Mientras tanto, el patrón de escaneo se puede seleccionar de forma adaptativa de acuerdo con el modo de predicción y la dirección de intra predicción. Por ejemplo, en el modo de inter predicción es posible aplicar sólo un patrón de escaneo previamente determinado (por ejemplo, el escaneo en zigzag) o uno de la pluralidad de patrones de escaneo. En el caso anterior, la información de patrón de escaneo no se tiene que transmitir al decodificador, aunque, en el último caso, la información de patrón de escaneo se tiene que transmitir al decodificador. En el modo de intra predicción, se puede seleccionar un patrón de escaneo de acuerdo con la dirección de intra predicción. Por ejemplo, es posible aplicar un escaneo horizontal en un modo de intra predicción vertical, un escaneo vertical en un modo de intra predicción horizontal, y un escaneo en zigzag en un modo DC.
Un patrón de escaneo a aplicar al subconjunto principal y a los uno o más subconjuntos residuales puede ser un patrón previamente determinado. El patrón previamente determinado puede ser un escaneo en zigzag. Además del escaneo en zigzag, el escaneo horizontal o el escaneo vertical se pueden aplicar a los subconjuntos. El patrón de escaneo aplicado a los subconjuntos también se puede determinar de forma adaptativa de acuerdo con el modo de predicción y la dirección de intra predicción. Dicho de otro modo, en el modo de intra predicción, un patrón de escaneo previamente determinado se puede aplicar a los subconjuntos. En la intra predicción, un patrón de escaneo seleccionado por la dirección de intra predicción se puede aplicar a los subconjuntos.
10
15
20
25
30
35
40
45
50
E11772290
01-09-2015
Puede ser eficaz escanear los coeficientes de transformada cuantificados en el subconjunto en una dirección inversa. Dicho de otro modo, los coeficientes de transformada cuantificados se pueden escanear desde el último coeficiente diferente a cero del subconjunto en una dirección inversa de acuerdo con un patrón de escaneo. De manera similar, la pluralidad de subconjuntos se escanean a partir de un subconjunto incluyendo el último coeficiente diferente a cero del bloque de transformada a un subconjunto principal en una dirección inversa.
Mientras tanto, para la decodificación entrópica correcta del decodificador, un codificador codifica información que es capaz de indicar una posición del último coeficiente diferente a cero en el bloque de transformada e información que es capaz de indicar una posición del último coeficiente diferente a cero en cada subconjunto, y transmite la información codificada al decodificador. La información puede indicar una posición del último coeficiente diferente a cero en cada subconjunto. Asimismo, la información puede ser una información de mapeo que consiste en etiquetas que indican si cada coeficiente de transformada es 0 o no y etiquetas que indican si el coeficiente diferente a cero es
o no el último coeficiente diferente a cero en el bloque de transformada. Un patrón de escaneo para generar la información de mapeo puede ser el mismo que el patrón de escaneo en los subconjuntos.
En otro ejemplo de escanear coeficientes de transformada cuantificados del bloque de transformada, los coeficientes de transformada cuantificados de un bloque de transformada se pueden disponer de nuevo usando un procedimiento de intercalado y se pueden convertir en una pluralidad de subbloques, y cada uno de los subbloques se puede escanear y codificar.
Mientras tanto, cuando una imagen tiene un límite en una dirección específica y se usa un modo de predicción equivalente, se usan diferentes subbloques para datos similares en una parte de límite de movimiento, y se puede producir una sobrecarga innecesaria. En este caso, puede ser eficaz además dividir una unidad de codificación en una dirección específica de acuerdo con una forma de la parte de límite de la imagen y realizar una estimación de movimiento en cada región dividida.
Con referencia a las figuras 4 a 6, se describirá un procedimiento para dividir de forma adaptativa por dirección un bloque teniendo en cuenta características de una imagen. En las figuras 4, 5 y 6 se describirá una unidad de codificación de 32x32 como un ejemplo. Sin embargo, el tamaño de una unidad de codificación no está limitado a 32x32, y el procedimiento también se puede aplicar a un bloque de 64x64 o a un bloque de 16x16.
En un ejemplo del modo adaptativo más simple, una unidad de codificación se divide en dos bloques mediante una línea recta para extraer una dependencia estadística de una región de predicción en una topografía local. Dicho de otro modo, una parte de límite de la imagen se mapea con líneas rectas y se divide.
Tal como se muestra en los dibujos, cuando existe un límite que atraviesa una imagen de un bloque de 32x32, una parte de límite que atraviesa la imagen se debería dividir en pequeños bloques para comprimir de manera eficaz la imagen de acuerdo con un procedimiento de división de imágenes convencional.
Por tanto, tal como se muestra en la figura 4, el bloque de 32x32 se debería dividir en al menos 10 bloques y se debería codificar. Por tanto, se deberían transmitir 10 vectores de movimiento a un decodificador junto con información para representar la división de imágenes y, por tanto, es necesaria mucha información adicional diferente a información de imagen.
Mientras tanto, tal como se muestra en las figuras 5 ó 6, cuando existe un límite que atraviesa la imagen del bloque de 32x32, el número de elementos de información adicional a transmitir al decodificador se puede reducir considerablemente mapeando el límite de imagen con al menos una línea recta que indica el límite de imagen.
Por ejemplo, cuando el límite que atraviesa el bloque de 32x32 se mapea con dos líneas rectas, tal como se muestra en la figura 5, el bloque de 32x32 se divide en cuatro bloques de 16x16 y se pueden obtener líneas rectas que mapean respectivos bloques de 16x16 primero y cuarto con un límite de bloque. En este caso, son necesarias seis regiones de división, y los vectores de movimiento a transmitir al decodificador se pueden reducir a seis.
De manera similar, cuando el límite que atraviesa el bloque se mapea con una línea recta, tal como se muestra en la figura 6, el bloque de 32x32 se divide en dos bloques, y sólo un elemento de información de modo de bloque y dos vectores de movimiento se tienen que transmitir al decodificador.
Mientras tanto, cuando se divide un bloque usando una línea recta, información acerca de la línea recta usada se debería transmitir adicionalmente al decodificador. La información de línea recta a transmitir se describirá a continuación.
La información de línea recta a transmitir se puede transmitir usando diversos procedimientos.
Un primer ejemplo es representar la información acerca de la línea recta usando una distancia y un ángulo con respecto a una posición previamente determinada. En este caso, la posición previamente determinada puede ser un píxel en la esquina superior izquierda o el centro del bloque. La distancia puede ser un valor entero o cuantificado. El ángulo puede ser 0 a 180, y también puede ser un valor cuantificado.
10
15
20
25
30
35
40
45
50
55
E11772290
01-09-2015
Un segundo ejemplo es transmitir al decodificador valores de posición de ambos extremos de la línea recta que atraviesa el bloque. Los valores de posición se pueden expresar como valores que indican cómo de lejos están ambos extremos del píxel en la esquina superior izquierda del bloque al pasar alrededor del límite del bloque en el sentido de las agujas del reloj empezando en la esquina superior izquierda. En este caso, cada uno de los extremos se puede representar como una posición del píxel al pasar alrededor del límite en el sentido de las agujas del reloj, y el otro se puede representar como una posición del píxel al pasar alrededor del límite en el sentido en contra de las agujas del reloj, de modo que se puede expresar información de línea recta. En este caso, información acerca de líneas rectas cerca de más formas diversas se puede expresar usando un número pequeño de bits.
Cuando existen bloques vecinos que ya se han dividido de forma adaptativa por dirección y ya se han codificado, es eficaz transmitir información diferencial entre información de línea recta en el bloque corriente e información de línea recta en uno que se ha seleccionado de los bloques vecinos. Es más preferible codificar información diferencial usando información de dirección en bloques divididos en la misma dirección que el bloque corriente. La información de línea recta o información diferencial en el bloque corriente se puede expresar como un índice correspondiente que se puede codificar con una longitud variable y se puede transmitir.
Mientras tanto, se puede determinar si se aplica o no el procedimiento de división adaptativa por dirección de acuerdo con un tamaño de un bloque de codificación predictiva. Puesto que el procedimiento de división adaptativa por dirección aplicado a un bloque de codificación excesivamente pequeño puede aumentar la cantidad de información y complejidad a transmitir, es preferible no aplicar el procedimiento.
Tal como se muestra en la figura 7, el procedimiento para dividir un bloque de codificación predictiva de acuerdo con una forma de una parte de límite de una imagen se puede aplicar sólo a direcciones específicas limitadas a un número previamente determinado. Por ejemplo, el procedimiento para dividir un bloque se puede limitar a cuatro direcciones de una dirección horizontal, una dirección vertical, una dirección diagonal ascendente y una dirección diagonal descendente, o dos direcciones de la dirección horizontal y la dirección vertical. El número de casos de dividir el bloque en las direcciones específicas puede variar de acuerdo con un tamaño del bloque de codificación predictiva. Por ejemplo, un bloque de codificación predictiva que tiene un tamaño de 32x32 se puede dividir en una dirección específica (por ejemplo, la dirección horizontal) usando siete procedimientos, y un bloque de codificación predictiva que tienen un tamaño de 16x16 se puede dividir usando tres procedimientos. Asimismo, independientemente del tamaño del bloque de codificación predictiva, es posible dividir el bloque de codificación predictiva usando el mismo número de procedimientos.
De acuerdo con la croma, el bloque de codificación predictiva también se puede dividir en las mismas particiones, y todos los procedimientos siguientes se pueden aplicar también a la división. El bloque de codificación predictiva que tiene respectivas regiones de división debería incluir en una cabecera una etiqueta que indica la presencia de un bloque de división, información que indica cómo se ha realizado la división, e índices de imagen de referencia codificados a los que se hace referencia de acuerdo con respectivas regiones de división.
Cuando un bloque se predice de forma adaptativa por dirección, se debería realizar una estimación de movimiento y una compensación de movimiento en cada una de dos regiones divididas. Por tanto, un vector de movimiento se debería derivar de cada una de las regiones divididas, y una señal residual entre cada una de las regiones divididas y una región de referencia obtenida basándose en el vector de movimiento se debería derivar y codificar.
Una señal residual se puede codificar usando cualquiera de los procedimientos siguientes.
En primer lugar, una señal se puede derivar de cada una de dos regiones divididas de un bloque de codificación predictiva, y, a continuación, se pueden sumar las dos señales residuales para formar una señal residual de bloque y se pueden codificar por transformada. En este caso, es muy posible que exista una diferencia entre la distribución global de señales residuales en las respectivas regiones divididas a lo largo de un límite y, por tanto, es preferible aplicar un filtro al límite.
En otro procedimiento, la codificación se puede realizar aplicando una transformada adaptativa por forma a cada una de las regiones divididas. Tal como se muestra en la figura 7, cuando un bloque se divide en dos regiones, un bloque superior izquierdo se somete a una transformada 1D horizontal tal como es y, a continuación, a una transformada 1D vertical, y un bloque derecho inferior se dispone de nuevo o se hace rotar 180 grados, tal como se muestra en el dibujo, y se somete a una transformada 1D horizontal y, a continuación, a una transformada 1D vertical. En este caso, coeficientes residuales codificados por separado de acuerdo con las respectivas regiones de división se pueden transmitir al decodificador o se pueden combinar y transmitir.
En aún otro procedimiento, se puede realizar un relleno de acuerdo con las respectivas regiones divididas para generar y codificar un bloque. Dicho de otro modo, cuando se codifica una región de división corriente, la otra región de división que constituye el bloque se rellena con un valor de la región de división corriente para constituir el bloque y, a continuación, se somete a una codificación de transformada 2D. El relleno puede ser un relleno horizontal (copiar horizontalmente una región no definida de una región definida) y un relleno vertical (copiar verticalmente una región no definida de una región definida). En este caso, es preferible realizar un relleno horizontal y, a continuación, un relleno vertical. Asimismo, un píxel no definido adyacente a uno o más píxeles definidos se puede rellenar
5
10
15
20
25
30
E11772290
01-09-2015
mediante una combinación lineal de los píxeles definidos. Asimismo, la direccionalidad puede ser dada de acuerdo con una dirección de división de modo que cualquiera del relleno horizontal y del relleno vertical se puede realizar primero.
A continuación se describirá la estimación de vector de movimiento.
Cuando un bloque se divide en dos regiones usando una línea recta, un vector de movimiento de cada una de las regiones divididas se codifica de forma diferencial usando un vector de movimiento ya codificado.
En un primer procedimiento, una primera región de las regiones divididas puede seleccionar uno de vectores de movimiento de bloques adyacentes como un predictor de vector de movimiento, y una segunda región puede seleccionar un vector de movimiento de la primera región como un predictor de vector de movimiento.
En un segundo procedimiento, una primera región de las regiones divididas puede seleccionar uno de vectores de movimiento de bloques adyacentes como un predictor de vector de movimiento, y una segunda región puede seleccionar un vector de movimiento de la primera región como un predictor de vector de movimiento.
En un tercer procedimiento, cuando existe un bloque dividido de forma adaptativa por dirección entre bloques adyacentes a un bloque corriente, un vector de movimiento del bloque dividido de forma adaptativa por dirección se usa como un vector de movimiento de referencia teniendo en cuenta la directividad de los bloques divididos. Por tanto, cuando existe una pluralidad de bloques divididos de forma adaptativa por dirección, vectores de movimiento en una secuencia previamente determinada o vectores de movimiento de bloques que tienen direcciones de división similares se pueden usar como vectores de movimiento de referencia.
En un cuarto procedimiento, una primera región de las regiones divididas puede establecer un vector de movimiento de uno de bloques adyacentes a la primera región como un predictor de vector de movimiento de la primera región, y una segunda región puede seleccionar cualquiera de vectores de movimiento de bloques adyacentes a la segunda región y un vector de movimiento de un bloque o una región de división en la misma posición en una imagen anterior como un predictor de vector de movimiento y codificar un vector de movimiento diferencial.
En este caso, una línea recta se usa para la división de bloques. Sin embargo, también es posible dividir un bloque en al menos dos regiones de división usando información que consiste en al menos dos líneas rectas, y la codificación de las regiones divididas se puede realizar tal como se describió anteriormente.
Aunque la invención se ha mostrado y descrito con referencia a determinadas realizaciones ejemplares de la misma, los expertos en la materia entenderán que se pueden realizar diversos cambios con respecto a la forma y detalles en el presente documento sin abandonar el alcance de la invención tal como está definido en las reivindicaciones adjuntas.

Claims (2)

  1. REIVINDICACIONES
    1. Un aparato para codificar una imagen, comprendiendo el aparato:
    un determinador de modo de codificación (110) configurado para dividir una imagen de entrada en una pluralidad de unidades de codificación;
    5 un intra predictor (140) configurado para generar un bloque de predicción usando intra predicción;
    una unidad de transformada/cuantificación (120) configurada para transformar y cuantificar un bloque residual para generar un bloque de transformada cuantificado;
    una unidad de transformada/cuantificación inversa (160) configurada para cuantificar de forma inversa y transformar de forma inversa el bloque de transformada cuantificado;
    10 un filtro de desbloqueo (170) configurado para realizar un procedimiento de filtrado de desbloqueo para datos de imagen recibidos de la unidad de cuantificación/transformada inversa (160); y
    un codificador entrópico (130) configurado para codificar entrópicamente coeficientes de transformada cuantificados del bloque de transformada cuantificado,
    en el que los coeficientes de transformada cuantificados se dividen en una pluralidad de subbloques si se determina
    15 que un tamaño de un bloque de transformada es igual o mayor que 8x8 en una intra predicción, y en el que la pluralidad de subbloques se escanean y coeficientes diferentes a cero de cada subbloque se escanean de acuerdo con un patrón de escaneo, en el que dicho patrón de escaneo para escanear la pluralidad de subbloques y para escanear los coeficientes diferentes a cero de cada subbloque se determina por un modo de intra predicción del bloque de predicción para codificar entrópicamente los coeficientes escaneados diferentes a cero, en el que, cuando
    20 el modo de intra predicción es un modo de intra predicción horizontal, el patrón de escaneo es un modo de escaneo vertical.
  2. 2. El aparato de acuerdo con la reivindicación 1, en el que el codificador entrópico (130) escanea los coeficientes diferentes a cero de cada subbloque en una dirección inversa de al menos un coeficiente diferente a cero de cada subbloque usando uno de una pluralidad de patrones de escaneo.
    25 3. El aparato de acuerdo con la reivindicación 1, en el que el codificador entrópico (130) codifica posiciones de los coeficientes diferentes a cero e información para identificar los coeficientes diferentes a cero de cada subbloque.
    12
ES11772290.0T 2010-04-23 2011-04-22 Aparato de codificación de imágenes Active ES2546514T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR20100038158 2010-04-23
KR20100038158 2010-04-23
PCT/KR2011/002972 WO2011133002A2 (ko) 2010-04-23 2011-04-22 영상 부호화 장치 및 방법

Publications (1)

Publication Number Publication Date
ES2546514T3 true ES2546514T3 (es) 2015-09-24

Family

ID=44834700

Family Applications (8)

Application Number Title Priority Date Filing Date
ES15175096.5T Active ES2602677T3 (es) 2010-04-23 2011-04-22 Aparato de codificación de imagen
ES11772290.0T Active ES2546514T3 (es) 2010-04-23 2011-04-22 Aparato de codificación de imágenes
ES15175114.6T Active ES2618917T3 (es) 2010-04-23 2011-04-22 Aparato de codificación de imagen
ES15175100.5T Active ES2618932T3 (es) 2010-04-23 2011-04-22 Aparato de codificación de imagen
ES15175097.3T Active ES2620772T3 (es) 2010-04-23 2011-04-22 Aparato de codificación de imagen
ES15175089.0T Active ES2632996T3 (es) 2010-04-23 2011-04-22 Aparato para codificar una imagen
ES19174960T Active ES2897491T3 (es) 2010-04-23 2011-04-22 Aparato para decodificar una imagen
ES17160486T Active ES2746015T3 (es) 2010-04-23 2011-04-22 Aparato para decodificar una imagen

Family Applications Before (1)

Application Number Title Priority Date Filing Date
ES15175096.5T Active ES2602677T3 (es) 2010-04-23 2011-04-22 Aparato de codificación de imagen

Family Applications After (6)

Application Number Title Priority Date Filing Date
ES15175114.6T Active ES2618917T3 (es) 2010-04-23 2011-04-22 Aparato de codificación de imagen
ES15175100.5T Active ES2618932T3 (es) 2010-04-23 2011-04-22 Aparato de codificación de imagen
ES15175097.3T Active ES2620772T3 (es) 2010-04-23 2011-04-22 Aparato de codificación de imagen
ES15175089.0T Active ES2632996T3 (es) 2010-04-23 2011-04-22 Aparato para codificar una imagen
ES19174960T Active ES2897491T3 (es) 2010-04-23 2011-04-22 Aparato para decodificar una imagen
ES17160486T Active ES2746015T3 (es) 2010-04-23 2011-04-22 Aparato para decodificar una imagen

Country Status (28)

Country Link
US (11) US9100651B2 (es)
EP (8) EP3565247B1 (es)
JP (8) JP5688136B2 (es)
KR (10) KR20140057670A (es)
CN (11) CN105120273B (es)
AU (6) AU2011243334B2 (es)
BR (4) BR122014030030A2 (es)
CA (9) CA2935205C (es)
CY (6) CY1116723T1 (es)
DK (6) DK2950534T3 (es)
ES (8) ES2602677T3 (es)
HR (6) HRP20150964T1 (es)
HU (8) HUE034345T2 (es)
IL (6) IL222579A (es)
LT (5) LT2950534T (es)
MX (6) MX348486B (es)
MY (11) MY162148A (es)
PE (8) PE20142178A1 (es)
PH (6) PH12012502305A1 (es)
PL (8) PL2947878T3 (es)
PT (6) PT2563020E (es)
RS (6) RS55780B1 (es)
RU (7) RU2549157C1 (es)
SG (11) SG10201503173PA (es)
SI (6) SI2563020T1 (es)
SM (6) SMT201700338T1 (es)
WO (1) WO2011133002A2 (es)
ZA (1) ZA201208766B (es)

Families Citing this family (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8867854B2 (en) * 2008-10-01 2014-10-21 Electronics And Telecommunications Research Institute Image encoder and decoder using undirectional prediction
SMT201700338T1 (it) * 2010-04-23 2017-09-07 M&K Holdings Inc Apparato per codificare un'immagine
KR20110123651A (ko) 2010-05-07 2011-11-15 한국전자통신연구원 생략 부호화를 이용한 영상 부호화 및 복호화 장치 및 그 방법
US9706204B2 (en) * 2010-05-19 2017-07-11 Sk Telecom Co., Ltd. Image encoding/decoding device and method
US10397577B2 (en) 2011-03-08 2019-08-27 Velos Media, Llc Inverse scan order for significance map coding of transform coefficients in video coding
US9167253B2 (en) 2011-06-28 2015-10-20 Qualcomm Incorporated Derivation of the position in scan order of the last significant transform coefficient in video coding
PL231159B1 (pl) 2011-09-09 2019-01-31 Kt Corp Sposób uzyskiwania czasowego predykcyjnego wektora ruchu i urządzenie do stosowania tego sposobu
US9787982B2 (en) 2011-09-12 2017-10-10 Qualcomm Incorporated Non-square transform units and prediction units in video coding
JP2014531153A (ja) * 2011-09-14 2014-11-20 サムスン エレクトロニクスカンパニー リミテッド ビデオ符号化方法、ビデオ復号化方法及びその装置
KR20130049524A (ko) * 2011-11-04 2013-05-14 오수미 인트라 예측 블록 생성 방법
KR20130049523A (ko) * 2011-11-04 2013-05-14 오수미 인트라 예측 블록 생성 장치
KR20130050407A (ko) * 2011-11-07 2013-05-16 오수미 인터 모드에서의 움직임 정보 생성 방법
KR20130050404A (ko) * 2011-11-07 2013-05-16 오수미 인터 모드에서의 복원 블록 생성 방법
KR20130050149A (ko) * 2011-11-07 2013-05-15 오수미 인터 모드에서의 예측 블록 생성 방법
EP4216547A1 (en) * 2012-06-29 2023-07-26 Electronics And Telecommunications Research Institute Method for encoding/decoding images
GB2496015B (en) * 2012-09-05 2013-09-11 Imagination Tech Ltd Pixel buffering
CN103220529B (zh) * 2013-04-15 2016-02-24 北京大学 一种视频编解码环路滤波的实现方法
CN103428492B (zh) * 2013-07-16 2016-11-16 山东大学 一种高清AVS编码中快速zig-zag扫描的方法
US9451254B2 (en) * 2013-07-19 2016-09-20 Qualcomm Incorporated Disabling intra prediction filtering
KR102218196B1 (ko) 2013-10-28 2021-02-23 삼성전자주식회사 인코더, 이의 동작 방법과, 상기 인코더를 포함하는 장치들
US9813730B2 (en) * 2013-12-06 2017-11-07 Mediatek Inc. Method and apparatus for fine-grained motion boundary processing
US10708589B2 (en) 2014-03-19 2020-07-07 Samsung Electronics Co., Ltd. Video encoding and decoding method and apparatus involving boundary filtering
KR101663668B1 (ko) * 2014-06-27 2016-10-07 삼성전자주식회사 영상 패딩영역의 비디오 복호화 및 부호화 장치 및 방법
DE112015004764T5 (de) * 2014-10-20 2017-10-19 Google Inc. Kontinuierlicher prädiktionsbereich
CN105631905A (zh) * 2014-10-29 2016-06-01 新相微电子(开曼)有限公司 一种用于tft-lcd驱动ic的图像压缩算法及控制装置
KR20160131526A (ko) * 2015-05-07 2016-11-16 삼성전자주식회사 시스템 온 칩, 상기 시스템 온 칩을 포함하는 디스플레이 시스템, 및 상기 디스플레이 시스템의 동작 방법
US11463689B2 (en) 2015-06-18 2022-10-04 Qualcomm Incorporated Intra prediction and intra mode coding
US10142627B2 (en) 2015-06-18 2018-11-27 Qualcomm Incorporated Intra prediction and intra mode coding
US10841593B2 (en) 2015-06-18 2020-11-17 Qualcomm Incorporated Intra prediction and intra mode coding
US9699461B2 (en) * 2015-08-14 2017-07-04 Blackberry Limited Scaling in perceptual image and video coding
KR20180040515A (ko) * 2015-09-10 2018-04-20 삼성전자주식회사 부호화 장치, 복호화 장치, 그 부호화 및 복호화 방법
WO2017188784A2 (ko) * 2016-04-29 2017-11-02 세종대학교 산학협력단 영상 신호 부호화/복호화 방법 및 장치
CN109417638B (zh) * 2016-05-28 2022-02-08 世宗大学校产学协力团 视频信号的编码或解码方法及装置
US20170347094A1 (en) * 2016-05-31 2017-11-30 Google Inc. Block size adaptive directional intra prediction
CN117412035A (zh) * 2016-08-31 2024-01-16 株式会社Kt 用于处理视频信号的方法和设备
EP3515070B1 (en) * 2016-09-16 2021-11-24 Sony Group Corporation Encoding color component prediction mode when using intra block copy
EP3300362A1 (en) * 2016-09-27 2018-03-28 Thomson Licensing Method for improved intra prediction when reference samples are missing
FI3975559T3 (fi) 2016-10-04 2024-09-13 B1 Institute Image Technology Inc Menetelmä ja laitteisto kuvadatan koodaamiseksi/dekoodaamiseksi
CN116489405A (zh) * 2016-10-14 2023-07-25 世宗大学校产学协力团 影像解码/编码方法、传送比特流的方法及记录介质
CN116723314A (zh) * 2016-11-29 2023-09-08 成均馆大学校产学协力团 影像编码/解码方法、装置以及对比特流进行存储的记录介质
US10694202B2 (en) * 2016-12-01 2020-06-23 Qualcomm Incorporated Indication of bilateral filter usage in video coding
CN117294839A (zh) * 2017-05-17 2023-12-26 株式会社Kt 用于解码视频的方法和用于传输压缩的视频数据的设备
CN108933941A (zh) * 2017-05-26 2018-12-04 富士通株式会社 图像编码方法和装置以及图像解码方法和装置
CN107864379B (zh) * 2017-09-28 2021-07-02 珠海亿智电子科技有限公司 一种应用于视频编解码的压缩方法
EP3487177A1 (en) * 2017-11-21 2019-05-22 Thomson Licensing Method and apparatus for low-complexity bi-directional intra prediction in video encoding and decoding
US11153607B2 (en) * 2018-01-29 2021-10-19 Mediatek Inc. Length-adaptive deblocking filtering in video coding
US10771783B2 (en) * 2018-06-11 2020-09-08 Google Llc Transforms for large video and image blocks
CN112602324B (zh) * 2018-06-22 2024-07-23 Op方案有限责任公司 块水平几何划分
US11277644B2 (en) 2018-07-02 2022-03-15 Qualcomm Incorporated Combining mode dependent intra smoothing (MDIS) with intra interpolation filter switching
JP7195349B2 (ja) * 2018-07-02 2022-12-23 ホアウェイ・テクノロジーズ・カンパニー・リミテッド ビデオコーディングにおけるフィルタリングのための装置および方法
MX2021002488A (es) 2018-09-04 2021-07-16 Huawei Tech Co Ltd Método de obtención de trama de referencia y aparato aplicado a la interpredicción bidireccional.
US11303885B2 (en) 2018-10-25 2022-04-12 Qualcomm Incorporated Wide-angle intra prediction smoothing and interpolation
EP3664449A1 (en) * 2018-12-05 2020-06-10 InterDigital VC Holdings, Inc. Method and device for picture encoding and decoding
JP7418152B2 (ja) * 2018-12-17 2024-01-19 キヤノン株式会社 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法
EP3893505A4 (en) 2018-12-27 2022-05-11 Huawei Technologies Co., Ltd. METHOD AND DEVICE FOR DETERMINING PREDICTION MODE, ENCODING DEVICE AND DECODING DEVICE
CN111385572B (zh) 2018-12-27 2023-06-02 华为技术有限公司 预测模式确定方法、装置及编码设备和解码设备
US11792393B2 (en) 2018-12-28 2023-10-17 Intellectual Discovery Co., Ltd. Inter prediction encoding and decoding method using combination of prediction blocks, and computer-readable storage medium bitstream to be decoded thereby
CN111416975B (zh) 2019-01-08 2022-09-16 华为技术有限公司 预测模式确定方法和装置
CN122513554A (zh) * 2019-01-10 2026-08-04 世宗大学校产学协力团 影像编码/解码方法及计算机可读的非暂时性记录介质
US10728555B1 (en) * 2019-02-06 2020-07-28 Sony Corporation Embedded codec (EBC) circuitry for position dependent entropy coding of residual level data
US10666986B1 (en) 2019-03-08 2020-05-26 Sony Corporation Sub-block based entropy coding for embedded image codec
CN118764632A (zh) 2019-03-12 2024-10-11 现代自动车株式会社 用于有效地对残差块解码的方法和装置
CN110113614B (zh) * 2019-05-13 2022-04-12 格兰菲智能科技有限公司 图像处理方法及图像处理装置
AU2019204437B2 (en) 2019-06-24 2022-02-03 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding a block of video samples
WO2020260228A1 (en) * 2019-06-25 2020-12-30 Interdigital Vc Holdings France, Sas Method and apparatus for coding/decoding picture data
CN110418131B (zh) * 2019-07-15 2021-07-27 杭州电子科技大学 一种码率预估方法及基于码率预估快速模式决策方法
US11553208B2 (en) 2019-11-27 2023-01-10 Tencent America LLC Method and system of video coding using a subset of available intra prediction modes for multiple reference lines
CN119946278A (zh) * 2019-12-31 2025-05-06 Lg电子株式会社 图像解码设备、图像编码设备及比特流发送设备
CN112004088B (zh) * 2020-08-06 2024-04-16 杭州当虹科技股份有限公司 一种适用于avs2编码器的cu级qp分配算法
EP4422173A4 (en) * 2021-10-22 2025-09-24 Lg Electronics Inc IMAGE DECODING METHOD AND RELATED APPARATUS

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748244A (en) * 1995-03-28 1998-05-05 Daewoo Electronics Co., Ltd. Adaptive runlength coding based on zero and non-zero subblocks
JP2001016595A (ja) * 1999-04-30 2001-01-19 Fujitsu Ltd 動画像符号化装置および復号装置
EP1296524A1 (en) * 2001-09-20 2003-03-26 STMicroelectronics S.r.l. Process and apparatus for the compression of digital video signals, a system and a computer program product therefor
KR100798446B1 (ko) * 2001-09-26 2008-01-28 에스케이 텔레콤주식회사 적응적 더블 스캔 방법
CN101448162B (zh) * 2001-12-17 2013-01-02 微软公司 处理视频图像的方法
JP4610195B2 (ja) * 2001-12-17 2011-01-12 マイクロソフト コーポレーション スキップマクロブロックコード化
EP1469682A4 (en) * 2002-01-24 2010-01-27 Hitachi Ltd SIGNAL CODING METHOD FOR MOVABLE IMAGES, DECODING METHOD, CODING DEVICE AND DECODING DEVICE
KR100846778B1 (ko) * 2002-07-16 2008-07-16 삼성전자주식회사 복수개의 주사 패턴을 이용한 부호화 방법, 복호화 방법,및 그 장치
JP2004180064A (ja) * 2002-11-28 2004-06-24 Ricoh Co Ltd 情報圧縮装置および方法、ならびにそのプログラム
US7392195B2 (en) * 2004-03-25 2008-06-24 Dts, Inc. Lossless multi-channel audio codec
JP2006054846A (ja) * 2004-07-12 2006-02-23 Sony Corp 符号化方法、符号化装置、復号方法、復号装置およびそれらのプログラム
CN1665301A (zh) * 2005-03-07 2005-09-07 清华大学 一种视频编解码中的自适应的扫描方法
CN1870748A (zh) * 2005-04-27 2006-11-29 王云川 因特网协议电视
KR100736086B1 (ko) * 2005-09-06 2007-07-06 삼성전자주식회사 엔트로피 코딩의 성능 향상 방법 및 장치, 상기 방법을이용한 비디오 코딩 방법 및 장치
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
JP4114885B2 (ja) * 2005-10-31 2008-07-09 松下電器産業株式会社 画像符号化装置、方法、及びプログラム
KR100728031B1 (ko) * 2006-01-23 2007-06-14 삼성전자주식회사 가변 블록 크기 움직임 예측을 위한 부호화 모드 결정 방법및 장치
JP2007300389A (ja) * 2006-04-28 2007-11-15 Victor Co Of Japan Ltd 画像符号化装置および画像符号化プログラム
KR100927733B1 (ko) * 2006-09-20 2009-11-18 한국전자통신연구원 잔여계수의 상관성에 따라 변환기를 선택적으로 이용한부호화/복호화 장치 및 그 방법
KR101074870B1 (ko) * 2007-03-14 2011-10-19 니폰덴신뎅와 가부시키가이샤 부호량 추정 방법, 장치, 그 프로그램 및 기록매체
KR100871588B1 (ko) * 2007-06-25 2008-12-02 한국산업기술대학교산학협력단 인트라 부호화 장치 및 그 방법
KR100968027B1 (ko) * 2007-06-27 2010-07-07 티유미디어 주식회사 가변블록 기반의 디블록킹 필터링 방법 및 장치와, 이에적용되는 디블록킹 필터
JP2009027541A (ja) * 2007-07-20 2009-02-05 Ntt Docomo Inc 画像符号化装置、方法及びプログラム、並びに、画像復号装置、方法及びプログラム
US20090245351A1 (en) * 2008-03-28 2009-10-01 Kabushiki Kaisha Toshiba Moving picture decoding apparatus and moving picture decoding method
KR101457894B1 (ko) * 2009-10-28 2014-11-05 삼성전자주식회사 영상 부호화 방법 및 장치, 복호화 방법 및 장치
EP2559166B1 (en) * 2010-04-13 2017-11-01 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Probability interval partioning encoder and decoder
EP3709646A1 (en) * 2010-04-13 2020-09-16 GE Video Compression, LLC Coding of significance maps and transform coefficient blocks
SMT201700338T1 (it) * 2010-04-23 2017-09-07 M&K Holdings Inc Apparato per codificare un'immagine
US9661338B2 (en) * 2010-07-09 2017-05-23 Qualcomm Incorporated Coding syntax elements for adaptive scans of transform coefficients for video coding
KR20120012385A (ko) * 2010-07-31 2012-02-09 오수미 인트라 예측 부호화 장치
KR101373814B1 (ko) * 2010-07-31 2014-03-18 엠앤케이홀딩스 주식회사 예측 블록 생성 장치
KR20120016991A (ko) * 2010-08-17 2012-02-27 오수미 인터 프리딕션 방법
ES2670324T3 (es) * 2010-08-17 2018-05-30 M&K Holdings Inc. Procedimiento de restablecimiento de un modo de intra predicción
US8976861B2 (en) * 2010-12-03 2015-03-10 Qualcomm Incorporated Separately coding the position of a last significant coefficient of a video block in video coding
US10992958B2 (en) * 2010-12-29 2021-04-27 Qualcomm Incorporated Video coding using mapped transforms and scanning modes
SG191869A1 (en) * 2011-01-07 2013-08-30 Agency Science Tech & Res Method and an apparatus for coding an image
US10397577B2 (en) * 2011-03-08 2019-08-27 Velos Media, Llc Inverse scan order for significance map coding of transform coefficients in video coding
US9106913B2 (en) * 2011-03-08 2015-08-11 Qualcomm Incorporated Coding of transform coefficients for video coding
US9172962B2 (en) * 2012-01-20 2015-10-27 Blackberry Limited Methods and systems for pipelining within binary arithmetic coding and decoding
GB2501535A (en) * 2012-04-26 2013-10-30 Sony Corp Chrominance Processing in High Efficiency Video Codecs
KR20140129607A (ko) * 2013-04-30 2014-11-07 주식회사 칩스앤미디어 동영상 처리 방법 및 장치
US9215464B2 (en) * 2013-09-19 2015-12-15 Blackberry Limited Coding position data for the last non-zero transform coefficient in a coefficient group

Also Published As

Publication number Publication date
CA2935202A1 (en) 2011-10-27
SI2563020T1 (sl) 2015-11-30
CA2934942C (en) 2018-07-10
BR122014030026A2 (pt) 2019-08-13
EP2563020B1 (en) 2015-08-12
EP2947878A1 (en) 2015-11-25
US9264719B2 (en) 2016-02-16
JP2015122774A (ja) 2015-07-02
SG10201503177TA (en) 2015-06-29
SG10201503176SA (en) 2015-06-29
SG10201503178RA (en) 2015-06-29
PH12012502305A1 (en) 2013-02-04
PE20142178A1 (es) 2014-12-20
ES2618932T3 (es) 2017-06-22
WO2011133002A2 (ko) 2011-10-27
CN105245883A (zh) 2016-01-13
US20150222894A1 (en) 2015-08-06
RS56193B1 (sr) 2017-11-30
BR112012026809B1 (pt) 2022-03-29
MY162149A (en) 2017-05-24
EP3197158A1 (en) 2017-07-26
DK2950533T3 (en) 2017-05-01
PT2563020E (pt) 2015-10-09
SMT201700338T1 (it) 2017-09-07
JP2015111915A (ja) 2015-06-18
CA2934927A1 (en) 2011-10-27
IL233840A0 (en) 2014-09-30
KR101476117B1 (ko) 2014-12-24
US20150222902A1 (en) 2015-08-06
RS55261B1 (sr) 2017-02-28
RU2014118776A (ru) 2015-11-27
PH12014501183A1 (en) 2015-05-11
JP2016165125A (ja) 2016-09-08
RU2658148C2 (ru) 2018-06-19
US20130022115A1 (en) 2013-01-24
PE20170649A1 (es) 2017-05-11
AU2014202819A1 (en) 2014-06-19
AU2014202818A1 (en) 2014-06-19
KR20130061680A (ko) 2013-06-11
LT2947877T (lt) 2017-01-10
EP2950533B1 (en) 2017-02-15
HRP20170729T1 (hr) 2017-07-28
RS54213B1 (sr) 2015-12-31
CN105245885B (zh) 2017-11-10
PL2945382T3 (pl) 2017-11-30
ES2746015T3 (es) 2020-03-04
EP2947878B1 (en) 2017-02-15
SG10201503173PA (en) 2015-06-29
DK2947877T3 (en) 2017-01-23
MY157593A (en) 2016-06-30
JP5919407B2 (ja) 2016-05-18
IL233841A0 (en) 2014-09-30
HUE046331T2 (hu) 2020-02-28
MX348487B (es) 2017-06-15
RU2523963C2 (ru) 2014-07-27
JP5919404B2 (ja) 2016-05-18
SG185371A1 (en) 2012-12-28
MY162147A (en) 2017-05-24
CA2935176A1 (en) 2011-10-27
US9237348B2 (en) 2016-01-12
CA2797047A1 (en) 2011-10-27
AU2014202819B2 (en) 2015-11-12
RU2014118779A (ru) 2015-11-27
AU2014202817A1 (en) 2014-06-19
CN103004197A (zh) 2013-03-27
US9264718B2 (en) 2016-02-16
EP3565247A1 (en) 2019-11-06
CY1118908T1 (el) 2018-03-07
KR20140057670A (ko) 2014-05-13
MY162152A (en) 2017-05-24
JP2015084599A (ja) 2015-04-30
HUE032617T2 (en) 2017-10-30
CN104601998A (zh) 2015-05-06
RU2658141C2 (ru) 2018-06-19
RU2014118778A (ru) 2015-11-27
KR20160093107A (ko) 2016-08-05
EP2950534B1 (en) 2017-02-15
HRP20171353T1 (hr) 2017-11-03
CA2935205A1 (en) 2011-10-27
AU2014202820B2 (en) 2015-11-05
US20150222899A1 (en) 2015-08-06
ES2897491T3 (es) 2022-03-01
HUE057125T2 (hu) 2022-05-28
PL3565247T3 (pl) 2022-01-31
SG10201503183TA (en) 2015-06-29
MY162154A (en) 2017-05-24
HUE034345T2 (en) 2018-02-28
PT2947877T (pt) 2016-11-07
HUE031188T2 (hu) 2017-07-28
KR20140057671A (ko) 2014-05-13
CY1118877T1 (el) 2018-01-10
CN103004197B (zh) 2015-11-25
CN104717498A (zh) 2015-06-17
PH12014501186B1 (en) 2015-05-11
CN104717498B (zh) 2017-09-19
SI2947878T1 (sl) 2017-05-31
JP2015039231A (ja) 2015-02-26
PH12014501187A1 (en) 2015-05-11
PL2947878T3 (pl) 2017-07-31
CA2934940A1 (en) 2011-10-27
SI2950534T1 (sl) 2017-05-31
RU2014118780A (ru) 2015-11-27
SMT201700164T1 (it) 2017-05-08
HRP20170054T1 (hr) 2017-03-10
AU2011243334B2 (en) 2014-07-24
CA2857849C (en) 2020-02-11
JP5877236B2 (ja) 2016-03-02
RU2014118777A (ru) 2015-11-27
IL222579A (en) 2016-11-30
KR20160093104A (ko) 2016-08-05
MY162153A (en) 2017-05-24
CY1118425T1 (el) 2017-06-28
SG10201503151YA (en) 2015-06-29
EP2563020A4 (en) 2013-12-18
ES2620772T3 (es) 2017-06-29
BR122014030027A2 (pt) 2019-08-20
EP2947877B1 (en) 2016-10-12
PH12014501183B1 (en) 2015-05-11
MY157877A (en) 2016-07-26
LT2947878T (lt) 2017-03-27
RU2014118774A (ru) 2015-05-27
US9197896B2 (en) 2015-11-24
AU2011243334A1 (en) 2012-12-13
US9191673B2 (en) 2015-11-17
RU2659470C2 (ru) 2018-07-02
PE20130929A1 (es) 2013-09-07
PL2950534T3 (pl) 2017-07-31
PT2945382T (pt) 2017-07-11
KR20130103803A (ko) 2013-09-24
PH12014501184B1 (en) 2015-05-11
RU2656985C2 (ru) 2018-06-07
SMT201700165T1 (it) 2017-05-08
ES2632996T3 (es) 2017-09-18
SG10201503179VA (en) 2015-06-29
BR122014030030A2 (pt) 2019-08-20
CN105245886A (zh) 2016-01-13
US9191674B2 (en) 2015-11-17
CA2934930A1 (en) 2011-10-27
MY162148A (en) 2017-05-24
RS55829B1 (sr) 2017-08-31
HUE026246T2 (en) 2016-06-28
PH12014501185B1 (en) 2015-05-11
IL246885B (en) 2018-01-31
JP2015111914A (ja) 2015-06-18
PE20170650A1 (es) 2017-05-11
DK2947878T3 (en) 2017-05-01
CN104601998B (zh) 2016-08-17
SI2945382T1 (sl) 2017-09-29
KR20160093105A (ko) 2016-08-05
AU2014202817B2 (en) 2015-11-12
CN105245877A (zh) 2016-01-13
BR122014030029A2 (pt) 2019-08-20
CA2935202C (en) 2018-01-30
AU2014202818B2 (en) 2015-11-12
CN105120273A (zh) 2015-12-02
JP6084730B2 (ja) 2017-02-22
EP2945382B1 (en) 2017-06-07
KR20160093106A (ko) 2016-08-05
PT2950534T (pt) 2017-05-17
AU2014202816A1 (en) 2014-06-12
LT2945382T (lt) 2017-09-11
PL2563020T3 (pl) 2016-01-29
KR101376136B1 (ko) 2014-03-21
MX348485B (es) 2017-06-15
PL2947877T3 (pl) 2017-06-30
CN105245883B (zh) 2017-11-10
US9197895B2 (en) 2015-11-24
LT2950534T (lt) 2017-03-10
CA2934940C (en) 2018-01-16
CY1118907T1 (el) 2018-01-10
EP3565247B1 (en) 2021-08-18
JP2013526178A (ja) 2013-06-20
PH12014501187B1 (en) 2015-05-11
CY1119314T1 (el) 2018-02-14
RU2012149839A (ru) 2014-05-27
CN105245884B (zh) 2018-02-02
CN105245884A (zh) 2016-01-13
PL3197158T3 (pl) 2019-12-31
US20150222896A1 (en) 2015-08-06
US20150222893A1 (en) 2015-08-06
US20150222901A1 (en) 2015-08-06
MX348484B (es) 2017-06-15
PE20170653A1 (es) 2017-05-13
CY1116723T1 (el) 2017-03-15
MX348486B (es) 2017-06-15
CN105120274B (zh) 2017-09-19
JP5919405B2 (ja) 2016-05-18
US20150222907A1 (en) 2015-08-06
US9232224B2 (en) 2016-01-05
HRP20170726T1 (hr) 2017-08-11
SG10201503182WA (en) 2015-06-29
SI2950533T1 (sl) 2017-05-31
BR112012026809A2 (pt) 2018-04-03
SI2947877T1 (sl) 2017-01-31
SG10201503185PA (en) 2015-06-29
SMT201500244B (it) 2015-10-30
US9197897B2 (en) 2015-11-24
EP2950534A1 (en) 2015-12-02
IL233841A (en) 2017-10-31
PH12014501186A1 (en) 2015-05-11
CA2935205C (en) 2018-01-30
US20150222908A1 (en) 2015-08-06
HRP20150964T1 (hr) 2015-10-09
SG10201503180SA (en) 2015-06-29
JP5688136B2 (ja) 2015-03-25
CN105245887A (zh) 2016-01-13
KR20130131424A (ko) 2013-12-03
CN105245887B (zh) 2017-09-19
PT2950533T (pt) 2017-05-08
SMT201700163T1 (it) 2017-05-08
PH12014501184A1 (en) 2015-05-11
JP2015122773A (ja) 2015-07-02
HUE034476T2 (en) 2018-02-28
KR20140057669A (ko) 2014-05-13
AU2014202816B2 (en) 2015-11-12
CA2797047C (en) 2016-09-20
CN105245886B (zh) 2017-11-10
ES2618917T3 (es) 2017-06-22
EP2950533A1 (en) 2015-12-02
HUE032615T2 (en) 2017-10-30
PL2950533T3 (pl) 2017-07-31
CN105245877B (zh) 2017-11-10
US9100651B2 (en) 2015-08-04
DK2563020T3 (en) 2015-10-05
MY163233A (en) 2017-08-30
PE20170654A1 (es) 2017-05-13
JP5919406B2 (ja) 2016-05-18
RS55761B1 (sr) 2017-07-31
RU2658137C2 (ru) 2018-06-19
CA2934927C (en) 2017-07-18
AU2014202820A1 (en) 2014-06-19
CA2857849A1 (en) 2011-10-27
MX348488B (es) 2017-06-15
IL246884A (en) 2017-08-31
CN105245885A (zh) 2016-01-13
WO2011133002A3 (ko) 2012-03-08
ES2602677T3 (es) 2017-02-22
BR122014030028A2 (pt) 2019-08-20
SMT201600448B (it) 2017-01-10
CN105120273B (zh) 2017-10-24
PH12014501185A1 (en) 2015-05-11
PT2947878T (pt) 2017-05-08
US9191672B2 (en) 2015-11-17
RU2549157C1 (ru) 2015-04-20
EP2945382A1 (en) 2015-11-18
DK2950534T3 (en) 2017-05-01
CN105120274A (zh) 2015-12-02
HRP20170724T1 (hr) 2017-07-28
IL246886A (en) 2017-12-31
DK2945382T3 (en) 2017-08-28
US20150222898A1 (en) 2015-08-06
PE20170652A1 (es) 2017-05-12
MX2012012333A (es) 2013-02-26
LT2950533T (lt) 2017-03-27
US20150222895A1 (en) 2015-08-06
MY163232A (en) 2017-08-30
CA2934942A1 (en) 2011-10-27
PE20170651A1 (es) 2017-05-12
CA2935176C (en) 2018-03-13
EP2563020A2 (en) 2013-02-27
IL233840A (en) 2017-12-31
RS55780B1 (sr) 2017-07-31
JP5928966B2 (ja) 2016-06-01
CA2934930C (en) 2018-12-11
ZA201208766B (en) 2013-08-28
MY179498A (en) 2020-11-09
IL222579A0 (en) 2012-12-31
EP2947877A1 (en) 2015-11-25
EP3197158B1 (en) 2019-06-26

Similar Documents

Publication Publication Date Title
ES2602677T3 (es) Aparato de codificación de imagen
ES2700623T3 (es) Aparato para decodificar una imagen
ES2696931T3 (es) Procedimiento para codificar un modo de intrapredicción
BR122014030029B1 (pt) Equipamento para a codificação de uma imagem
BR122014030028B1 (pt) Equipamento para a codificação de uma imagem