ES2940075T3 - Codificación de vídeo con intra predicción basada en matriz - Google Patents

Codificación de vídeo con intra predicción basada en matriz Download PDF

Info

Publication number
ES2940075T3
ES2940075T3 ES20841841T ES20841841T ES2940075T3 ES 2940075 T3 ES2940075 T3 ES 2940075T3 ES 20841841 T ES20841841 T ES 20841841T ES 20841841 T ES20841841 T ES 20841841T ES 2940075 T3 ES2940075 T3 ES 2940075T3
Authority
ES
Spain
Prior art keywords
mip
prediction
block
offset
fixed value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES20841841T
Other languages
English (en)
Inventor
Junyan Huo
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Application granted granted Critical
Publication of ES2940075T3 publication Critical patent/ES2940075T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution

Landscapes

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

Abstract

La presente descripción se refiere a un método para predecir una imagen. El método incluye (i) determinar los parámetros de predicción de un bloque actual en un flujo de bits; (ii) determinar una muestra de entrada de intra predicción basada en matriz (MIP) del bloque actual en base a muestras vecinas del bloque actual y los parámetros de predicción; (iii) establecer un parámetro de número de desplazamiento (sW) como un primer valor fijo; (iv) establecer un parámetro de compensación de desplazamiento (fO) como un segundo valor fijo; y (v) determinar una muestra de predicción de MIP del bloque actual en base a una matriz de ponderación de MIP, la muestra de entrada de MIP, el parámetro de compensación de desplazamiento (fO) y el parámetro de número de desplazamiento (sW). (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Codificación de vídeo con intra predicción basada en matriz
REFERENCIA CRUZADA A SOLICITUD RELACIONADA
La presente solicitud reivindica los derechos y la prioridad de la solicitud provisional de Estados Unidos n.° 62/911.166, presentada el 4 de octubre de 2019,
CAMPO TÉCNICO
La presente divulgación se refiere al campo de las tecnologías de telecomunicaciones y, en particular, a un método para codificar y decodificar imágenes tales como fotos o vídeos.
ANTECEDENTES
La codificación de vídeo versátil (VVC) es una norma de compresión de vídeo de la próxima generación que se usa para reemplazar una norma actual como tal como la norma de codificación de vídeo de alta eficiencia (H. 265/HEVC). La norma de codificación VVC proporciona una mayor calidad de codificación que la norma actual. Para lograr este objetivo, se consideran diversos modos de intra e inter predicción. Cuando se usan estos modos de predicción, un vídeo se puede comprimir de tal manera que se pueden reducir los datos que se transmitirán en un flujo de bits (en forma binaria). La intra predicción basada en matriz (MIP) es uno de estos modos. La MIP es un modo de intra predicción. Cuando se implementa bajo el modo de MIP, un codificador o un decodificador puede derivar un bloque de intra predicción basándose en un bloque de codificación actual (por ejemplo, un grupo de bits o dígitos que se transmiten como una unidad y que pueden codificarse y/o decodificarse juntos). Sin embargo, derivar tales bloques de predicción puede requerir una cantidad significativa de recursos computacionales y espacios de almacenamiento adicionales. Por lo tanto, es ventajoso y deseable un método mejorado para abordar este problema.
KONDO (SONY) K ET AL: "CE3-2: On-rounding shift of MIP", JVET de ISO/IEC JTC1/SC29/WG11 e ITU-T SG.16, n.° JVET-P0056, 18 de septiembre de 2019, informa los resultados de las pruebas, CE3-2.1 y CE3-2.2. En estas pruebas, se prueba una técnica para simplificar un desplazamiento de redondeo adaptativo usado en una intra predicción basada en matriz, y elimina una tabla que obtiene el número de desplazamientos en el texto de especificación de VVC. La implementación se cargó en el servidor GitlLab y las simulaciones se llevaron a cabo usando las condiciones de prueba de CE3. Para CE3-2.1, los resultados de la simulación informan que la tasa de BD Y, U y V son 0,03 %, -0,01 % y 0,02 % para AI, 0,03 %, -0,01 % y 0,02 % para RA. Para CE3-2.2, los resultados son 0,03 %, 0,01 % y 0,00 % para AI, 0,02 %, 0,08 % y 0,01 % para RA. El documento desvela que, para codificar y decodificar, los tiempos de ejecución son casi los mismos que los de anclaje.
BIATEK (QUALCOMM) T ET AL: "Non-CE3: simplified MIP with power-of-two offsets", JVET de ISO/IEC JTC1/SC29/WG11 e ItU-T SG.16, n.° JVET-P0625, 2 de octubre de 2019, propone eliminar la tabla de compensación de MIP y reemplazarla con una derivación sencilla basándose en una operación de desplazamiento. El documento desvela que esto permite simplificar tanto la especificación como el proceso de predicción, ya que la multiplicación de compensación se reemplaza por un desplazamiento. El documento desvela que las simulaciones no muestran pérdidas en CTC y conjuntos de datos externos.
SUMARIO
Cuando se implementa un proceso de MIP, se determinan diversos parámetros de predicción y, a continuación, se usa. Tradicionalmente, algunos de estos parámetros de predicción se pueden determinar mediante tablas de consulta. Estas tablas de consulta necesitan almacenarse en un componente (por ejemplo, una memoria, una caché, etc.) de un codificador y/o decodificador y, por lo tanto, requieren espacios de almacenamiento. Además, acceder a estas tablas de consulta consume tiempo y recursos informáticos. Por lo tanto, es ventajoso tener un método, un aparato y un sistema mejorados para abordar el problema anterior.
La presente divulgación proporciona un método para predecir, codificar y/o decodificar una imagen basándose en un proceso de MIP. El proceso de MIP puede generar un bloque de predicción de un bloque actual, y el tamaño del bloque de predicción es más pequeño que el tamaño del bloque actual. Por ejemplo, un bloque actual de "8x8" puede tener un bloque de predicción de "4x4". Un bloque de predicción de MIP con su tamaño más pequeño que el bloque actual se deriva realizando un cálculo matricial, que consume menos recursos computacionales que realizar el cálculo matricial con un bloque más grande. Después del cálculo matricial, se aplica un proceso de muestreo ascendente al bloque de predicción de MIP para derivar un bloque de intra predicción que tiene el mismo tamaño que el bloque actual. Por ejemplo, un bloque de intra predicción "8x8" puede derivarse de un bloque de predicción de MIP "4x4" invocando el proceso de muestreo ascendente de interpolación y/o extrapolación.
Más particularmente, el presente método incluye, por ejemplo, (i) determinar parámetros de predicción de un bloque actual en un flujo de bits; (ii) determinar una muestra de entrada de MIP (por ejemplo, "p [x]" en las ecuaciones (P-1), (P-2) y (P-3) analizadas en detalle a continuación) del bloque actual basándose en las muestras vecinas del bloque actual y los parámetros de predicción; (iii) establecer un parámetro de número de desplazamiento (por ejemplo, "sW" en la ecuación (B) analizada en detalle a continuación) como un primer valor fijo; (iv) establecer un parámetro de compensación de desplazamiento (por ejemplo, "fO" en la ecuación (B) analizada en detalle a continuación) como un segundo valor fijo; (v) determinar una matriz de ponderación de MIP del bloque actual basándose en los parámetros de predicción; (vi) determinar una muestra de predicción de MIP (por ejemplo, "predMip [x] [y] " en la ecuación (C) analizada en detalle a continuación) del bloque actual basándose en la matriz de ponderación de MIP, la muestra de entrada de MIP, el parámetro de compensación de desplazamiento (fO) y el parámetro de número de desplazamiento (sW); y (vii) realizar un proceso de muestreo ascendente a la muestra de predicción de MIP para generar muestras intra previstas (por ejemplo, "predSamples [x] [y]" en la ecuación (G) analizada en detalle a continuación) del bloque actual, en donde el primer el valor fijo y el segundo valor fijo se establecen como valores constantes independientemente de un tamaño del bloque actual y un modo de MIP.
Sin desear quedar ligado a teoría alguna, el establecimiento del parámetro de número de desplazamiento o del parámetro de compensación de desplazamiento como valores fijos mejora eficazmente la eficiencia global de codificación/decodificación sin afectar significativamente la precisión de los procesos de codificación/decodificación. Mediante esta disposición, los presentes métodos proporcionan una solución para acortar significativamente el tiempo de cálculo y reducir el espacio de almacenamiento requerido cuando se implementan procesos de MIP.
De acuerdo con un aspecto, se proporciona un método para predecir una imagen como se expone en la reivindicación 1. Las características opcionales de este aspecto se exponen en las reivindicaciones 2 a 9.
De acuerdo con otro aspecto, se proporciona un aparato de decodificación como se expone en la reivindicación 10. Las características opcionales de este aspecto se exponen en la reivindicación 11.
De acuerdo con otro aspecto, se proporciona un método para codificar una imagen como se expone en la reivindicación 12.
De acuerdo con otro aspecto, se proporciona un aparato de codificación como se expone en la reivindicación 13.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
Para hacer más clara la solución técnica descrita en las realizaciones de la presente divulgación, se describirán brevemente los dibujos usados para la descripción de las realizaciones. Aparentemente, los dibujos que se describen a continuación son solo para ilustración, pero no para limitación. Debe entenderse que, un experto en la materia puede adquirir otros dibujos basándose en estos dibujos, sin realizar ningún trabajo inventivo.
La Figura 1A es un diagrama esquemático de un sistema de acuerdo con una realización de la presente divulgación.
La Figura 1B es un diagrama esquemático que ilustra un proceso de MIP de acuerdo con realizaciones de la presente divulgación.
La Figura 2 es un diagrama esquemático de un sistema de codificación de acuerdo con una realización de la presente divulgación.
La Figura 3 es un diagrama esquemático que ilustra la derivación de un bloque de intra predicción usando un modo de MIP de acuerdo con realizaciones de la presente divulgación.
La Figura 4 es un diagrama esquemático de un sistema de decodificación de acuerdo con una realización de la presente divulgación.
La Figura 5 es un diagrama de flujo que ilustra un método de acuerdo con una realización de la presente divulgación.
La Figura 6 es un diagrama de flujo que ilustra un método de acuerdo con una realización de la presente divulgación.
La Figura 7 es un diagrama esquemático de un aparato (por ejemplo, un codificador) de acuerdo con una realización de la presente divulgación.
La Figura 8 es un diagrama esquemático de un aparato (por ejemplo, un codificador) de acuerdo con una realización de la presente divulgación.
La Figura 9 es un diagrama esquemático de un aparato (por ejemplo, un decodificador) de acuerdo con una realización de la presente divulgación.
La Figura 10 es un diagrama esquemático de un aparato (por ejemplo, un decodificador) de acuerdo con una realización de la presente divulgación.
La Figura 11 es un diagrama esquemático de un aparato (por ejemplo, un codificador) de acuerdo con una realización de la presente divulgación.
La Figura 12 es un diagrama esquemático de un aparato (por ejemplo, un decodificador) de acuerdo con una realización de la presente divulgación.
La Figura 13 es un diagrama esquemático de un sistema de comunicación de acuerdo con una realización de la presente divulgación.
DESCRIPCIÓN DETALLADA
Para facilitar la comprensión de la presente divulgación, la presente divulgación se describirá más detalladamente a continuación en lo sucesivo con referencia a los dibujos adjuntos.
La Figura 1A es un diagrama esquemático de un sistema 100 de acuerdo con una realización de la presente divulgación. El sistema 100 puede codificar, transmitir y decodificar una imagen. El sistema 100 también se puede aplicar para codificar, transmitir y decodificar un vídeo que consiste en una secuencia de imágenes. Más particularmente, el sistema 100 puede recibir imágenes de entrada, procesar las imágenes de entrada y generar imágenes de salida. El sistema 100 incluye un aparato de codificación 100a y un aparato de decodificación 100b. El aparato de codificación 100a incluye una unidad de partición 101, una primera unidad de intra predicción 103 y una unidad de codificación por entropía 105. El aparato de decodificación 100b incluye una unidad de análisis 107 y una segunda unidad de intra predicción 109.
La unidad de partición 101 está configurada para recibir un vídeo de entrada 10 y, a continuación, dividir el vídeo de entrada 10 en una o más unidades de árbol de codificación (CTU) o unidades de codificación (CU) 12. Las CU 12 se transmiten a la primera unidad de intra predicción 103. La primera unidad de intra predicción 103 está configurada para derivar un bloque de predicción para cada una de las CU 12 realizando un proceso de MIP. En algunas realizaciones, basándose en los tamaños de las CU 12, el proceso de MIP tiene diferentes enfoques para manejar las CU 12 con diferentes tamaños. Por ejemplo, para cada tipo de las CU 12, tiene un identificador de tamaño de MIP designado (por ejemplo, 0, 1,2, etc.).
La primera unidad de intra predicción 103 determina en primer lugar los parámetros de predicción (por ejemplo, una anchura, una altura, un tamaño, etc.) de la CU 12. En consecuencia, la primera unidad de intra predicción 103 puede determinar un identificador de tamaño de MIP de la CU 12. La primera unidad de intra predicción 103 deriva además un grupo de muestras de referencia para la CU 12 (por ejemplo, usando muestras vecinas de la CU 12, tal como muestras vecinas superiores o a la izquierda, analizadas en detalle con referencia a la Figura 3). La primera unidad de intra predicción 103 deriva a continuación una predicción de MIP de la CU 12 basándose en el grupo de muestras de referencia y una matriz de ponderación de MIP correspondiente. La primera unidad de intra predicción 103 puede usar la predicción de MIP como una intra predicción 14 de la CU 12. La intra predicción 14 y los parámetros de predicción para derivar la intra predicción 14 se transmiten a continuación a la unidad de codificación por entropía 105 para un proceso adicional.
La unidad de codificación por entropía 105 está configurada para transformar los parámetros de predicción para derivar la intra predicción 14 en forma binaria. Por consiguiente, la unidad de codificación por entropía 105 genera un flujo de bits 16 basándose en la intra predicción 14. En algunas realizaciones, el flujo de bits 16 puede transmitirse a través de una red de comunicación o almacenarse en un disco o un servidor.
El aparato de decodificación 100b recibe el flujo de bits 16 como el flujo de bits de entrada 17. La unidad de análisis 107 analiza el flujo de bits de entrada 17 (en forma binaria) y lo convierte en valores numéricos 18. Los valores numéricos 18 son indicativos de las características (por ejemplo, color, brillo, profundidad, etc.) del vídeo de entrada 10. Los valores numéricos 18 se transmiten a la segunda unidad de intra predicción 109. La segunda unidad de intra predicción 109, a continuación, puede convertir estos valores numéricos 18 en un vídeo de salida 19 (por ejemplo, basándose en procesos similares a los realizados por la primera unidad de intra predicción 103; las realizaciones relevantes se analizan en detalle con referencia a la Figura 4). El vídeo de salida 19 puede entonces almacenarse, transmitirse y/o reproducirse mediante un dispositivo externo (por ejemplo, un almacenamiento, un transmisor, etc.). El vídeo almacenado puede visualizarse además mediante una pantalla.
La Figura 1B es un diagrama esquemático que ilustra un proceso de MIP S100 de acuerdo con realizaciones de la presente divulgación. El proceso de MIP incluye cuatro etapas principales S101, S102, S103 y S104. En la etapa S101, se van a determinar los parámetros de predicción para el proceso de MIP S100. Los parámetros de predicción incluyen un tipo o tamaño (por ejemplo, indicado por un identificador de tamaño de MIP, como "mipSizeId") de un bloque actual, el número de muestras de referencia en cada límite (por ejemplo, "boundySize"), el número de muestras de entrada de MIP (por ejemplo, "inSize") y la dimensión de un bloque de predicción de MIP (por ejemplo, "predSizexpredSize") generado por la multiplicación matricial. De acuerdo con el tamaño del bloque actual, el identificador de tamaño de MIP puede ser "0", "1" o "2", que se registra en el parámetro "mipSizeId". Diferentes bloques pueden tener diferentes parámetros de predicción.
En la etapa S102, el proceso de MIP obtiene píxeles de referencia. Los píxeles de referencia pueden ser de bloques vecinos superiores y/o bloques vecinos a la izquierda. Los píxeles de los bloques vecinos superiores se almacenan como el parámetro "refT" y los píxeles de los bloques vecinos a la izquierda se almacenan como el parámetro "refL".
En la etapa S103, se determinan las muestras de entrada para el proceso de MIP. Las muestras de entrada se pueden determinar mediante tres subetapas, S1031, S1032 y S1033. En la subetapa S1031, basándose en los píxeles de referencia (por ejemplo, de la etapa S102), se realiza un proceso de muestreo descendente para generar muestras de referencia. En la subetapa S1031, se determinan las áreas de muestreo de referencia (o áreas de muestreo de memoria intermedia). En algunas realizaciones, un proceso de transposición de matriz puede estar implicado en la subetapa S1032. En la subetapa S1033, se realiza un cálculo de multiplicación matricial basándose en las muestras de entrada.
En la etapa S104, se generan muestras de intra predicción de MIP. La etapa S104 incluye cuatro subetapas, S1041, S1042, S1043 y S1044. En la subetapa S1041, se genera un bloque de predicción de MIP basándose en una matriz de ponderación de MIP, un parámetro de compensación de desplazamiento (por ejemplo, "fO") y un parámetro de número de desplazamiento (por ejemplo, "sW"). En la presente divulgación, el parámetro de compensación de desplazamiento y el parámetro de número de desplazamiento se establecen como valores fijos. En la subetapa S1042, se realiza un proceso de interpolación al bloque de predicción de MIP. En la subetapa S1043, se transpone el bloque de predicción de MIP. En la subetapa S1044, se generan las muestras de intra predicción de MIP. En algunas realizaciones, las muestras de intra predicción de MIP pueden generarse considerando las muestras de predicción de los píxeles vecinos superiores. En otras realizaciones, las muestras de intra predicción de MIP pueden generarse sin considerar las muestras de predicción de los píxeles vecinos superiores (por ejemplo, considerando solo las muestras de predicción de los píxeles vecinos a la izquierda). Los detalles del proceso de MIP se analizan a continuación con referencia a la Figura 3 y las ecuaciones correspondientes.
La Figura 2 es un diagrama esquemático de un sistema de codificación 200 de acuerdo con una realización de la presente divulgación. El sistema de codificación 200 está configurado para codificar, comprimir y/o procesar una imagen de entrada 20 y generar un flujo de bits de salida 21 en forma binaria. El sistema de codificación 200 incluye una unidad de partición 201 configurada para dividir la imagen de entrada 20 en una o más unidades de árbol de codificación (CTU) 22. En algunas realizaciones, la unidad de partición 201 puede dividir la imagen en cortes, piezas y/o ladrillos. Cada uno de los ladrillos puede contener una o más CTU integrales y/o parciales 22. En algunas realizaciones, la unidad de partición 201 también puede formar una o más subimágenes, cada una de las cuales puede contener uno o más cortes, piezas o ladrillos. La unidad de partición 201 transmite las CTU 22 a una unidad de predicción 202 para un proceso adicional.
La unidad de predicción 202 está configurada para generar un bloque de predicción 23 para cada una de las CTU 22. El bloque de predicción 23 se puede generar basándose en uno o más métodos de inter o intra predicción usando diversos esquemas de interpolación y/o extrapolación. Como se muestra en la Figura 2, la unidad de predicción 202 puede incluir además una unidad de partición de bloque 203, una unidad de ME (estimación de movimiento) 204, una unidad de MC (compensación de movimiento) 205 y una unidad de intra predicción 206. La unidad de partición de bloque 203 está configurada para dividir las CTU 22 en unidades de codificación (CU) o bloques de codificación (CB) más pequeños. En algunas realizaciones, las CU pueden generarse a partir de las CTU 22 mediante diversos métodos tales como división de árbol cuádruple, división binaria y división ternaria. La unidad de ME 204 está configurada para estimar un cambio resultante de un movimiento de un objeto mostrado en la imagen de entrada 20 o un movimiento de un dispositivo de captura de imágenes que genera la imagen de entrada 20. La unidad de MC 205 está configurada para ajustar y compensar un cambio resultante del movimiento anterior. Tanto la unidad de ME 204 como la unidad de MC 205 están configuradas para derivar un bloque de inter predicción (por ejemplo, en diferentes puntos de tiempo) de una CU. En algunas realizaciones, la unidad de ME 204 y la unidad de MC 205 pueden usar un método de estimación de movimiento optimizado de tasa de distorsión para derivar el bloque de inter predicción.
La unidad de intra predicción 206 está configurada para derivar un bloque de intra predicción (por ejemplo, en el mismo punto de tiempo) de una CU (o una porción de la CU) usando diversos arios modos de intra predicción, incluyendo los modos de MIP. Los detalles de la derivación de un bloque de intra predicción usando un modo de MIP (denominado "proceso de MIP" en el presente documento en lo sucesivo) se analizan con referencia a la Figura 1B y la Figura 3. Durante el proceso de MIP, la unidad de intra predicción 206 deriva en primer lugar una o más muestras de referencia de las muestras vecinas de la CU, por ejemplo, usando directamente las muestras vecinas como muestras de referencia, muestreando descendentemente de las muestras vecinas o extrayendo directamente de las muestras vecinas (por ejemplo, la etapa 301 de la Figura 3).
En segundo lugar, la unidad de intra predicción 206 deriva muestras previstas en múltiples posiciones de muestra en la CU usando las muestras de referencia, una matriz de MIP y un parámetro de desplazamiento. Las posiciones de muestra pueden ser posiciones de muestra prestablecidas en la CU. Por ejemplo, las posiciones de muestra pueden ser posiciones con valores de coordenadas horizontales y verticales impares dentro de la CU (por ejemplo, x = 1, 3, 5, etc.; y = 1, 3, 5, etc.). El parámetro de desplazamiento incluye un parámetro de compensación de desplazamiento y un parámetro de número de desplazamiento, que se pueden usar en operaciones de desplazamiento para generar las muestras previstas. Mediante esta disposición, la unidad de intra predicción 206 puede generar muestras previstas en la CU (es decir, "predicción de MIP" o "bloque de predicción de MIP" se refiere a una colección de tales muestras previstas) (por ejemplo, la etapa 302 de la Figura 3). En algunas realizaciones, las posiciones de muestra pueden ser posiciones con valores de coordenadas horizontales y verticales pares dentro de la CU.
En tercer lugar, la unidad de intra predicción 206 puede derivar muestras previstas en las posiciones restantes (por ejemplo, aquellas que no son posiciones de muestra) de la CU (por ejemplo, la etapa 303 de la Figura 3). En algunas realizaciones, la unidad de intra predicción 206 puede usar un filtro de interpolación para derivar las muestras previstas en las posiciones restantes. Mediante los procesos anteriores, la unidad de intra predicción 206 puede generar el bloque de predicción 23 para la CU en la CTU 22.
Haciendo referencia a la Figura 2, la unidad de predicción 202 emite el bloque de predicción 23 a un sumador 207. El sumador 207 calcula una diferencia (por ejemplo, un residual R) entre la salida (por ejemplo, una CU en las CTU 22) de la unidad de partición 201 y la salida (es decir, el bloque de predicción 23 de la CU) del bloque de predicción 202. Una unidad de transformada 208 lee el residual R y realiza una o más operaciones de transformada en el bloque de predicción 23 para obtener coeficientes 24 para usos adicionales. Una unidad de cuantificación 209 puede cuantificar los coeficientes 24 y emite coeficientes cuantificados 25 (por ejemplo, niveles) a una unidad de cuantificación inversa 210. La unidad de cuantificación inversa 210 realiza operaciones de escalamiento en los coeficientes cuantificados 25 para emitir los coeficientes reconstruidos 26 a una unidad de transformada inversa 211. La unidad de transformada inversa 211 realiza una o más transformadas inversas correspondientes a las transformadas en la unidad de transformada 208 y emite el residual reconstruido 27.
A continuación, un sumador 212 calcula la CU reconstruida sumando el residual reconstruido 27 y el bloque de predicción 23 de la CU de la unidad de predicción 202. El sumador 212 también reenvía su salida 28 a la unidad de predicción 202 para ser usada como una referencia de intra predicción. Después de que se hayan reconstruido todas las CU en las CTU 22, una unidad de filtrado 213 puede realizar un filtrado en bucle en una imagen reconstruida 29. La unidad de filtrado 213 contiene uno o más filtros, por ejemplo, un filtro de desbloqueo, un filtro de compensación adaptativa de muestra (SAO), un filtro de bucle adaptativo (ALF), un filtro de mapeo de luma con escalamiento de croma (LMCS), un filtro basado en red neuronal y otros filtros adecuados para suprimir las distorsiones de codificación o mejorar la calidad de codificación de una imagen.
La unidad de filtrado 213 puede enviar a continuación una imagen decodificada 30 (o subimagen) a una memoria intermedia de imágenes decodificadas (DPB) 214. La DPB 214 emite la imagen decodificada 31 basándose en la información de control. La imagen 31 almacenada en la DPB 214 también puede emplearse como imagen de referencia para realizar una inter o intra predicción por la unidad de predicción 202.
Una unidad de codificación por entropía 215 está configurada para convertir las imágenes 31, los parámetros de las unidades en el sistema de codificación 200 y la información complementaria (por ejemplo, información para controlar o comunicarse con el sistema 200) en forma binaria. La unidad de codificación por entropía 215 puede generar el flujo de bits de salida 21 en consecuencia.
En algunas realizaciones, el sistema de codificación 200 puede ser un dispositivo informático con un procesador y un medio de almacenamiento con uno o más programas de codificación. Cuando el procesador lee y ejecuta los programas de codificación, el sistema de codificación 200 puede recibir la imagen de entrada 20 y, por consiguiente, genera el flujo de bits de salida 21. En algunas realizaciones, el sistema de codificación 200 puede ser un dispositivo informático con uno o más chips. Las unidades o elementos del sistema de codificación 200 pueden implementarse como circuitos integrados en los chips.
La Figura 3 es un diagrama esquemático que ilustra un proceso de MIP de acuerdo con realizaciones de la presente divulgación. El proceso de MIP puede implementarse por una unidad de intra predicción (por ejemplo, la unidad de intra predicción 206). Como se muestra en la Figura 3, la unidad de intra predicción puede incluir un módulo de predicción 301 y un módulo de filtrado 302. Como también se muestra en la Figura 3, el proceso de MIP incluye tres etapas 301, 302 y 303. El proceso de MIP puede generar un bloque previsto basándose en un bloque actual o un bloque de codificación 300 (tal como una CU o particiones de una CU).
Etapa 301
En la etapa 301, la unidad de intra predicción puede usar las muestras vecinas 31,33 del bloque de codificación 300 para generar muestras de referencia 32, 34. En la realización ilustrada, las muestras vecinas 31 son muestras vecinas por encima, y las muestras vecinas 33 son muestras vecinas a la izquierda. La unidad de intra predicción 206 puede calcular un promedio de los valores de cada dos muestras vecinas 31, 33 y establecer el promedio de los valores como los valores de las muestras de referencia 32, 34, respectivamente. En algunas realizaciones, la unidad de intra predicción 206 puede seleccionar el valor de una de cada dos muestras vecinas 31 o 33 como el valor de la muestra de referencia 32 o 32. En las realizaciones ilustradas, la unidad de intra predicción 206 deriva 4 muestras de referencia 32 de 8 muestras vecinas superiores 31 del bloque de codificación 300, y otras 4 muestras de referencia 34 de 8 muestras vecinas a la izquierda 33 del bloque de codificación 300.
En la etapa 301, la unidad de intra predicción determina una anchura y una altura del bloque de codificación 300 y las indica como las variables "cbWidth" y "cbHeight", respectivamente. En algunas realizaciones, la unidad de intra predicción 206 puede adoptar un proceso de decisión de modo optimizado de tasa-distorsión para determinar un modo de intra predicción (por ejemplo, si se usa un modo de MIP). En tales realizaciones, el bloque de codificación 300 se puede dividir en uno o más bloques de transformada, cuya anchura y altura se indican como las variables "nTbW" y "nTbH", respectivamente. Cuando se usa el modo de MIP como el modo de intra predicción, la unidad de intra predicción determina un identificador de tamaño de MIP (denominado como la variable "mipSizeId") basándose en las siguientes condiciones A-C.
[CONDICIÓN A] Si tanto "nTbW" como "nTbH" son 4, establecer "mipSizeId" como 0.
[CONDICIÓN B] De lo contrario, si "cbWidth" o "cbHeight" son 4, establecer "mipSizeId" como 1.
[CONDICIÓN C] De lo contrario, establecer "mipSizeId" como 2.
Como ejemplo, si el tamaño del bloque de codificación 300 es "8x8" (es decir, tanto "cbWidth" como "cbHeight" son 8), entonces "mipSizeId" se establece como 2. Como otro ejemplo, si el tamaño del bloque transformado del bloque de codificación 300 es "4x4" (es decir, tanto "nTbW" como "nTbH" son 4), entonces "mipSizeId" se establece como 0. Como otro ejemplo más, si el tamaño del bloque de codificación 300 es "4x8", entonces "mipSizeId" se establece como 1.
En las realizaciones ilustradas, hay tres tipos de "mipSizeId", que son "0", "1" y "2". Cada tipo de identificadores de tamaño de MIP (es decir, la variable "mipSizeId") corresponde a una forma específica de realizar el proceso de MIP (por ejemplo, usar diferentes matrices de MIP). En otras realizaciones, puede haber más de tres tipos de identificadores de tamaño de MIP.
Basándose en el identificador de tamaño de MIP, la unidad de intra predicción puede determinar las variables "(Size" y "predSize" basándose en las siguientes condiciones D-F.
[CONDICIÓN D] Si "mipSizeId" es 0, establecer "boundarySize" como 2 y "predSize" como 4.
[CONDICIÓN E] Si "mipSizeId" es 1, establecer "boundarySize" como 4 y "predSize" como 4.
[CONDICIÓN F] Si "mipSizeId" es 2, establecer "boundarySize" como 4 y "predSize" como 8.
En las realizaciones ilustradas, "boundarySize" representa un número de muestras de referencia 32, 34 derivadas de cada una de las muestras vecinas superiores 31 y las muestras vecinas a la izquierda 33 del bloque de codificación 300. La variable "predSize" se usará en un cálculo posterior (es decir, la ecuación (C) a continuación).
En algunas realizaciones, la unidad de intra predicción también puede derivar la variable "isTransposed" para indicar el orden de las muestras de referencia 32, 34 almacenadas en una serie temporal. Por ejemplo, "isTransposed": siendo "0" indica que la unidad de intra predicción presenta las muestras de referencia 32 derivadas de las muestras vecinas superiores 31 del bloque de codificación 300 antes que las muestras de referencia 34 derivadas de las muestras vecinas a la izquierda 33. Como alternativa, "isTransposed" siendo 1 indica que la unidad de intra predicción presenta las muestras de referencia 34 derivadas de las muestras vecinas a la izquierda 33 del bloque de codificación 300 antes que las muestras de referencia 32 derivadas de las muestras vecinas superiores 31. En una implementación del sistema de codificación 200, el valor de "isTransposed" se envía a una unidad de codificación por entropía (por ejemplo, la unidad de codificación por entropía 215) como uno de los parámetros del proceso de MIP que se codifica y escribe en un flujo de bits (por ejemplo, el flujo de bits de salida 21). En correspondencia, en una implementación de un sistema de decodificación 400 en la Figura 4 descrito en esta divulgación, el valor de "isTransposed" puede recibirse desde una unidad de análisis (por ejemplo, la unidad de análisis 401) analizando un flujo de bits de entrada (que puede ser el flujo de bits de salida 21).
La unidad de intra predicción puede determinar además una variable "inSize" para indicar el número de muestras de referencia 32, 34 usadas para derivar una predicción de MIP. Un valor de "inSize" está determinado por la siguiente ecuación (A). En esta divulgación, los significados y las operaciones de todos los operadores en las ecuaciones son los mismos que los operadores equivalentes que se definen en la norma ITU-T H.265.
inSize = ( 2 * boundarySize) -(mipSizeId = = 2) ? 1:0; (A)
Por ejemplo, "= =" es un operador relacional "igual a". Por ejemplo, si "mipSizeId" es 2, entonces "inSize" es 7 (calculado por (2*4)-1). Si "mipSizeId" es 1, entonces "inSize" es 8 (calculado por (2*4)-0). En algunas realizaciones, el parámetro "inSize" se puede encontrar en la tabla Size-Id a continuación.
Tabla Size-Id
Figure imgf000007_0001
La unidad de intra predicción puede invocar el siguiente proceso para derivar un grupo de muestras de referencia 32, 34, que se almacenan en la serie p[x] ("x" es de "0" a "inSize-1"). La unidad de intra predicción puede derivar muestras "nTbW" de las muestras vecinas superiores 31 del bloque de codificación 300 (y almacenarlas en la serie "refT") y muestras "nTbH" de las muestras vecinas a la izquierda 33 (y almacenarlas en la serie "refL") del bloque de codificación 300.
La unidad de intra predicción puede inicializar un proceso de muestreo descendente en "refT" para obtener muestras de "boundarySize" y almacenar las "muestras de boundarySize" en "refT". De manera similar, la unidad de intra predicción 206 puede iniciar el proceso de muestreo descendente en "refL" para obtener muestras de "boundarySize" y almacenar las muestras de "boundarySize" en "refL".
En algunas realizaciones, la unidad de intra predicción puede incorporar las series "refT" y "refL" en una sola serie "pTemp" basándose en el orden indicado por una variable "isTransposed". La unidad de intra predicción puede derivar "isT ransposed" para indicar el orden de las muestras de referencia almacenadas en una serie temporal "pTemp". Por ejemplo, "isTransposed" siendo "0" (o FALSO) indica que la unidad de intra predicción presenta las muestras de referencia 32 derivadas de las muestras vecinas superiores 31 del bloque de codificación 300 antes que las muestras de referencia 34 derivadas de las muestras vecinas a la izquierda 33. En otros casos, "isTransposed" siendo "1" (o VERDADERO) indica que la unidad de intra predicción presenta las muestras de referencia 34 derivadas de las muestras vecinas a la izquierda 33 del bloque de codificación 300 antes que las muestras de referencia 32 derivadas de las muestras vecinas superiores 31. En algunas realizaciones, en una implementación del sistema de codificación 200, la unidad de intra predicción puede determinar un valor de "isTransposed" usando un método de optimización de tasa-distorsión. En algunas realizaciones, en una implementación del sistema de codificación 200, la unidad de intra predicción puede determinar el valor de "isTransposed" basándose en comparaciones y/o correlaciones entre las muestras vecinas 32, 34 y el bloque de codificación 300. En una implementación del sistema de codificación 200, el valor de "isTransposed" se puede reenviar a la unidad de codificación por entropía (por ejemplo, la unidad de codificación por entropía 215) como uno de los parámetros del proceso de MIP que se escribirá en el flujo de bits (por ejemplo, el flujo de bits de salida 21). En correspondencia, en una implementación de un sistema de decodificación 400 en la Figura 4 descrito en esta divulgación, el valor de "isTransposed" puede recibirse desde una unidad de análisis (por ejemplo, la unidad de análisis 401) analizando un flujo de bits de entrada (que puede ser el flujo de bits de salida 21).
En algunas realizaciones, el parámetro "mipSizeId" puede usarse para determinar si un parámetro de tamaño seleccionado de un bloque actual está en un intervalo predeterminado. Más particularmente, "mipSizeId" igual a "0" o "1" significa que el parámetro de tamaño seleccionado está dentro del intervalo predeterminado. Si "mipSizeId" es igual a "2", significa que el parámetro de tamaño seleccionado no está dentro del intervalo predeterminado. En otras palabras, la muestra de entrada de MIP se puede determinar basándose en un área de memoria intermedia (por ejemplo, "pTemp"), el identificador de tamaño de MIP (por ejemplo, "mipSizeId"), una profundidad de bits de las muestras vecinas (por ejemplo, "BitDepth"), como se analiza en detalle a continuación.
La unidad de intra predicción puede determinar la serie "p[x]" (x de "0" a "inSize-1") basándose en las siguientes condiciones G y H.
[CONDICIÓN G] Si "mipSizeId" es 2, p[x] = pTemp[x+1] - pTemp[0].
[CONDICIÓN H] De lo contrario (por ejemplo, "mipSizeId" es menor que 2), p[0]=pTemp[0]-(1<<( BitDepth-1)) y p[x]=pTemp[x]-pTemp[0] (para x de 1 a "inSize-1").
En la condición H anterior, "BitDepth" es una profundidad de bit de un componente de color de una muestra (por ejemplo, el componente Y) en el bloque de codificación 300. El símbolo "<<" es un símbolo de desplazamiento de bits usado en la norma ITU-T H.265.
Como alternativa, la unidad de intra predicción puede derivar la serie p[x] (para x de 0 a "inSize-1" basándose en las siguientes condiciones I y J.
[CONDICIÓN I] Si "mipSizeId" es 2, p[x]=pTemp[x+1]-pTemp[0].
[CONDICIÓN J] De lo contrario (por ejemplo, "mipSizeId" es menor que 2), p[0]=(1<<(BitDepth-1))-pTemp[0] y p[x]=pTemp[x]-pTemp[0] (para x de 1 a "inSize-1").
En algunas realizaciones, la unidad de intra predicción puede determinar los valores de la serie p[x] usando un método de cálculo unificado sin determinar el valor de "mipSizeId". Por ejemplo, la unidad de intra predicción puede anexar "(1 <<(BitDepth-1))" como un elemento adicional en "pTemp" y calcular p[x] como "pTemp[x]- pTemp[0]".
En alguna realización, el parámetro "1 <<(BitDepth-1)" puede ser una constante. En alguna realización, el parámetro "1<<(BitDepth-1)" se puede mostrar como "2A(BitDepth-1)". Por consiguiente, los parámetros "p[0] y "p[x]" se pueden calcular basándose en las ecuaciones P-1, P-2 y P-3 a continuación.
[ p[0] =pTemp[0]-(1«(BitDepth-1))
1 p[x] = pTemp[x]-pTemp[0] para x= 1,...,¡nSize-1 (P-1)
[ p[0] = (1«(BitDepth-1))-pTemp[0] —
[ p[x] = pTemp[x]-pTemp[0] para x= 1,...,¡nSize-1 (P-2)
p[x]=pTemp[x+1]-pTemp[0] para x=0,...,inSize-1 (P-3)
Las ecuaciones P-1 y P-2 se aplica a los casos donde "mipSizeId" es igual a "0" o "1", lo que significa que el parámetro de tamaño seleccionado está dentro del intervalo predeterminado. Después de determinar que el parámetro de tamaño seleccionado de un bloque actual está en el intervalo predeterminado, se puede determinar "1 <<(BitDepth-1)". A continuación, se puede determinar una diferencia entre "1<<(BitDepth-1)" y "pTemp[0]". A continuación, la diferencia se establece como p[0]. A continuación, p[x] se puede calcular basándose en las ecuaciones P-1 y P-2 anteriores.
La ecuación P-3 se aplica a los casos donde "mipSizeId" es igual a "2", lo que significa que el parámetro de tamaño seleccionado no está dentro del intervalo predeterminado. Suponiendo que el bloque actual es un bloque de 4x4, lo que significa que hay cuatro valores en el área de memoria intermedia "pTemp". Estos cuatro valores son pTemp[0], pTemp[1], pTemp[2] y pTemp[3]. Basándose en la ecuación P-3 anterior y estos cuatro valores, se puede determinar la serie "p [x]". Los valores en la serie "p [x]" se pueden llamar muestras de entrada de MIP.
Etapa 302
En la etapa 302, la unidad de intra predicción (o el módulo de predicción 301) deriva la predicción de MIP del bloque de codificación 300 usando el grupo de muestras de referencia 32, 34 y una matriz de MIP. La matriz de MIP se selecciona de un grupo de matrices de MIP predefinidas basándose en su identificador de modo de MIP correspondiente (es decir, la variable "mipModeId") y el identificador de tamaño de MIP (es decir, la variable "mipSizeId").
La predicción de MIP derivada por la unidad de intra predicción incluye las muestras previstas parciales 35 de todas las posiciones de muestras o de muestras parciales en el bloque de codificación 300. La predicción de MIP se indica como "predMip [x] [y]. "
En la realización ilustrada en la Figura 3, las muestras previstas parciales 35 son muestras marcadas como cuadrados grises en el bloque actual 300. Las muestras de referencia 32, 34 en la serie p [x] derivadas en la etapa 301 se usan como entrada para el módulo de predicción 301. El módulo de predicción 301 calcula las muestras previstas parciales 35 usando la matriz de MIP y un parámetro de desplazamiento. El parámetro de desplazamiento incluye un parámetro de compensación de desplazamiento ("fO") y un parámetro de número de desplazamiento ("sW"). En alguna realización, el módulo de predicción 301 deriva la muestra prevista parcial 35 con su coordenada (x, y) basándose en las siguientes ecuaciones (B) y (C):
oW=(1«(sW-1))-fO * (SÍ=S0ize_1p[i]) í ü
predM¡p[x][y]=(((Xj=oze_1 mWeight[ i ][ y * predSize x ] *
p[ i ])+oW)>>sW)+pTemp[0] (para x desde 0 a "predSize-1", para y desde 0 a "predSize-1") (C)
En la ecuación (B) anterior, el parámetro "fO" es un parámetro de compensación de desplazamiento que se usa para determinar el parámetro "oW" o un valor de compensación. El parámetro "sW" es un parámetro numérico de desplazamiento. "p [i]" es una muestra de referencia. El símbolo ">>" es un operador de desplazamiento a la derecha binario como se define en la norma H. 265.
En la ecuación (C) anterior, "mWeight [i] [j] " es una matriz de ponderación de MIP en la que los elementos de la matriz son constantes fijas tanto para la codificación como para la decodificación. Como alternativa, en algunas realizaciones, una implementación del sistema de codificación 200 usa una matriz de MIP adaptativa. Por ejemplo, la matriz de ponderación de MIP puede actualizarse mediante diversos métodos de entrenamiento usando una o más imágenes codificadas como entrada, o usando imágenes proporcionadas al sistema de codificación 200 por medios externos. La unidad de intra predicción puede enviar "mWeight [i] [j]" a una unidad de codificación por entropía (por ejemplo, la unidad de codificación por entropía 215) cuando se determina un modo de MIP. La unidad de codificación por entropía puede escribir "mWeight [i] [j] " en el flujo de bits, por ejemplo, en una o más unidades de datos especiales en el flujo de bits que contiene datos de MIP. En correspondencia, en algunas realizaciones, una implementación de un sistema de decodificación 400 con matriz de MIP adaptativa puede actualizar la matriz de MIP usando, por ejemplo, un método de entrenamiento con entrada de una o más imágenes o bloques codificados o imágenes de otro flujo de bits proporcionado por significados externos, u obtenido desde la unidad de análisis 401 analizando unidades de datos especiales en el flujo de bits de entrada que contiene datos de matriz de MIP.
En un ejemplo no cubierto por la invención reivindicada, la unidad de predicción 301 puede determinar los valores de "sW" y "fO" basándose en el tamaño del bloque actual 300 y el modo de MIP usado para el bloque actual 300. En algunos de tales ejemplos, la unidad de predicción 301 puede obtener los valores de "sW" y "fO" usando una tabla de consulta. Por ejemplo, la Tabla 1 a continuación se puede usar para determinar "sW".
Tabla 1
Figure imgf000010_0002
En algunas realizaciones, el parámetro de número de desplazamiento "sW" se puede establecer como un primer valor fijo, tal como 5 o 6. En tales realizaciones, no hay necesidad de usar la Tabla 1 anterior para buscar el valor del parámetro de número de desplazamiento "sW". En un ejemplo no cubierto por la invención reivindicada, basándose en que "mipSizeId" es igual a "0" o "2", el parámetro de número de desplazamiento "sW" se puede establecer como "5". Como otro ejemplo, no cubierto por la invención reivindicada, basándose en que "mipSizeId" es igual a "2", el parámetro de número de desplazamiento "sW" se puede establecer como "5". La tabla 2 a continuación muestra diferentes configuraciones del parámetro de número de desplazamiento "sW". En algunas realizaciones, el parámetro de número de desplazamiento "sW". puede establecerse por el módulo de predicción 301.
Tabla 2
Figure imgf000010_0003
En algunas realizaciones, el módulo de predicción puede establecer "sW" como una constante. Por ejemplo, el módulo de predicción puede establecer "sW" como "5" para bloques de diversos tamaños con diferentes modos de MIP. Como otro ejemplo, el módulo de predicción 301 puede establecer "sW" como "6" para bloques de diversos tamaños con diferentes modos de MIP. Como otro ejemplo más, el módulo de predicción puede establecer "sW" como "7" para bloques de diversos tamaños con diferentes modos de MIP.
En algunos ejemplos no cubiertos por la invención reivindicada, la unidad de predicción 301 puede usar la Tabla 3 a continuación para determinar el parámetro de compensación de desplazamiento "fO. "
Tabla 3
Figure imgf000010_0001
En algunas realizaciones, el parámetro de compensación de desplazamiento "fO" se puede establecer como un segundo valor fijo, tal como 23, 32, 46, 56 o 66. El segundo valor fijo tiene un intervalo preferido de 1-100. En tales realizaciones, no hay necesidad de usar la Tabla 3 anterior para buscar el valor del parámetro de compensación de desplazamiento "fO". En algunos ejemplos no cubiertos por la invención reivindicada, el parámetro de compensación de desplazamiento "fO" se puede establecer basándose en el parámetro "mipSizeId". Por ejemplo, cuando "mipSizeId" es igual a "0", el parámetro de compensación de desplazamiento "fO" se puede establecer como "34". Como otro ejemplo, cuando "mipSizeId" es igual a "1", el parámetro de compensación de desplazamiento "fO" se puede establecer como "23". Como otro ejemplo, cuando "mipSizeId" es igual a "1", el parámetro de compensación de desplazamiento "fO" se puede establecer como "46". La Tabla 4 a continuación muestra diferentes configuraciones del parámetro de compensación de desplazamiento "fO". En algunas realizaciones, el módulo de predicción 301 puede establecer el parámetro de compensación de desplazamiento "fO".
Tabla 4
Figure imgf000011_0001
Haciendo referencia a la ecuación (B) anterior, cuando el parámetro de número de desplazamiento "sW" y el parámetro de compensación de desplazamiento "fO" se establecen como valores fijos, el parámetro "oW" también puede ser una constante, lo que mejora la velocidad de cálculo general del proceso de MIP.
En algunas realizaciones, la unidad de intra predicción puede realizar una operación de "recorte" en el valor de las muestras de predicción de MIP almacenadas en la serie "predMip". Cuando "isTransposed" es 1 (o VERDADERO), la serie "predSize x preSize" "predMip [x] [y] (para x de 0 a "predSize-1; para y de 0 a "predSize-1") se transpone como "predTemp [y] [x] = predMip [x] [y]" y a continuación "predMip = predTemp".
Más particularmente, cuando el tamaño del bloque de codificación 303 es "8x8" (es decir, tanto "cbWidth" como "cbHeight" son 8), la unidad de intra predicción puede derivar una serie "8x8" "predMip".
Etapa 303
En la etapa 303 de la Figura 3, la unidad de intra predicción deriva muestras previstas 37 de las muestras restantes distintas de las muestras parciales 35 en el bloque de codificación 300. Como se muestra en la Figura 3, la unidad de intra predicción puede usar el módulo de filtrado 302 para derivar las muestras previstas 37 de las muestras restantes distintas de las muestras parciales 35 en el bloque de codificación 300. Una entrada al módulo de filtrado 302 pueden ser las muestras parciales 35 en la etapa 302. El módulo de filtrado 302 puede usar uno o más filtros de interpolación para derivar las muestras previstas 37 de las muestras restantes distintas de las muestras parciales 35 en el bloque de codificación 300. La unidad de intra predicción (o el módulo de filtrado 302) puede generar una predicción (que incluye múltiples muestras previstas 37) del bloque de codificación 300 y almacenar la predicción 37 en una serie "predSamples[x][y]" (para x de 0 a "nTbW-1", para y de 0 a "nTbH-1") de acuerdo con las siguientes condiciones K y L.
[CONDICIÓN K] Si la unidad de intra predicción determina que "nTbW" es mayor que "predSize" o que "nTbH" es mayor que "predSize", la unidad de intra predicción inicia un proceso de muestreo ascendente para derivar "predSamples" basándose en "predMip".
[CONDICIÓN L] De lo contrario, la unidad de intra predicción establece la predicción del bloque de codificación 300 como la predicción de MIP del bloque de codificación.
En otras palabras, la unidad de intra predicción puede establecer "predSamples[x] [y] (para x de 0 a "nTbW-1", para y de 0 a "nTbH-1") que es igual a "predMip[x][y]". Por ejemplo, la unidad de intra predicción puede establecer "predSamples" para un bloque de codificación con su tamaño igual a "8x8" (es decir, tanto "cbWidth" como "cbHeight" son 8) como su "predMip[x][y]".
A través de las etapas 301-303, la unidad de intra predicción puede generar la predicción del bloque actual 300. La predicción generada puede usarse para procesarse adicionalmente (por ejemplo, el bloque de predicción 23 analizado anteriormente con referencia a la Figura 2).
La Figura 4 es un diagrama esquemático de un sistema de decodificación 400 de acuerdo con una realización de la presente divulgación. El sistema de decodificación 400 está configurado para recibir, procesar y transformar un flujo de bits de entrada 40 en un vídeo de salida 41. El flujo de bits de entrada 40 puede ser un flujo de bits que representa una imagen/vídeo comprimido/codificado. En algunas realizaciones, el flujo de bits de entrada 40 puede ser de un flujo de bits de salida (por ejemplo, el flujo de bits de salida 21) generado por un sistema de codificación (tal como el sistema de codificación 200).
El sistema de decodificación 400 incluye una unidad de análisis 401 configurada para analizar el flujo de bits de entrada 40 para obtener valores de los elementos de sintaxis del mismo. La unidad de análisis 401 también convierte las representaciones binarias de los elementos de sintaxis en valores numéricos (es decir, un bloque de decodificación 42) y reenvía los valores numéricos a una unidad de predicción 402 (por ejemplo, para su decodificación). En algunas realizaciones, la unidad de análisis 401 también puede reenviar una o más variables y/o parámetros para decodificar los valores numéricos a la unidad de predicción 402.
La unidad de predicción 402 está configurada para determinar un bloque de predicción 43 del bloque de decodificación 42 (por ejemplo, una CU o una partición de una CU, tal como un bloque de transformada). Cuando se indica que se usó un modo de inter codificación para decodificar el bloque de decodificación 42, una unidad de MC (compensación de movimiento) 403 de la unidad de predicción 402 puede recibir parámetros relevantes de la unidad de análisis 401 y, en consecuencia, decodificar bajo el modo de inter codificación. Cuando se indica que se usa un modo de intra predicción (por ejemplo, un modo de MIP) para decodificar el bloque de decodificación 42, una unidad de intra predicción 404 de la unidad de predicción 402 recibe parámetros relevantes de la unidad de análisis 401 y, en consecuencia, decodifica bajo el modo de intra codificación indicado. En algunas realizaciones, el modo de intra predicción (por ejemplo, el modo de MIP) puede identificarse por una bandera específica (por ejemplo, una bandera de MIP) embebida en el flujo de bits de entrada 40.
Por ejemplo, cuando se identifica el modo de MIP, la unidad de intra predicción 404 puede determinar el bloque de predicción 43 (que incluye múltiples muestras previstas) basándose en los siguientes métodos (similares a las etapas 301-303 descritas en la Figura 3).
En primer lugar, la unidad de intra predicción 404 deriva una o más muestras de referencia de muestras vecinas del bloque de decodificación 42 (similar a la etapa 301 en la Figura 3). Por ejemplo, la unidad de intra predicción 404 puede generar las muestras de referencia muestreando descendentemente las muestras vecinas, o extrayendo directamente una porción de las muestras vecinas.
La unidad de intra predicción 404, a continuación, puede derivar muestras previstas parciales en el bloque de decodificación 42 usando las muestras de referencia, una matriz de MIP y un parámetro de desplazamiento (similar a la etapa 302 en la Figura 3). En algunas realizaciones, las posiciones de las muestras previstas parciales se pueden preestablecer en el reloj de decodificación 42. Por ejemplo, las posiciones de las muestras previstas parciales pueden ser posiciones con valores de coordenadas horizontales y verticales impares dentro del bloque de codificación. El parámetro de desplazamiento puede incluir un parámetro de compensación de desplazamiento y un parámetro de número de desplazamiento, que se pueden usar en operaciones de desplazamiento para generar las muestras previstas parciales.
Finalmente, si se derivan las muestras previstas parciales del bloque de decodificación 42, la unidad de intra predicción 404 deriva muestras previstas de las muestras restantes distintas de las muestras previstas parciales en el bloque de decodificación 42 (similar a la etapa 303 en la Figura 3). Por ejemplo, la unidad de intra predicción 404 puede usar un filtro de interpolación para derivar las muestras previstas, usando las muestras previstas parciales y las muestras vecinas como entradas del filtro de interpolación.
El sistema de decodificación 400 incluye una unidad de escalamiento 405 con funciones similares a las de la unidad de cuantificación inversa 210 del sistema de codificación 200. La unidad de escalamiento 405 realiza operaciones de escalamiento en coeficientes cuantificados 44 (por ejemplo, niveles) desde la unidad de análisis 401 para generar coeficientes reconstruidos 45.
Una unidad de transformada 406 tiene funciones similares a las de la unidad de transformada inversa 211 en el sistema de codificación 200. La unidad de transformada 406 realiza una o más operaciones de transformada (por ejemplo, operaciones inversas de una o más operaciones de transformada realizadas por la unidad de transformada inversa 211) para obtener el residual reconstruido 46.
Un sumador 407 añade el bloque de predicción 43 de la unidad de predicción 402 y el residuo reconstruido 46 de la unidad de transformada 406 para obtener un bloque reconstruido 47 del bloque de decodificación 42. El bloque reconstruido 47 también se envía a la unidad de predicción 402 para ser usado como referencia (por ejemplo, para otros bloques codificados en un modo de intra predicción).
Después de que se haya reconstruido todo el bloque de decodificación 42 en una imagen o subimagen (es decir, se forma un bloque reconstruido 48), una unidad de filtrado 408 puede realizar un filtrado en bucle en el bloque reconstruido 49. La unidad de filtrado 408 contiene uno o más filtros, tal como un filtro de desbloqueo, un filtro de compensación adaptativa de muestra (SAO), un filtro de bucle adaptativo (ALF), un filtro de mapeo de luma con escalamiento de croma (LMCS), un filtro basándose en red neuronal, etc. En algunas realizaciones, la unidad de filtrado 408 puede realizar el filtrado en bucle en solo uno o más píxeles objetivo en el bloque reconstruido 48.
La unidad de filtrado 408 a continuación envía una imagen decodificada 49 (o imagen) o subimagen a una DPB (memoria intermedia de imágenes decodificadas) 409. La DPB 409 emite imágenes decodificadas como el vídeo de salida 41 basándose en la información de temporización y control. Las imágenes decodificadas 49 almacenadas en la DPB 409 también pueden emplearse como imagen de referencia por la unidad de predicción 402 cuando se realiza una inter o intra predicción.
En alguna realización, el sistema de decodificación 400 puede ser un dispositivo informático con un procesador y un medio de almacenamiento que graba uno o más programas de decodificación. Cuando el procesador lee y ejecuta los programas de decodificación, el sistema de decodificación 400 puede recibir un flujo de bits de vídeo de entrada y generar el vídeo decodificado correspondiente.
En algunas realizaciones, el sistema de decodificación 400 puede ser un dispositivo informático con uno o más chips.
Las unidades o elementos del sistema decodificación 400 pueden implementarse como circuitos integrados en los chips.
La Figura 5 es un diagrama de flujo que ilustra un método 500 de acuerdo con una realización de la presente divulgación. En el bloque 501, el método 500 comienza determinando los parámetros de predicción de un bloque actual. En algunas realizaciones, los parámetros de predicción incluyen parámetros para predicción (por ejemplo, "predModeIntra" como se define en la norma H.265) e identificadores de tamaño (por ejemplo, "mipSizeId"). En el bloque 502, cuando los parámetros de predicción indican que es aplicable un modo de MIP, el método 500 continúa determinando una muestra de entrada de MIP (por ejemplo, valores en la serie "p[x]") basándose en muestras vecinas. En algunas realizaciones, las muestras vecinas pueden incluir muestras vecinas superiores y/o muestras vecinas a la izquierda.
En el bloque 503, el método 500 continúa determinando el producto de un parámetro de compensación de desplazamiento (fO) y la suma de los muestreos de entrada de MIP. Como se muestra en la ecuación (B) anterior, la suma de los muestreos de entrada de MIP puede ser "£l"Solze-1p[l]", y. por lo tanto, el producto puede ser "fO * (Si=Soize_1p[i]".
En el bloque 503, el método 500 continúa determinando una primera constante basándose en un parámetro de número de desplazamiento (sW). Como se muestra en la ecuación (B) anterior, la primera constante puede ser "1<<(sW-1)".
En el bloque 504, el método 500 continúa determinando un valor de compensación (oW) multiplicando la primera constante y el producto. Como se muestra en la ecuación (B) anterior, el primer valor de compensación (oW) puede ser "(1«(sW-1))-fO * (Sl=Solze_1p[l])".
En el bloque 505, el método 500 determina una matriz de ponderación de MIP basándose en los parámetros de predicción. En la ecuación (B) anterior, la matriz de ponderación de MIP es la matriz "mWeight". En algunas realizaciones, la matriz de ponderación de MIP se puede generar basándose en diversos métodos, tales como procesos de entrenamiento que implican aprendizaje automático (ML) o inteligencia artificial (IA).
En el bloque 507, el método 500 continúa determinando la predicción de MIP basándose en la matriz de ponderación de MIP, el parámetro de número de desplazamiento (sW) y el valor de compensación (oW). La predicción de MIP puede ser la matriz "predMip[x][y]" como se indica en la ecuación (C ) anterior. En algunas realizaciones, la predicción de MIP se puede determinar como se ha descrito en la ecuación (C) anterior. En algunas realizaciones, la matriz de predicción de MIP se puede determinar basándose en la ecuación ( D) a continuación.
predMip[x][y] = (((£l£Sjze-1mWeight[/][ y x incH x predC x x
incW]x p[/])+oW)>>sW)+pTemp[0]
oW = (1 <<(sW-1)) - fO x (££Solze-1 p[¿]) (D)
En la ecuación ( D) anterior, "[x][y]" son las coordenadas de ubicación de los píxeles. "x" es para la dirección horizontal e "y" es para la dirección vertical de la matriz de predicción de MIP. Los parámetros "incH", "predC" e "incW" son parámetros para obtener valores de matriz a partir de la matriz de ponderación de MIP. Otros parámetros en la ecuación (D) se han analizado anteriormente con referencia a la ecuación (C).
En algunas realizaciones, el parámetro de compensación de desplazamiento (fO) se puede establecer como "32" y el parámetro de número de desplazamiento (sW) se puede establecer como 6. En tales realizaciones, la matriz de predicción de MIP se puede determinar basándose en las ecuaciones (E) y (F) a continuación.
predMip[x][y] = (((£l£Sjze-1mWeight[/][ y x incH x predC x x
incW]x p[/])+oW)>>6)+pTemp[0]
oW = 32-32x (EÍLSolze-1p[i]) (E)
predMip[x][y] = (((£¿fSjze-1mWeight[/][ y x predSize x]xp[/])+
oW)>>6)+pTemp[0]
oW = 32-32x ( £ |Solze-1p[i]) (F)
En el bloque 508, el método 500 genera una intra predicción del bloque actual mediante un proceso de filtrado basándose en la matriz de predicción de MIP. Si el tamaño de la matriz de predicción de MIP es el mismo que el tamaño del bloque actual, a continuación, el método 500 puede establecer los valores en la matriz de predicción de MIP para el bloque actual como sus muestras de intra predicción de MIP (por ejemplo, "preSamples[x] [y]"), como se muestra en la Ecuación (G) a continuación. Si no, el método 500 puede realizar el proceso de filtrado para ajustar el tamaño de la matriz de predicción de MIP. En algunas realizaciones, el proceso de filtrado puede ser un proceso de muestreo ascendente o un proceso de filtrado de paso bajo. Las realizaciones del proceso de muestreo ascendente se han analizado en detalle anteriormente con referencia a la Figura 3 (por ejemplo, la etapa 303).
predSamples[x][y] = predMip[x][y] (G)
La Figura 6 es un diagrama de flujo que ilustra un método 600 de acuerdo con una realización de la presente divulgación. En el bloque 601, el método 600 comienza determinando los parámetros de predicción de un bloque actual en un flujo de bits. En algunas realizaciones, los parámetros de predicción pueden incluir "predModeIntra" y "mipSizeId" como se define en la norma H.265.
En el bloque 602, el método 600 continúa determinando una muestra de entrada de intra predicción (MIP) basada en matriz del bloque actual basándose en muestras vecinas del bloque actual y los parámetros de predicción. En algunas realizaciones, la muestra de entrada de MIP pueden ser los valores en la serie "p[x]". En algunas realizaciones, las muestras vecinas incluyen una muestra vecina a la izquierda y/o una muestra vecina superior.
Las realizaciones para determinar la muestra de entrada de MIP se han analizado anteriormente con referencia a la Figura 3 (por ejemplo, la etapa 301). Por ejemplo, el método 600 puede incluir la realización de un proceso de muestreo descendente a las muestras vecinas para generar una serie de referencia temporal (pTemp[x]) basándose en el identificador de tamaño.
En el bloque 603, el método 600 continúa estableciendo un parámetro de número de desplazamiento (sW) como un primer valor fijo. En algunas realizaciones, el primer valor fijo puede ser 5 o 6. En el bloque 604, el método 600 continúa estableciendo un parámetro de compensación de desplazamiento (fO) como un segundo valor fijo. En algunas realizaciones, el segundo valor fijo puede ser 23, 34 o 46.
Cuando se establecen el primer y segundo valores, se puede determinar una primera constante "1<<(sW-1)". También se puede calcular un valor de compensación (oW) (por ejemplo, la ecuación (B)).
En el bloque 605, el método 600 continúa determinando una matriz de ponderación de MIP del bloque actual basándose en los parámetros de predicción. Las realizaciones de la matriz de ponderación de MIP se han analizado anteriormente con referencia a la Figura 3 (por ejemplo, la etapa 302).
En el bloque 606, el método 600 continúa determinando una muestra de predicción de MIP (por ejemplo, valores en la serie "predMip[x] [y]") del bloque actual basándose en la matriz de ponderación de MIP, la muestra de entrada de MIP, el parámetro de compensación de desplazamiento (fO), y el parámetro de número de desplazamiento (sW). Las realizaciones de la muestra de predicción de MIP se han analizado anteriormente en detalle con referencia a las ecuaciones (C), (D), (E), y (F).
En el bloque 607, el método 600 continúa realizando un proceso de muestreo ascendente a la muestra de predicción de MIP del bloque actual para generar muestras intra previstas (por ejemplo, "predSamples[x][y]") del bloque actual. En algunas realizaciones, la muestra de predicción de MIP del bloque actual puede incluir muestras de predicción para al menos una porción de los puntos de muestreo del bloque actual. Las realizaciones de las muestras de predicción de MIP y la matriz de ponderación de MIP se han analizado anteriormente en detalle con referencia a la ecuación (G) y la Figura 3 (por ejemplo, la etapa 303).
La Figura 7 es un diagrama esquemático de un codificador 700 de acuerdo con una realización de la presente divulgación. Como se muestra, el codificador 700 incluye una primera unidad de determinación 701, una primera unidad de cálculo 702 y una primera unidad de predicción 703. La primera unidad de determinación 701 es para configurar parámetros de predicción de un bloque actual y para determinar una muestra de entrada de MIP (por ejemplo, valores en la serie "p[x]"). En algunas realizaciones, la muestra de entrada de MIP puede determinarse basándose en muestras vecinas. Los parámetros de predicción incluyen parámetros indicativos de qué modelo de predicción se ha usado (por ejemplo, un modelo de MIP) y los parámetros correspondientes (por ejemplo, un identificador de tamaño). La primera unidad de determinación 701 también puede determinar una matriz de ponderación de MIP. La primera unidad de cálculo 702 está configurada para calcular un valor de compensación (por ejemplo, "oW" analizado anteriormente) basándose en un parámetro de número de desplazamiento (por ejemplo, "sW") y un parámetro de compensación de desplazamiento (por ejemplo, "fO"). La primera unidad de predicción 703 es para generar la predicción de MIP del bloque actual basándose en la matriz de ponderación de MIP, el valor de compensación, el parámetro de número de desplazamiento y el parámetro de compensación de desplazamiento.
En algunas realizaciones, el codificador 700 incluye una primera unidad de consulta 704 que está configurada para determinar un modelo de MIP de un bloque actual. En tales realizaciones, la primera unidad de determinación 701 determina un índice de modelo de MIP del bloque actual. La primera unidad de consulta 704 puede a continuación obtener los parámetros correspondientes (por ejemplo, sW, fO, identificador de tamaño de MIP, etc.) basándose en el índice del modelo de MIP.
En la presente divulgación, el término "unidad" puede ser un procesador, circuitería, software, módulo o una combinación de los mismos. En algunas realizaciones, la "unidad" puede ser un componente integrado tal como un SoC (sistema en chip). En algunas realizaciones, la "unidad" puede incluir un conjunto de instrucciones almacenadas en un medio de almacenamiento tal como un disco, un disco duro, una memoria y así sucesivamente.
La Figura 8 es un diagrama esquemático de un codificador 800 de acuerdo con una realización de la presente divulgación. El codificador 800 puede incluir una primera interfaz de comunicación 801, un primer dispositivo de almacenamiento 802 y un primer procesador 803 acoplados por un primer bus de sistema 804. El primer bus de sistema 804 puede incluir líneas eléctricas, líneas de control y/o líneas de señal. La primera interfaz de comunicación 801 está configurada para comunicarse con otros dispositivos externos mediante señales de transmisión y recepción. El primer dispositivo de almacenamiento 802 está configurado para almacenar datos, información y/o instrucciones (tal como las etapas analizadas en las Figuras 5 y 6) que puede realizar el primer procesador 803.
El primer procesador 803 puede ser un chip, un circuito integrado u otros dispositivos que pueden procesar señales. El primer procesador 803 puede ser un procesador de propósito general, un procesador de señales digitales (DSP), un circuito integrado específico de la aplicación (ASIC), una matriz de puertas programables en el campo (FPGA), un dispositivo lógico programable (PLD) u otros componentes lógicos adecuados.
La Figura 9 es un diagrama esquemático de un decodificador 900 de acuerdo con una realización de la presente divulgación. Como se muestra, el decodificador 900 incluye una unidad analítica 901, una segunda unidad de cálculo 902, una segunda unidad de predicción 903, una segunda unidad de predicción 904 y una segunda unidad de consulta 905. La unidad analítica 901 está configurada para analizar un flujo de bits para obtener parámetros de predicción de un bloque actual. La segunda unidad de determinación 902 es para configurar parámetros de predicción adecuados del bloque actual y para determinar una muestra de entrada de MIP (por ejemplo, valores en la serie "p[x]"). En algunas realizaciones, la muestra de entrada de MIP puede determinarse basándose en muestras vecinas. Los parámetros de predicción incluyen parámetros indicativos de qué modelo de predicción se ha usado (por ejemplo, un modelo de MIP) y los parámetros correspondientes (por ejemplo, un identificador de tamaño). La segunda unidad de determinación 903 también puede determinar una matriz de ponderación de MIP. La segunda unidad de cálculo 904 está configurada para calcular un valor de compensación (por ejemplo, "oW") basándose en un parámetro de número de desplazamiento (por ejemplo, "sW") y un parámetro de compensación de desplazamiento (por ejemplo, "fO"). La segunda unidad de predicción 904 es para generar la predicción de MIP del bloque actual basándose en la matriz de ponderación de MIP, el valor de compensación, el parámetro de número de desplazamiento y el parámetro de compensación de desplazamiento.
En algunas realizaciones, la segunda unidad de consulta 905 está configurada para determinar un modelo de MIP de un bloque actual. En tales realizaciones, la segunda unidad de determinación 902 determina un índice de modelo de MIP del bloque actual. La segunda unidad de consulta 904 puede a continuación obtener los parámetros correspondientes (por ejemplo, sW, fO, identificador de tamaño de MIP, etc.) basándose en el índice del modelo de MIP.
La Figura 10 es un diagrama esquemático de un decodificador 1000 de acuerdo con una realización de la presente divulgación. El decodificador 1000 puede incluir una segunda interfaz de comunicación 1001, un segundo dispositivo de almacenamiento 1002 y un segundo procesador 1003 acoplados por un segundo bus de sistema 1004. El segundo bus de sistema 1004 puede incluir líneas eléctricas, líneas de control y/o líneas de señal. La segunda interfaz de comunicación 1001 está configurada para comunicarse con otros dispositivos externos mediante señales de transmisión y recepción. El segundo dispositivo de almacenamiento 1002 está configurado para almacenar datos, información y/o instrucciones (tal como las etapas analizadas en las Figuras 5 y 6) que puede realizar el segundo procesador 1003.
El segundo procesador 1003 puede ser un chip, un circuito integrado u otros dispositivos que pueden procesar señales. El segundo procesador 1003 puede ser un procesador de propósito general, un procesador de señales digitales (DSP), un circuito integrado específico de la aplicación (ASIC), una matriz de puertas programables en el campo (FPGA), un dispositivo lógico programable (PLD) u otros componentes lógicos adecuados.
La Figura 11 es un diagrama esquemático de un aparato 1100 de acuerdo con una realización de la presente divulgación. El aparato 1100 puede ser un aparato de "envío". Más particularmente, el aparato 1100 está configurado para adquirir, codificar y almacenar/enviar una o más imágenes. El aparato 1100 incluye una unidad de adquisición 1001, un codificador 1102 y una unidad de almacenamiento/envío 1103.
La unidad de adquisición 1101 está configurada para adquirir o recibir una imagen y reenviar la imagen al codificador 1102. La unidad de adquisición 1101 también puede estar configurada para adquirir o recibir un vídeo que consiste en una secuencia de imágenes y reenviar el vídeo al codificador 1102. En algunas realizaciones, la unidad de adquisición 1101 puede ser un dispositivo que contiene una o más cámaras (por ejemplo, cámaras fotográficas, cámaras de profundidad, etc.). En algunas realizaciones, la unidad de adquisición 1101 puede ser un dispositivo que puede decodificar parcial o totalmente un flujo de bits de vídeo para generar una imagen o un vídeo. La unidad de adquisición 1101 también puede contener uno o más elementos para capturar la señal de audio.
El codificador 1102 está configurado para codificar la imagen de la unidad de adquisición 1101 y genera un flujo de bits de vídeo. El codificador 1102 también puede estar configurado para codificar el vídeo de la unidad de adquisición 1101 y genera el flujo de bits. En alguna realización, el codificador 1102 puede implementarse como el sistema de codificación 200 descrito en la Figura 2. En algunas realizaciones, el codificador 1102 puede contener uno o más codificadores de audio para codificar señales de audio para generar un flujo de bits de audio.
La unidad de almacenamiento/envío 1103 está configurada para recibir uno o ambos de los flujos de bits de vídeo y audio del codificador 1102. La unidad de almacenamiento/envío 1103 puede encapsular el flujo de bits de vídeo junto con el flujo de bits de audio para formar un archivo de medios (por ejemplo, un archivo de medios basado en ISO) o un flujo de transporte. En algunas realizaciones, la unidad de almacenamiento/envío 1103 puede escribir o almacenar el archivo de medios o el flujo de transporte en una unidad de almacenamiento, tal como un disco duro, un disco, un DVD, un almacenamiento en la nube, un dispositivo de memoria portátil, etc. En algunas realizaciones, la unidad de almacenamiento/envío 1103 puede enviar los flujos de bits de vídeo/audio a un dispositivo externo a través de una red de transporte, tal como Internet, redes alámbricas, una red celular, una red de área local inalámbrica, etc.
La Figura 12 es un diagrama esquemático de un aparato 1200 de acuerdo con una realización de la presente divulgación. El aparato 1200 puede ser un aparato de "destino". Más particularmente, el aparato 1200 está configurado para recibir, decodificar y reproducir imágenes o vídeos. El aparato 1200 incluye una unidad de recepción 1201, un decodificador 1202 y una unidad de representación 1203.
La unidad de recepción 1201 está configurada para recibir un archivo de medios o un flujo de transporte, por ejemplo, desde una red o un dispositivo de almacenamiento. El archivo de medios o el flujo de transporte incluye un flujo de bits de vídeo y/o un flujo de bits de audio. La unidad de recepción 1201 puede separar el flujo de bits de vídeo y el flujo de bits de audio. En algunas realizaciones, la unidad de recepción 1201 puede generar un nuevo flujo de bits de vídeo/audio extrayendo el flujo de bits de vídeo/audio.
El decodificador 1202 incluye uno o más decodificadores de vídeo tal como el sistema de decodificación 400 analizado anteriormente. El decodificador 1202 también puede contener uno o más decodificadores de audio. El decodificador 1202 decodifica el flujo de bits de vídeo y/o el flujo de bits de audio de la unidad de recepción 1201 para obtener un archivo de vídeo decodificado y/o uno o más archivos de audio decodificados (correspondientes a uno o múltiples canales).
La unidad de representación 1203 recibe los archivos de vídeo/audio decodificados y procesa los archivos de vídeo/audio para obtener una señal de vídeo/audio adecuada para visualizar/reproducir. Estas operaciones de ajuste/reconstrucción pueden incluir una o más de las siguientes: eliminación de ruido, síntesis, conversión de espacio de color, muestreo ascendente, muestreo descendente, etc. La unidad de representación 1203 puede mejorar las cualidades de los archivos de vídeo/audio decodificados.
La Figura 13 es un diagrama esquemático de un sistema de comunicación 1300 de acuerdo con una realización de la presente divulgación. El sistema de comunicación 1300 incluye un dispositivo de origen 1301, un medio de almacenamiento o red de transporte 1302 y un dispositivo de destino 1303. En algunas realizaciones, el dispositivo de origen 1301 puede ser el aparato 1100 descrito anteriormente con referencia a la Figura 11. El dispositivo de origen 1301 envía archivos de medios al medio de almacenamiento o red de transporte 1302 para almacenar o transportar los mismos. El dispositivo de destino 1303 puede ser el aparato 1200 descrito anteriormente con referencia a la Figura 12. El sistema de comunicación 1300 está configurado para codificar un archivo de medios, transportar o almacenar el archivo de medios codificado y a continuación decodificar el archivo de medios codificado. En algunas realizaciones, el dispositivo de origen 1301 puede ser un primer teléfono inteligente, el medio de almacenamiento 1302 puede ser un almacenamiento en la nube y el dispositivo de destino puede ser un segundo teléfono inteligente.
Las realizaciones descritas anteriormente son meramente ilustrativas de varias realizaciones de la presente divulgación, y la descripción de las mismas es específica y detallada. Las realizaciones anteriores no pueden interpretarse como limitantes de la presente divulgación. Cabe señalar que, los expertos en la técnica pueden realizar una serie de variaciones y modificaciones sin apartarse del alcance de la divulgación. Por lo tanto, el alcance de la presente divulgación debe estar sujeto a las reivindicaciones adjuntas.

Claims (13)

REIVINDICACIONES
1. Un método para predecir una imagen, comprendiendo el método:
determinar (S601) parámetros de predicción de un bloque actual en un flujo de bits;
determinar (S602) una muestra de entrada de intra predicción basada en matriz, MIP, del bloque actual basándose en muestras vecinas del bloque actual y los parámetros de predicción,
establecer (S603) un parámetro de número de desplazamiento, sW, como un primer valor fijo;
establecer (S604) un parámetro de compensación de desplazamiento, fO, como un segundo valor fijo; determinar (S605) una matriz de ponderaciones de MIP del bloque actual basándose en los parámetros de predicción;
determinar (S606) una muestra de predicción de MIP, predMip [x] [y], que tiene las coordenadas x, y del bloque actual usando las ecuaciones A y B:
oW=(1«(sW-1))-fO * (SÍ=S0ize_1p[ i ]) (A) predMip[ x ][ y ]=(((EÍ=S0ze_1 mWeight[ i ][ y * predSize x ] * p[ i ])
oW)>>sW)+pTemp[ 0 ] (B) donde:
sW es el parámetro de número de desplazamiento,
fO es el parámetro de compensación de desplazamiento,
p[i] es un iésimo valor en la muestra de entrada de MIP,
inSize es un número de valores en la muestra de entrada de MIP,
mWeight es la matriz de ponderaciones de MIP correspondiente a un modo de MIP y un tamaño del bloque actual,
predSize representa un tamaño de un bloque de predicción de MIP, y
pTemp es una serie que representa un área de memoria intermedia; y
realizar (S606) un proceso de muestreo ascendente a la muestra de predicción de MIP del bloque actual para generar muestras intra previstas, predSamples [x] [y], del bloque actual,
en donde el primer valor fijo y el segundo valor fijo se establecen como valores constantes independientemente del modo de MIP y del tamaño del bloque actual
2. El método de la reivindicación 1, en donde el primer valor fijo es 6.
3. El método de la reivindicación 1, en donde el segundo valor fijo es 46.
4. El método de la reivindicación 1, en donde la muestra de predicción de MIP del bloque actual incluye valores de predicción para una porción de las muestras del bloque actual.
5. El método de la reivindicación 1, en donde las muestras vecinas incluyen al menos una de una muestra vecina a la izquierda o una muestra vecina superior.
6. El método de la reivindicación 1, en donde los parámetros de predicción incluyen un identificador de tamaño, mipSizeId, del bloque actual.
7. El método de la reivindicación 6, que comprende, además:
realizar un proceso de muestreo descendente a las muestras vecinas para generar la serie pTemp basándose en el identificador de tamaño.
8. El método de la reivindicación 7, que comprende, además:
determinar un segundo valor constante basándose en una profundidad de bits, BitDepth, de las muestras vecinas, en caso de que el identificador de tamaño esté en un intervalo predeterminado.
9. El método de la reivindicación 8, que comprende, además:
generar la muestra de entrada de MIP, p [x], basándose en el segundo valor constante y la serie pTemp, siendo el segundo valor constante "1 << (BitDepth-1)".
10. Un aparato de decodificación para decodificar una imagen, comprendiendo el aparato de decodificación: una unidad de análisis (401) configurada para analizar un flujo de bits para determinar un modo de predicción de un bloque de codificación; y
una unidad de intra predicción (404) configurada para
determinar una muestra de entrada de intra predicción basada en matriz, MIP, del bloque de codificación basándose en muestras vecinas del bloque de codificación y parámetros de predicción del bloque de codificación;
establecer un parámetro de número de desplazamiento, sW, como un primer valor fijo;
establecer un parámetro de compensación de desplazamiento, fO, como un segundo valor fijo; determinar una matriz de ponderaciones de MIP del bloque de codificación basándose en los parámetros de predicción;
determinar una muestra de predicción de MIP, predMip[x][y], que tiene las coordenadas x, y del bloque de codificación usando las ecuaciones A y B:
oW=(1«(sW-1))-fO * (SÍ=S0ize_1p[ i ]) (A)
predMip[ x ][ y ]=(((EÍ=S0ze_1 mWeight[ i ][ y * predSize x ] * p[ i ])
oW)>>sW)+pTemp[ 0 ] (B)
donde:
sW es el parámetro de número de desplazamiento,
fO es el parámetro de compensación de desplazamiento,
p[i] es un iésimo valor en la muestra de entrada de MIP,
inSize es un número de valores en la muestra de entrada de MIP,
mWeight es la matriz de ponderaciones de MIP correspondiente a un modo de MIP y un tamaño del bloque de codificación,
predSize representa un tamaño de un bloque de predicción de MIP, y
pTemp es una serie que representa un área de memoria intermedia, y
realizar un proceso de muestreo ascendente a la muestra de predicción de MIP para generar muestras intra previstas del bloque de codificación,
en donde la unidad de análisis (401) está configurada para establecer el primer valor fijo y el segundo valor fijo como valores constantes independientemente del modo de MIP y el tamaño del bloque de codificación
11. El aparato de la reivindicación 10, en donde el primer valor fijo es 6 y el segundo valor fijo es 46.
12. Un método para codificar una imagen, comprendiendo el método:
recibir una imagen de entrada y dividir la imagen de entrada en uno o más bloques de codificación; determinar una muestra de entrada de intra predicción basada en matriz, MIP, del bloque de codificación basándose en muestras vecinas del bloque de codificación y parámetros de predicción del bloque de codificación; establecer un parámetro de número de desplazamiento, sW, como un primer valor fijo;
establecer un parámetro de compensación de desplazamiento, fO, como un segundo valor fijo;
determinar una matriz de ponderaciones de MIP del bloque de codificación basándose en los parámetros de predicción;
determinar una muestra de predicción de MIP, predMip[x][y], que tiene las coordenadas x, y del bloque de codificación usando las ecuaciones A y B:
oW=(1«(sW-1))-fO * (SÍ=S0ze_1p[ i ]) (A)
predMip[ x ][ y ]=(((£Í=S0ze_1 mWeight[ i ][ y * predSize x ] * p[ i ])
oW)>>sW)+pTemp[ 0 ] (B)
donde:
sW es el parámetro de número de desplazamiento,
fO es el parámetro de compensación de desplazamiento,
p[i] es un iésimo valor en la muestra de entrada de MIP,
inSize es un número de valores en la muestra de entrada de MIP,
mWeight es la matriz de ponderaciones de MIP correspondiente a un modo de MIP y un tamaño del bloque de codificación,
predSize representa un tamaño de un bloque de predicción de MIP, y
pTemp es una serie que representa un área de memoria intermedia; y
realizar un proceso de muestreo ascendente a la muestra de predicción de MIP para generar muestras intra previstas del bloque de codificación,
en donde el primer valor fijo y el segundo valor fijo se establecen como valores constantes independientemente del modo de MIP y del tamaño del bloque de codificación
13. Un aparato de codificación para codificar una imagen, comprendiendo el aparato de codificación:
una unidad de partición (201) configurada para recibir una imagen de entrada y dividir la imagen de entrada en uno o más bloques de codificación; y
una unidad de predicción (202) configurada para
determinar una muestra de entrada de intra predicción basada en matriz, MIP, del bloque de codificación basándose en muestras vecinas del bloque de codificación y parámetros de predicción del bloque de codificación;
establecer un parámetro de número de desplazamiento, sW, como un primer valor fijo;
establecer un parámetro de compensación de desplazamiento, fO, como un segundo valor fijo;
determinar una matriz de ponderaciones de MIP del bloque de codificación basándose en los parámetros de predicción;
determinar una muestra de predicción de MIP del bloque de codificación, predMip[x][y], que tiene las coordenadas x, y del bloque actual usando las ecuaciones A y B:
oW=(1«(sW-1))-fO * (SÍ=S0ize_1p[ i ]) (A)
predMip[ x ][ y ]=(((EÍ=S0ze_1 mWeight[ i ][ y * predSize x ] * p[ i ])
oW)>>sW)+pTemp[ 0 ] (B)
donde:
sW es el parámetro de número de desplazamiento,
fO es el parámetro de compensación de desplazamiento,
p[i] es un iésimo valor en la muestra de entrada de MIP,
inSize es un número de valores en la muestra de entrada de MIP,
mWeight es la matriz de ponderaciones de MIP correspondiente a un modo de MIP y un tamaño del bloque de codificación,
predSize representa un tamaño de un bloque de predicción de MIP, y
pTemp es una serie que representa un área de memoria intermedia; y
realizar un proceso de muestreo ascendente a la muestra de predicción de MIP para generar muestras intra previstas del bloque de codificación,
en donde la unidad de predicción (202) está configurada para establecer el primer valor fijo y el segundo valor fijo como valores constantes independientemente del modo de MIP y el tamaño del bloque de codificación
ES20841841T 2019-10-04 2020-09-25 Codificación de vídeo con intra predicción basada en matriz Active ES2940075T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962911166P 2019-10-04 2019-10-04
PCT/CN2020/117911 WO2021063270A1 (en) 2019-10-04 2020-09-25 Encoding and decoding method, apparatus and communication system

Publications (1)

Publication Number Publication Date
ES2940075T3 true ES2940075T3 (es) 2023-05-03

Family

ID=74672054

Family Applications (1)

Application Number Title Priority Date Filing Date
ES20841841T Active ES2940075T3 (es) 2019-10-04 2020-09-25 Codificación de vídeo con intra predicción basada en matriz

Country Status (15)

Country Link
US (2) US11388407B2 (es)
EP (1) EP3827591B1 (es)
JP (1) JP2022551542A (es)
KR (1) KR20220068950A (es)
CN (1) CN112616057A (es)
AU (1) AU2020327342A1 (es)
BR (1) BR112021006725A2 (es)
CA (1) CA3109298C (es)
ES (1) ES2940075T3 (es)
IL (1) IL280722A (es)
MX (1) MX2021003414A (es)
PL (1) PL3827591T3 (es)
SG (1) SG11202101567TA (es)
WO (1) WO2021063270A1 (es)
ZA (1) ZA202101277B (es)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW202130178A (zh) * 2019-12-20 2021-08-01 日商索尼股份有限公司 影像處理裝置及影像處理方法
CN116777727B (zh) * 2023-06-21 2024-01-09 北京忆元科技有限公司 存算一体芯片、图像处理方法、电子设备及存储介质

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6452969B1 (en) * 1998-09-28 2002-09-17 Thomson Licensing S.A. Transform domain inverse motion compensation having fractional pel accuracy
US8406299B2 (en) * 2007-04-17 2013-03-26 Qualcomm Incorporated Directional transforms for intra-coding
US8265144B2 (en) * 2007-06-30 2012-09-11 Microsoft Corporation Innovations in video decoder implementations
US9648325B2 (en) * 2007-06-30 2017-05-09 Microsoft Technology Licensing, Llc Video decoding implementations for a graphics processing unit
US8184711B2 (en) * 2007-09-12 2012-05-22 Sony Corporation Image processing device and image processing method
JP5544996B2 (ja) * 2010-04-09 2014-07-09 ソニー株式会社 画像処理装置および方法
KR102086145B1 (ko) * 2010-12-13 2020-03-09 한국전자통신연구원 인트라 예측 방법 및 그 장치
US20120218432A1 (en) * 2011-02-28 2012-08-30 Sony Corporation Recursive adaptive intra smoothing for video coding
CN102695061B (zh) 2011-03-20 2015-01-21 华为技术有限公司 一种权重因子的确定方法和装置,以及一种帧内加权预测方法和装置
WO2012134046A2 (ko) 2011-04-01 2012-10-04 주식회사 아이벡스피티홀딩스 동영상의 부호화 방법
CN103096056B (zh) * 2011-11-08 2015-11-25 华为技术有限公司 矩阵编码方法与装置及解码方法与装置
KR20130105114A (ko) * 2012-03-16 2013-09-25 주식회사 아이벡스피티홀딩스 인트라 예측 모드에서의 영상 복호화 방법
JP5841670B2 (ja) * 2012-09-28 2016-01-13 日本電信電話株式会社 イントラ予測符号化方法、イントラ予測復号方法、イントラ予測符号化装置、イントラ予測復号装置、それらのプログラム並びにプログラムを記録した記録媒体
US10397607B2 (en) * 2013-11-01 2019-08-27 Qualcomm Incorporated Color residual prediction for video coding
US10257528B2 (en) * 2015-10-08 2019-04-09 Electronics And Telecommunications Research Institute Method and apparatus for adaptive encoding and decoding based on image quality
CN108370441B (zh) * 2015-11-12 2022-07-12 Lg 电子株式会社 在图像编译系统中用于系数引起的帧内预测的方法和装置
EP3459244A4 (en) * 2016-01-12 2020-03-04 Telefonaktiebolaget LM Ericsson (publ) VIDEO CODING WITH HYBRID INTRAPREDICTION
WO2017173593A1 (en) 2016-04-06 2017-10-12 Mediatek Singapore Pte. Ltd. Separate coding secondary transform syntax elements for different color components
CN114339228B (zh) 2016-05-04 2024-04-12 夏普株式会社 用于对变换数据进行编码的系统和方法
US10484712B2 (en) * 2016-06-08 2019-11-19 Qualcomm Incorporated Implicit coding of reference line index used in intra prediction
CN116527887A (zh) * 2016-08-01 2023-08-01 韩国电子通信研究院 图像编码/解码方法和设备以及存储比特流的记录介质
US10623737B2 (en) * 2016-10-04 2020-04-14 Qualcomm Incorporated Peak sample adaptive offset
EP3529984A1 (en) * 2016-10-19 2019-08-28 Huawei Technologies Co., Ltd. Apparatuses and methods for encoding and decoding a video coding block of a video signal
WO2018134128A1 (en) * 2017-01-19 2018-07-26 Telefonaktiebolaget Lm Ericsson (Publ) Filtering of video data using a shared look-up table
WO2019098464A1 (ko) * 2017-11-14 2019-05-23 삼성전자 주식회사 부호화 방법 및 그 장치, 복호화 방법 및 그 장치
JPWO2019107182A1 (ja) * 2017-12-01 2020-11-26 ソニー株式会社 符号化装置、符号化方法、復号装置、及び、復号方法
KR102618498B1 (ko) * 2018-03-08 2023-12-27 삼성전자주식회사 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
CN110278435B (zh) 2018-03-16 2021-11-19 华为技术有限公司 一种图像块的帧内预测方法及装置
WO2020009514A1 (ko) * 2018-07-06 2020-01-09 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
BR112021001384A2 (pt) * 2018-08-06 2021-04-20 Electronics And Telecommunications Research Institute método e dispositivo para codificação/decodificação de imagens, e mídia de gravação que armazena fluxo de bits
GB2577056B (en) * 2018-09-11 2022-12-14 British Broadcasting Corp Bitstream decoder

Also Published As

Publication number Publication date
EP3827591A4 (en) 2021-08-25
PL3827591T3 (pl) 2023-04-24
US20220264100A1 (en) 2022-08-18
US11388407B2 (en) 2022-07-12
KR20220068950A (ko) 2022-05-26
AU2020327342A1 (en) 2021-04-22
EP3827591A1 (en) 2021-06-02
US11785221B2 (en) 2023-10-10
IL280722A (en) 2021-04-29
CN112616057A (zh) 2021-04-06
EP3827591B1 (en) 2023-01-11
SG11202101567TA (en) 2021-05-28
JP2022551542A (ja) 2022-12-12
US20210235090A1 (en) 2021-07-29
CA3109298A1 (en) 2021-04-04
WO2021063270A1 (en) 2021-04-08
MX2021003414A (es) 2021-06-15
BR112021006725A2 (pt) 2022-04-19
CA3109298C (en) 2024-02-20
ZA202101277B (en) 2022-01-26

Similar Documents

Publication Publication Date Title
AU2018282523B2 (en) Intra filtering applied together with transform processing in video coding
ES2866035T3 (es) Restricción de los valores señalizados de píxeles de escape en la codificación de vídeo por el modo de paleta
ES2938068T3 (es) Codificador de video, decodificador de video y métodos de codificación y decodificación correspondientes
KR102136913B1 (ko) 심도 맵 인트라 코딩을 위한 예측자
US12003704B2 (en) Methods for encoding and decoding pictures and associated apparatus
KR102448518B1 (ko) 비디오 코딩의 작은 크로마 블록 크기 제한
KR20230078653A (ko) 비디오 코딩을 위한 필터링 프로세스
KR20210134386A (ko) 비디오 코딩을 위한 컬러 변환
KR20170126889A (ko) 저 복잡도 샘플 적응 오프셋 (sao) 코딩
ES2940075T3 (es) Codificación de vídeo con intra predicción basada en matriz
KR20220124708A (ko) 비디오 코딩에서 스케일링 행렬들의 시그널링
US11438616B2 (en) Method and apparatus for video coding
KR20230043101A (ko) 디블록킹 필터 파라미터 시그널링
KR20220115974A (ko) 비디오 코딩을 위한 다중 변환 세트 시그널링
US20230035118A1 (en) Cross component end of block flag coding
RU2821306C2 (ru) Способ кодирования и декодирования, устройство и система связи
RU2782437C1 (ru) Преобразование цвета для видеокодирования
KR20230054863A (ko) 크로스-컴포넌트 변환 계수 레벨 재구성