QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2303|回复: 0
打印 上一主题 下一主题

请各位大师帮我解释几段程序命令含义

[复制链接]
字体大小: 正常 放大
hzlhm        

1

主题

10

听众

663

积分

升级  15.75%

  • TA的每日心情
    无聊
    2022-9-25 17:45
  • 签到天数: 252 天

    [LV.8]以坛为家I

    自我介绍
    200 字节以内

    不支持自定义 Discuz! 代码

    邮箱绑定达人 新人进步奖

    跳转到指定楼层
    1#
    发表于 2011-6-19 12:36 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta |邮箱已经成功绑定
    请各位大师帮我解释几段程序命令含义,在此先感谢了喽。
    I=imread('Empreinte.bmp');
    subplot(221);
    imshow(I);看图片
    set(gcf,'position',[1 1 600 600]);
    J=I(:,:,1)>160;
    subplot(222);imshow(J)
    set(gcf,'position',[1 1 600 600])
    K=bwmorph(~J,'thin','inf'); BWMORPH Perform morphological operations on binary image.
    subplot(223);imshow(~K)
    set(gcf,'position',[1 1 600 600]);
    L = nlfilter(K,[3 3],fun); NLFILTER Perform general sliding-neighborhood operations.
    ------------------------------------------------
    D=6;
    %% Process 1
    Distance=DistEuclidian(CentroidBif,CentroidTerm);
    SpuriousMinutae=Distance<D;
    [i,j]=find(SpuriousMinutae);
    CentroidBif(i,=[];
    CentroidTerm(j,=[];
    %% Process 2
    Distance=DistEuclidian(CentroidBif);
    SpuriousMinutae=Distance<D;
    [i,j]=find(SpuriousMinutae);
    CentroidBif(i,=[];
    %% Process 3
    Distance=DistEuclidian(CentroidTerm);
    SpuriousMinutae=Distance<D;
    [i,j]=find(SpuriousMinutae);
    CentroidTerm(i,=[];
    [m,n]=size(I(:,:,1));
    indTerm=sub2ind([m,n],CentroidTerm(:,1),CentroidTerm(:,2));
    Z=zeros(m,n);
    Z(indTerm)=1;
    ZTerm=Z.*ROI';
    [CentroidTermX,CentroidTermY]=find(ZTerm);

    indBif=sub2ind([m,n],CentroidBif(:,1),CentroidBif(:,2));
    Z=zeros(m,n);
    Z(indBif)=1;
    ZBif=Z.*ROI';
    [CentroidBifX,CentroidBifY]=find(ZBif);

    figure
    imshow(I)
    set(gcf,'position',[1 1 600 600]);
    hold on
    plot(CentroidTermX,CentroidTermY,'ro','linewidth',2)
    plot(CentroidBifX,CentroidBifY,'go','linewidth',2)

    hold on
    plot(CentroidTermX,CentroidTermY,'ro','linewidth',2)
    plot([CentroidTermX CentroidTermX+dyTerm]',...
        [CentroidTermY CentroidTermY-dxTerm]','r','linewidth',2)
    -------------------------------------------------------------------
    function D=DistEuclidian(dataset1,dataset2)
    h = waitbar(0,'Distance Computation');
    switch nargin
        case 1
            [m1,n1]=size(dataset1);
            m2=m1;
            D=zeros(m1,m2);
            for i=1:m1
                waitbar(i/m1)
                for j=1:m2
                    if i==j
                        D(i,j)=NaN;
                    else
                        D(i,j)=sqrt((dataset1(i,1)-dataset1(j,1))^2+(dataset1(i,2)-dataset1(j,2))^2);
                    end
                end
            end
        case 2
            [m1,n1]=size(dataset1);
            [m2,n2]=size(dataset2);
            D=zeros(m1,m2);
            for i=1:m1
                waitbar(i/m1)
                for j=1:m2
                    D(i,j)=sqrt((dataset1(i,1)-dataset2(j,1))^2+(dataset1(i,2)-dataset2(j,2))^2);
                end
            end
        otherwise
            error('only one or two input arguments')
    end

    close(h)
      
    -----------------------------------------------------
    I=imread('Empreinte.bmp');
    subplot(421);
    imshow(I);
    set(gcf,'position',[1 1 600 600]);
    J=I(:,:,1)>160;
    subplot(322);imshow(J)
    set(gcf,'position',[1 1 600 600])
    K=bwmorph(~J,'thin','inf');
    subplot(323);imshow(~K)
    set(gcf,'position',[1 1 600 600]);
    fun=@minutie;
    L = nlfilter(K,[3 3],fun);
    %LTerm=(L==1);
    %subplot(324);
    %imshow(LTerm);
    LTermLab=bwlabel(J);
    subplot(324);
    imshow(LTermLab)
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2025-6-12 08:48 , Processed in 0.396123 second(s), 51 queries .

    回顶部