Распознавание сканов паспортов



Распознавание сканов паспортов с использованием API Гугла для распознавания текста сканов и API DaData для некоторых дополнительных функций. На выходе получается список формализованных полей (серия, номер, дата выдачи, код и наименование подразделения, выдавшего паспорт, ФИО владельца и его дата рождения). Паспорт распознается независимо от наличия машино-читаемой строки, однако при её наличии вероятность ошибок распознавания резко снижается

Автоматизированное распознавание паспортов с получением значений фиксированных полей (серия, номер, дата выдачи, код и наименование подразделения, выдавшего паспорт, ФИО владельца и его дата рождения) — это задача которая возникает в случае если Ваш бизнес связан  с работой с большим количеством физических лиц. 

Данная обработка на входе получает сканы страниц паспортов в виде PDF-файлов, а на выходе выдает таблицу значений фиксированных полей для каждого скана паспорта (один паспорт — одна строка таблицы). Далее эту таблицу можно сохранить в эксель. Обработка тестировалась на двух конфигурациях — УТ 11.0 и ТМС (логистика) на платформе 8.3.13.  Однако поскольку она не использует никаких метаданных конфигурации, поэтому будет работать в любой конфигурации использующей управляемые формы и под любой платформой, умеющей посылать POST- и GET-запросы и в которой есть встроенная функция Base64(). 

Для работы нужны ключи доступа API Гугла и API сервиса DaData. В данной разработке есть эти ключи, но ИСКЛЮЧИТЕЛЬНО ДЛЯ ТЕСТИРОВАНИЯ. После 5-6 запусков обработки с этими ключами, они будут отключены. Поэтому получите свои собственные ключи — никакой сложности для программиста этот процесс не представляет. Сразу же предупреждаю, что API Гугл — платный.  Но не особо дорогой — одна распознанная картинка обойдется вам  примерно в 10 копеек и это не считая того что при первом подключении платного аккаунта Гугл вы получите невозвратный кредит на  $300

Кроме того, на компутере должна быть установлена программа  Ghostscript — она необходима для конвертации PDF в JPG. Ghostscript  есть в архиве, её можно просто скопировать в корень любого диска. Ну или если вы любите все делать правильно, скачайте инсталлят  программы с сайта www.ghostscript.com (она бесплатна)  и установите программу  как положено. Учтите  что  Ghostscript  не умеет пропускать пробелы в полном пути к  файлу — то есть ни в полном имени файлов картинок, ни тем более в полном  имени самой Ghostscript (то есть в именах всех вложенных каталогов)  НЕ ДОЛЖНО БЫТЬ ни одного пробела.

И, как всегда, напоминаю — это НЕ ГОТОВАЯ ПРОГРАММА. Это заготовка, пример использования определенных сервисов для достижения определенных целей. Просто скопированная она практически бесполезна — в том числе и потому что желание не зависеть ни от каких метаданных конфигураций привело к некой, мягко говоря, неоптимальности кода — подсобные данные, которым самое место в регистре сведений или справочнике, были запиханы в макет.  Но думаю, даже самый начинающий программист 1С в состоянии справиться с интеграцией данной обработки в свою конфигурацию. Ну в крайнем случае можно заказать эту работу мне — за дополнительную плату. Пишите, звоните, договоримся… 

30 Comments

  1. blackhole321

    Это ведь ничего, что Вы отправляете персональнные данные людей неизвестно куда?

    М.б. озвучите название компании, чтобы сотрудники знали, что происходит с их данными без я так понимаю их ведома?

    Reply
  2. Torin99

    а что, там можно прочитать какие-то данные? По-моему я их достаточно стер чтобы однозначно восстановить их по этим картинкам было невозможно…

    Reply
  3. user856012

    (2)

    По-моему я их достаточно стер

    Вы умеете стирать данные в Гугле???

    Reply
  4. Torin99

    А гугл тут при чём? Картинки ИЗНАЧАЛЬНО были выложены так. что восстановить данные ПОЛНОСТЬЮ и ОДНОЗНАЧНО было невозможно. Если Вы в состоянии это сделать — назвать мне полностью паспортные данные лица, чьё фото на картинках, я готов извиниться и полностью удалить публикацию. Более того, я готов извинится и перед тем лицом, чьи данные Вы назовёте (если Вы их конечно назовёте) и возместить ему тот ущерб, который он сам запросит

    Reply
  5. user856012

    (4)

    А гугл тут при чём? Картинки ИЗНАЧАЛЬНО были выложены так. что восстановить данные ПОЛНОСТЬЮ и ОДНОЗНАЧНО было невозможно.

    Ффух! Гугл тут вот при чем:

    Распознавание сканов паспортов с использованием API Гугла

    То есть, речь идет не о размещенных вами картинках, а о том, что ваша разработка будет отправлять сканы паспортов в Гугл во время использования.

    По-моему, именно это имел в виду автор первого комментария.

    Reply
  6. Torin99

    А, извините. не понял.

    Вы представляете КАК именно работает АПИ Гугл? Гугл получает на вход бинарные данные и выдает на выход полученный текст. ВСЕ! Никакого ХРАНЕНИЯ входящих данных в гугл-сервисах НЕТ… Это заявлялось самим гуглом неоднократно и проверялось всеми и всяческими комиссиями тоже неоднократно

    Reply
  7. Torin99

    Вы представляете себе общий объем распознаваемых гугл-сервисами картинок в сутки? Для такого объема не хватит никаких хранилищ данных. А уж вычленить из этого потока сканы именно паспортов —это абсолютно нерешаемая задача. Да и кому нафик эта задача может понадобится? В тысячу раз проще взломать базу данных нашего родного МВД

    Reply
  8. blackhole321

    (5)Да именно это и имелось ввиду

    Reply
  9. Torin99

    (8) Вы против использования ЛЮБЫХ сервисов распознавания текста? Или именно гугловских? Если бы я использовал сервис Яндекса —это бы тоже вызвало у Вас аналогичный комментарий? А если бы сервис ABBYY?

    Reply
  10. blackhole321

    (9)Для начала я против передачи каких-либо данных о себе третьим лицам без моего согласия. Результатом таких действий является появление персональных данных людей в открытом доступе. На мой взгляд, наиболее безопасным будет вообще не использовать какие-либо компьютерные системы при работе с подобной информацией, однако это неудобно. Поэтому, компромиссным вариантом на мой взгляд будет являться использование сертифицированной системы внутри предприятия либо сертифицированного сервиса, который гарантированно не хранит данные и обеспечивает должный уровень безопасности при их передаче

    Reply
  11. Torin99

    (10)Почему же без вашего согласия? Вы при устройстве на работу не подписывали «Согласие на обработку персональных данных»? Я подписывал и ВСЕ сотрудники нашей компании тоже подлисывали — отказ от подписи означает невозможность подписания трудового договора с отказавшимся. А в тексте этого согласия прямо написано «…с использованием компьютерных систем обработки информации» КАКИХ именно систем там не написано. Так что юридически всё безупречно…

    Что касается » должного уровня безопасности» то лично у меня Сергей Бринн вызывает намного больше доверия чем большинство российских чиновников. Если он говорит что они не хранят данные — значит не хранят…

    Reply
  12. blackhole321

    (11)Согласие на обработку не означает, что вы имеете право раздавать её направо и налево и не заботиться о её сохранности etc. Если уж вам необходимо работать с персональной информацией, извольте заботиться о её сохранности и не нарушать закон

    Reply
  13. Torin99

    (12)Будьте добры привести формулировку конкретной статьи закона «О персональных данных», которую мы нарушаем использованием сервиса Гугл. Я в понедельник сразу же передам Ваше мнение руководителю нашего юридического департамента для тщательной экспертизы — на сегодня она никаких юридических проблем в использовании этого сервиса не нашла. Она кстати юрист с 30 летним стажем

    И конечно же она если она изменит свое мнение и согласится с Вами мы тут же остановим использование данного сервиса для обработки персональных данных.

    Reply
  14. blackhole321

    (18)

    Будьте добры привести формулировку конкретной статьи закона «О персональных данных», которую мы нарушаем использованием сервиса Гугл.

    Я могу предложить Вам самостоятельно изучить соответствующую нормативную базу, а также подумать над тем, как и где вы храните электронные копии паспортов (100 к 1, что вы даже не шифруете носитель, на котором они хранятся), как передаете их по сети внутри организации etc.

    Reply
  15. Torin99

    Простите, а Вы (в смысле Ваша организация) ШИФРУЕТЕ диск на котором расположена база ЗУП? А ведь скачать персональные данные из ЗУП ничего не стоит — достаточно иметь полный доступ к базе или любой доступ к конфигуратору базы или права администратора SQL-сервера или просто ДОСТУП к диску на котором хранится .mdf-файл SQL-сервера с базой ЗУП. И вы реально все это ШИФРУЕТЕ?

    А сколько Вы знаете еще тех, кто ШИФРУЕТ эти данные? Я, программист 1с с 20-летним стажем НИ РАЗУ не встречался с тем, чтобы персональные данные пользователей ШИФРОВАЛИСЬ внутри баз данных 1С или чтобы шифровались диски с базами ЗУП или даже хотя бы с тем, чтобы в компании как-то особо учитывалось КТО ИМЕННО имеет доступ к персональным данным пользователей ВНУТРИ баз 1С.. У нас в компании, вот так навскидку это как минимум 15 человек

    — 3 бухгалтера расчетчика

    — главный бухгалтер

    — финансовый директор

    — генеральный директор

    — 4 программиста 1С

    — ИТ-директор

    — 4 сисадимина, каждый из которых является администратором SQL-сервера, а значит простейшим запросом к таблицам хранения может скачать все персональные данные из базы ЗУП

    И имея эти ПЯТНАДЦАТЬ КАНАЛОВ потенциальной утечки данных, я должен более всего бояться кражи персональных данных сервисами Гугл? Да вы надо мной смеётесь…

    Reply
  16. papami

    (7) Недавно несколько сервисов одновременно признались что люди выборочно прослушивают записи речи, которые произнесены для голосового ассистента или «подслушаны» «случайно».

    Официально это делается с целью улучшения работы сервиса. Работают на подряде сторонние организации (откуда и произошел слив). А ведь объем того, что наговаривают пользователи сложно представить. Что там? Годы в час?)))

    И вычленить из потока сканы паспортов — абсолютно решаемая задача. Намного проще, чем распознать текст.

    На самом деле юристы Вашей организации могут не понимать как это происходит. Для них гугл — это браузер на экране компа. Нарисуйте им схему, на которой будет сервер («обработчик») не на территории России.

    Reply
  17. Torin99

    Украсть персональные данные НАПРЯМУЮ из базы данных ЗУП — еще более простая задача. Может стоит вначале озаботится её решением?

    Или Вас волнует именно «не на территории России»? То есть если данные украдет россиянин — это не так страшно?

    Reply
  18. papami

    (15)

    Каналов утечки больше.

    Кто данные сливает — тот и несет ответственность. Улавливаете?

    А с шифрованием тоже не все так просто с точки зрения законодательства)

    Reply
  19. Torin99

    (18) Конечно же улавливаю. Мы НЕ СЛИВАЕМ данные Гуглу. Мы имеем с Гуглом ОФИЦИАЛЬНЫЙ ДОГОВОР, в котором в числе прочего Гугл обязуется НЕ ХРАНИТЬ наши данные. Мы платим по этому договору деньги, а Гугл честно выполняет свои обязанности. И если Гугл НАРУШИТ этот договор, то он и будет отвечать. ОН, а не МЫ. Или Вы не считаете Гугл законной стороной договора? Ну так это ВАШИ проблемы. Законодательство России с Вами боюсь не согласится — Гугл это ЗАКОННО действующее на территории России юридическое лицо.

    Reply
  20. Torin99

    (16) Гугл — это НЕ Браузер. Гугл — это ОФИЦИАЛЬНОЕ ЮРИДИЧЕСКОЕ ЛИЦО (https://www.rusprofile.ru/id/1034637), с которым мы заключили ОФИЦИАЛЬНЫЙ ДОГОВОР. Мы несем свои обязанности по договору, Гугл — свои. В числе его обязанностей есть и обязанность — обеспечивать конфиденциальность переданной ему информации. И при нарушении им этой обязанности он и будет нести ответственность. Где при этом территориально расположены сервера обработчики данные не имеет НИКАКОГО значения. Наши собственные сервера баз данных кстати расположены в Канаде…

    Именно такова ОФИЦИАЛЬНАЯ ПОЗИЦИЯ наших юристов

    Reply
  21. papami

    (20)

    Вы отстояли свою позицию) На мой взгляд, как программист Вы прикрыты. Во всяком случае однозначно знаете что делаете. Но свои данные Вам на обработку я бы не отдал)

    Reply
  22. Torin99

    (21) Спасибо.

    Но скажите, Вы правда думаете что Ваши персональные данные представляют какой-то интерес для Гугла и он собирается на Ваших персональных данных нажиться? Или Вы верите в то что Гугл это враждебная России (и Вам лично как части России) организация? Или. Вы просто не любите Сергея Бринна? Почему такое неприятие вызывает именно использование сервисов Гугл?

    Reply
  23. papami

    (22)

    Нет. В плане Гугла про паспорта не уверен. У меня даже в облаке там кое-что крутится)

    Дело в том, что данные, которые доверены нам, перестают быть под контролем. Ведь от того, что мы можем сказать, что это не наша вина, сама вероятность утечки не уменьшается. Как только они где-то там начинают храниться- открывается еще +100500 вариантов. Админы, подрядчики, штатные программисты, кто-то может заниматься разметкой для последующего обучения нейросетей. И у кого-то может появиться соблазн. Обратите внимание на последние сливы данных. Простые люди выдергивают кусок базы и продают. Уже все «крупняки» заморались. Начните в Гугле))) набирать «утечка персональных данных». По факту, 100% гарантировать сохранность ни кто не может. Я не говорю, что отправленные для распознавания сканы тут же идут в реализацию чьих-то злостных планов. Но через года 3-4 вдруг внезапно может появиться аккаунт в каршеринге, симка, кредит или еще что-то, что может доставить хлопоты. Оно зачем?

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

    P.S.: В школе/ садике просят предоставить номер снилса в группе родителей. И люди начинают делать фото и слать в эту группу. Так в одно мгновение минимум на 30 смартфонах появляется около 20 фотографий документов. А у кого-то синхронизация с облаком. Куда это все дальше сыпется и у кого они окажутся «в руках» уже ни кто не контролирует.

    Reply
  24. blackhole321

    (19) Если не секрет, вы имеете договор на обработку персональных данных или договор на возможность использования сервиса?

    Также, как вы выполняли пункт 3, статьи 12 закона о персональных данных, по которому Вы обязаны убедиться, что контрагент, которому вы передаете данные для обработки делает это надлежащим образом до передачи этих данных?

    И да, согласно статье 6 п. 5. Если вы поручаете обработку данных кому-либо еще, ответственность за их сохранность etc. несете вы.

    Reply
  25. bbbsss

    Много придется переписывать кода под распознавание других документов, загран. паспорта и пр.? Работает много мигрантов…

    Reply
  26. Torin99

    ну вот код получения текст из картинки переписывать не придется, блок чтения машиночитаемой строки — тоже не надо переписывать, там одинаковый алгоритм и для российских и для загранпаспортов, код атрибутирования ФИО — чуть-чуть доработать, номер и серия — тоже чуть доработать… в общем, думаю процентов 10-15 кода надо будет переписать. Много это или мало — судите сами

    Reply
  27. saa@kuzov.org

    (13) трансграничная передача персональных данных россиян сейчас карается сильно, а с нового года ужесточают наказание

    Reply
  28. Torin99

    (27) Простите, а ГДЕ вы видите «трансграничную передачу». Гугл — это компания, зарегистрированная на территории РФ. А где именно расположены её сервера, обрабатывающие данные мы вообще можем не знать. Кстати, то что наши собственные сервера с базой ЗУП расположены в Канаде — это трансграничная передача данных или нет?

    Reply
  29. VmvLer

    перефразируя классика науки…

    человеческая глупость бесконечна и следовательно трансгранична.

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

    классику.

    Reply
  30. chng

    (17) Это оправдание не спасет вас от уголовного срока! Вас, как изготовителя ПО сливающего сканкопии документов и персональных данных граждан России на иностранные сервисы. И сотрудников нажимавших на кнопку «выполнить распознавание», как непосредственно совершавших преступные действия. Итого, на лицо факт наличия организованной преступной группы.

    «Иностранность сервиса» будет определяться не регистрацией компании, а по пулу IP адресов с которых отвечает этот сервис.

    Согласно 152ФЗ юзер может запросить у хранителя ПД куда и для каких целей передавались его данные. И если у Вас найдется такой пользователь, то эта справка и уйдет в прокуратуру. Причем неважно, ответят ваши кадровики честно или скроют факт передачи третьей стороне, от этого будет зависеть только длительность уголовного срока.

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

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *