KR20240078641A - Method and apparatus for encoding/decoding a video signal - Google Patents
Method and apparatus for encoding/decoding a video signal Download PDFInfo
- Publication number
- KR20240078641A KR20240078641A KR1020240067161A KR20240067161A KR20240078641A KR 20240078641 A KR20240078641 A KR 20240078641A KR 1020240067161 A KR1020240067161 A KR 1020240067161A KR 20240067161 A KR20240067161 A KR 20240067161A KR 20240078641 A KR20240078641 A KR 20240078641A
- Authority
- KR
- South Korea
- Prior art keywords
- block
- prediction
- intra
- sub
- current
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 127
- 238000013139 quantization Methods 0.000 description 41
- 238000001914 filtration Methods 0.000 description 25
- 230000009466 transformation Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 22
- 238000005192 partition Methods 0.000 description 13
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 10
- 238000000638 solvent extraction Methods 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 5
- 230000001131 transforming effect Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000009795 derivation Methods 0.000 description 3
- 230000001939 inductive effect Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000011426 transformation method Methods 0.000 description 2
- JMYHHWKXFCFDSK-UHFFFAOYSA-N 2-(2,4-dimethylphenyl)indene-1,3-dione Chemical compound CC1=CC(C)=CC=C1C1C(=O)C2=CC=CC=C2C1=O JMYHHWKXFCFDSK-UHFFFAOYSA-N 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
영상 부호화/복호화 방법 및 장치가 개시된다. 본 개시의 일 실시 예에 따른 영상 복호화 방법은, 현재 부호화 블록의 인트라 하이브리드 모드 정보를 부호화하는 단계 및 기 인트라 하이브리드 모드 정보에 기초하여 상기 현재 부호화 블록 내의 적어도 하나의 예측 블록의 예측 샘플을 생성하는 단계를 포함하고, 상 현재 부호화 블록이 인트라 하이브리드 모드인 경우, 상기 현재 부호화 블록 내의 적어도 하나의 예측 블록의 예측 샘플을 생성하는 단계는, 상기 현재 부호화 블록을 제1 예측 블록 및 제2 예측 블록으로 분할하는 단계, 상기 제1 예측 블록의 주변 블록으로부터 유도된 상기 제1 예측 블록의 화면 내 예측 모드를 이용하여 상기 제1 예측 블록의 예측 샘플을 생성하는 단계 및 상기 제2 예측 블록의 화면 내 예측 모드 정보 또는 DIMD 모드 정보에 기초하여 상기 제2 예측 블록의 화면 내 예측 모드를 결정하고, 상기 결정된 화면 내 예측 모드를 이용하여 상기 제2 예측 블록의 예측 샘플을 생성하는 단계를 포함할 수 있다.A video encoding/decoding method and device are disclosed. An image decoding method according to an embodiment of the present disclosure includes encoding intra hybrid mode information of a current coding block and generating a prediction sample of at least one prediction block in the current coding block based on the intra hybrid mode information. and generating a prediction sample of at least one prediction block in the current coding block when the current coding block is in an intra hybrid mode, dividing the current coding block into a first prediction block and a second prediction block. Splitting, generating a prediction sample of the first prediction block using an intra-prediction mode of the first prediction block derived from neighboring blocks of the first prediction block, and intra-prediction of the second prediction block It may include determining an intra-prediction mode of the second prediction block based on mode information or DIMD mode information, and generating a prediction sample of the second prediction block using the determined intra-prediction mode.
Description
본 발명은 영상 신호 부호화/복호화 방법 및 장치에 관한 것으로, 보다 상세하게는 인트라 하이브리드 모드가 적용되는 영상 신호 부호화/복호화 방법 및 장치에 관한 것이다.The present invention relates to a method and device for encoding/decoding video signals, and more specifically, to a method and device for encoding/decoding video signals to which an intra hybrid mode is applied.
최근, 인터넷에서는 동영상과 같은 멀티미디어 데이터의 수요가 급격히 증가하고 있다. 하지만 채널(Channel)의 대역폭(Bandwidth)이 발전하는 속도는 급격히 증가하고 있는 멀티미디어 데이터의 양을 따라가기 힘든 상황이다. 이에 따라, 국제 표준화 기구인 ITU-T의 VCEG(Video Coding Expert Group)과 ISO/IEC의 MPEG(Moving Picture Expert Group)은 2014년 2월, 동영상 압축 표준인 HEVC(High Efficiency Video Coding) 버전1을 제정하였다.Recently, demand for multimedia data such as video is rapidly increasing on the Internet. However, the speed at which channel bandwidth develops is difficult to keep up with the rapidly increasing amount of multimedia data. Accordingly, the international standardization organization ITU-T's VCEG (Video Coding Expert Group) and ISO/IEC's MPEG (Moving Picture Expert Group) announced version 1 of HEVC (High Efficiency Video Coding), a video compression standard, in February 2014. It was enacted.
HEVC에서는 화면 내 예측(또는 인트라 예측), 화면 간 예측(또는 인터 예측), 변환, 양자화, 엔트로피 부호화 및 인-루프 필터 등의 기술을 정의하고 있다. HEVC defines technologies such as intra-screen prediction (or intra-prediction), inter-screen prediction (or inter-prediction), transformation, quantization, entropy coding, and in-loop filter.
현재 동영상 압축 표준인 HEVC에서는 화면 내 예측 모드로 Planar 모드, DC 모드, Angular 모드만 수행 될 수 있어 예측의 정확성이 떨어진다는 문제점이 있다.In HEVC, the current video compression standard, only Planar mode, DC mode, and Angular mode can be performed as intra-screen prediction modes, so there is a problem that prediction accuracy is low.
본 발명은 상술한 문제점을 해결하기 위한 것으로, 화면 내 예측시 부호화 블록내의 예측 블록의 위치 특성을 고려하여 화면 내 예측 모드를 결정하는 방법을 제공하는 것에 주된 목적이 있다.The present invention is intended to solve the above-mentioned problems, and its main purpose is to provide a method for determining an intra-prediction mode by considering the positional characteristics of prediction blocks within a coding block during intra-prediction.
본 개시에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical problems to be achieved by this disclosure are not limited to the technical problems mentioned above, and other technical problems not mentioned can be clearly understood by those skilled in the art from the description below. You will be able to.
본 개시의 일 양상에 따르는 영상 복호화 방법은, 현재 부호화 블록의 인트라 하이브리드 모드 정보를 복호화하는 단계 및 상기 인트라 하이브리드 모드 정보에 기초하여 상기 현재 부호화 블록 내의 적어도 하나의 예측 블록의 예측 샘플을 생성하는 단계를 포함하고, 상기 현재 부호화 블록이 인트라 하이브리드 모드인 경우, 상기 현재 부호화 블록 내의 적어도 하나의 예측 블록의 예측 샘플을 생성하는 단계는, 상기 현재 부호화 블록을 제1 예측 블록 및 제2 예측 블록으로 분할하는 단계, 상기 제1 예측 블록의 주변 블록으로부터 유도된 상기 제1 예측 블록의 화면 내 예측 모드를 이용하여 상기 제1 예측 블록의 예측 샘플을 생성하는 단계 및 상기 제2 예측 블록의 화면 내 예측 모드 정보 혹은 DIMD(Decoder-side Intra Mode Derivation) 모드 정보를 복호화하여 상기 제2 예측 블록의 화면 내 예측 모드를 결정하고, 상기 결정된 화면 내 예측 모드를 이용하여 상기 제2 예측 블록의 예측 샘플을 생성하는 단계를 포함할 수 있다.An image decoding method according to an aspect of the present disclosure includes decoding intra hybrid mode information of a current coding block and generating a prediction sample of at least one prediction block in the current coding block based on the intra hybrid mode information. Includes, when the current coding block is an intra hybrid mode, generating a prediction sample of at least one prediction block in the current coding block includes dividing the current coding block into a first prediction block and a second prediction block. generating a prediction sample of the first prediction block using an intra-prediction mode of the first prediction block derived from a neighboring block of the first prediction block, and an intra-prediction mode of the second prediction block. Decoding information or DIMD (Decoder-side Intra Mode Derivation) mode information to determine an intra-prediction mode of the second prediction block, and generating a prediction sample of the second prediction block using the determined intra-prediction mode. May include steps.
상기 영상 복호화 방법에 있어서, 상기 DIMD 모드는, 부호화 블록의 주변 블록으로부터 유도된 인트라 예측 모드를 기초로 최종 인트라 예측를 유도하고, 상기 유도된 인트라 예측 모드를 상기 부호화 블록 내의 예측 블록의 예측 정보로 이용할 수 있다.In the image decoding method, the DIMD mode derives final intra prediction based on an intra prediction mode derived from a neighboring block of the coding block, and uses the derived intra prediction mode as prediction information of the prediction block within the coding block. You can.
상기 영상 복호화 방법에 있어서, 상기 제1 예측 블록의 예측 샘플을 생성하는 단계는, 상기 제1 예측 블록의 주변 블록들 중 기 설정된 우선 순위에 따라 결정된 주변 블록의 화면 내 예측 모드를 상기 제1 예측 블록의 화면 내 예측 모드로 유도하여 상기 제1 예측 블록의 예측 샘플을 생성할 수 있다.In the image decoding method, the step of generating a prediction sample of the first prediction block includes applying an intra-prediction mode of a neighboring block determined according to a preset priority among neighboring blocks of the first prediction block to the first prediction block. A prediction sample of the first prediction block can be generated by inducing the intra-screen prediction mode of the block.
상기 영상 복호화 방법에 있어서, 상기 제1 예측 블록의 예측 샘플을 생성하는 단계는, 주변 블록 색인 정보에 기초하여 결정된 주변 블록의 화면 내 예측 모드를 상기 제1 예측 블록의 화면 내 예측 모드로 유도하여 상기 제1 예측 블록의 예측 블록의 예측 샘플을 생성할 수 있다.In the image decoding method, the step of generating a prediction sample of the first prediction block includes deriving the intra-prediction mode of the neighboring block determined based on neighboring block index information to the intra-prediction mode of the first prediction block. A prediction sample of the prediction block of the first prediction block may be generated.
상기 영상 복호화 방법에 있어서, 상기 현재 부호화 블록을 제1 예측 블록 및 제2 예측 블록으로 분할하는 단계는, 상기 현재 부호화 블록을 모서리 분할할 수 있다.In the video decoding method, the step of splitting the current coding block into a first prediction block and a second prediction block may involve corner splitting the current coding block.
상기 영상 복호화 방법에 있어서, 상기 제1 예측 블록 및 상기 제2 예측 블록이 상기 현재 부호화 블록 내에서 모서리 분할된 경우, 상기 제1 예측 블록의 모서리 경계에 인접한 화소들에는 대각선 방향 필터링이 적용될 수 있다.In the image decoding method, when the first prediction block and the second prediction block are corner divided within the current coding block, diagonal filtering may be applied to pixels adjacent to a corner boundary of the first prediction block. .
본 발명의 일 양상에 따른 영상 부호화 방법은, 현재 부호화 블록의 인트라 하이브리드 모드 정보를 부호화하는 단계 및 상기 인트라 하이브리드 모드 정보에 기초하여 상기 현재 부호화 블록 내의 적어도 하나의 예측 블록의 예측 샘플을 생성하는 단계를 포함하고, 상기 현재 부호화 블록이 인트라 하이브리드 모드인 경우, 상기 현재 부호화 블록 내의 적어도 하나의 예측 블록의 예측 샘플을 생성하는 단계는, 상기 현재 부호화 블록을 제1 예측 블록 및 제2 예측 블록으로 분할하는 단계, 상기 제1 예측 블록의 주변 블록으로부터 유도된 상기 제1 예측 블록의 화면 내 예측 모드를 이용하여 상기 제1 예측 블록의 예측 샘플을 생성하는 단계 및 상기 제2 예측 블록의 화면 내 예측 모드 혹은 DIMD(Decoder-side Intra Mode Derivation) 모드 정보에 기초하여 상기 제2 예측 블록의 화면 내 예측 모드를 결정하고, 상기 결정된 화면 내 예측 모드를 이용하여 상기 제2 예측 블록의 예측 샘플을 생성하는 단계를 포함할 수 있다.An image encoding method according to an aspect of the present invention includes encoding intra-hybrid mode information of a current coding block and generating a prediction sample of at least one prediction block in the current coding block based on the intra-hybrid mode information. Includes, when the current coding block is an intra hybrid mode, generating a prediction sample of at least one prediction block in the current coding block includes dividing the current coding block into a first prediction block and a second prediction block. generating a prediction sample of the first prediction block using an intra-prediction mode of the first prediction block derived from a neighboring block of the first prediction block, and an intra-prediction mode of the second prediction block. Or, determining an intra-prediction mode of the second prediction block based on DIMD (Decoder-side Intra Mode Derivation) mode information and generating a prediction sample of the second prediction block using the determined intra-prediction mode. may include.
상기 영상 부호화 방법에 있어서, 상기 제1 예측 블록의 예측 샘플을 생성하는 단계는, 상기 제1 예측 블록의 주변 블록들 중 기 설정된 우선 순위에 따라 결정된 주변 블록의 화면 내 예측 모드를 상기 제1 예측 블록의 화면 내 예측 모드로 유도하여 상기 제1 예측 블록의 예측 샘플을 생성할 수 있다.In the image encoding method, the step of generating a prediction sample of the first prediction block includes changing the intra-prediction mode of a neighboring block determined according to a preset priority among neighboring blocks of the first prediction block to the first prediction block. A prediction sample of the first prediction block can be generated by inducing the intra-screen prediction mode of the block.
상기 영상 부호화 방법에 있어서, 상기 제1 예측 블록의 예측 샘플을 생성하는 단계는, 주변 블록 색인 정보에 기초하여 결정된 주변 블록의 화면 내 예측 모드를 상기 제1 예측 블록의 화면 내 예측 모드로 유도하여 상기 제1 예측 블록의 예측 블록의 예측 샘플을 생성할 수 있다.In the video encoding method, the step of generating a prediction sample of the first prediction block includes deriving the intra-prediction mode of the neighboring block determined based on neighboring block index information to the intra-prediction mode of the first prediction block. A prediction sample of the prediction block of the first prediction block may be generated.
상기 영상 부호화 방법에 있어서, 상기 현재 부호화 블록을 제1 예측 블록 및 제2 예측 블록으로 분할하는 단계는, 상기 현재 부호화 블록을 모서리 분할할 수 있다.In the video encoding method, the step of dividing the current coding block into a first prediction block and a second prediction block may result in corner splitting the current coding block.
상기 영상 부호화 방법에 있어서, 상기 제1 예측 블록 및 상기 제2 예측 블록이 상기 현재 부호화 블록 내에서 모서리 분할된 경우, 상기 제1 예측 블록의 모서리 경계에 인접한 화소들에는 대각선 방향 필터링이 적용될 수 있다.In the image encoding method, when the first prediction block and the second prediction block are edge-sliced within the current coding block, diagonal filtering may be applied to pixels adjacent to a corner boundary of the first prediction block. .
본 발명의 일 양상에 따른 기록 매체는, 현재 부호화 블록의 인트라 하이브리드 모드 정보를 부호화하는 단계 및 상기 인트라 하이브리드 모드 정보에 기초하여 상기 현재 부호화 블록 내의 적어도 하나의 예측 블록의 예측 샘플을 생성하는 단계를 포함하고, 상기 현재 부호화 블록이 인트라 하이브리드 모드인 경우, 상기 현재 부호화 블록 내의 적어도 하나의 예측 블록의 예측 샘플을 생성하는 단계는, 상기 현재 부호화 블록을 제1 예측 블록 및 제2 예측 블록으로 분할하는 단계, 상기 제1 예측 블록의 주변 블록으로부터 유도된 상기 제1 예측 블록의 화면 내 예측 모드를 이용하여 상기 제1 예측 블록의 예측 샘플을 생성하는 단계 및 상기 제2 예측 블록의 화면 내 예측 모드 혹은 DIMD(Decoder-side Intra Mode Derivation) 모드 정보에 기초하여 상기 제2 예측 블록의 화면 내 예측 모드를 결정하고, 상기 결정된 화면 내 예측 모드를 이용하여 상기 제2 예측 블록의 예측 샘플을 생성하는 단계를 포함하는 영상 부호화 방법에 의해 생성된 비트스트림을 저장할 수 있다.A recording medium according to an aspect of the present invention includes the steps of encoding intra hybrid mode information of a current coding block and generating a prediction sample of at least one prediction block in the current coding block based on the intra hybrid mode information. Wherein, when the current coding block is in an intra hybrid mode, generating a prediction sample of at least one prediction block in the current coding block includes dividing the current coding block into a first prediction block and a second prediction block. A step of generating a prediction sample of the first prediction block using an intra-prediction mode of the first prediction block derived from a neighboring block of the first prediction block, and an intra-prediction mode of the second prediction block, or Determining an intra-prediction mode of the second prediction block based on Decoder-side Intra Mode Derivation (DIMD) mode information and generating a prediction sample of the second prediction block using the determined intra-prediction mode. A bitstream generated by a video encoding method including:
본 발명은 부호화 블록 내의 예측 블록의 위치 특성을 고려하여 화면 내 예측 모드를 결정함으로써 예측의 정확성을 향상시킬 수 있다.The present invention can improve prediction accuracy by determining the intra-screen prediction mode by considering the positional characteristics of the prediction block within the coding block.
본 발명은 부호화 블록 내의 예측 블록의 위치 특성을 고려하여 화면 내 예측 모드를 결정함으로써 압축 효율을 향상시킬 수 있다.The present invention can improve compression efficiency by determining the intra-screen prediction mode by considering the positional characteristics of the prediction block within the coding block.
본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects that can be obtained from the present disclosure are not limited to the effects mentioned above, and other effects not mentioned can be clearly understood by those skilled in the art from the description below. will be.
도 1은 본 발명의 일 실시 예에 따른 영상 부호화 장치를 나타낸 블록도이다.
도 2는 본 발명의 일 실시 예에 따른 화면 내 예측 모드를 설명하기 위한 도면이다.
도 3은 화면 간 예측 모드 중, 현재 예측 블록의 최적 예측 모드를 부호화하는 방법을 나타낸 흐름도이다.
도 4는 화면 내 예측 모드 중, MPM 후보를 설정하는 방법의 일 실시 예를 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 영상 복호화 장치를 나타낸 블록도이다.
도 6은 현재 예측 블록의 화면 내 예측 모드를 복호화하는 방법을 나타낸 흐름도이다.
도 7은 현재 부호화 블록을 분할하기 위한 제1 방법을 설명하기 위한 도면이다.
도 8 및 도 9는 현재 부호화 블록을 분할하기 위한 제2 방법을 설명하기 위한 도면이다.
도 10(도 10a, 도 10b, 도 10c) 및 도 11(도 11a, 도 11b, 도 11c)는 부호화 블록 내의 예측 블록들의 예측 정보를 주변 블록의 예측 정보에서 참조할 때, 참조 가능한 주변 블록을 예시한 도면이다.
도 12는 현재 부호화 블록의 예측 정보를 부호화하는 방법을 설명하기 위한 도면이다.
도 13은 영상 부호화 장치에서 인트라 하이브리드 모드 정보를 부호화하는 방법을 설명하기 위한 흐름도이다.
도 14는 영상 부호화 장치에서 인트라 하이브리드 모드인 부호화 블록 내의 첫 번째 예측 블록의 예측 정보를 결정하는 방법을 설명한 흐름도이다.
도 15는 현재 부호화 블록의 예측 정보를 복호화하는 방법을 설명하기 위한 도면이다.
도 16은 경계 필터링 방법을 설명하기 위한 도면이다.
도 17은 본 발명의 일 실시 예에 따른 영상 복호화 방법을 설명하기 위한 흐름도이다.
도 18은 본 발명의 일 실시 예에 따른 영상 복호화 방법을 설명하기 위한 흐름도이다.
도 19는 본 발명의 일 실시 예에 따른 영상 부호화 방법을 설명하기 위한 흐름도이다.
도 20은 DIMD 모드에 따른 인트라 예측 모드를 유도하는 방법을 설명하기 위한 도면이다.Figure 1 is a block diagram showing a video encoding device according to an embodiment of the present invention.
Figure 2 is a diagram for explaining an intra-screen prediction mode according to an embodiment of the present invention.
Figure 3 is a flowchart showing a method of encoding the optimal prediction mode of the current prediction block among inter-screen prediction modes.
Figure 4 is a diagram for explaining an embodiment of a method for setting an MPM candidate in intra-prediction mode.
Figure 5 is a block diagram showing an image decoding device according to an embodiment of the present invention.
Figure 6 is a flowchart showing a method of decoding the intra-prediction mode of the current prediction block.
FIG. 7 is a diagram illustrating a first method for splitting a current coding block.
FIGS. 8 and 9 are diagrams for explaining a second method for splitting a current coding block.
10 (FIGS. 10A, 10B, 10C) and 11 (FIGS. 11A, 11B, 11C) show referenceable neighboring blocks when the prediction information of prediction blocks within a coding block is referred to in the prediction information of neighboring blocks. This is an illustrative drawing.
FIG. 12 is a diagram for explaining a method of encoding prediction information of a current encoding block.
FIG. 13 is a flowchart illustrating a method of encoding intra hybrid mode information in a video encoding device.
FIG. 14 is a flowchart illustrating a method of determining prediction information of the first prediction block within an intra-hybrid mode coding block in a video encoding device.
Figure 15 is a diagram for explaining a method of decoding prediction information of a current coding block.
Figure 16 is a diagram for explaining a boundary filtering method.
Figure 17 is a flowchart for explaining an image decoding method according to an embodiment of the present invention.
Figure 18 is a flowchart for explaining an image decoding method according to an embodiment of the present invention.
Figure 19 is a flowchart for explaining an image encoding method according to an embodiment of the present invention.
Figure 20 is a diagram to explain a method of deriving an intra prediction mode according to DIMD mode.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.Since the present invention can make various changes and have various embodiments, specific embodiments will be illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present invention to specific embodiments, and should be understood to include all changes, equivalents, and substitutes included in the spirit and technical scope of the present invention. While describing each drawing, similar reference numerals are used for similar components.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.Terms such as first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another. For example, a first component may be named a second component without departing from the scope of the present invention, and similarly, the second component may also be named a first component. The term and/or includes any of a plurality of related stated items or a combination of a plurality of related stated items.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다거나 "직접 접속되어"있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is said to be "connected" or "connected" to another component, it is understood that it may be directly connected or connected to the other component, but that other components may exist in between. It should be. On the other hand, when it is mentioned that a component is “directly connected” or “directly connected” to another component, it should be understood that there are no other components in between.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in this application are only used to describe specific embodiments and are not intended to limit the invention. Singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, terms such as “comprise” or “have” are intended to designate the presence of features, numbers, steps, operations, components, parts, or combinations thereof described in the specification, but are not intended to indicate the presence of one or more other features. It should be understood that this does not exclude in advance the possibility of the existence or addition of elements, numbers, steps, operations, components, parts, or combinations thereof.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시 예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the attached drawings. Hereinafter, the same reference numerals will be used for the same components in the drawings, and duplicate descriptions of the same components will be omitted.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시 예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the attached drawings. Hereinafter, the same reference numerals will be used for the same components in the drawings, and duplicate descriptions of the same components will be omitted.
도 1은 본 발명의 일 실시 예에 따른 영상 부호화 장치(100)의 구성을 나타낸 블록도이다.Figure 1 is a block diagram showing the configuration of an image encoding device 100 according to an embodiment of the present invention.
영상 부호화 장치(100)는 영상을 부호화하는 장치로써 블록 분할부(101), 예측부(102), 변환부(103), 양자화부(104), 엔트로피 부호화부(105), 역 양자화부(106), 역 변환부(107), 가산부(108), 인루프 필터부(109), 메모리부(110) 및 감산부(111)를 포함할 수 있다.The image encoding device 100 is a device that encodes an image and includes a block division unit 101, a prediction unit 102, a transform unit 103, a quantization unit 104, an entropy encoding unit 105, and an inverse quantization unit 106. ), an inverse transform unit 107, an adder 108, an in-loop filter unit 109, a memory unit 110, and a subtractor 111.
블록 분할부(101) 는 최대 크기의 부호화 하고자 하는 블록(이하, 최대 부호화 블록이라 칭함)으로부터 최소 크기의 부호화 하고자 하는 블록(이하, 최소 부호화 블록이라 칭함)까지 분할을 수행할 수 있다. 상기 분할은 쿼드-트리 분할(이하, QT(Quad-Tree) 분할이라 칭함) 또는 듀얼-트리 분할(이하, DT(Dual-Tree) 분할이라 칭함) 중 적어도 하나에 기반하여 수행될 수 있다. QT 분할이란 상위 블록을 너비와 높이가 상위 블록의 절반인 하위 블록으로 사분할하는 방식이다. DT 분할이란 상위 블록을 너비 또는 높이 중 어느 하나가 상위 블록의 절반인 하위 블록으로 이분할하는 방식이다. 여기서, DT 분할은 바이너리 트리(Biniary Tree) 분할으로 불릴 수 있다.The block division unit 101 may perform division from the block to be encoded of the maximum size (hereinafter referred to as the maximum coding block) to the block to be encoded of the minimum size (hereinafter referred to as the minimum coding block). The partitioning may be performed based on at least one of quad-tree partitioning (hereinafter referred to as Quad-Tree (QT) partitioning) or dual-tree partitioning (hereinafter referred to as Dual-Tree (DT) partitioning). QT division is a method of dividing a parent block into four child blocks whose width and height are half that of the parent block. DT splitting is a method of dividing a parent block into two child blocks whose width or height is half that of the parent block. Here, DT division may be called binary tree division.
블록 분할부(101)는 입력된 영상을 적어도 하나의 블록으로 분할할 수 있다. 이 때, 입력된 영상은 픽처, 슬라이스, 타일, 세그먼트 등 다양한 형태와 크기를 가질 수 있다. 블록은 부호화 단위(CU), 예측 단위(PU) 또는 변환 단위(TU)를 의미할 수 있다. The block division unit 101 may divide the input image into at least one block. At this time, the input image may have various shapes and sizes, such as pictures, slices, tiles, and segments. A block may refer to a coding unit (CU), prediction unit (PU), or transformation unit (TU).
이하, 본 발명의 실시예 에서는 부호화 단위는 부호화를 수행하는 단위의 의미로 사용할 수도 있고, 복호화를 수행하는 단위의 의미로 사용할 수도 있다. 그리고, 부호화 단위는 부호화 블록을 의미할 수 있다.Hereinafter, in the embodiments of the present invention, the coding unit may be used to mean a unit that performs encoding, or may be used to mean a unit that performs decoding. And, a coding unit may mean a coding block.
예측부(102)는 화면 간 예측을 수행하는 화면 간 예측부와 화면 내 예측을 수행하는 화면 내 예측부를 포함할 수 있다. 예측부(102)는 현재 원본 블록에서 현재 예측 하고자 하는 블록(이하, 예측 블록이라 함)의 주변 화소나 이전에 이미 복호화가 끝난 참조 픽쳐를 이용하여 예측 블록을 생성할 수 있다. 여기서, 예측 블록은 부호화 블록 내에서 적어도 하나의 예측 블록들이 생성될 수 있다. 부호화 블록 내 예측 블록이 1개일 경우, 예측 블록은 부호화 블록과 동일한 형태일 수 있다. 한편, 예측부(102)에서 예측 블록을 생성한다는 것은 예측 블록의 예측 샘플을 생성한다는 것과 동일한 의미일 수 있다.The prediction unit 102 may include an inter-screen prediction unit that performs inter-screen prediction and an intra-screen prediction unit that performs intra-screen prediction. The prediction unit 102 may generate a prediction block using surrounding pixels of the block to be currently predicted (hereinafter referred to as prediction block) in the current original block or a previously decoded reference picture. Here, the prediction block may be generated from at least one prediction block within a coding block. When there is one prediction block in a coding block, the prediction block may have the same form as the coding block. Meanwhile, generating a prediction block in the prediction unit 102 may have the same meaning as generating a prediction sample of the prediction block.
동영상 신호의 예측 기술에는 크게 화면 내 예측과 화면 간 예측으로 구성 되어 있는데, 화면 내 예측은 현재 블록의 주변 화소들을 이용하여 예측 블록을 생성하는 방식이고, 화면 간 예측은 이전에 이미 부호화 및 복호화가 끝난 참조 픽쳐에서 현재 블록과 가장 유사한 블록을 찾아서 예측 블록을 생성하는 방식이다. 여기서, 화면 간 예측을 인터 예측, 화면 내 예측을 인트라 예측으로 불릴 수 있다. Prediction technology for video signals largely consists of intra-screen prediction and inter-screen prediction. Intra-screen prediction is a method of generating a prediction block using surrounding pixels of the current block, and inter-screen prediction is a method that has already been encoded and decoded before. This is a method of generating a prediction block by finding the block most similar to the current block in the finished reference picture. Here, prediction between screens may be called inter prediction, and prediction within a screen may be called intra prediction.
예측부(102)는 현재 원본 블록에서 예측 블록을 뺀 잔차 블록을 율-왜곡 최적화(RDO: Rate-Distortion Optimization) 등 다양한 기법을 이용하여 예측 블록의 최적 예측 모드를 결정할 수 있다. RDO 비용 계산식은 아래 수학식 1과 같다.The prediction unit 102 may determine the optimal prediction mode of the prediction block by using various techniques such as rate-distortion optimization (RDO) on the residual block obtained by subtracting the prediction block from the current original block. The RDO cost calculation formula is as shown in Equation 1 below.
여기서, D는 양자화에 의한 열화, R은 압축 스트림의 레이트, J는 RD 비용이고, Φ는 부호화 모드, λ는 라그랑지안 승수(Lagranginan multiplier)로 에러의 양과 비트량 간의 단위를 일치시키기 위한 스케일 보정용 계수일 수 있다. 부호화 과정에서 최적의 부호화 모드로 선택되기 위해서는 해당 모드를 적용했을 때의 J 즉, RD-비용값이 다른 모드를 적용했을 때보다 작아야 하는데, RD-비용값을 구하는 식에는 비트율과 에러를 동시에 고려하여 계산할 수 있다.Here, D is deterioration due to quantization, R is the rate of the compressed stream, J is the RD cost, Φ is the encoding mode, and λ is the Lagrangian multiplier, a scale correction coefficient to match the unit between the amount of error and the amount of bits. It can be. In order to be selected as the optimal encoding mode in the encoding process, the J when the mode is applied, that is, the RD-cost value, must be smaller than when other modes are applied. The bit rate and error are considered simultaneously in the equation for calculating the RD-cost value. It can be calculated by:
생성된 예측 블록과 원본 블록 사이의 잔차값(잔차 블록)은 변환부(103)로 입력될 수 있다. 또한, 예측을 위해 사용한 예측 모드 정보, 모션 벡터 정보 등은 잔차값과 함께 엔트로피 부호화부(105)에서 부호화되어 복호화기에 전달될 수 있다. 특정한 부호화 모드를 사용할 경우, 예측부(102)를 통해 예측 블록을 생성하지 않고, 원본 블록을 그대로 부호화하여 복호화부에 전송하는 것도 가능하다.The residual value (residual block) between the generated prediction block and the original block may be input to the conversion unit 103. Additionally, prediction mode information, motion vector information, etc. used for prediction may be encoded in the entropy encoder 105 together with the residual value and transmitted to the decoder. When using a specific encoding mode, it is possible to encode the original block as is and transmit it to the decoder without generating a prediction block through the prediction unit 102.
화면 내 예측부는 현재 픽쳐 내의 화소 정보인 현재 블록 주변의 참조 픽셀 정보를 기초로 예측 블록을 생성할 수 있다. 화면 내 예측이 수행될 현재 블록의 주변 블록의 코딩 모드가 화면 간 예측인 경우, 화면 간 예측이 적용된 주변 블록에 포함되는 참조 픽셀을, 화면 내 예측이 적용된 주변의 다른 블록 내의 참조 픽셀로 대체될 수 있다. 즉, 참조 픽셀이 가용하지 않는 경우, 가용하지 않은 참조 픽셀 정보를, 가용한 참조 픽셀 중 적어도 하나의 참조 픽셀로 대체하여 사용할 수 있다.The intra-screen prediction unit may generate a prediction block based on reference pixel information around the current block, which is pixel information in the current picture. If the coding mode of the neighboring block of the current block to which intra-screen prediction is to be performed is inter-screen prediction, the reference pixel included in the neighboring block to which inter-screen prediction has been applied will be replaced with a reference pixel in another neighboring block to which intra-screen prediction has been applied. You can. That is, when the reference pixel is not available, the unavailable reference pixel information can be used by replacing at least one reference pixel among the available reference pixels.
화면 내 예측에서 예측 모드는 참조 픽셀 정보를 예측 방향에 따라 사용하는 방향성 예측 모드와 예측을 수행시 방향성 정보를 사용하지 않는 비방향성 모드를 가질 수 있다. 휘도 정보를 예측하기 위한 모드와 색차 정보를 예측하기 위한 모드가 상이할 수 있고, 색차 정보를 예측하기 위해 휘도 정보를 예측하기 위해 사용된 화면 내 예측 모드 정보 또는 예측된 휘도 신호 정보를 활용할 수 있다.In intra-screen prediction, the prediction mode can include a directional prediction mode that uses reference pixel information according to the prediction direction and a non-directional mode that does not use directional information when performing prediction. The mode for predicting luminance information and the mode for predicting chrominance information may be different, and the prediction mode information or predicted luminance signal information within the screen used to predict luminance information may be used to predict chrominance information. .
한편, 화면 내 예측에는 Planar 모드, DC 모드, Angular 예측 모드 N개를 포함한 총 (N+2)개의 예측 모드가 존재할 수 있다. Meanwhile, in intra-screen prediction, there may be a total of (N+2) prediction modes, including N Planar mode, DC mode, and N Angular prediction modes.
도 2의 201은 DC 모드의 예측 블록 생성 방법을 나타낸 것이다.201 in FIG. 2 shows a method of generating a prediction block in DC mode.
도 2의 201를 참고하면, R1~R4 영역 내 모든 예측 화소에 a~s 참조 화소의 평균값을 적용시킨 후, R1은 인접 참조 화소 2개(a, j), R2, R3 영역은 인접 참조 화소 1개(b~h, k~q)와의 FIR 필터링을 통해 최종 예측 블록을 생성한다. Referring to 201 in FIG. 2, after applying the average value of reference pixels a to s to all prediction pixels in areas R1 to R4, R1 is two adjacent reference pixels (a, j), and areas R2 and R3 are adjacent reference pixels. The final prediction block is generated through FIR filtering with one block (b~h, k~q).
도 2의 202는 Planar 모드의 예측 블록 생성 방법을 나타낸 것이다. 202 in FIG. 2 shows a method of generating a prediction block in Planar mode.
도 2의 202를 참고하면, Planar 모드는 예측 화소 위치 별로 상단/좌측에 위치의 참조 화소와 하단/우측에 복사된 참조 화소와의 선형 보간 방식을 이용하여 최종 예측 블록을 생성한다. Referring to 202 in FIG. 2, Planar mode generates the final prediction block using a linear interpolation method between the reference pixel located at the top/left and the reference pixel copied to the bottom/right for each prediction pixel position.
도 2의 203은 Angular 예측 모드 N개의 예측 방향을 나타내낸 것이다.203 in FIG. 2 shows the prediction directions of N Angular prediction modes.
도 2의 203을 참고하면, Angular 예측 모드는 예측 방향 별로 인접한 참조 화소의 값을 예측 블록에 적용하여 최종 예측 블록을 생성한다. Referring to 203 in FIG. 2, the Angular prediction mode generates the final prediction block by applying the values of adjacent reference pixels in each prediction direction to the prediction block.
도 3은 현재 예측 블록의 최적 예측 모드를 부호화하는 방법을 나타낸 흐름도이다. Figure 3 is a flowchart showing a method of encoding the optimal prediction mode of the current prediction block.
도 3을 참고하면, S301 단계에서는 MPM(Most Probable Mode) 후보를 설정할 수 있다. 여기서, MPM 후보를 설정하는 방법에 대해서는 도 4를 참고하여 후술하도록 한다.Referring to FIG. 3, in step S301, a Most Probable Mode (MPM) candidate can be set. Here, the method of setting the MPM candidate will be described later with reference to FIG. 4.
그리고, S302 단계에서는 MPM을 이용하여 최적 화면 내 예측 모드를 부호화할 것인지 여부를 지시하는 정보를 부호화 할 수 있다.And, in step S302, information indicating whether to encode the optimal intra-prediction mode can be encoded using MPM.
그리고, S303 단계에서는 MPM 동작 정보 여부를 판단할 수 있다. 해당 정보가 참인 경우, S304 단계에서 최적 화면 내 예측 모드가 어떤 MPM 후보와 동일한지를 알려주는 색인 정보를 부호화할 수 있다. 반대로, 해당 정보가 거짓인 경우, S305 단계에서 MPM 후보인 화면 내 예측 모드를 제외한 나머지 화면 내 예측 모드 중, 어떤 예측 모드가 최적인지를 지시하는 정보를 부호화할 수 있다.And, in step S303, it is possible to determine whether MPM operation information exists. If the information is true, index information indicating which MPM candidate the optimal intra-screen prediction mode is identical to can be encoded in step S304. Conversely, if the information is false, information indicating which prediction mode is optimal among the remaining intra-prediction modes excluding the intra-prediction mode that is an MPM candidate can be encoded in step S305.
도 4는 MPM 후보를 설정하는 방법의 일 실시 예를 설명하기 위한 도면이다. Figure 4 is a diagram for explaining an embodiment of a method for setting an MPM candidate.
도 4에서 L은 현재 예측 블록 좌측에 위치한 주변 블록의 화면 내 예측 모드 정보이고, A는 상단에 위치한 주변 블록의 화면 내 예측 모드 정보를 나타낸다.In Figure 4, L represents the intra-prediction mode information of the neighboring block located to the left of the current prediction block, and A represents the intra-prediction mode information of the neighboring block located at the top.
도 4를 참고하면, 명시된 각 조건에 따라서 MPM 후보 3개를 최종 결정할 수 있다. Referring to Figure 4, three MPM candidates can be finally determined according to each specified condition.
한편, MPM 후보의 개수는 P(P>0, P는 정수)개로 결정 될 수 있으며, 후보를 결정하는 방법 또한 다양할 수 있다.Meanwhile, the number of MPM candidates can be determined as P (P>0, P is an integer), and methods for determining candidates can also vary.
다시 도 1의 예측부(102)의 설명으로 돌아와서, 예측부(102)에 포함된 화면 간 예측부는 현재 픽쳐의 이전 픽쳐 또는 이후 픽쳐 중 적어도 하나의 픽쳐의 정보를 기초로 예측 블록을 생성할 수 있고, 경우에 따라서는 현재 픽쳐 내의 부호화가 완료된 일부 영역의 정보를 기초로 예측 블록을 생성할 수 있다. 화면 간 예측부는 참조 픽쳐 보간부, 모션 예측부, 움직임 보상부를 포함할 수 있다. Returning to the description of the prediction unit 102 of FIG. 1, the inter-screen prediction unit included in the prediction unit 102 may generate a prediction block based on information on at least one picture among the previous picture or the next picture of the current picture. And, in some cases, a prediction block can be generated based on information on a part of the encoded area in the current picture. The inter-screen prediction unit may include a reference picture interpolation unit, a motion prediction unit, and a motion compensation unit.
한편, 화면 간 예측에는 AMVP 모드, Merge 모드 및 Skip 모드의 예측 모드가 존재할 수 있다. Meanwhile, in inter-screen prediction, there may be prediction modes of AMVP mode, Merge mode, and Skip mode.
한편, 예측부(102)에서는 부호화 블록의 예측 방식을 지시하는 코딩 모드 정보를 부호화 할 수 있다. 상술한 바와 같이 부호화 블록은 적어도 하나의 예측 블록으로 분할될 수 있으며, 하나의 부호화 블록에서 분할된 예측 블록은 하나의 예측 방식이 적용될 수 있다. 그러나, 예측 블록 각각의 예측 모드는 상이할 수 있다. Meanwhile, the prediction unit 102 can encode coding mode information indicating the prediction method of the encoded block. As described above, a coding block may be divided into at least one prediction block, and one prediction method may be applied to a prediction block divided from one coding block. However, the prediction mode of each prediction block may be different.
일 예로, 현재 부호화 블록이 화면 내 예측으로 부호화된 경우, 현재 부호화 블록 내의 제1 예측 블록은 DC 모드, 제2 예측 블록은 Planar 모드에 기초하여 각각 예측 샘플을 생성할 수 있다.For example, when the current coding block is encoded by intra-prediction, the first prediction block in the current coding block may generate prediction samples based on DC mode and the second prediction block may generate prediction samples based on Planar mode.
즉, 코딩 모드 정보는 부호화 블록 단위로 부호화 될 수 있으며, 예측 모드 정보는 예측 블록 단위로 부호화 될 수 있다.That is, coding mode information can be encoded in units of coding blocks, and prediction mode information can be encoded in units of prediction blocks.
다시 도 1의 설명으로 돌아와서, 변환부(103)는 원본 블록과 예측 블록의 차이인 잔차 블록을 변환하여 변환 블록을 생성할 수 있다. 여기서, 변환 블록은 변환 및 양자화 과정을 위해 사용되는 가장 작은 단위일 수 있다.Returning to the description of FIG. 1, the transform unit 103 may generate a transform block by transforming the residual block, which is the difference between the original block and the prediction block. Here, the transform block may be the smallest unit used for transform and quantization processes.
변환부(103)는 잔차 신호를 주파수 영역으로 변환하여 변환 계수를 가지는 변환 블록을 생성할 수 있다. 여기서, 잔차 신호를 주파수 영역으로 변환하는 방법으로는 이산 코사인 변환(DCT: Discrete Cosine Transform)기반 변환, 이산 사인 변환(DST: Discrete Sine Transform), KLT(Karhunen Loeve Transform) 등 다양한 변환 기법을 이용할 수 있으며, 이를 이용하여 잔차 신호가 주파수 영역으로 변환되어 변환 계수가 생성될 수 있다. 변환 기법을 사용하기 위해 기저벡터(basis vector)를 이용하여 행렬 연산을 하게 되는데 예측 블록이 어떤 예측 모드로 부호화 되었는지에 따라서 행렬 연산 시 변환 기법들을 다양하게 조합하여 사용할 수도 있다. 예를 들어, 화면 내 예측 시 예측 모드에 따라 가로 방향으로는 이산 코사인 변환을 사용하고 세로 방향으로는 이산 사인 변환을 사용 할 수도 있다.The transform unit 103 can convert the residual signal into the frequency domain and generate a transform block with transform coefficients. Here, various transformation techniques such as Discrete Cosine Transform (DCT)-based transformation, Discrete Sine Transform (DST), and Karhunen Loeve Transform (KLT) can be used to transform the residual signal into the frequency domain. And using this, the residual signal can be converted to the frequency domain and a conversion coefficient can be generated. To use a transformation technique, matrix calculation is performed using a basis vector. Depending on which prediction mode the prediction block is encoded in, various combinations of transformation techniques can be used during matrix calculation. For example, during intra-screen prediction, depending on the prediction mode, discrete cosine transformation may be used in the horizontal direction and discrete sine transformation may be used in the vertical direction.
한편, 변환 방법은 잔차 블록을 생성하기 위해 사용된 예측 블록의 인트라 예측 모드에 기반하여 결정될 수 있다. 예를 들어, 인트라 예측 모드에 따라 가로 방향으로는 DCT를 사용하고, 세로 방향으로는 DST를 사용할 수도 있다.Meanwhile, the transformation method may be determined based on the intra prediction mode of the prediction block used to generate the residual block. For example, depending on the intra prediction mode, DCT may be used in the horizontal direction and DST may be used in the vertical direction.
변환 블록은 부호화 블록 단위에서 QT(Quad Tree) 방식 혹은 BT(Binary Tree) 방식으로 분할되어 최적 변환 블록 분할 형태가 결정되어 변환 블록 분할 정보가 영상 복호화 장치로 전송될 수 있다. 이러한 변환 블록 분할 방법을 CU단위 RT(Residual Tree) 구조라고 칭할 수 있다. 이는, 예측 블록 단위로 변환이 수행될 수도 수행되지 않을 수도 있는데, 변환 블록이 예측 블록의 경계를 무시하여 결정될 수 있음을 의미한다.The transform block is divided in the coding block unit using the QT (Quad Tree) method or the BT (Binary Tree) method, the optimal transform block division type is determined, and the transform block division information can be transmitted to the video decoding device. This conversion block division method can be referred to as a CU-unit RT (Residual Tree) structure. This means that transformation may or may not be performed on a prediction block basis, and the transformation block can be determined by ignoring the boundary of the prediction block.
또한, 변환 블록은 예측 블록 단위에서 QT 방식 혹은 BT 분할 방식으로 분할되어 변환 블록 분할 형태가 결정되고, 변환 블록 단위로 변환 블록 분할 정보가 영상 복호화 장치로 전송될 수 있다. 이러한 변환 블록 분할 방법을 PU단위 RT 구조라고 칭할 수 있다. 이는, 변환 블록이 예측 블록 경계를 넘어선 분할 형태로 생성될 수 없는데, 변환 블록이 예측 블록의 경계를 넘어서 결정될 수 없음을 의미한다. In addition, the transform block is divided in the prediction block unit using the QT method or the BT split method to determine the transform block division type, and the transform block division information can be transmitted to the video decoding device in each transform block unit. This transform block division method can be referred to as a PU unit RT structure. This means that the transform block cannot be generated in a split form beyond the prediction block boundary, and the transform block cannot be determined beyond the boundary of the prediction block.
기 전술한 CU단위 RT 구조에서는 변환 블록 분할 정보를 전송하지 않고, 부호화 블록 전체를 변환 블록으로 결정하여 변환을 수행할 수도 있다. 마찬가지의 방법으로 PU단위 RT 구조에서 동일하게 적용될 수 있다.In the above-described CU unit RT structure, transformation may be performed by determining the entire coding block as a transform block without transmitting transform block partition information. The same method can be applied to the PU unit RT structure.
양자화부(104)는 변환 블록을 양자화 하여 양자화된 변환 블록을 생성할 수 있다. 즉, 양자화부(104)는 변환부(103)로부터 생성되는 변환 블록의 변환 계수들을 양자화 하여 양자화된 변환 계수를 가지는 양자화된 변환 블록(Quantized Transform Coefficient)을 생성할 수 있다. 양자화 방법으로는 데드존 균일 경계 양자화(DZUTQ: Dead Zone Uniform Threshold Quantization) 또는 양자화 가중치 행렬 (Quantization Weighted Matrix) 등이 이용될 수 있지만, 이를 개량한 양자화 등 다양한 양자화 방법이 이용될 수 있다.The quantization unit 104 may quantize the transform block to generate a quantized transform block. That is, the quantization unit 104 can quantize the transform coefficients of the transform block generated by the transform unit 103 to generate a quantized transform block (Quantized Transform Coefficient) having quantized transform coefficients. Dead zone uniform threshold quantization (DZUTQ) or quantization weighted matrix can be used as a quantization method, but various quantization methods, such as improved quantization, can be used.
한편, 이상에서는 영상 부호화 장치(100)가 변환부(103) 및 양자화부(104)를 모두 포함하는 것을 도시하고 설명 했지만, 변환부(103) 및 양자화부(104)는 선택적으로 포함될 수 있다. 즉, 영상 부호화 장치(100)는 잔차 블록을 변환하여 변환 블록을 생성하고 양자화 과정은 수행하지 않을 수 있으며, 잔차 블록을 주파수 계수로 변환하지 않고 양자화 과정만을 수행할 수 있을 뿐만 아니라, 심지어는 변환과 양자화 과정을 모두 수행하지 않을 수도 있다.Meanwhile, in the above, the image encoding device 100 is shown and described as including both the transform unit 103 and the quantization unit 104, but the transform unit 103 and the quantization unit 104 may be optionally included. In other words, the image encoding device 100 may generate a transform block by transforming the residual block and not perform a quantization process. Not only can it perform only the quantization process without converting the residual block into a frequency coefficient, but it can even perform transformation. and quantization processes may not all be performed.
영상 부호화 장치(100)에서 변환부(103)와 양자화부(104) 중 일부 과정이 수행되지 않거나, 모든 과정이 수행 되지 않더라도 엔트로피 부호화부(105)의 입력으로 들어가는 블록을 통상적으로 '양자화된 변환 블록'이라 일컫는다. In the image encoding device 100, even if some or all of the processes of the transform unit 103 and the quantization unit 104 are not performed, the block input to the entropy encoder 105 is typically referred to as 'quantized transform.' It is called a ‘block’.
엔트로피 부호화부(105)는 양자화된 변환 블록을 부호화하여 비트스트림을 출력할 수 있다. 즉, 엔트로피 부호화부(105)는 양자화부(104)로부터 출력되는 양자화된 변환 블록의 계수들을 엔트로피 부호화(Entropy Encoding)의 다양한 부호화 기법을 이용하여 부호화하고, 후술하는 영상 복호화 장치에서 해당 블록을 복호화 하는데 필요한 부가적인 정보들(예를 들면, 예측 모드에 대한 정보, 양자화 계수 등)을 포함하는 비트스트림을 생성하고 출력할 수 있다.The entropy encoding unit 105 may encode the quantized transform block and output a bitstream. That is, the entropy encoding unit 105 encodes the coefficients of the quantized transform block output from the quantization unit 104 using various encoding techniques of entropy encoding, and decodes the corresponding block in an image decoding device to be described later. A bitstream containing additional information (e.g., information about prediction mode, quantization coefficient, etc.) required for processing can be generated and output.
엔트로피 부호화는 예를 들어, 지수 골롬(Exponential Golomb), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 다양한 부호화 방법을 사용할 수 있다.Entropy coding can use various coding methods, such as Exponential Golomb, Context-Adaptive Variable Length Coding (CAVLC), and Context-Adaptive Binary Arithmetic Coding (CABAC).
역 양자화부(106)는 양자화된 변환 블록에 대하여 양자화 시에 사용한 양자화 기법을 역으로 수행하여 역 양자화 변환 블록을 복원할 수 있다. The inverse quantization unit 106 may restore the inverse quantization transform block by inversely performing the quantization technique used when quantizing the quantized transform block.
역 변환부(107)는 변환 시에 사용한 방법과 동일한 방법을 이용하여 역 양자화 변환 블록을 역 변환하여 잔차 블록을 복원하는데, 변환부(104)에서 이용한 변환 기법을 역으로 수행하여 역 변환할 수 있다.The inverse transform unit 107 restores the residual block by inversely transforming the inverse quantization transform block using the same method as the method used during transformation. Inverse transformation can be performed by reversing the transformation technique used in the transform unit 104. there is.
한편, 이상에서는 역 양자화부(106)와 역 변환부(107)는 양자화부(104)와 변환부(103)에서 사용한 양자화 방식과 변환 방식을 역으로 사용하여 역 양자화 및 역 변환할 수 있다. 또한, 변환부(103)와 양자화부(104)에서 양자화만을 수행하고 변환을 수행하지 않은 경우에는 역 양자화만을 수행하고 역 변환을 수행하지 않을 수 있다. 만약, 변환 및 양자화를 모두 수행하지 않은 경우, 역 양자화부(106)와 역 변환부(107)도 역 변환 및 역 양자화를 모두 수행하지 않거나 영상 부호화 장치(100)에 포함되지 않고 생략 될 수 있다.Meanwhile, in the above, the inverse quantization unit 106 and the inverse transformation unit 107 can perform inverse quantization and inverse transformation by using the quantization method and transformation method used in the quantization unit 104 and the transformation unit 103 inversely. Additionally, when the transform unit 103 and the quantization unit 104 perform only quantization and do not perform transformation, only inverse quantization may be performed and no inverse transformation may be performed. If neither the transformation nor the quantization are performed, the inverse quantization unit 106 and the inverse transformation unit 107 may not perform both the inverse transformation and the inverse quantization, or may not be included in the image encoding device 100 and may be omitted. .
가산부(108)는 역 변환부(107)에서 생성된 잔차 신호와, 예측을 통하여 생성된 예측 블록을 가산하여 현재 블록을 복원할 수 있다.The adder 108 can restore the current block by adding the residual signal generated by the inverse transform unit 107 and the prediction block generated through prediction.
인루프 필터부(109)는 현재 픽쳐 내 모든 블록들이 복원된 이후, 픽쳐 전체에 걸쳐서 추가적으로 필터링 해주는 과정으로 디블로킹 필터링, SAO(Sample Adaptive Offset) 및 ALF(Adaptive Loop Filter) 중 적어도 하나를 포함할 수 있다.The in-loop filter unit 109 is a process of additionally filtering the entire picture after all blocks in the current picture are restored, and may include at least one of deblocking filtering, Sample Adaptive Offset (SAO), and Adaptive Loop Filter (ALF). You can.
디블록킹 필터는 복원된 픽쳐에서 블록간의 경계로 인해 생긴 블록 왜곡을 제거할 수 있다. 디블록킹을 수행할지 여부를 판단하기 위해 블록에 포함된 몇 개의 열 또는 행에 포함된 픽셀을 기초로 현재 블록에 디블록킹 필터 적용할지 여부를 판단할 수 있다. 블록에 디블록킹 필터를 적용하는 경우 필요한 디블록킹 필터링 강도에 따라 강한 필터(Strong Filter) 또는 약한 필터(Weak Filter)를 적용할 수 있다. 또한 디블록킹 필터를 적용함에 있어 수직 필터링 및 수평 필터링 수행시 수평 방향 필터링 및 수직 방향 필터링이 병행 처리되도록 할 수 있다.The deblocking filter can remove block distortion caused by boundaries between blocks in the restored picture. To determine whether to perform deblocking, it is possible to determine whether to apply a deblocking filter to the current block based on the pixels included in several columns or rows included in the block. When applying a deblocking filter to a block, a strong filter or a weak filter can be applied depending on the required deblocking filtering strength. Additionally, when applying a deblocking filter, horizontal filtering and vertical filtering can be processed in parallel when vertical filtering and horizontal filtering are performed.
SAO(Sample Adaptive Offset)란 복원 화소에 특정 값을 감산하거나 가산함으로써, 복원 영상과 원본 영상간 차이를 최소화시키는 작업을 말한다. SAO (Sample Adaptive Offset) refers to the process of minimizing the difference between the restored image and the original image by subtracting or adding a specific value to the restored pixel.
ALF(Adaptive Loop Filtering)는 필터링한 복원 영상과 원래의 영상을 비교한 값을 기초로 수행될 수 있다. 영상에 포함된 픽셀을 소정의 그룹으로 나눈 후 해당 그룹에 적용될 하나의 필터를 결정하여 그룹마다 차별적으로 필터링을 수행할 수 있다. ALF를 적용할지 여부에 관련된 정보는 휘도 신호는 부호화 단위(Coding Unit, CU) 별로 전송될 수 있고, 각각의 블록에 따라 적용될 ALF 필터의 모양 및 필터 계수는 달라질 수 있다. 또한, 적용 대상 블록의 특성에 상관없이 동일한 형태(고정된 형태)의 ALF 필터가 적용될 수도 있다. Adaptive Loop Filtering (ALF) can be performed based on a comparison between the filtered restored image and the original image. After dividing the pixels included in the image into predetermined groups, filtering can be performed differentially for each group by determining one filter to be applied to that group. Information related to whether to apply ALF may be transmitted for each coding unit (CU), and the shape and filter coefficients of the ALF filter to be applied may vary for each block. Additionally, an ALF filter of the same type (fixed type) may be applied regardless of the characteristics of the block to which it is applied.
메모리(110)는 역 변환부(107)에서 생성된 잔차 신호와 예측을 통하여 생성된 예측 블록을 가산한 후, 인루프 필터부(109)에서 추가적인 필터링을 거친 복원된 현재 블록을 저장하며, 다음 블록 또는 다음 사진 등을 예측하는데 활용될 수 있다.The memory 110 adds the residual signal generated in the inverse transform unit 107 and the prediction block generated through prediction, then stores the restored current block that has undergone additional filtering in the in-loop filter unit 109, and then It can be used to predict blocks or the next photo.
감산부(111)는 현재 원본 블록에서 예측 블록을 감산하여 잔차 블록을 생성할 수 있다.The subtractor 111 may generate a residual block by subtracting the prediction block from the current original block.
도 5는 본 발명의 일 실시예에 따른 영상 복호화 장치(500)를 나타낸 블록도이다. Figure 5 is a block diagram showing an image decoding device 500 according to an embodiment of the present invention.
도 5를 참조하면, 영상 복호화 장치(500)는 블록 엔트로피 복호화부(501), 역 양자화부(502), 역 변환부(503), 예측부(504), 가산부(505), 인루프 필터부(506), 메모리부(507)를 포함할 수 있다.Referring to FIG. 5, the image decoding device 500 includes a block entropy decoding unit 501, an inverse quantization unit 502, an inverse transform unit 503, a prediction unit 504, an adder 505, and an in-loop filter. It may include a unit 506 and a memory unit 507.
영상 부호화 장치(100)에 의해 생성된 영상 비트스트림이 영상 복호화 장치(1000)로 입력되는 경우, 입력된 비트스트림은 영상 부호화 장치(100)에서 수행된 과정과 반대의 과정에 따라 복호화될 수 있다. 그리고, 영상 부호화 장치(100)에서 '부호화 블록'은 영상 복호화 장치(500)에서 '복호화 블록'이라 칭할 수 있다.When the video bitstream generated by the video encoding device 100 is input to the video decoding device 1000, the input bitstream may be decoded according to a process opposite to the process performed in the video encoding device 100. . Additionally, a 'coding block' in the video encoding device 100 may be referred to as a 'decoding block' in the video decoding device 500.
엔트로피 복호화부(501)는 영상 부호화 장치(100)로부터 전송 받은 비트스트림을 해석하여 해당 블록을 복호화 하는데 필요한 여러 정보들과 양자화된 변환 계수를 획득할 수 있다. The entropy decoder 501 can interpret the bitstream received from the video encoding device 100 and obtain various information and quantized transform coefficients necessary to decode the corresponding block.
그리고, 엔트로피 복호화부(501)는 영상 부호화 장치(100)의 엔트로피 부호화부(105)에서 엔트로피 부호화를 수행한 것과 반대의 절차로 엔트로피 복호화를 수행할 수 있다. 예를 들어, 영상 부호화기에서 수행된 방법에 대응하여 지수 골롬(Exponential Golomb), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 다양한 방법이 적용될 수 있다. 엔트로피 복호화부(501)에서, 변환 블록의 계수는, 변환 블록 내 부분 블록 단위로, 0이 아닌 계수, 절대값이 1 또는 2보다 큰 계수, 그리고 계수의 부호 등을 나타내는 여러 종류의 플래그를 기반으로 복호화될 수 있다. 상기 플래그만으로 표현되지 않는 계수는, 플래그를 통해 표현되는 계수와 시그날링된 계수의 합을 통해 복호화될 수 있다.Additionally, the entropy decoding unit 501 may perform entropy decoding in a procedure opposite to that of the entropy encoding unit 105 of the video encoding device 100. For example, various methods such as Exponential Golomb, CAVLC (Context-Adaptive Variable Length Coding), and CABAC (Context-Adaptive Binary Arithmetic Coding) can be applied in response to the method performed in the image encoder. In the entropy decoding unit 501, the coefficients of the transform block are based on various types of flags indicating coefficients other than 0, coefficients whose absolute value is greater than 1 or 2, and signs of the coefficients, in units of partial blocks within the transform block. It can be decrypted. Coefficients that are not expressed only by the flag can be decoded through the sum of the coefficients expressed through the flag and the signaled coefficients.
또한, 엔트로피 복호화부(501)에서는 영상 부호화 장치에서 수행된 인트라 예측 및 인터 예측에 관련된 정보를 복호화할 수 있다. Additionally, the entropy decoder 501 can decode information related to intra prediction and inter prediction performed in the video encoding device.
역 양자화부(502)는 엔트로피 복호화부(501)에서 복호화한 양자화된 계수에 대하여 양자화 시에 사용한 양자화 기법을 역으로 수행하여 역 양자화된 계수를 가지는 역 양자화된 블록을 획득할 수 있다. 역 양자화부(502)는 도 1의 역 양자화부(106)와 실질적으로 동일하게 동작할 수 있다.The inverse quantization unit 502 may inversely perform the quantization technique used during quantization on the quantized coefficients decoded by the entropy decoder 501 to obtain an inverse quantized block having the inverse quantized coefficients. The inverse quantization unit 502 may operate substantially the same as the inverse quantization unit 106 of FIG. 1 .
역 변환부(503)는 변환 시에 사용한 방법과 동일한 방법을 이용하여 역 양자화 변환 블록을 역 변환하여 차분 신호를 가지는 잔차 블록을 획득할 수 있다. 역 변환부(503)는 도 1의 역 변환부(107)와 실질적으로 동일하게 동작할 수 있다.The inverse transform unit 503 can obtain a residual block having a difference signal by inversely transforming the inverse quantization transform block using the same method as the method used during transformation. The inverse transform unit 503 may operate substantially the same as the inverse transform unit 107 of FIG. 1 .
예측부(504)는 엔트로피 복호화부(501)에서 복호화한 코딩 모드 정보를 이용하여 예측 블록을 생성하는데, 이는 영상 부호화 장치(100)의 예측부(102)에서 수행했던 예측 방식과 동일한 방식을 이용할 수 있다.The prediction unit 504 generates a prediction block using the coding mode information decoded by the entropy decoder 501, which uses the same prediction method as the prediction method performed by the prediction unit 102 of the video encoding device 100. You can.
도 6은 현재 예측 블록의 화면 내 예측 모드를 복호화하는 방법을 나타낸 흐름도이다.Figure 6 is a flowchart showing a method of decoding the intra-prediction mode of the current prediction block.
도 6을 참고하면, S601 단계에서는 MPM 후보를 설정할 수 있다. MPM 후보를 설정하는 방법은 영상 부호화 장치(100)의 예측부(102)에서 전술한 도 3의 MPM 후보 설정 방법과 동일할 수 있다.Referring to Figure 6, in step S601, an MPM candidate can be set. The method of setting the MPM candidate may be the same as the MPM candidate setting method of FIG. 3 described above in the prediction unit 102 of the video encoding device 100.
그리고, S602 단계에서는 MPM을 이용하여 화면 내 예측 모드를 부호화할 것인지 여부를 지시하는 정보를 복호화할 수 있다. And, in step S602, information indicating whether to encode the intra-prediction mode can be decoded using MPM.
그리고, S603 단계에서는 S602 단계에서 복호화된 정보에 기초하여 MPM 동작 정보 여부를 판단할 수 있다. 해당 정보가 참인 경우, S604 단계에서 화면 내 예측 모드가 어떤 MPM 후보와 동일한지를 알려주는 색인 정보를 복호화하여 현재 예측 블록의 최적 화면 내 예측 모드를 결정할 수 있다. 반대로, 해당 정보가 거짓인 경우, S605 단계에서 MPM 후보인 화면 내 예측 모드를 제외한 나머지 화면 내 예측 모드 중, 어떤 예측 모드가 최적인지를 지시하는 정보를 복호화하여 현재 예측 블록의 화면 내 예측 모드를 결정할 수 있다.And, in step S603, it can be determined whether there is MPM operation information based on the information decrypted in step S602. If the information is true, the optimal intra-prediction mode of the current prediction block can be determined in step S604 by decoding the index information indicating which MPM candidate the intra-prediction mode is identical to. Conversely, if the information is false, in step S605, the information indicating which prediction mode is optimal among the remaining intra-prediction modes, excluding the intra-prediction mode that is the MPM candidate, is decoded to determine the intra-prediction mode of the current prediction block. You can decide.
다시 도 5의 설명으로 돌아와서, 가산부(505)는 예측부(504)에서 생성된 예측 블록과 역 변환부(503)를 통해 생성된 잔차 블록를 가산하여 복원 블록을 생성할 수 있다. Returning to the description of FIG. 5 , the adder 505 may generate a restored block by adding the prediction block generated in the prediction unit 504 and the residual block generated through the inverse transform unit 503.
인루프 필터부(506)는 현재 픽쳐 내 모든 블록을 복원한 이후, 픽쳐 전체에 걸쳐서 추가적인 필터링은 하는 과정으로 디블로킹 필터링, SAO(Sample Adaptive Offset) 등이 있다. 영상 부호화 장치(100)로부터 해당 블록 또는 픽쳐에 디블록킹 필터를 적용하였는지 여부에 대한 정보 및 디블록킹 필터를 적용하였을 경우, 강한 필터를 적용하였는지 또는 약한 필터를 적용하였는지에 대한 정보를 제공받을 수 있다. 인루프 필터부(506)는 도 1의 인루프 필터부(109)와 실질적으로 동일하게 동작할 수 있다.The in-loop filter unit 506 restores all blocks in the current picture and then performs additional filtering on the entire picture, including deblocking filtering and SAO (Sample Adaptive Offset). Information on whether a deblocking filter has been applied to the corresponding block or picture can be received from the video encoding device 100, and when a deblocking filter has been applied, information on whether a strong filter or a weak filter has been applied. The in-loop filter unit 506 may operate substantially the same as the in-loop filter unit 109 of FIG. 1 .
메모리(507)는 역 변환부(503)에서 생성된 잔차 신호와, 예측을 통하여 생성된 예측 블록을 가산한 후, 인루프 필터부(506)에서 추가적인 필터링을 거친 복원된 현재 블록을 저장하며, 다음 블록 또는 다음 사진 등을 예측하는데 활용 될 수 있다.The memory 507 adds the residual signal generated in the inverse transform unit 503 and the prediction block generated through prediction, and then stores the restored current block that has undergone additional filtering in the in-loop filter unit 506, It can be used to predict the next block or next photo, etc.
전술한 바와 같이 이하, 본 발명의 실시 예에서는 설명의 편의상 코딩 유닛(Coding Unit)을 부호화 단위라는 용어로 사용하지만, 부호화뿐만 아니라 복호화를 수행하는 단위가 될 수도 있다. 또한, 유닛 또는 단위는 하나의 픽쳐의 분할에 의해 생성된 영역일 수 있다. 또한, 본 발명의 실시 예에서 유닛은 블록을 의미할 수 있으며, 현재 블록은 현재 부호화 대상 블록 또는 현재 복호화 대상 블록을 의미할 수 있다.As described above, hereinafter, in the embodiments of the present invention, the term coding unit is used as a coding unit for convenience of explanation, but it may also be a unit that performs not only encoding but also decoding. Additionally, a unit or unit may be an area created by dividing one picture. Additionally, in an embodiment of the present invention, a unit may mean a block, and the current block may mean a current encoding target block or a current decoding target block.
이하, 도 7 내지 도 9를 참조하여, 부호화 블록을 분할하는 방법을 설명하도록 한다.Hereinafter, a method of dividing a coding block will be described with reference to FIGS. 7 to 9.
도 7은 현재 부호화 블록을 분할하기 위한 제1 방법을 설명하기 위한 도면이다. FIG. 7 is a diagram illustrating a first method for splitting a current coding block.
도 7을 참고하면, 부호화 블록은 분할 형태는 정사각형 혹은 직사각형일 수 있다. 도 7의 701은 부호화 블록이 세로 분할된 경우의 일 예이고, 702는 부호화 블록이 가로 분할된 경우의 일 예이다. 각각의 예에서 부호화 블록 내 예측 블록의 부호화 순서는 예측 블록 A, 예측 블록 B 순으로 부호화 될 수 있고, 부호화 블록 내의 점선은 부호화 블록 분할선을 의미하는데 이는 예측 블록간 경계선을 의미할 수 있다. 도 7의 701, 702에서 부호화 블록 분할선은 부호화 블록을 정확히 2등분하는 방법 외에도 다양한 크기로 2등분하는 방법이 이용될 수 있다. Referring to FIG. 7, the coding block may be divided into a square or rectangular shape. 701 in FIG. 7 is an example of a coding block being split vertically, and 702 is an example of a coding block being split horizontally. In each example, the coding order of the prediction blocks within the coding block may be encoded in the following order: prediction block A, followed by prediction block B, and the dotted line within the coding block indicates a coding block dividing line, which may mean a boundary line between prediction blocks. In 701 and 702 of FIG. 7, the coding block dividing line can be divided into two parts of various sizes in addition to dividing the coding block exactly into two.
한편, 부호화 블록의 분할 형태를 결정하는 제1 방법은 부호화 블록의 가로 분할, 세로 분할 별로 P의 값을 1부터 2N-1까지 모든 경우의 분할 형태별로 RD-Cost를 계산하고, RD-Cost가 최소가 되는 분할 형태를 현재 부호화 블록의 최적 분할 형태로 결정할 수 있다.Meanwhile, the first method of determining the division type of the coding block calculates the RD-Cost for each division type in all cases from 1 to 2N-1 with the value of P for each horizontal and vertical division of the coding block, and RD-Cost is The minimum division type can be determined as the optimal division type of the current coding block.
도 8 및 도 9는 현재 부호화 블록을 분할하기 위한 제2 방법을 설명하기 위한 도면이다.FIGS. 8 and 9 are diagrams for explaining a second method for splitting a current coding block.
부호화 블록의 분할 형태를 결정하는 제2 방법은 사용 가능한 부호화 블록 분할 세트를 기 설정하여 놓고, 기 설정된 분할 형태들의 RD-Cost를 계산하여 최적의 분할 형태를 결정할 수 있다. 이 때, 기 설정된 사용 가능한 분할 형태의 정보를 상위 헤더에서 기 전송할 수도 있다. 여기서, 상위 헤더란 비디오 파라미터 계층, 시퀀스 파라미터 계층, 픽쳐 파라미터 계층, 슬라이드 계층 등 블록 단위 이상에서의 전송 계층을 의미한다. The second method of determining the partition type of a coding block is to preset an available coding block partition set and determine the optimal partition form by calculating the RD-Cost of the preset partition types. At this time, information of a preset usable segmentation type may be transmitted in the upper header. Here, the upper header refers to the transport layer at the block level or higher, such as the video parameter layer, sequence parameter layer, picture parameter layer, and slide layer.
기 정의된 분할 형태로 대칭 수직 분할, 대칭 수평 분할, 비대칭 수직 분할 및 비대칭 수평 분할이 있을 수 있다.Predefined division types may include symmetric vertical division, symmetric horizontal division, asymmetric vertical division, and asymmetric horizontal division.
도 8을 참고하면, (1/4, 3/4) 수직 분할, (1/2, 1/2) 수직 분할, (3/4, 1/4) 수직 분할, (1/4, 3/4) 수평 분할, (1/2, 1/2) 수평 분할 및 (3/4, 1/4) 수평 분할이 있을 수 있다. 여기서, (1/4, 3/4) 수평 분할, (3/4, 1/4) 수평 분할, (1/4, 3/4) 수직 분할, 및 (3/4, 1/4) 수직 분할은 비대칭 분할 형태이고, (1/2, 1/2) 수평 분할 및 (1/2, 1/2) 수직 분할은 대칭 분할 형태일 수 있다.Referring to Figure 8, (1/4, 3/4) vertical division, (1/2, 1/2) vertical division, (3/4, 1/4) vertical division, (1/4, 3/4) ) There can be horizontal division, (1/2, 1/2) horizontal division, and (3/4, 1/4) horizontal division. where (1/4, 3/4) horizontal split, (3/4, 1/4) horizontal split, (1/4, 3/4) vertical split, and (3/4, 1/4) vertical split. is an asymmetric division form, and the (1/2, 1/2) horizontal division and (1/2, 1/2) vertical division may be symmetric division forms.
한편, 기 정의된 분할 형태로 모서리 분할이 있을 수 있다. Meanwhile, there may be corner division in a predefined division form.
도 9를 참고하면, 좌상단 모서리 분할(901), 우상단 모서리 분할(902), 좌하단 모서리 분할(903) 및 우하단 모서리 분할(904)이 있을 수 있다. 여기서, 분할되는 모서리 부분의 예측 블록은 부호화 블록의 1/4 넓이일 수 있다.Referring to FIG. 9, there may be an upper left corner split (901), an upper right corner split (902), a lower left corner split (903), and a lower right corner split (904). Here, the prediction block of the divided edge portion may be 1/4 the area of the coding block.
좌상단 모서리 분할(901)은 좌상단 예측 블록이 예측 블록 A(NxN), 나머지 영역이 예측 블록 B일 수 있다.In the upper left corner division 901, the upper left prediction block may be prediction block A (NxN), and the remaining area may be prediction block B.
그리고, 우상단 모서리 분할(902)은 우상단 예측 블록이 예측 블록 A(NxN), 나머지 영역이 예측 블록 B일 수 있다.In addition, in the upper right corner division 902, the upper right prediction block may be prediction block A (NxN), and the remaining area may be prediction block B.
그리고, 좌하단 모서리 분할(903)은 좌하단 예측 블록이 예측 블록 A(NxN), 나머지 영역이 예측 블록 B일 수 있다.And, in the lower left corner division 903, the lower left prediction block may be prediction block A (NxN), and the remaining area may be prediction block B.
그리고, 우하단 모서리 분할(904)은 우하단 예측 블록이 예측 블록 B, 나머지 영역이 예측 블록 A(NxN)일 수 있다. 각각의 분할 형태마다 부호화 블록의 부호화 순서는 예측 블록 A, 예측 블록 B 순서일 수 있다. 그리고, 해당 분할 방법에서 1/4 영역의 크기의 예측 블록은 그 크기가 더 커지거나, 작아질 수도 있다.And, in the lower right corner division 904, the lower right prediction block may be prediction block B, and the remaining area may be prediction block A (NxN). For each split type, the coding order of coding blocks may be prediction block A and prediction block B. In addition, in the corresponding partitioning method, the size of the prediction block of 1/4 area may become larger or smaller.
또한, 각 분할 방법에서 그 모양 또한 정사각형이 아닌 직사각형 등 다양한 형태일 수도 있다. 그리고, 각 분할 형태 별로 RD-Cost를 비교하여 RD-Cost가 최소가 되는 분할 형태를 현재 부호화 블록의 최적 분할 형태로 결정할 수 있다.Additionally, in each division method, the shape may also be of various shapes, such as a rectangle rather than a square. Also, by comparing the RD-Cost for each partition type, the partition form with the minimum RD-Cost can be determined as the optimal partition form of the current coding block.
이하에서는, 본 발명의 일 실시 예에 따른 인트라 하이브리드 모드에 대해 설명하도록 한다.Below, the intra hybrid mode according to an embodiment of the present invention will be described.
인트라 하이브리드 모드는 화면 내 예측 모드 중 하나이다. 부호화 블록의 코딩 모드가 화면 내 모드이고, 인트라 하이브리드 모드인 경우, 첫 번째 예측 블록(예측 블록 A)의 예측 정보는 부호화 블록의 주변 블록의 화면 내 예측 정보를 그대로 사용하여 결정되고, 두 번째 예측 블록(예측 블록 B)의 예측 정보는 도 3과 같은 방법으로 예측 블록 단위로 결정되거나, DIMD 모드를 이용하여 예측 블록 단위로 결정될 수 있다.Intra hybrid mode is one of the intra-screen prediction modes. When the coding mode of the coding block is intra-screen mode and intra-hybrid mode, the prediction information of the first prediction block (prediction block A) is determined by using the intra-screen prediction information of neighboring blocks of the coding block, and the prediction information of the second prediction block is determined by using the intra-screen prediction information of the coding block's neighboring blocks. The prediction information of the block (prediction block B) may be determined on a prediction block basis in the same manner as shown in FIG. 3, or may be determined on a prediction block basis using the DIMD mode.
여기서, DIMD 모드란, 영상 부호화 장치(100)에서 부호화 없이 영상 복호화 장치(500)에서 부호화되지 않은 인트라 예측 모드를 직접 유도하여 예측 블록의 예측 샘플을 생성하는 예측 모드를 의미할 수 있다.Here, the DIMD mode may refer to a prediction mode in which a prediction sample of a prediction block is generated by directly deriving an uncoded intra prediction mode in the image decoding device 500 without encoding in the image encoding device 100.
일 예로, DIMD 모드는 영상 복호화 장치(500)에서 부호화 블록 주변 블록의 인트라 예측 모드를 유도하고, 유도된 인트라 예측 모드를 기초로 예측 블록의 최종 인트라 예측 모드를 유도하여 예측 블록의 예측 샘플을 생성하는 모드일 수 있다.As an example, the DIMD mode generates a prediction sample of the prediction block by deriving the intra prediction mode of the block surrounding the coding block in the image decoding device 500, and deriving the final intra prediction mode of the prediction block based on the derived intra prediction mode. It may be a mode that does this.
도 20은 DIMD 모드에서 예측 정보 탐색 방법을 설명하기 위해, 현재 부호화 블록 내에서 생성된 예측 블록 B의 예측 모드를 DIMD 모드를 이용하여 탐색할 때, 각 분할 형태 별로 주변 Template 영역을 예시한 것이다. Template 영역은 현재 부호화 블록 주변에 이미 복원된 영역들에서 결정 가능하다. Figure 20 illustrates the surrounding template area for each division type when searching for the prediction mode of prediction block B generated within the current coding block using DIMD mode to explain the prediction information search method in DIMD mode. The template area can be determined from areas that have already been restored around the current encoding block.
상단 방향의 Template 영역은 AboveTemplate 영역이고, 좌측 방향의 Template 영역은 LeftTemplate 영역이다. The template area towards the top is the AboveTemplate area, and the template area towards the left is the LeftTemplate area.
여기서, AboveTemplate 영역의 가로 길이는 W, 세로 길이는 AT이고, LeftTemplate 영역의 가로 길이는 LT, 세로 길이는 H이고, Template 영역의 참조 화소는 R개 라인만큼 이용할 수 있다. 한편, Template 영역은 Template 블록으로 칭할 수 있다.Here, the horizontal length of the AboveTemplate area is W and the vertical length is AT, the horizontal length of the LeftTemplate area is LT and the vertical length is H, and the reference pixels of the Template area can be used as many as R lines. Meanwhile, the template area can be referred to as a template block.
Template 영역의 복원 화소값과 에러가 최소가 되는 예측 화소값을 생성하는 인트라 예측 모드를 탐색할 수 있다. 이렇게 탐색된 인트라 예측 모드를 Template 영역의 예측정보로 결정하고, 해당 예측 정보를 현재 블록의 예측 정보로 이용할 수 있다.You can explore the intra prediction mode that generates predicted pixel values with minimal errors and restored pixel values in the template area. The intra prediction mode discovered in this way can be determined as the prediction information of the template area, and the corresponding prediction information can be used as the prediction information of the current block.
한편, 화면 내 모드인 부호화 블록이 인트라 하이브리드 모드가 아닌 경우, 도 3에서와 같이 예측 블록 단위로 결정될 수 있다. Meanwhile, if the coding block in the intra-screen mode is not the intra hybrid mode, it may be determined on a prediction block basis as shown in FIG. 3.
도 10(도 10a, 도 10b 및 도 10c)는 주변 블록의 화면 내 예측 정보를 그대로 사용하여 예측 블록 A의 예측 정보를 결정하는 방법을 설명하기 위한 도면이다. 여기서, 예측 정보는 화면 내 예측 모드일 수 있다.FIG. 10 ( FIGS. 10A , 10B , and 10C ) is a diagram illustrating a method of determining prediction information of prediction block A by using intra-screen prediction information of neighboring blocks as is. Here, the prediction information may be an intra-screen prediction mode.
예측 블록 A는 부호화가 완료된 인접한 주변 블록의 예측 정보들 중, 예측 블록 A에 최적인 예측 정보를 탐색하고, 탐색된 최적의 예측 정보를 예측 블록 A에 예측 정보로 결정하여 예측 블록을 생성할 수 있다.Prediction block A can generate a prediction block by searching for the optimal prediction information for prediction block A among the prediction information of adjacent neighboring blocks for which encoding has been completed, and determining the searched optimal prediction information as prediction information for prediction block A. there is.
예측 블록 A의 주변 블록의 위치는 도 10의 1001 내지 1006에서 도시된 바와 같이 위치할 수 있다. 그리고, 주변 블록들 간 우선 순위가 존재할 시, 해당 우선 순위에 따라 최적의 예측 정보를 탐색할 수 있다. 본 예시에서는 우선 순위가 주변 블록 1, 2, 3, 4, 5 순인 것을 가정하고 설명하도록 한다.The positions of neighboring blocks of prediction block A may be located as shown in numbers 1001 to 1006 of FIG. 10 . Additionally, when there is a priority between neighboring blocks, optimal prediction information can be searched according to the priority. In this example, it is assumed that the priorities are in the order of neighboring blocks 1, 2, 3, 4, and 5.
도 10a의 1001의 예측 블록 A는 주변 블록 1 ~ 5까지 5개의 주변 블록들이 가질 수 있다. 예측 블록 A의 주변 블록 1 ~ 5의 예측 정보를 예측 블록 A에 적용하여 RD-Cost를 계산하고, RD-Cost가 최소인 주변 블록의 예측 정보를 예측 블록 A의 예측 정보로 결정할 수 있다. Prediction block A of 1001 in FIG. 10A can have five neighboring blocks from neighboring blocks 1 to 5. The prediction information of neighboring blocks 1 to 5 of prediction block A can be applied to prediction block A to calculate RD-Cost, and the prediction information of the neighboring block with the minimum RD-Cost can be determined as the prediction information of prediction block A.
도 10a의 1002의 설명은 1001의 설명과 비교하여 주변 블록의 위치기 바뀐 것을 제외하고 동일하다. The description of 1002 in FIG. 10A is the same as the description of 1001 except that the location of the surrounding blocks is changed.
도 10b 및 도 10c의 1003 ~ 1006은 예측 블록 A의 위치에 따라서 주변 블록의 개수 및 위치가 달라질 수 있음을 나타낸 것이다. 각각의 경우 모두 주변 블록의 예측 정보를 예측 블록 A에 적용하여 RD-Cost를 계산하고 RD-Cost가 최소가 되는 예측 정보를 예측 블록 A의 최적 예측 정보로 결정할 수 있으며, 해당 예측 정보를 이용하여 예측 블록을 생성할 수 있다. 1003 to 1006 in FIGS. 10B and 10C indicate that the number and location of neighboring blocks may vary depending on the location of prediction block A. In each case, the RD-Cost can be calculated by applying the prediction information of neighboring blocks to prediction block A, and the prediction information with the minimum RD-Cost can be determined as the optimal prediction information of prediction block A, and the prediction information can be used to A prediction block can be created.
한편, 예측 블록 B의 예측 정보를 결정하는 방법 또한, 예측 블록 주변 참조 화소를 이용하여 Planar, DC, N개의 Angular 모드들 중 최적 예측 모드를 찾고, 해당 예측 정보를 이용하여 예측 블록을 생성할 수도 있고, DIMD 모드를 이용하여 최적 예측 모드를 찾아서 해당 예측 정보를 이용하여 예측 블록을 생성할 수도 있다. Meanwhile, a method of determining prediction information of prediction block B can also be used to find the optimal prediction mode among Planar, DC, and N Angular modes using reference pixels around the prediction block, and to generate a prediction block using the corresponding prediction information. Also, the optimal prediction mode can be found using DIMD mode and a prediction block can be generated using the corresponding prediction information.
단, 예측 블록 B에서는 일부 경우에 한하여 예측 블록 A의 예측 정보를 참조하여 예측 블록 B의 예측 정보를 결정할 수 있다. 여기서, 일부 경우는 아래에서 설명한다.However, in prediction block B, the prediction information of prediction block B can be determined by referring to the prediction information of prediction block A only in some cases. Here, some cases are explained below.
영상 복호화 장치(500)에서 예측 블록과 원본 블록의 차이 대신, DMID 모드에서는 Template 영역의 복원 화소값과 Template 영역 주변의 참조 화소들을 이용하여 Template 영역의 예측 화소값의 차이를 RD-Cost를 계산하기 위한 에러로 가정하여 예측 정보를 탐색할 수 있다.Instead of the difference between the prediction block and the original block in the image decoding device 500, in DMID mode, RD-Cost is calculated using the difference between the predicted pixel value of the template area using the restored pixel value of the template area and the reference pixels around the template area. You can search for prediction information by assuming an error for
도 11(도 11a, 도 11b 및 도 11c)은 예측 블록 B의 예측 정보를 결정하는 방법을 설명하기 위한 도면이다.FIG. 11 (FIGS. 11A, 11B, and 11C) is a diagram for explaining a method of determining prediction information of prediction block B.
예측 블록 B의 주변 블록의 위치는 도 11의 1101 ~ 1106에서 도시된 바와 같이 위치할 수 있다. 그리고, 주변 블록 간 우선 순위가 존재할 시, 해당 우선 순위에 따라 최적 예측 정보를 탐색할 수 있다. 본 예시에서는 우선 순위가 주변 블록 1, 2, 3, 4, 5 순인 것을 가정하고 설명하도록 한다. The positions of neighboring blocks of prediction block B may be located as shown in numbers 1101 to 1106 of FIG. 11 . Additionally, when priorities exist between neighboring blocks, optimal prediction information can be searched according to the priorities. In this example, it is assumed that the priorities are in the order of neighboring blocks 1, 2, 3, 4, and 5.
한편, 도 11a의 1101 ~ 1102처럼 주변 블록 후보의 개수는 5개가 아닌 3개 혹은 4개 일 수도 있다. Meanwhile, like 1101 to 1102 in FIG. 11A, the number of neighboring block candidates may be 3 or 4 instead of 5.
이 때, 예측 블록 B의 예측 정보는 변환 블록 분할 구조에 따라서 예측 블록 A의 예측 정보를 참조하여 결정될 수 있다.At this time, the prediction information of prediction block B may be determined by referring to the prediction information of prediction block A according to the transform block partition structure.
현재 변환 블록 분할 구조가 CU단위 RT 구조로 이루어질 경우에는 예측 블록 B가 예측 블록 A의 예측 정보를 참조하여 예측 블록 B의 예측 정보를 결정할 수 없다.If the current transform block partition structure is composed of a CU unit RT structure, prediction information of prediction block B cannot be determined by reference to prediction information of prediction block A.
한편, 현재 변환 블록 분할 구조가 PU단위 RT 구조로 이루어질 경우에는 예측 블록 B가 예측 블록 A의 예측 정보를 참조하여 예측 블록 B의 예측 정보를 결정할 수 있다.Meanwhile, when the current transform block division structure is composed of a PU unit RT structure, prediction block B can determine the prediction information of prediction block B by referring to the prediction information of prediction block A.
한편, 예측 블록 B의 예측 정보는 전술한 바와 같이 예측 블록 단위로 결정될 수 있다. 이 경우, 도 1의 영상 부호화 장치(100)의 예측부(102)에서 설명한 바와 같이 예측 블록 단위로 최적 화면 내 예측 모드를 결정하고, 결정된 화면 내 예측 모드 혹은 DIMD 모드에 따라 예측 블록을 생성 할 수 있다.Meanwhile, prediction information of prediction block B may be determined on a prediction block basis as described above. In this case, as described in the prediction unit 102 of the video encoding device 100 of FIG. 1, the optimal intra-prediction mode is determined for each prediction block, and a prediction block is generated according to the determined intra-prediction mode or DIMD mode. You can.
도 12는 현재 부호화 블록의 예측 정보를 부호화하는 방법을 설명하기 위한 도면이다. 도 12에서 현재 부호화 블록은 예측 블록 A 및 예측 블록 B로 분할되고, 현재 부호화 블록의 코딩 모드는 화면 내 모드인 것을 가정한다.FIG. 12 is a diagram for explaining a method of encoding prediction information of a current encoding block. In FIG. 12, it is assumed that the current coding block is divided into prediction block A and prediction block B, and the coding mode of the current coding block is intra-screen mode.
도 12를 참고하면, S1201 단계에서는 현재 부호화 블록의 인트라 하이브리드 모드 정보를 부호화할 수 있다. 여기서, 인트라 하이브리드 모드 정보는 부호화 블록이 인트라 하이브리드 모드로 부호화되는지 여부를 지시하는 정보일 수 있다.Referring to FIG. 12, in step S1201, intra hybrid mode information of the current coding block can be encoded. Here, intra hybrid mode information may be information indicating whether a coding block is encoded in intra hybrid mode.
인트라 하이브리드 모드 및 화면 내 예측 모드의 RD-Cost를 비교하여 인트라 하이브리드 모드의 RD-Cost가 최소일 경우, 현재 부호화 블록의 인트라 하이브리드 모드 정보를 참으로 부호화할 수 있다. 여기서, 인트라 하이브리드 모드 정보는 플래그 형식으로 부호화 될 수 있다. By comparing the RD-Cost of the intra-hybrid mode and the intra-screen prediction mode, if the RD-Cost of the intra-hybrid mode is minimum, the intra-hybrid mode information of the current coding block can be encoded as true. Here, intra hybrid mode information may be encoded in a flag format.
도 13은 영상 부호화 장치(100)에서 인트라 하이브리드 모드 정보를 부호화하는 방법을 나타내는 흐름도이다.FIG. 13 is a flowchart showing a method of encoding intra hybrid mode information in the video encoding apparatus 100.
도 13를 참고하면, S1301 단계에서는 우선 화면 내 예측 모드 동작이 참인지 아닌지 판단할 수 있다. 여기서, 화면 내 예측 모드의 동작이 거짓이라면 본 흐름도를 종료하고, 참이라면 S1302 단계로 넘어갈 수 있다.Referring to FIG. 13, in step S1301, it can first be determined whether the intra-screen prediction mode operation is true or not. Here, if the operation of the intra-screen prediction mode is false, this flowchart ends, and if it is true, the flowchart can proceed to step S1302.
S1302 단계는 화면 내 예측 모드는 0으로, 인트라 하이브리드 모드는 1로 색인 정보를 할당한다. In step S1302, index information is assigned to 0 for the intra-screen prediction mode and 1 to the intra hybrid mode.
최초 S1303 단계에서는 N의 초기값이 0, Best_Cost는 무한대가 들어오고, 0번 색인 정보인 화면 내 예측 모드의 RD-Cost를 계산하여 N_Cost에 저장할 수 있다. In the first step S1303, the initial value of N is 0, Best_Cost is infinite, and the RD-Cost of the intra-screen prediction mode, which is index information 0, can be calculated and stored in N_Cost.
S1304 단계에서는 N_Cost가 현재 Best_Cost와 비교하여 큰지 작은지를 판단하고, N_Cost가 작다면 S1305 단계에서 현재 N값을 Best_Idx로, N_Cost를 Best_Cost로 저장할 수 있다. In step S1304, it is determined whether N_Cost is large or small by comparing it with the current Best_Cost, and if N_Cost is small, the current N value can be stored as Best_Idx and N_Cost as Best_Cost in step S1305.
S1306 단계에서 현재 N이 1인지 아닌지 비교한다. 만약 현재 N이 1이 아니라면 S1307 단계에서 현재 N에 1을 더해주고, S1303 단계로 돌아가서 전술한 과정을 반복하고, 현재 N이 1이었다면 S1308 단계에서 현재 Best_Idx를 현재 부호화 블록의 인트라 하이브리드 모드 정보로 결정하고, 도 13의 과정을 종료한다.In step S1306, it is compared whether the current N is 1 or not. If the current N is not 1, add 1 to the current N in step S1307, return to step S1303 and repeat the above process, and if the current N is 1, determine the current Best_Idx as the intra hybrid mode information of the current coding block in step S1308. And the process of Figure 13 ends.
해당 과정을 통해 생성된 인트라 하이브리드 모드 정보를 S1301 단계에서 현재 부호화 블록의 인트라 하이브리드 모드 정보로써 부호화하게 된다. 추가적으로, 인트라 하이브리드 모드의 동작 여부 정보를 상위 헤더에서 추가로 기 전송하고, 전송된 상위 헤더 계층에서 인트라 하이브리드 모드의 동작 여부를 제어할 수도 있다.The intra hybrid mode information generated through this process is encoded as the intra hybrid mode information of the current coding block in step S1301. Additionally, information on whether the intra hybrid mode is operating may be additionally transmitted in the upper header, and whether the intra hybrid mode is operating may be controlled at the transmitted upper header layer.
다시 도 12의 설명으로 돌아와서, S1202 단계에서는 현재 부호화 블록의 인트라 하이브리드 정보에 기초하여 현재 부호화 블록이 인트라 하이브리드 모드인지 아닌지를 판단할 수 있다.Returning to the description of FIG. 12 , in step S1202, it may be determined whether the current coding block is in the intra hybrid mode based on the intra hybrid information of the current coding block.
현재 부호화 블록이 인트라 하이브리드 모드이면, S1203 단계로 넘어가서 현재 부호화 블록의 분할 정보를 부호화할 수 있다. If the current coding block is in intra hybrid mode, the process proceeds to step S1203 and the division information of the current coding block can be encoded.
이 때, 도 7의 예시도들처럼 부호화 블록이 2분 분할 된 경우, 가로 방향 분할인지 세로 방향 분할인지에 대한 정보를 부호화한 후, P 정보를 부호화할 수도 있고, 전술한 도 8 예시도의 설명처럼 기 설정된 분할 세트 중, 어떤 분할 형태가 최적인지를 알려주는 색인 정보를 부호화할 수도 있다. 또한, 도 9의 예시도 들처럼 부호화 블록이 1/4, 3/4 분할된 경우, 1/4 예측 블록이 4개의 방향 중, 어떤 방향에 위치하고 있는지에 대한 색인 정보를 부호화하여 현재 부호화 블록의 분할 형태를 결정할 수도 있다. At this time, when the coding block is divided into two parts as shown in the example diagrams of FIG. 7, the P information may be encoded after encoding the information about whether it is horizontally or vertically divided, and the P information may be encoded as shown in the example diagram of FIG. 8 As explained, index information indicating which partition type is optimal among the preset partition sets can be encoded. In addition, when the coding block is divided into 1/4 and 3/4 as shown in the examples of FIG. 9, index information about which direction the 1/4 prediction block is located in among the four directions is encoded to determine the current coding block. You can also decide on the type of division.
S1204 단계에서는 예측 블록 A의 예측 정보를 부호화할 수 있다. 주변 블록의 예측 정보들 중, 예측 블록 A에 가장 최적인 예측 정보를 갖고 있는 주변 블록의 색인 정보를 부호화할 수 있다. In step S1204, the prediction information of prediction block A can be encoded. Among the prediction information of neighboring blocks, the index information of the neighboring block that has the most optimal prediction information for prediction block A can be encoded.
도 14는 영상 부호화 장치에서 인트라 하이브리드 모드인 부호화 블록 내의 첫 번째 예측 블록의 예측 정보를 부호화하는 방법을 설명한 흐름도이다.FIG. 14 is a flowchart illustrating a method of encoding prediction information of the first prediction block in an intra-hybrid mode coding block in a video encoding device.
도 14를 참고하면, S1401 단계에서는 이용 가능한 주변 블록들의 화면 내 예측 정보를 예측 블록 A에 적용하여 예측 블록을 생성 후, 각 예측 정보 별로 RD-Cost를 계산한다. Referring to FIG. 14, in step S1401, a prediction block is generated by applying the on-screen prediction information of available neighboring blocks to prediction block A, and then RD-Cost is calculated for each prediction information.
S1402 단계에서는 적용한 예측 정보들 중, 최소 RD-Cost를 갖는 예측 정보를 결정하고, S1403 단계에서 해당 예측 정보를 갖는 주변의 블록의 색인 정보를 저장할 수 있다. In step S1402, among the applied prediction information, prediction information with the minimum RD-Cost is determined, and in step S1403, index information of neighboring blocks with the corresponding prediction information can be stored.
한편, 도 14의 과정을 거치지 않고 주변 블록들의 우선 순위에 따라 이용 가능한 주변 블록들 중에서, 우선 순위가 높은 주변 블록의 예측 정보를 그대로 사용할 수도 있다. Meanwhile, prediction information of a high-priority neighboring block among available neighboring blocks according to the priorities of the neighboring blocks may be used as is, without going through the process of FIG. 14.
S1205 단계에서는 예측 블록 B의 예측 정보를 부호화한다. 예측 블록 B의 예측 정보는 전술한 도 3의 화면 내 예측 부호화 방법을 이용하거나 혹은 DIMD 모드를 지칭하는 DIMD 모드 정보(또는 플래그 정보)를전송함으로써 부호화할 수 있다.In step S1205, the prediction information of prediction block B is encoded. The prediction information of prediction block B can be encoded using the intra prediction coding method of FIG. 3 described above or by transmitting DIMD mode information (or flag information) indicating the DIMD mode.
S1206 단계에서는 현재 부호화 블록이 인트라 하이브리드 모드가 아닌 경우이므로, 이때에는 전술한 도 3의 화면 내 예측 부호화 방법을 이용하여 예측 블록 단위로 부호화할 수 있다.In step S1206, since the current coding block is not in intra hybrid mode, in this case, coding can be performed on a prediction block basis using the intra prediction coding method of FIG. 3 described above.
도 15는 현재 복호화 블록의 예측 정보를 복호화하는 방법을 설명하기 위한 도면이다. 도 15에서 현재 복호화 블록은 예측 블록 A 및 예측 블록 B로 분할되고, 현재 부호화 블록의 코딩 모드는 화면 내 모드인 것을 가정한다. 여기서, 현재 복호화 블록은 현재 부호화 블록을 의미할 수 있다.Figure 15 is a diagram for explaining a method of decoding prediction information of a current decoding block. In FIG. 15, it is assumed that the current decoding block is divided into prediction block A and prediction block B, and the coding mode of the current encoding block is intra-screen mode. Here, the current decoding block may mean the current encoding block.
도 15를 참고하면, S1501 단계에서는 현재 복호화 블록의 인트라 하이브리드 모드 정보를 복호화할 수 있다. Referring to FIG. 15, in step S1501, the intra hybrid mode information of the current decoding block can be decoded.
S1502 단계는 복호화된 인트라 하이브리드 모드 정보에 기초하여 현재 복호화 블록이 인트라 하이브리드 모드인지 판단할 수 있다. Step S1502 may determine whether the current decoding block is in intra hybrid mode based on the decrypted intra hybrid mode information.
현재 복호화 블록이 인트라 하이브리드 모드이면, S1503 단계로 넘어가서 현재 부호화 블록의 분할 정보를 부호화할 수 있다. If the current decoding block is in intra hybrid mode, the process proceeds to step S1503 and the division information of the current encoding block can be encoded.
S1503 단계는 전술한 도 12의 S1203 단계에서 부호화된 현재 복호화 블록의 분할 정보를 복호화할 수 있다. 여기서, 복호화된 분할 정보를 이용하여 현재 복호화 블록을 분할 할 수 있다. 이에 대한 구체적인 설명은 도 7 내지 도 9에서 전술하였는 바 생략하도록 한다.Step S1503 may decode the partition information of the current decoding block encoded in step S1203 of FIG. 12 described above. Here, the current decrypted block can be divided using the decrypted division information. A detailed description of this will be omitted as it has been described above with reference to FIGS. 7 to 9.
S1504 단계는 전술한 도 12의 S1204 단계에서 부호화된 예측 블록 A의 예측 정보를 복호화할 수 있다. 구체적으로, S1504단계에서는 주변 블록의 색인 정보에 기초하여 선택된 주변 블록의 예측 정보로부터 예측 블록 A의 예측 정보를 유도할 수 있다. 또한, 기 설정된 주변 블록의 우선 순위에 따라 이용가능한 주변 블록들 중에서, 우선 순위가 높은 주변 블록의 예측 정보를 예측 블록 A의 예측 정보로 유도할 수 있다.Step S1504 may decode the prediction information of prediction block A encoded in step S1204 of FIG. 12 described above. Specifically, in step S1504, the prediction information of the prediction block A can be derived from the prediction information of the neighboring block selected based on the index information of the neighboring block. In addition, among the available neighboring blocks according to the priority of the preset neighboring block, the prediction information of the neighboring block with high priority can be derived as the prediction information of prediction block A.
S1505 단계는 전술한 도 12의 S1205 단계에서 부호화된 예측 블록 B의 예측 정보를 복호화 할 수 있다. Step S1505 may decode the prediction information of prediction block B encoded in step S1205 of FIG. 12 described above.
한편, S1506 단계에서는 현재 복호화 블록이 인트라 하이브리드 모드가 아닌 경우이므로, 이때에는 전술한 도 6의 화면 내 예측 복호화 방법을 이용하여 예측 블록 단위로 복호화 할 수 있다.Meanwhile, in step S1506, since the current decoding block is not in intra hybrid mode, in this case, decoding can be done in units of prediction blocks using the intra prediction decoding method of FIG. 6 described above.
도 16은 본 발명의 일 실시 예에 따른 경계 필터링 방법을 설명하기 위한 도면이다.Figure 16 is a diagram for explaining a boundary filtering method according to an embodiment of the present invention.
현재 부호화 블록 내에서 생성된 예측 블록 A, B는 경계 영역에서 블록킹 현상이 발생할 수 있다. 따라서, 해당 경계 영역을 부드럽게 만들어 주기 위한 스무딩 필터링 과정이 필요하다. Prediction blocks A and B generated within the current encoding block may experience blocking in the border area. Therefore, a smoothing filtering process is necessary to smooth the boundary area.
도 16을 참고하면, 현재 부호화 블록 내 예측 블록 A, 예측 블록 B의 예측 모드가 결정되어 두 블록의 예측 블록이 생성된 이후, 두 예측 블록 경계에서 필터링이 수행될 수 있다. Referring to FIG. 16, after the prediction modes of prediction block A and prediction block B in the current coding block are determined and two prediction blocks are generated, filtering may be performed at the boundary of the two prediction blocks.
도 16의 1601, 1602는 부호화 블록 내 예측 블록이 2분할된 경우에 예측 블록 간 경계에서 필터링 될 화소들을 나타낸 것이다. 예측 블록 경계에 맞물린 화소들을 필터링하고, 필터 탭은 4, 필터 계수는 W1 ~ W4로 나타낸다. W1 ~ W4는 임의의 실수이고, W1+W2+W3+W4는 항상 1이다. 수학식 2는 1601, 1602에서 필터링 수식을 나타낸 것이다.1601 and 1602 in FIG. 16 show pixels to be filtered at the boundary between prediction blocks when the prediction block within the coding block is divided into two. Pixels aligned with the prediction block boundary are filtered, the filter tab is indicated as 4, and the filter coefficients are indicated as W1 to W4. W1 to W4 are random real numbers, and W1+W2+W3+W4 is always 1. Equation 2 shows the filtering formula in 1601 and 1602.
도 16의 1603 ~ 1606은 예측 블록이 부호화 블록 내에서 모서리 분할된 경우에 예측 블록 간 경계에서 필터링 될 화소들을 나타낸 것이다. 이 경우, 예측 블록의 모서리 경계에서의 화소들(e1, e2, e4, e5) 은 대각선 방향 필터링이 적용될 수 있다. 여기서, d1, b1이 동시에 표현된 화소는 b1과 d1이 같은 화소를 가리킨다는 것을 의미한다. 1603 to 1606 of FIG. 16 show pixels to be filtered at the boundary between prediction blocks when the prediction block is edge-divided within the coding block. In this case, diagonal filtering may be applied to the pixels (e1, e2, e4, e5) at the corner boundary of the prediction block. Here, a pixel in which d1 and b1 are expressed simultaneously means that b1 and d1 point to the same pixel.
수학식 3은 도 16의 1603 ~ 1606 에서의 필터링 수식을 나타낸 것이다.Equation 3 shows the filtering equations in numbers 1603 to 1606 of FIG. 16.
수학식 3을 참고하면, 모서리 경계에서의 화소들(e1, e2, e4, e5)에는 대각선 방향 필터링이 적용된 것을 확인할 수 있다.Referring to Equation 3, it can be seen that diagonal filtering is applied to the pixels (e1, e2, e4, e5) at the corner boundary.
도 17은 본 발명의 일 실시 예에 따른 영상 복호화 방법을 설명하기 위한 흐름도이다.Figure 17 is a flowchart for explaining an image decoding method according to an embodiment of the present invention.
도 17를 참고하면, 영상 복호화 장치는 현재 부호화 블록의 인트라 하이브리드 모드 정보를 복호화할 수 있다(S1701).Referring to FIG. 17, the video decoding device can decode intra hybrid mode information of the current coding block (S1701).
그리고, 영상 복호화 장치는 인트라 하이브리드 모드 정보에 기초하여 현재 부호화 블록 내의 적어도 하나의 예측 블록의 예측 샘플을 생성할 수 있다(S1702). S1702단계에 대한 구체적인 설명은 도 18를 참고하여 설명하도록 한다.And, the image decoding apparatus may generate a prediction sample of at least one prediction block in the current coding block based on the intra hybrid mode information (S1702). A detailed description of step S1702 will be described with reference to FIG. 18.
도 18은 본 발명의 일 실시 예에 따른 영상 복호화 방법을 설명하기 위한 흐름도이다.Figure 18 is a flowchart for explaining an image decoding method according to an embodiment of the present invention.
도 18를 참고하면, 현재 부호화 블록이 인트라 하이브리드 모드인 경우(S1801 - 예), 영상 복호화 장치는 현재 부호화 블록을 제1 예측 블록 및 제2 예측 블록으로 분할할 수 있다(S1802). Referring to FIG. 18, when the current coding block is in the intra hybrid mode (S1801 - Yes), the video decoding device may divide the current coding block into a first prediction block and a second prediction block (S1802).
여기서, 제1 예측 블록 및 제2 예측 블록은 도 9와 같이 현재 부호화 블록을 모서리 분할한 형태일 수 있다.Here, the first prediction block and the second prediction block may be in the form of corner-splitting the current coding block as shown in FIG. 9.
이 경우, 도 16에서 설명한 바와 같이 제1 예측 블록의 모서리 경계에 인접한 화소들에는 대각선 방향 필터링이 적용될 수 있다.In this case, as described in FIG. 16, diagonal filtering may be applied to pixels adjacent to the corner boundary of the first prediction block.
그리고, 영상 복호화 장치는 제1 예측 블록의 주변 블록으로부터 유도된 제1 예측 블록의 화면 내 예측 모드를 이용하여 제1 예측 블록의 예측 샘플을 생성할 수 있다(S1803).And, the image decoding apparatus may generate a prediction sample of the first prediction block using the intra-prediction mode of the first prediction block derived from the neighboring blocks of the first prediction block (S1803).
한편, 영상 복호화 장치는 제1 예측 블록의 주변 블록들 중 기 설정된 우선 순위에 따라 결정된 주변 블록의 화면 내 예측 모드를 제1 예측 블록의 화면 내 예측 모드로 유도할 수 있다.Meanwhile, the image decoding apparatus may induce the intra-prediction mode of a neighboring block determined according to a preset priority among the neighboring blocks of the first prediction block to the intra-prediction mode of the first prediction block.
또는, 영상 복호화 장치는 주변 블록 색인 정보에 기초하여 결정된 주변 블록의 화면 내 예측 모드를 제1 예측 블록의 화면 내 예측 모드로 유도할 수 있다. 여기서, 주변 블록 색인 정보는 영상 부호화 장치로부터 시그널링된 정보일 수 있다.Alternatively, the image decoding device may induce the intra-prediction mode of the neighboring block determined based on neighboring block index information to the intra-prediction mode of the first prediction block. Here, the neighboring block index information may be information signaled from the video encoding device.
그리고, 영상 복호화 장치는 제2 예측 블록의 화면 내 예측 모드 정보 혹은 DIMD 모드 정보를 복호화하여 제2 예측 블록의 화면 내 예측 모드를 결정하고, 결정된 화면 내 예측 모드를 이용하여 제2 예측 블록의 예측 샘플을 생성할 수 있다(S1804). Then, the video decoding device decodes the intra-prediction mode information or DIMD mode information of the second prediction block to determine the intra-prediction mode of the second prediction block, and predicts the second prediction block using the determined intra-prediction mode. A sample can be created (S1804).
한편, 현재 부호화 블록이 인트라 하이브리드 모드가 아닌 경우(S1801 - 아니요), 영상 복호화 장치는 화면 내 예측을 통해 현재 부호화 블록 내의 적어도 하나의 예측 블록의 예측 샘플을 생성할 수 있다(S1805). 즉, 도 6에서 설명한 바와 같이 화면 내 예측 모드를 유도하여 예측 블록 단위로 예측 샘플을 생성할 수 있다.Meanwhile, if the current coding block is not in the intra hybrid mode (S1801 - No), the video decoding device may generate a prediction sample of at least one prediction block in the current coding block through intra-prediction (S1805). That is, as described in FIG. 6, prediction samples can be generated in units of prediction blocks by inducing an intra-screen prediction mode.
도 19는 본 발명의 일 실시 예에 따른 영상 부호화 방법을 설명하기 위한 흐름도이다. Figure 19 is a flowchart for explaining an image encoding method according to an embodiment of the present invention.
도 19를 참고하면, 영상 부호화 장치는 현재 부호화 블록의 인트라 하이브리드 모드 정보를 부호화할 수 있다(S1901).Referring to FIG. 19, the video encoding device can encode intra hybrid mode information of the current coding block (S1901).
그리고, 영상 부호화 장치는 인트라 하이브리드 모드 정보에 기초하여 현재 부호화 블록 내의 적어도 하나의 예측 블록의 예측 샘플을 생성할 수 있다(S1902).And, the image encoding device may generate a prediction sample of at least one prediction block in the current coding block based on the intra hybrid mode information (S1902).
한편, S1902 단계를 구체적으로 설명하면, 영상 부호화 장치는 현재 부호화 블록이 인트라 하이브리드 모드인 경우, 현재 부호화 블록을 제1 예측 블록 및 제2 예측 블록으로 분할하고, 제1 예측 블록의 주변 블록으로부터 유도된 제1 예측 블록의 화면 내 예측 모드를 이용하여 제1 예측 블록의 예측 샘플을 생성할 수 있다. 그리고, 영상 부호화 장치는 제2 예측 블록의 화면 내 예측 모드 정보 혹은 DIMD 모드 정보에 기초하여 제2 예측 블록의 화면 내 예측 모드를 결정하고, 결정된 화면 내 예측 모드를 이용하여 제2 예측 블록의 예측 샘플을 생성할 수 있다.Meanwhile, to describe step S1902 in detail, when the current coding block is in intra hybrid mode, the video encoding device divides the current coding block into a first prediction block and a second prediction block, and derives the information from the neighboring blocks of the first prediction block. A prediction sample of the first prediction block can be generated using the intra-prediction mode of the first prediction block. Then, the video encoding device determines the intra-prediction mode of the second prediction block based on the intra-prediction mode information or DIMD mode information of the second prediction block, and predicts the second prediction block using the determined intra-prediction mode. Samples can be created.
한편, 도 19의 영상 부호화 방법에 의해 생성된 비트스트림은 저장 매체에 기록될 수 있다.Meanwhile, the bitstream generated by the video encoding method of FIG. 19 can be recorded in a storage medium.
본 개시의 예시적인 방법들은 설명의 명확성을 위해서 동작의 시리즈로 표현되어 있지만, 이는 단계가 수행되는 순서를 제한하기 위한 것은 아니며, 필요한 경우에는 각각의 단계가 동시에 또는 상이한 순서로 수행될 수도 있다. 본 개시에 따른 방법을 구현하기 위해서, 예시하는 단계에 추가적으로 다른 단계를 포함하거나, 일부의 단계를 제외하고 나머지 단계를 포함하거나, 또는 일부의 단계를 제외하고 추가적인 다른 단계를 포함할 수도 있다.Exemplary methods of the present disclosure are expressed as a series of operations for clarity of explanation, but this is not intended to limit the order in which the steps are performed, and each step may be performed simultaneously or in a different order, if necessary. In order to implement the method according to the present disclosure, other steps may be included in addition to the exemplified steps, some steps may be excluded and the remaining steps may be included, or some steps may be excluded and additional other steps may be included.
본 개시의 다양한 실시 예는 모든 가능한 조합을 나열한 것이 아니고 본 개시의 대표적인 양상을 설명하기 위한 것이며, 다양한 실시 예에서 설명하는 사항들은 독립적으로 적용되거나 또는 둘 이상의 조합으로 적용될 수도 있다.The various embodiments of the present disclosure do not list all possible combinations but are intended to explain representative aspects of the present disclosure, and matters described in the various embodiments may be applied independently or in combination of two or more.
또한, 본 개시의 다양한 실시 예는 하드웨어, 펌웨어(firmware), 소프트웨어, 또는 그들의 결합 등에 의해 구현될 수 있다. 하드웨어에 의한 구현의 경우, 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 범용 프로세서(general processor), 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다. Additionally, various embodiments of the present disclosure may be implemented by hardware, firmware, software, or a combination thereof. For hardware implementation, one or more ASICs (Application Specific Integrated Circuits), DSPs (Digital Signal Processors), DSPDs (Digital Signal Processing Devices), PLDs (Programmable Logic Devices), FPGAs (Field Programmable Gate Arrays), general purpose It can be implemented by a processor (general processor), controller, microcontroller, microprocessor, etc.
본 개시의 범위는 다양한 실시 예의 방법에 따른 동작이 장치 또는 컴퓨터 상에서 실행되도록 하는 소프트웨어 또는 머신-실행가능한 명령들(예를 들어, 운영체제, 애플리케이션, 펌웨어(firmware), 프로그램 등), 및 이러한 소프트웨어 또는 명령 등이 저장되어 장치 또는 컴퓨터 상에서 실행 가능한 비-일시적 컴퓨터-판독가능 매체(non-transitory computer-readable medium)를 포함한다. The scope of the present disclosure is software or machine-executable instructions (e.g., operating system, application, firmware, program, etc.) that cause operations according to the methods of various embodiments to be executed on a device or computer, and such software or It includes non-transitory computer-readable medium in which instructions, etc. are stored and can be executed on a device or computer.
Claims (5)
현재 부호화 블록을 복수의 하위 블록들로 분할하는 단계; 여기서, 상기 복수의 하위 블록들은 제1 하위 블록 및 제2 하위 블록을 포함함,
주변 블록으로부터 유도된 화면 내 예측 모드를 상기 제1 하위 블록의 예측 모드로 이용하여 상기 제1 하위 블록의 예측 샘플을 생성하는 단계, 여기서, 상기 주변 블록은 상기 현재 부호화 블록에 인접한 상단 이웃 블록들 중 최-우측에 위치한 이웃 블록 및 상기 현재 부호화 블록에 인접한 좌측 이웃 블록들 중 최-하단에 위치한 이웃 블록을 포함함; 및
상기 제1 하위 블록의 예측 샘플의 생성에 이용된 화면 내 예측 모드를 이용하여 상기 제2 하위 블록의 예측 샘플을 생성하는 단계를 포함하고,
상기 제1 하위 블록은, 상기 현재 블록 내 좌-상단 화소를 포함하고,
상기 제2 하위 블록은, 상기 현재 블록 내 우-하단 화소를 포함하고,
상기 제2 하위 블록의 크기는, 상기 현재 블록의 1/4 크기이고,
상기 화면내 예측 모드는, 복수의 모드들 중 비트스트림으로부터 시그날링된 인덱스에 의해 결정된 어느 하나로 결정되는, 영상 복호화 방법.In the video decoding method,
Splitting the current encoding block into a plurality of sub-blocks; Here, the plurality of sub-blocks include a first sub-block and a second sub-block,
Generating a prediction sample of the first sub-block using an intra-prediction mode derived from a neighboring block as a prediction mode of the first sub-block, wherein the neighboring block is a top neighboring block adjacent to the current coding block. It includes a neighboring block located at the bottom of the rightmost neighboring block and left neighboring blocks adjacent to the current encoding block; and
Generating a prediction sample of the second sub-block using the intra-prediction mode used to generate the prediction sample of the first sub-block,
The first sub-block includes the top-left pixel in the current block,
The second sub-block includes a lower-right pixel in the current block,
The size of the second sub-block is 1/4 the size of the current block,
The intra-screen prediction mode is determined as one of a plurality of modes determined by an index signaled from a bitstream.
상기 분할의 분할 형태는, 상기 비트스트림으로부터 시그널링된 분할 형태에 대한 정보에 기초하여 결정되는, 영상 복호화 방법.According to paragraph 1,
A video decoding method wherein the division type of the division is determined based on information about the division type signaled from the bitstream.
상기 현재 부호화 블록을 분할할지 여부는, 상기 비트스트림으로부터 시그널링된 모드 정보에 기초하여 결정되는, 영상 복호화 방법.According to paragraph 2,
A video decoding method in which whether to split the current coding block is determined based on mode information signaled from the bitstream.
현재 부호화 블록을 복수의 하위 블록들로 분할하는 단계; 여기서, 상기 복수의 하위 블록들은 제1 하위 블록 및 제2 하위 블록을 포함함,
주변 블록으로부터 유도된 화면 내 예측 모드를 상기 제1 하위 블록의 예측 모드로 이용하여 상기 제1 하위 블록의 예측 샘플을 생성하는 단계, 여기서, 상기 주변 블록은 상기 현재 부호화 블록에 인접한 상단 이웃 블록들 중 최-우측에 위치한 이웃 블록 및 상기 현재 부호화 블록에 인접한 좌측 이웃 블록들 중 최-하단에 위치한 이웃 블록을 포함함; 및
상기 제1 하위 블록의 예측 샘플의 생성에 이용된 화면 내 예측 모드를 이용하여, 상기 제2 하위 블록의 예측 샘플을 생성하는 단계를 포함하고,
상기 제1 하위 블록은, 상기 현재 블록 내 좌-상단 화소를 포함하고,
상기 제2 하위 블록은, 상기 현재 블록 내 우-하단 화소를 포함하고,
상기 제2 하위 블록의 크기는, 상기 현재 블록의 1/4 크기이고,
복수의 모드들 중 상기 화면내 예측 모드를 지시하는 인덱스는 비트스트림에 부호화되고, 영상 부호화 방법.In the video encoding method,
Splitting the current encoding block into a plurality of sub-blocks; Here, the plurality of sub-blocks include a first sub-block and a second sub-block,
Generating a prediction sample of the first sub-block using an intra-prediction mode derived from a neighboring block as a prediction mode of the first sub-block, wherein the neighboring block is a top neighboring block adjacent to the current coding block. Includes a neighboring block located at the bottom of the rightmost neighboring block and left neighboring blocks adjacent to the current encoding block; and
Generating a prediction sample of the second sub-block using the intra-prediction mode used to generate the prediction sample of the first sub-block,
The first sub-block includes the upper-left pixel in the current block,
The second sub-block includes a lower-right pixel in the current block,
The size of the second sub-block is 1/4 the size of the current block,
An index indicating the intra-prediction mode among a plurality of modes is encoded in a bitstream, and an image encoding method.
상기 영상 부호화 방법은, 현재 부호화 블록을 복수의 하위 블록들로 분할하는 단계; 여기서, 상기 복수의 하위 블록들은 제1 하위 블록 및 제2 하위 블록을 포함함,
주변 블록으로부터 유도된 화면 내 예측 모드를 상기 제1 하위 블록의 예측 모드로 이용하여 상기 제1 하위 블록의 예측 샘플을 생성하는 단계, 여기서, 상기 주변 블록은 상기 현재 부호화 블록에 인접한 상단 이웃 블록들 중 최-우측에 위치한 이웃 블록 및 상기 현재 부호화 블록에 인접한 좌측 이웃 블록들 중 최-하단에 위치한 이웃 블록을 포함함; 및
상기 제1 하위 블록의 예측 샘플의 생성에 이용된 화면 내 예측 모드를 이용하여, 상기 제2 하위 블록의 예측 샘플을 생성하는 단계를 포함하고,
상기 제1 하위 블록은, 상기 현재 블록 내 좌-상단 화소를 포함하고,
상기 제2 하위 블록은, 상기 현재 블록 내 우-하단 화소를 포함하고,
상기 제2 하위 블록의 크기는, 상기 현재 블록의 1/4 크기이고,
복수의 모드들 중 상기 화면내 예측 모드를 지시하는 인덱스는 상기 비트스트림에 부호화되고, 컴퓨터로 판독가능한 기록 매체.A computer-readable recording medium storing a bitstream generated by an image encoding method,
The video encoding method includes dividing a current encoding block into a plurality of sub-blocks; Here, the plurality of sub-blocks include a first sub-block and a second sub-block,
Generating a prediction sample of the first sub-block using an intra-prediction mode derived from a neighboring block as a prediction mode of the first sub-block, wherein the neighboring block is a top neighboring block adjacent to the current coding block. Includes a neighboring block located at the bottom of the rightmost neighboring block and left neighboring blocks adjacent to the current encoding block; and
Generating a prediction sample of the second sub-block using the intra-prediction mode used to generate the prediction sample of the first sub-block,
The first sub-block includes the upper-left pixel in the current block,
The second sub-block includes a lower-right pixel in the current block,
The size of the second sub-block is 1/4 the size of the current block,
An index indicating the intra-screen prediction mode among a plurality of modes is encoded in the bitstream, and a computer-readable recording medium.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20170007351 | 2017-01-16 | ||
KR1020170007351 | 2017-01-16 | ||
KR1020180005412A KR102670040B1 (en) | 2017-01-16 | 2018-01-16 | Method and apparatus for encoding/decoding a video signal |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180005412A Division KR102670040B1 (en) | 2017-01-16 | 2018-01-16 | Method and apparatus for encoding/decoding a video signal |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240078641A true KR20240078641A (en) | 2024-06-04 |
Family
ID=63058934
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180005412A KR102670040B1 (en) | 2017-01-16 | 2018-01-16 | Method and apparatus for encoding/decoding a video signal |
KR1020240067161A KR20240078641A (en) | 2017-01-16 | 2024-05-23 | Method and apparatus for encoding/decoding a video signal |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180005412A KR102670040B1 (en) | 2017-01-16 | 2018-01-16 | Method and apparatus for encoding/decoding a video signal |
Country Status (1)
Country | Link |
---|---|
KR (2) | KR102670040B1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102517444B1 (en) * | 2020-11-27 | 2023-04-03 | 한국전자기술연구원 | Apparatus and method for intra mode prediction of multi view or multi layer video |
WO2022119301A1 (en) * | 2020-12-01 | 2022-06-09 | 현대자동차주식회사 | Method and device for video coding using intra prediction |
WO2023055167A1 (en) * | 2021-10-01 | 2023-04-06 | 엘지전자 주식회사 | Intra prediction mode derivation-based intra prediction method and device |
WO2023128703A1 (en) * | 2021-12-30 | 2023-07-06 | 엘지전자 주식회사 | Intra-prediction method and device based on intra-prediction mode derivation |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100642043B1 (en) * | 2001-09-14 | 2006-11-03 | 가부시키가이샤 엔티티 도코모 | Coding method, decoding method, coding apparatus, decoding apparatus, image processing system, coding program, and decoding program |
WO2016072775A1 (en) * | 2014-11-06 | 2016-05-12 | 삼성전자 주식회사 | Video encoding method and apparatus, and video decoding method and apparatus |
-
2018
- 2018-01-16 KR KR1020180005412A patent/KR102670040B1/en active IP Right Grant
-
2024
- 2024-05-23 KR KR1020240067161A patent/KR20240078641A/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
KR102670040B1 (en) | 2024-05-28 |
KR20180084664A (en) | 2018-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102518242B1 (en) | Encoding And Decoding Methods For Video Information | |
KR102560809B1 (en) | Method and apparatus for encoding/decoding image and recording medium for storing bitstream | |
CN109328461B (en) | Video signal encoding/decoding method and apparatus | |
US11533470B2 (en) | Method and apparatus for encoding/decoding an image signal | |
KR20220054572A (en) | Method and apparatus for encoding/decoding image and recording medium for storing bitstream | |
KR20220080062A (en) | Method and apparatus for encoding and decoding using selective information sharing over channels | |
KR102619133B1 (en) | Method and apparatus for encoding/decoding image and recording medium for storing bitstream | |
KR20190067732A (en) | Method and apparatus for encoding and decoding using selective information sharing over channels | |
KR20240078641A (en) | Method and apparatus for encoding/decoding a video signal | |
KR20220098114A (en) | Image encoding method/apparatus, image decoding method/apparatus and and recording medium for storing bitstream | |
KR102435493B1 (en) | Method and apparatus for encoding/decoding a video signal | |
CN116915988A (en) | Video signal encoding/decoding method and apparatus | |
KR20240031287A (en) | Method and apparatus for encoding/decoding a video signal | |
KR102365937B1 (en) | Method and apparatus for encoding/decoding a video signal | |
KR20220024390A (en) | Method and apparatus for encoding/decoding a video signal | |
KR102610188B1 (en) | Method of video processing providing high-throughput arithmetic coding and method and appratus for decoding and encoding video using the processing | |
KR20240001677A (en) | Method and apparatus for encoding/decoding image and recording medium for storing bitstream |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent |