Developer Log
Portfolio

Checkcar | 비전 AI 기반 완성차 검사 플랫폼

비전 AI 기반 완성차 검사 플랫폼 checkcar

  • 비전 AI 검사 결과를 웹으로 요청/처리/모니터링하는 서비스형 품질 검사 플랫폼
  • 맡은 역할
    • AWS EKS 기반 컨테이너 배포 및 Jenkins CI/CD 구축, Istio Ingress·Grafana 모니터링 구성
    • JWT 기반 인증/인가 및 백엔드 기능 구현/안정화, Kafka 기반 비동기 처리
    • ViViT 기반 와이퍼 동작 분류 모델 학습·튜닝 및 성능 개선(70%대 → 80%대)
  • 기간: 2025.07 – 2025.09
  • 참여 인원: 7명
  • 역할: AI 모델링, 백엔드(BE), 프론트엔드(FE), 클라우드 배포

프로젝트 개요


완성차 제조 마지막 단계의 외관 품질 검사를 자동화하는 웹 기반 비전 AI 시스템입니다. 도장면, 램프, 와이퍼, 워셔액의 결함과 부품 작동 상태를 점검하여 자동으로 식별합니다. 통합 대시보드를 통해 실시간으로 검사 결과 확인이 가능합니다.

주요 목표


  • 품질 및 안정성 향상: 불량률 감소 및 일관된 품질 기준 유지
  • 접근성 및 효율성 증대: 웹 기반으로 언제 어디서나 검사 요청 및 실시간 모니터링 가능
  • 정확도 및 신뢰성 확보: 결함 검출 정확도 80% 이상 달성 목표 및 검사 시간 단축

사용 기술 및 도구


  • AI: YOLOv8n, ViViT, OpenAI API, RAG, PyTorch
  • Backend: Java, Spring Boot,, FastAPI, Python
  • Frontend: JavaScript, React
  • Database: MySQL
  • Cloud & Infra: AWS, Amazon EKS, Istio, Docker, Kafka, Amazon RDS, Amazon S3

주요 기능


  • AI 모델
    • 도장면 결함 탐지: 이미지 분석을 통해 스크래치, 찌그러짐 등 결함 식별
    • 램프 밝기 검사: 램프의 ON/OFF 상태 및 밝기 균일도를 정량적으로 측정하여 결함 탐지
    • 워셔액 분사 감지: 분출 영상을 프레임 단위로 분석하여 분사 각도, 분포 등을 계산하고 결함 판단
    • 와이퍼 이상 동작 인식: Blender와 Unreal 엔진으로 데이터셋을 구축하고, ViViT 모델을 활용해 7가지 동작 클래스 분류
    • RAG 기반 조치 제안: 결함 유형에 따라 맞춤형 수리 가이드 및 작업 보고서 자동 생성
  • 웹 애플리케이션
    • 관리자와 작업자 권한을 분리한 체계적인 접근 제어 구현
    • 관리자 대시보드에서 전체 검사 현황 모니터링 및 통계 조회 가능
    • 작업자는 할당된 검사 업무 수행 및 결과 보고서 작성
    • Kafka를 활용한 비동기 메시징 시스템으로 다수의 차량 동시 검사 처리

주요 기여 및 담당 업무


제가 담당한 주요 역할은 AI 모델링, DevOps 구축, 그리고 개발의 핵심적인 부분을 완성하는 것이었습니다.

  • 클라우드 배포 및 CI/CD 환경 구축 (DevOps)
    • 프로젝트의 모든 서비스를 Docker 컨테이너화하여 AWS EKS 환경에 성공적으로 배포했습니다.
    • Jenkins를 활용한 CI/CD 파이프라인을 구축하여 코드 변경 시 자동으로 빌드 및 배포가 이루어지도록 프로세스를 자동화했습니다.
    • Istio ingress gateway를 통한 프론트/백엔드 API 게이트웨이 분기, Grafana 기반 모니터링 환경을 구축했습니다.
    • 간헐적으로 노드 전체가 다운되는 문제를 확인하여 AI 서빙 서버를 다른 노드 그룹으로 구성하여 리소스 문제로 노드가 연쇄적으로 죽는 문제를 해결하였습니다.
  • AI 모델 개발 및 데이터 엔지니어링
    • 와이퍼 고장 시나리오의 데이터셋 구축이 어렵다는 문제를 해결하기 위해, Unreal 엔진 5, blender를 통해 기존 차량 샘플을 사용해 해당 시나리오의 데이터셋을 구축하였으며, 데이터 전처리 파이프라인을 구축하였습니다.
    • ViViT 모델의 학습 및 전처리 조정을 통해 와이퍼 이상 동작 인식 정확도를 초기 70%대 → 80%대로 높였습니다.
  • 개발 및 시스템 안정화
    • 백엔드: 로그인, 회원가입(JWT) 기능과 API 게이트웨이를 구현하였으며, 다른 팀원의 게시판 기능 구현을 이어받아 최종적으로 완성하고, 검토 및 수정하여 안정성을 확보했습니다.
    • 프론트엔드: 백엔드와 연동되는 회원가입 및 로그인 페이지를 구현했으며, Redux 상태 관리를 통해 사용자의 역할에 따른 UI 접근 제한 기능을 개발했습니다.
    • 코드 리뷰 및 디버깅: 프로젝트 코드 품질을 높이기 위해 다른 페이지들 전반의 코드를 검토 및 수정하고, 발생한 버그들을 해결하여 시스템 전반의 안정화에 기여했습니다.

ViViT 학습 결과 (와이퍼 이상 동작 인식)


  • 선정 모델: Epoch 4 (Val F1 기준)
  • Validation 성능 (Epoch 4)
    • Loss: 0.5057
    • Accuracy: 0.8352
    • Macro F1: 0.8325
  • Test 성능
    • Loss: 0.7276
    • Accuracy: 0.8276
    • Macro F1: 0.8220

Notion image