How can I convert grayscale image to a binary image without using a toolbox function?
28 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
maha D
am 14 Okt. 2016
Kommentiert: DGM
am 24 Aug. 2023
I want to create a binary image from a gray scale image, using a specific threshold value of 0.2, but without using im2bw(), which is in the Image Processing Toolbox. How do I do it?
0 Kommentare
Akzeptierte Antwort
Image Analyst
am 14 Okt. 2016
Just threshold:
binaryImage = grayImage > 0.2; % or < or <= or >= (whatever you want).
No toolbox needed.
11 Kommentare
Image Analyst
am 24 Aug. 2023
Don't use gray as the name of your variable. It is the name of a built-in function. What do you mean by "back"? What happened to it. You still have (the badly named) "gray" in your functions workspace, right? So just use it. You didn't say "clear gray" did you? So it should still be there.
DGM
am 24 Aug. 2023
To be clear, let's assume an empty workspace:
inpict = imread('cameraman.tif'); % a uint8-class grayscale image
mask = inpict >= 128; % a logical-class binary image
At this point there are two variables in the workspace: inpict and mask. You can't back-calculate inpict from mask, but you don't have to, since it's still in memory. Just use inpict.
Weitere Antworten (1)
Ali nafaa
am 29 Nov. 2022
Bearbeitet: DGM
am 24 Aug. 2023
x = imread('cameraman.tif');
figure,imshow(x);
[r,c] = size (x);
output=zeros(r,c);
for i = 1 : r
for j = 1 : c
if x(i,j) > 128
output(i,j)=1;
else
output(i,j)=0;
end
end
end
figure,imshow(output);
1 Kommentar
DGM
am 24 Aug. 2023
There's no need for the loops. The appropriate answer was given years prior.
inpict = imread('cameraman.tif'); % a uint8-class grayscale image
mask = inpict >= 128; % a logical-class binary image
... or if inpict is not needed for anything, you can avoid the intermediate result:
mask = imread('cameraman.tif') >= 128; % a logical-class binary image
Display them however you choose.
Siehe auch
Kategorien
Mehr zu Image Data Workflows 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!