我想有可能判断一个GPS位置是在居住或无人居住区。
我已经尝试了一些反向地理编码服务在那里,但他们都被证明无用,因为他们选择最近的地址可能。 (我明白为什么会这样,它反向地理编码的目的是很有用的)
我已经注意到谷歌地图 ,当我搜索一个城市,他们的界限在红色 虚线 明确界定线选择。 我喜欢它,使用这个,或者类似的东西。
是否有任何可能的方式,谷歌地图可以提供这样一个可以解决我的问题服务,或什么的。
是否有任何其他的网络解决方案和数据库,你知道的,可以给我这个信息?
或者,也许我可以使用任何与一些参数(如限制搜索的大小)的反向地理编码解决方案,以确定该位置是否是在一个居民区?
如果你不会找到一个公共服务的话,它在深化发展的努力方面变得有趣,而且价格昂贵。
公开资料(万维网)只能从OpenStreetMap的,我认为他们有这样一个层(可以被命名为Land_use(农村等)),这一层通常用于彩色地图,看地图openstreet网页,如果你发现合适的着色,即coresponds到你的任务。 (例如,看绿色或灰色)。
存储在多边形这些数据,你将有顶部提取这些多边形(我asume他们数以百万计)。 十,你需要一个快速的搜索空间索引,就像一个区域四叉树。
然后,你做所谓的“多边形点(纬度,经度)”,并获得有关你的位置的多边形。
Probaly不是所有的多边形将适合到主存储器中,因此你必须加载并在需要时(例如,通过国家)。
这种方法的一个变体是使用像Postgres的地理空间数据库来存储多边形,并做了DB查询。
这种做法大多数工作将提取OpenStreetMap的数据库文件中的多边形。
更多acurate的是TomTom的数据,但这些可真贵。