View on GitHub

photo-editor

Charlie and Arnav's Photo Editor

Photo Editor

By: Charlie Babe and Arnav Gupta
Photo Editor

Summary

We created a photo-editing program that allows users to upload a photo, edit it, then download the edited image. When the user runs the photo editor it creates a popup and in it, the current image being edited is displayed. The user can edit the image by changing the blur, brightness, sharpness, contrast, color, rotation, and crop size. The user applies edits to the image by moving sliders or in the case of cropping entering the crop size in a text box. The user imports and export images by pressing buttons which prompt the user to provide the image path and in addition for downloads the name of the new image and image type.

Installation Instructions

Tkinter Documentation
Downloading Tkinter:
pip install tk

Photo Image Library (PIL) Documentation
Downloading PIL:
pip install Pillow

Pytest Documentation
Downloading Pytest:
pip install -U pytest

Running Photo Editor

To run the photo editor run photo_editor_main.py, this can be done by typing python photo_editor_main.py into terminal.

Demo

Below is a video of the photo editor and how to use it. Video Link

Structure

The photo editor is composed of three files photo_editor_main.py, photo_editor_interface.py, and photo_editor_model.py, and is not made in the traditional Model, View, and Control format. Instead, the file photo_editor_interface.py contains both the View and the Control since by using Tkinter Library, the View and Control can not be feasibly separated. The file photo_editor_model.py contains the Model and photo_editor_main.py runs the photo editor. The file test_image.jpg is used for testing purposes through pytest and its path is hardcoded into test_photo_editor_model, which is used for unit testing the photo editor.

link to GitHub repository

About the Authors

Arnav: A first year Olin Student interested in photography, design, and psychology. Arnav’s GitHub Profile
Charlie: A first year Olin student interested in photography, soccer, and computer science. Charlie’s GitHub Profile

Sources

An example photo editor that inspired us!
PIL Examples and Documentation
Tkinter Examples and Documentation