JP2014081938A - 光学式文字認識の為のセグメンテーションパラメータを選択及び表示するシステム及び方法 - Google Patents

光学式文字認識の為のセグメンテーションパラメータを選択及び表示するシステム及び方法 Download PDF

Info

Publication number
JP2014081938A
JP2014081938A JP2013215516A JP2013215516A JP2014081938A JP 2014081938 A JP2014081938 A JP 2014081938A JP 2013215516 A JP2013215516 A JP 2013215516A JP 2013215516 A JP2013215516 A JP 2013215516A JP 2014081938 A JP2014081938 A JP 2014081938A
Authority
JP
Japan
Prior art keywords
segmentation
character
user
computing devices
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013215516A
Other languages
English (en)
Other versions
JP5820451B2 (ja
Inventor
Zadeh Ali
ザデー アリ
Petry John
ペトリー ジョン
Kim Marie Steiner
マリー ステイナー キム
Patrick Shuman Steven
パトリック シューマン スティーブン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cognex Corp
Original Assignee
Cognex Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US13/653,948 external-priority patent/US9317767B2/en
Application filed by Cognex Corp filed Critical Cognex Corp
Publication of JP2014081938A publication Critical patent/JP2014081938A/ja
Application granted granted Critical
Publication of JP5820451B2 publication Critical patent/JP5820451B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/148Segmentation of character regions
    • G06V30/153Segmentation of character regions using recognition of characters or words
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/148Segmentation of character regions
    • G06V30/158Segmentation of character regions using character size, text spacings or pitch estimation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Character Input (AREA)

Abstract

【課題】光学式文字認識の為の少なくとも1つのセグメンテーションパラメータを選択する、コンピュータに実装される方法を提供する。
【解決手段】本方法は、1つ以上の文字を含む文字列を有する画像を受け取るステップを含んでよい。本方法は又、上記1つ以上の文字のそれぞれを識別する文字列を受け取るステップを含んでよい。本方法は又、少なくとも1つのセグメンテーションパラメータを自動的に生成するステップを含んでよい。本方法は又、上記文字列を有する上記画像に対するセグメンテーションを、上記少なくとも1つのセグメンテーションパラメータを使用して実行するステップを含んでよい。本方法は又、セグメンテーション結果が1つ以上の条件を満たすかどうかを判定するステップと、上記セグメンテーション結果が上記1つ以上の条件を満たす場合には上記少なくとも1つのセグメンテーションパラメータを選択するステップと、を含んでよい。
【選択図】図1

Description

関連出願の相互参照
本出願は、参照によりその内容全体が本明細書に組み込まれている、2012年11月21日に出願された米国特許出願第13/684,007号、並びに、2012年10月17日に出願された米国特許出願第13/653,948号の優先権を主張するものである。
本技術は、マシンビジョンのシステム及び方法に関し、特に、光学式文字認識のシステム及び方法に関する。
OCR技術は、多くのマシンビジョンシステムにおいて、各種製造工程に関連付けられたテキストを検出する為に用いられることが多い。しかしながら、所与のアプリケーションに応じてOCRパラメータをセットアップすることは極めて困難であり、特に、新規ユーザにとっては困難である。例えば、ユーザがOCR文字列の周囲の領域を選択して、セグメンタがそれらの文字を正しく見つけない場合、ユーザは、この問題のトラブルシューティングを手動で行おうとして困難に直面することが多い。システムインテグレータがあらかじめ問題を解決しておける多くのアプリケーションと異なり、OCRは、製造現場においてランタイムパラメータのトレーニングや修正を実施する為の技能者や技術者を必要とする可能性がある。こうしたことが起こりうるのは、新しい部品を導入する場合や、新しい印字又はラベルを使用する場合である。既存のシステムは、デフォルトのセグメンテーションパラメータで動作する場合には、セットアップがかなり容易となる可能性があるが、それで動作しない場合、ユーザは、調節が必要かもしれない20個から30個のパラメータのリストと向き合うことになる。これは、殆どのユーザの技能レベルを超えている。
一実装では、光学式文字認識の為の少なくとも1つのセグメンテーションパラメータを選択する、コンピュータに実装される方法を提供する。本方法は、1つ以上のコンピューティング装置を使用して、1つ以上の文字を含む文字列を有する画像を受け取るステップを含んでよい。本方法は又、上記1つ以上のコンピューティング装置を使用して、上記1つ以上の文字のそれぞれを識別する文字列を受け取るステップを含んでよい。本方法は又、上記1つ以上のコンピューティング装置を使用して、少なくとも1つのセグメンテーションパラメータを自動的に生成するステップを含んでよい。本方法は又、上記1つ以上のコンピューティング装置を使用して、上記文字列を有する上記画像に対するセグメンテーションを、上記少なくとも1つのセグメンテーションパラメータを使用して実行するステップを含んでよい。本方法は又、上記1つ以上のコンピューティング装置を使用して、セグメンテーション結果が1つ以上の条件を満たすかどうかを判定するステップと、上記セグメンテーション結果が上記1つ以上の条件を満たす場合に、上記少なくとも1つのセグメンテーションパラメータを選択するステップと、を含んでよい。本方法は又、上記1つ以上のコンピューティング装置において、上記画像の少なくとも一部分を表示するステップを含んでよい。
以下に挙げる機能のうちの1つ以上が含まれてよい。実施形態によっては、本方法は、上記1つ以上のコンピューティング装置を使用して、上記セグメンテーションに関連付けられたユーザ選択可能オプションを表示するステップであって、上記ユーザ選択可能オプションは、セグメンテーションが正しいか正しくないかをユーザが示すことを可能にするように構成された、上記ステップを含んでよい。本方法は又、上記1つ以上のコンピューティング装置を使用して、手動で生成されるセグメンテーションをユーザが手動で生成することを可能にするように構成されたユーザ選択可能オプションを表示するステップを含んでよい。本方法は又、上記1つ以上のコンピューティング装置を使用して、上記セグメンテーション結果を表示するステップを含んでよい。本方法は又、上記1つ以上のコンピューティング装置を使用して、上記少なくとも1つのセグメンテーションパラメータを表示するステップを含んでよい。実施形態によっては、上記少なくとも1つのセグメンテーションパラメータは、極性、行微調整、角度サーチ範囲、スキューサーチ範囲、正規化モード、ストローク幅、2値化閾値、境界断片、画素数、断片コントラスト閾値、文字高さ、文字幅、文字間ギャップ、文字内ギャップ、主行までの断片距離、断片マージモード、最小文字アスペクト、文字幅タイプ、解析モード、ピッチメトリック、ピッチタイプ、最小ピッチ、空白挿入、空白文字の幅のうちの1つ以上を含んでよい。本方法は又、上記1つ以上のコンピューティング装置を使用して、少なくとも1つのトレーニング済み画像を表示するステップを含んでよい。
別の実装では、コンピュータ可読記憶媒体に常駐するコンピュータプログラム製品を提供する。本コンピュータプログラム製品は、複数の命令がコンピュータ可読記憶媒体に記憶されていてよく、これらの命令は、処理装置によって実行された場合に、操作を処理装置に実行させる。操作は、1つ以上のコンピューティング装置を使用して、1つ以上の文字を含む文字列を有する画像を受け取るステップを含んでよい。操作は又、上記1つ以上のコンピューティング装置を使用して、上記1つ以上の文字のそれぞれを識別する文字列を受け取るステップを含んでよい。操作は又、上記1つ以上のコンピューティング装置を使用して、少なくとも1つのセグメンテーションパラメータを自動的に生成するステップを含んでよい。操作は又、上記1つ以上のコンピューティング装置を使用して、上記文字列を有する上記画像に対するセグメンテーションを、上記少なくとも1つのセグメンテーションパラメータを使用して実行するステップを含んでよい。操作は又、上記1つ以上のコンピューティング装置を使用して、セグメンテーション結果が1つ以上の条件を満たすかどうかを判定するステップと、上記セグメンテーション結果が上記1つ以上の条件を満たす場合に、上記少なくとも1つのセグメンテーションパラメータを選択するステップと、を含んでよい。操作は又、上記1つ以上のコンピューティング装置において、上記画像の少なくとも一部分を表示するステップを含んでよい。
以下に挙げる機能のうちの1つ以上が含まれてよい。実施形態によっては、操作は、上記1つ以上のコンピューティング装置を使用して、上記セグメンテーションに関連付けられたユーザ選択可能オプションを表示するステップであって、上記ユーザ選択可能オプションは、セグメンテーションが正しいか正しくないかをユーザが示すことを可能にするように構成された、上記ステップを含んでよい。操作は又、上記1つ以上のコンピューティング装置を使用して、手動で生成されるセグメンテーションをユーザが手動で生成することを可能にするように構成されたユーザ選択可能オプションを表示するステップを含んでよい。操作は又、上記1つ以上のコンピューティング装置を使用して、上記セグメンテーション結果を表示するステップを含んでよい。操作は又、上記1つ以上のコンピューティング装置を使用して、上記少なくとも1つのセグメンテーションパラメータを表示するステップを含んでよい。実施形態によっては、上記少なくとも1つのセグメンテーションパラメータは、極性、行微調整、角度サーチ範囲、スキューサーチ範囲、正規化モード、ストローク幅、2値化閾値、境界断片、画素数、断片コントラスト閾値、文字高さ、文字幅、文字間ギャップ、文字内ギャップ、主行までの断片距離、断片マージモード、最小文字アスペクト、文字幅タイプ、解析モード、ピッチメトリック、ピッチタイプ、最小ピッチ、空白挿入、空白文字の幅のうちの1つ以上を含んでよい。操作は又、上記1つ以上のコンピューティング装置を使用して、少なくとも1つのトレーニング済み画像を表示するステップを含んでよい。
別の実装では、1つ以上の処理装置を有するコンピューティングシステムを提供する。上記1つ以上の処理装置は、1つ以上の文字を含む文字列を有する画像を受け取るように構成されてよい。上記1つ以上の処理装置は、上記1つ以上の文字のそれぞれを識別する文字列を受け取るように構成されてよい。上記1つ以上の処理装置は、少なくとも1つのセグメンテーションパラメータを自動的に生成するように構成されてよい。上記1つ以上の処理装置は、上記文字列を有する上記画像に対するセグメンテーションを、上記少なくとも1つのセグメンテーションパラメータを使用して実行するように構成されてよい。上記1つ以上の処理装置は、セグメンテーション結果が1つ以上の条件を満たすかどうかを判定するように構成されてよく、上記セグメンテーション結果が上記1つ以上の条件を満たす場合に、上記少なくとも1つのセグメンテーションパラメータを選択するように構成されてよい。上記1つ以上の処理装置は、上記1つ以上のコンピューティング装置において、上記画像の少なくとも一部分を表示するように構成されてよい。
以下に挙げる機能のうちの1つ以上が含まれてよい。実施形態によっては、上記1つ以上の処理装置は、上記セグメンテーションに関連付けられたユーザ選択可能オプションを表示するように構成されてよく、上記ユーザ選択可能オプションは、セグメンテーションが正しいか正しくないかをユーザが示すことを可能にするように構成される。上記1つ以上の処理装置は、手動で生成されるセグメンテーションをユーザが手動で生成することを可能にするように構成されたユーザ選択可能オプションを表示するように構成されてよい。上記1つ以上の処理装置は、上記セグメンテーション結果を表示するように構成されてよい。上記1つ以上の処理装置は、上記少なくとも1つのセグメンテーションパラメータを表示するように構成されてよい。実施形態によっては、上記少なくとも1つのセグメンテーションパラメータは、極性、行微調整、角度サーチ範囲、スキューサーチ範囲、正規化モード、ストローク幅、2値化閾値、境界断片、画素数、断片コントラスト閾値、文字高さ、文字幅、文字間ギャップ、文字内ギャップ、主行までの断片距離、断片マージモード、最小文字アスペクト、文字幅タイプ、解析モード、ピッチメトリック、ピッチタイプ、最小ピッチ、空白挿入、空白文字の幅のうちの1つ以上を含んでよい。上記1つ以上の処理装置は、少なくとも1つのトレーニング済み画像を表示するように構成されてよい。
1つ以上の実装の詳細を、添付図面及び以下の説明において示す。それらの説明、図面、及び特許請求の範囲から、他の特徴及び利点が明らかになるであろう。
様々な図面における同様の参照記号は、同様の要素を示しうる。
分散コンピューティングネットワークと結合されたイメージングプロセスを示す図である。 図1のイメージングプロセスの一実施形態に対応するシステム図である。 図1のイメージングプロセスの一実施形態を表すフローチャートである。 図1のイメージングプロセスの一実施形態を表すフローチャートである。 図1のイメージングプロセスの一実施形態に関連付けられた画像を示す図である。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられた画像を示す図である。 図1のイメージングプロセスの一実施形態に関連付けられた画像を示す図である。 図1のイメージングプロセスの一実施形態に関連付けられた画像を示す図である。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられた画像を示す図である。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられた画像を示す図である。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられた画像を示す図である。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられた画像を示す図である。 図1のイメージングプロセスの一実施形態に関連付けられた画像を示す図である。 図1のイメージングプロセスの一実施形態に関連付けられた画像を示す図である。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられた線図である。 図1のイメージングプロセスの一実施形態に関連付けられた線図である。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられた画像を示す図である。 図1のイメージングプロセスの一実施形態に関連付けられた画像を示す図である。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。 図1のイメージングプロセスの一実施形態に関連付けられたグラフィカルユーザインタフェースである。
システム概要
本開示の実施形態を用いて、ユーザによる、所与のアプリケーション(例えば、マシンビジョンアプリケーション)の光学式文字認識パラメータのセットアップを支援することが可能である。一般に、アプリケーションに応じてOCRパラメータをセットアップすることは極めて困難であり、特に、新規ユーザにとっては困難である。例えば、ユーザがOCR文字列の周囲に領域を描画し、セグメンテーションプロセスがそれらの文字を正しく見つけない場合、ユーザは、その後どうするのが最良なのかわからない場合がある。そこで、本明細書に開示の実施形態を用いることにより、ユーザによるOCRパラメータのセットアップを、可能な限り自動的に支援することが可能である。本明細書に開示の実施形態は、OCR用セグメンテーションパラメータの選択に対するインタラクティブ/インクリメンタルなアプローチを含む。本明細書に開示の実施形態は又、セグメンテーション結果の均一性をチェックする機能と、特定の構成がその均一性を侵害する場合にはその構成を自動的に拒否する機能とを含む。本明細書に開示の実施形態は又、良好な文字の特定の統計的特性に基づく、セグメンテーションパラメータの自動選択を可能にする。
図1を参照すると、コンピュータ12に常駐可能であってコンピュータ12によって実行可能なイメージングプロセス10が示されており、コンピュータ12は、ネットワーク14(例えば、インターネット又はローカルエリアネットワーク)に接続可能である。コンピュータ12は、例えば、単一のサーバコンピュータ、一連のサーバコンピュータ、単一のパーソナルコンピュータ、一連のパーソナルコンピュータ、ミニコンピュータ、メインフレームコンピュータ、又はコンピューティングクラウドであってよいが、これらに限定されない。コンピュータ12の各種コンポーネントは、1つ以上のオペレーティングシステムを実行することが可能であり、それらは、例えば、Microsoft Windows Server(商標)、Novell Netware(商標)、Redhat Linux(商標)、Unix、又はカスタムオペレーティングシステムであってよいが、これらに限定されない。
イメージングプロセス10の命令セット及びサブルーチンは、コンピュータ12に結合された記憶装置16に記憶させることが可能であり、コンピュータ12に含まれる1つ以上の処理装置(図示せず)と1つ以上のメモリアーキテクチャ(図示せず)とによって実行可能である。記憶装置16は、ハードディスクドライブ、フラッシュドライブ、テープドライブ、光学式ドライブ、RAIDアレイ、ランダムアクセスメモリ(RAM)、又は読み出し専用メモリ(ROM)であってよいが、これらに限定されない。
ネットワーク14は、1つ以上の2次ネットワーク(例えば、ネットワーク18)に接続可能であり、例えば、ローカルエリアネットワーク、ワイドエリアネットワーク、又はイントラネットであってよいが、これらに限定されない。
イメージングプロセス10には、クライアントアプリケーション22、24、26、28を介してアクセス可能である。クライアントアプリケーション22、24、26、28は、例えば、標準的なウェブブラウザ、カスタマイズされたウェブブラウザ、又はカスタムアプリケーションであってよいが、これらに限定されない。クライアントアプリケーション22、24、26、28の命令セット及びサブルーチンは、クライアント電子機器38、40、42、44に(それぞれ)結合された記憶装置30、32、34、36に(それぞれ)記憶させることが可能であり、クライアント電子機器38、40、42、44に(それぞれ)組み込まれた1つ以上の処理装置(図示せず)及び1つ以上のメモリアーキテクチャ(図示せず)によって実行可能である。
記憶装置30、32、34、36は、例えば、ハードディスクドライブ、フラッシュドライブ、テープドライブ、光学式ドライブ、RAIDアレイ、ランダムアクセスメモリ(RAM)、及び読み出し専用メモリ(ROM)であってよいが、これらに限定されない。クライアント電子機器38、40、42、44は、例えば、パーソナルコンピュータ38、ラップトップコンピュータ40、スマートフォン42、ノートブックコンピュータ44、サーバ(図示せず)、データ対応セルラ電話(図示せず)、及び専用ネットワーク機器(図示せず)であってよいが、これらに限定されない。
クライアントアプリケーション22、24、26、28のうちの1つ以上を、イメージングプロセス10の機能の一部又は全てを実行するように構成してよい。従って、イメージングプロセス10は、純粋なサーバサイドアプリケーション、又は純粋なクライアントサイドアプリケーション、又は、クライアントアプリケーション22、24、26、28及びイメージングプロセス10のうちの1つ以上によって協調的に実行される、ハイブリッドサーバサイド/クライアントサイドアプリケーションであってよい。
ユーザ46、48、50、52は、コンピュータ12及びイメージングプロセス10には、ネットワーク14から直接、又は2次ネットワーク18からアクセスすることが可能である。更に、コンピュータ12は、点線のリンク線54で示されるように、2次ネットワーク18経由でネットワーク14に接続することが可能である。
ネットワーク14(又はネットワーク18)には、様々なクライアント電子機器を直接又は間接的に結合することが可能である。例えば、パーソナルコンピュータ38は、有線ネットワーク接続により、ネットワーク14と直接結合されているように図示されている。更に、ノートブックコンピュータ44は、有線ネットワーク接続により、ネットワーク18と直接結合されているように図示されている。ラップトップコンピュータ40は、ラップトップコンピュータ40と、ネットワーク14と直接結合されているように図示された無線アクセスポイント(即ち、WAP)58との間に確立された無線通信チャネル56により、ネットワーク14と無線結合されているように図示されている。WAP58は、例えば、ラップトップコンピュータ40とWAP58との間に無線通信チャネル56を確立することが可能な、IEEE 802.11a、802.11b、802.11g、Wi−Fi、及び/又はBluetoothの機器であってよい。スマートフォン42は、スマートフォン42と、ネットワーク14と直接結合されているように図示されたセルラネットワーク/ブリッジ62との間に確立された無線通信チャネル60により、ネットワーク14と無線結合されているように図示されている。
当該技術分野において知られているとおり、全てのIEEE 802.11x規格では、パス共有の為に、イーサネットプロトコル及びキャリア検知多重アクセス衝突回避(即ち、CSMA/CA)を用いることが可能である。各種の802.11x規格では、例えば、位相シフトキーイング(即ち、PSK)変調又は相補コードキーイング(即ち、CCK)変調を用いることが可能である。当該技術分野において知られているとおり、Bluetoothは、短距離無線接続を用いて、例えば、携帯電話、コンピュータ、及びスマートフォンの相互接続を可能にする電気通信業界規格である。
クライアント電子機器38、40、42、44は、それぞれがオペレーティングシステムを実行することが可能であり、そのオペレーティングシステムは、例えば、Apple iOS(商標)、Microsoft Windows(商標)、Android(商標)、Redhat Linux(商標)、又はカスタムオペレーティングシステムであってよいが、これらに限定されない。
次に図2を参照すると、イメージングプロセス10において使用されるように構成された、マシンビジョンシステム100を表す一例示的実施形態が示されている。代替実施形態においては、本開示の範囲から逸脱することなく、様々なシステム実装を採用できることに注目されたい。後で詳述するように、本明細書に記載のイメージングプロセス10の実施形態は、主に、所与の文字列に関連付けられた1つ以上の文字に対するセグメンテーションパラメータを自動的に調整することに用いることが可能である。本明細書に記載のイメージングプロセスは、検査工程の間の任意の好適な時点で用いることが可能である。例えば、実施形態によっては、イメージングプロセスの局面は、ライブオブジェクト画像又はランタイムオブジェクト画像の全地球測位/位置決めをオブジェクトのモデル画像又はトレーニング画像に対して実施することに続いて、且つ、ランタイムオブジェクト又はランタイムフィーチャの検査前、検査中、又は検査後において、発生しうる。
実施形態によっては、マシンビジョンシステム100は、イメージングデバイス110を含んでよく、このイメージングデバイスは、マシンビジョンアプリケーション112を実行することが可能なオンボード処理装置(図示せず)及びメモリ(図示せず)を含むカメラであってよい。カメライメージングデバイス110が、基底オブジェクト120の検査中に検出された感知障害に応答できるように、カメライメージングデバイス110に、適切なインタフェース、アラーム、及び信号を取り付けたり、且つ/又は、接続したりしてよい。この実施形態では、複数のオブジェクト(120)を収容しているコンベヤ122が示されている。これらのオブジェクトは、検査工程において、イメージングデバイス110の所定の視野(FOV)内を順に通過することが可能である。従って、イメージングデバイス110は、観察される各オブジェクト120の少なくとも1つの画像を取得できる。
実施形態によっては、従来のマイクロコンピュータ130は、任意の好適なコンピューティング装置(例えば、図1に示されたコンピュータ12)であってよい。コンピュータ130は、グラフィカルユーザインタフェースコンポーネント(例えば、マウス132、キーボード134、及びディスプレイ136)を含んでよい。他のタイプのインタフェースを用いてもよく、例えば、代替実施形態では、携帯型情報端末(PDA)を用いてよい。実施形態によっては、イメージングデバイス110をコンピュータ130に常時接続してよく、特に、コンピュータが画像処理機能を実行する場合には、そうしてよい。更に、且つ/又は、代替として、イメージングデバイス(例えば、Insight(登録商標)の製品群におけるイメージングデバイス)内の処理装置は、リモートコンピュータとの相互接続に関わらず、デバイスの独立動作を可能にすることができる。この実施形態では、コンピュータ130は、イメージングデバイス110のセットアップ、テスト、及びランタイム動作の分析の為に、デバイスと接続し、且つ/又は、デバイスと通信することが可能である。
実施形態によっては、モデル画像又はトレーニング画像に関連するデータ140を、コンピュータ130との接続を介してディスク記憶装置142に記憶させたり、イメージングデバイス110のオンボードメモリに記憶させたりすることが可能である。このデータは、イメージングプロセス10に関連付けられたデータを含んでよく、本開示の1つ以上の実施形態に従って使用可能である。
更に図3を参照すると、又、後で詳述するように、イメージングプロセス10は、1つ以上の文字を含む文字列を有する画像を受け取るステップ(302)を含んでよい。イメージングプロセス10は又、上記1つ以上の文字のそれぞれを識別する文字列を受け取るステップ(304)を含んでよい。イメージングプロセス10は又、少なくとも1つのセグメンテーションパラメータを自動的に生成するステップ(306)を含んでよい。イメージングプロセス10は又、上記少なくとも1つのセグメンテーションパラメータを使用して、上記文字列を有する上記画像に対してセグメンテーションを実行するステップ(308)を含んでよい。イメージングプロセス10は又、セグメンテーション結果が1つ以上の条件を満たすかどうかを判定するステップ(310)と、上記セグメンテーション結果が上記1つ以上の条件を満たす場合には上記少なくとも1つのセグメンテーションパラメータを選択するステップ(312)と、を含んでよい。イメージングプロセス10は又、上記1つ以上のコンピューティング装置において上記画像の少なくとも一部分を表示するステップ(314)を含んでよい。
本明細書に開示の実施形態は、マシンビジョン検査に関連付けられた光学式文字認識の、コンピュータに実装される方法を対象としている。実施形態によっては、イメージングプロセス10は、既存のアプローチの制限の多くに対処するように構成されてよい。例えば、既存のアプローチの幾つかは、複数のフォントの事前トレーニングを行い、多くのフォントをテストして、どのフォントが正しいかを判定することをOCRツールに行わせることによって、セットアップの問題に対処する。その後、他のパラメータ(セグメンテーションパラメータ用の値など)を推定することが可能である。このアプローチには制限がある。即ち、選択されるフォントが完全に一致しない可能性があり、そのため、パラメータの選択が次善のものになる可能性がある。
図4を参照すると、イメージングプロセス10の一実施形態を表すフローチャート400が示されている。図4に示されるように、イメージングプロセス10は、自動セグメンテーション機能並びに自動調整機能を有するインクリメンタルプロセスを利用することが可能である。実施形態によっては、イメージングプロセス10は、ユーザがユーザからの最小限の情報でOCRツールを繰り返しセットアップすることを可能にできる。その最終結果は、構成及びトレーニングが完全に行われたOCRツールである。従って、図4に示されるように、イメージングプロセス10は、1つ以上の文字を含む文字列を有する画像402を受け取ることが可能である。イメージングプロセス10は、イメージングプロセス10を「OCRMaxを実行(Run OCRMax)」オプション404により続行するオプションをユーザに提供することが可能である。イメージングプロセス10は又、セグメンテーションに関連付けられたユーザ選択可能オプション406を提示することが可能である。実施形態によっては、このユーザ選択可能オプションは、セグメンテーションが正しいか正しくないかをユーザが示すことを可能にするように構成されてよい。セグメンテーションが正しい場合、ユーザは、クラシフィケーションが正しいか正しくないかを示すオプション408を提供されてよい。クラシフィケーションが正しい場合、イメージングプロセス10は、自動調整414に進むことが可能である(これについては後で詳述する)。クラシフィケーションが正しくない場合、ユーザは、文字列を指定するオプション420を提供されてよい。
実施形態によっては、セグメンテーションが正しくない場合、イメージングプロセス10は、自動セグメンテーション機能410(これについては後で詳述する)を提供することが可能である。自動セグメンテーションの後、ユーザは、セグメンテーション結果が正しかったかどうかをオプション412で示すオプションを提供されてよい。正しいセグメンテーションが見つかった場合、イメージングプロセス10は、自動調整414を進めることが可能である。正しいセグメンテーションが見つからない場合、ユーザは、画像が不良かどうかを識別するオプションを提供されてよい。その場合、イメージングプロセス10は、それぞれが追加文字列を有する1つ以上の追加画像を受け取ることが可能である。そうでない場合、イメージングプロセス10は、ユーザがセグメンテーションを手動で生成することを可能にするように構成されたユーザ選択可能オプション424をユーザに提供することが可能である。
実施形態によっては、イメージングプロセス10により、最初の文字列及び追加文字列の一方又は両方を少なくとも部分的に使用して、文字のデータベースを生成することが可能である。イメージングプロセス10が、文字列に対するセグメンテーションが正しいことの通知を受け取った後、関連付けられた、セグメンテーションパラメータの正しいセットを今後の使用に備えて記憶することが可能である。従って、イメージングプロセス10は、セグメンテーションパラメータの正しいセットを今後の文字列に適用することが可能である。次に、セグメンテーションパラメータの正しいセットを調整して、使用すべき最適なセグメンテーションパラメータ値を1つ見つけることが可能である。次に、新しいフォント文字を抽出することが可能であり、クラシファイアをトレーニング及び使用することが可能である。このようにして、イメージングプロセス10は、フォントが完全にトレーニングされて、現在のセグメンテーションパラメータが適正に動作しているという確信をユーザが得るまで、続行されてよい。これらのフォント及びセグメンテーションパラメータはコピー可能であり、自動調整プロセスは進めてよい。
実施形態によっては、イメージングプロセス10は、ユーザがOCRツールのセットアップ時に直面する可能性のある問題の多くに対処することが可能である。運用時に、ユーザが画像内の文字列の周囲に領域を描画し、デフォルトのセグメンテーションパラメータが正しく動作しない場合、普通のユーザであれば、正しいセグメンテーションの為にはどのパラメータを変更すべきかを判断するのに苦労する可能性がある。例えば、既存のシステムでは、セグメンテーションツールに様々なセグメンテーションパラメータが含まれている可能性があり、それらのそれぞれが手動による変更を必要とする可能性がある。図5に示された画像は、デフォルトのパラメータが複数の文字に対して正しくセグメンテーションを行うことに失敗した場合の一例を示している。
次に図6を参照すると、イメージングプロセス10に従って使用可能なグラフィカルユーザインタフェース600の一実施形態が示されている。運用時には、ユーザは、テキストフィールド602を使用して文字列を指定することが可能である。GUI600は、ユーザが自動セグメンテーション機能604を選択することによって自動セグメンテーションアルゴリズムを起動することを可能にできる。GUI600は又、ユーザが手動セグメンテーション機能606により手動セグメンテーションを実施することを可能にできる。
実施形態によっては、イメージングプロセス10に関連付けられた自動セグメンテーションアルゴリズムは、様々なセグメンテーションパラメータの組み合わせによって進めることが可能であり、且つ、文字列の長さと同じ数のセグメントを見つける複数のセグメンテーションパラメータ及びパラメータの組み合わせを探ることが可能である。これらのセグメンテーションパラメータについては、後で詳述する。本明細書に記載のように、少なくとも1つのセグメンテーションパラメータを文字列に適用するフレーズは、少なくとも1つのセグメンテーションパラメータを使用して、文字列の画像に対してセグメンテーションを実施することを意味する場合がある。
実施形態によっては、正しい数のセグメントを識別することに加えて、イメージングプロセス10は、文字列の不均一性に基づいて、特定の結果を拒否するように構成されてよい。例えば、複数の文字のASCII表現が与えられた場合、その文字列に、(例えば、狭いか、短いか、広い)特殊文字が含まれるかどうかを判定することが可能である。実施形態によっては、文字列に特殊文字が全く含まれない場合は、全ての領域の幅及び高さを同じサイズにする(又は所定の許容範囲内にする)必要があるが、その結果を拒否してもよい。文字列に特殊文字が含まれる場合は、個々の文字サイズが均一かどうかをチェックしてよい。不均一であり、拒否された結果の幾つかの例を、図7から図9に示す。
次に図10を参照すると、グラフィカルユーザインタフェース1000を表す一実施形態及び関連画像が示されている。従って、イメージングプロセス10に関連付けられた自動セグメンテーションアルゴリズムを実行して、図10に示されるように、おそらくは正しい1つ以上の結果を生成してユーザに示すことが可能である。運用時には、ユーザは、正しいと思われる1つの結果を選択し、GUI1000に関連付けられた「OK」アイコンを選択してよい。次に、アルゴリズムの第2の部分を進めてよい。このようにして、自動調整アルゴリズムは、この特定の画像に対して実行するのに最良且つ/又は最適なセグメンテーションパラメータを識別することが可能である。このモデルに現在のレコードを追加することが可能であり、それぞれの固有の文字を抽出することが可能であり、クラシフィケーションの為にフォントをトレーニングすることが可能である。図11に示された画像は、セグメンテーション及びクラシフィケーションが正しく行われた文字に対して、この操作の後にイメージングプロセス10を実行した結果を示している。
次に図12から図14を参照すると、グラフィカルユーザインタフェース1200から1400を表す実施形態が示されている。GUI1200は、この特定のフォントについて、イメージングプロセス10の間に抽出された文字を示している。セグメンテーションが次の画像に対して失敗した場合、ユーザは、図13から図14に示されるように、上述の操作のうちの1つ以上を繰り返すことが可能である。
次に図15から図16を参照すると、グラフィカルユーザインタフェース1500を表す実施形態が示されている。図15に示されるように、モデルに新しいレコードが追加されると、抽出されている最良のセグメンテーションパラメータは、新しいレコードだけでなく以前のレコードに対しても動作可能である。この例に示されるように、このフォントは、今や、図16に示された文字「−」を含んでいる。
実施形態によっては、イメージングプロセス10は、ユーザが特定の文字列を手動で編集することを可能にできる。この特定の例では、各領域の編集及び訂正を手動で行うと、自動セグメンテーションアルゴリズムが、それらの文字の確立された正しい領域に基づいて動作することが可能である。図17は、確立されたセグメンテーションパラメータによる正しいセグメンテーションが文字「8」に対して行われない場合の一例を示している。そこで、ユーザは、手動セグメンテーション機能1706を選択し、文字「8」の周囲の領域を調節することによって、図18に示されるように、文字全体を囲むことが可能である。「OK」を選択すると、各セグメントの正しい位置及びサイズが与えられた状態での自動セグメンテーションアルゴリズムの実行が可能になる。従って、イメージングプロセス10に関連付けられた自動セグメンテーションアルゴリズムは、セグメンテーションパラメータの様々な組み合わせを探り、これらを、図19から図20に示されるように、現在のレコードに対して適用することが可能である。(正しく、又は正しくなく)計算された各結果について、自動セグメンテーションアルゴリズムは、結果領域を、確立された正しい領域と比較することが可能である。
幾つかのありうるシナリオの1つとして、確立された正しい領域と結果領域との間の良好な一致を、ある許容範囲(例えば、デフォルトで80%の面積の重なり)において識別することが考えられるが、これには限定されない。この特定の例では、最小最大、画素数、幅、高さなど、多種多様な情報を、良好な要素として抽出することが可能である。インスタンスによっては、確立された正しい領域の中に存在しない領域が、結果の中に含まれてよい。この特定の例では、様々なデータを追加要素として抽出することが可能である。更に、且つ/又は、代替として、結果の中に存在しない領域が、確立された正しい領域の中に含まれてよい。この特定の例では、欠落している要素として、様々なデータを、黄金領域を用いて抽出し、良好な要素に追加することが可能である。更に、且つ/又は、代替として、この2者の間に不良な一致があってよい(例えば、重なる面積が許容範囲より少なくてもよい)。この特定の例では、確立された正しい領域を用いて、様々なデータを、良好な要素として抽出することが可能である。この統計データは、モデル内のレコードにある全ての統計データ(あれば)と組み合わせてよい。実施形態によっては、追加要素を排除して良好な要素を含むように、セグメンテーションパラメータを修正してよい。セグメンテーションパラメータの組み合わせによっては、全ての領域が、確立された正しい領域のそれと一致する結果が得られる可能性がある。最も良好に一致した結果を選択し、モデルに追加してよい。そして、最も正しいセグメンテーションパラメータを、フォント文字とともに抽出することが可能である。
実施形態によっては、モデル内のレコード数が増えるにつれ、モデル内のレコードの全ての文字を正常にクラシファイするのに最適な数のフォント文字を抽出することが可能になる。ある文字の第2のインスタンスが、トレーニングされた文字に対して変動が大きすぎる為に正しくクラシファイされない場合は、そのインスタンスをフォントに追加してよい。このようにして、ユーザは、自分のフォントが全てのレコードに対して動作することを確認することが可能である。
本明細書に記載のように、イメージングプロセス10は、1つ以上のセグメンテーションパラメータを含むことが可能である。幾つかのセグメンテーションパラメータには以下で説明するものが含まれてよいが、これらに限定されるものではなく、これらは、あくまで例として提示されており、網羅的な一覧であることを意図するものではない。
実施形態によっては、セグメンテーションパラメータは、極性を含んでよい。例えば、入力画像内の全ての文字の極性であってよい。
実施形態によっては、セグメンテーションパラメータは、例えば、行微調整モードを含んでよい。このモードは、使用すべき行微調整手法を指定することが可能である。行微調整モードは、クラシックモード又は標準であってよい。
実施形態によっては、セグメンテーションパラメータは、例えば、角度サーチ範囲を含んでよい。角度サーチ範囲は、度数では角度サーチ範囲の半分に対応してよい。これは、サーチ領域の角度に対して、行をサーチする範囲として使用される角度である。
実施形態によっては、セグメンテーションパラメータは、例えば、スキュー範囲を含んでよい。スキュー範囲は、度数ではスキューサーチ範囲の半分に対応してよい。これは、サーチ領域のスキューに対して、行をサーチすることが可能な範囲として使用されるスキューである。
実施形態によっては、セグメンテーションパラメータは、例えば、正規化モードを含んでよい。このモードは、入力画像を正規化することに用いる方法を指定することが可能である。これは、グローバル閾値処理、ローカル閾値処理、又はローカル高度に設定してよい。
実施形態によっては、セグメンテーションパラメータは、例えば、ストローク幅を含んでよい。ストローク幅は、画像の残り部分と同じストローク幅を有するように見えない全てのものを正規化画像から取り除くかどうかを指定することが可能である。これが有用になりうるのは、例えば、複数の文字が薄い縞状ノイズによって互いにつながっているように見える場合である。
実施形態によっては、セグメンテーションパラメータは、例えば、2値化閾値を含んでよい。2値化閾値は、正規化画像における、前景と背景との間を2値化する2値化閾値の計算に用いる修飾子を指定することが可能である。
実施形態によっては、セグメンテーションパラメータは、例えば、境界断片を含んでよい。境界断片は、サーチ領域のいずれかの境界に接触する断片があっても完全に無視するかどうかを指定することが可能である。
実施形態によっては、セグメンテーションパラメータは、断片画素数を含んでよく、例えば、文字断片が、文字に含まれうると見なされるべく有しうる前景(例えば、テキスト)画素の最小数を含んでよい。文字断片は、2値化画像内のブロブであってよい。
実施形態によっては、セグメンテーションパラメータは、例えば、文字がレポートされるべく有する必要がある前景(例えば、テキスト)画素の最小数を含んでよい。
実施形態によっては、セグメンテーションパラメータは、断片コントラスト閾値を含んでよく、例えば、断片が、文字に含まれうると見なされるべく、2値化閾値に対して有する必要がある(例えば、正規化画像グレーレベルでの)最小コントラスト量を含んでよい。
実施形態によっては、セグメンテーションパラメータは、文字高さを含んでよく、例えば、文字がレポートされるべく有する必要がある、文字のマーク矩形の最小高さ(画素数)を含んでよい。セグメンテーションパラメータは又、文字及び/又は文字行の最大高さを制限する為に最大文字高さ機能を使用するかどうかも含んでよい。セグメンテーションパラメータは又、文字のマーク矩形の最大許容可能高さ(画素数)も含んでよい。
実施形態によっては、セグメンテーションパラメータは、文字幅を含んでよく、例えば、文字がレポートされるべく有する必要がある、文字のマーク矩形の最小幅(画素数)を含んでよい。セグメンテーションパラメータは又、文字のマーク矩形の最大許容可能幅(画素数)も含んでよい。この値より幅広の文字があれば、広すぎない複数のピースに分割してよい。セグメンテーションパラメータは又、文字の最大幅を制限する為に最大文字幅機能を使用するかどうかも含んでよい。
実施形態によっては、セグメンテーションパラメータは、文字間ギャップを含んでよく、例えば、2つの文字の間に発生しうる最小ギャップサイズ(画素数)を含んでよい。2つの断片の間のギャップがこれより小さい場合、これらの断片は、同じ文字の一部と見なされなければならない。
実施形態によっては、セグメンテーションパラメータは、文字内ギャップを含んでよく、例えば、損傷した文字の場合であっても、1つの文字の中で発生しうる最大ギャップサイズ(画素数)を含んでよい。文字内ギャップが発生しうるのは、例えば、ドットマトリクス印刷における連続するドット列の間であり、或いは、かき傷によって損傷した活字の2つのピースの間である。この値より大きいギャップは、別々の2つの文字の間の区切りであると解釈できる。一方、この値以下のギャップは、別々の2つの文字の間の区切り、又は1つの文字の中のギャップのいずれかであると解釈できる。
実施形態によっては、セグメンテーションパラメータは、主行に対する断片距離を含んでよく、例えば、断片が文字の主行の外側に有しうる最大距離を、行高さの推定値に対するパーセンテージとして、含んでよい。
実施形態によっては、セグメンテーションパラメータは、文字断片マージモードを含んでよく、これは、例えば、「群(Group)」段階の間に2つの断片をマージして1つの文字にするかどうかを決定する為に使用されるモードを指定することが可能である。このモードは、「重なりが必要(requireOverlap)」に設定することが可能である(例えば、マージする文字断片同士は、水平方向に少なくとも1画素分重なっていなければならない)。このモードは又、「最小文字間ギャップを指定(specifyMinIntercharacterGap)」に指定することも可能である(例えば、間に水平方向のギャップがある文字断片同士をマージして複数の文字を形成することが可能である(但し、任意の2つの断片は、ギャップが「最小文字間ギャップ(minIntercharacterGap)」未満であればマージ可能である))。このモードは又、「ギャップを指定(specifyGaps)」に指定することも可能である(例えば、「最小文字間ギャップ(minIntercharacterGap)」及び「最大文字内ギャップ(maxIntracharacterGap)」の両方に基づいて2つの断片をマージする決定をすれば、間に水平方向のギャップがある文字断片同士をマージして複数の文字を形成することが可能である)。
実施形態によっては、セグメンテーションパラメータは、最小文字アスペクトを含んでよく、これは、例えば、幅広の文字を分割するかどうかを指定することが可能である。
実施形態によっては、セグメンテーションパラメータは、文字幅タイプを含んでよく、これは、例えば、フォントにおける文字の幅がどのように変動すると見込まれるかを指定することが可能である。なお、文字幅は、マーク矩形(例えば、インクの境界ボックス)の幅であり、(典型的にはマーク矩形の周囲のパディングを含むであろう)セル矩形の幅ではない。この幅タイプは、「不明(unknown)」、「固定(fixed)」、又は「可変(variable)」に設定することが可能である。
実施形態によっては、セグメンテーションパラメータは、解析モードを含んでよく、これは、例えば、「最小解析(minimal analysis)」を実施するか、「標準解析(standard analysis)」を実施するかを指定することが可能である。最小解析では、上述のパラメータに従って直接的なセグメンテーションを実施することが可能である。標準解析では、(例えば、文字間隔を含む)行全体の解析を実施して最適なセグメンテーションを決定する。
実施形態によっては、セグメンテーションパラメータは、ピッチメトリックを含んでよく、これは、例えば、文字の間隔(ピッチ)を指定することに用いることが可能である。なお、ピッチは、隣接する文字同士の(ほぼ)対応する場所の間の距離であり、1つの文字の末尾から次の文字の先頭までの距離(これは「文字間ギャップ(intercharacter gap)」と呼ばれる)ではない。これは、「未知(unknown)」、「左から左(leftToLeft)」、「中心から中心(centerToCenter)」、「右から右(rightToRight)」などに設定することが可能である。
実施形態によっては、セグメンテーションパラメータは、ピッチタイプを含んでよく、これは、例えば、個々のピッチ値がどのように変動すると見込まれるかを指定することが可能であり、ピッチ値は、ピッチメトリックで指定されるとおりに測定される。これは、「未知(unknown)」、「固定(fixed)」、「比例(proportional)」、又は「可変(variable)」に設定することが可能である。
実施形態によっては、セグメンテーションパラメータは、最小ピッチを含んでよく、これは、例えば、2つの文字の間で発生しうる最小ピッチを画素数で指定することが可能である(但し、ピッチは、ピッチメトリックで指定されるとおりに計算される)。
実施形態によっては、セグメンテーションパラメータは、空白挿入を含んでよく、これは、例えば、空白文字を他の文字間のギャップに挿入することの取り扱い方を指定することが可能である。これは、「空白無し(no space)」、「単一の空白(single space)」、又は「複数の空白(multiple spaces)」に設定することが可能である。
実施形態によっては、セグメンテーションパラメータは、空白文字の幅を含んでよく、これは、例えば、空白文字の最小幅を画素数で指定することが可能である。更に、且つ/又は、代替として、セグメンテーションパラメータは、空白文字の最大幅を含んでよく、これは、例えば、空白文字の最大幅を画素数で指定することが可能である。
実施形態によっては、セグメンテーションパラメータは、2つの文字断片が同じ文字の一部と見なされる為に必要な、2つの文字断片のx方向の重なり合いの最小フラクションを含んでよい。
実施形態によっては、セグメンテーションパラメータは、文字の最小許容可能アスペクトを含んでよい(但し、このアスペクトは、文字の行全体の高さを文字のマーク矩形の幅で割ったものとして定義される)。この値よりアスペクトが小さい文字(例えば、幅が広すぎる文字)は、幅が広すぎないピースに分割される。
実施形態によっては、イメージングプロセス10は、文字列が正しい場合のみ自動的にセグメンテーションを行い、不均一な結果は拒否するステップを含んでよい。イメージングプロセス10は又、与えられた文字列及び確立された正しい領域の文字のセグメンテーションを自動的に行うことが可能である。本明細書に記載のように、イメージングプロセス10は、モデルレコードにある所与のフォントをトレーニングするように構成されてよい。
実施形態によっては、イメージングプロセス10は、文字列の一例を含む新しい画像を受け取るステップと、その文字列の正しいセグメンテーション領域ではなく、その文字列の中の正しい文字を識別する文字列を受け取るステップと、を含んでよい。イメージングプロセス10は、その文字列の画像の可能なセグメンテーションを、セグメンテーションパラメータの様々なセットを用いて自動的に生成するように構成されてよい。イメージングプロセス10は、それぞれが候補セグメンテーションパラメータと関連している、文字列の中の可能な正しいセグメンテーションの中から選択することが可能であり、選択された、文字列の中の正しいセグメンテーションのセグメンテーションパラメータを光学式文字認識に使用することが可能である。
実施形態によっては、イメージングプロセス10は、文字列の一例を含む新しい画像を受け取るステップと、その文字列の正しいセグメンテーションではなく、その文字列の中の正しい文字を識別するステップと、を含んでよい。イメージングプロセス10は、セグメンテーションパラメータの候補セットと、その文字列の画像のセグメンテーション結果とを、自動的に生成することが可能である。イメージングプロセス10は、それぞれが候補セグメンテーションパラメータと関連している、文字列の中の可能な正しいセグメンテーションの中から選択することが可能であり、全ての候補結果をサーチし、それらのセグメンテーション領域を、ユーザが選択したもののセグメンテーション領域と比較し、特定パーセンテージ以内で同様の領域を生成するセグメンテーションパラメータを識別することが可能である。イメージングプロセス10は、見つかった全てのセグメンテーションパラメータに加えて、モデル内の文字列のセグメンテーションが正しい、選択された画像を記憶することが可能である。イメージングプロセス10は、セグメンテーションパラメータが一意に選択されるまで、又は最適に見つかるまで、上述の操作を繰り返すことが可能である。
実施形態によっては、イメージングプロセス10は、文字列の一例を含む新しい画像を受け取るステップと、その文字列の正しいセグメンテーションではなく、その文字列の中の正しい文字を識別するステップと、を含んでよい。イメージングプロセス10は、セグメンテーションパラメータの候補セットと、その文字列の画像のセグメンテーション結果とを、自動的に生成するように構成されてよい。イメージングプロセス10は、それぞれが候補セグメンテーションパラメータと関連している、文字列の中の可能な正しいセグメンテーションの中から選択することが可能である。上述の選択がいずれも正しくない場合、イメージングプロセス10は、文字列に対して正しいセグメンテーションを行い、その正しいセグメンテーションがなされた文字列に対してセグメンテーションパラメータを自動的に決定することが可能である。イメージングプロセス10は、見つかった全てのセグメンテーションパラメータに加えて、モデル内の文字列のセグメンテーションが正しい、選択された画像を記憶することが可能である。イメージングプロセス10は、セグメンテーションパラメータが一意に選択されるまで、又は最適に見つかるまで、上述の操作を繰り返すことが可能である。
実施形態によっては、イメージングプロセス10は、様々なセグメンテーションパラメータを試行するステップと、文字列の長さと同じ数のセグメントを有する結果を生成するステップと、を含んでよい。イメージングプロセス10は、文字列内の文字のASCII表現に対して、均一性基準を満たさない可能な結果を拒否することが可能である。イメージングプロセス10は、文字列の画像の可能なセグメンテーションのベクトルと、関連付けられた候補セグメンテーションパラメータとを生成することが可能である。
実施形態によっては、イメージングプロセス10は、既に見つかっている全てのセグメンテーションパラメータに加えて、文字列のセグメンテーションが正しい画像のベクトルを受け取ることが可能である。イメージングプロセス10は、既に見つかっている全てのセグメンテーションパラメータを試行し、文字列の長さと同じ数のセグメントを有する結果を生成することが可能である。イメージングプロセス10は、文字列内の文字のASCII表現に対して、均一性基準を満たさない可能な結果を拒否することが可能である。イメージングプロセス10は、文字列の画像の可能なセグメンテーションのベクトルと、関連付けられた候補セグメンテーションパラメータとを生成することが可能である。
実施形態によっては、イメージングプロセス10は、既に見つかっている全てのセグメンテーションパラメータに加えて、文字列のセグメンテーションが正しい画像のベクトルを受け取ることが可能である。イメージングプロセス10は、既に見つかっている全てのセグメンテーションパラメータを試行し、文字列の長さと同じ数のセグメントを有する結果を生成することが可能である。成功しないセグメンテーションパラメータがあった場合、イメージングプロセス10は、以前の実行の統計データを用いてパラメータを調節し、反復の形で再試行することが可能である。イメージングプロセス10は、文字列内の文字のASCII表現に対して、均一性基準を満たさない可能な結果を拒否することが可能である。イメージングプロセス10は、記憶されているセグメンテーションパラメータを、セグメンテーションが正しい画像のベクトルに適用し、失敗したものを拒否することが可能である。イメージングプロセスは、文字列の画像の可能なセグメンテーションのベクトルと、関連付けられた候補セグメンテーションパラメータとを生成することが可能である。
実施形態によっては、イメージングプロセス10は、文字列のセグメンテーションが正しい画像のベクトルを受け取ることが可能である。イメージングプロセス10は、文字列のセグメンテーションが正しい画像のベクトルから、セグメンテーションパラメータの範囲を抽出することが可能である。幾つかの例として、文字幅、高さ、断片及び文字の画素数、文字間ギャップ、文字内ギャップなどの範囲が挙げられるが、これらに限定されない。イメージングプロセス10は、抽出された範囲の中で様々なセグメンテーションパラメータを試行し、文字列の長さと同じ数のセグメントを有する結果を生成することが可能である。イメージングプロセス10は、文字列内の文字のASCII表現に対して、均一性基準を満たさない可能な結果を拒否することが可能である。イメージングプロセス10は、記憶されているセグメンテーションパラメータを、セグメンテーションが正しい画像のベクトルに適用し、失敗したものを拒否することが可能である。イメージングプロセス10は、文字列の画像の可能なセグメンテーションのベクトルと、関連付けられた候補セグメンテーションパラメータとを生成することが可能である。
実施形態によっては、イメージングプロセス10は、文字列の一例を含む画像と、その文字列内の正しい文字と、その文字列の正しいセグメンテーションと、に対して、可能なセグメンテーションパラメータを自動的に生成するように構成されてよい。このようにして、イメージングプロセス10は、文字列の正しいセグメンテーションから、セグメンテーションパラメータの範囲を抽出することが可能である。幾つかの例として、文字幅、高さ、画素数、ピッチ、及び文字間ギャップの範囲が挙げられるが、これらに限定されない。イメージングプロセス10は、抽出された範囲の中で様々なセグメンテーションパラメータを試行し、文字列の正しいセグメンテーションの領域とほぼ(例えば、特定パーセンテージ以内で)一致する領域を有する結果だけを保持することが可能である。イメージングプロセス10は、文字列の画像の正しいセグメンテーションのベクトルと、関連付けられた正しいセグメンテーションパラメータとを生成することが可能である。
実施形態によっては、イメージングプロセス10は、既に見つかっている全てのセグメンテーションパラメータに加えて、文字列のセグメンテーションが正しい画像のベクトルを受け取るように構成されてよい。イメージングプロセス10は、既に見つかっている全てのセグメンテーションパラメータを試行し、文字列の正しいセグメンテーションの領域とほぼ(例えば、特定パーセンテージ以内で)一致する領域を有する結果だけを保持することが可能である。イメージングプロセス10は、文字列の画像の可能なセグメンテーションのベクトルと、関連付けられた候補セグメンテーションパラメータとを生成することが可能である。
実施形態によっては、イメージングプロセス10は、既に見つかっている全てのセグメンテーションパラメータに加えて、文字列のセグメンテーションが正しい画像のベクトルを受け取るように構成されてよい。イメージングプロセス10は、文字列の正しいセグメンテーションから、セグメンテーションパラメータの範囲を抽出するように構成されてよい。幾つかの例として、文字幅、高さ、画素数、ピッチ、及び文字間ギャップの範囲が挙げられるが、これらに限定されない。イメージングプロセス10は、既に見つかっている全てのセグメンテーションパラメータを、様々な解析及び正規化モード、前景閾値、幅タイプなどを追加することによって拡張することが可能である。イメージングプロセス10は、セグメンテーションパラメータを拡張し、文字列の正しいセグメンテーションの領域とほぼ(例えば、特定パーセンテージ以内で)一致する領域を有する結果だけを保持することが可能である。イメージングプロセス10は、文字列の画像の可能なセグメンテーションのベクトルと、関連付けられた候補セグメンテーションパラメータとを生成することが可能である。
実施形態によっては、イメージングプロセス10は、既に見つかっている全てのセグメンテーションパラメータに加えて、文字列のセグメンテーションが正しい画像のベクトルを受け取ることが可能である。イメージングプロセス10は、文字列の正しいセグメンテーションから、セグメンテーションパラメータの範囲を抽出するように構成されてよい。幾つかの例として、文字幅、高さ、画素数、ピッチ、及び文字間ギャップの範囲が挙げられるが、これらに限定されない。イメージングプロセス10は、既に見つかって拡張されている全てのセグメンテーションパラメータを試行し、文字列の正しいセグメンテーションの領域とほぼ(例えば、特定パーセンテージ以内で)一致する領域を有する結果だけを保持することが可能である。成功しないセグメンテーションパラメータがあった場合、イメージングプロセス10は、以前の実行の統計データを用いてパラメータを調節し、反復の形で再試行することが可能である。イメージングプロセス10は、記憶されているセグメンテーションパラメータを、セグメンテーションが正しい画像のベクトルに適用し、失敗したものを拒否することが可能である。イメージングプロセス10は、文字列の画像の可能なセグメンテーションのベクトルと、関連付けられた候補セグメンテーションパラメータとを生成することが可能である。
実施形態によっては、イメージングプロセス10は、文字列のセグメンテーションが正しい画像のベクトルを受け取ることが可能である。イメージングプロセス10は、文字列の正しいセグメンテーションから、セグメンテーションパラメータの範囲を抽出するように構成されてよい。幾つかの例として、文字幅、高さ、画素数、ピッチ、及び文字間ギャップの範囲が挙げられるが、これらに限定されない。イメージングプロセス10は、文字列のセグメンテーションが正しい画像のベクトルから、セグメンテーションパラメータの範囲を抽出するように構成されてよい。幾つかの例として、文字幅、高さ、断片及び文字の画素数、文字間ギャップ、文字内ギャップなどの範囲が挙げられるが、これらに限定されない。イメージングプロセス10は、抽出された範囲の中で様々なセグメンテーションパラメータを適用し、文字列の正しいセグメンテーションの領域とほぼ(例えば、特定パーセンテージ以内で)一致する領域を有する結果だけを保持することが可能である。イメージングプロセス10は、記憶されているセグメンテーションパラメータを、セグメンテーションが正しい画像のベクトルに適用し、失敗したものを拒否することが可能である。イメージングプロセス10は、文字列の画像の可能なセグメンテーションのベクトルと、関連付けられた候補セグメンテーションパラメータとを生成することが可能である。
実施形態によっては、イメージングプロセス10は、セグメンテーションアルゴリズムの以前の実行の統計データを用いてセグメンテーションパラメータを自動的に調節するステップを含んでよい。イメージングプロセス10は、文字列の一例を含む新しい画像を受け取るステップと、その文字列の正しいセグメンテーションではなく、その文字列の中の正しい文字を識別するステップと、を含んでよい。イメージングプロセス10は、セグメンテーションパラメータセットを供給し、セグメンテーションアルゴリズムを適用し、セグメンテーションがなされた領域の数を文字列の長さと比較することが可能である。セグメンテーションがなされた領域の数が文字列の長さより少ない場合、イメージングプロセス10は、拒否された要素をより多く含むように、セグメンテーションパラメータを調節することが可能である。セグメンテーションがなされた領域の数が文字列の長さより多い場合は、保持された要素をより多く排除するように、セグメンテーションパラメータを調節することが可能である。イメージングプロセス10は、最大反復回数にわたって、又は、同じ数のセグメントが見つかるまで、上述の操作の一部又は全てを繰り返すことが可能である。
実施形態によっては、イメージングプロセス10は、文字列の一例を含む新しい画像を受け取るステップと、その文字列の中の正しい文字、並びにその文字列の正しいセグメンテーションを識別するステップと、を含んでよい。イメージングプロセス10は、セグメンテーションパラメータセットを供給し、セグメンテーションアルゴリズムを適用し、セグメンテーションがなされた領域を正しいセグメンテーションの領域と比較することが可能である。幅、高さ、画素数、断片画素数、コントラストなどを含む統計データは、セグメントごとに抽出可能である。欠落しているセグメント(例えば、特定の場所において結果に存在しないセグメント)の統計データは、収集して群にすることが可能である。正しいセグメント(例えば、良好に重なり合うセグメント)の統計データは、この群に追加することが可能である。不良な結果(例えば、あまり良好に重ならない結果)の統計データは、文字列の正しいセグメンテーションから抽出し、群に追加することが可能である。追加セグメント(例えば、上記特定の場所において文字列の正しいセグメンテーションに存在しないセグメント)の統計データは、別個に収集することが可能である。セグメンテーションパラメータは、追加セグメントを排除し、その他の全てのセグメントを含むように調節することが可能である。イメージングプロセス10は、最大反復回数にわたって、又は、正しいセグメンテーションが見つかるまで、上述の操作の1つ以上を反復的に繰り返すことが可能である。
次に図21から図43を参照すると、イメージングプロセス10に関連付けられた様々なグラフィカルユーザインタフェースを表す実施形態が示されている。なお、本明細書に記載の様々な実施形態は、イメージングプロセス10の一般的概要を提示することを意図したものであり、具体的なグラフィカルユーザインタフェースは、例としてのみの提示であって、いかなる形でも本開示の範囲を限定することを意図したものではない。
実施形態によっては、現在の画像がロードされている場合、イメージングプロセス10は、実行されて、セグメンテーション及びクラシフィケーションの結果を正常なものとして表示することが可能である。セグメンテーション領域が正しいように見えない場合、ユーザは、文字列を入力してから、セグメンテーションを修正することを選択してよく、これに応じて、結果がユーザに返される。ユーザは、正しい結果を選択する。そして、ユーザは、現在のレコードを「自動調整モデル(Auto−Tune Model)」に追加するボタンを選択してよい。ユーザは、別の画像をロードしてよい。セグメンテーションがなされた領域が正しく、文字が正しくクラシファイされている場合、ユーザには、変更(セグメンテーションパラメータ、又はセグメンテーションパラメータとフォント)を受け入れるオプションが与えられてよい。
実施形態によっては、現在の画像がロードされている場合、イメージングプロセス10は、実行されて、セグメンテーション及びクラシフィケーションの結果を正常なものとして表示することが可能である。セグメンテーション領域が正しいように見えない場合、ユーザは、文字列を入力してから、セグメンテーションを修正することを選択してよく、これに応じて、結果がユーザに返される。ユーザは、正しい結果を選択する。そして、ユーザは、現在のレコードを「自動調整モデル(Auto−Tune Model)」に追加するボタンを選択してよい。ユーザは、別の画像をロードしてよい。セグメンテーションがなされた領域は正しいものの、文字が正しくクラシファイされていない場合、ユーザは、文字列を指定してから、クラシフィケーションを修正して結果を「自動調整モデル(Auto−Tune Model)」に追加することを選択してよい。ユーザは、別の画像をロードしてよい。セグメンテーションがなされた領域が正しく、文字が正しくクラシファイされている場合、ユーザには、変更(セグメンテーションパラメータ、又はセグメンテーションパラメータとフォント)を受け入れるオプションが与えられてよい。
実施形態によっては、現在の画像がロードされている場合、イメージングプロセス10は、実行されて、セグメンテーション及びクラシフィケーションの結果を正常なものとして表示することが可能である。セグメンテーション領域が正しいように見えない場合、ユーザは、文字列を入力してから、セグメンテーションを修正することを選択してよく、これに応じて、結果がユーザに返される。ユーザは、正しい結果を選択する。そして、ユーザは、現在のレコードを「自動調整モデル(Auto−Tune Model)」に追加するボタンを選択してよい。ユーザは、別の画像をロードしてよい。セグメンテーションがなされた領域が正しくない場合、ユーザは、新しい領域を指定することなく、上述のステップの一部又は全てを繰り返してよい。その後、ユーザは、別の画像をロードしてよい。領域が正しく、文字が正しくクラシファイされている場合、ユーザは、変更(セグメンテーションパラメータ、又はセグメンテーションパラメータとフォント)を受け入れることを選択してよい。
実施形態によっては、現在の画像がロードされている場合、イメージングプロセス10は、実行されて、セグメンテーション及びクラシフィケーションの結果を正常なものとして表示することが可能である。セグメンテーション領域が正しいように見えない場合、ユーザは、文字列を入力してから、セグメンテーションを修正することを選択してよく、これに応じて、結果がユーザに返される。結果が正しくなく、セグメンテーション領域を調節する必要がある場合、ユーザは、セグメンテーション領域を調節してから、そのレコードを「自動調整モデル(Auto−Tune Model)」に追加することを選択してよい。ユーザは、別の画像をロードしてよい。そして、領域が正しく、文字が正しくクラシファイされている場合、ユーザは、変更(セグメンテーションパラメータ、又はセグメンテーションパラメータとフォント)を受け入れることを決定してよい。
実施形態によっては、現在の画像がロードされている場合、イメージングプロセス10は、実行されて、セグメンテーション及びクラシフィケーションの結果を正常なものとして表示することが可能である。セグメンテーション領域が正しいように見えない場合、ユーザは、文字列を入力してから、セグメンテーションを修正することを選択してよく、これに応じて、結果がユーザに返される。ユーザは、正しい結果を選択してから、このレコードを「自動調整モデル(Auto−Tune Model)」に追加することを決定してよい。その後、ユーザは、別の画像をロードしてよい。そして、セグメンテーションがなされた領域が正しく、文字が正しくクラシファイされている場合、ユーザは、「拒否(Reject)」ボタンを選択することにより、自動調整パラメータを拒否してよい。
実施形態によっては、現在の画像がロードされている場合、イメージングプロセス10は、実行されて、セグメンテーション及びクラシフィケーションの結果を正常なものとして表示することが可能である。セグメンテーション領域が正しいように見えない場合、ユーザは、文字列を入力してから、セグメンテーションを修正することを選択してよく、これに応じて、結果がユーザに返される。ユーザは、正しい結果を選択してから、このレコードを「自動調整モデル(Auto−Tune Model)」に追加することを選択してよい。ユーザは、別の画像をロードしてよい。セグメンテーションがなされた領域が正しく、文字が正しくクラシファイされている場合、ユーザは、自動調整プロセスを完了する時間がないと判断する可能性があり、そこで、自動調整データを保存する為の「保存(Save)」ボタンが設けられてよい。
実施形態によっては、現在の画像がロードされている場合、イメージングプロセス10は、実行されて、セグメンテーション及びクラシフィケーションの結果を正常なものとして表示することが可能である。セグメンテーション領域が正しいように見えない場合、ユーザは、文字列を入力してから、セグメンテーションを修正することを選択してよく、これに応じて、結果がユーザに返される。ユーザは、正しい結果を選択してから、このレコードを「自動調整モデル(Auto−Tune Model)」に追加するボタンをヒットしてよい。ユーザは、別の画像をロードしてよい。そして、セグメンテーション領域が正しいように見えない場合、ユーザは、文字列を入力してから、セグメンテーションを修正することを選択してよい。この結果は、ユーザに返されてよい。ユーザは、正しい結果を選択してから、このレコードを「自動調整モデル(Auto−Tune Model)」に追加することを選択してよい。ここで、「自動調整モデル(Auto−Tune Model)」内の最初のレコードが新しいセグメンテーションパラメータで失敗した場合、ユーザは、「自動調整モデル(Auto−Tune Model)」内の最後の「自動調整レコード(Auto−Tune Record)」を選択してから、「削除(Delete)」ボタンを選択してよい。「自動調整モデル(Auto−Tune Model)」は、自動的に再調整されてよく、新しいセグメンテーションパラメータが計算される。ユーザは、別の画像をロードしてよい。セグメンテーションがなされた領域が正しく、文字が正しくクラシファイされている場合、ユーザは、変更(セグメンテーションパラメータ、又はセグメンテーションパラメータとフォント)を受け入れることを選択してよい。
次に図21を参照すると、ユーザが「自動調整(Auto−Tuning)」モードにある場合、イメージングプロセス10の実施形態は、普通に実行されて、セグメンテーション及びクラシフィケーションを実施してよい。従って、イメージングプロセス10は、セグメンテーション及びクラシフィケーションのグラフィックスを、図21に示されるように表示する。セグメンテーション領域又はクラシフィケーションが正しくない場合は、ユーザが「自動調整(Auto−Tuning)」モードにあるときの挙動が変化する。「自動調整(Auto Tuning)」は、図22に示されるように、ボタン又は他の好適なオプションを介して開始されてよい。図23に示されるように、ユーザが診断グラフィックスを見たい場合、ユーザは、表示中の情報に応じて、様々に着色された矩形で満たされた画像を見ることになる。例えば、図23に示されるように、拒否された断片の周囲の領域は、黄色で表示されてよく、文字の主線は青色で表示されてよい(図示せず)。図24は、拒否された文字を示している。更に、且つ/又は、代替として、図25に示されるように、保持された断片の周囲の領域は、シアンで表示されてよく、文字の主線は青色で表示されてよい。本開示の範囲から逸脱しない範囲で、他の様々な構成や方法を用いてよい。
実施形態によっては、イメージングプロセスは、新しい「診断(Diagnostics)」タブにおいては、「行データ(Line Data)」、「保持された断片(Kept Fragments)」、「拒否された断片(Rejected Fragments)」、「保持された文字(Kept Characters)」、及び「拒否された文字(Rejected Characters)」に関連する情報をユーザに対して表示することが可能である。例えば、「行データ(Line Data)」は、「角度(Angle)」、「スキュー(Skew)」、「最小/最大文字間ギャップ(画素数)(Min/Max Inter Char Gap (pixels))」、「最小/最大文字内ギャップ(画素数)(Min/Max Intra Char Gap (pixels))」、「最小/最大ピッチ(Min/Max Pitch)」などであってよいが、これらに限定されない。「保持された断片(Kept Fragments)」は、「最小/最大サイズ(画素数)(Min/Max Size (pixels))」、「最小/最大コントラスト(%)(Min/Max Contrast (%))」、「主線までの最大距離(%)(MaxDistanceToMainLine (%))」などであってよいが、これらに限定されない。「拒否された断片(Rejected Fragments)」は、「最小/最大サイズ(画素数)(Min/Max Size (pixels))」、「最小/最大コントラスト(%)(Min/Max Contrast (%))」、「主線までの最大距離(%)(MaxDistanceToMainLine (%))」などであってよいが、これらに限定されない。「保持された文字(Kept Characters)」は、「最小/最大文字幅(画素数)(Min/Max Char Width (pixels))」、「最小/最大文字高さ(画素数)(Min/Max Char Height (pixels))」、「最小/最大文字サイズ(画素数)(Min/Max Char Size (pixels))」などであってよいが、これらに限定されない。「拒否された文字(Rejected Characters)」は、「最小/最大文字幅(画素数)(Min/Max Char Width (pixels))」、「最小/最大文字高さ(画素数)(Min/Max Char Height (pixels))」、「最小/最大文字サイズ(画素数)(Min/Max Char Size (pixels))」などであってよいが、これらに限定されない。
次に図26を参照すると、グラフィカルユーザインタフェース2600を表す実施形態が示されている。インタフェース2600は、診断テキストデータが表示されるタブを含んでよい。実施形態によっては、表示すべき診断グラフィックスを指定する為のドロップダウンメニューを追加してよい。実施形態によっては、「診断を表示(Show Diagnostics)」ドロップダウンメニューは、「表示(Show)」ドロップダウンメニューとの組み合わせで動作可能である。プロパティシート内において、「診断を表示(Show Diagnostics)」が「全てを隠す(hide all)」以外の何かに設定されている場合は、診断グラフィックスだけが表示されてよい。プロパティシートの内側において、「診断を表示(Show Diagnostics)」が「全てを隠す(hide all)」に設定されている場合は、通常のグラフィックスが表示されてよい。プロパティシートの外側において、「表示(Show)」ドロップダウンプロパティが「全てを表示(Show All)」又は「結果グラフィックスのみ(result graphics only)」に設定されている場合は、「診断を表示(Show Diagnostics)」の設定内容にかかわらず、通常のグラフィックスが表示される。プロパティシートの外側において、「表示(Show)」ドロップダウンが「全てを隠す(hide all)」に設定されている場合は、グラフィックスは、ユーザがプロパティシートを開いたときに表示されるグラフィックスである。
本明細書に記載のイメージングプロセスの実施形態は、様々なタイプのクラシフィケーションアルゴリズムを用いてよい。これらのクラシフィケーションアルゴリズムの幾つかは、文字をクラシファイする為の基本的なクラシフィケーションアルゴリズム、基本的な妥当性検査ルーチンが後に続く、文字をクラシファイする為の基本的なクラシフィケーションアルゴリズム、アグレッシブ且つ簡素化されたアルゴリズムによる、文字をクラシファイする為の基本的なクラシフィケーションアルゴリズムなどであってよいが、これらに限定されない。実施形態によっては、様々なデフォルトのクラシフィケーションアルゴリズムを用いてよい。例えば、図27に示される「追加の文字妥当性検査をスキップする(Skip Additional Character Validation)」チェックボックスから、特定のモードを選択してよい。実施形態によっては、ジョブファイルのバージョンがファームウェアより古い場合、ファームウェアは、特定のパラメータに基づいてクラシフィケーションを自動的に設定する。更に、且つ/又は、代替として、ジョブファイルのバージョンがファームウェアより新しい場合、ファームウェアは、適切なパラメータに基づいてクラシフィケーションを自動的に設定する。
実施形態によっては、「自動調整モード(Auto−Tuning Mode)」において、運用中にセグメンテーション及びクラシフィケーションの両方を実施することが可能である。その後、ユーザは、画像がロードされてプロセスが実行されるたびにクラシフィケーションを実施しないオプションを追加したい場合がある。「自動調整(Auto−Tuning)」が完了し、セグメンテーションパラメータ、又はセグメンテーションパラメータとトレーニングが良好であるとユーザが考えた場合、ユーザは、これらの変更をコミットしてよい。
本開示の実施形態は、様々なライブラリ、及びこれらのライブラリと通信している関連ファームウェアを利用してよい。本明細書に記載のイメージングプロセスは、様々な情報を1つ以上のグラフィカルユーザインタフェースに表示するように構成されてよい。従って、ライブラリから特定のユーザインタフェースに情報をレポートする幾つかのメッセージがあってよい。例えば、このメッセージは、「自動調整(Auto−Tune)」モデル内の各レコードに関するレコード情報を特定のユーザインタフェースに送り、そのインタフェースは、この情報を表示するように構成されてよい。更に、且つ/又は、代替として、幾つかのメッセージは、自動調整グラフィックス及び画像を、特定の表示用ユーザインタフェースに送るように構成されてよい。幾つかのメッセージは、「自動調整(Auto−Tune)」セッションを終了させるように構成されてよく、ライブラリが計算したセグメンテーションパラメータを、その後の、ユーザに対する表示の為に更新することが可能である。
実施形態によっては、ユーザは、「自動調整(Auto−Tune)」機能を開始させてよく、1つ以上の画像を使用してトレーニングを行ってよい。ユーザは、各画像について、文字のセグメンテーション及びクラシフィケーションが正しく行われたかどうかを決定してよい。正しく行われていない場合は、失敗画像のトレーニングが行われ、アルゴリズムは、画像のセグメンテーションを正しく行うセグメンテーション設定と、既にトレーニングされた画像とを見つける。トレーニングを行う画像の数が多いほど、「自動調整(Auto−Tune)」アルゴリズムの信頼度及び精度を高めることが可能である。ユーザが満足した時点で、新しいセグメンテーション設定を適用してよく、新しくトレーニングされた文字により、フォントを更新してよい。「自動調整(Auto−Tune)」プロセス中に文字をトレーニングすることには多くの利点があり、それらは、ユーザが画像セットを2回(1回はセグメンテーション、もう1回は文字のトレーニング)繰り返す必要がないこと、又、調整プロセスから得られたセグメンテーションパラメータを使用して文字のトレーニングを自動的に行うことが可能な為に読み取り精度が向上することなどであるが、これらに限定されない。
本明細書で用いている「文字のセグメンテーション(Character Segmentation)」という語句は、検査領域内の各文字の境界(上端、左端、下端、右端)を見つけるプロセス又は動作を意味するものであってよい。文字のセグメンテーションは、本明細書に記載の1つ以上のアルゴリズムを用いて実施されてよい。「自動調整レコード(Auto−Tune Record)」という語句は、画像、トレーニング文字列、及び画像内の文字のユーザ確認済み場所からなるものであってよい。「自動調整モデル(Auto−Tune Model)」という語句は、ゼロ個以上の「自動調整レコード(Auto−Tune Records)」と、全てのレコードの正しいセグメンテーションを最良に行う構成設定との集合を意味するものであってよい。
本明細書に記載のように、「自動調整(Auto−Tuning)」の概念は、最適セグメンテーションパラメータを識別する為の誘導プロセスを意味するものであってよい。セグメンテーションパラメータは、このプロセスの完了後に更新されてよい。実施形態によっては、自動調整プロセスは、複数の画像が成功することを必要とする。ユーザインタフェースは、画像を取得し、結果を評価するプロセスにおいてユーザを誘導するように構成されてよい。従って、ユーザに膨大な数の結果を提示して、そこから選択させるべきではない。結果は、それぞれ別々でなければならず、量的に制限されていなければならない。ユーザに対しては、作業結果を失わないように、「自動調整(Auto−Tune)」セッションをディスクに保存することを促さなければならない。最後に保存されたセッションは、ユーザインタフェースによって自動的に復元することが可能である。
実施形態によっては、「自動調整(Auto−Tune)」プロセスは、大量のCPUリソース及びメモリリソースを必要とする可能性がある。プロセスが完了し、設定及びフォントが更新されたら、それらのリソースは不要になり、解放されてよい。実施形態によっては、リソースを可能な限り早急に解放することが重要である。「自動調整(Auto−Tune)」プロセスが完了したら(即ち、ユーザが設定を受け入れるか、キャンセルしたら)、全ての「自動調整(Auto−Tune)」リソースが解放されてよい。リソース間の情報(例えば、トレーニングされた画像など)は、複数のセッションにまたがっては保持されない。所要時間が2秒を超えると見込まれる操作の場合は、プログレスバーが表示されてよい。プログレスフィードバック(47%完了)は利用できない為、プログレスバーは、操作が依然アクティブであることを単純に示すだけである。操作をキャンセルするメカニズムは設けられないであろう。
実施形態によっては、トレーニング中に、ユーザは、プロパティシート又は設定パネルから「自動調整(Auto−Tune)」を押す。ユーザは、「自動調整(Auto−Tune)」ダイアログが提示され、新しい画像を取得することが可能である。次にユーザは、新しい画像のトレーニングを行うか、別のステップにアクセスするか、「OK」を選択して終了することが可能である。新しいセグメンテーションパラメータが更新され、フォントが更新される。
実施形態によっては、画像を自動文字セグメンテーションによってトレーニングした場合に、ユーザは、その画像のセグメンテーションがうまく行われなかったと判断する可能性があり、その場合は、トレーニング文字列を入力してよい。ユーザは、「自動セグメンテーション(Auto−Segment)」ボタンを選択してよい。ユーザは、ステータスバーを提示され、「自動セグメンテーション(Auto−Segment)」が完了するのを待つ。ユーザは、「自動セグメンテーション(Auto−Segment)」結果の一覧が提示され、各結果をクリックして評価することが可能である。結果を選択することにより、画像上のセグメンテーションマーキングを更新することが可能である。ユーザは、最良の結果を選択し、「OK」を選択する。新しい「自動調整レコード(Auto−Tune Record)」が作成され、この新しい「自動調整(Auto−Tune)」設定により、画像が更新される。この新しくトレーニングされた文字により、フォントが更新される。
実施形態によっては、画像を手動文字セグメンテーションによってトレーニングした場合に、ユーザは、その画像のセグメンテーションがうまく行われなかったと判断する可能性がある。その場合、ユーザは、トレーニング文字列を入力して、「手動セグメンテーション(Manual−Segment)」ボタンを選択してよい。「自動調整(Auto−Tune)」ダイアログは隠され、表示コントロールに、トレーニング文字列内の各文字の編集可能領域が提示される。そして、ユーザは、各領域の位置決め及びサイズ調整を行ってよい。ユーザは、ツールバー上の「OK」をクリックする(又は、画像をダブルクリックする)。次に、ユーザは、ステータスバーを提示されて、セグメンテーション設定が見つかるのを待つことが可能である。プロセスが完了すると、ステータスバーは閉じる。新しい「自動調整レコード(Auto−Tune Record)」が作成され、この新しい「自動調整(Auto−Tune)」設定により、画像が更新される。この新しくトレーニングされた文字により、フォントが更新される。
実施形態によっては、ユーザは、画像は良好にセグメンテーションがなされているが、文字が誤識別されたと判断する可能性がある。その場合、ユーザは、トレーニング文字列を入力して、「フォントをトレーニング(Train Font)」ボタンをクリックする。この新しくトレーニングされた文字により、フォントが更新される。
実施形態によっては、ユーザは、画像は良好にセグメンテーションがなされており、且つ、文字が正しく識別されたと判断する可能性がある。これは、他の画像との違いが顕著でないテスト画像である。ユーザアクションは不要である。
実施形態によっては、ユーザは、画像は良好にセグメンテーションがなされており、且つ、文字が正しく識別されたと判断する可能性がある。ユーザは、これが、「自動調整(Auto−Tuning)」時に考慮されるべき重要な画像であると判断し、「レコードを作成(Create Record)」ボタンを選択してよい。現在の画像及び現在のセグメンテーション領域を用いて、新しい「自動調整レコード(Auto−Tune Record)」が作成される。
実施形態によっては、「自動調整(Auto−Tune)」は、ツール内のセグメンテーションパラメータを設定し、任意選択で文字の再トレーニングを行う複数画像プロセスである。「自動調整(Auto−Tune)」プロセスがアクティブである間、ユーザは、画像をロードし、各画像についての結果を評価することを求められる。ユーザは、文字のセグメンテーションが正しく行われたかどうか、並びに、文字の識別が正しく行われたかどうかを、視覚的に判断する。文字のセグメンテーション又は識別が正しく行われていない場合、「自動調整(Auto−Tune)」アルゴリズムは、訂正を行うことを試行する。プロセスが進むほど、結果の信頼度及び精度が高くなる。ユーザが満足した時点で、新しいセグメンテーション設定が適用され、新しくトレーニングされた文字により、フォントが更新される。
実施形態によっては、「自動調整(Auto−Tune)」プロセスは、複数の画像にまたがる。ユーザは、「自動調整(Auto−Tune)」ダイアログを閉じることなく、画像をロードし、検査領域を調節することが可能であってよい。本明細書に記載の実施形態は、「自動調整(Auto−Tune)」ダイアログを閉じることなく、画像を、再生コントロールから、又はディスクから、又はライブ取得により、ロードする方法をユーザに提供することが可能である。実施形態は又、「自動調整(Auto−Tune)」ダイアログを閉じることなく、ビルトイン領域を編集する方法をユーザに提供することも可能である。
実施形態によっては、「自動調整(Auto−Tune)」プロセスがアクティブである間に、ユーザは、各画像における文字セグメンテーションを評価する。文字のセグメンテーションが正しく行われていない場合、「自動調整(Auto−Tune)」アルゴリズムは、訂正を行うことを試行する。「自動調整(Auto−Tune)」プロセスは、処理対象テキストについての情報を要求することが可能であり、何らかの性能(速度及び精度)調節を提供する。
本明細書に開示の実施形態は、幾つかの「自動調整(Auto−Tune)」オプションをユーザに提供することが可能である。幾つかのオプションは、以下のものを含んでよいが、これらに限定されない。「ロックされたパラメータの一覧(Locked Parameter List)」。これは、「自動調整(Auto−Tune)」で修正してはならないセグメンテーションパラメータのセットを指定することが可能である。デフォルトでは、どのパラメータもロックされていない。「画像分解能(Image Resolution)」。例えば、文字は、フル分解能又はサブサンプル分解能でのセグメンテーションが可能である。デフォルト値を設定してよい。「結果の数(Number of Results)」。これは、生成してユーザに提示する候補結果の最大数を特定することが可能である。「パラメータのステップ数(Parameter Steps)」。例えば、各セグメンテーションパラメータについて試行される反復の回数である。パラメータが自動的にロックされるのは、関連付けられたツール入力が「リンク(Links)」タブ内でリンクされている場合である。
実施形態によっては、現在の画像のセグメンテーションが正しく行われない場合、ユーザは、「自動セグメンテーション(Auto−Segment)」アルゴリズムの実行を選択してよい。「自動セグメンテーション(Auto−Segment)」アルゴリズムは、現在の画像のセグメンテーションを正しく行うセグメンテーション構成の一覧と、「自動調整レコード(Auto−Tune Records)」の一覧にある画像とを検索して返す。返された構成の一覧は、ユーザに提示され、ユーザは、当該文字の最良のセグメンテーションを行う構成を選択する。満足な構成がユーザによって選択された場合は、その検証結果が新しい「自動調整レコード(Auto−Tune Record)」として記憶され、選択された構成は、その後の画像のセグメンテーションに使用される。更に、この新しくトレーニングされた文字により、フォントが更新される。満足な構成がない場合、ユーザは、「自動セグメンテーション(Auto−Segment)」入力を修正して「自動セグメンテーション(Auto−Segment)」機能を再実行するか、又は、当該文字の手動セグメンテーションをグラフィカルに行うことを選択してよい。
本明細書に開示の実施形態は、「自動セグメンテーション(Auto−Segment)」動作を開始するコマンドをユーザに提供することが可能である。これは、明示的なコマンドでなくてよい。即ち、ユーザが現在の画像においてセグメンテーションをどのように格付けするかに応じて起動されて良い。ユーザは、トレーニング文字列を提供しなければならない。
本明細書に開示の実施形態は、「自動セグメンテーション(Auto−Segment)」プロセスが進行中であること、並びに全てが良好であることをユーザに情報伝達するステータスインジケータを提供することが可能である。更に、且つ/又は、代替として、本明細書に開示の実施形態は、ユーザが文字のセグメンテーションを手動で行った後に、進行中の自動セグメンテーション動作をキャンセルする方法を提供することが可能である。キャンセルが完了したら、ユーザはインタラクティブグラフィックス表示に戻らなければならず、セグメンテーショングラフィックスは、ユーザが配置した場所にある。
本明細書に開示の実施形態は、「自動セグメンテーション(Auto−Segment)」結果から最良のセグメンテーション構成を選択するオプションをユーザに提供することが可能である。
更に、且つ/又は、代替として、実施形態によっては、候補構成ごとに、セグメンテーション結果を現在の画像と照合して視覚的に評価する手段をユーザに提供することが可能である。
現在の画像のセグメンテーションが正しく行われず、「自動セグメンテーション(Auto−Segment)」結果が満足なものでない場合、ユーザは、当該文字の手動セグメンテーションをグラフィカルに行うことを選択してよい。手動で配置された領域は、新しい「自動調整レコード(Auto−Tune Record)」に記憶させてよい。手動で配置された領域に適合するセグメンテーション構成を見つける為に、「自動セグメンテーション(Auto−Segment)」ルーチンを内部的に実行してよい。ユーザによって提供される領域に基づいて、最良の構成を自動的に選択することが可能であり、ユーザは、構成の一覧から選択する必要がない。この新しくトレーニングされた文字により、フォントを更新してよい。
更に、且つ/又は、代替として、本明細書に開示の実施形態は、ユーザが各セグメンテーション領域を手動で位置決めすることを可能にできる。ユーザは、各文字の位置、サイズ、角度、及びスキューを設定することが可能でなければならない。領域の数は、トレーニング文字列によって決定されてよく、システムは、ユーザが文字領域を追加したり除去したりすることを可能にしなくてもよい。
実施形態によっては、ツールが構成を検索中であること、プロセスが進行中であること、並びに、全てが良好であることをユーザに情報伝達するステータスインジケータを提供するように構成されてよい。更に、且つ/又は、代替として、実施形態によっては、ユーザが文字のセグメンテーションを手動で行った後に、進行中の検索動作をキャンセルする方法を提供することが可能である。キャンセルが完了したら、ユーザはインタラクティブグラフィックス表示に戻らなければならず、セグメンテーショングラフィックスは、ユーザが配置した場所にある。
前述のように、実施形態によっては、「自動調整(Auto−Tune)」プロセス中に文字のトレーニングが行われる。フォントトレーニングは、「自動セグメンテーション(Auto−Segment)」コマンドの後に自動的に実施される。フォントトレーニングは又、セグメンテーションが良好であるのに文字が誤識別される場合には、ユーザによって開始されてよい。フォントトレーニングのオプションは、いずれの場合にも当てはまる。
本明細書に開示の実施形態は、トレーニング済み文字の管理方法に関する特定の情報を必要とする場合があり、幾つかのフォントトレーニングオプションをユーザに提供することが可能であり、そのようなオプションとして、トレーニング対象文字のインスタンスの数を制限することが可能な「文字当たりの最大インスタンス(Maximum Instances per Character)」があるが、これに限定されない。本明細書に開示の実施形態は又、「自動セグメンテーション(Auto−Segment)」コマンドを実行することなく文字の再トレーニングを行うオプションをユーザに提供することが可能である。ユーザは、トレーニング文字列を提供しなければならず、「自動調整レコード(Auto−Tune Record)」が作成される。「自動調整モデル(Auto−Tune Model)」データは、後でエクスポート及び復元されてよい。これにより、ユーザは、ベース画像のセットのトレーニングを行うことが可能であり、そして、後で、新たな問題画像に遭遇したときに、データセットに追加することが可能である。ユーザは、保存先又はロード元の場所を選択することが可能になる。ユーザは、任意の好適なコンピューティング装置の、ユーザが指定する場所においてアクティブセッションを継続できるようにされてよい。ユーザは、保存先の場所を選択することが可能になる。ユーザは又、以前に保存されたセッションを復元して、現在のアクティブセッションを上書きすることができるようにされてよい。ユーザは、ロード元の場所を選択することが可能になる。場合によっては、ユーザは、現在進行中のものを破棄して「自動調整(Auto−Tune)」プロセスを最初からやり直したい場合がある。ユーザは、「自動調整モデル(Auto−Tune Model)」を新しい空の状態にリセットできるようにされてよい。
実施形態によっては、「自動調整レコード(Auto−Tune Records)」は、典型的には、トレーニング動作中に自動的に作成される。レコードの作成に使用された画像が低品質であった為に「自動調整(Auto−Tune)」メカニズムにおいて問題を引き起こしている場合は、そのレコードを削除することが有用である可能性がある。レコードは、ユーザによる閲覧が可能である。レコード内の画像は、2つの方法でマーキングすることが可能であり、それらは、トレーニング済みのセグメンテーション領域によりマーキングする方法と、現在のセグメンテーション設定を使用して生成されたセグメンテーション領域によりマーキングする方法である。現在のセグメンテーション設定が、レコード画像のトレーニングに使用された設定よりも高い精度でレコード画像のセグメンテーションを行う場合、ユーザは、現在のセグメンテーション結果でレコードを更新することを選択してよい。
実施形態によっては、そのレコードの作成に使用された画像に、検証済み(トレーニング時)セグメンテーション領域によるマーキングを施して、ユーザに提供することが可能である。実施形態は、そのレコードの作成に使用された画像に、現在の設定を使用して生成されたセグメンテーション領域によるマーキングを施して、ユーザに提供することが可能である。ユーザは、そのレコードの作成に使用されたテキストを提示されてよい。
実施形態によっては、ユーザは、「自動調整レコード(Auto−Tune Record)」を削除したり、且つ/又は、現在のセグメンテーション結果で更新したりしてよい。更に、且つ/又は、代替として、「自動調整(Auto−Tune)」ダイアログは、以下のオプションをユーザに提供することが可能である。「OK」−「全てをコミット(Commit All)」。この場合、ユーザは、ダイアログを閉じて、セグメンテーションパラメータ及びトレーニング済みフォント文字を受け入れるオプションを有することが可能である。セグメンテーションパラメータはコピーされ、フォントは、トレーニング済み文字で更新される。
次に図28から図29を参照すると、本開示の教示と整合するグラフィカルユーザインタフェースの実施形態が示されている。この特定の例では、図28に示されたプロパティシート上の「自動調整(Auto−Tune)」ボタンにより、自動調整機能を起動することが可能である。更に、且つ/又は、代替として、図29に示されるように、「外部設定(External Settings)」セルが参照されているときは、「自動調整(Auto−Tune)」ボタンは無効にされてよい。
次に図30から図31を参照すると、ツールバーグラフィカルユーザインタフェースを描いた本開示の実施形態が示されている。ツールバーコマンドは、画像取得コマンド、検査領域編集コマンド、エクスポートコマンド、インポートコマンド、クリアモデルコマンドなどであってよいが、これらに限定されない。「OK」ボタン又は「キャンセル(Cancel)」ボタンを押すと、「自動調整(Auto−Tune)」ダイアログが閉じられる。「OK」が選択されると、変更が関連セルに対してコミットされる。
次に図32から図34を参照すると、実施形態によっては、1つ以上のタブページが含まれてよい。これらのタブページは、(図32に示された)「自動調整(auto−tune)」、「設定(settings)」、「レコード(records)」、「フォント(font)」などであってよいが、これらに限定されない。「自動調整(auto−tune)」タブは、自動セグメンテーションコマンド、手動セグメンテーションコマンド、及びフォントトレーニングコマンドを設けることが可能である。「設定(settings)」タブは、自動調整設定へのアクセスと、フォントトレーニングオプションへのアクセスとを提供することが可能である。「レコード(Records)」タブは、図33に示された「レコードを表示(view records)」、「レコードを削除(delete records)」、及び「レコードを更新(update records)」を設けることが可能である。実施形態によっては、「レコードを表示(View Record)」ボタンを選択すると、以下のモーダルダイアログが開く。これは、レコードの表示、並びにレコードの更新を考慮したものである。
図35から図36に示されるように、プロセスが進行中の場合は、モーダルポップアップウィンドウが表示される。これは、自動セグメンテーションの進行状況、構成検索の進行状況、自動セグメンテーションのキャンセルの進行状況、及び構成検索のキャンセルの進行状況を提供することが可能である。
実施形態によっては、図34に示された「レコードを表示(view record)」オプションを選択するとモーダルダイアログが生成されてよく、このダイアログは、当該レコードの表示及び/又は更新を考慮したものであってよい。図37は、そのような構成を示すグラフィカルユーザインタフェース3700を表している。図37に示されるように、グラフィカルユーザインタフェース3700は、「トレーニング済み(trained)」機能及び「現在の設定(current settings)」機能の両方を含んでよく、それぞれ表示可能である。現在の結果を保存するオプションも提供されてよい。
図38から図39に示されるように、実施形態によっては、「自動セグメンテーション(Auto−Segment)」プロセスが完了すると、モデルダイアログが表示される。このダイアログは、ユーザが最良のセグメンテーション構成を選択することを可能にするものであってよい。「結果を編集(Edit Result)」ボタンが選択されると、ユーザは、現在の選択を開始点として、文字セグメントグラフィックスを手動で編集することが可能になる。「OK」ボタンが選択されると、「自動調整(Auto−Tune)」モデルが現在の選択に基づいて更新され、ダイアログが閉じられる。「OK」ボタンが有効化されるのは、一覧内の1つのアイテムが選択されている場合だけである。
実施形態によっては、文字セグメントを手動で編集する際に、平行四辺形グラフィックスを用いてよい。この平行四辺形グラフィックスは、幾つかの機能を含んでよい。例えば、移動機能により、マウスを平行四辺形の内側の中に置くと、カーソルが標準的な移動カーソル(4つの矢印)に変わる。このグラフィックスをクリックしてドラッグすると、平行四辺形を移動させることができる。例えば、サイズ変更機能により、マウスを平行四辺形の辺の上に置くと、カーソルが標準的なサイズ変更カーソル(2つの矢印)に変わる。この辺をクリックしてドラッグすると、平行四辺形のサイズを変更することができる。例えば、スキュー機能により、マウスを平行四辺形の左上コーナー上に置くと、カーソルが標準的なクロスヘアカーソルに変わる。このポイントをクリックしてドラッグすることにより、平行四辺形の内角を変更することができる。例えば、回転機能により(図40を参照)、マウスを、平行四辺形の底辺にある回転アイコンの上に置くと、マウスカーソルが回転カーソルに変わる。このポイントをクリックしてドラッグすることにより、平行四辺形の回転を修正することができる。キーボード編集が可能になる。既存の「移動(Move)」、「サイズ変更(Resize)」、及び「回転(Rotate)」の各モードに加えて、「スキュー(Skew)」モードが利用可能である。「スキュー(Skew)」モードでは、図41に示されるように、平行四辺形の内角を1度刻みで(左矢印で−1度、右矢印で+1度)調節する。平行四辺形の底辺と左辺との間の角度(度)が、上矢印の先端に描画される。
次に図42を参照すると、本開示の実施形態と整合するグラフィカルユーザインタフェース4200が示されている。この特定の例では、「セグメンテーション(segmentation)」タブに、「セルにエクスポート(Export to Cell)」というユーザ選択可能ボタンが含まれてよい。このエクスポートコマンドが無効化されてよいのは、図43に示されるように、「外部設定(External Settings)」参照が既に設定されている場合である。
自動調整ではメモリ及び処理装置が多用されることが一因となり、自動調整機能は、「自動調整(Auto−Tune)」セッションの範囲内で実現可能である。セッションの終了時にメモリが解放され、結果は、コミットされるか、破棄される。セッションは、ほぼ完全に内部実装細部であり、ユーザにはさらされなくてよい。ユーザに対する影響は、中間トレーニングデータ(例えば、「自動調整レコード(Auto−Tune Records)」がセッション間で保存されないことである。セッションデータは、ユーザによってインポート及びエクスポートされてよい。本明細書に開示の実施形態は、いずれかの「自動調整(Auto−Tune)」機能を実施する前に新たな「自動調整(Auto−Tune)」セッションを開始することが可能である。この動作は、ユーザに対して透過的であってよく、「自動調整(Auto−Tune)」ダイアログが開いているときに自動的に実施されてよい。本明細書に開示の実施形態は、全てのアクティブな「自動調整(Auto−Tune)」セッションを終了することが可能である。この動作は、ユーザに対して透過的であってよく、「自動調整(Auto−Tune)」ダイアログが閉じているときに自動的に実施されてよい。
本方法は又、1つ以上のコンピューティング装置を使用して、セグメンテーション結果が1つ以上の条件を満たすかどうかを、閾値又は最適値に設定されている条件に基づいて判定するステップを含んでよい。本方法は又、1つ以上のコンピューティング装置を使用して、最初の文字列及び追加の文字列の一方又は両方を少なくとも部分的に用いて、文字のデータベースを生成するステップを含んでよい。本方法は又、1つ以上のコンピューティング装置を使用して、正しいセグメンテーションパラメータセットを有する文字列についての、正しいセグメンテーションの通知を受け取るステップを含んでよい。本方法は又、1つ以上のコンピューティング装置を使用して、正しいセグメンテーションパラメータセットを第2の文字列に適用するステップを含んでよい。実施形態によっては、識別するステップは、ASCII均一性基準に合致しているかどうかを識別するステップを含んでよい。
操作は又、1つ以上のコンピューティング装置を使用して、セグメンテーション結果が1つ以上の条件を満たすかどうかを、閾値又は最適値に設定されている条件に基づいて判定するステップを含んでよい。操作は又、1つ以上のコンピューティング装置を使用して、最初の文字列及び追加の文字列の一方又は両方を少なくとも部分的に用いて、文字のデータベースを生成するステップを含んでよい。本方法は又、1つ以上のコンピューティング装置を使用して、正しいセグメンテーションパラメータセットを有する文字列についての、正しいセグメンテーションの通知を受け取るステップを含んでよい。本方法は又、1つ以上のコンピューティング装置を使用して、正しいセグメンテーションパラメータセットを第2の文字列に適用するステップを含んでよい。実施形態によっては、識別するステップは、ASCII均一性基準に合致しているかどうかを識別するステップを含んでよい。実施形態によっては、少なくとも1つのセグメンテーションパラメータは、極性、行微調整、角度サーチ範囲、スキューサーチ範囲、正規化モード、ストローク幅、2値化閾値、境界断片、画素数、コントラスト閾値、文字高さ、文字幅、文字間ギャップ、文字内ギャップ、文字断片距離、文字断片マージモード、幅広文字分割、最小文字アスペクト、文字幅タイプ、解析モード、ピッチメトリック、ピッチタイプ、最小ピッチ、空白挿入、空白スコアリング、空白文字の最小幅、及び空白文字の最大幅のうちの1つ以上を含んでよい。
1つ以上の処理装置は更に、それぞれが追加文字列を有する少なくとも1つの追加画像を受け取るように構成されてよい。1つ以上の処理装置は更に、最初の文字列及び追加文字列の一方又は両方を少なくとも部分的に使用して、文字のデータベースを生成するように構成されてよい。1つ以上の処理装置は更に、正しいセグメンテーションパラメータセットを有する文字列についての、正しいセグメンテーションの通知を受け取るように構成されてよい。1つ以上の処理装置は更に、正しいセグメンテーションパラメータセットを第2の文字列に適用するように構成されてよい。実施形態によっては、識別するステップは、ASCII均一性基準に合致しているかどうかを識別するステップを含んでよい。実施形態によっては、少なくとも1つのセグメンテーションパラメータは、極性、行微調整、角度サーチ範囲、スキューサーチ範囲、正規化モード、ストローク幅、2値化閾値、境界断片、画素数、コントラスト閾値、文字高さ、文字幅、文字間ギャップ、文字内ギャップ、文字断片距離、文字断片マージモード、幅広文字分割、最小文字アスペクト、文字幅タイプ、解析モード、ピッチメトリック、ピッチタイプ、最小ピッチ、空白挿入、空白スコアリング、空白文字の最小幅、及び空白文字の最大幅のうちの1つ以上を含んでよい。
当業者であれば理解されるように、本開示は、方法、システム、又はコンピュータプログラム製品として実施されてよい。従って、本開示は、全体がハードウェアである実施形態、全体がソフトウェアである実施形態(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)、又は、本明細書においては全てがまとめて「回路」、「モジュール」、又は「システム」と称せられてよい、ソフトウェアの側面とハードウェアの側面とを併せ持つ実施形態の形態をとるものであってよい。更に、本開示は、コンピュータで使用可能な記憶媒体において、コンピュータで使用可能なプログラムコードが実施されている、コンピュータで使用可能な記憶媒体上のコンピュータプログラム製品の形態をとるものであってよい。
任意の好適な、コンピュータで使用可能な、又はコンピュータ可読な媒体が利用可能である。コンピュータで使用可能な、又はコンピュータ可読な媒体は、例えば、電子式、磁気式、光学式、電磁式、赤外線式、又は半導体式のシステム、装置、デバイス、又は伝搬媒体であってよいが、これらに限定されない。コンピュータ可読媒体のより具体的な例(非網羅的な一覧)として、1つ以上のワイヤを有する電気的接続、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能プログラム可能読み出し専用メモリ(EPROM又はフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み出し専用メモリ(CD−ROM)、光学式記憶装置、インターネット又はイントラネットをサポートする伝送媒体のような伝送媒体、又は磁気記憶装置などが挙げられる。なお、コンピュータで使用可能な、又はコンピュータ可読な媒体は、プログラムが印刷される紙又は他の好適な媒体であってもよい。なぜなら、プログラムは、(例えば、紙又は他の媒体の光学式走査により)電子的に取り込んで、コンパイルし、解釈し(又は、必要であれば他の好適な方法で処理し)、コンピュータメモリに記憶させることが可能だからである。本文書の文脈では、コンピュータで使用可能な、又はコンピュータ可読な媒体は、命令を実行するシステム、装置、又はデバイスによって使用されるべく、又はこれらと接続されて、プログラムを格納、記憶、伝達、伝搬、又は搬送することが可能な任意の媒体であってよい。コンピュータで使用可能な媒体は、この媒体によって実施される、コンピュータで使用可能なプログラムコードを、ベースバンドで、又は搬送波の一部分として有する伝搬データ信号を含んでよい。コンピュータで使用可能なプログラムコードは、任意の適切な媒体により伝送されてよく、そのような媒体として、インターネット、有線、光ファイバケーブル、RFなどがあるが、これらに限定されない。
本開示の操作を実施する為のコンピュータプログラムコードは、Java、Smalltalk、C++などのオブジェクト指向プログラミング言語で書くことが可能である。しかしながら、本開示の操作を実施する為のコンピュータプログラムコードは、「C」プログラミング言語や同様のプログラミング言語のような、従来の手続き型プログラミング言語でも書くことが可能である。プログラムコードは、全体をユーザのコンピュータで実行することが可能であり、或いは、一部をスタンドアロンソフトウェアパッケージとしてユーザのコンピュータで実行し、一部をユーザのコンピュータで実行し、一部をリモートコンピュータで実行することが可能であり、或いは、全体をリモートコンピュータ又はサーバで実行することが可能である。後のシナリオでは、リモートコンピュータは、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)経由でユーザのコンピュータと接続されてよく、或いは、(例えば、インターネットサービスプロバイダを使用してのインターネット経由で)外部コンピュータに接続されてよい。
本開示は、以下に、本開示の実施形態による方法、装置(システム)、及びコンピュータプログラム製品のフローチャート図及び/又はブロック図を参照して説明されている。当然のことながら、フローチャート図及び/又はブロック図の各ブロック、並びに、フローチャート図及び/又はブロック図におけるブロックの組み合わせは、コンピュータプログラム命令によって実装可能である。これらのコンピュータプログラム命令は、汎用コンピュータ、専用コンピュータ、又は他のプログラマブルデータ処理装置の処理装置に与えられてよく、それによって、これらのコンピュータプログラム命令が、コンピュータ又は他のプログラマブルデータ処理装置の処理装置によって実行されて、フローチャート図及び/又はブロック図の1つ以上のブロックで指定される機能/動作を実装する手段を生成するようなマシンが生成されてよい。
これらのコンピュータプログラム命令は又、コンピュータ又は他のプログラマブルデータ処理装置に対し、特定の様式で機能するように指示することが可能なコンピュータ可読メモリに記憶されてよく、この特定の様式は、そのコンピュータ可読メモリに記憶されたそれらのコンピュータプログラム命令によって、フローチャート図及び/又はブロック図の1つ以上のブロックで指定される機能/動作を実装する命令手段を含む製造物が生産されるような様式であってよい。
これらのコンピュータプログラム命令は又、一連の操作ステップをコンピュータ又は他のプログラマブルデータ処理装置で実行させるべく、コンピュータ又は他のプログラマブルデータ処理装置にロードされてもよく、それによって、それらのコンピュータプログラム命令がコンピュータ又は他のプログラマブルデータ処理装置で実行されて、フローチャート図及び/又はブロック図の1つ以上のブロックで指定される機能/動作を実装するステップを提供するような、コンピュータ実装プロセスが生成されてよい。
図面中のフローチャート図及びブロック図は、本開示の様々な実施形態によるシステム、方法、及びコンピュータプログラム製品の可能な実装のアーキテクチャ、機能、及び動作を表している。この点において、フローチャート図又はブロック図内の各ブロックは、指定された論理機能を実装する為の1つ以上の実行可能命令を含む、モジュール、セグメント、又はコードの一部分を表すものであってよい。又、代替実装によっては、ブロック内に記された各機能は、図面内に記された順序に従わずに実行されてよいことにも注意されたい。例えば、連続して図示されている2つのブロックが、実際にはほぼ同時に実行される場合があり、或いは、これらのブロックが、関連する機能によっては、逆の順序で実行される場合もある。又、ブロック図及び/又はフローチャート図の各ブロック、並びに、ブロック図及び/又はフローチャート図におけるブロックの組み合わせは、指定された機能又は動作を実行する、専用のハードウェアベースのシステム、又は、専用のハードウェア及びコンピュータ命令の組み合わせによって実装されてよいことにも注意されたい。
本明細書で使用されている術語は、特定の実施形態を説明することのみを目的としており、本開示を限定することを意図したものではない。本明細書において使用されているように、単数形「a」、「an」、及び「the」は、文脈上明らかに他の意味を示している場合を除き、複数形も同様に含むものとする。更に、語句「含む(「comprises」及び/又は「comprising」)」は、本明細書において使用された場合に、述べられた機能、整数、ステップ、操作、要素、及び/又は構成要素の存在を明示するものであり、1つ以上の他の機能、整数、ステップ、操作、要素、構成要素、及び/又はこれらの集合体の存在又は追加を排除するものではないことを理解されたい。
後述の特許請求の範囲における全ての手段又はステップ並びに機能要素の、対応する構造、材料、動作、及び等価物は、他の特許請求されている要素との組み合わせで機能を実行する為の任意の構造、材料、又は動作を、明確に特許請求されているものとして含むことを意図されている。本開示の記載は、例示及び説明を目的として与えられており、網羅的であること、又は、開示された形態での開示に限定されることを意図したものではない。当業者であれば、本開示の範囲及び趣旨から逸脱することのない様々な修正や変形が明らかであろう。本実施形態は、本開示の原理及び実際の適用を最もよく説明すること、並びに、他の当業者が、様々な修正を有する様々な実施形態の開示を、想定される具体的な用途に適するものとして理解することを可能にする為に、選択され、記載されている。
以上、本出願の開示を、詳細に、且つ、その実施形態を参照することにより、説明してきたが、添付の特許請求の範囲において定義されている本開示の範囲から逸脱することのない修正及び変形が可能であることは明らかであろう。

Claims (20)

  1. 光学式文字認識の為の少なくとも1つのセグメンテーションパラメータを選択する、コンピュータに実装される方法であって、
    1つ以上のコンピューティング装置を使用して、1つ以上の文字を含む文字列を有する画像を受け取るステップと、
    前記1つ以上のコンピューティング装置を使用して、前記1つ以上の文字のそれぞれを識別する文字列を受け取るステップと、
    前記1つ以上のコンピューティング装置を使用して、少なくとも1つのセグメンテーションパラメータを自動的に生成するステップと、
    前記1つ以上のコンピューティング装置を使用して、前記文字列を有する前記画像に対するセグメンテーションを、前記少なくとも1つのセグメンテーションパラメータを使用して実行するステップと、
    前記1つ以上のコンピューティング装置を使用して、セグメンテーション結果が1つ以上の条件を満たすかどうかを判定するステップと、
    前記セグメンテーション結果が前記1つ以上の条件を満たす場合に、前記少なくとも1つのセグメンテーションパラメータを選択するステップと、
    前記1つ以上のコンピューティング装置において、前記画像の少なくとも一部分を表示するステップと、
    を含む、コンピュータに実装される方法。
  2. 前記1つ以上のコンピューティング装置を使用して、前記セグメンテーションに関連付けられたユーザ選択可能オプションを表示するステップであって、前記ユーザ選択可能オプションは、セグメンテーションが正しいか正しくないかをユーザが示すことを可能にするように構成された、前記ステップ
    を更に含む、請求項1に記載の、コンピュータに実装される方法。
  3. 前記1つ以上のコンピューティング装置を使用して、手動で生成されるセグメンテーションをユーザが手動で生成することを可能にするように構成されたユーザ選択可能オプションを表示するステップ
    を更に含む、請求項1に記載の、コンピュータに実装される方法。
  4. 前記1つ以上のコンピューティング装置を使用して、前記セグメンテーション結果を表示するステップ
    を更に含む、請求項1に記載の、コンピュータに実装される方法。
  5. 前記1つ以上のコンピューティング装置を使用して、前記少なくとも1つのセグメンテーションパラメータを表示するステップ
    を更に含む、請求項1に記載の、コンピュータに実装される方法。
  6. 前記少なくとも1つのセグメンテーションパラメータは、極性、行微調整、角度サーチ範囲、スキューサーチ範囲、正規化モード、ストローク幅、2値化閾値、境界断片、画素数、断片コントラスト閾値、文字高さ、文字幅、文字間ギャップ、文字内ギャップ、主行までの断片距離、断片マージモード、最小文字アスペクト、文字幅タイプ、解析モード、ピッチメトリック、ピッチタイプ、最小ピッチ、空白挿入、空白文字の幅のうちの1つ以上を含む、請求項5に記載の、コンピュータに実装される方法。
  7. 前記1つ以上のコンピューティング装置を使用して、少なくとも1つのトレーニング済み画像を表示するステップ
    を更に含む、請求項1に記載の、コンピュータに実装される方法。
  8. コンピュータ可読記憶媒体に常駐して、前記コンピュータ可読記憶媒体に記憶された複数の命令を有するコンピュータプログラム製品であって、前記複数の命令は、処理装置によって実行された場合に、
    1つ以上のコンピューティング装置を使用して、1つ以上の文字を含む文字列を有する画像を受け取るステップと、
    前記1つ以上のコンピューティング装置を使用して、前記1つ以上の文字のそれぞれを識別する文字列を受け取るステップと、
    前記1つ以上のコンピューティング装置を使用して、少なくとも1つのセグメンテーションパラメータを自動的に生成するステップと、
    前記1つ以上のコンピューティング装置を使用して、前記文字列を有する前記画像に対するセグメンテーションを、前記少なくとも1つのセグメンテーションパラメータを使用して実行するステップと、
    前記1つ以上のコンピューティング装置を使用して、セグメンテーション結果が1つ以上の条件を満たすかどうかを判定するステップと、
    前記セグメンテーション結果が前記1つ以上の条件を満たす場合に、前記少なくとも1つのセグメンテーションパラメータを選択するステップと、
    前記1つ以上のコンピューティング装置において、前記画像の少なくとも一部分を表示するステップと、
    を含む操作を前記処理装置に実行させる、コンピュータプログラム製品。
  9. 前記1つ以上のコンピューティング装置を使用して、前記セグメンテーションに関連付けられたユーザ選択可能オプションを表示するステップであって、前記ユーザ選択可能オプションは、セグメンテーションが正しいか正しくないかをユーザが示すことを可能にするように構成された、前記ステップ
    を更に含む、請求項8に記載のコンピュータプログラム製品。
  10. 前記1つ以上のコンピューティング装置を使用して、手動で生成されるセグメンテーションをユーザが手動で生成することを可能にするように構成されたユーザ選択可能オプションを表示するステップ
    を更に含む、請求項8に記載のコンピュータプログラム製品。
  11. 前記1つ以上のコンピューティング装置を使用して、前記セグメンテーション結果を表示するステップ
    を更に含む、請求項8に記載のコンピュータプログラム製品。
  12. 前記1つ以上のコンピューティング装置を使用して、前記少なくとも1つのセグメンテーションパラメータを表示するステップ
    を更に含む、請求項8に記載のコンピュータプログラム製品。
  13. 前記少なくとも1つのセグメンテーションパラメータは、極性、行微調整、角度サーチ範囲、スキューサーチ範囲、正規化モード、ストローク幅、2値化閾値、境界断片、画素数、断片コントラスト閾値、文字高さ、文字幅、文字間ギャップ、文字内ギャップ、主行までの断片距離、断片マージモード、最小文字アスペクト、文字幅タイプ、解析モード、ピッチメトリック、ピッチタイプ、最小ピッチ、空白挿入、空白文字の幅のうちの1つ以上を含む、請求項12に記載のコンピュータプログラム製品。
  14. 前記1つ以上のコンピューティング装置を使用して、少なくとも1つのトレーニング済み画像を表示するステップ
    を更に含む、請求項8に記載のコンピュータプログラム製品。
  15. 光学式文字認識の為の少なくとも1つのセグメンテーションパラメータを選択するように構成されたコンピューティングシステムであって、
    1つ以上の文字を含む文字列を有する画像を受け取るように構成された1つ以上の処理装置を備えており、前記1つ以上の処理装置は更に、前記1つ以上の文字のそれぞれを識別する文字列を受け取るように構成されており、前記1つ以上の処理装置は更に、少なくとも1つのセグメンテーションパラメータを自動的に生成するように構成されており、前記1つ以上の処理装置は更に、前記文字列を有する前記画像に対するセグメンテーションを、前記少なくとも1つのセグメンテーションパラメータを使用して実行するように構成されており、前記1つ以上の処理装置は更に、セグメンテーション結果が1つ以上の条件を満たすかどうかを判定するように構成されており、前記1つ以上の処理装置は更に、前記セグメンテーション結果が前記1つ以上の条件を満たす場合に、前記少なくとも1つのセグメンテーションパラメータを選択するように構成されており、前記1つ以上の処理装置は更に、前記1つ以上のコンピューティング装置において、前記画像の少なくとも一部分を表示するように構成されている、
    コンピューティングシステム。
  16. 前記1つ以上のコンピューティング装置を使用して、前記セグメンテーションに関連付けられたユーザ選択可能オプションを表示するステップであって、前記ユーザ選択可能オプションは、セグメンテーションが正しいか正しくないかをユーザが示すことを可能にするように構成された、前記ステップ
    を更に含む、請求項15に記載のコンピューティングシステム。
  17. 前記1つ以上のコンピューティング装置を使用して、手動で生成されるセグメンテーションをユーザが手動で生成することを可能にするように構成されたユーザ選択可能オプションを表示するステップ
    を更に含む、請求項15に記載のコンピューティングシステム。
  18. 前記1つ以上のコンピューティング装置を使用して、前記セグメンテーション結果を表示するステップ
    を更に含む、請求項15に記載のコンピューティングシステム。
  19. 前記1つ以上のコンピューティング装置を使用して、前記少なくとも1つのセグメンテーションパラメータを表示するステップ
    を更に含む、請求項15に記載のコンピューティングシステム。
  20. 前記少なくとも1つのセグメンテーションパラメータは、極性、行微調整、角度サーチ範囲、スキューサーチ範囲、正規化モード、ストローク幅、2値化閾値、境界断片、画素数、断片コントラスト閾値、文字高さ、文字幅、文字間ギャップ、文字内ギャップ、主行までの断片距離、断片マージモード、最小文字アスペクト、文字幅タイプ、解析モード、ピッチメトリック、ピッチタイプ、最小ピッチ、空白挿入、空白文字の幅のうちの1つ以上を含む、請求項19に記載のコンピューティングシステム。
JP2013215516A 2012-10-17 2013-10-16 光学式文字認識の為のセグメンテーションパラメータを選択及び表示するシステム及び方法 Active JP5820451B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US13/653,948 2012-10-17
US13/653,948 US9317767B2 (en) 2012-10-17 2012-10-17 System and method for selecting segmentation parameters for optical character recognition
US13/684,007 2012-11-21
US13/684,007 US9286534B2 (en) 2012-10-17 2012-11-21 System and method for selecting and displaying segmentation parameters for optical character recognition

Publications (2)

Publication Number Publication Date
JP2014081938A true JP2014081938A (ja) 2014-05-08
JP5820451B2 JP5820451B2 (ja) 2015-11-24

Family

ID=50383431

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013215516A Active JP5820451B2 (ja) 2012-10-17 2013-10-16 光学式文字認識の為のセグメンテーションパラメータを選択及び表示するシステム及び方法

Country Status (4)

Country Link
US (1) US9286534B2 (ja)
JP (1) JP5820451B2 (ja)
CN (1) CN103778422B (ja)
DE (1) DE102013220470A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104915327B (zh) * 2014-03-14 2019-01-29 腾讯科技(深圳)有限公司 一种文本信息的处理方法及装置
US20150371100A1 (en) * 2014-06-23 2015-12-24 Xerox Corporation Character recognition method and system using digit segmentation and recombination
RU2605078C2 (ru) * 2015-01-27 2016-12-20 Общество с ограниченной ответственностью "Аби Девелопмент" Сегментация изображения для верификации данных
CN105427322B (zh) * 2015-12-03 2018-02-13 中国科学院地理科学与资源研究所 一种高分遥感影像分割参数自动选择方法
CN111079762B (zh) * 2019-11-26 2022-02-08 合肥联宝信息技术有限公司 一种粘连字符的切割方法及电子设备
CN111368818A (zh) * 2020-03-01 2020-07-03 青岛滨海学院 基于机器视觉的食品袋检测系统及方法、食品包装系统
GB2624336A (en) * 2021-09-07 2024-05-15 Rapiscan Systems Inc Methods and systems for accurate visual layer separation in the displays of scanning systems
CN117349797B (zh) * 2023-12-04 2024-02-06 四川航空股份有限公司 基于人工智能的飞机故障检测方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03229387A (ja) * 1990-02-05 1991-10-11 Mitsubishi Electric Corp 文書読取方式
JPH0535916A (ja) * 1991-07-26 1993-02-12 Ricoh Co Ltd 文字切り出し方法
JPH05303663A (ja) * 1992-04-28 1993-11-16 Matsushita Electric Ind Co Ltd 文字切り出し装置
JP2000293626A (ja) * 1999-04-09 2000-10-20 Nec Corp 文字認識方法及び装置ならびに記憶媒体
JP2001126025A (ja) * 1999-10-26 2001-05-11 Hitachi Ltd Ocr用フォーマットパラメータ作成方法
US6600834B1 (en) * 1999-01-13 2003-07-29 International Business Machines Corporation Handwriting information processing system with character segmentation user interface

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5608874A (en) * 1994-12-02 1997-03-04 Autoentry Online, Inc. System and method for automatic data file format translation and transmission having advanced features
JPH11338975A (ja) 1998-05-28 1999-12-10 Fujitsu Ltd 文字切り出し処理方式および文字切り出し処理プログラムを記録した記録媒体
WO2002010884A2 (en) 2000-07-28 2002-02-07 Raf Technology, Inc. Orthogonal technology for multi-line character recognition
JP5591578B2 (ja) 2010-04-19 2014-09-17 日本電産サンキョー株式会社 文字列認識装置および文字列認識方法
US8600143B1 (en) 2010-05-20 2013-12-03 Kla-Tencor Corporation Method and system for hierarchical tissue analysis and classification

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03229387A (ja) * 1990-02-05 1991-10-11 Mitsubishi Electric Corp 文書読取方式
JPH0535916A (ja) * 1991-07-26 1993-02-12 Ricoh Co Ltd 文字切り出し方法
JPH05303663A (ja) * 1992-04-28 1993-11-16 Matsushita Electric Ind Co Ltd 文字切り出し装置
US6600834B1 (en) * 1999-01-13 2003-07-29 International Business Machines Corporation Handwriting information processing system with character segmentation user interface
JP2000293626A (ja) * 1999-04-09 2000-10-20 Nec Corp 文字認識方法及び装置ならびに記憶媒体
JP2001126025A (ja) * 1999-10-26 2001-05-11 Hitachi Ltd Ocr用フォーマットパラメータ作成方法

Also Published As

Publication number Publication date
US20140105497A1 (en) 2014-04-17
CN103778422B (zh) 2017-05-24
JP5820451B2 (ja) 2015-11-24
DE102013220470A1 (de) 2014-04-17
US9286534B2 (en) 2016-03-15
CN103778422A (zh) 2014-05-07

Similar Documents

Publication Publication Date Title
JP5820451B2 (ja) 光学式文字認識の為のセグメンテーションパラメータを選択及び表示するシステム及び方法
US11099972B2 (en) Testing user interfaces using machine vision
US10769473B2 (en) Image processing apparatus, image processing method, and non-transitory computer-readable storage medium
US10769487B2 (en) Method and device for extracting information from pie chart
US9767009B2 (en) Adaptation of automated test scripts
US9317767B2 (en) System and method for selecting segmentation parameters for optical character recognition
CN108229485B (zh) 用于测试用户界面的方法和装置
CN110837403B (zh) 机器人过程自动化
US20110214107A1 (en) Method and system for testing graphical user interfaces
RU2641225C2 (ru) Способ выявления необходимости обучения эталона при верификации распознанного текста
US20140050387A1 (en) System and Method for Machine Vision Inspection
US20150262030A1 (en) Image processing device, image processing method, and image processing program
CN111767228A (zh) 基于人工智能的界面测试方法、装置、设备和介质
JP6891779B2 (ja) テストスクリプト修正装置及びプログラム
US9600298B2 (en) Active and efficient monitoring of a graphical user interface
US20190065995A1 (en) Information processing apparatus and method of controlling information processing apparatus
US11348331B2 (en) Information processing apparatus and non-transitory computer readable medium
US11949828B2 (en) Information processing apparatus, information processing system, and non-transitory computer readable medium for performing preprocessing and character recognition to acquire item and value of image
JP2013171309A (ja) 文字切り出し方法、およびこの方法を用いた文字認識装置およびプログラム
CN112633341A (zh) 一种界面测试方法、装置、计算机设备和存储介质
CN115004247A (zh) 训练用于机器人过程自动化的光学字符检测和识别模型
JP2015187765A (ja) 帳票フォーマット情報登録方法及びシステム並びにプログラム
US11710331B2 (en) Systems and methods for separating ligature characters in digitized document images
EP4131010A1 (en) Method and system for performing human machine interface (hmi) automation testing
JP5845724B2 (ja) 画像処理装置及び画像処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140204

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140912

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141007

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20141222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150330

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150908

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151002

R150 Certificate of patent or registration of utility model

Ref document number: 5820451

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250