Quantcast
Channel: ROS Answers: Open Source Q&A Forum - RSS feed
Viewing all 475 articles
Browse latest View live

lz4.h compilation problems

$
0
0
Hello all, It looks as if there are some problems with two different lz4.h files. I'm using gsl 2.4 and pcl 1.8. I'm also running ros on gentoo: In file included from /opt/ros/kinetic/include/roslz4/lz4s.h:38:0, from /opt/ros/kinetic/include/rosbag/stream.h:46, from /opt/ros/kinetic/include/rosbag/chunked_file.h:46, from /opt/ros/kinetic/include/rosbag/bag.h:41, from /home/malcolm/ros_catkin_ws/kinetic_src/src/perception_oru-private/ndt_offline/include/ndt_offline/PoseInterpolationNavMsgsOdo.h:6, from /home/malcolm/ros_catkin_ws/kinetic_src/src/perception_oru-private/ndt_calibration/include/ndt_calibration/ndt_calib.h:14, from /home/malcolm/ros_catkin_ws/kinetic_src/src/perception_oru-private/ndt_calibration/src/ndt_calib.cpp:1: /usr/include/lz4.h:234:28: error: conflicting declaration ‘typedef union LZ4_stream_u LZ4_stream_t’ typedef union LZ4_stream_u LZ4_stream_t; /* incomplete type (defined later) */ ^ In file included from /usr/include/flann/util/serialization.h:9:0, from /usr/include/flann/util/matrix.h:35, from /usr/include/flann/flann.hpp:41, from /usr/include/pcl-1.8/pcl/kdtree/flann.h:50, from /usr/include/pcl-1.8/pcl/kdtree/kdtree_flann.h:45, from /home/malcolm/ros_catkin_ws/kinetic_src/src/perception_oru-private/ndt_calibration/include/ndt_calibration/ndt_calib.h:9, from /home/malcolm/ros_catkin_ws/kinetic_src/src/perception_oru-private/ndt_calibration/src/ndt_calib.cpp:1: /usr/include/flann/ext/lz4.h:196:57: note: previous declaration as ‘typedef struct LZ4_stream_t LZ4_stream_t’ typedef struct { long long table[LZ4_STREAMSIZE_U64]; } LZ4_stream_t; Not sure what to do with this :)

rosbag pause Marker disappears

$
0
0
Hello, We have a node that publishes a set of markers. Those markers are part of sensor detections. So they can appear or disappear while the node is running, which is normal. Now after doing a recording, we would like to pause the bag. When rosbag is on pause, all markers disappear. Programmatically all markers have a `lifetime`, such that they can be automatically removed. Is this the reason why markers also removed while on pause? If yes, how is the right approach to solve this issue? Do I need to remove markers manually and not rely on `lifetime`? Thanks!

start and kill rosbag record from bash shell script

$
0
0
Let's say we want to record a rosbag, and run a python script from a bash script. rosbag record -o /file/name /topic PID=$! sleep 2 python ./run_ROS_script.py kill -INT $PID so if you leave out -INT it kills the rosbag, but not nicely: it leaves the rosbag in .active status. If you add -INT (same thing as running ctrl+c on the rosbag process) then the rosbag never finishes, and doesn't leave .active status. So ... what gives? Why can't we nicely kill this rosbag record?

How to display bag file in rviz

$
0
0
Hi all, I am new on ROS and Linux. I am trying to display point cloud using rviz with VLP-16. Before starting to see real time data, I wanted to see how pcap file can be converted into human-readable, and visible data. So I used pcap file (downloaded from www.velodynelidar.com) to convert to bag file as follows: $ rosrun velodyne_driver velodyne_node _mol:=VLP16 _pcap:=/home/soowon/Documents/County_Fair.pcap _read_once:=true On new terminal, to record pcap data into bag file: $ rosrun rosbag record -O Countyfair.bag /velodyne_packets ON new terminal, I used rosbag to play bag file that I just made: $ rosbag play Countyfair.bag Another new terminal, to open rviz: $ rosrun rviz rviz Problem starts from here. 1. I cannot see anything on the screen, even though I added PointCloud, PointCloud2. In rviz, it says "No tf data. Actual error: Fixed Frame [map] does not exist." 2. Not only that I want to see point cloud in rviz, my ultimate goal is acquiring xyz coordinates for each frame. Can you guys tell me where can I find this data? Any advice? I would appreciate :)

rosbag doesn't playback at same speed

$
0
0
Hi, I have recorded a rosbag w topics at ~7 Hz. When I use `rosbag play` on those topics, they playback at 2Hz. The `rosbag info` too shows a total time of say 10 secs for instance but on playing it, it goes on for much more than 10 seconds. Any tools you would recommend for me to debug without having to go through the code? Thank you

rosbag record error

$
0
0
I am getting the following error when trying to record a bag file about image transport. I thought if the system could send a msg using ros then it should be able to record it and play ? [ INFO] [1511280765.822614770, 1341848150.120971094]: Subscribing to /flame/manager/bond [ INFO] [1511280765.824873532, 1341848150.120971094]: Subscribing to /flame/idepth_registered/image_rect/compressedDepth/parameter_updates [ INFO] [1511280765.827001685, 1341848150.120971094]: Subscribing to /flame/depth_registered/image_rect [ INFO] [1511280765.829221068, 1341848150.120971094]: Subscribing to /flame/debug/wireframe/theora/parameter_descriptions [ INFO] [1511280765.831393080, 1341848150.125999109]: Subscribing to /flame/idepth_registered/image_rect/theora/parameter_descriptions [ INFO] [1511280765.833637242, 1341848150.125999109]: Subscribing to /flame/debug/wireframe/theora [ INFO] [1511280765.836285744, 1341848150.125999109]: Subscribing to /flame/idepth_registered/image_rect/compressedDepth [ INFO] [1511280765.838769213, 1341848150.125999109]: Subscribing to /flame/depth_registered/image_rect/theora/parameter_descriptions [ERROR] [1511280765.870219731, 1341848150.146124729]: Lookup would require extrapolation into the past. Requested time 1341848149.738777917 but the earliest data is at time 1341848149.770782628, when looking up transform from frame [openni_rgb_optical_frame] to frame [world] [ERROR] [1511280767.902958519, 1341848151.159780581]: Compressed Depth Image Transport - Compression requires single-channel 32bit-floating point or 16bit raw depth images (input format is: bgr8). [ERROR] [1511280767.885934564, 1341848151.149720892]: Compressed Image Transport - JPEG compression requires 8/16-bit color format (input format is: 32FC1) [ERROR] [1511280767.887200374, 1341848151.149720892]: cv_bridge exception: '[32FC1] is not a color format. but [bgr8] is. The conversion does not make sense' [ERROR] [1511280767.897593405, 1341848151.159780581]: Compressed Image Transport - JPEG compression requires 8/16-bit color format (input format is: 32FC1) [ERROR] [1511280767.898571188, 1341848151.159780581]: cv_bridge exception: '[32FC1] is not a color format. but [bgr8] is. The conversion does not make sense'

rosbag record never finalized

$
0
0
Hi all, i am new with ROS and I had the exiting challenge to build a lidar point cloud with a velodyne vlp-16. I record my pacp file with tshark and now im in the ROS part. With a lot of help in this forum i achieve starting roscore and also reading the pcap file with the velodyne driver. My target is to get a .LAS file. After a couple of sample i figure that i had to convert my pcap to bag file in the process. If at this point i'm not on the good way plz let me know :) After many try i finaly got the **recording** with this: rosrun rosbag record /velodyne_packets -O /media/lidar/math/test13.bag [ INFO] [1512235521.473606088]: Subscribing to /velodyne_packets [ INFO] [1512235521.542149460]: Recording to /media/lidar/math/test13.bag. The problem is... it never ending. I can't figure what to do. Any help is welcome, thank you

ROS Bag File Point Cloud

$
0
0
Is their a way to open a .bag file in a application such as cloud compare, or mesh lab? I am using a Kinect camera for mapping and I want to be able to view the 3d point cloud map created. Thank you for your help. P.S sorry for bad english. Also, how do I capture one frame of a ros bag. I just one to store one frame of a point cloud scene from rviz.

How does the rosbag pause work?

$
0
0
I am using ROS Kinetic Kame and written a small patch of code, in which I have subscribed to certain topics and have corresponding message handler (callbak method). I am using some Bag files with the ROSBAG tool. I am also aware that message handlers are take care by ROS's internal thread. When I start playing the Bag files, the message handler is called for appropriate number of times, for eg. at a rate of 1Hz. When I say 'Pause' the Bag playback, the message handler is not called which is fine as there are no topics published. But when I say 'Play' again, the message handler is called massive number of times, for eg. with a rate of 1x20 or 1x30Hz. Can anyone have any idea why such behavior ? Thanks a lot.

Alternatives to Bag Database

$
0
0
Hello! Are there any alternatives or similiar services as the [ROS Bag Database](https://github.com/swri-robotics/bag-database)? Thanks! **Edit based on community answers:** - [Bag Database](https://github.com/swri-robotics/bag-database) - Marv Robotics, by [Ternaris](https://ternaris.com/marv-robotics/) (also [presented at ROSCon16](http://roscon.ros.org/2016/presentations/MARVRoboticsPangercic.pdf) ([video](https://vimeo.com/187705380))) - [BotBags: Announcing BotBags, the cloud rosbag storage service](https://discourse.ros.org/t/announcing-botbags-the-cloud-rosbag-storage-service/916)

reading VelodyneScan from bagfile - offline

$
0
0
I am trying to read a bagfile containing multiple velodyne data. I want to do this preferably without rosbag play as sometimes from my prev experience due to computation issues it may skip reading a node and lose than info. so now, I have a rosbag file, containing VelodyneScan msgs from a v64 topic I am using python2. from past few hours googling and figuring out on my own, i understand that it contains a main header and then subheader and data in perhaps uint32 format. Lets say i read a message - msg for topic, msg, t in bag.read_messages() msg.header is: seq: 6309 stamp: secs: 1513822001 nsecs: 291831017 frame_id: velodyne msg.packets is a list len = 579 type( msg.packets[0]) = < class 'tmpbWvooI._velodyne_msgs__VelodynePacket'> Thus there are 579 such packets. One way i could read the data is to go through one by one and append a np.arr with the data i am reading. Even if i do that, how do i get X Y Z data from it? will it always be X1 Y1 Z1 X2 Y2 Z2 and so on? my first packet doesnt even have 3x numbers.. but that could be because it saved the remaining in following packets. But there should be a prebuild method to do this right? How can I read the data from a VelodyneScan in python (using ros and cv2) WITHOUT using rosbag play to listen to a different node.

How to get the data from a rosbag(especially when there is images in the bag)

$
0
0
I am working on VI-slam these days, I have to extract data (ground truth) from the bag. There are other data like images in the bag. How can I do that?

Export topic from bag at different rate

$
0
0
Hi to all, i have recorded several bag files which contain different topics recorded at different rates. For example: topics: /sensor/FilterStatus 11514 msgs : diagnostic_msgs/DiagnosticStatus /sensor/Imu 11497 msgs : sensor_msgs/Imu /sensor/NavSatFix 11514 msgs : sensor_msgs/NavSatFix /sensor/SystemStatus 11498 msgs : diagnostic_msgs/DiagnosticStatus /sensor/Twist 11514 msgs : geometry_msgs/Twist /robodyne/enc 718 msgs : std_msgs/String /robodyne/io 719 msgs : std_msgs/String /robodyne/sys 719 msgs : std_msgs/String /robodyne/velocity 719 msgs : std_msgs/String /rosout 9 msgs : rosgraph_msgs/Log As you can see, messages related to `sensor` are sampled at a very higher rate than the `robodyne` messages. I need to have all the topics with the same amount of messages and so I would like to find a way to filter the `sensor` messages and extract only 10 samples per second. Can you suggest me a solution, please?

Ros eats up RAM while recording rosbag remotely

$
0
0
I am running my ros application on a robot (arm) with limited RAM (1 GB). I configured my robot as the rosmaster. The rosbag recording was happening on my local linux machine whoser Ros master was the robot. Whenever I start my rosbag record, I can see that the available RAM space on my arm board shoots down eventually causing a bad alloc error. I do not understand why invoking a subscriber (rosbag) on my local computer would consume RAM on the robot. Any thoughts or pointers would be much appreciated. This is a cross compiled ros kinetic version on QNX running within a realtime loop. The data to be sent over to the ros are written to a lock free ring buffer from which ros publisher running on a separate thread reads and publishes.

Problem getting map using hector_slam!!!!!!!!!!!!!!!!!!!!!!!!

$
0
0
'Hello all, I am using Xbox360, Ros Kinetic, Ubuntu 16.04LTS I am new to ROS. I want to map an unknown enviroment using kinect. For this I am using freenect and gmapping. I have done these steps: 1. roslaunch freenect_launch freenect.launch 2. rosrun pointcloud_to_laserscan pointcloud_to_laserscan_node cloud_in:=/camera/depth/points 3. rosbag record -O mybag /scan /tf 4. rostopic echo /scan /////////i can see scan data is available here 5. rqt_graph /////////I can see that /camera/base_link --->>tf_static--->>/camera/camera_nodelet_manager--->>/camera/depth_points--->>/pointcloud_to_laserscan_node--->>/rosrecord 12467890987654(some no.) [not enough points to add image] This is all great. But the problem is getting data from the bag file 1. roscore 2. rosparam set use_sim_time true 3. roslaunch hector_slam_launch tutorial.launch scan:=/base_scan 4. rosbag play --clock mybag.bag I can't see any error in RViz. But I can't see the map either. The terminal where I launch hector_slam shows the error that ******Lookuptransform Data _______cannot publish transform...............or something like........... no connection between base_frame.****** can anyone help me with this please do post a comment if any other specifications required. Thank you in advance.....

How to see rosparam on terminal screen?

$
0
0
I have recorded all data in rosbag. When I play it using command `rosbag play `, I want to see ros_parameters of amcl. When I type `rosparam list`, it does not list any amcl related parameters. In fact it list only following parameters 1. /rosdistro 2. /roslaunch/uris/host_ubuntu 3 /rosversion 4 /run_id I want to get set and see amcl parameters. How to do it?

Possible to live the data from rosbag

$
0
0
I want to live the data from rosbag and display on graph with respect to time. I googled it ,but not get any solution. I know reading data and writting data into rosbag . I want to display graph when rosbag play command was executed.

High rates of corrupt bags with rosbag python api?

$
0
0
I have a python action server where the callback creates a `rosbag.Bag` and then callback subscribing to various messages then write to that bag, and when the action is over the bag is closed and the callbacks then return without attempting to write. It appears that about 30%-50% of the bags that come out of this say they need to be reindexed, and then after `rosbag reindex` a huge amount of the messages are lost- what ought to be hundreds of messages are now 10s or even zero- sometimes the reindexed bag is the same size as orig, other times smaller.

How do you split a rosbag into several files without calling rosbag filter multiple times?

$
0
0
I want to split a 100-GB rosbag into 100 1-GB bags. I tried using rosbag filter but it takes a long time as I have to run each filter manually and each time, it performs a scan of the full bag. Is there a better way to perform this split (either through command line or Python script)? I've tried writing a Python script that reads through the rosbag message-by-message and writes each to a new bag (i.e. first GB of messages goes in bag 1, 2nd GB goes in bag 2, etc.). However, when I try to run the outputted bags, I get a "Expected CONNECTION op not found" error. What's the cause of this? For reference, the python script is as follows: import rosbag num_msgs_per_bag = 1400 inputBag = 'Jan28.bag' total_num_msgs_in_bag = rosbag.Bag(inputBag).get_message_count() print (total_num_msgs_in_bag) num_output_bags = total_num_msgs_in_bag / num_msgs_per_bag bagCount = 1 msgCount = 0 outbag = rosbag.Bag('Jan28-'+str(bagCount)+'.bag', 'w') for topic, msg, t in rosbag.Bag(inputBag).read_messages(): outbag.write(topic, msg, t) print (msgCount) msgCount = msgCount + 1 if msgCount % num_msgs_per_bag == 0: bagCount = bagCount + 1 print ('******NEW BAG*******') outbag = rosbag.Bag('Jan28-'+str(bagCount)+'.bag', 'w')

rosbag record high data rates

$
0
0
I have a i7 system with a RAID 0 of 8 SSDs with a write performance of about 1.4 GB/s (measured). Now I am trying to record a topic with raw data with about 400 MB/s (45Hz, message size of 9.3MB). Rosbag skips many frames and does not manage to record this. When increasing the buffer size to unlimited using "-b 0", the ram usage raises until 100% and then rosbag crashes. Nmon shows that the disk is not at its limit and the cpu usage of all cores is about 50%. Can anyone help me what is happening there? Maybe it would help using nodelets here but rosbag does not support that, right? Could transport hints help here, e.g. switching to udp or tcp_no_delay?
Viewing all 475 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>