En este artículo, vamos a detectar la expresión facial de una imagen ya existente usando módulos OpenCV, Deepface y matplotlib en python.
Módulo necesario
- OpenCV: OpenCV es una biblioteca de código abierto en python que se utiliza para la visión artificial, el aprendizaje automático y el procesamiento de imágenes.
- Matplotlib: Matplotlib es una biblioteca completa para crear visualizaciones estáticas, animadas e interactivas en Python.
- Deepface: Deepface fue creado por un grupo de investigadores de inteligencia artificial en Facebook. Es un framework en python para reconocimiento facial y análisis de atributos. Los componentes principales de la biblioteca de Deepface se utilizan en Keras y TensorFlow.
pip install deepface
Esta es la técnica de detección de expresión más básica y hay varias formas en las que podemos detectar la expresión facial.
Implementación paso a paso
Paso 1: Importación del módulo requerido.
Python3
#import the required modules import cv2 import matplotlib.pyplot as plt from deepface import DeepFace
Paso 2: copie la ruta de la imagen de la que se realizará la detección de expresión, lea la imagen usando el método «imread()» en cv2 proporcionando la ruta dentro del paréntesis. imread() lee la imagen del archivo y la almacena en una array. Luego use el método imshow() de matplotlib. El método imshow() convierte datos en imágenes. Ahora trace la imagen usando el método show para asegurarse de que la imagen se haya importado correctamente.
Python3
# read image img = cv2.imread('img1.jpg') # call imshow() using plt object plt.imshow(img[:, :, : : -1]) # display that image plt.show()
Producción:
Paso 3: Cree una variable de resultado que almacenará el resultado. Use el método Deepface Analyze(), el método Deepface Analyze() contiene funciones sólidas de análisis de atributos faciales, como la edad, el género y las expresiones faciales. Las expresiones faciales incluyen ira, miedo, neutral, tristeza, disgusto, felicidad y sorpresa. Imprime el resultado. El resultado muestra el porcentaje de expresiones faciales de la persona.
Python3
# storing the result result = DeepFace.analyze(img, actions = ['emotion']) # print result print(result)
Producción:
El resultado muestra que esa persona es 96% feliz.
A continuación se muestra la implementación completa:
Python3
# import the required modules import cv2 import matplotlib.pyplot as plt from deepface import DeepFace # read image img = cv2.imread('img.jpg') # call imshow() using plt object plt.imshow(img[:,:,::-1]) # display that image plt.show() # storing the result result = DeepFace.analyze(img,actions=['emotion']) # print result print(result)
Producción:
Publicación traducida automáticamente
Artículo escrito por jyotinigam2370 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA