跳转到内容
AI Segmentation
QGIS
教程

QGIS 遥感影像分割插件 AI Segmentation 完整指南

发布于 更新于

同一区域,只改一个词:
住宅区航空影像前后对比:原始影像,以及将每栋提取出的建筑物分别填充为不同颜色的同一视图 (after)
住宅区航空影像前后对比:原始影像,以及将每栋提取出的建筑物分别填充为不同颜色的同一视图 (before)
之前之后
拖动比较
住宅区内的 155 栋建筑,边界规整,每个对象使用一种颜色。
观看视频教程

AI Segmentation 将您在 QGIS 中已打开的影像直接转为干净的矢量图层。画一个区域,输入目标对象,所有匹配结果都会以可编辑、可导出的多边形返回。它在我们的服务器上运行,因此不需要显卡,也无需安装任何笨重的东西。它由我们开发,所以本指南介绍的是我们自己的工具。

它有两种使用方式。

Automatic

Every object in a zone, at once

What it does
Draw a zone, name an object, get every instance.
Where it runs
In the cloud. Nothing heavy on your machine.
What it costs
Counts the ground it covers, shown before you start.
Use it for
Hundreds or thousands of objects over an area.

Semi-Auto

One object per click

What it does
Click an object. The AI outlines it, you save it.
Where it runs
On your computer after a one-click setup, or on ours. You pick.
What it costs
Free on your computer with no counter, and it works offline.
Use it for
Ten exact objects, or a boundary you control.

本指南会先在 QGIS 中完整演示自动模式,然后进入审查流程,在不为第二次运行付费的情况下调整图层。

安装并登录

在 QGIS 中打开插件 > 管理并安装插件...(Plugins > Manage and Install Plugins),搜索 AI Segmentation 并安装。面板会在右侧打开。

从面板登录即可开始使用。两种模式都可以免费开始:自动模式每月提供免费的地面面积额度,半自动模式在您自己的电脑上运行,完全不计数。

顶部的开关用于选择模式,下方选择栅格图层。

自动模式:第一次运行

目标是在一次运行中提取住宅街区中的所有建筑物轮廓。下面从空白面板开始,一直到地图上出现检测结果,完整走一遍流程。

0:00 / 0:00
一次运行的完整过程:选择影像,绘制区域,输入对象名称,开始检测。

这段视频背后的五个步骤如下。

选择影像并开始

选择栅格图层,然后点击开始自动 AI Segmentation。运行期间图层会被锁定,因此流程进行到一半时,底图不会在您手下发生变化。

绘制区域

在区域周围点击,并在第一个点处闭合线环。形状可以随意绘制:免费账户每月覆盖 1.5 km² 地面面积,Pro 覆盖 200 km²,而且您绘制的区域没有大小限制。按 Backspace 可以撤销一个点。

描述要查找的对象

输入一到两个词:building、tree、car。第一次运行最容易在这一步出错,因此输入框旁边的对象库可以让您从真实的前后对比预览中选择,而不是凭猜测输入。

展示对象的外观

一个词并不总是足够。在地图上绘制可以从您自己的影像中勾勒出一个对象,AI 会寻找外观相似的对象。最多可以提供三个示例,通常两个比一个效果更好。

设置精度

您的区域会被切分为多个分块,每个分块都会以完整分辨率进行检测,然后无缝拼接回来,因此跨越接缝的对象也会完整保留。精度越高,能找到的对象越小,计入的地面面积也越大。开始运行前,面板会显示这次运行覆盖的范围。

在消耗任何额度之前,全部设置都能在一个屏幕中完成。对象库模板上方是您自己的运行记录:最近显示对象数和分块数,收藏显示您标记过的运行。重新打开某次运行时,之前的文字设置也会恢复。

然后点击检测对象。分块会被发送出去,多边形返回后会逐个绘制到地图上。这次运行返回了 646 个候选项。

审查:三个步骤,顺序任意

检测完成后打开的是审查,而不是最终图层。大部分工作都发生在这里。绿色按钮会提示下一步,但整个流程不要求您按那个顺序操作。

1Keep

Which objects survive

  • Confidence
  • Min / max size

2Correct

Fix one polygon at a time

  • Edit by AI or by hand
  • Add, merge, delete

3Shapes

How every outline looks

  • Right angles, fill holes
  • Points, trim, grow

Go back to any step, in any order. Instant, and free.

1 保留:决定保留哪些对象

每个检测结果都有一个置信度得分。置信度设置最低分数,大小隐藏超出地面面积范围的对象,标题下方的文字会统计最终保留下来的结果:已显示 51/646 个 · 595 个已被筛选条件隐藏。您手动修正或绘制的内容会保留,不受这两个滑块影响。

0:00 / 0:00
置信度和大小的实时效果:地图和计数器随滑块同步变化。

两个滑块筛掉的大多数结果都很小、得分较低,而且并不是您要找的对象。

2 修正:一次修正一个多边形

点击一个多边形,它会单独打开。操作过程中,屏幕上的其他内容不会移动。

顶部的开关用于选择修正方式。它显示为 AI | 手动,这里的“手动”仅表示“手动修正这个多边形”。

AI 方式使用您电脑上的模型。点击 AI 漏掉的部分,轮廓就会扩展;右键点击 AI 错误抓取的部分,轮廓就会收缩。

0:00 / 0:00
AI 方式:点击它漏掉的部分,右键点击它多抓的部分,然后保存。

手动方式会在这个多边形上调用 QGIS 自带的数字化工具,包括移动顶点、重新绘制边线和拆分。

0:00 / 0:00
手动方式:顶点变成可拖动的控制点,由 QGIS 自带的工具接手。

同一个步骤还可以处理缺失的对象,以及不该存在的对象。

  • **添加遗漏的多边形。**指向运行中完全没有捕捉到的对象,局部模型会免费勾勒出它。您也可以自己绘制其顶点。
  • 与相邻对象合并会将模型错误拆成两个的建筑合并起来。
  • 删除此多边形会删除您不需要的多边形。
  • 清理此轮廓会单独打开该对象的形状控制。手动方式下,它显示为先简化此轮廓,并在顶点数上打开,因为要让一个包含 96 个顶点的轮廓变得可以拖动顶点,首先需要减少顶点数。
  • 撤销上一步和全部清除可以逐步撤回修正。

3 形状:一次清理所有轮廓

最后一步会实时重塑整个图层,只处理轮廓。形状决定轮廓的样式,轮廓用于微调边缘。

0:00 / 0:00
每个控制项都会同时重塑整个图层,拖动时即可看到效果。

共有七个控制项,但一次运行中很少需要调整超过两个。

控制项作用适用情形
直角化将墙体吸附到 90 度和 45 度建筑物、游泳池、光伏板
圆角柔化轮廓树木、灌木以及任何自然生长的对象
填充孔洞闭合内部空洞,最大尺寸由您设置屋顶检测结果出现斑点状空洞
顶点数设置每个轮廓保留的顶点数轮廓看起来像像素阶梯
简化删除靠近直边的点您想使用旧版的基于距离的简化器
修剪尖刺削去边缘上细长的毛刺对象带有毛发状或触须状突起
扩展 / 收缩将所有边界向外或向内推移图层的边界整体偏短或偏长

直角化和圆角是互斥选项,因此勾选其中一个后,另一个会变灰。在建筑物场景中,直角化的影响最大,接下来通常是顶点数:逐像素描出的掩膜每隔几厘米就会产生一个顶点,降低顶点数会先删除最细小的细节,同时保留角点。

只有当运行结果看起来像土地覆盖时,才会出现最后一个控制项。共享边界会让相邻形状共享一条完全一致的边界,而不是留下发丝般的缝隙。两个建筑之间的间隙是真实数据,因此在这种情况下不会提供该选项。

导出,然后再来一轮

以四种方式查看同一个图层。 检测结果显示方式在每个步骤中都会显示在面板底部。它只改变显示效果,不会改变几何形状。

0:00 / 0:00
同一个图层的四种查看方式,审查的任何一步都可以切换。
  • 分色:每个对象使用一种颜色,用于检查相邻对象是否保持分离,而不是融合在一起。
  • 轮廓:只显示边界,用于与下方的影像进行核对。
  • 置信度:按照得分着色,这样“保留”步骤的滑块会显示您即将丢弃的内容。
  • 普通:使用一种整洁的颜色显示最终图层。
同一批检测结果的四种显示方式:分色、轮廓、置信度和普通
并排对比:分色、轮廓、置信度和普通。

反复来回调整正是这个流程的意义。您修正过的多边形会成为该多边形的新基础,形状控制项也会像处理其他对象一样重新应用到它上面。您可以随意重复调整:它即时生效,也不会产生费用。唯一会消耗额度的控制项是再次运行整个区域,它适用于输入文字本身有误的情况。

然后导出。 导出多边形会写出一个带样式的 GeoPackage,文件名根据对象和日期生成,并包含 Label、Class、Confidence、Area (m²) 和 Perimeter (m)。面积和长度都使用地面米,因此从文件中读取的数值会与 QGIS 计算的结果一致。

导出的检测图层在 QGIS 属性表中的样子:先是每个多边形一行,再是单个多边形的表单视图
导出的图层在 QGIS 属性表中的显示:每个多边形一行,以及单个多边形。

半自动模式:一次处理一个对象

另一种模式每次点击只分割一个对象。点击对象后,它会一次性完成轮廓绘制。左键点击可以添加漏掉的部分,右键点击可以删除错误抓取的部分,然后保存轮廓。

当您需要十个精确对象,而不是一千个大致结果,或者需要完全控制边界时,可以使用这种模式。

“开始”按钮旁边的两张卡片用于选择响应点击的 AI:

  • **我的电脑。**模型在您自己的电脑上运行,因此不会向任何地方发送数据,也没有计数。模型只需下载一次,大小为几百 MB,之后可以离线工作。
  • **云端 AI。**由更大的模型来响应。无需安装任何内容,因此第一次点击就能开始,而且精度更高。点击本身免费。保存对象时会消耗每月额度中的一个对象,但再次保存同一个对象不会重复计数。

您可以在开始时选择模式,下一次会话可以选择另一种。

0:00 / 0:00
一次点击,一个对象。在您自己的电脑上运行,不花一分钱。

检测原理

两种模式都接受文本提示词,一次运行返回所有匹配结果。正是因为这两点,本指南才这样写。

**它接受一个词。**基于点击的工具一次接受一次点击或一个框,一次处理一个对象。而它接受文本,因此在绘制的区域上输入 building 就是一个有效的提示词。

**它找到每个实例。**基于点击的工具只返回光标下的那一个目标。而它一次返回全部,这就是把一下午的点击变成单次运行的原因。

代价是硬件。为此类任务构建的模型没有实用的 CPU 路径,因此自己运行需要带 CUDA 的 NVIDIA 显卡,这就排除了所有 Mac、所有 AMD 显卡以及所有使用核显的笔记本。下一节会讲我们对此的解决方案。

没有 GPU,也无需安装大型组件

自动模式会在我们的服务器上运行模型。插件在您的电脑上安装的只是面板和网络请求,因此安装过程就是普通的 QGIS 插件安装,不需要其他内容:没有 CUDA,没有 PyTorch,也不需要在磁盘上保存模型权重。

2019 年的 MacBook 和配备 RTX 4090 的工作站会以相同速度得到相同结果,因为它们都没有实际执行模型计算。代价是自动模式需要网络连接,并且运行面积会计入您的月度额度。

有一种方式会完全在您的电脑上运行。在半自动模式中,我的电脑卡片会下载一个较小的模型,大小为几百 MB,之后离线响应每次点击。没有任何数据离开电脑,也不会计入额度。它的精度低于云端模型,而且在速度较慢的笔记本上,加载后第一次点击需要几秒钟。

自动模式半自动模式,云端 AI半自动模式,我的电脑
显卡不需要不需要不需要
可离线使用否否是
影像是否离开您的电脑是是否
每次操作的对象数区域内的所有匹配对象每次点击一个每次点击一个

免费层级每月包含 1.5 km² 的自动模式使用额度。使用自己电脑运行半自动模式则完全没有限制。

常见问题

在 QGIS 中做 AI 影像分割需要 GPU 吗?

用这款插件不需要。自动模式和半自动模式中的云端 AI 选项都在我们的服务器上运行模型,因此任何笔记本电脑都可以用。只有半自动模式中的我的电脑选项使用您自己的硬件,且它运行在普通 CPU 上。在本地运行这类模型的插件才需要带 CUDA 的 NVIDIA 显卡,因为这类模型没有实用的 CPU 路径。

AI Segmentation 使用什么模型?

一个为此构建的检测模型:它接受文本提示词,一次运行返回所有匹配对象,自动模式正是基于此构建的。

可以离线运行吗?

可以使用半自动模式的我的电脑选项。模型只需下载一次,之后每次点击都会在本地处理。自动模式不支持离线运行,因为它调用的模型太大,无法部署到桌面电脑上。

它在我的影像上有多准确?

边缘清晰时可以得到整洁的多边形,例如屋顶、树冠、汽车、水面和光伏板阵列。逐渐融入灌木的田地边缘属于判断问题,而模型会恰好在您也会犹豫的地方迟疑。分辨率比传感器更重要,最可靠的测试方法是选择一个您已经熟悉、可以手动判断的区域。

我运行的影像会保持私密吗?

在半自动模式的我的电脑模式下,不会向任何地方发送数据。自动模式和云端 AI 会将您绘制区域中的影像分块发送到我们的服务器进行分割。这些数据不会用于训练任何东西。

有免费版本吗?

有,而且不会过期。免费层级每月包含 1.5 km² 的自动模式使用额度,以及云端半自动模式中保存对象的月度额度。使用自己的电脑运行半自动模式则不受限制。Pro 会提高这两个额度。

需要记住的内容

检测完成后打开的是审查流程,而不是最终图层,“保留”“修正”和“形状”三个步骤可以按任意顺序操作。

审查流程中的所有调整都会即时生效且免费,因为唯一会再次消耗额度的控制项是再次运行整个区域。

在自己的机器上运行这类模型需要带 CUDA 的 NVIDIA 显卡。而自动模式在我们的服务器上运行,因此 2019 年款 MacBook 和 RTX 4090 工作站能以同样的速度得到同样的结果。

半自动模式的“我的电脑”选项可以离线响应每次点击,不会向任何地方发送数据,也不会消耗额度。

导出的 GeoPackage 包含 Label、Class、Confidence、Area (m²) 和 Perimeter (m),单位为地面米,因此文件中的数值与 QGIS 的计算结果一致。

在自己的地图上试用

真正有参考价值的测试,是选择一个您实际工作的区域。安装 AI Segmentation,在该区域运行,然后将结果与手动数字化的结果进行比较。如果出现任何异常,点击 ? 按钮即可找到联系我们和报告问题。