基于水平集的航拍影像阴影检测与去除系统设计

2014-11-07 01:08王倩倩杨顺云张静罗怀芍张志诚
科技资讯 2014年10期

王倩倩 杨顺云 张静 罗怀芍 张志诚

摘 要:建筑物、树木和山脉等遮挡光线,可能使航拍影像中出现阴影。而阴影区域的存在可能影响图像后续处理,导致重要信息丢失。本系统旨在设计自动检测航拍影像中阴影区域并将其去除的系统,选择并搭建基于水平集航拍影像阴影检测算法的进行系统设计。系统主要功能包括:图像读入、图像去雾、阴影检测、阴影去除。

关键词:航拍影像 图像去雾 阴影检测 阴影去除 水平集

中图分类号:TP391.41 文献标识码:A 文章编号:1672-3791(2014)04(a)-0042-02

1 系统研究意义

建筑物、树木和山脉等遮挡太阳光线,使遥感航拍影像中存在阴影区域。阴影区域的存在可能导致重要信息的丢失,进而影响影像的后续处理,如图像配准、图像内容理解、分割、特征提取、目标变化检测和定位等。阴影检测是遥感航拍影像中地物跟踪、分类和识别等处理的重要步骤之一,目前阴影检测技术可分基于模型与基于阴影属性两大类,基于模型的方法需有关影像中地物几何形状或DSM数据、太阳高度角、传感器参数等知识,计算复杂,且适用于特定场景。基于阴影属性的方法通过分析阴影区域在亮度、几何结构和颜色等方面的共性及其与非阴影区域的差异来检测阴影区域,应用比较复杂[1]。

本系统旨在开发设计自动检测航拍影像阴影区域并将其去除的系统。选择并搭建基于非匀质区域水平集航拍影像阴影检测算法的系统开发平台,实现自动检测阴影区域并将其去除。系统主要功能包括:图像读入、图像去雾、阴影检测、阴影去除。

图像阴影区域极可能含重要信息,准确检测阴影区直接关系到影像后续处理及获取与识别阴影区中重要信息的成效。本系统所用的算法不仅可解决传统阴影检测方法中对非匀质同块阴影区检测不全面的问题,也可检测到传统方法中漏检的亮阴影区。检测到的阴影区连续、边缘清晰整齐,并能有效排除绿色植被干扰,检测正确率高,漏检率低,检测全面,阴影区提取方便。

2 国内外研究现状

G.D.Finlayson等最早提出利用彩色不变量来进行阴影检测、阴影消除[2],但是这些彩色不变量要在图像满足中性界面反射模型的条件下才成立[3],而且很多的航空影像都难以满足此条件。Akira Suzuki等人[4]提出了一种基于颜色和空间概率信息的动态阴影补偿的方法,此方法能较有效地对阴影区域进行补偿,提高了阴影区域内的对比度,但是阴影依然存在,而且此方法在计算过程中对于空间概率的获取需要事先利用大量样本进行统计计算得到,故此不能实现单张图片的实时处理[5]。

而阴影处理类软件有杭州华三通信技术有限公司的运动阴影检测方法和装置、中国人民解放军国防科学技术大学的面向智能视频监控的实时部分遮挡车辆分割及阴影消除方法、上海大学的高分辨率遥感影像中的阴影检测方法。这类软件相关技术产品,或功能无我系统深入,或应用无我系统全面,又或者专业技术要求太高,一般使用者难以上手。

如今市面已出现很多图像处理类软件,国内相关软件有美图秀秀、可牛影像、光影魔术手、isee等;国外相关产品有 Adobe Photoshop、Adobe Illustrator CS、Corel Painter等。这些软件各具特色,但专业用于航空、遥感图像处理的软件,目前的市面上还没有出现。

本系统是一项自动检测航拍影像中阴影区域并将其去除的软件,同时基于军事和城市规划与管理的实际需求,应用领域广泛,如国家地理信息测绘、军事力量估计、商业纠纷司法取证、煤矿石油的资源勘探等。关于航空、遥感图像阴影的检测与去除的研究现在还处于初级阶段,所以说本系统是非常迎合市场需求和科学前沿的产品,具有强大的生命力。

3 算法介绍

借鉴西南交通大学信号与信息处理实验室提供的遥感影像阴影处理算法实现系统的研究与设计。针对图像去雾,利用基于黑色通道先验知识,对图像边缘和非边缘分别采用不同的模板处理得到透射图,并通过分割天空区域,或者雾最浓区域求得准确的大气光值[6]。利用该方法可以恢复出和原方法基本一致甚至更准确的结果,并且可以大大减少消耗,克服了对浅色区域恢复失真的问题,使去雾后的场景更为自然,提升计算速度。针对阴影检测,采用了基于非匀质区域水平集检测阴影算法[7],既可解决传统阴影检测方法中对非匀质同块阴影区检测不全面、区域内出现空洞的问题,也可检测到传统阴影检测方法中漏检的亮阴影区。针对阴影去除,采用色彩空间变换,使用基于区域补偿的遥感图像阴影去除方法,利用其最小外接矩形的统计特征对阴影区域进行补偿,以恢复被阴影覆盖区域的原貌[8]。

4 系统设计与实现

4.1 系统设计

该软件系统使用了Inter公司建立的基于(开源)发行的跨平台计算机视觉库OPENCV。它由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,可以实现图像处理和计算机视觉方面的很多通用算法。而本系统正是巧妙地利用了其轻量级、高效性以及良好的可移植性等诸多优点,将其与微软基础类库MFC集成于在计算机领域享誉盛名Visual Studio软件开发平台下的,实现了操作简单,用户友好的可视化软件编程。

其核心功能的部分包括三大模块:图像去雾、阴影检测、阴影去除,同时对图像的一些基本图形变换提供支持。虽然本系统无需处理复杂的业务逻辑,也没有庞大的数据库设计对系统中相应的少量数据结构提供技术支持。但我们并非旨在设计业务型的系统,而是重在对图像处理的相应算法进行深入研究与实现,从而为现实世界中的图像识别需求提供便利。本系统中的三大模块分别由黑色通道先验、水平集演化以及色彩空间变换作为核心实现算法,并做出了自身相应的创新与改进,以更好的实现本系统的需求同时为其增添相应特色。

本系统所增设的几大特色功能使其相较于国内已有的少量相似性产品更显优质与突出。比如对于超大型航拍图像的处理,我们采用了分块读入再处理最后合并的方法,提高了处理效率,减小了计算机的内存负担;又比如对于绿地干扰较严重的区域,本系统可以人性化地支持用户手动选择是否进行去绿处理,从而决定是否通过HSV变换将绿色植被区从图像中突显出来。这样既提升了系统的交互性,又使系统的处理结果更加准确。

其中,本系统设计的界面如图1所示。

4.2 系统实现

4.2.1 图像去雾前后图片展示

4.2.2 图像阴影检测原图与检测结果图展示

好,被建筑物和绿色植被遮挡的阴影部分都被检测出来。

4.2.3 图像阴影去除前后图片展示

5 结论

本系统成功实现自动检测航拍影像中阴影区域并将其去除的功能,搭建的基于非匀质区域水平集航拍影像阴影检测算法的系统开发平台,较好的支持系统的运作。系统各部分功能,大图读入、图像去雾、阴影检测、阴影去除等都得到较好地实现。本系统可以有效处理大部分航拍图像,以及一般用户的图像,但阴影边界处的修复效果可能有待提高,另外系统对个别图像处理效果有待加强。

参考文献

[1] 王玥,王树根.高分辨率遥感影像阴影检测与补偿的主成分分析方法[J].应用科学学报,2010,28(2):136-141.

[2] D.Finlayson,S.D.Hordley.M.S.Drew.Removing shadows from images using retinex[Z].Proceedings of IS & T/SID Tenth Color Imaging Conference:Color Science,Systems and Applications,2002:73-79.

[3] 唐亮,谢维信,黄建军.城市彩色航空影像中的阴影检测[J].中国体视学与图像分析,2003,8(3):129-134.

[4] Suzuki,A.Shioand S.Ohtsuk a.Dynamic shadow compensation of aerial images based on color and spatial analys is [A].Proceedings of 15th International Conference on Pattern Recognition,2000,1(1):317-320.

[5] 鲍海英,李艳,尹永宜.城市航空影像的阴影检测和阴影消除方法研究[J].遥感应用,2010(1):44-47.

[6] 褚宏莉,李元祥.基于黑色通道的图像快速去雾优化算法[J].电子学报,2013,41(4):791-796.

[7] Chunming Li, Rui Huang.A Level Set Method for Image Segmentation[J].IEEE TRANSACTIONS ON IMAGE PROCESSING,2011,20(7):2007-2015.

[8] 鞠何其.基于色彩空间变换的遥感影像阴影检测与去除技术[D].上海交通大学硕士学位论文,2009:15-50.