Лингвофорум

Общий раздел => Наука и техника => Компьютеры => Тема начата: Тайльнемер от января 15, 2012, 08:02

Название: Обработка изображений. Подскажите
Отправлено: Тайльнемер от января 15, 2012, 08:02
Время от времени мне попадается что-нибудь вроде снятого фотоаппаратом/телефоном текста, который хотелось бы привести в божеский вид. Конкретно — сделать чёрный текст на белом фоне, например, для распечатки на принтере.

В отличие от сканов(,) фотографии текста обычно бывают неравномерно освещены. То есть, градиентный фон от светло-серого к средне-серому и текст на нём от средне-серого к тёмно-серому.

Если вывести тоновой кривой (или яркостью-контрастностью) фон в тёмном месте фотографии к белому, то светлая часть фотографии становится полностью белой; а если вывести текст светлой части к чёрному, то тёмная часть становится полностью чёрной. Т. е., в обоих случаях часть текста становится нечитаемой.

«Нахождение границ» замечательно выделяет текст из фона, но вот буквы становятся пустыми внутри.

Как в таких случаях действовать?
Название: Обработка изображений. Подскажите
Отправлено: Hellerick от января 15, 2012, 08:19
Сейчас у меня под рукой нет Фотошопа...

Кажется я пробовал использовать фильтр «maximum» — он позволял получать «чистый» неравномерно освещенный белый лист с убранным текстом.

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

Правда не помню, насколько это было эффективно.
Название: Обработка изображений. Подскажите
Отправлено: mnashe от января 15, 2012, 08:43
Я пока не нашёл решения.
Выделял ярко освещённую середину, сильно размывал выделение, инвертировал его, затем поднимал яркость периферии. Иногда несколько раз.
Но это не дело — трудоёмко и результат не идеален. Я просто переносил на «камеросканы» опыт работы с нормальными фотографиями.

Цитата: Hellerick от января 15, 2012, 08:19
Кажется я пробовал использовать фильтр «maximum» — он позволял получать «чистый» неравномерно освещенный белый лист с убранным текстом.
Потом можно было вычесть «чистый лист» из основного изображения, и получить текст на белом фоне.
Интересно, надо попробовать.

А ScanKromsator / ScanTailor не справляются с камеросканами?
Название: Обработка изображений. Подскажите
Отправлено: Hellerick от января 15, 2012, 09:13
Подкиньте-ка образец пациента.
Название: Обработка изображений. Подскажите
Отправлено: rafa от января 15, 2012, 09:32
в данном случае вот самый быстрый и простой способ:
Название: Обработка изображений. Подскажите
Отправлено: mnashe от января 15, 2012, 09:36
Пациент:
(http://s017.radikal.ru/i443/1201/e9/7f155fa205ddt.jpg) (http://radikal.ru/F/s017.radikal.ru/i443/1201/e9/7f155fa205dd.jpg.html)

Результат вышеописанной обработки:
(http://s018.radikal.ru/i527/1201/a3/c335dd8af769t.jpg) (http://radikal.ru/F/s018.radikal.ru/i527/1201/a3/c335dd8af769.png.html)
Название: Обработка изображений. Подскажите
Отправлено: Tweet от января 15, 2012, 09:46
Я предпочитаю применить фильтр несколько раз с разными параметрами (и/или изменить контраст с разными параметрами несколько раз) и использовать маски слоёв, чтобы сохранить именно ту часть слоя, где он хорошо вышел.
Название: Обработка изображений. Подскажите
Отправлено: mnashe от января 15, 2012, 09:47
Цитата: rafa от января 15, 2012, 09:32
то надо результат выделения воплотить в чб изображение и волшебной палкой  выделить полости ынутри букв и залить их черным...
А ничё, что палкой придётся взмахнуть пару тысяч раз на страницу?
Ну или, если тыкать, наоборот, в белое, то один раз снаружи букв и сотни раз — на дырки в абвдеорфхъыьюя.
Название: Обработка изображений. Подскажите
Отправлено: mnashe от января 15, 2012, 09:50
Цитата: Demetrius от января 15, 2012, 09:46
и использовать маски слоёв, чтобы сохранить именно ту часть слоя, где он хорошо вышел
А что такое «маски слоёв» и «часть слоя»?
Название: Обработка изображений. Подскажите
Отправлено: Oleg Grom от января 15, 2012, 10:17
Пользуйтесь scantailor'омъ (только версіи изъ git) или bookrestorer'омъ.
Название: Обработка изображений. Подскажите
Отправлено: rafa от января 15, 2012, 10:20
Цитата: Oleg Grom от января 15, 2012, 10:17
Пользуйтесь scantailor'омъ (только версіи изъ git) или bookrestorer'омъ.

дауш зачем фотошоп коды есть для людей такие софты
Название: Обработка изображений. Подскажите
Отправлено: Hellerick от января 15, 2012, 10:22
Сделал для исходного изображения два слоя-копии.

Оба слоя-копии размыл по Гауса при радиусе два пикселя.

Один слой подверг фильтру «максимум», а другой — «минимум» (при 20-пиксельной радиусе).

Светлый слой, который был над начальным изображением, настроил на показ в режиме «роазница». Слил его с начальным изображением и сделал его инверсию.

Темный слой настроил на режим «жесткое смещение» и тоже слил с основным изображением.

Отчернобелил картинку.

Все операции делаются «не глядя», а значит, могут быть автоматизированны макросом.

Offtop
Ненавижу русский интрефейс Фотошопа.
Название: Обработка изображений. Подскажите
Отправлено: Hellerick от января 15, 2012, 10:23
Цитата: Oleg Grom от января 15, 2012, 10:17
Пользуйтесь scantailor'омъ (только версіи изъ git) или bookrestorer'омъ.

Няяя
Название: Обработка изображений. Подскажите
Отправлено: mnashe от января 15, 2012, 10:30
(http://lingvoforum.net/index.php?action=dlattach;topic=43675.0;attach=29190;image) (http://lingvoforum.net/index.php?action=dlattach;topic=43675.0;attach=29190;image)
Ух ты! Отличный результат, намного лучше моего — и проще.
А зачем нужно два слоя, максимум и минимум?

Цитата: Hellerick от января 15, 2012, 10:22
Offtop
Ненавижу русский интрефейс Фотошопа.
:+1:
Никак не соображу, что ж такое «жёсткое смещение».
Название: Обработка изображений. Подскажите
Отправлено: Тайльнемер от января 15, 2012, 10:35
Цитата: mnashe от января 15, 2012, 08:43
А ScanKromsator / ScanTailor не справляются с камеросканами?
Цитата: Oleg Grom от января 15, 2012, 10:17
Пользуйтесь scantailor'омъ (только версіи изъ git) или bookrestorer'омъ.
Круто. Спасибо за такую прогу. Испробую.
Название: Обработка изображений. Подскажите
Отправлено: Hellerick от января 15, 2012, 10:37
Цитата: mnashe от января 15, 2012, 10:30
А зачем нужно два слоя, максимум и минимум?

Слой с максимумом осветляет бумагу, слой с минимумом затемняет буквы.

Ах да, я забыл еще одно действие — после инвертирования нужно сделать autocolors, или как там это называется, чтобы изображение не было таким серушным.
Название: Обработка изображений. Подскажите
Отправлено: mnashe от января 15, 2012, 10:50
Цитата: Hellerick от января 15, 2012, 10:37
autocolors, или как там это называется
Auto levels или что-то в этом духе, точно не помню.

Я ещё не пробовал ST, раньше SK пользовался. Говорят, ST намного проще в настройках. Интересно, как он с моим пациентом справится.
Если справится, надо будет ему словарь Кляйна скормить (460-тонный PDF).
Название: Обработка изображений. Подскажите
Отправлено: Oleg Grom от января 15, 2012, 11:04
Цитата: mnashe от января 15, 2012, 10:50
Интересно, как он с моим пациентом справится.
Название: Обработка изображений. Подскажите
Отправлено: mnashe от января 15, 2012, 11:20
Отлично! Справился вполне.
Значит, надо срочно его устанавливать и обрабатывать Кляйна. Ну, и эту статью наконец смогу дочитать.
Пришлось повозиться с настройками, или всё по дефолту?
А что такое «только версіи изъ git»?
Название: Обработка изображений. Подскажите
Отправлено: Oleg Grom от января 15, 2012, 11:31
Цитата: mnashe от января 15, 2012, 11:20
Пришлось повозиться с настройками, или всё по дефолту?
Все по дефолту. Единственное, что я въ ручную задалъ dpi и сдѣлалъ поля чуть больше, т.к. при исправленіи перекоса строкъ "съѣдался" кусокъ текста. Изъ практики: иногда можетъ потребоваться вручную поправить перекосъ строкъ или вообще его отключить, ну и можетъ еще что-то специфическое для конкретныхъ снимковъ.
Цитата: mnashe от января 15, 2012, 11:20
А что такое «только версіи изъ git»?
Это разрабатываемая, предрелизная версія. Сборки для Windows можно брать тутъ: http://sourceforge.net/projects/scantailor/files/scantailor-devel/plus/
Название: Обработка изображений. Подскажите
Отправлено: mnashe от января 15, 2012, 11:58
Спасибо!
Название: Обработка изображений. Подскажите
Отправлено: mnashe от января 15, 2012, 23:27
Вот первый блин.
Посмотрите, что можно было улучшить настройками?
Название: Обработка изображений. Подскажите
Отправлено: Oleg Grom от января 16, 2012, 18:26
Цитата: mnashe от января 15, 2012, 23:27
Вот первый блин.
Посмотрите, что можно было улучшить настройками?
Для начала я бы принудительно задал меньший dpi для исходных файлов, скажем 150 и немного увеличил поля. Потом стоило бы поиграться с порогом бинаризации для отдельных страниц. Там где получается "мазня" можно попробовать предварительно помучить оригинальные изображения в фотошопе, иногда это помогает.
Название: Обработка изображений. Подскажите
Отправлено: mnashe от января 16, 2012, 19:12
Спасибо!
Я как раз поставил 600 для исходных файлов. Не знал, что это может повредить.
Поля я подрезал потом в ручную, поскольку ST почему-то их огромными сделал.
А, знаю, почему: я где-то недоглядел (не срезал) мазню слева, и он все страницы под это отразмерил.
Можно было бы потом выровнять всё, но мне было лень, это ж так, для опыта.
Кстати, меня удивило, что ST выделил текст от фонаря на половине страниц (потеряв кое-где аж треть страницы), пришлось размечать всё вручную.
Название: Обработка изображений. Подскажите
Отправлено: Oleg Grom от января 16, 2012, 19:28
Цитата: mnashe от января 16, 2012, 19:12
Я как раз поставил 600 для исходных файлов. Не знал, что это может повредить.
Вообще есть способ вычислить правильное разрешение для каждой конкретной фотографии. Вот здесь об этом говорится - http://vimeo.com/12527484
Цитата: mnashe от января 16, 2012, 19:12
Поля я подрезал потом в ручную, поскольку ST почему-то их огромными сделал.
Это потому что полезная область на какой-то страницы оказалась больше чем у других. Для фотографированных книг лучше всего снимать галочку с mtch size with other pages.
Название: Обработка изображений. Подскажите
Отправлено: mnashe от января 16, 2012, 21:20
Цитата: Oleg Grom от января 16, 2012, 19:28
Для фотографированных книг лучше всего снимать галочку с mtch size with other pages.
Действительно. Одну снимут прямо, другую под углом...
Название: Обработка изображений. Подскажите
Отправлено: Oleg Grom от января 16, 2012, 22:05
Цитата: mnashe от января 16, 2012, 21:20
Действительно. Одну снимут прямо, другую под углом...
Там не в этом дело. Если снимать не со штатива, то получается разное расстояние до объекта съемки, соответстеннно надо либо колдовать с dpi, либо как-то извращаться параметрами полей при обработке.
Название: Обработка изображений. Подскажите
Отправлено: Тайльнемер от января 17, 2012, 04:26
Отличная программа.
Я в качестве эксперимента перевёл книгу по баскской фонетике из темы Баскский-1: ударение (http://lingvoforum.net/index.php/topic,42752.0.html) из 55-мегабайтного pdf'a в 1,7-мегабайтное djvu:

http://teilnehmer.host.org/misc/docs/BasquePhonology.djvu (http://teilnehmer.host.org/misc/docs/BasquePhonology.djvu)
Название: Обработка изображений. Подскажите
Отправлено: mnashe от января 24, 2012, 08:26
Обработал вчера Кляйна (этимологический словарь иврита).
Из 460 MB pdf (фотографии 753 страниц) вышел 62 MB djvu.
Потратил на кадрирование почти 6 часов, так как больше половины страниц StanTailor не смог правильно выделить автоматически.
И это ещё не всё, придётся вечером продолжить — с раскривлением страниц он не справился, придётся размечать вручную. Ещё 5–6 часов работы... :(
Странно, что в короткой статье из 30 страниц он успешно раскривил фотографированные страницы, а тут — никак. Даже наоборот, пару ровных страниц в начале книги искривил.
Кроме искривления, качество нареканий не вызывает: всё, что можно было извлечь из оригинала, он извлёк, читать так намного приятнее, а уж про размер и говорить нечего.
На UZ лежит ужатый до 100 MB вариант этого 460 MB pdf — так там вообще почти нечитабельно из-за jpeg-артефактов. Посмотрел и стёр.