Convert image to binary image, based on threshold
BW = im2bw(I, level)
BW = im2bw(X, map, level)
BW = im2bw(RGB, level)
BW = im2bw(I, level) converts the grayscale image I to a binary image. The output image BW replaces all pixels in the input image with luminance greater than level with the value 1 (white) and replaces all other pixels with the value 0 (black). Specify level in the range [0,1]. This range is relative to the signal levels possible for the image's class. Therefore, a level value of 0.5 is midway between black and white, regardless of class. To compute the level argument, you can use the function graythresh. If you do not specify level, im2bw uses the value 0.5.
If the input image is not a grayscale image, im2bw converts the input image to grayscale, and then converts this grayscale image to binary by thresholding.
The input image can be of class uint8, uint16, single, int16, or double, and must be nonsparse. The output image BW is of class logical. I and X must be 2-D. RGB images are M-by-N-by-3.