Tips & Tricks

縦方向または右から左のテキスト方向で PDF を OCR する方法

標準の OCR エンジンは、テキストがページ上で左から右に水平に配置されるという基本的な前提に基づいて構築されています。この仮定は、英語、スペイン語、フランス語、ドイツ語、およびほとんどのヨーロッパ言語に当てはまります。従来の段組で縦に配置された日本語のテキスト、文字が上から下に積み重なる中国語の記号、テキストが右から左に流れるアラビア語やヘブライ語の文書では完全に失敗します。これらの文書に対して標準 OCR を実行すると、文字は個別に認識されるものの、間違った順序で組み立てられた出力が生成され、結果が役に立たなくなります。

OCR PDF エンジンの非標準テキスト方向の処理能力は、最新世代の AI を活用した認識システムによって大幅に向上しました。これらのエンジンは、認識を試みる前にテキストの方向を検出し、読む方向を特定し、視覚的なレイアウトに関係なく論理的な読み取り順序を再構築します。英語の横引用を含む日本語記事など、テキストの方向が混在する文書の場合、エンジンはページの途中でモードを切り替えます。

How to OCR a PDF With Vertical or Right-to-Left Text Direction

OCR エンジンがテキストの方向を検出して処理する方法

最新の OCR エンジンは、テキスト領域を識別し、方向を決定し、読み取り方向によって分類するレイアウト分析ステップから始まります。横書きテキストの場合、エンジンはベースラインを検出し、それに沿って文字をグループ化します。縦書きテキストの場合、エンジンは縦軸を検出し、文字を列にグループ化します。右から左へのテキストの場合、エンジンは主要な文字セットを識別し、デフォルトの左から右への単語の順序を逆にします。

テキスト方向の検出は、いくつかの信号に依存します。特定の Unicode 文字範囲の存在は、可能性のある言語とその典型的なテキストの方向を示します。検出された文字の空間的配置は、文字が水平線を形成しているか垂直列を形成しているかに関係なく、レイアウトの証拠を提供します。文字境界ボックスのアスペクト比は 3 番目のシグナルを提供します。ラテン文字は通常、高さよりも幅が広いのに対し、CJK 文字はほぼ正方形で、アラビア文字は読み取り方向がわかるように水平方向につながっています。

最も信頼性の高い OCR エンジンは、3 つの信号タイプをすべて組み合わせています。右から左へ読むことを意味するアラビア文字と、左から右へ読むことを意味するラテン文字の両方を含むドキュメントでは、エンジンが各テキスト領域を個別に分析する必要があります。多言語ドキュメント用に正しく構成されたPDF データの抽出 パイプラインには、単一の方向をページ全体に適用するのではなく、領域ごとの方向検出が含まれています。

各書記体系では、基本的に異なる OCR 構成が必要です。

WukongPDF

PDF OCRを試してみる

インストールは必要ありません。ブラウザで直接動作します。

始める →

日本語、中国語、韓国語の縦書きテキストの OCR 設定

縦書きと呼ばれる日本語の縦書きテキストは、現代で最も一般的に使用されている縦書きシステムです。小説、新聞、伝統的な文書、正式な通信などに登場します。縦書きの日本語では、文字は上から下に読まれ、列はページ全体で右から左に進みます。日本語の縦書きテキストに埋め込まれた数字やラテン文字の単語は、縦の流れの中で回転したり、横に配置したりすることができます。

日本語の縦書きテキストを OCR するには、明示的に縦書きをサポートする認識エンジンを選択します。汎用 OCR エンジンは文字を正しく検出する可能性がありますが、文字を左から右の水平方向の順序で出力するため、文字化けが生じます。日本語固有の OCR エンジンは列ベースの読み取り順序を理解し、自然に読めるテキストを出力します。オープンソース OCR エンジンである Tesseract は、バージョン 5 で改善された垂直方向の日本語サポートを追加し、現在いくつかの商用エンジンがそれを提供しています。

伝統的な出版物、書道、一部の正式な文書に使用される中国語の縦書きテキストの場合、認識の課題は同様ですが、文字セットはより大きくなります。簡体字中国語では一般的に使用される約 7,000 文字が使用されますが、繁体字中国語では 13,000 以上の文字が使用されます。 OCR エンジンは、垂直レイアウトを検出するだけでなく、ストロークの詳細のみが異なる視覚的に類似した文字を区別する必要があります。

韓国語の縦書きテキストは、現代の文書ではまれですが、歴史文書や一部の伝統的な出版物では使用されます。韓国語のアルファベットであるハングルは、個々の文字を音節ブロックに組み立てます。縦書きでは、これらのブロックが上から下に積み重ねられます。韓国語の縦書きテキストを処理する OCR エンジンは、音節ブロック構造と各ブロック内の個々の文字コンポーネントを認識する必要があります。

アラビア語、ヘブライ語、ペルシア語の右から左へ記述するテキストの OCR 設定

アラビア語 OCR には、テキストの方向以外にも独特の課題があります。アラビア語は筆記体であり、ほとんどの文字が隣の文字とつながっており、文字の形は語頭、中間、末尾、孤立など、単語内の位置に応じて変化します。 OCR エンジンは、これらのコンテキスト形式を認識し、それらを正しい抽象文字にマップする必要があります。文字間の接続の欠落や誤った接続により、筆記体に特有の認識エラーが発生します。

ヘブライ語 OCR を選択すると、スクリプトは筆記体ではありませんが、文字の上、下、または内側に点とダッシュとして表示される niqqud と呼ばれる母音点が含まれます。これらの母音マークは小さく、通常、スキャン画像では 2 ~ 4 ピクセルであり、二値化中に簡単に失われます。 niqqud を明示的に処理しない OCR エンジンは、子音は正しく認識しますが、母音記号を省略し、人間の読者には理解できるものの、技術的には不完全なテキストを生成します。

ペルシア語とウルドゥー語は、文字が追加された拡張バージョンのアラビア文字を使用します。アラビア語のみでトレーニングされた OCR エンジンは、これらの追加文字を見逃したり、類似のアラビア文字として誤認識したりする可能性があります。これらの言語の OCR エンジンを選択する場合は、一般的なアラビア文字だけでなく、ドキュメントで使用する正確な言語とスクリプトのバリエーションのサポートが具体的にリストされていることを確認してください。

混合方向のドキュメントの処理

現実世界のドキュメントの多くは、同じページ上に複数のテキスト方向が混在しています。日本の技術論文には、縦書きの日本語本文、横書きの英語の図キャプション、および独自のレイアウト規則に従った数式が含まれる場合があります。アラビア語のビジネスレターには、右から左の本文の上に、英語の会社名と住所ブロックが左から右の形式で含まれる場合があります。

混合方向のドキュメントの場合、OCR の前処理ステップが重要です。文書はテキスト領域に分割する必要があり、認識を開始する前に各領域をテキストの方向に応じて個別に分類する必要があります。複雑なレイアウトの場合、手動で領域を選択すると、自動セグメンテーションよりも良い結果が得られることがよくあります。各テキスト領域の周囲に境界ボックスを描画し、各ボックスに正しい言語と方向を割り当てます。

OCR 後、方向の境界を越えるテキストをチェックして出力を検証します。混合方向 OCR でよくあるエラーは、2 つのテキスト領域間の境界が間違っているため、左から右への領域の最後の単語が右から左への領域の先頭に追加されたり、その逆が発生したりすることです。これらの境界領域をスポットチェックすると、混乱を招く出力を生成するレイアウト セグメンテーション エラーが検出されます。

非標準のテキスト方向に対する OCR 後の処理

OCR が完了した後、自然な読み順を生成するために、認識されたテキストの順序を変更する必要がある場合があります。一部の OCR エンジンは、縦書きの日本語テキストを認識された順序で、各列内で上から下に、列ごとに左から右に出力します。この順序は、元の読み取り順序 (右から左へ列ごと) と一致しません。列を並べ替える後処理ステップにより、正しい読み取り順序が生成されます。

英語用語が埋め込まれたアラビア語の双方向テキストを含むスキャン PDF コンテンツを含むドキュメントの場合、Unicode 双方向アルゴリズムによって表示順序を決定する方法が指定されます。 OCR 出力には、双方向テキストをサポートするアプリケーションにテキストを貼り付けたときにテキストが正しく表示されるように、Unicode 双方向制御文字を含めるか、アルゴリズムに従う必要があります。

WukongPDF は、主要な右から左への書き込みシステムと縦書きシステムのサポートを含む言語選択オプションを備えた、スキャンされた PDF に対してブラウザを介した OCR 処理を提供します。ドキュメント全体を処理する前にサンプル ページで OCR をテストすると、テキストの方向が正しく処理されていることを確認できます。

同じページに縦書きと横書きの両方のテキストが含まれるドキュメント (主な記事が縦書きでキャプションとサイドバーが横書きになっている日本の雑誌のレイアウトなど) の場合、手動ゾーン分割により最も正確な OCR 結果が得られます。垂直領域と水平領域に個別の認識ゾーンを描画し、それぞれに正しいテキスト方向を割り当て、ゾーン化されたドキュメントで OCR を実行します。ゾーニングに費やした余分な時間は、認識精度に反映されます。

非標準のテキスト レイアウトを含む歴史的文書を処理する場合は、最新の印刷文書よりも OCR 精度が低くなることに備えてください。歴史的なフォント、不均一な印刷、変色した古い紙、標準外の文字の変化などはすべて、認識の信頼性を低下させます。学術的またはアーカイブ的な作業の場合、OCR 出力を完成品ではなく手動転写の開始点として扱います。

一部の OCR エンジンは、ドキュメントで使用されている特定のフォントまたは手書きスタイルの例を提供するトレーニング モードをサポートしています。いくつかの代表的なページでエンジンをトレーニングすると、ドキュメント全体の認識精度が向上します。このアプローチは、珍しい書体で印刷された文書や、複数の巻にわたってタイポグラフィが一貫している同じ出版社からの文書のコレクションに特に役立ちます。

右から左へ記述するドキュメントで OCR が完了したら、出力からいくつかの文をコピーし、Microsoft Word や Google ドキュメントなどの双方向テキストをサポートするアプリケーションに貼り付けて、テキストの方向が正しいことを確認します。テキストが逆の順序で表示される場合は、OCR エンジンが右から左の方向を正しく適用していないため、方向設定を修正して出力を再処理する必要があります。

非標準のテキスト方向に対して正しい OCR パラメータを設定するために費やした時間は、すぐに認識精度に反映されます。 OCR が不十分な場合に 30 分間の手動修正が必要な文書でも、OCR を適切に設定した後はクリーンアップに 5 分しかかからない場合があります。

ライティングシステム方向OCR エンジン要件主要な課題
Japanese (tategaki)上から下、右から左の列明示的なタテガキサポートを備えたエンジン縦の流れに横の英語が混じる
中国語(繁体字)垂直列、右から左へ大規模な文字セット (13,000 以上)見た目が似ているキャラクター
アラビア語右から左への筆記体の接続位置指定フォームを備えたアラビア語スクリプト エンジン状況に応じた文字の形状。発音記号
ヘブライ語右から左、niqqud あり母音をサポートするヘブライ語スクリプト エンジン二値化で失われる小さな母音記号
ペルシア語 / ウルドゥー語右から左への拡張アラビア語言語固有のエンジンアラビア語セット以外の追加文字
WukongPDF

PDF OCRを試してみる

インストールは必要ありません。ブラウザで直接動作します。

始める →