ES3055128T3 - Method for encoding/decoding video signal, and apparatus therefor - Google Patents
Method for encoding/decoding video signal, and apparatus thereforInfo
- Publication number
- ES3055128T3 ES3055128T3 ES19856708T ES19856708T ES3055128T3 ES 3055128 T3 ES3055128 T3 ES 3055128T3 ES 19856708 T ES19856708 T ES 19856708T ES 19856708 T ES19856708 T ES 19856708T ES 3055128 T3 ES3055128 T3 ES 3055128T3
- Authority
- ES
- Spain
- Prior art keywords
- transform
- mts
- block
- unit
- transforms
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/625—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods 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)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Las realizaciones de la presente invención proporcionan un método y un aparato para procesar una señal de vídeo. En particular, un método para decodificar una señal de vídeo, según una realización de la presente invención, puede comprender los siguientes pasos: determinar, entre conjuntos de transformadas secundarias predefinidos, un conjunto de transformadas secundarias para aplicar a un bloque actual, basándose en un modo de intrapredicción del bloque actual; obtener, a partir del conjunto de transformadas secundarias determinado, un primer elemento de sintaxis que indica una matriz de transformadas secundarias para aplicar al bloque actual; utilizar la matriz de transformadas secundarias especificada por el primer elemento de sintaxis para realizar una transformación inversa secundaria en la región superior izquierda del bloque actual, obteniendo así un bloque con transformación inversa secundaria; y utilizar una matriz de transformadas primarias del bloque actual para realizar una transformación inversa primaria en el bloque con transformación inversa secundaria, obteniendo así un bloque residual del bloque actual. (Traducción automática con Google Translate, sin valor legal)
Description
[0001] DESCRIPCIÓN
[0002] Método para codificar/descodificar señales de vídeo y aparato para lo mismo
[0003] [Campo técnico]
[0004] La presente divulgación se refiere a un método y un aparato para procesar señales de imagen y, particularmente, a un método y un aparato para codificar o descodificar señales de imagen realizando una transformada.
[0005] [Antecedentes de la técnica]
[0006] La codificación de compresión se refiere a una técnica de procesamiento de señal para transmitir información digitalizada a través de una línea de comunicación o almacenarla de forma apropiada en un medio de almacenamiento. Los medios tales como el vídeo, las imágenes y el audio pueden ser objetos de codificación de compresión y, particularmente, una técnica para realizar codificación de compresión en imágenes se denomina compresión de imágenes de vídeo.
[0007] El contenido de vídeo de próxima generación tendrá características de alta resolución espacial, alta tasa de fotogramas y alta dimensionalidad en la representación de la escena. Para procesar tal contenido, el almacenamiento en memoria, la tasa de acceso a la memoria y la potencia de procesamiento aumentarán significativamente.
[0008] Por lo tanto, es necesario diseñar una herramienta de codificación para procesar de manera más eficiente el contenido de vídeo de próxima generación. En particular, las normas de códecs de vídeo posteriores a la norma de codificación de vídeo de alta eficiencia (HEVC) requieren una técnica de transformada eficiente para transformar una señal de vídeo del dominio espacial en una señal del dominio de la frecuencia, junto con una técnica de predicción con precisión superior. Los siguientes documentos constituyen los antecedentes de la técnica: CHOI (SAMSUNG) K ET AL: "CE6: NSST with modified NSST sets and signaling (Test2.3)",11. REUNIÓN DE JVET; 20180711 - 20180718; LJUBLJANA; (THE JOINT VIDEO EXPLORATION TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ),,n.° JVET-K0174 5 de julio de 2018 (05-07-2018), XP030198993, recuperado de Internet:URL:http://phenix.int-evry.fr/jvet/doc_end_user/ documents/11_Ljubljana/wg11/JVET-K0174-v2.zip JVET-K0174_v2.docx; y SALEHIFAR (LGE) M ET AL: "CE 6.2.6: Reduced Secondary Transform (RST)",11. REUNIÓN DE JVET MEETING; 20180711 - 20180718; LJUBLJANA; (THE JOINT VIDEO EXPLORATION TEAM OF ISO/IEC JTC1/SC29/ WG11 AND ITU-T SG.16 ),,n.° JVET-K0099 13 de julio de 2018 (13-07-2018), XP030199618, recuperado de Internet:URL:http://phenix.int-evry.fr/jvet/doc_end_user/documents/11_Ljubljana/wg11/ JVET-K0099-v4.zip JVET-K0099_r1.docx
[0009] [Divulgación]
[0010] [Problema técnico]
[0011] Las realizaciones de la presente divulgación proporcionan un método y un aparato de procesamiento de señales de imagen que aplican una transformada apropiada a un bloque actual.
[0012] Los problemas técnicos resueltos por la presente divulgación no se limitan a los problemas técnicos mencionados anteriormente, y otros problemas técnicos que no se describen en la presente memoria resultarán evidentes para los expertos en la técnica a partir de la siguiente descripción.
[0013] [Solución técnica]
[0014] La invención se define por las reivindicaciones adjuntas.
[0015] [Efectos ventajosos]
[0016] Según las realizaciones de la presente divulgación, es posible mejorar la eficiencia de la transformada determinando y aplicando una transformada adecuada para un bloque actual.
[0017] Además, según las realizaciones de la presente divulgación, al diseñar de manera eficiente una transformada usada para una transformada primaria y una transformada secundaria, se puede mejorar la complejidad computacional y aumentar el rendimiento de compresión.
[0018] Además, según las realizaciones de la presente divulgación, al restringir un núcleo de transformada de una transformada primaria a la que se aplica una transformada secundaria, se puede mejorar notablemente la complejidad computacional.
[0019] Los efectos de la presente divulgación no se limitan a los efectos descritos anteriormente, y otros efectos que no se describen en la presente memoria resultarán evidentes para los expertos en la técnica a partir de la siguiente descripción.
[0020] [Descripción de los dibujos]
[0021] Los dibujos adjuntos, que se incluyen en la presente memoria como parte de la descripción para ayudar a comprender la presente divulgación, proporcionan realizaciones de la presente divulgación y describen las características técnicas de la presente divulgación con la descripción que a continuación.
[0022] La FIG.1 muestra un ejemplo de un sistema de codificación de vídeo como una realización a la que se aplica la presente divulgación.
[0023] La FIG. 2 es un diagrama de bloques esquemático de un aparato de codificación que codifica señales de vídeo/imagen como una realización a la que se aplica la presente divulgación.
[0024] La FIG. 3 es un diagrama de bloques esquemático de un aparato de descodificación que descodifica señales de imagen como una realización a la que se aplica la presente divulgación.
[0025] La FIG.4 es un diagrama de configuración de un sistema de emisión en continuo de contenido, un ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0026] La FIG.5 muestra ejemplos que no caen dentro del alcance de la invención reivindicada a los que es aplicable la presente divulgación; la FIG. 5a es un diagrama para describir una estructura de segmentación de bloques según QT (árbol cuaternario), la FIG. 5b es un diagrama para describir una estructura de segmentación de bloques según BT (árbol binario) y la FIG. 5c es un diagrama para describir una estructura de segmentación de bloques según TT (árbol ternario).
[0027] Las FIG.6 y 7 muestran realizaciones a las que se aplica la presente divulgación; la FIG.6 es un diagrama de bloques esquemático de una unidad de transformada y cuantificación, y una unidad de cuantificación inversa y transformada inversa en un aparato de codificación, y la FIG. 7 es un diagrama de bloques esquemático de una unidad de cuantificación inversa y transformada inversa en un aparato de descodificación.
[0028] La FIG. 8 es un diagrama de flujo que muestra un proceso en el que se realiza una transformada múltiple adaptativa (AMT).
[0029] La FIG.9 es un diagrama de flujo que muestra un proceso de descodificación en el que se realiza AMT. La FIG.10 es un diagrama de flujo que muestra un proceso de transformada inversa basado en MTS según un ejemplo que no cae dentro del alcance de la invención reivindicada de la presente divulgación.
[0030] La FIG.11 es un diagrama de bloques de un aparato para realizar la descodificación basada en MTS según un ejemplo que no cae dentro del alcance de la invención reivindicada de la presente divulgación.
[0031] Las FIG. 12 y 13 son diagramas de flujo muestran la codificación/descodificación a la que se aplica una transformada secundaria como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0032] Las FIG.14 y 15 muestran un ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación, la FIG. 14 es un diagrama que describe la rotación de Givens y la FIG. 15 muestra una configuración de una ronda en una transformada secundaria no separable (NSST) de 4x4 compuesta por capas de rotación de Givens y permutaciones.
[0033] La FIG. 16 muestra la operación de la transformada secundaria reducida (RST) como un ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0034] La FIG.17 es un diagrama que muestra un proceso de escaneo inverso desde el coeficiente sesenta y cuatro hasta el coeficiente diecisiete en orden de escaneo inverso como un ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0035] La FIG.18 es un diagrama de flujo de ejemplo que muestra la codificación usando un indicador de transformada único (STI) como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0036] La FIG.19 es un diagrama de flujo de ejemplo que muestra la codificación usando un indicador de transformada unificado (UTI) como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0037] La FIG. 20 ilustra dos diagramas de flujo de ejemplo que muestran la codificación usando un UTI como una realización a la que se aplica la presente divulgación.
[0038] La FIG. 21 es un diagrama de flujo de ejemplo que muestra la codificación para realizar transformada como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación. La FIG.22 es un diagrama de flujo de ejemplo que muestra la descodificación para realizar transformada como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación. La FIG.23 es un diagrama de bloques detallado que muestra un ejemplo de una unidad 120 de transformada en un aparato 100 de codificación como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0039] La FIG.24 es un diagrama de bloques detallado que muestra un ejemplo de una unidad 230 de transformada inversa en un aparato 200 de descodificación como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0040] La FIG. 25 es un diagrama de flujo para el procesamiento de una señal de video como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0041] La FIG. 26 es un diagrama de bloques de ejemplo de un aparato para procesar una señal de vídeo como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación. La FIG. 27 es un diagrama de flujo que muestra un método de transformación de una señal de vídeo según una realización a la que se aplica la presente divulgación.
[0042] La FIG. 28 es un diagrama de bloques de ejemplo de un aparato para procesar una señal de vídeo como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la divulgación.
[0043] [Modo para la invención]
[0044] Algunas realizaciones de la presente divulgación se describen en detalle con referencia a los dibujos adjuntos. La descripción detallada a describir junto con los dibujos adjuntos tiene como objetivo describir algunas realizaciones de la presente divulgación y no pretende describir una única realización de la presente divulgación. La siguiente descripción detallada incluye más detalles para proporcionar una comprensión completa de la presente divulgación. Sin embargo, los expertos en la técnica comprenderán que la presente divulgación puede implementarse sin tales detalles adicionales.
[0045] En algunos casos, para evitar que el concepto de la presente divulgación se vuelva vago, las estructuras y dispositivos conocidos se omiten o pueden mostrarse en forma de diagrama de bloques basándose en las funciones básicas de cada estructura y dispositivo.
[0046] Si bien la mayoría de los términos usados en la presente divulgación se han seleccionado entre términos generales ampliamente usados en la técnica, algunos términos han sido seleccionados arbitrariamente por el solicitante y sus significados se explican en detalle en la siguiente descripción, según sea necesario. Por lo tanto, la presente divulgación debe entenderse con los significados previstos de los términos, en lugar de con sus nombres o significados sencillos.
[0047] Los términos específicos usados en la siguiente descripción se han proporcionado para facilitar la comprensión de la presente divulgación, y el uso de tales términos específicos puede modificarse de diversas formas sin apartarse del espíritu técnico de la presente divulgación. Por ejemplo, las señales, los datos, las muestras, las imágenes, los fotogramas, los bloques y similares pueden sustituirse e interpretarse de manera apropiada en cada proceso de codificación.
[0048] En la presente descripción, una "unidad de procesamiento" se refiere a una unidad en la que se realiza un proceso de codificación/descodificación tal como predicción, transformada y/o cuantificación. Además, la unidad de procesamiento puede interpretarse en el sentido de que incluye una unidad para una componente de luma y una unidad para una componente de croma. Por ejemplo, la unidad de procesamiento puede corresponder a un bloque, una unidad de codificación (CU), una unidad de predicción (PU) o una unidad de transformada (TU).
[0049] Además, la unidad de procesamiento puede interpretarse como una unidad para una componente de luma o una unidad para una componente de croma. Por ejemplo, la unidad de procesamiento puede corresponder a un bloque de árbol de codificación (CTB), un bloque de codificación (CB), una PU o un bloque de transformada (TB) para la componente de luma. Además, la unidad de procesamiento puede corresponder a un CTB, un CB, una PU o un TB para la componente de croma. Además, la unidad de procesamiento no se limita a lo mismo y puede interpretarse en el sentido de que incluye una unidad para la componente de luma y una unidad para la componente de croma.
[0050] Además, la unidad de procesamiento no se limita necesariamente a un bloque cuadrado y puede configurarse como una forma poligonal que tiene tres o más vértices.
[0051] Además, en la presente descripción, un píxel se denomina muestra. Además, usar una muestra puede significar usar un valor de píxel o similar.
[0052] La FIG.1 muestra un ejemplo de un sistema de codificación de vídeo como una realización a la que se aplica la presente divulgación.
[0053] El sistema de codificación de vídeo puede incluir un dispositivo 10 de origen y un dispositivo 20 de recepción. El dispositivo 10 de origen puede transmitir información o datos de video/imagen codificados al dispositivo 20 de recepción en forma de archivo o emisión en continuo a través de un medio de almacenamiento digital o una red.
[0054] El dispositivo 10 de origen puede incluir una fuente 11 de vídeo, un aparato 12 de codificación y un transmisor 13. El dispositivo 20 de recepción puede incluir un receptor, un aparato 22 de descodificación y un representador 23. El aparato 12 de codificación puede denominarse aparato de codificación de vídeo/imagen, y el aparato 20 de descodificación puede denominarse aparato de descodificación de vídeo/imagen. El transmisor 13 puede incluirse en el aparato 12 de codificación. El receptor 21 puede incluirse en el aparato 22 de descodificación. El representador 23 puede incluir una pantalla, y la pantalla puede configurarse como un dispositivo separado o un componente externo.
[0055] La fuente de vídeo puede adquirir un vídeo/imagen a través de un proceso de captura, combinación o generación de vídeo/imagen. La fuente de vídeo puede incluir un dispositivo de captura de vídeo/imagen y/o un dispositivo de generación de vídeo/imagen. El dispositivo de captura de vídeo/imagen puede incluir, por ejemplo, una o más cámaras, uno archivo de vídeo/imagen que incluyen vídeos/imágenes previamente capturados y similares. El dispositivo de generación de vídeo/imagen puede incluir, por ejemplo, un ordenador, una tableta, un teléfono inteligente y similares, y generar (electrónicamente) un vídeo/imagen. Por ejemplo, se puede generar un vídeo/imagen virtual a través de un ordenador o similar y, en este caso, un proceso de captura de vídeo/imagen puede sustituirse por un proceso de generación de datos relacionado.
[0056] El aparato 12 de codificación puede codificar un vídeo/imagen de entrada. El aparato 12 de codificación puede realizar una serie de procedimientos tales como predicción, transformada y cuantificación para eficiencia de compresión y la codificación. Los datos codificados (información de vídeo/imagen codificada) pueden emitirse en forma de un flujo de bits.
[0057] El transmisor 13 puede transmitir información de video/imagen codificada o datos emitidos en forma de flujo de bits al receptor del dispositivo de recepción en forma de archivo o emisión en continuo a través de un medio de almacenamiento digital o una red. El medio de almacenamiento digital puede incluir diversos medios de almacenamiento tales como USB, SD, CD, DVD, Blu-ray, HDD y SSD. El transmisor 13 puede incluir un elemento para generar un archivo de medios a través de un formato de archivo predeterminado y un elemento para transmisión a través de una red de difusión/comunicación. El receptor 21 puede extraer un flujo de bits y transmitir el flujo de bits al aparato 22 de descodificación.
[0058] El aparato 22 de descodificación puede descodificar un vídeo/imagen realizando una serie de procedimientos tales como la cuantificación inversa, la transformada inversa y la predicción correspondientes a la operación del aparato 12 de codificación.
[0059] El representador 23 puede representar el vídeo/imagen descodificado. El vídeo/imagen representado se puede visualizar a través de una pantalla.
[0060] La FIG. 2 es un diagrama de bloques esquemático de un aparato de codificación que codifica una señal de vídeo/imagen como una realización a la que se aplica la presente divulgación. El aparato 100 de codificación puede corresponder al aparato 12 de codificación de la FIG.1.
[0061] Una unidad 110 de partición de imágenes puede dividir una imagen de entrada (o una fotografía o un fotograma) introducido al aparato 100 de codificación en una o más unidades de procesamiento. Por ejemplo, la unidad de procesamiento puede denominarse unidad de codificación (CU). En este caso, la unidad de codificación se
puede segmentar recursivamente a partir de una unidad de árbol de codificación (CTU) o una unidad de codificación más grande (LCU) según una estructura de árbol binario cuaternario (QTBT). Por ejemplo, una única unidad de codificación se puede segmentar en una pluralidad de unidades de codificación con mayor profundidad basándose en la estructura de árbol cuaternario y/o la estructura de árbol binario. En este caso, en primer lugar, se puede aplicar la estructura de árbol cuaternario y a continuación la estructura de árbol binario. Como alternativa, se puede aplicar en primer lugar la estructura de árbol binario. Un procedimiento de codificación según la presente divulgación puede realizarse basándose en una unidad de codificación final que ya no se segmenta más. En este caso, se puede usar directamente una unidad de codificación más grande como la unidad de codificación final, o bien, la unidad de codificación se puede segmentar recursivamente en unidades de codificación con mayor profundidad y una unidad de codificación que tiene un tamaño óptimo puede usarse como la unidad de codificación final, según sea necesario, basándose en la eficiencia de codificación según características de imagen. En este punto, el procedimiento de codificación puede incluir procedimientos tales como predicción, transformada y reconstrucción, que se describirán más adelante. Como alternativa, la unidad de procesamiento puede incluir adicionalmente una unidad de predicción (PU) o una unidad de transformada (TU). En este caso, la unidad de predicción y la unidad de transformada pueden segmentarse o particionarse a partir de la unidad de codificación final mencionada anteriormente. La unidad de predicción puede ser una unidad de predicción de muestra, y la unidad de transformada puede ser una unidad de derivación de un coeficiente de transformada y/o una unidad de derivación de una señal residual a partir del coeficiente de transformada.
[0063] Una unidad puede usarse indistintamente con el término "bloque" o "área". Generalmente, un bloque MxN representa un conjunto de muestras o coeficientes de transformada en M columnas y N filas. Una muestra generalmente puede representar un píxel o un valor de píxel y puede representar únicamente un valor de píxel/píxel de un componente de luma o únicamente un valor de píxel/píxel de un componente de croma. La muestra puede usarse como un término correspondiente a una fotografía (imagen), un píxel o un pel.
[0065] El aparato 100 de codificación puede generar una señal residual (un bloque residual o una matriz de muestras residuales) restando una señal predicha (un bloque predicho o una matriz de muestras predichas) emitidas desde unidad 180 de inter-predicción o una unidad 185 de intra-predicción de una señal de video de entrada (un bloque original o una matriz de muestras original), y la señal residual generada se transmite a la unidad 120 de transformada. En este caso, una unidad que resta la señal predicha (bloque predicho o matriz de muestras predicha) desde la señal de video de entrada (bloque original o matriz de muestras original) en el codificador 100 puede llamarse restador 115, como se muestra. Un predictor puede realizar predicción en un bloque objetivo de procesamiento (en lo sucesivo en la presente memoria, bloque actual) y generar un bloque predicho que incluye muestras predichas con respecto al bloque actual. El predictor puede determinar si se aplica intra-predicción o inter-predicción al bloque o unidades de CU actuales. El predictor puede generar diversos tipos de información acerca de la predicción, tal como información de modo de predicción, y transmitir la información a una unidad 190 de codificación por entropía como se describe más adelante en la descripción de cada modo de predicción. La información acerca de la predicción se puede codificar en la unidad 190 de codificación por entropía y emitir en forma de un flujo de bits.
[0067] La unidad 185 de intra-predicción puede predecir un bloque actual con referencia a muestras en una imagen actual. Las muestras referidas pueden ser adyacentes al bloque actual o estar separadas del mismo según un modo de predicción. En intra-predicción, los modos de predicción pueden incluir una pluralidad de modos no direccionales y una pluralidad de modos direccionales. Los modos no direccionales pueden incluir, por ejemplo, un modo de CC y un modo planar. Los modos direccionales pueden incluir, por ejemplo, 33 modos de predicción direccional o 65 modos de predicción direccional según un grado de minuciosidad de dirección de predicción. Sin embargo, esto es a modo de ejemplo y se puede usar un número de modos de predicción direccional iguales o mayores que 65 o iguales o menores que 33 según los ajustes. La unidad 185 de intra-predicción puede determinar un modo de predicción a aplicar al bloque actual usando el modo de predicción aplicado a los bloques vecino.
[0069] La unidad 180 de inter-predicción puede derivar un bloque predicho con respecto al bloque actual basándose en un bloque de referencia (matriz de muestras de referencia) especificado por un vector de movimiento en una imagen de referencia. En este punto, para reducir la cantidad de información de movimiento transmitida en un modo de inter-predicción, la información de movimiento se puede predecir en unidades de bloque, subbloque o muestra basándose en la correlación de información de movimiento entre un bloque vecino y el bloque actual. La información de movimiento puede incluir un vector de movimiento y un índice de imagen de referencia. La información de movimiento puede incluir además información de inter-predicción (predicción L0, predicción L1, Bi predicción, etc.). En el caso de inter-predicción, los bloques vecinos pueden incluir un bloque vecino espacial presente en una imagen actual y un bloque vecino temporal presente en una imagen de referencia. La imagen de referencia que incluye el bloque de referencia puede ser igual o diferente de la imagen de referencia que incluye el bloque vecino temporal. El bloque vecino temporal puede denominarse un bloque de referencia coubicado o una CU coubicada (colCU) y la imagen de referencia que incluye el bloque vecino temporal puede denominarse una imagen coubicada (colPic). Por ejemplo, la unidad 180 de inter-predicción puede formar una lista de candidatos de información de movimiento basándose en bloques vecinos y generar información que
indica qué candidato se usa para derivar un vector de movimiento y/o un índice de imagen de referencia del bloque actual. La inter-predicción se puede realizar basándose en diversos modos de predicción, y en el caso de un modo de salto y un modo de fusión, la unidad 180 de inter-predicción puede usar la información de movimiento de un bloque vecino como información de movimiento del bloque actual. En el caso del modo de salto, una señal residual puede no transmitirse de forma diferente a como se hace en el modo de fusión. En el caso de un modo de predicción de vector de movimiento (MVP), el vector de movimiento del bloque actual se puede indicar usando un vector de movimiento de un bloque vecino como predictor de vector de movimiento y señalizando una diferencia de vector de movimiento.
[0071] Una señal predicha generada a través de la unidad 180 de inter-predicción o la unidad 185 de intra-predicción se puede usar para generar una señal reconstruida o una señal residual.
[0073] La unidad 120 de transformada puede generar coeficientes de transformada aplicando una técnica de transformada a una señal residual. Por ejemplo, la técnica de transformada puede incluir al menos una de DCT (Transformada de Coseno Discreta), DST (Transformada de Seno Discreta), KLT (Transformada de Karhunen-Loeve), GBT (Transformada Basada en Grafos) y CNT (Transformada Condicionalmente No Lineal). En este punto, GBT se refiere a la transformada obtenida a partir de un grafo que representa información sobre la relación entre píxeles. CNT se refiere a la transformada obtenida basándose en una señal predicha generada usando todos los píxeles reconstruidos previamente. Además, el proceso de transformada se puede aplicar a bloques de píxeles cuadrados que tienen el mismo tamaño o a bloques no cuadrados que tienen tamaños variables.
[0075] Una unidad 130 de cuantificación puede cuantificar los coeficientes de transformada y transmitir los coeficientes de transformada cuantificados a la unidad 190 de codificación por entropía, y la unidad 190 de codificación por entropía puede codificar una señal cuantificada (información acerca de los coeficientes de transformada cuantificados) y emitir la señal codificada como un flujo de bits. La información acerca de los coeficientes de transformada cuantificados puede denominarse información residual. La unidad 130 de cuantificación puede reorganizar los coeficientes de transformada cuantificados en forma de bloque en forma de vector unidimensional basándose en un orden de escaneo de coeficientes y generar información acerca de los coeficientes de transformada cuantificados basándose en los coeficientes de transformada cuantificados en forma de vector unidimensional. La unidad 190 de codificación por entropía puede ejecutar diversos métodos de codificación tales como Golomb exponencial, CAVLC (codificación de longitud variable adaptativa al contexto) y CABAC (codificación aritmética binaria adaptativa al contexto), por ejemplo. La unidad 190 de codificación por entropía puede codificar información necesaria para la reconstrucción de video/imagen (p. ej., valores de elementos de sintaxis y similares) junto con o por separado de los coeficientes de transformada cuantificados. La información codificada (p. ej., información de vídeo/imagen) puede transmitirse o almacenarse en forma de flujo de bits en la unidad de capa de abstracción de red (NAL). El flujo de bits puede transmitirse a través de una red o almacenarse en un medio de almacenamiento digital. En este punto, la red puede incluir una red de difusión y/o una red de comunicación, y el medio de almacenamiento digital puede incluir diversos medios de almacenamiento, tales como USB, SD, CD, DVD, Blueray, HDD y SSD. Un transmisor (no mostrado) que transmite la señal emitida desde la unidad 190 de codificación por entropía y/o un almacenamiento (no mostrado) que almacena la señal pueden configurarse como elementos internos/externos del aparato 100 de codificación, y el transmisor puede ser un componente de la unidad 190 de codificación por entropía.
[0077] Los coeficientes de transformada cuantificados emitidos desde la unidad 130 de cuantificación pueden usarse para generar una señal predicha. Por ejemplo, una señal residual se puede reconstruir aplicando cuantificación inversa y transformada inversa a los coeficientes de transformada cuantificados a través de una unidad 140 de cuantificación inversa y una unidad 150 de transformada inversa en el bucle. Un sumador 155 puede añadir la señal residual reconstruida a la salida de señal predicha de la unidad 180 de inter-predicción o de la unidad 185 de intra-predicción de tal manera que se pueda generar una señal reconstruida (imagen reconstruida, bloque reconstruido o matriz de muestras reconstruida). Cuando no existe ningún residual con respecto a un bloque objetivo de procesamiento, como en el caso de que se aplique el modo de salto, un bloque predicho puede usarse como bloque reconstruido. El sumador 155 también puede llamarse unidad de reconstrucción o generador de bloques reconstruido. La señal reconstruida generada se puede usar para la intra-predicción del siguiente bloque objetivo de procesamiento en la imagen actual o para la inter-predicción de la siguiente imagen a través de filtrado, que se describirá más adelante.
[0079] Una unidad 160 de filtrado puede mejorar la calidad de imagen subjetiva/objetiva aplicando filtrado a la señal reconstruida. Por ejemplo, la unidad 160 de filtrado puede generar una imagen reconstruida modificada aplicando diversos métodos de filtrado a la imagen reconstruida y transmitir la imagen reconstruida modificada a una memoria intermedia 170 de imagen descodificada. Los distintos métodos de filtrado pueden incluir, por ejemplo, filtrado por desbloqueo, desplazamiento adaptativo de muestra, filtrado de bucle adaptativo y filtrado bilateral. La unidad 160 de filtrado puede generar diversos tipos de información acerca del filtrado y transmitir la información a la unidad 190 de codificación por entropía como se describirá más adelante en la descripción de cada método de filtrado. La información acerca del filtrado puede codificarse en la unidad 190 de codificación por entropía y emitirse en forma de flujo de bits.
[0080] La imagen reconstruida modificada transmitida a la memoria intermedia 170 de imagen descodificada se puede usar como imagen de referencia en la unidad 180 de inter-predicción. Por consiguiente, el aparato de codificación puede evitar desajustes entre el aparato 100 de codificación y el aparato de descodificación y mejorar la eficiencia de codificación cuando se aplica la inter-predicción.
[0082] La memoria intermedia 170 de imagen descodificada puede almacenar la imagen reconstruida modificada de tal manera que la imagen reconstruida modificada se use como imagen de referencia en la unidad 180 de interpredicción.
[0084] La FIG. 3 es un diagrama de bloques esquemático de un aparato de descodificación que realiza la descodificación de una señal de vídeo como una realización a la que se aplica la presente divulgación. El aparato 200 de descodificación de la FIG.3 corresponde al aparato 22 de descodificación de la FIG.1.
[0086] Haciendo referencia a la FIG. 3, el aparato 200 de descodificación puede incluir una unidad 210 de descodificación por entropía, una unidad 220 de cuantificación inversa, una unidad 230 de transformada inversa, un sumador 235, una unidad 240 de filtrado, un memoria intermedia 250 de imagen descodificada (DPB), una unidad 260 de inter-predicción y una unidad 265 de intra-predicción. La unidad 260 de interpredicción y la unidad 265 de intra-predicción pueden denominarse colectivamente predictor. Es decir, el predictor puede incluir la unidad 180 de inter-predicción y la unidad 185 de intra-predicción. La unidad 220 de cuantificación inversa y la unidad 230 de transformada inversa pueden denominarse colectivamente procesador residual. Es decir, el procesador residual puede incluir la unidad 220 de cuantificación inversa y la unidad 230 de transformada inversa. La unidad 210 de descodificación por entropía, la unidad 220 de cuantificación inversa, la unidad 230 de transformada inversa, el sumador 235, la unidad 240 de filtrado, la unidad 260 de inter-predicción y la unidad 265 de intra-predicción antes mencionadas pueden configurarse como un único componente de hardware (p. ej., un descodificador o un procesador) según una realización. Además, la memoria intermedia 250 de imagen descodificada puede configurarse como un único componente de hardware (p. ej., una memoria o un medio de almacenamiento digital) según una realización.
[0088] Cuando se introduce un flujo de bits que incluye información de video/imagen, el aparato 200 de descodificación puede reconstruir una imagen a través de un proceso correspondiente al proceso de procesamiento de la información de video/imagen en el aparato 100 de codificación de la FIG. 2. Por ejemplo, el aparato 200 de descodificación puede realizar la descodificación usando una unidad de procesamiento aplicada en el aparato 100 de codificación. Por consiguiente, una unidad de procesamiento de descodificación puede ser, por ejemplo, una unidad de codificación, y la unidad de codificación puede segmentarse a partir de una unidad de árbol de codificación o de una unidad de codificación más grande según una estructura de árbol cuaternario y/o una estructura de árbol binario. Además, una señal de vídeo reconstruida, descodificada y emitida por el aparato 200 de descodificación, puede reproducirse a través de un aparato de reproducción.
[0090] El aparato 200 de descodificación puede recibir una señal emitida desde el aparato 100 de codificación de la FIG. 2 en forma de un flujo de bits, y la señal recibida puede descodificarse a través de la unidad 210 de descodificación por entropía. Por ejemplo, la unidad 210 de descodificación por entropía puede analizar el flujo de bits para derivar información (p. ej., información de vídeo/imagen) necesaria para la reconstrucción de imagen (o reconstrucción de imagen). Por ejemplo, la unidad 210 de descodificación por entropía puede descodificar información en el flujo de bits basándose en un método de codificación tal como Golomb exponencial, CAVLC o CABAC y emitir valores de elementos de sintaxis necesarios para la reconstrucción de la imagen y valores cuantificados de coeficientes de transformada con respecto al residual. Más específicamente, el método de descodificación por entropía de CABAC recibe un binario correspondiente a cada elemento de sintaxis en el flujo de bits, determina un modelo de contexto usando información de elemento de sintaxis objetivo de descodificación e información de descodificación de bloques vecinos y de bloques objetivo de descodificación o información sobre símbolos/binarios descodificados en una etapa anterior, predice la probabilidad de generación de binarios según el modelo de contexto determinado y realiza una descodificación aritmética de binarios para generar un símbolo correspondiente a cada valor de elemento de sintaxis. En este punto, el método de descodificación por entropía CABAC actualiza el modelo de contexto usando información sobre los símbolos/binarios descodificados para el siguiente modelo de contexto de símbolo/binario después de que se haya determinado el modelo de contexto. La información acerca de la predicción entre la información descodificada en la unidad 210 de descodificación por entropía se puede proporcionar al predictor (unidad 260 de inter-predicción y unidad 265 de intra-predicción) y los valores residuales sobre los que se ha realizado la descodificación por entropía en la unidad 210 de descodificación por entropía, es decir, los coeficientes de transformada cuantificados y la información de parámetros relacionada se pueden introducir a la unidad 220 de cuantificación inversa. Además, se puede proporcionar información acerca del filtrado entre la información descodificada en la unidad 210 de descodificación por entropía a la unidad 240 de filtrado. Mientras tanto, un receptor (no mostrado) que recibe una señal emitida desde el aparato 100 de codificación puede configurarse adicionalmente como un elemento interno/externo del aparato 200 de descodificación o el receptor puede ser un componente de la unidad 210 de descodificación por entropía.
[0091] La unidad 220 de cuantificación inversa puede cuantificar a la inversa los coeficientes de transformada cuantificados para emitir coeficientes de transformada. La unidad 220 de cuantificación inversa puede reorganizar los coeficientes de transformada cuantificados en forma de un bloque bidimensional. En este caso, se puede realizar una reorganización basándose en el orden de escaneo de coeficientes en el aparato 100 de codificación. La unidad 220 de cuantificación inversa puede realizar la cuantificación inversa en los coeficientes de transformada cuantificados usando un parámetro de cuantificación (p. ej., información de tamaño de etapa de cuantificación) y adquirir coeficientes de transformada.
[0092] La unidad 230 de transformada inversa transforma a la inversa los coeficientes de transformada para obtener una señal residual (bloque residual o matriz de muestras residual).
[0093] El predictor puede realizar predicción sobre un bloque actual y generar un bloque predicho que incluye muestras predichas con respecto al bloque actual. El predictor puede determinar si se aplica intra-predicción o interpredicción al bloque actual basándose en la información acerca de una salida de predicción emitida por la unidad 210 de descodificación por entropía y determinar un modo específico de intra/inter-predicción.
[0094] La unidad 265 de intra-predicción puede predecir el bloque actual con referencia a muestras en una imagen actual. Las muestras a las que se hace referencia pueden ser vecinas del bloque actual o estar separadas del bloque actual según un modo de predicción. En intra-predicción, los modos de predicción pueden incluir una pluralidad de modos no direccionales y una pluralidad de modos direccionales. La intra-predicción 265 puede determinar un modo de predicción aplicado al bloque actual usando un modo de predicción aplicado a bloques vecinos.
[0095] La unidad 260 de inter-predicción puede derivar un bloque predicho con respecto al bloque actual basándose en un bloque de referencia (matriz de muestras de referencia) especificado por un vector de movimiento en una imagen de referencia. En este punto, para reducir la cantidad de información de movimiento transmitida en el modo de inter-predicción, la información de movimiento se puede predecir en unidades de bloque, subbloque o muestra basándose en la correlación de la información de movimiento entre un bloque vecino y el bloque actual. La información de movimiento puede incluir un vector de movimiento y un índice de imagen de referencia. La información de movimiento puede incluir además información de inter-predicción (predicción L0, predicción L1, Bi predicción, etc.). En el caso de inter-predicción, los bloques vecinos pueden incluir un bloque vecino espacial presente en una imagen actual y un bloque vecino temporal presente en una imagen de referencia. Por ejemplo, la unidad 260 de inter-predicción puede formar una lista de candidatos de información de movimiento basándose en bloques vecinos y derivar el vector de movimiento y/o el índice de imagen de referencia del bloque actual basándose en la información de selección de candidatos recibida. La interpredicción se puede realizar basándose en diversos modos de predicción y la información acerca de la predicción puede incluir información que indica el modo de inter-predicción para el bloque actual.
[0096] El sumador 235 puede generar una señal reconstruida (imagen reconstruida, bloque reconstruido o matriz de muestras reconstruida) añadiendo la señal residual obtenida a la señal predicha (bloque predicho o matriz de muestras predicha) emitida desde la unidad 260 de inter-predicción o la unidad 265 de intra-predicción. Cuando no hay ningún residual con respecto al bloque objetivo de procesamiento, como en el caso de que se aplique el modo de salto, el bloque predicho puede usarse como bloque reconstruido.
[0097] El sumador 235 también puede llamarse unidad de reconstrucción o generador de bloques reconstruido. La señal reconstruida generada se puede usar para la intra-predicción del siguiente bloque objetivo de procesamiento en la imagen actual o para la inter-predicción de la siguiente imagen a través de filtrado, que se describirá más adelante.
[0098] La unidad 240 de filtrado puede mejorar la calidad de imagen subjetiva/objetiva aplicando filtrado a la señal reconstruida. Por ejemplo, la unidad 240 de filtrado puede generar una imagen reconstruida modificada aplicando diversos métodos de filtrado a la imagen reconstruida y transmitir la imagen reconstruida modificada a una memoria intermedia 250 de imagen descodificada. Los diversos métodos de filtrado pueden incluir, por ejemplo, filtrado de desbloqueo, desplazamiento adaptativo de muestra (SAO), filtrado de bucle adaptativo (ALF) y filtrado bilateral.
[0099] La imagen reconstruida modificada transmitida a la memoria intermedia 250 de imagen descodificada se puede usar como imagen de referencia mediante la unidad 260 de inter-predicción.
[0100] En la presente descripción, las realizaciones descritas en la unidad 160 de filtrado, la unidad 180 de interpredicción y la unidad 185 de intra-predicción del aparato 100 de codificación se pueden aplicar a la unidad 240 de filtrado, la unidad 260 de inter-predicción y la unidad 265 de intra-predicción del aparato de descodificación de igual manera o de manera correspondiente.
[0101] La FIG. 4 es un diagrama de configuración de un sistema de emisión en continuo de contenido como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0102] El sistema de emisión en continuo de contenido al que se aplica la presente divulgación puede incluir un servidor 410 de codificación, un servidor 420 de emisión en continuo, un servidor web 430, un almacenamiento 440 de medios, un equipo 450 de usuario y dispositivos 460 de entrada multimedia.
[0103] El servidor 410 de codificación sirve para comprimir el contenido introducido desde dispositivos de entrada multimedia tales como un teléfono inteligente, una cámara y una videocámara en datos digitales para generar un flujo de bits y transmitir el flujo de bits al servidor 420 de emisión en continuo. Como otro ejemplo, cuando los dispositivos 460 de entrada multimedia, tales como un teléfono inteligente, una cámara y una videocámara, generan directamente flujos de bits, se puede omitir el servidor 410 de codificación.
[0104] El flujo de bits puede generarse mediante un método de codificación o un método de generación de flujo de bits al que se aplica la presente divulgación, y el servidor 420 de emisión en continuo puede almacenar temporalmente el flujo de bits en el proceso de transmisión o recepción del flujo de bits.
[0105] El servidor 420 de emisión en continuo transmite datos multimedia al equipo 450 de usuario basándose en una solicitud de usuario a través del servidor web 430 y el servidor web 430 sirve como medio que informa al usuario de los servicios. Cuando el usuario envía una solicitud para un servicio deseado al servidor web 430, el servidor web 430 entrega la solicitud al servidor 420 de emisión en continuo y el servidor 420 de emisión en continuo transmite datos multimedia al usuario. En este punto, el sistema de emisión en continuo de contenido puede incluir un servidor de control adicional, y en este caso, el servidor de control sirve para controlar los comandos/respuestas entre los dispositivos del sistema de emisión en continuo de contenido.
[0106] El servidor 420 de emisión en continuo puede recibir contenido desde el almacenamiento 440 de medios y/o el servidor 410 de codificación. Por ejemplo, cuando se recibe contenido del servidor 410 de codificación, el servidor 420 de emisión en continuo puede recibir el contenido en tiempo real. En este caso, el servidor 420 de emisión en continuo puede almacenar flujos de bits durante un tiempo predeterminado para proporcionar un servicio de transmisión sin interrupciones.
[0107] Ejemplos de equipos 450 de usuario pueden incluir un teléfono celular, un teléfono inteligente, un ordenador portátil, una terminal de transmisión digital, un PDA (asistente digital personal), un PMP (reproductor multimedia portátil), un dispositivo de navegación, una tableta, un ultraportátil, un dispositivo ponible (p. ej., un reloj inteligente, unas gafas inteligentes y una HMD (pantalla montada en la cabeza)), un televisor digital, un ordenador de escritorio, una señalización digital, etc.
[0108] Cada servidor en el sistema de emisión en continuo de contenido puede operarse como un servidor distribuido, y en este caso, los datos recibidos por cada servidor pueden procesarse de manera distribuida.
[0109] La FIG.5 muestra ejemplos que no caen dentro del alcance de la invención reivindicada a los que es aplicable la presente divulgación; la FIG. 5a es un diagrama para describir una estructura de segmentación de bloques según QT (árbol cuaternario), la FIG. 5b es un diagrama para describir una estructura de segmentación de bloques según BT (árbol binario) y la FIG. 5c es un diagrama para describir una estructura de segmentación de bloques según TT (árbol ternario).
[0110] En codificación de vídeo, un único bloque se puede segmentar basándose en QT. Además, un único subbloque segmentado según QT se puede segmentar recursivamente usando QT. Un bloque de hojas que ya no está segmentado según QT se puede segmentar usando al menos uno de BT, TT y AT. BT puede tener dos tipos de segmentación: BT horizontal (2NxN, 2NxN); y BT vertical (Nx2N, Nx2N). TT puede tener dos tipos de segmentación: TT horizontal (2Nx1/2N, 2NxN, 2Nx1/2N); y TT vertical (1/2Nx2N, Nx2N, 1/2Nx2N). AT puede tener cuatro tipos de segmentación: AT horizontal-arriba (2Nx1/2N, 2Nx3/2N); AT horizontal-abajo (2Nx3/2N, 2Nx1/2N); AT vertical-izquierda (1/2Nx2N, 3/2Nx2N); y AT vertical-derecha (3/2Nx2N, 1/2Nx2N). Cada tipo de BT, TT y AT se puede segmentar recursivamente usando BT, TT y AT.
[0111] La FIG.5a muestra un ejemplo de segmentación QT. Un bloque A se puede segmentar en cuatro subbloques A0, A1, A2 y A3 según QT. El subbloque A1 se puede segmentar aún más en cuatro subbloques B0, B1, B2 y B3 según QT.
[0112] La FIG.5b muestra un ejemplo de segmentación BT. El bloque B3 que ya no se segmenta más según QT se puede segmentar en BT vertical (C0 y C1) o BT horizontal (D0 y D1). Cada subbloque, tal como el bloque C0, se puede segmentar recursivamente en BT horizontal (E0 y E1) o BT vertical (F0 y F1).
[0113] La FIG. 5c muestra un ejemplo de segmentación TT. El bloque B3 que ya no se segmenta más según QT se puede segmentar en TT vertical (C0, C1 y C2) o TT horizontal (D0, D1 y D2). Cada subbloque, tal como el bloque C1, se puede segmentar recursivamente en TT horizontal (E0, E1 y E2) o TT vertical (F0, F1 y F2).
[0114] La FIG.5d muestra un ejemplo de segmentación AT. El bloque B3 que ya no se segmenta más según QT se puede segmentar en AT vertical (C0 y C1) o AT horizontal (D0 y D1). Cada subbloque, tal como el bloque C1, se puede segmentar recursivamente en AT horizontal (E0 y E1) o TT vertical (F0 y F1).
[0115] Mientras tanto, la segmentación de BT, TT y AT puede usarse de forma combinada. Por ejemplo, un subbloque segmentado según BT puede segmentarse según TT o AT. Además, un subbloque segmentado según TT puede segmentarse según BT o AT. Un subbloque segmentado según AT puede segmentarse según BT o TT. Por ejemplo, cada subbloque puede segmentarse en BT vertical después de la segmentación BT horizontal, o cada subbloque puede segmentarse en BT horizontal después de la segmentación BT vertical. En este caso, las formas finalmente segmentadas son idénticas, aunque los órdenes de segmentación sean diferentes. Además, cuando se segmenta un bloque, se puede definir un orden de búsqueda de bloques de diversas maneras. En general, la búsqueda se realiza de izquierda a derecha y de arriba a abajo, y la búsqueda por bloques puede significar el orden para determinar si cada subbloque segmentado se segmentará adicionalmente, un orden de codificación de subbloques cuando los subbloques ya no se segmentan más, o un orden de búsqueda cuando un subbloque hace referencia a información de otros bloques vecinos.
[0116] La transformada se puede realizar en unidades de procesamiento (o bloques de transformada) segmentadas según las estructuras de segmentación como se muestra en las FIGS. 5a a 5d, y particularmente, la segmentación se puede realizar en dirección de fila y en dirección de columna y se puede aplicar una matriz de transformada. Según un ejemplo que no cae dentro del alcance de la invención reivindicada en la presente divulgación, se pueden usar diferentes tipos de transformada según la longitud de una unidad de procesamiento (o bloque de transformada) en la dirección de fila o columna.
[0117] La transformada se aplica a los bloques residuales para descorrelacionar los bloques residuales tanto como sea posible, concentrar los coeficientes en una baja frecuencia y generar una cola cero al final de un bloque. Una parte de transformada en el software JEM incluye dos funciones principales (transformada central y transformada secundaria). La transformada central se compone de familias de transformadas de coseno discreta (DCT) y seno discreta (DST) aplicadas a todas las filas y columnas de un bloque residual. Posteriormente, se puede aplicar adicionalmente una transformada secundaria a la esquina superior izquierda de la salida de la transformada central. De manera similar, la transformada inversa se puede aplicar en el orden de transformada secundaria inversa y transformada central inversa. En primer lugar, se puede aplicar una transformada secundaria inversa a la esquina superior izquierda de un bloque de coeficientes. A continuación, se aplica la transformada central inversa a las filas y columnas de la salida de la transformada inversa secundaria. La transformada central o transformada inversa puede denominarse transformada primaria o transformada inversa.
[0118] Las FIG.6 y 7 muestran realizaciones a las que se aplica la presente divulgación. La FIG.6 es un diagrama de bloques esquemático de una unidad 120/130 de transformada y cuantificación y una unidad 140/150 de cuantificación inversa y transformada inversa en el aparato 100 de codificación, y la FIG.7 es un diagrama de bloques esquemático de una unidad 220/230 de cuantificación inversa y transformada inversa en el aparato 200 de descodificación.
[0119] Haciendo referencia a la FIG. 6, la unidad 120/130 de transformada y cuantificación puede incluir una unidad 121 de transformada primaria, una unidad 122 de transformada secundaria y una unidad 130 de cuantificación. La unidad 140/150 de cuantificación inversa y transformada inversa puede incluir una unidad 140 de cuantificación inversa, una unidad 151 de transformada secundaria inversa y una unidad 152 de transformada primaria inversa.
[0120] Haciendo referencia a la FIG. 7, la unidad 220/230 de cuantificación inversa y transformada inversa puede incluir una unidad 220 de cuantificación inversa, una unidad 231 de transformada secundaria inversa y una unidad 232 de transformada primaria inversa.
[0121] En la presente divulgación, la transformada puede realizarse a través de una pluralidad de etapas. Por ejemplo, se pueden aplicar dos estados de transformada primaria y secundaria como se muestra en la FIG. 6 o se pueden usar más de dos etapas de transformada según los algoritmos. En este punto, la transformada primaria puede denominarse transformada central.
[0122] La unidad 121 de transformada primaria puede aplicar la transformada primaria a una señal residual. En este punto, la transformada primaria puede predefinirse como una tabla en un codificador y/o un descodificador. La unidad 122 de transformada secundaria puede aplicar una transformada secundaria a una señal transformada primariamente. En este punto, la transformada secundaria puede predefinirse como una tabla en el codificador y/o el descodificador.
[0123] En una realización, la transformada secundaria no separable (NSST) puede aplicarse condicionalmente como transformada secundaria. Por ejemplo, NSST se aplica solo a bloques de intra-predicción y puede tener un conjunto de transformadas aplicable por grupo de modo de predicción.
[0124] En este punto, se puede establecer un grupo de modos de predicción basándose en la simetría con respecto a una dirección de predicción. Por ejemplo, el modo 52 de predicción y el modo 16 de predicción son simétricos con respecto al modo 34 de predicción (dirección diagonal), y por lo tanto se puede generar un grupo y aplicarle el mismo conjunto de transformadas. En este punto, cuando se aplica la transformada para el modo 52 de predicción, los datos de entrada se transponen y a continuación se aplica la transformada porque un conjunto de transformadas del modo de predicción 52 es el mismo que el del modo 16 de predicción.
[0125] En el caso del modo planar y del modo CC, no existe simetría con respecto a las direcciones y, por lo tanto, tienen conjuntos de transformadas respectivos y un conjunto de transformadas correspondiente puede estar compuesto por dos transformadas. Cada conjunto de transformadas puede estar compuesto por tres transformadas para los modos direccionales restantes.
[0126] La unidad 130 de cuantificación puede realizar la cuantificación en una señal transformada secundariamente. La unidad 140/150 de cuantificación inversa y transformada inversa realiza la inversa del procedimiento mencionado anteriormente y se omite la descripción redundante.
[0127] La FIG. 7 es un diagrama de bloques esquemático de la unidad 220/230 de cuantificación inversa y transformada inversa en el aparato 200 de descodificación.
[0128] Haciendo referencia a la FIG. 7, la unidad 220/230 de cuantificación inversa y transformada inversa puede incluir la unidad 220 de cuantificación inversa, la unidad 231 de transformada secundaria inversa y la unidad 232 de transformada primaria inversa.
[0129] La unidad 220 de cuantificación inversa obtiene coeficientes de transformada a partir de una señal descodificada por entropía usando información de tamaño de etapa de cuantificación.
[0130] La unidad 231 de transformada secundaria inversa realiza transformada secundaria inversa en los coeficientes de transformada. En este punto, la transformada secundaria inversa se refiere a la transformada inversa de la transformada secundaria descrita en la FIG.6.
[0131] La unidad 232 de transformada primaria inversa realiza una transformada primaria inversa en la señal (o bloque) transformada secundariamente de forma inversa y obtiene una señal residual. En este punto, la transformada primaria inversa se refiere a la transformada inversa de la transformada primaria descrita en la FIG.6.
[0132] Además de DCT-2 y 4x4 DST-4 aplicadas a HEVC, se usa la transformada múltiple adaptativa o la transformada múltiple explícita (AMT o EMT) para la codificación residual de bloques inter e intracodificados. Además de las transformadas en HEVC, se usa una pluralidad de transformadas seleccionadas de las familias de DCT/DST. Las matrices de transformada recientemente introducidas en JEM son DST-7, DCT-8, DST-1 y DCT-5. La siguiente tabla 1 muestra las funciones básicas de los sistemas de DST/DCT seleccionados.
[0133] [Tabla 1]
[0135]
[0136]
[0138] La EMT se puede aplicar a las CU que tengan una anchura y una altura iguales o inferiores a 64, y si la EMT aplicada se puede controlar mediante una bandera de nivel de CU. Cuando la bandera de nivel de CU es 0, se aplica DCT-2 a las CU para codificar el residuo. Se activan dos banderas adicionales para identificar las transformadas horizontales y verticales a usar para un bloque de codificación de luma en una CU a la que se aplica EMT. Al igual que en HEVC, el residual de un bloque se puede codificar en un modo de salto de transformada en JEM. Para la intracodificación residual, se usa un proceso de selección de candidatos de transformada dependiente del modo debido a otras estadísticas residuales de otros modos de intra-predicción. Se definen tres subconjuntos de transformada como se muestra en la siguiente tabla 2 y se selecciona un subconjunto de transformada basándose en un modo de intra-predicción como se muestra en la Tabla 3. [Tabla 2]
[0139] Conjunto de transformadas Candidatos de transformada
[0142]
[0144] Junto con el concepto de subconjunto, un subconjunto de transformada se confirma inicialmente basándose en la Tabla 2 usando el modo de intra-predicción de una CU que tiene una EMT_CU_flag de nivel CU de 1. Posteriormente, para cada una de las transformadas horizontales (EMT_TU_horizontal_flag) y verticales (EMT_TU_vertical_flag), se selecciona uno de los dos candidatos de transformada en el subconjunto de transformadas confirmadas basándose en la señalización explícita mediante banderas según la Tabla 3. [Tabla 3]
[0145] Modo intra 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
[0147]
[0149] Modo intra 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
[0151]
[0153] Modo intra 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
[0155]
[0157] Modo intra 53 54 55 56 57 58 59 60 61 62 63 64 65 66
[0158]
[0160] [Tabla 4]
[0163]
[0164]
[0166] La Tabla 4 muestra un grupo de configuración de transformada al que se aplica la transformada múltiple adaptativa (AMT) como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0167] Haciendo referencia a la Tabla 4, los grupos de configuración de transformada se determinan basándose en un modo de predicción y el número de grupos puede ser 6 (G0 a G5). Además, G0 a G4 corresponden a un caso en el que se aplica la intra-predicción y G5 representa combinaciones de transformada (o conjunto de transformadas o conjunto de combinaciones de transformada) aplicadas a un bloque residual generado según la inter-predicción.
[0168] Una combinación de transformadas puede estar compuesta por una transformada horizontal (o transformada de fila) aplicada a las filas de un bloque 2D correspondiente y una transformada vertical (o transformada de columna) aplicada a las columnas del mismo.
[0169] En este punto, cada uno de los grupos de configuración de transformada puede tener cuatro candidatos de combinación de transformadas. Los cuatro candidatos de combinación de transformadas se pueden seleccionar o determinar usando los índices de combinación de transformadas 0 a 3 y un índice de combinación de transformadas se puede codificar y transmitir desde un codificador a un descodificador.
[0170] En un ejemplo que no cae dentro del alcance de la invención reivindicada, los datos residuales (o señal residual) obtenidos a través de la intra-predicción pueden tener diferentes características estadísticas según los modos de intra-predicción. Por consiguiente, se pueden aplicar transformadas distintas de la transformada de coseno normal para las respectivas intra-predicciones, como se muestra en la Tabla 4. En la presente descripción, un tipo de transformada puede representarse como DCT-Tipo 2, DCT-II o DCT-2, por ejemplo.
[0171] Haciendo referencia a la Tabla 4, se muestra un caso en el que se usan 35 modos de intra-predicción y un caso en el que se usan 67 modos de intra-predicción. Se puede aplicar una pluralidad de combinaciones de transformada para cada grupo de configuraciones de transformada clasificado en cada columna del modo de intra-predicción. Por ejemplo, una pluralidad de combinaciones de transformada puede estar compuesta por cuatro combinaciones (de transformadas en la dirección de fila y transformadas en la dirección de columna). Como ejemplo específico, DST-7 y DCT-5 se pueden aplicar al grupo 0 tanto en la dirección de fila (horizontal) como en la dirección de columna (vertical) y, por lo tanto, se pueden aplicar un total de cuatro grupos.
[0172] Dado que se pueden aplicar un total de cuatro combinaciones de núcleos de transformada a cada modo de intra-predicción, se puede transmitir un índice de combinación de transformadas para seleccionar una de las mismas por unidad de transformada. En la presente descripción, un índice de combinación de transformadas
puede denominarse índice de AMT y puede representarse mediante amt_idx.
[0173] Además, se puede generar un caso en el que DCT-2 sea óptimo tanto para la dirección de fila como para la dirección de columna debido a las características de una señal residual además de los núcleos de transformada mostrados en la Tabla 4. Por consiguiente, la transformada se puede aplicar de manera adaptativa definiendo una bandera de AMT para cada unidad de codificación. En este punto, DCT-2 se puede aplicar tanto a la dirección de fila como a la dirección de columna cuando la bandera de AMT es 0 y se puede seleccionar o determinar una de cuatro combinaciones a través de un índice de AMT cuando la bandera de AMT es 1. En un ejemplo que no cae dentro del alcance de la invención reivindicada, si el número de coeficientes de transformada es menor que 3 para una unidad de transformada cuando la bandera de AMT es 0, no se aplican los núcleos de transformada de la Tabla 4 y se puede aplicar DST-7 tanto a la dirección de fila como a la dirección de columna.
[0174] En un ejemplo que no cae dentro del alcance de la invención reivindicada, si los valores de los coeficientes de transformada se analizan previamente y, por lo tanto, el número de coeficientes de transformada es menor que 3, no se analiza un índice de AMT y se aplica DST-7 y, por lo tanto, se puede reducir la cantidad de transmisión de información adicional.
[0175] En un ejemplo que no cae dentro del alcance de la invención reivindicada, AMT puede aplicarse solo cuando tanto la anchura como la altura de una unidad de transformada son iguales o menores que 32.
[0176] En un ejemplo que no cae dentro del alcance de la invención reivindicada, la Tabla 4 puede preconfigurarse ara entrenamiento fuera de línea.
[0177] En un ejemplo que no cae dentro del alcance de la invención reivindicada, el índice de AMT puede definirse como un índice que puede indicar una combinación de transformadas horizontal y transformada vertical. Como alternativa, el índice de AMT puede definirse como un índice de transformada horizontal y un índice de transformada vertical separados.
[0178] La FIG. 8 es un diagrama de flujo que muestra un proceso de realización de una transformada múltiple adaptativa (AMT).
[0179] Aunque en la presente descripción se describe básicamente un ejemplo que no cae dentro del alcance de la invención reivindicada con respecto a una transformada separable que se aplica por separado en la dirección horizontal y la dirección vertical, una combinación de transformadas puede estar compuesta por transformadas no separables.
[0180] Como alternativa, una combinación de transformadas puede configurarse como una mezcla de transformadas separables y no separables. En este caso, la selección de transformada por filas/columnas o la selección en la dirección horizontal/vertical es innecesaria cuando se usa la transformada separable y las combinaciones de transformada de la Tabla 4 solo se pueden usar cuando se selecciona la transformada separable.
[0181] Además, los métodos propuestos en la presente descripción pueden aplicarse independientemente de la transformada primaria y la transformada secundaria. Es decir, los métodos se pueden aplicar a ambas transformadas. En este punto, la transformada primaria puede referirse a la transformada para transformar inicialmente un bloque residual y la transformada secundaria puede referirse a la transformada para aplicar la transformada a un bloque generado como resultado de la transformada primaria.
[0182] En primer lugar, el aparato 100 de codificación puede determinar un grupo de transformadas correspondiente a un bloque actual (S805). En este punto, el grupo de transformadas puede referirse a un grupo de transformadas de la Tabla 4, pero la presente divulgación no se limita a lo mismo y el grupo de transformadas puede estar compuesto por otras combinaciones de transformada.
[0183] El aparato 100 de codificación puede realizar transformadas en las combinaciones de transformadas candidatas disponibles en el grupo de transformadas (S810). Como resultado de la transformada, el aparato 100 de codificación puede determinar o seleccionar una combinación de transformadas con el menor coste de tasa-distorsión (RD) (S815). El aparato 100 de codificación puede codificar un índice de combinación de transformadas correspondiente a la combinación de transformadas seleccionada (S820).
[0184] La FIG.9 es un diagrama de flujo que muestra un proceso de descodificación para realizar AMT.
[0185] En primer lugar, el aparato 200 de descodificación puede determinar un grupo de transformadas para el bloque actual (S905). El aparato 200 de descodificación puede analizar un índice de combinación de transformadas, y el índice de combinación de transformadas puede corresponder a una de una pluralidad de combinaciones de transformada en el grupo de transformadas (S910). El aparato 200 de descodificación puede derivar una
combinación de transformadas correspondiente al índice de combinación de transformadas (S915). En este punto, aunque la combinación de transformadas puede referirse a una combinación de transformadas mostrada en la Tabla 4, la presente divulgación no se limita a lo mismo. Es decir, la combinación de transformadas puede configurarse como otras combinaciones de transformada.
[0186] El aparato 200 de descodificación puede realizar una transformada inversa en el bloque actual basándose en la combinación de transformadas (S920). Cuando la combinación de transformadas se compone de una transformada de fila y una transformada de columna, en primer lugar, se puede aplicar la transformada de fila y, a continuación, la transformada de columna. Sin embargo, la presente divulgación no está limitada a lo mismo, y la transformada de fila se puede aplicar después de la transformada de columna, y cuando la combinación de transformadas está compuesta por transformadas no separables, se puede aplicar inmediatamente una transformada no separable.
[0187] En otro ejemplo que no cae dentro del alcance de la invención reivindicada, el proceso de determinar un grupo de transformadas y el proceso de analizar un índice de combinación de transformadas pueden realizarse simultáneamente.
[0188] En el ejemplo que no cae dentro del alcance de la invención reivindicada de la presente divulgación, el término mencionado anteriormente "AMT" puede redefinirse como "conjunto de múltiples transformadas o selección de múltiples transformadas (MTS)". Las sintaxis y semánticas relacionadas con MTS que se describen a continuación se resumen en la codificación de vídeo versátil (VVC) JVET-K1001-v4.
[0189] En un ejemplo que no cae dentro del alcance de la invención reivindicada de la presente divulgación, se pueden usar dos candidatos de MTS para modos direccionales y cuatro candidatos de MTS para modos no direccionales como sigue.
[0190] A) Modos no direccionales (CC y planar)
[0191] DST-7 se usa para transformadas horizontales y verticales cuando el índice de MTS es 0.
[0192] DST-7 se usa para la transformada vertical y DCT-8 se usa para las transformadas horizontales cuando el índice de MTS es 1.
[0193] DCT-8 se usa para la transformada vertical y DST-7 se usa para las transformadas horizontales cuando el índice de MTS es 2.
[0194] DCT-8 se usa para transformadas horizontales y verticales cuando el índice de MTS es 3.
[0195] B) Modos pertenecientes a modos de grupo horizontal
[0196] DST-7 se usa para transformadas horizontales y verticales cuando el índice de MTS es 0.
[0197] DCT-8 se usa para la transformada vertical y DST-7 se usa para las transformadas horizontales cuando el índice de MTS es 1.
[0198] C) Modos pertenecientes a modos de grupo vertical
[0199] DST-7 se usa para transformadas horizontales y verticales cuando el índice de MTS es 0.
[0200] DST-7 se usa para la transformada vertical y DCT-8 se usa para las transformadas horizontales cuando el índice de MTS es 1.
[0201] En este punto (en VTM 2.0, en el que se usan 67 modos), los modos de grupo horizontal incluyen los modos de intra-predicción 2 a 34 y los modos verticales incluyen los modos de intra-predicción 35 a 66.
[0202] En otro ejemplo que no cae dentro del alcance de la invención reivindicada de la presente divulgación, se usan tres candidatos de MTS para todos los modos de intra-predicción.
[0203] DST-7 se usa para transformadas horizontales y verticales cuando el índice de MTS es 0.
[0204] DST-7 se usa para la transformada vertical y DCT-8 se usa para las transformadas horizontales cuando el índice de MTS es 1.
[0205] DCT-8 se usa para la transformada vertical y DST-7 se usa para las transformadas horizontales cuando el índice de MTS es 2.
[0206] En otro ejemplo que no cae dentro del alcance de la invención reivindicada de la presente divulgación, se usan dos candidatos de MTS para modos de predicción direccional y tres candidatos de MTS para modos no direccionales.
[0207] A) Modos no direccionales (CC y planar)
[0208] DST-7 se usa para transformadas horizontales y verticales cuando el índice de MTS es 0.
[0209] DST-7 se usa para la transformada vertical y DCT-8 se usa para las transformadas horizontales cuando el índice de MTS es 1.
[0210] DCT-8 se usa para la transformada vertical y DST-7 se usa para las transformadas horizontales cuando el índice de MTS es 2.
[0211] B) Modos de predicción correspondientes a los modos de grupo horizontal
[0212] DST-7 se usa para transformadas horizontales y verticales cuando el índice de MTS es 0.
[0213] DCT-8 se usa para la transformada vertical y DST-7 se usa para las transformadas horizontales cuando el índice de MTS es 1.
[0214] C) Modos de predicción correspondientes a los modos de grupo vertical
[0215] DST-7 se usa para transformadas horizontales y verticales cuando el índice de MTS es 0.
[0216] DST-7 se usa para la transformada vertical y DCT-8 se usa para las transformadas horizontales cuando el índice de MTS es 1.
[0217] En otro ejemplo que no cae dentro del alcance de la invención reivindicada de la presente divulgación, se puede usar un candidato de MTS (p. ej., DST-7) para todos los modos intra. En este caso, el tiempo de codificación se puede reducir en el 40 % con una pérdida de codificación menor. Además, se puede usar una bandera para indicar entre DCT-2 y DST-7.
[0218] La FIG.10 es un diagrama de flujo que muestra un proceso de transformada inversa basado en MTS según un ejemplo que no cae dentro del alcance de la invención reivindicada de la presente divulgación.
[0219] El aparato 200 de descodificación al que se aplica la presente divulgación puede obtener sps_mts_intra_enabled_flag o sps_mts_inter_enabled_flag (S1005). En este punto, sps_mts_intra_enabled_flag indica si cu_mts_flag está presente en una sintaxis de codificación residual de una unidad de intra-codificación. Por ejemplo, cu_mts_flag no está presente en la sintaxis de codificación residual de la unidad de intra-codificación si sps_mts_intra_enabled_flag = 0 y cu_mts_flag están presentes en la sintaxis de codificación residual de la unidad de intra-codificación si sps_mts_intra_enabled_flag = 1. Además, sps_mts_inter_enabled_flag indica si cu_mts_flag está presente en una sintaxis de codificación residual de una unidad de inter-codificación. Por ejemplo, cu_mts_flag no está presente en la sintaxis de codificación residual de la unidad de inter-codificación si sps_mts_inter_enabled_flag = 0 y cu_mts_flag están presentes en la sintaxis de codificación residual de la unidad de inter-codificación si sps_mts_inter_enabled_flag = 1.
[0220] El aparato 200 de descodificación puede obtener cu_mts_flag basándose en sps_mts_intra_enabled_flag o sps_mts_inter_enabled_flag (S1010). Por ejemplo, el aparato 200 de descodificación puede obtener cu_mts_flag cuando sps_mts_intra_enabled_flag = 1 o sps_mts_inter_enabled_flag = 1. En este punto, cu_mts_flag indica si MTS se aplica a una muestra residual de un bloque de transformada de luma. Por ejemplo, MTS no se aplica a la muestra residual del bloque de transformada de luma si cu_mts_flag = 0 y MTS se aplica a la muestra residual del bloque de transformada de luma si cu_mts_flag = 1.
[0221] El aparato 200 de descodificación puede obtener mts_idx basándose en cu_mts_flag (S1015). Por ejemplo, cuando cu_mts_flag = 1, el aparato 200 de descodificación puede obtener mts_idx. En este punto, mts_idx indica qué núcleo de transformada se aplica a las muestras residuales de luma de un bloque de transformada actual en la dirección horizontal y/o en la dirección vertical.
[0222] Por ejemplo, al menos uno de los ejemplos que no caen dentro del alcance de la invención reivindicada descrita en la presente descripción puede aplicarse a mts_idx.
[0223] El aparato 200 de descodificación puede derivar un núcleo de transformada correspondiente a mts_idx (S1020). Por ejemplo, el núcleo de transformada correspondiente a mts_idx se puede definir por separado como transformada horizontal y transformada vertical.
[0224] Por ejemplo, cuando se aplica MTS al bloque actual (es decir, cu_mts_flag = 1), el aparato 200 de descodificación puede configurar candidatos de MTS basándose en el modo de intra-predicción del bloque actual. En este caso, el diagrama de flujo de descodificación de la FIG.10 puede incluir además una etapa de configuración de los candidatos de MTS. A continuación, el aparato 200 de descodificación puede determinar un candidato de MTS a aplicar al bloque actual de entre los candidatos de MTS configurados usando mts_idx. Como otro ejemplo, se pueden aplicar diferentes núcleos de transformada a la transformada horizontal y a la transformada vertical. Sin embargo, la presente divulgación no se limita a lo mismo y el mismo núcleo de transformada puede aplicarse tanto a la transformada horizontal como a la transformada vertical.
[0225] El aparato 200 de descodificación puede realizar una transformada inversa basándose en el núcleo de transformada (S1025).
[0226] Además, en la especificación, MTS puede representarse como AMT o EMT y mts_idx puede representarse como AMT_idx, EMT_idx, AMT_TU_idx, EMT_TU_idx o similares, pero la presente divulgación no se limita a lo mismo.
[0227] La presente divulgación se divide en un caso en el que se aplica el MTS y un caso en el que no se aplica el MTS, basándose en la bandera de MTS, pero no se limita a una expresión de este tipo. Por ejemplo, si se aplica o no el MTS puede significar si usar otros tipos de transformada (o núcleos de transformada) distintos de un tipo de transformada específico predefinido (que puede denominarse tipo de transformada básico, tipo de transformada predeterminado, etc.). Si se aplica el MTS, se pueden usar otros tipos de transformada (p. ej., un tipo de transformada cualquiera o un tipo de transformada combinada de dos o más tipos de transformada entre una pluralidad de tipos de transformada) distintos de un tipo de transformada básico para una transformada. Además, si no se aplica el MTS, se puede usar el tipo de transformada básico para la transformada. En un ejemplo que no cae dentro del alcance de la invención reivindicada, el tipo de transformada básico puede configurarse (o definirse) como DCT2.
[0228] Como ejemplo, cuando una sintaxis de bandera de MTS indica si se aplica o no la MTS a un bloque de transformada actual y se aplica la MTS, una sintaxis de índice de MTS que indica un tipo de transformada aplicada al bloque de transformada actual también puede transmitirse individualmente desde un codificador a un descodificador. Como otro ejemplo, independientemente de si se aplica o no el MTS a un bloque de transformada actual, también se puede transmitir desde un codificador a un descodificador una sintaxis (p. ej., índice de MTS) que incluya todos los tipos de transformada aplicados al bloque de transformada actual. Es decir, en el último ejemplo, una sintaxis (o elemento de sintaxis) que indica un tipo de transformada aplicado al bloque (o unidad) de transformada actual puede transmitirse desde el codificador al descodificador dentro de todos los grupos de tipos de transformada (o conjuntos de tipos de transformada), incluyendo el tipo de transformada básico descrito anteriormente.
[0229] Por consiguiente, a pesar de la expresión, una sintaxis (índice de MTS) que indica un tipo de transformada aplicado al bloque de transformada actual puede incluir información acerca de si se aplica o no el MTS. En otras palabras, en el último ejemplo, únicamente se puede señalizar el índice de MTS sin la bandera de MTS, y en este caso, se puede entender que DCT2 está incluido en el MTS. Sin embargo, en la presente divulgación, se puede describir que la aplicación de DCT2 significa que no se aplica el MTS. No obstante, el alcance técnico con respecto al MTS no se limita a la definición correspondiente.
[0230] La FIG.11 es un diagrama de bloques de un aparato que realiza la descodificación basándose en MTS según un ejemplo que no cae dentro del alcance de la invención reivindicada de la presente divulgación.
[0231] El aparato 200 de descodificación al que se aplica la presente divulgación puede incluir una unidad 1105 de adquisición de parámetros de secuencia, una unidad 1110 de adquisición de bandera de MTS, una unidad 1115 de adquisición de índice de MTS y una unidad 1120 de derivación de núcleo de transformada.
[0232] La unidad 1105 de adquisición de parámetros secuenciales puede adquirir sps_mts_intra_enabled_flag o sps_mts_inter_enabled_flag. En este punto, sps_mts_intra_enabled_flag indica si cu_mts_flag está presente en una sintaxis de codificación residual de una unidad de intra-codificación y sps_mts_inter_enabled_flag indica si cu_mts_flag está presente en una sintaxis de codificación residual de una unidad de inter-codificación. La descripción con referencia a la FIG.10 puede aplicarse a un ejemplo específico.
[0233] La unidad 1110 de adquisición de bandera de MTS puede adquirir cu_mts_flag basándose en sps_mts_intra_enabled_flag o sps_mts_inter_enabled_flag. Por ejemplo, la unidad 1110 de adquisición de bandera de MTS puede adquirir cu_mts_flag cuando sps_mts_intra_enabled_flag = 1 o sps_mts_inter_enabled_flag = 1. En este punto, cu_mts_flag indica si MTS se aplica a una muestra residual de un bloque de transformada de luma. La descripción con referencia a la FIG. 10 puede aplicarse a un ejemplo específico.
[0234] La unidad 1115 de adquisición de índice de MTS puede adquirir mts_idx basándose en cu_mts_flag. Por ejemplo, la unidad 1115 de adquisición de índice de MTS puede adquirir mts_idx cuando cu_mts_flag = 1. En este punto, mts_idx indica qué núcleo de transformada se aplica a las muestras residuales de luma del bloque de transformada actual en la dirección horizontal y/o en la dirección vertical. La descripción con referencia a la FIG.10 puede aplicarse a un ejemplo específico.
[0235] La unidad 1120 de derivación de núcleo de transformada puede derivar un núcleo de transformada correspondiente a mts_idx. A continuación, el aparato 200 de descodificación puede realizar una transformada inversa basándose en el núcleo de transformada derivado.
[0236] Se introduce la transformada secundaria no separable dependiente de modo (MDNSST). Para mantener una baja complejidad, MDNSST se aplica solo a los coeficientes de baja frecuencia después de la transformada primaria. Además, la transformada no separable aplicada principalmente a coeficientes de baja frecuencia puede denominarse LFNST (transformada no separable de baja frecuencia). Si tanto la anchura (W) como la altura (H) de un bloque de coeficientes de transformada son iguales o mayores que 8, se aplica una transformada secundaria no separable de 8x8 a una región superior izquierda de 8x8 del bloque de coeficientes de transformada. Se aplica una transformada secundaria no separable de 4x4 si la anchura o la altura es menor que 8, y la transformada secundaria no separable de 4x4 se puede realizar en la parte superior izquierda mín(8, W) x mín(8, H) del bloque de coeficientes de transformada. En este punto, mín(A, B) es una función que emite un valor menor entre A y B. Además, WxH es el tamaño del bloque, W representa la anchura y H representa la altura.
[0237] Pueden existir un total de 35x3 transformadas secundarias no separables para tamaños de bloque de 4x4 y 8x8. En este punto, 35 es el número de conjuntos de transformadas especificados por los modos de intrapredicción y 3 es el número de candidatos de NSST para cada modo de predicción. El mapeo de modos de intra-predicción a conjuntos de transformadas se puede definir en la siguiente tabla 5.
[0238] [Tabla 5]
[0240]
[0242] Para indicar un núcleo de transformada entre conjuntos de transformadas, se puede codificar un índice de NSST (NSST idx). Cuando no se aplica NSST, se señaliza un índice de NSST igual a 0.
[0243] Las FIG. 12 y 13 son diagramas de flujo muestran la codificación/descodificación a la que se aplica una transformada secundaria como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0244] En JEM, la transformada secundaria (MDNSST) no se aplica a un bloque codificado con modo de salto de transformada. Cuando se señaliza el índice de MDNSST para una CU y no es igual a cero, MDNSST no se usa para un bloque de un componente que está codificado con modo de salto de transformada en la CU. La estructura de codificación general, que incluye la codificación de coeficientes y la codificación de índice de NSST, se muestra en las FIG. 12 y 13. Se codifica una bandera de CBF para determinar si se realizan la codificación de coeficientes y la codificación de NSST. En las FIG. 12 y 13, la bandera de CBF puede representar una bandera cbg de bloque de luma (bandera de CBF_luma) o una bandera de cbf de bloque de croma (bandera de cbf_cb o bandera de cbf_cr). Cuando la bandera de CBF es 1, se codifican los coeficientes de transformada.
[0245] Haciendo referencia a la FIG.12, el aparato 100 de codificación comprueba si CBF es 1 (S1205). Si CBF es 0, el aparato 100 de codificación no realiza la codificación del coeficiente de transformada ni la codificación de índice de NSST. Si CBF es 1, el aparato 100 de codificación realiza la codificación en los coeficientes de transformada (S1210). Posteriormente, el aparato 100 de codificación determina si realizar la codificación de índice de NSST (S1215) y realiza la codificación de índice de NSST (S1220). Cuando no se aplica la codificación de índice de NSST, el aparato 100 de codificación puede finalizar el procedimiento de transformada sin aplicar NSST y realizar la etapa posterior (p. ej., la cuantificación).
[0246] Haciendo referencia a la FIG.13, el aparato 200 de descodificación comprueba si CBF es 1 (S1305). Si CBF es 0, el aparato 200 de descodificación no realiza la descodificación del coeficiente de transformada ni la descodificación de índice de NSST. Si CBF es 1, el aparato 200 de descodificación realiza la descodificación en los coeficientes de transformada (S1310). Posteriormente, el aparato 200 de descodificación determina si realizar la codificación de índice de NSST (S1315) y analizar un índice de NSST (S1320).
[0247] NSST se puede aplicar a una región superior izquierda de 8x8 o 4x4 en lugar de aplicarse a todo el bloque (TU en el caso de HEVC) al que se ha aplicado la transformada primaria. Por ejemplo, se puede aplicar NSST de 8x8 cuando el tamaño de bloque es de 8x8 o más y NSST de 4x4 cuando el tamaño del bloque es menor que 8x8. Además, cuando se aplica NSST de 8x8, se puede aplicar NSST de 4x4 por cada bloque de 4x4. Tanto la NSST de 8x8 como la de 4x4 se pueden determinar según la configuración de conjunto de transformadas descrita anteriormente, y la NSST de 8x8 puede tener 64 piezas de datos de entrada y 64 piezas de datos de salida, mientras que la NSST de 4x4 puede tener 16 entradas y 16 salidas, porque son transformadas no separables.
[0248] Las FIG. 14 y 15 muestran un ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación, la FIG. 14 es un diagrama para describir la rotación de Givens y la FIG. 15 muestra una configuración de una ronda en NSST de 4x4 compuesta por capas de rotación de Givens y permutaciones.
[0249] Tanto NSST de 8x8 como NSST de 4x4 se pueden configurar como combinaciones jerárquicas de rotaciones Givens. Una matriz correspondiente a una rotación de Givens se representa como la ecuación 1 y un producto de matrices se representa como la FIG.14.
[0250] [Ecuación 1]
[0253]
[0256] En la FIG. 14, la salida de t<m>y t<n>según la rotación de Givens se puede calcular como se representa por la ecuación 2.
[0257] [Ecuación 2]
[0260]
[0263] Dado que la rotación de Givens gira dos piezas de datos como se muestra en la FIG.14, se requieren 32 u 8 rotaciones de Givens para procesar 64 (en el caso de NSST de 8x8) o 16 (en el caso de NSST de 4x4) piezas de datos. Por consiguiente, un grupo de 32 u 8 rotaciones de Givens puede formar una capa de rotación de Givens. Como se muestra en la FIG.15, los datos de salida de una capa de rotación de Givens se transmiten como datos de entrada para la siguiente capa de rotación de Givens a través de la permutación (mezclado). Un patrón permutado como se muestra en la FIG.15 se define regularmente y, en el caso de NSST 4x3, cuatro capas de rotación de Givens y las permutaciones correspondientes forman una ronda. La prueba de NSST de 4x4 se realiza en dos rondas y la prueba de NSST de 8x8 se realiza en cuatro rondas. Aunque las diferentes rondas usan el mismo patrón de permutación, los ángulos de rotación de Givens aplicados son diferentes. Por consiguiente, es necesario almacenar los datos de ángulo de todas las rotaciones de Givens que constituyen cada permutación.
[0264] Como etapa final, se realiza una permutación más en los datos emitidos a través de capas de rotación de Givens, y la información acerca de la permutación correspondiente se almacena por separado para cada permutación. La permutación correspondiente se realiza al final de la NSST directa y la permutación inversa correspondiente se aplica inicialmente en la NSST inversa.
[0265] NSST inversa realiza a la inversa las capas de rotación de Givens y permutaciones aplicadas a NSST directa y realiza la rotación tomando un valor negativo para cada ángulo de rotación de Givens.
[0266] RST (Transformada secundaria reducida)
[0267] La FIG. 16 muestra la operación de RST como un ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0268] Cuando una matriz ortogonal que representa una transformada es NxN, una transformada reducida (RT) deja solo R de N vectores básicos de transformada (R<N). Una matriz con respecto a RT directa que genera coeficientes de transformada se puede definir mediante la ecuación 3.
[0269] [Ecuación 3]
[0272]
[0275] Dado que una matriz con respecto a RT inversa es una matriz transpuesta de una matriz RT directa, la aplicación de RT directa e inversa se esquematiza como se muestra en las FIG.14a y 14b.
[0276] La RT aplicada a un bloque superior izquierdo de 8x8 de un bloque de coeficientes de transformada al que se le ha aplicado una transformada primaria puede denominarse RST de 8x8. Cuando R se establece a 16 en la expresión matemática 3, la RST de 8x8 directo tiene la forma de una matriz de 16x64 y la RST de 8x8 inversa tiene la forma de matriz de 64x16. Además, la configuración de conjunto de transformadas como se muestra en la Tabla 5 se puede aplicar a RST de 8x8. Es decir, la RST de 8x8 se puede determinar basándose en conjuntos de transformadas según los modos de intra-predicción como se muestra en la Tabla 5. Dado que un conjunto de transformadas se compone de dos o tres transformadas según un modo de intra-predicción, se puede seleccionar una de un máximo de cuatro transformadas, incluyendo un caso en el que no se aplica la transformada secundaria (una transformada puede corresponder a una matriz anisotrópica). Cuando se asignan los índices 0, 1, 2 y 3 a las cuatro transformadas, se puede designar una transformada a aplicar señalizando un elemento de sintaxis correspondiente a un índice de NSST para cada bloque de coeficientes de transformada. Por ejemplo, el índice 9 se puede asignar a una matriz anisotrópica, es decir, un caso en el que no se aplica la transformada secundaria. En consecuencia, se puede designar una NSST de 8x8 según la NSST de JEM y una RST de 8x8 según la configuración de RST para un bloque superior izquierdo de 8x8 a través del índice de NSST.
[0277] La FIG.17 es un diagrama que muestra un proceso de escaneo inverso desde el coeficiente sesenta y cuatro hasta el coeficiente diecisiete en orden de escaneo inverso como un ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0278] Cuando se aplica la RST de 8x8 representada por la expresión matemática 3, se generan 16 coeficientes de transformada válidos y, por lo tanto, 64 piezas de datos de entrada que constituyen una región de 8x8 se reducen a 16 piezas de datos de salida y solo una cuarta parte de la región se llena con coeficientes de transformada válidos según el punto de vista de la región bidimensional. Por consiguiente, las 16 piezas de datos de salida obtenidas al aplicar RST de 8x8 directa llenan una región superior izquierda de la FIG.17. En la FIG. 17, una región superior izquierda de 4x4 se convierte en una región de interés (ROI) llena de coeficientes de transformada válidos y la región restante está vacía. La región vacía puede rellenarse con 0 como valor predeterminado. Si se descubren coeficientes de transformada válidos distintos de cero en regiones distintas de la ROI de la FIG.17, no se ha aplicado definitivamente la RST 8x8 y, por lo tanto, se puede omitir la codificación correspondiente para el índice de NSST correspondiente. Por otro lado, si no se descubren coeficientes de transformada válidos distintos de cero en regiones distintas de la ROI de la FIG. 17 (se aplica RST de 8x8 o las regiones distintas de la ROI se rellenan con 0), el índice de NSST puede codificarse porque podría aplicarse RST de 8x8. Tal codificación de índice de NSST condicional requiere comprobar la presencia o ausencia de un coeficiente de transformada distinto de cero y, por lo tanto, puede realizarse después del proceso de codificación residual.
[0279] La FIG.18 es un diagrama de flujo de ejemplo que muestra la codificación usando un indicador de transformada único como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0280] En un ejemplo que no cae dentro del alcance de la invención reivindicada de la presente divulgación, se introduce el indicador de transformada única (STI). Se puede aplicar una transformada única cuando el STI está habilitado (codificación de STI == 1) en lugar de usar secuencialmente dos transformadas (transformada primaria y transformada secundaria). En este punto, la transformada única puede ser cualquier tipo de transformada. Por ejemplo, la transformada única puede ser una transformada separable o una transformada no separable. La transformada única puede ser una transformada aproximada a partir de una transformada no separable. Se puede señalizar un único índice de transformada (ST_idx en la FIG.18) cuando se ha habilitado el STI. En este punto, el índice de transformada único puede indicar una transformada a aplicar entre las candidatas de transformada disponibles.
[0281] Haciendo referencia a la FIG.18, el aparato 100 de codificación determina si CBF es 1 (S1805). Cuando CBF es 1, el aparato 100 de codificación determina si se aplica la codificación de ITS (S1810). Cuando se aplica la codificación de STI, el aparato 100 de codificación codifica un índice de STI STI_idx (S1845) y realiza la codificación en el coeficiente de transformada (S1850). Cuando no se aplica la codificación de STI, el aparato 100 de codificación codifica una bandera EMT_CU_Flag que indica si se aplica EMT (o MTS) a nivel de CU (S1815). Posteriormente, el aparato 100 de codificación realiza la codificación en los coeficientes de transformada (S1820). A continuación, el aparato 100 de codificación determina si se aplica EMT a una unidad de transformada (TU) (S1825). Cuando se aplica EMT a la TU, el aparato 100 de codificación codifica un índice de transformada primario EMT_TU Idx aplicado a la TU (S1830). Posteriormente, el aparato 100 de codificación determina si se aplica NSST (S1835). Cuando se aplica NSST, el aparato 100 de codificación codifica un índice NSST_Idx que indica NSST a aplicar (S1840).
[0282] En un ejemplo, si se satisfacen/habilitan las condiciones de codificación de transformada única (p. ej., STI_coding == 1), el índice de transformada única ST_Idx puede derivarse implícitamente en lugar de señalizarse. El índice ST_idx se puede determinar implícitamente basándose en el tamaño del bloque y en un modo de intra-predicción. En este punto, ST_Idx puede indicar una transformada (o núcleo de transformada) aplicada al bloque de transformada actual.
[0283] El STI se puede habilitar si se cumple una o más de las siguientes condiciones (STI_coding == 1).
[0284] 1) El tamaño del bloque corresponde a un valor predeterminado tal como 4 u 8.
[0285] 2) Anchura del bloque == altura del bloque (bloque cuadrado)
[0286] 3) El modo de intra-predicción es uno de los modos predeterminados, tal como los modos de CC y planar. En otro ejemplo, se puede señalizar la bandera de codificación de STI para indicar si se aplica la transformada única. La bandera de codificación de STI puede señalizarse basándose en un valor de codificación de STI y un CBF. Por ejemplo, la bandera de codificación STI se puede señalizar cuando CBF es 1 y la codificación de STI está habilitada. Además, la bandera de codificación STI se puede señalizar condicionalmente teniendo en cuenta un tamaño de bloque, una forma de bloque (bloque cuadrado o bloque no cuadrado) o un modo de intra-predicción.
[0287] Para usar la información adquirida durante la codificación de coeficientes, ST_idx puede determinarse después de la codificación de coeficientes. En un ejemplo, ST_idx se puede determinar implícitamente basándose en un tamaño de bloque, un modo de intra-predicción y el número de coeficientes distintos de cero. En otro ejemplo, ST_idx se puede codificar/descodificar condicionalmente basándose en un tamaño de bloque, una forma de bloque, el modo de intra-predicción y/o el número de coeficientes distintos de cero. En otro ejemplo, la señalización ST_idx puede omitirse dependiendo de una distribución de coeficientes distintos de cero (es decir, posiciones de coeficientes distintos de cero). En particular, cuando se descubren coeficientes distintos de cero en una región que no sea una región superior izquierda de 4x4, se puede omitir la señalización ST_idx. La FIG.19 es un diagrama de flujo de ejemplo que muestra la codificación usando un indicador de transformada unificado (UTI) como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0288] En un ejemplo que no cae dentro del alcance de la invención reivindicada de la presente divulgación, se introduce el indicador de transformada unificada. El UTI incluye un indicador de transformada primaria y un indicador de transformada secundaria.
[0289] Haciendo referencia a la FIG.19, el aparato 100 de codificación determina si CBF es 1 (S1905). Cuando CBF es 1, el aparato 100 de codificación determina si se aplica la codificación de UTI (S1910). Cuando se aplica la codificación de UTI, el aparato 100 de codificación codifica un índice de UTI UTI_idx (S1945) y realiza la codificación en el coeficiente de transformada (S1950). Cuando no se aplica la codificación de UTI, el aparato 100 de codificación codifica la bandera EMT_CU_Flag que indica si se aplica EMT (o MTS) al nivel de CU (S1915). Posteriormente, el aparato 100 de codificación realiza la codificación en los coeficientes de transformada (S1920). A continuación, el aparato 100 de codificación determina si se aplica EMT a una unidad de transformada (TU) (S1925). Cuando se aplica EMT a la TU, el aparato 100 de codificación codifica un índice de transformada primario EMT_TU Idx aplicado a la TU (S1930). Posteriormente, el aparato 100 de codificación determina si se aplica NSST (S1935). Cuando se aplica NSST, el aparato 100 de codificación codifica un índice NSST_Idx que indica NSST a aplicar (S1940).
[0290] El UTI puede codificarse para cada unidad predeterminada (CTU o CU).
[0291] El modo de codificación de UTI puede depender de las siguientes condiciones.
[0292] 1) Tamaño de bloque
[0293] 2) Forma de bloque
[0294] 3) Modo de intra-predicción
[0295] Cómo derivar/extraer un índice de transformada central del UTI se define de antemano. Cómo derivar/extraer un índice de transformada secundaria del UTI se define de antemano.
[0296] Opcionalmente, se puede usar una estructura de sintaxis para el UTI. El UTI puede depender de un tamaño de CU (TU). Por ejemplo, una CU (TU) más pequeña puede tener un índice de UTI en un intervalo más estrecho. En un ejemplo, el UTI puede indicar únicamente el índice de transformada central si se satisface una condición predefinida (p. ej., que un tamaño de bloque sea menor que un valor umbral predefinido).
[0297] [Tabla 6]
[0299]
[0301] En otro ejemplo, el índice de UTI puede considerarse como el índice de transformada central cuando no se indica que se use la transformada secundaria (p. ej., índice de transformada secundaria ==0 o la transformada secundaria ya está predeterminada). De la misma manera, el índice de UTI puede considerarse como un índice de transformada secundaria cuando se considera conocido el índice de transformada central. Específicamente, considerando el modo de intra predicción y el tamaño del bloque, se puede usar una transformada central predeterminada
[0302] La FIG. 20 ilustra dos diagramas de flujo de ejemplo que muestran la codificación usando el UTI como una realización a la que se aplica la presente divulgación.
[0303] En otro ejemplo, la estructura de codificación de transformada puede usar la codificación de índice de UTI como se muestra en la FIG.20. En este caso, el índice de UTI puede codificarse antes o después que la codificación de coeficientes.
[0304] Haciendo referencia al diagrama de flujo izquierdo de la FIG. 20, el aparato 100 de codificación comprueba si CBF es 1 (S2005). Cuando CBF es 1, el aparato 100 de codificación codifica el índice de UTI UTI_idx (S2010) y realiza la codificación en los coeficientes de transformada (S2015).
[0305] Haciendo referencia al diagrama de flujo derecho de la FIG. 20, el aparato 100 de codificación comprueba si CBF es 1 (S2055). Cuando CBF es 1, el aparato 100 de codificación realiza la codificación en los coeficientes de transformada (S2060) y codifica el índice de UTI UTI_idx (S2065).
[0306] En otro ejemplo que no cae dentro del alcance de la invención reivindicada de la presente divulgación, se introducen métodos de ocultación de datos y codificación implícita para indicadores de transformada. En este punto, los indicadores de transformada pueden incluir ST_idx, UTI_idx, EMT_CU_Flag, EMT_TU_Flag, NSST_Idx y cualquier tipo de índice relacionado con la transformada que pueda usarse para indicar un núcleo de transformada. Es posible que el indicador de transformada mencionado anteriormente no se señalice, pero la información correspondiente puede insertarse en un proceso de codificación de coeficientes (puede extraerse durante un proceso de codificación de coeficientes). El proceso de codificación de coeficientes puede incluir las siguientes partes.
[0307] - Last_position_x, Last_position_y
[0308] - Bandera de grupo
[0309] - Mapa de significancia
[0310] - Bandera Greather_than_1
[0311] - Bandera Greather_than_2
[0312] - Codificación de nivel restante
[0313] - Codificación de signos
[0314] Por ejemplo, la información de indicador de transformada puede insertarse en uno o más de los procesos de codificación de coeficientes mencionados anteriormente. Para insertar información de indicador de transformada, se pueden considerar conjuntamente los siguientes.
[0315] Patrón de codificación de canto
[0316] El valor absoluto del nivel restante
[0317] El número de bandera de Greather_than_1
[0318] Los valores de Last_position_X y Last_position_Y
[0319] El método de ocultación de datos mencionado anteriormente puede considerarse condicionalmente. Por ejemplo, el método de ocultación de datos puede depender del número de coeficientes distintos de cero. En otro ejemplo, NSST_idx y EMT_idx pueden ser dependientes. Por ejemplo, NSST_idx puede no ser cero cuando EMT_CU_Flag es igual a cero (o uno). En este caso, se puede señalizar NSST_idx -1 en lugar de NSST_idx.
[0320] En otro ejemplo que no cae dentro del alcance de la invención reivindicada de la presente divulgación, se introduce el mapeo del conjunto de transformadas NSST basándose en el modo de intra-predicción, como se muestra en la siguiente tabla 7. Aunque NSST se describe a continuación como un ejemplo de transformada no separable, se puede usar otra terminología conocida (p. ej., LFNST) para la transformada no separable. Por ejemplo, el conjunto de NSST y el índice de NSST pueden sustituirse por el conjunto de LFNST y el índice LFNST. Además, RST descrita en esta memoria descriptiva también puede reemplazarse con LFNST como ejemplo de transformada no separable (p. ej., LFNST) usando una matriz de transformada no cuadrada que tenga una longitud de entrada reducida y/o una longitud de salida reducida en una matriz de transformada cuadrada no separable aplicada a al menos una región (región superior izquierda de 4x4 u 8x8 o una región distinta de la región inferior derecha de 4x4 en un bloque de 8x8) de un bloque de transformada.
[0321] [Tabla 7]
[0323]
[0324] El número de conjunto de NSST se puede reorganizar de 0 a 3 como se muestra en la Tabla 8.
[0325] [Tabla 8]
[0327]
[0329] En el conjunto de transformadas de NSST, solo se usan cuatro conjuntos de transformadas (en lugar de 35) de modo que se pueda reducir el espacio de memoria requerido.
[0330] Además, se pueden usar diferentes números de núcleos de transformada por conjunto de transformadas, como se indica a continuación.
[0331] Caso A: se usan dos núcleos de transformada disponibles para cada conjunto de transformadas, de modo que el intervalo de índice de NSST es de 0 a 2. Por ejemplo, cuando el índice de NSST es 0, puede que no se aplique la transformada secundaria (transformada secundaria inversa basada en un descodificador). Cuando el índice de NSST es 1 o 2, se puede aplicar una transformada secundaria. El conjunto de transformadas puede incluir dos núcleos de transformada a los que se puede asignar un índice 1 o 2.
[0332] [Tabla 9]
[0335]
[0337] Haciendo referencia a la Tabla 9, se usan dos núcleos de transformada para cada uno de los conjuntos de transformadas no separables (NSST o LFNST) 0 a 3.
[0338] Caso B: se usan dos núcleos de transformada disponibles para el conjunto de transformadas 0 y uno para los demás. Los índices de NSST disponibles para el conjunto de transformadas 0 (CC y planar) son de 0 a 2. Sin embargo, los índices de NSST para otros modos (conjuntos de transformadas 1, 2 y 3) son de 0 a 1.
[0339] [Tabla 10]
[0342]
[0344] Haciendo referencia a la Tabla 10, se establecen dos núcleos de transformada no separables para un conjunto de transformadas no separables (NSST) correspondiente al índice 0 y se establece un núcleo de transformada no separable para cada uno de los conjuntos de transformadas no separables (NSST) correspondientes a los índices 1, 2 y 3.
[0345] Caso C: se usa un núcleo de transformada por núcleo de transformada y el intervalo de índice de NSST es de 0 a 1.
[0346] [Tabla 11]
[0349]
[0350] La FIG. 21 es un diagrama de flujo de ejemplo que muestra la codificación para realizar transformada como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación. El aparato 100 de codificación realiza una transformada primaria en un bloque residual (S2105). La transformada primaria puede denominarse transformada central. Como ejemplo que no cae dentro del alcance de la invención reivindicada, el aparato 100 de codificación puede realizar la transformada primaria usando el MTS mencionado anteriormente. Además, el aparato 100 de codificación puede transmitir un índice de MTS que indica un MTS específico de entre los candidatos de MTS al aparato 200 de descodificación. En este punto, los candidatos de MTS pueden configurarse basándose en el modo de intra-predicción del bloque actual. El aparato 100 de codificación determina si aplicar la transformada secundaria (S2110). Por ejemplo, el aparato 100 de codificación puede determinar si aplicar la transformada secundaria basándose en los coeficientes de transformada del bloque residual transformado primariamente. Por ejemplo, la transformada secundaria puede ser NSST o RST.
[0351] El aparato 100 de codificación determina la transformada secundaria (S2115). En este punto, el aparato 100 de codificación puede determinar la transformada secundaria basándose en un conjunto de transformadas de NSST (o RST) designado según el modo de intra-predicción.
[0352] Por ejemplo, el aparato 100 de codificación puede determinar una región a la que se aplicará la transformada secundaria basándose en el tamaño del bloque actual antes de la etapa S2115.
[0353] El aparato 100 de codificación realiza la transformada secundaria determinada en la etapa S2115 (S2120). La FIG.22 es un diagrama de flujo de ejemplo que muestra la descodificación para realizar transformada como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación. El aparato 200 de descodificación determina si aplicar la transformada secundaria inversa (S2205). Por ejemplo, la transformada secundaria inversa puede ser NSST o RST. Por ejemplo, el aparato 200 de descodificación puede determinar si aplicar la transformada secundaria inversa basándose en una bandera de transformada secundaria recibida desde el aparato 100 de codificación.
[0354] El aparato 200 de descodificación determina la transformada secundaria inversa (S2210). En este punto, el aparato 200 de descodificación puede determinar la transformada secundaria inversa aplicada al bloque actual basándose en el conjunto de transformadas de NSST (o RST) designado según el modo de intra-predicción mencionado anteriormente.
[0355] Además, por ejemplo, el aparato 200 de descodificación puede determinar una región a la que se aplicará la transformada secundaria inversa basándose en el tamaño del bloque actual antes de la etapa S2210.
[0356] El aparato 200 de descodificación realiza una transformada secundaria inversa en un bloque residual cuantificado a la inversa usando la transformada secundaria inversa determinada en la etapa S2210 (S2215). El aparato de descodificación realiza una transformada primaria inversa en el bloque residual transformado secundariamente a la inversa (S2220). La transformada primaria inversa puede denominarse transformada central inversa. En un ejemplo que no cae dentro del alcance de la invención reivindicada, el aparato 200 de descodificación puede realizar la transformada primaria inversa usando el MTS mencionado anteriormente. Además, como ejemplo, el aparato 200 de descodificación puede determinar si se aplica MTS al bloque actual antes de la etapa S2220. En este caso, el diagrama de flujo de descodificación de la FIG. 22 puede incluir además una etapa de determinación de si se aplica MTS.
[0357] Por ejemplo, cuando se aplica MTS al bloque actual (es decir, cu_mts_flag = 1), el aparato 200 de descodificación puede configurar candidatos de MTS basándose en el modo de intra-predicción del bloque actual. En este caso, el diagrama de flujo de descodificación de la FIG.22 puede incluir además una etapa de configuración de los candidatos de MTS. Además, el aparato 200 de descodificación puede determinar la transformada primaria inversa aplicada al bloque actual usando mtx_idx que indica un MTS específico de entre los candidatos de MTS configurados.
[0358] La FIG. 23 es un diagrama de bloques detallado de la unidad 120 de transformada en el aparato 100 de codificación como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0359] El aparato 100 de codificación al que se aplica un ejemplo que no cae dentro del alcance de la invención reivindicada de la presente divulgación puede incluir una unidad 2310 de transformada primaria, una unidad 2320 de determinación de aplicación de transformada secundaria, una unidad 2330 de determinación de transformada secundaria y una unidad 2340 de transformada secundaria.
[0360] La unidad 2310 de transformada primaria puede realizar la transformada primaria en un bloque residual. La transformada primaria puede denominarse transformada central. Como ejemplo que no cae dentro del alcance de la invención reivindicada, la unidad 2310 de transformada primaria puede realizar la transformada primaria usando el MTS mencionado anteriormente. Además, la unidad 2310 de transformada primaria puede transmitir un índice de MTS que indica un MTS específico de entre los candidatos de MTS al aparato 200 de descodificación. En este punto, los candidatos de MTS pueden configurarse basándose en el modo de intrapredicción del bloque actual.
[0361] La unidad 2320 de determinación de aplicación de transformada secundaria puede determinar si aplicar la transformada secundaria. Por ejemplo, la unidad 2320 de determinación de aplicación de la transformada secundaria puede determinar si aplicar la transformada secundaria basándose en los coeficientes de transformada del bloque residual transformado primariamente. Por ejemplo, la transformada secundaria puede ser NSST o RST.
[0362] La unidad 2330 de determinación de transformada secundaria determina la transformada secundaria. En este punto, la unidad 2330 de determinación de transformada secundaria puede determinar la transformada secundaria basándose en un conjunto de transformadas de NSST (o RST) designado según el modo de intrapredicción como se ha descrito anteriormente.
[0363] Por ejemplo, la unidad 2330 de determinación de transformada secundaria puede determinar una región a la que se aplicará la transformada secundaria basándose en el tamaño del bloque actual.
[0364] La unidad 2340 de transformada secundaria puede realizar la transformada secundaria determinada.
[0365] La FIG. 24 es un diagrama de bloques detallado de la unidad 230 de transformada inversa en el aparato 200 de descodificación como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0366] El aparato 200 de descodificación al que se aplica la presente divulgación incluye una unidad 2410 de determinación de aplicación de transformada secundaria inversa, una unidad 2420 de determinación de transformada secundaria inversa, una unidad 2430 de transformada secundaria inversa y una unidad 2440 de transformada primaria inversa.
[0367] La unidad 2410 de determinación de aplicación de transformada secundaria inversa puede determinar si aplicar la transformada secundaria inversa. Por ejemplo, la transformada secundaria inversa puede ser NSST o RST. Por ejemplo, la unidad 2410 de determinación de aplicación de transformada secundaria inversa puede determinar si aplicar la transformada secundaria inversa basándose en una bandera de transformada secundaria recibida desde el aparato 100 de codificación.
[0368] La unidad 2420 de determinación de transformada secundaria inversa puede determinar la transformada secundaria inversa. En este punto, la unidad 2420 de determinación de transformada secundaria inversa puede determinar la transformada secundaria inversa aplicada al bloque actual basándose en el conjunto de transformadas de NSST (o RST) designado según el modo de intra-predicción.
[0369] Además, por ejemplo, la unidad 2420 de determinación de transformada secundaria inversa puede determinar una región a la que se aplicará la transformada secundaria inversa basándose en el tamaño del bloque actual. La unidad 2430 de transformada secundaria inversa puede realizar una transformada secundaria inversa en un bloque residual cuantificado a la inversa usando la transformada secundaria inversa determinada.
[0370] La unidad 2440 de transformada primaria inversa puede realizar la transformada primaria inversa en el bloque residual transformado de manera secundaria a la inversa. En un ejemplo que no cae dentro del alcance de la invención reivindicada, la unidad 2440 de transformada primaria inversa puede realizar la transformada primaria inversa usando el MTS mencionado anteriormente. Además, como ejemplo, la unidad 2440 de transformada primaria inversa puede determinar si se aplica MTS al bloque actual.
[0371] Por ejemplo, cuando se aplica MTS al bloque actual (es decir, cu_mts_flag = 1), la unidad 2440 de transformada primaria inversa puede configurar candidatos de MTS basándose en el modo de intra-predicción del bloque actual. Además, la unidad 2440 de transformada primaria inversa puede determinar la transformada primaria inversa aplicada al bloque actual usando mtx_idx que indica un MTS específico de entre los candidatos de MTS configurados.
[0372] La FIG. 25 es un diagrama de flujo para el procesamiento de una señal de video como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación. El proceso del diagrama de flujo de la FIG. 25 puede ser ejecutado por el aparato 200 de descodificación o la unidad 230 de transformada inversa.
[0373] En primer lugar, el aparato 200 de descodificación puede determinar si se aplica una transformada no separable inversa al bloque actual basándose en un índice de transformada no separable y la anchura y la altura del bloque actual. Por ejemplo, si el índice de transformada no separable no es 0 y la anchura y la altura del bloque actual son iguales o mayores que 4, el aparato 200 de descodificación puede determinar que se aplica la transformada no separable. Si el índice de transformada no separable es 0 o la anchura o la altura del bloque actual es menor que 4, el aparato 200 de descodificación puede omitir la transformada no separable inversa y realizar la transformada primaria inversa.
[0374] En la etapa S2505, el aparato 200 de descodificación determina un índice de conjunto de transformadas no separables que indica un conjunto de transformadas no separables usado para la transformada no separable del bloque actual de entre los conjuntos de transformadas no separables predefinidos basándose en el modo de intra-predicción del bloque actual. Se puede establecer un índice de conjunto de transformadas no separables de manera que se asigne a cada uno de los cuatro conjuntos de transformadas configurados según el intervalo del modo de intra-predicción, como se muestra en la Tabla 7 o la Tabla 8. Es decir, el índice del conjunto de transformadas no separables se puede determinar como un primer valor de índice cuando el modo de intra-predicción es 0 y 1, se determina como un segundo valor de índice cuando el modo de intra-predicción es de 2 a 12 o de 56 a 66, se determina como un tercer valor de índice cuando el modo de intra-predicción es de 13 a 23 o de 45 a 55, y se determina como un cuarto valor de índice cuando el modo de intra-predicción es de 24 a 44, como se muestra en la Tabla 7 o la Tabla 8.
[0375] En este punto, cada uno de los conjuntos de transformadas no separables predefinidos puede incluir dos núcleos de transformada, como se muestra en la Tabla 9. Además, cada uno de los conjuntos de transformadas no separables predefinidos puede incluir uno o dos núcleos de transformada, como se muestra en la Tabla 10 u 11.
[0376] En la etapa S2510, el aparato 200 de descodificación determina, como una matriz de transformada no separable, un núcleo de transformada indicado por el índice de transformada no separable para el bloque actual de entre los núcleos de transformada incluidos en el conjunto de transformadas no separables indicado por el índice de conjunto de transformadas no separables. Por ejemplo, se pueden configurar dos núcleos de transformada no separables para cada valor de índice de conjunto de transformadas no separables y el aparato 200 de descodificación puede determinar una matriz de transformada no separable basándose en el núcleo de transformada indicado por el índice de transformada no separable entre dos núcleos de matriz de transformada correspondientes al índice de conjunto de transformadas no separables.
[0377] En la etapa S2515, el aparato 200 de descodificación aplica la matriz de transformada no separable a una región superior izquierda del bloque actual determinada basándose en la anchura y la altura del bloque actual. Por ejemplo, se puede aplicar una transformada no separable a una región superior izquierda de 8x8 del bloque actual si tanto la anchura como la altura del bloque actual son iguales o mayores que 8, y se puede aplicar una transformada no separable a una región de 4x4 del bloque actual si la anchura o la altura del bloque actual es menor que 8. El tamaño de la transformada no separable también se puede establecer a 8x8 o 4x4 en respuesta a una región a la que se aplicará la transformada no separable.
[0378] Además, el aparato 200 de descodificación puede aplicar una transformada horizontal y una transformada vertical al bloque actual al que se le ha aplicado una transformada no separable. En este punto, la transformada horizontal y la transformada vertical se pueden determinar basándose en un índice de MTS para la selección del modo de predicción y la matriz de transformada aplicada al bloque actual.
[0379] A continuación, en la presente memoria, se describe un método de combinación y aplicación de una transformada primaria y una transformada secundaria. Es decir, un ejemplo que no cae dentro del alcance de la invención reivindicada en la presente divulgación propone un método de diseño de manera eficiente una transformada usada en la transformada primaria y la transformada secundaria. En este caso, se pueden aplicar los métodos ilustrados en las FIG.1 a 25, y se omite la descripción redundante.
[0380] Como se ha descrito anteriormente, la transformada primaria representa una transformada que se aplica en primer lugar a un bloque residual basándose en un codificador. Si se aplica la transformada secundaria, el codificador puede realizar la transformada secundaria en el bloque residual transformado primario. Si se aplica la transformada secundaria, se puede realizar una transformada inversa secundaria antes de una transformada inversa primaria basándose en un descodificador. El descodificador puede realizar la transformada inversa primaria en un bloque de coeficientes de transformada inversa secundaria para obtener un bloque residual. Además, como se ha descrito anteriormente, se puede usar una transformada no separable como la transformada secundaria, y la transformada secundaria se puede aplicar únicamente a los coeficientes de baja frecuencia de una región específica superior izquierda para mantener una baja complejidad. La transformada secundaria aplicada a estos coeficientes de baja frecuencia puede denominarse transformada secundaria no separable (NSST), transformada no separable de baja frecuencia (LFNST) o transformada secundaria reducida (RST). La transformada primaria puede denominarse una transformada central.
[0381] En un ejemplo que no cae dentro del alcance de la invención reivindicada en la presente divulgación, un candidato de transformada primaria usado en la transformada primaria y un núcleo de transformada secundaria usado en la transformada secundaria pueden predefinirse como diversas combinaciones. En la presente divulgación, el candidato de transformada primaria usado en la transformada primaria puede denominarse candidato de MTS, pero no se limita a ese nombre. Por ejemplo, el candidato de transformada principal puede ser una combinación de núcleos de transformada (o tipos de transformada) aplicados respectivamente a las direcciones horizontal y vertical, y el núcleo de transformada puede ser uno de DCT2, DST7 y/o DCT8. En otras palabras, el candidato de transformada principal puede ser al menos una combinación de DCT2, DST7 y/o DCT8. La siguiente descripción se da con ejemplos detallados.
[0382] - Combinación A
[0383] En una combinación A, como se ilustra en la siguiente Tabla 12, se puede definir un candidato de transformada primaria y un núcleo de transformada secundaria según un modo de intra predicción.
[0384] [Tabla 12]
[0386]
[0388] En referencia a la Tabla 12 anterior, como ejemplo (Caso 1), se pueden usar dos candidatos de transformada primaria si el modo de intra predicción tiene direccionalidad, y se pueden usar cuatro candidatos de transformada primaria si el modo de intra predicción no tiene direccionalidad (p. ej., modo CC, modo planar). En este caso, un candidato de transformada secundaria puede incluir dos núcleos de transformada independientemente de la direccionalidad del modo de intra predicción. Es decir, como se ha descrito anteriormente, se puede predefinir una pluralidad de conjuntos de núcleos de transformada secundaria según el modo de intra predicción, y cada uno de los conjuntos de núcleos de transformada secundaria predefinidos puede incluir dos núcleos de transformada.
[0389] Además, como ejemplo (Caso 2), se pueden usar dos candidatos de transformada primaria si el modo de intra predicción tiene direccionalidad, y se pueden usar cuatro candidatos de transformada primaria si el modo de intra predicción no tiene direccionalidad. En este caso, un candidato de transformada secundaria puede incluir un núcleo de transformada si el modo de intra predicción tiene direccionalidad, y un candidato de transformada secundaria puede incluir dos núcleos de transformada si el modo de intra predicción no tiene direccionalidad. Además, como ejemplo (Caso 3), se pueden usar dos candidatos de transformada primaria si el modo de intra predicción tiene direccionalidad, y se pueden usar cuatro candidatos de transformada primaria si el modo de intra predicción no tiene direccionalidad. En este caso, un candidato de transformada secundaria puede incluir un núcleo de transformada independientemente de la direccionalidad del modo de intra predicción.
[0390] - Combinación B
[0391] En una combinación B, como se ilustra en la siguiente Tabla 13, se puede definir un candidato de transformada primaria y un núcleo de transformada secundaria según un modo de intra predicción.
[0392] [Tabla 13]
[0394]
[0395] Haciendo referencia a la Tabla 13 anterior, como ejemplo (Caso 1), se pueden usar tres candidatos de transformada primaria independientemente de la direccionalidad del modo de intra predicción. En este caso, un candidato de transformada secundaria puede incluir dos núcleos de transformada independientemente de la direccionalidad del modo de intra predicción. Es decir, como se ha descrito anteriormente, se puede predefinir una pluralidad de conjuntos de núcleos de transformada secundaria según el modo de intra predicción, y cada uno de los conjuntos de núcleos de transformada secundaria predefinidos puede incluir dos núcleos de transformada.
[0396] Además, como ejemplo (Caso 2), se pueden usar tres candidatos de transformada primaria independientemente de la direccionalidad del modo de intra predicción. En este caso, un candidato de transformada secundaria puede incluir un núcleo de transformada si el modo de intra predicción tiene direccionalidad, y un candidato de transformada secundaria puede incluir dos núcleos de transformada si el modo de intra predicción no tiene direccionalidad.
[0397] Además, como ejemplo (Caso 3), se pueden usar tres candidatos de transformada primaria independientemente de la direccionalidad del modo de intra predicción. En este caso, un candidato de transformada secundaria puede incluir un núcleo de transformada independientemente de la direccionalidad del modo de intra predicción.
[0398] - Combinación C
[0399] En una combinación C, como se ilustra en la siguiente Tabla 14, se puede definir un candidato de transformada primaria y un núcleo de transformada secundaria según un modo de intra predicción.
[0400] [Tabla 14]
[0402]
[0404] En referencia a la Tabla 14 anterior, como ejemplo (Caso 1), se pueden usar dos candidatos de transformada primaria si el modo de intra predicción tiene direccionalidad, y se pueden usar tres candidatos de transformada primaria si el modo de intra predicción no tiene direccionalidad (p. ej., modo CC, modo planar). En este caso, un candidato de transformada secundaria puede incluir dos núcleos de transformada independientemente de la direccionalidad del modo de intra predicción. Es decir, como se ha descrito anteriormente, se puede predefinir una pluralidad de conjuntos de núcleos de transformada secundaria según el modo de intra predicción, y cada uno de los conjuntos de núcleos de transformada secundaria predefinidos puede incluir dos núcleos de transformada.
[0405] Además, como ejemplo (Caso 2), se pueden usar dos candidatos de transformada primaria si el modo de intra predicción tiene direccionalidad, y se pueden usar tres candidatos de transformada primaria si el modo de intra predicción no tiene direccionalidad. En este caso, un candidato de transformada secundaria puede incluir un núcleo de transformada si el modo de intra predicción tiene direccionalidad, y un candidato de transformada secundaria puede incluir dos núcleos de transformada si el modo de intra predicción no tiene direccionalidad. Además, como ejemplo (Caso 3), se pueden usar dos candidatos de transformada primaria si el modo de intra predicción tiene direccionalidad, y se pueden usar tres candidatos de transformada primaria si el modo de intra predicción no tiene direccionalidad. En este caso, un candidato de transformada secundaria puede incluir un núcleo de transformada independientemente de la direccionalidad del modo de intra predicción.
[0406] La descripción anterior se dio centrándose en el caso de usar la pluralidad de candidatos de transformada primaria. A continuación, se describen, a modo de ejemplo, combinaciones de una transformada primaria y una transformada secundaria en caso de usar un candidato de transformada primaria fija.
[0407] - Combinación D
[0408] En una combinación D, como se ilustra en la siguiente Tabla 15, se puede definir un candidato de transformada primaria y un núcleo de transformada secundaria según un modo de intra predicción.
[0409] [Tabla 15]
[0411]
[0413] Haciendo referencia a la Tabla 15 anterior, como ejemplo que no cae dentro del alcance de la invención reivindicada, se puede usar de forma fija un candidato de transformada primaria independientemente del modo de intra predicción. Por ejemplo, el candidato de transformada primaria fija puede ser al menos una combinación de DCT2, DST7 y/o DCT8.
[0414] Como ejemplo (Caso 1), se puede usar un candidato de transformada primaria de forma fija independientemente del modo de intra predicción. En este caso, un candidato de transformada secundaria puede incluir dos núcleos de transformada independientemente de la direccionalidad del modo de intra predicción. Es decir, como se ha descrito anteriormente, se puede predefinir una pluralidad de conjuntos de núcleos de transformada secundaria según el modo de intra predicción, y cada uno de los conjuntos de núcleos de transformada secundaria predefinidos puede incluir dos núcleos de transformada.
[0415] Además, como ejemplo (Caso 2), se puede usar un candidato de transformada primaria de forma fija independientemente del modo de intra predicción. En este caso, un candidato de transformada secundaria puede incluir un núcleo de transformada si el modo de intra predicción tiene direccionalidad, y un candidato de transformada secundaria puede incluir dos núcleos de transformada si el modo de intra predicción no tiene direccionalidad.
[0416] Además, como ejemplo (Caso 3), se puede usar un candidato de transformada primaria de forma fija independientemente del modo de intra predicción. En este caso, un candidato de transformada secundaria puede incluir un núcleo de transformada independientemente de la direccionalidad del modo de intra predicción. - Combinación E
[0417] En una combinación E, como se ilustra en la siguiente Tabla 16, se puede definir un candidato de transformada primaria y un núcleo de transformada secundaria según un modo de intra predicción.
[0418] [Tabla 16]
[0420]
[0422] Haciendo referencia a la Tabla 16 anterior, siempre que se aplique DCT2 como transformada primaria, se puede definir una transformada secundaria. En otras palabras, si no se aplica MTS (es decir, si se aplica DCT2 como transformada primaria), se puede aplicar la transformada secundaria. Como se ilustra en la FIG. 10 anterior, la presente divulgación se describe dividiéndola en un caso en el que se aplica el MTS y un caso en el que no se aplica el MTS, pero no se limita a una expresión de este tipo. Por ejemplo, si se aplica o no el MTS puede significar si usar otros tipos de transformada (o núcleos de transformada) distintos de un tipo de transformada específico predefinido (que puede denominarse tipo de transformada básico, tipo de transformada predeterminado, etc.). Si se aplica el MTS, se pueden usar otros tipos de transformada (p. ej., un tipo de transformada cualquiera o un tipo de transformada combinada de dos o más tipos de transformada entre una pluralidad de tipos de transformada) distintos de un tipo de transformada básico para una transformada. Además, si no se aplica el MTS, se puede usar el tipo de transformada básico para la transformada. En un
ejemplo que no cae dentro del alcance de la invención reivindicada, el tipo de transformada básico puede configurarse (o definirse) como DCT2.
[0423] Como ejemplo (Caso 1), cuando se aplica la DCT2 a la transformada primaria, se puede aplicar la transformada secundaria. En este caso, un candidato de transformada secundaria puede incluir dos núcleos de transformada independientemente de la direccionalidad del modo de intra predicción. Es decir, como se ha descrito anteriormente, se puede predefinir una pluralidad de conjuntos de núcleos de transformada secundaria según el modo de intra predicción, y cada uno de los conjuntos de núcleos de transformada secundaria predefinidos puede incluir dos núcleos de transformada.
[0424] Además, como ejemplo (Caso 2), cuando se aplica la DCT2 a la transformada primaria, se puede aplicar la transformada secundaria. En este caso, un candidato de transformada secundaria puede incluir un núcleo de transformada si el modo de intra predicción tiene direccionalidad, y un candidato de transformada secundaria puede incluir dos núcleos de transformada si el modo de intra predicción no tiene direccionalidad.
[0425] Además, como ejemplo (Caso 3), cuando se aplica la DCT2 a la transformada primaria, se puede aplicar la transformada secundaria. En este caso, un candidato de transformada secundaria puede incluir un núcleo de transformada independientemente de la direccionalidad del modo de intra predicción.
[0426] La FIG.26 es un diagrama de flujo que ilustra un método para transformar una señal de vídeo según un ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación.
[0427] Haciendo referencia a la FIG. 26, la presente divulgación se describe basándose en un descodificador para facilitar la explicación, pero no se limita a lo mismo. Un método de transformada para una señal de vídeo, según un ejemplo que no cae dentro del alcance de la invención reivindicada en la presente divulgación, puede aplicarse de forma sustancialmente similar incluso a un codificador. El diagrama de flujo ilustrado en la FIG.26 puede realizarse por un dispositivo 200 de descodificación o una unidad 230 de transformada inversa.
[0428] El dispositivo 200 de descodificación analiza un primer elemento de sintaxis que indica un núcleo de transformada primaria aplicado a una transformada primaria de un bloque actual en S2601.
[0429] El dispositivo 200 de descodificación determina si una transformada secundaria es aplicable al bloque actual basándose en el primer elemento de sintaxis en S2602.
[0430] Si la transformada secundaria es aplicable al bloque actual, el dispositivo 200 de descodificación analiza un segundo elemento de sintaxis que indica un núcleo de transformada secundaria aplicado a una transformada secundaria del bloque actual en S2603.
[0431] El dispositivo 200 de descodificación deriva un bloque transformado a la inversa secundario, realizando una transformada inversa secundaria para una región específica superior izquierda del bloque actual usando un núcleo de transformada secundaria indicado por el segundo elemento de sintaxis en S2604.
[0432] El dispositivo 200 de descodificación deriva un bloque residual del bloque actual, realizando una transformada inversa primaria para el bloque transformado a la inversa secundario usando un núcleo de transformada primaria indicado por el primer elemento de sintaxis en S2605.
[0433] Como se ha descrito anteriormente, la etapa S2602 se puede realizar determinando que la transformada secundaria es aplicable al bloque actual si el primer elemento de sintaxis indica un primer núcleo de transformada predefinido. En este caso, el primer núcleo de transformada puede definirse como DCT2. Además, como se ha descrito anteriormente, el dispositivo 200 de descodificación puede determinar un conjunto de núcleos de transformada secundaria usados para una transformada secundaria del bloque actual entre conjuntos de núcleos de transformada secundaria predefinidos basándose en un modo de intra predicción del bloque actual. El segundo elemento de sintaxis puede indicar un núcleo de transformada secundaria aplicado a la transformada secundaria del bloque actual en el conjunto de núcleos de transformada secundaria determinado.
[0434] Además, como se ha descrito anteriormente, cada uno de los conjuntos de núcleos de transformada secundaria predefinidos puede incluir dos núcleos de transformada.
[0435] En un ejemplo que no cae dentro del alcance de la invención reivindicada en la presente divulgación, se describirá un ejemplo de una estructura de sintaxis en la que se usa un conjunto de transformadas múltiple (MTS).
[0436] Por ejemplo, la siguiente tabla 17 muestra un ejemplo de una estructura de sintaxis de un conjunto de parámetros de secuencia.
[0437] [Tabla 17]
[0439]
[0442] Haciendo referencia a la FIG.17, si se puede usar el MTS según un ejemplo que no cae dentro del alcance de la invención reivindicada de la presente divulgación se puede señalizar a través de una sintaxis de conjunto de parámetros de secuencia. En este punto, sps_mts_intra_enabled_flag indica si hay una bandera de MTS o un índice de MTS presente en una sintaxis de nivel inferior (p. ej., sintaxis de codificación residual o sintaxis de unidad de transformada) con respecto a una unidad de intra-codificación. Además, sps_mts_inter_enabled_flag indica si hay una bandera de MTS o un índice de MTS presente en una sintaxis de nivel inferior con respecto a una unidad de inter-codificación.
[0444] Como otro ejemplo, la siguiente tabla 18 muestra un ejemplo de una estructura de sintaxis de unidad de transformada.
[0446] [Tabla 18]
[0448]
[0449]
[0451] Haciendo referencia a la Tabla 18, cu_mts_flag indica si el MTS se aplica a una muestra residual de un bloque de transformada de luma. Por ejemplo, el MTS no se aplica a la muestra residual del bloque de transformada de luma si cu_mts_flag = 0 y el MTS se aplica a la muestra residual del bloque de transformada de luma si cu_mts_flag = 1.
[0452] Como se ha descrito anteriormente, en la divulgación se describen por separado un caso en el que se aplica el MTS y un caso en el que no se aplica el MTS, basándose en la bandera de MTS, pero la divulgación no se limita a lo mismo. Por ejemplo, si se aplica el MTS puede tener el mismo significado que si se usa un tipo de transformada (o núcleo de transformada) distinto de un tipo de transformada específico predefinido (que puede denominarse tipo de transformada básico, tipo de transformada predeterminado o similar). Se puede usar un tipo de transformada (p. ej., uno cualquiera de una pluralidad de tipos de transformada o una combinación de dos o más de los mismos) distinto del tipo de transformada predeterminado para una transformada si se aplica el MTS, y se puede usar el tipo de transformada predeterminado para una transformada si no se aplica el MTS. En un ejemplo que no cae dentro del alcance de la invención reivindicada, el tipo de transformada predeterminado puede establecerse (o definirse) como DCT2.
[0453] Como ejemplo, una sintaxis de bandera de MTS que indica si el MTS se aplica a un bloque de transformada actual y una sintaxis de índice de MTS que indica un tipo de transformada aplicada al bloque actual cuando se aplica el MTS pueden transmitirse individualmente desde un codificador a un descodificador. Como otro ejemplo, se puede transmitir desde el codificador al descodificador una sintaxis (p. ej., índice de MTS) que incluye tanto si el MTS se aplica al bloque de transformada actual como un tipo de transformada aplicada al bloque actual cuando se aplica el MTS. Es decir, en el último ejemplo, una sintaxis (o elemento de sintaxis) que indique un tipo de transformada aplicado al bloque (o unidad) de transformada actual en un grupo (o conjunto de tipos de transformada) que incluye el tipo de transformada predeterminado mencionado anteriormente puede transmitirse desde el codificador al descodificador.
[0454] Por consiguiente, la sintaxis (índice de MTS) que indica el tipo de transformada aplicado al bloque de transformada actual puede incluir información acerca de si el MTS se aplica independientemente de la representación del mismo. En otras palabras, aunque se puede considerar que el MTS incluye DCT2 porque solo se puede señalizar el índice de MTS sin la bandera de MTS en el último ejemplo, un caso en el que se aplica DCT2 se puede describir como un caso en el que no se aplica MTS en la divulgación y el alcance técnico con respecto al MTS no se limita a la definición.
[0455] Además, como otro ejemplo, la siguiente tabla 19 muestra un ejemplo de una estructura de sintaxis de unidad residual.
[0456] [Tabla 19]
[0458]
[0459]
[0460]
[0461]
[0463] Haciendo referencia a la Tabla 19, la sintaxis (o elemento de sintaxis) de transform_skip_flag y/o mts_idx se puede señalizar a través de una sintaxis residual. Sin embargo, esto es solo un ejemplo y la divulgación no se limita a lo mismo. Por ejemplo, la sintaxis de transform_skip_flag y/o mts_idx se puede señalizar a través de una sintaxis de unidad de transformada.
[0464] A continuación se describirá un ejemplo específico, que no cae dentro del alcance de la invención reivindicada, de la matriz de transformada secundaria mencionada anteriormente, pero que puede usarse para la transformada secundaria. Como se ha descrito anteriormente, la transformada secundaria puede denominarse transformada secundaria no separable (NSST), transformada no separable de baja frecuencia (LFNST) o transformada secundaria reducida (RST)
[0465] Como se ha descrito anteriormente, se pueden usar cuatro conjuntos de transformadas (o conjuntos de transformadas secundarias) para mejorar la eficiencia de la memoria en la aplicación de la transformada secundaria en un ejemplo que no cae dentro del alcance de la invención reivindicada en la divulgación. Como ejemplo que no cae dentro del alcance de la invención reivindicada, un codificador/descodificador puede asignar los índices 0, 1, 2 y 3 a los cuatro conjuntos de transformadas.
[0466] Además, cada conjunto de transformadas puede incluir un número predefinido de núcleos de transformada como se ha descrito anteriormente. Como ejemplo que no cae dentro del alcance de la invención reivindicada, los cuatro conjuntos de transformadas usados para la transformada secundaria pueden estar predefinidos en el codificador y el descodificador, y cada conjunto de transformadas puede incluir una o dos matrices de transformada (o tipos de transformada o núcleos de transformada).
[0467] La siguiente tabla 20 muestra un ejemplo de transformada aplicable a una región de 8x8.
[0468] [Tabla 20]
[0471]
[0472]
[0474]
[0475]
[0477]
[0478]
[0479]
[0480]
[0481]
[0482]
[0485] La tabla 20 muestra un caso en el que los coeficientes de matriz de transformada se multiplican por un valor de escala de 128. En la Tabla 20, [4] de la primera entrada en la matriz g_aiNsst8x8[4][2][16][64] representa el número de conjuntos de transformadas (en este punto, los conjuntos de transformadas se pueden identificar por los índices 0, 1, 2 y 3), [2] de la segunda entrada representa el número de matrices de transformada que constituyen cada conjunto de transformadas, y [16] y [64] de la tercera y cuarta entradas representan filas y columnas de una RST (transformada secundaria reducida) de 16x64.
[0487] Aunque la Tabla 20 supone un caso en el que un conjunto de transformadas incluye dos matrices de transformada, si un conjunto de transformadas incluye una matriz de transformada, se puede configurar para usar una matriz de transformada en un orden específico para cada conjunto de transformadas en la Tabla 20. Por ejemplo, cuando un conjunto de transformadas incluye una matriz de transformada, el codificador/descodificador puede usar una predeterminada, es decir, la primera o la segunda matriz de transformada en cada conjunto de transformadas en la Tabla 20.
[0489] Cuando se aplica la RST de la Tabla 20, el codificador/descodificador puede configurarse (definirse o establecerse) para emitir 16 coeficientes de transformada o configurarse para generar solo m coeficientes de transformada aplicando solo una parte mx64 de una matriz de 16x64. Por ejemplo, el codificador/descodificador se puede configurar para emitir solo 8 coeficientes de transformada usando solo una matriz de 8x64 desde la parte superior estableciendo m=8. Es posible reducir a la mitad la cantidad de cálculos aplicando la transformada secundaria reducida de esta manera. Como un ejemplo que no cae dentro del alcance de la invención reivindicada, el codificador/descodificador puede aplicar una matriz de 8x64 a una unidad de transformada (TU) de 8x8 para reducir la cantidad de cálculos.
[0490] La siguiente tabla 21 muestra un ejemplo de transformada aplicable a una región de 4x4.
[0491] [Tabla 21]
[0493]
[0494]
[0496]
[0497]
[0499]
[0500]
[0503] La tabla 21 muestra un caso en el que los coeficientes de matriz de transformada se multiplican por un valor de escala de 128. En la Tabla 21, [4] de la primera entrada en la matriz g_aiNsst4x4[4][2][16][16] representa el número de conjuntos de transformadas (en este punto, los conjuntos de transformadas se pueden identificar por los índices 0, 1, 2 y 3), [2] de la segunda entrada representa el número de matrices de transformada que constituyen cada conjunto de transformadas, y [16] y [16] de la tercera y cuarta entradas representan filas y columnas de una RST (transformada secundaria reducida) de 16x16.
[0505] Aunque la Tabla 21 supone un caso en el que un conjunto de transformadas incluye dos matrices de transformada, si un conjunto de transformadas incluye una matriz de transformada, se puede configurar para usar una matriz de transformada en un orden específico para cada conjunto de transformadas en la Tabla 21. Por ejemplo, cuando un conjunto de transformadas incluye una matriz de transformada, el codificador/descodificador puede usar una predeterminada, es decir, la primera o la segunda matriz de transformada en cada conjunto de transformadas en la Tabla 21.
[0507] Cuando se aplica la RST de la Tabla 21, el codificador/descodificador puede configurarse (definirse o establecerse) para emitir 16 coeficientes de transformada o configurarse para generar solo m coeficientes de transformada aplicando solo una parte mx16 de una matriz de 16x16. Por ejemplo, el codificador/descodificador se puede configurar para emitir solo 8 coeficientes de transformada usando solo una matriz de 8x16 desde la parte superior estableciendo m=8. Es posible reducir a la mitad la cantidad de cálculos aplicando la transformada secundaria reducida de esta manera. Como una realización, el codificador/descodificador puede aplicar una matriz de 8x64 a una unidad de transformada (TU) de 8x8 para reducir la cantidad de cálculos en el peor de los casos.
[0508] En una realización, las matrices de transformada mostradas en la Tabla 20 y la Tabla 21 se pueden aplicar a las regiones superiores izquierdas de 4x4, 4x8 y 8x4 (es decir, TU) o aplicarse solo a la región superior izquierda de 4x4 según condiciones predefinidas. En el caso de TU de 4x8 y TU de 8x4, el codificador/descodificador puede dividir la mismo en dos regiones de 4x4 y aplicar una transformada designada a cada región dividida. Si la transformada secundaria se define para aplicarse solo a una región de 4x4, solo se puede aplicar (o usar) la transformada definida en la Tabla 210.
[0509] Mientras tanto, aunque los coeficientes de la matriz de transformada se definen bajo la suposición de que el valor de escala es 128 en la Tabla 20 y la Tabla 21, la divulgación no está limitada a lo mismo. Por ejemplo, los coeficientes de matriz de transformada se pueden definir como se muestra en las Tablas 22 y 23 estableciendo el valor de escala en las Tablas 20 y 21 a 256.
[0510] [Tabla 22]
[0513]
[0514]
[0515]
[0516]
[0517]
[0518]
[0519]
[0520]
[0523]
[0524]
[0526] [Tabla 23]
[0528]
[0529]
[0531]
[0532]
[0534]
[0535]
[0538] Como se ha descrito anteriormente, se pueden usar cuatro conjuntos de transformadas (o conjuntos de transformadas secundarias) para mejorar la eficiencia de la memoria en la aplicación de la transformada secundaria en un ejemplo que no cae dentro del alcance de la invención reivindicada en la divulgación. Como
ejemplo que no cae dentro del alcance de la invención reivindicada, el codificador/descodificador puede asignar los índices 0, 1, 2 y 3 a los cuatro conjuntos de transformadas.
[0539] Además, como se ha descrito anteriormente, cada conjunto de transformadas puede incluir un número predefinido de núcleos de transformada. Como ejemplo que no cae dentro del alcance de la invención reivindicada, los cuatro conjuntos de transformadas usados para la transformada secundaria pueden estar predefinidos en el codificador y el descodificador, y cada conjunto de transformadas puede incluir una o dos matrices de transformada (o tipos de transformada o núcleos de transformada).
[0540] A continuación se describirán mediante diversos ejemplos diversos conjuntos de transformadas secundarias y matrices de transformada (o tipos de transformadas o núcleos de transformadas) aplicables a la transformada secundaria. Aunque se pueden definir en detalle diversas matrices de transformada diferentes de las Tablas 20 a 23, los modos no direccionales (p. ej., el modo de CC y el modo planar) junto con un método para configurar un conjunto de transformadas secundarias generalizado se describirán principalmente usando ejemplos en el presente ejemplo que no caen dentro del alcance de la invención reivindicada para facilitar la descripción. En primer lugar, se describirán en detalle ejemplos de transformadas secundarias aplicables a una región de 4x4. Entre los ejemplos a continuación con respecto a conjuntos de transformadas secundarias que se pueden usar para la transformada secundaria, las matrices de transformada en el primer y cuarto ejemplos se pueden aplicar a un ejemplo que no cae dentro del alcance de la invención reivindicada en el que cada conjunto de transformadas incluye dos matrices de transformada. Las matrices de transformada en el segundo y tercer ejemplos se pueden aplicar a un ejemplo que no cae dentro del alcance de la invención reivindicada en el que cada conjunto de transformadas incluye una matriz de transformada.
[0541] En particular, el primer ejemplo puede aplicarse a la combinación D mencionada anteriormente y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 15, y también puede aplicarse a la combinación A y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 12, a la combinación B y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 13, a la combinación C y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 14 o a la combinación E y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 16.
[0542] En particular, la matriz de transformada (es decir, conjuntos de transformadas) del segundo ejemplo puede aplicarse a la combinación D mencionada anteriormente y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 15, y también puede aplicarse a la combinación A y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 12, a la combinación B y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 13, a la combinación C y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 14 o a la combinación E y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 16.
[0543] Aunque las combinaciones mencionadas anteriormente A, B, C, D y E manejan únicamente casos en los que el número de candidatos de MTS es tres o menos, los cuatro candidatos de MTS pueden aplicarse a todos los modos de intra-predicción en una transformada primaria. Del primero al cuarto ejemplos a continuación se pueden usar incluso cuando se aplican los cuatro candidatos de MTS y, particularmente, la matriz de transformada del cuarto ejemplo puede ser más adecuada para un caso en el que se aplican cuatro candidatos de MTS.
[0544] Las matrices de transformada del quinto a séptimo ejemplos posteriores corresponden a un caso en el que se aplican 35 conjuntos de transformadas. Se pueden aplicar cuando los conjuntos de transformadas se mapean a modos de intra-predicción, como se muestra en la Tabla 24.
[0545] [Tabla 24]
[0547]
[0548]
[0550] En la Tabla 24, el índice de conjunto de NSST representa un índice de conjunto de transformadas. Las combinaciones mencionadas anteriormente A a E se pueden aplicar incluso cuando se aplica el método de mapeo de la Tabla 24. Es decir, cada combinación se puede aplicar al quinto a octavo ejemplos como en el método descrito anteriormente.
[0551] Las matrices de transformada del quinto y octavo ejemplos se pueden aplicar a un ejemplo que no cae dentro del alcance de la invención reivindicada en el que cada conjunto de transformadas está compuesto por dos matrices de transformada, y las matrices de transformada del sexto y séptimo ejemplos se pueden aplicar a un ejemplo que no cae dentro del alcance de la invención reivindicada en el que cada conjunto de transformadas está compuesto por una matriz de transformada.
[0552] En particular, el quinto ejemplo puede aplicarse a la combinación D mencionada anteriormente y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 15, y también puede aplicarse a la combinación A y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 12, a la combinación B y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 13, a la combinación C y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 14 o a la combinación E y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 16.
[0553] En particular, las matrices de transformada (es decir, conjuntos de transformadas) del sexto y séptimo ejemplos pueden aplicarse a la combinación D mencionada anteriormente y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 15, y también puede aplicarse a la combinación A y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 12, a la combinación B y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 13, a la combinación C y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 14 o a la combinación E y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 16.
[0554] Aunque las combinaciones mencionadas anteriormente A, B, C, D y E manejan únicamente casos en los que el número de candidatos de MTS es tres o menos, los cuatro candidatos de MTS pueden aplicarse a todos los modos de intra-predicción en una transformada primaria. Del quinto al octavo ejemplos a continuación se pueden usar incluso cuando se aplican los cuatro candidatos de MTS y, particularmente, la matriz de transformada del octavo ejemplo puede ser más adecuada para un caso en el que se aplican cuatro candidatos de MTS.
[0555] Los ejemplos de transformada aplicables a una región de 4x4 entre las matrices de transformada del primer al octavo ejemplo a continuación corresponden a matrices de transformada multiplicadas por un valor de escala de 128. Las matrices de transformada de los ejemplos siguientes se pueden representar comúnmente como una matriz g_aiNsst4x4[N1][N2][16][16]. En este punto, N1 representa el número de conjuntos de transformadas. En este punto, N1 es 4 o 35 y se puede identificar mediante los índices 0, 1, ..., N1-1. N2 representa el número (1 o 2) de matrices de transformada que constituyen cada conjunto de transformadas y [16][16] representa una matriz de transformada de 16x16.
[0556] En los ejemplos a continuación, se puede usar una matriz de transformada en un orden específico para cada conjunto de transformadas cuando un conjunto de transformadas está compuesto por una sola transformada. Por ejemplo, cuando un conjunto de transformadas incluye una matriz de transformada, el codificador/descodificador puede usar una matriz de transformada predefinida, es decir, la primera o segunda matriz de transformada en cada conjunto de transformadas.
[0557] Para reducir la cantidad de cálculos en el peor de los casos, el codificador/descodificador puede aplicar una matriz de 8x16 a una TU de 4x4. Una transformada aplicable a una región de 4x4 en los ejemplos a continuación se puede aplicar a una TU de 4x4, una TU de 4xM y una TU de Mx4 (M>4), y cuando se aplica a la TU de 4xM y a la TU de Mx4, las TU se pueden dividir en regiones de 4x4 y se puede aplicar cada transformada designada a las mismas o la transformada se puede aplicar solo a una región superior izquierda de 4x8 u 8x4. Además, la transformada solo se puede aplicar a una región superior izquierda de 4x4.
[0558] En una realización, se puede aplicar lo siguiente para reducir la cantidad de cálculos en el peor de los casos. Por ejemplo, con respecto a un bloque con una anchura W y una altura H, cuando W >= 8 y H >= 8, el codificador/descodificador puede aplicar matrices de transformada (o matrices de transformada o núcleos de transformada) aplicables a una región de 8x8 a una región superior izquierda de 8x8 para el bloque (p. ej., una matriz de 16x64). Si W = 8 y H = 8, el codificador/descodificador solo puede aplicar una parte de 8x64 de la
matriz de 16x64. En este caso, una entrada de una transformada secundaria se puede generar como 8 coeficientes de transformada y los coeficientes restantes de la región correspondiente se pueden considerar como 0.
[0559] Además, si una de W o H es menor que 8 (es decir, es 4) con respecto a un bloque con anchura W y altura H, por ejemplo, el codificador/descodificador puede aplicar matrices de transformada aplicables a una región de 4x4. Si W = 4 y H = 4, el codificador/descodificador se puede aplicar a una parte de 8x16 de una matriz de 16x16. En este caso, una entrada de una transformada secundaria se puede generar como 8 coeficientes de transformada y los coeficientes restantes de la región correspondiente se pueden considerar como 0.
[0560] En una realización, si (W, H) = (4, 8) u (8, 4), el codificador/descodificador puede aplicar una transformada secundaria solo a una región superior izquierda de 4x4. Cuando W o H es mayor que 8, el codificador/descodificador aplica la transformada secundaria solo a dos bloques superiores izquierdos de 4x4. Es decir, el codificador/descodificador puede dividir como máximo la región superior izquierda de 4x8 u 8x4 en dos bloques de 4x4 y aplicar una matriz de transformada designada a los mismos.
[0561] Primer ejemplo
[0562] El primer ejemplo se puede definir como la siguiente tabla 25. Se pueden definir cuatro conjuntos de transformadas y cada conjunto de transformadas puede estar compuesto por dos matrices de transformada.
[0564] [Tabla 25]
[0567]
[0568]
[0570] Segundo ejemplo
[0571] El segundo ejemplo se puede definir como la siguiente tabla 26. Se pueden definir cuatro conjuntos de transformadas y cada conjunto de transformadas puede estar compuesto por una matriz de transformada.
[0572] [Tabla 26]
[0574]
[0576] Tercer ejemplo
[0577] El tercer ejemplo se puede definir como la siguiente tabla 27. Se pueden definir cuatro conjuntos de transformadas y cada conjunto de transformadas puede estar compuesto por una matriz de transformada.
[0578] [Tabla 27]
[0580]
[0582] Cuarto ejemplo
[0583] El cuarto ejemplo se puede definir como la siguiente tabla 28. Se pueden definir cuatro conjuntos de transformadas y cada conjunto de transformadas puede estar compuesto por dos matrices de transformada.
[0584] [Tabla 28]
[0586]
[0587]
[0589] Quinto ejemplo
[0590] El quinto ejemplo se puede definir como la siguiente tabla 29. Se pueden definir 35 conjuntos de transformadas y cada conjunto de transformadas puede estar compuesto por dos matrices de transformada.
[0591] [Tabla 29]
[0593]
[0594]
[0596] Sexto ejemplo
[0597] El sexto ejemplo se puede definir como la siguiente tabla 30. Se pueden definir 35 conjuntos de transformadas y cada conjunto de transformadas puede estar compuesto por una matriz de transformada.
[0598] [Tabla 30]
[0600]
[0601]
[0603] Séptimo ejemplo
[0604] El séptimo ejemplo se puede definir como la siguiente tabla 31. Se pueden definir 35 conjuntos de transformadas y cada conjunto de transformadas puede estar compuesto por una matriz de transformada. [Tabla 31]
[0607]
[0609] Octavo ejemplo
[0610] El octavo ejemplo se puede definir como la siguiente tabla 32. Se pueden definir 35 conjuntos de transformadas y cada conjunto de transformadas puede estar compuesto por dos matrices de transformada.
[0611] [Tabla 32]
[0614]
[0617] A continuación en la presente memoria, se describirán ejemplos de transformadas secundarias aplicables a una región de 8x8. Entre los siguientes ejemplos con respecto a los conjuntos de transformadas secundarias disponibles para la transformada secundaria, las matrices de transformada del noveno y duodécimo ejemplos se pueden aplicar a una realización en la que cada conjunto de transformadas está compuesto por dos matrices de transformada. Las matrices de transformada del décimo y undécimo ejemplos pueden aplicarse a una realización en la que cada conjunto de transformadas está compuesto por una matriz de transformada.
[0618] En particular, el noveno ejemplo puede aplicarse a la combinación D mencionada anteriormente y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 15, y también puede aplicarse a la combinación A y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 12, a la combinación B y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 13, a la combinación C y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 14 o a la combinación E y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 16.
[0619] En particular, las matrices de transformada (es decir, conjuntos de transformadas) del décimo ejemplo pueden aplicarse a la combinación D mencionada anteriormente y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 15, y también puede aplicarse a la combinación A y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 12, a la combinación B y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 13, a la combinación C y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 14 o a la combinación E y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 16.
[0620] Aunque las combinaciones mencionadas anteriormente A, B, C, D y E manejan únicamente casos en los que el número de candidatos de MTS es tres o menos, los cuatro candidatos de MTS pueden aplicarse a todos los modos de intra-predicción en una transformada primaria. Del noveno al duodécimo ejemplos a continuación se pueden usar incluso cuando se aplican los cuatro candidatos de MTS y, particularmente, la matriz de transformada del duodécimo ejemplo puede ser más adecuada para un caso en el que se aplican cuatro candidatos de MTS.
[0621] Las matrices de transformada del decimotercero a decimosexto ejemplos posteriores corresponden a un caso en el que se aplican 35 conjuntos de transformadas. Se pueden aplicar a un caso en el que los conjuntos de transformadas se asignan a los modos de intra-predicción respectivos como se muestra en la tabla 24 mencionada anteriormente.
[0622] En la Tabla 24, el índice de conjunto de NSST representa un índice de conjunto de transformadas. Las combinaciones mencionadas anteriormente A a E se pueden aplicar incluso cuando se aplica el método de mapeo de la Tabla 24. Es decir, cada combinación se puede aplicar al decimotercer a decimosexto ejemplos como en el método descrito anteriormente.
[0623] Las matrices de transformada del decimotercer y decimosexto ejemplos se pueden aplicar a un ejemplo que no cae dentro del alcance de la invención reivindicada en el que cada conjunto de transformadas está compuesto por dos matrices de transformada, y las matrices de transformada del decimocuarto y decimoquinto ejemplos se pueden aplicar a un ejemplo que no cae dentro del alcance de la invención reivindicada en el que cada conjunto de transformadas está compuesto por una matriz de transformada.
[0624] En particular, el decimotercer ejemplo puede aplicarse a la combinación D mencionada anteriormente y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 15, y también puede aplicarse a la combinación A y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 12, a la combinación B y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 13, a la combinación C y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 14 o a la combinación E y al Caso 1 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 16.
[0625] En particular, las matrices de transformada (es decir, conjuntos de transformadas) del decimocuarto y decimoquinto ejemplos pueden aplicarse a la combinación D mencionada anteriormente y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 15, y también puede aplicarse a la combinación A y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 12, a la combinación B y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 13, a la combinación C y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 14 o a la combinación E y al Caso 3 del ejemplo que no cae dentro del alcance de la invención reivindicada descrito en la Tabla 16.
[0626] Aunque las combinaciones mencionadas anteriormente A, B, C, D y E manejan únicamente casos en los que el número de candidatos de MTS es tres o menos, los cuatro candidatos de MTS pueden aplicarse a todos los modos de intra-predicción en una transformada primaria. Del decimotercer al decimosexto ejemplos a continuación se pueden usar incluso cuando se aplican los cuatro candidatos de MTS y, particularmente, la matriz de transformada del octavo ejemplo puede ser más adecuada para un caso en el que se aplican cuatro candidatos de MTS.
[0627] Los ejemplos de transformada aplicables a una región de 8x8 entre las matrices de transformada del octavo a decimosexto ejemplos a continuación corresponden a matrices de transformada multiplicadas por un valor de escala de 128. Las matrices de transformada de los ejemplos siguientes se pueden representar comúnmente como una matriz g_aiNsst8x8[N1][N2][16][64]. En este punto, N1 representa el número de conjuntos de transformadas. En este punto, N1 es 4 o 35 y se puede identificar mediante los índices 0, 1, ..., N1-1. N2 representa el número (1 o 2) de matrices de transformada que constituyen cada conjunto de transformadas y [16][64] representa una transformada secundaria reducida (RST) de 16x64.
[0628] En los ejemplos a continuación, se puede usar una matriz de transformada en un orden específico para cada conjunto de transformadas cuando un conjunto de transformadas está compuesto por una sola transformada. Por ejemplo, cuando un conjunto de transformadas incluye una matriz de transformada, el codificador/descodificador puede usar una matriz de transformada predefinida, es decir, la primera o segunda matriz de transformada en cada conjunto de transformadas.
[0629] Aunque se emiten 16 coeficientes de transformada cuando se aplica la RST, solo se pueden configurar m coeficientes de transformada para que se emitan cuando solo se aplica una parte mx64 de una matriz de 16x64. Por ejemplo, la cantidad de cálculos se puede reducir a la mitad estableciendo m a 8, multiplicando solo una matriz de 8x64 desde arriba para emitir solo 8 coeficientes de transformada.
[0630] Noveno ejemplo
[0631] El noveno ejemplo se puede definir como la siguiente tabla 33. Se pueden definir cuatro conjuntos de transformadas y cada conjunto de transformadas puede estar compuesto por dos matrices de transformada.
[0632] [Tabla 33]
[0635]
[0636]
[0637]
[0638]
[0640] Décimo ejemplo
[0641] El décimo ejemplo se puede definir como la siguiente tabla 34. Se pueden definir cuatro conjuntos de transformadas y cada conjunto de transformadas puede estar compuesto por una matriz de transformada.
[0642] [Tabla 34]
[0645]
[0646]
[0648] Undécimo ejemplo
[0649] El undécimo ejemplo se puede definir como la siguiente tabla 35. Se pueden definir cuatro conjuntos de transformadas y cada conjunto de transformadas puede estar compuesto por una matriz de transformada.
[0650] [Tabla 35]
[0652]
[0653]
[0656]
[0657] Duodécimo ejemplo
[0658] El duodécimo ejemplo se puede definir como la siguiente tabla 36. Se pueden definir cuatro conjuntos de transformadas y cada conjunto de transformadas puede estar compuesto por dos matrices de transformada.
[0659] [Tabla 36]
[0661]
[0662]
[0663]
[0665] Decimotercer ejemplo
[0666] El decimotercer ejemplo se puede definir como la siguiente tabla 37. Se pueden definir 35 conjuntos de transformadas y cada conjunto de transformadas puede estar compuesto por dos matrices de transformada.
[0667] [Tabla 37]
[0669]
[0670]
[0671]
[0673] Decimocuarto ejemplo
[0674] El decimocuarto ejemplo se puede definir como la siguiente tabla 38. Se pueden definir 35 conjuntos de transformadas y cada conjunto de transformadas puede estar compuesto por una matriz de transformada.
[0675] [Tabla 38]
[0677]
[0678]
[0680] Decimoquinto ejemplo
[0681] El decimoquinto ejemplo se puede definir como la siguiente tabla 39. Se pueden definir 35 conjuntos de transformadas y cada conjunto de transformadas puede estar compuesto por una matriz de transformada.
[0682] [Tabla 39]
[0684]
[0685]
[0687] Decimosexto ejemplo
[0688] El decimosexto ejemplo se puede definir como la siguiente tabla 40. Se pueden definir 35 conjuntos de transformadas y cada conjunto de transformadas puede estar compuesto por dos matrices de transformada.
[0689] [Tabla 40]
[0691]
[0692]
[0695] La FIG. 27 es un diagrama de flujo que muestra un método para transformar una señal de vídeo según una realización a la que se aplica la presente divulgación.
[0697] Haciendo referencia a la FIG. 27, aunque la descripción se centrará en un descodificador para mayor comodidad, la divulgación no está limitada a lo mismo y el método para transformar una señal de vídeo según
la presente realización puede aplicarse igualmente a un codificador. El diagrama de flujo de la FIG. 27 puede ser ejecutado por un aparato 200 de descodificación o una unidad 230 de transformada inversa.
[0698] El aparato 200 de descodificación determina un conjunto de transformadas secundarias aplicado a un bloque actual de entre conjuntos de transformadas secundarias predefinidos basándose en un modo de intrapredicción del bloque actual (S2701).
[0699] El aparato 200 de descodificación adquiere un primer elemento de sintaxis que indica una matriz de transformada secundaria aplicada al bloque actual en el conjunto de transformadas secundarias determinado (S2702).
[0700] El aparato 200 de descodificación deriva un bloque transformado a la inversa secundario realizando una transformada inversa secundaria en una región superior izquierda del bloque actual usando una matriz de transformada secundaria especificada por el primer elemento de sintaxis (S2703).
[0701] El aparato 200 de descodificación deriva un bloque residual del bloque actual realizando una transformada inversa primaria en el bloque transformado a la inversa secundario usando una matriz de transformada primaria del bloque actual (S2704).
[0702] Como se ha descrito anteriormente, cada uno de los conjuntos de transformadas secundarias predefinidos puede incluir dos matrices de transformada secundaria.
[0703] Como se ha descrito anteriormente, la etapa S2704 puede incluir además la etapa de determinar una longitud de entrada y una longitud de salida de la transformada inversa secundaria basándose en la anchura y la altura del bloque actual. Como se ha descrito anteriormente, cuando tanto la altura como la anchura del bloque actual son 4, la longitud de entrada de la transformada no separable se puede determinar como 8 y la longitud de salida de la misma se puede determinar como 16.
[0704] Como se ha descrito anteriormente, el aparato 200 de descodificación puede analizar un segundo elemento de sintaxis que indica una matriz de transformada primaria aplicada a una transformada primaria del bloque actual. Además, el aparato 200 de descodificación puede determinar si una transformada secundaria es aplicable al bloque actual basándose en el segundo elemento de sintaxis.
[0705] Como se ha descrito anteriormente, la etapa de determinar si la transformada secundaria es aplicable se puede ejecutar determinando que la transformada secundaria es aplicable al bloque actual cuando el segundo elemento de sintaxis indica un tipo de transformada específico predefinido.
[0706] Como se ha descrito anteriormente, el tipo de transformada específico predefinido puede ser DCT2.
[0707] La FIG.28 es un diagrama de bloques de ejemplo de un aparato para procesar señales de vídeo como ejemplo que no cae dentro del alcance de la invención reivindicada a la que se aplica la presente divulgación. El aparato de procesamiento de señales de vídeo mostrado en la FIG.28 puede corresponder al aparato de codificación de la FIG.1 o al aparato de descodificación de la FIG.2.
[0708] Un aparato 2800 de procesamiento de vídeo para procesar señales de vídeo incluye una memoria 2820 que almacena señales de vídeo y un procesador 2810 que está combinado con la memoria y procesa señales de vídeo.
[0709] El procesador 2810, según un ejemplo que no cae dentro del alcance de la invención reivindicada de la presente divulgación, puede configurarse como al menos un circuito de procesamiento para el procesamiento de señales de vídeo y puede procesar señales de vídeo ejecutando comandos para codificar o descodificar las señales de vídeo. Es decir, el procesador 2810 puede codificar datos de vídeo originales o descodificar señales de vídeo codificadas realizando los métodos de codificación o descodificación descritos anteriormente.
[0710] Además, los métodos de procesamiento a los que se aplica la presente divulgación pueden fabricarse en forma de programa ejecutado por un ordenador y almacenado en medios de grabación legibles por ordenador. Los datos multimedia que tienen la estructura de datos de acuerdo con la presente divulgación también pueden almacenarse en medios de grabación legibles por ordenador. Los medios de grabación legibles por ordenador incluyen todo tipo de dispositivos de almacenamiento y dispositivos de almacenamiento distribuido en los que se almacenan datos legibles por un ordenador. Los medios de grabación legibles por ordenador pueden incluir un disco Blueray (BD), un bus serie universal (USB), una ROM, una PROM, una EEPROM, una RAM, un CD-ROM, una cinta magnética, un disquete y un dispositivo de almacenamiento de datos ópticos, por ejemplo. Además, los medios de grabación legibles por ordenador incluyen medios implementados en forma de ondas portadoras (p. ej., transmisión a través de Internet). Además, un flujo de bits generado por el método de codificación puede almacenarse en un medio de grabación legible por ordenador o transmitirse a través de redes de comunicación alámbricas/inalámbricas.
[0711] Además, las realizaciones de la presente divulgación pueden implementarse como productos de programas informáticos según el código del programa, y el código de programa puede ejecutarse en un ordenador según la realización de la presente divulgación. El código del programa puede almacenarse en soportes legibles por ordenador.
[0712] Como se ha descrito anteriormente, las realizaciones de la presente divulgación pueden implementarse y ejecutarse en un procesador, un microprocesador, un controlador o un chip. Por ejemplo, las unidades funcionales mostradas en cada figura pueden implementarse y ejecutarse en un ordenador, un procesador, un microprocesador, un controlador o un chip.
[0713] Además, el descodificador y el codificador a los que se aplica la presente divulgación pueden estar incluidos en aparatos de transmisión/recepción de difusión multimedia, terminales de comunicación móvil, sistemas de vídeo de cine en casa, sistemas de vídeo de cine digital, cámaras de monitorización, aparatos de conversación de vídeo, aparatos de comunicación en tiempo real tal como comunicación de vídeo, dispositivos de emisión en continuo móvil, medios de almacenamiento, videocámaras, aparatos de suministro de servicios de vídeo bajo demanda (VoD), sistemas de vídeo de libre transmisión (OTT), aparatos de suministro de servicios de emisión en continuo por Internet, sistemas de vídeo 3D, sistemas de vídeo para videoteléfonos, sistemas de vídeo médicos, etc., y pueden usarse para procesar señales de vídeo o señales de datos. Por ejemplo, los sistemas de vídeo OTT pueden incluir consolas de juegos, reproductores de Blu-ray, televisores con acceso a Internet, sistemas de cine en casa, teléfonos inteligentes, PC de tableta, grabadoras de vídeo digitales (DVR), etc.
[0714] Además, los métodos de procesamiento a los que se aplica la presente divulgación pueden fabricarse en forma de programa ejecutado por un ordenador y almacenado en medios de grabación legibles por ordenador. Los datos multimedia que tienen la estructura de datos de acuerdo con la presente divulgación también pueden almacenarse en medios de grabación legibles por ordenador. Los medios de grabación legibles por ordenador incluyen todo tipo de dispositivos de almacenamiento y dispositivos de almacenamiento distribuido en los que se almacenan datos legibles por un ordenador. Los medios de grabación legibles por ordenador pueden incluir un disco Blueray (BD), un bus serie universal (USB), una ROM, una PROM, una EEPROM, una RAM, un CD-ROM, una cinta magnética, un disquete y un dispositivo de almacenamiento de datos ópticos, por ejemplo. Además, los medios de grabación legibles por ordenador incluyen medios implementados en forma de ondas portadoras (p. ej., transmisión a través de Internet). Además, un flujo de bits generado por el método de codificación puede almacenarse en un medio de grabación legible por ordenador o transmitirse a través de redes de comunicación alámbricas/inalámbricas.
[0715] Además, las realizaciones de la presente divulgación pueden implementarse como productos de programas informáticos según el código del programa, y el código de programa puede ejecutarse en un ordenador según la realización de la presente divulgación. El código del programa puede almacenarse en soportes legibles por ordenador.
[0716] Las implementaciones de la presente divulgación pueden lograrse mediante diversos medios, por ejemplo, hardware, firmware, software o una combinación de los mismos. En una configuración de hardware, los métodos según las implementaciones de la presente divulgación pueden lograrse mediante uno o más circuitos integrados específicos de la aplicación (ASIC), procesadores de señales digitales (DSP), dispositivos de procesamiento de señales digitales (DSPD), dispositivos lógicos programables (PLD), matrices de puertas programables en campo (FPGA), procesadores, controladores, microcontroladores, microprocesadores, etc. En una configuración de firmware o software, las implementaciones de la presente divulgación pueden implementarse en forma de un módulo, un procedimiento, una función, etc. El código de software puede almacenarse en la memoria y ser ejecutado por el procesador. La memoria puede estar ubicada en el interior o el exterior del procesador y puede transmitir datos hacia y recibir datos del procesador a través de diversos medios conocidos.
[0717] [Aplicabilidad industrial]
[0718] Aunque se han descrito aspectos de ejemplo de la presente divulgación con fines ilustrativos, los expertos en la técnica apreciarán que son posibles diversas modificaciones, adiciones y sustituciones sin apartarse de las características esenciales de la divulgación.
Claims (1)
1. REIVINDICACIONES
1. Un método para descodificar una señal de vídeo, que comprende:
determinar, basándose en un modo de intra predicción de un bloque actual, un conjunto de transformadas secundarias aplicado al bloque actual entre conjuntos de transformadas secundarias predeterminados; obtener un primer elemento de sintaxis que especifica cuál matriz de transformada secundaria se aplica al bloque actual entre dos matrices de transformada secundarias incluidas en el conjunto de transformadas secundarias determinado;
derivar un bloque transformado a la inversa secundario realizando una transformada inversa secundaria para una región superior izquierda del bloque actual basándose en la matriz de transformada secundaria especificada por el primer elemento de sintaxis; y
derivar un bloque residual del bloque actual, realizando una transformada inversa primaria para el bloque transformado a la inversa secundario basándose en una matriz de transformada primaria del bloque actual, caracterizado por que
una longitud de entrada de la transformada inversa secundaria se determina como 8 basándose en que la anchura y la altura del bloque actual son 4, y la longitud de entrada de la transformada inversa secundaria se determina como 8 basándose en que la anchura y la altura del bloque actual son 8, indicando la longitud de entrada de la transformada inversa secundaria un número de coeficientes de entrada a la matriz de transformada secundaria.
Applications Claiming Priority (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201862727550P | 2018-09-05 | 2018-09-05 | |
| US201862731075P | 2018-09-13 | 2018-09-13 | |
| US201862731078P | 2018-09-13 | 2018-09-13 | |
| US201862731073P | 2018-09-13 | 2018-09-13 | |
| PCT/KR2019/011514 WO2020050665A1 (ko) | 2018-09-05 | 2019-09-05 | 비디오 신호의 부호화/복호화 방법 및 이를 위한 장치 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES3055128T3 true ES3055128T3 (en) | 2026-02-10 |
Family
ID=69723164
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES19856708T Active ES3055128T3 (en) | 2018-09-05 | 2019-09-05 | Method for encoding/decoding video signal, and apparatus therefor |
Country Status (14)
| Country | Link |
|---|---|
| US (4) | US11245894B2 (es) |
| EP (2) | EP4664892A3 (es) |
| JP (5) | JP7055879B2 (es) |
| KR (4) | KR20250161682A (es) |
| CN (4) | CN115484463B (es) |
| ES (1) | ES3055128T3 (es) |
| FI (1) | FI3723372T3 (es) |
| HR (1) | HRP20251510T1 (es) |
| LT (1) | LT3723372T (es) |
| PL (1) | PL3723372T3 (es) |
| PT (1) | PT3723372T (es) |
| RS (1) | RS67490B1 (es) |
| SI (1) | SI3723372T1 (es) |
| WO (1) | WO2020050665A1 (es) |
Families Citing this family (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11350118B2 (en) * | 2018-05-30 | 2022-05-31 | Digitalinsights Inc. | Image encoding/decoding method and device |
| EP4664892A3 (en) * | 2018-09-05 | 2026-03-11 | LG Electronics Inc. | Method for encoding/decoding video signal, and apparatus therefor |
| CN116684641A (zh) * | 2018-12-06 | 2023-09-01 | Lg电子株式会社 | 图像编解码方法、存储介质和数据发送方法 |
| KR102802877B1 (ko) | 2018-12-19 | 2025-05-07 | 엘지전자 주식회사 | 이차 변환에 기반한 영상 코딩 방법 및 그 장치 |
| JP7267461B2 (ja) * | 2019-05-10 | 2023-05-01 | 北京字節跳動網絡技術有限公司 | ビデオ・データ処理方法、装置、記憶媒体及び記憶方法 |
| EP3967032A4 (en) | 2019-06-07 | 2022-07-27 | Beijing Bytedance Network Technology Co., Ltd. | CONDITIONAL SIGNALING OF A REDUCED SECONDARY TRANSFORM FOR VIDEO BIANARY FLOWS |
| CN117376555A (zh) | 2019-08-03 | 2024-01-09 | 北京字节跳动网络技术有限公司 | 视频编解码中缩减二次变换的矩阵的选择 |
| CN114223208B (zh) | 2019-08-17 | 2023-12-29 | 北京字节跳动网络技术有限公司 | 为视频中的缩减二次变换的边信息的上下文建模 |
| US11677984B2 (en) * | 2019-08-20 | 2023-06-13 | Qualcomm Incorporated | Low-frequency non-separable transform (LFNST) signaling |
| US11457229B2 (en) * | 2019-12-23 | 2022-09-27 | Qualcomm Incorporated | LFNST signaling for chroma based on chroma transform skip |
| US11582491B2 (en) * | 2020-03-27 | 2023-02-14 | Qualcomm Incorporated | Low-frequency non-separable transform processing in video coding |
| US11683514B2 (en) * | 2020-12-22 | 2023-06-20 | Tencent America LLC | Method and apparatus for video coding for machine |
| WO2022265420A1 (ko) * | 2021-06-16 | 2022-12-22 | 엘지전자 주식회사 | 영상 코딩 방법 및 그 장치 |
| US12425592B2 (en) | 2021-06-16 | 2025-09-23 | Lg Electronics Inc. | Method and device for designing low-frequency non-separable transform |
| WO2022265417A1 (ko) * | 2021-06-16 | 2022-12-22 | 엘지전자 주식회사 | 저주파 비분리 변환 설계 방법 및 장치 |
| US11930177B2 (en) | 2021-10-29 | 2024-03-12 | Tencent America LLC | Primary transforms for cross-component level reconstruction |
Family Cites Families (81)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05308622A (ja) * | 1992-04-28 | 1993-11-19 | Mitsubishi Electric Corp | 画像符号化・復号化装置 |
| US6266370B1 (en) * | 1996-09-03 | 2001-07-24 | Nippon Telegraph And Telephone Corporation | Brightness-variation compensation method and coding/decoding apparatus for moving pictures |
| KR100281099B1 (ko) * | 1997-07-30 | 2001-04-02 | 구자홍 | 동영상의부호화에따른블록화현상제거방법 |
| US7239755B1 (en) * | 1997-07-30 | 2007-07-03 | Lg Electronics Inc. | Method of reducing a blocking artifact when coding moving picture |
| US6295320B1 (en) * | 1997-12-31 | 2001-09-25 | Lg Electronics Inc. | Inverse discrete cosine transforming system for digital television receiver |
| US6263021B1 (en) * | 1998-09-18 | 2001-07-17 | Sarnoff Corporation | Treating non-zero quantized transform coefficients as zeros during video compression processing |
| AUPQ668500A0 (en) * | 2000-04-04 | 2000-05-04 | Canon Kabushiki Kaisha | Accessing items of information |
| KR100561398B1 (ko) * | 2003-06-10 | 2006-03-16 | 삼성전자주식회사 | 동화상 내 구획별로 휘도 변화를 검출하고 보상하는 장치 및 방법 |
| KR100565308B1 (ko) * | 2003-11-24 | 2006-03-30 | 엘지전자 주식회사 | 에스엔알 스케일러빌리티를 위한 동영상 부호화 및 복호화 장치 |
| US20050281332A1 (en) * | 2004-06-22 | 2005-12-22 | Wai-Ming Lai | Transform coefficient decoding |
| WO2006048849A1 (en) * | 2004-11-08 | 2006-05-11 | Koninklijke Philips Electronics N.V. | Bit detection for multitrack digital data storage |
| US7720299B2 (en) * | 2005-05-10 | 2010-05-18 | The Aerospace Corporation | Compressed data multiple description transmission and resolution conversion system |
| JP4856954B2 (ja) * | 2005-06-08 | 2012-01-18 | パナソニック株式会社 | 画像符号化装置 |
| US20090281812A1 (en) * | 2006-01-18 | 2009-11-12 | Lg Electronics Inc. | Apparatus and Method for Encoding and Decoding Signal |
| CN101137065A (zh) * | 2006-09-01 | 2008-03-05 | 华为技术有限公司 | 图像编码方法、解码方法、编码器、解码器、编解码方法及编解码器 |
| US20080071846A1 (en) * | 2006-09-14 | 2008-03-20 | Texas Instruments Incorporated | Processor Architecture for Programmable Digital Filters in a Multi-Standard Integrated Circuit |
| WO2008120279A1 (ja) * | 2007-03-29 | 2008-10-09 | Fujitsu Limited | 画像圧縮装置、画像圧縮方法、画像復元装置、及びプログラム |
| EP2156670A4 (en) * | 2007-05-29 | 2015-10-28 | Lg Electronics Inc | METHOD AND APPARATUS FOR PROCESSING A VIDEO SIGNAL |
| WO2009051419A2 (en) * | 2007-10-16 | 2009-04-23 | Lg Electronics Inc. | A method and an apparatus for processing a video signal |
| US8576914B2 (en) * | 2011-01-10 | 2013-11-05 | Cisco Technology, Inc. | Integer transform video compression system, method and computer program product |
| US20110116539A1 (en) * | 2009-11-13 | 2011-05-19 | Freescale Semiconductor, Inc. | Method and apparatus for video decoding with reduced complexity inverse transform |
| US9288495B2 (en) * | 2009-11-24 | 2016-03-15 | Sk Telecom Co., Ltd. | Adaptive secondary prediction-based image encoding/decoding method, device and recording medium |
| US9661338B2 (en) * | 2010-07-09 | 2017-05-23 | Qualcomm Incorporated | Coding syntax elements for adaptive scans of transform coefficients for video coding |
| KR20120034044A (ko) * | 2010-09-30 | 2012-04-09 | 한국전자통신연구원 | 영상 변환 부호화/복호화 방법 및 장치 |
| US9378185B2 (en) * | 2010-09-30 | 2016-06-28 | Texas Instruments Incorporated | Transform and quantization architecture for video coding and decoding |
| US9177562B2 (en) * | 2010-11-24 | 2015-11-03 | Lg Electronics Inc. | Speech signal encoding method and speech signal decoding method |
| JP5552092B2 (ja) * | 2011-06-13 | 2014-07-16 | 日本電信電話株式会社 | 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム |
| US9496886B2 (en) * | 2011-06-16 | 2016-11-15 | Spatial Digital Systems, Inc. | System for processing data streams |
| US20130003856A1 (en) * | 2011-07-01 | 2013-01-03 | Samsung Electronics Co. Ltd. | Mode-dependent transforms for residual coding with low latency |
| US9338463B2 (en) * | 2011-10-06 | 2016-05-10 | Synopsys, Inc. | Visual quality measure for real-time video processing |
| CA2853002C (en) * | 2011-10-18 | 2017-07-25 | Kt Corporation | Method for encoding image, method for decoding image, image encoder, and image decoder |
| CN103907348A (zh) * | 2011-10-31 | 2014-07-02 | 三菱电机株式会社 | 运动图像编码装置、运动图像解码装置、运动图像编码方法以及运动图像解码方法 |
| JP2013168931A (ja) * | 2012-01-18 | 2013-08-29 | Jvc Kenwood Corp | 画像符号化装置、画像符号化方法及び画像符号化プログラム |
| JP2013168932A (ja) * | 2012-01-18 | 2013-08-29 | Jvc Kenwood Corp | 画像復号装置、画像復号方法及び画像復号プログラム |
| JP5930441B2 (ja) * | 2012-02-14 | 2016-06-08 | ホアウェイ・テクノロジーズ・カンパニー・リミテッド | マルチチャネルオーディオ信号の適応ダウン及びアップミキシングを実行するための方法及び装置 |
| WO2013154366A1 (ko) * | 2012-04-12 | 2013-10-17 | 주식회사 팬택 | 블록 정보에 따른 변환 방법 및 이러한 방법을 사용하는 장치 |
| WO2014010464A1 (ja) * | 2012-07-10 | 2014-01-16 | シャープ株式会社 | 予測ベクトル生成装置、画像符号化装置、画像復号装置、予測ベクトル生成方法、およびプログラム |
| US9344742B2 (en) * | 2012-08-10 | 2016-05-17 | Google Inc. | Transform-domain intra prediction |
| US9319684B2 (en) * | 2012-08-21 | 2016-04-19 | Qualcomm Incorporated | Alternative transform in scalable video coding |
| US9177415B2 (en) * | 2013-01-30 | 2015-11-03 | Arm Limited | Methods of and apparatus for encoding and decoding data |
| JP5692260B2 (ja) * | 2013-03-06 | 2015-04-01 | 株式会社Jvcケンウッド | 動画像復号装置、動画像復号方法、動画像復号プログラム、受信装置、受信方法、及び受信プログラム |
| AU2013206815A1 (en) * | 2013-07-11 | 2015-03-05 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding video data |
| US10313682B2 (en) * | 2013-08-26 | 2019-06-04 | Qualcomm Incorporated | Determining regions when performing intra block copying |
| WO2015058395A1 (en) * | 2013-10-25 | 2015-04-30 | Microsoft Technology Licensing, Llc | Hash-based block matching in video and image coding |
| US11076171B2 (en) * | 2013-10-25 | 2021-07-27 | Microsoft Technology Licensing, Llc | Representing blocks with hash values in video and image coding and decoding |
| TWI551124B (zh) * | 2014-07-11 | 2016-09-21 | 晨星半導體股份有限公司 | 應用於視訊系統之編碼/解碼方法及編碼/解碼裝置 |
| US20160044314A1 (en) * | 2014-08-08 | 2016-02-11 | Qualcomm Incorporated | System and method for reusing transform structure for multi-partition transform |
| CN105516730B (zh) * | 2014-09-24 | 2018-04-24 | 晨星半导体股份有限公司 | 视讯编码装置及视讯解码装置以及其编码与解码方法 |
| US10405000B2 (en) * | 2014-11-21 | 2019-09-03 | Vid Scale, Inc. | One-dimensional transform modes and coefficient scan order |
| JP2015111910A (ja) * | 2015-01-30 | 2015-06-18 | 株式会社Jvcケンウッド | 動画像復号装置、動画像復号方法、動画像復号プログラム、受信装置、受信方法、及び受信プログラム |
| RU2596751C1 (ru) | 2015-05-07 | 2016-09-10 | Общество с ограниченной ответственностью "НПО БиоМикроГели" | Вещество для очистки почвы и твердых поверхностей от масел, в том числе от нефти и нефтепродуктов, и способ его использования (варианты) |
| US10520916B1 (en) * | 2015-06-01 | 2019-12-31 | Richard A Gros & Associates, Inc. | Control systems |
| WO2016200043A1 (ko) * | 2015-06-10 | 2016-12-15 | 엘지전자 주식회사 | 비디오 코딩 시스템에서 가상 참조 픽처 기반 인터 예측 방법 및 장치 |
| US20170034530A1 (en) * | 2015-07-28 | 2017-02-02 | Microsoft Technology Licensing, Llc | Reduced size inverse transform for decoding and encoding |
| US10491922B2 (en) * | 2015-09-29 | 2019-11-26 | Qualcomm Incorporated | Non-separable secondary transform for video coding |
| CN112929661B (zh) * | 2015-10-13 | 2023-04-21 | 三星电子株式会社 | 解码方法和编码方法 |
| EP3367680B1 (en) * | 2015-10-22 | 2020-07-01 | LG Electronics Inc. | Intra-prediction method and apparatus in video coding system |
| JP6837984B2 (ja) * | 2015-10-23 | 2021-03-03 | 徹幸 平畑 | 遺伝子治療用組成物 |
| US9721582B1 (en) * | 2016-02-03 | 2017-08-01 | Google Inc. | Globally optimized least-squares post-filtering for speech enhancement |
| US9998746B2 (en) * | 2016-02-10 | 2018-06-12 | Amazon Technologies, Inc. | Video decoder memory optimization |
| US10448053B2 (en) * | 2016-02-15 | 2019-10-15 | Qualcomm Incorporated | Multi-pass non-separable transforms for video coding |
| WO2017173593A1 (en) * | 2016-04-06 | 2017-10-12 | Mediatek Singapore Pte. Ltd. | Separate coding secondary transform syntax elements for different color components |
| US10708164B2 (en) * | 2016-05-03 | 2020-07-07 | Qualcomm Incorporated | Binarizing secondary transform index |
| CN109076243B (zh) * | 2016-05-04 | 2022-01-25 | 夏普株式会社 | 用于对变换数据进行编码的系统和方法 |
| WO2017195555A1 (ja) * | 2016-05-13 | 2017-11-16 | シャープ株式会社 | 画像復号装置および画像符号化装置 |
| CN117201809A (zh) * | 2016-08-01 | 2023-12-08 | 韩国电子通信研究院 | 图像编码/解码方法和装置以及存储比特流的记录介质 |
| WO2018038554A1 (ko) * | 2016-08-24 | 2018-03-01 | 엘지전자(주) | 이차 변환을 이용한 비디오 신호의 인코딩/디코딩 방법 및 장치 |
| WO2018049594A1 (en) * | 2016-09-14 | 2018-03-22 | Mediatek Inc. | Methods of encoder decision for quad-tree plus binary tree structure |
| EP3301643A1 (en) * | 2016-09-30 | 2018-04-04 | Thomson Licensing | Method and apparatus for rectified motion compensation for omnidirectional videos |
| US11095893B2 (en) * | 2016-10-12 | 2021-08-17 | Qualcomm Incorporated | Primary transform and secondary transform in video coding |
| KR102416804B1 (ko) * | 2016-10-14 | 2022-07-05 | 세종대학교산학협력단 | 영상 부호화 방법/장치, 영상 복호화 방법/장치 및 비트스트림을 저장한 기록 매체 |
| CN116886907A (zh) * | 2016-10-14 | 2023-10-13 | 世宗大学校产学协力团 | 影像编码方法、影像解码方法以及传送比特流的方法 |
| US20180176582A1 (en) * | 2016-12-21 | 2018-06-21 | Qualcomm Incorporated | Low-complexity sign prediction for video coding |
| CN109891882B (zh) * | 2016-12-26 | 2021-05-11 | 华为技术有限公司 | 一种基于模板匹配的编解码方法及装置 |
| CN110326294A (zh) * | 2017-01-03 | 2019-10-11 | Lg电子株式会社 | 使用二次变换编码/解码视频信号的方法和设备 |
| KR20180085526A (ko) * | 2017-01-19 | 2018-07-27 | 가온미디어 주식회사 | 효율적 변환을 처리하는 영상 복호화 및 부호화 방법 |
| GB2564150A (en) * | 2017-07-05 | 2019-01-09 | Sony Corp | Image data encoding and decoding |
| CN107784293B (zh) * | 2017-11-13 | 2018-08-28 | 中国矿业大学(北京) | 一种基于全局特征和稀疏表示分类的人体行为识别方法 |
| US10812797B2 (en) * | 2018-02-05 | 2020-10-20 | Tencent America LLC | Method, apparatus and medium for decoding or encoding using a low-complexity transform |
| KR102030384B1 (ko) * | 2018-06-19 | 2019-11-08 | 광운대학교 산학협력단 | 잔차 계수 부호화/복호화 방법 및 장치 |
| EP4664892A3 (en) * | 2018-09-05 | 2026-03-11 | LG Electronics Inc. | Method for encoding/decoding video signal, and apparatus therefor |
-
2019
- 2019-09-05 EP EP25211885.6A patent/EP4664892A3/en active Pending
- 2019-09-05 LT LTEPPCT/KR2019/011514T patent/LT3723372T/lt unknown
- 2019-09-05 KR KR1020257037669A patent/KR20250161682A/ko active Pending
- 2019-09-05 KR KR1020247003218A patent/KR102886022B1/ko active Active
- 2019-09-05 PL PL19856708.3T patent/PL3723372T3/pl unknown
- 2019-09-05 ES ES19856708T patent/ES3055128T3/es active Active
- 2019-09-05 SI SI201930999T patent/SI3723372T1/sl unknown
- 2019-09-05 PT PT198567083T patent/PT3723372T/pt unknown
- 2019-09-05 FI FIEP19856708.3T patent/FI3723372T3/fi active
- 2019-09-05 KR KR1020227027583A patent/KR102631802B1/ko active Active
- 2019-09-05 RS RS20251222A patent/RS67490B1/sr unknown
- 2019-09-05 CN CN202210950690.1A patent/CN115484463B/zh active Active
- 2019-09-05 CN CN201980014404.7A patent/CN111742555B/zh active Active
- 2019-09-05 WO PCT/KR2019/011514 patent/WO2020050665A1/ko not_active Ceased
- 2019-09-05 CN CN202210949304.7A patent/CN115514973B/zh active Active
- 2019-09-05 EP EP19856708.3A patent/EP3723372B1/en active Active
- 2019-09-05 KR KR1020207017919A patent/KR102432406B1/ko active Active
- 2019-09-05 HR HRP20251510TT patent/HRP20251510T1/hr unknown
- 2019-09-05 JP JP2020536609A patent/JP7055879B2/ja active Active
- 2019-09-05 CN CN202210949305.1A patent/CN115514974B/zh active Active
-
2020
- 2020-06-10 US US16/897,681 patent/US11245894B2/en active Active
-
2021
- 2021-12-21 US US17/558,086 patent/US11882273B2/en active Active
-
2022
- 2022-02-18 JP JP2022023760A patent/JP7242929B2/ja active Active
-
2023
- 2023-03-08 JP JP2023035414A patent/JP7432031B2/ja active Active
- 2023-11-24 US US18/518,829 patent/US12166977B2/en active Active
-
2024
- 2024-02-02 JP JP2024014773A patent/JP7686813B2/ja active Active
- 2024-11-01 US US18/935,098 patent/US12581069B2/en active Active
-
2025
- 2025-05-21 JP JP2025084699A patent/JP7807600B2/ja active Active
Also Published As
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES3055128T3 (en) | Method for encoding/decoding video signal, and apparatus therefor | |
| AU2023202678B2 (en) | Method for encoding/decoding video signals and apparatus therefor | |
| KR102396112B1 (ko) | 비디오 신호의 부호화/복호화 방법 및 이를 위한 장치 | |
| ES2944839T3 (es) | Método para procesar señales de imágenes y medio de almacenamiento legible por ordenador que almacena un flujo de bits generado mediante dicho método | |
| CN113316937B (zh) | 处理视频信号的方法和设备 |