1. 이미지 데이터 관점
- SIFT와 ORB는 이미지에서 특징점(예: 모서리, 물체의 윤곽 등)을 찾아내는 데 사용되는 알고리즘
- 이러한 특징점들은 이미지를 인식하고, 다른 이미지와 비교하는 데 중요한 역할
1.1.1. 작동 원리:
- 다양한 스케일에서의 특징점 찾기:
SIFT는 이미지를 여러 스케일(즉, 크기)로 변환하면서 각 스케일에서 특징점을 찾음
- 이 과정에서 이미지가 확대되거나 축소되어도 동일한 특징점을 찾을 수 있음
- 키 포인트 선정:
이미지의 각 지점에서 그 주변과 얼마나 다른지를 계산하여, 주변과 많이 다른 지점들을 키 포인트(특징점)로 선정
- 이러한 지점들은 일반적으로 이미지의 중요한 부분(예: 모서리, 눈, 입 등)에 해당
- 방향 할당:
각 키 포인트에 방향을 할당하여, 이미지의 회전에도 불변한 특성을 갖도록
- 이는 이미지가 회전되어도 동일한 특징점을 인식할 수 있게 해줍니다.
- 특징 디스크립터 생성:
각 키 포인트 주변의 작은 영역을 살펴보고, 그 패턴을 나타내는 숫자들의 집합(디스크립터)을 생성
이 디스크립터는
키 포인트를 나타내는 "지문"과 같은 역할을 하며, 다른 이미지의 키 포인트와 비교할 때 사용됩니다.
1.1.2. 장점:
- 이미지의 스케일과 회전에 불변
- 강력하고 정확한 특징점을 제공
1.1.3. 단점:
1.2. ORB (Oriented FAST and Rotated BRIEF)
1.2.1. 작동 원리:
- FAST 키 포인트 검출:
- ORB는
FAST 알고리즘을 사용하여 이미지에서 키 포인트를 빠르게 찾음
FAST는 픽셀 주변을 둘러싼 원형의 픽셀들을 검사하여, 중앙 픽셀과 충분히 다른 픽셀들이 많으면 그 위치를 키 포인트로 선택
- 키 포인트에 방향 할당:
각 키 포인트에 방향을 할당하여 회전에 불변하는 특성을 부여
- 이는 이미지가 회전해도 키 포인트를 일관되게 인식할 수 있게 해줍니다.
- BRIEF 디스크립터를 회전 불변으로 변환:
- ORB는 BRIEF 디스크립터를 사용하여 각 키 포인트 주변의 패턴을 나타내는 숫자들의 집합을 생성하지만,
- 이를 회전에 불변하게 만들기 위해 키 포인트의 방향 정보를 활용하여 디스크립터를 조정합니다.
1.2.2. 장점:
- SIFT보다 훨씬 빠르며, 메모리 사용량도 적습니다.
- 회전에 불변한 특징점을 제공합니다.
1.2.3. 단점:
-
SIFT에 비해 덜 정확할 수 있으며, 스케일 변화에 불변성은 SIFT만큼 강력하지 않습니다.
-
SIFT와 ORB는 각각의 장단점이 있지만, 이미지에서 중요한 지점을 찾아내는 데 매우 유용한 알고리즘
-
사용하는 상황에 따라 더 적합한 알고리즘을 선택할 수 있습니다.
2. 투영된 2D 데이터와 글로벌 2D 맵에서 특징을 추출하는 관점
투영된 2D 데이터와 글로벌 2D 맵에서 특징을 추출하는 과정
은 이미지 매칭과 로봇의 위치 인식에 있어 중요한 역할을 합니다.
- 이를 위해 사용되는 주요 알고리즘으로는 SIFT, SURF, 그리고 ORB
- 각각의 알고리즘은 독특한 방식으로 특징점을 검출하고 기술
동작 원리:
- 2D 포인트 클라우드는 일반적으로 (x, y) 좌표로 구성된 점들의 집합으로, 픽셀 기반의 이미지 데이터와는 다릅니다.
- SIFT (Scale-Invariant Feature Transform) 알고리즘은 원래 이미지 데이터 내에서, 반복 가능하고 스케일 및 회전에 불변인 특징점을 검출하고 기술하기 위해 개발되었습니다.
- 따라서, SIFT를 직접적으로 2D 포인트 클라우드 데이터에 적용하는 것은 바로 가능하지 않음
- 그럼에도 불구하고, 포인트 클라우드 데이터에 SIFT와 같은 이미지 기반 특징점 알고리즘을 적용하려는 시도는 있을 수 있으며, 이를 위해서는
포인트 클라우드를 이미지 형태로 변환하는 전처리 단계가 필요
포인트 클라우드를 이미지로 변환
- 밀도 기반 변환:
- 2D 포인트 클라우드 데이터를 그리드 형태의 이미지로 변환
- 이 과정에서 각 그리드 셀은 포인트 클라우드 내의 점들의 밀도를 기반으로 그 셀의 픽셀 강도를 결정
- 높은 밀도의 영역은 높은 픽셀 강도 값을 갖게 하여, 점들의 분포를 이미지 형태로 표현
- 거리 기반 변환:
- 포인트 클라우드의 각 점을 중심으로 일정 거리 내에 있는 다른 점들의 수를 계산하고, 이를 이미지의 픽셀 값으로 사용할 수도 있습니다.
- 이 방법은 국소적인 구조 정보를 반영할 수 있습니다.
그 후 과정
- 스케일 공간 극값 검출:
이미지를 여러 스케일에서 관찰하여 특징점을 검출
- 이는
가우시안 블러를 적용한 후
, 인접 스케일 간의 차이(Difference of Gaussians, DoG)를 계산하여 수행
- 특징점 위치 정제:
- 방향 할당:
- 각 특징점에 대해 방향을 할당하여 회전에 대한 불변성을 제공
- 특징 디스크립터 생성:
- 특징점 주변 영역의 그래디언트 정보를 사용하여 특징점을 기술
장단점:
- 장점: 스케일과 회전에 대한 높은 불변성, 다양한 환경에서 강력한 매칭 성능.
- 단점: 계산 비용이 높고, 실시간 처리에는 적합하지 않을 수 있음.
SURF (Speeded Up Robust Features)
동작 원리:
- 빠른 헤시안 행렬 근사를 이용한 특징점 검출:
- SIFT의 DoG에 비해 계산이 더 빠른 박스 필터를 사용하여 스케일 공간을 근사
- 특징점 위치 및 스케일 정제:
- 헤시안 행렬의 결정값을 사용하여 특징점의 위치와 스케일을 정제
- 방향 할당 및 디스크립터 생성: SIFT와 유사하게, 특징점에 방향을 할당하고, 주변 영역의 간략화된 정보를 이용하여 디스크립터를 생성합니다.
장단점:
- 장점: SIFT보다 계산 속도가 빠르면서도, 스케일과 회전에 대한 불변성을 제공합니다.
- 단점: SIFT에 비해 약간의 정확도 저하가 발생할 수 있음. 계산량이 여전히 많아 제한된 리소스에서의 처리가 도전적일 수 있음.
ORB (Oriented FAST and Rotated BRIEF)
동작 원리:
- FAST 특징점 검출과 방향 할당: ORB는 FAST 알고리즘을 사용하여 특징점을 빠르게 검출하고, 각 특징점에 방향을 할당합니다.
- 회전 불변 BRIEF 디스크립터: 특징점 주변의 이진 테스트 결과를 사용하여 디스크립터를 생성하며, 이는 회전에 대해 불변하도록 수정됩니다.
장단점:
- 장점: 매우 빠른 계산 속도, 낮은 메모리 사용량. 실시간 처리와 모바일 또는 제한된 컴퓨팅 리소스 환경에서 유용합니다.
- 단점: 스케일 변화에 대한 불변성이 SIFT나 SURF만큼 강력하지 않음. 일부 환경에서 매칭 정확도가 낮을 수 있음.
3. 투영된 2D 데이터와 글로벌 2D 맵에서 특징을 추출하는 관점 (2)
- 2D 포인트 클라우드 데이터에서 특징점을 찾기 위해 이미지 기반 특징점 검출 알고리즘을 사용하는 대신, 다음과 같은 더 직접적이고 포인트 클라우드 데이터에 적합한 방법들이 있습니다.
- 이 방법들은 주로 포인트 클라우드의 공간적 구조와 점들 간의 관계를 직접 분석하여 특징점을 검출합니다.
1. Random Sample Consensus (RANSAC)
- RANSAC은 이상치에 강건한 특징점 검출 및 모델 피팅 방법
- 포인트 클라우드 데이터에서 특정 패턴(예: 선, 원, 평면 등)을 찾는 데 자주 사용
- 동작 원리:
- 데이터 포인트의 무작위 샘플을 선택하여 모델을 생성하고, 모델에 잘 맞는 데이터 포인트(일치 집합)를 찾음
- 이 과정을 여러 번 반복하여 가장 큰 일치 집합을 가진 모델을 최종 모델로 선택
- 장점: 이상치에 강하고 간단한 형태의 객체나 구조를 효과적으로 찾을 수 있습니다.
- 단점: 모델의 가정(선, 원, 평면 등)이 데이터와 잘 맞아야 하며, 계산 비용이 높을 수 있습니다.
2. Principal Component Analysis (PCA)
-
PCA는 포인트 클라우드 데이터의 주요 방향성을 찾고, 데이터의 분산이 가장 큰 방향을 기반으로 특징점을 검출하는 방법
-
동작 원리: 포인트 클라우드의 공분산 행렬을 계산하고, 이를 기반으로 고유값 분해를 수행하여 주성분(고유벡터)을 찾습니다. 주성분은 데이터가 가장 넓게 퍼져 있는 방향을 나타냅니다.
-
장점: 데이터의 전반적인 형태와 방향성을 파악할 수 있으며, 노이즈에 강건합니다.
-
단점: 지역적인 특징보다는 전역적인 구조에 더 중점을 둡니다.
3. Local Feature Aggregation
-
지역적 특성을 기반으로 포인트 클라우드 내의 특징점을 찾는 방법으로, k-최근접 이웃(k-NN)이나 반경 기반 탐색을 이용해 각 포인트의 이웃을 찾고, 이들 간의 상대적인 위치나 공간적인 패턴을 분석합니다.
-
동작 원리: 각 포인트에 대해 주변 이웃 포인트들을 찾고, 이들의 공간적인 관계나 패턴을 분석하여 특징점을 식별합니다.
-
장점: 지역적인 구조와 형태를 반영한 특징점을 찾을 수 있으며, 다양한 형태의 포인트 클라우드에 적용 가능합니다.
-
단점: 적절한 이웃의 크기 선택이 중요하며, 계산 비용이 다소 높을 수 있습니다.
이러한 방법들은 각각의 장단점이 있으며, 구체적인 응용 사례와 요구 사항에 따라 적절한 방법을 선택해야 합니다. 포인트 클라우드 데이터의 특성과 분석 목적을 고려하여, 가장 효과적인 특징점 검출 방법을 결정하는 것이 중요합니다.