http://www.pcl-users.org/PointCloud-Ptr-td3559529.html
https://stackoverflow.com/questions/10644429/create-a-pclpointcloudptr-from-a-pclpointcloud
const pcl::PointCloud<pcl::PointXYZ> cloud(10,10);
const pcl::PointXYZ p(1,1,1);
| def euler_from_quaternion(quaternion): | |
| """ | |
| Converts quaternion (w in last place) to euler roll, pitch, yaw | |
| quaternion = [x, y, z, w] | |
| Bellow should be replaced when porting for ROS 2 Python tf_conversions is done. | |
| """ | |
| x = quaternion.x | |
| y = quaternion.y | |
| z = quaternion.z | |
| w = quaternion.w |
| /* | |
| This is an example of how to use the PCL filtering functions in a real robot situation. | |
| This node will take an input depth cloud, and | |
| - run it through a voxel filter to cut the number of points down (in my case, from ~130,000 down to 20,000) | |
| - with a threshold to remove noise (requires minimum 5 input points per voxel) | |
| - then transform it into the robot footprint frame, i.e. aligned with the floor | |
| - subtract the robot footprint (our depth sensor's FOV includes the robot footprint, which changes dynamically with the load) | |
| - subtract points in the ground plane, with different tolerances for near or far | |
| - ground plane by default z = 0, but |
http://www.pcl-users.org/PointCloud-Ptr-td3559529.html
https://stackoverflow.com/questions/10644429/create-a-pclpointcloudptr-from-a-pclpointcloud
const pcl::PointCloud<pcl::PointXYZ> cloud(10,10);
const pcl::PointXYZ p(1,1,1);
| # will need to be tweaked for your project | |
| make_minimum_required(VERSION 3.5) | |
| project(test_ros_pb11) | |
| # Default to C99 | |
| if(NOT CMAKE_C_STANDARD) | |
| set(CMAKE_C_STANDARD 99) | |
| endif() | |
| # Default to C++14 |
So, I want to have a GPS Receiver driving a PPS (pulse-per-second) signal to the NTP server for a highly accurate time reference service.
There are at least a couple of ways to propagate the PPS signal to the ntpd (NTP daemon) service, plus some variants in each case. However, the GPS device must be seen as a device that sources two different types of data:
The first one provides the complete information (incl. date and time) about when now is, but with poor accuracy because data is sent over the serial port and then encoded using a specific protocol such as NMEA (National Marine Electronics Association). PPS provides instead a very accurate clock but without any reference to absolute time.
The diode bridge is the simplest rectifier I know.
Rectifier lets you share a directory with a docker container (just like $yourvm shared folders).
You don't have to install anything in your containers, and you only need to install diod in the host. diod is packaged on Ubuntu/Debian distros, and will automatically be apt-get install-ed if needed.
Since it uses diod to make a bridge, I called it rectifier. Yeah, that sucks, so if you have a better name, I'll steal it!
I use Ubuntu Mate instead of the usual Raspbian Jessie mainly because of the gcc version. ORB-SLAM2 requires C++11 support. Raspbian comes with gcc 4.9, which does not handle C++11 by default. That means you have to play around with some compiler flags in ORB-SLAM2's CMakeLists.txt to make it work. In contrast, Ubuntu Mate's gcc 5.4 handles C++11 naturally.
| #!/usr/bin/env python | |
| import math | |
| from math import sin, cos, pi | |
| import rospy | |
| import tf | |
| from nav_msgs.msg import Odometry | |
| from geometry_msgs.msg import Point, Pose, Quaternion, Twist, Vector3 |