ES2620772T3 - Aparato de codificación de imagen - Google Patents

Aparato de codificación de imagen Download PDF

Info

Publication number
ES2620772T3
ES2620772T3 ES15175097.3T ES15175097T ES2620772T3 ES 2620772 T3 ES2620772 T3 ES 2620772T3 ES 15175097 T ES15175097 T ES 15175097T ES 2620772 T3 ES2620772 T3 ES 2620772T3
Authority
ES
Spain
Prior art keywords
block
intra prediction
transform
prediction mode
mode
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
ES15175097.3T
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=ES2620772(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 ES2620772T3 publication Critical patent/ES2620772T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection 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/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Abstract

Un aparato de codificación de imagen, comprendiendo el aparato: un determinador (110) de modo de codificación 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 (120) de transformada/cuantificación configurada para transformar y cuantificar un bloque residual para generar un bloque de transformada cuantificado; una unidad de cuantificación/transformada inversa (160) configurada para cuantificar de forma inversa y transformar de forma inversa el bloque de transformada cuantificado; y un codificador (130) de entropía configurado para codificar por entropía coeficientes de transformada cuantificados del bloque de transformada cuantificado, en el que los coeficientes de transformada cuantificados se dividen en una pluralidad de sub-bloques si se determina que un tamaño de un bloque de transformada es igual o mayor que 8 × 8 en una intra predicción, en el que se explora la pluralidad de sub-bloques, y se exploran coeficientes distintos de cero de cada sub-bloque, de acuerdo con un patrón de exploración, en el que dicho patrón de exploración para explorar la pluralidad de subbloques y para explorar los coeficientes distintos de cero de cada sub-bloque se determina mediante un modo de intra predicción del bloque de predicción para codificar por entropía los coeficientes distintos de cero explorados, en el que, cuando el modo de intra predicción es un modo horizontal, el patrón de exploración es un patrón de exploración vertical, en el que el modo de intra predicción se codifica en base a un modo de intra predicción superior de un bloque superior de un bloque actual y un modo de intra predicción izquierda de un bloque izquierdo del bloque actual y, cuando el bloque superior o el bloque izquierdo no se codifica en un modo de intra predicción, el modo de intra predicción superior o el modo de intra predicción izquierda se establece en un modo de CC.

Description

5
10
15
20
25
30
35
40
45
50
DESCRIPCION
Aparato de codificacion de imagen Campo tecnico
La presente invencion se refiere a un aparato y procedimiento de procesamiento de imagenes, mas en concreto, a un aparato para reducir la cantidad de senales residuales de una imagen y codificar por entrc^a las senales residuales.
Antecedentes de la tecnica
Para transmitir de forma eficiente una senal de imagen en movimiento a una baja tasa de datos, al tiempo que se mantiene una alta calidad de imagen, se han propuesto diversas tecnologfas de compresion digital de imagenes en movimiento. Estas tecnologfas de compresion de imagenes en movimiento incluyen H.261, Grupo de Expertos de Imagenes en Movimiento (MPEG)-2/H.262, H.263, MPEG-4, Codificacion Avanzada de Audio (AVC)/H.264, y asf sucesivamente. Las tecnologfas de compresion incluyen un esquema de transformada de coseno discreta (DCT), un esquema de compensacion de movimiento (MC), un esquema de cuantificacion, un esquema de codificacion por entropfa, y asf sucesivamente.
Para la codificacion de imagenes, cada imagen esta dividida en una pluralidad de fragmentos, y cada fragmento esta dividido en una pluralidad de bloques de codificacion de un tamano previamente determinado. Debido a que una imagen de una calidad de alta definicion (HD) o superior tiene muchas regiones planas, una compresion de imagenes se puede mejorar codificando la imagen con bloques de codificacion que son mas grandes que un macrobloque (MB).
Por lo tanto, se requiere una tecnica de prediccion novedosa y se requieren cambios en la codificacion de transformada, la codificacion por entropfa, la intra prediccion y la inter prediccion, debido a que el tamano de la unidad de codificacion aumenta para aumentar la relacion de compresion de imagenes sin aumentar la complejidad de la compresion de imagenes.
Malta Karczewicz y col., "Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11", (), URL:
http://wftp3.itu.int/av-arch/jctvc-site/2010_04_A_Dresden/JCTVC-A121.zip, (), XP055152381 [A] 1-7, Seccion 2.3.2: se refiere a una propuesta basada en soporte logico de JMKtA, en concreto, unos tamanos de bloque mayores que 16 * 16, una transformada direccional dependiente del modo para la intra codificacion, un filtrado de alta precision de luma, filtros de interpolacion de conmutacion de unica pasada con desplazamientos, un filtrado de lazo adaptativo basado en arbol cuaternario y un aumento en la profundidad de bits a nivel interno.
WINKEN (FRAUNHOFER HHI) M y col.: "Video coding technology proposal by Fraunhofer HHI", 1a REUNION DE JCT-VC; 15-4-2010 - 23-4-2010; Dresde; (JOINT COLLABORATIVE TEAM ON VIDEO CODING OF ISO/IEC JTC1/SC29/WG11 AND ITU-TSG.16), (), ISSN 0000-0049, XP030007557 [A] 1-7 pag. 17: se refiere a un algoritmo propuesto que esta basado en el enfoque de codificacion de video hnbrida usando una prediccion temporal y espacial seguida por codificacion por transformada de la codificacion residual y por entropfa.
Por lo tanto, el objeto de la invencion es prever un aparato mejorado para codificar una imagen.
Este objeto se consigue mediante la materia objeto de la reivindicacion independiente.
Las realizaciones preferentes se definen mediante las reivindicaciones dependientes.
La presente invencion esta dirigida a un aparato para codificar una imagen en movimiento y, mas en concreto, a un aparato para codificar de forma eficaz senales residuales transformadas de una imagen en movimiento teniendo un tamano previamente determinado o superior.
Un aspecto de la presente invencion proporciona un aparato para codificar una imagen en movimiento que incluye: un determinador de modo de codificacion configurado para dividir una imagen de entrada en unidades de codificacion y determinar un modo de prediccion de la unidad de codificacion y un tamano de un bloque de codificacion predictiva de la unidad de codificacion; una unidad de transformada/cuantificacion configurada para transformar y cuantificar un bloque residual entre el bloque de codificacion predictiva y un bloque de prediccion generado a traves de intra prediccion o inter prediccion; una unidad de cuantificacion/transformada inversa configurada para cuantificar de forma inversa y transformar de forma inversa el bloque de transformada cuantificado en un dominio de la frecuencia; un filtro de desbloqueo configurado para aplicar un procedimiento de filtracion de desbloqueo a datos de imagen recibidos de la unidad de descodificacion de cuantificacion/transformada inversa; un generador de bloques de prediccion configurado para generar el bloque de codificacion predictiva; y un codificador de entropfa configurado para codificar los coeficientes de transformada cuantificados a partir de la unidad de codificacion/cuantificacion de transformada, en el que, cuando un tamano de un bloque de transformada es igual o mas grande que un tamano previamente determinado, el codificador de entropfa divide los coeficientes de
5
10
15
20
25
30
35
40
45
50
transformada cuantificados en una pluralidad de subconjuntos y explora y codifica por entrcpa coeficientes de transformada cuantificados distintos de cero de cada subconjunto.
La invencion se expone en el conjunto adjunto de reivindicaciones; los ejemplos adicionales que se denominan realizaciones en la descripcion son ejemplos ilustrativos, no realizaciones que se reivindiquen en la presente solicitud.
Efectos ventajosos
La presente invencion posibilita mejorar la eficacia de codificacion reduciendo la cantidad de senales residuales de un bloque a codificar. Asimismo, al explorar de forma eficaz un coeficiente de transformada cuantificado diferente de 0 durante la codificacion por entropfa, el numero de bits requerido para la codificacion por entropfa esta minimizado de modo que se puede mejorar la eficacia de codificacion.
Descripcion de los dibujos
La figura 1 muestra una estructura de division en bloques de acuerdo con una realizacion ejemplar de la presente invencion.
La figura 2 ilustra un procedimiento de determinacion de un modo de codificacion de acuerdo con la presente invencion.
La figura 3 ilustra un aparato para codificar una imagen en movimiento de acuerdo con la presente invencion.
Las figuras 4 a 6 son diagramas que ilustran un procedimiento de division en bloques adaptativo de acuerdo con la presente invencion.
La figura 7 es un diagrama que ilustra un procedimiento de codificacion una senal residual.
Modo de la invencion
En lo sucesivo en la presente memoria, se describiran en detalle diversas realizaciones de la presente invencion con referencia a los dibujos adjuntos. No obstante, la presente invencion no esta limitada a las realizaciones ejemplares que se dan a conocer a continuacion, sino que se puede implementar en diversos tipos. Por lo tanto, son posibles muchas otras modificaciones y variaciones de la presente invencion y se debe entender que, dentro del ambito del concepto que se da a conocer, la presente invencion se puede poner en practica de una forma que no sea la que se ha descrito espedficamente.
Para la codificacion de imagenes, cada imagen esta dividida en una pluralidad de fragmentos, y cada fragmento esta dividido en una pluralidad de unidades de codificacion de un tamano previamente determinado. Debido a que una imagen de una calidad de alta definicion (HD) o superior tiene muchas regiones planas, una relacion de compresion de imagenes se puede mejorar codificando la imagen con unidades de codificacion que son mas grandes que un macrobloque (MB) que tiene un tamano de 16 * 16.
La unidad de codificacion de acuerdo con la presente invencion puede ser un bloque que tiene un tamano de 32 * 32 o un bloque que tiene un tamano de 64 * 64 y unos MB que tienen el tamano de 16 * 16. Asimismo, un bloque que tiene un tamano de 8 * 8 o inferior puede ser la unidad de codificacion. Para mayor comodidad, a la unidad de codificacion mas grande se refiere como un supermacrobloque (SMB). Un tamano del SMB se puede determinar de acuerdo con una informacion que indica un tamano de la unidad de codificacion mas pequena y una informacion de profundidad. La informacion de profundidad indica una diferencia entre un tamano del SMB y un tamano de la unidad de codificacion mas pequena.
Por lo tanto, la unidad de codificacion que se usara para codificar todas las imagenes de una secuencia de imagenes puede ser un SMB o un sub-bloque del SMB. Los tamanos admisibles de las unidades de codificacion se pueden designar por defecto o en una cabecera de secuencias. Cuando los tamanos admisibles de unidades de codificacion se designan en la cabecera de secuencias, los tamanos admisibles de las unidades de codificacion se designan de acuerdo con el tamano de la unidad de codificacion mas pequena y la informacion de profundidad.
Cada imagen o fragmento esta dividido en una pluralidad de unidades SMB. Cada SMB o sub-bloque del SMB esta intra codificado o inter codificado y descodificado.
Para posibilitar una descodificacion precisa de la unidad de codificacion (es decir, un SMB o un sub-bloque del SMB), un codificador debena anadir una informacion de tamano en un bloque de codificacion predictiva de la unidad de codificacion y una informacion de modo de prediccion que indica que la unidad de codificacion se ha codificado en el modo de intra prediccion o en el modo de inter prediccion en un flujo de bits. Para este fin, la informacion de modo de prediccion y la informacion que indica el tamano del bloque de codificacion predictiva debenan estar incluidas en el flujo de bits de la unidad de codificacion. El modo de prediccion vana de acuerdo con un tipo del fragmento.
5
10
15
20
25
30
35
40
45
50
55
Cuando el tipo del fragmento es intra (I), todos los bloques de codificacion predictiva en el fragmento estan intra predichos, y un tipo de prediccion de un bloque de codificacion predictiva se puede determinar de acuerdo con un tamano del bloque de codificacion predictiva. No obstante, cuando el tipo de fragmento es una prediccion unidireccional (P) o una prediccion bidireccional (B), un tipo de prediccion de un bloque de codificacion predictiva se puede determinar de acuerdo con una informacion de modo de prediccion y un tamano del bloque de codificacion predictiva. Por lo tanto, es preferible generar el tipo de prediccion del bloque de codificacion predictiva en base al tipo de fragmento, la informacion de modo de prediccion y la informacion que indica el tamano del bloque de codificacion predictiva, e insertar el tipo de prediccion generado en una cabecera de la unidad de codificacion.
Cuando el bloque de codificacion predictiva esta intra codificado, la informacion de modo de intra prediccion que se usa para la intra prediccion asf como el tipo de prediccion se tienen que transmitir a un descodificador.
Cuando el bloque de codificacion predictiva esta inter codificado, el bloque de codificacion predictiva se codifica por cualquiera de una prediccion unidireccional y una prediccion bidireccional. En el caso de una prediccion unidireccional, un flujo de bits debena incluir una informacion acerca de una imagen de referencia y una informacion de vector de movimiento que se usa para la prediccion asf como un tipo de prediccion del bloque de codificacion predictiva para la prediccion unidireccional. En el caso de la prediccion bidireccional, una cabecera del bloque de codificacion predictiva debena incluir una informacion acerca de dos imagenes de referencia y una informacion de vector de movimiento que se usa para la prediccion bidireccional asf como un tipo de prediccion del bloque para la prediccion bidireccional. La informacion de vector de movimiento puede incluir una informacion que indica un vector de movimiento residual y un predictor de vector de movimiento.
La figura 1 muestra una estructura de division jerarquica que ilustra bloques de codificacion predictiva admisibles para un SMB que tiene un tamano de 64 * 64 de acuerdo con una realizacion ejemplar de la presente invencion.
Cuando un SMB se usa como una unidad de codificacion, es preferible tener cuatro etapas de division de sub- bloques, tal como se muestra en la figura 1, a pesar de que la division en bloques no esta limitada a las cuatro etapas de division de sub-bloques. Cuando existen cuatro etapas de division de sub-bloques, se puede definir un total de 13 tipos de bloques predictivos (64 * 64, 64 * 32, 32 * 64, 32 * 32, 32 * 16, 16 * 32, 16 * 16, 16 * 8, 8 * 16, 8 * 8, 8 * 4, 4 * 8 y 4 * 4).
En el presente caso, puede que no existan datos a transmitir para bloques de codificacion inter predictiva que tienen un tamano mayor que un MB. Por lo tanto, es preferible recien anadir un modo MB64_SKIP cuando un tamano de un bloque de codificacion predictiva es de 64 * 64, y un modo MB32_SKIP cuando el tamano del bloque de codificacion predictiva es de 32 * 32. Para transmitir la informacion de modo al descodificador se puede usar una etiqueta MB64_SKIP_flag o una etiqueta MB32_SKIP_flag. Cuando los valores de estas etiquetas son 1, no existe dato alguno de transmision del bloque de codificacion predictiva correspondiente.
Mientras tanto, cuando no se codifican varios SMB sucesivos, una etiqueta MB64_SKIP_flag solo se puede insertar en un primer SMB, y se puede omitir en los siguientes SMB. En el presente caso, el numero de los SMB que se omiten de forma sucesiva se puede anadir al fragmento o al primer SMB. En concreto, cuando no se codifica la pluralidad de SMB sucesivos, una etiqueta SMB_SKIP_flag del primer SMB se establece en 1, y tambien se puede aplicar a varios SMB sucesivos en comun. En el presente caso, se puede anadir al fragmento una informacion que se corresponde con el numero de SMB que no se codifican sucesivamente (por ejemplo, un numero SMB_SKIP_number).
Cuando una unidad de codificacion tiene un tamano de 32 * 32, se puede usar como un bloque de codificacion predictiva un bloque que tiene un tamano de 32 * 32, de 32 * 16 o de 16 * 32 ademas de un bloque existente que tiene un tamano de 16 * 16, de 16 * 8, de 8 * 16, de 8 * 8, de 8 * 4, de 4 * 8 o de 4 * 4.
En un modo de inter prediccion, un tipo de prediccion (Mb32_type) de una unidad de codificacion puede indicar una particion de 32 * 32 cuando el tipo de prediccion es 0, una particion de 32 * 16 cuando el tipo de prediccion es 1, una particion de 16 * 32 cuando el tipo de prediccion es 2 y una particion de 16 * 16 cuando el tipo de prediccion es 3.
Cuando una unidad de codificacion se divide en cuatro unidades de subcodificacion, las cuatro unidades de subcodificacion se codifican y se transmiten en un orden de exploracion por tramas. En el presente caso, se puede transmitir un parametro de cuantificacion para cada unidad de codificacion y se puede transmitir solo una vez en una cabecera de una unidad de supercodificacion cuando el mismo parametro de cuantificacion se aplica a todas las unidades de subcodificacion. No obstante, cuando un parametro de cuantificacion se tiene que cambiar en una unidad de subcodificacion, solo se puede transmitir un valor de diferencia con respecto a un parametro de cuantificacion de la unidad de codificacion de capa superior o de la unidad de codificacion anterior del mismo nivel.
Cada unidad de subcodificacion se puede dividir usando un procedimiento de arbol cuaternario, y un patron de bloque codificado (cbp) y un coeficiente residual tambien se pueden transmitir usando el procedimiento de arbol cuaternario. Cuando se usa un cbp de 1 bit, un valor de cbp de 1 puede indicar que la unidad de codificacion tiene al menos un coeficiente diferente de 0, y un valor de cbp de 0 puede indicar que todos los coeficientes son 0.
5
10
15
20
25
30
35
40
45
50
55
La figura 2 ilustra un procedimiento de determinacion de un modo de codificacion cuando un tamano de un SMB es de 64 x 64 de acuerdo con la presente invencion.
Tal como se ilustra en la figura 2, cuando un SMB es un bloque de 64 x 64, un codificador determina si es, o no, posible omitir el bloque de 64 x 64, y determina un modo de OMISION (SKIP) como un modo de codificacion cuando es posible omitir el bloque de 64 x 64. En este momento, una etiqueta mb64_skip_flag se debena transmitir al descodificador. Cuando el bloque de 64 x 64 tiene datos que se tienen que codificar, pero no esta dividido en bloques de 32 x 32, el tamano de codificacion del SMB, que es de 64 x 64, 64 x 32 y 32 x 64 y una informacion acerca de si el SMB esta intra codificado o inter codificado, se insertan en una cabecera de SMB, y se genera un bloque de datos de SMB usando datos codificados.
Cuando el bloque de 64 x 64 tiene datos que se tienen que codificar y se divide en bloques de 32 x 32, se determina de forma similar si existen datos que se tienen que codificar en los bloques de 32 x 32 correspondientes. Cuando no existe dato alguno que se tiene que codificar en los bloques de 32 x 32 correspondientes, el modo de OMISION se determina como el modo de bloque de 32 x 32, y se transmite una etiqueta mb32_skip_flag al descodificador.
No obstante, cuando el bloque de 32 x 32 tiene datos que se tienen que codificar, pero no esta dividido en bloques de 16 x 16, el tamano de codificacion del bloque de 32 x 32, que es uno de 32 x 32, 32 x 16 y 16 x 32, y una informacion acerca de si los bloques de 32 x 32 estan intra codificados o inter codificados, se insertan en cabeceras de los bloques de 32 x 32 y se genera un bloque de datos usando datos codificados.
Cuando el bloque de 32 x 32 tiene datos que se tienen que codificar y se divide en bloques de 16 x 16, se determina si existen datos que se tienen que codificar en los bloques de 16 x 16 correspondientes. Cuando no existe dato alguno que se tiene que codificar en los bloques de 16 x 16 correspondientes, el modo de OMISION se determina como el modo de bloque de 16 x 16 y se transmite una etiqueta mb16_skip_flag al descodificador. Por otro lado, cuando existen datos que se tienen que codificar en los bloques de 16 x 16 correspondientes, el tamano de codificacion del bloque de 16 x 16, que es uno de 16 x 16, 16 x 8 y 8 x 16, y una informacion acerca de si el bloque de 16 x 16 esta intra codificado o inter codificado, se insertan en una cabecera del bloque de 16 x 16 y se genera un bloque de datos usando datos codificados.
Cuando se usan bloques que tienen una variedad de tamanos como esa, la informacion de tamano de bloque puede variar de acuerdo con cada nivel de secuencia, nivel de imagen, nivel de fragmento, SMB o unidad de subcodificacion del SMB.
La figura 3 ilustra un aparato para codificar una imagen en movimiento de acuerdo con la presente invencion.
Con respecto a la figura 3, un aparato para codificar una imagen en movimiento de acuerdo con la presente invencion incluye un determinador de modo de codificacion 110, una unidad 120 de transformada/cuantificacion, un codificador 130 de entropfa, un intra predictor 140, un compensador 150 de movimiento, un estimador 155 de movimiento, una unidad 160 de cuantificacion/transformada inversa, un filtro 170 de desbloqueo, un almacen 180 de imagenes, un sumador 185 y un sustractor 190.
El determinador de modo de codificacion 110 analiza una senal de video de entrada para dividir una imagen en unidades de codificacion, y determina un tamano de un bloque de codificacion predictiva y un modo de prediccion para cada unidad de codificacion. Asimismo, el determinador de modo de codificacion 110 envfa al sustractor 190 el bloque de codificacion predictiva que se corresponde con el tamano determinado.
La unidad 120 de transformada/cuantificacion determina un tamano de un bloque de transformada para transformar una senal residual recibida del sustractor 190. El tamano de un bloque de transformada puede ser igual o menor que el del bloque de codificacion predictiva, pero puede estar fijado de diferente manera en un modo inter. Dicho de otro modo, el tamano del bloque de transformada puede ser mayor que el del bloque de codificacion predictiva en el modo inter. En el presente caso, la unidad 120 de transformada/cuantificacion recibe multiples bloques residuales del sustractor 190 y genera un bloque de transformada que consiste en los multiples bloques residuales. Un tamano del bloque de transformada es igual o menor que el de la unidad de codificacion. La unidad 120 de transformada/cuantificacion realiza una transformada de coseno discreta (DCT) bidimensional (2D) en el bloque de transformada para generar coeficientes de transformada. La DCT puede ser una DCT de numeros enteros.
Asimismo, la unidad 120 de transformada/cuantificacion determina un tamano de etapa de cuantificacion que se usa para cuantificar los coeficientes de transformada, y cuantifica los coeficientes de transformada usando una matriz de cuantificacion determinada de acuerdo con el tamano de etapa de cuantificacion determinado y un modo de codificacion.
La unidad 160 de cuantificacion/transformada inversa cuantifica de forma inversa y transforma de forma inversa los coeficientes de cuantificacion cuantificados por la unidad de codificacion/cuantificacion de transformada 120, restableciendo de este modo un bloque residual en el dominio espacial a partir de un bloque residual transformado en el dominio de la frecuencia.
El filtro 170 de desbloqueo recibe datos de imagen que se cuantifican de forma inversa y se transforman de forma
5
10
15
20
25
30
35
40
45
50
inversa de la unidad 160 de cuantificacion/transformada inversa y realiza un procedimiento de filtrado para eliminar un efecto de bloqueo. El procedimiento de filtrado de desbloqueo se puede aplicar a un lfmite entre bloques de codificacion predictiva y entre bloques de transformada. El lfmite es un borde de una cuadncula que tiene un tamano previamente determinado o mas y el tamano previamente determinado puede ser de 8 * 8. El procedimiento de filtrado de desbloqueo incluye una etapa de determinar un lfmite a filtrar, una etapa de determinar una intensidad de filtrado de lfmite a aplicar al lfmite, una etapa de determinar si se aplica, o no, el filtro 170 de desbloqueo, y una etapa de seleccionar un filtro a aplicar al lfmite cuando se determina aplicar el filtro 170 de desbloqueo.
Si se aplica, o no, el filtro 170 de desbloqueo se determina de acuerdo con i) si la intensidad de filtrado de lfmite es, o no, mayor que 0 e ii) si un valor que indica la diferencia entre pfxeles de lfmite del bloque P y del bloque Q es, o no, menor que un primer valor de referencia determinado de acuerdo con un parametro de cuantificacion.
Pueden existir dos o mas filtros. Cuando un valor absoluto de una diferencia entre dos pfxeles adyacentes al lfmite de bloque es igual o mayor que un segundo valor de referencia, se selecciona un filtro debil. El segundo valor de referencia se determina mediante el parametro de cuantificacion y la intensidad de filtrado de lfmite.
El almacen 180 de imagenes recibe una imagen filtrada del filtro 170 de desbloqueo, almacena la imagen en unidades de imagen. La imagen puede ser una imagen de una trama o una imagen de un campo. El almacen 180 de imagenes tiene una memoria intermedia (no mostrada) que es capaz de almacenar una pluralidad de imagenes.
El estimador 155 de movimiento realiza una estimacion de movimiento usando al menos una imagen de referencia almacenada en el almacen 180 de imagenes, y emite un mdice de imagen de referencia que representa la imagen de referencia y un vector de movimiento.
El compensador 150 de movimiento extrae un bloque de prediccion que se corresponde con un bloque a codificar de la imagen de referencia que se usa para la estimacion de movimiento entre una pluralidad de imagenes de referencia almacenadas en el almacen 180 de imagenes de acuerdo con el mdice de imagen de referencia y la entrada de vector de movimiento del estimador 155 de movimiento y emite el bloque de prediccion extrafdo.
El intra predictor 140 realiza intra prediccion usando valores de pfxeles reconstruidos en la misma imagen. El intra predictor 140 recibe un bloque actual a codificar de forma predictiva, selecciona uno de un numero previamente determinado de modos de intra prediccion de acuerdo con un tamano del bloque actual y realiza una intra prediccion.
El codificador 130 de entropfa codifica por entropfa los coeficientes de cuantificacion cuantificados por la unidad 120 de transformada/cuantificacion, informacion de movimiento generada por el estimador 155 de movimiento, y asf sucesivamente. Los coeficientes de transformada cuantificados se convierten en informacion de transformada cuantificada de forma unidimensional (1D) mediante un procedimiento de exploracion previamente determinado y se codifican por entropfa.
Un procedimiento de intra prediccion se describira en lo sucesivo con referencia a la figura 3.
En primer lugar, el intra predictor 140 recibe informacion de posicion y tamano acerca de un bloque de codificacion a codificar del determinador de modo de codificacion 110.
A continuacion, el intra predictor 140 recibe pfxeles de referencia validos para determinar un modo de intra prediccion del bloque de codificacion predictiva actual del almacen 180 de imagenes. Los pfxeles de referencia ya han sido codificados y restaurados, y son adyacentes al bloque de codificacion predictiva actual (en lo sucesivo en la presente memoria se hace referencia al mismo como bloque actual). Cuando el bloque actual se coloca en un lfmite superior de la imagen actual, pfxeles adyacentes al lado superior del bloque actual no se definen. Cuando el bloque actual se coloca en un lfmite izquierdo de la imagen actual, pfxeles adyacentes al lado izquierdo del bloque actual no se definen. Asimismo, cuando el bloque actual se coloca en los lfmites superior o izquierdo del fragmento, pfxeles adyacentes a los lados superior o izquierdo no se definen.
Cuando no existe pixel alguno adyacente al lado izquierdo o superior del bloque actual o no existe pixel alguno que previamente se haya codificado y restaurado, tal como se ha mencionado en lo que antecede, se puede determinar un modo de intra prediccion del bloque actual usando solo pfxeles validos.
No obstante, los pfxeles de referencia no validos se pueden generar usando pfxeles adyacentes al bloque actual o pixel disponible. Por ejemplo, cuando pfxeles de un bloque superior no son validos, pfxeles en el lado superior se pueden generar usando uno o mas pfxeles de referencia disponibles en el lado izquierdo.
Mientras tanto, incluso cuando existen pfxeles en los lados superior o izquierdo del bloque actual, los pfxeles se pueden determinar como pfxeles no validos de acuerdo con un modo de codificacion de un bloque al que pertenecen los pfxeles. Por ejemplo, cuando un bloque, al que pertenecen pfxeles adyacentes al lado superior del bloque actual, se ha inter codificado y restaurado, los pfxeles se pueden determinar como pfxeles no validos. En el presente caso, se pueden generar pfxeles de referencia usando pfxeles de referencia de un bloque que tiene un modo intra.
5
10
15
20
25
30
35
40
45
50
55
A continuacion, el intra predictor 140 determina el modo de intra prediccion del bloque actual usando los p^xeles de referencia. El numero de modos de intra prediccion depende de un tamano del bloque.
De acuerdo con el tamano del bloque estan 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 (CC) o un modo plano.
Diferentes numeros de modos de intra prediccion se pueden asignar a bloques que tienen el mismo tamano. Para indicar que estan permitidos diferentes numeros de modos de intra prediccion, una informacion que indica el numero de modos de intra prediccion 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 codificacion. Es preferible insertar la informacion en una cabecera de secuencia o en una cabecera de imagen.
A continuacion, cuando se determina el modo de intra prediccion del bloque actual, se genera un bloque de prediccion del bloque actual. El bloque de prediccion se genera usando pfxeles de referencia incluyendo pfxeles generados o usando una combinacion lineal de los pfxeles de referencia en base al modo de intra prediccion del bloque actual. Por ejemplo, en un modo direccional de una direccion espedfica, se puede generar un modo de prediccion usando pfxeles de referencia en el lado superior del bloque actual y aquellos en el lado izquierdo del bloque actual.
Los pfxeles de referencia validos que se usan para generar el bloque de prediccion pueden ser pfxeles de referencia filtrados. Un filtro a aplicar a los pfxeles de referencia validos puede ser de un gran numero. Asimismo, la pluralidad de filtros se puede aplicar de forma adaptativa de acuerdo con un tamano del bloque actual y el modo de intra prediccion.
A continuacion, un bloque residual obtenido usando el bloque actual y el bloque de prediccion generado por el intra predictor 140 se codifican mediante la unidad 120 de transformada/cuantificacion y el codificador 130 de entropfa.
Mientras tanto, el modo de intra prediccion del bloque actual se codifica por separado. El modo de intra prediccion se puede codificar por el intra predictor 140, un codificador de modo de intra prediccion independiente (no mostrado) o el codificador 130 de entropfa.
El modo de intra prediccion del bloque actual se codifica usando modos de intra prediccion de un bloque superior y un bloque izquierdo del bloque actual.
En primer lugar, se derivan los modos de intra prediccion de los bloques izquierdo y superior del bloque actual. Cuando el bloque superior es de un numero grande, se establece, como un bloque superior del bloque actual, un bloque mas a la izquierda superior o un bloque que tiene el numero de modo mmimo. Asimismo, cuando el bloque izquierdo es de un numero grande, se establece, como un bloque izquierdo del bloque actual, un bloque mas alto a la izquierda o un bloque que tiene el numero de modo mmimo. Cuando no se codifica el bloque superior o el bloque izquierdo en un modo de intra prediccion, el modo de CC (modo numero 2) se puede establecer como un modo de intra prediccion del bloque superior o del bloque izquierdo.
A continuacion, cuando el numero de modo de intra prediccion del bloque superior o izquierdo es igual o mayor que el numero de modos de intra prediccion admisibles del bloque actual, el modo de intra prediccion del bloque superior o izquierdo se convierte en uno de los modos de intra prediccion admisibles para el bloque actual.
A continuacion, cuando el modo de intra prediccion del bloque actual es igual que uno de los modos de intra prediccion del bloque izquierdo y el modo de intra prediccion del bloque superior, una etiqueta que indica que el modo de intra prediccion del bloque actual es igual a uno del modo de intra prediccion del bloque izquierdo y del modo de intra prediccion del bloque superior, y una etiqueta que indica que uno de los modos de intra prediccion de los bloques superior e izquierdo se transmiten. En el presente caso, cuando los bloques izquierdo y superior del bloque actual tienen el mismo modo de intra prediccion, solo se puede transmitir la etiqueta que indica que el modo de prediccion intra del bloque actual es igual a uno del modo de intra prediccion del bloque izquierdo y del modo de intra prediccion del bloque superior. De forma similar, cuando solo uno de los modos de intra prediccion de los bloques superiores e izquierdos es valido e igual que el del bloque actual, solo se puede transmitir la etiqueta que indica que el modo de intra prediccion del bloque actual es igual a uno del modo de intra prediccion del bloque izquierdo y el modo de intra prediccion del bloque superior.
No obstante, cuando el modo de intra prediccion del bloque actual es diferente de los de los bloques izquierdos y superiores, se determina si el numero de modo de intra prediccion del bloque actual es menor, o no, que los de los bloques izquierdo y superior.
Cuando se determina que ambos numeros de modo de intra prediccion de los bloques izquierdo y superior del bloque actual son mayores que el numero de modo de intra prediccion del bloque actual, el modo de intra prediccion del bloque actual se determina como un modo de intra prediccion final. No obstante, cuando solo uno de los numeros de modo de intra prediccion de los bloques izquierdo y superior del bloque actual no es mayor que el numero de modo de intra prediccion del bloque actual, un modo de intra prediccion que tiene un numero de modo obtenido sustrayendo 1 del numero de modo de intra prediccion del bloque actual se determina como el modo de
5
10
15
20
25
30
35
40
45
50
55
intra prediccion final del bloque actual. Asimismo, cuando ninguno de los numeros de modo de prediccion intra de los bloques izquierdo y superior del bloque actual es mayor que el numero de modo de intra prediccion del bloque actual, un modo de intra prediccion que tiene un numero de modo obtenido sustrayendo 2 del numero de modo de intra prediccion del bloque actual se determina como el modo de intra prediccion final del bloque actual.
A continuacion, se codifica el modo de intra prediccion final del bloque actual. Usando diferentes tablas de codificacion de acuerdo con si el bloque superior del bloque actual tiene, o no, el mismo modo de intra prediccion que el bloque izquierdo del bloque actual, se codifica el modo de intra prediccion final del bloque actual. El modo de intra prediccion del bloque superior o del bloque izquierdo del bloque actual puede ser un modo de intra prediccion modificado. Dicho de otro modo, el modo de intra prediccion del bloque superior o del bloque izquierdo del bloque actual puede ser un modo de intra prediccion modificado por una tabla para poner en correspondencia modos de intra prediccion admisibles para el bloque superior y el bloque izquierdo con un numero previamente determinado de modos de intra prediccion. El numero previamente determinado puede ser 9 o 3.
A continuacion, se describe un procedimiento de codificacion de coeficiente de transformada cuantificado del codificador 130 de entropfa de la figura 3.
Los coeficientes de transformada cuantificados se codifican por entropfa usando codificacion de longitud variable adaptativa segun el contexto (CAVLCding) o codificacion aritmetica binaria adaptativa segun el contexto (CABAC). Cuando un tamano de un bloque de transformada se vuelve grande, existe una alta posibilidad de que sea necesario un gran numero de bits para explorar y codificar por entropfa coeficientes diferentes de 0. Por lo tanto, es preferible introducir un procedimiento de exploracion novedoso para reducir el numero de bits para un bloque de transformada que tienen un tamano igual o mayor que un tamano previamente determinado.
En primer lugar, se determina si se dividen, o no, coeficientes de transformada cuantificados en una pluralidad de subconjuntos. Depende de un tamano de bloque de transformada. Dicho de otro modo, cuando el tamano de un bloque de transformada es igual o mayor que un tamano previamente determinado, los coeficientes de transformada cuantificados se dividen en una pluralidad de subconjuntos. El tamano previamente determinado puede ser 8 * 8 o 16 * 16. La pluralidad de subconjuntos consiste en un subconjunto principal y uno o mas subconjuntos residuales. El subconjunto principal se coloca en un lado izquierdo superior incluyendo un coeficiente de CC, y los uno o mas subconjuntos residuales cubren una region diferente de la region que cubre el subconjunto principal.
A continuacion, cuando el tamano del bloque de transformada es igual o mayor que el tamano previamente determinado, los coeficientes de transformada cuantificados se dividen en un subconjunto principal y uno o mas subconjuntos residuales, y coeficientes de transformada cuantificados incluidos en cada subconjunto se exploran y se codifican. Los coeficientes de transformada cuantificados en el subconjunto se pueden explorar usando uno de una pluralidad de patrones de exploracion. Un patron de exploracion, en el que el numero de bits a codificar se vuelve el mmimo, se puede seleccionar de acuerdo con la distribucion de pfxeles distintos de cero de los coeficientes de transformada cuantificados en el subconjunto. La pluralidad de patrones de exploracion puede incluir una exploracion en zigzag, una exploracion vertical y una exploracion horizontal. Asimismo, se puede incluir una exploracion vertical u horizontal del Grupo de Expertos de Imagenes en Movimiento (MPEG)-4. Cuando se transmite un patron de exploracion para cada subconjunto, es necesario un gran numero de bits. Por lo tanto, se puede aplicar un patron de exploracion a una pluralidad de subconjuntos.
Mientras tanto, el patron de exploracion se puede seleccionar de forma adaptativa de acuerdo con el modo de prediccion y la direccion de intra prediccion. Por ejemplo, en el modo de inter prediccion es posible aplicar solo un patron de exploracion previamente determinado (por ejemplo, la exploracion en zigzag) o uno de la pluralidad de patrones de exploracion. En el caso anterior, la informacion de patron de exploracion no se tiene que transmitir al descodificador, a pesar de que, en el ultimo caso, la informacion de patron de exploracion se tiene que transmitir al descodificador. En el modo de intra prediccion, se puede seleccionar un patron de exploracion de acuerdo con la direccion de intra prediccion. Por ejemplo, es posible aplicar una exploracion horizontal en un modo de intra prediccion vertical, una exploracion vertical en un modo de intra prediccion horizontal, y una exploracion en zigzag en un modo de CC.
Un patron de exploracion a aplicar al subconjunto principal y a los uno o mas subconjuntos residuales puede ser un patron previamente determinado. El patron previamente determinado puede ser una exploracion en zigzag. Ademas de la exploracion en zigzag, la exploracion horizontal o la exploracion vertical se pueden aplicar a los subconjuntos. El patron de exploracion aplicado a los subconjuntos tambien se puede determinar de forma adaptativa de acuerdo con el modo de prediccion y la direccion de intra prediccion. Dicho de otro modo, en el modo de intra prediccion, un patron de exploracion previamente determinado se puede aplicar a los subconjuntos. En la intra prediccion, un patron de exploracion seleccionado por la direccion de intra prediccion se puede aplicar a los subconjuntos.
Puede ser eficaz explorar los coeficientes de transformada cuantificados en el subconjunto en una direccion inversa. Dicho de otro modo, los coeficientes de transformada cuantificados se pueden explorar desde el ultimo coeficiente distinto de cero del subconjunto en una direccion inversa de acuerdo con un patron de exploracion. De forma similar, la pluralidad de subconjuntos se exploran a partir de un subconjunto incluyendo el ultimo coeficiente distinto de cero del bloque de transformada a un subconjunto principal en una direccion inversa.
5
10
15
20
25
30
35
40
45
50
55
Mientras tanto, para la descodificacion por entrc^a correcta del descodificador, un codificador codifica informacion que es capaz de indicar una posicion del ultimo coeficiente distinto de cero en el bloque de transformada y una informacion que es capaz de indicar una posicion del ultimo coeficiente distinto de cero en cada subconjunto, y transmite la informacion codificada al descodificador. La informacion puede indicar una posicion del ultimo coeficiente distinto de cero en cada subconjunto. Asimismo, la informacion puede ser una informacion de puesta en correspondencia que consiste en etiquetas que indican si cada coeficiente de transformada es, o no, 0 y etiquetas que indican si el coeficiente distinto de cero es, o no, el ultimo coeficiente distinto de cero en el bloque de transformada. Un patron de exploracion para generar la informacion de puesta en correspondencia puede ser el mismo que el patron de exploracion en los subconjuntos.
En otro ejemplo de exploracion de coeficientes de transformada cuantificados del bloque de transformada, los coeficientes de transformada cuantificados de un bloque de transformada se pueden reorganizar usando un procedimiento de intercalado y se pueden convertir en una pluralidad de sub-bloques, y cada uno de los sub-bloques se puede explorar y codificar.
Mientras tanto, cuando una imagen tiene un lfmite en una direccion espedfica y se usa un modo de prediccion equivalente, se usan diferentes sub-bloques para datos similares en una parte de lfmite de movimiento, y se puede producir una sobrecarga innecesaria. En el presente caso, puede ser eficaz ademas dividir una unidad de codificacion en una direccion espedfica de acuerdo con una forma de la parte de lfmite de la imagen y realizar una estimacion de movimiento en cada region dividida.
Con referencia a las figuras 4 a 6, se describira un procedimiento para dividir de forma adaptativa segun la direccion un bloque teniendo en cuenta caractensticas de una imagen. En las figuras 4, 5 y 6, se describira una unidad de codificacion de 32 * 32 como un ejemplo. No obstante, el tamano de una unidad de codificacion no esta limitado a 32 * 32, y el procedimiento tambien se puede aplicar a un bloque de 64 * 64 o a un bloque de 16 * 16.
En un ejemplo del modo adaptativo mas simple, una unidad de codificacion se divide en dos bloques mediante una lmea recta para extraer una dependencia estadfstica de una region de prediccion en una topograffa local. Dicho de otro modo, una parte de lfmite de la imagen se pone en correspondencia con lmeas rectas y se divide.
Tal como se muestra en los dibujos, cuando existe un lfmite que atraviesa una imagen de un bloque de 32 * 32, una parte de lfmite que atraviesa la imagen se debena dividir en pequenos bloques para comprimir de forma eficiente la imagen de acuerdo con un procedimiento de division de imagenes convencional.
Por lo tanto, tal como se muestra en la figura 4, el bloque de 32 * 32 se debena dividir en al menos 10 bloques y se debena codificar. Por lo tanto, se debenan transmitir 10 vectores de movimiento a un descodificador junto con una informacion para representar la division de imagenes y, por lo tanto, es necesaria mucha informacion adicional que no sea informacion de imagen.
Mientras tanto, tal como se muestra en las figuras 5 o 6, cuando existe un lfmite que atraviesa la imagen del bloque de 32 * 32, el numero de elementos de informacion adicional a transmitir al descodificador se puede reducir de forma considerable poniendo en correspondencia el lfmite de imagen con al menos una lmea recta que indica el lfmite de imagen.
Por ejemplo, cuando el lfmite que atraviesa el bloque de 32 * 32 se pone en correspondencia con dos lmeas rectas, tal como se muestra en la figura 5, el bloque de 32 * 32 se divide en cuatro bloques de 16 * 16 y se pueden obtener lmeas rectas que ponen en correspondencia unos bloques de 16 * 16 primero y cuarto respectivos con un lfmite de bloque. En el presente caso, son necesarias seis regiones de division, y los vectores de movimiento a transmitir al descodificador se pueden reducir a seis.
De forma similar, cuando el lfmite que atraviesa el bloque se pone en correspondencia con una lmea recta, tal como se muestra en la figura 6, el bloque de 32 * 32 se divide en dos bloques, y solo un elemento de informacion de modo de bloque y dos vectores de movimiento se tienen que transmitir al descodificador.
Mientras tanto, cuando se divide un bloque usando una lmea recta, informacion acerca de la lmea recta que se usa se debena transmitir adicionalmente al descodificador. La informacion de lmea recta a transmitir se describira en lo sucesivo.
La informacion de lmea recta a transmitir se puede transmitir usando diversos procedimientos.
Un primer ejemplo es representar la informacion acerca de la lmea recta usando una distancia y un angulo con respecto a una posicion previamente determinada. En el presente caso, la posicion previamente determinada puede ser un pixel en la esquina superior izquierda o el centro del bloque. La distancia puede ser un valor entero o cuantificado. El angulo puede ser 0 a 180, y tambien puede ser un valor cuantificado.
Un segundo ejemplo es transmitir al descodificador valores de posicion de ambos extremos de la lmea recta que atraviesa el bloque. Los valores de posicion se pueden expresar como valores que indican como de lejos estan ambos extremos del pixel en la esquina superior izquierda del bloque al pasar alrededor del lfmite del bloque en el
5
10
15
20
25
30
35
40
45
50
55
sentido de las agujas del reloj empezando en la esquina superior izquierda. En el presente caso, cada uno de los extremos se puede representar como una posicion del pixel al pasar alrededor del lfmite en el sentido de las agujas del reloj, y el otro se puede representar como una posicion del pixel al pasar alrededor del lfmite en el sentido contrario al de las agujas del reloj, de modo que se puede expresar una informacion de lmea recta. En el presente caso, informacion acerca de lmeas rectas cerca de mas formas diversas se puede expresar usando un numero pequeno de bits.
Cuando existen bloques vecinos que ya se han dividido de forma adaptativa segun la direccion y ya se han codificado, es eficaz transmitir una informacion diferencial entre informacion de lmea recta en el bloque actual y una informacion de lmea recta en uno que se ha seleccionado de los bloques vecinos. Es mas preferible codificar informacion diferencial usando informacion de direccion en bloques divididos en la misma direccion que el bloque actual. La informacion de lmea recta o informacion diferencial en el bloque actual se puede expresar como un mdice 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 division adaptativa segun la direccion de acuerdo con un tamano de un bloque de codificacion predictiva. Debido a que el procedimiento de division adaptativa segun la direccion aplicado a un bloque de codificacion excesivamente pequeno puede aumentar la cantidad de informacion 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 codificacion predictiva de acuerdo con una forma de una parte de lfmite de una imagen se puede aplicar solo a direcciones espedficas limitadas a un numero previamente determinado. Por ejemplo, el procedimiento para dividir un bloque se puede limitar a cuatro direcciones de una direccion horizontal, una direccion vertical, una direccion diagonal ascendente y una direccion diagonal descendente, o dos direcciones de la direccion horizontal y la direccion vertical. El numero de casos de dividir el bloque en las direcciones espedficas puede variar de acuerdo con un tamano del bloque de codificacion predictiva. Por ejemplo, un bloque de codificacion predictiva que tiene un tamano de 32 * 32 se puede dividir en una direccion espedfica (por ejemplo, la direccion horizontal) usando siete procedimientos, y un bloque de codificacion predictiva que tienen un tamano de 16 * 16 se puede dividir usando tres procedimientos. Asimismo, independientemente del tamano del bloque de codificacion predictiva, es posible dividir el bloque de codificacion predictiva usando el mismo numero de procedimientos.
De acuerdo con la croma, el bloque de codificacion predictiva tambien se puede dividir en las mismas particiones, y todos los procedimientos siguientes se pueden aplicar tambien a la division. El bloque de codificacion predictiva que tiene respectivas regiones de division debena incluir en una cabecera una etiqueta que indica la presencia de un bloque de division, una informacion que indica como se ha realizado la division, e indices de imagen de referencia codificados a los que se hace referencia de acuerdo con respectivas regiones de division.
Cuando un bloque se predice de forma adaptativa segun la direccion, se debena realizar una estimacion de movimiento y una compensacion de movimiento en cada una de dos regiones divididas. Por lo tanto, un vector de movimiento se debena derivar de cada una de las regiones divididas, y una senal residual entre cada una de las regiones divididas y una region de referencia obtenida en base al vector de movimiento se debena derivar y codificar.
Una senal residual se puede codificar usando cualquiera de los procedimientos siguientes.
En primer lugar, una senal se puede derivar de cada una de dos regiones divididas de un bloque de codificacion predictiva, y, a continuacion, se pueden sumar las dos senales residuales para formar una senal residual de bloque y se pueden codificar por transformada. En el presente caso, es muy posible que exista una diferencia entre la distribucion global de senales residuales en las respectivas regiones divididas a lo largo de un lfmite y, por lo tanto, es preferible aplicar un filtro al lfmite.
En otro procedimiento, la codificacion 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 continuacion, a una transformada 1D vertical, y un bloque derecho inferior se reorganiza o se hace rotar 180 grados, tal como se muestra en el dibujo, y se somete a una transformada 1D horizontal y, a continuacion, a una transformada 1D vertical. En el presente caso, coeficientes residuales codificados por separado de acuerdo con las respectivas regiones de division se pueden transmitir al descodificador o se pueden combinar y transmitir.
En aun 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 region de division actual, la otra region de division que constituye el bloque se rellena con un valor de la region de division actual para constituir el bloque y, a continuacion, se somete a una codificacion de transformada 2D. El relleno puede ser un relleno horizontal (copiar horizontalmente una region no definida de una region definida) y un relleno vertical (copiar verticalmente una region no definida de una region definida). En el presente caso, es preferible realizar un relleno horizontal y, a continuacion, un relleno vertical. Asimismo, un pixel no definido adyacente a uno o mas pfxeles definidos se puede rellenar mediante una combinacion lineal de los pfxeles definidos. Asimismo, la direccionalidad puede ser dada de acuerdo
5
10
15
20
25
30
con una direccion de division de modo que cualquiera del relleno horizontal y del relleno vertical se puede realizar primero.
A continuacion, se describira la estimacion de vector de movimiento.
Cuando un bloque se divide en dos regiones usando una lmea 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 region de las regiones divididas puede seleccionar uno de los vectores de movimiento de bloques adyacentes como un predictor de vector de movimiento, y una segunda region puede seleccionar un vector de movimiento de la primera region como un predictor de vector de movimiento.
En un segundo procedimiento, una primera region de las regiones divididas puede seleccionar uno de los vectores de movimiento de bloques adyacentes como un predictor de vector de movimiento, y una segunda region puede seleccionar un vector de movimiento de la primera region como un predictor de vector de movimiento.
En un tercer procedimiento, cuando existe un bloque dividido de forma adaptativa segun la direccion de entre os bloques adyacentes a un bloque actual, un vector de movimiento del bloque dividido de forma adaptativa segun la direccion se usa como un vector de movimiento de referencia teniendo en cuenta la directividad de los bloques divididos. Por lo tanto, cuando existe una pluralidad de bloques divididos de forma adaptativa segun la direccion, vectores de movimiento en una secuencia previamente determinada o vectores de movimiento de bloques que tienen direcciones de division similares se pueden usar como vectores de movimiento de referencia.
En un cuarto procedimiento, una primera region de las regiones divididas puede establecer un vector de movimiento de uno de bloques adyacentes a la primera region como un predictor de vector de movimiento de la primera region, y una segunda region puede seleccionar cualquiera de los vectores de movimiento de bloques adyacentes a la
segunda region y un vector de movimiento de un bloque o una region de division en la misma posicion en una
imagen anterior como un predictor de vector de movimiento y codificar un vector de movimiento diferencial.
En el presente caso, se usa una lmea recta para la division en bloques. No obstante, tambien es posible dividir un
bloque en al menos dos regiones de division usando una informacion que consiste en al menos dos lmeas rectas, y la codificacion de las regiones divididas se puede realizar tal como se ha descrito en lo que antecede.
A pesar de que la invencion se ha mostrado y descrito con referencia a determinadas realizaciones ejemplares de la misma, los expertos en la materia entenderan que se pueden realizar diversos cambios con respecto a la forma y a los detalles en la misma sin apartarse del alcance de la invencion tal como se define mediante las reivindicaciones adjuntas.

Claims (6)

  1. 5
    10
    15
    20
    25
    30
    35
    REIVINDICACIONES
    1. Un aparato de codificacion de imagen, comprendiendo el aparato:
    un determinador (110) de modo de codificacion configurado para dividir una imagen de entrada en una pluralidad de unidades de codificacion;
    un intra predictor (140) configurado para generar un bloque de prediccion usando intra prediccion;
    una unidad (120) de transformada/cuantificacion configurada para transformar y cuantificar un bloque residual para generar un bloque de transformada cuantificado;
    una unidad de cuantificacion/transformada inversa (160) configurada para cuantificar de forma inversa y transformar de forma inversa el bloque de transformada cuantificado; y
    un codificador (130) de entropfa configurado para codificar por entropfa coeficientes de transformada cuantificados del bloque de transformada cuantificado,
    en el que los coeficientes de transformada cuantificados se dividen en una pluralidad de sub-bloques si se determina que un tamano de un bloque de transformada es igual o mayor que 8 * 8 en una intra prediccion,
    en el que se explora la pluralidad de sub-bloques, y se exploran coeficientes distintos de cero de cada sub-bloque, de acuerdo con un patron de exploracion, en el que dicho patron de exploracion para explorar la pluralidad de sub- bloques y para explorar los coeficientes distintos de cero de cada sub-bloque se determina mediante un modo de intra prediccion del bloque de prediccion para codificar por entropfa los coeficientes distintos de cero explorados, en el que, cuando el modo de intra prediccion es un modo horizontal, el patron de exploracion es un patron de exploracion vertical,
    en el que el modo de intra prediccion se codifica en base a un modo de intra prediccion superior de un bloque superior de un bloque actual y un modo de intra prediccion izquierda de un bloque izquierdo del bloque actual y, cuando el bloque superior o el bloque izquierdo no se codifica en un modo de intra prediccion, el modo de intra prediccion superior o el modo de intra prediccion izquierda se establece en un modo de Cc.
  2. 2. El aparato de la reivindicacion 1, en el que el codificador (130) de entropfa explora los coeficientes distintos de cero de cada sub-bloque en una direccion inversa a partir de un ultimo coeficiente distinto de cero de cada sub- bloque.
  3. 3. El aparato de la reivindicacion 1, en el que el codificador (130) de entropfa explora la pluralidad de sub-bloques en una direccion inversa a partir de un ultimo sub-bloque.
  4. 4. El aparato de la reivindicacion 1, en el que el codificador (130) de entropfa codifica posiciones de los coeficientes distintos de cero e informacion para identificar los coeficientes distintos de cero de cada sub-bloque.
  5. 5. El aparato de la reivindicacion 1, en el que, cuando el modo de intra prediccion es un modo vertical, el patron de exploracion es un patron de exploracion horizontal.
  6. 6. El aparato de la reivindicacion 1, en el que un patron de exploracion para explorar etiquetas que indican si cada coeficiente de transformada de cada sub-bloque es, o no, 0, es el mismo que el patron de exploracion para explorar los coeficientes distintos de cero de cada sub-bloque.
ES15175097.3T 2010-04-23 2011-04-22 Aparato de codificación de imagen Active ES2620772T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20100038158 2010-04-23
KR20100038158 2010-04-23

Publications (1)

Publication Number Publication Date
ES2620772T3 true ES2620772T3 (es) 2017-06-29

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
ES15175100.5T Active ES2618932T3 (es) 2010-04-23 2011-04-22 Aparato de codificación de imagen
ES15175114.6T Active ES2618917T3 (es) 2010-04-23 2011-04-22 Aparato de codificación de imagen
ES17160486T Active ES2746015T3 (es) 2010-04-23 2011-04-22 Aparato para decodificar una imagen
ES19174960T Active ES2897491T3 (es) 2010-04-23 2011-04-22 Aparato para decodificar una imagen
ES15175089.0T Active ES2632996T3 (es) 2010-04-23 2011-04-22 Aparato para codificar una imagen
ES15175097.3T Active ES2620772T3 (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

Family Applications Before (6)

Application Number Title Priority Date Filing Date
ES15175096.5T Active ES2602677T3 (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
ES15175114.6T Active ES2618917T3 (es) 2010-04-23 2011-04-22 Aparato de codificación de imagen
ES17160486T Active ES2746015T3 (es) 2010-04-23 2011-04-22 Aparato para decodificar una imagen
ES19174960T Active ES2897491T3 (es) 2010-04-23 2011-04-22 Aparato para decodificar una imagen
ES15175089.0T Active ES2632996T3 (es) 2010-04-23 2011-04-22 Aparato para codificar una imagen

Family Applications After (1)

Application Number Title Priority Date Filing Date
ES11772290.0T Active ES2546514T3 (es) 2010-04-23 2011-04-22 Aparato de codificación de imágenes

Country Status (28)

Country Link
US (11) US9100651B2 (es)
EP (8) EP2947878B1 (es)
JP (8) JP5688136B2 (es)
KR (10) KR20140057671A (es)
CN (11) CN103004197B (es)
AU (6) AU2011243334B2 (es)
BR (6) BR122014030029A2 (es)
CA (9) CA2797047C (es)
CY (6) CY1116723T1 (es)
DK (6) DK2945382T3 (es)
ES (8) ES2602677T3 (es)
HR (6) HRP20150964T1 (es)
HU (8) HUE046331T2 (es)
IL (6) IL222579A (es)
LT (5) LT2945382T (es)
MX (6) MX348487B (es)
MY (11) MY162153A (es)
PE (8) PE20170654A1 (es)
PH (5) PH12014501184B1 (es)
PL (8) PL2563020T3 (es)
PT (6) PT2950534T (es)
RS (6) RS55761B1 (es)
RU (7) RU2549157C1 (es)
SG (11) SG10201503177TA (es)
SI (6) SI2947878T1 (es)
SM (2) SMT201500244B (es)
WO (1) WO2011133002A2 (es)
ZA (1) ZA201208766B (es)

Families Citing this family (57)

* 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
EP2947878B1 (en) * 2010-04-23 2017-02-15 M&K Holdings Inc. Apparatus for encoding an image
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
US20120230418A1 (en) 2011-03-08 2012-09-13 Qualcomm Incorporated Coding of transform coefficients for 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
ES2487993B1 (es) 2011-09-09 2015-09-29 Kt Corporation Procedimiento de obtención de un vector temporal predictor de movimiento, y aparato que utiliza el procedimiento
US9787982B2 (en) 2011-09-12 2017-10-10 Qualcomm Incorporated Non-square transform units and prediction units in video coding
US9538184B2 (en) * 2011-09-14 2017-01-03 Samsung Electronics Co., Ltd. Method and device for encoding and decoding video
KR20130049523A (ko) * 2011-11-04 2013-05-14 오수미 인트라 예측 블록 생성 장치
KR20130050407A (ko) * 2011-11-07 2013-05-16 오수미 인터 모드에서의 움직임 정보 생성 방법
KR20130050149A (ko) * 2011-11-07 2013-05-15 오수미 인터 모드에서의 예측 블록 생성 방법
KR20130050404A (ko) * 2011-11-07 2013-05-16 오수미 인터 모드에서의 복원 블록 생성 방법
PL2869557T3 (pl) * 2012-06-29 2024-02-19 Electronics And Telecommunications Research Institute Sposób i urządzenie do kodowania/dekodowania obrazów
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
KR102445242B1 (ko) * 2014-03-19 2022-09-21 삼성전자주식회사 경계 필터링을 수반한 비디오 부호화 및 비디오 복호화 방법 및 장치
KR101663668B1 (ko) * 2014-06-27 2016-10-07 삼성전자주식회사 영상 패딩영역의 비디오 복호화 및 부호화 장치 및 방법
CN112218074A (zh) * 2014-10-20 2021-01-12 谷歌有限责任公司 连续预测域
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
WO2017043763A1 (ko) * 2015-09-10 2017-03-16 삼성전자 주식회사 부호화 장치, 복호화 장치, 그 부호화 및 복호화 방법
CN114222141A (zh) * 2016-05-28 2022-03-22 世宗大学校产学协力团 视频信号的解码方法及视频信号的解码装置
US20170347094A1 (en) * 2016-05-31 2017-11-30 Google Inc. Block size adaptive directional intra prediction
US11159812B2 (en) * 2016-08-31 2021-10-26 Kt Corporation Method and apparatus for processing video signal
KR20190045907A (ko) * 2016-09-16 2019-05-03 소니 주식회사 화상 처리 장치 및 화상 처리 방법
EP3300362A1 (en) * 2016-09-27 2018-03-28 Thomson Licensing Method for improved intra prediction when reference samples are missing
CN117041564A (zh) 2016-11-29 2023-11-10 成均馆大学校产学协力团 影像编码/解码方法、装置以及对比特流进行存储的记录介质
US10694202B2 (en) * 2016-12-01 2020-06-23 Qualcomm Incorporated Indication of bilateral filter usage in video coding
CN108933941A (zh) * 2017-05-26 2018-12-04 富士通株式会社 图像编码方法和装置以及图像解码方法和装置
CN107864379B (zh) * 2017-09-28 2021-07-02 珠海亿智电子科技有限公司 一种应用于视频编解码的压缩方法
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
US11277644B2 (en) 2018-07-02 2022-03-15 Qualcomm Incorporated Combining mode dependent intra smoothing (MDIS) with intra interpolation filter switching
BR112020026959A2 (pt) * 2018-07-02 2021-03-30 Huawei Technologies Co., Ltd. Aparelho e método para filtragem em codificação de vídeo
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
JP7418152B2 (ja) * 2018-12-17 2024-01-19 キヤノン株式会社 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法
CN111385572B (zh) * 2018-12-27 2023-06-02 华为技术有限公司 预测模式确定方法、装置及编码设备和解码设备
WO2020139061A1 (ko) * 2018-12-28 2020-07-02 인텔렉추얼디스커버리 주식회사 화면 간 예측 부호화 및 복호화 방법 및 장치
CN111416975B (zh) * 2019-01-08 2022-09-16 华为技术有限公司 预测模式确定方法和装置
WO2020145636A1 (ko) * 2019-01-10 2020-07-16 세종대학교 산학협력단 영상 부호화/복호화 방법 및 장치
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
CN110113614B (zh) * 2019-05-13 2022-04-12 格兰菲智能科技有限公司 图像处理方法及图像处理装置
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
CN112004088B (zh) * 2020-08-06 2024-04-16 杭州当虹科技股份有限公司 一种适用于avs2编码器的cu级qp分配算法
WO2023068731A1 (ko) * 2021-10-22 2023-04-27 엘지전자 주식회사 영상 디코딩 방법 및 그 장치

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 에스케이 텔레콤주식회사 적응적 더블 스캔 방법
JP4610195B2 (ja) * 2001-12-17 2011-01-12 マイクロソフト コーポレーション スキップマクロブロックコード化
CN101448162B (zh) * 2001-12-17 2013-01-02 微软公司 处理视频图像的方法
CN1265649C (zh) * 2002-01-24 2006-07-19 株式会社日立制作所 运动图像的编码方法、解码方法、编码装置及解码装置
KR100846778B1 (ko) * 2002-07-16 2008-07-16 삼성전자주식회사 복수개의 주사 패턴을 이용한 부호화 방법, 복호화 방법,및 그 장치
JP2004180064A (ja) * 2002-11-28 2004-06-24 Ricoh Co Ltd 情報圧縮装置および方法、ならびにそのプログラム
US7272567B2 (en) * 2004-03-25 2007-09-18 Zoran Fejzo Scalable lossless audio codec and authoring tool
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 삼성전자주식회사 엔트로피 코딩의 성능 향상 방법 및 장치, 상기 방법을이용한 비디오 코딩 방법 및 장치
KR100868476B1 (ko) * 2005-10-21 2008-11-12 한국전자통신연구원 적응적 스캐닝을 이용한 동영상 부호화/복호화 장치 및 그방법
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 한국전자통신연구원 잔여계수의 상관성에 따라 변환기를 선택적으로 이용한부호화/복호화 장치 및 그 방법
WO2008111511A1 (ja) * 2007-03-14 2008-09-18 Nippon Telegraph And Telephone Corporation 符号量推定方法、装置、そのプログラムおよび記録媒体
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 삼성전자주식회사 영상 부호화 방법 및 장치, 복호화 방법 및 장치
PL3691267T3 (pl) * 2010-04-13 2022-07-11 Ge Video Compression, Llc Kodowanie map istotności i bloków współczynników transformacji
EP2559166B1 (en) * 2010-04-13 2017-11-01 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Probability interval partioning encoder and decoder
EP2947878B1 (en) * 2010-04-23 2017-02-15 M&K Holdings Inc. Apparatus for encoding an image
US9215470B2 (en) * 2010-07-09 2015-12-15 Qualcomm Incorporated Signaling selected directional transform for video coding
KR101373814B1 (ko) * 2010-07-31 2014-03-18 엠앤케이홀딩스 주식회사 예측 블록 생성 장치
KR20120012385A (ko) * 2010-07-31 2012-02-09 오수미 인트라 예측 부호화 장치
KR20120016991A (ko) * 2010-08-17 2012-02-27 오수미 인터 프리딕션 방법
EP3125554B1 (en) * 2010-08-17 2018-08-01 M&K Holdings Inc. Apparatus for encoding an intra prediction mode
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
US20130343454A1 (en) * 2011-01-07 2013-12-26 Agency For Science, Technology And Research Method and an apparatus for coding an image
US20120230418A1 (en) * 2011-03-08 2012-09-13 Qualcomm Incorporated Coding of transform coefficients for 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
US20150222896A1 (en) 2015-08-06
CN105245884B (zh) 2018-02-02
SG10201503182WA (en) 2015-06-29
JP2016165125A (ja) 2016-09-08
RU2658148C2 (ru) 2018-06-19
SG10201503183TA (en) 2015-06-29
RU2014118774A (ru) 2015-05-27
ES2618917T3 (es) 2017-06-22
HUE046331T2 (hu) 2020-02-28
PT2950534T (pt) 2017-05-17
AU2014202819B2 (en) 2015-11-12
BR122014030026A2 (pt) 2019-08-13
BR112012026809A2 (pt) 2018-04-03
PT2947877T (pt) 2016-11-07
CA2857849A1 (en) 2011-10-27
SG10201503176SA (en) 2015-06-29
SG10201503178RA (en) 2015-06-29
PE20170652A1 (es) 2017-05-12
CY1118907T1 (el) 2018-01-10
ES2632996T3 (es) 2017-09-18
CN105120273B (zh) 2017-10-24
EP2947878A1 (en) 2015-11-25
JP2015122773A (ja) 2015-07-02
KR20160093107A (ko) 2016-08-05
MY163233A (en) 2017-08-30
PE20170654A1 (es) 2017-05-13
CN105245884A (zh) 2016-01-13
WO2011133002A3 (ko) 2012-03-08
US20150222899A1 (en) 2015-08-06
US9264718B2 (en) 2016-02-16
SG10201503185PA (en) 2015-06-29
LT2950534T (lt) 2017-03-10
MY162149A (en) 2017-05-24
JP2015039231A (ja) 2015-02-26
HRP20170726T1 (hr) 2017-08-11
WO2011133002A2 (ko) 2011-10-27
PE20170653A1 (es) 2017-05-13
PE20170649A1 (es) 2017-05-11
PT2950533T (pt) 2017-05-08
JP5919406B2 (ja) 2016-05-18
JP2015111914A (ja) 2015-06-18
CY1118908T1 (el) 2018-03-07
AU2011243334B2 (en) 2014-07-24
CA2857849C (en) 2020-02-11
US9237348B2 (en) 2016-01-12
PH12014501184A1 (en) 2015-05-11
CN105245883B (zh) 2017-11-10
EP3565247B1 (en) 2021-08-18
SI2563020T1 (sl) 2015-11-30
MX348488B (es) 2017-06-15
SG10201503179VA (en) 2015-06-29
CA2935202A1 (en) 2011-10-27
RS54213B1 (en) 2015-12-31
IL222579A0 (en) 2012-12-31
US20130022115A1 (en) 2013-01-24
JP5877236B2 (ja) 2016-03-02
MY179498A (en) 2020-11-09
MY162154A (en) 2017-05-24
AU2014202817A1 (en) 2014-06-19
DK2947878T3 (en) 2017-05-01
CA2934940C (en) 2018-01-16
PH12014501185A1 (en) 2015-05-11
HUE032615T2 (en) 2017-10-30
PE20142178A1 (es) 2014-12-20
AU2014202816B2 (en) 2015-11-12
CA2797047C (en) 2016-09-20
KR20160093105A (ko) 2016-08-05
US9232224B2 (en) 2016-01-05
PH12014501187B1 (en) 2015-05-11
RU2012149839A (ru) 2014-05-27
US9197896B2 (en) 2015-11-24
ES2546514T3 (es) 2015-09-24
CN104717498B (zh) 2017-09-19
MX348487B (es) 2017-06-15
RU2523963C2 (ru) 2014-07-27
PT2947878T (pt) 2017-05-08
KR20130061680A (ko) 2013-06-11
LT2947877T (lt) 2017-01-10
IL233840A0 (en) 2014-09-30
MX348484B (es) 2017-06-15
RS56193B1 (sr) 2017-11-30
KR20160093104A (ko) 2016-08-05
AU2014202816A1 (en) 2014-06-12
PE20170651A1 (es) 2017-05-12
JP2015111915A (ja) 2015-06-18
MY162153A (en) 2017-05-24
JP5928966B2 (ja) 2016-06-01
PL3565247T3 (pl) 2022-01-31
HUE026246T2 (en) 2016-06-28
EP2950533B1 (en) 2017-02-15
HRP20170729T1 (hr) 2017-07-28
IL222579A (en) 2016-11-30
CN105245887B (zh) 2017-09-19
RU2658137C2 (ru) 2018-06-19
HUE034345T2 (en) 2018-02-28
SI2950533T1 (sl) 2017-05-31
PL2945382T3 (pl) 2017-11-30
RU2014118777A (ru) 2015-11-27
ES2746015T3 (es) 2020-03-04
CA2935205C (en) 2018-01-30
EP2950534B1 (en) 2017-02-15
AU2014202820B2 (en) 2015-11-05
RU2658141C2 (ru) 2018-06-19
DK2950534T3 (en) 2017-05-01
CN104601998B (zh) 2016-08-17
JP5688136B2 (ja) 2015-03-25
EP3197158A1 (en) 2017-07-26
RU2656985C2 (ru) 2018-06-07
CA2935176A1 (en) 2011-10-27
SMT201600448B (it) 2017-01-10
SG10201503151YA (en) 2015-06-29
PE20170650A1 (es) 2017-05-11
CA2935202C (en) 2018-01-30
IL246884A (en) 2017-08-31
CY1116723T1 (el) 2017-03-15
SG10201503180SA (en) 2015-06-29
AU2011243334A1 (en) 2012-12-13
DK2947877T3 (en) 2017-01-23
US9191672B2 (en) 2015-11-17
DK2563020T3 (en) 2015-10-05
SI2947878T1 (sl) 2017-05-31
US20150222898A1 (en) 2015-08-06
PH12014501184B1 (en) 2015-05-11
CN105245877A (zh) 2016-01-13
ES2602677T3 (es) 2017-02-22
HUE032617T2 (en) 2017-10-30
JP5919404B2 (ja) 2016-05-18
PE20130929A1 (es) 2013-09-07
US20150222901A1 (en) 2015-08-06
RU2549157C1 (ru) 2015-04-20
KR101376136B1 (ko) 2014-03-21
CA2934930C (en) 2018-12-11
AU2014202820A1 (en) 2014-06-19
PL2947878T3 (pl) 2017-07-31
JP5919407B2 (ja) 2016-05-18
US9191673B2 (en) 2015-11-17
BR122014030030A2 (pt) 2019-08-20
CN105245885B (zh) 2017-11-10
PT2563020E (pt) 2015-10-09
KR20130131424A (ko) 2013-12-03
PL2950533T3 (pl) 2017-07-31
SG185371A1 (en) 2012-12-28
MX348485B (es) 2017-06-15
US20150222907A1 (en) 2015-08-06
JP5919405B2 (ja) 2016-05-18
PT2945382T (pt) 2017-07-11
AU2014202818A1 (en) 2014-06-19
CN104717498A (zh) 2015-06-17
CN104601998A (zh) 2015-05-06
AU2014202817B2 (en) 2015-11-12
KR101476117B1 (ko) 2014-12-24
US20150222902A1 (en) 2015-08-06
US9197895B2 (en) 2015-11-24
ES2897491T3 (es) 2022-03-01
HUE057125T2 (hu) 2022-05-28
BR122014030027A2 (pt) 2019-08-20
EP2947877A1 (en) 2015-11-25
EP3197158B1 (en) 2019-06-26
EP2947878B1 (en) 2017-02-15
IL246886A (en) 2017-12-31
JP6084730B2 (ja) 2017-02-22
BR122014030029A2 (pt) 2019-08-20
BR122014030028A2 (pt) 2019-08-20
PH12014501187A1 (en) 2015-05-11
US20150222908A1 (en) 2015-08-06
LT2947878T (lt) 2017-03-27
BR112012026809B1 (pt) 2022-03-29
CN105245883A (zh) 2016-01-13
EP2945382A1 (en) 2015-11-18
KR20140057671A (ko) 2014-05-13
PH12014501185B1 (en) 2015-05-11
MY157877A (en) 2016-07-26
IL246885B (en) 2018-01-31
IL233840A (en) 2017-12-31
RU2014118778A (ru) 2015-11-27
PH12014501183A1 (en) 2015-05-11
IL233841A0 (en) 2014-09-30
CA2797047A1 (en) 2011-10-27
EP3565247A1 (en) 2019-11-06
CN105120274A (zh) 2015-12-02
HRP20170724T1 (hr) 2017-07-28
CN105120274B (zh) 2017-09-19
PL2947877T3 (pl) 2017-06-30
ES2618932T3 (es) 2017-06-22
JP2015084599A (ja) 2015-04-30
CA2935176C (en) 2018-03-13
EP2563020A2 (en) 2013-02-27
JP2013526178A (ja) 2013-06-20
MX348486B (es) 2017-06-15
MY162148A (en) 2017-05-24
RS55829B1 (sr) 2017-08-31
LT2950533T (lt) 2017-03-27
US20150222895A1 (en) 2015-08-06
SMT201500244B (it) 2015-10-30
CN105245877B (zh) 2017-11-10
CA2934927A1 (en) 2011-10-27
PL2950534T3 (pl) 2017-07-31
US20150222894A1 (en) 2015-08-06
HUE031188T2 (hu) 2017-07-28
CA2934940A1 (en) 2011-10-27
ZA201208766B (en) 2013-08-28
DK2945382T3 (en) 2017-08-28
CA2934930A1 (en) 2011-10-27
RU2659470C2 (ru) 2018-07-02
US9197897B2 (en) 2015-11-24
PH12014501186B1 (en) 2015-05-11
MY162147A (en) 2017-05-24
CN105120273A (zh) 2015-12-02
MY157593A (en) 2016-06-30
KR20160093106A (ko) 2016-08-05
EP2945382B1 (en) 2017-06-07
CN105245885A (zh) 2016-01-13
CY1118877T1 (el) 2018-01-10
US20150222893A1 (en) 2015-08-06
EP2563020A4 (en) 2013-12-18
KR20140057669A (ko) 2014-05-13
CA2934942A1 (en) 2011-10-27
US9191674B2 (en) 2015-11-17
PH12014501186A1 (en) 2015-05-11
CA2934927C (en) 2017-07-18
CA2934942C (en) 2018-07-10
AU2014202818B2 (en) 2015-11-12
RS55261B1 (sr) 2017-02-28
RU2014118776A (ru) 2015-11-27
SI2950534T1 (sl) 2017-05-31
MY162152A (en) 2017-05-24
SG10201503177TA (en) 2015-06-29
EP2950533A1 (en) 2015-12-02
PL3197158T3 (pl) 2019-12-31
AU2014202819A1 (en) 2014-06-19
CA2935205A1 (en) 2011-10-27
HRP20170054T1 (hr) 2017-03-10
EP2947877B1 (en) 2016-10-12
HRP20150964T1 (hr) 2015-10-09
CN103004197B (zh) 2015-11-25
EP2950534A1 (en) 2015-12-02
IL233841A (en) 2017-10-31
MX2012012333A (es) 2013-02-26
RU2014118780A (ru) 2015-11-27
CN105245886B (zh) 2017-11-10
RU2014118779A (ru) 2015-11-27
PH12014501183B1 (en) 2015-05-11
SG10201503173PA (en) 2015-06-29
CN105245886A (zh) 2016-01-13
RS55761B1 (sr) 2017-07-31
CN105245887A (zh) 2016-01-13
DK2950533T3 (en) 2017-05-01
KR20130103803A (ko) 2013-09-24
CN103004197A (zh) 2013-03-27
CY1118425T1 (el) 2017-06-28
HUE034476T2 (en) 2018-02-28
LT2945382T (lt) 2017-09-11
SI2947877T1 (sl) 2017-01-31
MY163232A (en) 2017-08-30
US9100651B2 (en) 2015-08-04
RS55780B1 (sr) 2017-07-31
CY1119314T1 (el) 2018-02-14
HRP20171353T1 (hr) 2017-11-03
SI2945382T1 (sl) 2017-09-29
JP2015122774A (ja) 2015-07-02
KR20140057670A (ko) 2014-05-13
PL2563020T3 (pl) 2016-01-29
EP2563020B1 (en) 2015-08-12
US9264719B2 (en) 2016-02-16

Similar Documents

Publication Publication Date Title
ES2620772T3 (es) Aparato de codificación de imagen
ES2720652T3 (es) Aparato para codificar una imagen
ES2602779T3 (es) Procedimiento de descodificación de intra-predicciones
ES2575381T3 (es) Dispositivo de decodificación de intra-predicción
ES2693643T3 (es) Exploración dependiente de modo de coeficientes de un bloque de datos de vídeo