Spaces:
Running
Running
# you need to use your own path | |
dataset_dir=/scratches/flyer_3/fx221/dataset/CambridgeLandmarks | |
ref_sfm_dir=/scratches/flyer_2/fx221/publications/pram_data/3D-models/CambridgeLandmarks | |
output_dir=/scratches/flyer_2/fx221/localization/outputs/CambridgeLandmarks | |
feat=sfd2 | |
matcher=gm | |
extract_feat_db=0 | |
match_db=0 | |
triangulation=0 | |
localize=1 | |
ransac_thresh=12 | |
opt_thresh=12 | |
covisibility_frame=20 | |
inlier_thresh=30 | |
radius=30 | |
obs_thresh=3 | |
#for scene in GreatCourt ShopFacade KingsCollege OldHospital StMarysChurch | |
for scene in StMarysChurch | |
#for scene in GreatCourt ShopFacade | |
do | |
echo $scene | |
image_dir=$dataset_dir/$scene | |
ref_sfm=$ref_sfm_dir/$scene/3D-models | |
db_pair=$ref_sfm_dir/$scene/pairs-db-covis20.txt | |
outputs=$output_dir/$scene | |
query_pair=$ref_sfm_dir/$scene/pairs-query-netvlad20.txt | |
gt_pose_fn=$ref_sfm_dir/$scene/queries_poses.txt | |
query_fn=$ref_sfm_dir/$scene/queries_with_intrinsics.txt | |
if [ "$extract_feat_db" -gt "0" ]; then | |
python3 -m loc.extract_features --image_dir $image_dir --export_dir $outputs/ --conf $feat | |
fi | |
if [ "$match_db" -gt "0" ]; then | |
python3 -m loc.match_features --pairs $db_pair --export_dir $outputs/ --conf $matcher --features feats-$feat | |
fi | |
if [ "$triangulation" -gt "0" ]; then | |
python3 -m loc.triangulation \ | |
--sfm_dir $outputs/sfm_$feat-$matcher \ | |
--reference_sfm_model $ref_sfm \ | |
--image_dir $image_dir\ | |
--pairs $db_pair \ | |
--features $outputs/feats-$feat.h5 \ | |
--matches $outputs/feats-$feat-$matcher-pairs-db-covis20.h5 | |
fi | |
if [ "$localize" -gt "0" ]; then | |
python3 -m loc.localizer \ | |
--dataset cambridge \ | |
--image_dir $image_dir \ | |
--save_root $outputs\ | |
--gt_pose_fn $gt_pose_fn \ | |
--retrieval $query_pair \ | |
--reference_sfm $outputs/sfm_$feat-$matcher \ | |
--queries $query_fn \ | |
--features $outputs/feats-$feat.h5 \ | |
--matcher_method adagm2 \ | |
--ransac_thresh $ransac_thresh \ | |
--covisibility_frame $covisibility_frame \ | |
--obs_thresh $obs_thresh \ | |
--opt_thresh $opt_thresh \ | |
--inlier_thresh $inlier_thresh \ | |
--use_hloc | |
fi | |
done |