(57)【要約】      （修正有）【課題】あらゆるＧＵＩを接触せずに制御する、迅速かつ正確な（信頼できる）方法を提供する。【解決手段】非接触ユーザインターフェースのための方法であって、以下を含む。現在アクティブなエリアを、いくつかの長方形のサブエリアに分割し、ＢＣＩを用いて、サブエリア毎に一意の視覚刺激を表示し、ユーザコマンドが実行されることが意図されるサブエリアに対応するターゲット刺激を、ＢＣＩを用いて識別し、識別されたターゲット刺激に対応するサブエリアを取得し、取得されたサブエリアがユーザの意図を判断するのに十分である場合、取得されたサブエリア内でコマンドを実行し、取得されたサブエリアがユーザの意図を判断するのに十分でない場合、大きさを拡大し、取得されたサブエリアを現在アクティブなエリアとして設定し、上記処理を繰り返す。【選択図】図１１
2019036307.tif 000002
【特許請求の範囲】
【請求項１】
非接触ユーザインターフェースための方法であって、該方法は、コンピュータによって実行可能であり、
ａ）ユーザが実行することを意図する少なくとも１つのコマンドを受け取るステップと、
ｂ）現在アクティブなエリアとして可視のＧＵＩを設定するステップと、
ｃ）該現在アクティブなエリアを表示するステップと、
ｄ）前記現在アクティブなエリアを、ＢＣＩ（Ｂｒａｉｎ−Ｃｏｍｐｕｔｅｒ  Ｉｎｔｅｒｆａｃｅ、脳−コンピュータ・インターフェース）によって提供される利用可能な刺激の数に等しいいくつかの長方形のサブエリアに分割するステップと、
ｅ）該ＢＣＩを用いて、サブエリア毎に一意の視覚刺激を表示するステップと、
ｆ）ユーザコマンドが実行されることが意図される該サブエリアに対応するターゲット刺激を、前記ＢＣＩを用いて識別するステップと、
ｇ）識別された該ターゲット刺激に対応する前記サブエリアを取得するステップと、
ｈ）該取得されたサブエリアがユーザの意図を判断するのに十分であることを特定するための条件が、所与のサブエリアの任意のポイントで実行されると、コマンドが同じ結果を返すこと、または該所与のサブエリアの現在のサイズが最低許容サイズに対応すること、または前記所与のサブエリアの該現在のサイズが１ピクセルであること、のうちの少なくとも１つを含む、前記取得されたサブエリアが該ユーザの意図を判断するのに十分であることに応答して、
前記取得されたサブエリア内で該コマンドを実行するステップと、
ｉ）前記取得されたサブエリアが前記ユーザの意図を判断するのに十分でないことに応答して、
大きさを拡大し、前記取得されたサブエリアを前記現在アクティブなエリアとして設定し、次にステップｃ〜ｉを繰り返すステップと
を含む、方法。
【請求項２】
非接触ユーザインターフェースのための方法であって、該方法は、コンピュータによって実行可能であり、
ａ）任意の形状およびサイズの少なくとも２つのＧＵＩサブエリアをサードパーティのアプリケーションから取得するステップと、
ｂ）少なくとも１つの上述のサブエリアに対応する少なくとも１つの視覚刺激をユーザに表示するステップと、
ｃ）該ユーザが対話したいと思う該サブエリアに対応する少なくとも１つのターゲット刺激を識別するステップと、
ｄ）該ターゲット刺激に対応するサブエリアを取得するステップと、
ｅ）前記サブエリアが識別されたことを該サードパーティのアプリケーションに通知するステップと
を含む、方法。
【請求項３】
前記現在アクティブなエリアとして設定されるエリアが拡大縮小される、請求項１に記載の方法。
【請求項４】
前記ターゲット刺激がＢＣＩを用いて識別される、請求項２に記載の方法。
【請求項５】
ＣＶＥＰ（ｃｏｄｅ−ｍｏｄｕｌａｔｅｄ  ｖｉｓｕａｌ  ｅｖｏｋｅｄ  ｐｏｔｅｎｔｉａｌｓ、符号変調型視覚誘発電位）、ＳＳＶＥＰ（ｓｔｅａｄｙ  ｓｔａｔｅ  ｖｉｓｕａｌ  ｅｖｏｋｅｄ  ｐｏｔｅｎｔｉａｌｓ、定常状態視覚誘発電位）、またはＰ３００に基づくＢＣＩが使用される、請求項４に記載の方法。
【請求項６】
マイクロフォンによって記録されるボイスコマンド、および／または眼球運動追跡システム、および／またはマウス、および／または前記ターゲット刺激を識別するために使用されるキーボードをさらに含む、請求項４に記載の方法。
【請求項７】
各刺激が、これが前記ターゲット刺激である確率を測定するために定期的にチェックされる、請求項１または２に記載の方法。
【請求項８】
前記現在アクティブなエリアが取得された後、このサブエリアの境界が表示される、請求項１に記載の方法。
【請求項９】
表示された刺激が部分的に透明である、請求項１または２に記載の方法。
【請求項１０】
音声および／または触覚刺激を前記ユーザに与えるステップをさらに含む、請求項１または２に記載の方法。
【請求項１１】
少なくとも１つのＧＵＩ要素が、前記現在アクティブなエリアと共に拡大縮小されない、請求項３に記載の方法。
【請求項１２】
前記現在アクティブなエリアが、長方形のまたは曲線の２Ｄグリッドの線に沿ってサブエリアに分割される、請求項１に記載の方法。
【請求項１３】
前記現在アクティブなエリアが、この場所に配置され、前記ユーザが対話できるＧＵＩ要素に対して分割される、請求項１に記載の方法。
【請求項１４】
メニューが、コマンドを取得および／もしくは実行するために、ならびに／または前記サブエリアが十分であることを確認するために、ならびに／またはサードパーティのアプリケーションと対話するために、前記ユーザに表示される、請求項２に記載の方法。
【請求項１５】
前記メニューが前記ＧＵＩとは別に表示され、拡大縮小されず、前記ユーザに常に見える、請求項１４に記載の方法。
【請求項１６】
メニュー項目に対応するサブエリアが、前記現在アクティブなエリアを分割することによって取得された、またはサードパーティのアプリケーションから取得されたサブエリアに追加される、請求項１４に記載の方法。
【請求項１７】
前記メニューが、独自の要素およびコマンドをサードパーティのアプリケーションが登録できるようにする、請求項１４に記載の方法。
【請求項１８】
前記メニューが、前記アプリケーションによって登録された要素またはコマンドに対応するメニューのサブエリアが識別された場合、前記サードパーティのアプリケーションに通知する、請求項１４に記載の方法。
【請求項１９】
前記メニューが、前記ターゲット刺激に対応する前記サブエリアが識別された後に表示される、請求項１４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術的解決策は、非接触ユーザインターフェースのための方法およびシステムに関し、脳−コンピュータ・インターフェースを用いてパーソナルコンピュータまたはＧＵＩベースの電子デバイスを制御するために使用され得る。
【背景技術】
【０００２】
脳−コンピュータ・インターフェース、すなわちＢＣＩ（ｂｒａｉｎ−ｃｏｍｐｕｔｅｒ  ｉｎｔｅｒｆａｃｅ）は、人間の脳と、コンピュータなどの電子コンピューティングデバイスとの間で情報を交換するためのシステムである。実際に、（コマンドについて考えることによって）ユーザが選択したコマンドが、ユーザの脳の活動に基づいて、ＢＣＩなどの少なくとも１つのデバイス、または少なくともこの一部を用いて認識されることがあるので、このようなシステムは、コンピューティングデバイスのユーザがどのような手動操作も行う必要がないやり方で動作させることができる。非侵襲性ＢＣＩは、刺激を与え、脳波（ＥＥＧ：ｅｌｅｃｔｒｏｅｎｃｅｐｈａｌｏｇｒａｐｈｉｃ）データをオンライン分析することを通じてユーザと対話することに基づく。複数の例示的な事例では、ＥＥＧデータは、予めオンラインモードで保存されない。刺激は、例えば、音声、フラッシュ画像／点滅画像（絵）、他を含んでよい。例えば、ＥＥＧデータ分析は、ＥＥＧデータ内で与えられた刺激に対するユーザの脳の反応を検出するために、機械学習および数理統計学の方法を含むことができる。非侵襲性ＢＣＩは、特にセンサといったどのような記録デバイスも、ユーザの脳に直接接続する必要はない。具体的には、ＥＥＧデータ分析は、ユーザが刺激を見て、刺激に応答するときの、少なくとも１つのＥＥＧデータセグメントおよび瞬間（または期間）を判断することを可能にする。１つの例示的な事例では、刺激は、コンピューティングデバイスのディスプレイ上でユーザに示される。１つの例示的な事例では、この刺激は、例えば、正方形、長方形、円、他といったフラッシュ画像／点滅画像、であってよい。
【０００３】
ユーザが様々なデバイスと対話するための、従来のシステムおよび方法がある。このようなシステムは、身体障害のある人々が、特に車いすを動かすこと、またはコンピューティングデバイス上にテキストをタイプすることといった、周囲の世界と対話することを可能にする。閉じ込め症候群も、身体障害とみなされるということに留意されたい。他の種類の身体障害は、重症の脊髄損傷、卒中、他によって引き起こされることがある。従来の方法およびシステムの欠点は、速度と性能が極めて低いこと、および使用が限定されることを含む。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】“Ａ  ｈｉｇｈ−ｓｐｅｅｄ  ＢＣＩ  ｂａｓｅｄ  ｏｎ  ｃｏｄｅ  ｍｏｄｕｌａｔｉｏｎ  ＶＥＰ”（ｄｏｉ：１０．１０８８／１７４１−２５６０／８／２／０２５０１５）
【非特許文献２】“Ｈｉｇｈ−ｓｐｅｅｄ  ｓｐｅｌｌｉｎｇ  ｗｉｔｈ  ａ  ｎｏｉｎｖａｓｉｖｅ  ｂｒａｉｎ−ｃｏｍｐｕｔｅｒ  ｉｎｔｅｒｆａｃｅ”（ＤＯＩ：１０．１０７３／ｐｎａｓ．１５０８０８０１１２）
【非特許文献３】“ｈｔｔｐｓ：／／ｅｎ．ｗｉｋｉｐｅｄｉａ．ｏｒｇ／ｗｉｋｉ／Ｐａｒｔｉｔｉｏｎ＿ｏｆ＿ａ＿ｓｅｔ”
【非特許文献４】“ｈｔｔｐｓ：／／ｅｎ．ｗｉｋｉｐｅｄｉａ．ｏｒｇ／ｗｉｋｉ／Ｉｍａｇｅ＿ｓｅｇｍｅｎｔａｔｉｏｎ”
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来の他の方法およびシステムは、ＢＣＩを介してＧＵＩを制御するために使用され、コマンドは、４方向のうちの１つにカーソルを移動させるために、マウスコントローラに段階的に送られ、コマンドは、ユーザが対応する刺激にフォーカスするときに生成される。このような方法の欠点のうちの１つは、マウスカーソルがインターフェースと対話するために所望のエリアに到達できるように、コマンドがユーザによって順番に入力されるのに複数のインスタンスをこのような方法が要するので、速度が遅いことである。１つの例示的な事例では、ユーザがインターフェースと対話することは、マウスボタンを押すこと／クリックすること、特に、このような押すこと／クリックすることを模倣することからなる。
【０００６】
２Ｄカーソル制御のために設計された脳−コンピュータ・インターフェースのための従来の方法およびシステムもある。このようなシステムは、誘発電位／誘発Ｐ３００（Ｐ３）波およびＥＲＤ／ＥＲＳ技術に基づくＢＣＩを介してマウスカーソルの制御を表す。このような方法の欠点のうちの１つは、ユーザとＧＵＩの間の対話の速度および精度が低いことである。
【０００７】
したがって、前述の欠点、またはこれらのうちの少なくともいくつかを克服する方法およびシステムが必要である。
【課題を解決するための手段】
【０００８】
本技術の目標は、あらゆるＧＵＩ（グラフィカル・ユーザ・インターフェース（Ｇｒａｐｈｉｃ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ））を接触せずに制御する、迅速かつ正確な（信頼できる）方法を提供することである。
非接触ユーザインターフェースのための方法の一例示的実施形態であって、方法は、コンピュータによって実行可能であり、以下を含む。
ａ）ユーザが実行することを意図する少なくとも１つのコマンドを受け取ることと、ｂ）現在アクティブなエリアとして可視のＧＵＩを設定することと、ｃ）前記現在アクティブなエリアを表示することと、ｄ）前記現在アクティブなエリアを、ＢＣＩによって提供される利用可能な刺激の数に等しいいくつかの長方形のサブエリアに分割することと、ｅ）ＢＣＩを用いて、サブエリア毎に一意の視覚刺激を表示することと、ｆ）ユーザコマンドが実行されることが意図されるサブエリアに対応するターゲット刺激を、ＢＣＩを用いて識別することと、ｇ）識別されたターゲット刺激に対応するサブエリアを取得することと、ｈ）取得されたサブエリアがユーザの意図を判断するのに十分であることを特定するための条件が、所与のサブエリアの任意のポイントで実行されると、コマンドが同じ結果を返すこと、または所与のサブエリアの現在のサイズが最低許容サイズに対応すること、または所与のサブエリアの現在のサイズが１ピクセルであること、のうちの少なくとも１つを含む、取得されたサブエリアがユーザの意図を判断するのに十分であることに応答して、取得されたサブエリア内でコマンドを実行することと、ｉ）取得されたサブエリアがユーザの意図を判断するのに十分でないことに応答して、大きさを拡大し、取得されたサブエリアを現在アクティブなエリアとして設定し、次にステップｃ〜ｉを繰り返すこと。
【０００９】
非接触ユーザインターフェースのための本方法の一例示的実施形態は、以下のステップを含む。ａ）少なくとも１つのユーザコマンド、およびユーザが前記コマンドを実行したいと思うＧＵＩエリアを取得することと、ｂ）前記ＧＵＩエリアを現在アクティブなエリアとして設定することと、ｃ）現在アクティブなＧＵＩエリアを分割することによって、前記コマンドを実行するために利用できる可能性のあるエリアをカバーする、任意の形状およびサイズのうちの少なくとも２つのサブエリアを取得することと、ｄ）少なくとも１つの上述のサブエリアに対応する少なくとも１つの視覚刺激をユーザに表示することと、ｅ）ユーザが対話したいと思うサブエリアに対応する、少なくとも１つのターゲット刺激を識別することと、ｆ）ターゲット刺激に対応するサブエリアを取得することと、ｇ）以前のステップで取得されたサブエリアが、ユーザの意図を正確に特定するのに十分であるかどうかを判断することであって、取得されたサブエリアが前記目的に対して十分である場合、ステップａ）で取得された少なくとも１つのユーザコマンドが、所与のサブエリア内で実行され、そうでなければ、このサブエリアが、現在アクティブなエリアとして設定され、ステップｃ）〜ｇ）が再び実行される。
【００１０】
非接触ユーザインターフェースのための本方法の別の例示的実施形態は、以下のステップを含む。ａ）任意の形状およびサイズの少なくとも２つのＧＵＩサブエリアをサードパーティのアプリケーションから取得することと、ｂ）少なくとも１つの上述のサブエリアに対応する少なくとも１つの視覚刺激をユーザに表示することと、ｃ）ユーザが対話したいと思うサブエリアに対応する少なくとも１つのターゲット刺激を識別することと、ｄ）ターゲット刺激に対応するサブエリアを取得することと、ｅ）前記サブエリアが識別されたことをサードパーティのアプリケーションに通知すること。
【００１１】
一例示的実施形態において、現在アクティブなエリアとして設定されるエリアは拡大縮小される。
【００１２】
一例示的実施形態において、ターゲット刺激はＢＣＩを用いて識別される。
【００１３】
一例示的実施形態において、ＣＶＥＰ（ｃｏｄｅ−ｍｏｄｕｌａｔｅｄ  ｖｉｓｕａｌ  ｅｖｏｋｅｄ  ｐｏｔｅｎｔｉａｌｓ、符号変調型視覚誘発電位）、ＳＳＶＥＰ（ｓｔｅａｄｙ  ｓｔａｔｅ  ｖｉｓｕａｌ  ｅｖｏｋｅｄ  ｐｏｔｅｎｔｉａｌｓ、定常状態視覚誘発電位）、またはＰ３００に基づくＢＣＩが使用される。
【００１４】
一例示的実施形態は、マイクロフォンによって記録されるボイスコマンド、および／または眼球運動追跡システム、および／またはマウス、および／またはターゲット刺激を識別するために使用されるキーボードをさらに含む。
【００１５】
一例示的実施形態において、各刺激は、これがターゲット刺激である確率を測定するために定期的にチェックされる。
【００１６】
一例示的実施形態において、現在アクティブなエリアが取得された後、このサブエリアの境界は表示される。
【００１７】
一例示的実施形態において、サブエリアの境界は、別々のＧＵＩレイヤ上に表示される。
【００１８】
一例示的実施形態において、表示された刺激は部分的に透明である。
【００１９】
一例示的実施形態は、音声および／または触覚刺激をユーザに与えることをさらに含む。
【００２０】
一例示的実施形態において、心の抑制（ｍｅｎｔａｌ  ｃｏｍｍａｎｄ）、ならびにユーザの感情、心理、および身体の状態は、ターゲット刺激を識別すると、記録され、考察される。
【００２１】
一例示的実施形態において、現在アクティブなエリアは、徐々にまたは即座に拡大縮小される。
【００２２】
一例示的実施形態において、コマンドは、オペレーティングシステム、ＧＵＩ、いくつかのアプリケーション、または仮想のものを含めたデバイスのための命令のセットである。
【００２３】
一例示的実施形態において、コマンドは、ＧＵＩと対話する、ポイントベースで座標依存型の方法である。
【００２４】
一例示的実施形態において、コマンドは、マウスボタンを押すこと、マウスボタンをダブルクリックすること、または指タッチである。
【００２５】
一例示的実施形態において、コマンドは、キーボード上のキー、または複数のキーの組合せを押すことを模倣することである。
【００２６】
一例示的実施形態において、コマンドは、２つ以上のコマンドの組合せである。
【００２７】
一例示的実施形態において、コマンドを実行するために利用できる可能性のあるエリアは、ユーザインターフェースの一部であり、コマンドを実行すると、いくつかの結果を生じる。
【００２８】
一例示的実施形態において、以下の条件のうちの１つが満たされた場合、サブエリアは、コマンドを実行するのに十分であるとみなされる。サブエリアのサイズが、事前設定された最小サイズに等しいこと、サブエリアの任意のポイントで実行されると、コマンドが同じ結果を生じること、サブエリアのサイズが、１つのピクセルに等しいこと。
【００２９】
一例示的実施形態において、サブエリアの境界は、別々のＧＵＩレイヤ上に表示される。
【００３０】
一例示的実施形態において、ターゲット刺激が識別された後、すべての刺激はオフにされる。
【００３１】
一例示的実施形態において、本方法の請求項１に記述のステップ間には休止があってよい。
【００３２】
一例示的実施形態において、拡大縮小されるエリアは、以前にユーザに表示されたいくつかのＧＵＩ要素をカバーする。
【００３３】
一例示的実施形態において、少なくとも１つのＧＵＩ要素は、現在アクティブなエリアと共に拡大縮小されない。
【００３４】
一例示的実施形態において、サブエリアが拡大縮小されるのと共に、少なくとも１つの他のサブエリアの少なくとも一部も拡大縮小されている。
【００３５】
一例示的実施形態において、いくつかのサブエリアまたはこの一部は、これらのサブエリアまたはこの一部を含むいくつかのＧＵＩエリアを拡大縮小することによって、拡大縮小されてよい。
【００３６】
一例示的実施形態において、現在アクティブなエリアは、長方形のもしくは曲線の、または他の任意のタイプの２Ｄグリッドの線に沿って、サブエリアに分割される。
【００３７】
一例示的実施形態において、このエリアは、以下のパラメータに基づいて分割される。サブエリアの数、サブエリアのサイズ、面積、分割グリッドの間隔、分割線の形状。
【００３８】
一例示的実施形態において、現在アクティブなエリアは、この場所に配置され、ユーザが対話できるＧＵＩ要素に対して分割される。
【００３９】
一例示的実施形態において、メニューは、コマンドを取得および／もしくは実行するために、ならびに／またはサブエリアが十分であることを確認するために、ならびに／またはサードパーティのアプリケーションと対話するために、ユーザに表示される。
【００４０】
一例示的実施形態において、メニューは、ＧＵＩとは別に表示され、拡大縮小されず、ユーザに常に見える。
【００４１】
一例示的実施形態において、メニュー項目に対応するサブエリアは、現在アクティブなエリアを分割することによって取得された、またはサードパーティのアプリケーションから取得されたサブエリアに追加される。
【００４２】
一例示的実施形態において、メニューは、独自の要素およびコマンドをサードパーティのアプリケーションが登録できるようにする。
【００４３】
一例示的実施形態において、メニューは、アプリケーションによって登録された要素またはコマンドに対応するメニューのサブエリアが識別された場合、サードパーティのアプリケーションに通知する。
【００４４】
一例示的実施形態において、ユーザは、自分自身のコマンドを作成することを許可される。
【００４５】
一例示的実施形態において、メニューは、ターゲット刺激に対応するサブエリアが識別された後に表示される。
【００４６】
一例示的実施形態において、上述のエリアおよび／またはこのエリアのサブエリアは、ＧＵＩを表示する画面上の全画面座標で定義される。
【００４７】
本技術の一例示的実施形態において、サードパーティのアプリケーションは、システムの動作を制御するＡＰＩを提供される。
【００４８】
一例示的実施形態において、サードパーティのアプリケーションは、ＡＰＩを使用して、ユーザが少なくとも１つの特定のサブエリアと対話したいと思っていることをシステムが確信している度合いを知ることができる。
【００４９】
一例示的実施形態において、サードパーティのアプリケーションは、ＡＰＩを使用して、識別されたサブエリアに基づくコマンドを実行することができる。
【００５０】
一例示的実施形態において、システムは、サードパーティのアプリケーションによって定義されたサブエリア以外の、アプリケーションまたはメニューによって定義されたサブエリアを処理することができる。
【００５１】
一例示的実施形態において、サードパーティのアプリケーションが任意のサブエリアを定義すると、既に定義されたサブエリアは、もはや処理されることも認識されることもない。
【００５２】
一例示的実施形態において、サブエリアの識別通知は、前記サブエリアを定義したアプリケーションおよび／またはメニューに対してのみ送られる。
【００５３】
一例示的実施形態は、仮想キーボードを表示することをさらに含み、キーのセットは、コマンドを実行するために利用できるエリアであり、キー自体は、キーボードが分割されたサブエリアであり、コマンドを実行するのに全く十分である。
【００５４】
一例示的実施形態は、識別されたサブエリアに対応するキーを押すことを模倣することをさらに含む。
【００５５】
一例示的実施形態において、仮想キーボードは、説明されたＡＰＩに従って動作する。
【００５６】
一例示的実施形態は、以下の方法でマウスコントローラを模倣することさらに含む。初期の現在アクティブなエリアとしてＧＵＩ全体をセットすること、固定サイズの規則的な長方形のグリッドに沿ってこのエリアを分割すること、サブエリアが現在アクティブなエリアとして設定された後、このサブエリアを、サブエリアのサイズがＧＵＩのサイズと等しくなるまで、拡大縮小すること。
【００５７】
一例示的実施形態において、マウスコントローラは、別々のアプリケーションによって模倣され、説明されたＡＰＩに従って動作する。
【００５８】
本技術の一例示的実施形態において、提示された刺激は、様々なサイズおよび形状のものであってよく、様々な透明度、点滅アルゴリズムおよび速度、明るさ、角直径、大きさ、面積、回転角を有してよく、関連付けられたサブエリアの様々な部分、および／またはＧＵＩの一部の中に配置されてもよい。
【００５９】
本技術の目的、特徴、および利点は、発明を実施するための形態、および添付の図面においてさらに示される。
【図面の簡単な説明】
【００６０】
【図１】本発明の方法を実行するためのシステムの様々な例示的実施形態を示す図である。
【図２】本発明の一例示的実施形態における例示的なＧＵＩ、この場合、デスクトップ環境を示す図である。
【図３】本発明の一例示的実施形態における、対応するサブエリアに対して識別されたターゲット刺激を有する例示的なＧＵＩを示す図である。
【図４】本発明の一例示的実施形態における、サブエリアの拡大縮小、およびこのさらなる表示の例を示す図である。
【図５】本発明の一例示的実施形態における、サブエリア４４６のさらなる拡大縮小の例を示す図である。
【図６】本発明の一例示的実施形態における、分割された例示的なＧＵＩを示し、サイドパネルメニューも分割されていることを示す図である。
【図７】本発明の一例示的実施形態における、非長方形の分割の例を示す図である。
【図８】本発明の一例示的実施形態における、拡大縮小後に表示されるサブエリア境界を用いた非長方形の分割の例を示す図である。
【図９】本発明の一例示的実施形態における、拡大縮小されたサブエリアおよび隣接するサブエリアの表示の例を示す図である。
【図１０】本発明の一例示的実施形態における、分割された別の例示的なＧＵＩを示し、サイドパネルメニューも分割されていることを示す図である。
【図１１】本発明の一例示的実施形態による、本方法のための例示的なアルゴリズムの流れ図を示す図である。
【図１２】本発明の方法を実行するための、システムのさらに様々な例示的実施形態を示す図である。
【図１３】本発明の一例示的実施形態による、刺激を与える例を示す図である。
【図１４】本発明の一例示的実施形態による、静止および／もしくはフラッシュすること、ならびに／または形状および／もしくは動きを変えることによる例示的な刺激を示す図である。
【図１５】本発明の一例示的実施形態による、分割の、および刺激を与える別の例を示す図である。
【図１６】例示的な汎用コンピュータシステムを示す図である。
【発明を実施するための形態】
【００６１】
本発明の目的および特徴、これらの目的および特徴を実現する方法は、例示的実施形態を参照することによって明白になるであろう。しかし、本発明は、下記に開示される例示的実施形態に限定されず、様々な形式で具体化されてよい。発明を実施するための形態に含まれる概要は、本発明を包括的に理解している当業者を支援することを保証する具体的詳細にすぎず、本発明は、添付の特許請求の範囲の範囲内でしか定義されない。
【００６２】
本開示で言及される用語「モジュール」、「構成要素」、「要素」、他は、ハードウェア（例えば、デバイス、計器、装置、機器、例えばプロセッサ、マイクロプロセッサ、集積回路、プリント配線板、ブレッドボード、マザーボード、他を含めたプリント回路基板（ＰＣＢ：ｐｒｉｎｔｅｄ  ｃｉｒｃｕｉｔ  ｂｏａｒｄ）、マイクロコンピュータ、他といったデバイスの構成部品）、ソフトウェア（例えば、実行可能プログラミングコード、コンパイルされたアプリケーション、プログラムモジュール、ソフトウェアもしくはプログラミングコードの一部、他）、および／またはファームウェアなどの、コンピュータ関連のエンティティを表すために使用される。例えば、構成要素は、プロセッサが実行したプロセス、オブジェクト、実行可能コード、プログラミングコード、ファイル、プログラム／アプリケーション、関数、メソッド、（プログラム）ライブラリ、サブプログラム、コプログラム（ｃｏ−ｐｒｏｇｒａｍ）、および／またはコンピューティングデバイス（例えば、マイクロコンピュータもしくはコンピュータ）、またはソフトウェアもしくはハードウェア構成要素の組合せであってよい。したがって、１つの例示的な事例において、サーバ上で動くアプリケーションは、構成要素／モジュールであってよいが、サーバも構成要素／モジュールであってよい。少なくとも１つの構成要素／モジュールが、プロセスの一部であってよいということに留意されたい。構成要素／モジュールは、単一のコンピューティングデバイス（例えば、マイクロコンピュータ、マイクロプロセッサ、ＰＣＢ、他）の中に配置されてよく、および／またはいくつかのコンピューティングデバイスの間に分散／分割されてよい。
【００６３】
脳−コンピュータ・インターフェース、すなわちＢＣＩは、人間／ユーザの脳と、電子デバイス、特にコンピューティングデバイスとの間で情報を交換するためのシステムである。ＢＣＩは、脳信号を受け取ることおよび／もしくは認識すること、ならびに／または処理することを可能にし、コンピューティングデバイスを制御するために使用されてよい。ＢＣＩは、例えば、ユーザの生物学的データに基づいて、可能性のあるコマンド（例えば、選択するために利用できるコマンド）のうちの少なくとも１つを入力するというユーザの意図を認識することも可能にする。
【００６４】
本開示において、刺激は、ユーザに対する（何らかの）作用（インパクト）である。１つの例示的な事例では、刺激に対して意図的または非意図的にユーザが反応することに関する生物学上の脳信号が、認識されつつあるということに留意されたい。信号は、ＢＣＩまたは他のいくつかのシステムを用いて認識されることがある。刺激は、フラッシュする正方形もしくは他の任意の幾何学的形状、またはサイズ、透明度、回転角、コンピューティングデバイスの画面上の位置、他を変化させている画像であってよい。（例示的な刺激は図１４に示される。）刺激は、画面上の他の画像を含んでもよく、ユーザが、これらの画像のうちの１つにフォーカスしていること、および／または見ていることを認識できる。また、視覚刺激と共に、ユーザは、録音もしくは他の任意の音声信号などの可聴刺激、または触覚刺激を与えられてもよい。他の刺激は、すべての種類のユーザへのアピール、特に、ユーザに心の抑制を行うことを促すものを含んでよい。このようなアピールは、画面上に表示されてよいということに留意されたい。また、このようなアピールは、スピーカ、声によって生み出されてよく、また他の任意の既知の方法でユーザに与えられてもよい。例えば、アピールは、「右手を閉じることを想像してください」もしくは「目を閉じてください」のようなもの、または「リラックスしてください」のような音声、他であってよい。この場合、ユーザが、目を閉じることによって「目を閉じてください」というアピールに反応する場合、この物理的なアクションは、本システムのモジュールのうちの少なくとも１つによって認識される可能性がある。ユーザの反応は、本システムの手段（例えば、本システムのモジュール）、特にＢＣＩによって認識されるということにも留意されたい。前記手段、すなわちモジュールまたはこれらの部品は、（電子）コンピューティングデバイスにコマンドを送ることができる。本発明のこの好ましい実施形態において、例示的な刺激は、コンピューティングデバイスの画面上の長方形のエリアであり、このエリアの表示パラメータは、事前設定されたアルゴリズム（法則、条件、他）に従って変化する。例えば、このようなアルゴリズムは、現在の時間に依存する機能によって表される表示ルールを含んでよく、各瞬間に、色、透明度、サイズ、位置、他を判断する。例示的な事例において、刺激は刺激の色を黒から白に変化させ、時間の経過と共に戻るが、これは画面の対応する部分で点滅することに等しい。画面はいくつかの刺激を同時に保持することができ、各刺激は変化させるための独自の法則／アルゴリズムを有し、ユーザが視線をこれらの刺激のうちの１つにフォーカスするとき、独自のユーザの脳信号を個々に有することに留意されたい。
【００６５】
ターゲット刺激は、ユーザが意図的にフォーカスしている刺激であり、および／またはユーザが対話したいと思う刺激である。
【００６６】
ターゲット刺激の識別は、ユーザが、ユーザに与えられた任意の刺激に応答する機会を有する、一連のイベントを含む。本発明の一例示的実施形態において、ターゲット刺激は、ＢＣＩまたは他のシステムを用いて認識される。例えば、ターゲット刺激を識別することは、ＢＣＩを用いて、例えばユーザの脳信号といった信号を認識することによって、ユーザが対話している刺激（特に、ユーザがフォーカスしている刺激）を判断することである。例えば、ターゲット刺激にフォーカスしているとき、ユーザの脳は、データベース（データストレージ）に格納された信号と比較することができる信号を生成する。信号は具体的なターゲット刺激に対応することができるということに留意されたい。信号は、本システムの少なくとも１つのモジュールを用いて比較することができるということにも留意されたい。
【００６７】
この例示的な事例では、グラフィカル・ユーザ・インターフェース（ＧＵＩ）は、様々なユーザインターフェースである。ＧＵＩにおいて、ユーザに表示される、メニュー、ボタン、アイコン、他などのインターフェース要素は、図形画像である。ＧＵＩは、コマンドをインターフェース要素に送ることによってナビゲートされ得る、というプロパティをＧＵＩが有することができるということに留意されたい。例示的なＧＵＩは、オペレーティングシステムのＧＵＩ、アプリケーションのＧＵＩ、特にブラウザのＧＵＩ、モバイルアプリのＧＵＩ、他を含む。
【００６８】
コマンドは、オペレーティングシステム、ＧＵＩ、いくつかのアプリケーション、または仮想のものを含めたデバイスのための命令のセットである。この例示的な事例では、コマンドは、このＧＵＩによって提供される、ＧＵＩと対話する、ポイントベースで座標依存型の方法（方法、機構、他）のうちの１つである。このようなコマンドは、例えば右マウスクリック、左マウスクリック、指タップ、他を含む。
【００６９】
エリアはＧＵＩの一部である。１つの例示的な事例では、エリアがユーザに対して表示されているとき、エリアは、表示されている現在または決められたいくつかの瞬間におけるエリアの状態になる。このエリアは、表示されるときに修正されてよい。例えば、エリアの大きさは、変化させてよい。１つの例示的な事例では、エリアの画像は画面全体を占有してよい。加えて、例えば、エリア上またはこの近くに、追加要素が表示されてよい（下記参照）。１つの例示的な事例では、これらの追加要素は、別々のＧＵＩレイヤ上に表示されてよい。また、１つの例示的な事例では、１つまたは複数のエリアが同時に表示されてよい。（分割後）１つのエリアがもう１つのエリアの一部である場合、このエリアのサブエリアとしてラベル付けされてよい。１つの例示的な事例では、エリアは、ＧＵＩの長方形の一部であってよい。
【００７０】
いくつかのＧＵＩ、特にウィンドウベースのＧＵＩにおいて、インターフェース要素は一斉に表示され、互いにカバーしてよいが、いくつかの要素は、他の要素より「上」または「下」にあると仮想的にみなされることがある。１つの例示的な事例では、ＧＵＩ要素は、異なるレイヤ上に仮想的に置かれてよく、互いに対するこれらのレイヤの位置は特定されている。したがって、所与のレイヤ上に置かれたすべての要素はまとめて、これらのレイヤの相対位置に従って、異なるレイヤ上に置かれたすべての要素より「上」または「下」にある。
【００７１】
意図されるエリアはＧＵＩの一部であり、ユーザはコマンドを実行することを意図する。
【００７２】
拡大縮小することは、表示されたエリアのサイズを段階的または即時に変化させることを意味する。
【００７３】
分割は、ＧＵＩエリアをさらに小さいエリア（サブエリア）に分割することを意味する。より大きいエリアは、例えば、前記サブエリアの輪郭／境界を描画することによって、視覚的にも分割される。
【００７４】
コマンドを実行するために利用できる可能性のあるエリアは、ユーザインターフェースの一部であり、コマンドを実行すると、いくつかの結果を生じる。例えば、オペレーティングシステムのデスクトップ上のアイコンは、このような、「左マウスクリック」コマンドに対して利用できる可能性のあるエリアである。同時に、１つの例示的な事例では、オペレーティングシステムのデスクトップ上の空のエリアは、「左マウスクリック」コマンドをこのエリアで実行しても、どのような結果もどのような帰結／反応も生じないので、このような、「左マウスクリック」コマンドのためのエリアではない。
【００７５】
１つの例示的な事例では、本方法を実行するアプリケーションは、アルゴリズムまたはコンピュータプログラムであり、本発明の方法を使用して、一定のＧＵＩとの対話を可能にする。
【００７６】
本開示において、ＣＶＥＰ（符号変調型視覚誘発電位（Ｃｏｄｅ  Ｍｏｄｕｌａｔｅｄ  Ｖｉｓｕａｌ  Ｅｖｏｋｅｄ  Ｐｏｔｅｎｔｉａｌｓ））は、「Ａ  ｈｉｇｈ−ｓｐｅｅｄ  ＢＣＩ  ｂａｓｅｄ  ｏｎ  ｃｏｄｅ  ｍｏｄｕｌａｔｉｏｎ  ＶＥＰ」（非特許文献１）という名称の論文の中で説明される方法を意味する。
【００７７】
本開示において、ＳＳＶＥＰは、「Ｈｉｇｈ−ｓｐｅｅｄ  ｓｐｅｌｌｉｎｇ  ｗｉｔｈ  ａ  ｎｏｎｉｎｖａｓｉｖｅ  ｂｒａｉｎ−ｃｏｍｐｕｔｅｒ  ｉｎｔｅｒｆａｃｅ」（非特許文献２）という名称の論文の中で説明される方法を意味する。
【００７８】
Ｐ３００は、刺激に対して反応する脳波の構成要素であり、刺激が与えられてから２５０〜５００ミリ秒後の脳波図における正の電圧変化である。いくつかのＢＣＩが、この構成要素の分析に基づいて設計されてきた。
【００７９】
ＥＲＤ／ＥＲＳ（事象関連非同期／事象関連同期（ｅｖｅｎｔ−ｒｅｌａｔｅｄ  ｄｅｓｙｎｃｈｒｏｎｉｚａｔｉｏｎ／ｅｖｅｎｔ−ｒｅｌａｔｅｄ  ｓｙｎｃｈｒｏｎｉｚａｔｉｏｎ））は、一定のアクションに関する心の表現に関係し、ＥＥＧにおいて一定の周波数を増加させる。この原理は、ＢＣＩを設計するための基礎として使用されることがある。
【００８０】
図１は、本方法を実行するためのシステムの様々な例示的実施形態を示す。１つの例示的な事例では、本発明のシステムは、映像信号を再生し、視覚情報を表示するためのいくつかの手段（１つの例示的な事例では、システム、デバイス、モジュール、他）１４０А、１４０Ｂ、１４０Ｃを備える。表示手段１４０（１４０Ａ、１４０Ｂ、１４０Ｃ）は、コンピューティングデバイス（１３０Ａ、１３０Ｂ）に接続されてよく、またこの一部であってもよい。手段１４０とデバイス（１３０Ａ、１３０Ｂ）の間のこの接続は、例えば、有線のおよび／またはワイヤレスの通信手段（モジュール）を介して行われてよい。通信手段（モジュール）は、通信デバイスとして実装されてよいということに留意されたい。手段１４０は、モニタ、（例えば、コンピューティングデバイスの）ディスプレイ、（例えば、ＴＶセットまたはＶＲゴーグル／ヘッドセットの）画面、インジケータ、他によって表現されてよい。表示手段１４０は、記録再生手段または図形表示手段によって表現されてもよい。記録再生手段は、機械的デバイスと非機械的デバイスの両方を含むということに留意されたい。上述の図形表示手段は、直接表示手段および画像投影手段を含む。手段１４０は、１フィールドずつ着色剤をキャリアに載せることによって有益な印刷が生み出されるデバイスを含んでよい。他のデバイスにおいて、有益な印刷は、キャリアの物質組成を変えることによって生み出されることがある。手段１４０は、特に電界および／または磁界によって前記着色剤の素粒子を引き寄せることで着色剤をキャリアに載せることにより、有益な印刷が生み出されるデバイスを含んでよい。手段１４０は、電子写真の、静電気の、フェログラフィーの、サーモグラフィーの、写真の、ディアソグラフィーの（ｄｉａｓｏｇｒａｐｈｉｃ）、電気化学の、電気火花の、または熱可塑性のデバイス、ならびに具体的には、ＣＲＴ（従来のＣＲＴとキャラクトロンの両方）による、またはマトリックスベースのキャラクタ・インジケータ、キャラクトロン、もしくはＣＲＴによる、直接表示手段または画像投影手段を含んでもよい。手段１４０は、キャラクタの既製セットを使用する以下のデバイスを含んでもよい。ニクシー管（冷陰極ディスプレイ）、光格子、光ファイバ・インジケータ、キャラクタ・ドラム（ｃｈａｒａｃｔｅｒ  ｄｒｕｍ）、ストリーマ、白熱管、エレクトロルミネセント・インジケータ／ディスプレイ、または液晶ベースのインジケータ／ディスプレイ、ならびに電子光学の、電子機械の、もしくはレーザのシステム、直視システム、フィルム映写機、尖筆画法の、ホログラフィーの、もしくはレーザのシステム、またはパッシブスクリーンおよびアクティブスクリーンを有するシステム。以下において、これらの映像信号再生および情報表示手段１４０（具体的には、モジュール、デバイス、他）が、ＰＣ／ラップトップのディスプレイの例を通じて論じられるが、ＰＣ／ラップトップのディスプレイは、例示的なコンピューティングデバイスである。本発明は、ディスプレイだけで使用できるという点に限定されないということに留意されたい。
【００８１】
本システムの説明されたモジュール（具体的には、手段、デバイス、他）のうちの少なくとも２つは、単一モジュールに組み合わされてよいということに留意されたい。例えば、表示手段１４０Ａ／１４０Ｂ／１４０Ｃ、および／または記録モジュール／センサ１５０Ａ／１５０Ｂ／１５０Ｃ、および／またはデータ処理モジュール１２０Ａ／１２０Ｂ／１２０Ｃ、および／または計算モジュール１３０Ａ／１３０Ｂ／１３０Ｃ、他は、単一モジュール１６０に組み合わされてよい。一例示的実施形態において、モジュール１６０は、ＢＣＩモジュール、および／またはＶＲヘッドセット、他として表現されてよい。
【００８２】
上述のコンピューティングデバイス（１３０Ａ、１３０Ｂ）は、タブレット、スマートフォン、電話、他などのモバイルデバイス、またはワークステーション、サーバ、デスクトップコンピュータ、モノブロック（ｍｏｎｏｂｌｏｃｋ）、他などの固定式デバイスを含んでよい。
【００８３】
本システムは、少なくとも１つのデータ処理モジュール１２０を備えることができる。いくつかの実施形態において、モジュール１２０は、個別モジュール（具体的には、デバイス）１２０Ａとして表現されてよく、また例えば、コンピュータ基板／モジュール１２０Ｂといった、本システムのモジュールのうちの少なくとも１つの一部／要素であってもよい。基板１２０Ｂは、コンピューティングデバイス（例えば、１３０Ｂ）にマウントまたは統合されてよく、また有線および／またはワイヤレス接続、通信、接点、取付け、他を介してこのコンピューティングデバイスに接続されてよい。データ処理モジュール１２０は、記録モジュール１５０（１５０Ａ、１５０Ｂ）からデータ／情報を受け取ることができ、この記録モジュールは、１つの例示的な事例では、センサおよび／またはデバイス、特にモジュールである。例えば、記録モジュールは、例えば、目、脳、他の（動きを含めた）活動といった、ユーザ、および／またはユーザの少なくとも１つの体の部位のアクション、活動、他（下記の詳細な説明を参照）を記録および／または監視することができる。例えば、このようなセンサおよび／または（同様に本明細書で述べられた少なくとも１つのセンサを備える）デバイス１５０Ａ、１５０Ｂは、ユーザから受け取られた信号を記録、送信、および／または格納することができ、このような記録モジュール１５０は、データ処理モジュール１２０を備えることができる。記録モジュールは、脳波計、ＭＲＩスキャナ、心電計、他などの、ユーザの生物学的データを読み取るデバイスを含んでよい。記録モジュールは、例えば、マウス・マニピュレータ（ｍｏｕｓｅ  ｍａｎｉｐｕｌａｔｏｒ）、キーボード、ジョイスティック、（ウェブカメラを含めた）ビデオカメラ、カメラ、フレーム取込器、マイクロフォン、トラックボール、タッチパッド、（図形タブレットを含めた）タブレット、センサ画面、例えばＫｉｎｅｃｔといったコンピュータ視覚デバイス、（コンピュータ）ハンドル、ダンスパッド、ペダル、赤外線放射温度計（ＩＲ  ｇｕｎ）、様々なマニピュレータ、眼球運動追跡器（ｅｙｅ  ｍｏｖｅｍｅｎｔ  ｔｒａｃｋｅｒ）、運動センサ、加速度計、ＧＰＳモジュール／センサ、容量センサ（ｖｏｌｕｍｅ  ｓｅｎｓｏｒ）、ＩＲセンサ、ユーザ（またはユーザの体の部位）の動きを記録し認識する手段、ＶＲヘッドセット、ＡＲ／ＶＲゴーグル、Ｍｉｃｒｏｓｏｆｔ  Ｈｏｌｏｌｅｎｓ、運動感覚の検出器、ウェアラブルセンサ（例えば、特殊なグローブ）、Ｇｏｏｇｌｅ  Ｇｌａｓｓまたは特殊カメラなどの眼球運動検出器１２６０（図１２参照）、ＩＲカメラ、Ｓｉｒｉまたは類似のモデル／システム（特に統合された、外部の、またはサーバベースの背景音声認識モジュールを有するセンサ）、他といった入力デバイスを含んでもよい。
【００８４】
本発明の例示的実施形態における、記録モジュール（１５０Ａ、１５０Ｂ）は、少なくとも１つのデータ処理モジュール１２０に接続されてよい。データ処理モジュール１２０は、少なくとも１つのコンピューティングデバイス（モジュール）１３０に接続されてよく、このコンピューティングデバイスは、少なくとも１つの表示手段１４０に接続されてよいということに留意されたい。データ処理モジュール１２０および／または記録モジュール１５０は、通信モジュール（特にデータを受け取るため、および／または送信するためのモジュール）、ならびにデータストレージモジュールを備えることができるということにも留意されたい。
【００８５】
本発明の少なくとも１つのモジュール（例えば、モジュールおよび／または手段１２０、１３０、１４０、１５０、１７０、他）は、マイクロコンピュータ（例えば、Ａｒｄｕｉｎｏ、Ｒａｓｐｂｅｒｒｙ  ＰＩ（３）、Ｉｎｔｅｌ  Ｊｏｕｌｅ、ＬａｔｔｅＰａｎｄａ、ＭＫ８０２、ＣｕＢｏｘ、Ｏｒａｎｇｅ  Ｐｉ  ＰＣ、他）、マイクロコントローラ／ミニコントローラ、電子ボード、他、またはこのモジュール／デバイス／システム／サブシステムの少なくとも１つの機能（機能的能力）を実行するのに十分なこれらの少なくとも一部などの、少なくとも１つのコンピューティングデバイスによって表現されてよい。説明されたモジュールの他の機能は、少なくとも１つの他のシステムモジュールによって実行されてよいということに留意されたい。本発明の例示的実施形態において、本システムの少なくとも１つのモジュールは、オペレーティングシステム（例えば、Ｗｉｎｄｏｗｓ、Ｌｉｎｕｘ（登録商標）、他）がインストールされたマイクロコンピュータを備えることができる（マイクロコンピュータは、プロセッサまたはマイクロプロセッサを備えることができる）。本明細書で説明されたモジュール、特にマイクロコンピュータ、コンピューティングデバイス、ディスプレイ、他のモジュールは、マイクロコンピュータ／マイクロコンピュータの構成部品、または少なくとも１つのコンピューティングデバイス、プログラミング構成要素（例えば、仮想のまたはプログラムによってエミュレートされた物理デバイス）、プロセッサ、マイクロプロセッサ、電子回路、デバイス、他によって表現される別々のモジュールであってもよいということに留意されたい。これらのモジュールは、様々なバス構造（例えば、システムバス、周辺機器バス、ローカルバス、メモリバス、他）、様々なインターフェース（シリアルポート、パラレルポート、ゲームポート、ＵＳＢ（ユニバーサル・シリアル・バス（ｕｎｉｖｅｒｓａｌ  ｓｅｒｉａｌ  ｂｕｓ））、ネットワーク・インターフェース、他）、アダプタ（例えば、ディスプレイアダプタ／ビデオアダプタ、ネットワークアダプタ、制御されたアダプタ（ｃｏｎｔｒｏｌｌｅｄ  ａｄａｐｔｅｒ）、ＵＳＢアダプタ、他）などを含めた、少なくとも１つのタイプの接続（有線またはワイヤレス）によって互いに接続されてよい。例えば、１つの例示的な事例では、１つのシステムモジュール、または任意のタイプの任意の数のシステムモジュールを備える、モジュールの少なくとも１つのセットは、少なくとも１つのマイクロコンピュータであってよく、および／または少なくとも１つのマイクロコンピュータに接続されてもよい。
【００８６】
本明細書で説明されたモジュールのうちの少なくとも１つは、他のシステムモジュールのうちの少なくとも１つに、または少なくとも１つの通信モジュール（手段）１７０を介して外部モジュールに、接続されてよい。いくつかの実施形態において、通信モジュール（手段）１７０は、有線（１７０Ａ）またはワイヤレス（１７０Ｂ）であってよい。
【００８７】
１２０、１３０、１４０、１５０、他などの、本明細書で説明されたモジュール、および／またはこれらの構成部品は、有線および／またはワイヤレスの通信手段（方法）を介して、ならびに（例えば、端末、端子、アダプタ、ハンダ付け、機械的コネクタ、スレッディング、他を通じた）着脱式または非着脱式のワイヤ、他を含めた様々なタイプの接続も介して、互いに接続されてよい。例えば、このような通信手段は、ローカル・エリア・ネットワーク（ＬＡＮ：ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＵＳＢインターフェース、ＲＳ−２３２標準インターフェース、Ｂｌｕｅｔｏｏｔｈ（登録商標）またはＷｉ−Ｆｉインターフェース、インターネット、特に８５０〜１９００ＭＨｚ帯域のモバイルセルラー通信（ＧＳＭ（登録商標））、衛星通信、基幹通信、およびセルラートポロジを用いて複雑なワイヤレスネットワークを生成する超低消費電力のデータ転送チャネル（ＺｉｇＢｅｅ）、ならびに他のタイプの通信／接続によって表現されてよい。本発明の一例示的実施形態において、データは、ＭＡＣ環境アクセス制御レベルおよびＰＨＹ物理レベル他などの最下層レベルのサービスを使用する、ＡＰＳ（アプリケーション・サポート・サブレイヤ（ａｐｐｌｉｃａｔｉｏｎ  ｓｕｐｐｏｒｔ  ｓｕｂｌａｙｅｒ））およびＮＷＫを含む、ＩＥＥＥ  ８０２．１５．４およびＺｉｇＢｅｅ標準のプロトコルを含めた、ＨＴＴＰ（ハイパーテキスト・トランスファ・プロトコル（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ））、ＨＴＴＰＳ（ハイパーテキスト・トランスファ・プロトコル・セキュア（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ  Ｓｅｃｕｒｅ））、ＦＴＰ（ファイル・トランスファ・プロトコル（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ））、ＴＣＰ／ＩＰ、ＰＯＰ３（ポスト・オフィス・プロトコル（Ｐｏｓｔ  Ｏｆｆｉｃｅ  Ｐｒｏｔｏｃｏｌ））、ＳＭＴＰ（シンプル・メール・トランスファ・プロトコル（Ｓｉｍｐｌｅ  Ｍａｉｌ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ））、ＴＥＬＮＥＴ、ＤＴＮ、他などの様々なプロトコルを介して、本発明のモジュール／デバイス／システム間で伝達されてよい。
【００８８】
本発明の方法およびシステムは、具体的には、脳−コンピュータ・インターフェース、またはヒューマン・マシン・インターフェース、ハードウェア・インターフェース、入力もしくは出力インターフェース、および／もしくは入力／出力インターフェースを含めた、他の任意のタイプのインターフェースを介して、少なくとも１人のユーザがインターフェース（特にＧＵＩ）と対話することを可能にする。
【００８９】
本発明の例示的実施形態において、方法およびシステムは、（グラフィカル／視覚）インターフェースの意図されるエリア内の所定の１つを含めた具体的なコマンドを、このユーザが（具体的にはＢＣＩを用いて）実行することを可能にする。例えば、「マウスクリック」（または指タップ、またはインターフェース（図形）要素と対話する他の任意の方法）コマンドをＰＣ（コンピューティングデバイス）のデスクトップアイコンに適用することは、本方法およびシステムの機能の例示的な実装形態である。この場合、デスクトップはＧＵＩであり、アイコンは意図されるエリアであり、マウスクリックはコマンドである。いくつかの実施形態において、コマンドは、本システムの少なくとも１つのモジュール内、特に上述のコンピューティングデバイス、データ処理モジュール、および／または記録モジュール内にプログラムされてよい。
【００９０】
ディスプレイモジュール１４０の画面は、例えば（データ）入力デバイス、記録モジュール１５０、他を用いて、いろいろな方法でユーザが対話することができる、アイコン／ショートカット、ボタン（２５０Ｇ）、アプリケーション、アプリケーションの部品／要素、オペレーティングシステムつまりＯＳのウィンドウ、アプリケーションウィンドウ２６０、他などのＧＵＩ２００の様々な図形要素（エリア）（図２参照）を表示することができる。
【００９１】
図２は、本発明の一例示的実施形態における、例示的なＧＵＩ、この場合、デスクトップ環境を示す（デスクトップは例示的なグラフィックシェルである）。上述のように、ＧＵＩは、ユーザによって対話できる（可能性のある）、ショートカット（アイコン）、例えば図形ボタンといったボタン、タブ、メニュー項目２７０、アプリケーションのボタン２８０、画像、他を含めた様々な図形要素（２５０А〜２５０Ｚ）を含んでよい。
【００９２】
本発明の一例示的実施形態において、ＧＵＩ２００のエリア全体（および／または少なくともこの一部）は、任意の数のサブエリアに細分割されてよい。ＧＵＩ２００のエリアは、本システムのモジュールのうちの少なくとも１つを用いて、仮想的および／または視覚的に細分割されてよい。例えば、ＧＵＩエリアは、コンピューティングデバイス１３０上に（および／またはデータ処理モジュール１２０上に、および／または記録モジュール１５０上に）インストールされたソフトウェアによって実行される分割アルゴリズムを用いて細分割されてよい。ＧＵＩ分割アルゴリズムは、所与のＧＵＩエリアを様々な形状およびサイズのサブエリア（図２内の２３０А〜２３０Ｚ、図７内の７６７А〜７６７Ｚ）に細分割することができる。前記サブエリアは、正方形および／または長方形の形、任意の形状、他のものであってよい。分割の結果は、例えば、ＲＡＭ、アプリケーション、データベース、ハードディスクドライブ、ネットワークベースのストレージまたはクラウドのストレージ、他などのデータストレージ内に格納されてよい。例えば、分割線が交差する座標、線の形状、分割の公式および線を作図する公式、他は、このように格納されてよい。また、分割によって生じる少なくとも１つのサブエリア上に、少なくとも１つの刺激が表示されてよく、これはさらに詳細に下記で説明される。１つの例示的な事例では、図２に示される破線２８５は、可視化データのエリア（特にＧＵＩ）を具体的に長方形のサブエリア２３０А〜２３０Ｚに分割するためのアルゴリズムの実装を、視覚的に表現するものとして使用されることがある。このエリアは、２Ｄ分割グリッドで分割されてもよい。１つの例示的な事例では、この分割グリッドは、破線２８５（図２参照）、７４２（図７参照）の中に表示される。このような分割は描画されることはなく、すなわちユーザに表示されることもないということに留意されたい。また、図７は、ＧＵＩエリア２００が任意のサブエリア７６７Ａ〜７６７Ｚに分割される例を示す。
【００９３】
上述の細分割は、本明細書で開示された方法およびシステムの少なくとも一部を実装する機能を含めた、オペレーティングシステムまたは少なくとも１つのアプリケーションの機能を使用して実装されることがあるということに留意されたい。一例示的実施形態において、このアプリケーションは、上述の刺激および細分割を描画／表示する。
【００９４】
本発明の中で、ユーザは、刺激、（ボタン、アイコン、テキスト、他などの）図形（描画された、表示された）要素、および他のものを含めることができるメニュー２４０を表示されることがある。メニューは、アプリケーション、またはＧＵＩ、またはオペレーティングシステム、他の一部であってよいということに留意されたい。説明されたエリア、ならびに／またはＧＵＩおよび（ＧＵＩ要素を含めた）この一部とユーザが対話するためのメニュー２４０は、本システムのモジュールのうちの少なくとも１つによって実装されてよいということに留意されたい。また、メニュー２４０は、コンピューティングデバイス１３０の手段を含めた、このようなモジュールのプログラム手段を通じて実装されてよい。
【００９５】
メニューは、ＧＵＩ上におよび別々に表示されてよいということに留意されたい。この場合、ＧＵＩおよび／またはこの一部を画面にフィットさせるために、ＧＵＩおよび／またはこの部品は、縮小（圧縮）されてよい。このメニューは、図１０に示されるように、本発明の方法のうちの１つを使用して、例えば１０３８А〜１０３８Ｎといったサブエリアに（本システムの少なくとも１つのモジュールを用いて）さらに（再）分割されてよい。例えば、サブエリアに分割することは、分割アルゴリズムを通じて行われてよく、前記サブエリアのうちの少なくとも１つは、少なくとも１つの刺激を含むことができる。メニューの分割を含めた、エリアの、特にＧＵＩの説明された分割は、一斉に行われてよいということに留意されたい。説明された分割は、メニュー２４０またはこのエリア１０２３を含めた、ＧＵＩ２００のエリア全体の分割を（さらに）含んでよいということにも留意されたい。また、本発明の一例示的実施形態において、例えば、図６内の６２０などのＧＵＩエリア（またはこの一部）、および特に、エリア６２０に含まれる刺激以外の他の刺激を含む、図６内の６４０などの（追加の）メニューエリアといったエリアは、個別に分割されてよい。
【００９６】
１つの例示的な事例では、このメニューはサイドパネルとして作られてよい。図１０は、本発明の例示的実施形態における、分割された例示的なＧＵＩを示し、サイドパネルメニューも分割されることを示す。
【００９７】
また、（特に上述などの）少なくとも１つのインターフェースの様々なアプリケーション、例えば、定められたときにアクティブになるアプリケーションは、本システムの少なくとも１つのモジュールによって、アプリケーションのコマンドをこのようなパネル（メニュー）に置くことができるようになることがある。例えば、オープンされたビデオプレーヤ（オーディオおよび／もしくはビデオ再生ソフトウェア）または３Ｄソフトウェア、図形エディタ、ビデオエディタ、他などの他の任意のアプリケーションは、例えば「再生開始」／「停止」（または他の任意のコマンド）といったアプリケーションのコマンドを置くことができ、このコマンドは、対応するターゲット刺激が認識されるたびに、プロセスを前記アプリケーションに戻し、関連付けられたアクションを行う。
【００９８】
前記メニューは、ユーザに永続的に表示されてよく、また図形要素、メニュー項目、他を介して、例えば図２内の要素２４５を介して表示（オープン）されてもよく、前記メニューは対応する刺激を有することもあるということに留意されたい。また、メニューは、少なくとも１つの刺激、特にターゲット刺激が識別された後にユーザに表示されてよい（さらなる詳細に関しては下記参照）。これは、例えば、ターゲット刺激に対応するエリアが識別された後に実行されなければならないコマンドを再特定するために行われることがある。前記メニューは、複数のエリアに分割（区分）されることもあり、複数のエリアのそれぞれは、少なくとも１つの刺激を割り当てられることがあるということに留意されたい。特定のケースにおいて、メニューが区分されているとき、各メニュー項目は、この個別のサブエリアの中に配置されてよい。
【００９９】
上述のように、ユーザに表示される情報の前記分割／区分は、複数のエリアを複数のサブエリアに分割／区分するための少なくとも１つのアルゴリズムを通じて行われてよい。いくつかの例示的実施形態において、ユーザに表示される情報は、コンピューティング／電子デバイスのＧＵＩである。このようなソフトウェアおよび／またはハードウェアのアルゴリズムは、（複数のセットを複数のサブセットに区分するための従来のアルゴリズム（例えば、非特許文献３を参照）、または画像を複数の部分に区分するための従来のアルゴリズム（非特許文献４）、または複数のエリアを複数の構成部品に分割する従来のアルゴリズム、他を含めた、）数式、アルゴリズム、関数、方法、技法、他を用いることができ、説明されたような、分割されることになるこのようなサブエリアを生成する処理を含む。
【０１００】
また、分割アルゴリズムは、コンピューティングデバイス１３０（例えば、この計算能力）、ディスプレイモジュール１４０（例えば、この画面解像度、サイズ、他）、記録モジュール１５０（例えば、このセンサの数、データ記録速度、他）、データ処理モジュール１２０（例えば、このデータ処理速度）、通信モジュール１７０（例えば、このデータ送信速度）、ならびに／またはユーザの生理学的パラメータおよび特徴１１０（例えば、ユーザの年齢、反射速度、脳の活動レベル、疾患、異常性、他）、等などの、本システムのモジュールの特性／パラメータを使用することができる。分割アルゴリズムは、光レベル、ユーザと画面との距離、他などの環境パラメータを用いてもよい。
【０１０１】
例えば、アルゴリズムは、例えば、ソフトウェア、ドライバ、オペレーティングシステム、他を用いて、計算モジュール１３０および／またはディスプレイモジュール１４０から、例えば単位面積／長さあたりのドットで、コンピューティングデバイス画面１３０および／またはディスプレイモジュール１４０画面の解像度に関する画像のパラメータを受け取ることができ、これには、前記モジュールおよび構成要素からのクエリおよびフィードバックが含まれる。次に、分割アルゴリズムは、例えば、ディスプレイモジュール１４０内の水平、垂直両方のドット数といった取得された値を使用して、エリア（特に、ＧＵＩエリアまたはこの一部）が分割され得るサブエリアの数を決定することができる。ＧＵＩ／メニュー／他のエリアが分割されるサブエリアの数は、変数または定数値、特に、例えば、特にメニュー、コマンドライン、他といったＧＵＩを含めたインターフェースを用いてデータを入力することを通じて、本システムの少なくとも１つのモジュールおよび／またはユーザによって決定／設定される変数または定数値を使用して計算されてよい。具体的には、ユーザは、患者、オペレータ、専門家、医者、研究者、他であることがある。例えば、分割によって生じ得る少なくとも１つのサブエリアの高さおよび幅が決定されることがある。また、ＧＵＩエリアが分割され得る（または分割される）サブエリアの数が決定されることがある。
【０１０２】
分割は、ディスプレイモジュール１４０および／またはコンピューティングデバイス１３０、他の手段およびツールを用いて、例えば、グリッド、線、セル、ゾーン、他として表示／描画されてよく、このような手段は、アプリケーション、ドライバ、グラフィックカードに対する命令、オペレーティングシステム、プロセッサ、マイクロプロセッサ、コントローラ、他などのモジュール・ソフトウェアおよび／またはハードウェアを含んでよいということに留意されたい。
【０１０３】
少なくとも１つの分割パラメータは、例えば、特に、本発明の方法を実装することができるアプリケーションのインターフェースを通じて、ユーザによって設定されてよいということにも留意されたい。
【０１０４】
したがって、特にエリア（Ｏ）といった画面上に表示される情報は、コマンドを実行するために利用できる可能性のあるエリアをカバーする（サブエリアとしても知られる）さらに小さいエリアＯ１〜ＯＮに分割されてよい。特に、サブエリアＯ１〜ＯＮは、エリアＯ全体、またはコマンドがいくつかの部分の中でしか実行される可能性がない場合、このいくつかの部分だけをカバーすることができる。サブエリアの数Ｎは、例えば、一斉に認識される可能性があるターゲット刺激の最大数といった、選ばれたＢＣＩによって制限されてよい。１つの例示的な事例では、複数のサブエリアへの複数のＧＵＩエリアの説明された分割は、ターゲット刺激が識別された後、正確にどのサブエリアとユーザが対話し続けるかをユーザに説明するために使用されてよい。刺激は、様々な方法、手段、メカニズム、モジュール、システム、他によって識別されることがあり、実際の識別方法は、使用中のＢＣＩによって異なることがあるということに留意されたい。例えばＣＶＥＰでは、刺激は、記録された信号をデータベースに格納された信号と比較することによって識別されることがある。これらの信号は、特に同じユーザに関して、または異なるユーザに関して以前に記録された信号を含むことがあるということに留意されたい。１つの例示的な事例では、信号は、これらの相関性を計算し、特にさらに高い相関性を有する信号といったさらに類似する信号を選ぶことによって比較されることがある。分割は、結果として生じるサブエリアをさらに拡大縮小するのに必要とされる。本発明の例示的実施形態において、拡大縮小は、ＢＣＩの制限を考慮して、刺激が使用され得るように十分大きく分割した後、刺激を表示するのに必要とされる。このような制限は、刺激の面積（特に最小面積）、刺激の大きさ（３Ｄ刺激に対する）、点滅速度、明るさ、角直径、他を含むことがある。
【０１０５】
多くのＢＣＩは、動作させるために、ユーザが画面上で見るフレームと生物学的データ読取りデバイス（例えば、モジュール１２０および１５０の例であるＥＥＧリーダ）から受け取られるデータとの間に高レベルの同期を要求するということに留意されたい。例えば、ＣＶＥＰが正確に動作するために、ＣＶＥＰは、８ミリ秒未満の同期の精度を要求することがある。これを実現するために、開示のシステムは、現在の画面状態を読み取り、この情報をコンピューティングデバイスに送るセンサを含んでよい。具体的には、これは、画面およびこの各部の明るさのレベルを測定する測光センサであってよい。１つの例示的な事例では、センサは、特定のルールに従って画面エリアの明るさを変化させる特殊な画面エリア上に設置されることがある。特に、このルールを刺激表示ルールと同期させることによって、同期の問題を解決することできる。
【０１０６】
本発明の一例示的実施形態において、エリアＯのサブエリアを含めてエリアＯを完全に分割することができるが、コマンドが実行されることは全くない。また、ＣＶＥＰ、ＳＳＶＥＰもしくはＰ３００のいくつかの実施形態、または、ＢＣＩの代わりに、もしくはＢＣＩと共に使用されることがある他のシステム、手段、インターフェース、他などの、テーブルベースの刺激環境を動作させるＢＣＩを使用することできる。例えば、このようなＢＣＩは、一斉に提示されるより多くの刺激、ならびにさらに高い速度および精度のおかげで、本発明の速度と精度をさらに改善することができる。
【０１０７】
また、前記分割を実行および／または描画するために、線、幾何学的な形状、画像（ベクトルとラスタの両方）、３Ｄモデル、平面、ゾーン、他を作図するための様々なアルゴリズムが使用されることがある。例えば、ベジェ曲線は、細分割によって生じるサブエリア７６７А〜７６７Ｚを作成および／または描画（表示）するために使用されることがある。１つの例示的な事例では、最初に少なくとも１つのＧＵＩエリア（特にＧＵＩ全体）が細分割され、これは例えば図７に示される。
【０１０８】
説明された細分割は、コンピューティングデバイス画面上に配置される（特に表示される）ＧＵＩ要素、メニュー、ペイン、他を含めた、図形要素を考慮してよいということにも留意されたい。細分割するために、少なくとも１つの要素の場所は、例えば、コンピューティング（電子）デバイスのオペレーティングシステムのサービスから取得されてよい。このような場所を取得する方法は、例えば、前記要素の座標を取得することを含んでよい。前記場所は、分割のために、特に分割グリッドを生成するために使用されてよい。前記要素は、アイコン、ボタン、アプリケーションの要素、アプリケーションウィンドウ、メニュー、パネル、他を含むことがあるということにも留意されたい。説明されたメニュー、パネル、図形要素、他の場所（ならびに境界、座標、画面位置、他）は、前記手段または他の方法によって決定されてよく、（グラフィック）要素の場所と他のパラメータの両方が、細分割のために使用されてよいということにも留意されたい。また、特にＷｉｎｄｏｗｓ  ＡＰＩ、他といった、オペレーティングシステムのＡＰＩなどの、様々なＡＰＩ（アプリケーション・プログラミング・インターフェース（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ））が使用されてよい。具体的には、Ｍｉｃｒｏｓｏｆｔ  ＵＩ  Ａｕｔｏｍａｔｉｏｎが、上記を行うために使用される可能性がある。したがって、特に分割はこのように行われてよく、この結果、少なくとも１つの結果として生じるサブエリアは、このサブエリアを超えて広がらない少なくとも１つのＧＵＩ要素またはメニューを含む。説明された要素の境界および場所は、例えばアプリケーションウィンドウの中、デスクトップ上、メニュー、パネル、他の中といった、特に画面上に要素を配置することができる、アプリケーション、機能拡張、他を含めた他の方法によって決定されてもよい。
【０１０９】
上述のように、ＧＵＩエリアの細分割によって生じる少なくとも１つのサブエリアは、ユーザに提示され得る、特にユーザに表示（描画）され得る少なくとも１つの刺激を割り当てられてよい。このような刺激は、このようなサブエリアのうちの少なくとも１つの上に（内側に）または近くに表示されてよい。同時に、前記刺激（特に１つまたは複数の刺激）は、いくつかのエリアまたは少なくともこの一部を細分割することによって生じるサブエリア全体を占有してよい。
【０１１０】
１つの例示的な事例では、刺激は、ＧＵＩを含む画面の任意のエリアに、ならびに別の画面／デバイス上に表示されてよい。１つの例示的な事例では、このようなデバイスは、メイン画面エリアの最上位に刺激を表示するために使用される、メイン画面の最上位に位置する追加の透過スクリーンであってよい。
【０１１１】
本開示で説明された刺激は、別々のレイヤ上に表示されてよい。刺激は、少なくとも１つのＧＵＩ要素の最上位で、要素の背後で、ユーザに表示されてよく、またこの要素の一部であってもよいということに留意されたい。
【０１１２】
１つの例示的な事例では、本システムとＢＣＩの間の対話は、以下のように見えてよい。
【０１１３】
−  現在アクティブなエリアは、さらに小さいサイズ（サブエリア）のｋ個のエリアに分割される。
【０１１４】
−  結果として生じるサブエリアは、一意の識別子（ｉｄ＿ｉ）を割り当てられる。
【０１１５】
−  結果として生じるサブエリアの内側に配置され得る、刺激（ｃｏｏｒｄ＿ｉ）に対する全画面座標が計算される。
【０１１６】
−  「座標ｃｏｏｒｄ＿１、ｃｏｏｒｄ＿２、〜ｃｏｏｒｄ＿ｋに、ｉｄ＿１、ｉｄ＿２、〜ｉｄ＿ｋに対応する刺激を表示するために、およびユーザがフォーカスしている刺激を認識するために」少なくとも１つのクエリがＢＣＩに送られる。
【０１１７】
−  本ＢＣＩシステムは、所与のｉｄ＿ｉに対して表示（描画、提示、他）されるべき刺激を選択する。
【０１１８】
−  選択された刺激は、所与の座標に表示される。
【０１１９】
−  ターゲット刺激は、本システム、特にＢＣＩを用いて認識される。
【０１２０】
−  （ＢＣＩを用いる）本システムは、ターゲット刺激に対応するｉｄ＿ｉを計算／決定する。
【０１２１】
−  ｉｄ＿ｉに対応するサブエリアがユーザの意図を判断するのに十分でない場合、処理は第１のステップに戻るが、ｉｄ＿ｉに対応するサブエリアは、現在アクティブなエリアになる。
【０１２２】
−  そうでなければ、コマンドは、ｉｄ＿ｉに対応するサブエリア内で実行される。
【０１２３】
上記の説明は、本方法の１つの可能な実装形態を説明しているということに留意されたい。本発明の一例示的実施形態において、開示のシステムおよび方法（または少なくともこの一部）は、統合システムを作り出すために、ＢＣＩだけでなく他のインターフェースとも結合されてよく、１つの例示的な事例では、この統合システムは、他のすべてのアプリケーションウィンドウの最上位に配置される別のアプリケーションの使用を回避することができる（下記参照）。
【０１２４】
本開示において、ＢＣＩは、説明されたように認識することができ、エリアの細分割およびサブエリアの表示は、コンピューティングデバイス１３０などの、本システムの少なくとも１つの他のモジュールによって行われてよいということにも留意されたい。
【０１２５】
刺激の提示は、透明度の属性、特に刺激透明度で最適化されてよく、例えば、刺激が刺激の状態のうちの１つを採用するとき、透明度は部分的または完全であってよい。１つの例示的な事例では、このアプローチは、ユーザがＧＵＩのコンテキストを見失わないようにさせる。刺激は、常に透明または透過／半透明であってよい（例示的な刺激１３５０Ｆは、本発明の一例示的実施形態による刺激の提示の例示的な方法を示す図１３に示される）。透明度は、時間および刺激の状態に依存することもある。透明度の値は、透明度ゼロ（不透明）から完全に透明までの範囲であってよい。例えば、例えば黒い状態と白い状態の間（具体的には色）で切換えている刺激が提示されると、白い状態は不透明になることがある。同時に、この黒い状態は、例えば透明度６０％〜９０％といった高い透明度を有することがあり、ここで１００％は完全に透明である。
【０１２６】
本発明の例示的実施形態において、網膜を刺激する光（例えば、コンピューティングデバイスの画面によって、特に刺激によって発せられる光）の強さは、ＢＣＩに関する重要な特性である。例示的な事例において、例えば、（点滅の例である）黒から白、灰色から白、明るい灰色から黒、黒から灰色、黄色から緑、赤から白、他に切換えるとき、刺激エリアおよびこの明るさの振幅は、ＢＣＩに関する重要な特性である。
【０１２７】
刺激がユーザに提示された後、ターゲット刺激Ｓｊは、特に、ＢＣＩなどの入力デバイス／モジュール、および／または記録デバイス／モジュールを用いて識別される。ここで説明された方法は、記録モジュール１５０などの（データ）入力デバイス／モジュール、およびコンピューティングデバイス／モジュール１３０、表示モジュール１４０、データ処理モジュール１２０、他を含めた、インターフェースまたはシステムモジュールとユーザが対話するための他の方法と共に使用されてよく、この方法はＢＣＩに限定されないということに留意されたい。例えば、ターゲット刺激Ｓｊを識別するために、（マイクロフォンによって記録される）ボイスコマンドが使用されてよく、マウス、眼球追跡器、またはユーザの意図を認識し、少なくとも１つのコマンドを選択することができる他の任意のシステム、方法、もしくはデバイスも使用されてよい。
【０１２８】
ユーザに提示される刺激は、幾何学的な任意の形状のものであってよく、または分割グリッドと同じ形状のものであってもよく、および／または異なる形状のものであってもよく、および／またはいくつかのサブエリア上に配置されてよく、および／または少なくとも１つのサブエリアの少なくとも一部上に配置されてもよい、他ということに留意されたい。例えば、上述のように、刺激は、図１３に示されるように、サブエリア全体をカバーしてよく、この中で、例示的な刺激１３３０Ａ、１３３０Ｂ、１３３０Ｆは、対応するサブエリア２３０Ａ、２３０Ｂ、２３０Ｆに対する刺激であるが、例示的な刺激１３５０Ａ、１３５０Ｂ、１３５０Ｅ、１３５０Ｆは、サブエリア６５０Ａ、６５０Ｂ、６５０Ｅ、６５０Ｆ、他に対応する。この場合、刺激の破線は、どのようにこれらの刺激が設置されるかをより良く示すために使用され、これらの境界は、前記刺激を実際に表し、かつ表さない。上述のように、刺激は、異なる外観、色、形状、透明度、他を有してよく、またこれらのパラメータは、時と共に変化してよい。例えば、ＣＶＥＰ法において、各刺激の点滅ルールは、０、１の並びによって定義され、ここで「１」は、刺激が、次のおよそ０．１秒間、黒くなることを意味し、「０」は、刺激が次の期間内で白くなることを意味する。
【０１２９】
刺激は、様々な形状の様々な画像、例えば、色、点滅頻度、形状、画面上の位置、他といった変化する状態を有する可能性がある画像であってもよい。刺激は、このようないくつかの画像の組合せであってもよい。
【０１３０】
本発明の一実施形態によれば、ターゲット刺激が識別された後（識別中に）コマンドを実行することもできる。コマンドは、本システムの任意のモジュール、ＧＵＩ、オペレーティングシステム、入力デバイス、ＢＣＩ、他への命令であってよい。このようなコマンドは、マウスクリック、マウスボタンのホールド、カーソル移動、マウスドラッグ、マウスホイール・クリック、アプリケーションを開始すること／閉じること／最小化すること、（グラフィック）ボタンを押すこと、アプリケーションウィンドウもしくはアイコンの移動、コンピュータのシャットダウン、アプリケーションとユーザによって実行される他のアクションとの間の切換え、本システムのモジュール、コンピューティングデバイス、アプリケーション、構成要素、本システムのモジュール上／内にインストールされた要素、またはアドオンモジュール／デバイス、他を含んでよい。
【０１３１】
コマンドは複雑であってもよく、動作させるために、１つまたはいくつかの刺激が（順次）識別されることを要求する、いくつかのコマンドを組み合わせてよい。ドラッグアンドドロップは、このようなコマンドの例であり、具体的には、マウスボタンを押し、次にボタンをホールドした状態でマウスを動かし、次にボタンを解放することを伴う。このコマンドを実行するために、マウスボタンのホールドおよび解放を別々に識別することが要求されることがある。
【０１３２】
上述のコマンドは、本発明の少なくとも一部を実現することができ、例えば、拡大縮小を実行するようにシステムに命令することができるということに留意されたい（下記参照）。
【０１３３】
１つの例示的な事例では、ユーザは、コマンドの所定のセットから選択すること、および／または例えば、特にサイドバーメニューといったメニューを用いてユーザ自身の命令を作成することを提案されることがある。例えば、このようなメニューは、対応する刺激が識別されているときに実行される説明されたコマンドを選択および／またはセットアップするための要素を含んでよい。メニューは命令のリストを含んでよく、この中で、例えば、少なくとも１つの入力デバイス、ＢＣＩ、インターフェース、他によって提供される機能を使用するための命令といった、ユーザまたは本システムのモジュールのうちの少なくとも１つによって実行され得る命令が、ユーザまたは本システムのモジュールによって決定される。
【０１３４】
図３は、本発明の一例示的実施形態における、対応するサブエリア２３０Ｇに対して識別されたターゲット刺激３２０を伴う例示的なＧＵＩを示す。
【０１３５】
１つの例示的な事例では、識別された刺激に対応するサブエリアが、ユーザの意図を正確に決定するのに十分である場合、対応するコマンドは、このサブエリア内で実行されている。このコマンドは、例えば、コンピューティングデバイスまたはアプリケーションによって実行されてよい。現在のサブエリアが十分であるかどうかを判断するために、以下を含むがこれらに限定されない、以下の方法のうちの１つが使用されてよい。
【０１３６】
−  このようなサブエリアの（最小）サイズは、例えば、方法の具体的な実施形態において、または具体的なＧＵＩに対して、ユーザ、アプリケーション、システムモジュール、他によって（初めに）決定されてよい。例えば、コマンドを通じて対話され得るすべてのＧＵＩ要素が、２ｃｍより大きい場合、ＧＵＩを１ｃｍのサブエリア（特に、セル、ブロック、他）に細分割することが、十分考えられる可能性がある。また、システム、例えば、システムの少なくとも１つのモジュールは、現在のサブエリアが、例えば２ｍｍといった特定の／所定のサイズのものになるまで拡大縮小させるために、アプリケーションおよび／またはユーザによって命令されることがある。
【０１３７】
−  追加ステップも追加されてよく、ユーザは、現在のサブエリアＯｊが十分であることを確認する必要がある。例えば、このような追加ステップは、メニュー、またはメニューの少なくとも１つの要素を介して実装されてよい。このようなメニューは、ポップアップまたは固定されていてよく、この結果ユーザは、いつでもメニューと対話することができる。メニューは、画面の特別に指定された部分に表示されてよい。メニューはＢＣＩの機能を使用でき、すなわちユーザは、別のサブエリアを選ぶ代わりに、または別のサブエリアを選びながら、（具体的には、フォーカスすることによって）少なくとも１つのメニューボタンと対話することができる。メニューボタンは、「停止」（または「十分」）、「はい」、「いいえ」、「もっと見る」（”Ｍｏｒｅ”）、「拡大縮小」、「キャンセル」、「戻る」、「ズームイン」、「ズームアウト」、「マウスクリック」、「マウスボタンのホールド」、「マウスボタンの解放」、「マウスボタンの押下およびホールド」、「ウィンドウを動かす」、「マウスを動かす」、「ウィンドウを最小化する」、「システムに任せる」、「閉じる」、「専門家を呼ぶ」、「電話をかける」、「オープンおよび追加メニュー」、「（ＧＵＩ）エリアを再分割する」、「分割グリッド間隔を変更する」、「刺激の色を変更する」、「刺激の点滅速度を変更する」、「刺激を小さくする」、「刺激のサイズを変更する」、「分割パラメータを変更する」、他などの、様々な機能を有することができる。ボタンは、例えば、アプリケーション、フィルタ、サービス、他が、本発明を実行する間、このようなメニューの中に設置されてよい。
【０１３８】
−  任意のポイントＯで実行されるコマンドは、ＧＵＩ内に同じ結果を生じる。
【０１３９】
−  １ピクセルのサイズのＧＵＩを有するサブエリアは、コマンドを実行するのに十分であるとみなされる。
【０１４０】
１つの例示的な事例では、充分なエリアが決定された後、以前に設定されたコマンドは変更されてよいということに留意されたい。１つの例示的な事例では、新しいコマンドは、現在のエリアに応じて選択される。
【０１４１】
刺激に対応するサブエリアが、ユーザの意図を判断するのに十分ではない場合、サブエリアは拡大縮小され（特に、大きくされ）、既に本開示で説明されたような刺激を割り当てられるサブエリアにさらに細分割される。この拡大縮小の後、ユーザは、新たに定義されたサブエリアと対話することができる。同時に、拡大縮小されたサブエリアが表示される前に、以前に表示された刺激は隠されてよい。したがって、本方法の一例示的実施形態は、刺激を隠すこと、現在のサブエリアを拡大縮小すること、現在のサブエリアを新しい複数のサブエリアに分割すること、刺激を各サブエリアに割り当てること、およびこれらの刺激を表示することを含む。
【０１４２】
１つの例示的な事例では、拡大縮小は、図示のように、例えば、図面、図２→図３→図４の順に、現在アクティブなエリアがユーザの意図を正確に決定するのに十分になるまで行われてよい。
【０１４３】
図４は、本発明の例示的実施形態における、メニューおよび底部パネルが隠されている、拡大縮小後のサブエリア２３０Ｇを表示する例を示す。ユーザに表示され、例えば、メニュー２４０、パネル（例えば、底部パネル２８４）、ＧＵＩのメニュー（図６内の６４０）、アプリケーションウィンドウ２６０に関連する少なくとも１つの要素は、（図４に示されるように）隠され、および／またはサブエリアが拡大縮小された後（図６内の２８４、２４０）変わらず表示され、および／または前記サブエリア（図４内の２５０Ｉ、２５０Ｋ、２５０Ｊ、２６０、図５内の２５０Ｉ、２５０Ｊ、図６内の２６０）と共に拡大縮小されることがあるということに留意されたい。１つの例示的な事例では、ユーザに表示される要素は、サブエリアが拡大縮小された後に他のＧＵＩ要素に重なることがある（図６内の２８４、２４０）。
【０１４４】
図５は、本発明の一例示的実施形態における、サブエリア４４６（図４参照）を拡大縮小する別の例を示す。
【０１４５】
図６は、本発明の一例示的実施形態における、分割された例示的なＧＵＩエリアを示し、メニュー、特にサイドパネルメニューも分割されていることを示す。
【０１４６】
説明された拡大縮小は、識別された刺激に対応するサブエリアに対してだけでなく、少なくとも１つの他のサブエリアまたはこの一部に対しても行われてよいことに留意されたい。例えば、サブエリア２３０Ｇ（図２）が識別された刺激に対応する場合、サブエリア２３０Ｇは、例えば、２３０Ａおよび／もしくは２３０Ｂ、ならびに／または２３０Ｓおよび／もしくは２３０Ｈ、ならびに／または２３０Ｍなどの隣接または近くのサブエリアといった、少なくとも１つの他のサブエリアと共に拡大縮小されてよい。１つの例示的な事例では、いくつかのエリアを一度にまとめて拡大縮小することは、単一エリアを拡大縮小するように行われてよいということに留意されたい。例えば、まとめられたサブエリア２３０Ｇ、ならびに２３０Ａ、および／または２３０Ｂ、および／または２３０Ｓ、および／または２３０Ｈ、および／または２３０Ｍ、および／または２３０Ｌ、および／または２３０Ｆのグループ／セットは、これらすべてのサブエリアに跨る１つのＧＵＩエリアとして拡大縮小されてよい。
【０１４７】
１つの例示的な事例では、隣のサブエリアと共に、ターゲット刺激に対応するサブエリアをまとめて拡大縮小することは、ユーザにさらなる恩恵をもたらし、この恩恵は、いくつかのサブエリアの境界の上もしくはこれに跨って、または前記境界のすぐ近くに配置される図形要素を選択する能力を含む。
【０１４８】
例えば曲線の分割（図７参照）といった非長方形の分割後、１つのサブエリアは、このサブエリアの隣のエリアと共に拡大縮小されてよいということにも留意されたい。図８は、本発明の一例示的実施形態による、サブエリア７６７Ｇが識別された後に表示される例示的なサブエリア境界による非長方形の分割の例を示す。拡大縮小されたサブエリア７６７Ｇの表示の例が図９に示される。このように拡大縮小されるサブエリアは、本明細書で開示されたように、特に長方形のグリッド、または曲線のグリッド、他に沿ってさらに分割されることもある。
【０１４９】
図９は、本発明の例示的実施形態における、拡大縮小されたサブエリア７６７Ｇおよび隣接するサブエリアの表示の例を示す。
【０１５０】
本明細書で開示された分割は不規則であってよく、すなわちサブエリアの全体エリアは異なってよく、ならびにサブエリアの幾何学的な形状も異なってよいということにも留意されたい。したがって、分割グリッド（例えば、２８５、７４２、他）は、不規則であってもよい。例えば、分割グリッドの水平線の間の間隔は異なってよく、ならびに分割グリッドの垂直の間隔、または他の線の間隔も異なってよい。
【０１５１】
前記分割のパラメータは、例えば、拡大縮小中に、（ユーザによって、または本システムのモジュールによって）変更されてよいということに留意されたい。例えば、分割パラメータは、サブエリアの数、サブエリアのサイズおよび面積、分割グリッド間隔、分割線の形状、分割アルゴリズム（方法）、他を含んでよい。１つの例示的な事例では、前記パラメータは、以前に拡大縮小した際に使用されたパラメータとは異なってよい。本発明のシステムのユーザまたは少なくとも１つのモジュールは、分割パラメータ「オンザフライ（ｏｎ  ｔｈｅ  ｆｌｙ）」を、すなわちサブエリアが拡大縮小される直前に、またはこの直後に変更してよいということに留意されたい。このように分割パラメータ（および、したがって分割自体）が、事前の分割後に変更されてよい。１つの例示的な事例では、分割パラメータは、さらに正確な場所に刺激を設置するため、およびＧＵＩ要素とのユーザの対話を改善するために変更されてよい。
【０１５２】
拡大縮小は、様々な方法で、および様々な手段によって行われることがあるということに留意されたい。本発明の一例示的実施形態において、拡大縮小は、表示モジュール（特にモニタ画面）の画像またはこの一部を保存し、次に、拡大縮小されたサブエリアとしてこの画像を表示することによって行われることがある。例えば、少なくとも１つのＧＵＩエリアの画像は、画面全体のスクリーンショットまたは少なくともこの一部を用いて保存されることがある。そうでなければ、拡大縮小は、特に表示モジュール１４０において、表示される画像の一部を拡大縮小することを可能にする「画面拡大鏡」ソフトウェアで行われることがある。
【０１５３】
説明された拡大縮小は、画像の処理、および／または編集、および／または（品質）向上の手段、ならびに画像を歪ませることなく画像を拡大縮小することを可能にする、グラフィックカード、ドライバ、様々な従来のアルゴリズム、他を含めたフィルタ、機能、方法を伴ってもよいということにも留意されたい。上述の手段は、画面への映り込み抑制、ノイズ除去、中間値フィルタ（ｍｅｄｉａｌ  ｆｉｌｔｅｒ）、中心点フィルタ（ｍｉｄｐｏｉｎｔ  ｆｉｌｔｅｒ）、順序付けフィルタ（ｏｒｄｅｒｉｎｇ  ｆｉｌｔｅｒ）、適応フィルタ、ロバーツ・フィルタ（Ｒｏｂｅｒｔｓ  ｆｉｌｔｅｒ）、プレヴィット・フィルタ（Ｐｒｅｗｉｔｔ  ｆｉｌｔｅｒ）、他のアルゴリズムを含んでよい。
【０１５４】
図１１は、本発明の例示的な方法を示す。図１１に示されたステップは、本明細書で開示されたように、システムのモジュールのうちの少なくとも１つによって実行されてよいということに留意されたい。ステップ１１２０において、エリアは、本開示で説明されたように、サブエリアに細分割される。次にステップ１１３０において、刺激が提示され、次にステップ１１４０において、ユーザが刺激と対話することが期待される。次に、ステップ１１５０において、ターゲット刺激が識別される。次に、ステップ１１６０において、ターゲット刺激に対応するサブエリアが取得される。次に任意選択で、ステップ１１６５において、このサブエリアは、所与のサブエリア内でコマンドを実行することができるかどうかをチェックされ、はいの場合、ステップ１１７０において、このサブエリアは、所与のサブエリアが（ユーザの）意図を正確に判断するのに十分であるかどうかをチェックされる。ステップ１１６５において、コマンドが実行されることはないということがわかった場合、アルゴリズムはステップ１１６８を実行し、この中でシステムは、例えば、以前の画面、以前のＧＵＩの状態、以前のサブエリア、他といったシステムの以前の状態に戻され、次に、ステップ１１２０が再び実行される。本発明の一例示的実施形態において、例えば、本明細書に説明されたように、コマンドを実行するために利用できる可能性のあるエリアが使用中でないときに、任意選択のステップ１１６５および１１６８が行われる。
【０１５５】
ステップ１１７０において、サブエリアがユーザの意図を正確に判断するのに十分であることがわかった場合、ステップ１１８０において、コマンドが実行され、この後ステップ１１９０において、画面は画面の基本状態（初期画面）に戻され、アルゴリズムはステップ１１２０に戻る。ステップ１１７０において、サブエリアがユーザの意図を正確に判断するのに十分ではないことがわかった場合、ステップ１１７５において、前記サブエリアは、拡大縮小され、さらに表示され、アルゴリズムはステップ１１２０に戻る。
【０１５６】
１つの例示的な事例では、システムの利便性を高めるために、本方法の各ステップの間、または本方法の各繰返しの間、またはシステムの任意の各動作の間に、いくつかの小休止が起こることがある。これらの休止は、動的に変化するＧＵＩを通じてユーザが上手にナビゲートするのに役立つことがあり、ならびにユーザが熟慮し、ユーザのアクションを計画するための時間を増やすことがある。
【０１５７】
上述のように、本発明の例示的実施形態のうちの１つは、ユーザのＰＣ（コンピューティング／電子デバイス）を制御する少なくとも１つのアプリケーション（またはこの一部、アプリケーションのプログラムモジュール、プログラムコード、サービス、ドライバ、他）である。例示的なインターフェースは、特にオペレーティングシステムのＧＵＩといった、ＧＵＩ（グラフィカル・ユーザ・インタフェース）である。例えば、前記アプリケーションは、例えば、ＧＵＩ要素を含めた、（最上位レイヤ上の）上記の少なくとも１つのアプリケーションウィンドウまたはすべてのアプリケーションウィンドウといったＰＣ上で動いてよい。また、本発明の例示的実施形態のうちの１つにおいて、このようなアプリケーションは、オペレーティングシステム、デスクトップシェル、ＧＵＩを含めたインターフェースに埋め込まれてよく、また少なくとも１つのアプリケーション、オペレーティングシステム、デスクトップシェル、インターフェース、他に（ソフトウェア手段によって）埋め込まれることがあるフィルタであってもよく、このようなフィルタおよび／またはアプリケーションは、例えば、オペレーティングシステム、ＧＵＩ、ドライバ、サービス、他の命令および／またはコマンドを含めた、命令および／またはコマンドといったデータをインターセプトすることがある。
【０１５８】
１つの例示的な事例では、ユーザは、いくつかのＧＵＩ要素上で左マウスクリック（コマンド）を行うタスクを解決する。
【０１５９】
ＢＣＩ刺激システムは、ＣＶＥＰのような、テーブルベースの刺激環境（例えば、８ｘ４の刺激テーブル）を実装されてよく、これは、いくつかの実施形態において、このセットからの刺激を認識するのに約１〜２秒を要する。特に、１つの例示的な事例では、ＧＵＩ全体、または例えばメニューエリアを除く少なくともＧＵＩの一部に等しい初期エリアＯにおける左マウスクリックといったコマンドを実行するために、前記エリアＯは、サブエリアＯ１〜Ｏ３２に細分割され、ここで３２は、８ｘ４テーブルにおける要素の数である。１つの例示的な事例では、これらのサブエリアは、８ｘ４テーブルも形成する。
【０１６０】
本発明の一例示的実施形態において、拡大縮小は、特に、システムが正確に動作するのに十分なほどサブエリアが大きい場合にスキップされてよい。次に、１つの例示的な事例では、刺激は（部分的な）透明度で提示される。次に、ターゲット刺激が識別され、（以下にエリアＡと呼ばれる）対応するサブエリアＯ１〜Ｏ３２が取得される。取得されたサブエリアＡが、ユーザの意図を判断するのに十分ではない場合、例えば、取得されたサブエリアＡが、アイコン／ショートカットなどの、いくつかの異なる制御要素を含む場合、このサブエリアは、所与のコマンド、特に初めに選択されたコマンドを実行するために、全画面を満たすまで拡大縮小されてよい。次に、１つの例示的な事例では、エリアＡは、刺激が提示されるサブエリアＡ１〜Ａ３２に分割され、刺激は（部分的に）透明になる。次に、ターゲット刺激が識別され、対応するサブエリアが、Ａ１〜Ａ３２から取得される（本明細書では後にエリアＢと呼ばれる）。取得されたサブエリアＢが、ユーザの意図を判断するのに十分である場合、さらに拡大縮小されることはなく、刺激はもはや提示されないが、コマンドは、このサブエリア内で実行される可能性がある。したがって、アプリケーションは、サブエリアＢ内、特にこの中心で、必要なアクション（この場合、左マウスクリック）を実行する。
【０１６１】
本発明の一例示的実施形態において、ＣＶＥＰ刺激環境の精度および性能特性が考慮されるとき、具体的には、同等物と比較してＧＵＩ制御の速度および精度の向上といったさらなる特徴が現れることがある。仮に、エリアの高さが画面の高さの１０％以下であり、エリアの幅が画面の幅の１０％以下である場合、エリアが十分であるとしよう。この場合、必要なエリアを見つけるのに要する全体時間は、上述の２つのステップ（各ステップは、いくつかのエリアを拡大縮小すること、および／またはエリアを分割すること、および／または刺激を提示すること、および／またはターゲット刺激を識別することを含んでよい）を実行するのに要する時間、すなわち約３秒に等しい。１つのターゲット刺激は、９８％の信頼性のＣＶＥＰ法を使用して識別される可能性がある。したがって、連続して２つのターゲット刺激を入力する信頼性は、およそ９６％である。
【０１６２】
同様に、例えば垂直および水平にＧＵＩの２％を占有するサブエリア内でコマンドを実行するために、上述の３ステップ、すなわちほぼ４〜５秒を要することがある。連続して３つのターゲット刺激を入力する信頼性は、およそ９４％である。
【０１６３】
ＢＣＩ性能速度（ビットレート）は、ビット／秒で測定されることがあり、ここでＸビット／秒は、システムが、Ｎ秒間に最大で２＾（Ｘ×Ｎ）個のオプションの中から選ぶことができることを意味するということに留意されたい。ＣＶＥＰの場合、ビットレートは、高信頼性で、ｌｏｇ２（３２）＝５ビット／秒に達することがある。ＳＳＶＥＰの場合、ビットレートは、ｌｏｇ２（４０）≒５．３ビット／秒に達することがある。ＳＳＶＥＰは、ＣＶＥＰとほぼ同じ信頼性を有するということに留意されたい。
【０１６４】
本発明の実施形態のうちの１つは、ＰＣのＧＵＩを制御するためのシステムである。このようなシステムは、刺激を表示し、認識するためのモジュール、つまり中心モジュール、および、例えば以下に説明されるＡＰＩを介してこのモジュールと通信するアプリケーション、を備えることができる。例えば、このようなアプリケーションは、仮想マウスおよび仮想キーボードを含むことができる。１つの例示的な事例では、中心モジュールは、上述のメニューに類似のメニュー、特にサイドバーメニューを備えることができる。１つの例示的な事例では、中心モジュールは、上述のように動作する認識システム（特にＢＣＩ）を備えることができる。
【０１６５】
一例示的実施形態において、中心モジュールは、例えば、サードパーティのシステムおよびアプリケーションにＡＰＩを提供することによって、サードパーティのシステムおよびアプリケーションと対話するための方法を提供することができる。１つの例示的な事例では、中心モジュールは、サードパーティのアプリケーションに以下の機能を提供することができる。「ユーザによって現在対話されている可能性があるサードパーティのアプリケーションから受け取られたエリアのセットを記録すること」、「記録されたどのエリアとユーザが対話したいと思うかを知ること」、「所与のエリアと対話するというユーザの意図の中に中心モジュールがあるということがどの程度確実であるかを知ること」、他。
【０１６６】
中心モジュールを実装するために、他のウィンドウを仮想的に覆い（最上位のレイヤ上に配置され）、マウスイベントに対して透過的な、透明な背景（レイヤ）を有する全画面アプリケーションを作成する能力。これらの機能は、ＷｉｎＡＰＩまたはサードパーティのライブラリを使用して提供されることがある。例えば、Ｑｔ５フレームワークにおいて、これは、Ｑｔ：：ＷｉｎｄｏｗＦｕｌｌＳｃｒｅｅｎ状態のウィンドウを作成すること、Ｑｔ：：ＷｉｎｄｏｗＴｒａｎｓｐａｒｅｎｔＦｏｒＩｎｐｕｔおよびＱｔ：：ＷｉｎｄｏｗＳｔａｙｓＯｎＴｏｐＨｉｎｔフラグをセットすること、ならびにウィンドウの色をＱｔ：：ｔｒａｎｓｐａｒｅｎｔにセットすることによって実現される可能性がある。中心モジュールが刺激を正確に設置するために、サードパーティのアプリケーションは、全画面座標を使用して、提供されるエリアを表すことができる。
【０１６７】
例えば、１つの例示的な事例では、本システムの実施形態のうちの１つの中で、本システムに含まれることがある仮想キーボードは、以下の方法で中心モジュールと通信することができる。
【０１６８】
ａ）キーボードは、ＡＰＩを介して、現在表示され、かつ利用可能なキー（特に、標準ＱＷＥＲＴＹキーのセット）を含むエリアを「記録する」。
【０１６９】
ｂ）中心モジュールは、キーボードを含むＧＵＩエリアを表示し、サブエリアは、キーボードによって記録されたこれらのエリアを含む。
【０１７０】
ｃ）中心モジュールは、キーボードによって記録されたエリアのうちの１つと対話するというユーザの意図を判断し、対応する信号をキーボードに送る。
【０１７１】
ｄ）仮想キーボードは、この信号を受け取り、必要なアクション（例えば、キーの押下をエミュレートすること、および／または現在のレイアウトを変更すること）を行い、次に、新しい対話エリア（新しいキーのセット）を定義し、プロセスは、ステップａ）に戻る。
【０１７２】
１つの例示的な事例では、仮想キーボードによって記録されるエリアは十分であり、したがって拡大縮小されないということに留意されたい。
【０１７３】
例示的実施形態において、中心モジュールは、上述の方法を使用して、他のいくつかのシステムおよび／またはモジュールと一斉に通信すること（クエリを処理すること、刺激を認識および提示すること、他）ができるということにも留意されたい。例えば、仮想キーボードの実施形態を用いるステップｂ）において、キーボードによって記録されたエリアと共に、他のアプリケーションによって記録された他のエリアが表示されてもよい。同時に、１つの例示的な事例では、ステップｃ）において、中心モジュールは、サードパーティのシステムおよび／またはモジュールのどちらが、ユーザが対話したいと思うインターフェースのエリアを記録したかを判断することができる。一斉通信の例は、サードパーティのアプリケーションのエリア（例えば、仮想キーボードのエリア）および中心モジュールのメニューエリアを処理することであってよい。
【０１７４】
１つの例示的な事例では、ステップｃ）において、中心モジュールは、「最も可能性が高い」と認識された単一エリアではなく、前記アプリケーションによって記録された各エリアをユーザが選ぶ確率（例えば、エリアＯ１に対して確率０．５、エリアＯ２に対して確率０．２、他）と共にリプライすることができるということに留意されたい。１つの例示的な事例では、アプリケーションは、単一エリア、またはすべてのエリアに対する確率のセットといったリプライの形式を選ぶことができる。１つの例示的な事例では、アプリケーションは、（例えば、０．１秒毎に）中心モジュールから所与の確率を周期的に受け取るために問い合わせることができるということに留意されたい。１つの例示的な事例では、このアプローチは、ＧＵＩまたは個別のアプリケーションを制御する能力を拡張することができる。
【０１７５】
１つの例示的な事例では、中心モジュールは、任意選択でモジュールに含まれることがある、メニューと対話する機能を提供することができる。１つの例示的な事例では、アプリケーションは、メニューの中に独自のコマンドおよび命令を登録し、ＡＰＩを通じてこれらの外観（例えば、テキストまたはアイコン）を設定することができる。次に中心モジュールは、アプリケーションによって設定された外観パラメータを使用して、これらのコマンドに対応するメニュー要素を設置し、このような要素が識別される場合、このモジュールは、どのコマンドまたは命令が認識されたかをモジュールに通知するアプリケーションに、信号を送る。
【０１７６】
例えば、仮想マウスのアプリケーションは、中心モジュールに仮想マウスの「左マウスクリック」コマンドを登録することができ、中心モジュールがこのコマンドを識別したとき、コールされる可能性がある。１つの例示的な事例では、仮想マウスは、コマンド（例えば、左マウスクリック）を実行するのに十分なエリアを配置するために、上述のエリアを配置する方法を使用して、動作することができる。すなわち、仮想マウスは、コマンドを実行するのに十分な画面エリアをシステムが取得するまで、（１つの例示的な事例では、メニューを除く）デスクトップ全体を２Ｄ長方形グリッドに沿ってサブエリアに分割すること、認識するために、結果として生じるサブエリアを中心モジュールに送ること、（認識されたサブエリアの形式で）中心モジュールからリプライを受け取ること、現在アクティブなエリアのサイズを前記サブエリアが満たすまで前記サブエリアを拡大縮小すること、次に、拡大縮小されたサブエリアを分割すること、結果として生じる新しいサブエリアを中心モジュールに送ること、別のリプライを受け取ること、他を行うことができる。この後、コマンドが実行される。
【０１７７】
１つの例示的な事例では、中心モジュールのメニューを含むＧＵＩエリアは、仮想マウスによって拡大縮小されることはない。
【０１７８】
本発明の一例示的実施形態において、マウスクリックは、以下のコマンドを使用して、ＷｉｎＡＰＩを通じてＷｉｎｄｏｗｓオペレーティングシステムの中でエミュレートされてよい。
ＳｅｔＣｕｒｓｏｒＰｏｓ（Ｘ，Ｙ）、
ｍｏｕｓｅ＿ｅｖｅｎｔ（ＭＯＵＳＥＥＶＥＮＴＦ＿ＬＥＦＴＤＯＷＮ，Ｘ，Ｙ，０，０）、
ｍｏｕｓｅ＿ｅｖｅｎｔ（ＭＯＵＳＥＥＶＥＮＴＦ＿ＬＥＦＴＵＰ，Ｘ，Ｙ，０，０）。
ここで、ＸおよびＹは、クリックが行われることが期待される画面のポイント座標（ｓｃｒｅｅｎ  ｐｏｉｎｔ  ｃｏｏｒｄｉｎａｔｅｓ）である。
【０１７９】
キーボードのキー押下は、ＷｉｎＡＰＩによってエミュレートされてもよいということに留意されたい。
【０１８０】
前記刺激の代わりに、またはこれに加えて、システムは、「私はリラックスしている」、「私は怒っている」、「私はまばたきをした」、「私は、私の右手を閉じていることを考える」、他などの、ユーザの内面および外面の状態を使用することができるということにも留意されたい。言い換えると、このようなユーザの状態を処理することができるＢＣＩは、特に、ユーザが本システムまたは本システムのモジュールのうちの少なくとも１つと対話するかどうかを判断するために使用されてよい。
【０１８１】
本発明の方法は、ＢＣＩだけでなく任意の入力デバイスと共に使用されてよいということにも留意されたい。例えば、ボイスコマンドがＢＣＩの代わりに使用される場合、サブエリアの認識を担う音声認識システムは、（対応する刺激の代わりに、またはこれに加えて）１から１００までの数字で、およそ１００の利用可能なサブエリアのそれぞれを示すことができる。ユーザが「４２」と言うと、音声認識システムはこれを認識し、この結果を本発明のシステムに送り、本発明のシステムは、エリアを分割すること、対応するサブエリアを拡大縮小すること、他を行う。眼球追跡システムが使用される場合、本システムは、サブエリアのＩＤおよびこの場所のこれらの座標を送る。眼球追跡システムは、ユーザが見た、より大きいサブエリアを認識し、刺激が表示されることはない。次に、処理はＩＤを戻すこと、サブエリアを拡大縮小すること、他を行う。
【０１８２】
本発明の一例示的実施形態において、（例えば、ユーザがパーキンソン病である場合）ユーザが特定の地点をポイントしようと努力するときにマウス・マニピュレータ、スタイラス、ジョイスティック、他などの入力デバイスが使用されるとき、したがって、目標がより大きいエリアをポイントすることであるとき、１つの実施形態において、サブエリアの内側でのマウスクリックは、このサブエリアを選択することと同じとみなされてよい。すなわち、認識アルゴリズムが動作するのを待つ代わりに、特に、ユーザがクリックのようなアクションを行うことができる場合、クリックが行われてよい。この場合、マウスクリックを動作させるアプリケーションは、本開示で説明された通常の認識システム／手段を有するアプリケーションである。
【０１８３】
本発明の説明された実施形態において、入力デバイスで所与のサブエリアを選択することがさらにできるということに留意されたい。このような入力デバイスは、マウス・マニピュレータ、タッチスクリーン、またはキーボードであってよい。入力デバイスから受け取られた信号は、ＢＣＩによる刺激認識に割り込むことができ、例えば、説明されたコマンドおよび／またはアクションのうちの少なくとも１つで刺激認識を置き換えることができ、これによって、本明細書で説明された、ユーザインターフェース対話の新しい繰返しを開始する。ユーザ−インターフェース対話は、仮想のデバイス、またはオペレーティングシステム、アプリケーション、他の命令／コマンドによってエミュレートされることがあるということに留意されたい。
【０１８４】
本システムおよび方法は、ＢＣＩ、眼球追跡器、他などの１つまたはいくつかの手段で、コンピュータを含めた電子（コンピューティング）デバイス、任意のＧＵＩ、他を、ユーザが制御することを可能にするということに留意されたい。
【０１８５】
ＢＣＩ、上述のＡＰＩ、ならびに仮想キーボードおよび仮想マウスのアプリケーションに基づく本方法の一例示的実施形態において、結果として生じるシステムは、まるで従来のマウスおよびキーボードを使用してこのインターフェースと対話するように、ユーザが包括的な方法でＰＣのＧＵＩを接触せずに制御することを可能にする。
【０１８６】
ＡＰＩをサードパーティのアプリケーションに与えることを含む提案された方法は、任意のＧＵＩを制御するのに適応したシステムを設計することを可能にするということに留意されたい。
【０１８７】
ＡＰＩをサードパーティのアプリケーションに与えることを含む提案された方法は、高速および高信頼性に関連する様々なユーザの問題を解決することを可能にするということに留意されたい。１つの例示的な事例では、このような問題は、上述の方法による、ＡＰＩを使用して中心モジュールと対話するという具体的な問題について、別々のアプリケーションを設計することによって解決されることがある。例えば、ビデオ・プレーヤー・アプリケーションは、映画を見るために設計されてよい。このアプリケーションは、アプリケーションの「再生開始」、「休止」、および他のボタンを、この中心モジュールのメニューの中に登録することができる。
【０１８８】
図１２は、本発明の方法を実行するためのシステムの様々な例示的実施形態を示す。本明細書で説明された本発明のモジュールは、互いに相互接続されるか、または組み込まれてよいということに留意されたい。例えば、図１２Ｂ内のモジュール１２１０は、モジュール１２０Ａおよび１３０Ａを備えることができ、すなわち１つの例示的な事例では、モジュール１２０Ａおよび１３０Ａとして振舞うことができる。
【０１８９】
図１５は、本発明の一例示的実施形態による、刺激を与える別の例を示す。要素１５３０Ａ〜１５３０Ｎは、上記でさらに詳細に説明された仮想キーボード１５７７のキーである。少なくとも１つの仮想キーボード要素（１５３０Ａ〜１５３０Ｎ）は、図１５に示されるように、刺激（１５３５Ａ〜１５３５Ｎ）に割り当てられて（と関連付けられて）よいということに留意されたい。
【０１９０】
図１６は、多目的なコンピューティングデバイス、つまりＣＰＵ２１、システムメモリ２２、および、特にシステムメモリをＣＰＵ２１に接続するといった、システムの様々な構成要素を互いに接続するシステムバス２３を備えるコンピュータ２０またはサーバを備える例示的な汎用コンピュータシステムを示す。
【０１９１】
システムバス２３は、メモリバスまたはメモリコントローラ、周辺機器バス、およびローカルバスを備え、可能な任意のアーキテクチャを有する任意の構造を有することができる。システムメモリは、ＲＯＭ（リード・オンリ・メモリ（ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ））２４およびＲＡＭ（ランダム・アクセス・メモリ（ｒａｎｄｏｍ−ａｃｃｅｓｓ  ｍｅｍｏｒｙ））２５を備える。ＲＯＭ２４は、例えば始動時の、コンピュータ２０内部の要素間のデータ交換のための基本サブルーチンを備えるＢＩＯＳ（基本入出力システム（ｂａｓｉｃ  ｉｎｐｕｔ／ｏｕｔｐｕｔ  ｓｙｓｔｅｍ））２６を含む。
【０１９２】
コンピュータ２０は、ハードディスク上でデータを読み取り、書き込むことができるハードディスクドライブ２７、リムーバブル・フロッピーディスク２９上でデータを読み取り、書き込むことができるフロッピーディスクドライブ２８、およびＣＤ、ビデオＣＤ、または他の光ストレージなどのリムーバブル光ディスク３１上でデータを読み取り、書き込むことができる光ディスクドライブ３０をさらに備えてよい。ハードディスクドライブ２７、フロッピーディスクドライブ２８、および光ディスクドライブ３０は、これらに応じて、ハードディスクドライブ・インターフェース３２、フロッピーディスクドライブ・インターフェース３３、および光ディスクドライブ・インターフェース３４を介してシステムバス２３に接続される。ストレージドライブおよびこれらの個々のコンピュータ可読手段は、コンピュータ２０のための、コンピュータ可読命令、データ構造、プログラムモジュール、および他のデータの不揮発な格納を可能にする。
【０１９３】
ハードディスク、リムーバブル・フロッピーディスク２９、およびリムーバブル光ディスク３１を使用する、ここで説明された構成は典型的なものであるが、当業者は、磁気テープ、フラッシュドライブ、デジタルビデオディスク、ベルヌーイ・カートリッジ（Ｂｅｒｎｏｕｌｌｉ  ｃａｒｔｒｉｄｇｅ）、ＲＡＭ、ＲＯＭ、他などの、コンピュータデータを格納できる他の機械可読手段を使用することを、典型的な動作環境が伴ってもよいことを認識している。
【０１９４】
オペレーティングシステム３５を含めた様々なプログラムモジュールは、ハードディスク、フロッピーディスク２９、光ディスク３１上に、ＲＯＭ２４またはＲＡＭ２５に格納されてよい。コンピュータ２０は、オペレーティングシステム３５、１つまたは複数のアプリケーション３７、他のプログラムモジュール３８、およびプログラムデータ３９に接続されるか、または組み込まれるファイルシステム３６を備える。ユーザは、キーボード４０またはポインティングデバイス４２などの入力デバイスを使用して、命令およびデータをコンピュータ２０に入力することができる。他の入力デバイス（図示せず）は、マイクロフォン、ジョイスティック、ゲームパッド、衛星アンテナ、スキャナ、他を含んでよい。
【０１９５】
これらのおよび他の入力デバイスは通常、システムバスに接続されるシリアルポート・インターフェース４６を介してＣＰＵ２１に接続されるが、パラレルポート、ゲームポート、またはＵＳＢ（ユニバーサル・シリアル・バス）などの他のインターフェースを介して接続される可能性もある。ディスプレイ４７または他のタイプの可視化デバイスは、例えばビデオアダプタ４８といったインターフェースを介してシステムバス２３にも接続される。ディスプレイ４７に加えて、パーソナルコンピュータは通常、スピーカおよびプリンタなどの他の周辺出力デバイス（図示せず）を備える。
【０１９６】
コンピュータ２０は、１つまたはいくつかのリモート・コンピュータ４９への論理接続を用いて、ネットワーク内で動作することができる。１つまたはいくつかのリモート・コンピュータ４９は、別のコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピアリングデバイス、または単一ネットワークの別のノードとして表現されてよく、１つのデータストレージデバイス５０だけが図示されるが、上述のように、通常、コンピュータ２０の大多数またはすべての要素を備える。論理接続は、ＬＡＮ（ローカル・エリア・ネットワーク（ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ））５１とＷＡＮ（広域ネットワーク（ｗｉｄｅ  ａｒｅａ  ｎｅｔｗｏｒｋ））５２の両方を含む。このようなネットワーク環境は通常、様々な機関、企業ネットワーク、およびインターネットの中で実装される。
【０１９７】
ＬＡＮ環境で使用されると、コンピュータ２０は、ネット・インターフェースまたはアダプタ５３を介してローカル・エリア・ネットワーク５１に接続される。ＷＡＮ環境で使用されると、コンピュータ２０は通常、モデム５４、またはインターネットなどの広域ネットワーク５２への接続を確立する他の手段を通じて動作する。
【０１９８】
モデム５４は、内部または外部のものであってよく、シリアルポート・インターフェース４６を介してシステムバス２３に接続される。ネットワーク環境において、コンピュータ２０に関して説明されたようなプログラムモジュールまたはこの一部は、リモートのストレージデバイスに格納されてよい。説明されたネットワーク接続は典型的なものであり、複数のコンピュータ間の通信は、種々の手段を通じて確立されてよいということに留意されたい。
【０１９９】
結論として、本説明において述べられた詳細は、特許請求の範囲によって定義されるような、本発明の範囲を限定しない例であるということに留意されたい。本発明の精神および範囲と一致する他の実施形態があってもよいということが、当業者には明らかである。
【図１】
2019036307.tif 000003
【図２】
2019036307.tif 000004
【図３】
2019036307.tif 000005
【図４】
2019036307.tif 000006
【図５】
2019036307.tif 000007
【図６】
2019036307.tif 000008
【図７】
2019036307.tif 000009
【図８】
2019036307.tif 000010
【図９】
2019036307.tif 000011
【図１０】
2019036307.tif 000012
【図１１】
2019036307.tif 000013
【図１２】
2019036307.tif 000014
【図１３】
2019036307.tif 000015
【図１４】
2019036307.tif 000016
【図１５】
2019036307.tif 000017
【図１６】
2019036307.tif 000018