概要
本稿ではFormRecognizerの事前構築済みモデルの一つであるInvoiceモデルを使って英語と日本語の請求書それぞれについて検出精度の確認を行いました。
FormRecognizerStudioを使った解析
まず手始めにFormRecognizerStudioを使って解析を行ってみました。
なお解析にはInvoicesモデルを使用しています。
とりあえずStudio上にあらかじめ用意されているサンプル画像で解析を行った結果が次の画像です。
もとの画像上に検出結果を枠線で囲って表示してくれています。
上記の画像からもわかる通り、請求金額や商品名はもちろん支払い期日や住所等も検出できていることが分かります。
さらに検出箇所にマウスを合わせると詳細情報を確認することができます。
ためしに請求金額の詳細情報を表示させてみます。
少し見にくいかもしれませんが、PRICE列の1行目にカーソルを合わせたときの画像を表示しています。単価が30ドルであることが正しく検出できている様子が分かります。
ここでは割愛しますが、他の属性(商品名や個数、合計金額など)についても正確に検出できていることが確認できました。
日本語の請求書で試してみる
英語の請求書では上手に解析ができているようなので、日本語の請求書でも解析をしてみましょう。
適当な請求書が見つからなかったので、適当に自作した請求書で解析を行ってみました。
一見したところ請求金額が検出できていない?と思いましたが、表の一番下の欄から合計金額を拾ってきてくれていますね。 すこし不安になる挙動ではありますが一応正しく検出できているようです。
また宛名の一部で誤検知や検出漏れが発生しており、英語版ほどの精度で検出はできていないようです。
なお後日ドキュメントを確認してみたところ、請求書モデルの対応言語は下記の通りとのことでした。英語版ほどの精度が出なかったのはこれが原因かもしれません。
- 英語
- スペイン語
- ドイツ語
- フランス語
- イタリア語
- ポルトガル語
- オランダ語
https://learn.microsoft.com/ja-jp/azure/applied-ai-services/form-recognizer/language-support?view=form-recog-3.0.0より抜粋
レシートモデルなどのモデルでは日本語対応がなされているようなので、
請求書モデルについても日本語対応が行われることを期待したいと思います。