- Bozen Peng
- Innocent Munai
We have made a smart photo editor with a user-friendly GUI. This app is web-based, empowering cross-platform capability, and works well with both mouse and touch screen.
Enhancing
Reset to Original, Gray-scale, Contrast, Brightness, Saturation, Blurring, Sharpness, Auto Detail Enhance
Filter
Painting, Oil Painting, Canny, Sepia, Pencil Gray, Pencil Color, Invert, Autumn, Cool Wind
AI Detection
Faces, Eyes, Smile, Full body
- Streamlit: To create the web-based GUI.
- Pillow: The library for basic adjustment of pictures
- OpenCv: The library that provides the machine learning capability to process pictures
- Numpy: The library that provides the computational capability to process the data extracted from pictures
- os: handling system path
Link: https://smart-image-editor.herokuapp.com
Note: Due to the memory quota limitation of Heroku free version, uploading large image may cause crash. Thus, online version is currently only for demo purpose, and we recommend deploying this app locally.
- Download the code
- Install all required libraries with requirement.txt
- Move config.toml to ~/.streamlit/ to configure the streamlit theme properly
- Start the program by terminal:
streamlit run /whereyoudownload/image-editing-app.py
- The browser should automatically pop up. Or, you may enter the local host address from the information printed on the terminal
- This is a final project of CS 32 instructed by Professor Michael D. Smith
- Course link: https://scholar.harvard.edu/mikesmith/classes/cs-32-computational-thinking-and-problem-solving
- Professor link: https://scholar.harvard.edu/mikesmith
- We have additionally learned the basic ideas of using Streamlit, OpenCv, Image, and Pillow modules from this Udemy course: https://www.udemy.com/course/build-a-web-app-with-python-and-opencv-image-editing-app
- Instructor: Gasmi Haithem (https://www.udemy.com/user/gasmi-haithem-2/)
- We have utilized the official documentations of the libraries used in this code.
- We have utilized various online resources to get inspiration and solve problems.
- Color design inspired by Nippon Colors: https://nipponcolors.com/
- Cascade Classifiers are from OpenCV: https://github.com/opencv/opencv/tree/master/data/haarcascades