基于局部对比度(LCM)的红外弱小目标检测之背景抑制
1. 前言
红外图像中的弱小目标,目标属性包涵“弱"和“小’’两个方面:“弱’’是指目标在红外波长上所表现出来的强度,具体反映到所拍摄的红外图像上,就是指目标的灰度值;而“小’’是指目标的尺寸大小,也就是前面所述的成像面积很小,反映到红外图像上就是指目标所占的像素数目很少。
SPIE国际光学工程学会(Societyof Photo一0ptical Instrumentation Engineers,简记为SPIE)从1989年开始,几乎每年都会举办有关弱小目标检测技术的国际会议,研讨弱小目标检测技术的最新研究成果。根据SPIE的定义,成像尺寸小于整个成像区域0.12%的目标均可称为弱小目标(即当成像尺寸为256×256时,弱小目标应不超过81个像素,其目标尺寸在9*9以内)。
2. 局部对比度(LCM)算法
在传统图像处理算法中,根据人类视觉系统的注意力机制原理启发得到的LCM算法,在复杂背景抑制与图像增强方面应用广泛。视觉注意力机制是人类视觉所特有的大脑信号处理机制。人类视觉通过快速扫描全局图像获得需要关注的目标区域,而后重点获取所需要关注的目标信息,抑制其他无用信息。人类视觉注意力机制极大的提高了视觉信息处理的效率与准确性。注意力机制已经在自然语言处理中取得了重大成功。近年来,许多研究者将其应用到弱小目标的检测跟踪研究中来,实验证明其对于提升弱小目标的局部信噪比具有较好的效果。
下面简单介绍一下局部对比度的原理:图像的高频部分代表的是图像中类似边缘的高频分量;低频部分代表的是图像中较为平坦的部分。假若用原始图像减去图像中低频部分的,那么得到的就是图像的高频分量。
3. Matlab仿真
%% 测试算法5(LCM):对局部对比度算法进行红外弱小目标检测跟踪的性能进行检验
%% 1,根据局部对比度进行背景抑制,在通用数据集上进行验证背景抑制
%% 图像分辨率为 256 × 256,仿真图像位数为 8 bit,目标最小1个像素
% date:2019-11-20 08:43:40
% author:C.S
clc;clear;close;
tic
T0 = 0.0014;
f=imread('190.bmp');
if ndims(f)>2
f=rgb2gray(f);
end;
[l1,l2]=size(f);
f = double(f);
r = 4; %开窗检测
P = target_detect(f,r); %开窗检测小目标
[Pr,Pc] = find(P>1/(2*r+1)^2+T0);%候选小目标坐标序列
[cpl,~] = size(Pr);
while cpl<100
T0 = T0 - 0.0001;
[Pr,Pc] = find(P>1/(2*r+1)^2+T0);
[cpl,~] = size(Pr);
continue;
end
MAX_G = max(max(P));
f1 = double(zeros(l1,l2));
if ~isempty(Pc)
for i = 1:length(Pr)
f1(Pr(i),Pc(i)) = floor(P(Pr(i),Pc(i))*255/MAX_G);
end
end
f2 = double(zeros(l1,l2));
means=mean2(f1);
stds=std2(f1);
v=means+stds*3;
for i=1:l1
for j=1:l2
if f1(i,j)>v
f2(i,j)=f1(i,j);
% else
% f1(i,j)=1;
end;
end;
end;
figure(1);subplot(121);
imagesc(f);
title('原始红外图像');
colormap('gray');
subplot(122);
imagesc(uint8(f2));
title('LCM背景抑制效果');
colormap('gray');
function P=target_detect(im,r)
% P-单帧检测得到候选点的坐标,并仅保留其局部概率(对比度)
if size(size(im),2)==3
im=rgb2gray(im);
end
[m,n] = size(im);
local_region = zeros(2*r+1,2*r+1);
P=zeros(m,n);
%
for i=r+1:m-r
for j=r+1:n-r
local_region=im(i-r:i+r,j-r:j+r);
P(i,j)=double(double(im(i,j))/sum(sum(local_region)));
end
end
end
4. 小结
局部对比度方法的优化改进算法已经有了比较深入的研究,后续会推荐几篇较好的文献,并进行仿真实验,背景抑制是复杂背景下目标检测的关键,能够将背景更多的滤除干净,将会对后续目标检测提供许多便利,当然也会对其他算法进行介绍,通过记录自己的学习过程,希望可以和大家一起深入讨论研究。
本系列文章列表如下:
弱小目标检测跟踪算法研究(1)红外弱小目标数据集准备(红外弱小目标的数据集来了)
弱小目标检测跟踪算法研究(2)红外弱小目标数据集准备(红外弱小目标的数据集又来了)
弱小目标检测跟踪算法研究(3) 基于局部对比度(LCM)的红外弱小目标检测之背景抑制
弱小目标检测跟踪算法研究(4) 基于双边滤波(BF)的红外弱小目标检测之背景抑制
弱小目标检测跟踪算法研究(5) 基于顶帽变换(Top_hat)算法的红外弱小目标检测之背景抑制
弱小目标检测跟踪算法研究(6) 基于小波变换的红外弱小目标检测之背景抑制
弱小目标检测跟踪算法研究(7) 基于简单平滑滤波算法的红外弱小目标检测之背景抑制