Skip to content

Latest commit

 

History

History
82 lines (53 loc) · 4.88 KB

README_CN.md

File metadata and controls

82 lines (53 loc) · 4.88 KB

buildseg:用于建筑提取的QGIS插件

English | 简体中文

Python 3.8 QGIS 3.16.11 license release

buildseg是一个基于ONNX的用于建筑提取的QGIS插件(使用PaddlePaddle训练并转为ONNX),使用PaddleSeg提供的语义分割能力,可以对大片区域进行分块提取并拼接。当前新增了自动下载栅格影像并进行建筑提取,用户需要在Mapbox进行注册并记录Token。

show

*说明:栅格根据矢量范围从Mapbox下载,且使用的模型为SegFormer_B2。

动向

  • xx 04 2022 [v0.3] : 1. 添加基于Mapbpx的在线地图分割; 2. 国际化支持。
  • 08 02 2022 [v0.2] : 1. 使用ONNX代替PaddlePaddle; 2. 在Windows / Linux / Mac OS上进行了测试。
  • 23 12 2021 [v0.1] : 1. 添加基于PaddlePaddle的语义分割功能; 2. 添加结果转为矢量数据; 3. 添加矢量简化。

如何使用

  1. 下载并安装QGIS,然后克隆这个项目:

    git clone git@github.com:deepbands/buildseg.git
    
  2. 安装依赖:

    • 进入项目文件夹并且使用OSGeo4W shell(使用管理员打开)安装依赖库:

      cd buildseg
      pip install -r requirements.txt
    • 或者直接使用管理员权限打开OSGeo4W shell并且输入:

      pip install opencv-python onnx onnxruntime --user
  3. 复制buildseg文件夹到QGIS配置文件夹并在QGIS的插件管理中选择此插件(如果未显示,请重新启动QGIS)。

    • 你可以通过QGIS界面中左上方的菜单知道你的配置文件夹路径 [设置] > [用户配置] > [打开当前配置文件夹]
    • 进入 python\plugins 然后粘贴buildseg文件夹。
    • 完整的路径应该如下:C:\Users\$USER\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\buildseg
  4. 打开QGIS,导入栅格图像并且选择ONNX文件(*.onnx)然后点击ok

模型和参数

  • mIoU从PaddlePaddle模型测出,其他的参数由ONNX模型获得。
  • 训练 / 评估 (5k)数据:AI Studio
  • 运行耗时的测试环境:[Win10] / [i7-10750H] / [RTX 2060] ,测试数据:百度云盘 | 谷歌云盘
模型 骨干网络 分辨率 平均交并比 参数(MB) 运行耗时(s) 静态权重
OCRNet HRNet_W18 512x512 89.38% 46.49 39.090 百度云盘 | 谷歌云盘
SegFormer_B2 - 512x512 89.47% 104.56 59.498 百度云盘 | 谷歌云盘
BiSeNet_V2 - 512x512 84.61% 8.94 7.004 百度云盘 | 谷歌云盘

*说明 :所有百度网盘的提取码均为band.

如何训练

这项工作正在进行中,目前相关的文档如下:

待办事项

  • 不使用plugin builder来构建一个更简单的插件。