인공지능/컴퓨터비전

[컴퓨터비전개론][5장]feature descriptor

우향우@ 2023. 4. 3. 15:59

개요

저번 시간에 이미지의 특징점을 찾아내었다. 이번에는 이렇게 찾아낸 특징점을 다른 이미지의 동일한 특징점과 매칭시키기 위해 특징점의 지역적인 고유한 특성을 추출하고 비교하는법을 배워보겠다.

 

변형

같은 공간의 같은 물체라 하더라도 찍은 각도나 시간에 따라 투영 형태와 색상이 다를 수 있다. 이러한 점때문에 우리가 추출할 특징점의 특성은 다음의 변형들에 크게 영향받지 않아야한다.

1. 크기

2. 회전

3. 위치

4. 색상

이러한 변형들을 견뎌낼 수 있는 특성을 추출해보자.

 

MOPS (Multiscale Oriented PatcheS descriptor)

우리는 이러한 특성으로 해당 점의 주변 사각형이 이루는 그림을 그 특성으로 사용할 것이다.

회전 극복

우선 해당 특징점에서 H의 큰 고유값에 대한 고유 벡터는 해당 특징점에서 intensity의 변화가 가장 큰 방향이다. 이 방향에 평행한 변을 가지고 특징점을 중점으로 하며 nxn(픽셀)크기의 사각형을 추출한다. 즉 기울어진 사각형의 각 픽셀을 이미지에서 추출한다. 그 다음 그러한 사각형을 해당 벡터가 오른쪽으로 향하도록 회전시켜 행렬로 본다면 다른 이미지에서도 고정된 회전을 가진 특징행렬을 얻을 수 있게된다. 이렇게 회전을 극복하였다. 추가로 성능을 위해 nxn을 더 작은 mxm으로 줄여 사용한다.

크기 극복

다음은 크기를 극복해보자. 단순히 원본이미지에 대한 여러 축소버전인 가우시안 피라미드를 가지고온다. 그 후 각 사이즈 이미지에 각각 특징점을 추출하고 nxn픽셀크기의 사각형으로 추출하고 mxm으로 축소한다. 각 이미지 해상도는 네배씩 차이나기에 사각형이 이미지에 비례하여 4배 크게 추출될 것이고 실체에 대한 여러 크기 특징행렬이 추출될 것이다. 이후 상대 이미지도 마찬가지로 추출하여 비교하면 다양한 사이즈 버전으로 비교하게 되어 크기도 어느정도 극복할 수 있다.

위치 극복

위치는 어차피 각 특징점을 비교할 것이므로 큰 의미가 없다. 이 특징점 사이의 위치차이는 이후 이미지를 합칠때 고려될 것이다.

 

SIFT (Scale Invariant Feature Transform)

마지막으로 색상 변화를 극복해보자. 색상을 극복하려면 형태만 보고 비교를 하면된다. 즉 이전의 edge detection의 알고리즘을 살짝 적용하여 특징행렬을 추출할 것이다.

간단하게 MOPS에서 사각형의 픽셀을 추출할때 색상이 아닌 해당 픽셀의 gradient 벡터의 방향을 추출한다. 여기서 크기에 대해 thresholding을 살짝 적용할수도 있다. 그리고 이러한 방향들의 행렬을 특징 행렬로 사용하는 것이다. 이것은 각 픽셀의 edge로서의 방향, 즉 형태에 대한 값을 가진 특징이 되게된다.

마지막으로 이를 행렬자체로 특징을 저장하는 것이 아닌 분포도를 이용하여 벡터로 저장한다. 예를 들어 행렬을 4x4 그리드 단위로 나눈다. 각 그리드에 대해 그 그리드안의 벡터들의 방향을 8방향으로 분류하여 분포를 구한다. (ex) 0도 3개 45도 2개 .... 315도 1개) 이러면 해당 행렬의 그리드 개수 x 8 개의 값이 나올 것이고 이를 일자로 둔 벡터를 최종적인 특징으로 사용한다. 즉 16x16 행렬에 4x4 그리드를 사용하면 16개의 그리드에 8방향을 가져 16x8 = 128차원 벡터를 특징으로 가지게 된다.

 

매칭

각 특이점의 특징을 추출하였다면 이제 서로 다른 이미지의 각 특이점들중 짝을 매칭시켜야 할것이다.

가장 단순한 방법은 각 특이점 마다 상대의 모든 특이점과의 벡터 norm을 구하고 가장 가까운 특이점과 매칭하는 것이다. 하지만 이는 일부 반복적인 패턴을 가지는 부분이 있는 이미지에서 형태는 같지만 실체는 다른 특이점끼리 매칭되는 것을 막지 못한다는 단점이 있다. 이를 막기 위하여 가장 가까운 특이점과의 거리/그 다음으로 가까운 특이점과의 거리가 특정 값보다 높다면 특이점을 매칭에서 제외하는 방법을 쓸 수 있다. 1등과 2등사이의 거리가 크지않다면 비슷한 패턴이 이미지상에 많은 특이점으로 취급하는 것이고 이것이 제외됨으로써 다른 비슷한 패턴이 없는 특이점에 의해 매칭이 맞겨지며 더 나은 결과를 기대할 수 있다.

 

 

 

 

 

 

참고 강의

부산대학교 정보컴퓨터공학부 컴퓨터비전개론(감진규 교수님)