jzpOCR · 左手减字谱母图识别(PP-OCRv6 · strict-parent B 臂)

古琴减字谱左手走手音的识别模型。输入一整幅左手母框的裁图,输出读法串。

输入:一幅母图(左手走手音那一块,不是单个部件,也不是整页)
输出:上三三        ← 原样字符串

⚠️ 这不是生产版。 它是上一代系统 task-aligned 实验的选中 checkpoint(台账状态 recovered_not_production),本仓库把它原样打包发布,用来补上「左手识别」这一格的空缺。 详见「身份」一节。

⚠️ 先读这三条

  1. 输入是「整幅母图」,大小形状随原文,不是单字、不是整页。整页要先做版面检测切出左手框。
  2. 输出是原样字符串,还没有分段。jzpOCR 主仓库的 lc_segment 会把它加成 LC| 前缀并按槽位/语义角色分段(上九上八 → LC|上:九;上:八)。本包不做那一步。
  3. 预处理必须照 inference.yml:BGR、高 48 定宽 320 补零、归一化到 [-1, 1]、 字表就是包里的 dict.txt(18,708 字)。换字表 = 下标错位。

用法

pip install -r requirements.txt

python infer.py 母图.png
# B0003.jpg	上三三	0.412

python infer.py 一批/*.png

模型是推理格式(inference.json + inference.pdiparams),只依赖 paddlepaddle, 不需要装 PaddleOCR 训练框架。

指标

同一批 239 幅母图上的对照(exact = 整串全对才计对):

模型 exact
本模型(strict-parent B) 122/239 = 51.05%
上一代的 B1(column-path CTC v2,主仓库 jzpocr 装的那个) 63/239 = 26.36%
+24.69 个百分点(配对:只有本模型对 66 · 只有 B1 对 7 · 两个都错 110)

评测批:lc_qjjc_ppocrv6_parent_sequence_dataset_v1_20260724 的 holdout_list.txt, 239 行;同批同金标、同一个任务形状(整幅母图进、整串出,不给任何框)。

这个数的边界

  • n=239,母框级,不是页级。本模型没有页级端到端数字。
  • exact 是整串严格相等,不是字级准确率 —— 串长的样本更难对。
  • 上面那两个数是同一批、同一口径,可以直接比。 与别处记的 acc 0.6698(本模型自己的 val 106 行)不是一批,不可混比。
  • 本模型未走生产发布流程。

为什么是这一臂

04_模型资产 里左手还有几个权重,但任务形状不同,拉到同一批上不可比:

权重 任务形状
本模型(strict-parent B) 整幅母图 → 整串(部署形状)
B1 (column-path CTC v2) 整幅母图 → 整串(同形状,但更弱)
LC-task-aligned-strict-parent-A 同任务,权重已删(只剩日志与数据)
MODEL-LC-FINE-BS152-001、三臂 A/B/C unit 级(给定框、逐部件)—— 要另配检测才谈得上部署

身份

资产 LC-task-aligned-strict-parent-B
训练 run lc_task_aligned_parent_B_bs160_e100_20260724
来源目录 04_模型资产/02_读法识别模型/02_左手_LC/05_task_aligned_补齐_20260918/
台账状态 recovered_not_production
选中 best_accuracy(规则:maximize val acc → norm_edit_dis → 取更早的 epoch)
权重 sha256 ac69d4bef09f7a6d4c88e51da605e78655afbd87dd71d979da0673ae988fa6c(best_accuracy.pdparams)
字表 sha256 b5f2bfe2bdd9448429e3e82b51c789775d9b42f2403d082b00662eb77e401c5d

训练

底模 PP-OCRv6_medium_rec 官方预训练
配方 batch 160 · 100 epochs · lr 2e-4 · seed 1024
数据 lc_qjjc_ppocrv6_parent_sequence_dataset_v1_20260724(当前母框 + 1,009 条旧整母串)
与 A 的关系 A/B 是匹配对照,fixed_recipe 完全相同,只差数据

⚠️ 训练图像清单没有随包提供,因此无法核实其谱本来源。同一体系的其它权重用的是 《琴曲集成》的谱页裁图,但这一点对本权重未经核实,不作为陈述。

文件

文件 是什么
inference.json + inference.pdiparams 推理模型(Paddle Inference / PIR 格式,76 MB)
inference.yml 官方推理配置 —— 预处理规格的权威来源
dict.txt 字表,18,708 字(PP-OCRv6 默认字表)
infer.py 最小推理示例
requirements.txt 依赖

infer.py 第三列 ctc_conf 是本包自己定义的 CTC 置信度(保留步上所选字符概率的 几何平均)。上游记录里有个叫 score 的列,两者接近但不相同(同一批 239 条上 平均差 0.016),不确定是不是同一个公式,别当同一个量用。

inference.json / inference.pdiparams / inference.yml 三个件取自上游的 inference_selected_parent_val/,未做任何改动。

引用

jzpOCR — 古琴减字谱识别(左手 LC 母图模型 · strict-parent B 臂)
底模:PaddleOCR PP-OCRv6_medium_rec
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support