Lecture 6 : Feature Descriptors
(1) 좋은 Descriptor의 조건 4가지 — 정의·이유·평가법·실무 팁
① Repeatability (반복 검출성)
- 정의: 뷰포인트·조명·스케일이 달라져도 동일한 물체의 동일 부근에서 계속 같은 특징을 뽑아낼 수 있어야 함.
- 왜 중요? 매칭의 전제조건. 같은 물체라도 프레임마다 다른 특성이 뽑히면 매칭 그래프가 붕괴.
- 평가/지표: 동일 장면의 변형(회전, 스케일, 광량, 노이즈) 세트에서 재검출 비율(overlap ≥ τ)을 측정.
- 실무 팁: 검출기(FAST/Harris/DoG)와 디스크립터(SIFT/ORB)의 조합 성능을 함께 본다.
② Saliency / Distinctiveness (식별성)
- 정의: 다른 특징들과 잘 구분될 만큼 벡터 공간에서 충분히 떨어져 있음.
- 왜 중요? 오탐/혼동 감소 → 최근접 거리 비율 테스트(ratio test)에서 명확한 마진 확보.
- 평가/지표: inter-class 거리 ↑, intra-class 거리 ↓, 최근접/차근접 거리비 d1/d2<αd_1/d_2 < \alpha 통과율.
- 실무 팁: SIFT처럼 고차원+정규화 혹은 ORB처럼 학습된 샘플링 패턴이 식별성에 유리.
③ Compactness & Efficiency (간결성·효율)
- 정의: 차원·비트 수가 적고 계산/비교가 빠름.
- 왜 중요? 실시간·대규모 매칭(백만 키포인트)에서 메모리/속도가 병목.
- 평가/지표: 차원 수, 기술자 생성 시간, 매칭 시간, 메모리 풋프린트.
- 실무 팁: 모바일/임베디드/AR은 **해밍 거리 바이너리(ORB/BRIEF)**가 유리.
④ Locality (지역성)
- 정의: 작은 국소 패치만을 기술 → 배경 가림(occlusion), 비정합의 영향 최소화.
- 왜 중요? 부분 가림·비선형 왜곡에서 강건성 확보.
- 평가/지표: 패치 크기 변화에 따른 매칭 유지율, occlusion 비율에 따른 강건성 곡선.
- 실무 팁: 너무 작은 패치는 노이즈에 취약, 너무 크면 지역성 저하 → 스케일 적응형 패치(SIFT)가 정석.
(2) SIFT vs SURF — 단계별·불변성·속도·실전 선택 기준
항목SIFTSURF
| 핵심 아이디어 | DoG(LoG 근사)로 스케일 공간 극값 탐색 + gradient 기반 128D | Hessian determinant 근사 + Integral Image·Haar 응답 기반 64D |
| Keypoint 검출 | Gaussian pyramid에서 DoG 극값(Scale-space) | 박스 필터로 Hessian det 근사(스케일 빠르게 탐색) |
| 정제/제거 | 테일러 전개로 위치/스케일 정밀화, edge-like 억제 | Hessian 응답 기준의 안정 포인트 선택 |
| Orientation | 주변 gradient histogram 피크 → 회전 불변 | Haar wavelet 응답의 지배 방향 → 회전 불변 |
| Descriptor | 4×4 셀 × 8 bins = 128D, L2 정규화(+clipping) | 4×4 subregion의 (dx, dy, |
| 불변성 | 스케일·회전·조명(정규화로) 강함 | 스케일·회전 강함, 조명 변화는 상대적으로 약함 |
| 속도 | 상대적으로 느림 | 3~7배 빠름(Integral Image 덕분) |
| 정확도 | 텍스처 복잡·조명 변화 큰 장면에서 강함 | 다수/실시간 처리에서 속도-정확도 균형 |
| 적합 사례 | 정밀 정합(3D 재구성, 고신뢰 증거 매칭) | 로보틱스·SLAM·모바일 실시간 비전 |
선택 가이드
- 정확도 최우선 / 조명 변화 큼 → SIFT
- 실시간/대량 매칭 / 임베디드 → SURF
- 특허/라이선스 이슈 회피 필요 → ORB 등 대안 고려
(3) BRIEF / ORB — 장단점·차이·시험 포인트
BRIEF (Binary Robust Independent Elementary Features)
- 원리: 패치 내 픽셀 쌍 밝기 비교 I(pi)<I(pj)I(p_i) < I(p_j) → 비트(0/1). 수백 쌍 → n-bit 기술자.
- 비교: Hamming distance(XOR popcount) → 매우 빠름.
- 장점
- 생성·매칭 초고속, 메모리 극소(수백 비트)
- 단순 구현, k-d tree 대신 LSH/bitset으로 확장성 좋음
- 단점
- 회전·스케일 불변성 부족(샘플링 패턴 고정)
- 강한 조명/블러 변화에서 취약
- 활용: 정지 카메라·작은 변형·실시간 카운팅 등 속도 지상주의 상황
ORB (Oriented FAST and Rotated BRIEF)
- 검출: FAST 코너 + Harris 응답으로 랭킹(강인한 코너 선별)
- 회전 보정: 패치의 집중 모멘트(centroid) 기반 방향 추정 → BRIEF 샘플링 패턴을 회전
- 샘플링 학습: 256쌍 비트 테스트를 de-correlation되게 학습 → 식별성↑
- 기술자/매칭: 256-bit Binary, Hamming distance
- 장점
- SIFT/SURF 대비 매우 빠름, 무상용 특허 부담 적음
- 회전 불변성 확보(스케일은 제한적)
- 단점
- 큰 스케일 변화·심한 뷰포인트 변화에서 성능 저하
- 텍스처 빈약·강한 blur 장면에서 취약
- 활용: SLAM/AR/모바일 등 실시간 필수이면서 회전 변화가 있는 경우의 기본값
요지 한 줄
- BRIEF: “가볍고 빠르지만 불변성 약함”
- ORB: “회전 보정+학습 샘플링으로 BRIEF의 약점을 상당 부분 보완”
(4) HOG의 정규화 원리 — 조명·콘트라스트 불변성의 핵
파이프라인 핵심
- Gradient 계산: gx,gyg_x, g_y → magnitude ∣g∣|g|, orientation θ\theta
- Cell 히스토그램: 보통 8×8 px cell, 방향 bins(예: 9)
- Block 정규화: 2×2 cells(=16×16 px) 슬라이딩 블록으로 묶어 정규화
- 모든 블록 벡터 연결(concatenate) → 최종 고차원 특징
왜 정규화가 조명 변화에 강한가?
- 조명/감마 변화는 주로 전역 스케일 변화(밝기 배율·오프셋)로 나타남.
- 블록 내부에서 히스토그램 벡터 v\mathbf{v}를 정규화하면, 전역 스케일이 소거되어 상대적 기울기 패턴만 남음.
- 대표 방식: L2-Hys
- L2-norm: v^=v∥v∥22+ϵ2\mathbf{\hat v}=\frac{\mathbf{v}}{\sqrt{\|\mathbf{v}\|_2^2+\epsilon^2}}
- Clipping: v^:=min(v^,0.2)\mathbf{\hat v} := \min(\mathbf{\hat v}, 0.2)
- 재정규화(L2)
→ 국소 대비(contrast) 표준화 + 이상치 완화로 조명/그림자 변화에 강건.
설계 의도 3가지
- 국소 정규화(Local contrast normalization): 전역 밝기 변화 무력화
- 오버랩 블록: 정규화 윈도우를 겹치게 하여 경계 강건성 확보
- Clipping(Hys): 특정 방향으로 치우친 강한 에지의 지배를 완화 → 식별성↑
빠른 암기 포인트(구호형)
- 좋은 디스크립터: “반복·구분·간결·국소”
- SIFT vs SURF: “도그-정확 / 헤시안-속도”
- BRIEF vs ORB: “비트-빠름 / 회전-보강”
- HOG 정규화: “블록 L2-Hys → 조명 무력화”
📘 CV2025-2-07. Feature Matching & Homography (Part 1)
1️⃣ RANSAC (Random Sample Consensus)
- 정의: Outlier가 포함된 데이터에서 모델을 강인하게 추정하기 위한 확률적 반복 알고리즘.
- 절차 (5단계)
- 임의의 최소 샘플 s 선택 (예: 직선 피팅은 2점, Homography는 4점)
- 샘플로 모델 추정
- 전체 데이터에 대해 inlier 여부 평가 (거리 ≤ t)
- inlier 개수 ≥ d → 기록
- N회 반복 후 가장 inlier가 많은 모델 채택
- 장점: Outlier가 많아도 robust, 다양한 모델 추정 가능
- 단점: 반복 횟수 ↑ → 계산량 큼, 파라미터 선택(t, N) 민감
- 파라미터 의미
- N: 반복 횟수 (성공 확률 ↑)
- t: inlier 판단 임계값
- s: 모델 추정 최소 샘플 크기
- d: inlier 최소 개수
📌 시험 포인트: “RANSAC 절차 5단계”, “파라미터 의미”, “Least Squares보다 강인한 이유 → Outlier 무시 가능”
2️⃣ Least Squares vs Total Least Squares
- Least Squares (LSQ)
- 목적: 수직 방향 오차의 제곱합 최소화
- 한계: x축 기울기가 무한대인 수직선(Vertical line) 문제에서 실패
- Outlier에 취약
- Total Least Squares (TLSQ)
- 목적: 모든 방향의 오차 최소화
- 해법: SVD 기반 최소 제곱 → 기울기·회전 불변
- 시험 필수 문구:
“Least Squares는 수직선에 대해 실패하며, Total Least Squares는 모든 방향 오차를 고려해 이를 보완한다.”
📌 시험 포인트: “LSQ의 한계”, “TLSQ의 개선점”, “SVD 활용 이유”
3️⃣ Feature Matching (특징 매칭)
- 정의: 두 이미지에서 동일 영역/물체를 나타내는 대응점을 찾는 과정
- Descriptor: SIFT, SURF, ORB 등
- Matching 방법
- Brute-Force (BF): 모든 쌍 비교 → 정확도 높음, 속도 느림
- FLANN (Fast Library for Approximate Nearest Neighbors): 근사 최근접 탐색 → 대규모 데이터에 빠름
- 거리 계산
- L2 distance (유클리드 거리)
- Hamming distance (binary descriptor, ORB/BRIEF)
- Lowe’s ratio test: 최근접 거리 / 차근접 거리 비율 < 0.75 → 신뢰성 ↑
📌 시험 포인트: “BF vs FLANN 차이”, “Ratio test가 필요한 이유(잘못된 매칭 제거)”
4️⃣ Image Alignment (영상 정합)
- 정의: 동일 장면의 두 이미지를 대응점에 맞추어 정렬하는 과정
- 접근법
- Direct (pixel-based): 픽셀 intensity 직접 비교, 정확하나 조명/뷰포인트에 약함
- Feature-based: 특징점 추출+매칭+변환(RANSAC, Homography), robust하고 일반적
- 비교
- Direct: 정밀하지만 Outlier/조명 변화 취약
- Feature-based: 전처리 필요하지만 Outlier에 강함
📌 시험 포인트: “Direct vs Feature-based 차이”
5️⃣ Homography (호모그래피, 투영 변환)
- 정의: 한 평면을 다른 평면으로 사상하는 3×3 변환 행렬x′=Hxx' = Hx
- 유효 조건
- 장면이 평면적 (Planar scene)일 때
- 깊이 변화가 거의 없을 때
- 카메라 회전만 있고 이동(translation)이 거의 없을 때
- 의미: Perspective Transform → 직선을 직선으로 매핑
📌 시험 포인트: “Homography의 조건 3가지”, “H 행렬 의미”
6️⃣ Homography 추정 (Estimation of H)
- 방법
- 최소 4쌍 대응점 필요 (8개의 독립 방정식)
- 선형 방정식 Ax=0 구성
- SVD로 해를 구함 (가장 작은 singular value에 대응하는 벡터)
- 이유: 잡음 있는 데이터에서 안정적 최소 해를 구하기 위해
📌 시험 포인트: “최소 대응점 수 = 4쌍”, “SVD를 쓰는 이유”
7️⃣ Homography + RANSAC 통합
- 필요성: 매칭 점에는 Outlier 존재 → 직접 H 추정 불가
- 절차
- 임의 4쌍 선택 → H 계산
- Inlier 판단 (거리 ≤ t)
- 반복 후 최적 H 선택
- 결과: Outlier 제거된 robust Homography
📌 시험 포인트: “RANSAC으로 H 추정 절차 설명”
8️⃣ Image Stitching (영상 이어붙이기)
- 정의: 여러 장의 이미지를 정합+변환하여 하나의 파노라마 생성
- 과정
- 특징점 검출 (SIFT/ORB)
- 특징점 매칭 (BF/FLANN + ratio test)
- RANSAC으로 Homography 계산
- Warping (cv2.warpPerspective)
- 블렌딩 (Seam removal, Multi-band blending)
- Seam removal: 경계선 자국 제거 (중복 영역 자연스럽게 합성)
- Multi-band blending: 주파수 대역별 합성 → 색·밝기 차이 줄이고 부드러운 파노라마
📌 시험 포인트: “Image Stitching 파이프라인 단계”, “Seam removal / Multi-band blending 목적”
✅ 예상 핵심 시험문제 정리
- RANSAC 절차 5단계와 파라미터 의미
- Least Squares 한계와 TLSQ 개선점
- BF Matching vs FLANN 차이 / Ratio test 필요성
- Direct vs Feature-based Alignment 비교
- Homography 조건 3가지와 행렬 H 의미
- Homography 추정 최소 대응점 수와 SVD 이유
- RANSAC 기반 Homography 추정 절차
- Image Stitching 파이프라인 단계 및 Blending 방법 목적
'개인 프로젝트 > 대학원 수업 정리' 카테고리의 다른 글
| [컴퓨터와 비전] 논문발표_Detection&Segmentation (1) | 2025.10.29 |
|---|---|
| [기초통계] 중요 과제 (0) | 2025.10.28 |
| Computer Vision 개념정리 (0) | 2025.10.15 |
| 컴퓨터와 비전 (0) | 2025.10.14 |
| 인공지능 수학 (0) | 2025.10.13 |
댓글