{"id":19134085,"url":"https://github.com/um-arm-lab/chsel_experiments","last_synced_at":"2026-06-24T07:31:23.142Z","repository":{"id":165017535,"uuid":"640061098","full_name":"UM-ARM-Lab/chsel_experiments","owner":"UM-ARM-Lab","description":"Experiments for the CHSEL paper","archived":false,"fork":false,"pushed_at":"2024-07-13T02:22:43.000Z","size":132,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-11-13T07:21:39.144Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/UM-ARM-Lab.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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":"2023-05-12T22:13:49.000Z","updated_at":"2024-07-13T02:22:47.000Z","dependencies_parsed_at":"2024-04-22T20:34:09.297Z","dependency_job_id":"1af92f1a-9fdc-4c81-87d0-3a44ba32a232","html_url":"https://github.com/UM-ARM-Lab/chsel_experiments","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/UM-ARM-Lab/chsel_experiments","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UM-ARM-Lab%2Fchsel_experiments","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UM-ARM-Lab%2Fchsel_experiments/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UM-ARM-Lab%2Fchsel_experiments/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UM-ARM-Lab%2Fchsel_experiments/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/UM-ARM-Lab","download_url":"https://codeload.github.com/UM-ARM-Lab/chsel_experiments/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UM-ARM-Lab%2Fchsel_experiments/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34722630,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-24T02:00:07.484Z","response_time":106,"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-09T06:25:23.092Z","updated_at":"2026-06-24T07:31:23.121Z","avatar_url":"https://github.com/UM-ARM-Lab.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CHSEL Experiments\n\nThis is the official experiments code for the paper [CHSEL: Producing Diverse Plausible Pose Estimates from Contact and Free Space Data](TODO).\nIf you use it, please cite\n\n```\n@inproceedings{zhong2023chsel,\n  title={CHSEL: Producing Diverse Plausible Pose Estimates from Contact and Free Space Data},\n  author={Zhong, Sheng and Fazeli, Nima and Berenson, Dmitry},\n  booktitle={Robotics science and systems},\n  year={2023}\n}\n```\n\n## Installation (experiments)\n1. install [pytorch3d](https://github.com/facebookresearch/pytorch3d) (various ways, but probably easiest through conda)\n2. install [base experiments](https://github.com/UM-ARM-Lab/base_experiments) by following its readme\n3. install [stucco experiments](https://github.com/UM-ARM-Lab/stucco_experiments) by following its readme\n4. clone repository locally and `cd` into it\n5. `pip install -e .`\n\n## Links\n- [arxiv](https://arxiv.org/abs/2305.08042)\n- [website](https://johnsonzhong.me/projects/chsel/)\n\n\n## Usage\nThis is the full experiments to reproduce the results from the paper.\nSee the [light-weight library repository](https://github.com/UM-ARM-Lab/chsel) for how to use CHSEL\nin your projects. \nSee the [website](https://johnsonzhong.me/projects/chsel/) for videos and a high level introduction.\n\n## Registration Experiments\nThe instructions below are for all methods across all tasks. To specify a set of tasks, use the `--task` argument, such\nas `--task drill mustard` to run only the methods on the drill and mustard pokes. To specify which methods to run, use\nthe `--registration` argument, such as `--registration icp medial-constraint` to run only the ICP and medial constraint\nbaselines. By default, 5 random seeds (0,1,2,3,4) are used; to run using other random seeds use the `--seed` argument,\nsuch as `--seed 23 42` to run with seeds 23 and 42.\n\nGenerate and export data for offline baselines:\n```shell\npython run_many_registration_experiments.py --experiment build --no_gui\npython run_many_registration_experiments.py --registration none --no_gui\n```\n\nGenerate plausible set for plausible diversity evaluation\n```shell\npython run_many_registration_experiments.py --experiment generate-plausible-set --seed 0 --no_gui\n```\n\nRun poking experiments for all methods (CVO requires preprocessing; see below)\n```shell\npython run_many_registration_experiments.py --experiment poke --no_gui\n```\n\nEvaluate all methods on their plausible diversity\n```shell\npython run_many_registration_experiments.py --experiment evaluate-plausible-diversity --no_gui\n```\n\nPlotting results (images saved under `data/img`)\n```shell\npython run_many_registration_experiments.py --experiment plot-poke-pd --no_gui\n```\n\nGenerate gifs from the logged images after `cd`ing into their log directories:\n```shell\nffmpeg -i %d.png -vf palettegen palette.png\nffmpeg -i %d.png -i palette.png -lavfi paletteuse all.gif\n```\n\n## Running Baselines\nCVO\n1. download docker image [https://github.com/UMich-CURLY/docker_images/tree/master/cvo_gpu](cvo_gpu)\n2. build docker image and follow instructions\n3. first start container with `bash run_cuda_docker.bash cvo` in the `docker/images/cvo_gpu` directory (script modified to mount shared data directory)\n4. for later uses, restart latest container with \"docker start -a -i `docker ps -q -l`\"\n5. build CVO\n6. run script inside build on a single trajectory `bin/cvo_align_manip_freespace ../data/poke/MUSTARD_0.txt ../data/poke/MUSTARD.txt ../cvo_params/cvo_geometric_params_gpu.yaml`\n7. run script for all trajectories of a task `python3 ../scripts/run_many_manip_experiments.py --task mustard mustard_fallen drill`","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fum-arm-lab%2Fchsel_experiments","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fum-arm-lab%2Fchsel_experiments","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fum-arm-lab%2Fchsel_experiments/lists"}