使用python中的矩阵创建灰度图像

时间:2018-11-26 17:41:28

标签: python-3.x python-imaging-library jpeg fft

我是第一年的数学学生Marius。

我们收到了一个团队分配,我们必须执行傅立叶变换,然后选择尝试将图像的变换编码为JPEG图像。

为简化我们自己的问题,我们选择仅对灰度图像进行处理。 到目前为止,这是我的代码:

from PIL import Image
import numpy as np
import sympy as sp

#
#ALLEMAAL INFORMATIE GEEN BEREKENINGEN
img = Image.open('mario.png')  
img = img.convert('L') # convert to monochrome picture
img.show() #opens the picture
pixels = list(img.getdata())
print(pixels) #to see if we got the pixel numeric values correct
grootte = list(img.size)
print(len(pixels)) #to check if the amount of pixels is correct.
kolommen, rijen = img.size
print("het aantal kolommen is",kolommen,"het aantal rijen is",rijen)
#tot hier allemaal informatie

pixelMatrix = []
while pixels != []:
    pixelMatrix.append(pixels[:kolommen])
    pixels = pixels[kolommen:]
print(pixelMatrix)
pixelMatrix = np.array(pixelMatrix)
print(pixelMatrix.shape)

现在问题在最后3行中形成。我想尝试将值矩阵转换回以矩阵'pixelMatrix'作为值的图像。 我已经尝试了很多事情,但这似乎是最明显的方法:

im2 = Image.new('L',(kolommen,rijen))
im2.putdata(pixels)
im2.show()

当我使用它时,它只是给我一张正确尺寸的黑色图像。 从矩阵pixelMatrix中的值开始,关于如何获取原始图片的任何想法?

Post Scriptum:我们仍然必须实现转换本身,但这将是无用的,除非我们确定可以将矩阵转换回灰度图像。

0 个答案:

没有答案