Skip to content
IRVLUTDPublic

About

iTeach: In the Wild Interactive Teaching for Failure-Driven Adaptation of Robot Perception ๐Ÿค–๐ŸŒ

Topics

Resources

Stars

6 stars

Watchers

3 watching

Forks

Latest commit

ย 

History

100 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿค– iTeach

In the Wild Interactive Teaching for Failure-Driven Adaptation of Robot Perception


Jishnu Jaykumar P ย ยทย  Cole Salvato ย ยทย  Vinaya Bomnale ย ยทย  Jikai Wang ย ยทย  Ayush Bhardwaj ย ยทย  Jin-Ryong Kim ย ยทย  Yu Xiang

Intelligent Robotics and Vision Lab ยท The University of Texas at Dallas



Project Page arXiv License: MIT Video DH-YOLO Demo


iTeach overview
A pretrained perception model fails in the wild. A co-located human performs a short HumanPlay, annotates a single frame with eye-gaze + voice, and the label is propagated across the RGB-D clip. Failure-driven samples feed an iterative fine-tuning loop, and the best checkpoint is redeployed.

iTeach adapts robot perception while the robot is deployed, triggered by its failures, instead of through offline retraining.

When the perception model fails, a human spends a few seconds rearranging the objects (HumanPlay, 5โ€“10 s) while the robot records RGB-D. The human then labels the final frame hands-free with eye-gaze and voice on a HoloLens 2. SAM2 turns those point prompts into masks and propagates them backwards through the clip, producing dense supervision. That data is used to iteratively fine-tune an MSMFormer unseen-object instance segmentation (UOIS) model, which in turn improves grasping and pick-and-place.


๐ŸŽฏ UOIS combined score ๐Ÿฆพ Grasping success ๐Ÿ“ฆ Pick & place success ๐Ÿ‘ฅ User study
26.1 โ†’ 80.7
+54.6 ยท 3.1ร— lift
71 โ†’ 74 / 100
+3 on SceneReplica
65 โ†’ 72 / 100
+7 on SceneReplica
94.9% mean box IoU
NASA-TLX 21/100 ยท 12 participants

๐Ÿ“‘ Contents

01 ยท How It Works: The overview video and the FS3 labelling steps 02 ยท Results: Perception, manipulation and the user study 03 ยท Code: Which repository does what, and in what order 04 ยท Legacy ยท iTeach v1: Archived door and handle detection (DH-YOLO) โœฆ ยท License ยท Cite ยท Contact: License, citation, contact and thanks

๐Ÿ—‚๏ธ Full index (every section and subsection as text links)
  1. How It Works ยท The overview video and the FS3 labelling steps
  2. Results ยท Perception, manipulation and the user study
  3. Code ยท Which repository does what, and in what order
  4. Legacy ยท iTeach v1 ยท Archived door and handle detection (DH-YOLO)
  5. License ยท Citation ยท Contact ยท Thanks



๐ŸŽฌ How It Works

iTeach overview video
โ–ถ Watch the overview video


Labelling uses FS3 (Few-Shot Semi-Supervised): one human-labelled frame becomes dense supervision for the whole clip.


โ‘  HumanPlay: clean up the scene

HumanPlay interaction
The human rearranges objects to reduce occlusion and produce a clean final frame while a short 5โ€“10 s RGB-D sequence is recorded.


โ‘ก Annotate hands-free: eye-gaze + voice

FS3 annotation via eye-gaze and voice
Eye-gaze places point prompts on the final frame; a voice command triggers SAM2 to convert them into bounding-box object labels.


โ‘ข Propagate: SAM2 video mode

SAM2 label propagation
SAM2 propagates masks backwards from the final annotated frame to all earlier frames, producing dense per-frame supervision.




๐Ÿ“ˆ Results

Perception improves ยท Manipulation follows ยท Anyone can teach


๐ŸŽฏ Perception adaptation

UOIS combined score Before After Gain
MSMFormer โ†’ iTeach fine-tuned 26.1 80.7 +54.6 ยท 3.1ร—

Qualitative UOIS across iTeach fine-tuning rounds
Qualitative UOIS. Left โ†’ right: ground truth, pretrained MSMFormer, and iTeach fine-tuning rounds FT1, FT3, FT5. iTeach recovers missed instances and cleans up over-segmentation across tabletops, shelves, sofas, stairs and floor-level scenes.


๐Ÿฆพ Manipulation follows

Success / 100 (SceneReplica) Prior best (MSMFormer) iTeach-UOIS Gain
๐Ÿฆพ Grasping 71 74 +3
๐Ÿ“ฆ Pick & place 65 72 +7

Real-world pick-and-place with GTO
Only the segmentation stage changes; everything else is held fixed. Swap in iTeach-UOIS and the same real-robot pipeline (SceneReplica: UOIS โ†’ Contact-GraspNet grasps โ†’ GTO motion planning) starts handling clutter and unseen objects the pretrained baseline fails on. How to run โ†’


๐Ÿ‘ฅ Who can teach? ยท 12-participant user study

๐Ÿ‘ฅ Participants โœ๏ธ Annotations ๐ŸŽฏ Mean box IoU ๐Ÿง  NASA-TLX
12
6 expert ยท 6 non-expert
240
12 people ร— 20 objects
94.9%
SD 0.49 ยท gaze + voice prompts
21 / 100
low task load

Each participant ran one full teaching interaction unassisted: spot the failure in the headset, perform HumanPlay, then label the final frame with gaze and voice. Expertise made no difference on any measure.




๐Ÿงฉ Code

The current iTeach system is split into three repositories, one per module. Follow them in this order:


Step Repository What it does
1 ๐Ÿฅฝ iTeachSkillsApp HoloLens 2 app + ROS bridge. Watch live predictions, record a HumanPlay clip, place point prompts with gaze + voice, get SAM2 boxes.
2 ๐Ÿง  iTeach-UOIS Propagate SAM2 masks backwards through the clip, fine-tune MSMFormer, evaluate on iTeach-HumanPlay, and run MSMFormer as a live ROS node.
3 ๐Ÿฆพ SceneReplica (external) Grasping and pick-and-place: iTeach-UOIS segmentation โ†’ Contact-GraspNet โ†’ GTO. How to run โ†’
๐Ÿ”ง ๐Ÿ“ iTeach (this repo) ยท src/hololens_utils Still used by the current system: HoloDevicePortal.py uploads ROSConnectionConfig.json to the HoloLens, plus the hl2ss streaming helpers. The network setup is documented in iTeachSkillsApp.

Caution

Vital HoloLens step: before each new setup, upload ROSConnectionConfig.json (with RosIPAddress set to your robot) to the HoloLens LocalAppData โ†’ iTechDemo_โ€ฆ โ†’ LocalState folder through the Windows Device Portal web tool. Otherwise the app cannot reach ROS. Step-by-step guide โ†’

Tip

Setting up the whole system? Start with the system diagram and five-terminal setup in iTeachSkillsApp. It covers the ROS topics, the voice commands, and how to point the HoloLens at your robot with ROSConnectionConfig.json.


๐Ÿ“ฆ Data & Checkpoints

All hosted on UTD Box.

D5 ยท 5 controlled scenes D40 ยท 40 scenes Test ยท 902 samples
iTeach-HumanPlay dataset Download Download Download
Fine-tuned MSMFormer Download Download โ€“

๐Ÿ› ๏ธ Hardware

Deployment setup: Fetch robot with an RTX 4090 laptop and a human wearing a HoloLens 2
Everything the system needs is in this frame: a Fetch carrying an RGB-D camera and an RTX 4090 laptop that runs inference, SAM2 and fine-tuning onboard, and a human wearing a HoloLens 2 for the live overlay and gaze + voice annotation.


๐Ÿค– Robot Fetch mobile manipulator with a head RGB-D camera
๐Ÿ’ป Compute Laptop with an RTX 4090 for onboard inference and fine-tuning
๐Ÿฅฝ Mixed reality Microsoft HoloLens 2
๐ŸŽฎ Teleoperation PS4 controller
๐ŸŒ Network Wired Ethernet + Wi-Fi hotspot

๐Ÿ—’๏ธ Lab setup reference โ€” the exact working configuration (environment exports, ROS and network config, and a software-in-the-loop test harness that replays a recorded scene) is archived in docs/handoff/. Addresses there are placeholders; substitute your own.




๐Ÿ—„๏ธ Legacy (archived): iTeach v1 ยท Door & Handle Detection

Warning

Archived. No longer maintained. Everything below, and the src/ (except src/hololens_utils/, which the current system still uses), toolkit/, dataloader/, hololens_app/ and hf_demo/ folders, covers the earlier version of iTeach. That version is a Mixed Reality labelling loop for door and handle detection with a YOLOv5-based model (DH-YOLO), the IRVLUTD DoorHandle dataset and the iTeachLabeller HoloLens app. It is kept only for reference and reproducibility. For the current system, see Code.


iTeach v1 overview
iTeach v1: Mixed Reality labelling loop for door and handle detection.


๐Ÿš€ Getting started in 3 steps

1 ยท Install the iTeachLabeller app on the HoloLens 2 ย ย ๐Ÿ“ฑ Build it from hololens_app/ ย ยทย  ๐Ÿ› ๏ธ Install video

2 ยท Set up the laptop and robot ย ย ๐Ÿ“š Follow src/README.md

3 ยท Teach ย ย ๐Ÿค– Drive the robot, collect failure samples, label them and fine-tune. ย ยทย  ๐ŸŽฌ Real-world demo


๐ŸŽฆ A walkthrough of the hardware, network and scripts is in this video. Detailed steps are in its description.


๐Ÿ“ Directory structure

Each directory has its own README.

Folder Contents
๐Ÿงช src/ Main experiment files
๐Ÿ› ๏ธ toolkit/ iTeach toolkit (DH-YOLO inference)
๐Ÿ“ฑ hololens_app/ iTeachLabeller HoloLens app source
๐Ÿ—ƒ๏ธ dataloader/ PyTorch dataloader for the IRVLUTD DoorHandle dataset
๐Ÿค— hf_demo/ DH-YOLO Hugging Face space (git submodule: git submodule update --init hf_demo, needs git-lfs)

๐Ÿ“ฆ Publishing toolkit / dataloader to PyPI

Run these with each new build:

rm -rf build/ dist/               # also remove the corresponding .egg-info directory
python setup.py sdist bdist_wheel # bump the version in setup.py first
twine upload dist/*               # needs your PyPI token



๐Ÿ“œ License

Released under the MIT License, ยฉ 2024-2026 Intelligent Robotics and Vision Lab (IRVL), The University of Texas at Dallas.

Third-party code keeps its own license: the YOLOv5 code under src/iTeach/yolov5/ (and the YOLOv5-derived DH-YOLO code) is AGPL-3.0.


๐Ÿ“š Citation

If iTeach helps your research, please cite:

@misc{padalunkal2024iteach,
      title={iTeach: In the Wild Interactive Teaching for Failure-Driven Adaptation of Robot Perception},
      author={Jishnu Jaykumar P and Cole Salvato and Vinaya Bomnale and Jikai Wang and Ayush Bhardwaj and Jin-Ryong Kim and Yu Xiang},
      year={2026},
      eprint={2410.09072},
      archivePrefix={arXiv},
      primaryClass={cs.RO},
      url={https://arxiv.org/abs/2410.09072},
}

๐Ÿ“ฌ Contact

๐Ÿ’ฌ Questions & ideas Discussion forum
๐Ÿ› ๏ธ Bugs Open an issue
๐Ÿ“ง Direct Jishnu

๐Ÿ™ Acknowledgements

This work was supported by the DARPA Perceptually-enabled Task Guidance (PTG) Program under contract number HR00112220005, the Sony Research Award Program, and the National Science Foundation (NSF) under Grant No. 2346528. We thank Sai Haneesh Allu for his assistance with the real-world experiments.


Built at the Intelligent Robotics and Vision Lab, The University of Texas at Dallas

About

iTeach: In the Wild Interactive Teaching for Failure-Driven Adaptation of Robot Perception ๐Ÿค–๐ŸŒ

Topics

Resources

Stars

6 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages