| 2D数据,可以用findpeaks函数。 3D数据当中上,一个点,比它周围的8个点都大,它就是一个峰值。具体数据,这个判断条件可能不一样。具体分析,
 例子是peaks函数,相对简单一些。
 
 复制代码clear all
clc
clf
n=100;
[x,y,z]=peaks(n);
cen=[];
for row= 2: n-1;
    for col = 2: n-1;
        p_cen=z(row,col);
        p_nea=z(row-1:row+1,col-1:col+1);
        val_big=p_cen-p_nea;
        n_big=sum(val_big(:)>0);
        if n_big>7;
            cen=[cen;x(row,col),y(row,col),z(row,col)];
        end
    end
end
h=surf(x,y,z,'edgecolor','none');
alpha(h,0.7);
hold on
plot3(cen(:,1),cen(:,2),cen(:,3),'ro','markersize',10,'markerfacecolor','r');
view(0,90)
 
 
 
 
 |