Using the railway network as a flatbed scanner

Using the railway network as a flatbed scanner

将铁路网当作平板扫描仪

Philo’s Website August 17th, 2026 — 4,600 words Philo 的网站,2026 年 8 月 17 日 — 4,600 字

Over the past few months, I’ve been working on using an industrial linear scanning camera to take very wide photos out of trains and ferries. Getting it working has been quite the challenge, but I think the results speak for themselves. 在过去的几个月里,我一直致力于使用工业线性扫描相机,从火车和渡轮上拍摄超宽幅照片。让它正常工作是一项相当大的挑战,但我认为结果足以说明一切。

More pictures are on display in the gallery. I presented a talk on this project at EMFcamp 2026, which you can watch below or read on for the same story in more detail. 更多照片已在图库中展示。我在 EMFcamp 2026 上就这个项目做了一次演讲,你可以在下方观看,或者继续阅读以了解该故事的更多细节。

What am I even looking at?

我到底在看什么?

The process of capturing an image like the one of the container port above: The camera is pointed out of a moving vehicle and is constantly capturing a single vertical line, but a lot thinner. As the camera moves, what exactly it sees is changing. If I capture the lines from the camera quickly enough and stitch them together, I can produce a complete-looking image. It’s a bit more complicated than that and getting the results looking good was rather tricky, but that’s the main idea behind it. 捕捉像上面那个集装箱港口那样的图像的过程是这样的:相机指向移动的交通工具外,并不断捕捉一条垂直线,但比普通的线要细得多。随着相机的移动,它所看到的景象也在不断变化。如果我能足够快地捕捉这些线条并将它们拼接在一起,就能生成一张看起来完整的图像。实际过程比这复杂一些,要获得良好的效果也相当棘手,但这正是其背后的核心理念。

Background and Prior Art

背景与现有技术

Back in the 1990s, digital camera sensor technology hadn’t caught up to the size and effective resolution of medium and large format film, so digital scanning backs were developed. They capture a high-resolution image without needing a giant grid of pixels by moving a single line of pixels (or three lines for color) across the frame. In the intervening years, image sensors have gotten pretty big, but this approach is still cheaper to build for large formats than a giant sensor. 回到 20 世纪 90 年代,数码相机传感器技术尚未达到中画幅和大画幅胶片的尺寸和有效分辨率,因此数字扫描后背应运而生。它们通过在画面上移动单行像素(或彩色三行像素)来捕捉高分辨率图像,而无需巨大的像素阵列。在随后的几年里,图像传感器已经变得相当大,但对于大画幅而言,这种方法仍然比制造一个巨大的传感器更便宜。

I’d been thinking about building my own digital scanning back for my large format camera for a while, but I’ve never quite gotten around to it because building something to mount properly on my camera seemed too daunting. Late last year, I was watching a video on Gigawipf’s medium format scanning camera build and suddenly thought: “what if the entire camera moved and the subject didn’t?” and decided to give it a shot. 我一直想为我的大画幅相机自制一个数字扫描后背,但一直没能付诸实践,因为制造一个能正确安装在相机上的装置看起来太令人望而生畏了。去年年底,我观看了 Gigawipf 关于中画幅扫描相机制作的视频,突然想到:“如果让整个相机移动,而拍摄对象不动会怎样?”于是我决定尝试一下。

Slit Scanning My Sofa

缝隙扫描我的沙发

On the night I thought up this “big scanner” concept, I had to give it a shot. It was a bit late to go out and catch a train, so I scanned my sofa instead. I set my phone on my office chair and slowly pushed it along as it captured a video. I then wrote some really slapdash code to grab the leftmost column (a “slit”) of each frame and combine them into an image. 在我想到这个“大型扫描仪”概念的当晚,我就必须试一试。当时出门赶火车已经太晚了,所以我转而扫描了我的沙发。我把手机放在办公椅上,在录制视频的同时缓慢地推动椅子。然后,我写了一些非常粗糙的代码,提取每一帧最左侧的一列(即“缝隙”),并将它们组合成一张图像。

It looks vaguely like my sofa, but it’s rather squished and the art on the wall is unintelligible. Surely I can do better. I messed around with the postprocessing and doubled every column, which makes it look less squished, but it’s still a mess because I wasn’t pushing the chair at a particularly consistent speed. I knew from the start that I’d need to measure the speed somehow, but I was naïvely hoping that I wouldn’t need to measure it that well and could simply fudge it. 它看起来隐约像我的沙发,但被压得很扁,墙上的艺术品也无法辨认。我肯定能做得更好。我调整了后期处理,将每一列加倍,这让它看起来没那么扁了,但依然是一团糟,因为我推动椅子的速度并不均匀。我从一开始就知道我需要以某种方式测量速度,但我天真地希望不需要测量得那么精确,随便糊弄一下就行。

Industrial Linear Camera

工业线性相机

My source for more lines per second ended up being the Basler ruL2048-19gm, designed to be pointed at fast-moving conveyor belts. The name comes from its ability to read out its 1x2048 pixel image sensor just shy of 19,000 times per second. These capabilities come at a price, however; brand new, the manufacturer’s lowest-spec current models go for around US$700. Thankfully for my wallet, I found mine on ebay for a tenth of that. 我获得更高每秒扫描行数的来源是 Basler ruL2048-19gm,它原本是为对准快速移动的传送带而设计的。这个名字来源于它能够以每秒近 19,000 次的速度读取其 1x2048 像素的图像传感器。然而,这些性能是有代价的;全新的、制造商当前最低规格的型号售价约为 700 美元。幸运的是,我在 eBay 上以十分之一的价格买到了它。