树莓派智能自行车灯:亲,小心后方大卡车~

Raspberry Pi 计算模块 4 成本低、功耗低、结构紧凑、性能卓越,是 Velo AI 首次推出的道路安全产品的核心,该产品可提醒骑车人注意身后的车辆移动。

位于匹兹堡的 Velo AI 公司由机器人专家 Clarke Haynes 和人工智能专家 Micol Marchetti-Bowick 共同创立,其核心使命是通过使用智能技术提高各种形式的交通安全。两人都有为 Uber 等公司提供自动驾驶汽车技术的背景,并试图将类似的人工智能算法应用于帮助骑自行车的人。Alison Treaster 是核心团队的补充,她负责领导这家初创公司的商业合作和社区建设工作。

Velo AI 的首款产品是 Copilot,这是一款人工智能驱动的自行车灯和摄像头。它以 Raspberry Pi 计算模块 4 为基础,能够检测和分辨附近的车辆,了解车辆何时准备超车,并识别危险接近的具有攻击性或分心的驾驶员--在这种情况下,它会向骑车人和驾驶员发出声音和视觉警报,以帮助防止危险情况和撞车事故的发生。

挑战

意识到现有自行车摄像头和车辆检测设备的局限性,Velo AI 团队试图创造一种基于人工智能的更复杂的替代方案,以改善骑车人的道路安全。

海恩斯举例说,像 Garmin Varia 这样基于雷达的设备 "无法确定你身后是汽车还是公交车。而对于骑自行车的人来说,被一辆丰田花冠超越和被一辆大型市政公交车超越是有很大区别的"。此外,他指出,雷达只能进行径向测量: "雷达可以告诉你是否有东西正在靠近你,但无法告诉你是否有东西会在十英尺或一英尺的空间内超过你"。

从雷达到基于摄像头的解决方案,目的是创造一种设备,能够告诉骑车人 "世界上发生的更多事情,并做很多雷达做不到的事情"。该设备需要通过提供态势感知和附近车辆的警报来帮助骑车人。这包括利用计算机视觉算法区分不同类型车辆的能力,以及估计其相对速度、识别和预测驾驶员行为的能力。

开发 Copilot 人工智能算法的第一步是收集大量数据,这些数据来自在各种道路类型周围的骑行,重点是与车辆的互动。在这一过程中,匹兹堡自行车爱好者(从通勤者到休闲骑行者)组成的测试小组提供了帮助,他们获得了免费的原型设备进行测试。

虽然 Velo AI 团队在自动驾驶汽车领域拥有丰富的经验,但要创建和销售一款全新的实体产品,学习曲线非常陡峭。"海恩斯坦言:"对我们来说,要投入精力并搞清楚如何组装硬件产品是一个巨大的挑战。"那么,这个产品的耐候性如何?我们如何为自行车灯设计一个聚焦光的透镜?

将相机、LED 灯、电子设备和电池组装入一个小巧轻便的包装中是一大挑战。该设备还需要足够强大,能够运行人工智能神经网络,但耗电量相对较低,以便能够用于较长时间的自行车骑行。

解决方案

Raspberry Pi 计算模块 4 实际上是 Copilot 的大脑,在定制的 Hailo AI 协处理器的辅助下运行设备计算机视觉所需的神经网络。一个固定镜头的 Arducam 摄像机用于录制视频片段。

Copilot 配备了一个支架,可将其固定在自行车的座管或鞍座导轨上,摄像头朝后。人工智能会分析实时视频录像,并根据检测到的驾驶员行为类型触发自定义警报--对骑车人发出声音,对后面的驾驶员发出闪烁的 LED 灯模式警报。

可检测到三大类车辆行为,并用于触发不同的警报。Marchetti-Bowick解释说:"'跟随'行为是指 "车辆跟在你身后,但没有加速驶向你"。接近 "是指车辆相对于你加速: "它离你越来越近......它可以在你的正后方,也可以在与你相邻的车道上。第三类是 "超车": "当我们认为车辆即将超过你时。这可能是你最需要注意的,因为这是他们与你作为骑车人之间最接近的互动。

此外,该设备还可以连接智能手机上的配套应用程序,该应用程序可以安装在自行车的车把上,向骑行者显示简化的道路视图和附近车辆的位置。用户还可以通过该应用程序下载骑行录像。

该装置由可充电的双芯锂离子电池供电。Copilot 的耗电量仅为 4-5 瓦,相当于 5 小时左右的电池寿命。

为什么选择树莓派?

海恩斯说,团队早期曾在 Copilot 原型机上使用 Nvidia Jetson 板进行试验,但发现它们太贵,而且 GPU 太耗电。"如果要全速运行 GPU,即使是 Jetson......也要 10 到 20 瓦。我们希望人们能用它骑上四五个小时的自行车,因此需要一个电池来为 10 瓦的功率供电,这就会产生太多的热量和太重的重量(因为需要更大的电池组)。这就是我们选择 Raspberry Pi 的真正原因"。

在 Velo AI 与合约制造商和 Raspberry Pi 设计合作伙伴 Hellbender 合作之前,第一块电路板非常简单: "我们把 CM4 插在一边,把 M.2 Hailo 插在另一边,然后连接摄像头。我们就拥有了证明计算堆栈工作所需的一切。从那时起,CM4 的性能越来越先进。但事实上,CM4 是一个独立的分立组件,可以正常工作;我们可以使用它的所有功能,包括 Wi-Fi 和蓝牙。这对我们刚刚起步是非常有利的。

为了以超低的功耗运行人工智能,他们添加了一个 Hailo 人工智能协处理器: "海恩斯说:"Raspberry Pi 和 Hailo 的结合使原型设计和开发变得异常简单。

成果

Copilot 吸引了不同类型的骑车人,Treaster 说。"没有特定的客户角色,但他们希望支持让街道更安全,因为他们经常作为骑车人使用街道"。潜在客户还包括父母和配偶,他们关心生活中的骑车人,并希望有一些东西能让他们在路上更安全。"我们有很多人说,'我会给我的儿子或女儿买这个,我会给我的丈夫买这个'。

海恩斯说,由于它能提高人们的意识,该设备已经成为一些骑车人必不可少的辅助工具。"我们从早期客户那里得到了很好的反馈,他们不喜欢骑车时没有这个装置。

该团队希望 Copilot 能带来更广泛的社会效益。"海恩斯指出:"人们不骑自行车的首要原因是没有安全感。"因此,我们的目标是,让更多的人骑自行车,让他们因为感到安全而更多地骑自行车。

从 Copilot 设备收集到的数据还能为地方政府和道路安全组织提供有用的帮助,使城市和乡镇的自行车骑行更加安全。海恩斯说:"我们正在与匹兹堡市展开合作,""我们将在骑自行车上班的人群中部署数十个这样的Copilot,并利用这些数据实际告知我们需要在哪些地方改善自行车基础设施。"

Treaster 透露,另一项试点计划计划在弗吉尼亚州的罗诺克市实施。他们正在开展 "零死亡愿景 "运动(最终目标是实现行人和骑自行车者零死亡)。他们说,如果能在立法通过之前获得任何与骑自行车有关的数据,比如说我们需要在骑自行车者通过时给他们留出三英尺的空间,那就再好不过了"。然后可以对立法后的数据进行分析,以了解立法对驾驶员行为的影响。

"海恩斯补充说:"我们绝对有兴趣尽可能多地使用这些设备,并利用这些数据让骑自行车变得更安全。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

政安晨:示例演绎TensorFlow的官方指南(一){基础知识}

为什么要示例演绎? 既然有了官方指南,咱们在官方指南上看看就可以了,为什么还要写示例演绎的文章呢? 其实对于初步了解TensorFlow的小伙伴们而言,示例演绎才是最重要的。 官方文档已经假定了您已经具备了相当合适的…

在容器中使用buildah构建镜像

简介 buildah是一个构建OCI标准镜像的工具,可以用来替代docker build 在常见的linux发行版中可直接通过包管理工具安装使用 # centos yum install buildah# ubuntu/debian apt install buildah# alpine apk add buildah其他发行版安装方法详见 github&#xff0c…

jsp教务管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 JSP 教务管理系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0&…

【C生万物】C语言分支和循环语句

📚博客主页:爱敲代码的小杨. ✨专栏:《Java SE语法》 | 《数据结构与算法》 | 《C生万物》 ❤️感谢大家点赞👍🏻收藏⭐评论✍🏻,您的三连就是我持续更新的动力❤️ 🙏小杨水平有…

C++重新入门-C++变量作用域

目录 1.C变量定义 2.C作用域 3.局部变量 4.全局变量 5.块作用域变量 6.初始化局部变量和全局变量 1.C变量定义 一般来说有三个地方可以定义变量: 在函数或一个代码块内部声明的变量,称为局部变量。 在函数参数的定义中声明的变量,称为…

逆向工程:揭开科技神秘面纱的艺术

在当今这个科技飞速发展的时代,我们每天都在与各种电子产品、软件应用打交道。然而,你是否想过,这些看似复杂的高科技产品是如何被创造出来的?今天,我们就来探讨一下逆向工程这一神秘而又令人着迷的领域。 一、什么是…

WireShark使用教程(TCP/IP 部分情况居然变成三次挥手了???)

WireShark自学 WrieShark介绍WrieShark的应用常见协议包的抓取 WrieShark常用手段混杂模式 和 普通模式混杂模式打开方式普通模式 过滤器过滤器类型捕获过滤器显示过滤器语法捕获到的数据的列的含义常见的 Protocols - Values 键盘快捷键常用的过滤命令常用协议分析ARP 协议分析…

阿里云游戏服务器租用价格表,2024最新报价

阿里云游戏服务器租用价格表:4核16G服务器26元1个月、146元半年,游戏专业服务器8核32G配置90元一个月、271元3个月,阿里云服务器网aliyunfuwuqi.com分享阿里云游戏专用服务器详细配置和精准报价: 阿里云游戏服务器租用价格表 阿…

Halcon机器视觉实战----提取水平方向缝隙区域

前言 如何从一块区域内找到水平方向的缝隙区域(不是高斯线条,从图像中提取,而是从区域内提取,考虑到了区域所在的方向); dev_close_window () dev_open_window (0, 0, 800, 800, black, WindowHandle) re…

揭秘海外云手机的诸多优势

在电商领域,相信越来越多人听到“海外云手机”一词。尽管我们熟悉智能手机,但“云手机”到底是什么?它是如何在没有实体形态或SIM卡的情况下存在的呢?实际上,海外云手机相当于您放在国外的虚拟手机。本文将深入探讨这一…

详解洛谷P2912 [USACO08OCT] Pasture Walking G(牧场行走)(lca模板题)

题目 思路 一道模板题&#xff0c;没啥好说的&#xff0c;直接见代码 代码 #include <bits/stdc.h> using namespace std; int n,q,a,to[100001][22],b,deep[100001],c,t[1000001]; struct ff {int id,len; }; vector<ff> vec[100001]; void dfs(int x,int fa,i…

STM32搭建开发环境

常用开发工具简介 集成开发环境 MDK&#xff1a;全名RealViewMDK&#xff0c;是Keil公司&#xff08;已被ARM收购的&#xff09;一款集成开发环境&#xff0c;界面美观&#xff0c;简单易用&#xff0c;是STM32最常用的集成开发环境EWARM&#xff1a;IAR公司的一款集成开发环…

Qt 常见容器类用法(二)

目录 QList类 QLinkedList类 QList类 对于不同的数据类型&#xff0c;QList<T>采取不同的存储策略&#xff0c;存储策略如下&#xff1a; 如果T是一个指针类型或指针大小的基本数据类型(该基本类型占有的字节数和指针类型占有的字节数相同)&#xff0c;QList<T>…

【Git版本控制 03】远程操作

目录 一、克隆远程仓库 二、推送远程仓库 三、拉取远程仓库 四、忽略特殊文件 五、命令配置别名 一、克隆远程仓库 Git是分布式版本控制系统&#xff0c;同⼀个Git仓库&#xff0c;可以分布到不同的机器上。怎么分布呢&#xff1f; 找⼀台电脑充当服务器的⻆⾊&#xff…

2024技术趋势:未来是怎样的?Mendix大咖给你解答

智能空间、 混合区块链、 数字加密货币、 云平台、 无人机、 生成型人工智能、 人工智能代理、 扩展现实&#xff08;XR&#xff09;、 边缘计算、 智能自动化、 网络安全、 量子机器学习、 物联网&#xff08;IoT&#xff09;连接、 可持续的IT。 他们都有什么共同点&#xf…

RSA算法加密、签名和验签、解密

一、背景介绍 RSA是一种非对称加密算法&#xff0c;该加密算法的原理就是对一极大整数做因数分解的困难性来保证安全性。通常个人保存私钥&#xff0c;公钥是公开的&#xff08;可能同时多人持有&#xff09;。 二、RSA算法工具类 package com.hl.rsademo.util;import java.i…

HubSpot x 小红书:MessageBox打破数据壁垒

在当今数字营销的快速发展环境中&#xff0c;企业面临着将多个系统平台整合在一起以实现更有效营销策略的挑战。然而&#xff0c;随着技术的不断进步&#xff0c;诸如MessageBox这样的工具正在成为解决这一挑战的关键。MessageBox作为一种能够对接多个系统平台的工具&#xff0…

第二证券:大涨5%,这一指数爆发!

A股商场今日上午进一步上行&#xff0c;各大指数持续上涨&#xff0c;其间上证指数克复2800点。小市值股票体现更佳&#xff0c;中证1000指数上午大涨5%。 港股商场方面&#xff0c;今日上午一度大幅上涨&#xff0c;后涨幅有所回落。港股百胜我国今日上午体现抢眼&#xff0c…

动态扩缩容下的全局流水号设计

关于全局流水号&#xff0c;业内用的比较多的就是雪花算法&#xff0c;一直没理解在动态扩缩容下其中的workId和 datacenterId如何设置&#xff0c;查到了几个方法&#xff1a;reidis中取&#xff0c;待后期实践下。 先简单的介绍一下雪花算法&#xff0c;雪花算法生成的Id由…

datax离线同步oracle表到clickhouse实践1

时间&#xff1a;2024.01 目录1、安装启动 oracle19c 容器 2、rpm包安装clickhouse 3、datax安装 4、datax同步 目标库根据要同步的表&#xff0c;按照clickhouse建表规范建表 编写json文件 编写增量同步shell脚本&#xff0c;加入 crond 定时任务 1、安装启动 oracle19c 容器…