Inspiration

When generating ideas for our projects, we made sure to draw on our deep interests and passions. One of our most beloved hobbies is photography, especially photographing still-life such as cars and nature. However, one of the most painful problems we experience is after a photography run, as our camera rolls are filled with blurry pictures, duplicates, and low-light photos.

What it does

Shotline AI goes through photos in a folder you upload and removes low-quality images with blur and low-light. It also removes duplicates. Essentially, the main goal is to save storage on your camera roll and make your photo collection more organized with the photos you actually need.

How we built it

We built Shotline AI using Next.js 16, TypeScript, and Tailwind CSS for a fast-performing interactive user interface when dealing with image uploads. Users upload a folder that contains their photo collection. We process and manage the image states using Zustand and preprocess them with a lightweight JavaScript CV algorithm. The optimized batches of photos are sent to ChatGPT 4o. Through the OpenAI API, ChatGPT 4o scans for blur and duplication and analyzes each image's composition. Then, it gives each photo a confidence rating of its quality and a verdict of whether to keep, reject, or ask the user to decide what happens to the photo. Lastly, the user can download the new, cleaned photo ZIP folder, and this folder is generated with the help of the JSZip library, eliminating the need for cloud storage of photos on our servers.

Challenges we ran into

Accomplishments that we're proud of

We are proud of implementing a fully optimized Computer Vision workflow to clean photo libraries efficiently without wasting resources. We also designed a smooth user experience that prioritizes privacy by removing the need for a database and storing images temporarily to save time, space, and user privacy.

What we learned

One of the most important concepts we learned in this project is optimizing AI workflows to reduce resource consumption and cost. Our workflow preprocesses images using a JavaScript algorithm that uses Laplacian Variance and Luminance detection to tag potential areas for ChatGPT 4o vision to pay attention to. This has sufficiently improved processing times and cost savings.

What's next for Shotline AI

As Shotline AI expands into a widespread media organization tool, we plan to move to a structured subscription model. We aim to provide a pro plan that provides access to larger photo processing and better AI models, and a creator tier above it, which provides integration and access to social media posting workflows. Additionally, we plan to transition from a tool to a full-on platform by developing integrations with Google Photos, Apple Photos, Social Media, and Photo Editing software to increase our user base and reach.

Built With

  • canvas-api
  • canvasapi
  • chatgpt4o-api
  • jszip
  • next.js
  • openai
  • sharp-libvips
  • tailwindcss
  • typescript
  • zustand
Share this project:

Updates