ocr_features — SYMBOL ocr op

• Data kinds: image2d → signal

• Call: import fullseye as fs; fs.ledger.ocr_features(glyph_image) -> 'np.ndarray' (implementation को सीधे call करना हो तो import ocrclassic; ocrclassic.ocr_features(glyph_image) -> 'np.ndarray', registry से लेना हो तो opssymbol.get("ocr_features"))

• GPU: नहीं (केवल CPU reference implementation)

उपयोग

एक glyph के ink map से 88-D feature vector (zoning densities + projections) बनाता है (signal)।

> नीचे का विस्तृत विवरण मूल text में है — सारांश और headings का अनुवाद हो चुका है।

入力の約束 / Input contract

glyph_image はインク量の地図(1 = インク、0 = 地、float)で、

行は字高の範囲(行の上端〜下端)、列はその字を含む範囲を切り出したもの

(ocr_read_line はインク重心を中心に送り幅 1 つぶんの幅で切る)。

行を字高にそろえるので . - : の縦位置と大きさが特徴量に残る

(インクの外接箱で正規化すると . は大きな円板になり、何にでも似てしまう)。

正規化 / Normalisation

縦: 切り出しの高さを FEATURE_GRID (24) 画素に拡縮。横: 同じ倍率(縦横比保持)で、

インクの重心列をキャンバス中央に置く(字幅を推定しないので、ぼけで箱が太っても位置がずれない)。

縮小時は先に Gaussian で前置平滑(エイリアス防止)し、map_coordinates(双線形)で標本化。

構成 / Layout (length FEATURE_LENGTH = 88)

[0:64] 8x8 区画濃度(各 3x3 画素の平均インク、0..1)/ zoning densities

[64:76] 水平射影(行方向の平均インク、12 ビン)/ horizontal projection profile

[76:88] 垂直射影(列方向の平均インク、12 ビン)/ vertical projection profile

交差数(crossing count)は使わない: 離散値で、ぼけとドットの途切れに不安定なため。Crossing counts are not used: they are discrete and unstable under blur / dot gaps.

インクが無ければ全 0 を返す。/ Returns zeros for an empty glyph.

उपयोग की विस्तृत guide

• symbol_reading family guide

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• poc_symbol_lot_ocr — py -3.11 examples/poc_symbol_lot_ocr.py

वे अगले ops जिनसे type जुड़ता है (signal को input के रूप में लेते हैं)

decode_barcode_profile · grade_barcode_profile

इसी category के (ocr)

ocr_font · ocr_render_text · ocr_segment_line · ocr_train · ocr_classify · ocr_read_line · ocr_score · ocr_read_trials


*Provenance: ocrclassic.py — SYMBOL operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

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