3D点云数据的标定,从搭建环境到点云标定方法及过程,只要有一台Windows笔记本,让你学会点云标定

news2024/11/16 2:49:49

ptscloudpre: 点云标定准备:

说明:

如下介绍适用windows系统的电脑。apple笔记本同理,但是需要安装MAC版本的anaconda。网址:Free Download | Anaconda可下载对应MAC版本的Anaconda的安装包建议下载2022年或2021年的安装包安装。

1 先安装anaconda的环境

文件夹中包含此Anaconda安装包,全称如下(这是2021年的安装包):

Anaconda3-2021.05-Windows-x86_64.exe

1.1 双击Anaconda3-2021.05-Windows-x86_64.exe,一路next进行安装,相关过程截图如下:

双击Anaconda3-2021.05-Windows-x86_64.exe后,弹出:

在这里插入图片描述

然后选择“I Agree”

然后“Next”

然后设置路径, 并“Next”:如下图

在这里插入图片描述

然后“Install”

在这里插入图片描述

等待一段时间,

页面提示Completed之后,点击“Next”。然后Next,然后finish.

此时安装完成。

此时,开始,所有应用会新增anaconda,如下

在这里插入图片描述

2 安装SUStech相关(需连接有线或无线网络)

2.1 点击下图中的anaconda prompt(anaconda)

在这里插入图片描述

  1. 2下图可以看出我的账户是Users,用户名是VRC_Cal。

在这里插入图片描述

命令行输入命令如下,然后回车,根据命令输出,可以看出conda 的环境此时只有base。

conda env list

2.3 然后根据如下命令创建搭建sustech环境的虚拟环境。注意,可以看截图中“(base) C:\Users\VRC_Cal>” 的后面我输入的命令即可。即输入“conda create --name sustech python=3.8 -y”,然后回车。

在这里插入图片描述

上面截图中的命令包含如下:这句命令的意思是创建一个名字是sustech的虚拟环境。

conda create --name sustech python=3.8 -y

上述命令包含的打印还有如下图

在这里插入图片描述

上图看出,已经安装了一些基本的库,如wheel-0.41.2、… … 、python-3.8.18。

2.4 拷贝【cloudpre】中的【SUSTechPOINTS】到本地的英文呢路径下,如我的路径是在“D:\myWork\SUSTechPOINTS”路径,注意,引号中的路径不能出现中文。

2.5 通过如下命令将anaconda prompt界面中的路径从"C:\Users\VRC_Cal>"转到2.4的路径“D:\myWork\SUSTechPOINTS”。注意,如下命令需根据自己本地路径做调整,下述只是针对我本地电脑的示例。包括截图如下。

cd ..
cd ..
D:
cd myWork
cd SUSTechPOINTS

在这里插入图片描述

2.6 然后通过如下命令激活刚才创建的虚拟环境(上面的截图中也有示例)

conda activate sustech

在这里插入图片描述

可以看出,左侧括弧()中的环境从 base变成了 sustech

2.7 在sustech环境下安装cpu版本的torch。通过如下命令, 输入如下命令,回车

conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 cpuonly -c pytorch

安装过程部分截图如下:

在这里插入图片描述

… …

如下询问时,输入“ y ”然后回车,就开始安装torch相关的一些包了。

在这里插入图片描述

安装完成后,如下述截图, 打印会包含如下图所示的“done”字样。

在这里插入图片描述

上面如果没有出现done,可能是由于网络原因没有安装成功,需重新输入命令安装。

2.8 继续安装其他相关的依赖包(放心好啦,这些都是很小的包,就相当于你装好Office之后,word wps ppt都可以打开一样)

通过如下述代码进行安装。注意,如截图所示,如下命令一定在SUSTechPOINTS路径下进行。

输入下述命令,回车

pip3 install -r requirement.txt

上述命令的部分截图如下(可能需要等待几分钟(10多分钟,视网速而定)。由于较多打印,所以只截取部分截图):

在这里插入图片描述

… …

在这里插入图片描述

上面截图中包含 Successfully uninstalled typing_extensions-4.9.0
Successfully installed absl-py-2.1.0 astunparse-1.6.3 autocommand-2.2.2 cachetools-5.3.2 cheroot-10.0.0 cherrypy-18.9.0 contourpy-1.1.1 cycler-0.12.1 filterpy-1.4.5 flatbuffers-23.5.26 fonttools-4.47.2 gast-0.4.0 google-auth-2.27.0 google-auth-oauthlib-1.0.0 goog… …等内容。可以看出成功安装了一系列相关的依赖包。

2.9 通过输入如下命令,然后回车,启动程序,可能需要略等几秒钟。

python main.py

正常情况下,会打印如下信息,

在这里插入图片描述

… …

在这里插入图片描述

注意,上述完成之后,【anaconda prompt(anaconda)】这个界面的黑框框一直不能关闭哟,如果不标注的话,才能关闭。

2.10 浏览器进入网址 http://127.0.0.1:8081就可以打开标定界面。

如下图所示

在这里插入图片描述

2.11 选择要标定的数据,如下图,左上角选择myData , myData的右侧选择要标定的数据(infused_1…等),则可以开始标定。

在这里插入图片描述

3 新的一组数据来了,标定方法:

3.1 点云数据准备:这个是需要标定的数据,包含如下子文件夹目录,myData也可能是其他名称,如"mydata0129tyh",但里面必定包含“lidar”“label”“camera”这三个文件夹

/myData
/myData/lidar  # 需要标定的点云数据
/myData/label  # 此文件夹必须有,否则保存数据的时候将会报:save failed,status:500
/myData/camera # 如有不同角度的相机图片,若没有,则无

3.2 将上述myData保存在SUSTechPOINTS项目对应的data目录下

SUSTechPOINTS/data/

此时,SUSTechPOINTS/data目录下包含

SUSTechPOINTS/data
				——————example  # 示例数据,myData的递归目录格式参看此数据的递归目录
				——————myData   # 自己需要标定的数据

3.3 在sustech的环境下启动命令打开标定界面

打开Anaconda Prompt 命令窗口,参见2.1节

conda env list
conda activate sustech
cd SUSTechPOINTS   # 这句话如果进不到SUSTechPOINTS目录,则参见2.5节切换路径
python ./main.py

再通过浏览器进入网址【 http://127.0.0.1:8081】就可以打开标定界面。
3.4 标定界面开始标定(标定过程如果不确定目标是哪一种类型,就找对应的图片看,尤其是行人等待区的目标是骑车的人还是单独的人的类型的区分)

① 进入网址 http://127.0.0.1:8081

在这里插入图片描述

② 打开 myData数据

在这里插入图片描述

③ 标定目标:给目标打3DBox (详情参见:https://gitee.com/cuge1995/SUSTechPOINTS)

  1. 1.  右键移动点云数据界面
    2.  滚轮放大缩小点云数据界面
    3.  新加Box方法:尽量鸟瞰图角度,按住Shift/Ctrl(常用Ctrl),鼠标左键针对目标拉一个矩形框,会生成Box。Box生成之后,需要手动调整 方向 或 宽 高 长。
    

    如下图是Ctrl+鼠标左键矩形框,后的结果:

    在这里插入图片描述

上图中不匹配的地方,经调整后,正确的标注结果为下图所示:

在这里插入图片描述

④ 所有目标标注结束后,在myData/label目录下会包含文件如下

myData/label/infused_1.json

⑤ 标定过程中,如下图所示Output界面可以关掉

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1410198.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

nginx限制ip访问

先看一下被禁止的效果 如何配置 禁止访问的话直接在location模块增加类似如下配置 deny all; 完整示例 location / {deny all;root html;index index.html index.htm;} 默认是allow all就是允许所有ip访问,如果只配置指定ip可以访问是无效的,还是所有的ip可以访问 无效示例…

【UAT阶段】测试计划分享

前面我有分享UAT阶段注意事项,今天跟大家分享UAT测试计划包含哪些内容: 希望该计划能给大家在实际项目中有所帮助;

k8s图形化管理工具之rancher

前言 在前面的k8s基础学习中,我们学习了各种资源的搭配运用,以及命令行,声明式文件创建。这些都是为了k8s管理员体会k8s的框架,内容基础。在真正的生产环境中,大部分的公司还是会选用图形化管理工具来管理k8s集群,大大提高工作效率。 在二进制搭建k8集群时,我们就知道了…

java web 研究生信息管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 java Web研究生信息管理系统是一套完善的java web信息管理系统 ,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境 为TOMCAT7.0,Myeclipse8.5开发,数据库为My…

【MySQL故障】主从延迟越来越大

问题背景 研发执行了一个批量更新数据的操作,操作的表是个宽表,大概有90多个字段,数据量有800多w,但是研发是根据ID按行更新。更新开始后,该集群的主从延迟越来越大。 问题现象 1 从库应用binlog基本无落后&#xf…

【腾讯云服务器】幻兽帕鲁私服服务器部署保姆级教程

在帕鲁的世界,你可以选择与神奇的生物「帕鲁」一同享受悠闲的生活,也可以投身于与偷猎者进行生死搏斗的冒险。帕鲁可以进行战斗、繁殖、协助你做农活,也可以为你在工厂工作。你也可以将它们进行售卖,或分解后食用。 想要部署属于自…

IDEA常用插件(本人常用,不全)

文章目录 一、图标提示类插件1、Lombok插件(用户配合lombok依赖的工具)2、MybatisX插件3、GitToolBox4、VUE.js5、ESLint 二、代码自动生成插件1、EasyCode插件:自动生成代码神器2、GsonFormat 三、常用工具类1、IDE Eval Reset 插件&#xf…

解读Android进程优先级ADJ算法

本文基于原生Android 9.0源码来解读进程优先级原理,基于篇幅考虑会精炼部分代码 一、概述 1.1 进程 Android框架对进程创建与管理进行了封装,对于APP开发者只需知道Android四大组件的使用。当Activity, Service, ContentProvider, BroadcastReceiver任一组件启动时,当其所…

python小项目:口令保管箱

代码&#xff1a; #! python3 # python 编程-----口令保管箱passwords{emails: F7minlBDDuvMJuxESSKHFhTxFtjVB6,blog:VmALvQyKAxiVH5G8v01if1MLZF3sdt,luggage:12345,} import sys,pyperclip if len(sys.argv)<2:print(usage:python python3文件[accout]-copy accout pass…

大模型学习笔记一:大模型应用开发基础

文章目录 一、大模型一些概念介绍 一、大模型一些概念介绍 1&#xff09;产品和大模型的区别&#xff08;产品通过调用大模型来具备的能力&#xff09; 2&#xff09;AGI定义 概念&#xff1a;一切问题可以用AI解决 3&#xff09;大模型通俗原理 根据上文&#xff0c;猜测下…

100.乐理基础-五线谱-是否需要学习五线谱

内容参考于&#xff1a;三分钟音乐社 上一个内容&#xff1a;99.乐理基础-简谱的多声部-CSDN博客 简谱与五线谱的区别&#xff0c;各自的优劣势、使用场景、范围等&#xff1a; 要搞懂这个问题&#xff0c;其实核心就是四个词&#xff1a;首调、固定调、单声部、多声部 首调、…

github ssh ssh-keygen

生成和使用 SSH 密钥对是一种安全的身份验证方式&#xff0c;用于在你的本地系统和 GitHub 之间进行身份验证。以下是在 GitHub 上生成和使用 SSH 密钥对的基本步骤&#xff1a; 1. 生成 SSH 密钥对 在命令行中执行以下命令来生成 SSH 密钥对&#xff1a; ssh-keygen -C &q…

计算机速成课Crash Course - 23. 屏幕 2D 图形显示

今天继续计算机速成课Crash Course的系列讲解。 更多技术文章&#xff0c;全网首发公众号 “摸鱼IT” 锁定 -上午11点 - &#xff0c;感谢大家关注、转发、点赞&#xff01; 计算机速成课Crash Course - 23. 屏幕& 2D 图形显示 (qq.com) 23. 屏幕& 2D 图形显示 这台…

YOLOv5改进系列(28)——添加DSConv注意力卷积(ICCV 2023|用于管状结构分割的动态蛇形卷积)

【YOLOv5改进系列】前期回顾: YOLOv5改进系列(0)——重要性能指标与训练结果评价及分析 YOLOv5改进系列(1)——添加SE注意力机制

06.Elasticsearch应用(六)

Elasticsearch应用&#xff08;六&#xff09; 1.什么是分词器 ES文档的数据拆分成一个个有完整含义的关键词&#xff0c;并将关键词与文档对应&#xff0c;这样就可以通过关键词查询文档。要想正确的分词&#xff0c;需要选择合适的分词器 2.ES中的默认分词器 fingerprint…

软件游戏提示msvcp140.dll丢失的解决方法,全面分析msvcp140.dll文件

msvcp140.dll是Microsoft Visual C 2015 Redistributable的一部分&#xff0c;它包含了许多用于运行程序的函数和类库。当这个文件丢失或损坏时&#xff0c;依赖于该组件的应用程序可能无法正常启动&#xff0c;系统会弹出错误提示&#xff0c;告知用户找不到msvcp140.dll文件。…

【寒假打卡】Day02

文章目录 选择编程NC31 第一个只出现一次的字符面试题 01.01. 判定字符是否唯一 选择 以下程序运行后的输出结果是&#xff08; &#xff09; #include <stdio.h> void fun(char **p) { int i; for(i 0; i < 4; i) printf("%s", p[i]); } in t main() { …

河南嘉家购商贸有限公司获绿色积分信用认证

“实现绿色产业、打造完善的绿色产业链、走可持续发展共创共赢”。近日&#xff0c;河南嘉家购商贸有限公司获得绿色积分认证&#xff0c;确认了该企业在绿色消费积分领域的领先地位。 据了解&#xff0c;河南嘉家购商贸有限公司始终将绿色积分视为企业发展的核心要素。全面优化…

使用collection.Counter实现统计简化

背景介绍 在python的应用场景中&#xff0c;我们常常需要通过建立统计表来对某一个数据集中某些数据出现次数的统计&#xff0c;这时候经常会使用到python的字典数据类型建立映射表&#xff0c;一般的方法可能会比较繁琐&#xff0c;本篇博客介绍collection.Counter方法帮助简…

[Python] KDE图[作密度图(Kernel Density Estimate,核密度估计)]介绍和使用场景(案例)

KDE图是什么&#xff1f; 核密度估计&#xff08;Kernel Density Estimate&#xff0c;KDE&#xff09;是一种非参数统计方法&#xff0c;用于估计未知随机变量的概率分布。它通过在每个数据点附近放置一个核函数&#xff0c;并将这些核函数加总起来&#xff0c;得到对概率分布…