深圳尤洛视觉
深圳
立即加入

了解 3D 目标检测及其应用

Abirami Vina

4 分钟阅读

2024年9月12日

探索 2D 和 3D 目标检测的工作原理、它们的主要区别以及它们在自动驾驶汽车、机器人和增强现实等领域的应用。

多年来,对象检测变得越来越先进。它已经从识别简单的二维(2D)图像中的对象发展到识别我们周围复杂的三维(3D)世界中的对象。模板匹配等早期技术(涉及通过将图像的各个部分与存储的参考图像进行比较来查找对象)在1970年代得到发展,并构成了2D对象检测的基础。在1990年代,LIDAR(激光雷达)等技术的引入使系统可以更轻松地捕获深度和空间信息。如今,多模态融合方法(将2D图像与3D数据相结合)为高度精确的3D对象检测系统铺平了道路。

__wf_reserved_inherit
图 1. 3D 对象检测的示例。

在本文中,我们将探讨什么是 3D 对象检测,它的工作原理,以及它与 2D 对象检测的不同之处。我们还将讨论 3D 对象检测的一些应用。让我们开始吧!

2D 目标检测概述

在了解 3D 目标检测之前,让我们先了解 2D 目标检测的工作原理。2D 目标检测是一种计算机视觉技术,使计算机能够识别和定位平面二维图像中的目标。它的工作原理是分析目标在图片中的水平 (X) 和垂直 (Y) 位置。例如,如果您将足球场上球员的图像传递给像Ultralytics YOLOv8这样的 2D 目标检测模型,它可以分析图像并在每个目标周围绘制边界框(在本例中为球员),精确地识别它们的位置。

__wf_reserved_inherit
图 2. YOLOv8 2D 目标检测被用于检测足球场上的球员。

然而,二维 (2D) 目标检测有其局限性。因为它只考虑两个维度,所以无法理解深度。这使得判断物体有多远或多大变得困难。例如,远处的大物体可能看起来与近处的小物体大小相同,这可能会造成混淆。缺乏深度信息可能会导致诸如机器人技术增强现实等应用出现不准确的情况,在这些应用中,了解物体的真实大小和距离是必要的。这就是需要 3D 目标检测的原因。

通过 3D 目标检测获得空间感知能力

3D 物体检测 是一种先进的计算机视觉技术,它使计算机能够在三维空间中识别物体,从而更深入地了解周围的世界。与 2D 物体检测不同,3D 物体检测还会考虑深度数据。深度信息提供更多细节,例如物体的位置、大小、距离以及在真实 3D 世界中的位置。有趣的是,3D 检测还可以更好地处理一个物体部分隐藏另一个物体(遮挡)的情况,并且即使视角发生变化也能保持可靠性。对于需要精确空间感知的使用场景来说,它是一种强大的工具。

3D 物体检测对于自动驾驶汽车机器人技术和增强现实系统等应用至关重要。它的工作原理是使用 LiDAR 或立体相机等传感器。这些传感器创建环境的详细 3D 地图,称为点云或深度图。然后分析这些地图以检测 3D 环境中的物体。

__wf_reserved_inherit
图 3. 汽车的 3D 对象检测。

有许多先进的计算机视觉模型专门用于处理3D数据,如点云。例如,VoteNet是一种使用称为Hough投票的方法来预测对象在点云中的中心位置的模型,从而更容易准确地检测和分类对象。类似地,VoxelNet是一种将点云转换为称为体素的小立方体网格以简化数据分析的模型。

2D 和 3D 对象检测之间的主要区别

既然我们已经了解了 2D 和 3D 目标检测,现在让我们探讨它们的主要区别。3D 目标检测比 2D 目标检测更复杂,因为它处理的是点云。分析 3D 数据(如 LiDAR 生成的点云)需要更多的内存和计算能力。另一个区别是所涉及算法的复杂性。3D 目标检测模型需要更复杂,以便能够处理深度估计、3D 形状分析和目标方向分析。 

__wf_reserved_inherit
图 4. 2D 与 3D 目标检测。

与 2D 物体检测模型相比,3D 物体检测模型涉及更繁重的数学和计算工作。如果没有先进的硬件和优化,实时处理 3D 数据可能具有挑战性。然而,这些差异使得 3D 物体检测更适合需要更好空间理解的应用。另一方面,2D 物体检测通常用于更简单的应用,例如需要图像识别视频分析安全系统。 

3D目标检测的优缺点

3D 物体检测提供了几个优势,使其在传统的 2D 物体检测方法中脱颖而出。通过捕获物体的所有三个维度,它可以提供关于其相对于真实世界的位置、大小和方向的精确细节。这种精度对于自动驾驶汽车等应用至关重要,在这些应用中,了解障碍物的确切位置对于安全至关重要。使用 3D 物体检测的另一个优点是,它可以帮助您更好地理解不同物体在 3D 空间中是如何相互关联的。 

__wf_reserved_inherit
Fig 5. 通过 3D 目标检测解决遮挡问题。

尽管 3D 目标检测有很多优点,但也存在一些局限性。以下是一些需要注意的关键挑战:

  • 更高的计算成本: 处理3D数据需要更强大的硬件资源,并且成本会迅速增加。 
  • 更复杂的数据要求:3D 对象检测通常依赖于先进的传感器,如 LiDAR,这可能很昂贵,并且不一定在所有环境中都可用。 
  • 收集和处理数据:3D 目标检测的复杂数据需求使得收集、准备和处理训练模型所需的大型数据集既耗时又耗费资源。
  • 增加模型复杂性:用于 3D 目标检测的模型通常比用于 2D 目标检测的模型更复杂,具有更多的层和参数。 

3D 对象检测的应用

既然我们已经讨论了 3D 目标检测的优缺点,那么让我们更仔细地看看 3D 目标检测的一些用例。

自动驾驶车辆

自动驾驶汽车中,3D 目标检测对于感知汽车周围的环境至关重要。 它可以让车辆检测行人和其它车辆以及障碍物。 它还可以提供有关它们在现实世界中的位置、大小和方向的精确信息。 通过 3D 目标检测系统获得的详细数据有助于为乘客提供更安全的自动驾驶体验。 

__wf_reserved_inherit
图 6. 在自动驾驶车辆中使用 3D 对象检测。(来源:towardsdatascience.com)

机器人技术

机器人系统在多种应用中使用 3D 对象检测。它们利用它在不同类型的环境中导航、拾取和放置对象以及与其周围环境交互。此类用例在 仓库制造工厂等动态环境中尤为重要,在这些环境中,机器人需要了解三维布局才能有效运行。 

__wf_reserved_inherit
图 7. 使用 3D 目标检测的移动机器人。

增强现实和虚拟现实(AR/VR)

3D 对象检测的另一个有趣用例是在增强现实和虚拟现实应用中。3D 对象检测用于在逼真的 VR 或 AR 环境中准确定位虚拟对象,从而提升这些技术的整体用户体验。它还允许 VR/AR 系统识别和跟踪物理对象,创建数字和物理元素无缝交互的沉浸式环境。例如,使用 AR/VR 头显的游戏玩家可以在 3D 对象检测的帮助下获得更具沉浸感的体验,从而使与 3D 空间中的虚拟对象的交互更具吸引力。

__wf_reserved_inherit
图 8. 用于 AR 应用程序的 3D 对象识别示例。 

关于 3D 对象检测的最终思考

与 2D 物体检测方法相比,3D 物体检测使系统能够更有效地理解深度和空间。它在自动驾驶汽车、机器人和 AR/VR 等应用中发挥着关键作用,在这些应用中,了解物体的大小、距离和位置非常重要。虽然 3D 物体检测需要更强大的处理能力和复杂的数据,但它提供准确和详细信息的能力使其成为许多领域中非常有价值的工具。随着技术的进步,3D 物体检测的效率和可访问性可能会提高,从而为各个行业更广泛的采用和创新铺平道路。

我们的社区保持联系,及时了解 AI 的最新进展!访问我们的GitHub 仓库,了解我们如何使用 AI 在制造业医疗保健等行业中创建前沿解决方案。🚀

让我们一起构建人工智能的未来!

开启您的机器学习未来之旅

免费开始
链接已复制到剪贴板