lasagna-fields / README.md
SharpMeow's picture
Twelve new Lasagnetta datasets and a decluttered Every field page (Scrolls main d8ed50e, PR #300)
9cbb7ec verified
|
Raw History Blame Contribute Delete
5.05 kB

A newer version of the Gradio SDK is available: 6.31.0

Upgrade
metadata
title: Lasagna Fields
emoji: 🍝
colorFrom: red
colorTo: yellow
sdk: gradio
sdk_version: 6.28.0
python_version: '3.12'
app_file: app.py
pinned: false
license: apache-2.0
suggested_hardware: zero-a10g
startup_duration_timeout: 1h
short_description: lasagna fields for 24 scrolls, or made for any box
models:
  - scrollprize/lasagna
datasets:
  - SharpMeow/pherc0175a-lasagna
  - SharpMeow/pherc0175b-lasagna
  - SharpMeow/pherc0306b-lasagna
  - SharpMeow/pherc0483a-lasagna
  - SharpMeow/pherc0483b-lasagna
  - SharpMeow/pherc0490a-lasagna
  - SharpMeow/pherc0490b-lasagna
  - SharpMeow/pherc0841-lasagna
  - SharpMeow/pherc0846a-lasagna
  - SharpMeow/pherc0846b-lasagna
  - SharpMeow/phercmanbp-lasagna
  - SharpMeow/pherc0343p-lasagna
  - SharpMeow/pherc0009b-lasagnetta
  - SharpMeow/pherc0172-lasagnetta
  - SharpMeow/pherc0500p2-lasagnetta
  - SharpMeow/phercman5-lasagnetta
  - SharpMeow/phercmanb-lasagnetta
  - SharpMeow/pherc0009b-20250820154339-lasagnetta
  - SharpMeow/pherc0009b-20260319104112-lasagnetta
  - SharpMeow/pherc0814-20250804134230-lasagnetta
  - SharpMeow/pherc0814-20260521123630-lasagnetta
  - SharpMeow/pherc0841-20260319124803-lasagnetta
  - SharpMeow/pherc0139-20250728140407-lasagnetta
  - SharpMeow/pherc0139-20250820105138-lasagnetta
  - SharpMeow/pherc0139-20250822062710-lasagnetta
  - SharpMeow/pherc0139-20251107132835-lasagnetta
  - SharpMeow/pherc0139-20251107135911-lasagnetta
  - SharpMeow/pherc0139-20260319133050-lasagnetta
  - SharpMeow/pherc0139-20260319133554-lasagnetta
  - SharpMeow/pherc0139-20260413113053-lasagnetta
  - SharpMeow/pherc0139-20260930100252-lasagnetta
  - SharpMeow/pherc0172-20241024131839-lasagnetta
  - SharpMeow/pherc1667-20260323082859-lasagnetta
  - SharpMeow/phercmanbp-20260427100434-lasagnetta
  - SharpMeow/vesuvius-center-lines
tags:
  - vesuvius-challenge
  - herculaneum
  - ct
  - 3d
  - lasagna
  - zerogpu
  - mcp-server

Lasagna Fields

The lasagna field for Herculaneum scroll CT, two ways:

  • Every field, by scroll: whole-scan fields for 24 scrolls in one list, each with its volume, voxel size, model, size and link (fields.json). Seven are villa's own fields in the Vesuvius Challenge open data. Thirty-four are public datasets made here for scans that had none: twelve with villa's lasagna model, among them ten that also stream from a bucket (PHerc0175A, PHerc0175B, PHerc0306B, PHerc0483A, PHerc0483B, PHerc0490A, PHerc0490B, PHerc0841, PHerc0846A and PHerc0846B), and twenty-two with Lasagnetta 0.1.1, a faster copy of it.
  • Make a field for any box of any public scan: pick a scan and a point, and the Space runs villa's own lasagna model there on ZeroGPU, checks the result against the field the open data already publishes for that scan, and hands you a download in villa's own layout.

A lasagna field is what villa's lasagna surface fitting and the spiral fit read: cos (a signal that repeats once per papyrus layer), its gradient size grad_mag, and the surface normal (nx, ny). It is model output: geometry inputs, not a reading of any text.

Make a field: what runs

lasagna/preprocess_cos_omezarr.py predict3d from ScrollPrize/villa at commit db3dbea2 (the commit the ten whole-scan fields were made with), with the scrollprize/lasagna checkpoint at revision de45f011 (SHA-256 checked at start-up), both MIT. Nothing is reimplemented. The Space:

  1. reads the CT around your box from the Vesuvius Challenge open data into villa's layout (the level nearest the model's 9.4 um: level 0 of 8.6 to 9.4 um scans, level 2 of 2.4 um scans), with a margin of one tile so the edges match a whole-scan run;
  2. calls villa's predict3d command line in-process on the GPU (tile 192, villa's defaults otherwise);
  3. reads the field back, compares it with the published field for the scan where one exists, against a control read a few layers away, and draws the middle slices.

Boxes are whole 256-voxel blocks of the input level (256 or 512 a side): villa writes its field in 64-voxel chunks of the quarter grid and widens any crop to them, and it puts tiles on one lattice over the whole scan, so a box's field is the whole-scan field there.

For agents

The page is also an API and an MCP server (https://sharpmeow-lasagna-fields.hf.space/gradio_api/mcp/): list_fields, list_scans, list_models, example_points, plan_field and make_field. See the page's Agents and API tab. A field uses the caller's ZeroGPU time.

Credit and licenses

Made by Chase Hendrick. Code: Apache 2.0 (see LICENSE and NOTICE). Model and code it runs: villa's lasagna authors, MIT. The fields listed from the open data are villa's own; the page only links them. Scans: Vesuvius Challenge open data, CC BY-NC 4.0; the fields, made from them, are CC BY-NC 4.0 too. Source and docs: ChaseHendrick/Scrolls, spaces/lasagna-fields/ and docs/tools/lasagna-fields.md.