KR100951301B1 - Method of inter-frame/intra block predictive coding in video coding - Google Patents
Method of inter-frame/intra block predictive coding in video coding Download PDFInfo
- Publication number
- KR100951301B1 KR100951301B1 KR1020080012337A KR20080012337A KR100951301B1 KR 100951301 B1 KR100951301 B1 KR 100951301B1 KR 1020080012337 A KR1020080012337 A KR 1020080012337A KR 20080012337 A KR20080012337 A KR 20080012337A KR 100951301 B1 KR100951301 B1 KR 100951301B1
- Authority
- KR
- South Korea
- Prior art keywords
- encoding
- prediction
- block
- macro block
- motion model
- Prior art date
Links
Images
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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- 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/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 발명은 비디오 부호화에서의 화면간/화면내 예측 부호화 방법에 관한 것으로, 부호화 블록 단위를 16×16 매크로 블록보다 큰 크기로 이루어진 적어도 하나의 수퍼 매크로 블록으로 확장하고, 각 수퍼 매크로 블록을 다양한 크기의 하위 블록들로 분할하며, 각 수퍼 매크로 블록을 비롯한 분할된 하위 블록들에 대해 화면간 예측을 수행한 후, 그 중 어느 하나를 화면간 예측 부호화 결과로 선택하여 부호화함으로써, 부호화 효율을 향상 향상시킬 수 있으며, 기존의 블록 매칭을 이용한 부호화 방식뿐만 아니라 움직임 모델 기반의 픽셀 와핑(warping)을 이용하여 예측 정확도를 크게 향상시킴으로써 발생 잔차 신호의 양을 줄여 부호화 효율을 더욱 개선할 수 있는 효과가 있다.The present invention relates to an inter-screen / in-picture predictive coding method in video encoding, wherein a coding block unit is extended to at least one super macro block having a size larger than 16 × 16 macro blocks, and each super macro block is variously sized. After inter-prediction is performed on the divided sub-blocks including each super macro block and selects and encodes any one of them as the inter-prediction encoding result, thereby improving encoding efficiency. It is possible to improve the coding efficiency by reducing the amount of residual signal generated by greatly improving the prediction accuracy by using pixel warping based on motion model as well as the conventional coding method using block matching. .
H.264, AVC, 수퍼 매크로 블록, 블록 분할, 움직임 모델, 화면간 예측, 율-왜곡 비용, 부호화기 H.264, AVC, Super Macro Block, Block Segmentation, Motion Model, Inter-screen Prediction, Rate-Distortion Cost, Encoder
Description
본 발명은 비디오 부호화에서 수퍼 매크로 블록 또는 움직임 모델을 이용한 예측 부호화 방법에 관한 것으로, 기존의 16×16 픽셀 단위의 매크로 블록 이상으로 확장하고 하위 블록의 크기를 다양한 크기로 분할한 후, 예측 부호화함으로써 부호화 효율을 더욱 향상시킬 수 있으며, 이를 기존의 블록 매칭을 이용한 부호화 방식뿐만 아니라 움직임 모델 기반의 픽셀 와핑을 이용하여 예측 정확도를 크게 향상시킴으로써 발생 잔차 신호의 양을 줄여 부호화 효율을 더욱 개선할 수 있도록 한 비디오 부호화에서의 화면간/화면내 예측 부호화 방법에 관한 것이다.The present invention relates to a predictive encoding method using a super macro block or a motion model in video encoding. The present invention relates to a method of expanding a macroblock of 16 × 16 pixel units or more by dividing a size of a lower block into various sizes and then predicting encoding. Encoding efficiency can be further improved, and this can be further improved by reducing the amount of residual signal generated by greatly improving the prediction accuracy by using pixel warping based on motion model as well as the conventional coding method using block matching. The present invention relates to an inter-screen / intra-prediction coding method in a video encoding.
일반적으로, ISO/IEC와 ITU-T에서 공동으로 표준화한 비디오 압축 부호화 기술인 ISO/IEC 14496-10(MPEG-4 Advanced Video Coding) 또는 H.264 및 ISO/IEC 14496-10 Amendment 3(MPEG-4 Scalable Video Coding), SMPTE 표준인 VC-1, 이밖에 Audio Video coding Standard(AVS) 규격 등은 비디오 데이터 압축 효율에 있어 많은 진전을 이루었다.Generally, ISO / IEC 14496-10 (MPEG-4 Advanced Video Coding) or H.264 and ISO / IEC 14496-10 Amendment 3 (MPEG-4), a video compression encoding technology jointly standardized by ISO / IEC and ITU-T. Scalable Video Coding), the SMPTE standard VC-1, and the Audio Video coding Standard (AVS) specification have made significant 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 are many factors that can improve the video compression efficiency, but in particular, existing video coding standards (MPEG-1 Video, MPEG-2 Video, MPEG-4 Part 2 Visual, H.261, H.263, etc.) Unlike dividing the size of the screen to be encoded into units of macroblocks (16 × 16) and then predictively encoding the macroblocks, the macroblocks are 16 × 16, 16 × 8, 8 × 16, 8 × 8, 8 × 4, 4 Further subdividing into x8 and 4x4 units, performing prediction coding on these sub-blocks, and encoding a block that generates cost minimization in terms of rate-distortion cost is an optimal block mode.
이렇게 함으로써 미세한 움직임이나 복잡한 영상의 움직임 예측을 보다 효과적으로 수행하여 발생되는 잔차 신호를 크게 줄임으로써 압축 효율을 크게 향상할 수 있었다.In this way, the compression efficiency can be greatly improved by greatly reducing the residual signal generated by performing the motion prediction of the fine motion or the complex image more effectively.
도 1은 종래 기술의 H.264|AVC 부호화기에서 화면간 예측 부호화를 위한 16×16 매크로 블록 단위 블록의 분할 블록 타입을 나타낸 도면으로서, H.264에서 사용되는 7가지의 움직임 예측 블록 분할 타입을 나타낸다.FIG. 1 is a diagram illustrating a partition block type of a 16 × 16 macroblock unit block for inter prediction encoding in an H.264 | AVC encoder according to the prior art. FIG. 1 illustrates seven motion prediction block partition types used in H.264. Indicates.
도 1을 참조하면, 주로 작은 크기의 블록들(8×8, 8×4, 4×8 및 4×4)은 영상 내의 움직임 영역이 작거나 미세한 움직임의 경우 예측 성능의 큰 향상을 제공한다.Referring to FIG. 1, mainly small blocks 8x8, 8x4, 4x8 and 4x4 provide a large improvement in prediction performance in the case of small or fine motion regions of an image.
반면에 크기가 큰 블록들(16×16, 16×8 및 8×16)은 영상 픽셀 값이 균질한 영역이나 움직임이 적은 영역 또는 병진 운동이 존재하는 움직임 영역 등에서 움직임 예측 부호화 시에 주로 선택되는 경향을 띤다. 이와 같이 움직임 예측에 큰 블 록을 사용하는 것은 그만큼 부호화 시에 움직임 벡터 발생량이 줄어 부호화 효율을 증가시키는 요인이 된다.On the other hand, large blocks 16 × 16, 16 × 8, and 8 × 16 are mainly selected for motion prediction coding in a homogeneous region, a region with little movement, or a motion region in which translational motion exists. Tends to As such, the use of a large block for motion prediction reduces the amount of motion vector generated at the time of encoding, thereby increasing the coding efficiency.
결론적으로, 움직임 예측 부호화 시에 다양한 블록의 크기를 사용하여 움직임 예측 부호화를 수행하고, 이 중 하기의 수학식 1과 같이 율-왜곡 비용을 가장 적게 발생시키는 블록이 최적의 부호화 최종 블록모드로 결정된다.In conclusion, motion prediction coding is performed by using various block sizes in motion prediction coding, and among the blocks that generate the least rate-distortion cost as the following Equation 1, the optimal coding final block mode is determined. do.
여기서, c와 r은 현재 블록과 참조 블록을 의미하고, D는 두 블록간의 왜곡도를 나타낸다. λMODE는 라그랑지안 승수(Lagrangian Multiplier)이다. 또한, MODE는 예측 부호화에 사용되는 율-왜곡 최적화를 수행하는 모든 블록모드(또는 크기)를 의미한다.Here, c and r represent the current block and the reference block, and D represents the distortion degree between the two blocks. λ MODE is the Lagrangian Multiplier. In addition, MODE means all block modes (or sizes) for performing rate-distortion optimization used for predictive encoding.
예컨대, 영상의 균질 영역이 많은 부분을 차지할 경우나 움직임이 일어나지 않는 영역의 부분이 많은 경우 매크로 블록(16×16)이 최종 움직임 예측 블록으로 결정되는 빈도가 크게 증가한다.For example, when the homogeneous region of the image occupies a large portion or when the portion of the region where no motion occurs is large, the frequency at which the macro block 16x16 is determined as the final motion prediction block increases greatly.
특히, 부호화하고자 하는 입력 영상의 해상도가 매우 큰 경우 이러한 영상의 균질한 영역이 많은 부분을 차지하나 16×16 크기의 매크로 블록이 최대 블록이므로, 즉 최대 처리블록 단위의 크기가 16×16으로 제한되어, 움직임 예측 부호화 효율을 증대시키는데 한계가 있다. 이로 인해 초고해상도 영상을 부호화하고자 하는 경우 기존의 최대 크기인 16×16 매크로 블록을 사용하면 부호화 효율 증대에 한계 를 가지는 문제점이 있다.In particular, when the resolution of the input image to be encoded is very large, the homogeneous area of the image occupies a large portion, but since the macro block of 16 × 16 size is the largest block, that is, the size of the maximum processing block unit is limited to 16 × 16. There is a limit to increasing the motion prediction coding efficiency. For this reason, when a super high resolution image is to be encoded, using a 16 × 16 macroblock, which is the existing maximum size, has a problem in that the encoding efficiency is limited.
한편, 움직임 예측 부호화 시에 기존의 비디오 부호화 방법들은 부호화하고자 하는 블록을 참조 화면 내의 탐색 영역에서 블록 매칭을 통하여 가장 유사한 픽셀 블록의 위치를 찾고 이점을 움직임 벡터로 전송한다.Meanwhile, in motion prediction encoding, existing video encoding methods locate the most similar pixel block through block matching in a search region in a reference picture and transmit the benefit as a motion vector.
이때, 사용되는 블록 매칭 기법은 기본적으로 병진 운동을 가정하고 움직임 예측을 수행하는 경우이다. 그러나, 카메라의 움직임이나 영상 내의 객체의 움직임은 병진(Tracking) 운동뿐만 아니라, 줌(Zoom-in: 카메라의 위치를 고정시킨 채 줌 렌즈의 초점거리를 변화시켜 피사체에 접근하여 가는 것처럼 촬영, Zoom-out: 카메라의 위치를 고정시킨 채 줌 렌즈의 초점거리를 변화 시켜 피사체로부터 멀어져 가는 것처럼 촬영), 회전(Roll: 카메라를 회전시켜 피사체를 촬영), 패닝(Panning: 카메라의 수직축이 고정되어 있는 상태에서의 카메라의 수평적 움직임), 붐(Boom-up: 카메라의 수직적 상승 이동, Boom-down: 카메라의 수직적 하강 이동), 틸팅(Tilting: 카메라의 수평축이 고정되어 있는 상태에서의 카메라의 수직적 움직임), 달리(Dolly-in: 카메라가 피사체에 접근, Dolly-out: 카메라가 피사체에서 물러남)등이 있다. 도 2는 비디오 영상에서의 카메라의 움직임에 의한 움직임 생성 타입을 설명하기 위한 도면으로서, 카메라의 움직임 형태에 대한 도식을 나타낸다.In this case, the block matching technique used is basically a case of performing a motion prediction assuming a translational motion. However, the movement of the camera or the movement of an object in the image is not only a tracking movement, but also a zoom-in. The zoom lens is fixed by changing the focal length of the zoom lens as if approaching a subject. -out: Changes the focal length of the zoom lens while fixing the position of the camera and shoots it away from the subject), Roll (Roll: Shoots the subject by rotating the camera), and Panning: The vertical axis of the camera is fixed. Horizontal movement of the camera in the state), Boom-up: vertical upward movement of the camera, Boom-down: vertical downward movement of the camera, and tilting (vertical movement of the camera while the horizontal axis of the camera is fixed). Movement), otherwise (Dolly-in: the camera approaches the subject, Dolly-out: the camera withdraws from the subject). FIG. 2 is a diagram for describing a motion generation type by camera movement in a video image, and illustrates a diagram of a camera's movement pattern.
도 3은 2차원 영상 공간에 투영된 움직임 모델을 설명하기 위한 개념도로서, 실제 3차원 공간에서의 피사체의 움직임이 2차원 공간에 투영되었을 때 투영된 2차원 공간에서의 움직임을 나타내며, 하기의 수학식 2와 수학식 3은 투영된 공간에서의 x축과 y축으로의 움직임을 수식으로 표현한다.3 is a conceptual diagram illustrating a motion model projected in a two-dimensional image space, and illustrates a motion in a two-dimensional space projected when a motion of a subject in a real three-dimensional space is projected in the two-dimensional space. Equation 2 and Equation 3 express the movement in the projected space in the x-axis and y-axis by the equation.
여기서, u와 v는 움직임 벡터를 의미하고, f는 카메라의 초점 거리, Tx, Ty, Tz는 OXYZ 공간에서 각각 X축, Y축, Z축에서의 병진 속도(Translational Velocity)를 나타낸다. 한편, Rx, Ry, Rz는 각각 각속도(Angular Velocity)를 나타낸다. x, y는 투영 이미지 공간에서의 좌표 값을 의미한다.Here, u and v denote motion vectors, and f denotes a focal length of the camera, and T x , T y , and T z denote translational velocities in the X, Y, and Z axes in OXYZ space, respectively. . On the other hand, R x , R y , and R z represent Angular Velocity, respectively. x and y mean coordinate values in the projection image space.
이와 같이 기존의 움직임 보상을 통한 예측 부호화는 병진 운동만을 고려한 움직임 예측이므로 실제 2차원 공간에서의 복잡한 움직임을 제대로 예측하지 못하며 이로 인한 예측 부호화 성능 향상의 한계점을 가지고 있다.As the conventional predictive coding using motion compensation is a motion prediction considering only the translational motion, it does not properly predict the complex motion in the actual two-dimensional space, and thus has a limitation of improving the predictive coding performance.
본 발명은 전술한 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 비디오 부호화 시에 최대 16×16 매크로 블록을 통한 예측 부호화 방식을 확장하여 16×16 보다 큰 크기의 블록(이하, "수퍼 매크로 블록"이라 칭함)을 사용하여 움직임 예측 및 보상을 수행하여 보다 효과적인 예측 부호화 방법을 제공하는데 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-described problem, and an object of the present invention is to extend a prediction coding scheme through a maximum of 16 × 16 macroblocks in video encoding, thereby to block blocks having a size larger than 16 × 16 (hereinafter, referred to as “super Macroblock ") to perform motion prediction and compensation to provide a more efficient predictive encoding method.
본 발명의 다른 목적은 블록 기반의 예측 부호화에 있어 기존의 병진 운동에 의한 참조 화면에서의 탐색영역에서 최대 유사 블록을 찾아 예측 부호화함으로써 카메라 움직임 및 객체 움직임 등의 보다 복잡한 복합적인 움직임을 예측하는데 한계가 있는 것을 극복하기 위해 움직임 모델을 이용하여 움직임을 보다 정확히 예측하고 이를 기반으로 예측 부호화를 수행함으로서 기대되는 잔차 신호(Residual Signals)의 발생량을 줄여 부호화 효율을 향상시키는 방법을 제공하는데 있다.Another object of the present invention is to predict a more complex complex motion such as a camera motion and an object motion by finding and predicting a maximum likelihood block in a search region in a reference screen by a conventional translational motion in block-based predictive coding. The present invention provides a method of improving encoding efficiency by reducing the amount of residual signals expected to be generated by more accurately predicting a motion using a motion model and performing predictive coding based on the motion model.
전술한 목적을 달성하기 위하여 본 발명의 제1 측면은 비디오 부호화에서의 화면간 예측 부호화 방법으로서, 부호화 블록 단위를 16×16 매크로 블록보다 큰 크기로 이루어지며 가로 및 세로의 길이가 2의 거듭제곱으로 정의되는 정사각형의 적어도 하나의 수퍼 매크로 블록으로 확장하는 단계; 수퍼 매크로 블록을 2의 거듭제곱으로 정의되는 정사각형 또는 직사각형의 다양한 크기의 하위 블록들로 분할하는 단계; 그리고 수퍼 매크로 블록 및 하위 블록들에 대해 화면간 예측을 수행하고, 그 중 하나를 화면간 예측 부호화 결과로 선택하여 부호화하는 단계를 포함하여 구성된다. 부호화의 역 과정인 복호화는, 부호화 블록 단위를 16×16 매크로 블록보다 큰 크기로 이루어지며 가로 및 세로의 길이가 2의 거듭제곱으로 정의되는 정사각형의 적어도 하나의 수퍼 매크로 블록을 단위로 하여 입력된 화면간 예측 부호화된 데이터로부터, 2의 거듭제곱으로 정의되는 정사각형 또는 직사각형의 다양한 크기로 분할된 하위 블록 단위로 부호화된 화면간 예측 데이터를 추출하는 단계; 추출된 하위 블록 단위의 화면간 예측 데이터를 복호화하는 단계; 그리고 하위 블록 단위로 복호화된 데이터를 겹합하여, 수퍼 매크로 블록 단위로 복원하는 단계를 포함하여 구성된다.In order to achieve the above object, a first aspect of the present invention is an inter prediction encoding method in video encoding, wherein a coding block unit has a size larger than 16 × 16 macroblocks, and the length of the horizontal and the vertical is a power of two. Expanding to at least one super macro block of a square defined as; Dividing the super macro block into sub-blocks of various sizes, square or rectangular, defined as powers of two; And performing inter prediction on the super macro block and the lower blocks, selecting one of the super macro blocks, and encoding the selected result as the inter prediction encoding result. Decoding, which is an inverse process of encoding, is performed in units of at least one super macro block of a square whose coding unit is larger than a 16 × 16 macroblock and whose horizontal and vertical lengths are defined as powers of two. Extracting inter-prediction data encoded in units of lower blocks divided into various sizes of squares or rectangles defined by powers of two from inter-prediction encoded data; Decoding the inter prediction data of the extracted lower block unit; And restoring the decoded data in units of lower blocks and restoring the units in super macro blocks.
여기서, 각 수퍼 매크로 블록을 비롯한 분할된 하위 블록들을 통한 잔차 신호에 대하여 변환 및 양자화를 수행한 후, 그 결과를 엔트로피 부호화하는 것이 바람직하다.Here, it is preferable to perform transform and quantization on the residual signal through the divided lower blocks including each super macro block, and then entropy-encode the result.
삭제delete
본 발명의 제2 측면은, 비디오 부호화에서의 화면간 예측 부호화 방법에 있어서, 입력 화면을 부호화 단위 블록으로 분할하고, 상기 분할된 각 부호화 단위 블록에 대해 움직임 예측을 위한 적어도 하나의 움직임 모델을 선택적으로 적용하여 예측 부호화를 수행한 후, 그 중 어느 하나를 화면간 예측 결과로 선택하여 부호화하는 것을 특징으로 하는 비디오 부호화에서의 화면간 예측 부호화 방법을 제공하는 것이다.According to a second aspect of the present invention, in an inter prediction encoding method in video encoding, the input screen is divided into coding unit blocks, and at least one motion model for motion prediction is selectively selected for each of the divided coding unit blocks. The present invention provides an inter-prediction encoding method in video encoding, wherein the prediction encoding is performed by applying the L-P encoding, and then any one of the encoding is selected as an inter-screen prediction result.
여기서, 상기 부호화 단위 블록은 매크로 블록 또는 16×16 매크로 블록보다 큰 크기의 수퍼 매크로 블록인 것이 바람직하다.Herein, the coding unit block is preferably a macroblock or a super macroblock having a size larger than that of a 16 × 16 macroblock.
바람직하게, 상기 움직임 모델은 파라미터로 모형화 된 것이다.Preferably, the motion model is modeled with parameters.
바람직하게, 상기 움직임 모델은 병진 움직임 모델, 의사(擬似)(Affine) 움 직임 모델, 이중선형(Bilinear) 움직임 모델 또는 투시(Perspective) 움직임 모델 중 적어도 하나를 포함할 수 있다.Preferably, the motion model may include at least one of a translational motion model, an affine motion model, a bilinear motion model, or a perspective motion model.
바람직하게, 상기 움직임 모델을 적용한 예측 부호화 과정은, 움직임 모델 파라미터를 추정하고, 상기 추정된 움직임 모델 파라미터를 이용하여 참조 화면으로부터 움직임 예측을 수행하고, 그 잔차 신호를 변환하여 변환 계수를 양자화한 후, 상기 움직임 모델 파라미터와 양자화된 변환계수에 대해 엔트로피 부호화를 수행할 수 있다.Preferably, the prediction encoding process applying the motion model estimates a motion model parameter, performs motion prediction from a reference picture using the estimated motion model parameter, transforms the residual signal, and quantizes the transform coefficients. In addition, entropy encoding may be performed on the motion model parameter and the quantized transform coefficient.
본 발명의 제3 측면은, 비디오 부호화에서의 화면간 예측 부호화 방법에 있어서, (a) 입력 화면을 미리 정의된 수퍼 매크로 블록 단위로 확장하는 단계; (b) 각 수퍼 매크로 블록을 다양한 크기의 하위 블록들로 분할하는 단계; 및 (c) 각 수퍼 매크로 블록 단위로 상기 분할된 하위 블록들에 대해 참조 영상으로부터 움직임 예측을 수행한 후, 최적의 블록 모드를 결정하고 이를 통해 구해진 잔차 신호와 움직임 벡터를 부호화하는 단계를 포함하는 것을 특징으로 하는 비디오 부호화에서의 화면간 예측 부호화 방법을 제공하는 것이다.According to a third aspect of the present invention, there is provided a method of inter-prediction encoding in video encoding, comprising: (a) extending an input screen in a unit of a predefined super macro block; (b) dividing each super macro block into sub-blocks of various sizes; And (c) after performing motion prediction on the divided lower blocks in units of each super macro block, determining an optimal block mode and encoding a residual signal and a motion vector obtained through the prediction. An inter prediction encoding method in video encoding is provided.
본 발명의 제4 측면은, 비디오 부호화에서의 화면간 예측 부호화 방법에 있어서, (a') 부호화 대상 블록에 대해 움직임 모델을 선택하여 움직임 모델 파라미터를 획득하는 단계; (b') 상기 획득된 움직임 모델 파라미터를 이용하여 참조 화면으로부터 움직임 보상 블록 픽셀을 생성하는 단계; (c') 상기 생성된 움직임 보 상 블록 픽셀값과 현재 부호화하고자 하는 블록의 픽셀값의 잔차 신호를 구하는 단계; (d') 상기 단계(b') 및 단계(c')를 선택 가능한 움직임 모델에 대해 수행하고, 현재 부호화하고자 하는 블록에 대한 움직임 모델을 최종 결정하는 단계; 및 (e') 상기 최종 선택된 움직임 모델을 이용하여 화면간 움직임 예측 부호화를 수행하는 단계를 포함하는 것을 특징으로 하는 비디오 부호화에서의 화면간 예측 부호화 방법을 제공하는 것이다.A fourth aspect of the present invention provides a method for inter prediction encoding in video encoding, comprising: (a ') obtaining a motion model parameter by selecting a motion model for a block to be encoded; (b ') generating a motion compensation block pixel from a reference picture using the obtained motion model parameter; obtaining a residual signal of the generated motion compensation block pixel value and the pixel value of the block to be currently encoded; (d ') performing steps (b') and (c ') on a selectable motion model, and finally determining a motion model for a block to be currently encoded; And (e ') performing inter-screen motion prediction encoding by using the finally selected motion model.
상기 단계(d')에서, 상기 움직임 모델 최종 결정은 율-왜곡 비용을 고려하여 결정함이 바람직하다.In the step (d '), the final determination of the motion model is preferably made in consideration of the rate-distortion cost.
바람직하게, 상기 단계(a) 또는 단계(a') 이전에 부호화를 위한 화면 순서 및 블록 순서를 초기화하는 단계를 더 포함할 수 있다.Preferably, the method may further include initializing a screen order and a block order for encoding before step (a) or step (a ').
바람직하게, 상기 단계(c)에서 움직임 예측을 수행한 후, 또는 상기 단계(a') 이후에 부호화를 위해 순서에 맞게 화면을 입력하고, 상기 입력된 화면을 블록 단위로 분할한 후, 한 화면간 예측 부호화에서 부호화되는 블록의 순서를 초기화하는 단계를 더 포함할 수 있다.Preferably, after performing the motion prediction in step (c) or after the step (a '), the screen is input in order for encoding, the input screen is divided in block units, and then one screen The method may further include initializing an order of blocks to be encoded in the inter prediction encoding.
바람직하게, 상기 단계(c) 또는 단계(d')에서, 상기 화면간 예측을 통한 율-왜곡 비용을 계산하고 부호화하고자 하는 매크로 블록 또는 수퍼 매크로 블록으로 합할 수 있다.Preferably, in step (c) or step (d '), the rate-distortion cost through the inter prediction may be calculated and summed into a macro block or a super macro block to be encoded.
본 발명의 제5 측면은, 비디오 부호화에서의 화면간 예측 부호화 방법에 있어서, 부호화하고자 하는 화면을 입력하는 단계; 상기 입력된 화면을 미리 정의된 수퍼 매크로 블록 단위로 분할하는 단계; 각 수퍼 매크로 블록에 대해 하위 크기의 블록으로 분할하고, 각 수퍼 매크로 블록 및 그 하위 블록에 대해 화면간 예측을 수행한 후, 그 중 어느 하나의 블록 타입을 선정하는 단계; 및 상기 선정된 블록 타입의 예측 결과를 이용하여 화면간 예측 부호화를 수행하는 단계를 포함하는 것을 특징으로 하는 비디오 부호화에서의 화면간 예측 부호화 방법을 제공하는 것이다.According to a fifth aspect of the present invention, there is provided an inter prediction encoding method in video encoding, comprising: inputting a screen to be encoded; Dividing the input screen into units of a predefined super macro block; Dividing each super macro block into blocks having a lower size, performing inter-screen prediction on each super macro block and the lower block, and selecting any one of the block types; And performing inter prediction encoding by using the selected prediction result of the block type.
본 발명의 제6 측면은 비디오 부호화에서의 화면내 예측 부호화 방법에 있어서, 부호화 블록 단위를 16×16 매크로 블록보다 큰 크기로 이루어진 적어도 하나의 수퍼 매크로 블록으로 확장하고, 각 수퍼 매크로 블록을 다양한 크기의 하위 블록들로 분할하며, 각 수퍼 매크로 블록을 비롯한 분할된 하위 블록들에 대해 화면내 예측을 수행한 후, 그 결과를 비교하여 더 유리한 부호화 결과를 선택하여 최종 부호화하는 것을 특징으로 하는 비디오 부호화에 있어서 화면내 예측 부호화 방법을 제공하는 것이다.In a sixth aspect of the present invention, in an intra prediction encoding method in video encoding, a coding block unit is extended to at least one super macro block having a size larger than 16 × 16 macro blocks, and each super macro block is variously sized. The video encoding, characterized by dividing into sub-blocks of, performing intra-prediction on the divided sub-blocks including each super macro block, comparing the results, selecting a more advantageous encoding result, and performing final encoding. In the present invention, an intra prediction encoding method is provided.
여기서, 각 수퍼 매크로 블록을 비롯한 분할된 하위 블록들에 대해 화면내 예측 부호화는 방향성 예측을 수행하고, 율-왜곡 비용을 가장 적게 발생시키는 방향성 예측 모드를 최적의 최종 화면내 예측으로 하여 부호화함이 바람직하다.In this case, the intra prediction encoding is performed on the sub-blocks including each super macro block by performing directional prediction, and encoding the directional prediction mode that generates the least rate-distortion cost as the optimal final intra prediction. desirable.
본 발명의 제7 측면은, 비디오 부호화에서의 화면간 예측 부호화 방법에 있어서, 부호화 블록 단위를 16×16 매크로 블록보다 큰 크기로 이루어진 적어도 하 나의 수퍼 매크로 블록으로 확장하고, 각 수퍼 매크로 블록을 다양한 크기의 하위 블록들로 분할하며, 각 수퍼 매크로 블록을 비롯한 분할된 하위 블록들에 대해 화면내 예측을 수행한 후, 그 결과를 부호화 할 화면내 예측 결과와 부호화 할 화면간 예측 결과를 비교하여 더 유리한 예측을 선택하여 최종 부호화하는 것을 특징으로 하는 비디오 부호화에서의 화면간 예측 부호화 방법을 제공하는 것이다.According to a seventh aspect of the present invention, in an inter prediction encoding method in video encoding, a coding block unit is extended to at least one super macro block having a size larger than 16 × 16 macro blocks, and each super macro block is expanded in various ways. After sub-blocks are divided into sub-blocks of size, intra-prediction is performed on the divided sub-blocks including each super macro block, and the intra-prediction result to be encoded is compared with the inter-prediction result to be encoded. It is an object of the present invention to provide an inter-prediction encoding method in video encoding, characterized by selecting and encoding an advantageous prediction.
본 발명의 제8 측면은, 비디오 부호화에서의 화면간 예측 부호화 방법에 있어서, (a") 부호화하고자 하는 화면을 입력하는 단계; (b") 입력된 화면을 부호화 단위 블록으로 분할하는 단계; (c") 현재의 입력 화면이 화면간 예측부호화를 수행할 것인지를 판별하는 단계; (d") 현재의 입력 화면이 화면간 예측이 아닌 경우 화면내 예측 부호화를 수행하는 단계; (e") 현재의 입력 화면이 화면간 예측인 경우에는 입력 화면에서 부호화되는 단위 블록의 순서를 초기화하는 단계; (f") 부호화하고자 하는 단위 블록에 움직임 예측을 수행하기 위해 적용할 움직임 모델을 하나 선택한 후 움직임 예측을 수행하는 단계; (g") 상기 선택된 움직임 예측 결과를 이용하여 예측 부호화를 수행하는 단계; (h") 상기 단계(g")에서의 예측 부호화 결과 및 율-왜곡 비용값을 저장하는 단계; (i") 상기 적용 움직임 모델이 최종 모델인지 판단하여, 최종 움직임 모델이면 최적의 움직임 모델을 결정하고, 해당 부호화 결과를 최종 선택하는 단계; (j") 상기 적용 움직임 모델이 최종 모델이 아니면, 상기 단계(f")로 리턴하는 단계; (k") 현재 단위 블록이 현재의 입력 화면에서 최종 블록인지를 판별하는 단계; 및 (l") 현재 단위 블록이 현재의 입력 화면에서 최종 블록이면, 현재의 입력 화면이 최종 화면인지 판별하여, 최종 화면이 될 때까지 상기 단계(a") 내지 단계(k")를 반복 수행하는 단계를 포함하는 것을 특징으로 하는 비디오 부호화에서의 화면간 예측 부호화 방법을 제공하는 것이다.An eighth aspect of the present invention provides a method of inter-prediction encoding in video encoding, comprising: (a ") inputting a screen to be encoded, (b") dividing an input screen into coding unit blocks; (c ") determining whether the current input screen is to perform inter-prediction encoding; (d") performing intra prediction encoding if the current input screen is not inter prediction; (e ") initializing the order of unit blocks encoded in the input screen when the current input screen is inter-screen prediction; (f") selecting a motion model to be applied to perform motion prediction on the unit block to be encoded. Selecting one and performing motion prediction; (g ") performing predictive encoding using the selected motion prediction result; (h") storing the predictive encoding result and the rate-distortion cost value in step (g "); (i") the Determining whether the applied motion model is a final model, determining an optimal motion model if the final motion model is selected, and finally selecting a corresponding encoding result; (j ″) if the applied motion model is not a final model, returning to step f ″; (k ") determining whether the current unit block is the last block in the current input screen; and (l") if the current unit block is the last block in the current input screen, determining whether the current input screen is the last screen, It provides a method of inter-prediction encoding in video encoding, comprising the step of repeating the steps (a ") to (k") until the final picture.
상기 단계(f")에서, 상기 움직임 모델을 적용하여 움직임 예측 수행 시 움직임 모델 파라미터를 추정하는 단계를 더 포함함이 바람직하다.In the step (f ″), it is preferable to further include the step of estimating the motion model parameters when performing the motion prediction by applying the motion model.
본 발명의 제9 측면은, 상술한 비디오 부호화에서의 화면간 예측 부호화 방법을 실행시키기 위한 프로그램을 기록한 기록매체를 제공한다.A ninth aspect of the present invention provides a recording medium on which a program for executing the above-described inter prediction encoding method in video encoding is recorded.
이상에서 설명한 바와 같은 본 발명의 비디오 부호화에서의 화면간/화면내 예측 부호화 방법에 따르면, 부호화하고자 하는 블록의 크기를 기존의 16×16 매크로 블록 크기이상으로 확장하고, 이를 다시 하위 블록으로 분할하여 선택적으로 사용하며, 영상의 균질한 영역이 많은 영상에 대해 효과적으로 사용함으로써, 부호화되어야 하는 움직임 벡터 수의 감소와 움직임 예측의 부하를 줄여 효과적으로 예측 부호화를 수행할 수 있는 이점이 있다.According to the inter-screen / intra-prediction coding method of the video encoding of the present invention as described above, the size of the block to be encoded is extended beyond the size of the existing 16x16 macroblock, and this is further divided into lower blocks. By selectively using and effectively using an image having a large number of homogeneous regions, there is an advantage in that predictive encoding can be effectively performed by reducing the number of motion vectors to be coded and reducing the load of motion prediction.
또한, 본 발명에 따르면, 다양한 움직임 모델을 사용하여 보다 정확한 움직임 예측을 수행함으로써 발생되는 잔차 신호의 양을 줄여 부호화 효율을 증대시킬 수 있을 뿐만 아니라 움직임 모델에 의한 참조 영상의 와핑(Warping)을 통해 정화소로부터 1/2-화소, 1/4-화소, 1/8-화소의 서브-펠(Sub-Pel) 단계로 움직임 보상을 수행함으로서 소요되는 움직임 예측의 많은 연산량의 감소를 얻을 수 있는 이점이 있다.In addition, according to the present invention, the coding efficiency can be increased by reducing the amount of residual signals generated by performing more accurate motion prediction using various motion models, and by warping the reference image by the motion model. By performing motion compensation from the refinery to sub-pel steps of 1 / 2-pixel, 1 / 4-pixel, and 1 / 8-pixel, it is possible to obtain a large amount of computational reduction of the motion prediction required. have.
이하, 첨부 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다. 그러나, 다음에 예시하는 본 발명의 실시예는 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 다음에 상술하는 실시예에 한정되는 것은 아니다. 본 발명의 실시예는 당업계에서 통상의 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공되어지는 것이다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, the following embodiments of the present invention may be modified into various other forms, and the scope of the present invention is not limited to the embodiments described below. The embodiments of the present invention are provided to enable those skilled in the art to more fully understand the present invention.
먼저, 통상적인 화면간 예측은 부호화하고자 블록을 최대 16×16 크기인 매크로 블록 단위로 분할하여 부호화한다. 특히, ISO/IEC 14496-10(MPEG-4 Advanced Video Coding) 또는 H.264 규격에서는 도 1과 같이 매크로 블록을 7가지의 하위 블록으로 분할하여 부호화 시에 율-왜곡 비용을 최소화하는 블록을 최종 선택하여 예측 부호화를 수행한다.First, in conventional inter prediction, a block is encoded by dividing a block to be encoded into macroblock units having a maximum size of 16 × 16. In particular, in ISO / IEC 14496-10 (MPEG-4 Advanced Video Coding) or H.264 standard, as shown in FIG. 1, the macro block is divided into seven sub-blocks to finalize a block that minimizes rate-distortion cost in encoding. Selectively perform prediction encoding.
전술한 바와 같이 부호화하고자 하는 블록 단위를 16×16 매크로 블록 단위로 제한하는 것은 영상 내의 균질 영역(Homogeneous Regions) 또는 움직임이 없는 영역에서 화면간 예측을 수행할 때에 매크로 블록의 수가 많이 증가한다. 특히, 초 고해상도 영상의 부호화에서는 매크로 블록의 크기가 상대적으로 너무 작아 부호화 효율을 떨어뜨리는 결과를 초래한다.As described above, limiting the block unit to be encoded to 16 × 16 macroblock units greatly increases the number of macroblocks when performing inter-prediction in homogeneous regions or regions without motion. In particular, in the encoding of an ultra high resolution image, the size of the macro block is relatively small, resulting in a decrease in the coding efficiency.
도 4는 본 발명의 일 실시예에 적용된 16×16 매크로 블록 크기 이상의 수퍼 매트로 블록 및 블록 분할 타입의 일 예를 나타낸 도면으로서, 매크로 블록의 크기를 확장하고 하위 블록을 다양한 크기로 분할하여 사용함으로써 상술한 균질 영역 부호화나 움직임이 없는 영상의 부호화에 매우 효과적으로 적용될 수 있다.FIG. 4 is a diagram illustrating an example of a block and block division type with a super mat of 16 × 16 macroblock size or larger applied to an embodiment of the present invention. The macroblock is expanded in size and the lower block is divided into various sizes. Thus, the present invention can be effectively applied to the above-mentioned homogeneous region encoding or encoding of a motion-free image.
즉, 32×32 수퍼 매크로 블록 및 그 하위 분할 블록, 64×64 수퍼 매크로 블록 및 그 하위 분할 블록, 128×128 수퍼 매크로 블록 및 그 하위 분할 블록 등의 형태로 블록 크기를 확장할 수 있다.That is, the block size can be extended in the form of a 32x32 super macro block and its subdivided blocks, a 64x64 super macro block and its subdivided blocks, a 128x128 super macro block and its subdivided blocks, and the like.
또한, 부호화기의 복잡도를 고려하여 블록 크기의 확장을 제한하거나 그 하위 블록의 블록 분할 타입의 수를 제한할 수 있다. 실제 부호화 시에 전술한 수학식 1에서와 같이 율-왜곡 비용을 최소화하는 블록 모드(Mode)를 선택하여 부호화할 수 있다.In addition, in consideration of the complexity of the encoder, it is possible to limit the expansion of the block size or limit the number of block division types of the lower block. In actual encoding, as in Equation 1 described above, a block mode that minimizes the rate-distortion cost may be selected and encoded.
뿐만 아니라 크기가 증가된 수퍼 매크로 블록의 잔차 신호에 대해 변환 부호화(Transform Coding)를 적용할 경우 기존의 4×4, 8×8 또는 16×16 보다 큰 변환 커널(Kernel)을 사용함으로써 부호화 효율을 증가시킬 수 있다.In addition, when transform coding is applied to a residual signal of an increased sized super macro block, encoding efficiency is increased by using a transform kernel larger than 4 × 4, 8 × 8, or 16 × 16. Can be increased.
또한, 화면간 예측 부호화에 부호화하고자 하는 블록에 대해 움직임 예측 모델을 선택적으로 적용하여 부호화 효율을 더욱 증가시킬 수 있다.In addition, coding efficiency may be further increased by selectively applying a motion prediction model to a block to be encoded in inter prediction encoding.
이하에는 움직임 예측 모델에 대하여 구체적으로 설명하기로 한다.Hereinafter, the motion prediction model will be described in detail.
움직임 예측 모델을 보다 상세히 설명하기 위해 먼저, fc와 fr을 각각 부호화하고자 하는 현재 영상과 참조 영상으로 한다. (x,y)를 fc의 부호화하고자 하는 현재 블록의 한 픽셀 좌표값을 나타낸다. 또한, 부호화하고자 하는 현재 프레임의 예측을 라고 하면 참조 영상으로부터 하기의 수학식 4와 같이 정의할 수 있다.In order to describe the motion prediction model in more detail, first, f c and f r are used as current and reference pictures to be encoded, respectively. (x, y) represents one pixel coordinate value of the current block to be encoded by f c . In addition, the prediction of the current frame to be encoded In this case, it can be defined as shown in Equation 4 below from the reference image.
여기서, (u,v)는 참조 영상의 좌표값을 나타낸다. 상기의 수학식 4는 움직임 보상이 참조 영상의 좌표값을 현재 영상의 좌표값에 대응시키는 기하학적 변환(Geometric Transformation)을 의미하며 하기의 수학식 5와 같이 일반화하여 표현할 수 있다.Here, (u, v) represents a coordinate value of the reference image. Equation 4 denotes a geometric transformation in which motion compensation corresponds to a coordinate value of the current image, and may be generalized as shown in Equation 5 below.
여기서, gx와 gy는 공간 변환 함수를 나타낸다. 이러한 공간 변환을 텍스쳐 매핑(Texture Mapping) 또는 이미지 매핑(Image Mapping)으로 불린다.Where g x and g y represent spatial transform functions. This spatial transformation is called texture mapping or image mapping.
움직임 예측에 일반적으로 사용되는 블록 정합 방법인 2차원 병진 움직임 모형은 하기의 수학식 6과 같이 표현된다.A 2D translational motion model, which is a block matching method generally used for motion prediction, is expressed by Equation 6 below.
그러나, 전술한 바와 같이 실제 2차원 투영 영상에는 병진 운동뿐만 아니라 줌(Zoom), 회전(Roll), 패닝(Panning), 붐(Boom), 틸팅(Tilting), 달리(Dolly) 등의 움직임이 복합적으로 혼재되어 있다.However, as described above, not only the translational movement but also the movement of zoom, rotation, panning, boom, tilting, and dolly are combined in the actual two-dimensional projection image. Are mixed.
이러한 복잡한 움직임을 제대로 예측하기 위해서는 보다 정교한 움직임 모델이 필요하다. 하기의 수학식 7은 의사(擬似)(Affine) 움직임 모델, 수학식 8은 이중선형(Bilinear) 움직임 모델, 그리고 수학식 9는 투시(Perspective) 움직임 모델을 각각 나타낸다.More accurate motion models are needed to properly predict these complex movements. Equation 7 below represents an Affine motion model, Equation 8 represents a bilinear motion model, and Equation 9 represents a perspective motion model.
여기서, ai는 움직임 모델 파라미터를 나타낸다. 움직임 모델 기반의 예측 부호화를 수행할 경우, 상기 모델들 중 가장 율-왜곡 비용을 최소화하는 모델을 적용하여 부호화함으로써 부호화 효율을 증가시킬 수 있다.Here, a i represents a motion model parameter. When performing prediction coding based on motion model, encoding efficiency may be increased by applying a model that minimizes the rate-distortion cost among the models.
본 발명에서는 움직임 모델을 적용하는 단위 블록의 크기는 수퍼 매크로 블록과 그 하위 블록이 될 수 있으며 부호화 효율에 따라 최적의 움직임 모델을 선택할 수 있다. 한편, 본 발명의 일 실시예에 적용된 움직임 모델은 파라미터로 모형화됨이 바람직하다.In the present invention, the size of a unit block to which a motion model is applied may be a super macro block and a lower block thereof, and an optimal motion model may be selected according to coding efficiency. Meanwhile, the motion model applied to the embodiment of the present invention is preferably modeled by a parameter.
한편, 본 발명의 일 실시예에서는 비디오 부호화에서의 화면간 예측 부호화 방법 위주로 설명하였지만, 이에 국한하지 않으며, 비디오 부호화에서의 화면내 예측 부호화에 적용시킬 수도 있다.Meanwhile, although an embodiment of the present invention has been described mainly for the inter prediction encoding method in video encoding, the present invention is not limited thereto and may be applied to the intra prediction encoding in video encoding.
즉, 화면내 예측 부호화를 수행할 경우, 먼저, 부호화 블록 단위를 16×16 매크로 블록보다 큰 크기로 이루어진 적어도 하나의 수퍼 매크로 블록으로 확장하고, 각 수퍼 매크로 블록을 다양한 크기의 하위 블록들로 분할하며, 각 수퍼 매크로 블록을 비롯한 분할된 하위 블록들에 대해 화면내 예측을 수행한 후, 그 결과를 비교하여 더 유리한 부호화 결과를 선택하여 최종 부호화한다.That is, when performing intra prediction encoding, first, a coding block unit is extended to at least one super macro block having a size larger than 16 × 16 macro blocks, and each super macro block is divided into sub-blocks having various sizes. Intra-picture prediction is performed on the divided lower blocks including each super macro block, and the results are compared to select a more advantageous encoding result and to perform final encoding.
이때, 각 수퍼 매크로 블록을 비롯한 분할된 하위 블록들에 대해 화면내 예측 부호화는 방향성 예측을 수행하고, 율-왜곡 비용을 가장 적게 발생시키는 방향성 예측 모드를 최적의 최종 화면내 예측으로 하여 부호화함이 바람직하다.In this case, intra prediction encoding is performed on the sub-blocks including each super macro block by performing directional prediction, and encoding the directional prediction mode that generates the least rate-distortion cost as the optimal final intra prediction. desirable.
도 5는 본 발명의 일 실시예에 따른 비디오 부호화에서의 화면간 예측 부호화 방법을 설명하기 위한 전체적인 흐름도로서, 비디오 부호화에서 선택적 움직임 모델 기반의 화면간 예측 부호화 방법을 나타낸 것이다.FIG. 5 is a flowchart illustrating an inter prediction encoding method in video encoding according to an embodiment of the present invention, and illustrates an inter motion prediction encoding method based on a selective motion model in video encoding.
도 5를 참조하면, 먼저, 부호화를 위한 화면(i) 순서를 초기화(i=0)한 후(S100), 부호화를 위해 순서에 맞게 화면(i)을 입력한다(S101).Referring to FIG. 5, first, the order of screen i for encoding is initialized (i = 0) (S100), and then the screen i is input in order for encoding (S101).
그런 다음, 상기 단계S101에서 입력된 화면(i)을 부호화 단위 블록(매크로 블록 또는 수퍼 매크로 블록)으로 분할한 후(S102), 현재의 화면(i)이 화면간 예측부호화를 수행할 것인지를 판단한다(S103).Then, after dividing the screen i input in step S101 into coding unit blocks (macro blocks or super macro blocks) (S102), it is determined whether the current screen i is to perform inter-prediction encoding. (S103).
만약, 상기 단계S103에서의 판단 결과, 현재의 화면(i)이 화면간 예측이 아닌 경우 화면내 예측 부호화를 수행하고(S104), 그렇지 않고 현재의 화면(i)이 화면간 예측인 경우에는 한 화면(i)내에서 부호화되는 단위 블록(j)의 순서를 초기화(j=0)한다(S105).If it is determined in step S103 that the current screen i is not inter-screen prediction, intra prediction coding is performed (S104). Otherwise, if the current screen i is inter-screen prediction, The order of the unit blocks j encoded in the screen i is initialized (j = 0) (S105).
이후에, 부호화하고자 하는 단위 블록(j)에 움직임 예측을 수행하기 위해 적용할 움직임 모델을 하나 선택한 후 이에 대해 움직임 예측을 수행하고(S106), 그 결과를 이용하여 예측 부호화를 수행한 후(S107), 그 결과인 예측 부호화 결과 및 율-왜곡 비용값을 저장한다(S108).Subsequently, one motion model to be applied to perform the motion prediction on the unit block j to be encoded is selected, motion prediction is performed on the motion block (S106), and prediction prediction is performed using the result (S107). The predictive encoding result and the rate-distortion cost value are stored (S108).
그런 다음, 사용 움직임 모델이 최종 움직임 모델인지를 판단하여(S109), 최종 움직임 모델이 아닐 경우 상기 단계S106으로 리턴되어 다음 적용할 움직임 모델을 선택하고 움직임 예측을 수행하며 이 과정을 반복한다.Then, it is determined whether the used motion model is the final motion model (S109), and if it is not the final motion model, the method returns to step S106 to select a motion model to be applied next, performs motion prediction, and repeats this process.
그렇지 않고, 상기 단계S109에서의 판단 결과, 사용 움직임 모델이 최종 움직임 모델이면 최적의 움직임 모델을 결정하고 해당 부호화 결과를 최종 선택한다(S110).Otherwise, if the use motion model is the final motion model as a result of the determination in step S109, an optimal motion model is determined and the corresponding encoding result is finally selected (S110).
이후에, 현재 단위 블록(j)이 화면(i)에서 최종 블록인지를 판단하여(S111), 최종 블록이 아니면 다음 부호화 단위 블록(j)을 입력하고 상기 단계S106으로 리턴한다.Subsequently, it is determined whether the current unit block j is the last block in the screen i (S111). If not, the next coding unit block j is input and the process returns to step S106.
그렇지 않고, 상기 단계S111에서의 판단 결과, 현재 단위 블록(j)이 화면(i)에서 최종 블록이면, 현재 화면(i)이 최종 화면인지 판단하여(S112), 최종 화면이면 종료하고 그렇지 않으면, 상기 단계S101로 리턴되어 다음 화면을 입력하고 전술한 과정들을 수행한다.Otherwise, as a result of the determination in step S111, if the current unit block j is the last block in the screen i, it is determined whether the current screen i is the last screen (S112). Returning to step S101, the next screen is input and the above-described processes are performed.
한편, 본 발명의 일 실시예에 따른 비디오 부호화에서의 화면간/화면내 예측 부호화 방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다.Meanwhile, the inter-screen / in-screen predictive encoding method in video encoding according to an embodiment of the present invention may also be implemented as computer readable codes on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored.
예컨대, 컴퓨터가 읽을 수 있는 기록매체로는 롬(ROM), 램(RAM), 시디-롬(CD-ROM), 자기 테이프, 하드디스크, 플로피디스크, 이동식 저장장치, 비휘발성 메모리(Flash Memory), 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함된다.For example, the computer-readable recording medium may be a ROM, a RAM, a CD-ROM, a magnetic tape, a hard disk, a floppy disk, a removable storage device, a nonvolatile memory (Flash memory). Optical data storage, and the like, and also implemented in the form of a carrier wave (eg, transmission over the Internet).
또한, 컴퓨터로 읽을 수 있는 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.The computer readable recording medium can also be distributed over computer systems connected over a computer network so that the computer readable code is stored and executed in a distributed fashion.
전술한 본 발명에 따른 비디오 부호화에서의 화면간/화면내 예측 부호화 방법에 대한 바람직한 실시예에 대하여 설명하였지만, 본 발명은 이에 한정되는 것이 아니고 특허청구범위와 발명의 상세한 설명 및 첨부한 도면의 범위 안에서 여러 가지로 변형하여 실시하는 것이 가능하고 이 또한 본 발명에 속한다.Although preferred embodiments of the inter-screen / in-screen prediction coding method in video encoding according to the present invention have been described above, the present invention is not limited thereto, but the claims and the detailed description of the invention and the scope of the accompanying drawings. Various modifications can be made therein and this also belongs to the present invention.
도 1은 종래 기술의 H.264|AVC 부호화기에서 화면간 예측 부호화를 위한 16×16 매크로 블록 단위 블록의 분할 블록 타입을 나타낸 도면.BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a diagram showing a divided block type of a 16 × 16 macroblock unit block for inter prediction encoding in a conventional H.264 | AVC encoder.
도 2는 비디오 영상에서의 카메라의 움직임에 의한 움직임 생성 타입을 설명하기 위한 도면.FIG. 2 is a diagram for describing a motion generation type due to camera movement in a video image. FIG.
도 3은 2차원 영상 공간에 투영된 움직임 모델을 설명하기 위한 개념도.3 is a conceptual diagram illustrating a motion model projected on a two-dimensional image space.
도 4는 본 발명의 일 실시예에 적용된 16×16 매크로 블록 크기 이상의 수퍼 매트로 블록 및 블록 분할 타입의 일 예를 나타낸 도면.4 is a diagram illustrating an example of a block and a block division type of a super mat having a size of 16 × 16 macroblocks or more applied to an embodiment of the present invention.
도 5는 본 발명의 일 실시예에 따른 비디오 부호화에서의 화면간 예측 부호화 방법을 설명하기 위한 전체적인 흐름도.5 is an overall flowchart illustrating a method of inter prediction encoding in video encoding according to an embodiment of the present invention.
Claims (18)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070132435 | 2007-12-17 | ||
KR20070132435 | 2007-12-17 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090065401A KR20090065401A (en) | 2009-06-22 |
KR100951301B1 true KR100951301B1 (en) | 2010-04-02 |
Family
ID=40993755
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080012337A KR100951301B1 (en) | 2007-12-17 | 2008-02-11 | Method of inter-frame/intra block predictive coding in video coding |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100951301B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011145836A2 (en) * | 2010-05-17 | 2011-11-24 | 에스케이텔레콤 주식회사 | Image coding/decoding device using coding block in which intra block and inter block are mixed, and method thereof |
WO2011155758A3 (en) * | 2010-06-07 | 2012-04-19 | ㈜휴맥스 | Method for encoding/decoding high-resolution image and device for performing same |
KR101396838B1 (en) | 2013-01-24 | 2014-05-19 | 전자부품연구원 | Video stabilization method and system by selection one of various motion models |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100095992A (en) | 2009-02-23 | 2010-09-01 | 한국과학기술원 | Method for encoding partitioned block in video encoding, method for decoding partitioned block in video decoding and recording medium implementing the same |
KR101527085B1 (en) * | 2009-06-30 | 2015-06-10 | 한국전자통신연구원 | Intra encoding/decoding method and apparautus |
US20120106629A1 (en) | 2009-07-01 | 2012-05-03 | Thomson Licensing Llc | Methods and apparatus for signaling intra prediction for large blocks for video encoders and decoders |
KR20110068792A (en) | 2009-12-16 | 2011-06-22 | 한국전자통신연구원 | Adaptive image coding apparatus and method |
FI4084478T3 (en) | 2010-09-27 | 2023-12-05 | Lg Electronics Inc | Method for partitioning block and decoding device |
KR101648123B1 (en) * | 2011-08-31 | 2016-08-18 | 한국과학기술원 | Method for encoding partitioned block in video encoding, method for decoding partitioned block in video decoding and recording medium implementing the same |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070016962A (en) * | 2005-08-03 | 2007-02-08 | 경희대학교 산학협력단 | A hybrid scalable encoding Apparatus and method of moving pictures using spatial-temporal specific each area |
KR20080065802A (en) * | 2007-01-10 | 2008-07-15 | 삼성전자주식회사 | Method for generating small image of compressed image adaptivly encoded macro block and apparatus thereof |
KR20080088299A (en) * | 2007-03-29 | 2008-10-02 | 삼성전자주식회사 | Method for encoding and decoding motion model parameter, and method and apparatus for video encoding and decoding using motion model parameter |
-
2008
- 2008-02-11 KR KR1020080012337A patent/KR100951301B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070016962A (en) * | 2005-08-03 | 2007-02-08 | 경희대학교 산학협력단 | A hybrid scalable encoding Apparatus and method of moving pictures using spatial-temporal specific each area |
KR20080065802A (en) * | 2007-01-10 | 2008-07-15 | 삼성전자주식회사 | Method for generating small image of compressed image adaptivly encoded macro block and apparatus thereof |
KR20080088299A (en) * | 2007-03-29 | 2008-10-02 | 삼성전자주식회사 | Method for encoding and decoding motion model parameter, and method and apparatus for video encoding and decoding using motion model parameter |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011145836A2 (en) * | 2010-05-17 | 2011-11-24 | 에스케이텔레콤 주식회사 | Image coding/decoding device using coding block in which intra block and inter block are mixed, and method thereof |
WO2011145836A3 (en) * | 2010-05-17 | 2012-03-22 | 에스케이텔레콤 주식회사 | Image coding/decoding device using coding block in which intra block and inter block are mixed, and method thereof |
US9420293B2 (en) | 2010-05-17 | 2016-08-16 | Sk Telecom Co., Ltd. | Image coding/decoding device using coding block in which intra block and inter block are mixed, and method thereof |
WO2011155758A3 (en) * | 2010-06-07 | 2012-04-19 | ㈜휴맥스 | Method for encoding/decoding high-resolution image and device for performing same |
KR101396838B1 (en) | 2013-01-24 | 2014-05-19 | 전자부품연구원 | Video stabilization method and system by selection one of various motion models |
Also Published As
Publication number | Publication date |
---|---|
KR20090065401A (en) | 2009-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100951301B1 (en) | Method of inter-frame/intra block predictive coding in video coding | |
JP5234586B2 (en) | Video encoding method and decoding method, apparatus thereof, program thereof, and storage medium storing program | |
JP5234587B2 (en) | Video encoding method and decoding method, apparatus thereof, program thereof, and storage medium storing program | |
KR100688383B1 (en) | Motion estimation and compensation for panorama image | |
JP4509104B2 (en) | Fast mode decision algorithm for intra prediction in advanced video coding | |
KR101921781B1 (en) | Image decoding apparatus, image encoding apparatus, image decoding method, image encoding method, and recording medium for recording data structure of encoded data | |
JP4752631B2 (en) | Image coding apparatus and image coding method | |
US20120114036A1 (en) | Method and Apparatus for Multiview Video Coding | |
KR100924048B1 (en) | A fast mode decision method of intra block prediction in video coding | |
Kim et al. | Zoom motion estimation using block-based fast local area scaling | |
WO2010082463A1 (en) | Image encoding apparatus and image encoding method, image decoding apparatus and image decoding method | |
KR101396754B1 (en) | Method and apparatus for compressing video using template matching and motion prediction | |
JP2009049519A (en) | Prediction motion vector generating device of motion picture coding device | |
KR101603414B1 (en) | Method and apparatus for encoding of 2demensional video using depth image | |
CN115022639B (en) | Encoding and decoding method, device and equipment thereof | |
JP2009260421A (en) | Moving image processing system, encoding device, encoding method, encoding program, decoding device, decoding method and decoding program | |
Ahmmed et al. | Discrete cosine basis oriented motion modeling for fisheye and 360 degree video coding | |
KR100790757B1 (en) | Adaptive fast motion estimation method for h.264 video encoder | |
JP2008099175A (en) | Video coder, and video coding method | |
WO2013077305A1 (en) | Image decoding device, image decoding method, image coding device | |
JP2007184846A (en) | Moving image coding apparatus | |
WO2013035452A1 (en) | Image encoding method, image decoding method, and apparatuses and programs thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130304 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20140303 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20150716 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20160225 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20170224 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20180226 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20190304 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20200302 Year of fee payment: 11 |