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 -Upip 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 coverGenerate a tiles covering, in csv format: X,Y,Zrsp downloadDownloads tiles from a remote server (XYZ, WMS, or TMS)rsp extractExtracts GeoJSON features from OpenStreetMap .pbfrsp rasterizeRasterize vector features (GeoJSON or PostGIS), to raster tilesrsp subsetFilter images in a slippy map dir using a csv tiles coverrsp tileTile raster coveragersp trainTrains a model on a datasetrsp exportExport a model to ONNX or Torch JITrsp predictPredict masks, from given inputs and an already trained modelrsp compareCompute composite images and/or metrics to compare several XYZ dirsrsp vectorizeExtract simplified GeoJSON features from segmentation masksrsp infoPrint RoboSat.pink version informations
- 利用 robosat.merge 和 features 对预测结果进行规范化,参数调整包括:
- merge:
- threshold=1(融合阈值,单位:像素)
- features:
- denoise=10(除噪,对要素预处理,单位:像素)
- grow=20(填坑,作用类似除噪,单位:像素)
- simplify=0.01(新要素与原要素的简化比)
- 优化效果:
欢迎提一个 Issue

