Google Earth Engine 遥感分析:从 Landsat 和颜色入手

GEE 专栏收录该内容
¥59.90 ¥99.00
82篇文章

遥感技术是一种通过获取、处理和分析遥感图像数据来研究地球表面的方法。Google Earth Engine(GEE)是一个强大的云计算平台,提供了丰富的遥感数据集和分析工具,使得遥感分析变得更加简单和高效。在本文中,我们将从Landsat数据和颜色的角度出发,探讨Google Earth Engine中遥感分析的重要知识。

Landsat 数据集是全球最长时间序列的遥感数据之一,包含了来自美国地球观测卫星的多光谱图像。利用Landsat数据,我们可以观察地表的变化、监测植被生长、研究城市扩张等。Google Earth Engine提供了Landsat数据集的访问和处理,使得我们可以方便地在平台上进行遥感分析。

首先,让我们来了解如何在Google Earth Engine中加载和显示Landsat图像。下面是一个简单的示例代码,展示了如何加载Landsat 8的图像并显示在地图上:

// 定义一个区域
var roi = ee.Geometry.Point(-
Google Earth Engine(GEE)实例代码学习二十八——绘制波谱响应曲线(Image Spectral) 本文主要分享如何绘制某像元的光谱曲线,以两种形式表达,第一个为x轴表示各波段,第二个为x为波长,表示为光谱相应曲线 //选取Landsat8 大气顶层反射率影像 var landsat8Toa = ee.ImageCollection('LANDSAT/LC08/C01/T1_TOA'); var COLOR = { PARK: 'ff0000',//红色 FARM: '0000ff',... 阅读详情

相关推荐

使用Google Earth Engine计算1994-2000年Landsat 5 TM数据的Forel-Ule指数(FUI)

本文介绍了基于Landsat 5 TM数据计算Forel-Ule指数(FUI)的方法。FUI是一种21级水体颜色分类系统,可反映水质状况。研究使用1994-2000年Landsat 5 TM表面反射率数据,通过预处理步骤去除云阴影和饱和像元,并转换为实际反射率。核心算法包括:1)利用NDWI提取水体;2)计算三刺激值X、Y、Z;3)转换色度坐标并计算色调角度;4)应用多项式校正;5)根据角度范围分配1-21级FUI值。该方法可实现大范围水体颜色监测,为水质评估提供有效手段。

lestatlu的博客 1279

GEE实战:用Landsat 8数据做云遮蔽,别再让云层毁了你的遥感分析

本文详细介绍了在Google Earth Engine(GEE)平台上利用Landsat 8数据进行云遮蔽处理的实战方法。通过解析pixel_qa波段编码原理,提供单景影像和多时相影像的云遮蔽代码示例,并分享质量控制与高级处理技巧,帮助遥感研究人员有效解决云层干扰问题,提升遥感影像分析质量。

awxj68104的博客 327

用Google Earth Engine (GEE)跑一遍论文实验:验证Landsat8 OLI最佳分类波段

本文详细介绍了如何在Google Earth Engine (GEE)中验证Landsat8 OLI最佳分类波段组合,以提高土地利用与土地覆盖分类的效率和精度。通过波段相关性分析和SVM模型测试,文章展示了1-2-5-7等组合在保持高精度的同时显著提升计算效率的实践方法。

weixin_30463341的博客 683

Google Earth Engine 可视化单波段和真彩色/假彩色以及其他色彩影像分析 GEE

在GEE中,我们可以通过可视化单波段和真彩色/假彩色以及其他色彩影像分析来更好地理解和展示地球上的各种地理现象。在上述代码中,我们选择了Landsat 8影像的近红外、红色和短波红外波段,并使用这些波段计算了NDVI和NDSI指数。在上述代码中,我们选择了同样的Landsat 8影像,并分别将红、绿和蓝三个波段映射到真彩色和假彩色影像中。通过调整可视化参数,我们可以控制影像的亮度和对比度,并在地图上显示出来。通过设置适当的可视化参数,我们可以将该波段的像素值映射到特定的颜色,并在地图上显示出来。

TpjtRuby的博客 941

Google Earth Engine——遥感的重要知识先从Landsat和颜色看起

我们的总体目标是能够使用 Landsat 系列卫星查看特定地点的土地覆盖变化。为此,我们首先需要了解 Landsat 系列卫星的一些背景知识。 Landsat 系列卫星是首批部署的遥感平台之一。许多已经远远超过了预期的使用寿命(Landsat 5 在轨道上运行了近 28 年,预期使用寿命约为 3!)Landsat 系列旨在收集约 30 米2像素的信息,并重新审视相同的每 16 天在地球上放置一次。 我们将用于此分析的 Landsat 5 系统收集 7 个波段的信息。要查看图像,您的.

此星光明博客 980

Google Earth Engine(GEE)——Landsat9的使用和去云分析以青海省为例

本文的GEE代码链接: https://code.earthengine.google.com/91b1a81d9b0748a63061c384acb3ca3c 引言: 昨天我给Simon (Vsevolod) Ilyushchenko发了一封邮件,主要的意思就是问为啥还没有Landsat9的影像在GEE的数据集中呢?结果反馈是这样的,因为现在Landsat9已经可以使用了,但是在平台上目前还没有展示Landsat9的数据集。回复我的原文是这样的: Landsat 9 catalog entry i

此星光明博客 2863

GEE:对Landsat遥感影像进行处理,水体提取与可视化

本文介绍了通过Google Earth Engine平台,并使用Landsat卫星遥感数据提取水体掩膜的方法和代码。通过记录代码、裁剪和去除云等处理步骤,最终得到具有水体掩膜的影像,并进行可视化和导出。这种方法基于归一化水体指数(MNDWI)和OTSU阈值计算技术,使用了一个自定义的边缘计算水体掩膜函数。该函数基于边缘检测和OTSU阈值计算技术,通过处理Canny边缘、直方图分析和图像分割等步骤,得到了水体掩膜图像。

养乐多的博客 4065

Google Earth Engine(GEE)——NDVI的时间序列分析和在线出图

函数: ui.Chart.array.values(array,axis,xLabels) Generates a Chart from an array. Plots separate series for each 1-D vector along the given axis. - X-axis = Array index along axis, optionally labeled by xLabels. - Y-axis = Value. - Series = ...

此星光明博客 710

Google Earth Engine 教程——Landsat 8 影像集合去云分析QA波段和去云NDVI的影像

计算图像1和图像2中每一对匹配的波段的输入值的比特和。如果图像1或图像2只有一个波段,那么它将与另一个图像中的所有波段进行对比。输出的带子以两个输入中较长的命名,或者如果它们的长度相等,则以图像1的顺序命名。对于特征和特征集合,唯一支持的键是 "color",是一个CSS 3.0颜色字符串或 "RRGGBB "格式的十六进制字符串。图像的新掩码,是[0, 1]范围内的浮点值(无效=0,有效=1)。输出的图像保留了输入图像的元数据和足迹。该图层的不透明度,用0到1之间的数字表示,默认为1。

此星光明博客 2609

Google Earth Engine(GEE)——提取1985-2022年Landsat5/7/8不同土地分类样本点的影像值(reduceRegions)

影像值提取至点的具体操作流程一般如下:打开遥感影像。选择点数据集,打开或添加需要提取像素值的点图层。如果没有点数据集,可以手动创建一个点图层。确认点数据集和影像的投影坐标系、数据范围等信息是否相同,如果不同需要进行投影转换。选择提取像素值的方法,常用的有点采样、领域平均、反比例加权等。根据选择的方法,设置提取像素值的相关参数,比如点的半径、权重、颜色通道等。开始提取像素值,程序会自动计算每个点的像素值,并将结果保存在点图层的属性表中。可以根据提取结果进行进一步的数据分析和处理。

此星光明博客 1951

银河麒麟V10系统下VLC播放器安装全攻略(附3.0.9.2版本离线包下载)

本文详细介绍了在银河麒麟V10操作系统无网络环境下,从零开始编译安装VLC 3.0.9.2播放器的完整攻略。通过构建本地YUM仓库解决依赖问题,提供离线资源包下载,并逐步指导完成编译环境配置、软件编译与安装,帮助用户在国产麒麟系统上成功部署强大的多媒体播放能力。

a2b3c4d5e的博客 1187

【基金量化研究系列】基金绩效归因模型——Brinson多期归因模型之python实现

文章目录1. 引言2. Brinson多期归因模型的Python实现2.1 基准数据读取模块2.2 持仓数据读取模块2.3 持仓收益与基准计算模块2.4 Brinson多期归因模型核心算法Brinson_Multiple2.5 主函数模块3. 归因结果写在最后 1. 引言 在上文中,我们已经介绍了Brinson归因模型的基本思想。那么,就让我们动起手来,实现这一方法吧! 在Brinson多期归因模型实现的过程中,本文使用模块化方法,将整个实现过程划分为如下五个功能板块: Module 1: 基准数据读取模

Mikey_Sun的博客 2万+

RAGFlow核心引擎DeepDoc之PDF解析大起底

本文深入解析RAGFlow中的deepdoc模块,重点介绍了pdf文档解析器的实现细节。deepdoc包含parser(文档解析器)和vision(视觉处理)两大核心功能,其中pdf解析是最复杂的部分。文章详细剖析了PdfParser类的设计架构,包含PlainParser(基础文本提取)、RAGFlowPdfParser(核心处理流水线)和VisionParser(视觉扩展)三个类,它们通过统一的__call__方法返回标准化结果。还具体讲解了初始化过程如何加载OCR引擎、布局识别模型、表格结构识别器等关

yxkong的专栏 2021

SAP Script表单开发中ABAP preform方法的实战应用与调试技巧

本文深入探讨了在SAP Script表单开发中调用ABAP程序(preform方法)的实战应用与调试技巧。通过一个获取供应商版本名称的实例,详细讲解了如何在SE71中嵌入PERFORM指令、编写ABAP子程序进行数据查询与处理,并重点介绍了使用SAP Script Debugger进行高效调试的方法,帮助开发者灵活扩展表单功能,实现复杂业务逻辑。

o0p1q2r3的博客 551

零基础搭建本地AI绘画环境:Stable Diffusion 3.5保姆级安装教程(含中文优化方案)

本文提供零基础搭建本地AI绘画环境的详细教程,重点介绍Stable Diffusion 3.5的安装与中文优化方案。从硬件配置检查到软件依赖安装,再到核心组件配置与中文语义增强,教程涵盖全流程操作指南,帮助用户快速掌握AI文生图模型的本地部署技巧,提升创作效率。

weixin_30752699的博客 312

利用 Openocd 和 FT2232H 实现 ARMv8(Coretex-A53)高效调试方案

本文详细介绍了如何利用开源工具OpenOCD与高性能USB转接芯片FT2232H,构建一套针对ARMv8架构(如Cortex-A53)的高效、低成本调试方案。内容涵盖从环境搭建、驱动配置、核心调试架构解析到实战问题排查的全过程,帮助开发者实现对多核处理器的透明、可控调试,是嵌入式Linux及底层开发的实用指南。

weixin_29163581的博客 279

YOLOv13涨点改进 | 全网独家创新、HyperACE改进、注意力改进篇 | CVPR 2025| 引入LRSA局部区域自注意力模块,能提升其在细节捕捉、小目标检测和长距离依赖建模方面的能力

本文提出将LRSA(局部区域自注意力)模块集成到YOLOv13中,通过局部特征交互增强细节捕捉能力、小物体检测精度和长距离依赖建模。LRSA模块采用重叠图像块处理策略,在保持计算效率的同时提升复杂背景下的检测性能。文章详细介绍了模块结构、原理优势,并提供了三种改进方案:1)在主干网络添加LRSA层;2)将关键模块替换为DSC3k2_LRSA;3)采用HyperACE_LRSA结构。配套提供了完整的PyTorch实现代码和YAML配置文件,展示了该模块如何通过局部注意力机制平衡检测精度与推理速度。

Ai缝合怪、助力小伙伴高效发论文 344

选型不再靠感觉:一文看懂 SAP Event Mesh 与 SAP Integration Suite, advanced event mesh 的能力边界

本文对比分析了SAP Event Mesh与SAP Integration Suite, advanced event mesh的差异。SAP Event Mesh适合轻量级场景,主要用于SAP系统间异步通信,支持AMQP、MQTT等协议,消息大小限制为1MB。而advanced event mesh面向企业级事件网络,提供跨云/本地部署、事件治理、监控等高级功能,支持30MB消息和更大存储容量。选择时需考虑业务规模、实时性要求、治理需求等因素:单一SAP生态内扩展可选Event Mesh;跨区域、多云环境

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 133

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

上一篇: Google Earth Engine 强大新功能发布!通过Timelapse键,揭示地球过去37年间的巨变!
下一篇: 地球引擎中级教程:指数计算在GEE中的实现
普通网友
博客等级 码龄3年 87粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值