[解決済み] 画像ダウンサンプリングアルゴリズム
質問
画像を元のサイズの半分に分割するために使用できる最適なリサンプリングアルゴリズムを教えてください。スピードが一番重要ですが、品質があまり落ちないようにしなければなりません。私は基本的にイメージピラミッドを生成しようとしています。
当初はピクセルを飛ばす予定でした。これはベストな方法なのでしょうか?私が読んだところでは、画素飛ばしで作られた画像はシャープになりすぎるそうです。どなたか試したことのある方、コメントお願いします。私の画像には、以下のような地図データが含まれています。 これを
解決方法は?
画素を飛ばすとエイリアシングが発生し、高い周波数の変化(明暗が交互に変わるなど)が低い周波数の変化(明暗が一定など)に変換されてしまうのです。
エイリアシングを起こさずに半分に縮小するには、2×2画素を1画素に平均化するのが最も手っ取り早い方法です。より洗練された縮小カーネルを使えば、より良い結果が得られますが、その分スピードが犠牲になります。
ここまでで説明したテクニックの例をいくつか紹介します。
1ピクセルおきにスキップする - 左側の凡例を見れば、結果があまり良くないことがわかります。ほとんど読めませんね。
2x2グリッドごとの平均化 - テキストがシャープで読みやすくなりました。
が提案するガウシアンブラー R. - は、少しぼやけますが、ある程度までは読みやすくなります。ぼかしの量を調整することで、さまざまな結果を得ることができます。
R. は、ガンマカーブが結果に影響を与えることについても正しいのですが、これは最も要求の厳しいアプリケーションにおいてのみ見られるはずです。私の例は、ガンマ補正なしで行われました。
編集する そして、より洗練された、しかし遅いカーネルの例として、次のようなものがあります。 Lanczos-5 線形(ガンマ調整されていない)色空間で実行されます。
色空間の変換のためか、レタリングのコントラストが低くなっています。 しかし、海岸線のディテールを見てください。
関連
-
[解決済み] 既に.objで定義されている-二重包含はない
-
[解決済み】クラステンプレートの使用にはテンプレート引数リストが必要です
-
[解決済み] div' コンテナに合わせて画像を自動リサイズするにはどうしたらいいですか?
-
[解決済み] div 内の画像を縦に並べる方法
-
[解決済み] Markdownで画像サイズを変更する
-
[解決済み] Bitmapオブジェクトに画像を読み込む際にOutOfMemoryが発生する問題
-
[解決済み] IMGとCSSのbackground-imageはいつ使い分ける?
-
[解決済み] CSSによる画像の強制リサイズとアスペクト比の保持
-
[解決済み] div内の画像の下に余分なスペースがある
-
[解決済み】画像処理。コカ・コーラ缶」認識のためのアルゴリズム改良
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】C++でint型に無限大を設定する
-
[解決済み】C++ 非推奨の文字列定数から「char*」への変換について
-
[解決済み】C-stringを使用すると警告が表示される。"ローカル変数に関連するスタックメモリのアドレスが返される"
-
[解決済み】変数 '' を抽象型 '' と宣言できない。
-
[解決済み] 非常に基本的なC++プログラムの問題 - バイナリ式への無効なオペランド
-
[解決済み】fpermissiveフラグは何をするのですか?
-
[解決済み] 非静的データメンバの無効な使用
-
[解決済み】エラー:不完全な型へのメンバーアクセス:前方宣言の
-
[解決済み】エラー:free(): 次のサイズが無効です(fast)。
-
[解決済み] 警告:暗黙の定数変換でのオーバーフロー