Проект распознавания визитных карточек с использованием библиотек OpenCV, Tesseract и предобученной GOOGLE Bert модели с сайта HuggingFace.
Веб-сайт используемой модели: https://huggingface.co/dslim/bert-large-NER
ML_business_card_recognition_web/
├── init.py Файл инициализации модуля
├── app.py Главный файл приложения
├── bert_model.py Файл загрузки BERT модели
├── card_recognizer.py Распознаватель контура
├── contact_recognizer.py Распознаватель контактного лица
├── contact.py Класс описания сущности контактного лица
├── data/ Папка с дополнительными данными
└── jobs Текстовый файл с перечнем профессий
├── README.md Файл описания проекта
├── requirements.txt Файл,содержащий список необходимых библиотек
├── text_recognizer Распознаватель текста на базе Tesseract OCR
├── test_data/ Папка с тестовыми изображениями визитных карточек
└── card.jpg Тестовый файл изображения визитной карточки
└── token_recognizers/ Папка, содержащая распознаватели отдельных сущностей
├── init.py Файл инициализации модуля
├── email_recognizer.py Распознаватель email адресов
├── job_recognizer.py Распознаватель должности
├── loc_recognizer.py Распознаватель дреса (использует BERT)
├── name_recognizer.py Распознаватель имени и фамилии (использует BERT)
├── org_recognizer.py Распознаватель организации (использует BERT)
├── phone_recognizer.py Распознаватель телефонных номеров
└── website_recognizer.py Распознаватель веб-сайтов
- Программа представляет собой web приложение на фреймворке Streamlit. Приложение запускается из папки приложения следующей командой:
streamlit run app.py
Приложение по умолчанию разворачивается на локальном хосте localhost:8051.
-
Изображение должно иметь формат .jpg или .png и иметь достаточно высокое разрешение, изображение низкого качетсва будет распознано неверно. Внимание, программа распознает визитные карточки только на английском языке!
-
Перед запуском приложения необходимо установить движок оптического распознавания символов Tesseract OCR, используя следующие команды (все нижеприведенные команды представлены для MacOS и Linux, для Windows они могут отличаться):
Для Linux:
apt install tesseract-ocr
apt install libtesseract-dev
Для MacOS:
brew install tesseract
После установки движка Tesseract возможно придется также поменять путь к движку Tesseract, задаваемому в файле text_recognizer.py:
Для Linux:
pytesseract.pytesseract.tesseract_cmd = ( r'/usr/bin/tesseract' )
Для MacOS:
pytesseract.pytesseract.tesseract_cmd = ( r'/usr/local/bin/tesseract' )
На вашей системе путь может отличаться. Чтобы узнать корректный путь к движку на вашей системе, воспользуйтесь командой which в терминале:
which tesseract
- После установки Tesseract неоходимо установить дополнительные библиотеки Python командой:
pip install -r requirements.txt
-
Для тестирования приложения используйте изображение card.jpg из папки test_data.
-
Первичная загрузка модели BERT может занять значительное время, так как размер скачиваемых файлов занимает около 1.33 Гб, так что запаситесь терпением и чашечкой кофе! ☕️ 🍪
☺️