单元二

第5课 简易相机-拍照并保存文件

任务场景:简易相机-拍照并保存文件
任务场景:简易相机-拍照并保存文件

一、任务目标

按一下把照片存成文件,屏上留下照片和文件名。

二、我们要学什么

  • 学习要点:拍照存文件|按一下把画面写成 jpg
  • 本课过关:能完成:说出拍照存文件就是按一下把当前画面写成 jpg,屏上留下照片和文件名;载入编程体验,指出按 B1 依次存 0.jpg、1.jpg…,彩屏先显示这张照片再叠上文件名;再运行完整程序,指出按 B2 可切出 jpg 文件名列表,回到预览后仍能按 B1 拍照。
  • 示例对齐:编程体验对应 「2-1-1 简易相机-拍照并保存文件」;完整程序对应 「2-1-2 简易相机-显示图片文件名」。

三、本节要点

本课要认识拍照存文件:把摄像头画面写成带序号的 jpg。重难点是分清两套——编程体验只按 B1 拍并显示;完整程序还能按 B2 列出已有 jpg 文件名。要点对齐「拍照存文件|按一下把画面写成 jpg」。

1读场景对准画面按一下,把照片存成文件
2对要点拍照存文件|按一下把画面写成 jpg
3载入运行十学期兴趣课程积木/代码

四、解题思路

任务:利用摄像头,用两套程序认识拍照存文件——按 B1 把画面存成 jpg,屏上留下照片和文件名。完整程序再按 B2 列出文件名。请对照彩屏。

本课主要用到:摄像头;按键 B1、B2;彩屏 TFT。

  1. 1利用摄像头,按 B1 后,屏上有没有留下照片和文件名。
  2. 2创建 240×240 摄像头,循环里把画面送到彩屏。
  3. 3按 B1:把当前画面存成「序号.jpg」,再把照片和文件名显示约 1 秒。
  4. 4完整程序按 B2 清屏,把目录里带 jpg 的文件名逐行列出。
  5. 5完成补全与从头编写,并对照现象。

流程示意

预览摄像头画面按B1存成jpg屏上留下照片和文件名完整B2列出文件名完成补全与从头编写并对照现象

五、图形块功能讲解

下面只列出本课首次出现的 Mixly 图形块(真积木截图)。已在前面课讲过的不再重复;先认新块,再点「载入」对照拖搭。

图形块分类作用本课用法
创建摄像头(简易)
板载智能快速打开摄像头。创建 240×240 摄像头。两套预览和拍照都用它。
赋值
变量给变量写入新值。编程体验把「序号」写成 0。完整程序「序号」先写成 -1,「显示摄像头」先写成真。
显示摄像头画面
显示预览摄像头取景。把当前帧送到彩屏。体验一直同步预览;完整按「显示摄像头」决定同不同步。
精确图像数据
板载智能获取识别细节数据。取出当前一帧,送给彩屏预览。
拍摄保存
板载智能拍摄一张照片保存。按 B1 把当前画面存成「序号.jpg」。
拼接文字
文本把多段文字连成一句。把序号和「.jpg」拼成文件名,拍照、显示都用这个名字。
数字转文字
文本把数字变成可显示的字符串。把序号转成文字,才能和「.jpg」拼在一起。
取变量
变量读取变量当前值。读取序号去拼文件名;完整再读取「显示摄像头」决定预览还是列表。
屏幕显示图像
显示把图像显示到屏幕。把刚存的 jpg 显示到彩屏,确认拍到了什么。
显示图案或文字
显示按设定时间显示图案或字符串。在照片上居中叠写文件名,例如 0.jpg。
显示是否可用
显示查询显示设备是否就绪。调用 write,把刚写好的照片和文字真正送到彩屏。
延时
控制暂停指定时间,常用于动画节奏或等待。显示照片和文件名后停约 1 秒,再回到预览。
math selfcalcu
数学本课程序中用到的积木,载入后可在工具箱中对照名称查看。每拍一张把序号加 1。体验拍完再加;完整先加再拍。
清屏
显示清空当前显示内容。完整按 B2 后先把彩屏清空,再写文件名列表。
列表排序
列表对列表排序。完整把目录文件按文字排序,再筛选 jpg。
列出文件
文件列出目录中的文件名。完整按 B2 时取出当前目录里的全部文件名。
遍历列表
控制依次取出列表中每一项并执行循环体。完整逐个查看排序后的文件名。
计数循环范围
控制生成一段整数范围,常配合 for 循环。完整用 0 到列表长度,按行号往下写。
三角函数列表
列表对列表做三角运算相关处理。完整取出文件列表长度,决定要列多少行。
比较
逻辑比较两个值(大于/等于/小于等),得到真或假。完整判断文件名里能不能找到 jpg,找到才列到屏上。
查找文字
文本在字符串中查找子串位置。在文件名里找「jpg」,用来筛出照片。
取列表项
列表按位置取出元素。按当前行号取出一个文件名,写到彩屏上。
TFT 显示图案/文字
显示在彩屏显示内置表情或文字并停留。完整把 jpg 文件名写在 y=行号×40 的位置,白色、字号 2。
四则运算
数学加、减、乘、除等运算。完整用行号乘 40,得到这一行文字的纵坐标。
选择颜色
显示为彩灯/屏幕指定颜色值。完整列表文字颜色设为白色。
并且/或者
逻辑组合多个条件。完整:刚按 B1 并且正在预览,才拍照存文件。

六、知识点讲解

拍照存文件把当前画面写成 jpg。文件名用序号拼出来,拍完先显示照片,再叠上文件名,这样能确认存进去了。

先弄清:按 B1 才存文件;完整还能列出文件名。再进编程练习对照彩屏。

七、编程练习

点「载入」打开 MixVM(board=sant_design)。默认图形化积木;起步程序与积木均来自 MixGo SANT 十学期兴趣课程/学期5。若题目带外设 design,载入时会自动导入接线。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。

十学期兴趣课程:2-1-1 简易相机-拍照并保存文件.mix。载入后运行。

八、课堂练习

先完成两道正误判断,再做其余题目;选出后点「检查」。

  1. 判断:编程体验按 B1 会把画面存成 jpg,并在彩屏上留下照片和文件名。

  2. 判断:完整程序按 B2 会列出目录里的 jpg 文件名。

  3. 本课说的「拍照存文件」指的是?

  4. 编程体验和完整程序的主要差别是?

  5. 运行完整程序,在预览时按 B2 应看到?

九、本节小结

本课认识拍照存文件:按 B1 把画面写成 jpg,屏上留下照片和文件名。完整程序再按 B2,可以列出目录里的 jpg 文件名。