python PILを使って、ピクセル単位での画像の操作をします。
ピクセルデータの取得
Image.getpixel ( (pixX,pixY) )
ピクセルデータを設定
その1
Image.putpixel ( (pixX,pixY) , (R,G,B) )
※ ただし、jpg画像に滲みが発生します。(以下の画像はjpg出力を行っています) png,bmpでは滲みは発生しません。 原因のわかる方教えてくださると助かります。。。
その2
pixels = Image.load()
pixels[x,y] = (R,G,B)
>>> # 既存の"C:\test.jpg"のピクセル値を取得する >>> import Image >>> # 画像の生成 >>> img = Image.new("RGB",(255,255),(255,0,0)) >>> img.save("C:\\test.jpg") >>> img.getpixel((100,100)) (255, 0, 0)

>>> # 既存の"C:\test.jpg"のピクセル値を設定する >>> import Image >>> # 画像の生成 >>> img = Image.new("RGB",(255,255),(255,0,0)) >>> for y in range(95,105): for x in range(95,105): img.putpixel((x,y),(0,0,255)) >>> img.save("C:\\test.jpg")

>>> # 既存の"C:\test.jpg"のピクセル値を設定する(loadを利用する) >>> import Image >>> # 画像の生成 >>> img = Image.new("RGB",(255,255),(255,0,0)) >>> img.save("C:\\test.jpg") >>> pixels = img.load() >>> for y in range(95,105): for x in range(95,105): pixels[x,y] = (0,0,255) >>> img.save("C:\\test.jpg")

タグ
コメントをかく