πΈ As a photographer, I spend a lot of time working with images β not just capturing them, but organizing, resizing, naming, watermarking, captioning, keywording, uploading, checking for duplicates, and updating my website and blog.
Itβs a lot.
So I decided to automate it.
And today, Iβm celebrating the biggest technical upgrade to amir2000.nl to date.
π§© The Challenge: Uploading new photos meant repeating the same tasks again and again:
- Renaming files to clean, SEO-friendly formats
- Resizing and watermarking images
- Generating thumbnails
- Filling out metadata: keywords, captions, camera details
- Avoiding duplicates
- Updating both the live site and the backend database
- Uploading via FTP
- Testing every step after
π οΈ The Solution: One Pipeline, Full Control Over the past few weeks, I built a complete end-to-end system using Python, SQLite, and MySQL that now automates nearly every part of my publishing workflow.
π§ main.py β The Image Processing Core
- Selects images using a custom-built GUI
- Let's me enter subject, location, and target folder
- Renames files smartly based on camera, location, and year
- Automatically applies watermark, resizes, and generates thumbnails
- Captures EXIF and inserts everything into a local review queue
π review_editor.py β Final Check Before Going Live
- Let me review captions, keywords, and all metadata
- One-click actions for Approve / Reject / Pending
- Tracks the original file name for matching RAW files and keeping metadata clean
βοΈ db_uploader.py β Go Live with Confidence
- Uploads to the MySQL database
- Publishes directly to my website via FTP
- Automatically marks files as uploaded to avoid duplicates
- Checks all filenames against used_filenames.json to ensure uniqueness
π What It Looks Like in Action Hereβs how it flows:
- I select a group of images at once, depends on the folder/suject.
- The system smartly renames each based on content
- It creates thumbnails and resized images instantly
- Captions and keywords are generated with help from a learning template
- I review and click Publish
- The site updates instantly, with zero duplicates
β Human-checked
β Live in seconds
π§ Whatβs Next? This is just the beginning.
Coming soon:
β¨ Model Training β A custom model that learns from my edits to improve caption and keyword suggestions
π Smarter Timelines β Auto-grouping photos by city, event, or series
ποΈ Batch Metadata Editor β To help curate and reprocess my full archive of 32,000+ images
π₯οΈ See It Live:
π¬ Join the Conversation If you love photography, process, or creative automation, I hope this inspires you to build your own system.
And if you're curious how it works behind the scenes β feel free to reach out or follow along.
You can find the project in GitHub|anir2000.nl_image_automation.
There's much more to come.
β Amir
Photographer, Builder, Dreamer
amir2000.nl
Comments
No comments yet. Be the first to comment!