无需安装
胶片引擎编译成 WebAssembly,直接在浏览器里运行;浏览器支持 WebGPU 时用你的 GPU 计算。照片不会上传。还可以把它安装成应用,离线使用。
01 ▸ 什么是 SPEKTRAFILM
spektrafilm 是一个开源的 Python 项目,用物理方式模拟胶片摄影。它把你的照片还原成光,曝光到真实胶片的染料层上, 再通过放大机把底片印到相纸上,最后扫描出结果。每一步都使用厂商为这款胶片公布的数据。
但要运行它,得先配好 Python 环境,冲一张大尺寸照片也可能要一分多钟。 Negs 把同一套模型做成了一个可以随手上手的应用。
02 ▸ NEGS 带来了什么
胶片引擎编译成 WebAssembly,直接在浏览器里运行;浏览器支持 WebGPU 时用你的 GPU 计算。照片不会上传。还可以把它安装成应用,离线使用。
拖动任何一个滑块,画面都会跟着变化,胶片、相纸和颗粒的作用一目了然。
支持大多数相机的 RAW 文件,包括 6000 万像素的中画幅,也支持 JPEG、TIFF 和 PNG。RAW 可以先设置白平衡,再交给胶片。
在桌面版上,一张 6000 万像素的照片用 GPU 全分辨率冲印只要 2.1 秒;同一台 Mac 上 Python 版 spektrafilm 需要 108 秒。性能测试。
可以导入 Python 版 spektrafilm 保存的预设,包括社区分享的预设;也能把自己的预设存成文件或链接分享出去。
裁剪和拉直,加上白边、细线框,或带该胶片片边字的 35mm 片框;导出 8 位或 16 位的 TIFF、PNG、JPEG,或 .cube LUT。
03 ▸ 前后对比
RAW · Apple 默认
Negs · Portra 400
拖动对比:左边是 macOS 默认显示的 RAW,右边是 Negs 用 Kodak Portra 400 冲印的效果。
04 ▸ 使用方法
用较新的浏览器打开 getnegs.com/try。加载一次之后,离线也能用。
拖进一张 RAW、JPEG、PNG 或 TIFF,也可以先试试示例照片。
Kodak Portra 400 配 Portra Endura 是不错的起点。也可以不用相纸,直接扫描底片。
设置曝光、颗粒和光晕,加上边框,然后以全分辨率导出。
05 ▸ 胶片
Kodak、Fujifilm 和 Ilford 的胶片名称是其各自所有者的商标。Negs 与这些公司没有关联。
不是。Negs 是一个独立的免费开源项目。它的胶片模型和胶片数据来自 Andrea Volpato 的 spektrafilm,经由 turbasvin 的 Rust 移植版 spektrafilm-rs。Negs 的问题请到 Negs 的 GitHub 反馈,不要提交给 spektrafilm。
非常接近。Negs 的 64 位参考渲染与 Python 版 spektrafilm 做过对比测试,误差在百万分之一以内;GPU 渲染与参考渲染的差异在 ΔE00 0.02 以内;网页版与桌面版的差异不超过一个 8 位色阶。有两项色彩管理默认值与上游有意不同。详见开发说明(英文)。
有。网页版已支持简体中文:浏览器语言为中文时自动显示,也可以在“设置 › 语言”中切换。Mac、Windows 和 Linux 版目前仍是英文界面,中文版正在制作中。
不会。整个模拟都在你的设备上、在浏览器里完成。你打开的照片不会离开你的电脑。
较新的浏览器都可以。浏览器支持 WebGPU 时,Negs 会用 GPU 冲印;否则使用 CPU,速度会慢一些。首次打开需要下载引擎和胶片数据(几十 MB),之后会缓存在浏览器里。
可以。Negs 也有桌面版:macOS 14 或更高版本(Apple 芯片与 Intel)、Windows x64,以及 x86_64 Linux(Flatpak、AppImage 或 Arch 软件包)。桌面版使用同一套引擎,并用原生 GPU 渲染。安装包托管在 GitHub 上,在中国大陆下载可能较慢;网页版则无需下载安装包。
免费。Negs 是采用 GPL-3.0 许可的开源软件。来自 spektrafilm 的胶片配置文件采用 CC BY-SA 4.0 许可。