¿Cómo extraer metadatos de imagen en Python?

Requisitos previos: PIL

Metadatos significa datos sobre datos. En el caso de las imágenes, los metadatos significan detalles sobre la imagen y su producción. El dispositivo de captura genera automáticamente algunos metadatos. 

Algunos detalles contenidos en los metadatos de la imagen son los siguientes:

  • Altura
  • Ancho
  • Fecha y hora
  • modelo etc

Python tiene la biblioteca PIL que hace que la tarea de extraer metadatos de una imagen sea extremadamente fácil usando solo unas pocas líneas.

Acercarse:

  • Importe el módulo de Pillows .
  • Carga la imagen
  • Obtenga los metadatos. Los metadatos así obtenidos
  • Conviértalo en un formato legible por humanos

Hay muchos tipos de metadatos, pero en este solo nos estamos enfocando en los metadatos Exif.

Exif

Estos metadatos, a menudo creados por cámaras y otros dispositivos de captura, incluyen información técnica sobre una imagen y su método de captura, como configuración de exposición, tiempo de captura, información de ubicación GPS y modelo de cámara.

para esto, he usado esta imagen (el enlace para esto está debajo) asegúrese de que cualquier imagen que esté usando tenga algunos metadatos de tipo EXIF ​​y que la mayoría de los dispositivos de captura tengan datos EXIF

https://drive.google.com/file/d/1z2RaRvzC8Cd8oxD8pZJu2U0rpRr8tbwV/view 

NOTA :-por favor evite la imagen compartida a través de whatsapp. Whatsapp elimina todos los metadatos de cualquier imagen 

Implementación:

Paso 1: Importación de módulos.

Paso 2: Cargue la imagen y extraiga los datos EXIF.

Paso 3: Convierta la identificación de la etiqueta exif (indicada por tagid en el código) en una forma legible por humanos indicada por el nombre de la etiqueta en el código y obtenga su valor respectivo.

Aplicación para extraer metadatos de una imagen con Pillow : el siguiente script implementa el enfoque anterior

Python3

from PIL import Image
from PIL.ExifTags import TAGS
  
# open the image
image = Image.open("img.jpg")
  
# extracting the exif metadata
exifdata = image.getexif()
  
# looping through all the tags present in exifdata
for tagid in exifdata:
      
    # getting the tag name instead of tag id
    tagname = TAGS.get(tagid, tagid)
  
    # passing the tagid to get its respective value
    value = exifdata.get(tagid)
    
    # printing the final result
    print(f"{tagname:25}: {value}")

Producción:

Publicación traducida automáticamente

Artículo escrito por sanjuxdr y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *