vslamlab integration
Browse files- glomap_mapper.sh +19 -4
- glomap_reconstruction.sh +6 -5
glomap_mapper.sh
CHANGED
|
@@ -6,13 +6,14 @@ exp_folder="$2"
|
|
| 6 |
exp_id="$3"
|
| 7 |
settings_yaml="$4"
|
| 8 |
calibration_yaml="$5"
|
| 9 |
-
|
| 10 |
|
| 11 |
|
| 12 |
exp_folder_colmap="${exp_folder}/colmap_${exp_id}"
|
| 13 |
-
|
|
|
|
| 14 |
|
| 15 |
-
calibration_model=$(grep -oP '(?<=
|
| 16 |
echo " camera model : $calibration_model"
|
| 17 |
optimize_intrinsics="0"
|
| 18 |
skip_view_graph_calibration="1"
|
|
@@ -74,7 +75,6 @@ Thresholds_max_rotation_error=$(yq '.Thresholds.max_rotation_error // 10.0' $set
|
|
| 74 |
echo " glomap mapper ..."
|
| 75 |
database="${exp_folder_colmap}/colmap_database.db"
|
| 76 |
|
| 77 |
-
|
| 78 |
glomap mapper \
|
| 79 |
--database_path "${database}" \
|
| 80 |
--image_path "${rgb_path}" \
|
|
@@ -119,6 +119,21 @@ glomap mapper \
|
|
| 119 |
--Thresholds.min_inlier_ratio "${Thresholds_min_inlier_ratio}" \
|
| 120 |
--Thresholds.max_rotation_error "${Thresholds_max_rotation_error}"
|
| 121 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 122 |
echo " colmap model_converter ..."
|
| 123 |
colmap model_converter \
|
| 124 |
--input_path ${exp_folder_colmap}/0 --output_path ${exp_folder_colmap} --output_type TXT
|
|
|
|
| 6 |
exp_id="$3"
|
| 7 |
settings_yaml="$4"
|
| 8 |
calibration_yaml="$5"
|
| 9 |
+
rgb_csv="$6"
|
| 10 |
|
| 11 |
|
| 12 |
exp_folder_colmap="${exp_folder}/colmap_${exp_id}"
|
| 13 |
+
rgb_dir=$(awk -F, 'NR==2 { split($2,a,"/"); print a[1]; exit }' "$rgb_csv")
|
| 14 |
+
rgb_path="${sequence_path}/${rgb_dir}"
|
| 15 |
|
| 16 |
+
calibration_model=$(grep -oP '(?<=Camera0\.model:\s)[\w]+' "$calibration_yaml")
|
| 17 |
echo " camera model : $calibration_model"
|
| 18 |
optimize_intrinsics="0"
|
| 19 |
skip_view_graph_calibration="1"
|
|
|
|
| 75 |
echo " glomap mapper ..."
|
| 76 |
database="${exp_folder_colmap}/colmap_database.db"
|
| 77 |
|
|
|
|
| 78 |
glomap mapper \
|
| 79 |
--database_path "${database}" \
|
| 80 |
--image_path "${rgb_path}" \
|
|
|
|
| 119 |
--Thresholds.min_inlier_ratio "${Thresholds_min_inlier_ratio}" \
|
| 120 |
--Thresholds.max_rotation_error "${Thresholds_max_rotation_error}"
|
| 121 |
|
| 122 |
+
# colmap image_undistorter \
|
| 123 |
+
# --image_path "${rgb_path}" \
|
| 124 |
+
# --input_path "${exp_folder_colmap}/0" \
|
| 125 |
+
# --output_path "${exp_folder_colmap}" \
|
| 126 |
+
# --output_type COLMAP \
|
| 127 |
+
# --max_image_size 2000
|
| 128 |
+
|
| 129 |
+
# colmap patch_match_stereo \
|
| 130 |
+
# --workspace_path "${exp_folder_colmap}" \
|
| 131 |
+
# --workspace_format COLMAP \
|
| 132 |
+
# --PatchMatchStereo.cache_size 64 \
|
| 133 |
+
# --PatchMatchStereo.filter true \
|
| 134 |
+
# --PatchMatchStereo.window_step 2 \
|
| 135 |
+
# --PatchMatchStereo.geom_consistency true
|
| 136 |
+
|
| 137 |
echo " colmap model_converter ..."
|
| 138 |
colmap model_converter \
|
| 139 |
--input_path ${exp_folder_colmap}/0 --output_path ${exp_folder_colmap} --output_type TXT
|
glomap_reconstruction.sh
CHANGED
|
@@ -9,7 +9,7 @@ sequence_path=""
|
|
| 9 |
exp_folder=""
|
| 10 |
exp_id=""
|
| 11 |
calibration_yaml=""
|
| 12 |
-
|
| 13 |
|
| 14 |
# Function to split key-value pairs and assign them to variables
|
| 15 |
split_and_assign() {
|
|
@@ -35,7 +35,7 @@ echo " Matcher Type : $matcher_type"
|
|
| 35 |
echo " Use GPU : $use_gpu"
|
| 36 |
echo " Settings YAML : $settings_yaml"
|
| 37 |
echo " Calibration YAML : $calibration_yaml"
|
| 38 |
-
echo " RGB
|
| 39 |
echo "============================================================"
|
| 40 |
|
| 41 |
# Create folder to save colmap files
|
|
@@ -45,17 +45,18 @@ mkdir "$exp_folder_colmap"
|
|
| 45 |
|
| 46 |
# Run COLMAP scripts for matching and mapping
|
| 47 |
export QT_QPA_PLATFORM_PLUGIN_PATH="$CONDA_PREFIX/plugins/platforms"
|
| 48 |
-
colmap_args="$sequence_path $exp_folder $exp_id $settings_yaml $calibration_yaml $
|
| 49 |
./Baselines/colmap/colmap_matcher.sh $colmap_args $matcher_type $use_gpu
|
| 50 |
./Baselines/glomap/glomap_mapper.sh $colmap_args
|
| 51 |
|
| 52 |
# Convert COLMAP outputs to a format suitable for VSLAM-LAB
|
| 53 |
-
python Baselines/colmap/colmap_to_vslamlab.py $sequence_path $exp_folder $exp_id $verbose $
|
| 54 |
|
| 55 |
# Visualization with colmap gui
|
| 56 |
if [ "$verbose" -eq 1 ]; then
|
| 57 |
exp_folder_colmap="${exp_folder}/colmap_${exp_id}"
|
| 58 |
-
|
|
|
|
| 59 |
database="${exp_folder_colmap}/colmap_database.db"
|
| 60 |
colmap gui --import_path "${exp_folder_colmap}/0" --database_path ${database} --image_path ${rgb_path}
|
| 61 |
fi
|
|
|
|
| 9 |
exp_folder=""
|
| 10 |
exp_id=""
|
| 11 |
calibration_yaml=""
|
| 12 |
+
rgb_csv=""
|
| 13 |
|
| 14 |
# Function to split key-value pairs and assign them to variables
|
| 15 |
split_and_assign() {
|
|
|
|
| 35 |
echo " Use GPU : $use_gpu"
|
| 36 |
echo " Settings YAML : $settings_yaml"
|
| 37 |
echo " Calibration YAML : $calibration_yaml"
|
| 38 |
+
echo " RGB CSV : $rgb_csv"
|
| 39 |
echo "============================================================"
|
| 40 |
|
| 41 |
# Create folder to save colmap files
|
|
|
|
| 45 |
|
| 46 |
# Run COLMAP scripts for matching and mapping
|
| 47 |
export QT_QPA_PLATFORM_PLUGIN_PATH="$CONDA_PREFIX/plugins/platforms"
|
| 48 |
+
colmap_args="$sequence_path $exp_folder $exp_id $settings_yaml $calibration_yaml $rgb_csv"
|
| 49 |
./Baselines/colmap/colmap_matcher.sh $colmap_args $matcher_type $use_gpu
|
| 50 |
./Baselines/glomap/glomap_mapper.sh $colmap_args
|
| 51 |
|
| 52 |
# Convert COLMAP outputs to a format suitable for VSLAM-LAB
|
| 53 |
+
python Baselines/colmap/colmap_to_vslamlab.py $sequence_path $exp_folder $exp_id $verbose $rgb_csv
|
| 54 |
|
| 55 |
# Visualization with colmap gui
|
| 56 |
if [ "$verbose" -eq 1 ]; then
|
| 57 |
exp_folder_colmap="${exp_folder}/colmap_${exp_id}"
|
| 58 |
+
rgb_dir=$(awk -F, 'NR==2 { split($2,a,"/"); print a[1]; exit }' "$rgb_csv")
|
| 59 |
+
rgb_path="${sequence_path}/${rgb_dir}"
|
| 60 |
database="${exp_folder_colmap}/colmap_database.db"
|
| 61 |
colmap gui --import_path "${exp_folder_colmap}/0" --database_path ${database} --image_path ${rgb_path}
|
| 62 |
fi
|