CS/영상처리

[영상처리] 템플릿 매칭 (Template Matching(block matching)), 움직임 벡터, Motion Compensation [컴공과고씨]

시간빌게이츠 2022. 4. 24. 23:47
반응형

Template Matching

-입력 영상에서 작은 크기의 부분 영상 위치를 찾아내고 싶은 경우 사용

- 템플릿은 찾고자 하는 대상이 되는 작은 크기의 영상을 의미

- 템플릿 영상을 입력 영상 전체 영역에 대해 이동하면서 가장 비슷한 위치를 수치적으로 찾음.

   (유사도가 가장 높은거 or 비유사도가 가장 낮은거)

 

Motion Estimation

- 현재 영상과 참조 영상 사이의 motion vector를 추정하는 것.

즉, 두 영상 사이의 움직임 벡터를 알아내는 것

- 모션 벡터를 이용하면 영상을 압축 하여 전송하는게 가능함. (뒤에서 설명)

 

BMA(Block Matching Algorithm)

- 설명 그대로 주어진 이미지 블록에 대해서 motion vector(MV)(모션 벡터)를 찾아주는 것이다.

 * 서치 범위(search range) 내에서 찾는다. 부분 영상을 찾는데 전체 영상을 탐색할 필요는 없기 때문.

 

Block motion estimation

- BMA를 사용해서 각각의 블록에 대한 모션 벡터를 찾음

 

Pixel motion estimation

-BMA를 사용해서 각각의 픽셀에 대한 모션 벡터를 찾음

 

Motion Compensation

- 앞에서 이야기한 이전 영상과 모션벡터를 이용해서 전송할 영상을 압축하여 전송.

1. 이전 영상 fx, 그 다음을 영상 ft이라고 하자.

2. fx 와 ft를 이용해서 모션 벡터(MV)를 구해준다. 

3. fx + MV를 이용해서 예측 영상 ft2를 만들어준다.

4. ft - ft2 와 MV 벡터를 전송하면 수신기에서는 이전에 받은 fx 영상과 받은 MV벡터를 이용해서 ft2를 만들고

   받은 ft - ft2에 만든 ft2를 더해주면 ft 즉, 다음 영상을 만들 수 있다. 

   ft - ft2 => 보낼 영상 - 예측영상 이기때문에 차이가 적어 ft - fx 혹은 ft 보다 작은 데이터 값을 가진다.

 

여기서 fx 와 ft를 이용해서 motion vector를 구하는 것을 Motion Estimation(ME)

fx 와 모션 벡터를 이용해서 예측영상 ft2를 구하는 것을 Motion Compensation(MC)라 한다.

 

 

 

 

 

반응형