印影の重なった社名をOCRにかけると、印影と重なった部分が文字化けしたり、文字として認識できずに欠けてしまったりすることがあります。
例えば以下のサンプル帳票の右上の部分などです。
こうした部分を正しく読む方法として、ひとつは前処理で印影除去などをする方法があります。
ですが、前処理で印影除去を行った場合でも、もともと印影が重なっていなかった部分に比べると精度が下がる場合が多いです。
この記事では、もっと手軽にできてパワフルな、カスタムロジックを使って対応する方法を説明します。
##前提
この方法を使うためには、以下の条件が揃っている必要があります。
- 社名のうち、印影が重なっていない部分は正しく読めている
- その正しく読めた部分を根拠に、社名の全体が判断できる
たとえば以下のような場合です。
##やりかた
カスタムロジックに、以下の処理を入れます。
# 値を保存する変数: field_value
if "ふるさとエニ" in field_value:
field_value = "ふるさとエニウエア商事株式会社"
上記は取得結果に「ふるさとエニ」という文字列が含まれていたら、取得結果を「ふるさとエニウエア商事株式会社」に置き換えるという処理です。
"ふるさとエニ"と"ふるさとエニウエア商事株式会社"を置き換えるだけで、簡単に様々なケースに応用できます。
社名が特殊フォントで書かれている場合など、請求元の名称からはまともに情報がとれない場合もあります。
(特殊フォントは誤読したり、文字として認識できない場合が多い)
そのような場合は、振込先の口座名義などを根拠に検出する方法もとれます。