{"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/affordance-learning-for-end-to-end-visuomotor","title":"Affordance Learning for End-to-End Visuomotor Robot Control","arxiv_id":"1903.04053","date":"2019-03-10","proceeding":null,"authors":["Aleksi Hämäläinen","Karol Arndt","Ali Ghadirzadeh","Ville Kyrki"],"abstract":"Training end-to-end deep robot policies requires a lot of domain-, task-, and\nhardware-specific data, which is often costly to provide. In this work, we\npropose to tackle this issue by employing a deep neural network with a modular\narchitecture, consisting of separate perception, policy, and trajectory parts.\nEach part of the system is trained fully on synthetic data or in simulation.\nThe data is exchanged between parts of the system as low-dimensional latent\nrepresentations of affordances and trajectories. The performance is then\nevaluated in a zero-shot transfer scenario using Franka Panda robot arm.\nResults demonstrate that a low-dimensional representation of scene affordances\nextracted from an RGB image is sufficient to successfully train manipulator\npolicies. We also introduce a method for affordance dataset generation, which\nis easily generalizable to new tasks, objects and environments, and requires no\nmanual pixel labeling.","url_abs":"http://arxiv.org/abs/1903.04053v1","url_pdf":"http://arxiv.org/pdf/1903.04053v1.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":"affordance-learning-for-end-to-end-visuomotor","repo_url":"https://github.com/gamleksi/affordancegym","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"affordance-learning-for-end-to-end-visuomotor","repo_url":"https://github.com/gamleksi/BlenderDomainRandomizer","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"dataset-generation","task_name":"Dataset Generation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/1903.04053","atlas_url":"https://app.syntology.ai/?focus=1903.04053","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1903.04053"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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/gamleksi/affordancegym","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/gamleksi/BlenderDomainRandomizer","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":1,"unverified":4},"by_repo_kind":{"official":{"samples":3,"ran":0,"repositories":1},"listed":{"samples":2,"ran":1,"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":"1cc84e59447660b1","entry":"find_nodes","repo":"gamleksi/BlenderDomainRandomizer","repo_kind":"listed","path":"src/texture_random.py","file_url":"https://github.com/gamleksi/BlenderDomainRandomizer/blob/HEAD/src/texture_random.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":"1cc84e59447660b1"}},{"code_sha256_prefix":"f2f4f735b6123e19","entry":"DH","repo":"gamleksi/affordancegym","repo_kind":"official","path":"affordance_gym/src/affordance_gym/perception_policy.py","file_url":"https://github.com/gamleksi/affordancegym/blob/HEAD/affordance_gym/src/affordance_gym/perception_policy.py","link_basis":"first_harvest_node","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":"f2f4f735b6123e19"}},{"code_sha256_prefix":"36aaf672ff4274d1","entry":"end_effector_pose","repo":"gamleksi/affordancegym","repo_kind":"official","path":"affordance_gym/src/affordance_gym/perception_policy.py","file_url":"https://github.com/gamleksi/affordancegym/blob/HEAD/affordance_gym/src/affordance_gym/perception_policy.py","link_basis":"first_harvest_node","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":"36aaf672ff4274d1"}},{"code_sha256_prefix":"7c5e7192941968c6","entry":"highest_edge","repo":"gamleksi/BlenderDomainRandomizer","repo_kind":"listed","path":"src/utils.py","file_url":"https://github.com/gamleksi/BlenderDomainRandomizer/blob/HEAD/src/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":"7c5e7192941968c6"}},{"code_sha256_prefix":"400200ebabad4319","entry":"parse_trajectory","repo":"gamleksi/affordancegym","repo_kind":"official","path":"affordance_gym/src/affordance_gym/trajectory_parser.py","file_url":"https://github.com/gamleksi/affordancegym/blob/HEAD/affordance_gym/src/affordance_gym/trajectory_parser.py","link_basis":"first_harvest_node","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":"400200ebabad4319"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}