现代机器人视觉系统非常灵活。我们可以使用它们来检测大量不同类型、不同大小、不同形状的对象。无论是在拾取和放置应用程序中检测电路板,在机器维护应用程序中检测零件还是在码垛应用程序中检测盒子,我们都可以使用到机器视觉。机器视觉算法能够识别几乎所有在相机视图中显示为清晰图像的物体。
但是,如果我们正在使用太大、太笨拙或形状怪异而无法被机器视觉轻易察觉的对象时,机器人视觉系统是否可以检测到此类物体呢?或者是机器视觉只限于使用能轻松适应相机视图并具有规则轮廓的小物体?
在交易会和视频中看到的机器人视觉系统演示中,我们看到的演示物体几乎都只使用带有规则且轮廓清晰的小物件。据了解,选择常规小物品有两个原因:一是在工业环境中使用机器视觉的大多数情况下,此类物品非常常见。二是这些项目很好地展示了机器人视觉系统的功能。视觉系统易于检测到已定义的轮廓。常规项目可轻松识别相似的对象,并且在演示过程中可以将许多小对象放入单个摄像机框架中。
但是,一个好的机器人视觉系统应该可以处理各种各样的物体,包括那些可能被认为“笨拙”的物体。大而笨拙的物体,可能无法完全容纳在相机视图中,或者占据了太多视图。尽管我们只需要物体的一部分即可进行检测,但是如果每次在相机中出现的都是对象的不同部分实话,机器人视觉将无法识别它是同一对象。另外,物体的方向、物体的边缘看起来有所不同,或者光照变化导致材料反射,都会改变物体在相机中的外观。这些因素都会影响机器视觉应用程序的鲁棒性,包括变形、遮挡和缩放。
国外出现了一种新的的方法,对机器人编程进行一个简单的更改,使机器视觉系统即使在相机视图中仅能看到一部分物体时也能够检测到该物体,并且对物体外观的变化具有鲁棒性。该技巧涉及使用对象的2D CAD模型而不是对象本身来训练视觉算法。无需像通常的示教方法那样为物体拍照,只需将CAD文件加载到机器人的示教器中即可。在检测阶段,算法将使用此CAD模型来检测图像中对象的实例。
领取专属 10元无门槛券
私享最新 技术干货