スキャンした請求書をAIに読ませるとき、PDFより画像(JPEG/PNG)の方が安定する場面があります。
電子発行のPDFはそのままでも読みやすいことが多いですが、紙をスキャンしたPDFは別です。小さい文字やつぶれた文字で、商品名が別物に化けることがありました。
関連記事
この記事では、実際の失敗をもとに
- なぜスキャンPDFで誤読が増えるのか
- なぜ画像の方が安定しやすいのか
- 実運用でどうルール化しているか
をまとめます。
失敗談:小さい文字が別商品名として読まれた
一番痛かったのは、スキャン請求書の小さい文字が誤読されて、全然違う商品名で登録されかけたことです。
そのときの流れはこんな感じでした。
- スキャンPDFをそのままアップ
- AIがそれっぽく抽出
- 商品名が誤っていても、一見それらしく見える
- そのまま登録すると単価表の整合性が崩れる
誤読は「読めない」ではなく「違う意味で読めてしまう」のが厄介です。
なぜスキャンPDFで誤読しやすいのか
スキャンPDFは、見た目はPDFでも中身は「画像をPDFに包んだもの」です。ここで次の要因が重なると精度が落ちます。
- 解像度不足(文字が潰れる)
- 斜め取り込み(文字の輪郭が崩れる)
- 濃淡ムラや影(文字境界が曖昧)
- 圧縮ノイズ(細い文字が欠ける)
つまり、電子PDFと違って「元データとしての文字情報」が弱い状態になりやすい、ということです。
画像の読み取りが強い場面
スキャン由来の資料は、PDFのままより画像化した方が安定することがあります。
理由はシンプルで、画像として前処理しやすいからです。
- ページ単位で解像度を揃えやすい
- 回転や傾きを補正しやすい
- 1ページずつ確認しながら投入できる
結果として、AI側が「読める形」で受け取りやすくなります。
実運用ルール(うちで固定していること)
1) スキャン請求書はまず画像化する
- PDFのまま精度が微妙なら、JPEG/PNGに変換して再投入
- 複数ページは1ページ1画像で渡す
2) 文字の読めやすさを先に担保する
- 小さい文字は拡大して画像化
- 傾きがある場合は補正してから投入
- 影や余白が強い場合はトリミング
3) 商品名は必ず目視チェックする
登録前に最低限これだけは確認します。
- 商品名
- 単位
- 金額の桁
ここだけでも誤登録の大半は防げます。
4) 迷うときは候補提示にする
AIに「確定」させず、候補を2つ出させます。
- 候補A/Bを出す
- 理由を短く添える
- 人間が最終確定する
この運用にすると、誤読が起きても事故になりにくく、次のための学習してくれます。
電子PDFは別扱いでOK
ここまでの話は「スキャンした請求書」が前提です。
電子発行のPDFは文字情報が保持されていることが多く、通常はそのまま読み取りやすいです。なので運用を分けるのが効率的です。
- 電子PDF: 原則そのまま投入
- スキャンPDF: 画像化してから投入
やってみて分かったこと
結局、精度を上げるコツは“読み取らせ方”でした。スキャンPDFで迷ったら画像にする。最後に商品名・単位・金額だけ目で見る。これだけで、事故はかなり減りました。