You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
4.6 KiB
4.6 KiB
遥感影像处理工具集
PaddleRS在tools
目录中提供了丰富的遥感影像处理工具,包括:
coco2mask.py
:用于将COCO格式的标注文件转换为png格式。mask2shape.py
:用于将模型推理输出的.png格式栅格标签转换为矢量格式。mask2geojson.py
:用于将模型推理输出的.png格式栅格标签转换为GeoJSON格式。match.py
:用于实现两幅影像的配准。split.py
:用于对大幅面影像数据进行切片。coco_tools/
:COCO工具合集,用于统计处理COCO格式标注文件。
使用示例
首先请确保您已将PaddleRS下载到本地。进入tools
目录:
cd tools
coco2mask
coco2mask.py
的主要功能是将图像以及对应的COCO格式的分割标签转换为图像与.png格式的标签,结果会分别存放在img
和gt
两个目录中。相关的数据样例可以参考中国典型城市建筑物实例数据集。对于mask,保存结果为单通道的伪彩色图像。使用方式如下:
python coco2mask.py --raw_dir {输入目录路径} --save_dir {输出目录路径}
其中:
raw_dir
:存放原始数据的目录,其中图像存放在images
子目录中,标签以xxx.json
格式保存。save_dir
:保存输出结果的目录,其中图像保存在img
子目录中,.png格式的标签保存在gt
子目录中。
mask2shape
mask2shape.py
的主要功能是将.png格式的分割结果转换为shapefile格式(矢量图)。使用方式如下:
python mask2shape.py --srcimg_path {带有地理信息的原始影像路径} --mask_path {输入分割标签路径} [--save_path {输出矢量图路径}] [--ignore_index {需要忽略的索引值}]
其中:
srcimg_path
:原始影像路径,需要带有地理坐标信息,以便为生成的shapefile提供crs等信息。mask_path
:模型推理得到的.png格式的分割结果。save_path
:保存shapefile的路径,默认为output
。ignore_index
:需要在shapefile中忽略的索引值(例如分割任务中的背景类),默认为255。
mask2geojson
mask2geojson.py
的主要功能是将.png格式的分割结果转换为GeoJSON格式。使用方式如下:
python mask2geojson.py --mask_path {输入分割标签路径} --save_path {输出路径}
其中:
mask_path
:模型推理得到的.png格式的分割结果。save_path
:保存GeoJSON文件的路径。
match
match.py
的主要功能是在对两个时相的遥感影像进行空间配准。使用方式如下:
python match.py --im1_path [时相1影像路径] --im2_path [时相2影像路径] --save_path [配准后时相2影像输出路径] [--im1_bands 1 2 3] [--im2_bands 1 2 3]
其中:
im1_path
:时相1影像路径。该影像必须包含地理信息,且配准过程中以该影像为基准图像。im2_path
:时相2影像路径。该影像的地理信息将不被用到。配准过程中将该影像配准到时相1影像。im1_bands
:时相1影像用于配准的波段,指定为三通道(分别代表R、G、B)或单通道,默认为[1, 2, 3]。im2_bands
:时相2影像用于配准的波段,指定为三通道(分别代表R、G、B)或单通道,默认为[1, 2, 3]。save_path
: 配准后时相2影像输出路径。
split
split.py
的主要功能是将大幅面遥感图像划分为图像块,这些图像块可以作为训练时的输入。使用方式如下:
python split.py --image_path {输入影像路径} [--mask_path {真值标签路径}] [--block_size {图像块尺寸}] [--save_dir {输出目录}]
其中:
image_path
:需要切分的图像的路径。mask_path
:一同切分的标签图像路径,默认没有。block_size
:切分图像块大小,默认为512。save_folder
:保存切分后结果的文件夹路径,默认为output
。
coco_tools
目前coco_tools
目录中共包含6个工具,各工具功能如下:
json_InfoShow.py
: 打印json文件中各个字典的基本信息;json_ImgSta.py
: 统计json文件中的图像信息,生成统计表、统计图;json_AnnoSta.py
: 统计json文件中的标注信息,生成统计表、统计图;json_Img2Json.py
: 统计test集图像,生成json文件;json_Split.py
: 将json文件中的内容划分为train set和val set;json_Merge.py
: 将多个json文件合并为1个。
详细使用方法请参见coco_tools使用说明。