(54)【発明の名称】光学文字認識とインテリジェント文字認識とを使用したプロセス工業におけるトリップされたフィールドデバイスのポストモーテム分析のための方法およびツール
(58)【調査した分野】(Int.Cl.,DB名)
特色(980a、980b)を呈する新しい画像を識別するステップ(250)であって、前記特色が、少なくともしきい値量だけのフィールドデバイスデータの変化、または動作限界外で動作するフィールドデバイスデータのうちの少なくとも1つを含む、識別するステップ(250)と、
前記特色をハイライトするユーザインターフェースディスプレイ画面(900、901)を生成するステップ(252)と
をさらに含む、請求項1に記載の方法。
【発明を実施するための形態】
【0010】
[0020]以下で説明される
図1〜
図10、および本特許文献において本発明の原理について説明するために使用される様々な例は、例示的なものにすぎず、いかなる形でも本発明の範囲を制限するものと解釈されるべきではない。本発明の原理が、任意の好適な様式で、および任意のタイプの適切に構成されたデバイスまたはシステムにおいて実装され得ることを、当業者は理解されよう。
【0011】
[0021]
図1は、本開示による、例示的な工業プロセス制御および自動化システム100を示す。
図1に示されているように、システム100は、少なくとも1つの製品または他の材料の生産または処理を可能にする様々な構成要素を含む。たとえば、システム100は、1つまたは複数の工業プラント中の構成要素に対する制御を可能にするために使用され得る。各プラントは、1つまたは複数の処理設備(またはそれの1つまたは複数の部分)を表す。例示的な処理設備としては、少なくとも1つの製品または他の材料を生産するための製造プラント、化学プラント、原油精製所、鉱石処理プラント、ならびに紙またはパルプ製造および処理プラントがある。概して、各プラントは、1つまたは複数の工業プロセスを実装し得、個々にまたはまとめてプロセスシステムと呼ばれることがある。プロセスシステムは、概して、何らかの様式で1つまたは複数の製品または他の材料を処理するように構成された任意のシステムまたはそれの部分を表す。
【0012】
[0022]
図1では、システム100は、1つまたは複数のセンサー102aと1つまたは複数のアクチュエータ102bとを含む。センサー102aおよびアクチュエータ102bは、多種多様な機能のいずれかを実施し得るプロセスシステム中の構成要素を表す。たとえば、センサー102aは、温度、圧力、または流量など、プロセスシステムにおける多種多様な特性を測定することができる。また、アクチュエータ102bは、プロセスシステムにおける多種多様な特性を変えることができる。センサー102aの各々は、プロセスシステムにおける1つまたは複数の特性を測定するための任意の好適な構造を含む。アクチュエータ102bの各々は、プロセスシステムにおける1つまたは複数の状態に作用するかまたは影響を及ぼすための任意の好適な構造を含む。例示的なアクチュエータ102bとしては、ヒーター、モーター、接触分解器、またはバルブがある。
【0013】
[0023]少なくとも1つのネットワーク104がセンサー102aとアクチュエータ102bとに結合される。ネットワーク104は、センサー102aおよびアクチュエータ102bとの対話を可能にする。たとえば、ネットワーク104は、センサー102aからの測定データをトランスポートし、アクチュエータ102bに制御信号を与えることができる。ネットワーク104は、任意の好適なネットワークまたはネットワークの組合せを表すことができる。特定の例として、ネットワーク104は、少なくとも1つのイーサネットネットワーク、(HARTまたはFOUNDATION FIELDBUSネットワークなどの)電気信号ネットワーク、空気制御信号ネットワーク、あるいは他のまたは追加の(1つまたは複数の)タイプの(1つまたは複数の)ネットワークを表すことができる。
【0014】
[0024]様々なコントローラ106がネットワーク104に直接または間接的に結合される。コントローラ106は、様々な機能を実施するためにシステム100中で使用され得る。たとえば、コントローラ106の第1のセットは、1つまたは複数のアクチュエータ102bの動作を制御するために、1つまたは複数のセンサー102aからの測定値を使用し得る。コントローラ106の第2のセットは、コントローラの第1のセットによって実施される制御論理または他の動作を最適化するために使用され得る。コントローラ106の第3のセットは、追加の機能を実施するために使用され得る。
【0015】
[0025]コントローラ106は、しばしば、システム中で階層的に構成される。たとえば、個々のアクチュエータ、機械を形成するアクチュエータの集合、ユニットを形成する機械の集合、プラントを形成するユニットの集合、および企業を形成するプラントの集合を制御するために、異なるコントローラ106が使用され得る。コントローラ106の階層構成の特定の例は、プロセス制御の「パデュー(Purdue)」モデルとして定義される。異なる階層レベルにあるコントローラ106は、1つまたは複数のネットワーク108および関連するスイッチ、ファイアウォール、ならびに他の構成要素を介して通信することができる。
【0016】
[0026]各コントローラ106は、工業プロセスのうちの1つまたは複数の態様を制御するための任意の好適な構造を含む。コントローラ106のうちの少なくともいくつかは、たとえば、ロバスト多変数予測制御技術(RMPCT:Robust Multivariable Predictive Control Technology)コントローラ、あるいはモデル予測制御(MPC:model predictive control)または他の高度予測制御(APC:advanced predictive control)を実装する他のタイプのコントローラなど、多変数コントローラを表すことができる。
【0017】
[0027]コントローラ106およびシステム100の他の構成要素へのオペレータアクセスおよびそれとのオペレータ対話は、様々なオペレータコンソール110を介して行われ得る。上記で説明されたように、各オペレータコンソール110は、オペレータに情報を与えるために、およびオペレータから情報を受信するために使用され得る。たとえば、各オペレータコンソール110は、警告、アラーム、または工業プロセスに関連する他の状態を含む、工業プロセスの現在状態を識別する情報をオペレータに与えることができる。各オペレータコンソール110はまた、コントローラ106によって制御されるプロセス変数のための設定点を受信することによって、あるいはコントローラ106が工業プロセスをどのように制御するかを変えるかまたはそれに影響を及ぼす他の情報を受信することによってなど、工業プロセスがどのように制御されるかに影響を及ぼす情報を受信することができる。
【0018】
[0028]複数のオペレータコンソール110が、一緒にグループ化され、1つまたは複数の制御室112中で使用され得る。各制御室112は、任意の好適な構成で任意の数のオペレータコンソール110を含むことができる。いくつかの実施形態では、各制御室112が、工業プラントの個別部分を管理するために使用されるオペレータコンソール110を含んでいるときなど、複数の制御室112が、工業プラントを制御するために使用され得る。
【0019】
[0029]各オペレータコンソール110は、オペレータに情報を表示することと、オペレータと対話することとのための任意の好適な構造を含む。たとえば、各オペレータコンソール110は、1つまたは複数のプロセッサ、マイクロプロセッサ、マイクロコントローラ、フィールドプログラマブルゲートアレイ、特定用途向け集積回路、個別論理デバイス、あるいは他の処理または制御デバイスなど、1つまたは複数の処理デバイス114を含むことができる。各オペレータコンソール110は、(1つまたは複数の)処理デバイス114によって使用、生成、または収集される命令とデータとを記憶する1つまたは複数のメモリ116をも含むことができる。各オペレータコンソール110は、1つまたは複数のイーサネットインターフェースまたはワイヤレストランシーバなど、少なくとも1つのワイヤードまたはワイヤレスネットワーク上での通信を可能にする1つまたは複数のネットワークインターフェース118をさらに含むことができる。
【0020】
[0030]オペレータは、一般に、工業プロセスを管理することを受け持ち、しばしば、安全で有益な動作を維持するために、迅速におよび効率的に行動する必要がある。これを行うために、オペレータは、工業プロセスの現在状態を連続的に監視し、現在状態が人間の介入を必要とするかどうかを評価し、(必要とする場合)介入を実施し、介入の結果を査定する。これらの機能をサポートするオペレータコンソール110は、一般に、1つまたは複数のディスプレイ画面と、1つまたは複数のキーボードと、マウスまたはトラックボールなど、ポインティングデバイスとを含む。
【0021】
[0031]工業プロセスの現在状態が、現在トリップされているフィールドデバイスを含むとき、オペレータコンソール110中のディスプレイ画面のうちの1つまたは複数は、(1つまたは複数の)現在トリップされているデバイスの視覚インジケータを与える。工業プロセスのクリティカルプロセスを監視しているオペレータは、(1つまたは複数の)現在トリップされているデバイスのインジケータがクリティカルプロセスの一部であることを認識し得、(1つまたは複数の)現在トリップされているデバイスを含むそれのプロセスユニットの過去の情報を閲覧するための包括的なまたは便利なツールを望み得る。フィールドデバイスが電気機械的理由のために頻繁にトリップしている場合、プラント保守要員は、頻繁にトリップしているフィールドデバイスに関連する保守アクティビティをスケジュールすること、およびまた、デバイスのインベントリを保守することから恩恵を受けることができる。
【0022】
[0032]プロセスシステムに対する制御を可能にするために、オペレータコンソール110は、フィールドアセット保守システム(FAMS:field asset maintenance system)アプリケーション120を含み得る。FAMSアプリケーション120は、監視および/または制御されているプロセスの少なくとも一部を表すグラフィカルディスプレイを生成するための任意の好適なアプリケーションを含む。FAMSアプリケーション120は、人間機械インターフェース(HMI:human−machine interface)アプリケーションの特徴を含むことができる。HMIアプリケーションは、概して、オペレータにコンテンツを提示するためのグラフィカルディスプレイを生成するアプリケーションを表す。グラフィカルディスプレイは、オペレータによって監視および/または制御されている1つまたは複数のプロセス(またはそれの部分)を視覚的に表す。HMIアプリケーションは、制御されるべきプロセスを図式的に示すプロセス概略図など、任意の好適なグラフィカルデータをオペレータに提示することができる。より詳細には、FAMSアプリケーション120は、(1つまたは複数の)現在トリップされているデバイスを含むプロセスユニットの過去の情報のビューを与えるだけでなく、また、プロセスユニットが、クリティカルデバイスのうちの1つまたは複数のトリッピングから生じる停止など、停止に至ると、ポストモーテム分析がそれのために必要とされることになる、プロセスユニットのクリティカルデバイスを構成する、包括的なまたは便利なツールを与える。FAMSアプリケーション120は、オペレータが、ビデオの形態で保守ビュー画面を再生することと、光学文字認識(OCR)技法とインテリジェント文字認識(ICR)技法とを使用することによって(1つまたは複数の)フィールドデバイスのトリッピングの原因を見つけることとを可能にする。ICRは高度OCR技法であり、したがって、ICRはカスタムフォントおよびシンボルを認識する。
【0023】
[0033]本開示によれば、FAMSアプリケーション120は、1つまたは複数のコンピュータプロセッサによって実行されたとき、1つまたは複数のコンピュータプロセッサに、OCR技法とICR技法とを使用したプロセス工業におけるトリップされたフィールドデバイスのポストモーテム分析を実施させる。FAMSアプリケーション120は、様々なオペレータコンソール110上で稼動する様々なプロセスユニットの利用可能なビューを選択するためのツールをオペレータに与える。FAMSアプリケーション120は、オペレータが、選択されたプロセスユニットにおけるビューのスナップショットをキャプチャするために、プロセスユニットのクリティカルデバイスと監視頻度とを選択することを可能にする。FAMSアプリケーション120は、オペレータコンソール110上でプロセスユニットのビューの周期スナップショットをアーカイブし、ディスクスペースを温存するために暗号化および圧縮フォーマットで周期スナップショットを保存する。FAMSアプリケーション120は、アーカイビングがあまりに多くのディスクスペースを消費しないように、画像処理アルゴリズムを実装する。トリッピングが発生すると、FAMSアプリケーション120は、プロセスユニットのスナップショットが連続稼動プロセスを描くかのように、スナップショットを与えることができる。FAMSアプリケーション120によって与えられたスナップショットを使用することによって、オペレータは、トリッピングがそれにより発生した、すべてのクリティカルデバイスの様々なクリティカルパラメータの遷移を監視することができ、予防行為をとることができる。
【0024】
[0034]
図1は工業プロセス制御および自動化システム100の一例を示しているが、様々な変更が
図1に行われ得る。たとえば、工業制御および自動化システムには多種多様な構成がある。
図1に示されているシステム100は、プロセス工業におけるトリップされたフィールドデバイスのポストモーテム分析がOCR技法とICR技法とを使用して実施される、1つの例示的な動作環境を示すように意図されている。
図1は、本開示を特定の構成または動作環境に制限しない。
【0025】
[0035]
図2Aおよび
図2Bは、本開示による、OCR技法とICR技法とを使用したプロセス工業におけるトリップされたフィールドデバイスのポストモーテム分析を実施するための例示的な方法200を示す。説明を簡単にするために、
図2Aおよび
図2Bは、処理デバイス114が、FAMSアプリケーション120を実行することによって方法200を実施するかのように説明される。
図2Aおよび
図2Bに示されている方法200の実施形態は説明のためのものにすぎない。本開示の範囲から逸脱することなく、他の実施形態が使用され得る。
【0026】
[0036]方法200は5つの段階を含む。段階1 202は、ベース画像を準備するための初期化段階である。段階2 204は、各間隔についてスクリーンショットをキャプチャするためのデータキャプチャリング段階である。データ再形成段階206は、段階3 240と、段階4 250と、段階5 252とを含む。段階3 240は、記憶されたデータから画像を形成する方法を含む。段階4 250は、特有の挙動を有する画像およびデータを識別することを含む。段階5 252は、根本原因分析(RCA:root cause analysis)を実施するために、ツール中の記憶されたデータを表す方法を実装することを含む。これらの5つの段階は、データを記憶するための集中型データベースに関連し得、したがって、画面データがFAMSアプリケーション120を通してオペレータにとってアクセス可能になる。
【0027】
[0037]段階1 202は、動作208〜220を含む。動作208において、処理デバイス114は、(
図3に示されている)ベーススクリーンショット300をキャプチャする。オペレータコンソールのディスプレイ画面のビューのこの初期画像は、FAMSアプリケーション120によってキャプチャされ、後続の画像のためのベースである。
【0028】
[0038]動作210において、処理デバイス114は、初期ベーススクリーンショット300を(
図4に示されている)グリッド400に分割する。たとえば、ベーススクリーンショット300は、画像サイズに基づいてブロックのセットに分割される。これは、スケーリング問題を回避するために必要とされる。スケーリング問題は、このアルゴリズムが、同じプロセスユニットについて異なる解像度の複数の画面上で実行される場合、発生し得る。たとえば、スケーリング問題は、段階1 202のアルゴリズムがある画面上で実行され、段階2 224のアルゴリズムが、段階1 202のアルゴリズムがその上で実行された画面とは異なる解像度を有する別の画面上で実行される場合、発生し得る。グリッドパターン(たとえば、グリッド400)は、複数の画面にわたって均一な測定を適用するために役立つ。いくつかの実施形態では、画面サイズがあらかじめ定義され、したがって、グリッド内のブロックのセットは、あらかじめ定義された量または寸法を有することができる。代替的に、グリッドパターンの代わりに、ピクセルx−y座標が、画面解像度と要素のタイプとに基づいて使用され得る。本開示は、グリッドパターンのみまたはピクセルx−y座標のみに限定されず、また、画像内のロケーションを識別するための任意の好適なパラメータ化が使用され得る。
【0029】
[0039]動作212において、処理デバイス114は、初期ベーススクリーンショット300中のテキストを識別する。また動作212において、処理デバイス114は、ベース画像を生成するためにベーススクリーンショット300からテキストを削除する。以下でより詳細に説明されるように、
図5は、テキストなしベーススクリーンショット500、すなわち、テキストが削除されたベーススクリーンショットを示す。たとえば、処理デバイス114は、OCR技法とICR技法とを適用することによって画像中のテキストデータを見つけ、そのテキスト色を背景色に変換する。たとえば、ベーススクリーンショット300において、テキストデータ「ウォーターボイラー」は、異なる背景色(たとえば、赤)を覆う黒のテキスト色を有し、ベース画像の生成は、テキストデータ「ウォーターボイラー」が赤のテキスト色を有するようにすることを含む。いくつかの実施形態では、OCR技法および/またはICR技法が、テキストデータを見つけるためにベーススクリーンショットに適用され得る。
【0030】
[0040]動作214において、処理デバイス114は、初期ベーススクリーンショット300に対応するテキストデータとテキストロケーション情報とを記憶する。スクリーンショットをキャプチャする時間がスクリーンショットの識別子として使用され得、したがって、スクリーンショットをキャプチャする時間は、スクリーンショットへの対応を示す方法としてスクリーンショットのテキストデータとテキストロケーションとにリンクされ得ることに留意されたい。たとえば、処理デバイス114は、ベーススクリーンショット中の各テキストデータのロケーションを決定し、そのロケーションを、データベースに、およびテキストデータに対応して記憶する。たとえば、ベーススクリーンショット300中のテキストデータは、グリッドの第5の行内の列23〜29にかかる、「温度伝送器」という用語を形成する文字列を含むことができる。ボックスが{行,列}フォーマットによって識別されるとき、テキストデータ「温度伝送器」は、ボックス[5,23]、[5,24]、[5,25]、[5,26]、[5,27]、および[5,28]に対応する。表1は、テキストデータに対応するテキストロケーション情報をデータベースに記憶することの一例を与える。
【0032】
[0041]動作216において、処理デバイス114は、ベーススクリーンショットの各領域に識別情報を割り当てる。1つまたは複数の領域は、それの閉じられた境界の内側により小さい領域を含んでいることがある。すなわち、処理デバイス114は、ベーススクリーンショット中の各領域と各下位領域とを見つける。領域または下位領域を見つけるために、処理デバイス114は、(
図6において領域ID番号0によって示される)背景画像と同じではない閉領域を見つける。下位領域を見つけるために、処理デバイス114は、(
図6において領域ID番号9によって示される)別の閉領域内の(
図6において領域ID番号9.1によって示される)閉領域を見つける。以下でより詳細に説明されるように、
図6は、
図5のテキストなしベーススクリーンショット500の領域および下位領域を示す。処理デバイス114は、各領域および下位領域に領域識別番号を割り当てる。処理デバイス114は、下位領域9.1をそれの子として含む親として領域9を識別するなど、ツリー構造を使用して、下位領域に識別番号を割り当て得る。
【0033】
[0042]動作218において、処理デバイス114は、ベーススクリーンショットの一様でない色の領域を正規化する。すなわち、処理デバイス114は、2つ以上の色を含む各領域のための均一色を決定するために、その領域に等化方法(equalization method)を適用する。たとえば、テキストなしベーススクリーンショット500を処理することによって、処理デバイス114は、(左から右への方向で)領域1〜4が、白から黒に減衰する勾配色を有し、領域9.1が、黒から白に減衰する勾配色を有すると決定する。したがって、処理デバイス114は、領域1〜4および下位領域9.1に等化方法を適用し、これは、これらの前に多色の領域についてライトグレーが均一色であるという決定を生じる。以下でより詳細に説明されるように、
図7Aは、色正規化されたテキストなしベーススクリーンショットを示す。
【0034】
[0043]また動作218において、処理デバイス114は各領域に色を割り当てる。各領域が均一色に正規化された実施形態では、処理デバイス114は、各領域および下位領域に、RGB色フォーマットなど、単色を割り当てる。表2は、領域色に対応する領域識別番号をデータベースに記憶することの一例を与える。
【0035】
[0044]動作220において、処理デバイス114は、ベーススクリーンショット中の各領域のロケーションを決定し、そのロケーションを、データベースに、および領域識別番号に対応して記憶する。以下でより詳細に説明されるように、
図7Bは、
図4のグリッド400に従って分割された、色正規化されたテキストなしベーススクリーンショットを示す。たとえば、領域1は、ベーススクリーンショット中の列8の行4〜6にかかる。ボックスが{行,列}フォーマットによって識別されるとき、領域1は、ボックス[4,8]、[5,8]、および[6,8]に対応する。表2は、領域ロケーションに対応する領域識別番号をデータベースに記憶することの一例を与える。グリッドパターンのブロックサイズは、画面解像度と、コンソールステーションスクリーンショット中の要素および領域の間の最小距離とによって決定され得る。
【0037】
[0045]方法200は、動作220から動作222に進む。動作222において、処理デバイス114は、領域IDと、領域色情報と、領域ロケーション情報と、ベース画像とをデータベースに記憶する。方法200は、情報を情報のバッチとしてデータベースに記憶することに限定されず、個々の情報をデータベースに記憶することもできる。いくつかの実施形態では、方法200は、領域IDをデータベースに記憶するために、動作216から動作222に進み、方法200は、ベース画像をデータベースに記憶するために、動作218の後に動作222に戻る。ベース画像、テキストデータ、および領域データがデータベースに記憶されると、方法200は、動作222から段階2 204に進む。段階1 202中にデータベースに記憶されるベース画像、テキストデータ、および領域データは、画像を再構成するために後続の段階(すなわち、データ再形成段階206)において使用されることになる。いくつかの実施形態では、段階1 202は、さらなる精度および性能のために、テキスト、領域、色情報とともにベース画像からのより多くのパラメータを考慮し得る。
【0038】
[0046]段階2 204は、動作224〜236を含む。方法200は、周期的に、すなわち、間隔Tの頻度で段階2 204を繰り返すことを含む。間隔Tは、ユーザ選択またはユーザ要件に基づく構成可能な値である。段階2 204は、処理デバイス114が、段階1において、初期ベーススクリーンショット300を処理して、表1および表2などのテキストデータと領域データとを識別し、記憶し、段階2 204において、処理デバイス114が、追加のベーススクリーンショット300を処理して、テキストデータと領域データとを識別し、表1および表2などに記憶するという点で、段階1 202と同様である。いくつかの実施形態では、段階2 204は、処理デバイス114が、段階1 202において、初期ベーススクリーンショット300を処理して、ベース画像700を生成し、保存するが、処理デバイス114が、段階2 204において、追加のベーススクリーンショット300を保存しないことがあるという点で、段階1 202とは異なり得る。段階2 204のいくつかの実施形態は、各間隔Tのための対応するテキストデータおよび領域データに加えて、追加のベーススクリーンショット300をデータベースに保存する動作を含むことができるが、そのような実施形態は、追加のベーススクリーンショット300自体を記憶することなしに、各間隔Tのための対応するテキストデータおよび領域データを記憶する他の実施形態よりも多くのメモリを消費し得ることに留意されたい。いくつかの実施形態では、段階2 204は、さらなる精度および性能のために、テキスト、領域、色情報とともにベース画像からのより多くのパラメータを考慮し得る。
【0039】
[0047]動作224において、処理デバイス114は、追加のベーススクリーンショットをキャプチャする。オペレータコンソールのディスプレイ画面のビューのこの後続の画像は、前の画像またはスクリーンショットをキャプチャすることの完了時に開始する間隔Tの経過の後にFAMSアプリケーション120によってキャプチャされる。いくつかの状況では、間隔Tは、オペレータコンソール110中のディスプレイ画面上に示されるテキストデータの変化なしに経過し得、そのような状況では、追加のベーススクリーンショットは、前のベーススクリーンショットと同等のように見え得る。特定の例として、追加のベーススクリーンショットは、
図3の初期ベーススクリーンショット300と同等のように見えることがある。他の状況では、オペレータコンソール110中のディスプレイ画面上に示されるテキストデータまたは色データの変化が間隔T中に発生し得、そのような状況では、追加のベーススクリーンショットは、前のベーススクリーンショットとは異なって見え得る。
【0040】
[0048]動作226において、処理デバイス114は、追加のベーススクリーンショット中のテキストを識別する。たとえば、処理デバイス114は、OCR技法とICR技法とを適用することによって画像中のテキストデータを見つける。
【0041】
[0049]動作228において、処理デバイス114は、追加のベーススクリーンショットに対応するテキストデータとテキストロケーション情報とを記憶する。たとえば、処理デバイス114は、動作210と同様にして追加のベーススクリーンショットをグリッドに分割し、テキストロケーション情報を決定することができる。
【0042】
[0050]動作230において、処理デバイス114は、追加のベーススクリーンショット中の1つまたは複数の領域を識別する。すなわち、処理デバイス114は、追加のベーススクリーンショット中の各領域と各下位領域とを見つける。
【0043】
[0051]動作232において、処理デバイス114は、動作218の場合と同様にして、追加のベーススクリーンショットの一様でない色の領域を正規化する。動作234において、処理デバイス114は、動作230において識別されたかまたはさもなければ見つけられた各領域と各下位領域とに領域識別番号を割り当てる。いくつかの実施形態では、動作234はまた、処理デバイス114が、追加のベーススクリーンショット中の各領域のロケーションを決定することと、そのロケーションを、データベースに、および領域識別番号に対応して記憶することとを含む。動作236において、処理デバイス114は、動作218の場合と同様にして、追加のベーススクリーンショットの各領域と各下位領域とに色を割り当てる。
【0044】
[0052]方法200は、動作236から動作222に進む。追加のベーススクリーンショットに対応するテキストデータおよび領域データがデータベースに記憶されると、方法200は、段階2 204を繰り返すために動作222から動作224に進む。動作222において段階1 202と段階2 204との間に差異があること、すなわち、段階2 204において、動作222の一部としてベース画像を記憶する必要がないことに留意されたい。ただし、さらなる精度および性能のために、段階2 204においてもより多くの画像が記憶され得る。処理デバイス114が、アーカイブされた周期スクリーンショットのうちのいくつかをリプレイするためのユーザ選択を示す入力を受信すると、本方法は、動作222からデータ再形成段階206に進む。
【0045】
[0053]データ再形成段階206は、動作238と、段階3 240内の動作と、段階4 250内の動作と、段階5 252内の動作とを含む。動作238において、処理デバイス114はストレージからベース画像を検索する。すなわち、処理デバイス114は、段階1 202において生成され、動作222において記憶された、ベース画像にアクセスする。
【0046】
[0054]段階3 240において、方法200は、各時間間隔(T)のための新しい画像を反復的に再構成することを含む。より詳細には、段階3 240において、記憶されたデータから画像を形成する方法は、処理デバイス114によって実装され、動作242において、記憶された色データを検索し、動作244において、検索された色データをベース画像に適用し、動作246において、記憶されたテキストデータを検索し、動作248において、検索されたテキストデータを色付きのベース画像に重ね合わせる。コンソールステーションスクリーンショットまたはベース画像において、段階1 202および/または段階2 204が、さらなる精度および性能のために、テキスト、領域、色情報とともに追加のパラメータを考慮する実施形態の場合、段階3 240において追加のそれぞれの動作があることに留意されたい。
【0047】
[0055]
図3の初期ベーススクリーンショット300がその間にキャプチャされた時間間隔のための新しい画像を再構成することの非限定的な例として、処理デバイス114は、表2に記憶された色データを検索し(動作242)、表2に記憶された領域ロケーション情報に従って、検索された色データをベース画像の対応する領域に適用する(動作244)。
図7B中のベース画像700は、表2中の正規化された色がどこでテキストなしベース画像700に適用されるかを位置特定するためにグリッド400が使用されることを示す。さらに、処理デバイス114は、表1に記憶されたテキストデータを検索し(動作246)、検索されたテキストデータを色付きのベース画像に重ね合わせる(動作248)。
図8Aおよび
図8Bは、初期ベーススクリーンショット300がその間にキャプチャされた時間間隔のための再構成された画像800および801の例を与える。処理デバイス114は、表1に記憶されたテキストロケーション情報に従って、初期ベーススクリーンショット300の表1からの各テキストデータがどこで色付きのベース画像700と重なり合うかを位置特定するためにグリッド400を使用する。アーカイブされた周期スクリーンショットのうちのいくつかをリプレイするためのユーザ選択に対応する時間間隔(T)の各々のための新しい画像が再構成されたとき、方法200は段階4 250に進む。
【0048】
[0056]段階4 250において、処理デバイス114は、特色を呈する画像およびデータを識別する。すなわち、処理デバイス114は、特有の挙動を有する再構成されたベース画像およびデータを識別する。処理デバイス114は、特有の画像および/または特有のデータを視覚的にハイライトすることによって、それらを識別することができる。特有の挙動の例としては、急に(たとえば、あるフレームから次のフレームまでに、または限られた数の連続フレーム内に)色が変化したデバイスを有する画像、急な圧力および/または体積(PV)低下を有する画像、圧力および/または体積の急な増加を有する画像、あるいは(1つまたは複数の)急なアラームを有する画像がある。いくつかの実施形態では、ユーザ選択は、色、PV、またはアラームステータスの急変がその内で発生する、限られた数の連続フレームを、特有の挙動のインジケータとして設定することができる。いくつかの実施形態では、処理デバイス114は、特有の挙動のインジケータとしての、色、PV、またはアラームステータスの急変がその内で発生する、所定の限られた数の連続フレームにアクセスすることができる。
【0049】
[0057]段階5 252において、処理デバイス114は、再構成された画像と記憶されたデータとを表す。より詳細には、処理デバイス114は、前の段階中に形成された記憶されたデータと再構成された画像とを含むオペレータコンソール110中のディスプレイ画面を与えるために、(
図9Aおよび
図9Bに示されている)根本原因分析ツールユーザインターフェース(UI)を実装する。
【0050】
[0058]
図2Aおよび
図2Bは、OCR技法とICR技法とを使用したプロセス工業におけるトリップされたフィールドデバイスのポストモーテム分析を実施するための1つの例示的な方法200を示しているが、様々な変更が
図2Aおよび
図2Bに行われ得る。たとえば、図中の様々なステップは、重なり合うか、並列に行われるか、または任意の回数行われ得る。すなわち、これらの動作のうちのいくつかは、2回以上または異なる順序で実施され得るか、あるいは、いくつかの追加の指定されていない動作も、最良の性能および精度のために実施され得る。別の例として、動作210において、ベース画像は、各領域のおよびテキストの(
図10に示されている)ピクセルのx−y座標値が、(
図4に示されている)グリッドパターンの代替または追加として使用され得るように、分割されることになる。座標系を適用する場合、スクリーンショットの各ピクセルのロケーションは、各々が座標系の原点からの相対ロケーションに対応する、x値とy値とによって定義され得る。
【0051】
[0059]
図3は、本開示による、プロセスユニットの選択されたクリティカルデバイスのビューを与えるオペレータコンソール110ディスプレイ画面の例示的なベーススクリーンショット300を示す。ベーススクリーンショット300は、背景と、選択されたクリティカルデバイスを含むクリティカルプロセスユニットと、クリティカルデバイスのラベルと、プロセスフローコネクタ矢印と、クリティカルデバイスに関連するブロック内のプロセス変数値と、プロセス変数値を使用してクリティカルデバイスとプロセスフローとを制御するコントローラとを描く。コントローラはプロセスユニット内の構成要素であり得るか、または、コントローラは事前プログラムされた処理デバイスであり得、簡単のために、
図3は、コントローラがプロセスユニットの選択されたクリティカルデバイスであるかのように説明される。
【0052】
[0060]図示の例では、背景305は、ダークグレーなど、背景色を有する。プロセスユニットの選択されたクリティカルデバイスは、バルブ310と、ボイラー315と、温度伝送器320と、コントローラ325とを含む。バルブ310は、たとえば、緑色を有し得、ボイラー315は赤色を有し得、温度伝送器320は赤色を有し得る。コントローラ325は、3つの同様のサイズの矩形ボックスおよびより長い矩形ボックスとして描かれ、それらの各々は、(左から右への方向で)白から黒に減衰する勾配色を有する。温度伝送器320は、クレセント、垂直方向に細長い矩形の上の円、垂直方向に細長い矩形として描かれ、それらの各々は赤色を有する。温度伝送器320は、さらに、円内に矩形部分330を含み、矩形部分330は、それの赤色の周囲とは異なる色である、(左から右への方向で)黒から白に減衰する勾配色を有する。テキスト、すなわち、クリティカルデバイスのラベルおよびプロセス変数値は黒である。さらに、プロセスフローコネクタ矢印は、テキストと同じ色、すなわち、黒を有する。プロセス変数値ブロック335a〜335bは、背景色と同じである色、すなわち、ダークグレーを有する。いくつかの実施形態では、プロセス工業コンソールステーション110は、国際計測制御学会(ISA:International Society of Automation)によって推奨される画像を使用するが、これは必須ではなく、非ISA画像が使用され得る。
【0053】
[0061]プロセスユニットにおいて、バルブ310は、水の入口フローを受け取り、ウォーターポンプを使用して出口フローをボイラーにポンピングすることなどによって、出口フローをウォーターボイラー315に与える。プロセス変数値ブロック335a内に描かれるプロセス変数値「31%」は、バルブの開放状態のパーセントを示す。したがって、バルブ310は、それのスループット容量の31%を受け取るかまたは出力する。ボイラー315は、バルブ310から受け取った流体を沸騰させ、出力フローを与える。プロセス変数値ブロック335b内に描かれるプロセス変数値「21℃」は、ボイラー315内の流体の現在温度を示す。ボイラー315中の流体の温度を測定し、温度測定値を温度伝送器320に与えるために、温度センサーがボイラー315に関連し得る。温度伝送器320は、温度センサーを使用して温度測定値をプロセス変数値「21℃」として取得し、温度測定値をコントローラに与え、プロセス変数値を別のデバイスの受信機に送信することができる。たとえば、コントローラ325は、温度伝送器320によって与えられた温度測定値に基づいてバルブ310の位置を制御する。
【0054】
[0062]
図3は1つの例示的なベーススクリーンショット300を示しているが、様々な変更が
図3に行われ得る。たとえば、異なるプロセスユニットが描かれ得るか、あるいは、プロセスユニットは、より多い、より少ない、または異なるフィールドデバイスを含むことができる。
【0055】
[0063]
図4は、本開示による、グリッド400に分割された
図3のベーススクリーンショット300を示す。図示の例では、グリッド400は、18個の行と30個の列とを含む。グリッド400は、ブロックが重なり合わないように、画像サイズに基づくブロックのセットを含む。すなわち、ベーススクリーンショット300の各部分は、グリッド400の1つのブロックによってカバーされる。いくつかの実施形態では、ベーススクリーンショット300の各部分は、グリッド400の1つのブロック全体によってカバーされ、したがって、ベーススクリーンショットのどの部分も、部分的な、ブロック全体よりも小さいブロックによってカバーされない。グリッド400中の各ブロックは、グリッド400中の各他のブロックにサイズが等しくなり得る。
【0056】
[0064]
図4に示されているグリッド400の実施形態は説明のためのものにすぎない。本開示の範囲から逸脱することなく、他の実施形態が使用され得る。たとえば、他の実施形態は、グリッド中に異なる数の行または列を含むことができる。
【0057】
[0065]
図5は、本開示による、テキストなしベーススクリーンショット500を示す。すなわち、
図5は、テキストデータが削除された
図3のベーススクリーンショットを示す。
【0058】
[0066]テキストなしベーススクリーンショット500から削除された初期ベーススクリーンショット300のテキストデータは、クリティカルデバイスラベル、すなわち、「コントローラ」、「温度伝送器」、「ウォーターボイラー」、および「バルブ」を含む。テキストなしベーススクリーンショット500から削除された初期ベーススクリーンショット300のテキストデータは、プロセス変数値「21℃」および「31%」をさらに含む。
【0059】
[0067]OCR技法およびICR技法は、プロセス変数値ブロック335a〜335bの境界を、各々が含んでいるテキストデータと区別することができることに留意されたい。したがって、テキストなしベーススクリーンショット500はプロセス変数値ブロック335a〜335bを含む。
【0060】
[0068]
図6は、本開示による、
図5のテキストなしベーススクリーンショット500の領域および下位領域を示す。すなわち、
図6に示されている領域IDは、説明のためのものにすぎず、テキストなしベーススクリーンショット500の画像の一部ではない。
【0061】
[0069]図示の例では、テキストなしベーススクリーンショット500は領域0〜11と下位領域9.1とを含む。領域0は背景305である。領域1は、コントローラ325のより長い矩形ボックスである。領域2、3、および4は、コントローラ325の3つの同様のサイズの矩形ボックスである。領域5はボイラー315である。領域6は、バルブ310のボタン縦断面型部分であり、領域7および8は、バルブ310の三角部分である。領域9は、温度伝送器320の円部分であり、領域10は、温度伝送器320の垂直方向に細長い矩形部分である。下位領域9.1は、温度伝送器320の円内の矩形部分330である。領域11はプロセス変数値ブロック335bであり、領域12はプロセス変数値ブロック335aである。
【0062】
[0070]
図6は、テキストなしベーススクリーンショットの領域および下位領域の1つの例示的な識別を示しているが、様々な変更が
図6に行われ得る。たとえば、領域は、異なる順序で識別され得るか、あるいはアルファベット順で、または英数字順で識別され得る。
【0063】
[0071]
図7Aおよび
図7Bは、本開示によるベース画像700を示す。
図7Aは、ベース画像700が、
図5のテキストなしベーススクリーンショット500に色等化を適用した、色正規化された結果であることを示す。
図7Bは、
図4のグリッド400に従って分割された
図7Aのベース画像700を示す。
【0064】
[0072]非限定的な例として、領域0、11、および12はダークグレー色を割り当てられ得、領域1〜4および下位領域9.1はライトグレー色を割り当てられ得、領域5および9〜10は赤色を割り当てられ得、領域6〜8は緑色を割り当てられ得る。この色規約は、説明のために使用されるにすぎない。他の事例では、各要素の健全性を表すための任意の色があり得る。
【0065】
[0073]
図7Aおよび
図7Bは1つの例示的なベース画像700を示しているが、様々な変更が
図7Aおよび
図7Bに行われ得る。たとえば、領域1〜4および下位領域9.1は、異なるシェードまたは色に正規化され得る。
【0066】
[0074]
図8Aおよび
図8Bは、
図3の初期スクリーンショット300がその間にキャプチャされた時間間隔のための再構成された画像800および801の例を示す。
図8Aおよび
図8Bに示されている再構成された画像800、801の実施形態は説明のためのものにすぎない。本開示の範囲から逸脱することなく、他の実施形態が使用され得る。
【0067】
[0075]オペレータコンソール110中のディスプレイ画面上に示されるテキストデータの変化なしに間隔Tが経過する状況では、再構成された画像800は、前のベーススクリーンショットの色正規化されたバージョンのように見え得る。特定の例として、
図8Aの再構成された画像800は、
図3の初期ベーススクリーンショット300の色正規化されたバージョンのように見えることがある。オペレータコンソール110中のディスプレイ画面上に示されるテキストデータまたは色データの変化が間隔T中に発生する他の状況では、再構成された画像は、前のベーススクリーンショットの色正規化されたバージョンとは異なって見え得る。
【0068】
[0076]
図8Bは、色の勾配の情報が動作222の一部として記憶されたとき、再構成された画像801が、色の勾配をもつ領域を有することができることを示す。いずれかの領域が2つ以上の勾配色を有する場合、およびコンソールステーション110のスクリーンショット300との完全な一致のための画像再構成要件がある場合、各可能な領域画像が抽出され、(ローカルストレージになど)記憶され得、記憶された領域画像へのそれぞれのリンクが表2において与えられることになる。同様に、各領域と各テキストとのピクセルのx−y座標が記憶され得、再構成された画像801は、元のコンソールステーションスクリーンショットと正確に一致するように構成されることになる。
【0069】
[0077]
図9Aおよび
図9Bは、本開示による、オペレータコンソール110中のディスプレイ画面の根本原因分析ツールユーザインターフェース(UI)を示す。FAMSアプリケーション120はRCAツールUIを含む。
図9Aは、RCAツールUIの画像ビュー900を示し、
図9Bは、RCAツールUIのテーブルビュー901を示す。RCAツールUIは、段階1〜4 202、204、240、250中に形成された、記憶されたデータと再構成された画像とを示す。処理デバイス114は、オペレータコンソール110中のディスプレイ画面を制御することまたはそれと通信することによって、RCAツールUIの画像ビュー900とテーブルビュー901とを実装することができる。
【0070】
[0078]
図9Aに示されているように、RCAツールUIの画像ビュー900は、画像表示ボックス905と、画像のカテゴリーごとのサムネイルのセット910、915、920と、画像の選択されたカテゴリーのためのタイムライン925と、画像の選択されたカテゴリーからの画像サムネイル930a〜930gとを含む。画像表示ボックス905は、現在選択されている画像をフルサイズフォーマットで表示する。たとえば、画像表示ボックス905は、初期ベーススクリーンショットの再構成を示すことができる。別の例として、サムネイルのセット910、915、920に対応する画像のカテゴリーのうちの1つのユーザ選択を受信したことに応答して、画像表示ボックス905は、サムネイルの選択されたセットからの画像を示すことができる。別の例として、画像サムネイル930a〜930gのうちの1つのユーザ選択を受信したことに応答して、画像表示ボックス905は、選択された画像サムネイルのフルサイズフォーマットを示すことができる。
【0071】
[0079]図示の例では、画像のカテゴリーがあり、「すべての画像」カテゴリーはサムネイルのセット910に対応し、「特有の画像」カテゴリーはサムネイルのセット915に対応し、「ユーザ選択された画像」カテゴリーはサムネイルのセット920に対応する。サムネイルのすべての画像セット910は、OCR技法とICR技法とを使用したプロセス工業におけるトリップされたフィールドデバイスのポストモーテム分析を実施するための方法200を使用して形成された画像のすべてを含む。
【0072】
[0080]サムネイルの特有の画像セット915は、ユーザが、プロセスユニット内のフィールドデバイスのトリッピング発生の根本原因を特定するのを支援する。処理デバイス114は、フィールドデバイスの動作限界が超えられた1つまたは複数の画像をオペレータに示すために、段階4 250の動作を実行する。サムネイルの特有の画像セット915は、段階4 250内の動作において識別された、特色を呈する画像を含む。すなわち、サムネイルのセット915は、サムネイルのすべての画像セット910のサブセットを含む。サムネイルの特有の画像セット915は、画像のいずれもプロセスユニットの特有の挙動を呈しないとき、ヌルセットであり得る。
【0073】
[0081]サムネイルのユーザ選択された画像セット920は、ユーザ選択によって選択された画像を含む。たとえば、ユーザは、新しいカテゴリー、すなわち、「ユーザ選択された画像」と呼ばれるカテゴリーを形成するために当該の画像を選択するための選択権を有する。ユーザは、ユーザ選択された画像カテゴリーにドラッグ/ドロップされた画像を追加するために、「すべての画像」カテゴリーまたは「特有の画像」カテゴリーからサムネイルのユーザ選択された画像セット920に任意の画像をドラッグアンドドロップし得る。サムネイルのユーザ選択された画像セット920は、画像のいずれもオペレータによって選択されていないとき、ヌルセットであり得る。
【0074】
[0082]画像の選択されたカテゴリーのためのタイムライン925は、画像の選択されたカテゴリーがその間にキャプチャされた時間期間を表す。たとえば、「すべての画像」カテゴリーが選択されたとき、タイムライン925は、(たとえば、
図9Bの参照番号960aによって示される)開始時間から(たとえば、
図9Bの参照番号960bによって示される)停止時間までの時間期間を表す。開始時間は、初期ベーススクリーンショットがキャプチャされた時であり得る。停止時間の例としては、限定はしないが、直近の追加のベーススクリーンショットがキャプチャされた時、ユーザ選択された時点、または、初期ベーススクリーンショットがキャプチャされた後の選択された数の間隔Tがある。タイムライン925は、さらに、開始時間と停止時間との間の特定の時点または時間の特定のサブセットを視覚的に表す、タイムラインバー928を含む。たとえば、タイムラインバー928は、画像サムネイル930a〜930gに対応する画像のキャプチャリングがその間に行われた時間のサブセットを表すことができる。
【0075】
[0083]図示の例では、画像サムネイル930a〜930gは、「タイムライン中の画像サムネイル」とラベル付けされる。すなわち、画像の選択されたカテゴリーからの画像サムネイル930a〜930gは、タイムラインに従う順序で現れる。
【0076】
[0084]
図9AはRCAツールUIの1つの例示的な画像ビュー900を示しているが、様々な変更が
図9Aに行われ得る。たとえば、
図9A中の各構成要素は、任意の他のサイズ、形状、および寸法を有することができる。
【0077】
[0085]
図9Bに示されているように、RCAツールUIのテーブルビュー901は、特定の時間期間中のフィールドデバイスのデータのテーブル955と、フィールドデバイスデータをフィルタ処理するための様々なフィルタ960a〜960dと、他のステーションビューのためのテーブルを表すサムネイル画像965a〜965dとを含む。テーブル955は、データが記録された時間の列970を含む。たとえば、間隔Tは1秒であり得、したがって、各行は、間隔Tごとに記録されたフィールドデバイスデータを含むことができる。テーブル955は、特定のプロセスユニット中の各フィールドデバイスのための列975をさらに含む。特定のプロセスユニットは、圧力バルブあるいは圧力および/または体積に関連する他のデバイスなど、任意の数のフィールドデバイス(Dev−1−PV、Dev−2−PV、...Dev−n−PV)を含むことができる。テーブル955内のセルは、異なって色付けされたセルまたは異なって強調されたフォントを表示することなどによって、特色を視覚的にハイライトすることができる。特色は、フィールドデバイスデータ内の値の注目すべき変化であり得る。すなわち、ハイライトされたデータ980a〜980bは、ユーザが、プロセスユニット内のフィールドデバイスのトリッピング発生の根本原因を特定するのを支援する。処理デバイス114は、フィールドデバイスの動作限界が超えられた1つまたは複数の画像をオペレータに示すために、段階4 250の動作を実行する。
【0078】
[0086]特定の非限定的な例として、フィールドデバイスDEV−3−PVは、それの急な、すなわち、時間10:01:04における20の値から時間10:01:05における0の値への、値の低減によって特有の挙動を呈する。値の20単位変化または低減は、RCAツールユーザインターフェース(UI)の設定によっては、注目すべき変化(たとえば、しきい値量だけの変化)であり得る。別の例として、フィールドデバイスDEV−5−PVは、それの急な、すなわち、時間10:01:04における20の値から時間10:01:05における155の値への、値の増加によって特有の挙動を呈する。値の135単位変化または増加は、RCAツールユーザインターフェース(UI)の設定によっては、注目すべき変化であり得る。これらの例では、フィールドデバイスデータのための0値および155値は、デバイスの通常動作範囲または他の動作限界の外にあり得、したがって、特有でない値を含んでいるセルの色(たとえば、ラベンダー)とは異なる色(たとえば、赤)でセルがハイライトされる。すなわち、時間10:01:05から時間10:01:09まで、フィールドデバイスDEV−3−PVおよびDEV−5−PVは、ハイライトされたフィールドデバイスデータを有する。
【0079】
[0087]図示の例では、RCAツールUIのテーブルビュー901は4つのフィルタを含むが、任意の好適な数のフィルタがテーブル955に適用され得る。フィルタの例は、開始時間フィルタ960aのためのテキストボックス、停止時間フィルタ960bのためのテキストボックス、デバイスリストフィルタ960cのためのリストボックス、またはユーザ定義されたフィルタ960dのための他の好適な選択方法を使用することなど、ユーザ選択に基づいて調整される。時間の列970の範囲は、開始時間フィルタ960aの設定としての時間10:01:01と停止時間フィルタ960bの設定としての時間10:01:10とによって決定される。
【0080】
[0088]図示の例では、サムネイル画像965a〜965dは、4つの他のステーションビューのためのテーブルを表すが、任意の好適な数のサムネイル画像がRCAツールUIのテーブルビュー901中に表示され得る。上記で説明されたように、FAMSアプリケーション120は、様々なオペレータコンソール110上で稼動する様々なプロセスユニットの利用可能なビューを選択するためのツールを与え、したがって、サムネイル画像965aは、1つのオペレータコンソール110上で稼動する第1のプロセスユニットに対応することができ、他のサムネイル画像965b〜965dの各々は、異なるオペレータコンソール110上で各々が稼動する、第2〜第4のプロセスユニットに対応することができる。
【0081】
[0089]
図9BはRCAツールUIの1つの例示的なテーブルビュー901を示しているが、様々な変更が
図9Bに行われ得る。たとえば、
図9B中の各構成要素は、任意の他のサイズ、形状、および寸法を有することができる。
【0082】
[0090]
図10は、本開示による、
図3のベーススクリーンショット300に適用された座標系1000を示す。さらなる精度および性能のために、処理デバイス114は、ベーススクリーンショット中の各テキストデータと各領域とのロケーションをパラメータ化する際に使用するために、任意の初期または後続のスクリーンショットに座標系1000を適用することができる。座標系1000では、スクリーンショットの各ピクセルのロケーションは、各々が座標系の原点1015からの相対ロケーションに対応する、x値1005とy値1010とによって定義され得る。一例として、原点1015はベーススクリーンショット300の左上コーナーであり得、したがって、原点1015におけるピクセルは、0のy値と0のx値とを有する。
【0083】
[0091]一例として、処理デバイス114は、プロセス変数値ブロック335b、すなわち、領域12内のテキストデータが、ピクセル1030において頂点を形成する左境界1020と上境界1025とを有すると決定することができる。処理デバイス114は、頂点ピクセル1030または左境界1020が、原点1015からx値1005個のピクセルだけ水平方向にまたは右方向に配置されると決定することができる。処理デバイス114は、頂点ピクセル1030または上境界1025が、原点1015からy値1010個のピクセルだけ垂直方向にまたは下方向に配置されると決定することができる。処理デバイス114は、領域の他の境界または他のテキストデータのロケーションを決定するために、同様のプロセスを適用することができる。たとえば、処理デバイス114は、プロセス変数値ブロック335b、すなわち、領域11内のテキストデータが、ピクセル1045において頂点を形成する左境界1035と上境界1040とを有すると決定することができる。
【0084】
[0092]
図10に示されているように、ピクセルのxおよびy座標は、さらなる精度および性能のために使用され得る。いくつかの実施形態では、ベーススクリーンショット300中の要素(すなわち、テキスト、領域など)をカバーする矩形のピクセルのx−y座標値も、
図4のグリッド400よりも良好な精度のために使用され得る。
【0085】
[0093]いくつかの実施形態では、上記で説明された様々な機能は、コンピュータ可読プログラムコードから形成され、コンピュータ可読媒体において実施される、コンピュータプログラムによって実装またはサポートされる。「コンピュータ可読プログラムコード」という句は、ソースコード、オブジェクトコード、および実行可能コードを含む、任意のタイプのコンピュータコードを含む。「コンピュータ可読媒体」という句は、読取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、ハードディスクドライブ、コンパクトディスク(CD)、デジタルビデオディスク(DVD)、または他のタイプのメモリなど、コンピュータによってアクセスされることが可能な任意のタイプの媒体を含む。「非一時的」コンピュータ可読媒体は、一時的な電気信号または他の信号をトランスポートする、ワイヤード、ワイヤレス、光、または他の通信リンクを除外する。非一時的コンピュータ可読媒体は、データが永続的に記憶され得るメディアと、書き換え可能な光ディスクまたは消去可能メモリデバイスなど、データが記憶され、後で上書きされ得るメディアとを含む。
【0086】
[0094]本特許文献全体にわたって使用されるいくつかの語および句の定義を記載することが有利であり得る。「アプリケーション」および「プログラム」という用語は、1つまたは複数のコンピュータプログラム、ソフトウェア構成要素、命令のセット、プロシージャ、関数、オブジェクト、クラス、インスタンス、関係するデータ、または(ソースコード、オブジェクトコード、または実行可能コードを含む)好適なコンピュータコードにおける実装のために適応されたそれらの一部分を指す。「含む(include)」および「備える、含む(comprise)」という用語ならびにそれの派生語は、限定はしないが含むことを意味する。「または(or)」という用語は包含的であり、および/または(and/or)を意味する。「〜に関連する(associated with)」という句ならびにそれの派生語は、含むこと、〜内に含まれること、〜と相互接続すること、含んでいること、〜内に含まれていること、〜にまたは〜と接続すること、〜にまたは〜と結合すること、〜と通信可能であること、〜と協働すること、インターリーブすること、並置すること、〜に近接すること、〜にまたは〜と結び付けられること、有すること、〜のプロパティを有すること、〜へのまたは〜との関係を有することなどを意味し得る。「のうちの少なくとも1つ」という句は、項目の列挙とともに使用されるとき、列挙された項目のうちの1つまたは複数の異なる組合せが使用され得ること、および列挙中の1つの項目のみが必要とされ得ることを意味する。たとえば、「A、B、およびCのうちの少なくとも1つ」は、以下の組合せ、すなわち、A、B、C、AおよびB、AおよびC、BおよびC、ならびにAおよびBおよびCのいずれをも含む。
【0087】
[0095]本開示は、いくつかの実施形態および概して関連する方法について説明したが、これらの実施形態および方法の改変および置換は当業者にとって明らかであろう。したがって、例示的な実施形態の上記の説明は本開示を定義または制約しない。他の変更、代替、および改変も、以下の特許請求の範囲によって定義される本開示の趣旨および範囲から逸脱することなく可能である。