lasagna-fields / README.md
SharpMeow's picture
Add previews for every listed scroll and improve field controls
1969806 verified
|
Raw History Blame Contribute Delete
5.56 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: Explore scroll layers, previews, and published sources
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

Explore published layer fields for Herculaneum scroll scans:

  • Browse fields: choose a scroll and scan, view top and side previews, then open its published dataset or manifest. Each field identifies its scan, voxel size and model. Fields from Lasagnetta are labeled separately from villa's Lasagna fields.
  • 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.

The catalog records source links, model provenance and coverage status. A listed field or preview does not prove whole-volume completeness. An unknown coverage status means completeness has not been verified. A missing size estimate means it is unavailable.

Reference fields

The original ten hosted reference fields use the same villa commit and checkpoint as Make a field: PHerc0175A, PHerc0175B, PHerc0306B, PHerc0483A, PHerc0483B, PHerc0490A, PHerc0490B, PHerc0841, PHerc0846A and PHerc0846B. Their published datasets remain available through the scroll selector and the dataset links above. The current catalog also lists fields from other runs and models.

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_coverage, list_scans, list_models, example_points, plan_field and make_field. list_coverage reports catalog entries and volumes separately, including missing fields and unknown completeness. 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.