Как стать автором
Обновить
75
16.9

Пользователь

Отправить сообщение
ПАК — это не только ящик (который является понятным устройством), но и распознающая программа (которую реализовать не так легко). Если кто-то (в том числе и безликий китаец) украдет наш ПАК и будет его продавать, то мы обратимся к специалистам. Насчет внесения изменений в ПАК — регистратор результатов интеллектуальной деятельности (РИД) проводит поиск на предмет совпадения, по заключению которого станет понятно достаточно ли Ваших изменений для регистрации нового РИД.
Мы любим Хабр и некоторые результы выкладываем сюда раньше чем объявляем о них официально. А про патент вы абсолютно правы.
Свяжитесь с нами по почте support@smartengines.biz
Спасибо за интересные вопросы! Ниже ответы по пунктам:
1) База сделана в различных условиях. Менялись устройства, освещение, снимали разные люди (иногда даже пальцы на картах присутствуют). При этом в основном снимали карточку «на весу», стол использовали в основном для получения рекламных фотографий.
2) Обучение свёрточных сетей производилось на искусственно созданной базе изображений (благо целевой шрифт известен – OCR-B) с последующей аугментацией. Ни одно изображение из упомянутых 750 картинок не использовалась для обучения.
3) Шрифт на картах один (OCR-B) и места для творчества платежные системы здесь не предоставляют. Фон придумывает банк. Было замечено использование OCR-A шрифта на indent-картах некоторых банков. Но для нас не проблема, так как мы используем искусственно созданную обучающую выборку.
4) Пестрый высокочастотный фон действительно создает дополнительные трудности. В этом месте нас спасает тот факт, что алгоритм поиска анализирует изображение границ, зная, что ищется три геометрически описанных строки. Такая задача похожа чем-то с распознаванием у окулиста цветных зашумленных карточек с цифрами: без знания того, что на карточках цифры распознать на них что-то разумное проблематично.
5) В настоящий момент наше SDK не распознает CSV код. При этом понимаем, что эта задача представляет собой omni-шрифтовое распознавание текстовой строки, которое у нас имплементировано.
Хотелось бы выразить отдельную благодарность автору очень удобного редактора LaTeX -> habrahabr, который сэкономил огромное количество времени и сил при написании статьи.
Если Вы посмотрите наш предыдущий комментарий, то увидите, что в примере, мы увеличиваем выборку всего на 20% при добавлении всех типов искажений. 400 — кратного увеличения выборки никто применять не призывает. Отличие нашего метода от описанного Вами второго подхода лишь в том, что мы осуществляем предварительную аугментацию данных. Это позволяет оптимизировать проведение несколько одновременных экспериментов по обучению сетей и эффективно использовать аппаратные ресурсы. К тому же мы не разу не говорили о применении случайных преобразований при создании данных. Применение случайных искажений, а в особенности их комбинаций, сильно усложняет задачу обучения нейронной сети и далеко не всегда приводит к уменьшению ошибки на тестовой выборке.
1. Вы правы.
2. Нам не ясно, что значит «неправильно», и какой эксперимент это показывает. Вычислительные мощности, очевидно, не зависят от порядка применения операций (далее вы сами, противореча себе, написали "… и по времени то же самое"). Размер профита в нашем случае опубликован, статья ровно об этом. Какая цифра вам показалась слишком маленькой? Заранее сделать аугментацию, как мы предлагаем, это (-) потратить много места на диске, (+) получить возможность архивирования удачного варианта раздутия, (+) возможность передать выборку согласно договору, не раскрывая алгоритмов ее создания. Но наша статья — не об этом, а о «профите» от собственно аугментации, вне зависимости от того, на каком этапе она производится.
3. Насколько нам подсказали наши эксперты, большинство победителей (если не все из них) последних лет на MNIST-e использовали раздутие обучающей выборки. Что бы нового мы могли сообщить об этом? В данной публикации мы не предлагаем никакого распознающего алгоритма, мы сосредоточены на выборке. И аугментация, конечно же, известный подход. Нашей целью было показать, насколько хорошо или плохо он работает. При этом раздутие на рукописных символах, очевидно, иное, чем на печатных. Для ниста обычно используются деформации сглаженным случайным полем смещений.
4. Нам тоже интересно, но, к сожалению, мы не являемся специалистами в этой области.
Подобные методы построения обучающей выборки действительно могут улучшать финальное качество распознавания. Если интересна данная тематика, можем написать про это еще статью.
Размер обучающей выборки возрастает на 20% при добавлении всех типов искажений, время обучения в среднем возрастает на 30%.
А, идея ясна. Да, это действительно быстро, но на классе изображений и документов, которые хорошо поддаются бинаризации. Должны быть видны все 4 стороны и не должно быть полос внутри, иначе фейл. Неплохо подходит к съемке чего-либо формата А4 на столе, а розовые права в руках или всевозможные карточки/визитки (прозрачные, полосатые, серые в ёлочку) с бинаризацией не дружат.
Если вопрос только в скорости работы схемы перебора, то вы меня немного удивили.
Куча линий состоит из 12 штук — по 3 кандидата для каждой стороны (да, это не указано в статье, но не выписывать же сюда всю конфигурацию?), т.е. 81 возможный четырёхугольник. Почти все операции по анализу углов и начислению штрафов — это O(1), кроме штрафов за вылезание — они О(n), где n — число пикселей за точкой пересечения, которые мы примем во внимание, а не длина картинки или даже региона.
Собственно, выкладка по времени в конце статьи говорит о том, что это далеко не самая затратная часть алгоритма.

К вашему варианту — мне не вполне понятны первые два шага.
К чему применять порог и что вы понимаете под отсечением цельных краёв?
Такую задачу можно решить одним циклом с std::next_permutation(...) и простой проверкой правильности ответа.

Приведите, пожалуйста, пример задачи (подозреваю, что она будет довольно «промышленной»), которую действительно есть смысл решать с помощью монад на С++, причем без сильного оверхеда. Еще лучше, если у вас уже был такой опыт.
Нашу демо-программу можно скачать в App Store и Google Play. Информация по лицензированию и цене пока что предоставляется по запросу. Если у вас есть вопросы, мы с удовольствием на них ответим, наш адрес указан на сайте.
Не совсем так — в данном случае мы заранее знаем, что перед нами паспорт, но хотим понять, есть ли на нем голографический узор (где именно он находится мы тоже хотим понять, но про это мы напишем в одной из следующих статей). Дело в том, что до сих пор широко распространены паспорта старого образца, в которых голографический узор отсутствует.
Каждая квадратная точка — это один пиксель. Такая решетка из пикселей получается по той же причине, что и в одномерном случае — спектр гауссианы умножается на спектр периодической решетки (который, как мы показали, также является периодической решеткой), с которой она свернута.
Под полученными периодическими элементами имелись в виду случайные контрастные фоновые элементы, которые, при повторении, могут в Фурье-спектре внезапно выглядеть, как требуемые периодические. Хотя, при должном рассмотрении, эта ситуация должна решаться.

Добить нулями с изменением модели изображения можно, но анализ станет значительно сложнее, поскольку к простому произведению спектров добавится свертка со сложным спектром, который совсем не похож на решетку из пиков.
Спасибо, исправили — очень неудобно ТеХовые формулы писать не напрямую, а через сторонние сайты перегонять в картинки.
Мы проверяли, что при 5% ошибке обрезки метод все еще работает, а разметка в наших датасетах имеет значительно меньшую ошибку.

Информация

В рейтинге
Не участвует
Работает в
Зарегистрирован
Активность