Add RRIM, Multi-Hillshade RGB, and Local Dominance visualizations
Three new visualizations complementing existing SVF/openness/LRM/MSRM: - RRIM (Red Relief Image Map): RGB composite combining positive openness (R), inverted slope (G), negative openness (B). Uses ray-tracing to compute both openness values in a single pass. - Multi-Hillshade RGB: 3 azimuths (315°, 135°, 45°) mapped to R/G/B channels with slope blending. Color reveals structure orientation. - Local Dominance: (dem - local_min) / (local_max - local_min) using min/max filters. Measures local height position — complements openness. Also adds: - _compute_openness_both() helper for shared ray-tracing (used by RRIM) - xp_maximum_filter() in gpu.py (GPU/CPU abstraction) - Entries in COLORMAPS, RGB_LEGENDS, VIZ_STEPS, and is_rgb detection - All NaN handling follows existing patterns (nan_mask restoration) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@ -61,7 +61,7 @@ from .visualizations import (
|
||||
generate_lrm, generate_svf, generate_openness,
|
||||
generate_mslrm, generate_tpi, generate_sailore,
|
||||
generate_roughness, generate_anomalies, generate_wavelet,
|
||||
generate_flow,
|
||||
generate_flow, generate_rrim, generate_multi_hillshade, generate_local_dominance,
|
||||
)
|
||||
from .gpu import gpu_cleanup
|
||||
from .ign import generate_ign_overlay
|
||||
@ -87,6 +87,9 @@ VIZ_STEPS = [
|
||||
('anomalies', generate_anomalies),
|
||||
('wavelet', generate_wavelet),
|
||||
('flow', generate_flow),
|
||||
('rrim', lambda d, b, v, r: generate_rrim(d, b, v, r)),
|
||||
('multi_hillshade', lambda d, b, v, r: generate_multi_hillshade(d, b, v, r)),
|
||||
('local_dominance', generate_local_dominance),
|
||||
('ortho', lambda d, b, v, r: generate_ign_overlay(
|
||||
d, b, v, r,
|
||||
layer='ORTHOIMAGERY.ORTHOPHOTOS',
|
||||
|
||||
Reference in New Issue
Block a user