Написал несложный прокси сервер на Перле для обработки Perl-модулем ImageMagick-а качаемых тайлов.
Что умеет делать:
1) Удалять логотип (см. тут)
2) Корректировать поканально уровни RGB
3) Наводить резкость Unsharp Mask
4) Есть возможность проводить потенциально любую(!) цветокоррекцию с помощью обработанного по выбранному алгоритму специальному файлу с "эталонной" таблицей цветов (подробнее рекомендую посмотреть тут http://www.quelsolaar.com/technology/clut.html, вообще интересная тема на предмет реализовать в SAS)
Примеры использования:
качаем часть "плохого" снимка, склеиваем, отправляем в Фотошоп/Гимп/...
а) Выставить уровни и гамму поканально по интересующему ландшафту, записываем значения черной, белой точек и гаммы для каждого канала в !tile_proxy.ini.
б) Поместив на склееный снимок !hald.tif можно провести любые операции с цветом (кривые, каналы, слои, перевод и коррекция в CMYK/LAB; все операции должны быть индивидуальными - не зависеть от цветового окружения), сохранить измененный !hald_edited.tif, указать его в !tile_proxy.ini.
Глюки: при интенсивном скачивании (например, в режиме просмотра) иногда SAS перестает качать через прокси (счетчик тайлов бежит, но ничего реально не скачивается). Лечится перезапуском SAS.
Полный комплект (exe файл, исходный код, файл конфигурации, пример маски и альфаканала для убирания логотипа, пример haldCLUT файла и его редактированной версии)
http://zalil.ru/34415311
Чтобы собранный exe файл работал, необходимо установить ImageMagick (выбрать версию Win32 dynamic at 8 bits-per-pixel, на текущий момент последняя версия)
Прокси сервер для обработки тайлов
Модератор: Tolik
- Papazol
- Гуру
- Сообщения: 2069
- Зарегистрирован: 04 дек 2009, 01:39
- Откуда: Рязань
- Благодарил (а): 73 раза
- Поблагодарили: 647 раз
Re: Прокси сервер для обработки тайлов
Вопрос: при использовании данного сервера как будет вести себя программа в случае указания "заменять существующие тайлы только при их отличии"?
-
T_Im
- Постигающий Дао
- Сообщения: 112
- Зарегистрирован: 04 янв 2009, 21:52
- Благодарил (а): 14 раз
- Поблагодарили: 23 раза
Re: Прокси сервер для обработки тайлов
Смотря какой алгоритм у "заменять существующие тайлы только при их отличии". Если сверяется содержание тайла - то будет замена. Если берется размер или дата последней модификации из http хедера - то они вроде бы должны передаваться без изменений (замены не будет). Если сверяется физический размер тайла - то тут зависит от опций (например, при удалении логотипа размер, как ни странно, не изменяется; наведение резкости может увеличить тайл).
В любом случае, не вижу смысла качать в таком режиме через прокси: что в некоторых случаях SAS почему то пропускает пришедшие через прокси тайлы (при повторной скачке они скачиваются) - поэтому, во избежания мозаики лучше все делать на чистом кеше.
В любом случае, не вижу смысла качать в таком режиме через прокси: что в некоторых случаях SAS почему то пропускает пришедшие через прокси тайлы (при повторной скачке они скачиваются) - поэтому, во избежания мозаики лучше все делать на чистом кеше.
-
Draude
- Соображающий
- Сообщения: 82
- Зарегистрирован: 28 авг 2009, 02:02
- Благодарил (а): 15 раз
- Поблагодарили: 3 раза
Re: Прокси сервер для обработки тайлов
Че то не работает. Давайте разбираться
1.стащил по ссылке ImageMagick (ImageMagick-6.8.4-7-Q16-x86-dll.exe Win32 dynamic at 16 bits-per-pixel) .
2. установил
6. подправил !tile_proxy.ini в части Host и параметров коррекции, запустил:
два
7. сменил картосервис , взял Кадастр Ua, поправил !tile_proxy.ini, а именно : host=212.26.144.110 а из коррекции оставил только delogo=1
8. в независимости от порядка запуска !tile_proxy имеем ошибку :
1.стащил по ссылке ImageMagick (ImageMagick-6.8.4-7-Q16-x86-dll.exe Win32 dynamic at 16 bits-per-pixel) .
2. установил
- скрытый текст: показать
- скрытый текст: показать
- скрытый текст: показать
- скрытый текст: показать
6. подправил !tile_proxy.ini в части Host и параметров коррекции, запустил:
два
- скрытый текст: показать
7. сменил картосервис , взял Кадастр Ua, поправил !tile_proxy.ini, а именно : host=212.26.144.110 а из коррекции оставил только delogo=1
8. в независимости от порядка запуска !tile_proxy имеем ошибку :
- скрытый текст: показать
Re: Прокси сервер для обработки тайлов
Может установить IM в perl стандартным способом через ppm?Draude писал(а):Проблема наверное в ImageMagick
Автор, зачем установка отдельного целого IM-ка нужна? Через ppm не прокатит?
-
Draude
- Соображающий
- Сообщения: 82
- Зарегистрирован: 28 авг 2009, 02:02
- Благодарил (а): 15 раз
- Поблагодарили: 3 раза
Re: Прокси сервер для обработки тайлов
блииин, IM ругается на кирилицу в названиях файла и именах директорий
-
T_Im
- Постигающий Дао
- Сообщения: 112
- Зарегистрирован: 04 янв 2009, 21:52
- Благодарил (а): 14 раз
- Поблагодарили: 23 раза
Re: Прокси сервер для обработки тайлов
2Draude
В настройках SAS нужно указать localhost:номер порта из инишника.
Прокси поднимается на локальной машине, типа проксомитрона. Никакие внешние рабочие прокси не нужны.
Попробуйте переустановить Image Magick на 8 битную версию (возможно это критично, поскольку у меня все работало с ней).
Я пытался выделить необходимые библиотеки, чтобы они лежали рядом с ссобранным exe файлом и не требовали установленного IM, но там какая то хитрая иерархическая структура: часть вещей работает, но как только требуется преобразование tiff>jpeg - все вылетает (tiff библиотеку кидал и в корень и в соответствующую подпапку - безрезультатно). Если кто нибудь разберется как это сделать - буду благодарен.
В настройках SAS нужно указать localhost:номер порта из инишника.
Прокси поднимается на локальной машине, типа проксомитрона. Никакие внешние рабочие прокси не нужны.
Попробуйте переустановить Image Magick на 8 битную версию (возможно это критично, поскольку у меня все работало с ней).
Дело в том, что устанавливаеемый через ppm модуль все равно использует стандартную установку IM (его папка обязательно должна быть прописана в PATH винды) - используются его библиотеки.vasketsov писал(а):Может установить IM в perl стандартным способом через ppm? Автор, зачем установка отдельного целого IM-ка нужна? Через ppm не прокатит?
Я пытался выделить необходимые библиотеки, чтобы они лежали рядом с ссобранным exe файлом и не требовали установленного IM, но там какая то хитрая иерархическая структура: часть вещей работает, но как только требуется преобразование tiff>jpeg - все вылетает (tiff библиотеку кидал и в корень и в соответствующую подпапку - безрезультатно). Если кто нибудь разберется как это сделать - буду благодарен.
-
Draude
- Соображающий
- Сообщения: 82
- Зарегистрирован: 28 авг 2009, 02:02
- Благодарил (а): 15 раз
- Поблагодарили: 3 раза
Re: Прокси сервер для обработки тайлов
Скачал 8бит static , нет одной библиотеки, снес скачал 8бит dynamic ( по идеи должно быстрее работать)
вынес папку !perlproxy на корневой, все запускается без ругани, но неработает
вынес папку !perlproxy на корневой, все запускается без ругани, но неработает
- скрытый текст: показать
Последний раз редактировалось Draude 07 апр 2013, 14:05, всего редактировалось 1 раз.
-
Draude
- Соображающий
- Сообщения: 82
- Зарегистрирован: 28 авг 2009, 02:02
- Благодарил (а): 15 раз
- Поблагодарили: 3 раза
Re: Прокси сервер для обработки тайлов
А наоборот в инишник номер порта из SAS как у меня нельзя указать?T_Im писал(а):2Draude
В настройках SAS нужно указать localhost:номер порта из инишника.
Прокси поднимается на локальной машине, типа проксомитрона. Никакие внешние рабочие прокси не нужны.
...
- скрытый текст: показать








