forked by mapbox/robosat & Robosat.pink
RoboSat.geoc
由 mapbox/robosat 及 Robosat.pink fork 而来。
利用深度学习工具,可以很方便的使用标准 WMTS 影像对建筑物轮廓提取进行训练和预测。
Mapbox/Robosat
是非常不错的建筑物提取工具,Robosat.pink
对其做了重构和改造,使其易用性得到了提升。Robosat.geoc
在Robosat.pink
的基础上,做了自动化和工程化改造,并可以结合 rs_buildings_extraction ,使用可视化界面和接口的方式进行训练和预测,很方便的用于生产环境。
- 继承了
RoboSat.pink
的所有功能:- 提供了命令行工具,可以很方便的进行批处理
- 遵循了 WMTS 服务标准,方便遥感影像数据的准备
- 内置了最先进的计算机视觉模型,并可以自行拓展
- 支持 RGB 和多波段影像,并允许数据融合
- 提供了 Web 界面工具,可以轻松的显示、对比、选择训练结果
- 高性能
- 很轻松的能够拓展
- 等等
- 将深度学习训练标注(
label
) 数据以 PostGIS 的方式存储,对 GISer 极其友好 - 提供了 WMTS 瓦片服务代理工具,可将天地图、谷歌影像等作为影像数据源(Robosat 不支持类似
http://this_is_host?x={x}&y={y}&z={z}
形式的 URL,仅支持类似http://this_is_host/z/x/y
- 对
RoboSat.pink
做了自动化改造,无需手动逐个输入命令行,一键式训练或预测 - 简化调试方式,仅需提供待训练或预测的范围(
extent
) - 自动化训练限定为
PostgreSQL + PostGIS
数据源作为深度学习标注
- 安装
PostgreSQL + PostGIS
,创建数据库,添加PostGIS
扩展create extension postgis;
- 使用
shp2pgsql
等工具将已有的建筑物轮廓数据导入PostGIS
作为深度学习标注数据,或者使用QGIS
等工具连接PostGIS
并加载遥感影像底图进行绘制建筑物轮廓
- 对于 MacOS 或 Linux: 见docs/linux安装指南
- 对于 Windows:
- 在 Windows 安装依赖时会报
GLAL
相关错误,目前没有比较好的解决办法 - 建议使用 WSL,在 Windows 中安装 Ubuntu SubLinux
- 配合 Windows Terminal ,使用 Ubuntu 命令行工具
- 使用上述 MacOS 或 Linux 安装方式进行部署
- 在 Windows 安装依赖时会报
- 设置已有的建筑物轮廓标注数据
- 设置 PostGIS 连接:
robosat_pink/geoc/config.py
中的POSTGRESQL
- 设置已有建筑物轮廓数据表:
robosat_pink/geoc/config.py
中的BUILDING_TABLE
- 设置 PostGIS 连接:
- 后台运行 WMTS 代理工具:
python xyz_proxy.py &
- 设置训练或预测范围:
./test.py
中的extent
- 开始训练或预测:
python test.py
- 使用 VSCode:
- 使用 Remote-WSL 拓展连接 WSL 的 Ubuntu,连接该项目文件夹进行开发
- 使用 PyCharm:
- 在 PyCharm 的
Settings
中配置 Project Interpreter 的 WSL 参数。
- 在 PyCharm 的
- 构建:
python setup.py build
- 安装:
python setup.py install
- 在工程中调用:
from robosat_pink.geoc import RSPtrain
&from robosat_pink.geoc import RSPpredict
Shapely
安装:pip install shapely==1.7.0 -U
pip install shapely==1.6.4.post2 -U
- RoboSat.pink 101
- How to use plain OpenData to create a decent training OpenDataSet
- How to extend RoboSat.pink features, and use it as a Framework
rsp cover
Generate a tiles covering, in csv format: X,Y,Zrsp download
Downloads tiles from a remote server (XYZ, WMS, or TMS)rsp extract
Extracts GeoJSON features from OpenStreetMap .pbfrsp rasterize
Rasterize vector features (GeoJSON or PostGIS), to raster tilesrsp subset
Filter images in a slippy map dir using a csv tiles coverrsp tile
Tile raster coveragersp train
Trains a model on a datasetrsp export
Export a model to ONNX or Torch JITrsp predict
Predict masks, from given inputs and an already trained modelrsp compare
Compute composite images and/or metrics to compare several XYZ dirsrsp vectorize
Extract simplified GeoJSON features from segmentation masksrsp info
Print RoboSat.pink version informations
- 利用 robosat.merge 和 features 对预测结果进行规范化,参数调整包括:
- merge:
- threshold=1(融合阈值,单位:像素)
- features:
- denoise=10(除噪,对要素预处理,单位:像素)
- grow=20(填坑,作用类似除噪,单位:像素)
- simplify=0.01(新要素与原要素的简化比)
- 优化效果:
欢迎提一个 Issue