ROS,PCL,计算机视觉
lykhahaha
ROS 机器人 计算机视觉
展开
-
ubuntu for ROS安装PCL1.8
0.刚学习ROS的新手往往用易科的镜像安装的Ubuntu和ROS。因为这个镜像会集成OpenCV和PCL函数库,为新手带来很大方便。但是PCL版本是1.7,而随着学习的深入,会发现PCL1.7缺少很多函数头文件,这是因为版本太低,我们需要另外安装PCL1.8版本. 安装之前记得更新安装依赖库。1. 下载源码GitHub-PointCloudLibrary/pclat/pcl-1.8.1原创 2017-11-27 22:20:50 · 6671 阅读 · 2 评论 -
从pcl::correspondence中访问点云中对应点的坐标
在correspondence.h定义中有index_qurey和index_match成员。所以pcl::correspondences类里面有query和match两个成员,分别是sourc和target点云上对应点对的索引。所以我们可以通过source[query].x等等来访问具体的坐标值。std::cout << "......Keypoints Feature Matc原创 2018-01-26 15:47:06 · 4455 阅读 · 0 评论 -
NaNs的处理——使用pcl_isfinite或pcl::removeNaNFromPointCloud函数去除无效点
在使用PCL进行数据处理时候,很多算法都会考虑无效点,其主要是通过判断PointCloud类里的数据成员是否包含NaN。(1)pcl_isfinite函数pcl_isfinite函数返回一个布尔值,检查某个值是不是正常数值。一般在for循环中和if continute使用。for{if (!pcl_isfinite (scene_descriptors->at (i).desc原创 2018-01-26 11:46:02 · 14378 阅读 · 2 评论 -
PCL错误提示: what()::[pcl::PCDWriter::writeASCII] Could not open file for writing!
对一个两百多万个点云进行操作提示:terminate called after throwing an instance of 'pcl::IOException'what(): : [pcl::PCDWriter::writeASCII] Could not open file for writing!已放弃 (核心已转储)看到“核心已转储”以为是内存出错,后来发现并非内存操作出错。原因是原创 2018-01-17 19:23:32 · 8905 阅读 · 8 评论 -
pcl::getMinMax3D函数说明笔记
(1)查看API说明:void pcl::getMinMax3D ( const pcl::PointCloud & cloud, const std::vector & indices, Eigen::Vector4f & min_pt, Eigen::Vector4f & max_pt ) Get the minimum and maximum va原创 2018-01-08 18:25:32 · 12880 阅读 · 3 评论 -
查看常用库版本指令集合
查看常用库版本指令集合Ubuntu version:lsb_release -r32-bit or 64-bit architecture:getconf LONG_BITCompiler version:gcc --versionGit version:git --versionCMake:cmake --versionBoost version:dpkg -s libboo原创 2018-01-12 15:36:22 · 1856 阅读 · 0 评论 -
ubuntu安装HDF5链接库(基于VFH描述子的聚类识别与6自由度位姿估计编译问题)
最近研究描述子,编译了基于VFH的聚类识别和自由度估计,但是遇到一些问题。具体就是:提示HDF5链接库找不到。解决办法:安装这个库,我们采用源码编译的方式(貌似也没有其他方式)。(1)下载。地址如下。有 HDF51.10.1 HDF51.8.20 两个版本。类似office高版本支持低版本,低版本不支持高版本。(建议在用户目录下新建lib文件夹作为地址)https://su原创 2017-12-14 09:43:14 · 4665 阅读 · 3 评论 -
fatal error: QtGui/QWidget: No such file or directory解决笔记
问题描述:在ubuntu14.04(对,笔记本刚修好,这次是台式机又崩了。。。)安装编译pcl1.8时候提示出错:/usr/include/vtk-5.8/QVTKWidget.h:40:25: fatal error: QtGui/QWidget: No such file or directory #include ^查看了VTK有安原创 2018-01-31 16:01:58 · 16540 阅读 · 2 评论 -
rviz点云参数笔记
对比了下别人rvi调的参数,看起来确实美观。记录以下:原创 2018-01-12 20:33:20 · 3064 阅读 · 1 评论 -
安装libnabo库及libpointmatcher库
libnabo 是在低维空间进行快速最近邻搜索库。它提供了一个干净的,传统的无标量类型无关的C ++模板API。mkdir ~/lib/cd ~/libgit clone git://github.com/ethz-asl/libnabo.gitcd libnaboSRC_DIR=`pwd` //记录当前路径BUILD_DIR=${SRC_DIR}/build //声明编译路翻译 2018-01-12 14:24:47 · 3981 阅读 · 0 评论 -
用pcl将两不同类型点云转换
PointCloud和PointCloud之间相互装换(1)使用pcl函数直接转换:PointCloud cloud_xyz;// [...]PointCloud cloud_xyzrgb;copyPointCloud(cloud_xyz, cloud_xyzrgb);(2)通过赋值来装换cloud_xyzrgb.points.resize(cloud_xyz翻译 2018-01-03 11:38:47 · 3712 阅读 · 0 评论 -
两点云坐标点的转化
两点云坐标点的转化两点云坐标点的转化,就是把一个点云从自己的坐标系变换到另一个坐标系,配准,拼接都用得到。有点类似相机和激光外参的标定(将激光坐标系转换到相机的坐标系。都是Rt变换)。(1)基本知识R为旋转矩阵,X为原始点,t为平移量,X'为变换后的点(目标点)R*X+t=X' (Rt*X=X')但是所求Rt矩阵用一个矩阵表示如下: /* Reminder:原创 2017-12-06 10:14:30 · 3455 阅读 · 0 评论 -
ROS下计算点云聚类处理时间
最近改进了个算法想比较下和传统算法的计算时间差异。使用ros下面的ROS::time可以实现。大致框架:(1)在数据处理开始获取时间ros::Time begin_time = ros::Time::now ();(2)接着是数据处理阶段,在处理后,计算时间差:double clustering_time = (ros::Time::now () - begin_t原创 2018-01-03 10:18:32 · 1501 阅读 · 0 评论 -
pcl点云索引与应用
点云索引其实就是将点云中不同点加上标签,方便后面的分类提取。有了点云的索引值可以方便的对点云进行不同操作:以下举例说明:(代码仅显示主要部分,忽略模型设置部分)(1)保存一点云中某些特定的点pcl::PointCloud::Ptr cloud(new pcl::PointCloud);//输入点云pcl::io::loadPCDFile("~/xxx.pcd", *cloud);原创 2017-12-19 15:22:05 · 3857 阅读 · 0 评论 -
ros中cmake编译问题及cmakelist书写问题
一,ros中使用cmake编译,那么编辑cmakelist文件就尤为重要。正常来说,按照ros教程(添加服务消息等等),添加类似依赖库,声明cpp文件即可:1.如依赖这些包或者库find_package(catkin REQUIRED COMPONENTS cv_bridge image_transport roscpp sensor_msgs std_m原创 2017-12-07 10:01:41 · 1349 阅读 · 0 评论