2011-01-21 4 views
0

イメージを認識できないようにしたいeffecientlyイメージを認識できないようにする簡単な方法はありますか?

私はそれを完全に黒くしたくありません。これを見る人は、これが前に見た写真から生まれた独自の写真であると確信してもらいたいです。

イメージを100回ぼかそうとしましたが、地獄のように遅いですし、そうするには素晴らしい方法があるのだろうかと思っていました。

私はちょうどこの目的のために厳密にPythonで「ピクセルをシャッフルする」ことができるかどうか考えていました。

私はあなたたちからいくつかの提案をとっている、と私は次のように書かれている

を助けてください:

imageFile = "myfile.png" 
im1 = Image.open(imageFile) 
l = list(im1.tostring()) 
random.shuffle(l) 
Image.fromstring('RGB', (100,100), ''.join(l)).save('out.png') 

編集:私は、私が書いたコードを貼り付けます。これはかなりCPUを消費します。

+3

人々は確信していますか? – Apalala

+0

画像はどのようにして認識できないのか(「これを見ている人が、これまでに見た写真から確信してもらいたい」)、同時にどのように認識できますか? –

+0

フレッド:あなたの友人にあなたに招待状を送ってきたが、あなたにはそれがBSであることを知っている黒いイメージを送ったと伝えたら、しかし、この認識できないイメージ(1対1のマッピングが優先されていることがわかっている場合)は、それがあなたが知っている誰かであると信じる良いチャンスがあります。 – disappearedng

答えて

0

ピクセルの順番を入れ替えるのはなぜですか?あなたがどれくらい認識しやすいかに応じて、個々のピクセルに対して行うことも、イメージをブロックに分割してそれらをシャッフルすることもできます。

+0

推奨するライブラリはありますか? – disappearedng

+0

sahhhmが言っていたように、Python Imaging Libraryがこれに対応します。イメージモジュールをチェックアウトすると、list(im.getdata())、random.shuffle list、putdata()を使用してピクセルを取得できます。私はライブラリに精通していないので、モジュールの1つが実際にそれを行う関数を持つかもしれませんが、とにかく基本的なようです。 –

0

クイックフィルタのシーケンスを適用します。ぼかしはCPUを大量に消費するため、色を反転したり、ピクセルグループを切り替えたり、水平方向または垂直方向に反転したりします。

0

簡略化のため、tutorial pageに示すように、Python Imaging Libraryを使用して、色変換、画像エンハンスメント、ポイント操作、およびその他のさまざまなオプションを適用できます。

1

3x3ブロックから1つのピクセルを取り出し、それをブロックに置き換えます。基本的には、画像のサイズを小さくする必要はありませんが、画像が小さくなりすぎてしまいます。これはぼかしに関連していますが、はるかに簡単で高速であり、光学的なぼかしではなくピクセル化された効果をもたらします。例えば

xxxxxx 
xAxxBx 
xxxxxx 
xxxxxx 
xCxxDx 
xxxxxx 

になる:所望のよう

AAABBB 
AAABBB 
AAABBB 
CCCDDD 
CCCDDD 
CCCDDD 

は、ブロックサイズを変更。

関連する問題