自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(235)
  • 资源 (6)
  • 问答 (2)
  • 收藏
  • 关注

原创 CloudCompare 中的 KDTree详解

速度更快,因为它不需要返回最近点的具体索引。构建 KD 树后,点云数据被组织成。计算点到 KD 树单元格的平方距离。在 CloudCompare 进行。加速最近邻搜索,从而提高计算效率。✅ CloudCompare 通过。CloudCompare 中的。CloudCompare 通过。CloudCompare 使用。CloudCompare 进行。,仅判断是否存在某个点在。方面更高效,特别是在。主要由 KdCell。,便于加速最近邻搜索。

2025-05-02 20:32:15 423

原创 CloudCompare中CCCoreLib模块内容

在的代码结构中,CCCoreLib(CloudCompare Core Library)是,主要用于等底层算法实现。该模块提供了等核心功能,并且可以独立于 CloudCompare 主程序使用。CCCoreLib提供基础数学运算,包括等。

2025-05-01 18:31:49 437

原创 张正友相机标定算法(Zhang’s camera calibration method)原理和过程推导(附OpenCV代码示例)

张正友方法通过平面靶标图像(如棋盘格)的多个视角图像,提取角点特征,求解从平面到图像的单应性矩阵,再从中估计相机内参、外参及畸变参数。

2025-04-30 14:53:07 1059

原创 Windows 中的 bat(批处理)文件处理使用教程典型实例和实战技巧

bat。

2025-04-30 14:12:25 693

原创 常用开发脚本工具推荐

tools.py'''删除 N 天前文件'''

2025-04-30 09:30:22 427

原创 C++ 中自主内存管理 new/delete 与 malloc/free 完全详解

项目说明1new和delete要成对使用2new[]和delete[]要成对使用不是 delete!!!3不要混用malloc和delete,或new和free严重错误!4避免内存泄漏:申请的内存必须释放,否则内存泄漏5申请后立即检查返回值malloc返回 NULL,new可以捕捉异常6构造/析构问题malloc不负责对象构造,new是7自定义 new/delete:可以通过重载控制内存分配策略(如内存池优化)8异常安全:尽量使用智能指针(如)避免手动管理内存错误。

2025-04-29 22:34:07 441

原创 后验概率最大化(MAP)估计算法原理以及相具体的应用实例附C++代码示例

MAP估计 = 在最大似然上加上先验知识,让推断更加鲁棒。对象含义似然拟合观测数据的准确性先验防止参数过大(正则化)MAP估计似然 × 先验的最大化公式最小化误差项 + 正则项你希望拟合数据,同时又不希望参数太大(比如防止过拟合)。正则化参数λλ越大,先验越强,越倾向于把ab( a, b )ab拉向 0。

2025-04-29 17:14:01 1012

原创 C++中指针使用详解(3)数组、指针和函数参数传递的底层 ABI实现

函数如何调用(参数传递、返回值)栈帧布局(局部变量、返回地址、保存寄存器)调用约定(Calling Convention)数据的对齐方式(alignment)如何在内存中布局结构体、数组、类对象等例如:x86_64 系统通常使用。

2025-04-29 09:54:09 512

原创 Qt+PCL手把手教材(第5讲)——Qt 界面设计之Qt Widgets 与 Qt Quick(QML)的区别与选择(附Qt Widgets/Quick常规使用示例)

在中,和都是开发图形用户界面(GUI)的框架,但它们有不同的特点、适用场景和优缺点。理解它们之间的区别能够帮助你根据项目需求选择最适合的框架。是传统的 GUI 框架,它通过 C++ 编写和管理界面元素,适用于经典的桌面应用程序。它使用的是基于事件驱动的编程模型,利用传统的控件(如按钮、文本框等)来构建 UI。回调和信号槽机制。

2025-04-28 21:10:54 1459

原创 线性代数的本质大白话理解

【代码】线性代数的本质大白话理解。

2025-04-28 14:03:46 1159 1

原创 C++中指针使用详解(2)指针与函数参数、数值和内存申请释放

int x, y;delete pt;

2025-04-28 09:27:13 533

原创 Python中数据切片操作详解和代码示例

在 Python 中,(slicing)是一个强大且常用的操作,尤其在列表、元组、字符串和其他序列类型(如rangenumpy数组等)中。切片允许你从序列中获取一个子集而不修改原始数据。

2025-04-27 15:33:40 398

原创 matplotlib画图工具使用(1) 画折线统计图python代码

plot(x, y)画线marker='o'在每个数据点加个小圈(好看!title()xlabel()ylabel()加标题grid(True)加网格线(统计图必备)

2025-04-26 21:45:45 248

原创 C++中const的应用(1)之const 形参和实参以及成员函数的 const 和重载

场景写法意义小对象传值不用const,没影响大对象传引用节省拷贝,安全修改指针指向内容可以改指向的内容保护指针指向内容不能改内容固定指针地址不能改指针本身区别解释返回非常量引用,可以赋值修改返回常量引用,只能读,不能改只有写了const版本,才能让const对象正常调用函数!特性说明const 成员函数声明时在函数末尾加const重载 const 和非const常见于operator[]at()const对象 只能调用 const成员函数所以经常要写两版。

2025-04-26 21:42:21 1046

原创 AI图像分割总汇

AI 图像分割模型是计算机视觉中的核心研究方向之一,广泛用于自动驾驶、医学影像、遥感图像分析等领域。下面是对图像分割模型的一些,按与进行系统整理。

2025-04-25 14:17:17 653

原创 C++中指针Ptr(一级指针、二级指针)的基本使用详解(1)

一级指针是指向变量的地址的指针。int a = 10;// p 是一个一级指针,指向变量 a二级指针是指向一级指针的指针。int a = 10;// pp 是二级指针,指向 p类型描述主要用法一级指针指向普通变量的地址传值修改、数组遍历、内存动态分配二级指针指向一级指针的地址指针重定向、二维数组、传引用修改指针数组连续内存块,数组名是首元素地址数据集合存储,和指针语法可互换使用。

2025-04-25 11:12:48 334

原创 Qt+PCL手把手教材(第4讲)——Win11环境(VTK9.1.0+Qt5.15.2)编译QVTK组件以及Linux上安装PCL库

在 Linux 上配置。

2025-04-24 22:43:27 1443

原创 点云配准算法之NDT算法原理详解

NDT(Normal Distributions Transform)最初用于2D激光雷达地图构建(Biber & Straßer, 2003),后扩展为3D点云配准。它将点云数据空间划分为网格单元(Voxel),在每个体素中拟合一个高斯分布,用此概率模型对点进行匹配优化。与 ICP 不同,NDT 是一个概率模型配准算法,具有更强的鲁棒性,适合处理稀疏/局部不一致的点云。对初始姿态误差鲁棒可导目标函数,利于快速优化支持稀疏点云、动态场景(配合滤波)

2025-04-24 11:29:52 812

原创 C++ 中 std::tuple 使用详解

是 C++11 引入的模板类,用于打包任意数量、任意类型的值在一起。可看作是类型安全的变长结构体。创建 tuple 的方法 会自动进行类型推导和转化。获取类型 & 大小修改元素值拆解 tuple(结构化绑定)C++17 提供结构化绑定:tuple 的比较、赋值高级技巧:递归访问 tuple遍历 tuple 中所有元素(使用模板递归)对每个元素执行函数(C++17 )根据类型访问 tuple 元素(要求类型唯一)与 结合解包、忽略元素tupl

2025-04-24 11:15:20 317

原创 C++ 中 std::thread 的高级应用

✅ 线程内部用控制退出比 bool 更安全✅ 类内线程要在析构时妥善停止并 join✅ 避免裸线程泄露:用类、封装、RAII 管理生命周期✅ 封装成线程池/任务队列是多线程项目的基础。

2025-04-23 23:16:02 417

原创 C++中std::vector使用超级详解

是 C++ STL 中最常用的动态数组容器支持随机访问内存是一块连续的空间自动扩容,支持添加和删除元素方法作用内存是否释放clear()清除所有元素❌ 不释放内存(capacity 保留)请求释放多余内存✅ 释放未使用容量(非强制)swap()与空 vector 交换,强制释放✅✅ 推荐方式简写版强制释放✅✅ 推荐方式目标推荐操作清除数据,但保留内存用于重用clear()清除数据 + 建议释放内存clear();清除数据 + 强制释放所有内存。

2025-04-23 11:05:52 839

原创 C++ 中 std::queue的使用详解

std::queue是 C++ 标准库中提供的一个**先进先出(FIFO)**的顺序容器适配器。入队(push):元素从尾部(back)插入;出队(pop):元素从头部(front)移除。std::queue是容器适配器(container adaptor),底层默认使用std::deque作为实现容器,但你也可以替换为std::list等。while (!

2025-04-23 09:55:58 876

原创 AI在 SLAM方向的应用综述

AI 技术正深刻改变 SLAM 系统的架构与能力。从传统几何方法到学习驱动模型,AI 推动 SLAM 向更智能、鲁棒、语义化的方向发展。未来的 SLAM 系统将更多地融合 AI 与物理世界知识,走向真实世界中的可靠部署。

2025-04-22 13:49:13 755

原创 RANSAC算法原理以及附C++代码拟合2D直线

Inliers:服从假设模型的数据点Outliers:不服从该模型的噪声点模型:我们要拟合的函数(如线、平面、变换矩阵)项内容优点鲁棒性强、可估计各种模型、易于实现缺点随机性大、结果不稳定、耗时、依赖参数扩展PROSAC、MLESAC、LO-RANSAC、GC-RANSAC(图优化)

2025-04-22 11:05:28 691

原创 C++ 中函数参数传递(值传递、指针传递、引用传递和const 引用传递)等内容详解

用途推荐方式小型类型(int, double)值传递只读大型对象(std::vector 等)const 引用传递可修改对象引用或指针传递(引用更安全)条件修改或可能为 null指针传递移动资源所有权右值引用(+std::move。

2025-04-22 10:24:40 349

原创 C++中的算术转换、其他隐式类型转换和显示转换详解

转换类型触发方式安全性用途/说明算术转换自动安全数值运算中的标准提升隐式转换自动通常安全函数调用/指针/基本类型提升显式安全编译期可检查的转换,如 int→float,向上转型显式安全多态类型的运行时向下转型const_cast显式有风险去除 const/volatile显式不安全位级别转换,极端情况用C风格强制转换显式不推荐混合多个C++转换,缺乏类型安全shape.h。

2025-04-21 21:19:52 873

原创 C++中的未定义详解

未定义行为是由 C++ 标准规定的,是指程序中的某些代码没有定义明确行为的执行结果。发生 UB 后,编译器有权做任何优化,甚至生成无法预测的机器码。标准里常说:“if the program exhibits undefined behavior, anything can happen.”数组越界访问// 未定义行为:越界访问虽然有时不会崩,但标准不保证结果。int i = 0;// 不可预测未定义行为是 C++ 的“地雷”,虽然允许编译器优化,但容易让程序出现难以调试的 bug。

2025-04-21 10:49:01 383

原创 C++中的左值引用和右值引用详解

在 C++ 中,(lvalue reference)和(rvalue reference)是理解现代 C++ 语义的核心。它们决定了函数重载、移动语义、完美转发等特性如何工作。下面将分块来讲。

2025-04-21 09:51:36 455

原创 Mesh模型孔洞修补算法总汇

孔洞(Hole):指 Mesh 拓扑中出现边界非闭合区域,通常表现为缺失面片,形成边界环(Boundary Loop)。如下图效果。

2025-04-19 11:03:34 1045

原创 C++中chrono计时器的简单使用示例

在 C++ 中进行计时(benchmark、函数运行时间、程序耗时分析)非常常见,推荐使用<chrono>,它简洁、跨平台、类型安全。

2025-04-19 10:09:19 299

原创 C++保存和读取txt格式的点云数据文件

在 C++ 中,保存和读取.txt格式的点云数据通常需要处理每一行的点坐标。x, y, z。

2025-04-18 14:04:37 206

原创 高效稳健的几何模型估计算法-Graph-Cut RANSAC(GC-RANSAC)

设点xi( x_i )xi​到模型θ( \theta )θ的残差为dxiθdxi​θ))Dili0ifli1anddxiθϵ1ifli1anddxiθ≥ϵ0ifli0anddxiθ≥ϵλ′ifli0anddxiθϵD_i(l_i) =Di​li​⎩⎨⎧​010λ′​ifli​1anddxi​θϵifli​。

2025-04-18 10:01:12 567

原创 Qt+PCL手把手教材(第3讲)——开发环境配置在 Windows /Linux上配置 Qt + PCL

在 Windows 上配置和。根据你选择的编译器,配置的方式略有不同。下面将分别介绍如何在和编译器下配置和开发环境。

2025-04-17 22:44:29 957

原创 C++11 多线程(std::thread)基本使用

是构建并发程序的起点,配合mutexatomicfuture可构建可靠多线程系统。

2025-04-17 13:44:33 258

原创 全蚁算法(Ant Colony Optimization,ACO)原理和C++实现

全蚁算法(Ant Colony Optimization,ACO)是一种模拟蚂蚁觅食行为的优化算法,属于群体智能算法。其灵感来源于蚂蚁在寻找食物的过程中,会通过释放信息素(pheromone)来相互传递信息,从而优化路径选择。全蚁算法通常用于解决最优化问题,特别是组合优化问题,如旅行商问题(TSP)、最大独立集、调度问题等。

2025-04-17 10:15:27 870

原创 C++中类拷贝、赋值与销毁详解

在 C++ 中,类的拷贝、赋值与销毁是涉及对象生命周期管理的重要概念。理解这些概念对于正确使用 C++ 至关重要,尤其是在处理动态内存分配或资源管理时。下面我会详细讲解这三个操作,并结合相关的例子进行说明。

2025-04-16 21:20:45 297

原创 C++中类的静态成员详解

在 C++ 中,类的静态成员是指与类本身而非与类的实例相关联的成员。静态成员属于整个类,而不是某个具体的对象。因此,静态成员在所有对象间是共享的,并且它们可以在没有创建类实例的情况下访问。静态成员通常用于存储所有对象共享的状态或计数等信息。静态成员变量是类的静态成员,属于类本身,而不是某个实例。它们在所有类的实例之间共享,所有实例访问相同的数据。静态变量必须在类外部定义和初始化。定义静态成员变量的语法:2. 静态成员函数静态成员函数只能访问静态成员变量或其他静态成员函数。静态成员函数不依赖于类的任何实例

2025-04-16 21:15:01 401

原创 模拟退火算法(Simulated Annealing,SA)原理和简版C++实现

模拟退火是一种强大的全局优化算法,适用于许多复杂的优化问题,特别是在无法保证解析解的情况下。通过适当的参数调整,可以使得该算法在各种实际问题中表现出色。

2025-04-16 09:46:27 1158

原创 C++中sizeof的使用和注意事项

sizeof是 C++ 中的一个,用于返回一个对象或类型所占的。它非常常用,尤其在处理底层数据结构、内存对齐、数组、结构体和类型推导等场景。

2025-04-15 15:45:48 497

原创 C++中的位运算符和八叉树(Octree)中的应用

位运算在 C++ 中是高效的,它不仅用于快速操作整数的二进制位,还能帮助我们解决诸如八叉树构建、图像处理、碰撞检测等领域中的性能瓶颈。在八叉树构建中,利用位运算来决定子节点,可以高效地管理三维空间的分割和节点访问。

2025-04-15 10:56:21 661

Qt Widgets 使用例子,覆盖常见控件和用法,适合刚入门 Qt 的开发者参考

Qt Widgets 使用例子,覆盖常见控件和用法,适合刚入门 Qt 的开发者参考。每个例子都是基于 `Qt Widgets` 模块,不使用 QML,适合与 VTK、OpenCV、PCL 等 C++ 库配合使用。 1. 基础窗口 + 按钮 2. 信号与槽(按钮点击响应) 3. 布局管理(QVBoxLayout、QHBoxLayout) 4. 带输入框的表单界面 5. QTableWidget 表格 6. QTimer + 动态更新

2025-04-28

Cmake软件3.15和3.22版本

CMake 是一个跨平台的自动化构建系统工具,它使用简单的文本文件(称为 CMakeLists.txt)来定义项目的构建过程。CMake 通过生成本地的构建系统文件(如 Makefile 或 Visual Studio 项目文件),使得开发者能够在不同平台和构建工具上构建项目,而无需修改源代码。

2025-04-20

番茄助手支持vs2010-2019,用于VS代码工具中的代码自动补全

番茄助手支持vs2010-2019,用于VS代码工具中的代码自动补全,适合于代码开发工作者

2025-04-20

BeyondCompare 代码对比工具,方便与开发对比和代码修改

BeyondCompare 代码对比工具,时候与代码开发工作者。

2025-04-19

Qt+PCL自编译PCL点云库,编译VTK(9.1.0)+Qt(5.15.2),可以将PCL库中的 pcl::visualization::PCLVisualizer用于在Qt中实现点云数据的可视化

Qt+PCL自编译PCL点云库,编译了VTK(9.1.0)+Qt(5.15.2),适合用于Qt+PCL开发的初学者、研究人员和如SLAM、点云数据处理和工业检测等相关行业工作者。Qt 与 PCL 的应用场景集合应用场景广泛,如三维重建与可视化、三维重建与可视化、医疗图像与手术规划、无人机与航空遥感、工业自动化与质量检测、增强现实与虚拟现实和农业与环境监测等,Qt 与 PCL 的结合能够极大地提升开发效率并增强应用的交互性和可视化效果。

2025-04-19

图像/点云非刚性检测和配准-非刚性检测,非刚性增强现实,实时可变形配准

提出了一种无需先验姿态知识的实时非刚性表面检测方法。该方法基于目标物体未变形图像与待检测图像之间的宽基线点匹配。匹配点不仅用于检测,还用于计算两图像间的精确映射。该算法对大变形、光照变化、运动模糊和遮挡具有鲁棒性,在2.8 GHz PC上以每秒10帧运行。我们通过真实修改变形表面纹理和处理复杂光照效果展示了其应用。 结合可变形网格与精心设计的鲁棒估计器是处理非刚性表面建模中大量参数的关键,即使在错误匹配率超过90%时仍能有效剔除异常值,远超实际需求。

2025-03-26

三维数字人重建、编辑与驱动PPT

三维数字人重建、编辑与驱动PPT

2025-01-21

SLAM技术详解及其项目应用场景与优化方案

内容概要:本文档详细介绍了同步定位与地图创建(SLAM)的基本概念、主流技术、结构组成及其在不同场景下的应用与挑战。探讨了基于滤波和优化算法的传感器融合方案,并分析了几种典型的SLAM解决方案,包括ElasticFusion、BundleFusion和InfiniTAM。文中还讨论了AI与SLAM技术的结合,以及针对具体项目的优化思路和技术选型。 适合人群:对SLAM技术感兴趣的初学者、研究人员、开发者和工程技术人员。 使用场景及目标:①理解和掌握SLAM的基本原理和技术路线;②对比不同SLAM方案的特点和优劣;③探索适用于特定项目的SLAM优化策略;④了解AI在SLAM领域的应用前景和挑战。 其他说明:文档不仅提供了理论知识,还包括实际案例和具体实施建议,适合希望深入了解SLAM技术并在实践中应用的相关人士。

2024-10-31

SVN Update出错问题解决工具包 Sqlite3.exe

SVN Update出错问题解决工具包 Sqlite3.exe

2024-10-31

FAST-LIO 文章解读和公式推到

FAST-LIO 文章解读和公式推到

2024-09-28

opencl-cplusplus学习指导手册

这是Opencl的C++使用手册,快速上手学习OpenCL加速计算的必备资料。

2021-04-14

ygz-stereo-inertial(立体匹配优化算法)

ygz-stereo-inertial(立体匹配优化算法)

2021-02-02

Opencl入门学习例子

OPencl入门学习简单例子,完整包含了opencl编程的步骤,可供参看学习。。一个完整的OpenCL加速技术过程涉及到平台(Platform)、设备(Device)、上下文(Context)、OpenCL程序(Program)、指令队列(Command)、核函数(Kernel)、内存对象(Memory Object)、调用设备接口(NDRange),下面将分别进行做简单的介绍,后面也会给出参考资料的相关链接。

2020-12-04

PCL点云官方点云数据.zip

PCL官方点云数据,包含全部全部点云数据,可以用于官方所有例子的测试与比较,其中有著名的斯坦福大学提供的兔子模型,马模型等。

2020-07-22

在PCL同一个窗口中显示多片点云模型

有时候需要在PCL同一个窗口中显示加载多片点云数据,便于不同点云数据之间的比较。

2018-10-08

opencv-3.1.0+opencv_contrib-3.1.0+ippicv_windows_20151201

opencv-3.1.0+opencv_contrib-3.1.0+ippicv_windows_20151201资源,由于在官网下载太慢了,这里整理了一下,方便大家下载。

2018-05-16

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除