{"id":21297333,"url":"https://github.com/khrylx/egopose","last_synced_at":"2026-03-05T19:32:21.630Z","repository":{"id":124633510,"uuid":"199706237","full_name":"Khrylx/EgoPose","owner":"Khrylx","description":"[ICCV 2019] Official PyTorch Implementation of \"Ego-Pose Estimation and Forecasting as Real-Time PD Control\".  ICCV 2019.","archived":false,"fork":false,"pushed_at":"2022-06-19T13:45:43.000Z","size":3830,"stargazers_count":88,"open_issues_count":1,"forks_count":24,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-04-06T07:09:19.255Z","etag":null,"topics":["character-controller","computer-vision","physics-based","pose-estimation","pose-forecasting","reinforcement-learning"],"latest_commit_sha":null,"homepage":"https://www.ye-yuan.com/ego-pose","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Khrylx.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":"2019-07-30T18:28:32.000Z","updated_at":"2024-06-01T14:36:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"79dc861d-cf5e-4f48-afdd-dd3c89586908","html_url":"https://github.com/Khrylx/EgoPose","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Khrylx/EgoPose","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Khrylx%2FEgoPose","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Khrylx%2FEgoPose/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Khrylx%2FEgoPose/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Khrylx%2FEgoPose/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Khrylx","download_url":"https://codeload.github.com/Khrylx/EgoPose/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Khrylx%2FEgoPose/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264870568,"owners_count":23676268,"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":["character-controller","computer-vision","physics-based","pose-estimation","pose-forecasting","reinforcement-learning"],"created_at":"2024-11-21T14:35:52.002Z","updated_at":"2026-03-05T19:32:15.118Z","avatar_url":"https://github.com/Khrylx.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EgoPose\n![Loading EgoPose demo gif](https://www.ye-yuan.com/wp-content/uploads/2019/08/ego_pose_rs.gif \"EgoPose demo gif\")\n![Loading EgoPose demo gif](https://www.ye-yuan.com/wp-content/uploads/2019/07/ego_forecast_rs.gif \"EgoPose demo gif\")\n---\nThis repo contains the official implementation of our paper:\n  \nEgo-Pose Estimation and Forecasting as Real-Time PD Control  \nYe Yuan, Kris Kitani  \n**ICCV 2019**  \n[[website](https://www.ye-yuan.com/ego-pose)] [[paper](https://arxiv.org/pdf/1906.03173.pdf)] [[video](https://youtu.be/968IIDZeWE0)]\n\n# Installation \n### Dataset\n* Download the dataset from Google Drive in the form of a [single zip](https://drive.google.com/file/d/1vzxVHAtfvfIEDreqYvHulhtNwHcomotV/view?usp=sharing) or [split zips](https://drive.google.com/drive/folders/1gArkvMsyePQvSkWaV45708MchH1nDZZE?usp=sharing) (or [BaiduYun link](https://pan.baidu.com/s/18iSI84nFpCUdAqhuN1PcWw), password: ynui) and place the unzipped dataset folder inside the repo as \"EgoPose/datasets\". Please see the README.txt inside the folder for details about the dataset.\n### Environment\n* **Supported OS:** MacOS, Linux\n* **Packages:**\n    * Python \u003e= 3.6\n    * PyTorch \u003e= 0.4 ([https://pytorch.org/](https://pytorch.org/))\n    * gym ([https://github.com/openai/gym](https://github.com/openai/gym))\n    * mujoco-py ([https://github.com/openai/mujoco-py](https://github.com/openai/mujoco-py)) (**[MuJoCo](https://mujoco.org/) is now free thanks to DeepMind!** 🎉🎉🎉)\n    * OpenCV: ```conda install -c menpo opencv```\n    * Tensorflow, OpenGL, yaml: \n    ```conda install tensorflow pyopengl pyyaml```\n* **Additional setup:**\n    * For linux, the following environment variable needs to be set to greatly improve multi-threaded sampling performance:    \n    ```export OMP_NUM_THREADS=1```\n* **Note**: All scripts should be run from the root of this repo.\n\n### Pretrained Models\n* Download our pretrained models from this [link](https://drive.google.com/file/d/1DE-uSUk4JMDtL9aQY2R5rAd3_yPRUIIH/view?usp=sharing) (or [BaiduYun link](https://pan.baidu.com/s/1NECDEX-itgzKoYHrxSMEwQ), password: kieq) and place the unzipped results folder inside the repo as \"EgoPose/results\".\n\n# Quick Demo  \n### Ego-Pose Estimation\n* To visualize the results for MoCap data:  \n    ```python ego_pose/eval_pose.py --egomimic-cfg subject_03 --statereg-cfg subject_03 --mode vis```  \n    Here we use the config file for subject_03. Note that in the visualization, the red humanoid represents the GT.\n    \n* To visualize the results for in-the-wild data:  \n    ```python ego_pose/eval_pose_wild.py --egomimic-cfg cross_01 --statereg-cfg cross_01 --data wild_01 --mode vis```  \n    Here we use the config file for cross-subject model (cross_01) and test it on in-the-wild data (wild_01).\n    \n* Keyboard shortcuts for the visualizer: [keymap.md](https://github.com/Khrylx/EgoPose/blob/master/docs/keymap.md)\n### Ego-Pose Forecasting\n* To visualize the results for MoCap data:  \n    ```python ego_pose/eval_forecast.py --egoforecast-cfg subject_03 --mode vis```  \n\n* To visualize the results for in-the-wild data:  \n    ```python ego_pose/eval_forecast_wild.py --egoforecast-cfg cross_01 --data wild_01 --mode vis```  \n\n\n# Training and Testing\n* If you are interested in training and testing with our code, please see [train_and_test.md](https://github.com/Khrylx/EgoPose/blob/master/docs/train_and_test.md).\n\n# Citation\nIf you find our work useful in your research, please cite our paper [Ego-Pose Estimation and Forecasting as Real-Time PD Control](https://www.ye-yuan.com/ego-pose):\n```bibtex\n@inproceedings{yuan2019ego,\n    title={Ego-Pose Estimation and Forecasting as Real-Time PD Control},\n    author={Yuan, Ye and Kitani, Kris},\n    booktitle={Proceedings of the IEEE International Conference on Computer Vision (ICCV)},\n    year={2019},\n    pages={10082--10092}\n}\n```\n\n# License\n\nThe software in this repo is freely available for free non-commercial use. Please see the [license](https://github.com/Khrylx/EgoPose/blob/master/LICENSE) for further details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkhrylx%2Fegopose","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkhrylx%2Fegopose","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkhrylx%2Fegopose/lists"}