ES2794582T3 - Procedimiento de decodificación de imágenes y aparato de decodificación de imágenes - Google Patents
Procedimiento de decodificación de imágenes y aparato de decodificación de imágenes Download PDFInfo
- Publication number
- ES2794582T3 ES2794582T3 ES17188018T ES17188018T ES2794582T3 ES 2794582 T3 ES2794582 T3 ES 2794582T3 ES 17188018 T ES17188018 T ES 17188018T ES 17188018 T ES17188018 T ES 17188018T ES 2794582 T3 ES2794582 T3 ES 2794582T3
- Authority
- ES
- Spain
- Prior art keywords
- prediction
- image
- unit
- color difference
- motion vector
- 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
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/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/004—Predictors, e.g. intraframe, interframe 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/523—Motion estimation or motion compensation with sub-pixel accuracy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/567—Motion estimation based on rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Color Television Systems (AREA)
Abstract
Un procedimiento de decodificación que comprende: determinar, mediante una unidad (302) de decodificación, un modo de predicción según un modo de fusión, especificando el modo de predicción una primera predicción usando una primera imagen de referencia, una segunda predicción usando una segunda imagen de referencia, o una bipredicción usando la primera imagen de referencia y la segunda imagen de referencia, adquirir, mediante una unidad (110) de generación, una o más imágenes de referencia; interpolar, mediante la unidad (110) de generación, cada uno de un componente de luminancia y un componente de diferencia de color en la imagen o imágenes de referencia para generar una imagen de predicción; en el que la generación de la imagen de predicción para el componente de diferencia de color incluye cambiar, mediante la unidad (110) de generación, un modo de predicción desde la bi-predicción hasta la primera predicción si el tamaño de un bloque de predicción determinado por un ancho y una altura del bloque de predicción es igual o menor que un valor predeterminado y si el modo de predicción especifica la bipredicción.
Description
DESCRIPCIÓN
Procedimiento de decodificación de imágenes y aparato de decodificación de imágenes
Campo
Las realizaciones de la presente invención se refieren a un procedimiento de decodificación de imágenes y un aparato de decodificación de imágenes.
Antecedentes
En una técnica de codificación y decodificación de vídeo, generalmente se ejecuta una interpolación con compensación de movimiento para cada bloque. Una señal de imagen a referir se almacena en una memoria externa;
por lo tanto, cuando la codificación y decodificación de vídeo es implementada por hardware, puede haber restricciones en la cantidad de datos leídos. Por consiguiente, cuando aumenta la cantidad de acceso a la memoria, un llamado ancho de banda de memoria, que es un cuello de botella en las operaciones de codificación y decodificación, se convierte en un problema.
En la interpolación con compensación de movimiento para cada bloque, se ejecuta un procedimiento de filtrado de interpolación que utiliza el filtro FIR (respuesta de impulso finito) en la dirección horizontal y en la dirección vertical. En el procedimiento de filtrado de interpolación, se debe acceder a un píxel fuera del bloque. Cuando el número de píxeles fuera del bloque aumenta, el ancho de banda de memoria por píxel también aumenta.
Convencionalmente, el ancho de banda de memoria por píxel se ha reducido aplicando un filtro de interpolación con una longitud de derivación corta a un bloque con un tamaño pequeño por el cual la relación de los píxeles accedidos fuera del bloque aumenta relativamente.
Lista de citas
Literatura de patentes
Referencia de patente 1: Patente Japonesa n.° 4120301
Referencia de patente 2: Hung-Chih Lin y col.: "Fast temporal prediction selection for H.264/AVC scalable video coding" Image Processing (ICIP), 2009 16th IEEE INTERNATIONAL CONFERENCE ON, IEEE, PISCATAWAY,
NJ, USA, 7 de noviembre de 2009, páginas 3425-3428.
Sumario
Problema técnico
Sin embargo, en la técnica convencional, el ancho de banda de la memoria no se puede reducir adecuadamente. Por ejemplo, en el caso del formato del croma, como 4 : 2 : 0 o 4 : 2 : 2, en el que el número de muestras del píxel para una diferencia de color (componente de diferencia de color) es menor que el número de muestras del píxel para luminancia (componente de luminancia), y la resolución es baja, la interpolación debe ejecutarse de tal manera que la diferencia de color se amplíe más y la luminancia se defina como una referencia. Por lo tanto, cuando el filtro con toques más largos que dos toques se usa para la interpolación para la diferencia de color, el procedimiento para la señal de diferencia de color no puede restringirse, incluso si el procedimiento se cambia por bloque de luminancia.
Solución al problema
En un primer aspecto, se proporciona un procedimiento de decodificación de imágenes como se menciona en la reivindicación 1. En un segundo aspecto, se proporciona un aparato de decodificación de imágenes según la reivindicación 7,
Breve descripción de los dibujos
La figura 1 es un diagrama de bloques que ilustra un aparato de codificación de imágenes útil para entender una realización de la presente invención.
La figura 2 es una vista que ilustra un ejemplo de información de formato de croma.
La figura 3 es una vista de un vector de movimiento con una señal de diferencia de color en formato 4 : 2 : 0. La figura 4 es una vista de un vector de movimiento con una señal de luminancia en formato 4 : 2 : 0. La figura 5 es una vista de un vector de movimiento con una señal de diferencia de color en formato 4 : 2 : 2. La figura 6 es una vista de un vector de movimiento con una señal de luminancia en formato 4 : 2 : 2.
La figura 7 es una vista que ilustra un ejemplo de píxeles a los que se accede en formato 4 : 2 : 0.
La figura 8 es una vista que ilustra un ejemplo de píxeles a los que se accede en formato 4 : 2 : 0.
La figura 9 es una vista que ilustra un ejemplo de píxeles a los que se accede en formato 4 : 2 : 2.
La figura 10 es un diagrama de bloques que ilustra un aparato de decodificación de imágenes de acuerdo con una realización de la invención correspondiente al aparato de codificación de imágenes.
La figura 11 es un diagrama de bloques que ilustra una unidad de generación de imagen predichas.
La figura 12 es un diagrama de flujo de control de acuerdo con la realización.
La figura 13 es un diagrama de flujo de un procedimiento de reducir un ancho de banda de memoria.
La figura 14 es un diagrama de flujo de un procedimiento de reducir un ancho de banda de memoria.
La figura 15 es un diagrama de flujo de un procedimiento de reducir un ancho de banda de memoria.
La figura 16 es un diagrama de que ilustra una configuración de hardware del aparato acuerdo con la realización.
Descripción de realizaciones y ejemplos
Ejemplos y realizaciones preferentes del procedimiento de codificación de imágenes, el procedimiento de decodificación de imágenes, el aparato de codificación de imágenes y el aparato de decodificación de imágenes según la presente invención se describirán a continuación en detalle con referencia a los dibujos adjuntos.
El aparato de codificación de imágenes y el aparato de decodificación de imágenes descritos en el presente documento hacen un control al referirse a la información del formato de croma de modo que la posición de un píxel indicado por un vector de movimiento en un bloque que tenga un tamaño menor que un tamaño predeterminado no esté sujeto a una interpolación para una diferencia de color, reduciendo así un ancho de banda de memoria.
La figura 1 es un diagrama de bloques que ilustra un ejemplo de configuración de un aparato 100 de codificación de imagen. Tal y como se ilustra en la figura 1, el aparato 100 de codificación de imágenes incluye una unidad 102 de sustracción, una unidad 103 de transformación/cuantificación, una unidad 104 de transformación inversa/cuantificación inversa, una unidad 105 de codificación de entropía, una unidad 106 de adición, una memoria 108 de cuadro, una unidad 110 de generación de imagen predicha, una unidad 112 de control de predicción, una unidad 113 de control de codificación y una unidad 116 de búsqueda de vectores de movimiento.
El aparato 100 de codificación de imágenes genera datos 120 codificados a partir de la señal 101 de vídeo de entrada. Por ejemplo, la señal 101 de vídeo de entrada se introduce en el aparato 100 de codificación de imágenes en unidades o cuadros. La señal 101 de vídeo de entrada se divide en un bloque que es un macrobloque.
La unidad 102 de sustracción emite una señal de error de predicción que es una diferencia entre una señal 111 de imagen predicha generada por la unidad 110 de generación de imagen predicha y la señal 101 de entrada de vídeo.
La unidad 103 de transformación/cuantificación ejecuta una cuantificación después de ejecutar una transformación ortogonal en la señal de error de predicción con una transformación discreta del coseno (DCT), generando así información cuantificada del coeficiente de transformación. La información cuantificada del coeficiente de transformación se divide en dos. Una de la información dividida es la entrada a la unidad 105 de codificación de entropía. El otro es la entrada a la unidad 104 de cuantificación inversa/transformación inversa.
La unidad 104 de cuantificación inversa/transformación inversa ejecuta la cuantificación inversa y la transformación inversa en la información del coeficiente de transformación cuantificada como el procedimiento inverso al procesamiento ejecutado por la unidad 103 de transformación/cuantificación, reproduciendo así la señal de error de predicción.
La unidad 106 de adición agrega la señal de error de predicción y la señal de imagen predicha. De acuerdo con este procedimiento, se genera una señal 107 de imagen decodificada. La señal 107 de imagen decodificada se introduce en la memoria 108 de cuadro.
La memoria 108 de cuadro es una unidad de memoria que almacena en ella una señal de imagen de referencia. La memoria 108 de cuadro ejecuta un procedimiento de filtrado u otro procedimiento en la señal 107 de imagen decodificada, y luego, determina si la señal 107 de imagen decodificada se almacena o no para permitir que la señal 107 de imagen decodificada se convierta en la señal 109 de imagen de referencia introducida en la unidad 110 de generación de imagen predicha. La señal 109 de imagen de referencia se introduce en la unidad 110 de generación de imagen predicha y en la unidad 116 de búsqueda de vector de movimiento.
La unidad 116 de búsqueda de vector de movimiento genera información 117 del vector de movimiento a partir de la señal 101 de vídeo de entrada y la señal 109 de imagen de referencia. La información 117 del vector de movimiento se introduce en la unidad 110 de generación de imagen predicha, y también se transmite a la unidad 105 de codificación de entropía.
La unidad 110 de generación de imagen predicha genera la señal 111 de imagen predicha a partir de la señal 109 de imagen de referencia, la información 118 de control de predicción, y la información 117 del vector de movimiento.
La unidad 113 de control de codificación ingresa información 115 de restricción de tamaño de bloque a la unidad 112 de control de predicción, y transmite información 119 de perfil/nivel a la unidad 105 de codificación de entropía.
La información 119 de perfil/nivel incluye información de perfil que indica una combinación de grupos de herramientas de codificación, e información de nivel que es información de restricción del aparato de codificación de imágenes de acuerdo con la potencia de procesamiento del aparato de decodificación de imágenes. La información de nivel indica una combinación de restricción de un número máximo de macrobloques por hora, el número máximo de macrobloques
por cuadro, el rango máximo de búsqueda de vectores y el número de vectores en dos macrobloques consecutivos.
Por ejemplo, H.264 especifica información de perfil como un perfil de línea base, un perfil principal y un perfil alto. H.264 también especifica información de 16 niveles.
En el procedimiento de decodificación de imágenes descrito, los parámetros se especifican utilizando la información de perfil/nivel. Los parámetros incluyen un parámetro que especifica si el procedimiento de reducción del ancho de banda de la memoria se aplica o no, el valor de restricción del tamaño de bloque (información 115 de restricción de tamaño de bloque) y un procedimiento de restricción. Estos parámetros pueden especificarse utilizando información diferente a la información de perfil/nivel.
La información 115 de restricción de tamaño de bloque es información que especifica un valor umbral (el valor de restricción del tamaño de bloque) utilizado para la determinación del tamaño de bloque. Por ejemplo, la unidad 113 de control de codificación establece información 115 de restricción de tamaño de bloque diferente de acuerdo con la información de perfil/nivel. La información 115 de restricción de tamaño de bloque puede incluirse en la información de perfil/nivel.
La unidad 112 de control de predicción controla la generación de imagen predicha ejecutada por la unidad 110 de generación de imagen predicha de acuerdo con la información 115 de restricción de tamaño de bloque ingresada desde la unidad 113 de control de codificación, la información 114 de formato de croma de la señal 101 de vídeo de entrada, y la información 117 del vector de movimiento ingresada desde la unidad 116 de búsqueda de vector de movimiento (el detalle se describirá más adelante). La unidad 112 de control de predicción genera la información 118 de control de predicción utilizada para el control de la generación de imagen predicha. La información 118 de control de predicción se introduce en la unidad 110 de generación de imagen predicha, y también se transmite a la unidad 105 de codificación de entropía.
La unidad 105 de codificación de entropía realiza una codificación de entropía en la información de codificación para generar los datos 120 codificados de acuerdo con una sintaxis prescrita. La información de codificación incluye, por ejemplo, la entrada de información cuantificada del coeficiente de transformación de la unidad 103 de transformación/cuantificación, la información 114 de formato de croma de la señal de vídeo de entrada, la información 117 del vector de movimiento introducida desde la unidad 116 de búsqueda de vector de movimiento, la información 118 de control de predicción ingresada desde la unidad 112 de control de predicción, y la información 119 de perfil/nivel ingresada desde la unidad 113 de control de codificación.
En este punto, se describirá la información 114 de formato de croma. La información 114 de formato de croma es información que indica un formato de croma de la señal 101 de vídeo de entrada. La figura 2 es una vista que ilustra un ejemplo de la información 114 de formato de croma. La figura 2 ilustra un ejemplo en el que idc_formato_croma usado en H.264 se usa como la información 114 de formato de croma.
idc_formato_croma = 0 indica un formato monocromo solo con luminancia. idc_formato_croma = 1 indica formato 4: 2 : 0 en el que la diferencia de color se muestrea a la mitad horizontal y verticalmente con respecto a la luminancia. idc_formato_croma = 2 indica formato 4: 2 : 2 en el que la diferencia de color se muestrea a la mitad solo horizontalmente con respecto a la luminancia. idc_formato_croma = 3 indica formato 4: 4 : 4 en el que la luminancia y la diferencia de color tienen el mismo número de píxeles.
El tamaño horizontal del bloque de predicción de la señal de luminancia se define como nPSW, y el tamaño vertical se define como nPSH. En el formato 4 : 2 : 0, el tamaño horizontal de los bloques de las señales de diferencia de color Cb y Cr es nPSW/2, mientras que el tamaño vertical es nPSH/2. En el formato 4 : 2 : 2, el tamaño horizontal de los bloques de las señales de diferencia de color Cb y Cr es nPSW/2, mientras que el tamaño vertical es nPSH. En el formato 4 : 4 : 4, el tamaño horizontal de los bloques de las señales de diferencia de color Cb y Cr es nPSW, mientras que el tamaño vertical es nPSH.
A continuación, se describirá la relación entre el formato de croma y la interpolación.
La figura 3 es una vista que ilustra la posición del vector de movimiento en una imagen de interpolación con una precisión de 1/8 pel de la señal de diferencia de color en el formato 4: 2 : 0. "B" es una posición de un píxel entero de la señal de diferencia de color, que es la posición del vector de movimiento que no necesita la interpolación. Las porciones blancas indican la posición del vector de movimiento que necesita una interpolación unidimensional para la señal de diferencia de color solo horizontal o verticalmente. Las porciones sombreadas claras indican la posición del vector de movimiento que necesita una interpolación bidimensional para realizar la interpolación a la señal de diferencia de color tanto horizontal como verticalmente.
La figura 4 es una vista que ilustra la posición del vector de movimiento en una imagen de interpolación con una precisión de 1/4 de la señal de luminancia en el formato 4: 2 : 0. "A" es la posición del píxel entero de la señal de luminancia, que es la posición del vector de movimiento que no necesita la interpolación. Las porciones blancas con "A" indican la posición del vector de movimiento que no necesita la interpolación tanto para la señal de luminancia como para la señal de diferencia de color. Las porciones sombreadas claras con "A" indican la posición del vector de movimiento que no necesita la interpolación para la señal de luminancia pero necesita la interpolación para la señal
de diferencia de color.
Las porciones blancas sin "A" indican la posición del vector de movimiento que necesita la interpolación unidimensional para la señal de luminancia y la señal de diferencia de color solo horizontal o solo vertical. Las porciones sombreadas claras sin "A" indican la posición del vector de movimiento que necesita la interpolación bidimensional en la que el procesamiento de interpolación se realiza horizontal y verticalmente para la señal de luminancia y la señal de diferencia de color. Las porciones sombreadas oscuras indican la posición del vector de movimiento que necesita la interpolación unidimensional solo horizontal o verticalmente para la señal de luminancia, y necesita la interpolación bidimensional en la que la interpolación se ejecuta horizontal y verticalmente para la señal de diferencia de color.
La figura 5 es una vista que ilustra la posición del vector de movimiento en una imagen de interpolación con una precisión de 1/4-pel de la señal de diferencia de color en la dirección horizontal, y con una precisión de 1/8-pel de la señal de diferencia de color en la dirección vertical en formato 4: 2 : 2. "B" es la posición del píxel entero de la señal de diferencia de color, que es la posición del vector de movimiento que no necesita la interpolación. Las porciones blancas indican la posición del vector de movimiento que necesita la interpolación unidimensional para la señal de diferencia de color solo horizontal o verticalmente. Las porciones sombreadas claras indican la posición del vector de movimiento que necesita la interpolación bidimensional para realizar la interpolación a la señal de diferencia de color horizontal y verticalmente.
La figura 6 es una vista que ilustra la posición del vector de movimiento en una imagen de interpolación con una precisión de 1/4-pel de la señal de luminancia en formato 4: 2 : 2. "A" es la posición del píxel entero de la señal de luminancia, cuál es la posición del vector de movimiento que no necesita la interpolación para la señal de luminancia. Las porciones blancas con "A" indican la posición del vector de movimiento que no necesita la interpolación tanto para la señal de luminancia como para la señal de diferencia de color. Las porciones sombreadas claras con "A" indican la posición del vector de movimiento que no necesita la interpolación para la señal de luminancia pero necesita la interpolación para la señal de diferencia de color.
Las porciones blancas sin "A" indican la posición del vector de movimiento que necesita la interpolación unidimensional para la señal de luminancia y la señal de diferencia de color solo horizontal o solo vertical. Las porciones sombreadas claras sin "A" indican la posición del vector de movimiento que necesita la interpolación bidimensional en la que la interpolación se realiza horizontal y verticalmente para la señal de luminancia y la señal de diferencia de color. Las porciones sombreadas oscuras indican la posición del vector de movimiento que necesita la interpolación unidimensional solo horizontalmente para la señal de luminancia, y necesita la interpolación bidimensional en la que la interpolación se ejecuta horizontal y verticalmente para la señal de diferencia de color.
A continuación, se describirá la relación entre el formato de croma y el píxel al que se accederá en la interpolación.
Las figuras 7 y 8 son vistas que ilustran un ejemplo de un píxel al que se accede al generar la imagen de interpolación en bloque en formato 4: 2 : 0.
La figura 7 ilustra el número máximo de píxeles a los que se debe acceder al generar la imagen de interpolación del bloque de píxeles 4x4 para la señal de luminancia con un filtro de interpolación de 8 toques. En la interpolación bidimensional, se debe acceder a tres píxeles externos a la izquierda y arriba del bloque de píxeles, así como a cuatro píxeles externos a la derecha y debajo del bloque de píxeles para generar la imagen de interpolación con un bloque de píxeles de 4x4. Específicamente, se debe acceder a 11x11 píxeles como un todo. El número de píxeles externos a los que se debe acceder depende de la longitud del toque. Por lo tanto, cuando se usa el filtro de interpolación con el mismo toque, el número de accesos por píxel aumenta más para un bloque más pequeño.
La figura 8 ilustra el número máximo de píxeles a los que se debe acceder al generar la imagen de interpolación del bloque de píxeles de 2x2, correspondiente al bloque de píxeles 4x4 para la señal de luminancia, para la señal de diferencia de color con un filtro de interpolación de cuatro toques. En la interpolación bidimensional, se debe acceder a un píxel externo a la izquierda y arriba del bloque de píxeles, así como a dos píxeles externos a la derecha y debajo del bloque de píxeles para generar la imagen de interpolación con un bloque de píxeles de 2x2. Específicamente, se debe acceder a 5x5 píxeles como un todo.
La figura 9 es una vista que ilustra un ejemplo de un píxel al que se accede al generar la imagen de interpolación en bloque en formato 4: 2 : 2. El número máximo de píxeles a los que se debe acceder al generar la imagen de interpolación del bloque de píxeles 4x4 para la señal de luminancia con un filtro de interpolación de cuatro toques es el mismo que en el caso de la figura 7, por lo que no se hará la descripción redundante.
La figura 9 ilustra el número máximo de píxeles a los que se debe acceder al generar la imagen de interpolación del bloque de píxeles de 4x2, correspondiente al bloque de píxeles 4x4 para la señal de luminancia, para la señal de diferencia de color con un filtro de interpolación de cuatro toques. En la interpolación bidimensional, se debe acceder a un píxel externo a la izquierda y arriba del bloque de píxeles, así como a dos píxeles externos a la derecha y debajo del bloque de píxeles para generar la imagen de interpolación con un bloque de píxeles de 2x2. Específicamente, se debe acceder a 5x7 píxeles como un todo.
Como se ilustra en las figuras 3 a 6, la necesidad de la interpolación es diferente dependiendo del formato de croma
y del vector de movimiento. Lo que se necesita de la interpolación unidimensional y la interpolación bidimensional es diferente según el formato de croma y el vector de movimiento. Como se ilustra en las figuras 7 a 9, la cantidad de píxeles a los que se accede es diferente según el formato de croma.
En el presente ejemplo, haciendo referencia al formato de croma y al vector de movimiento, la generación de imagen predicha se controla de modo que no se ejecute una interpolación específica en la que el número de píxeles a los que se debe acceder en la imagen de referencia (señal 109 de imagen de referencia) sea grande. La interpolación específica es una interpolación que utiliza predicción bidireccional e interpolación bidimensional. La interpolación en la predicción bidireccional se puede definir como la interpolación específica. Más adelante se describirá el procedimiento específico para controlar la generación de imagen predicha para no ejecutar la interpolación específica.
La figura 10 es un diagrama de bloques que ilustra un ejemplo de una configuración de un aparato 300 de decodificación de imágenes de acuerdo con una realización, generado por el aparato 100 de codificación de imágenes. El aparato 300 de decodificación de imágenes incluye una unidad 302 de decodificación de entropía, una unidad 303 de transformación inversa/cuantificación inversa, una unidad 304 de adición, una memoria 306 de cuadro, y la unidad 110 de generación de imagen predicha.
El aparato 300 de decodificación de imágenes genera una señal 307 de vídeo reproducida a partir de datos 301 codificados.
La unidad 302 de decodificación de entropía realiza una decodificación de entropía en los datos 301 codificados de acuerdo con una sintaxis prescrita. La unidad 302 de decodificación de entropía decodifica los datos 301 codificados para adquirir información cuantificada del coeficiente de transformación, información 311 de control de predicción, información 312 de vector de movimiento e información 313 de perfil/nivel. La información del coeficiente de transformación cuantificada decodificada se introduce en la unidad 303 de cuantificación inversa/transformación inversa. La información 311 de control de predicción decodificada, la información 312 de vector de movimiento y la información 313 de perfil/nivel se introducen en la unidad 110 de generación de imagen predicha.
La información del coeficiente de transformación cuantificada, la información 311 de control de predicción, la información 312 de vector de movimiento y la información 313 de perfil/nivel corresponden respectivamente a la información cuantificada del coeficiente de transformación, la información 118 de control de predicción, la información 117 del vector de movimiento, y la información 119 del perfil/nivel, que están codificados por el aparato 100 de codificación de imágenes en la figura 1.
La unidad 303 de cuantificación inversa/transformación inversa ejecuta la cuantificación inversa y la transformación ortogonal inversa en la información del coeficiente de transformación cuantificada, reproduciendo así la señal de error de predicción.
La unidad 304 de adición agrega la señal de predicción de error y la señal 310 de imagen predicha para generar una señal 305 de imagen decodificada. La señal 305 de imagen decodificada se introduce en la memoria 306 de cuadro.
La memoria 306 de cuadro ejecuta el procedimiento de filtrado en la señal 305 de imagen decodificada, y emite la resultante como la señal 307 de vídeo reproducida. La memoria 306 de cuadro determina si la señal 305 de imagen decodificada, que ha sufrido el procedimiento de filtrado, se almacena o no, basado en la información 311 de control de predicción. La señal 305 de imagen decodificada almacenada se introduce en la unidad 110 de generación de imagen predicha como una señal 308 de imagen de referencia.
La unidad 110 de generación de imagen predicha genera la señal 310 de imagen predicha usando la señal 308 de imagen de referencia, la información 311 de control de predicción, y la información 312 del vector de movimiento.
La figura 11 es un diagrama de bloques que ilustra un ejemplo de una configuración de la unidad 110 de generación de imagen predicha montada en el aparato 100 de codificación de imágenes y el aparato 300 de decodificación de imágenes. La unidad 110 de generación de imagen predicha incluye un conmutador 201, una unidad 202 de predicción bidireccional, una unidad 203 de predicción unidireccional, y una unidad 204 de intrapredicción. La unidad 110 de generación de imagen predicha genera la señal 111 de imagen predicha a partir de la señal 109 de imagen de referencia, la información 118 de control de predicción, y la información 117 del vector de movimiento.
La información 118 de control de predicción incluye información (modo de predicción) para designar cuál de las unidades 202 de predicción bidireccional, se usa la unidad 203 de predicción unidireccional, y la unidad 204 de intrapredicción, por ejemplo. El conmutador 201 realiza una conmutación para seleccionar cualquiera de la unidad 202 de predicción bidireccional, la unidad 203 de predicción unidireccional, y la unidad 204 de intrapredicción haciendo referencia a esta información.
La señal 109 de imagen de referencia se introduce en cualquiera de las unidades 202 de predicción bidireccionales, la unidad 203 de predicción unidireccional, y la unidad 204 de intrapredicción, que son seleccionados por el conmutador 201.
Cuando se selecciona la unidad 202 de predicción bidireccional, la unidad 202 de predicción bidireccional genera una
señal de imagen de compensación de movimiento utilizando la señal 109 de imagen de referencia y la información 117 del vector de movimiento a partir de cuadros de referencia plurales, y genera la señal 111 de imagen predicha basada en la predicción bidireccional. La unidad 202 de predicción bidireccional se selecciona no solo en el caso en que el modo de predicción se designe explícitamente como la predicción bidireccional como los datos codificados, sino también en el caso en que la predicción bidireccional no se designe explícitamente por los datos codificados como un modo de salto, un modo directo y un modo de fusión, pero la operación de la predicción bidireccional está implícitamente designada por la semántica.
Cuando se selecciona la unidad 203 de predicción unidireccional, la unidad 203 de predicción unidireccional genera la señal de imagen de compensación de movimiento utilizando la señal 109 de imagen de referencia y la información 117 del vector de movimiento a partir de un único cuadro de referencia, y genera la señal 111 de imagen predicha. La unidad 203 de predicción unidireccional se selecciona no solo en el caso en que el modo de predicción se designe explícitamente como la predicción unidireccional como los datos codificados, sino también en el caso en que la predicción unidireccional no se designe explícitamente por los datos codificados como el modo de salto, el modo directo y el modo de fusión, pero la operación de la predicción unidireccional está implícitamente designada por la semántica.
Cuando se selecciona la unidad 204 de intrapredicción, la unidad 204 de intrapredicción genera la señal 111 de imagen predicha usando la señal 109 de imagen de referencia en una pantalla.
A continuación, el control para reducir el ancho de banda de memoria mediante el aparato 100 de codificación de imágenes configurado de este modo según la presente realización se describirá con referencia a la figura 12. La figura 12 es un diagrama de flujo que ilustra un flujo general del control en la presente realización.
La unidad 113 de control de codificación establece un valor de restricción (nLPSW, nLPSH) del tamaño de bloque de acuerdo con la información 119 de perfil/nivel (etapa S101). nLPSW es el valor de restricción del tamaño de bloque de luminancia previsto en la dirección horizontal. nLPSH es el valor de restricción del tamaño de bloque de luminancia previsto en la dirección vertical.
Cuando la información del perfil indica un perfil específico (por ejemplo, perfil alto de H.264), o cuando la información de nivel indica un nivel específico (por ejemplo, un cierto nivel o nivel superior), por ejemplo, la unidad 113 de control de codificación establece el valor de restricción predeterminado (nLPSW, nLPSH) del tamaño del bloque. La unidad 113 de control de codificación puede configurarse para establecer paso a paso el valor de restricción del tamaño de bloque de acuerdo con la información de perfil y la información de nivel.
A continuación se supone que una variable RW es una precisión de vector de movimiento en dirección horizontal, expresado por 1/RW-pel precisión. También se supone que una variable RH es una precisión del vector de movimiento en la dirección vertical, expresado por 1/RH-pel precisión. Los valores iniciales de la variable RW y la variable RH se definen como la precisión del vector de movimiento de la luminancia. Un valor de una potencia de dos se usa generalmente para RW y RH.
La unidad 112 de control de predicción determina si la información del formato de croma (idc_formato_croma) 114 es 1 o no (etapa S102). En el caso de idc_formato_croma = 1 (etapa S102: Sí), la unidad 112 de control de predicción duplica los valores de RW y RH (etapa S103). Esto se debe a que idc_formato_croma = 1 significa formato 4 : 2 : 0 en el que la diferencia de color se muestrea a la mitad horizontal y verticalmente con respecto a la luminancia.
En el caso en el que idc_formato_croma = 1 no está establecido (etapa S102: No), la unidad 112 de control de predicción determina si la información del formato de croma (idc_formato_croma) 114 es 2 o no (etapa S104). En el caso de idc_formato_croma = 2 (etapa S104: Sí), la unidad 112 de control de predicción duplica el valor de RW (etapa S105). Esto se debe a que idc_formato_croma = 2 significa formato 4 : 2 : 2 en el que la diferencia de color se muestrea a la mitad solo horizontalmente con respecto a la luminancia.
Cuando idc_formato_croma asume otros valores (etapa S104: No), los valores de RW y RH no cambian.
A continuación, la unidad 112 de control de predicción calcula una variable L que indica si el ancho de banda de la memoria está restringido o no (etapa S106). La variable L que supone "verdadero" significa que se aplica el procedimiento de reducción del ancho de banda de la memoria, y la variable L que supone "falso" significa que el procedimiento no se aplica.
Cuando la predicción es la predicción bidireccional, el bloque de predicción es pequeño y dos vectores de movimiento tienen una precisión fraccional en la diferencia de color, como se describió anteriormente, por ejemplo, aumenta el ancho de banda de memoria al que se accede por píxel. Por lo tanto, la unidad 112 de control de predicción calcula la variable L de acuerdo con la siguiente ecuación (1).
L = (ModoPred == PredBi) &&
(nPSW < nLPSW) && (nPSH < nLPSH) &&
(mvL0 [0] y (RW -1)) &&
(mvL0 [1] y (RH -1 )) &&
(mvL1 [0] y (RW -1)) &&
(mvL1 [1] y (RH -1)); (1)
El valor del vector de movimiento en la dirección horizontal en la lista 0 del bloque a procesar se define como mvL0 [0], y el valor en la dirección vertical se define como mvL0 [1]. El valor del vector de movimiento en la dirección horizontal en la lista 1 se define como mvL1 [0], y el valor en la dirección vertical se define como mvL1 [1]. ModoPred indica el modo de predicción. PredBi indica la predicción bidireccional. En la descripción a continuación, los modos de predicción de la predicción unidireccional utilizando los vectores de movimiento en la lista 0 y en la lista 1 se representan como Predl0 y Predl1, respectivamente.
Un ejemplo de la ecuación (1) significa un caso en el que el modo de predicción ModoPred es PredBi, es decir, se selecciona la unidad 202 de predicción bidireccional. (nPsW < nLPSW) && (nPSH < nLPSH) && significa la condición en la que el tamaño del bloque de predicción es igual o menor que la información de restricción del tamaño del bloque. En (mvL0 [0] y (RW -1)) &&, (mvL0 [1] y (RH -1)) &&, (mvL1 [0] & (RW -1 )) &&, y (mvL1 [1] & (RH -1)), se verifica si los dos vectores de movimiento L0 y L1 no están sujetos a la interpolación bidimensional para la diferencia de color, es decir, si el bit inferior del vector de movimiento expresa la precisión después del punto decimal. "&" significa un operador de bits de acuerdo con la notación en el lenguaje C, y expresa O bit a bit.
La ecuación condicional para calcular la variable L no se limita a la ecuación (1). Por ejemplo, puede determinarse independientemente incluso para los modos de predicción (Predl0, Predl1) que no sea PredBi como en una ecuación (2).
L = (nPSW < nLPSW) && (nPSH < nLPSH) &&
((ModoPred == PredBi) &&
(mvL0 [0] y (RW -1)) &&
(mvL0 [1] y (RH -1 )) &&
(mvL1 [0] y (RW -1)) &&
(mvL1 [1] y (RH -1 )) ||
((ModoPred == PredL0) &&
(mvL0 [0] y (RW -1)) &&
(mvL0 [1] y (RH -1 )) ||
((ModoPred == PredL1) &&
(mvL1 [0] y (RW -1)) &&
(mvL1 [1] y (RH -1))))); (2)
Con en una ecuación (3), el valor de restricción (nLPSW1, nLPSH1) del tamaño de bloque para la predicción unidireccional (Predl0 o Predl1) se puede establecer por separado. Específicamente, el tamaño de bloque restringido en la predicción unidireccional y el tamaño de bloque restringido en la predicción bidireccional pueden ser diferentes entre sí.
L = ((ModoPred == PredBi) &&
(nPSW < nLPSW) && (nPSH < nLPSH) &&
(mvL0 [0] y (RW -1)) &&
(mvL0 [1] y (RH -1 )) &&
(mvL1 [0] y (RW -1)) &&
(mvL1 [1] y (RH -1 )) ||
(((nPSW < nLPSW1) &&
(nPSH < nLPSH1)) ||
((ModoPred == PredLO) &&
(mvLO [0] y (RW -1)) &&
(mvLO [1] y (RH -1 )) &&
((ModoPred == PredLI) &&
(mvL1 [0] y (RW -1)) &&
(mvL1 [1] y (RH -1))); (3)
Cuando el tamaño del bloque de predicción es igual o menor que el valor de restricción (nLPSW, nLPSH) del tamaño de bloque como en una ecuación (4), se puede restringir el acceso de dos vectores de movimiento solo al píxel entero en la diferencia de color durante la predicción bidireccional.
L = ((ModoPred == PredBi) &&
(nPSW < nLPSW) && (nPSH < nLPSH) &&
!((mvL0[0] & (RW - 1) == 0) &&
(mvLO [1] & (RH -1 ) == 0)&&
(mvL1 [0] & (RW -1 ) == 0)&&
(mvL1 [1] & (RH -1 ) == 0))); (4)
La información 119 de perfil/nivel distingue si el valor del vector de movimiento está restringido o en qué condiciones el valor del vector de movimiento está restringido.
A continuación, se describirá el procedimiento específico para reducir el ancho de banda de la memoria. La figura 13 es un diagrama de flujo que ilustra un ejemplo del procedimiento de reducción del ancho de banda de la memoria. La figura 13 ilustra un ejemplo de un procedimiento para restringir el valor del vector de movimiento, como el procedimiento de reducir el ancho de banda de la memoria.
La unidad 112 de control de predicción determina si la variable L es "verdadera" o no (etapa S201). Si la variable L es "verdadera" (etapa S201: Sí), la unidad 112 de control de predicción transforma los valores L0 y L1 de dos vectores de movimiento como en una ecuación (5) (etapa S202).
mvL0 [0] = ((mvL0 [0] (RW >> 1))/RW) * RW;
mvL0 [1] = ((mvL0 [1] (RH >> 1))/RH) * RH;
mvL1 [0] = ((mvL1 [0] (RW >> 1))/RW) * RW;
mvL1 [1] = ((mvL1 [1] (RH >> 1))/RH) * RH; (5)
">>" indica un desplazamiento aritmético a la derecha de acuerdo con la notación en el lenguaje C. "/" indica una división en aritmética de enteros. "x" indica una multiplicación en aritmética de enteros. El bit correspondiente a la precisión de interpolación de la señal de diferencia de color de dos vectores de movimiento L0 y L1 se redondea con la ecuación (5) para convertirse en 0. Con este procedimiento, la interpolación bidimensional no se ejecuta, por lo que se puede lograr la reducción en el ancho de banda de la memoria.
El procedimiento de redondeo general se describe en el presente documento. Sin embargo, se puede usar el otro procedimiento. Por ejemplo, procedimiento de redondeo, se puede emplear un procedimiento de redondeo y un procedimiento de redondeo al número par más cercano.
La información 117 del vector de movimiento cuyo valor se cambia se codifica en la unidad 105 de codificación de entropía, y se emite como los datos codificados. El procedimiento en la figura 13 es para controlar la información 117 del vector de movimiento restringiendo el valor del vector de movimiento, para no generar los datos codificados por los cuales aumenta el ancho de banda de la memoria.
Como alternativa, en lugar de codificar la información 117 del vector de movimiento cuyo valor se cambia en la unidad 105 de codificación de entropía, la información 117 del vector de movimiento antes del cambio puede ser codificada por la unidad de codificación de entropía. En este caso, la unidad 110 de generación de imagen predicha en el aparato 300 de decodificación de imágenes determina si el procedimiento para reducir el ancho de banda de la memoria se aplica o no en el procedimiento igual que en la figura 12. Cuando se aplica, la unidad 110 de generación de imagen predicha en el aparato 300 de decodificación de imágenes restringe el vector de movimiento de la misma manera que en la figura 13.
El procedimiento de transformación del valor del vector de movimiento no se limita al procedimiento de redondeo del valor correspondiente a la precisión de interpolación de la diferencia de color como en la ecuación (4). El valor puede redondearse por separado para la luminancia y la diferencia de color. Específicamente, durante la interpolación para la luminancia, el valor correspondiente a la precisión de interpolación de la luminancia puede redondearse, mientras que el valor correspondiente a la precisión de interpolación de la diferencia de color puede redondearse durante el procesamiento de interpolación para la diferencia de color. Este procedimiento es para no generar la imagen predicha que aumenta el ancho de banda de la memoria, cuando el aparato 100 de codificación de imágenes y el aparato 300 de decodificación de imágenes están configurados de antemano de manera que ejecuten la misma operación.
La figura 14 es un diagrama de flujo que ilustra otro ejemplo del procedimiento de reducción del ancho de banda de la memoria. La figura 14 ilustra otro ejemplo del procedimiento de restricción del valor del vector de movimiento.
En este ejemplo, la unidad 112 de control de predicción y la unidad 110 de generación de imagen predicha calculan el coste para seleccionar el modo de predicción, el tamaño de bloque predicho y el vector de movimiento. Preferentemente seleccionan el modo de predicción, el tamaño de bloque predicho y el vector de movimiento, que son pequeños en coste, por lo que se puede seleccionar la combinación óptima.
Una variable MV_Coste que indica el costo del vector de movimiento se calcula utilizando una suma de distancia absoluta (SAD) de errores residuales pronosticados, una cantidad de código de la información del vector de movimiento (MV_Código), y un multiplicador de Lagrange (A) calculado a partir de la información cuantificada como en una ecuación (5).
MV_Coste = SAD A * MV_Código (5)
Si la variable L es "verdadera" (etapa S301: Sí), la unidad 112 de control de predicción sustituye el valor máximo predeterminado ValorMax en la variable MV_Coste que indica el coste para el vector de movimiento (etapa S302). Con este procedimiento, la unidad 112 de control de predicción controla no seleccionar el vector de movimiento que tiene el ancho de banda de memoria grande (etapa S301).
En el procedimiento de la figura 14, el valor del vector de movimiento está restringido para controlar la información 117 del vector de movimiento, para no generar los datos codificados por los cuales aumenta el ancho de banda de la memoria, como en la figura 13.
La figura 15 es un diagrama de flujo que ilustra otro ejemplo del procedimiento para reducir el ancho de banda de la memoria. La figura 15 ilustra un procedimiento para controlar el modo de predicción de la diferencia de color, como otro procedimiento para reducir el ancho de banda de la memoria.
Si la variable L es "verdadera" (etapa S401), solo el modo de predicción ModoPred de color se reescribe por la fuerza a la predicción unidireccional Predl0 (etapa S402). Con este procedimiento, se puede restringir el caso de la predicción bidireccional con la señal de diferencia de color utilizando un ancho de banda de memoria grande.
El modo de predicción en el que el modo de predicción se reescribe por la fuerza puede ser la predicción unidireccional Predl1. El modo de predicción restringido se determina de acuerdo con la información 119 de perfil/nivel.
Como se ha descrito anteriormente, de acuerdo con la presente realización, el ancho de banda de la memoria al generar la imagen de interpolación con compensación de movimiento durante la codificación y decodificación de la imagen puede reducirse.
A continuación, se describirá una configuración de hardware del aparato (el aparato de codificación de imágenes y el aparato de decodificación de imágenes) de acuerdo con la presente realización con referencia a la figura 16. La figura 16 es una vista que ilustra una configuración del sistema de acuerdo con una realización de la presente divulgación.
El aparato de acuerdo con la presente realización incluye un dispositivo de control tal como una CPU (Unidad Central de Procesamiento) 51, un dispositivo de memoria como una ROM (memoria de solo lectura) 52 o una RAM (memoria de acceso aleatorio) 53, una I/F 54 de comunicación que está conectada a la red para permitir la intercomunicación, y un bus 61 que interconecta cada unidad.
Un programa ejecutado por el aparato de acuerdo con la presente realización se proporciona como una incorporación preliminar en la ROM 52.
El programa se puede configurar para que se proporcione, como producto informático, como se graba como un archivo en un formato instalable o en un formato ejecutable en un medio de grabación legible por ordenador, como un CD (disco compacto)-ROM, un disco flexible (FD), un CD-R, un DVD (disco versátil digital) y similares.
Adicionalmente, el programa se puede proporcionar de tal manera que el programa se almacene en un ordenador conectada a una red como Internet para permitir la descarga a través de la red. El programa puede configurarse para que se proporcione o distribuya a través de una red como Internet.
El programa ejecutado por el aparato de acuerdo con la presente realización puede permitir que el ordenador funcione
como cada unidad (unidad generadora de imagen predicha, y similares) descrita anteriormente. La CPU 51 en el ordenador puede leer el programa desde el medio de memoria legible por el ordenador en el dispositivo de memoria principal, y ejecuta el mismo programa.
Lista de signos de referencia
100 APARATO DE CODIFICACIÓN DE IMÁGENES
101 ENTRADA SEÑAL DE VIDEO
102 UNIDAD DE SUSTRACCIÓN
103 UNIDAD DE TRANSFORMACIÓN/CUANTIFICACIÓN
104 UNIDAD DE CUANTIFICACIÓN INVERSA/TRANSFORMACIÓN INVERSA
105 UNIDAD DE CODIFICACIÓN DE ENTROPÍA
106 UNIDAD DE ADICIÓN
107 SEÑAL DE IMAGEN DECODIFICADA
108 MEMORIA DE CUADRO
109 SEÑAL DE IMAGEN DE REFERENCIA
110 UNIDAD GENERADORA DE IMAGEN PREDICHA
111 SEÑAL DE IMAGEN PREDICHA
112 UNIDAD DE CONTROL DE PREDICCIÓN
113 UNIDAD DE CONTROL DE CODIFICACIÓN
114 INFORMACIÓN DEL FORMATO DE CROMA
115 INFORMACIÓN DE RESTRICCIÓN DE TAMAÑO DE BLOQUE
116 UNIDAD DE BÚSQUEDA DE VECTOR DE MOVIMIENTO
117 INFORMACIÓN DEL VECTOR DE MOVIMIENTO
118 INFORMACIÓN DE CONTROL DE PREDICCIÓN
119 INFORMACIÓN DE PERFIL/NIVEL
120 DATOS CODIFICADOS
300 APARATO DE DECODIFICACIÓN DE IMAGEN
301 DATOS CODIFICADOS
302 UNIDAD DE DECODIFICACIÓN DE ENTROPÍA
303 UNIDAD DE CUANTIFICACIÓN INVERSA/TRANSFORMACIÓN INVERSA
304 UNIDAD DE ADICIÓN
305 SEÑAL DE IMAGEN DECODIFICADA
306 MEMORIA DE CUADRO
307 SEÑAL DE VIDEO REPRODUCIDA
308 SEÑAL DE IMAGEN DE REFERENCIA
310 SEÑAL DE IMAGEN PREDICHA
311 INFORMACIÓN DE CONTROL DE PREDICCIÓN
312 INFORMACIÓN DEL VECTOR
313 INFORMACIÓN DE PERFIL/NIVEL
Claims (6)
1. Un procedimiento de decodificación que comprende:
determinar, mediante una unidad (302) de decodificación, un modo de predicción según un modo de fusión, especificando el modo de predicción una primera predicción usando una primera imagen de referencia, una segunda predicción usando una segunda imagen de referencia, o una bipredicción usando la primera imagen de referencia y la segunda imagen de referencia,
adquirir, mediante una unidad (110) de generación, una o más imágenes de referencia;
interpolar, mediante la unidad (110) de generación, cada uno de un componente de luminancia y un componente de diferencia de color en la imagen o imágenes de referencia para generar una imagen de predicción;
en el que la generación de la imagen de predicción para el componente de diferencia de color incluye cambiar, mediante la unidad (110) de generación, un modo de predicción desde la bi-predicción hasta la primera predicción si el tamaño de un bloque de predicción determinado por un ancho y una altura del bloque de predicción es igual o menor que un valor predeterminado y si el modo de predicción especifica la bipredicción.
2. El procedimiento de decodificación de acuerdo con la reivindicación 1, que comprende además:
decodificar, mediante la unidad (302) de decodificación, datos codificados para adquirir un coeficiente de transformación;
derivar, mediante una unidad (303) de transformación, un valor de error de predicción usando una cuantificación inversa y una transformación inversa del coeficiente de transformación;
derivar, mediante una unidad (304) de adición, una imagen decodificada usando al menos el valor de error de predicción y la imagen de predicción.
3. El procedimiento de decodificación de acuerdo con la reivindicación 1, en el que el valor predeterminado se determina en base a una restricción en el tamaño del bloque de predicción.
4. Un aparato (300) de decodificación que comprende:
una unidad (302) de decodificación configurada para determinar un modo de predicción de acuerdo con un modo de fusión, especificando el modo de predicción una primera predicción usando una primera imagen de referencia, una segunda predicción usando una segunda imagen de referencia, o una bi-predicción usando la primera imagen de referencia y la segunda imagen de referencia, y
una unidad (110) de control configurada para
adquirir una o más imágenes de referencia;
interpolar cada uno de un componente de luminancia y un componente de diferencia de color en la imagen o imágenes de referencia para generar una imagen de predicción;
en el que la generación de la imagen de predicción para el componente de diferencia de color incluye cambiar un modo de predicción de la bi-predicción a la primera predicción si el tamaño de un bloque de predicción determinado por un ancho y una altura del bloque de predicción es igual o menor que un valor predeterminado y si el modo de predicción especifica la bi-predicción.
5. El aparato (300) de decodificación de acuerdo con la reivindicación 4, en el que la unidad (302) de decodificación está configurada además para decodificar datos codificados para adquirir un coeficiente de transformación; y el aparato (300) de codificación comprende además:
una unidad (303) de transformación configurada para derivar un valor de error de predicción usando una cuantificación inversa y una transformación inversa del coeficiente de transformación; y
una unidad (304) de adición configurada para derivar una imagen decodificada usando al menos el valor de error de predicción y la imagen de predicción.
6. El aparato (300) de decodificación de acuerdo con la reivindicación 4, en el que el valor predeterminado está determinado en base a una restricción en el tamaño del bloque de predicción.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2011/075725 WO2013069095A1 (ja) | 2011-11-08 | 2011-11-08 | 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置 |
EP17188018.0A EP3280139B1 (en) | 2011-11-08 | 2011-11-08 | Image decoding method and image decoding apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2794582T3 true ES2794582T3 (es) | 2020-11-18 |
Family
ID=48288682
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES17188018T Active ES2794582T3 (es) | 2011-11-08 | 2011-11-08 | Procedimiento de decodificación de imágenes y aparato de decodificación de imágenes |
ES20156188T Active ES2952379T3 (es) | 2011-11-08 | 2011-11-08 | Procedimiento de decodificación de imágenes y aparato de decodificación de imágenes |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES20156188T Active ES2952379T3 (es) | 2011-11-08 | 2011-11-08 | Procedimiento de decodificación de imágenes y aparato de decodificación de imágenes |
Country Status (15)
Country | Link |
---|---|
US (9) | US9135717B2 (es) |
EP (4) | EP4199508A1 (es) |
JP (1) | JP5766815B2 (es) |
KR (3) | KR101597059B1 (es) |
CN (2) | CN107277511A (es) |
AU (2) | AU2011380761C1 (es) |
BR (4) | BR122020011587B1 (es) |
CA (1) | CA2847301C (es) |
ES (2) | ES2794582T3 (es) |
MX (1) | MX2014002334A (es) |
PL (2) | PL3672238T3 (es) |
RU (1) | RU2595569C2 (es) |
SG (1) | SG11201400290XA (es) |
WO (1) | WO2013069095A1 (es) |
ZA (1) | ZA201401565B (es) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101762819B1 (ko) * | 2010-09-02 | 2017-07-28 | 엘지전자 주식회사 | 영상 부호화 및 복호화 방법과 이를 이용한 장치 |
SI2744204T1 (sl) | 2011-09-14 | 2019-02-28 | Samsung Electronics Co., Ltd., | Postopek dekodiranja enote za napovedovanje (PU) na podlagi njene velikosti |
PL3672238T3 (pl) | 2011-11-08 | 2023-07-24 | Kabushiki Kaisha Toshiba | Metoda dekodowania obrazu i metoda kodowania obrazu |
US9894355B2 (en) * | 2012-01-19 | 2018-02-13 | Sony Corporation | Image processing apparatus and method thereof |
GB2501535A (en) * | 2012-04-26 | 2013-10-30 | Sony Corp | Chrominance Processing in High Efficiency Video Codecs |
US10110916B2 (en) | 2014-04-22 | 2018-10-23 | Sony Corporation | Encoding device and encoding method |
CA2988107A1 (en) * | 2015-06-19 | 2016-12-22 | Nokia Technologies Oy | An apparatus, a method and a computer program for video coding and decoding |
US10015504B2 (en) * | 2016-07-27 | 2018-07-03 | Qualcomm Incorporated | Compressing image segmentation data using video coding |
US10841610B2 (en) * | 2017-10-23 | 2020-11-17 | Avago Technologies International Sales Pte. Limited | Block size dependent interpolation filter selection and mapping |
US11689731B2 (en) * | 2018-09-21 | 2023-06-27 | Sharp Kabushiki Kaisha | Image decoding apparatus and image coding apparatus that involves bi-prediction |
CN110582022B (zh) * | 2019-09-27 | 2022-12-30 | 腾讯科技(深圳)有限公司 | 视频编解码方法和装置及存储介质 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2873396B2 (ja) | 1990-09-11 | 1999-03-24 | 清水建設株式会社 | 軌道仮受け施工方法 |
JP2001045491A (ja) | 1999-08-03 | 2001-02-16 | Hitachi Ltd | 符号化画像の復号・表示装置 |
JP4129374B2 (ja) * | 2001-09-18 | 2008-08-06 | 松下電器産業株式会社 | 画像符号化方法および画像復号化方法 |
CN1298171C (zh) | 2001-09-18 | 2007-01-31 | 松下电器产业株式会社 | 图像的编码方法和图像的译码方法 |
EP1827027A1 (en) * | 2002-01-18 | 2007-08-29 | Kabushiki Kaisha Toshiba | Video encoding method and apparatus and video decoding method and apparatus |
JP3861698B2 (ja) * | 2002-01-23 | 2006-12-20 | ソニー株式会社 | 画像情報符号化装置及び方法、画像情報復号装置及び方法、並びにプログラム |
JP4120301B2 (ja) | 2002-04-25 | 2008-07-16 | ソニー株式会社 | 画像処理装置およびその方法 |
JP4053925B2 (ja) * | 2003-05-09 | 2008-02-27 | 日本電信電話株式会社 | 映像符号化方法,映像符号化装置,映像符号化プログラムおよび映像符号化プログラムの記録媒体 |
JP2006333436A (ja) | 2005-01-07 | 2006-12-07 | Ntt Docomo Inc | 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、動画像符号化プログラム、及び、動画像復号プログラム |
JP4755093B2 (ja) * | 2005-02-01 | 2011-08-24 | パナソニック株式会社 | 画像符号化方法および画像符号化装置 |
JP2007043651A (ja) * | 2005-07-05 | 2007-02-15 | Ntt Docomo Inc | 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法及び動画像復号プログラム |
RU2369038C1 (ru) | 2005-11-30 | 2009-09-27 | Кабусики Кайся Тосиба | Способ кодирования изображения/декодирования изображения, устройство кодирования изображения/декодирования изображения |
JP4752631B2 (ja) * | 2006-06-08 | 2011-08-17 | 株式会社日立製作所 | 画像符号化装置、及び画像符号化方法 |
JP2009094828A (ja) | 2007-10-10 | 2009-04-30 | Hitachi Ltd | 画像符号化装置及び画像符号化方法、画像復号化装置及び画像復号化方法 |
AU2009264603A1 (en) | 2008-06-30 | 2010-01-07 | Kabushiki Kaisha Toshiba | Dynamic image prediction/encoding device and dynamic image prediction/decoding device |
US8619856B2 (en) | 2008-10-03 | 2013-12-31 | Qualcomm Incorporated | Video coding with large macroblocks |
US8831087B2 (en) * | 2008-10-06 | 2014-09-09 | Qualcomm Incorporated | Efficient prediction mode selection |
WO2010070818A1 (ja) | 2008-12-16 | 2010-06-24 | 株式会社日立製作所 | 動画像符号化装置、動画像符号化方法、動画像復号化装置および動画像復号化方法 |
FI3567855T3 (fi) | 2009-03-23 | 2023-04-12 | Kuvan ennustava koodauslaite, kuvan ennustava koodausmenetelmä, kuvan ennustava koodausohjelma, kuvan ennustava dekoodauslaite, kuvan ennustava dekoodausmenetelmä ja kuvan ennustava dekoodausohjelma | |
TWI566586B (zh) | 2009-10-20 | 2017-01-11 | 湯姆生特許公司 | 一序列形象的現時區塊之寫碼方法和重建方法 |
JP2011135184A (ja) * | 2009-12-22 | 2011-07-07 | Sony Corp | 画像処理装置および方法、並びにプログラム |
WO2012172659A1 (ja) | 2011-06-15 | 2012-12-20 | 株式会社東芝 | 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置 |
KR20120140592A (ko) * | 2011-06-21 | 2012-12-31 | 한국전자통신연구원 | 움직임 보상의 계산 복잡도 감소 및 부호화 효율을 증가시키는 방법 및 장치 |
CN108632608B (zh) | 2011-09-29 | 2022-07-29 | 夏普株式会社 | 图像解码装置、图像解码方法、图像编码装置及图像编码方法 |
WO2013065431A1 (ja) | 2011-11-04 | 2013-05-10 | シャープ株式会社 | 画像復号装置、画像復号方法および画像符号化装置 |
PL3672238T3 (pl) * | 2011-11-08 | 2023-07-24 | Kabushiki Kaisha Toshiba | Metoda dekodowania obrazu i metoda kodowania obrazu |
-
2011
- 2011-11-08 PL PL20156188.3T patent/PL3672238T3/pl unknown
- 2011-11-08 AU AU2011380761A patent/AU2011380761C1/en active Active
- 2011-11-08 KR KR1020147005036A patent/KR101597059B1/ko active IP Right Grant
- 2011-11-08 WO PCT/JP2011/075725 patent/WO2013069095A1/ja active Application Filing
- 2011-11-08 CA CA2847301A patent/CA2847301C/en active Active
- 2011-11-08 BR BR122020011587-4A patent/BR122020011587B1/pt active IP Right Grant
- 2011-11-08 KR KR1020157005970A patent/KR101570328B1/ko active IP Right Grant
- 2011-11-08 RU RU2014107468/08A patent/RU2595569C2/ru active
- 2011-11-08 ES ES17188018T patent/ES2794582T3/es active Active
- 2011-11-08 EP EP23156668.8A patent/EP4199508A1/en active Pending
- 2011-11-08 KR KR1020167003825A patent/KR101665921B1/ko active IP Right Grant
- 2011-11-08 JP JP2013542736A patent/JP5766815B2/ja active Active
- 2011-11-08 ES ES20156188T patent/ES2952379T3/es active Active
- 2011-11-08 EP EP11875421.7A patent/EP2779647B1/en active Active
- 2011-11-08 EP EP20156188.3A patent/EP3672238B1/en active Active
- 2011-11-08 BR BR122020011590-4A patent/BR122020011590B1/pt active IP Right Grant
- 2011-11-08 MX MX2014002334A patent/MX2014002334A/es active IP Right Grant
- 2011-11-08 CN CN201710539977.4A patent/CN107277511A/zh active Pending
- 2011-11-08 BR BR122020011581-5A patent/BR122020011581B1/pt active IP Right Grant
- 2011-11-08 CN CN201180073088.4A patent/CN103765890A/zh active Pending
- 2011-11-08 PL PL17188018T patent/PL3280139T3/pl unknown
- 2011-11-08 SG SG11201400290XA patent/SG11201400290XA/en unknown
- 2011-11-08 EP EP17188018.0A patent/EP3280139B1/en active Active
- 2011-11-08 BR BR112014004645-0A patent/BR112014004645B1/pt active IP Right Grant
-
2013
- 2013-09-13 US US14/026,465 patent/US9135717B2/en active Active
-
2014
- 2014-02-28 ZA ZA2014/01565A patent/ZA201401565B/en unknown
-
2015
- 2015-04-22 US US14/693,629 patent/US9672633B2/en active Active
- 2015-08-13 AU AU2015213328A patent/AU2015213328B2/en active Active
-
2017
- 2017-03-03 US US15/449,394 patent/US9843818B2/en active Active
- 2017-08-28 US US15/688,541 patent/US10554991B2/en active Active
-
2019
- 2019-10-21 US US16/659,221 patent/US10687072B2/en active Active
-
2020
- 2020-05-04 US US16/866,249 patent/US11451808B2/en active Active
- 2020-05-04 US US16/866,310 patent/US11375218B2/en active Active
-
2022
- 2022-08-10 US US17/884,635 patent/US11831891B2/en active Active
-
2023
- 2023-10-17 US US18/488,305 patent/US20240048746A1/en active Pending
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2794582T3 (es) | Procedimiento de decodificación de imágenes y aparato de decodificación de imágenes | |
BR112020014522A2 (pt) | Derivação aprimorada de vetor de movimento no lado de decodificador | |
WO2019144020A1 (en) | Deblocking filter selection and application in video coding | |
JP6487002B2 (ja) | 復号方法および復号装置 | |
CN118077196A (zh) | 用于解码器侧帧内模式推导的方法和设备 | |
CN118044187A (zh) | 用于解码器侧帧内模式推导的方法和设备 | |
JP2015111961A (ja) | 画像復号方法および画像復号装置 |