私の35ミリフィルムスキャンパイプラインの自動化

2026/10/04 2:35

私の35ミリフィルムスキャンパイプラインの自動化

RSS: https://news.ycombinator.com/rss

要約▶

Japanese Translation:

プロジェクトの主な成果は、従来の手作業による方法で巻頭ごとに約 4 時間かかっていたため、関連する燃え尽き症候群を大幅に軽減した、効率的なデジタルワークフローの実現です。このワークフローは、以前 AI エージェントを用いてハードウェア制御を試みた際、Canon AE-1P SLR スキャナーが誤作動して損傷し緊急修理が必要となった調査から発展しました。調査により、カーリッジの逆方向移動がモーターをエンドストッパに押し込み、白黒の空スキャンを引き起こしていたことが判明しています。最終的なワークフローでは、VueScan ソフトウェアとカスタムコード(ネガ変換用)を組み合わせており、フレーム位置合わせには特定の numpy ルーチンを利用します。尘埃と傷の除去については、画像解析を用いてサングリンツ(陽光による反射光)やグレインなどのアーティファクトを識別し、コンテキスト認識閾値付きの LaMa 補完モデルを適用します。メタデータ指数化は、Ollama上でローカルに動作する Qwen3-VLによって処理され、カメラ、レンズ、日付、フィルムタイプといった検索可能なタグを迅速に生成します。ストレージは 4TB ハードドライブ上に保持され、サイトホスティングは Cloudflare R2 を使用しており、従来の開発手法に対する費用対効果の高い代替手段を提供しています。プロジェクトの culmination(集大成)として、ユーザーが 35mm ロールを仮想上で巻き戻し、オリジナルのラベルアートを楽しむことができる没入型の Three.js エクスペリエンスを実現しています。完全自動化されたエンタープライズソリューションを採用するのではなく、プロセスに対する自己制御を維持することにより、著者は個人的なクリエイティブ表現を最優先しつつ、長き編集セッションに縛られることなく画像撮影の行為そのものを享受しながらアーカイブの拡張を続けています。

本文

デジタル暗房:アナログ写真の AI 自動化とウェブ公開プロジェクト

プロジェクトの背景と課題

写真撮影には、映像をレンズで捉え、構図を整え、完成した作品に手掛けるという特有の感触があります。作者はデジタル一眼レフやミラーレスカメラを試みた後、父が愛用していたCanon AE-1Pというアナログ・スローアクシスカメラに深い愛情を抱くようになりました。

フィルム写真撮影はシンプルでありながら、以下の特性を持っています。

  • 光をプラスチックのフィルム上に露光させ、化学的にイメージを焼き付ける技術が必要です。
  • 照明条件、フィルムの種類、レンズによって魔法のようにユニークな構図が得られます。

しかし、何年もの作業を経て作者は以下の課題に直面しました。

  • 膨大な手作業: 1 ロール(36 枚)のスキャンと編集に平均約4 時間を要します。
  • 繊細な作業環境: フィルムは繊細で、ホコリや傷を防ぐため慎重さが求められます。
  • 時間の偏り: 画像処理に費やす時間が撮影する時間を上回っており、疲弊しました。

そこで、「業務効率化(streamline operations)」を図ることを目的として、デジタルラボ全体の自動化と、個人による公開サイトの構築を目指しました。


仮説:AI を活用した自動化への試行錯誤

まずは「プロセスから完全に外れること」を目指し、Claude とオープンソースのスキャナードライバースタック(SANE)を用いてスキャンから編集までエンドツーエンドを任せることを試みました。

失敗とトラブル

  • 事故: Claude が SANE を使用した際、X/Y 軸の方向を逆転させ、スキャナーのギア機構に破損に至らせる事態になりました。
  • 対抗措置: 新品購入費用の 200 ドル節約のために緊急修理(手術)を余儀なくされ、時間を浪費しました。

チャットログ:スキャナーの診断

状況: スキャン結果が白く映り込み、センサー全体で障害物がない光線が直進している状態。

Shan: 「フィルムの装着は確認しましたが、設定の問題かもしれませんね。」 Claude: 「856 行すべてが同一の『滑らかな垂直帯模様』です。照明ムラではなく、センサーが一直線の光を見ています。」 Shan: 「Vuescan では動きませんでした。「カチッ」という音がした気がします。」 Claude: 「『カチッ』はスキャン操作中に発生しました。Genesys バックエンドが carriage(移動機構)を元に戻すために、盲目な逆方向移動を実行しましたが、モーターがすでにバックストップ逆向きに駐車している状態をさらに押し続けた結果です。」 結論: 7 回のスキャンで 7 回この現象が起きたため、システムとして成立せず、既存のシステムベースでの運用に戻す判断がなされました。

解決策の確立

  • 互換性の高いライセンスソフトウェア「Vuescan」を採用。
  • ロボットアームによる物理的ローディングは自動化未定のため、人工操作を維持しつつ後工程との連携を図る方針で再構築しました。

解決策:Studio Learning(スタジオ学習)のシステム

失敗から思考プロセスを転換させ、Vuescan スキャンデータを処理する完全なスイートが完成しました。

1. ネガからポジへのコンバージョン

  • 手法: NumPy ルーチンによる簡潔なコードで反転処理を実行。
  • 特徴:
    • ロール全体の色分布を測定し、各フレーム内で調整を行うことで36 フレーム一貫性を達成しました。
    • AI エージェントは「ロールの空白リードスロット」を基準として色補正の重みを決定。
    • 夕日のような劇的な色調修正は避け、統一された見た目に保ちます。

チャット:変換テストの結果

  • 29 フレームのうち 28 フレームで通過しました。
  • カスタムコンバージョンは十分な品質であり、darktable の介入が不要です。
  • AI 出力は明るくニュートラルですが、人間による微調整(好みの色味)も可能にしています。

2. ホコリ除去と編集

  • 課題: 単純なコードでは解決できず、モデルの活躍が求められます。
    • 例:ビーチの写真で約 2,000 個の太陽光反射(サングリント)を誤ってホコリと検出する事態が発生しました。
  • 対策:
    • 周囲が滑らかな領域でのみ処理を行う文脈付与。
    • 検出された斑点はLaMa(インペインターモデル)で埋められ、Nearby フィルム部分の詳細をコピーしてパッチ適用。Photoshop の修復ツールに似た仕組みです。
  • 運用の柔軟性:
    • すべての領域を自動埋める必要はありません。カスタムしきい値を設定。
    • 粒状な斑点などは検査のために保持したり、個別/バッチで承認・却下できます。
  • パラメータ制御: 露出やコントラストなどの調整は、AI がアクセス可能な範囲に埋め込みます。

3. フレームレビュー

  • ステータス表示:
    • 🔵 緑色の円: ホコリ除去が自動で完了。
    • 🟡 黄色い円: 手動での検証待ち。

4. メタデータインデックス化

  • 目的: データインデックス化の負担を解消し、後からの検索を容易にする。
  • 仕組み:
    • スキャンが入力されると、Ollama で動作するQwen3-VLが各完了フレームを確認します。
    • 約5 秒(タグドラフト作成は 3 秒)でタグを生成し、カメラ情報・レンズ・日付・フィルム銘柄を加えて包括的なライブラリを構築。

効果: このプロセスにより、作者の役割は「処理」から「撮影した結果を見ること」と「次へのインスピレーションを得ること」へと移行しました。


ギャラリー:保存から公開へ

20 ロール以上のパイプライン通過後、次なる課題は「どこに保存・共有するか」でした。現在は 4TB HDD に常時保存しつつ、Web 経由での共有も目指しています。

公開ワークフロー

  • 環境: Cloudflare R2 バケットへのアップロード。
  • 機能: スタジオ機能を拡張し、公開機能を有効化。
    • 選択されたフレームは、表示順に R2 にアップロードされ、タグ付きで公開されます。

ロールごとの写真紹介(インタラクティブな展示)

  • コンセプト: サムネイルグリッドの「安っぽさ」を避け、現像ラボでのフィルム展開風景から着想を得た**「現実主義的表現」**。
  • 実装:
    • 3.js
      でモデル化したフィルムカニスターが覆われたフェルト製のテーブルを実装。
    • カニスターには実際のラベルアートとランダムな傷跡(スクラッチ)を設定。
    • インタラクション: 一つを持ち上げるとフィルムを引き出し、フレームを露光表示。その後再びフェルトテーブルへ落下する仕組みです。

総括

  • プロジェクト規模: 11 日間の開発で64 コミット。
  • 成果物: 2020 年から現在までの計**22 ロール(314 枚)**の写真が収められたギャラリー。
  • 未来への計画: 継続的な資金投入により、ロールの購入・現像を行い、画像を追加していく予定。

このプロジェクトの魅力

単にスキャナーとプロセスを扱うだけでなく、**「手作業のプロセスを楽しみつつ他者に任せる」**というジレンマを解消しました。

  • コンピュータ画面から離れ、世界を探求する時間を存分に楽しむことに集中できます。
  • 異なる視点から写真を捉える行為そのものが魅力であり、暗室での作業のような没入感を提供しています。

これらはすべて電源を切っても楽しんでいただける、インターネット上の私の一角となっています。

同じ日のほかのニュース

一覧に戻る →

2026/10/04 21:51

Qwen3.8Flash Next(125B)を消費者向けハードウェア(RTX4090)上で100T/sで動作させます

## Japanese Translation: Strata は、ISTA-DASLab、UkisAI、Unsloth によって開発されたオープンソースで MIT ライセンス付与のプラットフォームであり、Windows または Linux PC に NVIDIA または AMD GPU(VRAM 12GB 以上)を搭載している場合、完全にオフラインで強力な Qwen3.8-Flash-Next AI モデルを実行することを可能にします。必要最低限のリソースとしては、RAM 32GB と空きディスク領域約 80GB が求められます。このローカル実行は、情報をデバイス外に出さないことによりデータプライバシーを確保します。RTX 5070 でのベンチマークでは、プロンプト読み取り速度が 2,600 トークン/秒を超え(Q2_0 では書き込み速度最大 94 トークン/秒)、モデルサイズや圧縮レベルにより異なります。この効率は、GPU、RAM、CPU にわたってタスクを知的に分配するユニークな「共有メモリー」アーキテクチャによって達成されており、これにより数千個の専用プロセッサを効果的にシミュレートしています。ユーザーは自動インストーラーを通じて Strata をインストールでき、ハードウェアチェックを行い、モデルを選択(Q2_0、IQ2_XS、Coder および Unsloth/OrcaRouter からの実験的バリエーションなど)、約 70GB のダウンロードを行い、特定の GPU に合わせてエンジンを設定します。「Coder」バリエーションはコード生成に最適化されており(SWE-bench Verified スコアの 91% を達成)、プログラミング文脈外の一般的な CJK テキストタスクでは性能が劣ります。画像処理は NVIDIA カードでサポートされており、AMD カードは Linux ではソフトウェアレンダリングを通じて画像処理が可能ですが、Windows ではまだ対応していません。そのため、セットアップ時に画像サポートを「はい」に選択する必要があります。Strata は Cursor、GitHub Copilot、Claude Code などのコーディングアシスタントと統合でき、`http://127.0.0.1:8080/v1` で OpenAI 互換プロバイダーとして動作します。一般的なインストールに関する注意点には、初期のフリーズは正常であり、低速は空き RAM の不足を示す可能性があること、ポート 8080 の競合は他のインスタンスが実行中の場合に起こり得ることが含まれます。本プロジェクトではマルチ GPU セットアップもサポートしており、設定、アップデート、トラブルシューティングについては `docs/TROUBLESHOOTING.md` などのドキュメントリンクを通じて管理できます。

2026/10/05 4:42

macOS 27 で Apple Intelligence をオフにするとディスク容量を取り戻せる

## Japanese Translation: RemoveMacAI の主たる目的は、マクロシステムファイルを変更せず、かつ深い技術的介入を必要とせずに macOS 27(以降)で Apple Intelligence の機能を安全に無効化することにあります。構成プロファイルを適用し、ダウンロードされたモデルを削除することで、このツールは Siri、Writing Tools、Genmoji、Image Playground、および予測機能など特定の AI 機能を効果的に無効化します。ただし、別々の音声モデルを使用する標準的なディクテーション機能は維持されます。さらに重要なのは、システム設定内でユーザーの承認を義務付けることにより、オペレーティングシステムがこれらのモデルを自動的に再ダウンロードすることを防止することです。このプロセスはシステムインテグリティプロテクションを維持し、ネットワークリクエストを生成しないため、Apple Silicon ハードウェア上のユーザーに堅牢なプライバシーとセキュリティを保証します。MIT ライセンスの下で 4evy が開発した本ユーティリティは、macOS のアップデート後も存続する永続的なソリューションを提供します。ストレージ設定では一時的に AI 機能がリスト表示される場合がありますが、マクロシステムにより後から削除されるため、コア機能は引き続き無効化された状態となります。完全な機能を復元したい場合や特定の機能を管理したい場合は、各種コマンド(例:`removemacai off --keep <features>`)を使用でき、必要に応じて Homebrew を経由してツールをアンインストール (`brew uninstall removemacai`) することで変更を元に戻すことも可能です。インストールは、curl スクリプトを直接実行することと、Homebrew を通じての両方がサポートされています。

2026/10/05 4:37

不適切な編集により、Google データセンターの水道・電力使用量が露見した

## Japanese 訳: ネブラスカ州のデータセンターは、ジム・ピレン知事の 7 月 20 日付実行命令に従い、現在、年間にわたる水、電力、インフラの影響について環境水エネルギー省(DWEE)に報告することを義務付けられています。グーグルなどの事業者は当初、その使用量データが州の営業秘密法(§§81-1527; 84-712.05; NAC TITLE 115, CH. 2)で保護されると主張しましたが、DWEE は透明性の確保のため、報告書を公表しています。9 月 30 日までの時点で、6 つの施設が報告書を送付しており、合計約 7.65 億ガロンの水(およそ 1,160 のオリンピックサイズの水泳プール)を使用していたことが明らかになりました。アゲート LLC(グーグルのリノンキャンサイト)は約 1,330 万ガロンを使用し、ピーク需要時に 52.65 メガワットを消費しました。ファイヤーボールグループ LLC(パピリオン)は 2025 サイクルで年間使用量 547.88 メガガロンの最も高い使用量を報告しました。この開示には財政的インセンティブも含まれています:ネブラスカ・アドバンテージ法の下、施設は期待される利用度に基づいて税免除を受け、アゲートは 2025 年に約 5,580 万ドルの還付を予定しており、ファイヤーボールグループは約 3920 万ドル、ウェストウッドソリューションズ(オマハ)は約 2,260 万ドルです。現在まで、「イマジネー・ネブラスカ法」の下で受給された報奨金はあります。報告書は最大規模のアゲート LLC の 288,530 平方フィート(およそ 5 つの足球场分)に及んでいます。使用量報告書は 9 月 30 日まで提出期限があり、DWEE ウェブサイトの「DEQ Program」欄に「DCR」と入力することでアクセスできます。これらの要件を監督しているのは DWEE データセンタータスクフォースであり、これはデータセンターが地域の水道・電力システムに与える環境的圧力を示すように、情報公開から赤文字の秘密性へのシフトを強調しています。