Сколько времени занимает OCR
Ориентир — 2–5 секунды на страницу, поэтому двадцатистраничный скан занимает около сорока секунд на обычном документе и до полутора минут на плотном. Стостраничная подшивка заняла бы минуты, поэтому она отклоняется сразу, а не через четыре минуты работы. Сверху стоят три ограничения: 90 секунд на весь документ, 30 секунд на страницу и одна задача на сервере одновременно.
Коротко о цифрах
- На страницу
- примерно 2–5 секунды
- Двадцать страниц
- около 40 секунд, до 80 на плотном скане
- Потолок на документ
- 90 секунд, дальше процесс снимается
- Потолок на страницу
- 30 секунд, страница остаётся без слоя
- Одновременных задач
- одна; занято — отказ сразу, без очереди
- Лимит обращений
- 5 за 10 минут с одного адреса
Из чего складывается время
На каждой странице выполняется два действия. Сначала страница растеризуется — превращается в картинку нужного разрешения, — а затем эта картинка проходит через модель распознавания. Второй шаг дороже первого и сильнее зависит от содержимого: плотная страница мелкого текста требует заметно больше работы, чем титульный лист с десятком слов. Отсюда и разброс в 2–5 секунды вместо одной цифры.
Разрешение влияет напрямую. Удвоение DPI учетверяет число пикселей, и вместе с ними растёт объём работы на странице. Это ещё один довод в пользу 300 точек на дюйм: 600 DPI не добавляет точности, но исправно умножает время — а страница крупнее 25 мегапикселей вообще пропускается без слоя.
Три ограничения по времени
- 90 секунд на весь документ. Это жёсткий потолок: процесс снимается вместе со всеми порождёнными им подпроцессами.
- 30 секунд на одну страницу. Не уложилась — остаётся в файле без текстового слоя, остальные обрабатываются как обычно.
- Одна задача распознавания на сервере одновременно. Занято — вы получаете честный отказ сразу, а не ожидание в невидимой очереди.
- Пять обращений за десять минут с одного адреса: распознавание дороже любого другого инструмента на сайте по процессорному времени.
- 20 страниц и 30 МБ — оба лимита проверяются до начала работы, чтобы не тратить минуту впустую.
Как уложиться в лимиты
- Оцените объём: разделите число страниц на пять и получите нижнюю границу времени в секундах.
- Документ длиннее двадцати страниц разделите на части заранее — так каждая часть пройдёт с запасом.
- Извлеките в отдельный файл только те страницы, которые действительно нужно искать: часто это десяток листов из сотни.
- Не поднимайте разрешение исходника выше трёхсот точек на дюйм без необходимости.
- Получили отказ по занятости — повторите через минуту, задача освободится.
Частые вопросы
Почему нельзя распознать документ на сто страниц?
Он не уложится в отведённое время: сто страниц по две-пять секунд — это минуты, и обработка была бы снята на середине. Поэтому объём проверяется заранее, и отказ приходит сразу, а не после четырёх минут ожидания.
Что означает ответ, что сервер занят?
Что распознавание уже выполняется для другого пользователя. Одновременно идёт ровно одна задача, потому что каждая держит сотни мегабайт памяти. Повторите попытку через минуту — ставить вас в очередь на неопределённый срок было бы хуже.
Можно ли ускорить обработку?
Да, двумя способами: уменьшить число страниц в файле и не завышать разрешение. Оба напрямую сокращают объём работы, тогда как настройки самого распознавания на скорость почти не влияют.
Одна страница обрабатывается дольше остальных. Это нормально?
Да, время сильно зависит от плотности текста. Если страница не уложилась в тридцать секунд, она останется в документе без текстового слоя, а обработка остальных продолжится в обычном режиме.