read_barcode1d — SYMBOL barcode1d op

• Data kinds: image2d → table

• Call: import fullseye as fs; fs.ledger.read_barcode1d(image, symbologies=None, *, angle_deg=None, n_lines=10, itf_min_length=6, min_agree=2) (to call the implementation directly, import barcode1d; barcode1d.read_barcode1d(image, symbologies=None, *, angle_deg=None, n_lines=10, itf_min_length=6, min_agree=2); from the registry, opssymbol.get("read_barcode1d"))

• GPU: none (CPU reference implementation only)

Usage

Read a 1-D bar code from an image (table).

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

Read a 1-D symbol from a 2-D reflectance image at any in-plane angle: sample n_lines scan lines across the bars (barcode_scan_profiles), decode each (decode_barcode_profile) and take the majority text. Returns text, symbology, n_lines, n_decoded (lines that decoded), n_agree (lines agreeing with the majority), votes (text -> count), line_results (one dict or None per line), angle_deg, x_dim_px.

★2 本以上の走査線が違う文字列で復号したときは多数決の結果に conflict = True を立てる(誤読の兆候。検査では読み取り不能と同じに扱うべき)。多数の文字列に同意した走査線が min_agree(既定 2)本に満たなければ読み取り不能とする —— 1 本だけの偶然の一致(ぼけた断片が検査数字を通る)を返さない。Two or more lines decoding to different strings sets conflict = True; fewer than min_agree lines agreeing on the majority text is a no-read.

向きを与えないときは 2 回読む: 構造テンソルの向きで 1 回、多数の文字列を読んだ走査線の最初のバーの縁(バーに平行な直線に乗る)から当て直した向きでもう 1 回(多数の票が減らないときだけ採る)。With angle_deg=None the scan direction is refined from the leading edges of the majority lines and the symbol is read again.

空の入力は ValueError。拒否(ValueError): 2-D でない、非有限、未知の体系名。1 本も読めなければ Barcode1DError。

Detailed usage guide

• symbol_reading 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_symbol_package_1d — py -3.11 examples/poc_symbol_package_1d.py

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

render_symbol · symbol_read_trials · symbol_read_pod · ocr_classify · ocr_read_line · ocr_read_trials

Same category (barcode1d)

encode_barcode1d · ean_check_digit · barcode_scan_profiles · decode_barcode_profile


*Provenance: barcode1d.py — SYMBOL 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.