Открыть сервисСервис

Сканирование QR-кодов с изображений

Сканирование QR-кода с фотографии — процесс распознавания и декодирования двумерного штрихкода (QR-кода), сохранённого в виде растрового изображения, с помощью программного обеспечения, без необходимости наводить камеру устройства на оригинальный код в реальном времени. Метод применяется, когда код напечатан на недоступном объекте, получен в переписке, найден в интернете или снят на фото при неудобных условиях.

Принцип работы

QR-код (Quick Response Code) — двумерный штрихкод, разработанный в 1994 году японской компанией Denso Wave. Он состоит из модулей (чёрных и белых квадратов), расположенных по квадратной сетке, и содержит три маркера позиционирования в углах, позволяющих программе определить расположение, масштаб и наклон кода.

Декодирование с изображения включает следующие этапы:

  1. Предобработка — программное обеспечение анализирует картинку, выделяет область с кодом, при необходимости применяет бинаризацию (перевод в чёрно-белое) и коррекцию перспективы.
  2. Поиск маркеров позиционирования — алгоритм находит три характерных квадрата в углах.
  3. Считывание модулей — по сетке извлекаются биты данных с учётом масштаба и возможного искажения.
  4. Декодирование и коррекция ошибок — данные проходят проверку по коду Рида — Соломона, что позволяет восстановить содержимое при повреждении до 30 % кода.
  5. Выдача результата — распознанные данные (URL, текст, Wi-Fi-параметры, контакт) передаются пользователю.

Способы сканирования с фото

Встроенные средства мобильных ОС

В Android-смартфонах с Google-камерой и оболочками MIUI, One UI, ColorOS и других распознавание QR-кодов встроено в приложение «Камера». Для чтения кода с изображения достаточно открыть фотографию в галерее и выбрать пункт «Сканировать QR-код» или воспользоваться функцией Google Lens. В iOS сканирование доступно через приложение «Камера» (для съёмки) и через «Контроль центра»: виджет сканирования добавляется в раздел настроек. Для обработки сохранённого изображения используется приложение «Живые фото» (Live Text) — достаточно удерживать палец на коде в открытой фотографии.

Специализированные приложения

Наиболее распространённые решения:

ПриложениеПлатформаОсобенности
QR & Barcode Scanner (TAC)AndroidСканирование из галереи, история, создание кодов
QR Code Reader (Scan)Android, iOSПоддержка пакетной обработки
Код-сканер (Яндекс)Android, iOSИнтеграция с сервисами Яндекса
QR Scanner ProiOSРаспознавание из iCloud-фото

Большинство подобных приложений имеют кнопку «Импорт из галереи» или иконку изображения на главном экране — она открывает выбор файла для декодирования.

Онлайн-сервисы

Для обработки QR-кода с фото на компьютере используются веб-сервисы: ZXing Decoder Online, QR Code Decoder (qrcode-monkey), QRStuff и аналогичные. Принцип работы: пользователь загружает файл (JPG, PNG, BMP) или указывает ссылку на изображение, сервис выполняет декодирование на сервере и выводит результат. Для локальной обработки без передачи данных на сторонний сервер применяются десктопные программы: QR Code Tools, ZBar (консольная утилита для Linux), а также библиотеки OpenCV и pyzbar в Python.

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

Google Lens (встроенный в Google Photos и Google Assistant) распознаёт QR-коды на любых изображениях в галерее. Аналогичные функции есть у Bixby Vision (Samsung), Google Photos на Android и iOS, а также у облачных сервисов распознавания.

Типичные проблемы и решения

  • Код не распознаётся. Причина — низкое разрешение, сильное сжатие JPEG, блик, тень или сильный наклон. Решение: использовать исходное изображение без пересжатия, увеличить область кода кадрированием, обеспечить контраст.
  • Код повреждён или частично закрыт. Встроенный алгоритм коррекции ошибок восстанавливает до 30 % данных; при большем повреждении декодирование невозможно.
  • Код нестандартного формата. Некоторые приложения не поддерживают Micro QR, iQR или коды с логотипом в центре. В таких случаях помогают универсальные декодеры на базе ZXing.
  • Множественные коды на изображении. Большинство приложений выбирают один доминирующий код; для пакетного чтения требуется специализированное ПО.

Безопасность

QR-коды являются распространённым вектором фишинга: содержимое может вести на мошеннические сайты. Перед переходом по распознанной ссылке рекомендуется проверять домен, избегать перехода на HTTP-ресурсы, требующие ввода платёжных данных, и использовать средства защиты, встроенные в ОС (Google Safe Browsing, Apple Fraud Warning).

Применение

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

Источники

  • Denso Wave Incorporated. QR Code Standard Overview.
  • ZXing Project. Barcode Image Processing Library Documentation.
  • Apple Inc. Live Text in iOS — User Guide.
  • Google LLC. Google Lens Help Center.
  • OpenCV Documentation. QR Code Detection Module.
Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru