15| 6
|
[试用测评] 【花雕动手做】AI 视觉二哈识图 2 之识别标签控制执行器 |
3、AprilTag 标签识别是一种视觉识别与空间定位技术,其核心目标是:通过摄像头自动检测图像中的 AprilTag 标签,并精确识别其身份编号、位置坐标与空间姿态(方向角度)。AprilTag 标签识别是视觉 AI 中极具工程价值的技术之一。它是机器人视觉、无人机导航、增强现实(AR)等领域中常用的定位与识别手段,具有高精度、低误识率、识别速度快等优势。AprilTag标签在线生成网站链接:https://www.2weima.com/aruco.html (1)什么是 AprilTag? AprilTag 是一种类似二维码的二维视觉标记系统,由黑白方块组成,但结构更简洁,识别更稳定。每个标签包含: 唯一 ID 编码:每个标签代表一个独立编号,便于识别与区分。 定位边框:四角的黑白边框用于快速检测与几何定位。 内部编码区域:用于识别身份与容错处理。 ![]() (2)AprilTag 标签识别的基本流程 图像采集:通过摄像头获取包含标签的图像。 标签检测:识别图像中是否存在 AprilTag 标签。 ID 解码:解析标签的唯一编号。 姿态估计:计算标签在三维空间中的位置与方向(6自由度)。 结果输出:返回标签 ID、位置坐标、旋转角度等信息。 (3)AprilTag 与二维码的区别 ![]() (4)应用场景举例 机器人导航:识别地面或墙上的标签,实现路径规划与定位。 无人机降落:通过识别地面标签进行精准悬停或着陆。 教育实验:学生用标签训练 AI 视觉识别与空间计算。 机械臂控制:识别工件上的标签,辅助抓取与装配。 AR 增强现实:识别标签位置叠加虚拟内容。 (5)标签设计与使用建议 标签尺寸应根据识别距离调整(越远越大) 打印时保持高对比度与清晰边缘 安装时避免反光、遮挡或倾斜过大 可使用 3D 打印或激光雕刻制作耐用标签。 (6)相关场景 ![]() ![]() |
4、执行器(Actuator)是一种将控制信号转换为物理动作的装置,是自动化系统和机器人中的关键部件。它的作用是根据控制系统的指令,驱动机械结构完成特定动作,如移动、旋转、推动、夹取等。 (1) 执行器的核心定义 执行器是将电信号、液压信号或气动信号转化为机械运动的装置,是“感知—决策—执行”链条中的最后一环。 (2)常见执行器类型 ![]() (3)执行器在系统中的作用 动作执行:如机械臂的关节旋转、轮式小车的驱动、夹爪的开合。 反馈闭环:配合传感器形成闭环控制系统,实现精准定位与动态调整。 能量转换:将控制系统的能量信号(电、气、液)转化为机械能。 接口桥梁:连接控制系统与物理世界,是“虚拟指令”落地的关键。 (4)应用场景举例 工业自动化:机器人焊接、搬运、装配 智能家居:窗帘开合、电动门锁、自动调光 航空航天:飞行器舵面控制、姿态调整 医疗设备:手术机器人、康复辅助机械 仿生机器人:模仿肌肉运动的柔性执行器 (5)使用执行器需注意事项 负载匹配:选择合适的执行器类型与规格,避免过载或性能不足 控制精度:需配合编码器、传感器实现闭环控制,提升定位与响应能力 响应速度:不同驱动方式响应时间不同,需根据任务需求选型 能耗与散热:电动执行器需考虑功率与热管理 安全机制:设置限位、急停、过载保护,防止误动作或损坏 (6)为简化测试实验,这里使用简单的执行器LED模块 ![]() |
5、实际测试的几个范本(标签类型为APRIL_TAG25H9)![]() 6、测试实验代码
|
7、实际测试的代码解读 (1)该程序实现了以下功能: 初始化 HUSKYLENS 模块并启动标签识别算法 统计当前画面中识别到的标签数量 根据标签 ID 控制 LED 灯的闪烁方式: ID = 1 → 快闪(200ms 间隔) ID = 2 → 慢闪(800ms 间隔) ID = 0 → 熄灭 每次识别间隔 500ms,适合稳定测试与演示 (2)程序核心目标 通过 HUSKYLENS 识别图像中的标签(Tag),根据标签的 ID 控制 LED 灯的状态或闪烁方式,实现视觉驱动的智能控制。 (3)代码结构与功能说明 1. 引入库与创建对象 cpp
引入 HUSKYLENS 官方库,提供与设备通信的函数接口。 创建 huskylens 对象,用于调用识别算法和获取识别结果。 2. 初始化函数 setup() cpp
初始化串口通信(用于数据输出)和 I2C 通信(用于与 HUSKYLENS 连接)。 持续尝试连接 HUSKYLENS,直到连接成功。 设置数字引脚 13 为输出模式,用于控制 LED 灯。 3. 主循环函数 loop() cpp
请求 HUSKYLENS 执行标签识别算法,处理当前画面。 cpp
判断是否有识别结果可用,避免空数据处理。 4. 输出标签总数 cpp
获取当前画面中识别到的标签数量,并通过串口输出。 5. 根据标签 ID 控制 LED 灯 标签 ID = 1:LED 快闪 cpp
快速闪烁 LED 灯,每 200 毫秒切换一次状态。 标签 ID = 2:LED 慢闪 cpp
慢速闪烁 LED 灯,每 800 毫秒切换一次状态。 标签 ID = 0:LED 熄灭 cpp
直接关闭 LED 灯。 6. 控制识别频率 cpp
每次识别后延迟 500 毫秒,避免过于频繁地读取数据。 |
© 2013-2025 Comsenz Inc. Powered by Discuz! X3.4 Licensed