Visión artificial automatizada
HogarHogar > Blog > Visión artificial automatizada

Visión artificial automatizada

Jun 03, 2023

Historia solo para miembros

Maryland Zubair

Seguir

Inversor impulsado por datos

--

Escuchar

Compartir

La visión artificial añade una nueva dimensión a las tecnologías modernas. Consciente o inconscientemente, estamos usando la visión artificial. Soy un profesor universitario que imparte un curso de visión artificial. Por lo general, tomo manualmente la asistencia; consume tiempo y energía. Hace dos días me vino a la mente la idea de automatizar un sistema para ahorrar energía y tiempo. Y he completado con éxito el proyecto.

Si lees el artículo hasta el final, podrás crear el tuyo propio. No se necesitan conocimientos matemáticos o de codificación complejos o de alto nivel. Vamonos.

He tratado de mantener el proyecto simple y fácil para que los estudiantes de nivel principiante se sientan cómodos creando su primer proyecto. Importemos las bibliotecas requeridas.

Extrajimos los directorios de imágenes de entrenamiento con el código anterior y los guardamos en la variable myList.

Con el código anterior, extrajimos los directorios de imágenes de entrenamiento y los guardamos en la variable myList.

Ahora, considere la siguiente celda de código.

El código anterior nos ayuda a crear dos listas diferentes nombradas: imágenes y nombres de clase. Hemos guardado los valores de intensidad de las imágenes en la lista de imágenes y el nombre de cada persona en la lista de nombres de clase.

A modo de demostración, he mostrado el nombre de las imágenes a continuación.

Las imágenes se guardaron con Anik.jpg, Ferdous.jpg, etc.

[NB Según el código de este proyecto, tenemos que etiquetar la imagen con el nombre de identificación o ID]

La codificación facial es una forma de representar las caras de una imagen con algunos números medidos por computadora. La codificación de caras similares genera tipos similares de valores codificados. Entonces se vuelve fácil reconocer las caras.

Hemos utilizado la siguiente celda de código para codificar las imágenes con la biblioteca de reconocimiento facial.

La función findEncodings devuelve todos los valores codificados para las imágenes de entrenamiento.

Generalmente, OpenCV almacena la imagen en formato BGR en lugar de en formato RGB. Entonces, necesitamos convertirlo a RGB para trabajar con las imágenes. Y la función face_recognition.face_encodings() extrae la cara de una imagen y la codifica.

Queremos que nuestro proyecto sea realista. Es por eso que también generamos una hoja de Excel que contiene la información y el tiempo de asistencia en formato tabular para cada día. He creado la siguiente función para hacer el trabajo.

Hemos utilizado la biblioteca openpyxl para crear e insertar datos en las hojas de Excel. En primer lugar, hemos tomado un archivo de Excel donde almacenamos la información. Para cada día, hemos creado una nueva hoja con la fecha de ese día en el archivo de Excel. Finalmente, hemos insertado el nombre, la fecha y la hora de las personas reconocidas en la hoja de Excel.

Ejemplo de salida —

Hemos detectado las caras de la entrada de la cámara en vivo para que podamos usar el CCTV en tiempo real Imágenes de cámara para tomar asistencia. También guardamos la imagen en una carpeta diferente de la cara detectada para su posterior verificación.

Todas estas tareas están en una sola celda de código:

Hemos creado carpetas individuales para cada día para guardar las imágenes detectadas con os.mkdir() . A continuación, capturamos el video con la función cv2.VideoCapture(0) . Aquí, 0 para la cámara predeterminada, y también puede usar 1, 2 y así sucesivamente para otras entradas de cámara. Hemos tomado cuadros de video continuos con un bucle while. Después de eso, redujimos el tamaño de la imagen a 1/4 para minimizar el costo computacional y codificamos la imagen con la imagen reducida. También calculamos la distancia desde la imagen de entrada hasta la imagen entrenada y finalmente etiquetamos la imagen de entrada con la etiqueta de imagen entrenada de menor distancia.

También dibujamos un rectángulo rojo de la cara detectada que muestra el nombre de la persona detectada. Al mismo tiempo, recopilamos el nombre de la cara detectada como una lista y la insertamos en la hoja de Excel con la función takeAttendance().

Salida de la cara detectada —

Imagen guardada en la carpeta de fecha específica:

Hoja de Excel generada —

Para cada fecha, hemos creado una hoja de Excel de un archivo de Excel específico.

Principalmente, he creado el proyecto para principiantes. Por lo tanto, lo he mantenido simple. El proyecto tiene algunas limitaciones.

El proyecto completo está disponible aquí.

Únete al medio con el siguiente enlace para apoyar mis escritos.

https://mzh706.medium.com/membership

Otros artículos de mi visión artificialserie -

haciadatascience.com

haciadatascience.com

haciadatascience.com

haciadatascience.com

haciadatascience.com

Suscríbase a DDIntel aquí.

Visite nuestro sitio web aquí: https://www.datadriveninvestor.com

Únase a nuestra red aquí: https://datadriveninvestor.com/collaborate

CCTV El proyecto completo está disponible aquí. visión por computador