{"id":19526626,"url":"https://github.com/zju-fast-lab/auto-filmer","last_synced_at":"2025-08-01T14:12:26.489Z","repository":{"id":107907793,"uuid":"577124110","full_name":"ZJU-FAST-Lab/Auto-Filmer","owner":"ZJU-FAST-Lab","description":"A Videography Planner for Quadrotors","archived":false,"fork":false,"pushed_at":"2023-06-30T06:12:57.000Z","size":51280,"stargazers_count":44,"open_issues_count":2,"forks_count":4,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-05-07T14:27:48.355Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ZJU-FAST-Lab.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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":"2022-12-12T02:32:11.000Z","updated_at":"2025-04-18T06:20:20.000Z","dependencies_parsed_at":null,"dependency_job_id":"bfa14c8f-04e1-42e6-a19c-c893eab9a5f7","html_url":"https://github.com/ZJU-FAST-Lab/Auto-Filmer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ZJU-FAST-Lab/Auto-Filmer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZJU-FAST-Lab%2FAuto-Filmer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZJU-FAST-Lab%2FAuto-Filmer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZJU-FAST-Lab%2FAuto-Filmer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZJU-FAST-Lab%2FAuto-Filmer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ZJU-FAST-Lab","download_url":"https://codeload.github.com/ZJU-FAST-Lab/Auto-Filmer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZJU-FAST-Lab%2FAuto-Filmer/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268241031,"owners_count":24218373,"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","status":"online","status_checked_at":"2025-08-01T02:00:08.611Z","response_time":67,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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-11T01:11:08.287Z","updated_at":"2025-08-01T14:12:26.483Z","avatar_url":"https://github.com/ZJU-FAST-Lab.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Auto-Filmer\nA Videography Planner for Quadrotors with a Rotating Gimbal.\n\n\u003ca href=\"https://www.youtube.com/watch?v=Lrk9MVJEMpo\" target=\"blank\"\u003e\n  \u003cp align=\"center\"\u003e\n    \u003cimg src=\"assets/cover2.png\" width=\"500\"/\u003e\n  \u003c/p\u003e\n\u003c/a\u003e\n\n**Video Links**: [youtube](https://www.youtube.com/watch?v=Lrk9MVJEMpo) or [bilibili](https://www.bilibili.com/video/BV14S4y1W7tL)\n\n## 0. Overview\n**Auto-Filmer** is a planner for autonomous tracking and videogrphy in unknown circumstance. It enables users to send shooting command in real-time while keeping the drone safe.\n\n**Authors**: Zhiwei Zhang (real_zhiwei@zju.edu.cn) and [Fei Gao](https://ustfei.com/) from the [ZJU Fast Lab](http://zju-fast.com/). \n\n**Paper**: [Auto Filmer: Autonomous Aerial Videography Under Human Interaction](https://ieeexplore.ieee.org/document/9998054), Zhiwei Zhang, Yuhang Zhong, Junlong Guo, Qianhao Wang, Chao Xu and Fei Gao, Published in IEEE Robotics and Automation Letters (RAL).\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"assets/real_1.gif\" width=\"500\"/\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"assets/real_2.gif\" width=\"500\"/\u003e\n\u003c/p\u003e\n\n## 1. Setup\n\n### 1.1. Download\n\n```\ngit clone https://github.com/ZJU-FAST-Lab/Auto-Filmer.git\ncd Auto-Filmer\n```\n### 1.2 Depth Render\nWe use CUDA to render depth. Please remember to also change the 'arch' and 'code' flags in the line of \n\n```\n  set(CUDA_NVCC_FLAGS \n      # set this according to your cuda version\n      -gencode=arch=compute_80,code=sm_80 ;\n  ) \n``` \nin _CMakeList.txt_ in the package __local_sensing__. If you encounter compiling error due to different Nvidia graphics card you use or you can not see proper depth images as expected, you can check the right code via [link1](https://arnon.dk/matching-sm-architectures-arch-and-gencode-for-various-nvidia-cards/) or [link2](https://github.com/tpruvot/ccminer/wiki/Compatibility).\n\n### 1.3 Graphical User Interface\n\nThe Python package [tkinter](https://docs.python.org/3/library/tkinter.html) is used to create the videography interface. To install tkinter,\n```\npip install tk\n```\n\n \n### 1.4. Compilation\n\n```\ncatkin_make\nsource devel/setup.sh\n```\n\n## 2. Run \u0026 Interation\n\n```\nroslaunch planning af_tracking.launch\n```\n\nUse \"2D Nav Goal\" in Rviz to select goals for the target drone, then the filming drone begins to follow and shoot it.\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"assets/sim_1.gif\" width=\"500\"/\u003e\n\u003c/p\u003e\n\n\nFurthermore, our gui provides videography interactions. The gif below shows an image position change (the white circle in the image indicates the target). Try to change other items including the camera angle, transition time and distance by yourself. :smile:\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"assets/sim_2.gif\" width=\"600\"/\u003e\n\u003c/p\u003e\n\n\n## 3. Acknowledgement\nWe use [**MINCO**](https://github.com/ZJU-FAST-Lab/GCOPTER) as our trajectory representation.\n\nWe use [**EGO-Planner-v2**](https://github.com/ZJU-FAST-Lab/EGO-Planner-v2) as the target drone planner.\n\n[**Elastic Tracker**](https://github.com/ZJU-FAST-Lab/Elastic-Tracker) provides an efficient framework of tracking objects.\n\nWe use [**DecompROS**](https://github.com/sikang/DecompROS) for safe flight corridor generation and visualization.\n\n## 4. Citation\n```bibtex\n@ARTICLE{9998054,\n  author={Zhang, Zhiwei and Zhong, Yuhang and Guo, Junlong and Wang, Qianhao and Xu, Chao and Gao, Fei},\n  journal={IEEE Robotics and Automation Letters}, \n  title={Auto Filmer: Autonomous Aerial Videography Under Human Interaction}, \n  year={2023},\n  volume={8},\n  number={2},\n  pages={784-791},\n  doi={10.1109/LRA.2022.3231828}}\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzju-fast-lab%2Fauto-filmer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzju-fast-lab%2Fauto-filmer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzju-fast-lab%2Fauto-filmer/lists"}