상기 기술적 과제를 달성하기 위한 본 발명의 실시예에 따른 프레임 보간 장치는 제 n 프레임 및 상기 제 n 프레임에 인접하는 제 n-1 프레임을 포함하는 복수의 프레임들을 보간(interpolate)하여 보간 프레임을 생성하는 프레임 보간 장치에 있어서, 배경 분리부, 움직임 벡터 추정부 및 보간 프레임 생성부를 구비하는 것을 특징으로 한다. 상기 배경 분리부는 상기 제 n 프레임의 매크로 블록과 상기 매크로 블록에 대응하는 상기 제 n-1 프레임의 매크로 블록을 비교하여 상기 제 n 프레임의 각각의 매크로 블록에 대하여 배경과 이동 객체를 분리한다. 상기 움직임 벡터 추정부는 상기 이동 객체로 판단된 제 n 프레임의 매크로 블록들에 대하여, 상기 제 n 프레임의 매크로 블록과 매칭되는 매크로 블록을 상기 제 n-1 프레임 안에 서 찾아 움직임 벡터를 추정한다. 상기 보간 프레임 생성부는 상기 추정된 움직임 벡터, 상기 제 n 프레임 및 상기 제 n-1 프레임을 이용하여 상기 보간 프레임을 생성한다.
상기 움직임 벡터 추정부는 상기 제 n 프레임의 매크로 블록과 매칭되는 매크로 블록을 상기 제 n-1 프레임의 제 1 탐색 영역 안에서 찾아 제 1 움직임 벡터를 추정하는 탐색 영역 처리부, 상기 제 n 프레임의 매크로 블록과 매칭되는 매크로 블록을 상기 제 n-1 프레임의 제 2 탐색 영역 안에서 찾아 제 2 움직임 벡터를 추정하는 수정된 탐색 영역 처리부 및 상기 제 n 프레임의 매크로 블록과 상기 제 n 프레임의 매크로 블록에 대응하는 제 n-1 프레임의 매크로 블록을 매칭시켜 제 3 움직임 벡터를 추정하는 현재 매크로 블록 처리부를 더 구비하고, 상기 제 1 탐색 영역은 상기 제 n-1 프레임의 매크로 블록들을 포함하며, 상기 제 2 탐색 영역은 상기 이동 객체로 판단된 제 n 프레임의 매크로 블록들에 대응하는 상기 제 n-1 프레임의 매크로 블록들을 포함하는 것이 바람직하다.
상기 수정된 탐색 영역 처리부는 상기 매칭되는 매크로 블록 별로 SAD(Sum of Absolute Difference)값을 계산하여 상기 SAD값이 가장 작은 제 n-1 프레임의 매크로 블록과 상기 제 n 프레임의 매크로 블록간의 상기 제 2 움직임 벡터를 추정하는 것이 바람직하다.
상기 보간 프레임 생성부는 상기 추정된 제 1 움직임 벡터, 상기 추정된 제 2 움직임 벡터 및 상기 추정된 제 3 움직임 벡터 중 중간값을 이용하여 상기 보간 프레임을 생성하는 것이 바람직하다.
상기 보간 프레임 생성부는 상기 제 n 프레임의 매크로 블록에 매칭되는 상기 제 n-1 프레임의 매크로 블록이 명확하게 존재하는 경우, 상기 제 n 프레임의 매크로 블록과 상기 제 n-1 프레임의 매크로 블록의 중간값을 이용하여 상기 보간 프레임을 생성하는 것이 바람직하다.
상기 보간 프레임 생성부는 상기 제 n 프레임의 매크로 블록에 매칭되는 상기 제 n-1 프레임의 매크로 블록이 명확하게 존재하지 않는 경우, 상기 추정된 움직임 벡터의 방향에 따라 상기 제 n 프레임의 매크로 블록 또는 상기 제 n-1 프레임의 매크로 블록을 이용하여 상기 보간 프레임을 생성하는 것이 바람직하다.
상기 움직임 벡터 추정부는 상기 제 n 프레임의 매크로 블록과 매칭되는 매크로 블록을 상기 제 n-1 프레임의 제 1 탐색 영역 안에서 찾아 움직임 벡터를 추정하고, 상기 탐색 영역은 상기 매칭되는 제 n 프레임의 매크로 블록에 대응하는 상기 제 n-1 프레임의 매크로 블록 및 상기 대응하는 매크로 블록에 인접하는 상기 제 n-1 프레임의 매크로 블록들을 포함하는 것이 바람직하다.
상기 기술적 과제를 달성하기 위한 본 발명의 다른 실시예에 따른 프레임 보간 장치는 제 n 프레임 및 상기 제 n 프레임에 인접하는 제 n-1 프레임을 포함하는 복수의 프레임들을 보간(interpolate)하여 보간 프레임을 생성하는 프레임 보간 장치에 있어서, 배경 분리부, 움직임 벡터 추정부 및 보간 프레임 생성부를 구비하는 것을 특징으로 한다. 상기 배경 분리부는 상기 제 n 프레임의 매크로 블록과 상기 매크로 블록에 대응하는 상기 제 n-1 프레임의 매크로 블록을 비교하여 상기 제 n 프레임의 각각의 매크로 블록에 대하여 배경과 이동 객체를 분리한다. 상기 움직임 벡터 추정부는 상기 이동 객체로 판단된 제 n 프레임의 매크로 블록들에 대하여, 상기 제 n 프레임의 매크로 블록과 매칭되는 매크로 블록을 상기 제 n-1 프레임의 탐색 영역 안에서 찾아 움직임 벡터를 추정한다. 상기 보간 프레임 생성부는 상기 추정된 움직임 벡터, 상기 제 n 프레임 및 상기 제 n-1 프레임을 이용하여 상기 보간 프레임을 생성한다. 상기 탐색 영역은 상기 이동 객체로 판단된 제 n 프레임의 매크로 블록들에 대응하는 상기 제 n-1 프레임의 매크로 블록들을 포함한다.
상기 다른 기술적 과제를 달성하기 위한 본 발명의 실시예에 따른 프레임 보간 방법은 제 n 프레임 및 상기 제 n 프레임에 인접하는 제 n-1 프레임을 포함하는 복수의 프레임들을 보간(interpolate)하여 보간 프레임을 생성하는 프레임 보간 방법에 있어서, 상기 제 n 프레임의 매크로 블록과 상기 매크로 블록에 대응하는 상기 제 n-1 프레임의 매크로 블록을 비교하여 상기 제 n 프레임의 각각의 매크로 블록에 대하여 배경과 이동 객체를 분리하는 단계, 상기 이동 객체로 판단된 제 n 프레임의 매크로 블록들에 대하여, 상기 제 n 프레임의 매크로 블록과 매칭되는 매크로 블록을 상기 제 n-1 프레임 안에서 찾아 움직임 벡터를 추정하는 단계 및 상기 추정된 움직임 벡터, 상기 제 n 프레임 및 상기 제 n-1 프레임을 이용하여 상기 보간 프레임을 생성하는 단계를 구비하는 것을 특징으로 한다.
상기 다른 기술적 과제를 달성하기 위한 본 발명의 다른 실시예에 따른 프레임 보간 방법은 제 n 프레임 및 상기 제 n 프레임에 인접하는 제 n-1 프레임을 포함하는 복수의 프레임들을 보간(interpolate)하여 보간 프레임을 생성하는 프레임 보간 방법에 있어서, 상기 제 n 프레임의 매크로 블록과 상기 매크로 블록에 대응 하는 상기 제 n-1 프레임의 매크로 블록을 비교하여 상기 제 n 프레임의 각각의 매크로 블록에 대하여 배경과 이동 객체를 분리하는 단계, 상기 이동 객체로 판단된 제 n 프레임의 매크로 블록들에 대하여, 상기 제 n 프레임의 매크로 블록과 매칭되는 매크로 블록을 상기 제 n-1 프레임의 탐색 영역 안에서 찾아 움직임 벡터를 추정하는 단계 및 상기 추정된 움직임 벡터, 상기 제 n 프레임 및 상기 제 n-1 프레임을 이용하여 상기 보간 프레임을 생성하는 단계를 구비하고, 상기 탐색 영역은 상기 이동 객체로 판단된 제 n 프레임의 매크로 블록들에 대응하는 상기 제 n-1 프레임의 매크로 블록들을 포함하는 것을 특징으로 한다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 도면에 기재된 내용을 참조하여야 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 실시예에 따른 프레임 보간 장치(100)의 블록도이다.
도 1을 참조하면, 프레임 보간 장치(100)는 배경 분리부(110), 움직임 벡터 추정부(130) 및 보간 프레임 생성부(170)를 구비한다. 이하에서 프레임 보간 장치(100)는 n 번째 프레임(n은 2이상의 자연수)인 제 n 프레임과 n-1번째 프레임인 제 n-1 프레임을 보간(interpolate)하여 보간 프레임을 생성하는 경우에 대하여 설명한다. 상기 제 n 프레임은 현재 프레임일 수 있고, 상기 제 n-1 프레임은 상기 현재 프레임의 바로 이전 프레임일 수 있다. 배경 분리부(110)는 상기 제 n 프레임을 매크로 블록(MB : Macro Block) 단위로 배경(static object)과 이동 객체(moving object)를 분리한다. 즉, 상기 제 n 프레임의 매크로 블록과 상기 매크로 블록에 대응하는 상기 제 n-1 프레임의 매크로 블록을 비교하여 상기 제 n 프레임의 각각의 매크로 블록에 대하여 배경과 이동 객체를 분리한다.
움직임 벡터 추정부(130)는 상기 이동 객체로 판단된 상기 제 n 프레임의 매크로 블록들에 대하여, 상기 제 n 프레임의 매크로 블록과 매칭되는 매크로 블록을 상기 제 n-1 프레임 안에서 찾아 움직임 벡터를 추정한다. 움직임 벡터 추정부(130)는 탐색 영역 처리부(140), 수정된 탐색 영역 처리부(150) 및 현재 매크로 블록 처리부(160)를 구비할 수 있다. 탐색 영역 처리부(140)는 상기 제 n 프레임의 매크로 블록과 매칭되는 매크로 블록을 상기 제 n-1 프레임의 제 1 탐색 영역 안에서 찾아 제 1 움직임 벡터를 추정한다. 상기 제 1 탐색 영역이란 상기 매칭되는 제 n 프레임의 매크로 블록에 대응하는 제 n-1 프레임의 매크로 블록 및 상기 대응하는 매크로 블록에 인접하는 제 n-1 프레임의 매크로 블록들을 포함하는 영역이다. 즉, 탐색 영역 처리부(140)는 전역 탐색 방식(full search)에 의하여 움직임 벡터를 추정한다. 수정된 탐색 영역 처리부(150)는 상기 제 n 프레임의 매크로 블록과 매칭되는 매크로 블록을 상기 제 n-1 프레임의 제 2 탐색 영역 안에서 찾아 제 2 움직임 벡터를 추정한다. 상기 제 2 탐색 영역이란 상기 이동 객체로 판단된 상기 제 n 프레임의 매크로 블록들에 대응하는 상기 제 n-1 프레임의 매크로 블록들을 포함한다. 현재 매크로 블록 처리부(160)는 상기 제 n 프레임의 매크로 블록과 상 기 제 n 프레임의 매크로 블록에 대응하는 제 n-1 프레임의 매크로 블록을 매칭시켜 제 3 움직임 벡터를 추정한다. 배경 분리부(110), 탐색 영역 처리부(140), 수정된 탐색 영역 처리부(150) 및 현재 매크로 블록 처리부(160)에 대하여는 도 3 내지 도 6에서 보다 상세히 설명한다.
보간 프레임 생성부(170)는 상기 추정된 움직임 벡터, 상기 제 n 프레임 및 상기 제 n-1 프레임을 이용하여 상기 보간 프레임을 생성한다. 보간 프레임 생성부(170)는 상기 추정된 제 1 움직임 벡터, 상기 추정된 제 2 움직임 벡터 및 상기 추정된 제 3 움직임 벡터 중 중간값의 움직임 벡터를 이용하여 상기 보간 프레임을 생성할 수 있다. 또한, 보간 프레임 생성부(170)는 상기 제 n 프레임의 매크로 블록에 매칭되는 제 n-1 프레임의 매크로 블록이 명확하게 존재하는지 여부에 따라 다른 프레임 보간 방법을 사용함으로써 폐색(occlusion) 영역에 대한 처리가 가능하다. 보간 프레임 생성부(170)의 동작에 관하여는 도 7 내지 도 9에서 보다 상세히 설명한다.
도 2는 도 1의 배경 분리부(110)에 의하여 생성된 하나의 프레임을 매크로 블록 단위로 분할한 모습을 나타내는 도면이다.
도 2를 참조하면, 하나의 프레임을 복수의 매크로 블록(MB)으로 분할할 수 있다. 매크로 블록(MB)은 일반적으로 16*16 화소로 이루어진 블록을 사용하지만, 상기 매크로 블록(MB)을 다른 크기의 화소로 이루어진 블록으로 정의하여도 본 발명과 동일한 효과를 얻을 수 있음은 당업자에게 자명한 사항이다.
도 3은 본 발명의 실시예에 따른 프레임 보간 방법의 흐름도이다.
도 4 및 도 5는 도 1의 배경 분리부(110)의 동작을 설명하기 위하여 프레임을 매크로 블록 단위로 분할한 도면이다.
도 6은 도 1의 움직임 벡터 추정부(130)의 동작을 설명하기 위하여 프레임을 매크로 블록 단위로 분할한 도면이다.
도 1, 도 3 내지 도 6을 참조하면, 배경 분리부(110)는 제 n 프레임과 제 n-1 프레임의 매크로 블록의 휘도 신호의 차이값을 계산한다(S310 단계). 상기 휘도 신호의 차이값(ImgDiff)은 수학식 1과 같이 계산할 수 있다.
상기 수학식 1에서 f()는 프레임의 휘도 값을 나타내고, x 및 y 는 상기 프레임의 공간적 위치를 의미하며 n 및 n-1 은 프레임 번호를 의미한다.
도 4의 제 n 프레임(450)을 5*5의 매크로 블록들(MB'_11, MB'_12, ... , MB'_55)로 구분하고, 제 n-1 프레임(410)을 5*5의 매크로 블록들(MB_11, MB_12, ... , MB_55)로 구분한 경우, 각각의 대응하는 매크로 블록에 대하여 상기 휘도 신호의 차이값(ImgDiff)을 계산한다. 즉, 제 n 프레임(450)의 매크로 블록(MB'_11)의 휘도값과 제 n-1 프레임(410)의 매크로 블록(MB_11)의 휘도값의 차이를 계산하고, 매크로 블록(MB'_12)의 휘도값과 매크로 블록(MB_12)의 휘도값의 차이를 계산한다. 나머지 매크로 블록들에 대하여도 동일한 방법으로 대응되는 매크로 블록에 대하여 휘도 신호의 차이값을 계산한다.
배경 분리부(110)는 상기 차이값을 상기 이동 객체를 구분하는 기준이 되는 임계값과 비교한다(S320 단계). 이동 객체가 있는 경우는 상기 차이값이 크게 나오고 배경인 경우는 상기 차이값이 작게 나온다. 그러므로, 이동 객체로 판단하는 기준이 되는 상기 임계값과 상기 차이값을 비교하여, 상기 차이값이 상기 임계값보다 큰 경우는 이동 객체로 판단하게 되고, 상기 차이값이 상기 임계값보다 작은 경우는 배경으로 판단하게 된다. 상기와 같이 매크로 블록 단위로 이동 객체와 배경이 분리되면, 도 5와 같이 상기 이동 객체로 판단된 매크로 블록에는 "1"을 할당하고 상기 배경으로 판단된 매크로 블록에는 "0"을 할당하여 이진화 영상을 구현할 수 있다. 이하에서, 움직임 추정은 "1"이 할당된 매크로 블록에 한하여 수행한다. "0"이 할당된 매크로 블록에 대하여는 배경이라 판단된 것이므로, 움직임 추정 없이 대응하는 제 n-1 프레임의 매크로 블록을 이용하여 보간 프레임을 생성한다.
상기 이동 객체로 판단된 매크로 블록에 대하여, 탐색 영역 처리부(140), 수정된 탐색 영역 처리부(150) 및 현재 매크로 블록 처리부(160)는 각각 상기 제 1 움직임 벡터, 상기 제 2 움직임 벡터 및 상기 제 3 움직임 벡터를 추정한다.
도 6(a)를 참조하여 탐색 영역 처리부(140)의 동작을 설명한다. 제 n 프레임(450)의 매크로 블록(610)에 대하여 현재 처리하고자 하는 경우, 탐색 영역 처리부(140)는 제 n 프레임(450)의 매크로 블록(610)과 매칭되는 매크로 블록을 제 n-1 프레임(410)의 제 1 탐색 영역(630) 안에서 찾아 상기 제 1 움직임 벡터를 추정한다(S330 단계). 제 1 탐색 영역(630)은 제 n 프레임(450)의 매크로 블록(610)에 대응하는 제 n-1 프레임(410)의 매크로 블록(MB_33) 및 매크로 블록(MB_33)에 인접하 는 매크로 블록들(MB_22, MB_23, MB_24, MB_32, MB_34, MB_42, MB_43, MB_44)을 포함한다. 도 6(a)는 3*3 의 매크로 블록들을 포함하는 제 1 탐색 영역에 대하여 도시하였으나, 이는 일 실시예일 뿐 4*4 또는 5*5 의 매크로 블록들을 포함하도록 구성하여도 본 발명의 효과와 동일한 효과를 얻을 수 있음은 당업자에게 자명한 사항이다.
도 6(b)를 참조하여 수정된 탐색 영역 처리부(150)의 동작을 설명한다. 제 n 프레임(450)의 매크로 블록(610)에 대하여 현재 처리하고자 하는 경우, 수정된 탐색 영역 처리부(150)는 제 n 프레임(450)의 매크로 블록(610)과 매칭되는 매크로 블록을 제 n-1 프레임(410)의 제 2 탐색 영역(650)안에서 찾아 상기 제 2 움직임 벡터를 추정한다(S340 단계). 제 2 탐색 영역(650)은 제 n 프레임(450)의 매크로 블록(610)에 대응하는 제 n-1 프레임(410)의 매크로 블록(MB_33) 및 매크로 블록(MB_33)에 인접하고 이동 객체로 판단된 제 n 프레임(450)의 매크로 블록들(MB'_22, MB'_23, MB'_24, MB'_32, MB'_34)에 대응하는 매크로 블록들(MB_22, MB_23, MB_24, MB_32, MB_34)을 포함한다. 즉, 제 n 프레임(450)에서 "1"이 할당된 매크로 블록들(MB'_22, MB'_23, MB'_24, MB'_32, MB'_33, MB'_34)에 대응하는 제 n-1 프레임의 매크로 블록들(MB_22, MB_23, MB_24, MB_32, MB_33, MB_34)에 대하여만 제 2 탐색 영역으로 정의한다.
도 6(c)를 참조하여 현재 매크로 블록 처리부(160)의 동작을 설명한다. 제 n 프레임(450)의 매크로 블록(610)에 대하여 현재 처리하고자 하는 경우, 현재 매크로 블록 처리부(160)는 제 n 프레임(450)의 매크로 블록(610)과 매크로 블록(610) 에 대응하는 제 n-1 프레임(410)의 매크로 블록(MB'_33)을 매칭시켜 상기 제 3 움직임 벡터를 추정한다(S350 단계).
탐색 영역 처리부(130), 수정된 탐색 영역 처리부(150) 및 현재 매크로 블록 처리부(160)에서 상기 움직임 벡터를 추정하는 방법에는 MSE(Mean Square Error) 방식, MAD(Mean Absolute Difference) 방식 및 SAD(Sum of Absolute Difference) 방식 등이 있다. 최근에는 상기 SAD 방식을 사용하여 움직임 벡터를 추정하는 경우가 많으므로 이하에서는 상기 SAD 방식에 대하여만 설명한다. 그러나, 상기 MSE 방식, 상기 MAD 방식 및 상기 SAD 방식 중 어느 방식을 사용하여 상기 움직임 벡터를 추정하여도 본 발명의 효과와 동일한 효과를 얻을 수 있음은 당업자에게 자명한 사항이다.
상기 움직임 벡터는 현재 처리하고자 하는 매크로 블록과 상기 제 1 탐색 영역 또는 상기 제 2 탐색 영역 내부의 모든 블록들 간의 SAD 값을 수학식 2에 의하여 계산한 후, 수학식 3에 의하여 상기 계산한 값 중에 가장 작은 값을 가지는 블록에 대한 공간적인 거리로 결정된다. 먼저 SAD 값은 수학식 2와 같이 계산된다.
상기 수학식 2에서, N은 상기 매크로 블록의 크기, i 및 j는 현재 영상의 공간적 위치, n 및 n-1은 프레임 번호를 의미하고, dx 및 dy는 현재 영상과 이전 영상의 블록 위치 차이, 즉 제 n 프레임과 제 n-1 프레임의 블록 위치 차이를 나타낸 다. 상기 SAD 값을 이용하여, 수학식 3에서와 같이 최소의 SAD 값을 가지는 블록에 대한 움직임 벡터(MV)를 구한다.
상기 수학식 3에서 R은 움직임 추정을 위한 탐색 영역을 나타낸다. 즉, R은 상기 제 1 탐색 영역, 상기 제 2 탐색 영역 또는 매크로 블록(MB_33) 일 수 있다.
보간 프레임 생성부(170)는 상기 추정된 제 1 움직임 벡터, 상기 추정된 제 2 움직임 벡터 및 상기 추정된 제 3 움직임 벡터 중 중간값을 선택하고(S360 단계), 상기 선택된 중간값을 이용하여 상기 보간 프레임을 생성한다(S370 단계). 즉, 보간 프레임 생성부(170)는 상기 3개의 움직임 벡터 중 급격하게 변화하는 움직임 벡터가 존재하는 경우, 상기 움직임 벡터를 잡음으로 인식하여 제거할 수 있다. 이하에서는, 폐색(occlusion) 영역의 처리를 위한 보간 프레임 생성부(170)의 동작에 대하여 설명한다.
도 7은 본 발명의 실시예에 따른 폐색(occlusion) 영역을 감안한 프레임 보간 방법의 흐름도이다.
도 8은 매크로 블록 별로 추정된 움직임 벡터의 방향을 표시한 도면이다.
도 1, 도 4, 도 7 및 도 8을 참조하면, 보간 프레임 생성부(170)는 제 n 프레임(450)의 매크로 블록에 매칭되는 제 n-1 프레임(410)의 매크로 블록이 명확하게 존재하는지 판단한다(S710 단계). 즉, 제 n 프레임(450)의 상기 각각의 매크로 블록이 제 n-1 프레임에 정확하게 매칭되는 매크로 블록이 있는지 판단한다. 상기 각각의 매크로 블록이 정확하게 매칭되는 경우는 상기 SAD 값이 "0"이 되고, 이 경우는 제 n 프레임의 상기 각각의 매크로 블록과 상기 매칭되는 제 2 프레임의 각각의 매크로 블록의 중간값을 이용하여 상기 보간 프레임을 생성한다(S720 단계).
상기 제 n 프레임(450)의 매크로 블록에 매칭되는 제 n-1 프레임(410)의 매크로 블록이 명확하게 존재하지 않는 경우라 함은 상기 폐색 영역이 존재함을 의미한다. 상기 폐색 영역이 존재하는 경우란 제 n-1 프레임(410)에는 존재하지 않았던 영상이 제 n 프레임(450)에는 존재하거나, 제 n-1 프레임(410)에는 존재하던 영상이 제 n 프레임(450)에는 존재하지 않게 되는 경우를 의미한다. 상기 폐색 영역이 존재하는 경우, 도 8(a)와 같이 추정된 움직임 벡터의 방향을 판단한다(S730 단계). 도 8(a)에서 ×표시된 부분은 최초 배경으로 판단된 매크로 블록을 의미한다. 상기 추정된 움직임 벡터가 도 8(a)와 같이 방향을 가지는 경우, 도 8(b)와 같이 상기 움직임 벡터의 SAD 값이 "0"인 경우는 해당 매크로 블록에 "0"을 할당한다. 그리고, 상기 움직임 벡터의 상기 SAD 값이 "0"이 아니고 좌(left)에서 우(right)로 움직이는 경우 해당 매크로 블록에 "-1"을 할당하고, 상기 움직임 벡터의 상기 SAD 값이 "0"이 아니고 우에서 좌로 움직이는 경우 해당 매크로 블록에 "1"을 할당한다. 상기 해당 매크로 블록에 "-1"이 할당된 경우, 제 n 프레임(450)의 상기 해당 매크로 블록을 이용하여 상기 보간 프레임을 생성한다(S740 단계). 상기 해당 매크로 블록에 "1"이 할당된 경우, 제 n-1 프레임(410)의 상기 해당 매크로 블록을 이용하여 상기 보간 프레임을 생성한다(S750 단계).
도 9는 도 7의 실시예에 따라 폐색 영역에 대한 보간 프레임을 생성하는 모습을 나타내는 도면이다.
도 9를 참조하여 먼저 이전 프레임(910)과 현재 프레임(950) 사이에 보간된 프레임(970)을 생성하는 (a) 단계에 대하여 설명한다. 도 9를 참조하면, 이전 프레임(910)에는 존재하였던 920 부분이 현재 프레임(950)에서는 자동차에 가려져서 존재하지 않고 있다. 따라서, 이 경우는 960 부분에 해당하는 매크로 블록이 우에서 좌로 움직였으므로 "1"이 할당되고, 이전 프레임(910)의 920 부분을 이용하여 보간된 프레임(970)이 생성된다.
다음으로 이전 프레임(950)과 현재 프레임(910) 사이에 보간된 프레임(970)을 생성하는 (b) 단계에 대하여 설명한다. 도 9를 참조하면, 이전 프레임(950)에는 존재하지 않았던 920 부분이 현재 프레임(910)에서는 존재하고 있다. 따라서, 이 경우는 960 부분에 해당하는 매크로 블록이 좌에서 우로 움직였으므로 "-1"이 할당되고, 현재 프레임(910)의 920 부분을 이용하여 보간된 프레임(970)이 생성된다.
도 10은 본 발명의 다른 실시예에 따른 프레임 보간 장치(1000)의 블록도이다.
도 10을 참조하면, 배경 분리부(1010), 탐색 영역 처리부(1040) 및 보간 프레임 생성부(1070)는 도 1의 배경 분리부(110), 탐색 영역 처리부(140) 및 보간 프레임 생성부(170)와 동일하게 동작한다. 즉, 도 1의 프레임 보간 장치(100)는 움직임 벡터 추정부(130)에서 세 개의 추정된 움직임 벡터가 나오는데 반해, 도 10의 프레임 보간 장치(1000)는 탐색 영역 처리부(1040)에서 도 1의 상기 제 1 움직임 벡터만이 추정되는 차이점이 있을 뿐, 나머지는 구성 요소들은 동일한 기능을 수행한다. 그러므로, 이하 설명을 생략한다.
도 11은 본 발명의 또 다른 실시예에 따른 프레임 보간 장치(1100)의 블록도이다.
도 11을 참조하면, 배경 분리부(1110), 수정된 탐색 영역 처리부(1150) 및 보간 프레임 생성부(1170)는 도 1의 배경 분리부(110), 수정된 탐색 영역 처리부(150) 및 보간 프레임 생성부(170)와 동일하게 동작한다. 즉, 도 1의 프레임 보간 장치(100)는 움직임 벡터 추정부(130)에서 세 개의 추정된 움직임 벡터가 나오는데 반해, 도 11의 프레임 보간 장치(1100)는 수정된 탐색 영역 처리부(1150)에서 도 1의 상기 제 2 움직임 벡터만이 추정되는 차이점이 있을 뿐, 나머지는 구성 요소들은 동일한 기능을 수행한다. 그러므로, 이하 설명을 생략한다.
이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.