zoukankan      html  css  js  c++  java
  • 【图像算法】图像特征:三个图像显著性区域特征提取方法

    -------------------------------------------------------------------------------------------------------------------------

    【图像算法】图像特征:三个图像显著性区域特征提取方法

     SkySeraph Aug 11st 2011  HQU

    Email:zgzhaobo@gmail.com    QQ:452728574

    Latest Modified Date:Aug 11st 2011  HQU

    -------------------------------------------------------------------------------------------------------------------------

     图像算法系列: http://skyseraph.com/2011/08/27/CV/图像算法专题/ 

    》第一种方法:

    原理:Frequency-tuned Salient Region Detection.CVPR.2009

    定义:

    简述

    三步,滤波+颜色空间转换+计算SaliencyMap(见源码)

    效果

    待测试图(后同)

    结果1:(原作者代码测试结果)

    结果2:(我用OpenCV改写的代码测试结果)

    结果3:(我的改进测试(空间选择不同))

    源码(matlab):

    %---------------------------------------------------------
    % Read image and blur it with a 3x3 or 5x5 Gaussian filter
    %---------------------------------------------------------
    img = imread('input_image.jpg');%Provide input image path
    gfrgb = imfilter(img, fspecial('gaussian', 3, 3), 'symmetric', 'conv');
    %---------------------------------------------------------
    % Perform sRGB to CIE Lab color space conversion (using D65)
    %---------------------------------------------------------
    cform = makecform('srgb2lab', 'whitepoint', whitepoint('d65'));
    lab = applycform(gfrgb,cform);
    %---------------------------------------------------------
    % Compute Lab average values (note that in the paper this
    % average is found from the unblurred original image, but
    % the results are quite similar)
    %---------------------------------------------------------
    l = double(lab(:,:,1)); lm = mean(mean(l));
    a = double(lab(:,:,2)); am = mean(mean(a));
    b = double(lab(:,:,3)); bm = mean(mean(b));
    %---------------------------------------------------------
    % Finally compute the saliency map and display it.
    %---------------------------------------------------------
    sm = (l-lm).^2 + (a-am).^2 + (b-bm).^2;
    imshow(sm,[]);
    %--------------------------------------------------------
    

    ------------------------------------------------------------------------------------------------------------------------------

    》第二种方法:

    原理:

    Y. Zhai and M. Shah. Visual attention detection in video sequences using spatiotemporal cues. In ACM Multimedia, pages 815–824. ACM,2006.

    定义:

    效果:

    ------------------------------------------------------------------------------------------------------------------------------

    》第三种方法:

    原理:http://www.klab.caltech.edu/~xhou/projects/spectralResidual/spectralresidual.html

    源码(matlab):

    clear
    clc
    
    %% Read image from file 
    inImg = im2double(rgb2gray(imread('yourImage.jpg')));
    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);
    
    

    效果: 

    SYNC (www.skyseraph.com)

    ------------------------------------------------------------------------------------------------------------------------------

    Author:         SKySeraph

    Email/GTalk: zgzhaobo@gmail.com    QQ:452728574

    From:         http://www.cnblogs.com/skyseraph/

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.

     -----------------------------------------------------------------------------------------------------------------------------


    作者:skyseraph
    出处:http://www.cnblogs.com/skyseraph/
    更多精彩请直接访问SkySeraph个人站点:http://skyseraph.com//
    Email/GTalk: zgzhaobo@gmail.com
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    《Django By Example》第十二章(终章) 中文 翻译 (个人学习,渣翻)
    《Django By Example》第十一章 中文 翻译 (个人学习,渣翻)
    《Django By Example》第十章 中文 翻译 (个人学习,渣翻)
    《Django By Example》第九章 中文 翻译 (个人学习,渣翻)
    《Django By Example》第八章 中文 翻译 (个人学习,渣翻)
    《Django By Example》第五章 中文 翻译 (个人学习,渣翻)
    我的superui开源后台bootstrap开发框架
    LayoutInflater 总结
    Android屏幕分辨率概念(dp、dip、dpi、sp、px)
    android studio安装问题
  • 原文地址:https://www.cnblogs.com/skyseraph/p/2135291.html
Copyright © 2011-2022 走看看