ES2632996T3 - Aparato para codificar una imagen - Google Patents

Aparato para codificar una imagen Download PDF

Info

Publication number
ES2632996T3
ES2632996T3 ES15175089.0T ES15175089T ES2632996T3 ES 2632996 T3 ES2632996 T3 ES 2632996T3 ES 15175089 T ES15175089 T ES 15175089T ES 2632996 T3 ES2632996 T3 ES 2632996T3
Authority
ES
Spain
Prior art keywords
block
transform
sub
intra prediction
blocks
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
ES15175089.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=***_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=ES2632996(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 ES2632996T3 publication Critical patent/ES2632996T3/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

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 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 (160) de cuantificación/transformada inversa configurada para cuantificar a la inversa y transformar a la inversa el bloque de transformada cuantificado; y un codificador (130) por 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 están divididos en una pluralidad de sub-bloques si se determina que un tamaño de un bloque de transformada es igual a o mayor que 8x8 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 un patrón de exploración para generar una pluralidad de banderas es el mismo que el patrón de exploración para explorar los coeficientes distintos de cero de cada sub-bloque, en el que cada bandera indica si un correspondiente coeficiente de transformada es 0 o no.

Description

5
10
15
20
25
30
35
40
45
50
DESCRIPCION
Aparato para codificar una imagen Campo tecnico
La presente invencion se refiere a un aparato y procedimiento de procesamiento de imagen, y mas particularmente, a un aparato para reducir la cantidad de senales residuales de una imagen y codificar por entropfa las senales residuales.
Tecnica anterior
Para transmitir de manera eficaz una senal de pelfcula a una baja tasa de datos mientras se mantiene alta calidad de imagen, se han propuesto diversas tecnologfas de compresion de pelfculas digitales. Estas tecnolog^as de compresion de peKcula incluyen H.261, Grupo de Expertos de Imagenes en Movimiento (MPEG)-2/H.262, H.263, MPEG-4, Codificacion de V^deo Avanzada (AVC)/H.264 y asf sucesivamente. Las tecnolog^as 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 se divide en una pluralidad de cortes, y cada corte se divide en una pluralidad de bloques de codificacion de un tamano predeterminado. Puesto que una imagen de un grado de alta definicion (HD) o superior tiene muchas areas planas, puede mejorarse una compresion de imagen codificando la imagen con bloques de codificacion que son mayores que un macrobloque (MB).
Por lo tanto, se requiere una nueva tecnica de prediccion y se requieren cambios en la codificacion por transformada, codificacion por entropfa, intra prediccion e inter prediccion a medida que el tamano de la unidad de codificacion aumenta para aumentar la relacion de compresion de imagen sin aumentar la complejidad de la compresion de la imagen.
Marta Karczewicz Y COL, “Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11”, (20100413), URL
http://wftp3.itu.int/av-arch/jctvc-site/2010_04_A_Dresden/JCTVC-A121.zip,
(20141111), XP055152381 [A] 1-7 seccion 2.3.2: se refiere a una propuesta en base al software JMKTA, en concreto, tamanos de bloque mayores que 16x16, de transformada direccional dependiente del modo para intra- codificacion, filtracion de alta precision de luminancia, filtros de interpolacion de conmutacion de pasada unica con desplazamientos, filtracion de bucle adaptativa basada en arbol cuadruple y aumento de profundidad de bits interna.
WINKEN (FRAUNHOFER HHI) M Y COL, “Video coding technology proposal by Fraunhofer HHI”, 1. JCT-VC MEETING; 15-4-2010 - 23-4-2010; DRESDEN; (JOINTCOLLABORATIVE TEAM ON VIDEO CODING OF ISO/IEC JTC1/SC29/WG11 AND ITU-TSG.16), (20100416), ISSN 0000-0049, XP030007557 [A] 1-7 p. 17: se refiere a un algoritmo propuesto en base al enfoque de codificacion de video tnbrida usando prediccion temporal y espacial seguida por codificacion por transformada de la codificacion residual y de entropfa.
Es por lo tanto el objeto de la invencion proporcionar un aparato mejorado para codificar una imagen.
Este objeto se resuelve mediante la materia objeto de la reivindicacion independiente.
Se definen realizaciones preferidas en las reivindicaciones dependientes.
La presente invencion se refiere a un aparato para codificar una pelfcula, y mas particularmente, a un aparato para codificar de manera eficaz senales residuales transformadas de una pelfcula que tiene un tamano predeterminado o mayor.
Un aspecto de la presente invencion proporciona un aparato para codificar una pelfcula, 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 a la inversa y transformar a la inversa el bloque de transformada cuantificado en un dominio de frecuencia; un filtro de desbloqueo configurado para aplicar un procedimiento de filtracion de desbloqueo a datos de imagen recibidos desde la unidad de decodificacion de cuantificacion/transformada inversa; un generador de bloque de prediccion configurado para generar el bloque de codificacion predictiva; y un codificador por entropfa configurado para codificar los coeficientes de transformada cuantificados desde la unidad de codificacion/cuantificacion de transformada, en el que, cuando un tamano de un bloque de transformada es igual a o mayor que un tamano predeterminado, el codificador por entropfa divide los coeficientes de transformada cuantificados en una pluralidad de subconjuntos, y explora y codifica por entropfa coeficientes de transformada cuantificados distintos de cero de cada subconjunto.
5
10
15
20
25
30
35
40
45
50
55
Efectos ventajosos
La presente invencion posibilita que se mejore la eficacia de la codificacion reduciendo la cantidad de senales residuales de un bloque a codificar. Tambien, explorando de manera eficaz un coeficiente de transformada cuantificado distinto de 0 durante la codificacion por entropfa, el numero de bits requeridos para la codificacion por entropfa se minimiza, de manera que puede mejorarse la eficacia de codificacion.
Descripcion de los dibujos
La Figura 1 muestra una estructura de division de 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 pelfcula de acuerdo con la presente invencion.
Las Figuras 4 a 6 son diagramas que ilustran un procedimiento de division de bloque adaptativa de acuerdo con la presente invencion.
La Figura 7 es un diagrama que ilustra un procedimiento de codificacion de una senal residual.
Modo para la invencion
En lo sucesivo, se describiran en detalle diversas realizaciones de la presente invencion con referencia a los dibujos adjuntos. Sin embargo, la presente invencion no esta limitada a las realizaciones ejemplares desveladas a continuacion, sino que puede implementarse en diversos tipos. Por lo tanto, son posibles muchas otras modificaciones y variaciones de la presente invencion y se ha de entender que dentro del alcance del concepto desvelado, la presente invencion puede ponerse en practica de otra manera a la que se ha descrito espedficamente.
La invencion se expone en el conjunto de reivindicaciones adjuntas; los ejemplos adicionales denominados realizaciones en la descripcion son ejemplos ilustrativos, no realizaciones reivindicadas en la presente solicitud.
Para codificacion de imagenes, cada imagen se divide en una pluralidad de cortes, y cada corte se divide en una pluralidad de unidades de codificacion de un tamano predeterminado. Puesto que una imagen de un grado de alta definicion (HD) o superior tiene muchas areas planas, puede mejorarse una relacion de compresion de imagen codificando la imagen con unidades de codificacion que son mayores que un macrobloque (MB) que tiene un tamano de 16x16.
La unidad de codificacion de acuerdo con la presente invencion puede ser un bloque que tiene un tamano de 32x32 o un bloque que tiene un tamano de 64x64 asf como MB que tienen el tamano de 16x16. Tambien, un bloque que tiene un tamano de 8x8 o menor puede ser la unidad de codificacion. Por conveniencia, la unidad de codificacion mas grande se denomina como un super macrobloque (SMB). Un tamano del SMB puede determinarse de acuerdo con informacion que indica un tamano de la unidad de codificacion mas pequena e 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 imagen puede ser el SMB o el sub-bloque del SMB. Los tamanos permisibles de las unidades de codificacion pueden designarse por defecto o en un encabezamiento de secuencia. Cuando los tamanos permisibles de las unidades de codificacion se designan en el encabezamiento de secuencia, los tamanos permisibles 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 corte se divide en una pluralidad de unidades de SMB. Cada SMB o el sub-bloque del SMB puede estar intra-codificado o inter-codificado y decodificarse.
Para posibilitar que la unidad de codificacion (es decir, un SMB o un sub-bloque del SMB) se decodifique de manera precisa, un codificador debena anadir informacion de tamano en un bloque de codificacion predictiva de la unidad de codificacion e informacion de modo de prediccion que indica que la unidad de codificacion se ha codificado en modo de intra prediccion o en modo de inter prediccion a 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 incluirse en el flujo de bits de la unidad de codificacion. El modo de prediccion vana de acuerdo con un tipo del corte.
Cuando el tipo del corte es intra (I), todos los bloques de codificacion predictiva en el corte estan intra predichos, y puede determinarse un tipo de prediccion de un bloque de codificacion predictiva de acuerdo con un tamano del bloque de codificacion predictiva. Sin embargo, cuando el tipo de corte es prediccion unidireccional (P) o prediccion bidireccional (B), puede determinarse un tipo de prediccion de un bloque de codificacion predictiva de acuerdo con 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 corte, la informacion de modo de prediccion y la informacion que indica el tamano del bloque de codificacion predictiva, e insertar el tipo de prediccion generada en un encabezamiento de la unidad de codificacion.
5
10
15
20
25
30
35
40
45
50
55
Cuando el bloque de codificacion predictiva esta intra-codificado, la informacion de modo de intra prediccion usada para intra prediccion asf como el tipo de prediccion es necesario que se transmita a un decodificador.
Cuando el bloque de codificacion predictiva esta inter-codificado, el bloque de codificacion predictiva se codifica mediante uno cualquiera de prediccion unidireccional y prediccion bidireccional. En el caso de prediccion unidireccional, un flujo de bits debena incluir informacion en una imagen de referencia e informacion de vector de movimiento usada para prediccion asf como un tipo de prediccion del bloque de codificacion predictiva para prediccion unidireccional. En el caso de prediccion bidireccional, un encabezamiento del bloque de codificacion predictiva debena incluir informacion sobre dos imagenes de referencia e informacion de vector de movimiento usada para prediccion bidireccional asf como un tipo de prediccion del bloque para prediccion bidireccional. La informacion del vector de movimiento puede incluir 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 permisibles para un SMB que tiene un tamano de 64x64 de acuerdo con una realizacion ejemplar de la presente invencion.
Cuando se usa un SMB como una unidad de codificacion, se prefiere tener cuatro etapas de division de sub-bloque como se muestra en la Figura 1, pero la division de bloque no esta limitada a las cuatro etapas de division de sub- bloque. Cuando hay cuatro etapas de division de sub-bloque, puede definirse un total de 13 tipos de bloque predictivo (64x64, 64x32, 32x64, 32x32, 32x16, 16x32, 16x16, 16x8, 8x16, 8x8, 8x4, 4x8 y 4x4).
En este punto, puede no haber datos a transmitirse para bloques de codificacion inter predictiva que tienen un tamano mayor que un MB. Por lo tanto, se prefiere anadir nuevamente un modo de salto MB64_SKIp cuando un tamano de un bloque de codificacion predictiva es 64x64, y un modo de salto MB32_SKIP cuando el tamano del bloque de codificacion predictiva es 32x32. Para transmitir la informacion de modo al decodificador, puede usarse una bandera MB64_SKIP_flag o una bandera MB32_SKIP_flag. Cuando los valores de estas banderas son 1, no hay datos de transmision del correspondiente bloque de codificacion predictiva.
Mientras tanto, cuando no se codifican varios SMB sucesivos, puede insertarse una bandera MB64_SKIP_flag en un primer SMB unicamente, y puede omitirse en los siguientes SMB. En este caso, el numero de SMB que se saltan sucesivamente puede anadirse al corte o al primer SMB. Espedficamente, cuando no se codifican varios de los SMB sucesivos, una bandera de SMB_SKIP_flag del primer SMB se establece a 1, y puede aplicarse tambien a varios SMB sucesivos en comun. En este caso, la informacion que corresponde al numero de los SMB que no se codifican sucesivamente (por ejemplo, un numero de SMB_SKIP_number) puede anadirse al corte.
Cuando una unidad de codificacion tiene un tamano de 32x32, el bloque que tiene un tamano de 32x32, 32x16 o 16x32 ademas del bloque existente que tiene un tamano de 16x16, 16x8, 8x16, 8x8, 8x4, 4x8 o 4x4 puede usarse como un bloque de codificacion predictiva.
En un modo de inter-prediccion, un tipo de prediccion (Mb32_type) de una unidad de codificacion puede indicar una particion de 32x32 cuando el tipo de prediccion es 0, una particion de 32x16 cuando el tipo de prediccion es 1, una particion de 16x32 cuando el tipo de prediccion es 2 y una particion de 16x16 cuando el tipo de prediccion es 3.
Cuando una unidad de codificacion se divide en cuatro sub-unidades de codificacion, las cuatro sub-unidades de codificacion se codifican y transmiten en un orden de exploracion por filas. En este caso, un parametro de cuantificacion puede transmitirse para cada unidad de codificacion, y puede transmitirse unicamente una vez en un encabezamiento de una super-unidad de codificacion cuando se aplica el mismo parametro de cuantificacion a todas las sub-unidades de codificacion. Sin embargo, cuando un parametro de cuantificacion necesita cambiarse en una sub-unidad de codificacion, unicamente puede transmitirse un valor de diferencia con respecto a un parametro de cuantificacion de la unidad de codificacion de capa superior o la unidad de codificacion anterior del mismo nivel.
Cada sub-unidad de codificacion puede dividirse usando un procedimiento de arbol cuadruple, y un patron de bloque codificado (cbp) y puede transmitirse tambien un coeficiente residual usando el procedimiento de arbol cuadruple. 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 distinto de 0, y un valor de cbp de 0 puede indicar que todos los coeficientes son 0.
La Figura 2 ilustra un procedimiento de determinacion de un modo de codificacion cuando un tamano de un SMB es 64x64 de acuerdo con la presente invencion.
Como se ilustra en la Figura 2, cuando un SMB es un bloque de 64x64, un codificador determina si es posible o no saltar el bloque de 64x64, y determina un modo de SALTO como un modo de codificacion cuando es posible saltar el bloque de 64x64. En este momento, debena transmitirse una bandera mb64_skip_flag al decodificador. Cuando el bloque de 64x64 tiene datos a codificarse pero no se divide en bloques de 32x32, el tamano de codificacion del SMB que es uno de 64x64, 64x32 y 32x64 y la informacion acerca de si el SMB esta intra-codificado o inter-codificado se inserta en un encabezamiento de SMB, y se genera un bloque de datos de SMB usando datos codificados.
Cuando el bloque de 64x64 tiene datos a codificarse y se divide en bloques de 32x32, se determina de manera analoga si hay datos a codificarse en los correspondientes bloques de 32x32. Cuando no hay datos a codificarse en
5
10
15
20
25
30
35
40
45
50
55
los correspondientes bloques de 32x32, el modo de SALTO se determina como el modo de bloque de 32x32, y se transmite una bandera mb32_skip_flag al decodificador.
Sin embargo, cuando el bloque de 32x32 tiene datos a codificarse pero no se divide en bloques de 16x16, el tamano de codificacion de los bloques de 32x32 que es uno de 32x32, 32x16 y 16x32 y la informacion acerca de si los bloques de 32x32 estan intra-codificados o inter-codificados se inserta en encabezamientos de los bloques de 32x32, y se genera un bloque de datos usando datos codificados.
Cuando el bloque de 32x32 tiene datos a codificarse y se divide en bloques de 16x16, se determina si hay datos a codificarse en los correspondientes bloques de 16x16. Cuando no hay datos a codificarse en los correspondientes bloques de 16x16, el modo de SALTO se determina como el modo de bloque de 16x16, y se transmite una bandera mbl6_skip_flag al decodificador. Por otra parte, cuando hay datos a codificarse en los correspondientes bloques de 16x16, el tamano de codificacion del bloque de 16x16 que es uno de 16x16, 16x8 y 8x16 y la informacion acerca de si el bloque de 16x16 esta intra-codificado o inter-codificado se inserta en un encabezamiento del bloque de 16x16, y se genera un bloque de datos usando datos codificados.
Cuando se usan bloques que tienen una diversidad de tamanos de este tipo, la informacion de tamano de bloque puede variar de acuerdo con cada nivel de secuencia, nivel de imagen, nivel de corte, SMB o subunidad de codificacion del SMB.
La Figura 3 ilustra un aparato para codificar una pelfcula de acuerdo con la presente invencion.
Haciendo referencia a la Figura 3, un aparato para codificar una pelfcula de acuerdo con la presente invencion incluye un determinador 110 de modo de codificacion, una unidad 120 de transformada/cuantificacion, un codificador 130 por 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 almacenamiento 180 de imagenes, un sumador 185 y un restador 190.
El determinador 110 de modo de codificacion 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. Tambien, el determinador 110 de modo de codificacion envfa el bloque de codificacion predictiva que corresponde al tamano determinado al restador 190.
La unidad 120 de transformada/cuantificacion determina un tamano de un bloque de transformada para transformar la senal residual recibida desde el restador 190. El tamano de un bloque de transformada puede ser igual a o menor que el del bloque de codificacion predictiva, pero puede establecerse de manera diferente en un inter modo. En otras palabras, el tamano del bloque de transformada puede ser mayor que el del bloque de codificacion predictiva en el inter modo. En este caso, la unidad 120 de transformada/cuantificacion recibe multiples bloques residuales desde el restador 190 y genera un bloque de transformada que consiste en los multiples bloques residuales. Un tamano del bloque de transformada es igual a 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.
Tambien, la unidad 120 de transformada/cuantificacion determina un tamano de etapa de cuantificacion usada 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 determinada y un modo de codificacion.
La unidad 160 de cuantificacion/transformada inversa cuantifica a la inversa y transforma a la inversa los coeficientes de cuantificacion cuantificados mediante la unidad 120 de codificacion/cuantificacion de transformada, restaurando de esta manera 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 a la inversa y se transforman a la inversa desde la unidad 160 de cuantificacion/transformada inversa y realiza un procedimiento de filtracion para eliminar un efecto de bloqueo. El procedimiento de filtracion de desbloqueo puede aplicarse 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 predeterminado o mayor y el tamano predeterminado puede ser 8x8. El procedimiento de filtracion de desbloqueo incluye una etapa de determinacion de un lfmite a filtrarse, una etapa de determinacion de una intensidad de filtracion de lfmite a aplicarse al lfmite, una etapa de determinacion de si aplicar o no el filtro 170 de desbloqueo, y una etapa de seleccion de un filtro a aplicarse al lfmite cuando se determina aplicar el filtro 170 de desbloqueo.
Se determina si aplicar o no el filtro 170 de desbloqueo de acuerdo con i) si la intensidad de filtracion de lfmite es o no mayor que 0 y ii) si un valor que indica la diferencia entre pfxeles de lfmite de bloque P y de 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 a o mayor que un segundo valor de referencia, se selecciona un filtro debil. El segundo valor de
5
10
15
20
25
30
35
40
45
50
referencia se determina mediante el parametro de cuantificacion y la intensidad de filtracion de Kmite.
El almacenamiento 180 de imagenes recibe la imagen filtrada a partir 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 almacenamiento 180 de imagenes tiene una memoria intermedia (no mostrada) que puede almacenar una pluralidad de imagenes.
El estimador 155 de movimiento realiza estimacion de movimiento usando al menos una imagen de referencia almacenada en el almacenamiento 180 de imagenes, y emite un mdice de imagenes de referencia que representa la imagen de referencia y un vector de movimiento.
El compensador 150 de movimiento extrae un bloque de prediccion que corresponde a un bloque a codificar desde la imagen de referencia usada para estimacion de movimiento entre una pluralidad de imagenes de referencia almacenadas en el almacenamiento 180 de imagenes de acuerdo con el mdice de imagenes de referencia y el vector de movimiento introducido desde el estimador 155 de movimiento, y emite el bloque de prediccion extrafdo.
El intra predictor 140 realiza intra-prediccion usando valores de pixel reconstruidos en la misma imagen. El intra predictor 140 recibe un bloque actual a codificarse de manera predictiva, selecciona uno de un numero predeterminado de modos de intra prediccion de acuerdo con un tamano del bloque actual, y realiza intra prediccion.
El codificador 130 por entropfa codifica por entropfa los coeficientes de cuantificacion cuantificados mediante la unidad 120 de transformada/cuantificacion, la informacion de movimiento generada mediante el estimador 155 de movimiento, y asf sucesivamente. Los coeficientes de transformada cuantificados se convierten en una informacion de transformada cuantificada unidimensional (1D) mediante un procedimiento de exploracion predeterminado y se codifican por entropfa.
Un procedimiento de intra prediccion se describira a continuacion con referencia a la Figura 3.
En primer lugar, el intra predictor 140 recibe informacion de posicion y tamano en un bloque de codificacion a codificarse desde el determinador 110 de modo de codificacion.
A continuacion, el intra predictor 140 recibe pfxeles de referencia validos para determinar un modo de intra prediccion del bloque de codificacion predictiva actual desde el almacenamiento 180 de imagenes. Los pfxeles de referencia ya se han codificado y restaurado, y estan adyacentes al bloque de codificacion predictiva actual (en lo sucesivo, denominado como el bloque actual). Cuando el bloque actual se situa en un lfmite superior de la imagen actual, los pfxeles adyacentes al lado superior del bloque actual no estan definidos. Cuando el bloque actual se situa en un lfmite izquierdo de la imagen actual, los pfxeles adyacentes al lado izquierdo del bloque actual no estan definidos. Tambien, cuando el bloque actual se situa en el lfmite superior o izquierdo del corte, los pfxeles adyacentes al lado superior o izquierdo no estan definidos.
Cuando no hay pfxeles adyacentes al lado izquierdo o superior del bloque actual o no hay pfxeles que se hayan codificado y restaurado previamente como se ha mencionado anteriormente, un modo de intra prediccion del bloque actual puede determinarse usando unicamente pfxeles validos.
Sin embargo, los pfxeles de referencia invalidos pueden generarse usando pfxeles adyacentes al bloque actual o pixel disponible. Por ejemplo, cuando los pfxeles de un bloque superior no son validos, los pfxeles en el lado superior pueden generarse usando uno o mas pfxeles de referencia disponibles en el lado izquierdo.
Mientras tanto, incluso cuando hay pfxeles en el lado superior o izquierdo del bloque actual, los pfxeles pueden determinarse como pfxeles invalidos de acuerdo con un modo de codificacion de un bloque al que pertenecen los pfxeles. Por ejemplo, cuando un bloque al que pertenecen los pfxeles adyacentes al lado superior del bloque actual se ha inter-codificado y restaurado, los pfxeles pueden determinarse como pfxeles invalidos. En este caso, pueden generarse pfxeles de referencia usando el pixel de referencia de un bloque que tiene intra modo.
A continuacion, el intra predictor 140 determina el modo de intra prediccion del bloque actual usando los pfxeles de referencia. El numero de los modos de intra prediccion depende de un tamano del bloque.
De acuerdo con el tamano del bloque, se permiten 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 planar.
Pueden asignarse diferentes numeros de los modos de intra prediccion a bloques que tienen el mismo tamano. Para indicar que se permiten diferentes numeros de los modos de intra prediccion, la informacion que indica el numero de los modos de intra prediccion puede insertarse en al menos uno de un encabezamiento de secuencia, encabezamiento de imagen, encabezamiento de corte y un encabezamiento de unidad de codificacion. Se prefiere insertar la informacion en un encabezamiento de secuencia o en un encabezamiento 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 que incluyen el pixel generado o usando una combinacion lineal de los pfxeles de referencia en base al modo de intra prediccion del
5
10
15
20
25
30
35
40
45
50
55
bloque actual. Por ejemplo, en un modo direccional de una direccion espedfica, puede generarse un modo de prediccion usando p^xeles de referencia en el lado superior del bloque actual y aquellos en el lado izquierdo del bloque actual.
Los pfxeles de referencia validos usados para generar el bloque de prediccion pueden ser pfxeles de referencia filtrados. Un filtro a aplicarse a los pfxeles de referencia validos puede ser diverso en numero. Tambien, la pluralidad de filtros puede aplicarse de manera 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 mediante el intra predictor 140 se codifican mediante la unidad 120 de transformada/cuantificacion y el codificador 130 por entropfa.
Mientras tanto, el modo de intra prediccion del bloque actual se codifica por separado. El modo de intra prediccion puede codificarse mediante el intra predictor 140, un codificador de modo de intra prediccion separado (no mostrado) o el codificador 130 por entropfa.
El modo de intra prediccion del bloque actual se codifica usando los 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 diverso en numero, un bloque superior mas a la izquierda o un bloque que tiene el mmimo numero de modo se establece como un bloque superior del bloque actual. Tambien, cuando el bloque izquierdo es diverso en numero, un bloque izquierdo mas superior o un bloque que tiene el mmimo numero de modo se establece como un bloque izquierdo del bloque actual. Cuando el bloque superior o el bloque izquierdo no se codifican en modo de intra prediccion, el modo CC (numero de modo 2) puede establecerse como un modo de intra prediccion del bloque superior o el bloque izquierdo.
A continuacion, cuando el numero de modo de intra prediccion del bloque superior o izquierdo es igual a o mayor que el numero de modos de intra prediccion permisibles del bloque actual, el modo de intra prediccion del bloque superior o izquierdo se convierte en uno de los modos de intra prediccion permitidos para el bloque actual.
A continuacion, cuando 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, se transmite una bandera 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, y una bandera que indica uno de los modos de intra prediccion de los bloques superior e izquierdo. En este caso, cuando los bloques izquierdo y superior del bloque actual tienen el mismo modo de intra prediccion, unicamente puede transmitirse la bandera 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. Analogamente, cuando unicamente uno de los modos de intra prediccion de los bloques superior e izquierdo es valido e igual al de el del bloque actual, unicamente puede transmitirse la bandera que indica el modo de intra prediccion del bloque actual que es igual a uno del modo de intra prediccion del bloque izquierdo y el modo de intra prediccion del bloque superior.
Sin embargo, cuando el modo de intra prediccion del bloque actual es diferente de aquellos de los bloques izquierdo y superior, se determina si el numero del modo de intra prediccion del bloque actual es o no menor que aquellos de los bloques izquierdo y superior.
Cuando se determina que tanto los numeros del modo de intra prediccion de los bloques izquierdo como superior del bloque actual son mayores que el numero de modo de intra prediccion del bloque actual, se determina el modo de intra prediccion del bloque actual como un modo de intra prediccion final. Sin embargo, cuando unicamente 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, se determina un modo de intra prediccion que tiene un numero de modo obtenido restando 1 del numero de modo de intra prediccion del bloque actual como el modo de intra prediccion final del bloque actual. Tambien, cuando ninguno de los numeros de modo de intra prediccion de los bloques izquierdo y superior del bloque actual es mayor que el numero de modo de intra prediccion del bloque actual, se determina un modo de intra prediccion que tiene un numero de modo obtenido restando 2 del numero de modo de intra prediccion del bloque actual 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 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 el bloque izquierdo del bloque actual puede ser un modo de intra prediccion modificado. En otras palabras, el modo de intra prediccion del bloque superior o el bloque izquierdo del bloque actual puede ser un modo de intra prediccion modificado mediante una tabla para mapear modos de intra prediccion permisibles para el bloque superior y el bloque izquierdo a un numero predeterminado de los modos de intra prediccion. El numero predeterminado puede ser 9 o 3.
5
10
15
20
25
30
35
40
45
50
55
Un procedimiento de codificacion de coeficiente de transformada cuantificado del codificador 130 por entrcpa de la Figura 3 se describira a continuacion.
Los coeficientes de transformada cuantificados se codifican por entropfa usando codificacion adaptativa segun el contexto de longitud variable (CAVLC) o codificacion binaria aritmetica adaptativa segun contexto (CABAC). Cuando un tamano de bloque de transformada se hace grande, hay una alta posibilidad de que se requiera explorar un gran numero de bits y codificar por entropfa coeficientes distintos de 0. Por lo tanto, se prefiere introducir un nuevo procedimiento de exploracion para reducir el numero de bits para un bloque de transformada que tiene un tamano igual a o mayor que un tamano predeterminado.
En primer lugar, se determina si dividir o no coeficientes de transformada cuantificados en una pluralidad de subconjuntos. Depende de un tamano de bloque de transformada. En otras palabras, cuando el tamano de un bloque de transformada es igual a o mayor que un tamano predeterminado, los coeficientes de transformada cuantificados se dividen en una pluralidad de subconjuntos. El tamano predeterminado puede ser 8x8 o 16x16. La pluralidad de subconjuntos consiste en un subconjunto principal y uno o mas subconjuntos residuales. El subconjunto principal se situa en un lado superior izquierdo que incluye un coeficiente de CC, y el uno o mas subconjuntos residuales cubren el area distinta al area que cubre el subconjunto principal.
A continuacion, cuando el tamano del bloque de transformada es igual a o mayor que el tamano predeterminado, los coeficientes de transformada cuantificados se dividen en un subconjunto principal y uno o mas subconjuntos residuales, y los coeficientes de transformada cuantificados incluidos en cada subconjunto se exploran y codifican. Los coeficientes de transformada cuantificados en el subconjunto pueden explorarse usando uno de una pluralidad de patrones de exploracion. Un patron de exploracion en el que el numero de bits a codificar se hace el mmimo puede seleccionarse 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 exploracion en zigzag, exploracion vertical y exploracion horizontal. Tambien, puede incluirse la exploracion vertical o exploracion horizontal del Grupo de Expertos de Imagenes en Movimiento (MPEG)-4. Cuando se transmite un patron de exploracion para cada subconjunto, se requiere un numero grande de bits. Por lo tanto puede aplicarse un patron de exploracion a una pluralidad de subconjuntos.
Mientras tanto, el patron de exploracion puede seleccionarse de manera 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 unicamente un patron de exploracion predeterminado (por ejemplo, exploracion en zigzag) o uno de la pluralidad de patrones de exploracion. En el primer caso, la informacion de patron de exploracion no necesita transmitirse al decodificador, pero en el ultimo caso, la informacion de patron de exploracion es necesario que se transmita al decodificador. En el modo de intra prediccion, puede seleccionarse un patron de exploracion de acuerdo con la direccion de intra-prediccion. Por ejemplo, es posible aplicar exploracion horizontal en un modo de intra prediccion vertical, exploracion vertical en un modo de intra prediccion horizontal, y exploracion en zigzag en un modo de CC.
Un patron de exploracion a aplicarse al subconjunto principal y el uno o mas subconjuntos residuales puede ser un patron predeterminado. El patron predeterminado puede ser exploracion en zigzag. Ademas de la exploracion en zigzag, puede aplicarse la exploracion horizontal o la exploracion vertical a los subconjuntos. El patron de exploracion aplicado a los subconjuntos puede aplicarse de manera adaptativa determinada de acuerdo con el modo de prediccion y la direccion de intra prediccion. En otras palabras, en el modo de inter prediccion, un patron de exploracion predeterminado puede aplicarse a los subconjuntos. En la intra prediccion, un patron de exploracion seleccionado mediante la direccion de intra prediccion puede aplicarse a los subconjuntos.
Puede ser eficaz explorar los coeficientes de transformada cuantificados en el subconjunto en una direccion inversa. En otras palabras, los coeficientes de transformada cuantificados pueden explorarse desde el ultimo coeficiente distinto de cero del subconjunto en una direccion inversa de acuerdo con un patron de exploracion. Analogamente, la pluralidad de subconjuntos se exploran a partir de un subconjunto que incluye el ultimo coeficiente distinto de cero del bloque de transformada a un subconjunto principal en una direccion inversa.
Mientras tanto, para la decodificacion por entropfa correcta del decodificador, un codificador codifica informacion que puede indicar una posicion del ultimo coeficiente distinto de cero en el bloque de transformada e informacion que puede indicar una posicion del ultimo coeficiente distinto de cero en cada subconjunto, y transmite la informacion codificada al decodificador. La informacion puede indicar una posicion del ultimo coeficiente distinto de cero en cada subconjunto. Tambien, la informacion puede ser informacion de mapa que consiste en banderas que indican si cada uno de los coeficientes de transformada es 0 o no y banderas que indican si el coeficiente distinto de cero es el ultimo coeficiente distinto de cero o no en el bloque de transformada. Un patron de exploracion para generar la informacion de mapa puede ser el mismo que el patron de exploracion en los subconjuntos.
En otro ejemplo para explorar los coeficientes de transformada cuantificados del bloque de transformada, los coeficientes de transformada cuantificados de un bloque de transformada pueden reorganizarse usando un procedimiento de intercalacion y convertirse en una pluralidad de sub-bloques, y cada uno de los sub-bloques puede explorarse y codificarse.
5
10
15
20
25
30
35
40
45
50
55
Mientras tanto, cuando una imagen tiene un Ifmite en una direccion espedfica y se usa un modo de prediccion equivalente, se usan diferentes sub-bloques para datos similares en una porcion de Kmite de movimiento, y puede tener lugar tara innecesaria. En este caso, puede ser adicionalmente eficaz dividir una unidad de codificacion en una direccion espedfica de acuerdo con una forma de la porcion de lfmite de la imagen y realizar estimacion de movimiento en cada area dividida.
Con referencia a las Figuras 4 a 6, se describira un procedimiento de division de manera adaptativa a la direccion en un bloque teniendo en cuenta las caractensticas de una imagen. En las Figuras 4, 5 y 6, se describira una unidad de codificacion de 32x32 como un ejemplo. Sin embargo, el tamano de una unidad de codificacion no esta limitado a 32x32, y el procedimiento puede aplicarse tambien a un bloque de 64x64 o a un bloque de 16x16.
En un ejemplo del modo adaptativo mas sencillo, una unidad de codificacion se divide en dos bloques mediante una lmea recta para extraer la dependencia estadfstica de un area de prediccion en topograffa local. En otras palabras, una porcion de lfmite de la imagen se hace coincidir a lmeas rectas y se divide.
Como se muestra en los dibujos, cuando hay un lfmite que atraviesa una imagen de un bloque de 32x32, una porcion de lfmite que atraviesa la imagen debena dividirse en bloques pequenos para comprimir de manera eficaz la imagen de acuerdo con un procedimiento de division de imagen convencional.
Por lo tanto, como se muestra en la Figura 4, un bloque de 32x32 debena dividirse en al menos 10 bloques y codificarse. Por lo tanto, debenan transmitirse 10 vectores de movimiento a un decodificador junto con informacion para representar la division de imagen, y por lo tanto se requiere mucha informacion adicional distinta de la informacion de imagen.
Mientras tanto, como se muestra en la Figura 5 o 6, cuando hay un lfmite que atraviesa la imagen del bloque de 32x32, el numero de piezas de informacion adicional a transmitirse al decodificador puede reducirse significativamente haciendo coincidir el lfmite de imagen con al menos una lmea recta que indica el ifmite de imagen.
Por ejemplo, cuando el lfmite que atraviesa el bloque de 32x32 se hace coincidir a dos lmeas rectas como se muestra en la Figura 5, el bloque de 32x32 se divide en cuatro bloques de 16x16, y pueden obtenerse las lmeas rectas que coinciden respectivamente con el primer y cuarto bloques de 16x16 a un lfmite de bloque. En este caso, se requieren seis areas de division, y los vectores de movimiento a transmitirse al decodificador pueden reducirse a seis.
Analogamente, cuando el lfmite que atraviesa el bloque se hace coincidir a una lmea recta como se muestra en la Figura 6, el bloque de 32x32 se divide en dos bloques, y unicamente necesita transmitirse una pieza de la informacion de modo de bloque y dos vectores de movimiento al decodificador.
Mientras tanto, cuando un bloque se divide usando una lmea recta, la informacion sobre la lmea recta usada debena transmitirse adicionalmente al decodificador. La informacion de lmea recta a transmitirse se describira a continuacion.
La informacion de lmea recta a transmitirse puede transmitirse usando diversos procedimientos.
Un primer ejemplo es representar la informacion en la lmea recta usando una distancia y angulo con respecto a una posicion predeterminada. En este caso, la posicion predeterminada puede ser un pixel en la esquina superior izquierda o en el centro del bloque. La distancia puede ser un numero entero o un valor cuantificado. El angulo puede ser de 0 a 180, y puede ser tambien un valor cuantificado.
Un segundo ejemplo es transmitir valores de posicion de ambos extremos de la lmea recta que atraviesa el bloque al decodificador. Los valores de posicion pueden expresarse como valores que indican como de lejos estan ambos de los extremos desde el pixel en la esquina superior izquierda del bloque mientras van alrededor del lfmite del bloque en el sentido de las agujas del reloj comenzando en la esquina superior izquierda. En este caso, cualquiera de los extremos puede representarse como una posicion desde el pixel mientras va alrededor del lfmite en el sentido de las agujas del reloj, y el otro puede representarse como una posicion desde el pixel mientras va alrededor del lfmite en el sentido contrario de las agujas del reloj, de manera que puede expresarse la informacion de la lmea recta. En este caso, la informacion sobre lmeas rectas cercanas a mas formas diversas puede expresarse usando un pequeno numero de bits.
Cuando hay bloques vecinos que se han dividido de manera adaptativa en direccion y ya codificado, es eficaz transmitir informacion diferencial entre la informacion de lmea recta en el bloque actual e informacion de lmea recta en uno seleccionado de los bloques vecinos. Es mas preferible codificar la informacion diferencial usando informacion de direccion en bloques divididos en la misma direccion que el bloque actual. La informacion de lmea recta o la informacion diferencial en el bloque actual puede expresarse como un mdice correspondiente, que puede codificarse en longitud variable y transmitirse.
Mientras tanto, si aplicar o no el procedimiento de division de direccion adaptativa puede determinarse de acuerdo con un tamano de un bloque de codificacion predictiva. Puesto que el procedimiento de division de direccion
5
10
15
20
25
30
35
40
45
50
55
adaptativa aplicado a un bloque de codificacion excesivamente pequeno puede aumentar la cantidad de informacion y complejidad a transmitirse, es preferible no aplicar el procedimiento.
Como se muestra en la Figura 7, el procedimiento de dividir un bloque de codificacion predictiva de acuerdo con una forma de una porcion de lfmite de una imagen puede aplicarse unicamente a direcciones espedficas limitadas a un numero predeterminado. Por ejemplo, el procedimiento de dividir un bloque puede limitarse a cuatro direcciones de una direccion horizontal, una direccion vertical, una direccion diagonal hacia arriba y una direccion diagonal hacia abajo, o dos direcciones de la direccion horizontal y la direccion vertical. El numero de casos de division del 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 32x32 puede dividirse en una direccion espedfica (por ejemplo, la direccion horizontal) usando siete procedimientos, y un bloque de codificacion predictiva que tiene un tamano de 16x16 puede dividirse usando tres procedimientos. Tambien, 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 crominancia, el bloque de codificacion predictiva puede dividirse tambien en las mismas particiones, y todos los siguientes procedimientos pueden aplicarse tambien a la division. El bloque de codificacion predictiva que tiene respectivas areas de division debena incluir, en un encabezamiento, una bandera que indica la presencia de un bloque de division, informacion que indica como se ha realizado la division, e indices de imagenes de referencia codificados que estan referidos de acuerdo con las respectivas areas de division.
Cuando un bloque se predice de manera adaptativa en direccion, debena realizarse estimacion de movimiento y compensacion de movimiento en cada una de las dos areas divididas. Por lo tanto, debena derivarse un vector de movimiento desde cada una de las areas divididas, y debena derivarse y codificarse una senal residual entre cada una de las areas divididas y un area de referencia obtenida en base al vector de movimiento.
Una senal residual puede codificarse usando uno cualquiera de los siguientes procedimientos.
En primer lugar, una senal residual puede derivarse desde cada una de las dos areas divididas desde un bloque de codificacion predictiva, y a continuacion las dos senales residuales pueden anadirse para formar una senal residual de bloque y codificarse por transformada. En este caso, es bastante posible que habra diferencia entre la distribucion global de senales residuales en las respectivas areas divididas a lo largo de un lfmite, y por lo tanto se prefiere aplicar un filtro al lfmite.
En otro procedimiento, la codificacion puede realizarse aplicando transformada adaptativa de forma a cada una de las areas divididas. Como se muestra en la Figura 7, cuando un bloque se divide en dos areas, un bloque superior izquierda se somete a una transformada de 1D horizontal como esta y a continuacion a la transformada de 1D vertical, y un bloque inferior derecho se reorganiza o rota 180 grados como se muestra en el dibujo y se somete a transformada de 1D y a continuacion a transformada de 1D vertical. En este caso, los coeficientes residuales codificados por separado de acuerdo con las respectivas areas de division pueden transmitirse al decodificador, o pueden combinarse y transmitirse.
En otro procedimiento mas, puede realizarse relleno de acuerdo con las respectivas areas divididas para generar y codificar un bloque. En otras palabras, cuando se codifica un area de division actual, la otra area de division que constituye el bloque se rellena con un valor del area de division actual para constituir el bloque y a continuacion se somete a codificacion de transformada en 2D. El relleno puede ser relleno horizontal (copiar horizontalmente un area indefinida a partir de un area definida) y relleno vertical (copiar verticalmente un area definida a partir de un area definida). En este caso, se prefiere realizar relleno horizontal y a continuacion relleno vertical. Tambien, puede rellenarse un pixel indefinido adyacente a uno o mas pfxeles definidos a traves de la combinacion lineal de los pfxeles definidos. Tambien, puede proporcionarse direccionalidad de acuerdo con una direccion de division, de manera que puede realizarse en primer lugar uno cualquiera de relleno horizontal y relleno vertical.
A continuacion, se describira la estimacion de vector de movimiento.
Cuando un bloque se divide en dos areas usando una lmea recta, un vector de movimiento de cada una de las areas divididas se codifica de manera diferencial usando un vector de movimiento ya codificado.
En un primer procedimiento, una primera area de las areas divididas puede seleccionar uno de los vectores de movimiento de bloques adyacentes como un predictor de vector de movimiento, y una segunda area puede seleccionar uno de los vectores de movimiento de bloques adyacentes distinto de la primera area como un predictor de vector de movimiento.
En un segundo procedimiento, un primer area de las areas divididas puede seleccionar uno de los vectores de movimiento de bloques adyacentes como un predictor de vector de movimiento, y una segunda area puede seleccionar un vector de movimiento de la primera area como un predictor de vector de movimiento.
En un tercer procedimiento, cuando hay un bloque dividido de manera adaptativa en direccion entre bloques adyacentes a un bloque actual, se usa un vector de movimiento del bloque dividido de manera adaptativa en
direccion como un vector de movimiento de referencia teniendo en cuenta la direccionalidad de los bloquees divididos. Por lo tanto, cuando hay una pluralidad de bloques divididos de manera adaptativa en direccion, los vectores de movimiento en una secuencia predeterminada o los vectores de movimiento de los bloques que tienen direcciones de division similar pueden usarse como vectores de movimiento de referencia.
5 En un cuarto procedimiento, un primer area de las areas divididas puede establecer un vector de movimiento de uno de los bloques adyacentes al primer area como un predictor de vector de movimiento del primer area, y una segunda area puede seleccionar uno cualquiera de los vectores de movimiento de bloques adyacentes a la segunda area y un vector de movimiento de un bloque o un area de division en la misma posicion en una imagen anterior como un predictor de vector de movimiento y codificar un vector de movimiento diferencial.
10 En este punto, se usa una lmea recta para division de bloque. Sin embargo, es posible tambien dividir un bloque en al menos dos areas de division usando informacion que consiste en al menos dos lmeas rectas, y la codificacion de las areas divididas puede realizarse como se ha descrito anteriormente.
Aunque la invencion se ha mostrado y descrito con referencia a ciertas realizaciones ejemplares de la misma, se entendera por los expertos en la materia que pueden realizarse diversos cambios en forma y detalles en la misma 15 sin alejarse del alcance de la invencion segun se define mediante las reivindicaciones adjuntas.

Claims (7)

  1. 5
    10
    15
    20
    25
    30
    REIVINDICACIONES
    1. Un aparato para codificar una imagen, comprendiendo el aparato:
    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 (160) de cuantificacion/transformada inversa configurada para cuantificar a la inversa y transformar a la inversa el bloque de transformada cuantificado; y
    un codificador (130) por entropfa configurado para codificar por entropfa coeficientes de transformada cuantificados del bloque de transformada cuantificado,
    en el que los coeficientes de transformada cuantificados estan divididos en una pluralidad de sub-bloques si se determina que un tamano de un bloque de transformada es igual a o mayor que 8x8 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 un patron de exploracion para generar una pluralidad de banderas es el mismo que el patron de exploracion para explorar los coeficientes distintos de cero de cada sub-bloque, en el que cada bandera indica si un correspondiente coeficiente de transformada es 0 o no.
  2. 2. El aparato de la reivindicacion 1, en el que el codificador (130) por 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) por 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) por 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 horizontal, el patron de exploracion es un patron de exploracion vertical.
  6. 6. 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.
  7. 7. El aparato de la reivindicacion 1, en el que el intra predictor (140) genera pfxeles de referencia cuando existen pfxeles de referencia no disponibles.
ES15175089.0T 2010-04-23 2011-04-22 Aparato para codificar una imagen Active ES2632996T3 (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
ES2632996T3 true ES2632996T3 (es) 2017-09-18

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
ES15175114.6T Active ES2618917T3 (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
ES15175100.5T Active ES2618932T3 (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
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
ES11772290.0T Active ES2546514T3 (es) 2010-04-23 2011-04-22 Aparato de codificación de imágenes

Family Applications Before (4)

Application Number Title Priority Date Filing Date
ES15175096.5T Active ES2602677T3 (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
ES15175097.3T Active ES2620772T3 (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

Family Applications After (3)

Application Number Title Priority Date Filing Date
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
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) KR101376136B1 (es)
CN (11) CN104601998B (es)
AU (6) AU2011243334B2 (es)
BR (6) BR122014030030A2 (es)
CA (9) CA2934942C (es)
CY (6) CY1116723T1 (es)
DK (6) DK2945382T3 (es)
ES (8) ES2602677T3 (es)
HR (6) HRP20150964T1 (es)
HU (8) HUE031188T2 (es)
IL (6) IL222579A (es)
LT (5) LT2950534T (es)
MX (6) MX348484B (es)
MY (11) MY162154A (es)
PE (8) PE20170650A1 (es)
PH (5) PH12014501184B1 (es)
PL (8) PL2945382T3 (es)
PT (6) PT2563020E (es)
RS (6) RS55261B1 (es)
RU (7) RU2549157C1 (es)
SG (11) SG185371A1 (es)
SI (6) SI2950534T1 (es)
SM (2) SMT201500244B (es)
WO (1) WO2011133002A2 (es)
ZA (1) ZA201208766B (es)

Families Citing this family (60)

* 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
RU2549157C1 (ru) * 2010-04-23 2015-04-20 М энд К ХОЛДИНГС ИНК. Устройство для кодирования движущегося изображения
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
US10499059B2 (en) 2011-03-08 2019-12-03 Velos Media, Llc 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
CN107580221B (zh) * 2011-09-09 2020-12-08 株式会社Kt 用于解码视频信号的方法
US9787982B2 (en) 2011-09-12 2017-10-10 Qualcomm Incorporated Non-square transform units and prediction units in video coding
SI2744204T1 (sl) * 2011-09-14 2019-02-28 Samsung Electronics Co., Ltd., Postopek dekodiranja enote za napovedovanje (PU) na podlagi njene velikosti
KR20130049523A (ko) * 2011-11-04 2013-05-14 오수미 인트라 예측 블록 생성 장치
KR20130050149A (ko) * 2011-11-07 2013-05-15 오수미 인터 모드에서의 예측 블록 생성 방법
KR20130050407A (ko) * 2011-11-07 2013-05-16 오수미 인터 모드에서의 움직임 정보 생성 방법
KR20130050404A (ko) * 2011-11-07 2013-05-16 오수미 인터 모드에서의 복원 블록 생성 방법
CN108712652A (zh) * 2012-06-29 2018-10-26 韩国电子通信研究院 视频编码方法和计算机可读介质
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
WO2015142070A1 (ko) * 2014-03-19 2015-09-24 삼성전자 주식회사 경계 필터링을 수반한 비디오 부호화 및 비디오 복호화 방법 및 장치
KR101663668B1 (ko) * 2014-06-27 2016-10-07 삼성전자주식회사 영상 패딩영역의 비디오 복호화 및 부호화 장치 및 방법
EP3210379B1 (en) * 2014-10-20 2021-02-17 Google LLC Continuous prediction domain
CN105631905A (zh) * 2014-10-29 2016-06-01 新相微电子(开曼)有限公司 一种用于tft-lcd驱动ic的图像压缩算法及控制装置
KR20160131526A (ko) * 2015-05-07 2016-11-16 삼성전자주식회사 시스템 온 칩, 상기 시스템 온 칩을 포함하는 디스플레이 시스템, 및 상기 디스플레이 시스템의 동작 방법
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
US11463689B2 (en) 2015-06-18 2022-10-04 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 삼성전자주식회사 부호화 장치, 복호화 장치, 그 부호화 및 복호화 방법
CN114222139A (zh) * 2016-05-28 2022-03-22 世宗大学校产学协力团 视频信号的解码方法
US20170347094A1 (en) * 2016-05-31 2017-11-30 Google Inc. Block size adaptive directional intra prediction
CN117412037A (zh) 2016-08-31 2024-01-16 株式会社Kt 用于处理视频信号的方法和设备
JP6891895B2 (ja) * 2016-09-16 2021-06-18 ソニーグループ株式会社 画像処理装置および画像処理方法
EP3300362A1 (en) * 2016-09-27 2018-03-28 Thomson Licensing Method for improved intra prediction when reference samples are missing
CN116962687A (zh) * 2016-11-29 2023-10-27 成均馆大学校产学协力团 影像编码/解码方法、装置以及对比特流进行存储的记录介质
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 珠海亿智电子科技有限公司 一种应用于视频编解码的压缩方法
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
US11695967B2 (en) * 2018-06-22 2023-07-04 Op Solutions, Llc Block level geometric partitioning
US11277644B2 (en) 2018-07-02 2022-03-15 Qualcomm Incorporated Combining mode dependent intra smoothing (MDIS) with intra interpolation filter switching
BR112020026971A2 (pt) 2018-07-02 2021-03-30 Huawei Technologies Co., Ltd. Aparelho e método para filtragem em codificação de vídeo
EP3840386A4 (en) 2018-09-04 2021-09-22 Huawei Technologies Co., Ltd. METHOD AND DEVICE FOR DETERMINING A REFERENCE FRAME FOR BIDIRECTIONAL INTER-FRAME PREDICTION
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 华为技术有限公司 预测模式确定方法、装置及编码设备和解码设备
KR20200083357A (ko) 2018-12-28 2020-07-08 인텔렉추얼디스커버리 주식회사 화면 간 예측 부호화 및 복호화 방법 및 장치
CN111416975B (zh) * 2019-01-08 2022-09-16 华为技术有限公司 预测模式确定方法和装置
CN113273191A (zh) * 2019-01-10 2021-08-17 世宗大学校产学协力团 影像编码/解码方法及装置
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
CN113574877B (zh) 2019-03-12 2024-06-28 现代自动车株式会社 用于有效地对残差块解码的方法和装置
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 에스케이 텔레콤주식회사 적응적 더블 스캔 방법
EP2262269B1 (en) * 2001-12-17 2018-01-24 Microsoft Technology Licensing, LLC Skip macroblock coding
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 情報圧縮装置および方法、ならびにそのプログラム
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 한국전자통신연구원 잔여계수의 상관성에 따라 변환기를 선택적으로 이용한부호화/복호화 장치 및 그 방법
US9455739B2 (en) * 2007-03-14 2016-09-27 Nippon Telegraph And Telephone Corporation Code amount estimating method and apparatus, and program and storage medium therefor
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
CN114143553A (zh) * 2010-04-13 2022-03-04 Ge视频压缩有限责任公司 显著性图和变换系数块的编码
RU2549157C1 (ru) * 2010-04-23 2015-04-20 М энд К ХОЛДИНГС ИНК. Устройство для кодирования движущегося изображения
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 엠앤케이홀딩스 주식회사 예측 블록 생성 장치
KR20180039757A (ko) * 2010-08-17 2018-04-18 엠앤케이홀딩스 주식회사 영상 복호화 장치
KR20120016991A (ko) * 2010-08-17 2012-02-27 오수미 인터 프리딕션 방법
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
WO2012093969A1 (en) * 2011-01-07 2012-07-12 Agency For Science, Technology And Research Method and an apparatus for coding an image
US10499059B2 (en) * 2011-03-08 2019-12-03 Velos Media, Llc 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
MY162149A (en) 2017-05-24
PE20170652A1 (es) 2017-05-12
BR122014030028A2 (pt) 2019-08-20
CA2934930A1 (en) 2011-10-27
JP5919404B2 (ja) 2016-05-18
US20150222896A1 (en) 2015-08-06
PT2563020E (pt) 2015-10-09
WO2011133002A2 (ko) 2011-10-27
CN105245885A (zh) 2016-01-13
PE20142178A1 (es) 2014-12-20
BR122014030026A2 (pt) 2019-08-13
LT2950534T (lt) 2017-03-10
CN105120274B (zh) 2017-09-19
BR112012026809B1 (pt) 2022-03-29
CA2934927A1 (en) 2011-10-27
JP5919407B2 (ja) 2016-05-18
EP2947877A1 (en) 2015-11-25
EP3197158B1 (en) 2019-06-26
US20150222908A1 (en) 2015-08-06
CA2934940C (en) 2018-01-16
US20150222907A1 (en) 2015-08-06
BR122014030027A2 (pt) 2019-08-20
IL246886A (en) 2017-12-31
BR122014030030A2 (pt) 2019-08-20
AU2014202816A1 (en) 2014-06-12
SG185371A1 (en) 2012-12-28
RU2549157C1 (ru) 2015-04-20
SG10201503185PA (en) 2015-06-29
CA2934942C (en) 2018-07-10
IL233840A (en) 2017-12-31
PH12014501184A1 (en) 2015-05-11
US9197895B2 (en) 2015-11-24
DK2950534T3 (en) 2017-05-01
MY157877A (en) 2016-07-26
US9264719B2 (en) 2016-02-16
JP2013526178A (ja) 2013-06-20
ES2618932T3 (es) 2017-06-22
DK2947878T3 (en) 2017-05-01
ES2546514T3 (es) 2015-09-24
PL2947878T3 (pl) 2017-07-31
AU2014202818A1 (en) 2014-06-19
US20150222898A1 (en) 2015-08-06
US9264718B2 (en) 2016-02-16
AU2014202817A1 (en) 2014-06-19
CA2934942A1 (en) 2011-10-27
PH12014501183A1 (en) 2015-05-11
EP2950533B1 (en) 2017-02-15
HRP20170729T1 (hr) 2017-07-28
PH12014501185B1 (en) 2015-05-11
CA2935202C (en) 2018-01-30
IL246884A (en) 2017-08-31
CN104601998B (zh) 2016-08-17
RS55761B1 (sr) 2017-07-31
IL222579A0 (en) 2012-12-31
WO2011133002A3 (ko) 2012-03-08
RU2659470C2 (ru) 2018-07-02
EP2947877B1 (en) 2016-10-12
US20130022115A1 (en) 2013-01-24
BR112012026809A2 (pt) 2018-04-03
SMT201500244B (it) 2015-10-30
PL2945382T3 (pl) 2017-11-30
JP2015122773A (ja) 2015-07-02
EP3197158A1 (en) 2017-07-26
DK2947877T3 (en) 2017-01-23
PL3197158T3 (pl) 2019-12-31
EP2950534B1 (en) 2017-02-15
CA2935205C (en) 2018-01-30
ES2897491T3 (es) 2022-03-01
HUE057125T2 (hu) 2022-05-28
KR20130131424A (ko) 2013-12-03
HUE032615T2 (en) 2017-10-30
EP2950534A1 (en) 2015-12-02
IL233841A (en) 2017-10-31
PT2947877T (pt) 2016-11-07
IL246885B (en) 2018-01-31
CA2934927C (en) 2017-07-18
ES2602677T3 (es) 2017-02-22
SG10201503179VA (en) 2015-06-29
PH12014501187A1 (en) 2015-05-11
DK2950533T3 (en) 2017-05-01
EP2945382B1 (en) 2017-06-07
PH12014501186B1 (en) 2015-05-11
HUE026246T2 (en) 2016-06-28
SI2950534T1 (sl) 2017-05-31
AU2014202819A1 (en) 2014-06-19
CN103004197A (zh) 2013-03-27
EP2950533A1 (en) 2015-12-02
EP3565247A1 (en) 2019-11-06
RS54213B1 (en) 2015-12-31
LT2947878T (lt) 2017-03-27
RU2658148C2 (ru) 2018-06-19
CN104717498B (zh) 2017-09-19
JP5919406B2 (ja) 2016-05-18
HRP20170726T1 (hr) 2017-08-11
MY162153A (en) 2017-05-24
CN104717498A (zh) 2015-06-17
KR101376136B1 (ko) 2014-03-21
EP2563020A4 (en) 2013-12-18
KR20160093107A (ko) 2016-08-05
RS56193B1 (sr) 2017-11-30
CA2935176C (en) 2018-03-13
EP2563020A2 (en) 2013-02-27
JP5688136B2 (ja) 2015-03-25
CY1118425T1 (el) 2017-06-28
AU2014202820A1 (en) 2014-06-19
PT2947878T (pt) 2017-05-08
DK2563020T3 (en) 2015-10-05
US9100651B2 (en) 2015-08-04
US9191672B2 (en) 2015-11-17
SI2947877T1 (sl) 2017-01-31
CA2797047A1 (en) 2011-10-27
JP2015122774A (ja) 2015-07-02
CN103004197B (zh) 2015-11-25
AU2014202819B2 (en) 2015-11-12
JP2015039231A (ja) 2015-02-26
RU2658141C2 (ru) 2018-06-19
DK2945382T3 (en) 2017-08-28
RU2014118778A (ru) 2015-11-27
HUE034345T2 (en) 2018-02-28
MY162154A (en) 2017-05-24
LT2950533T (lt) 2017-03-27
US20150222895A1 (en) 2015-08-06
US9191674B2 (en) 2015-11-17
CN105245884A (zh) 2016-01-13
CN105245877B (zh) 2017-11-10
CY1116723T1 (el) 2017-03-15
CY1118907T1 (el) 2018-01-10
EP2563020B1 (en) 2015-08-12
PH12014501183B1 (en) 2015-05-11
MY162152A (en) 2017-05-24
SG10201503177TA (en) 2015-06-29
PT2945382T (pt) 2017-07-11
CY1118908T1 (el) 2018-03-07
JP2015084599A (ja) 2015-04-30
KR20140057670A (ko) 2014-05-13
PL2950534T3 (pl) 2017-07-31
AU2014202820B2 (en) 2015-11-05
CN105245884B (zh) 2018-02-02
RU2014118774A (ru) 2015-05-27
MY162147A (en) 2017-05-24
HUE031188T2 (hu) 2017-07-28
HUE034476T2 (en) 2018-02-28
CA2934930C (en) 2018-12-11
JP2016165125A (ja) 2016-09-08
AU2014202816B2 (en) 2015-11-12
CA2797047C (en) 2016-09-20
EP2947878A1 (en) 2015-11-25
KR20160093105A (ko) 2016-08-05
MX348484B (es) 2017-06-15
CN105245883A (zh) 2016-01-13
PH12014501187B1 (en) 2015-05-11
CN104601998A (zh) 2015-05-06
JP6084730B2 (ja) 2017-02-22
CY1118877T1 (el) 2018-01-10
RU2658137C2 (ru) 2018-06-19
US20150222893A1 (en) 2015-08-06
IL233841A0 (en) 2014-09-30
SI2563020T1 (sl) 2015-11-30
ES2620772T3 (es) 2017-06-29
CY1119314T1 (el) 2018-02-14
CN105120273A (zh) 2015-12-02
ZA201208766B (en) 2013-08-28
PL2563020T3 (pl) 2016-01-29
CN105245885B (zh) 2017-11-10
PL2947877T3 (pl) 2017-06-30
KR20160093104A (ko) 2016-08-05
SMT201600448B (it) 2017-01-10
SG10201503176SA (en) 2015-06-29
SG10201503178RA (en) 2015-06-29
CA2935202A1 (en) 2011-10-27
SI2947878T1 (sl) 2017-05-31
PH12014501186A1 (en) 2015-05-11
PT2950533T (pt) 2017-05-08
MY179498A (en) 2020-11-09
CN105245886B (zh) 2017-11-10
HRP20171353T1 (hr) 2017-11-03
SG10201503182WA (en) 2015-06-29
CN105245887A (zh) 2016-01-13
US20150222899A1 (en) 2015-08-06
SI2945382T1 (sl) 2017-09-29
HRP20150964T1 (hr) 2015-10-09
AU2011243334A1 (en) 2012-12-13
PH12014501185A1 (en) 2015-05-11
JP5877236B2 (ja) 2016-03-02
SG10201503180SA (en) 2015-06-29
SG10201503151YA (en) 2015-06-29
KR101476117B1 (ko) 2014-12-24
US20150222902A1 (en) 2015-08-06
CA2935205A1 (en) 2011-10-27
IL222579A (en) 2016-11-30
CN105245886A (zh) 2016-01-13
AU2011243334B2 (en) 2014-07-24
BR122014030029A2 (pt) 2019-08-20
CA2934940A1 (en) 2011-10-27
CN105245887B (zh) 2017-09-19
AU2014202817B2 (en) 2015-11-12
PH12014501184B1 (en) 2015-05-11
MX348488B (es) 2017-06-15
KR20130103803A (ko) 2013-09-24
JP2015111914A (ja) 2015-06-18
HRP20170054T1 (hr) 2017-03-10
CA2857849C (en) 2020-02-11
JP2015111915A (ja) 2015-06-18
EP2945382A1 (en) 2015-11-18
US9237348B2 (en) 2016-01-12
RU2012149839A (ru) 2014-05-27
CN105120273B (zh) 2017-10-24
AU2014202818B2 (en) 2015-11-12
US20150222901A1 (en) 2015-08-06
PE20130929A1 (es) 2013-09-07
MX348486B (es) 2017-06-15
US9197897B2 (en) 2015-11-24
ES2618917T3 (es) 2017-06-22
RU2014118780A (ru) 2015-11-27
US9191673B2 (en) 2015-11-17
KR20140057671A (ko) 2014-05-13
HUE032617T2 (en) 2017-10-30
IL233840A0 (en) 2014-09-30
RU2014118779A (ru) 2015-11-27
MY163233A (en) 2017-08-30
PE20170654A1 (es) 2017-05-13
MX2012012333A (es) 2013-02-26
MY162148A (en) 2017-05-24
RS55829B1 (sr) 2017-08-31
CN105120274A (zh) 2015-12-02
HRP20170724T1 (hr) 2017-07-28
RS55780B1 (sr) 2017-07-31
KR20130061680A (ko) 2013-06-11
LT2947877T (lt) 2017-01-10
RS55261B1 (sr) 2017-02-28
RU2014118776A (ru) 2015-11-27
PE20170651A1 (es) 2017-05-12
LT2945382T (lt) 2017-09-11
SG10201503173PA (en) 2015-06-29
KR20140057669A (ko) 2014-05-13
HUE046331T2 (hu) 2020-02-28
US20150222894A1 (en) 2015-08-06
SG10201503183TA (en) 2015-06-29
ES2746015T3 (es) 2020-03-04
CN105245877A (zh) 2016-01-13
JP5919405B2 (ja) 2016-05-18
CA2857849A1 (en) 2011-10-27
EP3565247B1 (en) 2021-08-18
CA2935176A1 (en) 2011-10-27
CN105245883B (zh) 2017-11-10
PL2950533T3 (pl) 2017-07-31
US9232224B2 (en) 2016-01-05
RU2014118777A (ru) 2015-11-27
PT2950534T (pt) 2017-05-17
JP5928966B2 (ja) 2016-06-01
PL3565247T3 (pl) 2022-01-31
MY163232A (en) 2017-08-30
PE20170653A1 (es) 2017-05-13
MX348485B (es) 2017-06-15
PE20170649A1 (es) 2017-05-11
SI2950533T1 (sl) 2017-05-31
RU2656985C2 (ru) 2018-06-07
EP2947878B1 (en) 2017-02-15
KR20160093106A (ko) 2016-08-05
US9197896B2 (en) 2015-11-24
MX348487B (es) 2017-06-15
RU2523963C2 (ru) 2014-07-27
MY157593A (en) 2016-06-30
PE20170650A1 (es) 2017-05-11

Similar Documents

Publication Publication Date Title
ES2632996T3 (es) Aparato para codificar una imagen