6941| 1
|
[《视觉识别入门教程》] 【HUSKYLENS二哈识图】micro:bit视觉识别入门 04 自助超市收银机 |
自助超市收银机如果你经常去超市购物,那么你可能在情不自禁地“剁手”后会 遇到排队结算的窘境,当然,你买的东西越多,你就越囧。随着科技的发展,现在许多超市都有了自助收银机,它给我们的 购物带来了方便。现在我们就来做一个超市的自助收银机,等一等,我们需要怎样 准确识别商品并结算呢? 功能介绍本项目利用HuskyLens 的标签识别功能,通过识别商品上特定的标签,实现计算总价的自助收银功能。 材料清单
知识园地我们仔细观察超市的收银过程,会发现无论是人工收银还是自助收银,都是通过扫码装置对商品的条形码进行扫码计费,每种商品的条形码都是不一样的,所以我们只需找到扫码装置和条形码的替代品就可以实现我们的项目了。 条形码 >AprilTag 扫码装置 >HUSKYLENS 的标签识别功能 一、什么是标签识别?
二、什么是 AprilTag ?
三、HUSKYLENS 识别 AprilTag 原理
2. 四边形检测 找出轮廓中的四边形 3. 解码 对找出的四边形进行匹配、检查。 通过这些步骤,HUSKYLENS 的标签识别功能就能识别不同的 AprilTags,因此,我们只需要将不同的 AprilTags 贴在不同的商品上就可以实现识别对应商品了。 四、HUSKYLENS 传感器 - 标签识别功能演示 1、侦测标签
2、学习标签
本项目中,需要继续学习下一个标签,因此在倒计时结束前按下“学习按键”,然后将HuskyLens 屏幕中央的“+”字对准需要学习的下一个标签,短按或长按“学习按键”完成第二个标签的学习。以此类推。 标签ID 与录入标签先后顺序是一致的,也就是:学习过的标签会按顺序依次标注为“标签:ID1”,“标签:ID2”,“标签:ID3”,以此类推,并且不同的标签对应的边框颜色也不同。 3、识别标签
项目实践我们将分三个递进任务来完成项目,首先我们使用 HuskyLens 的标签识别功能学习并识别贴有AprilTags 的三件商品;然后在前一步基础上添加开始扫码和结束扫码的事件,方便不同顾客的商品统计;最后在第二步基础上添加商品总价结算功能, 实现现实生活中的超市自助收银功能。 任务一:识别商品
任务二:开始与结束扫码
任务三:商品结算
任务一:识别商品1、硬件链接 2、程序设计 STEP1 学习与识别 假设超市有且仅有水杯、酥饼、美工刀三种商品,它们分别对应三个不同的标签。 HuskyLens 能识别这 3 个不同标签,在“多次学习”模式下按水杯、酥饼、美工刀的顺序完成学习,得到 ID1、ID2、ID3,如果下次识别到相同的标签,HuskyLens 就会返回对应的 ID,这样我们就可以使用选择结构让点阵屏显示 ID 对应的商品名。 STEP2 Mind+ 软件设置 打开Mind+ 软件(1.62 或以上版本),切换到“上传模式”,点击“扩展”,在“主控板”下点击加载“micro:bit”,在“传感器”下点击加载“HUSKYLENS AI 摄像头”。 STEP3 指令学习 来认识一下主要用到的几条指令。
STEP4 流程图分析 3、程序示例 4、运行效果 当识别到水杯、酥饼、美工刀时,点阵会滚动显示“cup”“pastry”“knife”,当没有标签或识别到其他标签,点阵屏会一直处于熄灭状态。 任务二:开始与结束扫码1、硬件链接 同任务一。 2、程序设计 我们需要添加事件让顾客知道何时开始扫描商品,何时结束。假设按下 Micro:bit上的A 键开始扫描商品,每一个商品信息滚动显示完就可以进行下一个商品的扫描, 那么扫描商品的过程就是一个循环,而跳出这个循环的条件就是按下 B 键,下一个顾客需要扫描商品时,只需再按一下 A 键即可。 根据以上分析得出程序逻辑图如下: 3、程序示例 4**、运行效果** 按下A 键前,点阵不会显示扫码识别到的商品名; 按下A 键后、按下 B 键前,点阵依次显示扫码识别到的商品名; 按下B 键后,点阵不会显示扫码识别到的商品名。 任务三:商品结算1、硬件链接 同任务一。 2、程序设计 商品的总价会随着扫描的商品的数量增加而变大,所以只需在任务二的基础上添加一个变量即可,每次按下A 键后都需要将前一个顾客的总价清零,识别到一个商品, 便将该商品对应的价格加入总价中,按下 B 键后显示所有商品的总价。 根据以上分析得出程序逻辑图如下: 3、程序示例 4、运行效果 在任务二的运行效果基础上,按下 B 键后,点阵会显示总价。 项目小结项目回顾:本项目主要使用二维码标签表示商品的信息,通过标签识别输出特定的 ID,从而实现让点阵显示对应商品信息的功能,并添加了自动结算总账功能,基本上完成了超市的自助收银系统。 知识点回顾:1、认识标签识别在生活中的重要性和使用方法 2、学习识别标签并做出相应的判断 项目拓展在完成了自助收银之后,我们可否用标签表示一个房屋位置信息,从而让扫地机器人在行进过程中及时判断自己的方位并做出相应调整? |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed