This question has been answered very well from different perspectives, and I just want to summarize my experience and also emphasize some problems related to adaptive binarization.
Adaptive binarization can be divided into three categories:
1) Global method: with this method first of the background of the image is estimated; after that a normalized image is generated with the help of the background information. Then global binarization method is employed.
2) Patch-based method: as the name indicates, patch-based method will perform binarization patch by patch. At each patch, a binarization is estimated with a global binarization method. After that, some post-processing is performed to make sue that binarization threshold in neighboring patches has smooth transition.
3) Moving-window method: with this method, binarization is done pixel by pixel. A moving window is set up to calculate the pixel statistics within the window, and based on the statistics the threshold for the central pixel within the window is calculated.
It is very hard to tell which method is the best as it depends on the application. When you think of an adaptive binarization, do not forget to consider the following questions:
1) parameter setting: does the method have an automatic parameter setting procedure? How can we set the parameters very well so that it can work on most cases?
2) what is the criterion of justifying a good adaptive binarization? In many cases, the difference between different binarization methods is really small. However, the small difference may lead to big difference in the end.
3) can binarization work on some particular situations? For example, suppose the target of the adaptive binarization is to extract while objects from black background, can the binarization automatically adapt to this situation? Or vice visa.
4) adaptive methods have the tendency of only focusing on the local configurations, hence the binary result is not optimized. For example, the famous Sauvola method will generate hollow object if the object to be optimized is far larger than the moving window. Can your adaptive method conque this limitation?
5) preprocessing. A good binarization also should include image processing insider. If the image is too blurring, it can automatically adjust the parameters of the algorithm or invoke some preprocessing to avoid bad binarization.