velodyne | ROS support for Velodyne 3D LIDARs | Robotics library
kandi X-RAY | velodyne Summary
kandi X-RAY | velodyne Summary
Velodyne1 is a collection of ROS2 packages supporting Velodyne high definition 3D LIDARs3. The current master branch works with ROS Kinetic and Melodic. CI builds are currently run for Kinetic and Melodic.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of velodyne
velodyne Key Features
velodyne Examples and Code Snippets
Community Discussions
Trending Discussions on velodyne
QUESTION
Velodyne lidars publish PointCloud2 messages with the fields containing :
- x, type : float32
- y, type : float32
- z, type : float32
- intensity, type : float32
- ring, type : uint16
- time, type : float32
However, I need to add distance field(output points with distance) because I needed this field as a research purpose.
Is it possible to write a node or adapt the velodyne driver to output points with that field? If so, could you possibly tell me how to achieve that?
Any help is much appreciated. Thanks:)
...ANSWER
Answered 2021-Sep-24 at 17:16The best solution is not to change the velodyne driver, but since you're using ros, to leverage all the ecosystem tools built in. For example, the velodyne publishes a sensor_msgs/PointCloud2 topic. Then internally, using C++, ROS treats any PointCloud2 msg into any PCL pointcloud type. If you're doing serious processing of pointclouds, don't re-invent the wheel (but worse), try solving the problem with tools from PCL. Use it's pre-built filters (ex ground plane filter) and prebuilt segmentation tools (ex could Euclidean Cluster Extraction solve your problem?). Additionally, some of these PCL tools are pre-wrapped in ros, to use from the launch file if you want!
Otherwise you could use PCL to add a distance parameter, by choosing the pointcloud type in ros as of type pcl::PointWithRange
or pcl::PointWithViewpoint
. I don't think it'll autocompute that variable, but you can iterate through the points and compute it yourself, and the memory for it will already be allocated and localized.
QUESTION
ndt_matching succeeded in autoware, but the vehicle model cannot be set correctly.
- How do I set the correct angle for the vehicle model?
- What does the frame "mobility" mean?
tf.launch
...ANSWER
Answered 2021-Jul-21 at 03:30The settings in the TF file were correct. To change the angle of the vehicle model, I made the following settings.
- Change the yaw setting of
Baselink to Localizer
in theSetup
tab (in the direction you want the vehicle model to point). - Set the yaw setting of
ndt_matching
to offset it.(if baselink angle(1) is -1.55, here it is +1.55)
I wrote an article about these issues, Thank you JWCS!
https://medium.com/yodayoda/localization-with-autoware-3e745f1dfe5d
QUESTION
RVIZ is telling me that there is "No transfrom from [velodyne] to [base_link]". I have a joint between these two objects defined in my URDF file:
...ANSWER
Answered 2021-Jun-02 at 21:09You will need to launch a robot_state_publisher
node that publishes the tf
transforms between your different links in any case - even if your links are connected with fixed joints only. Therefore either add
QUESTION
I've created a Oriented Bounding Box from a clustered sub point cloud of a Velodyne Lidar (rotating laser sensor). I want to get the orientation of the Bounding Box (preferable as a quaternion).
...ANSWER
Answered 2021-Mar-21 at 20:50Looking at the link you shared, I see the OBB object has the following properties: center, extent and R. If you can access them then you can get position and orientation. Center is a point (x,y,z), extent are three lengths in x, y and z direction and R is a rotation matrix. Columns of R are three orthogonal unit-vectors pointing on rotated x, y and z directions.
I think you are interested in orientation, so R is the orientation matrix. You can convert it to quaternion using the matrix-to-quaternion method on this page: https://www.euclideanspace.com/maths/geometry/rotations/conversions/matrixToQuaternion/
QUESTION
I'm trying to read .bin point cloud files. I found this link suggesting a python code that I can convert to C++. I came up with the following code, but the precision of the floating point numbers are different compared to the results that I got from running the python code in the above link. I noticed that some coordinate values in the middle are totally missing, or in other words, the count of the floating point values that resulted from python is more than that of the C++ code:
...ANSWER
Answered 2021-Jan-05 at 00:13Here's a code that produces exactly the same output as the Python version:
QUESTION
This is probably easy but I am a noob in networks so please help! Basically I am trying to display lidar points from my Velodyne VLP-16 on ROS installed on Ubuntu 18.04 which is in turn installed via Parallels Desktop on my macOS.
So I plugged the velodyne's ethernet cable to my MacBook via a usb-C-to-ethernet adapter and set this on my mac:
I can type in my browser this address 192.168.1.201
and I can see the velodyne interface. So it works.
When I now go to "Ubuntu on Mac" via Parallels Desktop and do not change anything in Network->Settings->Wired->Connected so I can see these settings:
... I can still see the velodyne interface via a browser on Ubuntu by typing the 192.168.1.201
address as I can on macOS.
The only problem is that when I wanna run
ANSWER
Answered 2020-Jun-23 at 20:51After a thorough examination of the network traffic both on macOS and on the emulated Ubuntu using Wireshark on both ends, I realised that there is no Network adapter present in the virtual machine configuration.
Following the answer from Desktop Parallel support, I did: Ubuntu on Mac -> configure -> hardware -> add device -> network 2 -> source: USB...
and when you check now in Wireshark, you will see the traffic coming from the USB adapter and the ROS driver, via an adequate port, will capture the packets.
QUESTION
When I build PCL library on Jetson TX2 from source via CMAKE, I get the following debug logs among other msgs:
...ANSWER
Answered 2020-Feb-03 at 06:11I found a file which was causing the CMAKE to include 10 sm_arch in compatibility list. Here's the link. I will re-compile after editing the file for just 1 sm_arch and compare the size of binaries generated. – Anuj Patil Jan 22 at 18:10
So findCUDA was the culprit here. Editing the files to required sm_arch does the trick!
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install velodyne
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page