使用K-means在对图像进行目标颜色检测

简介: 使用K-means在对图像进行目标颜色检测

前言


  说起目标检测大家往往想到的是“有监督”检测,这里例如(ssd\yolo等模型);然而还有另外的一种思路供我们思考使用:聚类(K-means)。在本文中我提供一个例子讲解下聚类思想在目标检测中的应用并简要分析“有监督”与“无监督”模型之间的差异。



需求表述


   例如有如下场景:在一条传送带上传送着红色、绿色、黄色和黑色的电缆圈,现在在传送带上进行传送,每次只过一卷电缆,需要检测出通过传送带指定位置的电缆颜色为后续分揽件做准备。


  根据上述的需求对现有设备进行统计:


  1. 深绿色传送带一条


  1. 闸机一套


  1. 工业相机一台


  1. PC工控机一台




分析


业务逻辑


  对上述的需求部分进行分析,可以清晰的知道在传送带上的电缆是单卷进行运送,电缆颜色也不同于传送带的颜色,数据采集的设备(工业相机也具备了)。这样我们可以做如下设计:在闸机前安装工业相机(下面简称相机),使相机画面仅能容下传送带上的物品(这里特指电缆),在检测到电缆的颜色后把信息传递给闸机。


算法逻辑


  主要目标是对传送带上的电缆的颜色进行识别,这里我们考虑到电缆的颜色只有四种且电缆颜色与传送带的颜色也不一样,那么可以对传送带上的电缆图像进行颜色聚类,通过颜色聚类我们可以得到两种颜色:传送带的背景色与电缆的颜色,我们在聚类的结果中将背景颜色剔除掉后那么剩下的就是电缆的颜色了。


有/无监督


  K-means是非常典型的无监督模型的范例,通过上述的业务逻辑与算法逻辑分析来看,避免了有监督模型的繁琐的数据采集与标注,使用无监督模型的优点在这里显现出来了:不需要大量的数据进行训练,仅需要对业务场景以及业务逻辑的详细清晰的判研即可实现项目需求。



结束


  这里为大家带来了一个解决检测目标颜色的可执行方案,希望对大家有帮助。



相关文章
圆形算法识别
圆形算法识别
|
5月前
|
文字识别
文本,文字识别,PaddleOCR,如何删除,PaddleOCR详解,检测,方向分类器,识别,检测的意思是检查字符的位置,查像素坐标,方向分类器,能够实现180度的图像,字符识别是把识别字符
文本,文字识别,PaddleOCR,如何删除,PaddleOCR详解,检测,方向分类器,识别,检测的意思是检查字符的位置,查像素坐标,方向分类器,能够实现180度的图像,字符识别是把识别字符
|
6月前
|
算法 计算机视觉 Python
SIFT关键点检测
【6月更文挑战第5天】SIFT关键点检测。
39 4
|
存储 传感器 数据可视化
3D目标检测数据集 KITTI(标签格式解析、3D框可视化、点云转图像、BEV鸟瞰图)
本文介绍在3D目标检测中,理解和使用KITTI 数据集,包括KITTI 的基本情况、下载数据集、标签格式解析、3D框可视化、点云转图像、画BEV鸟瞰图等,并配有实现代码。
1598 1
|
7月前
|
计算机视觉 索引
【OpenCV】—ROI区域图像叠加&图像混合
【OpenCV】—ROI区域图像叠加&图像混合
|
7月前
|
传感器 人工智能 搜索推荐
用 ChatGPT 4.0 实现获取并保存 RealSense 相机的深度图像,处理colorizer,histogram equalization配置,解决深度图像颜色分布异常问题
用 ChatGPT 4.0 实现获取并保存 RealSense 相机的深度图像,处理colorizer,histogram equalization配置,解决深度图像颜色分布异常问题
103 0
用 ChatGPT 4.0 实现获取并保存 RealSense 相机的深度图像,处理colorizer,histogram equalization配置,解决深度图像颜色分布异常问题
|
7月前
|
算法 计算机视觉 异构计算
yolo如何画框、如何变换目标检测框的颜色和粗细、如何运行detect脚本
yolo如何画框、如何变换目标检测框的颜色和粗细、如何运行detect脚本
|
7月前
[Halcon&图像] 图像、区域和轮廓相互转化
[Halcon&图像] 图像、区域和轮廓相互转化
292 1
|
7月前
|
C++
[Halcon&定位] 解决Roi区域外的模板匹配成功
[Halcon&定位] 解决Roi区域外的模板匹配成功
213 0
|
7月前
|
算法 机器人
[3D&Halcon] 3D鞋点胶的点云边界提取
[3D&Halcon] 3D鞋点胶的点云边界提取
496 0