CN112396701A - 卫星图像的处理方法、装置、电子设备和计算机存储介质 - Google Patents

卫星图像的处理方法、装置、电子设备和计算机存储介质 Download PDF

Info

Publication number
CN112396701A
CN112396701A CN202011383771.5A CN202011383771A CN112396701A CN 112396701 A CN112396701 A CN 112396701A CN 202011383771 A CN202011383771 A CN 202011383771A CN 112396701 A CN112396701 A CN 112396701A
Authority
CN
China
Prior art keywords
building
sub
image
feature
area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011383771.5A
Other languages
English (en)
Inventor
单鼎一
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202011383771.5A priority Critical patent/CN112396701A/zh
Publication of CN112396701A publication Critical patent/CN112396701A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10032Satellite or aerial image; Remote sensing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30181Earth observation
    • G06T2207/30184Infrastructure

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Geometry (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Multimedia (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Graphics (AREA)
  • Image Processing (AREA)

Abstract

本申请提供一种卫星图像的处理方法、装置、电子设备和计算机存储介质,该方法包括,获取卫星图像;利用第一建筑物检测模型的语义分支,像素特征分支,高度分支和偏移量分支处理卫星图像,得到指示卫星图像中建筑物区域的第一图像特征,由卫星图像的每一个像素的像素特征组成的第二图像特征,包含卫星图像中每一个像素的高度特征的第三图像特征和包含每一个像素的偏移量特征的第四图像特征;根据第二图像特征将建筑物区域划分为建筑物对应的子区域;根据建筑物子区域内像素的高度特征和偏移量特征,确定建筑物的高度和偏移量,由此确定建筑物底部区域。本方案中多个分支可以对卫星图像并行处理,因此本方案相对于现有技术具有更高的处理效率。

Description

卫星图像的处理方法、装置、电子设备和计算机存储介质
技术领域
本发明涉及图像处理技术领域,特别涉及一种卫星图像的处理方法、装置、电子设备和计算机存储介质。
背景技术
目前,数字地图已经成为人们日常生活中常用的一种导航寻路工具。为了让用户更容易识别地图上的建筑物,现有的数字地图往往需要向用户展示建筑物对应的三维模型,为此需要在相应的卫星图像上检测出每个建筑物的顶部和底部。
现有技术中,可以利用实例检测模型在卫星图像中检测出每个建筑物的顶部,然后分别利用高度预测模型和偏移预测模型根据识别得到的每个建筑物的顶部预测出建筑物的高度和偏移量(偏移量指代卫星图像中建筑物底部相对于顶部的偏移量),由此确定出建筑物的底部。
现有技术中,高度预测模型和偏移预测模型需要依赖实例检测模型的输出,导致整体处理效率较低。
发明内容
基于上述现有技术的缺点,本申请提供一种卫星图像的处理方法、装置、电子设备和计算机存储介质,以提高对卫星图像的处理效率。
本申请第一方面提供一种卫星图像的处理方法,包括:
获取卫星图像;
利用预先构建的第一建筑物检测模型处理所述卫星图像,得到所述卫星图像的第一图像特征,第二图像特征,第三图像特征和第四图像特征;其中,第一建筑物检测模型包括语义分支,像素特征分支,高度分支和偏移量分支;所述第一图像特征由所述语义分支输出、且用于指示所述卫星图像中的建筑物区域;所述第二图像特征由所述像素特征分支输出、且包括所述卫星图像的每一个像素的像素特征,所述第三图像特征由所述高度分支输出、且包含所述卫星图像中每一个像素的高度特征,所述第四图像特征由所述偏移量分支输出、且包含所述卫星图像中每一个像素的偏移量特征;
在所述第二图像特征中确定所述第一图像特征所指示的建筑物区域内像素的像素特征,并以确定的所述第一图像特征所指示的建筑物区域内像素的像素特征为依据,对所述建筑物区域内的像素进行分类,得到所述建筑物区域被划分的多个子区域;其中,每一个所述子区域表征所述卫星图像中一个建筑物的顶部;
针对每一个所述子区域,根据所述第三图像特征包含的位于所述子区域内的像素的高度特征,确定所述子区域对应的建筑物的高度,并根据所述第四图像特征包含的位于所述子区域内的像素的偏移量特征,确定所述子区域对应的建筑物的偏移量;
针对每一个所述子区域,根据所述子区域、所述子区域对应的建筑物的高度和偏移量,确定所述子区域对应的建筑物的底部区域。
可选的,所述针对每一个所述子区域,根据所述子区域、所述子区域对应的建筑物的高度和偏移量,确定所述子区域对应的建筑物的底部区域之后,还包括:
针对每一个所述建筑物,对所述建筑物的子区域和底部区域进行矢量化处理,得到一组表征所述建筑物轮廓的轮廓矢量。
可选的,所述对所述建筑物的子区域和底部区域进行矢量化处理,得到一组表征所述建筑物轮廓的轮廓矢量,包括:
利用多边形拟合算法将所述建筑物的子区域和底部区域的边缘的多个像素确定为关键像素;
分别对位于所述建筑物子区域的关键像素和位于所述建筑物底部区域的关键像素进行矩形拟合,得到表征所述建筑物子区域的轮廓的第一矩形和表征所述建筑物底部区域的轮廓的第二矩形;其中,组成所述第一矩形的矢量和组成所述第二矩形的矢量作为所述建筑物的轮廓矢量。
可选的,所述对所述建筑物的子区域和底部区域进行矢量化处理,得到一组表征所述建筑物轮廓的轮廓矢量,包括:
利用多边形拟合算法将所述建筑物的子区域和底部区域的边缘的多个像素确定为关键像素;
将位于所述建筑物的子区域的每相邻的两个所述关键像素连接得到一个对应的参考矢量,并将位于所述建筑物的底部区域的每相邻的两个所述关键像素连接得到一个对应的参考矢量;
针对每相邻的两个参考矢量,若所述两个参考矢量的角度和90°的差值小于预设的第一阈值,调整所述两个参考矢量,使所述两个参考矢量的角度等于90°;
针对每相邻的两个参考矢量,若所述两个参考矢量的角度小于预设的第二阈值,将所述两个参考矢量合并为一个参考矢量;其中,经过调整和合并后的所有所述参考矢量,组成所述建筑物的轮廓矢量。
可选的,所述利用预先构建的第一建筑物检测模型处理所述卫星图像,得到所述卫星图像的第一图像特征,第二图像特征,第三图像特征和第四图像特征,包括:
利用所述第一建筑物检测模型的下采样模块对所述卫星图像进行下采样,得到所述卫星图像的下采样特征;
将所述卫星图像的下采样特征分别输入所述第一建筑物检测模型的语义分支,像素特征分支,高度分支和偏移量分支,得到所述语义分支输出的第一图像特征,所述像素特征分支输出的第二图像特征,所述高度分支输出的第三图像特征和所述偏移量分支输出的第四图像特征。
可选的,所述针对每一个所述子区域,根据所述子区域内所有像素的高度特征,确定所述子区域对应的建筑物的高度,并根据所述子区域内所有像素的偏移量特征,确定所述子区域对应的建筑物的偏移量,包括:
针对每一个所述子区域,将所述子区域内所有像素的高度特征的中位数,确定为所述子区域对应的建筑物的高度,并将所述子区域内所有像素的偏移量特征的中位数,确定为所述子区域对应的建筑物的偏移量。
可选的,所述针对每一个所述子区域,根据所述子区域内所有像素的高度特征,确定所述子区域对应的建筑物的高度,并根据所述子区域内所有像素的偏移量特征,确定所述子区域对应的建筑物的偏移量之前,还包括:
根据所述卫星图像包含的场景,将所述卫星图像划分为多个区块;其中,每一个所述区块均对应于一种所述场景;
针对每一个预先构建的第二建筑物检测模型,利用所述第二建筑物检测模型检测得到所述卫星图像中每一个建筑物的子区域;其中,所述第二建筑物检测模型的数量为至少一个;所述第一建筑物检测模型和每一个所述第二建筑物检测模型,均对应于所述卫星图像中的一种场景;
针对每一个所述区块,从所述区块中删除不与所述区块的场景相对应的建筑物检测模型检测得到的建筑物的子区域。
本申请第二方面提供一种卫星图像的处理装置,包括:
获取单元,用于获取卫星图像;
处理单元,用于利用预先构建的第一建筑物检测模型处理所述卫星图像,得到所述卫星图像的第一图像特征,第二图像特征,第三图像特征和第四图像特征;其中,第一建筑物检测模型包括语义分支,像素特征分支,高度分支和偏移量分支;所述第一图像特征由所述语义分支输出、且用于指示所述卫星图像中的建筑物区域;所述第二图像特征由所述像素特征分支输出、且包括所述卫星图像的每一个像素的像素特征,所述第三图像特征由所述高度分支输出、且包含所述卫星图像中每一个像素的高度特征,所述第四图像特征由所述偏移量分支输出、且包含所述卫星图像中每一个像素的偏移量特征;
分类单元,用于在所述第二图像特征中确定所述第一图像特征所指示的建筑物区域内像素的像素特征,并以确定的所述第一图像特征所指示的建筑物区域内像素的像素特征为依据,对所述建筑物区域内的像素进行分类,得到所述建筑物区域被划分的多个子区域;其中,每一个所述子区域表征所述卫星图像中一个建筑物的顶部;
第一确定单元,用于针对每一个所述子区域,根据所述第三图像特征包含的位于所述子区域内的像素的高度特征,确定所述子区域对应的建筑物的高度,并根据所述第四图像特征包含的位于所述子区域内的像素的偏移量特征,确定所述子区域对应的建筑物的偏移量;
第二确定单元,用于针对每一个所述子区域,根据所述子区域、所述子区域对应的建筑物的高度和偏移量,确定所述子区域对应的建筑物的底部区域。
可选的,所述处理装置还包括:
矢量化单元,用于针对每一个所述建筑物,对所述建筑物的子区域和底部区域进行矢量化处理,得到一组表征所述建筑物轮廓的轮廓矢量。
可选的,所述矢量化单元对所述建筑物的子区域和底部区域进行矢量化处理,得到一组表征所述建筑物轮廓的轮廓矢量时,具体用于:
利用多边形拟合算法将所述建筑物的子区域和底部区域的边缘的多个像素确定为关键像素;
分别对位于所述建筑物子区域的关键像素和位于所述建筑物底部区域的关键像素进行矩形拟合,得到表征所述建筑物子区域的轮廓的第一矩形和表征所述建筑物底部区域的轮廓的第二矩形;其中,组成所述第一矩形的矢量和组成所述第二矩形的矢量作为所述建筑物的轮廓矢量。
本申请第三方面提供一种电子设备,包括存储器和处理器;
其中,所述存储器用于存储计算机程序;
所述处理器用于执行所述计算机程序,具体用于实现本申请第一方面任意一项提供的卫星图像的处理方法。
本申请第四方面提供一种计算机存储介质,用于存储计算机程序,所述计算机程序被执行时,具体用于实现本申请第一方面任意一项所提供的卫星图像的处理方法。
本申请提供一种卫星图像的处理方法、装置、电子设备和计算机存储介质,该方法包括,获取卫星图像;利用第一建筑物检测模型的语义分支,像素特征分支,高度分支和偏移量分支处理卫星图像,得到指示卫星图像中建筑物区域的第一图像特征,由卫星图像的每一个像素的像素特征组成的第二图像特征,包含卫星图像中每一个像素的高度特征的第三图像特征和包含每一个像素的偏移量特征的第四图像特征;根据第二图像特征将建筑物区域划分为每个建筑物对应的子区域;根据建筑物子区域内所有像素的高度特征和偏移量特征,确定建筑物的高度和偏移量,然后由此确定建筑物底部区域。本方案中的多个分支可以并行地对卫星图像进行处理,因此本方案相对于现有技术具有更高的处理效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种卫星图像的处理方法的流程图;
图2为本申请实施例提供的一种建筑物检测模型的结构以及后处理流程的示意图;
图3为本申请实施例提供的一种建筑物的顶部区域和底部区域的示意图;
图4为本申请实施例提供的另一种卫星图像的处理方法的流程图;
图5为本申请实施例提供的又一种卫星图像的处理方法的流程图;
图6为本申请实施例提供的一种多模型融合算法的架构示意图;
图7为本申请实施例提供的卫星图像的处理方法对建筑物的检测效果示意图;
图8为本申请实施例提供的一种卫星图像的处理装置的结构示意图;
图9为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请提供一种卫星图像的处理方法,主要用于检测出卫星图像上显示的建筑物的顶部和底部,以便后续在基于卫星图像生成的数字地图上向用户展示对应的建筑物的立体模型。另外,在本申请其他实施例中,为了减少发送至客户端的地图数据的数据量,还可以对检测出来的建筑物进行矢量化处理,得到表征建筑物轮廓的轮廓矢量,当客户端需要显示建筑物的立体模型时,只需要将轮廓矢量发送至客户端,然后客户端基于轮廓矢量在显示屏上绘制出相应的立体模型即可。
本申请提供的卫星图像的处理方法,可以理解为人工智能领域中计算机视觉技术(ComputerVision,CV)在卫星图像上的应用。计算机视觉是一门研究如何使机器“看”的科学,即用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。
广义的计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术。
首先请参考图1,本申请实施例提供的卫星图像的处理方法,具体可以包括如下步骤:
S101、获取卫星图像。
数字地图的制作和更新都会用到卫星图像。卫星图像可以由卫星对地面上一定面积的区域拍摄后,通过天线发送至地面的服务器设备。
S102、利用预先构建的第一建筑物检测模型处理卫星图像,得到卫星图像的第一图像特征,第二图像特征,第三图像特征和第四图像特征。
请参考图2,本申请所应用的第一建筑物检测模型可以包括下采样模块,位于下采样模块之后的四个分支,分别是语义分支,像素特征分支,高度分支和偏移量分支,以上四个分支分别输出对应的图像特征,输出的图像特征经过聚类模块处理后,得到第一建筑物检测模型的检测结果。
步骤S102,相当于是将卫星图像输入至本申请的第一建筑物检测模型,从而获得第一建筑物检测模型的四个分支输出的对应的图像特征,其具体处理流程为:
卫星图像首先输入至第一建筑物检测模型的下采样模块,由第一建筑物检测模型的下采样模块对卫星图像进行下采样,得到卫星图像的下采样特征。
然后将卫星图像的下采样特征分别输入第一建筑物检测模型的语义分支,像素特征分支,高度分支和偏移量分支,下采样特征经过上述分支处理后,就得到对应的第一图像特征,第二图像特征,第三图像特征和第四图像特征。
其中,第一图像特征由语义分支输出,第二图像特征由像素特征分支输出,第三图像特征由高度分支输出,第四图像特征由偏移量分支输出。
语义分支用于区分卫星图像中的建筑物区域(前景区域)和非建筑物区域(背景区域),对应的,第一图像特征就是用于指示卫星图像中的建筑物区域的图像特征。具体的,第一图像特征可以是一个尺寸和卫星图像的尺寸一致的矩阵,矩阵中每个元素均对应于卫星图像的一个像素,每个元素的数值可以是1或0,若语义分支处理后判断某个像素位于建筑物区域,则将第一图像特征中该像素对应的元素的值设置为1,反之,若判断该像素位于非建筑物区域,则将对应的元素的值设置为0。
像素特征分支用于提取卫星图像中每一个像素的像素特征,相应的第二图像特征包括卫星图像的每一个像素的像素特征。一个像素的像素特征是一个可以反映该像素的像素值以及该像素邻近的其他像素的像素值的多维向量。
高度分支用于预测卫星图像中每个像素的相对高度(指卫星图像中像素作为位置相对于卫星图像中的地面的距离),对应的第三图像特征包含卫星图像中每一个像素的高度特征,这里的高度特征可以直接等于对应像素的相对高度,也可以是其他经过简单计算可以得到对应像素的相对高度的向量。
偏移量分支用于预测卫星图像中每个像素相对于地面偏移量,对应的第四图像特征包含卫星图像中每一个像素的偏移量特征。卫星在拍摄卫星图像时,其视角往往不垂直于地面,因此实际垂直于地面的物体在卫星图像中会发生倾斜,相应的这些物体顶部的像素就会相对于物体底部存在一定偏移,像素的偏移量就用于表征这一偏移的大小。和高度特征类似,这里的偏移量特征可以直接等于对应像素的偏移量,也可以是其他经过简单计算可以得到对应像素的偏移量的向量。
上述四个分支和下采样模块,均可以是由若干个卷积层以及其他对应的图像处理层组成的卷积网络结构。
S103、利用第一建筑物检测模型的聚类模块对位于建筑物区域内的像素进行分类,得到建筑物区域被划分的多个子区域。
其中,每一个子区域均表征卫星图像中一个建筑物的顶部。
在步骤S103中,聚类模块可以结合语义分支输出的第一图像特征和像素特征分支输出的第二图像特征进行上述分类。
首先,聚类模块可以根据第一图像特征的指示,在卫星图像中确定出建筑物区域和非建筑物区域,进而确定出卫星图像中需要进行分类的位于建筑物区域内的像素,进而在第二图像特征中确定出位于第一图像特征所指示的建筑物区域内像素的像素特征。
在此基础上,聚类模块可以以确定的所述第一图像特征所指示的建筑物区域内像素的像素特征为依据,采用密度聚类的方法对位于建筑物区域内的像素进行分类,得到建筑物区域被划分的多个子区域。
密度聚类是一种现有的聚类算法,其基本原理是,针对多个待分类的样本(在本申请中位于建筑物区域内的大量像素就是待分类的样本),根据每两个样本之间的特征距离的远近将这些样本划分为多个类别,一般特征距离较近的一批样本会被划分至同一类别特征距离较远的则划分至不同类别。这里的特征距离,是指两个样本对应的特征向量之间的距离(也可以理解为对应的两个特征向量的相似度),在本申请中,每两个位于建筑物区域内的像素的特征距离,就是上述第二图像特征中包含的,这两个像素的像素特征之间的距离(或者说相似度)。
通过密度聚类,聚类模块可以将位于建筑物区域内的像素划分为多个类别,最后,就可以将每一类别的一组像素所在的区域,确定为建筑物区域内的一个子区域,这个子区域相当于卫星图像中一个建筑物的顶部区域。换言之,经过步骤S103,聚类模块可以识别出位于建筑物区域内的哪些像素属于一个建筑物,哪些像素属于另一个建筑物。
S104、针对每一个子区域,根据第三图像特征和第四图像特征确定子区域对应的建筑物的高度和偏移量。
具体的,在步骤S104中,可以从第三图像特征中获取位于一个子区域内的像素的高度特征,根据这些高度特征确定这个子区域对应的建筑物的高度,同时可以从第四图像特征中获取位于这个子区域内的像素的偏移量特征,根据这些偏移量特征确定这个子区域对应的建筑物的偏移量。
其中,建筑物的高度,是指,卫星图像中该建筑物的顶部到该建筑物的底部之间的相对距离,建筑物的偏移量,是指,卫星图像中该建筑物的顶部相对于该建筑物的底部的偏移量。
步骤S104同样可以由本申请的第一建筑物检测模型的聚类模块实现。聚类模块在划分出每一个子区域后,可以针对每一个子区域,从第三图像特征中提取这个子区域内所有像素的高度特征,基于此确定该子区域对应建筑物的高度,并从第四图像特征提取这个子区域内所有像素的偏移量特征,基于此确定该子区域对应建筑物的偏移量。
可选的,当第三特征中每一个像素的高度特征,就等于该像素在卫星图像中的相对高度时,步骤S104中确定建筑物的高度的具体过程,可以是:
获取建筑物的顶部区域内所有像素的高度特征,将这些高度特征中的中位数确定为该建筑物的高度;
或者是,将这些高度特征的算术平均值确定为该建筑物的高度。
可选的,当第四特征中每一个像素的偏移量特征就等于该像素在卫星图像中的偏移量时,步骤S104中确定建筑物的偏移量的方法,可以是:
获取建筑物的顶部区域内所有像素的偏移量特征,将这些偏移量特征中的中位数确定为该建筑物的偏移量;
或者是,将这些偏移量的算术平均值确定为该建筑物的偏移量。
S105、针对每一个子区域,根据子区域、子区域对应的建筑物的高度和偏移量,确定子区域对应的建筑物的底部区域。
如图3所示,当卫星的视角完全垂直于地面时,卫星图像上显示的建筑物的顶部区域会和底部区域重合,此时建筑物的偏移量为0,但由于拍摄时卫星的视角的偏移,卫星图像上显示的子区域(即建筑物的顶部区域)相对于建筑物的底部区域之间会有一定的偏移,这种情况下,可以参考图3的示意图,步骤S103中确定的建筑物的顶部区域,建筑物的高度和偏移量,确定出建筑物的底部区域。
在卫星图像上确定出一个建筑物的顶部区域和底部区域后,后续在向用户展示对应区域的数字地图时,就可以根据顶部区域和底部区域,以及底部区域在地图上的相对位置,在数字地图上生成并展示对应建筑物的立体模型。这一技术为数字地图领域现有的技术手段,此处不再详述。
下面,具体说明本申请的第一建筑物检测模型的下采样模块和各个分支的结构和原理。
下采样模块,具体可以包括顺序排列的多个用于对卫星图像进行下采样的卷积层Convolution,位于多个卷积层之后的一个,归一化层Batch Normalization(BN)和一个激活层Relu组成,其中卷积层对卫星图像的基本纹理特征进行抽象化结合。归一化层会对卷积层输出的图像特征进行归一化正态分布处理。激活层则可以对输出的图像特征进行非线性映射,加强模型的泛化能力。下采样模块中,第一个卷积层的输入为卫星图像,最后一个卷积层的输出作为归一化层的输入,归一化层的输入作为激活层的输出,激活层的输出作为卫星图像的下采样特征分别输入至第一建筑物检测模型的四个分支,除第一个卷积层以外的每一个卷积层的输入均为前一个卷积层的输出。并且,下采样模块中前一个卷积层的尺寸大于后一个卷积层的尺寸,卫星图像逐一通过卷积层,相当于逐级被缩小。
下采样模块对卫星图像进行下采样处理,相当于是将卫星图像的尺寸缩小若干倍,例如,假设卫星图像原本的尺寸为M*N,下采样模块对卫星图像进行S倍的下采样处理,得到的下采样特征,相当于是尺寸为(M/s)*(N/s)的卫星图像。其中,下采样的倍数S由上述下采样模块中各个卷积层的尺寸决定。
下采样模块的作用在于,将原本较大尺寸的卫星图像缩小至一个较小的尺寸,适当的减小后续各个分支所需要处理的数据量,达到提高处理效率,减少处理时消耗的计算资源的目的。
进一步的,在本方案中,由于第一建筑物检测模型的四个分支共同使用下采样模块输出的下采样特征,只需要经过一次下采样处理就可以满足在卫星图像中检测建筑物的需求。而现有的技术中采用分别采用多个模型对卫星图像进行处理时,往往每个模型都需要单独对卫星图像进行下采样处理,因此本方案利用由前述四个分支组成的第一建筑物检测模型处理卫星图像,相对于现有技术,可以消耗更少的计算资源。
语义分支,如前文所述,主要用于对卫星图像进行前景(建筑物区域)和背景(非建筑物区域)的分割,语义分支的输入为前述下采样模块输出的卫星图像的下采样特征。语义分支可以采用特征金字塔结构(Feature Pyramid Networks,FPN),具体来说,语义分支包括顺序排列的多个反卷积层,每个反卷积层均用于对输入的图像特征进行反卷积(Deconvolution)操作,前一个反卷积层的尺寸小于后一个反卷积层的尺寸,除第一个反卷积层以外,每一个反卷积层均以前一个反卷积层的输出作为自身的输入,第一个反卷积层的输入为下采样特征,最后一个反卷积层的输出即为前述第一图像特征。下采样特征经过语义分支的各个反卷积层时,其尺寸逐层增大,最后输出的第一图像特征的尺寸和卫星图像原本的尺寸一致,上述逐层放大的语义分支和前面的逐层缩小的下采样模块组成一个U型网络结构(U-net)。
可选的,为了更好的融合多方面的图像特征,可以设计语义分支的每一个反卷积层的尺寸,均与下采样模块中的一个卷积层的尺寸一致,例如,可以设计语义分支的第一个反卷积层和下采样模块的最后一个卷积层的尺寸一致,语义分支的最后一个反卷积层的尺寸和下采样模块的第一个卷积层的尺寸一致,其他反卷积层和卷积层以此类推。
这样,每一个反卷积层的输入,既可以包括前一个反卷积层的输出,同时还可以包括下采样模块中,和前一个反卷积层尺寸相同的卷积层的输出。也就是说反卷积层可以将上述两类输入进行加和,并通过反卷积操作实现两类特征的融合。
本方案中,在构建语义分支时可以采用标准的交叉墒损失函数。语义分支的构建过程为,利用预先标注好前景区域和背景区域的多个样本图像输入至第一建筑物检测模型,然后将语义分支输入的第一图像特征所指示的前景区域和背景区域,与样本图像中的标注进行比对,根据两者的差异确定交叉熵损失函数的函数值,根据函数值更新语义分支的参数,重复上述过程直至最后两者的差异满足收敛条件,此时就完成语义分支的构建。
像素特征分支用于提取卫星图像每一个像素的像素特征,如前文,像素特征可以是一个N维的向量,向量的数值由对应的像素和临近的像素的像素值决定,向量的维数N则由像素特征分支的结构确定,一般的,N可以设置为8。像素特征分支的结构可以和前述语义分支的结构一致,即采用特征金字塔结构。并且,类似的,像素特征分支中每一个反卷积层的输入也可以同时包括前一个反卷积层的输出,和下采样模块中与前一个反卷积层尺寸相同的卷积层的输出。
在本方案中,像素特征分支提取每一个像素的像素特征是为了后续支持聚类模块进行分类,因此,在构建像素特征分支时可以采用聚类损失函数作为像素特征分支的损失函数。
像素特征分支的构建过程和前述语义分支的构建过程类似,首先产生多个标注好建筑物的顶部区域的样本图像,然后将这些样本图像输入中第一建筑物检测模型,从而获得像素特征分支输出的,每一个样本图像对应的第二图像特征,最后根据样本图像中标注好的顶部区域评估每一个样本图像对应的第二图像特征的类内聚合度损失和类间区别度损失,综合两种损失得到像素特征分支的损失函数的数值,以此为依据更新像素特征分支,通过重复上述过程完成对像素特征分支的构建。
偏移量分支,用于提取每一个像素的偏移特征,在本实施例中,一个像素的偏移特征,就是这个像素分别在X方向(水平方向)和Y方向(垂直方向)的偏移量。偏移分支的结构和语义分支的结构类型,均采用特征金字塔结构,并且,偏移分支的反卷积层同样可以融合前一反卷积层的输出和下采样模块中对应的卷积层的输出进行处理。
在构建偏移分支时,可以对样本图像按如下方式进行标注:
针对样本图像中属于建筑物的像素,通过对样本图像进行测量对应的建筑物的顶部相对于底部的偏移量,将所属的建筑物的偏移量作为对应像素的偏移量,针对样本图像中不属于建筑物的像素,直接将偏移量标注为0。
完成上述标注后,可以将样本图像输入第一建筑物检测模型,获得偏移量分支输出的第四图像特征,通过比对第四图像特征和前述对样本图像的标注结果确定偏移量分支的损失函数的函数值,进而根据该函数值更新偏移量分支的参数,重复上述过程已完成对偏移量分支的构建。
其中,偏移量分支所实现的图像处理任务,相当于是一个回归任务,因此偏移量分支的损失函数可以是二范数平方损失函数(也可以称为最小平方误差)。
高度分支,用于提取每一个像素的高度特征,在本实施例中,可以直接以像素所在位置在卫星图像中的相对高度作为高度特征。高度分支和前述几个分支的结构一致,均采用特征金字塔结构,同时每一个反卷积层的输入可以包括前一个反卷积层的输出和下采样模块中对应尺寸的卷积层的输出。
高度分支的构建过程和前述偏移量分支的构建过程类似,首先对样本图像进行高度标注,不属于建筑物的像素标注其高度为0,属于建筑物的像素将建筑物在卫星图像上的相对高度标注为像素的高度,完成标注后,根据高度分支输出的样本图像的第三图像特征和标注结果之间的差异确定高度分支的损失函数的数值,以此更新高度分支的参数,通过重复该过程完成高度分支的构建。
高度分支所实现的图像处理任务也是回归任务,高度分支的损失函数可以使用一范数损失函数(也可以称为最小绝对值偏差,或最小绝对值误差)。
本申请实施例提供的卫星图像的处理方法存在如下的有益效果:
第一方面,从步骤S102可以看出,本方案的第一建筑物检测模型中,提取高度特征和偏移量特征的高度分支和偏移量分支,可以和用于检测建筑物的顶部区域的语义分支和像素特征分支同时执行,而不需要依赖于语义分支和像素特征分支输出的图像特征,也不需要依赖于后续步骤S103中划分的顶部区域,这样,在计算资源允许的情况下,第一建筑物检测模型中的四个分支可以并行的执行,从而在同一时间内完成对卫星图像的建筑物的检测过程中的主要计算任务,大大的缩短了整个检测流程的耗时。
第二方面,本方案中高度分支和偏移量分支在提取每一个像素的高度特征和偏移量特征时,均是对卫星图像下采样后完整的下采样特征进行处理,也就是说高度分支和偏移量分支的处理过程均结合了卫星图像的全局的特征,尤其是会考虑卫星图像中各个建筑物的侧立面(也就是建筑物除底部和顶部以外的,垂直于地面的墙壁表面)的纹理特征,而现有技术中的高度模型和偏移量模型只会对检测得到的建筑物顶部区域进行分析,并未考虑到建筑物侧立面的纹理特征。因此,本方案中高度分支和偏移量分支输出的每个像素的高度特征和偏移量特征,能够比现有技术更准确的反映出对应的建筑物的高度和偏移量。
可选的,在服务器端确定出卫星图像上建筑物的顶部区域和底部区域之后,为了让客户端展示建筑物的立体模型,还需要将这些区域通过网络下发至客户端,如果直接将由像素组合成的建筑物的顶部和底部区域发送至客户端,将会占用较多的网络资源,传输速度慢,用户体验差,为此,需要将检测得到的顶部区域和底部区域进行矢量化,将阵列的像素组合成的区域转换为由一组表征区域轮廓的轮廓矢量,在客户端需要时可以直接将这些轮廓矢量下发至客户端,客户端在根据轮廓矢量在显示屏上重建出建筑物的顶部区域和底部区域,并进一步构建出建筑物的立体模型。
针对上述需求,本申请实施例又提供了一种卫星图像的处理方法,请参考图4,该方法可以包括如下步骤:
S401、获取卫星图像。
S402、利用预先构建的第一建筑物检测模型处理卫星图像,得到卫星图像的第一图像特征,第二图像特征,第三图像特征和第四图像特征。
S403、利用第一建筑物检测模型的聚类模块对位于建筑物区域内的像素进行分类,得到建筑物区域被划分的多个子区域。
S404、针对每一个子区域,根据第三图像特征和第四图像特征确定子区域对应的建筑物的高度和偏移量。
S405、针对每一个子区域,根据子区域、子区域对应的建筑物的高度和偏移量,确定子区域对应的建筑物的底部区域。
上述步骤S401至步骤S405的具体执行过程和前述实施例中步骤S101至步骤S105一致,此处不再详述。
S406、对建筑物的子区域和底部区域进行矢量化处理,得到一组表征建筑物轮廓的轮廓矢量。
可以理解的,步骤S406可以针对卫星图像中检测出来的每一个建筑物执行,从而获得卫星图像中每一个建筑物的轮廓矢量。
步骤S406的具体执行过程可以包括:
首先,利用多边形拟合算法将建筑物的子区域和底部区域的边缘的多个像素确定为关键像素。这里的多边形拟合算法,可以是相关的现有技术中成熟的算法,例如,可以采用Opencv(一种公开发行的,跨平台的计算机视觉和机器学习软件库)中现有的多边形拟合算法approxPolyDP()(Opencv中现有的一种函数)实现上述确定关键像素的步骤;
相比于自行编写并实现多边形拟合算法,现有的多边形拟合算法已经经过大量用户使用并检验,其处理效率和准确度均会优于自行开发的多边形拟合算法,因此在步骤S406中,一般可以采用上述approxPolyDP()函数更快更好的确定出关键像素;
确定出关键像素后,可以直接将每两个相邻的关键像素连接成一条边(相当于一个矢量),全部连接完成后,这些位于建筑物的顶部区域和底部区域的边缘的边就相当于该建筑物的轮廓矢量。
但是,上述多边形拟合算法确定的关键像素直接连接成的这些矢量,往往和真实的建筑物的轮廓存在一定偏差,例如,真实的建筑物的轮廓一般是矩形或者直角的多边形的轮廓,而直接将关键像素连接的矢量组合成的轮廓则可能出现其他形状,因此,可以在确定关键像素后,通过如下的方法对关键像素进行优化:
第一方面,考虑到大多数建筑的轮廓一般是标准的矩形(例如小区内的居民楼,大型仓库等),可以分别对位于建筑物顶部区域的关键像素和位于建筑物底部区域的关键像素进行矩形拟合,得到表征建筑物的顶部区域的轮廓的第一矩形,和表征建筑物的底部区域的轮廓的第二矩形,拟合完成后,组成第一矩形的四条边和组成第二矩形的四条边,就相当于一组表征该建筑物的轮廓的轮廓矢量。
第二方面,除了常见的简单的建筑物以外,还有部分建筑物的轮廓不是简单的矩形轮廓,而是较为复杂的多边形轮廓,如L型,凹形,凸型,但是这些多边形轮廓中相邻的边之间的角度一般也均为直角(即90°的角),并且很少出现角度过小的锐角。
针对这类建筑物可,可以将位于建筑物的子区域的每相邻的两个关键像素连接得到一个对应的参考矢量,并将位于建筑物的底部区域的每相邻的两个关键像素连接得到一个对应的参考矢量;
获得参考矢量后,考虑到大多数的角度均为直角,可以逐一识别每相邻的两个参考矢量之间的角度,若两个参考矢量之间的角度接近90°(即两个参考矢量之间的角度和90°之间的差值小于预设的第一阈值),例如,两个参考矢量之间的角度在80°至100°这一范围内,可以认为此处真实的角度就是90°,当前的角度是由于多边形拟合算法的误差导致,因此可以调整这两个参考矢量,具体来说可以调整这两个参考矢量起点和终点的像素,使得调整后的这两个参考矢量的角度等于90°。上述处理过程称为参考矢量的直角化。
完成直角化之后,可以进一步识别每相邻的两个参考矢量的角度是否小于预设的第二阈值,每识别到相邻的两个参考矢量的角度小于预设的第二阈值(例如,小于30°),在可以认为此处为多边形拟合算法的误差导致,可以直接将这两个参考矢量合并为一个参考矢量。这一处理过程称为角度优化。
一种可选的合并方式是,针对三个依次连接的参考矢量(记为矢量A,B,C),识别出矢量A和矢量B的角度小于第二阈值之后,可以删除矢量B,然后将调整矢量A和矢量C的长度和方向,使得原本和矢量B连接的矢量A和矢量C直接连接到一起。
经过上述调整其中,经过调整和合并(即经过直角优化和角度优化)后的所有参考矢量,组成建筑物的轮廓矢量。
识别复杂的多边形轮廓的建筑物的方法可以是,在采用第一方面的优化方法进行矩形拟合时,若发现对某个建筑物拟合得的的矩形轮廓和大多数关键像素的位置之间具有较大的偏差,即矩形轮廓不能在可接受的误差范围内贴近关键像素的分布情况,则可以认为该建筑物具有复杂的多边形轮廓。
第三方面,第三方面的优化过程称为压盖检测过程,该过程可以在上述第一方面或第二方面的优化过程完成后对轮廓矢量进行进一步优化。
具体来说,通过多边形拟合确定关键像素并进行优化之后,轮廓矢量所描绘的建筑物轮廓可能发生压盖问题。压盖问题是指,建筑物底部区域的轮廓和水域(包括但不限于河流,湖泊等)的轮廓相交,以及建筑物底部区域的轮廓和公路的轮廓相交。
存在压盖问题的地图向用户展示时,看起来就像是建筑物的一部分建在水域或公路上,显然这种现象是错误的,因此,需要对前面产生的轮廓矢量进行检测,判断每一组轮廓矢量是否存在压盖问题,若检测到任意一组轮廓矢量存在问题,则需要对这一组轮廓矢量中各个矢量的起点和终点的位置进行调整,以消除压盖问题。
通过上述多边形拟合和多方面的优化后,可以按照对应企业的地图数据规范对获得的轮廓矢量进行数据标准化处理,从而将每一组轮廓矢量转换为标准格式的矢量数据。客户端需要展示建筑物的立体模型时,可以从服务器获得这些标准格式的矢量数据,然后在显示屏上绘制相应的轮廓矢量并适当的进行填充,从而在显示屏上展示出建筑物的立体模型。
一方面,本实施例提供了从建筑物的检测到建筑物的矢量化的完整的卫星图像处理流程,可以从任意一张卫星图像中检测并提取出建筑物的轮廓矢量,为后续下发给客户端进行建筑物立体模型的展示提供支持,整个流程完全自动化进行,无需人工处理,具有较高的处理效率。
另一方面,由于将表征建筑物的顶部区域和底部区域转换为了相应的轮廓矢量,在向客户端下发数据时,只需要传递对应的轮廓矢量的起点的像素和终点的像素的坐标即可,极大地减少了服务器向客户端下发的地图数据的数据量,节约服务器和客户端之间的网络资源。
可选的,考虑到一个卫星图像可能包含多种不同的场景(这里的场景包括但不限于,包含大量高层楼宇的城市商业中心,大量仓库和厂房构成的工业园区,建筑物低矮且分布规律的别墅区,建筑物低矮且分布不规律的村落,几乎没有建筑物的农田等),用仅仅用一个建筑物检测模型对所有场景下的建筑物进行检测,得到的检测结果可能准确度较低,因此,本申请实施例还提供了一种卫星图像的处理方法,请参考图5,该方法可以包括如下步骤:
S501、获取卫星图像。
S502、利用预先构建的第一建筑物检测模型处理卫星图像,得到卫星图像的第一图像特征,第二图像特征,第三图像特征和第四图像特征。
S503、利用第一建筑物检测模型的聚类模块对位于建筑物区域内的像素进行分类,得到建筑物区域被划分的多个子区域。
步骤S501至步骤S503的具体执行过程和前述步骤S101至步骤S103一致,不再详述。
S504、根据卫星图像包含的场景,将卫星图像划分为多个区块。
其中,每一个区块均对应于一种场景。例如,将卫星图像中的城市商业中心划分为一个区块,将城市外的村落划分为一个区块,将城市居住区的所有小区划分为一个区块,等等。
步骤S504可以利用预先构建的区块分割模型实现。将卫星图像输入至区块分割模型之后,区块分割模型可以绘制出每个区块的边界,并配置对应的标签,由此实现区块的划分。
S505、针对每一个预先构建的第二建筑物检测模型,利用第二建筑物检测模型检测得到卫星图像中每一个建筑物的子区域。
其中,第二建筑物检测模型的数量为至少一个,一般可以有两个或以上;第一建筑物检测模型和每一个第二建筑物检测模型,均对应于卫星图像中的一种场景。
和前文一致,每一个建筑物的子区域,就是每一个建筑物的顶部区域。步骤S505中的第二建筑区检测模型,是指,与前述图1和图4对应的实施例中的第一建筑物检测模型不同的其他建筑物检测模型。
这里的不同,是指,用于检测的对象不同,例如,前述第一建筑物检测模型可以是专门利用商业中心区域的样本图像训练得到的,用于识别商业中心的建筑物的顶部区域的建筑物检测模型,而步骤S505中的第二建筑物检测模型,可以包括利用村落区域的样本图像训练得到的建筑物检测模型1,利用工业园区的样本图像训练得到的建筑物检测模型2等。
除了检测的对象不同以外,第二建筑物检测模型和前述第一建筑物检测模型的架构可以相同,也可以不同。例如,第二建筑物检测模型也可以采用前述第一建筑物检测模型的多分支和U型网络等结构,另外,第二建筑物检测模型也可以采用现有的mask-rcnn,centermask(两者均为现有的神经网络架构)模型,或者可以采用传统机器学习算法构建相应的模型,此处不做限定。
可以看出,第一建筑物检测模型,和每一个第二建筑物检测模型,均利用特定场景的样本图像训练得到,因此这些建筑物检测模型在识别卫星图像中相应场景的区块的建筑物时其识别结果会更加准确。
S506、针对每一个区块,从区块中删除不与区块的场景相对应的建筑物检测模型检测得到的建筑物的子区域。
步骤S506可以理解将前述包括第一建筑物检测模型和第二建筑物检测模型在内的多种建筑物检测模型检测得到的建筑物的子区域融合的一种方法。
如前文所述,本实施例中涉及的每一个建筑物检测模型,均是利用特定场景的样本图像训练得到的建筑物检测模型,换言之,每一个建筑物检测模型均对应于训练阶段使用的样本图像所属的那种场景。例如,用商业中心的样本图像训练的第一建筑物检测模型对应场景为商业中心,用工业园区的样本图像训练的第二建筑物检测模型对应工业园区。任意一个建筑物检测模型在其对应场景的区块中的检测结果并其他建筑物检测模型的检测结果的准确度更高。
比如,在工业园区场景的区块中,和工业园区对应的检测模型检测到的建筑物的顶部区域,显然比和村落对应的检测模型检测到的建筑物的顶部区域具有更高的准确度。
因此,在步骤S506中,可以针对每一个区块,保留该区块所属的场景对应的检测模型检测出来的子区域,并删除除该区块所属的场景对应的检测模型以外的其他检测模型检测出来的子区域。结合上述例子,比如在属于工业园区的区块中,保留工业园区对应的检测模型检测到的子区域,而删除村落对应的检测模型、商业中心对应的检测模型等不对应于工业园区的检测模型检测出的子区域。
通过这种方式,本方案可以将利用不同样本训练得到的特定的检测模型用于不同场景的区块进行针对性的检测,最后通过择优策略将多个检测模型的检测结果融合到一起。
经过步骤S506之后,可以在卫星图像上确定出各个建筑物的顶部区域,这之后可以沿用前述第一建筑物检测模型输出的第三图像特征中各像素的高度特征,以及第四图像特征中各像素的偏移量特征,为各个建筑物确定高度和偏移量,进而确定对应的底部区域,也就是执行后续步骤S507和步骤S508。
通过步骤S504至步骤S506,本实施例实质上提出了一种基于前述实施例中的第一建筑物检测模型的多模型融合算法,该算法的架构如图6所示,
如图6所示,一种可选的多模型融合算法可以包括三个检测模型和一个分割模型,这三个检测模型中的一个为前述实施例的第一建筑物检测模型。应用多模型融合算法时,可以将卫星图像同时输入到每个检测模型和分割模型中,分割模型用于执行前述步骤S504,在卫星图像中划分出不同场景的多个区块,同时每个检测模型用于执行步骤S505,分别在卫星图像中检测出各个建筑物的顶部区域。最后,每个检测模型的顶部区域检测结果,和分割模型的区块分割结果一并进入多模型融合算法的模型融合环节(相当于步骤S506),在模型融合环节将每一个区块中和该区块场景对应的检测模型检测的子区域保留,而删除其他子区域。
多模型融合环节结束后,就可以进入后续确定建筑物的底部区域,以及矢量化等环节,最终获得卫星图像中各个建筑物的轮廓矢量,这些环节的具体处理过程和前述实施例中对应步骤一致,不再详述。
S507、针对每一个子区域,根据第三图像特征和第四图像特征确定子区域对应的建筑物的高度和偏移量。
S508、针对每一个子区域,根据子区域、子区域对应的建筑物的高度和偏移量,确定子区域对应的建筑物的底部区域。
步骤S507和步骤S508的具体执行过程,和前述步骤S104和步骤S105一致,不再详述。
可选的,步骤S508执行结束后,也可以执行如图4对应的实施例中的矢量化处理的过程,具体处理过程和步骤S406一致,不再详述。
在不同场景下拍摄得到的卫星图像,其背景的特征和建筑物的特征均具有一定的差别,使用单一的建筑物检测模型对所有场景的建筑物进行检测,可能导致这个建筑物检测模型不能很好的识别所有场景下的特征。而本方案对建筑物检测模型的功能进行限制,使得每一个建筑物检测模型只用于检测特定场景的图像中的建筑物,这样可以提高每一个建筑物检测模型在其对应的特定场景中检测出的建筑物的准确度,最后再通过区块分割模型分割出的不同场景的区块,将多个建筑物检测模型在对应场景下准确度较高的检测结果合并,通过这种方式,既能够确保充分检测出包含多种场景的卫星图像中的每一处建筑物,又能够进一步提高最终的检测结果的准确度。
图7为本申请实施例提供的卫星图像的处理方法在卫星图像中的检测结果的示意图。其中左侧的箭头指示的各个矩形框表示在卫星图像中检测得到的建筑物的顶部区域,右侧的箭头指示的各个矩形框表示在卫星图像中通过高度和偏移量确定的建筑物的底部区域。
结合本申请任一实施例所提供的卫星图像的处理方法,本申请实施例还提供一种卫星图像的处理装置,请参考图8,该装置可以包括如下单元:
获取单元801,用于获取卫星图像。
处理单元802,用于利用预先构建的第一建筑物检测模型处理卫星图像,得到卫星图像的第一图像特征,第二图像特征,第三图像特征和第四图像特征。
其中,第一建筑物检测模型包括语义分支,像素特征分支,高度分支和偏移量分支;第一图像特征由语义分支输出、且用于指示卫星图像中的建筑物区域;第二图像特征由像素特征分支输出、且包括卫星图像的每一个像素的像素特征,第三图像特征由高度分支输出、且包含卫星图像中每一个像素的高度特征,第四图像特征由偏移量分支输出、且包含卫星图像中每一个像素的偏移量特征。
分类单元803,用于在第二图像特征中确定第一图像特征所指示的建筑物区域内像素的像素特征,并以确定的第一图像特征所指示的建筑物区域内像素的像素特征为依据,对建筑物区域内的像素进行分类,得到建筑物区域被划分的多个子区域。
其中,每一个子区域表征卫星图像中一个建筑物的顶部。
第一确定单元804,用于针对每一个子区域,根据第三图像特征包含的位于子区域内的像素的高度特征,确定子区域对应的建筑物的高度,并根据第四图像特征包含的位于子区域内的像素的偏移量特征,确定子区域对应的建筑物的偏移量。
第二确定单元805,用于针对每一个子区域,根据子区域、子区域对应的建筑物的高度和偏移量,确定子区域对应的建筑物的底部区域。
可选的,该装置还包括矢量化单元806,用于针对每一个建筑物,对建筑物的子区域和底部区域进行矢量化处理,得到一组表征建筑物轮廓的轮廓矢量。
可选的,矢量化单元806对建筑物的子区域和底部区域进行矢量化处理,得到一组表征建筑物轮廓的轮廓矢量时,具体用于:
利用多边形拟合算法将建筑物的子区域和底部区域的边缘的多个像素确定为关键像素;
分别对位于建筑物子区域的关键像素和位于建筑物底部区域的关键像素进行矩形拟合,得到表征建筑物子区域的轮廓的第一矩形和表征建筑物底部区域的轮廓的第二矩形;其中,组成第一矩形的矢量和组成第二矩形的矢量作为建筑物的轮廓矢量。
可选的,矢量化单元806对建筑物的子区域和底部区域进行矢量化处理,得到一组表征建筑物轮廓的轮廓矢量时,具体用于:
利用多边形拟合算法将建筑物的子区域和底部区域的边缘的多个像素确定为关键像素;
将位于建筑物的子区域的每相邻的两个关键像素连接得到一个对应的参考矢量,并将位于建筑物的底部区域的每相邻的两个关键像素连接得到一个对应的参考矢量;
针对每相邻的两个参考矢量,若两个参考矢量的角度和90°的差值小于预设的第一阈值,调整两个参考矢量,使两个参考矢量的角度等于90°;
针对每相邻的两个参考矢量,若两个参考矢量的角度小于预设的第二阈值,将两个参考矢量合并为一个参考矢量;其中,经过调整和合并后的所有参考矢量,组成建筑物的轮廓矢量。
可选的,处理单元801利用预先构建的第一建筑物检测模型处理卫星图像,得到卫星图像的第一图像特征,第二图像特征,第三图像特征和第四图像特征时,具体用于:
利用第一建筑物检测模型的下采样模块对卫星图像进行下采样,得到卫星图像的下采样特征;
将卫星图像的下采样特征分别输入第一建筑物检测模型的语义分支,像素特征分支,高度分支和偏移量分支,得到语义分支输出的第一图像特征,像素特征分支输出的第二图像特征,高度分支输出的第三图像特征和偏移量分支输出的第四图像特征。
可选的,第一确定单元804根据子区域内所有像素的高度特征,确定子区域对应的建筑物的高度,并根据子区域内所有像素的偏移量特征,确定子区域对应的建筑物的偏移量时,具体用于:
针对每一个子区域,将子区域内所有像素的高度特征的中位数,确定为子区域对应的建筑物的高度,并将子区域内所有像素的偏移量特征的中位数,确定为子区域对应的建筑物的偏移量。
可选的,该处理装置还包括:
划分单元807,用于根据卫星图像包含的场景,将卫星图像划分为多个区块;其中,每一个区块均对应于一种场景;
第二处理单元808,用于针对每一个预先构建的第二建筑物检测模型,利用第二建筑物检测模型检测得到卫星图像中每一个建筑物的子区域。
其中,第二建筑物检测模型的数量为至少一个;第一建筑物检测模型和每一个第二建筑物检测模型,均对应于卫星图像中的一种场景。
删除单元809,用于针对每一个区块,从区块中删除不与区块的场景相对应的建筑物检测模型检测得到的建筑物的子区域。
本实施例提供的卫星图像的处理装置,其具体工作原理可以参考本申请任一实施例提供的卫星图像的处理方法的对应步骤,此处不再赘述。
本申请提供一种卫星图像的处理装置,获取单元801获取卫星图像;处理单元802利用第一建筑物检测模型的语义分支,像素特征分支,高度分支和偏移量分支处理卫星图像,得到指示卫星图像中建筑物区域的第一图像特征,由卫星图像的每一个像素的像素特征组成的第二图像特征,包含卫星图像中每一个像素的高度特征的第三图像特征和包含每一个像素的偏移量特征的第四图像特征;分类单元803根据第二图像特征将建筑物区域划分为每个建筑物对应的子区域;第一确定单元804根据建筑物子区域内所有像素的高度特征和偏移量特征,确定建筑物的高度和偏移量,然后第二确定单元805由此确定建筑物底部区域。本方案中的多个分支可以并行地对卫星图像进行处理,因此本方案相对于现有技术具有更高的处理效率。
本申请实施例还提供一种计算机存储介质,用于存储计算机程序,存储的计算机程序被执行时,具体用于实现本申请任一实施例所提供的卫星图像的处理方法。
本申请实施例还提供一种电子设备,如图9所示,该电子设备包括存储器901和处理器902。
其中,存储器901用于存储计算机程序;
处理器902用于执行上述计算机程序,具体用于实现本申请任一实施例所提供的卫星图像的处理方法。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的卫星图像的处理方法。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
需要注意,本发明中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种卫星图像的处理方法,其特征在于,包括:
获取卫星图像;
利用预先构建的第一建筑物检测模型处理所述卫星图像,得到所述卫星图像的第一图像特征,第二图像特征,第三图像特征和第四图像特征;其中,第一建筑物检测模型包括语义分支,像素特征分支,高度分支和偏移量分支;所述第一图像特征由所述语义分支输出、且用于指示所述卫星图像中的建筑物区域;所述第二图像特征由所述像素特征分支输出、且包括所述卫星图像的每一个像素的像素特征,所述第三图像特征由所述高度分支输出、且包含所述卫星图像中每一个像素的高度特征,所述第四图像特征由所述偏移量分支输出、且包含所述卫星图像中每一个像素的偏移量特征;
在所述第二图像特征中确定所述第一图像特征所指示的建筑物区域内像素的像素特征,并以确定的所述第一图像特征所指示的建筑物区域内像素的像素特征为依据,对所述建筑物区域内的像素进行分类,得到所述建筑物区域被划分的多个子区域;其中,每一个所述子区域表征所述卫星图像中一个建筑物的顶部;
针对每一个所述子区域,根据所述第三图像特征包含的位于所述子区域内的像素的高度特征,确定所述子区域对应的建筑物的高度,并根据所述第四图像特征包含的位于所述子区域内的像素的偏移量特征,确定所述子区域对应的建筑物的偏移量;
针对每一个所述子区域,根据所述子区域、所述子区域对应的建筑物的高度和偏移量,确定所述子区域对应的建筑物的底部区域。
2.根据权利要求1所述的处理方法,其特征在于,所述针对每一个所述子区域,根据所述子区域、所述子区域对应的建筑物的高度和偏移量,确定所述子区域对应的建筑物的底部区域之后,还包括:
针对每一个所述建筑物,对所述建筑物的子区域和底部区域进行矢量化处理,得到一组表征所述建筑物轮廓的轮廓矢量。
3.根据权利要求2所述的处理方法,其特征在于,所述对所述建筑物的子区域和底部区域进行矢量化处理,得到一组表征所述建筑物轮廓的轮廓矢量,包括:
利用多边形拟合算法将所述建筑物的子区域和底部区域的边缘的多个像素确定为关键像素;
分别对位于所述建筑物子区域的关键像素和位于所述建筑物底部区域的关键像素进行矩形拟合,得到表征所述建筑物子区域的轮廓的第一矩形和表征所述建筑物底部区域的轮廓的第二矩形;其中,组成所述第一矩形的矢量和组成所述第二矩形的矢量作为所述建筑物的轮廓矢量。
4.根据权利要求2所述的处理方法,其特征在于,所述对所述建筑物的子区域和底部区域进行矢量化处理,得到一组表征所述建筑物轮廓的轮廓矢量,包括:
利用多边形拟合算法将所述建筑物的子区域和底部区域的边缘的多个像素确定为关键像素;
将位于所述建筑物的子区域的每相邻的两个所述关键像素连接得到一个对应的参考矢量,并将位于所述建筑物的底部区域的每相邻的两个所述关键像素连接得到一个对应的参考矢量;
针对每相邻的两个参考矢量,若所述两个参考矢量的角度和90°的差值小于预设的第一阈值,调整所述两个参考矢量,使所述两个参考矢量的角度等于90°;
针对每相邻的两个参考矢量,若所述两个参考矢量的角度小于预设的第二阈值,将所述两个参考矢量合并为一个参考矢量;其中,经过调整和合并后的所有所述参考矢量,组成所述建筑物的轮廓矢量。
5.根据权利要求1所述的处理方法,其特征在于,所述利用预先构建的第一建筑物检测模型处理所述卫星图像,得到所述卫星图像的第一图像特征,第二图像特征,第三图像特征和第四图像特征,包括:
利用所述第一建筑物检测模型的下采样模块对所述卫星图像进行下采样,得到所述卫星图像的下采样特征;
将所述卫星图像的下采样特征分别输入所述第一建筑物检测模型的语义分支,像素特征分支,高度分支和偏移量分支,得到所述语义分支输出的第一图像特征,所述像素特征分支输出的第二图像特征,所述高度分支输出的第三图像特征和所述偏移量分支输出的第四图像特征。
6.根据权利要求1所述的处理方法,其特征在于,所述针对每一个所述子区域,根据所述子区域内所有像素的高度特征,确定所述子区域对应的建筑物的高度,并根据所述子区域内所有像素的偏移量特征,确定所述子区域对应的建筑物的偏移量,包括:
针对每一个所述子区域,将所述子区域内所有像素的高度特征的中位数,确定为所述子区域对应的建筑物的高度,并将所述子区域内所有像素的偏移量特征的中位数,确定为所述子区域对应的建筑物的偏移量。
7.根据权利要求1至6任意一项所述的处理方法,其特征在于,所述针对每一个所述子区域,根据所述子区域内所有像素的高度特征,确定所述子区域对应的建筑物的高度,并根据所述子区域内所有像素的偏移量特征,确定所述子区域对应的建筑物的偏移量之前,还包括:
根据所述卫星图像包含的场景,将所述卫星图像划分为多个区块;其中,每一个所述区块均对应于一种所述场景;
针对每一个预先构建的第二建筑物检测模型,利用所述第二建筑物检测模型检测得到所述卫星图像中每一个建筑物的子区域;其中,所述第二建筑物检测模型的数量为至少一个;所述第一建筑物检测模型和每一个所述第二建筑物检测模型,均对应于所述卫星图像中的一种场景;
针对每一个所述区块,从所述区块中删除不与所述区块的场景相对应的建筑物检测模型检测得到的建筑物的子区域。
8.一种卫星图像的处理装置,其特征在于,包括:
获取单元,用于获取卫星图像;
处理单元,用于利用预先构建的第一建筑物检测模型处理所述卫星图像,得到所述卫星图像的第一图像特征,第二图像特征,第三图像特征和第四图像特征;其中,第一建筑物检测模型包括语义分支,像素特征分支,高度分支和偏移量分支;所述第一图像特征由所述语义分支输出、且用于指示所述卫星图像中的建筑物区域;所述第二图像特征由所述像素特征分支输出、且包括所述卫星图像的每一个像素的像素特征,所述第三图像特征由所述高度分支输出、且包含所述卫星图像中每一个像素的高度特征,所述第四图像特征由所述偏移量分支输出、且包含所述卫星图像中每一个像素的偏移量特征;
分类单元,用于在所述第二图像特征中确定所述第一图像特征所指示的建筑物区域内像素的像素特征,并以确定的所述第一图像特征所指示的建筑物区域内像素的像素特征为依据,对所述建筑物区域内的像素进行分类,得到所述建筑物区域被划分的多个子区域;其中,每一个所述子区域表征所述卫星图像中一个建筑物的顶部;
第一确定单元,用于针对每一个所述子区域,根据所述第三图像特征包含的位于所述子区域内的像素的高度特征,确定所述子区域对应的建筑物的高度,并根据所述第四图像特征包含的位于所述子区域内的像素的偏移量特征,确定所述子区域对应的建筑物的偏移量;
第二确定单元,用于针对每一个所述子区域,根据所述子区域、所述子区域对应的建筑物的高度和偏移量,确定所述子区域对应的建筑物的底部区域。
9.一种电子设备,其特征在于,包括存储器和处理器;
其中,所述存储器用于存储计算机程序;
所述处理器用于执行所述计算机程序,具体用于实现如权利要求1至7任意一项所述的卫星图像的处理方法。
10.一种计算机存储介质,其特征在于,用于存储计算机程序,所述计算机程序被执行时,具体用于实现如权利要求1至7任意一项所述的卫星图像的处理方法。
CN202011383771.5A 2020-12-01 2020-12-01 卫星图像的处理方法、装置、电子设备和计算机存储介质 Pending CN112396701A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011383771.5A CN112396701A (zh) 2020-12-01 2020-12-01 卫星图像的处理方法、装置、电子设备和计算机存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011383771.5A CN112396701A (zh) 2020-12-01 2020-12-01 卫星图像的处理方法、装置、电子设备和计算机存储介质

Publications (1)

Publication Number Publication Date
CN112396701A true CN112396701A (zh) 2021-02-23

Family

ID=74603973

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011383771.5A Pending CN112396701A (zh) 2020-12-01 2020-12-01 卫星图像的处理方法、装置、电子设备和计算机存储介质

Country Status (1)

Country Link
CN (1) CN112396701A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113344195A (zh) * 2021-05-31 2021-09-03 上海商汤智能科技有限公司 网络训练与图像处理方法、装置、设备和存储介质
CN113704381A (zh) * 2021-10-27 2021-11-26 腾讯科技(深圳)有限公司 路网数据处理方法、装置、计算机设备和存储介质
CN114092813A (zh) * 2021-11-25 2022-02-25 中国科学院空天信息创新研究院 一种工业园区图像提取方法、模型、电子设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103699900A (zh) * 2014-01-03 2014-04-02 西北工业大学 卫星影像中建筑物水平矢量轮廓自动批量提取方法
US20150029188A1 (en) * 2008-11-05 2015-01-29 Hover Inc. Method and system for displaying and navigating building facades in a three-dimensional mapping system
CN110232738A (zh) * 2019-06-18 2019-09-13 西安电子科技大学 基于视差图和关键点的多视图遥感图像立体重构方法
CN110471088A (zh) * 2019-08-15 2019-11-19 腾讯科技(深圳)有限公司 定位信息处理方法、装置、计算机设备和存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150029188A1 (en) * 2008-11-05 2015-01-29 Hover Inc. Method and system for displaying and navigating building facades in a three-dimensional mapping system
CN103699900A (zh) * 2014-01-03 2014-04-02 西北工业大学 卫星影像中建筑物水平矢量轮廓自动批量提取方法
CN110232738A (zh) * 2019-06-18 2019-09-13 西安电子科技大学 基于视差图和关键点的多视图遥感图像立体重构方法
CN110471088A (zh) * 2019-08-15 2019-11-19 腾讯科技(深圳)有限公司 定位信息处理方法、装置、计算机设备和存储介质

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113344195A (zh) * 2021-05-31 2021-09-03 上海商汤智能科技有限公司 网络训练与图像处理方法、装置、设备和存储介质
WO2022252557A1 (zh) * 2021-05-31 2022-12-08 上海商汤智能科技有限公司 神经网络训练与图像处理方法、装置、设备和存储介质
CN113704381A (zh) * 2021-10-27 2021-11-26 腾讯科技(深圳)有限公司 路网数据处理方法、装置、计算机设备和存储介质
CN114092813A (zh) * 2021-11-25 2022-02-25 中国科学院空天信息创新研究院 一种工业园区图像提取方法、模型、电子设备和存储介质
CN114092813B (zh) * 2021-11-25 2022-08-05 中国科学院空天信息创新研究院 一种工业园区图像提取方法、系统、电子设备和存储介质

Similar Documents

Publication Publication Date Title
US11151378B2 (en) Systems and methods for analyzing remote sensing imagery
CN103703490B (zh) 用于产生三维特征数据的设备以及用于产生三维特征数据的方法
Xu et al. Reconstruction of scaffolds from a photogrammetric point cloud of construction sites using a novel 3D local feature descriptor
CN112084869B (zh) 一种基于紧致四边形表示的建筑物目标检测方法
CN103337052B (zh) 面向宽幅遥感影像的自动几何纠正方法
CN112396701A (zh) 卫星图像的处理方法、装置、电子设备和计算机存储介质
CN114612488A (zh) 建筑物单体化信息提取方法、计算机装置及存储介质
Mahmoudi et al. Object oriented image analysis based on multi-agent recognition system
Liu et al. 3D building model generation from MLS point cloud and 3D mesh using multi-source data fusion
de Gélis et al. Siamese KPConv: 3D multiple change detection from raw point clouds using deep learning
CN116363319B (zh) 一种建筑物屋顶的建模方法、建模装置、设备及介质
CN114332134B (zh) 一种基于密集点云的建筑物立面提取方法和装置
CN112183301A (zh) 一种建筑物楼层智能识别方法及装置
US11861855B2 (en) System and method for aerial to ground registration
Wang Automatic extraction of building outline from high resolution aerial imagery
CN113192174A (zh) 建图方法、装置及计算机存储介质
CN110636248B (zh) 目标跟踪方法与装置
CN115019163A (zh) 基于多源大数据的城市要素识别方法
CN112700464B (zh) 地图信息的处理方法、装置、电子设备以及存储介质
CN113673288A (zh) 空闲车位检测方法、装置、计算机设备及存储介质
Zeng Automated Building Information Extraction and Evaluation from High-resolution Remotely Sensed Data
Zhang et al. Building façade element extraction based on multidimensional virtual semantic feature map ensemble learning and hierarchical clustering
Gruen et al. An Operable System for LoD3 Model Generation Using Multi-Source Data and User-Friendly Interactive Editing
CN113487741A (zh) 稠密三维地图更新方法及装置
Zhang Photogrammetric point clouds: quality assessment, filtering, and change detection

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination