KR20230029717A - Method for decoding a video partitioned block - Google Patents

Method for decoding a video partitioned block Download PDF

Info

Publication number
KR20230029717A
KR20230029717A KR1020230019186A KR20230019186A KR20230029717A KR 20230029717 A KR20230029717 A KR 20230029717A KR 1020230019186 A KR1020230019186 A KR 1020230019186A KR 20230019186 A KR20230019186 A KR 20230019186A KR 20230029717 A KR20230029717 A KR 20230029717A
Authority
KR
South Korea
Prior art keywords
block
subblocks
sub
coding
encoding
Prior art date
Application number
KR1020230019186A
Other languages
Korean (ko)
Inventor
김문철
이범식
김재일
박창섭
함상진
조인준
이근식
김병선
Original Assignee
한국과학기술원
한국방송공사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020190174503A external-priority patent/KR102258057B1/en
Application filed by 한국과학기술원, 한국방송공사 filed Critical 한국과학기술원
Priority to KR1020230019186A priority Critical patent/KR20230029717A/en
Publication of KR20230029717A publication Critical patent/KR20230029717A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock

Abstract

In accordance with one embodiment, provided is a method for decoding a video-split block. The method includes the following steps of: splitting a coding unit block in a slice into four first subblocks; splitting at least one of the split first subblocks into two second subblocks, wherein a prediction mode for the second subblocks has an intra prediction mode or an inter prediction mode; splitting first subblocks, which are not split into the second subblocks, of the split first subblocks into four third subblocks, wherein a prediction mode for the third subblocks has an intra prediction mode or an inter-prediction mode; performing prediction on the second subblocks according to the prediction mode for each of the second subblocks, and performing prediction on the third subblocks according to the prediction mode for each of the third subblocks; and converting at least one of the second subblocks and at least one of the third subblocks, wherein the second or third subblocks are individually converted by conversion kernels of variable sizes, wherein the conversion kernels of variable sizes are selected based on sizes of subblocks corresponding to the kernels, respectively, wherein the selected conversion kernels of variable sizes are equal to or smaller than the sizes of the subblocks corresponding to the kernels, respectively, wherein the second subblocks are rectangular blocks. Therefore, the present invention is capable of increasing encoding efficiency by increasing the flexibility of encoding mode selection.

Description

비디오 분할 블록의 복호화 방법{Method for decoding a video partitioned block}Method for decoding a video partitioned block}

본 발명은 비디오 부호화 및 복호화에서 입력화면을 블록단위로 나누고 분할된 블록을 화면내 및 화면간 예측 부호화를 동시에 사용하여 부호화할 수 있는 방법과 복호화할 수 있는 방법에 관한 것으로, 특히 부호화 효율을 향상 향상시킬 수 있으며, 분할 블록의 크기에 따라 정방형(squared) 변환 또는 비정방형(non-squared) 변환을 이용하여 블록 영상 신호를 부호화함으로써 부호화 효율을 더욱 향상 시킬 수 있도록 한 비디오 부호화에서 화면간 및 화면내 예측을 통한 분할 블록 부호화 및 복호화 방법에 관한 것이다.The present invention relates to a method of dividing an input picture into blocks in video encoding and decoding and encoding and decoding the divided blocks by simultaneously using intra- and inter-prediction encoding, and particularly improves encoding efficiency. Inter-screen and screen-to-screen video encoding, which can be improved, and the encoding efficiency can be further improved by encoding block image signals using squared transformation or non-squared transformation according to the size of the partition block. It relates to a split block encoding and decoding method through intraprediction.

ISO/IEC와 ITU-T에서 공동으로 표준화한 비디오 압축 부호화에 기술인 ISO/IEC 14496-10(MPEG-4 Part 10 Advanced Video Coding) 또는 H.264 및 ISO/IEC 14496-10 어멘드먼트(Amendment) 3(MPEG-4 Scalable Video Coding) 규격, SMPTE 표준인 VC-1, 이밖에 오디오 비디오 코딩 표준(Audio Video coding Standrad, AVS) 규격 등은 비디오 데이터 압축 효율에 있어 많은 전진을 이루었다. ISO/IEC 14496-10 (MPEG-4 Part 10 Advanced Video Coding) or H.264 and ISO/IEC 14496-10 Amendment, a technology for video compression coding jointly standardized by ISO/IEC and ITU-T 3 (MPEG-4 Scalable Video Coding) standard, SMPTE standard VC-1, and other Audio Video coding Standard (AVS) standards have made great progress in video data compression efficiency.

이렇게 비디오 압축 효율의 향상 요인은 여러 가지가 있을 수 있으나, 특히 기존의 비디오 부호화 표준들(MPEG-1 Video, MPEG-2 Video, MPEG-4 Part 2 Visual, H.261, H.263 등)이 부호화하고자 하는 화면의 크기를 매크로 블록(16×16 픽셀) 단위로 분할한 후 이를 예측 부호화 하는 것과는 달리, 매크로 블록을 16×16, 16×8, 8×16, 8×8, 8×4, 4×8, 4×4 단위로 더욱 세분화하여 분할하고 이들 하위 블록에 대해 예측 부호화를 수행하고 율-왜곡 비용의 관점에서 비용 최소화를 발생시키는 블록을 최적의 블록모드로 하여 부호화한다. There can be many factors to improve video compression efficiency, but in particular, existing video encoding standards (MPEG-1 Video, MPEG-2 Video, MPEG-4 Part 2 Visual, H.261, H.263, etc.) Unlike predictive encoding after dividing the size of the screen to be encoded into macroblocks (16×16 pixels), macroblocks are divided into 16×16, 16×8, 8×16, 8×8, 8×4, It is further subdivided into 4×8 and 4×4 units, predictive encoding is performed on these sub-blocks, and a block that generates cost minimization in terms of rate-distortion cost is encoded as an optimal block mode.

이렇게 함으로써 미세한 움직임이나 복잡한 영상의 움직임 예측을 보다 효과적으로 수행하며, 발생되는 잔차 신호를 크게 줄임으로써 압축 효율을 크게 향상시킬 수 있다. In this way, it is possible to more effectively perform minute motion or motion prediction of complex images, and significantly improve compression efficiency by greatly reducing generated residual signals.

도 1은 종래 H.264|AVC 부호화기에서 부호화를 위한 16×16 매크로블록 단위 블록의 분할 블록 타입을 도시한 도면으로서, H.264에서 사용되는 7가지의 움직임 예측 블록 분할 타입이 도시되어 있다. 1 is a diagram showing split block types of a 16×16 macroblock unit block for encoding in a conventional H.264|AVC encoder, and shows seven types of motion prediction block split types used in H.264.

도 1에 도시된 바와 같이, 통상적으로 블록기반 예측 부호화 방식은 입력 영상을 16×16 크기의 매크로 블록 단위로 분할하여 부호화한다. 특히, ISO/IEC 14496-10(MPEG-4 Advanced Video Coding) 또는 H.264 규격에서는 도 1와 같이 매크로 블록을 7가지의 하위 블록으로 분할하여 율-왜곡 비용을 최소화하는 블록을 최종 선택하여 예측 부호화를 수행한다. As shown in FIG. 1, block-based predictive coding typically encodes an input image by dividing it into 16×16 macroblock units. In particular, in the ISO/IEC 14496-10 (MPEG-4 Advanced Video Coding) or H.264 standard, a macroblock is divided into 7 sub-blocks as shown in FIG. 1, and a block that minimizes rate-distortion cost is finally selected and predicted. perform encoding.

부호화하고자 하는 16×16 매크로 블록에 대해 분할된 하위블록들은 화면내 부호화를 수행할 경우, 매크로 블록은 16×16 픽셀 단위 하나의 크기로 화면내 예측 부호화가 수행되거나, 하위블록으로 분할되어 4개의 8×8 블록의 화면내 예측 부호화 수행, 또는 16개의 4×4 블록의 화면내 예측 부호화를 수행한다. When intra-coding is performed on the sub-blocks divided into 16×16 macroblocks to be encoded, intra-prediction encoding is performed on the macroblocks in units of one 16×16 pixel unit, or sub-blocks are divided into 4 sub-blocks. Intra-prediction encoding of an 8×8 block or intra-prediction encoding of 16 4×4 blocks is performed.

일반적으로 저해상도의 비디오 부호화에서는 이러한 화면내 예측 부호화 기법이 여러 블록 모드의 경우의 수를 줄이는 측면에서 부호화 효율이 있으나, 고해상도(HD: High Definition)나 초고해상도(UHD: Ultra High Definition) 비디오 부호화에 있어서는 문제가 있다. 즉, 부호화 단위 블록인 16×16 매크로블록을 확장한 32×32 또는 그 이상의 크기를 갖는 수퍼 매크로 블록의 경우에는 기존의 방법과 같이 수퍼 매크로블록 내의 분할된 모든 블록의 모드를 16×16, 8×8, 또는 4×4 블록 기반의 동일한 화면내 예측을 적용하면 부호화 효율을 떨어뜨리는 결과를 초래한다. In general, in low-resolution video encoding, this intra-prediction encoding technique has coding efficiency in terms of reducing the number of block mode cases, but it is not suitable for high-definition (HD) or ultra-high definition (UHD) video encoding. there is a problem with That is, in the case of a super macroblock having a size of 32×32 or larger by extending a 16×16 macroblock, which is a coding unit block, the modes of all divided blocks within the super macroblock are set to 16×16, 8 as in the conventional method. Applying the same intra prediction based on a ×8 or 4 × 4 block results in a decrease in coding efficiency.

다시 말하면, 종래 분할 블록기반 예측 부호화 방법에서 주목할 것은 분할된 블록이 모두 화면내 또는 화면간 예측 부호화를 통해서만 부호화된다는 것이다. 즉, 분할 블록 화면내 예측 부호화와 화면간 예측 부호화를 모두 적용하지 않고, 어느 하나의 방식만 선택하여 적용하고 있다는 것이다. 이는 화면내 또는 화면간 부호화 중 하나만을 적용함으로서 블록 부호화 모드를 표현하는 신택스의 단순화로 인해 HD 해상도 이하의 이미지 또는 비디오 압축에 있어는 부호화 효율의 이득이 있을 수 있으나, 부호화 단위가 매크로블록 이상의 수퍼 매크로 블록일 경우에는 부호화 효율을 떨어뜨리는 요인으로 작용할 수 있다.In other words, what is noteworthy in the conventional split block-based predictive encoding method is that all of the split blocks are coded only through intra- or inter-prediction encoding. That is, both intra-prediction encoding and inter-prediction encoding of a split block screen are not applied, and only one method is selected and applied. This is due to the simplification of the syntax expressing the block coding mode by applying only one of intra- or inter-screen coding, so there may be a gain in coding efficiency in image or video compression of HD resolution or lower, but the coding unit is a macroblock or larger superblock. In the case of a macro block, it may act as a factor that reduces encoding efficiency.

본 발명은 전술한 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 비디오 부호화 시에 분할된 블록의 하위 분할블록들에 대해 화면내 또는 화면간 예측부호화 선택 방식을 확장하여 화면내 및 화면간 예측 부호화 모드를 모두 선택 가능하도록 확장하며 분할된 블록의 움직임 보상 후의 잔차신호에 대해 블록 크기에 따른 정방형 또는 비정방형 변환 커널을 선택적으로 적용하여 부호화를 수행하여 보다 효과적인 예측 부호화방법을 제공하는데 그 목적이 있다.The present invention has been devised to solve the above-described problems, and intra- and inter-prediction coding is performed by extending an intra- or inter-prediction coding selection method for sub-blocks of a block divided during video encoding of the present invention. The purpose is to provide a more effective predictive encoding method by extending all modes to be selectable and performing encoding by selectively applying a square or non-square transformation kernel according to the block size to the residual signal after motion compensation of the divided block. .

또한, 본 발명의 다른 목적은 상기 방법이 구현된 컴퓨터에서 읽을 수 있는 기록매체를 제공하는 것이다. Another object of the present invention is to provide a computer-readable recording medium in which the above method is implemented.

이와 같은 목적을 달성하기 위한 본 발명은 입력화면을 부호화 단위 블록으로 분할하고, 상기 부호화 단위 블록을 하위 블록으로 분할하고, 상기 각 하위 분할 블록을 화면내 예측 부호화 또는 화면간 예측 부호화 중에서 하나를 선택하여 부호화한다. In order to achieve the above object, the present invention divides an input picture into coding unit blocks, divides the coding unit blocks into sub-blocks, and selects one of intra-prediction coding and inter-prediction coding for each sub-division block. to encode

일 실시예는 인코딩된 비디오 데이터의 비디오 데이터 시퀀스를 수신하는 단계, 여기서, 상기 비디오 데이터 시퀀스는 슬라이를 포함하고, 상기 슬라이스는 코딩 유닛 블록을 포함하고, 여기서, 상기 코딩 블록 들은 제 1 서브 코딩 유닛 블록들로 분할되고, 상기 제 1 서브 코딩 유닛 블록들 중 적어도 하나는 제 2 서브 코딩 유닛 블록들로 분할되고, 및 상기 제 1 서브 코딩 유닛 블록들 또는 상기제 2 서브 코딩 유닛 블록들 중 어느 하나는 스퀘어 블록(square block)이고; 상기 제 1 서브 코딩 유닛 블록들 또는 상기제 2 서브 코딩 유닛 블록들 중 어느 하나의 서브 코딩 유닛 블록에 대응되는 코딩 모드를 디코딩하는 단계; 상기 디코딩된 코딩 모드에 기초하여 상기 코딩 모드에 대응되는 상기 서브 코딩 유닛 블록에 대해 인트라 예측 또는 인터 예측을 수행하는 단계; 및 상기 코딩 모드에 대응되는 상기 서브 코딩 유닛 블록의 레지듀얼 데이터를 변환하는 단계, 여기서, 가변 크기의 변환 커널들 중 어느 하나의 변환 커널이, 상기 코딩 모드에 대응되는 상기 서브 코딩 유닛 블럭에 적용되고, 및 여기서, 상기 적용되는 변환 커널은 상기 코딩 모드에 대응되는 상기 서브 코딩 유닛 블록의 크기에 따라 선택되는, 비디오 분할 블록의 복호화 방법을 제공한다.An embodiment comprises receiving a video data sequence of encoded video data, wherein the video data sequence comprises a slice, and the slice comprises coding unit blocks, wherein the coding blocks comprise a first sub-coding unit blocks, at least one of the first sub coding unit blocks is divided into second sub coding unit blocks, and either the first sub coding unit blocks or the second sub coding unit blocks is a square block; decoding a coding mode corresponding to any one of the first sub coding unit blocks and the second sub coding unit blocks; performing intra prediction or inter prediction on the sub coding unit block corresponding to the coding mode based on the decoded coding mode; and transforming residual data of the sub coding unit block corresponding to the coding mode, wherein one of transform kernels having variable sizes is applied to the sub coding unit block corresponding to the coding mode. and here, the applied transform kernel is selected according to the size of the sub coding unit block corresponding to the coding mode.

본 발명은 비디오 부호화에서 부호화 단위 블록 화소값을 부호화함에 있어서, 분할된 하위 블록 또는 그 하위 분할 블록들에 대해 화면내 예측 부호화와 화면간 예측 부호화를 하나 이상 적용하여 부호화함으로써 분할된 하위 블록들이 화면내 또는 화면간 예측 부호화 모드로 부호화 될 수 있도록 하여 부호화 단위 블록 또는 그 하위 분할 블록이 화면내 및 화면간 예측이 모두 사용되어 예측 부호화 되게 함으로써 부호화 모드 선택의 유연성이 증대되어 부호화 효율이 증가 되는 효과가 있다. In the present invention, in encoding a coding unit block pixel value in video encoding, at least one intra-prediction encoding and inter-prediction encoding is applied to a divided sub-block or its sub-division blocks, and encoding is performed so that the divided sub-blocks are displayed on the screen. By enabling encoding in intra- or inter-prediction coding mode, coding unit blocks or subdivision blocks thereof are predictive-encoded by using both intra- and inter-prediction, thereby increasing flexibility in selection of coding modes, thereby increasing coding efficiency. there is

또한, 본 발명에서는 분할 블록 기반 예측 부호화에 있어, 각 분할 블록이 하부의 세부 분할 블록들에 대해 화면내 예측과 화면간 예측을 모두 적용할 수 있도록 하고 분할된 블록의 크기에 따라 선택적으로 가변 변환 커널(variable block-size transform kernel) 크기를 적용하여 부호화를 수행함으로써 부호화 효율을 크게 향상시킬 수 있는 효과가 있다. In addition, in the present invention, in the split block-based prediction encoding, each split block can apply both intra prediction and inter prediction to sub-division blocks, and selectively variable transform according to the size of the split block. Encoding is performed by applying the size of a variable block-size transform kernel (KERN), thereby greatly improving the encoding efficiency.

도 1은 종래 H.264|AVC 부호화기에서 부호화를 위한 16×16 매크로블록 단위 블록의 분할 블록 타입을 도시한 도면.
도 2는 본 발명의 일 실시예에 따른 부호화기에서 화면내 또는 화면간 예측 부호화를 위한 수퍼 매크로블록 단위 블록 및 분할 블록 타입을 예시한 도면.
도 3은 본 발명의 일 실시예에 따른 비디오 부호화에서의 분할 블록 부호화 방법을 도시한 흐름도.
도 4는 본 발명의 일 실시예에 따른 비디오의 분할 블록 방법으로 부호화된 비트스트림을 복호화 하는 방법을 도시한 흐름도.
1 is a diagram showing partition block types of a 16×16 macroblock unit block for encoding in a conventional H.264|AVC encoder;
2 is a diagram illustrating super macroblock unit blocks and split block types for intra- or inter-prediction encoding in an encoder according to an embodiment of the present invention;
3 is a flowchart illustrating a partition block encoding method in video encoding according to an embodiment of the present invention.
4 is a flowchart illustrating a method of decoding a bitstream encoded by a video division block method according to an embodiment of the present invention.

이하, 첨부된 도면을 참조해서 본 발명의 실시예를 상세히 설명하면 다음과 같다. 우선 각 도면의 구성 요소들에 참조 부호를 부가함에 있어서, 동일한 구성 요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 그리고, 본 발명을 설명함에 있어서, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. First, in adding reference numerals to components of each drawing, it should be noted that the same components have the same numerals as much as possible, even if they are displayed on different drawings. And, in describing the present invention, if it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description will be omitted.

도 2는 본 발명의 일 실시예에 따른 부호화기에서 화면내 또는 화면간 예측 부호화를 위한 수퍼 매크로블록 단위 블록 및 분할 블록 타입을 예시한 도면이다. 도 2는 본 발명의 일 실시예에서 적용된 16×16 픽셀단위 매크로 블록 크기 이상의 수퍼 매크로 블록 및 블록 분할 타입의 일 예를 나타낸 도면이다. 2 is a diagram illustrating super macroblock unit blocks and split block types for intra or inter prediction encoding in an encoder according to an embodiment of the present invention. 2 is a diagram showing an example of a super macroblock having a macroblock size of 16×16 pixels or larger and a block division type applied in an embodiment of the present invention.

도 2에서 보는 바와 같이, 수퍼 매크로 블록을 하위 블록으로 분할하고 각 분할된 블록에 화면내 또는 화면간 예측 부호화 과정이 수행되어 수퍼매크로 블록은 최종 부호화 모드가 화면내 또는 화면간 예측 부호화 모드가 혼용될 수 있도록 부호화가 수행되게 함으로써 영상의 부호화 효율을 매우 효과적으로 증가 시킬 수 있다. 실제 부호화시에 수학식 1에서와 같이 율-왜곡 비용을 최소화 하는 블록 모드(Mode)를 선택하여 부호화 할 수 있다. As shown in FIG. 2, the super macro block is divided into sub-blocks, and intra- or inter-prediction encoding processes are performed on each divided block, so that the super macro block uses both intra- and inter-prediction encoding modes in the final encoding mode. By enabling encoding to be performed, the encoding efficiency of the image can be increased very effectively. In actual encoding, as shown in Equation 1, it is possible to select and encode a block mode that minimizes rate-distortion cost.

Figure pat00001
Figure pat00001

여기서, JMODE는 블록 부호화 모드에 대한 율-왜곡 함수이며, s는 부호화 하고자 하는 원 블록 픽셀 입력이며, r은 참조 영상 픽셀 입력이며, QP는 양자화 파라미터이고,

Figure pat00002
는 모드에 의존적인 라그랑지안 승수이고, MODE는 분할 블록 모드 타입을 나타낸다.Here, J MODE is the rate-distortion function for the block coding mode, s is the original block pixel input to be encoded, r is the reference image pixel input, QP is the quantization parameter,
Figure pat00002
is a mode-dependent Lagrangian multiplier, and MODE represents a partition block mode type.

뿐만 아니라 크기가 증가된 수퍼 매크로 블록의 잔차 신호에 대해 변환 부호화(transform coding)를 적용할 경우 기존의 4x4와 8x8 보다 큰 16x16 또는 그 이상 크기의 정방형 변환 커널, 또는 비정방형 변환을 위한 16x8, 또는 8x16, 또는 그 이상 크기의 비정방형 변환 커널을 분할 블록의 크기에 따라 선택적으로 적용하여 부호화 효율을 증가 시킬 수 있다.In addition, when transform coding is applied to the residual signal of the super macroblock whose size is increased, a 16x16 or larger square transform kernel larger than the existing 4x4 and 8x8, or a 16x8 for non-square transform, or Encoding efficiency can be increased by selectively applying an 8x16 or larger non-square transformation kernel according to the size of the partition block.

수퍼매크로 블록에 16x16 또는 그 이상 크기의 정방형 변환 커널을 적용할 경우, 수학식 2와 같이 계산할 수 있다.When a 16x16 or larger square transformation kernel is applied to the super macro block, it can be calculated as shown in Equation 2.

Figure pat00003
Figure pat00003

여기서 X는 NxN 입력 영상 신호 매트릭스를 나타내고, A는 NxN 정방형 변환 커널 매트릭스를, Y는 변환 계수 매트릭스를 나타낸다. 만약 분할된 하위 블록이 비정방형 블록일 경우, 수학식 3과 같이 변환을 수행한다.Here, X represents an NxN input video signal matrix, A represents an NxN square transform kernel matrix, and Y represents a transform coefficient matrix. If the divided sub-block is a non-square block, transformation is performed as shown in Equation 3.

Figure pat00004
Figure pat00004

여기서, 입력 영상 신호 X가 Mx(M/2) 매트릭스일 경우 A1는 MxM 정방형 변환 커널 매트릭스를, A2는 (M/2)x(M/2) 정방형 변환 커널 매트릭스를 나타내며, Y는 변환 계수 매트릭스를 나타낸다.Here, when the input video signal X is an Mx(M/2) matrix, A 1 represents an MxM square transform kernel matrix, A 2 represents a (M/2)x(M/2) square transform kernel matrix, and Y represents a transform represents the coefficient matrix.

본 발명의 일 실시예에서 정방형 또는 비정방형 커널 변환을 적용할 경우 분할 블록의 가로 또는 세로 화소수 둘 중 작은 화소수와 비교하여 크기가 같거나 작은 커널을 적용하여 변환 부호화를 수행하는 것이 바람직하다.In an embodiment of the present invention, when a square or non-square kernel transformation is applied, it is preferable to perform transform encoding by applying a kernel having the same or smaller size as compared to the smaller number of horizontal or vertical pixels of a partition block. .

도 3은 본 발명의 일 실시예에 따른 비디오 부호화에서의 분할 블록 부호화 방법을 도시한 흐름도이다. 3 is a flowchart illustrating a partition block encoding method in video encoding according to an embodiment of the present invention.

도 3을 참조하여 설명하면, 먼저, 부호화를 위한 화면(i) 순서를 초기화(i=0)한다(S101). 그리고, 부호화를 위해 순서에 맞게 화면(i)을 입력한다(S102). Referring to FIG. 3, first, the order of screen i for encoding is initialized (i=0) (S101). Then, the screen i is input in order for encoding (S102).

다음, 입력된 화면(i)을 부호화 단위 블록으로 분할한다(S103). 본 발명의 일 실시예에서 부호화 단위 블록은 매크로 블록 또는 수퍼 매크로 블록이 될 수 있다. Next, the input screen i is divided into coding unit blocks (S103). In an embodiment of the present invention, a coding unit block may be a macro block or a super macro block.

다음, 현재의 화면(i)이 화면간 예측부호화를 수행할 것인지를 확인한다(S104). 현재의 화면(i)이 화면간 예측이 아닌 경우 화면내 예측 부호화를 수행하고(S105), 그렇지 않고 현재의 화면(i)이 화면간 예측인 경우에는 한 화면(i)내에서 부호화되는 부호화 단위 블록(j)의 순서를 초기화(j=0)한다(S106).Next, it is checked whether the current screen (i) is to be inter-prediction-encoded (S104). If the current picture (i) is not inter-prediction, intra-prediction encoding is performed (S105). Otherwise, if the current picture (i) is inter-prediction, a coding unit that is encoded within one picture (i) The order of block (j) is initialized (j = 0) (S106).

이후에, 부호화하고자 하는 단위 블록(j)에 대해 하위 블록으로 분할한다(S107). 그리고 하위 블록 모드(k)의 순서를 초기화(k=0)한다(S108). 하위 블록 모드(k) 중에서 하나의 블록 모드를 선택한다(S109). Thereafter, the unit block (j) to be encoded is divided into sub-blocks (S107). Then, the order of the lower block mode (k) is initialized (k=0) (S108). One block mode is selected from the lower block modes (k) (S109).

부호화 단위 블록에서 부호화되는 하위 블록 모드에 대해 화면내 및 화면간 예측 수행 여부를 확인한다(S110). 화면간 및 화면내 예측을 수행할 경우 화면내 및 화면간 부호화를 수행하고(S111), 그렇지 않은 경우에는 화면간 예측 부호화만을 수행한다(S112). 그리고, 부호화 수행 결과인 예측 부호화 결과 및 율-왜곡 비용값을 저장한다(S113). It is checked whether intra- or inter-prediction is performed for the sub-block mode encoded in the coding unit block (S110). In the case of performing inter- and intra-prediction, intra- and inter-picture encoding is performed (S111), and otherwise, only inter-prediction encoding is performed (S112). Then, the prediction encoding result and the rate-distortion cost value, which are encoding results, are stored (S113).

하위 블록 모드(k)가 최종 블록모드인지 확인한다(S114). 하위 블록 모드(k)가 최종 블록모드가 아니면 다음 블록 모드에 대하여 S109 내지 S113 단계를 반복한다. 반면, 하위 블록 모드(k)가 최종 블록 모드이면 최적의 분할 블록 모드를 결정하고 해당 부호화 결과를 최종 선택한다(S115). It is checked whether the lower block mode (k) is the final block mode (S114). If the lower block mode (k) is not the final block mode, steps S109 to S113 are repeated for the next block mode. On the other hand, if the lower block mode (k) is the final block mode, the optimal split block mode is determined and the corresponding encoding result is finally selected (S115).

그리고, 현재 부호화 단위 블록(j)이 현재 화면(i)에서 최종 블록인지를 판별한다(S116). 현재 부호화 단위 블록(j)이 최종 블록이 아니면 다음 부호화 단위블록을 입력하여 S107 내지 S115 단계를 반복한다. Then, it is determined whether the current coding unit block (j) is the last block in the current screen (i) (S116). If the current coding unit block (j) is not the final block, the next coding unit block is input and steps S107 to S115 are repeated.

S116 단계에서 부호화 단위 블록(j)이 현재 화면(i)에서 최종 블록이면 현재 화면(i)이 최종 화면인지 확인한다(S117). 현재 화면(i)이 최종화면이면 알고리즘을 종료하고, 그렇지 않으면 S102 단계로 회귀하여 다음 화면을 입력하고 S102 내지 S116 단계를 반복한다. If the coding unit block (j) is the final block in the current screen (i) in step S116, it is checked whether the current screen (i) is the final screen (S117). If the current screen (i) is the final screen, the algorithm is terminated. Otherwise, the process returns to step S102, inputs the next screen, and repeats steps S102 to S116.

도 4는 본 발명의 본 발명의 일 실시예에 따른 비디오의 분할 블록 방법으로 부호화된 비트스트림을 복호화 하는 방법을 도시한 흐름도이다. 4 is a flowchart illustrating a method of decoding a bitstream encoded by a video division block method according to an embodiment of the present invention.

도 4를 참조하여 설명하면, 먼저, 복호화를 위한 화면(i) 순서를 초기화(i=0)한다(S201). 그리고, 복호화를 위해 순서에 맞게 화면부호화 비트스트림(i)을 입력한다(S202). Referring to FIG. 4, first, the order of screen i for decoding is initialized (i=0) (S201). Then, the screen encoding bitstream i is input in order for decoding (S202).

다음, 입력된 화면 비트스트림(i)이 화면간 예측 부호화인지를 확인한다(S203). 현재의 화면 비트스트림(i)이 화면간 예측 부호화가 아닌 경우 화면내 예측 복호화를 수행하고(S207), 그렇지 않고 현재의 입력 화면 비트스트림(i)이 화면간 예측인 부호화인 경우에는 한 화면(i)내에서 복호화되는 슬라이스(j)의 순서를 초기화(j=0)한다(S204).Next, it is checked whether the input screen bitstream (i) is inter prediction encoding (S203). If the current screen bitstream (i) is not inter-predictive coding, intra-prediction decoding is performed (S207), otherwise, if the current input screen bitstream (i) is inter-prediction coding, one screen ( The order of slice j to be decoded in i) is initialized (j=0) (S204).

다음, 입력 화면 비트스트림에 대해 슬라이스 정보를 해석한다(S205). 한 화면(i)내에서 각 슬라이스 내에서 복호화되는 단위 복호화 블록(j)의 순서를 초기화(k=0)한다(S206). 본 발명의 일 실시예에서 복호화 단위 블록은 매크로 블록 또는 수퍼 매크로 블록이 될 수 있다. Next, slice information is analyzed for the input screen bitstream (S205). The order of unit decoding blocks j to be decoded in each slice within one screen i is initialized (k=0) (S206). In an embodiment of the present invention, a decoding unit block may be a macro block or a super macro block.

다음, 각 단위 부호화 블록 정보를 해석한 후(S208), 단위 부호화 블록 내의 하위 분할 블록의 순서를 초기화(m=0)한다 (S209). 이후, 단위 부호화 블록 내의 하위 분할 블록의 부호화 모드를 복호화 한다(S210). 하위 분할 블록이 화면간 예측 부호화 블록인지 확인 한 후(S211), 화면간 예측 부호화 블록이면 화면간 예측 복호화를 수행하고(S213), 화면내 예측 부호화 블록이면 모드이면 화면내 예측 부호화를 수행한다(S212). Next, after analyzing each unit coded block information (S208), the order of lower division blocks in the unit coded block is initialized (m=0) (S209). Thereafter, the encoding mode of the subdivision block within the unit coding block is decoded (S210). After checking whether the lower division block is an inter prediction coding block (S211), if it is an inter prediction coding block, inter prediction decoding is performed (S213), and if it is an intra prediction coding block, intra prediction coding is performed if it is a mode (S213). S212).

이후, 하위 분할 블록 복호화 결과를 이용하여 하위 분할 블록 화소값을 복원한다 (S214). 이후, 현재 하위 분할블록(m)이 최종 블록인지를 확인한 후(S215), 최종 하위 분할 블록이면 단위 복호화 블록 화소값을 구성하고(S216), 그렇지 않으면 다음 하위 분할 블록에 대한 복호화를 위해 S210 단계로 회귀하여 S210 단계 내지 S214 단계를 수행한다. Subsequently, sub-division block pixel values are restored using the sub-division block decoding result (S214). Then, after checking whether the current sub-division block (m) is the final block (S215), if it is the final sub-division block, unit decoding block pixel values are configured (S216), and if not, step S210 for decoding the next sub-division block. Return to and perform steps S210 to S214.

이후, 현재 단위 부호화 블록(k)이 최종 단위 부호화 블록인지를 확인한 후(S217), 최종 단위부호화 블록이면 슬라이스 화소를 구성하고(S218), 그렇지 않으면 S208 단계로 회귀하여 S208단계 내지 S216 단계를 수행한다. 이후, 현재 슬라이스(j)가 최종 슬라이스 인지 확인한 후(S219), 최종 슬라이스이면 화면 화소를 구성하고(S220), 그렇지 않으면, S205 내지 S218단계를 수행한다. 이후, 현재 화면(i)이 최종 화면인지 판정 한 후(S221), 최종 화면이면 종료하고 그렇지 않으면 S202 단계로 회귀하여 다음 화면 비트스트림을 입력하고 S202 단계 내지 S220 단계를 수행한다. Thereafter, after checking whether the current unit coding block (k) is the final unit coding block (S217), if it is the final unit coding block, a slice pixel is formed (S218). Otherwise, the process returns to step S208 and steps S208 to S216 are performed. do. Thereafter, after checking whether the current slice (j) is the final slice (S219), screen pixels are configured if the current slice (j) is the final slice (S220), and if not, steps S205 to S218 are performed. Thereafter, after determining whether the current screen (i) is the final screen (S221), if it is the final screen, it is terminated.

본 발명의 실시예에 따른 비디오 부호화에서 입력영상을 부호화 단위 블록으로 분할하고, 부호화 단위 블록을 다시 하위 블록으로 분할 한 후, 각 하위 분할 블록을 부호화함에 있어 화면내 예측과 화면간 예측 중 하나 이상을 선택적으로 사용하여 부호화를 수행한다.In video encoding according to an embodiment of the present invention, an input image is divided into coding unit blocks, the coding unit blocks are further divided into sub-blocks, and then at least one of intra-prediction and inter-prediction is performed in encoding each sub-division block. Encoding is selectively performed using

이렇게 함으로써 부호화 단위 블록의 부호화 모드가 화면간 예측과 화면내 예측 하위 분할 블록 모드로 혼용하여 부호화 할 수 있고, 동시에 분할 블록에 따라 가변 커널 변환을 선택적으로 적용함으로써 부호화 효율을 향상 시킬 수 있다. In this way, the coding mode of the coding unit block can be coded by mixing inter-prediction and intra-prediction sub-division block modes, and at the same time, the coding efficiency can be improved by selectively applying a variable kernel transform according to the division block.

뿐만 아니라 본 발명의 실시예에 따른 비디오 복호화는 부호화 과정의 역과정을 수행함으로써 향상된 부호화 효율을 갖는 압축 비트스트림의 복호화를 수행 할 수 있다.In addition, video decoding according to an embodiment of the present invention can decode a compressed bitstream with improved coding efficiency by performing a reverse process of the coding process.

본 발명의 다른 실시예로서, 이상에서 설명한 비디오 부호화에서의 하위 분할 블록 부호화 방법을 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로써 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다.As another embodiment of the present invention, it is possible to implement the subdivision block encoding method in video encoding described above as computer readable code on a computer readable recording medium. A computer-readable recording medium includes all types of recording devices in which data that can be read by a computer system is stored.

예컨대, 컴퓨터가 읽을 수 있는 기록매체로는 롬(ROM), 램(RAM), 시디-롬(CD-ROM), 자기 테이프, 하드디스크, 플로피디스크, 이동식 저장장치, 비휘발성 메모리(Flash Memory), 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함된다.For example, computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, hard disk, floppy disk, removable storage device, and non-volatile memory. , optical data storage devices, and the like, and also includes those implemented in the form of carrier waves (eg, transmission through the Internet).

또한, 컴퓨터로 읽을 수 있는 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.In addition, the computer-readable recording medium may be distributed to computer systems connected through a computer communication network, and stored and executed as readable codes in a distributed manner.

전술한 본 발명에 따른 비디오 부호화에서 화면내 예측 부호화 방법 및/또는 화면간 예측 부호화 방법에 대한 바람직한 실시예에 대한 설명과 이의 역과정인 복호화 방법에 대해여 설명하였지만, 이들 실시예는 예시적인 것이며 한정적인 것이 아니다. 본 발명이 속하는 기술분야에서 통상의 지식을 지닌 자라면 본 발명의 사상과 첨부된 특허청구범위에 제시된 권리범위에서 벗어나지 않으면서 다양한 변화와 수정을 가할 수 있음을 이해할 것이다.In the video encoding according to the present invention described above, descriptions of preferred embodiments of the intra prediction coding method and/or inter prediction coding method and the decoding method, which is the reverse process thereof, have been described, but these embodiments are exemplary and It is not limiting. Those skilled in the art to which the present invention pertains will understand that various changes and modifications can be made without departing from the spirit of the present invention and the scope of rights set forth in the appended claims.

Claims (1)

인코딩된 비디오 데이터의 비디오 데이터 시퀀스를 수신하는 단계,
여기서, 상기 비디오 데이터 시퀀스는 슬라이를 포함하고, 상기 슬라이스는 코딩 유닛 블록을 포함하고,
여기서, 상기 코딩 유닛 블록은 제 1 서브 코딩 유닛 블록들로 분할되고,
상기 제 1 서브 코딩 유닛 블록들 중 적어도 하나는 제 2 서브 코딩 유닛 블록들로 분할되고, 및
상기 제 1 서브 코딩 유닛 블록들 또는 상기 제 2 서브 코딩 유닛 블록들 중 어느 하나는 스퀘어 블록(square block)이고;
상기 제 1 서브 코딩 유닛 블록들 또는 상기 제 2 서브 코딩 유닛 블록들 중 어느 하나의 서브 코딩 유닛 블록에 대응되는 코딩 모드를 디코딩하는 단계;
상기 디코딩된 코딩 모드에 기초하여 상기 코딩 모드에 대응되는 상기 서브 코딩 유닛 블록에 대해 인트라 예측 또는 인터 예측을 수행하는 단계; 및
상기 코딩 모드에 대응되는 상기 서브 코딩 유닛 블록의 레지듀얼 데이터를 변환하는 단계,
여기서, 가변 크기의 변환 커널들 중 어느 하나의 변환 커널이, 상기 코딩 모드에 대응되는 상기 서브 코딩 유닛 블럭에 적용되고, 및
여기서, 상기 적용되는 변환 커널은 상기 코딩 모드에 대응되는 상기 서브 코딩 유닛 블록의 크기에 따라 선택되는, 비디오 분할 블록의 복호화 방법.
receiving a video data sequence of encoded video data;
Here, the video data sequence includes a slice, the slice includes a coding unit block,
Here, the coding unit block is divided into first sub coding unit blocks,
At least one of the first sub coding unit blocks is divided into second sub coding unit blocks, and
either of the first sub coding unit blocks or the second sub coding unit blocks is a square block;
decoding a coding mode corresponding to any one of the first sub-coding unit-blocks and the second sub-coding unit-blocks;
performing intra prediction or inter prediction on the sub coding unit block corresponding to the coding mode based on the decoded coding mode; and
converting residual data of the sub coding unit block corresponding to the coding mode;
Here, one of transform kernels of variable size is applied to the sub-coding unit block corresponding to the coding mode, and
Here, the applied transform kernel is selected according to the size of the sub coding unit block corresponding to the coding mode.
KR1020230019186A 2019-12-24 2023-02-14 Method for decoding a video partitioned block KR20230029717A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230019186A KR20230029717A (en) 2019-12-24 2023-02-14 Method for decoding a video partitioned block

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1020190174503A KR102258057B1 (en) 2018-05-04 2019-12-24 Method for decoding partitioned block in video decoding and recording medium implementing the same
KR1020210153895A KR102575827B1 (en) 2019-12-24 2021-11-10 Method for encoding a partitioned block in video coding
KR1020230019186A KR20230029717A (en) 2019-12-24 2023-02-14 Method for decoding a video partitioned block

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020210153895A Division KR102575827B1 (en) 2019-12-24 2021-11-10 Method for encoding a partitioned block in video coding

Publications (1)

Publication Number Publication Date
KR20230029717A true KR20230029717A (en) 2023-03-03

Family

ID=76372916

Family Applications (4)

Application Number Title Priority Date Filing Date
KR1020210066016A KR102422711B1 (en) 2019-12-24 2021-05-24 Method for decoding partitioned block in video decoding
KR1020210153895A KR102575827B1 (en) 2019-12-24 2021-11-10 Method for encoding a partitioned block in video coding
KR1020210153894A KR102398385B1 (en) 2019-12-24 2021-11-10 Method for encoding a partitioned block in video coding
KR1020230019186A KR20230029717A (en) 2019-12-24 2023-02-14 Method for decoding a video partitioned block

Family Applications Before (3)

Application Number Title Priority Date Filing Date
KR1020210066016A KR102422711B1 (en) 2019-12-24 2021-05-24 Method for decoding partitioned block in video decoding
KR1020210153895A KR102575827B1 (en) 2019-12-24 2021-11-10 Method for encoding a partitioned block in video coding
KR1020210153894A KR102398385B1 (en) 2019-12-24 2021-11-10 Method for encoding a partitioned block in video coding

Country Status (1)

Country Link
KR (4) KR102422711B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102422711B1 (en) * 2019-12-24 2022-07-20 한국과학기술원 Method for decoding partitioned block in video decoding

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102422711B1 (en) * 2019-12-24 2022-07-20 한국과학기술원 Method for decoding partitioned block in video decoding

Also Published As

Publication number Publication date
KR102398385B1 (en) 2022-05-16
KR102422711B1 (en) 2022-07-20
KR102575827B1 (en) 2023-09-07
KR20210064133A (en) 2021-06-02
KR20210138536A (en) 2021-11-19
KR20210138535A (en) 2021-11-19

Similar Documents

Publication Publication Date Title
JP7171646B2 (en) Divided block encoding method in video encoding, divided block decoding method in video decoding, and recording medium realizing the same
KR101250608B1 (en) Method for encoding partitioned block in video encoding
KR20230029717A (en) Method for decoding a video partitioned block
KR102062894B1 (en) Method for decoding partitioned block in video decoding and recording medium implementing the same
KR101644969B1 (en) Method for decoding partitioned block in video decoding and recording medium implementing the same
KR102258057B1 (en) Method for decoding partitioned block in video decoding and recording medium implementing the same
KR20110126567A (en) Method for encoding partitioned block in video encoding, method for decoding partitioned block in video decoding and recording medium implementing the same
KR101644970B1 (en) Method for decoding partitioned block in video decoding and recording medium implementing the same
KR101644967B1 (en) Method for decoding partitioned block in video decoding and recording medium implementing the same
KR101857583B1 (en) Method for decoding partitioned block in video decoding and recording medium implementing the same
KR101857598B1 (en) Method for decoding partitioned block in video decoding and recording medium implementing the same
KR101857591B1 (en) Method for decoding partitioned block in video decoding and recording medium implementing the same
KR101857600B1 (en) Method for decoding partitioned block in video decoding and recording medium implementing the same
KR101857585B1 (en) Method for decoding partitioned block in video decoding and recording medium implementing the same
KR101785431B1 (en) Method for decoding partitioned block in video decoding and recording medium implementing the same

Legal Events

Date Code Title Description
E902 Notification of reason for refusal