다색 "alà Imhof"로 Hillshade 모델을 만드는 방법은 무엇입니까?


13

여러 가지 색상의 "alà Imhof"를 사용하여 Hillshade-Model을 만들고 싶습니다. 즉, "일반적인"회색 언덕 모양을 원하지 않습니다. 다른 태양 방향에서 회색-파랑 및 회색-보라색을 사용하고 싶습니다.

qgis로 어떻게 할 수 있습니까? 플러그인이 있습니까?


이 이미지가 Imhof pallette와 DTM에 대한 Resolution Bumping Process라는 특수 언덕 음영 프로세스의 적용에 대한 이점을 훨씬 더 잘 이해할 수 있기를 바랍니다. 왼쪽 이미지는 전통적인 팔레트 및 DTM 그림자 프로세스입니다. 오른쪽은 DTM의 Imhof plus "Resolution Bumping"힐 셰이드의 예입니다. ! [여기서 화상 정보를 입력 ( i.stack.imgur.com/VZsRI.png )
가브리엘 아사토

답변:


6

당신은 고도의 색, 음영 구호 후에? 당신은 여기를보고 시작할 수 있습니다 : http://underdark.wordpress.com/2012/01/19/a-guide-to-beautiful-reliefs-in-qgis/

사용하기 간단하지만 세밀한 제어 방법을 많이 제공하지는 않습니다. 결과는 내가 두려워하는 Imhof와 너무 비슷하지 않을 것입니다 :(

힌트 : DEM이 위도 / 경도이면 먼저 투영 된 CRS로 변환하십시오.


나는 그 도구를 알고 있지만 찾고있는 것은 아닙니다. 결과는 너무 ... "유기적"이며 디지털지도 제작에는 좋지만 인쇄 된지도에는 적합하지 않습니다. 그러나 감사합니다!
MAP

당신 인지도 몰랐어요! 세부적인 제어를 위해 래스터 메뉴 아래 QGIS에있는 gdaldem hillshade 및 gdaldem color-relief를 사용할 수 있습니다. gdaldem 색상 완화는 정말 유용합니다. 색상에 대한 투명도를 설정할 수도 있습니다. 나는 당신이 본 것으로 기대 : linfiniti.com/2010/12/...의 hsv_merge가 잘 작동합니다.
nhopton

1
나는 gdaldem이 경사와 종횡비에 대한 데이터 래스터를 생성 할 수 있다는 것을 거의 잊었다. 이것들은 적절한 컬러 램프와 함께 gdaldem 컬러 릴리프를 사용하여 렌더링 될 수 있습니다. 예를 들어 (Imhof에서 제안한대로) 믹스에 노란색 경사 레이어를 추가하려는 경우.
nhopton

4

실제로 QGIS를 자주 사용하지 않기 때문에 QGIS를 어떻게 사용하는지 알지 못하지만 Whitebox GAT 에서는 팔레트 관리자 (도구 메뉴)를 사용하여 사용자 정의 팔레트를 만든 다음 다음과 같이 언덕 음영 이미지를 표시합니다.

여기에 이미지 설명을 입력하십시오

여기에 이미지 설명을 입력하십시오

위의 팔레트는 원하는 사용자 정의 팔레트가 가능하더라도 RGB (0, 50, 100)을 RGB (255, 240, 170)로 간단히 혼합합니다. 이 팔레트를 사용한 언덕 모양 이미지의 예는 다음과 같습니다.

여기에 이미지 설명을 입력하십시오

더 흥미로운 것은 밝은 파란색에서 흰색 팔레트로 표시되는 DEM을 투명하게 오버레이 할 수 있다는 것입니다.

여기에 이미지 설명을 입력하십시오

이것은 더 두꺼운 분위기로 가득 차있는 것처럼 계곡 바닥 내에서 통풍이 잘됩니다. 당신은 그것으로 많은 재미를 가질 수 있습니다. 다른 데이터가 오버레이 된 예는 다음과 같습니다.

여기에 이미지 설명을 입력하십시오


이 방법에 대한 자세한 내용은, 내가 여기에이 주제에 대한 블로그를 만들어 whiteboxgeospatial.wordpress.com/2014/08/14/...
WhiteboxDev

3

몇 년 전에 같은 문제가 있었고 파이썬과 숫자를 사용하여 자체 Imhof 프로그램을 만들었습니다. 트릭은 다양한 고도를 선택하고 선형 색상 팔레트를 적용하는 것입니다. 결국 다른 결과를 결합해야합니다. 이것은 내 코드의 조각입니다 (매우 단순화되었습니다)

......

   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 Image 패키지의 일부입니다.

tiff (16b)에서 숫자로의 변환은 pynumeric을 사용하여 화를 냈습니다 (잘 기억하지는 않습니다).

(147, 160, 150), (215, 210, 188)과 같은 튜플은 어떤 색상에서 어떤 색상으로 내 색상 램프를 원하고 그 RGB가 Imhof paleete를 반영하는지 나타냅니다.

결과는 256 가지가 넘는 매우 상세한 Imhof 팔레트가있는 DTM입니다.

누군가가 Imhof 플러그인을 만들고 싶다면 코드를 전달하게되어 매우 기쁩니다.

해상도 범핑 + Imhoff의 예

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.