レイアウト解析とは何か:読む順序を決める処理の完全整理

レイアウト解析とは、文書の一ページから見出しや本文、表、図、ヘッダーといった領域がどこにあるかを判別し、人が読むのと同じ順序でそれらの領域を並べる処理です。

文が入り乱れて出てくる理由

文が入り乱れて出てきます。

文書からテキストを取り出したのに内容が雑然と出てきた経験がおありかと思います。二段組みで編集された報告書で左の段と右の段の文が交互に混ざったり、表の中の値が本文の文の間に割り込んだりする形です。

原因は大半が読む順序にあります。ページを上から下へ、左から右へ走査する方式は、段が分かれた文書や表のある文書で即座に崩れます。人は見出しを見て段を認識し表を別個に扱いますが、この判断がなければ、いくら文字を正確に読んでも結果が役に立たなくなります。レイアウト解析はその判断を代わりに行う処理です。

レイアウト解析の正確な定義:文字認識と何が違うのか

文字認識とレイアウト解析、三つの軸の違い

第一に、対象が異なります。文字認識は文字を対象とします。レイアウト解析は文字が集まって成す領域と、それらの領域の配置を対象とします。

第二に、目標が異なります。文字認識の目標は正確に写し取ることです。レイアウト解析の目標は何がどこにあり、どの順序で読むべきかを定めることです。

第三に、成果指標が異なります。文字認識は文字精度で見ます。レイアウト解析は領域を漏れなく見つけたかと、領域の位置が正確かで見ます。ある公共文書の評価では、評価要素302個をすべて検出して検出精度100%を、位置精度も100%を記録した事例があります。

二つの処理は置き換えの関係にはありません。順序が定まって初めて認識の結果が意味を持ち、認識ができて初めて領域の内容が満たされます。実務のパイプラインではレイアウト解析を先に置き、その上に文字認識を載せます。

処理の過程に入る4つの判断

処理の過程に入る4つの判断

第一に、領域の種類を見分けます。見出しか本文か表か図かヘッダーかを判別します。同じ大きさの文字であっても、位置と周囲との関係によって役割が変わります。

第二に、領域の境界を定めます。どこまでが一つの表で、どこから次の段落かを分けます。罫線のない表や余白だけで区切られた段落で難易度が上がります。

第三に、読む順序を定めます。多段組みと挿入された図、脚注が混ざれば、人でも一瞬迷う順序を決める必要があります。

第四に、階層を立てます。どの節の見出しの下にどの本文が属するかを定めれば、以降の検索と構造化での活用度が大きく上がります。

レイアウト解析の実際の適用方法

前段に置いて性能を別に測ります

レイアウト解析はパイプラインの前の位置にあるため、ここで取りこぼした領域は後段で復旧されません。したがって性能を文字認識と分けて測定する必要があります。

測定する際には、領域をいくつ見つけたかと位置がどれだけ正確かを分けて見ます。検出はうまくいくのに表の内部の復元が弱い場合が実際によく現れるため、二つの値を一つの数値にまとめないでください。

文書の種類ごとに期待値を変えて置きます

単純な一段組みの文書では領域の判別が容易であり、高い値が出ます。多段組みの報告書や表の中に表が入った様式では同じ製品でも下がります。

したがって検証の文書には難易度の異なる文書を混ぜて構成してください。単純な文書だけで測定した値は導入後に再現されません。

国内環境におけるレイアウト解析

韓国の官公庁様式と申告書には固有の構造があります。多層のヘッダーを持つ表、丸数字で表記された項目番号、表の中に併記された記入方法の案内文が代表的です。案内文を本文と区別できなければ、構造化の結果が汚染されます。

実際の受付文書の状態も条件になります。スキャン時に折れた上部の黒い帯、複写を重ねて失われた余白、ファクスの再送で重なったヘッダーが領域の判別を難しくします。こうした文書を検証に含めて初めて、実際の性能が確認できます。

よくあるご質問

可能です。ただし順序の判定が難しい構造であるため、検証の文書に必ず含めてご確認ください。

本文と区別される要素として判別し、別に表示します。この区別がなければページごとに同じ文言が繰り返され、検索の品質が落ちます。

可能です。余白と揃えによって示された境界を判別します。ただし難易度が高いため検証の対象に含めてください。

領域をいくつ見つけたかと位置がどれだけ正確かを分けて測ってください。表の内部の復元は別の指標で確認する必要があります。

そのほうが適切です。順序と領域が定まって初めて認識の結果が意味を持ち、構造データへつながります。

関連用語