Files
Smartfactory/README.md
T
2026-08-03 04:05:18 +09:00

65 lines
2.0 KiB
Markdown

# Intel Geti + AI QC Conveyor
<img width="1260" height="891" alt="AI QC Conveyor" src="https://github.com/user-attachments/assets/600a07b7-64cd-4822-b122-ef01c0ea5cd6" />
Intel Geti로 학습한 모델을 사용해 컨베이어 위 병뚜껑 상태를 분류하는 프로젝트입니다.
카메라로 병뚜껑 이미지를 받고, Python 프로그램에서 ONNX 모델을 실행합니다. 판정 결과는 Arduino Mega로 보내 컨베이어와 액추에이터 동작에 사용합니다.
## 기간
- 2025.09.24 ~ 2025.10.22
## 맡은 부분
| 이름 | 담당 |
| --- | --- |
| 서채건 | PM, GUI 구성, 코드 통합 |
| 김동현 | 코드 통합, PPT 제작, 발표 |
| 김선곤 | GUI 구성, DB 읽기/쓰기 |
| 박서정 | 데이터셋 학습, 스티커 유무 판정 |
| 조민재 | 데이터셋 학습, 오염 비율 계산 |
## 사용한 것
- `Python 3.12.3`
- `Intel Geti`
- `OpenVINO / ONNX`
- `Tkinter`
- `Arduino Mega`
- `MariaDB 10`
- `PySerial`
## 동작
- 카메라 이미지를 받아 병뚜껑 색상과 상태를 확인합니다.
- 모델 1은 Pink 병뚜껑을 기준으로 스티커 유무와 오염 여부를 봅니다.
- 모델 2는 Purple 병뚜껑을 기준으로 스티커 유무와 오염 여부를 봅니다.
- 스티커가 없거나 오염 비율이 30%를 넘으면 완전불량으로 봅니다.
- 스티커가 있고 오염 비율이 0% 초과 30% 이하이면 부분불량으로 봅니다.
- 스티커가 있고 오염이 없으면 정상으로 봅니다.
- 관리자 화면에서 컨베이어와 액추에이터를 수동으로 움직일 수 있습니다.
## 파일
```text
.
├─ 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 코드는 모델 실행, 화면 표시, 장치 통신을 묶습니다.