【问题标题】:Recognizing Image Target Lines识别图像目标线
【发布时间】:2018-11-16 12:20:02
【问题描述】:

我正在尝试编写一个脚本来查看图像、查看图像上的线条并在线条周围创建边界框。这就是我要说的......

我有这张图片:

我正在尝试一种使用脚本智能地裁剪每个部分的方法。我想出的最好主意是在每个部分周围贴上彩色胶带,如下所示:

鉴于这张带有彩色胶带的图像,程序应该能够找到彩色线条并识别它们相交的位置。这是程序应该能够定位的视觉效果:(黑线是胶带所在的位置,红点是相交的位置)

这里的最终目的是让程序能够使用这些数据来

  1. 知道有多少个部分(在本例中为 9 个)
  2. 了解各个部分的位置并在每个部分周围创建一个边界框

视觉上是这样的:

OpenCV 有面部检测和特征检测,所以像这样的静态图像应该是相当可能的。实现这一目标的最佳方法是什么?

【问题讨论】:

  • 尝试使用不同的色彩空间来突出显示磁带
  • 还发现 houghlines 非常有用

标签: python image opencv crop image-recognition


【解决方案1】:

有很多方法可以做你想做的事。

一种是用sift:

https://docs.opencv.org/3.3.0/da/df5/tutorial_py_sift_intro.html

您将需要使用关键点检测,例如:

sift = cv2.SIFT()
kp = sift.detect(img,None)

您可以检查这些点是否正确: img2 = cv2.drawKeyPoints(kp)

那么你需要使用 cv2.boundingRect

box = cv2.boundingRect(kp)

如果您的标记与图像的其余部分颜色不同,您只需制作滤色器即可找到点。

【讨论】:

  • 谢谢,我试试看!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-02
  • 1970-01-01
  • 1970-01-01
  • 2010-09-13
相关资源
最近更新 更多