taking an average histogram from number of histograms
    5 次查看(过去 30 天)
  
       显示 更早的评论
    
hi, I am trying to take to the average histogram from multiple histogram , I am trying like this
 img = dir('C:\Program Files\MATLAB\R2012a\bin\Patches\*.png');  % the folder in which ur images exists
for i = 1 : length(img)
    filename = strcat('C:\Program Files\MATLAB\R2012a\bin\Patches\',img(i).name);
    I = imread(filename);
    I=I(:,:,1);
    I=im2double(I);
    [rows, columns, numberOfColorBands] = size(I);
if numberOfColorBands > 1
I = rgb2gray(I);
end
%     [count, bin]=imhist(I);
     [bin,xout]=hist(I); 
     for i=1:bin
         bin1=sum(bin(i))./max(bin);
     end
     bar(xout,bin);
end
somebody please suggest how could I get the average histogram if I am having number of histograms Same discussion cuold be found here mean histogram Thanks
2 个评论
  dpb
      
      
 2013-8-4
				Sure, just like the result of the thread you posted says--set a given range and number of bins then accumulate the counts in those bins and average.
doc histc
采纳的回答
  dpb
      
      
 2013-8-6
        I'm really no image processor but aiui, imhist returns 256 bins for a grayscale image so why isn't it simply the accumulation of all the counts in each bin for each image?
dirn='C:\Program Files\MATLAB\R2012a\bin\Patches';
% do the first to establish the histogram outputs
I = imread(fullfile(dirn,img(i).name));
I=I(:,:,1);
%  Since you took the first plane here, the 3rd dim from size() will 
%  never be >1 so that's all superfluous in you code--if you do need to
%  convert to grayscale, do it here though..
[cnt, bin]=imhist(I);
for i = 2 : length(img)   % now accumulate rest...
  filename = fullfile(dirn,img(i).name);
  I = imread(filename);
  I=I(:,:,1);
% ditto the above comment...
  cnt=cnt+imhist(I);           % the accumlator
end
cnt=cnt/length(img);           % and average
stem(bin,cnt);
end
2 个评论
更多回答(0 个)
另请参阅
类别
				在 Help Center 和 File Exchange 中查找有关 Histograms 的更多信息
			
	产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


