DBSCAN聚类

Density-based spatial clustering of applications with noise https://static.hlt.bme.hu/semantics/external/pages/deep_learning/en.wikipedia.org/wiki/DBSCAN.html 理论 考虑某个空间中的一组要聚类的点。设 \(\varepsilon\) 是一个参数,指定邻域相对于某个点的半径。出于DBSCAN聚类的目的,这些点被分类为核心点、(密度)可达点和异常值,如下所示: ...

TARE论文阅读

《TARE: A Hierarchical Framework for Efficiently Exploring Complex 3D Environments via Smoothing and Mapping》 论文网站:https://www.cmu-exploration.com/tare-planner 相关工作 Frontier-based Exploration(基于前沿探索):已经建图区域和没有建图区域的边界。探索的时候,机器人朝着前沿走,不断扩展已经建图区域知道整个环境已经被探索。虽然这些方法中的大多数都贪婪地选择边界进行探索,但Faigl和Kulich的方法通过解决画廊问题的变体来确定覆盖边界的最小视点集。类似地,我们的方法也找到最小视点集,但通过递归和随机采样视点来实现。 ...

Ubuntu下的GitLab服务器搭建和配置

GitLab安装 curl https://packages.gitlab.com/gpg.key 2> /dev/null | sudo apt-key add - &>/dev/null sudo echo "deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu `lsb_release -cs` main" > /etc/apt/sources.list.d/gitlab-ce.list sudo apt-get update sudo apt-get install gitlab-ee 修改/etc/gitlab/gitlab.rb文件,尤其是external_url,可以改为局域网的域名,例如code.io ...

常用的脚本整理

检查各个ros包仓库git状态 #!/usr/bin/python3 import os import subprocess import sys from prettytable import PrettyTable # 获取命令行参数 dir = sys.argv[1] # 切换到指定目录 os.chdir(dir) # 获取当前目录下的所有子目录 subdirs = [d for d in os.listdir('.') if os.path.isdir(d)] # 创建表格 table1 = PrettyTable(['子目录', '工作区', '本地分支']) table2 = PrettyTable(['子目录', '工作区', '本地分支']) # 遍历所有子目录 for subdir in subdirs: # 检查子目录是否是Git仓库 if os.path.exists(os.path.join(subdir, '.git')): # 切换到子目录 os.chdir(subdir) # 检查工作区是否clean if subprocess.call(['git', 'diff', '--quiet']) == 0: workspace = 'clean' else: workspace = 'dirty' # 检查本地分支是否和远程分支保持同步 if subprocess.call(['git', 'diff', '@{upstream}', '--quiet']) == 0: branch = '同步' else: branch = '不同步' # 添加行到表格 if workspace == 'clean' and branch == '同步': table1.add_row([subdir, workspace, branch]) else: table2.add_row([subdir, workspace, branch]) # 切换回上级目录 os.chdir('..') # 打印表格 print('符合条件的结果:') print(table1) # 打印表格 print('不符合条件的结果:') print(table2) 下载Google Drive文件脚本 原脚本地址: https://github.com/HongbiaoZ/autonomous_exploration_development_environment/blob/melodic/src/vehicle_simulator/mesh/download_environments.sh ...

Git命令使用记录

子仓库 移动子仓库 打开命令行终端,并进入包含 Git 仓库的父目录。 使用以下命令进入子模块所在的目录: cd path/to/submodule 将 path/to/submodule 替换为您子模块的实际路径。 使用以下命令将子模块的路径更改为新的目标路径: ...

Logseq笔记使用记录

快捷键 快捷键 作用解释 CTRL+K 搜索页面或创建新的页面 CTRL+Enter 转为待办任务 功能使用 别名 alias:: name1, name2 标题 title:: this is my title 属性 property:: value 内置属性: 值 作用 icon 页面的图标 title 标题,带空格标题要加 tags 标签 template 把一个页或者块设置为标题 template-including-parent 指定在使用模板时是否应包括所选块的父级内容 alias 别名 filters 设置链接的引用展示内容(下面) public 是否可以导出 exclude-from-graph-view 不在图谱上显示出来 隐藏的内置属性: ...

Scan Context论文阅读

介绍 亮点: 高效的数据编码方式。这种编码对点云的密度和法线具有不变性。 保存点云的内部结构。 有效的两相匹配算法。 与其他最先进的空间描述符进行了彻底的验证。 图1 ...

PID控制算法

流程 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> 输入输入比例调节比例调节积分调节积分调节微分调节微分调节执行机构执行机构测量元件测量元件++--输出输出Viewer does not support full SVG 1.1 代码 限制速度加速度的PID控制 ...

Pure Pursuit路径跟踪算法实现

介绍 纯跟踪算法是一种路径跟踪算法,它通过计算曲率来将车辆从其当前位置移动到某个目标位置。该算法的整个重点是选择一个距离车辆在路径上前方一定距离的目标位置。纯跟踪算法这个名称来源于我们用来描述该方法的类比。我们倾向于认为车辆正在追逐其前方某个距离的路径上的点——它正在追求那个移动点。这种类比通常用来将此方法与人类驾驶方式进行比较。我们倾向于看着汽车前面一段距离并朝着那个位置行驶。这种预瞄性距离会随着我们行驶而改变,以反映道路的扭曲和视觉遮挡。 ...

自动驾驶中的路径规划

自动驾驶中的路径规划分为 pipeline planning 和 end-to-end planning pipeline planning:基于规则的规划方式,需要和其他自动驾驶任务一起完成,比如感知、定位和控制。好处是可以理解的,当某个流程出问题后能够很快确认。 ...

UE5开发HoloLens遇到的坑和应对方法

第三方库 源码编译 对于第三方库最好是使用源码和UE工程代码一起编译,出问题的几率最小,但是需要把编译脚本自己改成UnrealBuildTools的C#,需要视工程大小来确定 ...

Blender使用记录

快捷键 Shift+R: 重复上一步操作 Alt+MB_M: 切换到旋转中心 Shift+C: 全部居中 Tab: 进入编辑模式 Shift+Tab: 切换到上一模式 Ctrl+Tab: 模式切换菜单 Ctrl+P: 设置父对象 Ctrl+Shift+C: 骨骼间约束 Alt+MB_L: 编辑模式选中环 Ctrl+L: 选中关联项 F: 两点连线,三点建面 ...

RIME输入法配置记录

设置双拼 自动安装失败,从github下载配置文件到安装程序文件夹data目录,设置default.yaml,末尾添加double_pinyin_flypy: schema_list: - schema: luna_pinyin - schema: luna_pinyin_simp - schema: luna_pinyin_fluency - schema: bopomofo - schema: bopomofo_tw - schema: cangjie5 - schema: stroke - schema: terra_pinyin - schema: double_pinyin_flypy 重新部署,在设置界面勾选小鶴雙拼 其他配置 用户目录:default.custom.yaml ...

UE5问题记录和解决清单

代码中使用了try/catch报错的问题 error C4577: 'noexcept' used with no exception handling mode specified; termination on exception is not guaranteed. Specify /EHsc 在模块的编译选项.Build.cs文件中打开相关的编译选项bEnableExceptions __std_init_once_link_alternate_names_and_abort问题 查看:UE5链接GRPC出现__std_init_once_link_alternate_names_and_abort问题 TP_VirtualRealityBP包解析失败 LogFeaturePack: Error: Error in Feature pack D:/Epic_Games/UE_5.0/FeaturePacks/TP_VirtualRealityBP.upack. Failed to parse manifest: Invalid Json Token. Line: 43 Ch: 4

TrueNAS配置使用记录

准备工作 目标准备一个固态盘当系统盘,还有一个磁盘当存储池。 注意:固态盘和磁盘中的文件都将被清空重新分区,务必备份好数据! 镜像准备 下载Ventory制作一个多功能的启动盘,然后从官网下载TrueNAS Scale镜像拷贝到U盘。 ...