Как создать модель Hillshade с многоцветной «alà Imhof»?


13

Я хотел бы сделать модель Hillshade с многоцветной "alà Imhof". Это означает, что я не хочу «обычный» серый оттенок холма, я хотел бы использовать серо-синий и серо-фиолетовый со всех сторон солнца.

Любая идея, как я мог бы сделать это с QGIS? Есть ли плагины?


Я надеюсь, что эти изображения могут дать гораздо лучшее представление о преимуществах применения Imhof Pallette плюс специальный процесс отмывки под названием «Разрешение с повышением разрешения по сравнению с DTM». Левое изображение - это традиционная палитра и процесс затенения DTM. Справа - пример холма Imhof plus "Resolution Bumping" на DTM. ! [введите описание изображения здесь ] ( i.stack.imgur.com/VZsRI.png )
Габриэль Асато

Ответы:


6

Вы после рельефа окрашены, затенены рельефом? Вы можете начать с просмотра здесь: http://underdark.wordpress.com/2012/01/19/a-guide-to-beautiful-reliefs-in-qgis/

Он прост в использовании, но не предлагает много возможностей для точного контроля. Боюсь, результаты не будут сильно похожи на Imhof :(

Подсказка: если ваша матрица высот широта / долгота, то сначала преобразуйте ее в прогнозируемый CRS.


Я знаю этот инструмент, но это не то, что я ищу. Результат слишком ... "органический", он хорош для создания цифровых карт, но не для печатных карт. Но спасибо!
MAP

Я не понял, что это ты, КАРТА! Для точного управления вы можете использовать цвета рельефа gdaldem hillshade и gdaldem, которые теперь есть в QGIS (с другими полезными инструментами), в меню Raster. Gdaldem Color-Relief действительно полезен, вы также можете установить прозрачность для цветов. Я ожидаю, что вы видели это: linfiniti.com/2010/12/… hsv_merge работает хорошо.
Ноптон

1
Я почти забыл, gdaldem также может создавать растры данных для наклона и аспекта. Они также могут быть представлены с использованием рельефа цвета gdaldem с подходящей цветовой шкалой. В случае, если вы хотите добавить желтый слой уклона к смеси, например (как предложено Imhof).
Ноптон

4

На самом деле я не очень часто использую QGIS, поэтому не знаю, как это там будет, но в Whitebox GAT вы просто создадите пользовательскую палитру с помощью диспетчера палитр (меню «Инструменты»), чтобы затем отобразить свое изображение в виде тени.

введите описание изображения здесь

введите описание изображения здесь

Приведенная выше палитра просто смешивает RGB (0, 50, 100) с RGB (255, 240, 170), хотя возможна любая желаемая пользовательская палитра. Вот пример изображения горной тени с использованием этой палитры:

введите описание изображения здесь

Еще интереснее то, что вы можете прозрачно наложить матрицу высот, отображаемую в светло-сине-белой палитре:

введите описание изображения здесь

Это дает хорошее ощущение воздушности на дне долины, как будто они заполнены более плотной атмосферой. Вы можете повеселиться с ним. Вот пример с наложением других данных:

введите описание изображения здесь


Для более подробной информации об этом подходе я создал блог на эту тему здесь: whiteboxgeospatial.wordpress.com/2014/08/14/…
WhiteboxDev

3

У меня была такая же проблема несколько лет назад, а затем я создал свою собственную программу Imhof, используя python и numeric. Хитрость заключается в том, чтобы выбрать диапазон высот и применить линейную цветовую палитру. В конце вы должны объединить разные результаты. Это фрагмент моего кода (очень упрощенный)

......

   abajos = nrange(dtm, 0,500)
   amedias = nrange(dtm, 499, 4000)
   amaximas = where (dtm > 4000, dtm, 0)

.......

    abajos_i       = convert.num2img(abajosbin)
    abajos_ic      = ImageOps.colorize(abajos_i, (147, 160, 150),(215, 210, 188))

    amedias_i      = convert.num2img(amediasbin)
    amedias_ic     = ImageOps.colorize(amedias_i, (215, 210, 188), (206, 187, 173))

    amaximas_i     = convert.num2img(amaximasbin)
    amaximas_ic    = ImageOps.colorize(amaximas_i, (206, 187, 173), (255,255,255))

ImageOps является частью пакета изображений Python.

Преобразование из числа tiff (16b) в числовое значение было сумасшедшим с использованием числового выражения (думаю, не очень хорошо помню).

Кортежи типа (147, 160, 150), (215, 210, 188) означают, от какого цвета до какого цвета я хочу мою цветовую шкалу, и эти RGB отражают палитру Imhof.

В результате получается DTM с очень подробной палитрой Imhof, более 256 цветов.

Если кто-то хочет создать плагин Imhof, я очень рад передать код.

Пример разрешения Bumping + Imhoff

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.