KR101557374B1 - Intra Prediction Method and Apparatus and Image Encoding/Decoding Method and Apparatus Using Same - Google Patents
Intra Prediction Method and Apparatus and Image Encoding/Decoding Method and Apparatus Using Same Download PDFInfo
- Publication number
- KR101557374B1 KR101557374B1 KR1020130081459A KR20130081459A KR101557374B1 KR 101557374 B1 KR101557374 B1 KR 101557374B1 KR 1020130081459 A KR1020130081459 A KR 1020130081459A KR 20130081459 A KR20130081459 A KR 20130081459A KR 101557374 B1 KR101557374 B1 KR 101557374B1
- Authority
- KR
- South Korea
- Prior art keywords
- pixel
- current block
- weighted
- pixel value
- pixels
- 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/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/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/182—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 a pixel
-
- 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/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/196—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
Abstract
본 발명은 인트라 예측 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치에 관한 것이다.
본 발명은 인트라 예측 장치에 있어서, 주변 블록에 포함되는 하나 이상의 인접 화소의 화소값을 현재 블록의 각 화소와 하나 이상의 인접 화소와의 거리에 따라 가중 평균하여 현재 블록의 각 화소의 화소값을 예측하는 것을 특징으로 하는 인트라 예측 장치를 제공한다.
본 발명에 의하면, 부호화하고자 하는 현재 블록을 더욱 정확하게 예측함으로써, 실제 블록과 예측된 블록 간의 차이를 줄여 부호화의 효율을 높일 수 있으며, 그를 통해 압축 효율을 향상시킬 수 있다.The present invention relates to an intra prediction method and apparatus, and a method and apparatus for image coding / decoding using the same.
The present invention relates to an intra prediction apparatus for predicting a pixel value of each pixel of a current block by weighting a pixel value of one or more adjacent pixels included in a neighboring block in accordance with a distance between each pixel of the current block and one or more adjacent pixels, And an intraprediction unit.
According to the present invention, the current block to be encoded can be more accurately predicted, thereby reducing the difference between the actual block and the predicted block, thereby improving the coding efficiency and improving the compression efficiency.
Description
본 발명은 인트라 예측 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치에 관한 것이다. 더욱 상세하게는, 영상의 현재 블록을 주변 블록으로부터 예측하고 부호화하고 복호화하는 데 있어서, 실제의 현재 블록과 예측된 현재 블록 간의 차이를 최소화하는 인트라 예측 방법 및 장치와 그를 이용한 영상의 부호화/복호화 방법 및 장치에 관한 것이다.The present invention relates to an intra prediction method and apparatus, and a method and apparatus for image coding / decoding using the same. More particularly, the present invention relates to an intra prediction method and apparatus for predicting, coding, and decoding a current block of an image from neighboring blocks, which minimizes a difference between an actual current block and a predicted current block, and an image encoding / And apparatus.
MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)은 기존의 MPEG-4 Part 2와 H.263 표준안보다 우수하고 뛰어난 비디오 압축 기술을 개발하였다. 이 새로운 표준안은 H.264/AVC(Advanced video Coding)이라 하며, MPEG-4 Part 10 AVC와 ITU-T Recommendation H.264로 공동으로 발표되었다. 이러한 H.264/AVC(이하 'H.264'라 약칭함)에서는 MPEG-1, MPEG-2, MPEG-4 Part2 Visual 등 기존의 동영상 부호화와 관련된 국제 표준과는 다른 방법인 공간 예측 부호화(Spatial Predictive Coding) 방법을 사용한다.Moving Picture Experts Group (MPEG) and Video Coding Experts Group (VCEG) have developed superior video compression techniques superior to the existing MPEG-4
기존의 동영상 부호화 방법에서는 이산 코사인 변환 영역(DCT Domain: Discrete Cosine Transform Domain)에서 변환된 계수(Coefficient)값에 대한 "인트라 예측(Intra Prediction)"을 사용함으로써 부호화 효율 증대를 추구하며, 그로 인해 저역 전송 비트율 대의 주관적 화질을 열화시키는 결과를 초래하였다. 하지만, H.264에서는 변환 영역(Transform Domain)이 아닌 공간 영역(Spatial Domain)에서의 공간적 인트라 예측(Spatial Intra Prediction)을 기반으로 하는 부호화 방법을 채택하고 있다.In the conventional moving image encoding method, "intra prediction" is used for the coefficient value transformed in the discrete cosine transform domain (DCT domain), thereby seeking to increase the coding efficiency. As a result, Resulting in deterioration in the subjective image quality of the transmission bit rate band. However, H.264 adopts a coding method based on Spatial Intra Prediction in a Spatial Domain instead of a Transform Domain.
기존의 공간적 인트라 예측을 기반으로 하는 부호화 방법을 사용하는 부호화기(Encoder)는 이미 부호화가 완료되어 재생된 이전 블록의 정보로부터 현재 부호화하고자 하는 블록 정보를 예측하고 부호화하고자 하는 실제 블록 정보의 차이(Difference) 정보만을 부호화해서 복호화기(Decoder)로 전송한다. 이때, 블록 정보를 예측하는 데 필요한 파라미터를 복호화기로 전송하거나, 부호화기와 복호화기를 동기화시켜 예측에 필요한 파라미터를 공유하도록 함으로써 복호화기가 블록 정보를 예측하도록 할 수도 있다. 복호화기는 이미 복호화가 완료되어 재생된 주변 블록의 정보를 예측하고, 부호화기로부터 전송된 오차 정보와 예측된 주변 블록의 정보의 합을 구하여 원하는 현재 복호화하고자 하는 블록의 정보를 생성하여 재생한다. 이때도 역시 부호화기로부터 예측에 필요한 파라미터가 전송되었다면, 복호화기는 해당 파라미터를 이용하여 주변 블록의 정보를 예측하는데 이용한다.An encoder using a coding method based on the existing spatial intraprediction predicts block information to be currently encoded from the information of a previous block that has been already encoded and reproduced and calculates a difference ) Information and transmits it to a decoder. At this time, parameters necessary for predicting the block information may be transmitted to the decoder, or the encoder and the decoder may be synchronized to share parameters required for prediction, so that the decoder may predict the block information. The decoder predicts the information of the neighboring block that has already been decoded and reproduced, obtains the sum of the error information transmitted from the encoder and the information of the predicted neighboring block, and generates and reproduces information of a desired current block to be decoded. In this case, if parameters necessary for prediction are also transmitted from the encoder, the decoder uses the parameter to predict information of neighboring blocks.
한편, 인트라 예측에는 인트라 4×4 예측, 인트라 16×16 예측 및 인트라 8×8 예측 등이 있는데, 각 인트라 예측에는 복수 개의 예측 모드를 포함하고 있다.Intra prediction includes intra 4x4 prediction, intra 16x16 prediction, and intra 8x8 prediction, and each intra prediction includes a plurality of prediction modes.
도 1은 통상적인 9 가지의 4×4 인트라 예측 모드를 나타내는 예시도이다.1 is an exemplary diagram showing nine conventional 4x4 intra prediction modes.
도 1을 참조하면, 인트라 4×4 예측에는, 수직(Vertical) 모드, 수평(Horizontal) 모드, DC(Direct Current) 모드, 대각선 왼쪽(Diagonal down-left) 모드, 대각선 오른쪽(Diagonal down-right), 수직 오른쪽(Vertical-right) 모드, 수평 아래쪽(Horizontal-down) 모드, 수직 왼쪽(Vertical-left) 및 수평 위쪽(Horizontal-up) 모드를 포함하는 9 가지의 예측 모드가 있다.1, intra 4x4 prediction includes a vertical mode, a horizontal mode, a DC (direct current) mode, a diagonal down-left mode, a diagonal down-right mode, There are nine prediction modes including a vertical-right mode, a horizontal-down mode, a vertical-left and a horizontal-up mode.
도 2는 통상적인 4 가지 16×16 인트라 예측 모드를 나타내는 예시도이다.FIG. 2 is an exemplary diagram showing a conventional four 16 × 16 intra prediction modes.
도 2를 참조하면, 인트라 16×16 예측에는, 수직(Vertical) 모드, 수평(Horizontal) 모드, DC 모드 및 플래인(Plane) 모드를 포함하는 4 가지의 예측 모드가 있다. 인트라 8×8 예측도 인트라 16×16 예측과 유사하게 4 가지의 예측 모드가 있다. Referring to FIG. 2, intra-16 × 16 prediction has four prediction modes including a vertical mode, a horizontal mode, a DC mode, and a plane mode. Intra 8x8 prediction There are four prediction modes similar to intra 16x16 prediction.
예측 모드로서 DC 모드를 활용하는 인트라 예측(이하에서는 'DC 모드 예측'이라 약칭함)에서는 블록 단위의 평균값으로 예측이 된다. 여기서, 평균값이란 부호화하고자 하는 현재 블록의 좌측 블록의 4 화소(인트라 4×4 예측인 경우) 또는 16 화소(인트라 16×16 예측인 경우)와 상단 블록의 4 화소(인트라 4×4 예측인 경우) 또는 16 화소(인트라 16×16 예측인 경우)에 대한 총 8 화소(인트라 4×4 예측인 경우) 또는 32 화소(인트라 16×16 예측인 경우)의 평균값을 말한다. 따라서, DC 모드를 예측 모드로서 활용하여 인트라 예측을 하는 경우, 현재 블록의 주변 블록의 평균값을 구해 부호화하고자 하는 현재 블록의 4×4 화소 또는 16×16 화소 모두를 예측한다.In the intra prediction using the DC mode as the prediction mode (hereinafter referred to as " DC mode prediction "), prediction is made with an average value in block units. Here, the average value is the average value of four pixels (intra 4x4 prediction) or 16 pixels (intra 16x16 prediction) and four pixels (intra 4x4 prediction) of the left block of the current block to be coded Refers to an average value of a total of 8 pixels (for intra 4x4 prediction) or 32 pixels (for intra 16x16 prediction) for 16 pixels (for intra 16x16 prediction). Therefore, when intraprediction is performed using the DC mode as a prediction mode, an average value of neighboring blocks of the current block is sought to predict both 4x4 pixels or 16x16 pixels of the current block to be coded.
따라서, 인트라 4×4 예측, 인트라 16×16 예측 등의 종류에 관계없이, DC 모드 예측을 위한 예측값(Prediction Value 또는 Predictor)은 현재 블록의 16 화소(인트라 4×4 예측인 경우) 또는 256 화소(인트라 16×16 예측인 경우)에 대하여 모두 같은 값을 갖는다. 이는 현재 블록에 대한 예측의 정확성을 저하시켜 부호화 효율 또는 압축 효율을 저하하는 문제점을 발생시킨다.Therefore, regardless of the types of intra 4x4 prediction and intra 16x16 prediction, a predictive value (Prediction Value or Predictor) for DC mode prediction is 16 pixels (in case of intra 4x4 prediction) or 256 pixels (In case of intra 16x16 prediction). This lowers the accuracy of the prediction of the current block, thereby causing a problem of lowering the coding efficiency or the compression efficiency.
또한, 예측의 정확성이 떨어진다면 실제 블록과 예측된 블록 간의 차분 값은 커지게 되는데, 전술한 바와 같은 DC 모드 예측은 오차 정보를 증가시켜 부호화 효율을 저하하는 문제점이 있다.Also, if the accuracy of the prediction deteriorates, the difference value between the actual block and the predicted block becomes large. However, the DC mode prediction as described above has a problem of increasing the error information and decreasing the coding efficiency.
전술한 문제점을 해결하기 위해 본 발명은, 영상의 현재 블록을 예측하는 인트라 예측을 수행하는 데 있어서 실제 블록과 예측된 블록 간의 차이를 줄일 수 있도록 하여 영상의 압축 효율을 향상시키는 데 주된 목적이 있다.In order to solve the above-described problems, the present invention has a main purpose of improving the compression efficiency of an image by reducing the difference between an actual block and a predicted block in performing intra prediction for predicting a current block of an image .
전술한 목적을 달성하기 위해 본 발명은, 인트라 예측 장치에 있어서, 주변 블록에 포함되는 하나 이상의 인접 화소 각각의 화소값에 가중치를 부가하여 가중 화소값을 계산하는 가중 화소값 계산부; 및 하나 이상의 인접 화소의 가중 화소값을 이용하여 현재 블록의 각 화소의 예측 화소값을 계산하는 예측 화소값 계산부를 포함하는 것을 특징으로 하는 인트라 예측 장치를 제공한다.According to an aspect of the present invention, there is provided an intraprediction apparatus comprising: a weighted pixel value calculation unit for calculating a weighted pixel value by adding a weight to pixel values of one or more adjacent pixels included in a neighboring block; And a predictive pixel value calculation unit for calculating a predictive pixel value of each pixel of the current block using the weighted pixel values of one or more adjacent pixels.
또한, 본 발명의 다른 목적에 의하면, 인트라 예측 방법에 있어서, (a) 주변 블록에 포함되는 하나 이상의 인접 화소 각각의 화소값에 가중치를 부가하여 가중 화소값을 계산하는 단계; 및 (b) 하나 이상의 인접 화소의 가중 화소값을 이용하여 현재 블록의 각 화소의 예측 화소값을 계산하는 단계를 포함하는 것을 특징으로 하는 인트라 예측 방법을 제공한다.According to another aspect of the present invention, there is provided an intraprediction method comprising the steps of: (a) calculating a weighted pixel value by adding a weight to pixel values of one or more adjacent pixels included in a neighboring block; And (b) calculating a predicted pixel value of each pixel of the current block using the weighted pixel values of one or more adjacent pixels.
또한, 본 발명의 또 다른 목적에 의하면, 영상을 부호화하는 장치에 있어서, 주변 블록의 하나 이상의 인접 화소의 화소값에 가중치를 부가하여 현재 블록의 각 화소의 예측 화소값을 계산함으로써 현재 블록을 예측하는 인트라 예측부; 현재 블록의 각 화소의 원 화소값과 현재 블록의 각 화소의 예측 화소값의 차이값을 계산하여 잔차신호를 생성하는 감산부; 잔차신호를 주파수 영역으로 변환하는 변환부; 변환된 잔차신호를 양자화하는 양자화부; 및 양자화된 잔차신호를 비트스트림으로 부호화하는 부호화부를 포함하는 것을 특징으로 하는 영상 부호화 장치를 제공한다.According to still another aspect of the present invention, there is provided an apparatus for encoding an image, the apparatus comprising: prediction means for calculating a predicted pixel value of each pixel of a current block by adding a weight to pixel values of one or more adjacent pixels of a neighboring block, An intra predictor; A subtractor for generating a residual signal by calculating a difference value between an original pixel value of each pixel of the current block and a predicted pixel value of each pixel of the current block; A converter for converting the residual signal into a frequency domain; A quantization unit for quantizing the transformed residual signal; And a coding unit for coding the quantized residual signal into a bitstream.
또한, 본 발명의 또 다른 목적에 의하면, 영상을 부호화하는 방법에 있어서, (a) 주변 블록의 하나 이상의 인접 화소의 화소값에 가중치를 부가하여 현재 블록의 각 화소의 예측 화소값을 계산함으로써 현재 블록을 예측하는 단계; (b) 현재 블록의 각 화소의 원 화소값과 현재 블록의 각 화소의 예측 화소값의 차이값을 계산하여 잔차신호를 생성하는 단계; (c) 잔차신호를 주파수 영역으로 변환하는 단계; (d) 변환된 잔차신호를 양자화하는 단계; 및 (e) 양자화된 잔차신호를 비트스트림으로 부호화하는 단계를 포함하는 것을 특징으로 하는 영상 부호화 방법을 제공한다.According to still another aspect of the present invention, there is provided a method of encoding an image, comprising: (a) adding a weight to a pixel value of one or more adjacent pixels of a neighboring block to calculate a predicted pixel value of each pixel of the current block, Predicting a block; (b) generating a residual signal by calculating a difference value between an original pixel value of each pixel of the current block and a predicted pixel value of each pixel of the current block; (c) converting the residual signal into a frequency domain; (d) quantizing the transformed residual signal; And (e) encoding the quantized residual signal into a bitstream.
또한, 본 발명의 또 다른 목적에 의하면, 영상을 복호화하는 장치에 있어서, 비트스트림을 복호화하여 잔차신호를 추출하는 복호화부; 추출된 잔차신호를 역 양자화하는 역 양자화부; 역 양자화된 잔차신호를 시간 영역으로 역 변환하는 역 변환부; 주변 블록의 하나 이상의 인접 화소의 화소값에 가중치를 부가하여 현재 블록의 각 화소의 예측 화소값을 계산함으로써 현재 블록을 예측하는 인트라 예측부; 및 역 변환된 잔차신호와 현재 블록의 각 화소의 예측 화소값을 더한 값을 계산하여 현재 블록의 원 화소값을 복원하는 가산부를 포함하는 것을 특징으로 하는 영상 복호화 장치를 제공한다.According to another aspect of the present invention, there is provided an apparatus for decoding an image, comprising: a decoding unit decoding a bitstream to extract a residual signal; A dequantizer for dequantizing the extracted residual signal; An inverse transform unit for inversely transforming the inversely quantized residual signal into a time domain; An intra predictor for predicting a current block by adding weight values to pixel values of one or more adjacent pixels of a neighboring block to calculate a predicted pixel value of each pixel of the current block; And an adder for calculating a sum of the inverse transformed residual signal and the predicted pixel value of each pixel of the current block and restoring the original pixel value of the current block.
또한, 본 발명의 또 다른 목적에 의하면, 영상을 복호화하는 방법에 있어서, (a) 비트스트림을 복호화하여 잔차신호를 추출하는 단계; (b) 추출된 잔차신호를 역 양자화하는 단계; (c) 역 양자화된 잔차신호를 시간 영역으로 역 변환하는 단계; (d) 주변 블록의 하나 이상의 인접 화소의 화소값에 가중치를 부가하여 현재 블록의 각 화소의 예측 화소값을 계산함으로써 현재 블록을 예측하는 단계; 및 (e) 역 변환된 잔차신호와 현재 블록의 각 화소의 예측 화소값을 더한 값을 계산하여 현재 블록의 원 화소값을 복원하는 단계를 포함하는 것을 특징으로 하는 영상 복호화 방법을 제공한다.According to another aspect of the present invention, there is provided a method of decoding an image, the method comprising: (a) decoding a bitstream to extract a residual signal; (b) dequantizing the extracted residual signal; (c) inversely transforming the dequantized residual signal into a time domain; (d) predicting a current block by adding a weight to pixel values of one or more adjacent pixels of a neighboring block to calculate a predicted pixel value of each pixel of the current block; And (e) reconstructing the original pixel value of the current block by calculating a value obtained by adding the inverse transformed residual signal to the predicted pixel value of each pixel of the current block.
또한, 본 발명의 또 다른 목적에 의하면, 인트라 예측 장치에 있어서, 주변 블록에 포함되는 하나 이상의 인접 화소의 화소값을 현재 블록의 각 화소와 하나 이상의 인접 화소와의 거리에 따라 가중 평균하여 현재 블록의 각 화소의 화소값을 예측하는 것을 특징으로 하는 인트라 예측 장치를 제공한다.According to still another aspect of the present invention, in an intraprediction apparatus, a pixel value of one or more adjacent pixels included in a neighboring block is weighted averaged according to a distance between each pixel of the current block and one or more adjacent pixels, And the pixel value of each pixel of the intra prediction unit is predicted.
이상에서 설명한 바와 같이 본 발명에 의하면, 부호화하고자 하는 현재 블록을 더욱 정확하게 예측함으로써, 실제 블록과 예측된 블록 간의 차이를 줄여 부호화의 효율을 높일 수 있으며, 그를 통해 압축 효율을 향상시킬 수 있다.As described above, according to the present invention, the current block to be encoded can be more accurately predicted, thereby reducing the difference between the actual block and the predicted block, thereby improving the coding efficiency and improving the compression efficiency.
도 1은 통상적인 9 가지의 4×4 인트라 예측 모드를 나타내는 예시도,
도 2는 통상적인 4 가지 16×16 인트라 예측 모드를 나타내는 예시도,
도 3은 본 발명의 일 실시예에 따른 영상 부호화 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도,
도 4는 본 발명의 일 실시예에 따른 인트라 예측 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도,
도 5는 본 발명의 일 실시예에 따른 인트라 예측 방법을 설명하기 위한 순서도,
도 6은 본 발명의 일 실시예에 따라 현재 블록의 각 화소에 대한 인접 화소의 가중 화소값을 계산하는 과정을 설명하기 위한 순서도,
도 7은 본 발명의 일 실시예에 따른 영상 부호화 방법을 설명하기 위한 순서도,
도 8은 본 발명의 일 실시예에 따른 영상 복호화 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도,
도 9는 본 발명의 일 실시예에 따른 영상 복호화 방법을 설명하기 위한 순서도,
도 10은 본 발명의 일 실시예에 따라 거리에 따른 가중치를 이용하여 현재 블록을 예측하는 과정을 설명하기 위한 예시도이다.1 is an exemplary diagram showing nine conventional 4x4 intra prediction modes,
2 is an exemplary diagram showing a conventional four 16 × 16 intra prediction modes,
3 is a block diagram schematically illustrating an electronic configuration of an image encoding apparatus according to an embodiment of the present invention.
4 is a block diagram schematically illustrating an electronic configuration of an intra prediction apparatus according to an embodiment of the present invention;
5 is a flowchart illustrating an intra prediction method according to an embodiment of the present invention.
6 is a flowchart illustrating a process of calculating a weighted pixel value of an adjacent pixel for each pixel of a current block according to an embodiment of the present invention.
FIG. 7 is a flowchart illustrating a method of encoding an image according to an embodiment of the present invention. FIG.
8 is a block diagram schematically illustrating an electronic configuration of an image decoding apparatus according to an embodiment of the present invention.
FIG. 9 is a flowchart illustrating a video decoding method according to an embodiment of the present invention. FIG.
10 is an exemplary diagram for explaining a process of predicting a current block using a weight according to distance according to an embodiment of the present invention.
이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the drawings, the same reference numerals are used to designate the same or similar components throughout the drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.
도 3은 본 발명의 일 실시예에 따른 영상 부호화 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도이다.3 is a block diagram schematically illustrating an electronic configuration of an image encoding apparatus according to an embodiment of the present invention.
본 발명의 일 실시예에 따른 영상 부호화 장치(300)는 영상의 현재 블록을 현재 블록의 주변에 있는 하나 이상의 주변 블록을 이용하여 예측하고 영상을 부호화하는 장치로서, 도시한 바와 같이, 인트라 예측부(310), 감산부(320), 변환부(330), 양자화부(340) 및 부호화부(350)를 포함하여 구성될 수 있다.The image encoding
이러한 영상 부호화 장치(300)는 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 이동통신 단말기(Mobile Communication Terminal) 등일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 부호화하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미한다.The
인트라 예측부(310)는 현재 블록을 영상 내에서 현재 블록의 주변 블록을 이용하여 예측하는데, 하나 이상의 주변 블록의 하나 이상의 화소값(Pixel Value)에 가중치(Weight Value)를 부가하여 현재 블록의 각 화소의 예측 화소값(Predicted Pixel Value)을 계산함으로써 현재 블록을 예측한다. 여기서, 주변 블록은 전술한 바와 같이, 현재 블록 이전에 압축되고 현재 블록의 주변에 위치한 하나 이상의 주변 블록일 수 있는데, 특히 현재 블록의 좌측 블록 및 현재 블록의 상단 블록 중 하나 이상일 수 있다.The
또한, 인트라 예측부(310)는 부호화하고자 하는 현재 블록의 주변에 있는 하나 이상의 주변 블록의 하나 이상의 인접 화소의 화소값의 평균값을 현재 블록의 화소값으로 예측하는 인트라 예측 모드인 DC(Direct Current) 모드를 이용하여 인트라 예측을 수행할 때에만 전술한 바와 같이 가중치를 부여하여 현재 블록을 예측할 수 있다. 또한, 가중치는 현재 블록의 각 화소의 위치와 하나 이상의 주변 블록의 하나 이상의 인접 화소 각각의 위치 간의 거리에 따라 다르게 부가될 수 있다.In addition, the
즉, 인트라 예측부(310)는 현재 블록의 주변 블록에 포함된 화소들 중 현재 블록과 인접한 화소들의 화소값을 평균하여 현재 블록의 각 화소를 예측하는 인트라 예측 모드인 DC 모드를 이용하여 현재 블록을 예측할 때에는, 인접 화소들의 화소값을 단순히 평균하여 그 평균값을 현재 블록의 모든 화소의 화소값으로 예측하는 것이 아니라, 현재 블록의 각 화소와 인접 화소들 간의 거리에 따라 가중치를 다르게 설정하여 인접 화소들의 화소값에 부가함으로써 인접 화소들의 가중 화소값(Weighted Pixel Value)을 계산하고 가중 화소값을 평균하여 현재 블록의 모든 화소의 화소값을 예측한다. 여기서, "인접 화소"란, 주변 블록에 포함되되 현재 블록과 인접해 있는 화소일 수 있지만, 주변 블록에 포함되되 현재 블록과 인접하지 않은 화소도 될 수 있다. 인트라 예측부(310)에 대해서는 후술하는 과정에서 도 4를 통해 상세히 설명한다. That is, the
감산부(320)는 현재 블록의 각 화소의 원 화소값(Original Pixel Value)과 현재 블록의 각 화소의 예측 화소값(Predicted Pixel Value)의 차이값을 계산하여 잔차신호(Residual Signal)를 생성한다.The
변환부(330)는 감산부(320)에 의해 생성된 잔차신호를 주파수 영역으로 변환한다. 여기서, 변환부(330)는 이산 코사인 변환(DCT: Discrete Cosine Transform, 이하 'DCT 변환'이라 칭함) 또는 웨이블릿 변환(Wavelet Transform) 등의 시간축의 화상 신호를 주파수축으로 변환하는 다양한 변환 기법을 이용하여 잔차신호를 주파수 영역으로 변환할 수 있다.The transforming
양자화부(340)는 변환부에 의해 주파수 영역으로 변환된 잔차신호를 양자화(Quantization)한다. 부호화부(350)는 양자화부(340)에 의해 양자화된 잔차신호를 비트스트림으로 부호화한다. 이러한 부호화 기술로서는 엔트로피 부호화(Entropy Encoding) 기술이 사용될 수 있으나, 반드시 이에 한정하지 않고 다른 다양한 부호화 기술이 사용될 수도 있을 것이다.The
도 4는 본 발명의 일 실시예에 따른 인트라 예측 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도이다.4 is a block diagram schematically showing an electronic configuration of an intra prediction apparatus according to an embodiment of the present invention.
본 발명의 일 실시예에 따른 인트라 예측 장치(400)는 도 3을 통해 전술한 영상 부호화 장치에서는 인트라 예측부(310)로 구현될 수 있다. 이하에서는 설명의 편의를 위해, 본 발명의 일 실시예에 따른 인트라 예측 장치를 '인트라 예측부(310)'라 약칭한다.The intraprediction apparatus 400 according to an embodiment of the present invention may be implemented as an
본 발명의 일 실시예에 따른 인트라 예측부(310)는 영상의 현재 블록을 현재 블록의 주변에 있는 하나 이상의 주변 블록을 이용하여 예측하는 인트라 예측 장치로서, 하나 이상의 주변 블록에 포함되는 하나 이상의 인접 화소의 화소값을 현재 블록의 각 화소와 하나 이상의 인접 화소와의 거리에 따라 가중 평균하여 현재 블록의 각 화소의 화소값을 예측한다.The
또한, 인트라 예측부(310)는 가중 화소값 계산부(410) 및 예측 화소값 계산부(420)를 포함하여 구성될 수 있으며, 하나 이상의 주변 블록의 하나 이상의 화소값(Pixel Value)에 가중치(Weight Value)를 부가하여 현재 블록의 각 화소의 예측 화소값을 계산함으로써 현재 블록을 예측한다.The
가중 화소값 계산부(410)는 부호화하고자 하는 현재 블록의 주변에 있는 하나 이상의 주변 블록에 포함되는(특히, 현재 블록과 인접하는) 하나 이상의 인접 화소 각각의 화소값에 가중치를 부가하여 하나 이상의 인접 화소의 가중 화소값을 계산한다.The weighted pixel
여기서, 가중 화소값 계산부(410)는 현재 블록의 각 화소의 위치와 하나 이상의 인접 화소 각각의 위치 간의 거리를 계산하여 거리에 따라 가중치를 다르게 부가할 수 있으며, 이와 같이 거리에 따라 다르게 부가되는 가중치에 따라 인접 화소의 가중 화소값을 계산할 수 있다. 또한, 가중 화소값 계산부(410)는 전술한 가중치를 인접 화소의 화소값에 부가하는 데 있어서, 계산된 거리에 반비례하도록 부가할 수 있다.Here, the weighted pixel
즉, 가중 화소값 계산부(410)는 현재 블록의 현재 화소와 주변 블록의 인접 화소와의 거리가 가까우면 현재 화소와 인접 화소 간의 유사성이 높을 수 있으므로 큰 가중치를 인접 화소의 화소값에 부가하며, 현재 블록의 현재 화소와 주변 블록의 인접 화소와의 거리가 멀면 현재 화소와 인접 화소 간의 유사성이 낮을 수 있으므로 작은 가중치를 인접 화소의 화소값에 부가할 수 있다. 이와 같이, 인접 화소의 화소값에 현재 화소와 인접 화소와의 거리에 반비례하는 가중치를 부가함으로써 예측 모드로서 DC 모드를 활용하는 인트라 예측(이하 'DC 모드 예측'이라 약칭함)에서 화소 간의 유사성을 반영하여 현재 블록과 예측 블록 간의 차이를 더욱 줄일 수 있다.That is, if the current pixel of the current block is close to the adjacent pixel of the neighboring block, the weighted pixel
예측 화소값 계산부(420)는 가중 화소값 계산부(410)에 의해 계산된 하나 이상의 인접 화소에 대한 가중 화소값을 이용하여 현재 블록의 각 화소의 예측 화소값을 계산한다. 여기서, 예측 화소값 계산부(420)는 현재 블록의 각 화소에 대해 하나 이상의 인접 화소의 가중 화소값을 평균함으로써 현재 블록의 각 화소의 예측 화소값을 계산할 수 있다.The predictive pixel
도 5는 본 발명의 일 실시예에 따른 인트라 예측 방법을 설명하기 위한 순서도이다.5 is a flowchart illustrating an intra prediction method according to an embodiment of the present invention.
영상 부호화 장치(300)는 영상을 부호화할 때, 부호화된 데이터의 양을 줄여 부호화 효율을 높이기 위해 부호화하고자 하는 현재 블록의 원 화소값과 이전에 부호화된 주변 블록에 의해 예측된 현재 블록의 예측 화소값의 차이(즉, 잔차 신호)를 부호화한다.When coding an image, the
이를 위해, 인트라 예측부(310)는 전술한 바와 같이, 영상의 현재 블록을 현재 블록의 주변에 있는 하나 이상의 주변 블록을 이용하여 예측하는데, 부호화할 대상인 현재 블록의 각 화소에 대해 인접 화소의 가중 화소값을 계산한다(S510). 즉, 인트라 예측부(310)는 하나 이상의 주변 블록에 포함되는(특히, 현재 블록과 인접하는) 하나 이상의 인접 화소 각각의 화소값에 가중치를 부가하여 하나 이상의 인접 화소의 가중 화소값을 계산한다.For this purpose, as described above, the
또한, 인접 화소의 가중 화소값이 계산되면, 인트라 예측부(310)는 인접 화소의 가중 화소값을 이용하여 현재 블록의 각 화소의 예측 화소값을 계산한다(S520). 여기서, 인트라 예측부(310)는 현재 블록의 각 화소에 대해 하나 이상의 인접 화소의 가중 화소값을 평균함으로써 현재 블록의 각 화소의 예측 화소값을 계산할 수 있다.When the weighted pixel value of the adjacent pixel is calculated, the
한편, 인트라 예측부(310)는 단계 S510에서, 현재 블록의 각 화소에 대한 인접 화소의 가중 화소값을 계산할 때, 각 화소의 위치와 인접 화소의 위치와의 거리에 따라 가중치를 다르게 부가할 수 있다.Meanwhile, when calculating the weighted pixel values of the adjacent pixels for each pixel of the current block in step S510, the
도 6은 본 발명의 일 실시예에 따라 현재 블록의 각 화소에 대한 인접 화소의 가중 화소값을 계산하는 과정을 설명하기 위한 순서도이다.6 is a flowchart illustrating a process of calculating a weighted pixel value of an adjacent pixel for each pixel of a current block according to an exemplary embodiment of the present invention.
인트라 예측부(310)는 영상에서 부호화하고자 하는 블록 즉, 현재 블록이 정해지면, 영상 중에서 주변 블록에 포함되는 화소들 중에서 현재 블록과 인접하는 하나 이상의 인접 화소를 선택한다(S610). 여기서, 선택되는 인접 화소는 현재 블록의 좌측 블록의 모든 인접 화소 중 하나 또는 그 이상의 화소들이거나 현재 블록의 상단 블록의 모든 인접 화소 중 하나 또는 그 이상의 화소들일 수 있으며, 좌측 블록과 상단 블록의 모든 인접 화소들일 수도 있지만, 반드시 이에 한정하지 않고 현재 블록의 주변 블록(우측블록과 하단 블록을 포함할 수 있음)에 있는 모든 화소들일 수 있다.The
하나 이상의 인접 화소를 선택한 인트라 예측부(310)는 현재 블록의 각 화소의 위치와 하나 이상의 인접 화소 각각의 위치 간의 거리를 계산한다(S620). 이와 같이, 현재 블록의 각 화소와 하나 이상의 인접 화소 각각과의 거리가 계산되면, 인트라 예측부(310)는 가중치를 단계 S620에서 계산된 거리에 따라 다르게 설정하여 하나 이상의 인접 화소의 화소값에 부가하고 하나 이상의 인접 화소의 가중 화소값을 계산한다(S630).In step S620, the
즉, 인트라 예측부(310)는 단계 S610에서와 같이, 주변 블록의 인접 화소들이 선택되면, 현재 블록의 모든 화소 중에 특정 화소를 선택하여 선택된 하나 이상의 인접 화소 각각과의 거리를 계산한다. 인트라 예측부(310)는 이와 같이 계산된 특정 화소에 대한 인접 화소 각각과의 거리에 따라 가중치를 다르게 설정하여 각 인접 화소의 화소값에 부가하는데, 거리가 멀면 작은 가중치를 부가하고 거리가 가까우면 큰 가중치를 부가하여 특정 화소와 인접 화소 간의 유사성을 고려한다. 이와 같이, 거리에 따라 다르게 부가된 가중치를 반영하여 인접 화소의 가중 화소값을 계산한다. 인트라 예측부(310)는 전술한 바와 같은 현재 블록의 특정 화소에 대해 인접 화소의 가중 화소값을 계산하는 작업을 모든 화소에 대해 수행한다.That is, as in step S610, when the adjacent pixels of the neighboring block are selected, the
현재 블록의 모든 화소에 대해 각 화소의 위치와 인접 화소의 위치와의 거리에 따라 다른 가중치를 인접 화소의 화소값에 부가하여 가중 화소값을 계산한 후, 인트라 예측부(310)는 현재 블록의 특정 화소에 대해 인접 화소의 가중 화소값을 평균함으로써 특정 화소에 대한 예측 화소값을 계산하며, 이와 같은 과정을 현재 블록의 모든 화소에 대해 수행하여 현재 블록의 모든 화소에 대한 예측 화소값을 계산한다.The
도 7은 본 발명의 일 실시예에 따른 영상 부호화 방법을 설명하기 위한 순서도이다.7 is a flowchart illustrating an image encoding method according to an embodiment of the present invention.
도 3을 통해 전술한 본 발명의 일 실시예에 따른 영상 부호화 장치(300)는 도 4 내지 도 6을 통해 전술한 인트라 예측 장치 즉, 인트라 예측부(310)와 인트라 예측 방법을 이용하여 영상의 현재 블록을 현재 블록의 주변에 있는 하나 이상의 주변 블록을 이용하여 예측하고 영상을 부호화한다.Referring to FIG. 3, the
즉, 영상 부호화 장치(300)는 하나 이상의 주변 블록의 인접 화소의 하나 이상의 화소값에 가중치를 부가하여 현재 블록의 각 화소의 예측 화소값을 계산함으로써 현재 블록을 예측하고(S710), 현재 블록의 각 화소의 원 화소값과 현재 블록의 각 화소의 예측 화소값의 차이값을 계산하여 잔차신호를 생성하며(S720), 생성된 잔차신호를 DCT 변환 또는 웨이블릿 변환 등을 이용하여 주파수 영역으로 변환한 후(S730), 주파수 영역으로 변환된 잔차신호를 양자화하여(S740), 양자화된 잔차신호를 비트스트림으로 부호화한다(S740).That is, the
전술한 바와 같이, 영상 부호화 장치(300)에 의해 비트스트림으로 부호화된 영상은 실시간 또는 비실시간으로 인터넷, 근거리 무선 통신망, 무선랜망, 와이브로망, 이동통신망 등의 유무선 통신망 등을 통하거나 케이블, 범용 직렬 버스(USB: Universal Serial Bus) 등의 통신 인터페이스를 통해 영상 복호화 장치로 전송되어 영상 복호화 장치에서 복호화되어 영상으로 복원되고 재생될 수 있다.As described above, the image encoded with the bit stream by the
도 8은 본 발명의 일 실시예에 따른 영상 복호화 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도이다.FIG. 8 is a block diagram schematically illustrating an electronic configuration of an image decoding apparatus according to an embodiment of the present invention. Referring to FIG.
본 발명의 일 실시예에 따른 영상 복호화 장치(800)는 영상의 현재 블록을 현재 블록의 주변에 있는 하나 이상의 주변 블록을 이용하여 예측하고 영상을 복호화(Decoding)하는 장치로서, 복호화부(810), 역 양자화부(820), 역 변환부(830), 가산부(840) 및 인트라 예측부(850)를 포함하여 구성된다.The
이러한 영상 복호화 장치(800)는 도 3을 통해 전술한 영상 부호화 장치(300)와 같이, 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 이동통신 단말기(Mobile Communication Terminal) 등일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 복호화하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미한다.The
복호화부(810)는 비트스트림을 복호화하여 잔차신호를 추출한다. 즉, 복호화부(810)는 영상 부호화 장치(300)에 의해 부호화된 영상인 비트스트림을 복호화하여 영상의 현재 블록에 대한 화소 정보를 포함하고 있는 잔차신호를 추출한다.The
역 양자화부(820)는 복호화부(810)에 의해 비트스트림으로부터 추출된 잔차신호를 역 양자화(De-quantization)한다. 역 변환부(830)는 역 양자화부(820)에 의해 역 양자화된 잔차신호를 시간 영역으로 역 변환(Inverse Trasformation)한다.The
가산부(830)는 역 변환부(820)에 의해 역 변환된 잔차신호와 인트라 예측부(850)에 의해 예측된 현재 블록의 각 화소의 예측 화소값을 더하여 현재 블록의 원 화소값을 복원한다.The
인트라 예측부(850)는 이전에 복호화되어 복원된 영상의 여러 블록 중에 현재 블록의 주변에 있는 하나 이상의 주변 블록의 하나 이상의 인접 화소의 화소값에 가중치를 부가하여 현재 블록의 각 화소의 예측 화소값을 계산함으로써 현재 블록을 예측한다.The
여기서, 가중치는 현재 블록의 각 화소의 위치와 하나 이상의 주변 블록의 하나 이상의 인접 화소 각각의 위치 간의 거리에 따라 다르게 부가될 수 있다. 또한, 인트라 예측부(850)는 DC 모드 예측을 수행할 때에만 전술한 바와 같이 가중치를 부여하여 현재 블록의 각 화소의 예측 화소값을 계산할 수 있다.Here, the weight may be added differently depending on the distance between the position of each pixel of the current block and the position of each of one or more adjacent pixels of one or more neighboring blocks. In addition, the
이뿐만 아니라, 본 발명의 일 실시예에 따른 영상 복호화 장치(800)의 인트라 예측부(800)는 도 3을 통해 전술한 영상 부호화 장치(300)의 인트라 예측부(310)와 동일 또는 유사하게 주변 블록을 이용하여 현재 블록을 예측할 수 있다. 따라서, 중복 설명을 피하기 위해 이에 대한 상세한 설명은 생략한다.In addition, the
도 9는 본 발명의 일 실시예에 따른 영상 복호화 방법을 설명하기 위한 순서도이다.9 is a flowchart illustrating an image decoding method according to an embodiment of the present invention.
유무선 통신망 또는 케이블 등을 통해 영상에 대한 비트스트림을 수신하여 저장한 영상 복호화 장치(800)는 사용자의 선택 또는 실행 중인 다른 프로그램의 알고리즘에 따라 영상을 재생하기 위해, 영상의 현재 블록을 현재 블록의 주변에 있는 하나 이상의 주변 블록을 이용하여 예측하고 영상을 복호화하여 복원한다.The
이를 위해, 영상 복호화 장치(800)는 비트스트림을 복호화하여 영상의 현재 블록의 화소값에 대한 정보를 나타내는 잔차 신호를 추출한다(S910). 잔차 신호가 추출되면 영상 복호화 장치(800)는 추출된 잔차신호를 역 양자화하고(S920), 역 양자화된 잔차신호를 시간 영역으로 역 변환하며(S930), 시간 영역으로 역 변환된 잔차신호가 나타내는 현재 블록 주위에 있는 하나 이상의 주변 블록의 하나 이상의 화소값에 가중치를 부가하여 현재 블록의 각 화소의 예측 화소값을 계산함으로써 현재 블록을 예측하고(S940), 단계 S930에서 역 변환된 현재 블록의 잔차신호와 단계 S940에서 예측된 현재 블록의 각 화소의 예측 화소값을 더하여 현재 블록의 원 화소값을 복원한다(S950).To this end, the
도 10은 본 발명의 일 실시예에 따라 거리에 따른 가중치를 이용하여 현재 블록을 예측하는 과정을 설명하기 위한 예시도이다.10 is an exemplary diagram for explaining a process of predicting a current block using a weight according to distance according to an embodiment of the present invention.
통상적으로 인트라 예측을 수행할 때에는 "복수 개의 인트라 예측 모드"를 이용하여 인트라 예측을 수행하는데, "복수 개의 인트라 예측 모드" 중 DC 모드에서는 이미 부호화된 주변 블록의 화소(특히, 좌측 블록의 화소와 상단 블록의 화소일 수 있음)들의 평균값을 이용하여 현재 블록의 모든 화소의 화소값을 예측하고 그를 통해 현재 블록을 예측한다.In intra-prediction, intra-prediction is performed using a plurality of intra-prediction modes. In the DC mode among the plurality of intra-prediction modes, pixels of neighboring blocks already coded (Which may be the pixels of the upper block), and predicts the current block through the prediction of the pixel values of all the pixels of the current block.
도 10에서는 비디오 압축 기술의 표준 중 하나인 H.264의 인트라 4×4 모드 예측에서 사용되는 화소들을 나타내었다. 소문자 a 내지 p까지의 16 개의 화소들은 부호화할 현재 블록의 화소들이고, 대문자 A 내지 M까지의 13 개의 화소들은 이전에 압축된 주변 블록의 화소들(즉, 인접 화소들)이다.FIG. 10 shows pixels used in the intra 4x4 mode prediction of H.264, which is one of standards of video compression techniques. The sixteen pixels from the lower case letters a to p are the pixels of the current block to be encoded and the 13 pixels from the uppercase letters A to M are pixels of the previously compressed neighboring block (i.e., adjacent pixels).
도 1을 통해 전술한 통상적인 인트라 4×4 모드 예측을 위한 9 개의 인트라 예측 모드를 이용하여 도 10에 도시한 현재 블록에 대한 인트라 예측을 수행하면, 이미 압축된 주변 블록의 인접 화소 A 내지 M의 화소값을 이용하여 9 개 방향으로 예측하고, 율-왜곡 최적화 방식(RDO: Rate-Distortion Optimization)을 이용하여 9 개의 인트라 예측 모드 중에서 최적 예측 모드를 결정한다.10, intraprediction of the current block shown in FIG. 10 is performed using nine intra prediction modes for intra 4x4 mode prediction described above with reference to FIG. 1, and neighboring pixels A through M Prediction mode is determined from 9 intra-prediction modes using Rate-Distortion Optimization (RDO).
도 1에 도시된 2 번의 인트라 예측 모드인 DC 모드를 이용하여 도 10에 도시한 현재 블록의 화소들의 화소값을 예측할 때, 통상적인 예측 방법의 경우에는 a 내지 p에 이르는 16 개의 화소가 모두 같은 값으로 예측된다. 예를 들어, 첫 번째 행에서 첫 번째 열의 화소인 a 화소의 예측 화소값은 수학식 1과 같이 계산되며, a 화소뿐만 아니라 나머지 b 화소 내지 p 화소도 a 화소와 같이 계산된다. 즉, 현재 블록 내의 화소는 화소의 위치에 관계없이 모두 같은 화소값을 같도록 예측된다.When predicting the pixel values of the pixels of the current block shown in FIG. 10 using the DC mode, which is the intra-prediction mode of 2 times shown in FIG. 1, in the case of the conventional prediction method, all 16 pixels ranging from a to p are the same Lt; / RTI > For example, the predicted pixel value of a pixel which is the pixel of the first column in the first row is calculated as shown in Equation (1), and not only the a pixel but also the remaining b pixel to p pixel are calculated as a pixel. That is, the pixels in the current block are predicted to have the same pixel values regardless of the positions of the pixels.
이와 같이 통상적인 DC 모드를 이용한 현재 블록의 화소값 예측 방법은 현재 블록 내의 화소의 위치가 인접 화소들(A 내지 L)의 위치와 관계없이 모두 같은 화소값으로 예측되기 때문에, 현재 블록 내에서 화소의 위치에 따른 정확한 화소값의 예측이 불가능하다.As described above, in the method of predicting the pixel value of the current block using the normal DC mode, since the positions of the pixels in the current block are predicted to be the same pixel values regardless of the positions of the adjacent pixels (A to L) It is impossible to predict an accurate pixel value according to the position of the pixel.
즉, 부호화하고자 하는 현재 블록의 실제의 화소는 모두 같은 화소값을 가질 수도 있지만 화소의 위치에 따라 다른 화소값을 가질 수 있으며, 현재 블록의 화소의 위치가 인접 화소와 가까울수록 인접 화소의 화소값과 유사할 가능성이 크고 현재 블록의 화소의 위치가 인접 화소와 멀수록 인접 화소의 화소값과 유사할 가능성이 작다. 즉, 현재 블록의 화소의 화소값은 화소의 위치가 인접 화소의 위치와 가까울수록 인접 화소의 화소값과 유사할 가능성이 크다. 하지만, 전술한 바와 같은 통상적인 DC 모드를 이용한 현재 블록의 화소값 예측 방법은 이러한 현재 블록의 화소의 위치와 인접 화소의 위치 간의 관계를 무시하여 모든 화소가 인접 화소의 화소값의 평균값을 갖도록 예측된다.That is, although the actual pixels of the current block to be encoded may all have the same pixel value, they may have different pixel values depending on the positions of the pixels. As the positions of the pixels of the current block are closer to the adjacent pixels, And the position of the pixel of the current block is far from the adjacent pixel, the likelihood of being similar to the pixel value of the adjacent pixel is small. That is, the pixel value of the current block pixel is likely to be similar to the pixel value of the adjacent pixel as the position of the pixel is closer to the position of the adjacent pixel. However, in the method of predicting the pixel value of the current block using the conventional DC mode as described above, the relation between the position of the pixel of the current block and the position of the adjacent pixel is ignored, do.
하지만, 본 발명의 일 실시예에 따르면 현재 블록의 화소의 위치와 인접 화소의 위치 간의 관계를 반영하여 현재 블록의 화소의 화소값을 예측할 수 있다.However, according to the embodiment of the present invention, the pixel value of the current block pixel can be predicted by reflecting the relationship between the pixel position of the current block and the neighboring pixel position.
예를 들어, 도 10에 도시한 바와 같은 인트라 4×4 모드 예측에서 사용되는 화소들의 화소값을 본 발명의 일 실시예에 따라 예측하면, a 내지 p에 이르는 16 개의 화소에 대한 좌측 블록의 인접 화소(I, J, K, L)와 상단 블록의 인접 화소(A, B, C, D)에 가중치를 부가하여 화소값을 계산한다.For example, if the pixel values of the pixels used in intra 4x4 mode prediction as shown in FIG. 10 are predicted according to an embodiment of the present invention, A pixel value is calculated by adding weights to the pixels I, J, K, and L and the adjacent pixels A, B, C, and D of the upper block.
여기서, 가중치는 예측하고자 하는 현재 블록의 화소의 위치와 주변 블록의 인접 화소 위치 사이의 거리(Distance)를 계산하여 계산된 거리에 반비례하도록 부가될 수 있다. 즉, 현재 블록의 각 화소의 화소값은 주변 블록의 인접 화소의 화소값(특히, 좌측 블록의 인접 화소의 화소값과 상단 블록의 인접 화소의 화소값)을 이용해서 예측되는데, 현재 블록의 화소의 위치와 인접 블록의 인접 화소의 위치 사이의 거리가 짧다면 현재 화소와 인접 화소 사이의 유사성이 클 것이라 판단하여 주변 블록의 인접 화소의 화소값에 가중치를 크게 부가하고, 현재 블록의 화소 위치와 주변 블록의 인접 화소의 위치 사이의 거리가 멀다면 현재 화소와 인접 화소 사이의 유사성이 작을 것이라 판단하여 인접 블록의 인접 화소의 화소값에 가중치를 작게 부가한다.Here, the weight may be added in inverse proportion to the distance calculated by calculating the distance between the position of the pixel of the current block to be predicted and the position of the adjacent pixel of the neighboring block. That is, the pixel value of each pixel of the current block is predicted using the pixel value of the adjacent pixel of the neighboring block (in particular, the pixel value of the adjacent pixel of the left block and the pixel value of the adjacent pixel of the upper block) If the distance between the position of the current block and the position of the adjacent pixel of the adjacent block is short, it is determined that the similarity between the current pixel and the adjacent pixel is great, and the weight is added to the pixel value of the adjacent pixel of the neighboring block, If the distance between adjacent pixels of the adjacent block is long, it is determined that the similarity between the current pixel and the adjacent pixel is small, and the weight is added to the pixel value of the adjacent pixel of the adjacent block.
본 발명의 일 실시예에서는 전술한 바와 같이, 하나 이상의 주변 블록에 포함되는 하나 이상의 인접 화소의 화소값을 현재 블록의 각 화소와 하나 이상의 인접 화소와의 거리에 따라 가중 평균하여 현재 블록의 각 화소의 화소값을 예측한다. 수학식 2에서는 이와 같이 거리에 따른 가중 평균을 이용하여 화소값을 예측하기 위한 식을 표현하였다.In one embodiment of the present invention, as described above, the pixel values of one or more neighboring pixels included in one or more neighboring blocks are weighted and averaged according to the distance between each pixel of the current block and one or more neighboring pixels, Of the pixel value. Equation (2) expresses a formula for predicting the pixel value using the weighted average according to the distance.
여기서, x는 현재 블록의 각 화소이고(도 10에서는 a 화소 내지 p 화소), P1 내지 Pn은 각각 주변 블록의 인접 화소이며(도 10에서는 A 화소 내지 L 화소), f1, f2, … fn-1, fn은 각각 현재 블록의 각 화소 x와 주변 블록의 인접 화소 P1 내지 Pn 과의 거리에 따른 가중치이다. 또한, N = f1 + f2 + … + fn-1 + fn이다.Here, x is each pixel of the current block (a to p pixels in FIG. 10), P1 to Pn are adjacent pixels of the neighboring block (A to L pixels in FIG. 10), f1, f2, ... fn-1 and fn are weights according to the distances between the respective pixels x of the current block and the adjacent pixels P1 to Pn of the neighboring blocks. Further, N = f1 + f2 + + fn-1 + fn.
이와 같은 수학식 2를 이용하여 도 10에 도시한 현재 블록의 각 화소 a 내지 p를 예측하면 수학식 3과 같이 나타낼 수 있다. 다만, 설명의 편의를 위해 각 화소의 화소값을 예측하는 데 있어서, 주변 블록을 현재 블록의 좌측 블록과 현재 블록의 상단 블록으로 한정하였고, 주변 블록 내에 있는 인접 화소도 현재 화소가 속한 행과 열에 속한 인접 화소만을 이용하여 현재 블록의 각 화소를 예측하는 것으로 한정하였다. 하지만, 본 발명은 이러한 한정에 제약되지 않으며, 현재 블록의 주변 블록에 포함된 일부 또는 전부의 인접 화소를 이용하여 현재 화소를 예측할 수도 있다.Using Equation (2), each pixel a to p of the current block shown in FIG. 10 can be predicted as shown in Equation (3). However, for the sake of convenience of explanation, in predicting the pixel value of each pixel, the neighboring block is limited to the left block of the current block and the upper block of the current block, and the neighboring pixels in the neighboring block also belong to the row and column It is limited to predicting each pixel of the current block using only adjacent pixels. However, the present invention is not limited to such a limitation, and a current pixel may be predicted using a part or all of adjacent pixels included in a neighboring block of the current block.
여기서, a 화소의 화소값에 대해 살펴보면, a 화소의 화소값은 상단 블록의 인접 화소 A와 좌측 블록의 인접 화소 I에 의해 결정될 수 있는데, a 화소의 위치와 A 화소의 위치 및 I 화소의 위치는 모두 같으며 하나의 화소의 거리(기본 거리)만큼 떨어져 있다. 따라서, a 화소는 A 화소와 I 화소와 기본 거리만큼 떨어져 있으므로 A 화소와 I 화소에 기본 가중치인 '1'을 부가하여 계산되며, 모든 화소의 위치 간의 거리를 '1'이라고 가정하면, a = (1 × A + 1 × I) / (1 + 1) = (A + I) / 2가 된다.Here, the pixel value of the a pixel can be determined by the adjacent pixel A of the upper block and the adjacent pixel I of the left block. Are all the same and are separated by a distance (basic distance) of one pixel. Therefore, a pixel is calculated by adding a basic weighting value '1' to A pixels and I pixels, because a pixel is spaced by a basic distance from A pixels and I pixels. Assuming that a distance between all the pixels is '1', a = (1 x A + 1 x I) / (1 + 1) = (A + I) / 2.
또한, g 화소의 화소값에 대해 살펴보면, g 화소의 화소값은 상단 블록의 인접 화소 C와 좌측 블록의 인접 화소 J에 의해 결정될 수 있는데, g 화소의 위치는 C 화소의 위치와는 두 개의 화소의 거리(기본 거리 X 2)만큼 떨어져 있고 J 화소의 위치와는 세 개의 화소의 거리(기본 거리 X 3)만큼 떨어져 있다. 따라서, g 화소의 화소값을 계산하기 위한 가중치는 C 화소의 경우에는 '2'가 주어지고 J 화소의 경우에는 '3'이 주어지며, 모든 화소의 위치 간의 거리를 '1'이라고 가정하면, g = (3 × C + 2 × J) / (3 + 2) = (3C + 2J) / 5가 된다.The pixel value of the g pixel can be determined by the adjacent pixel C of the upper block and the adjacent pixel J of the left block. The position of the g pixel is determined by the position of the C pixel, (Base distance X 2) and the position of the J pixel is separated by the distance (base distance X 3) of the three pixels. Therefore, the weight for calculating the pixel value of the g pixel is given as '2' for the C pixel and '3' for the J pixel, and assuming that the distance between all the pixel positions is '1' g = (3xC + 2xJ) / (3 + 2) = (3C + 2J) / 5.
이와 같이, 현재 블록의 화소와 주변 블록의 인접 화소와의 거리에 따른 가중치가 고려된 인접 블록의 인접 화소의 화소값을 이용하여 DC 모드 예측을 수행하는 경우, 통상적인 DC 모드 예측을 수행할 때 현재 블록의 예측 화소 값들이 모두 같은 화소값들을 갖는 것과는 달리, 현재 블록의 각 화소 위치에 따라 다른 예측 화소값으로 예측될 수 있다.In the case of performing the DC mode prediction using the pixel values of the adjacent pixels of the adjacent block in which the weight is weighted according to the distance between the pixel of the current block and the adjacent pixel of the neighboring block, The predicted pixel values of the current block may be predicted to be different predicted pixel values according to each pixel position of the current block, unlike the case where the predicted pixel values of the current block have the same pixel values.
도 10을 통해 전술한 예에서는 현재 블록의 예측 화소값을 계산하기 위해 현재 블록의 좌측 블록과 상단 블록의 각 하나의 화소를 이용하였다. 그러나 본 발명은 이러한 예시에 반드시 한정되지 않고, 현재 블록의 좌측 블록과 상단 블록의 a내지 p까지의 16 개의 화소값 전부 또는 일부를 이용하여 현재 블록에 포함된 하나의 화소의 예측값을 얻을 수도 있으며, 현재 블록의 좌측 블록과 상단 블록뿐만 아니라 주변의 모든 블록 또는 일부 블록에 포함된 하나 이상의 화소값의 전부 또는 일부를 이용하여 현재 블록에 포함된 하나의 화소의 예측값을 얻을 수도 있다.10, each of the left block and the upper block of the current block is used to calculate the predicted pixel value of the current block. However, the present invention is not limited to this example, and a predicted value of one pixel included in the current block may be obtained using all or a part of 16 pixel values from a to p of the left block and the upper block of the current block , It is possible to obtain a predicted value of one pixel included in the current block by using all or a part of one or more pixel values included in all the surrounding blocks or some blocks as well as the left and top blocks of the current block.
이와 같이 현재 블록의 화소의 위치와 주변 블록의 인접 화소의 위치 간의 거리에 따라 부가되는 가중치를 반영한 인접 화소의 화소값을 이용하여 현재 블록의 화소값을 예측하는 것은 영상 부호화 장치(300)뿐만 아니라 영상 복호화 장치(800)에서도 인트라 예측부(310, 850)에 의해 동일하게 수행된다.Prediction of the pixel value of the current block using the pixel value of the adjacent pixel reflecting the weight added according to the distance between the pixel position of the current block and the neighboring pixel position of the neighboring block is not limited to the
이와 같이, 영상 부호화 장치(300)와 영상 복호화 장치(800)가 DC 모드 예측을 수행할 때, 현재 블록이 DC 모드로 인트라 예측이 수행되었다고 판단되는 경우에는 인트라 4×4 모드 예측이든 인트라 16×16 모드 예측이든 거리에 따른 가중치를 고려하여 현재 블록의 화소값을 예측함으로써, 예측된 현재 블록이 원래의 현재 블록과 더욱 유사해 지도록 하여 최적의 예측 화소값을 얻을 수 있으며, 그로 인해 원래의 현재 블록과 예측된 현재 블록 간의 차분값을 줄일 수 있어 인트라 예측의 성능을 저하하지 않으면서도 압축 효율을 향상시킬 수 있으며 전송할 데이터량을 줄일 수 있다.In this manner, when the
이상에서는 영상 부호화 장치(300)와 영상 복호화 장치(800)가 각각 독립적인 장치로 구현되는 것으로 설명했지만, 영상 부호화 장치(300)와 영상 복호화 장치(800)는 하나의 장치 내에서 구현될 수도 있다. 영상 부호화 장치(300)와 영상 복호화 장치(800)의 각 구성 요소들 즉, 부호화부(350)와 복호화부(810), 양자화부(340)와 역 양자화부(820), 변환부(330)와 역 변환부(830), 감산부(320)와 가산부(840), 인트라 예측부(310, 850)는 각각이 프로그램을 저장하는 메모리와 프로그램을 실행하여 각 기능을 수행하는 마이크로프로세서를 포함하는 독립적인 하드웨어로 구현될 수도 있지만, 영상 부호화 장치(300) 및 영상 복호화 장치(800)라는 하드웨어 내에서 각 기능을 수행하는 프로그램 모듈로서 구현될 수도 있다.Although the
또한, 영상 부호화 장치(300)와 영상 복호화 장치(800)가 하나의 장치 내에서 구현되는 경우에는, 서로 대응되는 기능을 수행하는 각 구성들 즉, 부호화부(350)와 복호화부(810), 양자화부(340)와 역 양자화부(820), 변환부(330)와 역 변환부(830), 감산부(320)와 가산부(840), 인트라 예측부(310, 850)은 하나의 프로그램 모듈로서 구현될 수 있다.When the
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The foregoing description is merely illustrative of the technical idea of the present invention, and various changes and modifications may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.
이상에서 설명한 바와 같이 본 발명은 영상의 현재 블록을 주변 블록으로부터 예측하고 부호화하고 복호화하는 데 있어서, 실제의 현재 블록과 예측된 현재 블록 간의 차이를 최소화하는 인트라 예측 방법 및 장치와 그를 이용한 영상의 부호화/복호화 방법 및 장치의 분야에 적용되어, 부호화하고자 하는 현재 블록을 더욱 정확하게 예측함으로써 실제 블록과 예측된 블록 간의 차이를 줄여 부호화의 효율을 높일 수 있으며 그를 통해 압축 효율을 향상시킬 수 있는 효과를 발생하는 매우 유용한 발명이다.As described above, the present invention provides an intra prediction method and apparatus for predicting, encoding, and decoding a current block of an image from neighboring blocks, which minimizes a difference between an actual current block and a predicted current block, / Decoding method and apparatus, it is possible to improve the efficiency of coding by reducing the difference between the actual block and the predicted block by predicting the current block to be encoded more accurately, thereby improving the compression efficiency Is a very useful invention.
< 도면의 주요 부분에 대한 부호의 설명 >
300: 영상 부호화 장치 310, 850: 인트라 예측부
320: 감산기 330: 변환부
340: 양자화부 350: 부호화부
410: 가중 화소값 계산부 420: 예측 화소값 계산부
810: 복호화부 820: 역 양자화부
830: 역 변환부 840: 가산부
850: 인트라 예측부Description of the Related Art
300:
320: subtracter 330:
340: quantization unit 350: encoding unit
410: weighted pixel value calculation unit 420: predicted pixel value calculation unit
810: Decoding unit 820: Inverse quantization unit
830: Inverse transform unit 840:
850: Intra prediction unit
Claims (15)
상기 복수의 주변 블록으로부터 선택된 복수의 주변 화소에 상기 현재 블록 내 상기 현재 화소의 위치에 근거하여 가변적으로 결정되는 가중치를 각각 적용함으로써 복수의 가중 화소값을 연산하는 가중 화소값 계산부; 및
상기 복수의 가중 화소값을 이용하여 상기 현재 화소에 대한 예측 화소값을 결정하는 예측 화소값 계산부를 포함하고,
상기 복수의 주변 화소는,
상기 현재 블록의 상단에 인접한 화소로서 상기 현재 화소와 수직으로 동일한 위치에 있는 제1화소,
상기 현재 블록의 좌측에 인접한 화소로서 상기 현재 화소와 수평으로 동일한 위치에 있는 제2화소,
상기 현재 블록의 상단에 위치한 제3화소, 및
상기 현재 블록의 좌측에 위치한 제4화소를 포함하며,
상기 복수의 가중 화소값은,
상기 제1화소에 제1가중치를 적용하여 계산한 제1가중 화소값,
상기 제2화소에 제2가중치를 적용하여 계산한 제2가중 화소값,
상기 제3화소에 제3가중치를 적용하여 계산한 제3가중 화소값, 및
상기 제4화소에 제4가중치를 적용하여 계산한 제4가중 화소값을 포함하는 것을 특징으로 하는 인트라 예측 장치.An intra prediction apparatus for predicting a current pixel in a current block from a plurality of neighboring blocks existing in a same picture as a current block,
A weighted pixel value calculation unit for calculating a plurality of weighted pixel values by applying weights variably determined based on the positions of the current pixels in the current block to a plurality of neighboring pixels selected from the plurality of neighboring blocks; And
And a predictive pixel value calculation unit for determining a predictive pixel value for the current pixel using the plurality of weighted pixel values,
Wherein the plurality of peripheral pixels comprise:
A first pixel located at a position vertically adjacent to the current pixel as a pixel adjacent to an upper end of the current block,
A second pixel located at a position horizontally the same as the current pixel as a pixel adjacent to the left side of the current block,
A third pixel located at the top of the current block, and
And a fourth pixel located to the left of the current block,
The plurality of weighted pixel values may include:
A first weighted pixel value calculated by applying a first weight to the first pixel,
A second weighted pixel value calculated by applying a second weight to the second pixel,
A third weighted pixel value calculated by applying a third weight to the third pixel, and
And a fourth weighted pixel value calculated by applying a fourth weight to the fourth pixel.
상기 가중 화소값 계산부는, 상기 현재 블록 내에서 상기 현재 화소의 위치에 근거하여 상기 제1가중치, 상기 제2가중치, 상기 제3가중치 및 상기 제4가중치를 결정하며,
상기 예측 화소값 계산부는 상기 제1가중 화소값, 상기 제2가중 화소값, 상기 제3가중 화소값 및 상기 제4가중 화소값의 합을 상기 제1가중치, 상기 제2가중치, 상기 제3가중치 및 상기 제4가중치의 합으로 나눈 값을 상기 현재 화소에 대한 예측 화소값으로 결정하는 것을 특징으로 하는 인트라 예측 장치.3. The method of claim 2,
Wherein the weighted pixel value calculation unit determines the first weight value, the second weight value, the third weight value and the fourth weight value based on the position of the current pixel in the current block,
The predictive pixel value calculation unit may calculate the sum of the first weighted pixel value, the second weighted pixel value, the third weighted pixel value, and the fourth weighted pixel value as the first weighted value, the second weighted weight, And a sum of the first and second weights, and a sum of the fourth weights, as a predicted pixel value for the current pixel.
상기 제1가중치는 상기 현재 화소와 상기 제1화소 간의 거리에 의해 결정되고,
상기 제2가중치는 상기 현재 화소와 상기 제2화소 간의 거리에 의해 결정되는 것을 특징으로 하는 인트라 예측 장치.3. The method of claim 2,
Wherein the first weight is determined by a distance between the current pixel and the first pixel,
Wherein the second weight is determined by a distance between the current pixel and the second pixel.
상기 각 가중치는 상기 현재 화소와 상기 복수의 주변 블록 내 각 주변 화소의 거리에 의해 결정되되, 거리가 짧을수록 큰 값으로 결정되는 것을 특징으로 하는 인트라 예측 장치.3. The method of claim 2,
Wherein each of the weights is determined by a distance between the current pixel and each neighboring pixel in the plurality of neighboring blocks, and is determined to be a larger value as the distance is shorter.
상기 복수의 주변 블록으로부터 선택된 복수의 주변 화소에 상기 현재 블록 내 상기 현재 화소의 위치에 근거하여 가변적으로 결정되는 가중치를 각각 적용함으로써 복수의 가중 화소값을 연산하는 가중 화소값 계산부; 및
상기 복수의 가중 화소값을 이용하여 상기 현재 화소에 대한 예측 화소값을 결정하는 예측 화소값 계산부를 포함하고,
상기 복수의 주변 화소는,
상기 현재 블록의 상단에 인접한 화소로서 상기 현재 화소와 수직으로 동일한 위치에 있는 제1화소,
상기 현재 블록의 좌측에 인접한 화소로서 상기 현재 화소와 수평으로 동일한 위치에 있는 제2화소, 및
상기 복수의 주변블록으로부터 선택된 하나 이상의 제3 화소를 포함하고,
상기 복수의 가중 화소값은,
상기 제1화소에 제1가중치를 적용하여 계산한 제1가중 화소값,
상기 제2화소에 제2가중치를 적용하여 계산한 제2가중 화소값, 및
상기 하나 이상의 제3 화소에, 상기 하나 이상의 제3 화소 각각에 대응하는 제3 가중치를 적용하여 계산한 하나 이상의 제3 가중 화소값을 포함하되,
상기 예측 화소값 계산부는 상기 가중 화소값 계산부에 의해 상기 제1 내지 제3 화소로부터 계산된 상기 복수의 가중 화소값의 합을 상기 제1 내지 제3화소에 대응하는 가중치의 합으로 나누어 상기 현재 블록에 대한 예측 화소값을 결정하는 것을 특징으로 하는 인트라 예측 장치.
An intra prediction apparatus for predicting a current pixel in a current block from a plurality of neighboring blocks existing in a same picture as a current block,
A weighted pixel value calculation unit for calculating a plurality of weighted pixel values by applying weights variably determined based on the positions of the current pixels in the current block to a plurality of neighboring pixels selected from the plurality of neighboring blocks; And
And a predictive pixel value calculation unit for determining a predictive pixel value for the current pixel using the plurality of weighted pixel values,
Wherein the plurality of peripheral pixels comprise:
A first pixel located at a position vertically adjacent to the current pixel as a pixel adjacent to an upper end of the current block,
A second pixel located at the same horizontal position as the current pixel as a pixel adjacent to the left side of the current block, and
And at least one third pixel selected from the plurality of neighboring blocks,
The plurality of weighted pixel values may include:
A first weighted pixel value calculated by applying a first weight to the first pixel,
A second weighted pixel value calculated by applying a second weight to the second pixel, and
One or more third weighted pixel values calculated by applying a third weight corresponding to each of the one or more third pixels to the one or more third pixels,
Wherein the predictive pixel value calculation unit divides the sum of the weighted pixel values calculated from the first through third pixels by the weighted pixel value calculation unit by the sum of weights corresponding to the first through third pixels, And determines a prediction pixel value for the block.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130081459A KR101557374B1 (en) | 2013-07-11 | 2013-07-11 | Intra Prediction Method and Apparatus and Image Encoding/Decoding Method and Apparatus Using Same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130081459A KR101557374B1 (en) | 2013-07-11 | 2013-07-11 | Intra Prediction Method and Apparatus and Image Encoding/Decoding Method and Apparatus Using Same |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080059322A Division KR101361005B1 (en) | 2008-06-24 | 2008-06-24 | Intra Prediction Method and Apparatus and Image Encoding/Decoding Method and Apparatus Using Same |
Related Child Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140072392A Division KR101534048B1 (en) | 2014-06-13 | 2014-06-13 | Intra Prediction Method and Apparatus and Image Encoding/Decoding Method and Apparatus Using Same |
KR1020140072394A Division KR101533434B1 (en) | 2014-06-13 | 2014-06-13 | Intra Prediction Method and Apparatus and Image Encoding/Decoding Method and Apparatus Using Same |
KR1020140072389A Division KR101582501B1 (en) | 2014-06-13 | 2014-06-13 | Intra Prediction Method and Apparatus and Image Encoding/Decoding Method and Apparatus Using Same |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130091295A KR20130091295A (en) | 2013-08-16 |
KR101557374B1 true KR101557374B1 (en) | 2015-10-12 |
Family
ID=49216542
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130081459A KR101557374B1 (en) | 2013-07-11 | 2013-07-11 | Intra Prediction Method and Apparatus and Image Encoding/Decoding Method and Apparatus Using Same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101557374B1 (en) |
-
2013
- 2013-07-11 KR KR1020130081459A patent/KR101557374B1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
KR20130091295A (en) | 2013-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101361005B1 (en) | Intra Prediction Method and Apparatus and Image Encoding/Decoding Method and Apparatus Using Same | |
KR101444667B1 (en) | Video Coding Method and Apparatus Using Bi-Direction Intra Prediction | |
KR101432775B1 (en) | Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock | |
KR101772046B1 (en) | Video Encoding/Decoding Method and Apparatus for Intra-Predicting Using Filtered Value of Pixel According to Prediction Mode | |
KR101444675B1 (en) | Method and Apparatus for Encoding and Decoding Video | |
KR101379187B1 (en) | Image Encoding/Decoding Method and Apparatus Using Block Transformation | |
KR101739987B1 (en) | Video Encoding/Decoding Method and Apparatus Using Feature Vector of Adjacent Block | |
KR20130085838A (en) | Video coding method and apparatus using weighted prediction | |
KR101432767B1 (en) | Inter Prediction Method and Apparatus Using Motion Information Based Adjacent Pixels and Video Coding Method and Apparatus Using Same | |
KR101479123B1 (en) | Inter Prediction Method and Apparatus Using Adjacent Pixels and Video Coding Method and Apparatus Using Same | |
KR101582501B1 (en) | Intra Prediction Method and Apparatus and Image Encoding/Decoding Method and Apparatus Using Same | |
KR101531186B1 (en) | Video Encoding/Decoding Method and Apparatus by Using Selective Encoding | |
KR101533434B1 (en) | Intra Prediction Method and Apparatus and Image Encoding/Decoding Method and Apparatus Using Same | |
KR101557374B1 (en) | Intra Prediction Method and Apparatus and Image Encoding/Decoding Method and Apparatus Using Same | |
KR101534048B1 (en) | Intra Prediction Method and Apparatus and Image Encoding/Decoding Method and Apparatus Using Same | |
KR101997599B1 (en) | Method and Apparatus for Image Encoding/Decoding using Efficient Non-fixed Quantization | |
KR101943425B1 (en) | Method and Apparatus for Image Encoding/Decoding using Efficient Non-fixed Quantization | |
KR101483495B1 (en) | Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock | |
KR101537767B1 (en) | Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock | |
KR101534014B1 (en) | Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock | |
KR101464949B1 (en) | Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock | |
KR101464944B1 (en) | Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
A107 | Divisional application of patent | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
FPAY | Annual fee payment |
Payment date: 20180903 Year of fee payment: 4 |