遥感图像变化检测数据集的制作(深度学习)

本文介绍了遥感图像变化检测的数据集制作过程,包括大图分块、双时相图像标注、标注存储和小图裁剪。通过深度学习方法,针对多时相遥感图像进行变化区域的检测,利用labelme进行多边形标注,并提供Python代码示例。
摘要由CSDN通过智能技术生成

与计算机视觉中的目标检测不同,遥感图像目标检测的检测范围更大,例如机场内的飞机检测、港口内的舰船检测,根据影像分辨率的不同,检测所需图像数据相比自然图像更多、范围更大,如下图1。以高分系列卫星数据为例,高分二号空间分辨率最高达到0.8m,成像幅宽45km;高分六号空间分辨率为2m,成像幅宽800km。

 在给定大范围区域快速对感兴趣目标进行搜索任务时,一般最常见的思路就是“化整为块”,将大幅图像分块为不同的小块,块之间可以不重叠,也可以重叠,块的大小满足目标检测算法的输入要求,例如Faster RCNN的输入大小一般设置为1024*1024,对每个块进行检测,然后将结果进行拼接,输出检测信息及包含目标的图像块,经纬度坐标等等。

一、待处理的图像大小为43648*53759像素,空间分辨率为4.5m,覆盖面积约10559平方公里。分块的python代码如下(这里只考虑无重叠分块,有重叠后续再更新):大幅的遥感影像(TIF)格式裁剪到2048后,转化为png格式

参考博客

### 2.1 tif格式图像的切
'''- 切割环境:**python3、gdal、windows**
- **Gdal的安装:**
- **tif格式图像的切割代码:**'''
import os
import numpy
from osgeo import gdal
from PIL import Image
Image.MAX_IMAGE_PIXELS = None
class GRID:
    # 读TIF图像文件
    def read_img(self, filename):
        dataset = gdal.Open(filename)  # 打开文件

        im_width = dataset.RasterXSize  # 栅格矩阵的列数
        im_height = dataset.RasterYSize  # 栅格矩阵的行数
        im_geotrans = dataset.GetGeoTransform()  # 仿射矩阵
        im_proj = dataset.GetProjection()  # 地图投影信息
        im_data = dataset.ReadAsArray(0, 0, im_width, im_height)  # 将数据写成数组,对应栅格矩阵
        del dataset
        return im_proj, im_geotrans, im_data

    # 写文件,以写成tif为例
    def write_img(self, filename, im_proj, im_geotrans, im_data):
        # gdal数据类型包括
        # gdal.GDT_Byte,
        # gdal .GDT_UInt16, gdal.GDT_Int16, gdal.GDT_UInt32, gdal.GDT_Int32,
        # gdal.GDT_Float32, gdal.GDT_Float64

        # 判断栅格数据的数据类型
        if 'int8' in im_data.dtype.name:
            datatype = gdal.GDT_Byte
        elif '
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值