KR100677562B1 - 움직임 추정 방법 및 장치 - Google Patents

움직임 추정 방법 및 장치 Download PDF

Info

Publication number
KR100677562B1
KR100677562B1 KR1020050010228A KR20050010228A KR100677562B1 KR 100677562 B1 KR100677562 B1 KR 100677562B1 KR 1020050010228 A KR1020050010228 A KR 1020050010228A KR 20050010228 A KR20050010228 A KR 20050010228A KR 100677562 B1 KR100677562 B1 KR 100677562B1
Authority
KR
South Korea
Prior art keywords
block
matching
motion estimation
current
matching block
Prior art date
Application number
KR1020050010228A
Other languages
English (en)
Other versions
KR20060089950A (ko
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 KR1020050010228A priority Critical patent/KR100677562B1/ko
Priority to US11/338,745 priority patent/US7889795B2/en
Priority to CNB2006100042033A priority patent/CN100563343C/zh
Publication of KR20060089950A publication Critical patent/KR20060089950A/ko
Application granted granted Critical
Publication of KR100677562B1 publication Critical patent/KR100677562B1/ko

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation

Landscapes

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

Abstract

본 발명에 따라 계산량을 줄일 수 있는 움직임 추정 방법 및 장치가 개시된다.
본 발명에 따른 움직임 추정 방법은, 움직임 추정을 수행할 이전 매칭 블록에 대해 계산된 블록간 정합차를 저장하는 단계와, 상기 저장된 블록간 정합차를 이용하여 움직임 추정을 수행할 현재 매칭 블록에 대해 블록간 정합차를 계산하는 단계와, 상기 현재 매칭 블록에 대해 계산된 블록간 정합차를 이용하여 현재 매칭 블록에 대한 움직임 추정을 수행하는 단계를 포함한다. 이상과 같은 본 발명에 의하면, 이전 매칭 블록에 대하여 얻어진 정합차를 현재 매칭 블록에 대한 정합차 계산에 이용함으로써 움직임 추정에 계산량을 줄일 수 있고 하드웨어를 감소시킬 수 있다.

Description

움직임 추정 방법 및 장치{Motion estimation method and motion estimation apparatus}
도 1은 종래 기술에 따라 움직임 추정에 의해 프레임간 보간을 하는 과정을 설명하기 위한 개념도,
도 2a는 종래 기술에 따라 움직임 추정에 이용되는 가드 블록의 개념,
도 2b는 종래 기술에 따라 가드 블록을 이용한 움직임 추정에 의해 프레임간 보간을 하는 과정을 설명하기 위한 개념도,
도 3은 본 발명에 따라 SAD 실행을 위한 매칭 블록의 일 예,
도 4a 및 도 4b는 본 발명에 따른 움직임 추정 방법을 설명하기 위한 이전 매칭 블록과 현재 매칭 블록의 일 예,
도 5a는 본 발명에 따라 이전 매칭 블록에 대해 SAD 실행을 위한 탐색 영역 및 탐색 영역에서의 첫 번째 탐색 블록의 예,
도 5b는 도 5a에 도시된 탐색 블록에 대한 SAD,
도 6a는 본 발명에 따라 이전 매칭 블록에 대해 SAD 실행을 위한 탐색 영역 및 도 5a에 도시된 탐색 블록보다 x축으로 1 만큼 이동한 탐색 블록의 예,
도 6b는 도 6a에 도시된 탐색 블록에 대한 SAD,
도 7a는 본 발명에 따라 이전 매칭 블록에 대해 SAD 실행을 위한 탐색 영역 및 도 5a에 도시된 탐색 블록보다 y축으로 1 만큼 이동한 탐색 블록의 예,
도 7b는 도 7a에 도시된 탐색 블록에 대한 SAD,
도 8a는 본 발명에 따라 이전 매칭 블록에 대해 SAD 실행을 위한 탐색 영역 및 탐색 영역에서의 마지막 탐색 블록의 예,
도 8b는 도 8a에 도시된 탐색 블록에 대한 SAD,
도 9a는 본 발명에 따라 현재 매칭 블록에 대해 SAD 실행을 위한 탐색 영역 및 탐색 영역에서의 첫 번째 탐색 블록의 예,
도 9b는 도 9a에 도시된 탐색 블록에 대한 SAD,
도 10a는 본 발명에 따라 현재 매칭 블록에 대해 SAD 실행을 위한 탐색 영역 및 도 9a에 도시된 탐색 블록보다 x축으로 1 만큼 이동한 탐색 블록의 예,
도 10b는 도 10a에 도시된 탐색 블록에 대한 SAD,
도 11a는 본 발명에 따라 현재 매칭 블록에 대해 SAD 실행을 위한 탐색 영역 및 도 9a에 도시된 탐색 블록보다 y축으로 1 만큼 이동한 탐색 블록의 예,
도 11b는 도 11a에 도시된 탐색 블록에 대한 SAD,
도 12a는 본 발명에 따라 현재 매칭 블록에 대해 SAD 실행을 위한 탐색 영역 및 탐색 영역에서의 마지막 탐색 블록의 예,
도 12b는 도 12a에 도시된 탐색 블록에 대한 SAD,
도 13은 도 5a 내지 도 12b에 도시된 예에 따라 이전 매칭 블록과 현재 매칭 블록의 SAD 간에 중복 계산되는 부분을 설명하기 위한 참고도,
도 14는 본 발명에 따른 움직임 추정 장치의 개략적인 블록도,
도 15는 도 14에 도시된 예측부와 MAD 저장부의 세부적인 블록도,
도 16은 본 발명에 따라 계산량 절감을 위해 매칭 블록에서 SAD 계산에 이용되는 화소를 샘플링하는 예를 설명하기 위한 도면.
본 발명은 움직임 추정 방법 및 움직임 추정 장치에 관한 것이다.
일반적으로 PC나 HDTV에서는 PAL 또는 NTSC와 같은 다양한 방송신호규격을 갖는 프로그램을 호환하기 위해 프레임 레이트 변환(Frame Rate Conversion)을 수행한다. 프레임 레이트 변환은 초당 출력되는 프레임수를 변환시키는 것을 의미한다. 특히, 프레임 레이트가 증가되는 경우에는, 새로운 프레임을 보간하는 과정이 필요하다.
한편, 최근에는 방송기술의 발달에 따라 MPEG(Moving Picture Experts Group), H.263과 같은 영상 압축 방식에 의해 영상데이터를 압축한 후, 프레임 레이트 변환을 수행하고 있다. 이러한 영상 처리 분야에서, 영상신호는 대부분의 경우 상관관계(autocorrelation)가 크기 때문에 중복성(redundancy)을 가지고 있다. 따라서, 데이터 압축시 중복성을 제거함으로써, 데이터 압축 효과를 향상시킬 수 있다. 이때, 시간적으로 변하는 비디오 프레임을 효율적으로 압축하기 위해서는, 시간축 방향의 중복성 제거가 필요하다.
시간축 방향의 중복성 제거는, 프레임에서 움직임이 없거나, 움직임이 있다 하더라도 비슷한 부분은 바로 전 프레임 등에서 가져와서 채움으로써 전송해야 할 데이터량을 큰 폭으로 줄일 수 있다는 생각에 기초한다.
이를 위해, 이전 프레임과 현재 프레임 사이에서 가장 비슷한 블럭을 찾는 작업이 필요한데, 이를 움직임 추정(Motion Estimation, ME)이라 하며, 블럭이 얼마만큼 움직였는가 하는 변위를 나타내는 것을 움직임 벡터(Motion Vector, MV)라고 한다.
한편, 움직임을 추정하는 방법에는 움직임 정도의 정확도, 실시간 처리가능성 및 하드웨어 구현 등을 고려하여 블럭 매칭 알고리즘(Block Maching Algorithm, 이하에서는 "BMA"라 한다)이 일반적으로 이용되고 있다. 프레임 레이트 변환(FRC)을 위한 프레임과 프레임 사이의 중간 영상 합성은 주로 위에서 설명한 바와 같은 BMA를 주로 사용하는데, BMA를 이용한 중간영상 합성방법은 도 1에 도시된 바와 같이 간단히 나타낼 수 있다.
도 1을 참조하면, 이전 프레임 Fn-1과 현재 프레임 Fn 사이의 중간 영상 프레임 Fi를 합성하기 위해 이전 프레임 Fn-1에 있는 블록과 현재 프레임에 있는 블록 F n 간에 움직임을 추정하여 중간 영상 프레임 Fi의 블록을 합성하는 것이다.
BMA는 구현이 간편하면서도 실시간 처리에 적합하여 프레임 레이트 변환 뿐 만 아니라 MPEG2/4 및 H.262/264등의 압축표준에서 사용된다. 그러나, 수평 수직만 가진 움직임 추정에는 그 성능이 탁월하나 영상의 회전이나 확대 축소에는 그 성능이 좋지 못한 단점을 가지고 있다.
BMA를 사용하여 정확성을 높이기 위해선 매칭 블록(Matching Block)의 사이즈를 키워야 하는데, 블록 사이즈가 커지면 정확도가 높아지는 반면 계산량이 많아지고 세밀한 표현이 힘들어 진다. 블록 사이즈가 작아지면, 계산량이 적어지고 세밀한 표현이 가능한 반면 정확도가 떨어진다.
종래 기술중 매칭의 정확도는 높이면서 세밀한 표현을 가능하기 하기 위해서 가드 블록을 가진 블록을 사용하는 움직임 추정을 실행하는 방법이 있다. 도 2a에 도시된 바와 같이 M×M 블록을 이용하여 움직임 추정을 실행하고, 움직임 보상을 위해서는 N×N 블록을 사용하는 방법이다.
도 2b를 참조하면, 움직임 추정은 가드 블록을 포함한 M×M의 큰 블록을 사용하여 움직임 추정을 수행하고, 실제 움직임 보상은 N×N의 움직임 보상 블록을 이용한다. 따라서, 매칭의 정확도는 높혀주고 N×N 블록을 사용하여 합성함으로써 표현의 정밀도를 높힐 수 있다. 이러한 방법의 문제점은 여전히 계산량을 증가시킨다는 것이다.
본 발명은 상기와 같은 문제점을 해결하여 계산량을 감소시킬 수 있도록 하는 움직임 추정 방법 및 장치를 제공하는 것을 목적으로 한다.
상기와 같은 과제를 해결하기 위한 본 발명의 하나의 특징은, 움직임 추정 방법에 있어서, 움직임 추정을 수행할 이전 매칭 블록에 대해 계산된 블록간 정합차를 저장하는 단계와, 상기 저장된 블록간 정합차를 이용하여 움직임 추정을 수행 할 현재 매칭 블록에 대해 블록간 정합차를 계산하는 단계와, 상기 현재 매칭 블록에 대해 계산된 블록간 정합차를 이용하여 현재 매칭 블록에 대한 움직임 추정을 수행하는 단계를 포함하는 것이다.
상기 매칭 블록은 움직임 보상을 수행할 블록보다 큰 것이 바람직하다.
또한, 상기 블록간 정합차의 계산시 상기 매칭 블록을 구성하는 화소를 샘플링하여 블록간 정합차를 계산하는 것이 바람직하다.
본 발명의 다른 특징은, 움직임 추정 방법에 있어서, 이전 매칭 블록에 대한 블록간 정합차를 구성하는 항목들중 오른쪽 절반 부분을 메모리로부터 읽어오는 단계와, 움직임 추정을 수행할 현재 매칭 블록에 대한 블록간 정합차를 구성하는 항목들중 오른쪽 절반 부분을 계산하는 단계와, 상기 읽어온 오른쪽 절반 부분과 상기 계산된 오른쪽 절반 부분을 더하여 현재 매칭 블록에 대한 블록간 정합차를 얻는 단계와, 상기 얻어진 블록간 정합차를 이용하여 상기 현재 매칭 블록에 대한 움직임 추정을 수행하는 단계를 포함하는 것이다.
상기 움직임 추정을 수행하는 단계는, 탐색 영역 전체에 대해 얻어진 블록간 정합차들중 최소 정합차를 가지는 탐색 블록을 결정하는 단계와, 상기 결정된 탐색 블록 및 상기 현재 탐색 블록을 기초로 움직임 벡터를 결정하는 단계를 포함하는 것이 바람직하다.
본 발명의 또 다른 특징은, 움직임 추정 장치에 있어서, 이전 매칭 블록에 대해 계산된 블록간 정합차를 저장하는 정합차 저장부와, 상기 저장된 블록간 정합차를 이용하여 움직임 추정을 수행할 현재 매칭 블록에 대해 블록간 정합차를 계산 하는 예측부와, 상기 현재 매칭 블록에 대해 계산된 블록간 정합차를 이용하여 현재 매칭 블록에 대한 움직임 추정을 수행하는 움직임 벡터 결정부를 포함하는 것이다.
본 발명의 또 다른 특징은, 움직임 추정 장치에 있어서, 이전 매칭 블록에 대한 블록간 정합차를 구성하는 항목들중 오른쪽 절반 부분을 저장하는 정합차 저장부와, 움직임 추정을 수행할 현재 매칭 블록에 대한 블록간 정합차를 구성하는 항목들중 오른쪽 절반 부분을 계산하고, 상기 정합차 저장부로부터 읽어온 오른쪽 절반 부분과 상기 계산된 오른쪽 절반 부분을 더하여 현재 매칭 블록에 대한 블록간 정합차를 얻는 예측부와, 상기 얻어진 블록간 정합차를 이용하여 상기 현재 매칭 블록에 대한 움직임 추정을 수행하는 움직임 벡터 결정부를 포함하는 것이다.
이제, 첨부된 도면들을 참조하여 본 발명을 상세히 설명한다.
도 3은 본 발명에 따라 SAD 실행을 위한 매칭 블록을 나타낸다.
도 3을 참조하면, 점선으로 표현된 a, b, c, d로 구성된 블록은 이전 단계에서 계산된 매칭 블록(즉, 이전 매칭 블록)을 나타내고, b, d, e, f로 구성된 블록은 현재 단계에서 계산될 매칭 블록(즉, 현재 매칭 블록)을 나타낸다. 이때 b, d로 구성되는 부분이 겹치기 때문에, 이전 단계에서 계산된 b, d 부분에 대한 SAD 값을 현재 단계에 이용함으로써, e와 f로 구성된 부분만을 계산하면, 전체 b, d, e, f로 구성된 부분에 대한 SAD를 모두 구할 수 있게 된다. SAD는 매칭 블록과 탐색 블록의 차이로서, 좀더 구체적으로는 매칭블록의 화소와 탐색 블록의 화소의 차의 절대값의 합이다.
먼저, 수학식을 통해서 이와 같이 계산량을 절반으로 줄일 수 있는 원리를 설명한다.
이전 매칭 블록에 대한 SAD 값은 다음과 같이 나타내진다.
Figure 112005006637450-pat00001
여기서, (k,l)은 이전 매칭 블록의 좌상단 모서리에 있는 화소의 좌표를 나타내고, i, j는 이전 매칭 블록에 포함된 점들의 x 축 인덱스, y 축 인덱스를 각각 나타낸다. fn은 현재 프레임을 나타내고, fn-1은 현재 프레임에 인접한 이전 프레임을 나타낸다. 정리하면, fn(k+i+x,l+j+y)는 매칭 블록의 좌상단 모서리에 있는 화소의 좌표가 (k,l)일 때의 매칭 블록에 들어있는 화소값들을 나타내고, fn-1(k+i,l+j)는 이 매칭 블록에 대한 탐색 블록에 들어있는 화소값들을 나타낸다.
현재 매칭 블록에 대한 SAD 값은 다음과 같이 나타내진다.
Figure 112005006637450-pat00002
현재 매칭 블록에 대한 SAD 값 - 이전 매칭 블록에 대한 SAD 값은 다음과 같이 나타내질 수 있다.
Figure 112005006637450-pat00003
Figure 112005006637450-pat00004
Figure 112005006637450-pat00005
그리고, 현재 매칭 블록에 대한 SAD 값 - 이전 매칭 블록에 대한 SAD 값은 다음과 같이 정리하여 전개될 수 있다.
Figure 112005006637450-pat00006
Figure 112005006637450-pat00007
Figure 112005006637450-pat00008
그러므로, 위 식을 정리하면, 현재 매칭 블록에 대한 SAD 값은 아래와 같이 파트 1과 파트 2로 나눌 수 있다.
Figure 112005006637450-pat00009
즉, 현재 매칭 블록에 대한 SAD 값 중 파트 1은 현재 매칭 블록에 대해 구해 야할 SAD 값 중 왼쪽 절반 부분에 대한 값들이고, 파트 2는 현재 매칭 블록에 대해 구해야 할 SAD 값 중 오른쪽 절반 부분에 대한 값들이다.
그런데, 현재 매칭 블록에 대한 SAD 값중 파트 1 즉 왼쪽 절반 부분은 이전 매칭 블록에 대한 SAD 값중 오른쪽 절반 부분에 해당한다. 따라서, 본 발명이 착안한 것은 이전 매칭 블록에 대해 계산해 놓은 오른쪽 절반 부분에 대한 값을 저장해두고, 현재 매칭 블록에 대한 SAD 값 계산시 이와 같이 저장해둔 값을 이용하자는 것이다.
이제, 실 예를 들어 계산이 중첩되는 부분을 설명한다.
도 4a는 본 발명에 따라 움직임 추정을 위한 이전 매칭 블록의 일 예를 나타낸다.
도 4a를 참조하면, 이전 움직임 보상 블록과 이전 움직임 보상 블록의 주변에 배열된 중첩 부분을 포함하여 매칭을 수행할 블록은 S1,1, S1,32, S32,1 , S32,32에 의해 구성되는 블록이다.
도 4b는 본 발명에 따라 움직임 추정을 위한 현재 매칭 블록의 일 예를 나타낸다.
도 4b를 참조하면, 현재 움직임 보상 블록과 현재 움직임 보상 블록의 주변에 배열된 중첩 부분을 포함하여 매칭을 수행할 블록은 S1,17, S1,48, S32,17 , S32,48 에 의해 구성되는 블록이다.
도 5a 내지 8b는 이전 매칭 블록에 대해 탐색 영역에서의 탐색 블록의 위치 및 그에 따른 SAD 값을 나타낸다.
도 5a는 본 발명에 따라 SAD 실행을 위해 이전 매칭 블록에 대한 탐색 영역 및 이 탐색 영역에서의 첫 번째 탐색 블록의 위치를 나타낸다.
도 5a를 참조하면 이전 매칭 블록에 대해 탐색될 탐색 영역은 R1,1. R1,64, R64,1, R64,64에 의해 구성되는 영역이고, 이 탐색 영역에서 처음 탐색되는 탐색 블록은 R1,1, R1,32, R32,1, R32,32에 의해 구성되는 블록이다.
도 5a에 도시된 바와 같은 탐색 블록 및 이전 매칭 블록을 기초로 실행한 SAD 계산식이 도 5b에 도시되어 있다.
SAD(이전)1,1=
+|S1,1-R1,1|+|S1,2-R1,2|+...+|S1,16-R 1,16|+|S1,17-R1,17|+...+|S1,32-R1,32
+|S2,1-R2,1|+|S2,2-R2,2|+...+|S2,16-R 2,16|+|S2,17-R2,17|+ ...+|S2,32-R2,32
+ ......+
+|S32,1-R32,1|+|S32,2-R32,2|+...+|S32,16 -R32,16|+|S32,17-R32,17|+...|S32,32-R32,32
도 6a는 본 발명에 따라 SAD 실행을 위해 이전 매칭 블록에 대한 탐색 영역 및 이 탐색 영역에서의 첫 번째 탐색 블록의 위치보다 x축으로 1만큼 이동한 탐색 블록의 위치를 나타낸다.
도 6a를 참조하면, 탐색 영역에서 첫 번째 탐색 블록의 위치보다 x축으로 1만큼 이동한 탐색 블록은 R1,2, R1,33, R32,2, R32,33에 의해 구성되는 블록이다.
도 6a에 도시된 바와 같은 탐색 블록 및 이전 매칭 블록을 기초로 실행한 SAD 계산식이 도 6b에 도시되어 있다.
SAD(이전)1,2=
|S1,1-R1,2|+|S1,2-R1,3|+...+|S1,16-R 1,17|+|S1,17-R1,18|+ ...+|S1,32-R1,33
+|S2,1-R2,2|+|S2,2-R2,3|+...+|S2,16-R 2,17|+|S2,17-R2,18|+ ...+|S2,32-R2,33
+ ......+
+|S32,1-R32,2|+|S32,2-R32,3|+...+|S32,16 -R32,17|+|S32,17-R32,18|+...|S32,32-R32,33
도 7a는 본 발명에 따라 SAD 실행을 위해 이전 매칭 블록에 대한 탐색 영역 및 이 탐색 영역에서의 첫 번째 탐색 블록의 위치보다 y축으로 1만큼 이동한 탐색 블록의 위치를 나타낸다.
도 7a를 참조하면, 탐색 영역에서 첫 번째 탐색 블록의 위치보다 y축으로 1만큼 이동한 탐색 블록은 R2,1, R2,32, R33,1, R33,32에 의해 구성되는 블록이다.
도 7a에 도시된 바와 같은 탐색 블록 및 이전 매칭 블록을 기초로 실행한 SAD 계산식이 도 7b에 도시되어 있다.
SAD(이전)2,1=
|S1,1-R2,1|+|S1,2-R2,2|+...+|S1,16-R 2,16|+|S1,17-R2,17|+ ...+|S1,32-R2,32
+|S2,1-R3,1|+|S2,2-R3,2|+...+|S2,16-R 3,16|+|S2,17-R3,17|+ ...+|S2,32-R3,32
+ ......
+|S32,1-R33,1|+|S32,2-R33,2|+...+|S32,16 -R33,16|+|S32,17-R33,17|+...|S32,32-R33,32
도 8a는 본 발명에 따라 SAD 실행을 위해 이전 매칭 블록에 대한 탐색 영역 및 이 탐색 영역에서의 마지막 탐색 블록의 위치를 나타낸다.
도 8a를 참조하면, 탐색 영역에서 마지막 탐색 블록은 R33,33, R33,64, R64,33 , R64,64에 의해 구성되는 블록이다.
도 8a에 도시된 바와 같은 탐색 블록 및 이전 매칭 블록을 기초로 실행한 SAD 계산식이 도 8b에 도시되어 있다.
SAD(이전)32,32=
|S1,1-R32,32|+|S1,2-R32,33|+...+|S1,16 -R32,48|+|S1,17-R32,49|+...+|S1,32-R32,64
+|S2,1-R33,32|+|S2,2-R33,33|+...+|S2,16 -R33,48|+|S2,17-R33,49|+...+|S2,32-R33.64
+ ......+
+|S32,1-R64,32|+|S32,2-R64,33|+...+|S32,16 -R64,48|+|S32,17-R64,49|+..+|S32,32-R64,64
도 9a 내지 12b는 현재 매칭 블록에 대해 탐색 영역에서의 탐색 블록의 위치 및 그에 따른 SAD 값을 나타낸다.
도 9a는 본 발명에 따라 SAD 실행을 위해 현재 매칭 블록에 대한 탐색 영역 및 이 탐색 영역에서의 첫 번째 탐색 블록의 위치를 나타낸다.
도 9a를 참조하면 현재 매칭 블록에 대해 탐색될 탐색 영역은 R1,17. R1,80, R64,17, R64,80에 의해 구성되는 영역이고, 이 탐색 영역에서 처음 탐색되는 탐색 블록은 R1,17, R1,48, R32,17, R32,48에 의해 구성되는 블록이다.
도 9a에 도시된 바와 같은 탐색 블록 및 현재 매칭 블록을 기초로 실행한 SAD 계산식이 도 9b에 도시되어 있다.
SAD(현재)1,1= |S1,17-R1,17|+...+|S1,32-R1,32 |+ |S1,33-R1,33|+...+|S1,48-R1,48| +|S2,17-R2,17|+...+|S2,32-R2,32| + |S2,33 -R2,33|+ ...+|S2,48-R2,48
+ ......+
+|S32,17-R32,17|+...+|S32,32-R32,32|+ |S 32,33-R32,33|+...|S32,48-R32,48
도 10a는 본 발명에 따라 SAD 실행을 위해 현재 매칭 블록에 대한 탐색 영역 및 이 탐색 영역에서의 첫 번째 탐색 블록의 위치보다 x축으로 1만큼 이동한 탐색 블록의 위치를 나타낸다.
도 10a를 참조하면, 탐색 영역에서 첫 번째 탐색 블록의 위치보다 x축으로 1만큼 이동한 탐색 블록은 R1,18, R1,49, R32,18, R32,49에 의해 구성되는 블록이다.
도 10a에 도시된 바와 같은 탐색 블록 및 이전 매칭 블록을 기초로 실행한 SAD 계산식이 도 10b에 도시되어 있다.
SAD(현재)1,2=|S1,17-R1,18|+...+|S1,32-R1,33 | + |S1,33-R1,34|+ ...+|S1,48-R1,49
+|S2,17-R2,18|+...+|S2,32-R2,33| + |S 2,33-R2,34|+ ...+|S2,48-R2,49
+......
+|S32,17-R32,18|+...+|S32,32-R32,33|+ |S 32,33-R32,34|+...|S32,48-R32,49
도 11a는 본 발명에 따라 SAD 실행을 위해 현재 매칭 블록에 대한 탐색 영역 및 이 탐색 영역에서의 첫 번째 탐색 블록의 위치보다 y축으로 1만큼 이동한 탐색 블록의 위치를 나타낸다.
도 11a를 참조하면, 탐색 영역에서 첫 번째 탐색 블록의 위치보다 y축으로 1만큼 이동한 탐색 블록은 R2,17, R2,48, R33,17, R33,48에 의해 구성되는 블록이다.
도 11a에 도시된 바와 같은 탐색 블록 및 현재 매칭 블록을 기초로 실행한 SAD 계산식이 도 11b에 도시되어 있다.
SAD(현재)2,1=|S1,17-R2,17|+...+|S1,32-R2,32 | + |S1,33-R2,33|+ ...+|S1,48-R2,48
+|S2,17-R3,17|++...+|S2,32-R3,32| + |S 2,33-R3,33|+ ...+|S2,48-R3,48
+ ......
+|S32,17-R33,17|+..+|S32,32-R33,32| + |S 32,33-R33,33|+...|S32,48-R33,48
도 12a는 본 발명에 따라 SAD 실행을 위해 현재 매칭 블록에 대한 탐색 영역 및 이 탐색 영역에서의 마지막 탐색 블록의 위치를 나타낸다.
도 12a를 참조하면, 탐색 영역에서 마지막 탐색 블록은 R33,49, R33,80, R64,49 , R64,80에 의해 구성되는 블록이다.
도 12a에 도시된 바와 같은 탐색 블록 및 현재 매칭 블록을 기초로 실행한 SAD 계산식이 도 12b에 도시되어 있다.
SAD(현재)32,32=
|S1,17-R33,49|+...+|S1,32-R33,64| + |S 1,33-R33,65|+...+|S1,48-R33,80
+|S2,17-R34,49|+...+|S2,32-R34,64| + |S 2,33-R34,65|+...+|S2,48-R34,80
+......
+|S32,17-R64,49|+...+|S32,32-R64,64| + |S 32,33-R64,65|+ ...+|S32,48-R64,80
그런데, 이전 매칭 블록과 현재 매칭 블록의 SAD 값들을 비교해보면 도 13에 도시된 바와 같이 각 SAD 마다 SAD를 구성하는 항목들의 절반이 이전 매칭 블록과 현재 매칭 블록에서 공통임을 알 수 있다.
도 13을 참조하면, SAD(이전)의 항목들중 오른쪽 절반에 대한 항목들이 SAD(현재)의 항목들중 왼쪽 절반에 대한 항목들과 동일함을 알 수 있다.
즉, SAD(이전)1,1의 오른쪽 절반(1310)은 SAD(현재)1,1의 왼쪽 절반(1315)과 동일하고, SAD(이전)1,2의 오른쪽 절반(1330)은 SAD(현재)1,2의 왼쪽 절반(1335)과 동일하고, SAD(이전)2,1의 오른쪽 절반(1350)은 SAD(현재)2,1의 왼쪽 절반(1355)과 동일하고, SAD(이전)32,32의 오른쪽 절반(1370)은 SAD(현재)32,32의 왼쪽 절반(1375)과 동일하다.
따라서, 각 SAD 계산시 전체 항목들을 모두 계산하는 것이 아니라 이전 SAD 의 항목들중 오른쪽 절반을 저장해두었다가 현재 SAD 계산시 오른쪽 절반에 대한 계산만을 수행하고 왼쪽 절반에 대해서는 이전 SAD의 오른쪽 절반에 대한 항목들을 가져와서 이용하면 하드웨어를 적게 들이면서 계산을 빠르게 수행할 수 있다.
도 14는 본 발명에 따른 움직임 추정 장치의 개략적인 블록도를 나타낸다.
도 14를 참조하면, 움직임 추정 장치(1400)는 참조 버퍼(1410)와, 탐색 버퍼(1420)와, 예측부(1500)와, MAD 저장부(1430)와, 움직임 벡터 결정부(1440)와, 움직임 벡터 저장부(1450)를 포함한다.
참조 버퍼(1410)는 현재 입력 이미지 프레임인 참조 프레임을 저장한다. 참조프레임내의 매칭 블록내 화소는 밝기요소와 색요소로 분리되는데 참조 버퍼는 밝기값 만을 저장한다. 참조 버퍼(1410)의 참조 프레임으로부터 추출된 매칭 블록이 예측부(1500)로 입력된다.
탐색 버퍼(1420)는 참조 버퍼에 저장된 이미지 프레임과 인접한 이전 프레임을 저장한다. 탐색 버퍼는 현재 프레임의 움직임 추정을 위한 탐색영역내 모든 화소의 밝기값을 저장한다. 탐색 버퍼(1420)의 탐색 프레임으로부터 추출된 탐색 영역이 예측부(1500)로 입력된다.
예측부(1500)는 참조 버퍼(1410)로부터의 매칭 블록과 탐색 버퍼(1420)로부터의 탐색 영역 블록을 이용하여 현재 매칭 블록의 오른쪽 절반에 대한 MAD 값을 계산하고, MAD 저장부(1430)로부터 이전 매칭 블록의 오른쪽 절반에 대한 MAD 값(이것은 현재 매칭 블록의 왼쪽 절반에 해당한다)을 수신하여, 현재 매칭 블록의 오른쪽 절반에 대한 MAD 값과 현재 매칭 블록의 왼쪽 절반에 대한 MAD 값을 더하여 최종 MAD 값을 만들고, 만들어진 최종 MAD 값을 움직임 벡터 결정부(1440)로 출력한다. 또한, 예측부(1500)는 다음 매칭 블록의 MAD 값을 계산시 이용하기 위해 현 재 매칭 블록의 오른쪽 절반에 대해 계산된 MAD 값을 MAD 저장부(1430)에 저장한다.
움직임 벡터 결정부(1440)는 예측부(1500)로부터 32×32 개의 MAD 값을 수신하여 그 중에서 가장 작은 MAD 값을 가지는 탐색 블록을 결정하고, 결정된 탐색 블록으로부터 움직임 벡터를 계산하여 움직임 벡터 저장부(1450)에 저장한다.
움직임 벡터 저장부(1450)는 움직임 벡터 결정부(1440)에서 결정된 움직임 벡터들을 저장한다.
도 15는 도 14에 도시된 예측부와 MAD 저장부의 세부적인 블록도를 나타낸다.
도 15를 참조하면, 예측부(1500)는 제1예측 엘리먼트(1510), 제2예측 엘리먼트(1520),...제31 예측 엘리먼트(1530)의 총 32개의 예측 엘리먼트를 포함한다.
각 예측 엘리먼트는 탐색 영역중 어느 하나의 탐색 블록에 대해 MAD를 실행하며, 예측부에 포함된 32개의 예측 엘리먼트는 동시에 동작하므로, 한번에 32개의 탐색 블록에 대한 MAD가 실행된다. 그러므로, 예를 들어, 도 5a에 도시된 바와 같은 탐색 영역의 탐색 블록에 대한 MAD를 모두 실행하는 데에는 총 32회의 실행이 요구된다. 즉, 1회 실행에서 제1예측 엘리먼트는 MAD1,1을 계산하고, 제2예측 엘리먼트는 MAD1,2를 계산하며, 제32예측 엘리먼트는 MAD1,32를 계산하여 계산된 32개의 MAD를 동시에 움직임 벡터 결정부로 출력한다. 그리고, 2회 실행에서 제1예측 엘리먼트는 MAD2,1을 계산하고, 제2예측 엘리먼트는 MAD2,2를 계산하며, 제32예측 엘리 먼트는 MAD2,32를 계산하여 계산된 32개의 MAD를 동시에 움직임 벡터 결정부로 출력한다. 이와 같은 방법으로 32회의 실행을 수행하면 32× 32 개의 탐색 블록에 대한 MAD가 계산될 수 있다.
각 예측 엘리먼트는 오른쪽 절반 계산부와 MAD 계산부를 포함한다.
오른쪽 절반 계산부는 참조 버퍼로부터 매칭 블록을 수신하고 탐색 버퍼로부터 탐색 블록을 수신하여 이를 대상으로 계산되어야 하는 SAD값중 오른쪽 절반에 대한 항목들의 SAD를 계산하고 계산된 SAD를 시프트 등의 연산을 이용하여 MAD를 계산한다. 오른쪽 절반 계산부는 이와 같이 계산된 부분 MAD를 MAD 계산부(1512)로 출력하며, 또한 다음 매칭 블록에서 이용될 수 있도록 저장하기 위해 MAD 저장부(1430)로 출력한다.
MAD 계산부(1512)는 오른쪽 절반 계산부(1511)로부터 오른쪽 절반에 대한 MAD를 수신하고 MAD 저장부(1430)로부터 이전 매칭 블록의 오른쪽 절반에 대한 MAD 즉, 현재 매칭 블록의 왼쪽 절반에 대한 MAD를 읽어와서 오른쪽 절반에 대한 MAD와 왼쪽 절반에 대한 MAD를 더하여 이를 움직임 벡터 결정부(1440)로 출력한다.
MAD 저장부(1430)는 제1메모리 엘리먼트(1431), 제2메모리 엘리먼트(1432), ...제31메모리 엘리먼트(1433)의 총 32개의 메모리 엘리먼트를 포함한다. 각 메모리 엘리먼트는 32개의 메모리 셀로 구성되어 있어서 총 32개의 MAD를 저장해둘 수 있다. 예를 들어, 소정 클럭에 메모리 엘리먼트에 저장된 MAD는 32 실행 단위 후에 MAD 계산부에 입력되어 다음 MAD의 계산에 이용될 수 있다.
도 13에 도시된 예를 참조하여 동작을 설명한다.
MAD 저장부(1430)는 이전 매칭 블록에 대한 MAD 값들을 저장하고 있다. 제1메모리 엘리먼트(1431)의 제1메모리 셀에 MAD1,1의 오른쪽 절반(1310)이 저장되어 있고, 제2메모리 엘리먼트(1432)의 제1메모리 셀에 MAD1,2의 오른쪽 절반(1330)이 저장되어 있고, 제32메모리 엘리먼트(1433)의 제1메모리 셀에 MAD1,32의 오른쪽 절반이 저장되어 있다.
현재 매칭 블록에 대한 MAD 계산시 제1예측 엘리먼트(1510)의 하위 절반계산부(1511)는 MAD1,1의 오른쪽 절반(1320)을 계산하고, 이 계산된 오른쪽 절반에 대한 값을 MAD 계산부로 출력하면 MAD 계산부는 수신된 오른쪽 절반에 대한 MAD(1320)와 메모리로부터 읽어온 왼쪽 절반 부분에 대한 MAD(1315)를 더하여 MAD0를 생성한다. 나머지 제2예측 엘리먼트 내지 제31예측 엘리먼트 또한 이와 같은 방법으로 MAD를 생성하고 출력한다.
한편, 이상 설명한 바와 같이 MAD 계산의 절반을 이전 단계에서 계산된 값을 이용하여 움직임을 추정하는 본 발명은 매칭 블록의 화소를 샘플링하여 움직임 추정에 이용하는 중첩정합블록을 이용한 움직임 추정 방법(overlapped block-based motion estimation, OBME)을 이용함으로써 더욱더 계산량을 줄일 수 있다.
OBME 방식은 움직임 보상을 위한 블록(MCI-block)보다 큰 매칭 블록(ME-block) 을 사용하여 움직임 추정을 실행하는데, 중요한 점은 계산량을 줄이기 위해 샘플링된 화소로 구성된 매칭 블록을 사용하여 움직임 추정을 실행한다는 것이다.
도 16을 참조하면, 매칭 블록과 움직임 보상 블록의 크기는 각각 32x32화소, 16x16화소로 구성되어 있으며 매칭 블록의 샘플율을 1/4로 가정한다. 이로서 매칭블록의 유효 화소수는 16x16이 된다. 샘플율은 필요에 따라 변환가능하며, 샘플률을 변화시켰을 경우 설계내용의 변화가 필요하나 설계 방법의 기본 원리엔 변함이 없다.
이와 같이 매칭 블록을 샘플링한 경우에도 본 발명에 따라 계산량을 절감할 수 있음을 확인하기 위하여 매칭 블록을 2:1로 샘플링한 경우의 원리를 설명한다.
이전 매칭 블록에 대한 SAD 값은 다음과 같이 나타내진다.
Figure 112005006637450-pat00010
현재 매칭 블록에 대한 SAD 값은 다음과 같이 나타내진다.
Figure 112005006637450-pat00011
현재 매칭 블록에 대한 SAD 값 - 이전 매칭 블록에 대한 SAD 값은 다음과 같이 나타내질 수 있다.
Figure 112005006637450-pat00012
Figure 112005006637450-pat00013
Figure 112005006637450-pat00014
그리고, 현재 매칭 블록에 대한 SAD 값 - 이전 매칭 블록에 대한 SAD 값은 다음과 같이 정리하여 전개될 수 있다.
Figure 112005006637450-pat00015
Figure 112005006637450-pat00016
Figure 112005006637450-pat00017
그러므로, 위 식을 정리하면, 현재 매칭 블록에 대한 SAD 값은 아래와 같이 파트 1과 파트 2로 나눌 수 있다.
Figure 112005006637450-pat00018
즉, 현재 매칭 블록에 대한 SAD 값 중 파트 1은 현재 매칭 블록에 대해 구해야할 SAD 값 중 왼쪽 절반 부분에 대한 값이고, 파트 2는 현재 매칭 블록에 대해 구해야 할 SAD 값 중 오른쪽 절반 부분에 대한 값이다.
그런데, 현재 매칭 블록에 대한 SAD 값중 파트 1 즉 왼쪽 절반은 이전 매칭 블록에 대한 SAD 값중 오른쪽 절반에 해당한다. 따라서, 매칭 블록을 2:1로 샘플링한 경우에도 샘플링하지 않은 경우와 동일하게 이전 매칭 블록에 대해 계산해 놓은 오른쪽 절반에 대한 값을 저장해두고, 현재 매칭 블록에 대한 SAD 값 계산시 이와 같이 저장해둔 값을 이용할 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
이상과 같은 본 발명에 의하면 이전 매칭 블록에 대하여 얻어진 정합차를 현재 매칭 블록에 대한 정합차 계산에 이용함으로써 움직임 추정에 계산량을 줄일 수 있고 하드웨어를 감소시킬 수 있다.

Claims (14)

  1. 움직임 추정 방법에 있어서,
    움직임 추정을 수행할 이전 매칭 블록에 대해 계산된 블록간 정합차를 저장하는 단계와,
    상기 저장된 블록간 정합차를 이용하여 움직임 추정을 수행할 현재 매칭 블록에 대해 블록간 정합차를 계산하는 단계와,
    상기 현재 매칭 블록에 대해 계산된 블록간 정합차를 이용하여 현재 매칭 블록에 대한 움직임 추정을 수행하는 단계를 포함하는 것을 특징으로 하는 움직임 추정 방법.
  2. 제1항에 있어서,
    상기 매칭 블록은 움직임 보상을 수행할 블록보다 큰 것을 특징으로 하는 움직임 추정 방법.
  3. 제1항에 있어서,
    상기 블록간 정합차의 계산시 상기 매칭 블록을 구성하는 화소를 샘플링하여 블록간 정합차를 계산하는 것을 특징으로 하는 움직임 추정 방법.
  4. 움직임 추정 방법에 있어서,
    이전 매칭 블록에 대한 블록간 정합차를 계산하기 위한 항목들중 오른쪽 절반 부분을 메모리로부터 읽어오는 단계와.
    움직임 추정을 수행할 현재 매칭 블록에 대한 블록간 정합차를 계산하기 위한 항목들중 오른쪽 절반 부분을 계산하는 단계와,
    상기 읽어온 오른쪽 절반 부분과 상기 계산된 오른쪽 절반 부분을 더하여 현재 매칭 블록에 대한 블록간 정합차를 얻는 단계와,
    상기 얻어진 블록간 정합차를 이용하여 상기 현재 매칭 블록에 대한 움직임 추정을 수행하는 단계를 포함하는 것을 특징으로 하는 움직임 추정 방법.
  5. 제4항에 있어서,
    상기 매칭 블록은 움직임 보상을 수행할 블록보다 큰 것을 특징으로 하는 움직임 추정 방법.
  6. 제4항에 있어서,
    상기 블록간 정합차의 계산시 상기 매칭 블록을 구성하는 화소를 샘플링하여 블록간 정합차를 계산하는 것을 특징으로 하는 움직임 추정 방법.
  7. 제4항에 있어서,
    상기 움직임 추정을 수행하는 단계는,
    탐색 영역 전체에 대해 얻어진 블록간 정합차들중 최소 정합차를 가지는 탐색 블록을 결정하는 단계와,
    상기 결정된 탐색 블록 및 상기 현재 탐색 블록을 기초로 움직임 벡터를 결정하는 단계를 포함하는 것을 특징으로 하는 움직임 추정 방법.
  8. 움직임 추정 장치에 있어서,
    이전 매칭 블록에 대해 계산된 블록간 정합차를 저장하는 정합차 저장부와,
    상기 저장된 블록간 정합차를 이용하여 움직임 추정을 수행할 현재 매칭 블록에 대해 블록간 정합차를 계산하는 예측부와,
    상기 현재 매칭 블록에 대해 계산된 블록간 정합차를 이용하여 현재 매칭 블록에 대한 움직임 추정을 수행하는 움직임 벡터 결정부를 포함하는 것을 특징으로 하는 움직임 추정 장치.
  9. 제8항에 있어서,
    상기 매칭 블록은 움직임 보상을 수행할 블록보다 큰 것을 특징으로 하는 움직임 추정 장치.
  10. 제8항에 있어서,
    상기 예측부는, 상기 블록간 정합차의 계산시 상기 매칭 블록을 구성하는 화소를 샘플링하여 블록간 정합차를 계산하는 것을 특징으로 하는 움직임 추정 장치.
  11. 움직임 추정 장치에 있어서,
    이전 매칭 블록에 대한 블록간 정합차를 계산하기 위한 항목들중 오른쪽 절반 부분을 저장하는 정합차 저장부와.
    움직임 추정을 수행할 현재 매칭 블록에 대한 블록간 정합차를 계산하기 위한 항목들중 오른쪽 절반 부분을 계산하고, 상기 정합차 저장부로부터 읽어온 오른쪽 절반 부분과 상기 계산된 오른쪽 절반 부분을 더하여 현재 매칭 블록에 대한 블록간 정합차를 얻는 예측부와,
    상기 얻어진 블록간 정합차를 이용하여 상기 현재 매칭 블록에 대한 움직임 추정을 수행하는 움직임 벡터 결정부를 포함하는 것을 특징으로 하는 움직임 추정 장치.
  12. 제11항에 있어서,
    상기 매칭 블록은 움직임 보상을 수행할 블록보다 큰 것을 특징으로 하는 움직임 추정 장치.
  13. 제11항에 있어서,
    상기 예측부는,
    상기 블록간 정합차의 계산시 상기 매칭 블록을 구성하는 화소를 샘플링하여 블록간 정합차를 계산하는 것을 특징으로 하는 움직임 추정 장치.
  14. 제11항에 있어서,
    상기 움직임 벡터 결정부는,
    탐색 영역 전체에 대해 얻어진 블록간 정합차들중 최소 정합차를 가지는 탐색 블록을 결정하고, 상기 결정된 탐색 블록 및 상기 현재 탐색 블록을 기초로 움직임 벡터를 결정하는 것을 특징으로 하는 움직임 추정 장치.
KR1020050010228A 2005-02-03 2005-02-03 움직임 추정 방법 및 장치 KR100677562B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020050010228A KR100677562B1 (ko) 2005-02-03 2005-02-03 움직임 추정 방법 및 장치
US11/338,745 US7889795B2 (en) 2005-02-03 2006-01-25 Method and apparatus for motion estimation
CNB2006100042033A CN100563343C (zh) 2005-02-03 2006-01-28 用于运动估计的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050010228A KR100677562B1 (ko) 2005-02-03 2005-02-03 움직임 추정 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20060089950A KR20060089950A (ko) 2006-08-10
KR100677562B1 true KR100677562B1 (ko) 2007-02-02

Family

ID=36756524

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050010228A KR100677562B1 (ko) 2005-02-03 2005-02-03 움직임 추정 방법 및 장치

Country Status (3)

Country Link
US (1) US7889795B2 (ko)
KR (1) KR100677562B1 (ko)
CN (1) CN100563343C (ko)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8180173B2 (en) 2007-09-21 2012-05-15 DigitalOptics Corporation Europe Limited Flash artifact eye defect correction in blurred images using anisotropic blurring
US8199222B2 (en) 2007-03-05 2012-06-12 DigitalOptics Corporation Europe Limited Low-light video frame enhancement
US8989516B2 (en) * 2007-09-18 2015-03-24 Fotonation Limited Image processing method and apparatus
US7636486B2 (en) 2004-11-10 2009-12-22 Fotonation Ireland Ltd. Method of determining PSF using multiple instances of a nominally similar scene
US9160897B2 (en) 2007-06-14 2015-10-13 Fotonation Limited Fast motion estimation method
US8417055B2 (en) 2007-03-05 2013-04-09 DigitalOptics Corporation Europe Limited Image processing method and apparatus
US8264576B2 (en) 2007-03-05 2012-09-11 DigitalOptics Corporation Europe Limited RGBW sensor array
US7639889B2 (en) 2004-11-10 2009-12-29 Fotonation Ireland Ltd. Method of notifying users regarding motion artifacts based on image analysis
US7639888B2 (en) 2004-11-10 2009-12-29 Fotonation Ireland Ltd. Method and apparatus for initiating subsequent exposures based on determination of motion blurring artifacts
IES20070229A2 (en) 2006-06-05 2007-10-03 Fotonation Vision Ltd Image acquisition method and apparatus
JP4829019B2 (ja) * 2006-07-06 2011-11-30 株式会社東芝 通信端末装置
US7773118B2 (en) 2007-03-25 2010-08-10 Fotonation Vision Limited Handheld article with movement discrimination
US20110141225A1 (en) * 2009-12-11 2011-06-16 Fotonation Ireland Limited Panorama Imaging Based on Low-Res Images
US20110141226A1 (en) * 2009-12-11 2011-06-16 Fotonation Ireland Limited Panorama imaging based on a lo-res map
WO2011069698A1 (en) 2009-12-11 2011-06-16 Tessera Technologies Ireland Limited Panorama imaging
US10080006B2 (en) 2009-12-11 2018-09-18 Fotonation Limited Stereoscopic (3D) panorama creation on handheld device
US20110141224A1 (en) * 2009-12-11 2011-06-16 Fotonation Ireland Limited Panorama Imaging Using Lo-Res Images
US8294748B2 (en) * 2009-12-11 2012-10-23 DigitalOptics Corporation Europe Limited Panorama imaging using a blending map
US20110141229A1 (en) * 2009-12-11 2011-06-16 Fotonation Ireland Limited Panorama imaging using super-resolution
CN109745073B (zh) * 2019-01-10 2021-08-06 武汉中旗生物医疗电子有限公司 弹性成像位移的二维匹配方法及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09163380A (ja) * 1995-12-05 1997-06-20 Sony Corp 画像符号化装置及び動きベクトル検出方法
KR19990055733A (ko) * 1997-12-27 1999-07-15 이계철 전영역 탐색 블럭정합 장치에서 탐색영역확장 방법
KR20040079086A (ko) * 2003-03-06 2004-09-14 삼성전자주식회사 적응적 양방향 움직임 추정 방법을 이용한 내삽 영상의움직임 벡터 생성 방법 및 장치

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW321748B (ko) * 1994-02-23 1997-12-01 Rca Thomson Licensing Corp
US5712799A (en) * 1995-04-04 1998-01-27 Chromatic Research, Inc. Method and structure for performing motion estimation using reduced precision pixel intensity values
US5987178A (en) * 1996-02-22 1999-11-16 Lucent Technologies, Inc. Apparatus and method for a programmable video motion estimator
CN1297134C (zh) 2001-07-09 2007-01-24 三星电子株式会社 用于扫描搜索区内参考宏块窗口的运动估计装置和方法
DE60141961D1 (de) * 2001-09-10 2010-06-10 Texas Instruments Inc Verfahren und Vorrichtung zur Bewegungsvektorenabschätzung
US20040247031A1 (en) * 2002-03-14 2004-12-09 Makoto Hagai Motion vector detection method
US6983020B2 (en) * 2002-03-25 2006-01-03 Citrix Online Llc Method and apparatus for fast block motion detection
TW564645B (en) * 2002-06-13 2003-12-01 Avision Inc Gamma table establishing method and gamma correcting method executed based on the gamma table
WO2004066624A1 (en) * 2003-01-23 2004-08-05 Koninklijke Philips Electronics N.V. Background motion vector detection
WO2006042159A2 (en) * 2004-10-05 2006-04-20 Vectormax Corporation Interactive video collaboration framework

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09163380A (ja) * 1995-12-05 1997-06-20 Sony Corp 画像符号化装置及び動きベクトル検出方法
KR19990055733A (ko) * 1997-12-27 1999-07-15 이계철 전영역 탐색 블럭정합 장치에서 탐색영역확장 방법
KR20040079086A (ko) * 2003-03-06 2004-09-14 삼성전자주식회사 적응적 양방향 움직임 추정 방법을 이용한 내삽 영상의움직임 벡터 생성 방법 및 장치

Also Published As

Publication number Publication date
US7889795B2 (en) 2011-02-15
CN1816154A (zh) 2006-08-09
KR20060089950A (ko) 2006-08-10
US20060171464A1 (en) 2006-08-03
CN100563343C (zh) 2009-11-25

Similar Documents

Publication Publication Date Title
KR100677562B1 (ko) 움직임 추정 방법 및 장치
KR100412622B1 (ko) 화상복호화장치및화상복호화방법
US8451898B2 (en) Motion vector estimation apparatus
JP3386142B2 (ja) 画像復号装置および画像復号方法
EP0896300B1 (en) Device and method for motion vector detection
US20060045186A1 (en) Apparatus and method for coding moving picture
US20050238102A1 (en) Hierarchical motion estimation apparatus and method
JP5089610B2 (ja) ブロック基盤の動き推定方法及び装置
CN111201795B (zh) 存储访问窗口和用于运动矢量修正的填充
JPH07193823A (ja) 映像データ・ブロック変換システム
JP2008523724A (ja) 動画像符号化のための動き推定技術
KR20010083717A (ko) 움직임 추정 방법 및 장치
KR20180037042A (ko) 모션 벡터 필드 코딩 방법 및 디코딩 방법, 및 코딩 및 디코딩 장치들
JPH09233477A (ja) 動きベクトル生成方法
JP4709155B2 (ja) 動き検出装置
KR100301849B1 (ko) 추정된 왜곡값을 사용하는 분수-화소 움직임 추정 방법 및 장치
TWI706668B (zh) 用於視訊編解碼的幀間預測方法以及裝置
JP3670566B2 (ja) 処理時間適応画像符号化方法およびそのプログラムの記録媒体
JP2018182435A (ja) 動きベクトル予測装置及びコンピュータプログラム
KR100994771B1 (ko) 블록정합에 의한 움직임 벡터 탐색방법 및 탐색장치
US6931066B2 (en) Motion vector selection based on a preferred point
JP4250598B2 (ja) 動き補償型ip変換処理装置及び動き補償型ip変換処理方法
JP3513277B2 (ja) 映像符号化装置及び映像復号化装置
US20040120402A1 (en) Motion estimation apparatus for image data compression
JP2003219428A (ja) 動画像符号化装置

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

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20131230

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20141223

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20151229

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee