十二章候选稿 · 汇总于2026-10-08
第10章 让作品感知环境并作出回应
样章 v0.2 | 2026年10月8日 | 续写候选
杯子放上去,介绍出现了
一只杯子、一块橡皮,还在我们的桌面上。第3章,我们让模型学习区分它们;第4章,又比较过照片改变以后,模型给出的结果。
现在设想一个小小的介绍牌:把杯子放到摄像头前,屏幕出现你写的杯子介绍;换成橡皮,屏幕换成另一句话。来看作品的人可以移动实物,看看介绍怎样跟着变化。
这件作品与上一章的网页有什么不同?以前,读者按下按钮,程序改变文字。现在,摄像头持续提供图片,模型给出分类结果,程序再决定显示哪一段介绍。读者的动作进入了作品,作品又通过屏幕回应。
不过,杯子已经移走,屏幕可能还停在上一句话;模型可能把橡皮认成杯子;程序也可能收到结果,却没有改变显示。把这些环节接起来以后,我们需要看看每一步实际发生了什么。
本章以“桌面介绍牌”为主要尝试,复用杯子和橡皮的图像材料,输出选择屏幕文字。简单指示灯作为选做比较,不必同时完成。我们还会改变一个条件,观察结果,并保留自己直接选择介绍和停止自动回应的办法。
学完本章,你将能够:说明采集、模型判断和程序控制各自做了什么;观察一次真实输入带来的屏幕变化;区分发出要求与实际回应;解释延迟和输入变化的影响;说明何时需要自己操作。
10.1 从屏幕走向真实环境
10.1.1 摄像头、麦克风与其他传感器
第8章的小网页接收按钮点击。本章的介绍牌接收摄像头记录的图像。两者都有输入,只是输入与人的动作发生联系的方式不同。
摄像头把进入镜头的光记录成图像数据。图像中的杯子位置、明暗和颜色,会随着现场变化而改变。程序可以不断取得新的画面,再交给模型处理;连续图像分类的实际应用就会采用这样的做法。[1]
画面还在更新,是开始观察的重要条件。把杯子缓慢从左边移到右边,看看预览中是否出现相应变化。如果屏幕一直停留在一张照片上,先弄清它显示的是静态图片,还是正在接收摄像头的新画面。
静态照片也可以交给真实模型分类,但它记录的是拍摄时的情况。读取一张昨日拍摄的照片,不能说明模型已经观察了此刻的桌面。
换成声音任务,输入设备可以是麦克风。第4章讲过,声音变化经过记录成为按时间排列的数字。程序可以把一段新的音频交给声音分类模型,得到敲击、说话等类别。摄像头提供空间中的外观信息,麦克风提供一段时间内的声音信息。
设备还可以记录别的变化。光线传感器测量光照,温度传感器测量与温度有关的数值,加速度传感器感受运动变化。把某一种物理变化转成可供程序处理的信号,是传感器的基本作用。具体传感器有自己的测量范围和使用条件。[2]
这些输入不一定需要AI才能使用。若要求是“读数低于某个值时显示较暗”,普通程序比较数值就能完成。若要根据图像区分杯子与橡皮,则可以使用第3章形成的分类模型。是否引入模型,要看判断需要什么信息。
先查看这次实际输入。 将杯子移到镜头中央,停一会儿,再换成橡皮。先只观察预览,不急着看类别。画面是否清楚?物品有没有被截去一部分?镜头拍进了多少背景?你要先知道模型会收到怎样的材料。
把采集范围限制在桌面和练习物品上。自己的脸、同学的脸和屏幕上的私人内容,都不需要成为这个作品的输入。结束观察后,关闭采集。使用哪些设备和怎样开启,由课堂环境另作安排。
10.1.2 模型判断与现场实际情况
摄像头记录了一张图片,模型再处理这张图片。于是,我们面对两个可以分别检查的对象:现场实际摆着什么,模型给图片分配了什么类别。
下面是一段示例,数值用于理解结果。
| 我们看到的物品 | 模型输出:杯子 | 模型输出:橡皮 | 分数较高的一类 |
|---|---|---|---|
| 一只杯子 | 0.91 | 0.09 | 杯子 |
| 一块橡皮 | 0.44 | 0.56 | 橡皮 |
| 一件没有参与训练的新物品 | 0.83 | 0.17 | 杯子 |
第三行尤其值得留意。模型只在已有两类中计算,新的物品仍然可能得到“杯子”这一结果。分数较高,说明在这次计算里该类别更占优势;它不能证明现场确实有杯子,更不能表示这件新物品有83%的可能安全可用。[1]
如果我们希望“没有杯子也没有橡皮”时显示等待,仅凭两类模型的最高类别,未必能做到。增加“其他”或“空桌面”的训练材料,可以扩展本次任务,但这些材料也只能覆盖提供过的情况。人还需要检查作品在不同输入下的表现。
本次先保持已有模型和类别,研究结果怎样进入介绍牌。每次只放一种练习物品,换物品时观察类别是否及时变化。空桌面或陌生物品的结果作为限制讨论,不把作品用于自动确认物品是否齐全。
现场事实还包含图像没有记录的信息。画面中有杯子,不能因此知道杯子里是否有热水;类别为“橡皮”,也不能说明它是否干净、能否擦掉某种笔迹。作品只能围绕已经获得的信息回应。
因此,介绍文字要与实际能力相配。例如“模型当前选择了杯子这一类,下面是我为杯子写的介绍”,就交代了结果的来处。直接显示“你手里这只杯子可以安全装开水”,已经超出了图片分类支持的判断。
选一次实际结果来解释。 对照预览、物品和类别,说清模型收到了什么、回答了什么。若结果与现场一致,就记录一致;若不同,就指出具体差别。不要为了完成活动,补写一条没有出现的错误。
10.2 把判断变成可观察的回应
10.2.1 屏幕、声音与指示灯等输出
得到“杯子”这一类别以后,介绍牌还需要做一件事:选出相应文字,并把它显示出来。模型通常不会替我们完成所有页面操作。
先为两件物品各写一句介绍。可以写杯子怎样握持、橡皮留下了什么使用痕迹,也可以写自己为什么选择它们。文字来自你的观察和选择;模型提供类别,程序据此在两段文字中选择。
例如,杯子的介绍可以是:“这只杯子的把手比较宽,我习惯用两根手指握住它。”橡皮的介绍可以是:“这块橡皮的一角已经磨圆,保留了许多次修改的痕迹。”换成自己的物品,就重新观察和改写,不照搬示例经历。
程序接到分类结果,可以按事先写好的对应关系处理:杯子类对应杯子介绍,橡皮类对应橡皮介绍。屏幕显示内容,是普通程序的输出。计算机系统通过处理输入改变输出,这个基本关系也适用于按钮、屏幕、声音和灯。[3]
这里可以看清三种工作:摄像头采集图像,模型根据图像计算类别,程序按规则选取文字。只改介绍文字,不会让模型重新学习;只改模型,也不会自动把旧介绍改成新内容。
程序还可以决定何时采用结果。下面是一种用于讨论的规则:当分数较高的类别达到0.80时,显示该类介绍;不足时,显示“暂时不能确定,请调整物品位置,或手动选择介绍”。0.80只是教学设定,应根据实际表现比较,不是各类模型通用的可靠界线。
根据前一节的示例,0.91的杯子结果会显示杯子介绍,0.56的橡皮结果会显示等待。0.83的陌生物品仍然可能显示错误介绍。所以,加入一道分数条件,可以改变程序采用哪些结果,却不能消除所有模型错误。
把一项回应接起来。 在已经准备好的课堂练习环境中,为两类结果填写自己的介绍,先确认手动选择时两段文字都能显示,再开启图像输入。依次放入两件物品,观察模型类别与介绍是否对应。对照一次具体结果,说明是哪一个部分改变了屏幕。
若改为声音输出,可以播出一段简短提示;若使用教学板的指示灯,可以把类别对应到两种灯光状态。每种输出都要让人知道它代表什么。只有一种颜色的灯若亮起,应明确它表示“采用了某类结果”,不能让读者误以为作品确认了某项安全事实。
本章先完成屏幕回应即可。增加声音或灯以后,需要另外检查它们是否实际发生,不能直接沿用屏幕成功的结论。
10.2.2 检查回应是否真正发生
“准备显示杯子介绍”“程序已执行显示操作”“屏幕上看到了杯子介绍”,是逐步接近结果的三句话。我们应当根据自己取得的信息,说到相应的一步。
例如,模型给出杯子类,页面上的结果栏也写着“杯子”,介绍区域却仍然保留橡皮介绍。这时,图像分类可能已经完成,文字选择或显示还需要检查。重新训练模型,未必能解决介绍区域的问题。
又如,程序显示“已发送点亮要求”,桌上的灯却没有亮。发出要求和灯实际发光之间,还隔着通信、设备和供电等环节。仅看发送记录,无法确认结果已经发生。
我们通过观察或新的测量,得到实际回应的信息,这就是本章所说的反馈。屏幕文字可以直接看,声音可以听,灯光可以观察;提高活动还可以用其他传感器测量。收到一条设备消息,也要看它具体说的是“已接收”,还是已经取得了关于输出的测量。
这里可以做一次很小的检查。把杯子放好,先看预览中的输入,再读分类结果,最后看介绍区域。换成橡皮,沿同样顺序再看一次。把“模型选了哪一类”和“介绍出现了什么”分别说清,不需要抄下整段程序记录。
如果屏幕已正确显示,再读一遍文字,看它是否仍然符合自己的物品。程序执行成功和内容合适,也是两个问题。物品有磨损、介绍想表达什么,仍然由你决定。
比较一次手动与自动回应。 先用手动按钮选杯子介绍,再让模型触发同一段介绍。如果手动显示正常,自动显示不对,问题更可能出在输入、分类或两者与显示之间的连接;如果两种方式都无法显示,就先检查文字和页面输出。这样的比较能帮助缩小需要了解的范围。
反馈还决定作品怎样继续。灯没有亮时,连续发送许多次点亮要求,并不能证明每次都有效。先停止自动发送,检查连接或请人查看,再决定是否继续。本章用低风险的文字提示讨论这种关系,不让未确定的结果去控制门锁、加热装置或其他可能伤害人的设备。
有时只能完成部分尝试。用照片导入真实模型,观察到介绍变化,可以说明“照片分类与屏幕回应完成”,但现场连续采集还没有检查。按示例类别手动切换介绍,可以说明“输出规则的模拟完成”,此时没有摄像头感知,也没有模型推理。清楚交代做到哪一步,后面才知道还需补什么。
10.3 让作品适应变化
10.3.1 延迟、噪声与设备变化
把杯子换成橡皮,屏幕可能过一会儿才改变。现场发生变化与作品完成回应之间的时间差,称为延迟。
一次回应需要经历采集、模型计算和输出更新。不同设备和模型的处理速度不同,程序安排也会影响等待时间。模型在某台设备上的一次计算时间,不能直接当作整个作品从现场到输出的总时间。[1]
下面是一段用于计算的示例:图像采集和准备用了0.05秒,模型计算用了0.18秒,选取介绍并更新屏幕用了0.02秒。若这三部分依次完成,这次总共约需0.25秒。实际作品还可能有其他等待,要以实际观察为准。
0.25秒看起来很短,但读者把物品快速掠过镜头时,它可能已经离开,介绍才出现。于是,屏幕正在呈现的结果,可能对应稍早的一张图片。看到输出时,也要留意输入是什么时候取得的。
做一个缓慢变化的比较。 先把物品放稳,等介绍出现;再换成另一件,也放稳。随后可以稍微加快交换,观察屏幕是否跟得上。不要先断言“实时就是没有延迟”,也不需要为了测到小数点后的数值增加复杂设备。先说明是否有可察觉的等待,以及这种等待对读者有什么影响。
同一件物品放着不动,分数也可能有小幅变化。光线、阴影、摄像头自动调整和画面中的细微移动,都会影响输入。对当前任务无帮助、又让结果难以稳定的干扰,常被称为噪声。它可以来自采集环境,也可以出现在信号和处理过程中。
如果分数刚好围绕0.80变化,按“每次超过就显示、不足就等待”的规则,文字可能反复切换。这个现象与模型偶尔把类别完全认错不同,修改方法也需要对准实际原因。
一种可以比较的做法是:同一类结果连续三次达到条件,再采用该类介绍。下面是一段构造序列,每次都是杯子类分数较高,采用条件为达到0.80。
| 更新次序 | 杯子分数 | 连续达到条件的次数 |
|---|---|---|
| 第1次 | 0.86 | 1 |
| 第2次 | 0.77 | 0 |
| 第3次 | 0.88 | 1 |
| 第4次 | 0.90 | 2 |
| 第5次 | 0.89 | 3 |
按这一规则,要到第5次才显示杯子介绍。第2次不足条件,连续次数重新开始。连续判断可以减少短时变化立即触发的机会,同时增加等待;同一个错误类别若一直满足条件,仍然会被采用。连续三次也不能当作三位互不影响的观察者都同意。
除了输入变化,换一台摄像头也可能改变画面。新镜头的视角更宽,同一只杯子占的画面比例变小;电脑处理较慢,输出等待更长。这些都需要重新观察,不能只说“文件没有变,作品就一定一样”。
本次只选择一项变化:换背景、调整距离或改用另一台现有设备。保持其他条件尽量一致,比较变化前后实际发生了什么。结果保持正常,同样是一次有效观察;若变化明显,再讨论它最先影响了输入、模型判断还是回应速度。
10.3.2 调整方法并保留人工操作方式
一次变化以后,可以先改最容易核对的一处。画面被裁去了一半,就调整摆放;等待太久,就让物品停留得久一些,或减少不必要的重复处理;介绍频繁跳动,再比较是否需要持续满足条件。
如果某种背景下模型反复认错,还可以回到第3章检查数据。补充这种条件的训练材料,形成新模型,再用没有参与补充的新图片检查。这是对模型的修订。调整采用分数或连续次数,改变的是程序使用结果的办法。
要分清这两种修改。提高采用分数,可能让错误介绍少出现,也可能让许多正确结果进入等待;补充数据可能改善分类,也需要重新检查。不能只靠一项参数不断升高,就宣布作品已经可靠。
选择一个有依据的小改动。 从自己的观察中选一个需要处理的地方,先说清要改变什么,再改一处并复看。可以保留一句前后比较:“背景变暗后杯子常被选成橡皮;调整照明后,这次杯子介绍恢复出现,暗背景下的其他角度还没有检查。”若没有明显问题,也可以解释为什么暂时保留原来的做法。
介绍牌还应允许人直接选择内容。读者可以按“杯子介绍”或“橡皮介绍”,不必一直等待模型;也可以按“停止自动回应”,让作品回到手动模式。手动结果应标明由人选择,避免与模型判断混在一起。
停止以后,要实际看看:移动物品是否还会改变介绍?输入是否已经结束?如果只是把按钮文字改成“已停止”,摄像头和自动更新却继续运行,人的选择还没有真正生效。
重新开始也要清楚。用当前的新画面重新判断,不把停止以前留下的分数立即当作新输入。摄像头没有提供新图像时,页面应说明暂时不能自动判断;旧介绍可以保留供阅读,但要标明它来自上一结果或手动选择。
这些办法让作品在条件不足时仍然能被使用。模型帮助减少一部分操作,人保留理解物品、选择内容和停止采集的能力。自动回应是否值得采用,要看它给读者带来了什么,而不只看它能否一直自动运行。
让摄像头、模型和输出共同参与,我们已经接触到AI与物理环境发生联系的一种基本形式。更复杂的物理AI作品还可能移动、抓取或改变环境,需要处理更多现场反馈。桌面介绍牌帮助我们先看清采集、判断、回应和检查之间的关系,不要求在本章制作机器人。
请一位读者看一看。 如果课堂条件允许,请他缓慢放入两件物品,读一次自动介绍,再试一次手动选择。问一个具体问题:“你能看出介绍来自模型选择还是手动选择吗?”根据实际反馈修改一句提示,或说明为什么暂时保留。没有组织试用,就记下这一项仍待完成。
本章回望
作品通过摄像头等设备取得环境信息,模型计算它能够处理的判断,普通程序把结果转成文字、声音或灯光。各部分相互接续,也各有需要检查的地方。
现场物品、模型类别和实际输出分别提供不同信息。分数不能代替现场事实,发出要求也不能代替回应已经发生的观察。反馈帮助我们了解结果,并决定继续、调整还是停止。
延迟让当前看到的输出可能来自稍早的输入;环境和设备变化会影响采集及处理。等待连续结果可以改变回应方式,却不能保证分类一定正确。根据具体观察作出一项修改,比盲目增加规则更有帮助。
这一次,我们只把两种物品与两段介绍接起来。下一章,你将从自己的需要出发选择一个小问题,决定采用哪些已经学过的方法,也可能发现一种直接、简单的做法更合适。
练习与继续探索
1. 说清三个环节。 杯子进入画面,模型给出杯子类,屏幕出现一段介绍。分别指出设备采集了什么、模型计算了什么、普通程序改变了什么。只修改介绍文字,会不会让模型更会认杯子?
2. 判断一条说明。 两类模型把陌生物品判断为杯子,杯子分数为0.94。有人写下“现场有杯子,判断已经核实”。这条说明还缺少什么依据?你会怎样表达已经取得的结果?
3. 检查回应。 程序报告已发送亮灯要求,灯没有亮。你现在能够确认到哪一步?若改用屏幕文字输出,应观察什么才能确认显示完成?
4. 算一段等待。 采集和准备用了0.04秒,模型计算用了0.21秒,页面更新用了0.03秒,三步依次完成。总共约多少秒?这个数能否保证换一台电脑后仍相同?
5. 读一串结果。 五次较高类别都为杯子,分数依次为0.82、0.84、0.79、0.86、0.88。若要求连续三次达到0.80,是否会采用杯子介绍?若下一次为0.90,会怎样?解释连续判断改变了什么、仍没有保证什么。
6. 留下自己的选择。 本次作品在一种背景下工作正常,在另一种背景下结果不稳定。选一项可检查的调整,并说明手动操作怎样保留。没有真实输入条件时,可以在构造序列上比较规则,同时明确现场采集和模型运行仍未验证。
本章资料来源
本章表格与时间数值为教学示例;活动结果由实际观察填写。配套的桌面介绍牌已经提供手动、照片模型和构造序列入口;摄像头现场与课堂活动仍须据实际条件核验。教师资源说明模型路线、验证范围与开展条件。
[1] TensorFlow 官方仓库. Image classification;Android image classification example。用于核对图像分类的输入、类别输出、连续摄像头分类及性能与设备有关的基本关系。文中示例未复现官方具体模型。访问日期:2026-10-08。
[2] Micro:bit Educational Foundation. Sensors。用于核对运动、光照、温度等传感输入的基本用途,不指定课堂硬件或采购。访问日期:2026-10-08。
[3] Micro:bit Educational Foundation. Inputs, outputs and processors。用于核对输入、程序处理与可观察输出的关系。访问日期:2026-10-08。