【问题标题】:Detecting Elliptical patterns in image [closed]检测图像中的椭圆图案
【发布时间】:2015-04-27 15:36:55
【问题描述】:

在这张图片中有一些线条和这些线条上的一些椭圆(圆形)图案。

我想在 C# 中使用 Emgu.CVOpenCV 函数检测这些椭圆模式。任何人都可以帮我从哪里开始,我应该首先做什么来检测这些椭圆图案?

【问题讨论】:

  • 如果没有“椭圆”(我认为它们不是椭圆)图案基本上只有黑色背景和垂直线,这对吗?也许最好检测黑色背景和垂直线并检查其余部分的“椭圆度”
  • 你能告诉我任何计算这些椭圆图案的算法吗?如上图所示,它们大约有 18 个环
  • 使用 HoughLines 算法检测线条并对图像进行阈值处理。然后从阈值图像中的每个轮廓中,从检测到的线条中计算超出某个阈值距离限制的部分。
  • 你能告诉我那是什么材料,那些“气泡”是从哪里来的吗?
  • @Micka 由于某些原因,我无法告诉你这张图片属于哪里。我真的很抱歉。我希望你能理解。我需要检测这些模式。我可以使用模式识别或机器学习来检测这些模式吗?

标签: c# opencv image-processing emgucv feature-detection


【解决方案1】:

一个非常简单的方法,仍然可以找到大部分气泡:

  1. 图像阈值
  2. 在阈值图像中查找轮廓
  3. 过滤掉所有太小的轮廓并绘制所有其他填充的轮廓
  4. 侵蚀该遮罩,直到垂直线消失
  5. 如果需要原始大小,请计算新的斑点/轮廓数并扩大

步骤如下所示:

  1. 阈值 (50)

  1. 轮廓(全部)

  1. 轮廓(过滤蒙版)

  1. 腐蚀面具

  1. 扩张蒙版和覆盖

如您所见,它非常简单,可以找到大部分气泡。如果不知道要多久腐蚀一次,可以先用 HoughLines 检测垂直线。

【讨论】:

  • 您似乎很喜欢图像处理 - 您能否帮助我们打开这个专门的小组:area51.stackexchange.com/proposals/66531/computer-vision/72084 只需对不到 10 票赞成的问题进行投票。谢谢。
  • @Micka 感谢您的帮助。我可以使用机器学习或模式识别的概念来检测这些模式吗?
猜你喜欢
  • 2018-12-18
  • 2015-05-22
  • 1970-01-01
  • 2011-06-14
  • 1970-01-01
  • 1970-01-01
  • 2012-06-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多