Line scan camera image processing for train photography
31 comments
·August 23, 2025JKCalhoun
Reminds me of the early experiments with using a flat-bed scanner as a digital back. Here is one: https://www.sentex.net/~mwandel/tech/scanner.html
bscphil
IMO the denoising looks rather unnatural and emphasizes the remaining artifacts, especially color fringe around details. Personally I'd leave that turned off. Also, with respect to the demosaic step, I wonder if it's possible to implement a version of RCD [1] for improved resolution without the artifacts that seem to result from the current process.
dllu
Yeah I actually have it disabled by default since it makes the horizontal stripes more obvious. Also, I found that my vertical stripe correction doesn't work in all cases and sometimes introduces more stripes. Lots more work to do.
As for RCD demosaicing, that's my next step. The color fringing is due to the naive linear interpolation for the red and blue channels. But, with the RCD strategy, if we consider that the green channel has full coverage of the image, we could use it as a guide to make interpolation better.
Cloudef
Yeah, i dont think the denoised result looks that good either
its-summertime
> Hmm, I think my speed estimation still isn’t perfect. It could be off by about 10%.
Probably would be worth asking a train driver about this, e.g. "what is a place with smooth track and constant speed"
tecleandor
Maybe an optical flow sensor to estimate speed in real time?
lttlrck
They have an amazing painterly quality. I'm not a huge train fan but I'd put some of these on my wall.
card_zero
It's neat that it captured the shadow of the subway train, too, which arrived just ahead of the train itself. This virtual shadow is thrown against a sort of extruded tube with the profile of the slice of track and wall that the slit was pointed at.
GlibMonkeyDeath
If you like this sort of thing, check out https://www.magyaradam.com/wp/ too. A lot of his work uses a line scan camera.
JKCalhoun
The video [https://www.magyaradam.com/wp/?page_id=806] blew my mind. I can only image he reconstructed the video by first reconstructing one frame's worth of slits — then shifting them over by one column and adding the next slit data.
chrisjune
How to receive order using panda rider app
Retr0id
reading this is how I imagine it feels to be chatgpt
ncruces
That's a lot more than I thought I'd want to know about this, but I was totally nerd sniped. Great writeup.
j_bum
What a beautiful example of image processing. Great post
whartung
These are amazing images. I don't understand what's going on here, but I do like the images.
Etheryte
Imagine a camera that only takes pictures one pixel wide. Now make it take a picture, for example, 60 times a second and append every pixel-wide image together in order. This is what's happening here, it's a bunch of one pixel wide images ordered by time. The background stays still as it's always the same area captured by that one pixel, resulting in the lines, but moving objects end up looking correct as they're spread out over time.
At first, I thought this explanation would make sense, but then I read back what I just wrote and I'm not sure it really does. Sorry about that.
JKCalhoun
Yeah, like walking past a door that's cracked just a bit so you can see into an office only a slit. Now reconstruct the whole office from that traveling slit that you saw.
Very cool.
whartung
No, thank you. This was perfect. It completely explains where the train comes from and where the lines come from.
Lightbulb on.
Aha achieved. (Don’t you love Aha? I love Aha.)
kiddico
It made sense to me!
null
Wow, great article. I love the cable car photo https://upload.wikimedia.org/wikipedia/commons/e/e0/Strip_ph...
Must be somewhat interesting deciding on the background content, too.