【问题标题】:How to find a fix number of (almost) fixed proportion rectangles with opencv?如何用opencv找到固定数量的(几乎)固定比例的矩形?
【发布时间】:2011-07-26 12:29:23
【问题描述】:

我正在编写一个简单的飞行跟踪软件,我希望得到 opencv 专家的一些意见。

我的图像看起来很像:

我曾经使用 kmeans 和 PIL/numpy 进行跟踪,但我重写了所有内容以在 opencv 中使用 blob 检测。跟踪工作正常,但我也想自动化 ROI 的划分。 我需要做的是找到图片中出现的 32 个凹槽中的每一个,苍蝇居住的地方。请参阅图像上的黑色矩形作为我的意思的示例。

我认为cornerHarris 可能是我需要的,但我如何只指定凹槽而不是图像中的每个矩形?所有这些凹槽的比例大约为 10:1。

谢谢!

【问题讨论】:

  • 你的相机和飞行器是静止的吗?如果是这样,那么手动查找矩形可能是一个不错的选择。一个人只需要几分钟就可以画出矩形,如果一切都是静止的,那么你就不需要再画了。
  • @AndyL,是的,一旦实验开始,它就非常静止,但它可能会因实验而略有不同。过去它完全按照您的建议工作,但现在我将所有内容都移至 opencv,我正试图从中获得最大收益。

标签: python opencv


【解决方案1】:

我认为 cvCornerHarris 甚至无法满足您的需求。

一个更好的开始是尝试在以下位置提供的演示:OpenCV-2.3.0/samples/cpp/squares.cpp。此技术使用Canny()dilate()findCountour()

开箱即用,此演示输出:

我相信只要稍微调整一下,你就可以开始你的派对了。

【讨论】:

  • 我知道它不是 python,但我相信你可以将 OpenCV 的 C++ 代码移植到它的 python 等价物。
  • 谢谢!我找到了phyton端口here。有点错误(阈值栏实际上不起作用)但I fixed it 和我得到的输出与您显示的完全相同。按大小和比例过滤掉矩形我没有得到误报,但有很多误报:我可以正确标记不超​​过 6 个左右。
  • 或者只考虑概率霍夫线变换中的水平线?只是说。
  • 如果您知道小树林的数量和它们的纵横比,您可以简单地识别包含小树林的较大窗口的角,然后使用向量代数计算出小树林的坐标构成凹槽的矩形。这使您的问题变得更加容易,因为您只使用图像处理来找到一个矩形,并且您正在从中推断其他矩形的位置。
  • 在这种情况下,仍然可以使用此代码。只需寻找图像中第二大的矩形。那将是您正在使用的白色设备(?)的角落。
猜你喜欢
  • 2013-03-03
  • 1970-01-01
  • 2021-01-06
  • 2019-04-06
  • 1970-01-01
  • 2021-06-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多