有机形状检测和测量(PHP、JS ...或其他)

问题描述 投票:0回答:1

图片:

http://img511.imageshack.us/i/measuring1and2space.gif/

我们有一张 .gif 图片。 我们想要测量 3 个黑色岛屿 (2) 相对于白色大“海洋”(1) 的大小。 (3) 是背景 - 我们必须将其视为 (1) 的边界,但我们不想测量它。 (0) 是选择的主要区域(在本例中为 (1)),应将其用作测量的参考区域。因此,在这种情况下,(0) 在 (1) 中,因此它本身就是 100%(参考)。所以这三个岛的大小大约是 (0) 的 xx%。如果 (0) 在 (2) 中,则 (1) 是岛屿的 Xxx%。

好吧...让我们说:

  1. 用户在(1)中取(0)。让我们假设他正在使用 JS,并将红点拖放到白色区域中。红点检测其下方区域的颜色。

  2. 现在系统需要检测整个白色区域,将其设置为(0)并给它100%。系统必须区分 (2) 和 (3)。因此可以测量(2)和(1)的大小之间的关系。


我无法想象这样的算法如何在 PHP 中实现。那就太棒了,但我认为……如果可能的话……像 OpenCV 这样的东西是一个更好的解决方案。不幸的是我没有这方面的经验。我尝试用 PHP 编写一些 CV,如果有几何形状也是可行的,但这些是有机的。

你能给我一些指导吗?我不知道该去哪里。 :(

php computer-vision
1个回答
0
投票

您可以使用 http://www.php.net/manual/en/book.image.php 加载图像并获取单个像素颜色。

  • 计算所有黑色像素
  • 计算区域 3 中的所有黑色像素

现在您可以计算区域 2 和区域 1

要计算区域 3 中的所有黑色像素,只需遍历每一行即可。如果一切都是黑色的,那就数数一切。如果不是,则从左到右数所有黑色像素。

© www.soinside.com 2019 - 2024. All rights reserved.