infrastructure

Immich

Builder, operator 2024–Present Self-hosted photo library
Immich OpenVINO PostgreSQL ML

What It Is

Immich running on the homelab — a self-hosted photo library that looks and works like Google Photos but lives on my own hardware.

It handles the things you’d expect: import from phones, backup on upload, automatic albums, shared links. But it also does the smart stuff that usually requires the cloud.

The ML Part

OpenVINO runs the ML models locally for:

  • Face recognition — groups photos by who’s in them. Surprisingly good at handling the same person across years.
  • Reverse image search — find similar photos or specific objects without tagging them manually.
  • Duplicate detection — catches near-duplicates that aren’t pixel-identical (slightly different angles, crops, etc.)
  • Scene classification — automatic tags like “beach,” “food,” “sunset” without any manual labeling.

None of this leaves the machine. The models run on the homelab’s CPU via OpenVINO, not a GPU — good enough for batch processing.

Why Not Google Photos

Google Photos is better at a few things — video quality, sharing UX, and the occasional magic photo moment. But it logs everything, trains models on your data, and you can’t export cleanly without losing metadata.

Immich has a proper export workflow that preserves all EXIF data, timestamps, and album structure. And when it breaks, I can fix it instead of filing a support ticket.

What’s Still Missing

  • Mobile app is functional but not as polished as Google’s
  • Video processing is slower than the cloud versions
  • The face recognition isn’t perfect — it still mixes up some similar-looking people

It’s good enough for my use case. The photos live where I can reach them.

contact

Pick a channel.