OpenCv形状检测

OpenCv Shape Dectection

本文关键字:检测 OpenCv      更新时间:2023-10-16

我正在使用Opencv来检测将被固定在传动带上的材料的形状和尺寸(如不同尺寸的圆盘、垫圈、螺母和螺栓)。区分它们的最佳功能是什么。我计划使用cvFindContours(查找形状)和cvArcLength&cvContourArea获取他们的区域。

有更好的方法吗?

这是一种简单的形状匹配方法:

  1. 转换为灰度
  2. 平滑图像
  3. 应用一些形态学运算(如有必要)
  4. 边缘检测
  5. 查找轮廓(与您提到的相同)。轮廓函数具有层次性。因此,分割所需的(在大多数情况下是外部的)轮廓应该很容易。圆盘和垫圈可以通过轮廓层次中的孔来区分
  6. 使用ApprovPolyDP使您的轮廓成为大致规则的形状。您可以根据轮廓中的顶点数来区分形状
  7. 如果ApprovPolyDP不够,请使用矩来区分形状

它适用于大多数情况。始终提供样本图像以帮助我们评估问题的复杂性:D。

检查opencv中的haar级联对象检测技术这里有一些链接。。。。

http://coding-robin.de/2013/07/22/train-your-own-opencv-haar-classifier.html

http://www.technolabsz.com/2011/08/how-to-do-opencv-haar-training.html

为了与哈尔级联工作,你需要哈尔工具包进行培训。。

http://kineme.net/files/haar.zip