Локальное распознавание номеров телефонов: практика и оптимизация

Разработчики столкнулись с задачей оперативного создания системы распознавания телефонных номеров непосредственно на мобильных устройствах для демонстрации на ИТ-фестивале. Ограничения во времени и необходимость автономности, из-за возможных проблем с интернетом, привели к выбору on-device подхода. Приложение, разработанное на SwiftUI, использовало связку TensorFlowLite, Accelerate и М⃰l для распознавания, а также WebSocket для соединения с сервером, заменив ненадежный Multipeer Connectivity.
Локальное распознавание номеров телефонов: практика и оптимизация
Изображение носит иллюстративный характер

Первоначально для распознавания использовался фреймворк Vision от Apple, но столкнувшись с проблемами неточного распознавания, особенно рукописных номеров, было решено задействовать собственные, более точные ML-модели. В результате был разработан пайплайн из трех моделей: кроппера, сегментера и OCR, которые работали совместно для выделения, маскировки и последующего распознавания текста номера телефона.

Для оптимизации производительности использовался фреймворк М⃰l, позволивший проводить вычисления на GPU, а также были реализованы собственные шейдеры для ускорения процесса поиска связанных компонентов в изображении. Были применены перспективные трансформации для выравнивания текста перед отправкой в OCR.

Несмотря на успешное решение основной задачи, возникли трудности с перегревом мобильных устройств из-за постоянной работы моделей, связи с сервером и включенного экрана. Проблема была решена путем отказа от постоянной зарядки. Итоговая система показала высокую точность и скорость распознавания, превысив по времени человека в 7,5 раза.


Новое на сайте

20099Нейронаука одиночества: есть ли в мозге клетки, которые страдают? 20098Почему глаза так долго привыкают к темноте — и что за этим стоит? 20097Мыть или не мыть рис: что реально происходит в кастрюле 20095Мне не предоставили текст для написания статьи. 20094Мыть или не мыть рис: что реально происходит в кастрюле 20092Почему глаза так долго привыкают к темноте — и что за этим стоит? 20087Игла сквозь череп: медицинский случай с рыбой-иглой и задачей, которую хирурги решали... 20085Живая квантовая сеть в Нью-Йорке: как Qunnect пытается построить интернет, который нельзя... 20084Живые обои: дрожжи, алгинат и 3D-принтер вместо поклейки 20083ИИ-агент уничтожил базу данных за 9 секунд и сам же признался в этом 20082CVE-2026-5027: почему уязвимость в Langflow уже активно эксплуатируется хакерами? 20081GreatXML: новый обход BitLocker через Recovery Partition 20080Июньский Patch Tuesday 2026: 206 уязвимостей, три zero-day и неуправляемый ИИ в поиске дыр
Ссылка