인물 분류 후보 모델 개요 및 비교 - 100-hours-a-week/5-yeosa-wiki GitHub Wiki
1. 비교 요약
항목 | face_recognition (HOG/CNN) | insightface |
---|---|---|
모델 크기 | 128D | 512D |
성능 | 중간 (HOG), 높음 (CNN) | 매우 높음 (ArcFace 기준) |
속도 | 빠름 (HOG), 느림 (CNN) | 중간~빠름 (모델 따라 다름) |
GPU 필요 여부 | ❌ (HOG), ✅ (CNN) | ✅ 대부분 필요 |
멀티인물 강인성 | ❌ 약함 | ✅ 강함 |
커스터마이징 | 쉬움 | 구조 다양, 유연 |
실무 적용 | 소규모, 빠른 분류 | 정확도 중시, 대규모 |
2. face_recognition 요약
a. 참고 자료
b. 기반 라이브러리: dlib
-
face_recognition은
python 라이브러리
로 내부적으로 dlib 라이브러리를 바탕으로 동작. -
사용되는 모델 이름
기능 백엔드 모델 얼굴 검출 HOG or CNN (dlib) 얼굴 정렬 68-point landmark detector (dlib) 얼굴 임베딩 dlib_face_recognition_resnet_model_v1.dat
(ResNet-34 계열, 128D 임베딩)
c. 핵심 구조 및 작동 방식
가. 얼굴 인식 파이프라인:
- 얼굴 검출 (HOG 또는 CNN)
- 랜드마크 추출 (68개 포인트)
- 얼굴 정렬
- 128D 얼굴 임베딩 생성 (ResNet 기반)
나. 지원 임베딩 모델:
hog
: CPU에서 빠르게 실행되며 정적 이미지에 적합 (정확도 ↓, 속도 ↑)cnn
: GPU 기반 CNN 검출기 사용, 정확도 ↑ (정확도 ↑, 속도 ↓)- 임베딩 생성은 dlib의
resnet_v1
기반 128D face embedding 모델 사용 - 클러스터링/매칭:
- 유클리디안 거리 기반 k-NN 또는 DBSCAN으로 분류
- cosine distance 기반도 가능하나 기본은 L2
다. 학습 및 데이터 구성
- dlib ResNet 모델 학습 데이터:
- VGGFace2, CASIA-WebFace 등 공개 얼굴 데이터셋 기반
- 훈련 파라미터:
- 임베딩 크기: 128
- 입력 사이즈: 150x150 기준 (정렬 후 크롭 이미지)
라. 성능 요약
구성 | HOG | CNN |
---|---|---|
속도 | 빠름 (CPU) | 느림 (GPU 필요) |
정확도 | 낮음 | 높음 |
사용 환경 | 저사양, 빠른 분류 | 정밀한 인식 필요 시 |
- face_recognition은 간단한 구성과 쉬운 사용이 강점이며, CPU에서도 사용 가능한 점이 유리하지만, 정확도와 정밀 분류에는 한계가 있음.
3. insightface 요약
a. 참고 자료
- GitHub
- 모델 허브
b. 핵심 구조 및 개선된 작동 원리
얼굴 인식 프레임워크
가. End-to-End - 검출기(Detector) + 정렬기(Aligner) + 인식기(Embedder) 통합 제공
- 주요 구성:
RetinaFace
: 얼굴 검출ArcFace
,MagFace
,CurricularFace
: 임베딩 생성Buffalo_L
,Antelope_v2
: 사전 통합 파이프라인 모델
나. 임베딩 모델 특징
- ArcFace: 고성능 SOTA 모델로, L2-normalized feature + additive angular margin loss 사용
- MagFace: 얼굴 품질(magintude)에 따른 adaptive loss 사용
- 임베딩 크기: 512D (기본)
다. 특징
- 측면 얼굴, 부분 얼굴, 저해상도 얼굴에도 강인
- 다양한 얼굴 표현, 포즈, 표정에 대한 적응력 높음
c. 학습 및 데이터 구성
- 학습 데이터:
- MS1M, Asian-DeepGlint, WebFace42M 등 대규모 웹 기반 얼굴 이미지
- 주요 사전학습 모델:
glint360k_r100
,arcface_r100
,magface_r100
,buffalo_l
,antelopev2
- 임베딩 크기: 512
- 입력 사이즈: 112x112
d. 성능 요약
모델 | 정확도 (LFW 기준) | 임베딩 크기 | 장점 |
---|---|---|---|
ArcFace R100 | 99.83% | 512 | 고정밀 SOTA |
MagFace | 99.73% | 512 | 품질-aware 특성 |
Buffalo_L | 99.83% | 512 | 전체 파이프라인 통합 |
Antelope_v2 | 99.75% | 512 | 경량 + 높은 정확도 |
- insightface는 얼굴 인식의 최신 연구들을 통합한 프레임워크로, SOTA 정확도와 확장성을 보장하며, 다양한 임베딩 모델을 제공해 상황에 따라 유연하게 선택 가능