Initial MVP application skeleton
Add PySide6 camera UI, YOLO/Tesseract detection pipeline, capture metadata, configuration, and project gitignore.
This commit is contained in:
42
README.md
Normal file
42
README.md
Normal file
@@ -0,0 +1,42 @@
|
||||
# Duck Stain YOLO
|
||||
|
||||
MVP aplikacji okienkowej do podgladu kamery USB, wykrywania etykiety modelem YOLOv8 i zapisu zdjec/filmow z metadanymi JSON.
|
||||
|
||||
## Uruchomienie
|
||||
|
||||
```bash
|
||||
python3 -m venv .venv
|
||||
source .venv/bin/activate
|
||||
pip install -r requirements.txt
|
||||
python main.py
|
||||
```
|
||||
|
||||
Na macOS z Tesseractem:
|
||||
|
||||
```bash
|
||||
brew install tesseract
|
||||
```
|
||||
|
||||
Na Ubuntu/WSL:
|
||||
|
||||
```bash
|
||||
sudo apt install tesseract-ocr
|
||||
```
|
||||
|
||||
Na Linuksie `requirements.txt` wymusza CPU build PyTorch, zeby nie pobierac wariantu CUDA. Na macOS pip zainstaluje standardowy wariant CPU dla procesora Intel.
|
||||
|
||||
Umiesc wytrenowany model jako `models/best.pt` albo zmien `detection.model_path` w `app_config.json`.
|
||||
|
||||
## Konfiguracja
|
||||
|
||||
Glowny plik konfiguracji: `app_config.json`.
|
||||
|
||||
Istotne ustawienia:
|
||||
|
||||
- `camera.width`, `camera.height`, `camera.fps` - rozdzielczosc i FPS kamery.
|
||||
- `camera.properties` - parametry OpenCV ustawiane na kamerze, np. jasnosc, kontrast, ekspozycja. `null` oznacza brak wymuszania wartosci.
|
||||
- `detection.mode` - `best` rysuje najlepsza etykiete, `all` rysuje wszystkie wykrycia.
|
||||
- `detection.frame_stride` - YOLO uruchamiany co N klatek podczas aktywnego wykrywania.
|
||||
- `label_data.models`, `label_data.colors` - slowniki do walidacji tekstu z etykiety.
|
||||
|
||||
Zdjecia trafiaja do `captures/photos`, filmy do `captures/videos`. Obok kazdego pliku media zapisywany jest JSON z aktualnym wynikiem detekcji/OCR.
|
||||
Reference in New Issue
Block a user