Adaptive Multi-Level Threshold for image
    7 views (last 30 days)
  
       Show older comments
    
Dear All;
I have an image with non-uniform illumination , i need to use adaptive threshold to compensate for that , then use multi level threshold to segment the image into Three regions, what is the best way to do that
0 Comments
Answers (3)
  Image Analyst
      
      
 on 28 Sep 2014
        Try adapthisteq(). How you classify into 3 classes after that depends on how easy it is to find the thresholds. Write a script to flatten your image with adapthisteq() and then take the histogram and show it to us.
5 Comments
  Rizwan Chughtai
 on 13 Dec 2017
				@image analyst, my question is a little off topic but i need your help on this.
i have two images (as uploaded s1 & s2), one is having the boxes in x-axis direction and second is having the boxes in y-axis direction.
Question 1: how we can find that the boxes is in x-axis direction OR in y-axis direction?
Question 2:after finding the direction, extract/separate the boxes from that image?
(first see the imges 's1' & 's2')
  Image Analyst
      
      
 on 13 Dec 2017
				Use regionprops() to get the bounding box and look at the width and height of it.
  Anand
    
 on 29 Sep 2014
        Have you tried using multithresh after adapthisteq? multithresh does multi-level thresholding using Otsu's method.
thresh = multithresh(I,2);
segI = imquantize(I,thresh);
See Also
Categories
				Find more on Image Segmentation and Analysis in Help Center and File Exchange
			
	Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


