写入和读取图像时的噪音(MNIST)

时间:2017-11-03 07:35:10

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

我一直致力于手写数字识别,我想保存MNIST图像并再次读取并转换为数组,以便为​​CNN提供信息。

逻辑是,如果我能够正确读取识别这些图像..我可以使用相同的功能进行实际输入。

代码1:

def create_images():
    for a in range(1):
        num_test = 7885
        image= data.test.images[num_test]
        plot_image(image)
        pixels = 255 * (1.0 - image)
        pixels.resize((28,28))
        im = Image.fromarray(pixels.astype(np.uint8), mode='L')
        im.save("2.jpeg")

对应输出:

MNIST IMAGE

代码2:

def ImagetoArray(image):
    im = Image.open(image)
    tv = list(im.getdata()) 
    # normalize pixels to 0 and 1. 0 is pure white, 1 is pure black.
    tva = [(255 - x) * 1.0 / 255.0 for x in tv]
    tva = np.asarray(tva)
    count=0
    #plot_image(tva)
    return tva

对应输出:

Read Image

虽然我知道噪音似乎非常微不足道,但图像只有28X28像素且噪音可能会干扰。

我想知道噪音的添加位置以及如何克服噪音? 使用opencv会有什么不同吗?

1 个答案:

答案 0 :(得分:2)

不要使用JPEG。使用PNG或TIFF进行无损图像压缩。

通过JPEG算法的有损压缩添加噪声。