Skip to content

版本描述

  • robot code app 1.0.0版本
  • AI VISON 1.0.0版本
  • SPIKE 1.6.62版本(当前最新)

物体检测

首先调节焦距到最佳位置,不需要进行配置,模型选择物体检测, 直接识别80种类别的物体,可以调节置信度。

物体分类 (高级)

  1. 调节焦距到最佳位置,然后配置分类目标,点击左侧菜单模型配置->分类,采用视频框选进行配置

alt text

配置如下 alt text
2. 点击左侧菜单代码->code1,进行编码

⚠️ 注意

当输出坐标X1, Y1 都是 0,0的时候,说明识别不了位置,但仍然可以分类,项目中如果需要使用坐标请排除掉坐标是0的情况。
另外:配置的分类越多,性能越低

文字数字检测

首先调节焦距到最佳位置,不需要进行配置,模型选择文字数字检测,直接可识别印刷中文和英文,可以调节置信度。

人脸检测

  1. 调节焦距到最佳位置,然后配置人脸,点击左侧菜单模型配置->人脸,采用视频框选进行配置,具体操作参考物体分类。配置如下 alt text
  2. 点击左侧菜单代码->code1,进行编码视频中检测到4张人脸,但由于只配置了一个,名字是"NAME_1"(可在配置里修改),所以真正匹配到配置的人脸只有一个,也就是右上角的有标记NAME_1的那个。

目标跟踪

  1. 调节焦距到最佳位置,然后配置跟踪目标,点击左侧菜单模型配置->跟踪,采用视频框选进行配置,具体操作参考物体分类。配置如下 alt text
  2. 点击左侧菜单代码->code1,进行编码

    ⚠️ 注意

    1. 目标跟踪只能跟踪一种目标,但是上传时可以上传最多5张照片,可以来自同一目标的不同方位,名称都保持一致
    2. 如果目标从画面丢失,目标重新回到画面后,如果置信度太低,容易导致目标识别错误,可以保持在65-80%之间调整

人体姿态

首先调节焦距到最佳位置,不需要进行配置,模型选择人体姿态,可以调节置信度。

二维或条形码

首先调节焦距到最佳位置,不需要进行配置,模型选择二维码或条形码,可以调节置信度。
目前支持如下码规格识别

线性码工业码二维码
UPC-ACode 39QR Code
UPC-ECode 93Micro QR Code
EAN-8Code 128Aztec
EAN-13CodabarDataMatrix
DataBarDataBar ExandedPDF417
ITFMaxiCode (部分)

⚠️ 注意

务必调节好焦距,要清晰,画面中可以一次识别并返回多个码

颜色检测

  1. 调节焦距到最佳位置, 虽然内置有默认颜色匹配, 但是由于光照等环境因素,建议配置自己的颜色,点击左侧菜单模型配置->颜色,采用视频框选进行配置,具体操作参考物体分类。配置如下 alt text
  2. 点击左侧菜单代码->code1,进行编码

    ⚠️ 注意

    1. 框选时,与框选目标不同,框选颜色不要框选颜色以外的区域,只框选指定的颜色就可以
    2. 模型置信度参数调节,参数范围:1 ~ 100。
      对应关系:
      值越小 → 最小计算区域块面积占整个图像区域比例低(最小约 0.05%)
      值越大 → 最小计算区域块面积占整个图像区域比例高(最高约 5%)
      功能说明:
      小于最小计算区域的块将被忽略,不参与计算
      通过调节参数,可以控制模型对小区域噪声的敏感度

巡线

  1. 调节焦距到最佳位置,选择巡线模型,运行后,此时视频画面最下方会有检测黑线的区域,只有此区域内才进行黑线检测,并以白色显示处理结果。
  2. SPIKE 程序图如下 alt text
  3. 实物图 alt text

    ⚠️ 注意

    1. 模型置信度参数调节,参数范围:1 ~ 100。
      对应关系:
      值越小 → 最小计算区域块面积占巡线区域比例低(最小约 0.1%)
      值越大 → 最小计算区域块面积占巡线区域比例高(最高约 10%)
      功能说明:
      小于最小计算区域的块将被忽略,不参与计算
      通过调节参数,可以控制模型对小区域噪声的敏感度
    2. 模型可以识别出 直线,路口,没线,返回的目标名称分别对应 "LINE", "CROSS", "NONE"。 返回的像素偏移在坐标X1里面,负数代表位于黑线中心线的左侧,正数代表位于黑线中心线的右侧,绝对值越大,说明偏离黑线中心线越远。

综合应用

跟随小球

所需材料,LEGO spike + AI vision + 小球

  • 步骤一 配置追踪目标,配置如下 alt text
  • 步骤二
    vision负责追踪小球,处理小球的位置信息,其中((x1 + x2)/2) 是计算小球在水平面的中心位置;((x1 + x2)/2) - 400 是把计算坐标从图像最左侧移动到图像中心点;((((x1 + x2)/2) - 400)/ 5 ) + 100 由于
    ((x1 + x2)/2) - 400 计算出来的值最大为399,最小为-400,所以需要转成[0,200]之间发送给lego,所以/5+100后它的区间应该是 [20,180], 中心点为100。即如果返回100,说明小球在中间位置;返回150,说明小球向右偏移50
  • 步骤三
    vision代码中还处理了小球距离小车的距离,用x2-x1 来计算(非真实距离,真实距离需要转化),当x2-x1 的像素点 > 300时,认为小车足够接近小球了,发送暂停指令0。 如果没有检测到目标的情况下也需要返回指令,这里返回0,可以返回其他指令,比如1,让小车原地转来寻找目标。
  • 步骤四
    spike 负责接收接收坐标指令,当收到0时,暂停前进;当收到非0时,使用运动指令根据偏移来转向运动

vision视频如下

vision代码点击下载

spike程序如下alt text实物视频如下

军旗裁判

所需材料,LEGO spike + AI vision + 军旗

  1. vision负责识别军旗文字并比较大小,把大小转成特定数字给到spike,例如程序中 10是相等,一起同归于尽;9是右边大;11是左边大
  2. spike负责接收数据并执行动作,收到10时,电机转到中间;收到9时,电机转右; 收到11时,电机转左;
    下面是vision执行的视频vision代码点击下载
  3. 乐高spike程序如下: alt text
  4. 实物视频: