Image segmentation is a key process in many computer vision applications. It is commonly used to partition an image into different regions that, ideally, correspond to real-world objects extracted from the background. Therefore, image segmentation is an important step in image recognition and content analysis. Image thresholding is a simple, yet effective, image segmentation method, where the pixels are partitioned depending on their intensity value, and so, it can be used to partition an image into a foreground and background.
In this chapter, you will learn the importance of thresholding techniques in your computer vision projects. The main thresholding techniques that OpenCV (and also the scikit-image image processing library) provides, which you will need in your computer vision applications as a key part of image segmentation, will be reviewed.
The main sections of this chapter are as follows:
- Introducing thresholding techniques
- Simple thresholding technique
- Adaptive thresholding technique
- Otsu's thresholding algorithm
- Triangle thresholding algorithm
- Thresholding color images
- Thresholding algorithms using scikit-image