30
モナリザのパレットのアメリカンゴシック:ピクセルの再配置
ソースとパレットの2つのトゥルーカラーイメージが提供されます。それらは必ずしも同じ寸法を持っているわけではありませんが、それらの面積が同じであることが保証されています。つまり、同じピクセル数を持っています。 あなたの仕事は、パレットのピクセルのみを使用して、ソースの最も正確に見えるコピーを作成するアルゴリズムを作成することです。パレットの各ピクセルは、このコピーの一意の位置で1回だけ使用する必要があります。コピーは、ソースと同じサイズでなければなりません。 このPythonスクリプトを使用して、これらの制約が満たされていることを確認できます。 from PIL import Image def check(palette, copy): palette = sorted(Image.open(palette).convert('RGB').getdata()) copy = sorted(Image.open(copy).convert('RGB').getdata()) print 'Success' if copy == palette else 'Failed' check('palette.png', 'copy.png') テスト用の写真をいくつか紹介します。彼らはすべて同じ面積を持っています。アルゴリズムは、アメリカンゴシックとモナリザだけでなく、面積が等しい任意の2つの画像に対して機能する必要があります。もちろん、出力を表示する必要があります。 有名な絵画の画像についてウィキペディアに感謝します。 得点 これは人気のあるコンテストであるため、最も投票数の多い回答が勝ちます。しかし、私はこれで創造的になる方法がたくさんあると確信しています! アニメーション ミリノンは、ピクセルが自分自身を再配置するのを見るのはクールだと考えていました。私もそう思ったので、同じ色で作られた2つの画像を取り、それらの間の中間画像を描くこの Pythonスクリプトを書きました。更新:各ピクセルが必要な最小量だけ移動するように修正しました。もはやランダムではありません。 最初は、モナリザがアディツのアメリカンゴシックに変わることです。次はbitpwnerのAmerican Gothic(Mona Lisaから)がaditsuになりました。2つのバージョンがまったく同じカラーパレットを共有しているのは驚くべきことです。 結果は本当に驚くべきものです。こちらがアディツの虹のモナリザです(詳細を表示するのが遅くなります) この最後のアニメーションは、必ずしもコンテストに関連しているわけではありません。スクリプトを使用して画像を90度回転したときに何が起こるかを示しています。