Витягування даних з візитівок і бейджів: OCR, NER та CRM-інтеграція

Менеджери вручну переносять контакти з візитівок і бейджів — частина даних губиться, а клієнти чекають на відповідь. Ми розробляємо витягування даних під ключ: від зйомки зразків до передачі готових карток у вашу CRM. Час на обробку одного контакту скорочується в рази, а помилки в полях переходять під контроль правил.
Часті запитання

Розпізнавання візитівок: де ламається вилучення даних

Стопка візитівок після конференції виглядає як готовий список контактів, але на вході в систему поводиться як необроблені дані.

Розпізнавання візитівок ламається не на читанні символів — надійність тут висока, а на вилученні даних з візитівок: треба зрозуміти, який рядок — ім'я, який — посада, який — юридична форма компанії.

Носії рідко бувають чистими. Зім'ята візитівка дає тіні на згинах, глянцева — відблиск від спалаху, темна із золотим тисненням втрачає контраст: рядки зливаються, межі полів зсуваються.

Двосторонні додають зворотний бік із рукописною позначкою — «познайомилися на стенді», «передзвонити пізніше».

Змішані мови — друге джерело помилок розпізнавання полів: ім'я латиницею, посада іншою мовою, телефон у місцевому форматі, від руки дописаний особистий номер.

Рукописний текст лягає поверх друкованого шару — розбір, налаштований на друкарський шрифт, такі рядки пропускає або склеює із сусідніми.

Навіть правильно прочитані поля часто не збігаються зі схемою картки: компанія та відділ надходять одним рядком, у контакту два телефони й жодної пошти, посада не зіставляється з довідником.

Без нормалізації — розбору імені, виділення організації, єдиного формату телефону, дедуплікації за доменом пошти — запис створюється, але залишається непридатним.

Ціна помилки відкладена: картка є, а лист іде в порожнечу, і частина обсягу повертається в ручне введення візитівок — години операторів замість роботи з лідами.

Втрата контактів після заходів вимірюється не часткою розпізнаних символів, а часткою людей, яким перша відповідь надійшла вчасно. Розбираємо, як це закривається.

Що дає розпізнавання візитівок і бейджів у відділі продажів

Після виставки чи конференції відділ отримує сотні візитівок і бейджів, і кожна картка проходить через руки менеджера: набрати ПІБ, компанію, посаду, телефон, пошту, потім звірити з базою на дублі.

Автоматизація введення контактів прибирає цю роботу повністю — вилучення даних відбувається без оператора, людина лише підтверджує спірні поля. Нижче — чек-ліст, який можна заміряти на своїй вибірці до та після впровадження.

  • Частка карток без ручного введення. На потоці однотипних носіїв 8 із 10 записів потрапляють у базу без правок; решта — нечитабельний скан або рукописний блок, який іде на додаткову розмітку.
  • Швидкість обробки візитівок. Партія з кількох сотень носіїв розбирається за хвилини, а не за дні ручного набору: вузьке місце зміщується з введення на підтвердження спірних полів.
  • Точність розбору полів. ПІБ, компанія, посада, телефон і пошта вилучаються на рівні сутностей, а не одним рядком тексту — за цим і міряється точність: скільки полів лягло у свої атрибути картки.
  • Клас помилок, який зникає під час звірки. Одруки в цифрах телефону, різні написання однієї компанії, дублі за поштою та загублені під час ручного введення записи — звірка за контрольними полями закриває їх до запису в базу, а не після.
  • Готовність до вивантаження. Записи надходять у форматі вашої системи — обмін із Bitrix24 та іншими CRM налаштовується на рівні полів і правил дедуплікації, без ручних таблиць-посередників.

Якщо за трьома-чотирма пунктами розрив з очікуванням — причина зазвичай у якості зйомки, а не в моделі розбору.

Способи вилучення даних: пакетна обробка та потік

Порівняння способів вилучення даних упирається в три питання: коли потрібен результат, наскільки передбачуваний вхід і хто відповідає за помилку. Усі варіанти дають на виході той самий набір полів, але по-різному розподіляють затримку, пікове навантаження та частку ручної роботи.

Варіант Коли підходить Обмеження
Пакетна обробка сканів Архів за минулий період, фотографії зі стенда, накопичені візитівки Результат не одразу; без контролю дублів повторне завантаження того самого файлу створює другі записи
Потокове розпізнавання Знімок роблять на вході, дані потрібні в момент знайомства Чутливе до якості знімка та обривів зв'язку — потрібні черга й повторні спроби
Ручне введення даних Нестандартна верстка, бланки, обов'язкова вивірка перед записом Час зростає лінійно з обсягом, якість залежить від конкретного оператора

Пакет і потік не виключають одне одного. Робоча схема — маршрутизація за оцінкою впевненості: поля вище порога йдуть у CRM автоматично, спірні потрапляють у коротку чергу на перевірку разом із фрагментом зображення.

Окремий шар — зіставлення з уже наявними контактами. Без нього пакет із тисячі сканів перетворюється на тисячу дублів, і оператор розгрібає те, що повинна була зняти автоматика.

Етапи впровадження: від зразків до передачі в CRM

Впровадження починається не з моделі, а з корпусу зразків: 150–300 візитівок і бейджів від відділу продажів і з минулих заходів — зім'ятих, знятих під кутом, двосторонніх, з латиницею та рукописними позначками.

За ними фіксуємо схему полів і еталонну розмітку: без еталона якість розбору не можна ні виміряти, ні прийняти.

Порядок робіт

  1. Узгоджуємо схему полів і правила нормалізації: обов'язкові атрибути, єдиний формат телефонів, розбір складених посад і назв двома мовами.
  2. Налаштовуємо розбір: розпізнавання тексту з урахуванням перспективних викривлень, вилучення сутностей, словники галузей і посад, окремі правила для двосторонніх карток і QR-кодів.
  3. Перевіряємо якість даних звіркою з ручним еталоном за кожним полем окремо — точність і повнота вважаються не «в середньому», а за телефоном, поштою, компанією. Помилки розкладаємо за класами: неправильний розбір, склейка двох карток, втрачений атрибут.
  4. Задаємо поріг впевненості: записи нижче нього йдуть на ручну перевірку, решта пишеться автоматично — потік не блокується, база не засмічується.
  5. Проводимо пілот на зразках на одному каналі: скани зі стенда або фото від частини менеджерів. Заміряємо час обробки картки, частку дублів і розходження з еталоном, правимо правила, а не результат.
  6. Інтегруємо з обліковою системою: зіставлення полів із сутностями, дедуплікація за нормалізованим телефоном, доменом пошти та компанією, мітка джерела каналу, повторні спроби при відмові запису.
  7. Передаємо регламент спірних випадків, панель метрик якості, інструкцію для менеджерів і процедуру донавчання на нових зразках.

Схеми потоків, правила розбору полів і регламенти

Готове рішення без документації перетворюється на чорну скриньку: при зміні формату бейджа або додаванні нового поля ніхто не розуміє, де правити правило, а супровід починається зі зворотного проєктування.

Тому разом із сервісом замовник отримує комплект артефактів, що описують розбір від вхідного зображення до запису в CRM.

  • Карта потоків даних — шлях зображення від завантаження до архіву: де лежить оригінал, де знеособлена копія, який сервіс до чого звертається і в який момент дані залишають контур.
  • Словник полів — таблиця вилучених атрибутів: ПІБ, компанія, посада, телефон, пошта, сайт. Для кожного — тип, обов'язковість, місце на картці та поведінка, якщо поле не знайдено.
  • Правила розбору полів — вирази та правила нормалізації: додаткові номери, внутрішні коди, подвійні посади, транслітерація доменів. Тут же поріг впевненості, нижче якого картка йде на ручну перевірку.
  • Правила зіставлення записів — за якими ключами шукається дублікат у CRM, що вважається збігом, коли контакт оновлюється, а коли заводиться новий запис.
  • Права доступу до зображень — ролі та області видимості: хто відкриває скан, хто бачить лише вилучені поля, термін зберігання оригіналу та порядок видалення на запит суб'єкта.
  • Регламент обробки спірних карток — черга ручної перевірки, критерії «прийняти / виправити / відхилити», термін реакції та ескалація при систематичних помилках на одному типі бейджів.
  • Документація з розбору та журнал правок — кожна правка правила проходить перевірку на розміченому наборі; фіксується, які поля зачеплені та як змінилася частка помилок.

Кейс: точність розбору бейджів зросла втричі

Потік бейджів з галузевого заходу на кілька тисяч учасників: єдиний носій контакту — надрукована картка, а знімки стендова команда робила на телефон, часто під кутом і при змішаному світлі.

До вечора першого дня на ручному розборі скупчилося близько 600 фотографій, і оператори переносили ім'я, компанію, посаду, телефон і пошту в CRM вручну.

Як було

За трьома днями зібрали близько 1 800 знімків. Частка ручного введення сягала 35%, ще 12% контактів губилися: кадр розмитий або повернутий, оператор до нього не дійшов. Помилки в пошті та телефоні спливали вже на розсилці — частина листів не доходила.

Що змінили і як вимірювали

Зібрали конвеєр: пошук області бейджа, розпізнавання тексту, розбір полів за шаблоном із перевіркою пошти й телефону, дедуплікація за доменом і номером, автозавантаження в Bitrix24.

Еталоном слугували 400 знімків, розмічених вручну, — на них рахували точність за кожним полем окремо.

Точність розбору полів зросла з 41% до 89%, тобто втричі. Ручне введення впало з 35% до 7%, втрати контактів — з 12% до 1,5%, а партія з 600 знімків обробляється за хвилини замість вечора роботи операторів.

Чим відрізняється вилучення полів від посимвольного читання

Оптичне розпізнавання — наприклад, Tesseract — віддає потік символів із координатами блоків: рядки «Іван Петров» і «Директор з розвитку» на виході виглядають однаково.

Візитівка при цьому неоднорідна — логотип, дублювання написів двома мовами, вертикальні підписи, реквізити дрібним кеглем. Посимвольне читання їх не розрізняє, тому в CRM їде назва компанії в поле «Ім'я», а телефон — у «Посада».

Вилучення полів працює на рівні змістових сутностей: ім'я, організація, посада, канали зв'язку, адреса.

Модель розпізнавання іменованих сутностей розмічає токени, а поверх неї йдуть правила — позиція блоку на картці, кегль, наявність знака @ або коду країни, збіг домену з уже відомими записами в базі.

Словник посад закриває спірні випадки: він зводить «керівник відділу продажів» і «sales director» до однієї канонічної ролі з рівнем.

Нормалізація контактів — окремий шар між моделлю та системою. Телефони приводяться до формату з кодом країни, пошта — до нижнього регістру, домен відокремлюється від особистої скриньки, адреса розкладається на компоненти.

Без цього та сама людина потрапляє в базу в трьох написаннях, породжує дублі, а звіт за каналами залучення рахує її за трьох.

Звідси висновок: якість визначається не движком читання, а набором правил, словників і валідацією на вході в CRM. Саме цей шар ми збираємо та супроводжуємо під конкретний потік карток.

Якість розбору та приватність: технічні сумніви

Якість розпізнавання упирається не в модель, а в носій.

Візитівка, знята під кутом на телефон при боковому світлі, глянцева ламінація з відблиском, двосторонній бейдж на шнурку, де частину тексту перекрито логотипом, — на таких кадрах частка помилок у полях зростає в рази проти рівного скану.

Тому конвеєр не робить один прохід: спочатку вирівнювання та нормалізація зображення, потім розпізнавання, далі розбір сутностей і звірка з корпоративними довідниками компаній і посад — так «ТОВ Ромашка» і «Ромашка, ТОВ» зводяться до одного запису.

Приватність вирішується архітектурою, а не обіцянками.

Зображення носіїв обробляються в контурі замовника або в ізольованому сховищі з шифруванням, доступ надається ролями, а термін життя файлу обмежений політикою зберігання: після успішного розбору та звірки в CRM їдуть лише поля. Логи звернень знеособлені, вивантаження назовні закрите.

Що відбувається з візитівками, які система не розібрала?

Картка не втрачається — вона стає в чергу ручної перевірки, поля з низькою впевненістю позначаються. Оператор правит їх в інтерфейсі за секунди, правка йде в словники та довідники, і наступний схожий кадр розбирається вже автоматично.

Чи можна взагалі не зберігати зображення носіїв?

Так. Режим «розібрати й видалити» залишає лише структуровані поля та ознаку джерела. Якщо потрібна звірка людиною, зображення живе до підтвердження. Термін зберігання задається налаштуваннями, видалення фіксується в журналі.

Як система працює з нестандартними шрифтами та мовами?

Змішаний текст — норма: кирилиця з латиницею, ієрогліфи, письмо справа наліво, рукописні позначки на полях.

Під кожну мову підключається свій набір символів і правила нормалізації, імена та посади звіряються з двомовними довідниками, транслітерація приводиться до єдиного вигляду — дублі в CRM не плодяться.

Обговоримо задачу: що потрібно для старту та оцінки

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

  • Зразки для оцінки — 20–30 реальних носіїв: зім'ятих, ламінованих, знятих під кутом, при слабкому світлі та з відблиском від спалаху. На такій вибірці видно, де закінчується впевнене читання і починається ручна правка.
  • Схема полів облікової системи — які атрибути обов'язкові (ПІБ, організація, посада, телефон, пошта, месенджери), у яких форматах вони зберігаються і з якими довідниками звіряються.
  • Точки підключення — програмний інтерфейс, файлове вивантаження або обмін подіями, а також хто на вашому боці відповідає за стик і тестовий контур.
  • Правила дублів — за яким набором полів контакт вважається вже наявним і як розв'язувати конфлікт, коли бейдж несе свіжіші дані.
  • Обмеження щодо доступу — де допустимо обробляти зображення, чи потрібен контур без виходу назовні і що обов'язково потрапляє в журнал.
  • Мови та алфавіти — латиниця, кирилиця та змішані рядки всередині одного поля: від цього залежать словники та постобробка.

Обговоримо задачу розпізнавання предметно: потік носіїв, чинна облікова система, куди і в якому вигляді повинні потрапляти дані, хто приймає результат. За цими вступними повернемося з оцінкою, планом робіт і порядком старту проєкту.

Напрямки AI-розробки

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1543
  • Розробка веб-додатків для компанії FEEDME
    Розробка веб-додатків для компанії FEEDME
    1394
  • Розробка веб-сайту для компанії БЕЛФІНГРУП
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1081
  • Розробка інтернет магазину для компанії FURNORO
    Розробка інтернет магазину для компанії FURNORO
    1374
  • Розробка логотипу компанії B2B Advance
    Розробка логотипу компанії B2B Advance
    816
  • Розробка веб-додатків для компанії Enviok
    Розробка веб-додатків для компанії Enviok
    1142