A fast underwater optical image segmentation algorithm based on a histogram weighted fuzzy c-means improved by PSO