Loading...

利用 Amazon Rekognition 提高交通信号灯的效率 机器学习博客

2026-01-27 13:16:01

利用亚马逊Rekognition提升交通信号灯效率

由 Colin Chu 和 Joe Wilson 于2024年9月23日发布在 亚马逊机器学习, 亚马逊Rekognition, 亚马逊SageMaker, 亚马逊SageMaker JumpStart, 亚马逊SageMaker Studio, 亚马逊简单存储服务 (S3)以及 人工智能 永久链接 评论 分享

关键要点

年度开销:各州和地方机构每年大约支出 123 亿用于交通信号灯的运营与维护。交通阻塞成本:交通拥堵每年让驾驶者损失约 220 亿。解决方案的目的:应用人工智能驱动的检测解决方案,可以显著减少交通拥堵并降低运营和维护成本。技术使用:实现方案需要用到亚马逊Rekognition自动检测交叉口的物体如汽车和行人,并根据检测结果调整交通信号。

州和地方交通机构大约每年花费 123 亿 运营和维护信号交通路口。而交通阻塞每年给驾驶者带来约 220 亿 的成本。通过实施基于人工智能 (AI) 的检测解决方案,可以显著减轻路口的拥堵并减少运营与维护费用。本篇文章将介绍如何利用 亚马逊Rekognition 来缓解交通信号交叉路口的拥堵以及减少相关费用。

州和地方机构依赖交通信号以便安全疏导汽车、行人及其他通行者。交通信号主要分为两种类型:固定和动态。固定灯是由电机械信号控制,根据设定的时间段切换信号。而动态信号灯则可以根据交通情况进行调整,利用埋设于路面或信号灯上的探测器来实现。随着人口不断增长,街道上驶过的汽车、自行车和行人也随之增多,这将对这两种交通系统的效率产生负面影响。

解决方案概述

从高层次来看,我们的解决方案使用 亚马逊Rekognition 来自动检测交叉路口的物体如汽车、自行车等和场景。在检测之后,亚马逊Rekognition 会在每个物体如车辆周围创建边界框,并计算每个物体之间的距离例如,交叉口检测到的车辆之间的距离。通过编程使用计算出的距离结果来控制交通流量,从而减少拥堵,整个过程无需人工干预。

前提条件

该解决方案可在个人AWS环境中使用我们提供的代码实施。但在运行本文中的实验之前,需要满足以下几个前提条件:

拥有一个AWS账户。如有必要,请创建一个。具备适当的 AWS身份与访问管理 (IAM) 权限,访问实验中所用的服务。如果这是您第一次设置AWS账户,请参阅 IAM文档 获取有关配置IAM的信息。拥有一个SageMaker Studio笔记本。如有必要,请创建一个。

解决方案架构

以下图示展示了实验的架构:

此解决方案使用下列AI和机器学习AI/ML、无服务器及托管技术:

亚马逊SageMaker:一种全托管的机器学习服务,旨在帮助数据科学家和开发者构建、训练和部署机器学习应用。亚马逊Rekognition:支持为您的应用添加图像和视频分析。IAM:提供认证和授权服务,使解决方案中的资源能够相互通信。

解决方案运作流程

将 交通交叉口视频 上传到您的SageMaker环境中,这视频来源于外部设备。一个Python函数使用CV2将视频分割为图像帧。视频帧完成后,该函数会调用亚马逊Rekognition。亚马逊Rekognition会分析每个帧并在检测到的每台车辆周围创建边界框。该函数统计边界框的数量,并根据检测到的汽车数量使用预定义逻辑变更交通信号。

解决方案实施步骤

现在,让我们一起走过解决方案的实施步骤。

配置SageMaker:

在导航面板中选择 Domains,然后选择您的域名。

找到并复制SageMaker 执行角色。

转到IAM控制台并选择导航面板中的 Roles,粘贴您在前一步复制的SageMaker执行角色。

启用SageMaker与亚马逊Rekognition交互:

接下来,启用SageMaker与亚马逊Rekognition进行交互。

在SageMaker控制台中选择您的SageMaker执行角色,然后选择 Add permission,接着选择 Attach policies。在搜索框中输入并选择 AmazonRekognitionFullAccess Policy。见下图。

配置好IAM权限后,您可以在SageMaker中运行笔记本,获得对亚马逊Rekognition进行视频分析的访问权。

下载 Rekognition Notebook 和 交通交叉口数据 到您的本地环境。在亚马逊SageMaker Studio,上传 您下载的笔记本和数据。

代码实施说明:

本实验使用 OpenCv 和 Boto3 以准备SageMaker环境。OpenCv 是一个开放源代码库,其中包含超过250种计算机视觉分析所需的算法。Boto3是AWS的Python SDK,帮助您将AWS服务与用Python编写的应用程序或脚本进行集成。

首先,引入 OpenCv 和 Boto3 库。下一个代码单元构建用于分析视频的函数。我们将逐步介绍函数的关键组件。这一函数开始时创建一个用于被分析的视频帧。

将帧写入一个新的视频写入文件,并使用MP4扩展名。如果视频没有帧,函数则会将其转换为JPEG文件。函数还定义并使用边界框识别交通车道。亚马逊Rekognition的图像处理在检测后的图像上放置边界框,方便后续分析。

函数捕获视频帧并将其发送至亚马逊Rekognition进行图像分析。模型利用边界框检测并分类视频中捕获的图像如汽车和行人。此代码随后检测视频中是否有车辆,并为每辆车生成一个边界框。

计算汽车的大小和位置,以准确精确其所在位置。确认汽车的大小及所在位置后,模型将检查该汽车是否处于检测到的车道中,接着统计在车道中检测到的汽车数量。

飞鸟加速器苹果版

检测和计算车道中汽车的大小、位置及数量的结果会在函数中写入一个新文件。

在将输出写入新文件时,进行了一些几何计算以确定检测到的物体的详细信息。例如,使用多边形来确定物体的大小。

函数构建完成后,下一步是以最低95的信心分数运行函数并对测试视频进行测试。

最后一行代码允许您将结果和信心级别的输出从SageMaker目录下载视频,以便检查分析结果。

利用 Amazon Rekognition 提高交通信号灯的效率 机器学习博客

成本估算

我们对成本的逻辑估算是每个交叉口 6000,假设每秒一个帧,使用四台相机,每个交叉口有一个SageMaker笔记本。需要特别指出的是,并非每个交叉口都是四车道交叉口。在更人口稠密的交通区域实施此解决方案会增加整体交通流量。

成本细节及分解

服务描述第一个月成本前12个月费用亚马逊SageMaker Studio笔记本 实例名称:mlt3medium 数据科学家数量:1 每位数据科学家的Studio笔记本实例数量:1 Studio笔记本每天小时数:24 Studio每月工作天数:3036432亚马逊Rekognition每月处理的图像数量:34560034560414720亚马逊简单存储服务 (S3) 标准存储类别 S3标准存储:每月4320 GB 每月S3标准的PUT、COPY、POST和LIST请求数量:259200011232134784每年总估算592704

需要注意的是,这只是一个估算,实际费用可能会因定制而增加。如需了解详细的费用信息,请访问AWS服务定价页面。如果有疑问,请联系AWS团队以开展更技术性的讨论。

清理

删除为此解决方案创建的所有AWS资源,以避免未来的费用。

结论

本篇文章提供了一种利用亚马逊Rekognition提升交通灯效率的解决方案。所提出的方案不仅能够节省成本,还能支持道路安全并减少交叉口的拥堵。这一切都使交通管理变得更加高效。我们强烈建议您访问 亚马逊Rekognition开发者指南 了解更多有关如何加速其他图像识别和视频分析任务的信息。

关于作者

Hao Lun Colin Chu 是AWS的一名创新型解决方案架构师,帮助合作伙伴和客户利用尖端云技术解决复杂的业务挑战。凭借在云迁移、现代化和AI/ML领域的丰富经验,Colin为组织提供将需求转化为变革性AWS解决方案的建议。充满热情地使用技术作为推动积极改变的力量,他致力于提供能够赋能组织并改善人们生活的解决方案。在工作之外,他喜欢打鼓、打排球和玩桌游!

Joe Wilson 是亚马逊网络服务的解决方案架构师,支持非营利组织。他为希望在云中安全构建、部署或扩展应用程序的非营利组织提供技术指导。他热衷于利用数据和技术为社会服务。Joe有数据科学和国际发展方面的背景。在工作之余,Joe喜欢与家人、朋友共度时光以及讨论创新和创业。

使用 IP 限制的预签名 URL 来增强 Amazon SageMaker Ground Truth
使用 IP 限制的预签名 URL 来增强 Amazon SageMaker Ground Truth

强化 Amazon SageMaker 安全性的 IP 限制签名 URL关键要点IP 限制的签名 URL:此功能提升了 SageMaker Ground Truth 的数据安全性,通过仅允许特定 IP...

外包中的复杂性、可互换性和合作伙伴关系 云企业战略博客
外包中的复杂性、可互换性和合作伙伴关系 云企业战略博客

外包中的复杂性、可互换性与合作关系关键要点外包决策与业务流程:理解哪些业务流程应由内部执行,哪些应外包。复杂性与合作关系:外包的复杂任务往往需要形成长期的合作关系,而简单任务则可采用交易模式进行外包。...