|
12| 8
|
[K10教程] 【花雕动手做】K10 实验之将狗脸相关数据显示在屏幕上 |
![]() 行空板K10是一款专为快速体验物联网和学习人工智能而设计的开发学习板,100%采用国产芯片,知识产权自主可控,符合信息科技课程中编程学习、物联网及人工智能等教学需求。该板集成2.8寸LCD彩屏、WiFi蓝牙、摄像头、麦克风、扬声器、RGB指示灯、多种传感器及丰富的扩展接口。凭借高度集成的板载资源,教学过程中无需额外连接其他设备,便可轻松实现传感器控制、物联网应用以及人脸识别、语音识别、语音合成等AI人工智能项目。 主要特点 集成摄像头&内置算法,可进行离线图像检测 集成麦克风&内置算法,可进行离线语音识别 集成扬声器&内置算法,可进行离线语音合成 2.8寸彩色屏幕,数据展示更清晰 集成度高,利于教学 接口丰富,兼容软件多,扩展性好 ![]() |
|
知识点:行空板 K10 猫狗脸检测 一、基础硬件与底层原理 1. 硬件支撑 行空板 K10 搭载ESP32-S3 主控,内置专用 NPU 硬件 AI 加速器,搭配板载 200 万像素前置摄像头,无需外接模块、无需联网,本地离线运行猫狗检测算法,纯边缘端计算,无网络延迟、不消耗流量。 配套输出外设:2.8 寸彩色 LCD(实时显示摄像头画面 + 识别框)、RGB 氛围灯、A/B 物理按键、TF 卡存储(可抓拍宠物照片)、扬声器。 2. 算法定位 猫狗检测是 K10 内置四大原生视觉 AI 模型之一,其余三种:人脸检测、移动检测、二维码识别。 识别目标:画面内猫、狗的脸部区域均可识别; 区分逻辑:仅检测宠物脸部存在,无法区分具体品种、无法给猫狗分配独立 ID(和人脸录入识别有本质区别); 运行要求:设备竖直放置(Type-C 接口朝上),横屏摆放会大幅降低识别成功率,甚至完全检测不到目标。 二、猫狗检测完整核心功能 1. 实时画面框选可视化 检测到猫 / 狗脸部时,屏幕摄像头画面会自动叠加绿色矩形识别框圈出宠物脸,直观展示识别区域;移动检测、二维码模式无识别框,仅人脸、猫狗检测支持框选标记。 2. 完整宠物面部数据读取 检测到猫狗后,可实时读取宠物脸全部坐标与尺寸参数,图形化 / 代码均可调用: 基础尺寸:脸部宽度 Width、高度 Length; 坐标信息:脸部中心点 X、中心点 Y; 五官关键点:左眼 XY、右眼 XY、鼻子 XY、左右嘴角 XY。 可基于坐标实现跟随效果、屏幕贴纸、灯光跟随等交互。 3. 状态判断接口 提供专用判断函数,快速判定画面是否存在猫狗: Mind + 图形化:「是否检测到猫狗」积木,返回布尔值; Arduino C 代码:ai.isDetectContent(AIRecognition::Cat); MicroPython:data['cat_flag'],1 = 检测到猫狗,0 = 无目标。 4. 可联动全板载外设做交互 检测触发后可联动所有硬件开发趣味项目: RGB 彩灯:检测到宠物自动亮对应颜色呼吸灯、闪烁倒计时; 自动抓拍:识别稳定 2 秒自动拍照存入 TF 卡,实现宠物自动相机; 语音播报:检测到猫狗喇叭播放 “发现小猫 / 小狗”; 屏幕交互:显示宠物坐标、弹窗提示、叠加卡通贴纸; 物联网:WiFi 上传宠物到访记录到上位机 / 小程序。 ![]() |
|
【花雕动手做】行空板 K10 系列实验之猫狗脸检测的将狗脸相关数据显示在屏幕上 实验开源代码 |
|
行空板 K10 狗脸检测代码解读 一、头文件与硬件对象区 k10:全局主控对象,所有屏幕、绘图、摄像头操作都依靠这个对象; screen_dir=2:屏幕正向竖直显示,猫狗检测必须竖屏,横屏识别率大幅下降; ai:AI 视觉专用对象,专门处理猫狗检测相关逻辑。 二、setup () 上电初始化(仅运行 1 次) 执行顺序:硬件初始化 → AI 初始化 → 画布 / 摄像头初始化 → 清空旧 AI 模式 → 开启摄像头画面 → 切换猫狗检测 AI 模式。 三、loop () 主循环(无限重复执行,核心识别逻辑) 1. 核心 AI 判断函数 ai.isDetectContent(AIRecognition::Cat) 返回 true:画面内识别到猫或者狗的脸部; 返回 false:无宠物,不执行文字绘制逻辑,屏幕只显示摄像头画面。 2. 数据读取函数 ai.getCatData() 说明 专门读取猫狗脸部检测数据,仅猫狗模式可用: AIRecognition::Length:宠物脸纵向长度; AIRecognition::Width:宠物脸横向宽度; AIRecognition::CenterX:脸部中心横向坐标; AIRecognition::CenterY:脸部中心纵向坐标。 3. canvasText 参数说明 格式:canvasText(显示文本, 行数, 字体颜色) 程序固定把 4 组数据分别打印在第 6、7、8、9 行,每行使用不同颜色区分数据。 4. delay (1000) 作用 每 1 秒刷新一次检测数据,减少频繁读取 AI 数据、频繁刷新屏幕带来的性能消耗; 缺点:阻塞式延时,这 1 秒内无法响应按键、灯光等其他操作。 四、代码整体运行流程 板子通电,自动完成硬件、AI、摄像头初始化; AI 切换为猫狗检测模式,屏幕实时显示摄像头取景画面; 镜头出现猫 / 狗脸部:屏幕打印宠物脸长宽、中心 XY 坐标; 镜头无宠物:只显示摄像头画面,无任何文字; 每隔 1 秒循环检测一次画面。 五、使用注意事项 设备必须竖直摆放,横屏会大幅降低猫狗识别成功率; 环境光线充足,逆光、昏暗环境识别不稳定; 宠物脸部占画面 1/6~1/2 识别效果最好,太远、太近检测不到; 不要在 loop 里频繁调用ai.switchAiMode()切换 AI 模式,容易黑屏、设备重启。 |
沪公网安备31011502402448© 2013-2026 Comsenz Inc. Powered by Discuz! X3.4 Licensed