《融合视觉显著性和局部熵的红外弱小目标检测》论文复现

news2024/11/24 12:29:57

1.复现论文概要

复现的论文为《融合视觉显著性和局部熵的红外弱小目标检测》(赵鹏鹏,李庶中等,中国光学2022,http://www.chineseoptics.net.cn/cn/article/doi/10.37188/CO.2021-0170,以下简称论文)。论文针对红外图像中弱小目标检测虚警率高、实时性差的问题,提出了一种基于视觉显著性和局部熵的红外弱小目标检测方法。该方法首先利用融合局部熵的方法提取包含目标的感兴趣区域,对红外弱小目标实现粗定位。然后再利用改进的视觉显著性检测方法在感兴趣区域计算局部对比度,获得感兴趣区域的显著图。最后利用阈值法分割显著图像提取红外弱小目标,实现红外弱小目标的检测。

论文分为5部分:

(1)引言:介绍了红外弱小目标信噪比低、亮度低等特点,以及对其检测存在的技术难点;介绍了传统的红外弱小目标检测方法,如局部对比度法(LCM)等。

(2)LCM原理:详细阐述了局部对比度的计算方法。

(3)改进的弱小目标显著性检测方法:针对LCM 的计算在增强弱小目标的同时,也增强了图像的像素尺度亮噪声,增加了目标检测的虚警率,论文提出了一种在LCM算法基础上改进得到的弱小目标显著性检测方法,并从图像预处理、显著度图计算和目标检测三个方面对其原理进行了详细说明。

(4)融合视觉显著性和局部熵的红外弱小目标检测:针对滑动窗口法在全图像范围内进行目标搜索,在整幅图像中进行多尺度局部对比度计算耗费大量时间,影响红外弱小目标检测实时性的问题,论文提出一种融合视觉显著性和局部熵的红外弱小目标检测方法,即先利用局部熵对目标区域进行粗定位,得到一个含有目标的感兴趣区域,然后利用改进的显著性检测方法在感兴趣区域内检测出弱小目标,从而加快检测速度。这部分主要对基于局部熵的红外弱小目标粗定位和整体算法流程进行了详细说明。

(5)实验与结果分析:这部分首先用4幅不同的红外弱小目标图片对论文算法进行检验,证明了论文算法的有效性;然后与TOPHAT 检测算法及基于 LCM 的检测算法进行对比试验,证明了论文提出的算法虚警率和实时性优于这些传统的红外弱小目标检测算法。

2.复现步骤说明

2.1 理解文章内容

首先阅读摘要,了解论文要解决的问题、解决问题的方法和最终实现的效果,从关键词中提取论文涉及的技术要点。然后通读全文,圈出每个章节中对基本原理和方法流程进行阐述的部分,将其串联起来,得到整个文章的技术脉络和算法框架。

按照整理出的技术脉络和算法框架,梳理框架各部分的实现原理,将涉及的公式序号和变量定义按照先后顺序整合在一起,形成对该部分的完整数学原理描述,从而理解公式中变量定义的依存关系。例如:第3节 改进的弱小目标显著性检测方法中,整合得到的数学原理描述如下:

  1. STEP1 图像预处理由论文中的式(4)和(5)完成,涉及变量W和 gray(su{b_{p,q}})
  2. STEP2 显著图计算由式(6)和(7)完成,涉及的变量M实际为STEP 1中的W,变量gray(su{b_{p,q}}) 由STEP 1中的式(4)定义;
  3. STEP3 目标检测由式(8)完成,涉及的显著图SW由STEP2 中的式(7)和变量M(W)组合计算得到。

2.2 收集所需的数据

通常论文中不会给出使用的数据集,因此只能找相似的数据集来检验算法。根据2.1中的分析得出论文所需的数据是含有红外弱小目标的图片,故以关键词“红外数据集”在百度上检索,检索得到以下结果: 

  1. LSOTB-TIR数据集:GitHub - QiaoLiuHit/LSOTB-TIR: LSOTB-TIR: A Large-Scale High-Diversity Thermal Infrared Object Tracking Benchmark (ACM MM2020)LSOTB-TIR: A Large-Scale High-Diversity Thermal Infrared Object Tracking Benchmark (ACM MM2020) - GitHub - QiaoLiuHit/LSOTB-TIR: LSOTB-TIR: A Large-Scale High-Diversity Thermal Infrared Object Tracking Benchmark (ACM MM2020)https://github.com/QiaoLiuHit/LSOTB-TIR
  2. OTCBVS数据集:OTCBVSOTCBVS-Benchhttp://vcipl-okstate.org/pbvs/bench/
  3. flir数据集:FREE - FLIR Thermal Dataset for Algorithm Training | Teledyne FLIRhttps://www.flir.com/oem/adas/adas-dataset-form/

….

检索得到一些数据集后,还需要进行筛选,保证所用的数据集和文章中基本相似。经过筛选最终决定使用OTCBVS Dataset 01: OSU Thermal Pedestrian Database 0002中包含一只猫头鹰的红外图片作为数据集,其中的一张图片如下所示:

如上图所示,选定的红外弱小目标为一只从草丛飞向树梢的猫头鹰,与论文中数据集的目标特性很接近,即信噪比较低、亮度较弱,灰度值不一定是最高的,但通常会在一定层度上高于其局部背景,尺寸较小、能量较弱,且缺乏有效的形状和纹理特征等。

2.3 实现算法并分析结果

在2.1和2.2的基础上,使用python编程实现论文算法并在选定的数据集上试验,然后与论文结果进行比对,总结论文算法的优缺点,发掘出可以改进的地方。

3.算法原理说明

3.1  改进的弱小目标显著性检测方法

(1)STEP1图像预处理

 图像预处理的目的是抑制像素尺度亮度噪声对目标检测的影响和提高目标检测速度。首先使用一个小于9 \times 9 的窗口在原始图像中按照一定步长从左至右,从上到下依次滑动,得到一系列子图像块su{b_{p,q}} ,然后将其整体灰度设置为其内部像素点的均值,即

 

 式(3.1)中\left( {i,j} \right) 表示子图像块su{b_{p,q}}中的像素点, m \times n表示子图像块的大小, gray(i,j)表示像素点 (i,j)的灰度值。然后将一系列子图像块按照原来的顺序重新组合成一个新的矩阵W ,其内部元素定义为

设定适当的窗口尺寸和移动步长, W中的元素数目会远小于原始红外图像的像素数,则用W代替原始图像进行目标检测的速度也会提高。

(2)STEP2:显著图计算

在原始图像中设置一个滑动窗口,使滑动窗口的中心为预处理得到的子图像块su{b_{p,q}},然后将滑动窗所截取的图像划分为9个子图像块,即滑动窗口大小为9 \times m \times n。将子图像块 编号为“0”,其余编号为“1”~“8”, su{b_{p,q}}的灰度均值在STEP1中已经计算得到,故分别计算“1”~“8”的灰度均值,方法和式(3.1)一致。

gray(h)\begin{array}{*{20}{c}} {}&{h = \left\{ {1,2,....,8} \right\}} \end{array}表示“1”~“8”子图像块的灰度均值,则su{b_{p,q}}在滑动窗口中的对比度为

 式(3.3)中{L_n} 为子图像块su{b_{p,q}}中的最大灰度值。根据式(3.3)计算出{C_n}后替换预处理得到的矩阵W中与su{b_{p,q}}对应的元素,以此类推,替换完成后就是原图像的显著图SW

(3)STEP3:目标检测

根据计算得到的显著图像SW,利用阈值法进行自适应阈值分割,可得到二值化的显著图像BSW,其中分割阈值的计算方法为

 式(3.4)中{u_{SW}}{\sigma _{SW}}分别为显著图的均值和标准差(论文中为方差,但是结合k的取值范围和实验结果,论文中应该是笔误)。k为经验系数,通常取10 < k < 15

3.2 基于局部熵对目标粗定位

3.1中利用滑动窗口法在全图像范围内进行多尺度局部对比度计算会耗费大量时间,影响红外弱小目标检测的实时性,因此论文提出一种融合视觉显著性和局部熵的检测方法,即先利用局部熵对目标区域进行粗定位,得到一个含有目标的感兴趣区域,然后用3.1中的改进显著性检测方法在感兴趣区域内检出弱小目标,从而提升检测速度。利用局部熵提取感兴趣区域的过程可以分为3个步骤:

(1)将一副大小为M \times N的图像f划分成l个大小为m \times n的局部区域\left\{ {​{s_i}} \right\},其中i = \left\{ {1,2,......,l} \right\}l = \left( {M \times N} \right)/(m \times n)

(2)针对每一个局部区域,分别计算局部熵值{H_i},然后在所有局部区域中搜索局部熵值最大值{H_{\max }}和最小值 {H_{\min }}

(3)根据{H_{\max }}{H_{\min }}设置分割阈值 Th1,局部熵值 {H_i}小于阈值Th1的局部区域即为感兴趣区域,其中Th1 定义为

3.3  融合视觉显著性和局部熵的红外弱小目标检测

综合3.1和3.2,最终得到融合视觉显著性和局部熵的红外弱小目标检测流程如下图所示。

4.算法实现过程

根据3中的算法原理,算法程序可以划分成两部分,即基于局部熵的目标粗定位改进的弱小目标显著性检测

4.1 基于局部熵的目标粗定位

选定图片分块大小为80 \times 80 ,然后根据下式计算局部熵值。

 其中M \times N为子图像块的像素数, P\left( {i,j} \right)表示灰度值为 \left( {i,j} \right)的像素点在子图像块总像素点中所占的比例。计算出各个子图像块的局部熵值后搜索得到局部熵值最大值 {H_{\max }}和最小值{H_{\min }} ,取经验参数{k_1}{\rm{ = }}4k'{\rm{ = }}4 后得到分割阈值,然后粗略地将目标从图像中定位出来,效果如下图所示。

4.2 改进的弱小目标显著性检测

粗略定位目标所处的子图像块后,将其取出按照3.1 STEP1 计算矩阵W,结果如下图所示。

 根据STEP2,选定计算显著度图SW的滑窗尺寸为 9 \times 5 \times 5,结果如下图所示。

 根据STEP 3,选定经验参数为k = 11 ,对目标进行定位,结果如下图所示。

由上图可见算法比较精准地检测到了红外弱小目标,程序运行时间为1.8759s,证明了论文所述算法确实可以比较精准和快速地检测红外弱小目标。

5.结果分析及算法改进

在经验参数 {k_1}k'k都不变的情况下再选2幅图进行试验,结果如下图所示。

由上图可见背景噪声基本不变,红外小目标显著度发生微小改变时出现了漏检。将 k改为8后对上图中漏检的图片再次进行检测,结果如下图所示。

 由此可见即使背景噪声基本相近,论文算法的检测结果对经验参数k 也是极其敏感的,对于不同显著度的红外小目标,需要调整k到合适值以避免漏检。针对这一问题,改进方法是在计算出显著度图SW后直接用显著度最大的像素点作为红外弱小目标的中心点,而不是用阈值 Th2进行分割得到二值化的显著图BSW后再定位,这样使检测结果不再依赖经验参数k。在经验参数{k_1}k'保持不变的情况下,改进效果如下图所示。 

 由上图可见改进后的算法可以检测出漏检的红外小目标,且不依赖于经验参数k的取值。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/108486.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【库存控制】基于象鼻虫损害优化算法求解库存控制问题(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

交换机的结构特点及主要功能

什么是交换机&#xff1f; Switch 意为“交换机”&#xff0c;是一种用于转发电 ( 光 ) 信号的网络设备。它可以为访问交换机的任意两个网络节点提供专用的电信号路径。非常常见的 是以太网交换机。其他常见的有电话语音交换机、光纤交换机等。 它的工作原理是什么&#xff1f…

美国藤校Top30大学对IB成绩的要求

众所周知&#xff0c;IB体系是目前全球认可度比较高的国际课程。那么&#xff0c;用IBDP成绩申请美国TOP30大学需要什么样的成绩&#xff1f; 小智今天来带大家好好研究下美国TOP30大学对IB成绩的要求。普林斯顿大学 Princeton University 普林斯顿大学对于IB成绩没有具体要求&…

nginx架构解析:朴实中见真知

目录前言为什么高并发很重要Apache可以做到吗使用nginx会更有优势吗&#xff1f;nginx架构概览代码结构Workers模型nginx进程规则nginx缓存概览nginx配置nginx内部典型的HTTP请求处理循环课程总结前言 nginx&#xff08;发音“engine x”&#xff09;是俄国的软件工程师Igor S…

Godzilla(哥斯拉)安装与使用

Godzilla安装与使用1.Godzilla介绍2.Godzliia下载与安装2.1.Godzilla下载2.2.运行环境2.3.Godzilla安装2.3.1.执行文件2.3.2.安装完成3.Godzliia3.1.Godzliia使用3.1.1.生成木马3.1.2.存储木马3.1.3.放入木马3.1.4.访问木马3.1.5.连接木马3.1.6.测试连接3.1.7.连接进入3.2.Godz…

麒麟水乡,IU酒店进驻云南旅游咽喉之地曲靖

曲靖位于云南省东北部&#xff0c;是云南连接内地的重要陆路通道&#xff0c;素有“滇黔锁钥”、“入滇门户”、“云南咽喉”之称&#xff0c;是仅次于昆明的云南第二大城市。曾入选“中国十佳宜居城市”榜单10次的城市&#xff0c;拥有3000多年的文明史&#xff0c;早在三国魏…

Python解题 - CSDN周赛第17期 - 拯救公主

本期又出现了题目测试数据的问题&#xff0c;而且题目和算法关系也不太大&#xff0c;基本就属于用代码代替手工解答算术题的感觉。不禁让人怀疑官方题库是否已经没有高质量的题了&#xff0c;同时也怀疑长期满分却又不更新博客拿奖品的某位选手是不是托。。。 第一题&#xff…

VS系列多通道振弦传感器无线采发仪与参数配置工具连接

VS101~VS432 设备配备了专门的参数配置工具 SETP 来完成设备工作参数的查看和修改工作。 连接前的准备工作 &#xff08;1&#xff09;数据接口与计算机连接 使用标配的通讯线与计算机 RS232 接口连接。若需基于手机网络发送数据&#xff0c;请在开机前安装 SIM 卡。 若…

D. Lucky Chains(GCD+素数筛)

input: 4 5 15 13 37 8 9 10009 20000output: 0 1 -1 79题目大意&#xff1a; 如果一个数对(x,y)是幸运的&#xff0c;当且仅当gcd(x,y)1,一条链可以由以下规律的数对组成&#xff0c;(x,y),(x1,y1),(x2,y2)……(xk,yk)&#xff0c;如果说一条链是幸运的&#xff0c;当且仅当…

非零基础自学Golang 第16章 正则表达式 16.3 regexp包 16.4 小结 16.5 知识拓展

非零基础自学Golang 文章目录非零基础自学Golang第16章 正则表达式16.3 regexp包16.3.1 MatchString函数16.3.2 FindStringIndex函数16.3.3 ReplaceAllString函数16.4 小结16.5 知识拓展16.5.1 常用正则表达式参考第16章 正则表达式 16.3 regexp包 Go在处理正则表达式时主要使…

拆箱phper最适合入门的go框架beego

beego beego 是一个快速开发 Go 应用的 HTTP 框架&#xff0c;他可以用来快速开发 API、Web 及后端服务等各种应用&#xff0c;是一个 RESTful 的框架&#xff0c;主要设计灵感来源于 tornado、sinatra 和 flask 这三个框架&#xff0c;但是结合了 Go 本身的一些特性&#xff…

路由信息协议RIP(计算机网络)

目录 路由选择协议 路由信息协议 RIP中的距离 RIP协议的具体算法 RIP协议路由表的更新 例题 距离向量算法 RIP 协议的要点 路由选择协议 路由器之间要互相不断交换网络拓扑和状态信息&#xff0c;根据信息求出到所有目的网络的最佳路由 用于交换路由信息&#xff0c;进…

软件测试实战教程系列—接口测试用例和报告模板|收藏版

文章目录 接口测试为什么会如此重要呢&#xff1f; 接口测试的必要性 获取接口相关信息 接口测试的流程 接口文档 是接口测试的参照&#xff0c;至少包括&#xff1a; 接口测试用例设计 接口测试用例模板 &#xff08;可根据项目实际情况设计增减&#xff09; 接口测试…

前端基础_组合多个图形

组合多个图形 在前面的实例中&#xff0c;我们看到使用Canvas API可以将一个图形重叠绘制在另一个图形上面&#xff0c;但图形中能够被看到的部分完全取决于以哪种方式进行组合&#xff0c;这时需要使用到Canvas API的图形组合技术。在HTML5中&#xff0c;只要用图形上下文对象…

模数转换器(ADC)

目录 一、简介&#xff1a; 二、主要特征 三、校准&#xff08;CLB&#xff09; 四、ADC时钟 五、ADCON开关 六、规则组和注入组 七、转换模式 八、注入通道管理 九、可编程的采样时间 十、外部触发 十一、温度传感器和内部参考电压 一、简介&#xff1a; 12位ADC是…

CSS -- 使用纯CSS实现旋转木马相册的效果

如果对3D转换不熟悉可以参考&#xff1a;CSS – CSS3中3D转换相关属性讲解&#xff08;translate3d&#xff0c;rotate3d&#xff0c;perspective&#xff0c;transform-style&#xff09; 如果对动画不熟悉可以参考&#xff1a;CSS – CSS3基础动画讲解 旋转木马图片相册 <…

centos 7安装mysql

一.安装之前检测系统是否有自带的MySQL(若是没有安装直接忽略该步骤) rpm -qa | grep mysql #检查是否安装过MySQL rpm -qa | grep mariadb #检查是否存在 mariadb 数据库&#xff08;内置的MySQL数据库&#xff09;&#xff0c;有则强制删除 rpm -e --nodeps mariadb-libs-…

信而泰BGP Flow Spec防攻击测试解决方案

随着互联网行业的迅猛发展&#xff0c;越来越多的业务都从线下走到了线上。互联网在给大家生活带来便利的同时也面临着防护自身安全的各种挑战。 DoS/DDoS攻击是对网络安全的重大威胁&#xff0c;攻击者通过多个控制端控制成千上万的攻击设备对同一个目的地址、网段或服务器同…

【触摸屏功能测试】昆仑通态MCGS——物联网功能测试

测试触摸屏&#xff1a; 型号&#xff1a;TPC7022Ni 测试内容&#xff1a;物联网产品设备的无线通信和远程调试功能 物联网 1、功能概述 物联网产品设备可通过无线通讯的方式&#xff0c;进行远程调试和操作。物联网产品设备支持以下功能&#xff1a; l 4G和WiFi通信 l 远…

m基于kmeans和SVM的网络入侵数据分类算法matlab仿真

目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 首先计算整个数据集合的平均值点&#xff0c;作为第一个初始聚类中心C1&#xff1b; 然后分别计算所有对象到C1的欧式距离d&#xff0c;并且计算每个对象在半径R的范围内包含的对象个数W。 此时计…