Digital Photo Organizer

Cigdem Tuncer
Jan 4 · 3 min read

Our digital photo collections are particularly messy, since we take so many photos from so many different devices, without ever giving much thought to what images we will keep, where we will store them, and how we will ever retrieve them if we need them.

In this project, I would like to talk about the program I developed in order to separate the digital photos we have according to the date and location.

Data Cleaning and Preprocessing

I had 1535 photos worth of 4 years on my cell phone, and I used these photos as my data.

A photo’s EXIF data contains a ton of information about your camera, and potentially where the picture was taken (GPS coordinates). That means, if you’re sharing images, there’s a lot of details others can glean from them.

EXIF stands for Exchangeable Image File Format. Every time you take a picture with your digital camera or phone, a file (typically a JPEG) is written to your device’s storage. In addition to all the bits dedicated to the actual picture, it records a considerable amount of supplemental metadata as well. This can include date, time, camera settings, and possible copyright information. You can also add further metadata to EXIF, such as through photo processing software.

If you use a camera phone or digital camera with GPS capabilities, it can record EXIF geolocation metadata. This is useful for geotagging, which creates all kinds of new possibilities, such as allowing users on photo-sharing sites to see any images taken in specific locations, view where your pictures were taken on a map, and to find and follow social events.

EXIF and especially geotagged data, says a great deal about the photographer, who may or may not want to share all that information. Since EXIF data is a powerful feature you can view it, remove it, and finally, turn off geolocation recording on your devices.

PIL Python Imaging Library is used for image processing. This library provides extensive file format support, an efficient internal representation, and fairly powerful image processing capabilities.

As you see on my data set, you can get date, geo, lat, lon, zipcode, location information from photo’s EXIF data.

Creating Graphical User Interface

TKINTER Python GUI Library is used for creating Windows GUI.

Tkinter is the standard GUI library for Python. Python when combined with Tkinter provides a fast and easy way to create GUI applications. Tkinter provides a powerful object-oriented interface to the Tk GUI toolkit.

The Tkinter package (“Tk interface”) is the standard Python interface to the Tk GUI toolkit. Both Tk and Tkinter are available on most Unix platforms, as well as on Windows systems. (Tk itself is not part of Python; it is maintained at ActiveState.)

How to Use the GUI?

Now time to organize our photos by using GUI.

First, we select our Source and Destination folders.

Next, we have an option to organize our photos by Date or Location. Let’s select one of these.

Finally, we decide to Move or Copy our photos for organizing.


While I was preparing this project, I learned a lot of new things and enjoyed it. I hope you will read and use it with pleasure.

GitHub repository for this project is here.

Thank you for your time and reading my article. Please feel free to contact me if you have any questions or would like to share your comments.

Analytics Vidhya

Analytics Vidhya is a community of Analytics and Data…

Sign up for Analytics Vidhya News Bytes

By Analytics Vidhya

Latest news from Analytics Vidhya on our Hackathons and some of our best articles! Take a look.

Check your inbox
Medium sent you an email at to complete your subscription.

Analytics Vidhya

Analytics Vidhya is a community of Analytics and Data Science professionals. We are building the next-gen data science ecosystem

Cigdem Tuncer

Written by

Database Developer|SQL Developer|Data Science Candidate

Analytics Vidhya

Analytics Vidhya is a community of Analytics and Data Science professionals. We are building the next-gen data science ecosystem

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store