一种利用鬼影像的建筑物遮挡检测及遮挡区域补偿方法与流程

文档序号:12472075阅读:331来源:国知局
一种利用鬼影像的建筑物遮挡检测及遮挡区域补偿方法与流程

本发明涉及航空摄影测量领域,特别是涉及真正射影像生成领域的技术与方法,是对传统正射纠正成果的加深利用,使鬼影像达到真正射影像的效果。



背景技术:

所述的鬼影像为:利用传统的正射纠正方法对航空影像进行数字微分纠正的过程中,由于建筑物墙体不具有数字地面模型,从而使得正射纠正生成的影像中存在了屋顶重影现象,则这类不完全的正射影像就被称为鬼影像;鬼影像中通过传统正射纠正过程所生产的建筑物屋顶则称为鬼屋顶。

城市数字正射影像图具有精度高、信息丰富、直观逼真等优点,可作为构建数字城市的背景信息。为防治灾害和公共设施建设等应用提供可靠依据,还可提取现势信息,实现对地形图的修测更新。但对于大比例尺的航空影像来说,由于飞机飞行高度低、所载相机倾斜等原因,使得高层建筑物容易对地面及其他建筑物造成遮挡现象,使得航空影像信息不全。这种遮挡现象是由不具有地理信息的建筑物墙体倾斜所产生的,因此通过传统数字微分纠正的方法进行纠正,可视的建筑物屋顶被纠正到其正确的位置,而被建筑物遮挡的部分由于在微分纠正时不会获取对应的灰度值,仍然保持原始的灰度值即倾斜建筑物的影像,这就会产生屋顶重影的现象即鬼影像。

遮挡检测的方法目前有很多种。常用的遮挡检测方法是Z-buffer算法。该算法是在传统的数字微分纠正的基础上加入一个新的矩阵用于存储地面点到摄影中心的距离值。依据同一条投影光线上靠近摄影中心的地物遮蔽较远的地物的事实,在求解地面点对应的像点时,判断出该像点的可见性。但是,当数字表面模型(DSM,Digital Surface Model)的分辨率大于像片的分辨率,就会造成多个地面点对应一个像点产生伪遮挡,当数字表面模型(DSM)的分辨率小于像片的分辨率,就会造成多个像点对应一个地面点产生伪可见。在过去的几十年里国内外学者对真正射影像生成过程中的遮挡检测进行了大量的研究,仍然有几个明显的问题存在:

(1)伪遮挡和伪检测的问题没有很好的解决,大量的改进算法没有完全去除这种影响,而且对于检测准确度高的算法往往存在计算繁琐的问题。

(2)建筑物遮挡建筑物的情况没有得到很好的处理。在纠正的过程中存在屋顶被遮挡区域覆盖的情况。



技术实现要素:

本发明提出了一种利用鬼影像进行遮挡检测的方法,以解决以往的遮挡检测方法中存在的伪可见、伪遮挡以及建筑物遮挡建筑物的情况难以处理的问题。

具体步骤为:

一、利用鬼影像的建筑物遮挡检测

1、利用数字建筑模型(DBM)与鬼影像以及原始影像之间的关系模型,确定鬼影像中的遮挡区域的范围及组成。

确定遮挡区域的范围和大小,包括利用影像的内外方位参数和三点共线原理分别确定鬼影像中鬼屋顶和投影屋顶的位置,通过像点位移计算公式对建筑物的投影区域进行计算,从而确定遮挡区域的位置和面积。

2、根据中心投影的特性,建筑物会沿着摄影光线的入射方向倾斜。通过计算影像中屋顶拐点所在的方位角,从而确定出在建筑物屋顶上的遮挡区域边界点。利用建筑物墙体的垂直特性确定出墙体上的遮挡区域边界点。从而确定整个建筑物所造成的遮挡区域的形状和大小。

利用方位角确定屋顶上的遮挡边界点的方法包括:检测屋顶上位于遮挡边界的屋顶拐点,通过判断:(1)最大方位角:从连接像底点和屋顶上各拐点的连线方向与像平面坐标系中y轴正方向的夹角中选取的最大角;(2)最小方位角:从像底点连接屋顶各拐点的连线方向与像平面坐标系中y轴正方向的夹角中选取的最小角。(3)构建分割线,连接最大、最小方位角所在的屋顶拐点,得到一条分割屋顶区域的直线。在鬼屋顶上以这条分割线为参考,选取靠近摄影中心的屋顶拐点作为遮挡区域边界上的点;在投影屋顶上,以投影屋顶上的最大、最小方位角所在的屋顶拐点构建一条分割线,以这条分割线为参考选取远离摄影中心的屋顶拐点。

利用墙体的垂直特性确定可视墙体上的遮挡边界点包括:分别连接两个屋顶上的最大、最小方位角所在的屋顶拐点,形成一个四边形。将屋顶上属于遮挡边界点的拐点和这个四边形的四个顶点结合起来就可以得到包含屋顶的封闭的遮挡边界。

3、通过先提取影像中的建筑物鬼屋顶再进行遮挡检测的操作过程来正确检测建筑物遮挡建筑物的情况。

在此,为了减少复杂性,而建筑物遮挡建筑物的情况又是经常存在的,因此,在检测遮挡的过程中,对影像中的所有建筑物统一进行先提取建筑物鬼屋顶再进行遮挡检测的操作。

4、利用种子生长法获取鬼屋顶上的像点以及遮挡区域内部的像点集合,并将它们分别储存在矩阵中。

提取建筑物屋顶的过程包括:利用8连通种子生长法获取影像中鬼屋顶的像点集合。连接一栋建筑物上的各个拐点形成闭合的屋顶边界,在屋顶边界上对所有的拐点按照顺时针顺序依次构建两点之间的直线方程,并逐点计算符合直线约束条件的像点,得到一组完全闭合的屋顶边界点。选取屋顶的区域中心作为初始种子点。以闭合的屋顶边界点为种子生长法的停止条件即当生长中的种子点到达屋顶边界时停止生长,进行种子生长,将获得的所有种子点存储,得到鬼屋顶上所有的像点集合。

获取遮挡区域内部的像点包括:在遮挡区域的范围内,选取遮挡区域的中心点为初始种子点,以计算得到的遮挡边界点为限制条件,当生长中的种子到达遮挡边界时判断此种子可以停止生长过程,所有生长过程中获取的像点集合即为整个遮挡区域。

5、通过屋顶影像与鬼影像的叠加运算,将获取的鬼屋顶的像点替换到影像中,从而完成遮挡区域的检测。

在进行遮挡边界的确定过程中,将鬼影像中整个建筑物区域包括鬼屋顶和投影屋顶区域当作遮挡区域进行遮挡边界的计算。因此,进行灰度处理后,建筑物实际上是缺少屋顶的。这时,就需要将上述提取的建筑物鬼屋顶影像叠加到鬼影像上。利用布尔“与”运算进行两幅影像的叠加。叠加后的建筑物影像中,黑色的区域就是检测得到的遮挡区域。

二、利用鬼影像的遮挡区域补偿

1、根据重叠区域面积最大的原则选择副影像。对副影像进行上述遮挡检测过程,获得与主影像的检测区域具有最大重叠区域的影像。

2、根据重叠区域裁剪副影像,选取重叠区域中的特征点作为控制点,并通过仿射变换使得裁剪后的副影像与主影像在相同的建筑物位置上具有相同的像点坐标。

3、通过灰度值查找,选择主影像中灰度值为0的像点,在副影像上提取相同像点位置的灰度值与主影像的灰度值进行替换。当影像上所有对应的灰度值替换完成后,主影像的遮挡区域就被副影像补偿了。

本发明提出的方法能直接从鬼影像上直接对建筑物的遮挡区域进行处理。利用DBM(Digital Building Model)确定遮挡区域边界。利用种子生长法对区域内的遮挡要素进行灰度处理。结果显示,利用本方法能够准确的检测出遮挡区域,本方法的时间表现也优于先前的方法。

附图说明

图1为本发明实施例鬼影像与遮挡区域的关系图。

图2为本发明实施例与鬼影像对应的DBM的三维模型。

图3为本发明实施例遮挡边界检测的原理图。

图4本发明实施例的流程图。

图5本发明实施例的遮挡检测结果示意图。

图6本发明实施例的遮挡补偿示意图。

具体实施方式

下面结合本发明中的实施例附图详细说明本发明的具体实施方式。显然,所描述的实施例仅仅是本发明中的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域的普通技术人员在没有做出创造性劳动前提的条件下所进行的其他所有实施例,都属于本发明的保护范围。

实施例:

本实施例中,我们选取国外某地区的航空影像进行遮挡检测处理。该航空影像由RC30航空相机拍摄得到,其中覆盖中心城区的相邻影像为dv1119和dv1120,二者具有65%的航向重叠度。影像中的建筑物复杂多样,造成了大量的遮挡现象。

具体实施中,本发明技术方案可采用计算机编程自动运行的方式进行。

本发明所提供的鬼影像遮挡检测程序的具体运行步骤可以参考流程图(图4):

步骤1,加载鬼影像文件。

将影像文件转为灰度图像进行处理。加载数字表面模型(DBM)文件。

本实施例中,影像dv1119和dv1120已经通过传统正射纠正的方法生成了鬼影像。首先加载处理的鬼影像为dv1119-ortho。其对应的数字建筑物模型(DBM)矢量文件的存储格式为N行两列,其中每栋建筑物均以pline-x分隔,文件中的第一列存储的是x坐标,第二列为y坐标,在每个建筑物模型的最后两行分别存储一个地面高程值和一个屋顶高程值,建筑物的高度可以通过屋顶和地面的两个高程值计算得到。在程序运行到pline-x时,则判断自动进入下一栋建筑物的信息读取。这样在处理过程中可以用循环语句进行分别读取,每一栋建筑物的拐点平面坐标存放在一个二维数组gd[x,y]中,结合建筑物的高程h,我们将其绘制成三维模型如图2所示。

步骤2,计算DBM对应的鬼影像中的建筑物的位置,即鬼屋顶的位置,如图3中由g1-g2-g3…g10围成的屋顶区域。

本实施例中,通过计算影像左下角对应的大地坐标值,将DBM与影像结合起来,即可得到鬼影像中通过传统正射纠正所获得的屋顶位置。

步骤3,利用三点共线原理计算鬼影像中通过投影所得的建筑物投影屋顶的位置如图3中的p1-p2-p3…p10

本实施例中,航空影像的投影方式是中心投影,因此,在计算时根据中心投影的特性,需要以曝光中心为原点将影像划分为四个象限分别求解各个象限中投影的屋顶位置。

计算方法分别如下:

分别代表4个象限的计算公式。将建筑物的任意一个屋顶坐标(xi,yi)与摄影中心的坐标(x0,y0)进行比较,如果建筑物的坐标x>x0,且y>y0,则判断该建筑物位于第一象限,采用第一个计算公式计算像点位移量;如果建筑物坐标x<x0,而y>y0,则判断建筑物位于第二象限,采用第二个计算公式计算像点位移量;如果建筑物的坐标x<x0,y<y0,则判断该建筑物位于第三象限,采用第三个计算公式计算像点位移量;如果建筑物的坐标x>x0,y<y0,则判断该建筑物位于第四象限,采用第四个计算公式计算像点位移量。

步骤4,提取只包含鬼屋顶的像点集合。

利用步骤2计算得到的鬼屋顶的位置坐标,利用种子生长法获取整个屋顶上的灰度值。本实施例中,根据DBM获取的鬼屋顶坐标为位于鬼屋顶拐点处的坐标。顺时针依次连接这些拐点坐标,并将连接线上的像点都认为是屋顶的边界点,连接后我们可以得到一个包围屋顶的封闭边界。以屋顶中心像点为初始种子点,其中,N代表边界点的个数,(xB,yB)代表边界点的坐标,以屋顶的封闭边界为停止条件,利用8连通种子生长法进行生长,当所有的种子点都停止生长后,就可以判断该屋顶区域计算完毕,便可获取整个鬼屋顶上的像点坐标集合及其灰度值。对影像上的所有建筑物利用循环语句进行种子生长,我们可以获取整个鬼影像上所有鬼屋顶的像点集合,表现为与原影像同等大小的影像矩阵。

步骤5,计算建筑物屋顶各个拐点与曝光中心连线的方位角,并求其中的最大最小方位角。

本实施例中,在任意屋顶拐点A上,以影像平面坐标系中的y轴正方向为参考方向,在影像上连接屋顶拐点与像底点,则该屋顶拐点的方位角就等于y轴正方向与从屋顶拐点到像底点的连线的方向之间的夹角。其中,通过角度计算公式得到这里角度θ的范围是(0,2π)。计算完所有屋顶拐点上的方位角后,可以利用最大化、最小化计算公 式选取这些角度中最大、最小的角度,即:最大方位角θmax及其所在的拐点位置I表示为[θmax,I]=Max{θp1p2,…,θpN},最小方位角θmin及其所在的拐点位置J表示为[θmin,J]=Min{θp1p2,…,θpN}。

步骤6,确定遮挡区域的边界。包括屋顶部分与可见墙面部分的边界。

本实施例中,首先将投影屋顶上的各个拐点带入角度计算公式,求得各个拐点的方位角并计算其中的最大、最小方位角及其位置,分别记作[pθmax,pI]和[pθmin,pJ]。连接拐点pI和pJ构建直线方程表达式y=ax+b,其中得到一条分割投影屋顶的分界线。然后将投影屋顶上第n(n=1,2,3…)个拐点中的横坐标xn带入该直线方程式中的x并求解,如果求得的y大于或等于该点的纵坐标yn,则判断该点位于遮挡边界上,并将该点加入遮挡边界点集合中,如果求得的y是小于yn的,则判断此拐点不在遮挡边界上。同样的,在鬼屋顶上,将鬼屋顶各个拐点带入角度计算公式,求得各个拐点的方位角并计算其中的最大、最小方位角及其位置,分别记作[gθmax,gI]和[gθmin,gJ]。连接拐点gI和gJ构建直线方程表达式,得到一条分割鬼屋顶的分界线。然后将鬼屋顶上第n(n=1,2,3…)个拐点的横坐标xn带入该直线方程式中并求解,如果求得的y大于或等于该点的纵坐标yn,则判断该点不在遮挡边界上,如果求得的y是小于yn的,则判断此拐点位于遮挡边界上,并将该点加入遮挡边界点的集合中。对于影像中的可视墙面部分,根据墙体的垂直特性,墙体的边界正是由两个屋顶上的最大、最小方位角所在的拐点所围成,即多边形pI-pJ-gI-gJ。

步骤7,将步骤6检测得到的遮挡区域利用种子生长法进行黑色填充。

本实施例中,顺时针依次连接这些边界点坐标,并将连接线上的像点都认为是遮挡区域的边界点,连接后我们可以得到一个包围遮挡区域的封闭边界。通过计算遮挡区域的中心坐标来获取初始种子点;通过获取的遮挡边界作为限制条件。利用种子生长法将生长得到的所有的像点坐标设置为0,即可完成遮挡区域的黑色填充。

步骤8,对步骤4所提取的屋顶影像和步骤7所得到的填充遮挡区域的影像进行布尔融 合。得到该幅鬼影像的真正射效果的影像(遮挡区域未被补偿)(如图5所示)。通过上述处理步骤,一副鬼影像的遮挡区域被成功检测出来并呈现出建筑物上只包含屋顶,而遮挡区域是黑色的状态。接下来就需要进入遮挡补偿阶段。

步骤9,选取相邻影像的鬼影像作为副影像。

步骤10,对选取的副影像进行上述步骤1-8的遮挡检测过程,得到相应的真正射效果的影像。其中,遮挡区域未被补偿。

步骤11,对副影像与主影像进行重叠区域的裁剪和仿射变换。本实施例中,为了方便进行遮挡补偿,我们以主影像为参考,对副影像dv1120-ortho进行了重叠区域的裁剪。并从主影像上选取特征像点作为影像控制点,对副影像进行仿射变换。使副影像与主影像在相同的建筑物位置具有相同的像点坐标。

步骤12,对主影像上的黑色区域进行像点坐标提取,并利用副影像上相同坐标的像点进行灰度值的替换。

本实施例中,遮挡区域的灰度值都被设置为0。在主影像上,记录灰度值为0的像点坐标集合{(x,y)|gray(xi,yi)=0,xi∈[0,xmax],yi∈[0,ymax]}。利用灰度值替换的方法,将副影像上的这组坐标集合与主影像上相应的坐标集合进行灰度值替换,即gray主影像(x,y)=gray副影像(x,y)。经过本步骤处理,主影像上的遮挡区域可以被相邻影像所补偿(如图6所示)。虽然结合附图描述了本发明的实施方式,但是本领域内熟练的技术人员可以在所附权利要求的范围内做出各种变形和修改。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1