Gender Classification
Train a classifier to recognize male from female faces in images.
images = {[image], ..., [image]};
gender = {"male", ..., "female"};Trim the faces out of the images and regularize the set using FindFaces, HistogramTransform, and ConformImages.
faces = ConformImages[HistogramTransform@ImageTrim[#, FindFaces[#][[1]]]& /@ images, ColorSpace -> "Grayscale"]Out[1]= {[image], ..., [image]}trainingSetSize = 30;
trainingSet = Rule@@@Transpose@{faces, gender}[[All, ;; trainingSetSize]];
testSet = Rule@@@Transpose@{faces, gender}[[All, trainingSetSize + 1 ;; ]];Use Classify to build the classifier.
GenderClassifier = Classify[trainingSet, Method -> "LogisticRegression"]ClassifierMeasurements[GenderClassifier, trainingSet, "Accuracy"]ClassifierMeasurements[GenderClassifier, testSet, "Accuracy"]GenderDetect[img_Image] :=
With[{faces = FindFaces[img]},
If[faces =!= {},
GenderClassifier[
HistogramTransform[ImageTrim[ColorConvert[img, GrayLevel], faces[[1]]]]
],
"no face detected"
]]
GenderDetect[images__Image] := GenderDetect /@ {images}imgs = {[image], [image], [image], [image], [image]};GenderDetect@@imgs