0 说明
  本篇文章主要了解了Itti显著性检测算法,并阅读相关的代码,最后在SAR图像上进行实验和测试。
   原理部分本文主要参考了:https://blog.csdn.net/weixin_42647783/article/details/82532179
   代码部分主要参考了https://zhuanlan.zhihu.com/p/441836726
1 简介
  Itti视觉显著性模型的结构如下图[1]。
 
2 Itti算法
2.1 输入
文章中图片的尺寸为640×480静态彩色照片,包括RGB三个通道。
2.2 构建高斯金字塔
  先将输入图像表示成0层的高斯金字塔。其中第0层表示输入图像,第1-8层分别采用3×3的高斯滤波器进行滤波和下采样,大小分别为输入图像的1/2、1/4、1/8…1/256,即可得到9个尺度下的三通道图像
    
     
      
       
        r
       
       
        (
       
       
        σ
       
       
        )
       
       
        、
       
       
        g
       
       
        (
       
       
        σ
       
       
        )
       
       
        、
       
       
        b
       
       
        (
       
       
        σ
       
       
        )
       
      
      
       r(\sigma)、g(\sigma)、b(\sigma)
      
     
    r(σ)、g(σ)、b(σ),其中
    
     
      
       
        σ
       
       
        ∈
       
       
        {
       
       
        0..8
       
       
        }
       
      
      
       \sigma \in\{0 . .8\}
      
     
    σ∈{0..8}。
 (1)构建亮度高斯金字塔
   在九个尺度下计算
    
     
      
       
        I
       
       
        =
       
       
        (
       
       
        r
       
       
        +
       
       
        g
       
       
        +
       
       
        b
       
       
        )
       
       
        /
       
       
        3
       
      
      
       I=(r+g+b) / 3
      
     
    I=(r+g+b)/3,可以得到
    
     
      
       
        I
       
       
        (
       
       
        σ
       
       
        )
       
      
      
       I(\sigma)
      
     
    I(σ).
(2)构建颜色高斯金字塔
   在9个尺度下,分别计算:
   红色特征:
    
     
      
       
        R
       
       
        (
       
       
        σ
       
       
        )
       
       
        =
       
       
        r
       
       
        (
       
       
        σ
       
       
        )
       
       
        −
       
       
        (
       
       
        g
       
       
        (
       
       
        σ
       
       
        )
       
       
        +
       
       
        b
       
       
        (
       
       
        σ
       
       
        )
       
       
        )
       
       
        /
       
       
        2
       
      
      
       R(\sigma)=r(\sigma)-(g(\sigma)+b(\sigma)) / 2
      
     
    R(σ)=r(σ)−(g(σ)+b(σ))/2
   绿色特征:
    
     
      
       
        G
       
       
        (
       
       
        σ
       
       
        )
       
       
        =
       
       
        g
       
       
        (
       
       
        σ
       
       
        )
       
       
        −
       
       
        (
       
       
        r
       
       
        (
       
       
        σ
       
       
        )
       
       
        +
       
       
        b
       
       
        (
       
       
        σ
       
       
        )
       
       
        )
       
       
        /
       
       
        2
       
      
      
       G(\sigma)=g(\sigma)-(r(\sigma)+b(\sigma)) / 2
      
     
    G(σ)=g(σ)−(r(σ)+b(σ))/2
   蓝色特征:
    
     
      
       
        B
       
       
        (
       
       
        σ
       
       
        )
       
       
        =
       
       
        b
       
       
        (
       
       
        σ
       
       
        )
       
       
        −
       
       
        (
       
       
        r
       
       
        (
       
       
        σ
       
       
        )
       
       
        +
       
       
        g
       
       
        (
       
       
        σ
       
       
        )
       
       
        )
       
       
        /
       
       
        2
       
      
      
       B(\sigma)=b(\sigma)-(r(\sigma)+g(\sigma)) / 2
      
     
    B(σ)=b(σ)−(r(σ)+g(σ))/2
   黄色特征:
    
     
      
       
        Y
       
       
        (
       
       
        σ
       
       
        )
       
       
        =
       
       
        (
       
       
        r
       
       
        (
       
       
        σ
       
       
        )
       
       
        +
       
       
        g
       
       
        (
       
       
        σ
       
       
        )
       
       
        )
       
       
        /
       
       
        2
       
       
        −
       
       
        ∣
       
       
        r
       
       
        (
       
       
        σ
       
       
        )
       
       
        −
       
       
        g
       
       
        (
       
       
        σ
       
       
        )
       
       
        ∣
       
       
        /
       
       
        2
       
       
        −
       
       
        b
       
       
        (
       
       
        σ
       
       
        )
       
      
      
       Y(\sigma)=(r(\sigma)+g(\sigma)) / 2-|r(\sigma)-g(\sigma)| / 2-b(\sigma)
      
     
    Y(σ)=(r(σ)+g(σ))/2−∣r(σ)−g(σ)∣/2−b(σ)
(3)构建方向金字塔
   接下来采用Gabor滤波器构建方向金字塔
    
     
      
       
        O
       
       
        (
       
       
        σ
       
       
        ,
       
       
        θ
       
       
        )
       
      
      
       O(\sigma, \theta)
      
     
    O(σ,θ),其中
    
     
      
       
        σ
       
       
        ∈
       
       
        {
       
       
        0..8
       
       
        }
       
      
      
       \sigma \in\{0 . .8\}
      
     
    σ∈{0..8},
    
     
      
       
        θ
       
       
        ∈
       
       
        
         {
        
        
         
          0
         
         
          ∘
         
        
        
         ,
        
        
         4
        
        
         
          5
         
         
          ∘
         
        
        
         ,
        
        
         9
        
        
         
          0
         
         
          ∘
         
        
        
         ,
        
        
         13
        
        
         
          5
         
         
          ∘
         
        
        
         }
        
       
      
      
       \theta \in\left\{0^{\circ}, 45^{\circ}, 90^{\circ}, 135^{\circ}\right\}
      
     
    θ∈{0∘,45∘,90∘,135∘}。
2.3 特征图的构建
  获得亮度、颜色、方向高斯金字塔之后,采用Center-Surround方法,其中Center(c)表示精细尺度,Surround(s)表示粗尺度计算对应的特征图。计算方法为:
   
    
     
      
       
        I
       
       
        (
       
       
        c
       
       
        ,
       
       
        s
       
       
        )
       
       
        =
       
       
        ∣
       
       
        I
       
       
        (
       
       
        c
       
       
        )
       
       
        ⊖
       
       
        I
       
       
        (
       
       
        s
       
       
        )
       
       
        ∣
       
      
      
       I(c, s)=|I(c) \ominus I(s)|
      
     
    I(c,s)=∣I(c)⊖I(s)∣
   
    
     
      
       
        R
       
       
        G
       
       
        (
       
       
        c
       
       
        ,
       
       
        s
       
       
        )
       
       
        =
       
       
        ∣
       
       
        (
       
       
        R
       
       
        (
       
       
        c
       
       
        )
       
       
        −
       
       
        G
       
       
        (
       
       
        c
       
       
        )
       
       
        )
       
       
        ⊖
       
       
        (
       
       
        G
       
       
        (
       
       
        s
       
       
        )
       
       
        −
       
       
        R
       
       
        (
       
       
        s
       
       
        )
       
       
        )
       
       
        ∣
       
      
      
       R G(c, s)=|(R(c)-G(c)) \ominus(G(s)-R(s))|
      
     
    RG(c,s)=∣(R(c)−G(c))⊖(G(s)−R(s))∣
   
    
     
      
       
        B
       
       
        Y
       
       
        (
       
       
        c
       
       
        ,
       
       
        s
       
       
        )
       
       
        =
       
       
        ∣
       
       
        (
       
       
        B
       
       
        (
       
       
        c
       
       
        )
       
       
        −
       
       
        Y
       
       
        (
       
       
        c
       
       
        )
       
       
        )
       
       
        ⊖
       
       
        (
       
       
        Y
       
       
        (
       
       
        s
       
       
        )
       
       
        −
       
       
        B
       
       
        (
       
       
        s
       
       
        )
       
       
        )
       
       
        ∣
       
      
      
       B Y(c, s)=|(B(c)-Y(c)) \ominus(Y(s)-B(s))|
      
     
    BY(c,s)=∣(B(c)−Y(c))⊖(Y(s)−B(s))∣
   
    
     
      
       
        O
       
       
        (
       
       
        c
       
       
        ,
       
       
        s
       
       
        ,
       
       
        θ
       
       
        )
       
       
        =
       
       
        ∣
       
       
        O
       
       
        (
       
       
        c
       
       
        ,
       
       
        θ
       
       
        )
       
       
        ⊖
       
       
        O
       
       
        (
       
       
        s
       
       
        ,
       
       
        θ
       
       
        )
       
       
        ∣
       
      
      
       O(c, s, \theta)=|O(c, \theta) \ominus O(s, \theta)|
      
     
    O(c,s,θ)=∣O(c,θ)⊖O(s,θ)∣
   其中 
    
     
      
       
        c
       
       
        ∈
       
       
        {
       
       
        2
       
       
        ,
       
       
        3
       
       
        ,
       
       
        4
       
       
        }
       
      
      
       c \in\{2,3,4\}
      
     
    c∈{2,3,4} ,而 
    
     
      
       
        s
       
       
        =
       
       
        c
       
       
        +
       
       
        δ
       
       
        ,
       
       
        δ
       
       
        ∈
       
       
        {
       
       
        3
       
       
        ,
       
       
        4
       
       
        }
       
      
      
       s=c+\delta, \delta \in\{3,4\}
      
     
    s=c+δ,δ∈{3,4} 。上面的
    
     
      
       
        ⊖
       
      
      
       \ominus
      
     
    ⊖表示将粗尺度进行插值到精细尺度后做矩阵元素相减。
    
     
      
       
        I
       
      
      
       I
      
     
    I表示亮度特征图,
    
     
      
       
        R
       
       
        G
       
       
        (
       
       
        c
       
       
        ,
       
       
        s
       
       
        )
       
      
      
       R G(c, s)
      
     
    RG(c,s)表示颜色特征图,
    
     
      
       
        O
       
      
      
       O
      
     
    O表示方向特征图。
2.4 显著图的构建
  文章中提出了一个特征图归一化操作运算符
    
     
      
       
        N
       
       
        (
       
       
        ⋅
       
       
        )
       
      
      
       \mathcal{N}(\cdot)
      
     
    N(⋅),可以增强存在少量活动峰(即尖锐值)的特征图,抑制存在大量活动峰的特征图。操作方法如下:
   (1)首先对输入的特征图归一化到范围
    
     
      
       
        [
       
       
        0...
       
       
        M
       
       
        ]
       
      
      
       [0 . . . M]
      
     
    [0...M];
   (2) 找到该特征图的全局最大值M所在位置并计算其他所有局部最大值的均值 
    
     
      
       
        
         m
        
        
         ˉ
        
       
      
      
       \bar{m}
      
     
    mˉ ,然后把整 个特征图同乘以 
    
     
      
       
        (
       
       
        M
       
       
        −
       
       
        
         m
        
        
         ˉ
        
       
       
        
         )
        
        
         2
        
       
      
      
       (M-\bar{m})^{2}
      
     
    (M−mˉ)2 ;
   如下图所示,中间列上图便是存在大量活动峰的特征图,经过 
    
     
      
       
        N
       
       
        (
       
       
        ⋅
       
       
        )
       
      
      
       \mathcal{N}(\cdot)
      
     
    N(⋅) 操作后得到的特征图整体 较为平滑,活动峰被抑制,中间列下图是存在少量活动峰的特征图,经过 
    
     
      
       
        N
       
       
        (
       
       
        ⋅
       
       
        )
       
      
      
       \mathcal{N}(\cdot)
      
     
    N(⋅) 操作后得到的特征图在 原有的活动峰处得到了增强。
 
   通过以上操作即可获得最后的视觉显著图,计算方法如下:
   
    
     
      
       
        
         I
        
        
         ˉ
        
       
       
        =
       
       
        
         
          ⊕
         
        
        
         4
        
       
       
        
         
          
           ⊕
          
         
         
          
           c
          
          
           =
          
          
           2
          
          
           s
          
          
           =
          
          
           c
          
          
           +
          
          
           3
          
         
        
        
         
          c
         
         
          +
         
         
          4
         
        
       
       
        N
       
       
        (
       
       
        I
       
       
        (
       
       
        c
       
       
        ,
       
       
        s
       
       
        )
       
       
        )
       
      
      
       \bar{I}=\stackrel{4}{\oplus} \underset{c=2 s=c+3}{\oplus}^{c+4} \mathcal{N}(I(c, s))
      
     
    Iˉ=⊕4c=2s=c+3⊕c+4N(I(c,s))
   
    
     
      
       
        
         C
        
        
         ˉ
        
       
       
        =
       
       
        
         
          ⊕
         
         
          =
         
         
          2
         
        
        
         4
        
       
       
        ⊕
       
       
        
         
          ⊕
         
        
        
         
          s
         
         
          =
         
         
          c
         
         
          +
         
         
          3
         
        
       
       
        [
       
       
        N
       
       
        (
       
       
        R
       
       
        G
       
       
        (
       
       
        c
       
       
        ,
       
       
        s
       
       
        )
       
       
        )
       
       
        +
       
       
        N
       
       
        (
       
       
        B
       
       
        Y
       
       
        (
       
       
        c
       
       
        ,
       
       
        s
       
       
        )
       
       
        )
       
       
        ]
       
      
      
       \bar{C}=\stackrel{4}{\oplus=2}{\oplus} \underset{s=c+3}{\oplus}[\mathcal{N}(R G(c, s))+\mathcal{N}(B Y(c, s))]
      
     
    Cˉ=⊕=24⊕s=c+3⊕[N(RG(c,s))+N(BY(c,s))]
   
    
     
      
       
        
         O
        
        
         ˉ
        
       
       
        =
       
       
        
         ∑
        
        
         
          θ
         
         
          ∈
         
         
          
           {
          
          
           
            0
           
           
            ∘
           
          
          
           ,
          
          
           4
          
          
           
            5
           
           
            ∘
           
          
          
           ,
          
          
           9
          
          
           
            0
           
           
            ∘
           
          
          
           ,
          
          
           13
          
          
           
            5
           
           
            ∘
           
          
          
           }
          
         
        
       
       
        N
       
       
        (
       
       
        
         
          ⊕
         
        
        
         4
        
       
       
        
         
          
           
            ⊕
           
          
          
           
            c
           
           
            +
           
           
            4
           
          
         
        
        
         
          c
         
         
          =
         
         
          2
         
        
       
       
        N
       
       
        (
       
       
        O
       
       
        (
       
       
        c
       
       
        ,
       
       
        s
       
       
        ,
       
       
        θ
       
       
        )
       
       
        )
       
       
        )
       
      
      
       \bar{O}=\sum_{\theta \in\left\{0^{\circ}, 45^{\circ}, 90^{\circ}, 135^{\circ}\right\}} \mathcal{N}(\stackrel{4}{\oplus} \underset{c=2}{\stackrel{c+4}{\oplus}} \mathcal{N}(O(c, s, \theta)))
      
     
    Oˉ=∑θ∈{0∘,45∘,90∘,135∘}N(⊕4c=2⊕c+4N(O(c,s,θ)))
  其中
    
     
      
       
        ⊕
       
      
      
       {\oplus}
      
     
    ⊕是指将多个图像调整至同一个尺寸后相加的操作,于是得到了亮度、颜色和方向显著图,最终的显著图S为,
   
    
     
      
       
        S
       
       
        =
       
       
        (
       
       
        N
       
       
        (
       
       
        
         I
        
        
         ˉ
        
       
       
        )
       
       
        +
       
       
        N
       
       
        (
       
       
        
         C
        
        
         ˉ
        
       
       
        )
       
       
        +
       
       
        N
       
       
        (
       
       
        
         O
        
        
         ˉ
        
       
       
        )
       
       
        )
       
       
        /
       
       
        3
       
      
      
       S=(\mathcal{N}(\bar{I})+\mathcal{N}(\bar{C})+\mathcal{N}(\bar{O})) / 3
      
     
    S=(N(Iˉ)+N(Cˉ)+N(Oˉ))/3
  一般在目标检测中,根据设定的阈值检测显著性目标,设定的阈值逐渐下降,得到的显著性目标就会逐渐增多,同时检测时间也会增加,论文实验如图所示。
 
3 论文实验
  论文在不同的加性噪声下对同一图像的检测效果如下图所示
 
   论文还对比了Reinagel和Zador提出的SFC(Spatial Frequency Content,空间频率内容模型)在检测目标上的效果,实验结果表明,ITTI模型对于噪声具有较好的鲁棒性,而SFC模型则做没有[1]。实验对比如下图所示,(a)是待处理的图像,(b)是ITTI模型得到的视觉显著图,©是SFC模型得到的显著图,(d)是两种模型对检测目标的标记,标记显著图中大于最大值的98%的部分,其中黄色的标记是ITTI模型得到的结果,红色的标记是SFC模型得到的结果。
 
4 相关代码
  自己整理的相关代码整理如下:
   链接:https://pan.baidu.com/s/1DNKAPcIyVFsGHHVdGr_YRw
   提取码:ynk8
 
   文件夹说明:(1)input中为SAR图像示例图片;(2)myitti2.m为主程序文件;(3)paper43.m为我整理的,f复现论文43[4]的改良的Itti算法,
    
     
      
       
        c
       
       
        =
       
       
        {
       
       
        2
       
       
        }
       
      
      
       c=\{2\}
      
     
    c={2},
    
     
      
       
        s
       
       
        =
       
       
        {
       
       
        4
       
       
        ,
       
       
        5
       
       
        ,
       
       
        6
       
       
        }
       
      
      
       s=\{4,5,6\}
      
     
    s={4,5,6}。
5 SAR图像实验结果
  下图是在paper43.m运行出现的结果,可以发现对于彩色图片来说可以很好的检测,但是对于SAR图像来说效果并不是很好。会出现锯齿状的边缘,没有初始图像好。作为引导显著性网络有待考量,还需要经过网络的学习得到。另一个思考就是对于c和s的设置属于超参数,对于不同尺度的目标进行检测的时候需要设置不同的值。
 
6 参考文献
[1]L. Itti, C. Koch and E. Niebur, “A model of saliency-based visual attention for rapid scene analysis,” in IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 20, no. 11, pp. 1254-1259, Nov. 1998, doi: 10.1109/34.730558.
 [2]https://blog.csdn.net/weixin_42647783/article/details/82532179
 [3]https://zhuanlan.zhihu.com/p/441836726
 [4]L. Du, L. Li, D. Wei and J. Mao, “Saliency-Guided Single Shot Multibox Detector for Target Detection in SAR Images,” in IEEE Transactions on Geoscience and Remote Sensing, vol. 58, no. 5, pp. 3366-3376, May 2020, doi: 10.1109/TGRS.2019.2953936.










