KR20110126075A - Method and apparatus for video encoding and decoding using extended block filtering - Google Patents

Method and apparatus for video encoding and decoding using extended block filtering Download PDF

Info

Publication number
KR20110126075A
KR20110126075A KR1020110045837A KR20110045837A KR20110126075A KR 20110126075 A KR20110126075 A KR 20110126075A KR 1020110045837 A KR1020110045837 A KR 1020110045837A KR 20110045837 A KR20110045837 A KR 20110045837A KR 20110126075 A KR20110126075 A KR 20110126075A
Authority
KR
South Korea
Prior art keywords
corresponding block
filter
pixel
block
extended corresponding
Prior art date
Application number
KR1020110045837A
Other languages
Korean (ko)
Other versions
KR101462959B1 (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 US13/697,960 priority Critical patent/US20130177081A1/en
Priority to MYPI2012004941A priority patent/MY157090A/en
Priority to EP11780861.8A priority patent/EP2571273A4/en
Priority to CN2011800346606A priority patent/CN103004200A/en
Priority to PCT/KR2011/003606 priority patent/WO2011142644A2/en
Publication of KR20110126075A publication Critical patent/KR20110126075A/en
Application granted granted Critical
Publication of KR101462959B1 publication Critical patent/KR101462959B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/439Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using cascaded computational arrangements for performing a single operation, e.g. filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation

Landscapes

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

Abstract

PURPOSE: A method and apparatus for performing video encoding and decoding using an extended block filtering are provided to create the corresponding block of the reference picture into an interpolated reference picture. CONSTITUTION: A block extension unit increase the size of the reference picture to a predetermined size(710). A first filtering part applies the first filter to the extended corresponding block(720). A second filtering part applies a predetermined second filter to the filtered expansion corresponding block(730). A motion prediction unit and a motion correction unit perform a motion estimation and compensation in a sub pixel unit based on the interpolated reference picture.

Description

확장 블록 필터링을 이용한 비디오 부호화, 복호화 방법 및 장치{Method and apparatus for video encoding and decoding using extended block filtering}Method and apparatus for video encoding and decoding using extended block filtering

본 발명은 움직임 예측 및 보상을 위해 참조 영상을 보간하는 보간 필터에 관한 것으로, 보다 상세하게는 참조 픽처의 대응 블록을 확장하여 무한 임펄스 응답 필터(Infinite Impulse Response:IIR) 필터를 적용하여 필터링을 수행한 다음, IIR 필터링된 확장 블록을 이용하여 서브 픽셀 단위로 보간(interpolation)을 수행하는 비디오 부호화 방법 및 장치, 그 복호화 방법 및 장치에 관한 것이다.The present invention relates to an interpolation filter for interpolating a reference image for motion prediction and compensation. More particularly, the present invention relates to an interpolation filter that extends a corresponding block of a reference picture to perform filtering by applying an infinite impulse response filter (IIR). Next, the present invention relates to a video encoding method and apparatus for performing interpolation on a subpixel basis using an IIR filtered extended block, and a decoding method and apparatus thereof.

MPEG-1, MPEG-2, MPEG-4, H.264/MPEG-4 AVC(Advanced Video Coding)와 같은 영상 압축 방식에서는 영상을 부호화하기 위해서 하나의 픽처를 매크로 블록으로 나눈다. 그리고, 인터 예측 및 인트라 예측에서 이용가능한 모든 부호화 모드에서 각각의 매크로 블록을 부호화한 다음, 매크로 블록의 부호화에 소요되는 비트율과 원 매크로 블록과 복호화된 매크로 블록과의 왜곡 정도에 따라서 부호화 모드를 하나 선택하여 매크로 블록을 부호화한다.In video compression schemes such as MPEG-1, MPEG-2, MPEG-4, and H.264 / MPEG-4 Advanced Video Coding (AVC), a picture is divided into macro blocks to encode an image. Each macroblock is encoded in all encoding modes available for inter prediction and intra prediction, and then one encoding mode is selected according to the bit rate required for encoding the macro block and the degree of distortion of the original macro block and the decoded macro block. Select to encode the macro block.

인터 예측은 현재 부호화되는 픽처의 전방 또는 후방에 위치한 적어도 하나의 참조 픽처를 이용하여 부호화되는 현재 블록과 유사한 참조 픽처의 영역을 검색하여 움직임 벡터를 생성하고, 생성된 움직임 벡터를 이용한 움직임 보상을 수행하여 현재 블록의 예측 블록을 생성하는 것을 말한다.Inter prediction generates a motion vector by searching an area of a reference picture similar to the current block encoded using at least one reference picture located in front of or behind the currently encoded picture, and performs motion compensation using the generated motion vector. To generate a prediction block of the current block.

움직임 보상은 예측의 정확성을 높이기 위해서 정수 픽셀 해상도보다 정밀한 서브 픽셀 해상도 단위로 수행된다. 예를 들어, 참조 픽처의 정수 픽셀 사이의 1/2 픽셀(half pel), 1/4 픽셀(quarter pel) 및 1/8 픽셀(one eighth pel) 등의 서브 픽셀을 생성하여 참조 픽처를 보간한 후, 보간된 참조 픽처를 이용하여 움직임 보상을 수행한다.Motion compensation is performed in sub-pixel resolution units more precise than integer pixel resolution to improve prediction accuracy. For example, a subpixel such as half pel, quarter pel, and one eighth pel between integer pixels of a reference picture is generated to interpolate the reference picture. Then, motion compensation is performed using the interpolated reference picture.

본 발명이 해결하고자 하는 기술적 과제는 움직임 보상에 이용되는 참조 픽처의 대응 블록을 확장 후 블록 기반 무한 임펄스 응답 필터링 및 유한 임펄스 응답 필터링을 적용하여 보간된 참조 픽처를 생성함으로써 비디오의 움직임 보상시 예측 효율을 향상시키는 비디오 부호화 방법 및 장치, 그 복호화 방법 및 장치를 제공하는 것이다.The technical problem to be solved by the present invention is to extend the corresponding block of the reference picture used for motion compensation and to generate interpolated reference pictures by applying block-based infinite impulse response filtering and finite impulse response filtering to predict the efficiency of motion compensation of video. To provide a video encoding method and apparatus, and a decoding method and apparatus.

또한, 본 발명이 이루고자 하는 기술적 과제는 무한 임펄스 응답을 갖는 필터를 참조 픽처의 소정 영역에 대해서만 적용함으로써 연산의 복잡도를 크게 증가시키지 않으면서 예측 효율을 향상시키는 비디오 부호화 방법 및 장치, 그 복호화 방법 및 장치를 제공하는 것이다.In addition, a technical problem of the present invention is to apply a filter having an infinite impulse response only to a predetermined region of a reference picture, a video encoding method and apparatus for improving prediction efficiency without greatly increasing the complexity of the operation, and a decoding method thereof To provide a device.

전술한 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 비디오 부호화 방법은 현재 블록의 움직임 보상에 이용되는 참조 픽처의 대응 블록을 소정 크기로 확장하여 확장된 대응 블록을 생성하는 단계; 상기 확장된 대응 블록에 소정의 제 1 필터를 적용하여 필터링된 확장 대응 블록을 생성하는 단계; 상기 필터링된 확장 대응 블록에 소정의 제 2 필터를 적용하여 서브 픽셀 단위로 보간을 수행하는 단계; 및 상기 서브 픽셀 단위로 보간된 참조 픽처를 이용하여 움직임 예측 및 보상을 수행하는 단계를 포함한다.According to an aspect of the present invention, there is provided a video encoding method comprising: generating an extended corresponding block by extending a corresponding block of a reference picture used for motion compensation of a current block to a predetermined size; Generating a filtered extended corresponding block by applying a predetermined first filter to the extended corresponding block; Performing interpolation on a sub-pixel basis by applying a second filter to the filtered extended corresponding block; And performing motion prediction and compensation using the reference picture interpolated in the sub-pixel units.

본 발명의 일 실시예에 따른 비디오 복호화 방법은 수신된 비트스트림으로부터 복호화되는 현재 블록의 움직임 벡터 정보를 추출하는 단계; 상기 움직임 벡터가 가리키는 참조 픽처의 대응 블록을 소정 크기로 확장하여 확장된 대응 블록을 생성하는 단계; 상기 확장된 대응 블록에 소정의 제 1 필터를 적용하여 필터링된 확장 대응 블록을 생성하는 단계; 상기 필터링된 확장 대응 블록에 소정의 제 2 필터를 적용하여 서브 픽셀 단위로 보간을 수행하는 단계; 및 상기 서브 픽셀 단위로 보간된 참조 픽처를 이용하여 움직임 보상을 수행하는 단계를 포함한다.A video decoding method according to an embodiment of the present invention comprises the steps of extracting motion vector information of a current block to be decoded from the received bitstream; Generating an extended corresponding block by extending a corresponding block of a reference picture indicated by the motion vector to a predetermined size; Generating a filtered extended corresponding block by applying a predetermined first filter to the extended corresponding block; Performing interpolation on a sub-pixel basis by applying a second filter to the filtered extended corresponding block; And performing motion compensation using the reference picture interpolated in the sub-pixel units.

본 발명의 일 실시예에 따른 비디오 부호화 장치는 현재 블록의 움직임 보상에 이용되는 참조 픽처의 대응 블록을 소정 크기로 확장하여 확장된 대응 블록을 생성하는 블록 확장부; 상기 확장된 대응 블록에 소정의 제 1 필터를 적용하여 필터링된 확장 대응 블록을 생성하는 제 1 필터링부; 상기 필터링된 확장 대응 블록에 소정의 제 2 필터를 적용하여 서브 픽셀 단위로 보간을 수행하는 제 2 필터링부; 및 상기 서브 픽셀 단위로 보간된 참조 픽처를 이용하여 움직임 예측 및 보상을 수행하는 움직임 예측 및 보상부를 포함한다.A video encoding apparatus according to an embodiment of the present invention includes a block extension unit for generating an extended corresponding block by extending a corresponding block of a reference picture used for motion compensation of a current block to a predetermined size; A first filtering unit generating a filtered extended corresponding block by applying a predetermined first filter to the extended corresponding block; A second filtering unit configured to perform interpolation on a subpixel basis by applying a predetermined second filter to the filtered extended corresponding block; And a motion prediction and compensation unit configured to perform motion prediction and compensation using the reference picture interpolated in the sub-pixel units.

본 발명의 일 실시예에 따른 비디오 복호화 장치는 수신된 비트스트림으로부터 복호화되는 현재 블록의 움직임 벡터 정보를 추출하는 엔트로피 복호화부; 상기 움직임 벡터가 가리키는 참조 픽처의 대응 블록을 소정 크기로 확장하여 확장된 대응 블록을 생성하는 블록 확장부; 상기 확장된 대응 블록에 소정의 제 1 필터를 적용하여 필터링된 확장 대응 블록을 생성하는 제 1 필터링부; 상기 필터링된 확장 대응 블록에 소정의 제 2 필터를 적용하여 서브 픽셀 단위로 보간을 수행하는 제 2 필터링부; 및 상기 서브 픽셀 단위로 보간된 참조 픽처를 이용하여 움직임 보상을 수행하는 움직임 보상부를 포함한다.An apparatus for decoding video according to an embodiment of the present invention includes an entropy decoding unit for extracting motion vector information of a current block to be decoded from a received bitstream; A block extender configured to expand the corresponding block of the reference picture indicated by the motion vector to a predetermined size to generate an extended corresponding block; A first filtering unit generating a filtered extended corresponding block by applying a predetermined first filter to the extended corresponding block; A second filtering unit configured to perform interpolation on a subpixel basis by applying a predetermined second filter to the filtered extended corresponding block; And a motion compensator for performing motion compensation using the reference picture interpolated in the sub-pixel units.

본 발명에 따르면, 비디오의 움직임 예측 및 보상시 압축 효율을 향상시킬 수 있다.According to the present invention, it is possible to improve compression efficiency in motion prediction and compensation of video.

도 1은 본 발명의 일 실시예에 따른 비디오 부호화 장치의 구성을 나타낸 블록도이다.
도 2는 도 1의 참조 픽처 보간부(170)의 구체적인 구성을 나타낸 블록도이다.
도 3은 본 발명의 일 실시예에 따른 확장 대응 블록의 생성 과정을 설명하기 위한 참조도이다.
도 4는 본 발명의 일 실시예에 따라서 행 방향으로 제 1 필터링부(220)에서 수행되는 필터링 동작을 설명하기 위한 참조도이다.
도 5는 본 발명의 일 실시예에 따라서 열 방향으로 제 1 필터링부(220)에서 수행되는 필터링 동작을 설명하기 위한 참조도이다.
도 6은 도 2의 제 2 필터링부(230)에서 수행되는 보간 과정을 설명하기 위한 참조도이다.
도 7은 본 발명의 일 실시예에 따른 비디오 부호화 방법을 나타낸 플로우 차트이다.
도 8은 본 발명의 일 실시예에 따른 비디오 복호화 장치를 나타낸 플로우 차트이다.
도 9는 본 발명의 일 실시예에 따른 비디오 복호화 방법을 나타낸 플로우 차트이다.
1 is a block diagram illustrating a configuration of a video encoding apparatus according to an embodiment of the present invention.
FIG. 2 is a block diagram illustrating a detailed configuration of the reference picture interpolation unit 170 of FIG. 1.
3 is a reference diagram for explaining a process of generating an extension corresponding block according to an embodiment of the present invention.
4 is a reference diagram for describing a filtering operation performed by the first filtering unit 220 in a row direction according to an embodiment of the present invention.
5 is a reference diagram for describing a filtering operation performed by the first filtering unit 220 in a column direction according to an embodiment of the present invention.
6 is a reference diagram for explaining an interpolation process performed by the second filtering unit 230 of FIG. 2.
7 is a flowchart illustrating a video encoding method according to an embodiment of the present invention.
8 is a flowchart illustrating a video decoding apparatus according to an embodiment of the present invention.
9 is a flowchart illustrating a video decoding method according to an embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 비디오 부호화 장치의 구성을 나타낸 블록도이다.1 is a block diagram illustrating a configuration of a video encoding apparatus according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시예에 따른 비디오 부호화 장치(100)는 움직임 예측부(110), 움직임 보상부(120), 감산부(130), 부호화부(140), 복원부(150), 저장부(160) 및 참조 픽처 보간부(170)를 포함한다.Referring to FIG. 1, the video encoding apparatus 100 according to an embodiment of the present invention may include a motion predictor 110, a motion compensator 120, a subtractor 130, an encoder 140, and a reconstructor ( 150, a storage unit 160, and a reference picture interpolator 170.

움직임 예측부(110)는 참조 픽처의 데이터를 이용하여 움직임 예측을 수행함으로써 현재 블록의 움직임 벡터를 생성한다. 구체적으로, 움직임 예측부(110)는 현재 픽처의 부호화되는 현재 블록과 가장 유사한 참조 픽처의 대응 블록을 검색하고 현재 블록과 대응 블록 사이의 위치 차이에 기반하여 움직임 벡터를 생성한다. 여기서, 움직임 예측부(110)는 최초 움직임 예측시에는 저장부(160)에 저장된 정수 픽셀 단위의 참조 픽처를 이용하여 정수 픽셀 단위의 움직임 벡터를 생성한다. 또한 움직임 예측부(110)는 참조 픽처로써 정수 픽셀 단위의 참조 픽처 뿐만이 아니라, 참조 픽처 보간부(170)에서 1/2 픽셀, 1/4 픽셀 등의 서브 픽셀 해상도로 보간된 참조 픽처를 이용하여 움직임 예측을 수행할 수 있다.The motion predictor 110 generates a motion vector of the current block by performing motion prediction using data of the reference picture. In detail, the motion predictor 110 searches for a corresponding block of a reference picture most similar to the current block to be encoded of the current picture, and generates a motion vector based on a position difference between the current block and the corresponding block. In this case, the motion predictor 110 generates a motion vector in units of integer pixels by using a reference picture in units of integer pixels stored in the storage unit 160 when first predicting motion. In addition, the motion predictor 110 may use not only a reference picture in an integer pixel unit as a reference picture but also a reference picture interpolated at a subpixel resolution such as 1/2 pixel, 1/4 pixel, etc. by the reference picture interpolator 170. Motion prediction can be performed.

참조 픽처 보간부(170)는 현재 블록의 정수 픽셀 단위 움직임 벡터에 기초하여 정수 픽셀 단위 움직임 벡터가 가리키는 참조 픽처의 대응 블록을 확장하여 확장된 대응 블록을 생성하고, 확장된 대응 블록에 무한 임펄스 응답(Infinite Impulse Response:IIR) 특성을 갖는 제 1 필터를 적용하여 필터링된 확장 대응 블록을 생성한다. 또한, 참조 픽처 보간부(170)는 필터링된 확장 대응 블록에 유한 임펄스 응답(Finite Impulse Response:FIR) 특성을 갖는 제 2 필터를 적용하여 서브 픽셀 해상도로 보간된 참조 픽처를 생성한다. 참조 픽처 보간부(170)의 구체적인 동작은 후술한다.The reference picture interpolator 170 expands the corresponding block of the reference picture indicated by the integer pixel motion vector based on the integer pixel motion vector of the current block to generate an extended corresponding block, and generates an infinite impulse response to the extended corresponding block. A filtered extended response block is generated by applying a first filter having an Infinite Impulse Response (IIR) characteristic. In addition, the reference picture interpolator 170 generates a reference picture interpolated at sub-pixel resolution by applying a second filter having a finite impulse response (FIR) characteristic to the filtered extended corresponding block. The detailed operation of the reference picture interpolator 170 will be described later.

움직임 보상부(120)는 보간된 참조 픽처로부터 현재 블록의 움직임 벡터가 가리키는 현재 블록의 움직임 보상값을 획득함으로써 현재 블록의 예측 블록을 생성한다. 만약 결정된 최적의 움직임 벡터가 정수 픽셀 단위인 경우, 움직임 보상부(120)는 보간된 참조 픽처를 이용하지 않고 보간되지 않은 참조 픽처를 이용하여 움직임 보상을 수행할 수 있다.The motion compensator 120 generates a prediction block of the current block by obtaining a motion compensation value of the current block indicated by the motion vector of the current block from the interpolated reference picture. If the determined optimal motion vector is an integer pixel unit, the motion compensator 120 may perform motion compensation using the non-interpolated reference picture without using the interpolated reference picture.

감산부(130)는 예측 블록과 원 입력 블록 사이의 차이값인 레지듀얼 블록을 계산한다. 부호화부(140)는 레지듀얼 블록을 변환, 양자화 및 엔트로피 부호화하여 비트스트림을 생성한다. 또한, 부호화부(140)는 생성된 비트스트림의 소정 영역에 현재 블록의 움직임 벡터 정보와 함께 참조 픽처 보간부(170)에서 확장된 대응 블록의 필터링을 이용하여 보간된 참조 픽처를 이용하여 움직임 보상이 수행되었는지 여부를 나타내는 소정의 인덱스 정보를 삽입할 수 있다. 즉, 종래 기술에 따라 참조 픽처를 보간할 때는 '0', 본 발명의 일 실시예에 따라서 확장된 대응 블록의 필터링을 이용하여 보간된 참조 픽처를 이용할 때는 '1'의 값을 갖는 1비트의 플래그를 비트스트림에 삽입함으로써, 복호화단에서 확장된 대응 블록의 필터링을 이용한 보간된 참조 픽처의 생성 여부를 결정할 수 있도록 한다. 이러한 인덱스 정보는 슬라이스 단위 및 시퀀스 단위로 설정되어 슬라이스 헤더 또는 시퀀스 헤더에 포함될 수 있다.The subtractor 130 calculates a residual block that is a difference value between the prediction block and the original input block. The encoder 140 generates a bitstream by transforming, quantizing, and entropy encoding the residual block. In addition, the encoder 140 compensates for the motion by using the interpolated reference picture by filtering the corresponding block extended by the reference picture interpolator 170 together with the motion vector information of the current block in a predetermined region of the generated bitstream. Predetermined index information indicating whether this has been performed may be inserted. That is, according to the prior art, when the reference picture is interpolated, '0' is used, and when the reference picture is interpolated using the filtering of the extended corresponding block according to an embodiment of the present invention, one bit having a value of '1' is used. By inserting a flag into the bitstream, it is possible to determine whether to generate an interpolated reference picture using filtering of the extended corresponding block at the decoding end. Such index information may be set in a slice unit and a sequence unit and included in a slice header or a sequence header.

도 2는 도 1의 참조 픽처 보간부(170)의 구체적인 구성을 나타낸 블록도이다.FIG. 2 is a block diagram illustrating a detailed configuration of the reference picture interpolation unit 170 of FIG. 1.

도 2를 참조하면, 참조 픽처 보간부(170)는 블록 확장부(210), 제 1 필터링부(220) 및 제 2 필터링부(230)를 포함한다.Referring to FIG. 2, the reference picture interpolator 170 includes a block extension 210, a first filtering unit 220, and a second filtering unit 230.

블록 확장부(210)는 움직임 예측부(110)에서 결정된 현재 블록의 움직임 벡터가 가리키는 참조 픽처의 대응 블록을 소정 크기로 확장하여 확장된 대응 블록을 생성한다. The block extension unit 210 generates an extended corresponding block by extending the corresponding block of the reference picture indicated by the motion vector of the current block determined by the motion predictor 110 to a predetermined size.

제 1 필터링부(220)는 확장 대응 블록에 소정의 제 1 필터를 적용하여 필터링된 확장 대응 블록을 생성한다. 제 2 필터링부(230)는 필터링된 확장 대응 블록에 소정의 제 2 필터를 적용하여 서브 픽셀 단위로 보간을 수행한다. The first filtering unit 220 generates a filtered extended corresponding block by applying a predetermined first filter to the extended corresponding block. The second filtering unit 230 performs interpolation in units of subpixels by applying a predetermined second filter to the filtered extended corresponding block.

도 3은 본 발명의 일 실시예에 따른 확장 대응 블록의 생성 과정을 설명하기 위한 참조도이다.3 is a reference diagram for explaining a process of generating an extension corresponding block according to an embodiment of the present invention.

도 2 및 도 3을 참조하면, 블록 확장부(210)는 현재 픽처(310)의 현재 블록(311)의 정수 픽셀 단위 움직임 벡터(MV_INT)를 이용하여 참조 픽처(320)의 대응 블록(321)을 결정할 수 있다. 즉, 움직임 예측부(110)에서 정수 픽셀 단위로 움직임 예측을 수행하여 정수 픽셀 단위의 움직임 벡터(MV_INT)가 결정되면, 블록 확장부(210)는 결정된 정수 픽셀 단위의 움직임 벡터(MV_INT)가 가리키는 참조 픽처(320)의 대응 블록(321)의 경계를 소정 픽셀 크기만큼 확장하여 확장 대응 블록(322)을 생성한다. 구체적으로, 현재 블록(311)의 크기를 XxY(X,Y은 정수)라고 할 때, 블록 확장부(210)는 참조 픽처(320)의 대응 블록(321)의 경계를 가로 방향으로 a 픽셀, 세로 방향으로 b 픽셀만큼 확장하여 (X+2a)x(Y+2b)의 크기를 갖는 확장 대응 블록(322)을 생성한다. 여기서, 블록 확장부(210)는 부호화되는 현재 블록(311)의 크기에 따라서 대응 블록(321)을 얼마만큼 확장할 것인지를 결정할 수 있다. 예를 들어, 현재 블록(311)의 크기에 비례하여 a, b의 값은 1, 3, 6의 값을 가질 수 있다. 즉, 현재 블록(311)이 16x16, 8x8, 4x4의 크기를 갖을 수 있다고 가정하면, 현재 블록(311)이 16x16인 경우 블록 확장부(210)는 대응 블록(321)의 상하좌우 경계를 각각 6 픽셀 단위만큼 확장하여 28x28 크기의 확장 대응 블록(322)을 생성하거나, 현재 블록(311)이 8x8인 경우 블록 확장부(210)는 대응 블록(321)의 상하좌우 경계를 각각 상하좌우로 3 픽셀 단위만큼 확장하여 14x14 크기의 확장 대응 블록(322)을 생성하거나, 현재 블록(311)이 4x4인 경우 블록 확장부(210)는 대응 블록(321) 상하좌우 경계를 각각 1 픽셀 단위만큼 확장하여 6x6 크기의 확장 대응 블록(322)을 생성할 수 있다.2 and 3, the block extension unit 210 corresponds to the corresponding block 321 of the reference picture 320 by using the integer pixel unit motion vector MV_INT of the current block 311 of the current picture 310. Can be determined. That is, when the motion prediction unit 110 performs the motion prediction in units of integer pixels and determines the motion vector MV_INT in units of integer pixels, the block extension 210 indicates the motion vector MV_INT in units of the determined integer pixels. The boundary of the corresponding block 321 of the reference picture 320 is extended by a predetermined pixel size to generate an extended corresponding block 322. Specifically, when the size of the current block 311 is XxY (where X and Y are integers), the block expansion unit 210 crosses the boundary of the corresponding block 321 of the reference picture 320 in a horizontal direction, Expanding by b pixels in the longitudinal direction, produces an extended correspondence block 322 having a size of (X + 2a) x (Y + 2b). Here, the block extension unit 210 may determine how much to extend the corresponding block 321 according to the size of the current block 311 to be encoded. For example, the values of a and b may have values of 1, 3, and 6 in proportion to the size of the current block 311. That is, assuming that the current block 311 may have sizes of 16x16, 8x8, and 4x4, when the current block 311 is 16x16, the block extension 210 may set the upper, lower, left, and right boundaries of the corresponding block 321 to 6, respectively. If the current block 311 is 8x8, the block extension unit 210 expands the upper, lower, left, and right boundaries of the corresponding block 321 by 3 pixels. If the current block 311 is 4x4, the block extension unit 210 expands the upper, lower, left, and right boundaries of the corresponding block 321 by 1 pixel unit, and expands it by 6x6. An expansion corresponding block 322 of size may be generated.

제 1 필터링부(210)는 확장 대응 블록(322)에 IIR 특성을 갖는 제 1 필터를 적용하여 필터링된 확장 대응 블록을 생성한다. IIR 필터는 입력 신호의 값과 출력 신호의 값이 재귀적(recursively)으로 적용되어 필터링이 수행되는 것으로 특성 함수인 임펄스 응답이 무한한 길이를 갖는 필터를 지칭한다. IIR 필터의 출력값을 계산하기 위해서 무한대의 계산을 실제로 수행하는 것은 불가능하기 때문에 일반적으로 영상 처리시에 프레임 단위로 IIR 필터가 적용된다. 하지만, 프레임 단위로 IIR 필터를 적용하는 경우 영상의 압축 효율을 향상시킬 수는 있지만 프레임 전체에 대해서 IIR 필터를 적용하여야 하므로 연산의 복잡도가 증가한다. 따라서, 본 발명의 일 실시예에서는 IIR 필터의 효율을 유지하면서 연산의 복잡도를 감소시키기 위하여 확장된 대응 블록을 기준으로 IIR 필터를 적용한다.The first filtering unit 210 generates the filtered extended corresponding block by applying the first filter having the IIR characteristic to the extended corresponding block 322. The IIR filter is a filter in which a value of an input signal and a value of an output signal are applied recursively, and refers to a filter having an infinite length of an impulse response as a characteristic function. Since it is impossible to actually perform an infinite calculation to calculate the output value of the IIR filter, an IIR filter is generally applied on a frame-by-frame basis in image processing. However, when the IIR filter is applied frame by frame, the compression efficiency of the image can be improved, but the complexity of the operation increases because the IIR filter must be applied to the entire frame. Accordingly, one embodiment of the present invention applies the IIR filter based on the extended corresponding block to reduce the complexity of the operation while maintaining the efficiency of the IIR filter.

일 실시예로써, 제 1 필터링부(210)는 z-영역에서 다음의 수학식 1과 같은 전달 함수(transfer function) 특성을 갖는 필터를 통해 구현될 수 있다.In an embodiment, the first filtering unit 210 may be implemented through a filter having a transfer function characteristic as shown in Equation 1 in the z-domain.

Figure pat00001
Figure pat00001

수학식 1에서 c1 및 z1은 소정의 상수값이다. 수학식 1을 재귀적 알고리즘을 이용하여 표현하면 다음의 수학식 2와 같다.In Equation 1, c1 and z1 are predetermined constant values. Equation 1 is expressed using the recursive algorithm as follows.

Figure pat00002
Figure pat00002

수학식 2에서 s(k)는 필터링되는 행방향 또는 열방향의 k번째 샘플값을 나타낸다. 수학식 2를 참조하면, c+(k)는 현재 필터링되는 k번째 샘플값 이전의 (k-1)번째의 결과값을 이용하는 causal한 필터이며, c-(k)는 현재 필터링되는 k번째 샘플값 이후의 (k+1)번째의 결과값을 이용하는 non-causal한 필터이다. 제 1 필터링부(220)는 수학식 2와 같은 재귀적 연산식을 이용하여, 확장 대응 블록(322)에 대해 행 방향 및 열 방향으로 1차원 필터링을 수행하여 필터링된 확장 대응 블록을 생성한다. 전술한 실시예에서는 제 1 필터링부(220)에서 수학식 1 및 2와 같은 전달 함수 특성을 갖는 IIR 필터를 이용하였으나, 제 1 필터링부(220)에서 수행되는 IIR 필터의 전달 함수 특성은 다른 재귀적 알고리즘을 통해 구현될 수 있음을 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 명세서의 내용을 통해 이해할 수 있을 것이다.In Equation 2, s (k) represents the k-th sample value in the row or column direction to be filtered. Referring to Equation 2, c + (k) is a causal filter using the (k-1) th result before the k th sample value currently filtered, and c- (k) is the k th sample value currently filtered. This is a non-causal filter that uses the (k + 1) th result. The first filtering unit 220 generates a filtered extended corresponding block by performing one-dimensional filtering on the extended corresponding block 322 in a row direction and a column direction by using a recursive equation such as Equation 2. In the above-described embodiment, the first filtering unit 220 uses an IIR filter having the transfer function characteristics as shown in Equations 1 and 2, but the transfer function characteristics of the IIR filter performed in the first filtering unit 220 are different recursion. It will be understood by those of ordinary skill in the art that the present invention can be implemented through an adaptive algorithm.

도 4는 본 발명의 일 실시예에 따라서 행 방향으로 제 1 필터링부(220)에서 수행되는 필터링 동작을 설명하기 위한 참조도이며, 도 5는 본 발명의 일 실시예에 따라서 열 방향으로 제 1 필터링부(220)에서 수행되는 필터링 동작을 설명하기 위한 참조도이다.4 is a reference diagram for describing a filtering operation performed by the first filtering unit 220 in a row direction according to an embodiment of the present invention, and FIG. 5 is a first diagram in a column direction according to an embodiment of the present invention. A reference diagram for describing a filtering operation performed by the filtering unit 220 is described.

도 4를 참조하면, 확장 대응 블록(400)의 크기를 NxM(N, M은 정수), z1은 소정의 상수, 확장 대응 블록의 소정 행(410)에 위치한 k번째(k는 0부터 N-1까지의 정수) 정수 픽셀의 픽셀값을 s1(k)라고 할 때, 제 1 필터링부(220)는 전술한 수학식 2에 기초한 다음의 수학식; c1(k)=s1(k)+z1*c1(k-1) 및 c2(k)=z1*(c2(k+1)-c1(k))를 이용하여 계산된 c2(k)의 값을 이용하여 s1(k) 값을 대체함으로써 확장 대응 블록에 대한 행 방향의 1차원 필터링을 수행한다. 제 1 필터링부(220)는 이와 같은 행 방향의 1차원 필터링 동작을 확장 대응 블록(400)에 구비된 모든 행에 대하여 수행한다.Referring to FIG. 4, the size of the extended correspondence block 400 is NxM (N, M is an integer), z1 is a predetermined constant, and the k th (k is 0 to N−) located in a predetermined row 410 of the extended corresponding block. Integer up to 1) When a pixel value of an integer pixel is s1 (k), the first filtering unit 220 includes the following equation based on Equation 2 described above; The value of c2 (k) calculated using c1 (k) = s1 (k) + z1 * c1 (k-1) and c2 (k) = z1 * (c2 (k + 1) -c1 (k)) By using s1 (k) by replacing the value to perform the one-dimensional filtering of the row direction for the extended corresponding block. The first filtering unit 220 performs the one-dimensional filtering operation in the row direction on all the rows of the extended correspondence block 400.

도 5를 참조하면, 행방향으로 필터링이 완료된 확장 대응 블록(500)의 소정 열(510)에 위치한 k번째(k는 0부터 M-1까지의 정수) 정수 픽셀의 픽셀값을 s2(k)라고 할 때, 제 1 필터링부(220)는 다음의 수학식; c3(k)=s2(k)+z1*c3(k-1) 및 c4(k)=z1*(c4(k+1)-c3(k))를 이용하여 계산된 c4(k)의 값을 이용하여 s2(k) 값을 대체함으로써 확장 대응 블록(500)에 대한 열 방향의 1차원 필터링을 수행한다. 이와 같이, 제 1 필터링부(220)는 행 방향으로 IIR 필터를 적용하여 필터링된 결과값을 다시 동일한 필터 특성을 갖는 IIR 필터를 적용하여 열 방향으로 필터링을 수행함으로써 최종적으로 필터링된 정수 픽셀을 갖는 확장 대응 블록을 출력한다..Referring to FIG. 5, the pixel value of the k th integer (k is an integer from 0 to M-1) located in a predetermined column 510 of the extended correspondence block 500 which is filtered in the row direction is s2 (k). In this case, the first filtering unit 220 includes the following equation; The value of c4 (k) calculated using c3 (k) = s2 (k) + z1 * c3 (k-1) and c4 (k) = z1 * (c4 (k + 1) -c3 (k)) 1D filtering in the column direction for the extended correspondence block 500 is performed by substituting the value of s2 (k) using. As described above, the first filtering unit 220 has an integer pixel that is finally filtered by applying an IIR filter in a row direction and filtering the result value again in the column direction by applying an IIR filter having the same filter characteristic. Outputs an extended correspondence block.

다시 도 2를 참조하면, 제 1 필터링부(220)에 의하여 확장된 대응 블록에 IIR 필터를 적용하여 확장된 대응 블록에 구비된 각 정수 픽셀에 대한 필터링이 완료되면, 제 2 필터링부(230)는 IIR 필터링된 정수 픽셀 값들을 이용하여 소정 탭 계수의 FIR 필터 및 평균치 필터를 이용하여 서브 픽셀 단위로 보간을 수행한다.Referring back to FIG. 2, when the filtering for each integer pixel included in the extended corresponding block is completed by applying the IIR filter to the corresponding block extended by the first filtering unit 220, the second filtering unit 230 is performed. Performs interpolation on a sub-pixel basis using an FIR filter and an average value filter of a predetermined tap coefficient using IIR filtered integer pixel values.

도 6은 도 2의 제 2 필터링부(230)에서 수행되는 보간 과정을 설명하기 위한 참조도이다. 도 6에서는 서브 픽셀 단위의 보간된 신호와 제 1 필터링부(220)에 의하여 필터링된 정수 픽셀들의 위치 관계를 나타낸다.6 is a reference diagram for explaining an interpolation process performed by the second filtering unit 230 of FIG. 2. 6 illustrates a positional relationship between the interpolated signal in sub-pixel units and the integer pixels filtered by the first filtering unit 220.

도 6을 참조하면, 알파벳 대문자(A 내지 U)는 제 1 필터링부(220)에 의하여 필터링된 정수 픽셀들을 나타낸다. 중간에 도시된 알파벳 소문자(a 내지 s)는 1/2 픽셀 정밀도, 1/4 픽셀 정밀도를 갖는 보간된 픽셀을 나타낸다.Referring to FIG. 6, uppercase letters A through U represent integer pixels filtered by the first filtering unit 220. Lowercase letters a through s shown in the middle represent interpolated pixels with 1/2 pixel precision and 1/4 pixel precision.

제 2 필터링부(230)는 제 1 필터링부(220)에 의하여 필터링된 정수 픽셀들에 소정 탭 계수를 갖는 FIR 필터를 적용하여 1/2 픽셀 정밀도의 예측 신호를 생성한다. 예를 들어, 제 2 필터링부(230)는 {(1, -5, 20, 20, -5, 1)/32}의 탭 계수를 갖는 6-탭 FIR 필터를 제 1 필터링부(220)에 의하여 필터링된 정수 픽셀들에 적용하여 1/2 픽셀 정밀도의 픽셀들을 보간하며, 2탭의 평균치 필터를 이용하여 1/4 픽셀 정밀도를 갖는 픽셀들을 보간한다. 일 예로, 제 1 필터링부(220)에 의하여 필터링된 정수 픽셀 E,F,G,H,I,J에 대해 제 2 필터링부(230)는 수평 방향 6탭 필터링을 적용하여 1/2 픽셀 정밀도를 갖는 1/2 픽셀 b의 값을 다음의 수학식;b=(E-5F+20G+20H-5I+J)/32을 이용하여 생성한다. 또한, 제 2 필터링부(230)는 수직 방향으로 6탭 필터링을 수행하여 두 개의 정수 픽셀의 수직 방향으로 위치한 1/2 픽셀을 생성한다. 예를 들어, 제 2 필터링부(230)는 1/2 픽셀 h를 다음의 수학식; h=(A-5C+20G+20M-5R+T)/32를 이용하여 생성한다. 제 2 필터링부(230)는 네 개의 정수 픽셀 사이에 위치한 1/2 픽셀은 6탭 필터링을 수평 및 수직 방향 모두 적용하여 생성한다. 예를 들어, 1/2 픽셀 j의 경우, 제 2 필터링부(230)는 먼저 1/2 픽셀 신호 aa, bb, b, j, s, gg, hh를 수평 방향 6 탭 필터링에 의하여 생성한 다음, 다시 수직 방향 6탭 필터링을 적용함으로써, 즉 다음의 수학식; j=(aa-5bb+20b+20s-5gg+hh)/32을 통해 1/2 픽셀 j를 생성한다. 또는 제 2 필터링부(230)는 먼저 수직 방향으로 필터링에 의해 1/2 픽셀들 cc, dd, h, m, ee, ff를 생성한 다음, 다음의 수학식; j=(cc-5dd+20h+20m-5ee+ff)/32와 같이 수평방향 필터링에 희애 1/2 픽셀 j를 생성할 수 있다.The second filtering unit 230 applies the FIR filter having a predetermined tap coefficient to the integer pixels filtered by the first filtering unit 220 to generate a prediction signal having 1/2 pixel precision. For example, the second filtering unit 230 transmits a 6-tap FIR filter having a tap coefficient of {(1, -5, 20, 20, -5, 1) / 32} to the first filtering unit 220. The interpolation is performed on the integer pixels filtered by the interpolation pixels, and the pixels having the 1/4 pixel precision are interpolated by using a 2-tap average filter. As an example, the second filtering unit 230 may apply horizontal 6-tap filtering to the integer pixels E, F, G, H, I, and J filtered by the first filtering unit 220, thereby providing 1/2 pixel precision. A value of 1/2 pixel b with is generated using the following equation; b = (E-5F + 20G + 20H-5I + J) / 32. In addition, the second filtering unit 230 performs 6-tap filtering in the vertical direction to generate 1/2 pixel positioned in the vertical direction of two integer pixels. For example, the second filtering unit 230 converts 1/2 pixel h into the following equation; generated using h = (A-5C + 20G + 20M-5R + T) / 32. The second filtering unit 230 generates 1/2 pixels positioned between four integer pixels by applying 6-tap filtering in both horizontal and vertical directions. For example, in the case of 1/2 pixel j, the second filtering unit 230 first generates 1/2 pixel signals aa, bb, b, j, s, gg and hh by horizontal 6-tap filtering. , Again by applying vertical six-tap filtering, i.e. Generate 1/2 pixel j via j = (aa-5bb + 20b + 20s-5gg + hh) / 32. Alternatively, the second filtering unit 230 first generates 1/2 pixels cc, dd, h, m, ee, and ff by filtering in the vertical direction, and then the following equation; We can generate a white 1/2 pixel j for horizontal filtering, such as j = (cc-5dd + 20h + 20m-5ee + ff) / 32.

제 2 필터링부(230)는 1/2 픽셀 정밀도의 서브 픽셀을 생성한 다음, 평균치 필터를 사용하여 1/4 픽셀을 생성할 수 있다. 1/4 픽셀 a, c, i, k는 주변에 인접한 정수 픽셀 또는 1/2 픽셀의 수평 방향 평균치 필터를 사용하여 생성된다. 예를 들어, 제 2 필터링부(230)는 다음의 수학식; a=(G+b)와 같은 평균치 필터를 이용하여 1/4 픽셀 a를 생성한다. 유사하게 1/4 픽셀 d, f, n, q는 주변에 인접한 정수 픽셀 또는 1/2 픽셀의 수직 방향 평균치 필터를 사용하여 생성된다. 예를 들어, 제 2 필터링부(230)는 다음의 수학식: f=(b+j)/2와 같은 평균치 필터를 이용하여 1/4 픽셀 f를 생성한다. 1/4 픽셀 e,g,p,r에 대해서는 대각선 방향의 평균치 필터를 이용할 수 있다. 예를 들어, 제 2 필터링부(230)는 다음의 수학식; r=(m+s)/2와 같은 평균치 필터를 이용하여 1/4 픽셀 r을 생성한다.The second filtering unit 230 may generate subpixels having a 1/2 pixel precision and then generate 1/4 pixels using an average filter. 1/4 pixels a, c, i, k are generated using a horizontal mean filter of integer pixels or 1/2 pixel adjacent to the periphery. For example, the second filtering unit 230 may be represented by the following equation; Generate a quarter pixel a using an average filter such as a = (G + b). Similarly, 1/4 pixels d, f, n, q are generated using a vertical mean filter of integer pixels or 1/2 pixel adjacent to the periphery. For example, the second filtering unit 230 generates 1/4 pixel f by using an average filter such as f = (b + j) / 2. A diagonal average filter may be used for 1/4 pixels e, g, p, and r. For example, the second filtering unit 230 may be represented by the following equation; Generate a 1/4 pixel r using an average filter such as r = (m + s) / 2.

전술한 바와 같이, 제 2 필터링부(230)에서 서브 픽셀 단위로 보간된 참조 픽처가 생성되면, 움직임 예측부(110)는 보간된 참조 픽처를 이용하여 현재 블록과 가장 유사한 참조 픽처 영역을 검색함으로써 서브 픽셀 정밀도를 갖는 움직임 벡터를 결정할 수 있다. 각 움직임 벡터에 따른 R-D(Rate-Distortion) 코스트를 비교하여 최종적인 움직임 벡터가 결정되면, 움직임 벡터의 값에 대한 정보와 확장된 대응 블록의 필터링을 이용하여 보간된 참조 픽처를 이용하여 움직임 보상이 수행되었는지 여부를 나타내는 소정의 인덱스 정보가 부호화 정보로써 부호화된 비트스트림에 삽입될 수 있다.As described above, when the reference picture interpolated in units of subpixels is generated by the second filtering unit 230, the motion predictor 110 searches for a reference picture area most similar to the current block by using the interpolated reference picture. A motion vector with sub pixel precision can be determined. When the final motion vector is determined by comparing rate-distortion (RD) costs according to each motion vector, motion compensation is performed using the interpolated reference picture by using information about the value of the motion vector and filtering of the extended corresponding block. Predetermined index information indicating whether or not the information has been performed may be inserted into the encoded bitstream as encoding information.

도 7은 본 발명의 일 실시예에 따른 비디오 부호화 방법을 나타낸 플로우 차트이다.7 is a flowchart illustrating a video encoding method according to an embodiment of the present invention.

단계 710에서, 블록 확장부(210)는 현재 블록의 움직임 보상에 이용되는 참조 픽처의 대응 블록을 소정 크기로 확장하여 확장된 대응 블록을 생성한다. 전술한 바와 같이, 블록 확장부(210)는 움직임 예측부(110)에서 결정된 정수 픽셀 단위의 움직임 벡터에 기초하여 참조 픽처의 대응 영역을 결정한 다음, 현재 블록의 크기에 비례하여 현재 블록의 대응 블록을 확장할 수 있다.In operation 710, the block extension unit 210 expands the corresponding block of the reference picture used for motion compensation of the current block to a predetermined size to generate an extended corresponding block. As described above, the block extension unit 210 determines the corresponding region of the reference picture based on the motion vector of the integer pixel unit determined by the motion predictor 110, and then corresponds to the corresponding block of the current block in proportion to the size of the current block. Can be extended.

단계 720에서, 제 1 필터링부(220)는 확장된 대응 블록에 소정의 제 1 필터를 적용하여 필터링된 확장 대응 블록을 생성한다. 전술한 바와 같이, 제 1 필터링부(220)는 확장된 대응 블록에 구비된 각 정수 픽셀을 기초로 IIR 필터를 적용하여 필터링을 수행함으로써 변경된 픽셀값을 갖는 확장 대응 블록을 출력한다.In operation 720, the first filtering unit 220 generates a filtered extended corresponding block by applying a predetermined first filter to the extended corresponding block. As described above, the first filtering unit 220 outputs an extended corresponding block having a changed pixel value by performing filtering by applying an IIR filter based on each integer pixel included in the extended corresponding block.

단계 730에서, 제 2 필터링부(230)는 필터링된 확장 대응 블록에 소정의 제 2 필터를 적용하여 서브 픽셀 단위로 보간을 수행한다. 전술한 바와 같이, 제 2 필터링부(230)는 제 1 필터링부(220)에서 필터링된 확장 대응 블록의 정수 픽셀들을 기초로 하여, 소정 탭 계수를 갖는 FIR 필터 및 평균치 필터를 적용하여 1/2 픽셀 또는 1/4 픽셀 정밀도를 갖는 서브 픽셀값을 생성함으로써 보간된 참조 픽처를 생성한다.In operation 730, the second filtering unit 230 performs interpolation in units of subpixels by applying a predetermined second filter to the filtered extended corresponding block. As described above, the second filtering unit 230 applies a FIR filter and an average value filter having a predetermined tap coefficient based on integer pixels of the extended correspondence block filtered by the first filtering unit 220 to be 1/2. An interpolated reference picture is generated by generating subpixel values with pixel or quarter pixel precision.

단계 740에서, 움직임 예측부(110) 및 움직임 보상부(120)는 보간된 참조 픽처에 기초하여 서브 픽셀 단위로 움직임 예측 및 보상을 수행한다.In operation 740, the motion predictor 110 and the motion compensator 120 perform motion prediction and compensation on a sub-pixel basis based on the interpolated reference pictures.

도 8은 본 발명의 일 실시예에 따른 비디오 복호화 장치를 나타낸 플로우 차트이다.8 is a flowchart illustrating a video decoding apparatus according to an embodiment of the present invention.

도 8을 참조하면, 본 발명의 일 실시예에 따른 비디오 복호화 장치(800)는 엔트로피 디코더(810), 재정렬부(815), 역양자화부(820), 역변환부(825), 가산부(830), 참조 픽처 보간부(835), 움직임 보상부(840) 및 인트라 예측부(845)를 포함한다.Referring to FIG. 8, the video decoding apparatus 800 according to an embodiment of the present invention includes an entropy decoder 810, a reordering unit 815, an inverse quantization unit 820, an inverse transform unit 825, and an adder 830. ), A reference picture interpolator 835, a motion compensator 840, and an intra predictor 845.

엔트로피 디코더(810)는 압축된 비트스트림을 수신하여 엔트로피 복호화를 수행하여 양자화된 계수를 생성하는 한편 복호화되는 현재 블록의 움직임 벡터 정보 및 본 발명의 일 실시예에 따른 확장된 대응 블록의 필터링을 이용하여 보간된 참조 픽처를 이용하여 움직임 보상이 수행되었는지 여부를 나타내는 소정의 인덱스 정보 등을 추출한다. 재정렬부(815)는 양자화된 계수를 재정렬하며, 역양자화부(820) 및 역변환부(825)는 양자화된 계수에 대한 역양자화 및 역변환을 수행하여 레지듀얼을 복원한다.The entropy decoder 810 receives the compressed bitstream to perform entropy decoding to generate quantized coefficients, while using motion vector information of the current block to be decoded and filtering of the extended corresponding block according to an embodiment of the present invention. By using the interpolated reference picture, predetermined index information indicating whether motion compensation is performed or the like is extracted. The reordering unit 815 reorders the quantized coefficients, and the inverse quantization unit 820 and the inverse transform unit 825 restore the residual by performing inverse quantization and inverse transformation on the quantized coefficients.

참조 픽처 보간부(835)는 전술한 도 1 및 도 2의 참조 픽처 보간부(170, 200)과 유사하게 복호화되는 현재 블록의 움직임 보상을 위한 참조 픽처를 보간한다. 구체적으로, 현재 블록의 움직임 벡터가 정수 픽셀 단위로 구성된 경우에는 별도의 보간 과정 없이 이전에 복원된 참조 픽처를 이용할 수 있으므로 참조 픽처 보간부(170)는 보간을 수행하지 않는다. 그러나, 현재 블록의 움직임 벡터가 1/2 픽셀 또는 1/4 픽셀과 같이 서브 픽셀 단위의 움직임을 갖으면서, 소정의 인덱스가 확장된 대응 블록의 필터링을 이용하여 보간된 참조 픽처를 이용하여 움직임 보상이 수행된 것을 나타내는 경우, 먼저 참조 픽처 보간부(835)는 현재 블록의 움직임 벡터의 정수 픽셀 단위 성분을 이용하여 참조 픽처의 대응 영역을 결정한다. 예를 들어, 현재 블록의 움직임 벡터가 (4.25, 0.75)인 경우, 참조 픽처 보간부(835)는 (4,0)인 정수 픽셀 단위 움직임 벡터를 이용하여 참조 픽처의 대응 영역을 결정한다. 그리고, 참조 픽처 보간부(835)는 현재 블록의 움직임 보상에 이용되는 참조 픽처의 대응 블록을 소정 크기로 확장하여 확장된 대응 블록을 생성한다. 그리고, 전술한 도 2의 참조 픽처 보간부(200)와 유사하게, 복호화 장치(800)의 참조 픽처 보간부(835)는 확장된 대응 블록에 IIR 필터를 적용하여 필터링된 확장 대응 블록을 생성한 다음, 현재 블록이 갖는 서브 픽셀 해상도에 따라서 소정 탭 계수를 갖는 FIR 필터 및 평균치 필터를 IIR 필터링된 확장 대응 블록에 적용하여 서브 픽셀 단위로 보간을 수행한다. The reference picture interpolator 835 interpolates the reference picture for motion compensation of the current block, which is decoded similarly to the reference picture interpolators 170 and 200 described above with reference to FIGS. 1 and 2. In detail, when the motion vector of the current block is configured by an integer pixel unit, the reference picture interpolation unit 170 does not perform interpolation because the previously reconstructed reference picture may be used without any extra interpolation process. However, while the motion vector of the current block has motion in sub-pixel units such as 1/2 pixel or 1/4 pixel, motion compensation is performed by using an interpolated reference picture using filtering of a corresponding block in which a predetermined index is extended. In this case, the reference picture interpolator 835 first determines the corresponding region of the reference picture by using the integer pixel unit component of the motion vector of the current block. For example, when the motion vector of the current block is (4.25, 0.75), the reference picture interpolator 835 determines a corresponding region of the reference picture by using an integer pixel unit motion vector of (4,0). The reference picture interpolator 835 expands the corresponding block of the reference picture used for motion compensation of the current block to a predetermined size to generate an extended corresponding block. In addition, similar to the reference picture interpolator 200 of FIG. 2, the reference picture interpolator 835 of the decoding apparatus 800 generates an filtered extended corresponding block by applying an IIR filter to the extended corresponding block. Next, interpolation is performed in units of subpixels by applying an FIR filter and an average value filter having a predetermined tap coefficient to the IIR filtered extended corresponding block according to the subpixel resolution of the current block.

움직임 보상부(840)는 서브 픽셀 단위로 보간된 참조 픽처를 이용하여 움직임 보상을 수행한다. 가산부(830)는 현재 블록의 움직임 보상값과 복원된 레지듀얼을 더하여 현재 블록을 복원한다. 현재 블록이 인트라 예측된 경우에는 인트라 예측부(845)를 통해 예측된 예측 블록과 복원된 레지듀얼이 더하여져서 현재 블록이 복원된다.The motion compensator 840 performs motion compensation by using the interpolated reference picture in subpixel units. The adder 830 restores the current block by adding the motion compensation value of the current block and the restored residual. If the current block is intra predicted, the predicted block predicted by the intra predictor 845 and the reconstructed residual are added to reconstruct the current block.

도 9는 본 발명의 일 실시예에 따른 비디오 복호화 방법을 나타낸 플로우 차트이다.9 is a flowchart illustrating a video decoding method according to an embodiment of the present invention.

단계 910에서, 엔트로피 디코더(810)은 수신된 비트스트림으로부터 복호화되는 현재 블록의 움직임 벡터 정보를 추출한다. 움직임 벡터 정보는 복호화되는 현재 블록의 움직임 벡터값 및 확장된 대응 블록의 필터링을 이용하여 보간된 참조 픽처를 이용하여 움직임 보상 수행 여부를 나타내는 소정의 인덱스 정보가 포함될 수 있다.In step 910, the entropy decoder 810 extracts motion vector information of the current block to be decoded from the received bitstream. The motion vector information may include predetermined index information indicating whether to perform motion compensation by using the motion vector value of the current block to be decoded and the reference picture interpolated by filtering the extended corresponding block.

단계 920에서, 참조 픽처 보간부(835)는 움직임 벡터가 가리키는 참조 픽처의 대응 블록을 소정 크기로 확장하여 확장된 대응 블록을 생성한다. 전술한 바와 같이, 참조 픽처 보간부(835)는 정수 픽셀 단위의 움직임 벡터 성분을 이용하여 참조 픽처의 대응 영역을 결정할 수 있다.In operation 920, the reference picture interpolator 835 expands the corresponding block of the reference picture indicated by the motion vector to a predetermined size to generate an extended corresponding block. As described above, the reference picture interpolator 835 may determine a corresponding region of the reference picture by using a motion vector component of an integer pixel unit.

단계 930에서, 참조 픽처 보간부(835)는 확장된 대응 블록에 소정의 제 1 필터를 적용하여 필터링된 확장 대응 블록을 생성한다. 제 1 필터는 IIR 필터로써, 프레임 단위로 적용되는 것이 아니라, 전술한 바와 같이 확장된 대응 블록에 대하여 적용된다.In operation 930, the reference picture interpolator 835 generates a filtered extended corresponding block by applying a predetermined first filter to the extended corresponding block. The first filter is an IIR filter and is not applied on a frame basis but is applied to an extended corresponding block as described above.

단계 940에서, 참조 픽처 보간부(835)는 필터링된 확장 대응 블록에 소정의 제 2 필터를 적용하여 서브 픽셀 단위로 보간을 수행한다. 여기서, 제 2 필터는 FIR 필터로써 소정 탭 계수를 갖는 6 탭 필터, 4 탭 필터, 평균치 필터인 2 탭 필터 등일 수 있다.In operation 940, the reference picture interpolator 835 performs interpolation on a subpixel basis by applying a predetermined second filter to the filtered extended corresponding block. Here, the second filter may be a 6 tap filter having a predetermined tap coefficient, a 4 tap filter, a 2 tap filter which is an average value filter, and the like as the FIR filter.

단계 950에서, 움직임 보상부(840)는 서브 픽셀 단위로 보간된 참조 픽처를 이용하여 움직임 보상을 수행하여 현재 블록의 예측 블록을 생성한다.
In operation 950, the motion compensator 840 generates motion prediction blocks of the current block by performing motion compensation using the reference picture interpolated in sub-pixel units.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명이 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이와 균등하거나 또는 등가적인 변형 모두는 본 발명 사상의 범주에 속한다 할 것이다. 또한, 본 발명에 따른 시스템은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 포함된다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.As described above, although the present invention has been described by way of limited embodiments and drawings, the present invention is not limited to the above-described embodiments, which can be variously modified and modified by those skilled in the art to which the present invention pertains. Modifications are possible. Accordingly, the spirit of the invention should be understood only by the claims set forth below, and all equivalent or equivalent modifications will fall within the scope of the invention. In addition, the system according to the present invention can be embodied as computer readable codes on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of the recording medium include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device and the like. 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.

Claims (17)

비디오 부호화 방법에 있어서,
현재 블록의 움직임 보상에 이용되는 참조 픽처의 대응 블록을 소정 크기로 확장하여 확장된 대응 블록을 생성하는 단계;
상기 확장된 대응 블록에 소정의 제 1 필터를 적용하여 필터링된 확장 대응 블록을 생성하는 단계;
상기 필터링된 확장 대응 블록에 소정의 제 2 필터를 적용하여 서브 픽셀 단위로 보간을 수행하는 단계; 및
상기 서브 픽셀 단위로 보간된 참조 픽처를 이용하여 움직임 예측 및 보상을 수행하는 단계를 포함하는 것을 특징으로 하는 비디오 부호화 방법.
In the video encoding method,
Generating an extended corresponding block by extending a corresponding block of a reference picture used for motion compensation of a current block to a predetermined size;
Generating a filtered extended corresponding block by applying a predetermined first filter to the extended corresponding block;
Performing interpolation on a sub-pixel basis by applying a second filter to the filtered extended corresponding block; And
And performing motion prediction and compensation by using the reference picture interpolated in the sub-pixel units.
제 1항에 있어서,
상기 확장된 대응 블록을 생성하는 단계는
정수 픽셀 단위로 상기 현재 블록과 가장 유사한 참조 픽처의 대응 블록을 결정하는 단계; 및
상기 대응 블록의 상하좌우 경계를 소정 픽셀 크기만큼 확장하여 상기 확장 대응 블록을 생성하는 단계를 포함하는 것을 특징으로 하는 비디오 부호화 방법.
The method of claim 1,
Generating the extended corresponding block
Determining a corresponding block of a reference picture most similar to the current block in integer pixel units; And
And extending the upper, lower, left, and right boundaries of the corresponding block by a predetermined pixel size to generate the extended corresponding block.
제 1항에 있어서,
상기 제 1 필터는 무한 임펄스 응답(Infinite Impulse Response:IIR) 필터이며, 상기 제 2 필터는 유한 임펄스 응답(Finite Impulse Response:FIR) 필터인 것을 특징으로 하는 비디오 부호화 방법.
The method of claim 1,
The first filter is an infinite impulse response (IIR) filter, and the second filter is a finite impulse response (FIR) filter.
제 1항에 있어서,
상기 필터링된 확장 대응 블록을 생성하는 단계는
상기 확장 대응 블록에 행 방향으로 1차원의 제 1 필터를 적용하여 상기 확장 대응 블록에 포함된 정수 픽셀들의 픽셀값을 변경하는 단계; 및
상기 변경돤 정수 픽셀값을 갖는 확장 대응 블록에 열 방향으로 1차원의 제 1 필터를 적용하여 상기 확장 대응 블록에 포함된 정수 픽셀들의 픽셀값을 변경하는 단계를 포함하는 것을 특징으로 하는 비디오 부호화 방법.
The method of claim 1,
Generating the filtered extended corresponding block
Changing a pixel value of integer pixels included in the expansion corresponding block by applying a first filter of a one-dimensional direction to the expansion corresponding block in a row direction; And
And changing a pixel value of integer pixels included in the extended corresponding block by applying a first filter in a column direction to the extended corresponding block having the modified integer pixel value. .
제 1항에 있어서,
상기 필터링된 확장 대응 블록을 생성하는 단계는
상기 확장 대응 블록의 크기를 NxM(N, M은 정수), z1은 소정의 상수, 상기 확장 대응 블록의 소정 행에 위치한 k번째(k는 0부터 N-1까지의 정수) 정수 픽셀의 픽셀값을 s1(k)라고 할 때, 다음의 수학식; c1(k)=s1(k)+z1*c1(k-1) 및 c2(k)=z1*(c2(k+1)-c1(k))를 이용하여 계산된 c2(k)의 값을 이용하여 s1(k) 값을 대체함으로써 상기 확장 대응 블록에 대한 행 방향의 1차원 필터링을 수행하는 단계; 및
상기 행 방향으로 1차원 필터링된 확장 대응 블록의 소정 열에 위치한 k번째(k는 0부터 M-1까지의 정수) 정수 픽셀의 픽셀값을 s2(k)라고 할 때, 다음의 수학식; c3(k)=s2(k)+z1*c3(k-1) 및 c4(k)=z1*(c4(k+1)-c3(k))를 이용하여 계산된 c4(k)의 값을 이용하여 s2(k) 값을 대체함으로써 상기 확장 대응 블록에 대한 열 방향의 1차원 필터링을 수행하는 단계를 포함하는 것을 특징으로 하는 비디오 부호화 방법.
The method of claim 1,
Generating the filtered extended corresponding block
The size of the extended corresponding block is NxM (N, M is an integer), z1 is a predetermined constant, and the pixel value of the kth integer (k is an integer from 0 to N-1) located in a predetermined row of the extended corresponding block. When s1 (k), the following equation; The value of c2 (k) calculated using c1 (k) = s1 (k) + z1 * c1 (k-1) and c2 (k) = z1 * (c2 (k + 1) -c1 (k)) Performing one-dimensional filtering in the row direction for the extended corresponding block by substituting the value of s1 (k) using; And
When the pixel value of the kth integer pixel (k is an integer from 0 to M-1) located in a predetermined column of the one-dimensionally filtered extended corresponding block in the row direction is s2 (k), the following equation; The value of c4 (k) calculated using c3 (k) = s2 (k) + z1 * c3 (k-1) and c4 (k) = z1 * (c4 (k + 1) -c3 (k)) And performing one-dimensional filtering in the column direction on the extended corresponding block by substituting the value of s2 (k) using.
제 1항에 있어서,
상기 서브 픽셀 단위로 보간을 수행하는 단계는
보간하고자 하는 서브 픽셀을 중심으로 주변의 정수 픽셀들의 픽셀값들의 가중합을 이용하는 소정 탭 계수의 FIR 필터 및 평균치 필터를 이용하여 상기 서브 픽셀 단위로 보간을 수행하는 것을 특징으로 하는 비디오 부호화 방법.
The method of claim 1,
Performing interpolation in units of subpixels
And performing interpolation on a sub-pixel basis using an FIR filter and an average value filter of a predetermined tap coefficient using a weighted sum of pixel values of integer pixels around the sub pixel to be interpolated.
제 1항에 있어서,
상기 필터링된 확장 대응 블록을 이용한 움직임 예측 및 보상 여부를 나타내는 소정의 인덱스 정보를 부호화하는 단계를 더 포함하는 것을 특징으로 하는 비디오 부호화 방법.
The method of claim 1,
And encoding predetermined index information indicating whether to predict and compensate for the motion using the filtered extended corresponding block.
비디오 복호화 방법에 있어서,
수신된 비트스트림으로부터 복호화되는 현재 블록의 움직임 벡터 정보를 추출하는 단계;
상기 움직임 벡터가 가리키는 참조 픽처의 대응 블록을 소정 크기로 확장하여 확장된 대응 블록을 생성하는 단계;
상기 확장된 대응 블록에 소정의 제 1 필터를 적용하여 필터링된 확장 대응 블록을 생성하는 단계;
상기 필터링된 확장 대응 블록에 소정의 제 2 필터를 적용하여 서브 픽셀 단위로 보간을 수행하는 단계; 및
상기 서브 픽셀 단위로 보간된 참조 픽처를 이용하여 움직임 보상을 수행하는 단계를 포함하는 것을 특징으로 하는 비디오 복호화 방법.
In the video decoding method,
Extracting motion vector information of the current block to be decoded from the received bitstream;
Generating an extended corresponding block by extending a corresponding block of a reference picture indicated by the motion vector to a predetermined size;
Generating a filtered extended corresponding block by applying a predetermined first filter to the extended corresponding block;
Performing interpolation on a sub-pixel basis by applying a second filter to the filtered extended corresponding block; And
And performing motion compensation using the reference picture interpolated in the sub-pixel units.
제 8항에 있어서,
상기 확장된 대응 블록을 생성하는 단계는
상기 움직임 벡터의 정수 픽셀 단위의 성분을 이용하여 상기 현재 블록과 가장 유사한 참조 픽처의 대응 블록을 결정하는 단계; 및
상기 대응 블록의 상하좌우 경계를 소정 픽셀 크기만큼 확장하여 상기 확장 대응 블록을 생성하는 단계를 포함하는 것을 특징으로 하는 비디오 복호화 방법.
The method of claim 8,
Generating the extended corresponding block
Determining a corresponding block of a reference picture most similar to the current block by using an integer pixel component of the motion vector; And
And extending the upper, lower, left, and right boundaries of the corresponding block by a predetermined pixel size to generate the extended corresponding block.
제 8항에 있어서,
상기 제 1 필터는 무한 임펄스 응답(Infinite Impulse Response:IIR) 필터이며, 상기 제 2 필터는 유한 임펄스 응답(Finite Impulse Response:FIR) 필터인 것을 특징으로 하는 비디오 복호화 방법.
The method of claim 8,
The first filter is an infinite impulse response (IIR) filter, and the second filter is a finite impulse response (FIR) filter.
제 8항에 있어서,
상기 필터링된 확장 대응 블록을 생성하는 단계는
상기 확장 대응 블록에 행 방향으로 1차원의 제 1 필터를 적용하여 상기 확장 대응 블록에 포함된 정수 픽셀들의 픽셀값을 변경하는 단계; 및
상기 변경돤 정수 픽셀값을 갖는 확장 대응 블록에 열 방향으로 1차원의 제 1 필터를 적용하여 상기 확장 대응 블록에 포함된 정수 픽셀들의 픽셀값을 변경하는 단계를 포함하는 것을 특징으로 하는 비디오 복호화 방법.
The method of claim 8,
Generating the filtered extended corresponding block
Changing a pixel value of integer pixels included in the expansion corresponding block by applying a first filter of a one-dimensional direction to the expansion corresponding block in a row direction; And
And changing a pixel value of integer pixels included in the extension corresponding block by applying a first filter in a column direction to the expansion corresponding block having the modified integer pixel value. .
제 8항에 있어서,
상기 필터링된 확장 대응 블록을 생성하는 단계는
상기 확장 대응 블록의 크기를 NxM(N, M은 정수), z1은 소정의 상수, 상기 확장 대응 블록의 소정 행에 위치한 k번째(k는 0부터 N-1까지의 정수) 정수 픽셀의 픽셀값을 s1(k)라고 할 때, 다음의 수학식; c1(k)=s1(k)+z1*c1(k-1) 및 c2(k)=z1*(c2(k+1)-c1(k))를 이용하여 계산된 c2(k)의 값을 이용하여 s1(k) 값을 대체함으로써 상기 확장 대응 블록에 대한 행 방향의 1차원 필터링을 수행하는 단계; 및
상기 행 방향으로 1차원 필터링된 확장 대응 블록의 소정 열에 위치한 k번째(k는 0부터 M-1까지의 정수) 정수 픽셀의 픽셀값을 s2(k)라고 할 때, 다음의 수학식; c3(k)=s2(k)+z1*c3(k-1) 및 c4(k)=z1*(c4(k+1)-c3(k))를 이용하여 계산된 c4(k)의 값을 이용하여 s2(k) 값을 대체함으로써 상기 확장 대응 블록에 대한 열 방향의 1차원 필터링을 수행하는 단계를 포함하는 것을 특징으로 하는 비디오 복호화 방법.
The method of claim 8,
Generating the filtered extended corresponding block
The size of the extended corresponding block is NxM (N, M is an integer), z1 is a predetermined constant, and the pixel value of the kth integer (k is an integer from 0 to N-1) located in a predetermined row of the extended corresponding block. When s1 (k), the following equation; The value of c2 (k) calculated using c1 (k) = s1 (k) + z1 * c1 (k-1) and c2 (k) = z1 * (c2 (k + 1) -c1 (k)) Performing one-dimensional filtering in the row direction for the extended corresponding block by substituting the value of s1 (k) using; And
When the pixel value of the kth integer pixel (k is an integer from 0 to M-1) located in a predetermined column of the one-dimensionally filtered extended corresponding block in the row direction is s2 (k), the following equation; The value of c4 (k) calculated using c3 (k) = s2 (k) + z1 * c3 (k-1) and c4 (k) = z1 * (c4 (k + 1) -c3 (k)) And performing one-dimensional filtering in the column direction on the extended corresponding block by substituting the value of s2 (k) using.
제 8항에 있어서,
상기 서브 픽셀 단위로 보간을 수행하는 단계는
보간하고자 하는 서브 픽셀을 중심으로 주변의 정수 픽셀들의 픽셀값들의 가중합을 이용하는 소정 탭 계수의 FIR 필터 및 평균치 필터를 이용하여 상기 서브 픽셀 단위로 보간을 수행하는 것을 특징으로 하는 비디오 복호화 방법.
The method of claim 8,
Performing interpolation in units of subpixels
And performing interpolation in units of subpixels using an FIR filter and an average value filter having a predetermined tap coefficient using a weighted sum of pixel values of integer pixels around the subpixel to be interpolated.
비디오 부호화 장치에 있어서,
현재 블록의 움직임 보상에 이용되는 참조 픽처의 대응 블록을 소정 크기로 확장하여 확장된 대응 블록을 생성하는 블록 확장부;
상기 확장된 대응 블록에 소정의 제 1 필터를 적용하여 필터링된 확장 대응 블록을 생성하는 제 1 필터링부;
상기 필터링된 확장 대응 블록에 소정의 제 2 필터를 적용하여 서브 픽셀 단위로 보간을 수행하는 제 2 필터링부; 및
상기 서브 픽셀 단위로 보간된 참조 픽처를 이용하여 움직임 예측 및 보상을 수행하는 움직임 예측 및 보상부를 포함하는 것을 특징으로 하는 비디오 부호화 장치.
In the video encoding apparatus,
A block extension unit for generating an extended corresponding block by extending a corresponding block of a reference picture used for motion compensation of the current block to a predetermined size;
A first filtering unit generating a filtered extended corresponding block by applying a predetermined first filter to the extended corresponding block;
A second filtering unit configured to perform interpolation on a subpixel basis by applying a predetermined second filter to the filtered extended corresponding block; And
And a motion prediction and compensation unit configured to perform motion prediction and compensation by using the reference picture interpolated in the sub-pixel units.
비디오 복호화 장치에 있어서,
수신된 비트스트림으로부터 복호화되는 현재 블록의 움직임 벡터 정보를 추출하는 엔트로피 복호화부;
상기 움직임 벡터가 가리키는 참조 픽처의 대응 블록을 소정 크기로 확장하여 확장된 대응 블록을 생성하는 블록 확장부;
상기 확장된 대응 블록에 소정의 제 1 필터를 적용하여 필터링된 확장 대응 블록을 생성하는 제 1 필터링부;
상기 필터링된 확장 대응 블록에 소정의 제 2 필터를 적용하여 서브 픽셀 단위로 보간을 수행하는 제 2 필터링부; 및
상기 서브 픽셀 단위로 보간된 참조 픽처를 이용하여 움직임 보상을 수행하는 움직임 보상부를 포함하는 것을 특징으로 하는 비디오 복호화 장치.
In the video decoding apparatus,
An entropy decoding unit for extracting motion vector information of the current block to be decoded from the received bitstream;
A block extender configured to expand the corresponding block of the reference picture indicated by the motion vector to a predetermined size to generate an extended corresponding block;
A first filtering unit generating a filtered extended corresponding block by applying a predetermined first filter to the extended corresponding block;
A second filtering unit configured to perform interpolation on a subpixel basis by applying a predetermined second filter to the filtered extended corresponding block; And
And a motion compensator for performing motion compensation using the reference picture interpolated in the sub-pixel units.
제 1항 내지 제 7항 중 어느 하나의 비디오 부호화 방법을 구현하기 위한 프로그램이 수록된 컴퓨터로 판독가능한 기록 매체.A computer-readable recording medium containing a program for implementing the video encoding method of any one of claims 1 to 7. 제 8항 내지 제 13항 중 어느 하나의 비디오 복호화 방법을 구현하기 위한 프로그램이 수록된 컴퓨터로 판독가능한 기록 매체.A computer-readable recording medium containing a program for implementing the video decoding method according to any one of claims 8 to 13.
KR1020110045837A 2010-05-14 2011-05-16 Method and apparatus for video encoding and decoding using extended block filtering KR101462959B1 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US13/697,960 US20130177081A1 (en) 2010-05-14 2011-05-16 Method and apparatus for encoding and decoding video using expanded block filtering
MYPI2012004941A MY157090A (en) 2010-05-14 2011-05-16 Method for encoding and decoding video and apparatus for encoding and decoding video using expanded block filtering
EP11780861.8A EP2571273A4 (en) 2010-05-14 2011-05-16 Method for encoding and decoding video and apparatus for encoding and decoding video using expanded block filtering
CN2011800346606A CN103004200A (en) 2010-05-14 2011-05-16 Method for encoding and decoding video and apparatus for encoding and decoding video using expanded block filtering
PCT/KR2011/003606 WO2011142644A2 (en) 2010-05-14 2011-05-16 Method for encoding and decoding video and apparatus for encoding and decoding video using expanded block filtering

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US33464010P 2010-05-14 2010-05-14
US61/334,640 2010-05-14

Publications (2)

Publication Number Publication Date
KR20110126075A true KR20110126075A (en) 2011-11-22
KR101462959B1 KR101462959B1 (en) 2014-11-20

Family

ID=45395328

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110045837A KR101462959B1 (en) 2010-05-14 2011-05-16 Method and apparatus for video encoding and decoding using extended block filtering

Country Status (5)

Country Link
EP (1) EP2571273A4 (en)
KR (1) KR101462959B1 (en)
CN (1) CN103004200A (en)
MY (1) MY157090A (en)
WO (1) WO2011142644A2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103139562B (en) * 2011-11-30 2016-05-04 富士通株式会社 Method for estimating and device
CN115278230A (en) * 2015-11-11 2022-11-01 三星电子株式会社 Apparatus for decoding video and apparatus for encoding video
CN113196777B (en) * 2018-12-17 2024-04-19 北京字节跳动网络技术有限公司 Reference pixel padding for motion compensation
CN113785572B (en) * 2019-05-02 2022-12-16 北京字节跳动网络技术有限公司 Intra-frame video coding using multiple reference filters

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6005980A (en) * 1997-03-07 1999-12-21 General Instrument Corporation Motion estimation and compensation of video object planes for interlaced digital video
KR20050018948A (en) * 2002-07-09 2005-02-28 노키아 코포레이션 Method and system for selecting interpolation filter type in video coding
US8417066B2 (en) * 2004-03-04 2013-04-09 Broadcom Corporation Method and system for polyphase filtering by combining IIR and FIR filters and its applications in video scaling
EP1578137A2 (en) * 2004-03-17 2005-09-21 Matsushita Electric Industrial Co., Ltd. Moving picture coding apparatus with multistep interpolation process
JP2008516556A (en) * 2004-10-13 2008-05-15 トムソン ライセンシング Complexity scalable video coding / decoding method and apparatus
US8170107B2 (en) * 2008-03-06 2012-05-01 Lsi Corporation Flexible reduced bandwidth compressed video decoder
EP2559254B1 (en) * 2010-04-13 2019-01-02 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Interpolation filter in a hybrid video decoder and encoder

Also Published As

Publication number Publication date
EP2571273A4 (en) 2013-12-11
KR101462959B1 (en) 2014-11-20
WO2011142644A2 (en) 2011-11-17
EP2571273A2 (en) 2013-03-20
MY157090A (en) 2016-04-29
WO2011142644A3 (en) 2012-03-08
CN103004200A (en) 2013-03-27

Similar Documents

Publication Publication Date Title
KR101403343B1 (en) Method and apparatus for inter prediction encoding/decoding using sub-pixel motion estimation
RU2739499C1 (en) Method of decoding video for motion compensation
KR100723403B1 (en) A prediction image generating method and apparatus using using single coding mode among color components, and an image and video encoding/decoding method and apparatus using it
EP2157799A1 (en) Interpolation filter with local adaptation based on block edges in the reference frame
WO2010143583A1 (en) Image processing device and method
KR20110112176A (en) Method and apparatus for interpolation based on transform and inverse transform
JP2008507190A (en) Motion compensation method
TW202315408A (en) Block-based prediction
KR101700410B1 (en) Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes
US20130177081A1 (en) Method and apparatus for encoding and decoding video using expanded block filtering
KR101462959B1 (en) Method and apparatus for video encoding and decoding using extended block filtering
KR20140062519A (en) Video coding method and device, video decoding method and device, and programs
US11202082B2 (en) Image processing apparatus and method
KR101934840B1 (en) Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes
KR101700411B1 (en) Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes
Wu et al. Combined adaptive-fixed interpolation with multi-directional filters
KR20220136163A (en) Video Coding Method and Apparatus Using Deep Learning Based In-loop Filter for Inter Prediction

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee