因此,几年前,我正在研究一个解决方案,以解决我们的一个客户面临的问题。让你了解一下,我们的客户大多是制造公司。这款产品生产安全剃须刀,希望能够在包装并运往消费者手中之前区分带盖子的剃须刀和不带盖子的剃须刀。老实说,我已经厌倦整天坐在办公桌前了。所以我接下了这个项目(我当时以为我只是从市场上买了一些奇特的东西,然后卖给他们,ğŸ?euro�â™,aiecor�),下面是它是如何进行的。
问题是安全剃须刀会在传送带上运行,有三个潜在的缺陷,如果出现这些缺陷,可以通过停止机器来消除。此情况始终为以下情况之一:
1.安全剃须刀遗失
2.安全剃须刀头不见了
3.安全剃须帽遗失
4.安全剃须刀可以使用
我做了研究,在现有硬件的情况下,我采用了一种图像分类方法(基于与一位朋友的一次随意讨论,他提到了将猫和狗的照片分开的ğŸ˜�)。
我阅读了一些论文和文章来熟悉ML(如果没有开源社区😊的支持,这是不可能的)。我现在的目标是使用我自己的图像对现有的ML模型进行微调(也称为迁移学习)。捕获了上述每种情况的图像。现在我需要将这些图像输入ML模型进行训练。遗憾的是,我的电脑没能胜任挑战。训练ML模型需要更高的计算能力。我用谷歌搜索了这句话,然后使用一个AmazonEC2实例在云中训练我的模型。我训练了一个模型,但结果不是很好,所以我放弃了这种方法,坚持在我的系统上训练,减少了批大小,这也降低了所需的计算能力(通过谷歌搜索LIFEğŸ˜�)。模型训练成功。现在,实时捕捉实际图像的任务来了。传感器被用来定位剃须刀,后者将信号发送到计算机。计算机程序验证信号和图像捕获序列开始。简而言之,网络摄像头捕捉到一幅图像,该图像被发送到处理器,并提供给机器学习模型。该程序将输出零件最可能相似(有缺陷或可接受)的百分比。根据结果,信号将操作继电器,继电器将在程序做出有缺陷的结果决定的情况下关闭机器。
所有上述功能的软件端均在基于Linux的操作系统上运行的python上进行处理
在测试了100多种不同的型号后,其中一种型号的精确度达到了每1000把剃须刀中大约有1个错误分类的准确率。老实说,我对自己很满意,但是客户™不同意。与合规ğŸ˜有关的事情。
对我来说,这是一条挡路之路,因为很难追踪错误分类的根本原因,因为模型没有为为什么选择一个类别而不是另一个类别提供明确的推理。我已经准备好放弃了。但后来我突然想到一个主意。当我试图想办法从视觉上区分这两个物体(带和不带塑料帽)时,塑料的一个非常明显的特征浮现在我的脑海里。它们更具反思性。我更改了程序的分析部分,以比较图像的亮度值。啊,真灵!该算法具有较好的性能和较低的计算量。经过彻底的评估,客户购买了该系统。一个月后,他们又订购了一份ğŸ˜欧元。下面我添加了产品的前后图片。
对我来说,这个项目的主要收获是在满足需求的同时尽可能地保持简单。此外,提供免费学习材料的人都是相当酷的😉
原创文章,作者:fendouai,如若转载,请注明出处:https://panchuang.net/2021/08/06/%e9%9d%a2%e5%90%91%e5%88%9d%e5%ad%a6%e8%80%85%e7%9a%84%e5%ae%9e%e7%94%a8%e8%ae%a1%e7%ae%97%e6%9c%ba%e8%a7%86%e8%a7%89-%e6%9c%ba%e5%99%a8%e5%ad%a6%e4%b9%a0%e7%94%a8%e4%be%8b/