Files
chicken-counting-sukawarna-det/run_all_coops.sh
T

57 lines
1.7 KiB
Bash
Executable File

#!/bin/bash
# Master runner for 5-coop / 10-floor daily processing
set -u
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
export PYTHONPATH="$SCRIPT_DIR/src"
if [ -f "$SCRIPT_DIR/venv/bin/python" ]; then
PYTHON="$SCRIPT_DIR/venv/bin/python"
else
PYTHON="python3"
fi
DATE="${1:-$(date +%Y-%m-%d)}"
MODE="${2:-parallel_processes}"
# List of all configured floors
CONFIGS=(
"configs/K1-L1.yaml"
"configs/K1-L2.yaml"
"configs/K2-L1.yaml"
"configs/K2-L2.yaml"
"configs/K3-L1.yaml"
"configs/K3-L2.yaml"
"configs/K4-L1.yaml"
"configs/K4-L2.yaml"
"configs/K5-L1.yaml"
"configs/K5-L2.yaml"
)
echo "================================================================="
echo " Starting 5-Coop Multi-Floor Batch Processing for Date: $DATE"
echo " Execution Mode: $MODE"
echo "================================================================="
SUCCESS_COUNT=0
SKIPPED_COUNT=0
for config in "${CONFIGS[@]}"; do
if [ -f "$SCRIPT_DIR/$config" ]; then
echo ""
echo ">>> [PROCESSING] Location Config: $config <<<"
if $PYTHON -m chicken_counter.cli batch --config "$config" --date "$DATE" --mode "$MODE"; then
SUCCESS_COUNT=$((SUCCESS_COUNT + 1))
else
echo "⚠️ [SKIPPED / ERROR] $config for date $DATE (video not found or error occurred)."
SKIPPED_COUNT=$((SKIPPED_COUNT + 1))
fi
fi
done
echo ""
echo "================================================================="
echo " Multi-Floor Batch Summary: $SUCCESS_COUNT completed, $SKIPPED_COUNT skipped."
echo " Database: db/chicken_counts.db"
echo "================================================================="