gitextract_di20vn86/ ├── AutoReconForDens3R/ │ ├── .gitattributes │ ├── .github/ │ │ ├── ISSUE_TEMPLATE/ │ │ │ ├── bug-report.md │ │ │ └── feature_request.md │ │ └── workflows/ │ │ ├── core_code_checks.yml │ │ ├── publish.yml │ │ └── viewer_build_deploy.yml │ ├── .gitignore │ ├── .prettierrc.js │ ├── LICENSE │ ├── README.md │ ├── colab/ │ │ └── demo.ipynb │ ├── docs/ │ │ └── INSTALL.md │ ├── exps/ │ │ └── code-release/ │ │ ├── bmvs/ │ │ │ ├── scan1.sh │ │ │ ├── scan2.sh │ │ │ ├── scan3.sh │ │ │ ├── scan4.sh │ │ │ ├── scan5.sh │ │ │ └── scan6.sh │ │ ├── co3d_demo/ │ │ │ ├── scan1.sh │ │ │ ├── scan2.sh │ │ │ ├── scan3.sh │ │ │ ├── scan4.sh │ │ │ └── scan5.sh │ │ ├── run_dens3r_recon.sh │ │ └── run_pipeline_demo_low-res.sh │ ├── nerfstudio/ │ │ ├── __init__.py │ │ ├── cameras/ │ │ │ ├── __init__.py │ │ │ ├── camera_optimizers.py │ │ │ ├── camera_paths.py │ │ │ ├── camera_utils.py │ │ │ ├── cameras.py │ │ │ ├── lie_groups.py │ │ │ └── rays.py │ │ ├── configs/ │ │ │ ├── __init__.py │ │ │ ├── autorecon/ │ │ │ │ ├── __init__.py │ │ │ │ ├── baseline.py │ │ │ │ ├── common.py │ │ │ │ ├── distilled_neusfacto.py │ │ │ │ ├── feature_field.py │ │ │ │ ├── neusfacto_fast.py │ │ │ │ ├── regularization.py │ │ │ │ └── semantic_nerf.py │ │ │ ├── base_config.py │ │ │ ├── config_utils.py │ │ │ └── method_configs.py │ │ ├── engine/ │ │ │ ├── __init__.py │ │ │ ├── callbacks.py │ │ │ ├── optimizers.py │ │ │ ├── schedulers.py │ │ │ └── trainer.py │ │ ├── exporter/ │ │ │ ├── __init__.py │ │ │ ├── exporter_utils.py │ │ │ ├── mesh_culling_utils.py │ │ │ ├── texture_utils.py │ │ │ └── tsdf_utils.py │ │ ├── field_components/ │ │ │ ├── __init__.py │ │ │ ├── activations.py │ │ │ ├── base_field_component.py │ │ │ ├── embedding.py │ │ │ ├── encodings.py │ │ │ ├── field_heads.py │ │ │ ├── mlp.py │ │ │ ├── progressive_encoding.py │ │ │ ├── spatial_distortions.py │ │ │ └── temporal_distortions.py │ │ ├── fields/ │ │ │ ├── __init__.py │ │ │ ├── base_field.py │ │ │ ├── density_fields.py │ │ │ ├── feature_field.py │ │ │ ├── instant_ngp_field.py │ │ │ ├── nerfacto_field.py │ │ │ ├── nerfw_field.py │ │ │ ├── sdf_field.py │ │ │ ├── semantic_nerf_field.py │ │ │ ├── tensorf_field.py │ │ │ └── vanilla_nerf_field.py │ │ ├── model_components/ │ │ │ ├── __init__.py │ │ │ ├── losses.py │ │ │ ├── patch_warping.py │ │ │ ├── ray_generators.py │ │ │ ├── ray_samplers.py │ │ │ ├── renderers.py │ │ │ └── scene_colliders.py │ │ ├── models/ │ │ │ ├── __init__.py │ │ │ ├── base_model.py │ │ │ ├── base_surface_model.py │ │ │ ├── distilled_neus_facto.py │ │ │ ├── dto.py │ │ │ ├── instant_ngp.py │ │ │ ├── mipnerf.py │ │ │ ├── monosdf.py │ │ │ ├── nerfacto.py │ │ │ ├── neuralreconW.py │ │ │ ├── neus.py │ │ │ ├── neus_acc.py │ │ │ ├── neus_facto.py │ │ │ ├── neus_facto_dff.py │ │ │ ├── neus_facto_reg.py │ │ │ ├── semantic_nerfw.py │ │ │ ├── tensorf.py │ │ │ ├── unisurf.py │ │ │ ├── vanilla_nerf.py │ │ │ └── volsdf.py │ │ ├── pipelines/ │ │ │ ├── __init__.py │ │ │ ├── base_pipeline.py │ │ │ └── dynamic_batch.py │ │ ├── process_data/ │ │ │ ├── __init__.py │ │ │ ├── colmap_utils.py │ │ │ ├── hloc_utils.py │ │ │ ├── insta360_utils.py │ │ │ ├── metashape_utils.py │ │ │ ├── polycam_utils.py │ │ │ ├── process_data_utils.py │ │ │ └── record3d_utils.py │ │ ├── py.typed │ │ ├── utils/ │ │ │ ├── __init__.py │ │ │ ├── bilateral_solver.py │ │ │ ├── colormaps.py │ │ │ ├── colors.py │ │ │ ├── comms.py │ │ │ ├── decorators.py │ │ │ ├── eval_utils.py │ │ │ ├── func_utils.py │ │ │ ├── images.py │ │ │ ├── install_checks.py │ │ │ ├── io.py │ │ │ ├── marching_cubes.py │ │ │ ├── mask_utils.py │ │ │ ├── math.py │ │ │ ├── misc.py │ │ │ ├── plotly_utils.py │ │ │ ├── pointclouds.py │ │ │ ├── poses.py │ │ │ ├── printing.py │ │ │ ├── profiler.py │ │ │ ├── rich_utils.py │ │ │ ├── scheduler.py │ │ │ ├── scripts.py │ │ │ ├── tensor_dataclass.py │ │ │ ├── vis_utils.py │ │ │ └── writer.py │ │ └── viewer/ │ │ ├── __init__.py │ │ ├── app/ │ │ │ ├── .eslintrc.json │ │ │ ├── .gitignore │ │ │ ├── package.json │ │ │ ├── public/ │ │ │ │ ├── electron.js │ │ │ │ ├── index.html │ │ │ │ ├── manifest.json │ │ │ │ └── robots.txt │ │ │ ├── requirements.txt │ │ │ ├── run_deploy.py │ │ │ └── src/ │ │ │ ├── App.jsx │ │ │ ├── SceneNode.js │ │ │ ├── index.jsx │ │ │ ├── index.scss │ │ │ ├── modules/ │ │ │ │ ├── Banner/ │ │ │ │ │ ├── Banner.jsx │ │ │ │ │ └── index.jsx │ │ │ │ ├── ConfigPanel/ │ │ │ │ │ ├── ConfigPanel.jsx │ │ │ │ │ └── ConfigPanelSlice.js │ │ │ │ ├── LandingModal/ │ │ │ │ │ ├── LandingModal.jsx │ │ │ │ │ └── index.jsx │ │ │ │ ├── LogPanel/ │ │ │ │ │ └── LogPanel.jsx │ │ │ │ ├── RenderModal/ │ │ │ │ │ ├── RenderModal.jsx │ │ │ │ │ └── index.jsx │ │ │ │ ├── Scene/ │ │ │ │ │ ├── Scene.jsx │ │ │ │ │ └── drawing.js │ │ │ │ ├── SidePanel/ │ │ │ │ │ ├── CameraPanel/ │ │ │ │ │ │ ├── CameraHelper.js │ │ │ │ │ │ ├── CameraPanel.jsx │ │ │ │ │ │ ├── curve.js │ │ │ │ │ │ └── index.jsx │ │ │ │ │ ├── ExportPanel/ │ │ │ │ │ │ ├── ExportPanel.jsx │ │ │ │ │ │ ├── MeshSubPanel.jsx │ │ │ │ │ │ ├── PointcloudSubPanel.jsx │ │ │ │ │ │ └── index.jsx │ │ │ │ │ ├── ScenePanel/ │ │ │ │ │ │ ├── ScenePanel.jsx │ │ │ │ │ │ └── index.jsx │ │ │ │ │ ├── SidePanel.jsx │ │ │ │ │ └── StatusPanel/ │ │ │ │ │ ├── StatusPanel.jsx │ │ │ │ │ └── index.jsx │ │ │ │ ├── ViewerWindow/ │ │ │ │ │ ├── ViewerWindow.jsx │ │ │ │ │ └── ViewerWindowSlice.js │ │ │ │ ├── ViewportControlsModal/ │ │ │ │ │ ├── ViewportControlsModal.jsx │ │ │ │ │ └── index.jsx │ │ │ │ ├── WebRtcWindow/ │ │ │ │ │ └── WebRtcWindow.jsx │ │ │ │ ├── WebSocket/ │ │ │ │ │ └── WebSocket.jsx │ │ │ │ └── WebSocketUrlField.jsx │ │ │ ├── reducer.js │ │ │ ├── setupTests.js │ │ │ ├── store.js │ │ │ ├── subscriber.js │ │ │ ├── themes/ │ │ │ │ ├── leva_theme.json │ │ │ │ └── theme.ts │ │ │ └── utils.js │ │ └── server/ │ │ ├── README.md │ │ ├── __init__.py │ │ ├── path.py │ │ ├── server.py │ │ ├── state/ │ │ │ ├── node.py │ │ │ └── state_node.py │ │ ├── subprocess.py │ │ ├── utils.py │ │ ├── video_stream.py │ │ ├── viewer_utils.py │ │ └── visualizer.py │ ├── pyproject.toml │ ├── scripts/ │ │ ├── __init__.py │ │ ├── benchmarking/ │ │ │ ├── launch_eval_blender.sh │ │ │ └── launch_train_blender.sh │ │ ├── blender/ │ │ │ ├── render_mesh_blender.py │ │ │ └── render_pointcloud_blender.py │ │ ├── completions/ │ │ │ ├── .gitignore │ │ │ ├── __init__.py │ │ │ ├── install.py │ │ │ ├── setup.bash │ │ │ └── setup.zsh │ │ ├── datasets/ │ │ │ ├── extract_monocular_cues.py │ │ │ ├── process_nerfstudio_to_sdfstudio.py │ │ │ ├── process_neuralrgbd_to_sdfstudio.py │ │ │ ├── process_nuscenes_masks.py │ │ │ └── process_scannet_to_sdfstudio.py │ │ ├── docs/ │ │ │ ├── __init__.py │ │ │ ├── add_nb_tags.py │ │ │ └── build_docs.py │ │ ├── eval.py │ │ ├── eval_mask.py │ │ ├── exporter.py │ │ ├── extract_mesh.py │ │ ├── extract_volume.py │ │ ├── generate_kitti360_trainsplit.py │ │ ├── github/ │ │ │ ├── __init__.py │ │ │ └── run_actions.py │ │ ├── heritage_to_nerfstudio.py │ │ ├── licensing/ │ │ │ ├── copyright.txt │ │ │ └── license_headers.sh │ │ ├── preprocess/ │ │ │ └── preprocess_neus_pose.py │ │ ├── process_data.py │ │ ├── render.json │ │ ├── render.py │ │ ├── render_mesh.py │ │ ├── texture.py │ │ ├── train.py │ │ └── viewer/ │ │ └── view_dataset.py │ ├── setup.cfg │ ├── tests/ │ │ ├── cameras/ │ │ │ ├── test_cameras.py │ │ │ └── test_rays.py │ │ ├── field_components/ │ │ │ ├── test_embedding.py │ │ │ ├── test_encodings.py │ │ │ ├── test_field_outputs.py │ │ │ ├── test_fields.py │ │ │ ├── test_mlp.py │ │ │ └── test_temporal_distortions.py │ │ ├── model_components/ │ │ │ ├── test_ray_sampler.py │ │ │ └── test_renderers.py │ │ ├── test_train.py │ │ └── utils/ │ │ ├── test_poses.py │ │ ├── test_tensor_dataclass.py │ │ └── test_visualization.py │ └── third_party/ │ └── AutoDecomp/ │ ├── .gitignore │ ├── LICENSE │ ├── README.md │ ├── auto_decomp/ │ │ ├── __init__.py │ │ ├── cli/ │ │ │ └── inference_transformer.py │ │ ├── configs/ │ │ │ └── inference_transformer/ │ │ │ ├── config.yaml │ │ │ ├── cvpr.yaml │ │ │ ├── cvpr_idr.yaml │ │ │ ├── idr.yaml │ │ │ ├── low-res.yaml │ │ │ └── low-res_idr.yaml │ │ ├── decomp/ │ │ │ ├── preprocess.py │ │ │ └── transformer/ │ │ │ ├── __init__.py │ │ │ ├── dataset/ │ │ │ │ ├── __init__.py │ │ │ │ ├── ncut.py │ │ │ │ └── utils.py │ │ │ ├── lightning/ │ │ │ │ └── module.py │ │ │ ├── modeling/ │ │ │ │ ├── __init__.py │ │ │ │ ├── encoding.py │ │ │ │ ├── point_transformer.py │ │ │ │ ├── utils.py │ │ │ │ └── vision_transformer.py │ │ │ └── utils/ │ │ │ ├── postprocess.py │ │ │ └── saving.py │ │ ├── feature_extraction/ │ │ │ ├── __init__.py │ │ │ └── dino_vit/ │ │ │ ├── __init__.py │ │ │ ├── extract_features.py │ │ │ └── vit_extractor.py │ │ ├── sfm/ │ │ │ ├── __init__.py │ │ │ ├── colmap_from_co3d.py │ │ │ ├── colmap_from_idr.py │ │ │ ├── enums.py │ │ │ ├── pairs_from_sequential.py │ │ │ └── sfm.py │ │ └── utils/ │ │ ├── __init__.py │ │ ├── aggregation.py │ │ ├── cli.py │ │ ├── colmap.py │ │ ├── geometry/ │ │ │ ├── __init__.py │ │ │ ├── box3d.py │ │ │ ├── pointcloud/ │ │ │ │ ├── __init__.py │ │ │ │ ├── convert.py │ │ │ │ ├── misc.py │ │ │ │ ├── plane.py │ │ │ │ ├── pointcloud.py │ │ │ │ └── segmentation.py │ │ │ └── transform.py │ │ ├── misc.py │ │ ├── ray.py │ │ ├── tqdm.py │ │ └── viz_3d.py │ ├── ckpts/ │ │ └── no-chair.ckpt │ ├── docs/ │ │ └── INSTALL.md │ ├── requirements.txt │ ├── scripts/ │ │ ├── run_pipeline_demo.sh │ │ ├── run_pipeline_demo_low-res.sh │ │ ├── test_pipeline_bmvs/ │ │ │ ├── bmvs_scan1.sh │ │ │ ├── bmvs_scan2.sh │ │ │ ├── bmvs_scan3.sh │ │ │ ├── bmvs_scan4.sh │ │ │ ├── bmvs_scan5.sh │ │ │ ├── bmvs_scan6.sh │ │ │ ├── cvpr/ │ │ │ │ ├── README.md │ │ │ │ ├── bmvs_scan1.sh │ │ │ │ ├── bmvs_scan2.sh │ │ │ │ ├── bmvs_scan3.sh │ │ │ │ ├── bmvs_scan4.sh │ │ │ │ ├── bmvs_scan5.sh │ │ │ │ └── bmvs_scan6.sh │ │ │ └── low-res/ │ │ │ ├── README.md │ │ │ └── bmvs_scan1.sh │ │ └── test_pipeline_co3d_manual-poses/ │ │ ├── co3d_scan1.sh │ │ ├── co3d_scan2.sh │ │ ├── co3d_scan3.sh │ │ ├── co3d_scan4.sh │ │ ├── co3d_scan5.sh │ │ └── cvpr/ │ │ ├── co3d_scan1.sh │ │ ├── co3d_scan2.sh │ │ ├── co3d_scan3.sh │ │ ├── co3d_scan4.sh │ │ └── co3d_scan5.sh │ ├── setup.py │ └── third_party/ │ ├── Hierarchical-Localization/ │ │ ├── .gitattributes │ │ ├── .gitignore │ │ ├── .gitmodules │ │ ├── Dockerfile │ │ ├── LICENSE │ │ ├── README.md │ │ ├── datasets/ │ │ │ └── sacre_coeur/ │ │ │ └── README.md │ │ ├── demo.ipynb │ │ ├── hloc/ │ │ │ ├── __init__.py │ │ │ ├── colmap_from_nvm.py │ │ │ ├── extract_features.py │ │ │ ├── extractors/ │ │ │ │ ├── __init__.py │ │ │ │ ├── cosplace.py │ │ │ │ ├── d2net.py │ │ │ │ ├── dir.py │ │ │ │ ├── disk.py │ │ │ │ ├── dog.py │ │ │ │ ├── netvlad.py │ │ │ │ ├── openibl.py │ │ │ │ ├── r2d2.py │ │ │ │ └── superpoint.py │ │ │ ├── localize_inloc.py │ │ │ ├── localize_sfm.py │ │ │ ├── match_dense.py │ │ │ ├── match_features.py │ │ │ ├── matchers/ │ │ │ │ ├── __init__.py │ │ │ │ ├── adalam.py │ │ │ │ ├── loftr.py │ │ │ │ ├── nearest_neighbor.py │ │ │ │ └── superglue.py │ │ │ ├── pairs_from_covisibility.py │ │ │ ├── pairs_from_exhaustive.py │ │ │ ├── pairs_from_poses.py │ │ │ ├── pairs_from_retrieval.py │ │ │ ├── pipelines/ │ │ │ │ ├── 4Seasons/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── localize.py │ │ │ │ │ ├── prepare_reference.py │ │ │ │ │ └── utils.py │ │ │ │ ├── 7Scenes/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── create_gt_sfm.py │ │ │ │ │ ├── pipeline.py │ │ │ │ │ └── utils.py │ │ │ │ ├── Aachen/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── pipeline.py │ │ │ │ ├── Aachen_v1_1/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── pipeline.py │ │ │ │ │ └── pipeline_loftr.py │ │ │ │ ├── CMU/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── pipeline.py │ │ │ │ ├── Cambridge/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── pipeline.py │ │ │ │ │ └── utils.py │ │ │ │ ├── RobotCar/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── colmap_from_nvm.py │ │ │ │ │ └── pipeline.py │ │ │ │ └── __init__.py │ │ │ ├── reconstruction.py │ │ │ ├── triangulation.py │ │ │ ├── utils/ │ │ │ │ ├── __init__.py │ │ │ │ ├── base_model.py │ │ │ │ ├── database.py │ │ │ │ ├── geometry.py │ │ │ │ ├── io.py │ │ │ │ ├── parsers.py │ │ │ │ ├── read_write_model.py │ │ │ │ ├── viz.py │ │ │ │ └── viz_3d.py │ │ │ └── visualization.py │ │ ├── pairs/ │ │ │ ├── aachen/ │ │ │ │ ├── pairs-db-covis20.txt │ │ │ │ ├── pairs-query-netvlad20.txt │ │ │ │ ├── pairs-query-netvlad30.txt │ │ │ │ └── pairs-query-netvlad50.txt │ │ │ ├── aachen_v1.1/ │ │ │ │ ├── pairs-db-covis20.txt │ │ │ │ └── pairs-query-netvlad50.txt │ │ │ └── inloc/ │ │ │ ├── pairs-query-netvlad20.txt │ │ │ ├── pairs-query-netvlad30-temporal.txt │ │ │ ├── pairs-query-netvlad30.txt │ │ │ ├── pairs-query-netvlad40-temporal.txt │ │ │ └── pairs-query-netvlad40.txt │ │ ├── pipeline_Aachen.ipynb │ │ ├── pipeline_InLoc.ipynb │ │ ├── pipeline_SfM.ipynb │ │ ├── requirements.txt │ │ ├── setup.py │ │ └── third_party/ │ │ ├── SuperGluePretrainedNetwork/ │ │ │ ├── .gitignore │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── assets/ │ │ │ │ ├── megadepth_train_scenes.txt │ │ │ │ ├── megadepth_validation_scenes.txt │ │ │ │ ├── phototourism_sample_pairs.txt │ │ │ │ ├── phototourism_test_pairs.txt │ │ │ │ ├── phototourism_test_pairs_original.txt │ │ │ │ ├── scannet_sample_pairs_with_gt.txt │ │ │ │ ├── scannet_test_pairs_with_gt.txt │ │ │ │ ├── yfcc_test_pairs_with_gt.txt │ │ │ │ └── yfcc_test_pairs_with_gt_original.txt │ │ │ ├── demo_superglue.py │ │ │ ├── match_pairs.py │ │ │ ├── models/ │ │ │ │ ├── __init__.py │ │ │ │ ├── matching.py │ │ │ │ ├── superglue.py │ │ │ │ ├── superpoint.py │ │ │ │ ├── utils.py │ │ │ │ └── weights/ │ │ │ │ ├── superglue_indoor.pth │ │ │ │ ├── superglue_outdoor.pth │ │ │ │ └── superpoint_v1.pth │ │ │ └── requirements.txt │ │ ├── d2net/ │ │ │ ├── .gitignore │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── extract_features.py │ │ │ ├── extract_hesaff.m │ │ │ ├── hpatches_sequences/ │ │ │ │ ├── HPatches-Sequences-Matching-Benchmark.ipynb │ │ │ │ ├── README.md │ │ │ │ ├── convert_to_png.sh │ │ │ │ ├── download.sh │ │ │ │ └── download_cache.sh │ │ │ ├── image_list_hpatches_sequences.txt │ │ │ ├── image_list_qualitative.txt │ │ │ ├── inloc/ │ │ │ │ ├── README.md │ │ │ │ ├── custom_demo.m │ │ │ │ ├── functions/ │ │ │ │ │ └── wustl_function/ │ │ │ │ │ ├── Features_WUSTL.m │ │ │ │ │ └── parfor_sparseGV.m │ │ │ │ ├── generate_list.m │ │ │ │ └── merge_files.m │ │ │ ├── megadepth_utils/ │ │ │ │ ├── preprocess_scene.py │ │ │ │ ├── preprocess_undistorted_megadepth.sh │ │ │ │ ├── train_scenes.txt │ │ │ │ ├── undistort_reconstructions.py │ │ │ │ └── valid_scenes.txt │ │ │ ├── qualitative/ │ │ │ │ └── Qualitative-Matches.ipynb │ │ │ └── train.py │ │ ├── deep-image-retrieval/ │ │ │ ├── .gitignore │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── dirtorch/ │ │ │ ├── datasets/ │ │ │ │ ├── __init__.py │ │ │ │ ├── __main__.py │ │ │ │ ├── create.py │ │ │ │ ├── dataset.py │ │ │ │ ├── downloader.py │ │ │ │ ├── generic.py │ │ │ │ ├── generic_func.py │ │ │ │ ├── landmarks.py │ │ │ │ ├── landmarks18.py │ │ │ │ ├── oxford.py │ │ │ │ └── paris.py │ │ │ ├── extract_features.py │ │ │ ├── extract_kapture.py │ │ │ ├── loss.py │ │ │ ├── nets/ │ │ │ │ ├── __init__.py │ │ │ │ ├── __main__.py │ │ │ │ ├── backbones/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── resnet.py │ │ │ │ │ └── resnext101_features.py │ │ │ │ ├── layers/ │ │ │ │ │ └── pooling.py │ │ │ │ ├── rmac_resnet.py │ │ │ │ ├── rmac_resnet_fpn.py │ │ │ │ └── rmac_resnext.py │ │ │ ├── test_dir.py │ │ │ └── utils/ │ │ │ ├── common.py │ │ │ ├── convenient.py │ │ │ ├── evaluation.py │ │ │ ├── funcs.py │ │ │ ├── pytorch_loader.py │ │ │ ├── transforms.py │ │ │ └── transforms_tools.py │ │ ├── disk/ │ │ │ ├── .gitignore │ │ │ ├── .gitmodules │ │ │ ├── LICENSE.txt │ │ │ ├── README.md │ │ │ ├── colmap/ │ │ │ │ ├── colmap/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── database.py │ │ │ │ │ ├── license.txt │ │ │ │ │ ├── read_dense.py │ │ │ │ │ └── read_model.py │ │ │ │ ├── colmap2dataset.py │ │ │ │ ├── h5_to_db.py │ │ │ │ └── merge_datasets.py │ │ │ ├── compute_validation_auc.py │ │ │ ├── detect.py │ │ │ ├── disk/ │ │ │ │ ├── __init__.py │ │ │ │ ├── common/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── errors.py │ │ │ │ │ ├── image.py │ │ │ │ │ ├── logger.py │ │ │ │ │ ├── structs.py │ │ │ │ │ └── vis.py │ │ │ │ ├── geom/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── distance_matrix.py │ │ │ │ │ ├── epi.py │ │ │ │ │ └── pose.py │ │ │ │ ├── loss/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── discrete_metric.py │ │ │ │ │ ├── pose_metric.py │ │ │ │ │ ├── ransac.py │ │ │ │ │ ├── reinforce.py │ │ │ │ │ └── rewards.py │ │ │ │ └── model/ │ │ │ │ ├── __init__.py │ │ │ │ ├── consistent_matcher.py │ │ │ │ ├── cycle_matcher.py │ │ │ │ ├── detector.py │ │ │ │ ├── disk.py │ │ │ │ └── nms.py │ │ │ ├── download_dataset │ │ │ ├── match.py │ │ │ ├── requirements.txt │ │ │ ├── train.py │ │ │ └── view_h5.py │ │ └── r2d2/ │ │ ├── LICENSE │ │ ├── NOTICE │ │ ├── README.md │ │ ├── datasets/ │ │ │ ├── __init__.py │ │ │ ├── aachen.py │ │ │ ├── dataset.py │ │ │ ├── imgfolder.py │ │ │ ├── pair_dataset.py │ │ │ └── web_images.py │ │ ├── download_training_data.sh │ │ ├── extract.py │ │ ├── extract_kapture.py │ │ ├── models/ │ │ │ ├── r2d2_WAF_N16.pt │ │ │ ├── r2d2_WASF_N16.pt │ │ │ └── r2d2_WASF_N8_big.pt │ │ ├── nets/ │ │ │ ├── ap_loss.py │ │ │ ├── losses.py │ │ │ ├── patchnet.py │ │ │ ├── reliability_loss.py │ │ │ ├── repeatability_loss.py │ │ │ └── sampler.py │ │ ├── results/ │ │ │ ├── r2d2_WAF_N16.scale-0.3-1.npy │ │ │ ├── r2d2_WAF_N16.size-256-1024.npy │ │ │ ├── r2d2_WASF_N16.scale-0.3-1.npy │ │ │ ├── r2d2_WASF_N16.size-256-1024.npy │ │ │ └── r2d2_W_N16.scale-0.3-1.npy │ │ ├── tools/ │ │ │ ├── common.py │ │ │ ├── dataloader.py │ │ │ ├── trainer.py │ │ │ ├── transforms.py │ │ │ ├── transforms_tools.py │ │ │ └── viz.py │ │ ├── train.py │ │ └── viz_heatmaps.py │ └── LoFTR/ │ ├── .gitignore │ ├── .gitmodules │ ├── LICENSE │ ├── README.md │ ├── assets/ │ │ ├── megadepth_test_1500_scene_info/ │ │ │ ├── 0015_0.1_0.3.npz │ │ │ ├── 0015_0.3_0.5.npz │ │ │ ├── 0022_0.1_0.3.npz │ │ │ ├── 0022_0.3_0.5.npz │ │ │ ├── 0022_0.5_0.7.npz │ │ │ └── megadepth_test_1500.txt │ │ └── scannet_test_1500/ │ │ ├── intrinsics.npz │ │ ├── scannet_test.txt │ │ ├── statistics.json │ │ └── test.npz │ ├── configs/ │ │ └── loftr/ │ │ ├── indoor/ │ │ │ ├── buggy_pos_enc/ │ │ │ │ ├── loftr_ds.py │ │ │ │ ├── loftr_ds_dense.py │ │ │ │ ├── loftr_ot.py │ │ │ │ └── loftr_ot_dense.py │ │ │ ├── debug/ │ │ │ │ └── .gitignore │ │ │ ├── loftr_ds.py │ │ │ ├── loftr_ds_dense.py │ │ │ ├── loftr_ot.py │ │ │ ├── loftr_ot_dense.py │ │ │ └── scannet/ │ │ │ ├── loftr_ds_eval.py │ │ │ └── loftr_ds_eval_new.py │ │ └── outdoor/ │ │ ├── buggy_pos_enc/ │ │ │ ├── loftr_ds.py │ │ │ ├── loftr_ds_dense.py │ │ │ ├── loftr_ot.py │ │ │ └── loftr_ot_dense.py │ │ ├── debug/ │ │ │ └── .gitignore │ │ ├── loftr_ds.py │ │ ├── loftr_ds_dense.py │ │ ├── loftr_ot.py │ │ └── loftr_ot_dense.py │ ├── demo/ │ │ ├── demo_loftr.py │ │ └── run_demo.sh │ ├── docs/ │ │ └── TRAINING.md │ ├── environment.yaml │ ├── loftr/ │ │ ├── __init__.py │ │ ├── config/ │ │ │ └── default.py │ │ ├── datasets/ │ │ │ ├── megadepth.py │ │ │ ├── sampler.py │ │ │ └── scannet.py │ │ ├── lightning/ │ │ │ ├── data.py │ │ │ └── lightning_loftr.py │ │ ├── loftr/ │ │ │ ├── __init__.py │ │ │ ├── backbone/ │ │ │ │ ├── __init__.py │ │ │ │ └── resnet_fpn.py │ │ │ ├── loftr.py │ │ │ ├── loftr_module/ │ │ │ │ ├── __init__.py │ │ │ │ ├── fine_preprocess.py │ │ │ │ ├── linear_attention.py │ │ │ │ └── transformer.py │ │ │ └── utils/ │ │ │ ├── coarse_matching.py │ │ │ ├── cvpr_ds_config.py │ │ │ ├── fine_matching.py │ │ │ ├── geometry.py │ │ │ ├── position_encoding.py │ │ │ └── supervision.py │ │ ├── losses/ │ │ │ └── loftr_loss.py │ │ ├── optimizers/ │ │ │ └── __init__.py │ │ ├── tools/ │ │ │ └── hloc_match_features.py │ │ └── utils/ │ │ ├── augment.py │ │ ├── comm.py │ │ ├── dataloader.py │ │ ├── dataset.py │ │ ├── metrics.py │ │ ├── misc.py │ │ ├── plotting.py │ │ └── profiler.py │ ├── requirements.txt │ ├── scripts/ │ │ ├── reproduce_test/ │ │ │ ├── indoor_ds.sh │ │ │ ├── indoor_ds_new.sh │ │ │ ├── indoor_ot.sh │ │ │ ├── outdoor_ds.sh │ │ │ └── outdoor_ot.sh │ │ └── reproduce_train/ │ │ ├── debug/ │ │ │ └── .gitignore │ │ ├── indoor_ds.sh │ │ ├── indoor_ot.sh │ │ ├── outdoor_ds.sh │ │ └── outdoor_ot.sh │ ├── setup.py │ ├── test.py │ └── train.py ├── LICENSE ├── NOTICE ├── README.md ├── croco/ │ ├── .gitignore │ ├── LICENSE │ ├── NOTICE │ ├── README.MD │ ├── datasets/ │ │ ├── __init__.py │ │ ├── crops/ │ │ │ ├── README.MD │ │ │ └── extract_crops_from_images.py │ │ ├── habitat_sim/ │ │ │ ├── README.MD │ │ │ ├── __init__.py │ │ │ ├── generate_from_metadata.py │ │ │ ├── generate_from_metadata_files.py │ │ │ ├── generate_multiview_images.py │ │ │ ├── multiview_habitat_sim_generator.py │ │ │ ├── pack_metadata_files.py │ │ │ └── paths.py │ │ ├── pairs_dataset.py │ │ └── transforms.py │ ├── models/ │ │ ├── blocks.py │ │ ├── criterion.py │ │ ├── croco.py │ │ ├── croco_downstream.py │ │ ├── curope/ │ │ │ ├── __init__.py │ │ │ ├── curope.cpp │ │ │ ├── curope2d.py │ │ │ ├── kernels.cu │ │ │ └── setup.py │ │ ├── dpt_block.py │ │ ├── head_downstream.py │ │ ├── masking.py │ │ └── pos_embed.py │ ├── pretrain.py │ ├── stereoflow/ │ │ ├── README.MD │ │ ├── augmentor.py │ │ ├── criterion.py │ │ ├── datasets_flow.py │ │ ├── datasets_stereo.py │ │ ├── download_model.sh │ │ ├── engine.py │ │ ├── test.py │ │ └── train.py │ └── utils/ │ └── misc.py ├── dust3r/ │ ├── __init__.py │ ├── datasets/ │ │ ├── __init__.py │ │ ├── base/ │ │ │ ├── __init__.py │ │ │ ├── base_stereo_view_dataset.py │ │ │ ├── batched_sampler.py │ │ │ ├── easy_dataset.py │ │ │ └── mast3r_base_stereo_view_dataset.py │ │ └── utils/ │ │ ├── __init__.py │ │ ├── cropping.py │ │ ├── mast3r_cropping.py │ │ └── transforms.py │ ├── heads/ │ │ ├── __init__.py │ │ ├── dpt_head.py │ │ ├── linear_head.py │ │ └── postprocess.py │ ├── image_pairs.py │ ├── inference.py │ ├── losses.py │ ├── model.py │ ├── optim_factory.py │ ├── patch_embed.py │ ├── post_process.py │ ├── utils/ │ │ ├── __init__.py │ │ ├── device.py │ │ ├── geometry.py │ │ ├── image.py │ │ ├── misc.py │ │ ├── parallel.py │ │ ├── path_to_croco.py │ │ └── read_write_model.py │ └── viz.py ├── infer/ │ ├── demo_online.py │ ├── demo_utils.py │ ├── dens3r_recon.py │ ├── eval_scripts/ │ │ ├── eval_depth.py │ │ ├── eval_matching.py │ │ ├── eval_normal.py │ │ └── matching_metrics.py │ └── infer_normal_pts3d.py ├── mast3r/ │ ├── .gitignore │ ├── __init__.py │ ├── catmlp_dpt_head.py │ ├── colmap_utils/ │ │ ├── __init__.py │ │ ├── database.py │ │ └── database_utils.py │ ├── fast_nn.py │ ├── image_pairs.py │ ├── losses.py │ ├── model.py │ ├── retrieval/ │ │ ├── graph.py │ │ ├── model.py │ │ └── processor.py │ ├── ssim.py │ └── utils/ │ ├── __init__.py │ ├── coarse_to_fine.py │ ├── collate.py │ ├── misc.py │ └── path_to_dust3r.py └── requirements.txt