开始之前:
1. 追踪物体输出相关数据
HUSKYLENS 2 检测到可追踪的目标物体时可获取相关追踪数据,并通过串口打印输出。可以读取的数据有:物体的ID、名称、xy坐标、宽度、高度。
示例程序如下
#include "DFRobot_HuskylensV2.h"
// 创建对象
HuskylensV2 huskylens;
// 主程序开始
void setup() {
Serial.begin(9600);
Wire.begin();
while (!huskylens.begin(Wire)) {
delay(100);
}
huskylens.switchAlgorithm(ALGORITHM_OBJECT_TRACKING);
}
void loop() {
huskylens.getResult(ALGORITHM_OBJECT_TRACKING);
if ((huskylens.available(ALGORITHM_OBJECT_TRACKING))) {
Serial.println((String("追踪的物体ID为:") + String((RET_ITEM_NUM(huskylens.getCachedCenterResult(ALGORITHM_OBJECT_TRACKING), Result, ID)))));
Serial.println((String("追踪的物体名称为:") + String((RET_ITEM_STR(huskylens.getCachedCenterResult(ALGORITHM_OBJECT_TRACKING), Result, name)))));
Serial.println((String("追踪的物体中心点坐标为:") + String((String((String((RET_ITEM_NUM(huskylens.getCachedCenterResult(ALGORITHM_OBJECT_TRACKING), Result, xCenter))) + String(","))) + String((RET_ITEM_NUM(huskylens.getCachedCenterResult(ALGORITHM_OBJECT_TRACKING), Result, yCenter)))))));
}
delay(500);
}
将HUSKYLENS 2 的摄像头对准画面中的要追踪的物体(追踪物体须先框选目标,详见物体追踪使用说明)。追踪目标框选完成后打开串口监视器,观察输出结果。
**运行结果:**可输出追踪到的物体ID、名称、xy坐标、宽度、高度。物体名称默认为"物体"。