How create plot of intensity versus frequency of image?
5 ビュー (過去 30 日間)
古いコメントを表示
imhist function will give a plot of intensity versus frequency, or we can normalize it like follow, but how we can make a plot like attached? it looks like an area plot. any comment appreciated.
clc;
close all;
clear all;
I = dicomread('IM_0007-Bmode');
for fr = 1:size(I,4)-1
img(:,:,fr) = rgb2gray(I(:,:,:,fr));
end
im1 = double(img(:,:,1));
%// Create normalized images
Inormalized = double(im1)./double(max(im1(:)));
%// Convert back to uint8
% im2Norm = im2uint8(Inormalized);
imhist (Inormalized);
minVal = min(Inormalized(:));
maxVal = max(Inormalized(:));
0 件のコメント
採用された回答
Image Analyst
2018 年 6 月 10 日
Try this:
histogram(I, 'normalization', 'probability')
title('Probability vs. Intensity', 'FontSize', 15);
xlabel('Intensity (gray level)', 'FontSize', 15);
ylabel('Probability', 'FontSize', 15);
grid on;
5 件のコメント
Image Analyst
2018 年 6 月 10 日
Yes it is. It also has no edge lines between the bins, which is an option you can have or not have. Excel calls it a column chart but most people, including at the Mathworks, call it a bar chart.
その他の回答 (1 件)
Ameer Hamza
2018 年 6 月 10 日
You can do something like this
[counts bins] = imhist(im1);
% normalize 'bins' and 'counts' here. e.g.
bins = bins/255;
counts = counts/sum(counts);
bar(bins, counts);
ax = gca;
ax.Children.BarWidth = 1;
参考
カテゴリ
Help Center および File Exchange で Data Distribution Plots についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!