cuibinge's picture
Update markdown capability registry and fusion profiles
2227bb5 verified
|
Raw
History Blame Contribute Delete
3.13 kB
# Markdown Capability Registry
This directory stores composable Markdown capability cards. A card is a small
human-readable configuration unit with YAML front matter and operational notes.
Cards are intentionally separated by concern:
- `elements/`: target feature or object type, such as green tide, ship, oil spill, sea ice.
- `satellites/`: satellite/platform assumptions.
- `sensors/`: sensor or product type assumptions.
- `resolutions/`: spatial-resolution policies.
Extraction and training jobs should compose the cards they need instead of using
a single fixed class list. For example:
```powershell
python scripts/compose_task_profile.py `
--element green_tide `
--satellite GF6 `
--sensor PMS `
--resolution 2m `
--output configs/profiles/gf6_green_tide_2m.json
```
For already fused GF6-like products, inject a fused product card:
```powershell
python scripts/compose_task_profile.py `
--element green_tide `
--satellite GF6 `
--sensor PMS `
--fusion FUSED_OPTICAL `
--resolution 2m `
--output configs/profiles/gf6_green_tide_fused_2m.json
```
For raw PAN+MSS products where fusion should happen tile by tile during
inference, inject the streaming fusion card:
```powershell
python scripts/compose_task_profile.py `
--element green_tide `
--satellite GF2 `
--sensor PMS `
--fusion STREAM_FUSION `
--resolution 2m `
--output configs/profiles/gf2_green_tide_stream_fusion_2m.json
```
## Card Format
Each card starts with YAML front matter:
```markdown
---
id: green_tide
type: element
task_types: [semantic_segmentation]
preferred_heads: [validity, context, semantic_segmentation]
label_formats: [mask, polygon]
---
# Green Tide
Human-readable notes, rules, constraints, and known failure modes.
```
The front matter is parsed by `scripts/compose_task_profile.py`. The Markdown body
is kept in the output profile so that training/inference logs preserve the
reasoning and caveats behind the selected cards.
## Fused Image Expression
Fused imagery is represented as a derived observation, not as a plain
multispectral image and not as a boolean flag. The selected profile and dataset
manifest must keep a `fusion` object with:
- `state`: `none`, `fused_product`, `runtime_fusion`, or `unknown`.
- `method`: known method, implementation method, or `unknown_vendor_product`.
- `sources`: source roles and paths such as PAN and MSS.
- `target_resolution_m`: output grid resolution.
- `native_multispectral_resolution_m`: original multispectral resolution.
- `persisted`: whether the fused image exists on disk.
- `reproducible`: whether the source data and method can reproduce it.
- `spectral_preservation`: known or estimated spectral preservation risk.
This keeps GF6 supplied fused rasters, GF1/GF2 tile-wise fusion, and future
fusion algorithms comparable without pretending they are identical inputs.
## Hard Constraint
Do not assume coastline vectors, land-mask vectors, or external GIS layers are
available. If a task needs land, water, invalid, or cloud handling, it must be
expressed as context labels, hard-negative samples, validity rules, or model
heads.