作者Arton0306 (Ar藤)
看板Python
标题PIL library 直接对pixel运算
时间Sat Nov 29 21:41:54 2008
我想将一张bmp图的各个颜色 做乱数转换
google得知PIL是强大的影像处理library
不过我查不到怎麽直接对点做控制
下面是直接硬上写出来的 没用PIL
不知是否有版友用过PIL写过类似的东西
可否贴个例子参考一下@@a
===========================================================
def byteToInt(data):
sum=0
k=0
for i in data:
sum+=ord(i)*pow(2,k)
k+=8
return sum
from random import *
openFile=open("pic.bmp","rb")
BMPData=openFile.read()
openFile.seek(10) #点阵图资料开始之前的偏移量(单位:byte)
bmpPointOffset=byteToInt(openFile.read(4)) #点阵图资料开始之前的偏移量(单位:
byte)
for count in range(5):
writeFile=open("change"+str(count)+".bmp",'wb')
permutationList=range(256)
shuffle(permutationList)
permutationList=[chr(i) for i in permutationList]
for i in BMPData[0:bmpPointOffset]: #写进一样的header
writeFile.write(i)
for i in BMPData[bmpPointOffset:]:
j=permutationList[byteToInt(i)]
writeFile.write(j)
writeFile.close()
openFile.close()
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.114.229.83
1F:推 AndCycle:im.getpixel(xy) 之类的很多, 把manual翻过一遍吧 11/29 22:39