テキスト認識の設定

関連:GUI テストおよびコンポーネント

このトピックでは、テキスト認識設定を構成する方法について説明します。

前提条件

アプリケーションで、検出または抽出するテキストの画像をキャプチャします。

先頭に戻る

テキストの特性の分析

テキストを取得する方法として、テキスト認識メカニズムではなく、テキスト(またはテキストのような)プロパティを使用できるかどうかを判断します。

OCR を使用するステップの実行は、プロパティ・ベースのオブジェクト認識を使用するステップの実行よりも時間がかかります。

先頭に戻る

使用する OCR エンジンを決定します

どの OCR 設定が最良の結果となるかを見出すために、アプリケーションで試す必要があるかもしれません。テストで最適に機能する OCR エンジンを決定したら、そのエンジンを一貫して使用することをお勧めします。実行ごとに異なるエンジンを使用すると、異なる結果が生成される場合があります。

OCR エンジンを選択するときは、次の点を考慮してください。

考慮事項 Google と Baidu(クラウド) ABBYY と Tesseract(非クラウド)
正確さ

ご使用のアプリケーションで最も正確であるという実績のある OCR エンジンを選択してください。

クラウド・ベンダは、さまざまな顧客プランで、さまざまなレベルの精度を提供しています。

可用性

クラウド OCR アカウントと利用可能なインターネット接続が必要です。

アカウントまたはインターネット接続は必要ありません。

言語サポート

Google Cloud OCR は言語を自動的に検出し、混合言語のテキストをサポートします。アプリケーション内で期待される言語を指定する必要はありません。既知の問題 - 多言語アプリケーションも参照してください。

Baidu OCR は、サポートする言語は ABBYY よりも少ないですが、中国語、日本語、韓国語などの象形文字を用いる言語で、精度と認識率が高くなります。

テキスト認識]表示枠で、Baidu と ABBYY で利用可能な言語のリストを確認してください。Baidu は、さまざまな言語を個別にサポートするか、中国語と英語を含むテキストをサポートします。既知の問題 - 多言語アプリケーションも参照してください。

ABBYY OCR は多くの言語をサポートしており、複数の言語をサポートするように設定でき、混合言語のテキストを認識できます。

Tesseract OCR エンジンを使用する場合、一度に 1 つの言語パックのみを使用できます。言語パックの詳細については、下記の言語を参照してください。

パフォーマンス

コンピュータの構成ではなく、インターネット接続の品質の影響を受けます。

クラウド・プラットフォーム・プランの影響を受けます。

強力なプロセッサが必要です。旧式のコンピュータでは、複雑な画像や多言語テキストの結果を提供するのに長い時間がかかる場合があります。

Tesseract OCR エンジンは、ABBYY OCR エンジンよりも処理に時間がかかります。テスト内にテキスト認識ステップ(GetVisibleText など)が多くある場合、これらのテストを実行するために必要な総時間が増えるので注意してください。

先頭に戻る

テキスト認識オプションの設定

[オプション]ダイアログ・ボックスの[テキスト認識]表示枠([ツール]>[オプション]>[GUI テスト]タブ>[テキスト認識]ノード)で、次のオプションを設定します。

テキスト認識オプション 手順の詳細
OCR エンジン・タイプ

次のいずれかのテキスト認識メカニズムを選択してください。

  • ABBYY OCR(標準設定のオプション)
  • Tesseract OCR エンジン
  • Google Cloud OCR エンジン
  • Baidu Cloud OCR エンジン

ABBYY OCR テキスト認識エンジンは、OpenText Functional Testing インストールに含めた場合にのみ使用できます。ABBYY がインストールされていない場合は、代わりに Tesseract が標準設定のエンジンとして使用されます。

クラウド OCR サービスへの接続の設定

クラウド OCR エンジンを使用するには、関連するベンダのアカウントを設定し、クラウド・サービスへの接続に使用するアクセス・トークンまたはキーを取得する必要があります。

  • アクセス・トークンまたはキーを入力します。
  • インターネット接続でプロキシが必要な場合は、プロキシ・サーバのアドレスと認証の詳細を指定します。
  • 接続テスト]を押して接続の詳細をテストし、OpenText Functional Testing がクラウド OCR サービスに接続できることを確認します。
テキスト認識モード

(ABBYY および Tesseract OCR エンジンのみ)

  • 単一テキスト・ブロック・モード:当該領域に焦点を合わせ、単一テキスト・ブロックとして扱います。このモードは、小さなオブジェクト上または小さなテキスト領域でテキストをキャプチャする場合に役立ちます。オブジェクトのテキストがフォント、サイズ、色、および背景に関して統一されている場合は、このオプションを選択します。

  • 複数テキスト・ブロック・モード:オブジェクト内で背景、フォント、およびサイズが異なる各テキスト領域を処理するよう OCR メカニズムに指示します。OCR メカニズムにより、内部アルゴリズムに従ってテキスト・ブロックをどこで分割するかが決定されます。このオプションを選択するのは、オブジェクト上のテキストがさまざまなフォント、フォント・サイズ、色、および/または背景で構成されている場合だけです。

言語

利用可能な言語とサポートされる言語(ABBYY OCR エンジンのみ)

利用可能な言語のリストから、テキスト認識でサポートする言語を 1 つ以上選択します。

言語タイプ(Baidu OCR エンジンのみ)

言語のリストから、テキスト認識でサポートする単一の言語を選択するか、[中国語と英語]を選択します。

現在の言語パック(Tesseract OCR エンジンのみ)

テキスト認識で使用する現在の言語パック。Tesseract エンジンを使用する場合、一度に 1 つの言語パックのみが使用できます。

Tesseract OCR エンジンのダウンロード・サイト(https://github.com/tesseract-ocr/tessdoc/blob/master/Data-Files.md#data-files-for-version-400-november-29-2016)から、追加の言語パックをダウンロードできます。ダウンロードしたら、ファイルを <Installdir>/dat/tessdata4.1 フォルダに追加します。

パターン・トレーニング

(ABBYY OCR エンジンのみ)

トレーニング済みパターンを使用する]をクリックすると、ABBYY OCR エンジンがアプリケーション内の通常とは異なる文字や不明瞭な文字を識別できるようになります。

トレーニング済みパターンの作成や、使用する既存のパターンの指定、既存のパターンの変更を行うことができます。

詳細については、テキスト認識の設定を参照してください。

プレビュー (ABBYY、Baidu、および Google OCR エンジンのみ)

このボタンをクリックすると、このタスクで設定したオプションに基づいて生成されるテキスト認識結果をプレビューできます。

詳細については、テキスト認識の設定の確認を参照してください。

テキスト認識用の記号 (Tesseract OCR エンジンのみ)OCR に認識させる文字のリストを入力します。テストを実行すると、指定した文字のみに対してテキスト認識が実行され、そのほかの文字はすべて無視されます。
ファイルの設定の使用

(Tesseract OCR エンジンのみ)外部で作成したファイルからテキスト認識設定をロードするように指定します。

ファイルの作成の詳細については、https://github.com/tesseract-ocr/tesseract/blob/master/doc/tesseract.1.asc を参照してください。

テキスト認識を使用する前に画像を前処理 テキスト認識を実行する前に背景画像を処理するように指定します。この方法では、テキスト認識を使用する前に画像要素が識別されます。

高速モードの有効化(Tesseract OCR エンジンのみ)

Tesseract エンジンには、OCR パフォーマンスを改善する高速モードが用意されています。これは、テキスト認識の精度を低下させる場合があります。

高速モード]オプションは UI で使用できなくなりました。高速モードは、OCR に使用されるデータ・ファイルで制御されるようになりました。

高速モードを有効にするには、次の手順を実行します。

  1. 高速モードの言語パックを Tesseract OCR エンジンサイト https://github.com/tesseract-ocr/tessdata_fast からダウンロードします。

  2. <Installdir>/dat/tessdata4.1 フォルダ内のファイルを、高速モード用の新しいファイルに置き換えます。

    注:後で高速モードを非アクティブにする場合に備えて、元のファイルは必ず保持しておいてください。

先頭に戻る

テキスト認識の設定の確認

プレビュー]ボタンを使用すると、テキスト認識オプションの設定で設定したテキスト認識オプションを検証して、設定を最適化できます。

Google または Baidu を使用してテキスト認識結果をプレビューするには、次の手順を実行します。

  1. [ツール]>[オプション]>[GUI テスト]タブ>[テキスト認識]ノードで、[プレビュー]ボタンをクリックします。
  2. [プレビュー]ダイアログ・ボックスで、[参照]をクリックしてアプリケーションの画像ファイルを選択し、[認識]をクリックします。
  3. 右側のボックスで認識結果を確認します。
  4. 必要に応じて、テキスト認識オプションを調整します。

ABBYY を使用してテキスト認識結果をプレビューするには、次の手順を実行します。

  1. [ツール]>[オプション]>[GUI テスト]タブ>[テキスト認識]ノードで、[プレビュー]ボタンをクリックします。
  2. [プレビュー]ダイアログ・ボックスで、[参照]をクリックしてアプリケーションの画像ファイルを選択します。
  3. OCR 設定のセットを選択またはカスタマイズしてから、[認識]をクリックします。

    OCR 設定セットと認識パラメータの詳細については、[プレビュー]表示枠([オプション]ダイアログ・ボックス>[GUI テスト]タブ>[テキスト認識])を参照してください。

  4. 選択またはカスタマイズした設定セットおよび[テキスト認識]表示枠で設定した OCR オプションに基づいて生成された認識結果を右側のボックスで確認します。
  5. 必要に応じて、テキスト認識設定を調整します。

    設定は、[オプション]ウィンドウでグローバルに調整することも、実行する特定のテストについてテスト自体でローカルに調整することもできます。

    テスト内のテスト実行についてローカルに調整するには、[スクリプトの生成]をクリックして、選択またはカスタマイズした ABBYY OCR パラメータ設定のセット(SetABBYYParameters ステップ)を生成してから、[スクリプトのコピー]をクリックして、テストにコピーします。

    ヒント:  

    • 同じテスト実行でテキストが取得済みの画像に ABBYY OCR パラメータ設定を適用する場合は、追加した SetABBYYParameters ステップの前に ClearOCRCache ステップを挿入します。

    • ResetABBYYParameters ステップを使用すると、テスト実行の一部に対して ABBYY OCR パラメータ設定を使用した後で、グローバルな ABBYY OCR 設定に戻ることができます。

先頭に戻る

ABBYY OCR パターン・トレーニング

ABBYY OCR エンジンをトレーニングして、アプリケーション内の通常とは異なる文字や不明瞭な文字を識別します。

文字を含む画像を提供し、さまざまな図形がどの文字を表すかを指定します。トレーニング済みパターンの作成や、使用する既存のパターンの指定、既存のパターンの変更を行うことができます。

注: パターン・トレーニングは、中国語、日本語、韓国語ではサポートされていません。テキスト認識にこれらの言語を選択した場合、[トレーニング済みパターンを使用する]オプションは使用できません。

トレーニング済みパターンを作成するには、次の手順を実行します。

  1. [ツール]>[オプション]>[GUI テスト]タブ>[テキスト認識]ノード:

    OCR メカニズム]で[Abbyy OCR]を選択し、[トレーニング済みパターンを使用する]をクリックしてパターン・トレーニング・オプションをアクティブ化します。

  2. (オプション)トレーニング済みパターンを保存する新規または既存の .ptn ファイルのパスを入力します。

    次のいずれかを実行します。

    • パスを手動で入力する。

    • 開く]をクリックし、既存のパターン・ファイルを参照する。

    • 新規]をクリックし、パターン・ファイルを作成するフォルダを参照する。

    パスを入力しない場合は、自動的に生成された名前と場所で新しいトレーニング済みパターン・ファイルが作成されます。

    既存のパターン・ファイルを指定する場合は、このファイルの現在の内容を上書きせずに、トレーニングしたパターンがファイルに追加されます。

  3. ユーザパターンのトレーニング]をクリックします。

  4. 参照]をクリックし、ABBYY が学習する文字を含む画像ファイルを選択します。

    次の画像ファイル・タイプがサポートされています。.jpg.jpeg.bmp.png

  5. ユーザパターンのトレーニング]をクリックします。[パターントレーニング]ダイアログ・ボックスが開き、文字が強調表示されます。

  6. 文字が正しく識別された場合は、[スキップ]をクリックして次の文字に移動します。

  7. 識別されない場合は、ダイアログ・ボックスの指示に従って文字の境界を調整し、どの文字であるかを識別して指定します。

    必要に応じて、画像内の連続する文字を強調表示し、それらが表す文字列を指定して、複合文字を作成できます。

  8. トレーニング]をクリックします。画像内の次の文字が表示されます。ファイルの最後までトレーニング手順を繰り返します。

    ヒント:  

    • 画像内のすべての文字を走査するには、時間がかかる場合があります。アプリケーションを複数の画像に分割することもできます。

    • 長時間のトレーニング・セッションや中断されたトレーニング・セッションの終了時など、予期しないエラー・メッセージが表示される場合があります。メッセージを閉じて無視するには、[OK]または[続行]をクリックしてください。

  9. プレビュー]オプションを使用してテキスト認識をテストします。詳細については、テキスト認識の設定の確認を参照してください。

使用する既存のパターンを指定するには、次の手順を実行します。 

  1. [ツール]>[オプション]>[GUI テスト]タブ>[テキスト認識]ノード:

    OCR メカニズム]で[Abbyy OCR]を選択し、[トレーニング済みパターンを使用する]をクリックしてパターン・トレーニング・オプションをアクティブ化します。

  2. 既存の .ptn ファイルのパスを入力するか、[開く]をクリックして既存のファイルを参照します。

  3. プレビュー]オプションを使用してテキスト認識をテストします。詳細については、テキスト認識の設定の確認を参照してください。

トレーニング済みパターンがすでにある場合は、オートメーション・スクリプトを使用して、テキスト認識に使用するトレーニング済みパターン・ファイルを指定することもできます。詳細については、『UFT One Automation Object Model Reference』の App.Options.PatternFileLocation プロパティを参照してください。

既存のパターンを編集するには、次の手順を実行します。 

  1. [ツール]>[オプション]>[GUI テスト]タブ>[テキスト認識]ノード:

    OCR メカニズム]で[Abbyy OCR]を選択し、[トレーニング済みパターンを使用する]をクリックしてパターン・トレーニング・オプションをアクティブ化します。

  2. 既存の .ptn ファイルのパスを入力するか、[開く]をクリックして既存のファイルを参照します。

  3. 編集]をクリックします。[ユーザーパターン]ダイアログ・ボックスが開きます。

  4. トレーニングした文字の画像の表示、文字のプロパティの変更、トレーニング・パターンからの文字の削除を行うことができます。

  5. プレビュー]オプションを使用してテキスト認識をテストします。詳細については、テキスト認識の設定の確認を参照してください。

注: [パターントレーニング]ダイアログ・ボックスと[ユーザーパターン]ダイアログ・ボックスは、ABBYY OCR の一部です。したがって、これらのダイアログ・ボックスは、OpenText Functional Testing に設定された言語ではなく、システムの言語で表示されます。

パターン・トレーニングの詳細については、ABBYY のドキュメントを参照してください。

先頭に戻る

その他の参照項目: