复杂场景下在建建筑区域识别方法①
2019-01-18周文一何小海卿粼波万园洁郑新波
周文一, 何小海, 卿粼波, 万园洁, 郑新波
1(四川大学 电子信息学院, 成都 610065)
2(东莞前沿技术研究院, 东莞 523000)
目前, 我国正处于城镇化加速发展的时期, 一些地区的“城市病”问题日益严重[1]. 为解决城市发展难题,实现城市可持续发展, 建设智慧城市已成为当今世界城市发展不可逆转的历史潮流[2]. 城市服务是智慧城市信息化管理中重要的一部分, 城市中违章建筑的查处往往需要大量的时间和人力. 实现自动的在建建筑检测, 再由相关部门筛查, 可以大大提升查处效率, 并且在其建成之前能够及时地制止, 减小经济损失, 将违法建设制止于萌芽阶段. 本项目高空云平台驻空高度约为200~300米, 用于实现广域物联网的数据采集、应急集群通信、光学监控等功能, 可以为平安城市、智慧城市提供坚实的信息化基础. 基于高空云平台的智慧城市信息化管理平台, 在建建筑的检测是建立在高空相机对监控区域的图像实时采集的基础上, 通过分析城市的全景图来检测是否存在在建建筑区域.
在复杂场景下的建筑目标识别, 是具有挑战性的课题, 而在建建筑识别又是一个更加新颖的课题. 在国内外文献中, 大多都是在卫星遥感图像中对整个建筑目标区域进行提取, 徐佳等[3]利用灰度与纹理综合特征对高分辨率星载合成孔径雷达(SAR)图像的建筑区域进行提取; 吴炜等[4]利用光谱和形状特征相结合的方法对高分辨率遥感图像中的建筑物进行提取. Maarir等[5]用曲率尺度空间法对城市和郊区卫星图像中的建筑物进行检测. 丁文锐等[6]对无人机图像使用MSER(Maximum Stable Extremal Regions)算法进行建筑区域的实时提取. 王慧敏等[7]在多尺度分割的基础上实现对倒塌建筑物的提取. 以上影像中在建建筑区域均以垂直视角展示. 在非垂直视角的城市高空图像中, 金泰松等[8]基于建筑目标的竖直线特征对城市建筑的整个轮廓进行提取. 上述所有文献都是对整个建筑目标区域进行提取, 并没有对其中的在建建筑进行识别.
在遥感影像违章建筑的识别研究中, 通常是先对建筑物进行提取, 然后必须结合额外的房屋数据才能完成对违章建筑的识别. 林剑远等[9]就是先利用形态学标记分水岭算法提取高分辨率遥感影像中的建筑物图斑, 然后结合房屋产权数据从而识别违章建筑. 然而,由于房产数据不透明, 没有这类数据的平台则无法用类似方法进行违章建筑检测.
与现有文献针对的SAR图像、高光谱图像及无人机机载摄像机拍摄的图像不同, 高空云平台拍摄的图像主要具有以下识别难点:
(1)拍摄高度相对较低, 因此拍摄到的场景背景复杂、内容丰富、场景多变, 包含建筑密集的城市市区场景, 或建筑较稀疏绿色植被较多的郊区场景;
(2)相机视角多变, 高度不固定, 因此拍摄的建筑视角和在图像中所占的比例不确定.
通过上述分析, 本文充分利用在建建筑区域的视觉特征, 建立角度多样形态丰富的特征库, 提出基于内容检索的多特征的高空影像中在建建筑区域识别方法,能够有效地识别在建建筑.
1 基于CBIR的在建建筑识别框架
1.1 在建建筑特征分析及算法设计
在建建筑区域的示例如图1, 它们通常有如下一些特征: (1)裸露的黄土, 但是将其作为在建建筑的判别标准, 易与闲置的土地或种植农作物的土地混淆;(2)蓝色的活动板房以及蓝色的防护栏, 由于蓝色的活动板房还广泛用于灾区等一些临时住宅点, 以及道路施工现场, 故其不能很好地作为在建建筑的标志性特征; (3)塔吊在建筑工地上比较常见, 属于建筑场地的特有设备之一, 颜色比较统一, 通常为黄色或红色, 形状比较特殊, 因此可以作为在建建筑的标志性信息;(4)绿色防护网是另一个在建建筑工地常有的标志性信息. 因此, 选取塔吊和绿色防护网为在建建筑区域的标志性信息, 且它们都具有显著的颜色特征, 故提取在建建筑区域的颜色特征. 但由于光照或角度的影响, 绿色植被与绿色防护网的颜色特征会产生混淆, 而他们的纹理特征不同, 故提取在建建筑区域的纹理特征, 可在一定程度上区分他们.
图1 在建建筑区域数据集部分示例
通过上述分析, 本文拟采用基于内容的图像检索技术[10](Content-based Image Retrieval, CBIR), 利用图像库中图像的视觉特征与待检测图像的相同特征做相似性度量, 从而获得检索结果. 在实验过程中发现对于一些受光照影响的图片, 某些绿树的颜色特征会对绿色防护网的颜色特征造成干扰, 从而造成误判. 如图2所示, 绿色植被误判成了在建建筑. 为了解决该问题, 本文选择在对输入的高空图像进行分块之前对其使用聚类算法进行聚类, 以便将绿树区域筛除, 留下建筑区域, 再对其进行分块的建建筑识别.
图2 误判示例
本文的算法流程图如图3所示: (1)对包含在建建筑的大图数据集进行分块, 挑出只包含在建建筑的小图数据集, 并对该数据集的大小进行归一化, 对其进行颜色和纹理特征提取, 得到可以表征在建建筑的多特征矢量, 由这些特征矢量构建图像特征索引库; (2)对待检测图像剔除绿色植被区域, 再分块切割成与数据集中图像相同大小的一组小图像并计算特征矢量;(3)将其与特征索引库中的矢量做相似性度量, 记录每一个小块在大图中的左上角的坐标, 根据长宽计算出该小图在大图中的位置, 用一个红色矩形框包含检测到的多个小图, 并形成唯一的标识符. 以下分别从预处理及特征提取, 绿色植被区域自动检测, 相似性度量的方式三个部分作详细阐述.
图3 本文算法流程图
2 预处理及特征提取
2.1 预处理
本算法的背景系统是建立在高空相机对监控区域的图像、视频采集的基础上. 对高空相机所获得的视频和图像数据进行处理. 通过图像校正技术实现对图像的配准, 以及局部区域及全局区域图像的拼接, 为后续的在建建筑检测做好准备.
由于拼接图像尺寸较大, 为了便于保存, 将拼接图像裁成1920*1080的大小, 但其包含的内容仍然较丰富, 提取其特征有冗余信息, 无法准确地表现在建建筑区域的特征, 故分析高空影像素材中在建建筑区域的大小, 将待检测图像进行从上到下S形分为32块, 大小为240*270, 既方便计算在建建筑区域的位置又保证能充分提取其整体特征. 特征索引库的数据集采用零像素扩充的方式将其归一化到同样大小.
2.2 特征提取
通过上节分析, 塔吊和绿色防护网都具有显著的颜色特征. 颜色特征与实际的物体或场景具有较高的相关性, 而且对图像的方向、尺度和视角不敏感, 比其他特征更易获得, 提取其颜色特征, 能有效将在建建筑与普通建筑区分开来.
将输入的RGB图像转换到更符合人类视觉系统的HSV色彩空间, 由于人眼对色调(H)非常敏感, 亮度(V)反映在建建筑的形状特征比较重要, 饱和度(S)反映颜色深浅, 而不同的光照和角度会使在建建筑的颜色深浅不同, 三个分量都比较重要, 故将H、S、V分量均做的12级非均匀量化:
灰度共生矩阵[11]是常用的统计型纹理特征, 用来描述像素灰度的空间相关性. 在灰度共生矩阵的基础上, 熵是图像所含信息随机性的度量; 能量是图像灰度分布均匀程度和纹理粗细程度的度量[11]; 对比度是图像清晰程度和纹理沟纹深浅程度的度量; 均匀性[12]能反映局部区域的纹理特征, 是区分目标的重要参数. 故本文通过计算灰度共生矩阵的熵、能量、对比度和一致性四种参数来描述图片的纹理特征. 为了使提取的纹理特征具有更好的旋转不变性, 分别取像素间两两互补的角度, 像素间的距离取1和为了减小特征提取的计算量, 将图像的灰度级由原来的256级压缩至8级, 最终得到16维的纹理特征向量
对数据集提取相同的特征, 由这些52维的特征矢量构建图像特征索引库.
3 基于颜色聚类的植被区域检测
为了避免绿色植被对在建建筑区域识别的干扰,采用颜色聚类的方式对植被区域实现自动检测, 流程图如图4所示.
图4 颜色聚类流程图
3.1 植被区域的自动检测
本文颜色聚类方法根据图像的主要构成颜色自动选取初始聚类中心. 分析图像的颜色构成需要计算图像的颜色直方图, 为了简化图像颜色的构成从而减小计算量, 需要对图像颜色进行量化, 减小计算的复杂度.
首先, 对输入的1920*1080大小的RGB图像采用颜色聚类前的HSV色彩空间各分量12级的非均匀量化, 得到量化后的图像.
统计量化后图像每种颜色所占的比例, 并按降序排列, 得到量化图像的颜色直方图. 取出占比最多的前N种颜色,N的最小值满足:
其中,Histogrami为第i种颜色在量化图像中所占比例,i取值范围为[1,N]. 既保证取出图像中占比不小于85%的颜色, 同时取出的颜色数量最少.
通过大量实验, 聚类的颜色类别数K选择3可以将输入图像中的不同区域(绿色植被, 建筑区域, 其他)有效地分开. 根据用户输入的颜色类别数K对图像的N种主要构成颜色使用层次聚类算法进行聚类, 得到K个图像构成颜色[13].
图片的主要构成有建筑、植被、天空或道路, 通过实验选取三个颜色作为颜色列表, 其RGB各分量值为[85 100 100]、[120 140 110]、[235 235 230], 将聚类后各类别的组成颜色与颜色列表做比较, 用与列表中距离最小的颜色重新为聚类图像赋值.
3.2 基于最小割算法的聚类区域填充
由于光照、角度以及图中物体自身的差异, 聚类后的图像在同一个区域中会有其他类别的像素, 使得聚类后的同一图像区域的划分出现孔洞不够连贯, 影响后续绿色植被区域的选取. 为此, 选择最小割算法[14-16]对聚类后的图像进行平滑处理. 最小化如下聚类图像的能量函数:
区域项表示像素i属于类别概率的负对数, 其概率是用像素的实际颜色Img(i)与聚类后每一类中心ClusImg(j)的色差计算得出, 区域项越小表示像素i属于类别的可能性越大.
Euc(·)为像素间颜色的欧式距离.
边界项表示分割L的边界属性, 其中,表示输入图像8邻域的无序像素对集合;为像素i和j之间不连续的惩罚;为指示函数, 指示像素i、j的类别、是否相同.
统计最小割算法优化后图像中各区域像素的个数,将像素个数小于阈值 αP的区域合并到与其相邻边界最长的区域中, 最终消除聚类图像中零散的面积很小的区域, 生成的平滑、区域连续的聚类图像. 其中,P为输入图像Img的像素总数取0~3%.
平滑后的图像区域颜色的RGB值是[120 140 110]的区域为绿色, 将其赋值[0 0 0], 则绿色植被区域的像素置零. 不仅可以在包含在建建筑的图中有用, 可以避免其对在建建筑区域识别的影响, 效果如图5前两组结果所示; 在包含大面积绿色植被的图中也有效, 因为在识别的时候, 绿色植被区域可能误判成在建建筑, 效果如图5第三组结果所示.
图5 绿色植被区域检测结果
4 相似性度量方式
本文采用欧式距离法来度量待识别图像的特征矢量与特征库中特征矢量的相似性, 分别计算待识别图片颜色及纹理特征与特征库中的欧式距离. 设待识别图像为Img, 特征库中的图片为Fea.
1)颜色特征相似度
计算数据集中的36维颜色特征与特征库中每张图片同维数颜色特征的欧式距离:
其中,h、s、v代表图片各分量的特征,表示特征非均匀量化为12级.
2)纹理特征相似度
计算数据集中16维颜色特征与特征库中每一张图片相同维数纹理特征的欧式距离:
其中,t和i=(1,···,16)表示16维纹理特征.
在分别计算待识别图片与特征库中每一张图片的两种特征相似度后, 将两种结果分别进行升序排序, 取最小值进行判定, 判定方式本文研究了以下两种:
(1)综合特征相似度判定
采用加权融合的方式融合颜色和纹理的特征距离:
然后判断Dis是否小于预设定的阈值, 若小于则判定该图片存在在建建筑. 考虑到在拍摄时摄像机镜头晃动造成的图片模糊对纹理特征的影响较大, 而对颜色特征的影响较小, 因此在相似性度量时弱化纹理特征对识别结果判断的影响, 给以较小值.
(2)分离特征相似度判定
由于颜色特征较纹理特征在识别时具有更强的鲁棒性, 故本文提出在颜色特征满足条件的情况下再判断纹理特征是否满足给定条件. 即先判断Col是否小于预设定的阈值, 再判断Tex是否小于预设定的阈值.
实验结果显示, 分离特征相似度判定方式的效果整体较综合特征相似度判定方式好, 且当时识别率相对较高, 故选取其为最终的颜色和纹理特征的阈值.
5 识别结果及分析
5.1 数据集
本文的图像数据集大部分由高空相机对监控区域采集的图像和视频, 筛选、分帧得到, 其余为网上挑选下载, 然后归一化为240*270的大小, 共约700张.
5.2 结果及分析
对于在建建筑区域的框选, 是基于整个在建建筑区域划分, 而不是基于每一栋在建的建筑. 对在建建筑依次用红色方框框选出来, 并对每一个在建建筑区域形成唯一的英文字母、数字组合而成的标识符. 本文对比了聚类前后对识别率的影响, 识别率为正确识别的图片张数/测试集图片的总张数.
表1显示未颜色聚类对测试集的识别结果, 测试集共238张图片, 其中存在在建建筑90张, 非在建建筑148张, 识别率为0.874. 表2显示对相同的测试集先聚类再识别的结果, 识别率为0.933. 如图8所示, 可以有效防止误检.
表1 未颜色聚类的识别率
表2 颜色聚类后的识别率
图8 颜色聚类结果
通过对颜色聚类前后测试集的识别结果对比, 在识别前对图片进行颜色聚类可以提高识别率. 在1920*1080图像中的在建建筑区域识别结果如图9, 图10显示在全景拼接图像中的在建建筑区域识别结果.
图9 部分1920*1080的图中识别结果示例
图10 部分全景拼接图像中的识别结果示例
6 总结
在建建筑区域的自动识别能够有效地实现智慧城市的信息化管理, 本文根据城市高空影像中的真实场景, 提出基于在建建筑颜色和纹理特征的在建建筑区域识别方法. 该方法首先对分块图片用本文改进的颜色聚类方式进行处理, 然后提取其颜色及纹理特征, 与特征库中的图片特征采用分离特征相似度判定方式进行判定, 将包含在建建筑的分块图片在大图中进行整合, 用唯一的标识符标记出来. 通过实验, 该方法能够有效地识别出城市高空影像中的在建建筑区域. 在进一步的工作中, 将对图片进行去云去雾及高照平衡等预处理, 并考虑提取在建建筑其他特征, 以减少误检和漏检的情况发生, 并提高算法的鲁棒性.