OCRとは?

OCRとは、「Optical Character Recognition(またはReader)/オプティカル・キャラクター・レコグニション(またはリーダー)」の略で、日本語では「光学的文字認識」と訳されます。簡潔にまとめると、紙や部品に印字された文字、また画像データ内のテキスト部分をコンピューターなどで扱える文字コードに変換する技術です。OCRを用いることで、パッケージに印字された「20XX.01.01」といった消費期限/賞味期限、部品に印字された「ABC123」のような品番、納品書に記載された「〇〇部品/〇〇個」といった納品内容や個数など、文字を自動で認識し、テキストデータ化できます。

通常であれば、紙に印刷された文字、また画像データ内の文字は、パソコンでは識別ができません。そのため、人間が文字を読み、判断し、パソコンにデジタルデータとして入力する必要がありました。OCR技術を活用すれば、この作業を自動化できます。また、人間による読み取りや入力のミスを防止でき、業務効率化が図れ、管理もしやすくなります。

現品票
現品票
食品賞味期限(段ボール)
食品賞味期限(段ボール)
作業指示書
作業指示書
薬品使用期限/製造番号
薬品使用期限/製造番号
プリント基板
プリント基板
重量計
重量計
似ているようで、ちょっと違う
「OCR(文字認識)」と「OCV(文字照合)」
OCRに似た技術として、OCV(Optical Character Verification/文字照合)があります。どちらも文字検査で用いられる技術ですが、予備知識なしに英数字などの文字を読み取るOCRに対して、OCVはあらかじめ登録した文字列(判定文字列)と比較して一致率や合否判定を行うものです。文字を読み取るという部分では同じですが、その過程や結果に違いがあります。
OCR(文字認識)
OCR(文字認識)
印字された文字を読み取り、デジタルデータとして扱えるようにする処理。
OCV(文字照合)
OCV(文字照合)
印字された文字を読み取り、登録された文字と比較し、正しいか合否判定を行う処理。

OCRの仕組み

OCRによる文字認識の仕組みについて説明します。手書きや印刷された文字は、スキャナやカメラで撮影し、画像データにしても通常は読み取ることができません。そこでコンピューターなどで利用できるデジタルの文字コードに変換する必要があります。この“デジタルの文字コードに変換する”という処理がOCRに該当します。こちらでは、より身近なものとして、新聞や雑誌、書類などの紙媒体を例にOCRの仕組みを解説します。

画像データ化

画像データ化
最初に新聞や雑誌、書類に印字された文字を画像データとして取り込む必要があります。そこでスキャナやカメラで画像データ化します。そのほか、商品パッケージや部品に直接印字されたものなども同様で、ハンディターミナルで取り込むことが可能です。

レイアウト解析

レイアウト解析
新聞や雑誌、書類などは、文字が単純に並んでいるわけではなく、見出しや段組み、図表などが入っています。そこで文字と画像を分離し、そこから文字がどのように配置されているのかを解析し、文字認識する部分や順序などを判定します。

認識[行や文字の切り出し/文字認識]

認識[行や文字の切り出し/文字認識]
レイアウト解析で抽出した文字領域のかたまりを1行ごとに分解し、行として切り出す処理を行います。さらに分解された行から1文字ずつ文字を切り出し、各文字の認識を行います。

フォーマット出力

フォーマット出力
文字認識が完了すると、パソコンなどで扱えるデジタルの文字コードとして出力します。その際に、ExcelやWord、PDFなど、デジタルデータとして再利用できるようフォーマット形式で出力します。

OCR(文字認識)とバーコード読み取りの違い

OCRは、手書きや印字された文字を読み取り、文字コードに変換する技術です。それに対して、バーコードリーダーは、高速かつ正確にデータを機械で読み取るために生まれた技術および読み取り機器の名称です。OCRは、さまざまな文字を認識できる一方、記述方法(フォント)が無数にあり、バーコードのようにバー&スペースで一意に決まらないので、それらすべてを正確に読み取ることが困難です。また、印刷品質によって読み取り率が大きく低下するばかりではなく、誤読が発生しやすいという課題もあります。

記述方法については、OCRで認識しやすい「OCR-A」「OCR-B」のようなフォントを使う、また誤読についてはチェックキャラクタを用いることで判断できますが、複数の文字を誤読した場合などはチェック漏れする危険性もあります。そのため、これまでは正確性の面からバーコードが一般的に使われてきました。しかし、現在ではOCRの進化に伴い、読み取り率も向上しています。OCRの現状や未来については、以下のページで詳しく紹介しています。

バーコード
バーコード
  • 機械で読み取ることが前提なので速い&正確
  • 読み取れるのはバーコードや2次元コートに限られる
OCR(文字認識)
OCR(文字認識)
  • さまざまな文字に対応、手書き文字でも読み取れ、デジタル化できる
  • 読み取りの精度や速度では、バーコードに劣ることも多い

文字列を読み取るときの注意点

OCRの場合、文字列の始まり/終わりが決まっていない。項目の境界が不明瞭だったり、マージンがなかったり、バーコードのように正確な読み取りが難しい。
文字列には、記述方法(フォント)が無数にあり、さらに手書きも含まれるため、読み取りが難しい場合がある
バーコードとは違い、類似判別が困難な文字がある。「0(ゼロ)」と「O(オー)」、「9」と「6」(逆から同じ)。「5」と「S」、「I(アイ)」と「1(イチ)」のように人の目でも間違いやすい。

ハンディターミナル活用ガイド トップへ戻る