#!/bin/bash # Few-shot Protocol Evaluation Script for LogSAD # This script runs evaluation for all categories in the MVTEC LOCO dataset # Dataset path DATASET_PATH="/root/autodl-tmp/datasets/mvtec_loco_anomaly_detection" # Categories to evaluate CATEGORIES=("breakfast_box" "juice_bottle" "pushpins" "screw_bag" "splicing_connectors") echo "Starting Few-shot Protocol Evaluation..." echo "Dataset path: $DATASET_PATH" echo "Categories: ${CATEGORIES[@]}" echo "==================================" # Main loop to iterate through all categories for i in "${!CATEGORIES[@]}"; do category="${CATEGORIES[$i]}" current=$((i + 1)) total=${#CATEGORIES[@]} echo "[$current/$total] Evaluating category: $category" echo "Command: python evaluation.py --module_path model_ensemble_few_shot --category $category --dataset_path $DATASET_PATH --viz" python evaluation.py --module_path model_ensemble_few_shot --category "$category" --dataset_path "$DATASET_PATH" --viz if [ $? -eq 0 ]; then echo "✓ Successfully completed evaluation for $category" else echo "✗ Failed to evaluate $category" exit 1 fi echo "==================================" done echo "All categories evaluation completed!" echo "" echo "Results saved in results/ directory:" echo " - Combined results: results/few_shot_results.md" echo "==================================" echo "Computing average metrics across all categories..." # Run the average computation script python scripts/compute_averages.py echo "✓ Average metrics computation completed"