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



Распознавание сканов паспортов с использованием 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 не будет опубликован. Обязательные поля помечены *