Логотип размером не в пример Гугла-Яндекса, сильно мешается при просмотре и не дает по нормальному перегенерить вышележащие уровни. Снимки Украины во многом уникальные, лучше Спота, до 17-го уровня и хорошего качества, однако высокие уровни сделаны как то странно и криво, с потерей цветов и контраста: непонятно, что можно рассмотреть, например, на таком тайле 9-го уровня.
Координаты логотипа на тайле фиксированы и этот логотип имеется на посностью белом фоне. Хочется максимально ослабить логотип, желательно, используя ImageMagick (чтобы процедура была пакетной и одновременно можно было подкрутить уровни).
Пока смог некоторым шаманством в IM получить результат как во вложении.
Помниться, где то тут уже заходила речь об удалении логотипов (не могу найти где), может кто подскажет, как это проще всего сделать?
Подложка кадастра - как стереть логотип?
Модератор: Tolik
-
zed
- Гуру
- Сообщения: 2888
- Зарегистрирован: 16 авг 2008, 20:21
- Благодарил (а): 89 раз
- Поблагодарили: 568 раз
Re: Подложка кадастра - как стереть логотип?
Даже такой результат, как у вас на скриншоте, совсем не плох. Технологию не хотите рассказать?
Re: Подложка кадастра - как стереть логотип?
По алгоритму компенсации уровней не подскажу.T_Im писал(а):желательно, используя ImageMagick (чтобы процедура была пакетной и одновременно можно было подкрутить уровни)
А вот за ImageMagick подскажу. Что если написать скрипт закачки на PerlScript - можно сразу при скачке тайла натягивать на него алгоритм ImageMagick-ом, и без всякой дополнительной обработки кэша, он будет сразу правильный копиться.
-
T_Im
- Постигающий Дао
- Сообщения: 112
- Зарегистрирован: 04 янв 2009, 21:52
- Благодарил (а): 14 раз
- Поблагодарили: 23 раза
Re: Подложка кадастра - как стереть логотип?
Результат получен так: на тайл были наложены в Гимпе два слоя, полученные из "белого" логотипа: негатив в режиме "добавление" и позитив с цветом в альфа канале в режиме "вычитание". Коэффициенты прозрачности подбирались экспериментальным путем в Гимпе до максимального визуального подавления логотипа.zed писал(а):Даже такой результат, как у вас на скриншоте, совсем не плох. Технологию не хотите рассказать?
В команду для IM это переносится так:
convert tile.jpg logo_inverted.tif logo_alpha_channel.xcf -fx "(u[0]+0.4*u[1]-0.8*u[2])" tile_no_logo.jpg
Где 0.4 и 0.8 - найденные в Гимпе коэффициенты.
Но повторюсь - это шаманство, должен существовать нормальный алгоритм, поскольку теоретически такой логотип должен удаляться почти без следов.
Прокси сервер поднять? В принципе, да, можно будет сделать, когда будет приемлемый алгоритм.vasketsov писал(а):если написать скрипт закачки на PerlScript - можно сразу при скачке тайла натягивать на него алгоритм ImageMagick-ом
-
zed
- Гуру
- Сообщения: 2888
- Зарегистрирован: 16 авг 2008, 20:21
- Благодарил (а): 89 раз
- Поблагодарили: 568 раз
Re: Подложка кадастра - как стереть логотип?
Тоже об этом подумалось.vasketsov писал(а):Что если написать скрипт закачки на PerlScript - можно сразу при скачке тайла натягивать на него алгоритм ImageMagick-ом, и без всякой дополнительной обработки кэша, он будет сразу правильный копиться.
Нет, зюзать SACS, который с недавних пор умеет вызывать любые скрипты: http://sasgis.org/mantis/view.php?id=1841T_Im писал(а):Прокси сервер поднять? В принципе, да, можно будет сделать, когда будет приемлемый алгоритм.
- DJ VK
- Гуру
- Сообщения: 1468
- Зарегистрирован: 16 апр 2009, 13:57
- Откуда: 8 км. от МКАД
- Благодарил (а): 80 раз
- Поблагодарили: 314 раз
Re: Подложка кадастра - как стереть логотип?
Автоматически могу помочь, но надо 2 тайла и цвета, почти нереально если только спутник
-знак на фоне одного цвета, например белого + сам цвет
-знак на фоне другого цвета, например зеленого + сам цвет
так кололся Г Г Ц, тайлы собирались из кусков, и потом все за секунды чистилось
-знак на фоне одного цвета, например белого + сам цвет
-знак на фоне другого цвета, например зеленого + сам цвет
так кололся Г Г Ц, тайлы собирались из кусков, и потом все за секунды чистилось
-
T_Im
- Постигающий Дао
- Сообщения: 112
- Зарегистрирован: 04 янв 2009, 21:52
- Благодарил (а): 14 раз
- Поблагодарили: 23 раза
Re: Подложка кадастра - как стереть логотип?
Есть:
Лого на белом фоне:
http://212.26.144.110/tile2/orto_10000/10/613/680.jpg
Лого на черном фоне:
http://212.26.144.110/tile2/orto_10000/ ... /21544.jpg
http://212.26.144.110/tile2/orto_10000/ ... /43089.jpg
Лого на фоне очень однородной воды (по всей видимости вода просто залита цветом):
http://212.26.144.110/tile2/orto_10000/13/4884/5277.jpg
http://212.26.144.110/tile2/orto_10000/12/2408/2648.jpg
Лого на фоне не очень однородной воды:
http://212.26.144.110/tile2/orto_10000/13/4831/5391.jpg
http://212.26.144.110/tile2/orto_10000/ ... /10783.jpg
http://212.26.144.110/tile2/orto_10000/ ... /10782.jpg
Этого хватит?
Лого на белом фоне:
http://212.26.144.110/tile2/orto_10000/10/613/680.jpg
Лого на черном фоне:
http://212.26.144.110/tile2/orto_10000/ ... /21544.jpg
http://212.26.144.110/tile2/orto_10000/ ... /43089.jpg
Лого на фоне очень однородной воды (по всей видимости вода просто залита цветом):
http://212.26.144.110/tile2/orto_10000/13/4884/5277.jpg
http://212.26.144.110/tile2/orto_10000/12/2408/2648.jpg
Лого на фоне не очень однородной воды:
http://212.26.144.110/tile2/orto_10000/13/4831/5391.jpg
http://212.26.144.110/tile2/orto_10000/ ... /10783.jpg
http://212.26.144.110/tile2/orto_10000/ ... /10782.jpg
Этого хватит?
-
T_Im
- Постигающий Дао
- Сообщения: 112
- Зарегистрирован: 04 янв 2009, 21:52
- Благодарил (а): 14 раз
- Поблагодарили: 23 раза
Re: Подложка кадастра - как стереть логотип?
Эврика! Все решилось!
После изучения статьи про альфа канал в Википедии, наконец то понял, как можно найти прозрачность и логотип математически строго решая систему из 2-х уравнений, имея логотип на белом и черном фоне (спасибо DJ VK за подсказку о 2-х цветах).
В итоге, имея логотип на белом и на черном фоне (l_w.tif и l_b.tif соответственно) любой прозрачный логотип полностью будет удаляться с tile.jpg командой
convert tile.jpg Rw.tif Rb.tif -fx "(u[0]-u[2])/(u[1]-u[2])" tile_no_logo.jpg
Результаты - во вложении. Неполное стирание логотипа объясняется скорее всего погрешностями JPG-а. Вероятно, усреднениями некоторую часть артефактов можно будет частично убрать.
После изучения статьи про альфа канал в Википедии, наконец то понял, как можно найти прозрачность и логотип математически строго решая систему из 2-х уравнений, имея логотип на белом и черном фоне (спасибо DJ VK за подсказку о 2-х цветах).
В итоге, имея логотип на белом и на черном фоне (l_w.tif и l_b.tif соответственно) любой прозрачный логотип полностью будет удаляться с tile.jpg командой
convert tile.jpg Rw.tif Rb.tif -fx "(u[0]-u[2])/(u[1]-u[2])" tile_no_logo.jpg
Результаты - во вложении. Неполное стирание логотипа объясняется скорее всего погрешностями JPG-а. Вероятно, усреднениями некоторую часть артефактов можно будет частично убрать.
-
T_Im
- Постигающий Дао
- Сообщения: 112
- Зарегистрирован: 04 янв 2009, 21:52
- Благодарил (а): 14 раз
- Поблагодарили: 23 раза
Re: Подложка кадастра - как стереть логотип?
Поскольку есть 3 разных цвета и 3 канала, то всего возможно получить
3 варианта маски и 3*3 = 9 вариантов альфа канала (независимых соответственно 2 и 2*3 = 6).
Усреднив по 10-50 тайлов с логотипом одного цвета и поигравшись с различными вариантами (в том числе и усредняя их между собой) постарался максимально уменьшить артефакты, проявляющиеся при удалении логотипа.
Сравнительный итог улучшений - во вложении (200% кропы логотипа по предыдущей и по улучшенной методике). Стало заметно лучше - на неоднородном фоне артефакты практически не видны.
Чтобы удалить логотип с тайла ("улучшенные" файлы !Mask.tif и !Alpha.tif во вложении):
convert tile.jpg !Mask.tif !Alpha.tif -fx "(u[0]-u[1])/u[2]" tile_no_logo.jpg
3 варианта маски и 3*3 = 9 вариантов альфа канала (независимых соответственно 2 и 2*3 = 6).
Усреднив по 10-50 тайлов с логотипом одного цвета и поигравшись с различными вариантами (в том числе и усредняя их между собой) постарался максимально уменьшить артефакты, проявляющиеся при удалении логотипа.
Сравнительный итог улучшений - во вложении (200% кропы логотипа по предыдущей и по улучшенной методике). Стало заметно лучше - на неоднородном фоне артефакты практически не видны.
Чтобы удалить логотип с тайла ("улучшенные" файлы !Mask.tif и !Alpha.tif во вложении):
convert tile.jpg !Mask.tif !Alpha.tif -fx "(u[0]-u[1])/u[2]" tile_no_logo.jpg
- Вложения
-
- mask_and_alpha_tiffs.ZIP
- tif файлы маски и прозрачности
- (22.59 КБ) 354 скачивания
- DJ VK
- Гуру
- Сообщения: 1468
- Зарегистрирован: 16 апр 2009, 13:57
- Откуда: 8 км. от МКАД
- Благодарил (а): 80 раз
- Поблагодарили: 314 раз
Re: Подложка кадастра - как стереть логотип?
ах да, забыл сказать, что коэффициенты надо считать разные по каждому из каналов, и для точности все цифры сначала приводить в double.T_Im писал(а):Поскольку есть 3 разных цвета и 3 канала,