一种改进的高光谱图像CEM目标检测算法
一种改进的高光谱图像CEM目标检测算法
人工智能技术与咨询
来源:《 应用物理》 ,作者付铜铜等
关键词: 高光谱图像;光谱重排;CEM算法;目标检测;
摘要: 约束能量最小化(Constrained Energy Minimization, CEM)目标检测算法广泛应用于高光谱目标检测中。本文在分析CEM算法的推导过程后,发现图像像元的选择,可以改善自相关系数,因此提出一种改进的CEM目标检测算法。该方法首先对高光谱数据集进行光谱重排、一阶微分,增加目标与背景的差异性;计算目标光谱与数据集中光谱点的相似度,求取CEM算法的自相关矩阵时去除与目标相似度高的像元,减少自相关矩阵对目标的抑制。为进一步抑制背景,增加算法的普适性,加入对数算子。最后对合成高光谱数据和真实高光谱数据进行试验,结果表明,与传统算法相比,提出的算法可以对伪装目标进行有效识别,而且对小目标和大面积目标检测都具有适用性。
1. 引言
高光谱遥感技术获得物质连续的光谱曲线,具有“光谱合一”的特点 [1] ,被列为遥感技术在20世纪三个最显著的进展之一 [2] [3] 。高光谱技术广泛应用于目标检测。根据先验经验是否可知,目标检测方法可分为有监督检测和无监督检测。无监督目标检测中经典算法为RX算法。文献 [4] 在RX中加入核函数提出一种非线性的异常目标检测算法:KRX (Kernel RX, KRX)算法。有监督目标检测中经典算法为CEM算法和自适应余弦一致性估计(Adaptive cosine Consistency Estimation, ACE)算法。文献 [5] 提出一种加权ACE算法。文献 [6] 提出一种基于双时间段检测的CEM算法。本文通过研究CEM算法,通过改善自相关矩阵及加入对数算子,提出一种不仅适用于大面积目标而且适用于小目标的改进的CEM (Modified Constrained Energy Minimization, MCEM)算法。
2. CEM算法
3. 改进的CEM算法
分析CEM算子可知,影响检测结果的量只有两个:目标先验光谱适量 dd 和自相关矩阵 RR ,当给定 dd 后,自相关矩阵 RR 的准确度直接影响算法的精确度。研究CEM算子的推导过程的两个约束条件可知, RR 是为了限制背景的输出,它由背景像元光谱求出。然而CEM算子在计算 RR 时把目标也计入其中,从而导致算子对目标的抑制。如果把疑似目标剥离 RR 的计算,那么我们就能得到更加精确有效的检测结果。在确定疑似目标过程中,往往会把非目标当做目标,算子对这些像元就会有一定的增强。为了抑制这些像元,我们加入对数算子,对背景进行进一步抑制。至此,本文提出一种改进后的CEM算法:MCEM算法。步骤如下:
4. 试验及结果分析
将提出的MCEM算法与CEM算法、ACE算法和RX算法进行比较,来验证提出算法的优越性。实验中所用高光谱数据来自美国RIT (Rochester Institute of Technology, RIT)大学的高光谱目标检测项目。高光谱图像大小为280 *800,包含126个波段,光谱范围为400~2500 nm。高光谱图像全景如图2所示。
4.1. 成高光谱试验
截取图2中右下角200 *200区域的绿色森林区作为背景,如图3所示。数据集中存在一白色色汽车标准光谱。白色汽车如图4所示。我们选取几处绿色区域的光谱求取平均值,作为绿色背景光谱。我们把背景光谱和汽车标准光谱按一定的比例线性混合,并加入噪声作为伪装目标。伪装目标光谱合成公式如下:
car为汽车的标准光谱,bac为背景光谱,sa为噪声,通常为高斯白噪声。此处我们取n = 6。目标植入坐标分别为(50, 50)、(50, 100)、(50, 150)、(100, 50)、(100, 100)、(100, 150)、(150, 50)、(150, 100)、(150, 150)。背景光谱、汽车标准光谱和伪装目标光谱如图5所示。
Figure 6. Test results of four algorithms
图6. 四种算法的检测结果
相比接受器操作特性(Receiver Operating Characteristic, ROC)曲线来说,ROC曲线下面积(Area Under roc Curve, AUC)值能更好地衡量算法的性能。AUC值越大,表示算法检测效率越高。AUC值可以更好地定性显示算法检测能力大小。为更好地定量分析算法的优劣性,我们使用AUC值和算法运行时间来评判算法的优劣性。
表1为图6对应算法检测结果的AUC值和算法运行时间。算法的AUC值与图6检测结果一致,四种算法的检测效果由好到坏依次为:MCEM算法、CEM算法、ACE算法和RX算法。MCEM算法结果明显优于CEM算法,虽然MCEM算法需要更多时间,但MCEM算法能有效地抑制背景,消耗一定的时间从而提高检测精度是有意义的。
RX算法 |
CEM算法 |
ACE算法 |
MCEM算法 |
|
AUC |
0.999974942 |
0.999974981 |
0.999974968 |
0.999974986 |
运行时间 |
0.933461 |
1.271415 |
1.462738 |
1.716750 |
Table 1. Comparisons of algorithmic performance
表1. 算法性能对比图
4.2. 真实高光谱试验
Figure 8. The yellow fabric target
图8. 黄色织物目标
为验证算法的有效性,分别使用ACE、CEM、未加对数算子的MCEM和MCEM算法对图像进行目标检测。目标检测结果如图9所示。
由图9可以看出,ACE算法可以对背景进行有效地抑制,但是目标附近的像元也被极大地增强,因此ACE算法识别出的目标点比实际的目标点面积大。CEM算法可以有效地识别目标,并有效地限制背景输出,但是有些背景像元点输出明显高于周围像元输出。而未加对数算子的MCEM算法检测结果与CEM算法检测结果,几乎一模一样。说明不增加对数算子的MCEM算法对单个目标的识别效果与CEM算法相比,没有得到有效地改善。而MCEM算法检测结果对CEM中的突出点也有较好地抑制。与传统算法相比,MCEM算法对单个目标的检测也有不错的性能。在该实验中,各算法的AUC值和运行时间如表2所示。
Figure 9. Target detection results of algorithms
图9. 各算法目标检测结果图
ACE算法 |
CEM算法 |
未加对数算子的MCEM算法 |
MCEM算法 |
|
AUC |
0.9978 |
0.9984 |
0.9984 |
0.9986 |
运行时间 |
0.365457 |
0.304341 |
0.342657 |
0.368282 |
Table 2. Comparisons of algorithmic performance
表2. 算法性能对比图
由表2可知,CEM算法运行时间少于ACE算法,而CEM算法AUC值大于ACE算法的AUC值,可看出在该实验中,CEM算法优于ACE算法。未加对数算子的MCEM算法AUC值与CEM算法AUC值相同,但其运行时间明显高于CEM算法,故未加对数算子的MCEM算法对小目标的识别效果比CEM算法差。MCEM算法的运行时间大于CEM算法运行时间,但MCEM算法AUC值高于CEM算法的AUC值,即MCEM算法消耗更多的时间来保证算法的检出率,同时降低算法的虚警率,这对我们来说是可以接受的。
5. 结论
本文通过光谱重排、一阶微分增大光谱的差异性,寻找疑似目标,从而改善自相关矩阵,并通过加入对数算子抑制背景,极大提高了目标检测准确性,同时也保证了算法对大面积目标和小目标检测的实用性。但该算法还有一定的局限性:一、该算法需要以目标光谱为基准对数据进行重排,因此对目标光谱的要求较高,然而目标光谱有时很难得到。二、该算法通过光谱重排、一阶微分增大相似光谱的差异性,当通过上述步骤后,还是无法降低目标光谱和背景光谱的相似度时,该算法效果不明显。
我们的服务类型
公开课程
人工智能、大数据、嵌入式
内训课程
普通内训、定制内训
项目咨询
技术路线设计、算法设计与实现(图像处理、自然语言处理、语音识别)
一种改进的高光谱图像CEM目标检测算法相关推荐
- 目标检测论文解读复现之十五:基于YOLOv5的光学遥感图像舰船 目标检测算法
前言 此前出了目标改进算法专栏,但是对于应用于什么场景,需要什么改进方法对应与自己的应用场景有效果,并且多少改进点能发什么水平的文章,为解决大家的困惑,此系列文章旨在给大家解读最新目标检测算法论文,帮 ...
- 中南大学计算机学院雷文太,面向探地雷达 B-scan图像的目标检测算法综述
JOL H M. 雷文太, 童孝忠, 周旸, 译. 探地雷达理论与应用[M]. 北京: 电子工业出版社, 2011. JOL H M. LEI Wentai, TONG Xiaozhong, ZHOU ...
- 目标检测论文解读复现之五:改进YOLOv5的SAR图像舰船目标检测
目标检测论文解读复现 文章目录 目标检测论文解读复现 前言 一.摘要 二.网络模型及核心创新点 三.应用数据集 四.实验效果(部分展示) 五.实验结论 六.投稿期刊介绍 前言 此前出了目标改进算法专栏 ...
- matlab实现大气湍流退化模型算法,大气湍流下退化序列图像的目标检测方法
引言 目标检测是计算机视觉的重要应用之一, 是后续目标识别.跟踪.目标分类以及行为分析的前提.远距离成像时通常会受到复杂变化的大气湍流影响, 使得成像结果中存在不规则抖动.偏移和模糊等退化现象[.因此 ...
- 目标检测论文解读复现之十一:基于特征融合与注意力的遥感图像小目标检测
前言 此前出了目标改进算法专栏,但是对于应用于什么场景,需要什么改进方法对应与自己的应用场景有效果,并且多少改进点能发什么水平的文章,为解决大家的困惑,此系列文章旨在给大家解读最新目标检测算法论文,帮 ...
- 自动驾驶采标系列三:基于图像的目标检测技术
标注猿的第54篇原创 一个用数据视角看AI世界的标注猿 上一篇文章我们从"环境感知"数据的采集设备上进行了详细说明,已经了解了相应设备采集的数据及采集前 ...
- 双目立体视觉建立深度图_从单幅图像到双目立体视觉的3D目标检测算法
原创声明:本文为 SIGAI 原创文章,仅供个人学习使用,未经允许,不能用于商业目的. 其它机器学习.深度学习算法的全面系统讲解可以阅读<机器学习-原理.算法与应用>,清华大学出版社,雷明 ...
- 笔记《基于无人驾驶方程式赛车的传感器融合目标检测算法研究及实现》
论文结构 关键字:无人驾驶方程式赛车,相机,激光雷达,目标检测,传感器融合 一.绪论 1. 感知技术研究现状 1.1.1 基于相机的目标检测技术研究现状 1.1.2 基于激光雷达的目标检测技术研究现状 ...
- 瞬间洞察万物:YOLO目标检测算法的黑科技全揭秘
目录 简介与背景知识: 数据集准备: 模型选择和预训练: 模型构建和训练: 目标检测与推断: 性能优化与改进: 实例应用和扩展: yolo各版本: 总结: 简介与背景知识: YOLO(You On ...
最新文章
- 视学AI,这群大学生做了个牛逼的项目!
- java正则表达式的基本语法以及不同环境的表单验证
- python scatter参数详解_matplotlib.pyplot.scatter散点图结构及用法||参数详解
- MySQL数据库中常见的日志文件汇总!
- 浏览器实验中的故障排除
- game module 停止运行_恒温摇床长时间运行的注意事项
- 多普达D700手机利用USB电缆与电脑连接上网方法
- 如今市面上有哪些可以远程的软件?
- 怎样将自己学到的东西发布到博客
- matlab 平滑曲线连接_Matlab的5个控制类工具箱介绍
- 有关费尔防火墙一书TDI代码“网上邻居”不能访问功能的修复
- poco库开发mysql_Poco数据库操作
- AI论文下载-AAAI ACCV AISTATS COLT CVPR ECCV ICCV ICLR ICML IJCAI JMLR NeurIPS WACV等
- 计算机EI期刊2020,2020年Ei Compendex收录的中国期刊目录( JANUARY 1, 2020 )
- git 加速 看一下效果
- 机器学习-特征归一化
- 项目中站立会议和故事墙的那些事儿—敏捷开发
- ACM-音频编解码器管理器
- 有哪些情人节 情人节大全
- Spring系列学习之Spring Cloud Contract测试消息传递
热门文章
- 万事开头难 - 介绍IMX6ULL启动方式
- c语言随机迷宫生成器,作为新手该如何快速上手 C++
- linux 特定用户ssh,linux - 如何在登录后将SSH用户限制为一组预定义的命令?
- php三级栏目调用,织梦当前栏目调用二级、三级栏目且栏目高亮解决方法
- matlab图片取模程序,彩屏图像取模,BMP图像提取程序示例 | 学步园
- android sdk 封装html5,Android平台以WebView方式集成HTML5+SDK方法
- k8s pod内部容器_第三章 pod:运行于kubernetes中的容器
- LeetCode 2139. 得到目标值的最少行动次数(贪心)
- LeetCode 1660. 纠正二叉树(BFS)
- LeetCode 1642. 可以到达的最远建筑(二分查找 / 优先队列贪心)