ImportPhotos #QGIS


How to cite

M. Kyriakou, G. Christou, end P. Kolios, “ImportPhotos: a QGIS plugin to visualise geotagged photos”, Zenodo. (doi:10.5281/zenodo.3384824)

author={Kyriakou, Marios and Christou, Georgios and Kolios, Panayiotis},
title={ImportPhotos: a QGIS plugin to visualise geotagged photos},
year= {2019},
DOI= {10.5281/zenodo.3384824}}

[the_ad id=”2737″]

ImportPhotos v2.2.3

  • Add field column Images to use with QGIS plugin qgis2web directly OK
  • Test with Linux mint.
  • Change the position from the point of the photo.
  • Show next photo based on the timestamp or location

ImportPhotos v2.2.2

  • Add the option to import photos only on canvas extent
  • Add filters gray and mirror, mono
  • Filters edges, averaging, 2D convolution, gaussian, gaussian highpass, median (needed: pip install opencv-python)
  • Add bands red, blue, green
  • Add name title and save as option
  • Fix transparent left, right buttons for all themes (adsbygoogle = window.adsbygoogle || []).push({ google_ad_client: “ca-pub-1299273813983849”, enable_page_level_ads: true });

[the_ad id=”2743″]

ImportPhotos v2.1

Fix tabs & update buttons
Fix zoom to selected photo


ImportPhotos v2.0

[the_ad id=”2743″]

New features:


from qgis.utils import plugins
 if 'ImportPhotos' in plugins:
         plugins['ImportPhotos'].import_photos('C:\\Users\\USERNAME\\Desktop\\20170911', 'C:\\Users\\USERNAME\\Desktop\\example.shp', "C:\\Users\\USERNAME\\Desktop\\newstyle.qml", False)
  #or  #plugins['ImportPhotos'].import_photos('C:\\Users\\USERNAME\\Desktop\\2#0170911', 'C:\\Users\\USERNAME\\Desktop\\example2.shp', "", False)

2. Add group with layer

3. Fix issue in right/left transparent buttons

4. Add fields title, user comment and relative path
5. Change main ui window

[the_ad id=”2737″]

This tool can be used to import Geo-Tagged photos (jpg or jpeg) as points to QGIS. The user is able to select a folder with photos and only the geo-tagged photos will be taken. Then a layer will be created which it will contain the name of the picture, its directory, the date and time taken, altitude, longitude, latitude, azimuth, north, camera maker and model and relative path. The plug-in doesn’t need any third party applications to work. It has two buttons; the one is to import geotagged photos, and the other one is to be able to click on a point and display the photo along with information regarding the date time and altitude. The user can create one of the following file types: GeoJSON, SHP, GPKG, CSV, KML, TAB. When the user saves a project and wants to reopen it, the folder with the pictures should stay at the original file location or moved at the same location of the project (e.g. *.qgz) in order to be able to view the pictures. Mac users please refer to the Read Me file for further guidance.

QGIS 2 & QGIS 3 ( Drop updates for QGIS 2 #v1.6 , v1.7)

Mac Users. Requires the following Python Modules to be installed: UnixImageIO, FreeType, PIL Please visit:


Older versions

25 thoughts on “ImportPhotos #QGIS

    1. Hi Jim,

      Are we sure if the photos have lon / lat? Please check that. Also, what is your system? Linux/windows/mac? Thanks.


  1. It´s not working with mac..!!! what can I do? I need to load 1500 pictures… what do you recomend? Thanks


  2. Hi there,

    QGIS gives me a Python error when I try to click on photos:

    AttributeError: ‘ImportPhotos’ object has no attribute ‘prj’

    Any ideas on what could that be? Thank you in advance.


    1. I had similar issue. I think there is problem with diacritics in path name. Try changing path and filename to something without them (for example Ą to A or ó to o).


  3. HI,
    It does not work in Qgis 3.4 (MacOS 10.11). It says : Please install python module “exifread” or “PIL”, but PIL is installed in Python 2.6 and 2.7. And Exifread is installed in Python 2.7 too. Importphotos works in Qgis 2.18.


  4. Hi there,
    I am a high school geography teacher. Last week, I kowed about the Importphotos plugin and started using it. Currently, it is possible to click the icon on the PC screen and draw a photo. However, in the html file processed by qgis2web, the image is not displayed even if the icon is clicked.
    I’m sorry for this very rudimentary question, but please help me.


  5. Great plugin, have used it with Qgis 3.4 on Windows with success
    Now I test with Linux Mint and Qgis 3.10
    Has Importphoto been used with 3.10?
    I can import photos , it generates the pointlayer.
    However, when clicking on a photo-point, it shows nothing.

    Any hints are welcome!


  6. Hello,

    This plugin is great. I have it working perfectly in a Windows system, but get the following weird behavior in my Mac:
    the photos are imported and displayed correctly upon click, but if I use the “previous” and “next” arrows, photos are presented in a random order. They are not shown based on timestamp, nor latitude or longitude, or photo name, or even ID field. All those fields show accurate information.

    Has somebody else seen this problem?


  7. Have you looked into the attribuite table.
    I believe the order for “previous” and “next” is the one in the attribute table, ordered by “ID”


  8. Great plugin, two small problems (QGIS 3.10 with Version 2.2.2 of ImportPhotos):
    1) Viewing a photo takes very long, with large image numbers on the layer. With 17.000 photos I am at around 5 seconds for opening the popup. With 17 photos it opens instantly. The info function of QGIS, that shows the attributes of a clicked photo point still works in milliseconds. So getting the photo URL should not take 5 seconds.
    2) Selecting another photo point opens a new popup every time, which is ok I think, but the previous and next arrows in all popups use the value of the last popup.


  9. Hi lads – great pluggin – been using for years.

    Just hit a problem using it with QGis 3.10.4A.

    Import now fails with this error reported, so any ideas how to fix?:-

    self.import_photos(self.directoryPhotos, self.outputPath, self.load_style, showMessageHide)
    File “C:/Users/gavin/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\ImportPhotos\”, line 458, in import_photos
    self.extension = self.extension_switch[self.extension.lower()]
    KeyError: ”


  10. Is it possible to use the same formatted vector (the same table) to run sound files?
    I’ve tried by copying the record for a photo and then modifying paths and name, but still get
    the same display as for the photo (obviously with no image) when I click.


  11. 2021-04-12T15:11:18 WARNING Traceback (most recent call last):
    File “/home/isdhl18/.var/app/org.qgis.qgis/data/QGIS/QGIS3/profiles/default/python/plugins/ImportPhotos/”, line 388, in ok
    self.import_photos(self.directoryPhotos, self.outputPath, self.load_style, showMessageHide)
    File “/home/isdhl18/.var/app/org.qgis.qgis/data/QGIS/QGIS3/profiles/default/python/plugins/ImportPhotos/”, line 456, in import_photos
    self.extension = self.extension_switch[self.extension]
    KeyError: ‘.apefil’


  12. Hi,

    I’d like to ask how can I watch photos after moving whole project with photos (related directory stays the same). Just not working for me even if photos and project file are in the same folder. Any idea?



  13. Hello!

    First of all, thank you for the good and very very helpfull work ! you have no idea how glad i am that this pluggin even exist! XD

    I still have a tiny problem on QGIS 3.18. I imported my photos, everything seems to work correctly, but when i try to use “click photos”… nothing happens. i thought maybe there was to many photos at the same point, but it doesn’t work either for a lone point with only one photo.

    Any idea on what may cause that?


  14. OK, after further research, it works… it just take almost 5 minutes to load, and the photo are completly random, which means browsing between specific photos will take way to much time. for now, Evis seems to be the only viable solution, even if it require using an earlier version on Qgis^^

    Still, i will try the futur version of import photos, maybe one day…^^


  15. Hello. I can’t get the plugin to work. Says “No new photos were added”. I’m running QGIS 3.10 on Ubuntu 20.04. ImportPhotos version 2021-09-19 ImportPhotos 3.0.1. Photos tagged with Redmi Note 9 GPS. Thank you.


  16. I’ve been experimenting with a sample photo of a work project and it worked perfectly.
    But when I try to do it with all the photos of the project (about 3000) it gives me this error:
    “Could not store attribute” Azimuth “: Could not convert value” “to target type”
    Any idea?


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s