基于QGIS生产建筑物高度与遥感影像数据集

基于,qgis,生产,建筑物,高度,遥感,影像,数据 · 浏览次数 : 19

小编点评

**遥感影像推知建筑物高度** **步骤一:获取高度数据** * 打开QGIS软件,选择“获取数据”>“Google Earth”选项卡。 * 在“获取数据”窗口中,输入“汉习楼船:建筑栅格数据共享第19期【2019-027】”(qq.com)”。 * 点击“获取”。 **步骤二:获取遥感影像** * 选择“影像”>“获取数据”>“Google Earth”选项卡。 * 在“获取数据”窗口中,输入“Google Earth”和“汉习楼船”。 * 点击“获取”。 **步骤三:数据准备** * 将高度数据和遥感影像合并到一起。 * 使用QGIS将遥感影像裁剪为与高度数据相同的范围。 **步骤四:建筑物数据提取** * 在遥感影像中,使用QGIS提取建筑物区域的像素值。 * 将建筑物区域的像素值与高度数据相比较,将高度值作为建筑物高度的估计值。 **步骤五:数据清理和整理** * 筛选出高度值大于建筑高度阈值的像素。 * 将这些像素设置为“建筑物”。 * 删除高度值小于建筑高度阈值的像素。 * 合并所有建筑物数据,得到最终的建筑物高度数据集。 **步骤六:数据保存** * 将最终的建筑物高度数据集保存为“.shp”格式。

正文

1. 概述

利用遥感影像推知建筑物高度是一经典研究,现有很多学者利用机器学习的方式,利用现有数据进行训练从而构建模型

本文旨在记述使用QGIS进行建筑物高度与遥感影像数据集的获取与制作

如果不想自己动手,公开的可以选择以下数据集:

显然,满足具有高度又是国内数据的寥寥无几,最后,推荐下面这个数据集:

2. 高度数据

获取地址:汉习楼船:建筑栅格数据共享第19期【2019-027】 (qq.com)

数据切片,尺寸512*512像素(或者自定义)

使用QGIS以及GDAL的重新分割瓦片

image-20230804152923631

后处理:

使用GDAL,删除没有值的瓦片,删除尺寸不是512*512的瓦片(原始图像的边缘部分)

3. 遥感数据

使用QGIS下载Google的瓦片底图,下载范围为高度图的范围(直接右键->另存为,即可下载)

image-20230804153635144

使用QGIS及GDAL的重新分割瓦片

后处理:

根据高度图被删除的瓦片,删除影像图对应的瓦片

4. 建筑数据

高度数据并不完整,可能有的区域是有建筑的,但是高度图中没有,所以需要把这种影像中有建筑然而高度图中没有的瓦片去除

思路是利用提取的建筑数据,与高度图对比,将有建筑却没有高度的瓦片去除

建筑数据来源:国家青藏高原科学数据中心 (tpdc.ac.cn)

先使用QGIS进行裁剪,裁剪范围为高度图范围

再使用QGIS及GDAL的重新分割瓦片

根据高度图删除的瓦片,删除建筑物图对应的瓦片

依次识别高度图与建筑物瓦片,去除建筑物瓦片中有值而高度图中无值或者差异很大的瓦片(可用OpenCV等传统图像处理库)

最后剩下的影像图和高度图,为最终处理结果

5. 总结

总结来说,流程如下

graph TB 高度数据 --> 遥感影像 --> 切割为瓦片 --> 利用现有建筑数据过滤 --> 最终数据集

值得一提的是,处理过程中的产生数据量是较大的,通常是几十个G以上,处理时需要保证硬盘存储充足

与基于QGIS生产建筑物高度与遥感影像数据集相似的内容:

基于QGIS生产建筑物高度与遥感影像数据集

本文记述使用QGIS进行建筑物高度与遥感影像数据集的获取与制作

QGIS开发笔记(二):Windows安装版二次开发环境搭建(上):安装OSGeo4W运行依赖其Qt的基础环境Demo

前言 使用QGis的目的是进行二次开发,或者说是融入我们的应用(无人车、无人船、无人机),本片描述搭建QGis二次基础开发环境,由于实在是太长了,进行了分篇: 上半部分:主要是安装好后,使用QtCreator可以使用QGIs的apps下的Qt使用对应的编译器编译不带qgis的空工程。 下半部分:在上

QGIS开发笔记(三):Windows安装版二次开发环境搭建(下):将QGis融入QtDemo,添加QGis并加载tif遥感图的Demo

前言 使用QGis的目的是进行二次开发,或者说是融入我们的应用(无人车、无人船、无人机),本片描述搭建QGis二次基础开发环境,由于实在是太长了,进行了分篇: 上半部分:主要是安装好后,使用QtCreator可以使用QGIs的apps下的Qt使用对应的编译器编译不带qgis的空工程。 下半部分:在上

基于 Three.js 的 3D 模型加载优化

作为一个3D的项目,从用户打开页面到最终模型的渲染加载的时间也会比普通的H5项目要更长一些,从而造成大量的用户流失。为了提升首屏加载的转化率,需要尽可能的降低loading的时间。这里就分享一些我们在模型加载优化方面的心得。

基于MindSpore实现BERT对话情绪识别

本文分享自华为云社区《【昇思25天学习打卡营打卡指南-第二十四天】基于 MindSpore 实现 BERT 对话情绪识别》,作者:JeffDing。 模型简介 BERT全称是来自变换器的双向编码器表征量(Bidirectional Encoder Representations from Trans

基于 Vagrant 手动部署多个 Redis Server

环境准备 宿主机环境:Windows 10 虚拟机环境:Vagrant + VirtualBox Vagrantfile 配置 首先,我们需要编写一个 Vagrantfile 来定义我们的虚拟机配置。假设已经在 D:\Vagrant\redis 目录下创建了一个 Vagrantfile,其内容如下:

基于EF Core存储的Serilog持久化服务

前言 Serilog是 .NET 上的一个原生结构化高性能日志库,这个库能实现一些比内置库更高度的定制。日志持久化是其中一个非常重要的功能,生产环境通常很难挂接调试器或者某些bug的触发条件很奇怪。为了在脱离调试环境的情况下尽可能保留更多线索来辅助解决生产问题,持久化的日志就显得很重要了。目前Ser

基于EF Core存储的国际化服务

前言 .NET 官方有一个用来管理国际化资源的扩展包Microsoft.Extensions.Localization,ASP.NET Core也用这个来实现国际化功能。但是这个包的翻译数据是使用resx资源文件来管理的,这就意味着无法动态管理。虽然官方有在文档中提供了一些第三方管理方案,但是都不太

基于FileZilla上传、下载服务器数据的方法

本文介绍FileZilla软件的下载、配置与使用方法。 在之前的博客中,我们提到了下载高分遥感影像数据需要用到FTP(文件传输协议,File Transfer Protocol)软件FileZilla;这一软件用以在自己的电脑与服务器之间相互传输数据,在进行下载科学数据、网站开发等等操作时,经常需要

Vite5+Electron聊天室|electron31跨平台仿微信EXE客户端|vue3聊天程序

基于electron31+vite5+pinia2跨端仿微信Exe聊天应用ViteElectronChat。 electron31-vite5-chat原创研发vite5+electron31+pinia2+element-plus跨平台实战仿微信客户端聊天应用。实现了聊天、联系人、收藏、朋友圈/短