"작은 모델이 보고, 큰 모델이 판단한다." ResNet-34의 Grad-CAM 시각화 결과를 Gemini API가 분석하여, 기존 딥러닝 모델이 놓치던 미세 결함(False Negative)을 언어적 추론으로 찾아내는 하이브리드 검출 시스템입니다.
기존 제조 공정의 비전 검사 모델(ResNet-34)은 특정 형태의 결함을 단순 노이즈로 오인하여 놓치는 문제가 있었습니다. 이를 해결하기 위해 데이터를 늘려 재학습하는 고비용 방식 대신, 설명 가능한 AI(XAI)와 대규모 언어 모델(LLM)을 결합한 새로운 파이프라인을 구축했습니다.
- Role 1 (Eye):
ResNet-34가 이미지를 보고 의심 영역을 시각화(Grad-CAM) - Role 2 (Brain):
Gemini Pro Vision이 Grad-CAM 히트맵을 분석하여 종합적인 인사이트를 담은 보고서 생성 - Result: 재학습 없이도 미검출 결함 탐지율 개선
| Category | Technology |
|---|---|
| Backbone Model | ResNet-34 (Feature Extraction) |
| XAI | Grad-CAM (Visual Explanation) |
| Reasoning Core | Google Gemini API (Image Analysis & Decision Making) |
| Tools | PyTorch, OpenCV, Prompt Engineering |
이 프로젝트는 Two-Stage Decision 구조를 따릅니다.
-
Stage 1: Feature Visualization
- ResNet-34 모델이 입력 이미지를 추론하고, 판단의 근거가 되는 영역을 Grad-CAM 히트맵으로 생성합니다.
- 문제점: ResNet은 결함 부위를 '약하게' 보고도 확신이 없어 '정상'으로 분류해버림.
-
Stage 2: LLM Analysis (Gemini API)
- Input: [원본 이미지] + [Grad-CAM 히트맵] + [분석 프롬프트]
- Output: Gemini가 시각적 문맥(Visual Context)을 읽어 최종적으로 종합적인 레포트를 생성합니다.
| File Path | Type | Description |
|---|---|---|
train.ipynb |
Training | ResNet-34 모델 학습 코드 데이터 전처리, Augmentation 및 모델 학습을 수행하여 가중치 파일( .pt)을 생성합니다. |
XAI_GradCam.ipynb |
Analysis | XAI 시각화 및 분석 코드 학습된 모델을 불러와 Grad-CAM 히트맵을 생성하고, 모델의 시각적 판단 근거를 확인합니다. |
app/gradcam_app.py |
UI / Service | Streamlit 기반 분석 대시보드 사용자로부터 이미지를 입력받아 분석 결과를 시각화하고, 리포트를 출력하는 웹 인터페이스입니다. |
app/gemini_api.py |
Logic / LLM | Gemini API 연동 모듈 Grad-CAM 이미지 분석을 위한 프롬프트 엔지니어링이 포함되어 있으며, Gemini Pro Vision과 통신하여 분석 결과를 반환합니다. |
- Dataset: https://www.kaggle.com/datasets/mhskjelvareid/dagm-2007-competition-dataset-optical-inspection
- 이외 세부사항은 발표 자료(.pdf)를 참고해주세요!