1
我想要在圖像img_gauss的每一列中找到這兩個局部最大值之間的局部最大值和最小值。然後將它們的最小值設置爲1(白色)。任何人都知道如何以簡單的方式做到這一點?在每個列matlab中查找局部最大值和最小值
下面我有我的代碼。但我遇到了一些麻煩,我嘗試在每次迭代中(對於每列)採取本地化(locs),然後將它們放入數組peaks_column中,以按列來定位峯值,但是此錯誤消失:
下標分配尺寸不匹配。 cropping_image_long錯誤(第136行) peaks_column(1:size(Intens_graph,1),x)= pks(:,1);
pks= [];
locs_column=zeros(20,size(img_gauss,2));
locs= [];
pks_column=zeros(20,size(img_gauss,2));
for x = 1:size(img_gauss,2) % 2 = colunas x(colunas)
% make a row wise intensity distribution graphic for each column
Intens_graph(:,x)=img_gauss(size(img_gauss,1):-1:1,x);
[pks,locs] = findpeaks(Intens_graph(:,x));%find the local maximum
peaks_column(1:size(Intens_graph,1),x)=pks(:,1); %associate to each column
locs_column(1:size(Intens_graph,1),x)=locs(:,1);
BW = imregionalmin(Intens_graph);
end
請你張貼一些樣本數據。 – kkuilla 2014-10-20 15:01:50