Распознать текст с картинки онлайн — бесплатный OCR
Нажмите, чтобы выбрать изображение — или перетащите его сюда, или нажмите Ctrl+V
JPG, PNG, WebP, GIF, BMP, AVIF · до 25 страниц за раз · распознаётся в браузере, не загружается на сервер
Перетащите скриншот, фотографию страницы или сканированный чек — и текст вернётся в виде, который можно выделить и скопировать. Распознавание делает Tesseract, собранный в WebAssembly и запущенный в этой же вкладке, поэтому картинка никуда не уходит: нет лимита страниц, водяных знаков и поля для электронной почты. Выберите один или два языка из 34, укажите тип вёрстки — а переключатели очистки превратят рваный построчный вывод в нормальные абзацы.
Какой точности ждать
Точность по символам почти целиком зависит от того, сколько пикселей приходится на букву и насколько чисто она отделяется от фона. Вот диапазоны, в которые обычно попадает движок LSTM Tesseract, и во что каждый из них обходится при вычитке.
| Источник | Обычная точность | Что это значит на практике |
|---|---|---|
| Скан печатной страницы, 300 dpi | 98–99% | Ошибка раз в две-три строки |
| Резкое фото книги, ровно и при свете | 95–98% | Несколько слов на абзац надо глянуть |
| Скриншот при масштабе 2× или на retina-экране | 95–99% | Обычно чисто, слабое место — пунктуация |
| Скриншот интерфейса с кеглем 11 px при 100% | 70–90% | Лечится увеличением или повторным снимком |
| Выцветший чек на термобумаге | 60–85% | Суммы и даты приходится проверять вручную |
| Снимок под углом или в тени | 50–80% | Проще переснять страницу фронтально |
| Рукописный курсив | почти ноль | Модель на этом не обучалась |
Какую вёрстку выбрать
Эта настройка — режим сегментации страницы Tesseract, и именно она меняет результат сильнее всего. «Автоматически» запускает полный анализ вёрстки: для документа это правильно, а для скриншота с шестью словами — нет. Там Tesseract ищет колонки, которых не существует, и выбрасывает текст.
| Вариант | PSM Tesseract | Для чего |
|---|---|---|
| Автоматически | 3 | Книжные страницы, письма, статьи — всё страничное |
| Разреженный текст | 11 | Скриншоты приложений, окна ошибок, вывески, мемы |
| Один блок | 6 | Обрезанный абзац, цитата, фрагмент кода |
| Одна колонка | 4 | Чеки, счета, узкая колонка с разным кеглем |
| Одна строка | 7 | Серийный номер, автомобильный номер, заголовок |
Если результат неверный
- Не вернулось вообще ничего. Переключите вёрстку на «Разреженный текст». В автоматическом режиме Tesseract может решить, что весь скриншот — это картинка, и вернуть пустую строку.
- Буквы верные, а диакритики нет. Загружен не тот язык. В английских traineddata нет модели для ä, ş или я, поэтому движок подставляет ближайшую знакомую латинскую форму.
- Случайная пунктуация между буквами. Это артефакты JPEG по краям глифов. Включите «Поднять контраст», а если оригинал ещё под рукой — сохраните его в PNG вместо повторного пересжатия в JPEG.
- Скриншот из тёмной темы не читается. Включите инверсию. Инструмент пытается угадать это по первой картинке, но угадывает только один раз.
- 0 и O, 1 и l перепутаны. В многих шрифтах без засечек эти пары выглядят одинаково, и без словарного слова рядом модели не на что опереться. Серийные номера и коды проверяйте всегда.
- Колонки перемешались. Обрежьте страницу по одной колонке и распознайте их по отдельности. Анализ вёрстки в две колонки ломается, когда средник узкий или текст с перекосом.
Как это работает
- 1 Добавьте изображение Нажмите на область загрузки, перетащите файлы или просто нажмите Ctrl+V, чтобы вставить скриншот из буфера обмена. Подойдут JPG, PNG, WebP, GIF, BMP и AVIF, за один раз можно поставить в очередь до 25 страниц.
- 2 Выберите язык Нужен язык текста на картинке, а не язык интерфейса — именно под него загружается модель распознавания. Если на странице два языка, добавьте второй: русский документ с английскими названиями читается заметно лучше как rus+eng.
- 3 Укажите вёрстку Для обычной страницы оставьте «Автоматически». Для скриншотов, интерфейсов и подписей, разбросанных по картинке, выберите «Разреженный текст», для одной строки крупного шрифта — «Одна строка», для узкой колонки — «Одна колонка».
- 4 Распознайте и причешите Нажмите «Распознать текст» и дождитесь полосы прогресса. Когда всё готово, переключатель «Склеить перенесённые строки» соберёт построчный вывод в абзацы — после этого скопируйте результат или скачайте файлом .txt.
Изображения остаются на вашем компьютере
Фотография декодируется и распознаётся внутри этой вкладки — она не загружается на сервер, и удалять у нас нечего. Честная оговорка: при первом запуске браузер скачивает с CDN jsDelivr сам движок (примерно 3 МБ WebAssembly) и языковые данные (5–15 МБ на язык), а дальше берёт их из кэша. То есть первое распознавание требует интернета, после этого инструмент работает и без сети. Сами изображения и текст в запросы не попадают никогда.
Часто задаваемые вопросы
- Моё изображение куда-нибудь загружается?
- Нет. Файл декодирует ваш браузер, а читает его Tesseract, собранный в WebAssembly и работающий в отдельном потоке этой вкладки. Запроса на загрузку нет, временной копии на сервере нет, удалять потом тоже нечего. Единственный сетевой трафик — разовая загрузка движка и языковых данных с jsDelivr: это публичные статические файлы, и о вашей картинке они ничего не сообщают.
- Насколько точно работает OCR в браузере?
- На чистом скане печатного текста в 300 dpi движок LSTM Tesseract даёт около 98–99% верных символов — это одна ошибка на две-три строки. Резкая фотография книжной страницы с телефона обычно 95–98%. Снимок под углом при слабом свете или скриншот интерфейса с кеглем 11 px может провалиться ниже 85%, а это уже тот случай, когда правка выходит дольше, чем перепечатать вручную. После каждого запуска инструмент показывает среднюю уверенность, так что вы знаете, с чем имеете дело, до того как начнёте доверять тексту.
- Распознаёт ли он рукописный текст?
- Нет, на это рассчитывать не стоит. Tesseract обучался на печатных шрифтах, и в стандартных файлах traineddata модели рукописного ввода просто нет. Очень аккуратные печатные заглавные иногда проходят; обычный курсив возвращается шумом. Если нужен рукописный текст, придётся идти в облачный сервис, обученный на нём, — а это значит загрузить изображение, то есть ровно то, чего этот инструмент и позволяет избежать.
- Почему из скриншота получается бессмыслица?
- Почти всегда потому, что текст слишком мелкий в пикселях. Tesseract рассчитывает на заглавную букву высотой около 30 px, а скриншот веб-страницы при масштабе 100% даёт ему примерно 11. Инструмент уже увеличивает всё, у чего короткая сторона меньше 1400 px, и это решает большую часть проблемы — но лучший результат даёт скриншот, снятый при масштабе браузера 200% или на экране с высокой плотностью точек. Ещё два приёма: переключите вёрстку на «Разреженный текст» и включите инверсию, если текст светлый на тёмном.
- Почему после каждой строки стоит перенос?
- Потому что OCR именно это и видит: по строке текста на каждую строку страницы, без всякого понимания, какие переносы поставил автор, а какие просто пришлись на правое поле. Включите «Склеить перенесённые строки». Строка приклеивается к следующей, если она не кончилась точкой, двоеточием или закрывающей кавычкой и если следующая не начинается с маркера или номера, — так абзацы снова текут, а списки сохраняют вид. Вторую половину задачи решает «Убрать переносы»: слово, разорванное как «распозна-» / «вание», собирается обратно.
- Можно ли распознать PDF?
- Напрямую нет — инструмент принимает изображения. Для сканированного PDF сначала отрендерите страницы в PNG и перетащите их сюда: за раз помещается 25 штук, и на выходе получится один текстовый файл с заголовком на каждую страницу. Если же в PDF уже есть текстовый слой (а он есть почти во всём, что вышло из Word, браузера или бухгалтерской программы), OCR вообще не нужен: выделите текст и скопируйте или воспользуйтесь извлечением текста из PDF — это и точнее, и мгновенно.
- Какие языки он понимает?
- Тридцать четыре, среди них русский, украинский, английский, немецкий, французский, испанский, итальянский, португальский, польский, чешский, турецкий, греческий, арабский, иврит, хинди, тайский, вьетнамский, китайский (упрощённый), японский и корейский. Любые два можно включить одновременно. Но за совмещение приходится платить точностью по каждому: у модели на каждом символе больше вариантов выбора, — поэтому второй язык стоит добавлять только если на странице действительно два.
- Есть ли ограничение на число страниц или размер файла?
- 25 изображений за один проход, и это ограничение по памяти, а не по вашему аккаунту: каждая страница хранится во вкладке как декодированные пиксели. Суточной квоты нет, ограничения на размер файла — тоже, кроме того, что способен декодировать браузер. Всё, что больше 3500 px по длинной стороне, перед распознаванием уменьшается до этого размера: дальше Tesseract только замедляется, точнее не становится.
- Что означает цифра уверенности?
- Это собственная средняя уверенность Tesseract по словам страницы, от 0 до 100, взвешенная здесь по объёму полученного текста. Выше 88 результат обычно можно брать, пробежав глазами. От 75 до 88 проверяйте в первую очередь цифры и имена собственные: именно там модели меньше всего помогает языковой контекст, так что сумма в счёте или фамилия ошибаются гораздо чаще обычного слова. Ниже 75 считайте результат черновиком и перечитывайте каждую строку.
- Сохраняется ли структура таблицы?
- Частично. Сохранение пробелов между словами включено, поэтому колонки чека или простой таблицы в выводе обычно остаются визуально выровненными и видно, где были строки. Чего не будет — настоящей таблицы: ни ячеек, ни табуляции, ни CSV. Tesseract умеет отдавать разметку hOCR с рамками каждого слова, но превратить её обратно в строки и столбцы — отдельная задача, которую ни один бесплатный инструмент толком не решает.