- Keypoint is a locally distinct location in an image 위치를 찾는게 키포인트
- The feature descriptor summarizes the local structure around the keypoint 키포인트 주변의 특징을 정의하는게 descriptor
2. BRIEF : Binary Robust Independent Elementary Features
3. ORB : Oriented FAST Rotated BRIEF
Procedure
Step 1 : Gaussian smoothing
Step 2 : Difference-Gaussians and find extrema
Step 3 : Maxima Suppression for edges
→ 각각 이미지 마다 다른 파라미터를 가지는 Gaussian을 통해 DOG를 만들고, Scale 바꿔서도 진행
그렇게 구한 DOG를 통해 locally distinct point를 찾는다
Descriptor
이 f vector를 통해서 각 point의 corresponding을 확인한다
f의 방법에는 위처럼 많음
그 중에서 세 개만 보자
SIFT : Scale Invariant Feature Transform
SIFT 알고리즘을 통해 각 point에서의 descriptor를 알아낼 수 있음
여기서 descriptor는 image gradient histogram?
image 특징을 변환시키기 위해서는 다음과 같은 세가지의 변화와 무관하게 feature를 뽑을 수 있음
- Image translation : 모든 픽셀을 오른쪽으로 이동한 경우도 한 pixel에 대한 same descriptor라고 할 수 있음
- rotation : 회전 역시 ㅇㅇ
- scale : 멀리서 찍은 이미지라도 비교할 수 있어야 함
그리고 부분적으로 불변해야하는 것도 있는데 바로
- illumination changes
- affine transformations and 3d projection
이는 visual landmark를 다른 각도, 거리, 밝기에서 detection할 때 적합하다
SIFT Feature
p : xy좌표
s : 어느 scale에서 연산된 것인가
r : image gradient를 통한 orientation histogram
f : 128 dim, feature descriptor
→ view-point dependent : 보는 point에 따라 달라지는 값들
→ mainly independent : 두 이미지 사이의 correspondence 확인하려면 체크
SIFT Descriptor in Sum
- 특정 point를 잡고 해당 주변를 작은 region으로 나누고 각 부분의 gradient를 구한다
자
여기까지 Point와 Descriptor를 구했어
그림 이제 아래의 두 이미지에서 각 point가 상응되는 건지 어떻게 알 수 있을까?
여태 구한 f vector를 통해 비교를 해서 구할 수 있어
근데 이제 정확성에 약간 문제가 있을 수 있지
벡터 값은 비슷한데 다른 point로 correspondence 하는거야
이 문제를 해결하기 위한 방법은 역시 존재해
Lowe’s Ratio Test
3단계를 통해 모호한 매칭점을 없애
2. 특정 threshold보다 distance가 낮은 것을 골라
3. d(q, p_1) / d(q, p_2) < 1/2가 되도록 하자
여기서 distance는 q와의 차이라고 봐도 무방할 듯
근데 이 작업은 완벽하지는 않어
- SIFT의 단점
연산이 expensive
patenting issue (뭐 저작권이 만료됐다나)
Binary Descriptors
이 방법은 연산이 빠르고 쉬운 compute가능
- Key Idea
- point로 부터 patch를 임의의 크기의 patch를 정해
- 그 범위 내의 pixel들을 쌍을 맺게 연결해줘
- 각 pair별로 intensity를 비교해서 0, 1의 binary bit를 반환
- 그리고 모든 값을 concat
장점
- Compact Descriptor
- Fast to compute - 간단한 intensity 비교
단점
- pair의 조합은 한번만 정할 수 있음
- test한 pixel의 비트 순서를 고정시켜야 함
BRIEF :
Binary Robust Independent Elementary Features
- 256 bit descriptor
- 5 different geometries as sampling strategies
- Noise : operations performed on a smoothed img to deal with noise
5번째 말고는 성능이 대체로 좋긴한데 만약 이미지가 조금 움직인다면 descriptor는 변할 것이고 이는 단점으로 이어짐
이를 개선시킨 방법으로 아래가 있음
ORB :
Oriented fast Rotated BRIEF
BRIEF에 Rotation 요소를 가미한 방법