• 大小: 1.29MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-09-20
  • 语言: Matlab
  • 标签: matlab  

资源简介

自己实现的基于matlab的论文作者提出的二值图像目标邻域点法边界跟踪算法,比8邻域算法速度快。

资源截图

代码片段和文件信息




function Track = BoundaryTrackingMethod(bwImage)
    [rc] = size(bwImage);
     bwImage;
    LABEL = zeros(rc);
    Track = zeros(rc);
    flag = 0;
    for i = 1:r
        for j = 1:c
            if bwImage(ij) == 1                     
                P0 = bwImage(ij);
                flag = 1;
                ip0 = i;
                jp0 = j;
                Track(ij) = 1;
                if bwImage(i-1j)==1
                    P1 = bwImage(i-1j);
                    imin = i-1;
                    jmin = j;
                     LABEL(iminjmin) = 0;
                     break;
                else if  bwImage(i-1j-1)==1
                         P1 = bwImage(i-1j -1);
                         imin = i-1;
                        jmin = j-1;
                        LABEL(iminjmin) = 1;                        
                        break;
                    else if  bwImage(ij-1)==1
                            P1 = bwImage(ij-1);
                             imin = i;
                            jmin = j-1;
                            LABEL(iminjmin) = 2;                            
                           break; 
                        else if  bwImage(i+1j -1)==1
                                P1 = bwImage(i+1j-1);
                                imin = i+1;
                                jmin = j-1;
                                LABEL(iminjmin) = 3;                                 
                        break;
                            else if  bwImage(i+1j)==1
                                     P1 = bwImage(i+1j);
                                     imin = i+1;
                                     jmin = j;
                                     LABEL(iminjmin) = 4;                                     
                        break;
                            else if  bwImage(i+1j+1)==1                               
                                    P1 = bwImage(i+1j+1);
                                      imin = i+1;
                                        jmin = j+1;
                                     LABEL(iminjmin) = 5;                                    
                                    break; 
                                else if  bwImage(ij+1)==1                                    
                                        P1 = bwImage(ij+1);
                                         imin = i;
                                            jmin = j+1;
                                         LABEL(iminjmin) = 6;                                         
                        break;
                                    else if  bwImage(i-1j+1)==1
                                            P1 = bwImage(i-1j+1);
                                             imin = i-1;
                                            jmin = j+1;
                                            LABEL(iminjmin) = 7;
                                 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       6803  2012-08-28 19:03  BoundaryTrackingMethod\BoundaryTrackingMethod.m

     文件        497  2012-08-28 19:04  BoundaryTrackingMethod\ceshi.m

     文件     195896  2012-08-28 10:37  BoundaryTrackingMethod\circle.bmp

     文件    3000054  2012-08-11 09:26  BoundaryTrackingMethod\small.bmp

    ..A.SH.     10752  2012-08-29 08:52  BoundaryTrackingMethod\Thumbs.db

     文件     124058  2012-08-27 17:48  BoundaryTrackingMethod\二值图像目标邻域点法边界跟踪算法.pdf

     目录          0  2012-08-29 08:52  BoundaryTrackingMethod

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

              3338060                    7


评论

共有 条评论