ES2897491T3 - Aparato para decodificar una imagen - Google Patents
Aparato para decodificar una imagen Download PDFInfo
- Publication number
- ES2897491T3 ES2897491T3 ES19174960T ES19174960T ES2897491T3 ES 2897491 T3 ES2897491 T3 ES 2897491T3 ES 19174960 T ES19174960 T ES 19174960T ES 19174960 T ES19174960 T ES 19174960T ES 2897491 T3 ES2897491 T3 ES 2897491T3
- Authority
- ES
- Spain
- Prior art keywords
- block
- intra
- prediction
- prediction mode
- quantized
- 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
Links
- 238000013139 quantization Methods 0.000 claims abstract description 26
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 claims abstract description 10
- 230000009466 transformation Effects 0.000 abstract 1
- 230000033001 locomotion Effects 0.000 description 50
- 238000000034 method Methods 0.000 description 37
- 239000013598 vector Substances 0.000 description 34
- 230000003044 adaptive effect Effects 0.000 description 9
- 230000006835 compression Effects 0.000 description 8
- 238000007906 compression Methods 0.000 description 8
- 238000001914 filtration Methods 0.000 description 8
- 238000005192 partition Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 5
- 230000002457 bidirectional effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000009792 diffusion process Methods 0.000 description 2
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012876 topography Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/109—Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/129—Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/18—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/96—Tree coding, e.g. quad-tree coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Magnetic Resonance Imaging Apparatus (AREA)
Abstract
Un aparato para decodificar una imagen, comprendiendo el aparato: una unidad de decodificación de entropía configurada para recibir información de intra predicción y coeficientes de transformación cuantificados unidimensionales 1D, desde un dispositivo de codificación de imágenes, y restaurar un bloque de transformación cuantificado usando los coeficientes de transformación cuantificados 1D; una unidad de intra predicción configurada para restaurar un modo de intra predicción desde la información de intra predicción y generar un bloque de predicción de acuerdo con el modo de intra predicción; una unidad de cuantificación/transformación inversas configurada para cuantificar inversamente y transformar inversamente el bloque cuantificado para generar un bloque residual; y una unidad de adición configurada para añadir el bloque residual y el bloque de predicción para generar un bloque original, caracterizado porque: la unidad de decodificación de entropía restaura una pluralidad de subbloques aplicando un primer patrón de exploración determinado de acuerdo con el modo de intra predicción a los coeficientes de transformación cuantificados 1D y restaura el bloque de transformación cuantificado aplicando un segundo patrón de exploración determinado de acuerdo con el modo de intra predicción a la pluralidad de subbloques si se determina que un tamaño del bloque cuantificado es igual o superior a 8x8, en el que el primer patrón es una orden de exploración aplicada a los coeficientes cuantificados 1D dentro de un subbloque, y el segundo patrón de exploración es una orden de exploración aplicada a la pluralidad de subbloques. en el que el primer patrón de exploración es el mismo que la segunda exploración.
Description
DESCRIPCIÓN
Aparato para decodificar una imagen
Campo técnico
La presente invención se refiere a un aparato y procedimiento de procesamiento de imagen, y más particularmente, a un aparato para reducir la cantidad de señales residuales de una imagen y codificar por entropía las señales residuales.
Técnica anterior
Para transmitir de manera eficaz una señal de imagen en movimiento a una baja tasa de datos mientras se mantiene alta calidad de imagen, se han propuesto diversas tecnologías de compresión de imagen en movimientos digitales. Estas tecnologías de compresión de imagen en movimiento incluyen H.261, Grupo de Expertos de Imágenes en Movimiento (MPEG)-2/H.262, H.263, MPEG-4, Codificación de Vídeo Avanzada (Av C)/H.264 y así sucesivamente. Las tecnologías de compresión incluyen un esquema de transformada de coseno discreta (DCT), un esquema de compensación de movimiento (MC), un esquema de cuantificación, un esquema de codificación por entropía y así sucesivamente.
Para la codificación de imágenes, cada imagen se divide en una pluralidad de cortes, y cada corte se divide en una pluralidad de bloques de codificación de un tamaño predeterminado. Puesto que una imagen de un grado de alta definición (HD) o superior tiene muchas áreas planas, puede mejorarse una compresión de imagen codificando la imagen con bloques de codificación que son mayores que un macrobloque (MB).
Por lo tanto, se requiere una nueva técnica de predicción y se requieren cambios en la codificación por transformada, codificación por entropía, intra predicción e inter predicción a medida que el tamaño de la unidad de codificación aumenta para aumentar la relación de compresión de imagen sin aumentar la complejidad de la compresión de la imagen.
Marta Karczewicz Y COL. “Joint Collaborative Team on Video Coding (JCT-VC) de ITU-T SG16 WP3 e ISO/IEC 2 JTC1/SC29/WG11, JCTVC-A121 2 se refieren a una propuesta basada en software JMKTA, es decir, tamaños de bloque más grandes que 16x16, modo de transformación direccional dependiente para codificación intra, filtrado de alta precisión luma, filtros de interpolación de conmutación de único paso con desplazamiento cuadrático basado filtrado de bucle adaptativo y aumento de profundidad de bit 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; (Joint Collaborative Team on Video Coding de ISO/IEC JTC/SC29/WG11 e ITU-TSG. 16) 16 de abril de 2010, da una descripción de propuesta tecnológica de codificación de vídeo por \ “Fraunhofer HHI. El algoritmo propuesto está basado en un enfoque de codificación de vídeo híbrida usando predicción temporal y espacial seguido de codificación de transformación de la codificación de entropía y residual”.
Wiegand T y col.: “Overview of the H.264/AVC video coding standard”, IEEE Transactions on Circuits and Systems for Video Technology, IEEE Service Center, Piscataway, NJ, EEUU, vol. 13, N. ° 7, 1 de julio de 2003, páginas 560-576, relacionado a H.264/7 AVC, el nuevo estándar de codificación de vídeo del ITU-T Video Coding Experts Group y el ISO/IEC Moving Picture Experts Group. Los principales objetivos del esfuerzo en estandarización H.264/AVC han sido mejorados en rendimiento de compresión y provisión de una representación de vídeo “amigable con la red” dirigida a conversaciones” (telefonía vídeo) y aplicaciones “a no conversaciones” (almacenamiento, difusión o difusión de flujo).
Por lo tanto, el objeto de la invención es proporcionar un aparato mejorado para decodificar una imagen.
Este objeto se soluciona con la materia objeto de las reivindicaciones independientes.
La invención se establece en las reivindicaciones adjuntas; los ejemplos adicionales llamados realizaciones en la descripción son ejemplos ilustrativos.
Solución técnica
Un aspecto de la presente invención proporciona un aparato para codificar una imagen en movimiento, que incluye: un determinador de modo de codificación configurado para dividir una imagen de entrada en unidades de codificación y determinar un modo de predicción de la unidad de codificación y un tamaño de un bloque de codificación predictiva de la unidad de codificación; una unidad de transformada/cuantificación configurada para transformar y cuantificar un bloque residual entre el bloque de codificación predictiva y un bloque de predicción generado a través de intra predicción o inter predicción; una unidad de cuantificación/transformada inversa configurada para cuantificar 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 filtración de desbloqueo a datos de imagen recibidos desde la unidad de decodificación de cuantificación/transformada inversa; un generador de bloque de predicción configurado para generar el bloque de codificación predictiva; y un codificador por entropía configurado para codificar los coeficientes de transformada cuantificados desde la unidad de codificación/cuantificación de transformada, en el que, cuando un tamaño de un bloque de transformada es igual a o mayor que un tamaño predeterminado, el codificador
por entropía divide los coeficientes de transformada cuantificados en una pluralidad de subconjuntos, y explora y codifica por entropía coeficientes de transformada cuantificados distintos de cero de cada subconjunto.
Efectos ventajosos
La presente invención posibilita que se mejore la eficacia de la codificación reduciendo la cantidad de señales residuales de un bloque a codificar. También, explorando de manera eficaz un coeficiente de transformada cuantificado distinto de 0 durante la codificación por entropía, el número de bits requeridos para la codificación por entropía se minimiza, de manera que puede mejorarse la eficacia de codificación.
Descripción de los dibujos
La Figura 1 muestra una estructura de división de bloques de acuerdo con una realización ejemplar de la presente invención.
La Figura 2 ilustra un procedimiento de determinación de un modo de codificación de acuerdo con la presente invención.
La Figura 3 ilustra un aparato para codificar una imagen en movimiento de acuerdo con la presente invención.
Las Figuras 4 a 6 son diagramas que ilustran un procedimiento de división de bloque adaptativa de acuerdo con la presente invención.
La Figura 7 es un diagrama que ilustra un procedimiento de codificación de una señal residual.
Modo para la invención
En lo sucesivo, se describirán en detalle diversas realizaciones de la presente invención con referencia a los dibujos adjuntos. Sin embargo, la presente invención no está limitada a las realizaciones ejemplares desveladas a continuación, sino que puede implementarse en diversos tipos. Por lo tanto, son posibles muchas otras modificaciones y variaciones de la presente invención y se ha de entender que dentro del alcance del concepto desvelado, la presente invención puede ponerse en práctica de otra manera a la que se ha descrito específicamente.
Para la codificación de imágenes, cada imagen se divide en una pluralidad de cortes (slices), y cada corte se divide en una pluralidad de unidades de codificación de un tamaño predeterminado. Dado que una imagen de grado de alta definición (HD) o superior tiene muchas áreas planas, se puede mejorar una relación de compresión de imagen codificando la imagen con unidades de codificación que son mayores que un macrobloque (MB) con un tamaño de 16x16.
La unidad de codificación de acuerdo con la presente invención puede ser un bloque que tiene un tamaño de 32x32 o un bloque que tiene un tamaño de 64x64 así como MB que tienen el tamaño de 16x16. También, un bloque que tiene un tamaño de 8x8 o menor puede ser la unidad de codificación. Por conveniencia, la unidad de codificación más grande se denomina como un súper macrobloque (SMB). Un tamaño del SMB puede determinarse de acuerdo con información que indica un tamaño de la unidad de codificación más pequeña e información de profundidad. La información de profundidad indica una diferencia entre un tamaño del s Mb y un tamaño de la unidad de codificación más pequeña.
Por lo tanto, la unidad de codificación que se usará para codificar todas las imágenes de una secuencia de imágenes puede ser el SMB o el subbloque del SMB. Los tamaños permisibles de las unidades de codificación pueden designarse por defecto o en un encabezamiento de secuencia. Cuando los tamaños permisibles de las unidades de codificación se designan en el encabezamiento de secuencia, los tamaños permisibles de las unidades de codificación se designan de acuerdo con el tamaño de la unidad de codificación más pequeña y la información de profundidad.
Cada imagen o corte se divide en una pluralidad de unidades de SMB. Cada SMB o el subbloque del SMB puede estar intracodificado o intercodificado y decodificarse.
Para posibilitar que la unidad de codificación (es decir, un SMB o un subbloque del SMB) se decodifique de manera precisa, un codificador debería añadir información de tamaño en un bloque de codificación predictiva de la unidad de codificación e información de modo de predicción que indica que la unidad de codificación se ha codificado en modo de intra predicción o en modo de inter predicción a un flujo de bits. Para este fin, la información de modo de predicción y la información que indica el tamaño del bloque de codificación predictiva deberían incluirse en el flujo de bits de la unidad de codificación. El modo de predicción varía de acuerdo con un tipo del corte.
Cuando el tipo del corte es intra (I), todos los bloques de codificación predictiva en el corte están intra predichos, y puede determinarse un tipo de predicción de un bloque de codificación predictiva de acuerdo con un tamaño del bloque de codificación predictiva. Sin embargo, cuando el tipo de corte es predicción unidireccional (P) o predicción bidireccional (B), puede determinarse un tipo de predicción de un bloque de codificación predictiva de acuerdo con información de modo de predicción y un tamaño del bloque de codificación predictiva. Por lo tanto, es preferible generar el tipo de predicción del bloque de codificación predictiva en base al tipo de corte, la información de modo de predicción
y la información que indica el tamaño del bloque de codificación predictiva, e insertar el tipo de predicción generada en un encabezamiento de la unidad de codificación.
Cuando el bloque de codificación predictiva está intracodificado, la información de modo de intra predicción usada para intra predicción así como el tipo de predicción es necesario que se transmita a un decodificador.
Cuando el bloque de codificación predictiva está intercodificado, el bloque de codificación predictiva se codifica mediante uno cualquiera de predicción unidireccional y predicción bidireccional. En el caso de predicción unidireccional, un flujo de bits debería incluir información en una imagen de referencia e información de vector de movimiento usada para predicción así como un tipo de predicción del bloque de codificación predictiva para predicción unidireccional. En el caso de predicción bidireccional, un encabezamiento del bloque de codificación predictiva debería incluir información sobre dos imágenes de referencia e información de vector de movimiento usada para predicción bidireccional así como un tipo de predicción del bloque para predicción bidireccional. La información del vector de movimiento puede incluir información que indica un vector de movimiento residual y un predictor de vector de movimiento.
La Figura 1 muestra una estructura de división jerárquica que ilustra bloques de codificación predictiva permisibles para un SMB que tiene un tamaño de 64x64 de acuerdo con una realización ejemplar de la presente invención.
Cuando se usa un SMB como una unidad de codificación, se prefiere tener cuatro etapas de división de subbloque como se muestra en la Figura 1, pero la división de bloque no está limitada a las cuatro etapas de división de subbloque. Cuando hay cuatro etapas de división de subbloque, 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 codificación inter predictiva que tienen un tamaño mayor que un MB. Por lo tanto, se prefiere añadir nuevamente un modo de salto MB64_SKIP cuando un tamaño de un bloque de codificación predictiva es 64x64, y un modo de salto MB32_SKIP cuando el tamaño del bloque de codificación predictiva es 32x32. Para transmitir la información 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 transmisión del correspondiente bloque de codificación predictiva.
Mientras tanto, cuando no se codifican varios SMB sucesivos, puede insertarse una bandera MB64_SKIP_flag en un primer SMB únicamente, y puede omitirse en los siguientes SMB. En este caso, el número de SMB que se saltan sucesivamente puede añadirse al corte o al primer SMB. Específicamente, 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 también a varios SMB sucesivos en común. En este caso, la información que corresponde al número de los SMB que no se codifican sucesivamente (por ejemplo, un número de SMB_SKIP_number) puede añadirse al corte.
Cuando una unidad de codificación tiene un tamaño de 32x32, el bloque que tiene un tamaño de 32x32, 32x16 o 16x32 además del bloque existente que tiene un tamaño de 16x16, 16x8, 8x16, 8x8, 8x4, 4x8 o 4x4 puede usarse como un bloque de codificación predictiva.
En un modo de inter predicción, un tipo de predicción (Mb32_type) de una unidad de codificación puede indicar una partición de 32x32 cuando el tipo de predicción es 0, una partición de 32x16 cuando el tipo de predicción es 1, una partición de 16x32 cuando el tipo de predicción es 2 y una partición de 16x16 cuando el tipo de predicción es 3.
Cuando una unidad de codificación se divide en cuatro subunidades de codificación, las cuatro subunidades de codificación se codifican y transmiten en un orden de exploración por filas (ráster sean order). En este caso, un parámetro de cuantificación puede transmitirse para cada unidad de codificación, y puede transmitirse únicamente una vez en un encabezamiento de una súper-unidad de codificación cuando se aplica el mismo parámetro de cuantificación a todas las subunidades de codificación. Sin embargo, cuando un parámetro de cuantificación necesita cambiarse en una subunidad de codificación, únicamente puede transmitirse un valor de diferencia con respecto a un parámetro de cuantificación de la unidad de codificación de capa superior o la unidad de codificación anterior del mismo nivel.
Cada subunidad de codificación puede dividirse usando un procedimiento de árbol cuádruple, y un patrón de bloque codificado (coded block pattern, cbp) y puede transmitirse también un coeficiente residual usando el procedimiento de árbol cuádruple. Cuando se usa un cbp de 1 bit, un valor de cbp de 1 puede indicar que la unidad de codificación 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 determinación de un modo de codificación cuando un tamaño de un SMB es 64x64 de acuerdo con la presente invención.
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 (SKIP) como un modo de codificación cuando es posible saltar el bloque de 64x64. En este momento, debería 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 tamaño de codificación del SMB que es uno de 64x64, 64x32 y 32x64 y la información acerca de si el SMB está intracodificado o intercodificado 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 análoga si hay datos a codificarse en los correspondientes bloques de 32x32. Cuando no hay datos a codificarse en 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 tamaño de codificación de los bloques de 32x32 que es uno de 32x32, 32x16 y 16x32 y la información acerca de si los bloques de 32x32 están intracodificados o intercodificados 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 mb16_skip_flag al decodificador. Por otra parte, cuando hay datos a codificarse en los correspondientes bloques de 16x16, el tamaño de codificación del bloque de 16x16 que es uno de 16x16, 16x8 y 8x16 y la información acerca de si el bloque de 16x16 está intracodificado o intercodificado 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 tamaños de este tipo, la información de tamaño de bloque puede variar de acuerdo con cada nivel de secuencia, nivel de imagen, nivel de corte, SMB o subunidad de codificación del SMB.
La Figura 3 ilustra un aparato para codificar una imagen en movimiento de acuerdo con la presente invención.
Haciendo referencia a la Figura 3, un aparato para codificar una imagen en movimiento de acuerdo con la presente invención incluye un determinador de modo de codificación 110, una unidad de transformada/cuantificación 120, un codificador por entropía 130, un intra predictor 140, un compensador de movimiento 150, un estimador de movimiento 155, una unidad de cuantificación/transformada inversa 160, un filtro de desbloqueo 170, un almacenamiento de imágenes 180, un sumador 185 y un restador 190.
El determinador de modo de codificación 110 analiza una señal de vídeo de entrada para dividir una imagen en unidades de codificación, y determina un tamaño de un bloque de codificación predictiva y un modo de predicción para cada unidad de codificación. También, el determinador de modo de codificación 110 envía el bloque de codificación predictiva que corresponde al tamaño determinado al restador 190.
La unidad de transformada/cuantificación 120 determina un tamaño de un bloque de transformada para transformar la señal residual recibida desde el restador 190. El tamaño de un bloque de transformada puede ser igual a o menor que el del bloque de codificación predictiva, pero puede establecerse de manera diferente en un inter modo. En otras palabras, el tamaño del bloque de transformada puede ser mayor que el del bloque de codificación predictiva en el inter modo. En este caso, la unidad de transformada/cuantificación 120 recibe múltiples bloques residuales desde el restador 190 y genera un bloque de transformada que consiste en los múltiples bloques residuales. Un tamaño del bloque de transformada es igual a o menor que el de la unidad de codificación. La unidad de transformada/cuantificación 120 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 números enteros.
También, la unidad de transformada/cuantificación 120 determina un tamaño de etapa de cuantificación usada para cuantificar los coeficientes de transformada, y cuantifica los coeficientes de transformada usando una matriz de cuantificación determinada de acuerdo con el tamaño de etapa de cuantificación determinada y un modo de codificación.
La unidad de cuantificación/transformada inversa 160 cuantifica a la inversa y transforma a la inversa los coeficientes de cuantificación cuantificados mediante la unidad de codificación/cuantificación 120 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 de desbloqueo 170 recibe datos de imagen que se cuantifican a la inversa y se transforman a la inversa desde la unidad de cuantificación/transformada inversa 160 y realiza un procedimiento de filtración para eliminar un efecto de bloqueo. El procedimiento de filtración de desbloqueo puede aplicarse a un límite entre bloques de codificación predictiva y entre bloques de transformada. El límite es un borde de una cuadrícula que tiene un tamaño predeterminado o mayor y el tamaño predeterminado puede ser 8x8. El procedimiento de filtración de desbloqueo incluye una etapa de determinación de un límite a filtrarse, una etapa de determinación de una intensidad de filtración de límite a aplicarse al límite, una etapa de determinación de si aplicar o no el filtro de desbloqueo 170, y una etapa de selección de un filtro a aplicarse al límite cuando se determina aplicar el filtro de desbloqueo 170.
Se determina si aplicar o no el filtro de desbloqueo 170 de acuerdo con i) si la intensidad de filtración de límite es o no mayor que 0 y ii) si un valor que indica la diferencia entre píxeles de límite de bloque P y de bloque Q es o no menor que un primer valor de referencia determinado de acuerdo con un parámetro de cuantificación.
Pueden existir dos o más filtros. Cuando un valor absoluto de una diferencia entre dos píxeles adyacentes al límite de bloque es igual a o mayor que un segundo valor de referencia, se selecciona un filtro débil. El segundo valor de referencia se determina mediante el parámetro de cuantificación y la intensidad de filtración de límite.
El almacenamiento de imágenes 180 recibe la imagen filtrada a partir del filtro de desbloqueo 170, almacena la imagen en unidades de imagen. La imagen puede ser una imagen de una trama o una imagen de un campo. El almacenamiento de imágenes 180 tiene una memoria intermedia (no mostrada) que puede almacenar una pluralidad de imágenes.
El estimador de movimiento 155 realiza estimación de movimiento usando al menos una imagen de referencia almacenada en el almacenamiento de imágenes, y emite un índice de imágenes de referencia que representa la imagen de referencia y un vector de movimiento.
El compensador de movimiento 150 extrae un bloque de predicción que corresponde a un bloque a codificar desde la imagen de referencia usada para estimación de movimiento entre una pluralidad de imágenes de referencia almacenadas en el almacenamiento de 180 imágenes de acuerdo con el índice de imágenes de referencia y el vector de movimiento introducido desde el estimador 155 de movimiento, y emite el bloque de predicción extraído.
El intra predictor 140 realiza intra predicción usando valores de píxel reconstruidos en la misma imagen. El intra predictor 140 recibe un bloque actual a codificarse de manera predictiva, selecciona uno de un número predeterminado de modos de intra predicción de acuerdo con un tamaño del bloque actual, y realiza intra predicción.
El codificador por entropía 130 codifica por entropía los coeficientes de cuantificación cuantificados mediante la unidad de transformada/cuantificación 120, la información de movimiento generada mediante el estimador 155 de movimiento, y así sucesivamente. Los coeficientes de transformada cuantificados se convierten en una información de transformada cuantificada unidimensional (1D) mediante un procedimiento de exploración predeterminado y se codifican por entropía.
Un procedimiento de intra predicción se describirá a continuación con referencia a la Figura 3.
En primer lugar, el intra predictor 140 recibe información de posición y tamaño en un bloque de codificación a codificarse desde el determinador de modo de codificación 110.
A continuación, el intra predictor 140 recibe píxeles de referencia válidos para determinar un modo de intra predicción del bloque de codificación predictiva actual desde el almacenamiento de imágenes 180. Los píxeles de referencia ya se han codificado y restaurado, y están adyacentes al bloque de codificación predictiva actual (en lo sucesivo, denominado como el bloque actual). Cuando el bloque actual se sitúa en un límite superior de la imagen actual, los píxeles adyacentes al lado superior del bloque actual no están definidos. Cuando el bloque actual se sitúa en un límite izquierdo de la imagen actual, los píxeles adyacentes al lado izquierdo del bloque actual no están definidos. También, cuando el bloque actual se sitúa en el límite superior o izquierdo del corte, los píxeles adyacentes al lado superior o izquierdo no están definidos.
Cuando no hay píxeles adyacentes al lado izquierdo o superior del bloque actual o no hay píxeles que se hayan codificado y restaurado previamente como se ha mencionado anteriormente, un modo de intra predicción del bloque actual puede determinarse usando únicamente píxeles válidos.
Sin embargo, los píxeles de referencia inválidos pueden generarse usando píxeles adyacentes al bloque actual o píxel disponible. Por ejemplo, cuando los píxeles de un bloque superior no son válidos, los píxeles en el lado superior pueden generarse usando uno o más píxeles de referencia disponibles en el lado izquierdo.
Mientras tanto, incluso cuando hay píxeles en el lado superior o izquierdo del bloque actual, los píxeles pueden determinarse como píxeles inválidos de acuerdo con un modo de codificación de un bloque al que pertenecen los píxeles. Por ejemplo, cuando un bloque al que pertenecen los píxeles adyacentes al lado superior del bloque actual se ha intercodificado y restaurado, los píxeles pueden determinarse como píxeles inválidos. En este caso, pueden generarse píxeles de referencia usando el píxel de referencia de un bloque que tiene intra modo.
A continuación, el intra predictor 140 determina el modo de intra predicción del bloque actual usando los píxeles de referencia. El número de los modos de intra predicción depende de un tamaño del bloque.
De acuerdo con el tamaño 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 números de los modos de intra predicción a bloques que tienen el mismo tamaño. Para indicar que se permiten diferentes números de los modos de intra predicción, la información que indica el número de los modos de intra predicción puede insertarse en al menos uno de un encabezamiento de secuencia, encabezamiento de imagen, encabezamiento de corte y un encabezamiento de unidad de codificación. Se prefiere insertar la información en un encabezamiento de secuencia o en un encabezamiento de imagen.
A continuación, cuando se determina el modo de intra predicción del bloque actual, se genera un bloque de predicción
del bloque actual. El bloque de predicción se genera usando píxeles de referencia que incluyen el píxel generado o usando una combinación lineal de los píxeles de referencia en base al modo de intra predicción del bloque actual. Por ejemplo, en un modo direccional de una dirección específica, puede generarse un modo de predicción usando píxeles de referencia en el lado superior del bloque actual y aquellos en el lado izquierdo del bloque actual.
Los píxeles de referencia válidos usados para generar el bloque de predicción pueden ser píxeles de referencia filtrados. Un filtro a aplicarse a los píxeles de referencia válidos puede ser diverso en número. También, la pluralidad de filtros puede aplicarse de manera adaptativa de acuerdo con un tamaño del bloque actual y el modo de intra predicción.
A continuación, un bloque residual obtenido usando el bloque actual y el bloque de predicción generado mediante el intra predictor 140 se codifican mediante la unidad de transformada/cuantificación 120 y el codificador por entropía 130.
Mientras tanto, el modo de intra predicción del bloque actual se codifica por separado. El modo de intra predicción puede codificarse mediante el intra predictor 140, un codificador de modo de intra predicción separado (no mostrado) o el codificador por entropía 130.
El modo de intra predicción del bloque actual se codifica usando los modos de intra predicción de un bloque superior y un bloque izquierdo del bloque actual.
En primer lugar, se derivan los modos de intra predicción de los bloques izquierdo y superior del bloque actual. Cuando el bloque superior es diverso en número, un bloque superior más a la izquierda o un bloque que tiene el mínimo número de modo se establece como un bloque superior del bloque actual. También, cuando el bloque izquierdo es diverso en número, un bloque izquierdo más superior o un bloque que tiene el mínimo número 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 predicción, el modo CC (número de modo 2) puede establecerse como un modo de intra predicción del bloque superior o el bloque izquierdo.
A continuación, cuando el número de modo de intra predicción del bloque superior o izquierdo es igual a o mayor que el número de modos de intra predicción permisibles del bloque actual, el modo de intra predicción del bloque superior o izquierdo se convierte en uno de los modos de intra predicción permitidos para el bloque actual.
A continuación, cuando el modo de intra predicción del bloque actual es igual a uno del modo de intra predicción del bloque izquierdo y el modo de intra predicción del bloque superior, se transmite una bandera que indica que el modo de intra predicción del bloque actual es igual a uno del modo de intra predicción del bloque izquierdo y el modo de intra predicción del bloque superior, y una bandera que indica uno de los modos de intra predicción de los bloques superior e izquierdo. En este caso, cuando los bloques izquierdo y superior del bloque actual tienen el mismo modo de intra predicción, únicamente puede transmitirse la bandera que indica que el modo de intra predicción del bloque actual es igual a uno del modo de intra predicción del bloque izquierdo y el modo de intra predicción del bloque superior. Análogamente, cuando únicamente uno de los modos de intra predicción de los bloques superior e izquierdo es válido e igual al de el del bloque actual, únicamente puede transmitirse la bandera que indica el modo de intra predicción del bloque actual que es igual a uno del modo de intra predicción del bloque izquierdo y el modo de intra predicción del bloque superior.
Sin embargo, cuando el modo de intra predicción del bloque actual es diferente de aquellos de los bloques izquierdo y superior, se determina si el número del modo de intra predicción del bloque actual es o no menor que aquellos de los bloques izquierdo y superior.
Cuando se determina que tanto los números del modo de intra predicción de los bloques izquierdo como superior del bloque actual son mayores que el número de modo de intra predicción del bloque actual, se determina el modo de intra predicción del bloque actual como un modo de intra predicción final. Sin embargo, cuando únicamente uno de los números de modo de intra predicción de los bloques izquierdo y superior del bloque actual no es mayor que el número de modo de intra predicción del bloque actual, se determina un modo de intra predicción que tiene un número de modo obtenido restando 1 del número de modo de intra predicción del bloque actual como el modo de intra predicción final del bloque actual. También, cuando ninguno de los números de modo de intra predicción de los bloques izquierdo y superior del bloque actual es mayor que el número de modo de intra predicción del bloque actual, se determina un modo de intra predicción que tiene un número de modo obtenido restando 2 del número de modo de intra predicción del bloque actual como el modo de intra predicción final del bloque actual.
A continuación, se codifica el modo de intra predicción final del bloque actual. Usando diferentes tablas de codificación de acuerdo con si el bloque superior del bloque actual tiene el mismo modo de intra predicción que el bloque izquierdo del bloque actual, se codifica el modo de intra predicción final del bloque actual. El modo de intra predicción del bloque superior o el bloque izquierdo del bloque actual puede ser un modo de intra predicción modificado. En otras palabras, el modo de intra predicción del bloque superior o el bloque izquierdo del bloque actual puede ser un modo de intra predicción modificado mediante una tabla para mapear modos de intra predicción permisibles para el bloque superior y el bloque izquierdo a un número predeterminado de los modos de intra predicción. El número predeterminado puede ser 9 o 3.
Un procedimiento de codificación de coeficiente de transformada cuantificado del codificador por entropía 130 de la Figura 3 se describirá a continuación.
Los coeficientes de transformada cuantificados se codifican por entropía usando codificación adaptativa según el contexto de longitud variable (CAVLC) o codificación binaria aritmética adaptativa según contexto (CABAC). Cuando un tamaño de bloque de transformada se hace grande, hay una alta posibilidad de que se requiera explorar un gran número de bits y codificar por entropía coeficientes distintos de 0. Por lo tanto, se prefiere introducir un nuevo procedimiento de exploración para reducir el número de bits para un bloque de transformada que tiene un tamaño igual a o mayor que un tamaño predeterminado.
En primer lugar, se determina si dividir o no coeficientes de transformada cuantificados en una pluralidad de subconjuntos. Depende de un tamaño de bloque de transformada. En otras palabras, cuando el tamaño de un bloque de transformada es igual a o mayor que un tamaño predeterminado, los coeficientes de transformada cuantificados se dividen en una pluralidad de subconjuntos. El tamaño predeterminado puede ser 8x8 o 16x16. La pluralidad de subconjuntos consiste en un subconjunto principal y uno o más subconjuntos residuales. El subconjunto principal se sitúa en un lado superior izquierdo que incluye un coeficiente de CC, y el uno o más subconjuntos residuales cubren el área distinta al área que cubre el subconjunto principal.
A continuación, cuando el tamaño del bloque de transformada es igual a o mayor que el tamaño predeterminado, los coeficientes de transformada cuantificados se dividen en un subconjunto principal y uno o más 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 exploración. Un patrón de exploración en el que el número de bits a codificar se hace el mínimo puede seleccionarse de acuerdo con la distribución de píxeles distintos de cero de los coeficientes de transformada cuantificados en el subconjunto. La pluralidad de patrones de exploración puede incluir exploración en zigzag, exploración vertical y exploración horizontal. También, puede incluirse la exploración vertical o exploración horizontal del Grupo de Expertos de Imágenes en Movimiento (MPEG)-4. Cuando se transmite un patrón de exploración para cada subconjunto, se requiere un número grande de bits. Por lo tanto puede aplicarse un patrón de exploración a una pluralidad de subconjuntos.
Mientras tanto, el patrón de exploración puede seleccionarse de manera adaptativa de acuerdo con el modo de predicción y la dirección de intra predicción. Por ejemplo, en el modo de inter predicción, es posible aplicar únicamente un patrón de exploración predeterminado (por ejemplo, exploración en zigzag) o uno de la pluralidad de patrones de exploración. En el primer caso, la información de patrón de exploración no necesita transmitirse al decodificador, pero en el último caso, la información de patrón de exploración es necesario que se transmita al decodificador. En el modo de intra predicción, puede seleccionarse un patrón de exploración de acuerdo con la dirección de intra predicción. Por ejemplo, es posible aplicar exploración horizontal en un modo de intra predicción vertical, exploración vertical en un modo de intra predicción horizontal, y exploración en zigzag en un modo de CC.
Un patrón de exploración a aplicarse al subconjunto principal y el uno o más subconjuntos residuales puede ser un patrón predeterminado. El patrón predeterminado puede ser exploración en zigzag. Además de la exploración en zigzag, puede aplicarse la exploración horizontal o la exploración vertical a los subconjuntos. El patrón de exploración aplicado a los subconjuntos puede aplicarse de manera adaptativa determinada de acuerdo con el modo de predicción y la dirección de intra predicción. En otras palabras, en el modo de inter predicción, un patrón de exploración predeterminado puede aplicarse a los subconjuntos. En la intra predicción, un patrón de exploración seleccionado mediante la dirección de intra predicción puede aplicarse a los subconjuntos.
Puede ser eficaz explorar los coeficientes de transformada cuantificados en el subconjunto en una dirección inversa. En otras palabras, los coeficientes de transformada cuantificados pueden explorarse desde el último coeficiente distinto de cero del subconjunto en una dirección inversa de acuerdo con un patrón de exploración. Análogamente, la pluralidad de subconjuntos se exploran a partir de un subconjunto que incluye el último coeficiente distinto de cero del bloque de transformada a un subconjunto principal en una dirección inversa.
Mientras tanto, para la decodificación por entropía correcta del decodificador, un codificador codifica información que puede indicar una posición del último coeficiente distinto de cero en el bloque de transformada e información que puede indicar una posición del último coeficiente distinto de cero en cada subconjunto, y transmite la información codificada al decodificador. La información puede indicar una posición del último coeficiente distinto de cero en cada subconjunto. También, la información puede ser información 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 último coeficiente distinto de cero o no en el bloque de transformada. Un patrón de exploración para generar la información de mapa puede ser el mismo que el patrón de exploración 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 intercalación y convertirse en una pluralidad de subbloques, y cada uno de los subbloques puede explorarse y codificarse.
Mientras tanto, cuando una imagen tiene un límite en una dirección específica y se usa un modo de predicción equivalente, se usan diferentes subbloques para datos similares en una porción de límite de movimiento, y puede tener lugar tara innecesaria. En este caso, puede ser adicionalmente eficaz dividir una unidad de codificación en una dirección específica de acuerdo con una forma de la porción de límite de la imagen y realizar estimación de movimiento en cada área dividida.
Con referencia a las Figuras 4 a 6, se describirá un procedimiento de división de manera adaptativa a la dirección en un bloque teniendo en cuenta las características de una imagen. En las Figuras 4, 5 y 6, se describirá una unidad de codificación de 32x32 como un ejemplo. Sin embargo, el tamaño de una unidad de codificación no está limitado a 32x32, y el procedimiento puede aplicarse también a un bloque de 64x64 o a un bloque de 16x16.
En un ejemplo del modo adaptativo más sencillo, una unidad de codificación se divide en dos bloques mediante una línea recta para extraer la dependencia estadística de un área de predicción en topografía local. En otras palabras, una porción de límite de la imagen se hace coincidir a líneas rectas y se divide.
Como se muestra en los dibujos, cuando hay un límite que atraviesa una imagen de un bloque de 32x32, una porción de límite que atraviesa la imagen debería dividirse en bloques pequeños para comprimir de manera eficaz la imagen de acuerdo con un procedimiento de división de imagen convencional.
Por lo tanto, como se muestra en la Figura 4, un bloque de 32x32 debería dividirse en al menos 10 bloques y codificarse. Por lo tanto, deberían transmitirse 10 vectores de movimiento a un decodificador junto con información para representar la división de imagen, y por lo tanto se requiere mucha información adicional distinta de la información de imagen.
Mientras tanto, como se muestra en la Figura 5 o 6, cuando hay un límite que atraviesa la imagen del bloque de 32x32, el número de piezas de información adicional a transmitirse al decodificador puede reducirse significativamente haciendo coincidir el límite de imagen con al menos una línea recta que indica el límite de imagen.
Por ejemplo, cuando el límite que atraviesa el bloque de 32x32 se hace coincidir a dos líneas rectas como se muestra en la Figura 5, el bloque de 32x32 se divide en cuatro bloques de 16x16, y pueden obtenerse las líneas rectas que coinciden respectivamente con el primer y cuarto bloques de 16x16 a un límite de bloque. En este caso, se requieren seis áreas de división, y los vectores de movimiento a transmitirse al decodificador pueden reducirse a seis.
Análogamente, cuando el límite que atraviesa el bloque se hace coincidir a una línea recta como se muestra en la Figura 6, el bloque de 32x32 se divide en dos bloques, y únicamente necesita transmitirse una pieza de la información de modo de bloque y dos vectores de movimiento al decodificador.
Mientras tanto, cuando un bloque se divide usando una línea recta, la información sobre la línea recta usada debería transmitirse adicionalmente al decodificador. La información de línea recta a transmitirse se describirá a continuación.
La información de línea recta a transmitirse puede transmitirse usando diversos procedimientos.
Un primer ejemplo es representar la información en la línea recta usando una distancia y ángulo con respecto a una posición predeterminada. En este caso, la posición predeterminada puede ser un píxel en la esquina superior izquierda o en el centro del bloque. La distancia puede ser un número entero o un valor cuantificado. El ángulo puede ser de 0 a 180, y puede ser también un valor cuantificado.
Un segundo ejemplo es transmitir valores de posición de ambos extremos de la línea recta que atraviesa el bloque al decodificador. Los valores de posición pueden expresarse como valores que indican cómo de lejos están ambos de los extremos desde el píxel en la esquina superior izquierda del bloque mientras van alrededor del límite 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 posición desde el píxel mientras va alrededor del límite en el sentido de las agujas del reloj, y el otro puede representarse como una posición desde el píxel mientras va alrededor del límite en el sentido contrario de las agujas del reloj, de manera que puede expresarse la información de la línea recta. En este caso, la información sobre líneas rectas cercanas a más formas diversas puede expresarse usando un pequeño número de bits.
Cuando hay bloques vecinos que se han dividido de manera adaptativa en dirección y ya codificado, es eficaz transmitir información diferencial entre la información de línea recta en el bloque actual e información de línea recta en uno seleccionado de los bloques vecinos. Es más preferible codificar la información diferencial usando información de dirección en bloques divididos en la misma dirección que el bloque actual. La información de línea recta o la información diferencial en el bloque actual puede expresarse como un índice correspondiente, que puede codificarse en longitud variable y transmitirse.
Mientras tanto, si aplicar o no el procedimiento de división de dirección adaptativa puede determinarse de acuerdo con un tamaño de un bloque de codificación predictiva. Puesto que el procedimiento de división de dirección adaptativa aplicado a un bloque de codificación excesivamente pequeño puede aumentar la cantidad de información y complejidad a transmitirse, es preferible no aplicar el procedimiento.
Como se muestra en la Figura 7, el procedimiento de dividir un bloque de codificación predictiva de acuerdo con una forma de una porción de límite de una imagen puede aplicarse únicamente a direcciones específicas limitadas a un número predeterminado. Por ejemplo, el procedimiento de dividir un bloque puede limitarse a cuatro direcciones de una dirección horizontal, una dirección vertical, una dirección diagonal hacia arriba y una dirección diagonal hacia abajo, o dos direcciones de la dirección horizontal y la dirección vertical. El número de casos de división del bloque en las direcciones específicas puede variar de acuerdo con un tamaño del bloque de codificación predictiva. Por ejemplo, un bloque de codificación predictiva que tiene un tamaño de 32x32 puede dividirse en una dirección específica (por ejemplo, la dirección horizontal) usando siete procedimientos, y un bloque de codificación predictiva que tiene un tamaño de 16x16 puede dividirse usando tres procedimientos. También, independientemente del tamaño del bloque de codificación predictiva, es posible dividir el bloque de codificación predictiva usando el mismo número de procedimientos.
De acuerdo con la crominancia, el bloque de codificación predictiva puede dividirse también en las mismas particiones, y todos los siguientes procedimientos pueden aplicarse también a la división. El bloque de codificación predictiva que tiene respectivas áreas de división debería incluir, en un encabezamiento, una bandera que indica la presencia de un bloque de división, información que indica cómo se ha realizado la división, e índices de imágenes de referencia codificados que están referidos de acuerdo con las respectivas áreas de división.
Cuando un bloque se predice de manera adaptativa en dirección, debería realizarse estimación de movimiento y compensación de movimiento en cada una de las dos áreas divididas. Por lo tanto, debería derivarse un vector de movimiento desde cada una de las áreas divididas, y debería derivarse y codificarse una señal residual entre cada una de las áreas divididas y un área de referencia obtenida en base al vector de movimiento.
Una señal residual puede codificarse usando uno cualquiera de los siguientes procedimientos.
En primer lugar, una señal residual puede derivarse desde cada una de las dos áreas divididas desde un bloque de codificación predictiva, y a continuación las dos señales residuales pueden añadirse para formar una señal residual de bloque y codificarse por transformada. En este caso, es bastante posible que habrá diferencia entre la distribución global de señales residuales en las respectivas áreas divididas a lo largo de un límite, y por lo tanto se prefiere aplicar un filtro al límite.
En otro procedimiento, la codificación puede realizarse aplicando transformada adaptativa de forma a cada una de las áreas divididas. Como se muestra en la Figura 7, cuando un bloque se divide en dos áreas, un bloque superior izquierda se somete a una transformada de 1D horizontal como está y a continuación 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 continuación a transformada de 1D vertical. En este caso, los coeficientes residuales codificados por separado de acuerdo con las respectivas áreas de división pueden transmitirse al decodificador, o pueden combinarse y transmitirse.
En aún otro procedimiento , puede realizarse relleno de acuerdo con las respectivas áreas divididas para generar y codificar un bloque. En otras palabras, cuando se codifica un área de división actual, la otra área de división que constituye el bloque se rellena con un valor del área de división actual para constituir el bloque y a continuación se somete a codificación de transformada en 2D. El relleno puede ser relleno horizontal (copiar horizontalmente un área indefinida a partir de un área definida) y relleno vertical (copiar verticalmente un área definida a partir de un área definida). En este caso, se prefiere realizar relleno horizontal y a continuación relleno vertical. También, puede rellenarse un píxel indefinido adyacente a uno o más píxeles definidos a través de la combinación lineal de los píxeles definidos. También, puede proporcionarse direccionalidad de acuerdo con una dirección de división, de manera que puede realizarse en primer lugar uno cualquiera de relleno horizontal y relleno vertical.
A continuación, se describirá la estimación de vector de movimiento.
Cuando un bloque se divide en dos áreas usando una línea recta, un vector de movimiento de cada una de las áreas divididas se codifica de manera diferencial usando un vector de movimiento ya codificado.
En un primer procedimiento, una primera área de las áreas divididas puede seleccionar uno de los vectores de movimiento de bloques adyacentes como un predictor de vector de movimiento, y una segunda área puede seleccionar uno de los vectores de movimiento de bloques adyacentes distinto de la primera área como un predictor de vector de movimiento.
En un segundo procedimiento, una primera área de las áreas divididas puede seleccionar uno de los vectores de movimiento de bloques adyacentes como un predictor de vector de movimiento, y una segunda área puede seleccionar un vector de movimiento de la primera área como un predictor de vector de movimiento.
En un tercer procedimiento, cuando hay un bloque dividido de manera adaptativa en dirección entre bloques adyacentes a un bloque actual, se usa un vector de movimiento del bloque dividido de manera adaptativa en dirección 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 dirección, los vectores de movimiento en una secuencia predeterminada o los vectores de movimiento de los bloques que tienen direcciones de división
similar pueden usarse como vectores de movimiento de referencia.
En un cuarto procedimiento, una primera área de las áreas divididas puede establecer un vector de movimiento de uno de los bloques adyacentes al primer área como un predictor de vector de movimiento del primer área, y una segunda área puede seleccionar uno cualquiera de los vectores de movimiento de bloques adyacentes a la segunda área y un vector de movimiento de un bloque o un área de división en la misma posición en una imagen anterior como un predictor de vector de movimiento y codificar un vector de movimiento diferencial.
En este punto, se usa una línea recta para división de bloque. Sin embargo, es posible también dividir un bloque en al menos dos áreas de división usando información que consiste en al menos dos líneas rectas, y la codificación de las áreas divididas puede realizarse como se ha descrito anteriormente.
Aunque la invención se ha mostrado y descrito con referencia a ciertas realizaciones ejemplares de la misma, se entenderá por los expertos en la materia que pueden realizarse diversos cambios en forma y detalles en la misma sin alejarse del alcance de la invención según se define mediante las reivindicaciones adjuntas.
Claims (2)
1. Un aparato para decodificar una imagen, comprendiendo el aparato: una unidad de decodificación de entropía configurada para recibir información de intra predicción y coeficientes de transformación cuantificados unidimensionales 1D, desde un dispositivo de codificación de imágenes, y restaurar un bloque de transformación cuantificado usando los coeficientes de transformación cuantificados 1D; una unidad de intra predicción configurada para restaurar un modo de intra predicción desde la información de intra predicción y generar un bloque de predicción de acuerdo con el modo de intra predicción; una unidad de cuantificación/transformación inversas configurada para cuantificar inversamente y transformar inversamente el bloque cuantificado para generar un bloque residual; y una unidad de adición configurada para añadir el bloque residual y el bloque de predicción para generar un bloque original, caracterizado porque:
la unidad de decodificación de entropía restaura una pluralidad de subbloques aplicando un primer patrón de exploración determinado de acuerdo con el modo de intra predicción a los coeficientes de transformación cuantificados 1D y restaura el bloque de transformación cuantificado aplicando un segundo patrón de exploración determinado de acuerdo con el modo de intra predicción a la pluralidad de subbloques si se determina que un tamaño del bloque cuantificado es igual o superior a 8x8,
en el que el primer patrón es una orden de exploración aplicada a los coeficientes cuantificados 1D dentro de un subbloque, y el segundo patrón de exploración es una orden de exploración aplicada a la pluralidad de subbloques.
en el que el primer patrón de exploración es el mismo que la segunda exploración.
2. El aparato de la reivindicación 1, en el que la unidad de decodificación de entropía restaura el bloque de transformación cuantificado aplicando el segundo patrón de exploración en una dirección inversa a la pluralidad de subbloques.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20100038158 | 2010-04-23 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2897491T3 true ES2897491T3 (es) | 2022-03-01 |
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 (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 |
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 |
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) | 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)
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)
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 |
-
2011
- 2011-04-22 RU RU2014118774/08A patent/RU2549157C1/ru active
- 2011-04-22 RS RS20160901A patent/RS55261B1/sr unknown
- 2011-04-22 CN CN201510057144.5A patent/CN104601998B/zh active Active
- 2011-04-22 KR KR1020127028862A patent/KR101376136B1/ko active IP Right Review Request
- 2011-04-22 KR KR1020167020630A patent/KR20160093104A/ko not_active IP Right Cessation
- 2011-04-22 PL PL15175089T patent/PL2945382T3/pl unknown
- 2011-04-22 LT LTEP15175114.6T patent/LT2950534T/lt unknown
- 2011-04-22 SG SG2012078812A patent/SG185371A1/en unknown
- 2011-04-22 WO PCT/KR2011/002972 patent/WO2011133002A2/ko active Application Filing
- 2011-04-22 SG SG10201503179VA patent/SG10201503179VA/en unknown
- 2011-04-22 SG SG10201503173PA patent/SG10201503173PA/en unknown
- 2011-04-22 SG SG10201503178RA patent/SG10201503178RA/en unknown
- 2011-04-22 PL PL15175100T patent/PL2950533T3/pl unknown
- 2011-04-22 CN CN201510555800.4A patent/CN105120274B/zh active Active
- 2011-04-22 LT LTEP15175089.0T patent/LT2945382T/lt unknown
- 2011-04-22 MY MYPI2015001011A patent/MY162154A/en unknown
- 2011-04-22 HU HUE15175096A patent/HUE031188T2/hu unknown
- 2011-04-22 PE PE2017000365A patent/PE20170650A1/es unknown
- 2011-04-22 SG SG10201503151YA patent/SG10201503151YA/en unknown
- 2011-04-22 SG SG10201503177TA patent/SG10201503177TA/en unknown
- 2011-04-22 PE PE2012002064A patent/PE20130929A1/es active IP Right Grant
- 2011-04-22 HU HUE15175100A patent/HUE032615T2/en unknown
- 2011-04-22 CA CA2934942A patent/CA2934942C/en active Active
- 2011-04-22 PT PT117722900T patent/PT2563020E/pt unknown
- 2011-04-22 EP EP15175097.3A patent/EP2947878B1/en active Active
- 2011-04-22 HU HUE15175097A patent/HUE034345T2/en unknown
- 2011-04-22 KR KR1020147010243A patent/KR20140057671A/ko not_active IP Right Cessation
- 2011-04-22 MY MYPI2012004700A patent/MY157593A/en unknown
- 2011-04-22 EP EP17160486.1A patent/EP3197158B1/en active Active
- 2011-04-22 DK DK15175089.0T patent/DK2945382T3/en active
- 2011-04-22 MY MYPI2015000951A patent/MY162148A/en unknown
- 2011-04-22 BR BR122014030030-1A patent/BR122014030030A2/pt not_active Application Discontinuation
- 2011-04-22 CA CA2934927A patent/CA2934927C/en active Active
- 2011-04-22 JP JP2013506093A patent/JP5688136B2/ja active Active
- 2011-04-22 RS RS20170833A patent/RS56193B1/sr unknown
- 2011-04-22 RU RU2012149839/08A patent/RU2523963C2/ru active
- 2011-04-22 SI SI201131157A patent/SI2950534T1/sl unknown
- 2011-04-22 LT LTEP15175097.3T patent/LT2947878T/lt unknown
- 2011-04-22 ES ES15175096.5T patent/ES2602677T3/es active Active
- 2011-04-22 KR KR1020167020633A patent/KR20160093107A/ko not_active IP Right Cessation
- 2011-04-22 SI SI201131159A patent/SI2947878T1/sl unknown
- 2011-04-22 CA CA2857849A patent/CA2857849C/en active Active
- 2011-04-22 CN CN201510552979.8A patent/CN105245877B/zh active Active
- 2011-04-22 ES ES15175114.6T patent/ES2618917T3/es active Active
- 2011-04-22 MX MX2015004590A patent/MX348484B/es unknown
- 2011-04-22 KR KR1020137020592A patent/KR20130103803A/ko not_active IP Right Cessation
- 2011-04-22 PT PT151750965T patent/PT2947877T/pt unknown
- 2011-04-22 ES ES15175097.3T patent/ES2620772T3/es active Active
- 2011-04-22 SG SG10201503180SA patent/SG10201503180SA/en unknown
- 2011-04-22 DK DK15175096.5T patent/DK2947877T3/en active
- 2011-04-22 HU HUE19174960A patent/HUE057125T2/hu unknown
- 2011-04-22 EP EP11772290.0A patent/EP2563020B1/en active Active
- 2011-04-22 SG SG10201503182WA patent/SG10201503182WA/en unknown
- 2011-04-22 HU HUE11772290A patent/HUE026246T2/en unknown
- 2011-04-22 MY MYPI2015000950A patent/MY162147A/en unknown
- 2011-04-22 RS RS20170227A patent/RS55761B1/sr unknown
- 2011-04-22 MY MYPI2015000986A patent/MY179498A/en unknown
- 2011-04-22 CN CN201510055876.0A patent/CN104717498B/zh active Active
- 2011-04-22 ES ES15175100.5T patent/ES2618932T3/es active Active
- 2011-04-22 CN CN201180031338.8A patent/CN103004197B/zh active Active
- 2011-04-22 PL PL17160486T patent/PL3197158T3/pl unknown
- 2011-04-22 CA CA2935176A patent/CA2935176C/en active Active
- 2011-04-22 EP EP15175100.5A patent/EP2950533B1/en active Active
- 2011-04-22 LT LTEP15175096.5T patent/LT2947877T/lt unknown
- 2011-04-22 DK DK15175100.5T patent/DK2950533T3/en active
- 2011-04-22 RS RS20150573A patent/RS54213B1/en unknown
- 2011-04-22 SI SI201131040A patent/SI2947877T1/sl unknown
- 2011-04-22 EP EP15175114.6A patent/EP2950534B1/en active Active
- 2011-04-22 HU HUE17160486A patent/HUE046331T2/hu unknown
- 2011-04-22 PT PT151750890T patent/PT2945382T/pt unknown
- 2011-04-22 MX MX2015004584A patent/MX348486B/es unknown
- 2011-04-22 PL PL15175097T patent/PL2947878T3/pl unknown
- 2011-04-22 KR KR1020167020632A patent/KR20160093106A/ko not_active IP Right Cessation
- 2011-04-22 DK DK15175097.3T patent/DK2947878T3/en active
- 2011-04-22 HU HUE15175089A patent/HUE034476T2/en unknown
- 2011-04-22 CA CA2935202A patent/CA2935202C/en active Active
- 2011-04-22 SG SG10201503183TA patent/SG10201503183TA/en unknown
- 2011-04-22 ES ES15175089.0T patent/ES2632996T3/es active Active
- 2011-04-22 CA CA2934930A patent/CA2934930C/en active Active
- 2011-04-22 RU RU2014118776A patent/RU2658148C2/ru active
- 2011-04-22 PT PT151750973T patent/PT2947878T/pt unknown
- 2011-04-22 PL PL15175096T patent/PL2947877T3/pl unknown
- 2011-04-22 PL PL11772290T patent/PL2563020T3/pl unknown
- 2011-04-22 PT PT151751005T patent/PT2950533T/pt unknown
- 2011-04-22 PE PE2017000368A patent/PE20170653A1/es unknown
- 2011-04-22 EP EP15175089.0A patent/EP2945382B1/en active Active
- 2011-04-22 CN CN201510552994.2A patent/CN105245885B/zh active Active
- 2011-04-22 MX MX2015004587A patent/MX348485B/es unknown
- 2011-04-22 EP EP19174960.5A patent/EP3565247B1/en active Active
- 2011-04-22 MY MYPI2015000988A patent/MY162153A/en unknown
- 2011-04-22 MX MX2015004581A patent/MX348487B/es unknown
- 2011-04-22 KR KR1020137020595A patent/KR101476117B1/ko active IP Right Grant
- 2011-04-22 KR KR1020147010242A patent/KR20140057670A/ko not_active IP Right Cessation
- 2011-04-22 PE PE2017000364A patent/PE20170649A1/es unknown
- 2011-04-22 SG SG10201503185PA patent/SG10201503185PA/en unknown
- 2011-04-22 EP EP15175096.5A patent/EP2947877B1/en active Active
- 2011-04-22 CA CA2935205A patent/CA2935205C/en active Active
- 2011-04-22 MY MYPI2015001012A patent/MY157877A/en unknown
- 2011-04-22 PE PE2017000369A patent/PE20170654A1/es unknown
- 2011-04-22 MX MX2015004591A patent/MX348488B/es unknown
- 2011-04-22 PE PE2017000366A patent/PE20170651A1/es unknown
- 2011-04-22 SI SI201130625T patent/SI2563020T1/sl unknown
- 2011-04-22 CN CN201510552987.2A patent/CN105245883B/zh active Active
- 2011-04-22 AU AU2011243334A patent/AU2011243334B2/en active Active
- 2011-04-22 SI SI201131158A patent/SI2950533T1/sl unknown
- 2011-04-22 BR BR122014030029-8A patent/BR122014030029A2/pt not_active Application Discontinuation
- 2011-04-22 CN CN201510555562.7A patent/CN105245887B/zh active Active
- 2011-04-22 CA CA2797047A patent/CA2797047C/en active Active
- 2011-04-22 BR BR122014030027-1A patent/BR122014030027A2/pt not_active Application Discontinuation
- 2011-04-22 PL PL19174960T patent/PL3565247T3/pl unknown
- 2011-04-22 BR BR122014030028-0A patent/BR122014030028A2/pt not_active Application Discontinuation
- 2011-04-22 ES ES17160486T patent/ES2746015T3/es active Active
- 2011-04-22 SG SG10201503176SA patent/SG10201503176SA/en unknown
- 2011-04-22 PT PT151751146T patent/PT2950534T/pt unknown
- 2011-04-22 CA CA2934940A patent/CA2934940C/en active Active
- 2011-04-22 SI SI201131259T patent/SI2945382T1/sl unknown
- 2011-04-22 MY MYPI2015000970A patent/MY163233A/en unknown
- 2011-04-22 MY MYPI2015000987A patent/MY163232A/en unknown
- 2011-04-22 PL PL15175114T patent/PL2950534T3/pl unknown
- 2011-04-22 CN CN201510552989.1A patent/CN105245884B/zh active Active
- 2011-04-22 MY MYPI2015000953A patent/MY162149A/en unknown
- 2011-04-22 DK DK15175114.6T patent/DK2950534T3/en active
- 2011-04-22 PE PE2017000367A patent/PE20170652A1/es unknown
- 2011-04-22 CN CN201510553023.XA patent/CN105245886B/zh active Active
- 2011-04-22 KR KR1020147010241A patent/KR20140057669A/ko not_active IP Right Cessation
- 2011-04-22 MY MYPI2015000971A patent/MY162152A/en unknown
- 2011-04-22 PE PE2014001238A patent/PE20142178A1/es active IP Right Grant
- 2011-04-22 ES ES19174960T patent/ES2897491T3/es active Active
- 2011-04-22 BR BR112012026809-0A patent/BR112012026809B1/pt active IP Right Grant
- 2011-04-22 DK DK11772290.0T patent/DK2563020T3/en active
- 2011-04-22 CN CN201510555751.4A patent/CN105120273B/zh active Active
- 2011-04-22 RS RS20170321A patent/RS55829B1/sr unknown
- 2011-04-22 KR KR1020167020631A patent/KR20160093105A/ko not_active IP Right Cessation
- 2011-04-22 BR BR122014030026A patent/BR122014030026A2/pt not_active Application Discontinuation
- 2011-04-22 MX MX2012012333A patent/MX2012012333A/es active IP Right Grant
- 2011-04-22 ES ES11772290.0T patent/ES2546514T3/es active Active
- 2011-04-22 LT LTEP15175100.5T patent/LT2950533T/lt unknown
- 2011-04-22 HU HUE15175114A patent/HUE032617T2/en unknown
- 2011-04-22 RS RS20170234A patent/RS55780B1/sr unknown
-
2012
- 2012-09-21 US US13/624,753 patent/US9100651B2/en active Active
- 2012-10-21 IL IL222579A patent/IL222579A/en active IP Right Grant
- 2012-11-21 ZA ZA2012/08766A patent/ZA201208766B/en unknown
-
2014
- 2014-05-08 RU RU2014118779A patent/RU2658137C2/ru active
- 2014-05-08 RU RU2014118778A patent/RU2656985C2/ru active
- 2014-05-08 RU RU2014118777A patent/RU2658141C2/ru active
- 2014-05-08 RU RU2014118780A patent/RU2659470C2/ru active
- 2014-05-22 AU AU2014202818A patent/AU2014202818B2/en active Active
- 2014-05-22 AU AU2014202816A patent/AU2014202816B2/en active Active
- 2014-05-22 AU AU2014202817A patent/AU2014202817B2/en active Active
- 2014-05-22 AU AU2014202819A patent/AU2014202819B2/en active Active
- 2014-05-22 AU AU2014202820A patent/AU2014202820B2/en active Active
- 2014-05-26 PH PH12014501184A patent/PH12014501184B1/en unknown
- 2014-05-26 PH PH12014501183A patent/PH12014501183B1/en unknown
- 2014-05-27 PH PH12014501186A patent/PH12014501186A1/en unknown
- 2014-05-27 PH PH12014501185A patent/PH12014501185A1/en unknown
- 2014-05-27 PH PH12014501187A patent/PH12014501187B1/en unknown
- 2014-07-28 IL IL233841A patent/IL233841A/en active IP Right Grant
- 2014-07-28 IL IL233840A patent/IL233840A/en active IP Right Grant
- 2014-10-24 JP JP2014217428A patent/JP5877236B2/ja active Active
-
2015
- 2015-02-03 JP JP2015019650A patent/JP5928966B2/ja not_active Expired - Fee Related
- 2015-02-03 JP JP2015019646A patent/JP5919404B2/ja active Active
- 2015-02-03 JP JP2015019649A patent/JP5919407B2/ja active Active
- 2015-02-03 JP JP2015019647A patent/JP5919405B2/ja active Active
- 2015-02-03 JP JP2015019648A patent/JP5919406B2/ja active Active
- 2015-04-15 US US14/687,417 patent/US9191672B2/en active Active
- 2015-04-15 US US14/687,338 patent/US9237348B2/en active Active
- 2015-04-15 US US14/687,512 patent/US9191674B2/en active Active
- 2015-04-15 US US14/687,666 patent/US9264719B2/en active Active
- 2015-04-15 US US14/687,424 patent/US9197896B2/en active Active
- 2015-04-15 US US14/687,482 patent/US9191673B2/en active Active
- 2015-04-15 US US14/687,541 patent/US9197897B2/en active Active
- 2015-04-15 US US14/687,609 patent/US9232224B2/en active Active
- 2015-04-15 US US14/687,587 patent/US9264718B2/en active Active
- 2015-04-15 US US14/687,354 patent/US9197895B2/en active Active
- 2015-09-14 HR HRP20150964TT patent/HRP20150964T1/hr unknown
- 2015-09-29 CY CY20151100867T patent/CY1116723T1/el unknown
- 2015-10-07 SM SM201500244T patent/SMT201500244B/xx unknown
-
2016
- 2016-04-15 JP JP2016082316A patent/JP6084730B2/ja active Active
- 2016-07-21 IL IL246886A patent/IL246886A/en active IP Right Grant
- 2016-07-21 IL IL246884A patent/IL246884A/en active IP Right Grant
- 2016-07-21 IL IL246885A patent/IL246885B/en active IP Right Grant
- 2016-12-13 SM SM201600448T patent/SMT201600448B/it unknown
-
2017
- 2017-01-12 HR HRP20170054TT patent/HRP20170054T1/hr unknown
- 2017-01-12 CY CY20171100046T patent/CY1118425T1/el unknown
- 2017-03-20 CY CY20171100356T patent/CY1118877T1/el unknown
- 2017-04-11 CY CY20171100432T patent/CY1118907T1/el unknown
- 2017-04-11 CY CY20171100431T patent/CY1118908T1/el unknown
- 2017-05-15 HR HRP20170729TT patent/HRP20170729T1/hr unknown
- 2017-05-15 HR HRP20170726TT patent/HRP20170726T1/hr unknown
- 2017-05-15 HR HRP20170724TT patent/HRP20170724T1/hr unknown
- 2017-08-11 CY CY20171100872T patent/CY1119314T1/el unknown
- 2017-09-07 HR HRP20171353TT patent/HRP20171353T1/hr unknown
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2897491T3 (es) | Aparato para decodificar una imagen |