0

我们得到了一个相当复杂的图像映射,如下面的链接。除了每个展位的布局、形状比较不规则外,我们还有大量的图像地图需要处理。

在此处输入图像描述

要求是该软件能够检测到哪个展位(框)被点击。一旦确定了展位,我们必须获取它的 ID 并进行一些处理。因此,我们需要一种将地图上的物理数据映射到其逻辑对应物的方法。

通常,有两种方法可以解决这个问题。

  1. 务实地确定热点在哪里——但在这种情况下,展位的布局并不一致——有些是小矩形,有些是正方形

  2. 手动计算每个展位的坐标并将其编程为一个巨大的查找。考虑到展位的数量,这非常耗时(下图并非来自项目——它只是一个演示)。估计至少有 5000 个摊位分布在不同的地图上。

除了为图像地图创建热点的两种常用方法之外,我还可以使用哪些其他方法来确定正在点击哪个展位?

使用的平台是 LimeJS,但这个问题应该足够通用......

4

1 回答 1

1

您可以使用洪水填充(每个区域的新颜色)将地图分隔成多个展位。你想先淹没一个已知的“走廊”点来消除它。0,0我想应该在大多数地图上都适用。

这将创建您需要的热点。为了应对盒子内的打印与填充混淆,您可以使用每个区域的远角创建一个矩形。当然,这假设摊位在地图上实际上是矩形的。对于 L 形展位,可能需要做一些额外的工作。

要从每个展位获取 ID,您可以将每个区域(从上方)输入 OCR,但您必须能够区分 ID 号和尺寸等。

于 2013-09-11T14:25:40.850 回答