피드로 돌아가기
Dev.toAI/ML
원문 읽기
YOLOv8 기반 Drone Crack Detection 파이프라인의 AWS 클라우드 최적화 설계
How I Built a Drone-Based Crack Detection Pipeline on AWS
AI 요약
Context
드론으로 촬영한 고해상도 인프라 이미지의 결함 탐지를 위해 ML 모델 성능보다 데이터 Ingest 및 Process 파이프라인 구축이 핵심인 상황. 4K 이미지의 대용량 데이터 전송 부하와 Edge-Cloud 간의 Inference 위치 결정이 주요 병목 지점으로 작용함.
Technical Solution
- Batch Processing 중심의 Cloud-only Inference 구조를 채택하여 단순한 S3 Prefix 기반의 데이터 스키마 설계
- DefectDetector 클래스에 YOLOv8을 래핑하여 ML 의존성을 격리하고 비즈니스 로직과 인프라 계층을 분리한 추상화 구현
- Lambda 환경의 LibGL 의존성 문제를 해결하기 위해 opencv-python-headless 패키지를 도입한 런타임 최적화
- S3 Key Convention(raw/annotated/reports)을 통해 DB 없이도 Inspection ID 기반의 데이터 추적성을 확보한 단순화 전략
- Confidence Threshold를 환경 변수로 외부화하여 운영팀이 서비스 요구사항에 따라 정밀도와 재현율을 조정 가능한 구조 설계
실천 포인트
- ML 모델 의존성을 얇은 Wrapper로 격리하여 인프라 변경 시에도 비즈니스 로직을 유지하고 있는가 - Serverless 환경에서 OpenCV 사용 시 headless 버전을 사용하여 불필요한 시스템 라이브러리 의존성을 제거했는가 - 복잡한 DB 스키마 대신 S3 Key Convention을 통해 데이터 계층의 단순화를 달성할 수 있는가 - 모델의 Confidence Threshold를 하드코딩하지 않고 런타임 설정으로 제어하여 운영 유연성을 확보했는가