你好2024,OpenStreetMap 20 周岁

2024-01-15 08:12

本文主要是介绍你好2024,OpenStreetMap 20 周岁,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2004年,OpenStreetMap在英国诞生。2024年,OpenStreetMap 满 20 周岁,其愿景是创建一个免费的、可编辑的世界地图。当时,地图数据的获取往往受到限制或价格昂贵1。 经过20年的发展,该数据集合成为了最为全面的街道级别开源数据。

1.下载和获取数据

作为一种带有明显的地缘因素的地理信息数据,其可以被任何人编辑,也决定了它的随意性、多源性。正因为如此,它的地理划界、地标命名取决于标记者的具体倾向,需要谨慎地甄别。地理位置的准确性,也要对照卫星图正射三级影像进行审核。下面这个网址的数据应该经过了初步的校对:

https://openmaptiles.org/languages/zh/

可以访问经过修正的OpenStreetMap数据,免费版本为2020年。通过bbike网站,也能获取最新的原PBF数据,71GB。浏览器下载速度实在是太慢了,花30大洋买XL超级会员才能下载下来。VirtualBox虚拟机镜像是导入好的数据,但请留意根据规定,在互联网上发布GIS产品需要专门许可。 但作为研究用途,从正常途径获取PBF数据并导入研究,在本机或者LAN使用是完全没有问题的。此外OSM数据正确性没有保证,需要自行衡量其精度。

20年白驹过隙,一不小心从windows XP就到了windows 11。2009年初步接触到OpenStreetMap时,依赖的是Ubuntu服务器,之后一路从Mint到ArchLinux最终维持在Manjaro,这个发行版体现了滚动更新的便利性,以及比起Archlinux更友好的操作。之前使用自己开发的查看器作为客户端访问瓦片,目前已经转到QGIS。QGIS的功能很完备,不但支持OSM这样的xyz-tiles,还支持传统的shp文件,格式非常丰富。

2. 2024-0106 benchmark

使用虚拟机镜像,或者OSM容器中的工具链条,可导入2024年1月6日的集合,导入共耗时26小时,输出如下:

$ osm2pgsql -c -s -S"/path/to/openstreetmap-carto.style" -C28000 -dgis --drop --hstore --flat-nodes "/path/to/flat_node" '/path/to/planet-latest.osm.pbf'
2024-01-07 21:56:46  osm2pgsql version 1.10.0
2024-01-07 21:56:46  Database version: 16.1
2024-01-07 21:56:46  PostGIS version: 3.4
2024-01-07 21:56:46  Storing properties to table '"public"."osm2pgsql_properties"'.
2024-01-07 21:56:46  Setting up table 'planet_osm_point'
2024-01-07 21:56:46  Setting up table 'planet_osm_line'
2024-01-07 21:56:46  Setting up table 'planet_osm_polygon'
2024-01-07 21:56:46  Setting up table 'planet_osm_roads'
2024-01-08 09:11:14  Reading input files done in 40468s (11h 14m 28s).                    
2024-01-08 09:11:14    Processed 8840282980 nodes in 4635s (1h 17m 15s) - 1907k/s
2024-01-08 09:11:14    Processed 990346448 ways in 19107s (5h 18m 27s) - 52k/s
2024-01-08 09:11:14    Processed 11691694 relations in 16726s (4h 38m 46s) - 699/s
2024-01-08 09:11:19  Dropping table 'planet_osm_nodes'
2024-01-08 09:11:19  Table 'planet_osm_nodes' dropped in 0s
2024-01-08 09:11:19  Dropping table 'planet_osm_ways'
2024-01-08 09:11:21  Table 'planet_osm_ways' dropped in 2s
2024-01-08 09:11:21  Dropping table 'planet_osm_rels'
2024-01-08 09:11:21  Table 'planet_osm_rels' dropped in 0s
2024-01-08 09:11:21  Done postprocessing on table 'planet_osm_nodes' in 0s
2024-01-08 09:11:21  Done postprocessing on table 'planet_osm_ways' in 0s
2024-01-08 09:11:21  Done postprocessing on table 'planet_osm_rels' in 0s
2024-01-08 09:11:21  Clustering table 'planet_osm_roads' by geometry...
2024-01-08 09:11:21  Clustering table 'planet_osm_polygon' by geometry...
2024-01-08 09:11:21  Clustering table 'planet_osm_point' by geometry...
2024-01-08 09:11:21  Clustering table 'planet_osm_line' by geometry...
2024-01-08 12:34:03  Creating geometry index on table 'planet_osm_point'...
2024-01-08 14:23:00  Analyzing table 'planet_osm_point'...
2024-01-08 14:24:03  All postprocessing on table 'planet_osm_point' done in 18762s (5h 12m 42s).
2024-01-08 14:44:36  Creating geometry index on table 'planet_osm_roads'...
2024-01-08 15:15:48  Analyzing table 'planet_osm_roads'...
2024-01-08 20:01:08  Creating geometry index on table 'planet_osm_line'...
2024-01-08 21:36:14  Analyzing table 'planet_osm_line'...
2024-01-08 21:37:19  All postprocessing on table 'planet_osm_line' done in 44758s (12h 25m 58s).
2024-01-08 22:59:03  Creating geometry index on table 'planet_osm_polygon'...
2024-01-09 00:45:18  Analyzing table 'planet_osm_polygon'...
2024-01-09 00:46:52  All postprocessing on table 'planet_osm_polygon' done in 56131s (15h 35m 31s).
2024-01-09 00:46:52  All postprocessing on table 'planet_osm_roads' done in 21982s (6h 6m 22s).
2024-01-09 00:46:52  Storing properties to table '"public"."osm2pgsql_properties"'.
2024-01-09 00:46:52  osm2pgsql took 96606s (26h 50m 6s) overall.

3.使用瓦片

自己搭建好瓦片服务器后,可以设置QGIS的瓦片图层到本地查看:

QGIS

4. 机器配置建议

配置项使用数据渲染Level 10 以下导入Planet数据
CPUIntel i7 6700Ki9 13900K
内存16GB64GB
硬盘容量>=1TB>=2TB
硬盘速率30MBps400MBps SSD

  1. https://baijiahao.baidu.com/s?id=1773884897519318623 ↩︎

这篇关于你好2024,OpenStreetMap 20 周岁的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/608224

相关文章

2024年流动式起重机司机证模拟考试题库及流动式起重机司机理论考试试题

题库来源:安全生产模拟考试一点通公众号小程序 2024年流动式起重机司机证模拟考试题库及流动式起重机司机理论考试试题是由安全生产模拟考试一点通提供,流动式起重机司机证模拟考试题库是根据流动式起重机司机最新版教材,流动式起重机司机大纲整理而成(含2024年流动式起重机司机证模拟考试题库及流动式起重机司机理论考试试题参考答案和部分工种参考解析),掌握本资料和学校方法,考试容易。流动式起重机司机考试技

【专题】2024飞行汽车技术全景报告合集PDF分享(附原数据表)

原文链接: https://tecdat.cn/?p=37628 6月16日,小鹏汇天旅航者X2在北京大兴国际机场临空经济区完成首飞,这也是小鹏汇天的产品在京津冀地区进行的首次飞行。小鹏汇天方面还表示,公司准备量产,并计划今年四季度开启预售小鹏汇天分体式飞行汽车,探索分体式飞行汽车城际通勤。阅读原文,获取专题报告合集全文,解锁文末271份飞行汽车相关行业研究报告。 据悉,业内人士对飞行汽车行业

高效录音转文字:2024年四大工具精选!

在快节奏的工作生活中,能够快速将录音转换成文字是一项非常实用的能力。特别是在需要记录会议纪要、讲座内容或者是采访素材的时候,一款优秀的在线录音转文字工具能派上大用场。以下推荐几个好用的录音转文字工具! 365在线转文字 直达链接:https://www.pdf365.cn/ 365在线转文字是一款提供在线录音转文字服务的工具,它以其高效、便捷的特点受到用户的青睐。用户无需下载安装任何软件,只

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

2024网安周今日开幕,亚信安全亮相30城

2024年国家网络安全宣传周今天在广州拉开帷幕。今年网安周继续以“网络安全为人民,网络安全靠人民”为主题。2024年国家网络安全宣传周涵盖了1场开幕式、1场高峰论坛、5个重要活动、15场分论坛/座谈会/闭门会、6个主题日活动和网络安全“六进”活动。亚信安全出席2024年国家网络安全宣传周开幕式和主论坛,并将通过线下宣讲、创意科普、成果展示等多种形式,让广大民众看得懂、记得住安全知识,同时还

2024/9/8 c++ smart

1.通过自己编写的class来实现unique_ptr指针的功能 #include <iostream> using namespace std; template<class T> class unique_ptr { public:         //无参构造函数         unique_ptr();         //有参构造函数         unique_ptr(

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

免费也能高质量!2024年免费录屏软件深度对比评测

我公司因为客户覆盖面广的原因经常会开远程会议,有时候说的内容比较广需要引用多份的数据,我记录起来有一定难度,所以一般都用录屏工具来记录会议内容。这次我们来一起探索有什么免费录屏工具可以提高我们的工作效率吧。 1.福晰录屏大师 链接直达:https://www.foxitsoftware.cn/REC/  录屏软件录屏功能就是本职,这款录屏工具在录屏模式上提供了多种选项,可以选择屏幕录制、窗口

【C++学习笔记 20】C++中的智能指针

智能指针的功能 在上一篇笔记提到了在栈和堆上创建变量的区别,使用new关键字创建变量时,需要搭配delete关键字销毁变量。而智能指针的作用就是调用new分配内存时,不必自己去调用delete,甚至不用调用new。 智能指针实际上就是对原始指针的包装。 unique_ptr 最简单的智能指针,是一种作用域指针,意思是当指针超出该作用域时,会自动调用delete。它名为unique的原因是这个

【JavaScript】LeetCode:16-20

文章目录 16 无重复字符的最长字串17 找到字符串中所有字母异位词18 和为K的子数组19 滑动窗口最大值20 最小覆盖字串 16 无重复字符的最长字串 滑动窗口 + 哈希表这里用哈希集合Set()实现。左指针i,右指针j,从头遍历数组,若j指针指向的元素不在set中,则加入该元素,否则更新结果res,删除集合中i指针指向的元素,进入下一轮循环。 /*** @param