⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 newseg.m

📁 自己编的阈值分割的源程序
💻 M
字号:
clear all;
clc;
[filename,pathname]=uigetfile({'*tif','TIF Files'},'打开文件');
if isequal([filename,pathname],[0,0])
    return
else
    file=fullfile(pathname,filename);
end
T=imread(file);
[m,n]=size(T);
T=double(T);
subm=1;
subn=1;
s=strcat(num2str(n),'*',num2str(m),'大小的图片');
while subm<2
answer=inputdlg('请输入将原图分割成M*N,M=',s);
subm=str2num(char(answer));  
end
while subn<2
answer=inputdlg('请输入将原图分割成M*N,N=',s);
subn=str2num(char(answer));  
end
x1=floor(m/subm);
y1=floor(n/subn);
sum=0;

T=double(T);
B=zeros(size(T));
[m,n]=size(T);
h=waitbar(0,'请等待...');

for i=1:x1:floor(m/x1)*x1
    for j=1:y1:floor(n/y1)*y1
                for p=1:x1
                   for q=1:y1 
                      sum=sum+T(i+p-1,j+q-1);             
                  end 
               end 
             sum=sum/(x1*y1);        
          for p=1:x1
               for q=1:y1
                   thex=i+p-1;
                   they=j+q-1;
                 if T(thex,they)>=sum&&B(thex,they)==0
                           B(thex,they)=255;
                       else
                           B(thex,they)=0;
                       end  
                   end              
         end
         sum=0;
     end
       waitbar(i/m);      
end
close(h);
   imshow(B);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -