Exif это: Что такое Exif цифрового фотоснимка

Содержание

Что такое Exif цифрового фотоснимка

Наверное много раз вы слышали это слово, на фотофорумах или где то еще. Так что же это?

Exif (расшифровывается как Exchangeable Image File Format) — это стандарт, который позволяет добавлять к цифровым фотографиям дополнительную информацию, описывающую этот файл. Информация, записанная в Exif файла, может использоваться как человеком, так и различными устройствами (например, принтером для прямой печати с фотоаппарата).

 

Любая цифровая фотокамера пишет в Exif детальную информацию о снимке, например: название камеры, настройки камеры с которыми сделанно фото, дату, когда сделанно фото и др. (полный перечень смотрите ниже)

Посмотреть Exif вашей фотографии можно следующим образом: Наведите курсор на ваше фото и нажмите правую кнопку мыши, появится выпадающие меню и далее смотрите картинки.

 

 

 

 

 

 

 

 

И вот наконец то добрались,

 

 

Как видите в Exif указанна следующая информация о снимке:

  1. Размер фото в точках по длине и ширине
  2. Разрешение фото по горизонтали и вертикали
  3. Глубина цвета в Битах
  4. Название модели камеры и изготовителя
  5. Программа в которой был сделан снимок (если вы снимаете в JPG то будет указанна программа фотокамеры, которая обработала снимок, если вы снимаете в RAW, то будет указанна программа через которую был совершен экспорт в JPG; в данном случае это Adobe Photoshop Camera RAW)
  6. Выдержка в секундах с которой снят кадр
  7. Светочувствительность сенсора (матрицы), которая была установлена при съемке
  8. Определение выдержки показывает, в каком режиме был сделан снимок (режим снимка устанавливается либо из меню, либо поворотом колеса режимов, в зависимости от конкретной модели фотокамеры)(см. фото)
  9. Компенсация выдержки
  10. Дата съемки

 

 

Данная информация очень полезна для новичка, т.к. посмотрев на Exif хорошей фотографии, можно узнать практически все, что нужно от марки и модели фотокамеры до ее настроек выставленных перед снимком.

 

 

 

Автор: Александр Ипполитов

 

Как использовать данные EXIF, чтобы учиться у мастеров фотографии

У цифровой фотографии есть одно скрытое преимущество, и оно называется Exif. Стоит попробовать изучить, что же это такое, и как можно им пользоваться, чтобы учиться у опытных фотографов по всему Интернету.

Exif может выступать в роли учебника, полного идей для изобретательного фотографа. Эта статья поможет вам узнать, где вы можете найти данные Exif, и как с их помощью узнать секреты мастеров фотографии.

Что такое Exif?

Exif - это аббревиатура, обозначающая Exchangeable Image File Format.

В фотографии это вид метаданных, который обычно создается, когда фотография экспонируется и записывается на диск. "Метаданные" в этом случае означают определенную информацию о снятых изображениях. Современные цифровые камеры (и камеры на мобильных телефонах тоже!) могут воспринимать любые данные при съемке. Например, они обычно включают в себя выдержку, настройки ISO и диафрагмы, а также информацию о типе используемого объектива, марке камеры, местоположении, где были сделаны снимки (геотегирование), и даже об авторе изображения.

Exif - не идеально стандартизированный формат. Изображения часто имеют пробелы, пропущенные значения для некоторых параметров, которые невозможно восстановить. Некоторые старые программы для редактирования фотографий также могут неуклюже удалять Exif-данные при сохранении, хотя почти любая такая современная программа должна считывать и сохранять Exif в изображениях.

Как прочесть Exif?

Если вы не знаете о данных Exif внутри своих изображений, вы можете быть удивлены, обнаружив, что веб-сайты, на которые вы загружаете фотографии, похоже, знают о ваших кадрах больше, чем вы сами.

Есть несколько способов получить метаданные изображения и узнать больше об изображениях на компьютере. Воспользуйтесь некоторыми программами для этого.

Adobe Bridge: Bridge - бесплатная программа с Photoshop, прекрасный ресурс для фотографов.

Adobe Lightroom: Lightroom, возможно, будет даже лучше для фотографов, чем Photoshop, и кроме всего прочего он с легкостью читает Exif.

  

Windows 7: Exif становится настолько распространенным, что операционные системы изначально могут читать эти данные. Щелкните правой кнопкой мыши на файле изображения на вашем компьютере, выберите Properties, а затем перейдите на вкладку Details для того, чтобы увидеть нужные данные Exif.

Mac OS X: Mac OS также предоставит вам некоторые из наиболее важных Exif-данных. Просто выберите изображение и нажмите Cmd + I для выполнения функции Get Info. Вы найдете Exif-данные на вкладке More Info.

  

Что можно извлечь из Exif?

Одной из интересных особенностей Exif является то, что эти данные часто сохраняются после загрузки фотографий куда-либо  и последующей повторной загрузки обратно. Попробуйте, например, загрузить какие-то интересные фотографии с Flickr, DeviantArt или профессионального фотосайта 500px, и их данные, скорее всего, останутся нетронутыми. Exif даст вам некоторое представление о том, какие настройки и оборудование использовал фотограф, чтобы снять свой конкретный кадр.

Мы можем многое почерпнуть из Exif-данных.

  • Фотограф использует камеру Canon, номер модели EOS 60D. Если вы находитесь в поисках новой камеры, проверьте Exif тех фотографов, которые вам нравятся. Если вы найдете множество импонирующих вам снимков, сделанных одной и той же маркой или моделью камеры, купите ее. Это как личная рекомендация, только лучше!
  • Эта фотография была сделана с использованием объектива 85 мм с максимальной диафрагмой f/1,75 (функционально это можно назвать f/1,8).
  • Это означает, что это своего рода средний телеобъектив (помогает размыть задний план), который пропускает немного света.
  • Быстрая выдержка была использована в сочетании с широко открытой диафрагмой для создания глубины резкости.
  • Фотографу требовался размытый задний план, поэтому широко открытая диафрагма уменьшает глубину резкости, позволяя получить хорошее размытие за объектом съемки.
  • Поскольку эта настройка диафрагмы допускает много света, быстрая скорость затвора и среднескоростная настройка ISO использовались для компенсации, обеспечивая правильную экспозицию изображения.
  • Более быстрая настройка ISO 640 также создала зернистую текстуру на изображении. Судя по текстурированному характеру изображения, это кажется преднамеренным выбором фотографа.

Очевидно, что для того, чтобы получить столько информации от Exif, нужны некоторые знания фотографии. Но если вы хотите сделать похожие снимки, вы, по сути, получаете некий пример настроек, которые вы можете использовать в реальных условиях, получая при этом художественный результат. Давайте посмотрим на еще один пример.

Вы можете узнать множество интересных деталей о снимке из его Exif, хотя иногда случаются неутешительные пробелы.

Exif не имеет информации о том, было ли изображение отредактировано после съемки, что было бы полезно знать, если вы надеялись повторить тот же эффект.

Давайте посмотрим на данные и проанализируем, что же мы можем узнать из фотографии выше.

  • Фотограф использует Nikon, снимая с D90.
  • Диафрагма - от максимального открытия f/3.8 до f/13.
  • Одна из причин заключается в том, что фотограф контролирует свет преимущественно с помощью диафрагмы, предпочитая создавать изображение с длительной экспозицией 30 секунд.
  • С экспозицией 30 секунд этот фотограф, несомненно, использовал штатив.
  • Фокусное расстояние 21 мм означает, что этот снимок был сделан с использованием широкоугольного объектива, который может захватывать более широкое и панорамное изображение.
  • Широкоугольный объектив также создает большее ощущение глубины по сравнению с обычным или телеобъективом - отдаленные объекты ощущаются еще дальше.

Хотя технически он по-прежнему считается широкоугольным объективом, фокусное расстояние для 35-мм пленки составляет фокусное расстояние 31 мм.

Большинство цифровых SLR-камер имеют формат 35 мм - это означает, что они делают снимки, похожие на обычные пленочные камеры.

Ну, как вам? Правда полезный формат?

Базовые сведения о EXIF (Exchangeable Image File Format)

EXIF (Exchangeable Image File Format) – это дополнительная текстовая информация, которая добавляется к медиафайлам.

Что касается EXIF в фотографии, то это очень удобная вещь. Фотоаппараты автоматически добавляют к каждому снимку множество данных, начиная от модели камеры и объектива, заканчивая настройками выдержки, диафрагмы. Записывается даже ориентация фотоаппарата при съемке (горизонтальная или вертикальная).

В каких случаях EXIF может быть полезен?

Напоминание о параметрах съемки

В данных EXIF записывается время съемки, дата, модель камеры и объектива, а также все настройки фотоаппарата. Эта информация очень полезна для сортировки снимков по дате или по модели камеры.

Если у вас в камере есть GPS, то к снимкам прикрепляются геоданные, которые позволят быстро разместить снимки на карте.

Есть множество различных программ, позволяющих просматривать и редактировать данные EXIF. Одна из таких программ - ShowExif .

Параметр Его значение Комментарий
Make NIKON CORPORATION  
Model NIKON D90 Камера Nikon D90
Exif Offset 348  
Exposure Time
1/4000 sec
Выдержка 1/4000 sec
FNumber F5,0 Значение диафрагмы F5,0
Exposure Program Aperture priority Режим съемки – приоритет диафрагмы
ISOSpeed Ratings 200 Значение ИСО
Exif Version «0221″  
Date Time Original 2010:08:21 07:08:11 Дата съемки
Date Time Digitized 2010:08:21 07:08:11  
Components Configuration YCbCr  
Compressed Bits Per Pixel 4/1  
Exposure Bias Value - 2 EV Поправка экспозиции
Max Aperture Value F4,3  
Metering Mode MultiSegment Метод замера экспозиции – матричный
White Balance Preset Auto Баланс Белого
Flash Off Вспышка – выключена
Focal Length 38,00 mm Фокусное расстояние 38мм
Maker Note «Nikon»  
User Comment Not possible to define  

Анализ и обучение по данным EXIF

Также данные EXIF позволяют анализировать настройки камеры, которые были использованы для съемки. Вы можете увидеть свои ошибки или наоборот, узнать из фотографий профессиональных фотографов, как они снимали. Просматривая сам снимок, можно узнать, в каких условиях выполнялась съемка, а из данных EXIF легко узнать настройки камеры.

Автоматизация обработки

Графические редакторы используют данные EXIF для правильной ориентации снимка, они узнают тип объектива. Эти данные позволяют в автоматическом режиме корректировать визуальные искажения, дисторсию и хроматические аберрации.

Заключение

EXIF - это, несомненно, отличное изобретение, которое значительно упрощает работу с цифровыми данными. Без обладания такими данными систематизация и автоматизация многих процессов была бы невозможна.

На основе материалов с сайта: radojuva.com.ua

как их посмотреть и удалить / Съёмка для начинающих / Уроки фотографии

Дата публикации: 24.03.2017

Начинающие фотографы часто интересуются, как посмотреть параметры конкретного снимка и узнать, какие камера и объектив были использованы при его съёмке. Эти и другие данные хранятся в EXIF (Exchangeable Image File Format). Он представляет собой часть JPEG или RAW-файла. Именно в него «зашиты» дополнительные данные (метаданные). EXIF позволяет сохранять много полезного: от параметров съёмки до сведений о том, в какой программе и как был отредактирован кадр.

NIKON D810 / 50.0 mm f/1.4 УСТАНОВКИ: ISO 160, F1.4, 1/400 с, 50.0 мм экв.

Параметры, которые вы видите под каждым фото на сайте Prophotos.ru, подгружаются автоматически из EXIF. Так, данные этого снимка сообщают, что он сделан на фотоаппарат Nikon D810) с универсальным объективом Nikon AF-S 50mm f/1.4G Nikkor. Кстати, последний отлично подходит для портретных съёмок.

Как посмотреть EXIF?

Сегодня многие программы для просмотра и редактирования фото могут показывать EXIF: Adobe Lightroom, Adobe Photoshop, Adobe Bridge. «Родной» для камер Nikon конвертер Capture NX-D отображает съёмочные параметры очень подробно.

EXIF в Nikon Capture NX-D

EXIF можно увидеть и открыв свойства файла: заходим в «Проводник», щёлкаем правой кнопкой по нужному фото, в открывшемся контекстном меню выбираем «Свойства», а в появившемся окне — вкладку «Подробно».

Есть сайты, позволяющие загрузить изображение и увидеть его метаданные в развёрнутом виде онлайн. Примеры таких сервисов: http://exif.regex.info/exif.cgi; http://metapicz.com/. С их помощью можно найти информацию обо всех параметрах съёмки, вплоть до того, на какую дистанцию был сфокусирован объектив.

Существует расширение для браузера Google Chrome, позволяющее просмотреть EXIF любой картинки на открытой вами веб-странице.

Через EXIF вы можете узнать, сколько снимков было сделано на камеру. К примеру, это полезно при покупке б/у фототехники. Приём работает с камерами Nikon. Камеры других производителей не всегда прописывают в EXIF этот параметр, и его приходится извлекать, прибегая к дополнительным ухищрениям.

Чтобы получить полные данные EXIF, лучше не редактировать кадр на ПК. Загрузим выбранный снимок на сайт http://exif.regex.info/exif.cgi и найдём графу Shutter Count. Здесь мы увидим «пробег» фотоаппарата.

По тому же принципу работает и более простой в использовании сервис https://www. camerashuttercount.com/.

Снимок сделан на Nikon D810 и Nikon AF-S 18-35mm f/3.5-4.5G ED Nikkor. Этот компактный, лёгкий и доступный полнокадровый объектив отлично подходит для съёмки пейзажа в путешествии.

NIKON D810 / 18.0-35.0 mm f/3.5-4.5 УСТАНОВКИ: ISO 200, F14, 1/30 с, 24.0 мм экв.

При создании HDR-изображений в Adobe Lightroom файлу с итоговой картинкой присваиваются некоторые параметры выдержки и диафрагмы, хотя понятно, что для склейки HDR было использовано как минимум два кадра с разными параметрами. Как правило, присваивается наиболее короткая выдержка.

Данные EXIF можно подделать

EXIF легко поддаётся редактированию. Существуют даже онлайн-сервисы для изменения съёмочных параметров. Поэтому данные EXIF могут выступать справочной, но не абсолютно объективной информацией.

NIKON D810 / 18.0-35.0 mm f/3.5-4.5 УСТАНОВКИ: ISO 100, F16, 1/6 с, 18.0 мм экв.

Как не потерять данные EXIF при обработке?

Иногда важно сохранить все данные о параметрах съёмки, чтобы вы и ваши зрители могли их посмотреть.

Некоторые редакторы обрезают EXIF безвозвратно (этим грешат многие мобильные приложения). Однако в серьёзных программах для постобработки можно самому выбрать, сохранять EXIF или нет. Например, в Adobe Photoshop при сохранении фото через команду Save As остаются все данные, а при сохранении через инструмент Save For Web некоторые метаданные удаляются. Чтобы этого избежать, найдите в окне Save For Web пункт Metadata и выберите, какие сведения стоит сохранить. Я обычно оставляю все метаданные.

В Adobe Lightroom похожая ситуация. При настройках экспорта фотографий обратите внимание на пункт Metadata.

Теперь вы знаете, как сохранить и удалить метаданные. Если вы боитесь, что данные EXIF снимка могут вас как-то скомпрометировать, достаточно в соответствующих пунктах меню поставить Copyright Only.

Итак, просмотр данных EXIF помогает проанализировать собственные снимки и узнать, с какими параметрами и на какую технику снимают другие фотографы. Всё это очень полезно и важно в фототворчестве!

EXIF данные фотографии.

Как посмотреть информацию о снимке

При просмотре фотографий в интернете, вы могли заметить, что некоторые сайты предоставляют ценную информацию, относящуюся к этим изображениям, такую как параметры экспозиции, бренд камеры и т.д. Эта информация, называемая “EXIF Data”, может рассказать с какими настройками фотограф снимал и какое оборудование использовал. В этой статье мы рассмотрим, что содержат EXIF данные и как их узнать.

Что такое EXIF данные фотографии

Раньше, во времена пленочной фотографии, фотографы носили с собой ручку и блокнот для записи важной информации. Записывали такие параметры как выдержка, диафрагма и дата съемки. Затем смотрели на эту информацию уже в лаборатории, при проявке фотографий, полагая, что то что они написали соответствует правильному изображению. Для новичков это был очень болезненный процесс, они пытались понять, что они сделали неправильно, почему фотография не получилась. Сейчас каждая современная камера записывает эту информацию в само изображение. Затем по этим данным можно сортировать фотографии и выполнять поиск по конкретным параметрам. Эти сохраненные данные называются EXIF данные (EXIF дата) и включают в себя ряд настроек, таких как ISO, выдержка, диафрагма, баланс белого, модель камеры и объектива, дату и время съемки, фокусное расстояние и много другое.

Слово EXIF расшифровывается как – Exchangeable Image File Format (стандарт, позволяющий добавлять к изображениям и прочим медиафайлам дополнительную информацию (метаданные), комментирующую этот файл, описывающий условия и способы его получения, авторство и т. п.). Википедия

Возможность видеть эти данные имеет большое значение не только для новичков, но и для других фотографов, которые хотят узнать, какие настройки и инструменты использовались для создания конкретной фотографии. К сожалению, единственным для веб-сайта (с точки зрения размера) форматом файла, который может обрабатывать EXIF, является JPEG, поэтому мы не сможем увидеть данные таких форматов как GIF и PNG. Кроме того, некоторые фотографы предпочитают удалять EXIF данные со своих фотографий. Тем самым они скрывают свой стиль съемки или же просто уменьшают вес изображения для сайта. Одни по не знанию оставляют эти данные, а другие намерено оставляют для других, чтобы учились.

Независимо от того оставили эту информацию или удалили с изображения, сама по себе она не отображается в браузерах. Данные EXIF встроены в файл изображения, и чтобы их увидеть нужно установить специальные расширения.

Как посмотреть EXIF данные

Итак, как посмотреть EXIF данные онлайн? Давайте рассмотрим несколько простых способов прочитать его из изображений.

Как просмотреть EXIF данные в Firefox

Если вы используете браузер Firefox, зайдите в приложение EXIF Viewer, нажав кнопку “Добавить в Firefox”. После установки аддона и перезагрузки Firefox вы сразу сможете посмотреть данные EXIF. Щелкните правой кнопкой мыши по изображению и выберите “Exif Viewer”.

Попробуйте на этом изображении:

Когда вы нажмете “Exif Viewer”, вы увидите новое окно, которое выглядит так:

Как видно из приведенного выше снимка экрана, информация EXIF показывает, что фотография снята на камеру Nikon D5500 с настройками ISO 100, диафрагма f/11 и выдержка 1/4 секунды и фокусное расстояние объектива 16мм. Также указана дата и время съемки. Если установить флажок “Все” в разделе “Информация”, можно получить еще больше параметров.

Еще одна вещь, о которой нужно помнить, – миниатюрные изображения обычно не содержат данные EXIF. Поэтому, когда видите миниатюру изображения, сразу открывайте его в полном размере и только потом проверяйте EXIF.

Если вы видите сообщение об ошибке “Невозможно извлечь данные Exif” (“Unable to extract some or all of the Exif data”), это означает, что файл JPEG, который вы ищите, не содержит информации EXIF.

Как просмотреть EXIF данные в Chrome

Если вы используете браузер Chrome, у него есть аналогичное расширение.  Загрузите и установите “EXIF Viewer“, нажав “Добавить в Chrome”. После установки вы сможете щелкнуть правой кнопкой мыши по любому изображению и выбрать “Посмотреть EXIF”. Далее появится всплывающее окно, которое выглядит так:

Как видите, этот инструмент предоставляет довольно много полезной информации, включая гистограмму. Все данные об экспозиции, дате, модели камеры находятся во вкладке “EXIF”.

Сохранение фотографий с EXIF данными в Lightroom

Теперь посмотрим как сохранять фотографии с EXIF данными в Lightroom. Выберите фотографию, которую хотите сохранить, затем перейдите “Файл – Экспорт”, в результате откроется следующее окно:

В поле “Метаданные” указывается какие данные EXIF будут сохранены вместе с изображением. Если выбрано “Все метаданные”, то экспортируется именно все данные, которые были настроены в камере. Есть две важные галочки ниже – “Удалить информацию об авторе” и “Удалить информацию о местоположении”. Для защиты вашей личной информации, лучше всегда их оставлять отмеченными. Например, если вы хотите сохранить фотографию, снятую с помощью камеры с поддержкой GPS или с помощью вашего смартфона, и у вас не установлен флажок “Удалить информацию о местоположении”, ваши данные GPS будут сохранены в EXIF, и кто-то другой сможет использовать эту информацию для отслеживания вашего местоположения.

В раскрывающемся списке, также можно выбрать тип информации, который сохраниться в EXIF. Например, некоторые фотографы предпочитают удалять все данные и оставлять только информацию об авторских правах.

Аналогично можно управлять сохранением EXIF данных в программе Photoshop.

Автор: Nasim Mansurov

Источник: photographylife.com

 

 

EXIF - это... Что такое EXIF?

EXIF (англ. Exchangeable Image File Format) — стандарт, позволяющий добавлять к изображениям и прочим медиафайлам дополнительную информацию (метаданные), комментирующую этот файл, описывающий условия и способы его получения, авторство и т. п. Получил широкое распространение в связи с появлением цифровых фотокамер. Информация, записанная в этом формате, может использоваться как пользователем, так и различными устройствами, например, принтером. Стандарт EXIF является чрезвычайно гибким (например, позволяет сохранить полученные с приёмника GPS координаты места съёмки) и допускает широкое развитие — как правило, фотоаппараты добавляют к файлу информацию, специфичную только для данной конкретной камеры. Правильно интерпретировать такую информацию могут только программы от изготовителя фотоаппарата.

Разработчик формата — Japan Electronics and Information Technology Association (JEITA). EXIF является частью более широкого стандарта DCF.

Версия Exif 2.2 (известная также как Exif Print) введена в 2002 году. Наиболее существенные дополнения касаются данных, описывающих условия съемки, нужных для корректной печати таких изображений. Эти данные могут потребоваться, например, при печати ночных снимков, для которых обилие темноты не является ошибкой фотографа, автоматика принтера должна пытаться «спасать» такие снимки.[1] Последняя версия — 2.3.[2]

Большинство современных цифровых фотокамер записывает параметры съёмки в файлы изображений. Также при обработке изображений в EXIF может записываться дополнительная информация.

В качестве примера информации, записываемой в EXIF, можно указать следующее:

  • производитель камеры,
  • модель,
  • информация о правообладании,
  • выдержка,
  • диафрагма,
  • ISO,
  • использование вспышки,
  • разрешение кадра,
  • фокусное расстояние,
  • размер матрицы,
  • эквивалентное фокусное расстояние,
  • дата и время съёмки,
  • ориентация камеры (вертикально/горизонтально) для камер со встроенным акселерометром,
  • тип баланса белого,
  • географические координаты и адрес места съёмки.

Прочитать/обработать эти параметры можно в программах просмотра изображений (фотоорганайзерах), графических программах и специальных программах для работы с метаданными.

Хранение данных в EXIF

Достоинства EXIF

Недостатки EXIF

Программы, поддерживающие EXIF

В настоящее время EXIF повсеместно, в большей или меньшей степени, поддерживается программами просмотра изображений и даже штатными средствами операционных систем. Степень поддержки может быть разная, возможно искажение или даже полное удаление данных EXIF из-за неполной поддержки формата.

Microsoft Windows

  • Adobe Photoshop (версия 8.0 и выше) — популярный графический растровый редактор.
  • Windows Explorer (Проводник Windows) — встроенная многоцелевая оболочка.
  • FastStone Image Viewer — программа для просмотра изображений.
  • ACDSee — комплекс из просмотрщика, каталогизатора и редактора изображений.
  • IrfanView - программа для просмотра мультимедиа-файлов различных форматов.

Mac OS X

UNIX и GNU/Linux

В *NIX-подобных, а также в GNU/Linux для чтения/изменения exif-информации, ввиду пакетной архитектуры этих операционных систем, используется отдельный пакет, носящий название libexif. Ниже перечислены программы (пакеты) использующие в качестве зависимого, пакет libexif:

Версии

  • Exif 2.1 — анонс 12.06.1998
  • Exif 2.2[3]
  • Exif 2.3

См. также

Примечания

Ссылки

Что может рассказать EXIF в фотографиях, которые вы загрузили в Сеть

Старомодный обычай подписывать фотографии в бумажных альбомах претерпел разительную перемену. В наше время уже не требуется снабжать снимок комментарием самостоятельно — за вас это сделают камера (особенно смартфона или планшета), приложение, в котором вы его обрабатывали, а вдобавок еще и интернет-сервис, на который вы свое фото загрузили.

Такая подпись в своем роде не менее информативна, чем «Новый год у бабушки, 2016». Кроме всяких скучных технических параметров кадра вроде фокусного расстояния и режима вспышки в файл могут записываться модель и серийный номер камеры, дата съемки и, что важно, географические координаты места, в котором сделана фотография. Вдобавок сервис, на который вы загружаете фото, запомнит и ваш IP-адрес.

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

Поиск метаданных в файлах фотографий — одно из звеньев доксинга (англ. «doxing», от «docs»), ставшей уже весьма популярной практики сбора сведений об интересующем человеке в интернет-источниках в тех или иных целях.

Один из главных «коллекционеров» метаданных — блок EXIF, добавляемый к графическим файлам. Стандарт Exchangeable Image File Format разработан Японской ассоциацией электронной и ИТ-индустрии JEITA, его первая версия была опубликована в 1995 году. EXIF предназначен для графических форматов JPEG и TIFF. Файлы других популярных форматов, таких как PNG и GIF, тоже могут содержать подобные метаданные — в частности, по стандарту XMP, разработанному Adobe. Кроме того, производители камер используют собственные форматы метаданных, отчасти дублирующие EXIF.

«Забытые» в файлах с фотографиями метаданные не раз выходили боком авторам или действующим лицам снимков. Один из самых ярких примеров — арест Джона Макафи в Гватемале в 2012 году. Скрываясь от следствия по делу об убийстве его соседа, Макафи дал интервью изданию Vice, проиллюстрированное фотографией. Метаданные этого снимка и «сдали» Джона Макафи: геометка, обнаружившаяся в файле снимка, помогла правоохранителям найти и схватить беглеца.

http://t.co/j4KgXpyE рассекретил местоположение Джона Макафи через метаданные EXIF http://t.co/DV6tS0Ie

— Хабрахабр (@habrahabr) December 4, 2012

Давайте же разберемся, как обращаются с метаданными в файлах изображений современное программное обеспечение для обработки фотографий и различные сетевые сервисы: стирают ли они потенциально опасные метки или оставляют их в файле?

Эксперименты

Для начала поразмыслим, какие вообще возможны сценарии приключений фотографии в Сети и на каких этапах может возникнуть угроза приватности:

  1. Вы отправляете фотографии по электронной почте или загружаете в облачное хранилище вроде Google Drive или Dropbox. В этом случае файл остается в неизменном виде, и пользователи, с которыми вы этими файлами поделитесь, при желании все метаданные увидят.
  2. Вы загружаете фотографии в соцсети и фотохостинги. В этом случае вероятно выполнение условий, создающих угрозу приватности: а) вы вообще не знаете про метаданные файлов; б) вы тем более не знаете, что ваш сервис их не удаляет.
  3. Вы фотографируете старинную вазу или слегка подержанный велосипед и выставляете объявление о продаже на сайте онлайн-барахолки. Дальше все как в пункте 2. 
В одном из интернет-обсуждений метаданных EXIF упомянута история в духе «у меня от этого друг умер». То есть друг, конечно, жив, но, если верить рассказчику, хороший велосипед у друга все же украли — вскоре после размещения в Интернете объявления о его продаже.

Ну что ж, самое время перейти к экспериментам — проверить популярные интернет-сервисы на предмет того, что они делают с EXIF. Для этого мы использовали плагин для браузера Firefox — Exif Viewer 2.00. Плагин показывает метаданные изображений на веб-страницах и локальном компьютере, интегрирован с картографическими сервисами для отображения места съемки и показывает встроенные миниатюры.

Кстати, можете самостоятельно поэкспериментировать с теми сервисами, до которых у нас не добрались руки, — это чрезвычайно просто и довольно увлекательно.

Недлинный путь от фото в Интернете к месту в реальном мире

Вот что показала наша инспекция:

  • Facebook, Twitter, «ВКонтакте» — метаданные из фотографий удаляют;
  • Google+ — не удаляет;
  • Instagram — удаляет;
  • Flickr, Google Photo, Tumblr — не удаляют;
  • eBay, Craigslist — удаляют;
  • ЦИАН — не удаляет.

Кстати, с помощью геометок на ЦИАН можно вычислять нечестных риелторов, размещающих в объявлении фотографии других квартир (конечно, если они не удалили EXIF самостоятельно)

Сервисы из тех, что не удаляют метаданные, имеют, как правило, настройку конфиденциальности, позволяющую отключить их отображение. Но именно отображение: сервис все равно может эти данные сохранить отдельно. И эта тема заслуживает отдельного обсуждения.

Так и запишем

Например, именно так поступает Facebook. Убедиться в этом весьма просто — достаточно воспользоваться штатной функцией загрузки копии своих данных. Пройдя несложную процедуру, вы получаете архив, содержащий помимо прочего загруженные в соцсеть фотографии вместе с аннотацией в виде HTML-файла. В эту аннотацию входят и координаты места съемки, и IP-адрес, с которого фотографии отправлялись.

Так выглядят метаданные фотографий в архиве пользовательских данных Facebook

Список хранимых Facebook пользовательских данных есть в справочной системе соцсети.

Взглянуть на взаимодействие правоохранительных органов и соцсети с непривычной стороны позволяет появившаяся в Сети инструкция, в которой описывается процедура запроса у Facebook данных пользователей. В качестве автора документа, опубликованного на сайте netzpolitik.org, указан сотрудник Департамента шерифа Сакраменто. Это уже вторая версия руководства: обновление потребовалось из-за модификации механизма архивирования пользовательских данных, произведенной Facebook, отмечается в самом документе.

Подробности взаимодействия госорганов и онлайн-сервисов в части персональных данных выходят за рамки этой заметки. Наше же дело — просто предупредить вас о том, что соцсети сохраняют значительно больше данных о фотографиях, чем может показаться, — и в определенных обстоятельствах могут ими поделиться с другими людьми.

За кадром — самое интересное

Кстати, в метаданных хранится не только текстовая информация, но и миниатюра той картинки, в которой они содержатся. И иногда проблемы могут возникать с ними.

Знакомясь с историей EXIF, мы натолкнулись на один примечательный случай. В 2003 году американская телеведущая Кэтрин Шварц (Catherine Schwartz) разместила в блоге свои безобидные, казалось бы, фотографии. Однако в метаданных этих файлов хранились миниатюры оригинальных снимков, показывающие полное изображение до процедуры кадрирования. И да, на двух из них Шварц предстала в обнаженном виде.

Но ведь с тех пор прошло больше десяти лет, разработчики наверняка уже совладали с очевидной угрозой приватности, так ведь? Что ж, невредно будет проверить — просто на всякий случай.

Испытав Adobe Photoshop Express, GIMP, Windows Paint, Microsoft Office Picture Manager, IrfanView и XnView, мы удостоверились: при редактировании изображения миниатюра обновляется.

Еще одним подопытным стал редактор Corel PHOTO-PAINT последней версии X8. Внезапно выяснилось: при сохранении JPG-файла миниатюра не обновляется, показывая хоть и в уменьшенном виде, но исходное изображение!

Есть в PHOTO-PAINT функция подготовки изображения для публикации в Сети (Export For Web). Возможно, хотя бы эта операция подчистит метаданные, подумали мы, — но нет.

В общем, опыт Кэтрин Шварц может быть воспроизведен и в наше время. Для справки: Corel PHOTO-PAINT позиционируется как «передовой фоторедактор» и «профессиональное приложение».

Чтобы исключить возможность ошибки в самом файле, из-за которой редактор не может обновить миниатюру, мы повторили опыт среди прочего на файлах с зеркальной камеры, смартфона и образцовом графическом файле с пингвинами из Windows 7.

Слева — значок файла, который «Проводник» Windows берет из метаданных, справа — предпросмотр файла. Файл свежесозданный, так что дело отнюдь не в кешировании иконок операционной системой, да и Exif Viewer подтвердил подозрения

Цитата в тему http://bash.im/quote/397770

Рекомендации

Чтобы не «засветить» вместе с фотографиями что-то лишнее, не предназначенное для чужих глаз, предлагаем подборку самоочевидных, в общем-то, советов.

  1. Отключайте сохранение местоположения на устройстве (только для камеры или для всех приложений сразу).
  2. Удаляйте метаданные из файлов перед публикацией в Сети. Например, это умеет делать бесплатный для личного некоммерческого использования XnView. А вот встроенный в Windows механизм «Удаление свойств и личной информации» (вызывается в окне свойств файла на вкладке «Подробно») на поверку оставляет и миниатюру, и блоки EXIF.
  3. Удалять метаданные фотографий перед отправкой в Сеть можно и прямо на мобильном устройстве. Вот, например, приложения для iOS, Android и Windows Phone.
  4. В настройках приватности сетевых сервисов запретите им сохранять метаданные фотографий.

Самый хардкор для тех, кому действительно есть что терять: вовсе не отправляйте в Сеть фотографии и данные, которые могут пригодиться вашим недоброжелателям. То есть не публикуйте вообще ничего такого, что в определенных обстоятельствах может быть использовано против вас.

Что такое данные EXIF ​​и как их удалить из ваших фотографий

При просмотре изображений в Интернете вы могли заметить, что некоторые веб-сайты предоставляют ценную информацию, связанную с этими изображениями, такую ​​как настройки экспозиции, марка камеры и т. Д. информация, известная как «данные EXIF», может быть важным источником знаний при выяснении того, как фотографы снимают изображения и какие инструменты они используют в этом процессе. В этой статье мы рассмотрим, что такое данные EXIF ​​и как их можно извлечь из изображений.

Что такое данные EXIF?

Exchangeable Image File Format (EXIF) - это стандарт, который определяет конкретную информацию, относящуюся к изображению или другому носителю, захваченному цифровой камерой. Он способен хранить такие важные данные, как экспозиция камеры, дата / время съемки изображения и даже местоположение по GPS.

Еще в первые дни кино фотографы были вынуждены носить с собой ручку и блокнот для записи важной информации, такой как выдержка, диафрагма и дата. Затем они будут использовать эту информацию в лаборатории, просматривая одно изображение за раз, надеясь, что то, что они написали, действительно соответствует правильному изображению.Это был очень болезненный процесс, особенно для новичков, которые хотели понять, что они сделали не так, когда изображение получилось неправильным.

В настоящее время каждая современная цифровая камера имеет возможность записывать эту информацию, наряду со многими другими настройками камеры и другими соответствующими данными, прямо в фотографии. Эти настройки впоследствии можно использовать для систематизации фотографий, выполнения поиска и предоставления фотографам жизненно важной информации о том, как была сделана конкретная фотография.Такие сохраненные данные называются «данными EXIF» и состоят из ряда настроек, таких как чувствительность ISO, выдержка, диафрагма, баланс белого, модель и производитель камеры, дата и время, используемый объектив, фокусное расстояние и многое другое. .

Возможность чтения таких данных может иметь большое значение не только для новичков, но и для других фотографов, которые хотят узнать, какие настройки и инструменты использовались для создания той или иной фотографии. К сожалению, единственный удобный для Интернета (с точки зрения размера) формат файла, который может обрабатывать EXIF, - это JPEG, что означает, что вы часто не можете читать данные из других форматов изображений, таких как GIF и PNG.

Кроме того, некоторые фотографы предпочитают удалять данные EXIF ​​из своих изображений, чтобы защитить свою работу и свой стиль, в то время как другие делают это для экономии трафика веб-сайта (да, EXIF ​​действительно увеличивает размер файла). Те, кто оставляют эти данные в своих изображениях, либо даже не подозревают, что они у них есть, либо намеренно оставляют их, как я, - чтобы другие могли их увидеть и, возможно, поучиться.

Хотя многие фотографы предпочитают сохранять данные EXIF ​​в своих изображениях, эта информация не отображается при просмотре фотографий через веб-браузеры, поскольку не является частью фактического изображения.Вместо этого данные EXIF ​​встроены в физический файл, и для ее просмотра необходимо использовать специальные инструменты, способные читать эту информацию. Например, некоторые средства просмотра изображений и инструменты постобработки, такие как Lightroom, способны просматривать и извлекать такую ​​информацию для правильной организации изображений, в то время как некоторые операционные системы способны читать и отображать эти данные.

Подробнее о формате файлов изображений для обмена можно узнать здесь.

Как просмотреть данные EXIF ​​

Итак, как просмотреть эти данные EXIF ​​в Интернете? Давайте рассмотрим несколько простых способов прочитать его по изображениям.

Как просматривать данные EXIF ​​в Firefox

Если вы используете браузер Firefox, загрузите надстройку Exif Viewer, нажав кнопку «Добавить в Firefox». После установки надстройки и перезапуска Firefox вы сможете мгновенно просмотреть данные EXIF, просто щелкнув изображение правой кнопкой мыши и выбрав «Exif Viewer».

Попробуйте это на этом изображении:

После того, как вы нажмете «Exif Viewer», вы должны увидеть новое окно, которое выглядит следующим образом:

Как вы можете видеть на скриншоте выше, информация EXIF ​​указывает, что я использовал Nikon D5500 с установкой ISO 100, диафрагмой f / 11 и выдержкой 1/4 секунды, чтобы сфотографировать это изображение.Я использовал широкоугольный объектив для этого снимка, и данные EXIF ​​показывают, что на момент съемки он был установлен на 16 мм. Исходное поле даты / времени указывает на 2016-04-19, хотя время на моей камере было установлено неправильно (вероятно, забыли отрегулировать его после поездки). Есть еще несколько фрагментов информации, которые могут быть полезны, особенно если вы установите флажок «Все» в разделе «Информация».

Однако следует помнить об одном: эскизы изображений обычно не содержат данных EXIF. Таким образом, всякий раз, когда вы видите интерактивную миниатюру, не выбирайте «Exif Data», а лучше откройте изображение полностью, а затем используйте инструмент для полноразмерного изображения.

Если вы видите сообщение об ошибке «Не удалось извлечь некоторые или все данные Exif», это означает, что просматриваемый файл JPEG не содержит информации EXIF.

Как просматривать данные EXIF ​​в Chrome

Если вы предпочитаете использовать браузер Chrome, у него также есть аналогичное расширение, которое позволяет просматривать данные EXIF. Загрузите и установите «EXIF Viewer», нажав «Добавить в Chrome». После установки вы сможете щелкнуть правой кнопкой мыши любое изображение и выбрать «Показать данные EXIF», после чего появится всплывающее окно, которое выглядит следующим образом:

Как видите, этот инструмент предоставляет довольно много полезной информации, включая гистограмму.Вся стандартная экспозиция, камера, дата и другая информация представлена ​​в разделе «EXIF» расширения.

Как просматривать данные EXIF ​​в ОС и с помощью средства просмотра фотографий

Если по какой-либо причине вы не хотите устанавливать надстройку браузера или, возможно, вы хотите иметь возможность просматривать эти данные на существующих изображениях на вашем компьютере, вы также можете использовать отдельное приложение для просмотра фотографий или встроенные возможности вашей операционной системы. Этот метод может быть немного медленнее, чем два выше, для просмотра изображений в Интернете, потому что вам нужно сначала загрузить изображения, а затем использовать программу просмотра фотографий или вашу ОС для просмотра данных EXIF.Однако, если изображения уже есть на вашем компьютере, специальное приложение для просмотра фотографий или инструменты вашей ОС, вероятно, будут лучшим вариантом.

Давайте сначала посмотрим, как вы можете использовать свою операционную систему для просмотра данных EXIF. Если вы используете ОС Windows, просто щелкните изображение правой кнопкой мыши и выберите вкладку «Подробности», чтобы отобразить некоторую информацию, как вы можете видеть ниже:

Однако имейте в виду, что это довольно ограниченная информация - если вы хотите больше подробности, например, какой объектив использовался при захвате изображения, вы не сможете найти такие детали на этой вкладке.Чтобы получить эту информацию, вам нужно будет использовать программу просмотра фотографий.

Теперь, если вам интересно, какую программу просмотра фотографий использовать, их слишком много, чтобы перечислить, и все это вопрос личных предпочтений. Лично я использую ACDSee в течение многих лет и считаю его отличным инструментом для просмотра данных EXIF. Взгляните на приведенный ниже снимок экрана, который показывает данные EXIF ​​для того же изображения выше:

Наконец, если вы не хотите иметь дело с какими-либо надстройками или программным обеспечением для установки на свой компьютер, вы можете проверить онлайн-средства просмотра данных EXIF.Программа просмотра метаданных изображений Джеффри вместе с MetaPicz предоставляют возможность просматривать данные EXIF, сначала загружая в них изображения.

Как извлекать изображения с данными EXIF ​​в Lightroom

Теперь, когда вы знаете, как просматривать данные EXIF ​​в изображениях с помощью различных инструментов, давайте посмотрим, как можно извлекать фотографии с сохраненными в них данными EXIF. Я пройду через процесс экспорта в Lightroom, но если вы используете какой-либо другой инструмент постобработки, он также сможет справиться с этим процессом.Выберите фотографию, которую хотите экспортировать, затем перейдите к экрану «Экспорт» («Файл» -> «Экспорт»), в котором появится такое окно:

Здесь есть поле «Метаданные», которое описывает данные EXIF, которые будут быть извлеченным с изображением. Если выбрано «Все метаданные», все данные EXIF ​​будут встроены в результирующее изображение JPEG. Есть два важных флажка, на которые вы, возможно, захотите обратить внимание. Первый - «Удалить информацию о человеке», а второй - «Удалить информацию о местоположении».Если вы хотите защитить свою конфиденциальность и убедиться, что ваша личная информация и местоположение по GPS не извлекаются, всегда проверяйте оба эти флажка, что я рекомендую сделать.

Например, если вы извлекаете изображение, которое вы сняли с помощью камеры с поддержкой GPS или смартфона, и у вас не отмечено поле «Удалить информацию о местоположении», ваши данные GPS будут сохранены как часть ваших данных EXIF, а кто-то else может использовать эту информацию для отслеживания вашего местоположения .

Если вы хотите избирательно выбирать тип информации, которую хотите извлечь из Lightroom, вы можете щелкнуть раскрывающийся список «Включить» и выбрать другой параметр.Например, некоторые фотографы могут захотеть удалить все данные EXIF, но сохранить только информацию об авторских правах. Вы можете добиться этого, выбрав «Только авторские права» в раскрывающемся поле.

Если вы уже извлекли изображения и хотите удалить из них данные EXIF, или ваш инструмент пост-обработки не имеет возможности удалить данные EXIF, возможно, вы захотите ознакомиться со следующим разделом этой статьи.

Как удалить данные EXIF ​​

При отправке изображений или их экспорте из программного обеспечения пост-обработки вы можете включить в эти изображения конфиденциальные данные, такие как ваше местоположение по GPS.Это потому, что большинство современных фотоаппаратов по умолчанию автоматически встраивают эту информацию в фотографии. В этом разделе мы рассмотрим процесс удаления данных EXIF ​​с ваших фотографий с помощью различных инструментов.

Зачем удалять данные EXIF?

Есть несколько причин, по которым вы можете захотеть удалить EXIF ​​полностью или частично из файлов:

  • Для удаления конфиденциальных данных, таких как ваша личная информация и местоположение GPS
  • Для публикации изображений на сайте с низкой пропускной способностью и сохранения их небольших размеров
  • Для защиты вашей работы и сокрытия информации, раскрывающей оборудование камеры, настройки и даже настройки постобработки.
  • Для удаления ненужного мусора из файлов JPEG, чтобы уменьшить их размер, но при этом сохранить важные данные EXIF, такие как экспозиция камеры и используемое оборудование.

Я лично использую последнюю причину, чтобы уменьшить размер моих файлов и убедиться, что ненужный мусор не попадает в мои файлы JPEG. Однако во многих случаях вам может потребоваться удалить конфиденциальные данные, такие как ваше местоположение по GPS, из каждого изображения, которое вы планируете отправить или загрузить в Интернет.

Какие данные EXIF ​​сохраняются в изображениях

Позвольте мне сначала объяснить, какие данные EXIF ​​записываются в файл. Если вы используете продукты Adobe, такие как Photoshop или Lightroom, для управления изображениями, данные EXIF ​​обычно состоят из трех частей: обычные данные EXIF, содержащие настройки вашей камеры, данные XMP, содержащие шаги постобработки, которые вы предприняли до экспорта изображения, и эскиз изображения.Вот краткий отрывок из связанной статьи в Википедии:

XMP также определяет определенные схемы для основных свойств, полезных для записи истории ресурса, когда он проходит через несколько этапов обработки, от фотографирования, сканирования или создания текста до шаги редактирования фотографий (например, обрезка или корректировка цвета) для сборки в окончательное изображение. XMP позволяет каждой программе или устройству по пути добавлять свою собственную информацию к цифровому ресурсу, которая затем может быть сохранена в окончательном цифровом файле.

Это хорошо или плохо? Хранение данных XMP в ваших исходных изображениях, безусловно, имеет свои преимущества, особенно в случае потери каталога изображений. Поскольку все ваши настройки постобработки хранятся в виде данных XMP либо непосредственно в файле (JPEG, TIFF и DNG), либо в отдельном сопроводительном файле XMP (RAW), вы можете легко восстановить свой каталог изображений без потери ваших правок.

Однако зачем вам хранить все это в экспортированных изображениях? Давайте посмотрим на образец изображения, которое содержит данные XMP:

Я открыл изображение с помощью текстового редактора ASCII и посмотрел, что находится в этом файле - это вдобавок к данным EXIF, которые уже хранятся в заголовке файла.Прокручивая вниз, я мог видеть все, от баланса белого до настроек насыщенности и оттенка, которые я использовал в Lightroom перед экспортом изображения. Хуже всего то, что файл даже включал ВСЮ историю изображений, включая то, что я делал в Photoshop, и сколько раз изображение сохранялось!

Взгляните на желтую область, выделенную на этом снимке экрана:

Я применил кривую тона к своему изображению, и, как вы можете видеть, история здесь. Представьте, насколько большими могут вырасти ваши файлы, если вы поработаете над ними несколько раз! Кроме того, зачем вам сохранять миниатюру изображения (сохраненного внутри изображения), которое экспортируется для Интернета?

Теперь поговорим о том, как полностью или частично удалить данные EXIF ​​и XMP из изображения.Есть несколько способов удалить данные EXIF ​​и XMP из файлов JPEG - вы можете либо удалить их полностью, либо выбрать, что оставить, при удалении конкретно того, что вы хотите.

Как полностью удалить данные EXIF ​​

Самый простой способ удалить данные EXIF ​​и XMP из изображения без использования стороннего программного обеспечения - это сделать это либо в Photoshop, либо в Lightroom. В Photoshop просто перейдите в Файл -> Экспорт -> Сохранить для Интернета и убедитесь, что для параметра «Метаданные» установлено значение «Нет»:

После сохранения файла все данные EXIF ​​и XMP будут полностью удалены!

Вы можете добиться аналогичного результата в Lightroom, выбрав «Только авторские права» в раскрывающемся поле «Включить» в разделе «Метаданные», что приведет к удалению данных EXIF ​​из изображения, за исключением информации об авторских правах:

Однако, это только делает то, что он говорит - он не удаляет полностью все метаданные.Хотя такие вещи, как информация о вашей камере, настройки экспозиции и данные XMP, исчезнут, информация об авторских правах вместе со встроенным миниатюром изображения будет сохранена. К сожалению, Lightroom не дает возможности удалить все метаданные из файлов, поэтому вам придется использовать другие инструменты для этого.

Хотя есть некоторые веб-сайты, которые позволяют загружать изображения и удалять из них метаданные, я лично использую ExifTool Фила Харви для выполнения этой работы, потому что это быстро, и я могу обрабатывать много изображений одновременно.Загрузите исполняемый файл, затем используйте следующую командную строку:

  exiftool -all = SourceFile.jpg  

Очевидно, замените SourceFile.jpg именем файла JPEG, из которого вы хотите удалить данные EXIF. В результате все метаданные, включая миниатюру изображения, будут удалены из файла. Если вы хотите удалить данные EXIF ​​из всех изображений в одной папке, укажите «*» (без кавычек) вместо имени файла, и он будет проходить через каждое изображение.

Как выборочно удалить данные EXIF ​​

Эта часть предназначена для таких, как я, которые любят хранить важные данные EXIF ​​в своих изображениях, но хотят избавиться от всего остального мусора, такого как данные XMP и эскизы изображений из своих изображений.Это можно сделать двумя способами - напрямую из Lightroom или из командной строки. Мне лично нравится делать это прямо из Lightroom, потому что это экономит мне много времени. Если у вас уже есть несколько экспортированных файлов, может быть проще просто запустить инструмент из командной строки.

Сначала загрузите ExifTool, если вы еще этого не сделали.

Инструкции для ОС Windows

Если вы используете ОС Windows, создайте папку под названием «ExifTool» в корневой папке и поместите исполняемый файл «exiftool (-k).% *

Теперь сохраните файл как «RemoveJunkEXIF.bat» в той же папке, где вы сохранили исполняемый файл ExifTool. Теперь у вас должно быть два файла в этой папке.

Итак, что делает вышеуказанный командный файл? Он в основном вызывает ExifTool, удаляет все данные XMP, ключевые слова IPTC и миниатюры изображений из вашего файла, сохраняя при этом остальные данные EXIF ​​нетронутыми. Параметр «-overwrite_original» заставляет инструмент перезаписывать файл, а не создавать отдельный файл и переименовывать оригинал.

После сохранения файла перейдите в Lightroom и откройте диалоговое окно экспорта. В самом низу страницы разверните «Постобработка», затем выберите «Открыть в другом приложении…» в раскрывающемся списке «После экспорта». Затем нажмите кнопку «Выбрать…», перейдите в папку «C: \ ExifTool» и дважды щелкните файл RemoveJunkEXIF.bat. Экран экспорта должен выглядеть следующим образом:

Теперь нажмите «Экспорт» и убедитесь, что вы не получаете никаких ошибок. Если экспорт прошел успешно и вы не получили никаких ошибок, все готово! В следующий раз, когда вы экспортируете свои изображения, этот параметр будет сохранен, и ваши данные EXIF ​​будут автоматически удалены из ваших файлов.

Инструкции для macOS

Если вы используете macOS, загрузите пакет macOS и установите его. Поскольку приложение поставляется неутвержденной третьей стороной, вам нужно будет перейти в «Настройки» -> «Безопасность и конфиденциальность» и вручную утвердить установку в нижней части вкладки «Общие». После установки ExifTool будет находиться в папке / usr / local / bin.

Следующим шагом является создание исполняемого сценария оболочки, который может вызывать Lightroom. Запустите TextEdit, затем скопируйте и вставьте следующий код в файл:

  #! / Bin / sh
/ usr / локальный / bin / exiftool -overwrite_original \
-XMP: Все = \
-IPTC: Keywords = \
-ThumbnailImage = "$ 1"  

Сохраните файл как «RemoveJunkEXIF.sh »на рабочем столе или в папке по вашему выбору. Следующий шаг - сделать этот файл исполняемым. Запустите Терминал, затем введите следующую команду:

  sudo chmod + x /Users/YourName/Desktop/RemoveJunkEXIF.sh  

Сценарий оболочки готов к работе. Прежде чем мы перейдем к выбору сценария оболочки в Lightroom, сначала экспортируйте изображение JPEG из Lightroom. Мы будем использовать этот файл для сравнения с файлом, который был очищен ExifTool позже.

Теперь все, что вам нужно сделать, это открыть экран экспорта Lightroom, выбрать «Открыть в другом приложении…» в разделе «Постобработка», затем нажать «Выбрать» и выбрать RemoveJunkEXIF.sh сценарий оболочки, как показано ниже:

Экспортируйте другое изображение, но убедитесь, что вы создали уникальное имя файла, чтобы оно не перезаписывало предыдущее изображение. Теперь используйте Finder, чтобы сравнить разницу в размерах между двумя изображениями - второе изображение должно быть меньше. Если это так, то все готово! Если размеры файлов идентичны, проблема связана либо с установкой ExifTool, либо со сценарием оболочки.

Удаление данных EXIF ​​из пакета изображений JPEG

Если у вас есть набор изображений, из которых необходимо удалить данные EXIF, я рекомендую запускать ExifTool непосредственно из командной строки.Просто скопируйте все файлы изображений в папку типа «C: \ ExifTool», затем откройте командную строку и выполните следующие действия:

  cd «C: \ ExifTool»
RemoveJunkEXIF.bat * .jpg  

В macOS вы бы сделали нечто подобное, используя Терминал:

  cd / Users / YourName / Desktop
sh RemoveJunkEXIF.sh * .jpg  

Очевидно, что если вы поместили ExifTool в другую папку, просто измените путь к папке выше, и все должно работать отлично!

Что такое данные EXIF ​​- как их найти, использовать или удалить

Каждая цифровая фотография содержит данные о ней, включенные в файл изображения.Это то, что мы называем данными EXIF.

Эта информация может показать вам настройки камеры, которые вы использовали для съемки определенного снимка. Знание того, как его найти, может помочь вам увидеть, как эти настройки повлияли на изображение, и улучшить свои навыки.

© Кевин Ландвер-Йохан

Что такое данные EXIF?

EXIF ​​расшифровывается как Exchangeable Image File Format. Эти данные находятся в каждом файле изображения, записываемом камерой.

Некоторые из этих сведений будут для вас более полезны, чем другие.

Включает такие настройки, как:

  • выдержка,
  • максимальная диафрагма,
  • ISO,
  • Баланс белого
  • ,
  • модель и марка фотоаппарата,
  • режим вспышки,
  • режим дозирования,
  • фокусное расстояние
  • и многое другое.
© Кевин Ландвер-Йохан

Помимо всей информации о самой фотографии, также записываются другие метаданные. Эти данные могут включать информацию об оборудовании, серийные номера и информацию об авторских правах.

Вы можете изменять данные EXIF ​​с помощью специального программного обеспечения для просмотра данных EXIF.

Понимание и использование данных EXIF ​​

Если вы сделали снимок, и он расплывчатый, знание того, как просматривать данные EXIF, может помочь вам понять, почему. Данные EXIF ​​включают настройки камеры, такие как диафрагма и выдержка.

© Кевин Ландвер-Йохан

Данные EXIF ​​для этой фотографии показывают мне причину размытия людей на заднем плане в том, что моя выдержка была полсекунды. На этой фотографии люди размыты намеренно.

Но когда у вас есть нерезкая фотография, информация EXIF ​​может показать вам, какая у вас была выдержка. Когда вы видите, что скорость затвора слишком мала, вы понимаете, что движение объекта или камеры может быть причиной размытия.

© Кевин Ландвер-Йохан

Данные EXIF ​​показывают диафрагму, использованную для фотографии.Эта информация поможет вам лучше понять глубину резкости.

Если вы видите, что фотография была сделана с диафрагмой f / 2,8 или f / 16, вы можете увидеть, как это связано с тем, какая часть фотографии находится в фокусе.

© Кевин Ландвер-Йохан

Детали ISO также видны в данных EXIF. Это полезно, если вы настроили ISO на автоматический режим и, возможно, не знали о настройках, выбранных камерой.

Если у вас есть фотография с большим количеством цифрового шума, проверьте, насколько высоким было значение ISO.

Как просмотреть данные EXIF ​​

Вы можете просматривать данные EXIF ​​несколькими способами. Данные EXIF ​​для фотографии можно увидеть сразу после ее съемки. Информацию можно увидеть на мониторе вашей камеры. На большинстве камер это легко увидеть, прокручивая настройки информации, пока не найдете ее.

Обратитесь к руководству по эксплуатации камеры или выполните поиск в Интернете, чтобы узнать, как просматривать данные EXIF ​​на вашей модели камеры.

Доступны специальные программы просмотра данных EXIF.Программное обеспечение для обработки изображений всегда позволяет просматривать данные EXIF. Вы также можете просматривать данные EXIF ​​прямо из файловой системы вашего компьютера.

На ПК с Windows с помощью проводника щелкните правой кнопкой мыши файл, данные для которого нужно просмотреть. Вы увидите всплывающее окно с различными опциями. Щелкните "Свойства", а затем "Подробности". Это приведет к появлению данных EXIF ​​для этой фотографии.

На компьютере Mac откройте изображение в режиме предварительного просмотра. Теперь нажмите Инструменты> Показать инспектор, а затем перейдите на вкладку EXIF.

© Кевин Ландвер-Йохан

Сравните данные EXIF ​​между фотографиями, чтобы помочь вам узнать

Вы можете получить представление, сравнивая сделанные вами фотографии. Просмотр данных EXIF ​​об объективах, используемых для изображения, может помочь вам понять, когда лучше использовать такое же фокусное расстояние.

Сравните настройки диафрагмы и их вид на двух разных объективах. Это поможет вам понять глубину резкости и способ появления боке.

Интересно сравнить, как выглядит одна и та же настройка с двумя разными фокусными расстояниями.Вы можете поэкспериментировать, сделав серию фотографий с разным фокусным расстоянием и изучить результаты. Это даст вам представление о том, как выглядит каждая фотография в зависимости от того, какое фокусное расстояние вы использовали для ее создания.

Я часто рекомендую фотографам с новыми камерами провести тест, чтобы выяснить, насколько высоко они могут установить свой ISO. Создание серии фотографий одного и того же объекта с разными настройками ISO поможет вам увидеть, когда на ваших снимках слишком много цифрового шума.

Просмотр данных EXIF ​​для каждой фотографии покажет вам используемую настройку ISO.Таким образом, вы можете установить предел максимальной чувствительности ISO, которую вам удобно использовать. Без знания того, как просматривать данные EXIF, это упражнение было бы сложнее.

Как удалить данные EXIF ​​с фотографий?

Многие камеры и устройства позволяют изменять настройки, чтобы не записывать какие-либо данные EXIF ​​или ограничивать то, что записывается. Вы также можете удалить данные EXIF ​​из изображений после их загрузки на свой компьютер.

Большинство программ обработки изображений позволяют изменять или удалять данные EXIF ​​при сохранении или экспорте фотографии.Эта опция часто появляется в диалоговом окне «Сохранить» или «Экспорт».

Найдите конкретную информацию в Интернете, чтобы показать вам, как это сделать в используемом вами программном обеспечении.

Чтобы удалить данные EXIF ​​с фотографии на ПК, щелкните изображение правой кнопкой мыши и выберите «Свойства»> «Сведения». Внизу окна вы увидите опцию «Удалить свойства и личную информацию».

Вы можете сделать копию фотографии с удаленной информацией. Другой вариант - удалить данные из оригинала.Нажмите «ОК», чтобы подтвердить, какой вариант вы решите использовать.

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

Заключение

Знание того, как просматривать данные EXIF, может помочь вам многое узнать о снимаемых вами фотографиях. По мере того, как вы попрактикуетесь в чтении и использовании данных, вы узнаете, какие аспекты наиболее полезны.

Хотите больше? Попробуйте наш курс фотографии для начинающих

Хотите овладеть азами фотографии, чтобы делать потрясающие снимки в любой ситуации?

Если вы не знаете, какие настройки использовать, вы часто упускаете возможность запечатлеть прекрасные моменты.

Но камеры сложны, и трудно понять, с чего начать. Вот почему мы создали этот курс.

Ubuntu Manpage: exif - показывает информацию EXIF ​​в файлах JPEG

Предоставлено: exif_0.6.21-1_amd64
 
НАИМЕНОВАНИЕ
       exif - показывает информацию EXIF ​​в файлах JPEG

 
ОБЗОР
         exif   [  ОПЦИЯ  ]   [  файл...  ] 

 
ОПИСАНИЕ
         exif  - небольшая утилита командной строки для отображения и изменения информации EXIF ​​в файлах JPEG.

       Большинство цифровых камер создают файлы EXIF, которые представляют собой файлы JPEG с дополнительными тегами, которые содержат
       информация об изображении. Утилита командной строки  exif  позволяет читать EXIF
       информацию из этих файлов и записать в них информацию EXIF.  exif  внутренне использует
         libexif  библиотека.Каждый входной файл, указанный в командной строке, обрабатывается по очереди с использованием всех параметров.
       дано. Выполнение будет немедленно прервано, если один файл не читается или не читается.
       содержат теги EXIF.

       При чтении тегов EXIF ​​все неизвестные удаляются, а известные автоматически удаляются.
       преобразованы в правильный формат, если они еще не были. Поврежденные теги MakerNote:
       также удаляется, но изменения формата не вносятся.

 
ОПЦИИ
         -v,   - версия 
              Показать номер версии  exif . -i,   -ids 
              Показывать идентификационные номера вместо имен тегов.

         -t,   --tag =   TAG 
              Выберите только этот  TAG .  ТЕГ  - заголовок тега, короткое имя тега или номер тега.
              (шестнадцатеричные числа имеют префикс 0x) из IFD, указанного с помощью --ifd. В
              заголовок тега зависит от текущего языкового стандарта, тогда как имя и номер - языковой стандарт.
              независимый. --ifd =   IFD 
              Выберите тег или теги из этого  IFD . Допустимые IFD: «0», «1», «EXIF», «GPS» и
              «Совместимость». По умолчанию «0».

         -l,   --list-tags 
              Перечислите все известные теги EXIF ​​и IFD. Должно быть предоставлено изображение JPEG, и эти теги
              которые появляются в файле, отмечены звездочкой в ​​соответствующей позиции
              в списке.

         - |,   --show-mnote 
              Показать содержимое тега MakerNote.Содержимое этого тега нестандартное
              (и часто не имеют документов) и поэтому не могут быть признаны, или если они
              признается, что они не обязательно могут быть истолкованы правильно.

         - удалить 
              Удалите тег или (если тег не указан) весь IFD.

         -s,   - показать-описание 
              Показать описание тега. Также необходимо указать параметр --tag.

         -e,   --extract-thumbnail 
              Извлеките эскиз, записав изображение эскиза в файл, указанный с помощью
              --выход. -r,   --remove-thumbnail 
              Удалите миниатюру из изображения, записав новое изображение в указанный файл
              с --output.

         -n,   --insert-thumbnail =   ФАЙЛ 
              Вставьте  ФАЙЛ  как эскиз. Не предпринимается никаких попыток гарантировать, что содержимое  ФАЙЛ 
              имеют допустимый формат эскизов.

         - без фиксации 
              Не пытайтесь исправить нарушения спецификации EXIF ​​при чтении тегов.При использовании
              вместе с --create-exif этот параметр запрещает создание
              обязательные теги.  exif  в противном случае удалит недопустимые или неизвестные теги, добавит некоторые
              обязательные теги, использующие значения по умолчанию, и изменить тип данных некоторых тегов, чтобы они соответствовали
              то, что требуется спецификацией.

         -o,   --output =   ФАЙЛ 
              Записать выходной образ в  ФАЙЛ . Если эта опция не указана и файл изображения должен быть
              написано, используемое имя такое же, как у входного файла с суффиксом
              ".модифицированный.jpeg ".

         --заданное значение =   ЗНАЧЕНИЕ 
              Установите данные для тега, указанного с помощью --tag и --ifd, на  ЗНАЧЕНИЕ . Составные значения
              состоящий из нескольких компонентов, разделенных пробелами.

         -c,   --create-exif 
              Создайте данные EXIF, если они не существуют. Обязательные теги создаются по умолчанию
              значения, если не задана опция --no-fixup. Эту опцию можно использовать вместо
              указание имени входного файла в большинстве случаев для работы со значениями по умолчанию
              обязательный набор тегов EXIF.В этом случае опция --output не действует.
              и ни один файл не записывается.

        -м,   - машиночитаемый 
              Создавать вывод в машиночитаемом формате (с разделителями табуляции). --Xml-output и
              - машиночитаемые параметры исключают друг друга.

         -w,   --width =   N 
              Установите максимальную ширину вывода в N символов (по умолчанию 80). Это не
              применяются к некоторым выходным форматам (например,грамм. XML).

         -x,   --xml-output 
              Создавать вывод в формате XML (если возможно). --Xml-output и
              - машиночитаемые параметры исключают друг друга. Обратите внимание, что схема XML
              изменяется в зависимости от языкового стандарта и иногда создает недопустимый XML. Этот вариант не
              рекомендуемые.

         -d,   --debug 
              Показать отладочные сообщения. Также при обработке файла, содержащего поврежденные данные,
              эта опция заставляет  exif  пытаться продолжить обработку.Обычно поврежденные данные
              вызывает прерывание.

     Справка   опции 
         - ?,   --help 
              Показать справочное сообщение.

         --использование 
              Отображение краткого сообщения об использовании.

 
ПРИМЕРЫ
       Отображать все распознанные теги EXIF ​​на изображении и в содержимом тегов с исправленными ошибочными тегами:

              exif image.jpg

       Отобразить таблицу, в которой перечислены все известные теги EXIF ​​и указаны ли каждый из них в данном
       изображение:

              exif --list-tags --no-fixup image.jpg

       Отобразите подробную информацию обо всех тегах XResolution, найденных на данном изображении:

              exif --tag = XResolution --no-fixup image.jpg

       Отобразить необработанное содержимое тега "Модель" в данном изображении (с символом новой строки
       добавлено):

              exif --ifd = 0 --tag = Модель - машиночитаемый image.jpg

       Распакуйте миниатюру в файл thumbnail.jpg:

              exif --extract-thumbnail --output = thumbnail.jpg image.jpg

       Отображение списка числовых значений только тегов EXIF ​​в эскизе IFD (IFD 1)
       и значения тегов:

              exif --ids --ifd = 1 --no-fixup image.jpg

       Отобразите значение тега 0x9209 в IFD «EXIF» в соответствии со спецификацией EXIF:

              exif --show-description --ifd = EXIF ​​--tag = 0x9209

       Добавьте тег ориентации со значением «снизу - слева» к существующему изображению, оставив
       существующие теги остались нетронутыми:

              exif --output = new.jpg --ifd = 0 --tag = 0x0112 --set-value = 4 --no-fixup image.jpg

       Добавьте тег подвыборки YCbCr со значением 2,1 (также известный как YCbCr 4: 2: 2) к существующему изображению и
       при необходимости исправить существующие теги:

              exif --output = новый.jpg --tag = YCbCrSubSampling --ifd = 0 --set-value = '2 1' image.jpg

       Отобразите таблицу со всеми известными тегами EXIF, выделив обязательные:

              exif -cl

 
АВТОР
         exif  был написан Лутцем Мюллером  и многочисленными участниками.
       Авторские права на эту страницу руководства принадлежат © 2002-2012 Thomas Pircher, Dan Fandrich и другие.

 
СМОТРИ ТАКЖЕ
         http: // www.sourceforge.net/projects/libexif 
 

Exif Metadata в App Store

Новые функции делают это приложение еще более мощным, чем раньше. Попробуйте!

EXIF ​​

Exif Metadata позволяет быстро и легко просматривать, редактировать и удалять метаданные, включая местоположение GPS, с фотографий вашего iPhone и iPad. Это незаменимый инструмент как для серьезных фотографов, так и для обычных айфонографов.

10 причин использовать метаданные Exif:
- Попробовать бесплатно
- Просмотр, редактирование или удаление метаданных Exif на лету
- Просмотр, редактирование или удаление данных о местоположении с ваших фотографий
- Массовое редактирование нескольких фотографий одновременно время
- Фильтрация фотографий с отсутствующим местоположением или метаданными
- Ваши фотографии обрабатываются на устройстве и никогда не отправляются на сервер
- Расширение позволяет просматривать метаданные непосредственно из приложения «Фотографии»
- Работает как на iPhone, так и на iPad
- Поддерживает темный режим
- Высоко оценен, средний балл - 4.5 звезд

РЕАЛЬНЫЕ ОТЗЫВЫ РЕАЛЬНЫХ ПОЛЬЗОВАТЕЛЕЙ

«По-прежнему лучшее приложение для редактирования метаданных Exif». - от пользователя iPad 0222

«Как сознательный родитель, я не хочу делиться фотографиями своих детей в Интернете. Это приложение очищает все личные данные и снимает мои опасения. Кроме того, оно очень простое и простое в использовании». - от T puffin

«Это приложение идеально в своей простоте. Это единственное приложение exif, которое я нашел, которое позволяет просматривать метаданные в фотопленке - потрясающе!» - by Fshhshsns

"Метаданные EXIF ​​делают именно то, что обещают.Он чрезвычайно прост в использовании, а поддержка клиентов великолепна. Недорогая пожизненная версия Pro стоит каждого пенни »- автор Apple TV Fan

« Очень чистый интерфейс, отлично справляется со своей задачей. Если вы хотите массово обновить метаданные для коллекции фотографий (например, импортированных из другого места), это ваше решение. Настоятельно рекомендую. "- от JT Player

ОСОБЕННОСТИ SPOTLIGHT

Просмотр метаданных Exif:
- Быстрый просмотр основной информации о фото
- Просмотр 50+ тегов метаданных
- Просмотр данных о местоположении, таких как данные GPS, адрес, местоположение на карте

Редактировать метаданные Exif:
- Редактировать диафрагму, выдержку, дату, время, автора, описание, авторские права и т. Д.
- Редактировать геотеги или местоположение подмены

Фильтровать фотографии:
- Пользователи Pro могут фильтровать фотографии с отсутствующим местоположением и метаданными Exif

Удалить метаданные Exif:
- Удалить данные о местоположении GPS независимо от других данных Exif
- Удалить все метаданные сразу

Массовое редактирование метаданных:
- Пользователи Pro могут редактировать метаданные сразу нескольких фотографий

Чистый и простой дизайн:
- Оптимизировано для iPhone и iPad
- Поддерживает темный режим

Расширение для фотографий:
- Доступ к метаданным ваших фотографий прямо из приложения «Фото»

Защитите свою конфиденциальность:
- Легко делитесь фотографиями онлайн без метаданных

Это приложение работает с:
- Все фотографии в фотопленке вашего iPhone или iPad, кроме фотографий ProRAW
- Фотографии в библиотеке фотографий iCloud
- Фотографии в Photo Stream

Exif Metadata Pro:

Версия Pro метаданных Exif можно приобрести по годовой подписке или единовременно, чтобы удалить рекламу и получить возможность редактировать метаданные для нескольких фотографий одновременно.

Оплата будет снята с вашей учетной записи Apple ID при подтверждении покупки. Подписка автоматически продлевается каждый год, если она не отменена по крайней мере за 24 часа до окончания текущего периода. Плата за продление будет взиматься с вашей учетной записи в течение 24 часов до окончания текущего периода. Вы можете управлять своими подписками и отменять их, перейдя в настройки своей учетной записи App Store после покупки.

Условия использования: https://www.sixstarapps.com/terms/
Политика конфиденциальности: https: // www.sixstarapps.com/privacy/

ЕСТЬ ВОПРОСЫ ИЛИ НУЖНА ПОМОЩЬ?

Если у вас есть какие-либо вопросы о приложении или вам нужна помощь, не стесняйтесь обращаться к нам на www.SixStarApps.com. Будем рады помочь!

Что такое данные EXIF? | Природа TTL

Каждый раз, когда вы делаете фотографию, в нее вставляются данные EXIF. Это расшифровывается как Exchangeable Image File, но вы всегда увидите, что он упоминается только как EXIF. Эти данные содержат огромное количество информации: все, от настроек, используемых для получения изображения, до GPS-координат того места, где вы были (если у вас это включено на некоторых камерах).

Вы также можете включить информацию об авторских правах в данные EXIF, что может быть очень удобно для подтверждения вашего права собственности на фотографию. Это можно сделать из большинства меню камеры, обеспечивая автоматическое включение в файл фотографии.

Поиск данных EXIF ​​

Возможно, вы хотите вернуться к настройкам, которые вы использовали для конкретной фотографии? Может быть, вы хотите проверить данные фотографа об изображении, которое вы видели в Интернете? Возможно, эта информация хранится в файле изображения, если только она не была удалена в целях сжатия перед загрузкой в ​​Интернет.

Просмотр данных EXIF ​​прост. Если вы просматриваете изображение в Photoshop, просто перейдите к «Файл> Информация о файле…», и вы сможете увидеть и отредактировать там все данные EXIF. Если вы работаете в Lightroom, вы увидите это в библиотеке на панели метаданных.

В Photoshop вы можете просматривать широкий спектр информации EXIF.

Однако вам не нужно использовать программное обеспечение для редактирования, чтобы просмотреть его. Если вы используете ПК с Windows, щелкните файл правой кнопкой мыши и выберите «Свойства». Затем отобразятся некоторые данные EXIF.Если вы используете Mac, щелкните правой кнопкой мыши и выберите «Получить информацию». Эти параметры не покажут вам все данные EXIF, но они покажут вам ключевые биты, такие как используемые настройки.

Конечно, если ваша фотография все еще находится на карте памяти, вы можете просмотреть ее на своей камере. Просто нажмите кнопку «Информация» во время воспроизведения, и информация будет отображаться вам. Это может отличаться для разных камер.

Вы не сможете просмотреть количество выдержек на фотографии таким образом, хотя эта информация также сохраняется в необработанном файле вашей фотографии.Прочтите наше руководство о том, как найти количество затворов, если вы хотите увидеть эти данные.

Как читать, редактировать и стирать местоположение и другие метаданные EXIF ​​из ваших фотографий с помощью Python

Массовое внедрение смартфонов - в основном портативных, оснащенных датчиками, всегда подключенных к сети компьютеров - привело к двум основным последствиям, которые влияние на конфиденциальность и безопасность еще полностью не изучено:

  1. Больше людей, чем когда-либо, имеют камеру, которая обычно находится в пределах досягаемости.
  2. По умолчанию фотографии, сделанные этими камерами, могут выдавать конфиденциальную информацию, и многие пользователи не подозревают, что это происходит.

Помимо данных изображения, фотографии, сделанные с помощью смартфонов и современных цифровых фотоаппаратов, содержат метаданные , которые являются дополнительной информацией о фотографии. Эти метаданные хранятся в формате EXIF ​​, который является сокращением от EXchangeable Image File format, который является постоянно развивающимся стандартом для информации, добавляемой к цифровым изображениям и звукозаписям.

В фотографиях EXIF ​​может включать такую ​​информацию, как:

  • Размеры и плотность пикселей фотографии
  • Марка и модель устройства, используемого для фотосъемки
  • Масштабирование, диафрагма, вспышка и другие настройки камеры, когда фотография была сделана
  • Ориентация устройства, когда была сделана фотография
  • Когда была сделана фотография
  • Где была сделана фотография
  • В каком направлении была обращена камера
  • Высота, на которой была сделана фотография

Эти метаданные полезны для сортировки, каталогизации и поиска фотографий, поэтому был определен стандарт EXIF.Однако при этом возникают проблемы с конфиденциальностью и безопасностью, которые многие пользователи не принимают во внимание.

Одним из первых предостерегающих рассказов об EXIF ​​является инцидент с конфиденциальностью в 2012 году, связанный с основателем антивирусной компании Джоном Макафи. Это было захватывающее время в жизни Макафи, поскольку он уклонялся от действий правоохранительных органов, но при этом давал журналистам эксклюзивные, пользующиеся большим спросом интервью. Один журналист, которому посчастливилось получить интервью, решил продемонстрировать свою удачу, опубликовав фотографию McAfee, не удаляя предварительно данные EXIF.Эти данные раскрыли его местонахождение и привели к его аресту.

Вы, вероятно, знакомы с недавними историями о том, что правоохранительные органы арестовывали подозреваемых, используя фотографии, размещенные в социальных сетях, которые не принимали меры предосторожности и не «очищали» свои данные EXIF ​​в процессе загрузки.

Как я подозреваю, что вы разработчики, заботящиеся о безопасности, вы, вероятно, задаете себе такие вопросы:

  • Как я могу программно обнаружить и прочитать метаданные EXIF ​​с фотографии?
  • Как я могу программно изменить, добавить или стереть метаданные EXIF?

Если у вас Python 3.6 или более поздней версии, установленной на вашем компьютере, вы можете узнать из приведенных ниже практических упражнений. Они охватывают пару пакетов Python, которые вы можете включить в свои приложения для извлечения, добавления, изменения или удаления данных EXIF ​​с фотографий. Попутно вы будете использовать не только свои навыки программирования, но и поработать детективом!

Модуль

exif

Существует ряд модулей Python, которые могут получить доступ к данным EXIF ​​на цифровых фотографиях. В этой статье мы сосредоточимся на exif .Его API настолько питонический, что кажется, будто он является частью языка, а не модулем.

Чтобы установить exif , используйте pip , введя в командной строке следующее:

  pip install exif  

Если при вводе этой команды появилось сообщение об ошибке, попробуйте использовать команду pip3 install exif вместо. pip3 - это версия pip , менеджера пакетов Python, специально предназначенная для Python 3.

Если вы не поддерживаете какой-либо код Python 2, но вам нужно использовать pip3 для установки пакетов Python, вам следует подумать об обновлении вашей установки Python.

Загрузка фотографий и проверка их на наличие данных EXIF ​​

Давайте запустим exif на работу. Рассмотрим эти две фотографии, названные пальмой 1.jpg и пальмой 2.jpg :

Предположим, вам задали следующие вопросы:

  1. Были ли эти фотографии сделаны на одном или двух устройствах разные устройства?
  2. Какая фотография была сделана первой?
  3. Где были сделаны эти фотографии?

Чтобы ответить на эти вопросы, мы загрузим данные из файлов этих фотографий в объекты exif Image , а затем будем использовать эти объекты для проверки метаданных EXIF:

  from exif import Image

с открытым ("./ images / palm tree 1.jpg "," rb ") как palm_1_file:
    palm_1_image = Изображение (palm_1_file)
    
с открытым ("./ images / palm tree 2.jpg", "rb") как palm_2_file:
    palm_2_image = Изображение (palm_2_file)
    
images = [palm_1_image, palm_2_image]  

Код открывает каждый файл только для чтения. Он считывает данные файла в двоичном формате в файловый объект, который затем использует для создания экземпляра объекта exif Image . Наконец, он помещает объекты Image в массив, чтобы мы могли перебирать их, выполняя одни и те же операции с метаданными EXIF ​​каждой фотографии.

Давайте выполним нашу первую операцию с каждой фотографией: убедимся, что они действительно содержат данные EXIF. Мы сделаем это, проверив свойство has_exif каждого объекта Image . Для каждого изображения, содержащего данные EXIF, мы будем использовать свойство Image exif_version , чтобы отобразить версию EXIF, которую оно использует:

  для индекса, изображение в перечислении (изображения):
    если image.has_exif:
        status = f "содержит информацию EXIF ​​(версия {image.exif_version})."
    еще:
        status = "не содержит информации EXIF."
    print (f "Изображение {index} {status}")  

При запуске этот код дает следующие результаты:

  Изображение 0 содержит информацию EXIF ​​(версия 0220).
Изображение 1 содержит информацию EXIF ​​(версия 0232).  

Теперь мы знаем, что обе фотографии содержат информацию EXIF ​​и используют разные версии EXIF. Скорее всего, эти фотографии были сделаны на разные камеры.

Какие метаданные EXIF ​​доступны на каждой фотографии?

Думайте о EXIF ​​как о структуре данных «ключ-значение», подобной словарю Python.Пары ключ-значение EXIF ​​называются тегами , и каждый тег может содержать строковое или числовое значение. В текущем стандарте EXIF ​​(версия 2.32) есть десятки тегов, и каждый - от производителей смартфонов и камер до фотографов - может добавлять свои собственные.

Вот полный список тегов EXIF, которые вы, скорее всего, найдете на цифровых фотографиях. Он включает теги, не входящие в стандарт EXIF, но предоставляемые рядом устройств или программного обеспечения.

EXIF ​​- один из тех неформальных форматов, в котором производители сами выбирают, какие функции они будут реализовывать.Это означает, что фотографии, снятые разными камерами и смартфонами, будут иметь разные наборы тегов EXIF.

Как правило, вы можете рассчитывать на то, что смартфоны встраивают в фотографии, которые они делают, ряд часто используемых тегов EXIF, включая марку и модель смартфона, дату и время, когда была сделана фотография, место, где был сделан телефон, и общие настройки камеры.

Учитывая различия между устройствами и наличие инструментов для редактирования данных EXIF, первое, что вы должны сделать при работе с данными EXIF ​​фотографии, - это посмотреть, какие теги доступны.

Объекты Image , предоставляемые модулем exif , предоставляют теги EXIF ​​как свойства этого объекта. Это означает, что вы можете использовать встроенную в Python функцию dir () для объекта Image , чтобы увидеть, какие теги EXIF ​​у него есть.

Следующий код отображает список элементов каждого объекта Image в нашем списке изображений пальм:

  image_members = []

для изображения в изображениях:
    image_members.append (каталог (изображение))

для индекса image_member_list в перечислении (image_members):
    print (f "Изображение {index} содержит {len (image_member_list)} участников:")
    print (f "{image_member_list} \ n")  

Вы увидите следующий результат:

  Изображение 0 содержит 53 элемента:
['_exif_ifd_pointer', '_gps_ifd_pointer', '_segments', 'aperture_value', 'Bright_value', 'color_space', 'components_configuration', 'datetime', 'datetime_digitized', 'datetime_original', 'delete', 'delete_all' digital_zoom_ratio ',' exif_version ','exif_bias_value', 'Exposure_mode', 'Exposition_program', 'Exposure_time', 'f_number', 'flash', 'flashpix_version', 'focal_length', 'focal_length_in_35mm_film', 'get', 'get', , 'get_thumbnail', 'gps_altitude', 'gps_altitude_ref', 'gps_datestamp', 'gps_latitude', 'gps_latitude_ref', 'gps_longitude', 'gps_longitude_ref', 'has_exif', 'light_source', 'make_source' режим измерения ',' модель ',' ориентация ',' фотографическая_чувствительность ',' pixel_x_dimension ',' pixel_y_dimension ',' resolution_unit ',' scene_capture_type ',' sensing_method ',' shutter_speed_value ',' subsc_time ',' subscit_time_time_dinal_time_ , 'white_balance', 'x_resolution', 'y_resolution']

Изображение 1 содержит 68 участников:
['<неизвестный тег EXIF ​​316>', '<неизвестный тег EXIF ​​322>', '<неизвестный тег EXIF ​​323>', '<неизвестный тег EXIF ​​42080>', '_exif_ifd_pointer', '_gps_ifd_pointer', '_segments', ' aperture_value ',' яркость_значение ',' components_configuration ',' datetime ',' datetime_digitized ',' datetime_original ',' delete ',' delete_all ',' exif_version ',' excision_bias_value ',' excision_mode ',' exc_program ',' exc_time ' , 'f_number', 'flash', 'flashpix_version', 'focal_length', 'focal_length_in_35mm_film', 'get', 'get_file', 'get_thumbnail', 'gps_altitude', 'gps_altitude_ref', 'gps_bearing_bearing' gps_horizontal_position_error ',' gps_img_direction ',' gps_img_direction_ref ',' gps_latitude ',' gps_latitude_ref ',' gps_longitude ',' gps_longitude_ref ',' gps_speed ',' 'gps_exf_mode_speed', '' gps_exref '' , 'make', 'maker_note', 'metering_mode', 'model', 'offset_time', 'offset_time_digitized', 'offset_time_original', 'ориентация', 'фотографическая_ чувствительность ',' pixel_x_dimension ',' pixel_y_dimension ',' resolution_unit ',' scene_capture_type ',' scene_type ',' sensing_method ',' shutter_speed_value ',' software ',' subject_area ',' subsc_time_digitized ',' subsc_time_digitized ',' subsc_time_time_ 'x_resolution', 'y_resolution']  

Как видите, в то время как оба объекта Image имеют много общих членов, изображение 1 содержит несколько больше, чем изображение 0.Это означает, что изображение 1 имеет на несколько больше тегов EXIF, чем изображение 0. Это сильный индикатор того, что изображение 0 и изображение 1 были сняты на разных устройствах.

Вы можете использовать наборы Python для определения общих элементов изображения 0 и изображения 1:

  common_members = set (image_members [0]). Пересечение (set (image_members [1]))
common_members_sorted = отсортировано (список (common_members))
print ("Изображение 0 и Изображение 1 имеют эти общие элементы:")
print (f "{common_members_sorted}")  

Выполнение этого кода дает следующий результат:

  Изображение 0 и изображение 1 имеют следующие общие элементы:
['_exif_ifd_pointer', '_gps_ifd_pointer', '_segments', 'aperture_value', 'яркость_value', 'components_configuration', 'datetime', 'datetime_digitized', 'datetime_original', 'delete', 'delete_all', 'exif_version значение_экспозиции ',' режим_экспозиции ',' программа_экспозиции ',' время_экспозиции ',' f_number ',' вспышка ',' flashpix_version ',' focal_length ',' focal_length_in_35mm_film ',' get ',' get_file ',' get_thumbnail_al ',' g , 'gps_altitude_ref', 'gps_latitude', 'gps_latitude_ref', 'gps_longitude', 'gps_longitude_ref', 'has_exif', 'make', 'metering_mode', 'model', 'Ориентация', 'photographic_sensitivity', 'pixel_x_dimension' pixel_y_dimension ',' resolution_unit ',' scene_capture_type ',' sensing_method ',' shutter_speed_value ',' subsc_time_digitized ',' subsc_time_original ',' white_balance ',' x_resolution ',' y_resolution ' Теги EXIF ​​в документации (либо список стандартных тегов EXIF, либо расширенный список), у вас может быть n Было отмечено, что имена тегов EXIF ​​находятся в   PascalCase  , а свойства EXIF ​​в  exif   Image  объекты находятся в   snake_case  .Это связано с тем, что авторы модуля  exif  стремятся следовать Руководству по стилю Python и разработали  Image  для преобразования имен тегов EXIF ​​в имена свойств Pythonic. 

Не-EXIF члены

exif 's Image class

Большинство, но не все, элементы любых экземпляров Image будут свойствами, соответствующими тегам EXIF ​​в изображении. Однако есть несколько участников для работы с метаданными EXIF. Они перечислены в таблице ниже:

Член класса Описание
удалить атрибут ) Удаляет тег EXIF, указанный в строке атрибута из изображения.
delete_all Удаляет все теги EXIF ​​из изображения.
получить атрибут , по умолчанию = Нет ) Возвращает значение тега EXIF, заданное строкой , атрибут . Если тег недоступен или содержит значение, он возвращает значение, указанное в аргументе ключевого слова по умолчанию .
get_file Возвращает текущие данные изображения, отформатированные для записи в двоичный файл.
get_thumbnail Возвращает двоичные данные для миниатюры изображения.
has_exif Логическое значение, которое возвращает True , если изображение в настоящее время содержит метаданные EXIF.
установить атрибут, значение ) Установить значение тега EXIF, заданное строкой , атрибут . Если тег недоступен или содержит значение, он возвращает значение, указанное в аргументе ключевого слова по умолчанию .

В этой статье мы рассмотрим большинство из этих свойств и методов.

Получение основной информации о фотографиях

Давайте ответим на первый вопрос об этих фотографиях. Были ли они сняты на одном устройстве или на двух разных устройствах? У нас уже есть основания полагать, что ответ - «нет».

Марка и модель устройства, на котором было сделано фото

Оба изображения имеют теги make и model , поэтому давайте воспользуемся ими, чтобы определить, какие устройства использовались для съемки этих снимков: , изображение в перечислении (изображения): print (f "Информация об устройстве - Изображение {индекс}") Распечатать("----------------------------") print (f "Make: {image.делать}") print (f "Модель: {image.model} \ n")

Вот результат кода выше:

  Информация об устройстве - Изображение 0
----------------------------
Марка: Motorola
Модель: motorola one hyper

Информация об устройстве - Изображение 1
----------------------------
Марка: Apple
Модель: iPhone 12 Pro  

Это подтверждает, что фотографии были сделаны на разных устройствах, и теперь мы знаем детали.

Дополнительная и дополнительная информация об устройствах

Давайте соберем дополнительную информацию об устройствах, используемых для фотосъемки, а именно об их объективах и версиях операционной системы.

Не все устройства сообщают тип линзы в своих метаданных EXIF, поэтому мы будем использовать метод Image get () , который аналогичен методу get () , используемому словарями Python. Подобно методу get () словарей Python, метод get () , предоставляемый объектом Image exif , изящно обрабатывает случай, когда данный ключ не существует.

В приведенном ниже коде используется get () , чтобы попытаться получить доступ к версиям объектива и операционной системы, используемым при съемке фотографий.Если конкретное свойство не существует, его значение будет отображаться как «Неизвестно»:

  для индекса, изображение в перечислении (изображения):
    print (f "Объектив и ОС - Изображение {индекс}")
    Распечатать("---------------------")
    print (f "Марка линзы: {image.get ('lens_make', 'Unknown')}")
    print (f "Модель линзы: {image.get ('lens_model', 'Unknown')}")
    print (f "Спецификация объектива: {image.get ('lens_specification', 'Unknown')}")
    print (f "Версия ОС: {image.get ('software', 'Unknown')} \ n")  

Вот его результат:

  Объектив и ОС - Изображение 0
---------------------
Производитель линз: Неизвестно
Модель объектива: Неизвестно
Спецификация объектива: неизвестно
Версия ОС: Неизвестно

Объектив и ОС - Изображение 1
---------------------
Производитель линз: Apple
Модель объектива: задняя тройная камера iPhone 12 Pro 4.2 мм f / 1,6
Спецификация объектива: (1.5399999618512084, 6.0, 1.6, 2.4)
Версия ОС: 14.3  

Обратите внимание, что телефон, используемый для съемки изображения 0 (Motorola One Hyper), не поддерживает свойства lens_make , lens_model , lens_specification или для программного обеспечения . Если бы мы попытались получить к ним доступ напрямую (например, image.lens_make ), результатом была бы ошибка. Метод get () позволил нам предоставить альтернативное значение для этих несуществующих свойств.

Дата и время, когда была сделана фотография

Следующий вопрос: какая фотография была сделана первой?

Мы можем это выяснить, просмотрев свойство datetime_original каждой фотографии, которое указывает дату и время, когда фотография была сделана. Процессор в смартфоне достаточно быстр, чтобы записывать точную долю секунды, когда он делает фотографию, и эта доля сохраняется в свойстве subsc_time_original .

Некоторые телефоны также записывают свойство offset_time , которое мы можем использовать для определения смещения datetime относительно UTC.

Следующий код отображает дату и время, когда была сделана каждая из фотографий. Если фотография включает данные смещения времени, код также отобразит это значение:

  для индекса, изображение в перечислении (изображения):
    print (f "Дата / время съемки - Изображение {индекс}")
    Распечатать("-------------------------")
    print (f "{image.datetime_original}. {image.subsec_time_original} {image.get ('offset_time', '')} \ n")  

Вот результаты:

  Дата / время съемки - Изображение 0
-------------------------
2021: 01: 22 15:08:46.327211

Дата / время съемки - Изображение 1
-------------------------
2021: 01: 22 15: 08: 59.383 -05: 00  

Как видно из выходных данных, изображение 0 было снято первым, а изображение 1 было снято через 13 секунд.

Определение места, где был сделан снимок

Цифровые камеры записывали дату и время на свои фотографии с самого начала, но только когда смартфон записывал место, где был сделан снимок, стало обычным явлением. В этом разделе мы рассмотрим доступ к GPS-координатам в метаданных фотографии, форматирование этих координат и упрощение понимания этих координат путем их размещения на карте и преобразования их в названия страны, региона и города, где находится фото было сделано.

Получение GPS-координат фотографии

Формат EXIF ​​определяет количество тегов, начинающихся с «gps», которые содержат полезную информацию о геолокации, включая широту и долготу, где была сделана фотография:

  для индекса, изображение в enumerate ( изображений):
    print (f "Координаты - Изображение {индекс}")
    Распечатать("---------------------")
    print (f "Широта: {image.gps_latitude} {image.gps_latitude_ref}")
    print (f "Долгота: {image.gps_longitude} {image.gps_longitude_ref} \ n")  

Вот результат для кода выше:

  Координаты - Изображение 0
---------------------
Широта: (28.0, 0,0, 1,56) N
Долгота: (82,0, 26,0, 59,04) з.д.

Координаты - Изображение 1
---------------------
Широта: (28.0, 0.0, 1.54) N
Долгота: (82.0, 26.0, 58.75) W  

Обратите внимание, что свойства gps_latitude и gps_longitude возвращают широту и долготу в виде набора из трех значений:

  1. градусов
  2. минут (1/60 градуса)
  3. Секунды (1/60 минуты или 1/3600 градуса)

Широта определяет угловое расстояние от экватора, которое может быть северным или южным.Свойство gps_latitude_ref указывает это направление, которое является либо N , либо S .

Долгота определяет угловое расстояние от меридиана, которое может быть восточным или западным. Свойство gps_longitude_ref указывает это направление, которое является либо E , либо W .

Возможно, вы заметили небольшую разницу между координатами, указанными на фотографиях. Это ожидается; даже одно и то же устройство, расположенное в одном и том же месте, в разное время будет сообщать немного разные координаты.Расхождение в координатах, сообщаемых телефонами, составляет порядка долей секунды, что соответствует примерно 25 футам или 7,6 метрам.

Форматирование широты и долготы

Давайте определим пару функций для форматирования информации о широте и долготе, возвращаемой Image , в стандартные форматы:

  • Градусы, минуты и секунды. В этом формате широта изображения 0 будет записана как 28,0 ° 0,0 '1,56 "N .
  • Десятичные градусы.В этом формате широта изображения 0 будет записана как 28,000433333333334 . Северные широты и восточные долготы представлены положительными значениями, в то время как южные широты и западные долготы представлены отрицательными значениями.

Вот определения этих функций, а также некоторый код, который их использует:

  def format_dms_coordinates (координаты):
    return f "{координаты [0]} ° {координаты [1]} \ '{координаты [2]} \" "

def dms_coordinates_to_dd_coordinates (координаты, координаты_ref):
    decimal_degrees = координаты [0] + \
                      координаты [1] / 60 + \
                      координаты [2] / 3600
    
    если координаты_ref == "S" или координаты_ref == "W":
        decimal_degrees = -decimal_degrees
    
    вернуть decimal_degrees

для индекса изображение в перечислении (изображения):
    print (f "Координаты - Изображение {индекс}")
    Распечатать("---------------------")
    print (f "Широта (DMS): {format_dms_coordinates (image.gps_latitude)} {image.gps_latitude_ref} ")
    print (f "Долгота (DMS): {format_dms_coordinates (image.gps_longitude)} {image.gps_longitude_ref} \ n")
    print (f "Широта (DD): {dms_coordinates_to_dd_coordinates (image.gps_latitude, image.gps_latitude_ref)}")
    print (f "Долгота (DD): {dms_coordinates_to_dd_coordinates (image.gps_longitude, image.gps_longitude_ref)} \ n")  

Вот результат:

  Координаты - Изображение 0
---------------------
Широта (DMS): 28.0 ° 0.0 '1.56 "с.ш.
Долгота (DMS): 82.0 ° 26.0 '59.04 "з.д.

Широта (DD): 28.000433333333334
Долгота (DD): -82.44973333333334

Координаты - Изображение 1
---------------------
Широта (DMS): 28.0 ° 0.0 '1.54 "N
Долгота (DMS): 82.0 ° 26.0 '58.75 "з.д.

Широта (DD): 28.000427777777777
Долгота (DD): -82,44965277777779  

Отображение местоположения фотографий на карте

Вероятно, вы не знаете широту и долготу своего дома, даже если округлить до ближайшего градуса. Есть несколько простых способов преобразовать данные о местоположении EXIF ​​во что-то более легкое для понимания людьми.

Один из способов - использовать встроенный в Python модуль webbrowser , чтобы открывать новую вкладку браузера для каждой фотографии, используя десятичную версию EXIF-координат каждой фотографии в качестве параметров URL-адреса Google Maps. Мы создадим служебную функцию с именем draw_map_for_location () , которая сделает это:

  def draw_map_for_location (latitude, latitude_ref, longitude, longitude_ref):
    импортировать веб-браузер
    
    decimal_latitude = dms_coordinates_to_dd_coordinates (широта, latitude_ref)
    decimal_longitude = dms_coordinates_to_dd_coordinates (долгота, longitude_ref)
    url = f "https: // www.google.com/maps?q={decimal_latitude},{decimal_longitude} "
    webbrowser.open_new_tab (URL)

для индекса изображение в перечислении (изображения):
    draw_map_for_location (image.gps_latitude,
                          image.gps_latitude_ref,
                          image.gps_longitude,
                          image.gps_longitude_ref)  

Когда вы запустите его, откроются две новые вкладки браузера, на каждой из которых будет отображаться карта Google, указывающая, где была сделана соответствующая фотография.

Отображение города, региона и страны, где была сделана фотография.

Другой способ отображения местоположения фотографии - использовать обратное геокодирование, то есть процесс преобразования географических координат в адрес или название места.Для этого нам нужно установить два модуля Python:

  • reverse_geocoder , простой автономный обратный геокодер, который использует внутренние таблицы для преобразования набора координат в коллекцию названий городов и штатов / провинций и стран. коды. Установите это, введя pip install reverse_geocoder в командной строке.
  • pycountry , утилита поиска стран, которую мы будем использовать для преобразования кодов стран в их соответствующие названия.Установите это, введя pip install pycountry в командной строке.

После того, как вы установили указанные выше модули, используйте следующий код, чтобы преобразовать координаты фотографии в нечто более узнаваемое:

  import reverse_geocoder as rg
импортировать страну

для индекса изображение в перечислении (изображения):
    print (f "Информация о местоположении - Изображение {индекс}")
    Распечатать("-----------------------")
    decimal_latitude = dms_coordinates_to_dd_coordinates (image.gps_latitude, image.gps_latitude_ref)
    decimal_longitude = dms_coordinates_to_dd_coordinates (image.gps_longitude, image.gps_longitude_ref)
    координаты = (десятичная_широта, десятичная_длина)
    location_info = rg.search (координаты) [0]
    location_info ['country'] = pycountry.countries.get (alpha_2 = location_info ['cc'])
    print (f "{location_info} \ n")  

Код использует метод reverse_geocoder search () для преобразования десятичных значений широты и долготы каждой фотографии в набор следующей информации:

  • Город, город , или название деревни
  • Главный административный регион, который обычно представляет собой штат или провинцию
  • Малый административный район, который обычно является округом или округом
  • Код страны

Затем он использует pycountry get () для преобразования кода страны, предоставленного reverse_geocoder , в кортеж, содержащий соответствующие общие и официальные названия стран.

Вот его результат:

  Информация о местоположении - Изображение 0
-----------------------
{'lat': '27 .94752 ',' lon ':' -82.45843 ',' name ':' Тампа ',' admin1 ':' Флорида ',' admin2 ':' округ Хиллсборо ',' cc ':' США ' , 'country': Country (alpha_2 = 'US', alpha_3 = 'USA', name = 'United States', numeric = '840', official_name = 'United States of America')}

Информация о местоположении - Изображение 1
-----------------------
{'lat': '27 .94752 ',' lon ':' -82.45843 ',' name ':' Тампа ',' admin1 ':' Флорида ',' admin2 ':' округ Хиллсборо ',' cc ':' США ' , 'country': Страна (alpha_2 = 'US', alpha_3 = 'USA', name = 'United States', numeric = '840', official_name = 'United States of America')}  

Другая полезная информация о датчиках

Как я уже упоминал в начале этой статьи, смартфоны снабжены датчиками.К ним относятся магнитометр, барометр и акселерометр. В сочетании с GPS эти датчики предоставляют дополнительную информацию, которая добавляется к метаданным EXIF ​​каждой фотографии.

В каком направлении была обращена камера?

Магнитометр определяет магнитные поля, в том числе гигантские, создаваемые Землей. Его основная цель - быть компасом телефона и определять направление, в котором он указывает. Эта информация записывается в EXIF ​​в виде заголовка компаса каждый раз, когда вы делаете снимок.

Давайте определим, в каком направлении я смотрел, когда делал каждую из этих фотографий:

Мы будем использовать следующие свойства exif Image , чтобы определить направление, в котором была направлена ​​камера. :

  • gps_img_direction : Направление по компасу (то есть направление), на которое камера смотрела, когда был сделан снимок, выраженный в десятичных градусах. 0 ° - север, 90 ° - восток, 180 ° - юг и 270 ° - запад.
  • gps_img_direction_ref : опорная точка для gps_img_direction . Это может быть T , что означает, что 0 ° относится к истинному или географическому северу, или M , что означает, что 0 ° относится к магнитному северу. В большинстве случаев используется истинный север.

Код ниже показывает направление камеры для четырех фотографий озера. Он использует несколько вспомогательных функций:

  • deg_to_direction () : Эта функция преобразует направления компаса в стороны света (например,g., N, NE, NNE и т. д.).
  • format_direction_ref () : Эта функция превращает значение в gps_img_direction_ref в понятную для человека строку.
  по умолчанию градусы к направлению (градусы):
    COMPASS_DIRECTIONS = [
        "N",
        «ННЭ», г.
        «СВ»,
        «ВСЭ»,
        "E",
        «ЭСЭ»,
        «ЮВ»,
        «SSE», г.
        "S",
        «ЮЮЗ»,
        "ЮЗ",
        "WSW",
        "W",
        "WNW",
        "СЗ",
        "СЗЗ"
    ]
    
    compass_directions_count = len (COMPASS_DIRECTIONS)
    compass_direction_arc = 360 / compass_directions_count
    return COMPASS_DIRECTIONS [int (градусов / compass_direction_arc)% compass_directions_count]

def format_direction_ref (direction_ref):
    direction_ref_text = "(истинный или магнитный север не указан)"
    если direction_ref == "T":
        direction_ref_text = "Настоящий север"
    elif direction_ref == "M":
        direction_ref_text = "Магнитный север"
    возврат direction_ref_text


lake_images = []
для i в диапазоне (1, 5):
    filename = f "озеро {i}.jpg "
    с open (f "./ images / {filename}", "rb") как current_file:
        lake_images.append (Изображение (текущий_файл))


для индекса изображение в перечислении (lake_images):
    print (f "Направление изображения - Изображение {индекс}")
    Распечатать("-------------------------")
    print (f "Направление изображения: {градусы_к_направлению (image.gps_img_direction)} ({image.gps_img_direction} °)")
    print (f "Ссылка на направление изображения: {format_direction_ref (image.gps_img_direction_ref)} \ n")  

Когда вы запустите код, вы увидите следующий результат:

  Направление изображения - изображение 0
-------------------------
Направление изображения: ENE (78.416259765625 °)
Ссылка на направление изображения: истинный север

Направление изображения - Изображение 1
-------------------------
Направление изображения: N (1,174224853515625 °)
Ссылка на направление изображения: истинный север

Направление изображения - Изображение 2
-------------------------
Направление изображения: SSE (178,46739196870607 °)
Ссылка на направление изображения: истинный север

Направление изображения - Изображение 3
-------------------------
Направление изображения: W (273,8248136315229 °)
Ссылка на направление изображения: Настоящий север  

На какой высоте был сделан снимок?

Помимо определения координат местоположения, GPS также может использоваться для определения высоты.Некоторые смартфоны оснащены барометрами (которые определяют давление воздуха), которые они используют для повышения точности измерения высоты.

Давайте выясним высоты, на которых были сделаны эти фотографии:

Мы воспользуемся этими свойствами объекта exif Image для определения высоты:

Мы будем использовать следующий exif Изображение свойства:

  • gps_altitude : высота, зарегистрированная камерой, выраженная в метрах.
  • gps_altitude_ref : опорная точка для gps_altitude . Это значение равно 0 , что означает, что значение в gps_altitude относится к метрам над уровнем моря или 1 , что означает, что значение в gps_altitude относится к метрам ниже уровня моря .

Следующий код отображает высоту, сообщенную телефоном в момент съемки каждой из фотографий. Он использует одну служебную функцию, format_altitude () , которая определяет, находится ли заданная высота выше или ниже уровня моря:

  def format_altitude (altitude, altitude_ref):
    altitude_ref_text = "(выше или ниже уровня моря не указано)"
    если altitude_ref == 0:
        altitude_ref_text = "над уровнем моря"
    elif altitude_ref == 1:
        altitude_ref_text = "ниже уровня моря"
    return f "{altitude} метров {altitude_ref_text}"


altitude_images = []
для i в диапазоне (1, 3):
    filename = f "высота {i}.jpg "
    с open (f "./ images / {filename}", "rb") как current_file:
        altitude_images.append (Изображение (текущий_файл))
        

для индекса изображение в перечислении (altitude_images):
    print (f "Высота - Изображение {индекс}")
    Распечатать( "------------------")
    print (f "{format_altitude (image.gps_altitude, image.gps_altitude_ref)} \ n")  

Вот результат:

  Altitude - Image 0
------------------
14.025835763206075 метров над уровнем моря

Высота - Изображение 1
------------------
359.130798475 метров над уровнем моря  

Я мог бы сказать вам, где я сделал эти фотографии, но вы уже знаете, как это узнать.

Переезжал ли фотограф?

Смартфоны используют комбинацию местоположений GPS с течением времени и акселерометра для определения скорости телефона и направления, в котором он движется. Некоторые телефоны предоставляют эту информацию как часть метаданных EXIF ​​на фотографиях.

Мой Motorola One Hyper не записывает метаданные, связанные со скоростью, на снимаемые фотографии, в отличие от моего iPhone.Доступ к этим данным можно получить с помощью этих двух методов объекта exif Image :

  • gps_speed : скорость, сообщаемая камерой, выраженная в виде числа.
  • gps_speed_ref : единицы скорости, используемые для значения в gps_speed . Это значение может быть K для километров в час, M для миль в час или N для морских миль в час или «узлов».

Рассмотрим следующие фотографии:

Вот код, который распечатывает записанную скорость во время съемки каждой фотографии.Он включает функцию универсальности, format_speed_ref () , которая определяет единицы сообщаемой скорости:

  def format_speed_ref (speed_ref):
    speed_ref_text = "(единицы скорости не указаны)"
    если speed_ref == "K":
        speed_ref_text = "км / ч"
    elif speed_ref == "M":
        speed_ref_text = "миль / ч"
    elif speed_ref == "N":
        speed_ref_text = "узлы"
    вернуть speed_ref_text


speed_images = []
для i в диапазоне (1, 4):
    filename = f "скорость {i} .jpg"
    с открытым (ф "./ images / speed {i} .jpg "," rb ") как текущий_файл:
        speed_images.append (Изображение (текущий_файл))
    
для индекса изображение в перечислении (speed_images):
    print (f "Скорость - Изображение {индекс}")
    Распечатать("---------------")
    print (f "Скорость: {image.gps_speed} {format_speed_ref (image.gps_speed_ref)} \ n")  

Вот скорости, которые он сообщает:

  Скорость - Изображение 0
---------------
Скорость: 0,0 км / ч

Скорость - Изображение 1
---------------
Скорость: 20,197362

287 км / ч Скорость - Изображение 2 --------------- Скорость: 5.520932607215793 км / ч

Обновление данных EXIF ​​и их сохранение

До сих пор мы ограничились простым чтением метаданных EXIF ​​с фотографий. Следующим шагом является внесение изменений в эти данные, а затем сохранение результатов в виде нового файла фотографии.

Обновление координат фотографии

Начнем с этой фотографии:

К настоящему времени вы должны знать, как читать ее координаты из EXIF ​​и использовать эти координаты, чтобы открыть карту Google, чтобы показать местоположение, которое они представляют.

Вот код, который это сделает. Он использует служебную функцию draw_map_for_location () , которую мы определили ранее:

  с open (f "./ images / hotel original.jpg", "rb") как hotel_file:
    hotel_image = Изображение (файл_отеля)
    

print ("Исходные координаты")
Распечатать("--------------------")
print (f "Широта: {hotel_image.gps_latitude} {hotel_image.gps_latitude_ref}")
print (f "Долгота: {hotel_image.gps_longitude} {hotel_image.gps_longitude_ref} \ n")


draw_map_for_location (hotel_image.gps_latitude,
                      hotel_image.gps_latitude_ref,
                      hotel_image.gps_longitude,
                      hotel_image.gps_longitude_ref)  

Он выводит следующие ...

  Исходные координаты
--------------------
Широта: (28.0, 21.0, 58.44) N
Долгота: (81,0, 33,0, 34,29) W  

... и открывается новая вкладка браузера с картой Google, на которой отображаются отели Swan и Dolphin, которые находятся в нескольких минутах ходьбы от Walt Disney World во Флориде.

Давайте сделаем вещи немного интереснее, изменив координаты, встроенные в данные EXIF ​​фотографии, чтобы они сообщали, что она была сделана в Зоне 51. Если вы не слышали об этом месте, это военная база в Неваде, где Сторонники теории заговора считают, что правительство США хранит тела пришельцев и космический корабль, захваченные в 1950-х годах. Его координаты: 37.0 ° 14 '3.6 "N, 115 ° 48' 23.99" W.

Вы видели, что чтение значения тега EXIF ​​с использованием объекта exif Image - это просто чтение значения в соответствующее свойство.Точно так же обновление его значения - это просто вопрос присвоения нового значения этому свойству. В этом случае мы назначим значения, которые задают координаты Зоны 51, свойствам изображения: gps_latitude , gps_latitude_ref , gps_longitude и gps_longitude_ref properties:

 
hotel_image.gps_latitude = (37.0, 14, 3.6)
hotel_image.gps_latitude_ref = 'N'
hotel_image.gps_longitude = (115, 48, 23,99)
hotel_image.gps_longitude_ref = 'W'


print ("Исправленные координаты")
Распечатать("-------------------")
print (f "Широта: {hotel_image.gps_latitude} {hotel_image.gps_latitude_ref} ")
print (f "Долгота: {hotel_image.gps_longitude} {hotel_image.gps_longitude_ref} \ n")


draw_map_for_location (hotel_image.gps_latitude,
                      hotel_image.gps_latitude_ref,
                      hotel_image.gps_longitude,
                      hotel_image.gps_longitude_ref)  

Выполнение кода даст следующий результат ...

  Исправленные координаты
-------------------
Широта: (37.0, 14.0, 3.6) N
Долгота: (115.0, 48.0, 23.99) W  

... и он откроет новый браузер, показывающий карту Google, которая отображает область 51.

Заполнение неиспользуемых тегов EXIF ​​

В текущей спецификации EXIF ​​определено множество тегов , и большинство камер заполняют лишь небольшую их часть. Модуль exif позволяет заполнять любые теги EXIF, которым не присвоено значение.

Примечание. Модуль exif записывает только теги в спецификации EXIF, а не дополнительные теги, включенные поставщиками.«Официальные» теги в спецификации EXIF ​​подчеркнуты .

Вы можете присвоить значение тегу вне спецификации EXIF, даже тегу, который вы создали. Объект Image будет хранить это значение, но только до тех пор, пока объект остается в памяти. Вы не сможете сохранять теги, отличные от EXIF, или их значения, потому что метод, преобразующий данные в объекте Image для записи в файл, учитывает только стандартные теги EXIF.

Вот несколько тегов EXIF, которые вы, возможно, захотите заполнить, так как они удобны для управления библиотекой фотографий.Оба они принимают строковые значения:

  • ImageDescription : Описание фотографии. В объектах Image exif это отображается как свойство image_description .
  • Авторские права : Уведомление об авторских правах на фотографию. В объектах Image из exif это отображается как свойство с авторским правом .

Вот код, который заполняет эти теги:

  hotel_image.image_description = "Отель" Дельфин "в Орландо, вид на закат из отеля" Лебедь "
hotel_image.copyright = "Copyright 2021 (Ваше имя здесь)"

print (f "Описание: {hotel_image.image_description}")
print (f "Авторское право: {hotel_image.copyright}")  

Запуск кода дает следующий результат:

  Описание: Отель «Дельфин» в Орландо, вид на закат из отеля «Лебедь»
Авторское право: Copyright 2021 (Ваше имя здесь)  

Сохранение фотографии с обновленными данными

Теперь, когда мы обновили данные EXIF ​​на изображении, давайте сохраним его как новый файл с обновленным названием hotel.jpg .

  с открытым ('./ images / hotel updated.jpg', 'wb') как updated_hotel_file:
    updated_hotel_file.write (hotel_image.get_file ())  

Этот код создает объект файла, updated_hotel_file , для записи двоичных данных в файл с именем hotel updated.jpg . Затем он использует метод get_file () из Image для получения данных изображения отеля в сериализуемой форме и записывает эти данные в файл.

Теперь у вас должен быть новый файл: гостиница обновлена.jpg . Загрузим его и подтвердим, что данные, которые мы изменили и добавили, были сохранены:

  с открытым (f "./ images / hotel updated.jpg", "rb") как hotel_file:
    hotel_image = Изображение (файл_отеля)
    
print ("Координаты")
Распечатать("-----------")
print (f "Широта: {hotel_image.gps_latitude} {hotel_image.gps_latitude_ref}")
print (f "Долгота: {hotel_image.gps_longitude} {hotel_image.gps_longitude_ref} \ n")

print ("Другая информация")
Распечатать("----------")
print (f "Описание: {hotel_image.image_description}")
print (f "Авторское право: {hotel_image.Авторские права}")


draw_map_for_location (hotel_image.gps_latitude,
                      hotel_image.gps_latitude_ref,
                      hotel_image.gps_longitude,
                      hotel_image.gps_longitude_ref)  

Код даст вам этот результат ...

  Координаты
-----------
Широта: (37.0, 14.0, 3.6) N
Долгота: (115,0, 48,0, 23,99) з.д.

Дополнительная информация
----------
Описание: Отель «Дельфин» в Орландо, вид на закат из отеля «Лебедь».
Авторское право: Copyright 2021 (Ваше имя здесь)  

...и откроется еще одна вкладка браузера, отображающая Google Map of Area 51.

Удаление данных EXIF ​​и сохранение «очищенной» фотографии

Предположим, что вместо изменения данных о местоположении фотографии отеля мы решили удалить ее теги. Есть два способа сделать это.

Первый способ - использовать метод delete () , предоставляемый объектом exif ’s Image . Давайте используем его, чтобы удалить данные о широте:

  hotel_image.delete ('gps_latitude')
hotel_image.удалить ('gps_latitude_ref')

print ("Данные широты")
Распечатать("-------------")
print (f "gps_latitude: {hotel_image.get ('gps_latitude', 'Not found')}")
print (f "gps_latitude_ref: {hotel_image.get ('gps_latitude_ref', 'Not found')}")  

Вот результат для кода выше:

  Данные широты
-------------
gps_latitude: не найдено
gps_latitude_ref: Not found  

Второй способ - использовать инструкцию Python del , которая удаляет объекты из памяти. В этом случае мы будем использовать его для удаления атрибутов hotel_image , в которых хранятся данные о долготе:

  del hotel_image.gps_longitude
del hotel_image.gps_longitude_ref

print ("Данные долготы")
Распечатать("--------------")
print (f "gps_longitude: {hotel_image.get ('gps_longitude', 'Not found')}")
print (f "gps_longitude_ref: {hotel_image.get ('gps_longitude_ref', 'Not found')}")  

Вот результат для кода выше:

  Данные долготы
--------------
gps_longitude: не найдено
gps_longitude_ref: Not found  

Теперь, когда мы удалили данные о местоположении с фотографии, давайте сохраним их под новым именем, hotel без данных о местоположении.jpg :

  с открытым ('./ images / hotel without location data.jpg', 'wb') как updated_hotel_file:
    updated_hotel_file.write (hotel_image.get_file ())  

Наконец, если вы хотите просто удалить все данные EXIF ​​с фотографии, вы можете использовать exif Image объект delete_all () метод:

  hotel_image.delete_all ()

dir (hotel_image)  
  ['<неизвестный тег EXIF ​​322>',
 '<неизвестный тег EXIF ​​323>',
 '_segments',
 'Удалить',
 'удалить все',
 'получать',
 'получить файл',
 'get_thumbnail',
 'has_exif']  

Опять же, как только вы использовали delete_all () для удаления всех тегов EXIF, вам нужно сохранить эти изменения.Приведенный ниже код сохраняет наше изображение со всеми удаленными тегами как hotel без тегов.jpg :

  с открытым ('./ images / hotel without tags.jpg', 'wb') как updated_hotel_file:
    updated_hotel_file.write (hotel_image.get_file ())  

Практические и технические соображения

Причины удаления метаданных EXIF ​​

Метаданные EXIF ​​добавляют совершенно новый уровень информации к цифровым фотографиям, а также ряд вещей, которые пользователи, разработчики и организации должны учитывать.

Одним из очевидных соображений является конфиденциальность. Метаданные GPS для отдельной фотографии могут определить ваше местоположение в определенную дату и время. Что гораздо более ценно, так это совокупный GPS из чьей-то камеры, поскольку он содержит закономерности, которые можно проанализировать, чтобы определить, где они живут, работают и какие места вы часто посещаете в их повседневной жизни. Вот почему более авторитетные социальные сети удаляют эту информацию, когда вы публикуете свои фотографии в Интернете. Помните, что это означает лишь то, что ваши фотографии в галерее социальной сети не содержат данных GPS.Нет гарантии, что служба не записала информацию о местоположении для сбора данных рекламодателя перед ее удалением.

Другие метаданные EXIF, такие как сочетание марки, модели, настроек и даже предпочтительной ориентации камеры, могут использоваться для связывания набора фотографий с конкретным человеком.

Некоторые фотографы больше озабочены секретностью, чем конфиденциальностью, когда дело касается метаданных своих фотографий. Они не хотят разглашать настройки камеры, которые использовали для фотосъемки.

Причины для сохранения или добавления метаданных EXIF ​​

Одной из первоначальных причин, по которой был разработан формат метаданных EXIF, было упрощение автоматизации процесса каталогизации, сортировки и поиска в коллекции цифровых фотографий. EXIF позволяет искать фотографии, сделанные в течение определенного периода времени, с помощью определенного устройства или в определенном месте. Другие теги, такие как тег Copyright , позволяют искать фотографии, сделанные определенным фотографом, а также защищать свои авторские права.

Хотя тег ImageDescription был предназначен для хранения описания изображения, вы также можете использовать его для хранения другой полезной текстовой информации, связанной с фотографией, например тегов для классификации изображения или инструкций по обработке и редактированию фотографии.

Метаданные EXIF ​​особенно полезны в мобильных приложениях, которые записывают одновременные комбинации визуальной информации, информации о дате / времени и местоположении. Например, от техника может потребоваться сделать фотографии выполненных ремонтных работ «до» и «после» с указанием того, где, когда и как были выполнены эти работы.

Другие вещи, на которые следует обратить внимание

Как мы видели в различных тегах, записываемых устройствами iPhone и Android, используемыми для фотографирования в этой статье, разные камеры записывают разные наборы тегов EXIF. Программное обеспечение для редактирования фотографий часто записывает информацию в разные теги или добавляет свои собственные теги. Эти дополнительные метаданные часто могут указывать на то, что фотография была отредактирована.

В фотографии дикой природы существует концепция под названием Ethical EXIF ​​, которая описывает этические стандарты, которым следует придерживаться при фотосъемке.Он включает такую ​​информацию, как состояние здоровья и уровень стресса животного на фотографии, как долго животное находилось в неволе и было ли животное вывезено из среды обитания для фотографии.

Наконец, есть сообщения, которые отображаются в мобильных приложениях, использующих камеру, при первом использовании. Обычно они говорят что-то вроде «Это приложение использует камеру. С вами все в порядке? », Но большинство из них не дает понять, что камера добавляет местоположение и другие метаданные к каждой сделанной фотографии.Если вы пишете мобильные приложения, использующие камеру, вы можете сообщить об этом пользователю.

Защита API Python с помощью Auth0

Защита API Python с помощью Auth0 очень проста и предлагает множество замечательных функций. С Auth0 нам нужно написать всего несколько строк кода, чтобы получить:

Например, для защиты API-интерфейсов Python, написанных с помощью Flask, мы можем просто создать декоратор requires_auth :

 

def get_token_auth_header ():
    "" "Получает токен доступа из заголовка авторизации
    "" "
    auth = запрос.headers.get ("Авторизация", Нет)
    если не авторизация:
        поднять AuthError ({"code": "authorization_header_missing",
                        "описание":
                            «Ожидается заголовок авторизации»}, 401)

    parts = auth.split ()

    if parts [0] .lower ()! = "bearer":
        поднять AuthError ({"code": "invalid_header",
                        "описание":
                            "Заголовок авторизации должен начинаться с"
                            «На предъявителя»}, 401)
    elif len (части) == 1:
        поднять AuthError ({"code": "invalid_header",
                        "description": "Токен не найден"}, 401)
    elif len (части)> 2:
        поднять AuthError ({"code": "invalid_header",
                        "описание":
                            "Заголовок авторизации должен быть"
                            «Жетон на предъявителя»}, 401)

    токен = части [1]
    жетон возврата

def requires_auth (f):
    "" "Определяет, действителен ли токен доступа
    "" "
    @wraps (f)
    def украшен (* args, ** kwargs):
        токен = get_token_auth_header ()
        jsonurl = urlopen ("https: //" + AUTH0_DOMAIN + "/.хорошо известный / jwks.json ")
        jwks = json.loads (jsonurl.read ())
        unverified_header = jwt.get_unverified_header (токен)
        rsa_key = {}
        для ключа в jwks ["ключи"]:
            если ключ ["kid"] == unverified_header ["kid"]:
                rsa_key = {
                    "kty": ключ ["kty"],
                    "kid": ключ ["kid"],
                    "использовать": ключ ["использовать"],
                    "n": ключ ["n"],
                    «е»: ключ [«е»]
                }
        если rsa_key:
            пытаться:
                полезная нагрузка = jwt.декодировать (
                    жетон
                    rsa_key,
                    алгоритмы = АЛГОРИТМЫ,
                    аудитория = API_AUDIENCE,
                    эмитент = "https: //" + AUTH0_DOMAIN + "/"
                )
            кроме jwt.ExpiredSignatureError:
                поднять AuthError ({"code": "token_expired",
                                "description": "срок действия токена истек"}, 401)
            кроме jwt.JWTClaimsError:
                поднять AuthError ({"code": "invalid_claims",
                                "описание":
                                    "неправильные утверждения",
                                    "проверьте аудиторию и эмитента"}, 401)
            кроме исключения:
                поднять AuthError ({"code": "invalid_header",
                                "описание":
                                    «Невозможно проанализировать аутентификацию»
                                    "токен."}, 400)

            _app_ctx_stack.top.current_user = полезная нагрузка
            return f (* args, ** kwargs)
        поднять AuthError ({"code": "invalid_header",
                        "description": "Невозможно найти подходящий ключ"}, 400)
    возврат оформлен  

Затем используйте его в наших конечных точках:

 


@ app.route ("/ пинг")
@cross_origin (заголовки = ['Content-Type', 'Authorization'])
def ping ():
    return "Все в порядке. Вам не нужно проходить аутентификацию, чтобы позвонить по этому поводу"


@ app.route ("/ secured / ping")
@cross_origin (заголовки = ['Content-Type', 'Authorization'])
@requires_auth
def secured_ping ():
    return "Все хорошо.Вы получите это сообщение только в том случае, если вы прошли аутентификацию " 

Чтобы узнать больше о защите Python API с помощью Auth0, взгляните на это руководство. Наряду с руководствами по серверным технологиям (таким как Python, Java и PHP), На веб-странице Auth0 Docs также представлены учебные пособия для мобильных / собственных приложений и одностраничных приложений .

Влияние данных EXIF ​​на конфиденциальность

Хотя большинство поставщиков услуг онлайн-образования удаляют метаданные из загруженных изображений профиля как стандартную часть своих услуг, эта практика не является универсальной.

Кредит: Profit_Image / Shutterstock.com © 2021

Поскольку вопросы конфиденциальности имеют первостепенное значение в онлайн-образовании, одна старая функция на некоторых онлайн-образовательных платформах стала новой проблемой безопасности для всех пользователей: данные файла сменного изображения (EXIF).

Практически все онлайн-образовательные платформы позволяют пользователям загружать изображения профиля. Эти изображения позволяют пользователям создавать образы и выражать свою идентичность, а также предоставляют пользователям простой способ идентифицировать тех, с кем они взаимодействуют.Однако в некоторых случаях эти изображения раскрывают больше информации, чем изначально предполагал пользователь. В зависимости от того, как делается снимок, долгота и широта или координаты глобальной системы позиционирования (GPS) могут быть сохранены как метаданные внутри самого изображения. Это неизменно происходит с фотографиями, сделанными с помощью мобильных телефонов и цифровых фотоаппаратов высокого класса. Эти данные, называемые данными EXIF, часто встраиваются в изображения без ведома фотографа. Если данные о местоположении сохраняются, куда бы ни было загружено изображение, те, кто просматривает изображение, потенциально могут получить эти данные.Если кто-то со злым умыслом загружает изображение профиля человека, он может получить представление о том, где была сделана фотография, и, возможно, отследить текущее местоположение человека (например, если фотография была сделана в его доме или на работе). Метаданные можно использовать для анализа перемещений человека с течением времени, и изучение этой информации имело реальные последствия, такие как принудительная отставка и скрытые аресты. Сноска 1

Хотя данные EXIF ​​в некоторых случаях имеют образовательную ценность, например, сбор данных о местоположении для полевых исследований, данные EXIF ​​в отношении изображений профиля вряд ли будут иметь ценность.В большинстве случаев современные поставщики образовательных онлайн-услуг понимают, что данные изображений EXIF ​​могут представлять проблему с конфиденциальностью, поэтому они удаляют их из изображений профилей, доступных через их сервисы. Однако не все из них. Footnote2 Некоторые более крупные службы, такие как Slack, только недавно начали удалять данные EXIF ​​из всех загруженных изображений. Footnote3 Риск состоит в том, что новые технологические компании не будут заботиться об удалении этих данных, особенно если они стремятся создать минимально жизнеспособный продукт.Если служба не удаляет эту информацию из изображений, менеджеры по технологиям в образовательных учреждениях оказываются в затруднительном положении, когда им необходимо защищать своих пользователей, таких как персонал и студенты, от самих себя.

Хотя было бы полезно, если бы пользователи помнили о деталях, встроенных в их изображения, на этот уровень цифровой грамотности нельзя полагаться, и поэтому он не является жизнеспособным способом поддержания безопасности их информации.

Как проверить непреднамеренное раскрытие данных о местоположении

Пользователи могут выполнить простой тест, чтобы увидеть, раскрывает ли служба их данные или удаляет их.На этапе оценки необходимо выполнить следующий тест.

  1. Загрузите изображение профиля, содержащее данные EXIF, в онлайн-службу. Данные EXIF ​​можно увидеть в свойствах файла.
  2. Загрузите сохраненное изображение профиля, просмотрев страницу и загрузив изображение. Изображения можно хранить разными способами, поэтому методы получения изображений профиля будут разными.
  3. Посмотрите, были ли сохранены данные EXIF. Сноска 4

Изображение профиля на этой странице может быть или не быть единственной копией изображения, сохраненной продавцом, поэтому поиск нескольких доступных вариантов имеет смысл.Выполняя этот тест на различных изображениях профиля, мы обнаружили, что если изображение профиля обрезается онлайн-образовательной платформой, географическая информация в большинстве случаев удаляется.

Соображения для технологов

Технологи должны добавить удаление данных EXIF ​​из изображений профиля к более широкому набору соображений безопасности, которые они используют при внедрении новой технологии или оценке существующей. Сохранение или удаление данных EXIF ​​можно рассматривать как фишинг.Хотя фишинг сам по себе небезопасен, он подвергает пользователей повышенному риску причинения вреда. По сути, если кто-то пользуется услугами колледжа или университета и информация об этом пользователе получена третьей стороной, независимо от того, предоставил ли пользователь данные непреднамеренно, пользователь все равно может столкнуться с проблемой управления своими данными учреждением.

Советы по работе с поставщиками

Если в ходе тестирования технологи обнаруживают, что служба не удаляет данные EXIF ​​из изображений профиля, они должны связаться с поставщиком и предпринять несколько различных действий:

  1. Запросить удаление данных EXIF ​​для конкретного местоположения из существующих изображений.
  2. Попросите, чтобы в будущих изображениях, загружаемых пользователями, не сохранялись эти данные. Скорее всего, это потребует обновления программного обеспечения и может занять некоторое время, в зависимости от текущих дорожных карт поставщика.
  3. Если поставщик не может выполнить ни одно из вышеперечисленных действий, может быть целесообразно удалить функцию изображения профиля, пока поставщик не устранит проблему. Прежде чем это решение будет принято, определите приемлемый уровень риска (по мнению образовательного учреждения), поскольку удаление изображений профиля может негативно повлиять на взаимодействие с пользователем в большинстве сервисов. Сноска 5

Общие сведения о распространении хранения данных EXIF ​​

Мы протестировали небольшую часть основных технологий онлайн-образования, чтобы выяснить, удаляют ли сервисы данные EXIF ​​из миниатюрных копий изображений профилей и в каком объеме. Все протестированные технологии, по крайней мере, в какой-то мере совместимы с удалением этих данных, поскольку они генерируют отдельную миниатюру изображения профиля после того, как пользователь загружает его. Это не значит, что полноразмерная копия исходного загруженного изображения (и всех его данных EXIF) не существует где-то на каждой службе.В одном тесте известный онлайн-сервис сохранил географические данные, которые были встроены в изображение, которое было загружено для создания изображения профиля, а полноразмерное изображение профиля стало общедоступным после загрузки. К счастью, эта служба быстро устранила проблему после получения предупреждения.

Проблема в том, что по мере того, как поставщики меняют базовые технологии, которые они используют для управления изображениями профилей, их соответствие с удалением метаданных также может измениться со временем.Возможно, одним из способов смягчения этого является периодическая повторная проверка при обновлении программного обеспечения.

Международная организация по стандартизации (ISO) опубликовала стандарт ISO (ISO 19115-1: 2014), который касается метаданных и хранения географических данных в файлах. К этому стандарту можно обратиться для получения более подробной информации, касающейся существующих стандартов в этой области. Сноска 6

Серьезность проблемы, если она обнаружена

В академической среде потенциальное неблагоприятное влияние сохранения сведений о местоположении в изображениях профиля в некоторой степени определяется доступностью информации профиля для различных групп пользователей.Эти группы можно в общих чертах определить следующим образом:

  • Студент-учитель: Детали видны только студенту и его учителю (например, в системе оценивания).
    • Серьезность данных EXIF, представленных в этом случае, может быть довольно незначительной, поскольку учитель может иметь доступ к гораздо большему количеству информации в своей обычной академической работе.
  • Когорта студентов: Подробная информация видна только в закрытом классе (например, в LMS).
    • Серьезность этой утечки данных и возрастающая серьезность описанных ниже ситуаций могут быть неприемлемыми для многих учреждений.
  • В масштабах учреждения: Подробная информация доступна всем пользователям учреждения (например, в социальных сетях).
  • Между учреждениями: Подробная информация доступна в нескольких учреждениях (например, в системах, связанных с взаимным обучением).
  • Полная системная или общедоступная: Подробная информация доступна любому пользователю платформы (например, в социальных сетях).

Уровень комфорта, который имеет учреждение для любого из вышеперечисленных обозначений, может быть нулевым и также может зависеть от различных правил конфиденциальности в разных правовых юрисдикциях.

Возможность утечки данных сохраненного содержимого профиля, которое пользователь не может видеть

Если пользователю удобно, что эскизы, созданные онлайн-службой (и другие копии изображения, которые пользователь может получить), не содержат географической информации, пользователь может подумать, что все в порядке.Однако, хотя метаданные могут быть удалены из повторно представленной версии изображения профиля пользователя (обычно уменьшенная версия эскиза изображения сохраняется в исходной форме поставщиком), эта информация все равно может быть раскрыта в случае нарушения данных. на стороне продавца.

Образовательные преимущества данных EXIF ​​

Данные

EXIF ​​не следует удалять из каждой службы в каждом случае, поскольку могут быть допустимые варианты использования в образовательных учреждениях, особенно те, которые связаны со сбором наблюдений в различных научных дисциплинах, где может потребоваться география фотографических данных.Хотя данные EXIF ​​имеют допустимую цель в различных образовательных контекстах, данные EXIF, которые извлекаются из изображения профиля пользователя, вряд ли будут полезны в большинстве (или любых) контекстах. Действительно, некоторые из протестированных нами сервисов сохраняли данные EXIF ​​изображений, которые пользователи сохранили в своих личных хранилищах, но удаляли данные, когда это изображение использовалось в качестве изображения профиля. Следует подумать над конкретными вариантами использования оцениваемой технологии, чтобы выяснить, имеют ли данные EXIF ​​образовательную пользу, например, вышеупомянутое полевое исследование.В некоторых случаях нет веских причин для хранения этой информации. В этом случае учреждениям следует обращаться к поставщикам с любыми проблемами, которые у них есть.

Рассмотрение будущего

Поскольку большинство крупных онлайн-сервисов удаляют данные EXIF ​​при загрузке изображения или воссоздают изображения профиля как новые изображения без этих данных, учреждениям следует рассмотреть возможность сопоставления централизованного списка сервисов, совместимых с удалением данных GPS. Это могло бы избавить каждое учреждение от необходимости тестировать каждую образовательную услугу.Возможно, можно было бы создать графическое обозначение, чтобы легко определить, совместима ли услуга с удалением этих данных. Это предоставит потенциальным институциональным покупателям программного обеспечения четкую информацию о том, совместима ли услуга с удалением данных GPS из изображений.

Учащиеся и другие пользователи должны быть предупреждены об опасностях сохранения этой информации на их изображениях. Их знания и внимание могут помочь со временем смягчить эту проблему. Как минимум, поставщики должны быть осведомлены об этой проблеме и устранять ее везде, где она присутствует.У технологов обычно есть подробные контрольные списки, связанные с требованиями безопасности, которые они ожидают от поставщиков. Учреждения должны добавить это в контрольный список требований безопасности, который они отправляют поставщикам. В идеале поставщик должен предоставить подробную информацию о том, как обрабатываются файлы и какие требования к файлам должны быть соблюдены.

Хотя большинство современных служб удаляют данные EXIF ​​из изображений в качестве стандартной процедуры, эта практика не универсальна и должна быть проверена, особенно для недавно созданных веб-служб.

Банкноты

  1. «За данными: исследование метаданных», «Разоблачение невидимого» (веб-сайт), страница обновлена ​​30 июля 2020 г. Вернитесь к сноске 1 в тексте.
  2. Джо Мюллер, "Какие социальные сети защищают ваши данные EXIF ​​(и местоположение GPS) от других пользователей?" GPS for Today (блог), 29 января 2013 г. Вернитесь к сноске 2 в тексте.
  3. Зак Уиттакер, «Slack Now удаляет данные о местоположении из загруженных изображений», TechCrunch (веб-сайт), 11 мая 2020 г.Вернитесь к сноске 3 в тексте.
  4. «Проверка конфиденциальности изображения профиля», Информация о безопасности изображения профиля, ThinkSpace Университета Чарльза Стерта (CSU), по состоянию на 15 апреля 2021 г. Вернитесь к сноске 4 в тексте.
  5. Отправьте это письмо (или что-то подобное), чтобы решить проблемы поставщика, связанные с удалением данных EXIF. Вернитесь к сноске 5 в тексте.
  6. Международная организация по стандартизации, «ISO 19115-1: 2014: Географическая информация - Метаданные - Часть 1: Основы», ISO (веб-сайт), по состоянию на 16 марта 2021 г.Вернитесь к сноске 6 в тексте.
    Exif это: Что такое Exif цифрового фотоснимка

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Пролистать наверх