概要
NeoAnalogLab は画像処理ツールに特化したオープンソースのラボです。本プロジェクトは その配下にある RAW → DNG オンライン変換ツールで、Lightroom Classic をインストールすることなく、 クラウドサーバへのアップロードもなしに、ブラウザ内で Canon CR3、Nikon NEF、Sony ARW、 Fujifilm RAF など数十種類のカメラ純正 RAW フォーマットを Adobe DNG に変換できます。
仕組み
本サイトは、オープンソースの Rust ライブラリ
dnglab(コアの crate 名は
rawler、LGPL-2.1 ライセンス)を WebAssembly にコンパイルしています。
RAW ファイルをドロップすると、ブラウザは約 6〜10 MB の .wasm ファイルを
ダウンロードし、デコード、ホワイトバランス行列処理、LJPEG-92 ロスレス圧縮を
すべてあなたのデバイス上で実行し、標準の Adobe DNG 1.4 を出力します。
画像データは 1 バイトもあなたのコンピュータから出ません。 「アップロードしないと約束する」のではなく、技術的にアップロード自体が不可能です。 すべての処理が JavaScript サンドボックス内で完結するためです。バックエンドではなく WebAssembly を選んだ理由はまさにここにあります。写真家の著作権とプライバシーは 利用規約の約束ではなく、技術によって保証されるべきだからです。
なぜ DNG なのか
DNG (Digital Negative) は Adobe が 2004 年に公開した RAW のオープンフォーマットです。 CR3 / NEF / ARW を DNG に変換すれば:
- 特定のカメラベンダ専用デコーダに依存しなくなり、ベンダがサポートを終了しても 開けなくなる心配がない
- 多くの場合ファイルサイズが小さくなり(ロスレス圧縮)、保管と バックアップの容量を節約できる
- 主要な画像エディタすべてで読み取れる ── Lightroom、Capture One、 darktable、RawTherapee など
謝辞
純粋な Rust 実装で高品質な RAW デコードと DNG エンコードを可能にしてくれた dnglab プロジェクトの貢献者の皆様に感謝します。 NeoAnalogLab はその上に WebAssembly ラッパーとピクセルアート風のフロントエンドを 追加したにすぎません。
ソースコードと issue:github.com/dnglab/dnglab。