NVIDIA-ISAAC-ROS / NVIDIA-ISAAC-ROS/isaac_ros_visual_slam
load_map_and_localize not work on non-horizontal surfaces
@swapnesh-wani-nvidia is already working on this.
Since Dec 19, 2023.
- Dominant language
- C++
- Stars
- 1.5k
- Forks
- 206
- PR merge metrics
- No merged PRs in 30d
Description
camera: realsense d435i
isaac_ros_visual_slam version: 2.1
jetson orin nx
I set up the camera and looked at the ceiling
base_link to camera_link tf: 0, 0, 0 , 1.57, -0.785, 0 (xyz, rpy)
parameters:
force_planar_mode: False
base_frame: base_link
input_base_frame: base_link
After I run for a while, I saved map. Next, I load_map_and_localize that Input is localize_near_point. I found some issue.
First, the coordinate of localize_near_point is base on camera_link not on base_link. For example, when robot is on (5, 0, 0), I set (5,0,0) is always False , and It's work I must set (3.5, 3.5, 0). It would be more intuitive if base_link could be set.
Second, localize_near_point is not work when camera_link is not horizontal to the initial point. It's work about -2<z<2 and rx,ry<0.1. Other situations are failures. For example, robot was on (0, 5 ,0), so that camera_link was on (0, 0, -5). The localize_near_point was always failure when I set (0, 5, 0) or set (0, 0, -5) or other value.
The other example, I localize_near_point success when my robot was on xyz(0, 0, 0) and rpy(0, 0, 0). Next i spin my robot to xyz(0,0,0) and rpy(0, 0, 1.57)(Camera_link will get some values of rx, ry) . The action localize_near_point is always failure when i use localize_near_point (0,0,0). The reason i think is I cannot specify the initial direction when I set localize_near_point.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.