画像スケーリング
コンピュータグラフィックスとデジタルイメージングでは、画像スケーリング(がぞうスケーリング、英語: Image scaling)は、デジタル画像のサイズ変更を指す。ビデオ技術では、デジタル素材の拡大はアップスケーリングまたは解像度向上技術として知られている。
ベクトルグラフィックイメージをスケーリングする場合、イメージを構成するグラフィックプリミティブは、画質を損なうことなく、幾何学的変換を使用してスケーリングできる。ラスターグラフィックス画像を拡大縮小する場合、ピクセル数が多いまたは少ない新しい画像を生成する必要がある。ピクセル数を減らす(スケールダウンする)場合、これは通常、目に見える品質の低下をもたらす。デジタル信号処理の観点から、ラスターグラフィックスのスケーリングは、サンプリング周波数変換の2次元の例であり、離散信号をサンプリングレート(この場合はローカルサンプリングレート)から別のサンプリングレートに変換する。
数学上
[編集]画像スケーリングは、ナイキストサンプリング定理の観点から、画像のリサンプリングまたは画像の再構成の形式として解釈できる。定理によれば、高解像度のオリジナルからより小さな画像へのダウンサンプリングは、エイリアシングアーチファクトを防ぐために適切な2Dアンチエイリアシングフィルターを適用した後にのみ実行できる。画像は、小さい画像で運ぶことができる情報に縮小される。
アップサンプリングの場合、アンチエイリアシングフィルターの代わりに再構成フィルターが使用される。
-
元の160x160pxの画像
-
空間周波数領域の元の画像
-
2Dローパスフィルタ処理されているが、160x160pxのままである
-
空間周波数領域でフィルタリングされた画像
-
ローパスフィルター処理された160x160pxの画像を40x40pxに4倍ダウンサンプリング
-
40x40pxのダウンサンプリングされた画像の160x160pxへの4倍フーリエアップサンプリング(正しい再構成)
-
40x40pxのダウンサンプリングされた画像の160x160pxへの4倍フーリエアップサンプリング(エイリアシングあり)
アップスケーリングへのより洗練されたアプローチは、問題を逆問題として扱い、スケールダウンすると入力画像のように見えるもっともらしい画像を生成するという問題を解決する。これには、正則化項を使用した最適化手法や例からの機械学習の使用など、さまざまな手法が適用される。
アルゴリズム
[編集]画像サイズはいくつかの方法で変更できる。
最近隣内挿法
[編集]画像サイズを大きくする簡単な方法の1つは、最近隣内挿法で、すべてのピクセルを出力内の最も近いピクセルに置き換える。アップスケーリングの場合、これは同じ色の複数のピクセルが存在することを意味する。これにより、ピクセルアートの鮮明なディテールを維持できるが、以前は滑らかだった画像にジャギーが生じる。最近傍の「最近傍」は、数学的に最も近い必要はありません。一般的な実装の1つは、常にゼロに向かって丸めることです。このように丸めると、アーティファクトが少なくなり、計算が速くなります。
バイリニアおよびバイキュービックアルゴリズム
[編集]バイリニア補間は、ピクセルの色の値を内挿することで機能し、元のマテリアルに離散的な遷移がある場合でも、出力に連続的な遷移を導入する。これは連続トーン画像には望ましいが、このアルゴリズムは、線画には望ましくない方法でコントラスト(シャープなエッジ)を低減する。バイキュービック補間は、計算コストの増加とともに、大幅に優れた結果をもたらす。
シンクとランチョスのリサンプリング
[編集]理論上、シンク・リサンプリングは、完全に帯域制限された信号に対して可能な限り最良の再構成を提供する。実際には、シンク・リサンプリングの背後にある仮定は、実際のデジタル画像では完全には満たされていない。シンク法の近似であるランチョス・リサンプリングは、より良い結果をもたらす。バイキュービック補間は、ランチョス・リサンプリングの計算効率の高い近似と見なすことができる。
ボックスサンプリング
[編集]バイリニア、バイキュービック、および関連するアルゴリズムの1つの弱点は、特定の数のピクセルをサンプリングすることである。すべてのバイサンプリングアルゴリズムで2回以上など、特定のしきい値を下回るダウンスケーリングを行うと、アルゴリズムは隣接していないピクセルをサンプリングするため、データが失われ、大まかな結果が生じる。
この問題の簡単な解決策は、ボックスサンプリングです。これは、ターゲットピクセルを元の画像のボックスと見なし、ボックス内のすべてのピクセルをサンプリングすることである。これにより、すべての入力ピクセルが出力に寄与することが保証される。このアルゴリズムの主な弱点は、最適化が難しい。
ミップマップ
[編集]バイサンプリングスケーリングのダウンスケール問題に対する別の解決策は、ミップマップである。ミップマップは、事前にスケーリングされたダウンスケールコピーのセット。ダウンスケーリングする場合、最も近い大きなミップマップが原点として使用され、双一次スケーリングの有用なしきい値を下回るスケーリングが使用されないようにする。このアルゴリズムは高速で、最適化が簡単です。これは、OpenGLなどの多くのフレームワークで標準となっている。コストはより多くの画像メモリを使用することであり、標準の実装ではちょうど3分の1。
フーリエ変換法
[編集]フーリエ変換に基づく単純な補間は、周波数領域にゼロ成分を埋め込む(スムーズなウィンドウベースのアプローチはリンギングを低減する)。詳細の良好な保存(または回復)に加えて、注目すべきは、左の境界から右の境界への(およびその逆の)コンテンツのリンギングと循環ブリーディングである。
エッジ指向補間
[編集]エッジ指向補間アルゴリズムは、階段のアーチファクトを導入する可能性がある他のアルゴリズムとは異なり、スケーリング後に画像のエッジを保持することを目的としている。
このタスクのアルゴリズムの例には、新しいエッジ指向補間(NEDI)[1][2]、エッジガイド画像補間(EGGI)[3]、 反復曲率ベース補間(ICBI)、 [4]および方向性3次畳み込み補間(DCCI)[5]。2013年の分析では、一連のテスト画像でDDCIのPSNRとSSIMのスコアが最高であることがわかった[6]。
hqx
[編集]低解像度および/または少数の色(通常は2〜256色)のコンピュータグラフィックスを拡大する場合、hqxまたは他のピクセルアート・スケーリング・アルゴリズムによってより良い結果を得ることができる。これらは鋭いエッジを生成し、高レベルの詳細を維持する。
ベクトル化
[編集]ベクトル抽出、またはベクトル化は、別のアプローチを提供します。ベクトル化は、最初に、スケーリングされるグラフィックの解像度に依存しないベクトル表現を作成します。次に、解像度に依存しないバージョンが、目的の解像度でラスターイメージとしてレンダリングされます。この手法は、Adobe Illustrator 、Live Trace、およびInkscapeで使用されています[7]。スケーラブル・ベクター・グラフィックスは単純な幾何学的画像に適しているが、写真は複雑であるため、ベクトル化には適していない。
深層畳み込みニューラルネットワーク
[編集]この方法では、機械学習を使用して、写真や複雑なアートワークなどのより詳細な画像を取得する。この方法を使用するプログラムには、waifu2x、Imglarger、NeuralEnhanceが含まれる。
アプリケーション
[編集]全般的
[編集]画像スケーリングは、他のアプリケーションの中でも、 ウェブブラウザ[8]、画像エディタ、画像およびファイルビューア、ソフトウェア拡大鏡、デジタルズーム、サムネイル画像の生成プロセス、および画面やプリンタを介して画像を出力するときに使用される。
ビデオ
[編集]このアプリケーションは、DVDプレーヤーなどのPAL-ResolutionコンテンツからのHDTV対応出力デバイスのホームシアター用の画像の拡大である。アップスケーリングはリアルタイムで実行され、出力信号は保存されない。
ピクセルアートスケーリング
[編集]ピクセルアートグラフィックスは通常低解像度であるため、個々のピクセルを注意深く配置する必要があり、多くの場合、色のパレットが制限されている。これにより、個々のピクセルに至るまで、解像度がほとんどない複雑な形状を定義するために、定型化された視覚的な手がかりに依存するグラフィックスが作成される。これにより、ピクセルアートのスケーリングが特に難しい問題になる。
従来のスケーリングアルゴリズムは知覚的な手がかりを考慮に入れていないため、特殊なアルゴリズム[9]。
典型的なアプリケーションは、アーケードおよびコンソールエミュレーターでの第4世代のビデオゲームコンソール以前のビデオゲームの外観を改善することであるため、多くは、毎秒60フレームの小さな入力画像に対してリアルタイムで実行するように設計されている。
高速ハードウェアでは、これらのアルゴリズムはゲームやその他のリアルタイム画像処理に適している。これらのアルゴリズムは、ぼやけを最小限に抑えながら、鮮明で鮮明なグラフィックを提供する。スケーリングアートアルゴリズムは、HqMAMEやDOSBoxなどのさまざまなエミュレーター、2Dゲームエンジン、 ScummVMなどのゲーム・エンジン・レクリエーションに実装されている。
このようなフィルターは現在、 Xbox Live 、仮想コンソール、およびPSNの商用エミュレーターで使用されており、従来の低解像度ゲームを最新のHDディスプレイでより視覚的にアピールできるようになっています。これらのフィルターを組み込んだ最近リリースされたゲームには、ソニック アルティメット ジェネシスコレクション、悪魔城ドラキュラ Xクロニクル、悪魔城ドラキュラX 月下の夜想曲、悪魔城ドラキュラX 血の輪廻などがある。
脚注
[編集]- ^ “Edge-Directed Interpolation”. 19 February 2016閲覧。
- ^ Xin Li; Michael T. Orchard. “NEW EDGE DIRECTED INTERPOLATION”. 2000 IEEE International Conference on Image Processing: 311 .
- ^ Zhang, D.; Xiaolin Wu (2006). “An Edge-Guided Image Interpolation Algorithm via Directional Filtering and Data Fusion”. IEEE Transactions on Image Processing 15 (8): 2226–38. Bibcode: 2006ITIP...15.2226Z. doi:10.1109/TIP.2006.877407. PMID 16900678.
- ^ K.Sreedhar Reddy; Dr.K.Rama Linga Reddy (December 2013). “Enlargement of Image Based Upon Interpolation Techniques”. International Journal of Advanced Research in Computer and Communication Engineering 2 (12): 4631 .
- ^ Dengwen Zhou. “Image Zooming Using Directional Cubic Convolution Interpolation”. 13 September 2015閲覧。
- ^ Shaode Yu; Rongmao Li. "Performance evaluation of edge-directed interpolation methods for noise-free images". arXiv:1303.6455 [cs.CV]。
- ^ Johannes Kopf and Dani Lischinski (2011). “Depixelizing Pixel Art”. ACM Transactions on Graphics 30 (4): 99:1–99:8. doi:10.1145/2010324.1964994 24 October 2012閲覧。.
- ^ Analysis of image scaling algorithms used by popular web browsers
- ^ “Pixel Scalers”. 19 February 2016閲覧。