hridaybavle / semantic_slam

This package is for running the semantic SLAM algorithm using extracted planar surfaces from the received detection
145 stars 32 forks source link

errors at last step #1

Closed ZhengXinyue closed 4 years ago

ZhengXinyue commented 4 years ago

Hi, I have finished all the steps following the instructions and nothing goes wrong. But when I run

roslaunch semantic_SLAM ps_slam_with_snap_pose_bucket_det_lab_data.launch bagfile:=${HOME}/Downloads/entire_lab_3_rounds.bag show_rviz:=true  

I get errors like this and it stucks for a while.

# Using CSparse poseDim -1 landMarkDim -1 blockordering 0
done
keyframe_delta_trans 0.5
keyframe_delta_angle 0.5
keyframe_delta_time 1
use_const_inf_matrix: 1
const_stddev_x: 0.00667
const_stddev_q: 1e-05
Initialized mapping thread 
camera angle in radians: 0.59219
update keyframe every detection: 1
add first landmark: 0
[semantic_graph_slam_node-9] process has died [pid 23067, exit code -11, cmd /home/nrc/workspace/ros/semantic_slam_ws/devel/lib/semantic_SLAM/semantic_graph_SLAM_node __name:=semantic_graph_slam_node __log:=/home/nrc/.ros/log/ccaf4b14-a47a-11ea-b300-000c29c39525/semantic_graph_slam_node-9.log].
log file: /home/nrc/.ros/log/ccaf4b14-a47a-11ea-b300-000c29c39525/semantic_graph_slam_node-9*.log

then I get this. It seems that the visualization program doesn't go right.

[rosbag-2] process has finished cleanly
log file: /home/nrc/.ros/log/ccaf4b14-a47a-11ea-b300-000c29c39525/rosbag-2*.log

Is there something I have missed? Thank you!

hridaybavle commented 4 years ago

Hi @ZhengXinyue,

There was an error in the readme and it was downloading the wrong repo. I have fixed the readme and also the part of the code causing the error. Please just clone and build the repo again following the updated readme and it should work now. Let me know.

ZhengXinyue commented 4 years ago

Hi, I have followed the updated readme and tested the new repo. However, when I use

ps_slam_with_snap_pose_bucket_det_lab_data_with_octomap.launch

it only works for a while and then corrupts. I tried to fix the problem reported but didn't make it. This is the problem: 1591926912(1) It seems that everything goes well except octomap? It only stucks there and doesn't change. I don't know whether it is because 'stereo is not supported'?

Then I use

ps_slam_with_snap_pose_bucket_det_lab_data.launch

It still reports errors: 1591927631(1)

And this is the relevant log file:

rosmaster.master][INFO] 2020-06-12 10:07:15,890: publisherUpdate[/depth_registered/points] -> http://nrc-virtual-machine-gpu:39283/ []: sec=0.00, exception=[Errno 111] Connection refused
[rosmaster.master][INFO] 2020-06-12 10:07:15,890: -PUB [/camera/aligned_depth_to_color/image_rect/theora] /depth_rectifier_manager http://nrc-virtual-machine-gpu:35445/
[rosmaster.master][INFO] 2020-06-12 10:07:15,891: -PUB [/camera/aligned_depth_to_color/image_rect/theora/parameter_descriptions] /depth_rectifier_manager http://nrc-virtual-machine-gpu:35445/
[rosmaster.master][INFO] 2020-06-12 10:07:15,892: -PUB [/camera/aligned_depth_to_color/image_rect/theora/parameter_updates] /depth_rectifier_manager http://nrc-virtual-machine-gpu:35445/
[rosmaster.threadpool][ERROR] 2020-06-12 10:07:15,893: Traceback (most recent call last):
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rosmaster/threadpool.py", line 218, in run
    result = cmd(*args)
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rosmaster/master_api.py", line 210, in publisher_update_task
    ret = xmlrpcapi(api).publisherUpdate('/master', topic, pub_uris)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1243, in __call__
    return self.__send(self.__name, args)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1602, in __request
    verbose=self.__verbose
  File "/usr/lib/python2.7/xmlrpclib.py", line 1283, in request
    return self.single_request(host, handler, request_body, verbose)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1311, in single_request
    self.send_content(h, request_body)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1459, in send_content
    connection.endheaders(request_body)
  File "/usr/lib/python2.7/httplib.py", line 1082, in endheaders
    self._send_output(message_body)
  File "/usr/lib/python2.7/httplib.py", line 909, in _send_output
    self.send(msg)
  File "/usr/lib/python2.7/httplib.py", line 871, in send
    self.connect()
  File "/usr/lib/python2.7/httplib.py", line 848, in connect
    self.timeout, self.source_address)
  File "/usr/lib/python2.7/socket.py", line 575, in create_connection
    raise err
error: [Errno 111] Connection refused

[rosmaster.master][INFO] 2020-06-12 10:07:15,893: publisherUpdate[/depth_manager/bond] -> http://nrc-virtual-machine-gpu:45775/ ['http://nrc-virtual-machine-gpu:33445/']
[rosmaster.master][INFO] 2020-06-12 10:07:15,893: -PUB [/depth_rectifier_manager/bond] /depth_rectifier_manager http://nrc-virtual-machine-gpu:35445/
[rosmaster.master][INFO] 2020-06-12 10:07:15,894: publisherUpdate[/depth_manager/bond] -> http://nrc-virtual-machine-gpu:45775/ ['http://nrc-virtual-machine-gpu:33445/']: sec=0.00, exception=<Fault -1: 'publisherUpdate: unknown method name'>
[rosmaster.master][INFO] 2020-06-12 10:07:15,894: publisherUpdate[/depth_manager/bond] -> http://nrc-virtual-machine-gpu:33445/ ['http://nrc-virtual-machine-gpu:33445/']
[rosmaster.threadpool][ERROR] 2020-06-12 10:07:15,894: Traceback (most recent call last):
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rosmaster/threadpool.py", line 218, in run
    result = cmd(*args)
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rosmaster/master_api.py", line 210, in publisher_update_task
    ret = xmlrpcapi(api).publisherUpdate('/master', topic, pub_uris)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1243, in __call__
    return self.__send(self.__name, args)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1602, in __request
    verbose=self.__verbose
  File "/usr/lib/python2.7/xmlrpclib.py", line 1283, in request
    return self.single_request(host, handler, request_body, verbose)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1316, in single_request
    return self.parse_response(response)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1493, in parse_response
    return u.close()
  File "/usr/lib/python2.7/xmlrpclib.py", line 800, in close
    raise Fault(**self._stack[0])
Fault: <Fault -1: 'publisherUpdate: unknown method name'>

I'm really confused about it and don't know what to do.

Maybe it is just because I run it on a virtual machine. I'm still working on it and trying to figure out what the problem is. Thank you!

hridaybavle commented 4 years ago

Sorry to hear that. Could you enable verbose: true in file bucket_detector_workspace.yaml which is in the folder cfg and tell send me the output. Also which version of ROS are you using? I am unable to reproduce your error at my end.

ZhengXinyue commented 4 years ago

Hi, I have changed the file bucket_detector_workspace.yaml and I'm using ros-kinetic.

#general params
verbose: true
camera_angle: 33.93
update_key_using_det: true
add_first_lan: false

Here is the info: test

Then after a while: test2

It seems that something broken in g2o? I am not sure.

hridaybavle commented 4 years ago

Yes its seems to be a G20 issue, its crazing when it optimizes. I will try and replicate the error at my end if I can and will get back.

hridaybavle commented 4 years ago

Hi,

I have added a docker image of the repo with all the instructions. You can use the docker image for your tests.

ZhengXinyue commented 4 years ago

Hi, I've tests the docker image and everything goes well. Your work is very great, thank you!!! 👍

hridaybavle commented 4 years ago

Great to hear :) So I will close this issue.