KR102585236B1 - Video encoding and decoding methods and devices - Google Patents

Video encoding and decoding methods and devices Download PDF

Info

Publication number
KR102585236B1
KR102585236B1 KR1020227029747A KR20227029747A KR102585236B1 KR 102585236 B1 KR102585236 B1 KR 102585236B1 KR 1020227029747 A KR1020227029747 A KR 1020227029747A KR 20227029747 A KR20227029747 A KR 20227029747A KR 102585236 B1 KR102585236 B1 KR 102585236B1
Authority
KR
South Korea
Prior art keywords
parameter
sample
boundary
absolute value
equal
Prior art date
Application number
KR1020227029747A
Other languages
Korean (ko)
Other versions
KR20220124287A (en
Inventor
촨 저우
주이 엘비
샤오 오우양
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Publication of KR20220124287A publication Critical patent/KR20220124287A/en
Application granted granted Critical
Publication of KR102585236B1 publication Critical patent/KR102585236B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

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

Abstract

본 개시는 인코딩 및 디코딩 방법 및 장치를 제공한다. 상기 디코딩 방법은 현재 예측 블록의 예측된 샘플 행렬을 획득하는 단계, 및 상기 예측된 샘플 행렬에 따라 재구성된 샘플 행렬을 획득하는 단계를 포함하고, 상기 예측된 샘플 행렬의 요소들의 값들은 현재 이미지의 필터링된 재구성된 샘플 행렬 내의 샘플들의 값들에 따라 획득된다.This disclosure provides an encoding and decoding method and apparatus. The decoding method includes obtaining a predicted sample matrix of a current prediction block, and obtaining a sample matrix reconstructed according to the predicted sample matrix, and the values of elements of the predicted sample matrix are of the current image. It is obtained according to the values of samples in the filtered reconstructed sample matrix.

Description

비디오 인코딩 및 디코딩 방법 및 장치Video encoding and decoding methods and devices

본 발명은 비디오 인코딩(encoding) 및 디코딩(decoding) 분야에 관한 것으로, 구체적으로, 인트라 예측 모드(intra prediction mode)에서의 인트라 블록 카피(intra block copy: IBC)에 관한 것이다.The present invention relates to the field of video encoding and decoding, and specifically, to intra block copy (IBC) in intra prediction mode.

비디오 인코딩 및 디코딩 방법에서, 이미지는 통상 복수의 이미지 블록들(image blocks)로 분할되고, 이후 각각의 이미지 블록이 인코딩 또는 디코딩된다. 각각의 이미지 블록에 대해, 예측(prediction), 변환(transformation), 양자화(quantization), 및 엔트로피 인코딩(entropy encoding)이 수행된다. 예측 단계는, 이전에 인코딩된 이미지 블록들의 재구성된(reconstructed) 픽셀들(이 픽셀들은 참조 픽셀들(reference pixels)로 지칭됨)의 값들을 이용하여 예측값들(predicted values)을 획득하기 위해, 인코딩될 현재 이미지 블록을 예측하는 것이며, 이후에 상기 현재 이미지 블록의 실제값들과 예측값들 간의 차이값들을 비트스트림(bitstream)으로 인코딩한다. 디코딩 시에, 디코더(decoder)도 또한, 이전에 디코딩된 이미지 블록들의 재구성된 픽셀들의 값들을 이용하여 예측값들을 획득하기 위해, 디코딩될 현재 이미지 블록을 예측해야 하며, 이후에 상기 비트스트림으로부터 디코딩된 상기 차이값들을 상기 예측값들에 가산하여 디코딩된 이미지 블록의 재구성된 값들(reconstructed values)을 획득한다. 인코딩과 디코딩 간의 일관성을 보장하기 위해, 코덱(codec)은 예측 수행 시 동일한 참조 픽셀들 및 동일한 예측 방법을 이용해야 한다. 많은 구체적인 예측 방법들이 있으며, 인코더(encoder)는 현재 이미지 블록에 따라 예측 방법을 선택한 후, 디코더가 동일한 예측 방법을 이용하여 현재 블록을 예측할 수 있도록, 선택된 예측 방법에 관한 정보를 비트스트림에 추가하여 선택된 예측 방법을 디코더에 알려 준다.In video encoding and decoding methods, an image is typically divided into a plurality of image blocks, and each image block is then encoded or decoded. For each image block, prediction, transformation, quantization, and entropy encoding are performed. The prediction step uses the values of reconstructed pixels of previously encoded image blocks (these pixels are referred to as reference pixels) to obtain predicted values. The current image block is predicted, and then the difference values between the actual and predicted values of the current image block are encoded into a bitstream. At the time of decoding, the decoder must also predict the current image block to be decoded to obtain prediction values using the values of the reconstructed pixels of previously decoded image blocks, and then decoded from the bitstream. The difference values are added to the prediction values to obtain reconstructed values of the decoded image block. To ensure consistency between encoding and decoding, the codec must use the same reference pixels and the same prediction method when performing prediction. There are many specific prediction methods, and the encoder selects a prediction method according to the current image block and then adds information about the selected prediction method to the bitstream so that the decoder can predict the current block using the same prediction method. The selected prediction method is notified to the decoder.

비디오 인코딩 및 디코딩에 이용하기 위한 인트라 예측 모드에서의 향상된 인트라 블록 카피 방법이 필요하다.There is a need for an improved intra block copy method in intra prediction mode for use in video encoding and decoding.

본 개시의 예시적 실시예에 따르면, 현재 예측 블록(prediction block)의 예측된 샘플 행렬(predicted sample matrix)을 획득하는 단계; 및 상기 예측된 샘플 행렬에 따라 재구성된 샘플 행렬을 획득하는 단계를 포함하고, 상기 예측된 샘플 행렬의 요소들(elements)의 값들은 현재 이미지의 필터링된(filtered) 재구성된 샘플 행렬 내의 샘플들의 값들에 따라 획득되는, 디코딩 방법이 제공된다.According to an example embodiment of the present disclosure, obtaining a predicted sample matrix of a current prediction block; and obtaining a reconstructed sample matrix according to the predicted sample matrix, wherein the values of the elements of the predicted sample matrix are the values of the samples in the filtered reconstructed sample matrix of the current image. A decoding method obtained according to is provided.

본 개시는 비디오 인코딩 및 디코딩에 이용하기 위한 인트라 예측 모드에서의 향상된 인트라 블록 카피 방법을 제공한다.This disclosure provides an improved intra block copy method in intra prediction mode for use in video encoding and decoding.

도 1a는 이미지를 최대 코딩 유닛들(maximum coding units)로 분할하는 단계 및 상기 코딩 유닛들의 개략도를 도시한다.
도 1b는 QT(쿼드 트리(Quad Tree)) 분할, BT(이진 트리(Binary Tree)) 분할, 및 EQT(확장 쿼드 트리(Extend Quad Tree)) 분할을 도시한다.
도 2는 인트라 블록 카피 모드의 개략도를 도시한다.
도 3은 본 발명의 실시예에 따른 디코딩 방법의 흐름도를 도시한다.
도 4는, 필터링된 재구성된 샘플 행렬이 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된(predictively-compensated) 샘플들, 및 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링(deblocking filtering) 및 샘플 적응적 오프셋(sample adaptive offset)을 수행하여 획득된 샘플들을 포함할 때, 참조 블록들이 상이한 위치들에 있는 개략도를 도시한다.
도 5는, 필터링된 재구성된 샘플 행렬이 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행하여 획득된 샘플들, 및 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들을 포함할 때, 참조 블록들이 상이한 위치들에 있는 개략도를 도시한다.
도 6은, 필터링된 재구성된 샘플 행렬이 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들, 및 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 샘플 적응적 오프셋을 수행하여 획득된 샘플들을 포함할 때, 참조 블록들이 상이한 위치들에 있는 개략도를 도시한다.
도 7은 본 발명의 실시예에 따른 디코딩 장치의 블록도를 도시한다.
도 8은 본 발명의 실시예에 따른 인코딩 방법의 흐름도를 도시한다.
도 9는 필터링 블록(filtering block)의 경계(boundary)의 샘플들의 개략도를 도시한다.
도 10은 본 발명의 실시예에 따른 인코딩 장치의 블록도를 도시한다.
도 11은 본 발명의 실시예에 따른 디코딩 방법의 흐름도를 도시한다.
도 12는 본 발명의 실시예에 따른 디코딩 장치의 블록도를 도시한다.
Figure 1A shows the steps of dividing an image into maximum coding units and a schematic diagram of the coding units.
1B shows QT (Quad Tree) partitioning, BT (Binary Tree) partitioning, and EQT (Extend Quad Tree) partitioning.
Figure 2 shows a schematic diagram of intra block copy mode.
Figure 3 shows a flowchart of a decoding method according to an embodiment of the present invention.
4 shows the filtered reconstructed sample matrix deblocking filtering for decoded predictively-compensated samples within the current largest coding unit, and prediction-compensated samples of the decoded largest coding unit. It shows a schematic diagram in which reference blocks are at different positions when including samples obtained by performing filtering and sample adaptive offset.
5 shows the filtered reconstructed sample matrix obtained by performing deblocking filtering on the decoded prediction-compensated samples in the current largest coding unit, and the prediction-compensated samples of the decoded largest coding unit. shows a schematic diagram in which reference blocks are at different positions when including samples obtained by performing deblocking filtering and sample adaptive offset on .
6 shows the filtered reconstructed sample matrix obtained by performing sample adaptive offset on the decoded prediction-compensated samples within the current largest coding unit, and the prediction-compensated samples of the decoded largest coding unit. When included, it shows a schematic diagram in which the reference blocks are at different positions.
Figure 7 shows a block diagram of a decoding device according to an embodiment of the present invention.
Figure 8 shows a flowchart of an encoding method according to an embodiment of the present invention.
Figure 9 shows a schematic diagram of samples of the boundary of a filtering block.
Figure 10 shows a block diagram of an encoding device according to an embodiment of the present invention.
Figure 11 shows a flowchart of a decoding method according to an embodiment of the present invention.
Figure 12 shows a block diagram of a decoding device according to an embodiment of the present invention.

본 개시의 예시적 실시예에 따르면, 현재 예측 블록의 예측된 샘플 행렬을 획득하는 단계; 및 상기 예측된 샘플 행렬에 따라 재구성된 샘플 행렬을 획득하는 단계를 포함하고, 상기 예측된 샘플 행렬의 요소들의 값들은 현재 이미지의 필터링된 재구성된 샘플 행렬 내의 샘플들의 값들에 따라 획득되는, 디코딩 방법이 제공된다.According to an example embodiment of the present disclosure, obtaining a predicted sample matrix of a current prediction block; and obtaining a reconstructed sample matrix according to the predicted sample matrix, wherein values of elements of the predicted sample matrix are obtained according to values of samples in the filtered reconstructed sample matrix of the current image. This is provided.

컴퓨터 프로그램들이 저장된 메모리; 및 상기 컴퓨터 프로그램들의 실행 시 상술된 디코딩 방법을 수행하는 프로세서를 포함하는, 디코딩 장치가 제공된다.Memory in which computer programs are stored; and a processor that performs the above-described decoding method when executing the computer programs.

현재 프레임(frame)이 화면 콘텐트(screen content)인지 여부에 따라 인코딩될 상기 현재 프레임에 대해 디블로킹 필터링을 이용할지 여부를 지시하는 식별자(identifier)를 결정하는 단계; 및 상기 식별자를 비트스트림 내에 추가하는 단계를 포함하는, 인코딩 방법이 제공된다.determining an identifier indicating whether to use deblocking filtering for the current frame to be encoded depending on whether the current frame is screen content; and adding the identifier into a bitstream.

컴퓨터 프로그램들이 저장된 메모리; 및 상기 컴퓨터 프로그램들의 실행 시 상술된 인코딩 방법을 수행하는 프로세서를 포함하는, 인코딩 장치가 제공된다.Memory in which computer programs are stored; and a processor that performs the above-described encoding method when executing the computer programs.

현재 코딩 유닛이 화면 콘텐트인지 여부에 따라 상기 현재 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행할지 여부를 결정하는 단계; 및 상기 결정의 결과에 따라, 디블로킹-필터링된(deblocking-filtered) 재구성된 샘플들을 획득하기 위해, 상기 현재 코딩 유닛의 상기 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행하는 단계를 포함하는, 디코딩 방법이 제공된다.determining whether to perform deblocking filtering on prediction-compensated samples of the current coding unit depending on whether the current coding unit is screen content; And according to the result of the decision, performing deblocking filtering on the prediction-compensated samples of the current coding unit to obtain deblocking-filtered reconstructed samples. , a decoding method is provided.

컴퓨터 프로그램들이 저장된 메모리; 및 상기 컴퓨터 프로그램들의 실행 시 상술된 디코딩 방법을 수행하는 프로세서를 포함하는, 디코딩 장치가 제공된다.Memory in which computer programs are stored; and a processor that performs the above-described decoding method when executing the computer programs.

컴퓨터에 의해 실행될 때, 상기 컴퓨터로 하여금 상술된 방법들을 수행하도록 하는, 비일시적 컴퓨터 판독가능 명령어들(non-transitory computer readable instructions)을 저장하는 컴퓨터 판독가능 저장 매체(computer readable storage medium)가 제공된다.A computer readable storage medium is provided that stores non-transitory computer readable instructions that, when executed by a computer, cause the computer to perform the methods described above. .

이하에서, 본 개시의 다양한 예들이 첨부 도면을 참조하여 보다 상세히 설명될 것이다. 그러나, 본 개시는 상이한 형태들을 가질 수 있으며 본 명세서에서 설명되는 실시예들에 제한되는 것으로 이해되어서는 안 된다. 본 개시와 무관한 부분들(parts)은 명확성을 위해 생략될 수 있다. 도면 전체에 걸쳐, 동일한 참조 번호들은 동일 또는 유사한 요소들(elements), 특징들(features), 및 구조들(structures)을 묘사하는 데 이용된다는 것에 유의해야 한다.Hereinafter, various examples of the present disclosure will be described in more detail with reference to the accompanying drawings. However, the present disclosure may take different forms and should not be construed as limited to the embodiments described herein. Parts unrelated to this disclosure may be omitted for clarity. It should be noted that throughout the drawings, the same reference numbers are used to depict the same or similar elements, features, and structures.

이하의 설명에서 사용되는 용어들 및 어휘는 그 문자 그대로의 의미들에 제한되는 것이 아니라, 오직 본 발명을 명확하고 일관되게 이해될 수 있도록 하는 데 이용되는 것이다. 따라서, 본 발명이 속하는 기술분야의 숙련된 자들은 본 발명의 예시적 실시예들에 대한 이하의 설명이 단지 예시의 목적으로 제공될 뿐, 청구범위 및 그 균등물에 의해 정의되는, 본 발명을 제한하고자 한 것이 아님을 이해해야 할 것이다.The terms and vocabulary used in the following description are not limited to their literal meanings, but are used only to ensure that the present invention can be clearly and consistently understood. Accordingly, those skilled in the art to which the present invention pertains will understand that the following description of exemplary embodiments of the present invention is provided for illustrative purposes only and that the present invention, as defined by the claims and their equivalents, You must understand that this is not intended to be limiting.

단수 형태인 "a" 및 "an"은, 문맥상 명확히 달리 지시되지 않는 한, 복수 형태의 언급을 포함한다는 것을 이해해야 할 것이다.It will be understood that the singular forms “a” and “an” include plural references, unless the context clearly dictates otherwise.

도 1a는 이미지를 최대 코딩 유닛들(maximum coding units)로 분할하는 단계 및 상기 코딩 유닛들의 개략도를 도시한다. 도 1a의 좌측 도면에 도시된 바와 같이, 이미지(100)는 일련의 최대 코딩 유닛들로 분할되고, 각각의 최대 코딩 유닛은 래스터 스캔(raster scan) 순서에 따라 차례로 디코딩된다. 하나의 최대 코딩 유닛은 단일 코딩 유닛이거나 또는 쿼드트리 파티션 구조(quadtree partition structure)를 갖는 4개의 보다 작은 코딩 유닛들로 분할될(split) 수 있다. 도 1a의 우측 도면에 도시된 바와 같이, 최대 코딩 유닛(110)은, QT(쿼드 트리(Quad Tree)) 분할, BT(이진 트리(Binary Tree)) 분할, 및 EQT(확장 쿼드 트리(Extend Quad Tree)) 분할과 같은, 기본 블록 분할 구조에 따라 보다 작은 코딩 유닛들로 분할될 수 있다.Figure 1A shows the steps of dividing an image into maximum coding units and a schematic diagram of the coding units. As shown in the left diagram of FIG. 1A, the image 100 is divided into a series of maximum coding units, and each maximum coding unit is decoded in turn according to raster scan order. One largest coding unit can be a single coding unit or be split into four smaller coding units with a quadtree partition structure. As shown in the right figure of FIG. 1A, the maximum coding unit 110 is divided into QT (Quad Tree) partitioning, BT (Binary Tree) partitioning, and EQT (Extend Quad Tree) partitioning. It can be divided into smaller coding units according to a basic block division structure, such as Tree)) division.

도 1b는 QT(쿼드 트리) 분할, BT(이진 트리) 분할, 및 EQT(확장 쿼드 트리) 분할을 도시한다. 도 1b를 참조하면, QT는 코딩 유닛(115)을 4개의 코딩 유닛들로 분할한다. BT는 코딩 유닛(120)을 좌측 및 우측 코딩 유닛들 2개로 분할할 수 있거나, 또는 BT는 코딩 유닛(130)을 상측 및 하측 코딩 유닛들 2개로 분할할 수 있다. EQT는 2개(수평 및 수직)의 I-형 분할 모드들을 포함하며 코딩 유닛을 4개의 코딩 유닛들로 분할한다. 예를 들면, 도 1b에 도시된 바와 같이, EQT_VER은 코딩 유닛(140)을 4개의 코딩 유닛들로 분할하고, EQT_HOR은 코딩 유닛(150)을 4개의 코딩 유닛들로 분할한다. 예측 유닛(prediction unit)은, 상기 코딩 유닛으로부터 분할된, 휘도 예측 블록(luminance prediction block) 및 상응하는 색차 예측 블록(chrominance prediction block)을 포함한다. 상기 코딩 유닛의 코딩 유닛 유형이 'I_2M_2N', 'I_2M_hN', 'I_2M_nU', 'I_2M_nD', 'I_hM_2N', 'I_nL_2N', 또는 'I_nR_2N'인 경우, 상기 코딩 유닛의 예측 유형은 일반적인 인트라 예측(normal intra prediction)이며, 상기 코딩 유닛이 포함하는 상기 예측 블록들의 예측 유형은 일반적인 인트라 예측이다. 이와 달리, 상기 코딩 유닛 유형이 'IBC_2M_2N'인 경우, 상기 코딩 유닛의 예측 유형은 인트라 블록 카피(intra block copy)이며, 상기 코딩 유닛에 포함된 상기 예측 블록들의 예측 유형은 인트라 블록 카피이다. 이와 달리, 상기 코딩 유닛의 예측 유형이 인터 예측(inter prediction)인 경우, 상기 코딩 유닛에 포함된 상기 예측 유닛들 및 예측 블록들의 예측 유형은 인터 예측이다.Figure 1B shows QT (quad tree) partitioning, BT (binary tree) partitioning, and EQT (extended quad tree) partitioning. Referring to FIG. 1B, QT divides coding unit 115 into four coding units. BT may split coding unit 120 into two left and right coding units, or BT may split coding unit 130 into two upper and lower coding units. EQT includes two (horizontal and vertical) I-shaped partition modes and splits the coding unit into four coding units. For example, as shown in FIG. 1B, EQT_VER divides coding unit 140 into four coding units, and EQT_HOR divides coding unit 150 into four coding units. A prediction unit includes a luminance prediction block and a corresponding chrominance prediction block, divided from the coding unit. If the coding unit type of the coding unit is 'I_2M_2N', 'I_2M_hN', 'I_2M_nU', 'I_2M_nD', 'I_hM_2N', 'I_nL_2N', or 'I_nR_2N', the prediction type of the coding unit is general intra prediction ( normal intra prediction), and the prediction type of the prediction blocks included in the coding unit is normal intra prediction. In contrast, when the coding unit type is 'IBC_2M_2N', the prediction type of the coding unit is intra block copy, and the prediction type of the prediction blocks included in the coding unit is intra block copy. In contrast, when the prediction type of the coding unit is inter prediction, the prediction type of the prediction units and prediction blocks included in the coding unit is inter prediction.

텍스트 및 그래픽과 같은, 화면 콘텐트 시퀀스들(screen content sequences)에 대해, 동일 프레임 내에 많은 반복되는 텍스처들(repeated textures)이 있는데, 즉, 강한 공간 상관관계(spatial correlation)가 있다. 현재 블록의 인코딩 시 현재 프레임의 이전에 인코딩된 영역이 참조될 수 있는 경우, 코딩 효율은 크게 향상될 수 있다(화면 이미지들의 강한 공간 상관관계의 특성을 목표로 함). 현재 프레임의 인코딩된 블록들을 참조하고 현재 블록의 예측값에 이용되는, 이 기법은 인트라 블록 카피(intra block copy: IBC)로 지칭된다.For screen content sequences, such as text and graphics, there are many repeated textures within the same frame, ie, there is a strong spatial correlation. If previously encoded regions of the current frame can be referenced when encoding the current block, coding efficiency can be greatly improved (targeting the strong spatial correlation characteristic of screen images). This technique, which refers to the encoded blocks of the current frame and is used for the prediction of the current block, is referred to as intra block copy (IBC).

도 2는 인트라 블록 카피 모드의 개략도를 도시한다. 인트라 블록 카피의 예측 블록들이 현재 인코딩된 이미지 프레임의 재구성된 블록을 이용하여 생성된다는 것을 제외하고, 인트라 블록 카피는 인터 이미지 예측과 유사하다. 예를 들면, 인트라 블록 카피(IBC)에서, 현재 블록(210)은, 현재 블록(210)에 앞서 이전에 처리되고 동일 프레임 내에 위치한, 참조 블록(220)을 이용하여 예측된다.Figure 2 shows a schematic diagram of intra block copy mode. Intra block copy is similar to inter image prediction, except that the prediction blocks of the intra block copy are generated using reconstructed blocks of the currently encoded image frame. For example, in intra block copy (IBC), the current block 210 is predicted using a reference block 220, which was previously processed prior to the current block 210 and is located within the same frame.

디블로킹 필터링(deblocking filtering: DBF)은 블로킹 효과를 감소시키는 데 이용된다. 샘플 적응적 오프셋(sample adaptive offset: SAO)은 링잉 효과(ringing effect)를 개선하는 데 이용된다. 이들 두 필터들은 비디오의 주관적(subjective) 및 객관적(objective) 품질을 효과적으로 향상시킬 수 있다.Deblocking filtering (DBF) is used to reduce the blocking effect. Sample adaptive offset (SAO) is used to improve the ringing effect. These two filters can effectively improve the subjective and objective quality of video.

일 실시예에서, IBC-예측된(IBC-predicted) 샘플 행렬의 요소들의 값들은 현재 이미지의 필터링되지 않은(unfiltered) 재구성된 샘플 행렬 내의 샘플들의 값들에 따라 획득된다. 필터링되지 않은 재구성된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋 처리가 수행되지 않을 수 있는데, 이는 예측되는 샘플들의 값들의 큰 왜곡을 초래할 것이며, 이에 따라 IBC를 이용할 때 예측 블록들의 품질 및 코딩 효율이 저하된다. 다시 말하면, 필터링되지 않은 재구성된 샘플들이 인트라 블록 카피(IBC)를 이용한 예측 프로세스를 위한 참조 샘플들로 이용될 때, 예측/코딩 효율이 저하될 수 있다.In one embodiment, the values of the elements of the IBC-predicted sample matrix are obtained according to the values of the samples in the unfiltered reconstructed sample matrix of the current image. Deblocking filtering and sample adaptive offset processing may not be performed on the unfiltered reconstructed samples, which will result in large distortion of the values of the predicted samples and thus the quality and coding of the prediction blocks when using IBC. Efficiency decreases. In other words, when unfiltered reconstructed samples are used as reference samples for a prediction process using intra block copy (IBC), prediction/coding efficiency may deteriorate.

인트라 블록 카피(IBC)에 따른 예측을 수행할 때 예측 효율을 향상시키기 위해, 본 개시는, IBC-예측된 샘플 행렬의 요소들의 값들이 현재 이미지의 필터링된 재구성된 샘플 행렬 내의 샘플들의 값들에 따라 획득되어, 이에 따라 화면 콘텐트의 이미지 코딩 효율을 더 향상시키는, 인트라 블록 카피 방법을 제공한다.To improve prediction efficiency when performing prediction according to intra block copy (IBC), the present disclosure determines that the values of the elements of the IBC-predicted sample matrix depend on the values of the samples in the filtered reconstructed sample matrix of the current image. An intra block copy method is provided, which further improves the image coding efficiency of screen content.

도 3은 본 개시의 실시예에 따른 디코딩 방법의 흐름도를 도시한다. 상기 방법은 다음의 단계들을 포함한다: 현재 예측 블록의 예측된 샘플 행렬을 획득하는 단계(S301); 및 상기 예측된 샘플 행렬에 따라 재구성된 샘플 행렬을 획득하는 단계로서, 상기 예측된 샘플 행렬의 요소들의 값들은 현재 이미지의 필터링된 재구성된 샘플 행렬 내의 샘플들의 값들에 따라 획득되는 단계(S302). 이런 식으로, 현재 이미지의 필터링된 재구성된 샘플 행렬을 IBC를 위한 참조 샘플로 이용하여, 예측된 샘플들의 값들의 왜곡이 감소될 수 있고, IBC를 이용한 예측 블록들의 품질이 향상될 수 있으며, 코딩 효율이 향상될 수 있다.Figure 3 shows a flowchart of a decoding method according to an embodiment of the present disclosure. The method includes the following steps: obtaining a predicted sample matrix of the current prediction block (S301); and obtaining a reconstructed sample matrix according to the predicted sample matrix, wherein values of elements of the predicted sample matrix are obtained according to values of samples in the filtered reconstructed sample matrix of the current image (S302). In this way, by using the filtered reconstructed sample matrix of the current image as a reference sample for IBC, the distortion of the values of predicted samples can be reduced, the quality of prediction blocks using IBC can be improved, and coding Efficiency can be improved.

상기 예측된 샘플 행렬의 요소들의 값들은 현재 이미지의 필터링된 재구성된 샘플 행렬 내의 샘플들의 값들에 따라 획득될 수 있다. 휘도 예측 샘플 행렬(luminance predicted sample matrix)의 요소들의 값들은 상기 현재 이미지의 전체 픽셀 정밀도(full pixel precision)의 필터링된 재구성된 샘플 행렬 내의 샘플들의 값들을 이용하여 획득될 수 있으며, 색차 예측 샘플 행렬(chrominance predicted sample matrix)의 요소들의 값들은 상기 현재 이미지의 1/2 정확도의 필터링된 재구성된 색차 샘플 행렬 내의 샘플들의 값들을 이용하여 획득될 수 있다.The values of the elements of the predicted sample matrix may be obtained according to the values of the samples in the filtered reconstructed sample matrix of the current image. The values of the elements of the luminance predicted sample matrix may be obtained using the values of the samples in the filtered reconstructed sample matrix at full pixel precision of the current image, and the chrominance predicted sample matrix The values of the elements of the chrominance predicted sample matrix may be obtained using the values of the samples in the 1/2 accuracy filtered reconstructed chrominance sample matrix of the current image.

일 실시예에 따르면, 상기 필터링된 재구성된 샘플 행렬은 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들, 및 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들을 포함할 수 있다. 상기 예측-보상된 샘플들은 예측된 샘플들과 잔차 샘플들의 합을 이용하여 획득될 수 있다. 이런 식으로, 예측된 샘플들의 값들의 왜곡이 감소될 수 있고, IBC를 이용한 예측 블록들의 품질이 향상될 수 있으며, 코딩 효율이 향상될 수 있다.According to one embodiment, the filtered reconstructed sample matrix performs deblocking filtering and sample adaptive processing on decoded prediction-compensated samples within the current largest coding unit and prediction-compensated samples of the decoded largest coding unit. It may include samples obtained by performing offset. The prediction-compensated samples may be obtained using the sum of predicted samples and residual samples. In this way, distortion of the values of predicted samples can be reduced, the quality of prediction blocks using IBC can be improved, and coding efficiency can be improved.

도 4는, 필터링된 재구성된 샘플 행렬이 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들, 및 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들을 포함할 때, 참조 블록들이 상이한 위치들에 있는 개략도를 도시한다. 도 4에, 5x5 최대 코딩 유닛들이 예로서 도시되어 있다.4 shows the filtered reconstructed sample matrix performing deblocking filtering and sample adaptive offset on the decoded prediction-compensated samples within the current largest coding unit, and the prediction-compensated samples of the decoded largest coding unit. shows a schematic diagram in which the reference blocks are at different positions when including the samples obtained. In Figure 4, 5x5 maximum coding units are shown as an example.

예를 들면, 필터링된 재구성된 샘플 행렬이 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들, 및 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들을 포함할 때, 다음의 상황들(situations) 중 적어도 하나가 존재할 수 있다. 도 4의 좌측 도면(410)에 도시된 바와 같이, 현재 블록(431)의 블록 벡터에 의해 지목된 참조 블록(441)이 완전히 현재 최대 코딩 유닛 외부에 위치하는 경우(즉, 참조 블록(441)이 현재 블록(431)을 포함하는 현재 최대 코딩 유닛 외부에 위치하고, 참조 블록(441)이 이전에 디코딩된 최대 코딩 유닛 내부에 위치하는 경우), 예측된 샘플 행렬의 요소들의 값들은 모두 상기 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들의 값들에 따라 획득된다. 도 4의 중앙 도면(420)에 도시된 바와 같이, 현재 블록(432)의 블록 벡터에 의해 지목된 참조 블록(442)의 일부가 현재 최대 코딩 유닛의 외부에(즉, 디코딩된 최대 코딩 유닛 내부에) 위치하고 참조 블록(442)의 나머지 일부가 상기 현재 최대 코딩 유닛 내부에 위치하는 경우, 예측된 샘플 행렬의 요소들의 값들의 일부는 상기 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들의 값들에 따라 획득되고, 상기 예측된 샘플 행렬의 요소들의 값들의 나머지 일부는 상기 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들의 값들에 따라 획득된다. 도 4의 우측 도면(430)에 도시된 바와 같이, 현재 블록(433)의 블록 벡터에 의해 지목된 참조 블록(443)이 완전히 현재 최대 코딩 유닛 내부에 위치하는 경우, 예측된 샘플 행렬의 요소들의 값들은 모두 상기 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들의 값들에 따라 획득된다.For example, the filtered reconstructed sample matrix performs deblocking filtering and sample adaptive offset on the decoded prediction-compensated samples within the current largest coding unit, and the prediction-compensated samples of the decoded largest coding unit. When including samples obtained as follows, at least one of the following situations may exist. As shown in the left diagram 410 of FIG. 4, when the reference block 441 indicated by the block vector of the current block 431 is located completely outside the current largest coding unit (i.e., the reference block 441 If the current block 431 is located outside the current largest coding unit, and the reference block 441 is located inside the previously decoded largest coding unit), the values of the elements of the predicted sample matrix are all decoded. It is obtained according to the values of the samples obtained by performing deblocking filtering and sample adaptive offset on the prediction-compensated samples of the largest coding unit. As shown in the central diagram 420 of FIG. 4, a portion of the reference block 442 pointed to by the block vector of the current block 432 is outside the current largest coding unit (i.e., inside the decoded largest coding unit). ) and the remaining part of the reference block 442 is located inside the current maximum coding unit, some of the values of the elements of the predicted sample matrix are decoded with respect to the prediction-compensated samples of the decoded maximum coding unit. obtained according to the values of the samples obtained by performing blocking filtering and sample adaptive offset, and the remaining part of the values of the elements of the predicted sample matrix are obtained according to the values of the decoded prediction-compensated samples within the current largest coding unit. It is acquired. As shown in the right diagram 430 of FIG. 4, when the reference block 443 indicated by the block vector of the current block 433 is located completely inside the current maximum coding unit, the elements of the predicted sample matrix The values are all obtained according to the values of the decoded prediction-compensated samples within the current largest coding unit.

다른 실시예에 따르면, 상기 필터링된 재구성된 샘플 행렬은 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행하여 획득된 샘플들, 및 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들을 포함할 수 있다. 이런 식으로, 예측된 샘플들의 값들의 왜곡이 감소될 수 있고, IBC를 이용한 예측 블록들의 품질이 향상될 수 있으며, 코딩 효율이 향상될 수 있다.According to another embodiment, the filtered reconstructed sample matrix includes samples obtained by performing deblocking filtering on decoded prediction-compensated samples within the current largest coding unit, and prediction-compensated samples of the decoded largest coding unit. It may include samples obtained by performing deblocking filtering and sample adaptive offset on the obtained samples. In this way, distortion of the values of predicted samples can be reduced, the quality of prediction blocks using IBC can be improved, and coding efficiency can be improved.

도 5는, 필터링된 재구성된 샘플 행렬이 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행하여 획득된 샘플들, 및 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들을 포함할 때, 참조 블록들이 상이한 위치들에 있는 개략도를 도시한다.5 shows the filtered reconstructed sample matrix obtained by performing deblocking filtering on the decoded prediction-compensated samples in the current largest coding unit, and the prediction-compensated samples of the decoded largest coding unit. shows a schematic diagram in which reference blocks are at different positions when including samples obtained by performing deblocking filtering and sample adaptive offset on .

예를 들면, 상기 필터링된 재구성된 샘플 행렬이 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행하여 획득된 샘플들, 및 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들을 포함할 때, 다음의 상황들 중 적어도 하나가 존재한다. 도 5의 좌측 도면(510)에 도시된 바와 같이, 현재 블록(531)의 블록 벡터에 의해 지목된 참조 블록(541)이 완전히 상기 현재 최대 코딩 유닛 외부에(즉, 상기 디코딩된 최대 코딩 유닛 내부에) 위치하는 경우, 예측된 샘플 행렬의 요소들의 값들은 모두 상기 디코딩된 최대 코딩 유닛의 상기 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들의 값들에 따라 획득된다. 도 5의 중앙 도면(520)에 도시된 바와 같이, 현재 블록(532)의 블록 벡터에 의해 지목된 참조 블록(542)의 일부가 상기 현재 최대 코딩 유닛 외부에(즉, 상기 디코딩된 최대 코딩 유닛 내부에) 위치하고 참조 블록(542)의 나머지 일부가 상기 현재 최대 코딩 유닛 내부에 위치하는 경우, 예측된 샘플 행렬의 요소들의 값들의 일부는 상기 디코딩된 최대 코딩 유닛의 상기 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들의 값들에 따라 획득되고, 상기 예측된 샘플 행렬의 요소들의 값들의 나머지 일부는 상기 현재 최대 코딩 유닛 내의 상기 디코딩된 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행하여 획득된 샘플들의 값들에 따라 획득된다. 도 5의 우측 도면(533)에 도시된 바와 같이, 현재 블록(533)의 블록 벡터에 의해 지목된 참조 블록(543)이 완전히 상기 현재 최대 코딩 유닛 내부에 위치하는 경우, 예측된 샘플 행렬의 요소들의 값들은 모두 상기 현재 최대 코딩 유닛 내의 상기 디코딩된 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행하여 획득된 샘플들의 값들에 따라 획득된다.For example, the filtered reconstructed sample matrix may include samples obtained by performing deblocking filtering on decoded prediction-compensated samples within the current largest coding unit, and prediction-compensated samples of the decoded largest coding unit. When including samples obtained by performing deblocking filtering and sample adaptive offset on , at least one of the following situations exists. As shown in the left diagram 510 of FIG. 5, the reference block 541 pointed to by the block vector of the current block 531 is completely outside the current largest coding unit (i.e., inside the decoded largest coding unit). ), the values of the elements of the predicted sample matrix all depend on the values of the samples obtained by performing deblocking filtering and sample adaptive offset on the prediction-compensated samples of the decoded largest coding unit. It is acquired. As shown in the central diagram 520 of FIG. 5, a portion of the reference block 542 pointed to by the block vector of the current block 532 is outside the current largest coding unit (i.e., the decoded largest coding unit). inside) and the remaining part of the reference block 542 is located inside the current largest coding unit, some of the values of the elements of the predicted sample matrix are in the prediction-compensated samples of the decoded largest coding unit. obtained according to the values of the samples obtained by performing deblocking filtering and sample adaptive offset on the decoded prediction-compensated samples in the current maximum coding unit. It is obtained according to the values of the samples obtained by performing deblocking filtering on . As shown in the right diagram 533 of FIG. 5, when the reference block 543 pointed by the block vector of the current block 533 is located completely inside the current maximum coding unit, the elements of the predicted sample matrix The values of are all obtained according to the values of the samples obtained by performing deblocking filtering on the decoded prediction-compensated samples in the current largest coding unit.

일 실시예에 따르면, 재구성된 샘플들의 값들은 디블로킹-필터링되거나 또는 디블로킹-필터링되지 않을 수 있는데, 이는, 코드 스트림(code stream)으로부터 획득되는, 프레임 레벨에서의 디블로킹 필터링을 이용할지 여부의 식별자에 의해 지시된다. 따라서, 예를 들면, 상기 디코딩 방법은 현재 프레임에 대한 디블로킹 필터링을 이용할지 여부를 지시하는 식별자를 상기 코드 스트림으로부터 획득하는(acquiring) 단계를 더 포함한다. 예를 들면, 0은 디코딩될 상기 현재 프레임 내의 어떤 블록도 디블로킹 필터링을 이용하지 않음을 지시하고, 1은 디코딩될 상기 현재 프레임 내의 모든 블록들이 디블로킹 필터링을 이용함을 지시한다.According to one embodiment, the values of the reconstructed samples may be deblocking-filtered or not deblocking-filtered, whether using deblocking filtering at the frame level, obtained from the code stream. It is indicated by the identifier. Therefore, for example, the decoding method further includes acquiring from the code stream an identifier indicating whether to use deblocking filtering for the current frame. For example, 0 indicates that no blocks in the current frame to be decoded use deblocking filtering, and 1 indicates that all blocks in the current frame to be decoded use deblocking filtering.

일 실시예에 따르면, 상기 식별자가 상기 현재 프레임에 대해 디블로킹 필터링을 이용하지 않음을 지시하는 경우(즉, 상기 식별자가 0인 경우), 상기 필터링된 재구성된 샘플 행렬은 상기 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들, 및 상기 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 샘플 적응적 오프셋을 수행하여 획득된 샘플들을 포함한다. 이런 식으로, 예측된 샘플들의 값들의 왜곡이 감소될 수 있고, IBC를 이용한 예측 블록들의 품질이 향상될 수 있으며, 코딩 효율이 향상될 수 있다.According to one embodiment, if the identifier indicates not to use deblocking filtering for the current frame (i.e., the identifier is 0), the filtered reconstructed sample matrix is within the current maximum coding unit. It includes decoded prediction-compensated samples, and samples obtained by performing sample adaptive offset on the prediction-compensated samples of the decoded largest coding unit. In this way, distortion of the values of predicted samples can be reduced, the quality of prediction blocks using IBC can be improved, and coding efficiency can be improved.

도 6은, 필터링된 재구성된 샘플 행렬이 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들, 및 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 샘플 적응적 오프셋을 수행하여 획득된 샘플들을 포함할 때, 참조 블록들이 상이한 위치들에 있는 개략도를 도시한다.6 shows the filtered reconstructed sample matrix obtained by performing sample adaptive offset on the decoded prediction-compensated samples within the current largest coding unit, and the prediction-compensated samples of the decoded largest coding unit. When included, it shows a schematic diagram in which the reference blocks are at different positions.

예를 들면, 상기 필터링된 재구성된 샘플 행렬이 상기 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들, 및 상기 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 샘플 적응적 오프셋을 수행하여 획득된 샘플들을 포함할 때, 다음의 상황들 중 적어도 하나가 존재한다. 도 6의 좌측 도면(610)에 도시된 바와 같이, 현재 블록(641)의 블록 벡터에 의해 지목된 참조 블록(651)이 완전히 상기 현재 최대 코딩 유닛 외부에(즉, 상기 디코딩된 최대 코딩 유닛 내부에) 위치하는 경우, 예측된 샘플 행렬의 요소들의 값들은 모두 상기 디코딩된 최대 코딩 유닛의 상기 예측-보상된 샘플들에 대해 샘플 적응적 오프셋을 수행하여 획득된 샘플들의 값들에 따라 획득된다. 도 6의 중앙 도면(620)에 도시된 바와 같이, 현재 블록(642)의 블록 벡터에 의해 지목된 참조 블록(652)의 일부가 상기 현재 최대 코딩 유닛 외부에(즉, 상기 디코딩된 최대 코딩 유닛 내부에) 위치하고, 참조 블록(652)의 나머지 일부가 상기 현재 최대 코딩 유닛 내부에 위치하는 경우, 예측된 샘플 행렬의 요소들의 값들의 일부는 상기 디코딩된 최대 코딩 유닛의 상기 예측-보상된 샘플들에 대해 샘플 적응적 오프셋을 수행하여 획득된 샘플들의 값들에 따라 획득되고, 상기 예측된 샘플 행렬의 요소들의 값들의 나머지 일부는 상기 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들의 값들에 따라 획득된다. 도 6의 우측 도면(630)에 도시된 바와 같이, 현재 블록(643)의 블록 벡터에 의해 지목된 참조 블록(653)이 완전히 상기 현재 최대 코딩 유닛 내부에 위치하는 경우, 예측된 샘플 행렬의 요소들의 값들은 모두 상기 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들의 값들에 따라 획득된다.For example, the filtered reconstructed sample matrix performs a sample adaptive offset on the decoded prediction-compensated samples within the current largest coding unit and the prediction-compensated samples of the decoded largest coding unit. When including acquired samples, at least one of the following situations exists. As shown in the left diagram 610 of FIG. 6, the reference block 651 pointed to by the block vector of the current block 641 is completely outside the current largest coding unit (i.e., inside the decoded largest coding unit). ), the values of the elements of the predicted sample matrix are all obtained according to the values of the samples obtained by performing sample adaptive offset on the prediction-compensated samples of the decoded largest coding unit. As shown in the central diagram 620 of FIG. 6, a portion of the reference block 652 pointed to by the block vector of the current block 642 is outside the current largest coding unit (i.e., the decoded largest coding unit). inside), and if the remaining part of the reference block 652 is located inside the current largest coding unit, some of the values of the elements of the predicted sample matrix are the prediction-compensated samples of the decoded largest coding unit. is obtained according to the values of the samples obtained by performing a sample adaptive offset on do. As shown in the right diagram 630 of FIG. 6, when the reference block 653 pointed by the block vector of the current block 643 is located completely inside the current largest coding unit, the elements of the predicted sample matrix The values of are all obtained according to the values of the decoded prediction-compensated samples within the current largest coding unit.

디블로킹 필터링이 현재 프레임에 적용되는지 여부를 지시하는 정보가 이용될 수 있다. 예를 들면, 0 또는 1을 갖는 식별자가 디블로킹 필터링을 지시하는 데 이용될 수 있다. 상기 식별자가 현재 프레임에 대해 디블로킹 필터링을 이용함을 지시할 때(예를 들면, 상기 식별자가 1일 때), 2개의 상황들이 존재한다.Information indicating whether deblocking filtering is applied to the current frame may be used. For example, an identifier with 0 or 1 can be used to indicate deblocking filtering. When the identifier indicates to use deblocking filtering for the current frame (eg, when the identifier is 1), two situations exist.

일 실시예에 따르면, 상기 식별자가 현재 프레임에 대해 디블로킹 필터리을 이용함을 지시할 때(예를 들면, 상기 식별자가 1일 때), 상기 필터링된 재구성된 샘플 행렬은 상기 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들, 및 상기 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들을 포함한다. 상술된 바와 같이, 이런 식으로, 예측된 샘플들의 값들의 왜곡이 감소될 수 있고, IBC를 이용한 예측 블록들의 품질이 향상될 수 있으며, 코딩 효율이 향상될 수 있다. 디블로킹 필터링은 프레임 레벨에서 이용되지만, 상기 현재 최대 코딩 유닛 내의 코딩 유닛들은 디블로킹 필터링을 이용하지 않을 수 있다.According to one embodiment, when the identifier indicates to use deblocking filtering for the current frame (e.g., when the identifier is 1), the filtered reconstructed sample matrix is used for decoding within the current largest coding unit. prediction-compensated samples, and samples obtained by performing deblocking filtering and sample adaptive offset on the prediction-compensated samples of the decoded largest coding unit. As described above, in this way, distortion of the values of predicted samples can be reduced, the quality of prediction blocks using IBC can be improved, and coding efficiency can be improved. Deblocking filtering is used at the frame level, but coding units within the current largest coding unit may not use deblocking filtering.

상술된 바와 같이, 예를 들면, 상기 필터링된 재구성된 샘플 행렬이 상기 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들, 및 상기 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들을 포함할 때, 다음의 상황들 중 적어도 하나가 존재한다. 도 4의 좌측 도면(410)에 도시된 바와 같이, 현재 블록(431)의 블록 벡터에 의해 지목된 참조 블록(441)이 완전히 상기 현재 최대 코딩 유닛 외부에(즉, 상기 디코딩된 최대 코딩 유닛 내부에) 위치하는 경우, 상기 예측된 샘플 행렬의 요소들의 값들은 모두 상기 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들의 값들에 따라 획득된다. 도 4의 중앙 도면(420)에 도시된 바와 같이, 현재 블록(432)의 블록 벡터에 의해 지목된 참조 블록(442)의 일부가 상기 현재 최대 코딩 유닛의 외부에(즉, 상기 디코딩된 최대 코딩 유닛 내부에) 위치하고 참조 블록(442)의 나머지 일부가 상기 현재 최대 코딩 유닛 내부에 위치하는 경우, 상기 예측된 샘플 행렬의 요소들의 값들의 일부는 상기 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들의 값들에 따라 획득되고, 상기 예측된 샘플 행렬의 요소들의 값들의 나머지 일부는 상기 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들의 값들에 따라 획득된다. 도 4의 우측 도면(430)에 도시된 바와 같이, 현재 블록(433)의 블록 벡터에 의해 지목된 참조 블록(443)이 완전히 상기 현재 최대 코딩 유닛 내부에 위치하는 경우, 상기 예측된 샘플 행렬의 요소들의 값들은 모두 상기 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들의 값들에 따라 획득된다.As described above, for example, the filtered reconstructed sample matrix deblocks for decoded prediction-compensated samples within the current largest coding unit and prediction-compensated samples of the decoded largest coding unit. When including samples obtained by performing filtering and sample adaptive offset, at least one of the following situations exists. As shown in the left diagram 410 of FIG. 4, the reference block 441 pointed to by the block vector of the current block 431 is completely outside the current largest coding unit (i.e., inside the decoded largest coding unit). ), the values of the elements of the predicted sample matrix all depend on the values of the samples obtained by performing deblocking filtering and sample adaptive offset on the prediction-compensated samples of the decoded maximum coding unit. It is acquired. As shown in the central diagram 420 of FIG. 4, a portion of the reference block 442 pointed to by the block vector of the current block 432 lies outside the current maximum coding unit (i.e., within the decoded maximum coding unit). unit) and the remaining part of the reference block 442 is located inside the current maximum coding unit, some of the values of the elements of the predicted sample matrix are prediction-compensated samples of the decoded maximum coding unit. is obtained according to the values of the samples obtained by performing deblocking filtering and sample adaptive offset on Obtained according to the values. As shown in the right diagram 430 of FIG. 4, when the reference block 443 indicated by the block vector of the current block 433 is located completely inside the current maximum coding unit, the predicted sample matrix The values of the elements are all obtained according to the values of the decoded prediction-compensated samples within the current largest coding unit.

다른 실시예에 따르면, 상기 식별자가 현재 프레임에 대해 디블로킹 필터링을 이용함을 지시할 때(예를 들면, 상기 식별자가 1일 때), 상기 필터링된 재구성된 샘플 행렬은 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행하여 획득된 샘플들, 및 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들을 포함한다. 상술된 바와 같이, 이런 식으로, 예측된 샘플들의 값들의 왜곡이 감소될 수 있고, IBC를 이용한 예측 블록들의 품질이 향상될 수 있으며, 코딩 효율이 향상될 수 있다.According to another embodiment, when the identifier indicates to use deblocking filtering for the current frame (e.g., when the identifier is 1), the filtered reconstructed sample matrix is the decoded sample matrix within the current largest coding unit. Includes samples obtained by performing deblocking filtering on prediction-compensated samples, and samples obtained by performing deblocking filtering and sample adaptive offset on prediction-compensated samples of the decoded largest coding unit. do. As described above, in this way, distortion of the values of predicted samples can be reduced, the quality of prediction blocks using IBC can be improved, and coding efficiency can be improved.

상술된 바와 같이, 예를 들면, 상기 필터링된 재구성된 샘플 행렬이 상기 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행하여 획득된 샘플들, 및 상기 디코딩된 최대 코딩 유닛의 예측 보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들을 포함할 때, 다음의 상황들 중 적어도 하나가 존재한다. 도 5의 좌측 도면(510)에 도시된 바와 같이, 현재 블록(531)의 블록 벡터에 의해 지목된 참조 블록(541)이 완전히 상기 현재 최대 코딩 유닛 외부에(즉, 상기 디코딩된 최대 코딩 유닛 내부에) 위치하는 경우, 상기 예측된 샘플 행렬의 요소들의 값들은 모두 상기 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들의 값들에 따라 획득된다. 도 5의 중앙 도면(520)에 도시된 바와 같이, 현재 블록(532)의 블록 벡터에 의해 지목된 참조 블록(542)의 일부가 상기 현재 최대 코딩 유닛 외부에(즉, 상기 디코딩된 최대 코딩 유닛 내부에) 위치하고 참조 블록(542)의 나머지 일부가 상기 현재 최대 코딩 유닛 내부에 위치하는 경우, 상기 예측된 샘플 행렬의 요소들의 값들의 일부는 상기 디코딩된 최대 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링 및 샘플 적응적 오프셋을 수행하여 획득된 샘플들의 값들에 따라 획득되고, 상기 예측된 샘플 행렬의 요소들의 값들의 나머지 일부는 상기 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행하여 획득된 샘플들의 값들에 따라 획득된다. 도 5의 우측 도면(533)에 도시된 바와 같이, 현재 블록(533)의 블록 벡터에 의해 지목된 참조 블록(543)이 완전히 상기 현재 최대 코딩 유닛 내부에 위치하는 경우, 상기 예측된 샘플 행렬의 요소들의 값들은 모두 상기 현재 최대 코딩 유닛 내의 디코딩된 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행하여 획득된 샘플들의 값들에 따라 획득된다.As described above, for example, the filtered reconstructed sample matrix is obtained by performing deblocking filtering on decoded prediction-compensated samples within the current maximum coding unit, and the decoded maximum coding unit. When including samples obtained by performing deblocking filtering and sample adaptive offset on prediction compensated samples of a unit, at least one of the following situations exists. As shown in the left diagram 510 of FIG. 5, the reference block 541 pointed to by the block vector of the current block 531 is completely outside the current largest coding unit (i.e., inside the decoded largest coding unit). ), the values of the elements of the predicted sample matrix all depend on the values of the samples obtained by performing deblocking filtering and sample adaptive offset on the prediction-compensated samples of the decoded maximum coding unit. It is acquired. As shown in the central diagram 520 of FIG. 5, a portion of the reference block 542 pointed to by the block vector of the current block 532 is outside the current largest coding unit (i.e., the decoded largest coding unit). inside) and the remaining part of the reference block 542 is located inside the current largest coding unit, some of the values of the elements of the predicted sample matrix are in the prediction-compensated samples of the decoded largest coding unit. obtained according to the values of the samples obtained by performing deblocking filtering and sample adaptive offset on It is obtained according to the values of the samples obtained by performing deblocking filtering. As shown in the right diagram 533 of FIG. 5, when the reference block 543 indicated by the block vector of the current block 533 is located completely inside the current maximum coding unit, the predicted sample matrix The values of the elements are all obtained according to the values of the samples obtained by performing deblocking filtering on the decoded prediction-compensated samples within the current largest coding unit.

도 7은 본 개시의 실시예에 따른 디코딩 장치의 블록도를 도시한다. 디코딩 장치(700)는 컴퓨터 프로그램들이 저장된 메모리(701), 및 상기 컴퓨터 프로그램들의 실행 시 상술된 디코딩 방법들을 수행하는 프로세서(702)를 포함한다. 이와 같은 장치는 예측된 샘플들의 값들의 왜곡을 감소시키고, IBC를 이용한 예측 블록들의 품질을 향상시키고, 코딩 효율을 향상시킬 수 있다.Figure 7 shows a block diagram of a decoding device according to an embodiment of the present disclosure. The decoding device 700 includes a memory 701 in which computer programs are stored, and a processor 702 that performs the above-described decoding methods when executing the computer programs. Such a device can reduce distortion of predicted sample values, improve the quality of prediction blocks using IBC, and improve coding efficiency.

도 8은 본 개시의 실시예에 따른 인코딩 방법의 흐름도를 도시한다. 본 실시예는, 상술된 바와 같이, 프레임 레벨에서 디블로킹 필터링을 이용할지 여부의 식별자를 획득하는 방법에 관한 것이다. 상기 방법은 인코딩될 현재 프레임이 화면 콘텐트인지 여부에 따라 인코딩될 상기 현재 프레임에 대해 디블로킹 필터링을 이용할지 여부를 지시하는 식별자를 결정하는 단계(단계 S801); 및 상기 식별자를 코드 스트림에 기입하는 단계(단계 S802)를 포함한다. 이런 식으로, 코딩 효율이 향상될 수 있다.Figure 8 shows a flowchart of an encoding method according to an embodiment of the present disclosure. This embodiment relates to a method of obtaining an identifier of whether to use deblocking filtering at the frame level, as described above. The method includes determining an identifier indicating whether to use deblocking filtering for the current frame to be encoded depending on whether the current frame to be encoded is screen content (step S801); and writing the identifier into a code stream (step S802). In this way, coding efficiency can be improved.

상기 화면 콘텐트는, 컴퓨터 또는 모바일 단말과 같은, 디바이스의 이미지 표시 유닛으로부터 직접 캡처된, 컴퓨터 그래픽, 텍스트 이미지들, 자연 이미지와 그래픽 및 캐릭터의 혼합물의 이미지들, 및 컴퓨터-생성 애니메이션 이미지들 등과 같은, 이미지이다. 이와 같은 화면 콘텐트는, 데스크탑 협업(desktop collaboration), 데스크탑 공유 및 클라우드 게임들 등과 같은, 애플리케이션 시나리오들에서 공통적이다. 화면 콘텐트 이미지와 카메라에 의해 캡처된 자연 이미지 간의 주요한 차이점은 화면 콘텐트 이미지는 노이즈가 없고 이산적 톤들(discrete tones) 및 선명한 에지들(sharp edges)을 가지는 반면, 자연 이미지는 통상 노이즈를 포함하고 연속적 톤들(continuous tones) 및 복잡한 텍스처들(complex textures)을 가진다는 것이다. 이미지가 화면 콘텐트인지 여부를 결정하기 위한 계산 방법은 다음의 방법들 중 하나이거나 또는 다른 방법일 수 있으며, 본 명세서에 제한되지 않는다. 하나의 가능한 구현은 인코딩 전에 각 프레임에 대한 해시 테이블(hash table)을 구성하고, 각 해시값에 대해, 상기 값이 2개 이상의 블록들의 존재에 상응하는지 여부를 계산하는 것이며, 상기 상황의 발생 가능성이 특정 문턱값(threshold)보다 클 때, 현재 프레임은 화면 콘텐트로 간주된다. 다른 가능한 구현은 인코딩 전에 각 프레임과 소벨 연산자(sobel operator)를 컨볼루션하는(convolve) 것이며, 전체 프레임의 계산된 소벨 값이 특정 문턱값보다 클 때, 현재 프레임은 화면 콘텐트로 간주된다.The screen content may be captured directly from an image display unit of a device, such as a computer or mobile terminal, such as computer graphics, text images, images of a mixture of natural images and graphics and characters, and computer-generated animated images, etc. , it is an image. Screen content like this is common in application scenarios, such as desktop collaboration, desktop sharing, and cloud gaming. The main difference between screen content images and natural images captured by a camera is that screen content images are noise-free and have discrete tones and sharp edges, whereas natural images typically contain noise and have continuous images. It has continuous tones and complex textures. The calculation method for determining whether an image is screen content may be one or other of the following methods and is not limited to this specification. One possible implementation is to construct a hash table for each frame before encoding, and for each hash value, calculate whether the value corresponds to the presence of two or more blocks, and determine the probability of occurrence of the situation. When greater than this certain threshold, the current frame is considered screen content. Another possible implementation is to convolve each frame with a sobel operator before encoding, and when the calculated Sobel value of the entire frame is greater than a certain threshold, the current frame is considered screen content.

일 실시예에 따르면, 단계(S801)는 인코딩될 현재 프레임이 화면 콘텐트인 경우, 상기 식별자가 상기 현재 프레임에 대해 디블로킹 필터링을 이용하지 않음을 지시하도록 설정(예를 들면, 상기 식별자가 0으로 설정)되거나, 또는 인코딩될 현재 프레임이 화면 콘텐트가 아닌 경우, 상기 식별자가 상기 현재 프레임에 대해 디블로킹 필터링을 이용함을 지시하도록 설정(예를 들면, 상기 식별자가 1로 설정)되는 것을 포함한다.According to one embodiment, step S801 sets the identifier to indicate that deblocking filtering is not used for the current frame when the current frame to be encoded is screen content (e.g., the identifier is set to 0). set), or, if the current frame to be encoded is not screen content, the identifier is set to indicate that deblocking filtering is used for the current frame (e.g., the identifier is set to 1).

일 실시예에 따르면, 상기 인코딩 방법은, 상기 식별자에 기초하여, 인코딩된 상기 현재 프레임의 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행할지 여부를 결정하는 단계를 더 포함한다. 상기 식별자가 현재 프레임에 대해 디블로킹 필터링을 이용하지 않음을 지시할 때(예를 들면, 상기 식별자가 0일 때), 상기 현재 프레임의 필터링 블록들에 대해 디블로킹 필터링이 이용되지 않으며, 상기 식별자가 현재 프레임에 대해 디블로킹 필터링을 이용함을 지시할 때(예를 들면, 상기 식별자가 1일 때), 상기 현재 프레임의 필터링 블록들에 대해 디블로킹 필터링을 이용할지 여부가 결정된다.According to one embodiment, the encoding method further includes determining, based on the identifier, whether to perform deblocking filtering on prediction-compensated samples of the encoded current frame. When the identifier indicates that deblocking filtering is not used for the current frame (e.g., when the identifier is 0), deblocking filtering is not used for filtering blocks of the current frame, and the identifier When indicates to use deblocking filtering for the current frame (e.g., when the identifier is 1), it is determined whether to use deblocking filtering for the filtering blocks of the current frame.

일 실시예에 따르면, 상기 식별자에 기초하여, 인코딩될 상기 현재 프레임의 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행할지 여부를 결정하는 단계는 필터링 블록의 경계(boundary)의 필터 강도(filter strength)를 계산하는 단계를 포함하며, 상기 필터링 블록의 상기 경계의 상기 필터 강도를 계산하는 단계는 다음의 단계들 중 적어도 하나를 포함한다. 상기 경계가 필터링되어야 한다고 결정되는 경우, (p0-q0)의 절대값이 제1 파라미터의 4배보다 크거나 같은 경우, 상기 필터 강도는 0이며, 여기서 p0는 상기 경계의 좌측 또는 상측의 제1 샘플이고, q0는 상기 경계의 우측 또는 하측의 제1 샘플이며, 상기 제1 파라미터는 양자화 파라미터(quantization parameter) 및 비트 깊이(bitdepth)에 따라 계산되거나, 상기 경계의 평활도(smoothness)가 6일 때, (p0-p1)의 절대값이 제2 파라미터의 1/4보다 작거나 같고 (q0-q1)의 절대값이 상기 제2 파라미터의 1/4보다 작거나 같으며 (p0-p3)의 절대값이 상기 제2 파라미터의 1/2보다 작거나 같고 (q0-q3)의 절대값이 상기 제2 파라미터의 1/2보다 작거나 같으며 (p0-q0)의 절대값이 상기 제1 파라미터보다 작은 경우, 상기 필터 강도는 4이며, 여기서 p1은 상기 경계의 좌측 또는 상측의 제2 샘플이고, q1은 상기 경계의 우측 또는 하측의 제2 샘플이며, p3은 상기 경계의 좌측 또는 상측의 제4 샘플이고, q3은 상기 경계의 우측 또는 하측의 제4 샘플이며, 상기 제2 파라미터는 상기 양자화 파라미터 및 상기 비트 깊이에 따라 계산되거나, 또는 상기 경계의 평활도가 5일 때, p0이 p1과 같고 q0이 q1과 같으며 (p2-q2)의 절대값이 상기 제1 파라미터보다 작은 경우, 상기 필터 강도는 3이며, 여기서 p2는 상기 경계의 좌측 또는 상측의 제3 샘플이고 q2는 상기 경계의 우측 또는 하측의 제3 샘플이다.According to one embodiment, based on the identifier, determining whether to perform deblocking filtering on prediction-compensated samples of the current frame to be encoded includes filter strength of the boundary of the filtering block. strength), and calculating the filter strength of the boundary of the filtering block includes at least one of the following steps. When it is determined that the boundary should be filtered, if the absolute value of (p0-q0) is greater than or equal to 4 times the first parameter, the filter strength is 0, where p0 is the first parameter to the left or above the boundary. sample, q0 is the first sample to the right or below the boundary, and the first parameter is calculated according to the quantization parameter and bitdepth, or when the smoothness of the boundary is 6 , the absolute value of (p0-p1) is less than or equal to 1/4 of the second parameter, the absolute value of (q0-q1) is less than or equal to 1/4 of the second parameter, and the absolute value of (p0-p3) is less than or equal to 1/4 of the second parameter. The value is less than or equal to 1/2 of the second parameter, the absolute value of (q0-q3) is less than or equal to 1/2 of the second parameter, and the absolute value of (p0-q0) is less than the first parameter. When small, the filter strength is 4, where p1 is the second sample to the left or above the boundary, q1 is the second sample to the right or below the boundary, and p3 is the fourth sample to the left or above the boundary. sample, q3 is the fourth sample to the right or below the boundary, and the second parameter is calculated according to the quantization parameter and the bit depth, or when the smoothness of the boundary is 5, p0 is equal to p1 and q0 is equal to q1 and the absolute value of (p2-q2) is less than the first parameter, then the filter strength is 3, where p2 is the third sample to the left or above the boundary and q2 is the third sample to the right or above the boundary. This is the third sample on the lower side.

도 9는 필터링 블록의 경계의 샘플들의 개략도를 도시한다. 도 9에서 흑색 굵은 선은 필터링 블록의 경계의 특정 세그먼트를 나타낸다. 상기 필터링 블록의 상기 경계의 양측의 8개 샘플들은 각각 p0, p1, p2, p3 및 q0, q1, q2, q3으로 표시되어 있는데, 즉, p0은 상기 경계의 좌측 또는 상측의 제1 샘플이고, p1은 상기 경계의 좌측 또는 상측의 제2 샘플이며, p2는 상기 경계의 좌측 또는 상측의 제3 샘플이고, p3은 상기 경계의 좌측 또는 상측의 제4 샘플이며, q0은 상기 경계의 우측 또는 하측의 제1 샘플이고, q1은 상기 경계의 우측 또는 하측의 제2 샘플이며, q2는 상기 경계의 우측 또는 하측의 제3 샘플이고, q3은 상기 경계의 우측 또는 하측의 제4 샘플이다. 상기 필터링 블록의 각 경계에 대해, 상기 경계가 필터링되어야 하는지 여부가 결정된다. 상기 경계가 필터링되어야 하는 경우, 상기 경계의 각 세그먼트의 필터 강도가 계산되고, 상기 경계의 세그먼트의 필터 강도에 따라 디블로킹 필터링이 수행된다. 그렇지 않은 경우, 보상된 샘플의 값은 직접 디블로킹-필터링된 샘플의 값으로 취해진다.Figure 9 shows a schematic diagram of samples of the boundary of a filtering block. In Figure 9, the black thick line represents a specific segment of the boundary of the filtering block. The eight samples on either side of the boundary of the filtering block are denoted p0, p1, p2, p3 and q0, q1, q2, q3, respectively, i.e., p0 is the first sample to the left or above the boundary, p1 is the second sample to the left or above the boundary, p2 is the third sample to the left or above the boundary, p3 is the fourth sample to the left or above the boundary, and q0 is the right or below the boundary. is the first sample, q1 is the second sample to the right or below the boundary, q2 is the third sample to the right or below the boundary, and q3 is the fourth sample to the right or below the boundary. For each boundary of the filtering block, it is determined whether the boundary should be filtered. When the boundary is to be filtered, the filter strength of each segment of the boundary is calculated, and deblocking filtering is performed according to the filter strength of the segment of the boundary. Otherwise, the value of the compensated sample is taken directly as the value of the deblocking-filtered sample.

예를 들면, 상기 경계의 디블로킹 필터 강도 Bs의 유도 과정은 다음과 같다. 상기 경계의 필터 강도 Bs의 값이 클수록, 상기 필터 강도가 커진다. Bs가 0인 것은 필터링이 없음을 나타낸다.For example, the derivation process of the boundary deblocking filter strength Bs is as follows. The larger the value of the boundary filter strength Bs, the greater the filter strength. Bs of 0 indicates no filtering.

필터링이 필요하다고 결정되는 경우, (p0-q0)의 절대값이 제1 파라미터의 4배보다 크거나 같은 경우, Bs는 0이며, 여기서 상기 제1 파라미터는 양자화 파라미터(quantization parameter: QP) 및 비트 깊이에 따라 계산된다. 그렇지 않은 경우, 상기 경계의 필터 강도 Bs를 계산하는 과정은 다음과 같다.When it is determined that filtering is necessary, if the absolute value of (p0-q0) is greater than or equal to 4 times the first parameter, Bs is 0, where the first parameter is a quantization parameter (QP) and a bit Calculated based on depth. Otherwise, the process of calculating the filter strength Bs of the boundary is as follows.

(1) 상기 경계의 평활도 fS를 계산하는 단계:(1) Calculating the smoothness fS of the boundary:

(p0-p1)의 절대값이 제2 파라미터보다 작은 경우, 상기 경계의 좌측/상측 평활도는 2만큼 증가되며, 상기 제2 파라미터는 상기 양자화 파라미터 및 상기 비트 깊이에 따라 계산된다. (p0-p2)의 절대값이 상기 제2 파라미터보다 작은 경우, 상기 경계의 좌측/상측 평활도는 1만큼 더 증가된다. 우측/하측 평활도는 유사하게 획득된다. 상기 경계의 평활도 fS는 상기 좌측/상측 평활도와 상기 우측/하측 평활도의 합과 같다.If the absolute value of (p0-p1) is less than the second parameter, the left/top smoothness of the boundary is increased by 2, and the second parameter is calculated according to the quantization parameter and the bit depth. If the absolute value of (p0-p2) is smaller than the second parameter, the left/top smoothness of the boundary is further increased by 1. Right/bottom smoothness is obtained similarly. The smoothness fS of the boundary is equal to the sum of the left/upper side smoothness and the right/lower side smoothness.

(2) 상기 경계의 평활도 fS의 값에 따라 Bs를 획득하는 단계:(2) Obtaining Bs according to the value of the boundary smoothness fS:

fS가 6일 때, (p0-p1)의 절대값이 상기 제2 파라미터의 1/4보다 작거나 같고 (q0-q1)의 절대값이 상기 제2 파라미터의 1/4보다 작거나 같으며 (p0-p3)의 절대값이 상기 제2 파라미터의 1/2보다 작거나 같고 (q0-q3)의 절대값이 상기 제2 파라미터의 1/2보다 작거나 같으며 (p0-q0)의 절대값이 상기 제1 파라미터보다 작은 경우, Bs는 4이며, 그렇지 않은 경우, Bs는 3이다.When fS is 6, the absolute value of (p0-p1) is less than or equal to 1/4 of the second parameter, the absolute value of (q0-q1) is less than or equal to 1/4 of the second parameter, and ( The absolute value of (p0-p3) is less than or equal to 1/2 of the second parameter, the absolute value of (q0-q3) is less than or equal to 1/2 of the second parameter, and the absolute value of (p0-q0) If this is less than the first parameter, Bs is 4, otherwise, Bs is 3.

fS가 5일 때, p0이 p1과 같고 q0이 q1과 같으며 (p2-q2)의 절대값이 상기 제1 파라미터보다 작은 경우, Bs는 3이며, 그렇지 않은 경우, Bs는 2이다.When fS is 5, if p0 is equal to p1, q0 is equal to q1, and the absolute value of (p2-q2) is less than the first parameter, Bs is 3, otherwise, Bs is 2.

도 10은 본 개시의 실시예에 따른 인코딩 장치의 블록도를 도시한다. 인코딩 장치(1000)는 컴퓨터 프로그램들이 저장된 메모리(1001), 및 상기 컴퓨터 프로그램들의 실행 시 상술된 인코딩 방법을 수행하는 프로세서(1002)를 포함한다. 상기 인코딩 장치는 코딩 효율을 향상시킬 수 있다.Figure 10 shows a block diagram of an encoding device according to an embodiment of the present disclosure. The encoding device 1000 includes a memory 1001 in which computer programs are stored, and a processor 1002 that performs the above-described encoding method when executing the computer programs. The encoding device can improve coding efficiency.

도 11은 본 개시의 실시예에 따른 디코딩 방법의 흐름도를 도시한다. 상기 방법은 블록 레벨에서 디블로킹 필터링을 이용할지 여부에 관한 것이다. 상기 방법은 현재 코딩 유닛이 화면 콘텐트인지 여부에 따라 상기 현재 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행할지 여부를 결정하는 단계(S1101), 및 상기 결정의 결과에 따라, 디블로킹-필터링된 재구성된 샘플들을 획득하기 위해 상기 현재 코딩 유닛의 상기 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행하는 단계(S1102)를 포함한다. 이런 식으로, 디코딩된 이미지의 품질이 향상될 수 있다.Figure 11 shows a flowchart of a decoding method according to an embodiment of the present disclosure. The method concerns whether to use deblocking filtering at the block level. The method includes determining whether to perform deblocking filtering on prediction-compensated samples of the current coding unit depending on whether the current coding unit is screen content (S1101), and according to the result of the decision, deblocking filtering. and performing deblocking filtering on the prediction-compensated samples of the current coding unit to obtain blocking-filtered reconstructed samples (S1102). In this way, the quality of the decoded image can be improved.

일 실시예에 따르면, 단계(S1101)는, 현재 디코딩된 블록이 화면 콘텐트가 아닌 경우, 상기 현재 디코딩된 블록의 재구성된 샘플들의 값들에 대해 디블로킹 필터링을 이용함을 결정하는 단계, 또는, 현재 디코딩된 블록이 화면 콘텐트인 경우, 상기 현재 디코딩된 블록의 재구성된 샘플들의 값들에 대해 디블로킹 필터링을 이용하지 않음을 결정하는 단계 중 적어도 하나를 포함한다.According to one embodiment, step S1101 is, if the currently decoded block is not screen content, determining to use deblocking filtering on the values of the reconstructed samples of the currently decoded block, or When the decoded block is screen content, determining not to use deblocking filtering on values of reconstructed samples of the currently decoded block.

상기 현재 코딩 유닛은 최대 디코딩 블록이거나 아니면 디코딩 블록일 수 있으며, 이는 본 명세서에 제한되지 않는다.The current coding unit may be the largest decoding block or a decoding block, but is not limited to this specification.

상기 현재 디코딩된 블록이 화면 콘텐트인지 여부를 결정하기 위한 계산 방법은 다음의 방법들 중 하나이거나 또는 다른 방법일 수 있으며, 본 명세서에 제한되지 않는다. 하나의 가능한 구현은 상기 현재 디코딩된 블록과 소벨 연산자를 컨볼루션하는 것이며, 상기 현재 디코딩된 블록의 계산된 소벨 값이 특정 문턱값보다 클 때, 상기 현재 디코딩된 블록은 화면 콘텐트이다. 다른 가능한 구현은 상기 현재 디코딩된 블록의 히스토그램(histogram)을 계산하는 것이며, 상기 현재 디코딩된 블록의 샘플값 유형들의 계산된 수가 특정 문턱값보다 작을 때, 상기 현재 디코딩된 블록은 화면 콘텐트이다.The calculation method for determining whether the currently decoded block is screen content may be one or other of the following methods and is not limited to this specification. One possible implementation is to convolve the currently decoded block with a Sobel operator, and when the calculated Sobel value of the currently decoded block is greater than a certain threshold, the currently decoded block is screen content. Another possible implementation is to calculate a histogram of the currently decoded block, and when the calculated number of sample value types of the currently decoded block is less than a certain threshold, the currently decoded block is screen content.

도 12는 본 개시의 실시예에 따른 디코딩 장치의 블록도를 도시한다. 디코딩 장치(1200)는 컴퓨터 프로그램들이 저장된 메모리(1201), 및 상기 컴퓨터 프로그램들의 실행 시 도 11을 참조하여 설명된 상기 디코딩 방법을 수행하는 프로세서(1202)를 포함한다. 상기 디코딩 장치는 디코딩된 이미지의 품질을 향상시킬 수 있다.Figure 12 shows a block diagram of a decoding device according to an embodiment of the present disclosure. The decoding device 1200 includes a memory 1201 in which computer programs are stored, and a processor 1202 that performs the decoding method described with reference to FIG. 11 when the computer programs are executed. The decoding device can improve the quality of decoded images.

본 개시는 또한, 컴퓨터에 의해 실행될 때, 상기 컴퓨터로 하여금 상술된 방법들을 수행하도록 하는 비일시적 컴퓨터 판독가능 명령어들(non-transitory computer readable instructions)을 저장하는 컴퓨터 판독가능 저장 매체(computer readable storage medium)를 제공한다.The present disclosure also provides a computer readable storage medium that, when executed by a computer, stores non-transitory computer readable instructions that cause the computer to perform the methods described above. ) is provided.

본 명세서에서 설명되는 예시적 실시예들은 제한하고자 한 것이 아니다. 본 명세서에서 일반적으로 설명되고 도면들에 도시된 바와 같은 본 개시의 측면들(aspects)은 다양한 상이한 구성들로 배치(arranged), 대체(replaced), 조합(combined), 분리(separated), 및 설계될(designed) 수 있으며, 이들 모두는 본 명세서에서 고려된 것이다. 또한, 각 도면에 도시된 특징들(features)은, 문맥상 달리 지시되지 않는 한, 서로 조합하여 이용될 수 있다. 따라서, 도면들은 일반적으로 하나 이상의 전체 실시예들의 구성 부분(constituent part)으로 간주되어야 하지만, 도시된 특징들 모두가 각각의 실시예에 필수적인 것은 아님을 이해해야 할 것이다.The exemplary embodiments described herein are not intended to be limiting. Aspects of the disclosure, as generally described herein and shown in the drawings, can be arranged, replaced, combined, separated, and designed in a variety of different configurations. may be designed, all of which are contemplated herein. Additionally, the features shown in each drawing may be used in combination with each other, unless otherwise indicated by context. Accordingly, the drawings should generally be regarded as a constituent part of one or more overall embodiments, but it should be understood that not all of the features shown are essential to each embodiment.

이상 본 개시는 특정 구현들을 참조하여 예시 및 설명되었지만, 본 개시가 속하는 기술분야의 숙련된 자들이라면 청구범위에 의해 정의된 바와 같은 본 개시의 사상 및 범위를 벗어나지 않고 다양한 변경 및 변형이 이루어질 수 있음을 이해할 것이다.Although the present disclosure has been illustrated and described with reference to specific implementations, various changes and modifications may be made by those skilled in the art to which the present disclosure pertains without departing from the spirit and scope of the present disclosure as defined by the claims. You will understand.

Claims (16)

삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 현재 프레임에 대해 디블로킹 필터링을 수행할지 여부를 지시하는 식별자(identifier)를 포함하는 비트스트림을 생성하는 단계를 포함하고,
상기 식별자가 디블로킹 필터링을 수행한다고 지시하는 경우:
(p0-q0)의 절대값이 제1 파라미터의 4배보다 크거나 같을 때, 필터 강도를 0으로 결정하며, 상기 p0은 경계의 좌측 또는 상측의 제1 샘플이고, q0은 상기 경계의 우측 또는 하측의 제1 샘플이며, 상기 제1 파라미터는 양자화 파라미터(quantization parameter) 및 비트 깊이(bitdepth)에 따라 계산되고,
(p0-p3)의 절대값이 제2 파라미터의 1/2보다 작거나 같고 (q0-q3)의 절대값이 상기 제2 파라미터의 1/2보다 작거나 같은 것에 기초하여, 상기 필터 강도를 4로 결정하며, p3은 상기 경계의 좌측 또는 상측의 제4 샘플이고, q3은 상기 경계의 우측 또는 하측의 제4 샘플이며, 상기 제2 파라미터는 상기 양자화 파라미터 및 상기 비트 깊이에 따라 계산되고,
(p2-q2)의 절대값이 상기 제1 파라미터보다 작은 것에 기초하여, 상기 필터 강도를 3으로 결정하며, p2는 상기 경계의 좌측 또는 상측의 제3 샘플이고 q2는 상기 경계의 우측 또는 하측의 제3 샘플인, 인코딩 방법.
Generating a bitstream including an identifier indicating whether to perform deblocking filtering on the current frame,
If the identifier indicates that deblocking filtering is to be performed:
When the absolute value of (p0-q0) is greater than or equal to 4 times the first parameter, the filter strength is determined to be 0, where p0 is the first sample to the left or above the boundary, and q0 is the right or upper side of the boundary. It is the first sample on the lower side, and the first parameter is calculated according to the quantization parameter and bitdepth,
Based on the absolute value of (p0-p3) being less than or equal to 1/2 of the second parameter and the absolute value of (q0-q3) being less than or equal to 1/2 of the second parameter, the filter strength is adjusted to 4. where p3 is the fourth sample to the left or above the boundary, q3 is the fourth sample to the right or below the boundary, and the second parameter is calculated according to the quantization parameter and the bit depth,
Based on the absolute value of (p2-q2) being less than the first parameter, the filter strength is determined to be 3, where p2 is the third sample to the left or above the boundary and q2 is the third sample to the right or below the boundary. Third sample, encoding method.
삭제delete 삭제delete 제9항에 있어서, 상기 식별자가 디블로킹 필터링을 수행한다고 지시하는경우:
(p0-q0)의 절대값이 제1 파라미터의 4배보다 크거나 같을 때, 필터 강도를 0으로 결정하는 단계로서, p0은 상기 경계의 좌측 또는 상측의 제1 샘플이고, q0은 상기 경계의 우측 또는 하측의 제1 샘플이며, 상기 제1 파라미터는 양자화 파라미터(quantization parameter) 및 비트 깊이(bitdepth)에 따라 계산되는, 단계;
상기 경계의 평활도(smoothness)가 6일 때, (p0-p1)의 절대값이 제2 파라미터의 1/4보다 작거나 같고 (q0-q1)의 절대값이 상기 제2 파라미터의 1/4보다 작거나 같으며 (p0-p3)의 절대값이 상기 제2 파라미터의 1/2보다 작거나 같고 (q0-q3)의 절대값이 상기 제2 파라미터의 1/2보다 작거나 같으며 상기 (p0-q0)의 절대값이 상기 제1 파라미터보다 작은 경우, 상기 필터 강도를 4로 결정하는 단계로서, p1은 상기 경계의 좌측 또는 상측의 제2 샘플이고, q1은 상기 경계의 우측 또는 하측의 제2 샘플이며, p3은 상기 경계의 좌측 또는 상측의 제4 샘플이고, q3은 상기 경계의 우측 또는 하측의 제4 샘플이며, 상기 제2 파라미터는 상기 양자화 파라미터 및 상기 비트 깊이에 따라 계산되는, 단계; 및
상기 경계의 상기 평활도가 5일 때, p0가 p1과 같고 q0가 q1과 같으며 (p2-q2)의 절대값이 상기 제1 파라미터보다 작은 경우, 상기 필터 강도를 3으로 결정하는 단계로서, p2는 상기 경계의 좌측 또는 상측의 제3 샘플이고 q2는 상기 경계의 우측 또는 하측의 제3 샘플인 단계를 포함하는, 인코딩 방법.
The method of claim 9, wherein when the identifier indicates that deblocking filtering is performed:
When the absolute value of (p0-q0) is greater than or equal to 4 times the first parameter, determining the filter strength to be 0, where p0 is the first sample to the left or above the boundary, and q0 is the first sample to the left or above the boundary. a first sample on the right or bottom, wherein the first parameter is calculated according to a quantization parameter and a bitdepth;
When the smoothness of the boundary is 6, the absolute value of (p0-p1) is less than or equal to 1/4 of the second parameter and the absolute value of (q0-q1) is less than 1/4 of the second parameter. is less than or equal to, the absolute value of (p0-p3) is less than or equal to 1/2 of the second parameter, the absolute value of (q0-q3) is less than or equal to 1/2 of the second parameter, and the (p0 If the absolute value of -q0) is less than the first parameter, determining the filter strength to be 4, where p1 is the second sample to the left or above the boundary, and q1 is the second sample to the right or below the boundary. 2 samples, p3 is the fourth sample to the left or above the boundary, q3 is the fourth sample to the right or below the boundary, and the second parameter is calculated according to the quantization parameter and the bit depth. ; and
When the smoothness of the boundary is 5, p0 is equal to p1, q0 is equal to q1, and the absolute value of (p2-q2) is less than the first parameter, determining the filter strength to be 3, p2 is a third sample to the left or above the boundary and q2 is a third sample to the right or below the boundary.
컴퓨터 프로그램들이 저장된 메모리, 및
상기 컴퓨터 프로그램들의 실행 시 인코딩 방법을 수행하는 프로세서를 포함하되, 상기 방법은,
현재 프레임에 대해 디블로킹 필터링을 수행할지 여부를 지시하는 식별자를 포함하는 비트스트림을 생성하는 단계를 포함하고,
상기 식별자가 디블로킹 필터링을 수행한다고 지시하는 경우:
(p0-q0)의 절대값이 제1 파라미터의 4배보다 크거나 같을 때, 필터 강도를 0으로 결정하며, 상기 p0은 경계의 좌측 또는 상측의 제1 샘플이고, q0은 상기 경계의 우측 또는 하측의 제1 샘플이며, 상기 제1 파라미터는 양자화 파라미터 및 비트 깊이에 따라 계산되고,
(p0-p3)의 절대값이 제2 파라미터의 1/2보다 작거나 같고 (q0-q3)의 절대값이 상기 제2 파라미터의 1/2보다 작거나 같은 것에 기초하여, 상기 필터 강도를 4로 결정하며, p3은 상기 경계의 좌측 또는 상측의 제4 샘플이고, q3은 상기 경계의 우측 또는 하측의 제4 샘플이며, 상기 제2 파라미터는 상기 양자화 파라미터 및 상기 비트 깊이에 따라 계산되고,
(p2-q2)의 절대값이 상기 제1 파라미터보다 작은 것에 기초하여, 상기 필터 강도를 3으로 결정하며, p2는 상기 경계의 좌측 또는 상측의 제3 샘플이고 q2는 상기 경계의 우측 또는 하측의 제3 샘플인, 인코딩 장치.
memory in which computer programs are stored, and
A processor that performs an encoding method when executing the computer programs, the method comprising:
Generating a bitstream including an identifier indicating whether to perform deblocking filtering on the current frame,
If the identifier indicates that deblocking filtering is to be performed:
When the absolute value of (p0-q0) is greater than or equal to 4 times the first parameter, the filter strength is determined to be 0, where p0 is the first sample to the left or above the boundary, and q0 is the right or upper side of the boundary. The lower first sample, wherein the first parameter is calculated according to the quantization parameter and the bit depth,
Based on the absolute value of (p0-p3) being less than or equal to 1/2 of the second parameter and the absolute value of (q0-q3) being less than or equal to 1/2 of the second parameter, the filter strength is adjusted to 4. where p3 is the fourth sample to the left or above the boundary, q3 is the fourth sample to the right or below the boundary, and the second parameter is calculated according to the quantization parameter and the bit depth,
Based on the absolute value of (p2-q2) being less than the first parameter, the filter strength is determined to be 3, where p2 is the third sample to the left or above the boundary and q2 is the third sample to the right or below the boundary. Third sample, encoding device.
현재 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행할지 여부를 나타내는 식별자를 획득하는 단계를 포함하고,
상기 식별자가 디블로킹 필터링을 수행한다고 지시하는 경우:
(p0-q0)의 절대값이 제1 파라미터의 4배보다 크거나 같을 때, 필터 강도를 0으로 결정하며, 상기 p0은 경계의 좌측 또는 상측의 제1 샘플이고, q0은 상기 경계의 우측 또는 하측의 제1 샘플이며, 상기 제1 파라미터는 양자화 파라미터 및 비트 깊이에 따라 계산되고,
(p0-p3)의 절대값이 제2 파라미터의 1/2보다 작거나 같고 (q0-q3)의 절대값이 상기 제2 파라미터의 1/2보다 작거나 같은 것에 기초하여, 상기 필터 강도를 4로 결정하며, p3은 상기 경계의 좌측 또는 상측의 제4 샘플이고, q3은 상기 경계의 우측 또는 하측의 제4 샘플이며, 상기 제2 파라미터는 상기 양자화 파라미터 및 상기 비트 깊이에 따라 계산되고,
(p2-q2)의 절대값이 상기 제1 파라미터보다 작은 것에 기초하여, 상기 필터 강도를 3으로 결정하며, p2는 상기 경계의 좌측 또는 상측의 제3 샘플이고 q2는 상기 경계의 우측 또는 하측의 제3 샘플인, 디코딩 방법.
Obtaining an identifier indicating whether to perform deblocking filtering on prediction-compensated samples of the current coding unit,
If the identifier indicates that deblocking filtering is to be performed:
When the absolute value of (p0-q0) is greater than or equal to 4 times the first parameter, the filter strength is determined to be 0, where p0 is the first sample to the left or above the boundary, and q0 is the right or upper side of the boundary. The lower first sample, wherein the first parameter is calculated according to the quantization parameter and the bit depth,
Based on the absolute value of (p0-p3) being less than or equal to 1/2 of the second parameter and the absolute value of (q0-q3) being less than or equal to 1/2 of the second parameter, the filter strength is adjusted to 4. where p3 is the fourth sample to the left or above the boundary, q3 is the fourth sample to the right or below the boundary, and the second parameter is calculated according to the quantization parameter and the bit depth,
Based on the absolute value of (p2-q2) being less than the first parameter, the filter strength is determined to be 3, where p2 is the third sample to the left or above the boundary and q2 is the third sample to the right or below the boundary. Third sample, decoding method.
제14 항에 있어서, 상기 식별자가 디블로킹 필터링을 수행한다고 지시하는 경우:
(p0-q0)의 절대값이 제1 파라미터의 4배보다 크거나 같을 때, 필터 강도를 0으로 결정하는 단계로서, p0은 상기 경계의 좌측 또는 상측의 제1 샘플이고, q0은 상기 경계의 우측 또는 하측의 제1 샘플이며, 상기 제1 파라미터는 양자화 파라미터및 비트 깊이에 따라 계산되는, 단계;
상기 경계의 평활도가 6일 때, (p0-p1)의 절대값이 제2 파라미터의 1/4보다 작거나 같고 (q0-q1)의 절대값이 상기 제2 파라미터의 1/4보다 작거나 같으며 (p0-p3)의 절대값이 상기 제2 파라미터의 1/2보다 작거나 같고 (q0-q3)의 절대값이 상기 제2 파라미터의 1/2보다 작거나 같으며 상기 (p0-q0)의 절대값이 상기 제1 파라미터보다 작은 경우, 상기 필터 강도를 4로 결정하는 단계로서, p1은 상기 경계의 좌측 또는 상측의 제2 샘플이고, q1은 상기 경계의 우측 또는 하측의 제2 샘플이며, p3은 상기 경계의 좌측 또는 상측의 제4 샘플이고, q3은 상기 경계의 우측 또는 하측의 제4 샘플이며, 상기 제2 파라미터는 상기 양자화 파라미터 및 상기 비트 깊이에 따라 계산되는, 단계; 및
상기 경계의 상기 평활도가 5일 때, p0가 p1과 같고 q0가 q1과 같으며 (p2-q2)의 절대값이 상기 제1 파라미터보다 작은 경우, 상기 필터 강도를 3으로 결정하는 단계로서, p2는 상기 경계의 좌측 또는 상측의 제3 샘플이고 q2는 상기 경계의 우측 또는 하측의 제3 샘플인 단계를 포함하는, 디코딩 방법.
The method of claim 14, wherein when the identifier indicates that deblocking filtering is performed:
When the absolute value of (p0-q0) is greater than or equal to 4 times the first parameter, determining the filter strength to be 0, where p0 is the first sample to the left or above the boundary, and q0 is the first sample to the left or above the boundary. a first sample on the right or bottom, wherein the first parameter is calculated according to a quantization parameter and a bit depth;
When the smoothness of the boundary is 6, the absolute value of (p0-p1) is less than or equal to 1/4 of the second parameter and the absolute value of (q0-q1) is less than or equal to 1/4 of the second parameter. The absolute value of (p0-p3) is less than or equal to 1/2 of the second parameter, the absolute value of (q0-q3) is less than or equal to 1/2 of the second parameter, and the absolute value of (p0-q0) is less than or equal to 1/2 of the second parameter. If the absolute value of is less than the first parameter, determining the filter strength to be 4, where p1 is the second sample to the left or above the boundary, q1 is the second sample to the right or below the boundary, and , p3 is the fourth sample to the left or above the boundary, q3 is the fourth sample to the right or below the boundary, and the second parameter is calculated according to the quantization parameter and the bit depth; and
When the smoothness of the boundary is 5, p0 is equal to p1, q0 is equal to q1, and the absolute value of (p2-q2) is less than the first parameter, determining the filter strength to be 3, p2 is a third sample to the left or above the boundary and q2 is a third sample to the right or below the boundary.
컴퓨터 프로그램들이 저장된 메모리, 및
상기 컴퓨터 프로그램들의 실행 시 인코딩 방법을 수행하는 프로세서를 포함하되, 상기 방법은,
현재 코딩 유닛의 예측-보상된 샘플들에 대해 디블로킹 필터링을 수행할지 여부를 나타내는 식별자를 획득하는 단계를 포함하고,
상기 식별자가 디블로킹 필터링을 수행한다고 지시하는 경우:
(p0-q0)의 절대값이 제1 파라미터의 4배보다 크거나 같을 때, 필터 강도를 0으로 결정하며, 상기 p0은 경계의 좌측 또는 상측의 제1 샘플이고, q0은 상기 경계의 우측 또는 하측의 제1 샘플이며, 상기 제1 파라미터는 양자화 파라미터 및 비트 깊이에 따라 계산되고,
(p0-p3)의 절대값이 제2 파라미터의 1/2보다 작거나 같고 (q0-q3)의 절대값이 상기 제2 파라미터의 1/2보다 작거나 같은 것에 기초하여, 상기 필터 강도를 4로 결정하며, p3은 상기 경계의 좌측 또는 상측의 제4 샘플이고, q3은 상기 경계의 우측 또는 하측의 제4 샘플이며, 상기 제2 파라미터는 상기 양자화 파라미터 및 상기 비트 깊이에 따라 계산되고,
(p2-q2)의 절대값이 상기 제1 파라미터보다 작은 것에 기초하여, 상기 필터 강도를 3으로 결정하며, p2는 상기 경계의 좌측 또는 상측의 제3 샘플이고 q2는 상기 경계의 우측 또는 하측의 제3 샘플인, 디코딩 장치.


memory in which computer programs are stored, and
A processor that performs an encoding method when executing the computer programs, the method comprising:
Obtaining an identifier indicating whether to perform deblocking filtering on prediction-compensated samples of the current coding unit,
If the identifier indicates that deblocking filtering is to be performed:
When the absolute value of (p0-q0) is greater than or equal to 4 times the first parameter, the filter strength is determined to be 0, where p0 is the first sample to the left or above the boundary, and q0 is the right or upper side of the boundary. The lower first sample, wherein the first parameter is calculated according to the quantization parameter and the bit depth,
Based on the absolute value of (p0-p3) being less than or equal to 1/2 of the second parameter and the absolute value of (q0-q3) being less than or equal to 1/2 of the second parameter, the filter strength is adjusted to 4. where p3 is the fourth sample to the left or above the boundary, q3 is the fourth sample to the right or below the boundary, and the second parameter is calculated according to the quantization parameter and the bit depth,
Based on the absolute value of (p2-q2) being less than the first parameter, the filter strength is determined to be 3, where p2 is the third sample to the left or above the boundary and q2 is the third sample to the right or below the boundary. A third sample, a decoding device.


KR1020227029747A 2020-03-17 2021-03-16 Video encoding and decoding methods and devices KR102585236B1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202010188807.8A CN113411584A (en) 2020-03-17 2020-03-17 Video coding and decoding method and device
CN202010188807.8 2020-03-17
PCT/KR2021/003211 WO2021187855A1 (en) 2020-03-17 2021-03-16 Method and apparatus for video encoding and decoding

Publications (2)

Publication Number Publication Date
KR20220124287A KR20220124287A (en) 2022-09-13
KR102585236B1 true KR102585236B1 (en) 2023-10-05

Family

ID=77677197

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227029747A KR102585236B1 (en) 2020-03-17 2021-03-16 Video encoding and decoding methods and devices

Country Status (4)

Country Link
EP (1) EP4122198A4 (en)
KR (1) KR102585236B1 (en)
CN (1) CN113411584A (en)
WO (1) WO2021187855A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018530955A (en) * 2015-09-08 2018-10-18 聯發科技股▲ふん▼有限公司Mediatek Inc. Intra block copy mode decoded picture buffer method and system

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101310536B (en) * 2005-09-27 2010-06-02 高通股份有限公司 Video encoding method enabling highly efficient partial decoding of H.264 and other transform coded information
US8879635B2 (en) * 2005-09-27 2014-11-04 Qualcomm Incorporated Methods and device for data alignment with time domain boundary
WO2012150849A2 (en) * 2011-05-04 2012-11-08 한국전자통신연구원 Video encoding/decoding method using error resilient loop filter, and signaling method thereof
WO2013064661A1 (en) * 2011-11-03 2013-05-10 Panasonic Corporation Filtering of blocks coded in the pulse code modulation mode
US9538200B2 (en) * 2012-01-19 2017-01-03 Qualcomm Incorporated Signaling of deblocking filter parameters in video coding
RU2654129C2 (en) * 2013-10-14 2018-05-16 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Features of intra block copy prediction mode for video and image coding and decoding
CN109889853A (en) * 2019-02-26 2019-06-14 北京大学深圳研究生院 A kind of block-eliminating effect filtering method, system, equipment and computer-readable medium
CN114640845B (en) * 2021-02-23 2023-02-28 杭州海康威视数字技术股份有限公司 Encoding and decoding method, device and equipment thereof

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018530955A (en) * 2015-09-08 2018-10-18 聯發科技股▲ふん▼有限公司Mediatek Inc. Intra block copy mode decoded picture buffer method and system

Also Published As

Publication number Publication date
WO2021187855A1 (en) 2021-09-23
EP4122198A4 (en) 2024-04-24
KR20220124287A (en) 2022-09-13
CN113411584A (en) 2021-09-17
EP4122198A1 (en) 2023-01-25

Similar Documents

Publication Publication Date Title
US20230164331A1 (en) Constraints on locations of reference blocks for intra block copy prediction
EP3114838B1 (en) Hash table construction and availability checking for hash-based block matching
JP2019071632A (en) Method for deblocking block of video sample
JP2022526664A (en) Parameter derivation in cross-component mode
WO2020258010A1 (en) Image encoding method, image decoding method, encoder, decoder and storage medium
WO2015096647A1 (en) Method and apparatus for major color index map coding
AU2014408228A1 (en) Rules for intra-picture prediction modes when wavefront parallel processing is enabled
JP6784836B2 (en) Equipment and methods for video coding
KR20160075705A (en) Hash-based block matching in video and image coding
KR20190052097A (en) Image processing method and apparatus therefor
US11159814B2 (en) Image coding/decoding method, coder, decoder, and storage medium
CN117294846A (en) Quantization parameters for chroma deblocking filtering
KR20170110557A (en) Image encoding method and image decoding method and apparatus using adaptive deblocking filtering
CN114009033A (en) Method and apparatus for signaling symmetric motion vector difference mode
Chen et al. Nearest-neighbor intra prediction for screen content video coding
KR20230111255A (en) Intra frame prediction method, apparatus and decoder and encoder
KR20230145002A (en) Image decoding method and apparatus using inter picture prediction
JP2021519018A (en) Image processing devices and methods for performing efficient deblocking
KR102585236B1 (en) Video encoding and decoding methods and devices
US11991399B2 (en) Apparatus and method for de-blocking filtering
KR102674037B1 (en) Image encoding device, image encoding method, image decoding device, image decoding method, and computer program
EP3941043A1 (en) Image decoding device, image decoding method, and program
CN116546217A (en) Decoding prediction method, device and computer storage medium
RU2790323C2 (en) Image encoding method, image decoding method, encoder, decoder and data carrier
EP3598759B1 (en) Systems and methods for deblocking filtering

Legal Events

Date Code Title Description
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant