使用Python将图片输出为二维数组,并保存到txt文件中。
代码如下:
# coding=utf8
fromPILimportImage
importnumpyasnp
fromscipyimportmisc
importmatplotlib.pyplotaspyplot
#读图片
defloadImage():
im=Image.open("0001.jpg")#读取图片
im.show()#显示原图
im=im.convert("L")#转换成灰度图
data=im.getdata()
data=np.matrix(data)#Image类返回矩阵的操作
data=np.reshape(data,(304,720))#变换成304*720
new_im=Image.fromarray(data)#调用Image库,数组归一化
new_im.show()#显示新图片
misc.imsave('new_img.jpg',new_im)#保存新图片到本地
returndata
#写数据
defWritedata(data):
filename='C:\\Users\\DZF\\Desktop\\negative.txt'#数据文件保存位置
row=np.array(data).shape[0]#获取行数n
withopen(filename,'w')asf:# 若filename不存在会自动创建,写之前会清空文件
foriinrange(0,row):
f.write(str(data[i][0:]))
f.write("\n")
data=loadImage()
Writedata(data)
学习更多编程知识,请关注我的公众号:
网友评论