링크 된 소스는 "퓨전 모드를 <Multiply>로 변경"하여 언급 하므로 조작은 단순한 평균 입력 언덕 음영이 아닙니다 (이에 대해서는 gdal_hillshades 평균화 방법 도 참조 ). 다른 것입니다. 그러나 3 가지 다른 햇빛 방향 언덕 모양을 만들어 봅시다.
gdaldem hillshade input.tif hillshades_A.tmp.tif -s 111120 -z 5 -az 315 -alt 60 -compute_edges
gdaldem hillshade input.tif hillshades_B.tmp.tif -s 111120 -z 5 -az 355 -alt 60 -compute_edges
gdaldem hillshade input.tif hillshades_C.tmp.tif -s 111120 -z 5 -az 275 -alt 60 -compute_edges
A, B, C의 최저값 유지
내가 아는 첫 번째 알고리즘은 가장 어두운 픽셀을 필터링하고 유지하는 것입니다. 일명 입력 A, B, CA 부울 값 중 낮은 값을 가진 픽셀은 다음과 같이 할 수 있습니다.
gdal_calc.py -A hillshades_A.tmp.tif -B hillshades_B.tmp.tif -C hillshades_C.tmp.tif --outfile=./hillshades_xl.tmp.tif \
--calc="(A*(A<=B)*(A<=C)+ B*(B<A)*(B<=C)+ C*(C<A)*(C<B))"
그림자에 의해 지배되는 지역은 이제 하나의 중앙 lignt의 반대쪽보다 더 많이 구성되며, 양쪽에서 40⁰ 씩 증가했습니다. 제공된 링크가 아니라이 현재 알고리즘은 계몽 영역을 너무 많이 잃어버린 것 같습니다.
각도 315±30⁰
전류가 오히려 것을 (작은 각도 변화) 315±40⁰
친절 할 것입니다.
아래 다이어그램은 방정식의 기초입니다. 광원 A, B, C 및 각 부분의 픽셀 값 A, B, C에 대한 부울 비교를 보여줍니다. 평등 라인은 부울에 포함되도록 특별한주의가 필요합니다. 중앙선 221
은 수직 광원에 대한 값 을 갖는다 . 영향 영역에 대해 생각해보십시오 . 가장 가까운 광원은 주된 영향이며, 가장 약한 영향입니다.
A, B, C에 대한 극단 값 유지
다른 부울 알고리즘은 가장 어두운 픽셀과 가장 하얀 픽셀 모두에서 가장 극단적 인 값을 유지하는 것입니다. 다음 다이어그램은 부울 수식에 대한 것입니다. 원의 각 여섯 들어, 및 삼각형 영역 플러스 시계 평등 선을 선택하는 A, B, C, 및 부울으로부터 계속 값을 식별 아니라 . (위에서 시계 방향으로) :
--calc="A*(A>B)*(A>=C) + C*(C>A)*(A>=221) + B*(C>A)*(C>=221) + A*(A<B)*(B<=221) + C*(B>A)*(A<=221) + B*(B>A)*(C<=221)"
각도 변화가 그다지 중요하지 않으면 좋은 결과를 얻을 수 있습니다.
다른 부울
테두리 세그먼트의 조합을 사용하여 전체 원을 덮기 위해 더 복잡한 부울을 만들 수 있습니다. 하나의 세그먼트에 대해 A, B, C 중 하나의 값만 유지하는 것이 중요합니다 .
곱하다
내가 만든 여러 failled 시도 에 multiply
입증 된 공식이나 최종 성공하지 픽셀 값을 설정합니다. @Radouxju는 (a*b*c)^(1/3)
ARITHMETIC 평균 대신 (GEOMETRIC 평균) (a*b*c)/(255*255)
작동 할 수 있다고 지적했습니다 . 기하 평균은 산술 평균과 같거나 낮으며, 음영 영역의 어둡기를 강조합니다. 아직 테스트하지 않았습니다.