Lizi星图 Atlas

AI 时代的暗房:我为什么还在用胶片

约 1 分钟#摄影 #AI 3 处被引用

当模型能在一秒内生成任何画面,按下快门前那几秒的犹豫反而变得珍贵。

上个月我把一卷过期两年的 Portra 400 装进了那台 1978 年的旁轴。三十六张,花了整整三周才拍完。同一段时间里,我用图像模型生成了大概两千张图。

这个对比让我意识到,颗粒和分辨率从来不是胶片真正的价值。它的价值在于约束:每一次按下快门都有成本,于是每一次按下之前都有一段犹豫。

一卷 36 张

三十六这个数字决定了拍摄的节奏。你会在街角停下,等光线移过墙面,等那个骑车的人进入画面。等待本身就是取景的一部分,模型没有这个过程,它只有结果。

巴特在《明室》里说,照片的「刺点」是那个刺痛观看者的偶然细节。偶然,恰恰是生成模型最难给出的东西,因为它从概率里采样,而偶然是概率之外的事。

模型看见了什么

但我并不打算拒绝 AI。过去十年我扫描了大约四万张底片,它们躺在硬盘里,几乎从不被翻开。问题不在于照片,而在于找不到。

档案的价值不在于保存了多少,而在于你能多快找到需要的那一张。

于是我做了 Contact Sheet,一个完全离线运行的小工具。它用本地视觉模型给每张扫描件写一句中文描述,存进 XMP 元数据里,系统自带的搜索就能直接用。

把底片交给机器

核心逻辑只有几行。重点是 describe() 不联网,照片不会离开这台电脑:

from pathlib import Path
import contact_sheet as cs

model = cs.load("local-vlm-7b-q4")   # 本地运行,不上传
for scan in Path("~/scans/2026").expanduser().glob("*.tif"):
    caption = model.describe(scan, lang="zh")
    cs.write_xmp(scan, caption)

跑完一晚上,现在我可以搜「下雨天 公交站 红伞」,一秒之内找到 2017 年在杭州拍的那张。

犹豫的价值

所以我的结论有点矛盾:生成交给模型,整理也交给模型,但按下快门这件事,我想继续留给自己。那几秒钟的犹豫,是我在这个越来越快的世界里,少数还能主动放慢的时刻。

下一卷是 Tri-X 400。拍完我会在这里更新。