- スキャン画像または写真の前処理 スキャナーやデジタルカメラで取得した画像は、光学認識を行う前に多少の調整が必要になる場合があります。たとえば、ノイズの多い画像やテキスト行がゆがんだ画像では、光学認識を正しく行うために補正が必要になります。
- Document構造と書式を完全に復元する認識 Documentを認識する際には、Documentのさまざまなレイアウト要素 (テキスト、表、画像、区切り線など) が識別されます。Document合成の過程ではDocumentの論理構造が復元され、ページ合成によってDocumentの書式 (フォント、スタイルなど) も完全に復元されます。
- 編集可能な形式へのエクスポート 認識されたDocumentは、RTF や DOCX などの編集可能な形式で保存されます。
シナリオの実装
このトピックで提供するコードサンプルは、Windows 専用です。
ステップ 1. ABBYY FineReader Engine の読み込み
ステップ 1. ABBYY FineReader Engine の読み込み
ABBYY FineReader Engine を使用するには、まず Engine オブジェクトを作成する必要があります。Engine オブジェクトは ABBYY FineReader Engine のオブジェクト階層における最上位のオブジェクトであり、さまざまなグローバル設定、一部の処理メソッド、およびその他のオブジェクトを作成するためのメソッドを提供します。Engineオブジェクトを作成するには、InitializeEngine関数を使用します。Engineオブジェクトを読み込むその他の方法 (Win) も参照してください。
C#
C++ (COM)
ステップ 2. シナリオ用の設定を読み込む
ステップ 2. シナリオ用の設定を読み込む
ABBYY FineReader Engine では、このシナリオに最適なすべての処理設定を、Engine オブジェクトの LoadPredefinedProfile メソッドを使って読み込めます。このメソッドは、入力パラメーターとしてプロファイル名を受け取ります。詳しくは、プロファイルの操作 を参照してください。ABBYY FineReader Engine では、このシナリオ向けに 2 種類の設定が用意されています。
処理設定を変更する場合は、適切な Parameter オブジェクトを使用してください。詳しくは、以下の 特定のタスク向けの追加最適化 を参照してください。
プロファイル名 | 説明 |
|---|---|
DocumentConversion_Accuracy | この設定は精度重視で最適化されています:
|
DocumentConversion_Normal | この設定は処理速度重視で最適化されています:
|
C#
C++ (COM)
ステップ 3. 画像の読み込みと前処理
ステップ 3. 画像の読み込みと前処理
ABBYY FineReader Engine には、複数ページのDocumentを処理できる FRDocument オブジェクトが用意されています。このオブジェクトを使用すると、元のテキスト、段組み、フォント、スタイルなどを保持したまま、Documentの論理構造を維持できます。1 つのDocumentの画像を読み込んで前処理するには、FRDocument オブジェクトを作成し、そこに画像を追加する必要があります。方法は次のいずれかです。
- Engine オブジェクトの CreateFRDocumentFromImage メソッドを使用して FRDocument オブジェクトを作成します。このメソッドは FRDocument オブジェクトを作成し、指定したファイルから画像を読み込みます。
- Engine オブジェクトの CreateFRDocument メソッドを使用して FRDocument オブジェクトを作成し、その後、作成した FRDocument オブジェクトにファイルから画像を追加します (FRDocument オブジェクトの AddImageFile、AddImageFileWithPassword、または AddImageFileWithPasswordCallback メソッドを使用します) 。
C#
C++ (COM)
読み込んだ DocumentConversion_Normal プロファイルによる画像の前処理には、向きの検出は含まれていません。画像の向きを自動的に検出する場合は、追加のパラメーターを設定し、対応するオブジェクトを前処理関数に渡す必要があります。詳しくは、以下の 特定のタスク向けの追加最適化 を参照してください。
ステップ 4. Document認識
ステップ 4. Document認識
Documentを認識するには、FRDocument オブジェクトの解析メソッドと認識メソッドを使用することをお勧めします。このオブジェクトには、Documentの解析、認識、合成を行うためのさまざまなメソッドが用意されています。Documentの解析、認識、合成を 1 回で実行できる最も便利なメソッドは、Process メソッドです。このメソッドは、マルチプロセッサおよびマルチコアシステムの並列処理機能も最も効率的に活用します。一方、Preprocess、Analyze、Recognize、および Synthesize の各メソッドを使用して、前処理、解析、認識、合成を順に実行することもできます。
C#
C++ (COM)
ステップ 5. Documentのエクスポート
ステップ 5. Documentのエクスポート
認識したDocumentを保存するには、FRDocument オブジェクトの Export メソッドを使用し、パラメーターの 1 つとして FileExportFormatEnum 定数を指定します。対応するエクスポート オブジェクトを使用すると、エクスポートの既定のパラメーターを変更できます。詳しくは、以下の 特定のタスク向けの追加最適化 を参照してください。FRDocument オブジェクトの使用が完了したら、このオブジェクトが使用していたすべてのリソースを解放してください。IFRDocument::Close メソッドを使用します。
C#
C++ (COM)
ステップ 6. ABBYY FineReader Engine のアンロード
ステップ 6. ABBYY FineReader Engine のアンロード
ABBYY FineReader Engine での作業が完了したら、Engine オブジェクトをアンロードする必要があります。そのためには、エクスポート関数 DeinitializeEngine を使用します。
C#
C++ (COM)
必要なリソース
特定のタスク向けの追加の最適化
- スキャン - Windows のみ
- スキャン
Documentをスキャンするための ABBYY FineReader Engine のシナリオの説明です。
- スキャン
- 認識
- 前処理、解析、認識、および合成のパラメーターの調整
解析、認識、および合成のパラメーターオブジェクトを使用してDocument処理をカスタマイズします。 - 手書き文字を認識する
DocumentConversion_*** プロファイルには、手書き文字や手書きの活字体の認識は含まれていません。手書き文字を認識する必要がある場合は、PageAnalysisParams オブジェクトの DetectHandwritten プロパティを TRUE に設定します。 - PageProcessingParams Object
このオブジェクトでは、解析および認識のパラメーターをカスタマイズできます。このオブジェクトを使用すると、検出する画像およびテキストの特性 (反転画像、向き、バーコード、認識言語、認識エラーの許容範囲) を指定できます。 - SynthesisParamsForPage Object
このオブジェクトには、合成時にページの書式を復元するためのパラメーターが含まれています。 - SynthesisParamsForDocument Object
このオブジェクトでは、Document合成 (構造および書式の復元) をカスタマイズできます。 - MultiProcessingParams Object - Linux および Windows で実装
大量の画像を処理する場合、同時処理が役立つことがあります。この場合、画像のオープンと前処理、レイアウト解析、認識、エクスポートの各処理で負荷がプロセッサ コアに分散されるため、処理を高速化できます。
読み取りモード (同時または逐次) は、MultiProcessingMode プロパティを使用して設定します。RecognitionProcessesCount プロパティは、起動できるプロセス数を制御します。
- 前処理、解析、認識、および合成のパラメーターの調整
- エクスポート
- エクスポート パラメーターの調整
エクスポート パラメーター オブジェクトを使用してDocumentのエクスポートをカスタマイズします。 - RTFExportParams Object
このオブジェクトでは、RTF/DOCX/ODT 保存形式のパラメーターをカスタマイズできます。 - HTMLExportParams Object
このオブジェクトでは、HTML 形式へのエクスポートをカスタマイズできます。 - PPTExportParams Object
PPTX 保存形式のパラメーターをカスタマイズするためのオブジェクト。
- エクスポート パラメーターの調整
