Автор Тема: Программы обработки больших сканов  (Прочитано 3096 раз)

uxn

  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Привет всем!

Хочу предложить уважаемому сообществу три своих утилиты по обработке изображений.

Я работаю в области САПР более 5 лет и, естественно, стараюсь облегчить свою ежедневную работу, которая включает в себя сканирование, обработку и печать чертежной документации самого разного размера (от А5 и до нескольких А0), качества (кальки, бывают и довоенные, пятнистые синьки, на которых и человек-то не все распознает, бумажные распечатки с огромным количеством мусора, сделанные с этих синек, фотографии чертежей) и объема (порядка сотен форматов А1 в день).

С самого начала столкнулся с явным дефицитом элементарных средств обработки больших растров (100 Мпикс … 1 Гпикс) на обычном 32-bit Wintel. Из используемых инструментов сейчас: XnView, Jasc Paint Shop Pro 9, Acrobat 9 Pro, Spotlight Pro, Scan Tailor. Photoshop не подходит, т.к. слишком часто не способен прочитать бинарные TIFF’ы (основной формат сканированных чертежей). GIMP совершенно не удовлетворяет по причине своей необыкновенной тормознутости (возможно его исправит переход на новое ядро GEGL). VIPS интересен, в частности как источник вдохновения, но нечеловеческий и явно недостаточный интерфейс nip2 невозможно использовать на практике. Вообще все эти программы (кроме Spotlight и Scan Tailor) больше ориентированы на обработку полноцветных или полутоновых фотографий, а бинарные растры в лучшем случае (XnView) хранятся в памяти в "родном" формате 1 пиксель в 1 бите. Очень мало специфических функций, рассчитанных на работу со сканами.

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

А теперь о технических деталях. Программы написаны на языке C++ и собраны MSVC11 для запуска под Windows, начиная с XP. Для работы требуют установленного Visual C++ Redistributable for Visual Studio 2012 Update 1. Из аппаратных средств понадобится процессор с SSE2 (Pentium 4 и выше). Программы интенсивно используют параллелизм, поэтому многоядерные процессоры будут хорошо загружены. Использование ОЗУ оптимизировано под обработку больших растров, так что задействовано будет лишь минимально необходимое количество памяти для каждой операции.

Ссылка на утилиты и их описание: https://www.box.com/uxn-img . Исходный код не выкладываю, т.к. он находится в процессе разработки и некоторые идеи ждут своей реализации и более тщательного описания используемых алгоритмов и структур данных.

Спасибо за внимание, жду ваших отзывов.

uxn

  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: Программы обработки больших сканов
« Ответ #1 : 22 јРЩ 2013, 23:32:01 »
Доступна новая версия: https://www.box.com/uxn-img
Изменения произошли в утилите ROTATOR

Цитата: change.log
22.05.2013
 + rotator: Добавил бинарное масштабирование типа растр-вектор-растр
 * rotator: Корректное значение разрешения (DPI) после масштабирования

21.05.2013
 + rotator: Добавил возможность указания порога бинаризации при повороте
 * rotator: Переделал весь рендеринг с одноцветного на антиалиасинг
 * rotator: Исправил быстрый поворот в диапазонах [45; 135] и [225; 315]

20.05.2013
 * rotator: Изменил масштабирование с интерполяцией на построчный вывод
 * rotator: Исправил масштабирование с суффиксом t в режиме бинарного вывода
« Последнее редактирование: 22 јРЩ 2013, 23:37:29 от uxn »

uxn

  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: Программы обработки больших сканов
« Ответ #2 : 28 јРЩ 2013, 22:26:58 »
Обновление: https://www.box.com/uxn-img
В утилите MORPHER добавлены фильтры бинарной порядковой статистики и медианы

Цитата: change.log
28.05.2013
 + morpher: Бинарная медиана и ранговый фильтр
 * morpher: Ранг фильтра <= 100% теперь обрабатывается правильно

uxn

  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: Программы обработки больших сканов
« Ответ #3 : 08 ёоЭм 2013, 13:31:27 »
Обновление: https://www.box.com/uxn-img
В утилите MORPHER добавлены параметрические и кольцевые фильтры

Цитата: change.log
30.05.2013
 + morpher: Добавил кольцевые открытие и закрытие

29.05.2013
 + morpher: Добавил параметрические открытие и закрытие

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

На картинке показано действие трех таких фильтров (лучше просматривать в масштабе 100%):
исходное изображение, отсеивание связных компонент по порогу (refiner ct),
медиана (morpher m) и параметрическое открытие (morpher i).

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

uxn

  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: Программы обработки больших сканов
« Ответ #4 : 17 ёоЫм 2013, 20:06:36 »
Обновление: https://www.box.com/uxn-img
Доработка функции сглаживания фона в утилите REFINER и функций поворота и доворота в утилите ROTATOR

Цитата: change.log
17.07.2013
 * rotator: Исправил быстрый поворот 32-битного изображения
 + rotator: Задание белого цвета фона при довороте
 + rotator: Возможность указания цвета фона при повороте, по умолчанию белый

16.07.2013
 * rotator: Ускорение быстрого поворота, если параллакс меньше 1 пикселя

12.07.2013
 * rotator: Коррекция измерения времени быстрого поворота
 * rotator: Оптимизация быстрого поворота в диапазонах [45; 135] и [225; 315]
 * rotator: Исправление быстрого поворота в диапазонах [45; 135] и [225; 315]

17.06.2013
 + refiner: Добавил обрезку значений гистограммы SSR по правилу трех сигм
 + refiner: Добавил возможность задания степени обрезки гистограммы SSR

14.06.2013
 + refiner: Добавил изопараметрический Single-Scale Retinex
 + refiner: Добавил растяжение гистограммы SSR
 + refiner: Добавил эквализацию гистограммы SSR
 - refiner: Убрал ручное задание линейных коэффициентов гистограммы SSR

Tipograph

  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
    • E-mail
Re: Программы обработки больших сканов
« Ответ #5 : 17 БХЭвпСам 2013, 16:34:10 »
Наверное утилиты неплохие. Вот только пользоваться не получилось. Прочтал мануал, но ничего не вышло :(

uxn

  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: Программы обработки больших сканов
« Ответ #6 : 25 БХЭвпСам 2013, 16:24:40 »
Наверное утилиты неплохие. Вот только пользоваться не получилось. Прочтал мануал, но ничего не вышло :(
Где возникли проблемы, в чем выражаются?
Каждая утилита имеет собственную мини-справку на английском по всем функциям, должно быть понятно как их использовать.

Tipograph

  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
    • E-mail
Re: Программы обработки больших сканов
« Ответ #7 : 02 ѕЪвпСам 2013, 21:28:16 »
Наверное утилиты неплохие. Вот только пользоваться не получилось. Прочтал мануал, но ничего не вышло :(
Где возникли проблемы, в чем выражаются?
Каждая утилита имеет собственную мини-справку на английском по всем функциям, должно быть понятно как их использовать.
Справка справкой, хорошо бы описание снабдить примерами. Я так понял, утилиты из командной строки запускаются. Например refiner.exe plan.jpg out.jpg, где plan.jpg - имя входного файла, out - имя выходного. Ну еще перед файлами параметр ставится, ставлю - ничего ???

uxn

  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: Программы обработки больших сканов
« Ответ #8 : 04 ѕЪвпСам 2013, 12:01:34 »
Справка справкой, хорошо бы описание снабдить примерами. Я так понял, утилиты из командной строки запускаются. Например refiner.exe plan.jpg out.jpg, где plan.jpg - имя входного файла, out - имя выходного. Ну еще перед файлами параметр ставится, ставлю - ничего ???
Примеры будут, как и развитие утилит. Много чего надо доработать. Сейчас вышла некоторая заминка в связи со сменой деятельности. САПР я покинул, но интерес к обработке изображений и компьютерному зрению не исчез.
В текущей версии утилит возможна проблема с jpeg - с этим форматом не все функции работают, его поддержка не была приоритетом. Все программы интенсивно тестировались с разнообразными TIFF-файлами, для них легче реализовать построчное чтение.

resnicainfo

  • Новичок
  • *
  • Сообщений: 1
    • MSN клиент - resnicainfo@mail.ru
    • Просмотр профиля
    • E-mail
Программы обработки больших сканов
« Ответ #9 : 23 °ЯаХЫм 2015, 19:23:20 »
Подскажите пожалуйста простой видео редактор для работы с видео с NX. За несколько дней поиска по сети сети так и не смог отыскать ни одной адекватной программы. Спасибо.

Phyllissa

  • Новичок
  • *
  • Сообщений: 2
    • ICQ клиент - 145565165
    • MSN клиент - tr.ew.sdo.kkdn@gmail.com
    • Просмотр профиля
    • Test, just a test
    • E-mail
Программы обработки больших сканов
« Ответ #10 : 06 ґХЪРСам 2015, 13:39:51 »
Сapture только для формата NEF, т.е. никоновских камер. Кенона C2R не поймет...А родные кеноновские программы полная ерунда. лучше сразу в фотошопеCamera Raw, как написала Юля или Lightroom , как написал Андрей

Valentin64

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
    • E-mail
Программы обработки больших сканов
« Ответ #11 : 17 ґХЪРСам 2015, 06:46:57 »
Подскажите пжлст, и давайте обговорим вопрос - какие есть программы для обработки звука??

Mickynub

  • Новичок
  • *
  • Сообщений: 1
    • ICQ клиент - 181826212
    • MSN клиент - dwebgedetan1976@yandex.ru
    • Просмотр профиля
    • E-mail
Программы обработки больших сканов
« Ответ #12 : 25 ґХЪРСам 2015, 10:10:16 »
Ребята меня интересуют еще программы продукт, которых можно было бы потом вставить в форум. Кто-нить посоветует что?