/
kimudev
/
rubicon_test
Обзор
Документация
Войти
/
kimudev
/
rubicon_test
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
scripts/fetch_data.sh
62 строки
3 KB
Rubicon
Распознавание людей в ИК-диапазоне с беспилотника
04 авг 2026, 08:33
04 авг 2026, 08:33
e8c6dfe
Код
Авторство
О чём код?
#!/usr/bin/env bash # # Скачивает оба датасета из публичных источников. Авторизация не требуется. # # RGBTDronePerson — раздача авторов, 1.57 ГБ. Основной набор для обучения. # HIT-UAV — релиз на GitHub, 775 МБ. Нужен только для проверки # на постороннем датасете, можно пропустить. # # Использование: # ./scripts/fetch_data.sh # оба набора # ./scripts/fetch_data.sh --main # только RGBTDronePerson # set -euo pipefail cd "$(dirname "$0")/.." # curl есть и в macOS, и в большинстве образов Linux; wget на macOS по умолчанию нет download() { curl -fL --progress-bar "$1" -o "$2"; } MAIN_ONLY=false [ "${1:-}" = "--main" ] && MAIN_ONLY=true mkdir -p data/archives data/raw if [ ! -d data/raw/RGBTDronePerson ]; then echo "==> RGBTDronePerson (1.57 ГБ)" python3 -m gdown --folder \ https://drive.google.com/drive/folders/1Mi3NXQ-YG1iiIWkPbe3GQoDK68dARMN6 \ -O data/archives/rgbt unzip -q -o data/archives/rgbt/RGBTDronePerson.zip -d data/raw/ mkdir -p data/raw/RGBTDronePerson mv data/raw/train data/raw/val data/raw/RGBTDronePerson/ 2>/dev/null || true rm -rf data/raw/__MACOSX find data/raw -name '.DS_Store' -delete else echo "==> RGBTDronePerson уже на месте" fi if [ "$MAIN_ONLY" = false ] && [ ! -d data/raw/hituav ]; then echo "==> HIT-UAV (775 МБ, для проверки на постороннем датасете)" download https://github.com/suojiashun/HIT-UAV-Infrared-Thermal-Dataset/releases/download/v1.2.1/HIT-UAV.zip \ data/archives/HIT-UAV.zip unzip -q -o data/archives/HIT-UAV.zip -d data/raw/hituav fi echo for split in train val; do for kind in thermal visible annotation; do # без `|| true` пустой или отсутствующий каталог убивает скрипт: ls отдаёт # ненулевой код, pipefail его протаскивает, set -e завершает процесс молча n=$(ls "data/raw/RGBTDronePerson/$split/$kind" 2>/dev/null | wc -l | tr -d ' ' || true) n=${n:-0} printf ' %-6s %-11s %s\n' "$split" "$kind" "$n" done done [ -d data/raw/hituav ] && echo " HIT-UAV кадров $(find data/raw/hituav -name '*.jpg' -not -path '*__MACOSX*' | wc -l | tr -d ' ')" cat <<'TXT' Дальше: rubicon prepare подготовка выборок (VOC -> YOLO, сплит, CLAHE) rubicon train обучение TXT