hello-robot / stretch_web_teleop

Remote web teleoperation for the Stretch mobile manipulators from Hello Robot Inc.
Other
12 stars 0 forks source link

Checking `Predictive Display`should uncheck `FollowGripper`, and vice versa #46

Open hello-amal opened 3 months ago

hello-amal commented 3 months ago

Description

In Predictive Display, the "straight" always seems to be rendered towards the top of the screen. This is only accurate when the head camera is looking at the base. For example, see the below images. In the first one predictive display works because it is looking at the base, but in the second, the head camera is following the gripper, and hence predictive display doesn't work.

Screenshot 2024-05-21 at 5 21 13 PM (2) Screenshot 2024-05-21 at 5 21 22 PM (2)

Options for addressing it

  1. [Preferred] When the user checks predictive display, the head camera should automatically look at base.
  2. The predictive display checkbox should be disabled if the head camera is not looking at the base. (Non-ideal because it may be unclear for the user why it is disabled.)
  3. Update predictive display to work regardless of where the head camera is facing. This is the most sustainable solution, but would require considerable camera projection / matrix multiplication. Plus, if the camera is not looking at the base at all, predictive display would effectively be disabled.
hello-amal commented 3 months ago

Addendum to Option 1 based on a discussion with @hello-vinitha : When the user checks predictive display, it does rotate the head camera to the base, except follow gripper overrides it. So perhaps the quick bugfix is to also have it automatially un-check "Follow gripper"