我们获得了一个相当复杂的图像映射,就像下面链接的那样。除了布局,每个展位的形状更不规则,我们有很多图像地图要处理。
要求是软件能够检测到哪个展位(方框)被点击。一旦确定了展位,我们就必须获取其ID并进行一些处理。因此,我们需要一种方法将地图上的物理数据映射到其逻辑对应物。
通常,有两种方法可以解决问题。
务实地确定热点的位置 - 但在这种情况下,摊位布局没有一致性 - 有些是小矩形,有些是正方形
手动找出每个展位的坐标并将其编程为巨型查找。考虑到展位的数量,这是非常耗时的(下面的图片不是来自项目 - 它只是一个演示)。据估计,不同地图上至少有5000个展位。
除了为图像地图创建热点的两种常用方法外,我还可以使用哪些方法来确定点击哪个展位?
使用的平台是LimeJS,但这个问题应该足够通用......
答案 0 :(得分:1)
您可以使用填充填充将地图分隔到展位,这是每个地区的新颜色。你想首先淹没一个已知的“走廊”点以消除它。我想,0,0
应该适用于大多数地图。
这将创建您需要的热点。为了处理填充填充框内的打印件,您可以使用每个区域的远角来创建矩形。当然,这假设展位在地图上实际上是矩形的。对于L形展位,可能需要一些额外的工作。
要从每个展位获取ID,您可以将每个区域(从上面)送入OCR,但您必须能够区分ID号和尺寸等。