segment_characters — MV text op

• Data kinds: image2d → labels2d

• Call: import fullseye as fs; fs.ledger.segment_characters(image, min_area=4, max_gap=1) (to call the implementation directly, import mvtext; mvtext.segment_characters(image, min_area=4, max_gap=1); from the registry, opsmv.get("segment_characters"))

• HALCON equivalent: segment_characters (the HALCON reference is a useful guide to its meaning and parameters)

• GPU: none (CPU reference implementation only)

Usage

Split a text line image into a label image with one label per character column.

> The detailed description below is the original text — the summary and the headings are translated.

連結成分を列の範囲で束ね、列の隙間が max_gap 以下の成分は同じ字にする(i の点や = のように上下へ分かれた字を 1 字に数えるため)。min_area 未満の成分は雑音として捨てる。ラベルは左から順。インクが無い画像は全 0 を返す(理由: 字が無い)。空の入力(image が 0 要素)は ValueError。

Args:

image: 灰色画像か bool の領域 (H, W)。

min_area: 残す連結成分の最小の画素数(>= 1)。

max_gap: 同じ字と見なす列の隙間(>= 0)。隙間が負(重なり)の成分は必ず束ねる。

Returns:

image と同じ形の整数ラベル画像(背景 0、字 1..n)。

Detailed usage guide

• machine_vision_classics 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)

• machine_vision_tour — py -3.11 examples/machine_vision_tour.py

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

select_characters

Same category (text)

text_line_orientation · text_line_slant · select_characters


*Provenance: mvtext.py — MV 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.