error in plotting a bar graph
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
mideas
am 7 Apr. 2012
Kommentiert: piyali banerjee
am 21 Feb. 2014
this program implements a fuzzy color histogram,the fuzzy system a takes 3 inputs.rgb2lab is already defined.the output graph,i.e the histogram plot has 15 bins
z=imread('Lenna.png');
x=readfis('a.fis');
R=z(:,:,1);
G=z(:,:,2);
B=z(:,:,3);
%x1=0:1:15;
[L,a,b]=RGB2Lab(R,G,B);
%L1=cat(3,L,a,b);
%imshow(L1)
[m,n,o]=size(s);
q=[];
%L=zf(:,1);
Ld=double(L);
%L1d=double(L1);
%a=zf(:,2);
ad=double(a);
%b=zf(:,3);
bd=double(b);
for i=1:m
for j=1:n
q(i,j)=evalfis([Ld(i,j) ad(i,j) bd(i,j)],x);
end
end
bar(q(i,j))
i need to plot the output 'q' as a bar graph.and i need the x-range to be in 0-15. but there is an error: rror using ==> bar The length of X must match the number of rows of Y. can anyone help with this?
1 Kommentar
piyali banerjee
am 21 Feb. 2014
when running this code I am getting q[] values same for all the rows and columns as .5 for any jpg images.Can anybody tell me which portion of the code should I modify to get the correct result aswellas correct bar chart?
Akzeptierte Antwort
Walter Roberson
am 7 Apr. 2012
You have a nested for loop over i and j. After the end of that loop, you ask to bar(q(i,j)) . That is asking to create a bar plot of the single value stored at q(i,j) based upon the values of i and j after the "for" loops. MATLAB leaves the loop variable in a "for" loop set to the last valid value, so this will be q(m,n) that you are asking to create a bar plot of.
Considering that q is 2 dimensional, it is not at all clear what you are wanting to create a bar plot of. Especially as, in past threads, you have indicated that what evalfis() on your particular FIS returns is already the histogram, rather than a histogram bin number.
If I were to guess, I would say that what you want is
hist(q(:))
6 Kommentare
piyali banerjee
am 21 Feb. 2014
I am getting all the q(m,n) values as .5 taking any images as consideration.Can anyone solve the problem?
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Fuzzy Logic in Simulink finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!