Hacker News new | ask | show | jobs
by v-yadli 1548 days ago
PhotoPrism[1]+NextCloud is a potential solution to the Picasa problem. I run them on my personal NAS.

The devops experience is fine -- I can wrap up PWAs for all the devices (PCs and phones) in the family. Need to set up a few systemd timers to synchronize data, build indices and check for PhotoPrism app updates but that's not too bad. Docker makes deployment super easy.

The user experience, hmm, modern, minimalism, tolerable.

Modern = it knows about iPhone live photos and all sorts of photo metadata; has machine learning for classification. Recognizes faces. etc.

Minimalism = just a viewer, no photo editing (Picasa photo editing and the ability to put an album together into one picture totally rocks)

Tolerable = meh classification precision, slow geotagged map (dreaming of Picasa + Google Earth), NextCloud iOS autoupload constantly breaks (you want non-iCloud cloud on iOS and you're not a megacorp huh? good luck) etc.

Conclusion? It has been a decade since Picasa is gone. I'd expect a lot more improvements to happen, but in reality, the best thing we have now is just that. Some good, some bad, some ugly.

[1]: https://photoprism.app/

1 comments

I'm writing PhotoStructure, which you might be interested in. It's self-hosted, but also runs on Windows and macOS without docker, libraries are portable, and photo and video deduplication is robust. Photoprism had a couple features I haven't built out yet, but I'm getting there. More details are here: https://photostructure.com/faq/why-photostructure/

Also, if nextcloud gives you attitude (I had scaling issues with it), know that there are several other alternatives to background phone syncing with your server: https://photostructure.com/faq/how-do-i-safely-store-files/#...

Very interesting project, and nice landing page! Will definitely check it out.

I'm a long time ownCloud/NextCloud user and I'm aware of the alternatives. With multiple android phones come and go in the past 8 years or so, the background upload seems to stand its ground.

The real problem here is iOS and its lack of proper background tasks. See: https://github.com/nextcloud/ios/issues/215 -- they tried every possible way to persuade iOS into running background sync, but still hit and miss.

I have to request access to my wife's iPhone and manually trigger some :)

One small suggestion here -- PhotoPrism went with `tensorflow.js` to load up classification models, and I recommend a "real" TF or PyTorch installation to properly leverage the computation resources. The difference is huge even running cpu-only because it's wasm vs. proper BLAS library.

I worked on a nodejs binding for native ONNX runtime (not publicly) so that's also a possible way out.

> I recommend a "real" TF or PyTorch installation

Yeah, PhotoStructure's feature of "runs everywhere" turns out to be a huge albatross around your neck (for me) when it comes to ML.

Currently, all features are available on all platforms--but having classification plugins that are only supported for specific hardware/OS combinations might be a reasonable solution.

Even better -- things like ONNX Runtime are intended to run everywhere, and take advantage of the cutting edge tensor processors (like the INT8 processors in latest ARM chips)