(57)【特許請求の範囲】
【請求項１】
コンピュータにより実現される方法において、
実行可能な命令を有するように構成されている１つ以上のコンピュータシステムの制御下で、
文字部分と背景部分とを含む画像中の画像の一部分の１つ以上の輝度勾配を分析して、１つ以上の可能性のあるエッジ位置を特定し、前記画像は、複数のピクセルに対するピクセル値を含むことと、
前記１つ以上の可能性のあるエッジ位置の所定距離内の１組のピクセルに対するピクセル値を分析して、文字部分の文字ピクセル値と、文字部分を含んでいない背景部分の背景ピクセル値とを判定することと、
前記判定した文字ピクセル値と前記判定した背景ピクセル値との間になるように、前記画像の一部分に対する文字ピクセル値の閾を判定することと、
前記文字ピクセル値の閾を少なくとも満たすピクセル値を有する、前記１組のピクセルの一部分に少なくとも部分的に基づいて、１つ以上の文字部分を判定することとを含むコンピュータにより実現される方法。
【請求項２】
文字認識アルゴリズムを使用して前記１つ以上の文字部分を分析して、前記１つ以上の文字部分に関係付けられている少なくとも１つの文字を認識することをさらに含む請求項１記載のコンピュータにより実現される方法。
【請求項３】
エッジ位置は、エッジ選択閾を少なくとも満たす値を有する、ピクセル輝度勾配またはピクセル飽和勾配に対応する請求項１記載のコンピュータにより実現される方法。
【請求項４】
前記ピクセル値を分析することは、
前記１つ以上の可能性のあるエッジ位置の第１の側にある第１の組のピクセルを分析することと、
前記１つ以上の可能性のあるエッジ位置の第２の側にある第２の組のピクセルを分析することとを含む請求項１記載のコンピュータにより実現される方法。
【請求項５】
前記ピクセル値は、グレースケールピクセル輝度値、カラーピクセル輝度値、ピクセル飽和値、または、ピクセル飽和レベル、のうちの少なくとも１つに対応する請求項１記載のコンピュータにより実現される方法。
【請求項６】
テキストライン構成アルゴリズムを使用して、前記１つ以上の文字部分の関連する個別の文字要素を判定することをさらに含む請求項１記載のコンピュータにより実現される方法。
【請求項７】
前記関連する個別の文字要素を判定した後に、前記個別の文字要素の支配的方向を判定することをさらに含む請求項６記載のコンピュータにより実現される方法。
【請求項８】
前記個別の文字要素が少なくとも１つの予め規定された文字制約を満たすか否かを判定することと、
前記個別の文字要素が前記予め規定された文字制約のうちの少なくとも１つを満たさないときに、前記個別の文字要素を検討の対象から外すこととをさらに含む請求項６記載のコンピュータにより実現される方法。
【請求項９】
前記予め規定された文字制約は、文字要素間の間隔、隣接する文字要素の高さと幅の比、または、文字要素の垂直配列、のうちの少なくとも１つを含む請求項８記載のコンピュータにより実現される方法。
【請求項１０】
結合コンポーネントアルゴリズムを使用して、前記文字ピクセル値の閾を少なくとも満たすピクセル値を有する、前記複数のピクセルのうちのピクセルを関係付けることと、
ストローク幅変換アルゴリズムを前記関係付けたピクセルに適用することと、
前記ストローク幅変換アルゴリズムを適用した結果を、文字認識アルゴリズムに提供することとをさらに含む請求項５記載のコンピュータにより実現される方法。
【請求項１１】
前記文字部分の最小文字ピクセル値を判定することと、
前記背景部分の最大背景ピクセル値を判定することと、
前記最小文字ピクセル値と前記最大背景ピクセル値との間の中間点として、前記文字ピクセル値の閾を判定することとをさらに含む請求項１記載のコンピュータにより実現される方法。
【請求項１２】
携帯型コンピューティングデバイスにおいて、
プロセッサと、
命令を含むメモリデバイスとを具備し、
前記命令は、前記プロセッサによって実行されるとき、前記プロセッサに、
文字部分と背景部分とを含む画像中の画像の一部分の１つ以上の輝度勾配を分析させて、１つ以上の可能性のある文字エッジ位置を特定させ、
前記１つ以上の可能性のあるエッジ位置の所定距離内の１組のピクセルに対するピクセル値を分析させて、文字部分の文字ピクセル値と、文字部分を含んでいない背景部分の背景ピクセル値とを判定させ、
前記判定させた文字ピクセル値と前記判定させた背景ピクセル値との間になるように、前記画像の一部分に対する文字ピクセル値の閾を判定させ、
前記文字ピクセル値の閾を少なくとも満たすピクセル値を有する、前記１組のピクセルの一部分に少なくとも部分的に基づいて、１つ以上の文字部分を判定させる携帯型コンピューティングデバイス。
【請求項１３】
前記命令は、前記プロセッサによって実行されるとき、前記携帯型コンピューティングデバイスが、
文字認識アルゴリズムを使用して前記文字部分を分析して、前記１つ以上の文字部分に関係付けられている少なくとも１つの文字を認識することをさらに可能にする請求項１２記載の携帯型コンピューティングデバイス。
【請求項１４】
前記命令は、前記プロセッサによって実行されるとき、前記携帯型コンピューティングデバイスが、
前記認識した少なくとも１つの文字に対応する文字パターンを特定することと、
前記文字パターンに関係付けられている、前記携帯型コンピューティングデバイス上のアプリケーションを判定することと、
前記判定したアプリケーションに対して、前記認識した少なくとも１つの文字を提供することとをさらに可能にする請求項１３記載の携帯型コンピューティングデバイス。
【請求項１５】
前記ピクセル値を分析させる命令は、
前記プロセッサによって実行されるとき、前記携帯型コンピューティングデバイスが、
前記１つ以上の可能性のあるエッジ位置の第１の側にある第１の組のピクセルを分析することと、
前記１つ以上の可能性のあるエッジ位置の第２の側にある第２の組のピクセルを分析することとをさらに可能にする命令をさらに含む請求項１２記載の携帯型コンピューティングデバイス。
【請求項１６】
前記命令は、前記プロセッサによって実行されるとき、前記携帯型コンピューティングデバイスが、
結合コンポーネントアルゴリズムを使用して、前記文字ピクセル値の閾を少なくとも満たすピクセル値を有する、複数のピクセルのうちの隣接するピクセルを関係付けて、文字の少なくとも一部分を形成することをさらに可能にする請求項１２記載の携帯型コンピューティングデバイス。
【発明の詳細な説明】
【背景技術】
【０００１】
人々がタブレットコンピュータおよびスマートフォンなどの携帯型デバイスを含むさまざまなコンピューティングデバイスをますます利用していることに伴い、人々がこれらのデバイスとやりとりする方途に適応することが好都合であり得る。ユーザは、電話番号を手動で入力して電話をかけること、Ｅメールアドレスを手動でタイプしてＥメールを送信すること、ウェブアドレスをウェブブラウザに手動でタイプしてウェブページを閲覧することなどに慣れている。これらのタスクはしばしば単調であり、かつ時間がかかる。種々のデバイスにおいて、電話番号をお気に入りリストに割り当てる、ウェブアドレスをブックマークするなど、ユーザの時間を節約するための種々の方法が提供されてきた。技術が進歩するにつれて、および携帯型コンピューティングデバイス上に提供される機能およびサービスが進歩および拡張するにつれて、手早い方法および他の時間短縮方法が提供される方途は変化している。
【図面の簡単な説明】
【０００２】
本開示に従う種々の実施形態が図面を参照して記載される。  
【図１Ａ】一実施形態に従う、携帯型コンピューティングデバイスを保持するユーザが地図アプリケーションにテキストを提供する実施例を説明したものである。
【図１Ｂ】一実施形態に従う、携帯型コンピューティングデバイスを保持するユーザが地図アプリケーションにテキストを提供する実施例を説明したものである。
【図１Ｃ】一実施形態に従う、携帯型コンピューティングデバイスを保持するユーザが地図アプリケーションにテキストを提供する実施例を説明したものである。
【図２Ａ】一実施形態に従う、携帯型コンピューティングデバイスを保持するユーザが電話アプリケーションに電話番号を提供する実施例を説明したものである。
【図２Ｂ】一実施形態に従う、携帯型コンピューティングデバイスを保持するユーザが電話アプリケーションに電話番号を提供する実施例を説明したものである。
【図２Ｃ】一実施形態に従う、携帯型コンピューティングデバイスを保持するユーザが電話アプリケーションに電話番号を提供する実施例を説明したものである。
【図３Ａ】一実施形態に従う、携帯型コンピューティングデバイスを保持するユーザがブラウザにテキストを提供する実施例を説明したものである。
【図３Ｂ】一実施形態に従う、携帯型コンピューティングデバイスを保持するユーザがブラウザにテキストを提供する実施例を説明したものである。
【図３Ｃ】
【図４】種々の実施形態に従う、携帯型コンピューティングデバイス上のアプリケーションにテキストを提供するための工程の例を説明したものである。
【図５】種々の実施形態に従う、テキスト検出のための画像を前処理する実施例を説明したものである。
【図６】種々の実施形態に従う、ピクセル領域の拡大図を示したものである。
【図７Ａ】種々の実施形態に従う、距離対勾配の輝度グラフの例を説明したものである。
【図７Ｂ】種々の実施形態に従う、距離対勾配の輝度グラフの例を説明したものである。
【図７Ｃ】種々の実施形態に従う、距離対勾配の輝度グラフの例を説明したものである。
【図８】種々の実施形態に従う、テキスト検出の工程の例を説明したものである。
【図９】種々の実施形態に従う、テキスト検出のための画像を前処理する実施例を説明したものである。
【図１０Ａ】種々の実施形態に従って利用され得るコンピューティングデバイスの正面図および後面図の例を示したものである。
【図１０Ｂ】種々の実施形態に従って利用され得るコンピューティングデバイスの正面図および後面図の例を示したものである。
【図１１】種々の実施形態に従って利用され得るコンピューティングデバイスのコンポーネントレベルの例を説明したものである。
【図１２】種々の実施形態が実施され得る環境を説明したものである。
【発明を実施するための形態】
【０００３】
本開示の種々の実施形態に従うシステムおよび方法は、テキスト情報をアプリケーション、システム、またはサービスに提供するための従来の手法において経験される、前述の、および他の欠陥の１つ以上を克服し得る。具体的には、種々の実施形態は、携帯型コンピューティングデバイスが、テキストを含む画像情報を取得すること、画像内のテキストの場所を特定すること、テキストの種類またはパターン（例えば、Ｅメール、電話番号、ＵＲＬなど）を特定すること、テキストに関連付けられる機能またはアプリケーション（例えば、電話番号に電話する、インターネットブラウザを開くなど）を判定すること、および／またはテキストに関連付けられる機能またはアプリケーションを実施することなどのタスクを実施することを可能にする。少なくともこれらのタスクのうちのいくつかは、ネットワークを通して利用可能な少なくとも１つの資源をも用いて実施され得る。
【０００４】
種々の実施形態は、ユーザがテキストを含むオブジェクトに、このオブジェクトの画像をキャプチャするためにカメラを向けることを可能にする。カメラは、テキストを認識、特定、および／または分離してテキストをアプリケーションまたは機能に送信するために、画像を取り込み、かつ画像を処理する（または処理のために画像を提供する）能力をもつ携帯型コンピューティングデバイスと一体化され得る。アプリケーションまたは機能は次に、テキストを利用して実質的にリアルタイムでアクションを実施することができる。例えば、通りを歩いているユーザは、電話番号を含む広告を見る可能性がある。ユーザは、本明細書に記載の教示を用いて、例えば、スマートフォンのカメラを例えば番号に向けて、この番号を手動で入力することなく、この番号を電話アプリケーションに入力することにより、この電話番号に電話することができる。一例において、デバイスは、画像から番号を入力し、通話を開始するというユーザの指示を待ち得、または他の例において、電話はデバイスによって自動的にかけられ得る。本例は、ウェブアドレスまたはＵＲＬをウェブブラウザ、新規のメッセージウィンドウを開くためのＥメールアドレス、地図アプリケーションを開いて道順を表示するための物理的な住所、およびさまざまな他のアクション可能なデータ種類を入力することに拡張され得る。
【０００５】
種々の実施形態は、照明、陰影、コントラスト、または他のかかる側面における変形に対してロバストな手法を用いて１つの画像の中のテキストを検出および認識することができる。例えば、カメラは、部分的に影で覆われた看板の画像をキャプチャし得る。少なくとも部分的にこの影によって、テキスト文字の色値と背景領域との間の分離は、影になっている領域と影になっていない領域との間で異なる。さらに、分離に影響を与え得る陰影における変化が存在し得る。ゆえに、その画像についての単一の閾は、ピクセル色値などの側面に基づいてテキスト領域から背景領域を分離するには不十分であり得る。本明細書に記載の手法は、それぞれの場所のための適切な閾を判定するために、１つの画像にわたってさまざまな場所で分離値を分析し得る。閾は、よって、１つの画像にわたってさまざまに異なり得、および照明条件、コントラストなどにおける変更に適合し得る。かかる手法は、いくつかの状況においてテキスト検出の正確性を向上させ得、また他の状況においてテキスト認識工程の速度および効率性を少なくとも増加させ得る。
【０００６】
種々の他のアプリケーション、処理、および使用が種々の実施形態に関して以下に提示される。
【０００７】
図１は、イベントのチラシ１０６の上で携帯型コンピューティングデバイス１０２を保持しているユーザを示す状況の例１００を説明したものである。イベントのチラシ１０６は、イベントの場所の物理的な住所を含み、かつこの例において、ユーザはその場所への道順を探している。道順を取得するために、ユーザはデバイス１０２のカメラをアドレスを含むチラシの一部分に向けて、図１Ａの画面１０４を通して見ることができるように、そのアドレスの画像をキャプチャまたは取得し得る。一実施形態において、画像を取得し、および／またはテキストの存在を示すプロパティを有する１つ以上の一部分を特定すると、デバイス１０２上のアプリケーションが光学的文字認識（ＯＣＲ）アルゴリズムを自動的に実行して、チラシの画像化されたテキストを認識する。ＯＣＲアルゴリズムは、種々の実施形態において、種々の技術を活用する機械視覚アルゴリズムおよび他の画像前処理アルゴリズムを含み得る。ＯＣＲアルゴリズムは、テキストまたは文字の文字列を含み得る１つの画像の１つ以上の領域を特定および分析するために実行する。任意の特定された文字列は、Ｅメールアドレス、ＵＲＬ／ウェブアドレス、電話番号、および同等物などの関与するデータオブジェクトまたは種類の存在を示し得るパターンをさらに特定するために分析される。再び図１を参照して、物理的な住所の存在を示す文字列が特定されている。この例において、ユーザは、図１Ｂに示されるように、特定のアクションを実施する、または物理的な住所に関連付けられる既定のルーチンまたはワークフローを実行するユーザの意図を確定するように促される。この例において、既定のルーチンは地図アプリケーションを開かせ、住所への道順を表示させる。この例において、ユーザは第１に、「はい」ボタンを押すことによって意図を確定することができ、これにより図１Ｃに示されるように、イベントへの道順を記した地図が携帯型コンピューティングデバイス１０２の画面１０４上に表示される。
【０００８】
図２は、図２Ａに示される名刺２０６の上で携帯型コンピューティングデバイスを保持しているユーザ２０２を示す状況の例２００を説明したものである。上述のとおり、デバイス２０２、またはデバイスと通信しているサービスは、キャプチャした名刺の画像の中のテキストの場所を特定し、テキストの種類またはパターン（例えば、Ｅメールアドレス、電話番号、ＵＲＬなど）を特定し、テキストの種類に関連付けられる機能またはアプリケーション（例えば、電話番号に電話する、インターネットブラウザを開くなど）を判定し、アプリケーションまたは機能に場所を特定されたテキストの少なくとも関連のある一部分を送信してそれとともに操作を実行する。この例において、名刺２０６は、関与する複数のデータオブジェクトを含み、これらは電話番号、Ｅメール、および物理的な住所である。一例において、ユーザは、複数のデータ種類が特定された場合に、１つのデータ種類を別のものよりも優先させる、種々の機能またはアプリケーションに優先度を割り当てることができる。別の例において、デバイス２０２は、さまざまな利用可能な機能またはアプリケーションの中からの選択をユーザに促し得る。
【０００９】
再び図２を参照して、２つ以上のデータオブジェクトを特定するデバイスは、図２Ｂに示されるように、オブジェクトを連絡先情報として保存するためのアドレス帳アプリケーションを立ち上げるという選択肢をユーザに促し得る。代替的に、ユーザは、「この番号に電話するには１を、道順を探すには２を、Ｅメールを送信するには３を、連絡先を保存するには４を押してください」などのメッセージを持つ画面２０４を介して促され得る。一例において、データ種類のテキストは、自動的に各々のデータフィールドの種類へと追加され得る。さらに、種々の実施形態において、デバイス２０２は、名刺などのオブジェクトを認識し、これにデフォルトのワークフローを関連付けるためのダウンロード可能なプラグインをプログラムされ、あらかじめ組み込まれ、または含み得、これはいくつかの例において、データを連絡先として保存するためであり得る。図２の例において、ユーザは、図２Ｂに示されるように、名刺２０６に関連付けられる連絡先を保存するように促される。この場合、しかしながら、ユーザは名刺上の電話番号に電話することを所望し、「いいえ」を選択する。一例において、デバイス２０２は、個々の選択肢をユーザに再び促し得るか、またはユーザは、既定のルーチンを自動的に実行するか、または所定の操作を実行するというアプリケーションの優先度を設定した場合がある。ここで図２Ｃを参照して、ユーザは、この電話番号に電話をかけるという選択肢を選択したか、またはユーザは、電話番号をダイヤルすることを優先操作として割り当て、この番号に電話をかけているデバイス２０２が示される。
【００１０】
図３は、ユーザが携帯型コンピューティングデバイス３０２を窓３０８の方に向けている状況の例３００を説明したものである。窓３０８は、この例において、図３Ａに示される、その上に印刷されたウェブアドレスを有する。種々の実施形態に従い、道を歩いているユーザは、アドレスを手動でウェブブラウザの中へとタイピングする代わりに、ウェブアドレスに移動するための近道として、デバイス３０２に関連付けられるカメラをウェブアドレスに向け得る。この例において、ユーザは、ウェブアドレスを含む窓の画像を手動でキャプチャするために、画面３０４上のアイコン３０６を選択するか、または別のかかる入力を提供しなければならない。前の例において、カメラは、画像をキャプチャしてルーチンを開始する、または特定のデータオブジェクトに関連付けられる動作を実行するというユーザの意図を予測するために、例えば、ジャイロスコープ、加速度計、光センサ、またはそれらの組み合わせを含んでいた場合がある。この例において、ユーザはデバイス３０２をかざし、カメラで窓３０８を狙い、アイコン３０６を押してウェブアドレスの画像をキャプチャする。次に、上述のとおり、デバイスまたはサービスは、図３Ｂに示されるように、ＯＣＲアルゴリズムを通じて実行し、画像の中のテキストの場所を特定し、テキストの種類またはパターン、この例においてはウェブアドレスを特定し、ブラウザアプリケーションを立ち上げ、ユーザをレストランのウェブアドレスへと誘導する。
【００１１】
図４は、種々の実施形態に従うコンピューティングデバイス上のアプリケーションまたは機能に文字情報を提供するための工程の例４００を説明したものである。本明細書において検討されるあらゆる工程について、別様に記載のない限り、種々の実施形態の範囲内で、追加的な、より少ない、または代替的なステップが、類似のまたは代替的な順序で、または並行して実施され得るということが理解されるべきである。この例において、画像または画像情報（例えば、ビデオストリーム）が取得される４０２。種々の実施形態において、画像または画像情報は、携帯型コンピューティングデバイスのカメラアプリケーションから取得される。一例において、カメラに面したオブジェクトの上にデバイスを空中停止すると、カメラに少なくとも１つの画像を自動的にキャプチャさせるか、または一連の画像を記録し得る。別の例において、カメラは、画像をキャプチャするために、例えば、ユーザがタッチ画面上のアイコンを選択するなどによるユーザからの入力を必要とする。取得された画像情報は、処理されてテキストまたは文字の文字列のプロパティを有する少なくとも１つの領域の場所を特定する４０４。一例において、処理は画像情報を受信すると自動的に開始される。カメラはまた、連続画像キャプチャモードであることもできる。これは、しかしながら、エネルギー集約型であるため、ユーザは、デバイスを連続的に画像キャプチャおよび処理モードで動作させる、またはこれを無効にする、さまざまな選択肢または環境を選択し得る。例えば、設定は、バッテリが特定のレベルまで消耗したときに、連続的なキャプチャおよび処理モードが自動的にオフにされるように選択され得る。この例において、テキストの文字列は、テキストの文字列４０６の中のテキストを認識するための光学式文字認識アルゴリズムを用いて分析される。ＯＣＲアルゴリズムは、機械視覚アルゴリズムおよび他の画像処理技術またはアルゴリズムを含むことができる。認識されたテキスト４０８に対応するテキストパターン（例えば、Ｅメール、電話番号、ＵＲＬなど）が特定される。この例において、判定されたテキストパターン４１０に関連付けられるアプリケーションおよび認識されたテキストが自動的にアプリケーションに提供される。
【００１２】
一実施形態において、デバイスは、テキストの一部分内の関与するデータオブジェクトを認識しない場合がある。この場合、デバイスは、ユーザにウェブ検索を実施する、プラグインを検索して認識されていないパターンを認識するなどのさまざまな他の選択肢を提供するようにプログラムされ得る。ユーザは、テキストの一部分を選択して、このテキストをＥメール、ノートパッド、または種々の他のアプリケーションにコピー／ペーストするように促される場合がある。
【００１３】
種々の実施形態は、照明、陰影、コントラスト、または他のかかる側面における変化に対してロバストな画像の中のテキストを検出および認識する手法を提供する。例えば、図５は、コンピューティングデバイスのカメラを用いてキャプチャされる（または別様に取得される）ことができる画像の一部分の例５００を説明したものである。画像部分の例５００は、図３に関して上述した、「Ｇｏｏｄ  Ｆｏｏｄ  Ｃａｆｅ」のＵＲＬに対応する。図示される画像部分５００は、文字「ｏ」５０２ａおよび５０２ｂの２つの例を含む。図示されるように、キャプチャされた画像部分は、文字のうちの一方５０２ｂの一部分にかかる影の領域５０４を含む。この例において、部分５００は、他のかかる選択肢の中でもとりわけ、画像がカラー画像であるか、またはグレースケール画像に変換されたカラー画像であっても、グレースケール画像であると仮定される。領域が論理的に複数のセグメント５０６に分割されると、影の領域の外にあり、かつテキスト文字の一部分を持たないセグメントは、黒のテキスト文字であれば０の色値を有する場合、実質的に白（例えば、１の色値を有する）であると見なされ得る（他のかかる選択肢の中でもとりわけ）。影の領域５０４内のセグメントにおいて、しかしながら、背景色は白ではなくグレーに見える。ゆえに、一例において、黒の値はすべての領域において実質的に同一（例えば、０）のまま留まるが、背景の色値は、影になっていない領域（例えば、０の色値）と影になっている領域５０４（例えば、０．５の色値）との間で実質的に変化し得る。単一の閾が用いられ得る従来の閾値処理手法を用いる場合、影になっていない領域については０．４の閾が十分であり得るが、すべての色値がカットオフ閾を超える場合、すべての影になっている領域の中のすべてのセグメントが背景を含むように判定されることを招き得るので、情報の一部分が失われる。
【００１４】
それにより、種々の実施形態に従う手法は、セグメントまたは領域のために適切な局所の閾を判定することを試みるために、１つの画像にわたって複数のセグメントまたは領域のうちのいくつかまたはすべてを分析することができる。かかる適応できる手法は、照明、彩色、陰影、または他のかかる変化が大きい画像での、改善されたテキスト検出を提供することができる。検討されたように、他の手法においては、１つの画像にわたる位置の複数の領域が代替的に選択されるが、１つのかかる手法は、他のかかる選択肢の中でもとりわけ、１つの画像（または、例えば、テキストを含む可能性が高いと判定された画像部分）を複数のセグメントにセグメント分けすることができる。
【００１５】
画像が複数のセグメントにセグメント分けされる一例において、それぞれのセグメントが、そのセグメントが文字またはテキストに対応し得るエッジ領域を含むかどうかを判定することを試みるために分析され得る。例えば、図６の拡大図６００において説明されているセグメント５０８を考察する。セグメントは、背景部分６０２および文字「ｏ」の一部分に対応する文字部分６０４の２つの主要部分を含む。この例では背景部分６０２と文字部分６０２との間に明らかなエッジ境界が存在するが、アンチエイリアス処理、ぼやけ、および他のかかる問題のために、移行箇所がそれほど明確でないことが多い。画像セグメントの１組の勾配が分析され得、この勾配はセグメントのピクセル６０６の間の色値の量の変化を表す。この例において、領域間の移行箇所の近くに１組の勾配の大きい値が存在し得る。それにより、このセグメントは、テキスト部分を含むか分析される候補として選択され得る。少なくともいくつかの実施形態において、勾配の閾は、セグメントをテキストの候補とするためにどのくらいの変更が必要であるかを判定するように設定され得る。検討されたように、画像は、この判定を支援するために、分析前にグレースケールまたは単色の画像に変換され得る。
【００１６】
エッジ位置を含むと判定されたそれぞれのセグメントまたは領域について、さまざまなピクセルのための色値のサンプリング（または「ピクセル値」）が判定され得、このサンプリングは、エッジ境界のそれぞれの側のピクセルを含む。例えば、エッジの第１の側の一連のいくつかのピクセルおよびエッジの他方側の一連のいくつかのピクセル（同一のまたは異なる）が判定され得る。これは、例えば、エッジ領域を中心とした２０×２０のピクセル配列、エッジの所与の距離の範囲内の無作為の選択などを含むことができる。ピクセルの数、エッジ領域からの距離、および他のかかる側面は、実施形態の間でさまざまであることができる。ピクセル値は、セグメントに対する背景ピクセル値およびセグメントに対する文字ピクセル値を判定することを試みるために分析され得る。例えば、理想的な背景が１の値を持つ白である場合、エッジの背景側のピクセル値は０．４〜０．８の範囲の値を戻し得る。同様に、テキスト側のピクセル値は、０．０に近い値を戻し得る。それにより、システムは、背景の値がこれらのピクセル値の最大値（例えば、０．９）（または平均値、加重値など）であること、およびテキストの値が約０．０であることを判定することができる。ゆえに、０．５の閾は、背景領域からテキストを分離するために十分でない場合がある。この例において、アルゴリズムは、値の間の差異の割合に閾を設定することができる。いくつかの実施形態において、アルゴリズムは、最大点の中間点に閾を設定し得、ここで約０．４の色値を設定する。システムが保守的であることを望み、背景としてより少ないデータを排除する実施形態において、閾はより高く、およびその逆に設定され得る。エッジ領域を含むセグメントのそれぞれのピクセルが次に分析され得、対応するピクセル値がそれぞれ、セグメント閾に合致するか、セグメント閾を超過するか、またはセグメント閾未満であるかどうかに応じて（カラースケールなどの要因に応じる）、ピクセルがテキストまたは背景ピクセルとして指定され得る。
【００１７】
セグメント分けは、１つの画像のより小さい領域上で照明および他のかかる側面がより均一となるという仮定の上で機能する。セグメントの大きさまたはピクセル区域は、しかしながら、十分な範囲の前景および背景ピクセルを覆う程度に大きくなければならず、そうでなければ芳しくない閾値が選ばれ得る。他方、大きすぎる領域を選ぶと、大きい領域がかなりの変化を含み得る場合、変化を的確に説明する処理能力を制限する場合がある。
【００１８】
図７Ａ、７Ｂ、および７Ｃは、走査線、ピクセル行、または種々の実施形態に従って生成され得る、異なる画像セグメントを通じた他のかかる横断面について取得され得るピクセル値の例を説明している。種々の実施形態において、ピクセル値は、グレースケールピクセル輝度値、カラーピクセル輝度値、ピクセル飽和値、ピクセル飽和レベル、および同等物を指す。コンピュータ内に保存された画像を表すそれぞれのピクセルが、そのピクセルがどのくらい明るいか、および／またはピクセルがどの色であるべきかを記述するピクセル値を有する。グレースケール画像について、ピクセル値は典型的に、ピクセルの明るさを表す単数である。例えば、一般的なピクセル形式はバイト画像であり、ピクセル値の数が０〜２５５の範囲の可能な値を付与する８ビットの整数として保存される。この例において、ゼロは黒と解釈され、２５５は白と解釈され、その間の値は異なるグレーを構成する。図７Ａは、図５の領域５０８を水平に横切る個々のピクセルによって測定される、輝度の変化を説明するグレースケール画像のための距離対輝度のグラフの例である。左から開始して右へ移動する（図５において線で示される）領域５０８は、例えば、高い輝度の白いピクセル領域で開始し、文字の一部分に対応する低い輝度の暗いまたは黒いピクセル領域で終了する。簡単にするために、以下の例についての可能なピクセル値の範囲は０〜１の値で表される。７００Ａのグラフを参照して、白いピクセル領域の輝度は実質的に完全に明るくしたものに近く、１．０の値で示される。領域５０８を右へさらに移動すると、最終的には０．０に近いレベルに対応する輝度における急激な低下がある。この例において、０．５の輝度以上のすべてが画像背景の一部と見なされ、かつ０．５以下のすべてが、テキストであり得る関与するオブジェクトの一部と見なされるように、０．５の閾値７０２Ａが選ばれ得る。
【００１９】
ここで、図５の領域５１０に対応する図７Ｂを参照して、この例において、領域５１０の最も左側は影の領域５０４で開始し、これは最も右の端のテキスト領域よりも相対的に高いが、影の領域のために、図７Ａに関して記載される初期の輝度と比較すると輝度が初期にはそれほど高くない。グラフ７００Ｂを参照して、より明るいピクセル領域の輝度は、領域の影の領域５０４との近さのため、輝度において低く、これは０．５の初期値を付与する。領域５１０を右へ移動すると、最終的には０．０に近い値に対応する輝度における急激な低下がある。この例において、０．３の輝度より大きいもののすべてが画像背景の一部と見なされ、かつ０．３未満のすべてが、テキストであり得る関与するオブジェクトの一部と見なされるように、０．３の閾値７０２Ｂが選ばれ得る。閾値はよって、ピクセル輝度のより低い相対変化の結果として、領域５０８のものよりも低くなる。
【００２０】
図７Ｃは、図５の領域５１２を水平に横切る個々のピクセルによって測定される輝度の変化を図で説明したものである。この例において、グラフ７００Ｃは、領域５１２からの初期の輝度の値１．０を示し、領域５１２を右に移動すると、やはり０．０に近い輝度の値に対応して輝度の急激な低下がある。継続して右に沿って、文字部位の他方側の輝度に別の大きな上昇があり、結果として再び約１．０の輝度の値となる。図７Ｃにおいて説明されるように、線が影の領域５０４に到達すると、輝度は再度下落して領域５１２の右側へと移動する。この例において、照射された部位とより暗い文字部位との間に著しく十分なコントラストがあるため、０．４の輝度の値を有する閾７０２Ｃが選ばれる。図５の例に広範囲な閾値処理が適用され、かつ、例えば、全体の画像部分について０．５の閾が選ばれていた場合、領域５１２を含む画像の右側の領域は０．０値にフィルタをかけていたことになる。適応閾値処理技術を活用することで、しかしながら、文字および背景領域の正しい特定が可能となった。
【００２１】
図８は、種々の実施形態に従って用いられ得るテキスト認識アルゴリズムまたはエンジンにテキストデータを提供するための処理の例８００を説明したものである。本明細書において検討されるあらゆる工程について、別様に記載のない限り、種々の実施形態の範囲内で、追加的な、より少ない、または代替的なステップが、類似のまたは代替的な順序で、または並行して実施され得るということが理解されるべきである。この例において、携帯型コンピューティングデバイスのカメラによってキャプチャされた画像が取得される８０２。少なくともいくつかの実施形態において、画像はグレースケール画像に変換され得、他のかかる前処理は、テキスト認識および他のかかる目的のために当技術分野で既知であるように実施され得る。画像における複数の領域の画像輝度勾配が分析されて１組のエッジ位置８０４を特定する。エッジを輝度における変化がいくつかのピクセルにわたって発生していると解釈すると、例えば、この輝度変化の導関数を計算することおよび計算された値がエッジ選択閾に合致するか超過する領域を選択することにより、エッジ検出アルゴリズムがエッジを判定することができる。１組のエッジ位置のそれぞれに隣接する、または１組のエッジ位置のそれぞれからの所定距離の範囲内のピクセル値が分析される８０６。複数の領域の少なくとも一部分のための、画像の文字部分および背景部分についての相対ピクセル値が判定される８０８。この相対ピクセル値に少なくとも部分的に基づいて、複数の領域の少なくとも一部分についての文字の閾（または背景の閾）が判定される８１０。各々のピクセルの閾に少なくとも合致するピクセル値を有するピクセルに少なくとも部分的に基づいて、文字領域が次に判定される８１２。
【００２２】
適用可能な局所の閾を用いて可能性のある文字領域が判定された後、結合コンポーネントアルゴリズムを用いて、領域が複数の結合されたコンポーネントに組み立てられ得る。結合されたコンポーネントは、例えば、ピクセルの輝度および関与するピクセルの間の既定の距離を基本として結合されたピクセルであることができる。ゆえに、その領域内に小さい点または染みを含むセグメントは、点が類似の輝度または色値を有する他の領域の中のピクセルと近接していないため、隣接する領域の中のエッジと連結されない可能性が高い。結合コンポーネントアルゴリズム、または他のかかる処理はまた、いったん判定されると、それぞれの結合されたコンポーネントが少なくとも１つの文字制約を満たすかどうかを判定するために、結合されたコンポーネントを分析することもできる。この制約は、形状および寸法などの情報を含むことができ、隣接するテキストのプロパティに少なくとも部分的に基づくことができる。隣接するテキスト文字がとりわけ、かかる文字の間の相対的に一定の間隔、類似のアスペクト比、および類似の垂直および水平配列などのある特定のプロパティを共有すると推測され得る。共有のプロパティは、例えば、隣接する結合されたコンポーネントの重心（またはそれぞれの文字の上部または下部）が同一の線にほぼ沿っているかどうか、隣接する文字の高さおよび幅が割合の特定の範囲に収まるかどうか、および文字の間の間隔が実質的に類似するかどうかを判定することによって確認され得る。これらの決定を行うためのパラメータは、経験的であるか、そうであることができる。上記に記載したプロパティおよび技術に基づいて、結合コンポーネントアルゴリズムはまた、形状、結合の配向、および正面画像から取り込まれていない、または画像にわたり対角線である１つの画像の中のテキストの行の方向をほぼ判定することもできる。
【００２３】
図９は、画像９００にわたり対角線上にキャプチャされたテキストの複数の行の画像部分９００を説明したものである。画像部分９００はやはり、図３において説明される「Ｇｏｏｄ  Ｆｏｏｄ  Ｃａｆｅ」のＵＲＬに対応する。この例において、テキストの一番上の行９０４には「Ｇｏｏｄ  Ｆｏｏｄ  Ｃａｆｅ」と記載され、テキストの２番目の行９０８には「ｗｗｗ．ｇｏｏｄｆｏｏｄ．ｃｏｍ」と記載されている。この例において、アルゴリズムは、それぞれの結合されたコンポーネントの重心の位置を判定することができ、かつ相対位置およびこれらの重心の間隔を分析して、画像部分の中の可能性のあるテキストの配向を判定することができる。例えば、隣接する結合されたコンポーネントの重心（図において点線で表される）は、線が所定量の偏差内でこれらの点を通り抜けることができた場合、同一の線上にあると見なされ得、この適合線に沿った点は許容可能な偏差の量の範囲内と一致する。しかしながら、文字の上部または下部の点は、他の実施形態において、重心の点の代わりに、またはこれを用いて判定され、用いられ得る。ある特定の文字の組み合わせは、異なる点の位置を使用するとよりうまく処理し得るので、十分な結果が別様には得られない場合、異なる点が用いられ判定される。
【００２４】
この例において、「Ｇｏｏｄ  Ｆｏｏｄ  Ｃａｆｅ」についてのテキストまたは文字の文字列は、重心の平均線９０６の周りに大まかに配列し、「ｗｗｗ．ｇｏｏｄｆｏｏｄ．ｃｏｍ」についての文字列は、重心の平均線９０８の周りに大まかに配列する。テキストライン構成アルゴリズムは、テキストの方向およびどのコンポーネントが同一の線に沿うかを判定するために実装され得る。中心の平均線９０６および９０８の近くの対角線上にあるより多くの重心点の存在に基づいて、アルゴリズムは、例えば、ほぼ水平である、「Ｇｏｏｄ」の１番目の「ｏ」とＵＲＬの２番目の「ｗ」の２つの重心点を通る仮想線を無視することを知り得る。
【００２５】
加えて、文字が２つ以上の結合されたコンポーネントに分かれることを可能にするために、単一のユニットとして扱われて上記の制約を満たすことができる複数のコンポーネントを判定するための追加的な確認が行われることができる。文字制約のうちの少なくとも１つを満たさないコンポーネントは除去される。文字は近くにあってともに語を形成する他の文字に近く、かつ類似していなければならないと推測されるため、長い直線および長方形ならびに交差線およびボックスなどの制約のうちの少なくとも１つを満たさないコンポーネントは除去される。交差線およびボックスの除去は、長い直線、長方形、および交差線ならびにボックスがテキストに対応しないという考えに基づく。加えて、結合アルゴリズムは、画像中に表れるテキストの形状をほぼ判定するために適用され得る。
【００２６】
いったん結合されたコンポーネントが分離されると、ストローク幅変換（ＳＷＴ）アルゴリズムまたは他のかかる処理は、光学式文字リーダの入力を削除するために、１つの画像からのテキストの可能性のある領域のセグメント分けを試みるために提供され得る。アルゴリズムは、ピクセル毎に値を含むものからもっとも可能性の高いストローク幅を含むものへと画像データを転換することができ、その結果は、縮尺、方向、フォント、および言語に関わらずテキストを検出することができる。ある場面の他の要素からテキストを分離する１つの機能は、そのほぼ一定のストローク幅である。これは、テキストを含む可能性のある領域を正確に特定するために利用され得る。続いて、文字領域内のフィルタされかつ処理されたテキストを認識するために、光学式文字認識アルゴリズムを用いて文字の領域が分析される。テキスト位置および配列データをＳＷＴ（または他のそのようなもの）アルゴリズムに提供することの利点は、データがこの処理に開始点を提供し、よって処理の速度および正確性を向上させることである。
【００２７】
種々の実施形態において、オブジェクトの複数の画像が分析されて、ノイズ、ぼやけ、およびかかる他の同種のものなどの画像の不完全さを補正することができる。この技術は、統計的に、ノイズ、ぼやけ、およびさまざまな照明の変化が、複数の画像フレームにわたり一定でなく、かつこれらの不完全さが容易に廃棄またはフィルタで取り除くことができ、よって画像処理の効率性を増大させるという仮定に基づいて用いられる。いくつかの実施形態において、１組の画像が分析され、次にその結果がもっとも可能性のある入力へと進む。他の実施形態において、画像は、許容できる結果が判定されるまで一度に１つ分析され得、この後画像は廃棄される。種々の実施形態の範囲内で種々の他の手法も用いられ得る。
【００２８】
種々の実施形態において、図２に関して上述した通り、機能またはアプリケーションは、テキストパターンが電話番号を示す場合、番号をダイヤルすることを、またはテキストパターンが電話番号および物理的な住所の存在を示す場合、連絡先情報を保存するためのアドレス帳を開くことを伴い得る。アプリケーションは、図３で説明されるようにテキストパターンがウェブアドレスを示す場合、ＵＲＬへの誘導であり得る。アプリケーションは、図１で説明されるようにテキストパターンが物理的な住所を示す場合、地図を表示してアドレスを示し得る。機能またはアプリケーションはまた、種々の言語翻訳をも実施し得る。アプリケーションはまた、計算機であり得、数学の方程式を解く能力を有し得、または友人とレストランで食事をする場合に、チップを計算するまたは複数の方途で勘定を折半するための勘定書の特性を特定するためのプラグインに関連付けられ得る。一実施形態において、ユーザは、一次的アクションと、特定のデータオブジェクトに関連付けられる少なくとも二次的アクションからを選ぶことを促され得る。名刺の例を再び参照して、名刺の認識に関連付けられる所定の一次的アクションは、名刺上の情報を新規の連絡先としてアドレス帳アプリケーションの中に保存することであり得る。二次的アクションは、カード上の電話番号に電話をかけることであり得、および三次的アクションは、住所への道順を調べることであり得る。
【００２９】
一実施形態において、多くの実施形態の携帯型コンピューティングデバイスと通信しているシステムまたはサービスは、ユーザの活動を長期間監視して、アプリケーションによって実施されるアクションを調整することができる。例えば、ユーザが常に名刺上の番号に電話することを選び、この連絡先を保存することを決して選ばない場合、デバイスはアルゴリズムを調整して自動的に電話するか、またはユーザにその番号にまず電話することを促す。この例はまた、他のデータの種類に拡張されることもできる。他の実施形態において、デバイスは、さまざまな状況においてユーザの意図を予測するために、さまざまな挙動予想アルゴリズムまたはインテントウェアをリロードされ得る。例えば、デバイスは、ユーザ対面のカメラ、ジャイロスコープ、加速度計、光センサ、またはそれらの組み合わせを含み得る。ユーザ対面のカメラは、顔面認識およびジェスチャ追跡アルゴリズムを用いてユーザが見詰めている方向を判定し得る。光センサは、ユーザのカバンまたはポケットのなかにある可能性を判定し得る。この例において、デバイスは、エネルギー節約モードに入り得、センサによって十分な量の光が検出されるまで画像をキャプチャまたは処理することを控え得る。ジャイロスコープおよび加速度計は、ユーザがデバイスをどのように保持し、動かしているかを検出するために用いられ得る。いくつかの例において、ユーザは、画像の取り込みまたはキャプチャを暗示する特定の様式で予測運動を行うか、またはデバイスを保持する。一例において、動きを記録するジャイロスコープおよび加速度計は、やはりデバイスエネルギー節約モードにし得る。この例において、よい画像をキャプチャすることが難しい場合があり、デバイスはこれらが正常な画像キャプチャ条件でないことを合理的に推察するようにプログラムされ得る。種々の他の方法またはユーザの意図を予測することもまた本開示の範囲内で利用され得る。
【００３０】
種々の実施形態は、画像前処理アルゴリズムおよび／または技術を利用して特定および／または認識のためにテキストを標準化する。実世界のテキストは、異なる大きさの、歪曲した、ぼやけた場合のある多くの色、形状、フォント種類および同等物である。機械視覚画像処理技術が用いられることができ、これは、閾値処理（グレースケール画像を白黒に変換する、またはグレースケール値に基づいて分離を用いる）、セグメント化、斑点抽出、パターン認識、バーコードおよびデータマトリクスコード読込、計測（オブジェクトの直径を測定する）、位置付け、エッジ検出、色分析、フィルタリング（例えば、形態的フィルタリング）、およびテンプレートマッチング（特定のパターンを発見、マッチング、および／または勘定する）を含むことができる。ＯＣＲによってより容易に認識可能である、テキストを処理するためのさまざまな他の技術もまた本開示の範囲内で利用され得る。
【００３１】
図１０は、種々の実施形態に従って用いられ得る、携帯型コンピューティングデバイス１０００の正面図および後面図の例を説明したものである。１つの種類の携帯型コンピューティングデバイス（例えば、スマートフォン、電子書籍リーダ、またはタブレットコンピュータ）が示されるが、判定、処理、および入力を提供する能力があるさまざまな他の種類の電子デバイスが本明細に記載の種々の実施形態に従って用いられ得るということが理解されるべきである。デバイスは、例えば、ノート型コンピュータ、携帯情報端末、携帯電話、ビデオゲーム機またはコントローラ、および携帯型メディアプレーヤをとりわけ含むことができる。
【００３２】
この例において、携帯型コンピューティングデバイス１０００は、画像コンテンツをデバイスの１人以上のユーザまたは閲覧者に表示するように動作可能な表示画面１００２（例えば、液晶画面（ＬＣＤ）要素）を有する。少なくともいくつかの実施形態において、表示画面は、例えば、容量性または抵抗性のタッチ技術を用いてタッチまたはスワイプをベースとした入力を提供する。かかる表示要素は、例えば、ユーザが、右または左のマウスのボタン、タッチポイントなどのボタンの画像に対応する画面のある部位を押すことによって入力を提供することを可能にするために用いられ得る。デバイスはまた、デバイスの側面または背面上などのデバイスの他の部位上に接触感知式および／または感圧式材料１０１０を有することもできる。少なくともいくつかの実施形態において、かかる材料に接触するまたは握ることによってユーザが入力を適用することができるが、他の実施形態において、材料は、材料に関するパターン模様入りの表面の動きを通じてデバイスの運動を検出するために用いられ得る。
【００３３】
携帯型コンピューティングデバイスの例は、従来の画像および／またはビデオキャプチャなどの目的のために１つ以上の画像キャプチャ要素を含むことができる。本明細書に記載したように、画像キャプチャ要素はまた、動きを判定し、ジェスチャ入力を受信する目的のために用いられることもできる。この例における携帯型コンピューティングデバイスは、デバイスの「前面」に１つの画像キャプチャ要素１００４を含み、デバイスの「背面」に１つの画像キャプチャ要素１０１２を含むが、画像キャプチャ要素はまた、または代替的に、デバイスの側面または角に置かれ得、および類似のまたは異なる種類の任意の適切な数のキャプチャ要素が存在することができるということが理解されるべきである。それぞれの画像キャプチャ要素が、例えば、カメラ、電荷結合素子（ＣＣＤ）、動き検出センサ、または赤外線センサであり得、または別の画像キャプチャ技術を利用することができる。
【００３４】
携帯型コンピューティングデバイスはまた、少なくとも１つのマイク１００６またはある特定の実施形態において位置の変化を判定する、またはユーザ入力を受信するために用いられ得るものなどの音声データキャプチャする能力がある他の音声キャプチャ要素を含むこともできる。いくつかのデバイスにおいて、１つのマイクのみが存在し得るが、他のデバイスにおいては、デバイスのそれぞれの側面および／または角に、または他の適切な場所に少なくとも１つのマイクが存在し得る。
【００３５】
この例におけるデバイス１０００はまた、デバイスの位置、方向、動き、または配向などの情報を提供するように動作可能な、少なくとも１つの動きまたは位置判定要素１００８を含む。これらの要素は、例えば、加速度計、内部センサ、電子ジャイロスコープ、電子コンパス、およびＧＰＳ要素を含むことができる。別のデバイスのための少なくとも１つの制御信号をトリガすることができるさまざまな種類の動きまたは配向の変更が、デバイスに入力を提供するために用いられ得る。このデバイスの例はまた、１つ以上の携帯型コンピューティングデバイスと通信するように動作可能な、少なくとも１つの有線または無線コンポーネントを含み得るなどの少なくとも１つの通信機構１０１４を含む。デバイスはまた、従来のプラグイン手法を通じて、または電力マットまたは他のかかるデバイスとの近接を通じた容量性充電などの他の手法を通じて再充電されるように動作可能なバッテリを含み得るなどの電力システム１０１６を含む。種々の実施形態の範囲内でさまざまな他の要素および／または組み合わせもまた可能である。
【００３６】
図１０、図１１に関して記載したような機能性を提供するために、図１０に関して記載したデバイス１０００などの携帯型コンピューティングデバイス１１００の１組の基本コンポーネントの例を説明する。この例において、デバイスは、少なくとも１つの記憶デバイスまたは要素１１０４内に格納され得る命令を実行するための少なくとも１つのプロセッサ１１０２を含む。当業者には明白であるように、デバイスは、プロセッサ１１０２によって実行されるためのプログラム命令のための第１のデータ記憶装置などの多くの種類のメモリ、データ記憶装置またはコンピュータ可読の記憶媒体を含むことができ、画像またはデータのために同一または別個の記憶装置が用いられることができ、取り外し可能な記憶メモリは他のデバイスなどと情報を共有するために利用可能である。
【００３７】
携帯型メディアプレーヤなどのデバイスは音声スピーカなどの他の手段を介して情報を伝達し得るが、デバイスは典型的に、タッチ画面、電子インク（ｅインク）、有機発光ダイオード（ＯＬＥＤ）または液晶画面（ＬＣＤ）などのいくつかの種類の表示要素１１０６を含み得る。検討されたように、多くの実施形態において、デバイスは、ユーザ、人々、またはオブジェクトをデバイスの近くに撮像することができる１つ以上のカメラなどの少なくとも１つの画像キャプチャ要素１１０８を含み得る。少なくともいくつかの実施形態において、デバイスは、画像情報を用いてユーザによるジェスチャまたはモーションを判定することができ、これはユーザが実際に携帯型デバイスに接触する、および／または動かすことなく、携帯型デバイスを通じて入力を提供することを可能にする。画像キャプチャ要素はまた、本明細書に記載されるように、デバイスの周囲環境を判定するために用いられ得る。画像キャプチャ要素は、ユーザがデバイスを操作しているときに、ユーザの画像をキャプチャするために十分な解像度、集束範囲および可視領域を有するＣＣＤ画像キャプチャ要素などの任意の適切な技術を含むことができる。
【００３８】
デバイス、は、多くの実施形態において、１つ以上の音声スピーカおよび／またはマイクなどの少なくとも１つの音声要素１１１０を含み得る。マイクは、声認識、デジタル録音など、声で可能となる機能を促進するために用いられ得る。音声スピーカは音声出力を実施し得る。いくつかの実施形態において、音声スピーカ（複数可）は、デバイスから分離して存在し得る。
【００３９】
デバイスは、ユーザから従来の入力を受信することができる少なくとも１つの追加的な入力デバイス１１１２を含むことができる。この従来の入力は、例えば、これらによってユーザがデバイスにコマンドを入力することができる押しボタン、タッチパッド、タッチ画面、ホイール、ジョイスティック、キーボード、マウス、トラックボール、キーパッドまたは任意の他のかかるデバイスまたは要素を含むことができる。これらのＩ／Ｏデバイスは、いくつかの実施形態において、無線赤外線またはＢｌｕｅｔｏｏｔｈ（登録商標）または他のリンクによってさえも接続され得る。いくつかの実施形態において、しかしながら、かかるデバイスはいかなるボタンも含まない場合があり、ユーザがデバイスと接触することなくデバイスを制御することができるように、視覚および音声コマンドの組み合わせによってのみ制御され得る場合がある。
【００４０】
デバイスの例はまた、特定の無線チャネルの通信範囲内で１つ以上の携帯型コンピューティングデバイスと通信するように動作可能な１つ以上の無線コンポーネント１１１４を含む。無線チャネルは、デバイスが無線で通信することを可能にするために用いられる、Ｂｌｕｅｔｏｏｔｈ、セルラー、またはＷｉ−Ｆｉチャネルなどの任意の適切なチャネルであることができる。デバイスが、当技術分野で既知であるような１つ以上の従来の有線通信接続を有することができるということが理解されるべきである。デバイスの例は、携帯型コンピューティングデバイスに電力を提供するための、当技術分野で既知のさまざまな電力コンポーネント１１１６を含み、これは電力パッドまたは本明細書に記載に記載される類似のデバイスとともに用いられるための容量性充電要素を含むことができる。デバイスの例はまた、デバイスのケーシングの周りの接触感知式材料などの少なくとも１つの接触感知式および／または感圧式要素１１１８、握ることに基づく入力をデバイスに提供する能力がある少なくとも１つの領域を含むことができる。いくつかの実施形態において、この材料は、例えば、デバイスのまたはユーザの指などの動きを判定するために用いられ得るが、一方他の実施形態において、材料は、特定の入力またはコマンドを提供するために用いられ得る。
【００４１】
いくつかの実施形態において、デバイスは、ユーザまたはアプリケーションからのコマンドを受け取ったとき、または音声入力またはビデオ入力を判定しようと再試行しているときなどに、検出および／またはコマンドモードを起動および／または解除する能力を含むことができる。いくつかの実施形態において、デバイスは、赤外線検出器または運動センサを含むことができ、例えば、これらは１つ以上の検出モードを起動するために用いられ得る。例えば、その部屋にユーザが存在しないとき、あるデバイスは、デバイスを検出したり、またはデバイスと通信したりすることを試みない可能性がある。赤外線検出器（すなわち、状態の変化を検出する１ピクセル分解能を持つ検出器）が、例えば、ユーザがその部屋に入ってきたことを検出した場合、デバイスは、ユーザによって必要とされたときにデバイスの準備ができているようにするが、ユーザが近くにいないときは電力および資源を節約することができるように、検出または制御モードを起動することができる。
【００４２】
種々の実施形態に従うコンピューティングデバイスは、デバイスが周辺光に曝露しているか、または相対的または完全な暗闇にあるのかを判定することができる光検出要素を含み得る。かかる要素は、いくつかの方途において有益である場合がある。ある特定の従来のデバイスにおいて、光検出要素は、電話の表示要素を一時的に切る（デバイスをユーザの耳に当てている間、ユーザが表示要素を見ることができないため）アクションをトリガする、いつユーザが携帯電話をユーザの顔に向けて保持しているか（光検出要素を実質的に周辺光から遮断させる）を判定するために用いられる。光検出要素は、デバイスの機能を調整するための他の要素からの情報を合わせて用いられ得る。例えば、デバイスがユーザの視覚位置を検出することができず、ユーザがデバイスを保持していないが、デバイスが周辺光に曝露している場合、デバイスは、ユーザによって下に置かれたということを判定し、表示要素をオフにし、ある特定の機能性を無効にし得る。デバイスがユーザの視覚位置を検出することができず、ユーザがデバイスを保持しておらず、デバイスがさらに周辺光に曝露している場合、デバイスは、デバイスがユーザの手が届かない可能性があるバッグまたは他の仕切りに置かれたということを判定し、よって別様には利用可能であった追加的な機能をオフまたは無効にし得る。いくつかの実施形態において、ユーザはデバイスを見ているか、デバイスを保持しているか、またはデバイスのあるいくつかの機能性を有効にするためにデバイスを光の中へ取り出したかのいずれかであるはずである。他の実施形態において、デバイスは、反射（明るい状況）および放射（暗い状況）などの異なるモードにおいて動作することができる表示要素を含み得る。検出された光に基づいて、デバイスはモードを変更し得る。マイクを用いて、デバイスは、電気の節約に実質的に関係のない理由により、他の機能を無効にすることができる。例えば、デバイスは、声認識を用いて、子供などのデバイスの近くにいる人を判定し、これに基づいてインターネットアクセスまたはペアレンタルコントロールなどの機能を無効または有効にすることができる。さらに、デバイスは、録音されたノイズを分析して、デバイスが車内にあるか飛行機内にあるかなどの環境を判定することを試みることができ、この判定は他の入力に基づいて、どの機能を有効／無効にするか、またはどのアクションが取られるかを決定することを支援することができる。声認識が用いられる場合、デバイスに直接的に話されるか、または会話を通じて間接的に拾った言葉が入力として用いられ得る。例えば、デバイスが、デバイスは車内にあり、ユーザの方を向いていると判定し、「おなかがすいた」または「食べる」などの言葉を検出した場合、次にデバイスは表示要素をオンにして近くのレストランなどの情報を表示し得る。ユーザは、プライバシーおよび他のかかる目的のために、声の記録および会話のモニタリングをオフにする選択肢を有する。
【００４３】
上記の例のうちのいくつかにおいて、デバイスによって取られたアクションは、電力消費を低減する目的のために、ある特定の機能性を解除にすることに関する。しかしながら、デバイスを用いることについての類似の他の可能性のある課題を調整することができるアクションが他の機能に対応することができることが理解されるべきである。例えば、ウェブページのコンテンツを要求する、ハードドライブ上のコンテンツを検索する、およびさまざまなアプリケーションを開くなどのある特定の機能は、完了までにいくらかの時間を要する。資源の限られたデバイス、または多用されるデバイスについては、いくつかのかかる操作が同時に発生することが、デバイスの動作を遅くしたり、または動かなくなったりすることを招く場合があり、これは非効率性に繋がり、ユーザの体験を悪化させ、より多く電力を使用する場合がある。
【００４４】
少なくともこれらおよび他のかかる問題のうちのいくつかに対処するため、種々の実施形態に従う手法はまた、ユーザの見つめる方向などの情報を利用して、処理容量、メモリの空きおよび他のかかる資源の必要性を広げるために用いられる可能性がある資源を起動することもできる。
【００４５】
いくつかの実施形態において、デバイスは、十分な処理容量を有することができ、撮像要素および関連付けられる解析アルゴリズム（複数可）は、キャプチャされた画像のみに基づいてデバイスの動き、ユーザの頭の動き、ユーザの目の動き、および他のかかる動きを区別するために十分な程に感受性が高い。極めて単純な撮像要素および分析手法を利用することが処理のために望ましい場合がある他の実施形態において、デバイスの現在の配向を判定することができる、少なくとも１つの配向判定要素を含むことが望ましい場合がある。一例において、この少なくとも１つの配向判定要素は、デバイスの３Ｄ位置およびデバイスの動きの大きさおよび方向、ならびに振動、衝撃などの因子を検出することができる、少なくとも１つの単軸または多軸加速度計である。加速度計などの要素を用いてデバイスの配向または動きを判定するための方法もまた当技術分野で既知であり、本明細書では詳細に記載しない。配向および／または動きを判定するための他の要素もまた、種々の実施形態の範囲内で配向判定要素として用いるために用いられ得る。加速度計または同様の要素からの入力がカメラからの入力とともに用いられたとき、相対的な動きはより正確に解釈され得、さらに精密な入力および／またはより複雑性の低い画像分析アルゴリズムを可能にする。
【００４６】
コンピューティングデバイスの撮像要素を用いて、例えばデバイスおよび／またはユーザの動きを検出するとき、コンピューティングデバイスは、画像中の背景を用いて動きを判定することができる。例えば、ユーザがデバイスを固定された配向（例えば、距離、角度など）でユーザにかざし、ユーザが配向を周囲の環境に変更した場合、ユーザの画像のみを分析することはデバイスの配向における変更を検出する結果とならない。そうではなく、いくつかの実施形態において、コンピューティングデバイスは、ユーザの後方にある背景画像における変化を認識することによってデバイスの動きをやはり検出することができる。そのため、例えば、オブジェクト（例えば、窓、絵、木、茂み、建物、車など）が画像の左または右へ移動すると、デバイスは、ユーザに関するデバイスの配向が変更されていないにも関わらず、デバイスが配向を変更したと判定することができる。他の実施形態において、デバイスは、デバイスに関して移動したことを判定し、それに応じて調整し得る。例えば、ユーザがデバイスに関して頭を左または右に傾けた場合、表示要素上にレンダリングされるコンテンツは、同様に傾いてコンテンツをユーザの配向に保ち得る。
【００４７】
検討されたように、記載の実施形態に従う異なる手法がさまざまな環境において実装され得る。例えば、図１２は、種々の実施形態に従う側面を実装するための環境の例１２００を説明したものである。理解されるように、説明を目的としてウェブベースの環境が用いられるが、種々の実施形態を実装するために異なる環境が適切に用いられ得る。システムは、電子クライアントデバイス１２０２を含み、これは、要求、メッセージまたは情報を適切なネットワーク１２０４で送受信し、情報をデバイスのユーザへ戻し伝えるように動作可能な任意の適切なデバイスを含むことができる。かかるクライアントデバイスの例は、パソコン、携帯電話、手持ち式のメッセージングデバイス、ラップトップ型パソコン、セットトップボックス、携帯情報端末、電子書籍リーダおよび同等物を含む。ネットワークは、イントラネット、インターネット、セルラーネットワーク、ローカルエリアネットワーク、または任意の他のかかるネットワーク、またはそれらの組み合わせを含む任意の適切なネットワークを含むことができる。ネットワークは、「プッシュ」型ネットワーク、「プル」型ネットワーク、またはそれらの組み合わせであり得る。「プッシュ」型ネットワークにおいて、サーバのうちの１つ以上がクライアントデバイスにデータをプッシュする。「プル」型ネットワークにおいて、サーバのうちの１つ以上が、クライアントデバイスからデータについての要求があると、クライアントデバイスにデータを送信する。かかるシステムのために用いられるコンポーネントは、少なくとも部分的に選択されたネットワークおよび／または環境の種類に依存する。かかるネットワークを介して通信するためのプロトコルおよびコンポーネントはよく知られており、本明細書において詳細に記載されない。ネットワークでの通信は、有線または無線接続およびそれらの組み合わせを介して有効とされ得る。この例において、環境が要求を受信し、それに応じてコンテンツを提供するためのウェブサーバ１２０６を含むため、ネットワークはインターネットを含むが、他のネットワークについては、当業者に明確となるように、類似の目的を果たす代替的なデバイスが用いられ得る。
【００４８】
例示的な環境は、少なくとも１つのアプリケーションサーバ１２０８およびデータストア１２１０を含む。相互にやり取りして適切なデータストアからデータを取得するなどのタスクを実施することができる、繋がれるか別様に構成されるいくつかのアプリケーションサーバ、レイヤ、または他の要素、処理またはコンポーネントが存在することができるということが理解されるべきである。本明細書で用いられる場合、「データストア」という用語は、任意のデバイスまたはデータの格納、アクセス、および読み出しの能力を持つデバイスの組み合わせを指し、これらは任意の標準、分散、またはクラスタ環境において、任意の組み合わせおよび数のデータサーバ、データベース、データ記憶デバイスおよびデータ記憶媒体を含み得る。アプリケーションサーバ１２０８は、クライアントデバイスのための１つ以上のアプリケーションの側面を実行する必要に応じてデータストア１２１０と統合するための、およびアプリケーションのためのデータアクセスおよびビジネス論理の大部分を扱うための、任意の適切なハードウェアおよびソフトウェアを含むことができる。アプリケーションサーバは、データストアと協働してアクセス制御サービスを提供し、テキスト、図形、ユーザに転送される音声および／またはビデオなどのコンテンツを生成することができ、これはこの例においてはウェブサーバ１２０６によってＨＴＭＬ、ＸＭＬ、または他の適切な構造化言語の形式でユーザに提供される。すべての要求および応答の扱い、ならびにクライアントデバイス１２０２とアプリケーションサーバ１２０８との間のコンテンツの配信は、ウェブサーバ１２０６によって扱われることができる。本明細書に記載に記載されるように、本明細書に記載の構造化コードが任意の適切なデバイスまたはホストマシン上で実行され得るため、ウェブおよびアプリケーションサーバは必要とされず、および単にコンポーネントの例であるということが理解されるべきである。
【００４９】
データストア１２１０は、特定の側面に関連するデータを格納するためのいくつかの別個のデータテーブル、データベースまたは他のデータ記憶機構および媒体を含むことができる。例えば、説明されるデータストアは、コンテンツ（例えば、生産データ）１２１２およびユーザ情報１２１６を格納するための機構を含み、これらは生産側にコンテンツを提供するために用いられ得る。データストアはまた、ログまたはセッションデータ１２１４を格納するための機構を含むようにも示される。ページ画像情報およびアクセス権情報などの、データストア内に格納される必要があり得る多くの他の側面が存在することができるということが理解されるべきであり、これらは上記に列挙された機構のうちの任意のものに適切に、またはデータストア１２１０内の追加的な機構に格納され得る。データストア１２１０は、これに関連付けられる論理を通じて、アプリケーションサーバ１２０８から命令を受信し、かつそれに応じてデータを取得、更新、または別様に処理するように動作可能である。一例において、ユーザは、ある特定の種類の項目について検索要求を提出し得る。この場合、データストアは、ユーザ情報にアクセスしてユーザの身元を確認し、得、かつカタログ詳細情報にアクセスしてその種類の項目についての情報を取得することができる。情報は次に、ユーザがユーザデバイス１２０２上のブラウザを介して閲覧することができるウェブページ上に列挙される結果の中でユーザに戻される。関与する特定の項目についての情報は、専用のページまたはブラウザのウィンドウの中で閲覧され得る。
【００５０】
それぞれのサーバが典型的に、そのサーバの一般管理および操作のために実行可能なプログラム命令を提供するオペレーティングシステムを含み、典型的にサーバのプロセッサによって実行されると、サーバがその意図する機能を実施することを可能にする命令を格納するコンピュータ可読の媒体を含む。オペレーティングシステムのための適切な実装およびサーバの一般的な機能性は既知であるか市販されており、特に本開示を考慮して当業者によって容易に実装される。
【００５１】
一実施形態における環境は、１つ以上のコンピュータネットワークまたは直接接続を用いた通信リンクを介して相互接続された、いくつかのコンピュータシステムおよびコンポーネントを利用した分散型コンピューティング環境である。しかしながら、図１２において説明されたものよりも少ないまたは多い数のコンポーネントを有するシステムにおいて、かかるシステムが同等に良好に動作し得るということは当業者によって認識されるであろう。ゆえに、システム１２００の図１２における描写は、例示的な性質であり、本開示の範囲を制限しないと見なされるべきである。
【００５２】
種々の実施形態は、多種多様な動作環境においてさらに実装され得、いくつかの場合において、いくつかのアプリケーションのうちの任意のものを操作するために用いられ得る１つ以上のユーザコンピュータまたはコンピューティングデバイスを含むことができる。ユーザまたはクライアントデバイスは、標準オペレーティングシステムを実行するデスクトップ型またはラップトップ型パソコン、ならびにモバイルソフトウェアを実行し、いくつかのネットワーキングおよびメッセージングプロトコルに対応する能力を持つセルラー、無線および手持ち型デバイスなどのいくつかの汎用パソコンを含むことができる。かかるシステムはまた、開発およびデータベース管理などの目的のために、さまざまな市販のオペレーティングシステムおよび他の知られているアプリケーションを実行するいくつかのワークステーションを含むこともできる。これらのデバイスはまた、疑似ターミナル、シンクライアント、ゲームシステム、およびネットワークを介して通信する能力を持つ他のデバイスなどの他の電子デバイスを含むこともできる。
【００５３】
ほとんどの実施形態が、ＴＣＰ／ＩＰ、ＯＳＩ、ＦＴＰ、ＵＰｎＰ、ＮＦＳ、ＣＩＦＳ、およびＡｐｐｌｅＴａｌｋなどのさまざまな市販のプロトコルのうちの任意のものを用いて通信に対応するために、当業者に周知の少なくとも１つのネットワークを利用する。ネットワークは、例えば、ローカルエリアネットワーク、広域ネットワーク、仮想プライベートネットワーク、インターネット、イントラネット、エクストラネット、公衆交換電話ネットワーク、赤外線ネットワーク、無線ネットワーク、およびそれらの組み合わせであることができる。
【００５４】
ウェブサーバを利用する実施形態において、ウェブサーバは、ＨＴＴＰサーバ、ＦＴＰサーバ、ＣＧＩサーバ、データサーバ、Ｊａｖａ（登録商標）サーバ、およびビジネスアプリケーションサーバを含むさまざまなサーバまたはミッドティアアプリケーションの任意のものを実行することができる。サーバ（複数可）はまた、Ｊａｖａ（登録商標）、Ｃ、Ｃ＃もしくはＣ＋＋などの任意のプログラミング言語、またはＰｅｒｌ、Ｐｙｔｈｏｎ、もしくはＴＣＬなどの任意のスクリプト言語、またはそれらの組合せで記述された１つ以上のスクリプトまたはプログラムとして実装され得る１つ以上のウェブアプリケーションを実行することによって、ユーザデバイスからの要求に応じてプログラムまたはスクリプトを実行する能力を持ち得る。サーバ（複数可）はまた、Ｏｒａｃｌｅ（登録商標）、Ｍｉｃｒｏｓｏｆｔ（登録商標）、Ｓｙｂａｓｅ（登録商標）、およびＩＢＭ（登録商標）から市販されているものを含むデータベースサーバを含み得るがこれらに限定されない。
【００５５】
環境は、上述のとおり、さまざまなデータストアおよび他のメモリおよび記憶媒体を含むことができる。これらはコンピュータのうちの１つ以上にとってローカルの（および／または常駐の）、またはネットワークにわたる任意のまたはすべてのコンピュータからリモートの記憶媒体上などのさまざまな場所に存在することができる。特定の１組の実施形態において、情報は当業者に周知のストレージエリアネットワーク（ＳＡＮ）内に存在し得る。同様に、コンピュータ、サーバまたは他のネットワークデバイスに帰属する機能を実施するために必要な任意のファイルは、ローカルまたはリモートに適切に格納され得る。システムがコンピュータ化されたデバイスを含む場合、それぞれのかかるデバイスが、バスを介して電気的に接続され得る、例えば、少なくとも１つの中央処理装置（ＣＰＵ）、少なくとも１つの入力デバイス（例えば、マウス、キーボード、コントローラ、タッチ感応式表示要素、またはキーパッド）、および少なくとも１つの出力デバイス（例えば、表示デバイス、プリンタ、またはスピーカ）を含むハードウェア要素を含むことができる。かかるシステムは、ディスクドライブ、光学式記憶デバイス、およびランダムアクセスメモリ（ＲＡＭ）または読み取り専用メモリ（ＲＯＭ）などのソリッドステート記憶デバイス、ならびに取り外し可能な媒体デバイス、メモリカード、フラッシュカードなどの１つ以上の記憶デバイスを含み得る。
【００５６】
かかるデバイスはまた、上述の通り、コンピュータ可読の記憶媒体リーダ、通信デバイス（例えば、モデム、ネットワークカード（無線または有線）、赤外線通信デバイス）、およびワーキングメモリを含むこともできる。コンピュータ可読の記憶媒体リーダは、リモート、ローカル、固定、および／または取り外し可能な記憶デバイスを表すコンピュータ可読の記憶媒体、ならびに一時的におよび／または永続的にコンピュータ可読の情報を含む、格納する、送信する、および読み出すための記憶媒体と接続されるか、または受信するように構成され得る。システムおよびさまざまなデバイスはまた典型的に、オペレーティングシステムおよびクライアントアプリケーションまたはウェブブラウザなどのアプリケーションプログラムを含む少なくとも１つのワーキングメモリデバイス内に位置するいくつかのソフトウェアアプリケーション、モジュール、サービス、または他の要素を含み得る。代替の実施形態が上述のものからの多くの変化を有することが理解されるべきである。例えば、カスタマイズされたハードウェアもまた用いられ得、および／またはハードウェア、ソフトウェア（アプレットなどの携帯型ソフトウェアを含む）またはその両方に特定の要素が実装され得る。さらに、ネットワーク入力／出力デバイスなどの他のコンピューティングデバイスへの接続が採用され得る。
【００５７】
コードまたはコードの一部分を含む記憶媒体およびコンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリもしくは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）もしくは他の光学式記憶、磁気カセット、磁気テープ、磁気ディスク記憶もしくは他の磁気記憶デバイスまたは任意の他の媒体を含む、コンピュータ可読命令、データ構造、プログラムモジュールもしくは他のデータなどの情報の記憶および／または送信のための、任意の方法または技術で実装された、これらに限定されないが揮発性および不揮発性の、取り外し可能および取り外し可能でない媒体などの記憶媒体および通信媒体を含む、当技術分野で既知または使用されている任意の適切な媒体を含むことができ、これらは所望の情報を格納するために用いられることができ、これらはシステムデバイスによってアクセスされ得る。本開示および本明細書に提供される教示に基づき、当業者は種々の実施形態を実装するための他の方途および／または方法を認識するであろう。
【００５８】
明細書および図面は、それにより、制限的意味でなく例示的意味と見なされる。しかしながら、特許請求の範囲に記載の本発明の広範な精神および範囲から逸脱することなくこれらに対しさまざまな修正および変更がなされ得ることは明白となろう。
【００５９】
付記
付記１．  コンピュータ実装方法であって、
実行可能な命令で構成される１つ以上のコンピュータシステムの制御下において、
携帯型コンピューティングデバイスのカメラによってキャプチャされた画像であって、前記カメラの複数のピクセルについてのピクセル値を含む画像を取得することと、
前記領域内の１つ以上の画像輝度勾配を分析することにより、前記画像の１つの領域内の１つ以上の可能性のあるエッジ位置を特定することと、
前記１つ以上の可能性のあるエッジ位置の両側の１組のピクセルのピクセル値を分析して前記領域のための文字ピクセル値および背景ピクセル値を判定することと、
前記領域のための前記文字ピクセル値および前記背景ピクセル値に少なくとも部分的に基づいて、前記領域のための文字ピクセル値の閾を判定することと、
前記領域の中のピクセルについてのピクセル値が前記文字ピクセル値の閾より高いか低いに少なくとも部分的に基づいて前記領域内の１つ以上の文字部分を判定することと、を含む、方法。
【００６０】
付記２．  結合コンポーネントアルゴリズムを用いて、前記文字ピクセル値の閾に少なくとも合致するピクセル値を有する前記複数のピクセルの隣接するピクセルを関連付けて、文字部分の少なくとも一部分を形成することを可能にすることと、
前記１つ以上の文字部分の少なくとも一部分を文字認識エンジンに提供することと、をさらに含む、付記１に記載のコンピュータ実装方法。
【００６１】
付記３．  文字認識エンジンを用いて前記１つ以上の文字部分を分析して、前記１つ以上の文字部分に関連付けられる少なくとも一文字を認識することを分析することをさらに含む、付記２に記載のコンピュータ実装方法。
【００６２】
付記４．  前記認識された少なくとも１つの文字に対応する文字パターンを特定することと、前記文字パターンに関連付けられる前記携帯型コンピューティングデバイス上のアプリケーションを判定することと、
前記認識された少なくとも１つの文字を前記判定されたアプリケーションに送信することと、をさらに含む、付記３に記載のコンピュータ実装方法。
【００６３】
付記５．  コンピュータ実装方法であって、
実行可能な命令で構成される１つ以上のコンピュータシステムの制御下において、
１つの画像であって、複数のピクセルについてのピクセル値を含む、画像中の１つの領域の１つ以上の輝度勾配を分析して１つ以上の可能性のあるエッジ位置を特定することと、
前記１つ以上の可能性のあるエッジ位置の所定距離の範囲内にある１組のピクセルについてのピクセル値を分析することと、
前記１つ以上の可能性のあるエッジ位置のそれぞれの前記所定距離の範囲内にある前記ピクセル値に少なくとも部分的に基づいて、前記領域のための文字ピクセル値の閾を判定することと、
前記文字ピクセル値の閾と少なくとも合致するピクセル値を有する前記１組のピクセルの一部分に少なくとも部分的に基づいて、１つ以上の文字部分を判定することと、を含む、方法。
【００６４】
付記６．  文字認識アルゴリズムを用いて前記１つ以上の文字部分を分析して、前記１つ以上の文字部分に関連付けられる少なくとも一文字を認識することをさらに含む、付記５に記載のコンピュータ実装方法。
【００６５】
付記７．  エッジ位置が、前記所定距離の範囲内の前記文字ピクセル値の閾に少なくとも合致する値を有するピクセル輝度勾配またはピクセル飽和勾配に対応する、付記５に記載のコンピュータ実装方法。
【００６６】
付記８．  前記ピクセル値を分析することは、前記１つ以上の可能性のあるエッジ位置の第１の側にある第１の組のピクセルを分析することと、前記１つ以上の可能性のあるエッジ位置の第２の側にある第２の組のピクセルを分析することとを含む、付記５に記載のコンピュータ実装方法。
【００６７】
付記９．  前記ピクセル値は、グレースケールピクセル輝度値、カラーピクセル輝度値、ピクセル飽和値、またはピクセル飽和レベルのうちの少なくとも１つに対応する、付記５に記載のコンピュータ実装方法。
【００６８】
付記１０．  テキストライン構成アルゴリズムを用いて、前記１つ以上の文字部分の関連する個別の文字要素を判定することをさらに含む、付記５に記載のコンピュータ実装方法。
【００６９】
付記１１．  結合コンポーネントアルゴリズムを用いて、前記文字ピクセル値の閾に少なくとも合致するピクセル値を有する前記複数のピクセルのピクセルを関連付けることと、
ストローク幅変換アルゴリズムを前記関連付けられるピクセルに適用することと、
前記ストローク幅変換アルゴリズムを適用した結果を文字認識アルゴリズムに提供することと、をさらに含む、付記５に記載のコンピュータ実装方法。
【００７０】
付記１２．  関連する個別の文字要素を判定した後に、前記個別の文字要素の支配的方向を判定することをさらに含む、付記１０に記載のコンピュータ実装方法。
【００７１】
付記１３．  前記個別の文字要素が少なくとも１つの既定の文字制約を満たすかどうかを判定することと、
個別の文字要素が前記既定の文字制約のうちの前記少なくとも１つを満たさない場合に、個別の文字要素を検討の対象から外すことと、をさらに含む、付記１０に記載のコンピュータ実装方法。
【００７２】
付記１４．  前記既定の文字制約は、文字要素間の間隔、隣接する文字要素の高さと幅の比率、または文字要素の垂直配列のうちの１つを含む、付記１３に記載のコンピュータ実装方法。
【００７３】
付記１５．  プロセッサと、
前記プロセッサによって実行されると、前記プロセッサに、
１つの画像内の１つの領域の１つ以上の輝度勾配を分析して、１つ以上の可能性のある文字エッジ位置を特定させ、
前記１つ以上の可能性のあるエッジ位置の所定距離の範囲内にある１組のピクセルについてのピクセル値を分析させ、
前記１つ以上のエッジ位置のそれぞれの前記所定距離の範囲内にある前記ピクセル値に少なくとも部分的に基づいて、前記領域のための文字ピクセル値の閾を判定させ、
前記文字ピクセル値の閾と少なくとも合致するピクセル値を有する前記１組のピクセルの一部分に少なくとも部分的に基づいて、１つ以上の文字部分を判定させる命令を含む記憶デバイスと、を備える、携帯型コンピューティングデバイス。
【００７４】
付記１６．  前記命令は、前記プロセッサによって実行されると、前記携帯型コンピューティングデバイスが、
文字認識アルゴリズムを用いて前記文字部分を分析して、前記１つ以上の文字部分に関連付けられる少なくとも１つの文字を認識することをさらに可能にする、付記１５に記載の携帯型コンピューティングデバイス。
【００７５】
付記１７．  前記命令は、前記プロセッサによって実行されると、前記携帯型コンピューティングデバイスが、
少なくとも１つの追加の画像を取得し、
少なくとも１つの文字が認識され得ない場合に、前記少なくとも１つの追加の画像を分析することをさらに可能にする、付記１６に記載の携帯型コンピューティングデバイス。
【００７６】
付記１８．  前記命令は、前記プロセッサによって実行されると、前記携帯型コンピューティングデバイスが、
前記認識された少なくとも１つの文字に対応する文字パターンを特定し、
前記文字パターンに関連付けられる前記携帯型コンピューティングデバイス上のアプリケーションを判定し、
前記判定されたアプリケーションに前記認識された少なくとも１つの文字を提供することをさらに可能にする、付記１６に記載の携帯型コンピューティングデバイス。
【００７７】
付記１９．  プロセッサによって実行されると、前記プロセッサに、
１つの画像であって、複数のピクセルについてのピクセル値を含む、画像中の１つの領域の１つ以上の輝度勾配を分析させて１つ以上の可能性のある１つ以上の可能性のあるエッジ位置を特定させ、
前記１つ以上の可能性のあるエッジ位置の所定距離の範囲内にある前記画像の１組のピクセルについてのピクセル値を分析させ、
前記１つ以上の可能性のあるエッジ位置のそれぞれの前記所定距離の範囲内にある前記ピクセル値に少なくとも部分的に基づいて、前記領域のための文字ピクセル値の閾を判定させ、
前記文字ピクセル値の閾と少なくとも合致するピクセル値を有する前記１組のピクセルの一部分に少なくとも部分的に基づいて、１つ以上の文字部分を判定させる命令を格納する、持続性コンピュータ可読記憶媒体。
【００７８】
付記２０．  プロセッサによって実行されると、前記プロセッサにさらに、
文字認識アルゴリズムを用いて前記１つ以上の文字部分をさらに分析して、前記１つ以上の文字部分に関連付けられる少なくとも一文字を認識させる命令を格納する、付記１９に記載の持続性コンピュータ可読記憶媒体。
【００７９】
付記２１．  前記ピクセル値は、グレースケールピクセル輝度値、カラーピクセル輝度値、ピクセル飽和値、またはピクセル飽和レベルのうちの少なくとも１つに対応する、付記１９に記載の持続性コンピュータ可読記憶媒体。
【００８０】
付記２２．  前記ピクセル値を分析することは、前記１つ以上の可能性のあるエッジ位置の第１の側にある第１の組のピクセルを分析することと、前記１つ以上の可能性のあるエッジ位置の第２の側にある第２の組のピクセルを分析することとを含む、付記１９に記載の持続性コンピュータ可読記憶媒体。
【００８１】
付記２３．  プロセッサによって実行されると、前記プロセッサにさらに、
前記１つ以上の輝度勾配を分析する前に、前記画像をグレースケール画像にさらに変換させる命令を格納する、付記１９に記載の持続性コンピュータ可読記憶媒体。
【００８２】
付記２４．  プロセッサによって実行されると、前記プロセッサにさらに、
命令前記文字ピクセル値の閾を下回るピクセル値を持つ前記領域の一部分をさらに削除させる命令を格納する、付記１９に記載の持続性コンピュータ可読記憶媒体。
【００８３】
付記２５．  プロセッサによって実行されると、前記プロセッサが、
結合コンポーネントアルゴリズムを用いて、前記文字ピクセル値の閾に少なくとも合致するピクセル値を有する前記複数のピクセルの隣接するピクセルを関連付けて、文字の少なくとも一部分を形成することをさらに可能にする命令を格納する、付記１９に記載の持続性コンピュータ可読記憶媒体。
【００８４】
付記２６．  プロセッサによって実行されると、前記プロセッサにさらに、
ストローク幅変換アルゴリズムを前記文字の少なくとも一部分に適用させ、
前記ストローク幅変換アルゴリズムを適用した結果を文字認識アルゴリズムに提供させる命令を格納する、付記２５に記載の持続性コンピュータ可読記憶媒体。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
［１］コンピュータ実装方法であって、
実行可能な命令で構成される１つ以上のコンピュータシステムの制御下において、
複数のピクセルについてのピクセル値を含む１つの画像中の１つの領域の１つ以上の輝度勾配を分析して、１つ以上の可能性のあるエッジ位置を特定することと、
前記１つ以上の可能性のあるエッジ位置の所定距離の範囲内にある１組のピクセルについてのピクセル値を分析することと、
前記１つ以上の可能性のあるエッジ位置のそれぞれの前記所定距離の範囲内にある前記ピクセル値に少なくとも部分的に基づいて、前記領域のための文字ピクセル値の閾を判定することと、
前記文字ピクセル値の閾と少なくとも合致するピクセル値を有する前記１組のピクセルの一部分に少なくとも部分的に基づいて、１つ以上の文字部分を判定することと、を含む、コンピュータ実装方法。
［２］文字認識アルゴリズムを用いて前記１つ以上の文字部分を分析して、前記１つ以上の文字部分に関連付けられる少なくとも一文字を認識することをさらに含む、［１］に記載のコンピュータ実装方法。
［３］エッジ位置が、前記所定距離の範囲内の前記文字ピクセル値の閾に少なくとも合致する値を有するピクセル輝度勾配またはピクセル飽和勾配に対応する、［１］に記載のコンピュータ実装方法。
［４］前記ピクセル値を分析することは、前記１つ以上の可能性のあるエッジ位置の第１の側にある第１の組のピクセルを分析することと、前記１つ以上の可能性のあるエッジ位置の第２の側にある第２の組のピクセルを分析することとを含む、［１］に記載のコンピュータ実装方法。
［５］前記ピクセル値は、グレースケールピクセル輝度値、カラーピクセル輝度値、ピクセル飽和値、またはピクセル飽和レベルのうちの少なくとも１つに対応する、［１］に記載のコンピュータ実装方法。
［６］テキストライン構成アルゴリズムを用いて前記１つ以上の文字部分の関連する個別の文字要素を判定することをさらに含む、［１］に記載のコンピュータ実装方法。
［７］関連する個別の文字要素を判定した後に、前記個別の文字要素の支配的方向を判定することをさらに含む、［６］に記載のコンピュータ実装方法。
［８］前記個別の文字要素が少なくとも１つの既定の文字制約を満たすかどうかを判定することと、
個別の文字要素が既定の文字制約のうちの前記少なくとも１つを満たさない場合に、個別の文字要素を検討の対象から外すことと、をさらに含む、［６］に記載のコンピュータ実装方法。
［９］前記既定の文字制約は、文字要素間の間隔、隣接する文字要素の高さと幅の比率、または文字要素の垂直配列のうちの１つを含む、［８］に記載のコンピュータ実装方法。
［１０］結合コンポーネントアルゴリズムを用いて、前記文字ピクセル値の閾に少なくとも合致するピクセル値を有する前記複数のピクセルのピクセルを関連付けることと、
ストローク幅変換アルゴリズムを前記関連付けられたピクセルに適用することと、
前記ストローク幅変換アルゴリズムを適用した結果を文字認識アルゴリズムに提供することと、をさらに含む、［５］に記載のコンピュータ実装方法。
［１１］プロセッサと、
前記プロセッサによって実行されると、前記プロセッサにさらに、
１つの画像内の１つの領域の１つ以上の輝度勾配を分析して、１つ以上の可能性のある文字エッジ位置を特定させ、
前記１つ以上の可能性のあるエッジ位置の所定距離の範囲内にある１組のピクセルについてのピクセル値を分析させ、
前記１つ以上のエッジ位置のそれぞれの前記所定距離の範囲内にある前記ピクセル値に少なくとも部分的に基づいて、前記領域のための文字ピクセル値の閾を判定させ、
前記文字ピクセル値の閾と少なくとも合致するピクセル値を有する前記１組のピクセルの一部分に少なくとも部分的に基づいて、１つ以上の文字部分を判定させる命令を含む記憶デバイスと、を備える、携帯型コンピューティングデバイス。
［１２］前記命令は、前記プロセッサによって実行されると、
前記携帯型コンピューティングデバイスが、文字認識アルゴリズムを用いて前記文字部分を分析して、前記１つ以上の文字部分に関連付けられる少なくとも１つの文字を認識することをさらに可能にする、［１１］に記載の携帯型コンピューティングデバイス。
［１３］前記命令は、前記プロセッサによって実行されると、
前記携帯型コンピューティングデバイスが、
前記認識された少なくとも１つの文字に対応する文字パターンを特定し、
前記文字パターンに関連付けられる前記携帯型コンピューティングデバイス上のアプリケーションを判定し、
前記判定されたアプリケーションに前記認識された少なくとも１つの文字を提供することをさらに可能にする、［１２］に記載の携帯型コンピューティングデバイス。
［１４］ピクセル値を分析する前記命令は、
前記プロセッサによって実行されると、前記携帯型コンピューティングデバイスが、前記１つ以上の可能性のあるエッジ位置の第１の側にある第１の組のピクセルを分析することと、前記１つ以上の可能性のあるエッジ位置の第２の側にある第２の組のピクセルを分析することとをさらに可能にする命令をさらに含む、［１１］に記載の携帯型コンピューティングデバイス。
［１５］前記命令は、前記プロセッサによって実行されると、
前記携帯型コンピューティングデバイスが、結合コンポーネントアルゴリズムを用いて、前記文字ピクセル値の閾に少なくとも合致するピクセル値を有する前記複数のピクセルの隣接するピクセルを関連付けて、文字の少なくとも一部分を形成することをさらに可能にする、［１１］に記載の携帯型コンピューティングデバイス。
【図１Ａ】
0006046808.tif 000002
【図１Ｂ】
0006046808.tif 000003
【図１Ｃ】
0006046808.tif 000004
【図２Ａ】
0006046808.tif 000005
【図２Ｂ】
0006046808.tif 000006
【図２Ｃ】
0006046808.tif 000007
【図３Ａ】
0006046808.tif 000008
【図３Ｂ】
0006046808.tif 000009
【図３Ｃ】
0006046808.tif 000010
【図４】
0006046808.tif 000011
【図５】
0006046808.tif 000012
【図６】
0006046808.tif 000013
【図７Ａ】
0006046808.tif 000014
【図７Ｂ】
0006046808.tif 000015
【図７Ｃ】
0006046808.tif 000016
【図８】
0006046808.tif 000017
【図９】
0006046808.tif 000018
【図１０Ａ】
0006046808.tif 000019
【図１０Ｂ】
0006046808.tif 000020
【図１１】
0006046808.tif 000021
【図１２】
0006046808.tif 000022