精华内容
下载资源
问答
  • matlab实现彩色图像特征提取1

    千次阅读 2017-05-25 21:10:02
    The realization of image color feature extraction matlab彩色图像特征提取
    The realization of image color feature extraction matlab彩色图像特征提取
    展开全文
  • MATLAB实现HOG特征提取

    2020-09-29 05:00:16
    本程序使用matlab实现图像HOG特征提取,效果不错
  • 指纹图像特征提取是指纹识别的关键,而指纹匹配通常基于细节点匹配。指纹特征提取是从细化后的指纹图中得到...基于MATLAB实现的指纹细节特征提取方法,并给出了去伪算法,算法实现简单快速,而且具有较高的准确率。
  • matlab中GUI界面实现bmp格式图像特征提取
  • MATLAB实现图像的SIFT特征提取源码

    千次阅读 2020-12-22 05:49:00
    % % 开始工作 % fprintf('---------------------------- 开始 SIFT: 从图像提取SIFT特征 ------------------------------\n') ; tic ; fprintf('SIFT: 用DoG构造尺度空间 ...\n') ; tic ; scalespace = do_...

    function [frames,descriptors,scalespace,difofg]=do_sift(I,varargin)
    %% file:       sift.m
    % author:      Noemie Phulpin
    % description: SIFT algorithm

    warning off all;

    [M,N,C] = size(I) ;

    % Lowe's choices
    S=3 ;
    omin= 0 ;
    %O=floor(log2(min(M,N)))-omin-4 ; % Up to 16x16 images
    O = 4;

    sigma0=1.6*2^(1/S) ;
    sigmaN=0.5 ;
    thresh = 0.2 / S / 2 ; % 0.04 / S / 2 ;
    r = 18 ;

    NBP = 4 ;
    NBO = 8 ;
    magnif = 3.0 ;

    % Parese input
    compute_descriptor = 0 ;
    discard_boundary_points = 1 ;
    verb = 0 ;

    % Arguments sanity check
    if C > 1
      error('I 应该是灰度图') ;
    end

    frames = [] ;
    descriptors = [] ;


    %   开始工作
    %
    fprintf('---------------------------- 开始 SIFT: 从图像中提取SIFT特征 ------------------------------\n') ; tic ; 

    fprintf('SIFT: 用DoG构造尺度空间 ...\n') ; tic ; 

    scalespace = do_gaussian(I,sigmaN,O,S,omin,-1,S+1,sigma0) ;

    fprintf('                高斯尺度空间计时: (%.3f s)\n',toc) ; tic ; 

    difofg = do_diffofg(scalespace) ;

    fprintf('                构建相减尺度空间: (%.3f s)\n',toc) ;

    for o=1:scalespace.O
        
        
        fprintf('CS5240 -- SIFT: 计算 “组”  %d\n', o-1+omin) ;
                    tic ;
        
      %  DOG octave 的局部极值检测
        oframes1 = do_localmax(  difofg.octave{o}, 0.8*thresh, difofg.smin  ) ;
        oframes2 = do_localmax( -difofg.octave{o}, 0.8*thresh, difofg.smin  ) ;
        oframes = [oframes1 ,oframes2 ] ; 
        
        
        fprintf('CS5240 -- SIFT: 初始化关键点 # %d.  \n', ...
          size(oframes, 2)) ;
        fprintf('                用时 (%.3f s)\n', ...
           toc) ;
        tic ;
        
        if size(oframes, 2) == 0
            continue;
        end
        
      % 移除靠近边界的关键点
        rad = magnif * scalespace.sigma0 * 2.^(oframes(3,:)/scalespace.S) * NBP / 2 ;
        sel=find(...
          oframes(1,:)-rad >= 1                     & ...
          oframes(1,:)+rad <= size(scalespace.octave{o},2) & ...
          oframes(2,:)-rad >= 1                     & ...
          oframes(2,:)+rad <= size(scalespace.octave{o},1)     ) ;
        oframes=oframes(:,sel) ;%把不是靠近边界点的极值点重新放入oframes中
            
        fprintf('CS5240 -- SIFT: 移除靠近边界关键点后 # %d \n', size(oframes,2)) ;
          tic ;
            
      % 精简局部, 阈值强度 和移除边缘关键点
           oframes = do_extrefine(...
             oframes, ...
             difofg.octave{o}, ...
             difofg.smin, ...
             thresh, ...
             r) ;
       
           fprintf('CS5240 -- SIFT:  移除低对比度和边缘上关键点后 # %d \n',size(oframes,2)) ;
        fprintf('                Time (%.3f s)\n',  toc) ;
        tic ;
      
        fprintf('CS5240 -- SIFT: 计算特征点方向\n');

      % 计算方向
        oframes = do_orientation(...
            oframes, ...
            scalespace.octave{o}, ...
            scalespace.S, ...
            scalespace.smin, ...
            scalespace.sigma0 ) ;
        fprintf('                用时: (%.3f s)\n', toc);tic;
            
      % Store frames
        x     = 2^(o-1+scalespace.omin) * oframes(1,:) ;
        y     = 2^(o-1+scalespace.omin) * oframes(2,:) ;
        sigma = 2^(o-1+scalespace.omin) * scalespace.sigma0 * 2.^(oframes(3,:)/scalespace.S) ;    %图像的尺度    
        frames = [frames, [x(:)' ; y(:)' ; sigma(:)' ; oframes(4,:)] ] ;

        fprintf('CS5240 -- SIFT:计算方向后的特征点 # %d  \n', size(frames,2)) ;
      % Descriptors
        
        fprintf('CS5240 -- SIFT: 计算 描述子...\n') ;
        tic ;
            
        sh = do_descriptor(scalespace.octave{o}, ...
                        oframes, ...
                        scalespace.sigma0, ...
                        scalespace.S, ...
                        scalespace.smin, ...
                        'Magnif', magnif, ...
                        'NumSpatialBins', NBP, ...
                        'NumOrientBins', NBO) ;
        
        descriptors = [descriptors, sh] ;%每一组计算描述子向量后补充到descriptors数组中
        
        fprintf('                用时: (%.3f s)\n\n\n',toc) ; 
        
          
        
    end 

    fprintf('CS5240 -- SIFT: 关键点总数: %d \n\n\n', size(frames,2)) ;
     

    展开全文
  • 基于Matlab特征提取实现图像读取、选定区域的剪切、单色化、灰度化、通过阈值设置提取标志点及对图像显示和保存
  • 提取图像的lbp特征,使用matlab实现,简单易操作 提取图像的lbp特征,使用matlab实现,简单易操作
  • 基于Matlab实现的指纹图像细节特征提取是智能建立人工模式识别各种应用的基础,在这个基础上可以建立各种不同样品的指纹图谱。
  • 本代码可以实现matlab中的图像纹理特征提取图像处理速度较快,处理效果较好。
  • 图像特征是指图像的原始特性或属性其中有些是视觉直接感受到的自然特征如区域的亮度边缘的轮廓纹理或色彩等有些是需要通过变换或测量才能得到的人为特征如变换频谱直方图矩等图像特征提取工作的结果给出了某一具体的...
  • 第7章 图像分割与特征提取MATLAB实现 图像分割是指将图像中有意义的对象与其背景分离并把这些对象按照不同的含义分割开来也就是说把图像中具有不同含义的对象提取出来图像分割的方法大致可以分为基于边缘检测的...
  • Gabor提取图像特征原理及其matlab实现
  • 第4章 图像分割与特征提取MATLAB实现.ppt第4章 图像分割与特征提取MATLAB实现 图像分割:是指将图像中有意义的对象与其背景分离,并把这些对象按照不同的含义分割开来,也就是说,把图像中具有不同含义的对象...

    第4章 图像分割与特征提取及MATLAB实现.ppt

    第4章 图像分割与特征提取及MATLAB实现 图像分割:是指将图像中有意义的对象与其背景分离,并把这些对象按照不同的含义分割开来,也就是说,把图像中具有不同含义的对象提取出来。 图像分割的方法:大致可以分为基于边缘检测的方法和基于区域生成的方法两大类。 边缘检测技术:是所有基于边界分割的图像分析方法的第一步,首先检测出图像局部特性的不连续性,再将它们连成边界,这些边界把图像分成不同的区域,检测出边缘的图像就可以进行特征提取和形状分析。 图像特征:是指图像的原始特性或属性。其中有些是视觉直接感受到的自然特征,如区域的亮度、边缘的轮廓、纹理或色彩等;有些是需要通过变换或测量才能得到的人为特征,如变换频谱、直方图、矩等。图像特征提取工作的结果给出了某一具体的图像中与其他图像相区别的特征。如:描述物体表面灰度变化的纹理特征,描述物体外形的形状特征等。这些特征提取的结果需要一定的表达方式,要让计算机能懂得,这就是本章的任务。 7.1边缘检测方法 图像边缘对图像识别和计算机分析十分有用,边缘能勾画出目标物体,使观察者一目了然;边缘蕴含了丰富的内在信息(如方向、阶跃性质、形状等),是图像识别中重要的图像特征之一。从本质上说,图像边缘是图像局部特性不连续性(灰度突变、颜色突变、纹理结构突变等)的反映,它标志着一个区域的终结和另一个区域的开始。为了计算方便起见,通常选择一阶和二阶导数来检测边界,利用求导方法可以很方便地检测到灰度值的不连续效果。边缘的检测可以借助空域微分算子利用卷积来实现。常用的微分算子有梯度算子和拉普拉斯算子等,这些算子不但可以检测图像的二维边缘,还可检测图像序列的三维边缘。下面分别进行介绍。 7.1.1边缘算子法 (1)差分算子 图7.1是最常见的边缘,其灰度变化可能呈阶梯状,也可能呈脉冲状,对于图7. 1(a)和(d)所示的一阶差分和二阶差分如图7.1(b)、(c)和(e)、(f)。由图可知,差分图像中能够较精确地获得这两种类型的边缘。 边缘与差分值的关系归纳如下:边缘发生在差分最大值(如图7. 1(b))或最小值处(如图(f));边缘发生在过零点处(如图(c)、(e))。 图7.1常见边缘的一阶差分和二阶差分 (a)阶梯状边缘 (b)阶梯状边缘的一阶差分 (c)阶梯状边缘的二阶差分 (d)脉冲状边缘 (e)脉冲状边缘的一阶差分 (f)脉冲状边缘的二阶差分 1)梯度算子 在前面章节曾经讨论,在点f(m,n)处,梯度G[f(m,n)]的幅度为: (7.1.1) 对于数字图像,式(7.1.1)可改写为: (7.1.2) 其中: (7.1.3) 有时为了避免平方和运算,可将幅度用两个分量的绝对值之和或最大绝对值来表示,即 或 (7.1.4) 取适当的门限T,如果G[f(m,n) ] > T,则(m,n)为阶跃状边缘点。 2)罗伯特(Robert)梯度 前面,在计算(m,n)点的梯度时只用到f(m,n), f(m-1,n)及f(m, n-1)的值。但实际上,任意一对相互垂直方向上的差分都可用来估计梯度。Robert梯度采用对角方向相邻两像素之差,即 (7.1.5) 有了 ,很容易地算出Robert梯度的幅值。Robert梯度实际上是以 为中心的,应当把它们看成在这个中心点上连续梯度的近似。从图像处理的实际效果看,用式(7.1.5)的Robert梯度比用式(7.1.3)的梯度计算式来检测边缘要好。 3)拉普拉斯(Laplacian)算子 拉普拉斯(Laplacian)算子是一种二阶微分算子,也可用来提取图像的边缘。在数字图像处理中,其一般表示形式为: (7.1.6) 其中S是以f(m,n)为中心的邻点的集合,可以是

    展开全文
  • 基于人类对纹理的视觉感知的心理学的研究,Tamura 等人提出了纹理特征的表达[14]。Tamura 纹理特征的六个分量对应于心理学角度上纹理特征的六种属性,分别是粗糙度(coarseness) 、...Matlab实现Tamura特征提取
  • Date: 2019.4.9【Tag: Outsouring project】 前言     颜色特征是在图像检索中应用最为广泛的视觉特征。颜色特征是一种全局特征,描述了图像图像区域所... 本文主要是对各种图像颜色特征提取方法和实现进行介绍。

    Date: 2019.4.9


    前言

        颜色特征是在图像检索中应用最为广泛的视觉特征。颜色特征是一种全局特征,描述了图像或图像区域所对应的景物的表面性质。数字图像的颜色特征包括颜色直方图 、颜色矩、颜色相关图和颜色聚合向量等。 本文主要是对各种图像颜色特征提取方法和实现进行介绍。

    1、参考

    颜色特征提取
    图像特征提取(纹理特征)
    图像检索:颜色聚合向量(CCV)及matlab实现

    2、RGB空间颜色直方图
    I=imread('lena.jpg');
    R=I(:,:,1);
    G=I(:,:,2);
    B=I(:,:,3);
    figure,imhist(R);
    title('R');
    figure,imhist(G);
    title('G');
    figure,imhist(B);
    title('B');  
    
    3、RGB空间颜色矩
    firstMoment = mean(mean(I)); % 一阶颜色矩
    difference = I(:,:,m) - firstMoment(1,1,m); %差分颜色矩
    secondMoment(m,1) = sqrt(mean(mean(difference.*difference))); % 二阶颜色矩
    thirdMoment(m,1) = nthroot(mean(mean(difference.*difference.*difference)),3); % 三阶颜色矩
    
    4、颜色聚合向量

    颜色聚合向量(color coherence vector,CCV)是一种颜色特征,它包含了颜色分布的空间信息。克服了颜色直方图无法表达图像色彩的空间位置的缺点。

    颜色聚合向量是一种更复杂颜色直方图。它将每个像素分类为聚合的(coherence pixels)或非聚合的(incoherence pixels)。聚合的像素指的是,该像素属于一个大的连通区域;而非聚合像素指的是,像素位于一个小的连通区域。连通区域大小的标准有我们自己来定,通常为整幅图像像素的1%。大于1%,是大的连通区域。

    function CCV = getCCV(img,coherentPrec, numberOfColors)  
        if ~exist('coherentPrec','var')  
            coherentPrec = 1;  
        end  
        if ~exist('numberOfColors','var')  
            numberOfColors = 27;  
        end  
        CCV = zeros(2,numberOfColors);  
        %高斯滤波  
        Gaus = fspecial('gaussian',[5 5],2);  
        img = imfilter(img,Gaus,'same');  
          
        [img, updNumOfPix]= discretizeColors(img,numberOfColors);  %量化  
          
        imgSize = (size(img,1)*size(img,2));  
        thresh = int32((coherentPrec/100) *imgSize);  
          
        parfor i=0:updNumOfPix-1  
            BW = img==i;  
            CC = bwconncomp(BW);  
            compsSize = cellfun(@numel,CC.PixelIdxList);  
            incoherent = sum(compsSize(compsSize>=thresh));  
            CCV(:,i+1) = [incoherent; ...  
                sum(compsSize) - incoherent];  
        end  
    end 
    

    THE END!

    在这里插入图片描述

    展开全文
  • MATLAB实现卷积神经网络,并对图像进行特征提取 文件列表: CNN CNN\cnnapplygrads.m CNN\cnnbp.m CNN\cnnff.m CNN\cnnnumgradcheck.m CNN\cnnsetup.m CNN\cnntest.m CNN\cnntrain.m CNN\expand.m CNN\...
  • https://github.com/MichaelBeechan/VisualOdometry_BasedOnSURF %% Name:Michael Beechan %% School:Chongqing University of Technology %% Time:2018.12.11 %% Function:Extract image features 原图像: %% ...
  • 基于MATLAB实现的指纹细节特征提取方法,并给出了去伪算法,算法实现简单快速,而且具有较高的准确率。 1 技术概述 指纹识别技术是一种应用前景非常乐观的生物识别技术,国内外很多机构都在进行相关研究,尽管目前已...
  • gabor提取图像特征原理及其matlab实现

    热门讨论 2012-11-19 18:04:06
    包括gabor滤波器及其原理,并通过matlab实现gabor算法,可供学习和参考
  • 利用DOG算子实现角点检测,matlab源码,注释详实,有参考的算法讲解网站链接。如果有问题可以在评论区讨论留言,我会尽力解答。
  • hslogic算法仿真-基于matlab图像LBP特征提取算法的仿真 % %---------------------------------------------—————————————— % % 程序实现的功能: 对示例图像进行处理,并提取它的LBP特征 % %-------...
  • 基于MATLAB实现的指纹细节特征提取方法,并给出了去伪算法,算法实现简单快速,而且具有较高的准确率。 1 技术概述 指纹识别技术是一种应用前景非常乐观的生物识别技术,国内外很多机构都在进行相关研究,尽管目前已...
  • Matlab 图像处理 ——特征提取

    千次阅读 2017-04-01 13:46:29
    图像的边缘检测: 边缘检测技术对于处理数字图像非常重要,因为边缘是所要提取目标和背景的分界线,提取出边缘才能将目标和背景区分开来。在图像中,边界表明一个特征区域的...边缘检测实际上就是检测图像特征发生变
  • matlab实现图像拼接

    2020-08-17 16:41:42
    图像的拼接技术包括三大部分:特征提取与匹配、图像配准、图像融合。图像拼接是一项应用广泛的图像处理技术。根据特征点的相互匹配,可以将多张小视角的图像拼接成为一张大视角的图像,在广角照片合成、卫星照片...
  • 特征提取matlab实现

    2010-06-08 12:36:05
    运用matlab,对处理图像及各类数据(特征矩阵)进行特征提取,并在matlab上的实现
  • 图像特征提取源码

    2020-06-29 21:03:16
    该压缩包在matlab2013a中运行并实现图像特征提取,包含四大类经典特征提取方法:SIFT特征,颜色特征,形状特征,纹理特征。每个方法文件夹内附有文档说明。最后我给出了同步PPT解说,包含原理,步骤,及运行实例和...
  •  局部图结构(Local Graph Structure)是由Abusham E A提出的,该算子能将图像的局部特征信息很好的表示,其对于纹理的分辨能力很强,对灰度的单调变化不敏感。  关注一个3*4的区域,LGS与6个领域像素有关。如下...

空空如也

空空如也

1 2 3 4 5 ... 19
收藏数 363
精华内容 145
关键字:

matlab实现图像特征提取

matlab 订阅