# 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.