自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 光流(Optical Flow)算法原理详见以及cv::calcOpticalFlowFarneback和cv::calcOpticalFlowPyrLK参数说明

方法特点优点缺点局部窗口法,线性方程组快速,适用于稀疏光流靠角点稀疏性,易受遮挡干扰全局最小化,带平滑项稠密估计效果好迭代复杂,慢Farneback多项式逼近+金字塔密集光流,性能稳定较慢深度学习方法精度高,适应复杂变形需 GPU,模型大。

2025-05-09 14:15:39 519

原创 C++中构造函数初始化列表详解和示例

构造函数初始化列表(Constructor Initialization List)是 C++ 中在进入函数体之前,对成员变量和基类子对象进行初始化的语法机制。语法形式位于构造函数名和函数体之间,以冒号// 构造函数体。

2025-05-09 09:12:13 587

原创 SLAM文献之KernelGPA: A Globally Optimal Solution to Deformable SLAM in Closed-form

特性描述目标解决可变形环境下的 SLAM 问题方法基于核回归的变形建模 + Procrustes 闭式对齐优势闭式解、无初值依赖、全局最优、低计算量应用医学成像、软体机器人、动态环境建图。

2025-05-08 23:39:11 320

原创 FAST角点检测算法原理附C++代码实现

给定一个像素ppp,以其为中心绘制一个半径为 3 的圆(16 个像素点),记为Sp1p2p16Sp1​p2​...p16​,如下图所示。若在这个圆上存在连续nnn个像素(常用n12n = 12n12所有像素亮度都明显大于或明显小于中心像素ppp(与中心差值超过阈值ttt),则ppp被判定为角点,效果图如下。优势劣势极快(适合实时系统)不含角点响应评分适合图像金字塔对噪声敏感可结合 ORB、BRIEF 特征不鲁棒于尺度和旋转变化。

2025-05-08 15:08:21 663

原创 C++中友元(friend)知识详解和使用示例

友元是 C++ 中打破访问控制的有力手段,但也容易增加耦合、降低维护性。使用时应遵循最小化原则:仅声明真正需要的函数/类为友元。了解各种友元形式(函数、类、成员、模板),以及它们的使用场景与限制。通过替代方案(公有接口、代理模式等)权衡可维护性与灵活性。

2025-05-08 10:22:44 533

原创 C++面向对象设计类的核心知识详解总述(1)

特性关键语法示例构造函数MyClass()初始化成员变量析构函数~MyClass()资源释放成员函数类功能成员变量int value;数据属性继承子类继承父类多态virtualoverride动态调度静态成员所有对象共享常量函数保证只读友元访问 private 成员运算符重载自定义 +, <<, = 等行为。

2025-05-07 21:32:22 454

原创 张正友相机标定方法中标定板角点检测算法原理(Harris和Shi-Tomasi角点检测算法)

在棋盘格图案中,角点是白格与黑格交界的交叉点,即四个颜色区域交汇处的内角点(不包括外边框角点)。如图所示:若棋盘格为 8x6 格,则角点数量为 7×5=35 个。Rdet⁡M−k⋅trace⁡M2λ1λ2−kλ1λ22RdetM−k⋅traceM2λ1​λ2​−kλ1​λ2​2k∈0.040.06k∈0.040.06:经验常数若RthresholdRthreshold,该点为角点。

2025-05-07 14:18:53 990

原创 C++中STL 容器中引用与指针的使用对比(vector<T*> vs vector<T&>)

需求推荐做法需要引用对象,但不能复制使用需要控制对象生命周期使用存指针集合并自由操作使用存值并自动管理使用直接存值想要传值修改原始变量→ 用想要灵活指向不同对象→ 用裸指针或智能指针集合❌ 不要尝试vector<T&>—— C++ 不允许。

2025-05-07 10:04:38 366

原创 C++学习知识点汇总

下面我整理一个比较系统的,覆盖了的内容,分类清晰,适合查阅或系统复习。

2025-05-06 23:59:42 657

原创 C++中指针使用详解(4)指针的高级应用汇总

..也可做内存池管理(如用于点云、游戏对象池)│ 高级指针用法│↓│ 函数指针 │ 成员指针 │ 智能指针 │ 指针算术 ││ 内存池 │ 指针与类 │ vtable 多态│ 类型转换 ││ ABI + 栈帧 │ 并发原子指针│ 插件接口 │ STL allocator │。

2025-05-06 23:57:39 539

原创 C++ 中二级指针的正确释放方法

注意点说明1必须先释放内层的new[]分配的每个块2最后再delete[]外层的指针数组3new[]必须对应delete[],不能写成delete4内存分配和释放要一一对应,避免内存泄漏5如果中间分配失败,要释放之前成功分配的部分(异常安全问题)6C风格的也可以申请二维数组,但释放方法和 C++ 不一样。

2025-05-05 22:29:26 332

原创 CloudCompare 中 ccDrawableObject

的显示属性,如颜色、可见性、LOD(层次细节)、光照等。它是许多可视化类(如。在 CloudCompare 插件开发时,我们可以使用。是 CloudCompare 3D 可视化的。)的基类,提供了一些通用的绘制方法。在 CloudCompare 中,✅ 在 CloudCompare。是一个基类,主要用于管理。)来控制对象的可视化。

2025-05-05 22:26:21 423

原创 C++模版结构体的使用

🔹 适用于泛型编程,保证指针转换时不会丢失。定义两种对普通指针类型的特化处理。,支持 STL 迭代器类型的转换。修饰符并转换指针类型。

2025-05-03 23:20:48 550

原创 CloudCompare 中的 KDTree详解

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

2025-05-02 20:32:15 744

原创 CloudCompare中CCCoreLib模块内容

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

2025-05-01 18:31:49 626

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

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

2025-04-30 14:53:07 1464 3

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

bat。

2025-04-30 14:12:25 746

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

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

2025-04-30 09:30:22 493

原创 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 473

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

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

2025-04-29 17:14:01 1028

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

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

2025-04-29 09:54:09 527

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

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

2025-04-28 21:10:54 1566

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

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

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

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

int x, y;delete pt;

2025-04-28 09:27:13 540

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

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

2025-04-27 15:33:40 416

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

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

2025-04-26 21:45:45 261

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

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

2025-04-26 21:42:21 1062

原创 AI图像分割总汇

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

2025-04-25 14:17:17 660

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

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

2025-04-25 11:12:48 338

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

在 Linux 上配置。

2025-04-24 22:43:27 1452

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

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

2025-04-24 11:29:52 844

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

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

2025-04-24 11:15:20 333

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

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

2025-04-23 23:16:02 418

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

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

2025-04-23 11:05:52 867

原创 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 905

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

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

2025-04-22 13:49:13 772

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

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

2025-04-22 11:05:28 699

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

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

2025-04-22 10:24:40 368

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

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

2025-04-21 21:19:52 888

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

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

2025-04-21 10:49:01 412

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关注的人

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