ES3059245T3 - Method for decoding an intra prediction mode using candidate intra prediction modes - Google Patents

Method for decoding an intra prediction mode using candidate intra prediction modes

Info

Publication number
ES3059245T3
ES3059245T3 ES12838418T ES12838418T ES3059245T3 ES 3059245 T3 ES3059245 T3 ES 3059245T3 ES 12838418 T ES12838418 T ES 12838418T ES 12838418 T ES12838418 T ES 12838418T ES 3059245 T3 ES3059245 T3 ES 3059245T3
Authority
ES
Spain
Prior art keywords
intra
prediction mode
candidate
mode
prediction
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
ES12838418T
Other languages
English (en)
Inventor
Sun Young Lee
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.)
Dolby Laboratories Licensing Corp
Original Assignee
Dolby Laboratories Licensing Corp
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 Dolby Laboratories Licensing Corp filed Critical Dolby Laboratories Licensing Corp
Application granted granted Critical
Publication of ES3059245T3 publication Critical patent/ES3059245T3/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/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/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

Se describe un método y un aparato para codificar/decodificar el modo de predicción intra utilizando varios modos de predicción intra candidatos. El método de decodificación del modo de predicción intra comprende la obtención de tres modos de predicción intra candidatos para un bloque actual y la obtención del modo de predicción intra de dicho bloque. Por lo tanto, al predecir el modo de predicción intra del bloque actual a partir de varios modos de predicción intra candidatos, se puede mejorar la eficiencia de la codificación de vídeo. (Traducción automática con Google Translate, sin valor legal)

Description

[0001] DESCRIPCIÓN
[0002] Método para decodificar un modo de predicción intra usando modos de predicción intra candidatos
[0003] Campo técnico
[0004] La presente divulgación se refiere a un método de decodificación de un modo de predicción intra usando una pluralidad de modos de predicción intra candidatos.
[0005] Técnica anterior
[0006] Las necesidades de vídeo de alta resolución y alta calidad, tal como vídeo de HD (alta definición, por sus siglas en inglés “High Definition”) y UHD (ultra alta definición, por sus siglas en inglés “Ultra High Definition”), están aumentando en diversas áreas de aplicación. Mayor resolución, vídeo de mayor calidad, provoca inevitablemente un aumento de la cantidad de datos en comparación con los datos de vídeo existentes; por lo tanto, cuando los datos de vídeo se transmiten usando un medio, tal como el sistema de banda ancha inalámbrico o por cable existente, o los datos de vídeo se almacenan usando los medios de almacenamiento existentes, los costes de transmisión y almacenamiento también aumentan. Para abordar los problemas mencionados anteriormente causados por un uso generalizado de datos de vídeo de alta resolución y alta calidad, se pueden emplear tecnologías de compresión de vídeo de alta eficiencia.
[0007] Se pueden emplear diversas tecnologías para la compresión de vídeo: tecnología de predicción inter para predecir valores de píxel de una imagen actual a partir de la imagen codificada antes o después de la imagen actual, tecnología de predicción intra para predecir valores de píxel de una imagen actual usando información de píxel dentro de la imagen actual, un método de codificación por entropía para asignar símbolos de corta longitud a aquellos valores que aparecen con más frecuencia mientras se asignan símbolos de larga longitud a aquellos valores que aparecen con menos frecuencia, y así sucesivamente. Mediante el uso de las tecnologías de compresión de vídeo como se ha introducido anteriormente, los datos de vídeo pueden comprimirse más eficazmente para la transmisión o el almacenamiento de los datos de vídeo. Sin embargo, existe la necesidad de tecnologías de compresión más mejoradas.
[0008] W-J CHIEN ET AL: “Parsing friendly intra mode coding”, 6. REUNIÓN JCT-VC; 97. Reunión MPEG; 14-7-2011 -22-7-2011; TORINA; (EQUIPO DE COLABORACIÓN CONJUNTA EN LA CODIFICACIÓN DE VÍDEO DE ISO/IEC JTC1/SC29/WG11 E ITU-T SG.16); URL: HTTP://WFTP3.ITU.INT/AV-ARCH/JCTVC-SITE/, nº JCTVC-F459, 2 de julio de 2011 (2011-07-02), XP030009482, presenta un método de codificación para el modo de predicción intra en el que el algoritmo propuesto usa tres modos candidatos más probables para la predicción intra de luma.
[0009] Sumario de la invención
[0010] Problema técnico
[0011] Las realizaciones ejemplares de la presente invención proporcionan un método de decodificación de un modo de predicción intra para un bloque actual.
[0012] Características adicionales de la invención se expondrán en la descripción que viene a continuación, y en parte serán evidentes a partir de la descripción, o pueden aprenderse mediante la práctica de la invención.
[0013] Solución al problema
[0014] Las realizaciones ejemplares de la presente invención proporcionan un método de decodificación de un modo de predicción intra de un bloque actual de acuerdo con las reivindicaciones 1-6. La base para la invención reivindicada puede encontrarse particularmente en los dibujos 3 y 6 adjuntos junto con su descripción asociada. Los otros dibujos y pasos de la descripción son útiles para entender los antecedentes de la invención.
[0015] Debe entenderse que tanto las descripciones generales anteriores como la siguiente descripción detallada son ejemplares y explicativas y están destinadas a proporcionar una explicación adicional de la invención como se reivindica. Otras características y aspectos serán evidentes a partir de la siguiente descripción detallada, los dibujos y las reivindicaciones.
[0016] Efectos ventajosos de la invención
[0017] De acuerdo con aspectos de la presente invención, un método de codificación y decodificación de un modo de predicción intra usando una pluralidad de modos de predicción intra candidatos y un aparato que usa el método pueden representar un modo de predicción intra de un bloque actual usando una palabra de código corta y predecir un modo de predicción intra de un bloque actual basándose en una pluralidad de modos de predicción intra candidatos, mejorando de ese modo la eficiencia de codificación de vídeo.
[0018] Debe entenderse que tanto las descripciones generales anteriores como la siguiente descripción detallada son ejemplares y explicativas y están destinadas a proporcionar una explicación adicional de la invención como se reivindica. Otras características y aspectos serán evidentes a partir de la siguiente descripción detallada, los dibujos y las reivindicaciones.
[0019] Breve descripción de los dibujos
[0020] Los dibujos que se acompañan, que se incluyen para proporcionar una comprensión adicional de este documento y se incorporan en y constituyen una parte de esta memoria descriptiva, ilustran realizaciones de la invención y junto con la descripción sirven para explicar los principios de la invención.
[0021] La figura 1 es un diagrama de bloques de un codificador de vídeo de acuerdo con una realización ejemplar de la presente invención;
[0022] la figura 2 es un diagrama de bloques de un decodificador de vídeo de acuerdo con una realización ejemplar de la presente invención;
[0023] la figura 3 es un diagrama conceptual que ilustra un método de codificación de un modo de predicción intra de un bloque actual de acuerdo con una realización ejemplar de la presente invención;
[0024] la figura 4 es un diagrama conceptual que ilustra un método para determinar la disponibilidad de un bloque vecino de acuerdo con una realización ejemplar de la presente invención;
[0025] la figura 5 es un diagrama de flujo que ilustra un método de cambio de un modo de predicción intra de un bloque vecino basándose en un bloque actual de acuerdo con una realización ejemplar de la presente invención;
[0026] la figura 6 es un diagrama de flujo que ilustra un método de generación de un primer modo de predicción intra candidato y un segundo modo de predicción intra candidato de acuerdo con una realización ejemplar de la presente invención;
[0027] la figura 7 es un diagrama de flujo que ilustra un método de mapeo de información sobre un modo de predicción intra de un bloque actual en una palabra de código de acuerdo con una realización ejemplar de la presente invención;
[0028] la figura 8 es un diagrama de flujo que ilustra un método de decodificación de un modo de predicción intra actual de acuerdo con una realización ejemplar de la presente invención;
[0029] la figura 9 es un diagrama de flujo que ilustra un método de configuración de un modo de predicción intra candidato disponible a partir de un bloque vecino de acuerdo con una realización ejemplar de la presente invención;
[0030] la figura 10 es un diagrama de flujo que ilustra un método de configuración de un modo de predicción intra candidato cuando se usan tres modos de predicción intra candidatos y un primer modo de predicción intra candidato se configura a partir de un bloque vecino de acuerdo con una realización ejemplar de la presente invención;
[0031] la figura 11 es un diagrama de flujo que ilustra un método de configuración de un modo de predicción intra candidato cuando se usan tres modos de predicción intra candidatos y un primer modo de predicción intra candidato y un segundo modo de predicción intra candidato se configuran a partir de un bloque vecino de acuerdo con una realización ejemplar de la presente invención;
[0032] la figura 12 es un diagrama de flujo que ilustra un método de configuración de un modo de predicción intra candidato cuando se usan cuatro modos de predicción intra candidatos y un primer modo de predicción intra candidato se configura a partir de un bloque vecino de acuerdo con una realización ejemplar de la presente invención;
[0033] la figura 13 es un diagrama de flujo que ilustra un método de configuración de un modo de predicción intra candidato cuando se usan cuatro modos de predicción intra candidatos y un primer modo de predicción intra candidato y un segundo modo de predicción intra candidato se configuran a partir de un bloque vecino de acuerdo con una realización ejemplar de la presente invención;
[0034] la figura 14 es un diagrama de flujo que ilustra un método de decodificación de un modo de predicción intra de un bloque actual de acuerdo con una realización ejemplar de la presente invención;
[0035] la figura 15 es un diagrama de flujo que ilustra un método de decodificación de un modo de predicción intra de un bloque actual de acuerdo con una realización ejemplar de la presente invención; y
[0036] la figura 16 es un diagrama de flujo que ilustra un método de decodificación de un modo de predicción intra actual de acuerdo con una realización ejemplar de la presente invención.
[0037] Modo de la invención
[0038] A continuación se describirán más completamente realizaciones ejemplares con referencia a los dibujos adjuntos, en los que se muestran realizaciones ejemplares. La presente divulgación puede, sin embargo, realizarse de muchas formas diferentes y no debe interpretarse como limitada a las realizaciones ejemplares expuestas en la misma. Más bien, estas realizaciones ejemplares se proporcionan de modo que la presente divulgación sea minuciosa y completa, y transmita completamente el alcance de la presente divulgación a los expertos en la técnica. En la descripción, los detalles de las características y técnicas bien conocidas pueden omitirse para evitar oscurecer innecesariamente las realizaciones presentadas.
[0039] La terminología usada en el presente documento tiene el propósito de describir realizaciones particulares solamente y no pretende ser limitante de la presente divulgación. Como se usa en el presente documento, las formas singulares “un”, “una” y “el”, “la” también pretenden incluir las formas plurales, a menos que el contexto indique claramente lo contrario. Además, el uso de los términos un, una, etc. no denota una limitación de cantidad, sino que denota la presencia de al menos uno de los elementos referenciados. El uso de los términos “primero”, “segundo” y similares no implica ningún orden particular, sino que se incluyen para identificar elementos individuales. Además, el uso de los términos primero, segundo, etc. no denota ningún orden o importancia, sino que los términos primero, segundo, etc. se usan para distinguir un elemento de otro. Se entenderá además que los términos “comprende” y/o “que comprende”, o “incluye” y/o “que incluye” cuando se usan en esta memoria descriptiva, especifican la presencia de características, regiones, números enteros, etapas, operaciones, elementos y/o componentes indicados, pero no excluyen la presencia o adición de una o más características, regiones, números enteros, etapas, operaciones, elementos, componentes y/o grupos de los mismos.
[0040] En caso de que se mencione que un determinado componente está “conectado” o “accedido” a otro componente, puede entenderse que el determinado componente está conectado directamente o accedido al otro componente o que un componente está interpuesto entre los componentes. Por el contrario, en caso de que se mencione que un determinado componente está “directamente conectado” o “directamente accedido” a otro componente, debe entenderse que no hay componente entre los mismos.
[0041] Los términos usados en la presente invención son para explicar simplemente realizaciones específicas, de este modo no se pretende que sean limitantes. Una expresión singular incluye una expresión plural a menos que dos expresiones sean contextualmente diferentes entre sí. En la presente invención, un término “incluir” o “tener” pretende indicar que existen características, figuras, etapas, operaciones, componentes, elementos divulgados en la memoria descriptiva o combinaciones de los mismos. Más bien, el término “incluir” o “tener” debe entenderse para no excluir la existencia de una o más características, figuras, etapas, operaciones, componentes, elementos o combinaciones de los mismos o posibilidad adicional.
[0042] A continuación, se describirán en detalle realizaciones ejemplares de la presente invención con referencia a los dibujos adjuntos. En los dibujos, el tamaño y los tamaños relativos de las capas y regiones pueden exagerarse para mayor claridad. Los números de referencia similares en los dibujos denotan elementos similares.
[0043] La figura 1 es un diagrama de bloques de un codificador de vídeo de acuerdo con una realización ejemplar de la presente invención.
[0044] Con referencia a la figura 1, un codificador de vídeo 100 puede incluir un divisor de imagen 105, un predictor 110, una unidad de transformada 115, un cuantificador 120, una unidad de realineación 125, una unidad de codificación por entropía 130, un cuantificador inverso 135, una unidad de transformada inversa 140, una unidad de filtro 145 y una memoria 150.
[0045] La unidad individual mostrada en la figura 1 se ha ilustrado independientemente entre sí para enfatizar las funciones características de un codificador de vídeo; por lo tanto, no significa que cada unidad se implemente necesariamente como unidades de hardware o software separadas. En otras palabras, cada unidad se introduce e ilustra como tal por conveniencia de la descripción. Al menos dos unidades pueden combinarse en una única unidad que proporciona una función integrada o una única unidad puede llevar a cabo su función que se divide adicionalmente en una pluralidad de subunidades. Las realizaciones realizadas por integración o división de unidades individuales caen dentro del alcance técnico de la presente invención a menos que las realizaciones se aparten de los principios técnicos de la presente invención.
[0046] Además, parte de los elementos constitutivos pueden ser elementos opcionales para mejorar las funciones y pueden omitirse.
[0047] El divisor de imagen 105 puede dividir una imagen de entrada en al menos una unidad de procesamiento. La unidad de procesamiento puede ser un bloque de predicción (PB) o un bloque de transformada (TB), o un bloque de codificación (CB).
[0048] El divisor 105 de imagen divide una única imagen en una combinación de una pluralidad de bloques de codificación, bloques de predicción y bloques de transformada. Basándose en un criterio predeterminado (por ejemplo, una función de coste), el divisor 105 de imágenes puede codificar una imagen eligiendo una única combinación de bloques de codificación, bloques de predicción y bloques de transformada.
[0049] Por ejemplo, una única imagen puede dividirse en una pluralidad de bloques de codificación. Para dividir una imagen por bloques de codificación, se puede emplear una estructura de árbol recursiva, tal como una estructura de árbol cuádruple. Usando una única imagen o un bloque de codificación de tamaño máximo como raíz, un bloque de codificación puede dividirse en otros bloques de codificación, teniendo el bloque de codificación tantos nodos secundarios como el número de bloques de codificación divididos. Un nodo hoja se refiere a un bloque de codificación que no puede dividirse adicionalmente de acuerdo con condiciones predeterminadas. Si un único bloque de codificación permite la división únicamente en regiones cuadradas, un único bloque de codificación puede dividirse en hasta cuatro bloques de codificación diferentes.
[0050] En lo sucesivo, el término bloque de codificación puede usarse para indicar no solo la unidad de codificación sino también la unidad de decodificación, es decir, un bloque de decodificación.
[0051] Un único bloque de codificación puede dividirse en uno o más bloques de predicción del mismo tamaño en forma cuadrada o rectangular. Además, un único bloque de codificación puede dividirse en bloques de predicción, la forma de un bloque de predicción puede ser diferente de la forma de los bloques de predicción restantes.
[0052] En el momento de configurar bloques de predicción para realizar la predicción intra basándose en bloques de codificación, si un bloque de predicción no corresponde al bloque de codificación mínimo, la predicción intra puede llevarse a cabo sin dividir el bloque de predicción en una pluralidad de bloques de predicción (N x N). Un predictor 110 puede incluir un predictor inter, que lleva a cabo predicción inter, y un predictor intra, que lleva a cabo predicción intra. Si usar predicción inter o predicción intra puede determinarse basándose en bloques de predicción e información específica (por ejemplo, modo de predicción intra, vector de movimiento, imagen de referencia y demás) puede determinarse de acuerdo con cada método de predicción. La unidad de procesamiento mediante la cual se lleva a cabo la predicción y la unidad de procesamiento mediante la cual se determinan un método de predicción e información específica pueden diferir entre sí. Por ejemplo, un método de predicción y un modo de predicción pueden determinarse mediante bloques de predicción y la predicción puede llevarse a cabo mediante bloques de transformada. Un valor residual (bloque residual) entre un bloque predicho y el bloque original puede ingresarse en una unidad de transformada 115. Además, la información de modo de predicción usada para la predicción, la información de vector de movimiento y demás puede codificarse junto con valores residuales por la unidad de codificación por entropía 130 y transferirse a un decodificador. En caso de usar un modo de codificación particular, sin generar un bloque predicho a través del predictor 110, puede ser posible codificar el bloque original tal cual y transferir el bloque codificado al decodificador.
[0053] El predictor inter puede realizar predicción inter basándose en la información de al menos una de las imágenes anterior y siguiente de una imagen actual. El predictor inter puede incluir una unidad de interpolación de imagen de referencia, un predictor de movimiento y una unidad de compensación de movimiento.
[0054] La unidad de interpolación de imágenes de referencia puede estar provista de información de imágenes de referencia de la memoria 150 y puede generar información de píxeles de precisión de sub-entero para la imagen de referencia. En el caso de un píxel de luminancia, para generar información de píxel de precisión de sub-entero en unidades de 1/4 píxel, puede emplearse un filtro de interpolación de 8 tomas basado en DCT con coeficientes de filtro variables. En el caso de la señal de crominancia, para generar información de píxeles de precisión de sub-entero en unidades de 1/8 de píxel, puede emplearse un filtro de interpolación de 4 tomas basado en DCT con coeficientes de filtro variables.
[0055] El predictor de movimiento puede llevar a cabo la estimación de movimiento basándose en imágenes de referencia interpoladas por la unidad de interpolación de imágenes de referencia. Como un método para estimar un vector de movimiento, se pueden utilizar varios métodos, tales como FBMA (algoritmo de coincidencia de bloques basado en búsqueda completa, por sus siglas en inglés “Full search-based Block Matching Algorithm”), TSS (búsqueda de tres pasos, por sus siglas en inglés “Three Step Search”), NTS (nuevo algoritmo de búsqueda de tres pasos, por sus siglas en inglés “New Three-Step Search Algorithm”). Un vector de movimiento puede tener un vector de movimiento en unidades de 1/2 o 1/4 píxel en base a píxeles interpolados. El predictor de movimiento puede estimar un bloque de predicción aplicando varios métodos diferentes para la predicción de movimiento. Como un método de predicción de movimiento, se pueden utilizar varios métodos, tales como el método de salto, el método de fusión, el método AMVP (predicción de vector de movimiento avanzada, por sus siglas en inglés “Advanced Motion Vector Prediction”).
[0056] El predictor intra puede generar un bloque predicho basándose en la información de píxeles de referencia (es decir, muestras de referencia) adyacentes a un bloque de predicción, que es la información sobre píxeles de una imagen actual. Si un píxel de referencia es el píxel que ha realizado predicción inter ya que los bloques adyacentes a un bloque de predicción han realizado predicción inter, los píxeles de referencia incluidos en un bloque, que ha realizado predicción inter, pueden sustituirse por información de píxeles de referencia de bloques adyacentes que han realizado predicción intra. Si un píxel de referencia no está disponible, al menos un píxel de referencia entre píxeles de referencia disponibles puede sustituir información de píxeles de referencia no disponible.
[0057] Un modo de predicción en la predicción intra puede dividirse además en un modo de predicción direccional que utiliza información de píxeles de referencia a lo largo de una dirección de predicción y un modo de predicción no direccional que no utiliza información direccional en el momento de llevar a cabo la predicción. El modo para la estimación de la información de luminancia puede ser diferente del modo para la estimación de la información de crominancia, y la información del modo de predicción intra que estima la información de luminancia o la información de la señal de luminancia predicha puede emplearse para predecir la información de crominancia. En una predicción intra, si el tamaño de un bloque de predicción es el mismo que el tamaño de un bloque de transformada, la predicción intra puede llevarse a cabo basándose en los píxeles ubicados en los lados izquierdo, superior izquierdo y superior del bloque de predicción. En la predicción intra, sin embargo, si el tamaño de un bloque de predicción es diferente del tamaño de un bloque de transformada, la predicción intra puede llevarse a cabo usando píxeles de referencia basados en el bloque de transformada. Además, puede emplearse una predicción intra, que aplica partición NxN solo para bloques de predicción mínimos.
[0058] Según un modo de predicción, un método de predicción intra puede generar un bloque predicho después de aplicar el filtro AIS (intra suavizado adaptativo, por sus siglas en inglés “Adaptive Intra Smoothing”) a píxeles de referencia. Los tipos de filtro AIS a aplicar para píxeles de referencia pueden diferir entre sí. Para llevar a cabo el método de predicción intra, puede predecirse un modo de predicción intra de un bloque de predicción a partir de modos de predicción intra de bloques vecinos adyacentes al bloque de predicción. En caso de predecir un modo de predicción intra de un bloque de predicción usando información de modo predicha a partir de bloques vecinos, si el modo de predicción intra del bloque de predicción es el mismo que uno de los modos de predicción intra derivados de los bloques vecinos, la información que indica que el modo de predicción intra del bloque de predicción es el mismo que uno de los modos de predicción intra derivados de los bloques vecinos puede transferirse usando información de indicador predeterminada; si el modo de predicción intra del bloque de predicción difiere de todos los modos de predicción intra derivados de los bloques vecinos, el modo de predicción intra del bloque de predicción puede codificarse llevando a cabo codificación por entropía.
[0059] El predictor, en base a un método de codificación que usa el modo de codificación intra descrito con respecto a las figuras 3 a 8, puede indicar el modo de predicción intra de un bloque de predicción (es decir, el bloque actual) usando símbolos binarios predeterminados, donde un bloque actual es un bloque objetivo que se va a predecir. Además, puede generarse un bloque residual que incluye información residual, que es el valor de diferencia entre el bloque de predicción y su bloque predicho generado en el predictor 110. El bloque residual puede ingresarse en la unidad de transformada 115. La unidad de transformada 115 puede transformar el bloque residual que incluye información residual del bloque predicho generado por el predictor 110 y los bloques de predicción aplicando un método de transformada, tal como DCT (transformada de coseno discreta, por sus siglas en inglés “Discrete Cosine Transform”) o DST (transformada de seno discreta, por sus siglas en inglés “Discrete Sine Transform”). Si usar la DCT o la DST para transformar los bloques residuales puede determinarse basándose en modo de predicción intra de un bloque de predicción empleado para generar los bloques residuales.
[0060] El cuantificador 120 puede cuantificar los valores transformados a la región de frecuencia por la unidad de transformada 115. Los coeficientes de cuantificación pueden cambiar de acuerdo con los tipos de bloques o la importancia de la imagen en cuestión. Los valores calculados por el cuantificador 120 pueden proporcionarse al cuantificador inverso 135 y a una unidad de realineación 125.
[0061] La unidad de realineación 125 puede llevar a cabo la realineación de valores de coeficiente con respecto a los valores residuales cuantificados.
[0062] La unidad de realineación 125 puede cambiar los coeficientes en forma de un bloque bidimensional (2D) en una forma vectorial unidimensional mediante el uso de un método de escaneo de coeficientes. Por ejemplo, la unidad de realineación 125, al emplear un método de escaneo en zig-zag, puede escanear coeficientes desde DC hasta alta frecuencia y modificarlos en una forma vectorial unidimensional. Dependiendo del tamaño de un bloque de transformada y su modo de predicción intra, puede aplicarse un método de exploración vertical, que explora coeficientes que forman un bloque bidimensional a lo largo de una dirección en columna, o un método de exploración horizontal, que explora coeficientes que forman un bloque bidimensional a lo largo de una dirección en fila, en lugar del método de exploración en zig-zag. En otras palabras, dependiendo del tamaño de un bloque de transformada y su modo de predicción intra, puede determinarse un método de entre el método de exploración en zig-zag, el método de exploración vertical y el método de exploración horizontal.
[0063] La unidad de codificación por entropía 130 puede llevar a cabo la codificación por entropía basándose en los valores calculados por la unidad de realineación 125. La codificación por entropía, por ejemplo, puede usar diversos métodos de codificación, tales como Golomb-exponencial, CAVLC (codificación de longitud variable adaptativa por contexto, por sus siglas en inglés “Context-Adaptive Variable Length Coding”) y CABAC (codificación aritmética binaria adaptativa por contexto, por sus siglas en inglés “Context-Adaptive Binary Arithmetic Coding”).
[0064] La unidad de codificación por entropía 130 recibe diversos tipos de información, tales como información de coeficiente residual de un bloque, información de tipo de bloque, información de modo de predicción, información de bloque de partición, información de bloque de predicción, información de bloque de transformada, información de vector de movimiento, información de trama de referencia, información de interpolación de un bloque, información de filtrado y demás, desde la unidad de realineación 125 y el predictor 110 y codifica la información. La unidad de codificación por entropía 130 puede aplicar codificación por entropía a los coeficientes de una entrada de bloque desde la unidad de realineación 125.
[0065] La unidad de codificación por entropía 130 puede almacenar una tabla para llevar a cabo la codificación por entropía, tal como una tabla de codificación de longitud variable, y llevar a cabo la codificación por entropía usando la tabla, tal como la tabla de codificación de longitud variable almacenada. Al llevar a cabo la codificación por entropía, aplicando un método de uso de un contador o intercambio directo a una parte de las palabras de código incluidas en la tabla, puede modificarse la asignación de palabras de código para el número de código de la información correspondiente. Por ejemplo, para el caso de unos pocos números de código superiores para los cuales un pequeño número de bits se asigna a palabras de código en la tabla que mapea el número de código a palabras de código, el orden de mapeo de la tabla, que mapea adaptativamente las palabras de código y los números de código, puede cambiarse de una manera tal que se asigna una palabra de código de corta longitud al número de código que revela el mayor número acumulado de ocurrencias contadas por el contador. Si el recuento se aproxima a un umbral predeterminado del contador, el recuento registrado en el contador puede dividirse por la mitad y el recuento puede comenzarse de nuevo.
[0066] Para los números de código en la tabla que no están implicados en el recuento, si se produce información correspondiente al número de código, la codificación por entropía puede llevarse a cabo reduciendo el número de bits asignados al número de código correspondiente empleando un método de intercambio directo que intercambia posiciones con el número de código en la posición superior inmediata.
[0067] La unidad de codificación por entropía, basándose en un método de codificación que usa el modo de codificación intra descrito con respecto a la figura 3 a la figura 8, puede indicar el modo de predicción intra de un bloque de predicción usando símbolos binarios predeterminados.
[0068] El cuantificador inverso 135 y la unidad de transformada inversa 140 cuantifican inversamente los valores cuantificados por el cuantificador 120 y transforman inversamente los valores transformados por la unidad de transformada 115, respectivamente. Los residuos generados en el cuantificador inverso 135 y la unidad de transformada inversa 140 pueden usarse para generar bloques reconstruidos. Los residuos pueden combinarse con el bloque predicho predicho a través del predictor de movimiento y la unidad de compensación de movimiento incluida en el predictor 110 y el intra predictor.
[0069] La unidad de filtro 145 puede incluir al menos uno de un filtro de desbloqueo, una unidad de compensación de desplazamiento y un ALF (filtro de bucle adaptativo, por sus siglas en inglés “Adaptive Loop Filter”).
[0070] El filtro de desbloqueo 145 puede eliminar distorsiones de bloque causadas por el límite entre bloques en una imagen reconstruida. Si aplicar un filtro de desbloqueo a un bloque puede determinarse en base al número de columnas incluidas en el bloque o el número de píxeles incluidos en una fila. En caso de aplicar un filtro de desbloqueo a un bloque, de acuerdo con la intensidad de filtrado requerida del filtro de desbloqueo, se puede emplear un filtro fuerte o débil. Además, al llevar a cabo el filtrado vertical y horizontal para la aplicación de un filtro de desbloqueo, el filtrado de dirección horizontal y el filtrado de dirección vertical pueden llevarse a cabo en paralelo.
[0071] La unidad de compensación de desplazamiento puede compensar el desplazamiento en unidades de píxeles desde la imagen original contra la imagen para la que se ha aplicado el desbloqueo. Para llevar a cabo la compensación de desplazamiento para una imagen particular, puede emplearse un método de dividir píxeles de la imagen en un número finito de regiones y determinar una región para la que aplicar la compensación de desplazamiento y aplicar la compensación de desplazamiento a la región correspondiente o un método de aplicar la compensación de desplazamiento teniendo en cuenta la información de borde de cada píxel.
[0072] El ALF (filtro de bucle adaptativo) puede realizar el filtrado en base a los valores que comparan una imagen reconstruida después del filtrado y la imagen original. Los píxeles de la imagen pueden agruparse en grupos predeterminados y los filtros pueden asignarse a los grupos respectivos y el filtrado se lleva a cabo por separado para cada grupo. En cuanto a la información sobre si aplicar ALF, las señales de luminancia pueden transferirse para cada bloque de codificación; y el tamaño y los coeficientes de un ALF que se aplicará para cada bloque pueden variar. El ALF puede tener diversas formas y el número de coeficientes incluidos en el filtro también puede cambiar. La información relacionada con el filtrado de la ALS anterior (por ejemplo, información de coeficiente de filtro, información de activación/desactivación de ALF, información de forma de filtro) puede transferirse después de incluirse en un conjunto de parámetros predeterminado a través de un flujo de bits. La memoria 150 puede almacenar bloques o imagen reconstruidos calculados a través de la unidad de filtro 145 y los bloques o imagen reconstruidos pueden proporcionarse al predictor 110 mientras se lleva a cabo la predicción inter.
[0073] La figura 2 es un diagrama de bloques de un decodificador de vídeo de acuerdo con una realización ejemplar de la presente invención.
[0074] Con referencia a la figura 2, el decodificador de vídeo 200 puede incluir un decodificador por entropía 210, una unidad de realineación 215, un cuantificador inverso 220, una unidad de transformada inversa 225, un predictor 230, una unidad de filtro 235 y una memoria 240.
[0075] Cuando un flujo de bits de vídeo se ingresa desde un codificador de vídeo, el flujo de bits de entrada puede decodificarse a través de un orden inverso del procedimiento llevado a cabo para el codificador de vídeo.
[0076] El decodificador por entropía 210 (“unidad de decodificación por entropía”) puede llevar a cabo la decodificación por entropía a través de un orden inverso del procedimiento de codificación por entropía llevado a cabo en el codificador por entropía de un codificador de vídeo. Por ejemplo, la decodificación por entropía puede llevarse a cabo ya que la tabla de VLC usada para llevar a cabo la codificación por entropía en el codificador de vídeo se implementa para ser la misma tabla de codificación de longitud variable en la unidad de decodificación por entropía. La información para generar un bloque predicho de entre la información decodificada en la unidad de decodificación por entropía 210 se proporciona al predictor 230 y los valores residuales con los que la unidad de decodificación por entropía 210 ha llevado a cabo la decodificación por entropía pueden proporcionarse a la unidad de realineación 215.
[0077] De la misma manera que la unidad de codificación por entropía 130 de la figura 1, la unidad de decodificación por entropía 210 también puede cambiar la tabla de asignación de palabras de código usando un contador o un método de intercambio directo. Basándose en la tabla de asignación de palabras de código cambiada, puede llevarse a cabo la decodificación por entropía.
[0078] La unidad de decodificación por entropía 210 puede decodificar información relacionada con la predicción intra y la predicción inter realizadas en el codificador. Como se ha descrito anteriormente, si existen ciertas condiciones, tales como restricciones específicas para la predicción, cuando el codificador de vídeo lleva a cabo la predicción intra e inter, la decodificación por entropía puede realizarse basándose en las condiciones y puede proporcionarse información relacionada con la predicción intra e inter de un bloque de predicción. La unidad de decodificación por entropía puede llevar a cabo la operación de decodificación descrita con respecto a la figura 3 a la figura 8.
[0079] La unidad de decodificación por entropía 210, basándose en un método de decodificación del modo de codificación intra descrito con respecto a la figura 3 a la figura 8, puede decodificar información del modo de predicción intra de un bloque de predicción usando símbolos binarios predeterminados.
[0080] La unidad de realineación 215 puede realinear un flujo de bits decodificado por entropía por el decodificador por entropía 210 basándose en el método de realineación empleado en el codificador 100. Los coeficientes expresados como un vector unidimensional pueden realinearse reconstruyendo el vector unidimensional de nuevo en los coeficientes de una forma de bloque bidimensional. La unidad de realineación puede recibir información relacionada con la exploración de coeficientes realizada en el codificador 100, puede llevar a cabo la realineación a través de un método de aplicación de la exploración inversa en base al orden de exploración realizado en el codificador 100.
[0081] El cuantificador inverso 220 puede llevar a cabo la cuantificación inversa basándose en parámetros de cuantificación proporcionados por el codificador 100 y valores de coeficientes de un bloque realineado.
[0082] La unidad de transformada inversa 225 puede aplicar DCT inversa o DST inversa, respectivamente, contra la DCT o DST realizada por la unidad de transformada 115 en el resultado de cuantificación realizado en el codificador de vídeo 100. La transformada inversa puede llevarse a cabo basándose en un bloque de transformada determinado en el decodificador de vídeo. En la unidad de transformada 115 del codificador de vídeo 100, la DCT o la DST se pueden llevar a cabo de manera selectiva de acuerdo con un método de predicción, tamaño y dirección de predicción, y demás, y la unidad de transformada inversa 225 del decodificador de vídeo puede llevar a cabo una transformada inversa basándose en la información de transformada llevada a cabo en la unidad de transformada 115 del codificador de vídeo 100.
[0083] Al llevar a cabo la transformación, la transformación puede llevarse a cabo basándose en un bloque de codificación en lugar del bloque de transformada.
[0084] El predictor 230 puede generar un bloque predicho basándose en la información relacionada con la generación de un bloque predicho proporcionado por el decodificador por entropía 210 e información sobre un bloque o imagen decodificado previamente proporcionado por la memoria 240.
[0085] Como se ha descrito anteriormente, si el tamaño de un bloque de predicción es el mismo que el tamaño de un bloque de transformada cuando se lleva a cabo la predicción intra de la misma manera que la operación en el codificador de vídeo 100, la predicción intra puede llevarse a cabo basándose en los píxeles ubicados en el lado izquierdo, superior izquierdo y superior del bloque de predicción. Sin embargo, si el tamaño del bloque de predicción difiere del tamaño del bloque de transformada cuando se lleva a cabo la predicción intra, la predicción intra puede llevarse a cabo usando píxeles de referencia basados en el bloque de transformada. Además, la predicción intra que utiliza partición NxN puede usarse solo para un bloque de predicción mínimo.
[0086] El predictor 230 puede incluir una unidad de determinación de bloque de predicción, un predictor inter y un predictor intra. La unidad de determinación de bloque de predicción puede recibir diversas piezas de información, tal como información de bloque de predicción alimentada desde la unidad de decodificación por entropía, información de modo de predicción de un método de predicción intra e información relacionada con la predicción de movimiento de un método de predicción inter, identificar bloques de predicción de un bloque de codificación actual y determinar si el bloque de predicción lleva a cabo predicción inter o predicción intra. El predictor inter puede llevar a cabo la predicción inter sobre un bloque de predicción usando información para la predicción inter de un bloque de predicción proporcionado por el codificador de vídeo 100, basándose en la información de al menos una de las imágenes anteriores y siguientes de una imagen actual en la que se incluye el bloque de predicción.
[0087] Para llevar a cabo la predicción inter, puede determinarse, basándose en un bloque de codificación, a qué método entre el modo de salto, el modo de fusión y el modo de AMVP corresponde un método de predicción de movimiento de un bloque de predicción incluido en el correspondiente bloque de codificación.
[0088] El intra predictor puede generar un bloque predicho basándose en la información de píxeles dentro de una imagen actual. Si un bloque de predicción se codifica en el modo de predicción intra, la predicción intra puede llevarse a cabo basándose en el modo de predicción intra del bloque de predicción proporcionado en el codificador 100 de vídeo.
[0089] El bloque de predicción intra puede incluir un filtro AIS, una unidad de interpolación de píxeles de referencia, un filtro DC. El filtro AIS aplica filtrado a píxeles de referencia de un bloque de predicción y puede determinarse si aplicar el filtro AIS basándose en un modo de predicción de un bloque de predicción. Usando un modo de predicción de un bloque de predicción proporcionado por el codificador de vídeo y la información de filtro AIS, puede realizarse filtrado AIS en los píxeles de referencia de un bloque de predicción. Si el modo de predicción de un bloque de predicción corresponde al modo que no lleva a cabo el filtrado AIS, el filtro AIS puede no aplicarse. La unidad de interpolación de píxeles de referencia, si el modo de predicción de un bloque de predicción corresponde al bloque de predicción que lleva a cabo la predicción intra basándose en valores de píxeles que interpolan píxeles de referencia, puede interpolar píxeles de referencia y generar píxeles de referencia de unidades de píxeles de precisión de sub-entero. Si el modo de predicción de un bloque de predicción corresponde al modo de predicción que genera un bloque predicho sin interpolar píxeles de referencia, los píxeles de referencia pueden no interpolarse. El filtro DC puede generar un bloque predicho a través del filtrado si el modo de predicción de un bloque de predicción es un modo DC.
[0090] Un bloque o imagen reconstruido puede proporcionarse a la unidad de filtro 235. La unidad de filtro 235 puede incluir un filtro de desbloqueo, una unidad de compensación de desplazamiento y un ALF.
[0091] El codificador de vídeo 100 puede proporcionar información sobre si el filtro de desbloqueo se ha aplicado al bloque o imagen correspondiente e información sobre si se ha aplicado un filtro fuerte o débil si se emplea el filtro de desbloqueo. El filtro de desbloqueo del decodificador de vídeo 200 puede recibir información relacionada con el filtro de desbloqueo proporcionado por el codificador de vídeo 100 y llevar a cabo un filtrado de desbloqueo contra el bloque correspondiente en el decodificador de vídeo 200. De la misma manera que el codificador de vídeo, se puede llevar a cabo el filtrado de desbloqueo vertical y el filtro de desbloqueo horizontal. Para aquellas regiones que se solapan entre sí, puede llevarse a cabo al menos uno de los filtrados de desbloqueo vertical y horizontal. En la región donde se superponen el filtrado de desbloqueo vertical y el filtrado de desbloqueo horizontal, se puede llevar a cabo el filtrado de desbloqueo vertical o el filtrado de desbloqueo horizontal, que no se ha llevado a cabo anteriormente. A través del procedimiento de filtrado de desbloqueo como se describió anteriormente, se puede realizar el procesamiento paralelo del filtrado de desbloqueo.
[0092] La unidad de compensación de desplazamiento puede aplicar compensación de desplazamiento en una imagen reconstruida basándose en el tipo de compensación de desplazamiento aplicada a una imagen en el momento de la codificación, información sobre el valor de desplazamiento, y así sucesivamente.
[0093] El ALF puede realizar un filtrado basándose en los valores obtenidos comparando una imagen reconstruida después de filtrado con la imagen original. El ALF puede aplicarse a un bloque de codificación basándose en la información sobre si el ALF proporcionado desde un codificador se ha aplicado, información de coeficiente de ALF y demás. La información de ALF puede proporcionarse después de incluirse en un conjunto de parámetros particular.
[0094] La memoria 240 puede almacenar una imagen o bloque reconstruido de modo que la imagen o bloque reconstruido se pueda usar como imagen de referencia o bloque de referencia y puede proporcionar la imagen reconstruida a una unidad de salida.
[0095] Como se ha descrito anteriormente, aunque las realizaciones de la presente invención usan el término de bloque de codificación por conveniencia de la descripción, el bloque puede funcionar como una unidad para la decodificación así como para la codificación. Es decir, el bloque de codificación puede referirse a un bloque de decodificación en un proceso de decodificación. Un método de codificación y decodificación de un modo de predicción intra usando una pluralidad de modos de predicción intra candidatos descritos con respecto a la figura 3 a la figura 8 puede implementarse para realizar funciones de cada módulo descrito con respecto a la figura 1 y la figura 2. El codificador y el decodificador descritos anteriormente son ejemplares y no limitan el alcance de la presente invención.
[0096] La figura 3 es un diagrama conceptual que ilustra un método de codificación de un modo de predicción intra de un bloque de predicción (es decir, el bloque actual) de acuerdo con una realización ejemplar de la presente invención. Un bloque actual puede referirse a un bloque objetivo que se va a predecir.
[0097] Con referencia a la figura 3, un modo de predicción intra de un bloque actual 300 puede derivarse en base a modos de predicción intra de bloques vecinos 310, 320 del bloque actual.
[0098] De acuerdo con aspectos de la presente invención, un bloque para derivar un modo de predicción intra candidato usado para predecir un modo de predicción intra de un bloque 300 actual puede definirse como un bloque vecino 310, 320. Si la posición del píxel superior izquierdo de un bloque actual 300 se define como (x, y), un primer bloque vecino 310 que incluye una posición de píxel de (x-1, y) y un segundo bloque vecino 320 que incluye una posición de píxel de (x, y-1) se pueden definir como bloques vecinos 310, 320.
[0099] Un caso en el que un modo de predicción intra de un bloque vecino está disponible puede corresponder al caso en el que a) existe un bloque vecino; b) el bloque vecino se codifica en el modo de predicción intra; y c) un modo de predicción intra puede derivarse del bloque vecino.
[0100] Un caso en el que un modo de predicción intra de un bloque vecino está no disponible puede corresponder al caso en el que a) no existe ningún bloque vecino; b) el bloque vecino no está codificado en el modo de predicción intra; o c) un modo de predicción intra no puede derivarse del bloque vecino.
[0101] Además, para predecir un modo de predicción intra de un bloque 300 actual, pueden usarse modos de predicción intra de bloques vecinos 310, 320 y otros modos de predicción intra secuenciales. El modo de predicción intra de un bloque 300 actual puede predecirse mediante un modo de predicción intra candidato, y puede utilizarse una pluralidad de modos de predicción intra candidatos.
[0102] De acuerdo con aspectos de la presente invención, se puede suponer que se usan tres o cuatro modos de predicción intra candidatos por conveniencia de la descripción; sin embargo, pueden estar disponibles cinco o más modos de predicción intra candidatos.
[0103] Si se supone que se usan tres o más modos de predicción intra candidatos para predecir un modo de predicción intra de un bloque actual, puede implementarse una realización para derivar un modo de predicción intra candidato para predecir, codificar y decodificar un modo de predicción intra de un bloque actual como se describe a continuación.
[0104] 1) Si los bloques vecinos de un bloque actual están todos disponibles y tienen modos de predicción intra diferentes entre sí (es decir, los bloques vecinos tienen diferentes modos de predicción intra), dos (es decir, un primer y un segundo) modos de predicción intra candidatos pueden derivarse de modos de predicción intra de bloques vecinos. Un tercer modo de predicción intra candidato puede derivarse de un modo de predicción intra adicional diferente de dos modos de predicción intra candidatos. Un modo de predicción intra adicional que no se deriva de bloques vecinos puede denominarse un modo de predicción intra adicional secuencial. Un modo de predicción intra adicional secuencial es un modo de predicción intra usado secuencialmente para derivar un modo de predicción intra candidato. En consideración de modos de predicción intra candidatos derivados de bloques vecinos, un modo de predicción intra adicional secuencial puede establecerse diferente de dos modos de predicción intra candidatos derivados de bloques vecinos como tercer modo de predicción intra candidato, de modo que tres modos de predicción intra candidatos tengan valores diferentes entre sí. En lo sucesivo, se describirán en detalle modos de predicción intra adicionales secuenciales.
[0105] 2) Si los bloques vecinos de un bloque actual están todos disponibles y tienen un mismo modo de predicción intra, un modo de predicción intra candidato puede derivarse del mismo modo de predicción intra de los bloques vecinos. Los dos modos de predicción intra restantes candidatos pueden derivarse de otros dos modos de predicción intra adicionales (secuenciales, modos de predicción intra adicionales) diferentes de un modo de predicción intra candidato derivado de bloques vecinos, de modo que tres modos de predicción intra candidatos tienen valores diferentes entre sí.
[0106] 3) Si solo un bloque vecino está disponible de entre los bloques vecinos de un bloque actual, un modo de predicción intra candidato puede derivarse del modo de predicción intra del bloque vecino disponible. Los dos modos de predicción intra restantes candidatos pueden derivarse de otros dos modos de predicción intra adicionales (secuenciales, modos de predicción intra adicionales) diferentes del modo de predicción intra candidato derivado del bloque vecino disponible, de modo que tres modos de predicción intra candidatos tienen valores diferentes entre sí.
[0107] 4) Si los bloques vecinos de un bloque actual no están disponibles en absoluto, se pueden derivar tres modos de predicción intra candidatos usando modos de predicción intra secuenciales adicionales.
[0108] Si un modo de predicción intra de un bloque actual es el mismo que un modo de predicción intra candidato, la información que indica si un modo de predicción intra de un bloque actual 300 es el mismo que un modo de predicción intra candidato puede codificarse y decodificarse a través de información de indicador predeterminada.
[0109] En lo sucesivo, se describirán varios casos de derivar tres o cuatro modos de predicción intra candidatos para codificar y decodificar el modo de predicción intra de un bloque 300 actual.
[0110] Caso 1: Un método para derivar modos de predicción intra candidatos cuando los bloques vecinos de un bloque actual están todos disponibles y tienen modos de predicción intra diferentes entre sí (es decir, los bloques vecinos tienen diferentes modos de predicción intra). Es decir, un primer bloque vecino 310 y un segundo bloque vecino 320 existen alrededor de un bloque actual 300; los bloques vecinos primero y segundo 310 y 320 se codifican en modo de predicción intra; y el modo de predicción intra del primer bloque vecino 310 difiere del modo de predicción intra del segundo bloque vecino 320.
[0111] En este caso, un primer modo de predicción intra candidato puede establecerse igual a un modo de predicción intra que tiene el valor más pequeño entre modos de predicción intra de los bloques vecinos primero 310 y segundo 320, y un segundo modo de predicción intra candidato puede establecerse igual a un modo de predicción intra que tiene el valor más grande entre modos de predicción intra de los bloques vecinos primero 310 y segundo 320.
[0112] Alternativamente, un primer modo de predicción intra candidato puede establecerse en modo de predicción intra del primer bloque vecino 310 y un segundo modo de predicción intra candidato puede establecerse en modo de predicción intra del segundo bloque vecino 320.
[0113] Un método de codificación y decodificación de un modo de predicción intra de un bloque actual usando una pluralidad de modos de predicción intra candidatos puede derivar una pluralidad de modos de predicción intra candidatos usando modo o modos de predicción intra candidatos adicionales secuenciales para codificar y decodificar un modo de predicción intra de un bloque actual.
[0114] Tres modos de predicción intra candidatos pueden definirse como una pluralidad de modos de predicción intra candidatos para codificar y decodificar un modo de predicción intra de un bloque actual. En este caso, para modo o modos de predicción intra adicionales secuenciales, por ejemplo, puede usarse un modo plano, un modo DC y un modo vertical, pero los aspectos no se limitan a los mismos.
[0115] Un modo de predicción intra usado como un modo de predicción intra candidato entre modos de predicción intra adicionales secuenciales puede ser diferente de los modos de predicción intra candidatos derivados de bloques vecinos.
[0116] Por ejemplo, puede haber un caso en el que un primer modo de predicción intra candidato y un segundo modo de predicción intra candidato pueden derivarse de modos de predicción intra de bloques vecinos 310 y 320, y ninguno de los modos de predicción intra candidatos primero y segundo es el modo plano. En este caso, un tercer modo de predicción intra candidato puede establecerse igual al modo plano que es un primer modo de predicción intra entre modos de predicción intra adicionales secuenciales.
[0117] Si uno de los modos de predicción intra candidatos primero y segundo derivados de los modos de predicción intra de bloques vecinos es el modo plano y el otro no es el modo DC, el tercer modo de predicción intra candidato puede establecerse igual al modo DC que es un segundo modo de predicción intra entre modos de predicción intra adicionales secuenciales, ya que el modo plano ya existe en los modos de predicción intra candidatos primero o segundo.
[0118] Si uno de los modos de predicción intra candidatos primero y segundo derivados de los modos de predicción intra de bloques vecinos es el modo plano y el otro es el modo DC, el tercer modo de predicción intra candidato puede establecerse igual al modo vertical que es un tercer modo de predicción intra entre modos de predicción intra adicionales secuenciales, ya que el modo plano y el modo DC ya existen en los modos de predicción intra candidatos primero y segundo.
[0119] Como se ha descrito anteriormente, el modo de predicción intra de un bloque actual puede predecirse, codificarse y decodificarse usando tres modos de predicción intra candidatos diferentes.
[0120] Además, se pueden usar cuatro modos de predicción intra candidatos como una pluralidad de modos de predicción intra candidatos para codificar y decodificar un modo de predicción intra de un bloque actual.
[0121] Los modos de predicción intra adicionales secuenciales, usados para derivar cuatro modos de predicción intra candidatos, pueden ser modo plano, modo DC, modo vertical y modo horizontal.
[0122] Por ejemplo, puede haber un caso en el que un primer modo de predicción intra candidato y un segundo modo de predicción intra candidato se derivan de bloques vecinos, y los modos de predicción intra candidatos primero y segundo no son el modo plano o el modo DC. En este caso, entre modos de predicción intra adicionales secuenciales, el modo plano se deriva como un tercer modo de predicción intra candidato y el modo DC como un cuarto modo de predicción intra candidato, que puede usarse para codificar y decodificar el modo de predicción intra de un bloque actual.
[0123] Además, se puede suponer que uno de unos modos de predicción intra candidatos primero y segundo derivados de bloques vecinos es un modo plano y el otro no es un modo DC. En este caso, entre modos de predicción intra adicionales secuenciales, el modo DC se deriva como un tercer modo de predicción intra candidato mientras que el modo vertical se deriva como un cuarto modo de predicción intra candidato para no hacer un modo de predicción intra candidato idéntico a los modos de predicción intra candidatos derivados a partir de bloques vecinos.
[0124] Si uno de unos modos de predicción intra primero y segundo derivados de bloques vecinos es un modo plano, y el otro es un modo DC (o modo DC y modo plano). En este caso, un tercer modo de predicción intra candidato se establece en un modo vertical mientras que un cuarto modo de predicción intra candidato como un modo horizontal para no hacer un modo de predicción intra candidato idéntico a los modos de predicción intra candidatos derivados de bloques vecinos.
[0125] Los cuatro modos de predicción intra candidatos derivados a través del método anterior pueden usarse para predecir un modo de predicción intra de un bloque actual.
[0126] El orden de modos de predicción intra adicionales secuenciales, usados para derivar tres y cuatro modos de predicción intra candidatos, se introduce con fines ilustrativos y puede cambiarse. Por ejemplo, como otro método para derivar tres modos de predicción intra candidatos, los modos de predicción intra adicionales secuenciales pueden emplear modo plano, modo DC y modo horizontal.
[0127] Además, como otro método más de uso de cuatro modos de predicción intra candidatos, el modo de predicción intra adicional secuencial puede usar el modo plano, el modo DC, el modo horizontal y el modo vertical secuencialmente como modos de predicción intra adicionales.
[0128] Si se predice un modo de predicción intra de un bloque actual usando tres modos de predicción intra candidatos, puede suponerse que el modo plano, el modo DC y el modo vertical se usan secuencialmente como modos de predicción intra adicionales.
[0129] Si se predice un modo de predicción intra de un bloque actual usando cuatro modos de predicción intra candidatos, puede suponerse que el modo plano, el modo DC, el modo vertical y el modo horizontal se usan secuencialmente como modos de predicción intra adicionales.
[0130] Caso 2: Un método para derivar modos de predicción intra candidatos cuando los bloques vecinos de un bloque actual están todos disponibles pero tienen el mismo modo de predicción intra.
[0131] Tanto el primer bloque vecino 310 como el segundo bloque vecino 320 existen alrededor de un bloque actual 300; los bloques vecinos primero 310 y segundo 320 pueden codificarse en modo de predicción intra, y el modo de predicción intra del primer bloque vecino 310 es el mismo que el modo de predicción intra del segundo bloque vecino 320.
[0132] En este caso, un primer modo de predicción intra candidato se establece igual al modo de predicción intra del primer bloque vecino 310, y los modos de predicción intra candidatos restantes se derivan basándose en modo o modos de predicción intra adicionales secuenciales.
[0133] Por ejemplo, si se usan tres modos de predicción intra candidatos para predecir el modo de predicción intra de un bloque 300 actual, los modos de predicción intra candidatos restantes, los modos de predicción intra candidatos segundo y tercero, pueden derivarse usando modo o modos de predicción intra adicionales secuenciales.
[0134] Por ejemplo, un primer modo de predicción intra candidato, que es un modo de predicción intra del primer bloque vecino 310, no es un modo plano. En este caso, un modo de predicción intra diferente del primer modo de predicción intra candidato entre modos de predicción adicionales secuenciales puede usarse como un modo de predicción intra candidato. Por lo tanto, un segundo modo de predicción intra candidato puede establecerse igual a modo plano de acuerdo con la prioridad de orden. Un tercer modo de predicción intra candidato puede establecerse igual a modo vertical si el primer modo de predicción intra candidato es el modo DC. Además, si el primer modo de predicción intra candidato es el modo de predicción intra restante diferente de los modos plano y DC (en caso de que no sea ni el modo plano ni el modo DC), el tercer modo de predicción intra candidato puede establecerse igual a modo DC.
[0135] Como otro ejemplo, si un primer modo de predicción intra candidato, que es un modo de predicción intra del primer bloque vecino 310, es el modo plano, un segundo modo de predicción intra candidato puede establecerse igual a modo DC, y un tercer modo de predicción intra candidato puede establecerse igual a modo vertical. Si se usan cuatro modos de predicción intra candidatos para predecir un modo de predicción intra de un bloque 300 actual, los modos de predicción intra candidatos segundo, tercero y cuarto pueden configurarse de la misma manera que se describió anteriormente.
[0136] Por ejemplo, si el primer modo de predicción intra candidato, que corresponde al mismo modo de predicción intra de los bloques vecinos primero 310 y segundo 320, no es el modo plano, el segundo modo de predicción intra candidato puede establecerse en el modo plano. Entre los modos de predicción intra adicionales secuenciales restantes, modo DC, modo vertical y modo horizontal, los modos de predicción intra restantes diferentes del modo de predicción intra que es el mismo que el primer modo de predicción intra candidato pueden derivarse secuencialmente como el tercer modo de predicción intra candidato y el cuarto modo de predicción intra candidato.
[0137] Como otro ejemplo, si un primer modo de predicción intra candidato, que corresponde al mismo modo de predicción intra de los bloques vecinos primero 310 y segundo 320, es el modo plano, el segundo modo de predicción intra candidato puede establecerse en modo DC; el tercer modo de predicción intra candidato puede establecerse en modo vertical; y el cuarto modo de predicción intra candidato puede establecerse en modo horizontal.
[0138] Caso 3: Un método para derivar modos de predicción intra candidatos cuando solo un bloque vecino está disponible entre bloques vecinos de un bloque actual.
[0139] Si solo un bloque vecino de un primer 310 y un segundo 320 bloque vecino está disponible, un modo de predicción intra candidato puede derivarse solo del bloque vecino disponible.
[0140] En este caso, si se usan tres modos de predicción intra candidatos como un modo de predicción intra candidato de un bloque 300 actual, el modo de predicción intra calculado a partir del bloque vecino disponible puede derivarse como un primer modo de predicción intra candidato. Los modos de predicción intra candidatos restantes segundo y tercero pueden derivarse basándose en modos de predicción intra adicionales secuenciales. Es decir, al menos dos modos de predicción intra entre modo plano, modo DC y modo vertical que son modos de predicción intra candidatos secuenciales, pueden derivarse secuencialmente como el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato, respectivamente.
[0141] Por ejemplo, un primer modo de predicción intra candidato, que es un modo de predicción intra del bloque vecino disponible, puede ser un modo de predicción intra diferente del modo plano. En este caso, un modo de predicción intra no idéntico al primer modo de predicción intra candidato de entre modos de predicción adicionales secuenciales puede usarse como un modo de predicción intra candidato. Por lo tanto, un segundo modo de predicción intra candidato puede configurarse como el modo plano. El tercer modo de predicción intra candidato restante puede configurarse como modo vertical si el primer modo de predicción intra candidato es modo DC para evitar la asignación plural del modo DC como modo de predicción candidato incluso aunque el modo DC tenga una prioridad más alta que el modo vertical. Además, si el primer modo de predicción intra candidato corresponde al otro modo de predicción intra (en caso de que no sea ni el modo plano ni el modo DC), el tercer modo de predicción intra candidato puede configurarse como el modo DC, que puede tener una prioridad más alta que otros modos de predicción intra excepto el modo plano.
[0142] Como otro ejemplo, si un primer modo de predicción intra candidato, que es un modo de predicción intra del bloque vecino disponible, es el modo plano, un segundo modo de predicción intra candidato se deriva como el modo DC y un tercer modo de predicción intra candidato se deriva como modo vertical.
[0143] Si se usan cuatro modos de predicción intra candidatos como modos de predicción intra candidatos de un bloque 300 actual, pueden configurarse unos modos de predicción intra candidatos segundo, tercer y cuarto de la misma manera que anteriormente.
[0144] Por ejemplo, si un primer modo de predicción intra candidato, que es un modo de predicción intra del bloque vecino disponible, no es el modo plano, un segundo modo de predicción intra candidato puede configurarse como el modo plano. Los modos de predicción intra restantes diferentes de un modo de predicción intra del primer modo de predicción intra candidato de entre el modo DC, el modo vertical y el modo horizontal, que son el modo de predicción intra adicional secuencial restante, pueden derivarse secuencialmente como los modos de predicción intra candidatos tercero y el cuarto.
[0145] Además, si un primer modo de predicción intra candidato, que es un modo de predicción intra del bloque vecino disponible, es el modo plano, el segundo modo de predicción intra candidato puede derivarse como el modo DC; el tercer modo de predicción intra candidato puede derivarse como el modo vertical; y el cuarto modo de predicción intra candidato puede derivarse como el modo horizontal.
[0146] Caso 4: Un método para derivar modos de predicción intra candidatos cuando los bloques vecinos de un bloque actual están todos no disponibles.
[0147] Tanto un primer bloque vecino 310 como un segundo bloque vecino 320 de un bloque actual 300 pueden estar no disponibles.
[0148] Se puede suponer que se usan tres modos de predicción intra candidatos para predecir un modo de predicción intra de un bloque 300 actual cuyos bloques vecinos están todos no disponibles.
[0149] Si los bloques vecinos no están disponibles, como tres modos de predicción intra candidatos para predecir un modo de predicción intra de un bloque actual, un primer modo de predicción intra candidato puede derivarse como el modo plano; un segundo modo de predicción intra candidato puede derivarse como el modo DC; y un tercer modo de predicción intra candidato puede derivarse como un modo vertical.
[0150] Puede suponerse que se usan cuatro modos de predicción intra candidatos para predecir un modo de predicción intra de un bloque 300 actual cuyos bloques vecinos están todos no disponibles. En este caso, como cuatro modos de predicción intra candidatos para predecir un modo de predicción intra de un bloque actual, un primer modo de predicción intra candidato puede derivarse como el modo plano; un segundo modo de predicción intra candidato puede derivarse como el modo DC; un tercer modo de predicción intra candidato puede derivarse como el modo vertical; y un cuarto modo de predicción intra candidato puede derivarse como el modo horizontal. La figura 4 es un diagrama conceptual que ilustra un método de determinación de la disponibilidad de un bloque vecino de acuerdo con una realización ejemplar de la presente invención.
[0151] Con referencia a la figura 4, se puede determinar si un primer bloque vecino está disponible en la operación S400.
[0152] Si existe un primer bloque vecino en el lado izquierdo de un bloque actual y el primer bloque vecino lleva a cabo la predicción usando un método de predicción intra, se determina que el primer bloque vecino está disponible. Si el primer bloque vecino no está disponible, el modo de predicción intra del primer bloque vecino se configura para ser -1 en la operación S410.
[0153] Al configurar el modo de predicción intra del primer bloque vecino como ‘-1’, se puede indicar la no disponibilidad del primer bloque vecino. También es posible indicar la disponibilidad del primer bloque vecino usando un valor diferente de ‘-1’.
[0154] El modo de predicción intra del primer bloque vecino puede expresarse usando un elemento sintáctico predeterminado. Por ejemplo, el modo de predicción intra del primer bloque vecino puede expresarse usando un elemento sintáctico neg_intra_mode[0]; si neg_intra_mode [0] es ‘-1’, indica que el primer bloque vecino no está disponible.
[0155] Si el primer bloque vecino está disponible, el modo de predicción intra del primer bloque vecino se usa como el primer modo de predicción intra candidato en la operación S420.
[0156] La información de modo de predicción intra del primer bloque vecino puede expresarse basándose en un elemento sintáctico neg_intra_mode [0]. El neg_intra_mode [0] en el que se almacena el modo de predicción intra del primer bloque vecino puede usarse como el primer modo de predicción intra candidato.
[0157] Los modos de predicción intra y los modos de predicción intra pueden ser mapeados como se muestra en la tabla 1.
[0158] <Tabla 1>
[0160]
[0162] Con referencia a la tabla 1, el modo plano (Intra_Planar) puede mapearse al valor de predicción intra de ‘0’; modo vertical (Intra_Vertical) a ‘1’; modo horizontal (Intra_Horizontal) a ‘2’; modo DC (Intra_DC) a ‘3’; y los otros modos angulares (Intra_Angular) pueden mapearse a de 4 a 34. Además, el modo plano (Intra_Planar) puede mapearse a un primer valor; el modo DC (Intra_DC) puede mapearse a un segundo valor; y los modos angulares (Intra_Angular) pueden mapearse a una pluralidad de valores, que incluyen el modo vertical (Intra_Vertical) y el modo horizontal (Intra_Horizontal). Dado que el modo vertical y el modo horizontal pueden ser un modo angular establecido de acuerdo con un ángulo específico, por ejemplo, vertical y horizontal, respectivamente, el modo vertical (Intra_Vertical) y el modo horizontal (Intra_Horizontal) pueden incluirse en los modos angulares (Intra_Angular).
[0163] De acuerdo con aspectos de la presente invención, un número de modo de predicción intra más pequeño puede mapearse al modo plano y luego, en el orden creciente del modo de predicción intra, el modo vertical, horizontal y DC puede mapearse a un modo de predicción intra, pero los aspectos no se limitan a los mismos.
[0164] En el mapeo de un modo de predicción intra, mapeando modos de predicción intra basándose en el orden de frecuencia de aparición del modo de predicción intra, que puede usarse en un bloque actual, la información de modo de predicción intra de un bloque actual puede expresarse con un menor número de bits cuando se lleva a cabo codificación binaria para transferir información de modo de predicción intra. De este modo, un número menor de bits puede mapearse a un modo de predicción intra que tiene una frecuencia de ocurrencia más alta. Puede determinarse si un segundo bloque vecino está disponible en la operación S430.
[0165] Si existe un segundo bloque vecino a la izquierda de un bloque actual y el segundo bloque vecino realiza la predicción basándose en un modo de predicción intra, se determina que el segundo bloque vecino está disponible.
[0166] Si el segundo bloque vecino está no disponible, el modo de predicción intra del segundo bloque vecino puede configurarse para ser ‘-1’ en la operación S440.
[0167] Al configurar el modo de predicción intra del segundo bloque vecino como ‘-1’, se puede indicar la no disponibilidad del segundo bloque vecino. También es posible indicar la disponibilidad del segundo bloque vecino usando un valor diferente de ‘-1’.
[0168] El modo de predicción intra del segundo bloque vecino puede expresarse usando un elemento sintáctico neg_intra_mode[1]; si neg_intra_mode [1] es ‘-1’, indica que el segundo bloque vecino no está disponible.
[0169] Si el segundo bloque vecino está disponible, el modo de predicción intra del segundo bloque vecino se usa como el segundo modo de predicción intra candidato en la operación S450.
[0170] Basándose en el elemento sintáctico neg_intra_mode [1], puede representarse el modo de predicción intra del segundo bloque vecino. El modo de predicción intra del segundo bloque vecino almacenado en el elemento sintáctico neg_intra_mode [1] puede configurarse como un segundo modo de predicción intra candidato y de este modo puede usarse para predecir el modo de predicción intra de un bloque actual. Por ejemplo, si dos modos de predicción intra candidatos se derivan a partir de bloques vecinos, el modo de predicción intra de un primer bloque vecino puede usarse para el primer modo de predicción intra candidato y el modo de predicción intra de un segundo bloque vecino puede usarse para el segundo modo de predicción intra candidato.
[0171] En las siguientes realizaciones de la presente invención, los elementos sintácticos predeterminados pueden definirse por diferentes variables o pueden representarse combinándose con diferente información de elementos sintácticos dentro de los principios técnicos de la presente invención. Además, los valores asignados a elementos sintácticos pueden ser arbitrarios; la misma información puede representarse por diferentes valores.
[0172] La tabla 2 ilustra el número de modos de predicción intra que están soportados de acuerdo con el tamaño de un bloque de predicción.
[0173] <Tabla 2>
[0175]
[0177] Con referencia a la tabla 2, si el tamaño de un bloque de transformada es 4x4, como se muestra en el mapeo de la figura 1, se pueden usar 18 modos de predicción intra que varían de 0 a 17. En casos de bloque de transformada de 8x8, 16x16 y 32x32, pueden usarse 35 modos de predicción intra que varían de 0 a 34, y en caso de 64x64, pueden usarse cuatro modos de predicción intra que varían de 0 a 3.
[0178] El tamaño de un bloque actual y el tamaño de un bloque vecino pueden diferir entre sí. Por lo tanto, si el número de modos de predicción disponibles es diferente entre el bloque actual y el bloque vecino, para obtener un primer y un segundo modo de predicción intra candidatos para predecir el modo de predicción intra del bloque actual, los modos de predicción intra candidatos primero y segundo tienen que calcularse variando el modo de predicción intra de los bloques vecinos basándose en el número de modos de predicción intra disponibles del bloque actual.
[0179] La figura 5 es un diagrama de flujo que ilustra un método de cambio de un modo de predicción intra de un bloque vecino basándose en un bloque actual de acuerdo con una realización ejemplar de la presente invención.
[0180] Si el número de modos de predicción intra disponibles varía de acuerdo con el tamaño de un bloque de predicción, un modo de predicción intra usado por un bloque vecino puede no usarse como un modo de predicción intra candidato usado para predecir el modo de predicción intra de un bloque actual. En este caso, se puede usar un modo de predicción intra candidato derivado después de que sea transformado para que se ajuste al tamaño del bloque actual.
[0181] Con referencia a la figura 5, se puede determinar si un modo de predicción intra de un bloque vecino es mayor o igual que el número de modos de predicción intra disponibles para el bloque actual en la operación S500.
[0182] Basándose en la determinación de si un modo de predicción intra de un primer bloque vecino o un modo de predicción intra de un segundo bloque vecino es mayor o igual que el número de modos de predicción intra disponibles para el bloque actual, puede determinarse si cambiar el modo de predicción intra del primer bloque vecino o el modo de predicción intra del segundo bloque vecino.
[0183] El elemento sintáctico neg_intra_mode[i] puede representar el modo de predicción intra de un bloque vecino y el elemento sintáctico intra_pred_mode_num puede representar el número de modos de predicción intra disponibles para el bloque actual.
[0184] Si un modo de predicción intra de un primer bloque vecino o un modo de predicción intra de un segundo bloque vecino es mayor o igual que el número de modos de predicción intra disponibles del bloque actual, puede determinarse si el número de modos de predicción intra disponibles del bloque actual es, por ejemplo, cuatro en la operación S510.
[0185] Al determinar el número de modos de predicción intra disponibles para el bloque actual, el modo de predicción intra del primer bloque vecino o el modo de predicción intra del segundo bloque vecino pueden variarse de acuerdo con el modo de predicción intra disponible para el bloque actual.
[0186] En la operación S510, por conveniencia de la descripción, se puede determinar si el número de modos de predicción intra disponibles del bloque actual es cuatro o no. Si se determina que el número de modos de predicción intra disponibles del bloque actual es cuatro, puede realizarse la operación S520. Si se determina que el número de modos de predicción intra disponibles del bloque actual no es cuatro, puede determinarse que el número de modos de predicción intra disponibles del bloque actual es 18 y puede realizarse la operación S530. El modo de predicción intra del primer o el segundo bloque vecino puede variarse basándose en la determinación de si el número de modos de predicción intra disponibles del bloque actual es 18.
[0187] Si el número de modos de predicción intra disponibles del bloque actual es cuatro, usando una tabla de mapeo, que mapea el modo de predicción intra del primer bloque vecino o el modo de predicción intra del segundo bloque vecino basándose en los modos de predicción intra disponibles del bloque actual, puede variarse el modo de predicción intra del primer bloque vecino o el modo de predicción intra del segundo bloque vecino.
[0188] Las tablas 3 y 4 a continuación ilustran tablas de mapeo de modo de predicción intra de acuerdo con una realización ejemplar de la presente invención.
[0189] <Tabla 3>
[0191]
[0193] <Tabla 4>
[0195]
[0197] Con referencia a las tablas 3 y 4, si el número de modos de predicción disponibles del bloque actual es cuatro, mediante el uso del modo de predicción intra calculado por el elemento sintáctico mapIntraPredMode4[], el modo de predicción intra del bloque vecino puede convertirse en los modos de predicción disponibles para el bloque actual.
[0198] Además, si el número de modos de predicción disponibles del bloque actual es 18, usando el modo de predicción intra calculado por el elemento sintáctico mapIntraPredMode10[], el modo de predicción intra del bloque vecino puede convertirse en los modos de predicción disponibles para el bloque actual.
[0199] La tabla de mapeo de modo de predicción intra de la tabla 3 es un ejemplo de tabla de mapeo generada de una manera tal que muchos de los modos de predicción disponibles para el bloque actual se mapean en modo 0 (modo plano), mientras que la tabla de mapeo de modo de predicción intra de la tabla 4 es un ejemplo de tabla de mapeo generada de una manera tal que muchos de los modos de predicción disponibles del bloque actual se mapean en modo 4 (modo DC). En otras palabras, si la tabla 3 se emplea como la tabla de mapeo de modo de predicción intra, el modo de predicción intra del primer bloque vecino o el modo de predicción intra del segundo bloque vecino no disponible para el bloque actual se mapean, con una frecuencia relativamente grande, al modo plano. Además, si se emplea la tabla 4 como la tabla de mapeo de modo de predicción intra, el modo de predicción intra del primer bloque vecino o el modo de predicción intra del segundo bloque vecino no disponible para el bloque actual se mapean, con una frecuencia relativamente grande, al modo DC.
[0200] Basándose en la tabla de mapeo de modo de predicción intra, el modo de predicción intra del primer bloque vecino o el modo de predicción intra del segundo bloque vecino se cambia a al menos uno de cuatro modos de predicción en la operación S520.
[0201] Basándose en la tabla de mapeo de modo de predicción intra, el modo de predicción intra del primer bloque vecino o el modo de predicción intra del segundo bloque vecino se cambia a al menos uno de diez modos de predicción en la operación S530.
[0202] En las operaciones de S520 y S530, en base a una tabla de mapeo de predicción intra predeterminada descrita en las tablas 3 y 4, respectivamente, un modo de predicción intra de un bloque vecino puede mapearse en uno de los modos de predicción intra disponibles para un bloque actual.
[0203] probMode[i] es un elemento sintáctico que representa un modo de predicción intra de un primer bloque vecino o un modo de predicción intra de un segundo bloque vecino, y puede usarse como información que indica un modo de predicción intra candidato de un bloque actual.
[0204] Si el modo de predicción intra del primer bloque vecino o el modo de predicción intra del segundo bloque vecino es menor que el número de modos de predicción intra disponibles para un bloque actual, el modo de predicción intra del primer bloque vecino o el modo de predicción intra del segundo bloque vecino se usa directamente como información para predecir el modo de predicción intra del bloque actual en la operación S540.
[0205] Si el modo de predicción intra del primer bloque vecino o el modo de predicción intra del segundo bloque vecino es menor que el número de modos de predicción intra disponibles para un bloque actual, sin cambiar el modo de predicción intra del primer bloque vecino o el modo de predicción intra del segundo bloque vecino, el modo de predicción intra del primer bloque vecino o el modo de predicción intra del segundo bloque vecino puede usarse directamente como un modo de predicción intra candidato.
[0206] La figura 6 es un diagrama de flujo que ilustra un método para derivar un primer modo de predicción intra candidato y un segundo modo de predicción intra candidato de acuerdo con una realización ejemplar de la presente invención.
[0207] Con referencia a la figura 6, se puede determinar si un modo de predicción intra de un primer bloque vecino y un modo de predicción intra de un segundo bloque vecino están disponibles en la operación S600.
[0208] Basándose en el procedimiento descrito con referencia a la figura 5 y basándose en el número de modos de predicción intra candidatos para un bloque actual, puede determinarse si convertir el modo de predicción intra del primer bloque vecino o el modo de predicción intra del segundo bloque vecino.
[0209] Es decir, en la operación S600, se puede determinar si el modo de predicción intra del primer bloque vecino o el modo de predicción intra del segundo bloque vecino se pueden usar como un primer o un segundo modo de predicción intra candidato. Si cualquier modo de predicción intra candidato no puede derivarse del modo o modos de predicción intra de los bloques vecinos primero y segundo, el primer o el segundo modo de predicción candidato puede establecerse en al menos un modo de predicción intra de entre modos de predicción intra secuenciales adicionales.
[0210] Se determina si un modo de predicción intra de un primer bloque vecino difiere de un modo de predicción intra de un segundo bloque vecino en la operación S610.
[0211] Si el modo de predicción intra del primer bloque vecino no es idéntico al modo de predicción intra del segundo bloque vecino, un primer modo de predicción intra candidato se establece igual al modo de predicción intra del primer bloque vecino, y un segundo modo de predicción intra candidato se establece igual al modo de predicción intra del segundo bloque vecino. Basándose en el primer modo de predicción intra candidato y el segundo modo de predicción intra candidato, un modo de predicción intra candidato adicional se deriva a partir del modo de predicción intra adicional secuencial en la operación S620.
[0212] Como se ha descrito anteriormente, si el primer modo de predicción intra candidato y el segundo modo de predicción intra candidato pueden derivarse de modos de predicción intra de bloques vecinos y ninguno de los modos de predicción intra candidatos primero y segundo es un modo plano, un tercer modo de predicción intra candidato se establece igual al modo plano como un modo de predicción intra candidato del bloque actual. Si uno de los modos de predicción intra candidatos primero y segundo es el modo plano, y el otro no es un modo DC, el tercer modo de predicción intra candidato se establece igual al modo DC. Además, si uno de los modos de predicción intra candidatos primero y segundo es el modo plano, y el otro es el modo DC, el tercer modo de predicción intra candidato se establece igual a un modo vertical.
[0213] Como otro ejemplo, se pueden usar cuatro modos de predicción intra candidatos como modos de predicción intra candidatos para un bloque actual.
[0214] Por ejemplo, un primer modo de predicción intra candidato y un segundo modo de predicción intra candidato pueden derivarse de bloques vecinos. Si el primer modo de predicción intra candidato y el segundo modo de predicción intra candidato no son ni un modo plano ni un modo DC, un tercer modo de predicción intra candidato puede derivarse al modo plano y un cuarto modo de predicción intra puede derivarse al modo DC.
[0215] Como otro ejemplo, si uno de los modos de predicción intra candidatos primero y segundo es el modo plano y el otro no es un modo DC, el modo DC puede derivarse al tercer modo de predicción intra candidato y el modo vertical puede derivarse al cuarto modo de predicción intra candidato.
[0216] Además, si los dos de los modos de predicción intra candidatos primero y segundo son el modo plano y el modo DC, respectivamente, el tercer modo de predicción intra candidato puede establecerse igual a un modo vertical y el cuarto modo de predicción intra candidato puede establecerse igual a un modo horizontal.
[0217] Si el modo de predicción intra del primer bloque vecino es idéntico al modo de predicción intra del segundo bloque vecino, el primer modo de predicción intra candidato se establece igual al modo de predicción intra del primer bloque vecino o al modo de predicción intra del segundo bloque vecino. Basándose en el primer modo de predicción intra candidato, pueden derivarse modos de predicción intra candidatos adicionales a partir de modo o modos de predicción intra adicionales secuenciales, en la operación S630.
[0218] Si el modo de predicción intra del primer bloque vecino es el mismo que el modo de predicción intra del segundo bloque vecino, solo el primer modo de predicción intra candidato puede establecerse igual al mismo modo de predicción intra.
[0219] Como se ha descrito anteriormente, si solo un modo de predicción intra candidato puede derivarse del mismo modo de predicción intra de bloques vecinos, los modos de predicción intra candidatos restantes pueden derivarse de modo o modos de predicción intra adicionales secuenciales.
[0220] Como se ha descrito anteriormente, cuando se lleva a cabo predicción modo intra usando tres modos de predicción intra candidatos, el primer modo de predicción intra candidato puede establecerse igual o bien al modo de predicción intra del primer bloque vecino o bien al modo de predicción intra del segundo bloque vecino, donde ambos modos de predicción intra son los mismos.
[0221] Si el primer modo de predicción intra candidato no es un modo plano, el segundo modo de predicción intra candidato puede establecerse igual a un modo plano y el tercer modo de predicción intra candidato puede establecerse igual a un modo DC. Si el primer modo de predicción intra candidato es un modo plano, el segundo modo de predicción intra candidato puede establecerse igual a un modo DC y el tercer modo de predicción intra candidato puede establecerse igual a un modo vertical.
[0222] De manera similar, en caso de usar cuatro modos de predicción intra candidatos, si el primer modo de predicción intra candidato no es un modo plano, el segundo modo de predicción intra candidato puede establecerse igual a un modo plano. Si el primer modo de predicción intra candidato no es un modo plano, los modos de predicción intra candidatos tercero y cuarto pueden determinarse de la siguiente manera.
[0223] 1) Se puede determinar si el primer modo de predicción intra candidato es un modo DC, un modo vertical o un modo horizontal y, si el primer modo de predicción intra candidato no es el modo DC, el modo vertical o el modo horizontal, el tercer modo de predicción intra candidato puede establecerse igual al modo DC y el cuarto modo de predicción intra candidato puede establecerse igual a un modo vertical.
[0224] 2) Se puede determinar si el primer modo de predicción intra candidato es un modo DC, un modo vertical o un modo horizontal y el primer modo de predicción intra candidato puede ser el mismo que un modo de predicción intra entre el modo DC, el modo vertical o el modo horizontal. En este caso, el modo de predicción intra restante diferente del mismo modo de predicción intra puede derivarse secuencialmente al tercer modo de predicción intra candidato y luego al cuarto modo de predicción intra candidato.
[0225] Puede determinarse si todos los bloques vecinos primero y segundo están no disponibles en la operación S640. Si solo un bloque vecino de los bloques vecinos primero y segundo está disponible, el modo de predicción intra del bloque vecino disponible del primer bloque vecino o del segundo bloque vecino se deriva en el primer modo de predicción intra candidato y, usando el modo de predicción intra del primer modo de predicción intra candidato, el modo de predicción intra del primer o segundo bloque vecino disponible puede derivarse en un modo de predicción intra candidato basándose en modos de predicción intra predeterminados en la operación S650.
[0226] De manera similar a la operación S630, si solo un bloque vecino de los bloques vecinos primero y segundo está disponible, el modo de predicción intra del bloque vecino disponible puede derivarse al primer modo de predicción intra candidato.
[0227] Llevando a cabo el mismo procedimiento que se describe en la operación S630, los modos de predicción intra candidatos restantes pueden configurarse para ser tres modos de predicción intra candidatos o cuatro modos de predicción intra candidatos.
[0228] Si los dos modos de predicción vecinos están todos no disponibles, usando un modo de predicción intra adicional secuencial, el modo de predicción intra candidato puede derivarse en la operación S661.
[0229] Por ejemplo, si se usan tres modos de predicción intra candidatos para predecir el modo de predicción intra de un bloque actual, el primer modo de predicción intra candidato puede derivarse en un modo plano; el segundo modo de predicción intra candidato puede derivarse en un modo DC; y el tercer modo de predicción intra candidato puede derivarse en un modo vertical. Como otro ejemplo, si se usan cuatro modos de predicción intra candidatos para predecir el modo de predicción intra del bloque actual, el primer modo de predicción intra candidato puede derivarse en un modo plano; el segundo modo de predicción intra candidato puede derivarse en un modo DC; el tercer modo de predicción intra candidato puede derivarse en un modo vertical; y el cuarto modo de predicción intra candidato puede derivarse en un modo horizontal.
[0230] La figura 7 es un diagrama de flujo que ilustra un método de mapeo de información sobre un modo de predicción intra de un bloque actual en una palabra de código de acuerdo con una realización ejemplar de la presente invención.
[0231] La figura 7 es un diagrama de flujo destinado al caso en el que se usan tres modos de predicción intra candidatos para predecir el modo de predicción intra para un bloque actual.
[0232] Con referencia a la figura 7, se puede determinar si el modo de predicción intra de un bloque actual es el mismo que un primer modo de predicción intra candidato o un segundo modo de predicción intra candidato en la operación S700.
[0233] Si el modo de predicción intra de un bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato, 1 puede asignarse a una palabra de código en la operación S710, mientras que, si el modo de predicción intra de un bloque actual no es el mismo que el primer modo de predicción intra candidato y el modo de predicción intra del bloque actual no es el mismo que el segundo modo de predicción intra candidato, 0 puede asignarse a una palabra de código en la operación S720.
[0234] Se puede determinar si el modo de predicción intra de un bloque actual es el mismo que el primer modo de predicción intra candidato en la operación S730; si se encuentra que es idéntico entre sí, se puede asignar adicionalmente 0 a la palabra de código en la operación S740. Si se encuentra que es diferente, 1 puede asignarse adicionalmente a la palabra de código en la operación S751.
[0235] Puede determinarse si el modo de predicción intra de un bloque actual es el mismo que el tercer modo de predicción intra candidato en la operación S761.
[0236] Si se determina que el modo de predicción intra de un bloque actual es el mismo que el tercer modo de predicción intra candidato, 0 puede asignarse adicionalmente a la palabra de código en la operación S770. Si se determina que el modo de predicción intra de un bloque actual no es el mismo que el tercer modo de predicción intra candidato, 1 puede asignarse adicionalmente a la palabra de código en la operación S788. Si se determina que el modo de predicción intra de un bloque actual no es el mismo que el tercer modo de predicción intra candidato, puede asignarse una palabra de código correspondiente a la información de modo de predicción intra restante en la operación S790.
[0237] Para indicar el modo de predicción intra del bloque actual, la información de modo de predicción restante puede mapearse a la palabra de código y puede asignarse una palabra de código correspondiente al modo de predicción intra, que corresponde al modo de predicción intra del bloque actual. La palabra de código correspondiente al modo de predicción intra, que corresponde al modo de predicción intra del bloque actual, puede codificarse y decodificarse basándose en un elemento sintáctico rem_intra_pred_mode (en lo sucesivo, el modo de predicción intra restante se usa como el término del mismo significado que rem_intra_pred_mode). La tabla 5 ilustra el mapeo entre el modo de predicción intra de un bloque actual y la palabra de código de acuerdo con el procedimiento descrito anteriormente.
[0238] <Tabla 5>
[0240]
[0242] Con referencia a la tabla 5, si el modo de predicción intra de un bloque actual es idéntico a un primer modo de predicción intra candidato, un segundo modo de predicción intra candidato o un tercer modo de predicción intra candidato, el modo de predicción intra del bloque actual puede expresarse usando dos bits de palabra de código. En caso de que el modo de predicción intra de un bloque actual sea diferente del primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato, el modo de predicción intra del bloque actual puede indicarse basándose en los dos bits de palabra de código a los que se añade un valor de bit asignado a rem_intra_pred_mode.
[0243] La palabra de código asignada a rem_intra_pred_mode que corresponde al modo de predicción intra restante, puede variar. La palabra de código asignada al modo de predicción intra restante se genera comparando el modo de predicción intra del bloque actual con el primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato.
[0244] En la etapa de codificación, el modo de predicción intra restante puede asignarse como una nueva palabra de código. El modo de predicción intra del bloque actual puede compararse con el primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato. Puede determinarse si el modo de predicción del bloque actual es mayor que el primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato. Si se determina que uno del primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato es mayor que el modo de predicción del bloque actual, la relación de mapeo entre el modo de predicción intra del bloque actual y la palabra de código puede cambiar. En otras palabras, el modo de predicción intra de un bloque actual codificado basándose en el modo de predicción intra restante (rem_intra_pred_mode) puede corresponder al valor calculado como resultado de comparar el modo de predicción intra de un bloque actual con el primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato.
[0245] En otras palabras, si el modo de predicción intra de un bloque actual es diferente del primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato, basándose en información de elemento sintáctico adicional que incluye el modo de predicción intra del bloque actual, puede derivarse el modo de predicción intra del bloque actual.
[0246] Además, se puede cambiar el modo de predicción intra derivado comparando el modo de predicción intra derivado decodificando información que representa el mismo modo de predicción intra que el modo de predicción intra del bloque actual con el primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato.
[0247] En un método de determinación de información de modo de predicción intra, si se emplea un bloque actual de tamaño 64x64, la palabra de código según el modo de predicción intra de un bloque actual puede mapearse como se ilustra en la tabla 6.
[0248] <Tabla 6>
[0250]
[0252] Haciendo referencia a la tabla 6, dado que los modos de predicción intra disponibles son cuatro cuando se emplea un bloque actual de tamaño 64x64, la información de modo de predicción intra del bloque actual puede representarse con dos bits fijos sin emplear un proceso de determinación de si el modo de predicción intra del bloque actual es el mismo que el primer modo de predicción intra candidato y el segundo modo de predicción intra candidato.
[0253] Aunque, por conveniencia de la descripción, la figura 7 ilustra el caso en el que se usan tres modos de predicción intra candidatos, el modo de predicción intra de un bloque actual puede expresarse basándose en tres o más modos de predicción intra candidatos.
[0254] La tabla 7, la tabla 8 y la tabla 9 ilustran la palabra de código y el modo de predicción intra candidato actual cuando se usan cuatro modos de predicción intra candidatos.
[0255] <Tabla 7>
[0257]
[0259] <Tabla 8>
[0261]
[0263] <Tabla 9>
[0265]
[0267] La sintaxis no se limita a su convención de llamadas, y la sintaxis puede variar dentro de los principios técnicos de la presente invención. Por ejemplo, por conveniencia de descripción o tecnología, candMPM[0] puede indicarse por MPM1; candMPM[1], por MPM2; candMPM[2], por MPM3; y candMPM[3], por MPM4; y rem_intra_pred_mode puede expresarse simplemente por rem.
[0268] La figura 8 es un diagrama de flujo que ilustra un método de decodificación de un modo de predicción intra actual de acuerdo con una realización ejemplar de la presente invención.
[0269] Con referencia a la figura 8, se puede determinar si el modo de predicción intra de un bloque actual es el mismo que un primer modo de predicción intra candidato o un segundo modo de predicción intra candidato en la operación S800.
[0270] Para determinar si el modo de predicción intra de un bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato, puede usarse prev_intra_pred_flag que es la información de indicador que indica si el modo de predicción intra del bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato.
[0271] Por ejemplo, si prev_intra_pred_flag es 1, indica que el modo de predicción intra del bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato; si prev_intra_pred_flag es 0, indica que el modo de predicción intra del bloque actual es diferente del primer modo de predicción intra candidato o del segundo modo de predicción intra candidato.
[0272] En el caso de que prev_intra_pred_flag sea 1, usando un índice mpm_idx, que indica si el modo de predicción intra del bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato, puede expresarse el modo de predicción intra del bloque actual.
[0273] mpm_idx se comprueba en la operación S810 y, si mpm_idx es 0, se puede determinar que el modo de predicción intra del bloque actual es el primer modo de predicción intra candidato en la operación S820. Si mpm_idex es 1, se puede determinar que el modo de predicción intra del bloque actual es el segundo modo de predicción intra candidato en la operación S830.
[0274] Si prev_intra_pred_flag es 0, en base a la información de indicador predeterminada que indica adicionalmente si un modo de predicción intra de un bloque actual corresponde al modo de predicción intra restante, el modo de predicción intra del bloque actual puede calcularse en la operación S840.
[0275] En el caso de que prev_intra_pred_flag sea 0, en base a la información de indicador predeterminada (rem_flag) que indica adicionalmente si un modo de predicción intra de un bloque actual corresponde al modo de predicción intra restante, si rem_flag es 0, el modo de predicción intra del bloque actual es el mismo que el tercer modo de predicción intra candidato en la operación S850. Si rem_flag es 1, el modo de predicción intra del bloque actual es el mismo que el modo de predicción intra restante en la operación S861.
[0276] En otras palabras, en la etapa de decodificación, se recibe la palabra de código descrita en la tabla 5 y, en base a la palabra de código recibida, se puede decodificar el modo de predicción intra del bloque actual.
[0277] La palabra de código asignada a rem_intra_pred_mode puede cambiarse en la operación S870.
[0278] En la etapa de decodificación, de la misma manera que en la etapa de codificación, el modo de predicción intra restante puede asignarse como una nueva palabra de código. El modo de predicción intra del bloque actual puede compararse con el primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato. Puede determinarse si el modo de predicción del bloque actual es mayor que el primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato. Si se determina que uno del primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato es mayor que el modo de predicción del bloque actual, la relación de mapeo entre el modo de predicción intra del bloque actual y la palabra de código puede cambiar. En otras palabras, el modo de predicción intra de un bloque actual calculado basándose en el modo de predicción intra restante (rem_intra_pred_mode) puede corresponder al valor calculado como resultado de comparar el modo de predicción intra restante con el primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato.
[0279] En un método de determinación de una información de modo de predicción intra de acuerdo con una realización de la presente invención, si se emplea el bloque de transformada de tamaño 64x64 y se mapean el modo de predicción intra de un bloque actual y la palabra de código como se muestra en la figura 6, la información de modo de predicción intra del bloque actual puede representarse con dos bits fijos sin emplear un método de determinación de si el modo de predicción intra del bloque actual es el mismo que el primer modo de predicción intra candidato y el segundo modo de predicción intra candidato.
[0280] En otras palabras, de acuerdo con una realización de la presente invención, se puede decodificar información que indica si un modo de predicción intra de un bloque actual es el mismo que uno del primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato.
[0281] Si el modo de predicción intra de un bloque actual es el mismo que uno del primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato, puede derivarse el modo de predicción intra candidato idéntico al modo de predicción intra del bloque actual y, basándose en el mismo modo de predicción intra candidato, puede llevarse a cabo la predicción intra sobre el bloque actual.
[0282] Mientras tanto, en la descripción de la figura 8, si prev_intra_pred_flag es 1, indica que el modo de predicción intra del bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato y realiza la operación S810. Si prev_intra_pred_flag es 0, indica que el modo de predicción intra del bloque actual es diferente del primer modo de predicción intra candidato y el segundo modo de predicción intra candidato y realiza la operación S840.
[0283] Sin embargo, la indicación de un indicador descrito en realizaciones ejemplares de la presente invención se determina solo por conveniencia de la descripción y, de este modo, un valor lógico del correspondiente indicador o el valor indicado por el indicador no se limita a un valor particular. Por ejemplo, la prev_intra_pred_flag 0 puede indicar que el modo de predicción intra del bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato, y la prev_intra_pred_flag 1 puede indicar que el modo de predicción intra del bloque actual es diferente del primer modo de predicción intra candidato y del segundo modo de predicción intra candidato. De manera similar, como se describió anteriormente, se puede configurar de tal manera que si rem_flag es 1, el modo de predicción intra del bloque actual puede ser el mismo que el modo de predicción intra restante; si rem_flag es 0, el modo de predicción intra del bloque actual puede ser el mismo que el tercer modo de predicción intra candidato; si rem_flag es 0, el modo de predicción intra del bloque actual puede ser el mismo que el modo de predicción intra restante; y si rem_flag es 1, el modo de predicción intra del bloque actual puede ser el mismo que el tercer modo de predicción intra candidato. Si se cambia el valor del indicador, el indicador en cada etapa puede indicar lo que se aplica a un bloque actual con respecto a la información que se va a identificar en la etapa correspondiente.
[0284] La figura 9 a la figura 13 son diagramas de flujo que ilustran un caso en el que se usan tres o cuatro modos de predicción intra candidatos para un método de determinación de un modo de predicción intra candidato usando una pluralidad de modos de predicción intra candidatos de acuerdo con otra realización de la presente invención. Al describir un procedimiento de determinación predeterminado de un diagrama de flujo que se describirá a continuación, un procedimiento secuencial que se describirá se determina en un orden aleatorio por conveniencia de la descripción; por lo tanto, a menos que se salga de otro modo del alcance de la presente invención, se puede usar un procedimiento de determinación en un orden diferente del orden procedimental descrito a continuación para determinar un modo de predicción intra candidato.
[0285] La figura 9 es un diagrama de flujo que ilustra un método de configuración de un modo de predicción intra candidato disponible a partir de un bloque vecino de acuerdo con una realización de la presente invención. Con referencia a la figura 9, se determina si un modo de predicción intra de un primer bloque vecino y un modo de predicción intra de un segundo bloque vecino están disponibles S900.
[0286] En caso de que estén disponibles un modo de predicción intra de un primer bloque vecino y un modo de predicción intra de un segundo bloque vecino y el modo de predicción intra pueda derivarse para cada uno de los bloques vecinos, se determina si el modo de predicción intra del primer bloque vecino y el modo de predicción intra del segundo bloque vecino son iguales entre sí S910.
[0287] En caso de que el modo de predicción intra del primer bloque vecino y el modo de predicción intra del segundo bloque vecino estén disponibles y el modo de predicción intra del primer bloque vecino y el modo de predicción intra del segundo bloque vecino sean iguales entre sí, el mismo modo de predicción intra se deriva como el primer modo de predicción intra candidato S920.
[0288] Se determina si el modo de predicción intra del primer bloque vecino es menor que el modo de predicción intra del segundo bloque vecino S930.
[0289] En caso de que el modo de predicción intra del primer bloque vecino sea mayor que el modo de predicción intra del segundo bloque vecino, el modo de predicción intra del segundo bloque vecino se deriva en el primer modo de predicción intra candidato mientras que el modo de predicción intra del primer bloque vecino se deriva en el segundo modo de predicción intra candidato S940.
[0290] En caso de que el modo de predicción intra del primer bloque vecino sea menor que el modo de predicción intra del segundo bloque vecino, el modo de predicción intra del primer bloque vecino se deriva en el primer modo de predicción intra candidato mientras que el modo de predicción intra del segundo bloque vecino se deriva en el segundo modo de predicción intra candidato S950.
[0291] Se determina si solo el modo de predicción intra del primer bloque vecino está disponible S955; en caso de que solo el modo de predicción intra del primer bloque vecino esté disponible, el modo de predicción intra del primer bloque vecino se deriva en el primer modo de predicción intra candidato S960, S985.
[0292] Se determina si solo el modo de predicción intra del segundo bloque vecino está disponible S965; en el caso en el que solo el modo de predicción intra del segundo bloque vecino está disponible, el modo de predicción intra del segundo bloque vecino se deriva en el primer modo de predicción intra candidato S970, S985.
[0293] En caso de que no haya disponible ninguno del modo de predicción intra del primer bloque vecino y el modo de predicción intra del segundo bloque vecino, un modo plano se deriva como el primer modo de predicción intra candidato mientras que el modo de DC como el segundo modo de predicción intra candidato S975, S985.
[0294] La figura 10 es un diagrama de flujo que ilustra un método para derivar un modo de predicción intra candidato cuando se usan tres modos de predicción intra candidatos y un primer modo de predicción intra candidato se deriva a partir de un bloque vecino de acuerdo con otra realización de la presente invención.
[0295] Con referencia a la figura 10, se determina si un primer modo de predicción intra candidato es un modo plano S1000.
[0296] Si el primer modo de predicción intra candidato es un modo plano, un segundo modo de predicción intra candidato se deriva en un modo DC mientras que un tercer modo de predicción intra candidato se deriva en un modo vertical S1010.
[0297] Si el primer modo de predicción intra candidato no es un modo plano, se determina si el primer modo de predicción intra candidato es un modo DC S1020.
[0298] Si el primer modo de predicción intra candidato es un modo DC, el segundo modo de predicción intra candidato se deriva en un modo plano mientras que los terceros modos de predicción intra candidatos se derivan en un modo vertical S1030.
[0299] Si el primer modo de predicción intra candidato no es un modo DC, el segundo modo de predicción intra candidato se deriva en un modo plano mientras que los terceros modos de predicción intra candidatos se derivan en un modo DC S1040.
[0300] La figura 11 es un diagrama de flujo que ilustra un método para derivar un modo de predicción intra candidato cuando se usan tres modos de predicción intra candidatos y un primer modo de predicción intra candidato y un segundo modo de predicción intra candidato se derivan a partir de un bloque vecino de acuerdo con otra realización de la presente invención.
[0301] Se determina si un primer modo de predicción intra candidato es un modo plano S1100.
[0302] Si el primer modo de predicción intra candidato es un modo plano, se determina si un segundo modo de predicción intra es un modo DC S1110.
[0303] Si el primer modo de predicción intra candidato es un modo plano y el segundo modo de predicción intra candidato es un modo DC, un tercer modo de predicción intra candidato se deriva en un modo vertical S1120. Si el primer modo de predicción intra candidato es un modo plano y el segundo modo de predicción intra candidato no es un modo DC, el segundo modo de predicción candidato se deriva en un modo DC S1130.
[0304] Si el primer modo de predicción intra candidato no es un modo plano, el tercer modo de predicción intra candidato se deriva en un modo plano S1140.
[0305] La figura 12 es un diagrama de flujo que ilustra un método de configuración de un modo de predicción intra candidato cuando se usan cuatro modos de predicción intra candidatos y se configura un primer modo de predicción intra candidato a partir de un bloque vecino de acuerdo con otra realización más de la presente invención.
[0306] Se determina si un primer modo de predicción intra candidato es un modo plano S1200.
[0307] Si el primer modo de predicción intra candidato es un modo plano, un segundo modo de predicción intra candidato se deriva en un modo DC; un tercer modo de predicción intra candidato se deriva en un modo vertical; y un cuarto modo de predicción intra candidato se deriva en un modo horizontal S1210.
[0308] Si el primer modo de predicción intra candidato no es un modo plano, se determina si el primer modo de predicción intra candidato es un modo DC S1220.
[0309] Si el primer modo de predicción intra candidato es un modo DC, el segundo modo de predicción intra candidato se deriva en un modo plano; el tercer modo de predicción intra candidato se deriva en un modo vertical; y el cuarto modo de predicción intra candidato se deriva en un modo horizontal S1230.
[0310] Si el primer modo de predicción intra candidato no es un modo DC, se determina si el primer modo de predicción intra candidato es un modo vertical S1240.
[0311] Si el primer modo de predicción intra candidato es un modo vertical, el segundo modo de predicción intra candidato se deriva en un modo plano; el tercer modo de predicción intra candidato se deriva en un modo DC; y el cuarto modo de predicción intra candidato se deriva en un modo horizontal S1250.
[0312] Si el primer modo de predicción intra candidato no es un modo vertical, el segundo modo de predicción intra candidato se deriva en un modo plano; el tercer modo de predicción intra candidato se deriva en un modo DC; y el cuarto modo de predicción intra candidato se deriva en un modo vertical S1260.
[0313] La figura 13 es un diagrama de flujo que ilustra un método de configuración de un modo de predicción intra candidato cuando se usan cuatro modos de predicción intra candidatos y un primer modo de predicción intra candidato y un segundo modo de predicción intra candidato se configuran a partir de un bloque vecino de acuerdo con otra realización más de la presente invención.
[0314] Con referencia a la figura 13, se determina si un primer modo de predicción intra candidato es un modo plano S1300.
[0315] Si el primer modo de predicción intra candidato es un modo plano, se determina si un segundo modo de predicción intra candidato es un modo DC S1305.
[0316] Si el primer modo de predicción intra candidato es un modo plano y el segundo modo de predicción intra candidato es un modo DC, un tercer modo de predicción intra candidato se deriva en un modo vertical y un cuarto modo de predicción intra candidato se deriva en un modo horizontal S1310.
[0317] Si el primer modo de predicción intra candidato es un modo plano y el segundo modo de predicción intra candidato no es un modo DC, se determina si el segundo modo de predicción intra candidato es un modo vertical S1315.
[0318] Si el primer modo de predicción intra candidato es un modo plano y el segundo modo de predicción intra candidato es un modo vertical, el tercer modo de predicción intra candidato se deriva en un modo DC y el cuarto modo de predicción intra candidato se deriva en un modo horizontal S1320.
[0319] Si el primer modo de predicción intra candidato es un modo plano y el segundo modo de predicción intra candidato es un modo vertical pero no es un modo DC, el tercer modo de predicción intra candidato se deriva en un modo DC y el cuarto modo de predicción intra candidato se deriva en un modo vertical S1325.
[0320] Si el primer modo de predicción intra candidato no es un modo plano, se determina si el primer modo de predicción intra candidato es un modo vertical S1350.
[0321] Si el primer modo de predicción intra candidato es un modo vertical, se determina si el segundo modo de predicción intra candidato es un modo DC S1355.
[0322] Si el primer modo de predicción intra candidato es un modo vertical y el segundo modo de predicción intra candidato es un modo DC, el tercer modo de predicción intra candidato se deriva en un modo plano y el cuarto modo de predicción intra candidato se deriva en un modo horizontal S1360.
[0323] Si el primer modo de predicción intra candidato es un modo vertical y el segundo modo de predicción intra candidato no es un modo DC, el tercer modo de predicción intra candidato se configura para ser un modo plano y el cuarto modo de predicción intra candidato se configura para ser un modo DC S1380.
[0324] Se determina si el primer modo de predicción intra candidato es un modo DC S1370.
[0325] Si el primer modo de predicción intra candidato no es un modo DC, se determina si el segundo modo de predicción intra candidato es un modo DC S1375.
[0326] Si los modos de predicción intra candidatos primero y segundo no son un modo DC, el tercer modo de predicción intra candidato se deriva en un modo plano y el cuarto modo de predicción intra candidato se deriva en un modo DC S1380.
[0327] Si el primer modo de predicción intra candidato es un modo DC y si el segundo modo de predicción intra candidato es un modo DC aunque el primer modo de predicción intra candidato no es un modo DC, el tercer modo de predicción intra candidato se deriva en un modo plano y el cuarto modo de predicción intra candidato se deriva en un modo vertical S1390.
[0328] Mientras tanto, como se muestra en los ejemplos de las tablas 7 a 9, en caso de usar cuatro modos de predicción intra candidatos, también, un modo de predicción intra actual puede decodificarse de la misma manera que se describió anteriormente.
[0329] La figura 14 es un diagrama de flujo que ilustra un método de decodificación de un modo de predicción intra de un bloque actual de acuerdo con una realización adicional de la presente invención.
[0330] La realización de la figura 14 se refiere al caso en el que se emplean cuatro modos de predicción intra candidatos, que ilustra la realización para la que la relación de mapeo entre el modo de predicción intra de un bloque actual y la palabra de código descrita en la tabla 8.
[0331] Con referencia a la figura 14, se determina si el modo de predicción intra del bloque actual es idéntico a un primer modo de predicción intra candidato o a un segundo modo de predicción intra candidato.
[0332] Para determinar si el modo de predicción intra de un bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato, puede usarse prev_intra_pred_flag que es la información de indicador predeterminada que indica si el modo de predicción intra del bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato. En el caso de que prev_intra_pred_flag sea 1, indica que el modo de predicción intra del bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato; en el caso de que prev_intra_pred_flag sea 0, indica que el modo de predicción intra del bloque actual es diferente del primer modo de predicción intra candidato o el segundo modo de predicción intra candidato.
[0333] En el caso de que prev_intra_pred_flag sea 1, usando un índice mpm_idx que indica si el modo de predicción intra del bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato, puede derivarse el modo de predicción intra del bloque actual.
[0334] mpm_idx se comprueba y si mpm_idx es 0, el modo de predicción intra del bloque actual puede determinarse que es el primer modo de predicción intra candidato, mientras que, si mpm_idx es 1, el modo de predicción intra del bloque actual puede derivarse al segundo modo de predicción intra candidato.
[0335] En el caso de que prev_intra_pred_flag sea 0, se determina si el modo de predicción intra del bloque actual es el mismo que un tercer modo de predicción intra candidato o un cuarto modo de predicción intra candidato.
[0336] En el caso de que prev_intra_pred_flag sea 0, se puede usar rem_flag, que es la información de indicador predeterminada que indica si el modo de predicción intra de un bloque actual es idéntico a un tercer modo de predicción intra candidato o a un cuarto modo de predicción intra candidato. Como una realización, en caso de que rem_flag sea 0, el modo de predicción intra del bloque actual puede ser el mismo que el tercer modo de predicción intra candidato o el cuarto modo de predicción intra candidato, mientras que, en caso de que rem_flag sea 1, el modo de predicción intra del bloque actual puede no ser el mismo que el tercer modo de predicción intra candidato y el cuarto modo de predicción intra candidato.
[0337] En caso de que rem_flag sea 0, usando un índice mpm_idx que indica si el modo de predicción intra del bloque actual es el mismo que el tercer modo de predicción intra candidato o el cuarto modo de predicción intra candidato, puede expresarse el modo de predicción intra del bloque actual.
[0338] mpm_idx se comprueba y si mpm_idx es 0, el modo de predicción intra del bloque actual puede determinarse que es el tercer modo de predicción intra candidato, mientras que, si mpm_idx es 1, el modo de predicción intra del bloque actual puede derivarse al cuarto modo de predicción intra candidato.
[0339] En caso de que rem_flag sea 1, el modo de predicción intra del bloque actual puede ser idéntico al modo de predicción intra restante.
[0340] En otras palabras, un decodificador puede recibir la palabra de código descrita en la tabla 3 y/o la tabla 4; puede decodificar información de modo de predicción intra de un bloque actual asignado a la palabra de código correspondiente.
[0341] La figura 15 es un diagrama de flujo que ilustra un método de decodificación de un modo de predicción intra de un bloque actual de acuerdo con una realización adicional de la presente invención.
[0342] La realización de la figura 15 también ilustra un método de decodificación de un modo de predicción intra cuando se emplean cuatro modos de predicción intra candidatos. La figura 15 divulga un método de decodificación de un modo de predicción intra basado en la relación de mapeo entre el modo de predicción intra de un bloque actual y la palabra de código descrita en la tabla 9.
[0343] Con referencia a la figura 15, se determina si el modo de predicción intra del bloque actual es idéntico a un primer modo de predicción intra candidato o a un segundo modo de predicción intra candidato S1410.
[0344] Para determinar si el modo de predicción intra de un bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato, puede usarse prev_intra_pred_flag que es la información de indicador predeterminada que indica si el modo de predicción intra del bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato. En el caso de que prev_intra_pred_flag sea 1, indica que el modo de predicción intra del bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato; en el caso de que prev_intra_pred_flag sea 0, indica que el modo de predicción intra del bloque actual es diferente del primer modo de predicción intra candidato o el segundo modo de predicción intra candidato.
[0345] En el caso de que prev_intra_pred_flag sea 1, usando un índice mpm_idx que indica si el modo de predicción intra del bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato, puede derivarse el modo de predicción intra del bloque actual.
[0346] mpm_idx se comprueba S1420 y si mpm_idx es 0, el modo de predicción intra del bloque actual puede determinarse que es el primer modo de predicción intra candidato, mientras que, si mpm_idx es 1, el modo de predicción intra del bloque actual puede derivarse al segundo modo de predicción intra candidato.
[0347] En el caso de que prev_intra_pred_flag sea 0, se determina si el modo de predicción intra del bloque actual es el mismo que un tercer modo de predicción intra candidato o un cuarto modo de predicción intra candidato S1430. En el caso de que prev_intra_pred_flag sea 0, se puede usar rem_flag, que es la información de indicador predeterminada que indica si el modo de predicción intra de un bloque actual es idéntico a un tercer modo de predicción intra candidato o a un cuarto modo de predicción intra candidato. Como una realización, en caso de que rem_flag sea 1, el modo de predicción intra del bloque actual puede ser el mismo que el tercer modo de predicción intra candidato o el cuarto modo de predicción intra candidato, mientras que, en caso de que rem_flag sea 0, el modo de predicción intra del bloque actual puede no ser el mismo que el tercer modo de predicción intra candidato y el cuarto modo de predicción intra candidato.
[0348] En caso de que rem_flag sea 1, usando un índice mpm_idx que indica si el modo de predicción intra del bloque actual es el mismo que el tercer modo de predicción intra candidato o el cuarto modo de predicción intra candidato, puede expresarse el modo de predicción intra del bloque actual.
[0349] mpm_idx se comprueba S1440 y si mpm_idx es 0, el modo de predicción intra del bloque actual puede determinarse que es el tercer modo de predicción intra candidato, mientras que, si mpm_idx es 1, el modo de predicción intra del bloque actual puede derivarse al cuarto modo de predicción intra candidato.
[0350] En caso de que rem_flag sea 0, el modo de predicción intra del bloque actual puede ser idéntico al modo de predicción intra restante S1450.
[0351] En otras palabras, un decodificador puede recibir la palabra de código descrita en la tabla 3 y/o la tabla 4; puede decodificar información de modo de predicción intra de un bloque actual asignado a la palabra de código correspondiente.
[0352] El método de decodificación de un modo de predicción intra actual descrito en detalle anteriormente puede representarse mediante la sintaxis según una realización de la tabla 10. La tabla 10, que se refiere a lo que se ha descrito en la figura 15, es un ejemplo sobre un método de señalización de un elemento sintáctico necesario para codificar un modo de predicción intra actual.
[0353] <Tabla 10>
[0355]
[0357] La figura 16 es un diagrama de flujo que ilustra un método de decodificación de un modo de predicción intra actual de acuerdo con una realización adicional más de la presente invención.
[0358] La figura 16 también se refiere al caso de usar cuatro modos de predicción intra candidatos, que describen una realización que aplica una relación de mapeo entre el modo de predicción intra de un bloque actual y la palabra de código descrita en la tabla 9.
[0359] Con referencia a la figura 16, se determina si el modo de predicción intra del bloque actual es idéntico a un primer modo de predicción intra candidato MPM1 o un segundo modo de predicción intra candidato MPM2, S1510.
[0360] Para determinar si el modo de predicción intra de un bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato, puede usarse prev_intra_pred_flag que es la información de indicador predeterminada que indica si el modo de predicción intra del bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato. En el caso de que prev_intra_pred_flag sea 1, indica que el modo de predicción intra del bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato; en el caso de que prev_intra_pred_flag sea 0, indica que el modo de predicción intra del bloque actual es diferente del primer modo de predicción intra candidato o el segundo modo de predicción intra candidato.
[0361] En el caso de que prev_intra_pred_flag sea 1, usando un índice mpm_idx que indica si el modo de predicción intra del bloque actual es el mismo que el primer modo de predicción intra candidato o el segundo modo de predicción intra candidato, puede derivarse el modo de predicción intra del bloque actual.
[0362] mpm_idx se comprueba S1520 y si mpm_idx es 0, el modo de predicción intra del bloque actual puede determinarse que es el primer modo de predicción intra candidato, mientras que, si mpm_idx es 1, el modo de predicción intra del bloque actual puede derivarse al segundo modo de predicción intra candidato.
[0363] En el caso de que prev_intra_pred_flag sea 0, se determina si el modo de predicción intra del bloque actual es el mismo que un tercer modo de predicción intra candidato MPM3 o un cuarto modo de predicción intra candidato MPM4, S1530.
[0364] En caso de que prev_intra_pred_flag sea 0, se puede usar mprm_pred_flag, que es la información de indicador predeterminada que indica si el modo de predicción intra de un bloque actual es idéntico a un tercer modo de predicción intra candidato o a un cuarto modo de predicción intra candidato. Como una realización, en caso de que mprm_pred_flag sea 1, el modo de predicción intra del bloque actual puede ser el mismo que el tercer modo de predicción intra candidato o el cuarto modo de predicción intra candidato, mientras que, en caso de que mprm_pred_flag sea 0, el modo de predicción intra del bloque actual puede no ser el mismo que el tercer modo de predicción intra candidato y el cuarto modo de predicción intra candidato.
[0365] En caso de que mprm_pred_flag sea 1, usando un índice mpm_idx que indica si el modo de predicción intra del bloque actual es el mismo que el tercer modo de predicción intra candidato o el cuarto modo de predicción intra candidato, puede expresarse el modo de predicción intra del bloque actual.
[0366] mpm_idx se comprueba S1540 y si mpm_idx es 0, el modo de predicción intra del bloque actual puede determinarse que es el tercer modo de predicción intra candidato, mientras que, si mpm_idx es 1, el modo de predicción intra del bloque actual puede derivarse al cuarto modo de predicción intra candidato.
[0367] En caso de que mprm_pred_flag sea 0, el modo de predicción intra del bloque actual puede ser idéntico al modo de predicción intra restante S1550.
[0368] En otras palabras, un decodificador puede recibir la palabra de código descrita en la tabla 3 y/o la tabla 4; puede decodificar información de modo de predicción intra de un bloque actual asignado a la palabra de código correspondiente.
[0369] El método de decodificación de un modo de predicción intra actual descrito en detalle anteriormente puede representarse mediante la sintaxis según una realización de la tabla 11. Los elementos sintácticos pueden configurarse de diversas maneras dependiendo de las realizaciones. La tabla 11 ilustra un ejemplo en el que se decodifica un modo de predicción sobre el componente de luminancia de un bloque actual. En este caso, el ejemplo de la tabla 11, en comparación con el ejemplo de la tabla 10, indica que prev_intra_pred_flag puede sustituirse por prev_intra_luma_pred_flag mientras que rem_intra_pred_mode puede sustituirse por rem_intra_luma_pred_mode; sin embargo, los elementos sintácticos se transfieren de acuerdo con la misma estructura sintáctica que se muestra en la tabla 10. Por lo tanto, se puede observar a partir de los ejemplos de las tablas 10 y 11 que los elementos sintácticos correspondientes entre sí llevan a cabo las mismas o similares funciones en un método de codificación de un modo de predicción intra actual de acuerdo con la presente invención.
[0370] <Tabla 11>
[0372]
[0374] Se pretende que la presente invención cubra las modificaciones y variaciones de esta invención siempre que entren dentro del alcance de las reivindicaciones adjuntas.

Claims (6)

1. REIVINDICACIONES
1. Un método para decodificar un modo de predicción intra de un bloque actual, que comprende: determinar si un primer modo de predicción intra derivado de un primer bloque vecino situado en el lado izquierdo del bloque actual es idéntico a un segundo modo de predicción intra derivado de un segundo bloque vecino situado en el lado superior del bloque actual;
en respuesta a una determinación de que el primer modo de predicción intra no es idéntico al segundo modo de predicción intra, derivar un primer modo de predicción intra candidato a partir del primer modo de predicción intra y derivar un segundo modo de predicción intra candidato a partir del segundo modo de predicción intra; basándose en una planificación de derivación predeterminada para derivar un tercer modo de predicción intra candidato a partir de un modo plano, un modo DC y un modo vertical, derivar un tercer modo de predicción intra candidato diferente del primer modo de predicción intra candidato y del segundo modo de predicción intra candidato; y
derivar el modo de predicción intra del bloque actual basándose en modos de predicción intra candidatos que incluyen el primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato, y
caracterizado porque
- la derivación del tercer modo de predicción intra candidato comprende:
si ninguno del primer modo de predicción intra candidato y el segundo modo de predicción intra candidato es el modo plano, establecer el tercer modo de predicción intra candidato igual al modo plano;
si uno del primer modo de predicción intra candidato y el segundo modo de predicción intra candidato es el modo plano, y el otro no es el modo DC, establecer el tercer modo de predicción intra candidato igual al modo DC; y si uno del primer modo de predicción intra candidato y el segundo modo de predicción intra candidato es el modo plano, y el otro es el modo DC, establecer el tercer modo de predicción intra candidato igual al modo vertical.
2. El método de la reivindicación 1, en el que el primer bloque vecino corresponde a un bloque que incluye un píxel posicionado en (x-1, y) cuando una posición de un píxel superior izquierdo del bloque actual es (x, y); y el segundo bloque vecino corresponde a un bloque que incluye un píxel posicionado en (x, y-1) cuando la posición del píxel superior izquierdo del bloque actual es (x, y), donde x e y son un valor de número entero.
3. El método de la reivindicación 1, que comprende además:
decodificar información que indica si uno de un primer modo de predicción intra candidato, un segundo modo de predicción intra candidato y un tercer modo de predicción intra candidato es idéntico a un modo de predicción intra de un bloque actual; y
si uno del primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato es idéntico al modo de predicción intra del bloque actual, derivar el modo de predicción intra del bloque actual basándose en el idéntico de entre los modos de predicción intra candidatos primero, segundo y tercero.
4. El método de la reivindicación 3, que comprende además:
si ninguno del primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato es idéntico al modo de predicción intra del bloque actual, derivar el modo de predicción intra del bloque actual basándose en un modo de predicción intra restante diferente del primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato.
5. El método de la reivindicación 4, en el que derivar el modo de predicción intra del bloque actual basándose en el modo de predicción intra restante diferente del primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato si ninguno del primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de predicción intra candidato es idéntico al modo de predicción intra del bloque actual comprende:
derivar el modo de predicción intra del bloque actual comparando el modo de predicción intra restante con el primer modo de predicción intra candidato, el segundo modo de predicción intra candidato y el tercer modo de
predicción intra candidato, respectivamente.
6. El método de la reivindicación 1, que comprende además:
en respuesta a una determinación de que el primer modo de predicción intra es idéntico al segundo modo de predicción intra, y el primer modo de predicción intra es un modo plano,
- establecer un primer modo de predicción intra candidato igual al modo plano;
- establecer un segundo modo de predicción intra candidato igual a un modo DC; y
- establecer un tercer modo de predicción intra candidato igual a un modo vertical.
ES12838418T 2011-10-07 2012-10-05 Method for decoding an intra prediction mode using candidate intra prediction modes Active ES3059245T3 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR20110102707 2011-10-07
KR20110124663 2011-11-25
PCT/KR2012/008106 WO2013051903A1 (en) 2011-10-07 2012-10-05 Methods and apparatuses of encoding/decoding intra prediction mode using candidate intra prediction modes

Publications (1)

Publication Number Publication Date
ES3059245T3 true ES3059245T3 (en) 2026-03-19

Family

ID=48042070

Family Applications (1)

Application Number Title Priority Date Filing Date
ES12838418T Active ES3059245T3 (en) 2011-10-07 2012-10-05 Method for decoding an intra prediction mode using candidate intra prediction modes

Country Status (8)

Country Link
US (8) US9462290B2 (es)
EP (2) EP2764694B1 (es)
JP (1) JP5869681B2 (es)
KR (1) KR101575777B1 (es)
CN (5) CN103959789B (es)
ES (1) ES3059245T3 (es)
PL (1) PL2764694T3 (es)
WO (1) WO2013051903A1 (es)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012134046A2 (ko) 2011-04-01 2012-10-04 주식회사 아이벡스피티홀딩스 동영상의 부호화 방법
RU2660640C1 (ru) * 2011-06-28 2018-07-06 Самсунг Электроникс Ко., Лтд. Способ и устройство для кодирования видео, а также способ и устройство для декодирования видео, сопровождаемого внутренним прогнозированием
KR101575777B1 (ko) 2011-10-07 2015-12-14 주식회사 팬택자산관리 복수개의 후보 화면 내 예측 모드를 이용한 화면 내 예측 모드의 부호화/복호화 방법 및 이러한 방법을 사용하는 장치
KR101762294B1 (ko) * 2011-10-18 2017-07-28 주식회사 케이티 영상 부호화 방법, 영상 복호화 방법, 영상 부호화기 및 영상 복호화기
US9961343B2 (en) 2011-10-24 2018-05-01 Infobridge Pte. Ltd. Method and apparatus for generating reconstructed block
MX2014003707A (es) 2011-10-24 2014-07-28 Intercode Pte Ltd Metodo y aparato para la decodificacion del modo de prediccion intra.
DK3402200T3 (da) * 2011-10-24 2023-04-24 Gensquare Llc Billeddekodningsapparat
RS61146B1 (sr) 2011-10-24 2020-12-31 Innotive Ltd Postupak i aparat za dekodiranje slike
PT3917147T (pt) * 2011-10-24 2025-10-16 Gensquare Llc Aparelho de descodificação de imagem
KR20130049524A (ko) 2011-11-04 2013-05-14 오수미 인트라 예측 블록 생성 방법
KR20130049525A (ko) 2011-11-04 2013-05-14 오수미 잔차 블록 복원을 위한 역변환 방법
US10390016B2 (en) 2011-11-04 2019-08-20 Infobridge Pte. Ltd. Apparatus of encoding an image
KR20130049526A (ko) 2011-11-04 2013-05-14 오수미 복원 블록 생성 방법
KR20130049522A (ko) 2011-11-04 2013-05-14 오수미 인트라 예측 블록 생성 방법
KR20130049523A (ko) 2011-11-04 2013-05-14 오수미 인트라 예측 블록 생성 장치
KR20130058524A (ko) 2011-11-25 2013-06-04 오수미 색차 인트라 예측 블록 생성 방법
CN103220506B (zh) 2012-01-19 2015-11-25 华为技术有限公司 一种编解码方法和设备
RS66348B1 (sr) * 2012-01-20 2025-01-31 Dolby Laboratories Licensing Corp Uređaj za mapiranje režima intra predikcije
US9210438B2 (en) * 2012-01-20 2015-12-08 Sony Corporation Logical intra mode naming in HEVC video coding
US9350988B1 (en) 2012-11-20 2016-05-24 Google Inc. Prediction mode-based block ordering in video coding
US9681128B1 (en) * 2013-01-31 2017-06-13 Google Inc. Adaptive pre-transform scanning patterns for video and image compression
WO2015149241A1 (zh) * 2014-03-31 2015-10-08 北京大学深圳研究生院 一种针对色度的插值方法及滤波器
US11463689B2 (en) 2015-06-18 2022-10-04 Qualcomm Incorporated Intra prediction and intra mode coding
US10841593B2 (en) 2015-06-18 2020-11-17 Qualcomm Incorporated Intra prediction and intra mode coding
US20160373782A1 (en) * 2015-06-18 2016-12-22 Qualcomm Incorporated Intra prediction and intra mode coding
CN109417633B (zh) * 2016-04-29 2023-11-28 英迪股份有限公司 用于编码/解码视频信号的方法和装置
US10547854B2 (en) 2016-05-13 2020-01-28 Qualcomm Incorporated Neighbor based signaling of intra prediction modes
US10506228B2 (en) 2016-10-04 2019-12-10 Qualcomm Incorporated Variable number of intra modes for video coding
WO2018066863A1 (ko) * 2016-10-04 2018-04-12 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
FR3058019A1 (fr) * 2016-10-21 2018-04-27 Orange Procede de codage et de decodage de parametres d'image, dispositif de codage et de decodage de parametres d'image et programmes d'ordinateur correspondants
WO2019009748A1 (en) 2017-07-05 2019-01-10 Huawei Technologies Co., Ltd. DEVICES AND METHODS FOR VIDEO CODING
CN115174911B (zh) * 2017-07-24 2025-06-20 艾锐势有限责任公司 帧内模式jvet编译方法
US10771781B2 (en) * 2018-03-12 2020-09-08 Electronics And Telecommunications Research Institute Method and apparatus for deriving intra prediction mode
US11303929B2 (en) * 2018-04-02 2022-04-12 Lg Electronics Inc. Image coding method using lookup table for intra prediction mode and apparatus therefor
US11277644B2 (en) 2018-07-02 2022-03-15 Qualcomm Incorporated Combining mode dependent intra smoothing (MDIS) with intra interpolation filter switching
AU2019330406B2 (en) * 2018-08-27 2023-02-02 Huawei Technologies Co., Ltd. Method and apparatus for intra prediction
WO2020053394A1 (en) 2018-09-13 2020-03-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Affine linear weighted intra predictions
WO2020058896A1 (en) * 2018-09-19 2020-03-26 Beijing Bytedance Network Technology Co., Ltd. Intra mode coding based on history information
WO2020057663A1 (en) * 2018-09-21 2020-03-26 Huawei Technologies Co., Ltd. Intra prediction mode derivation based on neighboring blocks
US11303885B2 (en) 2018-10-25 2022-04-12 Qualcomm Incorporated Wide-angle intra prediction smoothing and interpolation
CN109561314B (zh) * 2018-10-26 2020-12-22 嘉兴奥恒进出口有限公司 带宽压缩的自适应模板预测方法
CN109413420B (zh) * 2018-10-26 2020-10-13 吉林建筑大学 带宽压缩中复杂纹理的双模式选择预测方法
CN116527893B (zh) * 2019-01-08 2025-10-17 北京小米移动软件有限公司 解码设备、编码设备和数据发送设备
KR20200087086A (ko) * 2019-01-10 2020-07-20 세종대학교산학협력단 영상 부호화/복호화 방법 및 장치
DK3932057T3 (da) 2019-03-23 2024-09-16 Huawei Tech Co Ltd Koder, dekoder og tilsvarende fremgangsmåder til intraforudsigelse
EP4243416A3 (en) 2019-05-10 2023-10-18 HFI Innovation Inc. Method and apparatus of chroma direct mode generation for video coding
CN120812262A (zh) 2019-05-27 2025-10-17 Sk电信有限公司 用于帧内预测的方法和用于提供视频数据的方法
CN112118450B (zh) * 2019-06-21 2022-03-29 杭州海康威视数字技术股份有限公司 预测模式的解码、编码方法及装置
KR20230056482A (ko) * 2021-10-20 2023-04-27 한화비전 주식회사 영상 압축 장치 및 방법

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2788534T3 (es) 2002-05-28 2020-10-21 Dolby Int Ab Método y sistemas para la estimación, comunicación y organización de modos de intra-predicción de imágenes
US7369707B2 (en) * 2003-10-28 2008-05-06 Matsushita Electric Industrial Co., Ltd. Intra-picture prediction coding method
JP4501631B2 (ja) 2004-10-26 2010-07-14 日本電気株式会社 画像符号化装置及び方法、画像符号化装置のコンピュータ・プログラム、並びに携帯端末
KR100703748B1 (ko) 2005-01-25 2007-04-05 삼성전자주식회사 다 계층 기반의 비디오 프레임을 효율적으로 예측하는 방법및 그 방법을 이용한 비디오 코딩 방법 및 장치
JP4050754B2 (ja) * 2005-03-23 2008-02-20 株式会社東芝 ビデオエンコーダ及び動画像信号の符号化方法
KR100739790B1 (ko) * 2006-02-02 2007-07-13 삼성전자주식회사 인트라 예측 모드 결정 방법 및 장치
WO2007105614A1 (ja) * 2006-03-10 2007-09-20 Nec Corporation イントラ予測モード選択方法及び動画像符号化と、これを用いた装置とプログラム
US8000390B2 (en) * 2006-04-28 2011-08-16 Sharp Laboratories Of America, Inc. Methods and systems for efficient prediction-mode selection
JP4908180B2 (ja) * 2006-12-20 2012-04-04 株式会社東芝 動画像符号化装置
JP4650461B2 (ja) * 2007-07-13 2011-03-16 ソニー株式会社 符号化装置、符号化方法、プログラム、及び記録媒体
KR100924048B1 (ko) 2007-07-30 2009-10-27 한국과학기술원 비디오 부호화에서 화면내 방향성 예측모드 고속 결정방법
US8582652B2 (en) * 2007-10-30 2013-11-12 General Instrument Corporation Method and apparatus for selecting a coding mode
EP2081155B1 (en) 2008-01-21 2011-11-16 Telefonaktiebolaget LM Ericsson (publ) Prediction-based image processing
CN100586184C (zh) * 2008-01-24 2010-01-27 北京工业大学 帧内预测方法
CN101605255B (zh) * 2008-06-12 2011-05-04 华为技术有限公司 一种视频编解码的方法及装置
CN101330617B (zh) * 2008-07-31 2010-11-17 上海交通大学 基于模式映射的多标准帧内预测器的硬件实现方法及装置
KR101702553B1 (ko) * 2009-07-04 2017-02-03 에스케이 텔레콤주식회사 영상 부호화/복호화 방법 및 장치
KR101503269B1 (ko) * 2010-04-05 2015-03-17 삼성전자주식회사 영상 부호화 단위에 대한 인트라 예측 모드 결정 방법 및 장치, 및 영상 복호화 단위에 대한 인트라 예측 모드 결정 방법 및 장치
US8902978B2 (en) * 2010-05-30 2014-12-02 Lg Electronics Inc. Enhanced intra prediction mode signaling
US9025661B2 (en) * 2010-10-01 2015-05-05 Qualcomm Incorporated Indicating intra-prediction mode selection for video coding
KR101756442B1 (ko) * 2010-11-29 2017-07-11 에스케이텔레콤 주식회사 인트라예측모드의 중복성을 최소화하기 위한 영상 부호화/복호화 방법 및 장치
PH12015501603B1 (en) * 2010-12-23 2023-12-06 Samsung Electronics Co Ltd Method and device for encoding intra prediction mode for image prediction unit, and method and device for decoding intra prediction mode for image prediction unit
CN103299622B (zh) * 2011-01-07 2016-06-29 联发科技(新加坡)私人有限公司 编码方法与装置以及解码方法与装置
US9654785B2 (en) * 2011-06-09 2017-05-16 Qualcomm Incorporated Enhanced intra-prediction mode signaling for video coding using neighboring mode
US9860539B2 (en) * 2011-06-13 2018-01-02 Sun Patent Trust Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
CN102186086B (zh) * 2011-06-22 2013-06-19 武汉大学 一种基于avs的帧内预测方法
RU2660640C1 (ru) 2011-06-28 2018-07-06 Самсунг Электроникс Ко., Лтд. Способ и устройство для кодирования видео, а также способ и устройство для декодирования видео, сопровождаемого внутренним прогнозированием
GB2494468B (en) 2011-09-12 2014-01-15 Canon Kk Method and device for encoding or decoding information representing prediction modes
EP3139596B1 (en) * 2011-09-13 2019-09-25 HFI Innovation Inc. Method and apparatus for intra mode coding in hevc
KR101575777B1 (ko) 2011-10-07 2015-12-14 주식회사 팬택자산관리 복수개의 후보 화면 내 예측 모드를 이용한 화면 내 예측 모드의 부호화/복호화 방법 및 이러한 방법을 사용하는 장치
MX2014003707A (es) 2011-10-24 2014-07-28 Intercode Pte Ltd Metodo y aparato para la decodificacion del modo de prediccion intra.
KR20130049522A (ko) * 2011-11-04 2013-05-14 오수미 인트라 예측 블록 생성 방법

Also Published As

Publication number Publication date
US20240292001A1 (en) 2024-08-29
US20170324963A1 (en) 2017-11-09
US20210227228A1 (en) 2021-07-22
US9749641B2 (en) 2017-08-29
CN107181962B (zh) 2020-03-27
EP2764694B1 (en) 2025-12-17
US9462290B2 (en) 2016-10-04
CN107181962A (zh) 2017-09-19
CN103959789B (zh) 2017-06-06
US12010328B2 (en) 2024-06-11
US11363278B2 (en) 2022-06-14
PL2764694T3 (pl) 2026-03-23
CN107197309A (zh) 2017-09-22
US10986346B2 (en) 2021-04-20
EP4668749A2 (en) 2025-12-24
US20160345012A1 (en) 2016-11-24
CN107181956A (zh) 2017-09-19
KR20130038170A (ko) 2013-04-17
US12501055B2 (en) 2025-12-16
US20190313106A1 (en) 2019-10-10
JP2014528670A (ja) 2014-10-27
CN107181956B (zh) 2020-02-21
US20220272358A1 (en) 2022-08-25
CN107197310A (zh) 2017-09-22
JP5869681B2 (ja) 2016-02-24
EP4668749A3 (en) 2026-03-11
CN103959789A (zh) 2014-07-30
EP2764694C0 (en) 2025-12-17
CN107197310B (zh) 2020-02-21
US20260075216A1 (en) 2026-03-12
EP2764694A1 (en) 2014-08-13
CN107197309B (zh) 2020-02-18
KR101575777B1 (ko) 2015-12-14
EP2764694A4 (en) 2015-11-25
US20130089144A1 (en) 2013-04-11
WO2013051903A1 (en) 2013-04-11
US10368076B2 (en) 2019-07-30

Similar Documents

Publication Publication Date Title
ES3059245T3 (en) Method for decoding an intra prediction mode using candidate intra prediction modes
US20240015287A1 (en) Method and apparatus for processing video signal
KR101924455B1 (ko) 인트라 예측 모드 부호화/복호화 방법 및 장치
US11973933B1 (en) Method for encoding/decoding an intra-picture prediction mode using two intra-prediction mode candidate, and apparatus using such a method
KR102307005B1 (ko) 움직임 벡터 리스트 설정 방법 및 이러한 방법을 사용하는 장치
US20130336591A1 (en) Intra prediction method of chrominance block using luminance sample, and apparatus using same
US10681354B2 (en) Image encoding/decoding method and apparatus therefor
ES2769837T3 (es) Escalamiento del vector de movimiento espacial para codificación escalable de vídeo
KR102415377B1 (ko) 두 개의 후보 인트라 예측 모드를 이용한 화면 내 예측 모드의 부/복호화 방법 및 이러한 방법을 사용하는 장치
KR20130139811A (ko) 화면 간 예측 수행시 후보 블록 결정 방법 및 이러한 방법을 사용하는 장치
KR102297268B1 (ko) 두 개의 후보 인트라 예측 모드를 이용한 화면 내 예측 모드의 부/복호화 방법 및 이러한 방법을 사용하는 장치
KR20190133628A (ko) 비디오 신호 처리 방법 및 장치
KR102185952B1 (ko) 두 개의 후보 인트라 예측 모드를 이용한 화면 내 예측 모드의 부/복호화 방법 및 이러한 방법을 사용하는 장치
KR20130139810A (ko) 화면 간 예측 수행시 후보 블록 결정 방법 및 이러한 방법을 사용하는 장치
KR20130051061A (ko) 재생 방식 판단 방법 및 이러한 방법을 사용하는 장치