5

だからここに私の問題があります:

その画像は大きく(高解像度)、小さくする必要があります(はるかに低い解像度)。

だから私は素朴なことをします(他のすべてのピクセルを殺します)そして結果は貧弱に見えます.

そのため、よりインテリジェントな処理 (フーリエ変換を使用したローパス フィルタリングとフーリエ空間での再サンプリング) を試みたところ、結果は少し良くなりましたが、それでもかなり貧弱でした。

私の質問は、知覚的に動機付けられた画像のダウンサンプリング アルゴリズム (または実装) はありますか?

編集: 私は多くのリサンプリング手法を認識していますが、私のアプリケーションは、滑らかな画像を生成することよりも、知覚機能を維持することに重点を置いています。

edit2:デジタル信号処理、畳み込み、ウェーブレット変換などにある程度精通していると想定しても安全です

4

6 に答える 6

5

これを読む:

http://www.dspguide.com/

OK、それはかなりの読み物です。ただし、フィルター設計を理解すると便利です。

一般に、イメージを W1 x H1 から W2 x H2 (W1、W2、H1、H2 は整数) にスケーリングするプロセスは、新しい W3、H3 を見つけて、W1 と W2 が W3 の整数因子となり、H1 と H2 が次のようになるようにすることです。 H3 の整数係数を使用してから、元の画像をゼロ (元の画像のピクセルの間隔を空けるために使用) で埋めて、サイズが W3 x H3 になるようにします。これにより、画像の不連続性により高周波が発生するため、画像にローパス フィルターを適用し、フィルター処理された画像を新しいサイズ (W2 x H2) に間引きます。すでにこれを実行しようとしているように聞こえますが、フィルタリングは時間領域で実行できるため、フーリエ変換は実際には必要ありません。

実際には、今説明したプロセスは最適化されています (アップスケールされた画像に畳み込みフィルターを適用すると、ほとんどの項が 0 になることに注意してください。たとえば、アルゴリズムで乗算演算のほとんどを回避できます。フィルタリングされた結果の多くを破棄することになるため、それらを計算する必要がないため、基本的に、ターゲット イメージの各ピクセルに対して少数の乗算と加算を行うことになります。使用します。)

ffmpeg プロジェクトの libswscale は、このようなことを行っていると思います。見てみな:

http://gitorious.org/libswscale

他の人が指摘したように (そしてあなたも気づいたようです)、画像をデシメートすると、エイリアシング アーティファクトが発生します。リサンプリングの実装についてはわかりませんが、使用するウィンドウ サイズやその他の実装の詳細に応じて、この手法には興味深い落とし穴があります。

于 2009-11-22T23:08:11.020 に答える
2

バイキュービック補間は一般的には十分であると考えられていますが、完全な解決策はありません。それは人やリサンプリングされる画像の特性に依存します。

関連リンク:

切れ味のことをアキュータンスと呼ぶことも知りませんでした。

エイリアシングは、単純にダウンサンプリングするときに発生する可能性がある問題です。

于 2009-11-22T22:44:14.160 に答える
1

パスカルは正しい。イメージにもよりますし、ご希望にもよります。いくつかの要因:

  • シャープなエッジを維持
  • 色の保存
  • アルゴリズム速度

これはあなたの方法です。

他の何人か:

低解像度のデバイスでは検出できない高解像度の画像にエッジが存在するため、低解像度のカメラを使用するよりも、リサンプリング ダウンを使用すると、より鮮明な結果が得られる場合があることに注意してください。

補足: 整数で縮小する場合 (4 または 6 で割るなど)、多くのアルゴリズム (特に最近傍) を最適化できます。

于 2009-11-22T22:53:27.057 に答える
1

推奨される ImageMagick の「汎用」ダウンサンプリング方法については、http: //www.imagemagick.org/Usage/filter/nicolas/#downsampleで説明しています。

于 2013-01-31T17:19:40.900 に答える
0

Paint Mono ( Paint.NETの OS フォーク) は、画像ダウンサンプリング用のスーパーサンプリング アルゴリズムを実装しています: http://code.google.com/p/paint-mono/source/browse/trunk/src/PdnLib/Surface.cs?spec =svn59&r=59#1313

于 2011-11-26T06:09:13.047 に答える
0

コンテンツに応じたサイズ変更アルゴリズムを試すことができます。参照: http://www.seamcarving.com/

于 2009-11-22T22:50:58.030 に答える