Book Scan Wizard 2

Book Scan Wizard 2 помогает превратить серии фотографий книжных разворотов в ровные, одинаково масштабированные страницы: в программе можно сопоставить кадры левой и правой камер, исправить перспективу и поворот, задать обрезку и DPI, выровнять освещение, очистить изображение и собрать результат в PDF либо сохранить страницы в TIFF, JPEG, JPEG 2000 или PNG.

Работа строится вокруг проекта с перечнем команд. Пользователь загружает папку снимков, выбирает страницы в ленте миниатюр, указывает координаты прямо в окне просмотра и добавляет операции в текстовую конфигурацию. Положение курсора в конфигурации определяет, до какого шага строится предпросмотр, поэтому результат геометрии, фильтров и масштабирования можно проверять до длительной пакетной обработки.

Для книжной съёмки особенно полезны раздельная загрузка кадров с двух камер, четырёхточечная коррекция трапеции, независимый поворот левых и правых страниц, нормализация света по эталонному пустому листу и единая обработка диапазонов. После настройки одна последовательность команд применяется к сотням кадров, а не повторяется вручную для каждой страницы.

Скачать Book Scan Wizard 2

Оценка 9.7 Рекомендуем
  • Редактирование PDF
  • Русский интерфейс
  • Просто новичкам
Скачать бесплатно на Windows
Лучшая альтернатива
Book Scan Wizard 2
Оценка 8.5
  • Нужна Java 7
  • Нет русского интерфейса
  • OCR требует Tesseract
Скачать Book Scan Wizard 2
Загрузка начнётся после нажатия

Как устроен рабочий экран

Основное окно объединяет три рабочие области. Слева находится текст проекта: каждая строка задаёт загрузку, выбор страниц, геометрическую операцию, фильтр либо способ сохранения. Справа отображается выбранный кадр, а снизу или сбоку располагается лента миниатюр. Такая схема непривычна после редакторов с длинной панелью инструментов, но она делает обработку воспроизводимой: параметры остаются в проекте и повторяются в том же порядке при следующем запуске.

Предпросмотр связан не только с выбранной миниатюрой, но и с местом курсора в тексте. Когда курсор стоит после Perspective, изображение показывается с исправленной трапецией, однако последующие Crop, Scale и фильтры ещё не применяются. Если перейти ниже по конфигурации, программа пересчитает цепочку до новой позиции. Этот механизм полезен при поиске причины дефекта: можно быстро определить, на каком шаге появилась лишняя рамка, чрезмерная резкость или неправильный размер.

Команды чувствительны к регистру. Название операции, параметр и разделитель следует вводить так, как они показаны в справке. Ошибка в одной букве обычно не портит исходные снимки, но останавливает разбор проекта или приводит к пропуску строки. Для вставки операции удобнее вызвать встроенную справку клавишей F1, найти команду и дважды щёлкнуть по ней: шаблон попадёт в конфигурацию, после чего останется заменить координаты и значения.

Редактор проекта Book Scan Wizard 2 с конфигурацией и предпросмотром страницы

Меню Actions содержит запуск предпросмотра, отправку настроенного задания на обработку и изменение масштаба. В меню Tools собраны служебные действия: просмотр сведений о DPI, создание и распознавание корректирующих штрихкодов, добавление метаданных, построение сценария запуска, переключение горизонтальной компоновки, открытие диалога фильтров и отправка подготовленного комплекта в Интернет-архив. Эти пункты дополняют текст проекта, но не заменяют его: итоговая последовательность всё равно должна быть явно записана.

Меню Actions с командами предпросмотра и запуска обработки

Меню Tools с настройками DPI, метаданных и загрузки архива

Подготовка папок и исходных кадров

До открытия проекта стоит привести съёмку к предсказуемой структуре. Для одной камеры достаточно каталога с последовательными файлами. Для двухкамерной установки создают общую папку, а внутри — подкаталоги l и r: первый хранит левые страницы, второй правые. Имена могут различаться, поскольку LoadLRImages умеет сопоставлять кадры по времени съёмки. Однако часы камер желательно синхронизировать до сессии, а после неё не менять временные метки файлов.

Кадры лучше копировать без предварительного поворота и автоматической коррекции в просмотрщике. Встроенные метаданные ориентации разные программы трактуют неодинаково, а повторное JPEG-сохранение добавляет потери. Геометрия задаётся один раз в проекте, поэтому исходная папка должна оставаться неизменной. Для экспериментов создают отдельный каталог назначения, а не перезаписывают фотографии камеры.

Перед массовой обработкой полезно просмотреть начало, середину и конец каждой серии. Нужно обнаружить пропущенные кадры, двойные нажатия затвора, руку в кадре, смещённую книгу, изменившуюся экспозицию и страницы, снятые другой стороной. Программа может выровнять стандартную геометрию, но не угадает, какой из двух почти одинаковых кадров оставить, и не восстановит текст, закрытый пальцем или прижимным стеклом.

  • Сохраняйте левую и правую камеры в отдельных папках l и r.
  • Не переименовывайте файлы до проверки соответствия кадров.
  • Оставляйте оригиналы только для чтения и выводите результат в другую папку.
  • Добавьте в серию чистый белый или нейтрально-серый лист при неизменном свете.
  • Зафиксируйте физический размер страницы, если требуется точный DPI.

Загрузка одной последовательности

Команда LoadImages открывает каталог и формирует список страниц. Она подходит для фотографий одной камерой, кадров со сканера и уже разделённых изображений. После загрузки миниатюры позволяют быстро перейти к любому номеру, а раскрывающийся список страниц — выбрать кадр без прокрутки длинной ленты. Двойной щелчок по миниатюре также делает её активной.

Порядок файлов должен совпадать с порядком чтения. Если камера создаёт имена с числовым счётчиком одинаковой длины, сортировка обычно получается правильной. При именах вида 1, 2, 10 безопаснее заранее добавить ведущие нули либо использовать Rename после загрузки. Перед геометрической настройкой надо проверить хотя бы границы десятков и сотен: ошибка сортировки заметна именно там.

Один и тот же каталог можно использовать для повторных проб, меняя только папку назначения и параметры. Это удобно для сравнения JPEG 2000 и TIFF, цветного и оттеночного вывода, разных значений резкости или DPI. Поскольку проект хранит команды, отличие двух проб видно в тексте, а не остаётся в памяти оператора.

Сопоставление кадров двух камер

LoadLRImages предназначена для установок, где одна камера постоянно снимает левую страницу, а вторая — правую. Программа читает подкаталоги l и r, сравнивает временные метки и строит чередующуюся последовательность. Если одна камера пропустила срабатывание, несовпавший кадр отмечается и переносится в конец списка, чтобы ошибка не сдвинула все дальнейшие пары незаметно.

После загрузки следует открыть несколько разворотов и убедиться, что левая и правая страницы идут в правильном порядке. Если камеры были подключены с противоположных сторон либо папки перепутаны, исправлять это фильтрами поздно: лучше поменять расположение серий и перезагрузить проект. При систематической разнице во времени часов можно использовать режим, игнорирующий временное сопоставление, но тогда ответственность за одинаковое количество файлов полностью ложится на оператора.

Раздельные стороны позволяют применять разные параметры внутри одного проекта. Левую камеру можно повернуть на 90 градусов по часовой стрелке, правую — против часовой; каждой стороне задать свои четыре точки перспективы и свой эталон освещения. После этого Pages переключает область действия команд: параметры для left не затрагивают right, а общие фильтры можно разместить ниже и применить ко всем страницам.

LoadLRImages = D:\Book\Raw
Pages = left
Rotate = 90
Perspective = 220,160 3750,155 3725,5480 235,5505
Pages = right
Rotate = -90
Perspective = 180,145 3710,165 3700,5490 205,5470
Pages = all

Координаты в примере условны: их всегда снимают с собственного кадра. Значения должны идти по углам в ожидаемом порядке, иначе страница может перевернуться, вытянуться или исчезнуть из области просмотра. После ввода проверяют не один разворот, а несколько страниц разной толщины, поскольку корешок постепенно смещается по мере перелистывания.

Выбор страниц и область действия команд

Pages задаёт, к каким кадрам относятся следующие строки проекта. Доступны все страницы, только левые, только правые и числовые диапазоны. Несколько диапазонов позволяют исключить обложку, рекламные вклейки или технические кадры из конкретной операции. Область действует до следующей команды Pages, поэтому при длинном проекте полезно явно возвращаться к Pages = all перед общими фильтрами.

Это правило особенно важно для поворота и перспективы. Если после настройки левой стороны забыть переключиться на right, правая геометрия получит второе преобразование или останется без коррекции. Подобная ошибка не всегда заметна на текущем кадре, потому что предпросмотр может показывать страницу из другой группы. Надёжная проверка — выбрать по одной миниатюре каждой стороны и провести курсор по проекту сверху вниз.

DeselectPages снимает страницы с пакетной обработки, не удаляя их из проекта. RemovePages исключает кадры из последовательности. Первый вариант удобен для временного теста на пяти листах, второй — для дублей, пустых кадров и технических снимков, которые не должны попасть в нумерацию. Перед удалением следует убедиться, что кадр не нужен как эталон NormalizeLighting.

Навигация, координаты и контрольные точки

Координатные операции настраиваются прямо в просмотрщике. Пользователь щёлкает по изображению, отмечая углы или границы, затем вызывает контекстное действие и копирует полученные числа в проект. Для Perspective выбирают четыре угла полезной области страницы. Для Crop достаточно двух противоположных точек прямоугольника. Маркеры можно перемещать с удержанием Ctrl, что удобнее повторного ввода всей строки.

Точность увеличивают масштабом просмотра. Сначала страницу помещают целиком и ставят грубые точки, затем приближают каждый угол и корректируют положение на линии бумаги, а не на тени. Если край листа закрыт пальцем или уходит в корешок, точку ставят по продолжению линии. Слишком внутренние точки обрежут буквы и колонтитулы, слишком внешние оставят клиновидные поля после выпрямления.

Переключатели Perspective, Crop, Filters и Scale управляют тем, какие группы операций участвуют в интерактивном предпросмотре. На тяжёлых снимках можно временно выключить фильтры и масштабирование, чтобы быстрее подбирать геометрию, а затем включить всё перед контрольным запуском. Отключение флажка влияет только на скорость и вид в окне; перед пакетной обработкой надо убедиться, что нужная строка остаётся в конфигурации.

Поворот и ориентация страниц

Rotate исправляет ориентацию кадра до перспективы и обрезки. Для двух камер повороты часто противоположны, потому что корпуса закреплены зеркально. Угол следует задавать кратно 90 градусам, когда вся серия снята боком. Небольшой наклон книжного блока лучше исправлять не произвольным вращением, а точками Perspective: так одновременно выравниваются обе стороны трапеции.

Мастер настроек помогает назначить ориентацию левых и правых кадров. На экране выбора показывается пример страницы и варианты расположения текста. После завершения мастер формирует строки проекта, которые можно проверить и скорректировать вручную. Это снижает риск перепутать знак угла, но не отменяет просмотра обеих сторон.

Выбор ориентации и дополнительного содержимого в мастере Book Scan Wizard 2

Если после поворота кадр выглядит зеркальным, проблема обычно не в Rotate. Нужно проверить, не было ли отражение включено в программном обеспечении камеры и не поменяны ли местами каталоги l и r. Зеркальную съёмку не следует компенсировать случайным набором геометрических операций: такой проект становится трудным для повторной проверки.

Исправление перспективы и трапеции

Perspective преобразует четырёхугольник страницы в прямоугольник. Операция устраняет сходящиеся края, возникающие при съёмке камеры над книгой, и компенсирует различие расстояния до верхней и нижней части листа. Для хорошего результата точки ставят на одну и ту же физическую границу: например, везде по краю бумаги, а не два угла по бумаге и два по рамке стекла.

Физическая ширина и высота могут использоваться для расчёта масштаба и DPI. Если указать неверное соотношение сторон, текст станет растянутым даже при визуально ровных краях. Размер измеряют по реальному листу, а не по области с печатью. Для книги с разными форматами вклеек создают отдельные диапазоны Pages и отдельные параметры, иначе большая схема или складная карта будет подогнана под обычную страницу.

PerspectiveAndCrop объединяет выпрямление и отсечение внешней области. Эта команда удобна, когда границы страницы хорошо видны и одинаковы во всей серии. Отдельные Perspective и Crop дают больше контроля: сначала можно оценить прямоугольность, затем выбрать поля уже на выпрямленном изображении. Раздельная схема предпочтительна при толстой книге, где линия корешка постепенно меняется.

BarcodePerspective применяет сведения из корректирующих штрихкодов, подготовленных средствами программы. Подход рассчитан на повторяемую съёмочную установку и позволяет передавать геометрические параметры через служебный кадр. Он полезен в потоке, но требует аккуратной подготовки кодов и проверки распознавания; для разовой книги четырёхточечная настройка обычно прозрачнее.

Обрезка, поля и интерполяция

Crop оставляет прямоугольную область после геометрической коррекции. Пара координат задаёт противоположные углы, поэтому сначала нужно убедиться, что строка расположена после Perspective. Если обрезать исходную трапецию, одинаковый прямоугольник будет захватывать разные поля на верхнем и нижнем краях. После выпрямления положение текста становится стабильнее.

InterpolateCrop предназначена для случаев, когда положение страницы медленно меняется от начала к концу книги. Пользователь задаёт контрольные обрезки на нескольких страницах, а программа рассчитывает промежуточные рамки. Это лучше одной чрезмерно широкой рамки, оставляющей большие поля, и безопаснее ручной настройки сотен кадров. Контрольные точки ставят после заметных изменений толщины блока, а не через формально равные интервалы.

CropAndScale совмещает выделение области и приведение к размеру. Операция экономит строки, но усложняет диагностику: при неожиданном результате труднее понять, виноваты координаты или масштаб. Для первого проекта лучше разделить этапы, а объединённую команду использовать после того, как геометрия проверена на всей серии.

AddBorder добавляет равномерное или заданное поле вокруг готовой страницы. Это полезно, когда текст подходит слишком близко к краю PDF либо требуется одинаковый внешний размер у страниц с немного разной обрезкой. Белая рамка не должна маскировать потерянный текст: сначала проверяют Crop, затем добавляют минимальное поле.

Whiteout закрашивает выбранные области белым. Им убирают пальцы держателя, метки установки, край стола или номер технического кадра, если объект лежит вне содержательной области. Для цветной бумаги белая заплата будет заметна; в таком случае лучше изменить обрезку или использовать равномерный фон на этапе съёмки.

DPI и единый физический размер

SetSourceDPI сообщает программе исходную плотность, когда она известна. Для фотографий камеры значение в метаданных часто условно и не описывает реальный размер страницы, поэтому его нельзя принимать без проверки. SetDestinationDPI задаёт целевую плотность для дальнейшего масштабирования и записи. Команды полезны, если PDF должен печататься в правильном размере или соответствовать требованиям архивного хранения.

ScaleToDPI изменяет количество пикселей так, чтобы заданный физический формат соответствовал целевой плотности. Увеличение DPI не создаёт деталей, которых нет в снимке: оно только интерполирует пиксели и раздувает файл. Рациональный порядок — исправить перспективу, обрезать, оценить фактическое разрешение текста и уменьшать до требуемого уровня, а не увеличивать слабый кадр ради красивого числа.

EstimateDPI помогает оценить плотность по известному размеру объекта или страницы. Результат следует сравнить на нескольких кадрах: если книга двигалась относительно камеры, масштаб может меняться. При стабильной установке разброс небольшой, а заметное отличие указывает на ошибку точек перспективы, случайный цифровой зум или перемещение штатива.

ScaleToFirst приводит последующие страницы к масштабу первой. Это удобно, когда исходные кадры немного различаются, но первая страница выбрана удачно и представляет типичный формат. Обложку, форзац или разворот с большой схемой не стоит использовать как эталон. Сначала выбирают обычную текстовую страницу, затем проверяют строки, иллюстрации и номера страниц в разных частях книги.

SetPreviewScale уменьшает рабочее изображение только для интерактивного просмотра. Низкое значение ускоряет подбор рамок, однако на уменьшенной копии трудно заметить тонкий обрезанный штрих, ореол резкости или шум. Финальную проверку делают в масштабе, достаточном для чтения мелкого текста, и открывают несколько сохранённых страниц вне программы.

Выравнивание освещения

NormalizeLighting использует снимок пустого белого или нейтрально-серого листа как карту неравномерности. Программа сравнивает яркость разных участков эталона и компенсирует затемнение у корешка, виньетирование объектива и плавный градиент от ламп. Эталон снимают при той же выдержке, диафрагме, фокусном расстоянии, положении камер и света, что и книгу.

Для двух камер можно указать отдельные эталоны. Это важно даже при одинаковых моделях: объективы, углы и лампы создают разные поля яркости. Если применить левый эталон к правой серии, середина разворота может стать светлее, а внешний край темнее. После нормализации проверяют однотонные поля, фотографии и страницы с плотной заливкой, потому что агрессивная компенсация усиливает шум в изначально тёмных областях.

Эталон не должен содержать текст, складки, тень руки или глянцевый блик. Любой устойчивый рисунок будет интерпретирован как дефект света и появится в обработанных страницах обратным отпечатком. Если освещение менялось во время длинной сессии, создают несколько диапазонов Pages с разными эталонами либо переснимают проблемный отрезок.

NormalizeLighting не заменяет правильную экспозицию. Пересвеченные буквы и выбитые белые участки восстановить нельзя, а глубокие тени после усиления становятся шумными. Лучший эталон даёт равномерно освещённый лист без обрезанных каналов гистограммы. Компенсацию применяют до тонкой настройки уровней и резкости.

Цвет, яркость и тон

WhiteBalance корректирует цветовой сдвиг по нейтральной области. Она полезна при лампах с тёплым оттенком или смешанном свете, но выбор образца должен быть действительно нейтральным. Кремовая бумага старой книги не является белой мишенью: попытка сделать её чисто белой переведёт иллюстрации в холодные тона. Для архивной копии разумнее сохранить оттенок бумаги, слегка устранив только паразитный цвет лампы.

Brightness изменяет общую яркость, Gamma — распределение средних тонов, Levels задаёт чёрную и белую точки, а AutoLevels оценивает их автоматически. Эти операции решают разные задачи. Яркость сдвигает всё изображение, гамма раскрывает тени без такого же подъёма светов, уровни растягивают диапазон. Автоматический режим надо проверять на страницах с фотографиями и декоративными рамками: редкие тёмные элементы способны изменить расчёт.

Saturation регулирует насыщенность цветных страниц. Для обычного чёрного текста на слегка окрашенной бумаге уменьшение насыщенности может убрать цветовой шум, но полностью обесцвечивать книгу с иллюстрациями нельзя. Color переводит изображение в требуемое цветовое представление; режим выбирают до настройки формата сохранения, потому что TIFF Group 4 применим к однобитным страницам, а JPEG сохраняет оттенки и полутона.

FilterSaturated помогает выделять или подавлять чрезмерно насыщенные пиксели. Практическое применение — цветные метки, маркеры или паразитные цветовые края, которые нужно отделить от текста. Порог подбирают на увеличенном фрагменте: слишком широкий диапазон затронет иллюстрации и цветные буквицы.

ImageStatistics выводит сведения об изображении и помогает сравнить диапазон яркости до и после фильтров. Статистика не заменяет визуальный контроль, но выявляет полностью выбитые каналы и слишком узкую гистограмму. При пакетной обработке полезно сохранить небольшой набор тестовых страниц и сравнить их одинаковым просмотрщиком.

Шум, резкость и дефекты съёмки

MedianFilter удаляет одиночные точки и мелкий импульсный шум, сохраняя края лучше простого размытия. Большой радиус, однако, скругляет засечки и тонкие линии. Despeckle ориентирован на мелкие пятна после бинаризации или на пыль. Его применяют после геометрии и тоновой коррекции, а параметры выбирают по самому мелкому шрифту книги.

GaussianBlur размывает изображение по гауссовому ядру. В книжном процессе он редко нужен как самостоятельный финальный эффект, но может подготовить маску, смягчить муар или уменьшить высокочастотный шум перед последующей операцией. Сильное размытие нельзя исправить Sharpen: резкость усилит контуры, но не вернёт потерянную форму букв.

Sharpen подчёркивает границы после уменьшения масштаба. Оптимальное значение проверяют на диагональных штрихах, мелких цифрах и полутоновых иллюстрациях. Белый или тёмный ореол вокруг букв означает чрезмерное усиление. Резкость лучше задавать после Scale, потому что последующее уменьшение изменит характер контура.

BarrelCorrection компенсирует бочкообразную или подушкообразную дисторсию объектива. Признак проблемы — прямой край страницы изгибается дугой даже после правильной четырёхточечной перспективы. Параметры определяют по тестовой сетке или ровным линиям кадра и используют только для той камеры и фокусного расстояния, для которых они измерены.

Unwarp предназначен для более сложного искривления страницы у корешка. Он не превращает любой разворот в идеально плоский лист автоматически: результат зависит от заметной геометрии строк и качества кадра. При сильной кривизне надёжнее улучшить прижим, положение камеры и освещение, а программную развёртку использовать как дополнительный этап.

Нумерация, имена и структура книги

StartPage задаёт начальное значение нумерации выходных файлов. Это удобно, если книга обрабатывается частями или первая пачка уже готова. Значение следует согласовать с PageLabels и фактическим порядком: номер файла, печатный номер страницы и метка в PDF могут отличаться, особенно у предисловия с римскими цифрами.

Rename формирует последовательные имена, пригодные для сортировки. В именах лучше использовать одинаковую ширину числовой части, чтобы файловые менеджеры не ставили страницу 100 перед 11. Перед переименованием проверяют, что удалены дубли и технические кадры; иначе исправление последовательности потребует повторной обработки.

PageLabels добавляет метки страниц в PDF. Можно задать римские числа для вступительной части, арабские для основного текста и префикс для приложений. Метка не заменяет изображённый на листе номер и не должна подгоняться ценой нарушения порядка. Если в книге есть ненумерованные вкладки, для них задают отдельный диапазон или нейтральную метку.

Metadata добавляет название, автора и другие описательные поля к PDF или архивному комплекту. Текст вводят внимательно: опечатка будет повторена во всех производных файлах. Поля должны описывать книгу, а не техническую сессию съёмки. Для нескольких томов лучше иметь отдельный проект на каждый том, чтобы метаданные и нумерация не смешивались.

Сохранение изображений

SaveImages записывает обработанные страницы в TIFF, JPEG, JPEG 2000 или PNG. Выбор определяется содержанием и дальнейшей обработкой. TIFF подходит для мастер-копий и поддерживает несколько способов сжатия. PNG сохраняет графику без потерь и удобен для однобитных либо малокрасочных страниц. JPEG экономит место на цветных фотографиях, но добавляет необратимые артефакты. JPEG 2000 позволяет гибко управлять степенью сжатия и используется в некоторых архивных потоках.

Для TIFF доступны NONE, DEFLATE, GROUP4 и JPEG. NONE создаёт самые большие файлы и нужен только там, где внешняя система не принимает сжатие. DEFLATE работает без потерь для цветных и серых изображений. GROUP4 предназначен для однобитного текста; попытка применить его к цветной странице приводит к ошибке или неправильному результату. TIFF с JPEG-сжатием уменьшает объём, но перестаёт быть полностью без потерь.

Качество JPEG задаётся числом от 0 до 1. Малое значение уменьшает файл, но создаёт блоки и звон вокруг букв. Для текста особенно опасно повторное сохранение: даже высокое качество на каждом цикле накапливает дефекты. Поэтому исходные фотографии не перезаписывают, а финальный JPEG создают один раз после всех преобразований.

Для JPEG 2000 используется коэффициент уменьшения объёма; значение 1 соответствует сохранению без потерь. Увеличение коэффициента надо оценивать на тонких линиях и мелком шрифте, а не только по общему виду страницы. Некоторые просмотрщики медленнее открывают JPEG 2000, поэтому перед выбором формата проверяют всю цепочку — от мастер-копии до читателя.

SetTiffOptions задаёт параметры TIFF до SaveImages. SaveImage сохраняет отдельный результат, а SaveImages — последовательность. SetDestination определяет каталог вывода. Хорошая практика — включать в имя папки назначение, например master_tiff, web_jpeg или pdf_pages, но не менять исходную структуру камер.

Сборка многостраничного PDF

CreatePDF объединяет страницы в один документ после завершения геометрии, фильтров и масштабирования. Внутренние изображения могут быть записаны как JPEG, JPEG 2000 или PNG. Для однобитных страниц программа по умолчанию ориентируется на PNG, для остальных — на JPEG 2000. Формат и качество следует выбирать с учётом совместимости конечного просмотрщика и размера книги.

Параметры просмотра позволяют задать одиночную страницу, разворот 2-UP, прокрутку и использование заголовка. Режим разворота удобен для книги, но первая страница должна начинаться с правильной стороны; обложка или пустой лист влияют на пары. После создания PDF проверяют первые десять страниц, переход от римской нумерации к арабской, середину, последние листы и все нестандартные вклейки.

CreatePDF может включить текст, полученный операцией OCR. Текстовый слой делает поиск и копирование возможными, но не изменяет изображение страницы. Ошибки распознавания остаются скрытыми до поиска или выделения. Для старой орфографии, смешанных языков и сложной вёрстки нужно установить подходящие языковые данные Tesseract и проверить несколько характерных страниц.

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

Распознавание текста через Tesseract

Операция OCR вызывает отдельно установленный Tesseract. В проекте задают язык, по умолчанию используется eng. Для русского текста нужен соответствующий языковой пакет и правильный код языка. Исполняемый файл должен быть доступен системе, иначе обработка изображений завершится, но текстовый слой не появится либо команда выдаст ошибку запуска.

Распознавание выполняют после исправления перспективы, поворота, обрезки и масштабирования. Наклонённые строки, тёмный корешок и лишний фон ухудшают сегментацию. Слишком сильная бинаризация также вредна: точки над буквами и тонкие элементы могут исчезнуть. Оптимальная страница для OCR имеет ровные строки, достаточный контраст и сохранённую форму знаков.

Язык выбирают по содержанию диапазона. Если в книге несколько языков, можно разделить Pages и применить разные настройки либо использовать комбинированные данные Tesseract, если они установлены. Таблицы, формулы и дореформенная орфография требуют ручной проверки. Программа передаёт изображение движку и включает результат в PDF, но не предоставляет полноценный редактор распознанного текста.

Для контроля ищут в PDF заведомо присутствующие редкие слова, копируют абзац и сравнивают порядок строк. В двухколоночной вёрстке текст может читаться в неправильной последовательности. Если цель — точная электронная публикация, распознанный слой следует экспортировать и вычитать специализированными средствами; для поиска по домашнему собранию допустим менее совершенный результат.

Внешние команды и временные файлы

PipePNG передаёт изображение внешней программе через поток PNG. Это позволяет включить в проект фильтр, которого нет среди встроенных операций, не создавая промежуточный JPEG. Внешняя команда должна читать стандартный ввод, возвращать корректный PNG и не менять размеры неожиданным образом. Перед массовым запуском её тестируют на одной странице и проверяют код завершения.

PostCommand запускает действие после обработки. Его можно применять для копирования готового файла, проверки, упаковки или запуска собственного сценария. Команда не должна удалять мастер-копии до успешной проверки результата. Пути с пробелами заключают в кавычки, а вывод и ошибки перенаправляют в журнал, иначе сбой внешнего инструмента будет трудно связать с конкретной страницей.

SaveTemp и LoadTemp сохраняют промежуточный этап и повторно используют его. Такой подход ускоряет эксперименты с фильтрами и форматами, когда тяжёлая перспектива уже рассчитана. Временный набор должен соответствовать текущей конфигурации: если изменились Crop или DPI, старый кэш надо удалить, иначе проект покажет результат предыдущей геометрии.

CreateArchiveZip и SaveToArchive формируют набор для архивного хранения и передачи. Перед упаковкой проверяют имена, метаданные, последовательность и отсутствие технических кадров. ZIP не исправляет содержимое; он только фиксирует подготовленную структуру, поэтому журнал контроля желательно хранить рядом с проектом.

Пакетный запуск и повторяемость

После настройки проект можно выполнить с параметром -batch. В этом режиме окно не требуется для каждого шага, а одна конфигурация обрабатывает всю серию. Пакетный запуск особенно полезен ночью или на отдельном компьютере, но его нельзя начинать сразу на сотнях кадров: сначала создают короткий диапазон Pages и проверяют полный результат, включая PDF и OCR.

Сценарии bsw.cmd и bsw запускают Java с выделением памяти и передают аргументы программе. Для больших изображений в документации приведён пример с -Xmx8192, но реальное значение зависит от объёма оперативной памяти и разрядности среды. На 32-разрядной Java используется гораздо меньший предел, например -Xmx1024. Слишком большой запрос памяти может помешать запуску так же, как слишком маленький вызывает ошибку heap.

Конфигурацию следует хранить вместе с описанием структуры папок и контрольными файлами. Абсолютные пути удобны на одном компьютере, относительные — при переносе проекта. Перед переносом проверяют разделители путей и права записи. Исходные снимки, проект, временные изображения и финальный вывод лучше разделять, чтобы команда очистки не затронула оригиналы.

Повторяемость означает не только возможность снова получить файл, но и способность объяснить результат. Строки проекта располагают в логическом порядке: загрузка, выбор стороны, поворот, перспектива, обрезка, DPI, свет, цвет, шум, резкость, метаданные, OCR и сохранение. Комментарии рядом с нестандартными диапазонами помогают понять, почему конкретные страницы обработаны иначе.

Практическая последовательность для двухкамерной книги

  1. Скопируйте кадры камер в подпапки l и r, сохраните временные метки и сделайте резервную копию.
  2. Загрузите серии через LoadLRImages и проверьте пары в начале, середине и конце.
  3. Для Pages = left и Pages = right задайте раздельные повороты.
  4. Отметьте четыре угла типичной страницы каждой стороны и добавьте Perspective.
  5. Проверьте геометрию на тонкой и толстой части книжного блока.
  6. Настройте Crop либо несколько контрольных рамок InterpolateCrop.
  7. Задайте физический размер и целевой DPI только после проверки пропорций.
  8. Примените отдельные эталоны NormalizeLighting для каждой камеры.
  9. Настройте тон, цвет и шум на нескольких типах страниц.
  10. Выполните тестовый диапазон с тем же SaveImages или CreatePDF, что будет использоваться окончательно.
  11. Проверьте выходные файлы, затем расширьте Pages до всей книги и запустите пакетную обработку.

На каждом переходе важно смотреть не только текущую страницу. Геометрия может быть идеальной в середине, но уходить у обложки; свет может меняться после нагрева ламп; насыщенность приемлема для текста и разрушительна для цветной вклейки. Контрольный набор должен включать все разные типы материала, а не пять соседних листов.

Практическая последовательность для одной камеры

При съёмке одной камерой развороты можно сначала разделить внешним инструментом либо загрузить готовые отдельные страницы через LoadImages. Если в кадре находится весь разворот, не следует одной рамкой имитировать два независимых листа: у левой и правой половины разная перспектива около корешка. Надёжнее получить две последовательности и обработать стороны отдельно.

Одиночная камера часто перемещается между кадрами сильнее, чем жёсткая двухкамерная установка. Поэтому одной Perspective может быть недостаточно для всей книги. Используют диапазоны Pages с несколькими геометрическими наборами либо переснимают серию с фиксированным штативом. Интерполяция рамок помогает при плавном сдвиге, но не исправляет случайные рывки.

Для листов со сканера перспектива обычно не нужна. Проект может начинаться с LoadImages, затем выполнять Rotate, Crop, Levels, Despeckle, Scale и сохранение. Это экономит время: тяжёлые операции не добавляют только потому, что они доступны. Каждая строка должна решать видимый дефект.

Типовые ошибки и способы исправления

Программа не запускается

Проверьте, что команда java доступна и используется подходящая среда. Если окно мгновенно закрывается, запустите bsw.cmd из командной строки, чтобы увидеть сообщение. Ошибка выделения памяти исправляется уменьшением -Xmx, когда запрошенный объём недоступен, либо увеличением значения, когда большие изображения исчерпывают кучу. На 32-разрядной среде нельзя рассчитывать на многогигабайтный предел.

Проект открывается, но строка не выполняется

Сверьте регистр названия операции и формат параметров. Убедитесь, что команда находится после загрузки изображений и до сохранения. Если строка действует только на неожиданную группу, найдите ближайшую предыдущую Pages. Встроенная справка F1 и вставка шаблона двойным щелчком надёжнее ручного набора неизвестной команды.

Предпросмотр не показывает новый фильтр

Поставьте курсор ниже строки фильтра и включите соответствующий флажок Filters. Для масштаба нужен Scale, для геометрии — Perspective или Crop. Если используется временный кэш, удалите устаревший SaveTemp или LoadTemp либо пересоздайте промежуточные файлы. После этого выберите страницу заново и дождитесь пересчёта.

Левые и правые страницы перепутаны

Проверьте папки l и r, временные метки и количество кадров. Несовпавшие снимки могут оказаться в конце списка. Не исправляйте порядок случайным Rename до восстановления пар. Если камеры имели несинхронные часы, сопоставьте серии вручную, удалите дубли и только затем используйте режим без сравнения времени.

После перспективы страница перевёрнута или растянута

Четыре точки введены в неправильном порядке либо относятся к разным границам. Удалите строку, увеличьте изображение и отметьте углы последовательно. Проверьте физическую ширину и высоту: перепутанные значения меняют пропорции. Сначала тестируйте только Perspective, временно отключив Crop и Scale.

Обрезается текст у корешка

Сдвиньте внутреннюю границу Crop наружу и проверьте кадры в разных частях книги. Если корешок меняется постепенно, используйте InterpolateCrop с несколькими контрольными страницами. При сильной кривизне одной прямоугольной рамки недостаточно; улучшите прижим или примените Unwarp после проверки геометрии.

На странице остаётся тёмный градиент

Снимите новый эталон NormalizeLighting при том же положении света и камер. Убедитесь, что эталон не содержит складок и бликов. Для двух сторон назначьте разные файлы. Если тень вызвана меняющейся формой книги, одной картой света её полностью не убрать: нужно стабилизировать раскрытие или разделить серию на диапазоны.

После фильтров тонкие буквы исчезают

Ослабьте Levels, AutoLevels, Despeckle или MedianFilter и сравните увеличенный фрагмент с оригиналом. Не оценивайте только на уменьшенном предпросмотре. Для старой печати лучше сохранить серые оттенки, чем добиваться абсолютно белого фона ценой точек и засечек. Резкость не восстанавливает уже удалённые штрихи.

TIFF не сохраняется с Group 4

Переведите страницу в однобитный режим либо выберите DEFLATE для цветного и серого изображения. Group 4 предназначен для чёрно-белой растровой страницы. Проверьте порядок Color и SetTiffOptions: параметры формата должны соответствовать данным в момент SaveImages.

OCR не появляется в PDF

Установите Tesseract отдельно, добавьте исполняемый файл в доступный путь и проверьте языковые данные. Убедитесь, что OCR стоит до CreatePDF. Для русского текста выберите русский язык, а не значение eng по умолчанию. Откройте готовый PDF, попробуйте поиск и выделение; видимое изображение само по себе не доказывает наличие текстового слоя.

Пакет останавливается на большой странице

Уменьшите одновременную нагрузку, проверьте -Xmx и временное место на диске. Большие TIFF и несколько процессоров увеличивают пиковое потребление памяти. Сначала обработайте проблемный файл отдельно, отключив необязательные фильтры, затем верните операции по одной. Повреждённый кадр лучше заменить копией из резервной папки.

Контроль качества готовой книги

Проверку нельзя сводить к открытию первой страницы PDF. Составьте выборку: обложка, первая нумерованная страница, по одному листу из каждой четверти, цветная иллюстрация, таблица, самый тёмный разворот, вклейка и последняя страница. Для каждой оценивают порядок, ориентацию, поля, пропорции, резкость, цвет, читаемость и соответствие метки. Ошибка, не попавшая в выборку, часто повторяется на целой группе, поэтому набор страниц должен представлять разные условия, а не соседние кадры.

Отдельно ищут систематические дефекты. Если на всех левых страницах край светлее, причина в эталоне освещения. Если каждая десятая пара нарушена, вероятен пропуск кадра или сортировка имени. Если масштаб меняется постепенно, нужно пересмотреть Perspective, InterpolateCrop или ScaleToFirst. Систематический дефект исправляют в проекте, а не ретушируют сотни файлов вручную: иначе повторный выпуск снова получит ту же проблему.

Размер файла сравнивают с содержанием. Огромный PDF из однобитного текста указывает на неподходящий формат изображений, а подозрительно маленький цветной том — на чрезмерное сжатие. На увеличении проверяют блоки JPEG, размытые тонкие линии и ореолы. Затем документ открывают хотя бы в двух просмотрщиках, особенно если использован JPEG 2000. Проверка на другом устройстве выявляет декодеры, которые не проявлялись на рабочем компьютере.

Финальный комплект должен включать исходные снимки, текст проекта, эталоны освещения, мастер-изображения и производный PDF. Это позволяет пересобрать книгу с другим качеством или исправить найденную страницу без новой съёмки. Рабочие временные файлы можно удалить после проверки, если они воспроизводятся из проекта. Перед очисткой полезно повторить одну страницу с нуля и убедиться, что все пути и внешние команды зафиксированы.

Сравнение Book Scan Wizard 2 с аналогами

Программы ниже решают соседние этапы цифровки, но различаются по исходному материалу. Book Scan Wizard 2 ориентирован на пакет камерных кадров и конфигурацию операций; ScanTailor Advanced — на интерактивную подготовку страниц; YASW — на выправление фотографий разворотов; OCRmyPDF — на добавление распознаваемого слоя к уже собранному PDF; PDF Commander — на редактирование готового документа. Поэтому выбор определяется не общей надписью PDF, а тем, на каком этапе находится книга.

ПрограммаЛучше подходит дляГлавное ограничение
Book Scan Wizard 2Пакетной коррекции кадров одной или двух камер, DPI, света и сборки PDFНастройка через команды требует обучения
PDF CommanderРедактирования, перестановки и оформления уже готового PDFНе заменяет поток коррекции камерных страниц
ScanTailor AdvancedИнтерактивного разделения, выравнивания, выбора содержимого и полейНе выполняет OCR и финальную сборку книги
YASWИсправления геометрии фотографий книжных разворотовМеньше средств для полного пакетного конвейера
OCRmyPDFДобавления поискового текстового слоя и PDF/A к существующему PDFНе предназначен для ручной перспективы исходных кадров

Для жёстко настроенной двухкамерной установки выбирают Book Scan Wizard 2: раздельные стороны, единый проект и повторяемая пакетная обработка здесь важнее современного интерфейса. Когда страницы нужно вручную делить, выравнивать и контролировать визуально, удобнее ScanTailor Advanced. YASW уместен для акцента на геометрии фотографии. OCRmyPDF подключают после получения корректного PDF, если нужен поисковый слой. PDF Commander выбирают, когда изображения уже подготовлены, а задача состоит в редактировании, объединении и перестановке страниц готового документа.

Сценарии, в которых операции комбинируются

Текстовая книга с двумя камерами

Загрузите l и r через LoadLRImages, назначьте противоположные Rotate и отдельные Perspective, затем вернитесь к Pages = all. После Crop задайте целевой DPI, примените NormalizeLighting с двумя эталонами и мягкие Levels. Для чистого чёрно-белого текста можно вывести однобитный TIFF Group 4; если бумага и иллюстрации важны, сохраните оттенки через PNG, TIFF DEFLATE или осторожный JPEG 2000. Перед всей серией создайте десять страниц с теми же параметрами и сравните обе стороны.

Старая книга с пожелтевшей бумагой

Не используйте белый баланс так, чтобы уничтожить реальный оттенок листа. Сначала компенсируйте только неравномерность освещения, затем слегка настройте гамму и уровни. Проверьте пятна, печати и карандашные пометы: они могут быть значимой частью экземпляра. Despeckle применяйте лишь к шуму съёмки, а не ко всем мелким объектам. Для мастер-копии лучше оставить больше тональных данных и сделать контрастный производный набор отдельно.

Книга с цветными вклейками

Разделите Pages на обычный текст и цветные листы. Для текста допустим более компактный режим, для вклеек сохраните цвет и мягкое сжатие. Не применяйте общие AutoLevels и Saturation ко всей книге без проверки: одна яркая иллюстрация требует другого диапазона. В PDF страницы могут иметь разные внутренние форматы, если просмотрщики назначения их поддерживают. Метки и нумерация при этом должны оставаться общей последовательностью.

Плотный том с меняющимся корешком

Поставьте контрольные Perspective и Crop в начале, после заметного изменения толщины и ближе к концу. Используйте InterpolateCrop для плавного движения рамки. Если строки изгибаются у корешка, протестируйте Unwarp на нескольких страницах. При случайных скачках геометрии интерполяция не поможет; такие кадры выделяют отдельными диапазонами или переснимают. Не расширяйте рамку на всю серию только ради нескольких проблемных листов.

Сканерные TIFF без перспективы

LoadImages загружает готовые листы, после чего достаточно Rotate, Crop, Levels, Despeckle, Scale и SaveImages. Не добавляйте Perspective и NormalizeLighting без видимой причины. Если сканер уже создал корректный DPI, SetSourceDPI используют для сохранения физического размера, а ScaleToDPI — только при необходимости единого стандарта. Групповую очистку проверяют на самых светлых и самых тёмных сканах, поскольку автоматические уровни могут сработать неодинаково.

Поисковый PDF для домашнего собрания

Сначала добейтесь правильного порядка и читаемого изображения, затем выполните OCR с установленным языком и CreatePDF. Добавьте Metadata и PageLabels. После сборки найдите несколько слов, проверьте копирование текста и переходы по меткам. Сохраняйте мастер-изображения отдельно: текстовый слой можно улучшить позднее без повторной геометрии. Для двухколоночных страниц дополнительно проверяйте порядок выделения строк.

Мастер-копия для дальнейшей обработки

Выводите TIFF DEFLATE или PNG без потерь, не применяйте чрезмерную резкость и не уничтожайте оттенки бумаги. Сохраните исходный размер либо документированный DPI. Проект должен содержать все координаты и эталоны. PDF и JPEG создавайте как отдельные производные наборы, чтобы не смешивать архивное качество с компактной публикацией. Контрольная сумма каждого мастер-файла поможет обнаружить повреждение при переносе.

Публикация с ограниченным размером файла

Сделайте тестовые страницы в нескольких вариантах JPEG или JPEG 2000 и сравните мелкий текст на увеличении. Уменьшайте DPI только до уровня, достаточного для чтения. Цветные вклейки могут требовать большего качества, чем текст. Итоговый PDF проверяют на реальном устройстве читателя, потому что декодирование JPEG 2000 поддерживается неодинаково. Размер оценивают для всего тома, а не экстраполируют по одной пустой странице.

Работа с мастером настроек

Мастер помогает сформировать базовую конфигурацию: выбрать папки, ориентацию, параметры съёмки и дополнительные элементы. Его экраны полезны для первого проекта, потому что показывают логику последовательности и уменьшают число опечаток. После завершения следует прочитать созданные строки, а не воспринимать их как закрытые настройки: все координаты и фильтры остаются доступными для точной правки. Это особенно важно, если книга отличается от типового прямоугольного листа.

Экран мастера с параметрами камерной съёмки и обработки

Мастер не может оценить уникальные поля каждой книги. Он создаёт отправную точку, но Perspective и Crop нужно подтверждать на реальных кадрах. Если параметры камеры или свет отличаются от предыдущей сессии, старый проект копируют только как шаблон и заново снимают координаты и эталон. Автоматическое принятие старых значений приводит к систематическому дефекту на всей новой серии.

Отправка подготовленного комплекта в Интернет-архив

Диалог загрузки позволяет передать подготовленный набор в Интернет-архив. В нём указываются идентификатор, название, автор, язык, описание, коллекция и другие метаданные. Перед отправкой необходимо проверить права на публикацию, полноту книги и отсутствие персональных данных в служебных кадрах. Ошибка в идентификаторе или метаданных усложняет дальнейшую каталогизацию. Идентификатор выбирают один раз и сверяют до начала длительной передачи.

Диалог отправки книги в Интернет-архив с полями метаданных

Архивная платформа может создать производные представления, включая распознаваемый текст и форматы чтения, но качество производных зависит от загруженных страниц. Поэтому до отправки завершают геометрию, порядок, DPI, цвет и контроль файлов. Мастер-копия и проект остаются у пользователя независимо от результата сетевой передачи. Повторная загрузка не должна быть единственным способом исправить исходный набор.

Ограничения, которые важно учитывать заранее

Интерфейс и справка рассчитаны на пользователя, готового читать команды и проверять конфигурацию. Большая часть точной настройки находится не в привычных ползунках, а в строках проекта и координатах. Это даёт воспроизводимость, но повышает цену опечатки и требует дисциплины с Pages. Для разовой пары листов такой подход избыточен; его преимущество раскрывается на больших сериях, где ручное повторение одинаковых действий создаёт больше ошибок.

Для запуска требуется Java 7, а объём памяти настраивается параметром -Xmx. Современная система может не иметь нужной среды изначально. Установка другой Java без проверки способна изменить доступный объём памяти и поведение библиотек изображений. Рабочую среду лучше зафиксировать вместе с проектом и не менять посреди длительной книги. Путь к java проверяют тем же сценарием, которым затем будет выполняться batch.

Распознавание текста зависит от внешнего Tesseract. В программе нет полноценного инструмента вычитки OCR, поэтому точную электронную книгу приходится дорабатывать отдельно. Аналогично, сложное удаление пальцев, восстановление разорванного края и художественная ретушь не входят в основной пакетный процесс; их выполняют до загрузки или внешней командой. При подключении внешнего фильтра ответственность за формат и ошибки переходит к его сценарию.

Автоматические операции не заменяют стабильную съёмочную установку. Перемещение камеры, плавающий баланс белого, блеск стекла и случайное раскрытие книги заставляют разбивать проект на множество диапазонов. Чем стабильнее исходная серия, тем меньше исключений, быстрее предпросмотр и надёжнее повторный запуск. Если параметры приходится менять почти на каждом кадре, сначала следует исправить процесс съёмки.

Краткий справочник операций проекта

LoadImages

Загружает обычную папку изображений. Используйте, когда страницы уже идут в правильном порядке и не требуют сопоставления двух камер. После загрузки сразу проверьте границы числовой сортировки, чтобы кадр 100 не оказался рядом с кадром 10.

LoadLRImages

Читает подпапки l и r, сопоставляет кадры по времени и строит чередующуюся книгу. Несовпавшие файлы проверяйте в конце списка до удаления или переименования. Режим игнорирования времени безопасен только при равном количестве и гарантированном порядке.

Pages

Ограничивает следующие команды сторонами или диапазонами. Всегда добавляйте явное Pages = all перед операциями, которые должны затронуть всю книгу. При диагностике ищите ближайшую строку Pages выше ошибочной команды.

Rotate

Поворачивает серию до геометрической коррекции. Для зеркально установленных камер задавайте противоположные углы в отдельных группах left и right. После поворота проверяйте не только текст, но и порядок сторон.

Perspective

Преобразует четыре отмеченных угла страницы в прямоугольник. Точки должны описывать одну физическую границу и идти в правильном порядке. Физические размеры вводят по листу, а не по печатной области.

PerspectiveAndCrop

Одновременно выпрямляет страницу и отсекает внешнюю область. Команда удобна в стабильной серии, но раздельные операции проще диагностировать. При меняющемся корешке предпочтительнее несколько контрольных наборов.

Crop

Оставляет прямоугольник по двум координатам. Размещайте после Perspective, если исходный кадр имеет трапециевидную форму. Проверяйте номера страниц, колонтитулы и выступающие иллюстрации.

InterpolateCrop

Плавно меняет рамку между контрольными страницами. Подходит для постепенного смещения корешка, но не для случайных рывков камеры. Контрольные страницы ставят там, где фактически меняется форма блока.

CropAndScale

Обрезает и сразу приводит к размеру. Применяйте после того, как отдельные Crop и Scale уже проверены на тестовой выборке. При ошибке временно разложите операцию на два шага.

AddBorder

Добавляет поле вокруг готового листа. Используйте для одинакового внешнего размера, а не для сокрытия ошибочно обрезанного текста. Цвет рамки должен соответствовать выбранному виду страницы.

Whiteout

Закрашивает заданную область белым. Хорошо удаляет держатели вне содержания, но заметен на цветной или фактурной бумаге. Сначала попробуйте безопасно изменить Crop.

SetSourceDPI

Записывает известную исходную плотность. Не доверяйте случайному DPI из EXIF камеры без измерения реальной страницы. Неверное значение затем влияет на физический размер.

SetDestinationDPI

Задаёт целевую плотность для выходного изображения. Число должно соответствовать назначению, а не служить способом искусственного увеличения. После записи проверьте сантиметры в независимом просмотрщике.

ScaleToDPI

Пересчитывает пиксели под физический размер и целевой DPI. Проверяйте мелкий текст после уменьшения и объём файла после увеличения. Интерполяция не создаёт новой оптической детализации.

EstimateDPI

Оценивает плотность по известной геометрии. Сравнение нескольких страниц показывает, насколько стабильны камера и точки перспективы. Большой разброс требует проверки установки.

ScaleToFirst

Приравнивает масштаб серии к первой странице. Выбирайте обычный лист, а не обложку, форзац или нестандартную вкладку. Эталон должен представлять основной формат книги.

Scale

Меняет размеры изображения на заданном этапе. Обычно выполняется после обрезки и перед финальной резкостью. Масштабирование до геометрии тратит время и меняет смысл координат.

SetPreviewScale

Уменьшает рабочий предпросмотр ради скорости. Перед окончательным запуском всё равно проверяйте детали на сохранённом полном изображении. Уменьшенная копия скрывает тонкие дефекты.

NormalizeLighting

Компенсирует градиент по эталонному пустому листу. Для двух камер используйте два эталона, снятых при неизменном свете. Блики, складки и текст на эталоне создают обратные пятна.

WhiteBalance

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

Brightness

Сдвигает общую яркость. Применяйте умеренно, потому что пересвет и провал теней после него не восстанавливаются. Для средних тонов чаще точнее Gamma.

Gamma

Меняет средние тона без равного сдвига крайних значений. Полезна для раскрытия тёмного корешка при сохранении светлого поля. Слишком сильное значение проявляет шум.

Levels

Задаёт чёрную и белую точки вручную. Контролируйте тонкие штрихи и детали фотографий на разных страницах. Один удачный текстовый лист не гарантирует сохранность иллюстраций.

AutoLevels

Автоматически растягивает диапазон. Результат может меняться на страницах с большими иллюстрациями, поэтому тестируйте весь типовой набор. Для единообразной книги ручные параметры предсказуемее.

Saturation

Корректирует насыщенность. Разделяйте текстовые и цветные диапазоны, чтобы не обесцветить вклейки. Цветовой шум лучше уменьшать после правильного баланса белого.

Color

Преобразует цветовой режим перед сохранением. Выбранный режим должен быть совместим со сжатием, особенно TIFF Group 4. Сохраняйте цвет там, где он несёт смысл.

FilterSaturated

Работает с чрезмерно насыщенными пикселями. Порог подбирайте по маркерам и цветным элементам, не затрагивая иллюстрации. Проверяйте границы объектов при увеличении.

MedianFilter

Убирает одиночный шум с сохранением краёв. Большой радиус разрушает засечки и мелкие знаки. Тестируйте на самом мелком шрифте, а не на заголовке.

Despeckle

Удаляет мелкие пятна. Сравнивайте с оригиналом, чтобы не принять точки букв и знаки пунктуации за мусор. Порог должен соответствовать реальному размеру дефекта.

GaussianBlur

Создаёт контролируемое размытие для подавления высокочастотного шума или подготовки внешнего фильтра. Не используйте как замену правильному фокусу. Сильное размытие необратимо.

Sharpen

Усиливает края после масштабирования. Ореолы вокруг букв показывают, что параметр завышен. На фотографиях проверяйте зерно и тонкие ветви.

BarrelCorrection

Компенсирует дисторсию объектива по измеренным параметрам. Настройка зависит от камеры и фокусного расстояния. Изменение зума требует нового измерения.

Unwarp

Пытается распрямить изгиб у корешка. Эффективность зависит от качества строк и стабильности снимка. Сначала убедитесь, что Perspective настроена правильно.

RemovePages

Удаляет ненужные кадры из последовательности. Сначала убедитесь, что они не нужны как эталон или ориентир нумерации. После удаления перепроверьте пары.

DeselectPages

Временно исключает страницы из запуска. Используйте для короткой тестовой выборки без изменения структуры книги. Перед финальным batch убедитесь, что нужные листы снова выбраны.

Rename

Создаёт последовательные имена. Добавляйте ведущие нули и выполняйте после устранения дублей. Имя файла не должно подменять логическую метку страницы.

StartPage

Задаёт начальный номер выходной серии. Согласуйте его с частями книги и PageLabels. При обработке тома частями фиксируйте последний использованный номер.

PageLabels

Создаёт логические метки PDF, включая римскую нумерацию и префиксы. Метки должны следовать фактическому порядку листов. Проверьте переход к основной нумерации.

Metadata

Записывает название, автора и описательные поля. Проверьте орфографию до пакетного создания файлов. Для каждого тома используйте собственный набор.

OCR

Передаёт подготовленную страницу установленному Tesseract и сохраняет результат для PDF. Язык и доступность движка проверяются отдельно. Наличие видимой страницы не подтверждает текстовый слой.

SaveImage

Сохраняет отдельную страницу. Удобна для теста параметров без запуска всей серии. Имя теста должно отражать изменённую операцию.

SaveImages

Записывает последовательность в TIFF, JPEG, JPEG 2000 или PNG. Настройте каталог и компрессию до массового запуска. Оригиналы должны находиться в другом месте.

SetTiffOptions

Выбирает NONE, DEFLATE, GROUP4 или JPEG для TIFF. Group 4 применяйте только к однобитным данным. Для мастер-копии цветных страниц безопаснее DEFLATE.

CreatePDF

Собирает многостраничный PDF, задаёт внутренний формат изображений, качество и режим просмотра. Проверяйте совместимость JPEG 2000, порядок разворотов и логические метки.

SetDestination

Назначает выходную папку. Она не должна совпадать с каталогом оригиналов. Проверяйте свободное место и права записи перед запуском.

SaveTemp

Фиксирует промежуточный результат для быстрых повторных экспериментов. Пересоздавайте его после изменения геометрии. Помечайте этап, который содержит временный набор.

LoadTemp

Загружает сохранённый промежуточный набор. Устаревший кэш может скрыть изменения проекта. При сомнении повторите обработку без кэша на одной странице.

PipePNG

Передаёт PNG внешнему процессу через поток. Тестируйте размеры, формат возврата и обработку ошибок. Внешний фильтр не должен молча возвращать пустой файл.

PostCommand

Выполняет внешнюю команду после обработки. Ведите журнал и не удаляйте мастер-файлы до проверки кода завершения. Пути с пробелами заключайте в кавычки.

CreateArchiveZip

Упаковывает подготовленный набор. До запуска подтвердите порядок, имена, метаданные и полноту страниц. Архив проверяют распаковкой, а не только фактом создания.

SaveToArchive

Сохраняет материалы в архивный поток. Используйте только после визуального контроля производных файлов. Сетевой результат не заменяет собственную мастер-копию.

Barcodes

Распознаёт служебные штрихкоды для автоматизации параметров. Неудачное распознавание следует проверять вручную. Коды должны быть резкими и полностью попадать в кадр.

BarcodePerspective

Получает геометрию из корректирующего штрихкода. Полезна в повторяемой установке с заранее подготовленным шаблоном. Для уникальной книги ручные точки легче проверить.

ImageStatistics

Показывает численные характеристики изображения. Сопоставляйте их с визуальным состоянием, а не принимайте как автоматическую оценку качества. Статистика особенно полезна для сравнения тестовых вариантов.

Финальная памятка перед обработкой всей серии

  • Пары левой и правой камер совпадают, дубли и пропуски отмечены.
  • Rotate, Perspective и Crop проверены минимум на начале, середине и конце.
  • Pages возвращается к all перед общими фильтрами и сохранением.
  • Физический размер и DPI не растягивают текст и не увеличивают слабый кадр без пользы.
  • Эталоны NormalizeLighting сняты при том же свете и отдельно для камер.
  • Levels, цвет, шум и резкость проверены на тексте, иллюстрации и самой тёмной странице.
  • Формат TIFF, JPEG, JPEG 2000 или PNG соответствует содержанию и дальнейшему использованию.
  • Tesseract и нужный язык проверены на коротком диапазоне до создания полного PDF.
  • Папка назначения отделена от оригиналов и содержит достаточно свободного места.
  • Тестовый PDF открыт в нескольких местах, порядок и метки страниц подтверждены.

После этих проверок проект становится рабочей инструкцией, а не набором случайных настроек. Book Scan Wizard 2 особенно полезен там, где десятки или сотни страниц сняты в одинаковых условиях: одна проверенная цепочка исправляет геометрию, свет и размер всей серии, при этом исходные кадры остаются нетронутыми. Финальный контроль по выборке и хранение проекта позволяют повторно собрать книгу с другим форматом или качеством без новой съёмки.

Если контроль обнаружил систематическую проблему, исправьте её в соответствующей строке и снова выполните короткий диапазон. Не продолжайте выпуск поверх сомнительного результата: ошибки перспективы, области Pages, эталона света и формата сжатия легче устранить до создания сотен файлов. После успешной повторной проверки проект можно использовать как документированную технологическую карту конкретной книги.