What characteristics should I extract from the image and what type of classifier should be used to classify human spermatozoa according to their morphology?
This is part of the realization of a CASA (computer assisted semen analysis) system.
Compare both normal and abnormal samples. I think some of the characteristics you can consider are fertility diagnosis, prognosis, reproductive and toxicology.
Morphologically you can consider their head, tail, neck shapes into symmetrical, asymmetrical, irregular and amorphous categories based on the fuzzy region.
Characteristic of image are basically known as feature. There are many technique available for color and texture feature extraction such as SIFT, SURF, HOG LBP etc.
You should probably consider "morphological filtering", which is a branch of image processing. I added a link found at random on the internet for example. I have used morphological filtering with good success, for automatically detecting and counting rocks of various sizes on the seafloor in sidescan sonar imagery. Much more ont he methodology is available from online search.
Nowadays we use automatic approaches for discovering and representation of such characteristics (features). I strongly recommend you to use deep convolution neural networks (CNNs) which has been severally shown that they are very very efficient for such purposes.
Usually a CNNs model has also classifier at the softmax layer which categorize data as you learned it; however you can also use popular classifiers (e.g. SVM) on discovered feature vectors as well.
Ronald's idea would be of course improving as a preprocessing for your work.
In my opinion, the image need to be segmented first by using well known segmentation algorithms availbale for image processing applications.Then some morphological operators shall be applied to improved the quality of the segmented image.
Thereafter, if the shape and size of the object matters than using regionprops command which is available in matlab shall be calculated.
Support vector machine and artificial neural network can be used for classification purpose.
But I would STRONGLY suggest to use deep learning techniques for the given task.