三流エンジニアの足掻き日記

自分の忘備録代わりにブログを始めました

文字照合 OCV(Optical Character Verification)技術の概要

はじめに

以前、OCV(Optical Character Verification)、いわゆる文字照合に関する アルゴリズムの開発で色々と試行錯誤していたので、 その忘備録としてこれから何回かに渡って残していきます。 今回は、OCVの概要と処理フローについての説明のみ。

OCVとは?

文字検査技術の一つ。有名な所では、OCVとOCR(Optical Character Recognition)などがあります。 OCVは、プリントされている文字と予め登録しておいた文字(テンプレート文字)の比較を行い、 一致率や合否判定を行う処理のことを言います。 文字の比較は通常、一文字ずつ切り出して、テンプレート文字と比較を行い、 もっとも一致率が高いものを正解とする処理になるかと思います。

OCVの処理フロー

Step1 : 画像データの前処理 → Step2 : 文字領域抽出 → Step3 : 文字照合

処理はざっくり言うと、この3stepになります。 Step1の画像データの前処理については、OCVに限らずどの画像処理でも必要となりますね。 フィルター処理(ノイズ除去)、二値化の基本的な処理が必要となります。 Step2の文字領域抽出については、Step1で前処理された画像から文字領域のみを抽出する処理です。 Step3の文字照合は、文字領域として抽出された画像とテンプレート文字の照合を行う処理です。

まとめ

各Stepにおいて、パラメータチューニングや 最適な手法を見つけるのにトライ&エラーが必要そうです。 また、照合したい文字の種類や縦書きなのか横書きなのかによっても やり方が変わってきそう。 各Stepについての実装は次回からやっていきます。 今回はここまで。