rk1808交叉编译opencv_我用AI视觉模组DIY了一个驾驶疲劳监测仪
本帖最后由 azxyqcr 于 2019-8-26 11:01 编辑
近年来,人工智能技术已经发展到了超出想象的地步,以前觉得手写识别、语音输入、人脸识别就是很神奇的东西了,现在出现了一种脸部关键点定位的技术,能把五官轮廓都给精确的定位出来。每只眼睛能通过9个坐标点,标出眼睑、瞳孔的位置,这简直太适合用来监测犯困了!
用人工智能进行分析,算法的计算量一般都很大,以前用树莓派3B跑过人脸检测,用OpenCV的Haar Cascades算法,要160多毫秒才能跑完一帧人脸检测。如果用效果更好的深度神经网络模型,比如通过ncnn加速框架跑MobileNet-SSD模型,则需要260多毫秒,再跑一个关键点定位模型估计还要几十毫秒,整体帧率就只有3fps了。
是时候请出一个神奇的模块了,他内置了一颗AI加速芯片,单周期可以运行512次乘加运算,硬件支持卷积、池化、全连接等操作,还带了两颗手机摄像头模组,直接能对拍到的图像跑AI算法进行分析,通过UART输出分析后的结果,非常有意思!
目前VisionSeed模块提供的算法有:人脸检测、90点关键点定位、姿态角解算、人脸识别,还能够把自己训练的模型下载到模块上的AI芯片中运行。
我们先通过腾讯提供的PC端配置工具,看看模块上的AI算法输出的信息:
通过USB把VisionSeed连上电脑后,识别出来一个video0设备和ttyACM0设备,用配置工具打开ttyACM0,就能源源不断的获取到实时分析数据了,左下角马上显示出了我的脸部关键点,随着我眨眼、摇头、张嘴,这个虚拟的小人也跟着变化,数据可视化界面上,选择“左眼开闭”,曲线就开始滚动起来了,我每次眨眼,曲线就出现一个向下的尖峰,如果闭眼,曲线就稳定在0.05以下的位置,非常灵敏!
我们要把这个模组装到车上,当检测到闭眼的时候输出报警声。因为AI芯片上不能运行程序,所以需要一个单片机,这次我们用10块钱的STM32来运行报警的逻辑。
要怎么在STM32上获取到AI分析的结果呢?看了一下VisionSeed的文档,中间金黄色的FPC软排线里有UART接口,我们只需要把左边的那个接口板用个单片机替换掉,直接通过FPC座接到VisionSeed上,就能在STM32单片机上拿到结果了。
我们选择STM32F103来运行报警逻辑,通过串口0连接VisionSeed,串口1用来控制MP3模块发出报警声,PC13连接一个状态指示灯,原理图还是很简单的:
开始画板,右侧通过0.5mm间距的30pin连接器和VisionSeed相连;下方的Micro-USB接口供电,同时导出了VisionSeed的USB信号,可以方便调试;中间是STM32F103C8T6单片机;上方的4pin接口是ST-Link烧录口;左侧背面是一个3.5mm音频接口,用来向音箱输出报警声;正面还叠加了一个串口控制的MP3播放模块,布局是相当紧凑了。
导出gerber文件到工厂做板,三天后板子到手:
焊接元器件,推荐使用回流焊工艺,做PCB的时候加30元做一个钢网,就可以方便的手工印刷锡膏,把元器件放到焊盘上,送进烤箱,没错,家里烤面包的烤箱就可以!温度设定到250℃,看着锡膏完全融化后断电,一个个完美的焊点就出现了:
再用电烙铁焊上MP3模块:
最后要装到VisionSeed上。利用VisionSeed自带的散热片,结构稳固而紧凑。先拆掉左侧的接口板:
换上我们做好的单片机:
开始调试STM32程序。VisionSeed提供了开源的C++、Python、js的SDK,提供数据解析,直接就能得到人脸框、90个关键点的坐标。短短数十行代码,我们就完成了对双眼18个点的坐标分析,进而判断闭眼是不是超过了安全的时间:
通过ST-Link把程序下载到单片机中,然后把模组装到方向盘后,接上5v供电和音箱,坐上驾驶座,闭上眼睛,当当当——警铃大作,开车再也不怕犯困啦!
后记:
VisionSeed不仅仅是个集成了摄像头+AI芯片的模块,AI算法才是效果的保证,他内置了腾讯优图的算法,效果过硬,一直处于业界领先地位,以前一般在腾讯内部产品中应用,比如微信刷脸支付。现在通过VisionSeed人工智能视觉模块,开放给外界,你我也能接触到世界一流的腾讯人工智能算法,甚至能应用在自己的产品中,实在是非常开心。相信腾讯的开放,会惠及更多创业者和爱好者们。
另外,模块内还包括了人脸识别功能,通过附带工具软件管理数据库,能够实时离线识别库中的身份,非常强大,能做出很多有意思的东西,等你一起来探索!
rk1808交叉编译opencv_我用AI视觉模组DIY了一个驾驶疲劳监测仪相关推荐
- 用腾讯优图AI视觉模组在树莓派上玩吃火锅体感游戏
今年上半年,由于疫情原因,Switch 大火,Switch 平台上有许多款体感游戏,比如:健 身环大冒险.马力欧赛车.舞力全开.这些游戏凭着"硬核健身"的标签吸引了大量玩家, 通过 ...
- 模型计算算力_8核人工智能开源主板_基于 BITMAIN AI 计算模组_3.5寸
模型计算算力_8核人工智能开源主板_基于 BITMAIN AI 计算模组_3.5寸 产品概述 产品特点 1. 超高性能,超低功耗 2.体积小,接口丰富,灵活扩展 3.开发环境友好,工具链完备 应用场景 ...
- 安信可模组DIY项目分享 | 基于ESP-C3-12F的物联网时钟的总结回顾
目录 前言 优秀作品展示 绵宝物联智能时钟 基于ESP32-C3-12F物联网时钟 ESP32 OLED时钟 ESP8266 时钟 基于ESP32的多媒体旋钮 全息像素时钟 哔哩哔哩小精灵 更多资料 ...
- 美格智能推出全新一代5G R16车规级模组,助力智能驾驶时代加速到来
3月14日,在Embedded World 2023德国纽伦堡国际嵌入式系统展会上,全球领先的无线通信模组及解决方案提供商美格智能重磅推出全新一代5G车规级C-V2X MA925系列模组.此系列模组基 ...
- rk1808交叉编译opencv_关于在RK3288上安装Opencv的方法
本帖最后由 暴走的阿Sai 于 2017-7-7 10:30 编辑 Opencv是一个开源的计算机视觉库,可以给开发人员提供更便捷的方式设计复杂的视觉应用,Opencv主要是用c和c++编写,可以运行 ...
- AI视觉检测,助力工业生产实现智能化升级
伴随着5G.人工智能(AI)等新技术的应用,科技发展的红利逐步进入生产制造领域,一些耗时.重复的工作成为了人工智能替代的首选. 外观检测作为质量检测的重要组成部分,在生产制造中占有重要地位,利用AI设 ...
- AI视觉,视频云新挑战的解决之道
正文字数:4204 阅读时长:6分钟 AI就像一个加速器,正在渗透在多媒体应用的方方面面,改进甚至颠覆传统的图像视频处理方法.本文整理自腾讯云高级研发工程师刘兆瑞在LiveVideoStackCon ...
- Minecraft 1.12.2模组开发(四十三) 自定义盾牌(Shield)
今天我们在模组中实现一个自定义盾牌 1.新建一个接口类IHasModel: IHasModel.java public interface IHasModel {public void registe ...
- 芯讯通全系列模组亮相IOTE 2021第十六届国际物联网展·深圳站
作为一个涵盖物联网全产业链的综合性盛会,第十六届国际物联网展以"芯联万物 智赋全球"为主题,于10月23日-25日在深圳福田会展中心盛大揭幕.业界领先的物联网通讯模组厂家芯讯通携全 ...
- Minecraft 1.18.1、1.18.2模组开发 03.生物实体
注:1.16.5的实体教程和本文基本类似,只是一些类中的函数名称有所不同. 我们今天在1.18.1的模组中添加一个生物实体 1.新建entity文件夹 -> 文件夹中新建一个model文件夹,一 ...
最新文章
- ERROR 1820 (HY000): Unknown error 1820,ERROR 1046 (3D000):
- SpringCloud 应用在 Kubernetes 上的最佳实践 — 线上发布(可监控)
- SpringBoot中使用thymeleaf时ajax请求不能回显消息
- css学习笔记(三)——布局模型
- 马云的经典语录(转载)
- Apache MiNa 实现多人聊天室
- PoostgreSQL在Windows平台安装失败的解决
- 仅对 LINQ to Entities 中已排序的输入支持方法“Skip”。必须在调用“Skip”方法之前调用方法“OrderBy”
- 路由器DHCP配置及中继配置
- android签名命令行,Android系统签名位置及命令
- 计算机服务器安装系统安装教程,Windows Server操作系统安装教程
- windows下搭建voip服务器
- EV充电插头相关知识学习了解
- Java微信公众平台开发之素材管理
- Git系列之设置邮箱和用户名
- gitlab-runner 三种runner创建和和使用
- 路径与轨迹、路径规划与轨迹规划、路径跟踪与轨迹跟踪
- 关于我unity创建2d横版游戏的这件事1
- 手撕instanceof
- vr场景制作费用介绍,vr场景制作流程都有哪些?
热门文章
- Excel实验情况对比排序
- Atitit 提升记忆的稳定性防止遗忘 目录 1. 存储稳定性(记忆牢固性),需要多处存储,提升稳定性	1 2. 方法分类原则	2 2.1. 常复习	2 2.2. 复习方法多样化 利用多种感官	2
- Atitit it软件领域职称评级规定,精深方向。 目录 1. 软件工程师资格证	1 1.1. 法规规范 十大标准,三级五晋制。	1 1.2. 三级制 使用者 原理维修者 制造设计者	1 1.3.
- 《数据算法:Hadoop_Spark大数据处理技巧》艾提拉笔记.docx 第1章二次排序:简介 19 第2章二次排序:详细示例 42 第3章 Top 10 列表 54 第4章左外连接 96 第5
- Atitit 项目管理(5)----------后勤管理与工具链支持管理
- Atitit.进程管理常用api
- atitit.提升软件开发的效率and 质量的那些强大概念and方法总结
- paip.复制文件 文件操作 api的设计uapi java python php 最佳实践
- paip.c++ qt 项目工程互相引用的方法
- paip.分成系统会员推广分销系统的设计