imgix APIsレンダリング APIスーパーレゾリューション

スーパーレゾリューション

upscale

プレミアム機能

スーパーレゾリューションは現在、imgixのプレミアムプランを利用するお客様にのみ利用可能です。この機能に興味がある場合は、弊社の営業チームにお問い合わせください。

スーパーレゾリューションパラメーターを使用すると、オリジン画像を拡大して元の画質を保持したまま最大4倍のサイズに拡大できます。拡大は、画像の解像度を高めるためにジェネレーティブAIを使用して行われます。

AIによる拡大は、制限要件を満たす任意の画像で有効にできます。スーパーレゾリューションを使用して画像を拡大するには、upscale=trueを使用します。デフォルト値はfalseです。

このパラメーターを使用すると、ジェネレーティブAIを使用して低解像度の写真の品質を向上させることができます。このジェネレーティブアプローチは、最近傍補間、ランチョス、その他の手法などの従来のアプローチよりも、より見栄えが良く、高解像度、高品質の画像を生成する場合があります。

たとえば、こちらは0.02MP(150x140)の画像です。元の画像が低解像度であるため、画像の解像度を0.15MP(400x373)に拡大するために w=400 を使用しても、非常にぼやけています。

imgixパラメーター w=400 を使用した画像 https://assets.imgix.net/examples/super-resolution/purse-150px.png?w=400 - 129KB

スーパーレゾリューションを使用すると、画像の寸法を拡大するにつれて画像がクリアになります。その結果、非AIスケーリング方法を使用して変換された画像ほどぼやけていない画像が得られます。

imgixパラメーター upscale=true を使用した画像 https://assets.imgix.net/examples/super-resolution/purse-150px.png?upscale=true - 172KB

スーパーレゾリューションは、画像を最適化するために他のレンダリングAPIパラメーターと組み合わせることができます。たとえば、画像を拡大した後にauto=compress,formatを適用できます。これにより、上記の例の画像が12.6KBに減少します。

以下は、スーパーレゾリューションを示す追加の例です。

元の画像
upscale=true

制限

スーパーレゾリューションは、imgix互換の入力画像タイプと互換性がありますが、拡大できる画像のサイズには制限があります。

入力サイズの制限

0.25MP(512x512)より大きな画像は、スーパーレゾリューション処理のためにリサイズされます。画像がこのサイズを超える場合(最大1MP、または1024x1024)、それを<0.25MPにリサイズしてから、スーパーレゾリューションを使用して拡大できるようになります。1MPを超える画像は拡大されません。

ジェネレーティブAIの期待値

ジェネレーティブAIは、解像度が増加するにつれて画像の詳細を補完します。その結果、スーパーレゾリューションがアップスケーリング中に画像の失われた詳細を補完しようとする場合があります。

たとえば、このテスト画像は、ぼやけたテキストを含む画像です。画像のサイズを倍にしても、ほとんどのテキストが何であるかを解読するのは難しいです。

画像パラメーター w=500 を使用したぼやけたテキストの画像

スーパーレゾリューションを使用すると、手が元の画像よりもはっきり見えますが、テキストは読み取れません。

AIによる拡大でぼやけたテキストが読み取れないまま

AIによる拡大は、低解像度の画像のクリアさを向上させるための便利なツールですが、すべての場合で保証される解決策ではありません。最良の結果を得るには、読み取れないテキストやオブジェクトがない画像をお勧めします。

サポートされていない入力形式

サポートされていない入力形式に加えて、スーパーレゾリューションは次のファイルタイプ形式と互換性がありません。

  • アニメーションGIF
  • アニメーションWebP
  • アニメーションPNG
  • SVG
  • EPS

エラー処理

制限を超える場合、アップスケールパラメーターは画像の変換に失敗します。この場合、オリジン画像を返すように試みます。リクエストに他のレンダリングAPIパラメーターが含まれている場合は、それらのパラメーターをアセットに適用します。

オリジン画像もエラーを返す場合は、エラーレスポンスが返されます。

スーパーレゾリューションの失敗原因は、リクエストのレスポンスヘッダーに表示されます。例:

x-imgix-upscale-failure-reason: An error occurred during upscale request processing

エラー処理がフォールバックではなくエラーを受け取るには、パラメーター upscale-fallback=false を使用してください。

AI変換の連鎖

レンダリングAPIは、複数のAI変換を非同期で処理し、完了するまでに数秒かかります。複数のAI変換が存在する場合、次の順序でレンダリングされます:

AI変換を連鎖させる方法については、このチュートリアルをご覧ください。

AI変換の連鎖

このパラメーターに関する質問やフィードバックがある場合は、アカウントマネージャーまたはサポートまでお問い合わせください。