遥感影像(TIF格式)深度学习

遥感影像(tif格式)深度学习场景分类(图像分类),如何去修改dataset把多波段数据读进网络?

在遥感影像的深度学习场景分类中,通常需要读取多波段数据作为输入。这可以通过以下几种方式实现:

手动读取每个波段的图像并将它们合并到一个大的数组中。在这种情况下,您可以使用 Python 库如 OpenCV 或 GDAL 读取和处理图像。

import numpy as np
import cv2

# 读取图像
red_image = cv2.imread("red_band.tif", cv2.IMREAD_GRAYSCALE)
green_image = cv2.imread("green_band.tif", cv2.IMREAD_GRAYSCALE)
blue_image = cv2.imread("blue_band.tif", cv2.IMREAD_GRAYSCALE)

# 将图像合并为一个大的数组
image_data = np.dstack((red_image, green_image, blue_image))

使用预处理工具将多波段影像合并为一个文件,然后读取该文件。可以使用 Python 库如 Rasterio 或 Gdal 读取和处理图像。

使用预处理工具将多波段影像合并到一个文件中并读取该文件,并且也可以在此基础上使用 python的大数据处理库如 numpy,pandas 进行读取和处理.具体方案需要根据数据量,计算资源等因素来决定。

一些建议,如果你的数据集较大或者资源有限,可以考虑使用数据增强技巧。

使用预处理工具将多波段影像合并为一个文件,然后读取该文件

import rasterio

# 打开合并后的影像文件
with rasterio.open("multispectral_image.tif") as src:
    # 读取图像数据
    image_data = src.read()

使用预处理工具将多波段影像合并到一个文件中并读取该文件,并且也可以在此基础上使用 python的大数据处理库如 numpy,pandas 进行读取和处理.

import rasterio
import numpy as np
import pandas as pd

# 打开合并后的影像文件
with rasterio.open("multispectral_image.tif") as src:
    # 读取图像数据
    image_data = src.read()
    # 转换成 Pandas DataFrame
    image_df = pd.DataFrame(np.rollaxis(image_data,0,3))