GIS-LAB

Географические информационные системы и дистанционное зондирование

Работа с привязанными фотографиями в QGIS с использованием Geotag and import photos

Обсудить в форуме Комментариев — 8Редактировать в вики

Эта страница опубликована в основном списке статей сайта
по адресу http://gis-lab.info/qa/qgis-geotag.html


Описание нового инструмента для работы с фотографиями в QGIS.

Цифровая фотография и система глобального позиционирования GPS все больше и больше входят в нашу жизнь. Сегодня уже почти в каждом телефоне есть и камера, и приемник GPS. А значит привязанные (геотеггированные) фотографии постепенно становятся обычным явлением.

Привязанные фотографии широко используются специалистами разных областей: исследователями дикой природы, биологами, просто любителями (например, участниками OpenStreetMap) и многими другим. Поэтому наличие удобных инструментов для работы с таким данными очень важно. Для QGIS таким инструментом является модуль photo2shape, который не смотря на свою простоту, с поставленными задачами успешно справлялся. Но со временем его возможностей некоторым пользователям стало не хватать. Так появилось расширение Geotag and import photos.

Модуль разработан для Museo Regionale di Scienze Naturali della Valle d'Aosta при спонсорской поддержке Faunalia и предназначен для организации, отображения и анализа фотографий, полученных «фото-ловушками» при наблюдении за дикими животными. Однако, благодаря своей гибкости модуль может с успехом применяться и для решения других задач, а результат его работы хорошо интегрируется с другими инструментами QGIS.

Содержание

[править] Замечания по установке

Расширение Geotag and import photos можно установить из официального репозитория при помощи Установщика модулей QGIS.

Модуль разработан для Quantum GIS 1.8.0 или старше. Кроме того, необходимо наличие в системе exiftool — кроссплатформенного свободного приложения для работы с метаданными изображений (в первую очередь фотографий).

[править] Работа с расширением

После активации модуль добавляет себя в меню «Вектор» и создает три кнопки на одноименной панели инструментов.

Geotagphotos-01.png


Geotagphotos-02.png

[править] Настройка модуля

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

Для этого идем в меню «Вектор → Geotag and import photos → Settings» и в появившемся окне указываем путь к каталогу, где находится exiftool (поле «Path to ExifTool executable»).

Geotagphotos-03.png

В этом же окне, в поле «Path to ExifTool config file» задаётся расположение файла конфигурации exiftool.

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

[править] Геотеггирование

Geotagphotos-04.png

Для привязки фотографий к координатам используется инструмент «Geotag photos».

Geotagphotos-05.png

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

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

Координаты можно ввести вручную либо использовать данные из точечного векторного слоя, загруженного в QGIS. Так, нажатие на кнопку «Populate table» заполнит таблицу координатами точек, подписи будут загружены из поля атрибутивной таблицы, указанного в выпадающем списке «Label field». Пользователю остаётся только указать пути к каталогам с фотографиями.

При необходимости удалить лишние строки таблицы можно при помощи кнопки «Delete row», нажатие «Clear all» очистит всю таблицу. Добавить пустую строку можно нажав на «Add row».

Обработка начнется после нажатия кнопки «OK».

В процессе работы модуль создаёт резервную копию обрабатываемых файлов, добавляя к имени исходного файла суффикс «_original».

Если флажок «Rename geotagged files» установлен, то обработанные файлы будут переименованы в соответствии с шаблоном «каталог1_каталог2_датаивремя_порядковыйномер», где:

  • каталог1 и каталог2 — имена каталогов первого и второго уровня вложенности
  • датаивремя — дата и время снимка, взятые из тегов EXIF
  • порядковыйномер — порядковый номер файла

[править] Запись тегов

Geotagphotos-06.png

Модуль позволяет записывать и обновлять существующие теги EXIF а также пользовательские теги. Для этого предназначен инструмент «Tag photos»

Geotagphotos-07.png

И по внешнему виду, и по функционалу этот диалог похож на предыдущий.

Добавление данных для обработки выполняется вручную: сначала добавляется новая строка (кнопка «Add Row»), затем в соответствующие поля вводятся путь к каталогу («Path to folder»), имя тега («Tag name») и его значение («Tag value»).

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

Если выполняется запись или обновление одного из стандартных тегов EXIF (список), никаких дополнительных настроек не нужно.

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

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

  1. задан в диалоге «Tag photos»
  2. задан в настройках модуля «Вектор → Geotag and import photos → Settings»
  3. в домашнем каталоге пользователя. Важно! В этом случае имя файла должно быть только .ExifTool_config

Таким образом, если конфигурационный файл задан в диалоге «Tag photos» (1), будет использоваться этот файл, даже если в настройках модуля (2) указан другой. Если локальный файл не задан, используется файл, указанный в настройках модуля. Если в настроках модуля ничего нет — используется файл из домашнего каталога пользователя, если он есть.

[править] Импорт фотографий

Geotagphotos-08.png

Инструмент «Import photos» служит для импорта привязанных (геотеггированных) фотографий в Quantum GIS в виде векторного точечного слоя (формат ESRI Shapefile).

Geotagphotos-09.png

Инструмент очень прост в использовании: необходимо указать путь к каталогу с фотографиями («Path to photos») и задать имя выходного shape-файла («Output shapefile»). Модуль может выполнять рекурсивный обход каталогов, для активации этого режима используется флажок «Recurse subdirectories» и добавлять результирующий файл на карту — флажок «Add result to canvas».

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

Ещё одна интересная особенность инструмента — возможность выполнять дозапись в уже существующий файл. Для этого необходимо указать нужный файл и установить флажок «Append to existing file».

Примечание: длина названия столбцов атрибутивной таблицы shape-файлов ограничена 10 символами, поэтому при импорте возможно обрезание названий тегов.

[править] Заключение

Модуль Geotag and import photos позволяет решать широкий круг задач, связанных с обработкой и анализом привязанных фотографий и может быть полезен специалистам разных областей. Результаты его работы хорошо интегрируются с другими модулями Quantum GIS (такими как eVis и Time Manager), что позволяет создавать достаточно сложные системы.

[править] Контакты

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

[править] Ссылки по теме

Обсудить в форуме Комментариев — 8Редактировать в вики

Последнее обновление: 2014-05-15 01:37

Дата создания: 02.08.2012
Автор(ы): Александр Бруй


(Геокруг)

Если Вы обнаружили на сайте ошибку, выберите фрагмент текста и нажмите Ctrl+Enter