3D 目标检测:从萌芽到前沿的技术演进之路
亲爱的小伙伴们😘,在求知的漫漫旅途中,若你对深度学习的奥秘、JAVA 、PYTHON与SAP 的奇妙世界,亦或是读研论文的撰写攻略有所探寻🧐,那不妨给我一个小小的关注吧🥰。我会精心筹备,在未来的日子里不定期地为大家呈上这些领域的知识宝藏与实用经验分享🎁。每一个点赞👍,都如同春日里的一缕阳光,给予我满满的动力与温暖,让我们在学习成长的道路上相伴而行,共同进步✨。期待你的关注与点赞哟🤗!
早期探索阶段
- 在 3D 目标检测的早期,研究主要集中在基于手工特征和传统机器学习方法上。研究人员尝试利用物体的几何形状、颜色、纹理等特征,结合支持向量机(SVM)等分类器来识别和定位 3D 物体。然而,这些方法在复杂场景下的性能有限,难以处理大规模的数据和多样化的物体姿态。
基于点云的方法兴起
- VoxelNet :2017 年提出的 VoxelNet 是 3D 目标检测领域的一个重要里程碑。它将点云数据划分为体素,并使用 3D 卷积神经网络(CNN)来学习体素特征,从而实现 3D 目标检测.
- 论文:VoxelNet: End-to-End Learning for Point Cloud Based 3D Object Detection
- 出处:CVPR 2018
- 原理改进:以往的方法多是将点云转换为其他形式再进行处理,而 VoxelNet 直接对体素化的点云进行 3D 卷积操作,自动学习点云的特征表示,无需人工设计特征,提高了检测的准确性和鲁棒性。其具体流程包括提素分区、分组、随机抽样、堆叠体素特征编码等步骤,最后通过区域提议网络生成检测框.
多模态融合方法的发展
- MV3D :2016 年的 MV3D 多视角 3D 网络,将激光雷达点云和 RGB 图像作为输入,预测定向 3D 边界框1.
- 论文:Multi-View 3D Object Detection Network for Autonomous Driving
- 出处:CVPR 2017
- 原理改进:此前的方法多单独依赖于点云或图像数据,MV3D 充分利用了激光雷达和相机的互补信息,通过多视角特征融合,使得网络能够更好地理解场景和物体,尤其是对于远处和小目标的检测效果有了明显提升。它通过两个子网络分别生成 3D 对象提议和进行多视角特征融合,并设计了深度融合方案,结合来自多个视角的区域特征来提高检测性能。
基于深度学习的进一步优化
- PointNet/PointNet++ :PointNet 及其升级版 PointNet++ 在 2017 年左右出现,它们直接处理点云数据,通过一系列的点云采样、分组和特征学习操作,有效地捕捉点云的局部和全局特征1.
- 论文:PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation、PointNet++: Deep Hierarchical Feature Learning on Point Sets in a Metric Space
- 出处:CVPR 2017、NIPS 2017
- 原理改进:与之前的方法相比,PointNet 系列能够更好地处理点云的无序性和置换不变性,直接在原始点云上进行操作,避免了体素化等预处理过程中可能导致的信息丢失,从而更准确地提取点云的特征,提高了对复杂形状物体的检测精度。PointNet++ 通过构建点的分层分组,逐步抽象更大的局部区域,学习深度点集特征,进一步提升了模型的性能.
多传感器融合与序列信息利用
- PointPainting :2019 年提出的 PointPainting 方法,将激光雷达点投影到仅图像语义分割网络的输出中,并将类别评分追加到每个点上,然后将追加后的点云馈送到任何仅激光雷达的方法中,实现了点云和图像信息的有效融合,提升了检测性能 。
- 论文:PointPainting: Sequential Fusion for 3D Object Detection
- 出处:CVPR 2020
- 原理改进:该方法巧妙地将图像的语义信息融入到点云数据中,弥补了点云在语义理解上的不足,使得点云数据能够更好地识别物体的类别和位置,增强了检测的准确性和可靠性。
- MSF :2023 年的 MSF 方法利用目标运动的连续性来挖掘当前帧中用于目标检测的有用序列上下文。
- 论文:MSF: An Efficient 3D Object Detection Network based on Point Cloud Sequence Fusion
- 出处:公众号【自动驾驶之心】
- 原理改进:传统的多帧检测方法通常遵循 “检测和融合” 框架,存在冗余计算和对先前帧结果的过度依赖问题。MSF 方法则只在当前帧生成提议并传播到先前帧挖掘特征,减少了计算量和对前序帧的依赖,同时双向特征聚合模块加强了跨帧提议之间的信息交换,提高了边界框预测的准确性 。
基于 Transformer 的方法探索
- 近年来,Transformer 架构在自然语言处理领域取得了巨大成功后,也被引入到 3D 目标检测中。一些方法利用 Transformer 的自注意力机制来学习点云或多模态数据中的长程依赖关系,从而更好地捕捉物体之间的上下文信息,进一步提高了检测性能 。
- 论文:TransFusion: Robust LiDAR-Camera Fusion for 3D Object Detection with Transformers等
- 出处:相关的计算机视觉会议和期刊
- 原理改进:Transformer 的自注意力机制能够自适应地关注输入数据中的不同部分,对于处理 3D 目标检测中的复杂场景和多模态数据具有天然的优势。它可以更好地建模物体之间的关系,以及不同模态数据之间的相互作用,从而提升检测的精度和鲁棒性,尤其是在处理遮挡、重叠等复杂情况时表现出色 。
2024 最新技术
- Shift-SSD :2024 年,港科大提出了一种新的基于点的 3D 探测器模型 Shift-SSD,用于自动驾驶中的精确 3D 物体检测.
- 论文:Cross-Cluster Shifting for Efficient and Effective 3D Object Detection in Autonomous Driving
- 出处:ICRA 2024
- 原理改进:传统的基于点的 3D 目标检测器通常采用依赖于点的渐进式下采样的架构,会损害关键非局部信息的保存。Shift-SSD 引入了跨集群移位操作,通过移位相邻簇的部分通道来增强传统设计,从而实现与非局部区域的更丰富的交互,扩大簇的感受野,在检测精度和运行效率方面取得了最新性能。其整体架构由用于聚类点特征提取的主干网络和用于产生检测框的框预测网络组成,主干网络中的移位集抽象模块包括簇点选择、球分组、集合特征提取和跨簇移位层等操作.
- MV ACon :2024 年提出的多视角关注上下文化(MV ACon)方法,用于改进基于查询的多视角三维(MV3D)目标检测中二维到三维特征提取.
- 论文:Multi-View Attentive Contextualization for Multi-View 3D Object Detection
- 出处:CVPR 2024
- 原理改进:该方法采用一种具有表征密集性但计算稀疏性的关注特征上下文化方案,解决了现有方法在高分辨率 2D 特征利用和 3D 查询到多尺度 2D 特征的稀疏接地方面的不足,通过引入全局基于聚类的上下文有效地对 MV3D 目标检测的密集场景级上下文进行编码,在实验中表现出一致的检测性能提升,尤其是在增强位置、方向和速度预测方面表现出色.
相关文章:
3D 目标检测:从萌芽到前沿的技术演进之路
亲爱的小伙伴们😘,在求知的漫漫旅途中,若你对深度学习的奥秘、JAVA 、PYTHON与SAP 的奇妙世界,亦或是读研论文的撰写攻略有所探寻🧐,那不妨给我一个小小的关注吧🥰。我会精心筹备,在…...
Apifox 产品更新|支持发布多个文档站、文档站支持 Algolia 搜索配置、从返回响应直接设置断言
看看本次 这次版本更新主要涵盖的重点内容,有没有你所关注的功能特性: 「发布文档」升级为「发布文档站」 支持发布多个文档站 文档站支持 Algolia 搜索配置 支持从返回响应直接设置断言 用户反馈优化 解决恢复退出 App 时未关闭的标签页可能导致内存…...
Linux内核结构及源码概述
参考:深入分析LINUX内核源码 深入分析Linux内核源码 (kerneltravel.net) Linux 是一个庞大、高效而复杂的操作系统,虽然它的开发起始于 Linus Torvalds 一个人,但随着时间的推移,越来越多的人加入了 Linux 的开发和对它的不断完善…...
《探索C++在3D重建中的算法与技术要点》
3D重建作为计算机视觉领域的重要技术,在诸多行业有着广泛应用,而C以其高效性和对底层硬件的良好控制,成为实现3D重建算法的常用语言。以下是利用C进行3D重建的一些常见算法和技术要点。 多视图立体视觉算法 多视图立体视觉是3D重建的基础算…...
【老白学 Java】数字格式化
数字格式化 文章来源:《Head First Java》修炼感悟。 很多时候需要对数字或日期进行格式化操作,来达到某些输出效果。Java 的 Formatter 类提供了很多扩展性功能用于字符串的格式化,只要调用 String 静态方法 format() ,传入参数…...
useCallback和forwardRef的联合使用
文章目录 一、useCallback二、forwardRef 总结了useCallback、forwardRef中的deps,以及操作子组建时会遇到数据流不同步的问题 一、useCallback useCallback可以缓存函数,这样避免组建更新导致的函数重建;useCallback在函数更新以后会在deps中…...
C# .NET CORE 开发问题汇总
1. error MSB4803: .NET Core 版本的 MSBuild 不支持“ResolveComReference”。请使用 .NET Framework 版本的 MSBuild。 引用了一个COM组件, 使用donet 命令时,提示不支持, 可以先将项目设置为x86以构建, 将COM引用添加到核心项目中,构建它,在obj\x86\…...
【C语言】拆数字组成最大数
相信你是最棒哒!!! 文章目录 题目描述 正确代码 法一注释版 简洁版 法二注释版 简洁版 题目描述 任意输入一个自然数,输出该自然数的各位数字组成的最大数。例如,输入 1593 ,则输出为 9531 。 输入描述 …...
【Git系列】根据提交打印邮箱
💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...
Nginx在处理客户端请求的并发性发面是否依赖Linux的多线程原理
Nginx在处理客户端请求的并发性发面是否依赖Linux的多线程原理 Nginx 在处理客户端请求的并发性方面,并不依赖于 Linux 的多线程原理。 Nginx 的并发处理主要基于 事件驱动模型 和 异步非阻塞 I/O,而不是传统的多线程或多进程模型。 Nginx 的并发处理模…...
Python生成对抗神经网络GAN预测股票及LSTMs、ARIMA对比分析ETF金融时间序列可视化
全文链接:https://tecdat.cn/?p38528 本文聚焦于利用生成对抗网络(GANs)进行金融时间序列的概率预测。介绍了一种新颖的基于经济学驱动的生成器损失函数,使 GANs 更适用于分类任务并置于监督学习环境中,能给出价格回…...
深入了解C++中const的用法
文章目录 一、C中的const如何理解?二、C中的const与C语言中的const有何区别?三、const与指针、引用的结合使用 一、C中的const如何理解? 在C中,const是一个关键字,用来表示常量性,意在告诉编译器某些变量或…...
【Linux金典面试题(上)】41道Linux金典面试问题+详细解答,包含基本操作、系统维护、网络配置、脚本编程等问题。
大家好,我是摇光~,用大白话讲解所有你难懂的知识点 之前写了一篇关于 python 的面试题,感觉大家都很需要,所以打算出一个面试专栏。 【数据分析岗】Python金典面试题 这个专栏主要针对面试大数据岗位、数据分析岗位、数据运维等…...
利用Python实现多元回归预测汽车价格
引言: AI技术的热门使得大家对机器学习有了更多的关注,作为与AI技术息息相关的一门课程,从头了解基础的机器学习算法就显得十分有必要,如:梯度下降,线性回归等。 正文: 本文将讲解线性回归中多元回回归的案例 机器学习大致可以分为监督学习,非监督学习、半监督学习还…...
抓包软件fiddler和wireshark使用手册
fiddler官方文档 Fiddler 抓包教程1 Fiddler 抓包教程2 wireshark抓包学习 2添加链接描述 ip 过滤 ip.src_host ip.dst_host ip.addr mac 过滤 eth.src eth.dst eth.addr 端口过滤 tcp.port tcp.srcport tcp.dstport 协议类型过滤 arp dhcp 规则组合 and or...
初识三大 Observer
文章目录 ResizeObserver、MutationObserver和IntersectionObserver用MutationObserver实现图片懒加载MutationObserver 兼容性问题IntersectionObserver 应用MutationObserver和IntersectionObserver的区别IntersectionObserver 实例示例一:图片懒加载示例二&#…...
Eclipse MAT(Memory Analyzer Tool) 使用手册
参考:JAVA内存泄露使用MAT(Memory Analyzer Tool)快速定位代码 Eclipse MAT 1.15.0提示JDK版本最低需要使用17版本的,如果不想安装可以下载ZIP包,或者使用较低版本的MAT。 为了避免下载的17版本JDK和本地环境干扰,可以直接在MAT配…...
TongWe7.0-东方通TongWeb控制台无法访问 排查
**问题描述:**无法访问TongWeb的控制台 逐项排查: 1、控制台访问地址是否正确:http://IP:9060/console #IP是服务器的实际IP地址 2、确认TongWeb进程是否存在,执行命令:ps -ef|grep tongweb 3、确认TongWeb服务启动…...
Ariba Procurement: Administration_Master data
采购主数据集成Procurement Master Data Integration 注意:并非所有元素都是必需的,数据元素的名称可能根据ERP的不同,有所不同。 Types of Master Data Accounting 在SAP Ariba中的各种会计元素字段中,填充有效值选择列表。建…...
爬虫学习案例4
爬取猪八戒网站数据:2024-12-12 使用xpath解析元素,安装依赖库 pip install lxml使用selenium步骤我的上篇博客有提到,这里就不重复了 selenium使用博客导航 # 安装pip install lxml,使用xpath from lxml import etree import time from s…...
Angular模块化应用构建详解
文章目录 前言一、理解Angular模块(NgModule)二、创建功能模块三、懒加载模块以提高性能四、共享模块五、库模块六、最佳实践与注意事项七、案例研究:重构电子商务平台结语 前言 Angular是一款由Google支持的、用于构建动态Web应用程序的前端…...
51c大模型~合集89
我自己的原文哦~ https://blog.51cto.com/whaosoft/12815167 #OpenAI很会营销 而号称超强AI营销的灵感岛实测成效如何? OpenAI 是懂营销的,连续 12 天发布,每天一个新花样,如今刚过一半,热度依旧不减。 毫无疑问&…...
【蓝桥杯备战】Day 1
1.基础题目 LCR 018.验证回文串 给定一个字符串 s ,验证 s 是否是 回文串 ,只考虑字母和数字字符,可以忽略字母的大小写。 本题中,将空字符串定义为有效的 回文串 。 示例 1: 输入: s "A man, a plan, a canal: Panama…...
FedAdam算法:供给方信用,数据质量;更新一致性
FedAdam算法:供给方信用,数据质量;更新一致性 FedAdam算法概述 FedAdam是一种联邦学习(Federated Learning)算法。联邦学习是一种机器学习技术,它允许在多个设备或数据中心(称为客户端)上训练模型,而无需将数据集中到一个中央服务器,从而保护数据隐私。FedAdam主要用于…...
内存卡格式化后的数据恢复全攻略
一、内存卡格式化简述 内存卡,作为现代电子设备中不可或缺的存储媒介,广泛应用于手机、相机、行车记录仪等各类设备中。然而,在使用过程中,我们可能会遇到内存卡需要格式化的情况。格式化是一种将内存卡上的所有数据和文件系统清…...
介绍交叉熵损失(Cross-Entropy Loss)以及交叉熵在对比学习中的应用:中英双语
中文版 本文解释 交叉熵损失(Cross-Entropy Loss),并结合对比学习的应用说明它如何工作,以及如何让正样本对更近、负样本对更远。 什么是交叉熵损失? 交叉熵损失是机器学习中常用的一种损失函数,主要用于…...
RabbitMQ的几个概念
注:这篇文章会随时添加新的内容,就是将RabbtiMQ中的概念添加到这里。助力大家的学习 自动ACK和手动ACK的区别 自动ACK和手动ACK是消息队列中两种不同的消息确认机制,它们在消息处理的可靠性和灵活性方面存在显著差异。 自动ACK(…...
Ollama部署大模型并安装WebUi
Ollama用于在本地运行和部署大型语言模型(LLMs)的工具,可以非常方便的部署本地大模型 安装 Linux curl -fsSL https://ollama.com/install.sh | sh我是ubuntu系统安装,其他系统可以看项目的开源地址有写 GitHub - ollama/ollama: Get up and running with Llama 3, Mist…...
Debedium如何忽略Oracle的purge命令
报错 截至目前3.0版本,Debezium的Oracle Connector并不支持purge table这个指令。 所以,在使用Debezium解析Oracle变更的时候,如果在源端执行了类似 purge table "$BIN… 的语句,就会导致Debezium罢工,日志里显…...
PlantUML 语言
PlantUML 是一种开源工具,用于通过简单的文本描述生成 UML 图。它支持多种 UML 图类型,如类图、序列图、用例图、活动图、组件图、状态图等。PlantUML 语言非常简洁,采用类似编程语言的语法,允许用户使用文本定义模型,…...
网站建设原理/销售渠道及方式
Vue作者尤雨溪,英文 Evan You艺术硕士,毕业后在 Google Creative Lab工作后转为 全职 JavaScript 开发工程师主要作品 Vue、Vue Router、Vuex、vue/cli github主页:https://github.com/yyx990803Vue.js记录片:https://www.youtube…...
网站备案名称修改/福州短视频seo
Twisted是一个事件驱动的网络框架。 最近开始学习了解Twisted,首先肯定要安装twisted模块。 但是在cmd下执行:pip install twisted 出现了下面的问题:"error:Microsoft Visual C 10.0 is required (Unable to find vcvarsall.bat) 我电脑是pyhton3.4环境(python2.7也有)&a…...
建设将网站加入受信网站再试/河北百度推广客服电话
6.7.2 设置串口通信参数串口通信参数指的是波特率、数据位、奇偶校验位和停止位。对串口实现控制的时候同样要用到termio结构体。下面将结合具体的代码说明如何设置这些参数。1.波特率设置获得端口波特率信息是通过cfgetispeed函数和cfgetospeed函数来实现的。cfget…...
兴扬汽车网站谁做的/论坛推广
java生成6位随机数, 全是数字 // 生成6位随机数字 int random6 (int) ((Math.random() * 9 1) * 100000); // 生成5位随机数字 int random5 (int) ((Math.random() * 9 1) * 10000); // 生成4位随机数字 int random4 (int) ((Math.random() * 9 1) * 1000); // 生成3…...
企业服务建设网站/想做游戏推广怎么找游戏公司
9月1日,全球3D设计、3D数字样机和产品全生命周期管理(PLM)解决方案、3D体验解决方案领导者达索系统和欧洲领先的工程企业Assystem(巴黎欧洲证券)宣布扩大核工程领域的合作,通过数字技术将彻底改进复杂工程项…...
漫画网站怎么做/公司域名查询官网
在上上篇日志里面,我介绍了在虚拟机VMware6.5下安装Fedora9.0的开发环境,其中在文章的末尾我向大家阐述了一个观点就是要新建一个user,其实也可以不新建,当时我给的理由是,ROOT权限下登录没有反应,为什么没有反应呢&am…...