#include <math.h>
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
#include <ros/ros.h>
#include <nav_msgs/Odometry.h>
#include <sensor_msgs/Imu.h>
#include <sensor_msgs/PointCloud2.h>
#include <tf/transform_datatypes.h>
#include <tf/transform_broadcaster.h>
#include <opencv/cv.h>
#include <opencv2/highgui/highgui.hpp>
#include <pcl_conversions/pcl_conversions.h>
#include <pcl/point_cloud.h>
#include <pcl/point_types.h>
#include <pcl/filters/voxel_grid.h>
#include <pcl/kdtree/kdtree_flann.h>
Go to the source code of this file.
void AccumulateIMUShift | ( | ) |
Definition at line 155 of file scanRegistration.cpp.
pcl::PointCloud<pcl::PointXYZI>::Ptr cornerPointsLessSharp | ( | new pcl::PointCloud< pcl::PointXYZI > | () | ) |
pcl::PointCloud<pcl::PointXYZI>::Ptr cornerPointsSharp | ( | new pcl::PointCloud< pcl::PointXYZI > | () | ) |
void imuHandler | ( | const sensor_msgs::Imu::ConstPtr & | imuIn | ) |
Definition at line 613 of file scanRegistration.cpp.
pcl::PointCloud<pcl::PointXYZ>::Ptr imuTrans | ( | new pcl::PointCloud< pcl::PointXYZ > | 4, 1 | ) |
pcl::PointCloud<pcl::PointXYZI>::Ptr laserCloud | ( | new pcl::PointCloud< pcl::PointXYZI > | () | ) |
void laserCloudHandler | ( | const sensor_msgs::PointCloud2ConstPtr & | laserCloudIn2 | ) |
Definition at line 193 of file scanRegistration.cpp.
pcl::PointCloud<pcl::PointXYZ>::Ptr laserCloudIn | ( | new pcl::PointCloud< pcl::PointXYZ > | () | ) |
int main | ( | int | argc, |
char ** | argv | ||
) |
Definition at line 637 of file scanRegistration.cpp.
void ShiftToStartIMU | ( | float | pointTime | ) |
Definition at line 90 of file scanRegistration.cpp.
pcl::PointCloud<pcl::PointXYZI>::Ptr surfPointsFlat | ( | new pcl::PointCloud< pcl::PointXYZI > | () | ) |
pcl::PointCloud<pcl::PointXYZI>::Ptr surfPointsLessFlat | ( | new pcl::PointCloud< pcl::PointXYZI > | () | ) |
pcl::PointCloud<pcl::PointXYZI>::Ptr surfPointsLessFlatScan | ( | new pcl::PointCloud< pcl::PointXYZI > | () | ) |
pcl::PointCloud<pcl::PointXYZI>::Ptr surfPointsLessFlatScanDS | ( | new pcl::PointCloud< pcl::PointXYZI > | () | ) |
void TransformToStartIMU | ( | pcl::PointXYZI * | p | ) |
Definition at line 128 of file scanRegistration.cpp.
void VeloToStartIMU | ( | ) |
Definition at line 109 of file scanRegistration.cpp.
float cloudCurvature[40000] |
Definition at line 42 of file scanRegistration.cpp.
int cloudLabel[40000] |
Definition at line 45 of file scanRegistration.cpp.
int cloudNeighborPicked[40000] |
Definition at line 44 of file scanRegistration.cpp.
int cloudSortInd[40000] |
Definition at line 43 of file scanRegistration.cpp.
float imuAccX[imuQueLength] = {0} |
Definition at line 71 of file scanRegistration.cpp.
float imuAccY[imuQueLength] = {0} |
Definition at line 72 of file scanRegistration.cpp.
float imuAccZ[imuQueLength] = {0} |
Definition at line 73 of file scanRegistration.cpp.
float imuPitch[imuQueLength] = {0} |
Definition at line 68 of file scanRegistration.cpp.
float imuPitchCur = 0 |
Definition at line 55 of file scanRegistration.cpp.
float imuPitchStart = 0 |
Definition at line 54 of file scanRegistration.cpp.
int imuPointerFront = 0 |
Definition at line 50 of file scanRegistration.cpp.
int imuPointerLast = -1 |
Definition at line 51 of file scanRegistration.cpp.
const int imuQueLength = 200 |
Definition at line 52 of file scanRegistration.cpp.
float imuRoll[imuQueLength] = {0} |
Definition at line 67 of file scanRegistration.cpp.
float imuRollCur = 0 |
Definition at line 55 of file scanRegistration.cpp.
float imuRollStart = 0 |
Definition at line 54 of file scanRegistration.cpp.
float imuShiftFromStartXCur = 0 |
Definition at line 63 of file scanRegistration.cpp.
float imuShiftFromStartYCur = 0 |
Definition at line 63 of file scanRegistration.cpp.
float imuShiftFromStartZCur = 0 |
Definition at line 63 of file scanRegistration.cpp.
float imuShiftX[imuQueLength] = {0} |
Definition at line 79 of file scanRegistration.cpp.
float imuShiftXCur = 0 |
Definition at line 61 of file scanRegistration.cpp.
float imuShiftXStart = 0 |
Definition at line 58 of file scanRegistration.cpp.
float imuShiftY[imuQueLength] = {0} |
Definition at line 80 of file scanRegistration.cpp.
float imuShiftYCur = 0 |
Definition at line 61 of file scanRegistration.cpp.
float imuShiftYStart = 0 |
Definition at line 58 of file scanRegistration.cpp.
float imuShiftZ[imuQueLength] = {0} |
Definition at line 81 of file scanRegistration.cpp.
float imuShiftZCur = 0 |
Definition at line 61 of file scanRegistration.cpp.
float imuShiftZStart = 0 |
Definition at line 58 of file scanRegistration.cpp.
double imuTime[imuQueLength] = {0} |
Definition at line 66 of file scanRegistration.cpp.
float imuVeloFromStartXCur = 0 |
Definition at line 64 of file scanRegistration.cpp.
float imuVeloFromStartYCur = 0 |
Definition at line 64 of file scanRegistration.cpp.
float imuVeloFromStartZCur = 0 |
Definition at line 64 of file scanRegistration.cpp.
float imuVeloX[imuQueLength] = {0} |
Definition at line 75 of file scanRegistration.cpp.
float imuVeloXCur = 0 |
Definition at line 60 of file scanRegistration.cpp.
float imuVeloXStart = 0 |
Definition at line 57 of file scanRegistration.cpp.
float imuVeloY[imuQueLength] = {0} |
Definition at line 76 of file scanRegistration.cpp.
float imuVeloYCur = 0 |
Definition at line 60 of file scanRegistration.cpp.
float imuVeloYStart = 0 |
Definition at line 57 of file scanRegistration.cpp.
float imuVeloZ[imuQueLength] = {0} |
Definition at line 77 of file scanRegistration.cpp.
float imuVeloZCur = 0 |
Definition at line 60 of file scanRegistration.cpp.
float imuVeloZStart = 0 |
Definition at line 57 of file scanRegistration.cpp.
float imuYaw[imuQueLength] = {0} |
Definition at line 69 of file scanRegistration.cpp.
float imuYawCur = 0 |
Definition at line 55 of file scanRegistration.cpp.
float imuYawStart = 0 |
Definition at line 54 of file scanRegistration.cpp.
pcl::PointCloud<pcl::PointXYZI>::Ptr laserCloudScans[16] |
Definition at line 40 of file scanRegistration.cpp.
const double PI = 3.1415926 |
Definition at line 23 of file scanRegistration.cpp.
Definition at line 85 of file scanRegistration.cpp.
Definition at line 84 of file scanRegistration.cpp.
Definition at line 88 of file scanRegistration.cpp.
Definition at line 83 of file scanRegistration.cpp.
Definition at line 86 of file scanRegistration.cpp.
Definition at line 87 of file scanRegistration.cpp.
int scanEndInd[16] |
Definition at line 48 of file scanRegistration.cpp.
const float scanPeriod = 0.1 |
Definition at line 25 of file scanRegistration.cpp.
int scanStartInd[16] |
Definition at line 47 of file scanRegistration.cpp.
const int systemDelay = 20 |
Definition at line 27 of file scanRegistration.cpp.
int systemInitCount = 0 |
Definition at line 28 of file scanRegistration.cpp.
bool systemInited = false |
Definition at line 29 of file scanRegistration.cpp.