image frame 1597916218194532871 dropped due to queue overflow
zainmehdi opened this issue · 31 comments
Hi,
I had a successful run for basalt ros with recorded bag file but when I try to run it online via direct feed from T265 I am getting the above mentioned error. Is there any remedy to this problem. My gyro data comes at 200 Hz , accel data at 62 Hz and images at 30 Hz.
Thanks
Errors << basalt_ros1:cmake /home/chao/workspace/basalt_ros_1/logs/basalt_ros1/build.cmake.001.log
CMake Error at /opt/ros/melodic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
Could not find a package configuration file provided by "basalt" with any
of the following names:
basaltConfig.cmake
basalt-config.cmake
Add the installation prefix of "basalt" to CMAKE_PREFIX_PATH or set
"basalt_DIR" to a directory containing one of the above files. If "basalt"
provides a separate development package or SDK, be sure it has been
installed.
Call Stack (most recent call first):
CMakeLists.txt:26 (find_package)
cd /home/chao/workspace/basalt_ros_1/build/basalt_ros1; catkin build --get-env basalt_ros1 | catkin env -si /usr/bin/cmake /home/chao/workspace/basalt_ros_1/src/basalt_ros1 --no-warn-unused-cli -DCATKIN_DEVEL_PREFIX=/home/chao/workspace/basalt_ros_1/devel/.private/basalt_ros1 -DCMAKE_INSTALL_PREFIX=/home/chao/workspace/basalt_ros_1/install -DCMAKE_BUILD_TYPE=Release; cd -
...............................................................................
Failed << basalt_ros1:cmake [ Exited with code 1 ]
Failed <<< basalt_ros1 [ 0.6 seconds ]
when I build basalt, there are no such two file generated. What should I do? should change the CMakeList.txt file in basalt?
@Sandeldeng you have to use instructions mentioned here
https://github.com/berndpfrommer/basalt_ros
I also had the same issue and after following instructions mentioned there it compiled fine,
@zainmehdi Thanks,I have solved it, and the last commod should use the sudo.
@zainmehdi I can't have anything.
chao@chao-lp:~/workspace/basalt_ros$ roslaunch basalt_ros1 vio_t265.launch
... logging to /home/chao/.ros/log/5d527d10-e375-11ea-8a13-9822efdd45f7/roslaunch-chao-lp-18392.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://chao-lp:46335/
SUMMARY
CLEAR PARAMETERS
- /vio_node/
PARAMETERS
- /rosdistro: melodic
- /rosversion: 1.14.6
- /vio_node/calibration_file: /home/chao/worksp...
- /vio_node/imu_topics: ['gyro', 'accel']
- /vio_node/odom_frame_id: basalt_pose_frame
- /vio_node/world_frame_id: world
NODES
/
basalt_to_t265_tf_broadcaster (tf/static_transform_publisher)
vio_node (basalt_ros1/vio_node)
auto-starting new master
process[master]: started with pid [18402]
ROS_MASTER_URI=http://localhost:11311
setting /run_id to 5d527d10-e375-11ea-8a13-9822efdd45f7
process[rosout-1]: started with pid [18413]
started core service [/rosout]
process[vio_node-2]: started with pid [18417]
process[basalt_to_t265_tf_broadcaster-3]: started with pid [18422]
[ INFO] [1597990381.292722442]: loaded calibration file with 2 cameras
marg_H
1e+08 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1e+08 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 1e+08 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 1e+08 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 10 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 10 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 10 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 100 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 100 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 100
[ INFO] [1597990381.298089176]: imu subscribing to topics: gyro, accel
[ INFO] [1597990381.300230939]: backend started!
Did you run your t265 node ? you have to publish video and IMU streams from t265. If you have installed realsense_ros then use rs_t265.launch
@zainmehdi
Yes, but noting else output
Can you print out your topics and rqt graph ?
chao@chao-lp:~/workspace/basalt_ros$ rostopic list
/camera/accel/imu_info
/camera/fisheye1/camera_info
/camera/fisheye1/image_raw
/camera/fisheye1/image_raw/compressed
/camera/fisheye1/image_raw/compressed/parameter_descriptions
/camera/fisheye1/image_raw/compressed/parameter_updates
/camera/fisheye1/image_raw/compressedDepth
/camera/fisheye1/image_raw/compressedDepth/parameter_descriptions
/camera/fisheye1/image_raw/compressedDepth/parameter_updates
/camera/fisheye1/image_raw/theora
/camera/fisheye1/image_raw/theora/parameter_descriptions
/camera/fisheye1/image_raw/theora/parameter_updates
/camera/fisheye2/camera_info
/camera/fisheye2/image_raw
/camera/fisheye2/image_raw/compressed
/camera/fisheye2/image_raw/compressed/parameter_descriptions
/camera/fisheye2/image_raw/compressed/parameter_updates
/camera/fisheye2/image_raw/compressedDepth
/camera/fisheye2/image_raw/compressedDepth/parameter_descriptions
/camera/fisheye2/image_raw/compressedDepth/parameter_updates
/camera/fisheye2/image_raw/theora
/camera/fisheye2/image_raw/theora/parameter_descriptions
/camera/fisheye2/image_raw/theora/parameter_updates
/camera/gyro/imu_info
/camera/imu
/camera/odom/sample
/camera/realsense2_camera_manager/bond
/camera/tracking_module/parameter_descriptions
/camera/tracking_module/parameter_updates
/clicked_point
/diagnostics
/initialpose
/move_base_simple/goal
/rosout
/rosout_agg
/tf
Update: Please try this one. I can confirm its working on my pc
rs_t265.zip
@zainmehdi
Thank you, but It does not work. Have you do any chang in basalt_ros launch file? when i "catkin build" in basalt_ros , it have an error, so I used the sudo. I dont konw whether the problem is incur by sudo.
According to your log your node is up and subscribing there IMU frame dropped happens when you dont use "unite_imu_method:="linear_iterpolation" arg with your launch file. I didnt change anything in basalt end. Only modified t265 launch file
[ INFO] [1598013021.781751615]: received image frame rate: 28.1711
[ INFO] [1598013023.461172457]: received combined IMU frame rate: 191.042
[ INFO] [1598013025.115524938]: received image frame rate: 29.9958
[ INFO] [1598013028.449561377]: received image frame rate: 29.9938
[ INFO] [1598013028.453422370]: received combined IMU frame rate: 200.31
[ INFO] [1598013031.783439878]: received image frame rate: 29.9951
[ INFO] [1598013033.447022068]: received combined IMU frame rate: 200.256
[ INFO] [1598013035.116185589]: received image frame rate: 30.0053
[ INFO] [1598013038.437654986]: received combined IMU frame rate: 200.375
[ INFO] [1598013038.449940406]: received image frame rate: 29.9962
[ INFO] [1598013041.783296906]: received image frame rate: 29.9998
[ INFO] [1598013043.429974153]: received combined IMU frame rate: 200.308
[ INFO] [1598013045.116217069]: received image frame rate: 30.0037
[ INFO] [1598013048.428164992]: received combined IMU frame rate: 200.072
[ INFO] [1598013048.450601668]: received image frame rate: 29.9906
[ INFO] [1598013051.783688467]: received image frame rate: 30.0022
[ INFO] [1598013053.415943395]: received combined IMU frame rate: 200.49
[ INFO] [1598013055.118850476]: received image frame rate: 29.9837
[ INFO] [1598013058.406797587]: received combined IMU frame rate: 200.367
[ INFO] [1598013058.452247703]: received image frame rate: 29.9993
[ INFO] [1598013061.783564992]: received image frame rate: 30.0181
[ INFO] [1598013063.398943716]: received combined IMU frame rate: 200.315
[ INFO] [1598013065.117352660]: received image frame rate: 29.996
[ INFO] [1598013068.391390183]: received combined IMU frame rate: 200.303
Only show received image rate and imu frame rate, but give no pose. Can you give you result in success.
@Sandeldeng It means its running. You can run rviz to visualize poses. In order to visualize trajectory use hector trajectory server and add it as a node in your vio.launch file. CHange the source and target frames in that to world and odom and you should be able to see the trajectory. Unfortunately, I am not at work right now so I dont have that launch file with me.
<node pkg="hector_trajectory_server" type="hector_trajectory_server" name="basalt_trajectory" ns="basalt" >
<param name="/target_frame_name" value="odom" />
<param name="/source_frame_name" value="world" />
<param name="/trajectory_update_rate" value="10.0" />
<param name="/trajectory_publish_rate" value="10.0" />
</node>
Add this to your vio.launch file after installing hector trajectory server.
Then when you open rviz add path and choose the proper topic "basalt_trajectory" in this case.
@zainmehdi
I add it to the vio.launch, and git clone the hector_trajectory_server to my workspace in the basalt_ros and sudo catkin build. after i run roslaunch basalt_ros1 vio.launch. and in the rviz, I can't get the trajectory, The error is Fixed Frame [map] does not exist.
choose "world" in the fixed frame. There is no frame map.
Thank you ! I have solve it, you are a kind friend.
@Sandeldeng if your system is set up you should not need any sudo
@zainmehdi did you find out why you had queue overflow?
@berndpfrommer Actually I couldnt, the memory and cpu usage wasnt that much. I think it had to do with using the synced option in t265 launch file. I will investigate a bit more and update as soon as I can.
@zainmehdi when I use realsense t265 run the system, the system work well. but when I use the mynteye S1040, often failure after few second. the fov of mynteye S1040 is D:146 degree, H:122 degree, V: 76 degree, I have calibrated it with kd4 and ds model. So I want to ask you if the system not suit for the low fov of 76 degree. Thank you.
Yes if the fov is lower it will lose tracking often because of not enough features. You can try to reduce your speed of motion to see if it tracks well.
@zainmehdi oh, thank you for your reply. You are a kind man. Thank you again.
@zainmehdi Have you solved the image queue overflow.
@Sandeldeng It happens sometimes but when I used synced option in the parameters the error goes away. You can try with that.
<arg name="enable_sync" value="true"/>
@zainmehdi yes, but when I use the t265 indoor. I found the left image and right image was not sync when the light not well.
@Sandeldeng thats strange. They should be synchronized. What platform are you using ?
thinkpad e480. and intel NUC. the same config, when I used in the outdoor, the weather is sun, the sync is no problem.
I think it should be opposite. In my case it works really good indoors but outdoor ambient light affects the performance. You can try after turning the sync option off and see how the performance changes. To be honest I never had any sync issues at my end. I also didnt use basalt alot so maybe I didnt test enough to get this issue.
closing this issue since there is no more activity.