利用python如何识别图片中人物的表情

  介绍

这篇文章给大家介绍利用python如何识别图片中人物的表情,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

<强>实现思路

使用OpenCV识别图片中的脸,在使用keras进行表情识别。

<>强效果预览

利用python如何识别图片中人物的表情

<强>实现代码

使用keras实现的,和性别识别相同,型数据使用的是oarriaga/face_classification的,代码如下:

#=utf - 8编码   #表情识别      进口cv2   从keras。模型导入load_model   进口numpy np   进口chineseText   进口日期时间      开始时间=datetime.datetime.now ()   emotion_classifier=load_model (   & # 39;分类器/emotion_models simple_CNN.530-0.65.hdf5& # 39;)   endTime=datetime.datetime.now ()   打印(endTime -开始时间)      emotion_labels={   0:& # 39;生气& # 39;,   1:& # 39;厌恶& # 39;,   2:& # 39;恐惧& # 39;,   3:& # 39;开心& # 39;,   4:& # 39;难过& # 39;,   5:& # 39;惊喜& # 39;,   6:& # 39;平静& # 39;   }      img=cv2.imread (“img/情感/emotion.png")   face_classifier=cv2.CascadeClassifier (   “C: \ Python36 \ Lib \网站\ opencv-master \ \ haarcascades \ haarcascade_frontalface_default.xml"数据;   )   灰色=cv2。cv2.COLOR_BGR2GRAY cvtColor (img)   面临=face_classifier.detectMultiScale (   灰色,scaleFactor=1.2, minNeighbors=3, minSize=(40、40))   颜色=(255,0,0)      (x, y, w h)在面临:   gray_face灰色=[(y): (y + h) (x): (x + w)]   gray_face=cv2。48)调整(gray_face (48)   gray_face=gray_face/255.0   gray_face=np。expand_dims (gray_face, 0)   gray_face=np。expand_dims (gray_face, 1)   emotion_label_arg=np.argmax (emotion_classifier.predict (gray_face))   情感=emotion_labels [emotion_label_arg]   cv2。矩形(img (x + 10, y + 10) (h - 10 x + y + w - 10),   (255、255、255),2)   img=chineseText。cv2ImgAddText (img、情感、x + h * 0.3, y,颜色,20)      cv2.imshow (“Image" img)   cv2.waitKey (0)   cv2.destroyAllWindows ()

关于利用python如何识别图片中人物的表情就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

利用python如何识别图片中人物的表情