Summary
In this chapter, we discussed image segmentation and demonstrated different algorithms with Python libraries such as scikit-image
, opencv (cv2)
and SimpleITK
. We started with line and circle detection in an image with Hough transform and also showed an example of how it can be used for image segmentation. Next, we discussed Otsu's thresholding algorithm to find the optimal threshold for segmentation. Then edge-based and region-based segmentation algorithms were demonstrated along with the morphological watershed algorithm for image segmentation. In the next section, some more segmentation algorithms such as Felzenszwalb's graph-based algorithm, region growing, SLIC, and QuickShift were discussed, along with the implementations using scikit-image
. Finally, we discussed some more sophisticated segmentation algorithms, such as GrabCut, active contours, and morphological snakes.
In the next chapter, we shall discuss machine learning techniques in image processing, and we will discuss...