SiteTwin Eyrie M3 module · v0.1.0

SiteTwin · post-incident 3D forensic reconstruction · an Eyrie M3 module

Every scene.
Reconstructed.
Witnessed.

Post-incident 3D forensic reconstruction via 3D Gaussian Splatting. SiteTwin turns the cameras, LiDAR and drones that already saw the incident into a navigable, measurable site twin — built in minutes, not the six-to-fourteen weeks a court-appointed forensic engineer takes. Every reconstruction carries a native Ed25519 audit chain and a tamper-evident signed dossier engineered to satisfy the technical requirements of India's Bharatiya Sakshya Adhiniyam §63 and US FRE Rule 902(13)-(14) (hash, algorithm, chain of custody, device identity, operator) — backed by 829 pipeline tests, not a marketing slide. Admissibility in any proceeding is determined by the court.

829
Pipeline tests
Stub adapters · no GPU · not a measure of reconstruction accuracy
3DGS
Reconstruction method
Gsplat · Nerfstudio · NeRF fallback
BSA §63
India evidence standard
Signed dossier aligned to §63(4)(a-c)
FRE 902
US evidence standard
Rule 902(13)-(14) cert block
≤5min
RaaS reconstruction
500 frames · RTX 6000 Ada × 4
Ed25519
Audit chain
Hash-linked, per tenant, signed
Eyrie M3
Sits on the sensor fabric
Zero incremental capture

01 — Who it's for

Built for the people who have to prove what happened.

Today the only options are to hire a court-empanelled forensic engineer (slow and expensive, 6-14 week turnaround), capture from scratch on a phone with Polycam or Luma (single-tenant, no audit chain, no LiDAR), or commission a Bentley iTwin engagement (heavyweight and costly). SiteTwin is the productised end-to-end answer for the buyers none of those serve.

— ICP · 01 · State police forensic cell

Insp. Rajesh Patel, 41

Cyber Cell, Karnataka State Police. 3-5 reconstruction requests a month, today routed to the Karnataka FSL wing on an 8-12 week cycle. The BNSS §187 60/90-day investigation deadline is the pain. Needs a tamper-evident, BSA §63-aligned dossier on the chargesheet in a day.

— ICP · 02 · Insurance claims

Smt Anjali Pillai, 47

Senior Claims Investigator, ICICI Lombard. 18-25 reconstruction-bearing disputes a quarter; a high-value commercial-vehicle claim took a Pune SI 11 days to investigate. The IRDAI TAT KPI slips on 38% of disputes. Needs verification in 72 hours with tribunal-grade evidence.

— ICP · 03 · Defence procurement

Cdr (Retd) Vikram Reddy, 53

Procurement Officer (AI/Robotics), BEL Bangalore. Sourcing indigenous tactical-reconnaissance and post-incident-investigation AI under DAP-2020 IDDM preference. 3D forensic reconstruction is unaddressed in his existing 8-12 vendor shortlist. Needs sovereign on-prem, NDAA-clean drones, source escrow.

— ICP · 04 · Smart-City ICCC + industrial safety

Manoj Kulkarni, 49 · Aniket Joshi, 44

ICCC Operations Head, Surat Smart City (existing Eyrie M2: 32 wards, 1,840 cameras) and Site Safety Officer, Tata Steel Jamshedpur (22-35 reportable incidents/yr). Both bound by a 72-hour RCA / evidence-handoff KPI that the current 6-9 week forensic cycle blows past.

02 — How it works

Footage in. Signed site twin out.

SiteTwin pulls from the Eyrie sensor fabric the customer already operates: multi-camera ringbuffer, LiDAR scans, and — for occluded angles — an active drone mission. A COLMAP / Hloc pose pre-pass feeds the 3D Gaussian Splatting trainer; the operator measures and annotates the result; two operators sign off; the evidence bundle exports. Every step is an audit-chain event, not a file on a share drive.

Step · 01

For zero incremental capture

Capture.

Pull frames from Eyrie's multi-camera ringbuffer for the operator's scene polygon and time window; pull matching LiDAR scans; dispatch a DGCA / Part 107-gated drone for occluded regions when passive coverage is incomplete.

sitetwin.capture.passive_ringbuffer · drone_orchestrator
Step · 02

For metric-accurate scale

Pose.

COLMAP feature-matching + incremental SfM, with a Hloc (NetVLAD + SuperPoint + SuperGlue) fallback for very large sets. Multi-camera bundle adjustment is initialised from Eyrie's prior ONVIF extrinsics, then refined against LiDAR ground truth.

sitetwin.pose.colmap_pose · hloc_pose · bundle_adjust
Step · 03

For any GPU budget

Train — 3D Gaussian Splatting.

Berkeley Gsplat trainer (primary), Nerfstudio Splatfacto (alternative), or an Instant-NGP NeRF fallback for sub-200-frame sets. LiDAR point clouds supervise gaussian initialisation, materially reducing iteration count (exact savings vary by scene density). A streaming preview lets the operator cancel a bad run before 30k iterations finish.

sitetwin.train.gsplat_trainer · lidar_fusion · nerf_fallback
Step · 04

For defensible numbers

Measure & annotate.

Distance, area, volume, line-of-sight and occlusion tools answer "could the witness camera have seen the suspect at 14:32?" — calibrated against LiDAR scale, with an honest plus-or-minus on every reading. Ensemble-VLM and manual annotations are placed in the 3D viewer.

sitetwin.measure.line_of_sight · occlusion · annotate.vlm_annotate
Step · 05

For human oversight

Two-operator review.

Dossier issuance, FRE 902 cert, federation grant, below-threshold override, VLM-annotation commit, key rotation and erasure all require two distinct operators. A first approve without a second is rejected; a second timestamp before the first is rejected.

sitetwin.workflows.two_operator.TwoOperatorWorkflow
Step · 06

For evidence handoff

Export — signed evidence bundle.

Browser gsplat.js viewer, ffmpeg video render along a camera path, GLTF, a ReportLab-signed BSA §63 / FRE 902 PDF dossier, and a tamper-evident JSON manifest of file hashes, training parameters and source-event references — assembled into one verifiable tarball.

sitetwin.export.bsa_dossier · fre_902_block · bundle_tarball

03 — Capabilities

The wedge nobody else can replicate.

3DGS-only vendors (Polycam, Luma AI, Scaniverse, Nerfstudio) and forensic-reconstruction-only vendors (FARO Zone 3D, iWitness, Map3D) each ship half the stack. SiteTwin's advantage is the intersection of three Eyrie capabilities they would have to rebuild their whole backplane to match — the audit chain, the sensor fabric, and the federation gate — productised behind a Protocol + StubAdapter layer so every claim runs in tests without the GPU or the cloud SDK installed.

01 · provenance

vs Polycam PLY / Luma render (a file, no provenance)

Ed25519 audit chain — reconstructions are events, not files.

Every reconstruction, pose session, training run, annotation, measurement, dossier issuance and federation grant is a hash-linked, signed entry — closed AuditEventKind enum, no free text. Tamper with any past entry and chain replay fails. sitetwin verify-chain validates the local chain on the appliance.

sitetwin.audit_chain.chain.AuditChain · verify-chain
02 · sensor fabric

vs Polycam / Luma fresh single-phone capture

Reuses the cameras that already saw it.

Passive ringbuffer pull auto-selects the cameras with line-of-sight to the scene polygon; LiDAR scans pull for the same window and area, calibrated against camera extrinsics. The operator does not return to the scene, does not film again. Mobile Polycam / Scaniverse PLY import is a slot for sites without Eyrie coverage.

sitetwin.capture.passive_ringbuffer · train.lidar_fusion
03 · federation

vs single-site, single-operator assumption everywhere else

Cross-tenant — consent + warrant + two-operator.

Inter-agency defence collaboration, cross-jurisdiction insurance disputes and multi-state investigations cross tenant boundaries only through the three-gate pattern: written consent, a valid warrant artefact (hash + court + expiry), and two distinct operators on each side. Both chains log it; per-tenant schema isolation never breaks.

sitetwin.cloud.federation_gateway.FederationGateway
04 · quality gate

vs unauditable "looks right" reconstructions

Published PSNR / SSIM / LPIPS thresholds.

Every reconstruction is scored against held-out frames: PSNR ≥ 28 dB, SSIM ≥ 0.92, LPIPS ≤ 0.15 on the standard Eyrie test scenes. A below-threshold reconstruction is flagged in the UI and the chain, and cannot enter a BSA §63 dossier without a two-operator override that is itself logged.

sitetwin.train.quality_metrics
05 · temporal twin

vs single-moment capture

T, T-1h, T-1d, T-1w slices.

Reconstruct the scene at the incident moment and at prior moments for change-detection — the pre-incident vs post-incident comparison that drives industrial-site root-cause analysis. Each temporal slice is its own reconstruction row with its own audit-chain entry.

ReconstructionStatus · temporal-twin index
06 · privacy + region

vs no DSAR, no residency control

De-identified by default, preset-driven.

Faces and number plates are blurred by default; only an authorised role with a warrant on file can un-blur, under two-operator review. Retention, audit verbosity and cross-border rules read from the Eyrie compliance preset — DPDP, GDPR, CCPA, Quebec25 or HIPAA — inherited, not re-implemented.

sitetwin.compliance.deid · preset_loader

NDAA-clean drone tier (Skydio X10D, Parrot Anafi USA) and NDAA-clean RaaS hardware for defence and sensitive-PSU customers, per the HARDWARE-NON-CHINA track. Production training and sensor SDKs (Gsplat, Nerfstudio Splatfacto, COLMAP, Hloc, Polycam API, Luma API) plug in behind the same Protocols the stub adapters satisfy in tests.

04 — Show, don't tell

From job config to signed evidence bundle, in one block.

The operator CLI runs against an edge appliance: init mints the per-appliance Ed25519 keypair, enroll binds it to a tenant, reconstruct submits a job, and export produces the artefacts. The same surface is exposed by the FastAPI control plane under /v1, authenticated with X-Sitetwin-Api-Key and rate-limited per tenant tier. 829 tests pass against in-memory stub adapters — no GPU required.

Python 3.12+ FastAPI SQLite (WAL) → Postgres Ed25519 audit chain 3D Gaussian Splatting (gsplat) Nerfstudio · COLMAP · Hloc depends on eyrie>=0.0.4 DPDP / GDPR / HIPAA presets BSA §63 · FRE 902(13-14)
# 1. A reconstruction job is one scene-spec JSON. SiteTwin auto-selects the
#    cameras with line-of-sight to the polygon over the incident window.
{
  "reconstruction_id":  120,
  "site_id":           2,
  "requested_by":      1,
  "scene_window_start": "2026-04-18T14:30:00+05:30",
  "scene_window_end":   "2026-04-18T14:36:00+05:30",
  "camera_ids":        [11, 12, 14],   # Adajan Bus Terminal, Zone 4
  "drone_mission_id":   null,            # set for active occluded-angle capture
  "scene_polygon_geojson": {
    "type": "Polygon",
    "coordinates": [[[72.79,21.19], [72.79,21.20], [72.80,21.20], [72.79,21.19]]]
  }
}


# 2. Submit it from the edge appliance (CLI-05). The job is audit-chained.
sitetwin init                          # mint appliance Ed25519 keypair
sitetwin enroll 7                       # bind appliance to tenant 7
sitetwin reconstruct ./scene-spec.json
# → submitted reconstruction 120 (queued)


# 3. Export the signed evidence bundle artefacts (CLI-06/07).
sitetwin export 120 --format pdf        # BSA §63 / FRE 902 signed dossier
sitetwin export 120 --format viewer     # gsplat.js browser 3D viewer
sitetwin export 120 --format bundle     # tamper-evident signed tarball
sitetwin verify-chain                   # replay + validate the audit chain


# 4. Or drive the control plane over REST (X-Sitetwin-Api-Key per tenant).
import httpx
r = httpx.post(
    "https://api.{your-tenant}.sitetwin.icycastle.com/v1/reconstructions",
    headers={"X-Sitetwin-Api-Key": "sk_…"},
    json=scene_spec,
)
# 201 → {"reconstruction_id": 120, "status": "queued", ...}
# GET /v1/reconstructions/120/metrics → {psnr, ssim, lpips, gpu_minutes, cost_inr}

→ REST surface: POST /v1/reconstructions · GET /v1/reconstructions/{id}/metrics · POST /v1/dossier/issue (two-operator) · POST /v1/federation/grant (three-gate) · outbound webhooks signed Sitetwin-Signature: t=<ts>,v1=<hex> (HMAC-SHA256), Eyrie's scheme.

05 — Admissibility & chain of custody

Engineered to satisfy the technical requirements, on two continents.

A FARO Zone 3D reconstruction dossier is a paper PDF that needs supplementary affidavits and operator testimony to clear BSA §63(4)(b). SiteTwin produces a tamper-evident, BSA §63 / FRE 902-aligned evidence bundle engineered to satisfy the technical requirements (hash, algorithm, chain of custody, device identity, operator) — the same audit_chain.bsa_cert pattern that ships across the IcyCastle family, with a sibling FRE 902(13)-(14) certification block for US proceedings. Admissibility in any proceeding is determined by the court.

India · BSA §63(4)(a)

Source events, identified.

The cert identifies the camera frames, LiDAR scans and drone telemetry by event ID and the reconstruction job ID, describes the 3DGS training pipeline, and records the training hyperparameters and the dataset hash. The electronic record and the manner of its production, named.

sitetwin.export.bsa_dossier
India · BSA §63(4)(b)

The device, particularised.

The cert names the appliance hardware (Eyrie edge or RaaS node), the GPU model and serial, the Ed25519 public-key fingerprint of the signing key, the software versions (Eyrie, SiteTwin, Gsplat, COLMAP), and the LiDAR-camera extrinsics calibration in effect at capture time.

audit_chain.signer · key fingerprint
India · BSA §63(4)(c)

Lawful, regular, accurate.

The cert affirms lawful possession, regular operation, accuracy with reference to the published PSNR / SSIM / LPIPS thresholds, and ordinariness of operation — best to the knowledge and belief of the person stating it, signed by a person in charge and an expert.

quality_metrics · two_operator
US · FRE 901 + 902(13)-(14)

Self-authenticating.

Rule 901(a)'s "evidence sufficient to support a finding that the item is what the proponent claims" translates 1:1 from the BSA cert. The dossier carries a Rule 902(13)-conforming certification block — a record generated by an accurate electronic process — as a sibling to the BSA §63 statement.

sitetwin.export.fre_902_block

Standards conformance: ISO 23494 (multimedia authentication) on the signed manifest format; ISO/IEC 27037 (digital evidence) on identification, acquisition and preservation. CERT-In empanelment and STQC certification are targeted (in progress) on the shared Eyrie / SAAKSHA Rail path — not yet obtained. DGCA Drone Rules 2021 (UIN + RPC + DigitalSky NPNT) and FAA Part 107 fields are recorded per drone mission in the chain.

06 — An Eyrie M3 module

SiteTwin is the productisation of a lane Eyrie already ships.

Eyrie v0.0.4 already ships an eyrie.reconstruction Protocol and a stub SceneReconstructor with a queued / processing / complete / failed lifecycle. SiteTwin turns that stub into a paid SKU with real 3DGS training, drone ingestion, LiDAR fusion, forensic measurement and signed dossiers. It is a separate package — its own pyproject, its own .venv, its own test suite — depending on eyrie>=0.0.4. The R&D risk is retired; this is productisation, not a new build.

Reuses · sensors

Eyrie cameras, LiDAR, drones.

The ONVIF camera registry, eyrie.lidar calibration and eyrie.drones adapter slots (DJI MSDK, Parrot Olympe, Autel, Skydio X10D, custom PX4/MAVLink) feed SiteTwin's capture lane directly. The Eyrie M3 customer already has them plumbed end-to-end.

Reuses · compliance

The same six presets.

SiteTwin inherits eyrie.compliance — DPDP, GDPR, CCPA, Quebec25, HIPAA — for retention windows, audit verbosity, consent gates and cross-border restrictions. De-identification runs through eyrie.privacy. No region-sensitive behaviour bypasses the preset.

Reuses · VLM ensemble

Multi-VLM annotation, consensus-voted.

Forensic auto-tagging of vehicles, persons and structural elements reuses Eyrie's EnsembleVlmAdapter (Qwen2.5-VL local + InternVL3 local + Gemini 2.5 remote). A VLM annotation only enters the audit chain after a two-operator commit.

Sold as · a tier lever

Separate SKU + Eyrie upgrade.

SiteTwin sells standalone as an Eyrie M3 module per deployment, and as a lever to graduate an Eyrie M2 deployment to M3. The Surat ICCC M2 reference is the canonical upgrade path; the cost meter and dossier issuance surface inside the operator console.

07 — Operator console

A console an investigator can use without a forensics degree.

The console is server-rendered FastAPI — no SPA build, no Node toolchain — with the 3D viewer running in a modern browser (viewer load ≤ 5 s for reconstructions up to 8M gaussians (target; tested on Chrome 126 / RTX 3060 / 100 Mbps LAN — may vary on lower-spec devices)). Roles are closed-set: investigator, claims-investigator, safety-officer, ICCC-ops, defence-procurement, vigilance-officer, tenant-admin, cloud-admin, read-only-auditor.

View · Dashboard + cost meter

Queued, in-progress, complete, failed.

Per-tenant dashboard with reconstruction states, quality-metric histograms, and a per-reconstruction GPU-minutes meter.

View · 3D viewer

Turn, zoom, fly through.

The gsplat.js viewer lets the operator navigate the reconstructed scene from any angle — including angles no single camera could see — and drop measurement markers and annotations directly onto the gaussians.

View · Measurements

Distance, area, volume, line-of-sight.

Each measurement reports metres / m² / m³ or a visibility score with an honest uncertainty range, calibrated against LiDAR scale where available. Every reading is audit-chain-signed.

View · Streaming preview

Cancel a bad run early.

During the training window the UI streams a low-resolution preview at iterations 5k, 10k, 15k, 20k, 25k, 30k. The operator can cancel and reconfigure before the full run completes — no wasted GPU-minutes.

View · Federation

Three-gate grant flow.

Request a cross-tenant grant by attaching a warrant artefact and naming two approving operators per side. Consent + warrant + two-operator is enforced at the storage layer; the grant anchors in both tenants' chains.

View · Audit

Replay the chain.

The audit view exposes the hash-linked entries behind every reconstruction, annotation, dossier and grant. Read-only-auditor role can verify the chain without touching any reconstruction.

08 — How to engage

Get started.

SiteTwin is available in early access — as a standalone Eyrie M3 module deployment, as an M2 → M3 upgrade, and as a Reconstruction-as-a-Service lane for insurance, defence, and smart-city teams. Source escrow and sovereign on-prem tracks are available for defence and sensitive-PSU customers. Book a demo and we will scope the right engagement for your caseload.

09 — Start

Stop hiring the scene back.
Reconstruct it. Witness it.

The capture, training, measurement, two-operator review and signed-dossier export are all in code, with 829 pipeline tests. Book a demo and we will reconstruct one of your own incident scenes — and walk you through the audit chain and how the evidence bundle is structured to satisfy BSA §63 / FRE 902 technical requirements.