在快节奏的现代生活中,旅游让我们更加亲近自然并得以放松。旅途中,我们经常通过拍照记录美好时刻,但照片仅能定格风景,难以充分传达出刹那间的心情。本课程将借助先进的科技手段,运用目标检测捕捉景物之形,通过图像识别洞察人物心情,再借助大模型的力量,将风景、情感融入诗句,使文字成为鲜活、会说话的风景画,获得饱含诗意的旅行照片。
课程简介
课程旨在通过实践导向的项目教学模式,全面培养学生的技术实践能力、创新思维与问题解决能力。学生将通过深度参与一系列精心设计的课时,掌握人工智能及相关领域的前沿技术,如OpenCV图像处理、YOLOv8目标检测、PySimpleGUI用户界面设计、Kimi大模型应用及系统优化策略,这些技术能独立完成从概念构想到成品的全流程。课程对象为高二年级学生,具备Python编程基础,有一定的人工智能学习经验。课程准备包括机房环境、PyCharm平台、半成品代码、项目学习任务单及资源链接。
课程主要包括4个主题。①探索OpenCV。主要内容为学习OpenCV库的基本安装与配置,学习图像读取、显示、转换等基础操作,理解并实践图像预处理技术(如灰度化、图片翻转等)基本功能,需要3个课时。②YOLOv8目标检测。主要内容为了解YOLOv8模型原理与架构,收集树木、花数据,并使用YOLOv8对数据进行模型训练与调优,完成目标检测项目实践,需要4个课时。③PySimpleGUI UI设计。主要内容为学习PySimpleGUI库的基本使用方法,设计并实现一个简单的图形用户界面(GUI),用于展示和交互,需要2个课时。④Kimi大模型应用。主要内容为了解Kimi大模型在自然语言处理、图像生成等领域的应用,以及API调用、token、实践Kimi大模型的调用,需要2个课时。
课程实施过程
活动主题1
活动开始前,学生需要先了解计算机如何处理图像问题。OpenCV作为计算机视觉领域的核心工具库,在图像处理中具备强大功能。本次活动重点讲解OpenCV环境配置、视频读取与实时显示、摄像头调用,以及视频保存。然后,进行实践扩展,要求学生在实现视频读取与实时显示后,进一步添加帧处理(如缩放、旋转、滤镜),并将结果保存为新文件,尝试不同编码格式(如MP4V、AVC1)和帧率设置。
通过学习,学生可掌握OpenCV视频处理的核心流程,理解编解码器与帧操作原理,并建立“图像即数据”的底层认知,为后续实时摄像头拍照,以及图像识别奠定基础。
活动主题2
目标检测作为图像识别领域的核心技术,通过精准定位与分类实现了对图像中多目标的智能化解析。随着计算机视觉技术的快速发展,该技术已深度应用于自动驾驶的环境感知、智能安防的异常行为监测、医疗影像的病灶定位等关键场景。为系统掌握目标检测的实现路径,以YOLOv8为核心的实战课程,将引导学生从数据标注规范、模型训练优化到边缘计算部署展开全流程实践,通过案例剖析与代码实操,构建从理论认知到工程落地的完整知识体系。
活动开始前,教师首先向学生介绍YOLOv8模型的基本原理及其在目标检测任务中的独特优势。通过讲解YOLOv8的模型架构、特点及应用实例,让学生对目标检测模型具备初步的认识。
数据准备与标注 数据是模型训练的基础。在获得照片后,照片中会有多种物体,但旅游照片以花和树居多,因此选择花和树作为目标检测的主要目标。随后,进入对2种物体的数据准备与标注阶段。教师详细讲解如何收集、整理目标检测任务所需的数据集,并介绍使用LabelImg等工具进行数据标注的方法。学生通过学习XML、VOC或YOLO等格式的选择与应用,能够更高效地完成数据标注。
模型训练与优化 在模型训练与优化环节,讲解如何根据任务需求选择合适的神经网络模型,并配置YOLOv8的模型参数。学生深入了解卷积层池化层全连接层等结构的作用,以及学习率、批次大小、迭代次数、训练轮数等参数的配置方法。同时,教师还对随机梯度下降(SGD)、Adam等优化算法,以及L1、L2正则化的应用进行介绍,旨在提升模型的性能。此外,还应强调数据增强技术的重要性,通过随机变换图像、翻转、缩放等方法,提高模型的泛化能力,并介绍防止过拟合的方法,对模型出现的问题进行优化,增加检测的准确性。
评估与测试 在评估与测试阶段,教师介绍数据拟合度(如MSE、RMSE)、泛化能力(交叉验证)、稳定性和鲁棒性的评估方法和指标,鼓励学生使用测试数据集测试模型性能,比较测试集和验证集的性能指标,以便学生全面理解模型的性能表现,找出存在的问题和优化方向(图1)。同时,学生通过将训练好的YOLOv8模型导出为可部署的格式,并将其部署到实际应用环境中,了解目标检测的基本流程,对YOLOv8有初步的了解。


图1 模型检测错误示例

活动主题3
在程序开发中,界面设计是影响用户体验的重要因素,简洁舒适的界面设计是关键。PySimpleGUI是一款专为简化Python图形用户界面(GUI)开发而设计的工具库,凭借其直观的接口设计和跨平台特性,成为了快速实现可视化应用的理想选择。它兼容Tkinter、Qt等多种底层GUI框架,可轻松安装,大幅降低了GUI开发的门槛。
介绍PySimpleGUI布局 通过二维列表定义界面结构,每个子列表代表一行控件,例如文本标签、输入框或按钮;窗口支持自定义标题与主题样式,可快速打造风格统一的视觉体验;事件处理通过window.read()实现,实时捕获按钮点击等交互行为,并据此执行对应逻辑,使开发流程更加高效。
了解PySimpleGUI内置基础组件及功能 让学生了解基本的UI设计,无须深入底层框架即可构建功能完善、界面友好的应用。其重点在于逻辑实现,显著提升开发效率。学生掌握从基础布局到复杂交互的全流程技能,为后期实际项目开发奠定基础。
活动主题4
从照片中检测出目标物体后,在Kimi大模型中输入相关物体名称,作为提示词进行诗词创作。该活动以理解大模型工作原理为起点:通过剖析Transformer架构注意力机制等核心概念,揭示Kimi在中文诗歌生成、多轮对话等场景中展现的上下文理解与风格迁移能力,最终实现从视觉识别到文学创作的完整技术链路闭环。
首先,调用Kimi API:在Moonshot AI官网注册账号,获取专属API Key(身份凭证),并配置Python环境(安装requests等库)。其次,调用代码:通过Python发送HTTP请求,构建包含对话历史、模型参数的数据包,调用Kimi的文本对话接口。学习处理API响应状态码(如200成功、401权限错误),确保程序稳定运行。让学生理解Token是控制API权限与资源的核心机制,讲解Token的作用,并实际操作如何调用大模型生成各种符合背景要求的诗词。活动强调“学以致用”,最终目标是让学生能将大模型集成到实际项目中,在Kimi的帮助下,为美如画的风景配上古色古香的诗句,让一张张照片变得鲜活灵动。学习成果示例如图2、图3所示。


图2 学生设计的界面示例


图3 学生学习成果示例

反思提高
在讲解目标检测时,引入YOLOv8,将其聚焦于树与花的专项检测。然而,目前该模型的识别类别尚未广泛涵盖学生拍摄照片中常见的对象,一定程度上限制了模型的应用潜力,也阻碍了识别精准度的进一步提升。此外,当前的目标检测体系未加入人脸表情的检测任务,需要进一步完善人物情绪识别的教学内容。同时,可添加语音直接输入技术,以弥补现有欠缺。此外,还应优化系统异步模式的启动过程,加快系统文件的加载处理速度,从而提升整体性能和用户体验。■

来源: 中国青少年科技教育工作者协会