SplatAtlas / scripts /run_all_42_methods.sh
KCBtheone's picture
Upload SplatAtlas benchmark pipeline code
23e73f9 verified
Raw
History Blame Contribute Delete
5.31 kB
#!/bin/bash
# 初始化 Conda 环境路径
source /root/miniconda3/etc/profile.d/conda.sh
# 确保主路径在 PYTHONPATH 中
export PYTHONPATH=$PYTHONPATH:/root/autodl-tmp/SplatAtlas
# 定义错误日志路径
ERROR_LOG="/root/autodl-tmp/SplatAtlas/run_errors.log"
# 每次运行前,在错误日志里画个分割线
echo "================================================================" >> "$ERROR_LOG"
echo "🚀 New Run Started at $(date)" >> "$ERROR_LOG"
echo "================================================================" >> "$ERROR_LOG"
# 定义任务队列:(环境绝对路径 脚本相对路径)
declare -a tasks=(
# --- 一、 Initialization (2) ---
"base scripts/run_vanilla_benchmark.py"
"/root/autodl-tmp/envs/3dgs_mcmc scripts/run_3dgsmcmc_benchmark.py"
# --- 二、 Attribute Expansion (10) ---
"/root/autodl-tmp/envs/2dgs_v2 scripts/run_2dgs_benchmark.py"
"/root/autodl-tmp/envs/pgsr scripts/run_pgsr_benchmark.py"
"/root/autodl-tmp/envs/ges scripts/run_ges_benchmark.py"
"/root/autodl-tmp/envs/scaffold_gs scripts/run_scaffoldgs_benchmark.py"
"/root/autodl-tmp/envs/r3dg scripts/run_r3dg_benchmark.py"
"/root/autodl-tmp/envs/3dgrut scripts/run_3dgut_benchmark.py"
"/root/autodl-tmp/envs/hogs scripts/run_hogs_benchmark.py"
"/root/autodl-tmp/envs/texture_gs scripts/run_texturegs_benchmark.py"
"/root/autodl-tmp/envs/textured_gs scripts/run_texturedgs_benchmark.py"
"/root/autodl-tmp/envs/gaussian_surfels scripts/run_surfel_benchmark.py"
# --- 三、 Rendering & Rasterization (5) ---
"/root/autodl-tmp/envs/mip-splatting scripts/run_mipsplatting_benchmark.py"
"/root/autodl-tmp/envs/ana_splatting scripts/run_analyticsplatting_benchmark.py"
"/root/autodl-tmp/envs/3dgs_dr scripts/run_3dgs_dr_benchmark.py"
"/root/autodl-tmp/envs/lod_gs scripts/run_lod_gs_benchmark.py"
"/root/autodl-tmp/envs/octree_gs scripts/run_octree_gs_benchmark.py"
# --- 四、 Regularization (9) ---
"/root/autodl-tmp/env scripts/run_sugar_benchmark.py"
"/root/autodl-tmp/envs/gof scripts/run_gof_benchmark.py"
"/root/autodl-tmp/envs/gsdf scripts/run_gsdf_benchmark.py"
"/root/autodl-tmp/envs/erank_gs scripts/run_erankgs_benchmark.py"
"/root/autodl-tmp/envs/trimgs scripts/run_trimgs_benchmark.py"
"/root/autodl-tmp/envs/gaussianpro scripts/run_gaussianpro_benchmark.py"
"/root/autodl-tmp/envs/gspull scripts/run_gspull_benchmark.py"
"/root/autodl-tmp/envs/lapis_gs scripts/run_lapisgs_benchmark.py"
# --- 五、 Training Strategy (2) ---
"/root/autodl-tmp/envs/opti3dgs scripts/run_opti3dgs_benchmark.py"
"/root/autodl-tmp/envs/co_adaptation_3dgs scripts/run_coadaptgs_benchmark.py"
# --- 六、 Adaptive Control (10) ---
"/root/autodl-tmp/envs/absgs_env scripts/run_absgs_benchmark.py"
"/root/autodl-tmp/envs/pixelgs scripts/run_pixelgs_benchmark.py"
"/root/autodl-tmp/envs/mini_splatting scripts/run_minisplatting_benchmark.py"
"/root/autodl-tmp/envs/taming_3dgs scripts/run_tamgs_benchmark.py"
"/root/autodl-tmp/envs/atomgs scripts/run_atomgs_benchmark.py"
"/root/autodl-tmp/envs/reactgs_env scripts/run_reactgs_benchmark.py"
"/root/autodl-tmp/envs/gs_lpm scripts/run_gslpm.py"
"/root/autodl-tmp/envs/conegs_env scripts/run_conegs_benchmark.py"
"/root/autodl-tmp/envs/steepgs_env scripts/run_steepgs.py"
# --- 七、 Post-Processing (4) ---
"/root/autodl-tmp/envs/eagles scripts/run_eagles_benchmark.py"
"/root/autodl-tmp/envs/rdo-gaussian scripts/run_rdogaussian_benchmark.py"
"/root/autodl-tmp/envs/ghap_env scripts/run_ghap_benchmark.py"
"/root/autodl-tmp/envs/hac_plus scripts/run_hac_plus_benchmark.py"
"/root/autodl-tmp/envs/lightgaussian_official scripts/run_lightgaussian_benchmark.py"
)
echo "🚀 SplatAtlas: Starting Robust Optimization Pipeline (42 Methods)..."
echo "📝 Errors will be logged to: $ERROR_LOG"
for task in "${tasks[@]}"; do
# 解析环境路径和脚本
read -r env_path script_path <<< "$task"
method_name=$(basename "$script_path")
echo "----------------------------------------------------------------"
echo "🔄 Method: $method_name"
# 1. 激活环境
conda activate "$env_path"
if [ $? -eq 0 ]; then
# 2. 环境自动体检
echo "🛠️ Checking requirements in $env_path..."
pip install lpips imageio scikit-image -q
# 3. 执行 Benchmark,stderr 同时打印到终端并写入日志
echo "✅ Environment ready. Executing..."
"$CONDA_PREFIX/bin/python" "/root/autodl-tmp/SplatAtlas/$script_path" 2> >(tee -a "$ERROR_LOG" >&2)
if [ $? -eq 0 ]; then
echo "✨ Finished: $method_name"
else
echo "❌ Error: $method_name failed. Saved to $ERROR_LOG"
echo "[$(date)] FAILED: $method_name" >> "$ERROR_LOG"
fi
else
echo "❌ Failed to activate: $env_path"
echo "[$(date)] FAILED (Env Activation): $env_path for $method_name" >> "$ERROR_LOG"
fi
# 释放当前环境
conda deactivate
done
echo "================================================================"
echo "🏁 Optimization Pipeline completed. Check $ERROR_LOG for crash reports."