Photo2shape

Photo2shape analyzes a collection of geotagged images or photos and creates a vector layer, containing their location and some additional information extracted from the EXIF tags.

Installation

The plugin is available via my repository.

To install it, please follow these steps (for more details, see the QGIS User Guide):

  1. Start QGIS.
  2. Go to PluginsManage and Install Plugins….
  3. Go to the Settings tab and click Add… to add a new repository.
  4. Enter repository name, e.g. “Alex Bruy’s plugins”.
  5. Enter the repository URL https://plugins.bruy.me/plugins.xml.
  6. Click OK to close the Repository details dialog.
  7. Go to the All tab.
  8. Search for Photo2Shape, select the plugin in the list and click Install Plugin.

Usage

Once installed and enabled, Photo2Shape is registered as a Processing provider and its algorithms are added to the Processing toolbox under the “Photo2Shape” group.

Photo2Shape algorithms in the Processing toolbox
Photo2Shape algorithms in the Processing toolbox

The plugin provides three algorithms to import geotagged photos. The algorithms share the same parameters and differ only in the backend used to process EXIF metadata. These backends are:

The main difference between backends is in image format support and handling missed EXIF GPS tags, for example, GDAL backend treats 0/0 direction as 0 while QGIS and exifpy backends treat this value as no direction (NULL). Similar discrepancies can occur with other EXIF tags. Besides this minor difference, all algorithms work in the same way.

Open the algorithm’s dialog by double-clicking on the desired tool in the Processing toolbox.

Photo2Shape algorithm dialog
Photo2Shape algorithm dialog

Select a directory with the images in the “Input directory” selector. You can also drag-and-drop files from the file manager to this widget. If images are organized in subdirectories, and you want to process them all, please activate the “Recursive scan” checkbox, otherwise only the top-level directory will be processed.

By default, the algorithm create one output called “Photos locations”: the point vector layer containing images locations. Use the “Photos locations” selector to specify where you want to save this layer or leave it empty to produce temporary scratch layer. The output vector layer will contain a PointZ feature for each successfully processed image and with the altitude metadata used for the Z coordinate. In addition to the geometry, the output layer will contain the following attributes:

Photo2Shape automatically applies style and assigns editor widgets to some attributes to allow better UX when using layer and its attribute table. Namely the “full_path” and “dir_name” fields will use the “Attachment” editing widget with matching settings, the “gps_date” and “image_date” fields will use the “Date/Time” widget.

Attribute form with editing widget
Attribute form with editing widgets

Also if map tips are enabled, it is possible to view a photo preview by hovering mouse cursor over a point.

Custom layer style and maptips
Maptips and layer style created by Photo2shape

If “Photos without geotag” output is enabled, the algorithm also produces a table with information about images which were not processed. This table has following fields:

The rest of the functionality, like support for various output formats, saving to database, appending to an existing file, etc. is identical to other Processing tools. Please refer to the QGIS User Guide to learn more about Processing and how to use it.

Reporting bugs

Please report bugs and submit feature requests via bugtracker.