Я пытаюсь извлечь XML-блоб в данных заголовка от изображения со следующим кодом (реальная ножевое в темноте):Извлечение EXIF информации из JPEG
import exifread
Open image file for reading (binary mode)
open('img.jpg', 'rb')
tags = exifread.process_file(f)
for tag in tags.keys():
if tag not in ('JPEGThumbnail', 'TIFFThumbnail', 'Filename', 'EXIF MakerNote'):
print ("Key: %s, value %s") % (tag, tags[tag])
print(tags)
однако я получаю следующее сообщение :
==== RESTART: C:/Users/richie/Desktop/work/exif_read4.py ============
{}
>>>
Я знаю, что файл содержит данные в заголовке, но его возможно не в формате exif. Ниже приведен пример информации, как они появляются в ImageJ:
[JpegComment] Jpeg Comment: <?xml version="1.0" encoding="utf-8"?>
<image time="15:27:56.763207" date="2016.02.03" acq_index="3692">
<acquisition>
<exposure>10000</exposure>
<sensor_digital_gain>4</sensor_digital_gain>
<aperture>4</aperture>
<focus>68</focus>
<digital_gain>1</digital_gain>
<name>Photo_pose</name>
<camera_session_name>EXI-55-retest-3</camera_session_name>
</acquisition>
<errors>
Может кто-нибудь придумать способ извлечения этих данных?
Существует множество инструментов - 'jhead',' exiftool', 'ImageMagick' ... те, что находятся в увеличенном порядке и сложность установки. –
Из взглядов документов ExifRead кажется, что он извлекает только EXIF-данные, а не другие типы метаданных (XMP, IPTC). Пока я не знаком с тем, как работает Imagej, вывод, похоже, указывает на то, что нужные вам данные находятся в комментарии Jpeg, что было бы необычным местом для данных XML. Вы можете найти пакет python с более полной обработкой метаданных. Быстрый поиск google поднял [hachoir-metadata] (https://pypi.python.org/pypi/hachoir-metadata/1.3.3), который выглядит так, как будто он может обрабатывать ваши данные. – StarGeek
Есть и exiv2, кстати. –