

超级对对碰
作者: 程凯 王婷
“超级对对碰”游戏是一款融合趣味与挑战的益智游戏。其核心玩法在于迅速而准确地从两张卡片中识别出相同的动物图案(图1),这一过程不仅锻炼了学生的观察力和反应速度,更在无形中提升了专注力与记忆力。随着人工智能技术的飞速发展,我们有机会将这种日常游戏转化为一种全新的互动体验。借助人工智能的目标检测技术,让机器参与到游戏过程中,为学生带来更加丰富和智能化的游戏体验,启发他们运用人工智能技术解决身边的问题。
课程目标
本课程设计旨在通过游戏化教学方式,深入探索目标检测技术的奥秘,引导学生亲历从数据收集、数据处理到模型训练、优化,并最终实现模型部署的全过程,培养其工程实践能力。在探寻游戏设计背后机理的过程中,学生能体会到数学组合逻辑在解决复杂问题时的精妙,数形结合在数据分析中的力量。在对动物进行英文标注时,还扩充了学生的英语词汇量,提升了他们对英语学习的兴趣。此外,课程中的游戏元素,也激发了学生的参与热情和探索欲,让学习变得既有趣又高效。
课程内容
通过体验对对碰卡片游戏,引导学生思考游戏规则及游戏设计背后的机理,设计机器参与对对碰游戏的解决方案;通过训练深度学习模型,快速实现动物检测;最后从检测实时性和互动体验等方面进行优化迭代。单元课时划分见表1。
实施过程
探索对对碰游戏背后机理(对应任务2)
对对碰游戏中,每张卡片上有8种不同的动物图案,总共有57种不同的动物,这些动物图案通过特定的排列组合方式分布在57张卡片上。任意取出2张卡片,这2张卡片上一定有且只有1个相同的动物图案。组织学生2人1组体验游戏,探究卡片的设计原理。为了更好地理解原理,将每种动物转换为一个特定的数字代码,形成一套“动物-数字”映射系统。学生需要利用这些数字代码进行比对、分析和推理,找出卡片之间的内在联系。
起初,当每张卡片仅包含2个数字(代表2种动物)时,学生迅速通过简单推理得出了{(1,2),(2,3),(1,3)}3种组合,用3张卡片实现了游戏的设计。然而,随着难度升级至每张卡片包含3个数字,学生遇到了难题。此时,引导学生采用数形结合的策略(图2),将抽象的逻辑问题具象化,通过图形逐步构建出满足条件的卡片组合。经过一番努力,学生不仅解决了问题,还成功实现了7张卡片的游戏设计,{(1,2,3),(1,4,7),(1,5,6),(3,4,5),(3,6,7),(2,5,7),(2,4,6)}。当然,卡片的组合不是唯一的,学生还探究了图形中数字位置发生变化时,可以得出不同的卡片组合。在组合内,每2张卡片都有唯一的共同数字(动物)关联,这一发现极大地增强了学生的自信心和成就感。
面对更进一步的挑战:设计包含2个甚至更多数字(动物)卡片组合时,学生的逻辑推理能力和创新思维遇到了前所未有的考验。教师鼓励学生充分利用丰富的网络资源,找寻解题思路,激发了他们探索未知、解决问题的热情。
目标检测中的数据采集与标定(对应任务4、5)
在进行目标检测前,需要对卡片中的动物图像进行采集和标定。首先,学生使用手机等便携设备进行拍摄,获取目标图像,并通过编写Python脚本自动化图片的命名过程,实现图片库的有序管理和快速访问。随后,学生利用“浦育”平台人工智能工坊提供的数据标注工具,对图像中的每个动物进行精确标注。为每个动物添加不同颜色的检测框,并标注相应的英文名字,以便于识别和分类。在标注过程中,应特别关注图像中可能出现的大动物之间的遮挡现象(图3),并审慎地处理这些遮挡区域,以减少因遮挡或视觉混淆而导致的标注错误,确保数据集的高质量和可靠性。
训练深度学习模型识别不同动物(对应任务7)
学生将采用SSD_Lite这一轻量级模型进行训练。在深度学习模型训练过程中,首先指导学生加载预训练权重文件,这将显著缩短模型在新任务或新数据集上的训练时间,并提高训练的准确率。图4为动物卡片的检测结果,右上角的数字均接近1,表示每个动物的检测结果置信度都非常高。
为了更全面地评估模型的性能和训练策略的有效性,学生将进行一系列实验。首先,调整模型的训练轮次(epoch数),分别设置100、400和1000个epoch,以观察不同训练轮次下模型的表现。然后,比较在不同学习率设置下,模型的收敛速度和最终效果。此外,优化器的选择也是影响模型训练效果的关键因素之一,学生尝试了SGD(随机梯度下降)和Adam(自适应矩估计)等不同的优化器,并评估了它们在训练过程中的性能表现。
模型高效部署与图形界面设计(对应任务8—11)
考虑到原始模型加载速度可能存在的瓶颈问题,学生应先探索将模型转换为ONNX格式,利用ONNX的跨平台兼容性和优化特性,显著提升模型的加载与推理速度。然后,结合OpenCV库,实时捕捉摄像头图像,并利用模型进行目标检测预测,最终将检测结果直观地展示出来。接下来,利用PySimpleGUI这一PythonGUI框架,设计并实现一个简洁易用的图形用户界面。该界面不仅能够实时显示摄像头捕捉的视频流及模型的检测结果,还将提供交互功能,使得整个应用更加贴近实际应用场景,进一步增强用户体验,其结果如图5所示。
学习成果
高中学生通过运用人工智能目标检测知识,完成了“超级对对碰”游戏中的动物检测任务,将复杂的理论知识转化为具体的实践过程,对深度学习有了更深刻的理解。
反思与提高
在课程后续实施过程中,将继续通过实践活动,鼓励学生进一步优化模型的性能,同时提升GUI设计的用户体验。此外,我们希望激发学生的创造力,让他们在现有交互的基础上,探索加入人机博弈机制,将这款游戏设计得更加贴近实际需求,以满足更广泛的应用场景,帮助学生更好地理解人工智能技术的实际应用,并为未来的技术创新打下坚实的基础。