【OCR】種類別の特徴　-用途に合わせて、最適なOCRを選ぼう-

#はじめに

紙業務を効率化するツールとしてニーズが高まっているOCR。
ですがひとくちにOCRといっても、様々な種類があります。

この記事では、読者のみなさんがニーズに合ったOCRを選定できるよう、様々なOCRを種類別に紹介します。

なお、各種類ごとに代表的な製品を記載していますが、この記事は製品比較の記事ではありません。
あくまでも、各カテゴリーの一般的な特徴を紹介する形で進めていきます。

（製品によっては、複数のカテゴリーをカバーしているものや、あるカテゴリーの一部に特化している製品もあります）

#OCRの種類

OCRの種類には、大きく分けて以下があります。

1. 定型OCR ：　申込書など、フォーマットが決まった帳票を高い精度で処理できる
2. 特化型OCR　：　レシート、名刺、免許証など、特定の種類の帳票を処理するのに最適
3. 個別開発AI　：　特化型OCRが対応していない種類の帳票に対し、個別にAIを作り込んで項目を取得する
4. 汎用準定型OCR　：　固定帳票では対応できない準定型帳票を、個別開発AIよりは軽い作り込みで処理できる

これは特に業界で決まっている用語というわけではないですが、用途別に最適なOCRを見つけるのに便利な区分ということで筆者がネーミングしています。

なお、一般的な区分としては「定型OCR」「非定型OCR」という区分がありますが、上記の1が「定型OCR」、2～4が「非定型OCR」をさらに細分化したものです。

以下、各タイプごとに特徴を詳しく説明します。

## 1.定型OCR

申込書など、フォーマットが定型の帳票を高い精度で処理できるOCRです。

定型の帳票とは、どの項目がどこの場所に書かれるか、場所（形）が完全に決まっている帳票のことです。

婚姻届や離婚届などは、定型帳票に該当します。
「夫となる人」「妻となる人」など、それぞれの項目を書く欄の場所がカチッと決まっていますよね。

定型OCRでは、帳票上のどの場所から項目を取得するかを定義した「テンプレート」を事前に作成し、テンプレート上で指定された場所（座標）に書かれた文字を読み取るという方法が一般的です。

決まった場所から文字を取得してくるため、識字の精度は高く出やすいです。

一方、請求書などで「明細の最後に合計欄が表示される（＝明細の行数によって、合計欄の位置が変わる）」など、項目の位置が動くものは定型帳票に該当しないため、定型OCRでは対応できません。

まとめるとこんな感じです。

|項目|内容|
|:-----------|:------------|
|概要|フォーマットが決まった帳票を処理するためのOCR|
|主な製品|Tegaki,DX-Suite|
|対応している主な帳票|申込書、自治体・役所などの届出書類|
|事前設定|ユーザーによる事前設定が必要。帳票上のどこから項目を取得するかを指定するテンプレートを作成する形式が一般的。|
|強み|固定帳票を処理する場合は、識字の精度が出やすい。|
|弱み|ページ数や、項目の位置が変わる帳票（例・明細の行数によって合計欄の位置が変わるなど）には対応できない。|
|こんなケースに向いている|OCRで処理したい帳票が固定帳票の場合|

## 2.特化型OCR

レシート、名刺、免許証など、特定の種類の帳票に特化したOCRです。

どの種類の帳票に対応しているかはメーカーによって様々です。
代表的なところでは、Fast Accounting（レシート）, LINE(Clova)OCR（レシート、名刺、ほか）などがあります。

処理したい帳票に対応している特化型OCRがあり、拾いたい項目もそのOCRがカバーしている範囲で賄える場合は、特化型OCRを使うのが最も楽で馴染むソリューションになるでしょう。

まとめるとこんな感じです。

|項目|内容|
|:-----------|:------------|
|概要|特定の種類に特化したOCR|
|主な製品|Fast Accounting, LINE(Clova)OCR, SmartOCR, DX-Suiteも一部対応|
|対応している主な帳票|レシート、名刺、免許証、請求書、源泉徴収票など<br>（メーカーによって、対応している帳票の種類が異なる）|
|事前設定|不要。（該当の帳票に特化したモデルをすでにつくり込んだ状態で販売しているため）|
|強み|処理したい帳票に該当するOCRがあれば、最も楽に使える。|
|弱み|対象外の帳票には対応できない。<br>帳票自体は対象でも、OCRが取得対象外としている項目は拾えない。<br>場所の特定を誤る場合がある。|
|こんなケースに向いている|処理したい帳票に対応した特化型OCRがあり、特化型OCRで拾いたい項目をすべて拾える場合|

※ 弱みで場所特定の問題を書いていますが、場所特定の誤りは特化型OCRに限らず、非定型に対応しているOCRでは必ず起こり得る問題です。
詳細は以下の記事をご参照ください。

[【リンク】非定型OCRを正しく知って、上手に付き合おう　～定型OCRにはない、非定型OCR固有の課題～](https://qiita.com/IQ_Bocchi/items/c13576bed6d2999a9948)

## 3.個別開発AI

フォーマットが固定でなく、特化型OCRも対応していないような領域の帳票に対して、個別にAIを作り込んで項目を取得するような完全カスタム形式のOCRです。

カスタムなので、他のOCRに比べ費用は高額になりがちです。
そのぶん、使いたいユースケースに合わせて柔軟な作り込みができます。

特化型が対応していない非定型帳票で、「コストをかけてでも、この帳票を自動処理できれば業務が大幅に効率化する！」という帳票がある場合には最も適したソリューションといえるでしょう。

まとめるとこんなかんじです。

|項目|内容|
|:-----------|:------------|
|概要|個別の帳票に対して、カスタムメイドのAIを作って項目を取得するOCR|
|主な製品|Flax Scanner|
|対応している主な帳票|実現性や難易度の差はあるが、カスタムなので基本的にはあらゆる帳票に対応可能|
|事前設定|個別の帳票に特化したAIの作り込みが必要。AIを作り込むのはエンジニアの仕事だが、ユーザー側でもサンプル帳票提供などの協力は必要。|
|強み|カスタムメイドのため、最も幅広な帳票に対応できる。|
|弱み|費用は他のOCRに比べて高額になりがち（カスタムメイドのため）。<br>場所の特定を誤る場合がある。|
|こんなケースに向いている|特化型が対応していない非定型帳票で、「コストをかけてでも、この帳票を自動処理できれば業務が大幅に効率化する！」という帳票がある場合|

※ 弱みで場所特定の問題を書いていますが、場所特定の誤りは特化型OCRに限らず、非定型に対応しているOCRでは必ず起こり得る問題です。
詳細は以下の記事をご参照ください。

[【リンク】非定型OCRを正しく知って、上手に付き合おう　～定型OCRにはない、非定型OCR固有の課題～](https://qiita.com/IQ_Bocchi/items/c13576bed6d2999a9948)

## 4.汎用準定型OCR

定型OCRでは対応できない。特化型OCRも対応していない
かといって、個別開発AIを作り込むほどの予算もない。あるいは一極集中で「コレ！」という帳票があるわけじゃなく、細かい紙業務がたくさんある。

……というような場合に、幅広く対応できる可能性があるのがこちらです。

定型OCRや特化型OCRと比べると精度は出にくい傾向にありますし、個別開発AIほどのカスタムな作り込みができるわけでもありません。

が、対応できる帳票の幅の広さと手軽さのバランスがうまくハマるケースであれば、適したソリューションといえるでしょう。

まとめるとこんなかんじです。

|項目|内容|
|:-----------|:------------|
|概要|準定型の帳票を、個別開発AIよりは軽い事前設定で自動処理できる|
|主な製品|IQ Bot|
|対応している主な帳票|請求書、注文書、見積書、貨物等の出荷指示書、部品表、勤怠管理表　など|
|事前設定|必要。ラベルと値の位置関係を定義する形式が一般的。|
|強み|定型OCRや特化型OCRが対応していない帳票に、個別開発AIよりは軽い設定で対応できる。<br>個別開発AIほどではないが、対応できる帳票の幅が広い。|
|弱み|定型OCRや特化型OCRに比べると、精度が出にくい。<br>完全な非定型には対応していない。<br>場所の特定を誤る場合がある。|
|こんなケースに向いている|定型OCRや特化型OCRが対応していない帳票を、個別開発AIよりは軽い作り込みで処理したい場合|

#まとめ：用途に合ったOCRを選ぼう

以上、OCRを4つの種類に整理して、それぞれの特徴を紹介しました。

ひとくちにOCRといっても、さまざまな種類があることがご理解いただけたでしょうか？

処理したい帳票や用途に応じて、最適なOCRを選択する一助としていただければ幸いです。