{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/learning-continuous-grasping-function-with-a","title":"Learning Continuous Grasping Function with a Dexterous Hand from Human Demonstrations","arxiv_id":"2207.05053","date":"2022-07-11","proceeding":null,"authors":["Jianglong Ye","Jiashun Wang","Binghao Huang","Yuzhe Qin","Xiaolong Wang"],"abstract":"We propose to learn to generate grasping motion for manipulation with a dexterous hand using implicit functions. With continuous time inputs, the model can generate a continuous and smooth grasping plan. We name the proposed model Continuous Grasping Function (CGF). CGF is learned via generative modeling with a Conditional Variational Autoencoder using 3D human demonstrations. We will first convert the large-scale human-object interaction trajectories to robot demonstrations via motion retargeting, and then use these demonstrations to train CGF. During inference, we perform sampling with CGF to generate different grasping plans in the simulator and select the successful ones to transfer to the real robot. By training on diverse human data, our CGF allows generalization to manipulate multiple objects. Compared to previous planning algorithms, CGF is more efficient and achieves significant improvement on success rate when transferred to grasping with the real Allegro Hand. Our project page is available at https://jianglongye.com/cgf .","url_abs":"https://arxiv.org/abs/2207.05053v3","url_pdf":"https://arxiv.org/pdf/2207.05053v3.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"learning-continuous-grasping-function-with-a","repo_url":"https://github.com/jianglongye/cgf","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"human-object-interaction-detection","task_name":"Human-Object Interaction Detection"},{"task_slug":"motion-retargeting","task_name":"motion retargeting"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2207.05053","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2207.05053"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/jianglongye/cgf","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":1,"ran_honours":1,"unverified":10},"by_repo_kind":{"official":{"samples":12,"ran":2,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"7d2905265c91d217","entry":"batched_index_select","repo":"jianglongye/cgf","repo_kind":"official","path":"cgf/robotics.py","file_url":"https://github.com/jianglongye/cgf/blob/HEAD/cgf/robotics.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"7d2905265c91d217"}},{"code_sha256_prefix":"ec413739d406e611","entry":"pc_normalize","repo":"jianglongye/cgf","repo_kind":"official","path":"cgf/models.py","file_url":"https://github.com/jianglongye/cgf/blob/HEAD/cgf/models.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ec413739d406e611"}},{"code_sha256_prefix":"5d0ef4b4b1f7ecce","entry":"axis_angle_to_matrix","repo":"jianglongye/cgf","repo_kind":"official","path":"cgf/transformation.py","file_url":"https://github.com/jianglongye/cgf/blob/HEAD/cgf/transformation.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"5d0ef4b4b1f7ecce"}},{"code_sha256_prefix":"f6f74e1ef159b7ec","entry":"axis_angle_to_quaternion","repo":"jianglongye/cgf","repo_kind":"official","path":"cgf/transformation.py","file_url":"https://github.com/jianglongye/cgf/blob/HEAD/cgf/transformation.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"f6f74e1ef159b7ec"}},{"code_sha256_prefix":"f3fc597a13ea9c07","entry":"feature_transform_reguliarzer","repo":"jianglongye/cgf","repo_kind":"official","path":"cgf/models.py","file_url":"https://github.com/jianglongye/cgf/blob/HEAD/cgf/models.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"f3fc597a13ea9c07"}},{"code_sha256_prefix":"2d7565c102266a1f","entry":"load_joint_limits","repo":"jianglongye/cgf","repo_kind":"official","path":"cgf/robotics.py","file_url":"https://github.com/jianglongye/cgf/blob/HEAD/cgf/robotics.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2d7565c102266a1f"}},{"code_sha256_prefix":"70486b666262f6d2","entry":"pt3d_knn","repo":"jianglongye/cgf","repo_kind":"official","path":"cgf/robotics.py","file_url":"https://github.com/jianglongye/cgf/blob/HEAD/cgf/robotics.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"70486b666262f6d2"}},{"code_sha256_prefix":"d951b12e257e2c90","entry":"rand_indices","repo":"jianglongye/cgf","repo_kind":"official","path":"cgf/data.py","file_url":"https://github.com/jianglongye/cgf/blob/HEAD/cgf/data.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"d951b12e257e2c90"}},{"code_sha256_prefix":"16511581c7678dc5","entry":"rot_from_connected_link","repo":"jianglongye/cgf","repo_kind":"official","path":"hand_teleop/utils/model_utils.py","file_url":"https://github.com/jianglongye/cgf/blob/HEAD/hand_teleop/utils/model_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"16511581c7678dc5"}},{"code_sha256_prefix":"94d3f69b9739b003","entry":"sample","repo":"jianglongye/cgf","repo_kind":"official","path":"cgf/data.py","file_url":"https://github.com/jianglongye/cgf/blob/HEAD/cgf/data.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"94d3f69b9739b003"}},{"code_sha256_prefix":"7597de8adb8b3252","entry":"split_axis_angle","repo":"jianglongye/cgf","repo_kind":"official","path":"cgf/transformation.py","file_url":"https://github.com/jianglongye/cgf/blob/HEAD/cgf/transformation.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"7597de8adb8b3252"}},{"code_sha256_prefix":"a3049715bcbcb43c","entry":"square_distance","repo":"jianglongye/cgf","repo_kind":"official","path":"cgf/models.py","file_url":"https://github.com/jianglongye/cgf/blob/HEAD/cgf/models.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a3049715bcbcb43c"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}