BR122023025846A2 - DECODING APPARATUS FOR IMAGE DECODING, CODING APPARATUS FOR IMAGE ENCODING, COMPUTER READABLE STORAGE MEDIUM AND APPARATUS FOR TRANSMITTING DATA TO AN IMAGE - Google Patents
DECODING APPARATUS FOR IMAGE DECODING, CODING APPARATUS FOR IMAGE ENCODING, COMPUTER READABLE STORAGE MEDIUM AND APPARATUS FOR TRANSMITTING DATA TO AN IMAGE Download PDFInfo
- Publication number
- BR122023025846A2 BR122023025846A2 BR122023025846-0A BR122023025846A BR122023025846A2 BR 122023025846 A2 BR122023025846 A2 BR 122023025846A2 BR 122023025846 A BR122023025846 A BR 122023025846A BR 122023025846 A2 BR122023025846 A2 BR 122023025846A2
- Authority
- BR
- Brazil
- Prior art keywords
- information
- image
- prediction
- samples
- virtual boundaries
- Prior art date
Links
- 238000003860 storage Methods 0.000 title claims description 25
- 238000000034 method Methods 0.000 claims description 157
- 238000001914 filtration Methods 0.000 claims description 99
- 230000008569 process Effects 0.000 claims description 93
- 238000012952 Resampling Methods 0.000 claims description 30
- 230000033001 locomotion Effects 0.000 description 72
- 239000000523 sample Substances 0.000 description 52
- 241000023320 Luma <angiosperm> Species 0.000 description 30
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 30
- 230000011664 signaling Effects 0.000 description 13
- 239000011159 matrix material Substances 0.000 description 12
- 238000012545 processing Methods 0.000 description 12
- 230000003044 adaptive effect Effects 0.000 description 11
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 10
- 239000013074 reference sample Substances 0.000 description 10
- 230000002123 temporal effect Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 8
- 238000013139 quantization Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 238000005192 partition Methods 0.000 description 7
- 229910003460 diamond Inorganic materials 0.000 description 6
- 239000010432 diamond Substances 0.000 description 6
- 230000001965 increasing effect Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 5
- 238000007906 compression Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 230000006978 adaptation Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 230000001939 inductive effect Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000002156 mixing Methods 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 238000011002 quantification Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000002146 bilateral effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000010454 slate Substances 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Abstract
De acordo com as modalidades do presente documento, a qualidade subjetiva/objetiva de uma imagem pode ser melhorada através de codificação de imagem com base em subimagens e/ou limites virtuais, e consumo de recursos de hardware necessários para codificação pode ser reduzido.According to embodiments herein, the subjective/objective quality of an image can be improved through image coding based on subimages and/or virtual boundaries, and consumption of hardware resources required for coding can be reduced.
Description
[001] O presente documento refere-se a um aparelho de codificação de imagem e método para controlar a filtragem de loop.[001] The present document relates to an image coding apparatus and method for controlling loop filtering.
[002] Recentemente, a demanda por imagem/vídeo de alta resolução e alta qualidade, como 4K ou 8K ou imagem/vídeo de ultra alta definição (UHD) aumentou em vários campos. Como os dados de imagem/vídeo 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/vídeo existentes e, portanto, a transmissão de dados de imagem usando um meio como uma linha de banda larga com ou sem fio existente ou um meio de armazenamento existente ou o armazenamento de dados de imagem/vídeo usando o meio de armazenamento existente aumentam o custo de transmissão e o custo de armazenamento.[002] Recently, the demand for high-resolution and high-quality image/video such as 4K or 8K or ultra high definition (UHD) image/video has increased in various fields. Since image/video data has high resolution and high quality, the amount of information or bits to be transmitted increases relative to existing image/video data, and therefore transmission of image data using a medium such as a line existing wired or wireless broadband or an existing storage medium or storing image/video data using the existing storage medium increases the transmission cost and storage cost.
[003] Além disso, o interesse e a demanda por mídia imersiva, como conteúdo de realidade virtual (VR) e realidade artificial (AR) ou hologramas, aumentou recentemente e a transmissão de imagem/vídeo está tendo características diferentes das imagens da realidade, como imagens de jogos, aumentou.[003] Furthermore, interest and demand for immersive media such as virtual reality (VR) and artificial reality (AR) content or holograms has increased recently and image/video transmission is having different characteristics from reality images, like game images, increased.
[004] Consequentemente, é necessária uma tecnologia de compressão de imagem/vídeo altamente eficiente para comprimir, transmitir, armazenar e reproduzir eficazmente informações de uma imagem/vídeo de alta resolução e alta qualidade com várias características, conforme descrito acima.[004] Consequently, a highly efficient image/video compression technology is required to effectively compress, transmit, store and reproduce information from a high-resolution, high-quality image/video with various characteristics, as described above.
[005] Especificamente, há uma discussão sobre um método para controlar eficazmente a filtragem de loop realizada através dos limites virtuais e um método para sinalizar efetivamente as informações nas subimagens. Sumário[005] Specifically, there is a discussion of a method for effectively controlling the loop filtering performed across virtual boundaries and a method for effectively signaling information in the subimages. summary
[006] De acordo com uma modalidade do presente documento, um método e um aparelho para aumentar a codificação de imagem eficiência são fornecidos.[006] According to an embodiment of the present document, a method and apparatus for increasing image coding efficiency are provided.
[007] De acordo com uma modalidade do presente documento, métodos e aparelhos de aplicação de filtragem eficientes são fornecidos.[007] According to an embodiment of the present document, efficient filtering application methods and apparatus are provided.
[008] De acordo com uma modalidade do presente documento, um método e aparelho para aplicar efetivamente desbloqueio, deslocamento adaptativo de amostra (SAO) e filtragem de loop adaptável (ALF) são fornecidos.[008] According to an embodiment of the present document, a method and apparatus for effectively applying deblocking, adaptive sample shifting (SAO) and adaptive loop filtering (ALF) are provided.
[009] De acordo com uma modalidade do presente documento, a filtragem em loop pode ser realizada com base em limites virtuais.[009] According to one embodiment of the present document, loop filtering can be performed based on virtual thresholds.
[010] De acordo com uma modalidade do presente documento, se um conjunto de parâmetros de sequência (SPS) inclui informações adicionais relacionadas a limites virtuais (por exemplo, informações sobre as posições e o número de limites virtuais) pode ser determinado com base na reamostragem para imagens de referência está ativado.[010] According to one embodiment of the present document, whether a sequence parameter set (SPS) includes additional information related to virtual boundaries (e.g., information about the positions and number of virtual boundaries) can be determined based on the resampling for reference images is enabled.
[011] De acordo com uma modalidade do presente documento, a codificação de imagem pode ser realizada com base em subimagens.[011] According to an embodiment of the present document, image coding can be performed based on subimages.
[012] De acordo com uma modalidade do presente documento, as subimagens usadas na codificação de imagem podem ser independentemente codificadas.[012] According to one embodiment of the present document, the sub-images used in image coding can be independently encoded.
[013] De acordo com uma modalidade do presente documento, uma imagem pode incluir apenas uma subimagem. Além disso, a subimagem pode ser codificada independentemente.[013] According to one embodiment of the present document, an image may include only one subimage. Furthermore, the subimage can be encoded independently.
[014] De acordo com uma modalidade do presente documento, uma imagem pode ser gerada com base em um processo de fusão de subimagens. Além disso, as subimagens podem ser subimagens codificadas independentemente.[014] According to an embodiment of the present document, an image can be generated based on a sub-image fusion process. Furthermore, the sub-images may be independently encoded sub-images.
[015] De acordo com uma modalidade do presente documento, cada uma das subimagens usadas na codificação de imagem pode ser tratada como uma imagem.[015] According to an embodiment of the present document, each of the sub-images used in image coding can be treated as an image.
[016] De acordo com uma modalidade do presente documento, um aparelho de codificação para realizar a codificação de vídeo/imagem é fornecido.[016] According to an embodiment of the present document, a coding apparatus for performing video/image coding is provided.
[017] De acordo com uma modalidade do presente documento, é fornecido um meio de armazenamento digital legível por computador no qual informações de vídeo/imagem codificadas, geradas de acordo com o método de codificação de vídeo/imagem divulgado em pelo menos uma das modalidades do presente documento, é armazenado.[017] In accordance with one embodiment of the present document, a computer-readable digital storage medium is provided on which encoded video/image information generated in accordance with the video/image coding method disclosed in at least one of the embodiments of this document, is stored.
[018] De acordo com uma modalidade do presente documento, é fornecido um meio de armazenamento digital legível por computador no qual informações codificadas ou informações de vídeo/imagem codificadas, fazendo com que seja realizado o método de decodificação de vídeo/imagem divulgado em pelo menos uma das modalidades do presente documento pelo aparelho de decodificação, é armazenado.[018] According to one embodiment of the present document, a computer-readable digital storage medium is provided on which encoded information or encoded video/image information, causing the video/image decoding method disclosed in at least at least one of the embodiments of this document by the decoding apparatus is stored.
[019] De acordo com uma modalidade do presente documento, a eficiência geral de compressão de imagem/vídeo pode ser melhorada.[019] According to an embodiment of the present document, the overall image/video compression efficiency can be improved.
[020] De acordo com uma modalidade do presente documento, a qualidade visual subjetiva/objetiva pode ser melhorada por meio de filtragem eficiente.[020] According to one embodiment of the present document, subjective/objective visual quality can be improved through efficient filtering.
[021] De acordo com uma modalidade do presente documento, o processo de filtragem em loop com base nos limites virtuais pode ser efetivamente realizado e o desempenho da filtragem pode ser melhorado.[021] According to an embodiment of the present document, the loop filtering process based on virtual thresholds can be effectively carried out and the filtering performance can be improved.
[022] De acordo com uma modalidade do presente documento, as informações para filtragem em loop com base nos limites virtuais podem ser sinalizadas de forma eficaz.[022] According to one embodiment of the present document, information for loop filtering based on virtual boundaries can be signaled effectively.
[023] De acordo com uma modalidade do presente documento, s informações relacionadas à subimagem podem ser sinalizadas de forma eficaz. Portanto, a qualidade da imagem subjetiva/objetiva pode ser melhorada e pode haver uma diminuição no consumo de recursos de hardware necessários para a codificação.[023] According to one embodiment of the present document, information related to the subimage can be signaled effectively. Therefore, the subjective/objective image quality can be improved and there can be a decrease in the consumption of hardware resources required for encoding.
[024] A Figura 1 mostra esquematicamente um exemplo de um sistema de codificação de vídeo/imagem ao qual as modalidades da presente divulgação podem ser aplicadas.[024] Figure 1 schematically shows an example of a video/image coding system to which embodiments of the present disclosure can be applied.
[025] A Figura 2 é uma vista que ilustra esquematicamente a configuração de um aparelho de codificação de vídeo/imagem ao qual as modalidades da presente divulgação podem ser aplicadas.[025] Figure 2 is a view that schematically illustrates the configuration of a video/image coding apparatus to which embodiments of the present disclosure can be applied.
[026] A Figura 3 é uma vista que ilustra esquematicamente a configuração de um aparelho de decodificação de vídeo/imagem ao qual as modalidades da presente divulgação podem ser aplicadas.[026] Figure 3 is a view that schematically illustrates the configuration of a video/image decoding apparatus to which embodiments of the present disclosure can be applied.
[027] A Figura 4 mostra exemplificativamente uma arquitetura hierárquica para um vídeo/imagem codificado.[027] Figure 4 exemplifies a hierarchical architecture for an encoded video/image.
[028] A Figura 5 ilustra um exemplo de uma forma de filtro de filtragem de loop adaptável (ALF).[028] Figure 5 illustrates an example of a form of adaptive loop filtering (ALF) filter.
[029] A Figura 6 é um fluxograma que ilustra um método de codificação com base na filtragem em um aparelho de codificação.[029] Figure 6 is a flowchart illustrating a coding method based on filtering in a coding apparatus.
[030] A Figura 7 é um fluxograma que ilustra um método de decodificação com base na filtragem em um aparelho de decodificação.[030] Figure 7 is a flowchart illustrating a decoding method based on filtering in a decoding apparatus.
[031] A Figura 8 e Figura 9 mostram esquematicamente um exemplo de um método de codificação de vídeo/imagem e componentes relacionados de acordo com a(s) modalidade(s) do presente documento.[031] Figure 8 and Figure 9 schematically show an example of a video/image coding method and related components in accordance with the embodiment(s) of the present document.
[032] A Figura 10 e Figura 11 mostram esquematicamente um exemplo de um método de decodificação de imagem/vídeo e componentes relacionados de acordo com uma(s) modalidade(s) do presente documento.[032] Figure 10 and Figure 11 schematically show an example of an image/video decoding method and related components in accordance with an embodiment(s) of the present document.
[033] A Figura 12 mostra um exemplo de um sistema de streaming de conteúdo ao qual a(s) modalidade(s) divulgada(s) no presente documento podem ser aplicadas.[033] Figure 12 shows an example of a content streaming system to which the modality(s) disclosed in this document can be applied.
[034] A presente divulgação pode ser modificada de várias formas, e suas modalidades específicas serão descritas e ilustradas nos desenhos. No entanto, as modalidades não se destinam a limitar a divulgação. Os termos usados na descrição a seguir são usados para meramente descrever modalidades específicas, mas não se destinam a limitar a divulgação. Uma expressão de um número singular inclui uma expressão do número plural, desde que seja claramente lida de forma diferente. Os termos como “incluir” e “ter” destinam-se a indicar que existem recursos, números, etapas, operações, elementos, componentes ou combinações dos mesmos usados na descrição a seguir e, portanto, deve ser entendido que a possibilidade de existência ou adição de um ou mais recursos, números, etapas, operações, elementos, componentes ou combinações diferentes dos mesmos não é excluído.[034] The present disclosure can be modified in various ways, and its specific embodiments will be described and illustrated in the drawings. However, the modalities are not intended to limit disclosure. The terms used in the following description are used to merely describe specific embodiments, but are not intended to limit the disclosure. A singular number expression includes a plural number expression as long as it is clearly read differently. Terms such as “include” and “have” are intended to indicate that there are features, numbers, steps, operations, elements, components or combinations thereof used in the following description and therefore it should be understood that the possibility of existence or addition of one or more different features, numbers, steps, operations, elements, components or combinations thereof is not excluded.
[035] Enquanto isso, cada configuração dos desenhos descritos neste documento é uma ilustração independente para explicar funções como características que são diferentes umas das outras, e não significa que cada configuração seja implementada por hardware ou software mutuamente diferentes. Por exemplo, duas ou mais configurações podem ser combinadas para formar uma configuração e uma configuração também pode ser dividida em várias configurações. Sem sair da essência deste documento, as modalidades nas quais as configurações são combinadas e/ou separadas estão incluídas no escopo das reivindicações.[035] Meanwhile, each configuration of the drawings described in this document is an independent illustration to explain functions as characteristics that are different from each other, and does not mean that each configuration is implemented by mutually different hardware or software. For example, two or more configurations can be combined to form a configuration, and a configuration can also be divided into multiple configurations. Without departing from the essence of this document, embodiments in which configurations are combined and/or separated are included within the scope of the claims.
[036] A seguir, exemplos da presente modalidade serão descritos em detalhes com referência aos desenhos anexos. Além disso, números de referência semelhantes são usados para indicar elementos semelhantes ao longo dos desenhos, e as mesmas descrições nos elementos semelhantes serão omitidas.[036] In the following, examples of the present embodiment will be described in detail with reference to the attached drawings. In addition, similar reference numbers are used to indicate similar elements throughout the drawings, and the same descriptions on similar elements will be omitted.
[037] Este documento refere-se à codificação de vídeo/imagem. Por exemplo, os métodos/modalidades divulgados neste documento podem estar relacionados ao padrão de codificação de vídeo versátil (VVC) (ITU-T Rec. H.266), o padrão de codificação de vídeo/imagem de próxima geração após VVC, ou outros padrões relacionados à codificação de vídeo (por exemplo, padrão de codificação de vídeo de alta eficiência (HEVC) (ITU-T Rec. H.265), padrão de codificação de vídeo essencial (EVC), padrão AVS2 e semelhantes).[037] This document refers to video/image coding. For example, the methods/embodiments disclosed in this document may be related to the versatile video coding (VVC) standard (ITU-T Rec. H.266), the next generation video/image coding standard after VVC, or other standards related to video coding (e.g. High Efficiency Video Coding (HEVC) standard (ITU-T Rec. H.265), Essential Video Coding (EVC) standard, AVS2 standard, and the like).
[038] Este documento sugere várias modalidades de codificação de vídeo/imagem, e as modalidades acima também podem ser realizadas em combinação umas com as outras, a menos que especificado de outra forma.[038] This document suggests several video/image coding modalities, and the above modalities can also be carried out in combination with each other, unless otherwise specified.
[039] Neste documento, um vídeo pode se referir a uma série de imagens ao longo do tempo. Uma imagem geralmente se refere à unidade que representa uma imagem em um determinado período de tempo, e uma fatia/bloco refere-se à unidade que constitui uma parte da imagem em termos de codificação. Uma fatia/bloco pode incluir uma ou mais unidades de árvore de codificação (CTUs). Uma imagem pode consistir em uma ou mais fatias/blocos. Uma imagem pode consistir em um ou mais grupos de blocos. Um grupo de blocos pode incluir um ou mais blocos.[039] In this document, a video may refer to a series of images over time. An image generally refers to the unit that represents an image in a given period of time, and a slice/block refers to the unit that constitutes a part of the image in terms of encoding. A slice/block may include one or more coding tree units (CTUs). An image can consist of one or more slices/blocks. An image can consist of one or more groups of blocks. A block group can include one or more blocks.
[040] Um pixel ou um pel pode significar uma unidade menor que constitui uma imagem (ou imagem). Além disso, 'amostra' pode ser usada como um termo correspondente a um pixel. Uma amostra geralmente pode representar um pixel ou um valor de um pixel e pode representar apenas um valor de pixel/pixel de um componente de luma ou apenas um valor de pixel/pixel de um componente de croma.[040] A pixel or a pel can mean a smaller unit that constitutes an image (or image). Additionally, 'sample' can be used as a term corresponding to a pixel. A swatch can generally represent a pixel or a value of a pixel, and can represent just a pixel/pixel value of a luma component or just a pixel/pixel value of a chroma component.
[041] Uma unidade pode representar uma unidade básica de processamento de imagem. A unidade pode incluir pelo menos uma região específica da imagem e informações relacionadas à região. Uma unidade pode incluir um bloco de luma e dois blocos de croma (por exemplo, cb, cr). A unidade pode ser usada de forma intercambiável com termos como bloco ou área em alguns casos. Em um caso geral, um bloco M x N pode incluir amostras (ou matrizes de amostras) ou um conjunto (ou matriz) de coeficientes de transformada de M colunas e N linhas. Alternativamente, a amostra pode significar um valor de pixel no domínio espacial, e quando tal valor de pixel é transformado no domínio da frequência, pode significar um coeficiente de transformada no domínio da frequência.[041] A unit may represent a basic image processing unit. The unit may include at least one specific region of the image and information related to the region. A unit may include one luma block and two chroma blocks (e.g. cb, cr). The unit may be used interchangeably with terms such as block or area in some cases. In a general case, an M x N block may include samples (or samples matrices) or a set (or matrix) of M column and N row transform coefficients. Alternatively, the sample may mean a pixel value in the spatial domain, and when such a pixel value is transformed in the frequency domain, it may mean a transform coefficient in the frequency domain.
[042] Neste documento, os termos “/” e “,” devem ser interpretados para indicar “e/ou”. Por exemplo, a expressão “A/B” pode significar “A e/ou B”. Além disso, “A, B” pode significar “A e/ou B”. Além disso, “A/B/C” pode significar “pelo menos um dentre A, B e/ou C”. Além disso, “A/B/C” pode significar “pelo menos um dentre A, B e/ou C”.[042] In this document, the terms “/” and “,” should be interpreted to indicate “and/or”. For example, the expression “A/B” can mean “A and/or B”. Furthermore, “A, B” can mean “A and/or B”. Furthermore, “A/B/C” can mean “at least one of A, B and/or C”. Furthermore, “A/B/C” can mean “at least one of A, B and/or C”.
[043] Além disso, no documento, o termo “ou” deve ser interpretado para indicar “e/ou”. Por exemplo, a expressão “A ou B” pode compreender 1) apenas A, 2) apenas B e/ou 3) A e B. Em outras palavras, o termo “ou” neste documento deve ser interpretado para indicar “ adicionalmente ou alternativamente”.[043] Furthermore, in the document, the term “or” must be interpreted to indicate “and/or”. For example, the expression “A or B” may comprise 1) A only, 2) B only, and/or 3) A and B. In other words, the term “or” in this document should be interpreted to indicate “additionally or alternatively ”.
[044] No presente relatório descritivo, “pelo menos um de A e B” pode significar “apenas A”, “apenas B” ou “ambos A e B”. Além disso, no presente relatório descritivo, a expressão “pelo menos um de A ou B” ou “pelo menos um de A e/ou B” pode ser interpretada da mesma forma que “pelo menos um de A e B”.[044] In the present specification, “at least one of A and B” may mean “only A”, “only B” or “both A and B”. Furthermore, in this specification, the expression “at least one of A or B” or “at least one of A and/or B” can be interpreted in the same way as “at least one of A and B”.
[045] Além disso, no presente relatório descritivo, “pelo menos um de A, B e C” pode significar “apenas A”, “apenas B”, “apenas C” ou “qualquer combinação de A, B e C”. Além disso, “pelo menos um de A, B ou C” ou “pelo menos um de A, B e/ou C” pode significar “pelo menos um de A, B e C”.[045] Furthermore, in the present specification, “at least one of A, B and C” may mean “A only”, “B only”, “C only” or “any combination of A, B and C”. Furthermore, “at least one of A, B or C” or “at least one of A, B and/or C” can mean “at least one of A, B and C”.
[046] Além disso, os parênteses usados no presente relatório descritivo podem significar “por exemplo”. Especificamente, no caso de “predição (intra predição)” ser expressa, pode-se indicar que “intra predição” é proposta como um exemplo de “predição”. Em outras palavras, o termo “predição” no presente relatório descritivo não se limita a “intra predição”, e pode ser indicado que “intra predição” é proposto como um exemplo de “predição”. Além disso, mesmo no caso de “predição (isto é, intra predição)” ser expressa, pode-se indicar que “intra predição” é proposta como um exemplo de “predição”.[046] Furthermore, the parentheses used in this specification may mean “for example”. Specifically, in case “prediction (intra prediction)” is expressed, it can be indicated that “intra prediction” is proposed as an example of “prediction”. In other words, the term “prediction” in the present specification is not limited to “intra prediction”, and it may be indicated that “intra prediction” is proposed as an example of “prediction”. Furthermore, even in the case where “prediction (i.e., intra prediction)” is expressed, it can be indicated that “intra prediction” is proposed as an example of “prediction”.
[047] No presente relatório descritivo, as características técnicas explicadas individualmente em um desenho podem ser implementadas individualmente, ou podem ser implementadas simultaneamente.[047] In the present specification, the technical characteristics explained individually in a drawing can be implemented individually, or can be implemented simultaneously.
[048] A Figura 1 ilustra um exemplo de um sistema de codificação de vídeo/imagem ao qual a divulgação do presente documento pode ser aplicada.[048] Figure 1 illustrates an example of a video/image coding system to which the disclosure of this document can be applied.
[049] Com referência à Figura 1, um sistema de codificação de vídeo/imagem pode incluir um dispositivo de origem e um dispositivo de recepção. O dispositivo de origem pode transmitir informações ou dados de vídeo/imagem codificados para o dispositivo de recepção através de um meio de armazenamento digital ou rede na forma de um arquivo ou streaming.[049] Referring to Figure 1, a video/image coding system may include a source device and a receiving device. The source device may transmit information or encoded video/image data to the receiving device via a digital storage medium or network in the form of a file or stream.
[050] O dispositivo de origem pode incluir uma fonte de vídeo, um aparelho de codificação e um transmissor. O dispositivo receptor pode incluir um receptor, um aparelho de decodificação e um renderizador. O aparelho de codificação pode ser chamado de aparelho de codificação de vídeo/imagem, e o aparelho de decodificação pode ser chamado de aparelho de decodificação de vídeo/imagem. O transmissor pode ser incluído no aparelho de codificação. O receptor pode ser incluído no aparelho de decodificação. O renderizador pode incluir uma exibição e a exibição pode ser configurada como um dispositivo separado ou um componente externo.[050] The source device may include a video source, an encoding apparatus, and a transmitter. The receiving device may include a receiver, a decoding apparatus, and a renderer. The encoding apparatus may be called a video/image encoding apparatus, and the decoding apparatus may be called a video/image decoding apparatus. The transmitter may be included in the coding apparatus. The receiver may be included in the decoding apparatus. The renderer can include a view, and the view can be configured as a separate device or an external component.
[051] A fonte de vídeo pode adquirir vídeo/imagem por meio de um processo de captura, síntese ou geração do vídeo/imagem. A fonte de vídeo pode incluir um dispositivo de captura de vídeo/imagem e/ou um dispositivo de geração de vídeo/imagem. O dispositivo de captura de vídeo/imagem pode incluir, por exemplo, uma ou mais câmeras, arquivos de vídeo/imagem incluindo vídeo/imagens capturados anteriormente e semelhantes. O dispositivo de geração de vídeo/imagem pode incluir, por exemplo, computadores, tablets e smartphones e pode (eletronicamente) gerar vídeo/imagens. Por exemplo, um vídeo/imagem virtual pode ser gerado por meio de um computador ou semelhante. Neste caso, o processo de captura de vídeo/imagem pode ser substituído por um processo de geração de dados relacionados.[051] The video source may acquire video/image through a video/image capture, synthesis or generation process. The video source may include a video/image capture device and/or a video/image generating device. The video/image capture device may include, for example, one or more cameras, video/image files including previously captured video/images, and the like. The video/image generating device may include, for example, computers, tablets and smartphones and may (electronically) generate video/images. For example, a virtual video/image may be generated using a computer or the like. In this case, the video/image capture process can be replaced by a related data generation process.
[052] O aparelho de codificação pode codificar vídeo/imagem de entrada. O aparelho de codificação pode realizar uma série de processos, como predição, transformada e quantização para compactação e eficiência de codificação. Os dados codificados (informações de vídeo/imagem codificadas) podem ser emitidos na forma de um fluxo de bits.[052] The encoding apparatus can encode input video/image. The coding apparatus can perform a series of processes such as prediction, transform, and quantization for compression and coding efficiency. The encoded data (encoded video/image information) can be output in the form of a bit stream.
[053] O transmissor pode transmitir a imagem codificada/informações de imagem ou saída de dados na forma de um fluxo de bits para o receptor do dispositivo de recepção através de um meio de armazenamento digital ou uma rede na forma de um arquivo ou fluxo. O meio de armazenamento digital pode incluir vários meios de armazenamento, como USB, SD, CD, DVD, Blu-ray, HDD, SSD e semelhantes. O transmissor pode incluir um elemento para gerar um arquivo de mídia através de um formato de arquivo predeterminado e pode incluir um elemento para transmissão através de uma rede de transmissão/comunicação. O receptor pode receber/extrair o fluxo de bits e transmitir o fluxo de bits recebido para o aparelho de decodificação.[053] The transmitter may transmit the encoded image/image information or data output in the form of a bit stream to the receiver of the receiving device via a digital storage medium or a network in the form of a file or stream. Digital storage medium can include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, SSD and the like. The transmitter may include an element for generating a media file via a predetermined file format and may include an element for transmission over a transmission/communication network. The receiver can receive/extract the bit stream and transmit the received bit stream to the decoding apparatus.
[054] O aparelho de decodificação pode decodificar o vídeo/imagem realizando uma série de processos, como desquantização, transformada inversa e predição correspondente à operação do aparelho de codificação.[054] The decoding apparatus can decode the video/image by performing a series of processes, such as dequantization, inverse transform and prediction corresponding to the operation of the encoding apparatus.
[055] O renderizador pode renderizar o vídeo/imagem decodificado. O vídeo/imagem renderizado pode ser exibido através da tela.[055] The renderer can render the decoded video/image. The rendered video/image can be displayed across the screen.
[056] A Figura 2 é um diagrama que ilustra esquematicamente a configuração de um aparelho de codificação de vídeo/imagem ao qual a divulgação do presente documento pode ser aplicada. Em seguida, o que é referido como o aparelho de codificação de vídeo pode incluir um aparelho de codificação de imagem.[056] Figure 2 is a diagram that schematically illustrates the configuration of a video/image coding apparatus to which the disclosure of the present document can be applied. Next, what is referred to as the video coding apparatus may include an image coding apparatus.
[057] Com referência à Figura 2, o aparelho de codificação 200 pode incluir e ser configurado com um particionador de imagem 210, um preditor 220, um processador residual 230, um codificador de entropia 240, um somador 250, um filtro 260 e uma memória 270. O preditor 220 pode incluir um inter preditor 221 e um intra preditor 222. O processador residual 230 pode incluir um transformador 232, um quantizador 233, um dequantizador 234 e um transformador inverso 235. O processador residual 230 pode incluir ainda um subtrator 231. O somador 250 pode ser chamado um reconstrutor ou gerador de bloco reconstruído. O particionador de imagem 210, o preditor 220, o processador residual 230, o codificador de entropia 240, o somador 250 e o filtro 260, que foram descritos acima, podem ser configurados por um ou mais componentes de hardware (por exemplo, chipsets de codificador ou processadores) de acordo com uma modalidade. Além disso, a memória 270 pode incluir um buffer de imagem decodificado (DPB) e também pode ser configurada por um meio de armazenamento digital. O componente de hardware pode incluir ainda a memória 270 como um componente interno/externo.[057] Referring to Figure 2, the coding apparatus 200 may include and be configured with an image partitioner 210, a predictor 220, a residual processor 230, an entropy encoder 240, an adder 250, a filter 260, and a memory 270. The predictor 220 may include an inter predictor 221 and an intra predictor 222. The residual processor 230 may include a transformer 232, a quantizer 233, a dequantizer 234, and an inverse transformer 235. The residual processor 230 may further include a subtractor 231. The adder 250 may be called a reconstructed block generator or reconstructor. The image partitioner 210, predictor 220, residual processor 230, entropy encoder 240, adder 250, and filter 260, which have been described above, may be configured by one or more hardware components (e.g., computer chipsets). encoder or processors) according to an embodiment. Additionally, memory 270 may include a decoded picture buffer (DPB) and may also be configured by a digital storage medium. The hardware component may further include memory 270 as an internal/external component.
[058] O particionador de imagem 210 pode dividir uma imagem de entrada (ou imagem, quadro) de entrada para o aparelho de codificação 200 em uma ou mais unidades de processamento. Como exemplo, a unidade de processamento pode ser chamada de unidade de codificação (CU). Neste caso, a unidade de codificação pode ser dividida recursivamente de acordo com uma estrutura de árvore ternária de árvore binária Quad-tree (QTBTTT) de uma unidade de árvore de codificação (CTU) ou a maior unidade de codificação (LCU). Por exemplo, uma unidade de codificação pode ser dividida em uma pluralidade de unidades de codificação de uma profundidade mais profunda com base em uma estrutura de árvore quádrupla, uma estrutura de árvore binária e/ou uma estrutura de árvore ternária. Neste caso, por exemplo, a estrutura de árvore quádrupla é aplicada primeiro e a estrutura de árvore binária e/ou a estrutura de árvore ternária podem ser aplicadas posteriormente. Alternativamente, a estrutura de árvore binária também pode ser aplicada primeiro. Um processo de codificação de acordo com a presente divulgação pode ser realizado com base em uma unidade de codificação final que não é mais dividida. Neste caso, com base na eficiência de codificação de acordo com as características da imagem ou semelhantes, a unidade de codificação máxima pode ser usada diretamente como a unidade de codificação final ou, conforme necessário, a unidade de codificação pode ser dividida recursivamente em unidades de codificação de maior profundidade, como que uma unidade de codificação com um tamanho ótimo pode ser usada como a unidade de codificação final. Aqui, o processo de codificação pode incluir um processo como predição, transformada e reconstrução a ser descrito posteriormente. Como outro exemplo, a unidade de processamento pode incluir ainda uma unidade de predição (PU) ou uma unidade de transformada (TU). Neste caso, cada unidade de predição e unidade de transformada podem ser divididas ou particionadas da unidade de codificação final acima mencionada. A unidade de predição pode ser uma unidade de predição de amostra e a unidade de transformada pode ser uma unidade para induzir um coeficiente de transformada e/ou uma unidade para induzir um sinal residual do coeficiente de transformada.[058] The image partitioner 210 may divide an input image (or image, frame) input to the encoding apparatus 200 into one or more processing units. As an example, the processing unit may be called the coding unit (CU). In this case, the coding unit can be divided recursively according to a Quad-tree binary tree ternary tree (QTBTTT) structure of a coding tree unit (CTU) or the largest coding unit (LCU). For example, a coding unit may be divided into a plurality of coding units of a deeper depth based on a quadruple tree structure, a binary tree structure, and/or a ternary tree structure. In this case, for example, the quadruple tree structure is applied first and the binary tree structure and/or the ternary tree structure can be applied later. Alternatively, the binary tree structure can also be applied first. A coding process in accordance with the present disclosure may be carried out based on a final coding unit that is not further divided. In this case, based on the coding efficiency according to image characteristics or the like, the maximum coding unit can be directly used as the final coding unit, or as necessary, the coding unit can be recursively divided into deeper coding, such that a coding unit with an optimal size can be used as the final coding unit. Here, the coding process may include a process such as prediction, transformation and reconstruction to be described later. As another example, the processing unit may further include a prediction unit (PU) or a transform unit (TU). In this case, each prediction unit and transform unit can be divided or partitioned from the aforementioned final coding unit. The prediction unit may be a sample prediction unit and the transform unit may be a unit for inducing a transform coefficient and/or a unit for inducing a residual signal of the transform coefficient.
[059] A unidade pode ser usada de forma intercambiável com o termo como um bloco ou uma área em alguns casos. Geralmente, um bloco M x N pode representar amostras compostas por M colunas e N linhas ou um grupo de coeficientes de transformada. A amostra pode geralmente representar um pixel ou um valor do pixel, e também pode representar apenas o valor de pixel/pixel de um componente de luma e também representar apenas o valor de pixel/pixel de um componente de croma. A amostra pode ser usada como o termo correspondente a um pixel ou pel configurando uma imagem (ou imagem).[059] The unit can be used interchangeably with the term as a block or an area in some cases. Generally, an M x N block can represent samples composed of M columns and N rows or a group of transform coefficients. The sample may generally represent a pixel or a pixel value, and may also represent only the pixel/pixel value of a luma component, and may also represent only the pixel/pixel value of a chroma component. Sample can be used as the term corresponding to a pixel or pel configuring an image (or image).
[060] O subtrator 231 pode gerar um sinal residual (bloco residual, amostras residuais ou matriz de amostra residual) subtraindo um sinal de predição (bloco predito, amostras de predição ou matriz de amostra de predição) de saída do preditor 220 de um sinal de imagem de entrada (bloco original, amostras originais ou matriz de amostra original), e o sinal residual gerado é transmitido para o transformador 232. O preditor 220 pode realizar a predição para um bloco alvo de processamento (doravante, denominado como um “bloco atual”) e gerar um bloco predito incluindo amostras de predição para o bloco atual. O preditor 220 pode determinar se a intra predição ou inter predição é aplicada em um bloco atual ou em uma unidade de CU. Conforme descrito posteriormente na descrição de cada modo de predição, o preditor pode gerar vários tipos de informações relacionadas à predição, como informações de modo de predição, e transferir as informações geradas para o codificador de entropia 240. As informações sobre a predição podem ser codificadas no codificador de entropia 240 e saída na forma de um fluxo de bits.[060] Subtractor 231 may generate a residual signal (residual block, residual samples, or residual sample matrix) by subtracting a prediction signal (predicted block, prediction samples, or prediction sample matrix) output of the predictor 220 from a signal of input image (original block, original samples or original sample matrix), and the generated residual signal is transmitted to the transformer 232. The predictor 220 can perform the prediction for a processing target block (hereinafter, referred to as a “block current”) and generate a predicted block including prediction samples for the current block. The predictor 220 can determine whether the intra prediction or inter prediction is applied to a current block or a CU unit. As described later in the description of each prediction mode, the predictor can generate various types of prediction-related information, such as prediction mode information, and transfer the generated information to the entropy encoder 240. The prediction information can be encoded into the entropy encoder 240 and output in the form of a bit stream.
[061] O intra preditor 222 pode prever um bloco atual com referência a amostras dentro de uma imagem atual. As amostras referenciadas podem estar localizadas vizinhas ao bloco atual ou também podem estar localizadas longe do bloco atual de acordo com o modo de predição. Os modos de predição na intra predição podem incluir uma pluralidade de modos não direcionais e uma pluralidade de modos direcionais. O modo não direcional pode incluir, por exemplo, um modo DC ou um modo planar. O modo direcional pode incluir, por exemplo, 33 modos de predição direcionais ou 65 modos de predição direcionais de acordo com o grau fino da direção de predição. No entanto, isso é ilustrativo e os modos de predição direcional que são mais ou menos do que o número acima podem ser usados de acordo com a configuração. O intra preditor 222 também pode determinar o modo de predição aplicado ao bloco atual usando o modo de predição aplicado ao bloco vizinho.[061] The intra predictor 222 may predict a current block with reference to samples within a current image. The referenced samples can be located neighboring the current block or can also be located far from the current block according to the prediction mode. The prediction modes in intra prediction may include a plurality of non-directional modes and a plurality of directional modes. The non-directional mode may include, for example, a DC mode or a planar mode. The directional mode may include, for example, 33 directional prediction modes or 65 directional prediction modes according to the fine degree of the prediction direction. However, this is illustrative and directional prediction modes that are more or less than the above number can be used according to the configuration. The intra predictor 222 may also determine the prediction mode applied to the current block using the prediction mode applied to the neighboring block.
[062] O inter preditor 221 pode induzir um bloco predito do bloco atual com base em um bloco de referência (matriz de amostra de referência) especificado por um vetor de movimento em uma imagem de referência. Neste momento, a fim de diminuir a quantidade de informações de movimento transmitidas no modo de predição entre, as informações de movimento podem ser previstas em unidades de um bloco, um sub-bloco ou uma amostra com base na correlação das informações de movimento entre o bloco vizinho e o bloco atual. A informação de movimento pode incluir um vetor de movimento e um índice de imagem de referência. As informações de movimento podem incluir ainda informações de direção inter predição (predição L0, predição L1, predição Bi ou semelhantes). No caso da inter predição, o bloco vizinho pode incluir um bloco vizinho espacial existente na imagem atual e um bloco vizinho temporal existente na imagem de referência. A imagem de referência incluindo o bloco de referência e a imagem de referência incluindo o bloco vizinho temporal também podem ser iguais entre si e também podem ser diferentes uma da outra. O bloco vizinho temporal pode ser chamado de nome tal como um bloco de referência colocado, uma CU colocada (colCU), ou semelhante, e a imagem de referência incluindo o bloco vizinho temporal também pode ser chamada de imagem colocada (colPic). Por exemplo, o inter preditor 221 pode configurar uma lista de candidatos de informações de movimento com base nos blocos vizinhos e gerar informações indicando qual candidato é usado para derivar o vetor de movimento e/ou o índice de imagem de referência do bloco atual. A inter predição pode ser realizada com base em vários modos de predição e, por exemplo, no caso de um modo de salto e um modo de mesclagem, o inter preditor 221 pode usar as informações de movimento do bloco vizinho como as informações de movimento do bloco atual. No caso do modo de salto, o sinal residual não pode ser transmitido ao contrário do modo de mesclagem. Um modo de predição de vetor de movimento (MVP) pode indicar o vetor de movimento do bloco atual usando o vetor de movimento do bloco vizinho como um preditor de vetor de movimento e sinalizando uma diferença de vetor de movimento.[062] The inter predictor 221 may induce a predicted block from the current block based on a reference block (reference sample array) specified by a motion vector in a reference image. At this time, in order to decrease the amount of motion information transmitted in the between prediction mode, the motion information can be predicted in units of a block, a sub-block or a sample based on the correlation of the motion information between the neighboring block and the current block. The motion information may include a motion vector and a reference image index. The motion information may further include inter-prediction direction information (L0 prediction, L1 prediction, Bi prediction or the like). In the case of inter prediction, the neighboring block may include a spatial neighboring block existing in the current image and a temporal neighboring block existing in the reference image. The reference image including the reference block and the reference image including the temporal neighboring block may also be the same as each other and may also be different from each other. The temporal neighbor block may be called such a name as a collocated reference block, a collocated CU (colCU), or the like, and the reference image including the temporal neighbor block may also be called a collocated image (colPic). For example, inter predictor 221 may configure a candidate list of motion information based on neighboring blocks and generate information indicating which candidate is used to derive the motion vector and/or reference image index of the current block. Inter prediction can be performed based on various prediction modes, and for example, in the case of a skip mode and a merge mode, the inter predictor 221 can use the movement information of the neighboring block as the movement information of the current block. In case of skip mode, the residual signal cannot be transmitted unlike in blending mode. A motion vector prediction (MVP) mode can indicate the motion vector of the current block by using the motion vector of the neighboring block as a motion vector predictor and signaling a motion vector difference.
[063] O preditor 220 pode gerar um sinal de predição com base em vários métodos de predição descritos abaixo. Por exemplo, o preditor pode não apenas aplicar intra predição ou inter predição para prever um bloco, mas também aplicar simultaneamente intra predição e inter predição. Isso pode ser chamado de predição combinada inter e intra (CIIP). Além disso, o preditor pode realizar uma cópia intrabloco (IBC) para predição de um bloco. A cópia intrabloco pode ser usada para codificação de imagem de conteúdo/imagem em movimento de um jogo ou semelhante, por exemplo, codificação de conteúdo de tela (SCC). A IBC basicamente realiza a predição na imagem atual, mas pode ser realizada de forma semelhante à inter predição em que um bloco de referência é derivado na imagem atual. Ou seja, a IBC pode usar pelo menos uma das técnicas de inter predição descritas no presente documento.[063] The predictor 220 may generate a prediction signal based on various prediction methods described below. For example, the predictor can not only apply intra prediction or inter prediction to predict a block, but also simultaneously apply intra prediction and inter prediction. This can be called combined inter and intra prediction (CIIP). Furthermore, the predictor can perform an intra-block copy (IBC) to predict a block. Intrablock copy can be used for content/moving image coding of a game or the like, for example screen content coding (SCC). IBC basically performs prediction on the current image, but it can be performed in a similar way to inter prediction where a reference block is derived on the current image. That is, the IBC may use at least one of the interprediction techniques described in this document.
[064] O sinal de predição gerado através do inter preditor 221 e/ou do intra preditor 222 pode ser usado para gerar um sinal reconstruído ou para gerar um sinal residual. O transformador 232 pode gerar coeficientes de transformada aplicando uma técnica de transformada ao sinal residual. Por exemplo, a técnica de transformada pode incluir pelo menos uma transformada discreta de cosseno (DCT), uma transformada discreta de seno (DST), uma transformada baseada em gráfico (GBT) ou uma transformada condicionalmente não linear (CNT). Aqui, a transformada de médias GBT obtida de um gráfico quando as informações de relacionamento entre pixels são representadas pelo gráfico. A CNT refere-se à transformada obtida com base em um sinal de predição gerado usando todos os pixels reconstruídos anteriormente. Além disso, o processo de transformada pode ser aplicado a blocos de pixels quadrados com o mesmo tamanho, ou pode ser aplicado a blocos com um tamanho variável em vez de um quadrado.[064] The prediction signal generated through the inter predictor 221 and/or the intra predictor 222 can be used to generate a reconstructed signal or to generate a residual signal. Transformer 232 can generate transform coefficients by applying a transform technique to the residual signal. For example, the transform technique may include at least a discrete cosine transform (DCT), a discrete sine transform (DST), a graph-based transform (GBT), or a conditionally nonlinear transform (CNT). Here, the GBT means transform obtained from a graph when the relationship information between pixels is represented by the graph. CNT refers to the transform obtained based on a prediction signal generated using all previously reconstructed pixels. Furthermore, the transform process can be applied to blocks of square pixels with the same size, or it can be applied to blocks with a variable size instead of a square.
[065] O quantizador 233 pode quantificar os coeficientes de transformada e transmiti-los ao codificador de entropia 240, e o codificador de entropia 240 pode codificar o sinal quantificado (informações sobre os coeficientes de transformada quantificados) e emitir um fluxo de bits. A informação sobre os coeficientes de transformada quantizados pode ser denominada como informação residual. O quantizador 233 pode rearranjar os coeficientes de transformada quantificados do tipo bloco em uma forma de vetor unidimensional com base em uma ordem de varredura de coeficiente e gerar informações sobre os coeficientes de transformada quantificados com base nos coeficientes de transformada quantificados na forma de vetor unidimensional. O codificador de entropia 240 pode realizar vários métodos de codificação, tais como, por exemplo, Golomb exponencial, codificação de comprimento variável adaptável ao contexto (CAVLC), codificação aritmética binária adaptável ao contexto (CABAC) e semelhantes. O codificador de entropia 240 pode codificar informações necessárias para reconstrução de vídeo/imagem em conjunto ou separadamente dos coeficientes de transformada quantizados (por exemplo, valores de elementos de sintaxe e semelhantes). As informações codificadas (por exemplo, informações de vídeo/imagem codificadas) podem ser transmitidas ou armazenadas na unidade de uma camada de abstração de rede (NAL) na forma de um fluxo de bits. As informações de vídeo/imagem podem ainda incluir informações sobre vários conjuntos de parâmetros, como um conjunto de parâmetros de adaptação (APS), um conjunto de parâmetros de imagem (PPS), um conjunto de parâmetros de sequência (SPS) ou um conjunto de parâmetros de vídeo (VPS). Além disso, as informações de vídeo/imagem podem incluir ainda informações gerais de restrição. No presente documento, informações e/ou elementos de sintaxe sendo sinalizados/transmitidos para serem descritos posteriormente podem ser codificados através do processo de codificação descrito acima e serem incluídos no fluxo de bits. O fluxo de bits pode ser transmitido através de uma rede ou pode ser armazenado em um meio de armazenamento digital. Aqui, a rede pode incluir uma rede de transmissão e/ou uma rede de comunicação e o meio de armazenamento digital pode incluir vários meios de armazenamento, como USB, SD, CD, DVD, Blu-ray, HDD, SSD e semelhantes. Um transmissor (não ilustrado) transmitindo uma saída de sinal do codificador de entropia 240 e/ou uma unidade de armazenamento (não ilustrada) armazenando o sinal pode ser configurado como um elemento interno/externo do aparelho de codificação 200 e, alternativamente, o transmissor pode ser incluído no codificador de entropia 240.[065] The quantizer 233 can quantify the transform coefficients and transmit them to the entropy encoder 240, and the entropy encoder 240 can encode the quantized signal (information about the quantized transform coefficients) and output a bit stream. The information about the quantized transform coefficients can be termed as residual information. The quantizer 233 can rearrange the block-type quantized transform coefficients into a one-dimensional vector form based on a coefficient sweep order and generate information about the quantized transform coefficients based on the quantized transform coefficients in the one-dimensional vector form. The entropy encoder 240 can realize various encoding methods, such as, for example, exponential Golomb, context-adaptive variable-length coding (CAVLC), context-adaptive binary arithmetic coding (CABAC), and the like. The entropy encoder 240 may encode information necessary for video/image reconstruction together or separately from the quantized transform coefficients (e.g., values of syntax elements and the like). The encoded information (e.g., encoded video/image information) may be transmitted or stored in the unit of a network abstraction layer (NAL) in the form of a bit stream. The video/image information may further include information about various parameter sets, such as an adaptation parameter set (APS), an image parameter set (PPS), a sequence parameter set (SPS), or a set of video parameters (VPS). Additionally, video/image information may also include general restriction information. In the present document, information and/or syntax elements being signaled/transmitted to be described later may be encoded through the encoding process described above and be included in the bit stream. The bit stream can be transmitted over a network or can be stored on a digital storage medium. Here, the network may include a transmission network and/or a communication network and the digital storage medium may include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, SSD and the like. A transmitter (not illustrated) transmitting a signal output from the entropy encoder 240 and/or a storage unit (not illustrated) storing the signal may be configured as an internal/external element of the coding apparatus 200 and, alternatively, the transmitter may be included in the entropy encoder 240.
[066] Os coeficientes de transformada quantificados de saída do quantizador 233 podem ser usados para gerar um sinal de predição. Por exemplo, o sinal residual (bloco residual ou amostras residuais) pode ser reconstruído aplicando desquantização e transformada inversa aos coeficientes de transformada quantificados através do desquantizador 234 e do transformador inverso 235. O somador 250 adiciona o sinal residual reconstruído à saída do sinal de predição do preditor 220 para gerar um sinal reconstruído (imagem reconstruída, bloco reconstruído, amostras reconstruídas ou matriz de amostras reconstruídas). Se não houver resíduo para o bloco alvo de processamento, como no caso em que um modo de salto é aplicado, o bloco predito pode ser usado como o bloco reconstruído. O sinal reconstruído gerado pode ser usado para intra predição de um próximo bloco alvo de processamento na imagem atual e pode ser usado para inter predição de uma próxima imagem através de filtragem conforme descrito abaixo.[066] The quantized transform coefficients output from the quantizer 233 can be used to generate a prediction signal. For example, the residual signal (residual block or residual samples) can be reconstructed by applying dequantization and inverse transform to the quantized transform coefficients via dequantizer 234 and inverse transformer 235. Adder 250 adds the reconstructed residual signal to the output of the prediction signal. of predictor 220 to generate a reconstructed signal (reconstructed image, reconstructed block, reconstructed samples, or reconstructed sample matrix). If there is no residue for the processing target block, as in the case where a skip mode is applied, the predicted block can be used as the reconstructed block. The generated reconstructed signal can be used for intra prediction of a next processing target block in the current image and can be used for inter prediction of a next image through filtering as described below.
[067] Enquanto isso, o mapeamento de luma com escala de croma (LMCS) pode ser aplicado durante um processo de codificação e/ou reconstrução de imagem.[067] Meanwhile, chroma-scaled luma mapping (LMCS) can be applied during an image encoding and/or reconstruction process.
[068] O filtro 260 pode melhorar a qualidade de imagem subjetiva/objetiva aplicando filtragem ao sinal reconstruído. Por exemplo, o filtro 260 pode gerar uma imagem reconstruída modificada aplicando vários métodos de filtragem à imagem reconstruída e armazenar a imagem reconstruída modificada na memória 270, especificamente, em um DPB da memória 270. Os vários métodos de filtragem podem incluir, por exemplo, filtragem de desbloqueio, um desvio adaptativo de amostra (SAO), um filtro de loop adaptativo, um filtro bilateral e semelhantes. O filtro 260 pode gerar vários tipos de informações relacionadas à filtragem e transferir as informações geradas para o codificador de entropia 290 conforme descrito posteriormente na descrição de cada método de filtragem. A informação relacionada com a filtragem pode ser codificada pelo codificador de entropia 290 e emitida na forma de um fluxo de bits.[068] Filter 260 can improve subjective/objective image quality by applying filtering to the reconstructed signal. For example, filter 260 may generate a modified reconstructed image by applying various filtering methods to the reconstructed image and store the modified reconstructed image in memory 270, specifically, in a DPB of memory 270. The various filtering methods may include, for example, deblocking filtering, an adaptive sample offset (SAO), an adaptive loop filter, a two-sided filter and the like. The filter 260 may generate various types of filtering-related information and transfer the generated information to the entropy encoder 290 as described later in the description of each filtering method. Information related to filtering may be encoded by entropy encoder 290 and output in the form of a bit stream.
[069] A imagem reconstruída modificada transmitida para a memória 270 pode ser usada como uma imagem de referência no inter preditor 221. Quando a inter predição é aplicada através do aparelho de codificação, a incompatibilidade de predição entre o aparelho de codificação 200 e o aparelho de decodificação pode ser evitada e a eficiência de codificação pode ser melhorada.[069] The modified reconstructed image transmitted to memory 270 can be used as a reference image in the inter predictor 221. When the inter prediction is applied through the coding apparatus, the prediction mismatch between the coding apparatus 200 and the coding apparatus decoding can be avoided and coding efficiency can be improved.
[070] O DPB da memória 270 pode armazenar a imagem reconstruída modificada para uso como imagem de referência no inter preditor 221. A memória 270 pode armazenar informações de movimento de um bloco do qual a informação de movimento na imagem atual é derivada (ou codificada) e/ou informações de movimento de blocos na imagem, já tendo sido reconstruídos. A informação de movimento armazenada pode ser transferida para o inter preditor 221 para ser utilizada como informação de movimento do bloco vizinho espacial ou informação de movimento do bloco vizinho temporal. A memória 270 pode armazenar amostras reconstruídas de blocos reconstruídos na imagem atual e pode transferir as amostras reconstruídas para o intra preditor 222.[070] The DPB of memory 270 may store the modified reconstructed image for use as a reference image in interpredictor 221. Memory 270 may store motion information of a block from which motion information in the current image is derived (or encoded). ) and/or movement information of blocks in the image, having already been reconstructed. The stored motion information may be transferred to the inter predictor 221 to be used as spatial neighbor block motion information or temporal neighbor block motion information. Memory 270 may store reconstructed samples from reconstructed blocks in the current image and may transfer the reconstructed samples to intra predictor 222.
[071] A Figura 3 é um diagrama para explicar esquematicamente a configuração de um aparelho de decodificação de vídeo/imagem ao qual a divulgação do presente documento pode ser aplicada.[071] Figure 3 is a diagram to schematically explain the configuration of a video/image decoding apparatus to which the disclosure of the present document can be applied.
[072] Com referência à Figura 3, o aparelho de decodificação 300 pode incluir e configurado com um decodificador de entropia 310, um processador residual 320, um preditor 330, um somador 340, um filtro 350 e uma memória 360. O preditor 330 pode incluir um inter preditor 331 e um intra preditor 332. O processador residual 320 pode incluir um dequantizador 321 e um transformador inverso 322. O decodificador de entropia 310, o processador residual 320, o preditor 330, o somador 340 e o filtro 350, que foram descritos acima, podem ser configurados por um ou mais componentes de hardware (por exemplo, chipsets ou processadores decodificadores) de acordo com uma modalidade. Além disso, a memória 360 pode incluir um buffer de imagem decodificado (DPB) e pode ser configurada por um meio de armazenamento digital. O componente de hardware pode incluir ainda a memória 360 como um componente interno/externo.[072] Referring to Figure 3, the decoding apparatus 300 may include and configured with an entropy decoder 310, a residual processor 320, a predictor 330, an adder 340, a filter 350, and a memory 360. The predictor 330 may include an inter predictor 331 and an intra predictor 332. The residual processor 320 may include a dequantizer 321 and an inverse transformer 322. The entropy decoder 310, the residual processor 320, the predictor 330, the adder 340, and the filter 350, which have been described above, may be configured by one or more hardware components (e.g., chipsets or decoder processors) according to one embodiment. Additionally, memory 360 may include a decoded picture buffer (DPB) and may be configured by a digital storage medium. The hardware component may further include memory 360 as an internal/external component.
[073] Quando o fluxo de bits incluindo as informações de vídeo/imagem é inserido, o aparelho de decodificação 300 pode reconstruir a imagem em resposta a um processo no qual a informação de vídeo/imagem é processada no aparelho de codificação ilustrado na Figura 2. Por exemplo, o aparelho de decodificação 300 pode derivar as unidades/blocos com base em informações relacionadas à divisão de bloco adquiridas do fluxo de bits. O aparelho de decodificação 300 pode realizar a decodificação usando a unidade de processamento aplicada ao aparelho de codificação. Portanto, a unidade de processamento para a decodificação pode ser, por exemplo, uma unidade de codificação e a unidade de codificação pode ser dividida de acordo com a estrutura de árvore quádrupla, a estrutura de árvore binária e/ou a estrutura de árvore ternária da unidade de codificação de árvore ou a unidade de codificação máxima. Uma ou mais unidades de transformada podem ser derivadas da unidade de codificação. Além disso, o sinal de imagem reconstruído decodificado e emitido através do aparelho de decodificação 300 pode ser reproduzido através de um aparelho de reprodução.[073] When the bit stream including the video/image information is input, the decoding apparatus 300 may reconstruct the image in response to a process in which the video/image information is processed in the encoding apparatus illustrated in Figure 2 For example, the decoding apparatus 300 may derive the units/blocks based on block division-related information acquired from the bit stream. The decoding apparatus 300 may perform decoding using the processing unit applied to the encoding apparatus. Therefore, the processing unit for decoding may be, for example, a coding unit, and the coding unit may be divided according to the quadruple tree structure, the binary tree structure and/or the ternary tree structure of the tree encoding unit or the maximum encoding unit. One or more transform units may be derived from the coding unit. Furthermore, the reconstructed image signal decoded and output through the decoding apparatus 300 can be reproduced via a playback apparatus.
[074] O aparelho de decodificação 300 pode receber um sinal de saída do aparelho de codificação da Figura 2 na forma de um fluxo de bits e o sinal recebido pode ser decodificado através do decodificador de entropia 310. Por exemplo, o decodificador de entropia 310 pode analisar o fluxo de bits para derivar informações (por exemplo, informações de vídeo/imagem) necessárias para a reconstrução da imagem (ou reconstrução da imagem). As informações de vídeo/imagem podem ainda incluir informações sobre vários conjuntos de parâmetros, como um conjunto de parâmetros de adaptação (APS), um conjunto de parâmetros de imagem (PPS), um conjunto de parâmetros de sequência (SPS) ou um conjunto de parâmetros de vídeo (VPS). Além disso, as informações de vídeo/imagem podem incluir ainda informações gerais de restrição. O aparelho de decodificação pode ainda decodificar a imagem com base nas informações do conjunto de parâmetros e/ou nas informações gerais de restrição. Informações sinalizadas/recebidas e/ou elementos de sintaxe descritos posteriormente neste documento podem ser decodificados, podendo decodificar o processo de decodificação e obtidos a partir do fluxo de bits. Por exemplo, o decodificador de entropia 310 decodifica as informações no fluxo de bits com base em um método de codificação, como codificação Golomb exponencial, CAVLC ou CABAC, e elementos de sintaxe de saída necessários para reconstrução de imagem e valores quantificados de coeficientes de transformada para resíduo. Mais especificamente, o método de decodificação de entropia CABAC pode receber um bin correspondente a cada elemento de sintaxe no fluxo de bits, determinar um modelo de contexto usando uma informação de elemento de sintaxe alvo de decodificação, informação de decodificação de um bloco alvo de decodificação ou informação de um símbolo/bin decodificado em uma etapa anterior, e realizar uma decodificação aritmética no bin prevendo uma probabilidade de ocorrência de um bin de acordo com o modelo de contexto determinado, e gerar um símbolo correspondente ao valor de cada elemento de sintaxe. Neste caso, o método de decodificação de entropia CABAC pode atualizar o modelo de contexto usando as informações do símbolo/bin decodificado para um modelo de contexto de um próximo símbolo/bin após determinar o modelo de contexto. As informações relacionadas à predição entre as informações decodificadas pelo decodificador de entropia 310 podem ser fornecidas ao preditor 330 e informações sobre o resíduo no qual a decodificação de entropia foi realizada no decodificador de entropia 310, isto é, os coeficientes de transformada quantizados e informações de parâmetros relacionados podem ser introduzidas no desquantizador 321. Além disso, informações sobre filtragem entre informações decodificadas pelo decodificador de entropia 310 podem ser fornecidas ao filtro 350. Enquanto isso, um receptor (não ilustrado) para receber um sinal de saída da codificação aparelho pode ainda ser configurado como um elemento interno/externo do aparelho de decodificação 300, ou o receptor pode ser um elemento constituinte do decodificador de entropia 310. Enquanto isso, o aparelho de decodificação de acordo com o presente documento pode ser denominado como um vídeo/imagem /aparelho de decodificação de imagem, e o aparelho de decodificação pode ser classificado em um decodificador de informação (decodificador de informação de vídeo/imagem/imagem) e um decodificador de amostra (decodificador de amostra de vídeo/imagem/imagem). O decodificador de informação pode incluir o decodificador de entropia 310 e o decodificador de amostra pode incluir pelo menos um dentre o desquantizador 321, o transformador inverso 322, o preditor 330, o somador 340, o filtro 350 e a memória 360.[074] The decoding apparatus 300 may receive an output signal from the encoding apparatus of Figure 2 in the form of a bit stream and the received signal may be decoded via the entropy decoder 310. For example, the entropy decoder 310 can analyze the bit stream to derive information (e.g., video/image information) necessary for image reconstruction (or image reconstruction). The video/image information may further include information about various parameter sets, such as an adaptation parameter set (APS), an image parameter set (PPS), a sequence parameter set (SPS), or a set of video parameters (VPS). Additionally, video/image information may also include general restriction information. The decoding apparatus may further decode the image based on the parameter set information and/or the general constraint information. Signaled/received information and/or syntax elements described later in this document may be decoded and obtained from the bit stream. For example, entropy decoder 310 decodes information in the bitstream based on a coding method, such as exponential Golomb coding, CAVLC, or CABAC, and output syntax elements required for image reconstruction and quantized values of transform coefficients. for residue. More specifically, the CABAC entropy decoding method can receive a bin corresponding to each syntax element in the bit stream, determine a context model using a decoding target syntax element information, decoding information of a decoding target block or information from a symbol/bin decoded in a previous step, and perform an arithmetic decoding on the bin, predicting a probability of occurrence of a bin according to the determined context model, and generating a symbol corresponding to the value of each syntax element. In this case, the CABAC entropy decoding method can update the context model using the information from the decoded symbol/bin to a context model of a next symbol/bin after determining the context model. Information related to the prediction among the information decoded by the entropy decoder 310 may be provided to the predictor 330 and information about the residue on which the entropy decoding was performed in the entropy decoder 310, that is, the quantized transform coefficients and information of Related parameters may be introduced into the dequantizer 321. Additionally, information about filtering between information decoded by the entropy decoder 310 may be provided to the filter 350. Meanwhile, a receiver (not illustrated) for receiving an output signal from the encoding apparatus may further be configured as an internal/external element of the decoding apparatus 300, or the receiver may be a constituent element of the entropy decoder 310. Meanwhile, the decoding apparatus according to the present document may be termed as a video/image/ image decoding apparatus, and the decoding apparatus can be classified into an information decoder (video/image/image information decoder) and a sample decoder (video/image/image sample decoder). The information decoder may include the entropy decoder 310 and the sample decoder may include at least one of the dequantizer 321, the inverse transformer 322, the predictor 330, the adder 340, the filter 350, and the memory 360.
[075] O desquantizador 321 pode desquantizar os coeficientes de transformada quantificados para emitir os coeficientes de transformada. O desquantizador 321 pode rearranjar os coeficientes de transformada quantificados em uma forma de bloco bidimensional. Neste caso, o rearranjo pode ser realizado com base em uma ordem de varredura de coeficiente realizada pelo aparelho de codificação. O desquantizador 321 pode realizar a desquantização para os coeficientes de transformada quantizados usando um parâmetro de quantização (por exemplo, informações de tamanho da etapa de quantização) e adquirir os coeficientes de transformada.[075] The dequantizer 321 can dequantize the quantized transform coefficients to output the transform coefficients. The dequantizer 321 can rearrange the quantized transform coefficients into a two-dimensional block shape. In this case, the rearrangement can be performed based on a coefficient sweep order performed by the coding apparatus. The dequantizer 321 may perform dequantization for the quantized transform coefficients using a quantization parameter (e.g., quantization step size information) and acquire the transform coefficients.
[076] O transformador inverso 322 transforma inversamente os coeficientes de transformada para adquirir o sinal residual (bloco residual, matriz de amostra residual).[076] The inverse transformer 322 inversely transforms the transform coefficients to acquire the residual signal (residual block, residual sample matrix).
[077] O preditor 330 pode realizar a predição do bloco atual e gerar um bloco predito incluindo as amostras de predição do bloco atual. O preditor pode determinar se a intra predição é aplicada ou a inter predição é aplicada ao bloco atual com base na informação sobre a saída de predição do decodificador de entropia 310 e determinar um modo de intra/inter predição específico.[077] The predictor 330 can perform the prediction of the current block and generate a predicted block including the prediction samples from the current block. The predictor may determine whether intra prediction is applied or inter prediction is applied to the current block based on information about the prediction output of the entropy decoder 310 and determine a specific intra/inter prediction mode.
[078] O preditor pode gerar um sinal de predição com base em vários métodos de predição descritos abaixo. Por exemplo, o preditor pode não apenas aplicar intra predição ou inter predição para prever um bloco, mas também aplicar simultaneamente intra predição e inter predição. Isso pode ser chamado de predição combinada inter e intra (CIIP). Além disso, o preditor pode realizar uma cópia intrabloco (IBC) para predição de um bloco. A cópia intrabloco pode ser usada para codificação de imagem de conteúdo/imagem em movimento de um jogo ou semelhante, por exemplo, codificação de conteúdo de tela (SCC). A IBC basicamente realiza a predição na imagem atual, mas pode ser realizado de forma semelhante à inter predição em que um bloco de referência é derivado na imagem atual. Ou seja, a IBC pode usar pelo menos uma das técnicas de inter predição descritas no presente documento.[078] The predictor may generate a prediction signal based on various prediction methods described below. For example, the predictor can not only apply intra prediction or inter prediction to predict a block, but also simultaneously apply intra prediction and inter prediction. This can be called combined inter and intra prediction (CIIP). Furthermore, the predictor can perform an intra-block copy (IBC) to predict a block. Intrablock copy can be used for content/moving image coding of a game or the like, for example screen content coding (SCC). IBC basically performs prediction on the current image, but it can be performed in a similar way to inter prediction in which a reference block is derived on the current image. That is, the IBC may use at least one of the interprediction techniques described in this document.
[079] O intra preditor 332 pode prever o bloco atual referindo-se às amostras na imagem atual. As referidas amostras podem estar localizadas na vizinhança do bloco atual, ou podem estar localizadas afastadas do bloco atual de acordo com o modo de predição. Na intra predição, os modos de predição podem incluir uma pluralidade de modos não direcionais e uma pluralidade de modos direcionais. O intra preditor 332 pode determinar o modo de predição a ser aplicado ao bloco atual usando o modo de predição aplicado ao bloco vizinho.[079] The intra predictor 332 can predict the current block by referring to the samples in the current image. Said samples may be located in the vicinity of the current block, or may be located away from the current block according to the prediction mode. In intra prediction, the prediction modes may include a plurality of non-directional modes and a plurality of directional modes. The intra predictor 332 may determine the prediction mode to be applied to the current block using the prediction mode applied to the neighboring block.
[080] O inter preditor 331 pode derivar um bloco predito para o bloco atual com base em um bloco de referência (matriz de amostra de referência) especificado por um vetor de movimento em uma imagem de referência. Neste caso, a fim de reduzir a quantidade de informação de movimento sendo transmitida no modo inter predição, a informação de movimento pode ser prevista na unidade de blocos, sub- blocos ou amostras com base na correlação de informações de movimento entre o bloco vizinho e o bloco atual . A informação de movimento pode incluir um vetor de movimento e um índice de imagem de referência. As informações de movimento podem incluir ainda informações sobre a direção inter predição (predição de L0, predição de L1, predição de Bi e semelhantes). No caso de inter predição, o bloco vizinho pode incluir um bloco vizinho espacial existente na imagem atual e um bloco vizinho temporal existente na imagem de referência. Por exemplo, o inter preditor 331 pode construir uma lista de candidatos de informações de movimento com base em blocos vizinhos e derivar um vetor de movimento do bloco atual e/ou um índice de imagem de referência com base nas informações de seleção de candidatos recebidas. A inter predição pode ser realizada com base em vários modos de predição e as informações sobre a predição podem incluir informações que indicam um modo de inter predição para o bloco atual.[080] The inter predictor 331 may derive a predicted block for the current block based on a reference block (reference sample matrix) specified by a motion vector in a reference image. In this case, in order to reduce the amount of motion information being transmitted in inter-prediction mode, motion information can be predicted in unit blocks, sub-blocks or samples based on the correlation of motion information between the neighboring block and the current block. The motion information may include a motion vector and a reference image index. The motion information may further include inter-prediction direction information (L0 prediction, L1 prediction, Bi prediction, and the like). In the case of inter prediction, the neighboring block may include a spatial neighboring block existing in the current image and a temporal neighboring block existing in the reference image. For example, the inter predictor 331 may construct a candidate list of motion information based on neighboring blocks and derive a current block motion vector and/or a reference image index based on the received candidate selection information. The inter-prediction may be performed based on various prediction modes, and the information about the prediction may include information that indicates an inter-prediction mode for the current block.
[081] O somador 340 pode gerar um sinal reconstruído (imagem reconstruída, bloco reconstruído ou matriz de amostra reconstruída) adicionando o sinal residual obtido à saída do sinal de predição (bloco predito ou matriz de amostra predita) do preditor 330. Se houver nenhum resíduo para o bloco alvo de processamento, como no caso em que um modo de salto é aplicado, o bloco predito pode ser usado como o bloco reconstruído.[081] The adder 340 may generate a reconstructed signal (reconstructed image, reconstructed block or reconstructed sample matrix) by adding the obtained residual signal to the prediction signal output (predicted block or predicted sample matrix) of the predictor 330. If there is none residue to the processing target block, as in the case where a skip mode is applied, the predicted block can be used as the reconstructed block.
[082] O somador 340 pode ser chamado de reconstrutor ou gerador de bloco reconstruído. O sinal reconstruído gerado pode ser usado para a intra predição de um próximo bloco a ser processado na imagem atual e, conforme descrito posteriormente, também pode ser emitido através de filtragem ou também pode ser usado para a inter predição de uma próxima imagem.[082] Adder 340 can be called a reconstructor or reconstructed block generator. The generated reconstructed signal can be used for intra prediction of a next block to be processed in the current image and, as described later, can also be output through filtering or can also be used for inter prediction of a next image.
[083] Enquanto isso, um mapeamento de luma com escala de croma (LMCS) também pode ser aplicado no processo de decodificação de imagem.[083] Meanwhile, a chroma scaled luma mapping (LMCS) can also be applied in the image decoding process.
[084] O filtro 350 pode melhorar a qualidade de imagem subjetiva/objetiva aplicando filtragem ao sinal reconstruído. Por exemplo, o filtro 350 pode gerar uma imagem reconstruída modificada aplicando vários métodos de filtragem à imagem reconstruída e armazenar a imagem reconstruída modificada na memória 360, especificamente, em um DPB da memória 360. Os vários métodos de filtragem podem incluir, por exemplo, filtragem de desbloqueio, um desvio adaptativo de amostra, um filtro de loop adaptativo, um filtro bilateral e semelhantes.[084] Filter 350 can improve subjective/objective image quality by applying filtering to the reconstructed signal. For example, filter 350 may generate a modified reconstructed image by applying various filtering methods to the reconstructed image and store the modified reconstructed image in memory 360, specifically, in a DPB of memory 360. The various filtering methods may include, for example, deblocking filtering, an adaptive sample shift, an adaptive loop filter, a two-sided filter and the like.
[085] A imagem reconstruída (modificada) armazenada no DPB da memória 360 pode ser usada como uma imagem de referência no inter preditor 331. A memória 360 pode armazenar a informação de movimento do bloco a partir do qual a informação de movimento na imagem atual é derivada (ou decodificada) e/ou a informação de movimento dos blocos na imagem já tendo sido reconstruída. A informação de movimento armazenada pode ser transferida para o inter preditor 331 de modo a ser utilizada como a informação de movimento do bloco vizinho espacial ou a informação de movimento do bloco vizinho temporal. A memória 360 pode armazenar amostras reconstruídas de blocos reconstruídos na imagem atual e transferir as amostras reconstruídas para o intra preditor 332.[085] The reconstructed (modified) image stored in the DPB of memory 360 can be used as a reference image in interpredictor 331. Memory 360 can store the motion information of the block from which the motion information in the current image is derived (or decoded) and/or the movement information of the blocks in the image has already been reconstructed. The stored motion information can be transferred to the inter predictor 331 to be used as the motion information of the spatial neighbor block or the motion information of the temporal neighbor block. The memory 360 may store reconstructed samples from reconstructed blocks in the current image and transfer the reconstructed samples to the intra predictor 332.
[086] No presente relatório descritivo, as modalidades descritas no preditor 330, o dequantizador 321, o transformador inverso 322 e o filtro 350 do aparelho de decodificação 300 também podem ser aplicados da mesma maneira ou correspondente ao preditor 220, o dequantizador 234, o transformador inverso 235 e o filtro 260 do aparelho de codificação 200.[086] In the present specification, the modalities described in the predictor 330, the dequantizer 321, the inverse transformer 322 and the filter 350 of the decoding apparatus 300 can also be applied in the same way or correspondingly to the predictor 220, the dequantizer 234, the inverse transformer 235 and the filter 260 of the coding apparatus 200.
[087] Enquanto isso, conforme descrito acima, na execução da codificação de vídeo, a predição é realizada para melhorar a eficiência da 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. Aqui, 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) sobre resíduos entre o bloco original e o bloco predito, em vez de um valor de amostra original de um bloco original, para o 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 na informação residual, adicionar o bloco residual e o bloco predito para gerar blocos reconstruídos incluindo amostras reconstruídas e gerar uma imagem reconstruída incluindo os blocos reconstruídos.[087] Meanwhile, as described above, when performing video coding, prediction is performed to improve compression efficiency. Through this, a predicted block including prediction samples for a current block as a block to be encoded (i.e., an encoding target block) can be generated. Here, the predicted block includes prediction samples in a spatial domain (or pixel domain). The predicted block is derived in the same way in an encoding apparatus and a decoding apparatus, and the encoding apparatus may signal information (residual information) about residues between the original block and the predicted block, instead of an original sample value of an original block, to the decoding apparatus, thus increasing the efficiency of image coding. The decoding apparatus may derive a residual block including residual samples based on the residual information, add the residual block and the predicted block to generate reconstructed blocks including reconstructed samples, and generate a reconstructed image including the reconstructed blocks.
[088] A informação residual pode ser gerada através de um processo 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 processo de transformada em amostras residuais (matriz de amostra residual) incluídas no bloco residual para derivar coeficientes de transformada, realizar um processo de quantização nos coeficientes de transformada para derivar coeficientes de transformada quantizados e informações residuais relacionadas ao sinal para o aparelho de decodificação (através de um fluxo de bits). Aqui, as informações residuais podem incluir informações de valor dos coeficientes de transformada quantificados, informações de localização, uma técnica de transformada, um núcleo de transformada, um parâmetro de quantificação e semelhantes. O aparelho de decodificação pode realizar o processo de desquantização/transformada inversa com base na informação residual e derivar amostras residuais (ou blocos residuais). O aparelho de decodificação pode gerar uma imagem reconstruída com base no bloco predito e no bloco residual. Além disso, para referência para inter predição de uma imagem posterior, o aparelho de codificação também pode desquantizar/transformar inversamente os coeficientes de transformada quantificados para derivar um bloco residual e gerar uma imagem reconstruída com base nele.[088] Residual information can be generated through a transform and quantization process. For example, the coding apparatus may derive a residual block between the original block and the predicted block, perform a transform process on residual samples (residual sample matrix) included in the residual block to derive transform coefficients, perform a quantization process on the transform coefficients to derive quantized transform coefficients and signal-related residual information for the decoding apparatus (via a bit stream). Here, the residual information may include value information of the quantified transform coefficients, location information, a transform technique, a transform kernel, a quantification parameter, and the like. The decoding apparatus may perform the dequantization/inverse transform process based on the residual information and derive residual samples (or residual blocks). The decoding apparatus can generate a reconstructed image based on the predicted block and the residual block. Furthermore, for reference for interprediction of a subsequent image, the coding apparatus may also dequantize/back transform the quantized transform coefficients to derive a residual block and generate a reconstructed image based thereon.
[089] Neste documento, pelo menos um de quantização/desquantização e/ou transformada/transformada inversa pode ser omitido. Quando a quantificação/desquantização é omitida, o coeficiente de transformada quantificado pode ser denominado como um coeficiente de transformada. Quando a transformada/transformada inversa é omitida, o coeficiente de transformada pode ser chamado de coeficiente ou coeficiente residual ou ainda pode ser chamado de coeficiente de transformada para uniformidade de expressão.[089] In this document, at least one of quantization/dequantization and/or transform/inverse transform may be omitted. When quantization/dequantization is omitted, the quantified transform coefficient can be termed as a transform coefficient. When the transform/inverse transform is omitted, the transform coefficient can be called the coefficient or residual coefficient or it can be called the transform coefficient for uniformity of expression.
[090] Neste documento, o coeficiente de transformada quantificado e o coeficiente de transformada podem ser referidos como um coeficiente de transformada e um coeficiente de transformada escalonado, respectivamente. Neste caso, a informação residual pode incluir informação sobre o(s) coeficiente(s) de transformada e a informação sobre o(s) coeficiente(s) de transformada pode ser sinalizada através da sintaxe de codificação residual. Os coeficientes de transformada podem ser derivados com base na informação residual (ou informação no(s) coeficiente(s) de transformada), e os coeficientes de transformada escalonados podem ser derivados através da transformada inversa (escalonamento) nos coeficientes de transformada. Amostras residuais podem ser derivadas com base na transformada inversa (transformada) dos coeficientes de transformada em escala. Isso também pode ser aplicado/expresso em outras partes deste documento.[090] In this document, the quantified transform coefficient and the transform coefficient may be referred to as a transform coefficient and a scaled transform coefficient, respectively. In this case, the residual information may include information about the transform coefficient(s) and the information about the transform coefficient(s) may be signaled using the residual coding syntax. Transform coefficients can be derived based on the residual information (or information in the transform coefficient(s), and scaled transform coefficients can be derived by inversely transforming (scaling) the transform coefficients. Residual samples can be derived based on the inverse transform (transform) of the scaled transform coefficients. This may also be applied/expressed elsewhere in this document.
[091] O preditor do aparelho de codificação/aparelho de decodificação pode derivar amostras de predição realizando inter predição em unidades de blocos. A inter predição pode ser uma predição derivada de uma maneira que depende de elementos de dados (por exemplo, valores de amostra ou informações de movimento, etc.) de imagem(s) diferente da imagem atual. Quando a inter predição é aplicada ao bloco atual, com base no bloco de referência (matrizes de amostra de referência) especificado pelo vetor de movimento na imagem de referência apontada pelo índice da imagem de referência, o bloco predito (matriz de amostra de predição) para o bloco atual pode ser derivado. Neste caso, a fim de reduzir a quantidade de informações de movimento transmitidas no modo de inter predição, as informações de movimento do bloco atual podem ser previstas em unidades de blocos, sub-blocos ou amostras com base na correlação entre as informações de movimento entre blocos vizinhos e o bloco atual. A informação de movimento pode incluir o vetor de movimento e o índice de imagem de referência. As informações de movimento podem incluir ainda informações do tipo de inter predição (predição L0, predição L1, predição Bi, etc.). Quando a inter predição é aplicada, os blocos vizinhos podem incluir um bloco vizinho espacial existente na imagem atual e um bloco vizinho temporal existente na imagem de referência. A imagem de referência incluindo o bloco de referência e a imagem de referência incluindo o bloco vizinho temporal podem ser iguais ou diferentes. O bloco vizinho temporal pode ser chamado de bloco de referência colocado, CU colocada (colCU), etc., e uma imagem de referência incluindo o bloco vizinho temporalmente pode ser chamada de imagem colocada (colPic). Por exemplo, uma lista de candidatos de informação de movimento pode ser construída com base em blocos vizinhos do bloco atual e uma informação de bandeira ou índice indicando qual candidato é selecionado (usado) para derivar o vetor de movimento e/ou o índice de imagem de referência do bloco atual pode ser sinalizado. A inter predição pode ser realizada com base em vários modos de predição. Por exemplo, no modo de salto e no modo de mesclagem, as informações de movimento do bloco atual podem ser as mesmas que as informações de movimento de um bloco vizinho selecionado. No modo de salto, ao contrário do modo de mesclagem, um sinal residual pode não ser transmitido. No caso de um modo de predição de vetor de movimento (MVP), um vetor de movimento de um bloco vizinho selecionado pode ser usado como um preditor de vetor de movimento e uma diferença de vetor de movimento pode ser sinalizada. Neste caso, o vetor de movimento do bloco atual pode ser derivado usando a soma do preditor do vetor de movimento e a diferença do vetor de movimento..[091] The predictor of the encoding apparatus/decoding apparatus may derive prediction samples by performing inter-prediction in block units. The inter prediction may be a prediction derived in a manner that depends on data elements (e.g., sample values or motion information, etc.) of image(s) other than the current image. When inter prediction is applied to the current block, based on the reference block (reference sample matrices) specified by the motion vector in the reference image pointed by the reference image index, the predicted block (prediction sample matrix) for the current block can be derived. In this case, in order to reduce the amount of motion information transmitted in the inter prediction mode, the motion information of the current block can be predicted in units of blocks, sub-blocks or samples based on the correlation between the motion information between neighboring blocks and the current block. The motion information may include the motion vector and the reference image index. The movement information may also include inter prediction type information (L0 prediction, L1 prediction, Bi prediction, etc.). When inter prediction is applied, the neighboring blocks may include a spatial neighboring block existing in the current image and a temporal neighboring block existing in the reference image. The reference image including the reference block and the reference image including the temporal neighboring block may be the same or different. The temporal neighboring block can be called a collocated reference block, collocated CU (colCU), etc., and a reference image including the temporally neighboring block can be called a collocated image (colPic). For example, a candidate list of motion information can be constructed based on blocks neighboring the current block and a flag or index information indicating which candidate is selected (used) to derive the motion vector and/or image index. reference of the current block can be signaled. Inter prediction can be performed based on various prediction modes. For example, in skip mode and merge mode, the motion information of the current block may be the same as the motion information of a selected neighboring block. In skip mode, unlike blending mode, a residual signal may not be transmitted. In the case of a motion vector prediction (MVP) mode, a motion vector from a selected neighboring block can be used as a motion vector predictor and a motion vector difference can be signaled. In this case, the motion vector of the current block can be derived using the sum of the motion vector predictor and the motion vector difference.
[092] As informações de movimento podem incluir informações de movimento L0 e/ou informações de movimento L1 de acordo com um tipo de inter predição (predição L0, predição L1, predição Bi, etc.). Um vetor de movimento na direção L0 pode ser denominado como um vetor de movimento L0 ou MVL0, e um vetor de movimento na direção L1 pode ser denominado como um vetor de movimento L1 ou MVL1. A predição baseada no vetor de movimento L0 pode ser chamada de predição L0, a predição baseada no vetor de movimento L1 pode ser chamada de predição L1 e a predição baseada no vetor de movimento L0 e no vetor de movimento L1 pode ser chamada de bi-predição. Aqui, o vetor de movimento L0 pode indicar um vetor de movimento associado à lista de imagens de referência L0 (L0), e o vetor de movimento L1 pode indicar um vetor de movimento associado à lista de imagens de referência L1 (L1). A lista de imagens de referência L0 pode incluir imagens que são anteriores à imagem atual na ordem de saída como imagens de referência e a lista de imagens de referência L1 pode incluir imagens que são subsequentes à imagem atual na ordem de saída. As imagens anteriores podem ser chamadas de imagens de avanço (referência) e as imagens subsequentes podem ser chamadas de imagens de retrocesso (referência). A lista de imagens de referência L0 pode incluir ainda imagens que são subsequentes à imagem atual na ordem de saída como imagens de referência. Neste caso, as imagens anteriores podem ser indexadas primeiro e as imagens subsequentes podem ser indexadas em seguida na lista de imagens de referência L0. A lista de imagens de referência L1 pode incluir ainda imagens anteriores à imagem atual na ordem de saída como imagens de referência. Neste caso, as imagens subsequentes podem ser indexadas primeiro na lista de imagens de referência 1 e as imagens anteriores podem ser indexadas em seguida. Aqui, a ordem de saída pode corresponder a uma ordem de contagem de ordem de imagem (POC).[092] The motion information may include L0 motion information and/or L1 motion information according to a type of inter prediction (L0 prediction, L1 prediction, Bi prediction, etc.). A motion vector in the L0 direction can be termed as an L0 or MVL0 motion vector, and a motion vector in the L1 direction can be termed as an L1 or MVL1 motion vector. The prediction based on motion vector L0 can be called L0 prediction, the prediction based on motion vector L1 can be called L1 prediction, and the prediction based on motion vector L0 and motion vector L1 can be called bi- prediction. Here, the motion vector L0 may indicate a motion vector associated with the list of reference images L0 (L0), and the motion vector L1 may indicate a motion vector associated with the list of reference images L1 (L1). The L0 reference image list may include images that are prior to the current image in the output order as reference images, and the L1 reference image list may include images that are subsequent to the current image in the output order. Previous images can be called forward (reference) images and subsequent images can be called backward (reference) images. The L0 reference image list may further include images that are subsequent to the current image in the output order as reference images. In this case, previous images can be indexed first and subsequent images can be indexed next into the L0 reference image list. The L1 reference image list may also include images prior to the current image in the output order as reference images. In this case, subsequent images can be indexed first in reference image list 1 and previous images can be indexed next. Here, the output order may correspond to a picture order count (POC) order.
[093] A Figura 4 mostra exemplificativamente uma estrutura hierárquica para uma imagem/vídeo codificado.[093] Figure 4 exemplarily shows a hierarchical structure for an encoded image/video.
[094] Com referência à Figura 4, a imagem/vídeo codificada é dividida em VCL (camada de codificação de vídeo) que trata de um processo de decodificação de imagem/vídeo e ela própria, um subsistema que transmite e armazena as informações codificadas e uma camada de abstração de rede (NAL) que existe entre a VCL e subsistemas e é responsável pelas funções de adaptação da rede.[094] With reference to Figure 4, the encoded image/video is divided into VCL (video coding layer) which deals with an image/video decoding process and itself, a subsystem that transmits and stores the encoded information and a network abstraction layer (NAL) that exists between the VCL and subsystems and is responsible for network adaptation functions.
[095] A VCL pode gerar dados VCL incluindo dados de imagem compactados (dados de fatia) ou gerar conjuntos de parâmetros incluindo um conjunto de parâmetros de imagem (Conjunto de parâmetros de imagem: PPS), um conjunto de parâmetros de sequência (Conjunto de parâmetros de sequência: SPS), um conjunto de parâmetros de vídeo set (Conjunto de Parâmetros de Vídeo: VPS) etc. ou uma mensagem de informação de aprimoramento suplementar (SEI) adicionalmente necessária para o processo de decodificação de uma imagem.[095] The VCL can generate VCL data including compressed image data (slice data) or generate parameter sets including a set of image parameters (Image Parameter Set: PPS), a set of sequence parameters (Set of sequence parameters: SPS), a video parameter set (Video Parameter Set: VPS) etc. or a supplemental enhancement information (SEI) message additionally required for the process of decoding an image.
[096] Na NAL, uma unidade NAL pode ser gerada pela adição de informações de cabeçalho (cabeçalho da unidade NAL) a uma carga útil de sequência de bytes bruta (RBSP) gerada na VCL. Neste caso, o RBSP refere-se a dados de fatias, conjuntos de parâmetros, mensagens SEI, etc. gerados na VCL. O cabeçalho da unidade NAL pode incluir informações do tipo de unidade NAL especificadas de acordo com os dados RBSP incluídos na unidade NAL correspondente.[096] In NAL, a NAL unit can be generated by adding header information (NAL unit header) to a raw byte sequence payload (RBSP) generated in the VCL. In this case, RBSP refers to slice data, parameter sets, SEI messages, etc. generated in the VCL. The NAL unit header may include NAL unit type information specified in accordance with the RBSP data included in the corresponding NAL unit.
[097] Conforme mostrado na figura, a unidade NAL pode ser dividida em uma unidade NAL de VCL e uma unidade NAL de não VCL de acordo com o RBSP gerado na VCL. A unidade NAL de VCL pode significar uma unidade NAL incluindo informações (dados fatiados) sobre uma imagem, e a unidade NAL não VCL pode significar uma unidade NAL contendo informações (conjunto de parâmetros ou mensagem SEI) necessárias para decodificar uma imagem.[097] As shown in the figure, the NAL unit can be divided into a VCL NAL unit and a non-VCL NAL unit according to the RBSP generated in the VCL. The VCL NAL unit may mean a NAL unit including information (sliced data) about an image, and the non-VCL NAL unit may mean a NAL unit containing information (parameter set or SEI message) necessary to decode an image.
[098] A unidade NAL de VCL acima descrita e a unidade NAL de não VCL podem ser transmitidas através de uma rede anexando informações de cabeçalho de acordo com um padrão de dados do subsistema. Por exemplo, a unidade NAL pode ser transformada em um formato de dados de um padrão predeterminado, como formato de arquivo H.266/VVC, protocolo de transporte em tempo real (RTP), fluxo de transporte (TS), etc. e transmitido através de várias redes.[098] The above-described VCL NAL unit and the non-VCL NAL unit can be transmitted over a network by attaching header information in accordance with a subsystem data standard. For example, the NAL unit can be transformed into a data format of a predetermined standard, such as H.266/VVC file format, real-time transport protocol (RTP), transport stream (TS), etc. and transmitted across multiple networks.
[099] Conforme descrito acima, na unidade NAL, o tipo de unidade NAL pode ser especificado de acordo com a estrutura de dados de RBSP incluída na unidade NAL correspondente, e as informações sobre esse tipo de unidade NAL podem ser armazenadas e sinalizadas no cabeçalho da unidade NAL.[099] As described above, in the NAL unit, the NAL unit type can be specified according to the RBSP data structure included in the corresponding NAL unit, and information about this NAL unit type can be stored and signaled in the header of the NAL unit.
[0100] Por exemplo, a unidade NAL pode ser classificada aproximadamente no tipo de unidade NAL de VCL e no tipo de unidade NAL de não VCL, dependendo se a unidade NAL inclui informações sobre a imagem (dados de fatia). O tipo de unidade NAL de VCL pode ser classificado de acordo com a propriedade e um tipo de imagem incluída na unidade NAL de VCL, e o tipo de unidade NAL de não VCL pode ser classificado de acordo com o tipo de um conjunto de parâmetros.[0100] For example, the NAL unit can be roughly classified into the VCL NAL unit type and the non-VCL NAL unit type, depending on whether the NAL unit includes image information (slice data). The VCL NAL unit type can be classified according to the property and a type of image included in the VCL NAL unit, and the non-VCL NAL unit type can be classified according to the type of a parameter set.
[0101] O seguinte é um exemplo do tipo de unidade NAL especificado de acordo com o tipo de conjunto de parâmetros incluído no tipo de unidade NAL não VCL. - Unidade NAL de APS (Conjunto de Parâmetros de Adaptação): Tipo para unidade NAL incluindo APS - Unidade NAL de DPS (Conjunto de Parâmetros de Decodificação): Tipo para unidade NAL incluindo DPS - Unidade NAL de VPS (Conjunto de Parâmetros de Vídeo): Tipo para unidade NAL incluindo VPS - Unidade NAL de SPS (Conjunto de Parâmetros de Sequência): Tipo para unidade NAL incluindo SPS - Unidade NAL de PPS (Conjunto de Parâmetros de Imagem): Tipo para unidade NAL incluindo PPS - Unidade de NAL PH (cabeçalho de imagem): Tipo para unidade NAL incluindo PH[0101] The following is an example of the NAL unit type specified according to the parameter set type included in the non-VCL NAL unit type. - APS NAL Unit (Adaptation Parameter Set): Type for NAL unit including APS - DPS NAL Unit (Decoding Parameter Set): Type for NAL unit including DPS - VPS NAL Unit (Video Parameter Set) : Type for NAL unit including VPS - NAL Unit of SPS (Sequence Parameter Set): Type for NAL unit including SPS - NAL Unit of PPS (Picture Parameter Set): Type for NAL unit including PPS - NAL Unit PH (image header): Type for NAL unit including PH
[0102] Os tipos de unidade NAL descritos acima têm informações de sintaxe para o tipo de unidade NAL, e as informações de sintaxe podem ser armazenadas e sinalizadas no cabeçalho da unidade NAL. Por exemplo, as informações de sintaxe podem ser nal_unit_type e os tipos de unidade NAL podem ser especificados por um valor nal_unit_type.[0102] The NAL unit types described above have syntax information for the NAL unit type, and the syntax information can be stored and signaled in the NAL unit header. For example, syntax information can be nal_unit_type and NAL unit types can be specified by a nal_unit_type value.
[0103] Enquanto isso, como descrito acima, uma imagem pode incluir uma pluralidade de fatias e uma fatia pode incluir um cabeçalho de fatia e dados de fatia. Neste caso, um cabeçalho de imagem pode ainda ser adicionado a uma pluralidade de fatias (um cabeçalho de fatia e um conjunto de dados de fatia) em uma imagem. O cabeçalho da imagem (sintaxe do cabeçalho da imagem) pode incluir informações/parâmetros comumente aplicáveis à imagem. Neste documento, uma fatia pode ser misturada ou substituída por um grupo de blocos. Além disso, neste documento, um cabeçalho de fatia pode ser misturado ou substituído por um cabeçalho de grupo de tipos.[0103] Meanwhile, as described above, an image may include a plurality of slices, and a slice may include a slice header and slice data. In this case, an image header may further be added to a plurality of slices (a slice header and a slice data set) in an image. The image header (image header syntax) may include information/parameters commonly applicable to the image. In this document, a slice can be mixed or replaced by a group of blocks. Additionally, in this document, a slice header can be mixed or replaced with a type group header.
[0104] O cabeçalho da fatia (sintaxe do cabeçalho da fatia ou informações do cabeçalho da fatia) pode incluir informações/parâmetros comumente aplicáveis à fatia. O APS (sintaxe de APS) ou PPS (sintaxe de PPS) pode incluir informações/parâmetros comumente aplicáveis a uma ou mais fatias ou imagens. O SPS (sintaxe de SPS) pode incluir informações/parâmetros comumente aplicáveis a uma ou mais sequências. O VPS (sintaxe de VPS) pode incluir informações/parâmetros comumente aplicáveis a várias camadas. O DPS (sintaxe de DPS) pode incluir informações/parâmetros comumente aplicáveis a todo o vídeo. O DPS pode incluir informações/parâmetros relacionados à concatenação de uma sequência de vídeo codificada (CVS). Neste documento, a sintaxe de alto nível (HLS) pode incluir pelo menos uma sintaxe de APS, sintaxe de PPS, sintaxe de SPS, sintaxe de VPS, sintaxe de DPS, sintaxe de cabeçalho de imagem e sintaxe de cabeçalho de fatia.[0104] The slice header (slice header syntax or slice header information) may include information/parameters commonly applicable to the slice. APS (APS syntax) or PPS (PPS syntax) may include information/parameters commonly applicable to one or more slices or images. The SPS (SPS syntax) may include information/parameters commonly applicable to one or more sequences. VPS (VPS syntax) may include information/parameters commonly applicable to multiple layers. DPS (DPS syntax) may include information/parameters commonly applicable to the entire video. The DPS may include information/parameters related to the concatenation of a coded video sequence (CVS). In this document, high-level syntax (HLS) may include at least one APS syntax, PPS syntax, SPS syntax, VPS syntax, DPS syntax, image header syntax, and slice header syntax.
[0105] Neste documento, as informações de imagem/vídeo codificadas no aparelho de codificação e sinalizadas na forma de um fluxo de bits para o aparelho de decodificação podem incluir, bem como informações relacionadas ao particionamento de imagem na imagem, informações de intra/inter predição, informações residuais, informações de filtragem em loop, etc. as informações incluídas no cabeçalho da fatia, as informações incluídas no cabeçalho da imagem, as informações incluídas no APS, as informações incluídas no PPS, as informações incluídas no SPS, as informações incluídos no VPS e/ou as informações incluídas no DPS. Além disso, as informações de imagem/vídeo podem incluir ainda informações do cabeçalho da unidade NAL.[0105] Herein, image/video information encoded in the encoding apparatus and signaled in the form of a bit stream to the decoding apparatus may include, as well as information relating to image-in-image partitioning, intra/inter-image information. prediction, residual information, loop filtering information, etc. the information included in the slice header, the information included in the image header, the information included in the APS, the information included in the PPS, the information included in the SPS, the information included in the VPS, and/or the information included in the DPS. Additionally, the image/video information may also include NAL unit header information.
[0106] Enquanto isso, a fim de compensar uma diferença entre uma imagem original e uma imagem reconstruída devido a um erro que ocorre em um processo de codificação de compressão, como quantização, um processo de filtragem em loop pode ser realizado em amostras reconstruídas ou imagens reconstruídas como descrito acima. Conforme descrito acima, a filtragem em loop pode ser realizada pelo filtro do aparelho de codificação e o filtro do aparelho de decodificação, e um filtro de desbloqueio, SAO e/ou filtro de loop adaptativo (ALF) pode ser aplicado. Por exemplo, o processo de ALF pode ser realizado após a conclusão do processo de filtragem de desbloqueio e/ou do processo de SAO. No entanto, mesmo neste caso, o processo de filtragem de desbloqueio e/ou o processo de SAO podem ser omitidos.[0106] Meanwhile, in order to compensate for a difference between an original image and a reconstructed image due to an error occurring in a compression coding process such as quantization, a loop filtering process can be performed on reconstructed samples or reconstructed images as described above. As described above, loop filtering can be performed by the encoding apparatus filter and the decoding apparatus filter, and a deblocking filter, SAO and/or adaptive loop filter (ALF) can be applied. For example, the ALF process may be performed after the unlocking filtering process and/or the SAO process is completed. However, even in this case, the unlock filtering process and/or the SAO process can be omitted.
[0107] A seguir, a reconstrução e filtragem de imagens serão descritas em detalhes. Na codificação de imagem/vídeo, um bloco reconstruído pode ser gerado com base na intra predição/inter predição em cada unidade de bloco e uma imagem reconstruída incluindo os blocos reconstruídos pode ser gerada. Quando a imagem/fatia atual é uma imagem/fatia I, os blocos incluídos na imagem/fatia atual podem ser reconstruídos com base apenas na intra predição. Enquanto isso, quando a imagem/fatia atual é uma imagem/fatia P ou B, os blocos incluídos na imagem/fatia atual podem ser reconstruídos com base na intra predição ou inter predição. Neste caso, a intra predição pode ser aplicada a alguns blocos na imagem/fatia atual e a inter predição pode ser aplicada aos blocos restantes.[0107] Next, image reconstruction and filtering will be described in detail. In image/video coding, a reconstructed block can be generated based on intra prediction/inter prediction in each block unit and a reconstructed image including the reconstructed blocks can be generated. When the current image/slice is an I image/slice, the blocks included in the current image/slice can be reconstructed based on intra prediction alone. Meanwhile, when the current image/slice is a P or B image/slice, the blocks included in the current image/slice can be reconstructed based on intra prediction or inter prediction. In this case, intra prediction can be applied to some blocks in the current image/slice and inter prediction can be applied to the remaining blocks.
[0108] A intra predição pode representar uma predição para gerar amostras de predição para o bloco atual com base em amostras de referência na imagem (doravante, imagem atual) à qual o bloco atual pertence. Caso a intra predição seja aplicada ao bloco atual, podem ser derivadas amostras de referência vizinhas a serem usadas para a intra predição do bloco atual. As amostras de referência vizinhas do bloco atual podem incluir uma amostra adjacente a um limite esquerdo do bloco atual com um tamanho de nWxnH, amostras totais de 2xnH vizinhas à parte inferior esquerda, uma amostra adjacente ao limite superior da corrente bloco, total de 2xnW amostras vizinhas ao canto superior direito e uma amostra vizinha ao canto superior esquerdo do bloco atual. Alternativamente, as amostras de referência vizinhas do bloco atual podem incluir amostra vizinha superior de várias colunas e amostra vizinha esquerda de várias linhas. Alternativamente, as amostras de referência vizinhas do bloco atual podem incluir amostras totais de nH adjacentes ao limite direito do bloco atual com um tamanho de nWxnH, amostras totais de nH adjacentes ao limite direito do bloco atual, amostras totais de nW adjacentes a o limite inferior do bloco atual e uma amostra vizinha ao canto inferior direito do bloco atual.[0108] The intra prediction may represent a prediction to generate prediction samples for the current block based on reference samples in the image (hereinafter, current image) to which the current block belongs. If intra prediction is applied to the current block, neighboring reference samples can be derived to be used for intra prediction of the current block. The neighboring reference samples of the current block may include a sample adjacent to a left boundary of the current block with a size of nWxnH, total 2xnH samples neighboring the bottom left, a sample adjacent to the upper boundary of the current block, total of 2xnW samples neighboring the top right corner and a sample neighboring the top left corner of the current block. Alternatively, the neighboring reference samples of the current block may include multi-column top neighbor sample and multi-row left neighbor sample. Alternatively, the neighboring reference samples of the current block may include total nH samples adjacent to the right boundary of the current block with a size of nWxnH, total nH samples adjacent to the right boundary of the current block, total nW samples adjacent to the lower boundary of the current block. current block and a neighboring sample to the bottom right corner of the current block.
[0109] No entanto, algumas das amostras de referência vizinhas do bloco atual podem ainda não ter sido decodificadas ou podem não estar disponíveis. Neste caso, o decodificador pode configurar as amostras de referência vizinhas a serem utilizadas para a predição através da substituição de amostras disponíveis por amostras indisponíveis. Alternativamente, as amostras de referência vizinhas a serem usadas para a predição podem ser configuradas através da interpolação das amostras disponíveis.[0109] However, some of the neighboring reference samples of the current block may not yet have been decoded or may not be available. In this case, the decoder can configure neighboring reference samples to be used for prediction by replacing available samples with unavailable samples. Alternatively, neighboring reference samples to be used for prediction can be configured by interpolating the available samples.
[0110] Quando são derivadas amostras de referência vizinhas, há dois casos, isto é, um caso (i) em que uma amostra de predição pode ser derivada com base em uma média ou interpolação de amostras de referência vizinhas de um bloco atual, e um caso (ii) em que a amostra de predição pode ser derivada com base em uma amostra de referência presente em uma direção (predição) específica para a amostra de predição entre as amostras de referência vizinhas do bloco atual. O caso (i) pode ser chamado de modo não direcional ou modo não angular, e o caso (ii) pode ser chamado de modo direcional ou modo angular. Além disso, a amostra de predição também pode ser gerada através de uma primeira amostra vizinha e uma segunda amostra vizinha localizada em uma direção oposta à direção de predição do modo de intra predição do bloco atual com base na amostra de predição do bloco atual entre os vizinhos amostras de referência. O caso acima pode ser denominado como intra predição de interpolação linear (LIP). Além disso, amostras de predição de croma podem ser geradas com base em amostras de luma usando um modelo linear. Este caso pode ser chamado de modo LM. Além disso, uma amostra de predição temporária do bloco atual pode ser derivada com base em amostras de referência vizinhas filtradas. Pelo menos uma amostra de referência, que é derivada de acordo com o modo de intra predição entre as amostras de referência vizinhas existentes, isto é, amostras de referência vizinhas não filtradas, e a amostra de predição temporária pode ser somada ponderada para derivar a amostra de predição do bloco atual. O caso acima pode ser chamado de intra predição dependente de posição (PDPC). Além disso, uma linha de amostra de referência com a maior precisão de predição entre as múltiplas linhas de amostra de referência vizinhas do bloco atual pode ser selecionada para derivar a amostra de predição usando a amostra de referência localizada na direção de predição na linha correspondente e a amostra de referência A linha usada neste documento pode ser indicada (sinalizada) para um aparelho de decodificação, realizando assim a codificação intra predição. O caso acima pode ser chamado de intra predição de linha de referência múltipla (MRL) ou intra predição baseada em MRL. Além disso, a intra predição pode ser realizada com base no mesmo modo de intra predição dividindo o bloco atual em sub-partições verticais ou horizontais, e amostras de referência vizinhas podem ser derivadas e usadas em unidades das sub- partições. Ou seja, neste caso, o modo de intra predição para o bloco atual é igualmente aplicado às sub-partições, e o desempenho de intra predição pode ser melhorado em alguns casos derivando e usando as amostras de referência vizinhas em unidades das sub-partições. Tal método de predição pode ser chamado de intra sub-partições (ISP) ou intra-predição baseada em ISP. Os métodos de intra predição acima mencionados podem ser chamados de um tipo de intra predição distinto do modo de intra predição nas seções 1.2. O tipo de intra predição pode ser chamado em vários termos, como uma técnica de intra predição ou um modo de intra predição adicional ou semelhante. Por exemplo, o tipo de intra predição (ou modo de intra predição adicional ou semelhante) pode incluir pelo menos um dos LIP, PDPC, MRL e ISP acima mencionados. Um método de intra predição geral, exceto para o tipo de intra predição específico, como LIP, PDPC, MRL ou ISP, pode ser chamado de tipo de intra predição normal. O tipo de intra predição normal pode ser geralmente aplicado quando o tipo de intra predição específico não é aplicado, e a predição pode ser realizada com base no modo de intra predição mencionado acima. Enquanto isso, opcionalmente, a filtragem de pós-processamento pode ser realizada na amostra de predição derivada..[0110] When neighboring reference samples are derived, there are two cases, that is, a case (i) in which a prediction sample can be derived based on an average or interpolation of neighboring reference samples of a current block, and a case (ii) in which the prediction sample can be derived based on a reference sample present in a specific (prediction) direction for the prediction sample among the neighboring reference samples of the current block. Case (i) can be called non-directional mode or non-angular mode, and case (ii) can be called directional mode or angular mode. Furthermore, the prediction sample can also be generated through a first neighboring sample and a second neighboring sample located in a direction opposite to the prediction direction of the current block intra prediction mode based on the prediction sample of the current block between the neighboring reference samples. The above case can be termed as linear interpolation intra prediction (LIP). Additionally, chroma prediction samples can be generated based on luma samples using a linear model. This case can be called LM mode. Furthermore, a temporary prediction sample of the current block can be derived based on filtered neighboring reference samples. At least one reference sample, which is derived according to the intra prediction mode between the existing neighboring reference samples, that is, unfiltered neighboring reference samples, and the temporary prediction sample can be weighted summed to derive the sample prediction of the current block. The above case can be called position-dependent intra prediction (PDPC). Furthermore, a reference sample line with the highest prediction accuracy among the multiple neighboring reference sample lines of the current block can be selected to derive the prediction sample using the reference sample located in the prediction direction on the corresponding line and the reference sample The line used in this document can be indicated (flagged) to a decoding device, thus performing intra prediction coding. The above case can be called multiple reference line (MRL) intra prediction or MRL-based intra prediction. Furthermore, intra prediction can be performed based on the same intra prediction mode by dividing the current block into vertical or horizontal sub-partitions, and neighboring reference samples can be derived and used in units of the sub-partitions. That is, in this case, the intra prediction mode for the current block is equally applied to the sub-partitions, and the intra prediction performance can be improved in some cases by deriving and using the neighboring reference samples in units of the sub-partitions. Such a prediction method can be called intra sub-partition (ISP) or ISP-based intra-prediction. The above-mentioned intra prediction methods can be called a type of intra prediction distinct from the intra prediction mode in sections 1.2. The intra prediction type may be called in various terms, such as an intra prediction technique or an additional intra prediction mode or the like. For example, the intra prediction type (or additional intra prediction mode or the like) may include at least one of the aforementioned LIP, PDPC, MRL and ISP. A general intra prediction method, except for the specific intra prediction type such as LIP, PDPC, MRL or ISP, can be called a normal intra prediction type. The normal intra prediction type can be generally applied when the specific intra prediction type is not applied, and the prediction can be performed based on the intra prediction mode mentioned above. Meanwhile, optionally, post-processing filtering can be performed on the derived prediction sample.
[0111] Especificamente, o processo de intra predição pode incluir uma operação de determinação de um modo/tipo de intra predição, uma operação de derivação de uma amostra de referência vizinha e uma operação de derivação de uma amostra de predição com base no modo/tipo de intra predição. Além disso, opcionalmente, uma operação de filtragem de pós-processamento pode ser realizada na amostra de predição derivada.[0111] Specifically, the intra prediction process may include an operation of determining an intra prediction mode/type, an operation of deriving a neighboring reference sample, and an operation of deriving a prediction sample based on the mode/ type of intra prediction. Additionally, optionally, a post-processing filtering operation can be performed on the derived prediction sample.
[0112] Uma imagem reconstruída modificada pode ser gerada através do processo de filtragem em loop, e a imagem reconstruída modificada pode ser emitida como uma imagem decodificada no aparelho de decodificação e também pode ser armazenada em um buffer de imagem decodificada ou memória do aparelho de codificação /decodificação e usado como uma imagem de referência no processo de inter predição quando a imagem é codificada/decodificada posteriormente. O processo de filtragem em loop pode incluir um processo de filtragem de desbloqueio, um processo de deslocamento adaptativo de amostra (SAO) e/ou um processo de filtro de loop adaptativo (ALF) conforme descrito acima. Neste caso, um ou alguns dos processos de filtragem de desbloqueio, processo de SAO, processo de ALF e processo de filtragem bilateral podem ser aplicados sequencialmente, ou todos os processos podem ser aplicados sequencialmente. Por exemplo, o processo de SAO pode ser executado após o processo de filtragem de desbloqueio ser aplicado à imagem reconstruída. Alternativamente, por exemplo, o processo de ALF pode ser executado após o processo de filtragem de desbloqueio ser aplicado à imagem reconstruída. Isso também pode ser realizado igualmente no aparelho de codificação.[0112] A modified reconstructed image can be generated through the loop filtering process, and the modified reconstructed image can be output as a decoded image in the decoding apparatus and can also be stored in a decoded image buffer or memory of the decoding apparatus. encoding/decoding and used as a reference image in the inter prediction process when the image is encoded/decoded later. The loop filtering process may include a deblocking filtering process, an adaptive sample shift (SAO) process, and/or an adaptive loop filter (ALF) process as described above. In this case, one or some of the unlocking filtering process, SAO process, ALF process and bilateral filtering process may be applied sequentially, or all of the processes may be applied sequentially. For example, the SAO process can be performed after the deblocking filtering process is applied to the reconstructed image. Alternatively, for example, the ALF process can be performed after the deblocking filtering process is applied to the reconstructed image. This can also be carried out on the coding device.
[0113] A filtragem de desbloqueio é uma técnica de filtragem que remove a distorção que ocorre nos limites entre os blocos na imagem reconstruída. O processo de filtragem de desbloqueio pode, por exemplo, derivar um limite alvo na imagem reconstruída, determinar uma força de limite (bS) para o limite alvo e realizar filtragem de desbloqueio no limite alvo, com base no bS. O bS pode ser determinado com base em um modo de predição, uma diferença de vetor de movimento, se as imagens de referência são idênticas, se existe um coeficiente significativo diferente de zero, etc., de dois blocos adjacentes ao limite do alvo.[0113] Deblocking filtering is a filtering technique that removes distortion that occurs at the boundaries between blocks in the reconstructed image. The deblocking filtering process may, for example, derive a target boundary on the reconstructed image, determine a threshold strength (bS) for the target boundary, and perform deblocking filtering on the target boundary based on the bS. The bS can be determined based on a prediction mode, a motion vector difference, whether the reference images are identical, whether there is a significant non-zero coefficient, etc., of two blocks adjacent to the target boundary.
[0114] O SAO é um método no qual uma diferença de deslocamento entre a imagem reconstruída e a imagem original é compensada com base na amostra. Por exemplo, o SAO pode ser aplicado com base em um tipo como um deslocamento de banda, um deslocamento de borda ou semelhante. De acordo com o SAO, as amostras podem ser classificadas em diferentes categorias de acordo com cada tipo de SAO, e um valor de compensação pode ser adicionado a cada amostra, com base na categoria. Filtrar informações para o SAO pode incluir informações sobre se o SAO é aplicado, informações do tipo SAO, informações do valor de deslocamento do SAO ou semelhantes. O SAO pode ser aplicado à imagem reconstruída após a aplicação da filtragem de desbloqueio.[0114] SAO is a method in which a difference in displacement between the reconstructed image and the original image is compensated based on the sample. For example, SAO can be applied based on a type such as a band shift, an edge shift, or the like. According to SAO, samples can be classified into different categories according to each type of SAO, and a compensation value can be added to each sample based on the category. Filter information for SAO may include information about whether SAO is applied, SAO type information, SAO offset value information, or the like. SAO can be applied to the reconstructed image after applying deblocking filtering.
[0115] O ALF é uma técnica para filtrar a imagem reconstruída em uma base de amostra, com base em coeficientes de filtro de acordo com uma forma de filtro. O aparelho de codificação pode determinar se o ALF é aplicado, uma forma de ALF e/ou um coeficiente de filtragem de ALF ou semelhante comparando a imagem reconstruída e a imagem original e pode sinalizar o resultado da determinação para o aparelho de decodificação. Ou seja, as informações de filtragem para o ALF podem incluir informações sobre se o ALF é aplicado, informações de forma de filtro de ALF, informações de coeficiente de filtragem de ALF ou semelhantes. O ALF pode ser aplicado à imagem reconstruída após a aplicação da filtragem de desbloqueio.[0115] ALF is a technique for filtering the reconstructed image on a sample basis, based on filter coefficients according to a filter shape. The encoding apparatus may determine whether ALF is applied, a form of ALF and/or an ALF filtering coefficient or the like by comparing the reconstructed image and the original image and may signal the result of the determination to the decoding apparatus. That is, the filtering information for the ALF may include information about whether the ALF is applied, ALF filter shape information, ALF filtering coefficient information, or the like. ALF can be applied to the reconstructed image after applying deblocking filtering.
[0116] A Figura 5 ilustra um exemplo de uma forma de filtro de ALF.[0116] Figure 5 illustrates an example of an ALF filter form.
[0117] A Figura 5, (a) ilustra uma forma de filtro de diamante 7x7 e (b) ilustra uma forma de filtro de diamante 5 x 5. Na Figura 5, Cn na forma de filtro representa um coeficiente de filtro. Quando n é idêntico no Cn, significa que o mesmo coeficiente de filtro pode ser alocado. No presente documento, um local e/ou unidade em que o coeficiente de filtro é alocado de acordo com a forma do filtro de ALF pode ser chamado de torneira de filtro. Neste caso, um coeficiente de filtro pode ser atribuído a cada torneira de filtro e uma forma na qual a torneira de filtro está disposta pode corresponder a uma forma de filtro. Uma torneira de filtro localizada no centro da forma do filtro pode ser chamada de torneira de filtro central. O mesmo coeficiente de filtro pode ser atribuído a duas torneiras de filtro com o mesmo valor n e presentes em locais correspondentes entre si em relação à torneira de filtro central. Por exemplo, no caso da forma de filtro de diamante 7 x 7, 25 torneiras de filtro são incluídos e os coeficientes de filtro C0 a C11 são alocados em uma forma simétrica central. Portanto, os coeficientes de filtro podem ser alocados para as 25 torneiras de filtro usando apenas 13 coeficientes de filtro. Além disso, por exemplo, no caso da forma de filtro de diamante 5 x 5, são incluídas 13 torneiras de filtro e os coeficientes de filtro C0 a C5 são alocados na forma simétrica central. Portanto, os coeficientes de filtro podem ser alocados para as 13 torneiras de filtro usando apenas 7 filtros. Por exemplo, a fim de diminuir uma quantidade de dados de informação sobre os coeficientes de filtro a serem sinalizados, 12 coeficientes de filtro dos 13 coeficientes de filtro para a forma de filtro de diamante 7 x 7 podem ser (explicitamente) sinalizados e um coeficiente de filtro pode ser (implicitamente) derivado. Além disso, por exemplo, 6 coeficientes de filtro dos 7 coeficientes de filtro para a forma de filtro de diamante 5 x 5 podem ser (explicitamente) sinalizados e um coeficiente de filtro pode ser (implicitamente) derivado.[0117] Figure 5, (a) illustrates a 7x7 diamond filter shape and (b) illustrates a 5 x 5 diamond filter shape. In Figure 5, Cn in the filter shape represents a filter coefficient. When n is identical in Cn, it means that the same filter coefficient can be allocated. In the present document, a location and/or unit in which the filter coefficient is allocated according to the shape of the ALF filter may be called a filter tap. In this case, a filter coefficient can be assigned to each filter tap and a shape in which the filter tap is arranged can correspond to a filter shape. A filter tap located in the center of the filter shape can be called a center filter tap. The same filter coefficient can be assigned to two filter taps with the same value n and present in corresponding locations relative to the central filter tap. For example, in the case of the 7 x 7 diamond filter shape, 25 filter taps are included and the filter coefficients C0 to C11 are allocated in a central symmetrical shape. Therefore, filter coefficients can be allocated to the 25 filter taps using only 13 filter coefficients. Furthermore, for example, in the case of the 5 x 5 diamond filter shape, 13 filter taps are included and the filter coefficients C0 to C5 are allocated to the central symmetrical shape. Therefore, filter coefficients can be allocated to the 13 filter taps using only 7 filters. For example, in order to reduce a data amount of information about the filter coefficients to be flagged, 12 filter coefficients out of the 13 filter coefficients for the 7 x 7 diamond filter shape can be (explicitly) flagged and a coefficient filter can be (implicitly) derived. Furthermore, for example, 6 filter coefficients of the 7 filter coefficients for the 5 x 5 diamond filter shape can be (explicitly) signed and a filter coefficient can be (implicitly) derived.
[0118] A Figura 6 um fluxograma que ilustra um método de codificação baseado na filtragem em um aparelho de codificação. O método da Figura 6 pode incluir as etapas S600 a S630.[0118] Figure 6 is a flowchart illustrating a coding method based on filtering in a coding apparatus. The method of Figure 6 may include steps S600 to S630.
[0119] Na etapa S600, o aparelho de codificação pode gerar uma imagem reconstruída. A etapa S600 pode ser realizada com base no processo de geração de imagem reconstruída (ou amostras reconstruídas) acima mencionado.[0119] In step S600, the coding apparatus can generate a reconstructed image. Step S600 can be performed based on the above-mentioned reconstructed image (or reconstructed samples) generation process.
[0120] Na etapa S610, o aparelho de codificação pode determinar se a filtragem em loop é aplicada (através de um limite virtual) com base nas informações relacionadas à filtragem em loop. Aqui, a filtragem em loop pode incluir pelo menos uma das filtragem de desbloqueio acima mencionadas, SAO e ALF.[0120] In step S610, the coding apparatus may determine whether loop filtering is applied (through a virtual threshold) based on information related to loop filtering. Here, the loop filtering may include at least one of the above-mentioned deblocking filtering, SAO and ALF.
[0121] Na etapa S620, o aparelho de codificação pode gerar uma imagem reconstruída modificada (amostras reconstruídas modificadas) com base na determinação da etapa S610. Aqui, a imagem reconstruída modificada (amostras reconstruídas modificadas) pode ser uma imagem reconstruída filtrada (amostras reconstruídas filtradas).[0121] In step S620, the encoding apparatus may generate a modified reconstructed image (modified reconstructed samples) based on the determination in step S610. Here, the modified reconstructed image (modified reconstructed samples) can be a filtered reconstructed image (filtered reconstructed samples).
[0122] Na etapa S630, o aparelho de codificação pode codificar informações de imagem/vídeo incluindo as informações relacionadas à filtragem em loop, com base no processo de filtragem em loop.[0122] In step S630, the encoding apparatus may encode image/video information including information related to loop filtering, based on the loop filtering process.
[0123] A Figura 7 é um fluxograma que ilustra um método de decodificação com base na filtragem em um aparelho de decodificação. O método da Figura 7 pode incluir as etapas S700 a S730.[0123] Figure 7 is a flowchart illustrating a decoding method based on filtering in a decoding apparatus. The method of Figure 7 may include steps S700 to S730.
[0124] Na etapa S700, o aparelho de decodificação pode obter informações de imagem/vídeo incluindo informações relacionadas à filtragem em loop de um fluxo de bits. Aqui, o fluxo de bits pode ser baseado em informações de imagem/vídeo codificadas transmitidas do aparelho de codificação.[0124] In step S700, the decoding apparatus may obtain image/video information including information related to loop filtering of a bit stream. Here, the bit stream may be based on encoded image/video information transmitted from the encoding apparatus.
[0125] Na etapa S710, o aparelho de decodificação pode gerar uma imagem reconstruída. A etapa S710 pode ser realizada com base na imagem reconstruída acima mencionada (ou amostras reconstruídas).[0125] In step S710, the decoding apparatus may generate a reconstructed image. Step S710 can be performed based on the above-mentioned reconstructed image (or reconstructed samples).
[0126] Na etapa S720, o aparelho de decodificação pode determinar se a filtragem em loop é aplicada (através de um limite virtual) com base nas informações relacionadas à filtragem em loop. Aqui, a filtragem em loop pode incluir pelo menos uma das filtragem de desbloqueio acima mencionadas, SAO e ALF.[0126] In step S720, the decoding apparatus may determine whether loop filtering is applied (through a virtual threshold) based on information related to loop filtering. Here, the loop filtering may include at least one of the above-mentioned deblocking filtering, SAO and ALF.
[0127] Na etapa S730, o aparelho de decodificação pode gerar uma imagem reconstruída modificada (amostras reconstruídas modificadas) com base na determinação da etapa S720. Aqui, a imagem reconstruída modificada (amostras reconstruídas modificadas) pode ser uma imagem reconstruída filtrada (amostras reconstruídas filtradas).[0127] In step S730, the decoding apparatus may generate a modified reconstructed image (modified reconstructed samples) based on the determination in step S720. Here, the modified reconstructed image (modified reconstructed samples) can be a filtered reconstructed image (filtered reconstructed samples).
[0128] Conforme descrito acima, o processo de filtragem em loop pode ser aplicado à imagem reconstruída. Neste caso, um limite virtual pode ser definido para melhorar ainda mais a qualidade visual subjetiva/objetiva da imagem reconstruída, e o processo de filtragem em loop pode ser aplicado através do limite virtual. O limite virtual pode incluir, por exemplo, uma borda descontínua, como uma imagem de 360 graus, uma imagem VR, um limite, um Picture In Picture (PIP) ou semelhante. Por exemplo, o limite virtual pode estar presente em um local predeterminado e uma presença e/ou localização do mesmo pode ser sinalizada. Por exemplo, o limite virtual pode estar localizado em uma quarta linha de amostra superior de uma linha de CTU (especificamente, por exemplo, acima da quarta amostra superior da linha de CTU). Como outro exemplo, as informações sobre a presença e/ou localização do limite virtual podem ser sinalizadas através de HLS. A HLS pode incluir o SPS, o PPS, o cabeçalho de imagem, o cabeçalho de fatia ou semelhante, conforme descrito acima.[0128] As described above, the loop filtering process can be applied to the reconstructed image. In this case, a virtual threshold can be defined to further improve the subjective/objective visual quality of the reconstructed image, and the loop filtering process can be applied across the virtual threshold. The virtual boundary may include, for example, a discontinuous border such as a 360-degree image, a VR image, a boundary, a Picture In Picture (PIP), or the like. For example, the virtual boundary may be present at a predetermined location and a presence and/or location thereof may be signaled. For example, the virtual boundary may be located on an upper fourth sample line of a CTU line (specifically, for example, above the upper fourth sample of the CTU line). As another example, information about the presence and/or location of the virtual boundary can be signaled via HLS. HLS may include SPS, PPS, image header, slice header, or the like, as described above.
[0129] Em seguida, uma sinalização e semântica de sintaxe de alto nível serão descritas de acordo com modalidades da presente divulgação.[0129] Next, a high-level syntax signaling and semantics will be described in accordance with embodiments of the present disclosure.
[0130] Uma modalidade do presente documento pode incluir um método de controle de filtros de circuito. O presente método para controlar os filtros de loop pode ser aplicado a uma imagem reconstruída. Filtros em loop (filtros de loop) podem ser usados para decodificação de fluxos de bits codificados. Os filtros de loop podem incluir o desbloqueio mencionado acima, SAO e ALF. O SPS pode incluir sinalizadores relacionados a cada um dos desbloqueio, SAO e ALF. Os sinalizadores podem indicar se cada uma das ferramentas está disponível para a codificação de uma sequência de vídeo de camada codificada (CLVS) ou sequência de vídeo codificada (CVS) referente ao SPS.[0130] An embodiment of the present document may include a method of controlling circuit filters. The present method for controlling loop filters can be applied to a reconstructed image. Loop filters (loop filters) can be used for decoding encoded bit streams. Loop filters can include the above-mentioned deblocking, SAO and ALF. The SPS may include flags related to each of unlock, SAO and ALF. Flags can indicate whether each of the tools is available for encoding a coded layer video sequence (CLVS) or coded video sequence (CVS) relative to the SPS.
[0131] Em um exemplo, quando os filtros de loop são habilitados para a codificação das imagens no CVS, a aplicação dos filtros de loop pode ser controlada para não ultrapassar limites específicos. Por exemplo, os filtros de loop podem ser controlados para não cruzarem os limites da subimagem, os filtros de loop podem ser controlados para não cruzarem os limites do bloco, os filtros de loop podem ser controlados para não cruzarem os limites da fatia e/ou os filtros de loop pode ser controlado para não ultrapassar os limites virtuais.[0131] In one example, when loop filters are enabled for encoding images in CVS, the application of the loop filters can be controlled so as not to exceed specific limits. For example, loop filters can be controlled not to cross subimage boundaries, loop filters can be controlled not to cross block boundaries, loop filters can be controlled not to cross slice boundaries, and/or The loop filters can be controlled not to exceed virtual limits.
[0132] As informações relacionadas à filtragem em loop podem incluir informações, sintaxe, elementos de sintaxe e/ou semântica descritos no presente documento (ou modalidades nele incluídas). As informações relacionadas à filtragem em loop podem incluir informações relacionadas a se (a totalidade ou parte de) um processo de filtragem em loop está habilitado em limites específicos (por exemplo, um limite virtual, um limite de subimagem, um limite de fatia e/ou um limite de bloco). As informações de imagem incluídas em um fluxo de bits podem incluir uma sintaxe de alto nível (HLS) e a HLS pode incluir as informações relacionadas à filtragem em loop. Amostras reconstruídas modificadas (ou filtradas) (imagens reconstruídas) podem ser geradas com base na determinação de se o processo de filtragem em loop é aplicado através dos limites específicos. Em um exemplo, quando o processo de filtragem em loop é desabilitado para todos os blocos/limites, as amostras reconstruídas modificadas podem ser idênticas às amostras reconstruídas. Em outro exemplo, as amostras reconstruídas modificadas podem incluir amostras reconstruídas modificadas derivadas com base na filtragem em circuito. No entanto, neste caso, algumas das amostras reconstruídas (por exemplo, amostras reconstruídas através dos limites virtuais) podem não ser filtradas em loop com base na determinação acima mencionada. Por exemplo, amostras reconstruídas em um limite específico (pelo menos um de um limite virtual, limite de subimagem, limite de fatia e/ou limite de bloco para o qual a filtragem em loop está habilitada) pode ser filtrada em loop, mas amostras reconstruídas em outros limites (por exemplo, um limite virtual, limite de subimagem, limite de fatia e/ou limite de bloco para o qual a filtragem em loop está desativada) não podem ser filtrados em loop.[0132] Information related to loop filtering may include information, syntax, syntax and/or semantic elements described herein (or embodiments therein). Information related to loop filtering may include information related to whether (all or part of) a loop filtering process is enabled at specific boundaries (e.g., a virtual boundary, a subimage boundary, a slice boundary, and/or or a block limit). Image information included in a bitstream may include high-level syntax (HLS), and HLS may include information related to loop filtering. Modified (or filtered) reconstructed samples (reconstructed images) can be generated based on determining whether the loop filtering process is applied across the specific thresholds. In one example, when the loop filtering process is disabled for all blocks/thresholds, the modified reconstructed samples may be identical to the reconstructed samples. In another example, the modified reconstructed samples may include modified reconstructed samples derived based on in-loop filtering. However, in this case, some of the reconstructed samples (e.g., samples reconstructed across the virtual boundaries) may not be loop filtered based on the aforementioned determination. For example, samples reconstructed at a specific boundary (at least one of a virtual boundary, subimage boundary, slice boundary, and/or block boundary for which loop filtering is enabled) can be loop filtered, but reconstructed samples other boundaries (for example, a virtual boundary, subimage boundary, slice boundary, and/or block boundary for which loop filtering is disabled) cannot be loop filtered.
[0133] Em um exemplo, sobre se o processo de filtragem em loop é executado através do limite virtual, as informações relacionadas à filtragem em loop podem incluir um sinalizador de presença de limites virtuais de SPS, um sinalizador de limites virtuais de cabeçalho de imagem, informações do número de limites virtuais, informações sobre posições de limites virtuais ou semelhantes.[0133] In an example, whether the loop filtering process is performed across the virtual boundary, the loop filtering related information may include an SPS virtual boundaries presence flag, an image header virtual boundaries flag , information on the number of virtual limits, information on positions of virtual limits or the like.
[0134] Nas modalidades incluídas no presente documento, as informações sobre a posição dos limites virtuais podem incluir informações sobre uma coordenada x de um limite virtual vertical e/ou informações sobre uma coordenada y de um limite virtual horizontal. Especificamente, a informação sobre a posição dos limites virtuais pode incluir a informação na coordenada x do limite virtual vertical e/ou a informação no eixo y do limite virtual horizontal em unidades de amostras de luma. Além disso, as informações sobre a posição dos limites virtuais podem incluir informações sobre o número de peças de informação (elementos de sintaxe) na coordenada x do limite virtual vertical que está presente no SPS. Além disso, as informações sobre a posição dos limites virtuais podem incluir informações sobre o número de peças de informação (elementos de sintaxe) na coordenada y do limite virtual horizontal que está presente no SPS. Alternativamente, as informações sobre a posição dos limites virtuais podem incluir informações sobre o número de peças de informação (elementos de sintaxe) na coordenada x do limite virtual vertical que está presente em um cabeçalho de imagem. Além disso, as informações sobre a posição dos limites virtuais podem incluir informações sobre o número de peças de informação (elementos de sintaxe) na coordenada y do limite virtual horizontal que está presente no cabeçalho da imagem.[0134] In the embodiments included herein, information about the position of the virtual boundaries may include information about an x-coordinate of a vertical virtual boundary and/or information about a y-coordinate of a horizontal virtual boundary. Specifically, information about the position of the virtual boundaries may include information on the x-coordinate of the vertical virtual boundary and/or information on the y-axis of the horizontal virtual boundary in units of luma samples. Additionally, information about the position of the virtual boundaries may include information about the number of pieces of information (syntax elements) in the x-coordinate of the vertical virtual boundary that are present in the SPS. Additionally, information about the position of the virtual boundaries may include information about the number of pieces of information (syntax elements) in the y-coordinate of the horizontal virtual boundary that are present in the SPS. Alternatively, information about the position of the virtual boundaries may include information about the number of pieces of information (syntax elements) in the x-coordinate of the vertical virtual boundary that are present in an image header. Additionally, information about the position of the virtual boundaries may include information about the number of pieces of information (syntax elements) in the y-coordinate of the horizontal virtual boundary that is present in the image header.
[0135] As tabelas a seguir mostram uma sintaxe e semântica exemplificativas de um SPS de acordo com a presente modalidade. Tabela 1 [0135] The following tables show an exemplary syntax and semantics of an SPS according to the present embodiment. Table 1
[0136] As tabelas a seguir mostram um exemplo de sintaxe e semântica de um conjunto de parâmetros de imagem (PPS) de acordo com a presente modalidade. Tabela 3 Tabela 4[0136] The following tables show an example of syntax and semantics of an image parameter set (PPS) according to the present embodiment. Table 3 Table 4
[0137] As tabelas a seguir mostram uma sintaxe e semântica exemplificativas de um cabeçalho de imagem de acordo com a presente modalidade. Tabela 5 [0137] The following tables show an exemplary syntax and semantics of an image header in accordance with the present embodiment. Table 5
[0138] As tabelas a seguir mostram uma sintaxe e semântica exemplificativas de um cabeçalho de fatia de acordo com a presente modalidade. Tabela 7 [0138] The following tables show an exemplary syntax and semantics of a slice header in accordance with the present embodiment. Table 7
[0139] Em seguida, serão descritas informações relacionadas a subimagens, informações relacionadas a limites virtuais utilizáveis em filtragem em malha e sua sinalização.[0139] Next, information related to subimages, information related to virtual limits usable in mesh filtering and their signaling will be described.
[0140] Quando não há subimagem com limites tratados como limites de imagem, mesmo que uma imagem inclua várias subimagens, a vantagem de usar a subimagem não pode ser utilizada. Em uma modalidade deste documento, as informações de imagem/vídeo para codificação de imagem podem incluir informações para tratar uma subimagem como uma imagem, que pode ser denominada como um sinalizador de manipulação de imagem (isto é, subpic_treated_as_pic_flag[i]).[0140] When there is no sub-image with boundaries treated as image boundaries, even if an image includes multiple sub-images, the advantage of using the sub-image cannot be utilized. In one embodiment of this document, the image/video information for image coding may include information for treating a subpicture as a picture, which may be referred to as an image manipulation flag (i.e., subpic_treated_as_pic_flag[i]).
[0141] De modo a sinalizar um layout da subimagem, um sinalizador (isto é, subpic_present_flag) relacionado à presença de subimagens é sinalizado. Isso pode ser chamado de sinalizador de presente de subimagem. Quando um valor de subpic_present_flag é 1, as informações (isto é, sps_num_subpics_minus1) relacionadas ao número de subimagens para particionar a imagem são sinalizadas. Em um exemplo, o número de subimagens para particionar a imagem pode ser igual a sps_num_subpics_minus1 + 1 (1 é adicionado a sps_num_subpics_minus1). Os valores disponíveis de sps_num_subpics_minus1 incluem 0, o que significa que apenas uma subimagem pode estar presente na imagem. Se a imagem incluir apenas uma subimagem, a sinalização de informações relacionadas à subimagem pode ser considerada um processo redundante, uma vez que a própria subimagem é uma imagem.[0141] In order to signal a subpicture layout, a flag (i.e., subpic_present_flag) related to the presence of subpictures is flagged. This can be called a subimage present flag. When a value of subpic_present_flag is 1, information (i.e. sps_num_subpics_minus1) related to the number of subpictures to partition the image is flagged. In an example, the number of subpics to partition the image might be equal to sps_num_subpics_minus1 + 1 (1 is added to sps_num_subpics_minus1). The available values of sps_num_subpics_minus1 include 0, which means that only one subpicture can be present in the image. If the image only includes one sub-image, signaling information related to the sub-image can be considered a redundant process since the sub-image itself is an image.
[0142] Na modalidade existente, se a imagem incluir apenas uma subimagem e sinalização de subimagem estiver presente, um valor do sinalizador de manipulação de imagem (isto é, subpic_treated_as_pic_flag[i]) e/ou um valor de um sinalizador (isto é, loop_filter_across_subpic_enabled_flag) relacionado para saber se a filtragem de loop é executada em subimagens pode ser 0 ou 1. Aqui, há um problema em que um caso em que o valor de subpic_treated_as_pic_flag[i] é 0 é inconsistente com um caso em que os limites da subimagem são os limites da imagem. Isso requer um processo redundante adicional no qual um decodificador pode confirmar que os limites da imagem são os limites da subimagem.[0142] In the existing embodiment, if the image includes only one subimage and subimage flag is present, a value of the image manipulation flag (i.e., subpic_treated_as_pic_flag[i]) and/or a value of a flag (i.e., loop_filter_across_subpic_enabled_flag) related to whether loop filtering is performed on subpictures can be 0 or 1. Here, there is an issue in which a case in which the value of subpic_treated_as_pic_flag[i] is 0 is inconsistent with a case in which the boundaries of the subimage are the boundaries of the image. This requires an additional redundant process in which a decoder can confirm that the image boundaries are the subimage boundaries.
[0143] Quando uma imagem é gerada com base em um processo de fusão de duas ou mais subimagens, todas as subimagens usadas no processo de fusão devem ser subimagens codificadas independentemente (uma subimagem na qual o valor do sinalizador de manipulação de imagem (subpic_reated_as_pic_flag[i]) é 1). Isso ocorre porque, quando uma subimagem (denominada como uma 'primeira subimagem' neste parágrafo) diferente da subimagem codificada independentemente é mesclada, os blocos na primeira subimagem são codificados por referência a um bloco de referência existente fora da primeira subimagem, que pode causar um problema após a fusão.[0143] When an image is generated based on a merging process of two or more subimages, all subimages used in the merging process must be independently encoded subimages (a subimage in which the value of the image manipulation flag (subpic_reated_as_pic_flag[ i]) is 1). This is because when a sub-image (referred to as a 'first sub-image' in this paragraph) other than the independently encoded sub-image is merged, the blocks in the first sub-image are encoded by reference to a reference block existing outside the first sub-image, which may cause a problem after the merger.
[0144] Além disso, quando a imagem é dividida em subimagens, a sinalização de identificação de subimagem pode estar presente ou não. Quando a sinalização de ID de subimagem está presente, a sinalização de ID de subimagem pode estar presente (incluída) em um SPS, um PPS e/ou um cabeçalho de imagem (PH). Um caso em que a sinalização de ID de subimagem não está presente no SPS pode incluir um caso em que um fluxo de bits é gerado como resultado de um processo de mesclagem de subimagem. Consequentemente, é preferível que todas as subimagens sejam codificadas independentemente quando a sinalização de ID de sub-imagem não estiver incluída no SPS.[0144] Furthermore, when the image is divided into subimages, subimage identification signaling may or may not be present. When sub-picture ID signaling is present, the sub-picture ID signaling may be present (included) in an SPS, a PPS, and/or a picture header (PH). A case in which subimage ID signaling is not present in the SPS may include a case in which a bit stream is generated as a result of a subimage merging process. Consequently, it is preferred that all subpictures be independently encoded when subpicture ID signaling is not included in the SPS.
[0145] Em um processo de codificação de imagem em que os limites virtuais são usados, as informações sobre as posições dos limites virtuais podem ser sinalizadas em um SPS ou um cabeçalho de imagem. A sinalização das informações sobre as posições dos limites virtuais no SPS significa que não há alteração das posições em todo o CLVS. No entanto, quando a reamostragem de imagem de referência (RPR) está habilitada para o CLVS, as imagens no CLVS podem ter tamanhos diferentes. Aqui, o RPR (também denominado como mudança de resolução adaptativa (ARC)) é realizado para uma operação de codificação normal de imagens com diferentes resoluções (resoluções espaciais). Por exemplo, o RPR pode incluir aumento na taxa de amostragem e diminuição na taxa de amostragem. Alta eficiência de codificação para adaptação de uma taxa de bits e resolução espacial pode ser alcançada através do RPR. É necessário garantir que todas as posições dos limites virtuais estejam presentes em uma imagem, considerando o RPR.[0145] In an image coding process in which virtual boundaries are used, information about the positions of the virtual boundaries may be signaled in an SPS or an image header. Signaling information about virtual boundary positions in the SPS means that there is no change in positions across the entire CLVS. However, when reference image resampling (RPR) is enabled for CLVS, images in CLVS may have different sizes. Here, RPR (also called adaptive resolution shifting (ARC)) is performed for a normal encoding operation of images with different resolutions (spatial resolutions). For example, the RPR may include increasing sampling rate and decreasing sampling rate. High coding efficiency for adapting a bitrate and spatial resolution can be achieved through RPR. It is necessary to ensure that all virtual boundary positions are present in an image, considering the RPR.
[0146] No processo de ALF existente, o código Golomb exponencial de ordem k com k=3 é usado para sinalizar valores absolutos de coeficientes de ALF de luma e croma. No entanto, a codificação Golomb exponencial de ordem k é problemática porque causa sobrecarga e complexidade computacional significativas.[0146] In the existing ALF process, the exponential Golomb code of order k with k=3 is used to signal absolute values of luma and chroma ALF coefficients. However, exponential Golomb coding of order k is problematic because it causes significant computational overhead and complexity.
[0147] As modalidades descritas a seguir podem propor soluções para o problema acima mencionado. As modalidades podem ser aplicadas independentemente. Alternativamente, pelo menos duas modalidades podem ser aplicadas em combinação.[0147] The modalities described below can propose solutions to the aforementioned problem. The modalities can be applied independently. Alternatively, at least two modalities can be applied in combination.
[0148] Em uma modalidade deste documento, quando a sinalização de subimagem está presente e uma imagem tem apenas uma subimagem, a única subimagem é uma subimagem codificada independentemente. Por exemplo, quando a imagem tem apenas uma subimagem, a única subimagem é uma subimagem codificada independentemente e um valor de um sinalizador de manipulação de imagem (isto é, subpic_treated_as_pic_flag[i]) para a única subimagem é 1. Consequentemente, um processo redundante relacionadas à subimagem podem ser omitidas.[0148] In one embodiment of this document, when subpicture signaling is present and a picture has only one subpicture, the only subpicture is an independently encoded subpicture. For example, when the image has only one subimage, the only subimage is an independently encoded subimage, and a value of an image manipulation flag (that is, subpic_treated_as_pic_flag[i]) for the single subimage is 1. Consequently, a redundant process related to the subimage can be omitted.
[0149] Em uma modalidade deste documento, quando a sinalização de subimagem está presente, o número de subimagens pode ser maior que 1. Em um exemplo, se a sinalização de subimagem está presente (isto é, um valor de subpics_present_flag é 1), a informação sobre o número de subimagens (isto é, sps_num_subpics_minus1) pode ser maior que 0, e o número de subimagens pode ser sps_num_subpics_minus1 + 1 (1 é adicionado a sps_num_subpics_minus1). Em outro exemplo, a informação sobre o número de subimagens pode ser sps_num_subpics_minus2, e o número de subimagens pode ser sps_num_subpics_minus2 + 2 (2 é adicionado a sps_num_subpics_minus2). Em outro exemplo, um sinalizador de presente de subimagem (subpics_present_flag) pode ser substituído por informações sobre o número de subimagens (sps_num_subpics_minus1) e, portanto, a sinalização de subimagem pode estar presente quando sps_num_subpics_minus1 for maior que 0.[0149] In one embodiment of this document, when subpicture flag is present, the number of subpictures may be greater than 1. In one example, if subpicture flag is present (i.e., a value of subpics_present_flag is 1), information about the number of subpics (that is, sps_num_subpics_minus1) can be greater than 0, and the number of subpics can be sps_num_subpics_minus1 + 1 (1 is added to sps_num_subpics_minus1). In another example, the information about the number of subpics might be sps_num_subpics_minus2, and the number of subpics might be sps_num_subpics_minus2 + 2 (2 is added to sps_num_subpics_minus2). In another example, a subpicture present flag (subpics_present_flag) may be replaced by information about the number of subpictures (sps_num_subpics_minus1), and therefore the subpicture flag may be present when sps_num_subpics_minus1 is greater than 0.
[0150] Em uma modalidade deste documento, quando uma imagem é dividida em subimagens, pelo menos uma subimagem entre as subimagens pode ser uma subimagem codificada independentemente. Aqui, um valor de um sinalizador de manipulação de imagem (isto é, subpic_treated_as_pic_flag[i]) para a subimagem codificada independentemente pode ser 1.[0150] In one embodiment of this document, when an image is divided into sub-images, at least one sub-image among the sub-images may be an independently encoded sub-image. Here, a value of an image manipulation flag (i.e., subpic_treated_as_pic_flag[i]) for the independently encoded subimage can be 1.
[0151] Em uma modalidade deste documento, as subimagens de uma imagem com base em um processo de fusão de duas ou mais subimagens podem ser subimagens codificadas independentemente.[0151] In one embodiment of this document, subimages of an image based on a process of merging two or more subimages may be independently encoded subimages.
[0152] Em uma modalidade deste documento, quando a sinalização de identificação de subimagem (ID) está presente em uma posição diferente de um SPS (outra sintaxe, outras informações de sintaxe de alto nível), todas as subimagens podem ser subimagens codificadas independentemente e um valor de um sinalizador de manipulação de imagem (isto é, subpic_treated_as_pic_flag) para todas as subimagens pode ser 1. Em um exemplo, a sinalização de ID de subimagem pode estar presente em um PPS e, neste caso, todas as subimagens podem ser subimagens codificadas independentemente. Em outro exemplo, a sinalização de ID de subimagem pode estar presente em um cabeçalho de imagem e, neste caso, todas as subimagens são subimagens codificadas independentemente.[0152] In one embodiment of this document, when the sub-picture identification (ID) flag is present in a position other than an SPS (other syntax, other high-level syntax information), all sub-pictures may be independently encoded sub-pictures and a value of an image manipulation flag (i.e., subpic_treated_as_pic_flag) for all subimages may be 1. In an example, the subimage ID flag may be present in a PPS, in which case all subimages may be subimages independently coded. In another example, the sub-image ID flag may be present in an image header, in which case all sub-images are independently encoded sub-images.
[0153] Em uma modalidade deste documento, quando a sinalização de limite virtual está presente em um SPS para CLVS e a reamostragem de imagem de referência é habilitada, todas as posições de limite virtual horizontal podem estar dentro de uma altura mínima de imagem de imagens referentes ao SPS e todas as posições verticais as posições de limite virtual podem estar dentro de uma largura de imagem mínima das imagens referentes ao SPS.[0153] In one embodiment of this document, when virtual boundary flagging is present in an SPS for CLVS and reference image resampling is enabled, all horizontal virtual boundary positions may be within a minimum image height of images relative to the SPS and all vertical positions, the virtual boundary positions may be within a minimum image width of the images relative to the SPS.
[0154] Em uma modalidade deste documento, quando a reamostragem de imagem de referência (RPR) é habilitada, a sinalização de limite virtual pode ser incluída em um cabeçalho de imagem. Ou seja, quando o RPR está habilitado, a sinalização de limite virtual pode não ser incluída no SPS.[0154] In one embodiment of this document, when reference image resampling (RPR) is enabled, virtual boundary flagging may be included in an image header. That is, when RPR is enabled, virtual boundary signaling may not be included in the SPS.
[0155] Em uma modalidade deste documento, a codificação de comprimento fixo (FLC) com o número de bits (ou comprimento de bits) pode ser usada para sinalizar dados de ALF. Em um exemplo, as informações sobre os dados de ALF podem incluir informações sobre um comprimento de bit de um valor absoluto de um coeficiente de ALF luma (isto é, alf_luma_coeff_abs_len_minus1) e/ou informações sobre um comprimento de bit de um valor absoluto de um coeficiente de croma de ALF (isto é, alf_chroma_coeff_abs_len_minus1). Por exemplo, a informação sobre o comprimento de bit do valor absoluto do coeficiente ALF luma e/ou a informação sobre o comprimento de bit do valor absoluto do coeficiente de croma de ALF pode ser codificada com ue(v).[0155] In one embodiment of this document, fixed-length coding (FLC) with the number of bits (or bit length) can be used to signal ALF data. In an example, information about the ALF data may include information about a bit length of an absolute value of an ALF luma coefficient (i.e., alf_luma_coeff_abs_len_minus1) and/or information about a bit length of an absolute value of a ALF chroma coefficient (i.e. alf_chroma_coeff_abs_len_minus1). For example, information about the bit length of the absolute value of the ALF luma coefficient and/or the information about the bit length of the absolute value of the ALF chroma coefficient may be encoded with ue(v).
[0156] A tabela a seguir mostra uma sintaxe exemplificativa do SPS de acordo com a presente modalidade. Tabela 9 [0156] The following table shows an exemplary syntax of the SPS according to the present embodiment. Table 9
[0157] A tabela a seguir mostra uma semântica exemplificativa de elementos de sintaxe incluídos na sintaxe. Tabela 10 [0157] The following table shows an exemplary semantics of syntax elements included in the syntax. Table 10
[0158] A tabela a seguir mostra uma sintaxe exemplificativa do SPS de acordo com a presente modalidade. Tabela 11 [0158] The following table shows an exemplary syntax of the SPS according to the present embodiment. Table 11
[0159] A tabela a seguir mostra uma semântica exemplificativa de elementos de sintaxe incluídos na sintaxe. Tabela 12 [0159] The following table shows an exemplary semantics of syntax elements included in the syntax. Table 12
[0160] A tabela a seguir mostra uma sintaxe exemplificativa de dados de ALF de acordo com a presente modalidade. Tabela 13 [0160] The following table shows an exemplary syntax of ALF data according to the present embodiment. Table 13
[0161] A tabela a seguir mostra uma semântica exemplificativa de elementos de sintaxe incluídos na sintaxe. Tabela 14 [0161] The following table shows an exemplary semantics of syntax elements included in the syntax. Table 14
[0162] De acordo com as modalidades do presente documento descritas em conjunto com as tabelas acima, por meio de codificação de imagem com base em subimagens e/ou limites virtuais, a qualidade de imagem subjetiva/objetiva pode ser melhorada e pode haver uma diminuição no consumo de recursos de hardware necessário para codificação.[0162] According to the embodiments of the present document described in conjunction with the tables above, through image coding based on subimages and/or virtual thresholds, the subjective/objective image quality may be improved and there may be a decrease in the consumption of hardware resources required for encoding.
[0163] A Figura 8 e Figura 9 mostram esquematicamente um exemplo de um método de codificação de vídeo/imagem e componentes relacionados de acordo com a(s) modalidade(s) do presente documento.[0163] Figure 8 and Figure 9 schematically show an example of a video/image coding method and related components in accordance with the embodiment(s) of the present document.
[0164] O método divulgado na Figura 8 pode ser realizado pelo aparelho de codificação divulgado na Figura 2 ou Figura 9. Especificamente, por exemplo, S800 e S810 da Figura 8 pode ser realizado por um processador residual 230 do aparelho de codificação da Figura 9, S820 e/ou S830 da Figura 8 pode ser realizado por um filtro 260 do aparelho de codificação da Figura 9 e S840 da Figura 8 pode ser realizado por um codificador de entropia 240 do aparelho de codificação da Figura 9. Além disso, embora não mostrado na Figura 8, amostras de predição ou informações relacionadas à predição podem ser derivadas por um preditor 220 do aparelho de codificação da Figura 8, e um fluxo de bits pode ser gerado a partir de informações residuais ou informações relacionadas à predição pelo codificador de entropia 240 do aparelho de codificação. O método divulgado na Figura 8 pode incluir as modalidades acima mencionadas no presente documento..[0164] The method disclosed in Figure 8 can be carried out by the coding apparatus disclosed in Figure 2 or Figure 9. Specifically, for example, S800 and S810 of Figure 8 can be carried out by a residual processor 230 of the coding apparatus of Figure 9 , S820 and/or S830 of Figure 8 may be realized by a filter 260 of the coding apparatus of Figure 9 and S840 of Figure 8 may be realized by an entropy encoder 240 of the coding apparatus of Figure 9. Furthermore, although not shown in Figure 8, prediction samples or prediction-related information may be derived by a predictor 220 of the coding apparatus of Figure 8, and a bit stream may be generated from residual information or prediction-related information by the entropy encoder. 240 of the coding device. The method disclosed in Figure 8 may include the above-mentioned embodiments herein.
[0165] Com referência à Figura 8, o aparelho de codificação pode derivar amostras residuais (S800). O aparelho de codificação pode derivar amostras residuais para um bloco atual e as amostras residuais para o bloco atual podem ser derivadas com base em amostras originais e amostras de predição do bloco atual. Especificamente, o aparelho de codificação pode derivar as amostras de predição dos blocos atuais, com base em um modo de predição. Neste caso, vários métodos de predição divulgados no presente documento, tais como inter predição ou intra predição, podem ser aplicados. As amostras residuais podem ser derivadas com base nas amostras de predição e nas amostras originais. Para inter predição, o aparelho de codificação pode derivar pelo menos uma imagem de referência e pode realizar a inter predição com base na pelo menos uma imagem de referência. Amostras de predição podem ser geradas com base na inter predição. O aparelho de codificação pode gerar as informações relacionadas à imagem de referência, com base em pelo menos uma imagem de referência.[0165] Referring to Figure 8, the coding apparatus can derive residual samples (S800). The encoding apparatus may derive residual samples for a current block, and residual samples for the current block may be derived based on original samples and prediction samples of the current block. Specifically, the coding apparatus may derive prediction samples from the current blocks based on a prediction mode. In this case, various prediction methods disclosed herein, such as inter prediction or intra prediction, can be applied. Residual samples can be derived based on the prediction samples and the original samples. For inter prediction, the coding apparatus may derive at least one reference image and may perform the inter prediction based on the at least one reference image. Prediction samples can be generated based on inter prediction. The encoding apparatus may generate information related to the reference image based on at least one reference image.
[0166] O aparelho de codificação pode derivar coeficientes de transformada. O aparelho de codificação pode derivar os coeficientes de transformada, com base em um processo de transformada para as amostras residuais. Por exemplo, o processo de transformada pode incluir pelo menos um de uma DCT, uma DST, uma GBT e uma CNT.[0166] The coding apparatus can derive transform coefficients. The coding apparatus may derive the transform coefficients based on a transform process for the residual samples. For example, the transform process may include at least one of a DCT, a DST, a GBT and a CNT.
[0167] O aparelho de codificação pode derivar coeficientes de transformada quantizados. O aparelho de codificação pode derivar os coeficientes de transformada quantificados, com base em um processo de quantificação para os coeficientes de transformada. Os coeficientes de transformada quantizados podem ter uma forma de vetor unidimensional, com base em uma ordem de varredura de coeficiente.[0167] The coding apparatus can derive quantized transform coefficients. The coding apparatus may derive the quantified transform coefficients based on a quantification process for the transform coefficients. Quantized transform coefficients can have a one-dimensional vector form, based on a coefficient sweep order.
[0168] O aparelho de codificação pode gerar informações residuais (S810). O aparelho de codificação pode gerar a informação residual, com base nos coeficientes de transformada. O aparelho de codificação pode gerar informações residuais indicando os coeficientes de transformada quantizados. A informação residual pode ser gerada através de vários métodos de codificação, como Golomb exponencial, CAVLC, CABAC ou semelhantes.[0168] The coding apparatus may generate residual information (S810). The coding apparatus can generate residual information based on the transform coefficients. The coding apparatus may generate residual information indicating the quantized transform coefficients. Residual information can be generated through various coding methods, such as exponential Golomb, CAVLC, CABAC or similar.
[0169] O aparelho de codificação pode gerar amostras reconstruídas. O aparelho de codificação pode gerar as amostras reconstruídas, com base na informação residual. As amostras reconstruídas podem ser geradas adicionando a amostra de predição e as amostras residuais com base na informação residual. Especificamente, o aparelho de codificação pode realizar predição (intra ou inter predição) no bloco atual e pode gerar amostras reconstruídas, com base nas amostras originais e nas amostras de predição geradas a partir da predição.[0169] The coding apparatus can generate reconstructed samples. The coding apparatus can generate the reconstructed samples based on the residual information. The reconstructed samples can be generated by adding the prediction sample and residual samples based on the residual information. Specifically, the coding apparatus can perform prediction (intra or inter prediction) on the current block and can generate reconstructed samples, based on the original samples and the prediction samples generated from the prediction.
[0170] As amostras reconstruídas podem incluir amostras de luma reconstruídas e amostras de croma reconstruídas. Especificamente, as amostras residuais podem incluir amostras residuais de luma e amostras residuais de croma. As amostras de luma residuais podem ser geradas com base em amostras de luma originais e amostras de luma de predição. As amostras de croma residuais podem ser geradas com base nas amostras de croma originais e nas amostras de croma de predição. O aparelho de codificação pode derivar coeficientes de transformada para as amostras de luminância residuais (coeficientes de transformada de luminância) e/ou coeficientes de transformada para as amostras de croma residuais (coeficientes de transformada de croma). Os coeficientes de transformada quantizados podem incluir coeficientes de transformada de luma quantificados e/ou coeficientes de transformada de croma quantificados.[0170] The reconstructed samples may include reconstructed luma samples and reconstructed chroma samples. Specifically, residual samples may include residual luma samples and residual chroma samples. Residual luma samples can be generated based on original luma samples and prediction luma samples. Residual chroma samples can be generated based on the original chroma samples and the prediction chroma samples. The coding apparatus may derive transform coefficients for the residual luminance samples (luminance transform coefficients) and/or transform coefficients for the residual chroma samples (chroma transform coefficients). Quantized transform coefficients may include quantized luma transform coefficients and/or quantized chroma transform coefficients.
[0171] O aparelho de codificação pode determinar se o processo de filtragem em loop é realizado através de limites virtuais (S820). Os limites virtuais podem ser os mesmos que os limites virtuais acima mencionados. Além disso, o processo de filtragem em loop pode incluir pelo menos um dentre um processo de desbloqueio, um processo de SAO e um processo de ALF.[0171] The coding apparatus can determine whether the loop filtering process is carried out through virtual boundaries (S820). The virtual limits can be the same as the aforementioned virtual limits. Furthermore, the loop filtering process may include at least one of an unlocking process, an SAO process, and an ALF process.
[0172] O aparelho de codificação pode gerar informações relacionadas à filtragem em loop (S830). O aparelho de codificação pode gerar informações relacionadas à filtragem em loop, com base na determinação da etapa S820. Aqui, as informações relacionadas à filtragem em loop podem se referir a informações usadas para realizar o processo de filtragem em loop. Por exemplo, as informações relacionadas à filtragem em loop podem incluir informações sobre limites virtuais descritos no presente documento (um sinalizador de presença de limites virtuais de SPS, um sinalizador de presença de limites virtuais de cabeçalho de imagem, informações sobre o número de limites virtuais, informações sobre posições dos limites virtuais, etc.).[0172] The coding apparatus may generate information related to loop filtering (S830). The coding apparatus may generate loop filtering-related information based on the determination of step S820. Here, information related to loop filtering may refer to information used to carry out the loop filtering process. For example, information related to loop filtering may include information about virtual boundaries described herein (an SPS virtual boundaries presence flag, an image header virtual boundaries presence flag, information about the number of virtual boundaries , information about virtual boundary positions, etc.).
[0173] O aparelho de codificação pode codificar informações de vídeo/imagem (S840). As informações da imagem podem incluir informações residuais, informações relacionadas à predição, informações relacionadas à imagem de referência, informações relacionadas à subimagem, informações relacionadas à filtragem em loop e/ou informações relacionadas aos limites virtuais (e/ou informações adicionais relacionadas aos limites virtuais). As informações de vídeo/imagem codificadas podem ser emitidas na forma de um fluxo de bits. O fluxo de bits pode ser transmitido para um aparelho de decodificação através de uma rede ou meio de armazenamento.[0173] The encoding apparatus can encode video/image information (S840). Image information may include residual information, prediction-related information, reference image-related information, sub-image related information, loop filtering-related information, and/or virtual boundary-related information (and/or additional virtual boundary-related information ). The encoded video/image information can be output in the form of a bit stream. The bit stream may be transmitted to a decoding apparatus via a network or storage medium.
[0174] As informações de imagem/vídeo podem incluir uma variedade de informações de acordo com uma modalidade do presente documento. Por exemplo, a imagem/vídeo pode incluir informações divulgadas em pelo menos uma das tabelas 1 a 14 acima.[0174] The image/video information may include a variety of information in accordance with an embodiment of the present document. For example, the image/video may include information disclosed in at least one of tables 1 to 14 above.
[0175] Em uma modalidade, as informações de imagem podem incluir um conjunto de parâmetros de sequência (SPS) e informações de cabeçalho de imagem referentes ao SPS. Por exemplo, se informações adicionais relacionadas a limites virtuais estão incluídas no SPS ou as informações de cabeçalho de imagem podem ser determinadas com base em se a reamostragem de imagem de referência está habilitada. Aqui, a reamostragem da imagem de referência pode ser realizada de acordo com o RPR acima mencionado. As informações adicionais relacionadas aos limites virtuais também podem ser simplesmente referidas como informações relacionadas aos limites virtuais. O termo ‘adicional’ é usado para ser distinguido das informações relacionadas aos limites virtuais, como um sinalizador de presente de limites virtuais SPS e/ou um sinalizador de presente de limites virtuais PH.[0175] In one embodiment, the image information may include a set of sequence parameters (SPS) and image header information pertaining to the SPS. For example, whether additional information related to virtual boundaries is included in the SPS or image header information can be determined based on whether reference image resampling is enabled. Here, resampling of the reference image can be performed according to the above-mentioned RPR. Additional information related to virtual boundaries may also be simply referred to as virtual boundary-related information. The term 'additional' is used to be distinguished from information relating to virtual boundaries, such as an SPS virtual boundaries present flag and/or a PH virtual boundaries present flag.
[0176] Em uma modalidade, as informações adicionais relacionadas aos limites virtuais podem incluir o número de limites virtuais e posições dos limites virtuais.[0176] In one embodiment, additional information related to the virtual boundaries may include the number of virtual boundaries and positions of the virtual boundaries.
[0177] Em uma modalidade, as informações adicionais relacionadas aos limites virtuais podem incluir informações sobre o número de limites virtuais verticais, informações sobre as posições dos limites virtuais verticais, informações sobre o número de limites virtuais horizontais e informações sobre as posições dos limites horizontais limites virtuais.[0177] In one embodiment, additional information related to the virtual boundaries may include information about the number of vertical virtual boundaries, information about the positions of the vertical virtual boundaries, information about the number of horizontal virtual boundaries, and information about the positions of the horizontal boundaries virtual limits.
[0178] Em uma modalidade, as informações de imagem podem incluir um sinalizador habilitado para reamostragem de imagem de referência. Por exemplo, se a reamostragem da imagem de referência está habilitada pode ser determinado com base no sinalizador habilitado para reamostragem da imagem de referência.[0178] In one embodiment, the image information may include a flag enabled for reference image resampling. For example, whether reference image resampling is enabled can be determined based on the reference image resampling enabled flag.
[0179] Em uma modalidade, o SPS pode incluir um sinalizador de presente de limites virtuais do SPS relacionado ao fato de o SPS incluir as informações adicionais relacionadas aos limites virtuais. Um valor do sinalizador presente de limites virtuais SPS pode ser determinado como 0, com base no fato de que a reamostragem da imagem de referência está habilitada.[0179] In one embodiment, the SPS may include an SPS virtual limits present flag related to whether the SPS includes the additional information related to the virtual limits. A value of the SPS Virtual Limits Present flag can be determined as 0, based on the fact that resampling of the reference image is enabled.
[0180] Em uma modalidade, as informações adicionais relacionadas aos limites virtuais podem não ser incluídas no SPS, com base no fato de que a reamostragem da imagem de referência está habilitada. Neste caso, por exemplo, as informações do cabeçalho da imagem podem incluir as informações adicionais relacionadas aos limites virtuais.[0180] In one embodiment, additional information related to virtual boundaries may not be included in the SPS, based on the fact that resampling of the reference image is enabled. In this case, for example, the image header information may include additional information related to virtual boundaries.
[0181] Em uma modalidade, a imagem atual pode incluir uma subimagem como apenas uma subimagem. A subimagem pode ser codificada independentemente. As amostras reconstruídas podem ser geradas com base na subimagem e as informações relacionadas à subimagem podem ser geradas com base na subimagem. Além disso, as informações da imagem podem incluir informações relacionadas à subimagem.[0181] In one embodiment, the current image may include a subimage as just a subimage. The subimage can be encoded independently. Reconstructed samples can be generated based on the subimage, and information related to the subimage can be generated based on the subimage. Additionally, image information may include information related to the subimage.
[0182] Em uma modalidade, um sinalizador de manipulação de imagem para a subimagem (um sinalizador subpicture_treated_as_picture) pode não estar presente nas informações da imagem. Portanto, um valor de sinalizador subpicture_treated_as_picture pode ser definido por meio de inferência (estimativa ou predição) no final da decodificação. Em um exemplo, o valor do sinalizador subpicture_treated_as_picture pode ser definido como 1.[0182] In one embodiment, an image manipulation flag for the subimage (a subpicture_treated_as_picture flag) may not be present in the image information. Therefore, a subpicture_treated_as_picture flag value can be set through inference (estimation or prediction) at the end of decoding. In one example, the value of the subpicture_treated_as_picture flag might be set to 1.
[0183] Em uma modalidade, a imagem atual pode incluir subimagens. Em um exemplo, as subimagens podem ser derivadas com base em um processo de fusão de duas ou mais subimagens codificadas independentemente. As amostras reconstruídas podem ser geradas com base nas subimagens. As informações relacionadas à subimagem podem ser geradas com base nas subimagens. Além disso, as informações da imagem podem incluir as informações relacionadas à subimagem.[0183] In one embodiment, the current image may include subimages. In one example, subimages may be derived based on a process of merging two or more independently encoded subimages. Reconstructed samples can be generated based on the subimages. Sub-image related information can be generated based on sub-images. Additionally, image information may include information related to the subimage.
[0184] A Figura 10 e Figura 11 mostram esquematicamente um exemplo de um método de decodificação de vídeo/imagem e componentes relacionados de acordo com a(s) modalidade(s) do presente documento.[0184] Figure 10 and Figure 11 schematically show an example of a video/image decoding method and related components in accordance with the embodiment(s) of the present document.
[0185] O método divulgado na Figura 10 pode ser realizado pelo aparelho de decodificação divulgado na Figura 3 ou Figura 11. Especificamente, por exemplo, S1000 da Figura 10 pode ser realizado por um decodificador de entropia 310 do aparelho de decodificação, S1010 pode ser realizado por um processador residual 320 e/ou adicionador 340 do aparelho de decodificação e S1020 pode ser realizado por um filtro 350 do aparelho de decodificação. O método divulgado na Figura 10 pode incluir as modalidades acima mencionadas no presente documento.[0185] The method disclosed in Figure 10 can be realized by the decoding apparatus disclosed in Figure 3 or Figure 11. Specifically, for example, S1000 of Figure 10 can be realized by an entropy decoder 310 of the decoding apparatus, S1010 can be performed by a residual processor 320 and/or adder 340 of the decoding apparatus and S1020 may be performed by a filter 350 of the decoding apparatus. The method disclosed in Figure 10 may include the above-mentioned embodiments herein.
[0186] Com referência à Figura 10, o aparelho de decodificação pode receber/obter informações de vídeo/imagem (S1000). As informações de vídeo/imagem podem incluir informações residuais, informações relacionadas à predição, informações relacionadas à imagem de referência, informações relacionadas à subimagem, informações relacionadas à filtragem em loop e/ou informações relacionadas aos limites virtuais (e/ou limites virtuais adicionais- informação relacionada). O aparelho de decodificação pode receber/obter as informações de imagem/vídeo através de um fluxo de bits.[0186] Referring to Figure 10, the decoding apparatus can receive/obtain video/image information (S1000). Video/image information may include residual information, prediction-related information, reference image-related information, sub-image-related information, loop filtering-related information, and/or virtual boundary-related information (and/or additional virtual boundaries- related information). The decoding apparatus can receive/obtain the image/video information via a bit stream.
[0187] As informações de imagem/vídeo podem incluir uma variedade de informações de acordo com uma modalidade do presente documento. Por exemplo, a imagem/vídeo pode incluir informações divulgadas em pelo menos uma das tabelas 1 a 14 acima.[0187] The image/video information may include a variety of information in accordance with an embodiment of the present document. For example, the image/video may include information disclosed in at least one of tables 1 to 14 above.
[0188] O aparelho de decodificação pode derivar coeficientes de transformada quantizados. O aparelho de decodificação pode derivar os coeficientes de transformada quantizados, com base na informação residual. Os coeficientes de transformada quantizados podem ter uma forma de vetor unidimensional, com base em uma ordem de varredura de coeficiente. Os coeficientes de transformada quantizados podem incluir coeficientes de transformada de luma quantificados e/ou coeficientes de transformada de croma quantificados.[0188] The decoding apparatus can derive quantized transform coefficients. The decoding apparatus may derive the quantized transform coefficients based on the residual information. Quantized transform coefficients can have a one-dimensional vector form, based on a coefficient sweep order. Quantized transform coefficients may include quantized luma transform coefficients and/or quantized chroma transform coefficients.
[0189] O aparelho de decodificação pode derivar os coeficientes de transformada. O aparelho de decodificação pode derivar os coeficientes de transformada, com base em um processo de desquantização para os coeficientes de transformada quantizados. O aparelho de decodificação pode derivar coeficientes de transformada de luma por meio de desquantização, com base nos coeficientes de transformada de luma quantizados. O aparelho de decodificação pode derivar coeficientes de transformada de croma através de desquantização, com base nos coeficientes de transformada de croma quantizados.[0189] The decoding apparatus can derive the transform coefficients. The decoding apparatus may derive the transform coefficients based on a dequantization process for the quantized transform coefficients. The decoding apparatus may derive luma transform coefficients through dequantization based on the quantized luma transform coefficients. The decoding apparatus may derive chroma transform coefficients through dequantization based on the quantized chroma transform coefficients.
[0190] O aparelho de decodificação pode gerar/derivar amostras residuais. O aparelho de decodificação pode derivar as amostras residuais, com base no processo de transformada inversa para os coeficientes de transformada. O aparelho de decodificação pode derivar amostras de luma residuais através do processo de transformada inversa, com base nos coeficientes de transformada de luma. O aparelho de decodificação pode derivar amostras de croma residuais através da transformada inversa, com base nos coeficientes de transformada de croma.[0190] The decoding apparatus may generate/derive residual samples. The decoding apparatus may derive the residual samples based on the inverse transform process for the transform coefficients. The decoding apparatus may derive residual luma samples through the inverse transform process based on the luma transform coefficients. The decoding apparatus may derive residual chroma samples via inverse transform based on the chroma transform coefficients.
[0191] O aparelho de decodificação pode derivar pelo menos uma imagem de referência, com base em informações relacionadas à imagem de referência. O aparelho de decodificação pode realizar um processo de predição, com base em pelo menos uma imagem de referência. Especificamente, o aparelho de decodificação pode derivar as amostras de predição dos blocos atuais, com base em um modo de predição. Neste caso, vários métodos de predição divulgados no presente documento, tais como inter predição ou intra predição, podem ser aplicados. O aparelho de decodificação pode gerar amostras de predição para o bloco atual na imagem atual, com base no processo de predição. Por exemplo, o aparelho de decodificação pode realizar um processo de inter predição, com base em pelo menos uma imagem de referência, e pode gerar amostras de predição, com base no processo de inter predição.[0191] The decoding apparatus may derive at least one reference image, based on information related to the reference image. The decoding apparatus may perform a prediction process based on at least one reference image. Specifically, the decoding apparatus may derive prediction samples from the current blocks based on a prediction mode. In this case, various prediction methods disclosed herein, such as inter prediction or intra prediction, can be applied. The decoding apparatus may generate prediction samples for the current block in the current image based on the prediction process. For example, the decoding apparatus may perform an inter-prediction process based on at least one reference image, and may generate prediction samples based on the inter-prediction process.
[0192] O aparelho de decodificação pode gerar/derivar amostras reconstruídas (S1010). Por exemplo, o aparelho de decodificação pode gerar/derivar amostras de luma reconstruídas e/ou amostras de croma reconstruídas. O aparelho de decodificação pode gerar as amostras de luma reconstruídas e/ou as amostras de croma reconstruídas, com base na informação residual. O aparelho de decodificação pode gerar as amostras reconstruídas, com base na informação residual. As amostras reconstruídas podem incluir as amostras de luma reconstruídas e/ou as amostras de croma reconstruídas. Um componente de luma das amostras reconstruídas pode corresponder às amostras de luma reconstruídas e um componente de croma das amostras reconstruídas pode corresponder às amostras de croma reconstruídas. O aparelho de decodificação pode gerar amostras de luma de predição e/ou amostras de croma de predição por meio de um processo de predição. O aparelho de decodificação pode gerar as amostras de luma reconstruídas, com base nas amostras de luma de predição e nas amostras de luma residuais. O aparelho de decodificação pode gerar as amostras de croma construídas, com base nas amostras de croma de predição e nas amostras de croma residuais.[0192] The decoding apparatus can generate/derive reconstructed samples (S1010). For example, the decoding apparatus may generate/derive reconstructed luma samples and/or reconstructed chroma samples. The decoding apparatus may generate the reconstructed luma samples and/or the reconstructed chroma samples based on the residual information. The decoding apparatus can generate the reconstructed samples based on the residual information. The reconstructed samples may include the reconstructed luma samples and/or the reconstructed chroma samples. A luma component of the reconstructed samples may correspond to the reconstructed luma samples, and a chroma component of the reconstructed samples may correspond to the reconstructed chroma samples. The decoding apparatus may generate prediction luma samples and/or prediction chroma samples via a prediction process. The decoding apparatus can generate the reconstructed luma samples based on the prediction luma samples and the residual luma samples. The decoding apparatus can generate the constructed chroma samples based on the prediction chroma samples and the residual chroma samples.
[0193] O aparelho de decodificação pode gerar amostras reconstruídas modificadas (filtradas) (S1020). O aparelho de decodificação pode gerar as amostras reconstruídas modificadas, com base em um processo de filtragem em loop para as amostras reconstruídas. O aparelho de decodificação pode gerar as amostras reconstruídas modificadas, com base em informações relacionadas à filtragem em loop. O aparelho de decodificação pode usar um processo de desbloqueio, um processo de SAO e/ou um processo de ALF para gerar as amostras reconstruídas modificadas.[0193] The decoding apparatus can generate modified (filtered) reconstructed samples (S1020). The decoding apparatus may generate the modified reconstructed samples based on a loop filtering process for the reconstructed samples. The decoding apparatus may generate the modified reconstructed samples based on information related to loop filtering. The decoding apparatus may use an unlocking process, an SAO process and/or an ALF process to generate the modified reconstructed samples.
[0194] Em uma modalidade, as informações de imagem podem incluir um SPS e informações de cabeçalho de imagem referentes ao SPS. Por exemplo, se informações adicionais relacionadas a limites virtuais estão incluídas no SPS ou as informações de cabeçalho de imagem podem ser determinadas com base em se a reamostragem de imagem de referência está habilitada. Aqui, a reamostragem da imagem de referência pode ser realizada de acordo com o RPR acima mencionado. As informações adicionais relacionadas aos limites virtuais também podem ser simplesmente referidas como informações relacionadas aos limites virtuais. O termo ‘adicional’ é usado para ser distinguido das informações relacionadas aos limites virtuais, como um sinalizador de presente de limites virtuais SPS e/ou um sinalizador de presente de limites virtuais de PH.[0194] In one embodiment, the image information may include an SPS and image header information regarding the SPS. For example, whether additional information related to virtual boundaries is included in the SPS or image header information can be determined based on whether reference image resampling is enabled. Here, resampling of the reference image can be performed according to the above-mentioned RPR. Additional information related to virtual boundaries may also be simply referred to as virtual boundary-related information. The term 'additional' is used to be distinguished from information relating to virtual boundaries, such as an SPS virtual boundaries present flag and/or a PH virtual boundaries present flag.
[0195] Em uma modalidade, as informações adicionais relacionadas aos limites virtuais podem incluir o número de limites virtuais e posições dos limites virtuais.[0195] In one embodiment, additional information related to the virtual boundaries may include the number of virtual boundaries and positions of the virtual boundaries.
[0196] Em uma modalidade, as informações adicionais relacionadas aos limites virtuais podem incluir informações sobre o número de limites virtuais verticais, informações sobre as posições dos limites virtuais verticais, informações sobre o número de limites virtuais horizontais e informações sobre as posições dos limites virtuais horizontais.[0196] In one embodiment, additional information related to the virtual boundaries may include information about the number of vertical virtual boundaries, information about the positions of the vertical virtual boundaries, information about the number of horizontal virtual boundaries, and information about the positions of the virtual boundaries horizontal.
[0197] Em uma modalidade, as informações de imagem podem incluir um sinalizador habilitado para reamostragem de imagem de referência. Por exemplo, se a reamostragem da imagem de referência está habilitada pode ser determinado com base no sinalizador habilitado para reamostragem da imagem de referência.[0197] In one embodiment, the image information may include a flag enabled for reference image resampling. For example, whether reference image resampling is enabled can be determined based on the reference image resampling enabled flag.
[0198] Em uma modalidade, o SPS pode incluir um sinalizador de presente de limites virtuais do SPS relacionado ao fato de o SPS incluir as informações adicionais relacionadas aos limites virtuais. Um valor do sinalizador presente de limites virtuais SPS pode ser determinado como 0, com base no fato de que a reamostragem da imagem de referência está habilitada.[0198] In one embodiment, the SPS may include an SPS virtual limits present flag related to whether the SPS includes the additional information related to the virtual limits. A value of the SPS Virtual Limits Present flag can be determined as 0, based on the fact that resampling of the reference image is enabled.
[0199] Em uma modalidade, as informações adicionais relacionadas aos limites virtuais podem não ser incluídas no SPS, com base no fato de que a reamostragem da imagem de referência está habilitada. Neste caso, por exemplo, as informações do cabeçalho da imagem podem incluir as informações adicionais relacionadas aos limites virtuais.[0199] In one embodiment, additional information related to virtual boundaries may not be included in the SPS, based on the fact that resampling of the reference image is enabled. In this case, for example, the image header information may include additional information related to virtual boundaries.
[0200] Em uma modalidade, a imagem atual pode incluir uma subimagem como apenas uma subimagem. A subimagem pode ser codificada independentemente. As amostras reconstruídas podem ser geradas com base na subimagem e as informações relacionadas à subimagem podem ser geradas com base na subimagem. Além disso, as informações da imagem podem incluir informações relacionadas à subimagem.[0200] In one embodiment, the current image may include a subimage as just a subimage. The subimage can be encoded independently. Reconstructed samples can be generated based on the subimage, and information related to the subimage can be generated based on the subimage. Additionally, image information may include information related to the subimage.
[0201] Em uma modalidade, um sinalizador de manipulação de imagem para a subimagem (um sinalizador subpicture_treated_as_picture) pode não estar presente nas informações da imagem. Portanto, um valor de sinalizador subpicture_treated_as_picture pode ser definido por meio de inferência (estimativa ou predição) no final da decodificação. Em um exemplo, o valor do sinalizador subpicture_treated_as_picture pode ser definido como 1.[0201] In one embodiment, an image manipulation flag for the subimage (a subpicture_treated_as_picture flag) may not be present in the image information. Therefore, a subpicture_treated_as_picture flag value can be set through inference (estimation or prediction) at the end of decoding. In one example, the value of the subpicture_treated_as_picture flag might be set to 1.
[0202] Em uma modalidade, a imagem atual pode incluir subimagens. Em um exemplo, as subimagens podem ser derivadas com base em um processo de fusão de duas ou mais subimagens codificadas independentemente. As amostras reconstruídas podem ser geradas com base nas subimagens. As informações relacionadas à subimagem podem ser geradas com base nas subimagens. Além disso, as informações da imagem podem incluir as informações relacionadas à subimagem.[0202] In one embodiment, the current image may include subimages. In one example, subimages may be derived based on a process of merging two or more independently encoded subimages. Reconstructed samples can be generated based on the subimages. Sub-image related information can be generated based on sub-images. Additionally, image information may include information related to the subimage.
[0203] Na presença da amostra residual para o bloco atual, o aparelho de decodificação pode receber informações residuais para um bloco atual. A informação residual pode incluir um coeficiente de transformação para amostras residuais. O aparelho de decodificação pode derivar amostras residuais (ou uma matriz de amostra residual) para o bloco atual, com base na informação residual. Especificamente, o aparelho de decodificação pode derivar coeficientes de transformada quantizados, com base na informação residual. Os coeficientes de transformada quantizados podem ter uma forma de vetor unidimensional, com base em uma ordem de varredura de coeficiente. O aparelho de decodificação pode derivar os coeficientes de transformada, com base em um processo de desquantização para os coeficientes de transformada quantizados. O aparelho de decodificação pode derivar amostras residuais, com base nos coeficientes de transformada.[0203] In the presence of the residual sample for the current block, the decoding apparatus may receive residual information for a current block. The residual information may include a transformation coefficient for residual samples. The decoding apparatus may derive residual samples (or a residual sample matrix) for the current block based on the residual information. Specifically, the decoding apparatus may derive quantized transform coefficients based on the residual information. Quantized transform coefficients can have a one-dimensional vector form, based on a coefficient sweep order. The decoding apparatus may derive the transform coefficients based on a dequantization process for the quantized transform coefficients. The decoding apparatus may derive residual samples based on the transform coefficients.
[0204] O aparelho de decodificação pode gerar amostras reconstruídas, com base em amostras de predição (intra) e amostras residuais, e pode derivar um bloco reconstruído ou imagem reconstruída, com base nas amostras reconstruídas. Especificamente, o aparelho de decodificação pode incluir amostras reconstruídas, com base em uma soma entre as amostras de predição (intra) e as amostras residuais. Em seguida, conforme descrito acima, o aparelho de decodificação pode opcionalmente aplicar o processo de filtragem em loop, tal como a filtragem de desbloqueio e/ou o processo SAO à imagem reconstruída para melhorar a qualidade da imagem subjetiva/objetiva.[0204] The decoding apparatus may generate reconstructed samples, based on prediction (intra) samples and residual samples, and may derive a reconstructed block or reconstructed image, based on the reconstructed samples. Specifically, the decoding apparatus may include reconstructed samples, based on a sum between the prediction (intra) samples and the residual samples. Then, as described above, the decoding apparatus may optionally apply the loop filtering process such as deblocking filtering and/or the SAO process to the reconstructed image to improve the quality of the subjective/objective image.
[0205] Por exemplo, o aparelho de decodificação pode obter informações de imagem incluindo todas ou partes das informações acima descritas (ou elementos de sintaxe) decodificando o fluxo de bits ou a informação codificada. Além disso, o fluxo de bits ou as informações codificadas podem ser armazenadas em um meio de armazenamento legível por computador e podem fazer com que o método de decodificação descrito acima seja executado.[0205] For example, the decoding apparatus may obtain image information including all or parts of the above-described information (or syntax elements) by decoding the bit stream or encoded information. Furthermore, the bit stream or encoded information may be stored on a computer-readable storage medium and may cause the decoding method described above to be performed.
[0206] Embora os métodos tenham sido descritos com base em um fluxograma no qual as etapas ou blocos são listados em sequência nas modalidades descritas acima, as etapas do presente documento não estão limitadas a uma determinada ordem e uma determinada etapa pode ser realizada em uma etapa diferente ou em uma ordem diferente ou simultaneamente em relação à descrita acima. Além disso, será entendido pelos versados na técnica que as etapas dos fluxogramas não são exclusivas, e outra etapa pode ser incluída neles ou uma ou mais etapas do fluxograma podem ser excluídas sem exercer influência no escopo do presente divulgação.[0206] Although the methods have been described based on a flowchart in which the steps or blocks are listed in sequence in the embodiments described above, the steps of the present document are not limited to a certain order and a given step can be performed in a different step or in a different order or simultaneously in relation to that described above. Furthermore, it will be understood by those skilled in the art that the steps of the flowcharts are not exclusive, and another step may be included therein or one or more steps of the flowchart may be excluded without exerting influence on the scope of the present disclosure.
[0207] O método acima mencionado de acordo com a presente divulgação pode estar na forma de software e o aparelho de codificação e/ou aparelho de decodificação de acordo com a presente divulgação pode ser incluído em um dispositivo para realizar processamento de imagem, por exemplo, uma TV, um computador, um smartphone, um decodificador, um dispositivo de exibição ou semelhante.[0207] The above-mentioned method according to the present disclosure may be in the form of software and the encoding apparatus and/or decoding apparatus according to the present disclosure may be included in a device for performing image processing, e.g. , a TV, a computer, a smartphone, a set-top box, a display device or the like.
[0208] Quando as modalidades da presente divulgação são implementadas por software, o método supracitado pode ser implementado por um módulo (processo ou função) que executa a função supracitada. O módulo pode ser armazenado em uma memória e executado por um processador. A memória pode ser instalada dentro ou fora do processador e pode ser conectada ao processador através de vários meios bem conhecidos. O processador pode incluir Circuito Integrado Específico de Aplicação (ASIC), outros chipsets, um circuito lógico e/ou um dispositivo de processamento de dados. A memória pode incluir uma memória somente leitura (ROM), uma memória de acesso aleatório (RAM), uma memória flash, um cartão de memória, um meio de armazenamento e/ou outro dispositivo de armazenamento. Em outras palavras, as modalidades de acordo com a presente divulgação podem ser implementadas e executadas em um processador, um microprocessador, um controlador ou um chip. Por exemplo, as unidades funcionais ilustradas nas respectivas figuras podem ser implementadas e executadas em um computador, um processador, um microprocessador, um controlador ou um chip. Nesse caso, informações sobre implementação (por exemplo, informações sobre instruções) ou algoritmos podem ser armazenadas em um meio de armazenamento digital.[0208] When the embodiments of the present disclosure are implemented by software, the aforementioned method can be implemented by a module (process or function) that performs the aforementioned function. The module can be stored in memory and executed by a processor. Memory can be installed inside or outside the processor and can be connected to the processor through several well-known means. The processor may include an Application Specific Integrated Circuit (ASIC), other chipsets, a logic circuit and/or a data processing device. The memory may include a read-only memory (ROM), a random access memory (RAM), a flash memory, a memory card, a storage medium and/or other storage device. In other words, embodiments according to the present disclosure can be implemented and executed on a processor, a microprocessor, a controller, or a chip. For example, the functional units illustrated in the respective figures can be implemented and executed on a computer, a processor, a microprocessor, a controller or a chip. In this case, implementation information (e.g. instruction information) or algorithms may be stored on a digital storage medium.
[0209] Além disso, o aparelho de decodificação e o aparelho de codificação aos quais a(s) modalidade(s) do presente documento são aplicadas podem ser incluídos em um transceptor de transmissão multimídia, um terminal de comunicação móvel, um dispositivo de vídeo de cinema em casa, um vídeo de cinema digital dispositivo, uma câmera de vigilância, um dispositivo de bate-papo por vídeo e um dispositivo de comunicação em tempo real, como comunicação de vídeo, um dispositivo de streaming móvel, um meio de armazenamento, uma filmadora, um provedor de serviços de vídeo sob demanda (VoD), um Over The Top (OTT ) dispositivo de vídeo, um provedor de serviços de streaming de internet, um dispositivo de vídeo 3D, um dispositivo de Realidade Virtual (VR), um dispositivo de Realidade Aumentada (AR), um dispositivo de vídeo de telefone de imagem, um terminal de veículo (por exemplo, um veículo (incluindo um veículo), um terminal de avião ou um terminal de navio) e um dispositivo de vídeo médico; e pode ser usado para processar um sinal de imagem ou dados. Por exemplo, o dispositivo de vídeo OTT pode incluir um console de jogos, um Blu-ray player, uma TV conectada à Internet, um sistema de home theater, um smartphone, um tablet PC e um gravador de vídeo digital (DVR).[0209] Furthermore, the decoding apparatus and the encoding apparatus to which the embodiment(s) of the present document are applied may be included in a multimedia transmission transceiver, a mobile communication terminal, a video device home cinema device, a digital cinema video device, a surveillance camera, a video chat device and a real-time communication device such as video communication, a mobile streaming device, a storage medium, a camcorder, a video on demand (VoD) service provider, an Over The Top (OTT) video device, an internet streaming service provider, a 3D video device, a Virtual Reality (VR) device, an Augmented Reality (AR) device, an image phone video device, a vehicle terminal (e.g., a vehicle (including a vehicle), an airplane terminal, or a ship terminal), and a medical video device ; and can be used to process an image or data signal. For example, the OTT video device may include a game console, a Blu-ray player, an Internet-connected TV, a home theater system, a smartphone, a tablet PC, and a digital video recorder (DVR).
[0210] Além disso, o método de processamento ao qual a(s) modalidade(s) do presente documento é aplicada pode ser produzido na forma de um programa executado por um computador e pode ser armazenado em uma mídia de gravação legível por computador. Os dados multimídia com uma estrutura de dados de acordo com a(s) modalidade(s) do presente documento também podem ser armazenados no meio de gravação legível por computador. O meio de gravação legível por computador inclui todos os tipos de dispositivos de armazenamento e dispositivos de armazenamento distribuído nos quais os dados legíveis por computador são armazenados. O meio de gravação legível por computador pode incluir, por exemplo, um disco Blu-ray (BD), um barramento serial universal (USB), uma ROM, uma PROM, uma EPROM, uma EEPROM, uma RAM, um CD-ROM, uma fita magnética, um disquete e um dispositivo óptico de armazenamento de dados. A mídia de gravação legível por computador também inclui mídia incorporada na forma de uma onda portadora (por exemplo, transmissão pela Internet). Além disso, um fluxo de bits gerado pelo método de codificação pode ser armazenado no meio de gravação legível por computador ou transmitido através de uma rede de comunicação com ou sem fio.[0210] Furthermore, the processing method to which the embodiment(s) of the present document is applied may be produced in the form of a program executed by a computer and may be stored on a computer-readable recording medium. Multimedia data with a data structure according to the embodiment(s) of this document may also be stored on the computer-readable recording medium. Computer-readable recording medium includes all types of storage devices and distributed storage devices on which computer-readable data is stored. The computer-readable recording medium may include, for example, a Blu-ray Disc (BD), a universal serial bus (USB), a ROM, a PROM, an EPROM, an EEPROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk and an optical data storage device. Computer-readable recording media also includes media embedded in the form of a carrier wave (e.g., Internet transmission). Furthermore, a bit stream generated by the encoding method may be stored on the computer-readable recording medium or transmitted over a wired or wireless communication network.
[0211] Além disso, a(s) modalidade(s) do presente documento pode(m) ser incorporada(s) como um produto de programa de computador com base em um código de programa, e o código de programa pode ser executado em um computador de acordo com a(s) modalidade(s) do presente documento. O código do programa pode ser armazenado em um suporte legível por computador.[0211] Furthermore, the embodiment(s) of the present document may be embodied as a computer program product based on a program code, and the program code may be executed in a computer in accordance with the embodiment(s) of this document. The program code can be stored on a computer-readable medium.
[0212] A Figura 12 representa um exemplo de um sistema de streaming de conteúdo ao qual a modalidade do presente documento pode ser aplicada.[0212] Figure 12 represents an example of a content streaming system to which the embodiment of the present document can be applied.
[0213] Com referência à Figura 12, o sistema de streaming de conteúdo ao qual as modalidades do presente documento são aplicadas pode geralmente incluir um servidor de codificação, um servidor de streaming, um servidor web, um armazenamento de mídia, um dispositivo de usuário e um dispositivo de entrada multimídia.[0213] Referring to Figure 12, the content streaming system to which embodiments of the present document are applied may generally include an encoding server, a streaming server, a web server, a media store, a user device and a multimedia input device.
[0214] O servidor de codificação funciona para compactar em dados digitais o conteúdo de entrada dos dispositivos de entrada multimídia, como o smartphone, a câmera, a filmadora e semelhantes, para gerar um fluxo de bits e transmiti-lo ao servidor de streaming. Como outro exemplo, em um caso em que o dispositivo de entrada multimídia, como o telefone inteligente, a câmera, a filmadora ou semelhante, gera diretamente um fluxo de bits, o servidor de codificação pode ser omitido.[0214] The encoding server functions to compress the input content of multimedia input devices, such as the smartphone, camera, camcorder, and the like, into digital data to generate a bit stream and transmit it to the streaming server. As another example, in a case where the multimedia input device such as smart phone, camera, camcorder or the like directly outputs a bit stream, the encoding server may be omitted.
[0215] O fluxo de bits pode ser gerado por um método de codificação ou um método de geração de fluxo de bits ao qual as modalidades do presente documento são aplicadas. E o servidor de streaming pode armazenar temporariamente o fluxo de bits em um processo de transmissão ou recepção do fluxo de bits.[0215] The bitstream may be generated by a coding method or a bitstream generation method to which embodiments of the present document are applied. And the streaming server can temporarily store the bitstream in a process of transmitting or receiving the bitstream.
[0216] O servidor de streaming transmite dados multimídia para o equipamento do usuário com base na solicitação de um usuário através do servidor web, que funciona como um instrumento que informa ao usuário qual serviço existe. Quando o usuário solicita um serviço que o usuário deseja, o servidor web transfere a solicitação para o servidor de streaming e o servidor de streaming transmite dados multimídia ao usuário. A este respeito, o sistema de streaming de conteúdo pode incluir um servidor de controle separado e, neste caso, o servidor de controle funciona para controlar comandos/respostas entre os respectivos equipamentos no sistema de streaming de conteúdo.[0216] The streaming server transmits multimedia data to the user's equipment based on a user's request through the web server, which functions as an instrument that informs the user which service exists. When the user requests a service that the user wants, the web server transfers the request to the streaming server, and the streaming server transmits multimedia data to the user. In this regard, the content streaming system may include a separate control server, and in this case, the control server functions to control commands/responses between respective equipment in the content streaming system.
[0217] O servidor de streaming pode receber conteúdos do armazenamento de mídia e/ou do servidor de codificação. Por exemplo, caso o conteúdo seja recebido do servidor de codificação, o conteúdo pode ser recebido em tempo real. Nesse caso, o servidor de streaming pode armazenar o fluxo de bits por um período de tempo predeterminado para fornecer o serviço de streaming sem problemas.[0217] The streaming server may receive content from the media store and/or the encoding server. For example, if the content is received from the encoding server, the content can be received in real time. In this case, the streaming server can store the bitstream for a predetermined period of time to provide the streaming service smoothly.
[0218] Por exemplo, o equipamento do utilizador pode incluir um telemóvel, um smartphone, um computador portátil, um terminal de transmissão digital, um assistente digital pessoal (PDA), um leitor multimídia portátil (PMP), um sistema de navegação, um PC slate, um tablet PC, um ultrabook, um dispositivo vestível (por exemplo, um terminal tipo relógio (relógio inteligente), um terminal tipo vidro (vidro inteligente), um monitor de montado na cabeça (HMD)), uma TV digital, um computador desktop, uma sinalização digital ou semelhante.[0218] For example, user equipment may include a cell phone, a smartphone, a portable computer, a digital broadcast terminal, a personal digital assistant (PDA), a portable multimedia player (PMP), a navigation system, a slate PC, a tablet PC, an ultrabook, a wearable device (e.g., a watch-type terminal (smart watch), a glass-type terminal (smart glass), a head-mounted display (HMD)), a digital TV, a desktop computer, digital signage or similar.
[0219] Cada um dos servidores do sistema de streaming de conteúdo pode ser operado como servidor distribuído e, neste caso, os dados recebidos por cada servidor podem ser processados de forma distribuída.[0219] Each of the servers of the content streaming system can be operated as a distributed server, and in this case, the data received by each server can be processed in a distributed manner.
[0220] As reivindicações na presente descrição podem ser combinadas de várias maneiras. Por exemplo, as características técnicas nas reivindicações do método da presente descrição podem ser combinadas para serem implementadas ou executadas em um aparelho, e as características técnicas nas reivindicações do aparelho podem ser combinadas para serem implementadas ou executadas em um método. Além disso, as características técnicas na(s) reivindicação(ões) de método e reivindicação(ões) de aparelho podem ser combinadas para serem implementadas ou executadas em um aparelho. Além disso, as características técnicas na(s) reivindicação(ões) de método e reivindicação(ões) de aparelho podem ser combinadas para serem implementadas ou executadas em um método.[0220] The claims in the present description can be combined in various ways. For example, the technical features in the method claims of the present disclosure may be combined to be implemented or carried out in an apparatus, and the technical features in the apparatus claims may be combined to be implemented or carried out in a method. Furthermore, the technical features in the method claim(s) and apparatus claim(s) may be combined to be implemented or performed in an apparatus. Furthermore, the technical features in the method claim(s) and apparatus claim(s) may be combined to be implemented or carried out in a method.
Claims (4)
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US62/947,507 | 2019-12-12 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| BR122023025846A2 true BR122023025846A2 (en) | 2024-05-21 |
| BR122023025846B1 BR122023025846B1 (en) | 2025-01-28 |
Family
ID=
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP7684470B2 (en) | VIDEO CODING APPARATUS AND METHOD FOR CONTROLLING LOOP FILTERING - Patent application | |
| ES2987119T3 (en) | Image coding device and method based on filtering | |
| JP7311713B2 (en) | Image coding apparatus and method based on filtering | |
| US12160618B2 (en) | Image coding device and method for controlling loop filtering | |
| US20250039390A1 (en) | Apparatus and method for coding image on basis of signaling of information for filtering | |
| US20230057736A1 (en) | Image coding apparatus and method based on sub-picture | |
| US20230052204A1 (en) | Picture splitting-based image coding device and method | |
| BR122023025846A2 (en) | DECODING APPARATUS FOR IMAGE DECODING, CODING APPARATUS FOR IMAGE ENCODING, COMPUTER READABLE STORAGE MEDIUM AND APPARATUS FOR TRANSMITTING DATA TO AN IMAGE | |
| BR112022011511B1 (en) | IMAGE ENCODING AND DECODING METHODS, COMPUTER READABLE STORAGE MEDIUM AND DATA TRANSMISSION METHOD FOR AN IMAGE | |
| BR122023025846B1 (en) | DECODING APPARATUS FOR IMAGE DECODING, CODING APPARATUS FOR IMAGE CODING, COMPUTER-READABLE STORAGE MEDIUM AND APPARATUS FOR TRANSMITTING DATA FOR AN IMAGE | |
| RU2803187C1 (en) | Method and device for image coding based on sub-image | |
| BR122023024026A2 (en) | IMAGE CODING DEVICE AND METHOD FOR CONTROLLING IN-LOOP FILTERING | |
| BR122023026924A2 (en) | IMAGE CODING APPARATUS, IMAGE DECODING APPARATUS AND TRANSMISSION APPARATUS | |
| BR112022011549B1 (en) | Image decoding method performed by a decoding apparatus, image encoding method performed by an encoding apparatus, computer-readable storage medium, and data transmission method for an image | |
| BR122023025838A2 (en) | DECODING APPARATUS FOR DECODING IMAGES, CODING APPARATUS FOR ENCODING IMAGES, THE CODING APPARATUS, NON-TRAINER COMPUTER READABLE STORAGE MEDIA AND APPARATUS FOR TRANSMITTING DATA TO AN IMAGE | |
| BR112022009616B1 (en) | Image decoding method performed by a decoding device, image encoding method performed by a encoding device, and data transmission method for an image | |
| BR122023024024B1 (en) | DECODING APPARATUS FOR DECODING AN IMAGE, CODING APPARATUS FOR CODING AN IMAGE AND APPARATUS FOR TRANSMITTING DATA FOR AN IMAGE | |
| BR122023024029A2 (en) | IMAGE DECODING METHOD, IMAGE CODING METHOD AND DATA TRANSMISSION METHOD FOR AN IMAGE | |
| BR122023024024A2 (en) | DECODING APPARATUS FOR IMAGE DECODING, CODING APPARATUS FOR IMAGE ENCODING AND APPARATUS FOR TRANSMITTING DATA TO AN IMAGE | |
| BR112022008691B1 (en) | VIDEO DECODING METHOD PERFORMED BY A VIDEO DECODING APPARATUS, VIDEO CODING METHOD PERFORMED BY A VIDEO CODING APPARATUS, NON-TRANSITORY COMPUTER-READABLE DIGITAL STORAGE MEDIA, AND DATA TRANSMISSION METHOD FOR A VIDEO | |
| BR122023023080B1 (en) | IMAGE/VIDEO CODING METHOD AND DEVICE | |
| BR122023023080A2 (en) | IMAGE/VIDEO CODING METHOD AND DEVICE | |
| BR122024000637A2 (en) | METHOD AND DEVICE FOR IMAGE/VIDEO CODING BASED ON WEIGHTED PREDICTION TABLE | |
| BR122024000621A2 (en) | METHOD AND DEVICE FOR IMAGE/VIDEO CODING BASED ON WEIGHTED PREDICTION TABLE | |
| BR112022013844B1 (en) | VIDEO DECODING/ENCODING METHOD AND DATA TRANSMISSION METHOD FOR A VIDEO |