PaddleOCR vs EasyOCR in レシート
精度とコストのベンチマーク(2026)
最終確認日: 2026-08-18 · 実行ティア: 公式 · 自社実施の直接比較ベンチマーク · 2エンジン × 2レシートデータセット
このページで扱わない内容: レシート以外の文書タイプ — テーブル、フォーム、請求書、契約書、長文ドキュメントは対象外です。クラウド/API OCRサービス、ファインチューニング済みエンジン、およびベンチマークの他の6エンジン(Tesseract、docTR、Docling、Surya2、Unlimited-OCR、PaddleOCR-VL)は、ランキングの文脈で引用する場合を除き、範囲外です。全8エンジンの総合比較は従来のOCRとVLM解析の違いをご覧ください。
範囲の声明: このページのすべての数値は、レシートのみに適用されます — SROIE 2019英語レシートおよびCORD v2インドネシア語レシート。 1つのハードウェアティア(RTX 4090、$0.76/時間、価格は2026年8月時点)、1つのLLM後処理(deepseek-v4-flash、温度0)、固定モデルバージョン(PaddleOCR 3.7.0、EasyOCR 1.7.2)。これらの結果を他の文書タイプ、GPU、LLMに外挿しないでください — ベンチマークはレシートOCRおよびレシートフィールド抽出のみを測定しています。すべての数値は、ベンチマークのresults/summary_metrics.csvおよびresults/field_method_comparison.csvに基づいており、公開のGitHubリポジトリにミラーリングされ、行ごとに引用されています。
クリーンな英語のレシートでは、最新の2段階アーキテクチャの優位性は明確です。以前のdocTR対Surya2の直接対決のような引き分けではありません。PaddleOCRはSROIE 2019のすべての精度軸でEasyOCRを上回っています。CER 0.2045 対 0.2833(相対改善率27.8%)、WER 0.3256 対 0.6158(1.9倍)、正規表現フィールドF1 0.3254 対 0.1477(2.2倍)、LLM後処理フィールドF1 0.5810 対 0.3717(1.56倍)。しかし、このトレードオフはそれだけではありません。EasyOCRは1,000ページあたり約2倍安く($0.110 対 $0.221)、ウォールクロックスループットが速く(124.5 対 79.7 ページ/分)、p95テールもより狭い範囲に収まります(960.4 対 3,331.4 ms)。一方、同じLLM後処理機にテキストを渡した場合、そのフィールド抽出精度はベンチマークの8エンジン中で最も低く、このページではその逆説的な結果を生データの行とともに記録しています。
このトレードオフを一言で表すと、PaddleOCRはレシートを28%少ない文字エラーで読み取り、正規表現で2.2倍のフィールドを抽出し、1,000ページあたり$0.221です。EasyOCRはエラーは多いものの、1,000ページあたり$0.110で読み取ります。これは、同じRTX 4090、同じテスト分割、同じレシートでのGPUコストがおよそ半分であることを意味します。どちらのエンジンも「勝利」しているわけではありません。異なる軸で優れているのです。このページの目的は、同じ管理された実行から両方の軸を示すことです。直感に反するLLMダウンストリームの結果も含めて。
这两个引擎代表了深度学习OCR的两代技术。PaddleOCR(基于PaddlePaddle,PP-OCR架构,v3.7.0)是一个现代的两阶段流水线:检测阶段定位文本区域,然后识别阶段进行转录——专为大规模印刷文本的高精度而设计。EasyOCR(基于PyTorch,1.7.2)是经典的单遍CNN + RNN + CTC识别器——ResNet特征提取器馈送到序列模型,使用连接时序分类进行解码。它以极其广泛的语言和文字覆盖(开箱即用支持80多种语言)以及著名的简单安装而闻名。字符错误率(CER)衡量插入、删除和替换除以真实字符数——CER为0.204意味着每100个字符约有20.4个被误读;词错误率(WER)在整词粒度上应用相同的编辑距离逻辑。两者都是越低越好。
SROIE文本精度(英文收据):PaddleOCR的明显优势
在SROIE 2019测试集的361张英文收据上,现代架构在两个文本指标上均胜出:CER 0.2045对比0.2833(相对改进27.8%),WER 0.3256对比0.6158——EasyOCR的WER几乎是两倍。WER差距大于CER差距,这表明EasyOCR在此语料库上将字符级错误累积为整词失败。两个引擎均无错误运行(CSV中每个SROIE和CORD行的error_rate均为0.0)。
来源:summary_metrics.csv — cer和wer列,sroie_2019行。PaddleOCR cer 0.20449 / wer 0.32563;EasyOCR cer 0.28327 / wer 0.61578。越低越好。每个引擎361个样本;两者error_rate均为0.0。
| 指标(SROIE 2019,n=361) | PaddleOCR | EasyOCR | 来源 |
|---|---|---|---|
| 字符错误率(CER) | 0.2045 | 0.2833 | summary_metrics.csv · cer,paddleocr/sroie_2019和easyocr/sroie_2019行 |
| 词错误率(WER) | 0.3256 | 0.6158 | summary_metrics.csv · wer,相同行 |
| 错误率(失败页面) | 0.0 | 0.0 | summary_metrics.csv · error_rate,相同行 |
表: summary_metrics.csv — cer / wer / error_rate 列、sroie_2019 行。正確な値: PaddleOCR cer 0.20449 / wer 0.32563; EasyOCR cer 0.28327 / wer 0.61578。CER/WER は低いほど良い。どちらのエンジンもベンチマーク全体の精度チャンピオンではない — その称号は同じ8エンジン実行内の Surya2 (CER 0.1915) と docTR (CER 0.1971) に属する。
フィールド抽出: 正規表現とLLMによるKIE
テキスト精度はエンジンをランク付けするが、フィールド抽出は下流システムが実際に消費するものだ。ベンチマークのSROIEフィールド指標は、各エンジンのOCRテキストに2つの後処理を適用して、4つのフラットなレシートフィールド(会社名、日付、住所、合計)を対象としている: 固定の正規表現パターン(従来のOCR + ルールベースのキー情報抽出アプローチ)と、構造化プロンプトを使用したLLM後処理(温度0のdeepseek-v4-flash)。正規表現を通じて、PaddleOCRは0.3254のフィールドF1でフィールドを抽出し、EasyOCRの0.1477に対して2.2倍のアドバンテージがある。LLMを通じても、その差は0.5810対0.3717(1.56倍)で続く。
フィールド値F1は、抽出されたフィールド値の適合率と再現率の調和平均であり、正解データと比較する — 1.0はすべてのレシートフィールドが完全に復元されたことを意味し、0は何も抽出されなかったことを意味する。SROIE正規表現フィールド列は、ベンチマークのpostprocessed_sroie_receipt_regex_*指標である: 各エンジンのOCRテキスト(ネイティブの構造化出力ではなく、後処理済み)に適用される固定パターン。ランキングの文脈に注意: PaddleOCRの0.3254は、8エンジンのベンチマークで3番目に良い正規表現フィールド結果であり(Unlimited-OCR 0.3376とPaddleOCR-VL 0.3368に次ぐ)、純粋に伝統的な4エンジンの中で最も良い。EasyOCRの0.1477は8エンジン中7位(summary_metrics.csv、field_f1_regex、sroie_2019行)。
出典: field_method_comparison.csv — regex_field_value_f1 / llm_field_value_f1 列、sroie_2019 行(0–1の小数を%で表示)。LLM後処理: deepseek-v4-flash(llm_model列)。エンジンあたり361サンプル(llm_ok_count)。
| フィールド抽出(SROIE 2019、n=361) | PaddleOCR | EasyOCR | 出典 |
|---|---|---|---|
| フィールド値のF1(正規表現) | 0.3254 | 0.1477 | field_method_comparison.csv · regex_field_value_f1、paddleocr/sroie_2019 および easyocr/sroie_2019 行 |
| フィールド値のF1(LLM) | 0.5810 | 0.3717 | field_method_comparison.csv · llm_field_value_f1、同様の行 |
| フィールド値の精度(LLM) | 0.5810 | 0.3712 | field_method_comparison.csv · llm_field_value_accuracy、同様の行 |
| 全フィールドが完全一致した文書(LLM) | 0.0748 | 0.0028 | field_method_comparison.csv · llm_document_fields_exact、同様の行 |
| LLM後処理の中央値レイテンシ(ms) | 1,817.5 | 2,004.5 | field_method_comparison.csv · llm_median_latency_ms、同様の行 |
表: field_method_comparison.csv — regex および llm 列、sroie_2019 行。regex 列は postprocessed_sroie_receipt_regex_* メトリクスです。各エンジンのOCRテキストに固定パターンを適用したものです。LLM後処理: deepseek-v4-flash、温度0(llm_model列)。LLMレイテンシはAPI起因で、エンジンのレイテンシ(summary_metrics.csv latency_p50_ms)とは別です。“全フィールドが完全一致した文書” は、すべての対象フィールドが完全に一致した文書の割合です。フィールドごとのF1よりもはるかに厳しい基準です。EasyOCRはレシートの0.28%で4つのフィールドすべてが完全一致しました。
EasyOCR LLMパラドックス:中程度のテキスト精度、最悪の下流抽出
このページで最も特徴的なデータポイントであり、直感に反するものです。EasyOCRのOCRテキストは文字精度では中程度(SROIE CER 0.2833、8エンジン中4番目)ですが、そのテキストを他のすべてのエンジンと同じLLM後処理(deepseek-v4-flash、同じプロンプト、同じレシート)に通すと、SROIE LLMフィールドF1は0.3717で、ベンチマーク内の全8エンジン中で最低となります。CERがより悪い(0.3347)CPUエンジンであるTesseract(0.4389)をも下回ります。変更されたのはOCRテキストのみで、LLM、プロンプト、レシートはすべて同一でした。
観察されたパターン、メカニズムは未検証。 もっともらしい仮説(それ以上のものではありません)は、出力形式の慣習に関するものです。EasyOCRがテキスト行をレイアウト、結合、または分離する方法が、生の文字精度とは無関係な理由で、下流のLLMフィールド抽出を低下させているように見えます。ベンチマークはこのメカニズムを切り分けておらず、この結果は再現可能で安定しているものとしてここに記録されています(EasyOCRのSROIE行は2026-08-17のtorch 2.8再実行で再検証され、r1/r2/r3はバイト単位で同一。公開済みCSVにはすでにその修正値が含まれています)が、因果関係の主張は行われていません。実際的な意味合いはマーケティングの表面とは逆です。このコーパスでは、「十分な」テキストのためにEasyOCRを選択することは、テストされたどのエンジンよりも最悪のLLM下流フィールド回収を予算化することを意味します。
出典:field_method_comparison.csv — llm_field_value_f1、全8つのsroie_2019行、各361サンプル(llm_ok_count)。LLM後処理は全エンジンで同一:deepseek-v4-flash、温度0。CERコンテキストはsummary_metrics.csvのcer列、sroie_2019行から。
| 全8エンジン、SROIE 2019(各n=361) | SROIE CER | SROIE LLMフィールドF1 | 出典 |
|---|---|---|---|
| doctr | 0.1971 | 0.6171 | field_method_comparison.csv · doctr/sroie_2019行、llm_field_value_f1(CER: summary_metrics.csv) |
| surya2 | 0.1915 | 0.6139 | field_method_comparison.csv · surya2/sroie_2019行、llm_field_value_f1(CER: summary_metrics.csv) |
| unlimited_ocr | 0.6552 | 0.6054 | field_method_comparison.csv · unlimited_ocr/sroie_2019行、llm_field_value_f1(CER: summary_metrics.csv) |
| paddleocr_vl_vllm | 0.3370 | 0.5921 | field_method_comparison.csv · paddleocr_vl_vllm/sroie_2019行、llm_field_value_f1(CER: summary_metrics.csv) |
| PaddleOCR 3.7.0 | 0.2045 | 0.5810 | field_method_comparison.csv · paddleocr/sroie_2019行、llm_field_value_f1(CER: summary_metrics.csv) |
| docling | 0.5909 | 0.5685 | field_method_comparison.csv · docling/sroie_2019行、llm_field_value_f1(CER: summary_metrics.csv) |
| tesseract (CPU) | 0.3347 | 0.4389 | field_method_comparison.csv · tesseract/sroie_2019行、llm_field_value_f1(CER: summary_metrics.csv) |
| EasyOCR 1.7.2 | 0.2833 | 0.3717 | field_method_comparison.csv · easyocr/sroie_2019行、llm_field_value_f1(CER: summary_metrics.csv) |
表: field_method_comparison.csv — llm_field_value_f1、全sroie_2019行。CER列はsummary_metrics.csvのcer、sroie_2019行から。EasyOCRのCER(0.2833)は8エンジン中4位 — 中位のテキスト精度でありながら、LLM下流のフィールド復元率は最悪(0.3717、Tesseractの0.4389を下回る)。この逆説は観測・再現可能な事実として記録されていますが、そのメカニズムは本ベンチマークでは特定されていません。
動作環境:EasyOCRが真に競争力を持つ領域
精度だけが評価軸ではありません。運用面では、EasyOCRには実測された明確な優位性があります。同じRTX 4090、同じ$0.76/hrの条件下で、EasyOCRはSROIEを1,000ページあたり$0.110で処理します。スループットは124.5ページ/分対79.7を維持し、最悪ケースのテールも安定しています:p95は960.4 ms対PaddleOCRの3,331.4 msの初回ページスパイク。フットプリントも導入が簡単です。PaddlePaddleの重いフレームワークスタックに対し、EasyOCRは広い言語カバレッジを持つ単一のPyTorchランタイムで済みます。
一見矛盾する点について正直に説明します:PaddleOCRの方が中央値のページあたりレイテンシが低く、それでいてページ/分の数値は低い。この2つの数値は異なる時計を測定しています。レイテンシp50は定常状態のページあたり推論時間で、ウォーム状態で測定されます。ページ/分は実行全体のウォールクロックスループットで、モデル初期化とバッチ効果を含みます。EasyOCRの小型で高速ロードのランタイムはウォールクロックのボリュームレースで勝利します。PaddleOCRのページあたり推論はウォーム状態では個別に高速です。両方の数値は実在し、異なるものを表しています。モデルロードのオーバーヘッドが支配的なワークロードではEasyOCRのウォールクロック優位性を体感し、ウォームな長時間実行パイプラインではPaddleOCRのページあたりの優位性を体感します。
コストはウォールクロック実行時間×RunPod RTX 4090レートで計算され、モデル初期化を含みます。これはGPU時間に対して実際に支払う価格です。スループットは同じ初期化を含むウォールクロックのページ/分です。レイテンシp50/p95はウォーム状態で測定・スコアリングされた定常状態のページあたり推論時間です。PaddleOCRのp95 3,331 msは初回ページ/プリフィルスパイクであり、定常状態の挙動ではありません。
出典:summary_metrics.csv — latency_p50_ms / latency_p95_ms列、sroie_2019行。PaddleOCR p50 296.99 / p95 3331.35。EasyOCR p50 413.64 / p95 960.37。定常状態レイテンシ。
出典:summary_metrics.csv — cost_per_1000_pages列、sroie_2019行。PaddleOCR 0.2214、EasyOCR 0.1098。コスト = ウォールクロック実行時間×$0.76/hr、価格は実行マニフェストにタイムスタンプ付き。どちらのエンジンもベンチマークで最安ではありません — docTRが1,000ページあたり$0.048で最安です。
| 動作環境(SROIE 2019、n=361) | PaddleOCR | EasyOCR | 出典 |
|---|---|---|---|
| レイテンシ p50(ms) | 297.0 | 413.6 | summary_metrics.csv · latency_p50_ms、paddleocr/sroie_2019 および easyocr/sroie_2019 行 |
| レイテンシ p95(ms) | 3,331.4 | 960.4 | summary_metrics.csv · latency_p95_ms、同様の行 |
| 1分あたりのページ数(ウォールクロック) | 79.7 | 124.5 | summary_metrics.csv · pages_per_minute、同様の行 |
| 1,000ページあたりのコスト | $0.221 | $0.110 | summary_metrics.csv · cost_per_1000_pages、同様の行 |
表: summary_metrics.csv — latency_p50_ms / latency_p95_ms / pages_per_minute / cost_per_1000_pages、sroie_2019 行。両エンジンとも GPU(RTX 4090、マニフェストにタイムスタンプ付きの $0.76/hr 価格)を使用。コストにはモデル初期化が含まれます。正確な値: PaddleOCR p50 296.99 / p95 3331.35 / 79.71 ページ/分 / $0.2214; EasyOCR p50 413.64 / p95 960.37 / 124.53 ページ/分 / $0.1098。p50 と ページ/分 の逆転は上記の本文で説明済み: 定常状態の1ページあたりの推論(PaddleOCR が優位)と、初期化やバッチ効果を含むウォールクロックスループット(EasyOCR が優位)の違いです。
CORD(インドネシアのレシート):両エンジンとも低下するが、PaddleOCRのLLMフィールド復元は生き残る
どちらのエンジンもインドネシアのレシートを主に学習していないため、CORD v2(100サンプル、ネストされたフィールド menu/sub_total/total)は言語横断的なストレステストとして機能します。そして、両エンジンとも生のCERでは低下します:0.9083(PaddleOCR)と0.9185(EasyOCR)。これは言語不一致による引き分けで、両エンジンともテキストを事実上読めていません。ベンチマークプロトコルに従い、CORDの数値はSROIE比較から隔離され、いかなるランキングにも統合されません。なぜなら、CORDの正解テキストには注釈構造が埋め込まれており、真の言語不一致に加えて、すべてのエンジンの生CERを膨らませるからです。
フィールドメトリクスは、ほぼ同一のCERとは異なるストーリーを示します。LLM後処理を通じて、PaddleOCRのフィールドF1はCORDで0.5527を維持し、EasyOCRの0.3378に対抗します。これはSROIEパターンの延長です:PaddleOCRのLLMダウンストリーム復元は、EasyOCRが耐えられない言語ショックに耐えます。両方のテキスト認識エンジンが文字レベルで失敗してもです。EasyOCRのCORD LLMフィールドF1は、8エンジン中2番目に低く(Tesseractの0.1627のみ上回る、summary_metrics.csv/field_method_comparison.csvのcord_v2行)、再び悪いCERのエンジンに後れを取り、このパラドックスは両データセットで持続します。CORDは言語堅牢性の文脈のためにここで引用されており、意図的にSROIEの数値と単一のリーダーボードに統合されることはありません。
| CORD v2、インドネシアのレシート(n=100) | PaddleOCR | EasyOCR | ソース |
|---|---|---|---|
| 文字誤り率(CER) | 0.9083 | 0.9185 | summary_metrics.csv · cer、paddleocr/cord_v2およびeasyocr/cord_v2行 |
| フィールド値F1(regex) | 0.0154 | 0.0067 | field_method_comparison.csv · regex_field_value_f1、同じ行 |
| フィールド値F1(LLM) | 0.5527 | 0.3378 | field_method_comparison.csv · llm_field_value_f1、同じ行 |
| 1,000ページあたりのコスト | $0.342 | $0.086 | summary_metrics.csv · cost_per_1000_pages、同じ行 |
| 1分あたりのページ数(実時間) | 141.0 | 211.8 | summary_metrics.csv · pages_per_minute、同じ行 |
表: summary_metrics.csv(cer / cost_per_1000_pages / pages_per_minute)および field_method_comparison.csv(フィールドF1)、cord_v2行。CORDの数値をSROIEのランキングに混ぜないでください:CORDのCERは、言語ミスマッチとアノテーション構造のインフレーションが組み合わさったものです。正規表現パターンは英語形式用に書かれているため、両エンジンで正規表現フィールドF1が約0〜2%に落ち込みます。PaddleOCRのCORDにおけるLLMフィールドF1 0.5527は、SROIEでの優位性(0.5810 vs 0.3717)を再現しています — そのLLMダウンストリーム回復は、EasyOCRにはない言語ショックを乗り越えています。
誰が勝つか:総括グリッド
「優れている」はワークロード次第であり、この直接対決は軸を明確に分けています:英語レシートのすべての精度軸でPaddleOCRが優位。コスト、スループット、テールレイテンシ、導入の簡便さではEasyOCRが優位。そして生テキスト精度の王者はどちらでもありません(Surya2/docTR)— EasyOCRのLLMダウンストリーム結果は最大の注意点であり、売り文句ではありません。
よくある質問
レシートにおいて、PaddleOCRはEasyOCRより精度が高いですか?
はい、このベンチマークで測定されたすべての精度指標において、その通りです。 SROIE 2019では:CER 0.2045 対 0.2833(相対改善率27.8%)、WER 0.3256 対 0.6158、正規表現フィールドF1 0.3254 対 0.1477(2.2倍)、LLM後処理フィールドF1 0.5810 対 0.3717(summary_metrics.csvおよびfield_method_comparison.csvのsroie_2019行を参照)。どちらのエンジンも、このベンチマークの総合テキストチャンピオンではありません。その称号はSurya2(CER 0.1915)とdocTR(0.1971)が保持しています。
EasyOCRはPaddleOCRより安いですか?
はい — 英語レシート1,000ページあたり約2倍安いです:SROIE 2019では$0.110 対 $0.221、CORDでは$0.086 対 $0.342に拡大します。これは同じRTX 4090、$0.76/時間、モデル初期化コストを含む場合の比較です(summary_metrics.csvのcost_per_1000_pages、sroie_2019およびcord_v2行を参照)。このベンチマークで最も安いエンジンは全体としてdocTRで、1,000ページあたり$0.048です。
PaddleOCRとEasyOCRではどちらが速いですか?
どの時計を指すかによります。PaddleOCRは定常状態の中央値レイテンシが低く(p50で297.0 対 413.6 ms)、一方EasyOCRはウォールクロックスループットが高い(124.5 対 79.7 ページ/分)です。これは、ウォールクロックのページ/分にはモデル初期化とバッチ効果が含まれ、EasyOCRの軽量なランタイムがより速くロードされるためです(summary_metrics.csvのlatency_p50_ms / pages_per_minute、sroie_2019行を参照)。ウォームアップ済みの長時間実行パイプラインでは、PaddleOCRが1ページあたり高速です。多数の小規模または頻繁なコールドバッチでは、EasyOCRがウォールクロックレースで勝利します。
文字精度がそこそこ良いのに、なぜEasyOCRのLLMフィールド抽出は最悪なのですか?
これはこのベンチマークで文書化されたパラドックスであり、現在のところ証明されたメカニズムはありません。 EasyOCRのSROIE CER(0.2833)は8エンジン中4位ですが、そのLLM後処理フィールドF1(0.3717)は最下位です — より悪いCERを持つTesseract(0.4389)よりも下です。主要な仮説は、EasyOCRがテキスト行をレイアウトまたは結合する際の出力形式の慣例が、下流のLLM抽出を劣化させるというものです。これは観測され再現可能なパターンとしてラベル付けされていますが、メカニズムは未検証です(field_method_comparison.csvのllm_field_value_f1、sroie_2019行を参照)。
CORDレシートで両エンジンのスコアが低いのはなぜですか?
プロトコルがSROIEランキングから分離している2つの複合的な原因があります:真の言語ミスマッチ(両エンジンのトレーニング焦点外のインドネシア語レシート)と、CORDのグラウンドトゥルーステキスト内のアノテーション構造のインフレーションです — CERは0.9083(PaddleOCR)と0.9185(EasyOCR)に達します(summary_metrics.csv、cer、cord_v2行)。それでも両者を分けるのはLLM下流の回復力です:PaddleOCR 0.5527 vs EasyOCR 0.3378のフィールドF1 — 両認識エンジンが文字レベルで失敗してもSROIEパターンは持続します。
レシートパイプラインはPaddleOCRとEasyOCRのどちらを選ぶべきですか?
パイプラインがフィールド(会社、日付、合計の抽出値)を消費する場合、PaddleOCRがレシートでの明確なデフォルトです:正規表現下でフィールドF1が2.2倍、LLM下で1.56倍、そしてCORDの言語ショックを乗り越えるLLM下流の回復力があります(field_method_comparison.csv)。安価なバルク量、タイトな最悪ケーステール、軽量スタック、または開始のための広い言語カバレッジが必要な場合、EasyOCRは運用軸で真に競争力があります(2倍安価、1.56倍のウォールクロックスループット、3.5倍タイトなp95、80以上の言語)— ただし、コミット前にその弱いLLM下流に予算を確保してください。これらの結果は2026年8月の1つのGPUティアでの英語とインドネシア語のレシートに適用されます;本番決定の前にターゲットコーパスで再実行してください(制限事項を参照)。
このページの数字はどこから来ていますか?
すべての数値はファーストパーティベンチマークの公開CSVの行です — results/summary_metrics.csv(CER/WER、正規表現フィールドF1、レイテンシ、コスト、スループット)とresults/field_method_comparison.csv(正規表現 vs LLM後処理、llm_model = deepseek-v4-flash)— ImageToTableai/benchmark-ocrでホストされ、実行ごとに1つの編集済みmanifest.jsonが環境フィンガープリント用にあります。データセット定義は以下に引用されたSROIE 2019およびCORD論文から来ています。
方法論と情報源
プロトコル
このページは、独立した再現可能なベンチマーク実行(公式ティア)の一対一比較スライスを報告するものであり、第三者による主張の調査でも、ベンダー比較ページでもありません。固定テスト分割のみを使用:SROIE 2019 テスト(英語レシート361件、フラットフィールド:会社名/日付/住所/合計)と CORD v2 テスト(インドネシア語レシート100件、ネストフィールド:メニュー/小計/合計)。トレーニング分割は一切評価していません。両エンジンは同じ画像、同じグラウンドトゥルース、同じ測定プロトコル(warm_then_scored:スコア対象パスの前に固定ウォームアップパスを実行するため、レイテンシ値は定常状態)を使用しました。両実行とも両データセットで error_rate 0.0 で完了しました(summary_metrics.csv の error_rate 列)。基盤となる実行には合計8エンジンが含まれますが、このページでは指定された2エンジンのみを比較し、他のエンジンはランキングの文脈としてのみ引用しています。完全な8エンジンの結果は、Traditional OCR vs Document Parsing VLMs で別途公開されています。
実行環境
- ハードウェア:両エンジンとも同じ NVIDIA RTX 4090(24 GB)で実行。GPUコストは RunPod のオンデマンド料金 $0.76/hr で計算され、価格は各実行の編集済みマニフェストにタイムスタンプ付きで記録されています(2026年8月)。
- エンジン:標準設定のまま、ファインチューニングなし。バージョン固定:PaddleOCR 3.7.0(最新の2段階ディープラーニングOCR — PP-OCR 検出+認識、GPU)および EasyOCR 1.7.2(CTCデコードを備えた従来の ResNet+CRNN、GPU)— 公開リポジトリのモデル表(README.md)と実行マニフェストに準拠。EasyOCR の SROIE 行は、2026-08-17 の torch 2.8 再実行(繰り返し実行 r1/r2/r3 はバイト単位で同一)で再検証され、公開された CSV には修正後の値が反映されています。
- LLM 後処理:決定的な出力のため、温度0で API 経由の deepseek-v4-flash を使用(field_method_comparison.csv の llm_model 列)。両エンジンのすべての LLM フィールド行に使用された唯一のモデルです。
- コスト基準:ウォールクロック実行時間 × $0.76/hr(モデル初期化を含む)— バッチ処理によりページあたりのコストが低下します。
- フィールド後処理:SROIE の正規表現フィールド指標は
postprocessed_sroie_receipt_regex_*(field_method_comparison.csv の regex_* 列)— 固定パターンセットによって OCR テキスト から抽出されたフィールドです。これらは、いずれかのモデルによるネイティブな構造化出力ではなく、OCR+下流抽出を測定します。LLM_* 列は OCR テキスト+LLM 抽出を測定します。2つのパイプラインが混在することはありません。
指標の定義
- CER(文字誤り率): OCRテキストと正解データ間の編集距離(挿入+削除+置換)を正解データの文字数で割った値。低いほど良い。
- WER(単語誤り率): 単語単位で行う同じ編集距離計算。
- フィールド値F1(正規表現): OCRテキスト上の固定正規表現パターンを用いて抽出したフィールド値に対する適合率・再現率の調和平均(従来のOCR+ルールベースKIEパイプライン)。列名: regex_field_value_f1。スコア0はフィールド値が一切取得できなかったことを意味する。
- フィールド値F1(LLM): LLM後処理出力(OCRテキスト → deepseek-v4-flash → フィールド)に対する同じ指標。列名: llm_field_value_f1。 2つのパイプラインは異なり、混在することはない。
- 文書フィールド完全一致: すべての対象フィールドが完全一致した文書の割合 — フィールド別F1よりもはるかに厳しい基準。
- レイテンシp50/p95 & ページ/分: 定常状態のページあたり推論時間(ウォームアップ後・モデル読み込みを除く)と、モデル初期化を含む実時間スループット。これらは異なるクロックを測定しており、このページのp50とページ/分の逆転は測定モデルの違いによるもので、エラーではない。
- 1,000ページあたりのコスト: 記録された$0.76/時間レートでの1,000ページ分のGPU課金時間(モデル初期化を含む)。
ソース一覧
- summary_metrics.csv(GitHub raw)。16行=8モデル × 2データセット。列: model, compute_type, dataset, cer, wer, field_f1_regex, field_acc_regex, latency_p50_ms, latency_p95_ms, cost_per_1000_pages, pages_per_minute, error_rate。 このページのすべてのCER/WER、レイテンシ、コスト、スループット数値は、ここにあるpaddleocrとeasyocrの行に由来する。
- field_method_comparison.csv(GitHub raw)。16行。列: model, dataset, llm_model(= deepseek-v4-flash)、正規表現/LLMフィールド値の精度とF1、文書フィールド完全一致、llm_median_latency_ms、トークン数。 すべての正規表現/LLMフィールドF1数値は、ここにあるpaddleocrとeasyocrの行(およびパラドックステーブルの全8つのsroie_2019行)に由来する。
- ImageToTableai/benchmark-ocrリポジトリ。結果CSV、編集済み実行マニフェスト、固定プロトコル、データセットサンプルリスト(固定テスト分割)を公開し、再現を可能にするパブリックリポジトリ。
- results/manifests/(GitHub)。公開された各実行(16実行)につき1つの編集済みmanifest.json。モデルバージョン、GPU/ドライバ、torch/CUDA/Pythonバージョン、価格タイムスタンプ付きコストメタデータ、成果物ハッシュを含む。
- Huang et al.,「ICDAR2019 Competition on Scanned Receipt OCR and Information Extraction」(2019)。SROIE 2019データセットの定義、タスク構造、ライセンス(CC-BY-4.0)。
- Park et al.,「CORD: A Consolidated Receipt Dataset for Post-OCR Parsing」(2020)。CORD v2データセットの定義、ネストされたフィールドスキーマ、ライセンス(CC-BY-4.0)。
制限事項
- ドキュメントの範囲 — レシートのみ: SROIE + CORD。ここでは、PaddleOCRのPP-Structureによるレイアウト/テーブル/ドキュメント機能、EasyOCRの80以上の言語に対応する非レシートテキストの広さ、その他のドキュメントタイプは測定していません。このページを、どちらかのエンジンが「すべてに勝つ」と結論付けるために使用しないでください。
- サンプルサイズ: 英語361件 + インドネシア語100件のレシート。フィールドF1とCERはコーパスに依存するため、数パーセントの一桁台の差はノイズとして扱い、工学的な真実とは見なさないでください — ただし、ここで記録された差(CER 27.8%、正規表現F1で2.2倍)はその帯域をはるかに超えています。
- 単一GPUティアと単一価格: すべての数値は、$0.76/時間のRTX 4090 1台から得られたもので、価格は実行マニフェストに2026年8月のタイムスタンプで記録されています。他のGPU、マルチGPUサーバー、バッチスケジューリング、または価格変更により、レイテンシ、スループット、コストが変動します — 予算を立てる前に、現在のレートでコストを再計算してください。
- 単一LLM後処理: すべてのLLM行は、温度0のdeepseek-v4-flashを使用しています。異なるLLMを使用すると、絶対的なフィールドF1が変動します。EasyOCRパラドックスの大きさはLLMによって変わる可能性がありますが、観測されたパターンは、この単一の後処理装置で両データセットにわたって維持されました。LLMレイテンシ(SROIEで中央値約1,817~2,005 ms、field_method_comparison.csvのllm_median_latency_ms)はAPI起因であり、どちらのエンジンのレイテンシにも含まれません。
- EasyOCRパラドックスのメカニズムは未検証: ベンチマークでは、EasyOCRの中間ティアCERテキストが、LLMダウンストリームのフィールド復元率で最悪の結果(SROIE 0.3717 / CORD 0.3378)をもたらすことが記録されています — これは、出力テキストのレイアウト規則という仮説の下での観測された再現可能な結果であり、因果メカニズムは明示的に分離されていません。これは、ライブラリの証明された特性としてではなく、計画のための測定された結果として扱ってください。
- 正規表現のチューニング: パターンセットはデータセットごとに1回だけ作成されました。フォーマットごとに高度にチューニングされたパターンライブラリは、独自のレイアウトでより高いスコアを獲得できる可能性があります — ただし、その分、LLMが排除するメンテナンスコストがかかります。
- CORD CERはモデルごとの品質評価ではありません: CORDのグランドトゥルースにはアノテーション構造が埋め込まれており、どちらのエンジンも主にインドネシア語でトレーニングされていません。CORD CER(約0.91)は、言語のミスマッチとグランドトゥルースのインフレを反映しています。CORDの行は枠組みを示して引用され、SROIEのランキングには決してマージされません(プロトコルルール)。
- バージョン固定: 結果は、PaddleOCR 3.7.0とEasyOCR 1.7.2(2026年8月)に基づいています。どちらのエンジンでも新しいリリースが出た場合、このページのすべての数値が変動する可能性があります。
関連リファレンス: docTRとSurya2のレシートベンチマーク · OCRとVLMの直接比較 · LLM抽出に対する正規表現ルール · 文字精度とフィールド精度 · レシートOCR精度
関連記事: AI OCRと従来型OCRの比較 · AI画像抽出と従来型OCRの比較 · AIドキュメント抽出の価格(2026年)