An Algorithm and Implementation for Image Segmentation