没有合适的资源?快使用搜索试试~ 我知道了~
自动数据集生成器:卫星图像机器学习应用程序
软件X 15(2021)100739原始软件出版物自动数据集生成器用于卫星图像的机器学习应用程序Alessandro Patianelli,Maria Pia Del Rosso,Silvia Liberata Ullo意大利贝内文托桑尼奥大学ar t i cl e i nf o文章历史记录:收到2020年收到修订版2021年3月22日接受2021年关键词:大数据机器学习Python任务自动化谷歌地球引擎Sentinel-1Sentinel-2Git-Huba b st ra ct在本文中,一个创新的工具,使研究人员能够自动创建合适的数据集的人工智能(AI)应用程序在地球观测(EO)的背景下,架构。该架构的两个版本已在Git-Hub上实现并提供,并具有适合非专家用户的特定图形用户界面(GUI)该工具被设计用于不同类型的传感器,但到目前为止,已经使用Sentinel-2和Sentinel-1数据进行了测试。我们坚信,该工具将对将人工智能应用于EO和遥感(RS)的研究人员非常有用。据我们所知,没有一个类似的免费工具,收集相同的好处。版权所有©2021作者。由爱思唯尔公司出版这是CC BY-NC-ND下的开放获取文章许可证(http://creativecommons.org/licenses/by-nc-nd/4.0/)。代码元数据当前代码版本v55用于此代码版本的代码/存储库的永久链接https://github.com/ElsevierSoftwareX/SOFTX-D-20-00065Code Ocean compute capsule none法律代码许可证MIT使用git的代码版本控制系统使用Python的软件代码语言、工具和服务编译要求,操作环境依赖python 3.6.8,numpy,rasterio,geetools,earthengine-api,global-land-mask,matplotlib,descartes,pandas,tk,scipy,imageio,pillow,scikit-image如果可用,链接到开发人员文档/手册https://github.com/Sebbyraft/SentinelDataDownloaderTool/blob/master/README.md问题支持电子邮件sebastianelli@unisannio.it软件元数据当前软件版本v2此版本可执行文件的永久链接https://github.com/Sebbyraft/SentinelDataDownloaderTool/blob/master/src_gui/main.py法律软件许可证MIT计算平台/操作系统Linux,OS X,Microsoft Windows安装要求依赖python 3.6.8,numpy,rasterio,geetools,earthengine-api,global-land-mask,matplotlib,descartes,pandas,pandas,tk,scipy,imageio,pillow,scikit-image如果可用,链接到用户例如:https://github.com/Sebbyraft/SentinelDataDownloaderTool/blob/master/README.md问题支持电子邮件sebastianelli@unisannio.it*通讯作者。电子邮件地址:sebastianelli@unisannio.it(Alessandro Patianelli),mariapia. unisannio.it(Maria Pia Del Rosso),ullo@unisannio.it(SilviaLiberata Ullo)。https://doi.org/10.1016/j.softx.2021.1007391. 动机和意义近年来,在遥感领域,大量的应用程序在其数据处理工作流程中受益,2352-7110/©2021作者。 由Elsevier B. V.发布。这是一篇CC BY-NC-ND许可证下的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。可在ScienceDirect上获得目录列表SoftwareX期刊主页:www.elsevier.com/locate/softxAlessandro Patitianelli、Maria Pia Del Rosso和Silvia Liberata Ullo软件X 15(2021)1007392[−][−]Fig. 1. 顶部:耗时的数据科学活动,底部:最不愉快的数据科学活动[6]。人工智能(AI)的引入,特别是机器学习(ML)技术[1]。然而,当使用ML时,足够大且具有统计代表性的数据集的可用性变得至关重要[2训练神经网络需要大量的数据,一个特定的应用程序,这个问题带来了与大数据相关的所有问题,以及它们的处理。收集、构建、组织和清理数据是一项非常耗时的操作,这导致研究人员感到沮丧,因为它被认为是数据处理中最不愉快的部分[ 6 ],如图所示。然而,这是在专注于自己工作中最有趣的部分之前的必要步骤。在本文中,作者的目的是提出一个自动化数据集构建器的架构,其几个模块的详细描述,以提供一个创新的工具,使研究人员能够创建合适的数据集,人工智能(AI)的应用在地球观测(EO)的背景下。烦人的和重复的操作通过软件以自动的方式以这种方式完成,研究人员可以节省时间进行其他更富有成效的活动。从对现有技术的分析来看,这种架构的可用性非常有限。其中的几个在文献[7,8]中出现,但所提出的新模型具有许多额外的优点:(1)全自动链处理,(2)从多个来源下载和组织时间序列数据的可能性,(3)为非专家用户提供图形用户界面(GUI),(4)特别是专家用户将其预处理技术添加到处理链的可能性,(5)Git-Hub上的可用性(开放访问)。2. 软件描述第2.1节给出了工具的一般描述。接下来,第2.2节提供了每个功能块当前实现的详细信息。2.1. 软件构架如前所述,所提出的架构描述了旨在以简单和自动的方式为ML应用程序构建合适数据集的工具。一组Python脚本允许用户自动从Google Earth Engine目录下载数据[9,10]。卫星数据集创建工具的功能图如图所示。2,其中包括几个功能块,每个功能块处理一个特定的任务。要设置的参数是图2中红色标记的参数,它们是:感兴趣区域的坐标、大小、日期、波段、图像数量。在接下来的小节中,将解释各种功能块。值得强调的是,在整个过程中,原始数据和处理后的数据都保存在单独的文件夹中,可以访问用户在必要时。2.2. 软件功能2.2.1. 发生器该生成器生成的点的数量可变,经度和纬度,分布在地球表面。在哨兵-1和哨兵-2(这两颗卫星的数据集创建示例将在下一节中提供)的情况下,在生成过程中引入了水掩蔽功能,以专注于土地应用[11]:水掩蔽。使用了一个掩码,它允许以一定的分辨率识别和界定地球上的富水区域;识别了两个类别,水(值1)和非水或土地(值0)。为了生成点,使用了具有均匀分布的两个随机变量,一个用于纬度值,另一个用于经度值。纬度被限制在56, 84的范围内,因为哨兵-2不会采集超过这些值的数据,而经度的范围被限制在180, 180 [12,13]。在每次迭代中生成一个点。 水遮罩用于检查生成的点是否落在地球表面上。如果是,它将被接受并保存在专用的CSV文件中,否则将被丢弃。用户可以定义要生成的点的数量和场景的大小。显然,场景的大小有一个限制,并且大小越大,整个下载过程。2.2.2. 下载器下载器负责使用先前生成的或由用户定义的坐标以及用户指定的时间间隔来下载图像。默认情况下,脚本将尝试下载一年的时间序列,间隔为每月。每个月下载三张Sentinel-1和三张Sentinel-2图像,选择这个数字是为了保证每个卫星至少有一张图像处于最佳光照、云层覆盖等条件下。该软件还旨在以分层文件夹结构组织数据,例如,对于一个区域,结构如下(Sentinel-1和Sentinel-2数据文件夹均包含在主文件夹中• Sentinel-1(或Sentinel-2)文件夹:– 场景1文件夹:一月文件夹Alessandro Patitianelli、Maria Pia Del Rosso和Silvia Liberata Ullo软件X 15(2021)1007393×=out图像=· 图像1· 图像2· 图像3二月文件夹- 是的. .– 场景2文件夹– . .图二、 卫星数据集创建工具的功能图。归一化实际上通常用于绘图,或者在AI应用程序的情况下,用于提高学习过程中的有效性[16通过选择“. TIFF”格式,专家用户可以决定绕过此步骤,甚至其他预处理阶段,以便获得原始数据,然后对其应用其定制的2.2.4. 吸尘器用户可以 定义每个卫星的 图像数量、日 期和波段。默 认的Sentinel-2波段是B4、B3、B2和QA 60(R、G、B和云遮罩),对于Sentinel-1,默认值为VV。下载器专门处理原始数据的下载,这就是为什么转换器块在下载器之后变得必要2.2.3. 转换器该转换器主要处理原始数据和应用- ING一些预处理技术,以产生作为输出容易处理的数据,见图。3 .第三章。对于Sentinel-1产品,转换器首先将数据转换或归一化,使其进入适合机器学习目的的范围,然后将灰度数据保存为png格式和数据类型uint 8(范围0,255)。对于Sentinel-2产品转换器将数据标准化,然后通过RGB波段构建彩色图像,然后将数据保存为数据类型为uint 8(范围为0,255)的png格式。转换数据的一个例子如图所示。3 .第三章。到目前为止,实现了三种最常见类型的归一化技术,即最小-最大、标准化和最大技术,由方程表示。其中,“图像输入”表示要被归一化的图像,而"图像输出“函数min、max、std和mean用于分别计算输入图像的最小值、最大值、标准差和平均值。这些是标量值,建立在所有图像值上。通过使用上述等式和标量,修改与输入图像相关的矩阵并计算新矩阵(输出图像)[14,15]。不幸的是,可能会发生一些图像被损坏或呈现过高的云覆盖率(在Sentinel-2的情况下),因此开发了更清洁的块来克服这些问题。对于每颗卫星,它主要是为每个地区和每个日期选择每月下载的三张图像中最好的图像。通过使用3个图像(默认值),清洁工为每个月选择最佳图像。事实上,下载的数据中可能存在一些“错误”。例如,一些Sentinel-1下载的数据显示一些黑色或灰色的缺失部分。 一些Sentinel- 2下载的数据也存在同样的问题,但在上瘾的情况下,可能会有大量云覆盖的图像。见图中所示的图像。 4作为一个例子对于缺失部分或云检测,软件使用阈值。值得一提的是,清洁器的设计,目前,只删除损坏或多云的数据,这是以自动的方式完成的。然而,想要删除具有其他类型特征的数据(例如在干燥地区采集的图像)的用户可以在手动模式下使用清洁器。手动清洁器允许用户在没有预定义设置的情况下执行与自动清洁器只有在半自动GUI模式下使用该工具时,此额外选项才可用在此操作结束时,如果选择默认设置,则数据集应由12张图像组成,每个月一张,每个卫星一张,每个区域总共24张图像,没有损坏或损坏的部分,除了一些不利的情况。默认情况下,每张图像的大小为1000 1000像素,所以从 每个图像可以获得许多较小的块。Image in− min(图像输入)输出max(Imagein)−min(Imagein)ImageImagein−mean(Imagein)std(图像输入)(一个)(二)2.2.5. 贴片提取器补丁提取器是一个附加组件,它从最终图像中提取较小的图像,以增加数据集中的样本在此步骤中,将使用图像输出图像=max(图像输入)(三)预览数据集。每个图像都包含来自特定地理区域的Sentinel-1和Sentinel-2数据的时间序列。这些图像以矩阵的形式组织在那里用户可以选择前面描述的转换模式或设置转换器,使其仅创建RGB图像并以“. tiff”格式保存Sentinel-1和Sentinel-2采集是提取的不同块,行上是随时间的不同采集。清洁后的每个Sentinel-1和Sentinel-2图像都可以执行PatchExtractor步骤,如图所示。 四、Alessandro Patitianelli、Maria Pia Del Rosso和Silvia Liberata Ullo软件X 15(2021)1007394图三. 转换器功能方案。见图4。 顶部:下载数据中的一些“错误"。哨兵-2错误的左上角和哨兵-2多云的顶部中心。哨兵1号在右上方错误。底部:清洁步骤后从图像中提取的补丁示例预览可用于验证该工具应用的所有步骤,必要时还可用于手动选择某些感兴趣的数据实际上,文件名包含信息数据集中图像的位置。然后,使用行数和列数,用户可以提取图像的特定部分。Alessandro Patitianelli、Maria Pia Del Rosso和Silvia Liberata Ullo软件X 15(2021)1007395× ××××2.2.6. 图形用户界面图五、 卫星数据下载工具的GUI。3. 说明性实例图形用户界面(GUI)可以由专家和非专家用户管理,实际上有两种模式可用。例如,专家用户可以通过在类似于WindowsNotebook的环境中运行脚本来使用该工具。非专家用户,而不是,可以运行图形用户界面(图形用户界面)直接通过使用界面图所示。 五、显然,GUI为专家提供的功能模式灵活性较低,但它更直观且易于使用。从图中可以看出。5,GUI呈现两个主要部分,在底部上具有START按钮的自动部分,并且在剩余部分上,半自动功能的可能性:自动:用户可以使用默认设置(在设置文件中列出),通过按START按钮运行全自动过程生成器,下载器,转换器,清洁,提取器:用户可以更改一些设置,并可以单独在Fig.的顶部。5、也有其他的选择无障碍给用户最有趣的是预览和世界地图。事实上,这是两个额外的组件,允许用户轻松地浏览整个数据集,并在世界地图上绘制生成的点。该工具和更详细的用户指南可以在相关的Git-Hub页面上找到[20]。在本节中,描述了使用所提出的工具实现数据集,以显示其有效性。在第一实验中我们的目标是创建一个由8000个Sentinel-1组成的最终数据集,8,000张Sentinel-2图像。在工具的输入中,数字等于2.000是固定的,因此该工具随机选择2,000个不同坐标的不同地理区域对于每个地理区域,以一个月的时间间隔自动采集4张Sentinel-1和4张Sentinel-2图像。之后,通过创建不同的补丁来选择较小的图像,如上面的子部分E中所强调的。补丁提取器,形状为256 × 256像素,导致Sentinel-1图像的矩阵具有256 × 256 1维,其中仅选择VV256三维,具有用于Sentinel-2图像的云掩模(QA 60波段)的额外矩阵,其中选择了三个R、G、B波段图像以分 层结 构组 织具有 两个 主文 件夹, 分 别用于 Sentinel-1 和Sentinel-2数据,称为sen 1和sen 2,每个主文件夹包含感兴趣区域的子文件夹,每个时间序列内有4个图像,如表1所示。请注意,图像路径还包含一个序列号(RGB_n),该序列号从1到数据集大小,在本例中为8.000。数据集的样本如图所示。6,其中显示了第一个时间序列。此外,所提出的工具也被用于创建Sentinel-2数据集,用于使用深度学习方法检测滑坡,如[21]所述,··Alessandro Patitianelli、Maria Pia Del Rosso和Silvia Liberata Ullo软件X 15(2021)1007396相异度=Ni=0#bin#bin所提出的工具将是非常有用的研究人员表1见图6。 已实现数据集的 示 例 -为Sentinel-1(顶部)和Sentinel-2(底部)创建的第一个时间序列。4. 影响数据集的层次结构。卫星时间序列图像路径Sentinel-1 1 sen1/zone_1/image_VV_0001_Jan_patch_0.tifsen1/zone_1/image_VV_0002_Feb_patch_0.tifsen1/zone_1/image_VV_0003_Mar_patch_0.tifsen1/zone_1/image_VV_0004_Apr_patch_0.tif. . .. . .. . .Sentinel-12000 sen1/zone_2000/image_VV_7997_Jan_patch_0.tifsen1/zone_2000/image_VV_7998_Feb_patch_0.tifsen1/zone_2000/image_VV_7999_Mar_patch_0.tifsen1/zone_2000/image_VV_8000_Apr_patch_0.tifSentinel-21 sen2/zone_1/image_VV_0001_Jan_patch_0.tifsen2/zone_1/image_VV_0002_Feb_patch_0.tifsen2/zone_1/image_VV_0003_Mar_patch_0.tifsen2/zone_1/image_VV_0004_Apr_patch_0.tif. . .. . .. . .Sentinel-22000 sen2/zone_2000/image_VV_7997_Jan_patch_0.tifsen2/zone_2000/image_VV_7998_Feb_patch_0.tifsen2/zone_2000/image_VV_7999_Mar_patch_0.tifsen2/zone_2000/image_VV_8000_Apr_patch_0.tif感兴趣的读者可以参考以获得进一步的信息,并看到相同的实际应用。在这种情况下,工具没有在随机选择模式下使用,但用户通过使用带有AOI坐标的CSV文件选择了感兴趣的区域。自动数据集构建器还有一个特殊的功能,这对ML应用程序非常有用。实现的数据集可以被分成两个不同的数据子集:用于训练和验证未来的网络,通过计算两个子数据集的累积直方图之间的相异性指数,如等式(1)所示(四):该工具背后的想法是为RS中的应用程序完全自动化创建数据集,以方便研究人员的工作,特别是在使用ML算法时。事实上,用户需要的必要交互很少。据我们所知,没有免费提供类似的工具,收集相同的好处。关于我们在文献[8,15,22]中发现的内容,所提出的架构将其本身作为尽可能通用的工具。它支持全自动链处理,以及下载和组织来自不同来源的时间序列数据的可能性;它是为专家和非专家用户设计的,通过提供一个GUI,适合非专家用户,并允许专家用户将其预处理技术添加到处理链;最后,它可以在开放访问平台Git-Hub上使用。该软件还包含其他功能,可以帮助用户导航到数据集,通过可视化轻松过滤数据,计算数据集统计数据,将数据集拆分为子数据集等。该工具的结构与其他处理模块高度集成,实际上每个组件都可以单独使用,并且可以按照用户定义的模块进行操作。两种不同的场景已经被用来测试该工具:一个是在全球范围内的随机采集,另一个是使用特定的坐标,通过证明其有效性。5. 结论在本文中,一个创新的工具,使研究人员能够自动创建合适的数据集的AI应用程序中的EO背景下,已提出的架构。该架构的两个版本已经在Git-Hub上实现并提供,并为非专家用户提供了特定的GUI目前,该工具仅支持来自Google Earth Engine的数据1 ∑N培训(一) −hv验证(一)Ni=0时箱数它已经在Sentinel-1和Sentinel-2上进行了全面测试(四数据未来的测试将包括谷歌提供的其他数据1∑Nh培训(一)地球引擎目录和新数据源的整合。在等式中,h训练和h验证分别是训练-计算和验证累积直方图,用特定数量的箱计算,N是用于计算直方图的图像的数量。通过多次重复该测试,每次改变训练和验证集中的样本,作者选择了最佳的训练和测试数据集,使相异性最小化。将ML应用于EO和RS。竞合利益作者声明,他们没有已知的竞争性财务利益或个人关系,可能会影响本文报告的工作Alessandro Patitianelli、Maria Pia Del Rosso和Silvia Liberata Ullo软件X 15(2021)1007397致谢这项工作由Sannio大学的研究人员在弗拉斯卡蒂的欧洲空间研究所(ESRIN)Φ-实验室进行[23]。特别感谢欧空局ESRIN Phi-Lab主任Pierre-Philippe Mathieu,共同集思广益和分享想法。引用[1] Del Rosso MP,Mr.人工智能应用于对地观测卫星遥感数据。由工程与技术学会 (IET)出版; 2021年。[2] 坎 普 斯 瓦 尔 斯 湾遥 感 数 据 处 理 中 的 机 器 学 习 。 2009IEEE InternationalWorkshop on Machine Learning for Signal Processing(IEEE信号处理机器学习国际研讨会)2009年,第1比6[3] Roh Y,Heo G,Whang SE.机器学习数据收集调查:大数据-人工智能集成视角。IEEE Trans Knowl Data Eng 2019. 一比一[4] BrownleeJ. 机 器 学 习 需 要 多 少 训 练 数 据 ? 2019 年 ,https://machinelearningmastery.com/much-training-data-required-机器学习/。[5] 机器学习精通- jason brownlee,数据集大小对深度学习模型技能和性能估计的影响。2019年,https://machinelearningmastery.com/impact-of-dataset-size-on-deep-learning-model-skill-and-performance-estimates/。[6] 北京大学出版社.清理大数据:最耗时,最不愉快的数据科学任务,调查说。2016,https://www.forbes.com/sites/gilpress/2016/03/23/data-preparation-most-time-consuming-least-enjoyable-data-science-task-survey-says/#11e80e496f63.[7] 李晓,李晓,李晓. sar-光学数据融合中用于深度学习的sen 1 -2数据集。ISPRSAnnals of Photogrammetry , Remote SensingandSpatial InformationSciences2018;4:141-6.[8] Ranghetti L,Boschetti M,Nutini F,Busetto L. '' sen 2 r '':一个R工具箱,用于自动下载和预处理Sentinel-2卫星数据。Comput Geosci2020;104473.[9] Google.谷歌地球引擎主页。2020年,https://earthengine.google。com.[10][10]张文辉,张文辉.谷歌地球引擎:人人适用的行星级地理空间分析。环境遥感2017;202:18-27.[11]Todd Karin,Global Land Mask,https://github.com/toddkarin/global-land-mask,python package-GitHub.[12] 欧洲航天局(欧空局)。Sentinel-2 -回访和覆盖范围。2020年,https://sentinel.esa.int/web/sentinel/user-guides/sentinel-2-msi/revisit-覆盖。[13] 欧洲航天局。哨兵-1-观察方案。2020年,https://sentinel.esa.int/web/sentinel/missions/sentinel-1/observation-scenario网站。[14]Patro S , Sahu KK.标 准 化 : 预 处 理 阶 段 。 2015 年 , arXiv 预 印 本 arXiv :1503.06462。[15]Al Shalabi L,Shaaban Z.数据挖掘预处理引擎规范化与偏好矩阵方法。计算机系统可靠性国际会议。2006年,p.207比14[16]Brownlee J.如何使用数据缩放提高深度学习模型的稳定性和性能。2019年,https://machinelearningmastery.com/how-to-improve-neural-network-stability-and-modeling-performance-with-data-scaling/。[17] 卢 卡 斯 湾 你 需 要 知 道 的 关 于 min-max 标 准 化 的 一 切 。 2020 ,https://towardsdatascience.com/everything-you-need-to-know-about-min-max-normalization-in-python-b79592732b79。[18]RaschkaS.关于特征缩放和标准化。2014年,sebastianraschka.com/Articles/2014_about_feature_scaling.html。[19]Du Y,Teillet PM,Cihlar J.多时相高分辨率卫星图像的辐射标准化与土地覆盖变化检测的质量控制。遥感环境2002;82(1):123-34. http://dx.doi.org/10的网站。1016/S0034-4257(02)00029-9。[20]Alzhetianelli , A.和 Del Rosso , M.P. 和 Ullo , S.L. ,Sentinel DataDownloaderToolGit-Hub存储库,https://github.com/Sebbyraft/SentinelDataDownloaderTool。[21]Ullo SL,Langenkamp MS,Oikarinen TP,Del Rosso MP,Matianelli A,Sica S等人,使用sentinel-2图像数据的卷积神经网络进行滑坡地质灾害评估。IGARSS 2019-2019 IEEE国际地球科学与遥感研讨会。2019年,第9646-9[22][1]龙永,夏国生,李胜,杨伟,杨明扬,朱XX,张丽,李丹。DiRS:遥感影像解译基准数据集的建立。2020,arXiv:2006.12485。[23]欧洲航天局。主页>实验室2020年,https://philab.phi.esa.int/。
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于Python和Opencv的车牌识别系统实现
- 我的代码小部件库:统计、MySQL操作与树结构功能
- React初学者入门指南:快速构建并部署你的第一个应用
- Oddish:夜潜CSGO皮肤,智能爬虫技术解析
- 利用REST HaProxy实现haproxy.cfg配置的HTTP接口化
- LeetCode用例构造实践:CMake和GoogleTest的应用
- 快速搭建vulhub靶场:简化docker-compose与vulhub-master下载
- 天秤座术语表:glossariolibras项目安装与使用指南
- 从Vercel到Firebase的全栈Amazon克隆项目指南
- ANU PK大楼Studio 1的3D声效和Ambisonic技术体验
- C#实现的鼠标事件功能演示
- 掌握DP-10:LeetCode超级掉蛋与爆破气球
- C与SDL开发的游戏如何编译至WebAssembly平台
- CastorDOC开源应用程序:文档管理功能与Alfresco集成
- LeetCode用例构造与计算机科学基础:数据结构与设计模式
- 通过travis-nightly-builder实现自动化API与Rake任务构建
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功