DEV Community 日本語
フォロー
デバイスから離れない画像処理
サーバーは従来、処理前にファイルアップロードを必要としますが、多くの日常的な画像タスクはブラウザでローカルに処理できます。このアプローチは、ファイルをユーザーのデバイス上に保持し、サーバーサイドのストレージや潜在的なデータ悪用を回避することで、ユーザーのプライバシーを優先します。アップロード、処理、ダウンロードを行う一般的なオンラインツールとは異なり、このシステムはファイルをユーザーのマシンから送信しません。初期使用時にはAIモデルやデコーダーをダウンロードする場合がありますが、これは一度限りの取得であり、データのアップロードではありません。ローカルで操作を実行することで、プロバイダーのコストが削減され、無料、無制限、ウォーターマークなしのサービスが可能になります。トレードオフとして、ユーザーのハードウェアへの依存度が高まり、一部のフォーマットでは依然としてサーバー処理が必要です。現在、ブラウザの機能により、ローカルでの画像圧縮、フォーマット変換、AIによる背景除去、アニメーション編集、OCR、画像編集、アップスケーリングが可能になっています。ドキュメント処理には、PDF圧縮、画像またはHTMLへの変換、埋め込みコンテンツの抽出が含まれます。システムは、ユーザーのブラウザで各機能を厳密にテストすることにより、ローカル処理の実現可能性を判断します。これには、入力デコード、キャンバス処理、出力エンコードなどに関する独立したチェックが含まれます。これらのテストに合格した機能は「インスタント」とマークされ、ダウンロードが必要な機能はクライアントサイド、失敗した機能はサーバーに送信されます。HEIC書き込み、TIFF、JPEG 2000などの一部のフォーマット、およびHTMLからPDFへの変換は、特許問題、エンコーダーサイズの制限、または複雑さのためにローカルでは処理されず、これらはユーザーに明確に示されます。永続的な課題は初期プローブコストであり、最初の操作がわずかに遅延します。キャッシュは役立ちますが、それ自体に複雑さが伴います。