- 博客(40)
- 收藏
- 关注
原创 【无标题】
在地理信息系统(GIS)和遥感领域,栅格数据和点数据是两种常见的数据类型。栅格数据通常用于表示连续的地理现象,如地形、气温、降雨量等,而点数据则用于表示离散的地理特征,如监测站、采样点等。将栅格数据的值提取到点数据中,是空间分析中的一个常见任务,这一过程可以应用于多种应用场景,如环境监测、资源管理和城市规划等。本文将从基础原理出发,讲解栅格数据和点数据的基本概念、栅格值提取的常用方法,以及在实际操作中可能遇到的问题和解决方案。关注公众号,回复20240604获取示例数据和代码。
2024-06-05 09:50:44
380
1
原创 Pytorch线性回归教程
线性模型只有两个参数斜率k,和偏置b# 线性模型的方程为y = k * x + b# 下面输出中的requires_grad=True 表示该参数需要计算梯度# 梯度用于在反向传播中对参数进行优化,优化方法即梯度下降k, b。
2023-12-07 15:59:23
402
1
原创 长时序栅格数据缺失值插补
在时间序列分析中,「奇异谱分析」「SSA」)是一种非参数谱估计方法。它结合了经典时间序列分析、多元统计、多元几何、动力系统和信号处理的元素。“奇异谱分析”这个名称涉及协方差矩阵的奇异值分解中的特征值谱,而不是直接涉及频域分解。SSA 可以帮助分解时间序列分解为组件的总和,每个组件都有有意义的解释。如下图所示,奇异谱分析分解出来了趋势、变化和噪声三部分。SSA只考虑数据本身的特征,不考虑其他因素,特别适合于插补、平稳时间序列的预测。
2023-10-04 19:41:23
1025
2
原创 一种特殊的NC文件转TIF——知道每个像元的坐标值怎么转为TIF
但是上次介绍的NC文件的地理参考是比较标准的,即数据都有经度和维度这两个维度来表示其在地理空间的位置,并且这两个维度都有与其对应的坐标变量。之前写过一篇文章,介绍了NetCDF文件格式,并详细讲解了如何使用Python对NetCDF文件进行读写操作,进而介绍了NetCDF文件的地理参考,最后以两个数据为例讲解了怎么将NetCDF格式的数据转GeoTIFF格式的数据。这是整体的每个点的分布,这种分布的情况下即使不考虑像元大小不一致的问题,我也没找到方法计算它的GeoTransform。
2023-08-24 19:05:57
427
原创 Python版GeoDetector更新
之前发布了一文,但当时实现的地理探测器功能仍不完善,比如在因子探测时缺乏p值。代码已经开源到了GitHub,网址是https://github.com/djw-easy/GeoDetector。下面介绍一下怎么用,基本与上一版相同。
2023-08-01 10:35:30
1045
2
原创 一种栅格数据的空间聚类方法(ACA-Cluster)
聚类分析中常用的距离有近10 种,最常采用的距离之一曼哈顿距离。假设任意两个空间对象PiP_iPiPjP_jPj的中心坐标分别为xiyixiyi和xjyjxjyj;aika_{ik}aik和ajka_{jk}ajk分别是PiP_iPi和PjP_jPj上的值第k维度的属性值,则对象PiP_iPi和PjP_jPj之间的位置曼哈顿距离(DpD_pDp。
2023-06-17 16:33:10
1421
原创 基于Python的栅格数据地理加权回归
地理加权回归 (GWR) 是若干空间回归技术中的一种,越来越多地用于地理及其他学科。通过使回归方程适合数据集中的每个要素,GWR 可为您要尝试了解/预测的变量或过程提供局部模型。GWR 构建这些独立方程的方法是:将落在每个目标要素的带宽范围内的要素的因变量和解释变量进行合并。带宽的形状和大小取决于用户输入的核类型、带宽方法、距离以及相邻点的数目参数。MGWR 以地理加权回归 (GWR) 为基础构建。它是一种局部回归模型,允许解释变量的系数随空间变化。每个解释变量都可以在不同的空间尺度上运行。
2023-06-05 16:20:48
4057
4
原创 03散点密度图(遥感反演数据精度验证)
散点密度图(Scatter Density Plot)是一种用于可视化二维数据分布的图表。它将散点图和核密度估计图(Kernel Density Estimation,KDE)结合起来,通过在散点图上叠加一定透明度的核密度估计图来显示数据点的密度分布情况。散点密度图可以用来探索数据的分布情况,尤其适用于大量数据点的情况。它可以帮助我们识别出数据的聚集区域、密度高低以及异常值等信息。
2023-06-02 22:48:48
3002
原创 遥感影像深度学习样本对制作教程3——从GEE下载训练数据
上一篇文章介绍了遥感影像深度学习样本对制作的常用技巧,但实际使用中并不是所有数据都是那么的规整的,比如输入数据和标签可能存在空间范围不一致的情况。关注公众号,回复20230526获取示例数据和代码,这个系列的代码都放在一起,上手运行一下代码更容易弄懂。所以总的来说关键的步骤只有三点,提取重叠范围,根据重叠部分采用教程1的方法制作标签,以及重采样。下面分别介绍这三点,想具体了解可以自己下载代码和数据运行一下,这里只介绍关键步骤,具体的不多介绍。
2023-05-26 15:43:37
723
原创 遥感影像深度学习样本对制作教程3——从GEE下载训练数据
本文结合实例详细讲解了如何使用Python制作遥感影像深度学习样本对,关注公众号,回复20230427获取示例数据和代码。受到计算机内存限制,深度学习算法无法直接对大幅影像和标签图像进行训练,因此需要对影像和标签图像进行再处理,将制作好的城市绿地影像和对应标签图像裁剪成一系列相同尺寸的小图像放入模型训练。常用的裁剪方法有规则格网裁剪和滑动窗口裁剪。规则格网裁剪,也称棋盘裁剪,顾名思义就是将影像裁剪成棋盘形状固定尺寸的小图像,该方法得到的图像比较规则,但是缺点是获取的图像数量较少,如下图a所示;
2023-05-05 22:44:17
2988
3
原创 遥感影像深度学习样本对制作教程2——根据云含量筛选影像块
本文结合实例详细讲解了如何使用Python制作遥感影像深度学习样本对,关注公众号,回复20230427获取示例数据和代码。受到计算机内存限制,深度学习算法无法直接对大幅影像和标签图像进行训练,因此需要对影像和标签图像进行再处理,将制作好的城市绿地影像和对应标签图像裁剪成一系列相同尺寸的小图像放入模型训练。常用的裁剪方法有规则格网裁剪和滑动窗口裁剪。规则格网裁剪,也称棋盘裁剪,顾名思义就是将影像裁剪成棋盘形状固定尺寸的小图像,该方法得到的图像比较规则,但是缺点是获取的图像数量较少,如下图a所示;
2023-04-30 22:57:29
426
1
原创 遥感影像深度学习样本对制作教程1
本文结合实例详细讲解了如何使用Python制作遥感影像深度学习样本对,关注公众号,回复20230427获取示例数据和代码。受到计算机内存限制,深度学习算法无法直接对大幅影像和标签图像进行训练,因此需要对影像和标签图像进行再处理,将制作好的城市绿地影像和对应标签图像裁剪成一系列相同尺寸的小图像放入模型训练。常用的裁剪方法有规则格网裁剪和滑动窗口裁剪。规则格网裁剪,也称棋盘裁剪,顾名思义就是将影像裁剪成棋盘形状固定尺寸的小图像,该方法得到的图像比较规则,但是缺点是获取的图像数量较少,如下图a所示;
2023-04-27 23:26:39
715
1
原创 用Python实现ENVI中的“优化的线性拉伸”
为了使遥感影像具有更好的可视化效果,一般要对影像进行拉伸显示。线性拉伸在遥感图像处理中非常常见,对于整体偏暗的原始图像来讲,拉伸之后的图像视觉效果得到了显著增强。但对于图像中反射率比较高的地物,线性拉伸会使这些地物显得很亮,模糊其本身的颜色、纹理等信息。ENVI中的“优化的线性拉伸”能在一定程度上解决这个问题。如下图所示,左侧是2%线性拉伸后的结果,右侧是优化的线性拉伸的结果。线性拉伸的代码网上一大堆,但优化的线性拉伸中文互联网一个介绍的都没有。最后还是在ENVI的文档里看到了关于它的介绍,网址是。
2023-04-07 21:51:12
1534
原创 用Python实现地理探测器
地理探测器很多人都熟悉,快被用烂的一个空间数据分析方法了。现在有两个版本,一个是Excel版本,一个R版本的。之前在数据分析时,需要频繁的使用地理探测器计算q值,每次都得重新把数据输入到Excel里,很麻烦。而我又不会R语言,于是就用Python写了地理探测器软件。现在分享给大家,有同样需求的可以试一下。代码很简单,不到40行,已经开源到了GitHub,地址是。这个代码只实现了四个探测器中的三个,另外一个当时用不着,就没写,感兴趣的可以提交代码完善一下。下面介绍一下怎么用。
2023-04-04 18:53:31
2299
2
原创 基于Python的栅格数据分区统计
分区统计操作是一种用于计算由另一个数据集定义的区域内的栅格(值栅格)的像元值的统计操作。首先根据矢量数据将栅格化分区多个区域,提取每个区域的像元值并分别进行统计计算,而后输出结果(一般直接输出的输入矢量的某个字段里)。ArcGIS 有栅格的分区统计工具,但不够灵活,只能进行诸如最大值、最小值之类的统计计算。实现的栅格数据分区统计工具,能够更加灵活的实现分区统计功能,满足多样化的需求。,回复20230401获取示例数据和代码,包含这个工具的代码的写作思路。执行分区统计只需要调用类实例的。
2023-04-01 22:34:43
1678
原创 怎么按面积比例创建缓冲多边形——看一下ChatGPT怎么回答
最后将某个建成区单元设为城市核心(主城区),判断其他的建成区单元的缓冲区是否与主城区的缓冲区相交,相交的话就把它和主城区一同视为城市的一部分,他们的边界就是城市的边界。再详细的问它一下试试。先看它给出的 ArcGIS 的解决方法,说了要用 ArcGIS 的哪个工具创建缓冲区,还知道按字段创建缓冲区,但是问题还是没能解决最关键的问题,也就是。这就是这篇文章的全部内容了,虽然 New Bing 没能解决我们的问题,但是从它的回答能够看出来它在搜索、归纳上的能力还是很强的,用在日常工作中肯定会如虎添翼。
2023-03-15 23:35:32
588
原创 DLT-07-正则化
本文是**深度学习入门(deep learning tutorial, DLT)**系列的第五篇文章,主要介绍一下正则化的相关知识。想要学习深度学习或者想要了解机器学习的同学可以关注公众号,我会逐步更新这一系列的文章。在机器学习中,正则化是正则化系数的过程,即对系数进行惩罚,通过向模型添加额外参数来防止模型过度拟合,这有助于提高模型的可靠性、速度和准确性。可以这么说,正则化本质上是为了防止因网络参数过大导致模型的泛化技术。
2023-03-14 18:50:57
185
原创 DLT-06-多元分类
本文是**深度学习入门(deep learning tutorial, DLT)**系列的第五篇文章,主要介绍一下多元分类。想要学习深度学习或者想要了解机器学习的同学可以关注公众号,我会逐步更新这一系列的文章。
2023-03-12 22:37:33
154
原创 DLT-05-二元分类
机器学习分类通过训练集进行学习,建立一个从输入空间 X 到输出空间 Y(离散值)的映射。按输出类别(标签)不同,可以分为二元分类(Binary Classification)、多元分类(Multi-Class Classification)。本文以二元分类为例,介绍一下机器学习在分类问题中的应用。
2023-03-10 22:26:24
643
原创 DLT-04-非线性回归
正如线性回归的含义就是研究变量之间存在怎样的线性关系,非线性回归同样是研究变量之间存在怎样的关系,只是这种关系不再是线性的了。求解非线性回归的方法有很多,在这里只介绍比较简单常用的一种方法,即将非线性回归问题转化为线性回归问题进行求解。
2023-03-03 20:20:46
903
原创 DLT-03-多元线性回归
多元线性回归和一元线性回归的模型表达基本一致,区别只在于输入的变量个数更多。因此,二者在假设函数和梯度下降方面有些区别,本文会在上一篇一元线性回归的基础上对其进行详细介绍。为了准确的衡量模型的精度,本文介绍了最小二乘法,使用该方法计算出的假设函数能最小化使损失函数的值。此外,多个变量的量纲不一定一致,因此本文还会介绍一下无量纲化在机器学习中的作用。
2023-03-02 23:24:40
217
原创 DLT-02-一元线性回归
在介绍深度学习之前,我们需要了解一些神经⽹络训练的基础知识。为了更容易学习,我们将从经典算法——线性神经⽹络开始,首先介绍一元线性回归,逐步扩展到多元线性回归和非线性回归。经典统计学习技术中的线性回归和`softmax`回归都可以视为线性神经⽹络,这些知识将为本系列教程其他部分中更复杂的技术奠定基础。
2023-02-27 22:39:45
260
原创 DLT-01-前言
本文是**深度学习入门(deep learning tutorial, DLT)**系列的第一篇文章,主要介绍一下该系列的创作思路、目标读者、参考书目等内容。想要学习深度学习或者想要了解机器学习(深度学习的基础)的同学可以关注公众号`GeodataAnalysis`,我会逐步更新这一系列的文章。
2023-02-26 23:39:40
109
原创 GDAL栅格数据处理教程
本文结合实例详细讲解了如何使用GDAL操作栅格数据,包括栅格数据的读写,以及一些常用的栅格数据处理操作,如坐标变换、裁剪、镶嵌、插值等。
2023-02-20 22:05:07
4770
3
原创 Anaconda常用命令汇总
Conda是Anaconda中一个强大的包和环境管理工具,可以在Windows系统中的的Anaconda Prompt命令行使用,也可以在macOS或者Linux系统的终端窗口的命令行使用。本文简单介绍conda的一些常用命令命令,仅供参考。
2023-01-25 20:41:58
1265
原创 Linux常用命令汇总
Linux 命令是对 Linux 系统进行管理的命令。对于 Linux 系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件, Linux 系统管理的命令是它正常运行的核心。目前超级计算机大都使用 Linux 系统,因此学习 Linux 系统的基本操作对大数据处理、数据分析等都非常重要。
2023-01-24 18:59:55
828
原创 Anaconda中配置运行arcpy的python环境
本文介绍了如何在 Anaconda 或 Miniconda 下配置运行`arcpy`的 Python 环境,这样该环境既能使用`arcpy`,又能方便的安装第三方库而不用担心出现问题。
2023-01-23 19:41:57
2638
1
原创 C语言常见数据结构与算法笔记
本文是对一些常见的简单的算法的介绍及实现,均由C语言实现,仅供参考。学习更多Python & GIS的相关知识,请移步公众号`GeodataAnalysis`。
2023-01-22 21:18:05
446
原创 Numpy 数组简介
Numpy是Python中科学计算的核心库,NumPy这个词来源于Numerical和Python两个单词。它提供了一个高性能的多维数组对象,以及大量的库函数和操作,可以帮助程序员轻松地进行数值计算,广泛应用于机器学习模型、图像处理和计算机图形学、数学任务等领域。
2023-01-21 14:44:37
940
原创 使用 openpyxl 处理 Excel 电子表格
`openpyxl`模块让 Python 程序能读取和修改 Excel 电子表格文件。例如,可能有一个无聊的任务,需要从一个电子表格拷贝一些数据,粘贴到另一个电子表格中。或者可能需要从几千行中挑选几行,根据某种条件稍作修改。或者需要查看几百份部门预算电子表格,寻找其中的赤字。正是这种无聊无脑的电子表格任务,可以通过 Python 来完成。
2023-01-20 20:50:43
968
原创 NetCDF(nc)读写与格式转换介绍
本文介绍了NetCDF文件格式,并详细讲解了如何使用Python对NetCDF文件进行读写操作,进而介绍了NetCDF文件的地理参考,最后以两个数据为例讲解了怎么将NetCDF格式的数据转GeoTIFF格式的数据(.nc文件转为.tif文件)。
2023-01-19 12:34:38
6737
2
原创 基于Python的多时相数据合成
多时相数据合成就是依据一定的标准,选择某一时间范围内的多景相互匹配的数据中质量最好的象元值,作为该时间范围内合成结果的像元值。
2023-01-06 12:28:14
970
原创 一文搞懂Python的文件路径操作
如果你要在代码里读取一个文件,那么你首先要知道这个文件的路径。如果只有一个文件,那么很简单,直接复制这个文件所在的文件夹路径及其文件名即可。而在很多情况下,我们会处理大量的文件,这些文件一般都会按一定的规则存放在一个或几个文件夹里。本文便是简单讲一下怎么应对这种情况,将以Python为例,但其中的理念是通用的。
2023-01-06 12:27:07
11642
2
原创 基于Python的遥感云计算
本书文对一些常用的遥感云计算平台进行简要的介绍,并以公有云平台中发展最为成熟的Google Earth Engine为例演示演示Python在遥感大数据和云计算中的应用。
2023-01-06 12:25:11
1795
2
原创 02小提琴图加热力图
本文是在模仿中精进数据分析与可视化系列的第一期——小提琴图加热力图,主要目的是参考其他作品模仿学习进而提高数据分析与可视化的能力,如果有问题和建议,欢迎在评论区指出。若有其他想要看的作品,也欢迎在评论区留言或通过公众号发消息给出相关信息。
2023-01-06 12:23:24
237
原创 在模仿中精进数据分析与可视化01——颗粒物浓度时空变化趋势(Mann–Kendall Test)
本文是在模仿中精进数据分析与可视化系列的第一期,主要目的是参考其他作品模仿学习进而提高数据分析与可视化的能力,如果有问题和建议,欢迎在评论区指出。若有其他想要看的作品,也欢迎在评论区留言并给出相关信息。 所用数据和代码的下载地址如下:简介 本次要模仿的作品来自论文Investigating the Impacts of Urbanization on PM2.5 Pollution in the Yangtze River Delta of China: A Spatial Panel
2021-06-12 10:39:53
1505
1
原创 一个关于C语言strcpy函数的问题
一个关于C语言strcpy函数的问题int main(void){ char a[8] = "ssssaaa", *p = "aaaasssss", *q = a; printf("%x,%x\n",a, q); strcpy(a, p); printf("%x,%x\n",a, q); printf("%s\n",a); return 0;}输出如下:初始化字符指针变量q指向指数数组a,之后用strcpy将字符指针p指向的字符数组复制到字符数组
2020-11-20 23:26:04
834
原创 八皇后问题,C语言二维数组回溯算法求解
#include <stdio.h>int count = 0;int chess[8][8]={0};int check(int row,int col){ int i,j; //判断列方向 for(i=0;i<8;i++) { if(*(*(chess+i)+col)) return 0; } //判断左对角线 for(i=row,j=col;i>=0 && j>=0;i--,j--) { if(*(*(
2020-10-15 00:15:07
574
原创 【微信读书每日一答辅助小程序】使用python对每日一答问题进行识别,并将结果保存到剪贴板以便搜索。
目录标题1 环境准备2 获取屏幕位置3 指定区域屏幕截图4 文字识别5 按键识别并保存到剪贴板 在腾讯收购阅文之后,微信读书的无限卡已经不能免费看书了,这时白嫖微信读书每日一答的书币成了不错的选择。严重偏科又手速垃圾的我在等级升高下逐渐力不从心,于是突然有了这个想法,写个能快速识别问题文字的小程序,因为现有的识别文字等程序(如QQ)会出现识别速度慢、手动框选识别区域的问题。1 环境准备系统:WIN10python version:3.6所需要的库:pyautogui,keyboard,PILL
2020-07-23 22:53:12
5915
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人