Skip to content

An automation pipeline following a microservice architecture to crop, caption, hashtagify and post photos to social media.

Notifications You must be signed in to change notification settings

nico-i/photo-ops

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

photo-ops

A pipeline passing an image between different micro services to crop, caption, watermark, hashtagify and finally post it to social media.

NOTE: Currently all models used are cpu based.

Services

Process

  1. Receive a new image
  2. Store original image in local storage and save its path
  3. Retrieve the bounding box of the motif of the image and store it
  4. Crop (and compress) the image (resolution is based on a setting) so that the bounding box is centered
    1. Provide the user the option to re-crop the image, especially if the bounding box is too large for the resolution
  5. Generate a caption for the image
    1. Give the user the option to edit the caption
  6. Watermark the image (location is again based on a setting)
  7. Generate hashtags based on the caption

FRs

  • User can upload an image
  • User can crop the image
  • User gets a recommended crop based on the subject of the image (if the bounding box is not too large)
  • User can edit the caption
  • User gets a recommended caption based on the cropped image
  • User can edit the hashtags
  • User gets a recommended hashtags based on the caption
  • User can specify the watermark
  • User can freely move the watermark
  • User can specify the resolution of the image

Technical Requirements

  • The application should be able to run on a local machine
  • The application should be able to run on a server
  • The application should be able to run on a cloud provider
  • The application should be able to run on a container
  • The application should be able to run on a container orchestrator
  • All but the service accessed by the FE should only communicate via gRPC

Running the application

  • docker
  • docker-compose

Development

  • docker
  • docker-compose
  • Go
  • bash

About

An automation pipeline following a microservice architecture to crop, caption, hashtagify and post photos to social media.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published