▶️32분
[영상] 딥러닝 비전검사: 제조 현장 적용
Day 5: 불량 판별 검사 시스템
[영상] 딥러닝 비전검사: 제조 현장 적용
비전 AI 외관검사 > Day 5: 불량 판별 검사 시스템
학습 목표
- 제조 현장에 딥러닝 비전 검사 시스템을 배포하는 전체 아키텍처를 설계할 수 있다
- 엣지 배포와 클라우드 추론의 장단점을 비교할 수 있다
- ONNX 변환과 TensorRT 최적화가 추론 속도에 미치는 영향을 설명할 수 있다
- 불량 판별 시스템의 KPI를 운영 대시보드 관점에서 정의할 수 있다
영상 핵심 정리 — 딥러닝 비전검사 제조 적용
배포 아키텍처
[라인 카메라]
↓ (GigE / USB3)
[엣지 서버 (Jetson / RTX PC)]
├─ OpenCV 전처리
├─ YOLOv8-TensorRT 추론 (4–6ms)
├─ 결과 DB 저장
└─ 불량 감지 → PLC → 컨베이어 정지
↓
[클라우드 (선택)]
├─ 일별 배치 리포트
├─ Data Drift 모니터링
└─ 재학습 파이프라인 (MLflow)엣지 vs 클라우드
| 항목 | 엣지 | 클라우드 |
|---|---|---|
| 지연시간 | 네트워크를 타지 않아 짧고 흔들림이 적다 | 왕복 시간과 혼잡에 따라 달라진다 |
| 오프라인 | 가능 | 불가 |
| 초기 비용 | 장비를 사야 한다 | 낮다 |
| 운영 비용 | 대체로 낮다 | 사용량에 비례한다 |
| 맞는 자리 | 라인 정지 신호처럼 즉시 응답이 필요한 판정 | 야간 배치 분석, 재학습 |
라인 판정을 클라우드로 보내는 설계에서 가장 먼저 물어야 할 것은 평균 지연이 아니라 네트워크가 끊겼을 때 라인을 어떻게 할 것인가다. 그 답이 없으면 엣지로 간다.
모델 최적화
# YOLOv8 → ONNX
from ultralytics import YOLO
model = YOLO('best.pt')
model.export(format='onnx', opset=12)
# TensorRT (NVIDIA GPU)
model.export(format='engine', half=True) # FP16
# 얼마나 빨라지는지는 GPU 세대·모델 크기·입력 해상도에 따라 다르다.
# 변환 전후를 같은 장비, 같은 배치, 같은 해상도로 재서 우리 값을 적는다.
운영 KPI
| KPI | 목표를 어디서 가져오나 | 주기 |
|---|---|---|
| 미검출률(FNR) | 고객 품질 기준(허용 ppm)과 현재 사람 검사 수준 | 일별 |
| 과검출률(FPR) | 재검 공수 여력. 라인이 감당할 수 있는 재검 건수 | 일별 |
| 추론 처리량 | 라인 속도와 시야로 계산한 택트타임(Day 1) | 실시간 |
| 모델 가용성 | 라인 정지 허용 시간 | 월별 |
| 입력 분포 변화 | 아래 정의 참고 | 주별 |
빈칸을 채우지 않은 KPI 표는 관리 지표가 아니다. 남의 표에서 옮긴 "≥ 99%"는 우리 제품에서 무엇을 뜻하는지 말해 주지 않는다.
입력 분포 변화는 이렇게 잰다.
1. 기준 집합을 정한다: 모델을 학습·검증할 때 쓴 이미지
2. 비교할 통계를 정한다
- 간단하게: 밝기 평균·표준편차, 대비, 초점 지표의 분포
- 특징 기준: 모델 중간층 특징의 분포 (PSI, KL 발산 등)
3. 주기마다 최근 이미지의 같은 통계를 구해 기준과 견준다
4. 임계값은 처음부터 정할 수 없다. 몇 주 쌓아 평소 변동 폭을 본 뒤 정한다무엇을 무엇으로 재는지 적지 않은 "드리프트 점수 0.05"는 관리할 수 없는 숫자다.
함정 주의: 배포 후 성능은 조용히 떨어진다. 얼마나 걸리는지는 라인마다 다르다. 조명 교체, 렌즈 오염, 제품 스펙 변경, 소재 로트 변경, 계절 온도 변화가 모두 입력 분포를 바꾼다. 성능이 떨어져도 알람이 울리지 않는다는 것이 문제의 핵심이다. 모델은 계속 판정을 낸다. 그래서 입력 분포 감시와 정기 표본 재검을 처음부터 설계에 넣는다.
다음 task와의 연결
오늘 Day 5 에서 앞 나흘의 산출물을 하나로 잇는다. Day 2 의 분류기, Day 3 의 탐지 가중치, Day 4 의 이상 점수, Day 5 의 조치 매뉴얼 검색을 대시보드 하나에 얹고, 마지막 project 과제에서 저장소로 정리한다.
AI로 학습하기 — 꿀팁
YOLOv8 TensorRT 변환 배포 코드 생성AI 학습 팁
AI 에이전트에게 제조 현장 엣지 서버에 YOLOv8 모델을 ONNX → TensorRT로 변환 배포하는 코드를 작성하게 하고, Data Drift 감지 및 오프라인 동작 방안을 검토하세요.
제조 현장 엣지 서버에 YOLOv8 불량 탐지 모델을 ONNX → TensorRT로 변환해 2~4배 속도를 높이는 코드를 작성해줘. 레이턴시·신뢰성·오프라인 동작을 클라우드 성능보다 우선해야 하는 이유, 입력 이미지 분포 변화(Data Drift)로 인한 성능 저하를 감지하는 모니터링 로직도 포함해줘.
이 팁이 도움이 됐나요?
핵심 포인트
- • 제조 현장 배포는 레이턴시·신뢰성·오프라인 동작이 클라우드 성능보다 우선
- • YOLO11 → ONNX → TensorRT 변환으로 같은 하드웨어에서 추론이 빨라진다. 배수는 GPU·모델·해상도·정밀도에 따라 달라지므로 우리 장비에서 직접 재고 적는다
- • Data Drift(입력 분포 변화)는 조명 교체·제품 변경·계절 변화로 생긴다. 무엇을 무엇으로 재는지 정해 두지 않으면 감지할 수 없다
- • Human-in-the-loop: 불확실성 높은 샘플은 사람 리뷰 → 재학습 데이터
