4

多くの人が、遺伝的アルゴリズムを使用してサンプル画像と一致する画像を生成するデモを見たことがあると思います。ノイズから始めて、徐々に対象の画像に似てくるようになり、多かれ少なかれ正確な複製ができあがります。

ただし、私が見たすべての例は、かなり単純なピクセルごとの比較を使用しているため、最終的な画像のかなり予測可能な「フェードイン」が得られます。私が探しているのは、もっと斬新なものです: 素朴なアプローチよりも「似ている」と見なされるものに近づくフィットネス測定.

特定の結果を念頭に置いているわけではありません。デフォルトよりも「興味深い」ものを探しているだけです。提案?

4

4 に答える 4

3

ロジャー アルシングのプログラムのようなものについて話していると思います。

これのバージョンを実装したので、別のフィットネス機能にも興味がありますが、美学ではなくパフォーマンスを向上させるという観点から考えています。進化プロセスの性質上、「フェードイン」の要素が常にあると思います(ただし、進化演算子を微調整すると、これがどのように見えるかに影響する可能性があります)。

ピクセルごとの比較は、小さな画像以外ではコストがかかる可能性があります。たとえば、私が使用する 200x200 ピクセルの画像には 40,000 ピクセルがあります。ピクセルごとに 3 つの値 (R、G、B) があるため、1 つの画像の適合度計算に 120,000 の値を組み込む必要があります。私の実装では、比較を行う前に画像を縮小して、ピクセル数を減らしています。トレードオフは、進化した画像の精度がわずかに低下することです。

代替のフィットネス関数を調査する際に、RGB の代わりにYUV 色空間を使用する提案に出くわしました。これは、人間の知覚により近いためです。

私が思いついたもう 1 つのアイデアは、ランダムに選択されたピクセルのサンプルのみを比較することでした。試してみないと、これがどれだけうまくいくかわかりません。比較されるピクセルは評価ごとに異なるため、母集団内の多様性を維持する効果があります。

その先には、コンピュータ ビジョンの領域があります。特徴抽出に依存するこれらの手法は、画像あたりのコストが高くなると予想されますが、許容できる結果を得るために必要な世代が少なくなれば、全体的に高速になる可能性があります。PerceptualDiffライブラリを調査することをお勧めします。また、このページには、ピクセルではなく特徴に基づいて画像の類似性を比較するために使用できる Java コードがいくつか示されています。

于 2009-05-02T11:33:17.957 に答える
1

単純なアプローチよりも「類似」と見なされるものに近づくフィットネス測定。

このような対策をソフトウェアに実装することは、決して簡単なことではありません。Google の「ヒューマン ビジョン モデル」、「知覚エラー メトリック」をいくつかの出発点として参照してください。この問題を回避できます。人間にとっては少し退屈かもしれませんが、最適なイメージを選択するために候補イメージを人間に提示するだけです。

于 2009-04-30T14:47:08.023 に答える
0

これは自明ではないという他の貢献者に同意します。また、商業的にも非常に価値があることも付け加えておきます。たとえば、視覚的な IP を保護したい企業は、インターネットで自社のロゴに似た画像を探すことができれば、非常に満足するでしょう。

これに対する私の素朴なアプローチは、多数の画像でパターン認識エンジンをトレーニングすることです。各画像は、1 つ以上の変換が適用されたターゲット画像から生成されます。どちらの方向にも数ピクセルの翻訳。同じ画像の異なる縮尺; さまざまなぼかしと効果 (ここでは畳み込みマスクが適しています)。また、各画像にランダム性ノイズを追加します。サンプル数が多いほどよい。

トレーニングはすべてオフラインで実行できるため、実行時のパフォーマンスに問題が生じることはありません。

パターン認識エンジンをトレーニングしたら、それを GA 集団画像に向けて、認識エンジンからスカラー スコアを取得できます。

個人的にはRadial Basis Networksが好きです。すばやくトレーニングできます。あまりにも多くのインプットから始めて、主成分分析 (IIRC) でそれらを減らしていました。出力は、類似度の尺度と非類似度の尺度にすぎません。

最後に一つだけ; どんなアプローチをとろうと - それについてブログを書いたり、デモを公開したりしてくれませんか。どうやって乗り込んだか教えてください。

于 2009-05-01T12:06:53.080 に答える
0

私はそのようなデモを見たことがありません (おそらくリンクできます)。しかし、興味深いものを引き起こす可能性のある、あなたの説明からのいくつかのプロトタイプのアイデア:

  • おそらく RGB または HSV の 3 つの異なるアルゴリズムが並行して実行されます。
  • 実行中にターゲット イメージを移動、回転、またはその他の方法でわずかに変更します。
  • ピクセル間のコントラスト/値の違いに基づく適合性。ただし、実際の色はわかりません。
  • ...次に、単一のピクセルを正しい色で「プライム」しますか?
于 2009-04-30T14:19:34.907 に答える