{"id":28383017,"url":"https://github.com/opendronemap/cameralib","last_synced_at":"2025-10-27T22:04:22.350Z","repository":{"id":255908385,"uuid":"853853377","full_name":"OpenDroneMap/CameraLib","owner":"OpenDroneMap","description":"Python library to perform forward and backward projection of 2D coordinates in camera space to geographic coordinates on ODM datasets","archived":false,"fork":false,"pushed_at":"2024-09-16T19:31:20.000Z","size":125,"stargazers_count":8,"open_issues_count":0,"forks_count":3,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-06-22T08:32:00.434Z","etag":null,"topics":["camera","odm"],"latest_commit_sha":null,"homepage":"https://cameralib.readthedocs.io/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/OpenDroneMap.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","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}},"created_at":"2024-09-07T18:04:45.000Z","updated_at":"2025-06-09T04:32:09.000Z","dependencies_parsed_at":"2024-09-19T23:20:26.756Z","dependency_job_id":null,"html_url":"https://github.com/OpenDroneMap/CameraLib","commit_stats":{"total_commits":4,"total_committers":1,"mean_commits":4.0,"dds":0.0,"last_synced_commit":"6a5d7442d76bf42ad7f572a0a6c879a5e35efe95"},"previous_names":["opendronemap/cameralib"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/OpenDroneMap/CameraLib","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenDroneMap%2FCameraLib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenDroneMap%2FCameraLib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenDroneMap%2FCameraLib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenDroneMap%2FCameraLib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OpenDroneMap","download_url":"https://codeload.github.com/OpenDroneMap/CameraLib/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenDroneMap%2FCameraLib/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261827176,"owners_count":23215703,"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":["camera","odm"],"created_at":"2025-05-30T05:11:39.994Z","updated_at":"2025-10-27T22:04:17.312Z","avatar_url":"https://github.com/OpenDroneMap.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CameraLib\n\nA Python library to perform forward and backward projection of 2D coordinates in camera space to geographic coordinates on [ODM](https://github.com/OpenDroneMap/ODM) datasets. In simple terms, with an ODM dataset at hand you can use this library to ask:\n\n * Given a pixel coordinate in an image, where does it correspond on the map?\n * And it's inverse: given a location on the map, which images and pixels correspond to it?\n\n![image](https://github.com/user-attachments/assets/00d14b1f-16fe-4123-a171-6ef3b774aeb9)\n\n## Install\n\n```bash\npip install -U https://github.com/OpenDroneMap/CameraLib/archive/main.zip\n```\n\nNote we developed the library using Python 3.12. If you're having issues with other versions of Python, you might need to relax the versions in `requirements.txt`.\n\n## Usage\n\nCheck the [documentation](https://cameralib.readthedocs.io/) and [examples](https://github.com/OpenDroneMap/CameraLib/tree/main/examples).\n\nAlong with functions for doing coordinates projection, in the `cameralib.utils` package we also offer utilities to read certain annotation file formats. A use case for this is to use a software such as [X-AnyLabeling](https://github.com/CVHub520/X-AnyLabeling/releases) to annotate an image and then use this library to project the polygon/bounding boxes to geographic coordinates.\n\n## Required Files in ODM project\n\nCameraLib requires the following files from an ODM project. It's important that you process a dataset with the `--dsm` or `--dtm` option.\n\n * `odm_dem/dsm.tif` or `odm_dem/dtm.tif`\n * `odm_report/shots.geojson`\n * `cameras.json`\n\n## Running the Examples\n\nAfter [installing](#install) `cameralib` you can download any of the [examples](https://github.com/OpenDroneMap/CameraLib/tree/main/examples) into a folder of your choice and run:\n\n```bash\npython helloworld.py\n```\n\n## Contributing\n\nWe welcome contributions! Pull requests are welcome.\n\n## Support the Project\n\nThere are many ways to contribute to the project:\n\n - ⭐️ us on GitHub.\n - Help us test the application.\n - Spread the word about OpenDroneMap on social media.\n - Help answer questions on the community [forum](https://community.opendronemap.org)\n - Become a contributor!\n\n ## License\n\nThe code in this repository is licensed under the AGPLv3.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopendronemap%2Fcameralib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopendronemap%2Fcameralib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopendronemap%2Fcameralib/lists"}