Я в основном парень векторов, но для текущего проекта мне нужно работать с кучей старых отсканированных бумажных карт (карты урона от бомб ww2 для Лондона, если вам интересно!)
Мы отсканировали и привязали географические карты и теперь хотим создать мозаичный составной слой для размещения на веб-сайте. Мы, очевидно, вырежем границы, это не проблема здесь.
Проблема в том, что между листами карты наблюдаются неприглядные визуальные различия цвета и яркости. Я немного в недоумении относительно того, как их выровнять, чтобы придать последовательный визуальный вид. Я прочитал о выравнивании гистограммы, но мой текущий набор инструментов (Manifold GIS, GDAL, GeoServer), похоже, не обладает необходимой функциональностью.
Пример 4 сканов с географической привязкой:
источник
Ответы:
Это можно сделать в GIMP http://www.gimp.org/
Вам необходимо создать собственную цветовую палитру - она будет считывать каждое загруженное изображение и наилучшим образом соответствовать пикселям, заставляя цвета стать близкими.
Вы также можете ограничить контраст и яркость аналогичным образом
http://gimp.open-source-solution.org/manual/gimp-tool-brightness-contrast.html
http://docs.gimp.org/en/gimp-palette-dialog.html
Для более подробной информации вы можете использовать функцию выравнивания с гистограммой
http://docs.gimp.org/en/gimp-layer-equalize.html
Это можно автоматизировать с помощью макро-скрипта fu.
http://www.squidoo.com/gimp-how-to-write-a-script-fu-macro
источник
Другой способ - использовать программу для сшивания фотографий (панорамы). Hugin является примером бесплатного и открытого проекта, который делает именно это, и поставляется в комплекте с enblend, который может позаботиться о различиях яркости. Не нужно портить паллеты, просто выберите изображение с наилучшим освещением / цветами в качестве источника смешивания. Вы должны были бы сначала отрезать границы.
источник
Попытка, которую я бы предложил, состоит в том, чтобы использовать методы выравнивания гистограммы.
Существуют методики для сопоставления каждого значения пикселя с новым сбалансированным значением с использованием кумулятивной функции распределения (cdf).
Например, если у вас есть облака на изображении 1 и изображении 2, и это более яркий объект на изображении. На обоих изображениях они белые, но в мозаике вы понимаете, что одно облако немного белее другого. В 1 среднее значение пикселя в облаке равно 200, поэтому в 2 оно равно 240. Используя cdf, вы можете преобразовать значения пикселей, используя вероятность появления, так что независимо от значения, если это более яркий объект, оно будет отображено в значение 255 пикселей.
это может привести все изображения к общей ссылке, улучшая также контраст.
Я пытался написать что-то в этой теме несколько раз назад, и на первый взгляд в github это неуместно. Не стесняться спрашивать.
https://github.com/rupestre-campos/histogram_equalize
источник