Есть ли бесплатное программное обеспечение, которое будет экспортировать метаданные для папки, полной изображений, в таблицу?

У меня есть сотни тысяч изображений в наборе из примерно 50 папок, каждая из которых имеет разное количество подпапок. Я хотел бы извлечь определенные фрагменты метаданных (широта/долгота, данные/время, модель камеры и серийный номер, может быть, несколько других) из всех изображений в этих папках и их подпапках и экспортировать их в таблицу (CSV будет проще всего), чтобы я мог импортировать метаданные в базу данных. Мне нужно сохранить как минимум 6 знаков после запятой в полях широты и долготы, данные о местоположении важны.

Итак, я ищу часть программного обеспечения Windows, которое я могу указать на папку и заставить ее пройти через эту папку и все ее подпапки, прочитать метаданные и экспортировать метаданные для каждого изображения в строке в файле CSV, например:

Filepath,Filename,Lat,Long,CameraSerial
C:\Images1\Folder1\,Image0001.jpg,42.00000002,-75.00000001,A0193498
C:\Images1\Folder2\,Image0001.jpg,42.00000112,-75.00000067,A0193498
C:\Images1\FolderZ\,Image0001.jpg,42.00000492,-75.00000099,A0193498

Я нашел Camera Bits Photo Mechanic, которая делает то, что мне нужно, но я надеялся, что есть бесплатное решение с открытым исходным кодом. Большинство инструментов, которые я нашел, которые выполняют пакетный экспорт метаданных EXIF, делают это, экспортируя отдельный текстовый файл для каждого входного JPG, а это не то, что мне нужно, мне нужна одна таблица на папку (и ее подпапки).

Ответы (3)

Вы можете сделать это довольно легко с помощью кроссплатформенного бесплатного программного обеспечения ExifTool . Это есть даже в FAQ :

Параметр -csv(значения, разделенные запятыми) решает эту дилемму, предварительно извлекая информацию из всех входных файлов, затем создавая отсортированный список имен доступных тегов в качестве первой строки вывода и организуя информацию в столбцы для каждого тега. Кроме того, создается первый столбец с надписью «SourceFile». Эти функции делают практичным использование -csvопции для извлечения всей информации из нескольких изображений. Например, эта команда:

   exiftool -csv -r t/images > out.csv

дает такой вывод:

   SourceFile,AEBBracketValue,AELock,AFAreaHeight,AFAreaMode,AFAreas,[...]
   t/images/Canon.jpg,0,,151,,,[...] t/images/Casio.jpg,,,,,,[...]
   t/images/Nikon.jpg,,,,Single Area,,[...]
   t/images/OlympusE1.jpg,,Off,,,"Center (121,121)-(133,133)",[...]

Это будет очень длинный список, поэтому, если вы хотите просто включить несколько конкретных вещей, вы можете сделать это:

exiftool -csv -Model -CreateDate  -GPS:all -time:all *.jpg

(в данном примере все файлы в текущем каталоге).

Документация предупреждает, что -csvфлаг, в отличие от большинства опций exiftool, строит весь вывод в памяти, поэтому использование памяти может быть довольно большим при использовании со многими файлами — вероятно, лучше всего написать что-то, что идет по папкам. (Легко делается даже на простом пакетном языке.)

Инструмент, который приходит на ум, — это программное обеспечение с открытым исходным кодом, которое работает с большим количеством форматов файлов:

http://meta-extractor.sourceforge.net/

Это немного технически, но имеет много настроек, которые должны соответствовать вашим потребностям. Это решение предназначено только для Windows и Linux.

Кроме того, если у вас есть копия Adobe Photoshop, у вас будет Adobe Bridge с экстрактором метаданных.

Это, безусловно, лучший ответ, который я видел по этому вопросу. Я попробовал exift, но я даже не знал о двух других решениях. Большое спасибо за ваше направление и руководство.

Только что наткнулся на этот прекрасный инструмент из Австралии, приятель! ржунимагу

Это программа на Java, которая «... позволяет редактировать метаданные для отдельных изображений или обрабатывать их в пакетном режиме с помощью функций «Экспорт EXIF ​​в CSV» и «Импорт EXIF ​​из CSV».

Он работает только с файлами jpg/jpeg, но также имеет встроенный конвертер для преобразования файлов png в jpg. Мне нужно было экспортировать ограниченные метаданные фотографий в CSV, где я затем объединил другой CSV-файл с информацией о заголовке, авторе и дате.

редактор метаданных изображений eatlas.org