首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >OpenCV:如何在图像上检测菱形?

OpenCV:如何在图像上检测菱形?
EN

Stack Overflow用户
提问于 2016-08-01 19:26:32
回答 1查看 1K关注 0票数 1

我有一些具有透视变换的平面图像。

我需要检测每个白色菱形或菱形本身的中心。

以下是一些例子:

由于我取消了这个问题可以通过简单的模板匹配,如果我们纠正图像,但我需要它自动完成。

OpenCV中是否有适合此任务的函数?还有其他想法吗?

EN

回答 1

Stack Overflow用户

发布于 2016-08-01 21:38:49

这里有两个快速测试,我刚刚做了没有纠正透视问题。

数学形态学

  1. 提取红色通道
  2. 大白帽是为了探测所有明亮的区域,但没有大的亮反身。
  3. 白色小礼帽,以便只探测菱形之间的细线。
  4. 结果2减去3,菱形之间的线变薄,甚至消失。
  5. 打开以清理最终结果。

这里有两个结果:Image1Image2。主要问题是菱形不具有相同的大小(不同的放大倍数和角度),这可能与数学形态学有问题。

下面是,另一种使用Hough变换的解决方案

  1. 首先从前面算法中的步骤3的结果图像开始。
  2. 你用霍夫变换。

以下是结果:Hough1Hough2。然后你必须在接触菱形的线条之间进行过滤,但是你可以使用我的第一个算法。即使第一种算法没有检测到所有菱形,大多数菱形也会被检测到,而且它也足以检测到接触菱形的直线。然后,线交叉口将是您正在寻找的质心。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38706642

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档