一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种针对卫星图像的异步道路信息提取系统及其控制方法与流程

2021-10-09 02:09:00 来源:中国专利 TAG:遥感 提取 图像 道路 视觉


1.本发明涉及遥感与机器视觉技术领域,具体为一种针对卫星图像的异步道路信息提取系统及其控制方法。


背景技术:

2.近年来,我国的基础建设力度持续增强,道路网络的变化速度也随之加快,传统的道路信息统计方式是人工测绘,然而随着近年来,国内外深度学习技术高速发展,计算机视觉技术在遥感领域的应用取得了较大突破。在道路提取方面,主要采用深度学习中的语义分割技术,语义分割算法使用卫星图像作为输入数据,输出能够表示道路信息的全像素掩膜。
3.传统人工道路测绘工作,需要测绘人员手动绘制,步骤繁琐,耗时较高,测绘工作依赖于人工,主要靠测绘人员使用和观察测绘仪器,从而得到道路的各种数据,这种方式的即时性较弱,新建成的道路信息不一定会及时添加到数据库中,而且出于种种原因,人工测绘的目标道路存在选择性,通常优先服务于城市间的公路、大路,很容易忽略乡间的土路、小路,另外,短时间大范围的测绘会给测绘人员带来极大的工作压力,难以长时间持久稳定地测绘,容易损失测绘精度。
4.使用计算机视觉算法取代或辅助人工测绘能够有效地提高道路提取的速度,并且保证得到的道路信息精度稳定,然而,一个完整的深度学习道路信息提取系统,往往需要分为数据读取、数据预处理、模型推理、模型推理结果后处理和推理结果矢量化等步骤,其中模型推理是指深度学习模型根据输入的卫星图片推理出道路掩膜的过程,是道路信息提取系统的核心算法,模型推理结果后处理阶段会利用算法将模型推理的结果进行优化,推理结果矢量化是为了将经过后处理的模型推理结果从位图形式转换成矢量信息的形式,位图形式的结果像素数和原图一致,但矢量信息仅需保留足以描述道路边界的点的位置信息,能够极大地节省外存设备的存储空间。
5.一次道路提取的各个步骤间可能存在速度差异,并且速度快慢受不同因素制约,例如数据读取阶段受制于计算机的硬盘读取速度,模型推理阶段受制于计算机显卡性能,推理结果矢量化阶段受制于计算机cpu性能,基于此种现象,对卫星图像按照各个阶段同步地进行处理会导致处理速度较慢,因此,需要引入异步的计算方式。
6.目前,道路信息的采集主要以人工采集为主,但随着我国基础设施建设能力增强,无论城市还是乡村的道路变化都十分迅速,而人工采集的方式,成本和耗时较高,往往无法及时更新道路信息数据库,使得数据库信息滞后于实际道路情况。
7.随着近年来深度学习技术的发展,利用计算机算法从卫星图像中提取高精度的道路信息已经可行,但仍然存在问题,一方面,按照一般的同步计算方式设计的道路信息提取系统,整体计算耗时过高,无法在有限的时间内完成大范围卫星图像的道路提取,另一方面,基于同步计算设计的道路提取系统,由于道路提取过程中各个步骤对计算资源的需求偏重不同,无法充分有效利用计算机资源。
8.考虑到人工道路测绘的种种弊端,以及现有基于同步计算的道路信息提取系统中存在的计算机资源利用率较低、处理速度慢的问题的种种弊端,提出了一个完整的自动道路信息提取系统,并且结合异步计算技术大幅提升了该系统的处理速度。


技术实现要素:

9.(一)解决的技术问题
10.为了解决上述技术问题,本发明提供一种针对卫星图像的异步道路信息提取系统及其控制方法,由以下具体技术手段所达成:
11.本发明为实现技术目的采用如下技术方案:一种针对卫星图像的异步道路信息提取系统,道路信息提取步骤包括数据预处理、模型推理、推理结果后处理、道路轮廓信息矢量化、道路中心线信息矢量化。
12.优选的,一种异步道路信息提取系统,所述异步道路信息提取系统融合了深度学习算法和异步计算结构,实现快速的道路信息提取,包括如下模块:卫星图像数据预处理模块;道路信息提取模块;模型推理结果后处理模块;道路轮廓矢量提取模块;道路中心线提取模块;计算资源监测模块;异步池化资源调度模块。
13.优选的,根据上述的一种针对卫星图像的异步道路信息提取系统,现提出一种针对卫星图像的异步道路信息提取的控制方法,其特征在于,包含以下步骤:
14.s1:根据计算资源监测模块提供的信息,在资源条件允许且存在待处理的卫星图像数据的情况下,异步池化资源调度模块调用卫星图像数据预处理模块,发起一个数据预处理任务,向数据预处理进程池中添加一个子进程;
15.s2:数据预处理进程池中的任意子进程执行完毕时,应向异步池化资源调度模块返回已处理的图像数据;
16.s3:根据计算资源监测模块提供的信息,在资源条件允许且存在已处理的图像数据的情况下,异步池化资源调度模块调用道路信息提取模块,发起一个道路信息提取任务,向道路信息提取进程池中添加一个子进程;
17.s4:道路信息提取进程池中的任意子进程执行完毕时,应向异步池化资源调度模块返回深度学习算法推理得到的道路信息掩码;
18.s5:根据计算资源监测模块提供的信息,在资源条件允许且存在模型推理得到的掩码的情况下,异步池化资源调度模块调用模型推理结果后处理模块,发起一个掩码后处理任务,向后处理进程池中添加一个子进程;
19.s6:后处理进程池中的任意子进程执行完毕时,应将结果保存至文件,并向异步池化资源调度模块返回经过后处理过的掩码;
20.s7:根据计算资源监测模块提供的信息,在资源条件允许且存在经过后处理过的掩码的情况下,异步池化资源调度模块调用道路轮廓矢量提取模块,发起一个道路轮廓矢量提取任务,向道路轮廓矢量提取进程池中添加一个子进程;
21.s8:道路轮廓矢量提取进程池中的任意子进程执行完毕时,应将结果保存至文件,并向异步池化资源调度模块返回成功执行的信号;
22.s9:根据计算资源监测模块提供的信息,在资源条件允许且存在经过后处理过的掩码的情况下,异步池化资源调度模块调用道路中心线提取模块,发起一个道路中心线提
取任务,向道路中心线提取进程池中添加一个子进程;
23.s10:道路中心线提取进程池中的任意子进程执行完毕时,应将结果保存至文件,并向异步池化资源调度模块返回成功执行的信号。
24.优选的,所述道路信息提取模块中包含d

linknet和aspp

linknet网络,还有如u

net、deeplab系列、ocrnet等深度学习分割网络可以代替。
25.优选的,所述异步池化资源调度模块中,本发明采用了进程池,在机器单个cpu核计算能力较强的情况下,采用线程池也可能得到这样的效果。
26.与现有技术相比,本发明提供了一种针对卫星图像的异步道路信息提取系统及其控制方法,具备以下有益效果:
27.1、该针对卫星图像的异步道路信息提取系统及其控制方法,将传统道路信息提取系统的不同步骤异步化,使得不同步骤间的平均等待时长被缩短,更加均衡且充分地利用了计算机的各项资源。
28.2、该针对卫星图像的异步道路信息提取系统及其控制方法,提出一种实时监测计算机各项资源占用状态,并以此进行资源调度的异步道路信息提取系统,由于在调度时有实时资源占用状态的先验信息,调度系统会优先执行对当前空闲资源依赖性更强的道路信息提取步骤,相比于预设固定进程池尺寸的简单异步道路信息提取系统,该系统的调度逻辑更加合理。
29.3、该针对卫星图像的异步道路信息提取系统及其控制方法,速度较快:相比于人工测绘和同步道路信息提取系统,该异步道路信息提取系统能够用更短的时间完成更大范围的道路信息提取任务;计算机利用率高:本发明具有异步进程池和基于计算机资源状态的调度机制,能够更加充分地利用计算机的各项资源;道路信息提取精度较高:该异步道路信息提取系统内置了tta、overlap和multiscale的模式,能够提取更高精度的道路信息。
附图说明
30.图1为本发明道路信息提取系统的模块示意图;
31.图2为本发明道路信息提取系统的流程示意图。
具体实施方式
32.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
33.一种针对卫星图像的异步道路信息提取系统,道路信息提取步骤包括数据预处理、模型推理、推理结果后处理、道路轮廓信息矢量化、道路中心线信息矢量化。
34.其中,一种异步道路信息提取系统,所述异步道路信息提取系统融合了深度学习算法和异步计算结构,实现快速的道路信息提取,包括如下模块:卫星图像数据预处理模块;道路信息提取模块;模型推理结果后处理模块;道路轮廓矢量提取模块;道路中心线提取模块;计算资源监测模块;异步池化资源调度模块;
35.卫星图像数据预处理模块:对原始卫星图像数据做处理。原始图像以tif文件格式
保存在特定目录下,且文件体积较大,通常单个文件体积在几十g到百g以上不等。由于图片体积较大无法直接全部读入服务器内存,该模块利用现有tif文件处理库模块,每次从原始图像中读取特定宽度和高度的数据,再将数据裁切成宽高均为1024的切片。由于原始数据值域位于0到255之间,预处理模块会将各个切片除以256,再乘以3.2,最后减去1.6,使得原始数据数值被等比映射到

1.6到1.6之间。再根据服务器环境进行一系列的数据结构转换,最终返回处理后的数据。
36.道路信息提取模块:道路信息提取模块的核心是深度学习网络模型,模型已经在道路数据集上训练完毕。道路信息提取时,可以选用不同的网络模型,包括d

linknet,aspp

linknet等,该模块执行推理任务时,首先初始化一个被选定的网络模型,然后为该模型读取预训练的模型参数。模型初始化完毕后,将准备好的数据切片分批次输入到模型中,单个批次的切片数目由异步池化资源调度模块调控。推理过程还可以选择开启tta、overlap和multiscale模式,用以提高推理精度,tta(test time augmentation,测试时增强)是指将切片进行旋转、翻转等变换后输入模型,再将推理经过经逆变换后融合,得到模型对不同变换作用下的切片的综合推理结果的过程,overlap(交叠)是指将相邻切片间的部分单独作为一个切片进行推理。再将推理结果与相邻切片的交叠部分融合,得到综合推理结果的过程,multiscale(多尺度)是指将输入数据经过放大或缩小变换为不同分辨率数据,经过推理后与原始尺寸推理结果融合,得到综合推理结果的过程。
37.模型推理结果后处理模块:利用数字图像处理技术,在推理结果的掩膜图像上先进行膨胀操作,再进行侵蚀操作。从而提高推理结果中的道路连通性,并消除部分噪点。
38.道路轮廓矢量提取模块:利用矢量化提取算法,从经过后处理的道路掩膜中提取出表示道路的多边形图像块,并使用以经纬度位置信息为坐标的点序列描述这些图像块,最终将这些点序列信息保存到shp格式的文件中。
39.道路中心线提取模块:利用数字图像处理中的骨骼提取算法,从经过后处理的道路掩膜中提取出道路中心线掩膜。再利用矢量化提取算法,从道路中心线掩膜中提取出表示道路中心线的以经纬度位置信息为坐标的点序列,最终将这些点序列信息保存到shp格式的文件中。
40.计算资源监测模块:在系统部署过程中,计算资源监测模块需要根据具体部署的服务器操作系统环境设定不同模式。以linux系统环境下的计算资源监测模块为例,系统初始化时,该模块初始化为linux模式,使用top、free等命令统计该服务器的硬件环境,包括cpu物理核数目、内存大小、显卡数目和显存大小等。系统运行过程中,该模块与主进程中的异步池化资源调度模块异步执行,也就是与主进程具有不同的执行周期。每当经过特定时间片后,该模块使用top、iostat和nvidia

smi等命令,向操作系统查询硬件状态信息,并从操作系统的返回结果中筛选cpu利用率、剩余内存、显卡利用率、显存状态、显卡温度、i/o读写速度等参数。最终将这些数据转发给主进程中的异步池化资源调度模块,以供调度模块判断是否可以开启新的进程。
41.异步池化资源调度模块:在系统初始化过程中,异步池化资源调度模块会执行一个测试任务,任务内容为处理一个体积较小的卫星图像数据,测试任务执行期间,异步池化资源调度模块会统计预处理、模型推理、后处理、道路轮廓矢量化和道路中心线矢量化着五个步骤分别对cpu、内存、gpu、显存、i/o的使用情况,以及各个步骤所花费的时长。然后为五
个步骤分别开辟进程池,运行过程中,每隔特定时间片,主进程中的异步池化资源调度模块会进行一系列的判断,决定是否可以发起新的进程。判断某个进程池是否可以添加新的进程,基于三个属性。第一,该进程池中的进程数目是否已经达到最大;第二,该进程池所对应的业务逻辑所需要的数据资源是否已经准备好;第三,服务器中剩余硬件资源是否足以支持该进程池发起一个新的进程。只有上述条件全部满足才能够发起新的子进程,否则需等到下一个时间片再次判断。
42.其中,一种针对卫星图像的异步道路信息提取的控制方法,包含以下步骤:
43.s1:根据计算资源监测模块提供的信息,在资源条件允许且存在待处理的卫星图像数据的情况下,异步池化资源调度模块调用卫星图像数据预处理模块,发起一个数据预处理任务,向数据预处理进程池中添加一个子进程;
44.s2:数据预处理进程池中的任意子进程执行完毕时,应向异步池化资源调度模块返回已处理的图像数据;
45.s3:根据计算资源监测模块提供的信息,在资源条件允许且存在已处理的图像数据的情况下,异步池化资源调度模块调用道路信息提取模块,发起一个道路信息提取任务,向道路信息提取进程池中添加一个子进程;
46.s4:道路信息提取进程池中的任意子进程执行完毕时,应向异步池化资源调度模块返回深度学习算法推理得到的道路信息掩码;
47.s5:根据计算资源监测模块提供的信息,在资源条件允许且存在模型推理得到的掩码的情况下,异步池化资源调度模块调用模型推理结果后处理模块,发起一个掩码后处理任务,向后处理进程池中添加一个子进程;
48.s6:后处理进程池中的任意子进程执行完毕时,应将结果保存至文件,并向异步池化资源调度模块返回经后处理过的掩码;
49.s7:根据计算资源监测模块提供的信息,在资源条件允许且存在经后处理过的掩码的情况下,异步池化资源调度模块调用道路轮廓矢量提取模块,发起一个道路轮廓矢量提取任务,向道路轮廓矢量提取进程池中添加一个子进程;
50.s8:道路轮廓矢量提取进程池中的任意子进程执行完毕时,应将结果保存至文件,并向异步池化资源调度模块返回成功执行的信号;
51.s9:根据计算资源监测模块提供的信息,在资源条件允许且存在经后处理过的掩码的情况下,异步池化资源调度模块调用道路中心线提取模块,发起一个道路中心线提取任务,向道路中心线提取进程池中添加一个子进程;
52.s10:道路中心线提取进程池中的任意子进程执行完毕时,应将结果保存至文件,并向异步池化资源调度模块返回成功执行的信号。
53.其中,所述道路信息提取模块中包含d

linknet和aspp

linknet网络,还有如u

net、deeplab系列、ocrnet等深度学习分割网络可以代替替。
54.其中,所述异步池化资源调度模块中,本发明采用了进程池,在机器单个cpu核计算能力较强的情况下,采用线程池也可能得到这样的效果。
55.尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜