Skip to content

v2.0.0

Latest

Choose a tag to compare

@sdcb sdcb released this 08 Oct 16:00
· 32 commits to main since this release

SimdPaddleOCR 2.0

第一次升大版本号:1.x 在 CPU SIMD 上打磨,2.0 加上了 GPU 后端 —— Vulkan / Metal,从算子内核到驱动互操作全部是 C#,仓库里依然没有一行 C/C++。

GPU 后端

  • OcrBackend.Auto / Cpu / Vulkan / Metal,检测、方向、识别三个模型可分别指定,默认 Auto(仅 .NET 10 目标可用)
  • medium 模型端到端实测(相对同机 CPU):RTX 3080 Ti 14.4×、Intel Arc B580 9.6×、Apple M4 Metal 6.47×、AMD Radeon 880M 核显 4.3×、骁龙 8 Gen 3 / Adreno 750 约 2.2×
  • 无协作矩阵或实测慢于 CPU 的设备(如 Intel UHD 770)Auto 默认留在 CPU,仍可显式指定 OcrBackend.Vulkan

CPU 路径

  • CTC ArgMax 并行化 + 动态 intra-op 线程预算,普遍再快 4–15%
  • ARM64 手写 AdvSIMD MatMul
  • DET 后处理 flood-fill 重写(5.4 → 2.2 ms)

WebAssembly

  • browser-wasm 多线程 Web Workers + SharedArrayBuffer + LLVM AOT,tiny 中位 103 ms/张,详见 docs/wasm.md

新 API

  • returnCtcAlignment: true → PaddleOcrLine.EstimateCharacterBoxes() 返回逐字符四边形 PaddleOcrCharacterBox[](CTC 对齐估算,空白按中点切)
  • CtcSpans / RecognitionTimeSteps / RecognitionTensorWidth 等公开属性

包版本

  • Sdcb.SimdPaddleOCR 2.0.0(net10.0 + netstandard2.0)
  • ModelProvider 与四个模型包维持 1.0.0,无破坏性 API 变更

性能报告

每台设备的完整跑分、精度和复现命令:docs/perf.md、docs/vulkan-*.md、docs/metal-m4.md、docs/wasm.md