1
工业机器视觉:基于灵闪平台的开发及应用
1.18.1.3 16.1.3 检测方式
16.1.3 检测方式

本方案用于检测纸箱的朝向正反。首先需要部署直线、模板等定位器,确定识别标识的位置,然后训练学习型分类器识别标识的正反来确定纸箱的正反朝向。

本应用使用的算法有:

·直线定位。

·线与线的交点。

·模板定位。

·学习型分类器。

第一步,通过定位器确定纸箱标识所在的区域,如图16-2所示。定位两条近似垂直相交的直线及其交点以确定下排纸箱所在的起始位置;以上一步得到的交点作为定位器,定位一条纵向直线,并与前一步的横向直线求交点,以确定所要识别的目标纸箱所在的准确位置;以上一步得到的交点作为定位器,以标识的四角组成的框作为模板定位标识,模板搜索尺寸设置为±10%,以适应不同的透视变换对尺寸的影响,如图16-3所示。

图16-2 纸箱标识定位点示意

图16-3 以纸箱标识四角组成的框作为定位模板

第二步,构建样本库。由于要解决的问题不是很复杂,本案例只采集了较为少量的样本,如图16-4所示,正反两个类别分别采集了8张图片作为训练集,4张图片作为测试集。

图16-4 纸箱标识正反向样本库

第三步,添加HOG作为特征,添加KNN和SVM模型用于分类。

第四步,打开自动调参界面,选择HOG特征的所有参数加入自动调参列表,选择SVM模型和KNN模型的所有参数加入自动调参列表,点击运行,等待调参完毕。也可以选择特征和模型参数中的若干重要参数进行自动调参,以加快调参过程,如HOG特征的Cell Size、Bin Size、Cell in Block、Cell in Block Stride等,如图16-5所示。

图16-5 自动调参列表

第五步,打开测试与评价界面,对调好参数的模型进行测试。采样方式选择LOO交叉验证或随机采样,观察KNN和SVM 的分类结果。在本案例中,KNN和SV M的测试效果相当,因此可选择任意一个作为主模型。

图16-6 LOO交叉验证结果