Можно ли использовать персептрон для обнаружения рукописных цифр? - PullRequest
9 голосов
/ 16 февраля 2009

Допустим, у меня есть небольшое растровое изображение, которое содержит одну цифру (0..9) при написании от руки.

Можно ли обнаружить цифру с помощью (двухслойного) персептрона?

Существуют ли другие возможности обнаружения однозначных цифр из растровых изображений, кроме использования нейронных сетей?

Ответы [ 3 ]

8 голосов
/ 16 февраля 2009

Подача каждого пикселя растрового изображения непосредственно в нейронную сеть потребует большой подготовки и не будет хорошо работать для масштабирования или поворота изображения.

Чтобы помочь нейронной сети выполнить хорошую классификацию, вам нужно выполнить некоторые шаги предварительной обработки.

  • Нормализация изображения:
    • Настройка контрастности и яркости так, что гистограмма изображения соответствует эталонному изображению.
    • Размытие изображения, чтобы удалить шум.
    • Преобразуйте его в черно-белое, используя некоторый порог.
    • Найдите ограничивающую рамку фигуры, масштабируйте до заранее определенного размера.
  • Рассчитайте различные особенности изображения, которые можно использовать для различения одной цифры от другой:
    • Номер Эйлера изображения & mdash; говорит вам, сколько «отверстий» в форме (например, два отверстия для цифры 8).
    • Количество белых пикселей (область цифры)
    • главных компонентов набора координат белых пикселей & mdash; рассказывает, насколько «вытянута» форма.
    • ... другие функции, о которых вы можете подумать, имеют сходные значения для похожих цифр.

Основные компоненты также можно использовать для нормализации вращения фигуры, чтобы самая длинная ось была вертикальной.

Функции - это то, что вы вводите в нейронную сеть для классификации, а не пиксели.

8 голосов
/ 16 февраля 2009

Вот ссылка на огромную базу рукописных цифр. На главной странице также приведены данные об относительной производительности для многих различных методов, включая двухслойные нейронные сети. Это должно дать вам хорошее начало: База данных цифр MNIST и производительность

Возможно, вы также захотите проверить работу Джеффа Хинтона «Ограниченные машины Больцмана» , которая, по его словам, работает довольно хорошо, и на его сайте есть хорошая пояснительная лекция (очень смотрибельная).

1 голос
/ 16 февраля 2009

Вот пример программы Matlab , которая использует обученную нейронную сеть для обнаружения однозначных чисел (размер изображения установлен на 28 * 28).

...