KR20100011154A - Video encoding/decoding apparatus and pixel-based adaptive overlapped block motion compensation method and apparatus - Google Patents

Video encoding/decoding apparatus and pixel-based adaptive overlapped block motion compensation method and apparatus Download PDF

Info

Publication number
KR20100011154A
KR20100011154A KR1020080072246A KR20080072246A KR20100011154A KR 20100011154 A KR20100011154 A KR 20100011154A KR 1020080072246 A KR1020080072246 A KR 1020080072246A KR 20080072246 A KR20080072246 A KR 20080072246A KR 20100011154 A KR20100011154 A KR 20100011154A
Authority
KR
South Korea
Prior art keywords
block
pixel
motion compensation
value
unit
Prior art date
Application number
KR1020080072246A
Other languages
Korean (ko)
Other versions
KR101527150B1 (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 KR1020080072246A priority Critical patent/KR101527150B1/en
Publication of KR20100011154A publication Critical patent/KR20100011154A/en
Application granted granted Critical
Publication of KR101527150B1 publication Critical patent/KR101527150B1/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/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/513Processing of motion vectors
    • 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/124Quantisation
    • 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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding

Landscapes

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

Abstract

PURPOSE: A moving image encoder/decoding apparatus and the pixel-based OBMC apparatus thereof and method OBMC is proceed without the additional information of the pixel by pixel to 'the form which is applicable in the existing video compression process to the block oriented, and the block boundary unit and pixel by pixel. CONSTITUTION: The difference of the block which the difference output unit(212) is motion-compensated present, the pixel value between the movement compensation block is obtained. The standards residual pixel output unit(213) obtains the first residual pixel in which the absolute value of the pixel value most smalls and the second residual pixel in which the absolute value of the pixel value about pixels exceeding the standard value. The information recorder(214) stores the first and the second residual pixel, the big value to the first information. In case the absolute value of the inputted residual pixel as described above bigger than the value of the first information, the adaptation OBMC(overlapped block motion compensator) part(215) is adaptively proceed the nested block motion compensation and block motion compensation.

Description

동영상 부호화/복호화 장치 및 그를 위한 화소 기반 적응 중첩 블록 움직임 보상 장치 및 방법 {Video encoding/decoding apparatus and pixel-based adaptive overlapped block motion compensation method and apparatus}Video encoding / decoding apparatus and pixel-based adaptive overlapped block motion compensation method and apparatus for same

본 발명은 비디오 데이터의 압축/복원 기술에 관한 것으로서, 특히 중첩 블록 움직임 보상(OBMC: Overlapped Block Motion Compensation) 시 유발되는 흐림 효과(Blurring Artifact) 또는 과-평탄 문제(Oversmoothing Problem)를 해결하기 위한, 동영상 부호화/복호화 장치 및 그를 위한 화소 기반 적응 중첩 블록 움직임 보상 장치 및 방법에 관한 것이다.The present invention relates to a technique for compressing and restoring video data, and more particularly, to solve a blurring artifact or an oversmoothing problem caused by overlapped block motion compensation (OBMC). A video encoding / decoding apparatus and a pixel-based adaptive superimposed block motion compensation apparatus and method therefor.

일반적으로, 현존하는 대부분의 상용 비디오 압축 방식 및 그 장치에서는, 블록 움직임 추정/보상 (Block Motion Estimation/Compensation) 방식 및 그 장치를 사용함으로써, 자연 비디오에 존재하는 시-중복성을 효과적으로 제거하고 있다. 이러한 블록 움직임 추정/보상 방식은, 하나의 블록에 포함된 모든 화소들이 기본적으로 같은 움직임을 가진다는 가정에 기반을 두고, 부호화 수행 대상인 현재 영상의 각 블록 화소들을 이전에 압축되어 전송 된 영상(들)을 이용하여 예측/복원 한다. 이러한 블록 움직임 보상 방식은, 간단하지만 능률적인 그 기본 가정에 힘입어, 부호화해 전송해야 할 움직임 모수 (Motion Parameter)의 수가 적고, 따라서 비디오 데이터의 압축 효율 향상에 크게 기여하고 있다. 하지만, 기본 모델에 부합하지 않는 블록 내 일부 화소들(일반적으로 블록 경계부의 화소들)의 부적합성에 의해 블록 현상(Blocking Artifact)을 유발하는데, 여기서 블록 현상이란 움직임 추정/복원의 단위인 각 블록의 경계에서 격자 모양의 부자연스런 인위적 부호화 오류가 관찰되는 것을 의미한다. 이와 같은 블록 현상을 해결하기 위해 다양한 종래 기술들이 제시되었는데, 중첩 블록 움직임 복원(Overlapped Block Motion Compensation)은 그러한 종래 기술의 한 범주이다.In general, most existing commercial video compression schemes and apparatuses use the Block Motion Estimation / Compensation scheme and apparatuses to effectively remove time-duplication present in natural video. This block motion estimation / compensation method is based on the assumption that all pixels included in one block basically have the same motion, and the image (s) previously compressed by each block pixel of the current image to be encoded are transmitted. ) To predict / restore. Such a block motion compensation method is based on the simple but efficient basic assumption, and has a small number of motion parameters to be coded and transmitted, thus contributing to the improvement of the compression efficiency of video data. However, blocking artifacts are caused by the incompatibility of some pixels in the block (generally the pixels at the block boundary) that do not conform to the basic model, where the block phenomenon is the block of motion estimation / reconstruction unit of each block. This means that a grid-like unnatural artificial coding error is observed at the boundary. Various prior arts have been proposed to solve such a block phenomenon, and Overlapped Block Motion Compensation is one category of such prior art.

중첩 블록 움직임 복원 기법은, 각 블록에 움직임 복원을 수행할 시, 주변 블록들의 움직임에 의한 현 위치에서의 복원 화소들을 현재 블록의 복원 화소들과 가중 합하여 움직임 복원을 수행하는 방식으로, 주변 블록들의 움직임을 현재 블록의 움직임 복원에 반영함으로써 블록 경계면의 움직임 복원 오차를 크게 줄여줄 수 있는 능률적 기법이다. 하지만, 인접한 블록의 움직임이 현재 블록과 큰 차이를 가지는 경우, 혹은 인접한 두 블록 중 한 블록만 윤곽선 정보를 포함하고 있는 경우, 중첩 움직임 복원 방식에 의한 움직임 복원은 기존의 블록 움직임 복원에 비해 더 열화 된 결과를 나타내거나, 블록의 윤곽선 정보를 흐릿하게 만드는 흐림 효과(Blurring Artifact)를 유발하는 것으로 알려져 있다. 이러한 현상은 때로는 과-평탄 문제(Oversmoothing Problem)라 불리는데, 블록 움직임 추정 방식의 기본 가정이 잘 만족되어 비교적 올바르게 예측된 블록 경계면의 화소 값이 중첩 블록 움직임 복원에 의해 오차가 큰 주변 블록의 화소와 가중 합 됨으로써 발생된다. 일반적으로, 인접한 두 블록의 움직임이 큰 차이를 보이게 되는 것은 각 블록에 속하는 대부분의 화소들이 가지는 실제 움직임이 서로 다르기 때문인데, 이렇게 화소들의 실제 움직임에 불연속이 나타날 수 있는 것은 이들 각 블록에 속하는 화소들이 영상 내 상이한 물체에 속하게 되며, 각 물체의 움직임이 서로 다른 경우가 나타나기 때문이다. 따라서 이러한 과-평탄 문제는 일반적으로 영상 내에 존재하는 물체의 윤곽선 부분에서 발생하게 되고, 이러한 윤곽선 정보는 시각적으로 더욱 중요한 영상 정보에 해당되기 때문에 과-평탄 문제를 해결하는 것은 비디오 데이터의 압축 성능을 더욱 향상시키고, 보다 우수한 화질의 복원 영상을 얻는데 매우 중요한 일이라 할 수 있다.The overlapping block motion recovery technique performs a motion recovery by weighting the reconstructed pixels at the current position due to the movement of the neighboring blocks with the reconstructed pixels of the current block when performing the motion reconstruction on each block. It is an efficient technique that can greatly reduce the motion restoration error of the block boundary by reflecting the motion to the motion restoration of the current block. However, when the motion of the adjacent block has a large difference from the current block, or when only one block of two adjacent blocks includes contour information, the motion recovery by the overlapped motion recovery method is more degraded than the existing block motion recovery. It is known to cause a blurring effect (Blurring Artifact) to show the result or blur the outline information of the block. This phenomenon is sometimes referred to as the Oversmoothing Problem. The basic assumptions of the block motion estimation method are well satisfied, so that the pixel values of the block boundary that are relatively correctly predicted are compared with those of the neighboring block that has a large error due to the overlapping block motion reconstruction. It is caused by weighted sum. In general, the difference between two adjacent blocks shows a big difference because the actual movement of most pixels of each block is different from each other, and the discontinuity may appear in the actual movement of the pixels. This is because they belong to different objects in the image, and the movement of each object is different. Therefore, the over-flat problem generally occurs in the contour portion of an object existing in the image, and since the contour information corresponds to visually more important image information, solving the over-flat problem can reduce the compression performance of the video data. It is very important to further improve and obtain a reconstructed image of better image quality.

이와 같은 과-평탄 문제를 해결하기 위하여 다양한 기법들이 종래 기술의 형태로 존재하는데, 이들 대부분은 각 블록의 움직임 복원에 중첩 블록 움직임 보상과 기존의 블록 움직임 보상을 적응적으로 선택하여 적용하는 방식들이다. Ji Zhongwei, Jiang Wenjun , and Zhu Weile("Wavelet-based video coding using adaptive overlapped block motion compensation", in Proc. ICCCS'02, 29 June - 1 July, 2002, vol.2, pp.1090-1093)은 부호화를 수행할 때 각 블록에 중첩 블록 움직임 보상과 블록 움직임 보상을 모두 수행해 본 후, 각 방식의 평균 제곱 에러(Mean-Squared-Error)를 비교하여, 그 값이 더 적은 방식을 그 블록의 움직임 보상 방식으로 결정하도록 하였다. 이 기법은 언제나 움직임 보상의 오차가 더 적은 방법으로 시-처리를 수행함으로써 개선된 움직임 복원 성능을 얻을 수 있었지만, 부호기에서의 선택 기준인 각 방식의 평균 제곱 에러를 복호기에서는 재현할 수 없기 때문에 각 블록이 어떤 방식으로 움직임 복원 되어야 하는지를 부가 정보의 형태로 전송해야 하는 문제를 가지고 있다.In order to solve such over-flat problem, various techniques exist in the form of the prior art, most of which are methods of adaptively selecting and applying overlapping block motion compensation and conventional block motion compensation to motion recovery of each block. . Ji Zhongwei, Jiang Wenjun , and Zhu Weile ("Wavelet-based video coding using adaptive overlapped block motion compensation", in Proc. ICCCS'02, 29 June-1 July, 2002, vol.2, pp.1090-1093) After performing both block motion compensation and block motion compensation, the mean-squared-error of each method is compared, and the method having the smaller value is determined as the motion compensation method of the block. This technique has always achieved improved motion reconstruction performance by performing time-processing in a method with less error in motion compensation, but the average square error of each method, which is the selection criterion in the encoder, cannot be reproduced by the decoder. There is a problem in that the block should be transmitted in the form of additional information on how the motion should be restored.

이와 같은 부가 정보 전송에 따른 압축 비트율 증가에 대한 문제를 해결하면서, 적응적으로 중첩 블록 움직임 보상을 수행할 수 있는 다양한 형태의 종래 기술들이 존재하는데, 우선, Tien - ying Kuo and C.-C. Jay Kuo("A hybrid BMC/OBMC motion compensation scheme", in Proc. ICIP'97, 26-29 Oct. 1997, vol.2, pp.795-798)는 이전에 복호된 2장의 영상으로부터 차이 영상(Displaced Frame Difference)을 구해, 이를 기반으로 움직임 보상 방식을 전환하는 적응 기법을 제안하였다. 움직임 보상을 수행할 현재 블록과 같은 위치의 차이 영상 블록이, 특정 문턱치 (Threshold)를 넘는 화소를 많이 가지는 경우에 한해서만 중첩 블록 움직임 보상을 수행하도록 함으로써 부가 정보 없이 복호기에서 적응적으로 블록 움직임 보상과 중첩 블록 움직임 보상을 선택할 수 있도록 한 것이다. 이와 유사하게, 다른 여러 종래 기술들에서도 각 기술마다의 독창적인 선택 기준에 따라, 별도의 부가 정보 없이 각 블록의 움직임 보상 방식을 선택할 수 있도록 하였는데, 이영수("엠펙4 데코딩 시의 동작화면 보상 장치", 대한민국 특허, 제 10-280498-0000, 2000년 11월 10일)는 전송되어 복호된 DCT(Discrete Cosine Transform) 계수의 고대역 주파수 에너지 값을 기준으로, Sung - hee Lee and Bong - soo Hur("Apparatus to provide block-based motion compensation and method thereof", US Patent, PN US2004/0252896, Dec. 16, 2004)와 Seung Hwan Kim , Dong - il Chang , Choong Woong Lee, and Sang Uk Lee("Complexity reduction method for overlapped block motion compensation based on spatio-temporal correlation", in Proc. ISCAS'99, 30 May-2 June 1999, vol.4, pp.211-214) 등은 복호되는 현재 블록과 그 주변 블록들의 움직임 벡터 차이 값을 기준으로 삼았으며, Jun Zhang("Adaptive overlapped block matching for accurate motion compensation", US Patent, PN US2006/0083310, Apr. 20 2006)은 움직임 복원되는 블록의 내부 영역과 외부 영역의 통계적 표준 편차를 기준으로 중첩 블록 움직임 복원을 선택적으로 적용하고 있다.While solving the problem of the increase in the compression bit rate according to the transmission of the additional information, there are various types of conventional techniques that can adaptively perform the overlap block motion compensation, first, Tien - ying Kuo and C.-C. Jay Kuo ("A hybrid BMC / OBMC motion compensation scheme", in Proc. ICIP'97, 26-29 Oct. 1997, vol. 2, pp.795-798) shows the difference image from two previously decoded images. Based on this, we propose an adaptive scheme to switch the motion compensation scheme based on the Displaced Frame Difference. Only when the difference image block having the same position as the current block to perform motion compensation has many pixels exceeding a certain threshold, the overlapped block motion compensation is performed in the decoder without additional information. This allows the selection of overlapping block motion compensation. Similarly, according to the original selection criteria for different every number of each of the technologies in the prior art, without the additional information were to be selected for each block, the motion compensation method, Lee Young - Soo ( "MPEG-4 having operating screen compensated at the time of coding Device ”, Korean Patent No. 10-280498-0000, Nov. 10, 2000, based on the high-band frequency energy value of the transmitted and decoded Discrete Cosine Transform (DCT) coefficient, Sung - hee Lee and Bong - soo Hur ("Apparatus to provide block-based motion compensation and method approximately", US Patent, PN US2004 / 0252896, Dec. 16, 2004) and Seung Hwan Kim , Dong - il Chang , Choong Woong Lee, and Sang Uk Lee ("Complexity reduction method for overlapped block motion compensation based on spatio-temporal correlation", in Proc. ISCAS'99, 30 May-2 June 1999, vol. 4, pp. 211-214), etc. And based on the motion vector difference values of the neighboring blocks and Jun Zhang ("Adaptive overlapped block matching for accurate motion compensation", US Patent, PN US2006 / 0083310, Apr. 20 2006). Overlapping block motion reconstruction is selectively applied based on the statistical standard deviation of

이상에서 설명한, 부가 정보 없이 적응적으로 움직임 보상 방식을 선택하는 모든 종래 기술들은 각기 나름대로의 선택 기준을 마련함으로써 과-평탄 문제를 완화하는데 성공적으로 기여했지만, 이들은 모두 한 가지 중요한 단점을 공유한다고 할 수 있다. 이는, 각 방식들이, 각 블록을 단위로 움직임 복원 방식을 선택하고, 그 선택된 방식을 적용하여 블록 내 모든 화소들의 움직임 복원을 수행하기 때문에, 각 블록의 경계면을 기반으로 혹은 블록 내 각 화소를 기반으로 하는 보다 세밀한 단위의 움직임 복원이 불가능하고, 따라서 과-평탄 문제의 해결 능력이 제한적일 수 있다는 점이다.All of the prior art techniques described above that adaptively select motion compensation without additional information have successfully contributed to alleviating the over-flat problem by providing their own selection criteria, but they all share one important drawback. Can be. This method is based on the boundary of each block or based on each pixel in the block because each method selects a motion reconstruction method for each block and applies the selected method to perform motion reconstruction of all pixels in the block. It is impossible to restore the motion of the finer unit, and thus the ability to solve the over-flat problem may be limited.

이와 같은 문제는, Jiro Katto("Overlapped motion compensation using a window function which varies in response to an input picture", US Patent, PN 5602593, Feb. 11 1997)에 의해 제안된 방식에 의해 일부 해결될 수 있는데, 이 방식에서는 입력 영상과 움직임 보상 오차의 통계적 특성에 따라 가중 합에서 사용할 가중치를 조절하고 있다. 즉, 중첩 블록 움직임 보상이 사용할 가중치의 값을, 입력되는 특정 비디오, 또는 입력 비디오의 특정 영상, 심지어는 입력 영상의 특정 경계면의 통계적 특성에 따라 가변 할 수 있도록 한 것인데, 가중치의 값이 0인 경우 이 방식은 기존의 블록 움직임 보상 방식에 해당되기 때문에, 이 기법은 기존의 블록 기반 적응 움직임 보상 방식을 확장하여 블록 경계면 단위까지 보다 세밀하게 적응적으로 움직임 복원 방식을 선택할 수 있는 방식이라 할 수 있다. 하지만, 이 방식에서 가중치 조절의 기준으로 사용하는 통계적 특성이라는 것이, 입력 영상, 혹은 영상 일부에 해당하는 일군의 화소들이 가지는 통계적 표준 편차(Standard Deviation) 및 상관도(Correlation), 그리고 움직임 복원 오차의 통계적 기대치(Expectation) 등을 의미하기 때문에, 그 추정에 많은 계산양이 소요될 뿐 아니라 블록의 경계면과 같이 영상의 작은 영역에 이 방식을 적용하는 경우에는 추정 정확도의 불확실성이 높아져 결국 그 성능에 한계를 보일 수 있다는 단점을 가지고 있다. 뿐만 아니라, 가중치 조절에 사용되는 이와 같은 통계적 모수들은, 복호기에서 계산을 통해 재현할 수 있는 값이 아니기 때문에, 부가 정보의 형태로 복호기에 전송되어야 한다는 문제 또한 존재한다.This problem can be partially solved by the method proposed by Jiro Katto ("Overlapped motion compensation using a window function which varies in response to an input picture", US Patent, PN 5602593, Feb. 11 1997), In this method, the weight to be used in the weighted sum is adjusted according to the statistical characteristics of the input image and the motion compensation error. That is, the value of the weight to be used by the overlapped block motion compensation can be varied according to the statistical characteristics of a specific input video, a specific video of the input video, or even a specific boundary of the input video. In this case, since this method corresponds to the conventional block motion compensation method, this method can be selected to extend the existing block-based adaptive motion compensation method to select a motion restoration method more precisely and adaptively up to the block boundary unit. have. However, in this method, the statistical characteristics used as a criterion for weight adjustment include the statistical standard deviation, correlation, and motion reconstruction error of a group of pixels corresponding to the input image or part of the image. Because it means statistical expectation, etc., it takes a lot of computational amount to estimate it, and when applying this method to small areas of the image such as the boundary of a block, the uncertainty of estimation accuracy increases, which eventually limits the performance. It has the disadvantage of being visible. In addition, since such statistical parameters used for weight adjustment are not values that can be reproduced through calculation in the decoder, there is a problem that they must be transmitted to the decoder in the form of additional information.

이와 같은 Jiro Katto("Overlapped motion compensation using a window function which varies in response to an input picture", US Patent, PN 5602593, Feb. 11 1997)의 제안 방식이 가지는 문제점들은 Byeong - Doo Choi , Jong-Woo Han , Chang - Su Kim , and Sung - Jae Ko("Motion-compensated frame interpolation using bilateral motion estimation and adaptive overlapped block motion compensation", IEEE Trans. Circuits and Syst. for Video Technol., vol.17, pp.407-416, Apr. 2007)가 제안한 방식을 변형함으로써 해결될 수 있을 것으로 기대되는데, 이 방식에서는 복원할 블록의 각 경계에 면한 이웃 블록의 움직임에 의한 화소의 복원이 현재 복원할 블록의 실제 화소와 얼마나 유사한지를 나타내는 신뢰도(Reliability)를 기반으로, 그 정도가 높을수록 더욱 높은 가중치를 사용함으로써 능률적으로 경계 단위의 가중 블록 움직임 보상을 수행하고 있다. 하지만, 이 방식은 기본적으로 영상 보간(Frame Interpolation) 응용에서 사용하도록 설계된 기법이기 때문에, 비디오 압축 응용에서는 가중치 조절의 기준인 신뢰도 정보를 복호기에서 재현할 수 없고, 보다 세밀한 형태의 적응 기법이라 할 수 있는, 화소 단위의 적응 가중 블록 움직임 보상 방식으로는 확장할 수 없다는 단점을 가지고 있다.Problems with the proposed method of Jiro Katto ("Overlapped motion compensation using a window function which varies in response to an input picture", US Patent, PN 5602593, Feb. 11 1997) are Byeong - Doo Choi , Jong-Woo Han , Chang - Su Kim , and Sung - Jae Ko ("Motion-compensated frame interpolation using bilateral motion estimation and adaptive overlapped block motion compensation", IEEE Trans. Circuits and Syst. For Video Technol., Vol. 17, pp.407-416, Apr. 2007) It is expected that the proposed scheme can be solved by modifying the proposed scheme. In this scheme, the reliability of the pixel due to the movement of the neighboring block facing each boundary of the block to be restored is similar to the actual pixel of the block to be restored currently. Based on, the higher the weight is, the higher weight is used to efficiently perform the weighted block motion compensation of the boundary unit. However, since this method is basically designed to be used in frame interpolation applications, it is impossible to reproduce reliability information, which is a criterion for weight adjustment, in the video compression application. There is a drawback that it cannot be extended by an adaptive weighted block motion compensation scheme.

화소 단위로 가중 블록 움직임 보상을 조절할 수 있는 종래 기술로는 Chih-lung Bruce Lin , Ming - Chieh Lee , and Wei - ge Chen("Overlapped motion compensation for object coding", US Patent, PN 5982438, Nov. 9 1999)이 제안한 방식을 들 수 있는데, 이 방식에서는 움직임 보상을 수행할 한 블록 내의 각 화소에 대하여, 그 화소가 가중 합을 구할 때 사용되는 주변 블록의 화소와 같은 물체에 속하게 될 경우에만 중첩 블록 움직임 보상을 수행하도록 함으로써 과-평탄 문제를 완벽히 해결할 수 있도록 하였다. 하지만, 이 방식은 화소 단위의 물체-맵(Object Map)을 구비하고 이를 부가 정보로 전송해야만 하며, 이러한 물체-맵은, 일반적으로, 자연 영상에서 자동으로 생성하는 것이 현재 기술로 매우 제한적이기 때문에, 비디오 정보의 압축 부호화에 이 기법을 도입하는 것은 실용가능성이 매우 떨어진다는 문제를 가지고 있다.Conventional techniques for adjusting the weighted block motion compensation on a pixel-by-pixel basis include Chih-lung Bruce. Lin , Ming - Chieh Lee , and The method proposed by Wei - ge Chen ("Overlapped motion compensation for object coding", US Patent, PN 5982438, Nov. 9 1999) includes a method for each pixel in a block to perform motion compensation. The super-flat problem can be completely solved by performing the overlap block motion compensation only when the pixel belongs to the same object as the pixel of the neighboring block used to obtain the weighted sum. However, this method must have an object-map in pixels and transmit it as additional information, which is generally limited by current technology to automatically generate from natural images. However, the introduction of this technique into compression coding of video information has a problem that the practicality is very low.

전술한 문제점을 해결하기 위해 본 발명은, 화소 단위의 부가 정보 없이 그리고 기존의 비디오 압축 방식들에 적용가능한 형태로, 블록 단위, 블록 경계 단위는 물론 화소 단위로까지 적응적 중첩 블록 움직임 보상을 수행할 수 있도록 하는, 동영상 부호화/복호화 장치 및 그를 위한 화소 기반 적응 중첩 블록 움직임 보상 장치 및 방법을 제공하는 것을 목적으로 한다.In order to solve the above-described problem, the present invention performs adaptive overlapping block motion compensation on a pixel basis as well as block basis, block boundary basis, and in a form applicable to existing video compression schemes without additional information in units of pixels. An object of the present invention is to provide a video encoding / decoding apparatus and a pixel-based adaptive overlapping block motion compensation apparatus and method therefor.

전술한 목적을 달성하기 위해 본 발명은, 블록 움직임 보상(Block Motion Compensation) 및 중첩 블록 움직임 보상(Overlapped Block Motion Compensation)에 의한 오차 잔여 화소(Residual Pixel)의 차이를 정량적으로 분석하고, 이를 이용하여 화소 단위의 부가 정보 없이, 화소 단위의 블록 움직임 보상 및 중첩 블록 움직임 보상을 적응적으로 선택하는 것을 특징으로 한다.In order to achieve the above object, the present invention quantitatively analyzes the difference between residual pixels due to Block Motion Compensation and Overlapped Block Motion Compensation, and uses them. It is characterized by adaptively selecting block motion compensation and overlapping block motion compensation in pixel units without additional information in pixel units.

전술한 목적을 달성하기 위하여 본 발명의 일 측면에 따르면, 블록 움직임 보상에 대한 중첩 블록 움직임 보상의 이득과 손실을 구하는 이득/손실 산출부; 인접한 블록의 움직임 벡터를 사용하여 움직임 보상된 블록과 현재 움직임 보상 블록 간의 화소 값의 차이 DN(x,y)를 구하는 차이 산출부; 상기 이득과 손실이 상기 차이 DN(x,y)를 기반으로 설정된 기준값을 초과하는 화소들에 대하여 화소값의 절대치가 가장 작은 제 1 잔여화소를 구하고, 상기 이득과 손실이 상기 기준값 이하인 화소들에 대하여 화소값의 절대치가 가장 큰 제 2 잔여화소를 구하는 기준 잔여화소 산출부; 상기 제 1 잔여화소 및 상기 제 2 잔여화소 중 더 큰 값을 제 1 정보로 하여 화소 단위보다 큰 일정 단위로 기록하는 정보 기록부; 및 입력된 화소 또는 잔여화소를 상기 기록된 제 1 정보와 비교하여, 상기 입력된 화소 또는 잔여화소의 절대치가 상기 기록된 제 1 정보의 값보다 큰 경우 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행하고, 그렇지 않은 경우에 대해서는 중첩 블록 움직임 보상을 실시하는 적응 중첩 블록 움직임 보상부를 포함하는 화소 기반 적응 중첩 블록 움직임 보상 장치가 제공된다.According to an aspect of the present invention to achieve the above object, a gain / loss calculation unit for obtaining the gain and loss of overlapping block motion compensation for block motion compensation; A difference calculator for calculating a difference D N (x, y) of pixel values between a motion compensated block and a current motion compensation block using a motion vector of an adjacent block; The first residual pixel having the smallest absolute value of the pixel value is obtained for the pixels whose gain and loss exceed the reference value set based on the difference D N (x, y), and the pixels whose gain and loss are less than or equal to the reference value. A reference residual pixel calculation unit for obtaining a second residual pixel having the largest absolute value of the pixel value with respect to; An information recording unit configured to record a larger value of the first residual pixel and the second residual pixel as a first information in a predetermined unit larger than a pixel unit; And comparing an input pixel or residual pixel with the recorded first information, and adaptively performing overlapping block motion compensation and block motion compensation when the absolute value of the input pixel or residual pixel is larger than the value of the recorded first information. If not, a pixel-based adaptive overlap block motion compensation apparatus including an adaptive overlap block motion compensation unit for performing overlap block motion compensation is provided.

상기 기준 잔여화소 산출부는, 제곱 오차를 사용하여 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행할 경우, 상기 기준값이 2HN 2(x,y) X DN 2(x,y)로 설정되고, 여기서 HN(x,y)는 주변 블록의 움직임 벡터로 복원된 화소 블록에 곱해질 (x,y) 위치에서의 가중치이다. 상기 정보 기록부는 상기 일정 단위를 예를 들어 블록 경계 단위, 블록 단위, 영상의 일부 단위 및 영상 단위 중 하나로 설정할 수 있다.When the reference residual pixel calculator adaptively performs overlapping block motion compensation and block motion compensation using a squared error, the reference value is set to 2H N 2 (x, y) XD N 2 (x, y). Where H N (x, y) is the weight at the position (x, y) to be multiplied by the pixel block reconstructed by the motion vector of the neighboring block. The information recording unit may set the predetermined unit to, for example, one of a block boundary unit, a block unit, a part of an image, and an image unit.

상기 이득/손실 산출부, 상기 차이 산출부, 상기 기준 잔여화소 산출부, 및 상기 정보 기록부는 부호기(또는 부호화 장치라 칭함)내에 구비될 수 있고, 상기 움직임 추정/보상부는 상기 부호기와 이에 대응하는 복호기(또는 복호화 장치라 칭함)에 각각 구비될 수 있다. 상기 부호기는 상기 제 1 정보를 상기 일정 단위로 상기 복호기에 전송할 수 있다.The gain / loss calculating section, the difference calculating section, the reference residual pixel calculating section, and the information recording section may be provided in an encoder (or an encoding device), and the motion estimation / compensation section corresponds to the encoder. Each decoder may be provided in a decoder (or a decoding device). The encoder may transmit the first information to the decoder in the predetermined unit.

전술한 목적을 달성하기 위하여 본 발명의 다른 측면에 따르면, (a) 블록 움직임 보상에 대한 중첩 블록 움직임 보상의 이득과 손실이, 인접한 블록의 움직임 벡터를 사용하여 움직임 보상된 블록과 현재 움직임 보상 블록 간의 화소 값의 차이 DN(x,y)를 기반으로 설정된 기준값을 초과하는 화소들에 대하여 화소값의 절대치가 가장 작은 제 1 잔여화소를 구하는 단계; (b) 상기 이득과 상기 손실이 상기 기준값 이하인 화소들에 대하여 화소값의 절대치가 가장 큰 제 2 잔여화소를 구하는 단계; (c) 상기 제 1 잔여화소 및 상기 제 2 잔여화소 중 더 큰 값을 제 1 정보로 하여 화소 단위보다 큰 일정 단위로 기록하는 단계; 및 (d) 입력된 화소 또는 수신된 잔여화소를 상기 기록된 제 1 정보와 비교하여, 상기 입력된 화소 또는 상기 수신된 잔여화소의 절대치가 상기 기록된 제 1 정보의 값보다 큰 경우 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행하고, 그렇지 않은 경우에 대해서는 중첩 블록 움직임 보상을 실시하는 단계를 포함하는 화소 기반 적응 중첩 블록 움직임 보상 방법이 제공된다.According to another aspect of the present invention for achieving the above object, (a) the gain and loss of overlapping block motion compensation for block motion compensation, the motion compensation block and the current motion compensation block using the motion vector of the adjacent block Obtaining a first residual pixel having the smallest absolute value of the pixel value for the pixels exceeding the reference value set based on the difference D N (x, y) of the pixel values between the pixels; (b) obtaining a second residual pixel having the largest absolute value of a pixel value for pixels whose gain and loss are less than or equal to the reference value; (c) recording a larger value of the first residual pixel and the second residual pixel as first information and in a predetermined unit larger than the pixel unit; And (d) overlapping block movement when the input pixel or the received residual pixel is compared with the recorded first information, and if the absolute value of the input pixel or the received residual pixel is greater than the value of the recorded first information. There is provided a pixel-based adaptive overlapping block motion compensation method comprising adaptively performing compensation and block motion compensation, and otherwise performing overlapping block motion compensation.

제곱 오차를 사용하여 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행할 경우, 상기 기준값은 2HN 2(x,y) X DN 2(x,y)이고, 여기서 HN(x,y)는 주변 블록의 움직임 벡터로 복원된 화소 블록에 곱해질 (x,y) 위치에서의 가중치이다. 상기 일정 단위는 예를 들어 블록 경계 단위, 블록 단위, 영상의 일부 단위 및 영상 단위 중 하나일 수 있다.When adaptively performing overlapping block motion compensation and block motion compensation using a squared error, the reference value is 2H N 2 (x, y) XD N 2 (x, y), where H N (x, y) Is the weight at the position (x, y) to be multiplied by the pixel block reconstructed by the motion vector of the neighboring block. The predetermined unit may be, for example, one of a block boundary unit, a block unit, a part of an image, and an image unit.

상기 단계 (a) 내지 (c)는 부호기에서 수행되고, 상기 단계 (d)는 상기 부호기와 이에 대응하는 복호기에서 각각 수행될 수 있고, 상기 제 1 정보는 상기 일정 단위로 상기 부호기로부터 상기 복호기에 전송될 수 있다.Steps (a) to (c) may be performed in the encoder, and step (d) may be performed in the encoder and the decoder corresponding thereto, and the first information may be performed from the encoder to the decoder in the predetermined unit. Can be sent.

전술한 목적을 달성하기 위하여 본 발명의 또 다른 측면에 따르면, 인접한 블록의 움직임 벡터를 사용하여 움직임 보상된 블록과 현재 움직임 보상 블록 간의 화소 값의 차이를 기반으로 블록 움직임 보상과 중첩 블록 움직임 보상을 적응적으로 수행하여, 영상의 현재 블록의 각 화소의 예측 화소값을 예측하는 움직임 추정/보상부; 상기 현재 블록의 각 화소의 원 화소값과 상기 현재 블록의 각 화소의 예측 화소값의 차이값을 계산하여 잔차신호를 생성하는 감산부; 상기 잔차신호를 주파수 계수들로 변환하는 변환부; 상기 변환된 주파수 계수들을 양자화하는 양자화부; 및 상기 양자화된 주파수 계수들을 비트스트림으로 부호화하는 부호화부를 포함하는 영상 부호화 장치가 제공된다.According to another aspect of the present invention to achieve the above object, block motion compensation and overlapping block motion compensation are performed based on the difference in pixel values between a motion compensated block and a current motion compensation block using motion vectors of adjacent blocks. A motion estimation / compensation unit which adaptively performs prediction to predict a predicted pixel value of each pixel of a current block of an image; A subtraction unit configured to generate a residual signal by calculating a difference value between an original pixel value of each pixel of the current block and a predicted pixel value of each pixel of the current block; A converter for converting the residual signal into frequency coefficients; A quantizer for quantizing the transformed frequency coefficients; And an encoding unit encoding the quantized frequency coefficients into a bitstream.

상기 움직임 추정 보상부는, 블록 움직임 보상에 대한 중첩 블록 움직임 보상의 이득과 손실을 구하는 이득/손실 산출부; 인접한 블록의 움직임 벡터를 사용하여 움직임 보상된 블록과 현재 움직임 보상 블록 간의 화소 값의 차이 DN(x,y)를 구하는 차이 산출부; 상기 이득과 손실이 상기 차이 DN(x,y)를 기반으로 설정된 기준값을 초과하는 화소들에 대하여 화소값의 절대치가 가장 작은 제 1 잔여화소를 구하고, 상기 이득과 손실이 상기 기준값 이하인 화소들에 대하여 화소값의 절대치가 가장 큰 제 2 잔여화소를 구하는 기준 잔여화소 산출부; 상기 제 1 잔여화소 및 상기 제 2 잔여화소 중 더 큰 값을 제 1 정보로 하여 화소 단위보다 큰 일정 단위로 기록하는 정보 기록부; 및 입력된 화소를 상기 기록된 제 1 정보와 비교하여, 상기 입력된 화소의 값이 상기 기록된 제 1 정보의 값보다 큰 경우 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행하고, 그렇지 않은 경우에 대해서는 중첩 블록 움직임 보상을 실시하는 적응 중첩 블록 움직임 보상부를 포함할 수 있다.The motion estimation compensator may include: a gain / loss calculator for obtaining gain and loss of overlapping block motion compensation with respect to block motion compensation; A difference calculator for calculating a difference D N (x, y) of pixel values between a motion compensated block and a current motion compensation block using a motion vector of an adjacent block; The first residual pixel having the smallest absolute value of the pixel value is obtained for the pixels whose gain and loss exceed the reference value set based on the difference D N (x, y), and the pixels whose gain and loss are less than or equal to the reference value. A reference residual pixel calculation unit for obtaining a second residual pixel having the largest absolute value of the pixel value with respect to; An information recording unit configured to record a larger value of the first residual pixel and the second residual pixel as a first information in a predetermined unit larger than a pixel unit; And comparing the input pixel with the recorded first information, and adaptively performing overlapping block motion compensation and block motion compensation when the value of the input pixel is larger than the value of the recorded first information. In this case, the method may include an adaptive overlapping block motion compensation unit that performs overlapping block motion compensation.

전술한 목적을 달성하기 위하여 본 발명의 또 다른 측면에 따르면, 입력된 잔여화소를 설정된 제 1 정보와 비교하여, 상기 입력된 잔여화소의 값이 상기 제 1 정보의 값보다 큰 경우 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행하고, 그렇지 않은 경우에 대해서는 중첩 블록 움직임 보상을 실시하는 적응 중첩 블록 움직임 보상부를 구비하되, 상기 제 1 정보는 인접한 블록의 움직임 벡터를 사용하여 움직임 보상된 블록과 현재 움직임 보상 블록 간의 화소 값의 차이를 기반으로 설정된 것을 특징으로 하는 영상 복호화 장치가 제공된다.According to another aspect of the present invention to achieve the above object, by comparing the input residual pixel with the set first information, overlapping block motion compensation when the value of the input residual pixel is larger than the value of the first information And an adaptive overlapping block motion compensator for adaptively performing block motion compensation, and otherwise performing overlapping block motion compensation, wherein the first information includes a motion compensated block using a motion vector of an adjacent block. An image decoding apparatus is provided based on a difference in pixel values between current motion compensation blocks.

상기 제 1 정보는 영상 부호화 장치로부터 제공된 것으로서, 상기 영상 부호화 장치는 블록 움직임 보상에 대한 중첩 블록 움직임 보상의 이득과 손실이 인접한 블록의 움직임 벡터를 사용하여 움직임 보상된 블록과 현재 움직임 보상 블록 간의 화소 값의 차이 DN(x,y)를 기반으로 설정된 기준값을 초과하는 화소들에 대하 여 화소값의 절대치가 가장 작은 제 1 잔여화소를 구하고, 상기 이득과 상기 손실이 상기 기준값 이하인 화소들에 대하여 화소값의 절대치가 가장 큰 제 2 잔여화소를 구하고, 상기 제 1 잔여화소 및 상기 제 2 잔여화소 중 더 큰 값을 상기 제 1 정보로 설정하여 화소 단위보다 큰 일정 단위로 기록할 수 있다.The first information is provided from an image encoding apparatus. The image encoding apparatus includes a pixel between a motion-compensated block and a current motion compensation block whose gains and losses of overlapping block motion compensation for block motion compensation are obtained by using motion vectors of adjacent blocks. The first residual pixel having the smallest absolute value of the pixel value is obtained for the pixels exceeding the reference value set based on the difference D N (x, y), and for the pixels whose gain and loss are less than the reference value. The second residual pixel having the largest absolute value of the pixel value may be obtained, and a larger value of the first residual pixel and the second residual pixel may be set as the first information and recorded in a predetermined unit larger than the pixel unit.

본 발명에 의하면, 화소 단위의 부가 정보 없이 화소 단위까지 움직임 보상 방식을 적응적으로 선택할 수 있도록 함으로써, 매우 적은 부가 정보만으로 부호화해야 할 블록 경계 부의 잔여 신호 에너지를 크게 감소시켜 비디오 압축 장치의 압축 성능을 크게 향상시키고, 나아가 같은 비트(또는 정보량)를 사용하는 경우 보다 개선된 비디오 화질을 얻을 수 있는 효과가 발생한다.According to the present invention, it is possible to adaptively select the motion compensation scheme up to the pixel unit without the additional information in the pixel unit, thereby greatly reducing the residual signal energy of the block boundary to be encoded with very little additional information, thereby compressing the performance of the video compression apparatus. This greatly improves the efficiency of the signal and further improves the video quality when using the same bit (or the amount of information).

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

동영상 화면은 1초 동안에 30장의 프레임으로 구성되므로 한 프레임과 이웃한 프레임 사이에는 그 차이가 작기 때문에, 인간의 눈으로 구분하지 못한다. 이 때문에, 1초 동안에 30장의 프레임을 뿌리면 인간의 눈은 프레임이 연속적인 것으 로 인식한다.Since the video screen is composed of 30 frames in one second, the difference is small between one frame and neighboring frames, and thus cannot be distinguished by the human eye. Because of this, if 30 frames are sprayed in one second, the human eye perceives the frames as continuous.

이와 같이, 이전 프레임과 현재 프레임이 비슷하다면, 이전 프레임을 구성하고 있는 이미 알고 있는 화소값으로부터 다음 프레임의 화소값을 예측할 수 있다(이를 화면간 예측(interprediction)이라 함).As such, when the previous frame is similar to the current frame, the pixel value of the next frame can be predicted from the known pixel values constituting the previous frame (this is called interprediction).

이러한 동영상 데이터의 부호화 및 복호화는 움직임 예측(motion prediction) 기술을 기반으로 이루어진다. 움직임 예측은 시간 축을 기준으로 과거 프레임을 참조하거나 과거 프레임과 미래 프레임을 모두 참조하는 방식으로 수행된다. 현재 프레임을 부호화하거나 복호화하는데 참조되는 프레임을 참조 프레임이라고 한다. 그리고, 블록 기반 동영상 부호화에서 동영상을 구성하는 하나의 정지영상(프레임)은 매크로블록과 매크로블록을 구성하는 서브블록으로 나누어져, 블록단위로 움직임이 예측되고 부호화가 수행된다.The encoding and decoding of such video data is performed based on a motion prediction technique. The motion prediction is performed by referring to past frames or referring to both past and future frames based on the time axis. The frame referred to to encode or decode the current frame is called a reference frame. In block-based video encoding, one still image (frame) constituting a video is divided into macroblocks and subblocks constituting the macroblock, and motion is predicted in units of blocks and encoding is performed.

또한 동일한 프레임 내에서 화소신호의 상관관계를 사용해 다음 화소를 예측하고 그 예측오차를 부호화할 수도 있다(이를 화면 내 예측(intraprediction)이라 함).It is also possible to predict the next pixel using the correlation of the pixel signals in the same frame and to encode the prediction error (this is called intraprediction).

도 1은 화면간 예측에 사용되는, 동영상을 구성하는 동영상 프레임들을 도시한 도면이다.FIG. 1 is a diagram illustrating video frames constituting a video used for inter prediction.

도 1을 참조하면, 동영상 데이터는 일련의 정지영상으로 구성되어 있다. 이 정지영상들은 GOP(Group of Picture) 단위로 구분되어 있다. 정지영상 하나하나를 프레임이라 한다. 하나의 GOP에는 I 프레임(110), P 프레임(120), B(130) 프레임이 포함되어 있다. I 프레임(110)은 참조 프레임을 사용하지 않고 자체적으로 부호화 되는 프레임이며, P 프레임(120)과 B 프레임(130)은 참조 프레임을 사용하여 움직임 추정 및 보상을 수행하여 부호화되는 프레임이다. 특히, B 프레임(130)은 과거의 프레임과 미래의 프레임을 각각 순방향 및 역방향(양방향) 예측하여 부호화되는 프레임이다.Referring to Fig. 1, video data is composed of a series of still images. These still images are divided into GOP (Group of Picture) units. Each still image is called a frame. One GOP includes an I frame 110, a P frame 120, and a B 130 frame. The I frame 110 is a frame that is encoded by itself without using a reference frame, and the P frame 120 and the B frame 130 are frames that are encoded by performing motion estimation and compensation using the reference frame. In particular, the B frame 130 is a frame that is encoded by predicting the frame of the past and the frame of the future in the forward and reverse directions (bidirectional), respectively.

도 2는 본 발명의 일실시예에 따른 동영상 부호화 장치의 블록도이다.2 is a block diagram of a video encoding apparatus according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 일실시예에 따른 동영상 부호화 장치(200)는 움직임 추정/보상부(210), 감산부(220), 변환부(230), 양자화부(240) 및 부호화부(250)를 포함한다.Referring to FIG. 2, the video encoding apparatus 200 according to an embodiment of the present invention may include a motion estimation / compensation unit 210, a subtraction unit 220, a transform unit 230, a quantization unit 240, and an encoding unit. 250.

이러한 동영상 부호화 장치(200)는 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 이동통신 단말기(Mobile Communication Terminal) 등일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 부호화하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미한다.The video encoding apparatus 200 may be a personal computer (PC), a notebook computer, a personal digital assistant (PDA), a portable multimedia player (PMP), or a PlayStation Portable (PSP). ), A communication device such as a communication modem for communicating with various devices or a wired / wireless communication network, a memory for storing various programs and data for encoding an image, and executing a program. Means a variety of devices including a microprocessor for operation and control.

움직임 추정/보상부(210)는 위에서 설명한 바와 같이 움직임 예측을 기반으로 하는 화면간 예측이나 동일한 프레임 내에서 화소신호의 상관관계를 사용해 다음 화소를 예측하는 화면 내 예측 중 어느 하나 또는 둘의 조합을 이용하여 현재 블록(또는 매크로블록)을 예측할 수 있다.As described above, the motion estimator / compensator 210 performs any one or a combination of intra prediction based on motion prediction or intra prediction that predicts the next pixel using correlation of pixel signals in the same frame. It can be used to predict the current block (or macroblock).

예를 들어, 움직임 추정/보상부(210)는 움직임 추정부(미도시)와 움직임 보상부(미도시)로 나누어 구성될 수 있다. 움직임 추정부는 현재 프레임의 매크로 블록의 움직임 예측치를 참조 프레임에서 찾아 그 움직임의 차이를 움직임 벡터로써 출력한다. 즉, 찾고자 하는 매크로 블록을 참조 프레임의 소정의 탐색영역 내에서 탐색하여, 가장 유사한 매크로 블록을 찾아 그 이동정도를 움직임 벡터로써 출력한다. 움직임 보상부는 구해진 움직임 벡터에 해당하는 예측 매크로 블록을 참조 프레임으로부터 얻는다.For example, the motion estimator / compensator 210 may be divided into a motion estimator (not shown) and a motion compensator (not shown). The motion estimator finds the motion prediction value of the macroblock of the current frame in the reference frame and outputs the difference of the motion as a motion vector. That is, the macroblock to be searched is searched within a predetermined search area of the reference frame to find the most similar macroblock and the degree of movement thereof is output as a motion vector. The motion compensation unit obtains a prediction macro block corresponding to the obtained motion vector from the reference frame.

또 다른 예로, 움직임 추정/보상부(210)는 현재 프레임의 현재 매크로 블록을 영상 내에서 현재 매크로 블록의 주변 매크로 블록을 이용하여 예측하는 인트라예측부로, 하나 이상의 주변 매크로 블록의 하나 이상의 화소값(Pixel Value)을 이용하여 현재 매크로 블록의 각 화소의 예측 화소값(Predicted Pixel Value)을 계산함으로써 예측 매크로 블록을 예측한다. 여기서, 주변 매크로 블록은 현재 매크로 블록 이전에 압축되고 현재 매크로 블록의 주변에 위치한 하나 이상의 주변 매크로 블록일 수 있다.As another example, the motion estimator / compensator 210 is an intra predictor that predicts a current macroblock of a current frame using a neighboring macroblock of a current macroblock in an image, and includes one or more pixel values of one or more neighboring macroblocks ( The predicted macro block is predicted by calculating a predicted pixel value of each pixel of the current macro block using the pixel value. Here, the peripheral macroblock may be one or more peripheral macroblocks that are compressed before the current macroblock and located around the current macroblock.

감산부(220)는 원 영상 프레임의 매크로 블록에서 예측 매크로 블록을 빼서 그 차이값을 계산하여 잔차신호(Residual Signal)를 생성한다.The subtraction unit 220 generates a residual signal by subtracting the prediction macro block from the macro block of the original image frame and calculating the difference value.

변환부(230)는 감산부(220)에 의해 생성된 잔차신호를 주파수 영역으로 변환하여 주파수 계수들을 얻는다. 여기서, 변환부(230)는 이산 코사인 변환(DCT: Discrete Cosine Transform, 이하 'DCT 변환'이라 칭함) 또는 웨이블릿 변환(Wavelet Transform) 등의 시간축의 화상 신호를 주파수축으로 변환하는 다양 한 변환 기법을 이용하여 잔차신호를 주파수 영역으로 변환한다. 도1을 참조하여 설명한 I 프레임의 경우, 변환부(230)는 원 영상 프레임의 매크로 블록을 주파수 영역으로 변환한다.The transformer 230 converts the residual signal generated by the subtractor 220 into a frequency domain to obtain frequency coefficients. The transform unit 230 may use various transformation techniques for transforming an image signal of a time axis, such as a discrete cosine transform (DCT) or a wavelet transform, into a frequency axis. To convert the residual signal into the frequency domain. In the case of the I frame described with reference to FIG. 1, the converter 230 converts the macroblock of the original image frame into the frequency domain.

양자화부(240)는 변환부(230)에 의해 주파수 영역으로 변환된 주파수 계수들을 양자화(Quantization)한다.The quantization unit 240 quantizes the frequency coefficients transformed into the frequency domain by the conversion unit 230.

원 영상 프레임의 매크로 블록에서 예측 매크로 블록을 뺀 것을 잔차신호(residual signal)라고 하는데 부호화시의 데이터량을 줄이기 위해서 이 잔차신호값을 부호화한다. 양자화 과정에서 에러가 발생하므로, 비트스트림으로 만들어지는 동영상 데이터에는 변환 및 양자화 과정에서 발생한 에러가 포함되어 있다.Subtracting the predictive macroblock from the macroblock of the original picture frame is called a residual signal, and the residual signal value is encoded to reduce the amount of data during encoding. Since an error occurs during the quantization process, the video data generated in the bitstream includes an error generated during the transformation and quantization process.

또한, 참조 프레임을 얻기 위해, 동영상 부호화 장치(200)는 역양자화부(360)와 역변환부(370)를 추가로 포함할 수 있다.In addition, the video encoding apparatus 200 may further include an inverse quantizer 360 and an inverse transform unit 370 to obtain a reference frame.

참조 프레임을 얻기 위해, 양자화된 잔차신호는 역양자화부(360)와 역변환부(270)를 거쳐 예측부(210)에서 예측된 영상과 합쳐져 참조 프레임 저장부(미도시)에 저장된다. I 프레임의 경우, 역양자화부(360)와 변환부(370)를 거쳐 예측부(210)의 참조 프레임 저장부에 저장된다. 즉, 원 영상을 A 라고 하고, 예측된 영상을 B 라고 하면 변환부(230)는 원 영상과 예측된 영상과의 차이인 A-B를 입력받아 변환을 수행한다.In order to obtain a reference frame, the quantized residual signal is combined with an image predicted by the predictor 210 through an inverse quantizer 360 and an inverse transformer 270 and stored in a reference frame storage (not shown). In the case of an I frame, it is stored in the reference frame storage of the predictor 210 through the inverse quantizer 360 and the transformer 370. That is, if the original image is called A and the predicted image is called B, the converter 230 receives A-B, which is a difference between the original image and the predicted image, and performs conversion.

부호화부(250)는 양자화부(240)에 의해 양자화된 주파수 계수들을 비트스트림으로 부호화한다. 이러한 부호화 기술로서는 엔트로피 부호화(Entropy Encoding) 기술이 사용될 수 있으나, 반드시 이에 한정하지 않고 다른 다양한 부호화 기술이 사용될 수도 있다.The encoder 250 encodes the frequency coefficients quantized by the quantizer 240 into a bitstream. An entropy encoding technique may be used as the encoding technique, but various encoding techniques may be used without being limited thereto.

도 3은 본 발명의 일 실시예에 따른 화소 기반 적응 중첩 블록 움직임 보상 장치의 블록도로서, 도 2의 움직임 추정/보상부(210)에 대응하므로 동일 부호를 부가하여 설명한다.3 is a block diagram of a pixel-based adaptive superimposed block motion compensation apparatus according to an embodiment of the present invention, and corresponds to the motion estimation / compensation unit 210 of FIG. 2.

도 3에 도시된 바와 같이, 본 발명의 일 실시예에 따른 화소 기반 적응 중첩 블록 움직임 보상 장치(210)는, 블록 움직임 보상에 대한 중첩 블록 움직임 보상의 이득과 손실을 구하는 이득/손실 산출부(211); 인접한 블록의 움직임 벡터를 사용하여 움직임 보상된 블록과 현재 움직임 보상 블록 간의 화소 값의 차이 DN(x,y)를 구하는 차이 산출부(212); 상기 이득과 손실이 상기 차이 DN(x,y)를 기반으로 설정된 기준값을 초과하는 화소들에 대하여 화소값의 절대치가 가장 작은 제 1 잔여화소를 구하고, 상기 이득과 손실이 상기 기준값 이하인 화소들에 대하여 화소값의 절대치가 가장 큰 제 2 잔여화소를 구하는 기준 잔여화소 산출부(213); 상기 제 1 잔여화소 및 상기 제 2 잔여화소 중 더 큰 값을 제 1 정보로 하여 화소 단위보다 큰 일정 단위로 기록하는 정보 기록부(214); 및 입력된 화소 또는 잔여화소를 상기 기록된 제 1 정보와 비교하여, 상기 입력된 화소 또는 잔여화소의 값이 상기 기록된 제 1 정보의 값보다 큰 경우 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행하고, 그렇지 않은 경우에 대해서는 중첩 블록 움직임 보상을 실시하는 적응 중첩 블록 움직임 보상부(215)를 포함한다.As illustrated in FIG. 3, the pixel-based adaptive superimposed block motion compensation apparatus 210 according to an embodiment of the present invention may include a gain / loss calculator for obtaining gain and loss of superimposed block motion compensation for block motion compensation ( 211); A difference calculator 212 for calculating a difference D N (x, y) between pixel values of a motion compensated block and a current motion compensation block using a motion vector of an adjacent block; The first residual pixel having the smallest absolute value of the pixel value is obtained for the pixels whose gain and loss exceed the reference value set based on the difference D N (x, y), and the pixels whose gain and loss are less than or equal to the reference value. A reference residual pixel calculator 213 for obtaining a second residual pixel having the largest absolute value of the pixel value with respect to the? An information recording unit (214) for recording a larger value of the first residual pixel and the second residual pixel as first information in a predetermined unit larger than a pixel unit; And comparing the input pixel or residual pixel with the recorded first information, and adaptively performing overlapping block motion compensation and block motion compensation when the value of the input pixel or residual pixel is larger than the value of the recorded first information. If not, it includes an adaptive overlap block motion compensation unit 215 for performing overlap block motion compensation.

도 4는 본 발명의 일 실시예에 따른 동영상 복호화 장치의 블록 구성도이다.4 is a block diagram of a video decoding apparatus according to an embodiment of the present invention.

도 4에 도시된 바와 같이, 본 발명의 일 실시예에 따른 동영상 복호화 장치(400)는 영상의 현재 블록을 현재 블록의 주변에 있는 하나 이상의 주변 블록을 이용하여 예측하고 영상을 복호화(Decoding)하는 장치로서, 복호화부(410), 역양자화부(420), 역변환부(430), 가산부(440) 및 움직임 추정/보상부(450)를 포함한다.As shown in FIG. 4, the video decoding apparatus 400 according to an embodiment of the present invention predicts a current block of an image using one or more neighboring blocks around the current block and decodes the image. The apparatus includes a decoder 410, an inverse quantizer 420, an inverse transform unit 430, an adder 440, and a motion estimation / compensation unit 450.

이러한 동영상 복호화 장치(400)는 도 2를 통해 전술한 동영상 부호화 장치(200)와 같이, 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 이동통신 단말기(Mobile Communication Terminal) 등일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 복호화하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미한다.The video decoding apparatus 400, like the video encoding apparatus 200 described above with reference to FIG. 2, may be a personal computer (PC), a notebook computer, a personal digital assistant (PDA), a portable multimedia player ( PMP: Portable Multimedia Player (PSP), PlayStation Portable (PSP: PlayStation Portable), Mobile Communication Terminal (Mobile Communication Terminal) and the like, communication devices, such as a communication modem for performing communication with various devices or wired and wireless communication network, decoding the image Means a variety of devices including a memory for storing various programs and data, a microprocessor for executing and controlling the program by executing.

복호화부(410)는 비트스트림을 복호화하여 양자화된 주파수 계수들을 추출한다. 즉, 복호화부(410)는 영상 부호화 장치(200)에 의해 부호화된 영상인 비트스트림을 복호화하여 영상의 현재 블록에 대한 화소 정보를 포함하고 있는 양자화된 주파수계수들을 추출한다.The decoder 410 extracts the quantized frequency coefficients by decoding the bitstream. That is, the decoder 410 extracts the quantized frequency coefficients including pixel information of the current block of the image by decoding the bitstream which is the image encoded by the image encoding apparatus 200.

역양자화부(420)는 복호화부(410)에 의해 비트스트림으로부터 추출된 주파수 계수들을 역양자화(De-quantization)한다. The dequantizer 420 de-quantizes the frequency coefficients extracted from the bitstream by the decoder 410.

역변환부(430)는 역양자화부(420)에 의해 역양자화된 주파수 계수들을 시간 영역으로 역변환(Inverse Trasformation)하여 잔차신호를 생성한다.The inverse transformer 430 generates a residual signal by inversely transforming the frequency coefficients inversely quantized by the inverse quantizer 420 into the time domain.

가산부(430)는 역변환부(430)에 의해 역변환된 잔차신호와 움직임 추정/보상부(450)에 의해 예측된 현재 블록의 각 화소의 예측 화소값을 더하여 현재 블록의 원 화소값을 복원한다.The adder 430 reconstructs the original pixel value of the current block by adding the residual signal inversely transformed by the inverse transform unit 430 and the predicted pixel value of each pixel of the current block predicted by the motion estimation / compensator 450. .

도 5는 본 발명의 다른 실시예에 따른 화소 기반 적응 중첩 블록 움직임 보상 장치의 블록도로서, 도 4의 움직임 추정/보상부(450)에 대응하므로 동일 부호를 부가하여 설명한다.FIG. 5 is a block diagram of a pixel-based adaptive superimposed block motion compensation apparatus according to another embodiment of the present invention, and corresponds to the motion estimation / compensation unit 450 of FIG. 4.

도 5에 도시된 바와 같이, 본 발명의 다른 실시예에 따른 화소 기반 적응 중첩 블록 움직임 보상 장치(450)는, 입력된 잔여화소를 설정된 제 1 정보와 비교하여, 상기 입력된 잔여화소의 절대치 값이 상기 제 1 정보의 값보다 큰 경우 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행하고, 그렇지 않은 경우에 대해서는 중첩 블록 움직임 보상을 실시하는 적응 중첩 블록 움직임 보상부(455)를 구비한다.As shown in FIG. 5, the pixel-based adaptive superimposed block motion compensation apparatus 450 according to another embodiment of the present invention compares the input residual pixel with the set first information, and determines the absolute value of the input residual pixel. If it is larger than the value of the first information, an adaptive overlapping block motion compensation unit 455 for adaptively performing overlapping block motion compensation and block motion compensation, and otherwise performing overlapping block motion compensation.

상기 제 1 정보는 도 2의 동영상 부호화 장치(200)의 움직임 추정/보상부(210)로부터 생성되어 제공된 것으로서, 전술한 바와 같이 인접한 블록의 움직임 벡터를 사용하여 움직임 보상된 블록과 현재 움직임 보상 블록 간의 화소 값의 차이를 기반으로 설정된 것이다. 상기 제 1 정보의 구체적 생성 과정은 도 2-3 및 도 6을 참조로 설명된 실시예와 동일하다.The first information is generated and provided from the motion estimation / compensation unit 210 of the video encoding apparatus 200 of FIG. 2. As described above, the motion compensated block and the current motion compensation block using the motion vectors of adjacent blocks. It is set based on the difference in pixel values. The process of generating the first information is the same as the embodiment described with reference to FIGS. 2-3 and 6.

도 6은 본 발명의 일 실시예에 따른 화소 기반 적응 중첩 블록 움직임 보상 방법의 흐름도로서, 도 2의 움직임 추정/보상부(210) 즉, 도 3의 화소기반 적응 중첩 블록 움직임 보상장치(210)에 적용하여 설명한다.FIG. 6 is a flowchart of a pixel-based adaptive superimposed block motion compensation method according to an embodiment of the present invention, and the motion estimation / compensation unit 210 of FIG. 2, that is, the pixel-based adaptive superimposed block motion compensation apparatus 210 of FIG. 3. The description will apply to.

먼저, 이득/손실 산출부(211)에서 블록 움직임 보상에 대한 중첩 블록 움직임 보상의 이득과 손실을 산출하고, 차이 산출부(212)에서 인접한 블록의 움직임 벡터를 사용하여 움직임 보상된 블록과 현재 움직임 보상 블록 간의 화소 값의 차이 DN(x,y)를 산출한 후, 기준 잔여 화소 산출부(213)에서 상기 산출된 이득과 손실이 상기 산출된 차이 DN(x,y)를 기반으로 설정된 기준값을 초과하는 화소들에 대하여 화소값의 절대치가 가장 작은 제 1 잔여화소를 산출한다(S610).First, the gain / loss calculator 211 calculates gain and loss of the overlapped block motion compensation for block motion compensation, and the difference calculator 212 uses the motion vector of the adjacent block to compensate for the motion and the current motion. After calculating the difference D N (x, y) of the pixel values between the compensation blocks, the gain and loss calculated by the reference residual pixel calculator 213 are set based on the calculated difference D N (x, y). The first residual pixel having the smallest absolute value of the pixel value is calculated for the pixels exceeding the reference value (S610).

이어, 기준 잔여 화소 산출부(213)에서 상기 산출된 이득과 손실이 상기 기준값 이하인 화소들에 대하여 화소값의 절대치가 가장 큰 제 2 잔여화소를 산출한다(S620).Subsequently, the reference residual pixel calculator 213 calculates a second residual pixel having the largest absolute value of the pixel value for pixels whose gain and loss are equal to or less than the reference value (S620).

이어, 정보 기록부(214)에서 상기 제 1 잔여화소 및 상기 제 2 잔여화소 중 더 큰 값을 제 1 정보로 하여 화소 단위보다 큰 일정 단위, 예를 들어, 블록 경계 단위, 블록 단위, 영상의 일부 단위 및 영상 단위 중 하나의 단위로 기록한다(S630).Subsequently, the information recording unit 214 uses a larger value of the first residual pixel and the second residual pixel as the first information, and a predetermined unit larger than the pixel unit, for example, a block boundary unit, a block unit, and a part of an image. In operation S630, one unit and one image unit are recorded.

마지막으로, 적응 중첩 움직임 보상부(215)에서, 입력된 화소 또는 수신된 잔여화소의 절대치를 상기 기록된 제 1 정보와 비교하여, 상기 입력된 화소 또는 상기 수신된 잔여화소의 절대치값이 상기 기록된 제 1 정보의 값보다 큰 경우 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행하고, 그렇지 않은 경우에 대해서는 중첩 블록 움직임 보상을 실시한다(S640).Finally, in the adaptive superimposition motion compensator 215, the absolute value of the input pixel or the received residual pixel is compared with the recorded first information, so that the absolute value of the input pixel or the received residual pixel is recorded. If it is larger than the value of the first information, the overlapped block motion compensation and the block motion compensation are adaptively performed. Otherwise, the overlapped block motion compensation is performed (S640).

본 발명의 다른 실시예에 따른 화소 기반 적응 중첩 블록 움직임 보상 방법으로서, 도 6의 단계 S640은 도 4의 움직임 추정/보상부(450) 즉, 도 5의 화소 기반 적응 중첩 블록 움직임 보상장치(450)의 적응 중첩 움직임 보상부(455)에서 동일하게 실시된다. 이때, 제 1 정보는 도 2의 동영상 부호화 장치(200)의 움직임 추정/보상부(210)로부터 생성되어 도 4의 동영상 복호화 장치(400)로 제공된다.As a pixel-based adaptive superimposed block motion compensation method according to another embodiment of the present invention, step S640 of FIG. 6 is the motion estimation / compensation unit 450 of FIG. 4, that is, the pixel-based adaptive superimposed block motion compensation apparatus 450 of FIG. 5. In the adaptive overlapping motion compensator 455 of FIG. In this case, the first information is generated from the motion estimation / compensation unit 210 of the video encoding apparatus 200 of FIG. 2 and provided to the video decoding apparatus 400 of FIG. 4.

이어, 전술된 본 발명에 대한 보다 구체적인 이해를 위해 본 발명에 따른 구체적인 일 예를 설명한다.Next, a specific example according to the present invention will be described for a more detailed understanding of the present invention described above.

본 발명의 상세한 설명을 위하여, 우선 H.263("Video coding for low bit rate communication", Draft, ITU-T Recommendation H.263, Sept. 1997)의 중첩 블록 움직임 보상 기법에 대해 설명한다.For detailed description of the present invention, first, an overlapping block motion compensation technique of H.263 ("Video coding for low bit rate communication", Draft, ITU-T Recommendation H.263, Sept. 1997) will be described.

H.263의 중첩 블록 움직임 보상은, 잔여 신호의 이산 여현 변환 (Discrete Cosine Transform) 단위인 8x8 블록을 단위로, 다음의 [식1]과 같은 계산을 통해 이루어진다.Overlapping block motion compensation in H.263 is performed by the following equation in the unit of 8x8 block which is a unit of discrete cosine transform of residual signal.

[식 1][Equation 1]

Figure 112008053315504-PAT00001
Figure 112008053315504-PAT00001

여기서 는 H.263의 중첩 블록 움직임 보상에 의해 생성될 움직임 보상 화소 값을 의미하고, 좌표

Figure 112008053315504-PAT00002
는 8x8 블록 내 화소의 위치를 표현하는 것으로 블록의 최 좌상 위치를 (0,0)으로 하여 각기 0에서 7까지의 값을 가지게 된다. 또한
Figure 112008053315504-PAT00003
는 현재 복원 대상인 8x8 블록의 움직임 보상 화소 값을 의미하는 것으로, 현재 블록을 위해 전송되어 온 움직임 벡터를
Figure 112008053315504-PAT00004
라 하면, 다음의 [식2]를 통해 구해진다.Here, means the motion compensation pixel value to be generated by the overlap block motion compensation of H.263, and coordinates
Figure 112008053315504-PAT00002
Denotes the position of the pixel in the 8x8 block, and has a value from 0 to 7, with the leftmost position of the block as (0,0). Also
Figure 112008053315504-PAT00003
Denotes the motion compensation pixel value of the 8x8 block to be restored currently, and indicates the motion vector transmitted for the current block.
Figure 112008053315504-PAT00004
In this case, the following equation is obtained.

[식 2][Equation 2]

Figure 112008053315504-PAT00005
Figure 112008053315504-PAT00005

여기서

Figure 112008053315504-PAT00006
는 이전 복원된 영상의
Figure 112008053315504-PAT00007
위치에서의 화소 값을 의미한다.here
Figure 112008053315504-PAT00006
Of the previously restored image
Figure 112008053315504-PAT00007
It means the pixel value at the position.

[식1]에서,

Figure 112008053315504-PAT00008
은 현재 복원 대상인 블록에 인접한 인접 경계 블록 (Neighboring Block)을 지칭하는 것으로,
Figure 112008053315504-PAT00009
,
Figure 112008053315504-PAT00010
,
Figure 112008053315504-PAT00011
, 혹은
Figure 112008053315504-PAT00012
의 값을 가지게 되며, 이는 각각 현재 블록의 위쪽 (Top), 아래쪽 (Bottom), 왼쪽 (Left), 그리고 오른쪽 (Right) 경계에 인접한 블록 인덱스를 의미한다. 따라서
Figure 112008053315504-PAT00013
일 때,
Figure 112008053315504-PAT00014
Figure 112008053315504-PAT00015
와 같이 구해지고, 여기서
Figure 112008053315504-PAT00016
는 현재 블록 위쪽에 인접한 블록을 위해 전송되어 온 움직임 벡터를 뜻한다. 이와 유사하게,
Figure 112008053315504-PAT00017
이 다른 값을 가지는 경우에도 인접 블록의 움직임 벡터와 이전 복원 영상을 이용하여
Figure 112008053315504-PAT00018
를 구할 수 있다. 마지막으로, [식1]에서
Figure 112008053315504-PAT00019
Figure 112008053315504-PAT00020
는 현재 블록의 움직임 벡터로 복원 된 화소 블록
Figure 112008053315504-PAT00021
과 주변 블록의 움직임 벡터로 복원 된 화소 블록
Figure 112008053315504-PAT00022
에 곱해 질
Figure 112008053315504-PAT00023
위치에서의 가중치를 의미하는데, 각 위치에서의 가중치 행렬을 도 7에 나타내었다.In [Equation 1],
Figure 112008053315504-PAT00008
Refers to a neighboring block adjacent to the block currently being restored.
Figure 112008053315504-PAT00009
,
Figure 112008053315504-PAT00010
,
Figure 112008053315504-PAT00011
, or
Figure 112008053315504-PAT00012
It has the value of, which means the block index adjacent to the Top, Bottom, Left, and Right boundaries of the current block, respectively. therefore
Figure 112008053315504-PAT00013
when,
Figure 112008053315504-PAT00014
Is
Figure 112008053315504-PAT00015
Is obtained as
Figure 112008053315504-PAT00016
Denotes a motion vector transmitted for a block adjacent to the current block. Similarly,
Figure 112008053315504-PAT00017
Even with this different value, the motion vector of the adjacent block and the previous reconstructed image are used.
Figure 112008053315504-PAT00018
Can be obtained. Finally, in [Equation 1]
Figure 112008053315504-PAT00019
Wow
Figure 112008053315504-PAT00020
Pixel block reconstructed with the motion vector of the current block
Figure 112008053315504-PAT00021
Pixel blocks reconstructed with the motion vectors of the neighboring blocks
Figure 112008053315504-PAT00022
To be multiplied by
Figure 112008053315504-PAT00023
Meaning the weight at the position, the weight matrix at each position is shown in FIG.

상술한 바와 같이, H.263의 중첩 블록 움직임 보상 방식은 통계적으로 최적화된 고정 가중치 행렬을 이용하여 매 8x8 블록마다 [식 1]을 통한 움직임 보상을 수행함으로써, 기존의 블록 움직임 보상에 비해, 블록 효과를 현저히 줄여주는 효과를 나타낸다. 하지만, 복원 영상의 일부 블록들은 기존의 블록 움직임 보상에 의한 결과보다 현저하게 열화된 잔여 신호를 생성하는 것을 볼 수 있고, 상술한 종래의 기술들은 이와 같은 일부 블록들을 구분할 수 있는 각자의 독창적인 기준을 마련한 것에 해당한다. 또한, 블록 움직임 보상에 의한 결과보다 우수한 결과를 보이는 중첩 블록 움직임 보상된 블록들 중에도 인접한 모든 경계 블록들이 중첩 블록 움직임 보상 결과에 긍정적인 영향을 주는 것이 아니라는 사실을 관찰할 수 있으며, 이는, 보다 높은 성능 개선을 위해서는, 블록 단위가 아닌 블록 경계 단위 또는, 보다 세밀하게, 화소 단위의 중첩 블록 움직임 보상을 적응적으로 적용해야 할 당위성을 제공한다 할 수 있다. 이와 같은 당위적 문제를 해결하기 위하여, 블록 움직임 보상과 중첩 블록 움직임 보상을 수행하는 경우, 한 블록의 각 인접 경계 별로, 잔여 신호가 어떻게 달라지는지 설명한다.As described above, the H.263 overlapping block motion compensation scheme performs motion compensation through [Equation 1] every 8x8 block by using a statistically optimized fixed weight matrix, so that the block compared with the conventional block motion compensation Significantly reduces the effect. However, it can be seen that some blocks of the reconstructed image generate a residual signal that is significantly degraded as a result of the conventional block motion compensation, and the above-described conventional techniques have their own original criteria for distinguishing some of these blocks. It corresponds to the provision. Also, among the overlapping block motion compensated blocks that show better results than the block motion compensation result, it can be observed that not all adjacent boundary blocks have a positive effect on the overlapping block motion compensation result, which is higher. In order to improve performance, it is possible to provide a reason for adaptively applying overlapping block motion compensation in a block boundary unit rather than a block unit, or more precisely, a pixel unit. In order to solve the above-mentioned problem, when the block motion compensation and the overlapping block motion compensation are performed, how the residual signal varies for each adjacent boundary of one block will be described.

우선, 각 움직임 보상 방식에 의한 블록의 경계 별 잔여 신호 변화를 관찰하 기 위하여, 다음과 같이 현재 복원 대상 블록에 적용할 경계 별 가중치

Figure 112008053315504-PAT00024
를 재 정의한다.First, in order to observe the residual signal change of each block boundary by each motion compensation method, the weight of each boundary to be applied to the current restoration target block as follows.
Figure 112008053315504-PAT00024
Redefine.

[식 3][Equation 3]

Figure 112008053315504-PAT00025
Figure 112008053315504-PAT00025

여기서,

Figure 112008053315504-PAT00026
은 앞서와 마찬가지로
Figure 112008053315504-PAT00027
,
Figure 112008053315504-PAT00028
,
Figure 112008053315504-PAT00029
, 혹은
Figure 112008053315504-PAT00030
중 하나의 값을 가진다.here,
Figure 112008053315504-PAT00026
As before
Figure 112008053315504-PAT00027
,
Figure 112008053315504-PAT00028
,
Figure 112008053315504-PAT00029
, or
Figure 112008053315504-PAT00030
Has one of the values.

부호화를 수행할 현재 영상의 화소값을

Figure 112008053315504-PAT00031
라 정의하고, 현재 블록의 움직임 벡터를 이용해 블록 움직임 복원 된 화소를
Figure 112008053315504-PAT00032
, 그리고 인접 블록
Figure 112008053315504-PAT00033
의 움직임 벡터를 이용해 블록 움직임 복원된 화소를
Figure 112008053315504-PAT00034
라 하면, 블록 움직임 복원을 적용한 경우의 잔여 신호
Figure 112008053315504-PAT00035
와 중첩 블록 움직임 보상을 적용한 경우의 잔여신호
Figure 112008053315504-PAT00036
는 각기 다음과 같이 표현될 수 있다.Pixel value of the current image to be encoded
Figure 112008053315504-PAT00031
The pixel whose block motion is reconstructed using the motion vector of the current block
Figure 112008053315504-PAT00032
, And adjacent blocks
Figure 112008053315504-PAT00033
Block motion reconstructed pixel using
Figure 112008053315504-PAT00034
In other words, the residual signal when block motion recovery is applied
Figure 112008053315504-PAT00035
And residual signal when overlapping block motion compensation is applied
Figure 112008053315504-PAT00036
Can be expressed as

[식 4][Equation 4]

Figure 112008053315504-PAT00037
Figure 112008053315504-PAT00037

[식 5][Equation 5]

Figure 112008053315504-PAT00038
Figure 112008053315504-PAT00038

여기서, 다음의 [식 6]으로 정의 된

Figure 112008053315504-PAT00039
는 인접 블록
Figure 112008053315504-PAT00040
의 움직임 벡터를 통한 현재 블록 위치에서의 움직임 복원이 현재 블록의 움직임 벡터를 이용한 움직임 보상과 얼마나 차이가 나는지를 나타내는 차이(Difference) 측도에 해당한다.Here, defined as the following [Equation 6]
Figure 112008053315504-PAT00039
Adjacent blocks
Figure 112008053315504-PAT00040
This corresponds to a difference measure indicating how far the motion reconstruction from the current block position through the motion vector of Δ is different from the motion compensation using the motion vector of the current block.

[식 6][Equation 6]

Figure 112008053315504-PAT00041
Figure 112008053315504-PAT00041

이제, 부호기 즉, 도 2와 같은 동영상 부호화 장치(200)에서 한 블록의 특정 인접 경계 블록에 대하여, 소정의 기준을 통해, 화소 별로 블록 움직임 보상과 중첩 블록 움직임 보상을 적응적으로 적용한다고 가정하자. 이 소정의 기준은 다양한 형태가 될 수 있지만, 본 발명에서는 설명의 구체성 및 편의성을 위해 제곱 오차(Squared Error)를 사용한다. 하지만, 이는 본 발명이 제곱 오차에 국한하여 화소 별 움직임 보상을 적응적으로 선택할 수 있음을 의미하는 것이 아니고, 다양한 다른 형태의 측도에 대해서도, 후술하는 내용과 유사한 유도 과정을 통하여, 적용될 수 있다. 우선, 수신되어 복호된

Figure 112008053315504-PAT00042
위치에서의 잔여 신호를
Figure 112008053315504-PAT00043
라 하고,
Figure 112008053315504-PAT00044
인 경우를 생각해 보자. 평균 제곱 오차를 기준으로 움직임 보상 방식을 선택했기 때문에, 이는
Figure 112008053315504-PAT00045
임을 의미한다. 따라서 [식 5]를 통하여 다음을 알 수 있다.Now, suppose that the encoder, that is, the video encoding apparatus 200 as shown in FIG. 2, adaptively applies block motion compensation and overlapping block motion compensation for each pixel through a predetermined reference to a specific adjacent boundary block of one block. . Although this predetermined criterion may be in various forms, the present invention uses a squared error for the specificity and convenience of description. However, this does not mean that the present invention can adaptively select the pixel-specific motion compensation limited to the square error, and can be applied to various other types of measures through a similar derivation process as described later. First, received and decoded
Figure 112008053315504-PAT00042
The residual signal at the position
Figure 112008053315504-PAT00043
,
Figure 112008053315504-PAT00044
Consider the case. Since we chose motion compensation based on the mean squared error,
Figure 112008053315504-PAT00045
Means. Therefore, the following can be seen through [Equation 5].

[식 7][Equation 7]

Figure 112008053315504-PAT00046
Figure 112008053315504-PAT00046

마찬가지로,

Figure 112008053315504-PAT00047
인 경우, 즉
Figure 112008053315504-PAT00048
인 경우에도, [식 5]를 통하여 다음을 알 수 있다.Likewise,
Figure 112008053315504-PAT00047
If
Figure 112008053315504-PAT00048
Even in the following equation, the following can be seen.

[식 8][Equation 8]

Figure 112008053315504-PAT00049
Figure 112008053315504-PAT00049

[식 7]과 [식 8]에서, 를 결정 인자

Figure 112008053315504-PAT00050
라 놓으면, 중첩 블록 움직임 보상을 적용한 경우와 기존의 블록 움직임 보상을 적용한 경우에, 수신된 잔여 화소
Figure 112008053315504-PAT00051
을 이용하여 계산될 수 있는 결정 인자
Figure 112008053315504-PAT00052
의 범위는 도 8과와 같다. 도 8을 보면, 부호기 즉, 도 2와 같은 동영상 부호화 장치(200)에서 제곱 오차를 기준으로 화소 단위 블록 움직임 보상과 중첩 블록 움직임 보상을 수행하는 경우, 전송된 잔여 화소만으로는 부호기의 판단을 재현할 수 없는 영역이 존재한다는 것을 알 수 있다. 하지만, H.263과 같이 중첩 블록 움직임 보상을 수행하는 경우, 도 8에서 판단이 가능한 영역에서 얻을 수 있는 중첩 블록 움직임 보상의 이득과 손실을 다음의 [식 9] 및 [식 10]과 같이 생각해 보면, 수신된 잔여 신호로 부호기의 적응적 선택을 판단할 수 있는 영역은 큰 이득이나 큰 손실이 발생 하는 경우임을 알 수 있다.In equations (7) and (8),
Figure 112008053315504-PAT00050
In other words, when the overlapped block motion compensation is applied and the existing block motion compensation is applied, the received residual pixel is received.
Figure 112008053315504-PAT00051
Determinants that can be calculated using
Figure 112008053315504-PAT00052
The range of is as shown in FIG. Referring to FIG. 8, when the encoder, that is, the video encoding apparatus 200 as illustrated in FIG. 2 performs block-by-pixel block motion compensation and superimposed block motion compensation on the basis of the squared error, the judgment of the encoder may be reproduced using only the transmitted residual pixels. It can be seen that there is an unknown area. However, in the case of performing the overlapped block motion compensation as shown in H.263, the gain and loss of the overlapped block motion compensation obtained in the region that can be determined in FIG. 8 are considered as in Equations 9 and 10 below. As can be seen, the area where the adaptive selection of the encoder can be determined based on the received residual signal is a case where a large gain or a large loss occurs.

[식 9][Equation 9]

Figure 112008053315504-PAT00053
Figure 112008053315504-PAT00053

[식 10][Equation 10]

Figure 112008053315504-PAT00054
Figure 112008053315504-PAT00054

따라서 과-평탄 문제가 발생하는 영역은, 대부분 영상 내 물체의 윤곽선 부분이나 텍스쳐 영역에 해당되는 것으로, 일반적으로 매우 큰 중첩 블록 움직임 보상의 손실을 발생하는 영역임을 고려하면, 다음과 같은 구체적 실시 예를 통하여 [식 9] 및 [식 10]을 이용한 과-평탄 문제의 해결이 가능하다.Therefore, the area where the over-flat problem occurs mostly corresponds to the contour portion or the texture area of the object in the image. Considering that the region generally generates a large loss of overlapping block motion compensation, the following specific embodiments are described. It is possible to solve the over-flat problem using [Equation 9] and [Equation 10] through.

다음은 상술한 잔여 신호 해석 즉, [식 9] 및 [식 10]을 이용하여, 화소 단위 움직임 보상의 방식을 적응적으로 선택할 수 있는 본 발명의 방법의 구체적인 일 예로서, 도 3의 화소 기반 적응 중첩 블록 움직임 보상장치(210) 및 도 6의 본 발명에 따른 방법에 적용하여 설명한다.The following is a specific example of the method of the present invention, which can adaptively select a method of pixel-by-pixel motion compensation using the above-described residual signal analysis, that is, Equation 9 and Equation 10. The adaptive overlapping block motion compensator 210 and the method according to the present invention of FIG. 6 will be described.

본 발명에서 후술하는 다음의 구체적 실시 예는, 화소 단위의 부가 정보 없이 중첩 블록 움직임 보상 및 블록 움직임 보상 방식을 화소 단위에서 적응적으로 선택할 수 있는 일 예에 해당하는 것일 뿐, 본 발명의 독창성이 후술 하는 실시 예 에 국한되지는 않는다.The following specific embodiments described below are merely examples of adaptively selecting the overlapping block motion compensation and block motion compensation scheme in pixel units without additional information in pixel units. It is not limited to the embodiment described later.

구체적 실시예 1Specific Example 1

Figure 112008053315504-PAT00055
에서 아래의 단계 1 내지 단계 4를 수행하고, 수행 된 결과에
Figure 112008053315504-PAT00056
에서 아래의 단계 1 내지 단계 4를 수행한다.
Figure 112008053315504-PAT00055
Follow steps 1 to 4 below and on the result
Figure 112008053315504-PAT00056
Perform steps 1 to 4 below.

단계 1: [식 9]와 [식 10]을 만족하는 모든 화소에 대하여 화소값의 절대치가 가장 작은 제 1 잔여 화소

Figure 112008053315504-PAT00057
를 구한다. 즉, 도 6의 단계 S610과 같이, 이득/손실 산출부(211)에서 블록 움직임 보상에 대한 중첩 블록 움직임 보상의 이득 G(x,y)과 손실 L(x,y)을 산출하고, 차이 산출부(212)에서 [식 6]을 이용하여 인접한 블록의 움직임 벡터를 사용하여 움직임 보상된 블록과 현재 움직임 보상 블록 간의 화소 값의 차이 DN(x,y)를 산출한 후, 기준 잔여 화소 산출부(213)에서 상기 산출된 이득 G(x,y)과 손실 L(x,y)이 상기 산출된 차이 DN(x,y)를 기반으로 설정된 기준값 2HN 2(x,y) x DN 2(x,y)를 초과하는 화소들에 대하여(즉, [식 9]와 [식 10]을 만족하는 모든 화소에 대하여) 그 화소값의 절대치가 가장 작은 제 1 잔여화소 |
Figure 112008053315504-PAT00058
|를 산출한다.Step 1: First residual pixel having the smallest absolute value of pixel value for all pixels satisfying [Equation 9] and [Equation 10]
Figure 112008053315504-PAT00057
Obtain That is, as in step S610 of FIG. 6, the gain / loss calculator 211 calculates the gain G (x, y) and the loss L (x, y) of the overlapped block motion compensation for the block motion compensation, and calculates the difference. After calculating the difference D N (x, y) of the pixel value between the motion compensated block and the current motion compensation block using the motion vector of the adjacent block by using Equation 6, the reference residual pixel is calculated using Equation 6 below. In the unit 213, the calculated gain G (x, y) and loss L (x, y) are set based on the calculated difference D N (x, y) 2H N 2 (x, y) x D For pixels exceeding N 2 (x, y) (ie, for all pixels satisfying [Formula 9] and [Formula 10]), the first residual pixel having the smallest absolute value of the pixel value |
Figure 112008053315504-PAT00058
Yield |

단계 2: [식 9]와 [식 10]을 만족하지 않는 나머지 화소들에 대하여 화소값의 절대치가 가장 큰 제 2 잔여 화소 ||

Figure 112008053315504-PAT00059
를 구한다. 즉, 도 6의 단계 S620과 같이, 기준 잔여 화소 산출부(213)에서 상기 산출된 이득 G(x,y)과 손실 L(x,y)이 상기 기준값 2HN 2(x,y) x DN 2(x,y) 이하인 화소들에 대하여(즉, [식 9]와 [식 10]을 만족하지 않는 나머지 화소들에 대하여) 그 화소값의 절대치가 가장 큰 제 2 잔여화소를 산출한다.Step 2: The second residual pixel having the largest absolute value of the pixel value for the remaining pixels that do not satisfy the expressions [9] and [10].
Figure 112008053315504-PAT00059
Obtain That is, as in step S620 of FIG. 6, the gain G (x, y) and the loss L (x, y) calculated by the reference residual pixel calculator 213 are the reference value 2H N 2 (x, y) x D. For pixels that are equal to or less than N 2 (x, y) (ie, for the remaining pixels that do not satisfy [Equation 9] and [Equation 10]), a second residual pixel having the largest absolute value of the pixel value is calculated.

단계 3: 단계 1과 단계 2에서 구한 상기 제 1 잔여화소 |

Figure 112008053315504-PAT00060
|및 상기 제 2 잔여화소 |
Figure 112008053315504-PAT00061
| 중 더 큰 값을 화소 단위보다 큰 일정 단위로 기록한다. 즉, 6의 단계 S630과 같이, 정보 기록부(214)에서 상기 제 1 잔여화소 |
Figure 112008053315504-PAT00062
| 및 상기 제 2 잔여화소 |
Figure 112008053315504-PAT00063
| 중 더 큰 값을 제 1 정보로 하여 화소 단위보다 큰 일정 단위, 예를 들어, 블록 경계 단위, 블록 단위, 영상의 일부 단위 및 영상 단위 중 하나의 단위로 기록한다.Step 3: The first residual pixel obtained in step 1 and step 2 |
Figure 112008053315504-PAT00060
| And the second remaining pixel |
Figure 112008053315504-PAT00061
| The larger value is recorded in a certain unit larger than the pixel unit. That is, as in step S630 of 6, the information recording unit 214 makes the first remaining pixel |
Figure 112008053315504-PAT00062
| And the second residual pixel |
Figure 112008053315504-PAT00063
| The larger value is used as the first information and is recorded in one unit larger than the pixel unit, for example, a block boundary unit, a block unit, a part of an image, and an image unit.

단계 4: 마지막으로, 부호단 또는 복호단에서는 수신된 잔여 화소

Figure 112008053315504-PAT00064
의 절대치를 상기 기록된 제 1 정보와 비교하여, 수신된 잔여 화소
Figure 112008053315504-PAT00065
의 절대값이 상기 기록된 제 1 정보의 값보다 더 큰 경우 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행하고, 그렇지 않은 경우에 대해서는 중첩 블록 움직임 보상을 실시한다. 즉, 도 6의 단계 S640과 같이, 적응 중첩 움직임 보상부(215,455)에서 수신된 잔여화소
Figure 112008053315504-PAT00066
의 절대치를 상기 기록된 제 1 정보와 비교하여, 상기 수신된 잔여화소
Figure 112008053315504-PAT00067
의 절대값이 상기 기록된 제 1 정보의 값보다 큰 경우 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행하고, 그렇지 않은 경우에 대해서는 중첩 블록 움직임 보상을 실시한다.Step 4: Finally, the coded or decoded terminal receives the remaining pixels
Figure 112008053315504-PAT00064
The received residual pixel by comparing the absolute value of
Figure 112008053315504-PAT00065
If the absolute value of is larger than the value of the recorded first information, the overlapping block motion compensation and the block motion compensation are adaptively performed. Otherwise, the overlapping block motion compensation is performed. That is, as in step S640 of FIG. 6, the residual pixels received by the adaptive overlapping motion compensators 215 and 455.
Figure 112008053315504-PAT00066
The received residual pixel by comparing the absolute value of
Figure 112008053315504-PAT00067
If the absolute value of is larger than the value of the recorded first information, the overlapped block motion compensation and the block motion compensation are adaptively performed. Otherwise, the overlapped block motion compensation is performed.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely illustrative of the technical idea of the present invention, and those skilled in the art to which the present invention pertains may make various modifications and changes without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention but to describe the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be interpreted by the following claims, and all technical ideas within the scope equivalent thereto should be construed as being included in the scope of the present invention.

이상 설명한 바와 같이, 본 발명은 동영상 부호화 및 복호화 기술 분야에 적용되어, 화소 단위의 부가 정보 없이 화소 단위까지 움직임 보상 방식을 적응적으로 선택할 수 있도록 함으로써, 매우 적은 부가 정보만으로 부호화해야 할 블록 경계부의 잔여 신호 에너지를 크게 감소시켜 비디오 압축 장치의 압축 성능을 크게 향상시키고, 나아가 같은 비트(또는 정보량)를 사용하는 경우 보다 개선된 비디오 화질을 얻을 수 있는 효과를 발생하는 매우 유용한 발명이다.As described above, the present invention is applied to a video encoding and decoding technology field, and enables a motion compensation scheme to be adaptively selected up to a pixel level without additional information of a pixel unit, thereby requiring a block boundary portion to be encoded with very little additional information. It is a very useful invention that greatly reduces the residual signal energy, thereby greatly improving the compression performance of the video compression apparatus, and furthermore, when using the same bit (or information amount), an improved video quality can be obtained.

도 1은 화면간 예측에 사용되는, 동영상을 구성하는 동영상 프레임들을 도시한 도면,1 is a view showing video frames constituting a video, used for inter prediction;

도 2는 본 발명의 일 실시예에 따른 동영상 부호화 장치의 블록도,2 is a block diagram of a video encoding apparatus according to an embodiment of the present invention;

도 3은 본 발명의 일 실시예에 따른 화소기반 적응 중첩 블록 움직임 보상 장치의 블록도,3 is a block diagram of a pixel-based adaptive overlap block motion compensation apparatus according to an embodiment of the present invention;

도 4는 본 발명의 일 실시예에 따른 동영상 복호화 장치의 블록도,4 is a block diagram of a video decoding apparatus according to an embodiment of the present invention;

도 5는 본 발명의 다른 실시예에 따른 화소기반 적응 중첩 블록 움직임 보상 장치의 블록도,5 is a block diagram of a pixel-based adaptive overlap block motion compensation apparatus according to another embodiment of the present invention;

도 6은 본 발명의 일 실시예에 따른 화소기반 적응 중첩 블록 움직임 보상 방법의 흐름도,6 is a flowchart of a pixel-based adaptive overlap block motion compensation method according to an embodiment of the present invention;

도 7은 본 발명의 일 실시예에 따른 H.263 중첩 블록 움직임 복원의 가중치 행렬을 나타낸 도면,7 is a diagram illustrating a weight matrix of H.263 overlapping block motion recovery according to an embodiment of the present invention;

도 8은 본 발명의 일 실시예에 따른 수신된 잔여 히소로부터 계산된 결정인자의 범위를 나타낸 도면이다.FIG. 8 is a diagram illustrating a range of determinants calculated from received residual histories according to an embodiment of the present invention.

< 도면의 주요 부분에 대한 부호의 설명 ><Description of Symbols for Main Parts of Drawings>

210: 움직임 추정/보상부, 화소기반 적응중첩블록움직임 보상장치210: motion estimation / compensation unit, pixel-based adaptive overlap block motion compensation device

211: 이득/손실 산출부 212: 차이 산출부211: gain / loss calculator 212: difference calculator

213: 기준 잔여화소 산출부 214: 정보 기록부213: reference pixel calculating unit 214: information recording unit

215: 적응 중첩 블록 움직임 보상부215: adaptive overlapping block motion compensator

220: 감산부 230: 변환부220: subtraction unit 230: conversion unit

240: 양자화부 250: 부호화부240: quantizer 250: encoder

260: 역양자화부 270: 역변환부260: inverse quantization unit 270: inverse transform unit

410: 복호화부 420: 역양자화부410: decoder 420: inverse quantization unit

430: 역변환부 440: 가산부430: inverse transform unit 440: adder

450: 움직임 추정/보상부, 화소기반 적응중첩블록움직임 보상장치450: motion estimation / compensation unit, pixel-based adaptive nesting block motion compensation device

455: 적응 중첩 블록 움직임 보상부455: adaptive overlapping block motion compensator

Claims (15)

블록 움직임 보상에 대한 중첩 블록 움직임 보상의 이득과 손실을 구하는 이득/손실 산출부;A gain / loss calculator for calculating gains and losses of overlapping block motion compensation for block motion compensation; 인접한 블록의 움직임 벡터를 사용하여 움직임 보상된 블록과 현재 움직임 보상 블록 간의 화소 값의 차이 DN(x,y)를 구하는 차이 산출부;A difference calculator for calculating a difference D N (x, y) of pixel values between a motion compensated block and a current motion compensation block using a motion vector of an adjacent block; 상기 이득과 손실이 상기 차이 DN(x,y)를 기반으로 설정된 기준값을 초과하는 화소들에 대하여 화소값의 절대치가 가장 작은 제 1 잔여화소를 구하고, 상기 이득과 손실이 상기 기준값 이하인 화소들에 대하여 화소값의 절대치가 가장 큰 제 2 잔여화소를 구하는 기준 잔여화소 산출부;The first residual pixel having the smallest absolute value of the pixel value is obtained for the pixels whose gain and loss exceed the reference value set based on the difference D N (x, y), and the pixels whose gain and loss are less than or equal to the reference value. A reference residual pixel calculation unit for obtaining a second residual pixel having the largest absolute value of the pixel value with respect to; 상기 제 1 잔여화소 및 상기 제 2 잔여화소 중 더 큰 값을 제 1 정보로 하여 화소 단위보다 큰 일정 단위로 기록하는 정보 기록부; 및An information recording unit configured to record a larger value of the first residual pixel and the second residual pixel as a first information in a predetermined unit larger than a pixel unit; And 입력된 잔여화소를 상기 기록된 제 1 정보와 비교하여, 상기 입력된 잔여화소의 절대치가 상기 기록된 제 1 정보의 값보다 큰 경우 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행하고, 그렇지 않은 경우에 대해서는 중첩 블록 움직임 보상을 실시하는 적응 중첩 블록 움직임 보상부Comparing the input residual pixel with the recorded first information, and adaptively performing overlapping block motion compensation and block motion compensation when the absolute value of the input residual pixel is larger than the value of the recorded first information; If not, an adaptive overlapping block motion compensator for performing overlapping block motion compensation 를 포함하는 것을 특징으로 하는 화소 기반 적응 중첩 블록 움직임 보상 장치.Pixel-based adaptive superimposed block motion compensation apparatus comprising a. 제 1 항에 있어서,The method of claim 1, 상기 기준 잔여화소 산출부는, 제곱 오차를 사용하여 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행할 경우, 상기 기준값을 2HN 2(x,y) x DN 2(x,y)로 설정하고, 여기서 HN(x,y)는 주변 블록의 움직임 벡터로 복원된 화소 블록에 곱해질 (x,y) 위치에서의 가중치인 것을 특징으로 하는 화소 기반 적응 중첩 블록 움직임 보상 장치.The reference residual pixel calculator sets the reference value to 2H N 2 (x, y) x D N 2 (x, y) when adaptively performing overlapping block motion compensation and block motion compensation using a squared error. And wherein H N (x, y) is a weight at a position (x, y) to be multiplied by the pixel block reconstructed by the motion vector of the neighboring block. 제 1 항에 있어서,The method of claim 1, 상기 정보 기록부는 상기 일정 단위를 블록 경계 단위, 블록 단위, 영상의 일부 단위, 및 영상 단위 중 하나로 설정하는 것을 특징으로 하는 화소 기반 적응 중첩 블록 움직임 보상 장치.And the information recording unit sets the predetermined unit to one of a block boundary unit, a block unit, a partial unit of an image, and an image unit. 제 1 항에 있어서,The method of claim 1, 상기 이득/손실 산출부, 상기 차이 산출부, 상기 기준 잔여화소 산출부, 및 상기 정보 기록부는 부호기내에 구비되고, 상기 움직임 추정/보상부는 상기 부호기와 이에 대응하는 복호기에 각각 구비된 것을 특징으로 하는 화소 기반 적응 중첩 블록 움직임 보상 장치.The gain / loss calculator, the difference calculator, the reference residual pixel calculator, and the information recorder are provided in an encoder, and the motion estimator / compensator is provided in the encoder and a decoder corresponding thereto. Pixel-based Adaptive Overlapping Block Motion Compensation Device. 제 4 항에 있어서,The method of claim 4, wherein 상기 부호기는 상기 제 1 정보를 상기 일정 단위로 상기 복호기에 전달하는 것을 특징으로 하는 화소 기반 적응 중첩 블록 움직임 보상 장치.And the encoder transmits the first information to the decoder on a predetermined basis. (a) 블록 움직임 보상에 대한 중첩 블록 움직임 보상의 이득과 손실이, 인접한 블록의 움직임 벡터를 사용하여 움직임 보상된 블록과 현재 움직임 보상 블록 간의 화소 값의 차이 DN(x,y)를 기반으로 설정된 기준값을 초과하는 화소들에 대하여 화소값의 절대치가 가장 작은 제 1 잔여화소를 구하는 단계;(a) Gain and loss of overlapping block motion compensation for block motion compensation is based on the difference D N (x, y) between the pixel value of the motion compensated block and the current motion compensation block using the motion vector of the adjacent block. Obtaining a first residual pixel having the smallest absolute value of the pixel value for the pixels exceeding the set reference value; (b) 상기 이득과 상기 손실이 상기 기준값 이하인 화소들에 대하여 화소값의 절대치가 가장 큰 제 2 잔여화소를 구하는 단계;(b) obtaining a second residual pixel having the largest absolute value of a pixel value for pixels whose gain and loss are less than or equal to the reference value; (c) 상기 제 1 잔여화소 및 상기 제 2 잔여화소 중 더 큰 값을 제 1 정보로 하여 화소 단위보다 큰 일정 단위로 기록하는 단계; 및(c) recording a larger value of the first residual pixel and the second residual pixel as first information and in a predetermined unit larger than the pixel unit; And (d) 수신된 잔여화소의 절대치를 상기 기록된 제 1 정보와 비교하여, 상기 수신된 잔여화소의 절대치가 상기 기록된 제 1 정보의 값보다 큰 경우 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행하고, 그렇지 않은 경우에 대해서는 중첩 블록 움직임 보상을 실시하는 단계(d) adaptively superimpose block motion compensation and block motion compensation when the absolute value of the received residual pixel is greater than the value of the recorded first information by comparing the absolute value of the received residual pixel with the recorded first information. If not, perform the overlap block motion compensation if not 를 포함하는 것을 특징으로 하는 화소 기반 적응 중첩 블록 움직임 보상 방법.Pixel-based adaptive overlapping block motion compensation method comprising a. 제 6 항에 있어서,The method of claim 6, 제곱 오차를 사용하여 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행할 경우, 상기 기준값은 2HN 2(x,y) X DN 2(x,y)이고, 여기서 HN(x,y)는 주변 블록의 움직임 벡터로 복원된 화소 블록에 곱해질 (x,y) 위치에서의 가중치인 것을 특징으로 하는 화소 기반 적응 중첩 블록 움직임 보상 방법.When adaptively performing overlapping block motion compensation and block motion compensation using a squared error, the reference value is 2H N 2 (x, y) XD N 2 (x, y), where H N (x, y) Is a weight at the position (x, y) to be multiplied by the pixel block reconstructed by the motion vector of the neighboring block. 제 6 항에 있어서,The method of claim 6, 상기 일정 단위는 블록 경계 단위, 블록 단위, 영상의 일부 단위, 및 영상 단위 중 하나인 것을 특징으로 하는 화소 기반 적응 중첩 블록 움직임 보상 방법.And the predetermined unit is one of a block boundary unit, a block unit, a partial unit of an image, and an image unit. 제 6 항에 있어서,The method of claim 6, 상기 단계 (a) 내지 (c)는 부호기에서 수행되고, 상기 단계 (d)는 상기 부호기와 이에 대응하는 복호기에서 각각 수행되는 것을 특징으로 하는 화소 기반 적응 중첩 블록 움직임 보상 방법.The steps (a) to (c) are performed in the encoder, and the step (d) is performed in the encoder and the corresponding decoder, respectively. 제 9 항에 있어서,The method of claim 9, 상기 제 1 정보는 상기 일정 단위로 상기 부호기로부터 상기 복호기에 전달되는 것을 특징으로 하는 화소 기반 적응 중첩 블록 움직임 보상 방법.And the first information is transmitted from the encoder to the decoder on a predetermined basis. 인접한 블록의 움직임 벡터를 사용하여 움직임 보상된 블록과 현재 움직임 보상 블록 간의 화소 값의 차이를 기반으로 블록 움직임 보상과 중첩 블록 움직임 보상을 적응적으로 수행하여, 영상의 현재 블록의 각 화소의 예측 화소값을 예측하는 움직임 추정/보상부;Based on the difference in pixel values between the motion compensated block and the current motion compensation block using the motion vectors of the adjacent blocks, the block motion compensation and the overlapping block motion compensation are adaptively performed to predict the pixels of each pixel of the current block of the image. A motion estimator / compensator for predicting a value; 상기 현재 블록의 각 화소의 원 화소값과 상기 현재 블록의 각 화소의 예측 화소값의 차이값을 계산하여 잔차신호를 생성하는 감산부;A subtraction unit configured to generate a residual signal by calculating a difference value between an original pixel value of each pixel of the current block and a predicted pixel value of each pixel of the current block; 상기 잔차신호를 주파수 계수들로 변환하는 변환부;A converter for converting the residual signal into frequency coefficients; 상기 변환된 주파수 계수들을 양자화하는 양자화부; 및A quantizer for quantizing the transformed frequency coefficients; And 상기 양자화된 주파수 계수들을 비트스트림으로 부호화하는 부호화부An encoder that encodes the quantized frequency coefficients into a bitstream 를 포함하는 것을 특징으로 하는 동영상 부호화 장치.Video encoding apparatus comprising a. 제 11 항에 있어서,The method of claim 11, 상기 움직임 추정 보상부는,The motion estimation compensator, 블록 움직임 보상에 대한 중첩 블록 움직임 보상의 이득과 손실을 구하는 이득/손실 산출부; 인접한 블록의 움직임 벡터를 사용하여 움직임 보상된 블록과 현재 움직임 보상 블록 간의 화소 값의 차이 DN(x,y)를 구하는 차이 산출부; 상기 이득과 손실이 상기 차이 DN(x,y)를 기반으로 설정된 기준값을 초과하는 화소들에 대하여 화소값의 절대치가 가장 작은 제 1 잔여화소를 구하고, 상기 이득과 손실이 상기 기준값 이하인 화소들에 대하여 화소값의 절대치가 가장 큰 제 2 잔여화소를 구하는 기준 잔여화소 산출부; 상기 제 1 잔여화소 및 상기 제 2 잔여화소 중 더 큰 값을 제 1 정보로 하여 화소 단위보다 큰 일정 단위로 기록하는 정보 기록부; 및 입력된 화소를 상기 기록된 제 1 정보와 비교하여, 상기 입력된 화소의 절대치가 상기 기록된 제 1 정보의 값보다 큰 경우 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행하고, 그렇지 않은 경우에 대해서는 중첩 블록 움직임 보상을 실시하는 적응 중첩 블록 움직임 보상부를 포함하여 구성된 것을 특징으로 하는 동영상 부호화 장치.A gain / loss calculator for calculating gains and losses of overlapping block motion compensation for block motion compensation; A difference calculator for calculating a difference D N (x, y) of pixel values between a motion compensated block and a current motion compensation block using a motion vector of an adjacent block; The first residual pixel having the smallest absolute value of the pixel value is obtained for the pixels whose gain and loss exceed the reference value set based on the difference D N (x, y), and the pixels whose gain and loss are less than or equal to the reference value. A reference residual pixel calculation unit for obtaining a second residual pixel having the largest absolute value of the pixel value with respect to; An information recording unit configured to record a larger value of the first residual pixel and the second residual pixel as a first information in a predetermined unit larger than a pixel unit; And comparing the input pixel with the recorded first information, and adaptively performing overlapping block motion compensation and block motion compensation when the absolute value of the input pixel is larger than the value of the recorded first information. In this case, the video encoding apparatus is configured to include an adaptive overlapping block motion compensator for performing overlapping block motion compensation. 입력된 잔여화소의 절대치를 설정된 제 1 정보와 비교하여, 상기 입력된 잔여화소의 절대치가 상기 제 1 정보의 값보다 큰 경우 중첩 블록 움직임 보상과 블록 움직임 보상을 적응적으로 수행하고, 그렇지 않은 경우에 대해서는 중첩 블록 움직임 보상을 실시하는 적응 중첩 블록 움직임 보상부를 구비하되,When the absolute value of the input residual pixel is larger than the value of the first information, the overlapping block motion compensation and the block motion compensation are adaptively performed, compared with the set first information. An adaptive overlapping block motion compensator for performing overlapping block motion compensation is provided. 상기 제 1 정보는 인접한 블록의 움직임 벡터를 사용하여 움직임 보상된 블록과 현재 움직임 보상 블록 간의 화소 값의 차이를 기반으로 설정된 것을 특징으로 하는 동영상 복호화 장치.And the first information is set based on a difference in pixel values between a motion compensated block and a current motion compensation block using a motion vector of an adjacent block. 제 13 항에 있어서,The method of claim 13, 블록 움직임 보상에 대한 중첩 블록 움직임 보상의 이득과 손실이, 인접한 블록의 움직임 벡터를 사용하여 움직임 보상된 블록과 현재 움직임 보상 블록 간의 화소 값의 차이 DN(x,y)를 기반으로 설정된 기준값을 초과하는 화소들에 대하여 화소값의 절대치가 가장 작은 제 1 잔여화소를 구하고, 상기 이득과 상기 손실이 상기 기준값 이하인 화소들에 대하여 화소값의 절대치가 가장 큰 제 2 잔여화소를 구하고, 상기 제 1 잔여화소 및 상기 제 2 잔여화소 중 더 큰 값이 상기 제 1 정보로 설정된 것을 특징으로 하는 동영상 복호화 장치.The gain and loss of the overlapped block motion compensation for the block motion compensation are based on the reference value set based on the difference D N (x, y) of the pixel value between the motion compensated block and the current motion compensation block using the motion vector of the adjacent block. The first residual pixel having the smallest absolute value of the pixel value is obtained for the excess pixels, and the second residual pixel having the largest absolute value of the pixel value is obtained for the pixels whose gain and loss are less than or equal to the reference value. And a larger value of the residual pixel and the second residual pixel is set as the first information. 제 14 항에 있어서,The method of claim 14, 상기 제 1 정보는 동영상 부호화 장치에서 블록 경계 단위, 블록 단위, 영상의 일부 단위, 및 영상 단위 중 하나의 단위로 기록되어 상기 동영상 복호화 장치로 전달된 것을 특징으로 하는 동영상 복호화 장치.And the first information is recorded in one of a block boundary unit, a block unit, a partial unit of an image, and an image unit in the video encoding apparatus and transmitted to the video decoding apparatus.
KR1020080072246A 2008-07-24 2008-07-24 Video encoding/decoding apparatus and pixel-based adaptive overlapped block motion compensation method and apparatus KR101527150B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080072246A KR101527150B1 (en) 2008-07-24 2008-07-24 Video encoding/decoding apparatus and pixel-based adaptive overlapped block motion compensation method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080072246A KR101527150B1 (en) 2008-07-24 2008-07-24 Video encoding/decoding apparatus and pixel-based adaptive overlapped block motion compensation method and apparatus

Publications (2)

Publication Number Publication Date
KR20100011154A true KR20100011154A (en) 2010-02-03
KR101527150B1 KR101527150B1 (en) 2015-06-10

Family

ID=42085661

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080072246A KR101527150B1 (en) 2008-07-24 2008-07-24 Video encoding/decoding apparatus and pixel-based adaptive overlapped block motion compensation method and apparatus

Country Status (1)

Country Link
KR (1) KR101527150B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113645466A (en) * 2021-06-29 2021-11-12 深圳市迪威码半导体有限公司 Image removal block based on random probability

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100213021B1 (en) * 1994-11-29 1999-08-02 윤종용 Repeated motion estimation and compensation method
US5764805A (en) * 1995-10-25 1998-06-09 David Sarnoff Research Center, Inc. Low bit rate video encoder using overlapping block motion compensation and zerotree wavelet coding
KR100605746B1 (en) * 2003-06-16 2006-07-31 삼성전자주식회사 Motion compensation apparatus based on block, and method of the same

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113645466A (en) * 2021-06-29 2021-11-12 深圳市迪威码半导体有限公司 Image removal block based on random probability
CN113645466B (en) * 2021-06-29 2024-03-08 深圳市迪威码半导体有限公司 Image deblocking algorithm based on random probability

Also Published As

Publication number Publication date
KR101527150B1 (en) 2015-06-10

Similar Documents

Publication Publication Date Title
KR101553850B1 (en) / Video encoding/decoding apparatus and method and apparatus of adaptive overlapped block motion compensation using adaptive weights
EP1404136B1 (en) Image encoder, image decoder, image encoding method, and image decoding method
KR101444675B1 (en) Method and Apparatus for Encoding and Decoding Video
KR101377660B1 (en) Motion Vector Encoding/Decoding Method and Apparatus Using Multiple Motion Vector Estimation and Video Encoding/Decoding Method and Apparatus Using Same
US9571851B2 (en) Inter prediction method and apparatus using adjacent pixels, and image encoding/decoding method and apparatus using same
KR20090099234A (en) Method and apparatus for video encoding and decoding
KR20080073157A (en) Method and apparatus for encoding and decoding based on inter prediction
JP2009530960A (en) Illumination change compensation motion prediction encoding and decoding method and apparatus
KR20110058702A (en) Video encoding/decoding method and apparatus based on adaptive second prediction, and recording medium therefor
KR20090095317A (en) Method and apparatus for encoding and decoding image
KR101543298B1 (en) / Video encoding/decoding apparatus and Variable OBMC apparatus and method
KR20110042705A (en) Inter prediction method and apparatus using motion information based adjacent pixels and video coding method and apparatus using same
CN115118976A (en) Image coding method, readable medium and electronic device thereof
KR20110033511A (en) Inter prediction method and apparatus using adjacent pixels and video coding method and apparatus using same
KR101359500B1 (en) Quantization/Inverse Quantization Apparatus and Method and Video Encoding/Decoding Apparatus Using Same
KR101543301B1 (en) / / Video encoding/decoding apparatus and Hybrid Block Motion Compensation/Overlapped Block Motion Compensation method and apparatus
KR101527150B1 (en) Video encoding/decoding apparatus and pixel-based adaptive overlapped block motion compensation method and apparatus
KR101341998B1 (en) Inter Prediction Apparatus of Considering Rotational Motion and Video Encoding/Decoding Method and Apparatus Using Same
JP2007251815A (en) Re-encoding apparatus, and program for re-encoding
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
KR101379189B1 (en) Video Coding Method and Apparatus by Using Filtering Motion Compensation Frame
KR101693284B1 (en) Method and Apparatus for Encoding/Decoding of Video Data Using Global Motion-based Enconding Structure
KR101673026B1 (en) Method and Apparatus for Coding Competition-based Interleaved Motion Vector and Method and Apparatus for Encoding/Decoding of Video Data Thereof
KR20110135763A (en) Method and apparatus for context modelling and method and apparatus for encoding/decoding of video data thereof

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: 20190502

Year of fee payment: 5