跳转到内容
GeoAI
QGIS
Guide

GeoAI是什么?QGIS用户都能看懂的实用指南

GeoAI 是运行在地理数据上的机器学习,包括卫星和航拍影像、点云以及矢量图层。模型读取像素,然后将对象、类别或变化作为数据返回,让你可以在 中编辑。它负责处理工作中缓慢的中间环节,但不会替你做决定。

我们开发这个领域中的一个 QGIS 插件,因此请记住这篇文章的作者立场。

GeoAI 不是什么

它不是一个了解你项目的聊天机器人。它不会读取客户的规格说明、属性规则,也不会理解你去年春天完成的测量工作。任何 GeoAI 都无法取代实地真值。

这个词本身也很宽泛。2005 年的随机森林分类器和去年的分割模型,都可能被称为 GeoAI。供应商使用这个词时,要问清楚他们具体指什么,因为硬件成本和失败模式完全不同。

它今天能做的五件事

从影像中提取对象。 这是目前最成熟的用途,而且明显领先于其他用途。你框选一个区域,说明想找什么,就能在项目 CRS 中得到多边形。建筑物、树冠、汽车、泳池、太阳能阵列都可以。边缘清晰时,轮廓会很干净。与灌木丛逐渐融为一体的田地边界,对模型来说和对你来说一样难。

巴黎密集城市街区在自动建筑检测前后的对比 (after)
巴黎密集城市街区在自动建筑检测前后的对比 (before)
影像检测结果
拖动比较
基于 Google Satellite 影像,对巴黎市中心进行一次自动处理。每个多边形保留独立颜色,因此相邻对象不会合并。拖动滑块查看变化。

土地覆盖分类。 每个像素都会获得一个类别:水体、建筑区、裸土、森林。当你拥有高质量的训练多边形和多光谱波段时,较老的方法在这里仍然很有优势,而且任何笔记本电脑都能运行。

识别两个日期之间的变化。 输入同一地点的两张正射影像,模型会标记发生变化的位置。对于新建筑或被清理的地块等明显变化,它的效果不错。但季节性色彩变化和不同的太阳角度会产生误报,因此要计划好逐一检查所有标记。

补全和整理数据。 修正建筑物直角、填补屋顶掩膜中的空洞、简化逐像素描绘的轮廓。这些工作不光鲜,却是最能节省时间的部分。

用自然语言提问。 直接输入 solar panels,而不是挑选模型和波段组合。它适合查找对象,但不要期待它回答属性表相关的问题。

模型从哪里来

主要有三类,它们的表现各不相同。

分割模型,例如 Segment Anything 系列,学习一个对象在哪里结束、下一个对象在哪里开始。它们使用普通照片训练,因此并不知道建筑物是什么。只要边界清晰,它们迁移到地理影像上的效果就很好。SAM 指南介绍了不同 QGIS 插件运行的版本。

图像到图像模型会生成新的像素。云层去除、季节变化和已清理场地的视图,都是通过这种方式实现的,正如 AI Edit 中所展示的那样。输出是在相同范围内生成的地理配准栅格,它本质上是一幅绘图,因此永远不应放进证据图层。

经典机器学习指的是随机森林或支持向量机逐个像素读取波段值。这类方法已经存在二十年,成本低廉。对于使用自有训练多边形的多光谱土地覆盖分类,它依然是正确选择。SCP 和 dzetsaka 可以在 QGIS 中免费完成这类工作。

实际成本是多少

硬件。 本地模型需要显卡。Segment Anything 3 完全没有 CPU 路径,这意味着所有 Mac 和使用集成显卡的设备都无法运行它。如果模型改为在服务器上运行,普通办公笔记本就够用了,这正是我们做出的取舍。

影像。 地面分辨率的影响往往比模型更大。我们的调优目标是太阳能板约 0.05 m/像素,汽车约 0.09,建筑物约 0.18。再粗糙下去,对象就会变成任何模型都无法恢复的模糊斑块。

时间。 检测需要几分钟。复核需要更长时间。任何将复核排除在估算之外的人,最后都会错过截止日期。

费用。 免费的 QGIS 选项不收费用,但需要你提供 GPU 和一个 Python 下午时间。我们的服务每月提供 200 次自动检测,不需要显卡,还支持在自己的设备上无限次点击分割。Pro 方案中,AI Edit 每月 €29,AI Segmentation 每月 €39,两者组合每月 €59,以上价格均不含增值税。

在 QGIS 中免费试用,无需银行卡

四个值得质疑的说法

一个单一的准确率数字。 准确率会随着影像和提取对象的不同而变化。任何针对所有场景只引用一个数字的人,引用的都是营销数字。

从未见过你所在区域的训练数据。 现成的建筑图层就是最明显的例子。Luanda 的同一个平方公里,在 OpenStreetMap 中没有任何数据,Microsoft 提供 3,140 个建筑轮廓,而 Google Open Buildings 提供 4,468 个。

Google Satellite 影像上的 Luanda 同一处密集街区,分为三个面板,建筑轮廓以绿色显示。OpenStreetMap 没有任何建筑轮廓,Microsoft 覆盖了大部分区域,Google Open Buildings 几乎覆盖全部区域。
Luanda 的同一个 1 km² 区域。你选择哪个数据集,决定了最后得到的是全部数据还是一无所有。

“在本地运行,你的数据永远不会离开电脑。” 如果是运行在你自己设备上的小型模型,这句话成立。所有云端模式都会把影像发送到某个地方,我们的服务也一样。诚实的做法是说清楚你使用的是哪种模式。

可以直接交付的输出。 每次运行返回的内容都会比你要求的更多:通风口、天窗、阴影、庭院棚屋。它们可能是真实对象,轮廓也可能正确,但并不是你想要的对象。要为清理工作预留时间。

我不会在哪里使用它

少于五十个要素时,手动数字化。打开捕捉功能,你会在模型下载权重之前完成,而且结果会完全符合规格说明。对于任何法律相关内容,我也会避开 GeoAI,例如地籍边界、保护区或赔偿申请。模型给你的是候选结果,而候选结果不是测量成果。我的底线是,GeoAI 应该用于第一轮处理,绝不能用于最后确认。建筑轮廓指南在同一个街区上展示了这两种路径。

十分钟内在 QGIS 中运行

打开插件管理器

Plugins -> Manage and Install Plugins。需要 QGIS 3.22 或更高版本。

安装 AI Segmentation

不需要下载其他内容,也不需要构建 Python 环境。

从面板登录

输入邮箱并点击确认即可。免费额度每月续期,无需银行卡。

在已经打开的影像上绘制区域

任何可见栅格都可以使用:GeoTIFF、无人机正射影像或 XYZ 底图。免费账户最多可绘制 15 km²。

输入对象,然后进行复核

buildingtreecar。按置信度和大小筛选,修正错误结果,然后导出 GeoPackage。

将输出结果与手动数字化的预期结果进行对比。这是唯一能得出结论的测试。

常见问题

GeoAI 和遥感是同一回事吗? 不是。遥感是测量,GeoAI 是读取这些测量结果的一种方式,此外还有指数、阈值和你自己的判断。

我需要写代码吗? 如果走经典机器学习路径,需要写一些代码。如果是在 QGIS 中进行分割,则不需要,插件已经覆盖了这部分工作。当你需要对数百个瓦片运行同一套流程时,Python 仍然更有优势。

我需要 GPU 吗? 只有在模型运行于自己的设备上时才需要。服务端工具不需要 GPU。QGIS AI 中心列出了每种选项的要求。

最后会得到什么? 你会在项目 CRS 中得到带有标签、类别、置信度分数和面积的多边形。AI Segmentation会将它们写入带样式的 GeoPackage。复核仍然由你负责。

了解 AI 能在 QGIS 中做什么,以及不能做什么