{"id":18600774,"url":"https://github.com/autonomousvision/similarity_reconstruction","last_synced_at":"2025-05-16T17:12:30.224Z","repository":{"id":99790340,"uuid":"289973578","full_name":"autonomousvision/similarity_reconstruction","owner":"autonomousvision","description":"This code is based on the paper Exploiting Object Similarity in 3D Reconstruction.","archived":false,"fork":false,"pushed_at":"2020-08-24T16:03:49.000Z","size":2099,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-05-16T17:12:25.695Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://www.cv-foundation.org/openaccess/content_iccv_2015/papers/Zhou_Exploiting_Object_Similarity_ICCV_2015_paper.pdf","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/autonomousvision.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-08-24T15:59:12.000Z","updated_at":"2024-06-27T07:30:01.000Z","dependencies_parsed_at":"2023-08-01T03:01:34.396Z","dependency_job_id":null,"html_url":"https://github.com/autonomousvision/similarity_reconstruction","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autonomousvision%2Fsimilarity_reconstruction","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autonomousvision%2Fsimilarity_reconstruction/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autonomousvision%2Fsimilarity_reconstruction/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autonomousvision%2Fsimilarity_reconstruction/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/autonomousvision","download_url":"https://codeload.github.com/autonomousvision/similarity_reconstruction/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254573589,"owners_count":22093731,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-07T02:05:21.616Z","updated_at":"2025-05-16T17:12:30.211Z","avatar_url":"https://github.com/autonomousvision.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Similarity Reconstruction\nObjects of similar types and shapes are common in urban areas. In this project we take advantage of this observation to improve the quality of 3D reconstruction. Similarly shaped objects are located using detectors and then jointly reconstructed by learning a volumetric model. By aggregating observations from multiple instances, the completeness of the reconstruction can be improved and noise can be suppressed.\n\n### Related Paper\n* **Exploiting Object Similarity in 3D Reconstruction**, *Chen Zhou, Fatma Güney, Yizhou Wang , Andreas Geiger*, ICCV '15\n\n# 1. Prerequisites\nThe code is written and tested under Ubuntu 14.04.3. The following libraries are required:\n\n  1.  Boost (\u003e=1.54)\n  2.  PCL (\u003e=1.7)\n  3.  OpenCV (\u003e=2.4.6)\n  4.  Eigen (\u003e=3.2.4)\n  5.  [Ceres solver](http://ceres-solver.org/) (\u003e=1.10)\n  6.  [Glog](https://github.com/google/glog)\n\nBoost, OpenCV and Glog can be installed from the repository:\n\n```\nsudo apt-get install libboost-all-dev libopencv-dev libgoogle-glog-dev \n```\nThe other libraries needs to be installed manually:\n\n  - Eigen: The eigen package in the ubuntu 14.04 repository is 3.2.0. It's recommended to download a newer version of Eigen from its [website](http://eigen.tuxfamily.org/index.php?title=Main_Page).\n\n  - Ceres-solver: The library and instructions for installing can be donwloaded from [source](http://ceres-solver.org/).\n\n  - [Point Cloud Library](http://pointclouds.org/downloads/linux.html): \n  ```\n  sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl\n  sudo apt-get update\n  sudo apt-get install libpcl-all\n  ```\n\n# 2. Downloads\nDownload the project:\n\n```sh\ngit clone http://cvlibs.net:3000/ageiger/similarity_reconstruction.git similarity_reconstruction\n```\n\nCreate a data folder and extract the following zip file into this folder:\n\n* [Sequence files \u0026 trained models (294 MB)](http://www.cvlibs.net/download.php?file=similarity_reconstruction_data.zip) \n\n# 3. Compiling the Code\n\nCompile the code:\n\n```sh\ncd similarity_reconstruction/code/similarity_reconstruction\nmkdir build\ncd build\ncmake ..\nmake -j 6\n```\n\nCompile the mesh viewer for visualizing the results (optional).\nIn the root folder of the code:\n\n```\ncd similarity_reconstruction/code/similarity_reconstruction/visualization/trimesh2\nmake\n```\nNote that the output ply files can be directly viewed in Meshlab, Cloudcompare, etc.\n\n# 4. Running the Code\n\nSeveral bash scripts in `similarity_reconstruction/code/similarity_reconstruction/demo_scripts/` are used to run the code.\n\nTo run the demos one needs to download the pre-processed image sequence data, the initial reconstruction and the training files (see link above).\n\n* Running `demo.sh`: the demo script runs object detection and joint reconstruction using pretrained 3D detectors and the initial 3D reconstruction.\n\n    1. Set the follwing variables in `init_paths_samples.sh`, rename it to `init_paths.sh` and make it executable (chmod a+x init_paths.sh):\n\n        -`$code_dir`: the root folder of the code (where you have cloned the git repository)\n\n        -`$data_dir`: the folder where you have extracted the data zip file\n\n    2. Run `demo.sh`.\n\n    The results are stored in data_dir/results. After completion of the program, a 3D viewer should appear which displays the results in 3D.\n\n* Running `run_all.sh`: the scripts runs the whole pipeline, including initial 3D reconstruction from image sequence, detector training, detection and joint optimization.\n\n    1. Set the follwing variables in `init_paths.sh`:\n\n        -`$code_dir`: the root folder of the code (where you have cloned the git repository)\n\n        -`$data_dir`: the folder where you have extracted the data zip file\n\n        - Multiple `*prefix` variables: specify paths for pre-calculated camera parameters, image sequences, depth maps and sky segmentations. The current system uses down-scaled versions of the image sequence, semi-global matching based and consistency filtered depth maps as well as segmentation masks of the sky regions. For the downloaded demo sequence these paths can be left at their pre-specified values as these modalities have been pre-computed. For new sequences, this data has to be generated. However, as this code has a lot of dependencies and is not refactored so far it is not included.\n\n    2. Run `run_all.sh`.\n\n![screenshot](screenshot.png \"screenshot\")\n\n# 5. Comments \u0026 Questions\n\nIf you have comments, questions or suggestions, please contact the first author of the paper, Chen Zhou (zhouch@pku.edu.cn).\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fautonomousvision%2Fsimilarity_reconstruction","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fautonomousvision%2Fsimilarity_reconstruction","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fautonomousvision%2Fsimilarity_reconstruction/lists"}