loam_velodyne icon indicating copy to clipboard operation
loam_velodyne copied to clipboard

Error transforming odometry 'Odometry' from frame '/camera_init' to frame 'camera_init'

Open mberrey opened this issue 4 years ago • 14 comments

When trying to launch a pcap file or play a bag file, they begin processing on rviz but the error "Error transforming odometry 'Odometry' from frame '/camera_init' to frame 'camera_init'" occurs each tf, causing a skewed tf path and no pointcloud in rviz. Any tips/tricks on how to solve this? I was trying to look at the tf tree and rqt graph to troubleshoot, no luck though. Thanks.

mberrey avatar Jun 11 '20 02:06 mberrey

Could it be because of the broadcaster rate, seen below: frames.pdf

mberrey avatar Jun 11 '20 04:06 mberrey

Hi @mberrey how did you fix that? Thanks.

laurojljunior avatar Oct 06 '20 00:10 laurojljunior

@laurojljunior , yes, I'm in the same boat as you. @mberrey did you find a solution?

MontyTHall avatar Dec 05 '20 22:12 MontyTHall

Hey @MontyTHall. Seems that’s a problem with recent version of RViz. Just change the camera_init frame on rviz from /camera_init to //camera_init. That solved my problem.

laurojljunior avatar Dec 05 '20 23:12 laurojljunior

@laurojljunior great, I can see the odometry path. but I can't seem to see the point cloud. You get a point cloud?

MontyTHall avatar Dec 05 '20 23:12 MontyTHall

@MontyTHall Hi, i got the same problem. Did you find a solution to get the point cloud?

wrotcat avatar Dec 06 '20 16:12 wrotcat

@wrotcat, no I still cannot see the point cloud.

MontyTHall avatar Dec 06 '20 17:12 MontyTHall

@MontyTHall Hey. Maybe you could 'catkin_make' it again, and change /camera_init to //camera_init. I don't know what happened exactly but the point clouds work now.

wrotcat avatar Dec 09 '20 11:12 wrotcat

I was having a problem visualizing the data in RVIZ in a branch my lab uses LeGO-LOAM. On the jack-devel branch you can see how I removed all of the forward slashes from the hard coded tf frames in a commit I made today. Rebuild after making those changes and it worked like a charm.

This may not be the best way to solve the problem, but as I understand it the ROS tf tree is moving away from the forward slash. I hope someone here could provide some more clarity on that or give a better solution to this problem then doing "//camera_init".

JJBUT avatar Dec 13 '20 17:12 JJBUT

@MontyTHall I was in the same situation and by running 'catkin_make -DCMAKE_BUILD_TYPE=Release' solved my case. I forgot the option last time.

yshry avatar Dec 14 '20 16:12 yshry

I tried to change "/camera_init" to "//camera_init" but it doesn't work, with terminal warning "Invalid argument "/camera_init" passed to canTransform argument target_frame in tf2 frame_ids cannot start with a '/' like:" However changing "/camera_init" to "camera_init" can solve this problem.

yqmy0814 avatar May 14 '21 08:05 yqmy0814

I tried to change "/camera_init" to "//camera_init" but it doesn't work, with terminal warning "Invalid argument "/camera_init" passed to canTransform argument target_frame in tf2 frame_ids cannot start with a '/' like:" However changing "/camera_init" to "camera_init" can solve this problem.

Hi yqmy0814, Can you please explain where do I have to go for making this change, in Rviz window only or some config file? I am getting the same error "Invalid argument "/camera_init" passed to canTransform argument target_frame in tf2 frame_ids cannot start with a '/' like:". Please help me out here.

darshank528 avatar May 29 '21 18:05 darshank528

I tried to change "/camera_init" to "//camera_init" but it doesn't work, with terminal warning "Invalid argument "/camera_init" passed to canTransform argument target_frame in tf2 frame_ids cannot start with a '/' like:" However changing "/camera_init" to "camera_init" can solve this problem.

Hi yqmy0814, Can you please explain where do I have to go for making this change, in Rviz window only or some config file? I am getting the same error "Invalid argument "/camera_init" passed to canTransform argument target_frame in tf2 frame_ids cannot start with a '/' like:". Please help me out here.

You will try it. case 1) Change [Global Options] - [Fixed Frame] at the Displays tap of Rviz. Change "camera_init" to "//camera_init". but, when I tried case 1), you must be always tried it. case 2) Change the code. You search "/ into the loam code. you should change the code.(LaserMapping.cpp, LaserOdomertyr.cpp, TransformMaintenance.cpp) ex) LaserMapping.cpp - LaserMapping::LaserMapping(const float& scanPeriod, const size_t& maxIterations)
odomAftMapped.header.frame_id = "/camera_init"; --> odomAftMapped.header.frame_id = "camera_init";

clobot-noah avatar May 31 '21 03:05 clobot-noah

Hey @MontyTHall. Seems that’s a problem with recent version of RViz. Just change the camera_init frame on rviz from /camera_init to //camera_init. That solved my problem.

How to save cameras pose?

ThakurSarveshGit avatar Jan 28 '24 03:01 ThakurSarveshGit