Качественное сканирование на бытовом сканере — идея для софта

Здравствуйте!

Каждый, кто достаточно часто сканирует фотографии, знает, сколько времени порой уходит на чистку скана от пыли и прочего аналогового мусора.

Казалось бы, решение очевидно — хорошенько протрите сканер, но не всё так просто, как хочется.
Во-первых, идеально стекло всё равно не очистишь, во-вторых, пыль может быть с внутренней стороны, и в-третьих, проблемы, как оказывается, не только с пылью.

Между тем, вполне реально быстро получить качественный результат на более-менее дешёвом бытовом сканере.
Я не программист, поэтому просто хочу поделиться идеей автоматической чистки с уважаемыми хабровчанами. Если какая-нибудь российская компания воплотит алгоритм в жизнь, буду только рад.

Те же, кто, как и я, пока что чистят фотографии вручную, быть может, тоже найдут что-нибудь полезное под катом (и ~500-600 кб картинок).


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

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

Идея проста: сканируем одну и ту же картинку с поворотом на 180 градусов, и используем более тёмные участки изображения из 2 результатов.

Почти вся пыль пропала

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

Так же, но простым смешиванием 50 на 50, устраняются цветные ореолы у контуров:

Хроматический ореол пропал

Тут есть одно неудобство: скорее всего, совместить всю картинку сразу не получится.

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

Кстати, даже сами пропорции изображения получаются разными при сканировании с поворотом на 90°:

Искажение пропорций

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

Итого, 3 раза сканируем картинку и на выходе (полностью автоматически в случае с программой) получаем близкое к идеалу — для данного сканера — изображение.

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

Конечно, возможно, что такой способ уже кем-то был реализован, и только мне такие программы не известны.
Что скажете, хабра-люди?
AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Подробнее
Реклама

Комментарии 26

    +11
    PhotoAcute Studio
    Складывает разнофокусные, вычитает шумы, итд.
      +1
      Здорово, я почти и не сомневался, что где-то это должно быть. Спасибо, пойду исследовать программу!
        0
        Да, хорошая программа, и всё же это немного не то, просто предназначена она для другого — использует несколько кадров для увеличения разрешения, добавления глубины резкости и вытягивания деталей в тенях и бликах.
        Если не ошибаюсь, её близкий аналог — «Topaz Moment».

        Но вот пыль она где-то чистит, а где-то — нет.
        Или удаление движущихся объектов с фона работает только для видео, или я что-то не донастроил… так и не получилось нормально убрать.
        –1
        А программа то ваша где?)
          0
          Действительно, я не уточнил. Для совмещения я пользуюсь обычно GIMP'ом или Photoshop'ом.
          Нужно совместить слои, и в палитре слоёв для верхнего слоя:
          — в GIMP'е поставить режим наложения «darken only»;
          — Photoshop'е — режим наложения «darken».

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

          Чуть попозже посмотрю, справится ли с геометрическими искажениями, создаваемыми сканером, предложенная ofiginuri PhotoAcute Studio — потому что она, насколько я понял, всё же предназначена для кадров с цифровых камер, а не для компенсации неточностей двигателя и помятостей фотографий.
          0
          Если говорить об аналоговом фото, то сканируют обычно не отпечатки, а пленку на нормальном (слайд или на худой конец, планшетном-со-слайд-модулем) сканере, если нужно получить приемлимый результат с хорошим DPI.

          В случае с отпечатками, на пыль как-то наплевать — ибо для web-превьюшек вплоне достаточно просто уменьшить размер выходного скана, чтобы пылинки визуально дезинтегрировались. В любом случае, «качественный результат» тут будет понятие весьма и весьма относительное. ;)
            0
            Для маленьких превьюшек, конечно, пыль можно и не чистить, равно как и не исправлять цвет контуров.
            Но если фотография нужна для увеличения, например, а негатива давно уже нет, то такой способ быстрее ручной чистки и, по опыту, аккуратнее автоматического фильтра для устранения пыли.

            И, кстати, при этом убираются и блики на изломах фотографий — когда одна половинка нормальная, а другая отсвечивает — а это уже заметно гораздо сильнее пыли.
          • НЛО прилетело и опубликовало эту надпись здесь
              0
              Реально нужное изображение с аналога, действительно вылизывается вручную в шопе, а простой «депылизатор», как правило, уже есть в комплектном скансофте…
              • НЛО прилетело и опубликовало эту надпись здесь
                0
                Да хотя бы и платная была — она времени просто кучу сэкономит.
                В Photoshop'е в его Photomerge получается похоже, но не так хорошо, как если совмещать по кускам вручную.
                Контуры размываются, потому что картинка буквально «плывёт» — края совпадают, а центр уехал.
                При совмещении контуров по всей площади было бы и просто, и быстро.
                Но вроде ни одна программа с такой «резиновой» сеткой пока не работает.
                0
                А что, нормальных сканеров SOHO класса в природе уже не осталось?
                  +2
                  Но ведь туда тоже попадает пыль.
                  +1
                  Не пользуйтесь, пожалуйста, ipicture, картинки в других странах не грузятся. И вообще, удаляются и исчезают при первой возможности…
                  Пользуйтесь habrastorage.org/
                    +1
                    Спасибо, исправил.
                      +1
                      Или ВКонтактом. Собственно, их можно даже сразу после загрузки и вставки кода удалять из своего альбома.
                        0
                        Здесь habrastorage.org как-то логичнее. На ВКонтакте и так нагрузка большая наверняка.
                          0
                          Бедненький, бедненький контактик не справится с хабраэффектом!
                            0
                            Да-да, неужели Вы оставите миллионы пользователей без их родных стен?
                            Кстати, не люблю считать чужие деньги, но не такой уж и бедный — Дж. Уэйлс подтвердит.
                    • НЛО прилетело и опубликовало эту надпись здесь
                        0
                        Да, полезный проект. Хоть до бумажных электронные книги и не дотягивают пока, но это дело времени.
                        0
                          0
                          Ого, а тут вообще чудеса творят — увеличение динамического диапазона сканера за счёт 2 проходов с разным временем экспозиции!
                          Но вышеописанной функции, насколько я посмотрел, нет. Пока что нет. Но софт у них определённо интересный!
                          0
                          а почему поворачивать на 90, а не 180? Вдруг пропорции сохранятся.
                          Или же просто подвинуть на другое место не поворачивая. И так несколько раз 3-4.

                          Попробуйте сделать 4-5 сканов и загрузить сюда — www.snapmania.com/info/en/trm/
                            0
                            На 90 градусов дважды нужно поворачивать, только если хочется получить правильные размеры по обеим осям — это для потенциальной программы вариант, по принципу «раз уж чистить, то почему бы и пропорции не подкорректировать автоматически». Так-то идеальные размеры фотографии редко когда важны.
                            А просто для чистки достаточно 2 сканов — головой вверх и головой вниз — я так и писал.

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

                            image

                            Интереса ради сделал 4 скана со сдвигом, загрузил на snapmania.com. На выходе получил подрезанное по сторонам на 2 пикселя изображение, идентичное первому скану. Похоже, не сработало…
                              0
                              Вру, подрезано только по горизонтали — на 5 и на 6 пикселей.

                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                          Самое читаемое