没有合适的资源?快使用搜索试试~ 我知道了~
软件X 22(2023)101340原始软件出版物HSIRST:基于网络的高光谱图像分类应用程序Zeno Dhaenea,Nina Zhaižakića,Shaoguang Huangb,Zhao,Xian Lic,Aleksandra Pižuricaaa比利时根特根特大学电信和信息处理系TELIN-GAIMb中国武汉中国地质大学计算机科学学院c哈尔滨工业大学电子与信息工程学院,中国哈尔滨ar t i cl e i nf o文章历史记录:2022年11月9日收到收到修订版,2023年1月22日接受,2023年保留字:高光谱图像高光谱图像分类分类工具遥感a b st ra ct最近基于深度学习的高光谱图像(HSI)分类模型在基准数据集上产生了近乎完美的分类精度然而,将它们应用于实际场景通常需要编程技能和机器学习专业知识,这使得这些算法的使用对于领域专家来说并不友好。在本文中,我们提供了一个基于Web的应用程序,HSIstory,用于HSI的分类,具有用户友好的图形界面,允许领域专家查看,标记和管理HSI,并在服务器上训练开箱即用的深度学习模型。HSI数据库支持不同的操作系统和不同的HSI数据格式。凭借先进的排队系统和网络界面,HSIcycle可由多个用户同时远程访问版权所有©2023作者。由爱思唯尔公司出版这是CC BY许可下的开放获取文章(http://creativecommons.org/licenses/by/4.0/)中找到。代码元数据当前代码版本v1.0用于此代码版本的代码/存储库的永久链接https://github.com/ElsevierSoftwareX/SOFTX-D-22-00367代码海洋计算胶囊法律代码许可证Apache许可证2.0使用git的代码版本控制系统软件代码语言,工具和服务使用Docker,Tensorflow,Python,.NET Core,C#,React,MongoDB编译要求,操作环境依赖性.NET Core 3.1,Python 3.7等。如果可用,链接到开发人员文档/手册https://github.com/zenodhaene/HyperspectralClassification/blob/master/docs/README.md技术支持电子邮件zeno. gmail.com1. 动机和意义气候变化及其带来的问题(自然灾害、海平面上升、北极海冰减少和粮食安全等)是21世纪最大的挑战之一。观察我们的世界如何变化的必要性已变得至关重要。使用高光谱成像的遥感提供了一种这样做的方法,通过捕获地球高光谱图像分类是遥感领域的一个研究热点。在过去的十年中,已经提出了许多分类方法[1*通讯作者。电子邮件地址:huangshaoguang@cug.edu.cn(黄绍光)。https://doi.org/10.1016/j.softx.2023.101340在标准基准学术数据集上进行评估和比较,如印第安松(1995年拍摄)[4],帕维亚大学(2001年)和萨利纳斯(1998年拍摄)。当前最先进的深度学习方法[5-然而,这种方法的影响似乎仍然局限于学术界。目前还不清楚这些模型将如何在真实世界的数据集上执行,例如NASA的EO1卫星[12]和欧洲航天局(ESA)的EO2传感器[13]捕获的数据这些数据集不包括标签,因此无法评估或训练学术模型。Andrew Ng等有影响力的深度学习研究人员认为,深度学习社区需要从以模型为中心的方法(对于固定数据集,我们试图找到2352-7110/©2023作者。 由Elsevier B.V.出版。这是一篇开放获取的文章,使用CC BY许可证(http://creativecommons.org/licenses/by/4.0/)。可在ScienceDirect上获得目录列表SoftwareX期刊主页:www.elsevier.com/locate/softxZeno Dhaene,Nina Zhaižakić,Shaoguang Huanget al.软件X 22(2023)1013402最好的模型)到以数据为中心的方法(重点也是改善数据)[14]。该论点源于这样一个事实,即在实际应用中,从应用于特定应用的基线最先进模型开始,以模型为中心的方法通常会提供几个千分之一的改进,而以数据为中心的方法可以为同一应用提高甚至超过10%的性能[14]。高光谱图像分类领域,鉴于在学术基准上获得了近乎完美的分数,对于这样的转变似乎已经成熟,我们尝试构建由深度学习模型和实际数据集组成的解决方案,这些解决方案将在现实世界的问题中表现良好本文中介绍的软件旨在通过允许深度学习专家和领域专家在现实世界中产生影响,来弥合向以数据为中心的方法的转变。 它提供了一个基于Web的用户友好的图形界面,允许领域专家添加,标记和管理HSI数据集,并在其上训练不同的开箱即用的深度学习模型。我们的软件可以读取多种数据集格式,因此来自不同数据集的高光谱图像可以以统一的方式上传,以便进一步标记和分类。此外,我们的软件可以在具有专用硬件(即GPU)的服务器上运行,并通过Web接口远程访问,允许用户同时使用系统。为了训练深度学习模型,我们实现了排队系统。此外,深度学习专家可以轻松地插入新的神经网络架构并更新现有架构。使用HSI数据集需要与使用常规图像数据集时不同的特殊属性。首先,HSI数据集有不同的格式,处理它们的工具需要能够读取这些不同的格式。其次,当领域专家标记图像时,他们能够看到图像的不同波段(通道),以便为图像的某个区域分配正确的标签通常是有用的(例如,在Xnm频段,玉米田看起来与麦田相同,但在Ynm频段,它们看起来非常不同)。由于这些原因,为HSI数据定制标签工具非常重要。有许多用于数据标记的工具,包括商业工具,如SuperAnnotate [15],Labelbox [16],Su-pervise.ly [17]和免费开源工具,如LabelImg[18],CVAT [19],labelme [20]和VoTT [21],但似乎没有一个具有高光谱图像的特殊功能关于深度学习的一体化工具,有一些商业工具,如Amazon SageMaker [22]和Google Cloud Platform[23],它们提供数据标签和神经网络训练和推理。但是,它们不是开源的,也不是免费供所有人使用。此外,它们是通用的深度学习工具,也不为HSI提供特殊功能,因此不支持HSI数据集的特殊格式,也不允许在标记过程中可视化高光谱图像的不同通道。Matlab允许读取HSI数据集,但它是一种商业、非开源工具,不允许数据标记[24]。另一个专门用于处理超光谱数据的工具(据我们所知),Hypernet [25](由欧空局开发),只专注于神经网络训练和推理,不支持数据标记。Priego和Duroy也发现缺乏公开可访问的标记HSI数据集,他们提出了一种用于生成合成高光谱图像的工具[26]。虽然合成数据集可以用作分类算法的近似评估工具,但它们不能完全取代真实标记数据集。2. 软件描述对高光谱图像进行分类-与在远程工作变得越来越普遍的时代,我们的应用程序在具有专用硬件的服务器硬件上运行,具有Web界面和排队系统,该系统以先到先得的方式处理模型训练请求,允许用户同时使用系统。2.1. 软件构架整个解决方案部署为微服务的集合,其中所有微服务都被编程为独立于操作系统。完整的架构图如图1所示。用户通过前端进入Web应用程序,可以通过专用网关服务到达前端。此服务还公开了.NET核心后端的端点,用户将使用该端点与数据库进行交互。作为数据库技术,我们使用MongoDB,因为GridFS扩展可以用来存储我们的数据集。由于MongoDB用于存储数据的非结构化文档,架构开发人员可以选择他们实现的参数以及他们报告的性能指标。Python后端服务不能从外部直接访问。相反,用户与.NET核心后端交互作为中介,以获得仅Python的功能,例如可视化数据集。Python后端由一个API、一个master和一个slave组成。API响应来自.NET核心后端的API请求,而主服务器不断检查数据库,以查看是否有新模型可以排队。模型以先到先服务的方式出队,并由主线程启动的单独的从线程进行训练这样,实现错误不会影响API的正常运行,并且主服务器可以重试或跳过失败的训练尝试。2.2. 软件功能HSIXTM提供了一个基于网络的图形界面,允许用户通过整个过程的分类高光谱图像,从上传数据集检查的结果。在本节中,我们将介绍一个专家在该领域可能遇到的典型工作流程,并描述软件功能。工作流程如图所示。 二、2.2.1. 搜索数据集用户首先选择并上传数据集。可以单独上传地面实况样本,从而可以上传未标记的数据集以及具有有限地面实况样本的数据集。数据集由Python后端读取,以查看它是否包含有效数据。目前,有两种已实施的数据格式:用于所有广泛使用的学术高光谱图像数据集的Mat-lab数据模型,以及地球观测1号卫星任务使用的数据模型。2.2.2. 手动指示地面实况样本数据集上传并验证后,用户可以检查它并为其命名。对于下一步,我们将区分有可用的地面实况数据并希望使用它的情况与没有标记的地面实况数据可用的情况在后一种情况下,用户需要自己创建地理类别,并指示属于每个类别的一些像素。这将作为一个起点,监督深Zeno Dhaene,Nina Zhaižakić,Shaoguang Huanget al.软件X 22(2023)1013403Fig. 1. 软件架构。图二. 工作流程图。学习建筑学,稍后会选择。如果地面实况数据可用,则可以跳过此步骤。在应用程序中创建的手动标签的示例可以在图中看到。3.第三章。应该注意的是,创建基础事实的数据标签完全取决于用户。我们的应用程序支持稀疏标签和密集标签。没有关于要标记的像素数量的建议。如果用户只标记了几个像素,则未标记的像素将标记为0。在实验中,这些未标记的像素不用于验证。2.2.3. 选择架构HSIDE软件最重要和最具影响力的功能之一是能够创建和测试不同的体系结构。通过这种方式,用户可以比较针对其特定数据集的不同技术,并查看哪种技术最好地解决了手头的问题。这对机器学习研究人员来说也是一个好处,因为他们可以直接看到不同的架构在相同参数的同一数据集上的行为。向用户呈现已经被创建并添加到应用程序中,允许专家用户和研究人员并行工作。2.2.4. 选择体系结构参数至少与选择合适的架构一样重要的是定义参数。在用户选择了一个体系结构后,他们会看到一系列的选项。这些架构参数由架构设计者定义,并在应用程序中自动可视化为滑块和输入字段。配置的模型参数的示例如图所示。 4为了创建一个新的架构,模型架构师必须定义两个强制性的输入:模型参数和架构的Python实现。这些必须在源代码本身中实现。实现细节在技术文档中,可在GitHub存储库中找到。通过在源代码中正确扩展必要的python类,模型选择和自定义参数将由前端自动可视化,Zeno Dhaene,Nina Zhaižakić,Shaoguang Huanget al.软件X 22(2023)1013404图3.第三章。在 W e b 应 用 程 序 中 手动标记地理类别。见图4。 模型参数选择页面。准备在应用程序中使用。此外,源代码中有几个示例可供参考。GPU/CPU硬件利用率是模型架构师的责任,因此在该特定架构的Python实现中实现。如果需要的话,解扰器可以包括硬件选择作为模型的参数。2.2.5. 训练模型有了数据集、架构及其参数,以及定义的监督式深度学习过程的初始起点,系统就拥有了训练预测模型所需的所有信息。一旦用户开始训练过程,它就被排队。用户可以在仪表板概述中看到队列状态以及当前运行模型的进度。由于模型是在单独的机器上的专用硬件上训练的,因此多个用户可以并行工作,并且可以在模型运行时继续工作仪表板的一个示例如图所示。 五、2.2.6. 检查结果当系统完成模型训练后,它最初会此外,用户可以检查所有经过训练的模型,并通过数据集,版本或架构对其进行过滤。点击以前的经过训练的模型会显示模型结果视图,图中显示了一个示例。六、在这里,用户可以检查最初定义的地面实况样本(手动定义或从地面实况数据中获取显示了整个高光谱图像的预测图,这允许用户直观地检查模型的预测能力的质量。与此分类图一起,像素数(或者如果指定了数据集的分辨率,则- 每个类别覆盖的显示(图)。7)。几个指标,如整体和平均准确度,以及计算和其他指标可以由架构的设计者添加(图8)。最后,创建一个混淆矩阵,可视化任何两个类是如何相互混淆的(图1)。 8)。2.2.7. 改进模型使用预测分类图的可视化和在其最终结果上计算的度量,用户可以进一步细化模型。他们可以选择不同的架构参数,例如增加模型运行的epoch数量,或者他们可以选择完全不同的架构。这样,用户可以选择他们是否想要以最大化特定数据集的预测能力,或者比较同一数据集上两种架构的预测能力。Zeno Dhaene,Nina Zhaižakić,Shaoguang Huanget al.软件X 22(2023)1013405图五. 应用程序的仪表板图六、模 型 性 能的详细视图。见图7。每个分类类别的计算面积。Zeno Dhaene,Nina Zhaižakić,Shaoguang Huanget al.软件X 22(2023)1013406图8.第八条。 模型参数和分类混淆图。使用混淆图,有时很明显,两个类很容易相互混淆。这可能是因为地面实况数据(用户为监督式深度学习架构提供的起点)的标签中存在错误,或者是因为缺乏训练数据。这两个问题都可以通过修改手动定义的地理类别来解决通过允许用户从已经训练的模型创建新模型,可以非常容易地进行任何这些修改类指示和体系结构参数在新的模型中被自动地携带,该新的模型被定义为模型的新的子版本通过过滤特定版本的完成模型,用户可以看到模型在不同子版本上的预测能力的进展。3. 说明性实例使用Web应用程序,用户可以创建一个模型,该模型将自动训练和分类高光谱图像。首先,我们探索了两个数据集:帕维亚大学数据集,它经常用于学术研究,以评估高光谱分类架构的性能,以及地球Ob-11 [12]数据集,这是NASA使用带有高光谱传感器的卫星这两个数据集正在训练的架构都包含在软件中。两个数据集都使用多流胶囊网络进行训练,该网络使用胶囊来学习两个高光谱图像的光谱带中的分层特征。对于地理数据集,可使用地面实况集来训练模型:它由9个地理类组成,每个类有150个随机选择的像素用于训练过程,每个类有另外150个像素用于验证,约为3.2%的可用地面实况数据,表明这种特定的架构即使在很少的训练数据下也表现良好分类结果如图所示。9.第九条。对于实际数据集,我们手动定义了两个类:土地和水。这张照片是在莫桑比克海岸附近的莫罗尼岛上空拍摄的。由于数据集分辨率低,没有足够的数据来检测更详细的类别,如城市或农业用地。高光谱图像的鸟瞰图如图所示。图10(a)中示出了预测分类图,图10(c)中示出了预测分类图。手动指示的训练样本如图10(b)所示,其中每个类别挑选50个随机样本用于分类过程,每个类别另外挑选50个用于验证。 为了检查架构的准确性,卫星视图和预测的分类图的叠加如图所示。10(d).4. 影响有了这个网络应用程序,高光谱分类研究最终可以大规模地应用于实际。由于对于用户友好的界面,不再需要编程和机器学习专业知识来对高光谱图像进行分类,这消除了进入的高障碍该软件可用于进一步推进高光谱图像分类领域,因为实际的未标记数据集的新问题无疑将浮出水面。这将需要该领域的专家和学术研究之间的密切合作,该软件促进和鼓励。Web应用程序也可以成为研究人员的宝贵工具,因为模型是单独训练的这使研究人员能够执行参数搜索以及审查如何选择训练样本的影响。研究人员还可以通过在后端创建新的python文件来轻松添加和比较不同的架构由于该体系结构实现了标准化接口,因此这是一个即插即用系统,允许加速开发。此外,该应用可以用于许多不同的研究领域,例如气候研究和农业研究,这两个领域肯定可以从大面积中的每平方米精确分类中受益。该软件被设计为尽可能通用,以增加其在许多研究领域的适用性。5. 结论我们介绍了HSI,这是一个用户友好的软件工具,允许没有编程技能和遥感机器学习专业知识的领域专家使用深度学习算法对HSI进行分类。HSIDE是一个基于Web的应用程序, 图形用户界面,这意味着它是独立于操作系统的,用户可以远程访问。用于深度学习的专用计算硬件(如GPU)可以部署在服务器上。由于开发的排队系统,多个用户可以同时访问Web应用程序,并为不同深度学习模型的训练制定计划。 HSIs还支持不同类型的HSI数据格式,并允许专家标记数据以训练深度学习模型。该工具通过使用深度学习分类器生成精确的分类结果,有助于准确解释大规模HSI。HSIs 可通过GitHubhttps://github下载。com/zenodhaene/HyperspectralClassification.Zeno Dhaene,Nina Zhaižakić,Shaoguang Huanget al.软件X 22(2023)1013407图9.第九条。帕 维 亚 大 学 卫星数据集人工标注数据的分类结果。竞合利益图10个。 数据集EO1的 分 类 结 果 ,带有人工标记的 数据。确认作者声明,他们没有已知的竞争性财务利益或个人关系,可能会影响本文报告的工作数据可用性我已经在附加文件步骤中共享了代码的链接这项工作部分得到了Flanders AI研究计划的支持,比利时授权号为 174 B 09119 , 部 分 由 比 利 时 Bijzon- der Onderzoeksfonds(BOF)在Grant BOF.24Y.2021下提供支持。0049.01及部分由中国地质大学(武汉)“中国地质大学奖学金”科研基金资助(项目编号:2022164)。Zeno Dhaene,Nina Zhaižakić,Shaoguang Huanget al.软件X 22(2023)1013408引用[1] Ghamisi Pedram , Yokoya Naoto , Li Jun , Liao Wenzhi , Liu Sicong ,PlazaJavier , etal.Advancesinhyperspectralimageandsignalprocessing:最先进技术的全面概述。IEEE Geosci Remote SensMag2017;5(4):37-78。[2] Alberto先生Savardi Mattia Baronio Annalisa Benini Sergio深度学习与高光谱图像分析:多学科综述。JImag2019;5(5):52.[3] 黄绍光,张红艳,皮茹里卡·亚历山大.基于自适应正则化字典学习的超光谱图像子空间聚类。IEEE TransGeosci Remote Sens 2022;60:1[4] 放大图片作者:Hsieh Pi-Fuei,Landgrebe David A.使用光谱空间标记、EM算法和留一协方差估计器的高光谱数据分析中的统计增强。在:成像光谱IV.卷 3438国际光学与光子学学会; 1998,p. 183比90[5] 周培成,韩俊伟,程恭,张宝昌。高光谱图像分类的学习紧凑和判别式堆叠自动编码器。IEEE Trans Geosci Remote Sens2019;57(7):4823-33.[6] Zhong Ping,Gong Zhiqiang,Li Shutao,Schönlieb Zhao-Bibiane.学习多样化 深 度 信 念 网 络 用 于 高 光 谱 图 像 分 类 。 IEEE Trans Geosci RemoteSens2017;55(6):3516-30.[7] 胡伟,黄扬宇,李伟,张帆,李恒超。用于高光谱图像分类的深度卷积神经网络。J Sens2015;2015.[8] 陈雨诗,蒋汉璐,李春阳,贾秀萍,加米西·佩德拉姆。基于卷积神经网络的高 光谱 图像 深度 特征 提取 与分 类。 IEEE TransGeosci Remote Sens2016;54(10):6232-51.[9] 李伟,吴国栋,张帆,杜谦。使用深像素对特征的高光谱图像分类。IEEETransGeosci Remote Sens2016;55(2):844-53.[10]徐永浩,张良培,杜波,张帆。用于高光谱图像分类的光谱-空间统一网络。IEEE Trans Geosci RemoteSens2018;56(10):5893-909.[11]杭人龙,刘青山,洪丹凤,加米西·佩德拉姆。用于高光谱图像分类的级联递归神经网络。 IEEETrans Geosci Remote Sens2019;57(8):5384-94.[12]美 国 国 家 航 空 航 天 局 ( NASA ) 。2021,[ 在 ─行]https://eospso.nasa.gov/missions/earth-observing-1。[2021年12月[13] 欧洲航天局(ESA)。2021年,[在线]https://sentinel.esa.int/web/sentinel/missions/sentinel-2。[2021年12月23日]。[14]安德鲁。MLOps:从以模型为中心到以数据为中心的AI。2021年[15]超级注释。2021年,[在线]https://www.superannotate.com/。(于二零二一年十二月二十三日查阅)。[16] 标签盒。2021年,[在线]https://labelbox.com/。(于二零二一年十二月二十三日查阅)。[17] Supervise.ly. 2021年,[在线]https://supervise.ly/。[2021年12月23日]。[18]标签Img. 2021年,[在线]https://github.com/tzutalin/labelImg。[2021年12月23日]。[19]CVAT。2021年,[在线]https://github.com/openvinotoolkit/cvat。[2021年12月[20] 标签。2021年,[在线]https://github.com/wkentaro/labelme。[2021年12月23日[21]沃特2021年,[在线]https://github.com/microsoft/VoTT。(于二零二一年十二月[22]亚马逊 SageMaker。2021年, [在线 ]https://aws.amazon.com/sagemaker/ 。[2021年12月23日]。[23]Google云平台。2021年,[在线]https://cloud.google.com/。[2021年12月23日[24]MATLAB软件2021年,[在线]https://mathworks.com/products/matlab.html。[2021年12月23日]。[25]超网络2021年,[在线]https://github.com/ESA-PhiLab/hypernet。[Ac-2021年12月23日[26]我是杜洛瓦·理查德Amigo:用于生成合成高光谱图像的工具。参加:第9期超光谱图像和信号处理:遥 感 演变讲 习 班。IEEE; 2018,p.1比5。
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 前端协作项目:发布猜图游戏功能与待修复事项
- Spring框架REST服务开发实践指南
- ALU课设实现基础与高级运算功能
- 深入了解STK:C++音频信号处理综合工具套件
- 华中科技大学电信学院软件无线电实验资料汇总
- CGSN数据解析与集成验证工具集:Python和Shell脚本
- Java实现的远程视频会议系统开发教程
- Change-OEM: 用Java修改Windows OEM信息与Logo
- cmnd:文本到远程API的桥接平台开发
- 解决BIOS刷写错误28:PRR.exe的应用与效果
- 深度学习对抗攻击库:adversarial_robustness_toolbox 1.10.0
- Win7系统CP2102驱动下载与安装指南
- 深入理解Java中的函数式编程技巧
- GY-906 MLX90614ESF传感器模块温度采集应用资料
- Adversarial Robustness Toolbox 1.15.1 工具包安装教程
- GNU Radio的供应商中立SDR开发包:gr-sdr介绍
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功