|
|
#!/bin/bash |
|
|
|
|
|
|
|
|
matcher_type="exhaustive" |
|
|
use_gpu="1" |
|
|
verbose="0" |
|
|
settings_yaml="" |
|
|
sequence_path="" |
|
|
exp_folder="" |
|
|
exp_id="" |
|
|
calibration_yaml="" |
|
|
rgb_csv="" |
|
|
camera_name="rgb_0" |
|
|
|
|
|
|
|
|
split_and_assign() { |
|
|
local input=$1 |
|
|
local key=$(echo $input | cut -d':' -f1) |
|
|
local value=$(echo $input | cut -d':' -f2-) |
|
|
eval $key=$value |
|
|
} |
|
|
|
|
|
|
|
|
for ((i=1; i<=$#; i++)); do |
|
|
split_and_assign "${!i}" |
|
|
done |
|
|
|
|
|
exp_id=$(printf "%05d" ${exp_id}) |
|
|
|
|
|
echo -e "\n================= Experiment Configuration =================" |
|
|
echo " Sequence Path : $sequence_path" |
|
|
echo " Experiment Folder : $exp_folder" |
|
|
echo " Experiment ID : $exp_id" |
|
|
echo " Verbose : $verbose" |
|
|
echo " Matcher Type : $matcher_type" |
|
|
echo " Use GPU : $use_gpu" |
|
|
echo " Settings YAML : $settings_yaml" |
|
|
echo " Calibration YAML : $calibration_yaml" |
|
|
echo " RGB CSV : $rgb_csv" |
|
|
echo " Camera Name : $camera_name" |
|
|
echo "============================================================" |
|
|
|
|
|
|
|
|
exp_folder_colmap="${exp_folder}/colmap_${exp_id}" |
|
|
rm -rf "$exp_folder_colmap" |
|
|
mkdir "$exp_folder_colmap" |
|
|
|
|
|
|
|
|
export QT_QPA_PLATFORM_PLUGIN_PATH="$CONDA_PREFIX/plugins/platforms" |
|
|
colmap_args="$sequence_path $exp_folder $exp_id $settings_yaml $calibration_yaml $rgb_csv" |
|
|
./Baselines/colmap/colmap_matcher.sh $colmap_args $matcher_type $use_gpu $camera_name |
|
|
./Baselines/colmap/colmap_mapper.sh $colmap_args $camera_name |
|
|
|
|
|
|
|
|
python Baselines/colmap/colmap_to_vslamlab.py $sequence_path $exp_folder $exp_id $verbose $rgb_csv $camera_name |
|
|
|
|
|
|
|
|
if [ "$verbose" -eq 1 ]; then |
|
|
exp_folder_colmap="${exp_folder}/colmap_${exp_id}" |
|
|
rgb_dir=$(awk -F, 'NR==2 { split($2,a,"/"); print a[1]; exit }' "$rgb_csv") |
|
|
rgb_path="${sequence_path}/${rgb_dir}" |
|
|
database="${exp_folder_colmap}/colmap_database.db" |
|
|
colmap gui --import_path "${exp_folder_colmap}/0" --database_path ${database} --image_path ${rgb_path} |
|
|
fi |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|