Hacker News

Timeline Scan – AI fixes the dates on your scanned photos

20 points by HoserHoser ago | 21 comments

mbauman |next [-]

The problem I have is that there's no way to embed an "uncertainty" into EXIF metadata in a standard way. I just want some photos to be "Summer 1987" or "February 1976" or even "1981-1983"... but I _have_ to invent some complete timestamp down to the second and then just rely upon captions or comments.

But I generally know the dates far better than any AI could guess (based on ages of the individuals I know).

hamdingers |root |parent |next [-]

I figure out the most significant value I can and just zero/one out the rest. So "February 1976" becomes 1976-02-01 00:00:00. That is an unlikely timestamp, so it tells me the whole thing is an estimate.

This convention works for me because I'm dating slides and negatives taken by deceased relatives before I was born, mostly of children I've only known as adults. Aside from birthday parties I never know the specific day, and it's unlikely anyone in the future will really care beyond having the pictures in a reasonable overall order.

HoserHoser |root |parent |previous [-]

You supply the ages with the software and AI uses that just like you would.

If it doesn't know the month, it puts it in June. If it doesn't know the day, it puts it on the 15th. But yeah, old photos with EXIF is more to be used by putting them in an order of photo1 comes after photo2, etc. Not necessarily photo1 is exactly 1982, etc. Viewing and enjoying old family photos is more about the order, and less about the exact year (at least for my family and friends).

meatmanek |next |previous [-]

> Scan the backs

I guess this is assuming some scanning rig (camera scanning?) where it only takes a few seconds per photo. With a flatbed scanner, scanning the backs is almost certainly going to take longer than just typing dates in manually.

HoserHoser |root |parent [-]

Epson FastFoto 680W is what most people use for scanning their collections which scans the fronts and backs at the same time.

(For flatbed scanning, I actually made a Mac app to help scan fronts with backs, lol. https://timelinescan.com/frontback-scanner [it's not as refined yet])

Getting handwriting from the back along with a potential date make scanning the backs worth it, for me, on a flatbed.

jedbrooke |next |previous [-]

OCRing handwritten dates and printed timestamps seems useful, but how is “AI” supposed to know when a photo is taken just by looking at it?

At least the scan date is a real piece of data that could be useful. This seems like it would cause more harm than good by polluting the data with nonsense, unless the added dates are clearly labeled as estimates

HoserHoser |root |parent |next [-]

It does well with visual queues in the photo if there is no handwriting for dates or timestamps. It's definitely not perfect but it will get it so your photos feel chronological in the sense of "photo A is older than photo B".

The way to increase the accuracy is to add a birth year to face tagging so each photo has an anchor that the AI uses -- "This photo has joe, joe is born in 1950" and then it will look at how old joe is and if joe looks like 10 years old, it knows the photo is around 1960.

SirFatty |root |parent |previous [-]

Yeah, seems like snake oil with a dash of malarkey.

HoserHoser |root |parent [-]

Give a try and then tell me what I need to improve on. It solved the issue for my 8,000 family photo scans and I built the tool to help others!

Just sign up for an account and you can date 50 photos for free.

bashtoni |next |previous [-]

Seems like a great idea for an Immich plugin. I'm really not convinced I or anyone I know would _pay_ for AI to guess the date a photo was taken though.

HoserHoser |root |parent [-]

I do integrate with Immich. It will find photos with missing EXIF data automatically for you. It will also only write back metadata to update the photos in place, so you don't have to do the upload-download-reupload dance.

sixtyj |next |previous [-]

> Google Cloud (Gemini Enterprise): AI date extraction. Photos are sent to Gemini Enterprise solely for date extraction and are not used to train Google’s models. Microsoft PhotoDNA: child-safety hash scanning (see “Child safety scanning”).

Technical background.

xp84 |root |parent |next [-]

> child-safety hash scanning

Suddenly I'm reminded of an old baby picture in an album somewhere, of me not wearing any clothes. If the other kind of "safety" scanning[1] is done, it might be possible to get arrested for a photograph of myself.

A story came out a few months ago about a guy who had a photo of his toddler's rash-affected groin area (taken at the doctor's behest) who had some essential account (Google?) permabanned because of it.

HoserHoser |root |parent [-]

Lol. No, it scans against known photos with issues. Those types of photos AI won't process though, so we have to estimate them by just using neighboring photos.

HoserHoser |root |parent |previous [-]

I work at a large social media company that handles photos. :salute:

HoserHoser |next |previous [-]

Scanned photos all show up on the day you scan them. Timeline Scan estimates when each photo was actually taken and writes it into the file’s EXIF, so your archive sorts chronologically in Immich, Google Photos, or Apple Photos (or by folders if you’re one of those people). I increased the trial to 50 photos; try it out and let me know what you think!

tobinfricke |root |parent [-]

Based on what? Each image individually? Or does it try to cross-reference images within the collection and with events in your life, etc?

HoserHoser |root |parent |next [-]

It does both. Each image and then neighbors. Usually you scan photos that are printed in related-date order. So it does look at neighboring photos to date.

You can tag faces and add a birthdate; so sort of. Like it'll recognize a birthday party photo and then if it's tagged with that person in the picture, it will date it on their birthday.

cwmoore |root |parent [-]

I think this method could do well with handwritten journal entries and artists’ sketchbooks, that add another dimension of information.

blitzar |root |parent |next |previous [-]

haircuts

doesn't handle 80's themed parties very well.

nom |root |parent |previous [-]

vibes

yeah879846 |previous [-]

[dead]