And*_*ker 8 c++ java android opencv object-detection
我想制作一个识别螺丝的应用程序.每个螺丝尺寸和形状都有一个标准,并且有软件可以提供每个螺丝的360 3d模型(例如Autocad)
我想知道是否有任何方法可以采用现有模型(某些扩展)并Haar classifier从中创建一个.
如果不清楚,我不想拍摄每张模特的数千张照片.我想以某种方式重用现有的模型
谢谢
Haar 分类器对 2D 图像进行操作,用于训练和识别。它需要一组归一化的正 2D 图像(带螺钉)和一组归一化的负 2D 图像(不带螺钉)来训练分类器。因此,如果这是您的问题,它不能直接使用 3D 模型进行训练。当然,您可以使用 3D 模型渲染 2D 图像,但据我理解您在问题末尾的评论,这不是您想要做的。
此外,根据您的实际任务,Haar 分类器不太可能成为选择的方法。一些重要的问题是:你能分割图像中的螺丝吗?图片中可以有多个螺丝吗?这是一个分类任务还是您知道图像中存在哪种螺钉类型?您需要本地化还是只需要识别?您的螺钉的可能姿势是否受到限制(或者可以由于分段而预先标准化)?
请注意,Haar 分类器旨在“学习”具有相似姿势的类的不同实例的外观变化(例如不同人的或多或少直立的面部,即面部检测),而不是用于处理同一对象的完全不同的姿势,甚至不是2D,更不用说3D了。因此它只能适用于非常有限的场景。
更新: 一些提示可以引导您走向正确的方向:
如果您可以分割螺钉并想尝试一种简单的方法,请尝试将其视为 2D 问题(假设螺钉不直立)并根据图像矩进行归一化。
如果您可以对螺钉进行分段并希望将其视为 2D/3D 问题(投影到 2D 图像的 3D 模型),您可以查看我的(现在是旧的)关于基于外观的高效匹配与 3D 生成的视图的研究模型。
如果您无法分割螺钉并且知道图像中存在哪种类型的螺钉,则可以从工业机器视觉库中查看所谓的几何图案匹配,例如 Halcon 的基于形状的匹配。它还提供来自类似 CAD 数据的培训。
如果您无法分割螺丝并且不知道图像中存在哪种类型的螺丝,您可以训练深度卷积神经网络来执行分类任务,然后使用 3. 进行验证和定位。