Robocup-Maze---2026
===================
Robot pre súťaž Robocup Rescue Maze 2026. Obsahuje aktuálny program pre Raspberry Pi, Arduino, testovacie nástroje a referenčné dáta pre rozpoznávanie obetí.

Projekt je rozdelený do troch hlavných častí: Raspberry Pi je hlavny mozog (navigácia, rozpoznávanie a mapovanie), Arduino ovláda motory a všetky senzory.

## Folder Structure
``` 
└── Robocup-Maze---2026/
    ├── README.md
    ├── ReferenceData/
    │   ├── Contours/
    │   │   ├── Image_Omega_Contour.npy
    │   │   ├── Image_Phi_Contour.npy
    │   │   └── Image_Psi_Contour.npy
    │   ├── Images/
    │   │   ├── Example_Circle_1.png
    │   │   ├── Example_Circle_2.png
    │   │   ├── Image_GreekOmega.jpg
    │   │   ├── Image_GreekPhi.jpg
    │   │   ├── Image_GreekPsi.jpg
    │   │   ├── Image_H.jpg
    │   │   ├── Image_S.jpg
    │   │   ├── Image_U.jpg
    │   │   ├── Square_Green_1.jpg
    │   │   ├── Square_Red_1.jpg
    │   │   └── Square_Yellow_1.jpg
    │   └── RCJRescueMaze2026-final.pdf
    ├── Scripts/
    │   ├── Arduino/
    │   │   ├── robot_controller_v1/
    │   │   ├── robot_controller_v2/
    │   │   └── robot_controller_v3/
    │   ├── RaspberryPi/
    │   │   ├── main_controller_v2.py
    │   │   ├── robot_movement_v2.py
    │   │   ├── victim_recognition_26.py
    │   │   ├── victim_recognition_25.py
    │   │   ├── mapping.py
    │   │   ├── simulator/
    │   │   ├── V1/
    │   │   ├── V2/
    │   │   └── V3/
    │   └── ToolsDev/
    │       ├── Cam_test.py
    │       ├── Sensor_test.py
    │       ├── edit_contrast.py
    │       ├── generate_thresholds.py
    │       ├── HOW_TO_USE_TESTER.md
    │       └── test_victim_recognition.py
    ├── Súčiastky/
    └── Základné info/
```

## Hlavné časti

### `Scripts/RaspberryPi`
- `main_controller_v2.py` je aktuálny hlavný riadiaci skript pre Raspberry Pi.
- `robot_movement_v2.py` rieši pohyb robota a komunikáciu s Arduinom.
- `victim_recognition_26.py` je aktuálna verzia rozpoznávania obetí.
- `mapping.py` spravuje mapu a označovanie dlaždíc vo verzii V2.
- `victim_recognition_25.py` je staršia verzia rozpoznávania obetí z minulého roku.
- `V1/`, `V2/` a `V3/` obsahujú staršie aj alternatívne verzie riadenia a pohybu.

### `Scripts/Arduino`
- `robot_controller_v1/`, `robot_controller_v2/` a `robot_controller_v3/` sú verzované Arduino projekty.

### `Scripts/ToolsDev`
- `Sensor_test.py` slúži na test senzorov.
- `edit_contrast.py` pomáha ladiť kontrast, saturáciu a threshold.
- `generate_thresholds.py` generuje kontúry písmen pre rozpoznávanie.
## Dáta pre rozpoznávanie obetí

Skript `Scripts/RaspberryPi/victim_recognition_26.py` načítava referencie z:
- `ReferenceData/Contours/Image_Omega_Contour.npy`
- `ReferenceData/Contours/Image_Phi_Contour.npy`
- `ReferenceData/Contours/Image_Psi_Contour.npy`

Referenčné obrázky obetí a kruhov sú uložené v `ReferenceData/Images/`.

## Poznámka

V projekte ostali aj staršie verzie skriptov kvôli porovnávaniu a testovaniu. Aktuálne používame verziu V2.

