ES2708833T3 - Procedimiento de codificación y aparato para decodificar una imagen mediante intra-predicción - Google Patents

Procedimiento de codificación y aparato para decodificar una imagen mediante intra-predicción Download PDF

Info

Publication number
ES2708833T3
ES2708833T3 ES17192209T ES17192209T ES2708833T3 ES 2708833 T3 ES2708833 T3 ES 2708833T3 ES 17192209 T ES17192209 T ES 17192209T ES 17192209 T ES17192209 T ES 17192209T ES 2708833 T3 ES2708833 T3 ES 2708833T3
Authority
ES
Spain
Prior art keywords
intra
prediction
current block
pixel
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES17192209T
Other languages
English (en)
Inventor
Jung-Hye Min
Sun Sun-Il Lee
Woo-Jin Han
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Application granted granted Critical
Publication of ES2708833T3 publication Critical patent/ES2708833T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods 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 pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Abstract

Un aparato de decodificación de una imagen, comprendiendo el aparato: un decodificador (2020) de entropía que extrae un modo de intra-predicción de un bloque actual a partir de una secuencia de bits, indicando el modo de intra-predicción una dirección particular entre una pluralidad de direcciones, en el que la dirección particular se indica usando uno de un número dx en una dirección horizontal y un número fijo en una dirección vertical, o un número dy en la dirección vertical y un número fijo en la dirección horizontal, en el que dx y dy son números enteros; un realizador (2050) de intra-predicción que realiza intra-predicción en el bloque actual; y un restaurador que restaura el bloque actual añadiendo el bloque actual intra-predicho y un residual obtenido de la secuencia de bits, en el que el realizador (2050) de intra-predicción determina la ubicación de píxeles vecinos del bloque vecino previamente reconstruido antes del bloque actual usando una operación de desplazamiento en función de una posición de un píxel actual y uno del número dx y el número dy indicando la dirección particular, estando situados los píxeles vecinos en un lado izquierdo del bloque actual o un lado superior del bloque actual, caracterizado porque la ubicación de los píxeles vecinos situados en el lado superior del bloque actual se determina en base a i * dx >> 5, donde i es una posición del píxel actual en la dirección vertical, y dx es el número dx en la dirección horizontal y >> es la operación de desplazamiento bit a bit, y la ubicación de los píxeles vecinos situados en el lado izquierdo del bloque actual se determina en base a j * dy >> 5, donde j es una posición del píxel actual en la dirección horizontal, y dy es el número dy en la dirección vertical, en el que i) el número fijo en la dirección horizontal tiene un valor fijo de 2^5 y el número dy se determina entre {32, 26, 21, 17, 13, 9, 5, 2, 0, -2, -5, -9, -13, -17, -21, -26, -32}, o ii) el número fijo en la dirección vertical tiene un valor fijo de 2^5 y se determina el número dx entre {32, 26, 21, 17, 13, 9, 5, 2, 0, -2, -5, -9, -13, -17, -21, -26, -32} de acuerdo con el modo de intra-predicción del bloque actual.

Description

DESCRIPCION
Procedimiento de codificacion y aparato para decodificar una imagen mediante intra-prediccion
Campo tecnico
Realizaciones de ejemplo de la presente divulgacion se refieren a la codificacion y decodificacion de una imagen y, de manera mas particular, a procedimientos y aparatos para codificar/decodificar una imagen a traves de intraprediccion que pueden mejorar la eficacia de compresion de imagen usando modos de prediccion con diversas directividades.
Antecedentes de la tecnica
De acuerdo con una norma de compresion de imagen, tal como el grupo experto de imagenes en movimiento (MPEG-1), MPEG-2, MPEG-4, o codificacion avanzada de video (AVC) H.264/MPEG-4, un cuadro se divide en macrobloques para codificar una imagen. Despues de que cada uno de los macrobloques se codifica en cualquiera de los modos de codificacion de inter-prediccion e intra-prediccion, se selecciona un modo apropiado de codificacion de acuerdo con una velocidad de bit requerida para codificar el macrobloque y una distorsion permisible entre el macrobloque original y el macrobloque reconstruido, y entonces el macrobloque se codifica en el modo seleccionado de codificacion.
Como se esta desarrollando hardware para reproducir y almacenar contenido de imagenes de alta resolucion o alta calidad, se incrementa la necesidad de un codec de video que codifique o decodifique efectivamente el codec de video que codifique o decodifique efectivamente el contenido de video de alta resolucion o alta calidad.
La presentacion de estandares MCCANN (ZETACAST/SAMSUNG) K ET AL: "Video coding technology proposal de Samsung (y BBC)", JCT-VC MEETING; 15-4-2010 - 23-4-2010; DRESDEN; (JOINTCOLLABORATIVE TEAM ON VIDEO CODING OF ISO/I EC JTC1/SC29/WG11 AND ITU-TSG. 16); URL: HTTP://WFTP3.ITU.INT/AV-ARCH/JCTVC SITE/. no.JCTVC-A124,1 de junio de 2010 describe la respuesta de Samsung a la Llamada de Propuestas (CfP) sobre tecnologfa de compresion de video, presentada conjuntamente por ITU-T SG16 Q.6 (VCEG) e ISO/IEC jTc 1/SC29/WG11 (MPEG). Se ha producido en colaboracion con la British Broadcasting Corporation. El objetivo de esta propuesta es proporcionar una tecnologfa de compresion de video que tenga una capacidad de compresion significativamente mas alta que el estandar H.264/AVC del estado de la tecnica, especialmente para contenidos de video de alta definicion (HD). Para lograr este objetivo, un numero de nuevas herramientas de algoritmo se proponen cubriendo varios aspectos de tecnologfa de compresion de video. Estos incluyen una estructura general para representacion de contenido de video, inter/intra-prediccion, filtrado en bucle y codificacion de entropfa.
La presentacion de estandares TAKESHI TSUKUBA ET AL: "Adaptive Multidirectional Intra Prediction", ITU-T SG16 Q6 VIDEO CODING EXPERTS GROUP, 33. VCEG MEETING, DOCUMENT VCEG-AG05, SHENZHEN, CHINA, no. VCEG-AG05, SHENZHEN, CHINA, no. VCEG-AG05, 20 de octubre de 2007 describe Intra-prediccion Multidireccional Adaptativa (AMIP). AMIP es un procedimiento para elegir adaptativamente uno de varios conjuntos de intra-predictor en funcion de macrobloques. Cada conjunto de intra-predictor se disena para obtener una mejor prediccion de imagenes locales con distribucion de borde espedfica.
La presentacion de estandares SEGALL (SHARP) A ET AL: "Video coding technology proposal by Sharp", 1. JCT-VC MEETING; 15-4-2010 - 23-4-2010; DRESDEN; (JOINTCOLLABORATIVE TEAM ON VIDEO CODING OF ISO/IEC JTC1/SC29/WG11 AND ITU-TSG.16); URL: HTTP://WFTP3.ITU.INT/ AV-ARCH/JCTVC-SITE/. no. JCTVC-A105, 22 de abril de 2010 describe un sistema de codificacion de video con eficacia de codificacion mayor y mayor paralelizacion que el estado de la tecnica. El sistema esta bien adaptado para transmitir contenido de video moderno que se adquiere por procedimientos profesionales como de consumidor. Ademas, esta bien adaptado para arquitecturas de procesamiento secuencial y paralelo. El nivel de rendimiento se logra combinando conceptos de mayores tamanos de bloque, interpolacion adaptativa y filtros de bucle, y mayor procesamiento de profundidad de bits con disenos paralelos para codificacion de entropfa e intra-prediccion.
El documento EP2081386 describe la codificacion y la decodificacion de imagenes y datos de video y, en particular, un nuevo modo de prediccion espacial para predecir un bloque de datos de imagen a partir de datos de imagen de bloques previamente codificados/decodificados. De acuerdo con este modo de prediccion, los bloques que contienen bordes afilados pueden predecirse con mayor fiabilidad teniendo en cuenta la direccion precisa del borde. El modo de prediccion no requiere ninguna sobrecarga de senalizacion adicional, porque (i) la direccion del borde se estima a partir de los bloques previamente codificados y (ii) el nuevo modo de prediccion reemplaza el modo CC convencional para bloques que contienen bordes afilados.
Divulgacion de la invencion
Problema tecnico
En un codec convencional de video, se codifica un video en un modo limitado de codificacion en base a un macrobloque que tiene un tamano predeterminado.
Solucion al problema
De acuerdo con la presente invencion, se proporciona un aparato para decodificar y un procedimiento para codificar y un medio de almacenamiento legible a ordenador no transitorio tal como se indica en las reivindicaciones adjuntas. Las realizaciones de ejemplo tambien proporcionan un procedimiento y aparato para codificar y para decodificar una imagen a traves de intra-prediccion usando modos de intra-prediccion que tienen varias directividades.
Las realizaciones de ejemplo tambien proporcionan un procedimiento para y aparato para codificar y decodificar una imagen a traves de intra-prediccion que puede reducir la cantidad de calculo realizado durante la intra-prediccion. Efectos ventajosos de la invencion
Puesto que se realiza intra-prediccion en varias direcciones, se puede mejorar la eficiencia de compresion de imagen.
Se puede reducir la cantidad de calculo realizado para determinar un pixel de referencia durante la intra-prediccion.
Breve descripcion de los dibujos
La figura 1 es un diagrama de bloques que ilustra un aparato para codifica una imagen, segun una realizacion ejemplar;
La figura 2 es un diagrama que ilustra varios modos de intra-prediccion de acuerdo con un tamano de un bloque actual, segun una realizacion ejemplar;
La figura 3 es un diagrama para explicar los modos de intra-prediccion aplicados a un bloque que tiene un tamano predeterminado, segun una realizacion ejemplar;
La figura 4 es un diagrama que ilustra las direcciones de los modos de intra-prediccion de la figura 3, segun una realizacion ejemplar;
La figura 5 es un diagrama para explicar un procedimiento de intra-prediccion realizado en el bloque ilustrado en la figura 3, segun una realizacion ejemplar;
La figura 6 es un diagrama para explicar los modos de intra-prediccion aplicados a un bloque que tiene un tamano predeterminado, segun una realizacion ejemplar;
La figura 7 es un diagrama de referencia para explicar los modos de intra-prediccion que tienen varias directividades, segun una realizacion ejemplar;
La figura 8 es un diagrama de referencia para explicar un proceso para genera un predictor cuando una lmea extendida que tiene un gradiente predeterminado pasa entre, o a traves de, pfxeles vecinos de ubicaciones de numeros enteros, segun una realizacion ejemplar;
La figura 9 es un diagrama de referencia para explicar un proceso para generar un predictor cuando una lmea extendida que tiene un gradiente predeterminado pasa entre pfxeles vecinos de ubicaciones de numeros enteros, segun una realizacion ejemplar;
La figura 10 es un diagrama de referencia para explicar un modo bilineal, segun una realizacion ejemplar;
La figura 11 es un diagrama para explicar un proceso para generar un valor de prediccion de un modo de intraprediccion de un bloque actual, segun una realizacion ejemplar;
Las figuras 12 y 13 son diagramas de referencia para explicar un proceso de correlacion para unificar los modos de intra-prediccion de bloques que tienen diferentes tamanos, segun una realizacion ejemplar;
La figura 14 es un diagrama de referencia para explicar un proceso de correlacion de modos de intra-prediccion de un bloque vecino a uno de los modos representativos de intra-prediccion, segun una realizacion ejemplar; La figura 15 es un diagrama para explicar una relacion entre un pixel actual y los pfxeles vecinos localizados en una lmea extendida que tiene una directividad (dx, dy), segun una realizacion ejemplar;
La figura 16 es un diagrama para explicar un cambio en un pixel vecino localizado en una lmea extendida que tiene una directividad (dx, dy) de acuerdo con una ubicacion de un pixel actual, segun una realizacion ejemplar; Las figuras 17 y 18 son diagramas para explicar un procedimiento para determinar una direccion de modo de intra-prediccion, segun una realizacion ejemplar;
La figura 19 es un diagrama de flujo que ilustra un procedimiento para codificar una imagen a traves de intraprediccion, segun una realizacion ejemplar;
La figura.20 es un diagrama de bloques que ilustra un aparato para decodificar una imagen segun una realizacion ejemplar; y
La figura 21 es un diagrama de flujo que ilustra un procedimiento para decodificar una imagen a traves de intraprediccion, de acuerdo con una realizacion de ejemplo.
Mejor modo de realizar la invencion
De acuerdo con un aspecto de una realizacion de ejemplo, se proporciona un aparato como se indica en la reivindicacion 1 adjunta.
De acuerdo con otro aspecto de una realizacion de ejemplo, se proporciona un procedimiento como se indica en la reivindicacion 2 adjunta.
De acuerdo con otro aspecto de una realizacion de ejemplo, se proporciona un medio de almacenamiento legible a ordenador no transitorio como se indica en la reivindicacion 3 adjunta.
Modo de la invencion
Ahora se describiran mas completamente las realizaciones de ejemplo con referencia a los dibujos adjuntos, en los cuales se muestra las realizaciones de ejemplo.
La figura 1 es un diagrama de bloques que ilustra un aparato 100 para codificar una imagen, de acuerdo con una realizacion de ejemplo.
Con referencia a la figura 1, el aparato 100 incluye una unidad 110 de intra-prediccion, una unidad 120 de estimacion de movimiento, una unidad 125 de compensacion de movimiento, una unidad 130 de transformacion de frecuencia, una unidad 140 de cuantificacion, un codificador 150 de entropfa, una unidad 160 de cuantificacion inversa, una unidad 170 de transformacion inversa de frecuencia, una unidad 180 de desbloqueo, y una unidad 190 de filtro de bucle.
La unidad 120 de estimacion de movimiento y la unidad 125 de compensacion de movimiento realizan la intraprediccion que divide un cuadro actual 105 de una imagen actual en bloques, cada uno teniendo un tamano predeterminado, y busca un valor de prediccion de cada uno de los bloques en una imagen de referencia.
La unidad 110 de intra-prediccion realiza la intra-prediccion que busca un valor de prediccion de un bloque actual al usar pfxeles de bloques vecinos de una imagen actual. En particular, la unidad 110 de intra-prediccion realiza adicionalmente modos de intra-prediccion que tienen varias directividades al usar parametros (dx, dy) ademas de un modo convencional de intra-prediccion. Los modos adicionales de intra-prediccion de acuerdo con la realizacion de ejemplo actual se explicaran mas adelante.
Los valores residuales del bloque actual se generan en base a un valor de prediccion producido desde la unidad 110 de intra-prediccion y la unidad 125 de compensacion de movimiento, y se transfieren como coeficientes de transformada cuantificados a traves de la unidad 130 de transformacion de frecuencia y la unidad 140 de cuantificacion.
Los coeficientes de transformada cuantificados se restauran a valores residuales a traves de la unidad 160 de cuantificacion inversa y la unidad 170 de transformacion inversa de frecuencia, y los valores residuales restaurados se procesan posteriormente a traves de la unidad 180 de desbloqueo 180 y la unidad 190 de filtro de circuito y se transfieren a un cuadro 195 de referencia. Los coeficientes de transformadas cuantificados se pueden transferir como una corriente de bits 155 a traves del codificador 150 de entropfa.
La intra-prediccion realizada por la unidad 110 de intra-prediccion de la figura 1 se explicara en detalle. Un procedimiento de intra-prediccion para mejorar la eficiencia de compresion de imagen se explicara al asumir un codec que realiza la codificacion de compresion al usar un bloque que tiene un tamano mayor o menor que 16 x 16 como una unidad codificadora, no un codec convencional tal como H.264 que realiza la codificacion en base a un macrobloque que tiene un tamano de 16 x 16.
La figura 2 es un diagrama que ilustra varios modos de intra-prediccion de acuerdo con un tamano de un bloque actual de acuerdo con una realizacion de ejemplo.
Varios modos de intra-prediccion que se van a aplicar a un bloque pueden variar de acuerdo con un tamano del bloque. Por ejemplo, con referencia a la figura 2, cuando un tamano de un bloque que se va a intra-predecir es N x N, un numero de modo de intra-prediccion actualmente realizados en cada uno de los bloques que tienen tamanos respectivos de 2x2 , 4x4 , 8 x 8, 16x 16, 32 x 32, 64 x 64, y 128 x 128 se puede ajustar para que sea 5, 9, 9, 17, 33, 5, y 5 (en el caso del Ejemplo 2). Como tales, un numero de modos de intra-prediccion realizados actualmente vana de acuerdo con un tamano de un bloque, puesto que la sobrecarga para codificar la informacion del modo de prediccion vana de acuerdo con el tamano del bloque. En otras palabras, en el caso de un bloque que tiene un tamano pequeno, aunque el bloque ocupe una parte pequena de una imagen completa, la sobrecarga puede ser alta para transmitir informacion adicional, tal como un modo de prediccion del bloque que tiene el tamano pequeno. Por consiguiente, si se codifica un bloque que tiene un tamano pequeno al usar demasiados modos de prediccion, se puede incrementar la velocidad de bits, reduciendo de este modo la eficiencia de compresion. Tambien, puesto que un bloque que tiene un tamano grande, por ejemplo, un tamano mayor de 64 x 64, frecuentemente se selecciona como un bloque para un area plana de una imagen, cuando el bloque que tiene el tamano grande se codifica al usar demasiados modos de prediccion, tambien se puede reducir la eficiencia de compresion.
Por consiguiente, en la figura 2, si los tamanos de bloque se clasifican aproximadamente en al menos tres tamanos N1 x N1 (2 = N1 = 8, N1 es un numero entero), N2 x N2 (16 = N2 = 32, N2 es un numero entero), y N3 x N3 (64 = N3, N3 es un numero entero), un numero de modos de intra-prediccion que se va a realizar en el bloque que tiene el tamano de N1 x N 1 es A1 (A1 es un numero entero positivo), un numero de modos de intra-prediccion que se va a realizar en el bloque que tiene el tamano de N2 x N2 es A2 (A2 es un numero entero positivo), y un numero de modos de intra-prediccion que se va a realizar en el bloque que tiene el tamano de N3 x N3 es A3 (A3 es un numero entero positivo), se prefiere que el numero de modos de intra-prediccion que se va a realizar de acuerdo con un tamano de cada bloque se ajuste para satisfacer una relacion de A3 = A1 = A2. Es dedr, cuando una imagen actual se divide aproximadamente en un bloque que tiene un tamano pequeno, un bloque que tiene un tamano intermedio, y un bloque que tiene un tamano grande, se prefiere que el bloque que tiene el tamano intermedio se ajuste para tener un numero mas grande de modos de prediccion, y el bloque que tiene el tamano pequeno y el bloque que tiene el tamano grande se ajusten para tener un numero relativamente pequeno de modos de prediccion. Sin embargo, la presente realizacion de ejemplo no se limita a esto, y el bloque que tiene el tamano pequeno y el bloque que tiene el tamano grande se pueden ajustar para tener un numero grande de modos de prediccion. Es un ejemplo y se puede cambiar el numero de modos de prediccion que vanan de acuerdo con el tamano de cada bloque ilustrado en la figura 2.
La figura 3 es un diagrama para explicar los modos de intra-prediccion aplicados a un bloque que tiene un tamano predeterminado, de acuerdo con una realizacion de ejemplo.
Con referencia a las figuras 2 y 3, cuando se realiza la intra-prediccion en un bloque que tiene un tamano de 4x4, el bloque que tiene el tamano de 4 x 4 puede tener un modo vertical (modo 0), un modo horizontal (modo 1), un modo de corriente continua (CC) (modo 2), un modo izquierdo hacia abajo (modo 3), un modo derecho hacia abajo (modo 4), un modo derecho vertical (modo 5), un modo horizontal hacia abajo (modo 6), un modo izquierdo vertical (modo 7), y un modo a horizontal hacia arriba (modo 8).
La figura 4 es un diagrama que ilustra direcciones de los modos de intra-prediccion de la figura 3, de acuerdo con una realizacion de ejemplo. En la figura 4, un numero mostrado en un extremo de una flecha indica un valor de modo correspondiente cuando se realiza la prediccion en una direccion marcada por la flecha. Aqrn, el modo 2 es un modo de prediccion de CC sin directividad, y de esta manera no se muestra.
La figura 5 es un diagrama para explicar un modo de intra-prediccion realizado en el bloque ilustrado en la figura 3, de acuerdo con una realizacion de ejemplo.
Con referencia a la figura 5, se genera un bloque de prediccion al usar pfxeles vecinos A-M de un bloque actual en un modo disponible de intra-prediccion determinado por el tamano de un bloque. Por ejemplo, se explicara una operacion de codificacion por prediccion de un bloque actual que tiene un tamano de 4 x 4 en el modo 0 de la figura 3, es decir, el modo vertical. Primero, los valores de pixel de los pfxeles A hasta D adyacentes alrededor del bloque actual que tiene el tamano de 4 x 4 se predicen como que son valores de pixel del bloque actual que tiene el tamano de 4 x 4. Es decir, un valor de pixel A se predice que es el valor de pixel de cuatro pfxeles incluidos en una primera columna del bloque actual que tiene el tamano de 4x4 , un valor de pixel del pixel B se predice que son valores de pixel de cuatro pfxeles incluidos en una segunda columna del bloque actual que tiene el tamano de 4x4, un valor de pixel del pixel C se predice que son valores de pixel de cuatro pfxeles incluidos en una tercera columna del bloque actual que tiene el tamano de 4 x 4 y un valor de pixel del pixel D se predice que son valores de pixel de cuatro pfxeles incluidos en una cuarta columna del bloque actual que tiene el tamano de 4 x 4. Entonces, se obtiene y codifica un valor residual entre los valores actuales de pixel de los pfxeles incluidos en el bloque actual 4 x 4 original y los valores de pixel de los pfxeles incluidos en el bloque actual 4x4 predicho al usar los pfxeles A hasta D.
La figura 6 es un diagrama para explicar los modos de intra-prediccion aplicados a un bloque que tiene un tamano predeterminado, de acuerdo con otra realizacion de ejemplo.
Con referencia a las figuras 2 y 6, cuando se realiza la intra-prediccion en un bloque que tiene un tamano de 2 x 2 o 128 x 128, y el bloque que tiene el tamano de 2 x 2 o 128 x 128 puede tener 5 modos: un modo vertical, un modo horizontal, a modo Cc, un modo plano, y un modo derecho diagonal hacia abajo.
Entre tanto, si un bloque que tiene un tamano de 32 x 32 incluye 33 modos de intra-prediccion como se muestra en la figura 2, es necesario ajustar las direcciones de los 33 modos de intra-prediccion. Para ajustar los modos de intraprediccion que tienen varias direcciones diferentes de los modos de intra-prediccion ilustrados en las figuras 4 y 6, a una direccion de prediccion para seleccionar un pixel vecino que se va a usar como un pixel de referencia alrededor de un pixel en un bloque se ajusta al usar los parametros (dx, dy). Por ejemplo, cuando cada uno de los 33 modos de prediccion se representa como un modo N (N es un numero entero de 0 a 32), un modo 0 se puede ajustar para que sea un modo vertical, un modo 1 se puede ajustar para que sea un modo horizontal, un modo 2 se puede ajustar para que sea un modo de CC, un modo 3 se puede ajustar para que sea un modo plano, y cada uno de un modo 4 hasta un modo 32 se pueden ajustar para que sean un modo de prediccion que tiene una directividad de tan'1 (dy/dx) representada como una de (dx, dy) que se expresa como una de (1,-1), (1,1), (1,2), (2,1), (1,-2), (2,1), (1, -2) , (2,-1), (2, -11) , (5, -7) , (10,-7), (11,3), (4,3), (1,11), (1,-1), (12,-3), (1,-11), (1,-7), (3,-10), (5,-6), (7,-6), (7,-4), (11,1), (6,1), (8,3), (5,3), (5,7), (2,7), (5,-7), y (4,-3) como se muestra en la Tabla 1.
Tabla 1
Figure imgf000005_0001
(continuacion)
Figure imgf000006_0001
Se puede ajustar al menos el modo 32 para que sea un modo bilineal usando interpolacion bilineal, como se describira mas adelante con referencia a la figura 10.
La figura 7 es un diagrama de referencia para explicar los modos de intra-prediccion que tienen varias directividades, de acuerdo con una realizacion de ejemplo.
Como se describe con referencia a la Tabla 1, los modos de intra-prediccion puede tener varias directividades de tan-1 (dy/dx) al usar una pluralidad de parametros (dx, dy).
Con referencia a la Figura 7, los pfxeles vecinos A y B localizados en una lmea 700 extendida que tiene un gradiente de tan'1 (dy/dx) que se determina de acuerdo con (dx, dy) de cada modo mostrado en la Tabla 1 alrededor del pixel actual P que se va a predecir en un bloque actual se pueden usar como un predictor para el pixel actual P. En este caso, se prefiere que los pfxeles vecinos A y B usados como un predictor sean pfxeles del bloque vecino en los lados hacia arriba, izquierdo, derecho hacia arriba e izquierdo hacia abajo del bloque actual, que se codifican y restauran de forma previa. Tambien, si la lmea 700 extendida pasa entre, no a traves de, los pfxeles vecinos de ubicaciones de numeros enteros, los pfxeles vecinos mas cerca al pixel actual P de entre pfxeles vecinos cercanos a la lmea 700 extendida se pueden usar como un predictor, o se puede realizar la prediccion al usar pfxeles vecinos cercanos a la lmea 700 extendida. Por ejemplo, un valor promedio entre los pfxeles vecinos cercano a la lmea 700 extendida, o un valor promedio ponderado que considere una distancia entre una intercepcion de la lmea 700 extendida y los pfxeles vecinos cercanos a la lmea 700 extendida se pueden usar como un predictor para el pixel actual P. Ademas, como se muestra en la figura 7, se puede senalizar en unidades de bloques cuyos pfxeles vecinos, por ejemplo, los pfxeles vecinos A y B, se van a usar como un predictor para el pixel actual P de entre los pfxeles vecinos en un eje X y los pfxeles vecinos en un eje Y que estan disponibles de acuerdo con las direcciones de prediccion.
La figura 8 es un diagrama de referencia para explicar un proceso para generar un predictor cuando una lmea 800 extendida que tiene un gradiente predeterminado pasa entre, no a traves de, pfxeles vecinos de ubicaciones y numeros enteros, de acuerdo con una realizacion de ejemplo.
Con referencia a la figura 8, si la lmea 800 extendida que tiene un angulo de tan-1 (dy/dx) que se determina de acuerdo con (dx, dy) de cada modo pasa a traves de un pixel 810 vecino A y un pixel 820 vecino B de ubicaciones de numeros enteros, un valor promedio ponderado que considere una instancia entre una intercepcion de la lmea 800 extendida y los pfxeles 810 y 820 vecinos A y B cercanos a la lmea 800 extendida se puede usar como un predictor para el pixel actual P como se describe anteriormente. Por ejemplo, cuando una distancia entre la intercepcion de la lmea 800 extendida que tiene el angulo de tan-1 (dy/dx) y el pixel 810 vecino A es f y una distancia entre la intercepcion de la lmea 800 extendida y el pixel 820 vecino B es g, se puede obtener un predictor para el pixel actual P como (A*g+B*f)/(f+g). Aqrn, se prefiere que f y g puedan ser cada uno una distancia normalizada usando un numero entero. Si se usa software o hardware, el predictor para el pixel actual P se puede obtener mediante la operacion de cambio (g*A+f*B+2) >> 2. Como se muestra en la figura 8, si la lmea 800 extendida pasa a traves de un primer cuarto cercano al pixel 810 vecino A de entre cuatro partes obtenidas al dividir en cuartos una distancia entre el pixel 810 vecino A y el pixel 820 vecino B de las ubicaciones de numero entero, el predictor para el pixel actual P se puede obtener como (3*A+B)/4. Esta operacion se puede realizar por operacion de cambio que considere el redondeo a un numero entero mas cercano tal como (3*A+B+2) >> 2.
La figura 9 es un diagrama de referencia para explicar un proceso para generar un predictor cuando una lmea extendida que tiene un gradiente predeterminado pasa entre pfxeles vecinos de ubicaciones de numeros enteros, de acuerdo con otra realizacion de ejemplo.
Con referencia a la figura 9, si una lmea extendida que tiene un angulo de tan-1 (dy/dx) que se determina de acuerdo con (dx, dy) de cada modo pasa entre un pixel 910 vecino A y un pixel 920 vecino B de ubicaciones de numeros enteros, una seccion entre pixel 910 vecino A y el pixel 920 vecino B se puede dividir en un numero predeterminado de areas, y un valor promedio ponderado que considere una distancia entre una intercepcion y el pixel 910 vecino A y el pixel 920 vecino B en cada area dividida se puede usar como un valor de prediccion. Por ejemplo, una seccion entre el pixel 910 vecino A y el pixel 920 vecino B se puede dividir en cinco secciones P1 hasta P5 como se muestra en la figura 9, se puede determinar un valor promedio ponderado representativo que considera una distancia entre una intercepcion y el pixel 151 vecino A y el pixel 152 vecino B en cada seccion, y el valor promedio ponderado representativo se puede usar como un predictor para el pixel actual P. En detalle, si una lmea extendida pasa a traves de la seccion P1, se puede determinar un valor del pixel 910 vecino A como un predictor para el pixel actual P. Si la lmea extendida pasa a traves de la seccion P2, un valor promedio ponderado (3*A+1*B+2) >> 2 que considere una distancia entre el pixel 910 vecino A y el pixel 920 vecino y un punto medio de la seccion P2 se puede determinar como un predictor para el pixel actual P. Si una lmea extendida pasa a traves de la seccion P3, un valor ponderado promedio (2*A+2*B+2) >> 2 que considere una distancia entre el pixel 910 vecino A y el pixel 920 vecino B y un punto intermedio de la seccion P3 se puede predeterminar como un predictor para el pixel actual P. Si una lmea extendida pasa a traves de la seccion P4, un valor promedio ponderado (1*A+3*B+2) >> 2 que considere una distancia entre el pixel 910 vecino A y el pixel 920 vecino B y un punto intermedio de la seccion P4 se puede determinar como un predictor para el pixel actual P. Si la lmea extendida pasa a traves de la seccion P5, se puede determinar un valor del pixel 920 vecino B como un predictor para el pixel actual P.
Ademas, si dos pfxeles vecinos, es decir, el pixel vecino A en el lado hacia arriba, y el pixel vecino B en el lado izquierdo encuentran la lmea 700 extendida como se muestra en la figura 7, se puede usar un valor promedio del pixel vecino A y el pixel vecino B como un predictor para el pixel actual P. De manera alternativa, si (dx*dy) es un valor positivo, el pixel vecino A en el lado hacia arriba se puede usar, y si (dx*dy) es un valor negativo, se puede usar el pixel vecino B en el lado izquierdo.
Es preferible que los modos de intra-prediccion que tienen varias directividades, como se muestra en la Tabla 1, se ajusten previamente en un extremo de codificacion y un extremo de decodificacion, y solo se transmita un mdice correspondiente de un modo de intra-prediccion ajustado para cada bloque.
La figura 10 es un diagrama de referencia para explicar un modo bilineal de acuerdo con una realizacion de ejemplo. Con referencia a la figura 10, en un modo bilineal, un valor promedio geometrico que considere las distancias a los bordes hacia arriba, hacia abajo, izquierdo y derecho del pixel actual P y los pfxeles localizados en los bordes hacia arriba, hacia abajo, izquierdo y derecho alrededor del pixel actual P que se va a predecir en un bloque actual se calcula, y un resultado del calculo se usa como un predictor para el pixel actual P. Es decir, en un modo bilineal, un valor promedio geometrico de distancias a los bordes hacia arriba, hacia abajo, izquierdo o derecho del pixel actual P y un pixel A 1061, un pixel B 1002, un pixel D 1006, y un pixel E. 1007 que estan localizados en los bordes hacia arriba, hacia abajo, izquierdo y derecho del pixel actual P se puede usar como un predictor para el pixel 1060 actual P. En este caso, puesto que el modo bilineal es uno de los modos de intra-prediccion, los pfxeles vecinos en los lados hacia arriba e izquierdo que se codifican previamente y luego se restauran tambien se deben usar como pfxeles de referencia durante la prediccion. por consiguiente, los correspondientes valores de pixel en el bloque actual no se usan como el pixel A 1061 y el pixel B 1002, pero se usan los valores virtuales de pixel generados al usar pfxeles vecinos en los lados hacia arriba.
En detalle, un pixel 1003 virtual C en un lado derecho hacia abajo de un bloque actual se calcula al usar un valor promedio de un pixel vecino PfxelArribaDerecho 1004 en un lado derecho hacia arriba y un pixel vecino PfxelAbajolzquierdo 1005 en un lado izquierdo hacia abajo adyacente al bloque actual como se muestra en la Ecuacion 1.
Figura matematica 1
C = 0,5 (PfxelAbajo PfxelArriba)
La Ecuacion 1 se puede calcular por la operacion de cambio como C = 0,5 (PfxelAbajolzquierdo PfxelArribaDerecho 1) >> 1.
Cuando el pixel 1060 actual P se extiende hacia abajo al considerar una distancia W1 al borde izquierdo y una distancia W2 al borde derecho del pixel actual P 1060, un valor del pixel 1061 virtual A localizado en el borde hacia abajo se puede ajustar al usar un- valor promedio del pixel vecino PfxelAbajolzquierdo 1005 en un lado izquierdo hacia abajo y el pixel C 1003. Por ejemplo, el valor del pixel A 1061 se puede calcular al usar una ecuacion mostrada en la Ecuacion 2.
Figura matematica 2
A = (C * W1 PfxelAbajo * W2)/(W1 W2);
A = (C * W1 PfxelAbajo * W2+ ((W1 W2)/2))/(W1 W2)
En la Ecuacion 2, cuando un valor de W1 W2 es una potencia de 2 tal como 2An, A = (C * W1 P^xelAbajoIzquierdo * W2 ((W1 W2)/2))/(W1 W2) se puede calcular por la operacion de cambio como A = (C * W1 P^xelAbajoIzquierdo * W2 2A(n-1)) >> n sin division.
Igualmente, cuando el p^ xel 1060 actual P se extiende hacia la derecha al considerar una instancia hi al borde superior del pixel 1060 actual P y una distancia h2 al borde inferior del pixel 1060 actual P, un valor de un pixel 1002 virtual B localizado en el borde derecho se puede ajustar al usar un valor promedio del pixel vecino PfxelArribaDerecho 1004 en un lado derecho hacia arriba y el pixel C 1003 al considerar las distancias h1 y h2. Por ejemplo, el valor del pixel B 1002 se puede calcular al usar una ecuacion mostrada en la Ecuacion 3.
B = (C * h1 PfxelArriba * h2)/(h1 h2);
B = (C * h1 PfxelArriba * h2 ((h1 h2)/2))/(h1 h)
En la Ecuacion 3, cuando un valor de h1 h2 es una potencia de 2 igual a 2Am, B = (C * h1 PfxelArribaDerecho * h2 ((h1 h2)/2))/(h1 h2) se puede calcular por la operacion de cambio como B = (C *h1 PfxelArribaDerecho * h2 2A(m-1)) >> m sin una division.
Una vez que los valores del pixel 1061 virtual A en el borde hacia abajo del pixel 1060 actual P y el pixel 1002 virtual B en el borde derecho del pixel 1060 actual P se determinan al usar las Ecuaciones 1 a 3, un predictor para el pixel 1060 actual P se puede determinar al usar un valor promedio de A+B+D+E. En detalle, un valor promedio ponderado que considera una distancia entre el pixel 1060 actual P y el pixel 1061 virtual A, el pixel 1002 virtual B, el pixel D 1006, y el pixel E 1007, o un valor promedio de A+B+D+E se puede usar como predictor para el pixel 1060 actual P. Por ejemplo, si un tamano de un bloque de la figura 10 es 16x16 y un valor promedio ponderad se usa, un predictor para el pixel 1060 actual P se puede obtener como (h1 * A h2 * D+ W1 * B W2 * E 16) >> 5. Como tal, esta prediccion bilineal se aplica a todos los pfxeles en un bloque actual, y se genera un bloque de prediccion del bloque actual en un modo de prediccion bilineal.
Puesto que se realiza la codificacion de prediccion de acuerdo con los modos de intra-prediccion que vanan de acuerdo con un tamano de un bloque, se puede lograr una compresion mas eficiente de acuerdo con las caractensticas de una imagen.
Entre tanto, puesto que un mayor numero de modos de intra-prediccion que los modos de intra-prediccion usados en un codec convencional se usan de acuerdo con la presente realizacion de ejemplo, puede llegar a ser un problema la compatibilidad con el codec convencional. Por consiguiente, puede sea necesario correlacionar los modos disponibles de intra-prediccion que tienen varias direcciones a uno de un numero mas pequeno de modos de intraprediccion. es decir, cuando un numero de modos disponibles de intra-prediccion de un bloque actual es N1 (N1 es un numero entero), para hacer los modos disponibles de intra-prediccion del bloque actual compatibles con un bloque que tiene N2 (N2 es un numero entero diferente de N1) modos de intra-prediccion, los modos de intraprediccion del bloque actual se pueden correlacionar a un modo de intra-prediccion que tiene una direccion mas similar de entre los N2 modos de intra-prediccion. Por ejemplo, se asume que estan disponibles un total de 33 modos de intra-prediccion en el bloque actual como se muestra en la Tabla 1 y un modo de intra-prediccion finamente aplicado al bloque actual es el modo 14, es decir (dx, dy) = (4,3), que tiene una directividad de tan'1 (3/4) = 36,87 (grados). En este caso, para hacer corresponder el modo de intra-prediccion aplicado al bloque actual a uno de los 9 modos de intra-prediccion como se muestra en la figura 4, se puede seleccionar el modo 4 (derecho hacia abajo) que tiene una similar directividad mas similar a la directividad de 36,87 (grados). El modo 14 en la Tabla 1 se puede correlacionar al modo 4 ilustrado en la figura 4. Igualmente, si un modo de intra-prediccion aplicado al bloque actual se selecciona para que sea el modo 15, es decir (dx, dy) = (1,11), de entre los 33 modos disponibles de intraprediccion de la Tabla 1, puesto que una directividad del modo de intra-prediccion aplicado al bloque actual es tan-1 (11) = 84,80 (grados), el modo 0 (vertical) de la figura 4 que tiene una mayor directividad a la directividad de 84,80 (grados) se puede correlacionar con el modo 15.
Entre tanto, para decodificar un bloque codificado a traves de la intra-prediccion, se requiere informacion del modo de prediccion a cerca de a traves de que modo de intra-prediccion se codifica a un bloque actual. Por consiguiente, cuando se codifica una imagen, la informacion a cerca de un modo de intra-prediccion de un bloque actual se adiciona a una corriente de bits, y en este momento, si la informacion acerca del modo de intra-prediccion se adiciona como que va a ser la corriente de bits para cada bloque, se incrementa la sobrecarga, reduciendo de este modo la eficiencia de compresion. Por consiguiente, la informacion acerca del modo de intra-prediccion del bloque actual que se determina como resultado de codificar el bloque actual no se puede transmitir como esta, sino solo un valor de diferencia entre un valor de un modo real de intra-prediccion y un valor de prediccion de un modo de intraprediccion realizado de los bloques vecinos se puede transmitir.
Si se usan modos de intra-prediccion que tienen varias direcciones de acuerdo con la presente realizacion de ejemplo, varios modos disponibles de intra-prediccion pueden variar de acuerdo con el tamano de un bloque. Por consiguiente, para predecir un modo de intra-prediccion de un bloque actual, es necesario correlacionar los modos de intra-prediccion de bloques vecinos a modos de intra-prediccion representativos. Aqm, se prefiere que los modos representativos de intra-prediccion puedan ser un numero mas pequenos de modos de intra-prediccion de entre los modos de intra-prediccion de bloques vecinos disponibles o nueve modos de intra-prediccion como se muestra en la figura 14.
La figura 11 es un diagrama para explicar un proceso para generar un valor de prediccion de un modo de intraprediccion de un bloque actual, de acuerdo con una realizacion de ejemplo.
Con referencia a la figura 11, cuando un bloque actual es A 110, se puede predecir un modo de intra-prediccion del bloque actual A 110 de los modos de intra-prediccion determinados de los bloques vecinos. Por ejemplo, si un modo determinado de intra-prediccion determinado de un bloque izquierdo B 111 del bloque actual A 110 es un modo 3 y un modo de prediccion determinado de un bloque hacia arriba C 112 es un modo 4, un modo de intra-prediccion del bloque actual A 110 se puede predecir que es el modo 3 que tiene un valor mas pequeno dentro de los modos de prediccion del bloque hacia arriba C 112 y el bloque izquierdo B 111. Si un modo de intra-prediccion determinado como resultado de la codificacion real de intra-prediccion realizada en el bloque actual A 110 es un modo 4, solo una diferencia 1 del modo 3 que es un valor del modo de intra-prediccion previsto de los bloques vecinos B 111 y C 112 se transmite como la informacion de modo de intra-prediccion. Cuando se una imagen, de la misma manera, se genera un valor de prediccion de un modo de intra-prediccion de un bloque actual, un valor de diferencia de modo transmitido a traves de una corriente de bits se adiciona al valor de prediccion del modo de intra-prediccion, y se obtiene la informacion del modo de intra-prediccion realmente aplicada al bloque actual. Aunque solo se usan los bloques vecinos localizados en los lados superior izquierdo del bloque actual, se puede predecir un modo de intraprediccion del bloque actual A 110 al usar otros bloques vecinos como se muestra en la figura 11E y en la figura 11D.
Entre tanto, puesto que los modos de intra-prediccion realmente realizados vanan de acuerdo con el tamano del bloque, un modo de intra-prediccion previsto de los bloques vecinos no se puede hacer corresponder a un modo de intra-prediccion de un bloque actual. Por consiguiente, para predecir un modo de intra-prediccion de un bloque actual de los bloques vecinos que tienen diferentes tamanos, se requiere un proceso de correlacion para unificar los modos de intra-prediccion de los bloques que tienen diferentes modos de intra-prediccion.
Las figuras 12 y 13 son diagramas de referencia para explicar un proceso de correlacion para unificar modos de intra-prediccion de bloques que tienen diferentes tamanos, de acuerdo con realizaciones de ejemplo.
Con referencia a la figura 12, se asume que un bloque 120 actual A tiene un tamano de 16 x 16, un bloque 121 izquierdo B tiene un tamano de 8 x 8, y un bloque 122 superior C tiene un tamano de 4 x 4. Tambien, como se muestra en el Ejemplo 1 de la figura 2, se asume que los numeros de modos disponibles de intra-prediccion de los bloques que tienen los tamanos de 4x4, 8 x 8 y 16x16 son 9, 9 y 33. En este caso, puesto que los numeros de los modos disponibles de intra-prediccion del bloque 121 izquierdo B y el bloque 122 superior C son diferentes del numero de los modos disponibles de intra-prediccion del bloque 120 actual A, un modo de intra-prediccion previsto del bloque 121 izquierdo B y el bloque 122 hacia arriba C no es adecuado para que se use como un valor de prediccion de un modo de intra-prediccion del bloque 120 actual A. Por consiguiente, en la figura 12, en los modos de prediccion del bloque 121 vecino B y el bloque 122 vecino C se cambian respectivamente al primer y segundo modos representativos de intra-prediccion que tienen una direccion mas similar de entre un numero predeterminado de modos representativos de intra-prediccion como se muestra en la figura 14, y se selecciona un modo que tiene un valor de modo mas pequeno del primer y el segundo modos representativos de intra-prediccion como un modo final representativo de intra-prediccion. Un modo de intra-prediccion que tiene una direccion mas similar al modo final representativo de intra-prediccion seleccionado de los modos de intra-prediccion disponibles de acuerdo con un tamano del bloque 120 actual A se predice que es un modo de intra-prediccion del bloque 120 actual A.
De manera alternativa, con referencia a la figura 13, se asume que un bloque 130 actual A tiene un tamano de 16 x 16, un bloque 133 izquierdo B tiene un tamano de 32 x 32 y un bloque C 132 tiene un tamano de 8 x 8. Ademas, como se muestra en el Ejemplo 1 de la figura 2, se sume que los numeros de modos disponibles de intra-prediccion de los bloques que tienen tamanos de 8 x 8, 16 x 16, 32 x 32 son 9, 9 y 32. Ademas, se asume que un modo de intra-prediccion del bloque 133 izquierdo B es un modo 4, y un modo de intra-prediccion del bloque 132 superior C es un modo 31. En este caso, puesto que los modos de intra-prediccion del bloque 133 izquierdo B y el bloque 132 hacia arriba C no son compatible entre sf, cada uno de los modos de intra-prediccion del bloque 133 izquierdo B y el bloque 132 superior C se correlaciona a uno de los modos representativos de intra-prediccion, como se muestra en la figura 14. Puesto que el modo 31 que es el modo de intra-prediccion del bloque 133 izquierdo B tiene una directividad de (dx, dy) = (4, -3) como se muestra en la Tabla 1, el modo 31 se correlaciona a un modo 5 que tiene una directividad mas similar a tan'1 (-3/4) de entre los modos representativos de intra-prediccion de la figura 14, y puesto que el modo 4 tiene la misma directividad como la de un modo 4 de entre los modos representativos de intraprediccion de la figura 14, el modo 4 que es el modo de intra-prediccion del bloque 1132 superior C se correlaciona al modo 4.
Entonces, el modo 4 que tiene un valor mas pequeno de entre el modo 5 que es el modo correlacionado de intraprediccion del bloque 133 izquierdo B y el modo 4 que es el modo correlacionado de intra-prediccion del bloque 132 hacia arriba C se puede determinar que es un valor de prediccion de un modo de intra-prediccion del bloque 130 actual A, y solo un valor de diferencia de modo entre un modo real de intra-prediccion y un modo predicho de intraprediccion del bloque 130 actual A se puede codificar como informacion de modo de intra-prediccion del bloque 130 actual A.
La figura 14 es un diagrama de referencia para explicar un proceso para correlacionar los modos de intra-prediccion de bloques vecinos a uno de los modos representativos de intra-prediccion, de acuerdo con una realizacion de ejemplo. En la figura 14, como los modos representativos de intra-prediccion, un modo vertical 0, un modo horizontal 1, un modo de CC (no mostrado), un modo izquierdo diagonal hacia abajo 3, un modo derecho diagonal hacia abajo 4, un modo derecho vertical 5, un modo horizontal hacia abajo 6, un modo vertical izquierdo 7, y un modo horizontal hacia arriba 8 se ajusta. Sin embargo, los modos representativos de intra-prediccion no se limitan a esto y se pueden ajustar para tener varios numeros de directividades.
Con referencia a la figura 14, se ajustan previamente varios modos representativos predeterminados de intraprediccion, y los modos de intra-prediccion de los bloques vecinos se correlacionan a un modo representativo de intra-prediccion que tiene una direccion mas similar. Por ejemplo, si un modo determinado de intra-prediccion de un bloque vecino es un modo de intra-prediccion MODO_A 140 que tiene una directividad, el modo de intra-prediccion MODO_A 140 del modo vecino se correlaciona al MODO 1 que tiene una direccion mas similar de entre 9 modos hasta preestablecidos 1 a 9, representativos de intra-prediccion. Si un modo determinado de intra-prediccion de un bloque vecino es un modo de intra-prediccion MODO_B 141 que tiene una directividad, el modo de intra-prediccion MODO _B 141 del bloque vecino se correlaciona al MODO 5 que tiene una direccion mas similar de entre los 9 modo 1 a 9 preestablecidos, representativos de intra-prediccion.
Como tales, si no son los mismos los modos disponibles de intra-prediccion de los bloques vecinos, los modos de intra-prediccion de los bloques vecinos se correlacionan a modos representativos de intra-prediccion, y un modo de intra-prediccion que tiene un valor mas pequeno de modo se selecciona como un modo final representativo de intraprediccion de los bloques vecinos de entre los modos correlacionados de intra-prediccion de los bloques vecinos. Como tal, la razon por la que un modo representativo de intra-prediccion que tiene un valor mas pequeno de modo que es un valor mas pequeno de modo se ajusta a modos de intra-prediccion mas frecuentemente generados. Es decir, si se predicen diferentes modos de intra-prediccion de los bloques vecinos, puesto que un modo de intraprediccion que tiene un valor mas pequeno de modo tiene una posibilidad de mayor ocurrencia, se prefieren seleccionar un modo de prediccion que tiene un valor mas pequeno de modo como un predictor para un modo de prediccion de un bloque actual cuando hay diferentes modos de prediccion.
Algunas veces, aunque se seleccione un modo representativo de intra-prediccion de los bloques vecinos, el modo representativo de intra-prediccion no se puede usar puesto que el modo representativo de intra-prediccion es un predictor para un modo de intra-prediccion de un bloque actual. Por ejemplo, si el bloque 120 actual A tiene 33 modos de intra-prediccion y un modo representativo de intra-prediccion tiene solo 9 modos representativos de intraprediccion, como se describe con referencia a la figura 12, un modo de intra-prediccion del bloque 120 actual A que corresponde a un modo representativo de intra-prediccion no existe. En este caso, de una manera similar a aquella usada para correlacionar los modos de intra-prediccion de bloques vecinos a un modo representativo de intraprediccion como se describe anteriormente, un modo de intra-prediccion que tiene una prediccion mas similar a un modo representativo de intra-prediccion seleccionado de modos disponibles de intra-prediccion de acuerdo con un tamano de un bloque actual se pueden seleccionar como un predictor final para un modo de intra-prediccion del bloque actual. Por ejemplo, si un modo representativo de intra-prediccion finalmente seleccionado de bloques vecinos en la figura 14 es un modo 6 , un modo de intra-prediccion que tiene una directividad mas similar a aquella del modo 6 de entre los modos de intra-prediccion disponibles de acuerdo con el tamano del bloque actual se pueden seleccionar finalmente como un predictor para el modo de intra-prediccion del bloque actual.
Entre tanto, como se describe anteriormente con referencia a la figura 7, si un predictor para el pixel actual P se genera al usar pfxeles vecinos en o cerca de la lmea 700 extendida, la lmea 700 extendida tiene realmente una directividad de tan'1 (dy/dx). Puesto que se necesita la division (dy/dx) a fin de calcular la directividad, cuando se usa hardware o software, se hace el calculo hacia abajo a lugares decimales, implementado de este modo la cantidad de calculo. Por consiguiente, se prefiere que cuando una direccion de prediccion para seleccionar pfxeles vecinos que se van a usar como pfxeles de referencia alrededor de un pixel en un bloque se ajuste al usar (dx, dy) parametros de una manera similar a aquella descrita con referencia a la Tabla 1, dx y dy se ajustan para reducir la cantidad de calculo.
La figura 15 es un diagrama para explicar una relacion entre un pixel actual y los pfxeles vecinos localizados en una lmea extendida que tiene una directividad de (dx, dy) de acuerdo con una realizacion de ejemplo.
Con referencia a la figura 15, se asume que una ubicacion de un pixel 1510 actual P localizado en un i-esimo lugar (i es un numero entero) en base a un borde hacia arriba de un bloque actual y un j-esimo lugar (j es un numero entero) en base a un borde izquierdo del bloque actual es P(j,i), y un pixel vecino superior y un pixel vecino izquierdos localizados en una lmea extendida que pasa a traves del pixel 1520 actual P y que tiene una directividad, es decir, un gradiente de, (dy/dx) son respectivamente A 1520 y B 1530. Tambien, cuando se asume que las ubicaciones de los pfxeles vecinos hacia arriba corresponden a un eje X en un plano de coordenadas y ubicaciones de pfxeles vecinos izquierdos corresponden a un eje Y en el plano de coordenadas, se encuentra al usar una relacion trigonometrica que el pixel 1520 vecino superior A que se encuentra con la lmea extendida se localiza en (j+i*dx/dy, 0) y el pixel 1530 vecino izquierdo B que se encuentra con la lmea extendida se localiza en (0, i+j*dy/dx). Por consiguiente, para determinar cualquiera del pixel 1520 vecino hacia arriba A y el pixel 1530 vecino izquierdo pixel B para predecir el pixel 1510 actual P, se requiere la division tal como dx/dy o dy/dx. Puesto que la division es muy compleja como se describe anteriormente, se puede reducir la velocidad de calculo del software o hardware.
Por consiguiente, un valor de al menos uno de dx y dy que representa una directividad de un modo de prediccion para determinar pfxeles vecinos usados para la intra-prediccion se puede determinar que es una potencia de 2. Es decir, cuando n y m son numeros enteros, dx y dy pueden ser respectivamente 2An y 2Am.
Con referencia a la figura 15, si el pixel 1530 vecino izquierdo B se usa como un predictor para el pixel 1510 actual P y dx tiene un valor de 2An, j*dy/dx se necesita determinar (0, i+j*dy/dx) que es una ubicacion del pixel 1530 vecino izquierdo B llega a ser (i*dy)/(2An), y se obtiene facilmente la division usando esta potencia de 2 por la operacion de cambio como (i*dy) >> n, reduciendo de este modo la cantidad de calculo.
Igualmente, si el pixel 1520 vecino hacia arriba A se usa como un predictor para el pixel 1510 actual P y dy tiene un valor de 2Am, i*dx/dy se necesita determinar (j+i*dx/dy, 0) que es una ubicacion del pixel 1520 vecino hacia arriba A llega a ser (i*dx)/(2Am), y se obtiene facilmente la division usando una potencia de 2 por la operacion de cambio como (i*dx) >> m.
La figura 16 es un diagrama para explicar un cambio en un pixel vecino localizado en una lmea extendida que tiene una directividad de (dx, dy) de acuerdo con una ubicacion de un pixel actual, de acuerdo con una realizacion de ejemplo.
Uno de un pixel vecino hacia arriba y un pixel vecino izquierdo localizados en una lmea extendida que pasa a traves de un pixel actual se selecciona como un pixel a traves de un pixel actual se selecciona como un pixel vecino necesario para la prediccion de acuerdo con una ubicacion del pixel actual y un gradiente de la lmea extendida. Con referencia a la figura 16, cuando un pixel 1610 actual es P(j,i) y se predice al usar un pixel vecino localizado en una lmea extendida que tiene un gradiente, un pixel superior A se usa pare predecir el pixel 1610 actual P. Cuando un pixel 1620 actual es Q(b,a), se usa un pixel izquierdo B para predecir el pixel actual Q 1620.
Si solo un componente dy de una direccion del eje Y de entre (dx, dy) que representa una direccion de prediccion tiene una potencia de 2 tal como 2Am, el pixel superior A en la figura 16 se puede determinar por operacion de cambio o similar como (j+(i*dx) >> m, 0) sin division, pero el pixel izquierdo B requiere division como se muestra en (0, a+b*2Am/dx). Por consiguiente, para excluir la division cuando se genera un predictor para todos los pfxeles de un bloque actual, todo de dx y dy deben tener un tipo de potencia de 2.
Las figuras 17 y 18 son diagramas para explicar un procedimiento para determinar una direccion de modo de intraprediccion de acuerdo con realizaciones de ejemplo.
En general, hay muchos casos donde los patrones lineales mostrados en una imagen o una senal de video son verticales u horizontales. Por consiguiente, cuando los modos de intra-prediccion que tiene varias directividades se definen al usar (dx, dy) parametros, se puede mejorar la eficiencia de codificacion de imagen al definir valores de dx y dy. Por ejemplo, los valores absolutos de dx y dy se ajustan tal que es estrecha la distancia entre las direcciones de prediccion cercanas a una direccion horizontal o una direccion vertical y es amplia la direccion entre los modos de prediccion cercanos a una direccion diagonal.
En detalle, con referencia a la figura 17, si dy tiene un valor fijo de 2An, se puede ajustar un valor absoluto de dx tal que una distancia entre las direcciones de prediccion cercanas a una direccion vertical es estrecha y es mas amplia la distancia entre los modos de prediccion mas cercanos a una direccion horizontal. En otras palabras, un valor absoluto de dx se puede ajustar tal que sea estrecha una distancia entre las direcciones de prediccion cercana a una direccion vertical y sea mas amplia una direccion entre los modos de prediccion mas cercanos a una direccion diagonal (+45 o -45 grados). Es decir, si dy tiene un valor fijo que es una potencia de 2, se puede ajustar una distancia para disminuir conforme un valor absoluto de dx es mas cercano a 0, tal que la distancia disminuye conforme una direccion de una lmea extendida esta mas cercana a una direccion vertical, y la distancia se puede ajustar para incrementarse conforme el valor absoluto de dx esta mas lejano de 0, tal que la distancia se incrementa conforme la direccion de la lmea extendida esta mas cercana a una direccion horizontal. Por ejemplo, como se muestra en la figura 17, si dy tiene un valor de 2A4, es decir, 16, un valor de dx se puede ajustar para que sea 1, 2, 3, 4, 6, 9, 12, 16, 0, -1, -2, -3, -4, -6, -9, -12, y -16, tal que puede se estrecha una distancia entre las lmeas extendidas cercanas a una direccion vertical y puede ser amplia una distancia entre lmeas extendidas cercanas a una direccion horizontal.
Igualmente, cuando dx tiene un valor fijo de 2An, un valor absoluto de dy se puede establecer tal que una distancia entre las direcciones de prediccion cercanas a una direccion horizontal es estrecha y es mas amplia una direccion entre los modos de prediccion cercanos a una direccion vertical. En otras palabras, se puede ajustar un valor absoluto de dy tal que es estrecha una distancia entre las direcciones de prediccion cercanas a una direccion horizontal y es mas amplia una distancia entre los modos de prediccion cercanos a una direccion diagonal (+45 o -45 grados). Es decir, cuando dx tiene un valor fijo que es una potencia de 2, se puede ajustar una distancia para que se reduzca conforme un valor absoluto de dy esta cercano a 0, tal que la distancia disminuye conforme una direccion de una lmea extendida esta mas cerca de una direccion horizontal, y la distancia se puede ajustar para incrementarse conforme un valor absoluto de dy esta mas lejos de 0 tal que la distancia se incrementa conforme la direccion de la lmea extendida esta mas cerca a la direccion horizontal. Por ejemplo, como se muestra en la figura 18, cuando dx tiene un valor de 2A4, es decir, 16, un valor de dy se puede ajustar para que sea 1,5 2, 3, 4, 6, 9, 12, 16, 0, -1, -2, -3, -4, -6, -9, -12, y -16 tal que puede ser estrecha una distancia entre las lmeas extendidas cercanas a una direccion horizontal y puede ser amplia una distancia entre las lmeas extendidas cercanas a una direccion vertical.
Ademas, cuando se fija un valor de cualquiera de dx y dy, se puede ajustar un valor de lo restante para que se incremente de acuerdo con el modo de prediccion. En detalle, cuando dy se fija, se puede ajustar a una distancia entre dxs para que se incremente por un valor predeterminado. Por ejemplo, si un valor de dy se fija a 26, dxs se puede ajustar tal que una diferencia de valor absoluto entre diferentes dxs se incrementa por 1, tal como por 0, 1, 3, 6, y 8. Ademas, un angulo entre una direccion horizontal y una direccion vertical se puede dividir en unidades predeterminadas, y esta cantidad incrementada se puede ajustar en cada uno de los angulos divididos. Por ejemplo, si dy se fija, un valor de dx se puede ajustar para que tenga una cantidad incrementada de "a" en una seccion menos 15 grados, una cantidad incrementada de “b” en una seccion entre 15 grados y 30 grados, y una cantidad incrementada de “c” en una seccion mayor de 30 grados. En este caso, para tener una forma como se muestra en la figura 17, el valor de dx se puede ajustar para satisfacer una relacion de a < b < c.
Los modos de prediccion descritos con referencia a las figuras 15 a 18 se pueden definir como un modo de prediccion que tiene una directividad de tan'1 (dy/dx) al usar (dx, dy) como se muestra en la Tabla 2 a la Tabla 4.
Tabla 2
Figure imgf000012_0002
Tabla 3
Figure imgf000012_0003
Tabla 4
Figure imgf000012_0001
(continuacion)
Figure imgf000013_0001
Como se describe anteriormente con referencia a la figura 15, una ubicacion de un pixel actual P esta localizada en un i-esimo lugar en base a un borde hacia arriba de un bloque actual y j-esimo lugar en base a un bloque izquierdo del bloque actual es P(j,i), y un pixel vecino superior A y un pixel vecino izquierdo B localizado en una lmea extendida que pasa a traves del pixel actual P y que tiene un gradiente de tan- (dy/dx) se localizan en (j+i*dx/dy, 0) y (0, i+j*dy/dx), respectivamente. Por consiguiente, cuando se realiza la intra-prediccion al usar software o hardware, se necesita el calculo tal como i*dx/dy o j*dy/dx.
Cuando se necesita el calculo tipo i*dx/dy, los valores disponibles de dx/dy o C*dx/dy obtenidos al multiplicar una constante predeterminada C se pueden almacenar en una tabla y se pueden determinar las ubicaciones de los pfxeles vecinos usados para intra-predecir un pixel actual al usar el valor almacenado en la Tabla que se prepara previamente durante la intra-prediccion real. Es decir, varios valores de (dx, dy) determinados de acuerdo con los modos de prediccion como se muestra en la Tabla 1 y los valores disponibles de i*dx/dy considerando un valor de i determinado de acuerdo con un tamano de un bloque se puede almacenar previamente en una tabla y se puede usar durante la intra-prediccion. en detalle, si C*dx/dy tiene N diferentes numeros de valores, los N diferentes numeros de valores de C*dx/dy se pueden almacenar como dyval_tabla[n] (n = 0... un numero entero a N-1).
Igualmente, cuando se necesita el calculo como j*dy/dx, los valores disponibles de dy/dx o C*dy/dx obtenidos al multiplicar una constante predeterminada C se pueden almacenar previamente en una tabla y las ubicaciones de los pfxeles vecinos usados para intra-predecir un pixel actual se pueden determinar al usar los valore almacenados en la tabla que se prepara previamente durante la intra-prediccion real. Es decir, los varios valores de (dx, dy) determinados de acuerdo con los modos de prediccion como se muestra en la Tabla 1 y los valores disponibles de j*dy/dx considerando un valor de j determinado de acuerdo con un tamano de un bloque se pueden almacenar previamente en una tabla y se pueden usar para la intra-prediccion. En detalle, cuando C*dy/dx tiene N diferentes numeros de valores, los N diferentes numeros de valores de C*dy/dx se pueden almacenar como dxval_tabla[n] (n = 0... un numero entero a N-1).
Como tal, una vez que se almacenan previamente en una tabla los valores de C*dx/dy o C*dy/dx se pueden determinar las ubicaciones de pfxeles de un bloque vecino que se va a usar para predecir un pixel actual al usar valores almacenados en la tabla que corresponden a i*dx/dy y j*dy/dx sin calculo adicional.
Por ejemplo, se asume que a para formar modos de prediccion de una forma similar a aquella mostrada en la figura 17, dy es 32, dx es uno de {0, 2, 5, 9, 13, 17, 21, 26, y 32}, y una constante C es 32. En este caso, puesto que C*dv/dx es 32*32/dx y tiene uno de entre los valores {0, 512, 205, 114, 79, 60, 49, 39, y 32} de acuerdo con un valor de dx, los valores {0, 512, 205, 114, 79, 60, 49, 39, y 32} se pueden almacenar en una tabla y se pueden usar para la intra-prediccion.
La figura 19 es un diagrama de flujo que ilustra un procedimiento para codificar una imagen a traves de la intraprediccion de acuerdo con una realizacion de ejemplo.
Con referencia a la figura 19, en una operacion 1910, se divide una imagen actual en al menos un bloque que tiene un tamano predeterminado. Como se determina anteriormente, la imagen actual no se limita a un macrobloque que tiene un tamano de 16x16, y se puede dividir en bloques que tienen tamanos de 2x2, 4x4, 8 x 8, 16x 16, 32 x 32, 64 x 64, 128 x 128, o un tamano mayor.
En la operacion 1920, un pixel de un bloque vecino que se va a usar para predecir cada uno de los pfxeles dentro del bloque actual se determina de entre pfxeles del bloque vecino que se reconstruyen previamente al usar una lmea extendida que tiene un gradiente predeterminado. Como se describe anteriormente, una ubicacion de pixel actual P localizado en el i-esimo lugar en base a un borde superior del bloque actual y localizado en un j-esimo lugar en base a un borde izquierdo del bloque actual es P(j,i), y un pixel vecino hacia arriba y un pixel vecino izquierdos localizados en una lmea extendida que pasa a traves del pixel actual P y que tiene un gradiente de tan'1 (dy/dx) se localizan respectivamente en (j+i*dx/dy, 0) y (0 ,i+j*dy/dx). Para reducir la cantidad de calculo de dx/dy y dy/dx que se necesita para determinar la ubicacion del pixel vecino se prefiere que un valor de al menos uno de dx y dy sea una potencia de 2. Ademas, si los valores disponibles de dx/dy y dy/dx o los valores obtenidos al multiplicar los valores de dx/dy y. dy/dx por una constante predeterminada se almacenan previamente en una tabla, y el pixel del bloque vecino se puede determinar al buscar los valores correspondientes en la tabla sin calculo adicional.
En operacion 1930, cada uno de los pfxeles dentro del bloque actual se predice al usar el pixel determinado del bloque vecino. Es decir, un valor de pixel del bloque vecino se predice como un valor de pixel del bloque actual, y un bloque de prediccion del bloque actual se genera al realizar repetidamente las operaciones anteriores en cada uno de dos pfxeles dentro del bloque actual.
La figura 20 es un diagrama de bloques que ilustra un aparato 2000 para decodificar una imagen, de acuerdo con una realizacion de ejemplo.
Con referencia a la figura 20, el aparato 200 incluye una unidad 2010 de analisis sintactico, una unidad 2020 decodificadora de entropfa, una unidad 2030 de cuantificacion inversa, una unidad 2040 de transformacion de frecuencia inversa, una unidad 2050 de intra-prediccion, una unidad 2060 de compensacion de movimiento, una unidad 2070 de desbloqueo, una unidad 2080 de filtro de circuito. Aqrn, la unidad 2050 de intra-prediccion corresponde a un aparato para decodificar una imagen a traves de la intra-prediccion.
Una 2005 corriente de bits pasa a traves de la unidad 2010 de analisis sintactico, y la informacion de codificacion necesaria para decodificar los datos de imagen de un bloque actua se decodifican. Los datos de la imagen codificada se transfieren como datos cuantificados inversos a traves de la unidad 2020 decodificadora de entropfa y la unidad 2030 de cuantificacion inversa, y se restauran como valores residuales a traves de la unidad 2040 de transformacion y frecuencia inversa.
La unidad 2060 de compensacion de movimiento y la unidad 2050 de intra-prediccion generan un bloque de prediccion del bloque actual al usar la informacion de codificacion por analisis sintactico del bloque actual. En particular, la unidad 2050 de intra-prediccion determina un pixel de un bloque vecino que se va a usar para predecir cada uno de los pfxeles dentro del bloque actual de entre los pfxeles del bloque vecino que se reconstituyen previamente al usar una lmea extendida que tiene un gradiente predeterminado, determinado de acuerdo con un modo de pfxeles vecinos incluido en la corriente de bit. Como se describe anteriormente, a fin de reducir la cantidad de calculo de dx/dy y de dy/dx necesaria para determinar la ubicacion del pixel vecino, se prefiere que un valor de al menos uno de dx y dy sea una potencia de 2. Ademas, la unidad 2050 de intra-prediccion pueda almacenar previamente valores disponibles de dx/dy y de dy/dx o valores obtenidos al multiplicar los valores de dx/dy y de dy/dx por una constante predeterminada en una tabla, determinar un pixel de un bloque vecino al buscar los valores correspondientes en la tabla, y realizar la intra-prediccion al usar el pixel determinado del bloque vecino.
Un bloque de prediccion generado en la unidad 2060 de compensacion de movimiento o la unidad 2050 de intraprediccion se adiciona a los valores residuales para restaurar el cuadro 2095 actual. El cuadro actual restaurado se puede usar como el cuadro 2085 de referencia de un siguiente bloque a: traves de la unidad 2070 de desbloqueo y la unidad 280 de filtro de circuito.
La figura 21 es un diagrama de flujo que ilustra un procedimiento para decodificar una imagen a traves de la intraprediccion, de acuerdo con una realizacion de ejemplo.
Con referencia a la figura 21, en la operacion 2110 se divide una imagen actual en al menos un bloque que tiene un tamano predeterminado.
En la operacion 2120, la informacion del modo de intra-prediccion aplicada al bloque actual que se va a decodificar se extrae de una corriente de bits. La informacion del modo de intra-prediccion puede ser un valor de diferencia de modo entre un modo real de intra-prediccion y un modo previsto de intra-prediccion, previsto de bloques vecinos de un bloque actual o valores de modo de modos de intra-prediccion que tienen diferentes directividades definidas al usar (dx, dy) parametros como se describe anteriormente. Si el valor de diferencia de modo se transmite 5 como la informacion de modo de prediccion, la unidad 2050 de intra-prediccion puede predecir y determinar un modo previsto de intra-prediccion del bloque actual de los modos de intra-prediccion de bloques vecinos que se decodifican previamente, y determinar un modo de intra-prediccion del bloque actual al adicionar un valor de diferencia de modo extrafdo de la corriente de bits a un valor de modo del modo previsto de intra-prediccion de prediccion.
En la operacion 2130, la unidad 2050 de intra-prediccion determina un pixel de un bloque vecino que se va a usar para predecir cada uno de los pfxeles dentro del bloque actual de entre pfxeles del bloque vecino que se reconstruyen previamente al usar una lmea extendida que tiene un gradiente predeterminado de acuerdo con el modo de prediccion extrafdo. Como se describe anteriormente, una ubicacion de un pixel actual P localizado en el iesimo lugar en base a un borde superior del bloque actual y un j-esimo lugar en base a un borde izquierdo del bloque actual es P(j, i), y un pixel vecino superior y un pixel vecino izquierdo localizados en una lmea extendida que pasa a traves del pixel actual P y que tiene un gradiente de tanl (dy/dx) se localizan respectivamente en (j+i*dx/dy,0) y (0,i+j*dy/dx). Para reducir la cantidad de calculo de dx/dy y dy/dx necesaria para determinar la ubicacion de un pixel vecino, se prefiere que un valor de al menos uno de dx y dy sea una potencia de 2. Tambien, los valores disponibles de dx/dy y dy/dx o los valores obtenidos al multiplicar los valores de dx/dy y de dy/dx por una constante predeterminada se pueden almacenar previamente en una tabla y se puede determinar un pixel de un bloque vecino al buscar los correspondientes valores en la tabla. La unidad 2050 de intra-prediccion predice un valor de pixel del bloque vecino determinado como un valor de pixel de bloque actual, y un bloque de prediccion del bloque actual se genera al realizar repetidamente las operaciones anteriores en cada uno de los pfxeles dentro del bloque actual.
Las realizaciones de ejemplo se pueden describir como programas de ordenador y se pueden implementar en ordenadores digitales de uso general que ejecutan los programas usando un medio de grabacion legible por ordenador. Ejemplos del medio de grabacion legible por ordenador incluyen medios de almacenamiento magnetico (por ejemplo, ROM, discos flexibles, discos duros, etc.) y medios de registro optico (por ejemplo, CD-ROM, o DVD). Los aparatos, codificadores y decodificadores de las realizaciones de ejemplo pueden incluir un bus acoplado a cada unidad del aparato, al menos un procesador (por ejemplo, unidad de procesamiento central, microprocesador, etc) que se conecta al bus para controlar las operaciones de los aparatos para implementar las funciones antes descritas y ejecutar ordenes, y una memoria conectada al bus para almacenar las ordenes, mensajes recibidos y mensajes generados.
La invencion se define por las reivindicaciones adjuntas.

Claims (3)

REIVINDICACIONES
1. Un aparato de decodificacion de una imagen, comprendiendo el aparato:
un decodificador (2020) de entropfa que extrae un modo de intra-prediccion de un bloque actual a partir de una secuencia de bits, indicando el modo de intra-prediccion una direccion particular entre una pluralidad de direcciones, en el que la direccion particular se indica usando uno de un numero dx en una direccion horizontal y un numero fijo en una direccion vertical, o un numero dy en la direccion vertical y un numero fijo en la direccion horizontal, en el que dx y dy son numeros enteros;
un realizador (2050) de intra-prediccion que realiza intra-prediccion en el bloque actual; y
un restaurador que restaura el bloque actual anadiendo el bloque actual intra-predicho y un residual obtenido de la secuencia de bits,
en el que el realizador (2050) de intra-prediccion determina la ubicacion de pfxeles vecinos del bloque vecino previamente reconstruido antes del bloque actual usando una operacion de desplazamiento en funcion de una posicion de un pixel actual y uno del numero dx y el numero dy indicando la direccion particular, estando situados los pfxeles vecinos en un lado izquierdo del bloque actual o un lado superior del bloque actual, caracterizado porque
la ubicacion de los pfxeles vecinos situados en el lado superior del bloque actual se determina en base a i * dx >> 5, donde i es una posicion del pixel actual en la direccion vertical, y dx es el numero dx en la direccion horizontal y >> es la operacion de desplazamiento bit a bit, y
la ubicacion de los pfxeles vecinos situados en el lado izquierdo del bloque actual se determina en base a j * dy >> 5, donde j es una posicion del pixel actual en la direccion horizontal, y dy es el numero dy en la direccion vertical,
en el que i) el numero fijo en la direccion horizontal tiene un valor fijo de 2A5 y el numero dy se determina entre {32, 26, 21, 17, 13, 9, 5, 2, 0, -2, -5, -9, -13, -17, -21, -26, -32}, o ii) el numero fijo en la direccion vertical tiene un valor fijo de 2A5 y se determina el numero dx entre {32, 26, 21, 17, 13, 9, 5, 2, 0, -2, -5, -9, -13, -17, -21, -26, -32} de acuerdo con el modo de intra-prediccion del bloque actual.
2. Un procedimiento para codificar una imagen, comprendiendo el procedimiento:
realizar intra-prediccion en un bloque actual de acuerdo con un modo de intra-prediccion;
obtener datos residuales que indican diferencia entre un valor de intra-prediccion y un valor de pixel del bloque actual;
generar una secuencia de bits que incluye el modo de intra-prediccion y los datos residuales,
en el que el modo de intra-prediccion indica una direccion particular entre una pluralidad de direcciones, la direccion particular se indica usando uno de un numero dx en una direccion horizontal y un numero fijo en una direccion vertical, o un numero dy en la direccion vertical y un numero fijo en la direccion horizontal, en el que dx y dy son numeros enteros;
en el que realizar la intra-prediccion comprende ademas: determinar la ubicacion de pfxeles vecinos del bloque vecino previamente reconstruido antes del bloque actual usando una operacion de desplazamiento en funcion de una posicion de un pixel actual y uno del numero dx y el numero dy indicando la direccion particular, estando situados los pfxeles vecinos en un lado izquierdo del bloque actual o un lado superior del bloque actual, caracterizado porque
la ubicacion de los pfxeles vecinos situados en el lado superior del bloque actual se determina en base a i * dx >> 5, donde i es una posicion del pixel actual en la direccion vertical, y dx es el numero dx en la direccion horizontal y >> es la operacion de desplazamiento bit a bit, y
la ubicacion de los pfxeles vecinos situados en el lado izquierdo del bloque actual se determina en base a j * dy >> 5, donde j es una posicion del pixel actual en la direccion horizontal, y dy es el numero dy en la direccion vertical,
en el que i) el numero fijo en la direccion horizontal tiene un valor fijo de 2A5 y el numero dy se determina entre {32, 26, 21, 17, 13, 9, 5, 2, 0, -2, -5, -9, -13, -17, -21, -26, -32}, o ii) el numero fijo en la direccion vertical tiene un valor fijo de 2A5 y se determina el numero dx entre {32, 26, 21, 17, 13, 9, 5, 2, 0, -2, -5, -9, -13, -17, -21, -26, -32} de acuerdo con el modo de intra-prediccion del bloque actual.
3. Un medio de almacenamiento legible por ordenador no transitorio que almacena una secuencia de bits, comprendiendo la secuencia de bits:
una informacion sobre modo de intra-prediccion de un boque actual, y
datos residuales que indican diferencia entre un valor de intra-prediccion y un valor de pixel del bloque actual, en el que el modo de intra-prediccion indica una direccion particular entre una pluralidad de direcciones, la direccion particular se indica usando uno de un numero dx en una direccion horizontal y un numero fijo en una direccion vertical, o un numero dy en la direccion vertical y un numero fijo en la direccion horizontal, en el que dx y dy son numeros enteros;
en el que la ubicacion de pfxeles vecinos del bloque vecino previamente reconstruido antes del bloque actual se determina usando una operacion de desplazamiento en funcion de una posicion de un pixel actual y uno del numero dx y el numero dy indicando la direccion particular, estando situados los pfxeles vecinos en un lado izquierdo del bloque actual o un lado superior del bloque actual,
caracterizado porque
la ubicacion de los pfxeles vecinos situados en el lado superior del bloque actual se determina en base a i * dx >> 5, donde i es una posicion del pixel actual en la direccion vertical, y dx es el numero dx en la direccion horizontal y >> es la operacion de desplazamiento bit a bit, y
la ubicacion de los pfxeles vecinos situados en el lado izquierdo del bloque actual se determina en base a j * dy >> 5, donde j es una posicion del pixel actual en la direccion horizontal, y dy es el numero dy en la direccion vertical,
en el que i) el numero fijo en la direccion horizontal tiene un valor fijo de 2A5 y el numero dy se determina entre {32, 26, 21, 17, 13, 9, 5, 2, 0, -2, -5, -9, -13, -17, -21, -26, -32}, o ii) el numero fijo en la direccion vertical tiene un valor fijo de 2A5 y se determina el numero dx entre {32, 26, 21, 17, 13, 9, 5, 2, 0, -2, -5, -9, -13, -17, -21, -26, -32} de acuerdo con el modo de intra-prediccion del bloque actual.
ES17192209T 2010-07-16 2011-07-15 Procedimiento de codificación y aparato para decodificar una imagen mediante intra-predicción Active ES2708833T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US36498610P 2010-07-16 2010-07-16
KR1020100097424A KR101530284B1 (ko) 2010-07-16 2010-10-06 영상의 인트라 예측 부호화, 복호화 방법 및 장치

Publications (1)

Publication Number Publication Date
ES2708833T3 true ES2708833T3 (es) 2019-04-11

Family

ID=45613437

Family Applications (4)

Application Number Title Priority Date Filing Date
ES17192209T Active ES2708833T3 (es) 2010-07-16 2011-07-15 Procedimiento de codificación y aparato para decodificar una imagen mediante intra-predicción
ES11807075.4T Active ES2646173T3 (es) 2010-07-16 2011-07-15 Procedimiento de decodificación de una imagen mediante intra-predicción
ES17192220T Active ES2708834T3 (es) 2010-07-16 2011-07-15 Procedimiento de decodificación y aparato para codificar una imagen mediante intra-predicción
ES18207477T Active ES2781786T3 (es) 2010-07-16 2011-07-15 Codificación y decodificación de imágenes mediante intra-predicción

Family Applications After (3)

Application Number Title Priority Date Filing Date
ES11807075.4T Active ES2646173T3 (es) 2010-07-16 2011-07-15 Procedimiento de decodificación de una imagen mediante intra-predicción
ES17192220T Active ES2708834T3 (es) 2010-07-16 2011-07-15 Procedimiento de decodificación y aparato para codificar una imagen mediante intra-predicción
ES18207477T Active ES2781786T3 (es) 2010-07-16 2011-07-15 Codificación y decodificación de imágenes mediante intra-predicción

Country Status (30)

Country Link
US (6) US9083987B2 (es)
EP (4) EP3462737B1 (es)
JP (5) JP6067556B2 (es)
KR (7) KR101530284B1 (es)
CN (8) CN109309832A (es)
AU (3) AU2011277214B2 (es)
BR (5) BR112013001093B1 (es)
CA (6) CA2891777C (es)
CY (3) CY1119640T1 (es)
DK (4) DK3462737T3 (es)
ES (4) ES2708833T3 (es)
HR (3) HRP20171673T1 (es)
HU (4) HUE043982T2 (es)
IL (5) IL224195A (es)
LT (3) LT3280145T (es)
MX (1) MX2013000653A (es)
MY (5) MY178168A (es)
NO (1) NO2594075T3 (es)
NZ (5) NZ705192A (es)
PH (4) PH12015500304A1 (es)
PL (4) PL3462737T3 (es)
PT (3) PT3282705T (es)
RS (3) RS56474B1 (es)
RU (5) RU2597484C2 (es)
SG (5) SG187055A1 (es)
SI (3) SI2594075T1 (es)
TR (2) TR201900358T4 (es)
TW (4) TWI540885B (es)
WO (1) WO2012008790A2 (es)
ZA (1) ZA201300581B (es)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8867854B2 (en) * 2008-10-01 2014-10-21 Electronics And Telecommunications Research Institute Image encoder and decoder using undirectional prediction
KR101452860B1 (ko) 2009-08-17 2014-10-23 삼성전자주식회사 영상의 부호화 방법 및 장치, 영상 복호화 방법 및 장치
US9532059B2 (en) 2010-10-05 2016-12-27 Google Technology Holdings LLC Method and apparatus for spatial scalability for video coding
KR101839466B1 (ko) 2010-12-21 2018-03-16 가부시키가이샤 엔.티.티.도코모 평면 표현을 이용한 향상된 인트라-예측 부호화
KR20120103517A (ko) * 2011-03-10 2012-09-19 한국전자통신연구원 인트라 예측 방법 및 그 장치
CN103220506B (zh) 2012-01-19 2015-11-25 华为技术有限公司 一种编解码方法和设备
US9094681B1 (en) 2012-02-28 2015-07-28 Google Inc. Adaptive segmentation
US9185429B1 (en) 2012-04-30 2015-11-10 Google Inc. Video encoding and decoding using un-equal error protection
US9781447B1 (en) 2012-06-21 2017-10-03 Google Inc. Correlation based inter-plane prediction encoding and decoding
US9167268B1 (en) 2012-08-09 2015-10-20 Google Inc. Second-order orthogonal spatial intra prediction
US9332276B1 (en) 2012-08-09 2016-05-03 Google Inc. Variable-sized super block based direct prediction mode
US9344742B2 (en) 2012-08-10 2016-05-17 Google Inc. Transform-domain intra prediction
US9380298B1 (en) 2012-08-10 2016-06-28 Google Inc. Object-based intra-prediction
US9826229B2 (en) 2012-09-29 2017-11-21 Google Technology Holdings LLC Scan pattern determination from base layer pixel information for scalable extension
US9681128B1 (en) 2013-01-31 2017-06-13 Google Inc. Adaptive pre-transform scanning patterns for video and image compression
US9247251B1 (en) * 2013-07-26 2016-01-26 Google Inc. Right-edge extension for quad-tree intra-prediction
JP6614472B2 (ja) * 2013-09-30 2019-12-04 サン パテント トラスト 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置
US10057587B2 (en) * 2015-01-31 2018-08-21 Qualcomm Incorporated Coding escape pixels for palette mode coding
RU2021137343A (ru) * 2016-01-22 2022-01-26 Отрэйсис, Инк. Системы и способы улучшения диагностики заболеваний
JP2019508944A (ja) 2016-02-16 2019-03-28 サムスン エレクトロニクス カンパニー リミテッド イントラ予測誤差低減のためのイントラ予測方法及びその装置
EP4030754A1 (en) 2016-05-02 2022-07-20 Industry-University Cooperation Foundation Hanyang University Image encoding/decoding method and computer-readable medium
GB2550579A (en) * 2016-05-23 2017-11-29 Sony Corp Image data encoding and decoding
US10405054B2 (en) * 2016-08-17 2019-09-03 Nuovo Solutions Llc System and method of remotely determining QoE
CN107786874A (zh) * 2016-08-24 2018-03-09 浙江大学 双向的帧内方向性预测方法和装置
US10958903B2 (en) * 2016-10-04 2021-03-23 Electronics And Telecommunications Research Institute Method and apparatus for encoding/decoding image and recording medium storing bit stream
JP6953523B2 (ja) 2016-10-14 2021-10-27 インダストリー アカデミー コーオペレイション ファウンデーション オブ セジョン ユニバーシティ 画像の符号化/復号化方法及び装置
CN110741642B (zh) * 2017-07-05 2021-12-24 华为技术有限公司 使用拟合平面和参考样本进行定向帧内预测的装置和方法
US11218704B2 (en) * 2017-11-28 2022-01-04 Electronics And Telecommunications Research Institute Image encoding/decoding method and device, and recording medium stored with bitstream
CN107995494B (zh) * 2017-12-12 2019-11-22 珠海全志科技股份有限公司 视频图像数据的压缩方法与解压方法、计算机装置、计算机可读存储介质
CN109922329B (zh) * 2017-12-13 2021-02-26 北京传送科技有限公司 虚拟现实影像数据的压缩方法、解压缩方法及装置
GB2577056B (en) * 2018-09-11 2022-12-14 British Broadcasting Corp Bitstream decoder
CN110072112B (zh) * 2019-03-12 2023-05-12 浙江大华技术股份有限公司 帧内预测方法、编码器及存储装置
WO2021168817A1 (zh) * 2020-02-28 2021-09-02 深圳市大疆创新科技有限公司 视频处理的方法及装置
KR102297479B1 (ko) * 2020-04-10 2021-09-03 삼성전자주식회사 움직임 벡터의 부호화 장치 및 방법, 및 움직임 벡터의 복호화 장치 및 방법
CN112087634B (zh) * 2020-08-11 2022-03-08 北京博雅慧视智能技术研究院有限公司 一种最佳角度判定方法和系统

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101448162B (zh) 2001-12-17 2013-01-02 微软公司 处理视频图像的方法
RU2314656C2 (ru) * 2002-06-11 2008-01-10 Нокиа Корпорейшн Внутреннее кодирование, основанное на пространственном прогнозировании
KR100886191B1 (ko) * 2004-12-06 2009-02-27 엘지전자 주식회사 영상 블록을 디코딩 하는 방법
US20070171978A1 (en) 2004-12-28 2007-07-26 Keiichi Chono Image encoding apparatus, image encoding method and program thereof
JP2006246431A (ja) 2005-02-07 2006-09-14 Matsushita Electric Ind Co Ltd 画像符号化装置および画像符号化方法
US8948246B2 (en) * 2005-04-11 2015-02-03 Broadcom Corporation Method and system for spatial prediction in a video encoder
JP2007116351A (ja) 2005-10-19 2007-05-10 Ntt Docomo Inc 画像予測符号化装置、画像予測復号装置、画像予測符号化方法、画像予測復号方法、画像予測符号化プログラム、及び画像予測復号プログラム
JP4114885B2 (ja) 2005-10-31 2008-07-09 松下電器産業株式会社 画像符号化装置、方法、及びプログラム
KR100750145B1 (ko) * 2005-12-12 2007-08-21 삼성전자주식회사 영상의 인트라 예측 부호화, 복호화 방법 및 장치
KR101246294B1 (ko) 2006-03-03 2013-03-21 삼성전자주식회사 영상의 인트라 예측 부호화, 복호화 방법 및 장치
KR100745765B1 (ko) * 2006-04-13 2007-08-02 삼성전자주식회사 화상 데이터의 공간상 예측 장치 및 방법과 그를 이용한부호화 장치 및 방법, 화상 데이터의 공간상 예측 보상장치 및 방법과 그를 이용한 복호화 장치 및 방법
KR101011303B1 (ko) * 2006-07-28 2011-01-28 가부시끼가이샤 도시바 화상 부호화 및 복호화 방법 및 장치
CN100413344C (zh) * 2006-10-20 2008-08-20 清华大学 高并行度的帧内预测器的实现方法
FR2908007A1 (fr) * 2006-10-31 2008-05-02 Thomson Licensing Sas Procede de codage d'une sequence d'images
CN101569201B (zh) * 2006-11-07 2011-10-05 三星电子株式会社 基于帧内预测进行编码和解码的方法和装置
WO2008084817A1 (ja) * 2007-01-09 2008-07-17 Kabushiki Kaisha Toshiba 画像符号化と復号化の方法及び装置
JP5026092B2 (ja) 2007-01-12 2012-09-12 三菱電機株式会社 動画像復号装置および動画像復号方法
KR101370286B1 (ko) 2007-04-06 2014-03-06 삼성전자주식회사 레지듀얼 블록의 변형을 이용한 영상 부호화, 복호화 방법및 장치
KR101362757B1 (ko) 2007-06-11 2014-02-14 삼성전자주식회사 인터 컬러 보상을 이용한 영상의 부호화 방법 및 장치,복호화 방법 및 장치
KR101378338B1 (ko) * 2007-06-14 2014-03-28 삼성전자주식회사 영상 복구를 이용한 인트라 예측 부호화, 복호화 방법 및장치
RU2479940C2 (ru) 2007-10-15 2013-04-20 Ниппон Телеграф Энд Телефон Корпорейшн Устройство кодирования и декодирования изображения, способы кодирования и декодирования изображения, их программы и носитель записи, записанный программами
KR101375664B1 (ko) * 2007-10-29 2014-03-20 삼성전자주식회사 영상의 디퓨전 특성을 이용한 영상 부호화/복호화 방법 및장치
CN101163249B (zh) * 2007-11-20 2010-07-21 北京工业大学 直流模式预测方法
EP2081386A1 (en) * 2008-01-18 2009-07-22 Panasonic Corporation High precision edge prediction for intracoding
TWI375472B (en) * 2008-02-04 2012-10-21 Ind Tech Res Inst Intra prediction method for luma block of video
JP2011515060A (ja) * 2008-03-09 2011-05-12 エルジー エレクトロニクス インコーポレイティド ビデオ信号のエンコーディングまたはデコーディング方法及び装置
JP2009284275A (ja) * 2008-05-23 2009-12-03 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム、画像復号プログラムおよびそれらのプログラムを記録したコンピュータ読み取り可能な記録媒体
KR101517768B1 (ko) * 2008-07-02 2015-05-06 삼성전자주식회사 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치
KR101559763B1 (ko) * 2008-07-02 2015-10-13 삼성전자주식회사 비트 위치에 기초한 영상 분리를 이용한 영상 부호화, 복호화 방법 및 장치
TWI359617B (en) 2008-07-03 2012-03-01 Univ Nat Taiwan Low-complexity and high-quality error concealment
US8311112B2 (en) * 2008-12-31 2012-11-13 Entropic Communications, Inc. System and method for video compression using predictive coding
CN101600116A (zh) * 2009-03-11 2009-12-09 北京中星微电子有限公司 一种帧内预测方法及装置
KR101452860B1 (ko) 2009-08-17 2014-10-23 삼성전자주식회사 영상의 부호화 방법 및 장치, 영상 복호화 방법 및 장치
KR101510108B1 (ko) 2009-08-17 2015-04-10 삼성전자주식회사 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치
CN104768005B (zh) * 2009-12-01 2018-07-31 数码士有限公司 用于编码/解码高分辨率图像的方法和设备
JP5222878B2 (ja) * 2010-03-24 2013-06-26 日本放送協会 イントラ予測装置、符号化器、復号器及びプログラム
KR101503269B1 (ko) 2010-04-05 2015-03-17 삼성전자주식회사 영상 부호화 단위에 대한 인트라 예측 모드 결정 방법 및 장치, 및 영상 복호화 단위에 대한 인트라 예측 모드 결정 방법 및 장치
US8644375B2 (en) * 2010-04-09 2014-02-04 Sharp Laboratories Of America, Inc. Methods and systems for intra prediction
ES2729031T3 (es) * 2010-07-14 2019-10-29 Ntt Docomo Inc Intra-predicción de baja complejidad para codificación de vídeo

Also Published As

Publication number Publication date
CN105049857A (zh) 2015-11-11
SI3280145T1 (sl) 2019-03-29
CA2891843C (en) 2017-08-29
NZ705190A (en) 2016-07-29
JP2016029827A (ja) 2016-03-03
KR20170096616A (ko) 2017-08-24
PH12015500305B1 (en) 2015-09-02
MY178314A (en) 2020-10-07
IL224195A (en) 2016-08-31
TW201208387A (en) 2012-02-16
KR20150091456A (ko) 2015-08-11
PT2594075T (pt) 2017-12-15
RU2015120335A (ru) 2015-09-20
EP3282705B1 (en) 2019-01-02
CA2891843A1 (en) 2012-01-19
JP6134761B2 (ja) 2017-05-24
RU2555236C2 (ru) 2015-07-10
US9661344B2 (en) 2017-05-23
KR20150091455A (ko) 2015-08-11
TR201900358T4 (tr) 2019-02-21
IL244569B (en) 2019-08-29
IL244568B (en) 2019-08-29
DK3282705T3 (en) 2019-01-28
EP3280145A1 (en) 2018-02-07
AU2011277214A1 (en) 2013-02-07
RS56474B1 (sr) 2018-01-31
IL244570B (en) 2018-08-30
KR101874102B1 (ko) 2018-07-03
BR122021006833B1 (pt) 2022-12-13
JP2013534375A (ja) 2013-09-02
AU2015202669A1 (en) 2015-06-11
KR101712105B1 (ko) 2017-03-03
PH12015500302B1 (en) 2015-09-02
MY178168A (en) 2020-10-06
KR20150090011A (ko) 2015-08-05
AU2015202669B2 (en) 2015-12-10
SG187055A1 (en) 2013-02-28
MY177339A (en) 2020-09-12
HRP20171673T1 (hr) 2017-12-15
JP2016040923A (ja) 2016-03-24
NZ705187A (en) 2016-07-29
PT3282705T (pt) 2019-02-11
SI3282705T1 (sl) 2019-03-29
KR20120008423A (ko) 2012-01-30
CN103119945B (zh) 2018-12-14
HUE051090T2 (hu) 2021-03-01
EP2594075B1 (en) 2017-11-01
HUE037744T2 (hu) 2018-09-28
BR112013001093A2 (pt) 2016-05-24
LT3282705T (lt) 2019-01-25
PH12015500303B1 (en) 2015-09-02
CN107959856A (zh) 2018-04-24
PH12015500305A1 (en) 2015-09-02
CA3001241A1 (en) 2012-01-19
CA2891774A1 (en) 2012-01-19
JP6076436B2 (ja) 2017-02-08
PL3462737T3 (pl) 2020-07-13
EP3282705A1 (en) 2018-02-14
CN104980748A (zh) 2015-10-14
DK2594075T3 (da) 2017-11-20
RU2597484C2 (ru) 2016-09-10
NO2594075T3 (es) 2018-03-31
RU2621008C2 (ru) 2017-05-30
IL244570A0 (en) 2016-04-21
AU2015202671A1 (en) 2015-06-11
CY1119640T1 (el) 2018-04-04
PH12015500304B1 (en) 2015-09-02
CA2892121A1 (en) 2012-01-19
RU2579989C2 (ru) 2016-04-10
CA2805230A1 (en) 2012-01-19
PT3280145T (pt) 2019-02-11
AU2011277214B2 (en) 2015-02-26
TWI619382B (zh) 2018-03-21
CN104967852B (zh) 2019-01-18
US20150163507A1 (en) 2015-06-11
CN107959856B (zh) 2021-10-26
NZ606080A (en) 2015-05-29
BR112013001093B1 (pt) 2022-04-05
HUE043982T2 (hu) 2019-09-30
WO2012008790A3 (en) 2012-04-26
PH12015500303A1 (en) 2015-09-02
US10212452B2 (en) 2019-02-19
AU2015202671B2 (en) 2016-01-07
PL2594075T3 (pl) 2018-02-28
KR101712106B1 (ko) 2017-03-03
MX2013000653A (es) 2013-04-03
EP3280145B1 (en) 2019-01-02
HRP20190021T1 (hr) 2019-02-22
DK3462737T3 (da) 2020-03-30
CA2891777C (en) 2017-08-15
JP2016029826A (ja) 2016-03-03
BR122020013768B1 (pt) 2022-09-20
KR20140138563A (ko) 2014-12-04
SG10201705244PA (en) 2017-07-28
US9083987B2 (en) 2015-07-14
US20150156500A1 (en) 2015-06-04
TR201900362T4 (tr) 2019-02-21
US9654797B2 (en) 2017-05-16
CN105049857B (zh) 2018-10-19
CA2891777A1 (en) 2012-01-19
SG195596A1 (en) 2013-12-30
CN104967852A (zh) 2015-10-07
KR101712107B1 (ko) 2017-03-03
RU2015120337A (ru) 2015-09-20
RU2015120322A (ru) 2015-11-20
RS58200B1 (sr) 2019-03-29
CY1121263T1 (el) 2020-05-29
EP2594075A2 (en) 2013-05-22
SG10201804324YA (en) 2018-07-30
MY160172A (en) 2017-02-28
BR122021006834B1 (pt) 2022-09-20
HUE043675T2 (hu) 2019-09-30
RS58199B1 (sr) 2019-03-29
SI2594075T1 (sl) 2017-12-29
JP6076437B2 (ja) 2017-02-08
TWI540885B (zh) 2016-07-01
US20150172712A1 (en) 2015-06-18
US9654795B2 (en) 2017-05-16
RU2607233C2 (ru) 2017-01-10
EP3462737B1 (en) 2020-03-18
CN104994386B (zh) 2019-02-15
KR101769428B1 (ko) 2017-08-18
TWI607651B (zh) 2017-12-01
KR101530284B1 (ko) 2015-06-19
TW201631977A (zh) 2016-09-01
PL3280145T3 (pl) 2019-04-30
PH12015500304A1 (en) 2015-09-02
TW201817241A (zh) 2018-05-01
CN105049858B (zh) 2019-02-22
DK3280145T3 (en) 2019-01-28
US9654796B2 (en) 2017-05-16
CY1121256T1 (el) 2020-05-29
NZ705192A (en) 2016-07-29
US20150172711A1 (en) 2015-06-18
CN105049858A (zh) 2015-11-11
BR122020013770B1 (pt) 2022-12-20
LT3280145T (lt) 2019-01-25
IL244569A0 (en) 2016-04-21
NZ705185A (en) 2016-07-29
PL3282705T3 (pl) 2019-03-29
CN104994386A (zh) 2015-10-21
PH12015500302A1 (en) 2015-09-02
MY177337A (en) 2020-09-12
KR20150091284A (ko) 2015-08-10
US20120014444A1 (en) 2012-01-19
CN104980748B (zh) 2018-05-11
CA2805230C (en) 2016-05-10
IL244567A (en) 2017-12-31
US20170238012A1 (en) 2017-08-17
CA3001241C (en) 2020-07-07
IL244568A0 (en) 2016-04-21
JP2016007080A (ja) 2016-01-14
CA2892121C (en) 2016-10-18
ZA201300581B (en) 2015-11-25
CA2891774C (en) 2018-05-29
CN103119945A (zh) 2013-05-22
EP2594075A4 (en) 2015-08-26
IL244567A0 (en) 2016-04-21
HRP20190022T1 (hr) 2019-02-22
TWI664856B (zh) 2019-07-01
EP3462737A1 (en) 2019-04-03
ES2646173T3 (es) 2017-12-12
CN109309832A (zh) 2019-02-05
SG10201800097YA (en) 2018-02-27
LT2594075T (lt) 2017-11-27
RU2015120341A (ru) 2015-11-10
KR101712104B1 (ko) 2017-03-03
WO2012008790A2 (en) 2012-01-19
JP6076435B2 (ja) 2017-02-08
RU2013106810A (ru) 2014-10-20
JP6067556B2 (ja) 2017-01-25
ES2781786T3 (es) 2020-09-07
TW201803356A (zh) 2018-01-16
ES2708834T3 (es) 2019-04-11

Similar Documents

Publication Publication Date Title
ES2708833T3 (es) Procedimiento de codificación y aparato para decodificar una imagen mediante intra-predicción
KR102635983B1 (ko) 스킵 모드를 이용한 영상 복호화 방법 및 이러한 방법을 사용하는 장치
ES2770312T3 (es) Codificación intra-predicción mejorada usando representaciones planas
KR101292093B1 (ko) 화면내 예측 부호화를 위한 영상 부호화/복호화 장치 및 방법
US20150043650A1 (en) Image encoding/decoding apparatus and method to which filter selection by precise units is applied
BR112020026248A2 (pt) Dispositivo e método para intrapredição de um bloco de predição de uma imagem de vídeo, e meio de armazenamento