BR112020012033A2 - transformation-based image encoding method and device for the same - Google Patents
transformation-based image encoding method and device for the same Download PDFInfo
- Publication number
- BR112020012033A2 BR112020012033A2 BR112020012033-2A BR112020012033A BR112020012033A2 BR 112020012033 A2 BR112020012033 A2 BR 112020012033A2 BR 112020012033 A BR112020012033 A BR 112020012033A BR 112020012033 A2 BR112020012033 A2 BR 112020012033A2
- Authority
- BR
- Brazil
- Prior art keywords
- transform
- reduced
- target block
- information
- block
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/18—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Apparatus For Radiation Diagnosis (AREA)
Abstract
Trata-se de um método de decodificação de imagem realizado por meio de um dispositivo de decodificação de acordo com a presente invenção que compreende as etapas de: derivar coeficientes de transformada quantizados em relação a um bloco alvo a partir de um fluxo de bits; realizar uma quantização inversa em relação aos coeficientes de transformada quantizados em relação ao bloco alvo e derivar coeficientes de transformada; derivar amostras residuais em relação ao bloco alvo com base na transformada inversa reduzida em relação aos coeficientes de transformada; e gerar uma figuração reconstruída com base nas amostras residuais em relação ao bloco alvo e amostras de predição em relação ao bloco alvo. A transformada inversa reduzida é realizada com base em uma matriz de transformada inversa reduzida. A matriz de transformada inversa reduzida é uma matriz não quadrada cujo número de colunas é menor que o número de fileiras.It is an image decoding method carried out by means of a decoding device according to the present invention, comprising the steps of: deriving quantized transform coefficients in relation to a target block from a bit stream; perform an inverse quantization in relation to the transform coefficients quantized in relation to the target block and derive transform coefficients; derive residual samples in relation to the target block based on the reduced inverse transform in relation to the transform coefficients; and generate a reconstructed figure based on the residual samples in relation to the target block and prediction samples in relation to the target block. The reduced inverse transform is performed based on a reduced reverse transform matrix. The reduced inverse transform matrix is a non-square matrix whose number of columns is less than the number of rows.
Description
[001] A presente revelação refere-se a uma tecnologia de codificação de imagem, e, mais particularmente, a um método e aparelho de codificação de imagem com base na transformada de um sistema de codificação de imagem.[001] The present disclosure relates to an image encoding technology, and, more particularly, to an image encoding method and apparatus based on the transform of an image encoding system.
[002] Demandas por imagens de alta resolução e alta qualidade, tais como imagens HD (Alta Definição) e imagens UHD (Definição Ultra Alta) aumentaram em vários campos. Visto que dados de imagem têm alta resolução e alta qualidade, a quantidade de informações ou bits a serem transmitidos aumenta em relação aos dados de imagem de legado. De modo correspondente, quando dados de imagem forem transmitidos usando uma mídia tal como uma linha de banda larga convencional com/sem fio ou dados de imagem forem armazenados usando uma mídia de armazenamento existente, os custos de transmissão e os custos de armazenamento dos mesmos são aumentados.[002] Demands for high resolution and high quality images, such as HD (High Definition) images and UHD (Ultra High Definition) images have increased in several fields. Since image data has high resolution and high quality, the amount of information or bits to be transmitted increases in relation to legacy image data. Correspondingly, when image data is transmitted using a medium such as a conventional wired / wireless broadband line or image data is stored using an existing storage medium, transmission costs and storage costs are increased.
[003] De modo correspondente, há uma necessidade por uma técnica de compactação de imagens altamente eficiente para transmitir, armazenar e reproduzir efetivamente informações de imagens de alta resolução e alta qualidade.[003] Correspondingly, there is a need for a highly efficient image compression technique to effectively transmit, store and reproduce high resolution and high quality image information.
[004] Um objetivo da presente revelação consiste em proporcionar um método e um aparelho para acentuar a eficiência de codificação de imagem.[004] An objective of the present disclosure is to provide a method and an apparatus to enhance the efficiency of image coding.
[005] Outro objetivo da presente revelação consiste em proporcionar um método e um aparelho para acentuar a eficiência de transformada.[005] Another objective of the present disclosure is to provide a method and an apparatus to enhance the transform efficiency.
[006] Ainda outro objetivo da presente revelação consiste em proporcionar um método e um aparelho para acentuar a eficiência de uma codificação residual através de uma transformada.[006] Yet another objective of the present disclosure is to provide a method and an apparatus for enhancing the efficiency of a residual encoding through a transform.
[007] Ainda outro objetivo da presente revelação consiste em proporcionar um método e aparelho de codificação de imagem com base em uma transformada reduzida.[007] Yet another objective of the present disclosure is to provide an image encoding method and apparatus based on a reduced transform.
[008] Uma modalidade exemplificadora da presente revelação proporciona um método de decodificação de imagem realizado por um aparelho de decodificação. O método inclui: derivar coeficientes de transformada quantizados para um bloco alvo a partir de um fluxo de bits, derivar coeficientes de transformada realizando-se uma desquantização para os coeficientes de transformada quantizados para o bloco alvo, derivar amostras residuais para o bloco alvo com base na transformada inversa reduzida para os coeficientes de transformada, e gerar uma figuração reconstruída com base nas amostras residuais para o bloco alvo e amostras de predição para o bloco alvo, e a transformada inversa reduzida é realizada com base em uma matriz de transformada inversa reduzida, e a matriz de transformada inversa reduzida é uma matriz não quadrada, sendo que um número de colunas da matriz não quadrada é menor que um número de fileiras da matriz não quadrada.[008] An exemplary embodiment of the present disclosure provides an image decoding method performed by a decoding device. The method includes: deriving quantized transform coefficients for a target block from a bit stream, deriving transform coefficients by performing a decanting for the quantized transform coefficients for the target block, deriving residual samples for the target block based in the reduced inverse transform for the transform coefficients, and generate a reconstructed figure based on the residual samples for the target block and prediction samples for the target block, and the reduced inverse transform is performed based on a reduced reverse transform matrix, and the reduced inverse transform matrix is a non-square matrix, the number of columns in the non-square matrix being less than the number of rows in the non-square matrix.
[009] Outra modalidade exemplificadora da presente revelação proporciona um método de codificação de imagem realizado por um aparelho de codificação. O método inclui: derivar amostras residuais para um bloco alvo, derivar coeficientes de transformada para o bloco alvo com base na transformada reduzida para as amostras residuais, derivar coeficientes de transformada quantizados realizando-se uma quantização com base nos coeficientes de transformada para o bloco alvo, e codificar informações sobre os coeficientes de transformada quantizados, e a transformada reduzida é realizada com base em uma matriz de transformada reduzida, e a matriz de transformada reduzida é uma matriz não quadrada, sendo que o número de fileiras da matriz não quadrada é menor que o número de colunas da matriz não quadrada.[009] Another exemplary embodiment of the present disclosure provides an image encoding method performed by an encoding apparatus. The method includes: deriving residual samples for a target block, deriving transform coefficients for the target block based on the reduced transform for residual samples, deriving quantized transform coefficients by performing a quantization based on the transform coefficients for the target block , and encode information about the quantized transform coefficients, and the reduced transform is performed based on a reduced transform matrix, and the reduced transform matrix is a non-square matrix, the number of rows of the non-square matrix being less than the number of columns in the non-square matrix.
[010] Ainda outra modalidade exemplificadora da presente revelação proporciona um aparelho de decodificação para realizar uma decodificação de imagem. O aparelho de decodificação inclui: um decodificador de entropia que deriva coeficientes de transformada quantizados para um bloco alvo a partir de um fluxo de bits, um desquantizador que deriva coeficientes de transformada realizando-se uma desquantização para os coeficientes de transformada quantizados para o bloco alvo, um transformador inverso que deriva amostras residuais para o bloco alvo com base na transformada inversa reduzida para os coeficientes de transformada, e um adicionador que gera uma figuração reconstruída com base nas amostras residuais para o bloco alvo e amostras de predição para o bloco alvo, e a transformada inversa reduzida é realizada com base em uma matriz de transformada inversa reduzida, e a matriz de transformada inversa reduzida é uma matriz não quadrada, sendo que o número de fileiras da matriz não quadrada é menor que o número de colunas da matriz não quadrada.[010] Yet another exemplary embodiment of the present disclosure provides a decoding apparatus for performing an image decoding. The decoding apparatus includes: an entropy decoder that derives quantized transform coefficients for a target block from a bit stream, a decantant that derives transform coefficients by performing a decanting for the quantized transform coefficients for the target block , an inverse transformer that derives residual samples for the target block based on the reduced reverse transform for the transform coefficients, and an adder that generates a reconstructed figure based on the residual samples for the target block and prediction samples for the target block, and the reduced inverse transform is performed based on a reduced inverse transform matrix, and the reduced inverse transform matrix is a non-square matrix, the number of rows in the non-square matrix being less than the number of columns in the non-square matrix. square.
[011] Ainda outra modalidade exemplificadora da presente revelação proporciona um aparelho de codificação para realizar uma codificação de imagem. O aparelho de codificação inclui: um subtrator que deriva amostras residuais para um bloco alvo, um transformador que deriva coeficientes de transformada para o bloco alvo com base na transformada reduzida para as amostras residuais, um quantizador que deriva coeficientes de transformada quantizados realizando-se uma quantização com base nos coeficientes de transformada para o bloco alvo, e um codificador de entropia que codifica informações sobre os coeficientes de transformada quantizados, e a transformada reduzida é realizada por uma matriz de transformada reduzida, e a matriz de transformada reduzida é uma matriz não quadrada, sendo que o número de fileiras da matriz não quadrada é menor que o número de colunas da matriz não quadrada.[011] Yet another exemplary embodiment of the present disclosure provides an encoding apparatus for performing image encoding. The coding apparatus includes: a subtractor that derives residual samples for a target block, a transformer that derives transform coefficients for the target block based on the reduced transform for residual samples, a quantizer that derives quantized transform coefficients by performing a quantization based on the transform coefficients for the target block, and an entropy encoder that encodes information about the quantized transform coefficients, and the reduced transform is performed by a reduced transform matrix, and the reduced transform matrix is a non-matrix square, the number of rows in the non-square matrix being less than the number of columns in the non-square matrix.
[012] De acordo com a presente revelação, é possível acentuar a eficiência geral de compactação de imagem/vídeo.[012] According to the present disclosure, it is possible to accentuate the overall image / video compression efficiency.
[013] De acordo com a presente revelação, é possível reduzir a quantidade de dados a ser transmitida para o processamento residual através de uma transformada eficiente, e acentuar a eficiência de codificação residual.[013] According to the present disclosure, it is possible to reduce the amount of data to be transmitted for the residual processing through an efficient transform, and to accentuate the residual coding efficiency.
[014] De acordo com a presente revelação, é possível concentrar os coeficientes de transformada diferentes de zero no componente de frequência baixa através da transformada secundária no domínio de frequência.[014] According to the present disclosure, it is possible to concentrate non-zero transform coefficients in the low frequency component through the secondary transform in the frequency domain.
[015] De acordo com a presente revelação, é possível realizar uma codificação de imagem com base na transformada reduzida, acentuando, assim, a eficiência de codificação de imagem.[015] According to the present disclosure, it is possible to carry out an image coding based on the reduced transform, thus enhancing the image coding efficiency.
[016] A Figura 1 é um diagrama esquemático que ilustra uma configuração de um dispositivo de codificação de imagem/vídeo ao qual a presente revelação é aplicável.[016] Figure 1 is a schematic diagram illustrating a configuration of an image / video encoding device to which the present disclosure is applicable.
[017] A Figura 2 é um diagrama esquemático que ilustra uma configuração de um dispositivo de decodificação de vídeo/imagem ao qual a presente revelação é aplicável.[017] Figure 2 is a schematic diagram illustrating a configuration of a video / image decoding device to which the present disclosure is applicable.
[018] A Figura 3 é um diagrama esquemático que ilustra uma técnica de transformada múltipla de acordo com uma modalidade exemplificadora.[018] Figure 3 is a schematic diagram that illustrates a multiple transform technique according to an exemplary modality.
[019] A Figura 4 é um diagrama que ilustra de modo exemplificador 65 modos intradirecionais das direções de predição.[019] Figure 4 is a diagram that illustrates 65 intradirectional modes of prediction directions in an exemplary way.
[020] As Figuras 5A a 5C são fluxogramas que ilustram um processo de transformada “secundária não separável de acordo com uma modalidade exemplificadora.[020] Figures 5A to 5C are flowcharts that illustrate a non-separable secondary transformation process according to an exemplary modality.
[021] A Figura 6 é um diagrama para explicar uma transformada reduzida de acordo com uma modalidade exemplificadora da presente revelação.[021] Figure 6 is a diagram to explain a reduced transform according to an exemplary embodiment of the present disclosure.
[022] A Figura 7 é um fluxograma que ilustra um processo de transformada reduzida de acordo com uma modalidade exemplificadora da presente revelação.[022] Figure 7 is a flowchart that illustrates a reduced transform process according to an exemplary embodiment of the present disclosure.
[023] A Figura 8 é um fluxograma que ilustra um processo de transformada reduzida de acordo com outra modalidade exemplificadora da presente revelação.[023] Figure 8 is a flow chart that illustrates a reduced transformation process according to another exemplary embodiment of the present disclosure.
[024] A Figura 9 é um fluxograma que ilustra um processo de transformada reduzida com base na transformada secundária não separável de acordo com uma modalidade exemplificadora da presente revelação.[024] Figure 9 is a flowchart illustrating a reduced transform process based on the non-separable secondary transform according to an exemplary embodiment of the present disclosure.
[025] A Figura 10 é um diagrama que ilustra um bloco ao qual a transformada reduzida de acordo com uma modalidade exemplificadora da presente revelação é aplicada.[025] Figure 10 is a diagram that illustrates a block to which the reduced transform according to an exemplary embodiment of the present disclosure is applied.
[026] A Figura 11 é um fluxograma que ilustra uma operação de um aparelho de codificação de vídeo de acordo com uma modalidade exemplificadora da presente revelação.[026] Figure 11 is a flow chart illustrating an operation of a video encoding device according to an exemplary embodiment of the present disclosure.
[027] A Figura 12 é um fluxograma que ilustra uma operação de um aparelho de decodificação de vídeo de acordo com uma modalidade exemplificadora da presente revelação.[027] Figure 12 is a flow chart illustrating an operation of a video decoding device according to an exemplary embodiment of the present disclosure.
[028] A presente revelação pode ser modificada de várias formas, e modalidades específicas da mesma serão descritas e ilustradas nos desenhos. No entanto, as modalidades não são destinados para limitar a revelação. Os termos usados na descrição a seguir são usados meramente para descrever modalidades específicas, mas não são destinadas a limitar a revelação. Uma expressão de um número singular inclui uma expressão do número no plural, desde que seja claramente lida de modo diferente. Os termos como “incluir” e “ter” são destinados a indicar que OS recursos, números, etapas, operações, elementos, componentes, ou combinações dos mesmos usados na descrição a seguir existem e deve-se compreender que a possibilidade de existência ou adição de um ou mais diferentes recursos, números, etapas, operações, elementos, componentes, ou combinações dos mesmos não é excluída.[028] The present disclosure can be modified in several ways, and specific details of it will be described and illustrated in the drawings. However, the arrangements are not intended to limit disclosure. The terms used in the following description are used merely to describe specific modalities, but are not intended to limit disclosure. An expression of a singular number includes an expression of the number in the plural, as long as it is clearly read differently. The terms such as "include" and "have" are intended to indicate that the resources, numbers, steps, operations, elements, components, or combinations of them used in the following description exist and it should be understood that the possibility of existence or addition of one or more different resources, numbers, steps, operations, elements, components, or combinations thereof is not excluded.
[029] Entretanto, elementos descritos na revelação são desenhados independentemente para o propósito de conveniência para explicação de diferentes funções específicas, e não significa que os elementos são incorporados por hardware independente ou software independente. Por exemplo, dois ou mais elementos dos elementos podem ser combinados para formar um elemento único, ou um elemento pode ser dividido em elementos plurais. As modalidades em que os elementos são combinados e/ou divididos pertencem à revelação sem divergir do conceito da revelação.[029] However, elements described in the disclosure are designed independently for the purpose of convenience for explaining different specific functions, and it does not mean that the elements are incorporated by independent hardware or independent software. For example, two or more elements of the elements can be combined to form a single element, or an element can be divided into plural elements. The modalities in which the elements are combined and / or divided belong to the revelation without departing from the concept of the revelation.
[030] A descrição a seguir pode ser aplicada no campo da técnica que lida com vídeos, figurações ou imagens. Por exemplo, um método ou uma modalidade exemplificadora revelada na descrição a seguir pode ser associado aos conteúdos revelados de um padrão de Codificação de Vídeo Versátil (VVC) (ITU-T Rec. H.266), um padrão de codificação de vídeo/imagem de próxima geração após o VVC, ou padrões antes do padrão VVC (por exemplo, um padrão Codificação de Vídeo de Alta Eficiência (HEVC) (ITU-T Rec. H.265) ou similares).[030] The following description can be applied in the field of the technique that deals with videos, pictures or images. For example, an exemplary method or modality revealed in the following description can be associated with the revealed content of a Versatile Video Encoding (VVC) standard (ITU-T Rec. H.266), a video / image encoding standard next generation after VVC, or standards before the VVC standard (for example, a High Efficiency Video Coding (HEVC) standard (ITU-T Rec. H.265) or similar).
[031] Doravante, exemplos da presente modalidade serão descritos em detalhes com referência aos desenhos anexos. Além disso, referências numéricas similares são usadas para indicar elementos similares ao longo dos desenhos, e as mesmas descrições em elementos similares serão omitidas.[031] Hereafter, examples of the present modality will be described in detail with reference to the attached drawings. In addition, similar numerical references are used to indicate similar elements throughout the drawings, and the same descriptions on similar elements will be omitted.
[032] Na presente revelação, um vídeo pode significar um conjunto de uma série de imagens de acordo com uma passagem de tempo. Em geral, uma figuração significa uma unidade que representa uma imagem em um tempo específico, uma fatia é uma unidade que constitui uma parte da figuração. Uma figuração pode ser composta por várias fatias, e os termos de uma figuração e uma fatia podem ser misturadas entre si conforme a ocasião demanda.[032] In the present revelation, a video can mean a set of a series of images according to a passage of time. In general, a figuration means a unit that represents an image at a specific time, a slice is a unit that forms a part of the figuration. A picture can consist of several slices, and the terms of a picture and a slice can be mixed together as the occasion demands.
[033] Um pixel ou um pel pode significar uma unidade mínima que constitui uma figuração (ou imagem). Ademais, uma “amostra” pode ser usada como um termo correspondente a um pixel. A amostra pode representar, em geral, um pixel ou um valor de um pixel, pode representar somente um pixel (um valor de pixel) de um componente de luma, e pode representar somente um pixel (um valor de pixel) de um componente de croma.[033] A pixel or a skin can mean a minimum unit that constitutes a figuration (or image). In addition, a “sample” can be used as a term corresponding to a pixel. The sample can generally represent a pixel or a pixel value, it can represent only one pixel (a pixel value) of a luma component, and it can represent only one pixel (a pixel value) of a luma component. chroma.
[034] Uma unidade indica uma unidade básica de processamento de imagem. A unidade pode incluir pelo menos uma área específica e informações sobre a área.[034] One unit indicates a basic image processing unit. The unit can include at least one specific area and information about the area.
Opcionalmente, a unidade pode ser misturada com termos tais como um bloco, uma área, ou similares. Em um caso típico, um bloco MxN pode representar um conjunto de amostras ou coeficientes de transformada dispostos em M colunas e N fileiras.Optionally, the unit can be mixed with terms such as a block, an area, or the like. In a typical case, an MxN block can represent a set of samples or transform coefficients arranged in M columns and N rows.
[035] A Figura 1 ilustra brevemente uma estrutura de um aparelho de codificação de vídeo/imagem ao qual a presente revelação é aplicável. Doravante, um aparelho de codificação pode incluir um aparelho de codificação de vídeo e/ou um aparelho de codificação de imagem, e o aparelho de codificação de vídeo pode ser usado como um conceito que compreende o aparelho de codificação de imagem.[035] Figure 1 briefly illustrates a structure of a video / image encoding device to which the present disclosure is applicable. Hereinafter, an encoding apparatus may include a video encoding apparatus and / or an image encoding apparatus, and the video encoding apparatus may be used as a concept comprising the image encoding apparatus.
[036] Com referência à Figura 1, um aparelho de codificação de vídeo 100 pode incluir um particionador de figuração 105, um preditor 110, um processador residual 120, um codificador de entropia 130, um adicionador 140, um filtro 150 e uma memória 160. O processador residual 120 pode incluir um subtrator 121, um transformador 122, um quantizador 123, um rearranjador 124, um desquantizador 125, um transformador inverso 126.[036] With reference to Figure 1, a video encoding apparatus 100 may include a figuration partitioner 105, a predictor 110, a residual processor 120, an entropy encoder 130, an adder 140, a filter 150 and a memory 160 Residual processor 120 may include a subtractor 121, a transformer 122, a quantizer 123, a rearranger 124, a decantant 125, an inverse transformer 126.
[037] O particionador de figuração 105 pode dividir uma figuração de entrada em pelo menos uma unidade de processamento.[037] The figuration partitioner 105 can divide an input figuration into at least one processing unit.
[038] Em um exemplo, a unidade de processamento pode ser referida como uma unidade de codificação (CU). Nesse caso, a unidade de codificação pode ser recursivamente dividida a partir da maior unidade de codificação (LCU) de acordo com uma estrutura de árvore binária e árvore quadrática (QTBT). Por exemplo, uma unidade de codificação pode ser dividida em uma pluralidade de unidades de codificação de uma profundidade maior com base em uma estrutura de árvore quadrática, uma estrutura de árvore binária e/ou uma estrutura de árvore terciária. Nesse caso, por exemplo, a estrutura de árvore quadrática pode ser primeiramente aplicada e a estrutura de árvore binária e estrutura de árvore terciária pode ser aplicada posteriormente. Alternativamente, a estrutura de árvore binária/estrutura de árvore terciária pode ser primeiramente aplicada. O procedimento de codificação de acordo com a presente modalidade pode ser realizado com base em uma unidade de codificação final que não está mais dividida. Nesse caso, a maior unidade de codificação pode ser usada como a unidade de codificação final com base na eficiência de codificação, ou similares, dependendo das características de figuração, ou a unidade de codificação pode ser recursivamente dividida em unidades de codificação de uma profundidade mais baixa conforme necessário e uma unidade de codificação que tem um tamanho ideal pode ser usada como a unidade de codificação final. No presente documento, o procedimento de codificação pode incluir um procedimento como predição, transformada e reconstrução, que será descrito posteriormente.[038] In one example, the processing unit can be referred to as a coding unit (CU). In this case, the coding unit can be recursively divided from the largest coding unit (LCU) according to a binary and quadratic tree structure (QTBT). For example, a coding unit can be divided into a plurality of coding units of greater depth based on a quadratic tree structure, a binary tree structure and / or a tertiary tree structure. In this case, for example, the quadratic tree structure can be applied first and the binary tree structure and tertiary tree structure can be applied later. Alternatively, the binary tree structure / tertiary tree structure can be applied first. The coding procedure according to the present modality can be carried out on the basis of a final coding unit that is no longer divided. In this case, the largest coding unit can be used as the final coding unit based on the coding efficiency, or the like, depending on the figuration characteristics, or the coding unit can be recursively divided into coding units of a deeper depth. download as needed and a coding unit that is optimally sized can be used as the final coding unit. In this document, the coding procedure can include a procedure such as prediction, transform and reconstruction, which will be described later.
[039] Em um outro exemplo, a unidade de processamento pode incluir uma unidade de codificação (CU), uma unidade de predição (PU) ou um transformador (TU). A unidade de codificação pode ser dividida a partir da maior unidade de codificação (LCU) em unidades de codificação de uma profundidade maior de acordo com a estrutura de árvore quadrática. Nesse caso, a maior unidade de codificação pode ser diretamente usada como a unidade de codificação final com base na eficiência de codificação, ou similares, dependendo das características de figuração, ou a unidade de codificação pode ser recursivamente dividida em unidades de codificação de uma profundidade maior conforme necessário e uma unidade de codificação que tem um tamanho ideal pode ser usada como uma unidade de codificação final. Quando a menor unidade de codificação (SCU) for definida, a unidade de codificação pode não ser dividida em unidades de codificação menores que a menor unidade de codificação. No presente documento, a unidade de codificação final refere-se a uma unidade de codificação que é particionada ou dividida em uma unidade de predição ou um transformador. A unidade de predição é uma unidade que é particionada a partir de uma unidade de codificação, e pode ser uma unidade de predição de amostra. No presente documento, a unidade de predição pode ser dividida em sub-blocos. O transformador pode ser dividido a partir da unidade de codificação de acordo com a estrutura de árvore quadrática e pode ser uma unidade para derivar um coeficiente de transformada e/ou uma unidade para derivar um sinal residual do coeficiente de transformada. Mais adiante neste documento, a unidade de codificação pode ser chamada de um bloco de codificação (CB), a unidade de predição pode ser chamada de um bloco de predição (PB) e o transformador pode ser referido como um bloco de transformada (TB). O bloco de predição ou unidade de predição pode se referir a uma área específica sob a forma de um bloco em uma figuração e incluir uma matriz de amostras de predição. Também, o bloco de transformada ou transformador pode se referir a uma área específica sob a forma de um bloco em uma figuração e incluir o coeficiente de transformada ou uma matriz de amostras residuais.[039] In another example, the processing unit may include a coding unit (CU), a prediction unit (PU) or a transformer (TU). The coding unit can be divided from the largest coding unit (LCU) into coding units of a greater depth according to the quadratic tree structure. In this case, the largest coding unit can be directly used as the final coding unit based on the coding efficiency, or the like, depending on the figuration characteristics, or the coding unit can be recursively divided into coding units of a depth larger as needed and a coding unit that is optimally sized can be used as a final coding unit. When the smallest coding unit (SCU) is defined, the coding unit may not be divided into smaller coding units than the smallest coding unit. In this document, the final coding unit refers to a coding unit that is partitioned or divided into a prediction unit or a transformer. The prediction unit is a unit that is partitioned from an encoding unit, and can be a sample prediction unit. In the present document, the prediction unit can be divided into sub-blocks. The transformer can be divided from the coding unit according to the quadratic tree structure and can be a unit to derive a transform coefficient and / or a unit to derive a residual signal from the transform coefficient. Later in this document, the coding unit can be called a coding block (CB), the prediction unit can be called a prediction block (PB) and the transformer can be referred to as a transform block (TB) . The prediction block or prediction unit can refer to a specific area in the form of a block in a picture and include an array of prediction samples. Also, the transform or transformer block can refer to a specific area in the form of a block in a picture and include the transform coefficient or a matrix of residual samples.
[040] O preditor 110 pode executar a predição em um bloco de destino de processamento (doravante, pode representar um bloco atual ou bloco residual), e pode gerar um bloco previsto incluindo amostras de predição do bloco atual. Uma unidade de predição executada no preditor 110 pode ser um bloco de codificação, ou pode ser um bloco de transformada, ou pode ser um bloco de predição.[040] Predictor 110 can perform the prediction on a processing target block (henceforth, it can represent a current block or residual block), and can generate a predicted block including prediction samples from the current block. A prediction unit performed on predictor 110 can be a coding block, or it can be a transform block, or it can be a prediction block.
[041] O preditor 110 pode determinar se a intrapredição é aplicada ou a interpredição é aplicada ao bloco atual. Por exemplo, o preditor 110 pode determinar se a intrapredição ou a interpredição é aplicada à unidade de CU.[041] Predictor 110 can determine whether intraprediction is applied or interpredition is applied to the current block. For example, predictor 110 can determine whether intraprediction or interpredition is applied to the CU unit.
[042] No caso da intrapredição, o preditor 110 pode derivar uma amostra de predição do bloco atual com base em uma amostra de referência fora do bloco atual em uma figuração à qual o bloco atual pertence (doravante, uma figuração atual). Nesse caso, o preditor 110 pode derivar a amostra de predição com base em uma média ou interpolação de amostras de referência vizinhas do bloco atual (caso (i)), ou pode derivar a amostra de predição com base em uma amostra de referência que existe em uma direção específica (predição) quanto a uma amostra de predição entre as amostras de referência vizinhas do bloco atual (caso (ii)). O caso (i) pode ser chamado de um modo não direcional ou um modo não angular, e o caso (ii) pode ser chamado de um modo direcional ou um modo angular. Na intrapredição, os modos de predição podem incluir como um exemplo, 33 modos direcionais e pelo menos dois modos não direcionais. Os modos não direcionais podem incluir o modo DC e o modo planar. O preditor 110 pode determinar a aplicação do modo de predição ao bloco atual usando o modo de predição aplicado ao bloco vizinho.[042] In the case of intraprediction, predictor 110 can derive a prediction sample from the current block based on a reference sample outside the current block in a figure to which the current block belongs (hereinafter, a current figure). In this case, the predictor 110 can derive the prediction sample based on an average or interpolation of neighboring reference samples from the current block (case (i)), or it can derive the prediction sample based on an existing reference sample in a specific direction (prediction) as to a prediction sample among the reference samples neighboring the current block (case (ii)). Case (i) can be called a non-directional or non-angular mode, and case (ii) can be called a directional or angular mode. In intraprediction, the prediction modes can include, as an example, 33 directional modes and at least two non-directional modes. Non-directional modes can include DC mode and planar mode. Predictor 110 can determine the application of the prediction mode to the current block using the prediction mode applied to the neighboring block.
[043] No caso da interpredição, o preditor 110 pode derivar a amostra de predição do bloco atual com base em uma amostra especificada por um vetor de movimento em uma figuração de referência. O preditor 110 pode derivar a amostra de predição do bloco atual aplicando qualquer um dentre um modo de salto, um modo de mesclagem e um modo de predição de vetor de movimento (MVP). No caso do modo de salto e no modo de mesclagem, o preditor 110 pode usar informações de movimento do bloco vizinho como informações de movimento do bloco atual. No caso do modo de salto, ao contrário do modo de mesclagem, uma diferença (residual) entre a amostra de predição e uma amostra original não é transmitida. No caso do modo MVP, um vetor de movimento do bloco vizinho é usado como um preditor de vetor de movimento para derivar um vetor de movimento do bloco atual.[043] In the case of interpredition, predictor 110 can derive the prediction sample from the current block based on a sample specified by a motion vector in a reference figure. Predictor 110 can derive the prediction sample from the current block by applying any one of a jump mode, a blend mode and a motion vector prediction mode (MVP). In the case of jump mode and merge mode, predictor 110 can use motion information from the neighboring block as motion information from the current block. In the case of the jump mode, unlike the blend mode, a difference (residual) between the prediction sample and an original sample is not transmitted. In the case of MVP mode, a motion vector from the neighboring block is used as a motion vector predictor to derive a motion vector from the current block.
[044] No caso da interpredição, o bloco vizinho pode incluir um bloco vizinho espacial existente na figuração atual e um bloco vizinho temporal existente na figuração de referência. A figuração de referência incluindo o bloco vizinho temporal também pode ser chamada de uma figuração colocalizada (colPic). As informações de movimento podem incluir o vetor de movimento e um índice de figuração de referência. Informações como informações de modo de predição e informações de movimento podem ser codificadas (entropia) e, então, emitidas como uma forma de fluxo de bits.[044] In the case of interpretation, the neighboring block may include a spatial neighboring block existing in the current figure and a temporal neighboring block existing in the reference figure. The reference figure including the neighboring temporal block can also be called a colocalized figure (colPic). The movement information can include the movement vector and a reference figure index. Information such as prediction mode information and movement information can be encoded (entropy) and then output as a form of bit stream.
[045] Quando as informações de movimento de um bloco vizinho temporal forem usadas no modo de omissão e no modo de mesclagem, uma figuração mais alta em uma lista de figurações de referência pode ser usada como uma figuração de referência. As figurações de referência incluídas na lista de figurações de referência podem ser alinhadas com base em uma diferença de contagem de ordem de figuração[045] When the movement information of a neighboring temporal block is used in the default mode and in the blend mode, a higher figure in a list of reference figures can be used as a reference figure. The reference figures included in the reference figures list can be aligned based on a difference in figure order count
(POC) entre uma figuração atual e uma figuração de referência correspondente. Uma POC corresponde a uma ordem de exibição e pode ser discriminada de uma ordem de codificação.(POC) between a current figure and a corresponding reference figure. A POC corresponds to a display order and can be broken down from a coding order.
[046] O subtrator 121 gera uma amostra residual que é uma diferença entre uma amostra original e uma amostra de predição. Se o modo de omissão for aplicado, a amostra residual pode não ser gerada conforme descrito acima.[046] Subtractor 121 generates a residual sample which is a difference between an original sample and a prediction sample. If the default mode is applied, the residual sample may not be generated as described above.
[047] O transformador 122 transforma as amostras residuais em unidades de um bloco de transformada para gerar um coeficiente de transformada. O transformador 122 pode executar a transformada com base no tamanho de um bloco de transformada correspondente e um modo de predição aplicado a um bloco de codificação ou bloco de predição espacialmente sobreposto ao bloco de transformada. Por exemplo, as amostras residuais podem ser transformadas usando um núcleo de transformação de transformada discreta de seno (DST) se a intrapredição for aplicada ao bloco de codificação ou o bloco de predição se sobrepuser ao bloco de transformada e o bloco de transformada for uma matriz residual 4x4 e for transformado usando o núcleo de transformação de transformada discreta de cosseno (DCT) em outros casos.[047] Transformer 122 transforms residual samples into units of a transform block to generate a transform coefficient. Transformer 122 can perform the transform based on the size of a corresponding transform block and a prediction mode applied to a coding block or prediction block spatially superimposed on the transform block. For example, residual samples can be transformed using a discrete sine transform (DST) transformation core if intraprediction is applied to the coding block or the prediction block overlaps the transform block and the transform block is a matrix residual 4x4 and is transformed using the discrete cosine transform (DCT) transformation core in other cases.
[048] O quantizador 123 pode quantizar os coeficientes de transformada para gerar coeficientes de transformada quantizados.[048] Quantizer 123 can quantize transform coefficients to generate quantized transform coefficients.
[049] O rearranjador 124 rearranja os coeficientes de transformada quantizados. O rearranjador 124 pode rearranjar os coeficientes de transformada quantizados sob a forma de um bloco em um vetor unidimensional através de um método de varredura de coeficiente. Embora o rearranjador 124 seja descrito como um componente separado, o rearranjador 124 pode fazer parte do quantizador 123.[049] Rearranger 124 rearranges the quantized transform coefficients. The rearranger 124 can rearrange the quantized transform coefficients in the form of a block in a one-dimensional vector using a coefficient scanning method. Although rearranger 124 is described as a separate component, rearranger 124 can be part of quantizer 123.
[050] O codificador de entropia 130 pode executar uma codificação de entropia nos coeficientes de transformada quantizados. A codificação de entropia pode incluir um método de codificação, por exemplo, um Golomb exponencial, uma codificação de comprimento variável adaptável ao contexto (CAVLC), uma codificação aritmética binária adaptável ao contexto (CABAC), ou similares. O codificador de entropia 130 pode executar a codificação, de acordo com uma codificação de entropia, ou de acordo com um método de predição configurado, em conjunto ou separadamente de informações (por exemplo, um valor de elemento de sintaxe ou similares) necessário para a reconstrução de vídeo além dos coeficientes de transformada quantizados. As informações codificadas por entropia podem ser transmitidas ou armazenadas na unidade de uma camada de abstração de rede (NAL) em uma forma de fluxo de bits. O fluxo de bits pode ser transmitido através de uma rede ou armazenado em uma mídia de armazenamento digital. No presente documento, a rede pode incluir uma rede de radiodifusão ou uma rede de comunicações, a mídia de armazenamento digital pode incluir várias mídias de armazenamento, tais como USB, SD, CD, DVD, Blu-ray, HDD, SDD, e assim por diante.[050] Entropy encoder 130 can perform entropy coding on the quantized transform coefficients. Entropy encoding may include an encoding method, for example, an exponential Golomb, a context-adaptable variable length encoding (CAVLC), a context-adaptive binary arithmetic encoding (CABAC), or the like. The entropy encoder 130 can perform the coding, according to an entropy coding, or according to a configured prediction method, together or separately from information (for example, a syntax element value or the like) necessary for the video reconstruction beyond quantized transform coefficients. Entropy-encoded information can be transmitted or stored in the unit of a network abstraction layer (NAL) in a bit stream form. The bit stream can be transmitted over a network or stored on digital storage media. In this document, the network may include a broadcasting network or a communications network, digital storage media may include various storage media, such as USB, SD, CD, DVD, Blu-ray, HDD, SDD, and so on. onwards.
[051] O desquantizador 125 desquantiza valores (coeficientes de transformada) quantizados pelo quantizador 123 e a transformada inversa 126 transforma inversamente os valores desquantizados pelo desquantizador 125 para gerar uma amostra residual.[051] Decantant 125 decantifies values (transform coefficients) quantized by quantizer 123 and inverse transform 126 inversely transforms the values decanted by decantant 125 to generate a residual sample.
[052] O adicionador 140 soma uma amostra residual a uma amostra de predição para reconstruir uma figuração. A amostra residual pode ser adicionada à amostra de predição em unidades de um bloco para gerar um bloco reconstruído. Embora o adicionador 140 seja descrito como um componente separado, o adicionador 140 pode fazer parte do preditor 110. Entretanto, o adicionador 140 pode ser referido como um reconstrutor ou gerador de bloco reconstruído.[052] Adder 140 adds a residual sample to a prediction sample to reconstruct a figuration. The residual sample can be added to the prediction sample in units of a block to generate a reconstructed block. Although adder 140 is described as a separate component, adder 140 can be part of predictor 110. However, adder 140 can be referred to as a reconstructed or reconstructed block generator.
[053] O filtto 150 pode aplicar a filttagem de desbloqueio e/ou um deslocamento adaptativo à figuração reconstruída. Os artefatos em um contorno de bloco na figuração reconstruída ou distorção na quantização podem ser corrigidos através de filtragem de desbloqueio e/ou deslocamento adaptativo à amostra. O deslocamento adaptativo à amostra pode ser aplicado em unidades de uma amostra após a filtragem de desbloqueio ser concluída. O filtro 150 pode aplicar um filtro em laço adaptativo (ALF) à figuração reconstruída. O ALF pode ser aplicado à figuração reconstruída à qual a filtragem de desbloqueio e/ou deslocamento adaptativo à amostra foi aplicada.[053] Filtto 150 can apply unlocking filtering and / or an adaptive displacement to the reconstructed figuration. The artifacts in a block outline in the reconstructed figuration or distortion in quantization can be corrected through unlock filtering and / or adaptive displacement to the sample. Adaptive displacement to the sample can be applied in units of a sample after the unlock filter is completed. Filter 150 can apply an adaptive loop filter (ALF) to the reconstructed figure. The ALF can be applied to the reconstructed figuration to which the sample filtering and / or adaptive displacement filtering was applied.
[054] A memória 160 pode armazenar uma figuração reconstruída (figuração decodificada) ou informações necessárias para a codificação/decodificação. No presente documento, a figuração reconstruída pode ser a figuração reconstruída filtrada pelo filtro 150. A figuração reconstruída armazenada pode ser usada como uma figuração de referência para (inter) predição de outras figurações. Por exemplo, a memória 160 pode armazenar figurações (de referência) usadas para interpredição. No presente documento, as figurações usadas para interpredição podem ser designadas de acordo com uma figuração de referência definida ou uma lista de figurações de referência.[054] Memory 160 can store a reconstructed picture (decoded picture) or information needed for encoding / decoding. In this document, the reconstructed figure can be the reconstructed figure filtered by filter 150. The stored reconstructed figure can be used as a reference figure for (inter) prediction of other figures. For example, memory 160 can store (reference) pictures used for interpretation. In this document, the figures used for interpretation may be designated according to a defined reference figure or a list of reference figures.
[055] A Figura 2 ilustra brevemente uma estrutura de um aparelho de decodificação de vídeo/imagem ao qual a presente revelação é aplicável. Doravante, um aparelho de decodificação de vídeo pode incluir um aparelho de decodificação de imagem.[055] Figure 2 briefly illustrates a structure of a video / image decoding device to which the present disclosure is applicable. Hereinafter, a video decoding apparatus may include an image decoding apparatus.
[056] Referindo-se à Figura 2, um aparelho de decodificação de vídeo 200 pode incluir um decodificador de entropia 210, um processador residual 220, um preditor 230, um adicionador 240, um filtro 250 e uma memória 260. O processador de residual 220 pode incluir um rearranjador 221, um desquantizador 222, um transformador inverso 223.[056] Referring to Figure 2, a video decoding apparatus 200 may include an entropy decoder 210, a residual processor 220, a predictor 230, an adder 240, a filter 250 and a memory 260. The residual processor 220 may include a rearrangement 221, a decoder 222, an inverse transformer 223.
[057] Ademais, embora não seja descrito, o aparelho de decodificação de vídeo 200 pode incluir um receptor para receber um fluxo de bits incluindo informações de vídeo. O receptor pode ser configurado como um módulo separado ou pode ser incluído no decodificador de entropia 210.[057] Furthermore, although not described, the video decoding apparatus 200 may include a receiver for receiving a bit stream including video information. The receiver can be configured as a separate module or can be included in the entropy decoder 210.
[058] Quando um fluxo de bits incluindo informações de vídeo/imagem for inserido, o aparelho de decodificação de vídeo 200 pode reconstruir um vídeo/imagem/figuração em associação a um processo pelo qual informações de vídeo são processadas no aparelho de codificação de vídeo.[058] When a bit stream including video / image information is inserted, the video decoding device 200 can reconstruct a video / image / picture in association with a process by which video information is processed in the video encoding device .
[059] Por exemplo, o aparelho de decodificação de vídeo 200 pode realizar uma decodificação de vídeo usando uma unidade de processamento aplicada no aparelho de codificação de vídeo. Logo, o bloco de unidade de processamento da decodificação de vídeo pode ser, por exemplo, uma unidade de codificação e, em outro exemplo, uma unidade de codificação, uma unidade de predição ou um transformador. A unidade de codificação pode ser dividida a partir da maior unidade de codificação de acordo com a estrutura de árvore quadrática e/ou a estrutura de árvore binária e/ou a estrutura de árvore terciária.[059] For example, the video decoding apparatus 200 can perform a video decoding using a processing unit applied to the video encoding apparatus. Thus, the video decoding processing unit block can be, for example, an encoding unit and, in another example, an encoding unit, a prediction unit or a transformer. The coding unit can be divided from the largest coding unit according to the quadratic tree structure and / or the binary tree structure and / or the tertiary tree structure.
[060] Uma unidade de predição e um transformador podem ser adicionalmente usados em alguns casos, e nesse caso, o bloco de predição é um bloco derivado ou particionado da unidade de codificação e pode ser uma unidade de predição de amostra. No presente documento, a unidade de predição pode ser dividida em sub-blocos. O transformador pode ser dividido a partir da unidade de codificação de acordo com a estrutura de árvore quadrática e pode ser uma unidade que deriva um coeficiente de transformada ou uma unidade que deriva um sinal residual do coeficiente de transformada.[060] A prediction unit and a transformer can be additionally used in some cases, in which case the prediction block is a derived or partitioned block from the coding unit and can be a sample prediction unit. In the present document, the prediction unit can be divided into sub-blocks. The transformer can be divided from the coding unit according to the quadratic tree structure and can be a unit that derives a transform coefficient or a unit that derives a residual signal from the transform coefficient.
[061] O decodificador de entropia 210 pode analisar o fluxo de bits para emitir informações necessárias para reconstrução de vídeo ou reconstrução de figuração. Por exemplo, o decodificador de entropia 210 pode decodificar informações no fluxo de bits com base em um método de codificação como codificação de Golomb exponencial, CAVLC, CABAC, ou similares, e pode emitir um valor de um elemento de sintaxe necessário para reconstrução de vídeo e um valor quantizado de um coeficiente de transformada referente a um residual.[061] The entropy decoder 210 can analyze the bit stream to output information necessary for video reconstruction or figuration reconstruction. For example, the entropy decoder 210 can decode information in the bit stream based on an encoding method such as exponential Golomb encoding, CAVLC, CABAC, or the like, and can output a value of a syntax element needed for video reconstruction and a quantized value of a transform coefficient referring to a residual.
[062] De modo mais específico, um método de decodificação de entropia CABAC pode receber um bin correspondente a cada elemento de sintaxe em um fluxo de bits, determinar um modelo de contexto usando informações de elemento de sintaxe de destino de decodificação e informações de decodificação de blocos de destino vizinhos e de decodificação ou informações de um símbolo/bin decodificado em uma etapa anterior, prever a probabilidade de geração de bin de acordo com o modelo de contexto determinado e executar a decodificação aritmética do bin para gerar um símbolo correspondente a cada valor de elemento de sintaxe. No presente documento, o método de decodificação de entropia CABAC pode atualizar o modelo de contexto usando informações de um símbolo/bin decodificado para um modelo de contexto do próximo símbolo/bin após a determinação do modelo de contexto.[062] More specifically, a CABAC entropy decoding method can receive a bin corresponding to each syntax element in a bit stream, determine a context model using decoding target syntax element information and decoding information of neighboring destination blocks and decoding or information from a symbol / bin decoded in a previous step, predict the probability of bin generation according to the given context model and perform arithmetic decoding of the bin to generate a corresponding symbol for each syntax element value. In this document, the CABAC entropy decoding method can update the context model using information from a decoded symbol / bin to a context model of the next symbol / bin after determining the context model.
[063] As informações sobre predição entre as informações decodificadas no decodificador de entropia 210 podem ser fornecidas ao preditor 250 e valores residuais, ou seja, coeficientes de transformada quantizados, em que a decodificação de entropia foi realizada pelo decodificador de entropia 210 podem ser inseridos no rearranjador 221.[063] Prediction information between the information decoded in the entropy decoder 210 can be provided to the predictor 250 and residual values, that is, quantized transform coefficients, in which the entropy decoding was performed by the entropy decoder 210 can be inserted in the 221 rearrangement.
[064] O rearranjador 221 pode rearranjar os coeficientes de transformada quantizados em uma forma de bloco bidimensional. O rearranjador 221 pode executar o rearranjo correspondente à varredura de correspondendo a realizada pelo aparelho de codificação. Embora o rearranjador 221 seja descrito como um componente separado, o rearranjador 221 pode fazer parte do desquantizador 222.[064] Rearranger 221 can rearrange the quantized transform coefficients into a two-dimensional block shape. The rearranger 221 can perform the rearrangement corresponding to the scan corresponding to that performed by the coding apparatus. Although rearranger 221 is described as a separate component, rearranger 221 can be part of deconverter 222.
[065] O desquantizador 222 pode desquantizar os coeficientes de transformada quantizados com base em um parâmetro de (des)quantização para emitir um coeficiente de transformada. Nesse caso, as informações para derivar um parâmetro de quantização podem ser sinalizadas a partir do aparelho de codificação.[065] The decantant 222 can decantize the quantized transform coefficients based on a (de) quantization parameter to emit a transform coefficient. In this case, the information to derive a quantization parameter can be signaled from the coding device.
[066] A transformada inversa 223 pode transformar inversamente os coeficientes de transformada para derivar amostras residuais.[066] Inverse transform 223 can inverse transform transform coefficients to derive residual samples.
[067] O preditor 230 pode executar a predição em um bloco atual, e pode gerar um bloco previsto incluindo amostras de predição do bloco atual. Uma unidade de predição executada no preditor 230 pode ser um bloco de codificação ou pode ser um bloco de transformada ou pode ser um bloco de predição.[067] Predictor 230 can perform prediction on a current block, and can generate a predicted block including prediction samples from the current block. A prediction unit performed on predictor 230 can be a coding block or it can be a transform block or it can be a prediction block.
[068] O preditor 230 pode determinar se deve aplicar intrapredição ou interpredição com base em informações sobre uma predição. Nesse caso, uma unidade para determinar qual será usada entre a intrapredição e a interpredição pode ser diferente de uma unidade para gerar uma amostra de predição. Além disso, uma unidade para gerar a amostra de predição também pode ser diferente na interpredição e na intrapredição. Por exemplo, qual será aplicada entre a interpredição e a intrapredição pode ser determinada em unidade de CU. Ademais, por exemplo, na interpredição, a amostra de predição pode ser gerada determinando-se o modo de predição em unidade de PU, e na intrapredição, a amostra de predição pode ser gerada em unidade de TU determinando-se o modo de predição em unidade de PU.[068] Predictor 230 can determine whether to apply intraprediction or interpredition based on information about a prediction. In this case, a unit to determine which will be used between intraprediction and interpredition can be different from a unit to generate a prediction sample. In addition, a unit for generating the prediction sample can also be different in interpretation and intraprediction. For example, which will be applied between interpretation and intraprediction can be determined in CU units. Furthermore, for example, in the interpretation, the prediction sample can be generated by determining the prediction mode in PU unit, and in intraprediction, the prediction sample can be generated in TU unit by determining the prediction mode in PU unit.
[069] No caso da intrapredição, o preditor 230 pode derivar uma amostra de predição de um bloco atual com base em uma amostra de referência vizinha em uma figuração atual. O preditor 230 pode derivar a amostra de predição do bloco atual aplicando-se um modo direcional ou um modo não direcional com base na amostra de referência vizinha do bloco atual. Nesse caso, um modo de predição que será aplicado ao bloco atual pode ser determinado usando um modo de intrapredição de um bloco vizinho.[069] In the case of intraprediction, predictor 230 can derive a prediction sample from a current block based on a neighboring reference sample in a current figuration. Predictor 230 can derive the prediction sample from the current block by applying a directional mode or a non-directional mode based on the neighboring reference sample of the current block. In this case, a prediction mode that will be applied to the current block can be determined using an intraprediction mode of a neighboring block.
[070] No caso de interpredição, o preditor 230 pode derivar uma amostra de predição de um bloco atual com base em uma amostra especificada em uma figuração de referência de acordo com um vetor de movimento. O preditor 230 pode derivar a amostra de predição do bloco atual usando um dentre o modo de omissão, o modo de mesclagem e o modo MVP. No presente documento, as informações de movimento necessárias para interpredição do bloco atual fornecidas pelo aparelho de codificação de vídeo, por exemplo, um vetor de movimento e informações sobre um índice de figuração de referência podem ser adquiridas ou derivadas com base nas informações sobre predição.[070] In the case of interpretation, predictor 230 can derive a prediction sample from a current block based on a sample specified in a reference figure according to a motion vector. Predictor 230 can derive the prediction sample from the current block using one of the default mode, blending mode and MVP mode. In this document, the movement information necessary for interpreting the current block provided by the video coding apparatus, for example, a motion vector and information about a reference figure index can be acquired or derived based on the prediction information.
[071] No modo de omissão e no modo de mesclagem, as informações de movimento de um bloco vizinho podem ser usadas como informações de movimento do bloco atual. No presente documento, o bloco vizinho pode incluir um bloco vizinho espacial e um bloco vizinho temporal.[071] In skip mode and merge mode, the movement information of a neighboring block can be used as movement information for the current block. In the present document, the neighboring block can include a spatial neighboring block and a temporal neighboring block.
[072] O preditor 230 pode construir uma lista de candidatos à mesclagem usando informações de movimento de blocos vizinhos disponíveis e usar informações indicadas por um índice de mesclagem sobre a lista de candidatos à mesclagem como um vetor de movimento do bloco atual. O índice de mesclagem pode ser sinalizado pelo aparelho de codificação. As informações de movimento podem incluir um vetor de movimento e uma figuração de referência. No modo de omissão e no modo de mesclagem, uma figuração ordenada primeiramente na lista de figurações de referência pode ser usada como uma figuração de referência, quando informações de movimento de um bloco vizinho temporal for usado.[072] Predictor 230 can build a merge candidate list using motion information from available neighboring blocks and use information indicated by a merge index on the merge candidate list as a motion vector for the current block. The merge index can be signaled by the coding device. Motion information can include a motion vector and a reference figure. In default mode and in blend mode, a figuration ordered first in the list of reference figurations can be used as a reference figuration, when movement information from a neighboring temporal block is used.
[073] No caso do modo de omissão, uma diferença (residual) entre uma amostra de predição e uma amostra original não é transmitida, distinguida do modo de mesclagem.[073] In the case of the omission mode, a (residual) difference between a prediction sample and an original sample is not transmitted, distinguished from the blending mode.
[074] No caso do modo MVP, o vetor de movimento do bloco atual pode ser derivado usando um vetor de movimento de um bloco vizinho como um preditor de vetor de movimento. No presente documento, o bloco vizinho pode incluir um bloco vizinho espacial e um bloco vizinho temporal.[074] In the case of MVP mode, the motion vector of the current block can be derived using a motion vector from a neighboring block as a motion vector predictor. In the present document, the neighboring block can include a spatial neighboring block and a temporal neighboring block.
[075] Quando o modo de mesclagem for aplicado, por exemplo, uma lista de candidatos à mesclagem pode ser gerada usando um vetor de movimento de um bloco vizinho espacial reconstruído e/ou um vetor de movimento correspondente a um bloco Col que é um bloco vizinho temporal. Um vetor de movimento de um bloco de candidatos selecionado dentre a lista de candidatos à mesclagem é usado como o vetor de movimento do bloco atual no modo de mesclagem. As informações supracitadas sobre predição podem incluir um índice de mesclagem indicando um bloco de candidatos que tem o melhor vetor de movimento selecionado dentre os blocos de candidatos incluídos na lista de candidatos à mesclagem. No presente documento, o preditor 230 pode derivar o vetor de movimento do bloco atual usando o Índice de mesclagem.[075] When blending mode is applied, for example, a list of candidates for blending can be generated using a motion vector from a reconstructed spatial neighboring block and / or a motion vector corresponding to a Col block which is a block temporal neighbor. A motion vector from a candidate block selected from the merge candidate list is used as the motion vector of the current block in the merge mode. The aforementioned prediction information may include a merge index indicating a candidate block that has the best motion vector selected from the candidate blocks included in the merge candidate list. In this document, predictor 230 can derive the motion vector from the current block using the Blending Index.
[076] Quando o modo MVP (Predição de vetor de Movimento) for aplicado como outro exemplo, uma lista de candidatos a preditor de vetor de movimento pode ser gerada usando um vetor de movimento de um bloco vizinho espacial reconstruído e/ou um vetor de movimento correspondente a um bloco Col que é um bloco vizinho temporal. Ou seja, o vetor de movimento do bloco vizinho espacial reconstruído e/ou o vetor de movimento correspondente ao bloco Col que é o bloco vizinho temporal pode ser usado como candidatos a vetor de movimento. As informações supracitadas sobre predição podem incluir um índice de vetor de movimento de predição indicando o melhor vetor de movimento selecionado dentre candidatos a vetor de movimento incluídos na lista. No presente documento, o preditor 330 pode selecionar um vetor de movimento de predição do bloco atual a partir dos candidatos a vetor de movimento incluídos na lista de candidatos a vetor de movimento usando o índice de vetor de movimento. O preditor do aparelho de codificação pode obter uma diferença de vetor de movimento (MVD) entre o vetor de movimento do bloco atual e um preditor de vetor de movimento, codificar a MVD e emitir a MVD codificada sob a forma de um fluxo de bits. Ou seja, a MVD pode ser obtida pela subtração do preditor de vetor de movimento do vetor de movimento do bloco atual. No presente documento, o preditor 230 pode adquirir um vetor de movimento incluído nas informações sobre predição e derivar o vetor de movimento do bloco atual pela soma da diferença de vetor de movimento ao preditor de vetor de movimento. Além disso, o preditor pode obter ou derivar um índice de figuração de referência indicando uma figuração de referência a partir das informações supracitadas sobre predição.[076] When the MVP (Motion Vector Prediction) mode is applied as another example, a list of candidate motion vector predictors can be generated using a motion vector from a reconstructed neighboring space block and / or a motion vector. movement corresponding to a Col block which is a temporal neighbor block. That is, the motion vector of the reconstructed spatial neighbor block and / or the motion vector corresponding to the Col block which is the temporal neighbor block can be used as candidates for motion vector. The aforementioned information on prediction can include a prediction motion vector index indicating the best motion vector selected from among the motion vector candidates included in the list. In the present document, predictor 330 can select a prediction motion vector from the current block from the motion vector candidates included in the motion vector candidate list using the motion vector index. The coding device predictor can obtain a motion vector difference (MVD) between the motion vector of the current block and a motion vector predictor, encode the MVD and output the encoded MVD in the form of a bit stream. That is, the MVD can be obtained by subtracting the motion vector predictor from the motion vector of the current block. In the present document, the predictor 230 can acquire a motion vector included in the prediction information and derive the motion vector from the current block by adding the difference of motion vector to the motion vector predictor. In addition, the predictor can obtain or derive a reference figure index indicating a reference figure from the aforementioned prediction information.
[077] O adicionador 240 pode somar uma amostra residual a uma amostra de predição para reconstruir um bloco atual ou uma figuração atual. O adicionador 240 pode reconstruir a figuração atual pela soma da amostra residual à amostra de predição em unidades de um bloco. Quando o modo de omissão for aplicado, um residual não é transmitido e, dessa forma, a amostra de predição pode se tornar uma amostra reconstruída. Embora o adicionador 240 seja descrito como um componente separado, o adicionador 240 pode fazer parte do preditor 230. Entretanto, o adicionador 240 pode ser chamado de um reconstrutor ou gerador de bloco reconstruído.[077] Adder 240 can add a residual sample to a prediction sample to reconstruct a current block or a current figuration. Adder 240 can reconstruct the current figure by adding the residual sample to the prediction sample in units of a block. When the default mode is applied, a residual is not transmitted and, thus, the prediction sample can become a reconstructed sample. Although adder 240 is described as a separate component, adder 240 can be part of predictor 230. However, adder 240 can be called a reconstructed or reconstructed block generator.
[078] O filtto 250 pode aplicar filttagem de desbloqueio, deslocamento adaptativo à amostra e/ou ALF à figuração reconstruída. No presente documento, o deslocamento adaptativo à amostra pode ser aplicado em unidades de uma amostra após a filttagem de desbloqueio. O ALF pode ser aplicado após a filtragem de desbloqueio e/ou aplicação de deslocamento adaptativo à amostra.[078] Filtto 250 can apply unlocking filtering, adaptive displacement to the sample and / or ALF to the reconstructed figuration. In this document, the adaptive displacement to the sample can be applied in units of a sample after unlocking filtering. ALF can be applied after unlocking filtering and / or applying adaptive displacement to the sample.
[079] A memória 260 pode armazenar uma figuração reconstruída (figuração decodificada) ou informações necessárias para a decodificação. No presente documento, a figuração reconstruída pode ser a figuração reconstruída filtrada pelo filtro 250. Por exemplo, a memória 260 pode armazenar figurações usadas para interpredição. No presente documento, as figurações usadas para interpredição podem ser designadas de acordo com uma figuração de referência definida ou uma lista de figurações de referência. Uma figuração reconstruída pode ser usada como uma figuração de referência para outras figurações. A memória 360 pode emitir figurações reconstruídas em uma ordem de saída.[079] Memory 260 can store a reconstructed picture (decoded picture) or information needed for decoding. In this document, the reconstructed figure may be the reconstructed figure filtered by filter 250. For example, memory 260 may store figures used for interpretation. In this document, the figures used for interpretation may be designated according to a defined reference figure or a list of reference figures. A reconstructed figure can be used as a reference figure for other figures. The 360 memory can output reconstructed figures in an output order.
[080] Entretanto, conforme descrito anteriormente, em realizar uma codificação de vídeo, realiza-se uma predição para aperfeiçoar a eficiência de compactação. Através disso, um bloco predito incluindo amostras de predição para um bloco atual como um bloco a ser codificado (isto é, um bloco alvo de codificação) pode ser gerado. No presente documento, o bloco predito inclui amostras de predição em um domínio espacial (ou domínio de pixel). O bloco predito é derivado da mesma maneira em um aparelho de codificação e um aparelho de decodificação, e o aparelho de codificação pode sinalizar informações (informações residuais) em residual entre o bloco original e o bloco predito, ao invés de um valor de amostra original de um bloco original, ao aparelho de decodificação, aumentando, assim, a eficiência de codificação de imagem. O aparelho de decodificação pode derivar um bloco residual incluindo amostras residuais com base em informações residuais, adicionar o bloco residual e o bloco predito para gerar blocos reconstruídos incluindo amostras reconstruídas, e gerar uma figuração reconstruída incluindo o bloco reconstruídos.[080] However, as previously described, in performing a video encoding, a prediction is made to improve the compression efficiency. Through this, a predicted block including prediction samples for a current block as a block to be coded (that is, a target coding block) can be generated. In this document, the predicted block includes prediction samples in a spatial domain (or pixel domain). The predicted block is derived in the same way in a coding device and a decoding device, and the coding device can signal residual information (residual information) between the original block and the predicted block, instead of an original sample value. from an original block to the decoding device, thus increasing the image coding efficiency. The decoding apparatus can derive a residual block including residual samples based on residual information, add the residual block and the predicted block to generate reconstructed blocks including reconstructed samples, and generate a reconstructed figure including the reconstructed block.
[081] As informações residuais podem ser geradas através de um procedimento de transformada e quantização. Por exemplo, o aparelho de codificação pode derivar um bloco residual entre o bloco original e o bloco predito, realizar um procedimento de transformada em amostras residuais (arranjo de amostras residuais) incluídas no bloco residual para derivar coeficientes de transformada, realizar um procedimento de quantização nos coeficientes de transformada para derivar coeficientes de transformada quantizados, e sinalizar informações residuais relacionadas ao aparelho de decodificação (através de um fluxo de bits). No presente documento, as informações residuais podem incluir informações de valor dos coeficientes de transformada quantizados, informações de local, uma técnica de transformada, um núcleo de transformada, um parâmetro de quantização, e similares. O aparelho de decodificação pode realizar um procedimento de desquantização/transformada inversa com base nas informações residuais e derivar amostras residuais (ou blocos residuais). O aparelho de decodificação pode gerar uma figuração reconstruída com base no bloco predito e no bloco residual. Da mesma forma, para referência à interpredição de uma figuração posteriormente, o aparelho de codificação também pode desquantizar/transformar inversamente os coeficientes de transformada quantizados para derivar um bloco residual e gerar uma figuração reconstruída com base na mesma.[081] Residual information can be generated through a transformation and quantization procedure. For example, the coding apparatus can derive a residual block between the original block and the predicted block, perform a transformation procedure on residual samples (arrangement of residual samples) included in the residual block to derive transform coefficients, perform a quantization procedure in the transform coefficients to derive quantized transform coefficients, and signal residual information related to the decoding device (through a bit stream). In this document, residual information may include value information from the quantized transform coefficients, location information, a transform technique, a transform core, a quantization parameter, and the like. The decoding device can perform a reverse quantization / transform procedure based on residual information and derive residual samples (or residual blocks). The decoding device can generate a reconstructed figure based on the predicted block and the residual block. Likewise, for reference to the interpretation of a figuration later, the coding apparatus can also decantify / inversely transform the quantized transform coefficients to derive a residual block and generate a reconstructed figuration based on it.
[082] A Figura 3 ilustra de modo esquemático uma técnica de transformada múltipla de acordo com a presente revelação.[082] Figure 3 schematically illustrates a multiple transform technique according to the present disclosure.
[083] Referindo-se à Figura 3, um transformador pode corresponder ao transformador no aparelho de codificação supramencionado da Figura 1, e um transformador inverso pode corresponder ao transformador inverso supramencionado no aparelho de codificação da Figura 1 ou no transformador inverso supramencionado no aparelho de decodificação da Figura 2.[083] Referring to Figure 3, a transformer can correspond to the transformer on the aforementioned coding apparatus of Figure 1, and a reverse transformer can correspond to the aforementioned reverse transformer on the coding apparatus of Figure 1 or on the aforementioned reverse transformer on the decoding of Figure 2.
[084] O transformador pode derivar coeficientes de transformada (primários) realizando-se uma transformada primária com base em amostras residuais (arranjo de amostra residual) no bloco residual (S310). No presente documento, a transformada primária pode incluir um conjunto de transformada múltipla (MTS). O conjunto de transformada múltipla também pode ser referido como uma transformada principal múltipla adaptativa em alguns casos.[084] The transformer can derive transform coefficients (primary) by performing a primary transform based on residual samples (residual sample arrangement) in the residual block (S310). In this document, the primary transform can include a multiple transform set (MTS). The multiple transform set can also be referred to as an adaptive multiple main transform in some cases.
[085] A transformada principal múltipla adaptativa pode representar um método para realizar uma transformada usando adicionalmente uma Transformada de Cosseno Discreta (DCT) tipo 2, uma Transformada de Seno Discreta (DST) tipo 7, um DCT tipo 8, e/ou um DST tipo 1. Ou seja, a transformada principal múltipla pode representar um método de transformada para transformar um sinal residual (ou um bloco residual) no domínio espacial nos coeficientes de transformada (ou coeficientes de transformada primária) no domínio de frequência com base em uma pluralidade de núcleos de transformada que são selecionados a partir do DCT tipo 2, DST tipo 7, DCT tipo 8, e DST tipo 1. No presente documento, os coeficientes de transformada primária podem ser referidos como coeficientes de transformada temporários a partir do ponto de vista do transformador.[085] The adaptive multiple main transform can represent a method to perform a transform using additionally a Discrete Cosine Transform (DCT) type 2, a Discrete Sine Transform (DST) type 7, a DCT type 8, and / or an STD type 1. That is, the multiple principal transform can represent a transform method to transform a residual signal (or a residual block) in the spatial domain into transform coefficients (or primary transform coefficients) in the frequency domain based on a plurality of transform cores that are selected from DCT type 2, DST type 7, DCT type 8, and DST type 1. In this document, primary transform coefficients can be referred to as temporary transform coefficients from the point of view the transformer.
[086] Ou seja, se o método de transformada existente for aplicado, a transformada do domínio espacial ao domínio de frequência para o sinal residual (ou o bloco residual) pode ser aplicada com base no DCT tipo 2 para gerar os coeficientes de transformada. Por outro lado, se a transformada principal múltipla adaptativa for aplicada, a transformada do domínio espacial ao domínio de frequência para o sinal residual (ou o bloco residual) pode ser aplicada com base no DCT tipo 2, DST tipo 7, DCT tipo 8, e/ou DST tipo 1 ou similares, para gerar os coeficientes de transformada (ou os coeficientes de transformada primária). No presente documento, DCT tipo 2, DST tipo 7, DCT tipo 8, DST tipo 1, e similares, podem ser referidos como um tipo de transformada, um núcleo de transformada, ou um principal de transformada.[086] That is, if the existing transform method is applied, the transformation from the spatial domain to the frequency domain for the residual signal (or the residual block) can be applied based on the type 2 DCT to generate the transform coefficients. On the other hand, if the adaptive multiple main transform is applied, the transform from the spatial domain to the frequency domain for the residual signal (or the residual block) can be applied based on DCT type 2, DST type 7, DCT type 8, and / or STD type 1 or similar, to generate the transform coefficients (or the primary transform coefficients). In this document, DCT type 2, DST type 7, DCT type 8, DST type 1, and the like, can be referred to as a transform type, a transform core, or a transform main.
[087] A título de referência, os tipos de transformada DCT/DST podem ser definidos com base em funções de base, e as funções de base podem ser representadas conforme mostrado na tabela a seguir.[087] As a reference, the types of DCT / DST transform can be defined based on basic functions, and the basic functions can be represented as shown in the following table.
Tabela 1 Tipo de 2 T, 0, 1...,N-1 Transformada Função base 7/0): 1,70, 1,..../ ; 2 ni Rj+D) T(D= ev: fon (E2G2D DCT-II 2 j=0 onde ww, = js = 1 iz0 = ? 2 T(D=0""" o * cos (==), DCT-V 2 2 onde ww, = is i=0,, = (é j=0 1 i20 1 jz*0 4 Tn: (2i+1): (2j+1) DCT-VII = l7— tos o TD = Gg1 aN+2 a dis Tm (+11): (+19) pstl [mo = sn) . 4 mn (2 +11): (+11) DSR-VII = ”L—— aa st = FTF sen( 2N+1 )Table 1 Type of 2 T, 0, 1 ..., N-1 Transformed Base function 7/0): 1.70, 1, .... /; 2 ni Rj + D) T (D = ev: fon (E2G2D DCT-II 2 j = 0 where ww, = js = 1 iz0 =? 2 T (D = 0 "" "o * cos (==), DCT -V 2 2 where ww, = is i = 0 ,, = (is j = 0 1 i20 1 jz * 0 4 Tn: (2i + 1): (2j + 1) DCT-VII = l7— all TD = Gg1 aN + 2 a dis Tm (+11): (+19) pstl [mo = sn) .4 mn (2 +11): (+11) DSR-VII = ”L—— aa st = FTF sen (2N +1)
[088] Se uma transformada principal múltipla adaptativa for realizada, um núcleo de transformada vertical e um núcleo de transformada horizontal para um bloco alvo dentre os núcleos de transformada podem ser selecionados, e uma transformada vertical para o bloco alvo pode ser realizada com base no núcleo de transformada vertical, e uma transformada horizontal para o bloco alvo pode ser realizada com base no núcleo de transformada horizontal. No presente documento, a transformada horizontal pode representar uma transformada para componentes horizontais do bloco alvo, e a transformada vertical pode representar uma transformada para componentes verticais do bloco alvo. O núcleo de transformada vertical/núcleo de transformada horizontal pode ser adaptativamente determinado com base em um modo de predição do bloco alvo (CU ou sub-bloco) que abrange o bloco residual e/ou um índice de transformada indicando um subconjunto de transformada.[088] If an adaptive multiple main transform is performed, a vertical transform core and a horizontal transform core for a target block from among the transform cores can be selected, and a vertical transform for the target block can be performed based on the vertical transform core, and a horizontal transform for the target block can be performed based on the horizontal transform core. In this document, the horizontal transform can represent a transform for horizontal components of the target block, and the vertical transform can represent a transform for vertical components of the target block. The vertical transform core / horizontal transform core can be adaptively determined based on a target block prediction mode (CU or sub-block) that covers the residual block and / or a transform index indicating a transform subset.
[089] O transformador pode derivar coeficientes de transformada (secundários) realizando-se uma transformada secundária com base nos coeficientes de transformada (primários) (S320). Se a transformada primária for a transformada a partir do domínio espacial ao domínio de frequência, a transformada secundária pode ser considerada como a transformada a partir do domínio de frequência. À transformada secundária pode incluir uma transformada não separável. Nesse caso, a transformada secundária pode ser referida como uma transformada secundária não separável (NSST) ou uma transformada secundária não separável dependente de modo (MDNSST). A transformada secundária não separável pode representar a transformada que gera coeficientes de transformada (ou coeficientes de transformada secundários) para o sinal residual transformando-se secundariamente os coeficientes de transformada (primários) derivados através da transformada primária com base em uma matriz de transformada não separável. No presente documento, a transformada pode ser aplicada de uma vez com base na matriz de transformada não separável sem aplicar separadamente a transformada vertical e a transformada horizontal (ou aplicar independentemente a transformada horizontal e vertical) aos coeficientes de transformada (primários). Ou seja, a transformada secundária não separável pode representar o método de transformada que gera os coeficientes de transformada (ou os coeficientes de transformada secundários) transformando-se o componente vertical e o componente horizontal dos coeficientes de transformada (primários) juntos sem separá-los com base na matriz de transformada não separável. A transformada secundária não separável pode ser aplicada a uma área superior esquerda de um bloco composto por coeficientes de transformada (primários) (doravante, referidos como um bloco de coeficiente de transformada). Por exemplo, se tanto a largura (W) como o comprimento (H) do bloco de coeficiente de transformada forem 8 ou mais, uma transformada secundária não separável 8x8 pode ser aplicada à área 8x8 superior esquerda do bloco de coeficiente de transformada. Além disso, se tanto a largura (W) como a altura (H) do bloco de coeficiente de transformada forem 4 ou mais e a largura (W) ou a altura (H) do bloco de coeficiente de transformada for menor que 8, uma transformada secundária não separável 4x4 pode ser aplicada a uma área superior esquerda min (8, W) x min (8, H) do bloco de coeficiente de transformada. No entanto, uma modalidade exemplificadora não se limita a isso, e, por exemplo, se somente uma condição na qual a largura (W) ou a altura (H) do bloco de coeficiente de transformada é menor que 8 for satisfeita, a transformada secundária não separável 4x4 também pode ser aplicada à área superior esquerda min (8, W) x min (8, H) do bloco de coeficiente de transformada.[089] The transformer can derive transform coefficients (secondary) by performing a secondary transform based on the transform coefficients (primary) (S320). If the primary transform is transformed from the spatial domain to the frequency domain, the secondary transform can be considered as the transform from the frequency domain. The secondary transform can include a non-separable transform. In that case, the secondary transform can be referred to as a non-separable secondary transform (NSST) or a mode-dependent non-separable secondary transform (MDNSST). The non-separable secondary transform can represent the transform that generates transform coefficients (or secondary transform coefficients) for the residual signal by secondarily transforming the (primary) transform coefficients derived through the primary transform based on a non-separable transform matrix. . In this document, the transform can be applied at once based on the non-separable transform matrix without separately applying the vertical transform and the horizontal transform (or applying the horizontal and vertical transform independently) to the transform coefficients (primary). That is, the non-separable secondary transform can represent the transform method that generates the transform coefficients (or the secondary transform coefficients) by transforming the vertical component and the horizontal component of the transform coefficients (primary) together without separating them. based on the non-separable transform matrix. The non-separable secondary transform can be applied to an upper left area of a block composed of transform coefficients (primary) (hereinafter, referred to as a transform coefficient block). For example, if both the width (W) and the length (H) of the transform coefficient block are 8 or more, a non-separable secondary transform 8x8 can be applied to the upper left 8x8 area of the transform coefficient block. In addition, if both the width (W) and the height (H) of the transform coefficient block are 4 or more and the width (W) or height (H) of the transform coefficient block is less than 8, a non-separable secondary transform 4x4 can be applied to an upper left area min (8, W) x min (8, H) of the transform coefficient block. However, an exemplary modality is not limited to this, and, for example, if only one condition in which the width (W) or height (H) of the transform coefficient block is less than 8 is satisfied, the secondary transform non-separable 4x4 can also be applied to the upper left area min (8, W) x min (8, H) of the transform coefficient block.
[090] De modo específico, por exemplo, quando um bloco de entrada 4x4 for usado, NSST pode ser realizado as follows.[090] Specifically, for example, when a 4x4 input block is used, NSST can be performed as follows.
[091] O bloco de entrada 4x4 X pode ser representado da seguinte forma. [Equação 1] Xoo Xo1 Xo2 Xo3 X= X1o Xn X12 X13 X20 X21 X22 X23 X30 X31 X32 X33[091] The 4x4 X input block can be represented as follows. [Equation 1] Xoo Xo1 Xo2 Xo3 X = X1o Xn X12 X13 X20 X21 X22 X23 X30 X31 X32 X33
[092] Quando X for expresso em uma forma vetorial, vetor X pode ser representado da seguinte forma. [Equação 2] X=[Xoo Xo1 Xor Xoz Xio Xu Xiz Xi3z Xoo Xor Xoz Xog Xão Xar Xaão Xaal![092] When X is expressed in a vector form, vector X can be represented as follows. [Equation 2] X = [Xoo Xo1 Xor Xoz Xio Xu Xiz Xi3z Xoo Xor Xoz Xog Xão Xar Xaão Xaal!
[093] Nesse caso, NSST pode ser calculado da seguinte forma.[093] In this case, NSST can be calculated as follows.
[Equação 3] F=T.X[Equation 3] F = T.X
[094] No presente documento, F denota um coeficiente de transformada vector e T denota uma matriz de transformada (não separável) 16x16.[094] In this document, F denotes a vector transform coefficient and T denotes a 16x16 (non-separable) transform matrix.
[095] Um vetor de coeficiente de transformada 16x1 É pode ser derivado através da Equação 3, e Ê pode ser reorganizado como blocos 4x4 através de uma ordem de varredura (horizontal, vertical, diagonal, etc.). No entanto, o cálculo descrito anteriormente é um exemplo e uma transformada de Hypercube-Givens (HyGT) ou similares, pode ser usada para o cálculo da transformada secundária para reduzir a complexidade de cálculo de NSST.[095] A vector of transform coefficient 16x1 É can be derived through Equation 3, and Ê can be reorganized as 4x4 blocks through a scanning order (horizontal, vertical, diagonal, etc.). However, the calculation described above is an example and a Hypercube-Givens transform (HyGT) or similar, can be used for the calculation of the secondary transform to reduce the complexity of NSST calculation.
[096] Entretanto, em NSST, um núcleo de transformada (ou número de transformada, tipo de transformada) pode ser selecionado dependentemente de modo. No presente documento, o modo pode incluir um modo de intrapredição e/ou um modo de interpredição.[096] However, in NSST, a transform core (or transform number, type of transform) can be selected depending on mode. In this document, the method may include an intraprediction mode and / or an interpretive mode.
[097] Conforme descrito anteriormente, NSST pode ser realizado com base na transformada 8x8 ou na transformada 4x4 determinada com base na largura (W) e na altura (H) do bloco de coeficiente de transformada. Ou seja, NSST pode ser realizado com base em um tamanho de sub-bloco 8x8 ou um tamanho de sub-bloco 4x4. Por exemplo, a fim de selecionar o núcleo de transformada baseado em modo, conjuntos de três núcleos de NSST podem ser configurados para NSST para tamanho de sub-bloco 8x8 e tamanho de sub-bloco 4x4. Ou seja, 35 conjuntos de transformada podem ser configurados para o tamanho de sub-bloco 8x8, e 35 conjuntos de transformada podem ser configurados para o tamanho de sub-bloco 4x4. Nesse caso, os 35 conjuntos de transformada para o tamanho de sub-bloco 8x8 podem incluir 3 núcleos de transformada 8x8, respectivamente, e, nesse caso, os 35 conjuntos de transformada para o tamanho de sub-bloco 4x4 podem incluir 3 núcleos de transformada 4x4. No entanto, o tamanho do sub-bloco de transformada, o número de conjuntos, e o número de núcleos de transformada no conjunto consistem em um exemplo e um tamanho diferente de 8x8 ou 4x4 pode ser usado, ou n conjuntos podem ser configurados e k núcleos de transformada podem ser incluídos em cada conjunto.[097] As previously described, NSST can be performed based on the 8x8 transform or the 4x4 transform determined based on the width (W) and height (H) of the transform coefficient block. That is, NSST can be performed based on an 8x8 sub-block size or a 4x4 sub-block size. For example, in order to select the mode-based transform core, sets of three NSST cores can be configured for NSST for 8x8 sub-block size and 4x4 sub-block size. That is, 35 transform sets can be configured for the 8x8 subblock size, and 35 transform sets can be configured for the 4x4 subblock size. In that case, the 35 transform sets for the 8x8 sub-block size can include 3 transform cores 8x8, respectively, and in this case, the 35 transform sets for the 4x4 sub-block size can include 3 transform cores. 4x4. However, the size of the transform sub-block, the number of sets, and the number of transform cores in the set consist of an example and a different size of 8x8 or 4x4 can be used, or n sets can be configured and k cores of transform can be included in each set.
[098] O conjunto de transformada também pode ser referido como um conjunto de NSST, e o núcleo de transformada no conjunto de NSST pode ser referido como um núcleo de NSST. A seleção de um específico dentre os conjuntos de transformada pode ser realizada, por exemplo, com base em um modo de intrapredição de um bloco alvo (CU ou sub-bloco).[098] The transform set can also be referred to as an NSST set, and the transform core in the NSST set can be referred to as an NSST core. The selection of a specific one among the transform sets can be carried out, for example, based on an intraprediction mode of a target block (CU or sub-block).
[099] Para uma referência, por exemplo, o modo de intrapredição pode incluir dois modos de intrapredição não direcional ou não angular e 65 modos de intrapredição direcionais ou angulares. Os modos de intrapredição não direcionais podem incluir um modo de intrapredição planar %0 e um modo de intrapredição de DC H1, e os modos de intrapredição direcionais podem incluir 65 modos de intrapredição H2 a 466. No entanto, esse é um exemplo e a presente revelação também pode ser aplicada mesmo quando o número de modos de intrapredição for diferente. Entretanto, o modo de intrapredição ft 67 pode ser usado, ainda, em alguns casos, e o modo de intrapredição * 67 pode representar um modo de modelo linear (LM).[099] For a reference, for example, the intraprediction mode can include two non-directional or non-angular intraprediction modes and 65 directional or angular intraprediction modes. Non-directional intraprediction modes can include a% 0 planar intraprediction mode and a DC H1 intraprediction mode, and directional intraprediction modes can include 65 H2 to 466 intraprediction modes. However, this is an example and the present disclosure can also be applied even when the number of intrapredict modes is different. However, the intraprediction mode ft 67 can still be used in some cases, and the intraprediction mode * 67 can represent a linear model (LM) mode.
[0100] A Figura 4 mostra de modo exemplificador modos intradirecionais de 65 direções de predição.[0100] Figure 4 shows, in an exemplary way, intradirectional modes of 65 prediction directions.
[0101] Referindo-se à Figura 4, os modos de intrapredição tendo direcionalidade horizontal e modos de intrapredição tendo direcionalidade vertical podem ser divididos com base no modo de intrapredição f34 tendo uma direção de predição diagonal superior esquerda. H e V na Figura 3 se referem à direcionalidade horizontal e à direcionalidade vertical, respectivamente, e os números -32 a 32 indicam o deslocamento de 1/32 unidades na posição de grade de amostra. Os modos de intrapredição ff2 a 433 têm direcionalidade horizontal, e os modos de intrapredição H34 a 66 têm direcionalidade vertical. O modo de intrapredição tX18 e o modo de intrapredição %50 representam um modo de intrapredição horizontal e um modo de intrapredição vertical, respectivamente. O modo de intrapredição t2 pode ser referido como um modo de intrapredição diagonal inferior esquerdo, o modo de intrapredição H34 pode ser referido como um modo de intrapredição diagonal superior esquerdo, e o modo de intrapredição 466 pode ser referido como um modo de intrapredição diagonal superior direito.[0101] Referring to Figure 4, intraprediction modes having horizontal directionality and intraprediction modes having vertical directionality can be divided based on intraprediction mode f34 having an upper left diagonal prediction direction. H and V in Figure 3 refer to horizontal directionality and vertical directionality, respectively, and the numbers -32 to 32 indicate the displacement of 1/32 units in the sample grid position. The intraprediction modes ff2 to 433 have horizontal directionality, and the intraprediction modes H34 to 66 have vertical directionality. The tX18 intraprediction mode and the% 50 intraprediction mode represent a horizontal intraprediction mode and a vertical intraprediction mode, respectively. The intraprediction mode t2 can be referred to as a lower left diagonal intraprediction mode, the H34 intraprediction mode can be referred to as an upper left diagonal intraprediction mode, and the 466 intraprediction mode can be referred to as an upper diagonal intraprediction mode right.
[0102] Nesse caso, o mapeamento entre os 35 conjuntos de transformada e os modos de intrapredição pode ser representado, por exemplo, conforme mostrado na tabela a seguir. Para referência, quando o modo de LM for aplicado a um bloco alvo, a transformada secundária não pode ser aplicada ao bloco alvo.[0102] In this case, the mapping between the 35 transform sets and the intrapredicting modes can be represented, for example, as shown in the following table. For reference, when the LM mode is applied to a target block, the secondary transform cannot be applied to the target block.
Tabela 2Table 2
ENTNONAOOOOOOORPEDOORDODODAZONORODONNCES [ira mass sa Jas[se[or [oo] 20] 0047] eaJ es [es [as 00 07 00 [29505 [se] so s4[55] 50/57 so Jss[co[er[e2[ 00 ex] osJesr cm [sono fsefss[sa[o[eo[20[ 20 [aro las[ee[es[ea erfeo robrol[rel ns [nais rel ol [e] 7 [0 [5 [e [5 12 vovo]ENTNONAOOOOOOORPEDOORDODODAZONORODONNCES [ira mass sa Jas [se [or [oo] 20] 0047] eaJ es [es [as 00 07 00 [29505 [se] so s4 [55] 50/57 so Jss [co [er [e2 [00 ex ] osJesr cm [sono fsefss [sa [o [eo [20 [20 [aro las [ee [es [ea erfeo robrol [rel ns [more rel ol [e] 7 [0 [5 [e [5 12 vovo]
[0103] Entretanto, quando for determinado que um conjunto específico é usado, um dentre os k núcleos de transformada no conjunto específico pode ser selecionado através de um índice de NSST. O aparelho de codificação pode derivar um índice de NSST indicando um núcleo de transformada específico com base em uma verificação de distorção de taxa (RD) e pode sinalizar o índice de NSST ao aparelho de decodificação. O aparelho de decodificação pode selecionar um dentre os k núcleos de transformada no conjunto específico com base no índice de NSST. Por exemplo, o valor de índice de NSST O pode incluir um primeiro núcleo de NSST, o valor de índice de NSST 1 pode indicar um segundo núcleo de NSST, e o valor de índice de NSST 2 pode indicar o terceiro núcleo de NSST. Alternativamente, o valor de índice de NSST O pode indicar que o primeiro NSST não é aplicado ao bloco alvo, e os valores de índice de NSST 1 a 3 podem indicar os três núcleos de transformada.[0103] However, when it is determined that a specific set is used, one of the k transform cores in the specific set can be selected using an NSST index. The encoding apparatus may derive an NSST index indicating a specific transform core based on a rate distortion (RD) check and may signal the NSST index to the decoding apparatus. The decoding device can select one of the k transform cores in the specific set based on the NSST index. For example, the NSST index value O can include a first NSST core, the NSST index value 1 can indicate a second NSST core, and the NSST index value 2 can indicate the third NSST core. Alternatively, the NSST index value O may indicate that the first NSST is not applied to the target block, and the NSST index values 1 to 3 may indicate the three transform cores.
[0104] Referindo-se de volta à Figura 3, o transformador pode realizar o NSST com base nos núcleos de transformada selecionados e obter coeficientes de transformada (secundários). Os coeficientes de transformada podem ser derivados como coeficientes de transformada quantizados através do quantizador conforme descrito anteriormente, e codificados e sinalizados ao aparelho de decodificação e entregues ao desquantizador/transformador inverso no aparelho de codificação.[0104] Referring back to Figure 3, the transformer can perform the NSST based on the selected transform cores and obtain transform coefficients (secondary). The transform coefficients can be derived as transform coefficients quantized through the quantizer as described above, and encoded and signaled to the decoding apparatus and delivered to the reverse decoder / transformer in the encoding apparatus.
[0105] Entretanto, quando a transformada secundária for omitida conforme descrito anteriormente, os coeficientes de transformada (primários), que são saídas da transformada (separável) primária, podem ser derivados como coeficientes de transformada quantizados através do quantizador conforme descrito anteriormente e podem ser codificados e sinalizados ao aparelho de decodificação e entregues ao desquantizador/transformador inverso no aparelho de codificação.[0105] However, when the secondary transform is omitted as described above, transform (primary) coefficients, which are output from the primary (separable) transform, can be derived as quantized transform coefficients through the quantizer as described above and can be encoded and signaled to the decoding device and delivered to the reverse decoder / transformer on the encoding device.
[0106] O transformador inverso pode realizar uma série de procedimentos em uma ordem reversa do procedimento realizado pelo transformador descrito anteriormente. O transformador inverso pode receber coeficientes de transformada (quantizados inversamente), realizar uma transformada (inversa) secundária para derivar coeficientes de transformada (primários) (S350), e realizar uma transformada (inversa) primária nos coeficientes de transformada (primários) para adquirir um bloco residual (amostras residuais, No presente documento, os coeficientes de transformada primária podem ser referidos como coeficientes de transformada modificados a partir do ponto de vista do transformador inverso. Conforme descrito anteriormente, o aparelho de codificação e o aparelho de decodificação podem gerar um bloco reconstruído com base no bloco residual e no bloco predito e gerar uma figuração reconstruída com base no bloco reconstruído.[0106] The reverse transformer can perform a series of procedures in a reverse order of the procedure performed by the transformer described above. The reverse transformer can receive transform coefficients (inversely quantized), perform a secondary (inverse) transform to derive transform (primary) coefficients (S350), and perform a primary (inverse) transform on the transform (primary) coefficients to acquire a residual block (residual samples, In this document, the primary transform coefficients can be referred to as transform transform coefficients from the point of view of the reverse transformer. As previously described, the coding apparatus and the decoding apparatus may generate a block reconstructed based on the residual block and the predicted block and generate a reconstructed figuration based on the reconstructed block.
[0107] Entretanto, conforme descrito anteriormente, quando a transformada (inversa) secundária for omitida, os coeficientes de transformada (desquantizados) podem ser recebidos e a transformada (separável) primária pode ser realizada nos mesmos para adquirir um bloco residual (amostras residuais). Conforme descrito anteriormente, o aparelho de codificação e o aparelho de decodificação podem gerar um bloco reconstruído com base no bloco residual e no bloco predito e gerar uma figuração reconstruída com base no bloco reconstruído.[0107] However, as previously described, when the secondary (inverse) transform is omitted, the transform coefficients (unquantified) can be received and the primary (separable) transform can be performed on them to acquire a residual block (residual samples) . As previously described, the coding apparatus and the decoding apparatus can generate a reconstructed block based on the residual block and the predicted block and generate a reconstructed figure based on the reconstructed block.
[0108] As Figuras 5A a 5C são diagramas para explicar uma transformada reduzida de acordo com uma modalidade exemplificadora da presente revelação.[0108] Figures 5A to 5C are diagrams to explain a reduced transform according to an exemplary embodiment of the present disclosure.
[0109] Conforme descrito anteriormente na Figura 3, na transformada secundária não separável (doravante referida como 'NSST'), dados de bloco dos coeficientes de transformada obtidos aplicando-se a transformada primária são divididos em blocos MxM, e, então, um NSST MºxM? pode ser realizado para cada bloco MxM. M pode ser, por exemplo, 4 ou 8, mas não se limita a isso.[0109] As previously described in Figure 3, in the non-separable secondary transform (hereinafter referred to as 'NSST'), block data of the transform coefficients obtained by applying the primary transform are divided into MxM blocks, and then an NSST MºxM? can be performed for each MxM block. M can be, for example, 4 or 8, but it is not limited to that.
[0110] NSST MºxM? também pode ser aplicado sob a forma de um produto matricial, mas a Transformada de Hypercube-Givens (HyGT) descrita na Figura 3 pode ser usada para calcular o NSST a fim de diminuir uma quantidade computacional e uma capacidade de memória exigida. HyGT é uma transformada ortogonal, e HyGT pode incluir uma rotação de Givens G;,j (m, n) definida por uma matriz ortogonal G (m, n, 8) como um componente básico. A rotação de Givens G;,j (m, n) pode ser expressa pela Equação 4 abaixo.[0110] NSST MºxM? it can also be applied in the form of a matrix product, but the Hypercube-Givens Transform (HyGT) described in Figure 3 can be used to calculate the NSST in order to decrease the computational amount and required memory capacity. HyGT is an orthogonal transform, and HyGT can include a rotation of Givens G ;, j (m, n) defined by an orthogonal matrix G (m, n, 8) as a basic component. The rotation of Givens G ;, j (m, n) can be expressed by Equation 4 below.
[Equação 4] cosa, i=zsj=moui=j=n sen, i=mj=n, Gj(m, n) = = 09, i=nj=m 1, i=jeitmeizton, 0, caso contrário.[Equation 4] sew, i = zsj = moui = j = n sen, i = mj = n, Gj (m, n) = = 09, i = nj = m 1, i = jeitmeizton, 0, otherwise.
[0111] A rotação de Givens com base na Equação 4 pode ser ilustrada na Figura 5A. Referindo-se à Equação 4 e à Figura 5A, pode-se confirmar que uma das rotações de Givens é descrita por somente um ângulo (89).[0111] The rotation of Givens based on Equation 4 can be illustrated in Figure 5A. Referring to Equation 4 and Figure 5A, it can be confirmed that one of the Givens rotations is described by only one angle (89).
[0112] A Figura 5B ilustra um exemplo de uma rodada que constitui um NSST 16x16. De modo mais específico, HYGT pode ser realizado combinando-se rotações de Givens em uma disposição de hipercubo, e o fluxo do HyGT para 16 elementos pode ser ilustrado sob a forma de uma borboleta conforme ilustrado na Figura 5B. Conforme ilustrado na Figura 5B, uma rodada é composta por 4 camadas de rotação de Givens, sendo que cada camada de rotação de Givens é composta por 8 rotações de Givens, e cada rotação de Givens pode ser formada em uma estrutura que seleciona 2 dados de entrada como a configuração de conexão ilustrada na Figura 5B para aplicar uma transformada de rotação e, então, emitir os dois dados de entrada transformados pro rotação nos locais de seleção correspondentes conforme eles se encontram. NSST 16x16 pode aplicar duas rodadas e uma camada de permutação única sequencialmente, e 16 dados podem ser arbitrariamente misturados através da camada de permutação correspondente. Todas as duas rodadas podem ser conectadas conforme ilustrado na Figura 5B, mas todas as camadas de rotação de Givens para as duas rodadas podem ser diferentes.[0112] Figure 5B illustrates an example of a round that constitutes a 16x16 NSST. More specifically, HYGT can be performed by combining Givens rotations in a hypercube arrangement, and the flow of the HyGT to 16 elements can be illustrated in the form of a butterfly as shown in Figure 5B. As illustrated in Figure 5B, a round is composed of 4 layers of Givens rotation, each layer of Givens rotation is composed of 8 Givens rotations, and each Givens rotation can be formed in a structure that selects 2 data from input as the connection configuration illustrated in Figure 5B to apply a rotation transform and then output the two input data transformed for rotation at the corresponding selection locations as they meet. NSST 16x16 can apply two rounds and a single permutation layer sequentially, and 16 data can be arbitrarily mixed through the corresponding permutation layer. All two rounds can be connected as shown in Figure 5B, but all Givens rotation layers for the two rounds can be different.
[0113] Um NSST 64x64 é composto por camadas de rotação de Givens com 64 entradas e saídas, e similares, NSST 16x16, pelo menos uma rodada pode ser aplicada, e uma rodada pode ser composta por 6 camadas de rotação de Givens que são conectadas em um método similar àquele da Figura 5B. Como um exemplo, as quatro rodadas podem ser aplicadas a NSST 64x64, e, então, pode-se aplicar uma camada de permutação para misturar aleatoriamente 64 dados. As camadas de rotação de Givens para cada uma das quatro rodadas podem ser diferentes entre si.[0113] A 64x64 NSST consists of Givens rotation layers with 64 inputs and outputs, and the like, NSST 16x16, at least one round can be applied, and a round can be composed of 6 Givens rotation layers that are connected in a method similar to that of Figure 5B. As an example, the four rounds can be applied to NSST 64x64, and then a permutation layer can be applied to randomly mix 64 data. The rotation layers of Givens for each of the four rounds can be different from each other.
[0114] A Figura 5B ilustra uma rodada aplicada a uma transformada direta. Quando uma transformada inversa for aplicada, uma camada de permutação reversa é primeiramente aplicada, e, então, as rotações de Givens correspondentes podem ser aplicadas ao longo de uma direção a partir de baixo para cima na Figura 5B na ordem da última rodada à primeira rodada. Um ângulo correspondente a cada rotação de Givens do NSST reverso pode ser um valor obtido aplicando-se um sinal — ao ângulo direto correspondente.[0114] Figure 5B illustrates a round applied to a direct transform. When a reverse transform is applied, a reverse permutation layer is first applied, and then the corresponding Givens rotations can be applied along a direction from bottom to top in Figure 5B in order of the last round to the first round . An angle corresponding to each Givens rotation of the reverse NSST can be a value obtained by applying a sign - to the corresponding direct angle.
[0115] Para acentuar a eficiência de codificação, uma ou mais rodadas de HyGT podem ser usadas. Conforme ilustrado na Figura 5C, NSST pode ser composto por R rodadas de HyGT, e pode, adicionalmente, incluir uma passagem de classificação. A passagem de classificação também pode ser interpretada como uma passagem de permutação opcional, e pode classificar os coeficientes de transformada com base na variância. Como um exemplo, HyGT de duas rodadas pode ser aplicado ao NSST 16x16, e HyGT de quatro rodadas pode ser aplicado ao NSST 64x64.[0115] To enhance the coding efficiency, one or more rounds of HyGT can be used. As shown in Figure 5C, NSST can be composed of R rounds of HyGT, and can additionally include a classification pass. The classification pass can also be interpreted as an optional permutation pass, and can classify the transform coefficients based on the variance. As an example, HyGT two rounds can be applied to NSST 16x16, and HyGT four rounds can be applied to NSST 64x64.
[0116] A Figura 6 é um diagrama para explicar uma transformada reduzida de acordo com uma modalidade exemplificadora da presente revelação.[0116] Figure 6 is a diagram to explain a reduced transform according to an exemplary embodiment of the present disclosure.
[0117] No presente relatório descritivo, um “bloco alvo” pode significar um bloco atual ou um bloco residual a ser codificado.[0117] In this specification, a “target block” can mean a current block or a residual block to be coded.
[0118] No presente relatório descritivo, uma “transformada reduzida” pode significar uma transformada que seja realizada para amostras residuais para o bloco alvo com base em uma matriz de transformada cujo tamanho é reduzido de acordo com um fator reduzido. Se a transformada reduzida for realizada, a quantidade computacional exigida para transformada pode ser reduzida devido a uma redução no tamanho da matriz de transformada. Ou seja, a transformada reduzida pode ser usada para eliminar uma questão de complexidade computacional que ocorre quando um bloco grande for transformado ou não separavelmente transformado. A transformada reduzida pode ser referida como uma transformada primária (ou uma transformada principal). A transformada reduzida também pode ser usada para qualquer tipo de transformada, tal como a transformada primária (por exemplo, DCT, DST, e similares) e a transformada secundária (por exemplo, NSST).[0118] In this specification, a “reduced transform” can mean a transform that is performed for residual samples for the target block based on a transform matrix whose size is reduced according to a reduced factor. If the reduced transform is performed, the computational amount required for the transform can be reduced due to a reduction in the size of the transform matrix. That is, the reduced transform can be used to eliminate an issue of computational complexity that occurs when a large block is transformed or not separably transformed. The reduced transform can be referred to as a primary transform (or a main transform). The reduced transform can also be used for any type of transform, such as the primary transform (for example, DCT, DST, and the like) and the secondary transform (for example, NSST).
[0119] Atransformada reduzida pode ser referida por vários termos, tais como transformada reduzida, transformada de redução, transformada reduzida, transformada reduzida secundária, transformada de redução, transformada simplificada, transformada simples, RTS, RST, ou similares, e os nomes que podem se referir à transformada reduzida não são limitados aos exemplos listados.[0119] The reduced transform can be referred to by several terms, such as reduced transform, reduction transform, reduced transform, secondary reduced transform, reduction transform, simplified transform, simple transform, RTS, RST, or similar, and the names that can refer to the reduced transform are not limited to the examples listed.
[0120] Na transformada reduzida de acordo com uma modalidade exemplificadora, a matriz de transformada reduzida pode ser determinada mapeando- se um vetor N dimensional a um vetor R dimensional situado em um espaço diferente, onde R é menor que N. N pode significar um quadrado do comprimento de um lado do bloco a ser transformado ou o número total de coeficientes de transformada correspondentes ao bloco a ser transformado, e o fator reduzido pode significar um valor R/N. O fator reduzido pode ser referido por vários termos, tais como um fator reduzido, um fator de redução, um fator reduzido, um fator de redução, um fator simplificado, um fator simples, ou similares. Entretanto, R pode ser referido como um coeficiente reduzido, mas, em alguns casos, o fator reduzido também pode significar R. Além disso, em alguns casos, o fator reduzido também pode significar um valor N/R.[0120] In the reduced transform according to an exemplary modality, the reduced transform matrix can be determined by mapping a dimensional N vector to a dimensional R vector located in a different space, where R is less than N. N can mean a square of the length of one side of the block to be transformed or the total number of transform coefficients corresponding to the block to be transformed, and the reduced factor can mean an R / N value. The reduced factor can be referred to by several terms, such as a reduced factor, a reduction factor, a reduced factor, a reduction factor, a simplified factor, a simple factor, or the like. However, R can be referred to as a reduced coefficient, but in some cases, the reduced factor can also mean R. In addition, in some cases, the reduced factor can also mean an N / R value.
[0121] Em uma modalidade exemplificadora, o fator reduzido ou o coeficiente reduzido podem ser sinalizados através de um fluxo de bits, mas a modalidade exemplificadora não se limita a isso. Por exemplo, um valor predeterminado para o fator reduzido ou o coeficiente reduzido pode ser armazenado em cada dentre o aparelho de codificação 100 e o aparelho de decodificação 200, sendo que nesse caso o fator reduzido ou o coeficiente reduzido podem não ser sinalizados separadamente.[0121] In an example mode, the reduced factor or reduced coefficient can be signaled through a bit stream, but the example mode is not limited to that. For example, a predetermined value for the reduced factor or reduced coefficient can be stored in each of the coding apparatus 100 and the decoding apparatus 200, in which case the reduced factor or reduced coefficient may not be signaled separately.
[0122] O tamanho da matriz de transformada reduzida de acordo com uma modalidade exemplificadora é RxN menor que o tamanho NxN da matriz de transformada normal, e pode ser definido conforme expresso na Equação 5 abaixo.[0122] The size of the reduced transform matrix according to an exemplary modality is RxN smaller than the NxN size of the normal transform matrix, and can be defined as expressed in Equation 5 below.
[Equação 5] tu t2 ta tw Tenis í: 2 ta3 , tri trr tra ** try[Equation 5] tu t2 ta tw Tennis shoes: 2 ta3, tri trr tra ** try
[0123] A matriz (T) no bloco de transformada reduzida ilustrado em (a) da Figura 6 pode significar a matriz (Trxn) da Equação 5. Se a matriz de transformada reduzida (Trxn) for multiplicada por amostras residuais para o bloco alvo conforme ilustrado em (a) da Figura 6, coeficientes de transformada para o bloco alvo podem ser derivados.[0123] The matrix (T) in the reduced transform block illustrated in (a) of Figure 6 can mean the matrix (Trxn) of Equation 5. If the reduced transform matrix (Trxn) is multiplied by residual samples for the target block as illustrated in (a) of Figure 6, transform coefficients for the target block can be derived.
[0124] Em uma modalidade exemplificadora, se o tamanho do bloco a ser transformado for 8x8, R = 16 (ou seja, R/N = 16/64 = 1/4), e o tamanho do bloco alvo for 64x64, a transformada reduzida de acordo com (a) da Figura 6 pode ser expresso por uma operação matricial conforme na Equação 6 abaixo.[0124] In an exemplary modality, if the block size to be transformed is 8x8, R = 16 (that is, R / N = 16/64 = 1/4), and the target block size is 64x64, the transformed reduced according to (a) of Figure 6 can be expressed by a matrix operation as in Equation 6 below.
[Equação 6] na ti2 tia . tie o. ti61 ti62 63 o tis a[Equation 6] in ti2 tia. tie o. ti61 ti62 63 o tis a
[0125] Na Equação 6, r1 a rea podem representar as amostras residuais para o bloco alvo. Como resultado da operação da Equação 6, os coeficientes de transformada (ci) para o bloco alvo podem ser derivados, e o processo de derivação de ci pode ser mostrado na Equação 7.[0125] In Equation 6, r1 the area can represent the residual samples for the target block. As a result of the operation of Equation 6, the transform coefficients (ci) for the target block can be derived, and the process of derivation of ci can be shown in Equation 7.
[Equação 7] paraide la R: c=0 para jde 1a N: Cjr=ti*teC[Equation 7] paraide la R: c = 0 to jde 1a N: Cjr = ti * teC
[0126] Como resultado da operação da Equação 7, os coeficientes de transformada (c1 a cr) para o bloco alvo podem ser derivados. Ou seja, se R=16,0s coeficientes de transformada (c1 a c16) para o bloco alvo podem ser derivados. Se uma transformada regular for aplicada ao invés da transformada reduzida e a matriz de transformada de 64x64 (NxN) em tamanho for multiplicada por uma matriz incluindo as amostras residuais de 64x1 (Nx1) em tamanho, 64 (N) coeficientes de transformada para o bloco alvo são derivados, mas visto que a transformada reduzida é aplicada, somente 16 (R) coeficientes de transformada para o bloco alvo são derivados. O número total de coeficientes de transformada para o bloco alvo é reduzido de N para R e, logo, a quantidade de dados transmitidos pelo aparelho de codificação 100 ao aparelho de decodificação 200 pode ser reduzida, acentuando, assim, a eficiência de transmissão entre o aparelho de codificação 100 e o aparelho de decodificação 200.[0126] As a result of the operation of Equation 7, the transform coefficients (c1 to cr) for the target block can be derived. That is, if R = 16.0s transform coefficients (c1 to c16) for the target block can be derived. If a regular transform is applied instead of the reduced transform and the transform matrix of 64x64 (NxN) in size is multiplied by a matrix including the residual samples of 64x1 (Nx1) in size, 64 (N) transform coefficients for the block target are derived, but since the reduced transform is applied, only 16 (R) transform coefficients for the target block are derived. The total number of transform coefficients for the target block is reduced from N to R and, therefore, the amount of data transmitted by the coding device 100 to the decoding device 200 can be reduced, thus enhancing the transmission efficiency between the encoding apparatus 100 and decoding apparatus 200.
[0127] Revisando-se o tamanho da matriz de transformada, o tamanho da matriz de transformada regular é 64x64 (NxN), mas o tamanho da matriz de transformada reduzida é diminuído em 16x64 (RxN), de modo que o uso da memória possa ser reduzido em uma razão R/N quando a transformada reduzida for realizada comparada a quando a transformada regular for realizada. Além disso, o número de operações de multiplicação pode ser reduzido em uma razão R/N quando a matriz de transformada reduzida for usada comparada ao número de operações de multiplicação, NxXN, quando a matriz de transformada regular for usada.[0127] By reviewing the size of the transform matrix, the size of the regular transform matrix is 64x64 (NxN), but the size of the reduced transform matrix is decreased by 16x64 (RxN), so that memory usage can be reduced by an R / N ratio when the reduced transform is performed compared to when the regular transform is performed. In addition, the number of multiplication operations can be reduced by an R / N ratio when the reduced transform matrix is used compared to the number of multiplication operations, NxXN, when the regular transform matrix is used.
[0128] Em uma modalidade exemplificadora, os coeficientes de transformada para o bloco alvo podem ser derivados transformando-se as amostras residuais para o bloco alvo pelo transformador 122 do aparelho de codificação 100; os coeficientes de transformada para o bloco alvo podem ser transferidos ao transformador inverso do aparelho de decodificação 200; e o transformador inverso 223 do aparelho de decodificação 200 pode transformar inversamente os coeficientes de transformada para o bloco alvo. As amostras residuais para o bloco alvo podem ser derivadas com base na transformada inversa que é realizada para os coeficientes de transformada para o bloco alvo. Ou seja, as operações detalhadas de acordo com a transformada inversa (reduzida) estão somente na ordem oposta às operações detalhadas de acordo com a transformada (reduzida), e as operações detalhadas de acordo com a transformada inversa (reduzida) e as operações detalhadas de acordo com a transformada (reduzida) são substancialmente similares.[0128] In an exemplary embodiment, the transform coefficients for the target block can be derived by transforming the residual samples into the target block by transformer 122 of the coding apparatus 100; the transform coefficients for the target block can be transferred to the reverse transformer of the decoding apparatus 200; and the reverse transformer 223 of the decoding apparatus 200 can inversely transform the transform coefficients for the target block. Residual samples for the target block can be derived based on the reverse transform that is performed for the transform coefficients for the target block. That is, the detailed operations according to the inverse (reduced) transform are only in the opposite order to the detailed operations according to the (reduced) transform, and the detailed operations according to the reverse (reduced) transform and the detailed operations of according to the (reduced) transform are substantially similar.
[0129] O tamanho da matriz de transformada inversa reduzida Tnxr de acordo com uma modalidade exemplificadora é NXR menor que o tamanho da matriz de transformada inversa regular NxN, e a matriz de transformada inversa reduzida TnxR tem uma relação de transposição com a matriz de transformada reduzida TRrxn expressa na Equação 5.[0129] The size of the reduced reverse transform matrix Tnxr according to an exemplary modality is NXR smaller than the size of the regular reverse transform matrix NxN, and the reduced reverse transform matrix TnxR has a transposition relationship with the transform matrix reduced TRrxn expressed in Equation 5.
[0130] A matriz T' no bloco de Transformada Inversa Reduzida ilustrado em (b) da Figura 6 pode significar a matriz de transformada inversa reduzida Tnxr. Se os coeficientes de transformada para o bloco alvo forem multiplicados pela matriz de transformada inversa reduzida TnxR conforme ilustrado em (b) da Figura 6, os coeficientes de transformada primária para o bloco alvo ou as amostras residuais para o bloco alvo podem ser derivados.[0130] The matrix T 'in the Reduced Inverse Transform block illustrated in (b) of Figure 6 can mean the reduced inverse transform matrix Tnxr. If the transform coefficients for the target block are multiplied by the reduced inverse transform matrix TnxR as illustrated in (b) of Figure 6, the primary transform coefficients for the target block or residual samples for the target block can be derived.
[0131] De modo mais específico, se a transformada inversa reduzida for aplicada com base na transformada inversa secundária, os coeficientes de transformada primária para o bloco alvo podem ser derivados quando os coeficientes de transformada forem multiplicados pela matriz de transformada inversa reduzida TwxRr. Por outro lado, se a transformada inversa reduzida for aplicada com base na transformada inversa primária, as amostras residuais para o bloco alvo podem ser derivadas quando os coeficientes de transformada para o bloco alvo forem multiplicados pela matriz de transformada inversa reduzida TR.[0131] More specifically, if the reduced inverse transform is applied based on the secondary inverse transform, the primary transform coefficients for the target block can be derived when the transform coefficients are multiplied by the reduced reverse transform matrix TwxRr. On the other hand, if the reduced inverse transform is applied based on the primary inverse transform, the residual samples for the target block can be derived when the transform coefficients for the target block are multiplied by the reduced inverse transform matrix TR.
[0132] Em uma modalidade exemplificadora, se o tamanho do bloco a ser inversamente transformado for 8x8, R = 16 (ou seja, R/N = 16/64 = 1/4), e o tamanho do bloco alvo for 64x64, a transformada inversa reduzida de acordo com (b) da Figura 6 pode ser expressa por uma operação matricial conforme na Equação 8 abaixo.[0132] In an exemplary modality, if the block size to be inversely transformed is 8x8, R = 16 (that is, R / N = 16/64 = 1/4), and the target block size is 64x64, the reduced inverse transform according to (b) of Figure 6 can be expressed by a matrix operation as in Equation 8 below.
[Equação 8] ti1 ta 161 tz tz t161 [7 42 Es 61 [x [9 = * - SF ti6a taça + tisea[Equation 8] ti1 ta 161 tz tz t161 [7 42 Es 61 [x [9 = * - SF ti6a cup + tisea
[0133] Na Equação 8, ci a ci'ws podem representar os coeficientes de transformada para o bloco alvo. Como resultado da operação da Equação 8, r; que representa os coeficientes de transformada primária para o bloco alvo ou as amostras residuais para o bloco alvo pode ser derivado, e o processo de derivação de r; pode ser mostrado na Equação 9.[0133] In Equation 8, ci to ci'ws can represent the transform coefficients for the target block. As a result of operating Equation 8, r; which represents the primary transform coefficients for the target block or the residual samples for the target block can be derived, and the derivation process of r; can be shown in Equation 9.
[Equação 9] para i de la N: n=0 para jde 1a R: Tr+=titeo[Equation 9] for i de la N: n = 0 for jde 1a R: Tr + = titeo
[0134] Como resultado da operação da Equação 9, ri a ru que representam os coeficientes de transformada primária para o bloco alvo ou as amostras residuais para o bloco alvo podem ser derivados. Revisando-se o tamanho da matriz de transformada inversa, o tamanho da matriz de transformada inversa regular é 64x64 (NxN), mas o tamanho da matriz de transformada inversa reduzida é reduzido em 64x16 (NxR), de modo que o uso da memória possa ser reduzido em uma razão R/N quando a transformada inversa reduzida for realizada comparada a quando a transformada inversa regular for realizada. Além disso, o número de operações de multiplicação pode ser reduzido (NxR) a uma razão R/N quando a matriz de transformada inversa reduzida for usada comparada ao número de operações de multiplicação NxN quando a matriz de transformada inversa regular for usada.[0134] As a result of the operation of Equation 9, laughs the rams that represent the primary transform coefficients for the target block or the residual samples for the target block can be derived. By reviewing the size of the reverse transform matrix, the size of the regular reverse transform matrix is 64x64 (NxN), but the size of the reduced reverse transform matrix is reduced by 64x16 (NxR), so that memory usage can be reduced by an R / N ratio when the reduced inverse transform is performed compared to when the regular inverse transform is performed. In addition, the number of multiplication operations can be reduced (NxR) to an R / N ratio when the reduced inverse transform matrix is used compared to the number of NxN multiplication operations when the regular inverse transform matrix is used.
[0135] A Figura 7 é um fluxograma que ilustra um processo de transformada reduzida de acordo com uma modalidade exemplificadora da presente revelação.[0135] Figure 7 is a flow chart that illustrates a reduced transform process according to an exemplary embodiment of the present disclosure.
[0136] Cada etapa ilustrada na Figura 7 pode ser realizada pelo aparelho de decodificação 200 ilustrado na Figura 2. De modo mais específico, S700 pode ser realizado pelo desquantizador 222 ilustrado na Figura 2, e S710 e S720 podem ser realizados pelo transformador inverso 223 ilustrado na Figura 2. De modo correspondente, descrições detalhadas que se sobrepõem aos conteúdos supramencionados na Figura 2 serão omitidas ou simplificadas.[0136] Each step shown in Figure 7 can be performed by the decoding apparatus 200 shown in Figure 2. More specifically, S700 can be performed by the decoder 222 shown in Figure 2, and S710 and S720 can be performed by the reverse transformer 223 illustrated in Figure 2. Correspondingly, detailed descriptions that overlap with the contents mentioned in Figure 2 will be omitted or simplified.
[0137] Em uma modalidade exemplificadora, conforme descrito anteriormente com referência à Figura 6, as operações detalhadas de acordo com a transformada (reduzida) estão somente na ordem oposta às operações detalhadas de acordo com a transformada inversa (reduzida), e as operações detalhadas de acordo com a transformada (reduzida) e as operações detalhadas de acordo com a transformada inversa (reduzida) podem ser substancialmente similares. De modo correspondente, os indivíduos versados na técnica compreenderão prontamente que as descrições de S700 a S720 para a transformada inversa reduzida descrita abaixo também podem ser aplicadas à transformada reduzida em um modo igual ou similar.[0137] In an exemplary modality, as previously described with reference to Figure 6, the detailed operations according to the (reduced) transform are only in the opposite order to the detailed operations according to the inverse (reduced) transform, and the detailed operations according to the (reduced) transform and the detailed operations according to the inverse (reduced) transform can be substantially similar. Correspondingly, those skilled in the art will readily understand that the descriptions from S700 to S720 for the reduced inverse transform described below can also be applied to the reduced transform in the same or similar way.
[0138] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode derivar coeficientes de transformada realizando-se uma desquantização para coeficientes de transformada quantizados para um bloco alvo (S700).[0138] The decoding apparatus 200 according to an exemplary modality can derive transform coefficients by performing a decanting for quantized transform coefficients for a target block (S700).
[0139] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode selecionar um núcleo de transformada (S710). De modo mais específico, o aparelho de decodificação 200 pode selecionar o núcleo de transformada com base pelo menos em um índice de transformada, uma largura e uma altura de uma área a ser transformada, um modo de intrapredição usado na decodificação de imagem, e informações sobre um componente de cor do bloco alvo. No entanto, a modalidade exemplificadora não se limita a isso, e, por exemplo, o núcleo de transformada é pré-definido, e nenhuma informação separada para selecionar o núcleo de transformada pode ser sinalizada.[0139] The decoding apparatus 200 according to an exemplary mode can select a transform core (S710). More specifically, the decoder 200 can select the transform core based on at least a transform index, a width and height of an area to be transformed, an intraprediction mode used in image decoding, and information over a color component of the target block. However, the example mode is not limited to this, and, for example, the transform core is pre-defined, and no separate information for selecting the transform core can be signaled.
[0140] Em um exemplo, as informações sobre o componente de cor do bloco alvo podem ser sinalizadas através de Cldx. Cldx pode indicar O se o bloco alvo for um bloco de luma, e Cldx pode indicar um valor diferente de zero (por exemplo, 1) se o bloco alvo for um bloco de croma, por exemplo, um bloco Cr ou um bloco Cr.[0140] In one example, information about the color component of the target block can be signaled using Cldx. Cldx can indicate O if the target block is a luma block, and Cldx can indicate a non-zero value (for example, 1) if the target block is a chroma block, for example, a Cr block or a Cr block.
[0141] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode aplicar a transformada inversa reduzida aos coeficientes de transformada com base no núcleo de transformada selecionado e um fator reduzido (8720).[0141] The decoding apparatus 200 according to an exemplary modality can apply the reduced inverse transform to the transform coefficients based on the selected transform core and a reduced factor (8720).
[0142] A Figura 8 é um fluxograma que ilustra um processo de transformada reduzida de acordo com outra modalidade exemplificadora da presente revelação.[0142] Figure 8 is a flowchart that illustrates a reduced transformation process according to another example of the present disclosure.
[0143] Cada etapa ilustrada na Figura 8 pode ser realizada pelo aparelho de decodificação 200 ilustrado na Figura 2. De modo mais específico, S800 pode ser realizado pelo desquantizador 222 ilustrado na Figura 2, e S810 a S860 podem ser realizados pelo transformador inverso 223 ilustrado na Figura 2. De modo correspondente, descrições detalhadas que se sobrepõem aos conteúdos supramencionados na Figura 2 serão omitidas ou simplificadas.[0143] Each step shown in Figure 8 can be performed by the decoding apparatus 200 shown in Figure 2. More specifically, S800 can be performed by the decoder 222 shown in Figure 2, and S810 to S860 can be performed by the reverse transformer 223 illustrated in Figure 2. Correspondingly, detailed descriptions that overlap with the contents mentioned in Figure 2 will be omitted or simplified.
[0144] Em uma modalidade exemplificadora, conforme descrito anteriormente com referência à Figura 6, as operações detalhadas de acordo com a transformada (reduzida) estão somente na ordem oposta para as operações detalhadas de acordo com a transformada inversa (reduzida), e as operações detalhadas de acordo com a transformada (reduzida) e as operações detalhadas de acordo com a transformada inversa (reduzida) podem ser substancialmente similares. De modo correspondente, os indivíduos versados na técnica compreenderão prontamente que as descrições de S800 a S860 para a transformada inversa reduzida descrita abaixo também podem ser aplicadas à transformada reduzida em um modo igual ou similar.[0144] In an exemplary modality, as previously described with reference to Figure 6, the detailed operations according to the (reduced) transform are only in the opposite order for the detailed operations according to the inverse (reduced) transform, and the operations detailed according to the (reduced) transform and detailed operations according to the inverse (reduced) transform can be substantially similar. Correspondingly, those skilled in the art will readily understand that the descriptions from S800 to S860 for the reduced inverse transform described below can also be applied to the reduced transform in the same or similar way.
[0145] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode realizar uma desquantização para coeficientes quantizados para o bloco alvo (S800). Se a transformada for realizada no aparelho de codificação 100, o aparelho de decodificação 200 pode derivar os coeficientes de transformada para o bloco alvo desquantizando-se os coeficientes de transformada quantizados para o bloco alvo em S800. De modo oposto, se a transformada não for realizada no aparelho de codificação 100, o aparelho de decodificação 200 pode derivar as amostras residuais para o bloco alvo realizando-se uma desquantização para amostras residuais quantizadas para o bloco alvo em S800.[0145] The decoding apparatus 200 according to an exemplary modality can perform a decanting for quantized coefficients for the target block (S800). If the transform is performed on the coding apparatus 100, the decoding apparatus 200 can derive the transform coefficients for the target block by disquantifying the quantized transform coefficients for the target block at S800. Conversely, if the transform is not performed on the coding apparatus 100, the decoding apparatus 200 may derive the residual samples for the target block by performing a decanting for quantized residual samples for the target block at S800.
[0146] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode determinar se a transformada foi realizada para as amostras residuais para o bloco alvo no aparelho de codificação 100 (S810), e quando for determinado que a transformada foi realizada, o aparelho de decodificação 200 pode analisar o índice de transformada (ou decodificada a partir de um fluxo de bits) (S820). O índice de transformada pode incluir um índice de transformada horizontal para uma transformada horizontal e um índice de transformada vertical para uma transformada vertical.[0146] The decoding apparatus 200 according to an exemplary embodiment can determine whether the transform was performed for the residual samples for the target block in the coding apparatus 100 (S810), and when it is determined that the transform was performed, the apparatus decoding number 200 can analyze the transformed index (or decoded from a bit stream) (S820). The transform index can include a horizontal transform index for a horizontal transform and a vertical transform index for a vertical transform.
[0147] Em um exemplo, o índice de transformada pode incluir um índice de transformada primária, um índice de transformada principal, um índice de NSST, e similares. O índice de transformada pode ser expresso como Transform idx, por exemplo, e o índice de NSST pode ser expresso como NSST idx, por exemplo. Além disso, o índice de transformada horizontal pode ser expresso como Transform idx h, e o Índice de transformada vertical pode ser expresso como Transform idx v.[0147] In one example, the transform index can include a primary transform index, a main transform index, an NSST index, and the like. The transform index can be expressed as Transform idx, for example, and the NSST index can be expressed as NSST idx, for example. In addition, the horizontal transform index can be expressed as Transform idx h, and the vertical transform index can be expressed as Transform idx v.
[0148] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode omitir operações de acordo com S820 a S860, quando for determinado em S810 que a transformada não foi realizada para as amostras residuais para o bloco alvo no aparelho de codificação 100.[0148] The decoding apparatus 200 according to an exemplary modality may omit operations according to S820 to S860, when it is determined in S810 that the transform was not performed for the residual samples for the target block in the coding apparatus 100.
[0149] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode selecionar um núcleo de transformada com base pelo menos em um índice de transformada, uma largura e uma altura de uma área à qual a transformada é aplicada, um modo de intrapredição usado em decodificação de imagem, e informações sobre um componente de cor do bloco alvo (S830).[0149] The decoding apparatus 200 according to an exemplary embodiment can select a transform core based on at least a transform index, a width and a height of an area to which the transform is applied, an intraprediction mode used in image decoding, and information about a color component of the target block (S830).
[0150] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode determinar se uma condição para realizar uma transformada inversa reduzida para os coeficientes de transformada para o bloco alvo for satisfeita (S840).[0150] The decoding apparatus 200 according to an exemplary modality can determine if a condition to perform a reduced inverse transform for the transform coefficients for the target block is satisfied (S840).
[0151] Em um exemplo, se a largura e altura da área à qual a transformada inversa reduzida é aplicada forem maiores que um primeiro coeficiente, o aparelho de decodificação 200 pode determinar que a condição para realizar a transformada inversa reduzida para os coeficientes de transformada para o bloco alvo é satisfeita.[0151] In an example, if the width and height of the area to which the reduced inverse transform is applied are greater than a first coefficient, the decoder 200 can determine that the condition to perform the reduced reverse transform for the transform coefficients for the target block is satisfied.
[0152] Em outro exemplo, se o produto da largura e da altura da área à qual a transformada inversa reduzida é aplicada for maior que um segundo coeficiente, e o menor dentre a largura e a altura da área à qual a transformada inversa reduzida é aplicada for maior que um terceiro coeficiente, o aparelho de decodificação 200 pode determinar que a condição para realizar a transformada inversa reduzida para os coeficientes de transformada para o bloco alvo é satisfeita.[0152] In another example, if the product of the width and height of the area to which the reduced inverse transform is applied is greater than a second coefficient, and the smallest of the width and height of the area to which the reduced inverse transform is applied applied is greater than a third coefficient, the decoding apparatus 200 can determine that the condition to perform the reduced inverse transform for the transform coefficients for the target block is satisfied.
[0153] Em ainda outro exemplo, se a largura e a altura da área à qual a transformada inversa reduzida é aplicada forem menores ou iguais a um quarto coeficiente, o aparelho de decodificação 200 pode determinar que a condição para realizar a transformada inversa reduzida para os coeficientes de transformada para o bloco alvo é satisfeita.[0153] In yet another example, if the width and height of the area to which the reduced inverse transform is applied are less than or equal to a fourth coefficient, the decoder 200 can determine that the condition to perform the reduced inverse transform for the transform coefficients for the target block are satisfied.
[0154] Em ainda outro exemplo, se o produto da largura e da altura da área à qual a transformada inversa reduzida é aplicada for menor ou igual a um quinto coeficiente e o menor dentre a largura e a altura da área à qual a transformada inversa reduzida é aplicada for menor oi igual a um sexto coeficiente, o aparelho de decodificação 200 pode determinar que a condição para realizar a transformada inversa reduzida para os coeficientes de transformada para o bloco alvo é satisfeita.[0154] In yet another example, if the product of the width and height of the area to which the reduced inverse transform is applied is less than or equal to a fifth coefficient and the smallest of the width and height of the area to which the inverse transform is applied. reduced is applied for less than or equal to a sixth coefficient, the decoding apparatus 200 can determine that the condition to carry out the reduced reverse transform for the transform coefficients for the target block is satisfied.
[0155] Em ainda outro exemplo, se pelo menos uma dentre a condição na qual a largura e a altura da área à qual a transformada inversa reduzida é aplicada forem maiores que o primeiro coeficiente, a condição na qual o produto da largura e da altura da área à qual a transformada inversa reduzida é aplicada for maior que o segundo coeficiente e o menor dentre a largura e a altura da área à qual a transformada inversa reduzida é aplicada for maior que o terceiro coeficiente, a condição na qual a largura e a altura da área à qual a transformada inversa reduzida é aplicada forem menores ou iguais ao quarto coeficiente, e uma condição na qual o produto da largura e da altura da área à qual a transformada inversa reduzida é aplicada for menor ou igual ao quinto coeficiente e o menor dentre a largura e a altura da área à qual a transformada inversa reduzida é aplicada for menor ou igual ao sexto coeficiente é satisfeita, o aparelho de decodificação 200 pode determinar que a condição na qual a transformada inversa reduzida é realizada para os coeficientes de transformada para o bloco alvo é satisfeita.[0155] In yet another example, if at least one of the conditions in which the width and height of the area to which the reduced inverse transform is applied are greater than the first coefficient, the condition in which the product of width and height the area to which the reduced inverse transform is applied is greater than the second coefficient and the smallest of the width and height of the area to which the reduced inverse transform is applied is greater than the third coefficient, the condition in which the width and the height of the area to which the reduced inverse transform is applied are less than or equal to the fourth coefficient, and a condition in which the product of the width and height of the area to which the reduced inverse transform is applied is less than or equal to the fifth coefficient and the less than the width and height of the area to which the reduced inverse transform is applied is less than or equal to the sixth coefficient, the decoding device 200 can determine that the condition in which the reduced inverse transform is performed so the transform coefficients for the target block are satisfied.
[0156] Nos exemplos acima, o primeiro ao sexto coeficientes podem ser qualquer número inteiro positivo predeterminado. Por exemplo, o primeiro ao sexto coeficientes podem ser 4, 8, 16 ou 32.[0156] In the examples above, the first to sixth coefficients can be any predetermined positive integer. For example, the first to sixth coefficients can be 4, 8, 16 or 32.
[0157] A transformada inversa reduzida de acordo com uma modalidade exemplificadora pode ser aplicada a uma área quadrada que é incluída no bloco alvo[0157] The inverse transform reduced according to an exemplary modality can be applied to a square area that is included in the target block
(ou seja, se a largura e a altura da área à qual a transformada inversa reduzida é aplicada forem iguais), e, em alguns casos, a largura e a altura da área à qual a transformada inversa reduzida é aplicada podem ser fixadas em valores dos coeficientes predeterminados (por exemplo, 4, 8, 16, 32, ou similares). Entretanto, a área à qual a transformada inversa reduzida é aplicada não se limita à área quadrada, e a transformada inversa reduzida pode ser aplicada a uma área retangular ou a uma área não retangular. Uma descrição mais detalhada da área à qual a transformada inversa reduzida é aplicada será descrita mais adiante com referência à Figura 10.(that is, if the width and height of the area to which the reduced inverse transform is applied are equal), and in some cases, the width and height of the area to which the reduced inverse transform is applied can be set to values predetermined coefficients (for example, 4, 8, 16, 32, or similar). However, the area to which the reduced inverse transform is applied is not limited to the square area, and the reduced inverse transform can be applied to a rectangular area or a non-rectangular area. A more detailed description of the area to which the reduced inverse transform is applied will be described later with reference to Figure 10.
[0158] Em um exemplo, se a condição para realizar a transformada inversa reduzida for satisfeita pode ser determinada com base no índice de transformada. Ou seja, o índice de transformada pode indicar qual transformada foi realizada para o bloco alvo.[0158] In one example, if the condition to perform the reduced inverse transform is met, it can be determined based on the transform index. That is, the transform index can indicate which transform was performed for the target block.
[0159] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode realizar a transformada inversa (regular) para os coeficientes de transformada para o bloco alvo quando for determinado em S840 que a condição para realizar a transformada inversa simplificada não é satisfeita. Conforme descrito anteriormente com referência à Figura 3, a transformada (inversa) pode incluir, por exemplo, DCT2, DCTA4, DCT5, DCT7, DCT8, DST1, DSTA4, DST7, NSST, JEM-NSST (HyGT), ou similares, mas não se limita a esses.[0159] The decoding apparatus 200 according to an exemplary modality can perform the inverse (regular) transform for the transform coefficients for the target block when it is determined in S840 that the condition to perform the simplified inverse transform is not satisfied. As previously described with reference to Figure 3, the (reverse) transform can include, for example, DCT2, DCTA4, DCT5, DCT7, DCT8, DST1, DSTA4, DST7, NSST, JEM-NSST (HyGT), or the like, but not is limited to those.
[0160] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode realizar a transformada inversa reduzida para os coeficientes de transformada para o bloco alvo quando for determinado em S840 que a condição para realizar a transformada inversa reduzida é satisfeita (S860).[0160] The decoding apparatus 200 according to an exemplary modality can perform the reduced inverse transform for the transform coefficients for the target block when it is determined in S840 that the condition to perform the reduced inverse transform is satisfied (S860).
[0161] A Figura 9 é um fluxograma que ilustra um processo de transformada reduzida com base em uma transformada secundária não separável de acordo com uma modalidade exemplificadora da presente revelação.[0161] Figure 9 is a flow chart that illustrates a reduced transform process based on a non-separable secondary transform according to an exemplary embodiment of the present disclosure.
[0162] Cada etapa ilustrada na Figura 9 pode ser realizada pelo aparelho de decodificação 200 ilustrado na Figura 2, e, de modo mais específico, S900 pode ser realizado pelo desquantizador 222 ilustrado na Figura 2, e S910 a S980 podem ser realizados pelo transformador inverso 223 ilustrado na Figura 2. Além disso, S900 da Figura 9 pode corresponder a S800 da Figura 8, S940 da Figura 9 pode corresponder a S830 da Figura 8, e S950 da Figura 9 pode corresponder a S840 da Figura 8. De modo correspondente, descrições detalhadas que se sobrepõem aos conteúdos descritos anteriormente com referência às Figuras 2 e 8 serão omitidas ou simplificadas.[0162] Each step shown in Figure 9 can be performed by the decoding apparatus 200 shown in Figure 2, and, more specifically, S900 can be performed by the decoder 222 shown in Figure 2, and S910 to S980 can be performed by the transformer inverse 223 illustrated in Figure 2. In addition, S900 in Figure 9 can correspond to S800 in Figure 8, S940 in Figure 9 can correspond to S830 in Figure 8, and S950 in Figure 9 can correspond to S840 in Figure 8. Correspondingly , detailed descriptions that overlap with the contents previously described with reference to Figures 2 and 8 will be omitted or simplified.
[0163] Em uma modalidade exemplificadora, conforme descrito anteriormente com referência à Figura 6, as operações detalhadas de acordo com a transformada (reduzida) estão somente na ordem oposta às operações detalhadas de acordo com a transformada inversa (reduzida), e as operações detalhadas de acordo com a transformada (reduzida) e as operações detalhadas de acordo com a transformada inversa (reduzida) podem ser substancialmente similares. De modo correspondente, os indivíduos versados na técnica compreenderão prontamente que as descrições de S900 a S980 para a transformada inversa reduzida descrita abaixo também podem ser aplicadas à transformada reduzida em um modo igual ou similar.[0163] In an exemplary modality, as previously described with reference to Figure 6, the detailed operations according to the (reduced) transform are only in the opposite order to the detailed operations according to the inverse (reduced) transform, and the detailed operations according to the (reduced) transform and the detailed operations according to the inverse (reduced) transform can be substantially similar. Correspondingly, those skilled in the art will readily understand that the descriptions from S900 to S980 for the reduced inverse transform described below can also be applied to the reduced transform in the same or similar way.
[0164] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode realizar uma desquantização para os coeficientes quantizados para o bloco alvo (S900).[0164] The decoding apparatus 200 according to an exemplary modality can perform a decanting for the quantized coefficients for the target block (S900).
[0165] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode determinar se o NSST foi realizado para as amostras residuais para o bloco alvo no aparelho de codificação 100 (S910), e quando for determinado que o NSST foi realizado, o aparelho de decodificação 200 pode analisar o índice de NSST (ou decodificado a partir do fluxo de bits) (S920).[0165] The decoding apparatus 200 according to an exemplary embodiment can determine whether the NSST was performed for the residual samples for the target block in the coding apparatus 100 (S910), and when it is determined that the NSST was performed, the apparatus decoding 200 can analyze the NSST index (or decoded from the bit stream) (S920).
[0166] O aparelho de decodificação 200 de acordo com uma modalidade exembplificadora pode determinar se o índice de NSST é maior que O (S930), e quando for determinado que o índice de NSST é maior que O, o aparelho de decodificação 200 pode selecionar o núcleo de transformada com base em pelo menos um dentre o[0166] The decoder 200 according to an exemplifying mode can determine whether the NSST index is greater than O (S930), and when it is determined that the NSST index is greater than O, the decoder 200 can select the transformed core based on at least one of the
Índice de NSST, uma largura e uma altura de uma área à qual o índice de NSST é aplicado, um modo de intrapredição, e informações sobre um componente de cor do bloco alvo (S940).NSST index, a width and height of an area to which the NSST index is applied, an intraprediction mode, and information about a color component of the target block (S940).
[0167] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode determinar se a condição para realizar a transformada inversa reduzida para os coeficientes de transformada para o bloco alvo é satisfeita (S950).[0167] The decoding apparatus 200 according to an exemplary modality can determine whether the condition to carry out the reduced reverse transform for the transform coefficients for the target block is satisfied (S950).
[0168] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode realizar a transformada inversa (regular) sem se basear em transformada inversa reduzida para os coeficientes de transformada para o bloco alvo, se for determinado em S950 que a condição para realizar a transformada inversa reduzida não é satisfeita.[0168] The decoding apparatus 200 according to an exemplary modality can perform the inverse (regular) transform without relying on the reduced inverse transform for the transform coefficients for the target block, if it is determined in S950 that the condition to perform the reduced inverse transform is not satisfied.
[0169] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode realizar um NSST inverso com base na transformada inversa reduzida para os coeficientes de transformada para o bloco alvo, se for determinado em S950 que a condição para realizar a transformada inversa reduzida é satisfeita.[0169] The decoding apparatus 200 according to an exemplary modality can perform an inverse NSST based on the reduced inverse transform for the transform coefficients for the target block, if it is determined in S950 that the condition for performing the reduced reverse transform is satisfied.
[0170] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode omitir as operações de acordo com S920 a S970 se for determinado em S910 que NSST não foi realizado para as amostras residuais para o bloco alvo no aparelho de codificação 100.[0170] The decoding apparatus 200 according to an exemplary modality may omit operations according to S920 to S970 if it is determined in S910 that NSST was not performed for the residual samples for the target block in the coding apparatus 100.
[0171] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode omitir as operações de acordo com S940 a S970, se for determinado em S930 que o índice de NSST não é maior que O.[0171] The decoding apparatus 200 according to an exemplary modality may omit operations according to S940 to S970, if it is determined in S930 that the NSST index is not greater than O.
[0172] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode realizar uma transformada inversa primária para coeficientes de transformada primária para o bloco alvo derivado aplicando-se o NSST inverso. Quando a transformada inversa primária for realizada para os coeficientes de transformada primária, as amostras residuais para o bloco alvo podem ser derivadas.[0172] The decoding apparatus 200 according to an exemplary embodiment can perform a primary reverse transform for primary transform coefficients for the derived target block by applying the inverse NSST. When the primary reverse transform is performed for the primary transform coefficients, residual samples for the target block can be derived.
[0173] A Figura 10 é um diagrama de blocos que ilustra um bloco ao qual a transformada reduzida é aplicada de acordo com uma modalidade exemplificadora da presente revelação.[0173] Figure 10 is a block diagram that illustrates a block to which the reduced transform is applied according to an exemplary embodiment of the present disclosure.
[0174] Conforme descrito acima com referência à Figura 8, a área à qual a transformada (inversa) reduzida é aplicada no bloco alvo não se limita à área quadrada, e a transformada reduzida pode ser aplicada à área retangular ou à área não retangular.[0174] As described above with reference to Figure 8, the area to which the reduced (inverse) transform is applied to the target block is not limited to the square area, and the reduced transform can be applied to the rectangular area or the non-rectangular area.
[0175] A Figura 10 ilustra um exemplo no qual a transformada reduzida é aplicada a uma área não retangular em um bloco alvo 1000 tendo 16x16 de tamanho. Dez blocos 1010 hachurados na Figura 10 representam áreas onde a transformada reduzida é aplicada no bloco alvo 1000. Visto que os tamanhos dos respectivos blocos unitários mínimos são 4x4, a transformada reduzida é aplicada a 10 pixels 4x4 (ou seja, a transformada reduzida é aplicada a 160 pixels) de acordo com o exemplo da Figura 10. Quando R = 16, o tamanho da matriz de transformada reduzida pode ser 16x160.[0175] Figure 10 illustrates an example in which the reduced transform is applied to a non-rectangular area in a target block 1000 having 16x16 in size. Ten blocks 1010 hatched in Figure 10 represent areas where the reduced transform is applied to target block 1000. Since the sizes of the respective minimum unit blocks are 4x4, the reduced transform is applied to 10 4x4 pixels (that is, the reduced transform is applied at 160 pixels) according to the example in Figure 10. When R = 16, the size of the reduced transform matrix can be 16x160.
[0176] Entretanto, os indivíduos versados na técnica podem prontamente compreender que a disposição dos blocos unitários mínimos 1010 incluídos na área à qual a transformada reduzida ilustrada na Figura 10 é aplicada consiste somente em um dentre um grande número de exemplos. Por exemplo, os blocos unitários mínimos incluídos na área à qual a transformada reduzida é aplicada não podem ser adjacentes entre si, ou podem ter uma relação compartilhando somente um vértice entre eles.[0176] However, those skilled in the art can readily understand that the arrangement of the minimum unit blocks 1010 included in the area to which the reduced transform shown in Figure 10 is applied consists of only one of a large number of examples. For example, the minimum unit blocks included in the area to which the reduced transform is applied cannot be adjacent to each other, or they can have a relationship sharing only one vertex between them.
[0177] A Figura 11 é um fluxograma que ilustra uma operação de um aparelho de codificação de vídeo de acordo com uma modalidade exemplificadora da presente revelação.[0177] Figure 11 is a flow chart that illustrates an operation of a video encoding device according to an exemplary embodiment of the present disclosure.
[0178] Cada etapa ilustrada na Figura 11 pode ser realizada pelo aparelho de codificação 100 ilustrado na Figura 1. De modo mais específico, S1100 pode ser realizado pelo subtrator 121 ilustrado na Figura 1, S1110 pode ser realizado pelo transformador 122 ilustrado na Figura 1, S1120 pode ser realizado pelo quantizador 123 ilustrado na Figura 1, e S1130 pode ser realizado pelo codificador de entropia 130 ilustrado na Figura 1. Além disso, as operações de acordo com S1100 a S1130 se baseiam em alguns dos conteúdos descritos acima com referência às Figuras 6 a 10. De modo correspondente, descrições detalhadas que se sobrepõem aos conteúdos descritos anteriormente com referência às Figuras 1 e 6 a 10 serão omitidas ou simplificadas.[0178] Each step shown in Figure 11 can be performed by the coding apparatus 100 shown in Figure 1. More specifically, S1100 can be performed by subtractor 121 shown in Figure 1, S1110 can be performed by transformer 122 shown in Figure 1 , S1120 can be performed by the quantizer 123 shown in Figure 1, and S1130 can be performed by the entropy encoder 130 shown in Figure 1. In addition, the operations according to S1100 to S1130 are based on some of the contents described above with reference to Figures 6 to 10. Correspondingly, detailed descriptions that overlap with the contents previously described with reference to Figures 1 and 6 to 10 will be omitted or simplified.
[0179] O aparelho de codificação 100 de acordo com uma modalidade exemplificadora pode derivar as amostras residuais para o bloco alvo (S1100).[0179] The coding apparatus 100 according to an exemplary embodiment can derive residual samples for the target block (S1100).
[0180] O aparelho de codificação 100 de acordo com uma modalidade exemplificadora pode derivar coeficientes de transformada para um bloco alvo com base na transformada reduzida para as amostras residuais (S1110). Em um exemplo, a transformada reduzida pode ser realizada com base em uma matriz de transformada reduzida, e a matriz de transformada reduzida pode ser uma matriz não quadrada cujo número de fileiras é menor que o número de colunas.[0180] The coding apparatus 100 according to an exemplary modality can derive transform coefficients for a target block based on the reduced transform for the residual samples (S1110). In one example, the reduced transform can be performed based on a reduced transform matrix, and the reduced transform matrix can be a non-square matrix whose number of rows is less than the number of columns.
[0181] Em uma modalidade exemplificadora, S1110 pode incluir determinar se uma condição para aplicar a transformada reduzida é satisfeita, gerar e codificar um Índice de transformada com base na determinação, selecionar um núcleo de transformada, e aplicar a transformada reduzida às amostras residuais com base no núcleo de transformada selecionado e um fator reduzido, quando a condição para aplicar a transformada reduzida for satisfeita. Nesse momento, o tamanho da matriz de transformada reduzida pode ser determinado com base no fator reduzido.[0181] In an exemplifying embodiment, S1110 can include determining whether a condition to apply the reduced transform is satisfied, generating and encoding a transform index based on the determination, selecting a transform core, and applying the reduced transform to residual samples with based on the selected transform core and a reduced factor, when the condition to apply the reduced transform is satisfied. At that time, the size of the reduced transform matrix can be determined based on the reduced factor.
[0182] Se a transformada reduzida de acordo com S1110 se basear em uma transformada primária, coeficientes de transformada primária para o bloco alvo podem ser derivados quando a transformada reduzida for realizada para as amostras residuais para o bloco alvo. O aparelho de decodificação 200 pode realizar um NSST para os coeficientes de transformada primária para o bloco alvo, e, nesse momento, NSST pode ser realizado com base na transformada reduzida ou realizado sem se basear na transformada reduzida. Quando NSST for realizado com base na transformada reduzida, isso pode corresponder à operação de acordo com S1110.[0182] If the reduced transform according to S1110 is based on a primary transform, primary transform coefficients for the target block can be derived when the reduced transform is performed for the residual samples for the target block. The decoding apparatus 200 can perform an NSST for the primary transform coefficients for the target block, and at that time, NSST can be performed on the basis of the reduced transform or performed without being based on the reduced transform. When NSST is performed based on the reduced transform, this may correspond to the operation according to S1110.
[0183] O aparelho de codificação 100 de acordo com uma modalidade exemplificadora pode derivar coeficientes de transformada quantizados realizando-se uma quantização com base nos coeficientes de transformada para o bloco alvo S1120.[0183] The coding apparatus 100 according to an exemplary embodiment can derive quantized transform coefficients by performing a quantization based on the transform coefficients for the target block S1120.
[0184] O aparelho de codificação 100 de acordo com uma modalidade exemplificadora pode codificar informações sobre os coeficientes de transformada quantizados (S1130). De modo mais específico, o aparelho de codificação 100 pode gerar informações sobre os coeficientes de transformada quantizados e codificar informações sobre os coeficientes de transformada quantizados gerados. As informações sobre os coeficientes de transformada quantizados podem incluir informações residuais.[0184] The coding apparatus 100 according to an exemplary embodiment can encode information about the quantized transform coefficients (S1130). More specifically, the coding apparatus 100 can generate information about the quantized transform coefficients and encode information about the generated quantized transform coefficients. Information about the quantized transform coefficients can include residual information.
[0185] Em um exemplo, as informações sobre os coeficientes de transformada quantizados podem incluir pelo menos uma das informações sobre se a transformada reduzida é aplicada, informações sobre o fator reduzido, informações sobre um tamanho mínimo de transformada ao qual a transformada reduzida é aplicada, e informações sobre um tamanho máximo de transformada ao qual a transformada reduzida é aplicada. Uma descrição mais detalhada das informações sobre os coeficientes de transformada quantizados será descrita mais adiante na Figura 12.[0185] In one example, information about quantized transform coefficients can include at least one of the information about whether the reduced transform is applied, information about the reduced factor, information about a minimum transform size to which the reduced transform is applied. , and information about a maximum transform size to which the reduced transform is applied. A more detailed description of the information about the quantized transform coefficients will be described later in Figure 12.
[0186] Referindo-se a S1110, pode-se confirmar que os coeficientes de transformada para o bloco alvo são derivados com base na transformada reduzida para as amostras residuais. Revisando-se o tamanho da matriz de transformada, o tamanho da matriz de transformada regular é NxN, mas o tamanho da matriz de transformada reduzida é diminuído em RxN, de modo que o uso da memória possa ser diminuído em uma razão R/N quando a transformada reduzida for realizada comparada a quando a transformada regular for realizada. Além disso, o número de operações de multiplicação pode ser reduzido (RxN) a uma razão R/N quando a matriz de transformada reduzida for usada comparada ao número de operações de multiplicação NxXN quando a matriz de transformada regular for usada. Além disso, visto que somente os R coeficientes de transformada são derivados quando a transformada reduzida for aplicada, o número total de coeficientes de transformada para o bloco alvo é reduzido de N para R comparado a um caso onde os N coeficientes de transformada são derivados quando a transformada regular for aplicada, de modo que a quantidade de dados transmitidos pelo aparelho de codificação 100 ao aparelho de decodificação 200 possa ser reduzida. Em suma, é possível acentuar a eficiência de transformada e a eficiência de codificação do aparelho de codificação 100 através da transformada reduzida de acordo com S1110.[0186] Referring to S1110, it can be confirmed that the transform coefficients for the target block are derived based on the reduced transform for the residual samples. By reviewing the size of the transform matrix, the size of the regular transform matrix is NxN, but the size of the reduced transform matrix is decreased by RxN, so that memory usage can be decreased by an R / N ratio when the reduced transform is performed compared to when the regular transform is performed. In addition, the number of multiplication operations can be reduced (RxN) to an R / N ratio when the reduced transform matrix is used compared to the number of NxXN multiplication operations when the regular transform matrix is used. In addition, since only the R transform coefficients are derived when the reduced transform is applied, the total number of transform coefficients for the target block is reduced from N to R compared to a case where the N transform coefficients are derived when the regular transform is applied, so that the amount of data transmitted by the encoding apparatus 100 to the decoding apparatus 200 can be reduced. In short, it is possible to enhance the transform efficiency and the coding efficiency of the coding apparatus 100 through the reduced transform according to S1110.
[0187] A Figura 12 é um fluxograma que ilustra uma operação de um aparelho de decodificação de vídeo de acordo com uma modalidade exemplificadora da presente revelação.[0187] Figure 12 is a flow chart illustrating an operation of a video decoding device according to an exemplary embodiment of the present disclosure.
[0188] Cada uma ilustrada na Figura 12 pode ser realizada pelo aparelho de decodificação 200 ilustrado na Figura 2. De modo mais específico, S1200 pode ser realizado pelo decodificador de entropia 210 ilustrado na Figura 2, S1210 pode ser realizado pelo desquantizador 222 ilustrado na Figura 2, S1220 pode ser realizado pelo transformador inverso 223 ilustrado na Figura 2, e S1230 pode ser realizado pelo adicionador 240 ilustrado na Figura 2. Além disso, as operações de acordo com S1200 a S1230 se baseiam em alguns dos conteúdos descritos anteriormente com referência às Figuras 6 a 10. De modo correspondente, descrições detalhadas que se sobrepõem aos conteúdos descritos anteriormente com referência às Figuras 2e 6 a serão omitidas ou simplificadas.[0188] Each shown in Figure 12 can be performed by the decoder 200 shown in Figure 2. More specifically, S1200 can be performed by the entropy decoder 210 shown in Figure 2, S1210 can be performed by the decoder 222 illustrated in Figure 2, S1220 can be performed by the reverse transformer 223 shown in Figure 2, and S1230 can be performed by the adder 240 shown in Figure 2. In addition, the operations according to S1200 to S1230 are based on some of the contents previously described with reference to Figures 6 to 10. Correspondingly, detailed descriptions that overlap with the contents previously described with reference to Figures 2 and 6 a will be omitted or simplified.
[0189] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode derivar coeficientes de transformada quantizados para o bloco alvo a partir do fluxo de bits (S1200). De modo mais específico, o aparelho de decodificação 200 pode decodificar informações sobre os coeficientes de transformada quantizados para o bloco alvo a partir do fluxo de bits, e derivar os coeficientes de transformada quantizados para o bloco alvo com base nas informações sobre os coeficientes de transformada quantizados para o bloco alvo. As informações sobre os coeficientes de transformada quantizados para o bloco alvo podem ser incluídas em um conjunto de parâmetros de sequência (SPS) ou um cabeçalho de fatia, e podem incluir pelo menos uma das informações sobre se a transformada reduzida é aplicada, informações sobre o fator reduzido, informações sobre o tamanho mínimo de transformada ao qual a transformada reduzida é aplicada, informações sobre o tamanho máximo de transformada ao qual a transformada reduzida é aplicada, e informações sobre o tamanho de transformada inversa reduzida.[0189] The decoding apparatus 200 according to an exemplary embodiment can derive quantized transform coefficients for the target block from the bit stream (S1200). More specifically, the decoding apparatus 200 can decode information about the quantized transform coefficients for the target block from the bit stream, and derive the quantized transform coefficients for the target block based on information about the transform coefficients quantized for the target block. Information about the quantized transform coefficients for the target block can be included in a set of sequence parameters (SPS) or a slice header, and can include at least one of the information about whether the reduced transform is applied, information about the reduced factor, information about the minimum transform size to which the reduced transform is applied, information about the maximum transform size to which the reduced transform is applied, and information about the size of the reduced inverse transform.
[0190] De modo mais específico, as informações sobre se a transformada reduzida é aplicada podem ser representadas por um indicador habilitado, as informações sobre o fator reduzido podem ser representadas por um valor de fator reduzido, as informações sobre o tamanho mínimo de transformada ao qual a transformada inversa reduzida é aplicada são representadas por um valor de tamanho mínimo de transformada, as informações sobre o tamanho máximo de transformada ao qual a transformada inversa reduzida é aplicada podem ser representadas pelo valor de tamanho máximo de transformada, e as informações sobre o tamanho de transformada inversa reduzida podem ser representadas por um valor de tamanho da transformada inversa reduzida. Nesse momento, o indicador habilitado pode ser sinalizado através de um primeiro elemento de sintaxe, o valor de fator reduzido pode ser sinalizado através de um segundo elemento de sintaxe, o valor de tamanho mínimo de transformada pode ser sinalizado através de um terceiro elemento de sintaxe, e o valor de tamanho máximo de transformada pode ser sinalizado através de um quarto elemento de sintaxe, e o valor de tamanho de transformada inversa reduzida pode ser sinalizado através de um quinto elemento de sintaxe.[0190] More specifically, information on whether the reduced transform is applied can be represented by an enabled indicator, information on the reduced factor can be represented by a reduced factor value, information on the minimum transform size when which the reduced inverse transform is applied are represented by a minimum transform size value, information about the maximum transform size to which the reduced inverse transform is applied can be represented by the maximum transform size value, and information about the reduced reverse transform size can be represented by a reduced reverse transform size value. At that time, the enabled indicator can be signaled via a first syntax element, the reduced factor value can be signaled via a second syntax element, the minimum transform size value can be signaled via a third syntax element , and the maximum transform size value can be signaled via a fourth syntax element, and the reduced inverse transform size value can be signaled via a fifth syntax element.
[0191] Em um exemplo, o primeiro elemento de sintaxe pode ser expresso como o elemento de sintaxe Reduced transform enabled flag. O elemento de sintaxe Reduced transform enabled flag pode indicar 1 se a transformada reduzida for aplicada, e o elemento de sintaxe Reduced transform enabled flag pode indicar O se a transformada reduzida não for aplicada. Se o elemento de sintaxe Reduced transform enabled flag não for sinalizado, um valor do elemento de sintaxe[0191] In an example, the first syntax element can be expressed as the Reduced transform enabled flag syntax element. The Reduced transform enabled flag syntax element can indicate 1 if the reduced transform is applied, and the Reduced transform enabled flag syntax element can indicate O if the reduced transform is not applied. If the Reduced transform enabled flag syntax element is not flagged, a syntax element value
Reduced transform enabled flag pode ser estimado como sendo 0.Reduced transform enabled flag can be estimated to be 0.
[0192] Além disso, o segundo elemento de sintaxe pode ser expresso como um elemento de sintaxe Reduced transform factor. O elemento de sintaxe Reduced transform factor pode indicar um valor de R/N, onde N pode significar o quadrado do comprimento de um lado do bloco ao qual a transformada é aplicada ou o número total de coeficientes de transformada correspondentes ao bloco ao qual a transformada é aplicada. R pode significar um coeficiente reduzido menor que N. No entanto, o exemplo não é limitado a isso, e, por exemplo, Reduced transform factor também pode indicar R ao invés de R/N. Revisando-se tendo em vista a matriz de transformada inversa reduzida, R significa o número de colunas da matriz de transformada inversa reduzida, e N significa o número de fileiras da matriz de transformada inversa reduzida, e, nesse momento, o número de colunas da matriz de transformada inversa reduzida precisa ser menor que o número de fileiras. R pode ser, por exemplo, 8, 16, 32, ou similares, mas não se limita a isso. Se o elemento de sintaxe Reduced transform factor não for sinalizado, o valor de Reduced transform factor pode ser estimado como R/N (ou R).[0192] In addition, the second syntax element can be expressed as a Reduced transform factor syntax element. The Reduced transform factor syntax element can indicate an R / N value, where N can mean the square of the length of one side of the block to which the transform is applied or the total number of transform coefficients corresponding to the block to which the transform is applied. is applied. R can mean a reduced coefficient less than N. However, the example is not limited to that, and, for example, Reduced transform factor can also indicate R instead of R / N. Revising for the reduced reverse transform matrix, R means the number of columns of the reduced reverse transform matrix, and N means the number of rows of the reduced reverse transform matrix, and at that time, the number of columns in the reduced reverse transform matrix must be less than the number of rows. R can be, for example, 8, 16, 32, or the like, but is not limited to that. If the Reduced transform factor syntax element is not signaled, the value of Reduced transform factor can be estimated as R / N (or R).
[0193] Além disso, o terceiro elemento de sintaxe pode ser expresso como um elemento de sintaxe min reduced transform size. Se o elemento de sintaxe min reduced transform size não for sinalizado, o valor de min reduced transform size pode ser estimado como 0.[0193] In addition, the third syntax element can be expressed as a min reduced transform size syntax element. If the min reduced transform size syntax element is not flagged, the min reduced transform size value can be estimated as 0.
[0194] Além disso, o quarto elemento de sintaxe pode ser expresso como um elemento de sintaxe max reduced transform size. Se o elemento de sintaxe max reduced transform size não for sinalizado, um valor de max reduced transform size pode ser estimado como O.[0194] In addition, the fourth syntax element can be expressed as a max reduced transform size syntax element. If the max reduced transform size syntax element is not flagged, a max reduced transform size value can be estimated as O.
[0195] Além disso, o quinto elemento de sintaxe pode ser expresso como um elemento de sintaxe reduced transform size. O valor de tamanho da transformada inversa reduzida incluído e sinalizado no elemento de sintaxe reduced transform size pode indicar o tamanho da área à qual a transformada inversa reduzida é aplicada ou o tamanho da matriz de transformada reduzida, mas não se limita a isso. Se o elemento de sintaxe reduced transform size não for sinalizado, o valor de reduced transform size pode ser estimado como 0.[0195] In addition, the fifth syntax element can be expressed as a reduced transform size syntax element. The size of the reduced inverse transform included and signaled in the reduced transform size syntax element can indicate the size of the area to which the reduced inverse transform is applied or the size of the reduced transform matrix, but is not limited to that. If the reduced transform size syntax element is not flagged, the value of reduced transform size can be estimated as 0.
[0196] A Tabela 3 abaixo mostra um exemplo no qual as informações sobre os coeficientes de transformada quantizados para o bloco alvo são incluídas e sinalizadas no SPS. Tabela 3 [seg parameter set | pesenmter] ua) sps max sub layers minus1 [profa ver teveltps max sub layers mins) sps seq parameter set id chroma format idc | inehvoma fomatiaes=a) — | separate colour plane flag pic width in luma samples conformance window flag if( conformance window flag ) ( | | conf win right offeset conf win top offset conf win bottom offset a e Reduced transform enabled flag Ifíreduced transform enabled flag) ( | reduced transform enabled flag) ( min reduced tansform size max reduced transform size[0196] Table 3 below shows an example in which information about the quantized transform coefficients for the target block is included and signaled in the SPS. Table 3 [sec parameter set | pesenmter] ua) sps max sub layers minus1 [profa see teveltps max sub layers mins) sps seq parameter set id chroma format idc | inehvoma fomatiaes = a) - | separate color plane flag pic width in luma samples conformance window flag if (conformance window flag) (| | conf win right offeset conf win top offset conf win bottom offset ae Reduced transform enabled flag Ifíreduced transform enabled flag) (| reduced transform enabled flag) (min reduced tansform size max reduced transform size
+) sps extension flag if( sps extension flag ) while( more rbsp data( )) | | [resp rata ts do E j| Lo+) sps extension flag if (sps extension flag) while (more rbsp data ()) | | [resp rata ts of E j | Lo
[0197] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode derivar coeficientes de transformada realizando-se uma desquantização para os coeficientes de transformada quantizados para o bloco alvo (81210).[0197] The decoding apparatus 200 according to an exemplary modality can derive transform coefficients by performing a decanting for the quantized transform coefficients for the target block (81210).
[0198] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode derivar amostras residuais para o bloco alvo com base na transformada inversa reduzida para os coeficientes de transformada (S1220). Em um exemplo, a transformada inversa reduzida pode ser realizada com base na matriz de transformada inversa reduzida, e a matriz de transformada inversa reduzida pode ser uma matriz não quadrada cujo número de colunas é menor que o número de fileiras.[0198] The decoding apparatus 200 according to an exemplary embodiment can derive residual samples for the target block based on the reduced inverse transform for the transform coefficients (S1220). In one example, the reduced inverse transform can be performed based on the reduced reverse transform matrix, and the reduced reverse transform matrix can be a non-square matrix whose number of columns is less than the number of rows.
[0199] Em uma modalidade exemplificadora, S1220 pode incluir decodificar um índice de transformada, determinar se uma condição para aplicar a transformada inversa reduzida é satisfeita com base no índice de transformada, selecionar um núcleo de transformada, e aplicar a transformada inversa reduzida para o coeficiente de transformada com base no núcleo de transformada selecionado e um fator reduzido, quando a condição para aplicar a transformada inversa reduzida for satisfeita. Nesse momento, o tamanho da matriz de transformada inversa reduzida pode ser determinado com base no fator reduzido.[0199] In an exemplary embodiment, S1220 may include decoding a transform index, determining whether a condition to apply the reduced inverse transform is satisfied based on the transform index, selecting a transform core, and applying the reduced inverse transform to the transform coefficient based on the selected transform core and a reduced factor, when the condition to apply the reduced inverse transform is satisfied. At that time, the size of the reduced inverse transform matrix can be determined based on the reduced factor.
[0200] Se a transformada inversa reduzida de acordo com S1220 se basear no NSST inverso, os coeficientes de transformada primários para o bloco alvo podem ser derivados quando a transformada inversa reduzida for realizada para os coeficientes de transformada para o bloco alvo. O aparelho de decodificação 200 pode realizar a transformada inversa primária para os coeficientes de transformada primária para o bloco alvo, e, nesse momento, a transformada inversa primária pode ser realizada com base na transformada inversa reduzida ou realizada sem se basear na transformada inversa reduzida.[0200] If the reduced inverse transform according to S1220 is based on the inverse NSST, the primary transform coefficients for the target block can be derived when the reduced reverse transform is performed for the transform coefficients for the target block. The decoding apparatus 200 can perform the primary reverse transform for the primary transform coefficients for the target block, and at that time, the primary reverse transform can be performed based on the reduced reverse transform or performed without being based on the reduced reverse transform.
[0201] Alternativamente, quando a transformada inversa reduzida de acordo com S1220 se basear na transformada inversa primária, amostras residuais para o bloco alvo podem ser diretamente derivados realizando-se a transformada inversa reduzida para os coeficientes de transformada para o bloco alvo.[0201] Alternatively, when the reduced inverse transform according to S1220 is based on the primary reverse transform, residual samples for the target block can be directly derived by performing the reduced reverse transform for the transform coefficients for the target block.
[0202] O aparelho de decodificação 200 de acordo com uma modalidade exemplificadora pode gerar uma figuração reconstruída com base nas amostras residuais para o bloco alvo e amostras de predição para o bloco alvo (S1230).[0202] The decoding apparatus 200 according to an exemplary embodiment can generate a reconstructed figure based on residual samples for the target block and prediction samples for the target block (S1230).
[0203] Referindo-se a S1220, pode-se confirmar que as amostras residuais para o bloco alvo são derivadas com base na transformada inversa reduzida para os coeficientes de transformada para o bloco alvo. Revisando-se o tamanho da matriz de transformada inversa, o tamanho da matriz de transformada inversa regular é NxN, mas o tamanho da matriz de transformada inversa reduzida é reduzido para NxR, de modo que o uso da memória possa ser reduzido em uma razão R/N quando a transformada reduzida for realizada comparada a quando a transformada regular for realizada. Além disso, o número de operações de multiplicação pode ser reduzido (NxR) a uma razão R/N quando a matriz de transformada inversa reduzida for usada comparada ao número de operações de multiplicação NXN quando a matriz de transformada inversa regular for usada. Além disso, visto que somente os R coeficientes de transformada precisam ser decodificados quando a transformada inversa reduzida for aplicada, o número total de coeficientes de transformada para o bloco alvo pode ser N a R quando comparado a um caso onde os N coeficientes de transformada precisam ser decodificados quando a transformada inversa regular for aplicada, acentuando, assim, a eficiência de decodificação. Em suma, é possível acentuar a eficiência de transformada (inversa) e a eficiência de codificação do aparelho de decodificação 200 através da transformada inversa reduzida de acordo com S1220.[0203] Referring to S1220, it can be confirmed that the residual samples for the target block are derived based on the reduced inverse transform for the transform coefficients for the target block. By reviewing the size of the inverse transform matrix, the size of the regular inverse transform matrix is NxN, but the size of the reduced inverse transform matrix is reduced to NxR, so that memory usage can be reduced by an R ratio / N when the reduced transform is performed compared to when the regular transform is performed. In addition, the number of multiplication operations can be reduced (NxR) to an R / N ratio when the reduced inverse transform matrix is used compared to the number of NXN multiplication operations when the regular inverse transform matrix is used. In addition, since only the R transform coefficients need to be decoded when the reduced inverse transform is applied, the total number of transform coefficients for the target block can be N to R when compared to a case where the N transform coefficients need be decoded when the regular inverse transform is applied, thus enhancing the decoding efficiency. In short, it is possible to enhance the transform efficiency (inverse) and the coding efficiency of the decoding apparatus 200 through the reduced reverse transform according to S1220.
[0204] Os componentes internos do aparelho supramencionado podem ser processadores que executam processos consecutivos armazenados na memória, ou podem ser componentes de hardware compostos por outro hardware. Esses podem estar situados dentro/fora do aparelho.[0204] The internal components of the aforementioned device may be processors that execute consecutive processes stored in memory, or they may be hardware components composed of other hardware. These can be located inside / outside the device.
[0205] Os módulos supramencionados podem ser omitidos ou substituídos por outros módulos que realizem operações iguais/similares de acordo com as modalidades exemplificadoras.[0205] The modules mentioned above can be omitted or replaced by other modules that perform the same / similar operations according to the example modalities.
[0206] O método supramencionado de acordo com a presente revelação pode ser implementado sob a forma de software, e o aparelho de codificação e/ou o aparelho de decodificação de acordo com a presente revelação podem ser incluídos no aparelho que realiza um processamento de imagem como uma TV, um computador, um smartphone, um decodificador de sinais, um dispositivo de exibição, ou similares.[0206] The aforementioned method according to the present disclosure can be implemented in the form of software, and the coding apparatus and / or the decoding apparatus according to the present disclosure can be included in the apparatus which performs image processing such as a TV, a computer, a smartphone, a set-top box, a display device, or the like.
[0207] Nas modalidades exemplificadoras supramencionadas, embora os métodos sejam descritos com base em fluxogramas mostrados como uma série de etapas ou blocos, a presente revelação não se limita à ordem das etapas, e uma determinada etapa pode ocorrer em uma ordem diferente ou simultaneamente a uma etapa diferente daquela descrita anteriormente. Além disso, os indivíduos versados na técnica compreenderão que as etapas no fluxograma não são exclusivas, e outras etapas podem ser incluídas ou uma ou mais etapas nos fluxogramas podem ser excluídas sem afetar o escopo da presente revelação.[0207] In the exemplary modalities mentioned above, although the methods are described based on flowcharts shown as a series of steps or blocks, the present disclosure is not limited to the order of the steps, and a given step can occur in a different order or simultaneously to a different step from the one previously described. In addition, individuals skilled in the art will understand that the steps in the flowchart are not exclusive, and other steps can be included or one or more steps in the flowcharts can be excluded without affecting the scope of the present disclosure.
[0208] Quando as modalidades da presente revelação forem implementadas em software, o método descrito anteriormente pode ser implementado por módulos (processos, funções, e assim por diante) que realizam as funções descritas anteriormente. Esses módulos podem ser armazenados em uma memória e executados por um processador.[0208] When the modalities of the present disclosure are implemented in software, the method described above can be implemented by modules (processes, functions, and so on) that perform the functions described above. These modules can be stored in memory and run by a processor.
A memória pode ser interna ou externa ao processador, e a memória pode ser acoplada ao processador usando vários meios notórios.The memory can be internal or external to the processor, and the memory can be coupled to the processor using various notorious means.
O processador pode compreender um circuito integrado para aplicação específica (ASIC), outros conjuntos de chips, um circuito lógico e/ou um dispositivo de processamento de dados.The processor may comprise an application specific integrated circuit (ASIC), other chip sets, a logic circuit and / or a data processing device.
A memória pode incluir uma ROM (memória somente para leitura), uma RAM (memória de acesso aleatório), uma memória flash, um cartão de memória, uma mídia de armazenamento e/ou outro dispositivo de armazenamento.The memory can include a ROM (read-only memory), a RAM (random access memory), a flash memory, a memory card, a storage medium and / or other storage device.
Claims (15)
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762599020P | 2017-12-15 | 2017-12-15 | |
US62/599,020 | 2017-12-15 | ||
PCT/KR2018/015815 WO2019117639A1 (en) | 2017-12-15 | 2018-12-13 | Image coding method on basis of transformation and device therefor |
Publications (1)
Publication Number | Publication Date |
---|---|
BR112020012033A2 true BR112020012033A2 (en) | 2020-11-24 |
Family
ID=66820509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BR112020012033-2A BR112020012033A2 (en) | 2017-12-15 | 2018-12-13 | transformation-based image encoding method and device for the same |
Country Status (10)
Country | Link |
---|---|
US (4) | US11218731B2 (en) |
EP (2) | EP3716630A4 (en) |
JP (3) | JP7009632B2 (en) |
KR (3) | KR20230008911A (en) |
CN (5) | CN111684809B (en) |
BR (1) | BR112020012033A2 (en) |
CA (2) | CA3088026C (en) |
MX (2) | MX2020006314A (en) |
RU (2) | RU2762873C2 (en) |
WO (1) | WO2019117639A1 (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3716630A4 (en) * | 2017-12-15 | 2021-01-27 | LG Electronics Inc. | Image coding method on basis of transformation and device therefor |
KR20200028856A (en) * | 2018-09-07 | 2020-03-17 | 김기백 | A method and an apparatus for encoding/decoding video using intra prediction |
WO2020179715A1 (en) * | 2019-03-01 | 2020-09-10 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | Encoding device, decoding device, encoding method, and decoding method |
CN113812155B (en) * | 2019-05-11 | 2023-10-27 | 北京字节跳动网络技术有限公司 | Interaction between multiple inter-frame coding and decoding methods |
WO2020242183A1 (en) * | 2019-05-27 | 2020-12-03 | 엘지전자 주식회사 | Image coding method and device on basis of wide-angle intra prediction and transform |
CN114303373A (en) | 2019-08-31 | 2022-04-08 | Lg 电子株式会社 | Method of decoding video for residual coding and apparatus thereof |
CN118714314A (en) * | 2019-08-31 | 2024-09-27 | Lg 电子株式会社 | Method for coding and decoding video using simplified residual data in video coding system and apparatus therefor |
US11184617B2 (en) * | 2019-09-19 | 2021-11-23 | Qualcomm Incorporated | Transform unit design for video coding |
SI4017008T1 (en) * | 2019-09-21 | 2024-08-30 | Lg Electronics Inc. | Transform-based image coding |
JP2023500732A (en) * | 2019-11-11 | 2023-01-10 | エルジー エレクトロニクス インコーポレイティド | Transform-based video coding method and apparatus |
WO2024076134A1 (en) * | 2022-10-05 | 2024-04-11 | 세종대학교산학협력단 | Video encoding and decoding apparatus and method |
Family Cites Families (61)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5448053A (en) * | 1993-03-01 | 1995-09-05 | Rhoads; Geoffrey B. | Method and apparatus for wide field distortion-compensated imaging |
JP4605212B2 (en) * | 1997-11-05 | 2011-01-05 | ソニー株式会社 | Digital signal conversion method and digital signal conversion apparatus |
US8423597B1 (en) * | 2003-08-29 | 2013-04-16 | Nvidia Corporation | Method and system for adaptive matrix trimming in an inverse discrete cosine transform (IDCT) operation |
JP2005184042A (en) * | 2003-12-15 | 2005-07-07 | Sony Corp | Image decoding apparatus, image decoding method, and image decoding program |
US8023589B2 (en) * | 2004-08-09 | 2011-09-20 | Texas Instruments Incorporated | Wireless MIMO transmitter with antenna and tone precoding blocks |
EP1746839A1 (en) * | 2005-07-22 | 2007-01-24 | Thomson Licensing | Method and apparatus for encoding video data |
WO2007083312A2 (en) * | 2006-01-18 | 2007-07-26 | Numeri Ltd. | Method and apparatus for a multidimensional discrete multiwavelet transform |
JPWO2008132890A1 (en) * | 2007-04-16 | 2010-07-22 | 株式会社東芝 | Method and apparatus for image encoding and image decoding |
CN101272492B (en) * | 2008-05-05 | 2011-07-13 | 中兴通讯股份有限公司 | Inverse transformation method for self-adapting two-dimension 4x4 block |
US8576914B2 (en) * | 2011-01-10 | 2013-11-05 | Cisco Technology, Inc. | Integer transform video compression system, method and computer program product |
CN101742328B (en) * | 2008-11-14 | 2013-03-27 | 北京中星微电子有限公司 | Method and device for integer transform of image residual matrix, and method and device for inverse transform of image residual matrix |
JP2011003946A (en) * | 2009-06-16 | 2011-01-06 | Keio Gijuku | Image encoding/decoding method and device |
US20120127003A1 (en) * | 2009-08-06 | 2012-05-24 | Youji Shibahara | Coding method, decoding method, coding apparatus, and decoding apparatus |
KR20120086232A (en) * | 2011-01-25 | 2012-08-02 | (주)휴맥스 | Method for encoding/decoding video for rate-distortion optimization and apparatus for performing the same |
US8792740B2 (en) * | 2010-02-02 | 2014-07-29 | Humax Holdings Co., Ltd. | Image encoding/decoding method for rate-distortion optimization and apparatus for performing same |
KR101791242B1 (en) * | 2010-04-16 | 2017-10-30 | 에스케이텔레콤 주식회사 | Video Coding and Decoding Method and Apparatus |
US9215470B2 (en) * | 2010-07-09 | 2015-12-15 | Qualcomm Incorporated | Signaling selected directional transform for video coding |
JP2013542664A (en) * | 2010-09-28 | 2013-11-21 | サムスン エレクトロニクス カンパニー リミテッド | Video conversion method and apparatus, and video reverse conversion method and apparatus |
US9378185B2 (en) * | 2010-09-30 | 2016-06-28 | Texas Instruments Incorporated | Transform and quantization architecture for video coding and decoding |
CN102006478A (en) * | 2010-11-29 | 2011-04-06 | 青岛海信信芯科技有限公司 | Inverse transformation method and device of video decoding |
JP5741076B2 (en) * | 2010-12-09 | 2015-07-01 | ソニー株式会社 | Image processing apparatus and image processing method |
ES2681838T3 (en) * | 2010-12-21 | 2018-09-17 | Ntt Docomo, Inc. | Intra-prediction coding and decoding in a flat mode |
WO2012093304A1 (en) | 2011-01-05 | 2012-07-12 | Koninklijke Philips Electronics N.V. | Video coding and decoding devices and methods preserving ppg relevant information |
US20140010284A1 (en) * | 2011-02-25 | 2014-01-09 | Samsung Electronics Co., Ltd. | Image transform and inverse transform method, and image encoding and decoding device using same |
US20120230395A1 (en) * | 2011-03-11 | 2012-09-13 | Louis Joseph Kerofsky | Video decoder with reduced dynamic range transform with quantization matricies |
US8627166B2 (en) * | 2011-03-16 | 2014-01-07 | Samsung Electronics Co., Ltd. | LDPC code family for millimeter-wave band communications in a wireless network |
US9747255B2 (en) * | 2011-05-13 | 2017-08-29 | Texas Instruments Incorporated | Inverse transformation using pruning for video coding |
TWI601419B (en) * | 2011-06-30 | 2017-10-01 | 三星電子股份有限公司 | Method for decoding video |
KR101943049B1 (en) * | 2011-06-30 | 2019-01-29 | 에스케이텔레콤 주식회사 | Method and Apparatus for Image Encoding/Decoding |
US9826238B2 (en) * | 2011-06-30 | 2017-11-21 | Qualcomm Incorporated | Signaling syntax elements for transform coefficients for sub-sets of a leaf-level coding unit |
US20130003856A1 (en) * | 2011-07-01 | 2013-01-03 | Samsung Electronics Co. Ltd. | Mode-dependent transforms for residual coding with low latency |
JP2013038768A (en) * | 2011-07-13 | 2013-02-21 | Canon Inc | Image encoder, image encoding method, program, image decoder, image decoding method and program |
GB2561487B (en) * | 2011-10-18 | 2019-01-02 | Kt Corp | Method for encoding image, method for decoding image, image encoder, and image decoder |
KR101542586B1 (en) * | 2011-10-19 | 2015-08-06 | 주식회사 케이티 | Method and apparatus for encoding/decoding image |
JP6120490B2 (en) * | 2011-11-07 | 2017-04-26 | キヤノン株式会社 | Image encoding device, image encoding method and program, image decoding device, image decoding method and program |
KR20130050404A (en) * | 2011-11-07 | 2013-05-16 | 오수미 | Method for generating reconstructed block in inter prediction mode |
KR20130050896A (en) * | 2011-11-07 | 2013-05-16 | 삼성전자주식회사 | Method and apparatus for performing clipping during de-quantization and inverse transformation in video decoding |
WO2014071439A1 (en) * | 2012-11-08 | 2014-05-15 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding the transform units of a coding unit |
WO2014084656A1 (en) * | 2012-11-29 | 2014-06-05 | 엘지전자 주식회사 | Method and device for encoding/ decoding image supporting plurality of layers |
JP2016105528A (en) * | 2013-03-22 | 2016-06-09 | パナソニック株式会社 | Image coding device and image coding method |
GB2512827B (en) * | 2013-04-05 | 2015-09-16 | Canon Kk | Method and device for classifying samples of an image |
KR101709775B1 (en) * | 2013-07-23 | 2017-02-23 | 인텔렉추얼디스커버리 주식회사 | Method and apparatus for image encoding/decoding |
US9563817B2 (en) * | 2013-11-04 | 2017-02-07 | Varian Medical Systems, Inc. | Apparatus and method for reconstructing an image using high-energy-based data |
JP6177148B2 (en) * | 2014-01-22 | 2017-08-09 | Kddi株式会社 | Moving picture decoding apparatus, moving picture decoding method, and program |
TWI551124B (en) * | 2014-07-11 | 2016-09-21 | 晨星半導體股份有限公司 | Encoding, decoding method and encoding, decoding apparatus for video system |
WO2016043417A1 (en) * | 2014-09-19 | 2016-03-24 | 엘지전자(주) | Method and apparatus for encoding and decoding video signal adaptively on basis of separable transformation |
CN105516730B (en) * | 2014-09-24 | 2018-04-24 | 晨星半导体股份有限公司 | Video coding device and video decoded device and its coding and coding/decoding method |
CN107431813B (en) * | 2015-02-12 | 2020-04-10 | Lg 电子株式会社 | Method and apparatus for processing video signal using graph-based transform |
US20170034530A1 (en) | 2015-07-28 | 2017-02-02 | Microsoft Technology Licensing, Llc | Reduced size inverse transform for decoding and encoding |
JP6555814B2 (en) * | 2015-08-20 | 2019-08-07 | 日本放送協会 | Orthogonal transformation processing device, inverse orthogonal transformation processing device, encoding device, decoding device, and computer program |
KR102199463B1 (en) * | 2015-08-31 | 2021-01-06 | 삼성전자주식회사 | Method and apparatus for image transform, and method and apparatus for image inverse transform based on scan order |
US10491922B2 (en) | 2015-09-29 | 2019-11-26 | Qualcomm Incorporated | Non-separable secondary transform for video coding |
WO2017061671A1 (en) * | 2015-10-08 | 2017-04-13 | 엘지전자 주식회사 | Method and device for coding image on basis of adaptive transformation in image coding system |
CN108293124B (en) * | 2015-11-30 | 2022-05-13 | 瑞典爱立信有限公司 | Coding of pictures in video |
US9998746B2 (en) * | 2016-02-10 | 2018-06-12 | Amazon Technologies, Inc. | Video decoder memory optimization |
US10448053B2 (en) * | 2016-02-15 | 2019-10-15 | Qualcomm Incorporated | Multi-pass non-separable transforms for video coding |
US10349085B2 (en) * | 2016-02-15 | 2019-07-09 | Qualcomm Incorporated | Efficient parameter storage for compact multi-pass transforms |
CN105791867B (en) * | 2016-03-23 | 2019-02-22 | 北京大学 | Optimization method for coding video data based on Boundary adaptation transformation |
US10893274B2 (en) * | 2016-05-12 | 2021-01-12 | Lg Electronics Inc. | Method for processing video signal on basis of arbitrary partition transform |
CN106254883B (en) * | 2016-08-02 | 2021-01-22 | 海信视像科技股份有限公司 | Inverse transformation method and device in video decoding |
EP3716630A4 (en) | 2017-12-15 | 2021-01-27 | LG Electronics Inc. | Image coding method on basis of transformation and device therefor |
-
2018
- 2018-12-13 EP EP18887638.7A patent/EP3716630A4/en active Pending
- 2018-12-13 BR BR112020012033-2A patent/BR112020012033A2/en unknown
- 2018-12-13 US US16/772,934 patent/US11218731B2/en active Active
- 2018-12-13 RU RU2021106917A patent/RU2762873C2/en active
- 2018-12-13 MX MX2020006314A patent/MX2020006314A/en unknown
- 2018-12-13 EP EP24165012.6A patent/EP4376412A3/en active Pending
- 2018-12-13 CA CA3088026A patent/CA3088026C/en active Active
- 2018-12-13 WO PCT/KR2018/015815 patent/WO2019117639A1/en active Application Filing
- 2018-12-13 CN CN201880086783.6A patent/CN111684809B/en active Active
- 2018-12-13 KR KR1020237000136A patent/KR20230008911A/en active IP Right Grant
- 2018-12-13 CN CN202210919980.XA patent/CN115297326B/en active Active
- 2018-12-13 RU RU2020123079A patent/RU2745254C1/en active
- 2018-12-13 CN CN202210920509.2A patent/CN115278240B/en active Active
- 2018-12-13 KR KR1020217033291A patent/KR102485470B1/en active IP Right Grant
- 2018-12-13 JP JP2020532909A patent/JP7009632B2/en active Active
- 2018-12-13 KR KR1020207017026A patent/KR102315455B1/en active IP Right Grant
- 2018-12-13 CN CN202210917423.4A patent/CN115278234A/en active Pending
- 2018-12-13 CA CA3210247A patent/CA3210247A1/en active Pending
- 2018-12-13 CN CN202210916508.0A patent/CN115278233B/en active Active
-
2020
- 2020-07-13 MX MX2024000126A patent/MX2024000126A/en unknown
-
2021
- 2021-10-21 US US17/507,446 patent/US11601679B2/en active Active
- 2021-11-25 JP JP2021190741A patent/JP7240476B2/en active Active
-
2023
- 2023-01-17 US US18/097,625 patent/US11895334B2/en active Active
- 2023-03-03 JP JP2023032393A patent/JP7422913B2/en active Active
- 2023-12-19 US US18/545,642 patent/US20240146965A1/en active Pending
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BR112020012033A2 (en) | transformation-based image encoding method and device for the same | |
ES2927102T3 (en) | Method and device for performing image decoding on the basis of intra-prediction in image coding systems | |
ES2719132B1 (en) | Procedure and device to process video signals | |
BR112020012040A2 (en) | image encoding method based on non-separable secondary transform and device for the same | |
BR112020012643A2 (en) | method for image encoding based on selective transform and device for the same | |
US11350118B2 (en) | Image encoding/decoding method and device | |
ES2960029T3 (en) | Method and apparatus for inter prediction in a video coding system | |
BR122021003525B1 (en) | VIDEO DECODING METHOD PERFORMED BY A DECODING DEVICE, VIDEO ENCODING METHOD PERFORMED BY AN ENCODING DEVICE, AND COMPUTER READable STORAGE MEDIA | |
RU2826578C1 (en) | Method of encoding images based on transformation and device for this | |
JP7572577B2 (en) | Transform-based video coding method and device | |
RU2798770C1 (en) | Method and device for image decoding based on intra prediction in image coding system | |
RU2776098C2 (en) | Method and apparatus for decoding an image based on an intra-prediction in an image encoding system | |
BR122022006273B1 (en) | IMAGE DECODING METHOD AND APPARATUS, IMAGE CODING METHOD AND APPARATUS, NON-TRAINER COMPUTER READABLE STORAGE MEDIUM, METHOD AND APPARATUS FOR TRANSMITTING DATA TO AN IMAGE | |
BR112021010422B1 (en) | IMAGE DECODING METHOD PERFORMED BY A DECODING APPARATUS, IMAGE CODING METHOD PERFORMED BY AN IMAGE CODING APPARATUS, AND NON-TRAINER COMPUTER READABLE STORAGE MEDIUM | |
BR122022006263B1 (en) | IMAGE DECODING METHOD AND APPARATUS, IMAGE CODING METHOD AND APPARATUS, NON-TRAINER COMPUTER READABLE STORAGE MEDIUM, METHOD AND APPARATUS FOR TRANSMITTING DATA TO AN IMAGE | |
BR112021010422A2 (en) | IMAGE ENCODING METHOD BASED ON SECONDARY TRANSFORMATION AND DEVICE FOR THE SAME | |
BR122022006290B1 (en) | IMAGE DECODING METHOD PERFORMED BY AN IMAGE DECODING APPARATUS, IMAGE CODING METHOD PERFORMED BY AN IMAGE CODING APPARATUS, NON-TRANSITORY COMPUTER-READABLE STORAGE MEDIUM, DATA TRANSMISSION METHOD FOR AN IMAGE, DECODING APPARATUS FOR IMAGE DECODING, CODING APPARATUS FOR IMAGE CODING AND TRANSMISSION APPARATUS FOR TRANSMISSION OF DATA FOR AN IMAGE |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B350 | Update of information on the portal [chapter 15.35 patent gazette] |