摘" 要:零售智能化改革不仅有效地提升了销售效率,而且一定程度降低了人工成本,为零售业带来了便利和效益。文章基于深度学习算法,利用自建的商品数据集进行模型训练,在嵌入式系统上运行并进行了研究。采用树莓派4B开发板作为硬件核心,设计了一套集成称重、识别和交互功能的智能零售系统。这套系统充分利用了深度学习算法的优势,通过对商品数据的分析和处理,能够快速准确地识别商品。一系列的测试结果表明,该系统实现了预期的功能,为研究的正确性提供了有力的支持。
关键词:树莓派;深度学习;物品识别;人机交互
中图分类号:TP368.1;TP311" 文献标识码:A" 文章编号:2096-4706(2024)19-0189-05
Design of an Intelligent Retail System Based on Raspberry Pi
ZHU Rongjia, YANG Yuxuan, LI Zhendong, CHEN Shuo, TANG Chaoyang, TANG Xiaoyu
(School of Communication and Artificial Intelligence, School of Integrated Circuits, Nanjing Institute of Technology, Nanjing" 211167, China)
Abstract: Retail intelligence reform has not only effectively improved sales efficiency, but also reduced labor costs to a certain extent, bringing convenience and benefits to the retail industry. Based on Deep Learning algorithm, this paper uses a self-built commodity dataset for model training, which is ran on embedded systems and researched. A Raspberry Pi 4B development board is used as the hardware core, and an intelligent retail system integrating weighing, recognition and interaction functions is designed. This system fully utilizes the advantages of Deep Learning algorithm, and can quickly and accurately identify goods through the analysis and processing of commodity data. After a series of tests, the results show that the system has achieved the expected functions, providing strong support for the correctness of the research.
Keywords: Raspberry Pi; Deep Learning; item recognition; human-computer interaction
0" 引" 言
在当今计算机科学技术飞速发展的时代,人工智能在各个行业领域发挥着不可替代的作用。智能零售系统作为人工智能领域新兴的一项技术,其优势在于通过各种规定任务预先编程,通过识别信息以及自身机体运作完成指令,兼容人工智能性和适应性的同时大幅度降低人力使用损耗[1]。本项目设计称重模块、识别模块、数据库模块、人机交互模块,通过环境搭建、模块仿真实验、真实场景测试,最终完成智能零售系统设计。
通过识别商品类型,系统依据该商品的称重数据通过数据库进行自动匹配,在交互界面显示最终价格。图像识别技术用于识别商品的种类,称重模块用来获取商品的重量,人机交互技术用于整个流程中与用户的交流。本项目的研究可应用于当前智能零售行业,促进智能化与信息化,节约人力资源,提高服务效率[2]。随着人工智能技术的不断发展,商品识别技术将会越来越智能化,为消费者和商家带来更多的便利。
1" 整体方案
智能零售系统涵盖了商品称重、基于YOLOv5的图像识别、商品信息数据库以及人机交互功能。首先,用户需将选购的商品置于系统的称重盘上。在称重模块和计算机视觉识别的同时作用之下,系统会向主板提供商品的重量数据信息及视觉信息。接收到两个信息指令后,系统开始接入数据库进行检索,寻找该商品的基础信息,并将相关信息传输至树莓派主控。接下来,主控通过数据处理算法对输入的数据进行分析处理,以得出精确的结果。最后,结果将通过交互平台进行展示,系统整体结构如图1所示。
2" 硬件方案
2.1" 主控选择
为了满足大内存、高速率、通用性、价格适中等要求,本系统选用树莓派4B开发板作为主控芯片。树莓派4B开发板是最新发布的第四代产品Raspberry PI 4B,它搭载一个64位4核处理器(ARM Cortex-A72),其运行频率高达1.5 GHz。在内存方面,该开发板最高支持4 GB RAM。
树莓派4B以SD卡作为内存硬盘,拥有4个USB接口,能够连接摄像头、显示器等外设。此外,它还支持以太网和HDMI,能够外接显示器,最高支持1080P分辨率。为了方便与其他硬件进行交互,树莓派提供了GPIO引脚,这也是树莓派与其他计算机的不同之处。
2.2" 摄像头选择
基于对摄像头分辨率、帧率、视角、功耗等方面的考量:800万像素的摄像头能够满足本项目图像识别应用的需求;30 fps的帧率能够保证图像采集的流畅性;65°视角适合拍摄单目标或小范围场景,120°视角适合拍摄多目标或大范围场景;功耗在500 MW以下的摄像头适合长时间运行;在预算范围内选择性价比最高的摄像头。
综合考虑以上因素,最终选择树莓派官方出品的Raspberry Pi Camera V2摄像头。
2.3" 称重模块设计
商品称重模块作为系统的关键组成部分,为确保称重过程中数据的精确性,我们使用了压力传感器和HX711模块来构建称重模块。
压力传感器包括弹性元件和应变片,当弹性元件受到力的作用而发生形变时,附着在其上的应变片也会相应地变形。这种变形导致应变片的电阻发生变化,进而引起电压的变化。通过测量电压变化,我们能够计算出所施加的力的大小,进一步确定物体的质量。本项目的目标是设计用于商品称重的电子秤系统,同时考虑到实际应用场景中商品重量的范围,因此选择了一个量程为5 kg的压力传感器作为系统的检测组件。
HX711是一款专为高精度电子秤设计的24位模数转换器(A/D转换器)芯片。与同类芯片相比,HX711集成了稳压电源、片内时钟振荡器等外围电路。具有高度集成、快速响应和强大的抗干扰能力的优点[3]。
将HX711模块与5 kg压力传感器进行连接。具体步骤如下:传感器上的红色导线连接到HX711的E+端口,传感器上的黑色导线连接到HX711的E-端口,传感器上的白色导线连接到HX711的A-端口,传感器上的绿色导线连接到HX711的A+端口。
接着,将HX711模块上的VCC、GND、DT、SCK引脚分别连接到树莓派的Pin 2(5 V)、引脚6(GND)、引脚29(GPIO 5)、引脚31(GPIO 6),HX711原理图以及与树莓派的连接如图2所示。
连接好树莓派后,将称重模块的相关程序嵌入到树莓派中。校准后,使用不同样品对称重系统进行测试,测试结果如表1所示,称重准确率较高。
3" 软件方案
3.1" 数据集介绍
果蔬数据集采用Raspberry Pi Camera V2摄像头,拍摄了在不同场景、不同光照条件下的不同果蔬照片共计800张图片。经过筛选,选择形态较好、商品标准级别较高的图片进行标注识别对象,同一图片若有多个符合要求的识别对象,选择特征最明显的进行标注。在进行数据标注时,选择了LabelImg作为标注工具。采用YOLO格式,通过矩形框工具将目标物体从图片中框选出来。对于每个绘制的边界框,我们还指定了其对应的目标类别。完成图像标注后,将标注结果保存到YOLO格式所要求的标注文件中。YOLO格式的标注文件是一个文本文件,每一行表示一个图像的标注信息,包括图像路径、目标数量以及每个目标的类别和边界框信息。
经过旋转,对称反转等方法进行数据加强,最后选取1 000张图片形成数据集,其中训练集、测试集比例为7:3。部分商品图片及识别对象标注情况如图3所示。
3.2" 识别模块设计
YOLOv5是一种高效的目标检测算法,将目标检测任务转化为一个端到端的回归问题[4]。YOLOv5可以直接从输入图像中回归出目标的边界框及对应的类别概率而无须显式地提取候选框。这种设计使得YOLOv5在速度和准确性之间取得了出色的平衡。本项目需要在较小型设备上进行部署,因此我们选择了内存占用符合要求的YOLOv5算法。
YOLOv5的整体网络结构主要包含以下几个部分。输入预处理:对输入图像进行缩放、归一化等一系列处理,使其满足网络输入要求。主干网络:采用CSPDarknet53作为主干网络,负责提取图像特征。Neck网络:采用FPN和PAN结构,融合不同尺度的特征,增强模型对多尺度目标的检测能力。检测头:负责预测目标的类别和位置信息[5]。
使用YOLOv5算法对训练集进行训练,生成pt权重文件,嵌入树莓派中可应用于商品检测。通过实时获取物体的种类和名称等信息,并将其反馈到树莓派终端实现后续进程。
模型训练环境采用Python 3.7,开发框架为YOLOv5-6.0,图片尺寸inputsize为640×640。设置epoch = 100进行测试,结果如图4所示。阈值0.79时训练模型的评估指标F1-score值识别准确率最大。F1-score = 2×(P×R)/(P+R),经过以下对模型测试得到多项评价指标数据:边界框回归损失train box loss = 1%,val box loss = 2.5%;目标存在损失train obj loss" = 3%,val obj loss = 3%;类别分类损失train cls loss = 0%,val cls loss = 0%;准确率P = 98%;召回率R = 98%;mAP = 96%。可满足一般商品检测。
3.3" 数据库模块设计
数据库是一种结构化的数据存储方式,它以一定的规则将数据进行组织和管理,以便用户能够方便地进行数据的查询、插入、更新和删除等操作[6]。我们使用MySQL来创建数据库。MySQL是一个高性能、建立在客户—服务器结构上、多用户、多线程的开源RDBMS,它的体积小、速度快、稳定性好,适用于中小型应用。
使用一张商品信息表作为数据库表。通过图像识别模块传递的识别结果,即商品名称查询商品信息(单位售价)。表结构包含信息:商品编号、商品名称、商品单价。首先为该表选择一个合适的名称如products;接下来为表中的每一列定义列名和数据类型。我们需要三个列:商品编号、商品名称和商品单价。根据实际需求,我们为表中的列添加了主键约束,为商品名称和商品单价添加了非空约束,确保数据库中数据的准确性;之后使用DESCRIBE或SHOW COLUMNS命令查看表的结构,确保表已成功创建并包含所需的列[7]。
以零售系统所属的实体和属性基于其联系绘制ER图如图5所示,完成数据库的创建后,系统运行过程中称重和识别信息被传入数据库,顾客在进行商品购买过程中产生订单,识别商品的种类后读取数据库中商品信息,通过算法进行计算得出总价。
同时,MySQL数据库也支持基于实时数据分析和供需优化算法的供给优化决策。该算法数学上模拟了消费者的需求关系和生产者的供给关系,通过引入稳定模式和非稳定模式到SDO算法中,在给定空间内进行局部搜索和全局搜索以解决待优化问题[8]。与传统群智能算法相比,SDO算法具有更快的收敛速度、更高的寻优精度和更少的调节参数,表现出更好的探索和开发能力。
3.4" 交互模块设计
由于本系统设计的模块基于Python,因此系统的界面设计采用了使用Python编写的PyQt5框架。该框架不仅支持Windows操作系统,也兼容树莓派的操作系统Raspbian[9]。系统的运行流程如图6所示。
视频流部分主要展示了摄像头采集到的实时图像。一旦系统获取到这些图像,它便通过与数据库进行比较,识别出商品的分类。在价格部分,系统会显示相应商品种类的售价。确认商品信息无误后,用户只需按下称重按钮,界面便会开始展示商品信息,显示商品的质量并计算出总价[10]。结算完成后,用户只需按复位键,系统便会清除当前所有信息,以便进行下一次称重,如图7所示。
对交互模块进行测试,并对数据库中未录入的商品、混合未录入商品与已录入商品进行识别,记录交互情况,计算方式为:精确率 = 未进入二次放置/测试次数,计算并整理数据后如表2所示,结果表明系统交互精确度较高。
4" 系统测试
把训练好的模型部署到树莓派上后,即可以启动系统。用户只需选择商品并放置在称重托盘内。当摄像头成功识别出商品种类后,数据会被传入数据库进行读取和输出,同时获得称重数据。系统内部会进行计算,然后将结果传送到可视化界面。我们分三种情况分别对系统进行测试:数量为一的橘子商品称重;数量为二的苹果商品称重;数量为一的苹果商品称重,项目的测试结果如图8所示。
5" 结" 论
本研究针对当前市场对零售商品销售智能化的需求,提出了一种基于树莓派的智能零售系统设计方法。该系统能够实现商品的称重、识别以及基于数据库的商品信息读取和价格计算。实验结果表明,该系统具有较高的识别准确率,能够满足日常使用需求,并具有在实际生活中推广使用的潜力,前景广阔。
参考文献:
[1] 王宝义.新零售发展的逻辑审视与策略分析 [J].长安大学学报:社会科学版,2020,22(5):86-96.
[2] 吕秋霞,张景鸿.基于神经网络的水果自动分类系统设计 [J].安徽农业科学,2009,37(35):17392-17394+17439.
[3] 张洗玉,陈郓城,王晗亚,等.基于嵌入式的高精度简易电子秤的研制 [J].中国仪器仪表,2019(1):56-61.
[4] 孟小峰,马超红,杨晨.机器学习化数据库系统研究综述 [J].计算机研究与发展,2019,56(9):1803-1820.
[5] 李元贞,赵俊松.基于深度学习的图像显著性目标检测研究综述 [J].软件工程,2023,26(1):1-4.
[6] 陈登峰,周瑶,段优,等.基于计算机视觉的智能果蔬结算系统 [J].信息化研究,2019,45(2):65-70.
[7] 周俊宇,赵艳明.卷积神经网络在图像分类和目标检测应用综述 [J].计算机工程与应用,2017,53(13):34-41.
[8] 乔珠峰,赵秋菊,郭建鑫,等.基于改进YOLOv5的草莓病害智能识别终端设计 [J].中国农机化学报,2024,45(3):205-211.
[9] 李茂莹,杨柳,胡清华.同构迁移学习理论和算法研究进展 [J].南京信息工程大学学报:自然科学版,2019,11(3):269-277.
[10] 林付春,张荣芬,何倩倩,等.机器视觉中的智能无人零售系统设计 [J].电子技术应用,2018,44(9):96-98+103.
作者简介:朱镕佳(2002—),男,汉族,河南义马人,本科在读,研究方向:视觉识别;杨宇轩(2003—),男,汉族,江苏东台人,本科在读,研究方向:视觉识别;李振东(2002—),男,汉族,浙江温州人,本科在读,研究方向:人工智能;陈硕(2003—),男,汉族,安徽淮南人,本科在读,研究方向:数据库;唐朝阳(2003—),男,汉族,江苏盐城人,本科在读,研究方向:人机交互;通信作者:唐晓雨(1991—),女,汉族,江苏泰州人,讲师,博士研究生,研究方向:电子科学与技术。
基金项目:2023年江苏省大学生创新培训项目(202311276078Y);2021年度江苏省高校哲学社会科学研究一般项目(2021SJA0415)