计算机视觉/视频分析

涵洞视觉堵塞检测的 AIoT 解决方案

引发山洪的一个关键因素是,不需要的、洪水传播的碎片被运输,堵塞了交叉排水水工结构,如涵洞。

碎屑与涵洞的堆积和相互作用通常会导致水力容量降低、上游水流分流和结构破坏。例如, 2007 年的澳大利亚纽卡斯尔洪水、 1998 年的澳大利亚卧龙岗洪水和 2021 的英国彭特雷洪水只是少数几个例子,其中堵塞被报告为交叉排水水力结构破坏的主要原因。

在这篇文章中,我们描述了我们为 计算机视觉 模型训练构建不同视觉数据集的技术,包括合成图像的示例。我们分解了解决方案的每个组成部分,并提供了未来研究方向的见解。

问题

非线性碎片堆积、实时数据不可用以及复杂的流体动力学表明,传统的基于数值模拟的方法解决该问题是无效的。在这种情况下,洪水后的视觉信息被用于制定阻塞政策,其中涉及几个假设,许多人认为这些假设不是阻塞的真实代表。

这表明需要从技术角度更好地理解和探索堵塞问题,以帮助洪水管理官员和决策者。

StopBlock :监测涵洞视觉堵塞的技术倡议

为了帮助解决阻塞问题, StopBlock 作为 SMART Stormwater 管理 的一部分启动。总体而言,该项目涉及伊拉瓦拉(卧龙岗、 Shellharbour 和 Kiama )和 Shoalhaven 地区的市议会、 Lendlease 以及卧龙岗大学的 SMART 基础设施之间的合作。

StopBlock 旨在使用最新技术实时评估和监测涵洞的视觉堵塞:

  • 人工智能
  • 计算机视觉
  • 边缘计算
  • 物联网( IoT )
  • 智能视频分析

此外,我们使用 NVIDIA 边缘计算、最新的计算机视觉检测和分类模型、 CCTV 摄像机和 4G 模块构建并部署了人工智能物联网( AIoT )解决方案。该解决方案在伊拉瓦拉地区的三个涵洞现场检测到视觉堵塞状态(堵塞、部分堵塞或清除)。

建立计算机视觉模型训练的视觉数据集

训练计算机视觉 CNN 模型需要大量与预期任务相关的图像。以前从未从这个角度解决过涵洞堵塞检测问题。不存在用于此目的的图像数据和数据集数据库。

我们开发了一个新的训练数据库,由与涵洞堵塞有关的各种图像数据组成。这些图像显示了不同的涵洞类型、碎片类型、摄像机角度、缩放比例和照明条件。

通过市议会的记录,可以获得真实涵洞堵塞的有限数据。我们采用了结合真实、实验室模拟和合成视觉数据的想法。

涵洞开口和堵塞图像

我们从多个来源收集了涵洞(堵塞和清理)的真实图像:

  • 市议会历史记录
  • 在线存储库
  • 当地涵洞场地

收集的图像在涵洞类型、碎片类型、照明条件、摄像机视点、比例、分辨率甚至背景方面表现出极大的多样性。涵洞开口和堵塞( ICOB )数据集的图像总共包括 929 张图像。

Photos of a few selected culvert samples from the ICOB data set with bounding box annotations.
图 1.ICOB 数据集样本

可视化液压实验室堵塞数据集

我们从缩放的实验室实验中收集模拟图像,以优化现有的视觉数据集,因为没有足够的真实图像可用。

进行了彻底的水力学实验室调查,其中一系列实验使用了涵洞的缩放物理模型。在各种洪水条件下,阻塞场景使用了规模化碎片(城市和植被)。

图像在涵洞类型(单圆形、双圆形、单箱或双箱)、堵塞类型(城市、植被或混合)、模拟照明条件、摄像机视点(两台摄像机)和洪水条件(入口流量水平)方面表现出多样性。然而,数据集在反射、清澈的海水、相同的背景和相同的缩放方面受到限制。

总共,我们从这些实验中收集了 1630 张图像,以建立 VHD dataset

Photos of culvert samples from the VHD dataset with bounding box annotations.
图 2.VHD 数据集的样本

涵洞合成图像

我们使用基于 Unity 游戏引擎 的三维计算机应用程序生成了涵洞( SIC )的合成图像,目的是增强训练数据集。

该应用程序专为模拟涵洞堵塞情况而设计,可以生成几乎无数的堵塞涵洞实例,以及您可以想到的任何可能的堵塞情况。您还可以更改涵洞类型、水位、碎片类型、相机视点、一天中的时间和缩放比例。

应用程序设计使您能够从下拉菜单中选择场景特征,并从库中拖动碎片对象以任何可能的方向放置在场景中的任何位置。您可以使用参数编写代码来重新创建多个场景,并批量捕获带有相应标签的图像,以帮助训练过程。

一些突出的限制包括不切实际的效果和动画以及单一的自然背景。图 3 显示了来自 SIC dataset 的示例。

Photos of a few selected culvert samples from the SIC dataset with bounding box annotations.
图 3.SIC 数据集样本

AIoT 系统开发

我们使用边缘计算硬件、计算机视觉模型和传感器开发了 AIoT 解决方案,用于涵洞的实时可视堵塞监测:

  • CCTV 摄像机捕捉涵洞。
  • NVIDIA Jetson TX2 –支持边缘计算,使用经过训练的计算机视觉模型处理和推断堵塞图像。
  • 4G 连接将阻塞相关数据传输到基于 web 的仪表板。
  • 计算机视觉模型用于检测和分类涵洞处的视觉障碍。

更具体地说,在软件方面,采用了两阶段检测分类流水线(图 4 )。

检测阶段

在第一阶段,使用计算机视觉对象检测模型( YOLOv4 )检测涵洞开口。从原始图像中裁剪检测到的开口,并在分类阶段进行处理。如果未检测到涵洞开口,则会发出警报,提示涵洞可能被淹没。

分类阶段

在第二阶段,使用 CNN 分类模型(如 ResNet-50 )将修剪后的涵洞开口分类为三种堵塞类别(堵塞、部分堵塞或清除)之一。阻塞相关信息随后被传输到洪水管理官员的网络仪表板,以促进决策过程。

Flow diagram shows the approach of sequentially detecting culvert visible openings and classifying them as clear or blocked.
图 4.涵洞处目视堵塞检测的两级检测分类管道

我们使用 Python 、 TensorFlow 和 Keras 支持的 NVIDIA TAO 平台分别训练了用于检测和分类的 YOLOv4 和 ResNet-50 模型。我们使用配备 NVIDIA A100 GPU 的 Linux 机器,使用 ICOB 、 VHD 和 SIC 数据集中的图像训练模型。

以下是开发采用的四阶段方法:

  • Stage I: 我们从真实和模拟图像中准备了数据集。
  • Stage II: 我们从 NVIDIA TAO 模型动物园中选择检测和分类模型,并使用 TAO 平台对其进行训练。
  • Stage III: 我们导出了经过训练的模型,以部署在 Jetson TX2 边缘计算机上。
  • Stage IV: 在现场,我们部署了一个完整的硬件系统,并收集了用于微调计算机视觉算法的真实数据。

关于软件性能,涵洞开口检测模型的验证 mAP 为 0.90 ,而堵塞分类模型的验证精度为 0.88 。

我们在 NVIDIA DeepStream 6 SDK 上开发了端到端视频分析管道,使用经过训练的计算机视觉模型在 Jetson TX2 驱动的边缘计算机上进行推断。使用这些检测和分类模型, DeepStream 流水线为 Jetson TX2 硬件实现了 24.8 的 FPS 。

我们使用 CCTV 摄像机、 Jetson TX2 边缘计算机和 4G 加密狗构建了涵洞堵塞监测智能设备(图 5 )。我们优化了开发的硬件的功耗和实时实用程序的计算时间。该硬件由太阳能电池板供电,平均功耗仅为 9.1W 。 AIoT 解决方案还配置为每小时将阻塞元数据传输到 web 仪表板。

该解决方案被配置为考虑隐私问题,避免将任何图像存储在板上或云中。相反,它只处理图像并传输阻塞元数据。图 5 显示了在一个远程站点安装 AIoT 硬件,以监控涵洞视觉堵塞。

Photo of the AIoT hardware setup based on NVIDIA Jetson TX2 and a culvert photo showing hardware deployment on poles.
图 5.用于实时涵洞可视堵塞监测的 AIoT 硬件设置(左)和现场部署(右)

未来研究方向

可以进一步探索计算机视觉的潜力,通过提取障碍相关信息来更好地理解视觉障碍:

  • 视觉阻塞估计百分比
  • 洪水传播碎片类型识别
  • 部分自动化可视堵塞分类

视觉阻塞估计百分比

在洪水管理决策的背景下,了解给定涵洞的堵塞状态并不总是足以做出与维护相关的决策。更进一步,估计给定涵洞的视觉堵塞百分比有助于洪水管理官员确定视觉堵塞程度高的涵洞的优先顺序。

从图像中分割可见开口并将分割的掩模分类为四个百分比视觉阻塞类之一的分割分类管道可以是潜在的解决方案之一。图 6 显示了视觉阻塞百分比估计的概念框图。

Diagram shows the process of extracting the visible culvert opening masks using Mask R-CNN and classifying them into percentage visual blockage classes using CNN classification model.
图 6 涵洞使用情况下视觉堵塞百分比估计的概念图

洪水传播碎片类型识别

The type of flood-borne debris interacting and accumulating at the culvert can result in distinct flooding impacts. Usually, vegetative debris is considered less concerning because of its porous nature in comparison to compact, urban debris.

碎片类型的自动检测是有待探索的另一个关键方面。

部分自动化可视堵塞分类

CNN 分类模型可用于促进人工涵洞检查,这是一种简单的解决方案,同时让洪水管理官员了解情况。鉴于问题的复杂性和初步分析,不可能仅使用 CNN 分类模型来自动化该过程。然而,可以开发一个部分自动化的框架来促进该过程。

图 7 显示了基于训练模型的分类概率的这种框架的概念。如果给定图像的分类概率小于给定阈值,则可以将其标记给洪水管理官员进行交叉验证。

Diagram shows the partially assisted deep learning classification framework for the visual blockage detection at culverts. Images classified by the deep learning model with less than 80% confidence are manually assisted by flood management experts.
图 7.部分自动化可视堵塞分类

总结

我们为涵洞的视觉堵塞检测提供了边缘计算解决方案,以帮助及时维护并避免堵塞相关的洪水事件。

使用 NVIDIA 边缘计算硬件开发和部署了一个分类检测计算机视觉模型,以检索涵洞的堵塞状态,即“畅通”、“堵塞”或“部分堵塞”。为了便于针对这个独特的问题域训练计算机视觉模型。我们使用了与涵洞视觉堵塞相关的模拟和人工生成的图像。

以多种方式扩展所提供的解决方案以实现进一步改进和附加的视觉阻塞信息的范围很大。视觉堵塞百分比的估计、洪水传播碎片的检测以及部分自动化视觉堵塞分类框架的开发是现有解决方案中可以进行的一些潜在增强。

 

Tags