前言

  开水者,场景也;白菜者,算法也。在工业检测界事务视觉的使用场景往往较为单一,没有才智城市与自动驾驶事务端场景杂乱,但缺有共同的事务需求(精度往往要求比才智城市要高)在本文中我将为咱们举一简略工业检测界的事务,为咱们展现多种“烹饪”办法。请诸位服飨!

场景介绍剖析

  咱们能够简化下事务场景:有五种色彩的物体,分别在传送带上被运输,咱们需求做到的事情是将经过传送带上的物体的色彩检测出来,并对被检测色彩的物体数量+1操作。

  由所以实在的场景,那么必定是会存在一些让人意想不到的状况呈现,比如传送带是全体是绿色的,可是这条 传送带是首位焊接一起的,在焊接部分是呈现黑绿色,传送带比较润滑,会产生镜面反射现象。关于被检测的物品会存在部分被检测物品的出厂log会在摄像头正下方,被检测物品有塑料膜包裹,因为塑料膜表面比较润滑,所以被检测物体也会呈现镜面反射。

算法烹饪

  对上述事务场景显着能够得到是一个很【分类】使命咱们按照深度学习的领域来划分能够划分为【有导师监督】与【无导师监督】。也能够不选用深度学习的办法完结事务场景下的使命。下面我将为咱们带来这两个方向的“烹饪”技法。

无导师监督

  在无导师监督学习中最经典的算法莫过于聚类算法了(k-means算法),运用k-means进行二分类对事务场景的使用流程如下:

“开水白菜”——程序应用中的上等国宴

抱负中的检测成果可如下:

  1. 【底色,底色】:传送带上无物体,计算成果不变;
  2. 【底色,非底色】:传送带上有物体,且物体色彩为检测色彩,被检测色彩物体个数+1;
  3. 【非底色,非底色】:传送带上有物体,且物体色彩为检测色,被检测色彩物体个数+1;

依据上述流程咱们能够发现,咱们需求处理的问题有:

  1. 物体色彩不可与传送带色彩RGB范围值过于挨近;
  2. 物体之间的色彩RGB范围值不可过于挨近;
  3. 传送带自身的色彩RGB范围不该有太大的变换;
  4. 物体本身印刷的log色彩会干扰检测成果,应避免;

有导师监督

  有导师监督的深度学习算法这个里面涵盖的类别就较多了,在这儿咱们继续细分为【图画分类】和【方针检测OR切割】

图画分类

  剖析事务场景假如咱们选用图画分类完成传送带上物体的检测,因为物领会持续性呈现在画面中,所以需求划定ROI区域进行辨认,在构建数据集的时分,考虑到后期可能会存在物体色彩于传送带色彩挨近,故而需求对传送带上没有物体的时分进行采样,并对传送带上存在物体的时分进行采样。流程如下:

“开水白菜”——程序应用中的上等国宴

抱负中的检测成果可如下:

  1. 当ROI区域没有方针的时分,回来的最大置信度的成果为空,被检测物体个数不变;
  2. 当ROI区域存在物体方针的时分,回来的最大置信度的成果为实际检测到的物体色彩,被检测物体个数+1;

  依据上述流程咱们能够发现,咱们需求侧重处理的问题为: 数据清洗阶段无法很好把控物体进入ROI区域的临界限会导致存在物体与不存在物体的鸿沟模糊不清

方针检测(切割)

  因为在图画分类使命中咱们无法很好的掌握物体进入ROI区域的鸿沟,导致检测成果会呈现一些不友爱的当地,咱们能够考虑运用方针检测类,这儿咱们仅以yolo为比如进行剖析流程:

“开水白菜”——程序应用中的上等国宴

抱负中的检测成果可如下:

  1. 当没有物体在传送带上的时分,没有检测框,计算物体数据不变;
  2. 当传送带上存在物品时但物品坐标与ROI坐标构成的区域没有交集时,只显现当时检测物品色彩,不进行物品数量+1;
  3. 当传送带上存在物品且物品坐标与ROI坐标构成的区域存在交集时,对检测的物品色彩显现并对该色彩的物品个数+1;

  采样方针检测尽管能够很好的完成对传送带上的物品进行检测并计算,此刻具备一定的泛化能力,但这种办法也不对错常友爱,例如下“不友爱的当地”:

  1. 数据标注消耗时间精力;
  2. 训练网络需求消耗精力;
  3. 更改需求后,例如新增物体时,数据需求采集并训练;

非深度学习

  关于完结某一方针的辨认检测,无妨咱们能够跳出机器学习的圈子,咱们难道忘记了做当时做车牌辨认课程设计时选用的模板匹配算法么?在OPENCV中集成了模板匹配算法,咱们能够自行Google一下稍加调试便可完成一个简略的方针匹配算法。这儿我简略概述一下方针匹配算法的流程:

“开水白菜”——程序应用中的上等国宴

抱负中的检测成果可如下:

  1. 当画面中没有物体时不显现被检测信息;被检测物体数据不变;
  2. 当呈现物体且进入指定较大的ROI区域内时,对检测的物品色彩显现并对该色彩的物品个数+1;

  在运用非深度学习时,咱们经过流程图能够显着得到流程满足精简,咱们不用花费许多精力便将使命初步处理了,尽管运用模板匹配也是不非常优秀的处理方案,也是存在一些让人诟病的当地。例如:

  1. 无法很好的适应被检测物体的巨细变换
  2. 当被检测物体被log遮挡过多的时分,检测成果会呈现异常

  当然上述让人诟病的当地也不是不可被处理,例如咱们能够摄像头受骗安装一激光感应模块,当摄像头正下方呈现物体的时分,传递相应的电平信号进行剖析是否有物体经过,模板匹配法充任物体色彩检测模块运用,会让咱们更便利处理事务,这样咱们在搜集数据样本时不用像深度学习那般繁琐,关于增加新色彩物体的时分,模板匹配库也是较为轻易的完成。

结束语

  一个小小的工业端的物体色彩检测并计算问题,在本文中我提出了两大类处理办法,一类是深度学习,另一类对错深度学习。一起也为咱们带来了相应的处理流程,剖析了各自的优劣,期望咱们能够在处理日常的事务的时分,能够发散思想,不要局限于某一类办法中,不迷信于深度学习办法,多尝试一些其它办法,有时分会有意想不到的成果。

  特别关于新入行的人来说,面对新的事务时逐渐剖析这个问题面对的问题,去考虑怎么处理这个问题,有哪几种办法处理,比对各种办法的优劣,便利后期项目中的选择,为自己的“烹饪”技巧添砖加瓦。

白菜易,开水白菜难!