Определите все прямоугольники на изображении, используя CNN - PullRequest
0 голосов
/ 03 сентября 2018

Учитывая изображение таблицы, мне нужно обнаружить все пустые ячейки. Я не мог найти никаких исследований, касающихся этого онлайн. Это действительно проблема CNN? Я пытался использовать некоторые методы обработки изображений, такие как преобразование Хафа, но не смог добиться желаемых результатов. Любые другие предложения по обработке изображений?

Мой подход CNN до сих пор: Я создал очень маленький набор данных с использованием программного обеспечения для маркировки RectLabel и обучил ssd-сеть с использованием API обнаружения объектов Tensorflow. Результат был, как и ожидалось, с очень низкой степенью точности из-за небольшого набора данных. Мне нужны предложения о том, как я могу увеличить размер своего набора данных без ручного использования программного обеспечения RectLabel.

РЕДАКТИРОВАТЬ: Пример входного изображения

Мне нужно обнаружить заполненные ячейки в таблице и игнорировать ячейки с текстом

1 Ответ

0 голосов
/ 05 сентября 2018

На мой взгляд, лучший способ справиться с этим - использовать традиционное компьютерное зрение и алгоритмические подходы. Вероятно, вы можете сделать что-то вроде этого: пройтись по каждой строке и использовать хеш-таблицу для отслеживания пустой ячейки (все белые пиксели) и непустых ячеек (не все белые пиксели). В конце результатом будут числа в хеш-таблице. Для этого потребуется время O (n) и пространство O (m), где n - количество пикселей, а m - количество ячеек.

Если вы настаиваете на использовании CNN, то вам нужно собрать много (может быть, 1000-х) снимков ячеек (как, например, у вас). Затем вы должны выбрать сеть (помните о соотношении скорость / точность). Вы тренируете свою сеть как обычное обучение под наблюдением. Затем вы можете проверить это на тестовых данных.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...