Segmenting an image according a threshold
    조회 수: 4 (최근 30일)
  
       이전 댓글 표시
    
Say that I have a grayscale image, which values range from `[0,255]`. Say that I want the pixels which values are larger than or equal to `66` for instance to be `white`, and the rest pixels to be `black`. How can I do that in `MATLAB`?
Thanks.
댓글 수: 0
답변 (2개)
  Image Analyst
      
      
 2013년 10월 30일
        
      편집: Image Analyst
      
      
 2013년 10월 30일
  
      The easiest way by far, is to simply threshold:
binaryImage = grayImage >= 66;
Ashish's method doesn't create black pixels, and Kevin's is inefficient. My fast and efficient method will create a binary image which is used in virtually all processing afterwards, such as labeling, morphology, regionprops, hole filling, etc.
댓글 수: 0
  Kevin Claytor
      
 2013년 10월 30일
        thresh = 66;
I(I < thresh) = 0;
I(I > thresh) = 255;
댓글 수: 1
  Ashish Uthama
    
 2013년 10월 30일
				
      편집: Ashish Uthama
    
 2013년 10월 31일
  
			[Edit, I meant to correct Kevin's code, pointing out the need for >=]
I(I >= thresh) = 255;
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



