seg_membrane_chord_score — EMPROOF suspect op

• Data kinds: labels2d × image2d → table

• Call: import fullseye as fs; fs.ledger.seg_membrane_chord_score(labels, membrane, tau: 'float' = 0.2, band: 'int' = 4, min_area: 'int' = 1500, min_segment: 'int' = 20, normalize: 'bool' = True, ignore_zero: 'bool' = True, max_points: 'int' = 400, min_hole: 'int' = 4) -> 'dict' (to call the implementation directly, import emproof; emproof.seg_membrane_chord_score(labels, membrane, tau: 'float' = 0.2, band: 'int' = 4, min_area: 'int' = 1500, min_segment: 'int' = 20, normalize: 'bool' = True, ignore_zero: 'bool' = True, max_points: 'int' = 400, min_hole: 'int' = 4) -> 'dict'; from the registry, opsemproof.get("seg_membrane_chord_score"))

Usage

> This operator's description has not been translated yet. The original text follows as it is.

融合の疑い: ラベルの内部を横切る膜の「弦」の長さ / ラベルの径。ラベル(連結成分)ごとに 1 行。

手順: 成分の内側(境界から `band px より内)で膜応答 > tau` の画素を 8 連結の成分にし、

`min_segment px 以上の膜成分ごとに、3 px 太らせて境界帯(band < 距離 ≤ band` + 3)に

触れる画素の最遠 2 点間距離を弦長とする。score = max 弦長 / sqrt(面積)。境界の 2 か所を結ぶ膜

(= 貼り付いた 2 細胞の境目)は score ≈ 1、境界に触れない断片は 0 か小さい。穴を持つ膜成分

(`min_hole` px 以上の穴 = 閉じた輪 = ミトコンドリア・小胞)は弦の候補から外す ―― 境界の 2 点に

接する輪は弦と同じ「遠い 2 点」を持つので、穴の有無で先に分ける。輪が切れて弧になった膜は

外せない(実データで AUC が 1 にならない主因)。

CREMI sample A(512² 断面 12 枚、試作)で人工融合の成分 vs 他: AUC 0.83(tau 0.2)。

列: `label / component / area / score / chord_px / n_segments / cy / cx`

(score 降順)。`min_area` 未満の成分は数えない(小さな断片の弦は径と同程度で常に高く出る)。

>>> table = seg_membrane_chord_score(labels, seg_membrane_response(raw))

>>> table["label"][:5], table["score"][:5] # 疑いの強い順

Detailed usage guide

• emproof family guide

References (sample data, literature)

• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).

• Operator provenance and references — the sources of the research/methods this op family came from.

• The canonical algorithm (author, year) and its uses are named in the family usage guide above.

Runnable examples (verified samples that actually call this op)

• poc_em_second_opinion — py -3.11 examples/poc_em_second_opinion.py

Ops the type connects to (they accept table as input)

—

Same category (suspect)

seg_boundary_membrane_gap


*Provenance: emproof.py — EMPROOF operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.