phase 5: edge transforms, soleprint-ui rename, infra fixes
- pipeline edge transforms: stages can declare accepted_transforms, edges carry a transform dict, runner injects per-stage and nodes apply (e.g. invert_mask before edge detection); editable from UI via PUT /config/edge-transform - rename mpr-ui-framework -> soleprint-ui (now an external package synced via .spr from /home/mariano/wdir/spr); add @vue-flow/core and uplot to detection-app so linked package resolves them - Tiltfile guards kubectl context, k8s commands pin --context kind-mpr - kind-config: gateway on hostPort 30080 (Caddy fronts mpr.local.ar) - modelgen: pyproject.toml, .spr marker, dict default_factory support
This commit is contained in:
@@ -162,6 +162,16 @@ def node_detect_edges(state: DetectState) -> dict:
|
||||
field_masks = state.get("field_masks", {})
|
||||
job_id = state.get("job_id")
|
||||
|
||||
# Apply edge transforms from upstream connections
|
||||
edge_transforms = state.get("_edge_transforms", {})
|
||||
for source_stage, transform in edge_transforms.items():
|
||||
if transform.get("invert_mask") and field_masks:
|
||||
import numpy as np
|
||||
field_masks = {
|
||||
seq: np.bitwise_not(mask) if mask is not None else None
|
||||
for seq, mask in field_masks.items()
|
||||
}
|
||||
|
||||
regions = detect_edge_regions(
|
||||
frames, config, inference_url=INFERENCE_URL, job_id=job_id,
|
||||
field_masks=field_masks,
|
||||
|
||||
Reference in New Issue
Block a user