Как обрабатывать изображения, как Mnist с помощью Python? - PullRequest
0 голосов
/ 06 ноября 2018

Я делаю модель распознавания цифр, используя mnist. Обучение довольно хорошо, точность модели составляет около 98,6%. Но когда я тестирую другие изображения (не mnist), точность очень низкая

Это мой код, обрабатывающий изображение. изображение, которое я хочу использовать, - это набор данных IAM. вот ссылка. http://www.fki.inf.unibe.ch/databases/iam-handwriting-database

import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt
from PIL import Image
from glob import glob
from skimage import color
from skimage import io
import matplotlib.cm as cm
from scipy.misc import imresize


def read_image(path):
    image = io.imread(path, as_grey= 1)
    image_resized = imresize(image, [28, 28])
    image_reshaped = image_resized.reshape([784])
    image_reshaped = np.array(image_reshaped, dtype= np.float32)

    for i in range(len(image_reshaped)):
        if image_reshaped[i] >= 255:
            image_reshaped[i] = 0
        elif image_reshaped[i] != 255:
            image_reshaped[i] /= 255.0000
    return image_reshaped

testing_image = read_image(path)
plt.imshow(a.reshape((28, 28)))

enter image description here

это мое изображение обработки (извините за ссылку, я новичок, поэтому я не могу загрузить напрямую)

enter image description here

и это изображение mnist.

Итак, мой вопрос, в чем разница между моими образами и мненистскими образами, и как я могу сделать мои изображения, как mnist images?

1 Ответ

0 голосов
/ 06 ноября 2018

Модель, связанная с MNIST, не может обобщать различные изображения! Как вы можете видеть, «7» в ваших данных полностью отличается от значения в наборе MNIST. Я бы предложил вам создать новый ANN и обучить его с помощью набора данных AIM.

...