2017-08-04 62 views
2

的〜南區的數量我有以下情節:查找的大小和排列

enter image description here

正是基於陣列,所有的彩色區域〜isnan而白色區域是楠。

我必須找到每個彩色斑點的數量和大小(dx,dy)。有人有這樣做的好方法嗎?我的方法如下所示:

W_w_dy = nan(size(W_w)) ; 
for ii = 1 : length(W_w(1,:)) ; % anzahl spalten 
    tmp = W_w(:,ii) ; 
    % logical for testing on nan 
    find_nan = isnan(tmp) ; 
    % indizes with not nan 
    ind = find(find_nan==0) ; 
    % initillisiere dy 
    dy = zeros(length(W_w(:,1)),1) ; 
    for jj = 1 : length(ind) ; 
     tmp_down = 0 ; 
     ind_tmp = ind(jj) ; 
     while find_nan(ind_tmp) == 0 ; 
      if ind_tmp > length(ind) 
       break 
      end 
      tmp_down = tmp_down + 1 ; 
      ind_tmp = ind(jj) + tmp_down ; 
     end 
     dy(ind(jj)) = tmp_down ; 
    end 
    clear tmp_down ind_tmp 

%  for kk = 2 : length(dy) ; 
%   if dy(kk-1) > dy(kk) 
%    dy(kk) = 0 ; 
%   end 
%  end 
    W_w_dy(:,ii) = dy ; 
    clear dy find_nan tmp ind dy_neu 
end 

繪圖基於的數組是W_w。我的想法是遍歷每一列並獲得一個數組,每個單元格寫入下面的許多單元格是〜isnan。

這也適用於每一行。但我真的不知道我如何計算渦流,並得到每個eddie一個dx和一個dy。

感謝您的幫助。

+2

你有圖像處理工具箱? – Suever

回答