KR20100106811A - Apparatus and method for encoding image and for decoding image - Google Patents

Apparatus and method for encoding image and for decoding image Download PDF

Info

Publication number
KR20100106811A
KR20100106811A KR1020090025020A KR20090025020A KR20100106811A KR 20100106811 A KR20100106811 A KR 20100106811A KR 1020090025020 A KR1020090025020 A KR 1020090025020A KR 20090025020 A KR20090025020 A KR 20090025020A KR 20100106811 A KR20100106811 A KR 20100106811A
Authority
KR
South Korea
Prior art keywords
block
prediction block
prediction
pixel
encoding
Prior art date
Application number
KR1020090025020A
Other languages
Korean (ko)
Other versions
KR101043758B1 (en
Inventor
고성제
정승원
윤여진
박천수
백승진
Original Assignee
고려대학교 산학협력단
중앙대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 고려대학교 산학협력단, 중앙대학교 산학협력단 filed Critical 고려대학교 산학협력단
Priority to KR1020090025020A priority Critical patent/KR101043758B1/en
Publication of KR20100106811A publication Critical patent/KR20100106811A/en
Application granted granted Critical
Publication of KR101043758B1 publication Critical patent/KR101043758B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods 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

Landscapes

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

Abstract

PURPOSE: An apparatus and a method for encoding and decoding an image are provided to improve the accuracy of a prediction signal by using two excellent methods for a simple image and an image having a pattern and a noise in the generation of a prediction signal. CONSTITUTION: A first prediction block generator(182) generates a first prediction block corresponding to an encoding target block based on the values of the pixels adjacent to an encoding target block, and a second prediction block generating unit(184) generates a second prediction block corresponding to the encoding target block through a template area formed by the pixels adjacent to the encoding target block. A final prediction block generator(186) generates a final prediction block corresponding to the encoding target block, and an encoder(140) encodes the generation information and a weight value of blocks.

Description

영상 부호화 장치 및 방법, 그리고 영상 부호화 장치 및 방법{Apparatus and method for encoding image and for decoding image}Image encoding apparatus and method, and image encoding apparatus and method {Apparatus and method for encoding image and for decoding image}

본 발명은 영상 부호화 장치 및 방법, 그리고 영상 복호화 장치 및 방법에 관한 것으로, 보다 상세하게는, 공간적 중복성을 제거하여 효율적으로 영상의 전송 및 저장이 가능하도록 하는 장치 및 방법에 관한 것이다.The present invention relates to an image encoding apparatus and method, and an image decoding apparatus and method, and more particularly, to an apparatus and method for efficiently transmitting and storing an image by removing spatial redundancy.

동영상을 효율적으로 저장하거나 전송하기 위해서는 압축부호화할 필요가 있다. 동영상을 압축부호화하는 방법으로는 JPEG(Joint Photographic Experts Group), MPEG(Motion Picture Experts Group), H.264/AVC 등이 있다. 이 중에서 H.264/AVC는 MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)가 공동으로 개발한 방법으로서 화면내 예측 부호화를 채택함으로써 기존의 동영상 압축방법인 MPEG-4와 비교할 때 영상의 화질을 유지하면서 압축률을 향상시킬 수 있다.In order to store or transmit a video efficiently, compression encoding is required. Compression and encoding methods for video include JPEG (Joint Photographic Experts Group), MPEG (Motion Picture Experts Group), and H.264 / AVC. Among these, H.264 / AVC is a method jointly developed by the Moving Picture Experts Group (MPEG) and the Video Coding Experts Group (VCEG). The compression ratio can be improved while maintaining the image quality.

H.264는 블록 기반의 움직임 보상과 엔트로피 부호화를 위해 4×4 블록 단위의 움직임 보상(4×4 block motion-compensation), 정수 기반의 4×4 변환(integer 4×4 transform), 화면 내 부호화시 방향성 공간성 이용 예측 방법(directional spatial prediction for intra coding), 높은 압축 성능을 보이는 CAVLC(context-based adaptive variable length coding) 및 CABAC(context-based adaptive binary arithmetic coding) 등의 엔트로피 부호화 방법과 같은 새로운 기술을 채택하고 있다.H.264 provides 4x4 block motion-compensation, integer-based 4x4 transform, and intra-picture encoding for block-based motion compensation and entropy encoding. New techniques such as directional spatial prediction for intra coding, high compression performance, such as context-based adaptive variable length coding (CAVLC) and context-based adaptive binary arithmetic coding (CABAC) Is adopted.

H.264의 화면내 부호화 방법에서는 주변에 복호된 매크로블록의 정보를 이용하여 현재 매크로블록의 화소값을 추정한다. 이때 부호화 장치의 구현 및 부호화의 편의를 위하여 현재 매크로블록과 인접한 매크로블록의 화소값 및 방향성을 고려하여 예측블록(predicted block)을 생성한다. 그러나 이러한 방식은 현재 매크로블록의 경계와 인접한 화소값만을 이용하기 때문에 부호화 효율에 한계를 가진다.In the H.264 intra-picture encoding method, the pixel value of the current macroblock is estimated using information of the macroblock decoded in the vicinity. In this case, a prediction block is generated in consideration of the pixel value and the direction of the macroblock adjacent to the current macroblock for the purpose of implementing the encoding apparatus and for the convenience of encoding. However, this method has a limitation in coding efficiency because it uses only pixel values adjacent to the boundary of the current macroblock.

이를 개선하기 위한 템플릿 매칭(template matching) 방식은 현재 매크로블록과 유사한 화소값을 가지는 참조블록을 복호화된 주변 블록들 중에서 검색하여 예측 블록으로 사용한다. 그러므로 영상에 특정 패턴이 존재하는 경우에는 효과적으로 참조블록을 찾을 수 있다. 그러나 부호화 단계에서 동일하게 참조블록을 검색하여야 하기 때문에 부호화기의 복잡도를 증가시킬 수 있다는 단점을 가진다.In order to improve this, a template matching method searches for a reference block having a pixel value similar to that of the current macroblock among decoded neighboring blocks and uses it as a prediction block. Therefore, when a specific pattern exists in an image, a reference block can be effectively found. However, since the reference block must be searched in the encoding step, the complexity of the encoder can be increased.

본 발명이 이루고자 하는 기술적 과제는, 영상의 부호화 과정에서 사용되는 예측신호를 생성할 때 영상의 특성에 따라 기존의 방법에 비해 우수한 성능을 보이는 영상 부호화 장치 및 방법을 제공하는 데 있다.SUMMARY OF THE INVENTION The present invention has been made in an effort to provide an apparatus and a method for encoding an image having better performance than the conventional method according to characteristics of an image when generating a prediction signal used in an encoding process of an image.

본 발명이 이루고자 하는 다른 기술적 과제는, 영상의 복호화 과정에서 사용되는 예측신호를 생성할 때 영상의 특성에 따라 기존의 방법에 비해 우수한 성능을 보이는 영상 복호화 장치 및 방법을 제공하는 데 있다.Another object of the present invention is to provide an apparatus and method for decoding an image which is superior in performance to conventional methods according to characteristics of an image when generating a prediction signal used in a decoding process of an image.

본 발명이 이루고자 하는 또 다른 기술적 과제는, 영상의 부호화/복호화 과정에서 사용되는 예측신호를 생성할 때 영상의 특성에 따라 기존의 방법에 비해 우수한 성능을 보이는 영상 부호화/복호화 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는 데 있다.Another technical problem to be solved by the present invention is to execute an image encoding / decoding method on a computer which shows superior performance compared to the conventional method according to the characteristics of an image when generating a prediction signal used in the encoding / decoding process of an image. The present invention provides a computer-readable recording medium having recorded thereon a program.

상기의 기술적 과제를 달성하기 위한, 본 발명에 따른 영상 부호화 장치는, 원본 영상프레임을 구성하는 복수의 부호화 대상 블록과 상기 각각의 부호화 대상 블록에 대응하여 생성된 예측블록 사이의 차분블록을 변환한 변환 계수 데이터를 순차적으로 부호화하여 데이터 스트림을 생성하며, 상기 데이터 스트림이 복호화되어 생성된 복수의 재생블록 상에서 상기 부호화 대상 블록과 인접한 화소의 화소값에 의해 상기 부호화 대상 블록에 대응하는 제1예측블록을 생성하는 제1예측블록 생성부; 상기 재생블록 상에서 결정된 상기 부호화 대상 블록과 인접한 화소들로 이루어진 템플릿 영역을 이용하여 상기 부호화 대상 블록에 대응하는 제2예측블록을 생성하는 제2예측블록 생성부; 상기 제1예측블록을 구성하는 각 화소의 화소값과 상기 제2예측블록을 구성하는 각 화소의 화소값에 각각 가중치를 부여한 후 합산하여 상기 부호화 대상 블록에 대응하는 최종 예측블록을 생성하는 최종 예측블록 생성부; 및 상기 제1예측블록과 상기 제2예측블록의 생성정보 및 상기 가중치를 부호화하여 상기 데이터 스트림에 포함시키는 부호화부;를 구비한다.In order to achieve the above technical problem, an image encoding apparatus according to the present invention includes converting a difference block between a plurality of encoding target blocks constituting an original video frame and prediction blocks generated corresponding to the respective encoding target blocks. A first prediction block corresponding to the encoding object block is encoded based on pixel values of pixels adjacent to the encoding object block on a plurality of reproduction blocks generated by decoding the transform coefficient data. A first prediction block generation unit generating a; A second prediction block generation unit generating a second prediction block corresponding to the encoding target block by using a template region formed of pixels adjacent to the encoding target block determined on the play block; Final prediction for generating a final prediction block corresponding to the encoding target block by adding weights to pixel values of each pixel constituting the first prediction block and pixel values of each pixel constituting the second prediction block. Block generation unit; And an encoding unit encoding generation information and the weight of the first prediction block and the second prediction block and including the weights in the data stream.

상기의 다른 기술적 과제를 달성하기 위한, 본 발명에 따른 영상 부호화 방법은, 원본 영상프레임을 구성하는 복수의 부호화 대상 블록과 상기 각각의 부호화 대상 블록에 대응하여 생성된 예측블록 사이의 차분블록을 변환한 변환 계수 데이터를 순차적으로 부호화하여 데이터 스트림을 생성하며, 상기 데이터 스트림이 복호화되어 생성된 복수의 재생블록 상에서 상기 부호화 대상 블록과 인접한 화소의 화소값에 의해 상기 부호화 대상 블록에 대응하는 제1예측블록을 생성하는 제1예측블록 생성단계; 상기 재생블록 상에서 결정된 상기 부호화 대상 블록과 인접한 화소들로 이루어진 템플릿 영역을 이용하여 상기 부호화 대상 블록에 대응하는 제2예측블록을 생성하는 제2예측블록 생성단계; 상기 제1예측블록을 구성하는 각 화소의 화소값과 상기 제2예측블록을 구성하는 각 화소의 화소값에 각각 가중치를 부여한 후 합산하여 상기 부호화 대상 블록에 대응하는 최종 예측블록을 생성하는 최종 예측블록 생성단계; 및 상기 제1예측블록과 상기 제2예측블록의 생성정보 및 상기 가중치를 부호화하여 상기 데이터 스트림에 포함시키는 부호화단계;를 갖는다.In accordance with another aspect of the present invention, there is provided a method of encoding an image, which includes converting a difference block between a plurality of encoding target blocks constituting an original video frame and a prediction block generated corresponding to each encoding target block. A first prediction corresponding to the encoding target block by pixel values of pixels adjacent to the encoding target block on a plurality of reproduction blocks generated by decoding the data stream by sequentially encoding one transform coefficient data. Generating a first prediction block for generating a block; A second prediction block generation step of generating a second prediction block corresponding to the encoding target block by using a template region formed of pixels adjacent to the encoding target block determined on the play block; Final prediction for generating a final prediction block corresponding to the encoding target block by adding weights to pixel values of each pixel constituting the first prediction block and pixel values of each pixel constituting the second prediction block. Block generation step; And encoding the generation information and the weight of the first prediction block and the second prediction block to include in the data stream.

상기의 또 다른 기술적 과제를 달성하기 위한, 본 발명에 따른 영상 복호화 장치는, 입력받은 데이터 스트림으로에 포함된 복호화 대상 블록, 제1부호화방법에 의해 생성된 제1예측블록의 생성정보, 제2부호화방법에 의해 생성된 제2예측블록의 생성정보 및 상기 제1예측블록과 상기 제2예측블록으로부터 최종 예측블록을 생성하기 위한 가중치를 복호화하는 복호화부; 상기 데이터 스트림 이전에 입력된 데이터 스트림을 복원하여 얻어진 복수의 재생블록 상에서 상기 제1예측블록의 생성정보에 기초하여 상기 복호화 대상 블록과 인접한 화소의 화소값에 의해 상기 복호화 대상 블록에 대응하는 제1예측블록을 생성하는 제1예측블록 생성부; 상기 제2예측블록의 생성정보에 기초하여 상기 재생블록 상에서 결정된, 상기 복호화 대상 블록과 인접한 화소들로 이루어진 템플릿 영역을 이용하여 상기 복호화 대상 블록에 대응하는 제2예측블록을 생성하는 제2예측블록 생성부; 상기 제1예측블록을 구성하는 각 화소의 화소값과 상기 제2예측블록을 구성하는 각 화소의 화소값에 각각 상기 가중치를 부여한 후 합산하여 상기 복호화 대상 블록에 대응하는 최종 예측블록을 생성하는 최종 예측블록 생성부; 및 상기 복호화 대상 블록이 복호화 및 역변환되어 생성된 차분블록과 상기 최종 예측블록을 합산하여 상기 재생블록을 생성하는 가산부;를 구비한다.In accordance with another aspect of the present invention, there is provided an apparatus for decoding an image, comprising: a decoding target block included in an input data stream, generation information of a first prediction block generated by a first encoding method, and a second A decoder which decodes generation information of a second prediction block generated by an encoding method and weights for generating a final prediction block from the first prediction block and the second prediction block; A first corresponding to the decoding target block by pixel values of pixels adjacent to the decoding target block based on generation information of the first prediction block on the plurality of playback blocks obtained by reconstructing the data stream inputted before the data stream; A first prediction block generation unit generating a prediction block; A second prediction block that generates a second prediction block corresponding to the decoding object block by using a template region formed of pixels adjacent to the decoding object block based on the generation information of the second prediction block. Generation unit; The final value of the final prediction block corresponding to the decoding target block is generated by adding the weight to the pixel value of each pixel constituting the first prediction block and the pixel value of each pixel constituting the second prediction block. Prediction block generation unit; And an adder configured to add the difference block generated by decoding and inversely transforming the decoding object block and the final prediction block to generate the reproduction block.

상기의 또 다른 기술적 과제를 달성하기 위한, 본 발명에 따른 영상 복호화 방법은, 입력받은 데이터 스트림으로에 포함된 복호화 대상 블록, 제1부호화방법에 의해 생성된 제1예측블록의 생성정보, 제2부호화방법에 의해 생성된 제2예측블록의 생성정보 및 상기 제1예측블록과 상기 제2예측블록으로부터 최종 예측블록을 생성하기 위한 가중치를 복호화하는 복호화단계; 상기 데이터 스트림 이전에 입력된 데 이터 스트림을 복원하여 얻어진 복수의 재생블록 상에서 상기 제1예측블록의 생성정보에 기초하여 상기 복호화 대상 블록과 인접한 화소의 화소값에 의해 상기 복호화 대상 블록에 대응하는 제1예측블록을 생성하는 제1예측블록 생성단계; 상기 제2예측블록의 생성정보에 기초하여 상기 재생블록 상에서 결정된, 상기 복호화 대상 블록과 인접한 화소들로 이루어진 템플릿 영역을 이용하여 상기 복호화 대상 블록에 대응하는 제2예측블록을 생성하는 제2예측블록 생성단계; 상기 제1예측블록을 구성하는 각 화소의 화소값과 상기 제2예측블록을 구성하는 각 화소의 화소값에 각각 상기 가중치를 부여한 후 합산하여 상기 복호화 대상 블록에 대응하는 최종 예측블록을 생성하는 최종 예측블록 생성단계; 및 상기 복호화 대상 블록이 복호화 및 역변환되어 생성된 차분블록과 상기 최종 예측블록을 합산하여 상기 재생블록을 생성하는 가산단계;를 갖는다.In accordance with another aspect of the present invention, there is provided a video decoding method comprising: a decoding target block included in an input data stream, generation information of a first prediction block generated by a first encoding method, and a second A decoding step of decoding generation information of a second prediction block generated by an encoding method and weights for generating a final prediction block from the first prediction block and the second prediction block; A second image corresponding to the decoding object block based on pixel values of a pixel adjacent to the decoding object block based on generation information of the first prediction block on the plurality of playback blocks obtained by reconstructing a data stream input before the data stream. Generating a first predictive block; A second prediction block that generates a second prediction block corresponding to the decoding object block by using a template region formed of pixels adjacent to the decoding object block based on the generation information of the second prediction block. Generating step; The final value of the final prediction block corresponding to the decoding target block is generated by adding the weight to the pixel value of each pixel constituting the first prediction block and the pixel value of each pixel constituting the second prediction block. Prediction block generation step; And an addition step of generating the play block by summing the difference block generated by decoding and inversely transforming the decoding object block and the final prediction block.

본 발명에 따른 영상 부호화 장치 및 방법, 그리고 영상 복호화 장치 및 방법에 의하면, 예측신호를 생성할 때 단순한 영상 및 패턴이나 노이즈가 존재하는 영상에 대하여 각각 우수한 성능을 보이는 두 가지의 방법을 함께 사용함으로써, 기존의 방법에 비하여 예측신호의 정확도가 높아지게 된다.According to the video encoding apparatus and method and the video decoding apparatus and method according to the present invention, by using a combination of two methods that each show excellent performance with respect to a simple image and an image having a pattern or noise when generating a prediction signal. As a result, the accuracy of the prediction signal is higher than that of the conventional method.

이하에서 첨부된 도면들을 참조하여 본 발명에 따른 영상 부호화 장치 및 방법, 그리고 영상 복호화 장치 및 방법의 바람직한 실시예에 대해 상세하게 설명한다.Hereinafter, exemplary embodiments of an image encoding apparatus and method, and an image decoding apparatus and method according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 따른 영상 부호화 장치에 대한 바람직한 일 실시예의 구성을 도시한 블록도이다.1 is a block diagram showing the configuration of a preferred embodiment of a video encoding apparatus according to the present invention.

도 1을 참조하면, 본 발명에 따른 영상 부호화 장치는 원본 영상프레임을 구성하는 복수의 부호화 대상 블록을 순차적으로 부호화하여 데이터 스트림을 생성하며, 영상분할부(110), 감산부(120), 변환부(130), 부호화부(140), 역변환부(150), 가산부(160), 저장부(170) 및 예측부(180)를 구비한다.Referring to FIG. 1, the apparatus for encoding an image according to the present invention generates a data stream by sequentially encoding a plurality of encoding target blocks forming an original image frame, and includes an image splitter 110, a subtractor 120, and a transform. A unit 130, an encoder 140, an inverse transform unit 150, an adder 160, a storage unit 170, and a prediction unit 180 are provided.

본 발명에서는 새로운 방법을 사용함에 따라 예측부(180) 및 부호화부(140)의 동작이 달라지게 된다. 따라서 이하에서는 다른 구성요소의 기능 및 동작은 간략하게 설명하고, 예측부(180) 및 부호화부(140)의 동작에 대하여 상세하게 설명한다.In the present invention, the operation of the predictor 180 and the encoder 140 is changed according to the new method. Therefore, hereinafter, functions and operations of other components will be briefly described, and operations of the predictor 180 and the encoder 140 will be described in detail.

먼저 영상분할부(110)는 입력받은 원본 영상프레임을 복수의 부호화 대상 블록으로 분할한다. 부호화 대상 블록은 사전에 설정된 소정 크기(예를 들면, 8×8 크기)의 블록이며, 이후 부호화 과정은 부호화 대상 블록 단위로 수행된다.First, the image splitter 110 divides the received original video frame into a plurality of encoding target blocks. The encoding target block is a block having a predetermined size (for example, 8 × 8 size), and then the encoding process is performed in units of encoding target blocks.

감산부(120)는 부호화 대상 블록을 구성하는 각 화소와 뒤에서 설명할 예측부(180)에 의해 생성된 최종 예측블록을 구성하는 각 화소의 화소값의 차로 이루어지는 차분블록을 생성하여 출력한다. 이러한 차분블록이 부호화의 대상이 된다.The subtractor 120 generates and outputs a difference block composed of the difference between the pixels constituting the encoding target block and the pixel values of the pixels constituting the final prediction block generated by the prediction unit 180 to be described later. This difference block is the object of encoding.

변환부(130)는 입력받은 차분블록에 대해 이산 코사인 변환(discrete cosine transform : DCT)과 같은 직교변환을 수행하여 변환 계수 데이터를 출력한다. 이러한 변환 과정은 이후의 부호화 과정이 효율적으로 이루어지도록 하기 위해 수행된다. 또한 데이터량의 압축을 위해 직교변환 후의 변환 계수에 대하여 양자화를 수 행할 수 있다.The transformer 130 outputs transform coefficient data by performing an orthogonal transform such as a discrete cosine transform (DCT) on the input differential block. This conversion process is performed so that the following encoding process can be efficiently performed. In addition, the quantization can be performed on the transform coefficient after orthogonal transformation for compressing the data amount.

변환부(130)에 의해 출력되는 변환 계수 데이터는 감산부(120)에 입력되는 최종 예측블록을 생성하기 위해 먼저 역변환부(150)로 입력된다. 역변환부(150)는 변환부(130)에 의해 수행되는 변환 과정을 역으로 수행하여 변환 계수 데이터로부터 차분블록을 생성한다.The transform coefficient data output by the transformer 130 is first input to the inverse transformer 150 to generate the final prediction block input to the subtractor 120. The inverse transformer 150 inversely performs a transformation process performed by the transformer 130 to generate a differential block from the transform coefficient data.

가산부(160)는 차분블록을 구성하는 각 화소와 뒤에서 설명할 예측부(180)에 의해 생성된 최종 예측블록을 구성하는 각 화소의 화소값을 합산하여 재생블록을 생성한다. 이러한 재생블록은 영상 복호화 장치에 의해 생성되는 것과 동일하다. 재생블록은 저장부(170)에 저장되어 예측부(180)에 의한 최종 예측블록 생성에 사용된다.The adder 160 generates a playback block by adding the pixel values of each pixel constituting the difference block and the pixel values of each pixel constituting the final prediction block generated by the prediction unit 180 to be described later. This playback block is the same as that generated by the video decoding apparatus. The playback block is stored in the storage unit 170 and used to generate the final prediction block by the prediction unit 180.

이하에서는 본 발명의 특징이라 할 수 있는 예측부(180)에 관하여 상세하게 설명한다. 예측부(180)에 의해 생성된 최종 예측블록은 영상의 부호화 및 복호화 수행시에 참조 데이터로 사용된다.Hereinafter, the prediction unit 180, which is a feature of the present invention, will be described in detail. The final prediction block generated by the prediction unit 180 is used as reference data when encoding and decoding an image.

도 1을 참조하면, 예측부(180)는 제1예측블록 생성부(182), 제2예측블록 생성부(184) 및 최종 예측블록 생성부(186)를 구비한다.Referring to FIG. 1, the prediction unit 180 includes a first prediction block generator 182, a second prediction block generator 184, and a final prediction block generator 186.

제1예측블록 생성부(182)는 데이터 스트림이 복호화되어 생성된 복수의 재생블록 상에서 부호화 대상 블록과 인접한 화소의 화소값에 의해 부호화 대상 블록에 대응하는 제1예측블록을 생성한다.The first prediction block generation unit 182 generates a first prediction block corresponding to the encoding object block based on pixel values of pixels adjacent to the encoding object block on the plurality of reproduction blocks generated by decoding the data stream.

제1예측블록 생성부(182)에 의한 제1예측블록의 생성은 기존의 H.264/AVC 부호화기에서 사용되는 화면내 예측방법과 동일한 방법에 의해 이루어진다. 구체적으 로, 제1예측블록 생성부(182)는 예측블록을 구성하는 각 화소의 화소값을 결정하기 위한 복수의 예측 모드에 의해 생성된 복수의 예측블록 중에서 부호화 대상 블록을 구성하는 각 화소와의 화소값의 차를 기초로 산출된 제1예측오차를 최소로 하는 예측블록을 제1예측오차로 결정한다.The first prediction block is generated by the first prediction block generator 182 by the same method as the intra prediction method used in the existing H.264 / AVC encoder. In detail, the first prediction block generator 182 may include each pixel constituting the encoding target block among the plurality of prediction blocks generated by the plurality of prediction modes for determining the pixel value of each pixel constituting the prediction block. A prediction block that minimizes the first prediction error calculated based on the difference of pixel values of is determined as the first prediction error.

도 2에는 제1예측블록을 생성하기 위해 사용되는 4×4 크기의 부호화 대상 블록에 인접한 화소들이 도시되어 있고, 도 3에는 9가지 예측 모드별 예측 방향이 도시되어 있다. 도 2를 참조하면, 부호화 대상 블록을 제외한 블록들은 역변환부(150) 및 가산부(160)에 의해 복호화되어 저장부(170)에 저장된 재생블록이다. 또한 부호화 대상 블록에 대응하는 제2예측블록은 재생블록을 구성하는 화소들 중에서 부호화 대상 블록에 인접한 화소들의 화소값(A~M)을 기초로 생성된다.In FIG. 2, pixels adjacent to a 4 × 4 block to be encoded used to generate a first prediction block are shown, and in FIG. 3, nine prediction modes for each prediction mode are shown. Referring to FIG. 2, blocks except for the encoding target block are reproduction blocks decoded by the inverse transformer 150 and the adder 160 and stored in the storage 170. The second prediction block corresponding to the encoding target block is generated based on pixel values A to M of pixels adjacent to the encoding target block among the pixels constituting the playback block.

다음으로 도 3을 참조하여 예측 모드들을 구체적으로 살펴보면, 수직 예측 모드(예측 모드 0), 수평 예측 모드(예측 모드 1), DC 예측 모드(예측 모드 2), 좌하 대각(Diagonal Down-Left) 예측 모드(예측 모드 3), 우하 대각(Diagonal Down-Right) 예측 모드(예측 모드 4), 우향 수직(Vertical-Right) 예측 모드(예측 모드 5), 하향 수평(Horizontal-Down) 예측 모드(예측 모드 6), 좌향 수직(Vertical-Left) 예측 모드(예측 모드 7) 및 상향 수평(Horizontal-Up) 예측 모드(예측 모드 8) 등이다.Next, the prediction modes will be described in detail with reference to FIG. 3. A vertical prediction mode (prediction mode 0), a horizontal prediction mode (prediction mode 1), a DC prediction mode (prediction mode 2), and a diagonal down-left prediction are described. Mode (prediction mode 3), diagonal down-right prediction mode (prediction mode 4), vertical-right prediction mode (prediction mode 5), horizontal-down prediction mode (prediction mode) 6) a left-vertical vertical prediction mode (prediction mode 7) and a horizontal-up prediction mode (prediction mode 8).

표 1 및 표 2에는 부호화 대상 블록에 대응하는 제1예측블록을 생성하기 위한 9가지 예측 모드에 의해 예측블록을 구성하는 화소의 화소값을 구하는 식이 기 재되어 있다. 표 1 및 표 2에서 Predi[m, n]는 예측 모드 i(i는 0~8)로 예측된 예측 블록의 (m, n) 위치의 화소의 화소값이다. 이때 각각의 화소값들은 부호화할 4×4 블록 주위의 화소값들을 이용하여 구해진다.Tables 1 and 2 describe equations for obtaining pixel values of pixels constituting a prediction block in nine prediction modes for generating a first prediction block corresponding to a block to be encoded. In Table 1 and Table 2, Pred i [m, n] is a pixel value of a pixel at position (m, n) of a prediction block predicted in prediction mode i (i is 0 to 8). Each pixel value is obtained by using pixel values around a 4x4 block to be encoded.

예측 모드 0Prediction Mode 0 예측 모드 1Prediction Mode 1 예측 모드 2Prediction Mode 2 예측 모드 3Prediction Mode 3 예측 모드 4Prediction Mode 4 Predi[0,0]Pred i [0,0] AA II (A~L)의 평균Average of (A-L) (A+2B+C)/4(A + 2B + C) / 4 (A+2M+I)/4(A + 2M + I) / 4 Predi[1,0]Pred i [1,0] BB II (A~L)의 평균Average of (A-L) (B+2C+D)/4(B + 2C + D) / 4 (M+2A+B)/4(M + 2A + B) / 4 Predi[2,0]Pred i [2,0] CC II (A~L)의 평균Average of (A-L) (C+2D+E)/4(C + 2D + E) / 4 (A+2B+C)/4(A + 2B + C) / 4 Predi[3,0]Pred i [3,0] DD II (A~L)의 평균Average of (A-L) (D+2E+F)/4(D + 2E + F) / 4 (B+2C+D)/4(B + 2C + D) / 4 Predi[0,1]Pred i [0,1] AA JJ (A~L)의 평균Average of (A-L) (B+2C+D)/4(B + 2C + D) / 4 (M+2I+J)/4(M + 2I + J) / 4 Predi[1,1]Pred i [1,1] BB JJ (A~L)의 평균Average of (A-L) (C+2D+E)/4(C + 2D + E) / 4 (A+2M+I)/4(A + 2M + I) / 4 Predi[2,1]Pred i [2,1] CC JJ (A~L)의 평균Average of (A-L) (D+2E+F)/4(D + 2E + F) / 4 (M+2A+B)/4(M + 2A + B) / 4 Predi[3,1]Pred i [3,1] DD JJ (A~L)의 평균Average of (A-L) (E+2F+G)/4(E + 2F + G) / 4 (A+2B+C)/4(A + 2B + C) / 4 Predi[0,2]Pred i [0,2] AA KK (A~L)의 평균Average of (A-L) (C+2D+E)/4(C + 2D + E) / 4 (I+2J+K)/4(I + 2J + K) / 4 Predi[1,2]Pred i [1,2] BB KK (A~L)의 평균Average of (A-L) (D+2E+F)/4(D + 2E + F) / 4 (M+2I+J)/4(M + 2I + J) / 4 Predi[2,2]Pred i [2,2] CC KK (A~L)의 평균Average of (A-L) (E+2F+G)/4(E + 2F + G) / 4 (A+2M+I)/4(A + 2M + I) / 4 Predi[3,2]Pred i [3,2] DD KK (A~L)의 평균Average of (A-L) (F+2G+H)/4(F + 2G + H) / 4 (M+2A+B)/4(M + 2A + B) / 4 Predi[0,3]Pred i [0,3] AA LL (A~L)의 평균Average of (A-L) (D+2E+F)/4(D + 2E + F) / 4 (J+2K+L)/4(J + 2K + L) / 4 Predi[1,3]Pred i [1,3] BB LL (A~L)의 평균Average of (A-L) (E+2F+G)/4(E + 2F + G) / 4 (I+2J+K)/4(I + 2J + K) / 4 Predi[2,3]Pred i [2,3] CC LL (A~L)의 평균Average of (A-L) (F+2G+H)/4(F + 2G + H) / 4 (M+2I+J)/4(M + 2I + J) / 4 Predi[3,3]Pred i [3,3] DD LL (A~L)의 평균Average of (A-L) (G+3H)/4(G + 3H) / 4 (A+2M+I)/4(A + 2M + I) / 4

예측 모드 5Prediction Mode 5 예측 모드 6Prediction Mode 6 예측 모드 7Prediction Mode 7 예측 모드 8Prediction Mode 8 Predi[0,0]Pred i [0,0] (M+A)/2(M + A) / 2 (M+I)/2(M + I) / 2 (A+B)/2(A + B) / 2 (I+J)/2(I + J) / 2 Predi[1,0]Pred i [1,0] (A+B)/2(A + B) / 2 (I+2M+A)/4(I + 2M + A) / 4 (B+C)/2(B + C) / 2 (I+2J+K)/4(I + 2J + K) / 4 Predi[2,0]Pred i [2,0] (B+C)/2(B + C) / 2 (M+2A+B)/4(M + 2A + B) / 4 (C+D)/2(C + D) / 2 (J+K)/2(J + K) / 2 Predi[3,0]Pred i [3,0] (C+D)/2(C + D) / 2 (A+2B+C)/4(A + 2B + C) / 4 (D+E)/2(D + E) / 2 (J+2K+L)/4(J + 2K + L) / 4 Predi[0,1]Pred i [0,1] (I+2M+A)/4(I + 2M + A) / 4 (I+J)/2(I + J) / 2 (A+2B+C)/4(A + 2B + C) / 4 (J+K)/2(J + K) / 2 Predi[1,1]Pred i [1,1] (M+2A+B)/4(M + 2A + B) / 4 (M+2I+J)/4(M + 2I + J) / 4 (B+2C+D)/4(B + 2C + D) / 4 (J+2K+L)/4(J + 2K + L) / 4 Predi[2,1]Pred i [2,1] (A+2B+C)/4(A + 2B + C) / 4 (M+I)/2(M + I) / 2 (C+2D+E)/4(C + 2D + E) / 4 (K+L)/2(K + L) / 2 Predi[3,1]Pred i [3,1] (B+2C+D)/4(B + 2C + D) / 4 (I+2M+A)/4(I + 2M + A) / 4 (D+2E+F)/4(D + 2E + F) / 4 (K+3L)/2(K + 3L) / 2 Predi[0,2]Pred i [0,2] (M+2I+J)/4(M + 2I + J) / 4 (J+K)/2(J + K) / 2 (B+C)/2(B + C) / 2 (K+L)/2(K + L) / 2 Predi[1,2]Pred i [1,2] (M+A)/2(M + A) / 2 (I+2J+K)/4(I + 2J + K) / 4 (C+D)/2(C + D) / 2 (K+3L)/2(K + 3L) / 2 Predi[2,2]Pred i [2,2] (A+B)/2(A + B) / 2 (I+J)/2(I + J) / 2 (D+E)/2(D + E) / 2 LL Predi[3,2]Pred i [3,2] (B+C)/2(B + C) / 2 (M+2I+J)/4(M + 2I + J) / 4 (E+F)/2(E + F) / 2 LL Predi[0,3]Pred i [0,3] (I+2J+K)/4(I + 2J + K) / 4 (K+L)/2(K + L) / 2 (B+2C+D)/4(B + 2C + D) / 4 LL Predi[1,3]Pred i [1,3] (I+2M+A)/4(I + 2M + A) / 4 (J+2K+L)/4(J + 2K + L) / 4 (C+2D+E)/4(C + 2D + E) / 4 LL Predi[2,3]Pred i [2,3] (M+2A+B)/4(M + 2A + B) / 4 (J+K)/2(J + K) / 2 (D+2E+F)/4(D + 2E + F) / 4 LL Predi[3,3]Pred i [3,3] (A+2B+C)/4(A + 2B + C) / 4 (I+2J+K)/4(I + 2J + K) / 4 (E+2F+G)/4(E + 2F + G) / 4 LL

다음으로 제1예측블록 생성부(182)는 위와 같은 9가지의 예측 모드에 의해 생성된 9개의 예측블록 중에서 제1예측오차를 최소화하는 예측블록을 제1예측블록으로 결정한다. 제1예측오차를 산출하는 함수로는 다음의 수학식 1로 표현되는 율-비용함수를 사용할 수 있다. 즉, 제1예측블록 생성부(182)는 부호화 대상 블록을 구성하는 각 화소의 화소값과 각각의 예측 모드에 대응하는 예측블록의 각 좌표의 화소값의 차이값을 산출한 후 차이값에 대한 율-비용 함수가 최소가 되는 예측블록을 생성하는 예측 모드를 제1예측블록을 생성하는 최적의 예측 모드로 선택한다.Next, the first prediction block generator 182 determines a prediction block that minimizes the first prediction error among the nine prediction blocks generated by the nine prediction modes as the first prediction block. As a function for calculating the first prediction error, a rate-cost function represented by Equation 1 below may be used. That is, the first prediction block generator 182 calculates a difference value between the pixel value of each pixel constituting the encoding target block and the pixel value of each coordinate of the prediction block corresponding to each prediction mode, and then calculates a difference value for the difference value. A prediction mode for generating a prediction block having a minimum rate-cost function is selected as an optimal prediction mode for generating a first prediction block.

Figure 112009017747773-PAT00001
Figure 112009017747773-PAT00001

여기서,

Figure 112009017747773-PAT00002
은 복수의 예측 모드 중에서 i번째 예측 모드에 의해 생성된 예측블록을 기초로 산출된 제1예측오차, M 및 N은 부호화 대상 블록과 i번째 예측 모드에 의해 생성된 예측블록의 수직방향 및 수평방향의 크기, cur(m, n)는 부호화 대상 블록의 (m, n) 좌표에 대한 화소값, 그리고 predi 1(m, n)는 i번째 예측 모드에 의해 생성된 예측블록의 (m, n) 좌표에 대한 화소값이다.here,
Figure 112009017747773-PAT00002
Is the first prediction error, M and N, which are calculated based on the prediction block generated by the i-th prediction mode among the plurality of prediction modes, and V and V are the vertical and horizontal directions of the block to be encoded and the prediction block generated by the i-th prediction mode. The size of, cur (m, n) is the pixel value for the (m, n) coordinate of the block to be encoded, and pred i 1 (m, n) is the (m, n) of the prediction block generated by the i th prediction mode. ) Is the pixel value for the coordinate.

제1예측블록 생성부(182)는 수학식 1에 의해 각각의 모드별로 제1예측오차인

Figure 112009017747773-PAT00003
을 산출한 후 이를 최소로 하는 예측 모드를 최적의 예측 모드로 선택하게 된다. 이를 수학식으로 표현하면 다음과 같다.The first prediction block generation unit 182 is a first prediction error for each mode according to Equation 1
Figure 112009017747773-PAT00003
After calculating, the prediction mode that minimizes this is selected as the optimal prediction mode. This is expressed as an equation.

Figure 112009017747773-PAT00004
Figure 112009017747773-PAT00004

여기서, C는 4×4 블록 또는 8×8 블록의 휘도성분을 예측할 때 사용하는 화면내 예측 모드로서, 4×4 블록이나 8×8 블록은 기본적으로 9가지 예측 모드(즉, C={0, 1, 2, 3, 4, 5, 6, 7, 8})를 가지고 있다.Here, C is an intra prediction mode used to predict luminance components of 4x4 blocks or 8x8 blocks, and 4x4 blocks or 8x8 blocks basically have nine prediction modes (that is, C = {0). , 1, 2, 3, 4, 5, 6, 7, 8}).

최종적으로 제1예측블록 생성부(182)는 위 수학식 1 및 수학식 2에 따라 결정된 최적의 예측 모드에 의해 생성된 예측블록을 제1예측블록으로 결정한다.Finally, the first prediction block generator 182 determines the prediction block generated by the optimal prediction mode determined according to Equations 1 and 2 as the first prediction block.

제2예측블록 생성부(184)는 재생블록 상에서 부호화 대상 블록과 인접한 화소들로 이루어진 템플릿 영역을 이용하여 부호화 대상 블록에 대응하는 제2예측블록을 생성한다. 제2예측블록의 생성은 템플릿 매칭(template matching)에 의한 예측블록 생성 방식과 동일한 방법에 의해 이루어진다.The second prediction block generation unit 184 generates a second prediction block corresponding to the encoding target block by using a template region formed of pixels adjacent to the encoding target block on the play block. Generation of the second prediction block is performed by the same method as that of the prediction block generation method by template matching.

도 4는 제2예측블록 생성부(184)에 대한 바람직한 일 실시예의 구성을 도시 한 블록도이다. 도 4를 참조하면, 제2예측블록 생성부(184)는 템플릿 영역 결정부(410), 템플릿 매칭부(420) 및 예측블록 결정부(430)를 구비한다.4 is a block diagram showing a configuration of a preferred embodiment of the second prediction block generation unit 184. Referring to FIG. 4, the second prediction block generator 184 includes a template region determiner 410, a template matcher 420, and a prediction block determiner 430.

템플릿 영역 결정부(410)는 재생블록을 구성하는 화소 중에서 부호화 대상 블록과 인접한 화소들로 이루어진 템플릿 영역을 결정한다.The template region determiner 410 determines a template region composed of pixels adjacent to an encoding target block among the pixels constituting the playback block.

도 5는 재생블록 상에서 결정된 템플릿 영역의 일 예를 도시한 도면이다. 도 5를 참조하면, 부호화 대상 블록을 제외한 블록들은 역변환부(150) 및 가산부(160)에 의해 복호화되어 저장부(170)에 저장되어 있는 재생블록이며, 템플릿 영역(510)은 부호화 대상 블록과 인접하도록 재생블록을 구성하는 화소들에 의해 이루어진다. 템플릿 영역 결정부(410)에 의해 결정된 템플릿 영역(510)은 부호화 대상 블록에 대응하는 제2예측블록을 생성하기 위해 이용된다.5 is a diagram illustrating an example of a template region determined on a play block. Referring to FIG. 5, blocks except for encoding target blocks are playback blocks decoded by the inverse transform unit 150 and the adder 160 and stored in the storage unit 170, and the template region 510 is an encoding target block. By the pixels constituting the playback block so as to be adjacent to each other. The template region 510 determined by the template region determiner 410 is used to generate a second prediction block corresponding to the block to be encoded.

템플릿 매칭부(420)는 재생블록 상에서 템플릿 영역을 구성하는 각 화소의 화소값과의 차를 기초로 산출된 제2예측오차를 최소로 하는 대응 템플릿 영역을 탐색한다.The template matching unit 420 searches for a corresponding template region which minimizes the second prediction error calculated based on a difference between pixel values of each pixel constituting the template region on the play block.

도 6은 재생블록들로 이루어진 영역 상에서 대응 템플릿 영역을 탐색하는 과정을 설명하기 위한 도면이다. 도 6을 참조하면, 실선으로 표시된 영역이 재생블록들로 이루어진 영역에 해당한다. 부호화 대상 블록(610)에 대해 재생블록 상에서 템플릿 영역(620)이 결정되고, 재생블록들로 이루어진 영역 상에서 템플릿 영역(620)과의 제2예측오차를 최소로 하는 대응 템플릿 영역(630)을 탐색한다. 결정되는 대응 템플릿 영역(630)은 템플릿 영역(620)과 동일한 크기 및 형태를 가진다.FIG. 6 is a diagram for describing a process of searching for a corresponding template region on a region consisting of play blocks. Referring to FIG. 6, an area indicated by a solid line corresponds to an area consisting of play blocks. The template area 620 is determined on the play block with respect to the encoding target block 610, and the corresponding template area 630 is searched for minimizing the second prediction error with the template area 620 on the area formed of the play blocks. do. The determined template area 630 has the same size and shape as the template area 620.

대응 템플릿 영역(630)은 템플릿 영역(620)과의 상관성이 가장 높은 영역을 말한다. 상관성, 즉 제2예측오차를 측정하기 위한 방법으로는 차분 신호의 절대치합을 나타내는 SAD(sum of absolute difference) 또는 차분 신호의 제곱 오차 평균을 나타내는 MSE(mean square error) 등을 이용할 수 있고, 위 수학식 1을 적용할 수도 있다. 이때 수학식 1을 적용하여 제2예측오차를 측정하기 위해서는 부호화 대상 블록과 예측블록이 아닌 템플릿 영역(620)과 대응 템플릿 영역(630)을 구성하는 화소 사이의 화소값의 차를 이용한다.The corresponding template area 630 refers to an area having the highest correlation with the template area 620. As a method for measuring correlation, that is, a second prediction error, a sum of absolute difference (SAD) representing an absolute value of the difference signal or a mean square error (MSE) representing an average of squared errors of the difference signal may be used. Equation 1 may be applied. In this case, in order to measure the second prediction error by applying Equation 1, the difference between pixel values between the template region 620 and the pixels constituting the corresponding template region 630 is used instead of the encoding target block and the prediction block.

예측블록 결정부(430)는 템플릿 영역과 부호화 대상 블록 사이의 위치관계 및 대응 템플릿 영역의 위치를 기초로 제2예측블록을 결정한다.The prediction block determiner 430 determines the second prediction block based on the positional relationship between the template region and the encoding target block and the position of the corresponding template region.

도 7은 부호화 대상 블록에 대응하여 생성된 제2예측블록을 도시한 도면이다. 도 7을 참조하면, 부호화 대상 블록(610)에 인접하도록 결정된 템플릿 영역(620)을 이용하여 재생블록 상에서 제2예측오차를 최소화하는 대응 템플릿 영역(630)이 탐색된다. 다음으로 예측블록 결정부(430)는 템플릿 영역(620)과 부호화 대상 블록(610) 사이의 위치관계를 고려하여 제2예측블록(640)을 결정한다. 즉, 제2예측블록(640)은 템플릿 영역(620)에 대한 부호화 대상 블록(610)의 위치관계와 동일하도록 대응 템플릿 영역(630)에 대해 결정된다. 도 7에서, 템플릿 영역(620)이 부호화 대상 블록(610)의 두 변을 감싸는 형태로 위치하므로 그와 동일한 위치관계로 대응 템플릿 영역(630)이 제2예측블록(640)의 두 변을 감싸는 형태로 위치하도록 제2예측블록(640)의 위치를 결정한다.FIG. 7 is a diagram illustrating a second prediction block generated corresponding to a block to be encoded. Referring to FIG. 7, a corresponding template region 630 for minimizing a second prediction error on a play block is searched using the template region 620 determined to be adjacent to the encoding target block 610. Next, the prediction block determiner 430 determines the second prediction block 640 in consideration of the positional relationship between the template region 620 and the encoding target block 610. That is, the second prediction block 640 is determined for the corresponding template region 630 so as to be the same as the positional relationship of the encoding target block 610 with respect to the template region 620. In FIG. 7, since the template region 620 surrounds two sides of the encoding target block 610, the corresponding template region 630 surrounds two sides of the second prediction block 640 in the same positional relationship. The position of the second prediction block 640 is determined to be positioned in the shape.

최종 예측블록 생성부(186)는 제1예측블록을 구성하는 각 화소의 화소값과 제2예측블록을 구성하는 각 화소의 화소값에 각각 가중치를 부여한 후 합산하여 부 호화 대상 블록에 대응하는 최종 예측블록을 생성한다.The final prediction block generation unit 186 weights the pixel values of each pixel constituting the first prediction block and the pixel value of each pixel constituting the second prediction block, and adds the weights to each of the pixels corresponding to the encoding target block. Create a predictive block.

제1예측블록을 생성하기 위해 사용되는 H.264/AVC에 의한 부호화 방식은 영상의 화소값 분포가 단순하고 방향성이 큰 경우에 우수한 성능을 보이며, 제2예측블록을 생성하기 위해 사용되는 템플릿 매칭에 의한 부호화 방식은 영상에 특정 패턴이 존재하거나 노이즈가 심한 경우에 우수한 성능을 보인다. 최종 예측블록 생성부(186)는 두 부호화 방식의 장점을 결합하여 기존에 비해 정확한 예측블록이 생성되도록 하기 위해 다음의 수학식 3과 같이 제1예측블록과 제2예측블록의 가중 평균을 취한다.The H.264 / AVC encoding scheme used to generate the first prediction block shows excellent performance when the pixel value distribution of the image is simple and has high directionality, and the template matching used to generate the second prediction block. The coding scheme shows excellent performance in the case where a specific pattern exists in the image or the noise is severe. The final prediction block generation unit 186 takes a weighted average of the first prediction block and the second prediction block as shown in Equation 3 below to combine the advantages of the two coding schemes to generate an accurate prediction block. .

Figure 112009017747773-PAT00005
Figure 112009017747773-PAT00005

여기서, Bpred는 최종 예측블록을 구성하는 각 화소의 화소값, B1은 제1예측블록을 구성하는 각 화소의 화소값, B2는 제2예측블록을 구성하는 각 화소의 화소값, 그리고 α는 가중치로서 0과 1 사이에서 선택된 값이다.Here, B pred is a pixel value of each pixel constituting the final prediction block, B 1 is a pixel value of each pixel constituting the first prediction block, B 2 is a pixel value of each pixel constituting the second prediction block, and α is a value selected between 0 and 1 as the weight.

제1예측블록과 제2예측블록의 화소값에 부여되는 가중치를 선택할 때에는 제1예측블록과 제2예측블록을 생성할 때와 동일한 방법을 사용한다. 즉, 0과 1 사이에서 선택된 복수의 후보 가중치 중에서 예측오차를 최소로 하는 후보 가중치를 위 수학식 3의 α값으로 결정한다. 후보 가중치로는 0과 1 사이에서 일정한 간격, 예를 들면 0.1의 간격을 가지는 복수의 값들(0.1, 0.2, 0.3,…, 0.9)을 선택할 수 있으며, 이에 한정하지 않고 영상의 특성 등을 고려하여 적당한 값들을 선택할 수 있 다.When selecting weights to be assigned to pixel values of the first prediction block and the second prediction block, the same method as that of generating the first prediction block and the second prediction block is used. That is, the candidate weight for minimizing the prediction error among the plurality of candidate weights selected between 0 and 1 is determined as the α value in Equation 3 above. As a candidate weight, a plurality of values (0.1, 0.2, 0.3, ..., 0.9) having a constant interval, for example, 0.1, between 0 and 1 may be selected, and the present invention is not limited thereto. You can select appropriate values.

최종 예측블록을 생성할 때 부여되는 가중치를 결정하기 위한 예측오차의 산출은 수학식 1과 동일한 방법으로 수행된다. 다시 말하면, 최종 예측블록 생성부(186)는 복수의 후보 가중치 중에서 다음 수학식 4로 표현되는, 부호화 대상 블록과 해당 후보 가중치에 의해 생성된 최종 예측블록 사이의 예측오차를 최소화하는 후보 가중치를 α값, 즉 최종 예측블록을 생성하기 위한 가중치로 결정한다.The calculation of the prediction error for determining the weight given when generating the final prediction block is performed in the same manner as in Equation (1). In other words, the final prediction block generation unit 186 may generate a candidate weight for minimizing a prediction error between the encoding target block and the final prediction block generated by the candidate weight, which is expressed by Equation 4, among a plurality of candidate weights. It is determined by the value, that is, the weight for generating the final prediction block.

Figure 112009017747773-PAT00006
Figure 112009017747773-PAT00006

여기서,

Figure 112009017747773-PAT00007
는 후보 가중치 중에서 i번째 후보 가중치에 의해 생성된 최종 예측블록을 기초로 산출된 예측오차, M 및 N은 부호화 대상 블록과 i번째 후보 가중치에 의해 생성된 최종 예측블록의 수직방향 및 수평방향의 크기, cur(m, n)는 부호화 대상 블록의 (m, n) 좌표에 대한 화소값, 그리고 predi(m, n)는 i번째 후보 가중치에 의해 생성된 최종 예측블록의 (m, n) 좌표에 대한 화소값이다.here,
Figure 112009017747773-PAT00007
Is a prediction error calculated based on the final prediction block generated by the i th candidate weight among the candidate weights, and M and N are the magnitudes of the vertical and horizontal directions of the final prediction block generated by the encoding target block and the i th candidate weight. , cur (m, n) is the pixel value for the (m, n) coordinate of the block to be encoded, and pred i (m, n) is the (m, n) coordinate of the last prediction block generated by the i th candidate weight. Is the pixel value for.

부호화부(140)는 변환부(130)로부터 변환 계수 데이터를 입력받아 엔트로피 부호화를 수행한다. 이와 같이 부호화된 데이터가 본 발명에 따른 영상 부호화 장치의 출력에 해당한다. 엔트로피 부호화로서 하프맨 부호화와 같은 가변 길이 부호화 방식 또는 CABAC(Context-based Adaptive Binary Arithmetic Coding)로 대표되는 산술 부호화 방식을 사용할 수 있다. 이와 같은 부호화에 의해 데이터량을 압축 할 수 있다.The encoder 140 receives transform coefficient data from the transformer 130 and performs entropy encoding. The data encoded as described above corresponds to the output of the video encoding apparatus according to the present invention. As entropy coding, a variable length coding scheme such as half-man coding or an arithmetic coding scheme represented by Context-based Adaptive Binary Arithmetic Coding (CABAC) may be used. By such encoding, the data amount can be compressed.

또한 제1예측블록을 생성하기 위해 필요한 정보인 예측 모드에 관한 정보, 제2예측블록을 생성하기 위해 필요한 정보인 템플릿 영역 및 대응 템플릿 영역의 위치에 관한 정보, 그리고 최종 예측블록을 생성하기 위해 필요한 가중치에 관한 정보는 변환 계수 데이터와 함께 부호화부(140)에 의해 부호화된 후, 본 발명에 따른 영상 부호화 장치로부터 최종적으로 출력되는 부호화된 데이터 스트림에 포함되어 복호화기로 전송된다.In addition, information on the prediction mode, which is information necessary for generating the first prediction block, information on the position of the template region and the corresponding template region, which is information required for generating the second prediction block, and information necessary for generating the final prediction block. The information about the weight is encoded by the encoder 140 together with the transform coefficient data and then included in the encoded data stream finally output from the image encoding apparatus according to the present invention and transmitted to the decoder.

도 8은 본 발명에 따른 영상 부호화 방법에 대한 바람직한 실시예의 수행과정을 도시한 흐름도이다.8 is a flowchart illustrating a process of performing a preferred embodiment of the image encoding method according to the present invention.

도 8을 참조하면, 복수의 부호화 대상 블록으로 구성된 원본 영상프레임이 입력되면(S810), 먼저 제1예측블록 생성부(182)는 데이터 스트림이 복호화되어 생성된 복수의 재생블록 상에서 상기 부호화 대상 블록과 인접한 화소의 화소값에 의해 상기 부호화 대상 블록에 대응하는 제1예측블록을 생성한다(S820). 이때 제1예측블록은 복수의 예측 모드 중에서 수학식 1의 제1예측오차를 최소화하는 최적의 예측 모드에 의해 생성된다.Referring to FIG. 8, when an original video frame composed of a plurality of encoding target blocks is input (S810), first the first prediction block generator 182 first encodes the encoding target block on a plurality of playback blocks generated by decoding a data stream. The first prediction block corresponding to the encoding target block is generated by the pixel value of the pixel adjacent to the S block (S820). In this case, the first prediction block is generated by an optimal prediction mode that minimizes the first prediction error of Equation 1 among the plurality of prediction modes.

제2예측블록 생성부(184)의 템플릿 영역 결정부(410)는 재생블록을 구성하는 화소 중에서 부호화 대상 블록과 인접한 화소들로 이루어진 템플릿 영역을 결정한다(S830). 다음으로 템플릿 매칭부(420)는 재생블록 상에서 템플릿 영역을 구성하는 각 화소의 화소값과의 차를 기초로 산출된 제2예측오차를 최소화하는 대응 템플릿 영역을 탐색한다(S840). 예측블록 결정부(430)는 템플릿 영역과 부호화 대상 블 록 사이의 위치관계 및 대응 템플릿 영역의 위치를 기초로 제2예측블록을 결정한다(S850).The template region determiner 410 of the second prediction block generator 184 determines a template region including pixels adjacent to the encoding target block among pixels constituting the playback block (S830). Next, the template matching unit 420 searches for a corresponding template region to minimize the second prediction error calculated based on the difference between the pixel values of each pixel constituting the template region on the play block (S840). The prediction block determiner 430 determines the second prediction block based on the positional relationship between the template region and the encoding target block and the position of the corresponding template region (S850).

마지막으로 최종 예측블록 결정부(186)는 제1예측블록을 구성하는 각 화소의 화소값과 제2예측블록을 구성하는 각 화소의 화소값에 각각 가중치를 부여한 후 합산하여 부호화 대상 블록에 대응하는 최종 예측블록을 생성한다(S860). 부호화부(140)는 제1예측블록과 제2예측블록의 생성정보 및 가중치를 부호화하여 데이터 스트림에 포함시킨다(S870).Finally, the final prediction block determiner 186 weights pixel values of each pixel constituting the first prediction block and pixel values of each pixel constituting the second prediction block, and adds the weights to correspond to the encoding target block. A final prediction block is generated (S860). The encoder 140 encodes the generation information and the weight of the first prediction block and the second prediction block and includes the weights in the data stream (S870).

도 9는 본 발명에 따른 영상 복호화 장치에 대한 바람직한 일 실시예의 구성을 도시한 블록도이다.9 is a block diagram showing the configuration of a preferred embodiment of an image decoding apparatus according to the present invention.

도 9를 참조하면, 본 발명에 따른 영상 복호화 장치는 입력받은 데이터 스트림에 포함된 복수의 복호화 대상 블록을 순차적으로 복호화하여 복수의 재생블록을 생성하며, 복호화부(910), 역변환부(920), 가산부(930), 저장부(940) 및 예측부(950)를 구비한다.Referring to FIG. 9, the image decoding apparatus according to the present invention sequentially decodes a plurality of decoding target blocks included in an input data stream to generate a plurality of playback blocks, and includes a decoder 910 and an inverse transformer 920. , An adder 930, a storage 940, and a predictor 950.

복호화부(910)는 입력받은 데이터 스트림을 복호화하는 수단이다. 데이터 스트림은 복수의 부호화 대상 블록으로 구성된 원본 영상프레임이 본 발명에 따른 부호화 장치에 의해 부호화된 것으로, 각각의 부호화 대상 블록에 대응하는 복호화 대상 블록으로 구성된다. 복호화부(910)에 의한 복호화 방식은 본 발명에 따른 영상 부호화 장치의 부호화부(140)에 의한 엔트로피 부호화 방식에 대응한다. 입력 데이터 스트림이 복수의 복호화 대상 블록으로 이루어져 있으므로, 복호화부(910)에 의한 복호화 및 출력 역시 블록 단위로 수행된다.The decoder 910 is a means for decoding the received data stream. In the data stream, an original video frame composed of a plurality of encoding target blocks is encoded by the encoding apparatus according to the present invention, and includes a decoding target block corresponding to each encoding target block. The decoding method by the decoder 910 corresponds to the entropy coding method by the encoder 140 of the image encoding apparatus according to the present invention. Since the input data stream consists of a plurality of decoding target blocks, decoding and output by the decoding unit 910 are also performed in units of blocks.

또한 본 발명에 따른 영상 부호화 장치에서 제1부호화방법에 의해 생성된 제1예측블록과 제2부호화방법에 의해 생성된 제2예측블록의 생성정보 및 최종 예측블록을 생성하기 위한 가중치가 부호화되어 데이터 스트림에 포함되어 함께 본 발명에 따른 영상 복호화 장치로 전송되므로, 복호화부(910)는 이러한 정보들도 데이터 스트림과 함께 복호화한다.In addition, in the image encoding apparatus according to the present invention, the generation information of the first prediction block generated by the first encoding method and the second prediction block generated by the second encoding method and the weights for generating the final prediction block are encoded and data. Since it is included in the stream and transmitted together with the image decoding apparatus according to the present invention, the decoder 910 also decodes such information together with the data stream.

역변환부(920)는 복호화부(910)로부터 입력된 데이터에 본 발명에 따른 영상 부호화 장치의 변환부(130)에 의해 수행된 변환처리의 역처리를 수행하여 차분블록을 생성한다. 또한 역변환부(920)는 본 발명에 따른 영상 부호화 장치의 역변환부(150)와 동일한 방식을 사용한다.The inverse transform unit 920 generates inverse blocks by performing inverse processing of the transform processing performed by the transform unit 130 of the image encoding apparatus according to the data input from the decoder 910. Also, the inverse transformer 920 uses the same method as the inverse transformer 150 of the image encoding apparatus according to the present invention.

가산부(930)는 뒤에 설명할 예측부(950)로부터 출력된 최종 예측블록과 역변환부(920)에 의해 생성된 차분블록을 합산하여 재생블록을 생성한다. 본 발명에 따른 영상 복호화 장치의 출력인 복호화된 데이터는 이와 동일한 재생블록으로 이루어져 있다. 또한 재생블록은 저장부(940)에 저장되며, 예측부(950)에 의한 최종 예측블록의 생성에 이용된다.The adder 930 adds the final predicted block output from the predictor 950 to be described later and the difference block generated by the inverse transform unit 920 to generate a play block. The decoded data which is the output of the video decoding apparatus according to the present invention consists of the same playback block. In addition, the play block is stored in the storage unit 940 and used for generation of the final prediction block by the prediction unit 950.

이하에서는 본 발명에 따른 영상 복호화 장치의 기술적 특징에 해당하는 예측부(950)에 관하여 설명한다. 도 9를 참조하면, 예측부(950)는 제1예측블록 생성부(952), 제2예측블록 생성부(954) 및 최종 예측블록 생성부(956)를 구비한다. 제1예측블록 생성부(952), 제2예측블록 생성부(954) 및 최종 예측블록 생성부(956) 각각은 본 발명에 따른 영상 부호화 장치의 예측부(180)를 구성하는 제1예측블록 생성부(182), 제2예측블록 생성부(184) 및 최종 예측블록 생성부(186)와 동일한 기능 을 수행하므로 상세한 설명은 생략한다.Hereinafter, the prediction unit 950 corresponding to the technical features of the image decoding apparatus according to the present invention will be described. Referring to FIG. 9, the prediction unit 950 includes a first prediction block generation unit 952, a second prediction block generation unit 954, and a final prediction block generation unit 956. Each of the first prediction block generator 952, the second prediction block generator 954, and the final prediction block generator 956 constitutes a first prediction block constituting the prediction unit 180 of the image encoding apparatus according to the present invention. Since the generation unit 182, the second prediction block generation unit 184, and the final prediction block generation unit 186 perform the same functions, detailed descriptions thereof will be omitted.

제1예측블록, 제2예측블록 및 최종 예측블록은 복호화 대상 블록에 대응하여 생성된다. 구체적으로, 제1예측블록 생성부(952)는 제1예측블록을 생성할 복호화 대상 블록이 포함된 데이터 스트림 이전에 입력된 데이터 스트림이 복원되어 생성된 복수의 재생블록 상에서 복호화 대상 블록과 인접한 화소의 화소값에 의해 복호화 대상 블록에 대응하는 제1예측블록을 생성한다. 부호화된 제1예측블록의 생성정보는 데이터 스트림과 함께 본 발명에 따른 영상 부호화 장치로부터 전송되며, 복호화부(910)에 의해 복호화된다. 따라서 제1예측블록 생성부(952)는 본 발명에 따른 영상 부호화 장치의 제1예측블록 생성부(182)에 의해 사용된 예측 모드와 동일한 예측 모드에 의해 제1예측블록을 생성하게 된다.The first prediction block, the second prediction block, and the final prediction block are generated corresponding to the decoding target block. In detail, the first prediction block generation unit 952 includes pixels adjacent to the decoding target block on the plurality of playback blocks generated by reconstructing the data stream inputted before the data stream including the decoding target block to generate the first prediction block. The first prediction block corresponding to the decoding object block is generated by the pixel value of. The generated information of the encoded first prediction block is transmitted from the image encoding apparatus according to the present invention together with the data stream and decoded by the decoder 910. Accordingly, the first prediction block generator 952 generates the first prediction block by the same prediction mode as used by the first prediction block generation unit 182 of the image encoding apparatus according to the present invention.

제2예측블록 생성부(954)는 본 발명에 따른 영상 부호화 장치의 제2예측블록 생성부(184)와 동일한 방법에 의해, 즉 재생블록 상에서 결정된 복호화 대상 블록과 인접한 화소들로 이루어진 템플릿 영역을 이용하여 복호화 대상 블록에 대응하는 제2예측블록을 생성한다. 제1예측블록과 마찬가지로 제2예측블록의 생성정보 또한 데이터 스트림과 함께 본 발명에 따른 영상 부호화 장치로부터 전송되므로 제2예측블록 생성부(954)는 재생블록 상에서 대응 템플릿 영역을 탐색하는 과정을 거치지 않고 전송받은 생성정보를 이용하여 제2예측블록을 생성할 수 있다. 구체적으로, 제2예측블록의 생성정보에는 템플릿 영역 및 대응 템플릿 영역의 위치정보가 포함된다.The second prediction block generation unit 954 uses the same method as the second prediction block generation unit 184 of the image encoding apparatus according to the present invention, that is, a template region composed of pixels adjacent to the decoding target block determined on the playback block. By using the second prediction block corresponding to the decoding target block is generated. Like the first prediction block, the generation information of the second prediction block is also transmitted along with the data stream from the video encoding apparatus according to the present invention. The second prediction block can be generated by using the generated generation information. Specifically, the generation information of the second prediction block includes the template region and the position information of the corresponding template region.

최종 예측블록 생성부(956)는 제1예측블록을 구성하는 각 화소의 화소값과 제2예측블록을 구성하는 각 화소의 화소값에 각각 가중치를 부여한 후 합산하여 복호화 대상 블록에 대응하는 최종 예측블록을 생성한다. 최종 예측블록은 수학식 3에 의해 생성되며, 화소값에 부여되는 가중치인 α값은 본 발명에 따른 영상 부호화 장치로부터 출력된 데이터 스트림과 함께 전송된 것이다.The final prediction block generator 956 weights the pixel values of each pixel constituting the first prediction block and the pixel value of each pixel constituting the second prediction block, adds weights, and adds the final prediction corresponding to the decoding target block. Create a block. The final prediction block is generated by Equation 3, and the α value, which is a weight assigned to the pixel value, is transmitted together with the data stream output from the image encoding apparatus according to the present invention.

도 10은 본 발명에 따른 영상 복호화 방법에 대한 바람직한 실시예의 수행과정을 도시한 흐름도이다.10 is a flowchart illustrating a process of performing a preferred embodiment of an image decoding method according to the present invention.

도 10을 참조하면, 복수의 복호화 대상 블록으로 구성된 데이터 스트림이 영상 부호화 장치로부터 입력되면 복호화부(910)는 제1예측블록과 제2예측블록의 생성정보 및 최종 예측블록을 생성하기 위한 가중치를 데이터 스트림으로부터 추출하여 복호화한다(S1010).Referring to FIG. 10, when a data stream composed of a plurality of decoding target blocks is input from an image encoding apparatus, the decoder 910 may generate generation information of the first prediction block and the second prediction block and weights for generating the final prediction block. Extract from the data stream and decode (S1010).

제1예측블록 생성부(952)는 데이터 스트림이 복호화되어 생성된 복수의 재생블록 상에서 복호화 대상 블록과 인접한 화소의 화소값에 의해 복호화 대상 블록에 대응하는 제1예측블록을 생성한다(S1020). 다음으로 제2예측블록 생성부(954)는 재생블록 상에서 결정된 복호화 대상 블록과 인접한 화소들로 이루어진 템플릿 영역을 이용하여 복호화 대상 블록에 대응하는 제2예측블록을 생성한다(S1030). 이때 제1예측블록 생성부(952) 및 제2예측블록 생성부(954)는 본 발명에 따른 영상 부호화 장치로부터 전송된 제1예측블록 및 제2예측블록의 생성정보를 이용한다. 최종 예측블록 생성부(956)는 제1예측블록을 구성하는 각 화소의 화소값과 제2예측블록을 구성하는 각 화소의 화소값에 각각 가중치를 부여한 후 합산하여 부호화 대상 블록에 대응하는 최종 예측블록을 생성한다(S1040). 최종 예측블록을 생성하기 위 한 가중치 역시 본 발명에 따른 영상 부호화 장치로부터 데이터 스트림과 함께 전송된 것이다.The first prediction block generation unit 952 generates a first prediction block corresponding to the decoding object block based on pixel values of pixels adjacent to the decoding object block on the plurality of playback blocks generated by decoding the data stream (S1020). Next, the second prediction block generation unit 954 generates a second prediction block corresponding to the decoding object block by using a template region composed of pixels adjacent to the decoding object block determined on the playback block (S1030). In this case, the first prediction block generator 952 and the second prediction block generator 954 use generation information of the first prediction block and the second prediction block transmitted from the video encoding apparatus according to the present invention. The final prediction block generation unit 956 weights pixel values of each pixel constituting the first prediction block and pixel values of each pixel constituting the second prediction block, and adds the weights to each pixel to form a final prediction corresponding to the encoding target block. A block is generated (S1040). The weight for generating the final prediction block is also transmitted with the data stream from the image encoding apparatus according to the present invention.

마지막으로 가산부(930)는 최종 예측블록과 역변환부(920)에 의해 생성된 차분블록을 합산하여 재생블록을 생성한다(S1050).Finally, the adder 930 adds the final predicted block and the difference block generated by the inverse transform unit 920 to generate a play block (S1050).

본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The invention can also be embodied as computer readable code 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. Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like, and may be implemented in the form of a carrier wave (for example, transmission via the Internet) . The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

이상에서 본 발명의 바람직한 실시예에 대해 도시하고 설명하였으나, 본 발명은 상술한 특정의 바람직한 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능한 것은 물론이고, 그와 같은 변경은 청구범위 기재의 범위 내에 있게 된다.Although the preferred embodiments of the present invention have been shown and described above, the present invention is not limited to the specific preferred embodiments described above, and the present invention belongs to the present invention without departing from the gist of the present invention as claimed in the claims. Various modifications can be made by those skilled in the art, and such changes are within the scope of the claims.

도 1은 본 발명에 따른 영상 부호화 장치에 대한 바람직한 일 실시예의 구성을 도시한 블록도,1 is a block diagram showing the configuration of a preferred embodiment of a video encoding apparatus according to the present invention;

도 2는 제1예측블록을 생성하기 위해 사용되는 부호화 대상 블록에 인접한 화소들을 도시한 도면,2 is a diagram illustrating pixels adjacent to an encoding target block used to generate a first prediction block;

도 3은 제1예측블록을 생성하기 위해 사용되는 9가지 예측 모드별 예측 방향을 도시한 도면,3 is a diagram illustrating prediction directions for nine prediction modes used to generate a first prediction block;

도 4는 제2예측블록 생성부(184)에 대한 바람직한 일 실시예의 구성을 도시한 블록도,4 is a block diagram showing a configuration of a preferred embodiment of the second prediction block generation unit 184,

도 5는 재생블록 상에서 결정된 템플릿 영역의 일 예를 도시한 도면,5 is a diagram illustrating an example of a template region determined on a play block;

도 6은 재생블록들로 이루어진 영역 상에서 대응 템플릿 영역을 탐색하는 과정을 설명하기 위한 도면,6 is a view for explaining a process of searching for a corresponding template area on an area consisting of play blocks;

도 7은 부호화 대상 블록에 대응하여 생성된 제2예측블록을 도시한 도면,7 is a view showing a second prediction block generated corresponding to a block to be encoded;

도 8은 본 발명에 따른 영상 부호화 방법에 대한 바람직한 실시예의 수행과정을 도시한 흐름도,8 is a flowchart illustrating a process of performing a preferred embodiment of an image encoding method according to the present invention;

도 9는 본 발명에 따른 영상 복호화 장치에 대한 바람직한 일 실시예의 구성을 도시한 블록도, 그리고,9 is a block diagram showing the configuration of a preferred embodiment of an image decoding apparatus according to the present invention;

도 10은 본 발명에 따른 영상 복호화 방법에 대한 바람직한 실시예의 수행과정을 도시한 흐름도이다.10 is a flowchart illustrating a process of performing a preferred embodiment of an image decoding method according to the present invention.

Claims (16)

원본 영상프레임을 구성하는 복수의 부호화 대상 블록과 상기 각각의 부호화 대상 블록에 대응하여 생성된 예측블록 사이의 차분블록을 변환한 변환 계수 데이터를 순차적으로 부호화하여 데이터 스트림을 생성하는 영상 부호화 장치에 있어서,A video encoding apparatus for generating a data stream by sequentially encoding transform coefficient data obtained by transforming difference blocks between a plurality of encoding target blocks constituting an original video frame and prediction blocks generated corresponding to the respective encoding target blocks. , 상기 변환 계수 데이터가 역변환된 후 상기 예측블록과 합산되어 생성된 복수의 재생블록 상에서 상기 부호화 대상 블록과 인접한 화소의 화소값에 의해 상기 부호화 대상 블록에 대응하는 제1예측블록을 생성하는 제1예측블록 생성부;A first prediction block generating a first prediction block corresponding to the encoding object block by using pixel values of a pixel adjacent to the encoding object block on a plurality of reproduction blocks generated by adding the predictive block after the transform coefficient data is inversely transformed Block generation unit; 상기 재생블록 상에서 결정된, 상기 부호화 대상 블록과 인접한 화소들로 이루어진 템플릿 영역을 이용하여 상기 부호화 대상 블록에 대응하는 제2예측블록을 생성하는 제2예측블록 생성부;A second prediction block generation unit generating a second prediction block corresponding to the encoding target block by using a template region formed of pixels adjacent to the encoding target block determined on the play block; 상기 제1예측블록을 구성하는 각 화소의 화소값과 상기 제2예측블록을 구성하는 각 화소의 화소값에 각각 가중치를 부여한 후 합산하여 상기 부호화 대상 블록에 대응하는 최종 예측블록을 생성하는 최종 예측블록 생성부; 및Final prediction for generating a final prediction block corresponding to the encoding target block by adding weights to pixel values of each pixel constituting the first prediction block and pixel values of each pixel constituting the second prediction block. Block generation unit; And 상기 제1예측블록과 상기 제2예측블록의 생성정보 및 상기 가중치를 부호화하여 상기 데이터 스트림에 포함시키는 부호화부;를 포함하는 것을 특징으로 하는 영상 부호화 장치.And an encoder which encodes generation information and the weights of the first prediction block and the second prediction block and includes the weights in the data stream. 제 1항에 있어서,The method of claim 1, 상기 최종 예측블록 생성부는 다음의 수학식 A에 의해 상기 최종 예측블록을 생성하는 것을 특징으로 하는 영상 부호화 장치:The last prediction block generator generates the last prediction block according to Equation A below. [수학식 A]Equation A
Figure 112009017747773-PAT00008
Figure 112009017747773-PAT00008
여기서, Bpred는 상기 최종 예측블록을 구성하는 각 화소의 화소값, B1은 상기 제1예측블록을 구성하는 각 화소의 화소값, B2는 상기 제2예측블록을 구성하는 각 화소의 화소값, 그리고 α는 상기 가중치로서 0과 1 사이에서 선택된 값이다.Here, B pred is a pixel value of each pixel constituting the final prediction block, B 1 is a pixel value of each pixel constituting the first prediction block, and B 2 is a pixel of each pixel constituting the second prediction block. Value, and α is a value selected between 0 and 1 as said weight.
제 1항 또는 제 2항에 있어서,The method according to claim 1 or 2, 상기 최종 예측블록 생성부는 0에서 1사이의 값들 중 선택된 복수의 후보 가중치 중에서 상기 최종 예측블록과 상기 부호화 대상 블록의 각 화소의 화소값의 차를 기초로 산출된 예측오차를 최소화하는 후보 가중치를 상기 가중치로 결정하는 것을 특징으로 하는 영상 부호화 장치.The final prediction block generator may generate candidate weights for minimizing a prediction error calculated based on a difference between pixel values of each pixel of the final prediction block and the encoding target block among a plurality of candidate weights selected from values between 0 and 1. The video encoding apparatus, characterized in that determined by the weight. 제 3항에 있어서,The method of claim 3, wherein 상기 예측오차는 다음의 수학식 B에 의해 산출되는 것을 특징으로 하는 영상 부호화 장치:The prediction error is calculated by Equation B below. [수학식 B]Equation B
Figure 112009017747773-PAT00009
Figure 112009017747773-PAT00009
여기서,
Figure 112009017747773-PAT00010
는 상기 후보 가중치 중에서 i번째 후보 가중치에 의해 생성된 최종 예측블록을 기초로 산출된 예측오차, M 및 N은 상기 부호화 대상 블록과 상기 i번째 후보 가중치에 의해 생성된 최종 예측블록의 수직방향 및 수평방향의 크기, cur(m, n)는 상기 부호화 대상 블록의 (m, n) 좌표에 대한 화소값, 그리고 predi(m, n)는 상기 i번째 후보 가중치에 의해 생성된 최종 예측블록의 (m, n) 좌표에 대한 화소값이다.
here,
Figure 112009017747773-PAT00010
Is a prediction error calculated based on the last prediction block generated by the i th candidate weight among the candidate weights, and M and N are the vertical and horizontal directions of the last prediction block generated by the encoding target block and the i th candidate weight. The magnitude of the direction, cur (m, n), is a pixel value for the (m, n) coordinate of the block to be encoded, and pred i (m, n) is the last prediction block generated by the i th candidate weight. m, n) The pixel value for the coordinate.
제 1항 또는 제 2항에 있어서,The method according to claim 1 or 2, 상기 제1예측블록 생성부는 예측블록을 구성하는 각 화소의 화소값을 결정하기 위한 복수의 예측 모드에 의해 생성된 복수의 예측블록 중에서 상기 부호화 대상 블록을 구성하는 각 화소와의 화소값의 차를 기초로 산출된 제1예측오차를 최소로 하는 예측블록을 상기 제1예측블록으로 결정하며,The first prediction block generation unit may determine a difference between pixel values of each of the plurality of prediction blocks generated by the plurality of prediction modes for determining the pixel value of each pixel constituting the prediction block and the pixels constituting the encoding target block. Determining a prediction block that minimizes the first prediction error calculated based on the first prediction block, 상기 제1예측블록의 생성정보는 상기 제1예측블록을 생성하는 예측 모드에 관한 정보인 것을 특징으로 하는 영상 부호화 장치.The generation information of the first prediction block is information encoding apparatus, wherein the prediction mode for generating the first prediction block is information. 제 1항 또는 제 2항에 있어서,The method according to claim 1 or 2, 상기 제2예측블록 생성부는,The second prediction block generation unit, 상기 재생블록을 구성하는 화소 중에서 상기 부호화 대상 블록과 인접한 화소들로 이루어진 템플릿 영역을 결정하는 템플릿 영역 결정부;A template region determiner configured to determine a template region formed of pixels adjacent to the encoding target block among pixels constituting the playback block; 상기 재생블록 상에서 상기 템플릿 영역을 구성하는 각 화소의 화소값과의 차를 기초로 산출된 제2예측오차를 최소로 하는 대응 템플릿 영역을 탐색하는 템플릿 매칭부; 및A template matching unit searching for a corresponding template region which minimizes a second prediction error calculated based on a difference between pixel values of each pixel constituting the template region on the play block; And 상기 템플릿 영역과 상기 부호화 대상 블록 사이의 위치관계 및 상기 대응 템플릿 영역의 위치를 기초로 상기 제2예측블록을 결정하는 예측블록 결정부;를 포함하며,And a prediction block determiner configured to determine the second prediction block based on the positional relationship between the template region and the encoding target block and the position of the corresponding template region. 상기 제2예측블록의 생성정보는 상기 템플릿 영역 및 상기 대응 템플릿 영역의 위치에 관한 정보인 것을 특징으로 하는 영상 부호화 장치.And the generation information of the second prediction block is information about the position of the template region and the corresponding template region. 원본 영상프레임을 구성하는 복수의 부호화 대상 블록과 상기 각각의 부호화 대상 블록에 대응하여 생성된 예측블록 사이의 차분블록을 변환한 변환 계수 데이터를 순차적으로 부호화하여 데이터 스트림을 생성하는 영상 부호화 방법에 있어서,A video encoding method of generating a data stream by sequentially encoding transform coefficient data obtained by transforming difference blocks between a plurality of encoding target blocks constituting an original video frame and prediction blocks generated corresponding to the respective encoding target blocks. , 상기 변환 계수 데이터가 역변환된 후 상기 예측블록과 합산되어 생성된 복수의 재생블록 상에서 상기 부호화 대상 블록과 인접한 화소의 화소값에 의해 상기 부호화 대상 블록에 대응하는 제1예측블록을 생성하는 제1예측블록 생성단계;A first prediction block generating a first prediction block corresponding to the encoding object block by using pixel values of a pixel adjacent to the encoding object block on a plurality of reproduction blocks generated by adding the predictive block after the transform coefficient data is inversely transformed Block generation step; 상기 재생블록 상에서 결정된, 상기 부호화 대상 블록과 인접한 화소들로 이 루어진 템플릿 영역을 이용하여 상기 부호화 대상 블록에 대응하는 제2예측블록을 생성하는 제2예측블록 생성단계;A second prediction block generation step of generating a second prediction block corresponding to the encoding target block by using a template region formed of pixels adjacent to the encoding target block determined on the play block; 상기 제1예측블록을 구성하는 각 화소의 화소값과 상기 제2예측블록을 구성하는 각 화소의 화소값에 각각 가중치를 부여한 후 합산하여 상기 부호화 대상 블록에 대응하는 최종 예측블록을 생성하는 최종 예측블록 생성단계; 및Final prediction for generating a final prediction block corresponding to the encoding target block by adding weights to pixel values of each pixel constituting the first prediction block and pixel values of each pixel constituting the second prediction block. Block generation step; And 상기 제1예측블록과 상기 제2예측블록의 생성정보 및 상기 가중치를 부호화하여 상기 데이터 스트림에 포함시키는 부호화단계;를 포함하는 것을 특징으로 하는 영상 부호화 방법.And encoding the generated information and the weights of the first prediction block and the second prediction block to include the weights in the data stream. 제 7항에 있어서,The method of claim 7, wherein 상기 최종 예측블록 생성단계에서, 0에서 1사이의 값들 중 선택된 복수의 후보 가중치 중에서 상기 최종 예측블록과 상기 부호화 대상 블록의 각 화소의 화소값의 차를 기초로 산출된 예측오차를 최소화하는 후보 가중치를 상기 가중치로 결정하는 것을 특징으로 하는 영상 부호화 방법.In the final prediction block generation step, candidate weights for minimizing a prediction error calculated based on a difference between pixel values of each pixel of the final prediction block and the encoding target block among a plurality of candidate weights selected from values between 0 and 1. The image encoding method according to claim 1, wherein the weight is determined by the weight. 제 8항에 있어서,The method of claim 8, 상기 예측오차는 다음의 수학식 B에 의해 산출되는 것을 특징으로 하는 영상 부호화 방법:The prediction error is calculated by Equation B below. [수학식 B]Equation B
Figure 112009017747773-PAT00011
Figure 112009017747773-PAT00011
여기서,
Figure 112009017747773-PAT00012
는 상기 후보 가중치 중에서 i번째 후보 가중치에 의해 생성된 최종 예측블록을 기초로 산출된 예측오차, M 및 N은 상기 부호화 대상 블록과 상기 i번째 후보 가중치에 의해 생성된 최종 예측블록의 수직방향 및 수평방향의 크기, cur(m, n)는 상기 부호화 대상 블록의 (m, n) 좌표에 대한 화소값, 그리고 predi(m, n)는 상기 i번째 후보 가중치에 의해 생성된 최종 예측블록의 (m, n) 좌표에 대한 화소값이다.
here,
Figure 112009017747773-PAT00012
Is a prediction error calculated based on the last prediction block generated by the i th candidate weight among the candidate weights, and M and N are the vertical and horizontal directions of the last prediction block generated by the encoding target block and the i th candidate weight. The magnitude of the direction, cur (m, n), is a pixel value for the (m, n) coordinate of the block to be encoded, and pred i (m, n) is the last prediction block generated by the i th candidate weight. m, n) The pixel value for the coordinate.
제 7항 내지 제 9항 중 어느 한 항에 있어서,The method according to any one of claims 7 to 9, 상기 제1예측블록 생성단계에서, 예측블록을 구성하는 각 화소의 화소값을 결정하기 위한 복수의 예측 모드에 의해 생성된 복수의 예측블록 중에서 상기 부호화 대상 블록을 구성하는 각 화소와의 화소값의 차를 기초로 산출된 제1예측오차를 최소로 하는 예측블록을 상기 제1예측블록으로 결정하며,In the first predictive block generating step, a pixel value of each pixel constituting the encoding target block among the plurality of prediction blocks generated by a plurality of prediction modes for determining pixel values of each pixel constituting the prediction block. A prediction block that minimizes the first prediction error calculated based on the difference is determined as the first prediction block. 상기 제1예측블록의 생성정보는 상기 제1예측블록을 생성하는 예측 모드에 관한 정보인 것을 특징으로 하는 영상 부호화 방법.The generation information of the first prediction block is information on a prediction mode for generating the first prediction block. 제 7항 내지 제 9항 중 어느 한 항에 있어서,The method according to any one of claims 7 to 9, 상기 제2예측블록 생성단계는,The second prediction block generating step, 상기 재생블록을 구성하는 화소 중에서 상기 부호화 대상 블록과 인접한 화소들로 이루어진 템플릿 영역을 결정하는 템플릿 영역 결정단계;A template region determining step of determining a template region consisting of pixels adjacent to the encoding target block among pixels constituting the playback block; 상기 재생블록 상에서 상기 템플릿 영역을 구성하는 각 화소의 화소값과의 차를 기초로 산출된 제2예측오차를 최소로 하는 대응 템플릿 영역을 탐색하는 템플릿 매칭단계; 및A template matching step of searching for a corresponding template region which minimizes a second prediction error calculated based on a difference between pixel values of each pixel constituting the template region on the play block; And 상기 템플릿 영역과 상기 부호화 대상 블록 사이의 위치관계 및 상기 대응 템플릿 영역의 위치를 기초로 상기 제2예측블록을 결정하는 예측블록 결정단계;를 포함하며,And a prediction block determining step of determining the second prediction block based on the positional relationship between the template region and the encoding target block and the position of the corresponding template region. 상기 제2예측블록의 생성정보는 상기 템플릿 영역 및 상기 대응 템플릿 영역의 위치에 관한 정보인 것을 특징으로 하는 영상 부호화 방법.The generation information of the second prediction block is information about the location of the template region and the corresponding template region. 입력받은 데이터 스트림으로에 포함된 복호화 대상 블록, 제1부호화방법에 의해 생성된 제1예측블록의 생성정보, 제2부호화방법에 의해 생성된 제2예측블록의 생성정보 및 상기 제1예측블록과 상기 제2예측블록으로부터 최종 예측블록을 생성하기 위한 가중치를 복호화하는 복호화부;The decoding target block included in the received data stream, generation information of the first prediction block generated by the first encoding method, generation information of the second prediction block generated by the second encoding method, and the first prediction block; A decoder which decodes a weight for generating a final prediction block from the second prediction block; 상기 데이터 스트림 이전에 입력된 데이터 스트림을 복원하여 얻어진 복수의 재생블록 상에서 상기 제1예측블록의 생성정보에 기초하여 상기 복호화 대상 블록과 인접한 화소의 화소값에 의해 상기 복호화 대상 블록에 대응하는 제1예측블록을 생성하는 제1예측블록 생성부;A first corresponding to the decoding target block by pixel values of pixels adjacent to the decoding target block based on generation information of the first prediction block on the plurality of playback blocks obtained by reconstructing the data stream inputted before the data stream; A first prediction block generation unit generating a prediction block; 상기 제2예측블록의 생성정보에 기초하여 상기 재생블록 상에서 결정된, 상기 복호화 대상 블록과 인접한 화소들로 이루어진 템플릿 영역을 이용하여 상기 복호화 대상 블록에 대응하는 제2예측블록을 생성하는 제2예측블록 생성부;A second prediction block that generates a second prediction block corresponding to the decoding object block by using a template region formed of pixels adjacent to the decoding object block based on the generation information of the second prediction block. Generation unit; 상기 제1예측블록을 구성하는 각 화소의 화소값과 상기 제2예측블록을 구성하는 각 화소의 화소값에 각각 상기 가중치를 부여한 후 합산하여 상기 복호화 대상 블록에 대응하는 최종 예측블록을 생성하는 최종 예측블록 생성부; 및The final value of the final prediction block corresponding to the decoding target block is generated by adding the weight to the pixel value of each pixel constituting the first prediction block and the pixel value of each pixel constituting the second prediction block. Prediction block generation unit; And 상기 복호화 대상 블록이 복호화 및 역변환되어 생성된 차분블록과 상기 최종 예측블록을 합산하여 상기 재생블록을 생성하는 가산부;를 포함하는 것을 특징으로 하는 영상 복호화 장치.And an adder configured to add the difference block generated by decoding and inversely transforming the decoding object block and the final prediction block to generate the reproduction block. 제 12항에 있어서,The method of claim 12, 상기 가중치는 0에서 1사이의 값들 중 선택된 복수의 후보 가중치 중에서 상기 최종 예측블록과 상기 복호화 대상 블록의 각 화소의 화소값의 차를 기초로 산출된 예측오차를 최소화하는 후보 가중치인 것을 특징으로 하는 영상 복호화 장치.The weighting value is a candidate weight for minimizing a prediction error calculated based on a difference between pixel values of each pixel of the final prediction block and the decoding object block among a plurality of candidate weights selected from values between 0 and 1. Video decoding device. 입력받은 데이터 스트림으로에 포함된 복호화 대상 블록, 제1부호화방법에 의해 생성된 제1예측블록의 생성정보, 제2부호화방법에 의해 생성된 제2예측블록의 생성정보 및 상기 제1예측블록과 상기 제2예측블록으로부터 최종 예측블록을 생성하기 위한 가중치를 복호화하는 복호화단계;The decoding target block included in the received data stream, generation information of the first prediction block generated by the first encoding method, generation information of the second prediction block generated by the second encoding method, and the first prediction block; A decoding step of decoding a weight for generating a final prediction block from the second prediction block; 상기 데이터 스트림 이전에 입력된 데이터 스트림을 복원하여 얻어진 복수의 재생블록 상에서 상기 제1예측블록의 생성정보에 기초하여 상기 복호화 대상 블록과 인접한 화소의 화소값에 의해 상기 복호화 대상 블록에 대응하는 제1예측블록을 생성하는 제1예측블록 생성단계;A first corresponding to the decoding object block by pixel values of pixels adjacent to the decoding object block based on generation information of the first prediction block on the plurality of playback blocks obtained by reconstructing the data stream input before the data stream; Generating a first prediction block for generating a prediction block; 상기 제2예측블록의 생성정보에 기초하여 상기 재생블록 상에서 결정된, 상기 복호화 대상 블록과 인접한 화소들로 이루어진 템플릿 영역을 이용하여 상기 복호화 대상 블록에 대응하는 제2예측블록을 생성하는 제2예측블록 생성단계;A second prediction block that generates a second prediction block corresponding to the decoding object block by using a template region formed of pixels adjacent to the decoding object block based on the generation information of the second prediction block. Generating step; 상기 제1예측블록을 구성하는 각 화소의 화소값과 상기 제2예측블록을 구성하는 각 화소의 화소값에 각각 상기 가중치를 부여한 후 합산하여 상기 복호화 대상 블록에 대응하는 최종 예측블록을 생성하는 최종 예측블록 생성단계; 및The final value of the final prediction block corresponding to the decoding target block is generated by adding the weight to the pixel value of each pixel constituting the first prediction block and the pixel value of each pixel constituting the second prediction block. Prediction block generation step; And 상기 복호화 대상 블록이 복호화 및 역변환되어 생성된 차분블록과 상기 최종 예측블록을 합산하여 상기 재생블록을 생성하는 가산단계;를 포함하는 것을 특징으로 하는 영상 복호화 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.And adding the difference block generated by decoding and inversely transforming the decoding object block and the final prediction block to generate the reproduction block. The computer recording a program for executing the image decoding method on a computer, comprising: Recordable media that can be read by 제 14항에 있어서,15. The method of claim 14, 상기 가중치는 0에서 1사이의 값들 중 선택된 복수의 후보 가중치 중에서 상기 최종 예측블록과 상기 복호화 대상 블록의 각 화소의 화소값의 차를 기초로 산출된 예측오차를 최소화하는 후보 가중치인 것을 특징으로 하는 영상 복호화 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.The weighting value is a candidate weight for minimizing a prediction error calculated based on a difference between pixel values of each pixel of the final prediction block and the decoding object block among a plurality of candidate weights selected from values between 0 and 1. A computer-readable recording medium having recorded thereon a program for executing an image decoding method on a computer. 제 7항 내지 제 9항 중 어느 한 항에 기재된 영상 부호화 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for executing the video encoding method according to any one of claims 7 to 9.
KR1020090025020A 2009-03-24 2009-03-24 Apparatus and method for encoding image, apparatus for decoding image and recording medium storing program for executing method for decoding image in computer KR101043758B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090025020A KR101043758B1 (en) 2009-03-24 2009-03-24 Apparatus and method for encoding image, apparatus for decoding image and recording medium storing program for executing method for decoding image in computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090025020A KR101043758B1 (en) 2009-03-24 2009-03-24 Apparatus and method for encoding image, apparatus for decoding image and recording medium storing program for executing method for decoding image in computer

Publications (2)

Publication Number Publication Date
KR20100106811A true KR20100106811A (en) 2010-10-04
KR101043758B1 KR101043758B1 (en) 2011-06-22

Family

ID=43128831

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090025020A KR101043758B1 (en) 2009-03-24 2009-03-24 Apparatus and method for encoding image, apparatus for decoding image and recording medium storing program for executing method for decoding image in computer

Country Status (1)

Country Link
KR (1) KR101043758B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012121575A2 (en) * 2011-03-10 2012-09-13 한국전자통신연구원 Method and device for intra-prediction
WO2017204532A1 (en) * 2016-05-24 2017-11-30 한국전자통신연구원 Image encoding/decoding method and recording medium for same
WO2018101700A1 (en) * 2016-11-29 2018-06-07 한국전자통신연구원 Image encoding/decoding method and device, and recording medium having stored bitstream therein

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102163024B1 (en) 2020-05-25 2020-10-07 성유제 System managing for distribution container

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4213646B2 (en) 2003-12-26 2009-01-21 株式会社エヌ・ティ・ティ・ドコモ Image encoding device, image encoding method, image encoding program, image decoding device, image decoding method, and image decoding program.
KR101403341B1 (en) * 2007-03-28 2014-06-09 삼성전자주식회사 Method and apparatus for video encoding and decoding
JP2008252176A (en) 2007-03-29 2008-10-16 Toshiba Corp Motion picture encoder and encoding method

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012121575A2 (en) * 2011-03-10 2012-09-13 한국전자통신연구원 Method and device for intra-prediction
WO2012121575A3 (en) * 2011-03-10 2012-11-01 한국전자통신연구원 Method and device for intra-prediction
WO2017204532A1 (en) * 2016-05-24 2017-11-30 한국전자통신연구원 Image encoding/decoding method and recording medium for same
US10834404B2 (en) 2016-05-24 2020-11-10 Electronics And Telecommunications Research Institute Image encoding/decoding method and recording medium for same
US11206407B2 (en) 2016-05-24 2021-12-21 Electronics And Telecommunications Research Institute Image encoding/decoding method and recording medium for same
US11743470B2 (en) 2016-05-24 2023-08-29 Electronics And Telecommunications Research Institute Image encoding/decoding method and recording medium for same
WO2018101700A1 (en) * 2016-11-29 2018-06-07 한국전자통신연구원 Image encoding/decoding method and device, and recording medium having stored bitstream therein

Also Published As

Publication number Publication date
KR101043758B1 (en) 2011-06-22

Similar Documents

Publication Publication Date Title
KR102035565B1 (en) Video encoding/decoding method and apparatus using prediction based on in-loop filtering
KR100750145B1 (en) Method and apparatus for intra prediction of image
KR100739714B1 (en) Method and apparatus for intra prediction mode decision
JP4763422B2 (en) Intra prediction device
KR102070319B1 (en) Method of coefficient scan based on partition mode of prediction unit and apparatus using the same
KR101623124B1 (en) Apparatus and method for encoding video, apparatus and method for decoding video and directional intra-prediction method therefor
KR101365570B1 (en) Method and apparatus for encoding and decoding based on intra prediction
KR100727972B1 (en) Method and apparatus for intra prediction of video
JP7420982B2 (en) Video coding method and device based on selective conversion
KR20070090700A (en) Method of and apparatus for video intraprediction encoding/decoding
KR20090058954A (en) Video coding method and apparatus using side matching, and video decoding method and appartus thereof
KR101974952B1 (en) Methods of coding intra prediction mode using two candidate intra prediction modes and apparatuses using the same
US20100260263A1 (en) Image encoding apparatus, image encoding method, and computer program
KR20110073263A (en) Method and apparatus for encoding and decoding for intra prediction
KR101043758B1 (en) Apparatus and method for encoding image, apparatus for decoding image and recording medium storing program for executing method for decoding image in computer
JP2011166592A (en) Image encoding device, and image decoding device
KR20100044333A (en) Video encoding apparatus, and apparatus and method of 2 dimensional ordering transform for image signal, and recording medium therefor
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
KR101369161B1 (en) Prediction Direction Change Method and Apparatus and Video Encoding/Decoding Method and Apparatus
KR101436949B1 (en) Method and apparatus for encoding picture, and apparatus for processing picture
KR102069784B1 (en) Methods of coding intra prediction mode using two candidate intra prediction modes and apparatuses using the same
JP5533885B2 (en) Moving picture encoding apparatus and moving picture decoding apparatus
KR20200009110A (en) Methods of coding intra prediction mode using two candidate intra prediction modes and apparatuses using the same
KR20120126050A (en) Video encoding/decoding method and apparatus using prediction based on in-loop filtering

Legal Events

Date Code Title Description
A201 Request for examination
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: 20140304

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee