这个项目来自一个很普通的课堂场景:上课开始时,老师需要知道谁已经到了,谁还没到。最初的想法是做一个电脑签到系统,让学生点击自己的名字。但这样又带来新的问题:如果有人乱点,签到记录就不可靠。
于是我们把问题换成一个更有创造性的方向:当学生出现在摄像头前,系统能不能自动识别并完成签到?这个原型使用 face-api.js,把人脸转换成数字特征,再把实时摄像头画面中的人脸与已保存的样本进行比较。你可以打开这个浏览器演示:人脸签到演示。
最有教学价值的地方,不是让摄像头打开,而是理解“电脑找到了人脸”和“电脑知道这个人是谁”之间还有很多判断。阈值太严格,光线变化时同一个学生可能识别失败;阈值太宽松,又可能把错误的人标记为已到。这正好引出关于测试、不确定性、数据质量和负责任 AI 设计的讨论。
界面也经过了多次简化。早期版本显示了太多模型信息,看起来更像调试工具;后来只保留关键动作:加载模型、打开摄像头、识别人脸、显示结果。这样学生更容易把技术流程和真实课堂需求联系起来。
作为功能原型,它展示了签到流程从手动点击走向自动识别的可能性;作为教学案例,它也把人脸注册、匹配、阈值、误判、隐私和界面设计放进同一个小产品里,让学生可以讨论、测试并改进。
