Landsat 9从USGS下载Landsat9影像,Landsat9影像和国产影像不一样的地方在于:
1.Landsat9影像已做好了几何校正,无rpc文件。
2.Landsat9影像以单波段的形式,将每个波段保存为单独的文件。
Landsat9 的真彩色RGBA众所周知,Landsat9的第2波段是蓝色,Blue,简写B
Landsat9的第3波段是绿色,Green,简写G
Landsat9的第4波段是红色,Red,简写R
接下来,要写一个函数,实现这个功能:
输入Landsat9解压后的文件夹,得到Landsat9的第2、3、4波段的文件名
这个函数的作用是,有利于自动化,每景影像的名字是唯一的,如果每次都要自己手动指定Landsat9的第2、3、4波段的文件名是费时费力的。
注意分析Landsat9的tif名字的格式,提炼出共同的命名规则。
LC09_L2SR_018113_20230209_20230310_02_T2_SR_B1.TIF 的特点是
B1代表band 1 ,第一波段。
该文件的后缀是大写字母 TIF。
根据这两点可以自动获取第2、3、4波段的名字。
细看以 ...
RGBA格式RGBA是一种色彩空间的模型,由RGB色彩空间和Alpha通道组成。RGBA代表红、绿、蓝和Alpha通道。 RGB是RGBA采用的颜色,它可以属于任何一种RGB色彩空间。而艾德文·卡特姆和匠白光在1971至1972年间提出的Alpha参数使得Alpha渲染和Alpha合成变得可能。
RGBA,更进一步的展开简单的来说,RGBA格式比RGB多了一个Alpha通道,并且通过这个通道来控制整张图片的透明度,alpha通道一般用作不透明度参数。以我们的公众号的头像为例,如下图。
观察上图,可以发现,RGBA图片和RGB的最大区别在于,RGBA的背景值是透明的。RGB格式下,我们的公众号头像如下:
RGBA格式的好处在于,可以利用背景值为透明的特点,与其他图片进行相加。通俗易讲的来说,RGBA格式是在‘抠图’的必不可少的一步。换个说法,RGBA格式下的图片的背景值,是虚的,而RGB格式的图片的背景值,是实的。
RGBA格式在遥感中有什么应用呢?
最为常见的一个应用是在webgis中:缩略图的可视化。比如你在欧空局、USGS下载数据时,点击数据浏览,看看数据长什么样子,这时候,你 ...
HDF5、NetCDF默认HDF5、NetCDF这两类文件是相似,读取文件的步骤也是相似的。
HDF5的文件后缀一般是.h5,NetCDF的文件后缀一般是.nc
以下用nc文件代指HDF、NetCDF文件。
对程序员来说,nc文件和zip、jpeg、bmp文件格式类似,都是一种文件格式的标准。netcdf文件开始的目的是用于存储气象科学中的数据,已经成为许多数据采集软件的生成文件的格式。利用NetCDF可以对网格数据进行高效地存储、管理、获取和分发等操作。
由于其灵活性,能够传输海量的面向阵列(array-oriented)数据,广泛应用于大气科学、水文、海洋学、环境模拟、地球物理等诸多领域,例如,NCEP(美国国家环境预报中心)发布的再分析资料,NOAA的CDC(气候数据中心)发布的海洋与大气综合数据集(COADS)均采用NetCDF作为标准。
从数学上来说,netcdf存储的数据就是一个多自变量的单值函数。用公式来说就是f(x,y,z,…)=value,函数的自变量x,y,z等在netcdf中叫做维(dimension)或坐标轴(axis),函数值value在netcdf中叫做变量 ...
himawari8
未读himawari8地球同步卫星地球静止轨道(或作“地球静止同步轨道”、“地球静止卫星轨道”、“克拉克轨道”)是特别指卫星或人造卫星垂直于地球赤道上方的正圆形地球同步轨道。地球静止轨道属于地球同步轨道的一种。
人造卫星与地面相对静止,固定在赤道上空。顺行的圆形轨道,距地面高度为35786千米,卫星运动速度为3.07千米/秒。一颗卫星可覆盖约40%的地球面积。气象卫星、通信卫星和广播卫星常采用这种轨道。另外我国的北斗卫星导航系统部分卫星也是使用该轨道。
2014年10月,日本首颗第三代气象卫星“向日葵”-8(Himawari-8)成功发射,定点在东经140°。
数据获取himawari8近实时地把数据展示在互联网上,网站是https://himawari8.nict.go.jp/。
问题是我们能不能把数据下载在本地呢,答案是可以的。
下载himawari8的数据方法有多种,比如说注册账号通过FTP方式下载数据,数据的格式是NC格式。
我们这次下载数据选择第二种,下载它的瓦片数据,格式是png格式。
import requests
import datetime
import os
clas ...
OOPObject-Oriented Programming简称OOP,中文叫做面向对象编程。
和面向对象编程不一样的是另一种编程思想:面向过程编程。
过程编程是关于编写对数据执行操作的过程或方法,而面向对象编程是关于创建包含数据和方法的对象。
你可以这么理解,C语言是面向过程编程。但是面向过程编程一旦工程变大,管理就面临着困难,debug都不知道在哪里改。C PLUS PLUS语言应运而生,C Plus Plus简写cpp,或者叫c++。
C++、Java、Kotlin、C#、Python都是C语言家族的成员,也是面向对象编程语言。
优点面向对象编程与过程编程相比有几个优点:
OOP 执行起来更快更容易
OOP 为程序提供了清晰的结构
OOP 有助于保持 Kotlin 代码的 DRY“Don’t Repeat Yourself”,并使代码更易于维护、修改和调试
OOP 可以用更少的代码和更短的开发时间创建完全可重用的应用程序
什么是类和对象?类是对象的模板,对象是类的实例。
创建单个对象时,它们会继承类的所有变量和方法。
创建对象fun main(){
var myF ...
爬虫网络爬虫(又被称为网页蜘蛛,网络机器人)就是模拟浏览器发送网络请求,接收请求响应,一种按照一定的规则,自动地抓取互联网信息的程序。原则上,只要是浏览器(客户端)能做的事情,爬虫都能够做。
准备
我们平时都说Python爬虫,其实这里可能有个误解,爬虫并不是Python独有的,可以做爬虫的语言有很多例如:PHP,JAVA,C#,C++,Python,选择Python做爬虫是因为Python相对来说比较简单,而且功能比较齐全。
例子Pexels是图片库和素材库的提供商。它于 2014 年在德国成立,拥有一个拥有超过 320 万张免费照片和视频的图书馆。
之前需要在pexels这个无版权的视频网站下载视频。所以写了一个半自动的爬虫代码,语言是python。为什么叫做半自动呢?因为它还需要完善,但是对于目前的我来说,它是够用了。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2023/2/18 20:01
# @File : download_pexels.py
import requests
import os
i ...
为什么要学Kotlin
我想开发一款安卓APP,所以就想去学学这个语言,主要是不打游戏了,下班之后也闲得慌,闲着也是闲着,所以就去学Kotlin,内卷从我做起。
文章很多内容机翻于w3schools, 有需要的同学可以去它家网站学习:https://www.w3schools.com/KOTLIN/kotlin_intro.php
写这样的文章也是在督促自己保持学习。
简介什么是kotlin?
Kotlin 是一种现代的、流行的编程语言,由 JetBrains 于 2016 年发布。
它变得非常流行,因为它与Java(目前最流行的编程语言之一)兼容,这意味着 Java 代码(和库)可以在 Kotlin 程序中使用。
为什么使用Kotlin?
Kotlin 与 Java 完全兼容
Kotlin 适用于不同的平台(Windows、Mac、Linux、Raspberry Pi 等)
Kotlin 简洁安全
Kotlin 易于学习,特别是如果您已经了解 Java
Kotlin 是免费使用的
大社区/支持
Kotlin入门集成开发环境使用 IntelliJ,可以从https://www. ...
引言很久没用过matlab,不记得了获取矩阵的大小的函数、不记得矩阵的下标索引操作,一些语法都忘记一干二净。但是要记住解决问题的大概思路,换个语言实现也是可以的,过程中遇到问题就去搜索。
回到这个这篇文章的主题,6个波段的landsat数据怎么在Matlab里叠加成12个波段,是一个网友向我咨询,我给出了大概的思路。
试验由于没有landsat 8影像,这里暂用一张单波段的影像作为示例。
具体代码如下:
clc,clear;
filepath1 = 'D:\hh1.tif'
img_1 = imread(filepath1);
img_2 = img_1; % 没有第二张影像,使用第一张影像的复制
[row, col, bands] = size(img_1); % 获取数组维度信息
new_bands = bands*2; % 新的影像的波段是原来的两倍
img_3 = zeros([row, col, new_bands]); % 创建新的数组
img_3(:,:,1:bands) = img_1; % 前一半放第一张影像
img_3(:,:,bands+1:end) = ...
介绍我们将使用 Python 将 netCDF 文件转换为 GeoTIFF。GeoTIFF 基于 TIFF 格式,用作地理参考光栅图像的交换格式。
第三方库netCDF4
gdal
numpy
geopandas
读取 netCDF 文件我们将使用 netCDF.Dataset() 属性来读取 netCDF 文件:
#从osgeo导入必要的库import gdal
import numpy as np
from netCDF4 import Dataset
import matplotlib.pyplot as plt
from mpl_toolkits.axes_grid1 import make_axes_locatable
#读取netCDF文件
data = Dataset( r'\path\to\file.nc' )
print(data)
简单可视化#Creating a vairable 'sic' to store the 2-D array variable 'z'
sic = data.variables[ 'z' ][:]
#翻转
asi_sic ...





