SIFT 3D 点云关键点

news2024/11/28 12:55:49

检测原理

该算法在尺度空间中寻找极值点并提取出其位置、 尺度、 旋转不变量信息,提取的特征对视角变化、 仿射变换、 噪声具有一定的鲁棒性,对尺度缩放、 旋转具有较好的不变性。

SIFT关键点检测主要包括生成尺度空间构建、 空间极值点检测、 稳定关键点的精确定位、 确定稳定关键点的方向信息四个步骤。 在此,以SIFT 2D关键点检测为例介绍算法流程。

1.尺度空间构建

意义:建立观看物体近处清楚远处模糊的特性

一个图像的尺度空间表示为L(x,y,σ),其定义为原始图像I(x,y)与一个可变尺度的二维高斯核函数G(x,y,σ)的卷积运算,即

其中二维高斯核函数G(x,y,σ)=1/2πσ^2e^−x^2+y^2/2σ^2 , (x,y)是空间像素坐标, σ是尺度因子。 σ的大小决定图像的平滑程度,大尺度对应图像的概貌特征,小尺度对应图像的细节特征。

2.空间极值点检测

在检测极值点时,中间的检测点和它同尺度的8个相邻点和上下相邻尺度对应的2×9个点共26个点比较,以确保在尺度空间和二维图像空间都检测到极值点。

一个像素点如果在尺度空间本层以及上下两层的26个领域中是最大或最小值时,就认为该点是图像在该尺度下的一个特征点。

3.稳定关键点的精确定位

通过拟合三维二次函数以精确定位特征点的位置和尺度(达到亚像素精度),同时去除低对比度的关键点和不稳定的边缘响应点(DoG算子会产生较强的边缘响应),以增强匹配稳定性,提高抗噪声能力。

用尺度函数在尺度空间的泰勒展开式为:

其中,向量X=(x,y,σ),对D(X)进行求导并使一阶导数为0。可得特征点精确位置的偏移向量:

将X ̂加到原特征点的坐标,即得到特征点的亚像素精确估计。极值点精确位置方程的值为:

对于在尺度金字塔中检测出的关键点,采集其所在高斯金字塔图像3σ邻域窗口内像素的梯度和方向分布特征。每个像素的梯度模m和方向θ分别为:

其中L所用的尺度为每个关键点各自所在的尺度

三维点云的SIFT 3D关键点检测方法是由SIFT 2D算法扩展而来的。SIFT 3D算法的实现步骤如下:

(a)关键点检测过程中所涉及到的点云高斯金字塔是通过对点云数据按照不同尺寸的三维高斯分布盒子,将其分离为体素网格集的方法进行下采样得到的;

(b)将输入点云表示为I(x,y,z),将3D高斯滤波器表示为G(x,y,z,kσ)表示,其中整数k表示尺度因子。

(c)在每个尺度空间,寻找当前邻域内的高斯差分极值点作为候选的关键点;

(d)判断候选关键点是否具有高对比度,如果是则将其加入关键点集中。

SIFT算子提取特征点时只考虑高斯差分金字塔的局部邻域情况,没有从全局角度考虑特征点分布的合理性,导致检测出的特征点中可能存在某些区域特征点异常密集,而某些区域特征点又异常稀疏的情况。

利用SIFT 3D算法提取点云关键点,并基于此实现粗配准的过程。 首先基于SIFT 3D算法对源点云和目标点云检测关键点,之后为每个关键点计算FPFH特征描述子,基于两组点云的特征描述子利用随机采样一致性算法实现粗配准。

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

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

相关文章

Nacos 2.x 系列【18】多网卡 IP 配置

文章目录 1. 前言2. 服务端3. 客户端 1. 前言 个人电脑或者服务器,存在多网卡环境时,Nacos 可能会存在IP不正确问题。 2. 服务端 Nacos 服务在启动的时候需要选择运行时使用的IP或者网卡,在启动时,可以看到打印了IP&#xff1a…

第二周:李宏毅机器学习笔记

第二周学习周报 摘要Abstract一、深度学习1.Backpropagation(反向传播)1.1 链式法则1.2 Forward pass(前向传播)1.3 Backward pass(向后传播)1.4 总结 2. Regression(神奇宝贝案例)2…

CountDownLatch内部原理解析

文章目录 1、CountDownLatch介绍1.1、功能介绍1.2、demo1.3、问题 2、前置知识2.1、AQS整体结构2.1.1、整体结构2.1.2、state属性2.1.3、head和tail属性 3、CountDownLatchAPI源码解析3.1、countDown方法3.1.1、Sync类3.1.2、releaseShared方法3.1.3、tryReleaseShared方法 3.2…

ICMP协议详解及尝试用ping和tracert捕抓ICMP报文

一、ICMP协议 1.1、定义 ICMP(Internet Control Message Protocol,互联网控制消息协议)是一个支持IP层数据完整性的协议,主要用于在IP主机、路由器之间传递控制消息。这些控制消息用于报告IP数据报在传输过程中的错误&#xff0c…

ChatGPT4深度解析:探索智能对话新境界

大模型chatgpt4分析功能初探 目录 1、探测目的 2、目标变量分析 3、特征缺失率处理 4、特征描述性分析 5、异常值分析 6、相关性分析 7、高阶特征挖掘 1、探测目的 1、分析chat4的数据分析能力,提高部门人效 2、给数据挖掘提供思路 3、原始数据&#xf…

保研复习 | 数据结构

目录 CH1 绪论☆ 数据项、数据元素、数据结构☆ 逻辑结构和存储结构的区别☆ 顺序存储结构和链式存储结构的比较☆ 算法的重要特性☆ 算法的复杂度 CH2 线性表☆ 单链表 CH3 栈、队列和数组☆ 栈和堆是什么?☆ 栈在括号匹配中的应用☆ 栈在表达式求值中的应用☆ …

14-41 剑和诗人15 - RLAIF 大模型语言强化培训

​​​​​​ 介绍 大型语言模型 (LLM) 在自然语言理解和生成方面表现出了巨大的能力。然而,这些模型仍然存在严重的缺陷,例如输出不可靠、推理能力有限以及缺乏一致的个性或价值观一致性。 为了解决这些限制,研究人员采用了一种名为“人工…

3dsMax怎样让渲染效果更逼真出色?三套低中高参数设置

渲染是将精心构建的3D模型转化为逼真图像的关键步骤。但要获得令人惊叹的渲染效果,仅仅依赖默认设置是不够的。 实现在追求极致画面效果的同时,兼顾渲染速度和时间还需要进行一些调节设置,如何让渲染效果更加逼真? 一、全局照明与…

昇思25天学习打卡营第13天|K近邻算法实现红酒聚类

K近邻算法(K-Nearest-Neighbor, KNN)是一种用于分类和回归的非参数统计方法,是机器学习最基础的算法之一。它正是基于以上思想:要确定一个样本的类别,可以计算它与所有训练样本的距离,然后找出和该样本最接…

数据结构基础--------【二叉树基础】

二叉树基础 二叉树是一种常见的数据结构,由节点组成,每个节点最多有两个子节点,左子节点和右子节点。二叉树可以用来表示许多实际问题,如计算机程序中的表达式、组织结构等。以下是一些二叉树的概念: 二叉树的深度&a…

win10使用小技巧二

1. 解决电脑更新后无法连接打印机问题 步骤:右击电脑 → 选择“管理” → 打开“服务和应用程序” → 双击“服务” → 找到“Print Spooler” → 双击打开 → 在“常规”中将“启动类型”改为“自动” → 点击“应用” → 点击“确定” → 重启电脑。 2. 提升电脑…

rocketmq-console可视化界面功能说明

rocketmq-console可视化界面功能说明 登录界面OPS(运维)Dashboard(驾驶舱)Cluster(集群)Topic(主题)Consumer(消费者)Producer(生产者)Message(消息)MessageTrace(消息轨迹) rocketmq-console是rocketmq的一款可视化工具,提供了mq的使用详情等功能。 本章针对于rock…

css使用伪元素after或者before的时候想要给after设置z-index无效

css使用伪元素after或者before的时候想要给after或者before设置一个层级关系,使该伪类写入的样式在box的下面,发现给box设置z-index无效, 需要找到父级元素,在父级元素上设置z-index值并且将伪类设置z-index:-1

在数字化时代,自助BI是数据价值最大化的必经之路

引言:在数字化时代,数据已成为企业最宝贵的资产之一。然而,仅仅拥有海量数据并不足以带来竞争优势,关键在于如何有效地分析并利用这些数据以指导决策、优化运营、提升客户体验,并最终实现业务的持续增长。在一章里笔者…

实验1 主成分分析

目 录 二、实验环境... 1 三、实验内容... 1 3.1 导入数据... 2 3.2 求相关系数矩阵.. 3 3.3 数据规范化处理.. 3 3.4 主成分分析... 4 四 实验心得... 5 一、实验目的 (1)理解主成分分析的思想; (2)掌握主成分分析方…

昇思25天学习打卡营第19天 | CycleGAN图像风格迁移互换

内容介绍: CycleGAN(Cycle Generative Adversarial Network) 即循环对抗生成网络,该模型实现了一种在没有配对示例的情况下学习将图像从源域 X 转换到目标域 Y 的方法。 该模型一个重要应用领域是域迁移(Domain Adaptation),可以通俗地理解…

常用SQL语句(基础篇)

前言 查询的sql的结构是 select...from...where...group by...having...order by...limit... 写查询sql的时候需要按照如下顺序写 from,where(and,or,!),group by,select&#xf…

文件系统技术架构分析

一文读懂:什么是文件系统 ,有哪几类? ▉ 什么是文件系统? 技术大拿眉头皱了皱,忍住快要爆发的情绪。解释到: 数据以二进制形式存储于介质,但高低电平含义难解。文件系统揭秘这些二进制背后的意…

智能交通(3)——Learning Phase Competition for Traffic Signal Control

论文分享 https://dl.acm.org/doi/pdf/10.1145/3357384.3357900https://dl.acm.org/doi/pdf/10.1145/3357384.3357900 论文代码 https://github.com/gjzheng93/frap-pubhttps://github.com/gjzheng93/frap-pub 摘要 越来越多可用的城市数据和先进的学习技术使人们能够提…

代码随想录 数组部分+代码可在本地编译器运行

代码随想录 数组部分,代码可在本地编译器运行 文章目录 数组理论基础704.二分查找题目:思路二分法第一种写法二分法第二种写法 代码 27.移除元素题目:思路-双指针法代码 977.有序数组的平方题目思路-双指针代码 209.长度最小的子数组题目&am…