MicroPlastiNet

Microplastic source-attribution prototype
⚠️ Honest disclosure — engineering prototype, synthetic data only. All results on this page were produced on procedurally generated, physics-informed synthetic data. The author does not currently have access to real datasets (NOAA NCEI marine microplastics, Rochman SLoPP/FLOPP spectra, Kaggle Microplastic CV, MP-Set, HydroSHEDS, ERA5). Headline numbers (94% vision, 100% spectral, 0.960 R²) are synthetic-on-synthetic and inflated by definition. The M3 source-attribution head fails on held-out evaluation (top-1 accuracy = 0.0, Spearman ρ = −0.27) — see the M3 section below. Treat this site as a methodology demo and a deployable engineering scaffold, not a validated scientific result.

Why I don't have access to the real data (yet). Each source sits behind a credential, license, or sharing gate I don't currently have access to: NOAA NCEI bulk/API access requires a registered research project and credentialed account; Rochman Lab SLoPP/FLOPP spectra are shared with lab members and credentialed collaborators only; ERA5 high-volume pulls require an institutional Copernicus account (personal accounts are throttled); HydroSHEDS commercial-grade tiles for the Georgia coastal watersheds require a licensed institutional download; Kaggle Microplastic CV / MP-Set imagery is available but unlabeled for source attribution and too small on its own. The pipeline's loaders are written to pick up real CSVs / TIFFs / spectra from data/raw/ the moment access is granted.
Engineering prototype · Synthetic data · Ongoing research

A multi-modal scaffold for microplastic source attribution
— end-to-end on synthetic data.

A multi-modal pipeline that demonstrates how microplastic detection, polymer identification, graph-based source attribution, and a hardened IoT integrity layer could be wired together for environmental compliance teams. All numbers below are produced on synthetic data; the design and software architecture are real, the validation is not.

Python 3.11 PyTorch · PyG Plotly Dash 11 K LOC 6 / 6 security tests passing Synthetic data only
Author: Saikumar Reddy Naidu CS Graduate · Florida Atlantic University
GraphSAGE Test R² (synthetic)
0.960
Synthetic-on-synthetic · not validated on real data
Spectral CNN Accuracy (synthetic)
100%
5-polymer synthetic FTIR/Raman set · inflated by construction
Vision Macro F1 (synthetic)
0.94
2 K synthetic microscopy images · not Kaggle/MP-Set
M3 Source-Attribution top-1
0.0
Honest failure · Spearman ρ = −0.27
M6 Adversarial Tests
6 / 6
Genuinely real · HMAC + replay + key rotation

Built for environmental compliance teams

01

Identify hot-spots fast

A watershed map ranks every monitoring station by 30-day risk so investigators can prioritize the watersheds and sub-basins that most need a field visit.

02

Attribute contamination to a probable source

The graph neural network ranks the top five upstream contributors for any flagged station, with confidence intervals and estimated transport distance.

03

Generate structured compliance reports

One-click PDF + Markdown output wired to CWA § 1251 and EPA 40 CFR Part 131 templates. The report-generation plumbing is real; the underlying evidence is synthetic in this prototype.

04

Survive adversarial conditions

HMAC-signed payloads, replay protection, and TLS 1.3 transport — because pollution-monitoring IoT is a tampering target the published literature largely ignores.

M1

IoT Edge — sensor fusion + on-device detection

A faithful software twin of an MPN-Edge field unit (ESP32-CAM + SEN0189 turbidity + TDS + AS7265x 6-channel NIR). Sensor noise modeled from real datasheets; on-device first-pass detector emulates a TFLite-Micro logistic gate.

M2a

Vision deep learning — particle detection & counting

EfficientNet-B0 + custom TinyYOLO trained on 2,000 synthetic microplastic microscopy images. Drop-in compatible with Kaggle and MP-Set datasets.

M2a annotated detection demo
Validation accuracy
94.0%
EfficientNet-B0 · 2,289 particles
Macro F1
0.94
5-class shape classification
Best epoch (7)
95.0%
Val accuracy on synthetic test set
M2b

Spectral 1D-CNN — polymer identification

4-block 1D-CNN classifies polymer type from 901-point FTIR/Raman spectra. Synthetic spectra generated from published characteristic peaks of PE, PET, PP, PS, and PVC.

M2b confusion matrix
SpectralCNN
100%
Test accuracy · Macro AUC 1.000
MLP baseline
99.3%
Test accuracy
Parameters
471 K
Compact 1D-CNN · synthetic spectra only
M3

Graph neural network — source attribution

A 200-node directed flow graph spanning the Ogeechee, Savannah, and Altamaha watersheds. GraphSAGE predicts station-level concentration, GAT provides attention-based interpretability, and a classical centrality + Ridge baseline gives an honest comparison. The graph topology is synthetic (HydroSHEDS not available); edges and flow weights are procedurally generated to be physically plausible.

M3 graph-network results

Concentration prediction — synthetic-on-synthetic

ModelTest R²MSEMAE
GraphSAGE0.9600.0640.193
GAT0.6980.4880.533
Classical (centrality + Ridge)0.6820.5140.580
+40.8% relative R² gain of GraphSAGE over the classical baseline — but on synthetic data the model is essentially memorizing the generator.

Source attribution — honest failure

MetricValueReading
Top-1 accuracy (predicted source matches true source)0.000FAIL
Mean Spearman ρ (ranked attribution vs ground truth)−0.269FAIL

Source: assets/m3_eval_report.json. The Integrated-Gradients head does not currently recover upstream sources — the attribution component is a known open problem and a primary motivation for pursuing this work in a PhD context with real data.

M4

Compliance dashboard — six tabs

Click any thumbnail to enlarge

A Plotly Dash application designed for environmental compliance officers. Watershed-level KPIs, station ranking by risk, polymer composition, GNN source attribution, forecasted threshold breaches, and one-click report generation.

Launch interactive dashboard ↗ Toggle between all six tabs in the live app · Demo dataset · Hosted on pplx.app
M5

GenAI regulator reports

Pydantic-validated report generator with both an offline template mode and an OpenAI mode. Outputs polished PDF (ReportLab) and Markdown — citing CWA § 1251, EPA 40 CFR Part 131, and the underlying evidence chain.

M6

Cybersecurity — IoT integrity layer

Pollution-monitoring IoT is a tampering-magnet. M6 closes a gap that almost no published microplastic IoT paper addresses: HMAC-SHA256 over canonical JSON, per-payload nonces with bounded LRU cache, 5-minute timestamp freshness window, per-station key rotation with a 30-minute grace, and TLS 1.3 transport.

Adversarial testResult
Happy pathPASS
Payload tampering caughtPASS
Replay caughtPASS
Wrong-key signing caughtPASS
Stale timestamp caughtPASS
Key rotation grace windowPASS