- 博客(132)
- 资源 (1)
- 收藏
- 关注
原创 PCL 基于颜色信息的点云区域生长分割算法
类 class pcl::SeededHueSegmentation 是基于颜色信息的点云区域生长分割算法,该算法在分割时不仅使用了点云的空间信息,还使用了点云所带的可见光信息,适合基于RGBD设备获取的点云进行分割处理。对通过setInputCloud ( )和setIndices ( )共同指定的输入点云进行聚类分割,输出分割出来的结果存储在output中返回。设置搜索时所用的搜索机制,tree指向搜索时所用的搜索对象,例如kdtree、octree等。
2024-02-27 17:04:01 266
原创 利用PCL实现点云绕质心旋转
PCL中点云旋转都是绕原点旋转的,要绕质心旋转,则应该先将点云质心移至原点,绕原点旋转后,再将点云质心移回原来的位置,便达到了点云绕质心旋转的目的。
2023-09-22 15:53:58 368
原创 Windows10+OpenCL环境配置
在 Windows 开始菜单中 键入 英特尔显卡。方法1:我的电脑用的是intel的显卡,具体查看方式:桌面右键 → 英特尔显卡设置 → 选项与支持打开英特尔® 显卡控制中心。下载地址:英特尔https://software.intel.com/en-us/intel-opencl/download。如果安装了,它应该 会在 选项中显示英特尔® 显卡控制中心。注意 由于名称中包含的版权字符,键入 英特尔 词将不起作用。方法 3:从 Windows 开始菜单中, 搜索 “添加并删除程序”,然后 单击 它。
2023-08-10 09:45:22 1776
原创 CMake编译PCL1.12.1工程报错Could NOT find Boost (missing: filesystem system) (found version “x.xx.x“)
参考了网上各种配置Boost的方法,最终悲催的发现,我把CMake版本由3.17升级到3.22就可以了,深入查找发现,时CMake自带的findBoost.cmake进行了更改,天坑,希望帮到一样问题的伙伴们。参考报错信息定位到PCLConfig.cmake寻找第三方库Boost部分110~136行。最近在用PCL 1.12.1重新编译PCL 1.8.1已经编译通过的工程,报错。
2023-03-28 17:19:22 342
原创 PCL1.12.1 无效的宏定义BOOST_DEFINITIONS -DBOOST_ALL_NO_LIB
打开定位到第130行,将if(WIN32 AND NOT MINGW)替换成if(WIN32 AND NOT MINGW AND NOT “${BOOST_DEFINITIONS}” MATCHES “BOOST_ALL_NO_LIB”)。在编译其他项目时,CMake使用了find_package( PCL 1.12.1 REQUIRED ),打开.sln后发现有无效的宏定义“BOOST_ALL_NO_LIB-DBOOST_ALL_NO_LIB”。保存,重新CMake,vs打开解决方案发现问题已解决。
2023-03-28 17:08:48 361
转载 空间中一点沿某一防线移动距离d后坐标
1.已知三维空间一点P(x1,y1,z1),将其沿向量n(x,y,z)方向,移动距离d,求移动后P’的坐标(x2,y2,z2)?2.如果不止一个点P,而是三维空间点集Mi(xi,yi,zi),i=0,1,2……n,每个点都有自己的法向量ni(xi,yi,zi),将每个M,沿每个对应的n,移动距离d,则移动后Mi’的坐标是多少?//单点情况x1 = 1;y1 = 1;z1 = -1;x = 1;y = 0;z = 1;d = 2; P = [x1;y1;z1];N = [x;y;z]
2022-05-18 16:04:55 1016 1
转载 qt 部分控件 setStyleSheet 使用总结
qt 部分控件 setStyleSheet 使用总结主要使用到的工具有:QToolBar,QToolBox,QPushButton,QLabel,QListWidget,QTabWidget,QTableWidget,QTreeWidget,QToolButton.QPushButton,QToolButton的“按下”三态贴图,QPushButton为例:setStyleSheet(“QPushButton:hover{border-image:url(:/images/ui_design/1.pn
2022-04-30 18:56:43 1335
原创 两个Vector交集、并集、补集运算
C++虽然对vector封装了大量的函数,比如判断元素是否在vector中find、去重的unique,还有在algorithm类中对两个vector求交集、并集的函数,但是,这些函数是不可以直接vector.XX来使用的,具体如下代码所示:#include "iostream"#include "vector" #include "algorithm" //sort函数、交并补函数#include "iterator" //求交并补使用到的迭代器using namespace std; //
2022-04-21 17:08:12 3685 1
原创 UTF8STRING与std:string互转
UTF8与std:string互转 Ajax请求发送的UTF8编码字符串传到后台使用std:string进一步处理,如果包含中文会出现中文乱码的问题:涉及到的头文件:函数所在头文件:windows.h#include <windows.h>wchar_t类型所需头文件:wchar.h#include <wchar.h>代码// UTF8转std:string// 转换过程:先将utf8转双字节Unicode编码,再通过WideCharToMultiByte将宽字符
2022-03-16 14:11:53 793
转载 已知圆弧上任意三点,计算圆心与半径--C++代码实现
// compute_sphere_center.cpp : 定义控制台应用程序的入口点。//#include<iostream>#include<vector>using namespace std;struct point{ double x = 0; double y = 0; double z = 0;};struct plane{ double a = 0; double b = 0; double c
2021-12-21 14:19:55 1172
原创 std::vector向量排序,并返回原地址
template <typename T>std::vector<size_t> sort_indexes(const std::vector<T> &v){ std::vector<size_t> idx(v.size()); // 初始化索引向量 std::iota(idx.begin(), idx.end(), 0);
2021-12-08 11:06:37 848
原创 Opencv读取图像,图像通道分离,图像通道融合
//// Created by cynthia on 2021/11/25.//#include <sys/types.h>#include <sys/stat.h>#include "unistd.h"#include "dirent.h"#include <iostream>#include <iostream>#include <direct.h>#include <opencv2/opencv.hpp>u
2021-11-25 21:40:09 205
原创 QT打包exe文件
1.将原release模式编译的exe文件拷贝至新建空白文件夹。2.找到qt编译终端,打开显示如下界面:3.打包在上述终端输入windeployqt.exe exe文件所在目录回车待打包完成,将原release模式编译的exe文件的依赖库拷贝出来即可。...
2021-11-23 22:19:03 267
原创 C++生成随机数
#include <iostream>#include <cstdlib>#include <ctime>#define random(x) rand()%(x)using namespace std;int main(){ srand((int)time(0)); // 产生随机种子 把0换成NULL也行 for (int i = 0; i < 10; i++) { cout << random
2021-11-17 12:52:29 173
原创 QT配置Eigen库
1.pro文件中包含解压的eigen目录INCLUDEPATH += D:/Eigen/eigen-3.3.9该目录下包含文件如下:
2021-11-09 20:25:10 2897 1
原创 VTK读取.ply数据并获取顶点,面等信息
//Code by cynthia chen, 2021.10.29#include <iostream>#include <time.h>#include <string>// 利用VTK读取ply网格文件#include <vtkPolyDataMapper.h>//#include <vtkActor.h>#include <vtkRenderer.h>#include <vtkRenderWindow.h&
2021-10-29 16:56:15 956
原创 c++绘制三维空间圆的散点图
三维空间圆形式如下:三维空间圆的参数方程:PCL绘制3D圆轨迹c++代码://center 为圆心,normal 为圆法向量, Radius为半径pcl::visualization::PCLVisualizer::Ptr Plot3DCircle(pcl::PointCloud<pcl::PointXYZ>::ConstPtr cloud, pcl::PointXYZ ce
2021-10-18 10:49:12 2433
转载 pcl计算点云法向量并显示
利用最小二乘法估计样点表面法向,并显示#include <pcl/point_types.h>#include <pcl/io/pcd_io.h>#include <pcl/kdtree/kdtree_flann.h>#include <pcl/features/normal_3d.h>#include <pcl/surface/gp3.h>#include <pcl/visualization/pcl_visualizer.h&
2021-10-15 11:21:42 375
原创 PCL点云可视化相关操作
1.可视化窗口添加、删除、更新点云addPointCloudremovePointCloudupdatePointCloud///定义一个显示窗口,窗口的名字为3D reviewerboost::shared_ptr<pcl::visualization::PCLVisualizer> viewer(new pcl::visualization::PCLVisualizer("3D Viewer"));(1) 函数1: addPointCloud()向窗口添加点云cloud1,c
2021-10-15 10:45:41 2563
原创 Windows通过CmakeLists.txt使用OpenCV,适用于QT、Clion
1.下载OpenCV官网下载指定版本“opencv-xxx.exe”文件 -> 解压->opencv文件夹。2.添加环境变量右键此电脑 -> 属性 -> 高级系统设置 -> 环境变量 -> 系统变量 -> 新建变量名:OpenCV_DIR变量值:解压得到的opencv文件夹build目录3.配置CmakeLists.txtcmake_minimum_required(VERSION 3.5)project(ProjectName LANGUAG
2021-10-14 14:46:50 2137 1
原创 opencv显示图片只显示部分(或认为图片太大)
#include "opencv2/opencv.hpp"#include <opencv2/highgui.hpp>using namespace cv;using namespace std;int main(){ cv::Mat src = imread("IMG_0029.JPG", CV_LOAD_IMAGE_COLOR); if(!src.data) //or == if(src.empty()) { cout<<"C
2021-10-14 14:24:45 2076
原创 利用VTK显示PLY网格模型文件
#define vtkRenderingCore_AUTOINIT 2(vtkRenderingOpenGL2, vtkInteractionStyle)#include <vtkOBJReader.h>#include <vtkPolyDataMapper.h>#include <vtkActor.h>#include <vtkRenderer.h>#include <vtkRenderWindow.h>#include <vt
2021-09-28 11:37:00 954
原创 ubuntu16.04 安装openjdk-9-jdk错误解决
1.安装错误$ apt-get install openjdk-9-jdkErrors were encountered while processing:/var/cache/apt/archives/openjdk-9-jdk_9~b114-0ubuntu1_amd64.debE: Sub-process /usr/bin/dpkg returned an error code (1)2.原因$ sudo dpkg --configure -a依赖问题3.解决$ sudo dpk
2021-09-03 17:33:37 619
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人