Hou的图像显著性计算模型

本文介绍了一种基于信息理论的视觉显著性计算模型——Spectral Residual理论,通过分析图像的频谱特性来识别视觉显著区域。核心思想在于利用大量图像的log频谱平均值与个体图像之间的差异来确定显著性。具体步骤包括傅里叶变换、log振幅谱计算、均值滤波、残差计算和傅里叶反变换等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

已下博文转自  http://www.cnblogs.com/CCBB/archive/2011/05/19/2051442.html

一种简单的图像显著性计算模型

《Saliency Detection: A Spectral Residual Approach》是上交高材生侯晓迪在07年的CVPR上发表的一篇论文。这篇文章提出了一个图像视觉显著性的简单计算模型。有关算法原理可以参见此篇论文以及作者主页:http://www.klab.caltech.edu/~xhou/projects/spectralResidual/spectralresidual.html

 

这篇文章的核心思想如下:

从信息理论角度:信息可分为冗余部分和变化部分。人们的视觉对变化部分更敏感。视觉系统的一个基本原则就是抑制对频繁出现的特征的响应,同时对非常规的特征保持敏感。那么就将图像分为如下两部分:

 而作者对图像的log频谱发下了如下规律(log是自然对数):

 大量图像的log频谱的平均值是和频率呈现正比关系的。

 

 

如图可知大量图像的log频谱和频率的曲线形状,在log-log scale上,几乎是一条直线。文中的log频谱就是对图像傅里叶变换后的振幅谱取自然对数。然后作者又提出了既然大量图像的log振幅谱都差不多趋近一条直线,那么一幅图像的log振幅谱减去平均log振幅谱不就是显著性部分了吗?这就是作者提出的:Spectral Residual理论。

 作者如下的定义Spectral Residual:
 其中L(f)就是图像f的log振幅谱,A(f)是平均log振幅谱,作者就是将L(f)进行3*3的均值滤波得到的A(f)。R(f)就是图像f的Spectral Residual。计算过程如下表示:
其中输入图像为I(x),对其傅里叶变换,并且求出振幅谱为A(f)。P(f)是其相位谱(复数x+i*y的相位是arctan(y/x))。L(f)是log振幅谱。h是一个n*n均值滤波的卷积核,作者设n=3。R(f)就是Spectral Residual谱。再将R(f)+i*P(f)求出自然指数exp。注意:由欧拉公式可知,exp(r+i*Θ) = exp(r)*(cos(Θ) + i*sin(Θ)) = exp(r)*cos(Θ) + i*exp(r)*sin(Θ),Θ是相位谱。其实Θ的正余弦也可由傅里叶谱的实部和虚部求出:sin(Θ) = ImageIm/Amplitude; cos(Θ) = ImageRe/Amplitude。然后对其,傅里叶反变换,在进行一个高斯模糊滤波就得到了所谓的显著性区域。效果如下:

 

作者给出的matlab代码只有5行:

clear
clc


%% Read image from file
inImg = im2double(rgb2gray(imread('256.png')));
%%inImg = imresize(inImg, 64/size(inImg, 2));


%% Spectral Residual
myFFT = fft2(inImg);
myLogAmplitude = log(abs(myFFT));
myPhase = angle(myFFT);
mySpectralResidual = myLogAmplitude - imfilter(myLogAmplitude, fspecial('average', 3), 'replicate');
saliencyMap = abs(ifft2(exp(mySpectralResidual + i*myPhase))).^2;


%% After Effect
saliencyMap = mat2gray(imfilter(saliencyMap, fspecial('gaussian', [10, 10], 2.5)));
imshow(saliencyMap);


效果如下,分别是输入图像和显著性区域标识: 

 

 

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值