{"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/arxiv-2605-07943","title":"TAVIS: A Benchmark for Egocentric Active Vision and Anticipatory Gaze in Imitation Learning","arxiv_id":"2605.07943","date":"2026-05-08","proceeding":null,"authors":["Giacomo Spigler"],"abstract":"Active vision -- where a policy controls its own gaze during manipulation -- has emerged as a key capability for imitation learning, with multiple independent systems demonstrating its benefits in the past year. Yet there is no shared benchmark to compare approaches or quantify what active vision contributes, on which task types, and under what conditions. We introduce TAVIS, evaluation infrastructure for active-vision imitation learning, with two complementary task suites -- TAVIS-Head (5 tasks, global search via pan/tilt necks) and TAVIS-Hands (3 tasks, local occlusion via wrist cameras) -- on two humanoid torso embodiments (GR1T2, Reachy2), built on IsaacLab. TAVIS provides three evaluation primitives: a paired headcam-vs-fixedcam protocol on identical demonstrations; GALT (Gaze-Action Lead Time), a novel metric grounded in cognitive science and HRI that quantifies anticipatory gaze in learned policies; and procedural ID/OOD splits. Baseline experiments with Diffusion Policy and $π_0$ reveal that (i) active-vision generally helps, but benefits are task-conditional rather than uniform; (ii) multi-task policies degrade sharply under controlled distribution shifts on both suites; and (iii) imitation alone yields anticipatory gaze, with median lead times comparable to the human teleoperator reference. Code, evaluation scripts, demonstrations (LeRobot v3.0; ~2200 episodes) and trained baselines are released at https://github.com/spiglerg/tavis and https://huggingface.co/tavis-benchmark.","url_abs":"https://arxiv.org/abs/2605.07943","url_pdf":"https://arxiv.org/pdf/2605.07943","source":{"archive":null,"snapshot":"2025-07-28","note":"not in the Papers with Code archive (frozen at the snapshot)","row_kind":"graph","title_abstract_authors_date":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)"},"code_links":[],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2605.07943","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2605.07943"}},"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":[{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/spiglerg/tavis","reach":null}],"summary":{"ran":3,"ran_fixture":3,"ran_violates":1,"ran_draft_wrong":2,"unverified":1},"by_repo_kind":{"found_in_text":{"samples":10,"ran":9,"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":"7ad1631312c4ec96","entry":"ActionLayout","repo":"spiglerg/tavis","repo_kind":"found_in_text","path":"tavis/eval/galt.py","file_url":"https://github.com/spiglerg/tavis/blob/HEAD/tavis/eval/galt.py","link_basis":"first_harvest_node","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":"7ad1631312c4ec96"}},{"code_sha256_prefix":"84ee0fa0d6013b64","entry":"GaltParams","repo":"spiglerg/tavis","repo_kind":"found_in_text","path":"tavis/eval/galt.py","file_url":"https://github.com/spiglerg/tavis/blob/HEAD/tavis/eval/galt.py","link_basis":"first_harvest_node","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":"84ee0fa0d6013b64"}},{"code_sha256_prefix":"1432f58eb87cfd0d","entry":"GaltResult","repo":"spiglerg/tavis","repo_kind":"found_in_text","path":"tavis/eval/galt.py","file_url":"https://github.com/spiglerg/tavis/blob/HEAD/tavis/eval/galt.py","link_basis":"first_harvest_node","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":"1432f58eb87cfd0d"}},{"code_sha256_prefix":"7bf5f8a5e514fb84","entry":"_backward_search_hand_onset","repo":"spiglerg/tavis","repo_kind":"found_in_text","path":"tavis/eval/galt.py","file_url":"https://github.com/spiglerg/tavis/blob/HEAD/tavis/eval/galt.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"7bf5f8a5e514fb84"}},{"code_sha256_prefix":"c4171aa2e130b1e6","entry":"_find_gripper_events","repo":"spiglerg/tavis","repo_kind":"found_in_text","path":"tavis/eval/galt.py","file_url":"https://github.com/spiglerg/tavis/blob/HEAD/tavis/eval/galt.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c4171aa2e130b1e6"}},{"code_sha256_prefix":"1c7d443d90560c6f","entry":"_find_settled_intervals","repo":"spiglerg/tavis","repo_kind":"found_in_text","path":"tavis/eval/galt.py","file_url":"https://github.com/spiglerg/tavis/blob/HEAD/tavis/eval/galt.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"1c7d443d90560c6f"}},{"code_sha256_prefix":"db357c4d8c3c1221","entry":"_match_head_arrival","repo":"spiglerg/tavis","repo_kind":"found_in_text","path":"tavis/eval/galt.py","file_url":"https://github.com/spiglerg/tavis/blob/HEAD/tavis/eval/galt.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"db357c4d8c3c1221"}},{"code_sha256_prefix":"c215eb2344b146c6","entry":"_refine_arrival_by_position","repo":"spiglerg/tavis","repo_kind":"found_in_text","path":"tavis/eval/galt.py","file_url":"https://github.com/spiglerg/tavis/blob/HEAD/tavis/eval/galt.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c215eb2344b146c6"}},{"code_sha256_prefix":"3c05e63381ba98f0","entry":"_velocity","repo":"spiglerg/tavis","repo_kind":"found_in_text","path":"tavis/eval/galt.py","file_url":"https://github.com/spiglerg/tavis/blob/HEAD/tavis/eval/galt.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"3c05e63381ba98f0"}},{"code_sha256_prefix":"c6bcad349c4f4e65","entry":"compute_galt","repo":"spiglerg/tavis","repo_kind":"found_in_text","path":"tavis/eval/galt.py","file_url":"https://github.com/spiglerg/tavis/blob/HEAD/tavis/eval/galt.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":"c6bcad349c4f4e65"}}]},"arxiv_metadata":{"licence":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)","fields":["title","abstract","authors","date"],"primary_category":"cs.LG","source":"arxiv_2026.jsonl"},"syntology_extracted_results":null}