How can i convert the first image(Red) like the second one(Black)?

1 view (last 30 days)
  2 Comments
Rik
Rik on 1 Aug 2021
You want to fit a certain function to your data. What have you tried so far?
siet ece
siet ece on 1 Aug 2021
cover=imread('Lenna.png');
coverplane1=int32(cover(:,:,1));
for i=1:512
for j=1:511
PixelDiffOriginal(i,1:511)=coverplane1(i,j)-coverplane1(i,j+1);
end
end
[N1,edges1]=histcounts(PixelDiffOriginal);
edges1=edges1(2:end)-(edges1(2)-edges1(1))/2;
plot(edges1,N1);
%% i just tried to plot a graph(black graph) but i got the red graph, how can i obtain the black graph?

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 1 Aug 2021
Use plot() instead of stem().
  5 Comments
Image Analyst
Image Analyst on 2 Aug 2021
The black curve in your original post doesn't look smooth to me. But anyway, you can smooth the data and then plot the smoothed data with a sliding polynomial fit filter, sgolayfilt() in the Signal Processing Toolbox.
polynomialOrder = 2; % Larger for less smoothing.
windowWidth = 7; % Larger for more smoothing.
smoothedSignal = sgolayfilt(signal, polynomialOrder, windowWidth);
plot(smoothedSignal, 'b-', 'LineWidth', 3);
grid on;
title('Smoothed Signal', 'FontSize', 20);
If you don't have sgolayfilt(), try movmean().

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!