0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于EAIDK310的视觉导航自动驾驶小车

安芯教育科技 来源:安芯教育科技 作者:安芯教育科技 2022-03-23 15:42 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

2021研电赛已经告一段落啦 ~

小编为大家整理了获奖作品集,在每周一为大家分享获奖作品,记得来看连载哟 ~

全国三等奖作品:基于EAIDK310的视觉导航自动驾驶小车

团队介绍

参赛单位:上海应用技术大学

参赛队伍:EAIDK666

指导老师:蒋文萍 丁肇红

参赛队员:温晓静 孙亦劼 杜为栋

获奖情况:"ARM"企业专项全国一等奖,全国总决赛三等奖,上海赛区三等奖

作品背景

汽车行业已经进入了一个颠覆性的革新时代,这个时代里面,智能化是一个必然的趋势。相对传统的人工驾驶,自动驾驶在安全,便捷,效率上有着巨大的优势。目前,我国已有自动驾驶汽车正在投入试用,于规定道路上取得一定成果。一方面自动驾驶的发展趋势方兴未艾,自动驾驶技术成为当前的主流研究方向。另一方面,中国在芯片电子领域在国际上处于被打压的形势下,本着挑战自我熟悉国产芯片的原则选择了该ARM中国企业命题,该赛题由安谋中国和OPEN AI LAB联合设计,该自动驾驶赛题围绕具体应用场景,结合传感器算法和指定控制设备,以达到搭建完整应用产品。

技术难点与创新点

技术难点

软件移植:由于EAIDK310不像树莓派那样是一款比较大众的开发板,其网上资料有限,如何完成已经在其他开发板的功能即软件移植是第一大难点。

性能调优:EAIDK310板载芯片是瑞芯微的RK3228H,EAIDK310参数见官网。作为一款入门级嵌入式AI处理器想要实现基于图像识别的自动驾驶还是有很大的性能瓶颈,因此性能调优是第二大难点

使用门槛:由于该命题为企业命题,而非开放命题,没有任何实现准备工作或者传承,面对一块陌生的开发板陌生的系统陌生的芯片,在有限的时间内将其跑通完成赛题指定任务是一个很大的门槛。

创新点

硬件上采用了双摄像头架构:一个是用于采集车身在道路上位置的俯视安装的摄像头,其前瞻大约两倍车身长度,一个是用于采集行人交通标识等路况信息的平时安装的微广角摄像头。双摄像头的架构极大提高了图像采集和处理的效率,降低了软件分割处理图像的压力。

软件架构:由于EAIDK310平台综合各方面因素,摒弃使用业界常用的ROS作为解决方案,而是使用了一个轻量级的数据缓存库Redis和DSDL来实现和ROS类似的功能,使得程序耦合性降低,以较低的成本实现了一种跨进程跨节点跨语言且较高性能的架构。

算法优化上关于图像识别部分采用了Tengine边缘推理框架进行了性能调优加速,使整个系统的实时性得以提高。

实用价值

得益于该作品在硬件和软件架构上的创新,提出了一套成本低效率高的嵌入式视觉导航框架,使得研究该技术的硬件成本门槛降低,不仅仅在自动驾驶,该作品提出的基于Redis的软件方案在嵌入式系统中都是一个不错值得复制借鉴的框架。此外该作品最后实验结果验证了Tengine在嵌入式平台上优异的表现,为嵌入式系统运行AI推理优化加速调优提供了思路。

系统设计

系统架构图

基于EAIDK310的视觉导航自动驾驶小车

本设计整体的系统构如图所示,从下至上依次有硬件层,驱动层,数据交互层,数据处理层,控制算法层和应用层。

硬件层是本设计最直观的物理体现形式,主要包括电机、舵机、转速传感器IMU传感器按键蜂鸣器等。

驱动层是与硬件直接进行交互使其运行起来的的最底层软件,包括驱动电机舵机的PWM,获取转速传感器的输入捕捉,驱动IMU的IIC总线,以及用于人机,机机交互的GPIO和UART

数据交互层是连接底层与上层的关键一层,它是对驱动层从数据流的角度进一步的抽象和封装,为上层应用对底层硬件的访问控制提供了统一的接口和权限的控制。

数据滤波层是数据经过的第一层处理,主要提供了对数据最基础的数学运算变换以及数字信号处理手段。基于底层提供的原始数据或者处理过的数据,控制算法层将这些数据带入到实际模型中完成对模型的控制。

应用层是最上层的逻辑处理层,在这一层实现了最具体的功能,例如让小车循迹行驶、以及小车自主行驶策略控制等均在应用层完成。下面对本架构从硬件和软件的角度展开阐述。

硬件架构图

基于EAIDK310的视觉导航自动驾驶小车

上图为本设计的系统总体硬件框架图,硬件系统采用主控制器加辅助控制器的架构。主控制器即EAIDK310开发板板载RK3228H处理器,辅助处理器为STM32F405处理器。主控制器负责摄像头数据采集处理,以及主要控制算法执行。辅助处理器是一个32位单片机,主要负责电机驱动,速度转向控制,以及车身姿态解算。

特别地,在主处理侧采用的是双摄像头方案,如下图(a)所示,其中摄像头1是用于采集车身在道路上位置,其安装于车身后方高度约15cm的位置,安装角度12到15度,安装高度和安装角度共同决定其前瞻大约两倍车身长度,摄像头2采用微广角摄像头,用于采集小车前方行人交通标识等实时路况信息,该摄像头安装于车头,正视小车前方视野。双摄像头方案的视野示意图如图(b)所示,相比单摄像头方案,双摄像头采集到的数据分别可以直接用于道路识别分割和交通标识处理,从而减少了处理器对图片的预处理工作。

基于EAIDK310的视觉导航自动驾驶小车

软件架构

基于EAIDK310的视觉导航自动驾驶小车

与硬件系统对应地,软件也分为两部分,其架构图如图所示,主要分为主处理器端和辅处理器端,在主处理器端,采用opencv进行图像采集以及基本处理,采用Tengine实现人工智能训练模型的推理计算。其数据处理及计算的所有结果均写入redis供其他程序(车控算法、数据协议、图像识别等模块)调用。车控驱动是用python编写的一个与STM32单片机串口通信的节点,其通过实时读取redis中来自上层应用程序(车控算法)对小车的控制指令并随即通过串口协议发送给辅处理器端指挥小车做出相应动作。

系统测试

最终小车的设计图和整体图如图所示

基于EAIDK310的视觉导航自动驾驶小车

交通标识道具

ce293b9e-92e9-11ec-952b-dac502259ad0.png

数据集

基于EAIDK310的视觉导航自动驾驶小车

赛道分割巡线

交通标识识别

未来展望

基于作品中提出的Redis和DSDL实现的机器人框架基础进行进一步的完善和补充,使其成为ROS的一个可替代选择,特别是在低性能处理器上。

总结

经过本次对EAIDK310的探索学习,以实际需求为应用背景,实现了自动驾驶基于双摄像头的自动驾驶Demo。

针对最初的功能需求,分别对巡线,交通标识识别进行了测试。由于巡线采用的是基础的机器视觉算法,对于背景复杂的路况的效果不是很理想,但是对于简单的赛道巡线效果非常好。

交通标识识别采用的是机器学习算法,前期在测试过程中记录了大量的训练数据供其训练,由于训练数据和实际验证场景相同,因此得到了较好的识别效果。

本次项目表明即使RK3228H处理器的性能限制不能跑大型AI模型算法,但得益于基于Redis的数据交互框架和Tengine边缘推理计算框架,使得基础嵌入式设备在AI项目中也可以发挥其作用,是一种低成本的解决方案。

参赛感悟

首先非常感谢安谋中国对我们团队作品的肯定,我们团队作品的获奖情况比较两极分化,在横向评比的上海赛区获得三等奖,在纵向评比的ARM企业命题获得一等奖,不出所料在同样是横向评比的全国赛区还是三等奖,其实不管是三等奖还是一等奖我们团队都是可以接受的。

清晰记得我们去上海赛区参加比赛时我们去看其他参赛团队的作品海报时的震撼,我们的作品时如此的朴实无华,没有看不懂的题目,没有高大上的技术,也更没有雄厚的资金支持,我们当时的小车的摄像头由于经费问题还是用的十年前用来QQ视频聊天的那种摄像头。所以给我们评三等奖我们也觉得我们确实不如其他团队的作品。

但是,企业赛题给我们评为一等奖我们也觉得我们是值得这个分肯定,我们做的虽然没有那么高大上,但所做工作紧靠赛题,没有丝毫偏题,一步步走来,扎扎实实,一步一个脚印,遇到问题逐个克服....

刚刚拿到EAIDK310开发板时陷入了平均一天重装两次系统的困境,要不是因为装软件装的内存不足了,要不是装软件装的系统崩溃了,几乎不能和这块板子好好相处。后来总算学会了使用 rsync 备份系统以后这个情况才得以改善,但只是重装系统变成了恢复系统,至少比之前进步了,但此时离报名截止还有一个月了,然后又陷入了跟OpenCV死磕,跟ROS死磕,跟pygame死磕,跟Tengine死磕,跟rockchip死磕。。。。的困境,这块板子太小众了,好多软件包都得自己编译,而且性能不是很高,在别的平台上跑通的在这里跑的很拉跨,直到最后我们拍板定下来放弃使用ROS放弃使用那么多依赖,一切自己重头来并使用一块STM32辅助处理器我们的工作才步入正轨,但话又说回来站在巨人的肩膀上不是更好吗,这时我们剑走偏锋瞄准了在互联网领域如数家珍的Redis(做嵌入式的同学可能对这个不是很了解),Redis和DSDL结合不就是一个轻量级的ROS框架嘛,说干就干,看是研究Redis的源码,研究DSDL的源码,总算在报名截止前一周我们实现了基础的框架模型,小车可以动起来了,各个节点之间通讯打通了,这个时候我们才确定报名ARM赛题,给队伍起了EAIDK666队的队名,申请了开发板(之前那块自掏腰包买的)图像识别我们认真学习了公开课的视频,对数据集进行了扩充并重新训练模型部署,此时马上就要报名截止了,我们PPT还没有做,视频还没有录。。。。一直在和时间赛跑

就这样我们扎扎实实一步一步走来一等奖是对我们极大的肯定和鼓励!

一定是对安谋中国的感激让我坚持到现在把这个分享写完,截止今天(2021年8月27日)我刚刚参加完暑假的最后一个比赛的决赛(集创赛),我的暑假几乎是在竞赛中度过的,这个比赛结果我已经没有任何期待了,因为此时此刻我只想好好休息,我真的太累了,感谢安谋中国对我们作品的肯定。最后还是感谢安谋中国感谢我的导师!

由于作品中有些内容正后续要写论文投稿所以写的不是很详细,等论文投出去一定和大家分享,还有Redis和DSDL造出来的框架若各种条件都允许我们会将源码公开出来抛砖引玉。

原文标题:【2021研电赛作品分享】第十八期 | 基于EAIDK310的视觉导航自动驾驶小车

文章出处:【微信公众号:安芯教育科技】欢迎添加关注!文章转载请注明出处。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2578

    文章

    55895

    浏览量

    795843
  • 芯片
    +关注

    关注

    463

    文章

    54706

    浏览量

    471488
  • 自动驾驶
    +关注

    关注

    795

    文章

    15073

    浏览量

    182075

原文标题:【2021研电赛作品分享】第十八期 | 基于EAIDK310的视觉导航自动驾驶小车

文章出处:【微信号:Ithingedu,微信公众号:安芯教育科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    视觉自动驾驶如何在夜晚感知场景?

    [首发于智驾最前沿微信公众号]在聊今天的话题前,先申明下,对于纯视觉自动驾驶来说,夜晚确实是一个极具挑战的场景,今天仅从技术实现上来讨论纯视觉自动驾驶在夜间感知场景的可能性。 很多老司
    的头像 发表于 04-22 09:00 304次阅读
    纯<b class='flag-5'>视觉</b><b class='flag-5'>自动驾驶</b>如何在夜晚感知场景?

    为啥有人认为自动驾驶视觉方案比激光雷达方案好?

    激光雷达曾被视为自动驾驶不可或缺的“安全拐杖”,但以特斯拉为代表的自动驾驶方案让大家看到了纯视觉的潜力。视觉方案不仅在成本上有优势,更在模拟人类驾驶
    的头像 发表于 03-30 17:18 1208次阅读

    为什么光照对纯视觉自动驾驶影响较大?

    自动驾驶的技术路线中,纯视觉方案因其模仿人类驾驶逻辑与低廉的硬件成本,一直是很多车企的选择。但这种高度依赖摄像头的感知方式,在夜幕降临、车辆驶入幽暗的隧道,或是遭遇强烈的逆光直射、漫天的雨雪浓雾时,感知能力会发生断崖式下跌。为
    的头像 发表于 03-09 17:06 1167次阅读

    视觉自动驾驶能识别出高透明玻璃墙吗?

    [首发于智驾最前沿微信公众号]最近在和大家聊纯视觉自动驾驶能否识别3D图像时,有小伙伴提问,纯视觉自动驾驶能否识别出高透明玻璃墙,今天智驾最前沿就和大家简单聊聊相关内容。 当然,在开始
    的头像 发表于 02-18 08:49 1.1w次阅读
    纯<b class='flag-5'>视觉</b><b class='flag-5'>自动驾驶</b>能识别出高透明玻璃墙吗?

    视觉自动驾驶的优势和劣势有哪些?

    [首发于智驾最前沿微信公众号]最近有很多小伙伴在后台询问纯视觉自动驾驶的优劣,纯视觉自动驾驶以其低成本、高冗余的技术路径,正成为自动驾驶现阶
    的头像 发表于 01-18 09:50 2463次阅读
    纯<b class='flag-5'>视觉</b><b class='flag-5'>自动驾驶</b>的优势和劣势有哪些?

    FCB-EV9520L+CM2001U如何破解自动驾驶视觉难题?

    自动驾驶技术快速迭代的背景下,视觉感知系统的性能直接决定了车辆对复杂环境的适应能力。作为索尼推出的高性能一体化摄像机芯,FCB-EV9520L凭借其多场景适应性,成为自动驾驶领域的关键设备;而
    的头像 发表于 12-29 15:24 1119次阅读

    视觉自动驾驶会像人眼一样“近视”吗?

    [首发于智驾最前沿微信公众号]在自动驾驶领域,纯视觉路线逐渐获得了一部分从业者和研究者的认可与支持。随着双目乃至三目摄像头方案的应用,通过视差计算、结构约束和算法建模,摄像头已经具备了一定程度的深度
    的头像 发表于 12-15 09:23 963次阅读
    纯<b class='flag-5'>视觉</b><b class='flag-5'>自动驾驶</b>会像人眼一样“近视”吗?

    没有地图,纯视觉自动驾驶就只能摸瞎吗?

    [首发于智驾最前沿微信公众号]最近在一篇讨论高精度地图的文章中,有位小伙伴提到一个非常有趣的观点“如果人在陌生的目的地,只依托纯视觉(眼睛)去辨别道路,若没有导航,就只能摸瞎”。对于纯视觉自动
    的头像 发表于 11-27 17:22 1678次阅读
    没有地图,纯<b class='flag-5'>视觉</b><b class='flag-5'>自动驾驶</b>就只能摸瞎吗?

    自动驾驶中常提的惯性导航系统是个啥?可以不用吗?

    每次提到自动驾驶硬件时,大家可能第一反应想到的是激光雷达、车载摄像头、毫米波雷达等,但想要让自动驾驶车辆实际落地,有一个硬件也非常重要,那就是惯性导航系统。在很多讨论自动驾驶技术的内容
    的头像 发表于 07-24 18:12 2313次阅读
    <b class='flag-5'>自动驾驶</b>中常提的惯性<b class='flag-5'>导航</b>系统是个啥?可以不用吗?

    低速自动驾驶与乘用车自动驾驶在技术要求上有何不同?

    [首发于智驾最前沿微信公众号]自动驾驶技术的发展正朝着多元化方向迈进,其中低速自动驾驶小车(以下简称“低速小车”)因其在物流配送、园区运维、社区服务等场景中的独特价值而受到广泛关注,且
    的头像 发表于 07-14 09:10 1380次阅读
    低速<b class='flag-5'>自动驾驶</b>与乘用车<b class='flag-5'>自动驾驶</b>在技术要求上有何不同?

    自动驾驶汽车在隧道、山区如何精准定位?

    [首发于智驾最前沿微信公众号]精准定位是自动驾驶得以实现的核心技术之一。自动驾驶汽车需要准确了解自身在道路上的位置,才能安全地规划路径、保持车道、避让障碍。常见的定位技术包括全球导航卫星
    的头像 发表于 07-13 11:30 1527次阅读
    <b class='flag-5'>自动驾驶</b>汽车在隧道、山区如何精准定位?

    自动驾驶汽车是如何准确定位的?

    [首发于智驾最前沿微信公众号]随着自动驾驶技术的快速发展,车辆的精准定位成为安全驾驶与路径规划的核心基础。相比于传统人类驾驶依赖路标和视觉判断,自动
    的头像 发表于 06-28 11:42 1608次阅读
    <b class='flag-5'>自动驾驶</b>汽车是如何准确定位的?

    卡车、矿车的自动驾驶和乘用车的自动驾驶在技术要求上有何不同?

    [首发于智驾最前沿微信公众号]自动驾驶技术的发展,让组合辅助驾驶得到大量应用,但现在对于自动驾驶技术的宣传,普遍是在乘用车领域,而对于卡车、矿车的自动驾驶发展,却鲜有提及。其实在卡车、
    的头像 发表于 06-28 11:38 1958次阅读
    卡车、矿车的<b class='flag-5'>自动驾驶</b>和乘用车的<b class='flag-5'>自动驾驶</b>在技术要求上有何不同?

    SONY FCB-CR8530,如何重塑自动驾驶视觉感知格局?

    自动驾驶技术快速发展的当下,车辆对周围环境的精准感知是确保安全与高效运行的关键。凯茉锐电子SONY FCB-CR8530摄像机凭借其卓越性能,正逐渐成为自动驾驶领域视觉感知系统的核心组件。
    的头像 发表于 06-25 17:54 835次阅读

    视觉自动驾驶会有哪些安全问题?

    强调视觉系统的先进性。纯视觉自动驾驶是指在车辆自动驾驶系统中仅依赖摄像头而不使用激光雷达或毫米波雷达等主动传感器。特斯拉率先倡导这一路线,宣称模拟人类
    的头像 发表于 06-16 09:56 1294次阅读
    纯<b class='flag-5'>视觉</b>的<b class='flag-5'>自动驾驶</b>会有哪些安全问题?