Автор оригинала: Mike Driscoll.
Знаете ли вы, что вы можете получить данные EXIF из файлов изображений JPG, используя язык программирования Python? Вы можете использовать подушку, дружелюбную вилку библиотеки визуализации Python, чтобы сделать это. Вы можете прочитать статью об этом на этом сайте, если вы хотите.
Вот какой-то пример код для получения регулярных данных EXIF из файла JPG:
# exif_getter.py from PIL import Image from PIL.ExifTags import TAGS def get_exif(image_file_path): exif_table = {} image = Image.open(image_file_path) info = image.getexif() for tag, value in info.items(): decoded = TAGS.get(tag, tag) exif_table[decoded] = value return exif_table if __name__ == "__main__": exif = get_exif("bridge.JPG") print(exif)
Этот код был запущен с помощью следующего изображения:
В этой статье вы будете сосредоточены на том, как извлечь GPS-теги с изображения. Это специальные теги EXIF, которые присутствуют только в том случае, если камера, которая взяла фотографию, имела информацию о вашем расположении для камеры. Вы также можете добавить теги GPS на своем компьютере после факта.
Например, я добавил GPS-теги на эту фотографию Jester Park, которая находится в Granger, Ia:
Чтобы получить доступ к те меткам, вам нужно будет предпринять более ранний пример кода и выполнять небольшие настройки:
# gps_exif_getter.py from PIL import Image from PIL.ExifTags import TAGS, GPSTAGS def get_exif(image_file_path): exif_table = {} image = Image.open(image_file_path) info = image.getexif() for tag, value in info.items(): decoded = TAGS.get(tag, tag) exif_table[decoded] = value gps_info = {} for key in exif_table['GPSInfo'].keys(): decode = GPSTAGS.get(key,key) gps_info[decode] = exif_table['GPSInfo'][key] return gps_info if __name__ == "__main__": exif = get_exif("jester.jpg") print(exif)
Чтобы получить доступ к тегам GPS, вам нужно импортировать GPstags из Pil.Exiftags. Затем после анализа регулярных тегов из файла вы добавляете второй цикл, чтобы искать тег «GPSINFO». Если это присутствует, то у вас есть теги GPS, которые вы можете извлечь.
Когда вы запускаете этот код, вы должны увидеть следующий вывод:
{'GPSLatitudeRef': 'N', 'GPSLatitude': (41.0, 47.0, 2.17), 'GPSLongitudeRef': 'W', 'GPSLongitude': (93.0, 46.0, 42.09)}
Вы можете использовать эту информацию и использовать ее для загрузки карты Google с Python или работать с одним из популярных библиотек Python, связанных с ГИС.
Связанное чтение
Получение фото метаданных (EXIF) с помощью Python
Добавление Viewer Exif на изображение просмотра изображения