49157b3bc35795831c1a32013922e473518b4229
Intel Geti + AI QC Conveyor
Intel Geti로 학습한 모델을 사용해 컨베이어 위 병뚜껑 상태를 분류하는 프로젝트입니다.
카메라로 병뚜껑 이미지를 받고, Python 프로그램에서 ONNX 모델을 실행합니다. 판정 결과는 Arduino Mega로 보내 컨베이어와 액추에이터 동작에 사용합니다.
기간
- 2025.09.24 ~ 2025.10.22
맡은 부분
| 이름 | 담당 |
|---|---|
| 서채건 | PM, GUI 구성, 코드 통합 |
| 김동현 | 코드 통합, PPT 제작, 발표 |
| 김선곤 | GUI 구성, DB 읽기/쓰기 |
| 박서정 | 데이터셋 학습, 스티커 유무 판정 |
| 조민재 | 데이터셋 학습, 오염 비율 계산 |
사용한 것
Python 3.12.3Intel GetiOpenVINO / ONNXTkinterArduino MegaMariaDB 10PySerial
동작
- 카메라 이미지를 받아 병뚜껑 색상과 상태를 확인합니다.
- 모델 1은 Pink 병뚜껑을 기준으로 스티커 유무와 오염 여부를 봅니다.
- 모델 2는 Purple 병뚜껑을 기준으로 스티커 유무와 오염 여부를 봅니다.
- 스티커가 없거나 오염 비율이 30%를 넘으면 완전불량으로 봅니다.
- 스티커가 있고 오염 비율이 0% 초과 30% 이하이면 부분불량으로 봅니다.
- 스티커가 있고 오염이 없으면 정상으로 봅니다.
- 관리자 화면에서 컨베이어와 액추에이터를 수동으로 움직일 수 있습니다.
파일
.
├─ run.py
├─ arduino/arduino.ino
├─ iotdemo/
│ ├─ factory_controller.py
│ ├─ pyduino.py
│ ├─ pyft232.py
│ ├─ debounce.py
│ └─ pins.py
├─ class.onnx
├─ det.onnx
└─ seg.onnx
메모
- 모델 파일은 repo에 포함되어 있습니다.
- Arduino 코드는 컨베이어와 액추에이터 제어를 맡습니다.
- Python 코드는 모델 실행, 화면 표시, 장치 통신을 묶습니다.
Languages
Python
97.7%
C++
2.3%