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