- 公開日
多言語の画像から文字を取り出すときは、OCRの文章だけを読んで正しさを判断せず、数字や固有名詞を元の画像の位置と対応させます。似た字形を区別できない箇所は未確定として残し、名称は発行元の文字資料などで照合します。文字の読取りが未確定のまま翻訳すると、自然な訳文の中で推測が見えなくなるためです。
OCRは、画像に写った文字をテキストへ変換する処理です。画像の字形、認識した文字、その文字列が指す実際の施設や人物は、別々の確認対象になります。読めた文字列がもっともらしい名称になっていても、意図された対象と一致するかは確かめる必要があります。
言語名だけでは、文字の取り違えを切り分けられない
多言語画像では、まず言語と文字体系を区別します。言語は日本語や英語など、文字体系は漢字、ひらがな、ラテン文字などのまとまりです。一つの言語が複数の文字体系を使うこともあり、ある文字体系を見つけただけでは言語を一意に決められません。
似た形の文字は、同じ体系の中にも、異なる体系の間にもあります。数字の0と英字のO、数字の1と英字のIや小文字のlなどは、書体や画像の解像度によって区別が難しくなります。見た目の似た文字を機械的に置換すると、施設名や製品コードなど、本来区別すべき表記を変えるおそれがあります。
Unicode Technical Standard #39のConfusable Detectionは、二つの文字列が視覚的に混同され得るかを判定する仕組みを示しています。同じ標準の後半では、字形が書体によって大きく異なることや、同じ文字体系の中での混同が利用者によって大きく変わることにも触れています。これは識別子のセキュリティを扱う標準であり、OCRの精度を測る資料ではありません。ここでは、見た目が似ていることと同じ文字であることを分ける根拠として参照します。
原画像に十分な情報があっても、そもそも同じように描かれた字形から、元データの文字コードまでは決められない場合があります。別文字かどうかが業務上重要なら、画像の拡大だけで判断を続けず、発行元のテキストや正式な名称一覧へ戻ります。
認識文を、画像の場所から切り離さない
読み取り結果を一つの長い文章へまとめると、どこから取った語かが分かりにくくなります。特に二言語の案内では、同じ内容の併記、別の注意書き、隣の欄の数字が混ざっていないかも確認します。最初に画像全体の配置を見てから、題名、場所、日時などの領域を対応させます。
Google Cloud VisionのOCR文書は、文字列と位置情報などの出力を説明しています。実際に使う製品でも、認識文と元の領域を結び付けられるかを確認すると、文字を差し戻す場所が明確になります。位置情報が取れない場合は、ページ名や「右下の日時欄」など、人が戻れる記述を添えます。
そのうえで、文字が小さい、反射がある、端が切れているなどの画質要因を点検します。Enterprise Document OCRの画像品質の説明にも、こうした要因が挙げられています。言語の取り違えに見えても、文字の一部が欠けていれば、設定変更より原画像の確保を先に進めます。
部分を切り出す場合は、周囲の行や見出しとの対応を失わないようにします。日時の数字だけを切り出すと、開場時刻なのか締切なのかが分からなくなるからです。元画像を確認用に保ち、切り出し画像はその派生物として区別します。
二言語の案内画像を照合する例
以下は、日本語と英語を併記した架空の会場案内です。画像やOCRを実際に処理した結果ではなく、照合方法を説明するための設定です。利用者は案内文を翻訳する前に、会場名、部屋番号、開始時刻を転記するものとします。
受領した画像には、日本語の「ナミ交流館」、英語の名称欄、部屋欄、時刻欄があるとします。英語の名称は一部がつぶれ、部屋欄は最後の字が読み分けにくい状態です。OCRの出力案と追加資料を、次のように対照します。
| 画像上の場所 | OCRの出力案 | 原画像と別資料の照合 | 採用する内容 |
|---|---|---|---|
| 上部の日本語名称 | ナミ交流館 | 原画像で同じ文字を読める | 画像の表記として残す |
| 日本語名称の下 | NANl HALL | 原画像の一部が不鮮明。発行元の同じ催事の文字資料はNAMI HALL | 対象と版が一致すると確認した文字資料を根拠にNAMI HALLを採用 |
| 中央の部屋欄 | Bl | 原画像ではB1/Blの判別が難しい。部屋一覧は未入手 | 部屋番号は未確定として残す |
| 右下の開始時刻 | IO:OO | 原画像の時刻欄では10:00と区別できる | 開始10:00と転記し、元の場所を残す |
この例では、英語名の訂正は「日本語から自然な英語名を考えた」結果ではありません。発行元の文字資料が同じ会場と催事を指すこと、古い案内ではないことを確認したという仮定に基づきます。OCR原文も残せば、どの資料を使って何を直したかを追えます。
一方、「Bl」を「B1」と直せば自然に見えても、部屋一覧がなければまだ候補です。数字と英字の置換規則を全体へ一括適用すると、部屋以外の正式名称まで変える可能性があります。判断は領域ごとに行い、区別できない一文字だけを保留します。
二言語の表記が食い違う場合も、一方を自動的に正しい原文と決めません。日本語側が旧版、英語側が更新済みという可能性もあります。発行元の最新版や修正通知を確認し、どちらを採用したかの根拠を残します。同じ画像内の二つの表記が一致しても、作成時に同じ誤りを複製した可能性は残ります。
言語ヒントは、確認してから使う
OCR製品によっては、対象の言語をヒントとして指定できます。ただし、画像に英語が少し含まれるからといって、全体を英語だけの文書として指定すればよいとは限りません。対象製品の対応言語、自動検出、複数言語の扱いを確認します。
前述のGoogle Cloud Vision文書は、自動検出が通常よい結果をもたらすと説明しつつ、既知の言語ヒントが役立つ場合と、誤ったヒントが認識を妨げる場合を挙げています。この説明を、あらゆるOCRに同じ設定があるという意味には広げません。
設定を見直すときは、元画像と確認する文字を固定し、設定変更前後でどこが変わったかを比べます。変化した文字を原画像や正式資料へ戻って確認し、文章が自然になっただけで改善と判断しないようにします。両方で同じ誤読が残る場合は、画像や文字資料の追加が必要です。
未確定文字を翻訳で埋めない
翻訳へ渡す情報は、確認した原文、OCRの出力案、未確定箇所を区別します。この例なら、「会場名:NAMI HALL、発行元資料で確認」「部屋:B1/Blの候補、未確認」「開始:10:00、原画像と照合」のように、根拠の違いを示します。
依頼は、たとえば次のようにできます。
「確認済みの日本語案内を英語へ翻訳してください。施設名は添付の正式表記を使い、未確定の部屋欄は推測で補わず、確認待ちと表示してください。OCR案から修正した箇所は、原画像または名称資料のどちらを根拠にしたかを別の確認欄へ残してください。」
ここで差し替えるのは翻訳方向、正式名称資料、未確定箇所です。送信先への入力が許される画像と資料だけを使い、出力後に数字、固有名詞、未確定表示が保たれているかを確認します。正式表記の固定は、画像の文字そのものを読み取れたという意味ではありません。
業務に渡す際は、確認できた本文を使いつつ、必要な場所や時刻が未確定なら案内の確定を保留します。担当者へは「部屋欄の最後の文字が1かlか判断できないため、最新版の部屋一覧か文字原稿が必要」と伝えます。未確定箇所を具体的に残せば、全文を作り直す前に必要な確認へ進めます。
画像・音声の認識結果を確かめる基本は、「画像・音声の認識結果は、原資料へ戻って確かめる」で解説しています。

