Technical Lab

Methods, experiments, and reproducible components

Organized by method rather than software. Each entry states the question, the method, the data, the implementation, the result, and how it was validated, with code or a demonstration where one proves implementation ability.

3D terrain analysis · Spatial analysis · Remote sensing · Spatial data science · Automation · Spatial systems · Cartography and communication

Open the 3D Terrain Lab

3D terrain analysis

CesiumJS · real terrain · line of sight · viewshed · chokepoints · UAS

Terrain-aware MTEBB buffers, chokepoint control, UAS feasibility, line of sight, and viewshed

CBO–TGRA Stage 0 and Stage 2 · interactive 3D
Question
How do the four exploitation modalities behave on real terrain, and which approach corridors and overwatch positions does that terrain create around a protected facility?
Method
Radial terrain line of sight with earth curvature and a stated vertical-uncertainty margin; grid viewshed from the facility or any clicked observer; free-space path loss with single knife-edge diffraction and Fresnel clearance; slope-dependent cost-distance isochrones; least-cost access routes with edge-betweenness centrality to rank chokepoints and a reverse viewshed to map the terrain that controls each one; UAS launch feasibility from endurance, airspeed, wind, terrain-masked control link, and sensor exposure along the approach.
Data
Elevation from the open AWS Terrain Tiles (Terrarium encoding of SRTM, 3DEP, and other public sources), decoded in the browser at 8 to 30 m posts; imagery from Sentinel-2 cloudless (EOX) or OpenStreetMap; the facility, access points, and parcels are notional and synthetic.
Implementation
Next.js and CesiumJS; a custom Cesium terrain provider decodes Terrarium tiles; analyses run as pure TypeScript over a local grid and are unit-tested; results drape on the globe as ground polygons, rasters, and clamped polylines.
Result
Per-modality envelopes and the MTEBB union computed for three real terrains, with masked fractions, chokepoint rankings, and UAS exposure metrics that respond to every parameter.
Validation
Analytical unit tests for line of sight, curvature, Fresnel radius, knife-edge loss, Dijkstra cost distance, and betweenness on synthetic grids and graphs; terrain source, resolution, and vertical uncertainty stated in the scene.

Spatial analysis

Autocorrelation · networks · visibility · space-time

Physics-informed buffers and the MTEBB envelope

CBO–TGRA Stage 0 · interactive
Question
Which parcels could physically enable an effect against a protected facility, beyond the reach of a fixed statutory radius?
Method
Monte Carlo radial viewshed; free-space path loss with single knife-edge diffraction against a link budget; Dijkstra isochrone with slope-penalised off-road speed; UAS round-trip range with the wind vector resolved along and across track and a command-link line-of-sight constraint; the envelope takes the farthest modality at each azimuth.
Data
Synthetic 12 × 8.4 km terrain scene with a hilltop, a ridge and road pass, a valley corridor, a road network, and about 640 parcels; declared illustrative, never a pilot result.
Implementation
Dependency-free JavaScript; full recompute and render in about 100 ms; nine scenario presets from statutory baseline to autonomous UAS in 8 m/s wind.
Result
The analytical universe 𝒰 = 𝔅 ∪ 𝔓 ∪ 𝔖 with live counts of core, shadow-only, and physics-admitted parcels, universe area against statutory area, and an azimuth chart of every envelope.
Validation
Scenario tests isolate each assumption; the parcel inspector exposes every intermediate quantity, visibility probability, link margin with ν and J, drive time, UAS round-trip time and C2 status, with a terrain profile and Fresnel zone.

Intervisibility in three dimensions, downtown Los Angeles

ArcGIS Pro 3D Analyst
Question
Which rooftops see which targets when buildings, not terrain, define the horizon?
Method
Extrude footprints by a height attribute, place observer points at roof height, construct sight lines to targets, and test each line against the building volumes; the Line Of Sight tool reports visible and obstructed segments.
Data
Building footprints with height attributes; observer and target points.
Implementation
ArcGIS Pro 3D scene in oblique view; muted context buildings, highlighted analysis buildings, contrasting sight-line colour.
Result
Visible and obstructed segments for every observer–target pair; the building blocks of digital-twin and urban visibility applications.
Validation
Segment classification inspected against the extruded geometry; visibility is a 3D relationship a planimetric map hides, so the scene is the check on the map.
Code / Demo
ArcGIS Pro scene, USC Spatial Sciences Institute cartography portfolio

Emerging hot spot analysis on a California space-time cube

Space Time Pattern Mining
Question
Where is a phenomenon intensifying, persisting, or diminishing through time, rather than where it is high today?
Method
Aggregate observations into a netCDF space-time cube of fixed bins and time steps; Emerging Hot Spot Analysis combines the Getis-Ord Gi* statistic with the Mann-Kendall trend test and classifies each location as new, intensifying, persistent, diminishing, or sporadic.
Data
Point or polygon observations spanning California from the Oregon border to the south coast.
Implementation
ArcGIS Pro; 3D rendering with a vertical time axis, diverging symbology centred on a neutral midpoint, dark basemap so saturated symbols read.
Result
A per-location trend classification and a cube that holds every location's full time series in one structure.
Validation
Significance from Gi* z-scores and Mann-Kendall trend tests; the cube preserves the series for re-testing with different bin sizes and steps.
Code / Demo
ArcGIS Pro scene, cartography and geovisualization portfolio

Least-cost accessibility over a damage-adjusted network

Sudan Food Security
Question
Which settlements lie beyond 48 hours from supply, and where do corridors choke?
Method
Routable OpenStreetMap network; SAR-detected damaged segments removed; OCHA access constraints as barriers; least-cost paths from ports, border crossings, and airfields; time-distance to markets, aid sites, and hospitals.
Data
OpenStreetMap, UN Logistics Cluster, OCHA access constraints, Sentinel-1 SAR damage, WFP market locations.
Implementation
Network analysis in UTM Zone 36N (EPSG:32636) with categorical layers resampled by nearest neighbour to preserve class boundaries.
Result
Isolation and blackout zones and chokepoints that drive corridor negotiation and the ground-versus-air delivery decision.
Validation
Cross-dataset validation matrix pairing each source with an independent observable; sensitivity to damage-layer completeness stated as an uncertainty.
Code / Demo
Case study

Chokepoints by edge-betweenness centrality

CBO–TGRA Stage 2
Question
Which road segments disproportionately control movement near a protected facility, and which parcels sit on them?
Method
Represent the road and access network as a graph, compute shortest paths between node pairs, rank edges by how often they lie on those paths, and relate parcels to high-centrality edges.
Data
Road network geometry, facility location, parcel fabric.
Implementation
Graph analysis within the Stage 2 geometric modality; representative Python components in the CBO–TGRA prototypes.
Result
An access-and-mobility dimension that proximity misses: two parcels equally close to an installation can differ sharply in network significance.
Validation
Sensitivity of centrality to network extent and edge weighting is part of the Stage 2 validation design.
Code / Demo
Case study

Remote sensing

Spectral signatures · indices · classification · change detection

Landsat optical processing series

SSCI 588 · ArcGIS Pro
Question
What does each stage of the optical processing chain contribute, and which quality control belongs to it?
Method
Decode product metadata; build multiband composites and subsets; compare contrast stretches, nearest-neighbour and bilinear resampling, and low- and high-pass convolution; compute NDVI and EVI; Support Vector Machine land-cover classification; two-date NIR differencing for change.
Data
Landsat 8 and 9 Collection 2 scenes; WRS-2 path and row, tier, projection, and sun and sensor geometry read from metadata.
Implementation
ArcGIS Pro raster functions and image classification tools.
Result
An EVI scaling artifact traced to Level-1 digital numbers; desert-as-urban confusion traced to a missing barren class; the 2013 Mount Diablo burn scar isolated from NIR difference statistics (range −242 to 209, mean 3.3, standard deviation 19.7) with ridge shadow separated from real change.
Validation
Co-registration and radiometric floors verified before differencing; scatterplot separability and confusion analysis for classification; stretches compared against band statistics.
Code / Demo
Exercise series, Remote Sensing for GIS
Each stage produces the input the next needs and carries its own quality control.

Crop Water Stress Index and thermal calibration

Spectral Signatures
Question
How does canopy temperature become a defensible water-status estimate?
Method
CWSI = (Tc− Twet) / (Tdry− Twet): canopy temperature normalized between a fully transpiring and a non-transpiring reference; acquisition near solar noon; separate calibration before and after veraison; canopy segmentation to exclude hot soil.
Data
Thermal infrared imagery in the 8–14 µm window, wet and dry reference surfaces, air temperature, pressure-chamber stem water potential.
Implementation
Specified in the UAS workflow with FLIR Vue Pro R thermal collection; evaluated across the 2015–2025 literature.
Result
Thermal indices carry the most direct physiological linkage; thermal CWSI matched leaf water potential within ±0.1 MPa across an 11 ha block in the reviewed evidence.
Validation
Pressure-chamber ground truth matched to acquisition time; reference panels before and after flight; cultivar- and stage-specific calibration.
Code / Demo
Case study

UAS multispectral and thermal collection workflow

150-acre, 76-block estate design
Question
How is a hillside vineyard monitored at centimetre resolution with radiometry that survives changing illumination?
Method
Six stages: planning at budburst, flowering, veraison, and harvest at 20–50 mm ground sampling distance; flight planning with 70–80 percent forward and 60–70 percent side overlap; automated collection at constant altitude and speed; preprocessing; post-processing; GIS integration.
Data
MicaSense Altum multispectral (blue, green, red, red-edge, NIR), FLIR Vue Pro R thermal, high-resolution RGB on a multirotor; reflectance panels; surveyed ground control points.
Implementation
DJI Ground Station Pro missions; radiometric calibration and orthomosaics in Agisoft Metashape or Pix4D; NDVI, NDRE, SAVI, CWSI, photogrammetric 3D models and digital surface models; Drone2Map and ArcGIS Pro.
Result
Block-level stress, canopy structure, and multi-date change products aligned to management decisions.
Validation
Reflectance-panel calibration before and after every flight; GCP georeferencing; pressure-chamber validation; logged flight and environmental parameters for comparability.
Code / Demo
Case study

NDVI anomaly attribution: conflict versus rainfall

Sudan Food Security
Question
How much crop loss is conflict, and how much is rainfall?
Method
Crop masks and NDVI time series; anomalies against a 10-year median; CHIRPS downscaling with NDVI; overlay of conflict density and territorial control; spatial regression of crop loss on conflict intensity, rainfall anomaly, livelihood zone, and terrain; attribution by contrast of cases.
Data
MODIS and VIIRS NDVI, CHIRPS rainfall, SPEI, ACLED events, FEWS NET livelihood zones; Sentinel-1 SAR for the cloud season.
Implementation
Monthly harmonization windows with NDVI interpolated to daily values for ±3-day event matching; bilinear resampling for continuous rasters.
Result
Conflict is the primary driver in Khartoum and the central agricultural belt; pastoral zones in western Darfur and eastern Sudan show rainfall-consistent patterns.
Validation
Contrast of cases: adequate rain with high violence failed, poor rain without violence produced; confidence stated by region, 40 to 85 percent.
Code / Demo
Case study

Spatial data science

Entity resolution · evidential reasoning · Monte Carlo · calibration

Evidence fusion: Bayesian networks, Noisy-OR, and Dempster–Shafer

CBO–TGRA Stage 1
Question
How is incomplete, conflicting, and deliberately obscured ownership evidence combined without manufacturing certainty?
Method
Bayesian belief networks update prior belief as evidence arrives; Noisy-OR combines partially independent indicator families; Dempster–Shafer represents support, disbelief, and uncommitted uncertainty, and Yager's rule assigns conflict to uncertainty instead of normalizing it away.
Data
Parcel ownership, corporate registrations, beneficial-ownership indicators, identifiers, addresses, regulatory and sanctions information, transactions.
Implementation
Formal methods in the CBO–TGRA specification; posterior, uncertainty, and conflict retained as fields in the canonical model.
Result
A calibrated Ownership Confidence Score in which source disagreement stays visible as an analytic signal.
Validation
Probability calibration against empirical outcomes; sensitivity to independence assumptions; conflict monitoring.
Code / Demo
Case study
Why the combination rule mattersIllustrative masses for two sources on one parcel
MassForeign controlDomestic controlUncommitted ΘConflict
Source 10.600.40
Source 20.500.50
Dempster's rule0.430.290.290.30 normalized away
Yager's rule0.300.200.500.30 assigned to Θ

Dempster's rule redistributes the 0.30 conflict and reports 0.43 belief in foreign control; Yager's rule keeps the conflict as uncommitted mass, so belief stays at 0.30 and half the mass remains unresolved. In ownership analysis the second answer is the honest one.

Three-tier entity resolution

CBO–TGRA Stage 1
Question
Do records from different systems refer to the same person, company, address, or parcel, and how sure is that?
Method
Deterministic matching on strong identifiers; Fellegi–Sunter probabilistic linkage over names, addresses, jurisdiction, identifiers, and relationships when identifiers disagree; analyst adjudication for the residue, committed back into the mapping so a resolution is reused instead of rediscovered.
Data
Ownership records, corporate registries, parcel and address data across 42+ sources.
Implementation
Entity-resolution scaffolding in the Python prototypes; adjudication captured as a governed decision with provenance.
Result
A defensible identity foundation whose uncertainty propagates into ownership confidence instead of vanishing in preprocessing.
Validation
Inter-rater reliability on adjudication; match-weight thresholds calibrated against the pilot inventory.
Code / Demo
Case study

Monte Carlo viewshed

CBO–TGRA Stage 2 · Stage 0 explorer
Question
How visible is a facility from a parcel when terrain, observer, target, and sensor geometry are all uncertain?
Method
Define the uncertain parameters, sample plausible values, rerun the line-of-sight calculation repeatedly, and report the proportion of draws in which the sight line clears; correlated terrain error is drawn once per line so error does not average away.
Data
Digital elevation model, observer and target positions, height distributions.
Implementation
Radial sampling in the explorer and terrain-analysis components in the prototypes.
Result
Visibility supported across a stated share of plausible geometric conditions, in place of a binary that overstates the input precision.
Validation
Spatial validation against reference observations and CE95 positional accuracy; convergence checked against draw count.
Code / Demo
Explorer·Case study

Calibration and validation architecture

Methodology design
Question
Does a stated 70 percent confidence mean 70 percent, and which outputs deserve trust?
Method
Every consequential output receives a matching test: probability calibration against empirical outcomes, false-positive and false-negative analysis, sensitivity analysis over parameters and assumptions, inter-rater reliability for human judgments, spatial validation, conflict and stability monitoring, model-appropriate attribution.
Data
Pilot inventories, adjudicated outcomes, reference observations.
Implementation
Stage-specific validation in the CBO–TGRA specification; forecast-versus-outcome review in the Sudan TCPED cycle; quality gates and confidence routing in VineVision.
Result
Thresholds treated as design targets until pilot behaviour supports them; rankings that shift under small parameter changes flagged as fragile.
Validation
The architecture is itself the validation design; its outputs are reliability, sensitivity, and stability evidence.

Multiplicative vulnerability index

Sudan Food Security
Question
Which populations are under simultaneous stress, rather than high on any one factor?
Method
V = Econflict× Slivelihood× Xenvironment× Ddisplacement; the product scores high only where exposure, sensitivity, stress, and displacement coincide.
Data
Population density, conflict density, livelihood zone, seasonal NDVI and rainfall anomalies, displacement sites.
Implementation
Raster composite on harmonized monthly layers in UTM 36N.
Result
Populations under compound stress by livelihood type, driving the food-aid versus livelihood-support and cash-transfer targeting decisions.
Validation
Multiplicative form chosen to suppress single-factor artifacts; component layers each validated against an independent observable.
Code / Demo
Case study

Automation

Python · ArcPy · reproducible geoprocessing

Reproducible screening geoprocessing with ArcPy

Representative Stage 0 component
Question
How does a screening step stay reproducible, auditable, and safe to hand to the next stage?
Method
A declared processing environment, in-memory intermediates, an explicit join cardinality, and a quality gate that checks coordinate reference system, geometry validity, join cardinality, and unmatched features before promotion.
Data
Parcel polygons, facility points, statutory radius.
Implementation
ArcPy witharcpy.EnvManager; NAD83 / UTM Zone 18N for the Washington, DC pilot area.
Result
A screened parcel set whose lineage record states exactly what was checked.
Validation
The gate fails loudly; nothing enters Stage 1 without passing it.
Code / Demo
Below
import arcpy

def screen_parcels(parcels, facilities, radius_m, out_fc):
    # Stage 0 statutory screen in a fixed projected CRS: NAD83 / UTM 18N for the DC pilot.
    with arcpy.EnvManager(outputCoordinateSystem=arcpy.SpatialReference(26918),
                         overwriteOutput=True):
        buf = arcpy.analysis.Buffer(facilities, "memory/buf", f"{radius_m} Meters",
                                    dissolve_option="ALL")
        arcpy.analysis.SpatialJoin(target_features=parcels, join_features=buf,
                                   out_feature_class=out_fc, join_operation="JOIN_ONE_TO_ONE",
                                   match_option="INTERSECT")
    return out_fc

def qa_gate(fc, expected_epsg=26918):
    # Every stage boundary carries the same checks; a failed gate stops the pipeline.
    sr = arcpy.Describe(fc).spatialReference
    assert sr.factoryCode == expected_epsg, f"CRS {sr.factoryCode} != {expected_epsg}"
    bad = [r[0] for r in arcpy.da.SearchCursor(fc, ["OID@", "SHAPE@"]) if r[1] is None or not r[1].area]
    assert not bad, f"{len(bad)} null or degenerate geometries"
    unmatched = int(arcpy.management.GetCount(
        arcpy.management.MakeFeatureLayer(fc, "lyr", "Join_Count = 0"))[0])
    arcpy.AddMessage(f"{fc}: CRS ok · geometry ok · {unmatched} parcels outside the screen")
Purpose
Normalize spatial relationships inside a reproducible processing environment: one declared coordinate system, in-memory intermediates, and a join whose cardinality is explicit.
Validation
Verify the coordinate reference system, geometry validity, join cardinality, and unmatched features before the output enters the next stage; the message line becomes the lineage record.

Ingestion workflows with provenance

CBO–TGRA prototypes
Question
How do 42+ sources with different schemas and cadences enter one canonical model without losing where each fact came from?
Method
Per-source KNIME ingestion workflows normalize to the canonical representation and stamp provenance, version, and record time; a parameter registry governs every threshold.
Data
Federal, regulatory, commercial, open-source, and geospatial sources.
Implementation
KNIME workflows with Python and ArcPy nodes for proximity, spatial joins, network accessibility, terrain analysis, visibility, change detection, scoring, and QA.
Result
Any assessment reconstructs backward through fusion logic, stage score, modality output, parameters, evidence, and source.
Validation
ISO 19157 quality gates on positional accuracy, schema conformity, attribute completeness, duplication, provenance completeness, and stage completeness.
Code / Demo
Case study

Spatial systems

APIs · sensor integration · spatial databases · architecture patterns

Five integration patterns for a sensor-to-decision platform

VineVision
Question
How do weekly imagery, 15-minute telemetry, and historical records become one decision system without silently automating a bad prediction?
Method
Batch imagery with a quality gate; scheduled telemetry streaming with edge validation; documented REST and GraphQL APIs to variable-rate equipment; offline-first mobile synchronization; confidence-gated human review.
Data
Hyperspectral and thermal imagery, LoRaWAN soil and micro-weather telemetry, yield and application records.
Implementation
ArcGIS Enterprise geodatabase and raster catalogs as the hub; TensorFlow, PyTorch, and ArcPy in the analytics layer.
Result
Sized from specification: a 400-band cube at 10 cm sampling is about 800 MB per hectare, so 100 hectares flown weekly is about 80 GB of raw imagery a week; every prediction carries a confidence score.
Validation
Spectral drift under 5 percent at the gate; low-confidence output routes to a scout before any action; acceptance criteria per requirement.
Code / Demo
Case study

Federated telemetry architecture

C2IM
Question
How do independently owned systems contribute to shared awareness across security boundaries without unrestricted centralization?
Method
Collect and retain near the source; normalize to a common event format; forward selectively by mission and policy; correlate at theater level; map events to mission dependencies; peer and fail over for resilience; one-way data diodes for out-of-band monitoring.
Data
Flow, endpoint, identity, DNS, proxy, vulnerability, and indicator telemetry.
Implementation
Logical and physical reference architecture, DoDAF views, and CONOPS; ArcSight connectors, Logger, and ESM as the pilot implementation.
Result
Theater-level visibility with local ownership, bandwidth control, and limited exposure preserved.
Validation
Separated test, production, and recovery environments; controlled promotion; accreditation evidence under an IATT.
Code / Demo
Case study

Bi-temporal knowledge graph

CBO–TGRA data architecture
Question
What did the world look like on a date, and what did the analyst know at the time? Those are different questions with different dates.
Method
Valid time records when a fact held in the world; record time records when the system learned it; relationships among people, companies, parcels, addresses, transactions, and infrastructure carry both.
Data
Ownership, corporate, parcel, transaction, and infrastructure entities.
Implementation
Canonical graph model specified with provenance, lineage, and versioning.
Result
Any past assessment can be reconstructed with the information available when it was made.
Validation
Audit logging and reproducibility requirements make the reconstruction testable.
Code / Demo
Case study

Data-readiness specification for investigative questions

Insight Engines · Splunk
Question
Is the telemetry present, normalized, current, and complete enough to answer the question an analyst is asking?
Method
Decompose each question into intent, entities, relationships, event domain, time range, Common Information Model fields, telemetry dependencies, output structure, and next action; tie coverage, normalization, freshness, and ingestion cost to the investigations each source enables.
Data
Customer security telemetry normalized to the Splunk Common Information Model.
Implementation
Semantic layer and recommendation logic over Splunk; use cases treated as telemetry specifications.
Result
Data investments justified by the questions they unlock; customer-reported failures traced to the layer that failed.
Validation
Readiness assessed per use case: coverage, normalization, freshness, completeness, cost-value alignment.
Code / Demo
Experience

Cartography and communication

Narrative · reference · site graphics

Categorizing Chaos: Tropical Cyclones

ArcGIS StoryMap · LA Geospatial Summit 2025
Question
What does a hurricane category mean for the people in its path, and how does geospatial technology change the response?
Method
The Saffir-Simpson scale as the organizing spine; a 2024 storm attached to each category; one assessment template per case: the response, what worked, what fell short, and what geospatial tools contributed.
Data
Four 2024 storm case studies, formation and basin-naming reference material, storm tracks.
Implementation
Scroll-driven StoryMap; one concept per section; numbered map points tied to text; embedded video and tracks.
Result
Presented at the LA Geospatial Summit, 2025; a lay reader builds understanding in sequence and compares cases on the same terms.
Validation
Fixed template keeps comparison honest across storms; sources cited per case.
Code / Demo
ArcGIS StoryMap

Santa Catalina Island infrastructure reference map, 1:50,000

Field reference cartography
Question
How do planners, responders, and field teams report and navigate by grid reference with map and compass?
Method
MGRS grid on a UTM frame, declination diagram relating true, grid, and magnetic north, letters for transport nodes and numbers for facilities, keyed tables that keep the map face uncluttered, two road classes, imagery base.
Data
Fifty keyed transport, shelter, communications, and emergency-service features compiled as typed point layers with OpenStreetMap-style tags such as camp_site, comms_tower, and fire_station.
Implementation
ArcGIS Pro layout at 1:50,000.
Result
A field-usable reference product where an eight-digit reference locates a point to 10 metres.
Validation
Feature compilation checked against imagery; grid and declination verified for the local UTM zone.
Code / Demo
Print reference map, cartography portfolio
MGRS reference precisionDigits in the numeric reference and the ground precision they specify
DigitsExamplePrecision
411S NT 12 341,000 m
611S NT 123 345100 m
811S NT 1234 345610 m
1011S NT 12345 345671 m

USC Wrigley Marine Science Center gridded site graphic

Site coordination
Question
How do on-site teams coordinating by voice call a location fast and without ambiguity?
Method
Alphanumeric grid over large-scale imagery; numbered buildings; facility boundary, entry point, and waterfront called out.
Data
Buildings, dock, and facility boundary digitized as polygon and line features over imagery.
Implementation
ArcGIS Pro layout.
Result
Cell references replace descriptions in radio and voice coordination.
Validation
Digitized features checked against imagery and the facility boundary.
Code / Demo
Site graphic, cartography portfolio