I want to do a knob for salt and pepper noise but the value of the noise dose not change
3 次查看(过去 30 天)
显示 更早的评论
changingValue = event.Value;
input=im2gray(a); %a is my image
imshow(input,'Parent',app.UIAxes_2);
app.SaltpepperButton_2.Value=true;
J=input;
J =imnoise(J,'salt & pepper');
imshow(J,'Parent',app.UIAxes_2);
end
2 个评论
采纳的回答
Chris
2023-1-14
编辑:Chris
2023-1-14
function UIAxesButtonDown(app, event)
% The default button style doesn't have a value.
% changingValue = event.Value;
% You can't grab "a" from nowhere. If you didn't generate it in
% this callback, or if you want to store it for later use,
% it should be a property of the app.
input=im2gray(app.a);
imshow(input,'Parent',app.UIAxes_2);
% app.SaltpepperButton_2.Value=true;
J=input;
J =imnoise(J,'salt & pepper');
% You just used these axes. Depending on your computer, or how
% Matlab optimizes the function,
% the change will be too fast to see/skipped over.
pause(.5)
imshow(J,'Parent',app.UIAxes_2);
end
0 个评论
更多回答(1 个)
Image Analyst
2023-1-14
You need to call imnoise with the parameter that controls the amount of noise added to the image. You get this value by getting the value of a slider or knob, or edit field, or however the user is going to indicate the level of noise to be added to the image. For example, if the noise density is controlled by a slider, in the slider callback
% Get noise level from the control on the GUI.
noiseDensity = app.sldNoiseDensity.Value;
% Apply this density to the noise-free image:
noisyImage = imnoise(originalImage, 'salt & pepper', noiseDensity);
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Robotics 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!