对象提取方法、装置和设备
技术领域
本申请涉及信息技术领域,具体而言,涉及一种对象提取方法、装置和设备。
背景技术
湖泊作为陆地水圈的重要组成部分,参与自然界的水分循环。对全国范围内的湖泊资源实施调查显示,由于忽视对湖泊的有效保护和管理,致使湖泊不断消亡、面积持续萎缩、湖泊资源过度利用、湖泊功能大大削弱等问题,这些问题在不同程度上制约了区域社会经济发展的可持续发展。因此,对湖泊资源的监测尤为重要。
随着科学技术的发展,基于深度学习的遥感信息提取技术已经将湖泊遥感监测的智能化提取,提升到了一个高度,但由于该技术的应用仍然存在一定的限制。例如对于计算机配置的要求比较高,普通台式机很难高效率的完成样本训练和信息提取;虽然提取结果比传统信息提取方法提高了,但是仍然需要大量后续人工交互操作,才能得到满意的信息提取结果。比如半自动信息提取方法,由于充分结合了人的认知能力和计算机的分析能力,但是由于一直以来由于缺乏遥感信息提取一线作业人员的开发指引和锤炼,导致在半自动信息提取方面整体的实用性还不够。一方面原因也在于缺乏先进的遥感信息提取关键技术研究的支撑。因此,进行专门的遥感信息提取关键技术研发是有必要的。
随着监测数据的增加,在湖泊空间数据库增量更新过程中,诸如空间实体变化类型识别困难、判别标准复杂、判别因子冗余度高以及识别过程自动化程度低等问题越来越显著。现有的湖泊水体提取技术虽已能对水体进行良好的提取,但是依赖于样本的准确性与较大的样本数量,不但无法减少人工作业劳动量,也不能提高提取信息的效率。
发明内容
本申请实施例的目的在于提供一种对象提取方法、装置和设备,用以实现对目标区域的影像信息进行图像分割,提取出目标对象。
本申请实施例第一方面提供了一种对象提取方法,包括:获取包含目标区域的样本影像;根据所述目标区域的预设特征,对包含有所述目标区域的所述样本影像进行处理,以获得所述目标区域的影像信息;在所述目标区域的影像信息中,选取对应于目标对象的种子点;根据所述种子点所包含所述目标对象的特征指数,提取在所述目标区域中的所述目标对象。
于一实施例中,所述在所述目标区域的影像信息中,选取对应于目标对象的种子点,包括:获取所述种子点的像素;计算所述种子点的像素对应于所述目标对象的所述特征指数。
于一实施例中,所述根据所述种子点所包含所述目标对象的特征指数,提取在所述目标区域中的所述目标对象包括:根据所述特征指数,将所述目标区域的所述影像信息分割为对象区域和非对象区域,所述对象区域中包括所述目标对象;计算所述对象区域和所述非对象区域之间的最大类间方差;根据所述最大类间方差对应的目标灰度值和所述特征指数计算提取阈值;采用所述提取阈值对所述影像信息进行图像分割。
于一实施例中,所述根据所述最大类间方差对应的目标灰度值和所述特征指数计算提取阈值包括:计算所述对象区域与所述非对象区域之间的第一极差,并为所述第一极差的赋予预设的修正系数后,得到第二极差;计算所述特征指数与所述第二极差之间的差值;在所述目标灰度值和所述差值中,选取最小值作为所述提取阈值。
于一实施例中,所述采用所述提取阈值对所述影像信息进行图像分割包括:藉由所述提取阈值作为区域生长的分割阈值,并结合所述种子点,对目标区域的影像信息进行区域增长。
本申请实施例第二方面提供了一种对象提取装置,包括:获取模块,用于获取包含目标区域的样本影像;处理模块,用于根据所述目标区域的预设特征,对包含有所述目标区域的所述样本影像进行处理,以获得所述目标区域的影像信息;选取模块,用于在所述目标区域的影像信息中,选取对应于目标对象的种子点;提取模块,用于根据所述种子点所包含所述目标对象的特征指数,提取在所述目标区域中的所述目标对象。
于一实施例中,所述选取模块用于:获取所述种子点的像素;计算所述种子点的像素对应于所述目标对象的所述特征指数。
于一实施例中,所述提取模块用于:根据所述特征指数,将所述目标区域的所述影像信息分割为对象区域和非对象区域,所述对象区域中包括所述目标对象;计算所述对象区域和所述非对象区域之间的最大类间方差;根据所述最大类间方差对应的目标灰度值和所述特征指数计算提取阈值;采用所述提取阈值对所述影像信息进行图像分割。
于一实施例中,所述根据所述最大类间方差对应的目标灰度值和所述特征指数计算提取阈值包括:计算所述对象区域与所述非对象区域之间的第一极差,并为所述第一极差的赋予预设的修正系数后,得到第二极差;计算所述特征指数与所述第二极差之间的差值;在所述目标灰度值和所述差值中,选取最小值作为所述提取阈值;
于一实施例中,所述采用所述提取阈值对所述影像信息进行图像分割包括:藉由所述提取阈值作为区域生长的分割阈值,并结合所述种子点,对目标区域的影像信息进行区域增长。
本申请实施例第三方面提供了一种电子设备,包括:存储器,用以存储计算机程序;处理器,用以执行本申请实施例第一方面及其任一实施例所述的方法,以根据所述目标区域的预设特征和目标对象的种子点,对目标区域的影像信息进行图像处理,提取出目标对象。
本申请提供的对象提取方法、装置和设备,首先获取到相关的影像信息,并确定要在哪些目标区域提取什么样的目标对象,影像信息中包括目标区域,通过根据目标区域的预设特征,并结合目标对象的种子点,对影像信息进行图像处理,从中提取出目标对象的相关信息。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请一实施例的电子设备的结构示意图;
图2为本申请一实施例的对象提取方法的流程示意图;
图3为本申请一实施例的对象提取方法的流程示意图;
图4为本申请一实施例的对象提取方法的流程示意图;
图5为本申请一实施例的水体提取结果示意图;
图6为本申请一实施例的对象提取装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
如图1所示,本实施例提供一种电子设备100,包括:至少一个处理器11和存储器12,图1中以一个处理器为例。处理器11和存储器12通过总线10连接,存储器12存储有可被处理器11执行的指令,指令被处理器11执行,以根据目标区域的预设特征和目标对象的种子点,对目标区域的影像信息进行图像处理,提取出目标对象。
于一实施例中,电子设备100的配置信息可以为:CPU E5-2609 V4 1.70GHz,8G显示内存,32G内存的硬件环境。
于一实施例中,目标对象可以是水体、森林、山脉等地物信息,影像信息可以是从遥感影像获得的多个影像信息。可以采用电子设备100分别对海量遥感影像上的水体信息进行提取。
于一实施例中,目标对象是水体,基于遥感探测的水体波谱信息的原理在于,水可以吸收、也可以散射通过水汽界面的波普辐射能量,但是,水的散射会增加天空辐射能量,而水的吸收则会同时减少波普辐射能量和天空辐射能量。
遥感影像记录了地表物体的反射信息及其自身向外的辐射信息,相对于其他地物而言,水体在整个光谱范围内都呈现出较弱的反射率。在近红外、中红外及短波红外部分,水体几乎吸收了全部的入射能量,因此水体在这些波段的反射率特别低,而土壤、植被、建筑物等在这些被段吸收能量较小,具有较高的反射率,这使得水体与他们具有明显的区别。
请参看图2,其为本申请一实施例的对象提取方法,该方法可由图1所示的电子设备100来执行,并可以应用于上述藉由遥感影像提取水体信息的场景之中,用以实现根据目标区域的遥感影像,提取出对应的水体信息。
该方法包括如下步骤:
步骤201:获取包含目标区域的样本影像。
在本步骤中,以目标对象为水体为例,样本影像可以从海量遥感数据中获取。比如可以自然资源部国土卫星遥感应用中心获取多个样本影像,样本影像中要包含目标区域。比如提取安徽省内的湖泊,则样本影像中一定要包含安徽省。很多遥感影像中并不包含待处理的目标区域,或者影像中没有关注目标区域,则剔除这些影像,不作为样本影像。
步骤202:根据目标区域的预设特征,对包含有目标区域的样本影像进行处理,以获得目标区域的影像信息。
在本步骤中,预设特征可以是目标区域范围信息,比如安徽省的省界、国界信息等。可以加入过滤面矢量对样本影像进行自动过滤,其中面矢量记录了目标区域范围信息,可直接利用省界、国界简化后的矢量进行过滤筛选,选出目标区域完整的影像信息。
步骤203:在目标区域的影像信息中,选取对应于目标对象的种子点。
在本步骤中,可以采用种子点区域中值滤波的方法进行取值,中值滤波法是一种非线性平滑技术,它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值,提高种子点选取的精确度。
于一实施例中,假设目标对象是水体,需要在影像信息中选取水体的种子点,该种子点包含水体特征。
于一实施例中,可以利用种子点矢量对样本影像进行二次过滤,对于在目标区域内,但没有种子点落在上面的影像进行剔除。
于一实施例中,一幅影像中如果存在多个种子点,可以进行累计叠加处理,最后针对一幅影像提取结果矢量化,每个种子点提取的结果直接在二值化图像中累加合并。避免了在矢量化后,矢量合并效率低下的问题。
于一实施例中,每个种子点记录目标名称、序号和对应遥感影像信息,并传递给提取结果面矢量图元,用于区分不同目标对象。
步骤204:根据种子点所包含目标对象的特征指数,提取在目标区域中的目标对象。
在本步骤中,计算种子点包含的目标对象的特征指数。比如目标对象是水体,在地物光谱特征提取方面,特征指数即水体指数。
请参看图3,其为本申请一实施例的对象提取方法,该方法可由图1所示的电子设备100来执行,并可以应用于上述藉由遥感影像提取水体信息的场景之中,用以实现根据目标区域的遥感影像,提取出对应的水体信息。
该方法包括如下步骤:
步骤301:获取包含目标区域的样本影像。详细内容参见上述实施例中步骤201的描述。
步骤302:根据目标区域的预设特征,对包含有目标区域的样本影像进行处理,以获得目标区域的影像信息。详细内容参见上述实施例中步骤202的描述。
步骤303:在目标区域的影像信息中,选取对应于目标对象的种子点。详细内容参见上述实施例中步骤203的描述。
步骤304:获取种子点的像素。
在本步骤中,选取的种子点包括像素特征和像素位置信息。一个种子点可以包含多个像素点,这多个像素点的像素特征均满足目标对象的特征要求,比如种子点中的多个像素点特征均满足水体特征。
步骤305:计算种子点的像素对应于目标对象的特征指数。
在本步骤中,步骤304获取到种子点的像素后,根据这些像素点计算种子点包含的目标对象的特征指数。比如目标对象是水体,在地物光谱特征提取方面,特征指数即水体指数。利用像素点在NIR(近红外)波段和Blue蓝波段值的综合比值,判定其是否属于水体,水体指数Pw计算公式如下:
其中:PW为水体指数,PNIR为像素点在近红外波段的值,PBlue为像素点在蓝色波段的值。由上述公式(1)可以得到遥感影像水体指数结果灰度图。
步骤306:根据种子点所包含目标对象的特征指数,提取在目标区域中的目标对象。
在本步骤中,根据种子点的水体指数信息以及种子点位置信息,并利用区域生长算法,对种子点相关联的水体区域进行处理,即可得到种子点关联的水体区域边界,以完成对目标对象的提取。
区域生长是一种图像分割方法,该方法可以给定图像中要分割的目标区域内的一个小块或者说种子点(seed point),再在种子点基础上不断将其周围的像素点以一定的规则加入其中,达到最终将代表该物体的所有像素点结合成一个区域的目的。原理如下:
第一步:选取图像中的一点为种子点。
第二步:在种子点处进行8邻域或4邻域扩展,生长准则是:如果考虑的像素与种子点像素的特征指数的绝对值小于某个分割阈值,则将该像素并入种子点像素所在的区域。
第三步:当不再有像素满足加入这个区域的生长准则时,区域生长停止。
于一实施例中,区域生长实现的步骤如下:
1.对影像信息顺序扫描,找到第1个还没有归属的像素,设该像素坐标(x0,y0)。
2.以(x0,y0)为中心,考虑(x0,y0)的8邻域像素(x,y),如果(x,y)满足生长准则,将(x,y)与(x0,y0)合并(在同一区域内),同时将(x,y)压入堆栈。
3.从堆栈中取出一个像素,把它当作(x0,y0)返回到步骤2。
4.当堆栈为空时,返回到步骤1。
于一实施例中,在步骤306中进行区域增长后,会留下众多小图斑,为最终结果矢量化效率带来很大影响。可以再次利用区域生长算法对水体区域内的小斑做去除处理。
请参看图4,其为本申请一实施例的对象提取方法,该方法可由图1所示的电子设备100来执行,并可以应用于上述藉由遥感影像提取水体信息的场景之中,用以实现根据目标区域的遥感影像,提取出对应的水体信息。
该方法包括如下步骤:
步骤401:获取包含目标区域的样本影像。详细内容参见上述实施例中步骤301的描述。
步骤402:根据目标区域的预设特征,对包含有目标区域的样本影像进行处理,以获得目标区域的影像信息。详细内容参见上述实施例中步骤202的描述。
步骤403:在目标区域的影像信息中,选取对应于目标对象的种子点。详细内容参见上述实施例中步骤203的描述。
步骤404:获取种子点的像素。详细内容参见上述实施例中步骤304的描述。
步骤405:计算种子点的像素对应于目标对象的特征指数。详细内容参见上述实施例中步骤305的描述。
步骤406:根据特征指数,将目标区域的影像信息分割为对象区域和非对象区域,对象区域中包括目标对象。
在本步骤中,在确定了水体指数后,可以根据水体指数将目标区域的影像信息进行分割,将包含水体的区域作为对象区域,即前景。将其余的影像信息作为非对象区域,即背景。
步骤407:计算对象区域和非对象区域之间的最大类间方差。
在本实施例中,可以利用OTSU(Nobuyuki Otsu,大津法,是一种自适合于双峰情况的自动求取阈值的方法,简称“OTSU”)图像分割技术计算最大类间方差,原理如下:
采用步骤305中的公式(1)对目标区域的影像信息进行水体指数提取,对于完成水体指数提取的灰度图像I(x,y),前景(对象区域)和背景(非对象区域)的分割阈值记作T,前景像素点数占整幅图像的比例为ω0,其平均灰度μ0。背景像素点数占整幅图像的比例为ω1,其平均灰度μ1。图像的总平均灰度记为:
μ=ω0*μ0+ω1*μ1。 (2)
类间方差记为g。假设:背景较暗,且图像的大小为M×N(M,N为像素个数)。图像中,像素灰度值小于阈值T的像素个数记作N0,像素灰度值大于阈值T的像素个数记作N1,则有:
ω0=N0/(M×N) (3)
ω1=N1/(M×N) (4)
N0+N1=M×N (5)
ω0+ω1=1 (6)
μ=ω0*μ0+ω1*μ1 (7)
g=ω0(μ0-μ)^2+ω1(μ1-μ)^2 (8)
将式(5)代入式(6),得到等价公式:
g=ω0*ω1*(μ0-μ1)^2; (9)
g就是类间方差,采用遍历的方法得到使类间方差g最大时对应的目标灰度值T1。其中边缘(最大、最小)灰度等级可以不作为门限提取的阈值。比如,目标灰度值T1可以根据水体指数图的灰度直方图特征得出。从灰度值0-255依次计算每个灰度值对应的类间方差和类内方差,当类内方差最小,类间方差最大时,对应的图像灰度值即为目标灰度值T1。
步骤408:根据最大类间方差对应的目标灰度值和特征指数计算提取阈值。
在本步骤中,通过OTSU方法可以有效的将部分水体和陆地分开,主要针对水体区域在影像信息中占比较大的提取结果较好。但由于水体在图像区域内的性状不断变化,仅仅使用OTSU方法往往很难跟踪到水体区域,因此可以结合种子点阈值门限法,计算出最终的提取阈值进行提取。
于一实施例中,步骤408可以包括:计算对象区域与非对象区域之间的第一极差,并为第一极差的赋予预设的修正系数后,得到第二极差。计算特征指数与第二极差之间的差值。在目标灰度值和上述差值中,选取最小值作为提取阈值。
在本步骤中,可以采用步骤305中的公式(1)对目标区域的影像信息进行水体指数(即特征指数)计算,假设得到的水体指数为T2。则用于图像分割最终提取阈值计算方式如下:
T=min{T1,T2-N(Vmax-Vmin)} (10)
其中,T为提取阈值。T1为所求的最大类间方差下所获得的目标灰度值。N为修正系数该修正系数可以根据历史记录统计得出,比如此处设置为10%。Vmax和Vmin分别为水体指数图像中剔除左右1%后的最大值和最小值。
步骤409:采用提取阈值对影像信息进行图像分割,提取出目标对象。
在本步骤中,可以将提取阈值作为区域生长的分割阈值,并结合步骤303选取的种子点,对目标区域的影像信息进行区域增长,进而提取出目标对象。
于一实施例中,假设Fe表示每个像素是否为水体的判别函数,则该函数可以表示为:Fe=f1(Pw(x,y)),其中Pw为图像中某个坐标为(x,y)的像素点的水体指数的获取函数,f1表示用于判别图像水体区域的图像分割判别函数。假设C表示每个像素点是否为种子点联通区域内水体的判别函数值,设C=f2(Fe),f2为每个像素点是否为种子点联通区域内水体的判别函数。则可得,判别每个像素点是否为种子点联通区域内水体时,可采用泛函计算公式如下:
C=f2(f1(Pw(x,y))) (11)
上述公式(11)中水体指数Pw求取过程,可与f1、f2函数计算分开执行。在执行图像分割运算时需获得提取阈值,而提取阈值的获取基于遥感图像的直方图、梯度、最大值和最小值等信息,这些信息可与图像地物指数(如水体指数Pw)一并获取且落盘,可节省数据落盘次数,提高计算效率。通过合理的函数叠加计算,不仅避免了数据反复落盘的问题,也使得程序内存占用不至于过大,提高了程序执行效率。
于一实施例中,可以将区域生长算法和图像分割二值化算法合并执行,例如将经过区域生长算法所得到的的水体区域与非水体区域进行二值化,然后存放至缓存中,由于省去了二值图像生成并存储到磁盘的中间步骤,因此大大提高水体提取算法执行效率。
如图5所示,其为2017年对中国西北五省和内蒙古境内覆盖湖泊501的影像分布和湖泊501的提取结果图,在地图上的对应地理位置,可以标记出对应的湖泊501的图斑,并可以生成对应的湖泊属性,比如湖泊面积大小、周长等。
于一实施例中,基于PIE-IIE软件(全名PIE智能交互式信息提取软件)进行水体对象提取,首先将下列各参数写入配置文件中:
1)透射波段:待提取影像的透射波段。
2)吸收波段:待提取影像的吸收波段。
3)偏移量:指水体指数的上下限
4)小斑门限:对提取的水体面积小于此值的自动剔除碎斑。
5)区域比例:待提取影像水体占影像的面积比例。
6)矢量面文件:处理区域范围的矢量文件(如:提取安徽省的所有湖泊,为了过滤其他省份的影像,此处需添加安徽省界限)
7)种子点矢量文件:待提取水体影像的种子点文件(类似在待提取地物上添加的点图元文件)
8)输出路径:提取结果输出路径。
9)处理影像路径数量及影像路径:将需要处理的影像所在路径列于配置文件中,并填写好路径数量。
水体对象提取结果如下表1所示:
表1实例数据信息及精度信息
其中,7景多光谱影像覆盖水体共89个,正确识别了86个水体,精度为93.3%。可依据提取结果再办公软件上进行简单整理,按要求得到相应统计报表。
请参看图6,其为本申请一实施例的对象提取装置600,该装置可应用于图1所示的电子设备100,并可以应用于上述藉由遥感影像提取水体信息的场景之中,用以实现根据目标区域的遥感影像,提取出对应的水体信息。该装置包括:获取模块610、处理模块620、选取模块630和提取模块640,各个模块的原理关系如下:
获取模块610,用于获取包含目标区域的样本影像。详细内容参见上述实施例中步骤201的描述。
处理模块620,用于根据目标区域的预设特征,对包含有目标区域的样本影像进行处理,以获得目标区域的影像信息。详细内容参见上述实施例中步骤202的描述。
选取模块630,用于在目标区域的影像信息中,选取对应于目标对象的种子点。详细内容参见上述实施例中步骤203的描述。
提取模块640,用于根据种子点所包含目标对象的特征指数,提取在目标区域中的目标对象。详细内容参见上述实施例中步骤204的描述。
于一实施例中,选取模块630用于:获取种子点的像素。计算种子点的像素对应于目标对象的特征指数。详细内容参见上述实施例中步骤304和步骤305的描述。
于一实施例中,提取模块640用于:根据特征指数,将目标区域的影像信息分割为对象区域和非对象区域,对象区域中包括目标对象。计算对象区域和非对象区域之间的最大类间方差。根据最大类间方差对应的目标灰度值和特征指数计算提取阈值。采用提取阈值对影像信息进行图像分割。详细内容参见上述实施例中步骤406和步骤409的描述。
于一实施例中,根据最大类间方差对应的目标灰度值和特征指数计算提取阈值包括:计算对象区域与非对象区域之间的第一极差,并为第一极差的赋予预设的修正系数后,得到第二极差。计算特征指数与第二极差之间的差值。在目标灰度值和上述差值中,选取最小值作为提取阈值。采用提取阈值对影像信息进行图像分割包括:藉由提取阈值作为区域生长的分割阈值,并结合种子点,对目标区域的影像信息进行区域增长。详细内容参见上述实施例中的相关描述。
本发明实施例还提供了一种电子设备可读存储介质,包括:程序,当其在电子设备上运行时,使得电子设备可执行上述实施例中方法的全部或部分流程。其中,存储介质可为磁盘、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random AccessMemory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等。存储介质还可以包括上述种类的存储器的组合。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。