Windows10下安装point-cloud-annotation-tool点云标注工具——吐血之路总结

2023-05-16

零.

为了标注点云数据,经过多方查找免费开源的标注软件,根据使用要求和方便程度最终选择了这款可以在Windows下编译安装的point-cloud-annotation-tool,基于QT和vtk和PCL进行编译使用项目github链接链接:https://github.com/springzfx/point-cloud-annotation-tool

项目中说的是:

Tested with pcl 1.8, vtk 8.1, Qt5 under both ubuntu 16.04 and windows 10. to build:

编译好的标注工具资源链接:https://download.csdn.net/download/qq_30460905/12230016

下面介绍我的配置:

一. 配置

(1)笔记本配置Win10 ,x64,16G内存,i7-9750H

(2)安装Visual Studio 2015,这个安装简单不废话。

(3)安装Qt,我安装的为Qt5.7.0(MSVC2015),清华大学开源镜像网站下载,直接按照步骤安装即可,安装完添加环境变量。

(4)pcl1.8.1,github下载PCL-1.8.1-AllInOne-msvc2015-win64和源码

(5)pcl1.8.1对应的vtk版本为vtk8.0,下载vtk源码,vtk源码托关于gitlab,直接搜索对应版本下载。

(6)在windows下编译源码需要cmake工具,我下载的cmake版本为cmake-3.16.3-win64-x64,直接exe可以安装。

(7)下载point-cloud-annotation-tool源码

二. 安装软件

(1)在D盘(这个随意)新建文件夹cmake,qt570,PCL_181,VTK8.0,pcd_annotation_tool。

(2)安装cmake到cmake文件夹下,在bin目录存在cmake-gui,cmake的配置界面,后面源码的编译就在这配置。

(3)安装qt5.7.0到qt570目录,添加path环境变量

D:\qt570\Tools\QtCreator\bin
D:\qt570\Tools\QtCreator\bin

(4)安装PCL-1.8.1-AllInOne-msvc2015-win64到PCL_181,注意勾选第三方库3rd Party,添加环境变量到所有用户,出现OpenNI2安装对话框时选择安装目录为:

D:\PCL_181\PCL1.8.1\3rdParty\OpenNI2

安装完后在环境变量中添加第三方库的路径:

D:\PCL_181\PCL1.8.1\bin;
D:\PCL_181\PCL1.8.1\3rdParty\Boost\include\boost-1_64;
D:\PCL_181\PCL1.8.1\3rdParty\Boost;
D:\PCL_181\PCL1.8.1\3rParty\Eigen\eigen3;
D:\PCL_181\PCL1.8.1\3rdParty\FLANN\bin;
D:\PCL_181\PCL1.8.1\3rdParty\Qhull\bin;
D:\PCL_181\PCL1.8.1\3rdParty\VTK\bin;
D:\PCL_181\PCL1.8.1\3rdParty\OpenNI2\Tools;

三. 编译软件

1. 编译vtk

(1)将vtk8.0源码解压到VTK8.0目录,在目录下新建文件夹vtk-8_build,vtk-8_install,分别用于存放编译和安装文件。

打开cmake-gui界面,选择vtk8-vtk8.0.0源码和vtk-8_build目录,点击Configure,选择编译平台为x64,会出现红色条目:

主要注意BUILD_SHARED_LIBS,CMAKE_INSTALL_PREFIX几项。然后再点击Configure直到不再出现红色,最后点击Generate,用管理员权限打开VS2015,打开VTK.sln,选择Release,右击ALL_BUILD选择重新生成,然后右键INSTALL选择生成。

(2)安装VTK

用编译生成的vtk-8_install内容,将PCL_181里面自带的VTK下内容替换(不放心可以备份一下)

2. 编译PCL

利用cmake-gui按照编译VTK的方式编译pcl,配置pcl,去掉WITH_CUDA,CMAKE_BUILD_TYPE改为Release,CMAKE_INSTALL_PREFIX改为安装目录,多次Configure后Generate,打开VS2015编译Release版本的pcl,然后INSTALL生成,最后把生成的目录替换原PCL_181/PCL1.8.1/,具体可参考:参考文章(2)

3. 编译point-cloud-annotation-tool

编译完成后打开VS,Release版本编译,设置point_cloud_annotation_tool为启动项,点击运行,成功!

遇到问题多尝试,发现问题,然后解决问题,Constant effort yield for sure!时间匆忙,待我改日再补充debug细节。

备注:最近几天看了好多标注软件,商用的或者开源的,要想不花钱,就得麻烦点开源的存在各种毛病,需要根据自己需求编写或者修改标注软件,这个软件还有许许多需要改进的地方。

比如(1)不能选择下一帧数据,每次都要打开文件,保存文件,而且标注错了保存后可以修改,但是不能删除,必须打开标注文件手动删除后保存,再加载点云。

(2)而且标注的没有序号,可以后期自己加上,每次标注完可以点击下一帧自动保存,防止忘记保存丢失数据。

(3)可以设置一个俯视按钮,直接将点云设置为俯视显示方便标注,

(4)地面去除有待改进使用起来不是太清楚。

(5)可以设置一个选择XYZ点云范围的滑动条,删除道路边界不需要考虑的标注部分。

(6)待我继续使用思考。。。

主要参考文章:(1)Point-Cloud-Annotation-Tool安装

https://blog.csdn.net/r1141207831/article/details/103881962

(2)在Windows 10上源码编译PCL 1.8.1支持VTK和QT,可视化三维点云

https://www.jianshu.com/p/b022a9c93d8f

(3)How to use PCL with Qt GUI

http://unanancyowen.com/en/pcl-with-qt/

(4) VTK8.2.0在Windows10+VS2017+Qt 5.12环境下编译安装

https://blog.csdn.net/annjeff/article/details/88597051

(5)打开cmd,cd到存放lib文件的目录中,输入指令:dir *.lib /b >LIBLIST.TXT,此时LIBLIST.TXT会保存所有的lib文件

Win10+VS2015环境下安装编译PCL1.8.1和VTK8.0.0(踩坑大全)

https://blog.csdn.net/weixin_39871164/article/details/102879962

完整配置后的截图:没展开的都是没找到

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Windows10下安装point-cloud-annotation-tool点云标注工具——吐血之路总结 的相关文章

  • Zynq Cache问题的解决方法

    在进行PS PL之间的DMA传输时 xff0c 不可避免会遇到Cache问题 今天在这里讲一下Cache的解决方法 其中参考了forums xilinx com的处理方法 首先解释为什么DMA会引入Cache问题 xff08 专业名称为Ca
  • Python网络爬虫之-HTTP协议原理

    Python网络爬虫之 HTTP协议原理 1 爬虫之http基本原理2 浏览器解析概述Cookie技术 1 爬虫之http基本原理 URI 统一资源表示符 中包含 URL lt 统一资源定位符 gt URN lt 统一资源名称 gt HTT
  • Java的大端小端字节序

    在计算机中 xff0c 内存地址通常是按照地址递增的方式分配的 xff0c 也就是说 xff0c 低地址是指内存的起始位置 xff0c 高地址是指内存的末尾位置 在大多数体系结构中 xff0c 数据存储在内存中是以字节为单位进行的 例如 x
  • DSP28335 printf重定向问题调试记录

    最近几天在玩DSP28335板子 xff0c 在实现printf重定向功能时 xff0c 遇到很多问题 xff0c 最终结合网上一些人的经验和个人实践 xff0c 最终解决了问题 本文做一个简单的总结 xff0c 以便后续查阅 同时也是希望
  • C++ 绝对路径与相对路径

    对于一些第三方的SDK xff0c 一般会包含头文件 h xff0c 静态库文件 lib 和动态库文件 dll 文件位置 xff1a 为了提高程序的可移植性 xff0c 将第三库放在解决方案 sln 或者工程 vcxproj 文件所在的文件
  • C/C++ 函数与指针取地址符

    int f1 float int f2 char int f3 float int f4 float int pf float 则以下不合法的是 int p float 61 amp f1 pf 61 amp f4 pf 61 amp f2
  • C/C++编程异常处理中try和throw以及catch语句的用法

    这篇文章主要介绍了C 43 43 编程异常处理中try和throw以及catch语句的用法 包括对Catch块的计算方式的介绍 若要在 C 43 43 中实现异常处理 xff0c 你可以使用 try throw 和 catch 表达式 首先
  • c/c++中的string常用函数用法总结

    标准c 43 43 中string类函数介绍 注意不是CString 之所以抛弃char 的字符串而选用C 43 43 标准程序库中的string类 xff0c 是因为他和前者比较起来 xff0c 不必 担心内存是否足够 字符串长度等等 x
  • Convolutional Pose Machines

    本论文将 深度学习 应用于人体姿态分析 xff0c 同时用卷积图层表达纹理信息和空间信息 目前在2016年的 MPII竞赛中名列前茅 作者在github提供了 训练和测试源码 convolutional pose machines CVPR
  • OpenCV学习—01:矩阵的掩膜操作

    一 获取图像的像素指针 CV Assert srcImg depth 61 61 CV 8U Mat ptr lt uchar gt int i 61 0 获取像素矩阵的指针 xff0c 索引i表示第几行 xff0c 从0开始计数 获取当前
  • OpenCV学习—02:记录程序的运行时间

    首先 xff0c 我的电脑配置 xff1a VS2013 43 Opencv3 1 0 43 Win 64bit 有时 xff0c 我们想知道要程序一共运行了多长时间 xff0c 这个很常用 xff0c 也很简单 xff0c 仅仅需要两个函
  • OpenCV学习—03:Mat对象

    Mat对象与IplImage对象 Mat对象是OpenCV2 0之后引进的数据结构 自动分配内存 不存在内存泄漏的问题 xff0c 是面向对象的数据结构 IplImage是从2001年OpenCV发布之后就一直存在的 xff0c 是C语言风
  • 无刷电机桨叶正反桨区别

    无刷电机桨叶正反桨区别 桨叶平放面对自己 xff0c 左高右低为反桨 xff0c 反之为正桨cw xff1a 反桨ccw xff1a 正桨作用 xff1a 为了抵消单个螺旋桨的反扭矩 xff0c 所以每个桨的旋转方向是不一样的
  • matlab的mac版本注释快捷键

    注释 xff1a command 43 取消注释 xff1a command 43 T
  • matlab polyfit和polyval函数的使用

    Matlab polyfit和polyval函数的使用 pp 61 polyfit t p n 多项式拟合 n为拟合的阶数 py 61 polyval pp t 求出多项式的值
  • 谷歌浏览器网页缩放

    谷歌浏览器网页缩放 win xff1a Ctrl 43 43 或者 mac xff1a command 43 43 或者
  • mac系统传统映像必须转换解决方法

    mac系统传统映像必须转换解决方法 步骤一 xff1a 打开电脑自带的 磁盘工具 步骤二 xff1a 选择映像 gt 转换即可
  • ubuntu18.04 command not found: catkin_init_workspace

    使用catkin init workspace命令报错 xff1a command not found catkin init workspace 使用以下命令解决 xff1a source opt ros kinetic setup ba
  • intel realsense D400系列相机介绍(一)

    文章目录 intel realsense D42 intel realsense D400介绍2 3 立体视觉深度技术概述2 4 摄像机系统框图2 5 英特尔Intel RealSense 深度模块D400系列产品2 6 英特尔Intel
  • 宏定义(无参,有参,宏函数)(详细介绍)

    以符号 开头的命令 xff0c 如 xff1a span class token macro property span class token directive keyword define span N 10 span span cl

随机推荐

  • intel realsense 深度视野范围与模组硬件说明

    文章目录 4 4 距离 xff08 Z xff09 处的深度视场4 5 无效深度带4 6 最小测量深度4 7 深度质量规范4 8 深度起点 xff08 地面零点参考 xff09 4 8 1 深度原点X Y坐标 7 2 视觉处理器D4板外形7
  • jetson nano GPIO控制说明

    文章目录 一 GPIO介绍二 安装GPIO库python库C 43 43 库 三 几种常用的通信协议UARTPWMI2CI2SSPI 四 控制函数说明python xff08 参考 https pypi org project Jetson
  • jetson nano系统引导安装(无外设安装方式)

    文章目录 一 硬件设置二 系统设置 一 硬件设置 插入烧写好系统的SD卡将micro USB线接到jetson nano上 xff0c 另一端USB A接到电脑上为jetson nano插入电源 xff0c 开机等待电脑检测到如下盘符说明j
  • C中数据类型占用内存的大小

    数据类型表示存储何种类型的数据 xff0c 从内存来看 xff0c 就是占用的内存大小 C标准并未明确规定各数据类型占用多少字节的存储空间 各数据类型的内存大小与操作系统位数 编译器有关 xff0c 可以在代码中使用sizeof 进行查询
  • Linux与Windows文件系统互访

    1 概述 在软件开发过程中 xff0c 常涉及到Windows环境与Linux环境之间的切换 xff0c 实现代码的实时同步能有效提高工作效率 CIFS协议介绍 Common Internet File System CIFS xff0c
  • SDK、API、MDK、RTK有关系吗?到底是什么东西呢?

    SDK 软件开发工具包 缩写 SDK 外语全称 Software Development Kit 一般都是一些软件工程师为特定的软件包 软件框架 硬件平台 操作系统等建立应用软件时的开发工具的集合 软件开发工具包括广义上指辅助开发某一类软件
  • 大疆M3508电机使用CAN通信进行速度PID闭环控制详解

    目录 一 简介二 电机通信协议三 电机PID控制原理四 官方代码移植 中断接收五 官方代码移植 查询接收 一 简介 之前写过一篇文章STM32实现四驱小车 xff08 五 xff09 电机控制任务 电机速度PID控制算法 xff0c 其中是
  • 大疆M3508电机位置与速度PID控制及自编上位机调参

    目录 一 简介二 电机位置 速度 电流三闭环PID控制原理三 STM32实现位置 速度控制 xff08 一 xff09 电机数据接收 xff08 二 xff09 一些全局变量 xff08 三 xff09 电机PID初始化与位置 速度PID计
  • 相机内参与外参学习记录与理解

    1内参 内参 xff1a 在小孔成像模型中有一个光点P xff0c 其将光以直线的方式穿过纸板的小孔 光心 xff09 xff0c 射到显示纸板 xff08 物理成像平面 xff09 上 xff0c 其坐标系结构如下图所示 而内参的作用即是
  • 现代颜色技术原理及应用学习记录

    感谢CRFX下面分享的书 第一章
  • 【计算机网络】常见的HTTP报文头部信息

    常见的HTTP报文头部信息 HTTP首部字段根据实际用途被分为以下4种类型 1 通用首部 通用首部字段 xff08 General Header Fields xff09 请求报文和响应报文两方都会使用的首部 Cache Control x
  • imagenet 数据集读取数据速度记录

    电脑配置是固态硬盘 xff0c i7cpu xff0c 不进行计算 xff0c 只读数据 xff0c 不做数据增广 xff0c 只做resize 只看不赞不文明 xff0c 这是大约花费两天时间测试结果 目录 xff1a 1 xff0c 最
  • c++调python踩坑日志

    目录 import array 报错 矩阵互相转换 include numpy相关vs2019配置 数组太长报错 import array 报错 参考 xff1a https blog csdn net weixin 40232401 ar
  • pytorch 半精度训练

    必坑记录 这种训练直接变成nan了结果 实验结果 前者采用正常训练 后者改进为 from torch cuda amp import autocast as autocast 实验发现从一epoch44秒 xff0c 减少为35秒 但是训练
  • earth mover‘s distances学习记录

    https zhuanlan zhihu com p 145739750 后面的感觉没讲清楚 一开始我没想清楚 xff0c 为什么可以把问题转换成线性规划问题 问题转换一下 xff0c 一个工厂有A xff0c B xff0c C三个仓库
  • A Tutorial on Energy-Based Learning(机器学习能量模型)学习记录

    1 Introduction 其中Y是标签 X是输入 基于能量的机器学习模型即是寻找这样一个函数 和输入数据越接近 能量越小 给定一个输入 最好的模型即是对应的Y的值是真实值 这个真实值的能量是最小的 此模型可以做的工作有 预测 Ranki
  • dncnn(残差网络图像去燥记录)

    一 xff0c 生成训练数据 1 xff0c 原文相关知识 we use the noisy images from a wide range of noise levels e g 0 55 to train a single DnCNN
  • win10 10016自动重启错误解决记录

    1 xff0c 没解决 1352127440 xff0c 找到 组件服务 xff0c 然后依次展开组件服务 计算机 我的电脑 DCOM配置 xff0c 找到 9CA88EE3 ACB7 47C8 AFC4 AB702511C276 xff0
  • 无偏估计、有效性、相合性

    定义 xff1a 在已知概率分布函数构造的情况下 xff0c 概率分布的一些参数未知 xff0c 如高斯分布的namda 方差 xff0c 而利用采集到的参数来对未知参数进行估计就是参数估计 比较基础的有矩估计 最大似然估计 而不同的方法对
  • Windows10下安装point-cloud-annotation-tool点云标注工具——吐血之路总结

    零 为了标注点云数据 xff0c 经过多方查找免费开源的标注软件 xff0c 根据使用要求和方便程度最终选择了这款可以在Windows下编译安装的point cloud annotation tool xff0c 基于QT和vtk和PCL进