TM影像有几 个波段,扫描对应的地面宽度为多少
时间: 2024-03-30 09:38:46 浏览: 13
TM影像共有7个波段,分别为蓝色、绿色、红色、近红外、热红外1、热红外2和中短波红外,对应的中心波长和波段宽度如下:
| 波段 | 中心波长(μm) | 波段宽度(μm) |
| :--: | :------------: | :------------: |
| 1 | 0.45 | 0.08 |
| 2 | 0.52 | 0.08 |
| 3 | 0.63 | 0.08 |
| 4 | 0.83 | 0.03 |
| 5 | 1.65 | 0.08 |
| 6 | 2.22 | 0.20 |
| 7 | 2.08 | 0.13 |
TM影像的扫描宽度为30米。
相关问题
IDL刘个经纬坐标值去提取TM影像上的六个波段的DN值
提取TM影像上的像元的六个波段的DN值,需要用到IDL语言进行编程。下面是一个简单的IDL程序示例:
```
; 打开TM影像文件
file = FILEPATH('tm_image.tif', SUBDIR=['data'])
raster = RASTER(file)
; 定义经纬度坐标值
lon = -120.1234
lat = 35.6789
; 将经纬度坐标值转换为像素坐标值
pixel = raster.lonlat2pixel(lon, lat)
; 提取像元的六个波段的DN值
dn = raster.getpixel(pixel[0], pixel[1], /BANDS, /FLOAT)
; 显示结果
PRINT, dn
```
需要注意的是,上述程序中的经纬度坐标值和像素坐标值的单位应该保持一致,通常为度或者米。如果单位不一致,需要进行坐标转换。另外,TM影像有7个波段,而不是6个波段,如果需要提取所有波段的DN值,需要将代码中的`/BANDS`参数改为`/ALL_BANDS`。
matlab编程:对含有六个波段的TM影像进行KL变换,并输出各主分量对应的图像
好的,这个问题很具体,我可以为你提供一些代码来实现这个功能。以下是一个基本的 MATLAB 脚本,用于对包含六个波段的 TM 影像进行 KL 变换:
```matlab
% 读取图像文件
img = imread('TM影像.tif');
% 将图像转换为 double 类型
img = im2double(img);
% 计算图像的均值
mu = mean(img, 1);
% 计算协方差矩阵
cov_mat = cov(img);
% 计算 KL 变换矩阵
[V, D] = eig(cov_mat);
[~, ind] = sort(diag(D), 'descend');
V = V(:, ind);
% 计算主分量
PC = img * V;
% 显示主分量图像
for i = 1:6
subplot(2, 3, i);
imshow(reshape(PC(:, i), size(img, 1), size(img, 2)));
title(sprintf('PC%d', i));
end
```
这个脚本做的事情是读取一个名为 "TM影像.tif" 的图像文件,将其转换为 double 类型,计算均值和协方差矩阵,然后计算 KL 变换矩阵和主分量。最后,它将每个主分量显示为一个单独的图像。
请注意,这个脚本假定您的图像是一个大小为 [m x n x 6] 的三维数组,其中 m 和 n 是图像的高度和宽度,6 是波段的数量。如果您的图像不是这个大小,请相应地修改代码。