【2021集创赛】Diligent杯一等奖:基于Cortex-M3软核的智能识别称量平台

news2024/11/24 17:03:16

本作品参与极术社区组织的有奖征集|秀出你的集创赛作品风采,免费电子产品等你拿~活动。

杯赛题目:Diligent杯:基于FPGA开源软核的硬件加速智能平台
参赛组别:A组
设计任务
利用业界主流软核处理器(仅限于Cortex-M系列及 RISC-V系列)在限定的DIGILENT官方FPGA平台上构建SoC片上系统,在 SoC中添加面向智能应用的硬件加速器(如从最简单的矩阵乘加加速到更复杂的神经网络硬件优化实现)以提高和优化系统的性能,并基于该SoC实现一个基于该SoC的智能信息处理系统,系统具有创新性、实用性和具体的应用场景。
**参赛单位:**武汉大学
**总决赛奖项:**一等奖

1.项目介绍:

中药材种类繁多,但长相也千奇百怪,往往需要专业人员的辅助,从取药到逐个称量,逐个计价,过程繁琐耗时,难免会出错,而大多数人往往难以察觉到配药上出现的差错,所以,我们希望借助性能强大、响应更快、开发与应用成本低Cortex-M3处理器,传感技术和卷积神经网络AI算法,开发一套具备感知、智能识别、人机交互、网络互联、软硬件协同加速等特点的智能称量系统,提高这个过程的效率同时避免一些错误的发生,并且具有高性价比,很强的推广性以及能够适应更多的场景需求。

本项目主要由Digilent Nexys DDR开发板搭建SOC,并且搭配了摄像头,Wi-Fi模块,压力传感器,双显示屏等外设,其实物图如下图所示,具体工作过程包括:用户将中药材商品放置在平台的压力传感器上面,传感器会测出中药材的重量并返回给FPGA板卡;摄像头实时拍摄到压力传感器平台上面的中药材图像通过VGA连接到显示屏并显示在显示屏上,另一方面还作为板卡上神经网络的输入,用片上神经网络完成分类以自动识别商品的种类;显示屏右边的UI用于显示识别结果等有效信息;FPGA板卡旁边的小屏幕是LCD触摸屏,可以通过触碰实现出货等操作,表示商品售出;若商品成功售出,则扩展板上的WiFi模块通过TCP连接将售出商品的种类、质量、总价发送到云服务器中,储存于服务器上数据库;数据库内的销售数据通过部署在服务器上的网站进行可视化,方便了操作者的统计管理。
在这里插入图片描述

2.软硬件设计介绍:

该项目的硬件系统架构如图所示。

在这里插入图片描述

项目在Nexys A7 100T FPGA平台上开发,并扩展了OV5640摄像头、HX711重力传感器、ILI9341 LCD触摸屏、SD卡、显示屏、ESP8266 Wi-Fi模块、ADXL362加速度计等外设。其中显示屏与FPGA板卡通过VGA连接,用于显示拍摄到的图像及中药材种类等信息;加速度计用于对设备进行水平检测,以防设备不水平而导致重量称量不准确。FPGA开发板上部署了Cortex-M3软核作为处理器,并辅以卷积神经网络加速IP核、图像预处理IP核用于加速神经网络计算;各种外设控制器;3个DMA进行大量数据搬运;以及GPIO、UART等常规模块,组成一个集感知、智能识别、人机交互、网络互联、软硬件协同加速等特点于一体的SoC系统。

算法层面,使用RepVGG轻量级卷积神经网络实现了对摄像头输入图像的自动分类,算法在测试集上能够达到平均90%以上的识别准确度;在FPGA板卡上部署了基于HLS开发的卷积神经网络专用加速IP核,硬件加速后的卷积计算效率提升超过4500倍。

系统还加入了WiFi模块,通过TCP连接云服务器。通过连接云服务器我们实现了对中药材单价的实时更新,也可以通过云服务器更换存储空间中的卷积运算正向推理的参数以及识别的标签,可以实现果蔬等更多物品的称量和计价,能够满足更多的应用需求。云服务器上部署了爬虫脚本爬取中药材单价,实现单价与市场价的同步;同时部署了存储销售数据的sqlite3数据库以及用于将销售数据可视化的网站。
在这里插入图片描述

3.参赛经验

本次大赛是一次性全国性的赛事,非常可以和来自全国各地高校的优秀同行们的互相学习和交流,收获颇丰。团队三人深入地学习掌握了片上系统的设计方法,硬件模块的实现方式以及算法设计与处理器嵌入式开发流程,有效的提升了自身的工程实践能力,对新一代硬件描述语言的优点和不足有了更为深入的了解,也体会到可编程片上系统架构带来的选择上灵活性的优势,受益匪浅。

最后,感谢本次赛事组委会的工作人员和老师们的高效组织工作与指导,让我们能够参与到这样的大赛之中,接触到贴近于实际又富有新技术与挑战的题目,锻炼提高自身能力。

作品内容来源于代码全部队,非开源,转载请标明出处。欢迎大家参加极术社区组织的有奖征集|秀出你的集创赛作品风采,免费电子产品等你拿~活动,10月1日截止~

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

DevExpress WinForms TreeMap组件,用嵌套矩形可视化复杂分层数据

DevExpress WinForms TreeMap控件允许用户使用嵌套的矩形来可视化复杂的平面或分层数据结构。 DevExpress WinForms有180组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。同时能完美构建流畅、美观且易于使用的应用程序,无论是Office风…

C语言实现堆栈和队列(动态)

行路难!行路难!多歧路,今安在?长风破浪会有时,直挂云帆济沧海。————李白 一 .堆栈 1 什么是堆栈 堆栈是一种特殊的线性表,堆栈中的元素以及元素之间的逻辑关系和线性表完全相同。在操作上的差别是线性…

Python 2.7 在 Debian 服务器上获取 URL 时的 SSL 验证失败问题与解决方案

在使用Python的requests库从Debian稳定服务器上获取简单URL时,遇到了SSL证书错误。 根据用户的问题描述,您遇到了SSL证书验证失败的问题。 要解决这个问题,您可以采取以下步骤: 1. 升级到Python 2.7的最新版本: 首…

《程序员考公指南》:零基础到上岸的完整攻略 | 开源日报 No.82

mastodon/mastodon Stars: 44.2k License: AGPL-3.0 Mastodon 是一个免费、开源的社交网络服务器,基于 ActivityPub。用户可以在 Mastodon 上关注朋友并发现新朋友,并且可以发布链接、图片、文字和视频等内容。所有的 Mastodon 服务器都能互操作成为联邦…

使用vue-cli搭建vue项目

1:安装vue-cli 命令:npm install -g vue/cli 2:查看安装的版本 vue --version 或者 vue -V 3:创建项目 vue create 项目名称 名称小写 4:vue2框架中根据自己的需求选择(我选择…

Rust语言特性探秘:宏的魔力

大家好!我是lincyang。 今天我们继续深入探讨Rust语言中的一个有趣而强大的特性——宏(Macros)。 宏在Rust中扮演着特殊的角色,不仅提高了代码的灵活性,还增强了代码的可重用性。接下来,我们会通过具体的…

java+springboot+bootstrap校园闲置物品拍卖交易平台_ngad7-

根据日常实际需要,一方面需要在系统中实现基础信息的管理,同时还需要结合实际情况的需要,提供校园闲置物品交易管理功能,方便校园闲置物品交易管理工作的展开,综合考虑,本套系统应该满足如下要求&#xff1…

springboot+jsp+bootstrap+java问卷调查系统

系统功能需求包含业务需求和功能需求,系统功能需求分析是在了解用户习惯、开发人员技术和实力等各个因素的前提下,对其进行深入分析,了解系统基本需求后,基本功能如下: 本课题要求实现优质的问卷调查系统,就…

如何录音?学会这几招,轻松搞定!

“有人知道怎么录音吗?学校举办了诗词朗诵比赛,老师要求我代表班级去参加,需要自己准备一首比赛主题相关的背景音乐,可是找到的音乐都不能下载,我也不会录音,真的很难办,大家有什么好方法吗&…

NX二次开发UF_CAM_opt_ask_post_names 函数介绍

文章作者:里海 来源网站:https://blog.csdn.net/WangPaiFeiXingYuan UF_CAM_opt_ask_post_names Defined in: uf_cam.h int UF_CAM_opt_ask_post_names(int * count, const char * * * names ) overview 概述 This function provides a list of avai…

vatee万腾科技先锋之选:vatee创新力驱动着未来发展

在科技潮流的浩荡前行中,Vatee万腾崭新的科技先锋之选正以强大的创新力引领着未来的发展。Vatee万腾凭借其前瞻性的技术理念和卓越的创新实践,成为业界的引领者,为整个科技行业树立了标杆。 Vatee万腾不仅仅是一家科技公司,更是一…

【云栖 2023】姜伟华:Hologres Serverless 之路——揭秘弹性计算组

云布道师 本文根据 2023 云栖大会演讲实录整理而成,演讲信息如下: 演讲人:姜伟华 | 阿里云计算平台事业部资深技术专家、阿里云实时数仓 Hologres 研发负责人 演讲主题:Hologres Serverless 之路——揭秘弹性计算组 实时化成为…

基于安卓android微信小程序的刷题系统

项目介绍 面试刷题系统的开发过程中,采用B / S架构,主要使用jsp技术进行开发,中间件服务器是Tomcat服务器,使用Mysql数据库和Eclipse开发环境。该面试刷题系统包括会员、答题录入员和管理员。其主要功能包括管理员:个…

Unsupervised Condition GAN

Unsupervised Condition GAN主要有两种做法: Direct Transformation 直接输入domain X图片,经过Generator后生成对应的domain Y的图像。这种转化input和output不能够差太多。通常只能实现较小的转化,比如改变颜色等。 Projection to Commo…

怎么做好品牌营销,小红书爆款笔记怎么做?

只要在小红书平台进行传播,能够尽可能多的创造爆款笔记,就是所有品牌方和达人的目标。今天来马文化传媒为大家分享下怎么做好品牌营销,小红书爆款笔记怎么做? 一、判断爆款笔记的三大指标 判断一篇笔记是否是爆款笔记,…

Rockchip平台rk3588源码下载编译(基于Android13)

Rockchip平台rk3588源码下载编译(基于Android13) 源码下载 下载地址 repo init --repo-url https://gerrit.rock-chips.com:8443/repo-release/tools/repo -u https://gerrit.rock-chips.com:8443/Android_T/manifests.git -m Android13.xml服务器镜像下载 repo init --rep…

深度之眼Paper带读笔记GNN.08.GCN(下)

文章目录 前言细节四:卷积核介绍图卷积核初代目图卷积核二代目契比雪夫多项式例子小结 GCN公式推导 实验设置和结果分析数据集节点分类任务消息传递方式比较运行效率 总结关键点创新点启发点 代码复现train.pyutil.pymodel.pylayer.py 作业 前言 本课程来自深度之眼…

图形数据库的实战应用:如何在 Neo4j 中有效管理复杂关系

关系数据库管理系统( RDBMS ) 代表了最先进的技术,这在一定程度上要归功于其由周边技术、工具和广泛的专业技能组成的完善的生态系统。 在这个涵盖信息技术(IT) 和运营技术(OT) 的技术革命时代,人们普遍认识到性能方面出现了重大挑战,特别是…

springboot+bootstrap+java农业电商服务商城系统_30249

本农业电商服务系统是为了提高用户查阅信息的效率和管理人员管理信息的工作效率,可以快速存储大量数据,还有信息检索功能,这大大的满足了管理员、会员和商家这三者的需求。操作简单易懂,合理分析各个模块的功能,尽可能…

鸿蒙原生应用/元服务开发-AGC分发如何编译打包应用

软件包规范 在正式打包应用前,请确保已了解HarmonyOS应用软件包规范。 操作步骤 1.打开DevEco Studio,菜单选择“Build > Build Hap(s)/APP(s) > Build APP(s)”。 2.等待编译构建。编译完成后,将在工程目录“build > outputs >…