本书基于项目式教学的理念,结合AI教育的实际需求,设计了一系列既有趣又富有挑战性的学习项目。这些项目涵盖了AI的基础概念、编程技巧、机器学习算法以及应用场景等多个方面,旨在通过实践操作和问题解决,帮助青少年全面提升AI素养和综合能力。
本书可供学校及青少年科技教育机构的广大教师及培训从业人员参考,或作为教材使用。本书也可供青少年自学人工智能,希望通过本书的引导和陪伴,青少年能在AI科技的海洋中畅游,不断探索和发现,为未来的学习和职业生涯打下坚实的基础。
第一篇 人工智能基础
一、人工智能发展简史2
二、重大里程碑事件3
三、智能时代的概念与特征 4
四、人工智能技术对教育的影响和挑战 5
五、人工智能技术对科学研究的影响和挑战 5
六、人工智能技术对社会治理的影响和挑战 6
七、人工智能技术的未来发展展望7
八、当前人工智能技术的不足之处 7
九、青少年人工智能教育需要考虑哪些因素 8
十、如何让青少年学生适应未来高速发展的人工智能科技8
十一、中小学人工智能课程应该如何开展 9
十二、结论 10
第二篇 人工智能项目实例
实例一 趣味甲骨文学习小游戏12
学习活动一:如何训练一个图像分类模型14
任务一:AI体验之分类模型训练14
任务二:用EasyTrain训练图像分类模型14
任务三:用Python代码训练图像分类模型15
任务四:选择合适的工具训练甲骨文识别模型16
学习活动二:如何测试模型并应用模型16
任务一:用一张新图片测试模型效果16
任务二:模型测试实验17
任务三:模型转换和应用实践18
任务四:设计甲骨文识别模型的应用19
学习活动三:如何制作数据集19
任务一:认识ImageNet格式的数据集19
任务二:用BaseDT制作数据集20
任务三:用BaseDT制作甲骨文自制数据集20
任务四:用自制数据集完成模型训练21
学习活动四:趣味甲骨文学习小游戏开发21
任务一:学习Gradio库的安装和基本使用22
任务二:用Gradio库搭建简易模型展示系统22
任务三:构思趣味甲骨文学习小游戏的功能实现23
任务四:开发趣味甲骨文学习小游戏24
实例二 智能设备助力番茄的生长25
学习活动一:巧妙解决番茄的土壤灌溉问题26
任务一:使用土壤湿度传感器26
任务二:土壤湿度检测仪的值的获取27
任务三:寻找土壤湿度检测仪和土壤湿度传感器的值之间的关系28
任务四:了解番茄苗灌溉设备29
任务五:利用智能设备设计食物供给单元实验箱30
学习活动二:如何使用摄像头识别番茄苗的病虫害31
任务一:辨别番茄健康和非健康的叶子31
任务二:认识机器学习在视频识别过程中的应用32
任务三:使用摄像头获取番茄叶子的图像33
任务四:使用卷积神经网络模型分析图像35
任务五:番茄病虫害的识别应用37
学习活动三:食物供给单元实验箱赏析39
实例三 有趣的掌上游戏机40
学习活动一:认识智能开发板,让屏幕亮起来41
任务一:点亮LED阵列41
任务二:感知与显示温度42
任务三:使用可编程按钮控制LED43
学习活动二:制作“变量”游戏43
任务一:制作“剪刀、石头、布”小游戏43
任务二:制作联机小游戏44
学习活动三:制作“接果果”游戏45
任务一:制作移动的“篮子”46
任务二:制作掉落的“果子”47
任务三:“接果果”游戏实现48
学习活动四:使用手势识别让游戏更有趣49
任务一:启动手势识别传感器模块49
任务二:制作手势识别“摇骰子”小游戏50
学习活动五:设计掌上游戏机的外观结构51
任务一:设计掌上游戏机外壳51
任务二:绘制掌上游戏机外壳工程图52
任务三:制作、加工、组装掌上游戏机外壳53
学习活动六:掌上游戏机作品赏析53
实例四 自动驾驶,智慧出行54
学习活动一:了解无人驾驶车55
任务一:了解无人驾驶车的诞生与发展55
任务二:比较驾驶自动化等级56
任务三:认识无人驾驶车的组成部分56
任务四:组装智能小车57
学习活动二:智能小车基本运动59
任务一:智能小车开发环境配置59
任务二:智能小车电机控制60
任务三:通过小部件控制智能小车62
任务四:智能小车遥控63
学习活动三:视觉避障65
任务一:数据采集66
任务二:模型训练68
任务三:避障驾驶69
学习活动四:智能小车作品赏析71
实例五 智能鸟巢项目的设计与制作73
学习活动一:如何测量和显示温湿度74
任务一:测试温湿度传感器74
任务二:温湿度传感器的测量实践75
任务三:通过温湿度变化控制LED灯75
任务四:利用温湿度传感器设计智能鸟巢76
学习活动二:如何使用摄像头对特定物体进行识别76
任务一:使用摄像头标记ID(身份标识)77
任务二:使用摄像头识别出红色小球后,点亮红色LED灯77
任务三:使用摄像头进行智能鸟巢的设计78
学习活动三:如何使用水位传感器进行水位测量78
任务一:使用串口显示液面是否达到阈值78
任务二:判断液面是否达到指定位置79
任务三:使用水位传感器对智能鸟巢进行设计79
学习活动四:如何控制电机的运动80
任务一:使舵机在0~180°之间转动80
任务二:控制直流电机转动并调速81
任务三:使用电机对智能鸟巢进行设计81
学习活动五:智能鸟巢的结构设计81
任务一:学习软件的主要组成部分82
任务二:学习绘图中的技巧性指令82
任务三:绘制出零件图形83
任务四:设计智能鸟巢的结构84
学习活动六:智能鸟巢作品赏析84
实例六 姿态分类挑战88
学习活动一:设计姿态分类的算法87
任务一:理解分类87
任务二:分类姿态87
任务三:设计分类90
学习活动二:用Python语言实现姿态分类91
任务一:认识Python工具92
任务二:关键点显示93
任务三:中心化处理93
任务四:编写函数94
任务五:姿态分类94
任务六:姿态拍摄95
学习活动三:用机器学习实现姿态分类96
任务一:认识机器学习工具96
任务二:分类测试97
任务三:对比总结97
实例七 视力检测小助手项目的设计与制作98
学习活动一:如何识别手部动作100
任务一:了解手势分类100
任务二:手势分类效果分析100
任务三:提升分类识别准确率101
任务四:利用手部关键点技术设计视力检测小助手102
学习活动二:如何获取手部关键点数据102
任务一:使用XEduHub获取一张图片中的关键点数据102
任务二:优化数据采集思路103
任务三:使用摄像头对手部关键点画面数据进行采集104
任务四:进一步完善手部关键点数据采集功能106
学习活动三:如何训练手势动作分类模型106
任务一:拆分数据集为训练集和验证集106
任务二:搭建全连接神经网络并训练模型107
任务三:验证模型的效果107
任务四:对最佳模型进行格式转换108
任务五:利用训练好的手势分类模型对视力检测小助手进行设计110
学习活动四:如何开发用户交互界面110
任务一:如何在窗口上显示图标110
任务二:在旁边添加一个位置显示摄像头采集画面111
任务三:结合推理代码完善用户交互界面112
任务四:使用用户交互界面完善视力检测小助手114
学习活动五:视力检测小助手作品赏析114
实例八 厨房保卫战项目的设计与制作116
学习活动一:从目标检测技术入手分析厨房保卫战项目117
任务一:学习目标检测技术118
任务二:拆解厨房保卫战任务119
学习活动二:体验目标检测模型119
任务一:回顾目标检测知识点120
任务二:学习XEduHub目标检测代码120
任务三:上机实践目标检测代码121
学习活动三:灶台火焰目标检测数据集制作122
任务一:认识COCO格式数据集122
任务二:准备数据123
任务三:划分数据124
任务四:使用LabelMe对数据集进行标注125
任务五:将标注文件从LabelMe格式转为COCO格式125
任务六:检查整理COCO数据集125
学习活动四:目标检测模型训练126
任务一:实践模型训练过程126
任务二:评估模型性能127
学习活动五:模型转换与推理127
任务一:目标检测模型转换128
任务二:使用XEduHub进行模型推理128
学习活动六:模型应用与部署129
任务一:实时目标检测129
任务二:设计逻辑代码,实现“看火”功能130
任务三:硬件部署132
学习活动七:厨房保卫战项目展示与评价133
实例九 AI发芽土豆分拣机项目的设计与制作135
学习活动一:学习图像分类技术137
任务一:了解图像分类的应用场景137
任务二:体验图像分类的项目流程138
任务三:认识数据集的重要性138
学习活动二:数据集制作与优化139
任务一:明确分类问题需求139
任务二:数据预处理和划分139
任务三:数据集的质量优化140
学习活动三:理解模型训练算法与算力140
任务一:选择SOTA模型140
任务二:实践模型训练过程141
任务三:评估模型性能142
任务四:深入理解数据、算法、算力的作用142
学习活动四:模型推理与优化143
任务一:土豆分类模型推理143
任务二:了解算力对模型训练的影响144
任务三:预训练模型145
任务四:进行训练参数的实验145
学习活动五:模型转换和AI应用部署146
任务一:行空板准备146
任务二:模型转换146
任务三:行空板部署147
任务四:屏幕显示图像与文字148
学习活动六:多模态交互项目迭代149
任务一:了解多模态交互概念150
任务二:设计超声波检测开关150
任务三:语音输出152
任务四:外接舵机分拣154
学习活动七:AI发芽土豆分拣机项目展示与评价156
实例十 口罩检测项目的设计与制作157
学习活动一:了解机器学习技术158
任务一:总结人类与机器的不同之处158
任务二:比较机器与人类的学习过程159
任务三:了解数据与数据集159
任务四:了解机器学习的一般过程161
学习活动二:口罩检测项目的制作计划与准备161
任务一:制订数据集的初步采集计划161
任务二:学会使用训练工具161
任务三:训练模型,观察测试模型结果165
学习活动三:自动口罩检测项目的制作166
任务一:口罩数据采集166
任务二:建立口罩检测模型166
任务三:测试口罩检测模型166
学习活动四:口罩检测项目效果的升级—口罩攻防167
任务一:尝试“骗过”检测器167
任务二:训练能防御各种攻击情况的口罩检测器167
任务三:进行口罩检测器比赛169
第三篇 人工智能项目实践
项目实践一:使用摄像头进行人脸识别并标记173
学习活动一:导入项目所需的库174
学习活动二:加载本地图片175
学习活动三:探索人脸检测模型175
学习活动四:检测并标记人脸的图片176
学习活动五:实现完整的摄像头视频人脸检测177
项目实践二:中文分词技术在词云图生成中的应用178
学习活动一:导入项目所需的库179
学习活动二:加载文本数据180
学习活动三:使用中文分词技术对文本进行分词181
学习活动四:生成词云图182
学习活动五:优化词云图生成效果183
项目实践三:使用目标追踪计算单摆实验周期184
学习活动一:导入项目所需的库,加载单摆视频185
学习活动二:初始化目标187
学习活动三:逐帧追踪188
学习活动四:单摆位置-时间信息可视化191
学习活动五:计算单摆周期195
参考文献198