CN112037220A - 一种图像处理方法、装置、设备和存储介质 - Google Patents

一种图像处理方法、装置、设备和存储介质 Download PDF

Info

Publication number
CN112037220A
CN112037220A CN202011036378.9A CN202011036378A CN112037220A CN 112037220 A CN112037220 A CN 112037220A CN 202011036378 A CN202011036378 A CN 202011036378A CN 112037220 A CN112037220 A CN 112037220A
Authority
CN
China
Prior art keywords
building
roof
offset
edge
determining
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
CN202011036378.9A
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.)
Shanghai Sensetime Intelligent Technology Co Ltd
Original Assignee
Shanghai Sensetime Intelligent Technology 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 Shanghai Sensetime Intelligent Technology Co Ltd filed Critical Shanghai Sensetime Intelligent Technology Co Ltd
Priority to CN202011036378.9A priority Critical patent/CN112037220A/zh
Publication of CN112037220A publication Critical patent/CN112037220A/zh
Priority to PCT/CN2021/115515 priority patent/WO2022062854A1/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/136Segmentation; Edge detection involving thresholding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/564Depth or shape recovery from multiple images from contours
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume
    • 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/10Image acquisition modality
    • G06T2207/10032Satellite or aerial image; Remote sensing
    • G06T2207/10044Radar image
    • 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/20Special algorithmic details
    • G06T2207/20088Trinocular vision calculations; trifocal tensor
    • 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/30108Industrial image inspection
    • G06T2207/30132Masonry; Concrete

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Quality & Reliability (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

本申请提出一种图像处理方法、装置、设备和存储介质。上述方法包括,获取包含建筑物的目标图像。对上述目标图像进行图像处理,确定上述建筑物的屋顶区域,上述建筑物的侧面底部边缘与侧面顶部边缘,以及上述建筑物的屋顶与底座之间的偏移角。根据上述偏移角,确定上述侧面底部边缘与上述侧面顶部边缘之间的偏移量。根据上述偏移量,对上述屋顶区域对应的屋顶轮廓进行变换,得到底座轮廓。

Description

一种图像处理方法、装置、设备和存储介质
技术领域
本申请涉及计算机技术领域,具体涉及一种图像处理方法、装置、设备和存储介质。
背景技术
目前,在图像处理领域中,通常需要将图像中的建筑物轮廓预测出来,用于进行诸如城市规划、地图绘制,建筑物变化检测,居民区管理等。而进行建筑物预测中比较重要任务包括建筑物底座的预测,以及建筑物高度的预测。
可是,由于拍摄的图像通常为通过卫星或飞机拍摄的非正射遥感图像,因此,图像中建筑物底座可能被部分遮挡,导致其视觉特征并不明显,从而影响建筑物底座的预测精度。
发明内容
有鉴于此,本申请至少公开一种图像处理方法,上述方法包括:
获取包含建筑物的目标图像;
对上述目标图像进行图像处理,确定上述建筑物的屋顶区域,上述建筑物的侧面底部边缘与侧面顶部边缘,以及上述建筑物的屋顶与底座之间的偏移角;
根据上述偏移角,确定上述侧面底部边缘与上述侧面顶部边缘之间的偏移量;
根据上述偏移量,对上述屋顶区域对应的屋顶轮廓进行变换,得到底座轮廓。
在示出的一些例子中,上述方法还包括:
基于上述偏移量,以及预先确定的建筑物高度与偏移量之间的比例尺,确定上述建筑物对应的建筑物高度。
在示出的一些例子中,上述方法还包括:
对上述目标图像进行图像处理,确定上述建筑物的屋顶轮廓包括的各像素点分别对应的边缘方向;
上述方法还包括:
基于上述边缘方向,对上述屋顶轮廓进行规则化处理,得到上述建筑物对应的屋顶多边形;
上述根据上述偏移量,对上述屋顶区域对应的屋顶轮廓进行变换,得到底座轮廓,包括:根据上述偏移量,对上述屋顶多边形进行变换,得到上述底座轮廓。
在示出的一些例子中,上述基于上述边缘方向,对上述屋顶轮廓进行规则化处理,得到上述建筑物对应的屋顶多边形,包括:
将上述屋顶轮廓包括的各像素点中任一像素点作为目标像素点,确定上述目标像素点对应的边缘方向与上述目标像素点的相邻像素点对应的边缘方向之差;
在上述目标像素点对应的边缘方向与上述相邻像素点对应的边缘方向之差达到第一预设阈值的情况下,将上述目标像素点确定为上述建筑物对应的屋顶多边形的顶点;
基于确定的屋顶多边形的顶点,得到上述建筑物对应的屋顶多边形。
在示出的一些例子中,上述方法还包括:
将预设角度进行划分得到N个角度区间;其中,N为正整数;
上述确定上述目标像素点对应的边缘方向与上述目标像素点的相邻像素点对应的边缘方向之差,包括:
确定上述目标像素点对应的边缘方向所属的第一角度区间;
确定上述目标像素点的相邻像素点对应的边缘方向所属的第二角度区间;
将上述第一角度区间对应的标识值与上述第二角度区间对应的标识值之差确定为上述目标像素点对应的边缘方向与上述目标像素点的相邻像素点对应的边缘方向之差。
在示出的一些例子中,N为小于等于第二预设阈值的正整数。
在示出的一些例子中,上述方法还包括:
基于顶点修正模型,对上述屋顶多边形的顶点进行修正,得到修正后的屋顶多边形;其中,上述顶点修正模型为基于图神经网络确定的模型。
在示出的一些例子中,上述根据上述偏移角,确定上述侧面底部边缘与上述侧面顶部边缘之间的偏移量,包括:
确定上述侧面底部边缘按照上述偏移角的方向移动至上述侧面顶部边缘的情况下上述侧面底部边缘位置的变化量,并将上述侧面底部边缘位置的变化量作为上述偏移量。
在示出的一些例子中,上述确定上述侧面底部边缘按照上述偏移角的方向移动至上述侧面顶部边缘的情况下上述侧面底部边缘位置的变化量,并将上述侧面底部边缘位置的变化量作为上述偏移量,包括:
基于与上述侧面顶部边缘对应的预设边框,对上述侧面顶部边缘对应的侧面顶部边缘概率图进行裁剪,得到第一裁剪结果;
按照预设步长以及预设最大偏移量,将上述侧面底部边缘按照上述偏移角方向进行多次移动,并在每次移动后,基于上述预设边框对上述侧面底部边缘对应的侧面底部边缘概率图进行裁剪,得到多个第二裁剪结果;
在上述多个第二裁剪结果中,确定与上述第一裁剪结果匹配的目标裁剪结果,并将得到上述目标裁剪结果时上述侧面底部边缘位置的变化量确定为上述偏移量。
在示出的一些例子中,上述方法还包括:
将上述侧面顶部边缘对应的外切边框,确定为上述预设边框;或,
将上述屋顶轮廓包括的多个侧面顶部边缘进行组合得到的组合边缘所对应的外切边框,确定为上述预设边框。
在示出的一些例子中,对上述目标图像进行图像处理,确定上述建筑物的屋顶区域,上述建筑物的侧面底部边缘与侧面顶部边缘,以及上述建筑物的屋顶与底座之间的偏移角,包括:
利用图像处理模型对上述目标图像进行图像处理,确定上述建筑物的屋顶区域,上述建筑物的侧面底部边缘与侧面顶部边缘,以及上述建筑物的屋顶与底座之间的偏移角;
上述图像处理模型包括用于输出上述屋顶区域的屋顶区域预测子模型,用于输出上述侧面底部边缘与上述侧面顶部边缘的建筑物边缘预测子模型,用于输出上述边缘方向的建筑物边缘方向预测子模型,以及用于输出上述偏移角的偏移角预测子模型。
在示出的一些例子中,上述图像处理模型的训练方法包括:
获取多个包括标注信息的训练样本;其中,上述标注信息包括建筑物的屋顶区域与侧面区域,建筑物轮廓包括的各边缘,建筑物包括的各像素点对应的边缘方向以及屋顶与底座之间的偏移角;
基于上述图像处理模型包括的各子模型分别对应的损失信息,构建联合学习损失信息;
基于上述联合学习损失信息以及上述训练样本对上述图像处理模型包括的各子模型进行联合训练,直至上述各子模型收敛。
本申请还提出一种图像处理装置,上述装置包括:
获取模块,用于获取包含建筑物的目标图像;
图像处理模块,用于对上述目标图像进行图像处理,确定上述建筑物的屋顶区域,上述建筑物的侧面底部边缘与侧面顶部边缘,以及上述建筑物的屋顶与底座之间的偏移角;
偏移量确定模块,用于根据上述偏移角,确定上述侧面底部边缘与上述侧面顶部边缘之间的偏移量;
变换模块,用于根据上述偏移量,对上述屋顶区域对应的屋顶轮廓进行变换,得到底座轮廓。
在示出的一些例子中,上述装置还包括:
建筑物高度确定模块,用于基于上述偏移量,以及预先确定的建筑物高度与偏移量之间的比例尺,确定上述建筑物对应的建筑物高度。
在示出的一些例子中,上述装置还包括:
边缘方向确定模块,用于对上述目标图像进行图像处理,确定上述建筑物的屋顶轮廓包括的各像素点分别对应的边缘方向;
上述装置还包括:
规则化处理模块,基于上述边缘方向,对上述屋顶轮廓进行规则化处理,得到上述建筑物对应的屋顶多边形;
上述变换模块,具体用于:根据上述偏移量,对上述屋顶多边形进行变换,得到上述底座轮廓。
在示出的一些例子中,上述规则化处理模块,包括:
第一确定子模块,用于将上述屋顶轮廓包括的各像素点中任一像素点作为目标像素点,确定上述目标像素点对应的边缘方向与上述目标像素点的相邻像素点对应的边缘方向之差;
第二确定子模块,用于在上述目标像素点对应的边缘方向与上述相邻像素点对应的边缘方向之差达到第一预设阈值的情况下,将上述目标像素点确定为上述建筑物对应的屋顶多边形的顶点;
屋顶多边形确定子模块,基于确定的屋顶多边形的顶点,得到上述建筑物对应的屋顶多边形。
在示出的一些例子中,上述装置还包括:
划分模块。将预设角度进行划分得到N个角度区间;其中,N为正整数;
上述第一确定子模块,具体用于:
确定上述目标像素点对应的边缘方向所属的第一角度区间;
确定上述目标像素点的相邻像素点对应的边缘方向所属的第二角度区间;
将上述第一角度区间对应的标识值与上述第二角度区间对应的标识值之差确定为上述目标像素点对应的边缘方向与上述目标像素点的相邻像素点对应的边缘方向之差。
在示出的一些例子中,N为小于等于第二预设阈值的正整数。
在示出的一些例子中,上述装置还包括:
顶点修正模块,基于顶点修正模型,对上述屋顶多边形的顶点进行修正,得到修正后的屋顶多边形;其中,上述顶点修正模型为基于图神经网络确定的模型。
在示出的一些例子中,上述偏移量确定模块,包括:
偏移量确定子模块,用于确定上述侧面底部边缘按照上述偏移角的方向移动至上述侧面顶部边缘的情况下上述侧面底部边缘位置的变化量,并将上述侧面底部边缘位置的变化量作为上述偏移量。
在示出的一些例子中,上述偏移确定子模块,具体用于:
基于与上述侧面顶部边缘对应的预设边框,对上述侧面顶部边缘对应的侧面顶部边缘概率图进行裁剪,得到第一裁剪结果;
按照预设步长以及预设最大偏移量,将上述侧面底部边缘按照上述偏移角方向进行多次移动,并在每次移动后,基于上述预设边框对上述侧面底部边缘对应的侧面底部边缘概率图进行裁剪,得到多个第二裁剪结果;
在上述多个第二裁剪结果中,确定与上述第一裁剪结果匹配的目标裁剪结果,并将得到上述目标裁剪结果时上述侧面底部边缘位置的变化量确定为上述偏移量。
在示出的一些例子中,上述装置还包括:
将上述侧面顶部边缘对应的外切边框,确定为上述预设边框;或,
将上述屋顶轮廓包括的多个侧面顶部边缘进行组合得到的组合边缘所对应的外切边框,确定为上述预设边框。
在示出的一些例子中,上述图像处理模块,具体用于:
利用图像处理模型对上述目标图像进行图像处理,确定上述建筑物的屋顶区域,上述建筑物的侧面底部边缘与侧面顶部边缘,以及上述建筑物的屋顶与底座之间的偏移角;
上述图像处理模型包括用于输出上述屋顶区域的屋顶区域预测子模型,用于输出上述侧面底部边缘与上述侧面顶部边缘的建筑物边缘预测子模型,用于输出上述边缘方向的建筑物边缘方向预测子模型,以及用于输出上述偏移角的偏移角预测子模型。
在示出的一些例子中,上述图像处理模型的训练方法对应的训练装置包括:
训练样本获取模块,用于获取多个包括标注信息的训练样本;其中,上述标注信息包括建筑物的屋顶区域与侧面区域,建筑物轮廓包括的各边缘,建筑物包括的各像素点对应的边缘方向以及屋顶与底座之间的偏移角;
损失信息确定模块,用于基于上述图像处理模型包括的各子模型分别对应的损失信息,构建联合学习损失信息;
联合训练模块,用于基于上述联合学习损失信息以及上述训练样本对上述图像处理模型包括的各子模型进行联合训练,直至上述各子模型收敛。
本申请还提出一种电子设备,上述设备包括:
处理器;
用于存储上述处理器可执行指令的存储器;
其中,上述处理器被配置为调用上述存储器中存储的可执行指令,实现如上述任一实施例示出的图像处理方法。.
本申请还提出一种计算机可读存储介质,上述存储介质存储有计算机程序,上述计算机程序用于执行实现如上述任一实施例示出的图像处理方法。
在上述方案中,通过从获取的目标图像中确定出建筑物对应的屋顶区域,上述建筑物对应的侧面底部边缘与侧面顶部边缘,以及上述建筑物对应的屋顶与底座之间的偏移角。然后再根据上述偏移角,确定上述侧面底部边缘与上述侧面顶部边缘之间的偏移量。最后根据上述偏移量,对上述屋顶区域对应的屋顶轮廓进行变换,得到底座轮廓,从而在建筑物底座预测过程中,无需依赖目标图像中包括的底座特征,以使在目标图像中包括建筑物底座特征被遮挡的情形下,也可以得到精度较高的建筑物底座。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
为了更清楚地说明本申请一个或多个实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请一个或多个实施例中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请示出的一种图像处理方法的方法流程图;
图2为本申请示出的一种底座轮廓预测流程示意图;
图3为本申请示出的一种对目标图像进行图像处理的流程示意图;
图4为本申请示出的一种偏移角示意图;
图5为本申请示出的一种屋顶与底座偏移量的示意图;
图6为本申请示出的一种偏移量确定方法的方法流程图;
图7为本申请示出的一种侧面底部边缘移动示意图;
图8为本申请示出的一种底座轮廓预测流程示意图;
图9为本申请示出的一种边缘方向示意图;
图10为本申请示出的一种对目标图像进行图像处理的流程示意图;
图11为本申请示出的一种图像处理模型训练方法的方法流程图;
图12为本申请示出的一种图像处理装置的示意图;
图13为本申请示出的一种电子设备的硬件结构图。
具体实施方式
下面将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的设备和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“上述”和“该”也旨在可以包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。还应当理解,本文中所使用的词语“如果”,取决于语境,可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请旨在提出一种图像处理方法。该方法通过从上述目标图像中预测出建筑物对应的屋顶区域,以及用于确定上述建筑物屋顶与底座之间的偏移量的相关特征,并根据上述相关特征确定上述偏移量。在确定上述偏移量后,再基于上述偏移量对上述屋顶区域对应的屋顶轮廓进行变换,得到底座轮廓,从而在建筑物底座预测过程中,无需依赖目标图像中包括的底座特征,以使在目标图像中包括建筑物底座特征被遮挡的情形下,也可以得到精度较高的建筑物底座。
请参见图1,图1为本申请示出的一种图像处理方法的方法流程图。如图1所示,上述方法可以包括:
S102,获取包含建筑物的目标图像。
S104,对上述目标图像进行图像处理,确定上述建筑物的屋顶区域,上述建筑物的侧面底部边缘与侧面顶部边缘,以及上述建筑物的屋顶与底座之间的偏移角。
S106,根据上述偏移角,确定上述侧面底部边缘与上述侧面顶部边缘之间的偏移量。
S108,根据上述偏移量,对上述屋顶区域对应的屋顶轮廓进行变换,得到底座轮廓。
上述图像处理方法可以应用于电子设备中。其中,上述电子设备可以通过搭载与图像处理方法对应的软件系统执行上述图像处理方法。本申请实施例中,上述电子设备的类型可以是笔记本电脑,计算机,服务器,手机,PAD终端等,在本申请中不作特别限定。
可以理解的是,上述图像处理方法既可以仅通过终端设备或服务端设备单独执行,也可以通过终端设备与服务端设备配合执行。
例如,上述图像处理方法可以集成于客户端。搭载该客户端的终端设备在接收到图像处理请求后,可以通过自身硬件环境提供算力执行上述图像处理方法。
又例如,上述图像处理方法可以集成于系统平台。搭载该系统平台的服务端设备在接收到图像处理请求后,可以通过自身硬件环境提供算力执行上述图像处理方法。
还例如,上述图像处理方法可以分为获取目标图像与对目标图像进行处理两个任务。其中,获取任务可以集成于客户端并搭载于终端设备。处理任务可以集成于服务端并搭载与服务端设备。上述终端设备可以在获取到目标图像后向上述服务端设备发起图像处理请求。上述服务端设备在接收到上述图像处理请求后,可以响应于上述请求对上述目标图像执行上述方法。
以下以执行主体为电子设备(以下简称设备)为例进行说明。
请参见图2,图2为本申请示出的一种底座轮廓预测流程示意图。
如图2所示,在获取目标图像后,上述设备可以执行S104,对上述目标图像进行图像处理,确定上述建筑物的屋顶区域,上述建筑物的侧面底部边缘与侧面顶部边缘,以及上述建筑物的屋顶与底座之间的偏移角。
上述目标图像是指图像中包括多个建筑物的图像。例如,上述目标图像可以是通过飞机、无人机、卫星等设备拍摄的遥感图像。
在一种情形中,在获取目标图像时,上述设备可以通过与用户进行交互,完成目标图像的输入。例如,上述设备可以通过其搭载的界面为用户提供输入待处理目标图像的窗口,供用户输入图像。用户可以基于该窗口完成目标图像的输入。上述设备在获取到目标图像后,可以将该图像输入图像处理模型中进行计算。
在另一种情形中,上述设备可以直接获取图像采集系统输出的遥感图像。例如,上述设备可以与遥感图像采集系统预先建立某种协议。当图像采集系统生成遥感图像后可以发送至上述设备进行图像处理。
在一些例子中,上述可以利用图像处理模型对上述目标图像进行图像处理,以从上述目标图像中提取出建筑物对应的屋顶区域,上述建筑物对应的侧面底部边缘与侧面顶部边缘,以及上述建筑物对应的屋顶与底座之间的偏移角。
上述图像处理模型,具体可以是针对目标图像进行建筑物屋顶区域预测,以及上述相关特征预测的图像处理模型。在实际应用中,该图像处理模型可以是预先训练完毕的神经网络模型。
请参见图3,图3为本申请示出的一种对目标图像进行图像处理的流程示意图。如图3所示,上述图像处理模型可以包括三个分支,该三个分支可以共用同一骨干网络。其中,分支一可以用于预测屋顶区域,分支二可以用于预测侧面边缘(包括侧面顶部边缘以及侧面底部边缘),分支三可以用于预测建筑物对应的屋顶与底座之间的偏移角。本申请实施例中,图3中示出的图像处理模型的结构仅为示意性说明,在实际应用中可以根据实际情形搭建该模型的结构。
上述图像处理模型可以是基于多个标注了标注信息的训练样本进行训练得到的。其中,上述标注信息可以包括屋顶区域,建筑物侧面顶部边缘与建筑物侧面底部边缘,以及建筑物对应的屋顶与底座之间的偏移角。
上述骨干网络,具体用于针对目标图像进行特征预测。例如,上述骨干网络可以是VGG,ResNet等特征预测网络,在此不作特别限定。在通过骨干网络预测出与目标图像对应的目标特征图后,可以将上述目标特征图分别输入上述三个分支中,进行进一步的预测。
上述分支一与分支二,具体可以是像素点级的分割网络。上述分支一可以将目标图像中的包括的每一像素点划分为屋顶或背景中的一类。例如,目标图像包括像素点A。如果通过上述分支一预测出该像素点A为屋顶区域包括的像素点,即可以将像素点A划分为屋顶。
上述分支二可以将目标图像中的包括的每一像素点划分为侧面顶部边缘,侧面底部边缘或背景中的一类。例如,目标图像包括像素点B。如果通过上述分支二预测出该像素点B为侧面顶部边缘包括的像素点,即可以将像素点B划分为侧面顶部边缘。
上述分支三,具体可以是图像级的分割网络。上述分支三可以预测出目标图像中包括的建筑物的底座与屋顶之间的偏移角。其中,上述偏移角可以是指底座与屋顶之间的角度偏移。通过该偏移角,可以确定屋顶位置与底座位置在y轴方向上的变化与在x轴方向变化的关系。
示例性的,该偏移角可以是侧面斜边与竖直方向的夹角(例如,可以是侧面斜边与竖直方向在顺时针方向上的夹角)。该夹角减去90度后得到的角度对应的正切值即为屋顶位置与底座位置在y轴方向上的变化与在x轴方向变化的比值。
请参见图4,图4为本申请示出的一种偏移角示意图。
图4示出的坐标系为以目标图左下角为坐标圆心构建的直角坐标系。侧面斜边为底座与屋顶连接的一条边。角α即为上述偏移角。
本申请实施例中,一方面,由于上述目标图像通常为距离建筑物较远的卫星或飞机拍摄的遥感图像,因此可以拍摄的目标图像中各建筑物对应的上述偏移角大致相同。另一方面,上述偏移角也可以是由开发人员根据实际情形定义的能够指示建筑物的底座与屋顶之间的夹角的其他角。例如,上述偏移角也可以是以侧面斜边与竖置向上方向或水平向右方向的夹角等等。
可以理解的是,上述侧面底部边缘通常为建筑物底座轮廓包括的边缘之一。上述侧面顶部边缘通常为建筑物屋顶轮廓包括的边缘之一。
请继续参见图2,在确定偏移角,建筑物侧面顶部边缘与建筑物侧面底部边缘之后,可以执行S106,根据上述偏移角,确定上述侧面底部边缘与上述侧面顶部边缘之间的偏移量。
上述偏移量,具体可以是指底座与屋顶之间的位置偏移。通过上述偏移量,可以由屋顶轮廓变换至底部轮廓。
示例性的,上述偏移量可以是偏移向量。即,屋顶与底座在x轴和y轴上的移动量。
请参见图5,图5为本申请示出的一种屋顶与底座偏移量的示意图。
图5示出的坐标系为以目标图左下角为坐标圆心构建的直角坐标系。点P为建筑物底座上的一点。点Q为该建筑物屋顶与点P对应的一点。Q点对应的坐标与P点对应的坐标之间的偏移(x2-x1,y2-y1)即为上述偏移量。
在本步骤中,在根据上述偏移角,确定上述侧面底部边缘与上述侧面顶部边缘之间的偏移量时,上述设备可以将上述偏移角,上述侧面底部边缘与上述侧面顶部边缘输入偏移量确定单元进行计算,得到上述侧面底部边缘与上述侧面顶部边缘之间的偏移量。
其中,上述偏移量确定单元包括偏移量确定算法。该算法可以确定上述侧面底部边缘按照上述偏移角的方向移动至上述侧面顶部边缘的情况下上述侧面底部边缘位置的变化量,并将上述侧面底部边缘位置的变化量作为上述偏移量。
本申请实施例中,上述算法也可以是确定上述侧面顶部边缘按照上述偏移角的方向移动至上述侧面底部边缘的情况下上述侧面顶部边缘位置的变化量,并将上述侧面顶部边缘位置的变化量作为上述偏移量。可以理解的是,不论是通过定顶部边缘或底部边缘均可以实现确定该偏移量,两种方法原理相同,步骤可以相互参照,以下以通过移动侧面底部边缘确定偏移量为例进行实施例说明。
请参见图6,图6为本申请示出的一种偏移量确定方法的方法流程图。
如图6所示,上述设备可以先执行S602,基于与上述侧面顶部边缘对应的预设边框,对上述侧面顶部边缘对应的侧面顶部边缘概率图进行裁剪,得到第一裁剪结果。
上述预设边框具体可以是包括侧面顶部边缘的预设边框。通过该边框可以对图像进行裁剪,得到该边框内部的像素点。在一些实施例中,在通过S104得到侧面顶部边缘后,可以将上述侧面顶部边缘对应的外切边框,确定为上述预设边框。
在一些实施例中,可能由于模型原因导致通过S104得到的隶属于同一建筑物的顶部边缘可能是间断的,从而导致根据确定的预设边框不能很好的将顶部边缘裁剪出来,影响偏移量确定准确性。因此,为了获得准确的预设边框,可以根据屋顶轮廓于侧面顶部边缘共同确定该预设边框。
具体的,在确定预设边框时,可以将上述屋顶轮廓包括的多个侧面顶部边缘进行组合得到的组合边缘所对应的外切边框,确定为上述预设边框。
由于确定该预设边框时是基于屋顶轮廓包括的多个侧面顶部边缘进行组合得到的组合边缘进行确定的,因此该预设边框可以包括完整的顶部边缘,从而使裁剪出的第一裁剪结果可以包括完整的侧面顶部边缘,提升偏移量确定准确性。
在确定预设边框后,可以通过该预设边框对上述侧面顶部边缘对应的侧面顶部边缘概率图进行裁剪,得到第一裁剪结果。
其中,上述侧面顶部边缘概率图,具体是通过S104对目标图像进行图像处理后输出的顶部边缘分割图。该图中包括了上述目标图像中包括的侧面顶部边缘。根据预设边框对该概率图进行裁剪得到的第一裁剪结果,实际上即得到包括建筑物侧面顶部边缘的区域。
在得到第一裁剪结果后,可以执行S604,按照预设步长以及预设最大偏移量,将上述侧面底部边缘按照上述偏移角方向进行多次移动,并在每次移动后,基于上述预设边框对上述侧面底部边缘对应的侧面底部边缘概率图进行裁剪,得到多个第二裁剪结果。
在执行本步骤前,先指定预设步长的大小与预设最大偏移量。
其中,上述预设步长具体是指底部边缘沿着x轴方向移动的坐标值。该预设步长可以是根据实际情形进行设定的。例如,目标图像分辨率较大,则可以设定较长的预设步长;反之,则可以设定较小的预设步长。本申请实施例中,预设步长也可以是沿着y轴方向移动的坐标值,在此不作特别限定。以下以预设步长为沿着x轴移动m为例进行说明。
上述预设最大偏移量,具体是指底部边缘沿着x轴方向移动的最大值。该预设步长可以是根据实际情形进行设定的。例如,目标图像分辨率较大,则可以设定较长的最大偏移量;反之,则可以设定较小的最大偏移量。本申请实施例中,最大偏移量也可以是沿着y轴方向移动的坐标值,在此不作特别限定。以下以最大偏移量为沿着x轴移动n(其中,n大于m)为例进行说明。
在确定预设步长与最大偏移量后,可以执行上述S604,按照预设步长以及预设最大偏移量,将上述侧面底部边缘按照上述偏移角方向进行多次移动,并在每次移动后,基于上述预设边框对上述侧面底部边缘对应的侧面底部边缘概率图进行裁剪,得到多个第二裁剪结果。
上述侧面底部边缘概率图,具体是通过S104对目标图像进行图像处理后输出的底部边缘分割图。该图中包括了上述目标图像中包括的侧面底部边缘。根据预设边框对该概率图进行裁剪得到的第二裁剪结果,实际上即得到侧面底部边缘概率图中建筑物侧面顶部边缘位置对应的区域。
请参见图7,图7为本申请示出的一种侧面底部边缘移动示意图。
如图7所示,图7示出的坐标系为以底部边缘概率图左下角为坐标圆心构建的直角坐标系。其中,DE为底部边缘初始位置。FG为底部边缘在移动时的中间某一位置。HI为底部边缘在移动时的最后位置(即最大偏移量位置)。虚线框为确定的预设边框。
底部边缘从初始位置DE开始,每次向x轴方向移动m步,向y轴方向移动tan(α-90)*m步,直至移动到HI位置。每移动一次之后,可以根据上述预设边框对底部边缘概率图上与预设边框坐标位置对应的区域进行裁剪,得到多个第二裁剪结果。
在得到多个第二裁剪结果后,可以执行S606,在上述多个第二裁剪结果中,确定与上述第一裁剪结果匹配的目标裁剪结果,并将得到上述目标裁剪结果时上述侧面底部边缘已经位置的变化量确定为上述偏移量。
在本步骤中,可以采用诸如欧式距离、马氏距离等距离确定法确定第一裁剪结果与第二裁剪结果之间的相似度,并从确定的相似度中找出最高相似度。在确定最高相似度后将该最高相似度对应的裁剪结果确定为上述目标裁剪结果。在确定目标裁剪结果后,可以将得到上述目标裁剪结果时上述侧面底部边缘已经位置的变化量确定为上述偏移量。
例如,假设底部边缘移动到位置FG时裁剪得到的第二裁剪结果为上述目标裁剪结果。则此时可以将底部边缘从位置DE移动到位置FG在x轴与y轴的变化量组合为上述偏移量。
在上述方案中,由于只有当底部边缘移动到顶部边缘的位置时,根据上述预设边框裁剪得到的上述第二裁剪结果才会与第一裁剪结果最相似,因此,采用上述方案,可以将上述侧面底部边缘按照上述偏移角方向移动至上述侧面顶部边缘时,上述侧面底部边缘位置的变化量确定为上述偏移量,从而确定准确的偏移量。
请继续参见图2,在确定偏移量之后,可以继续执行S108,根据上述偏移量,对上述屋顶区域对应的屋顶轮廓进行变换,得到底座轮廓。
在本步骤中,可以先确定屋顶区域对应的屋顶轮廓。例如,通过将屋顶区域对应的最外围的像素点围成的轮廓确定为上述屋顶轮廓。
在确定屋顶轮廓之后,可以根据上述偏移量对上述屋顶区域对应的屋顶轮廓进行变换,得到底座轮廓。
具体地,可以通过偏移量对屋顶轮廓包括的各像素点对应的坐标进行x轴与y轴方向的平移变换,得到底座轮廓对应的各像素点对应的坐标,从而确定底座轮廓,完成底座预测。
在上述方案中,通过从获取的目标图像中确定出建筑物对应的屋顶区域,上述建筑物对应的侧面底部边缘与侧面顶部边缘,以及上述建筑物对应的屋顶与底座之间的偏移角。然后再根据上述偏移角,确定上述侧面底部边缘与上述侧面顶部边缘之间的偏移量。最后根据上述偏移量,对上述屋顶区域对应的屋顶轮廓进行变换,得到底座轮廓,从而实现特征较明显的屋顶轮廓进行平移变换,得到的建筑物底座轮廓,完成建筑物底座预测。
在一些实施例中,为了提升建筑物底座预测精度,在得到屋顶轮廓之后,可以对屋顶轮廓进行规则化处理。
请参见图8,图8为本申请示出的一种底座轮廓预测流程示意图。
如图8所示,在执行S104对目标图像进行处理时,还可以得到上述建筑物对应的屋顶轮廓包括的各像素点分别对应的边缘方向。
上述边缘方向,具体是指边缘的法向量方向。在实际应用中,通常通过边缘方向角来量化上述边缘方向。其中,上述边缘方向角可以是上述法向量与竖置方向之间的夹角(例如,可以是上述法向量与上述竖置方向在顺时针方向的夹角)。
具体请参见图9,图9为本申请示出的一种边缘方向示意图。如图9所示,边缘JK的法向量LR所对应的方向即为上述边缘JK的边缘方向。在一些例子中,可以通过构造一个竖直向下的方向向量LS,通过法向量LR与方向向量LS之间的夹角β来指示边缘方向的角度。可以理解的是,某一条边缘包括的像素点所对应的边缘方向通常与该边缘对应的边缘方向一致。
在一些例子中,上述设备可以预先将预设角度进行划分得到N个角度区间;其中,N为正整数。本申请实施例中,上述预设角度可以是经验角度。例如,360度或720度等。在一些实施例中,为了缩小边缘方向类型的取值范围,扩大角度区间的跨度范围,该N可以是小于等于第二预设阈值的正整数。其中第二预设阈值可以是根据经验确定的比较适合的角度区间数量。
由于N的数值为小于等于第二预设阈值,因此扩大了角度区间的跨度范围,缩小了边缘方向类型的取值范围,从而在量化边缘方向时,无需过度依赖上述图像处理模型的预测精度,也可以提升边缘方向预测精准度,从而进一步提升过去更为精准的屋顶轮廓,提升建筑物底座的预测精度。
在确定N后,可以分别为上述N个角度区间分配标识值。其中,上述标识值与角度区间一一对应。在一些例子中,可以将角度区间的编号顺序作为上述标识值。例如,当某一角度区间为第3个区间,则可以将3作为该角度区间对应的标识值。
在确定目标图像包括的建筑物各边缘对应的边缘方向时,可以将上述目标图像输入预先构建的边缘方向预测模型中进行边缘方向的预测。
请参见图10,图10为本申请示出的一种对目标图像进行图像处理的流程示意图。
如图10所示,上述图像处理模型除了包括上述三个分支外,还包括分支四。其中,该分支四可以用于预测屋顶轮廓包括的各像素点所对应的边缘方向。该分支四与其他三个分支共用上述骨干网络。
上述图像处理模型可以是基于多个标注了标注信息的训练样本进行训练得到的。其中,上述标注信息还包括每一像素点对应的边缘方向。在构建上述训练样本时,可以针对原始图像的每一个像素点标注其边缘方向对应的角度区间标识值。例如,在获取原始图像后,可以遍历原始图像的每一像素点,并通过标注软件对每一像素点的边缘方向对应的角度区间标识值进行标注。
请继续参见图8,在得到边缘方向后,可以基于上述边缘方向,对上述屋顶轮廓进行规则化处理,得到上述建筑物对应的屋顶多边形。
在实际应用中,在基于上述边缘方向,对上述屋顶轮廓进行规则化处理,得到上述建筑物对应的屋顶多边形时,可以将上述屋顶轮廓包括的各像素点中任一像素点作为目标像素点,确定上述目标像素点对应的边缘方向与上述目标像素点的相邻像素点对应的边缘方向之差。
在上述目标像素点对应的边缘方向与上述相邻像素点对应的边缘方向之差达到第一预设阈值的情况下,将上述目标像素点确定为上述建筑物对应的屋顶多边形的顶点。
上述第一预设阈值,可以是根据经验设定的阈值。达到该阈值可以说明相邻的两个像素点不属于同一边缘。因此,根据上述步骤可以将屋顶轮廓包括的像素点中,与背景包括的像素点属于同一边缘的像素点删除,保留不属于背景的像素点,从而达到对屋顶轮廓规则化处理的目的。
可以理解的是,通过不同方式量化边缘方向,上述第一预设阈值的取值不同。例如,通过方向角量化边缘方向,那么第一预设阈值可能是30。而通过方向角对应的角度区间的标识值量化边缘方向时,第一预设阈值可能是3。
在一些例子中,当通过边缘方向角量化边缘方向时,在确定上述目标像素点对应的边缘方向与上述目标像素点的相邻像素点对应的边缘方向之差时,可以确定上述目标像素点对应的第一边缘方向角,以及确定上述目标像素点的相邻像素点对应的第二边缘方向角。
在确定上述第一边缘方向角与上述第二边缘方向角之后,可以将上述第一边缘方向角与上述第二边缘方向角之差确定为上述目标像素点对应的边缘方向与上述目标像素点的相邻像素点对应的边缘方向之差。
在一些例子中,在确定上述目标像素点对应的边缘方向与上述目标像素点的相邻像素点对应的边缘方向之差时,可以确定上述目标像素点对应的边缘方向所属的第一角度区间,以及确定上述目标像素点的相邻像素点对应的边缘方向所属的第二角度区间。
在确定上述第一角度区间以及上述第二角度区间之后,可以将上述第一角度区间对应的标识值与上述第二角度区间对应的标识值之差确定为上述目标像素点对应的边缘方向与上述目标像素点的相邻像素点对应的边缘方向之差。
在针对上述屋顶轮廓包括的所有目标像素点执行完上述步骤后,可以基于确定的屋顶多边形的顶点,得到上述建筑物对应的屋顶多边形。
在一些实施例中,在基于确定的屋顶多边形的顶点,得到上述建筑物对应的屋顶多边形后,可以基于顶点修正模型,对上述屋顶多边形的顶点进行修正,得到修正后的屋顶多边形;其中,上述顶点修正模型为基于图神经网络确定的模型。
可以理解的是,上述顶点修正模型既可以是与本申请使用的图像处理模型相互独立的两个模型,也可以是作为图像处理模型的一个子模型(子模块),在此不作特别限定。当然,为了控制运算量,可以将上述顶点修正模型作为图像处理模型的一个子模型(子模块)进行顶点修正。
由于本方案中使用基于图神经网络构建的顶点修正模型进一步对屋顶多边形进行修正,从而得到更为精准的屋顶轮廓,提升建筑物底座的预测精度。
请继续参见图8,在得到屋顶多边形后,可以根据上述偏移量,对上述屋顶多边形进行变换,得到底座轮廓。
由于上述屋顶多边形为对屋顶轮廓进行规则化处理后得到的规则形状,因此,本方案可以预测更为精准的屋顶轮廓,从而提升建筑物底座的预测精度。
由于预测建筑物高度需要依赖于多景不同视角的遥感图像、激光雷达(LIDAR)数据、数字表面模型(DSM)等数据,而这些数据获取成本较高,获取难度较大,因此,使得建筑物高度预测难度较大,成本较高。
在一些实施例中,为了通过单景遥感图像进行建筑物高度预测,在确定上述偏移量之后,还可以基于单景目标图像进行建筑物高度预测。具体的,可以在确定上述偏移量之后,基于上述偏移量,以及预先确定的建筑物高度与偏移量之间比例尺,确定上述建筑物对应的建筑物高度。
在实际应用中,可以预先获取一些建筑物的真实高度,以及采用本申请记载的偏移量确定方法确定出的该些建筑物对应的偏移量。然后,再根据上述数据确定建筑物高度与偏移量之间的比例尺。
在确定上述比例尺之后便可根据预测出的偏移量确定对应的建筑物高度。
在上述方案中,在确定上述偏移量之后,可以基于上述偏移量,以及预先确定的建筑物高度与偏移量之间比例尺,得到上述建筑物对应的建筑物高度。因此,在预测建筑物高度时,可以无需依赖多景不同视角的遥感图像、激光雷达(LIDAR)数据、数字表面模型(DSM)等数据,从而简化了建筑物高度预测成本与难度。
以上是对本申请示出的建筑物底座预测与建筑物高度预测方案的介绍,以下介绍图像处理模型的训练方法。
在本申请中,建筑物底座预测方案使用的图像处理模型可以包括用于输出上述屋顶区域的屋顶区域预测子模型,用于输出上述侧面底部边缘与上述侧面顶部边缘的建筑物边缘预测子模型,用于输出上述边缘方向的建筑物边缘方向预测子模型,以及用于输出上述偏移角的偏移角预测子模型。
为了提升图像处理模型对底座区域的预测精确度以及模型的泛化能力,在对图像处理模型进行训练时采用多任务联合训练方式。
在一些实施例中,为了增加对图像处理模型训练时的监督信息,从而提升图像处理模型预测精度,可以引入建筑物屋顶与侧面区域,建筑物轮廓包括的各边缘,建筑物包括的各像素点对应的边缘方向,屋顶与底座之间的偏移角方面的约束。
请参见图11,图11为本申请示出的一种图像处理模型训练方法的方法流程图。
如图11所示,该方法包括:
S1102,获取多个包括标注信息的训练样本;其中,上述标注信息包括建筑物的屋顶区域与侧面区域,建筑物轮廓包括的各边缘,建筑物包括的各像素点对应的边缘方向以及屋顶与底座之间的偏移角。
在执行本步骤时,可以采用人工标注或机器辅助标注的方式对原始图像进行标注信息标注。例如,在获取到原始图像后,一方面,可以使用图像标注软件对原始图像包括的每一像素点标注其属于建筑物屋顶、侧面区域或是背景;标注其属于建筑物轮廓包括的哪一边缘;标注其对应的边缘方向;另一方面,可以保证该图像中包括的建筑物屋顶与底座之间的偏移角。在针对原始图像完成上述标注操作后可以得到训练样本。本申请实施例中,在标注信息编码训练样本时可以采用one-hot编码等方式进行编码,本申请不对编码的具体方式进行限定。
S1104,基于上述图像处理模型包括的各子模型分别对应的损失信息,构建联合学习损失信息。
在执行本步骤时,可以先确定各子模型各自对应的损失信息。为了提升子模型预测精准度,在本申请中,上述各子模型对应的损失信息均为交叉熵损失信息。
在确定各子模型各自对应的损失信息后,可以基于上述图像处理模型包括的各子模型分别对应的损失信息,构建联合学习损失信息。例如,可以将各子模型各自对应的损失信息相加得到上述联合学习损失信息。
本申请实施例中,在本申请中还可以为上述联合学习损失信息增加正则化项,在此不作特别限定。
在确定联合学习损失信息,以及训练样本后,可以执行S1106,基于上述联合学习损失信息以及上述训练样本对上述图像处理模型包括的各子模型进行联合训练,直至上述各子模型收敛。
在对模型训练时,可以先指定诸如学习率、训练循环次数等超参数。在确定上述超参数之后,可以基于标注了标注信息的上述训练样本对上述图像处理模型进行有监督训练。
在有监督训练过程中,可以针对图像处理模型进行前向传播得到计算结果后,基于构建的联合学习损失信息评价标注信息与上述计算结果之间的误差。在得到误差之后,可以采用随机梯度下降法确定下降梯度。在确定下降梯度后,可以基于反向传播更新上述图像处理模型对应的模型参数。重复上述过程,直至上述各子模型模型收敛。本申请实施例中,本申请不对模型收敛的条件进行特别限定。
在对图像处理模型进行训练时,由于采用了有监督式的联合训练方法,因此,可以对该图像处理包括的四个子模型进行了同时训练,使得各子模型之间在训练过程中可以既可以相互约束,又可以相互促进,从而一方面提高图像处理模型收敛效率;另一方面促进各子模型共用的骨干网络可以预测到对底座区域预测更有益的特征,从而提升底座预测精准度。
与上述任一实施例相对应的,本申请还提出一种图像处理装置。
请参见图12,图12为本申请示出的一种图像处理装置的示意图。
如图12所示,上述装置1200包括:
获取模块1210,用于获取包含建筑物的目标图像;
图像处理模块1220,用于对上述目标图像进行图像处理,确定上述建筑物的屋顶区域,上述建筑物的侧面底部边缘与侧面顶部边缘,以及上述建筑物的屋顶与底座之间的偏移角;
偏移量确定模块1230,用于根据上述偏移角,确定上述侧面底部边缘与上述侧面顶部边缘之间的偏移量;
变换模块1240,用于根据上述偏移量,对上述屋顶区域对应的屋顶轮廓进行变换,得到底座轮廓。
在示出的一些例子中,上述装置1200还包括:
建筑物高度确定模块,用于基于上述偏移量,以及预先确定的建筑物高度与偏移量之间的比例尺,确定上述建筑物对应的建筑物高度。
在示出的一些例子中,上述装置1200还包括:
边缘方向确定模块,用于对上述目标图像进行图像处理,确定上述建筑物的屋顶轮廓包括的各像素点分别对应的边缘方向;
上述装置1200还包括:
规则化处理模块,基于上述边缘方向,对上述屋顶轮廓进行规则化处理,得到上述建筑物对应的屋顶多边形;
上述变换模块1240,具体用于:根据上述偏移量,对上述屋顶多边形进行变换,得到上述底座轮廓。
在示出的一些例子中,上述规则化处理模块,包括:
第一确定子模块,用于将上述屋顶轮廓包括的各像素点中任一像素点作为目标像素点,确定上述目标像素点对应的边缘方向与上述目标像素点的相邻像素点对应的边缘方向之差;
第二确定子模块,用于在上述目标像素点对应的边缘方向与上述相邻像素点对应的边缘方向之差达到第一预设阈值的情况下,将上述目标像素点确定为上述建筑物对应的屋顶多边形的顶点;
屋顶多边形确定子模块,基于确定的屋顶多边形的顶点,得到上述建筑物对应的屋顶多边形。
在示出的一些例子中,上述装置1200还包括:
划分模块。将预设角度进行划分得到N个角度区间;其中,N为正整数;
上述第一确定子模块,具体用于:
确定上述目标像素点对应的边缘方向所属的第一角度区间;
确定上述目标像素点的相邻像素点对应的边缘方向所属的第二角度区间;
将上述第一角度区间对应的标识值与上述第二角度区间对应的标识值之差确定为上述目标像素点对应的边缘方向与上述目标像素点的相邻像素点对应的边缘方向之差。
在示出的一些例子中,N为小于等于第二预设阈值的正整数。
在示出的一些例子中,上述装置1200还包括:
顶点修正模块,基于顶点修正模型,对上述屋顶多边形的顶点进行修正,得到修正后的屋顶多边形;其中,上述顶点修正模型为基于图神经网络确定的模型。
在示出的一些例子中,上述偏移量确定模块1230,包括:
偏移量确定子模块,用于确定上述侧面底部边缘按照上述偏移角的方向移动至上述侧面顶部边缘的情况下上述侧面底部边缘位置的变化量,并将上述侧面底部边缘位置的变化量作为上述偏移量。
在示出的一些例子中,上述偏移确定子模块,具体用于:
基于与上述侧面顶部边缘对应的预设边框,对上述侧面顶部边缘对应的侧面顶部边缘概率图进行裁剪,得到第一裁剪结果;
按照预设步长以及预设最大偏移量,将上述侧面底部边缘按照上述偏移角方向进行多次移动,并在每次移动后,基于上述预设边框对上述侧面底部边缘对应的侧面底部边缘概率图进行裁剪,得到多个第二裁剪结果;
在上述多个第二裁剪结果中,确定与上述第一裁剪结果匹配的目标裁剪结果,并将得到上述目标裁剪结果时上述侧面底部边缘位置的变化量确定为上述偏移量。
在示出的一些例子中,上述装置1200还包括:
将上述侧面顶部边缘对应的外切边框,确定为上述预设边框;或,
将上述屋顶轮廓包括的多个侧面顶部边缘进行组合得到的组合边缘所对应的外切边框,确定为上述预设边框。
在示出的一些例子中,上述图像处理模块1220,具体用于:
利用图像处理模型对上述目标图像进行图像处理,确定上述建筑物的屋顶区域,上述建筑物的侧面底部边缘与侧面顶部边缘,以及上述建筑物的屋顶与底座之间的偏移角;
上述图像处理模型包括用于输出上述屋顶区域的屋顶区域预测子模型,用于输出上述侧面底部边缘与上述侧面顶部边缘的建筑物边缘预测子模型,用于输出上述边缘方向的建筑物边缘方向预测子模型,以及用于输出上述偏移角的偏移角预测子模型。
在示出的一些例子中,上述图像处理模型的训练方法对应的训练装置1300包括:
训练样本获取模块1310,用于获取多个包括标注信息的训练样本;其中,上述标注信息包括建筑物的屋顶区域与侧面区域,建筑物轮廓包括的各边缘,建筑物包括的各像素点对应的边缘方向以及屋顶与底座之间的偏移角;
损失信息确定模块1320,用于基于上述图像处理模型包括的各子模型分别对应的损失信息,构建联合学习损失信息;
联合训练模块1330,用于基于上述联合学习损失信息以及上述训练样本对上述图像处理模型包括的各子模型进行联合训练,直至上述各子模型收敛。
本申请示出的图像处理装置的实施例可以应用于电子设备上。相应地,本申请公开了一种电子设备,该设备可以包括:处理器。
用于存储处理器可执行指令的存储器。
其中,上述处理器被配置为调用上述存储器中存储的可执行指令,实现如上述任一实施例示出的图像处理方法。
请参见图13,图13为本申请示出的一种电子设备的硬件结构图。
如图13所示,该电子设备可以包括用于执行指令的处理器,用于进行网络连接的网络接口,用于为处理器存储运行数据的内存,以及用于存储图像处理装置对应指令的非易失性存储器。
其中,图像处理装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在电子设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,除了图13所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的电子设备通常根据该电子设备的实际功能,还可以包括其他硬件,对此不再赘述。
可以理解的是,为了提升处理速度,图像处理装置对应指令也可以直接存储于内存中,在此不作限定。
本申请提出一种计算机可读存储介质,上述存储介质存储有计算机程序,上述计算机程序用于执行实现如上述任一实施例示出的图像处理方法。
本领域技术人员应明白,本申请一个或多个实施例可提供为方法、系统或计算机程序产品。因此,本申请一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(可以包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请中的“和/或”表示至少具有两者中的其中一个,例如,“A和/或B”可以包括三种方案:A、B、以及“A和B”。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于数据处理设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的行为或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本申请中描述的主题及功能操作的实施例可以在以下中实现:数字电子电路、有形体现的计算机软件或固件、可以包括本申请中公开的结构及其结构性等同物的计算机硬件、或者它们中的一个或多个的组合。本申请中描述的主题的实施例可以实现为一个或多个计算机程序,即编码在有形非暂时性程序载体上以被数据处理装置执行或控制数据处理装置的操作的计算机程序指令中的一个或多个模块。可替代地或附加地,程序指令可以被编码在人工生成的传播信号上,例如机器生成的电、光或电磁信号,该信号被生成以将信息编码并传输到合适的接收机装置以由数据处理装置执行。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备、或它们中的一个或多个的组合。
本申请中描述的处理及逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过根据输入数据进行操作并生成输出来执行相应的功能。上述处理及逻辑流程还可以由专用逻辑电路—例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)来执行,并且装置也可以实现为专用逻辑电路。
适合用于执行计算机程序的计算机可以包括,例如通用和/或专用微处理器,或任何其他类型的中央处理单元。通常,中央处理单元将从只读存储器和/或随机存取存储器接收指令和数据。计算机的基本组件可以包括用于实施或执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将可以包括用于存储数据的一个或多个大容量存储设备,例如磁盘、磁光盘或光盘等,或者计算机将可操作地与此大容量存储设备耦接以从其接收数据或向其传送数据,抑或两种情况兼而有之。然而,计算机不是必须具有这样的设备。此外,计算机可以嵌入在另一设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏操纵台、全球定位系统(GPS)接收机、或例如通用串行总线(USB)闪存驱动器的便携式存储设备,仅举几例。
适合于存储计算机程序指令和数据的计算机可读介质可以包括所有形式的非易失性存储器、媒介和存储器设备,例如可以包括半导体存储器设备(例如EPROM、EEPROM和闪存设备)、磁盘(例如内部硬盘或可移动盘)、磁光盘以及CD ROM和DVD-ROM盘。处理器和存储器可由专用逻辑电路补充或并入专用逻辑电路中。
虽然本申请包含许多具体实施细节,但是这些不应被解释为限制任何公开的范围或所要求保护的范围,而是主要用于描述特定公开的具体实施例的特征。本申请内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上上述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。
类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求这些操作以所示的特定顺序执行或顺次执行、或者要求所有例示的操作被执行,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中均需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中,或者封装成多个软件产品。
由此,主题的特定实施例已被描述。其他实施例在所附权利要求书的范围以内。在某些情况下,权利要求书中记载的动作可以以不同的顺序执行并且仍实现期望的结果。此外,附图中描绘的处理并非必需所示的特定顺序或顺次顺序,以实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。
以上上述仅为本申请一个或多个实施例的较佳实施例而已,并不用以限制本申请一个或多个实施例,凡在本申请一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请一个或多个实施例保护的范围之内。

Claims (17)

1.一种图像处理方法,其特征在于,所述方法包括:
获取包含建筑物的目标图像;
对所述目标图像进行图像处理,确定所述建筑物的屋顶区域,所述建筑物的侧面底部边缘与侧面顶部边缘,以及所述建筑物的屋顶与底座之间的偏移角;
根据所述偏移角,确定所述侧面底部边缘与所述侧面顶部边缘之间的偏移量;
根据所述偏移量,对所述屋顶区域对应的屋顶轮廓进行变换,得到底座轮廓。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
基于所述偏移量,以及预先确定的建筑物高度与偏移量之间的比例尺,确定所述建筑物对应的建筑物高度。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
对所述目标图像进行图像处理,确定所述建筑物的屋顶轮廓包括的各像素点分别对应的边缘方向;
所述方法还包括:
基于所述边缘方向,对所述屋顶轮廓进行规则化处理,得到所述建筑物对应的屋顶多边形;
所述根据所述偏移量,对所述屋顶区域对应的屋顶轮廓进行变换,得到底座轮廓,包括:根据所述偏移量,对所述屋顶多边形进行变换,得到所述底座轮廓。
4.根据权利要求3所述的方法,其特征在于,所述基于所述边缘方向,对所述屋顶轮廓进行规则化处理,得到所述建筑物对应的屋顶多边形,包括:
将所述屋顶轮廓包括的各像素点中任一像素点作为目标像素点,确定所述目标像素点对应的边缘方向与所述目标像素点的相邻像素点对应的边缘方向之差;
在所述目标像素点对应的边缘方向与所述相邻像素点对应的边缘方向之差达到第一预设阈值的情况下,将所述目标像素点确定为所述建筑物对应的屋顶多边形的顶点;
基于确定的屋顶多边形的顶点,得到所述建筑物对应的屋顶多边形。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
将预设角度进行划分得到N个角度区间;其中,N为正整数;
所述确定所述目标像素点对应的边缘方向与所述目标像素点的相邻像素点对应的边缘方向之差,包括:
确定所述目标像素点对应的边缘方向所属的第一角度区间;
确定所述目标像素点的相邻像素点对应的边缘方向所属的第二角度区间;
将所述第一角度区间对应的标识值与所述第二角度区间对应的标识值之差确定为所述目标像素点对应的边缘方向与所述目标像素点的相邻像素点对应的边缘方向之差。
6.根据权利要求5所述的方法,其特征在于,N为小于等于第二预设阈值的正整数。
7.根据权利要求4-6任一所述的方法,其特征在于,所述方法还包括:
基于顶点修正模型,对所述屋顶多边形的顶点进行修正,得到修正后的屋顶多边形;其中,所述顶点修正模型为基于图神经网络确定的模型。
8.根据权利要求1-7任一所述的方法,其特征在于,所述根据所述偏移角,确定所述侧面底部边缘与所述侧面顶部边缘之间的偏移量,包括:
确定所述侧面底部边缘按照所述偏移角的方向移动至所述侧面顶部边缘的情况下所述侧面底部边缘位置的变化量,并将所述侧面底部边缘位置的变化量作为所述偏移量。
9.根据权利要求8所述的方法,其特征在于,所述确定所述侧面底部边缘按照所述偏移角的方向移动至所述侧面顶部边缘的情况下所述侧面底部边缘位置的变化量,并将所述侧面底部边缘位置的变化量作为所述偏移量,包括:
基于与所述侧面顶部边缘对应的预设边框,对所述侧面顶部边缘对应的侧面顶部边缘概率图进行裁剪,得到第一裁剪结果;
按照预设步长以及预设最大偏移量,将所述侧面底部边缘按照所述偏移角方向进行多次移动,并在每次移动后,基于所述预设边框对所述侧面底部边缘对应的侧面底部边缘概率图进行裁剪,得到多个第二裁剪结果;
在所述多个第二裁剪结果中,确定与所述第一裁剪结果匹配的目标裁剪结果,并将得到所述目标裁剪结果时所述侧面底部边缘位置的变化量确定为所述偏移量。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
将所述侧面顶部边缘对应的外切边框,确定为所述预设边框;或,
将所述屋顶轮廓包括的多个侧面顶部边缘进行组合得到的组合边缘所对应的外切边框,确定为所述预设边框。
11.根据权利要求3-10任一所述的方法,其特征在于,所述对所述目标图像进行图像处理,确定所述建筑物的屋顶区域,所述建筑物的侧面底部边缘与侧面顶部边缘,以及所述建筑物的屋顶与底座之间的偏移角,包括:
利用图像处理模型对所述目标图像进行图像处理,确定所述建筑物的屋顶区域,所述建筑物的侧面底部边缘与侧面顶部边缘,以及所述建筑物的屋顶与底座之间的偏移角;
所述图像处理模型包括用于输出所述屋顶区域的屋顶区域预测子模型,用于输出所述侧面底部边缘与所述侧面顶部边缘的建筑物边缘预测子模型,用于输出所述边缘方向的建筑物边缘方向预测子模型,以及用于输出所述偏移角的偏移角预测子模型。
12.根据权利要求11所述的方法,其特征在于,所述图像处理模型的训练方法包括:
获取多个包括标注信息的训练样本;其中,所述标注信息包括建筑物的屋顶区域与侧面区域,建筑物轮廓包括的各边缘,建筑物包括的各像素点对应的边缘方向以及屋顶与底座之间的偏移角;
基于所述图像处理模型包括的各子模型分别对应的损失信息,构建联合学习损失信息;
基于所述联合学习损失信息以及所述训练样本对所述图像处理模型包括的各子模型进行联合训练,直至所述各子模型收敛。
13.一种图像处理装置,其特征在于,所述装置包括:
获取模块,用于获取包含建筑物的目标图像;
图像处理模块,用于对所述目标图像进行图像处理,确定所述建筑物的屋顶区域,所述建筑物的侧面底部边缘与侧面顶部边缘,以及所述建筑物的屋顶与底座之间的偏移角;
偏移量确定模块,用于根据所述偏移角,确定所述侧面底部边缘与所述侧面顶部边缘之间的偏移量;
变换模块,用于根据所述偏移量,对所述屋顶区域对应的屋顶轮廓进行变换,得到底座轮廓。
14.根据权利要求13所述的装置,其特征在于,所述装置还包括:
建筑物高度确定模块,用于基于所述偏移量,以及预先确定的建筑物高度与偏移量之间的比例尺,确定所述建筑物对应的建筑物高度。
15.根据权利要求13或14所述的装置,其特征在于,所述装置还包括:
边缘方向确定模块,用于对所述目标图像进行图像处理,确定所述建筑物的屋顶轮廓包括的各像素点分别对应的边缘方向;
所述装置还包括:
规则化处理模块,基于所述边缘方向,对所述屋顶轮廓进行规则化处理,得到所述建筑物对应的屋顶多边形;
所述变换模块,具体用于:根据所述偏移量,对所述屋顶多边形进行变换,得到所述底座轮廓。
16.一种电子设备,其特征在于,所述设备包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为调用所述存储器中存储的可执行指令,实现权利要求1至12中任一项所述的图像处理方法。.
17.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序用于执行权利要求1至12中任一项所述的图像处理方法。
CN202011036378.9A 2020-09-27 2020-09-27 一种图像处理方法、装置、设备和存储介质 Pending CN112037220A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011036378.9A CN112037220A (zh) 2020-09-27 2020-09-27 一种图像处理方法、装置、设备和存储介质
PCT/CN2021/115515 WO2022062854A1 (zh) 2020-09-27 2021-08-31 一种图像处理方法、装置、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011036378.9A CN112037220A (zh) 2020-09-27 2020-09-27 一种图像处理方法、装置、设备和存储介质

Publications (1)

Publication Number Publication Date
CN112037220A true CN112037220A (zh) 2020-12-04

Family

ID=73574957

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011036378.9A Pending CN112037220A (zh) 2020-09-27 2020-09-27 一种图像处理方法、装置、设备和存储介质

Country Status (2)

Country Link
CN (1) CN112037220A (zh)
WO (1) WO2022062854A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022062854A1 (zh) * 2020-09-27 2022-03-31 上海商汤智能科技有限公司 一种图像处理方法、装置、设备和存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116342591B (zh) * 2023-05-25 2023-07-28 兴润建设集团有限公司 一种建筑物参数的视觉解析方法
CN117455815A (zh) * 2023-10-18 2024-01-26 二十一世纪空间技术应用股份有限公司 基于卫星影像平顶建筑物顶底偏移校正方法及相关设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7164883B2 (en) * 2001-02-14 2007-01-16 Motorola. Inc. Method and system for modeling and managing terrain, buildings, and infrastructure
CN104240247B (zh) * 2014-09-10 2017-04-12 无锡儒安科技有限公司 一种基于单张图片的建筑物俯视轮廓的快速提取方法
CN112037220A (zh) * 2020-09-27 2020-12-04 上海商汤智能科技有限公司 一种图像处理方法、装置、设备和存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022062854A1 (zh) * 2020-09-27 2022-03-31 上海商汤智能科技有限公司 一种图像处理方法、装置、设备和存储介质

Also Published As

Publication number Publication date
WO2022062854A1 (zh) 2022-03-31

Similar Documents

Publication Publication Date Title
CN108717710B (zh) 室内环境下的定位方法、装置及系统
CN111337947B (zh) 即时建图与定位方法、装置、系统及存储介质
CN112037220A (zh) 一种图像处理方法、装置、设备和存储介质
Maddern et al. Real-time probabilistic fusion of sparse 3d lidar and dense stereo
RU2713611C2 (ru) Способ моделирования трехмерного пространства
CN111429574B (zh) 基于三维点云和视觉融合的移动机器人定位方法和系统
US10748061B2 (en) Simultaneous localization and mapping with reinforcement learning
Xiao et al. Planar segment based three‐dimensional point cloud registration in outdoor environments
CN112101066A (zh) 目标检测方法和装置及智能驾驶方法、设备和存储介质
WO2022062543A1 (zh) 一种图像处理方法、装置、设备和存储介质
Zuo et al. Visual-inertial localization with prior lidar map constraints
CN110276768B (zh) 图像分割方法、图像分割装置、图像分割设备及介质
CN115421158B (zh) 自监督学习的固态激光雷达三维语义建图方法与装置
CN111009011A (zh) 车辆方向角的预测方法、装置、系统以及存储介质
CN110111364B (zh) 运动检测方法、装置、电子设备及存储介质
CN113269147B (zh) 基于空间和形状的三维检测方法、系统、存储及处理装置
CA3105309A1 (en) Computer vision systems and methods for modeling three dimensional structures using two-dimensional segments detected in digital aerial images
CN113012191B (zh) 一种基于点云多视角投影图的激光里程计算法
CN117132649A (zh) 人工智能融合北斗卫星导航的船舶视频定位方法及装置
CN112433193B (zh) 一种基于多传感器的模位置定位方法及系统
CN113763468B (zh) 一种定位方法、装置、系统及存储介质
CN116337087B (zh) 一种基于ais与摄像头的船只定位方法及系统
US20240029392A1 (en) Prediction method for target object, computer device, and storage medium
CN116895014A (zh) 语义地图构建方法及装置、电子设备、存储介质
Zhao et al. MoLi-PoseNet: Model-based indoor relocalization using deep pose regression from synthetic LiDAR scans

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40038863

Country of ref document: HK

CB03 Change of inventor or designer information

Inventor after: Li Weijia

Inventor after: Meng Lingxuan

Inventor before: Wang Jinwang

CB03 Change of inventor or designer information