Track

Carbon Markets & Emissions Transparency: improving trust, transparency and efficiency in carbon markets by preventing over-claiming and double counting.

Inspiration

Investigations of major forest-offset programmes have found that a large share of credits did not represent real emission reductions. The reasons are consistent: project developers overstate how much forest they protect, forests get cleared after credits are sold, and verification is slow, paid for by the seller, and done on paper. Once a bad credit enters the market, there's no reliable way to trace or cancel it. We wanted a system where a credit cannot exist unless the forest behind it can be seen from space, and where its whole life, from issuance to retirement, is public.

What it does

CarbonLens is a verification-to-issuance pipeline for forest carbon credits.

  1. Sees the forest. For each project, it reads baseline and current multispectral images (blue, green, red, near-infrared, short-wave infrared) and classifies every 10 m pixel as forest or not.
  2. Measures honestly. It bias-corrects the mapped area with the model's own accuracy matrix and credits only the lower 95% confidence bound, so model error can never inflate credits.
  3. Catches clearing. It compares baseline and current maps. Loss beyond the model's measured false-change rate is treated as a carbon reversal and subtracted.
  4. Issues on-chain. The result goes to the CarbonRegistry smart contract, which mints min(claimed, verified) credits, flags over-claims, assigns each credit a unique serial number, and stores the SHA-256 hash of the full AI report.
  5. Prevents double counting. A monitoring period can be verified only once. Retired credits leave circulation permanently and can never be transferred or retired again.
  6. Shows the evidence. A dashboard shows each project's claim against what the imagery supports, the evidence maps, and the on-chain receipt.

In the demo, five projects claim 71,100 credits. CarbonLens issues 21,785 and blocks 49,315 unsupported credits. It catches one project overstating its forest area by 1.8× and two projects that cleared forest after claiming credits.

How we built it

  • ML (Python, scikit-learn): a random-forest classifier on 5 spectral bands plus NDVI, NDWI, NBR and EVI, with a 3×3 majority filter. Area estimation follows Olofsson et al. (2014), the standard method for area estimation from classified maps. Change detection subtracts the expected false-loss count and applies a 3σ significance test.
  • Blockchain (Solidity, Hardhat): CarbonRegistry.sol, with verifier roles, per-period verification, serial-numbered issuance, transfer, permanent retirement and public report-hash checks. 12 automated tests cover issuance caps, double issuance, serial uniqueness, retirement and access control.
  • Bridge (ethers.js): anchor.js deploys the registry, records every AI report, and writes the ledger the dashboard reads.
  • Dashboard (HTML/CSS/JS): a single self-contained page that works offline and on mobile.

Challenges we ran into

Our first run rejected every project, honest ones included. The classifier was right 98.7% of the time, but across 16,000 pixels per scene that still produced about 1.5% fake "deforestation", and at roughly 550 tonnes of CO₂ per hectare of forest, that noise wiped out every claim. We fixed this the way remote-sensing practitioners do: majority filtering, measuring the false-change rate on held-out data and subtracting it, requiring statistical significance, and building confidence intervals from a realistic 800-point accuracy sample instead of every pixel. After that, honest projects passed and real clearing was still caught.

Accomplishments that we're proud of

  • An end-to-end pipeline that runs from pixels to an on-chain credit in one command.
  • Conservative-by-design crediting: uncertainty always reduces credits, never increases them.
  • Contract guarantees backed by tests: no double issuance, unique serials, irreversible retirement.

What we learned

Accuracy alone is a misleading metric for carbon. A 99% accurate map can still create thousands of fake tonnes, so what matters is how error propagates into credits. We also learned that the blockchain's value here is narrow but real: it isn't where the truth comes from, but it makes the record of what was verified, issued and retired impossible to quietly rewrite.

What's next for CarbonLens

  1. Live Sentinel-2 ingestion through Google Earth Engine, with cloud masking.
  2. Above-ground biomass from GEDI LiDAR, to measure tonnes rather than hectares.
  3. Multiple independent verifier nodes with a dispute window before minting.
  4. An ERC-1155 interface so credits can trade on existing marketplaces.
  5. A pilot with a community forestry project in India's Western Ghats.

Prototype note

The prototype uses simulated Sentinel-2-style imagery (realistic reflectance per land-cover class) so judges can reproduce every number offline. Projects are fictional. Real tiles plug into the same pipeline through a loader.

Share this project:

Updates

Submission history