# OSM 台灣圖資歷史回顧
Littlebtc (Hsiao-Ting Yu)
---
## I am...
* Web Developer (currently at GeoThings Inc.)
* Map Lover
* OpenStreetMap Mapper in Taiwan
---
## 關於這個題目
* OpenStreetMap 台灣的地圖繪製已有相當進展
* 如何回顧過去的圖磚並視覺化地圖的變動
* 重新檢視過去變了什麼,哪邊可以作得更好
---
## 使用的技術手段 (I)
* 曾經考慮過使用[OSM History Renderer](https://wiki.openstreetmap.org/wiki/OSM_History_Renderer),但因為已不維護而作罷
* 決定下載全歷史檔案,切成每年一份,分別導入資料庫,更簡單直覺
* 再透過圖磚以及[OSM Node Density](https://github.com/tyrasd/osm-node-density) 工具繪製
---
## 使用的技術手段 (II)
* 下載 [Geofabrik 提供的 Full History Extract](https://download.geofabrik.de/),格式為 `.osh.pbf`
* 請注意 History Extract 需要符合 GDPR 的相關要求
* 其包含所有歷史變更,透過 [Osmium](https://osmcode.org/osmium-tool/) 轉為 `.osm.pbf`
```
$ osmium time-filter taiwan-internal.osh.pbf 2019-01-01T00:00:00Z \
-o 2019.osm.pbf
```
---
## 使用的技術手段 (III)
* 以每年 1 月 1 日 UTC 0:00 (台灣去年 12 月 31 日 16:00)為時間點進行拆分
* 從 2010 到 2019 年,建立 10 個 PostgreSQL 資料庫
* 再使用 `osm2pgsql` 將 `.osm.pbf` 匯入資料庫
---
## 使用的技術手段 (IV)
* 以 `opensteetmap-carto` 配合 `Nik4` 進行繪製
```
time nik4.py -b 121.1993 24.9386 121.3289 25.0265 -z 14 \
~/git/openstreetmap-carto/2019.xml taoyuan-2019.png
```
* 使用修改過的 `osm-node-density` 顯示密度
---
## Results
From 2010 to 2019.
* [Node Density](https://imgur.com/a/l1ssEeq)
* [Taiwan map](https://imgur.com/a/GkGr0Xp)
* [六都與楊梅的地圖](https://imgur.com/a/5NicuaB)
---
## Discussions
* 2013 到 2014 年間的大幅成長
* 早期存在缺乏衛星圖資的繪製盲區 (如楊梅)
* 彰化雲林目前仍然算是弱點區域
---
# Thanks!
{"metaMigratedAt":"2023-06-14T23:28:04.892Z","metaMigratedFrom":"Content","title":"OSM 台灣圖資歷史回顧","breaks":true,"contributors":"[{\"id\":\"a77facbc-ea12-4c89-87f4-05be653d945a\",\"add\":1689,\"del\":239}]"}