(57)【要約】【課題】オペレータの位置情報のみで判定できないオペレータの動作と連携する連携先機器を自動選択する。【解決手段】連携機器選択装置が開示される。連携機器選択装置は、第１の機器を操作するオペレータの位置および向きに関する第１の情報と、複数の第２の機器の位置および向きに関する第２の情報と、第２の機器が有する機能に応じて付与される、第２の機器の位置に対する重視度および第２の機器の向きに対する重視度とを用いて、複数の第２の機器の評価値を計算する評価値計算部と、評価値を用いて、複数の第２の機器から、第１の機器と連携する機器を選択する選択部と、を含むことを特徴とする。【選択図】図１３
2015184813.tif 000002
【特許請求の範囲】
【請求項１】
第１の機器を操作するオペレータの位置および向きに関する第１の情報と、複数の第２の機器の位置および向きに関する第２の情報と、前記第２の機器が有する機能に応じて付与される、前記第２の機器の位置に対する重視度および前記第２の機器の向きに対する重視度とを用いて、前記複数の第２の機器の評価値を計算する評価値計算部と、
前記評価値を用いて、前記複数の第２の機器から、前記第１の機器と連携する機器を選択する選択部と、
を含む連携機器選択装置。
【請求項２】
さらに、
前記第２の機器の向きと前記第１の機器の向きのなす角から得られる第１の姿勢一致度と、前記第２の機器の向きとオペレータの向きのなす角から得られる第２の姿勢一致度を計算する姿勢一致度計算部を含み、
前記評価値計算部は、前記第１の距離と第２の距離の少なくとも一つを用いて前記評価値を計算する、請求項１に記載の連携機器選択装置。
【請求項３】
さらに、
前記第２の機器と前記第１の機器の間の第１の距離と、前記第２の機器とオペレータの間の第２の距離の少なくとも一つを計算する距離計算部を含み、
前記評価値計算部は、前記第１の距離と前記第２の距離の少なくとも一つを用いて前記評価値を計算する、請求項１または２に記載の連携機器選択装置。
【請求項４】
前記評価値計算部は、さらに、前記第１の機器の位置および向きに関する第３の情報と、前記第２の機器のユーザの位置および向きに関する第４の情報の少なくとも一つを用いて前記第２の機器の評価値を計算する、請求項１乃至３のいずれか一項に記載の連携機器選択装置。
【請求項５】
さらに、
前記第２の機器の向きと前記ユーザの向きのなす角から得られる第３の姿勢一致度を計算する姿勢一致度計算部（図５、３３２）を含み、
前記評価値計算部は、前記第３の姿勢一致度を用いて前記評価値を計算する、請求項４に記載の連携機器選択装置。
【請求項６】
前記評価値計算部は、前記第１の機器に実装されるアプリケーションの実行に必要な機能から、前記第２の機器を選択し、選択された前記第２の機器の評価値を計算する、請求項１乃至５のいずれか一項に記載の連携機器選択装置。
【請求項７】
選択部はさらに、前記アプリケーションの実行に必要な前記機能の各々に対して付与される優先度を用いて前記第１の機器と連携する前記第２の機器を判定する、請求項１乃至６のいずれか一項に記載の連携機器選択装置。
【請求項８】
コンピュータによって処理される連携機器選択方法であって、
第１の機器を操作するオペレータの位置および向きに関する第１の情報と、複数の第２の機器の位置および向きに関する第２の情報と、前記第２の機器が有する機能に応じて付与される、前記第２の機器の位置に対する重視度および前記第２の機器の向きに対する重視度とを用いて、前記複数の第２の機器の評価値を計算することと、
前記評価値を用いて、前記複数の第２の機器から、前記第１の機器と連携する機器を選択することと、
を含む連携機器選択方法。
【請求項９】
第１の機器を操作するオペレータの位置および向きに関する第１の情報と、複数の第２の機器の位置および向きに関する第２の情報と、前記第２の機器が有する機能に応じて付与される、前記第２の機器の位置に対する重視度および前記第２の機器の向きに対する重視度とを用いて、前記複数の第２の機器の評価値を計算し、
前記評価値を用いて、前記複数の第２の機器から、前記第１の機器と連携する機器を選択する
処理をコンピュータに実行させることを特徴とする連携機器選択プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、連携機器選択装置、連携機器選択方法および連携機器選択プログラムに関するものである。
【背景技術】
【０００２】
ネットワークに対応した複数のガジェットを連携させて制御する、特にユーザ（機器の利用者）や機器の位置・姿勢に基づいて制御する手法が注目されている。
【０００３】
金融営業店舗等に配置されているデバイスを制御するデバイス制御プログラムはデバイスマネージャーによって管理されていることがある。このとき、デバイスの識別子を含む命令は、業務アプリケーションからデバイスマネージャーに与えられ、さらにデバイスマネージャーによってその命令はデバイス制御プログラムに割り当てられる。そして、第１のデバイスと第２のデバイスが存在するとき、それぞれのデバイスの位置情報を対応付けて接続先管理情報として記憶し、オペレータの位置情報を検出して近い位置を示す位置情報のデバイスに命令を送信する情報処理装置が知られている（たとえば、特許文献１）。
【０００４】
また、ネットワーク上の情報入出力装置を選択する際、オペレータから遠く離れた装置を選択することを防ぐためのパーソナルコンピュータ等の情報入出力装置の管理システムが知られている。このような管理システムとして、たとえば、装置の物理的位置の移動を検知し、所定の移動距離を越えた時点で、位置情報の設定変更や設定変更メッセージの表示を行うシステムが知られている（たとえば、特許文献２）。
【０００５】
また、外部装置等から制御要求を受けて複数のネットワーク装置およびメディア装置を統合制御するコミュニケーション機能制御装置が知られている。このような制御装置には、たとえば、予めオペレータの行き先とその行き先の場所に設置された装置が登録され、利用者の行き先で利用者情報を識別して登録された装置とコミュニケーションをとるものが知られている（たとえば、特許文献３）。
【０００６】
上記の装置では、オペレータの位置情報を利用しており、オペレータが所定位置にいると判定された場合に機器が連携して作動する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００７−７９９２１号公報
【特許文献２】特開平１０−１７７５３３公報
【特許文献３】特開平９−１１４７５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、たとえば、オペレータの位置のみでドアの開閉を制御しようとする際に、オペレータとドアの開閉方向によっては、ドアが開くとオペレータと接触してしまうことがある、オペレータから等距離の位置に、同一機能を有する機器が存在するなど、ユーザの位置情報だけでは、オペレータの動作と連携する連携先機器を自動で選択することが難しいという問題がある。
【０００９】
よって、一つの側面として、本発明は、オペレータの動作と連携する適切な連携先機器を自動で選択する連携機器選択装置、連携機器選択方法および連携機器選択プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
連携機器選択装置が開示される。連携機器選択装置は、第１の機器を操作するオペレータの位置および向きに関する第１の情報と、複数の第２の機器の位置および向きに関する第２の情報と、前記第２の機器が有する機能に応じて付与される、前記第２の機器の位置に対する重視度および前記第２の機器の向きに対する重視度とを用いて、前記複数の第２の機器の評価値を計算する評価値計算部と、前記評価値を用いて、前記複数の第２の機器から、前記第１の機器と連携する機器を選択する選択部と、を含むことを特徴とする。
【発明の効果】
【００１１】
オペレータの動作と連携する適切な連携先機器を自動選択することが可能となる。
【図面の簡単な説明】
【００１２】
【図１】連携機器選択が行われるプレゼンテーション場面の例を説明するための図である。
【図２】連携機器選択が行われる人が歩行する場面の例を説明するための図である。
【図３】装置間の距離について説明するための図である。
【図４】姿勢一致度について説明するための図である。
【図５】実施形態の連携機器選択装置の機能ブロックの例を示す図である。
【図６】複数の機器がある環境の例を示す図である。
【図７】人の位置姿勢情報のセンシングの例について説明するための図である。
【図８】機器の位置姿勢情報のセンシングの例について説明するための図である。
【図９】機器の位置姿勢情報のセンシングの別の例について説明するための図である。
【図１０】機器リストの例を示す図である。
【図１１】評価テーブルの例を示す図である。
【図１２】連携先機器候補を選ぶようすを説明するための図である。
【図１３】連携先機器の選択結果の例を示す図である。
【図１４】連携機器選択装置の構成の例を示す図である。
【図１５】第１事前準備処理における処理の流れの例を示す図である。
【図１６】第２事前準備処理における処理の流れの例を示す図である。
【図１７】連携機器選択処理における処理の流れの例を示す図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して、実施形態の連携機器選択装置、連携機器選択方法および連携機器選択プログラムについて説明する。
【００１４】
図１は、連携機器選択が行われるプレゼンテーション場面の例を説明するための図である。図１に示されている環境は、室内であっても良い。プレゼンターＡから等距離に２つのディスプレイ１１、１２が配置されている。また、聴衆Ｂが使用するための机１３、１４、１５、１６、１７、１８が配置されている。
【００１５】
図１では、本来は、オペレータ（プレゼンターＡ）が２つのディスプレイ１１、１２のうち、近いほうのディスプレイに手持ちのスマートフォン（連携元機器）の画面を映し、プレゼンテーションを開始する場面であることが想定されている。しかし、屋内に２つのディスプレイがあり、その中間地点にオペレータ（プレゼンターＡ）が立っている場合、オペレータの位置だけでどちらのディスプレイ（連携先機器）を使用するかを自動で決めることはできない。
【００１６】
図２は、連携機器選択が行われる人が歩行する場面の例を説明するための図である。図２では、人Ｃはスマートフォン（連携元機器）を持ち歩き、廊下と部屋を隔てる壁Ｐがあり、その壁の一部にドア１９（連携先機器）が設置され、廊下と部屋の間を行き来できるようにしている。そのドア１９は、ドア１９を取り囲む領域Ｑ内に人Ｃが踏み込むと、ドアは廊下側に開くように設計されているとする。このような場合、人Ｃが廊下を壁Ｐに沿って歩き領域Ｑに入ると、図２に示されているように、ドア１９は、人Ｃの進路を塞ぐように、自動的に開いてしまう。つまり、部屋の前にいるユーザに連携してドアが開かれると、ユーザとドアとの接触事故が起きてしまうことがある。さらに、部屋の前を横切るユーザと部屋の前で方向転換をして部屋に入るオペレータを位置情報のみで識別することはできないため、ドアを連携させることはできない。
【００１７】
このように、位置情報のみを使用した機器連携では連携すべきでない機器の自動判定が困難なシーンがある。
【００１８】
また、オペレータと１つの機器との連携のみに注目しており、複数ユーザと複数機器との関係で使用機器が決まるような複雑なケースで連携する機器を自動で判定することはできない場合がある。
【００１９】
そこで以下では、
（Ｔ１）オペレータの位置情報のみで判定できない連携機器を、姿勢情報を利用することで自動選択する、
（Ｔ２）複数のオペレータと複数機器との相互の位置および姿勢に関する情報から定まる評価値に基づいて連携機器を自動で選択する、
ことができる連携機器選択装置、連携機器選択方法および連携機器選択プログラムについて説明する。このような連携機器選択装置、連携機器選択方法および連携機器選択プログラムでは、
（Ｅ１）オペレータの位置情報のみで判定できない連携先機器を自動選択することができる、
（Ｅ２）オペレータと複数機器とが連携する場面において、たとえば、オペレータと２つの機器の間の距離だけでは連携機器を選択できない場合でも、オペレータと連携元機器の位置および姿勢（向き）に関する情報から連携先機器を自動で選択することができる、
という効果を有し得る。
【００２０】
まず、用語を定義する。
「オペレータ（操作者）」とは、一つまたは複数の機器の操作を行う者であり得る。たとえば、図１に示されているようなプレゼンテーションの場面では、オペレータ（操作者）は、プレゼンターＡであり得る。図２に示されているような人が歩行するような場面では、オペレータ（操作者）は、歩行者Ｃであり得る。オペレータ（操作者）の数は単数であっても複数であっても良い。
【００２１】
「ユーザ」とは、オペレータ（操作者）以外で、一つまたは複数の機器の効果を受ける者であり得る。たとえば、図１に示されているようなプレゼンテーションの場面では、聴衆Ｂであり得る。ユーザの数は単数であっても複数であっても良い。
【００２２】
「連携元機器」とは、他の機器に対して連携を要求する機器であり得る。たとえば、図１に示されているようなプレゼンテーションの場面では、連携元機器は、プレゼンターＡが持っているスマートフォンであっても良い。図２に示されているような人が歩行するような場面では、連携元機器は、歩行者Ｃが持っているスマートフォンであっても良い。図１、２に示されている場面において、連携元機器はスマートフォンのような汎用情報機器であるとしたが、連携元機器は専用の機器であっても良い。
【００２３】
「連携先機器」とは、連携元機器の要求に応じて動作する機器であり得る。図１に示されているようなプレゼンテーションの場面では、連携先機器は、ディスプレイ１１、１２であり得る。図２に示されているような人が歩行するような場面では、連携先機器は、ドア１９であり得る。「連携元機器」と「連携先機器」の一覧は、それぞれの機器の機能とともに、機器リストのようなファイルに書き込まれ、データベースに格納されていても良い。
【００２４】
「距離」とは、連携元機器またはユーザまたはオペレータと連携先機器候補を結ぶ直線距離であり得る。
【００２５】
図３は、距離について説明するための図である。
図３には、オペレータＥが位置座標（ｘａ，ｙａ，ｚａ）に、連携元機器２１が位置座標（ｘｍ，ｙｍ，ｚｍ）に、連携先機器２０が位置座標（ｘ’，ｙ’，ｚ’）に、ユーザＤが位置座標（ｘｕ，ｙｕ，ｚｕ）に存在する場合が示されている。
【００２６】
ここで、上記の定義に従うと、たとえば、オペレータＥと連携先機器２０との距離ｌａは、
【数１】
2015184813.tif 000003
である。
【００２７】
また、連携元機器２１と連携先機器２０との距離ｌｍは、
【数２】
2015184813.tif 000004
である。
【００２８】
また、ユーザＤと連携先機器２０との距離ｌｕは、
【数３】
2015184813.tif 000005
である。
【００２９】
「姿勢」に関して、オペレータＥ、ユーザＤの姿勢とは、目線の向きでも良いし、体の正面の向きであっても良い。姿勢を単に「向き」と呼ぶこともある。連携先機器２０、連携元機器２１の姿勢とは、もし、連携先機器２０、連携元機器２１にディスプレイやスピーカなど、指向性を有する出力デバイスが含まれている場合は、その指向性の向きであり得る。たとえば、ディスプレイであれば、画面の法線方向を姿勢（向き）としても良い。
【００３０】
「評価値」は、距離と、姿勢一致度と、距離と姿勢一致度に対する重視度と、の全部または一部を用いて決定され得る。距離に関しては、たとえば、距離が大きくなるにつれて、評価値は小さくなっても良い。また、機器の機能に応じて距離の近さに比例して評価値は単調増加または単調減少しても良い。
【００３１】
「姿勢一致度」は、連携元機器もしくはユーザ、またはオペレータと連携先機器候補を結ぶ直線と連携元機器の正面方向（もしくはユーザ、またはオペレータの体の正面方向）および連携先機器の正面方向との角度であっても良い。
【００３２】
図４は姿勢一致度について説明するための図である。
図４に示されている状況では、ユーザＤの正面方向ｎＤと、ユーザＤと連携先機器２０を結ぶ直線との間の角度をθｕｕとする。また、連携先機器２０の正面方向ｎ２０と、ユーザＤと連携先機器２０を結ぶ直線との間の角度をθｕｉとする。このとき、ユーザ姿勢を（θｘｚ＿ｕ，θｙｚ＿ｕ，θｘｙ＿ｕ）、連携先機器姿勢を（θ’ｘｚ，θ’ｙｚ，θ’ｘｙ）とする。このとき、連携先機器２０に対するユーザＤの姿勢一致度をθｕｕと、ユーザＤに対する連携先機器２０の姿勢一致度をθｕｉと定義する。ここで、姿勢一致度θｕｕ、θｕｉは１８０°以下になる側の角度とし、直線から反時計回り（図４のθｕｕ）をプラス（＋）、直線から時計回り（図４のθｕｉ）をマイナス（−）の角度で表記しても良い。
【００３３】
一般には、連携元機器もしくはユーザ、またはオペレータと連携先機器候補を結ぶ線分と連携元機器の正面方向もしくはユーザの体の正面方向、またはオペレータの体の正面方向に伸びた半直線で構成される角度をθｍｍもしくはθｕｕまたはθａａとする。また、連携元機器もしくはユーザ、またはオペレータとの線分と連携先機器の正面方向に伸びた半直線で構成される角度をθｍｉもしくはθｕｉまたはθａｉとする。このとき、上記６つの角度、をθｍｍ、θｕｕ、θａａ、θｍｉ、θｕｉ、θａｉを姿勢一致度と呼ぶ。
【００３４】
姿勢一致度に基づく評価値を例えば｜θｍｍ｜＋｜θｍｉ｜＝０で最大値となる評価関数で表現することで，連携元機器と連携先機器が対面に配置した状態を最も連携にふさわしい状態として判定しても良い。または、｜θｕｕ−θｕｉ｜＝π［ｒａｄ］で最大値となる関数で表現し、ユーザと連携先機器が同一方向を向いている状態を最も連携にふさわしい状態として判定しても良い。
【００３５】
距離と姿勢一致度に対する重視度は、予め定められて、評価テーブルのようなファイルに書き込まれ、データベースに格納されていても良い。
【００３６】
「評価値」は、操作者やユーザや連携元機器や連携先機器の配置に基づく現在の距離ｌ、姿勢一致度θを評価式ｆｉに代入して得られる。
【００３７】
たとえば、評価式をｆ、連携先候補機器をｉ、ユーザをｕ、ユーザの総数をｎ、オペレータをａ、連携元機器の数をｍ、ユーザと連携元機器の間の距離をｌｕ１、…、ｌｕｍ、連携先候補機器と連携元機器の間の距離をｌｍ、オペレータと連携先候補機器の間の距離をｌａ、姿勢一致度をθｕｕ１、…、θｕｕｍ、θｍｍ、θｍｉ、θａａ、θａｉ、連携先候補機器に対する距離と姿勢一致度に対する重視度をαｉ，ｌ、αｉ，θとすると、評価式ｆは、
【数４】
2015184813.tif 000006
であっても良い。もちろん、評価式は別の表式であっても良い。
【００３８】
オペレータまたはユーザが複数人いる場合、オペレータまたはユーザの距離・姿勢一致度を評価式の引数に利用する手法として、代表値、平均値、全オペレータまたはユーザのデータのいずれかまたは全部を利用しても良い。
【００３９】
「重視度」とは、使用機器について画面表示機能の有無、音声再生機能の有無、照明機能の有無など機能に関するチェックリストを作成したとき、機器が持つ機能に基づき距離や姿勢一致度が評価値の計算に与える影響のことであり得る。距離対する重視度αｌと姿勢一致度に対する重視度θについて、
【数５】
2015184813.tif 000007
が成立するように設計しても良い。
【００４０】
また、「評価値」は、オペレータ、ユーザ、連携元機器、連携先機器候補の現在の位置・姿勢から求めた距離、姿勢一致度と、距離や姿勢一致度の重視度を評価式の入力し、計算される。そして、すべての候補の中で評価値が最大の機器候補や閾値以上の評価値となる機器が、連携先候補として選択されても良い。
【００４１】
＜連携機器選択装置＞
図５〜１４を参照して、実施形態の連携機器選択装置について説明する。
【００４２】
図５に示されているように、オペレータ（操作者）Ｆが操作するスマートフォン等の情報機器３０、カメラ等の撮像装置、情報機器、（ユーザ保持）スマートフォン等に内蔵されるセンサ３２、機器データベース（ＤＢ）３１、計算部３３、データベース（ＤＢ）作成部３４が存在している。
【００４３】
図６は、複数の機器がある環境の例を示す図である。
図６に示されている例では、ある部屋の中に、連携元機器であるスマートフォン（情報機器）４３を持った操作者Ｆと操作者のプレゼンテーションを視聴する一人のユーザＧが居る。操作者ＦとユーザＧが居る部屋には、２台のディスプレイ、すなわちディスプレイ１（４１）とディスプレイ２（４２）、２台のスピーカ、すなわちスピーカ１（４４）とスピーカ２（４５）、カメラ４６、４台の照明、すなわち照明１（４７）、照明２（４８）、照明３（４９）、照明４（５０）が配置されている。照明の姿勢は天井から床の方向に向いているものとする。位置座標はｚ軸を鉛直上向きとする直交座標（ｘ，ｙ，ｚ）を部屋に設定する。姿勢座標は直交座標の平面ｘｚ，ｙｚ，ｘｙ内の回転成分（θｘｚ，θｙｚ，θｘｙ）と設定しても良い。
【００４４】
また、図６には、オペレータは一人しか示されていないが、複数の場合への拡張は容易である。複数のオペレータに対応する連携元機器が、同一の連携先機器を選択した場合には、オペレータに優先順位を付与しておき、優先順位の高い順に選んでも良い。
【００４５】
カメラ４６は、位置・姿勢取得のために用いられ得る。これらの機器は、操作者Ｆのプレゼンテーションを補助するために連携元機器であるスマートフォン４３からの命令によって動作する連携先機器として機能し得る。また、プレゼンテーションに無関係な机５１、５２、５３、５４、５５、５６、エアコン５７が存在する。このような環境でオペレータ（操作者）Ｆは、スマートフォン４３の映像をディスプレイ１（４１）、ディスプレイ２（４２）等の大画面に出力しプレゼンテーションを実施することができる。
【００４６】
連携機器選択装置は、プレゼンテーションに使用する機器を自動で選択する。機器には、スマートフォン４３、ディスプレイ１（４１）、ディスプレイ２（４２）、スピーカ１（４４）、スピーカ２（４５）、カメラ４６、４台の照明、すなわち照明１（４７）、照明２（４８）、照明３（４９）、照明４（５０）、エアコンディショナー（エアコン）５７が含まれ得る。
【００４７】
部屋の床にｘｙ平面が設定され、天井から床の方向がｚ軸の正の方向であるとすると、オペレータ（操作者）Ｆの位置座標を（ｘａ，ｙａ，ｚａ）、姿勢を（θｘｚ＿ａ，θｙｚ＿ａ，θｘｙ＿ａ）とすることができる。また、オペレータ（操作者）Ｆが操作するスマートフォン等の情報機器３０の位置座標を（ｘｍ，ｙｍ，ｚｍ）、姿勢を（θｘｚ＿ｍ，θｙｚ＿ｍ，θｘｙ＿ｍ）とする。ディスプレイ１（４１）の位置座標を（ｘ’，ｙ’，ｚ’）、姿勢を（θ’ｘｚ，θ’ｙｚ，θ’ｘｙ）とすることができる。また、ユーザＧの位置を（ｘｕ，ｙｕ，ｚｕ）、姿勢を（θｘｚ＿ｕ，θｙｚ＿ｕ，θｘｙ＿ｕ）とすることができる。
【００４８】
オペレータ（操作者）ＦやユーザＧの位置・姿勢や、ディスプレイ１（４１）、ディスプレイ２（４２）等の機器の位置・姿勢のセンシングのために、部屋に取り付けたカメラや機器に内蔵の加速度センサ、ジャイロセンサ、地磁気センサを使用し得る。また、スマートフォン（情報機器）４３等の機器識別子（機器ＩＤ）を用いて、オペレータ（操作者）Ｆを識別しても良い。また、ユーザＧにスマートフォン等の情報機器を持たせ、その機器ＩＤを用いて、ユーザＧを識別しても良い。
【００４９】
位置・姿勢取得用の環境設置カメラ４６は、機器に取り付けたＡＲマーカーを用いて、ディスプレイ１（４１）、ディスプレイ２（４２）等の機器の位置・姿勢を認識したり、筋骨格モデルを使ってオペレータ（操作者）ＦやユーザＧの位置や、体の向きを決定するための情報を、計算部３３の距離計算部３１１、姿勢一致度計算部３３２に出力する。計算部３３の距離計算部３１１、姿勢一致度計算部３３２は、環境設置カメラ４６の画像を用いて、ディスプレイ１（４１）、ディスプレイ２（４２）等の機器の位置・姿勢や、オペレータ（操作者）ＦやユーザＧの位置や、体の向きを決定しても良い。
【００５０】
図７は、人の位置姿勢情報のセンシングの例について説明するための図である。
図７に示されている例では、計算部３３の計算部３３の距離計算部３１１、姿勢一致度計算部３３２は、環境設置カメラ４６の画像からオペレータ（操作者）Ｆに対して、頭部Ｆ１、肩Ｆ２、Ｆ３、ひじＦ４、Ｆ６、手Ｆ５、Ｆ８、腰Ｆ７、Ｆ９等の関節の位置を抽出し、これらを繋いだ人の筋骨格モデルを適用して、腰部の直線に鉛直な向きを体の正面として、姿勢（θｘｚ＿ａ，θｙｚ＿ａ，θｘｙ＿ａ）を取得し得る。
【００５１】
図８は、機器の位置姿勢情報のセンシングの例について説明するための図である。
図８に示されている例では、データベース（ＤＢ）作成部３４は、ディスプレイ１（４１）、ディスプレイ２（４２）等の機器にＡＲマーカーが取り付けられている。カメラ４６は、ＡＲマーカーを認識することによって、ディスプレイ１（４１）、ディスプレイ２（４２）等の機器までの距離とＡＲマーカーの姿勢を決定するための情報を、機器ＤＢ３１に出力する。データベース（ＤＢ）作成部３４は、カメラに映ったＡＲマーカーの角度より、マーカー基準の直交座標を取得する。また、データベース（ＤＢ）作成部３４は、機器に張り付けたＡＲマーカーのカメラの映り具合から、カメラとマーカーの距離と姿勢を得ても良い。データベース（ＤＢ）作成部３４は、機器の位置座標として、ＡＲマーカーの貼り付け座標（ｘ，ｙ，ｚ）を取得し、機器の正面方向の姿勢（θｘｚ，θｙｚ，θｘｙ）をＡＲマーカーの直交座標と部屋の直交座標との向きの違いより得ても良い。
【００５２】
このようにカメラ４６等は、図５のセンサ３２として機能し得る。
データベース（ＤＢ）作成部３４は、ＡＲマーカーによる位置・姿勢取得のために、ＱＰＴｏｏｌｋｉｔ（登録商標）等を利用しても良い。
【００５３】
図９は、機器の位置姿勢情報のセンシングの別の例について説明するための図である。
図９に示されている例は、ディスプレイ１（４１）、ディスプレイ２（４２）等の機器にジャイロセンサ、加速度センサ、地磁気センサ等のセンサ４１２が内蔵されている。センサ４１２は、機器の回転を計測し、データベース（ＤＢ）作成部３４は、センサ４１２で計測される結果を用いて機器の正面方向の姿勢（θｘｚ，θｙｚ，θｘｙ）を得ても良い。
【００５４】
機器が部屋に固定され、姿勢の変化がない場合、データベース（ＤＢ）作成部３４は、部屋に設置した時点で設定された機器の位置・姿勢情報を、そのまま利用しても良い。
【００５５】
また、オペレータ（操作者）ＦやユーザＧの識別は両者が持つスマートフォンの機器ＩＤを認識することで実現しても良い。
【００５６】
機器データベース（ＤＢ）３１と計算部３３とデータベース（ＤＢ）作成部３４は組み合わされて連携機器選択装置３４を構成し得る。しかしながら、機器データベース（ＤＢ）３１とデータベース（ＤＢ）作成部３４は外部装置として、計算部３３だけで連携機器選択装置３４を構成しても良い。以下では、連携機器選択装置３４は、機器データベース（ＤＢ）３１と計算部３３とデータベース（ＤＢ）作成部３４を含むものとする。
【００５７】
オペレータ（操作者）Ｆが操作する情報機器３０は、アプリケーション実行部３０１と位置・姿勢情報抽出部３０２を含む。オペレータ（操作者）Ｆは、情報機器３０に開始命令を入力しても良い。情報機器３０は、連携元機器として動作する。
【００５８】
アプリケーション実行部３０１は、連携先機器に対して所定の動作をさせるアプリケーションを実行する。アプリケーションとしては、たとえば、ディスプレイに対して画像を表示させるものであっても、スピーカに音声を再生させるものであっても良い。または、近くの可動物（たとえばドアなど）を動作させるアプリケーションであっても良い。
【００５９】
位置・姿勢情報抽出部３０２は、情報機器３０の位置と姿勢を抽出する。位置・姿勢情報抽出部３０２はカメラ等の撮像装置と、その撮像装置で得た画像から情報機器３０の位置と姿勢を抽出する解析部を含んでいても良いし、位置と姿勢を同時に検知できるセンサを含んでいても良い。
【００６０】
機器データベース（ＤＢ）３１は、データベース（ＤＢ）作成部３４によって作成される機器リスト３１１、評価テーブル３１２、評価式３１３を格納していても良い。データベース（ＤＢ）作成部３４は、センサ３２によって取得される情報に基づいてたとえば機器リスト３１１、評価テーブル３１２を作成し、機器データベース（ＤＢ）３１に格納し得る。評価式３１３は、データベース（ＤＢ）作成部３４によって、たとえば過去のデータを用いて学習することによって作成されても良いし、外部から入力されても良いし、また、情報機器３０を介して入力されたものを機器データベース（ＤＢ）３１の評価式３１３に格納しても良い。
【００６１】
図１０は、機器リスト３１１の例を示す図である。
図１０に示されている機器リスト３１１には、スマートフォン４３、ディスプレイ１（４１）、ディスプレイ２（４２）、スピーカ１（４４）、スピーカ２（４５）、カメラ４６、４台の照明、すなわち照明１（４７）、照明２（４８）、照明３（４９）、照明４（５０）、エアコン５７のそれぞれに対し、機能の有無が記入されている。機能として図１０には、「画像表示」、「音再生」、「明かり」、「空調」、「映像録画」、「録音」が含まれているが、これらの全てを含まなくてもよいし、他の機能が含まれても良い。機器リスト３１１は、データベース（ＤＢ）作成部３４はで、各機器に対する距離の重視度αｌと姿勢一致度の重視度αθを計算する際に用いられ得る。
【００６２】
機器リスト３１１は、機器連携の事前準備として、部屋内にある全ての機器を機能ごとにリスト化され得る。機器リスト３１１は、機器ごとに個別の機能を有するかのチェック結果が示され得る。たとえば機器リスト３１１は、事前に手動で作成されても良い。また機器リスト３１１は、上記機器に機器ＩＤ等、機器を識別する情報を埋め込み、ネットワークを介して自動更新されても良い。
【００６３】
評価テーブル３１２には、各機器の機能に対する距離と姿勢一致度の重視度αが記入されている。
【００６４】
図１１は、評価テーブルの例を示す図である。
図１１に示されている評価テーブル３１２には、データベース（ＤＢ）作成部３４によって、「画面表示」、「音再生」。「明かり」、「空調」、「映像録画」、「録画」の各機能に対する、「距離の重視度αｌへの影響」と「姿勢一致度の重視度αθへの影響」が記入されている。「距離の重視度αｌへの影響」と「姿勢一致度の重視度αθへの影響」をそれぞれ、位置に対する影響度と向きに対する影響度と呼ぶことがある。または、これらを併せて、単に影響度と呼ぶこともある。たとえば、「画面表示」の機能に対して、距離の重視度αｌへの影響は０．７、姿勢一致度の重視度αθへの影響は０．３と重み付けされている。「距離の重視度αｌへの影響」と「姿勢一致度の重視度αθへの影響」の和は１．０となるように設定され得る。データベース（ＤＢ）作成部３４は、重視度αｌ、αθをランダムに設定したのち機械学習で最適な値を学習しても良いし、予め定められた評価関数を用いて作成しても良い。
【００６５】
データベース（ＤＢ）作成部３４は、評価テーブル３１２を参照して、各機器に対する距離の重視度αｌと姿勢一致度の重視度αθを計算する。
【００６６】
たとえばデータベース（ＤＢ）作成部３４において、スマートフォン４３に対する距離の重視度αｌは、
【数６】
2015184813.tif 000008
のように計算される。またデータベース（ＤＢ）作成部３４において、スマートフォン４３に対する姿勢一致度の重視度αθは、
【数７】
2015184813.tif 000009
のように計算される。
【００６７】
すなわち、重要度αは、機器リスト中で当該機器が有している機能が重要度に寄与する重みの平均であり得る。
【００６８】
同様に、計算部３３の評価値計算部３３３において、ディスプレイ１（４１）、ディスプレイ２（４２）に対する距離の重視度αｌはαｌ＝０．３、姿勢一致度の重視度αθは、αθ＝０．７と計算される。計算部３３の評価値計算部３３３において、スピーカ１（４４）、スピーカ２（４５）に対する距離の重視度αｌはαｌ＝０．５、姿勢一致度の重視度αθは、αθ＝０．５と計算される。計算部３３の評価値計算部３３３において、エアコン５７に対する距離の重視度αｌはαｌ＝０．５、姿勢一致度の重視度αθは、αθ＝０．５と計算される。
【００６９】
データベース（ＤＢ）作成部３４は、その後、スマートフォン４３で実行するアプリケーション（たとえば、プレゼンテーションを支援するアプリケーション）に必要な機能を手動または機器に情報を埋め込むことで自動抽出し、機器リスト３１１に載っている機器を必要な機能を持つ機能ごとに連携先候補としてグループ化する。そして、グループごとに各機能が利用される時の望ましい位置・姿勢を設計者が考慮し、評価式を作成する。
【００７０】
図１２は、連携先機器候補を選ぶようすを説明するための図である。
図１２に示されている例では、図５のスマートフォン３０のアプリケーション実行部３０１は、提携先機器は「画面表示」、「音再生」、「明かり」の機能を必要としている。この必要な機能は、オペレータ（操作者）Ｆによって手動で設定されても良いし、アプリケーションが自動的に設定しても良いが、いずれにせよ、プレゼンのアプリケーションに応じて必要な機能がリストアップされる。
【００７１】
計算部３３の評価値計算部３３３は、連携先機器として、画面表示、音再生、明かりの機能を持つ機器候補から選択評価式ｆを画面表示、音再生、明かりの機能ごとに作成する。たとえば、図１２では計算部３３の評価値計算部３３３は、必要な機能の一つである「画面表示」の機能を有する機器として、ディスプレイ１（４１）、ディスプレイ２（４２）を抽出し、「画面表示の連携先機器候補」としてグループ化する。また、図１２では計算部３３の評価値計算部３３３は、必要な機能の一つである「音再生」の機能を有する機器として、スピーカ１（４４）、スピーカ２（４５）を抽出し、「音再生の連携先機器候補」としてグループ化する。また、図１２では計算部３３の評価値計算部３３３は、必要な機能の一つである「明かり」の機能を有する機器として、照明１（４７）、照明２（４８）、照明３（４９）、照明４（５０）を抽出し、「明かりの連携先機器候補」としてグループ化する。
【００７２】
また、各グループには優先度が付与されていても良い。提携元機器の優先度が０で、優先先機器の優先度は１以上であって、優先度の値が小さい方が、優先度は高いとして良い。もちろん、優先度の設定の仕方は任意である。図１２の例では、画面表示の機能の優先度は１であり、音再生と明かりの機能の優先度は２である。
【００７３】
なお、初期に評価式を与えた後、機械学習などの手法を用いて自動で最適な値に更新しても良い。また、アプリケーション実行時に連携先機器を決定する順番は、グループごとに優先度を付けることで実施し得る。優先度の数値が小さい順番から連携先機器を決定し、優先度ｎの連携先機器を決める場合は優先度（ｎ−１）で決定した連携先機器を連携元機器として使用する。
【００７４】
計算部３３の評価値計算部３３３は、機器ＤＢ３１の評価式３１３を参照して、各機器に対する評価値を計算する。
【００７５】
例えば画面表示は、連携先のディスプレイと操作者、ユーザ共に距離が近い方が見やすい。また、ディスプレイとユーザが対面し、操作者が説明する向きと同じ方向にディスプレイが向いている方が説明を行いやすい。これらのことを考慮し，画面表示機能に関する評価式は、データベース（ＤＢ）作成部３４によって、予め設定されていても良い。
【００７６】
たとえば、データベース（ＤＢ）作成部３４は、各機能が利用されるときの望ましい位置・姿勢を設定し、その設定に従って、距離、姿勢一致度、重視度を用いた評価式を作成しても良い。
【００７７】
たとえば、評価式ｆは、連携先候補機器をｉ、ユーザをｕ、ユーザの総数をｎ、オペレータをａ、連携元機器をｍ、距離をｌｕ１、…、ｌｕｍ、ｌｍ、ｌａ、姿勢一致度をθｕｕ１、…、θｕｕｍ、θｍｍ、θｍｉ、θａａ、θａｉ、距離と姿勢一致度に対する重視度をαｉ，ｌ、αｉ，θとすると、
【数８】
2015184813.tif 000010
であっても良い。
【００７８】
図６に示されている例では、ユーザはユーザＧ一人であるが、ユーザが複数人いる場合，距離・姿勢一致度をユーザの代表値や平均値や、全員のデータを利用するように評価式を設定しても良い。これらの処理は、事前準備処理として、オペレータ（操作者）Ｆがスマートフォン４３に指令を入力する前に、予め行われていても良い。
【００７９】
実際にオペレータ（操作者）Ｆがプレゼンテーションを開始させると、アプリケーション実行部３０１は、実行するアプリケーションに応じて位置・姿勢情報を取得すべき連携先機器候補のグループを選択する。そして、位置・姿勢情報取得部３０２は、センサ３２を通じてこれら連携先機器候補とオペレータ（操作者）Ｆ、ユーザＧ、スマートフォン４３等の連携元機器のリアルタイムの位置・姿勢情報を取得し、オペレータ（操作者）Ｆ、ユーザＧ、スマートフォン４３等の連携元機器、ディスプレイ１（４１）、ディスプレイ２（４２）、スピーカ１（４４）、スピーカ２（４５）等の連携先機器候補との間の距離ｌが距離計算部３３１によって、姿勢一致度θが姿勢一致度計算部３３２によって計算される。さらに、評価値計算部３３３は、連携先機器候補の重視度αと合わせて評価式に代入し、評価値を計算する。
【００８０】
たとえば、図６に示されているような状況で、ユーザＧ、オペレータ（操作者）Ｆ、スマートフォン（連携元機器）４３、ディスプレイ１（連携先機器）（４１）、ディスプレイ２（連携先機器）（４２）の位置と姿勢が次のような場合を考える。すなわち、ユーザＧの位置座標が（ｘ＝１０，ｙ＝１０，ｚ＝０）、姿勢が（θｘｚ＿ｕ＝０，θｙｚ＿ｕ＝０，θｘｙ＿ｕ＝３π/２）であるとする。オペレータ（操作者）Ｆの位置座標が（ｘ＝７，ｙ＝７，ｚ＝０）、姿勢が（θｘｚ＿ｕ＝０，θｙｚ＿ｕ＝０，θｘｙ＿ｕ＝π/２）であるとする。スマートフォン（連携元機器）４３の位置座標が（ｘ＝１０，ｙ＝１０，ｚ＝０）、姿勢が（θｘｚ＿ｍ＝０，θｙｚ＿ｍ＝０，θｘｙ＿ｍ＝３π/２）であるとする。ディスプレイ１（連携先機器）（４１）の位置座標が（ｘ’＝７，ｙ’＝１２，ｚ’＝０）、姿勢が（θ’ｘｚ＝０，θ’ｙｚ＝０，θ’ｘｙ＝３π/２）であるとする。ディスプレイ２（連携先機器）（４２）の位置座標が（ｘ”＝１２，ｙ”＝７，ｚ”＝０）、姿勢が（θ”ｘｚ＝０，θ”ｙｚ＝０，θ”ｘｙ＝π）であるとする。
【００８１】
図１２に示されている「画面表示の連携先機器候補」の中から連携先機器としてディスプレイ１（４１）、ディスプレイ２（４２）のいずれかを選択するかについて、簡単に説明する。
【００８２】
ディスプレイ１（４１）、ディスプレイ２（４２）に対する距離の重視度αｌと姿勢一致度の重視度αθはデータベース（ＤＢ）作成部３４において計算され、距離の重視度αｌ＝０．３、姿勢一致度の重視度αθ＝０．７であっても良い。
【００８３】
計算部３３の評価値計算部３３３は、上の数値を用いて、ディスプレイ１（連携先機器）（４１）、ディスプレイ２（連携先機器）（４２）に対する評価値ｆディスプレイ１、ｆディスプレイ２を計算する。たとえば、ディスプレイ１（連携先機器）（４１）、ディスプレイ２（連携先機器）（４２）に対する評価値ｆディスプレイ１、ｆディスプレイ２は、
【数９】
2015184813.tif 000011
のように計算され得る。この結果、評価値の高いディスプレイ１が連携先機器として選択され得る。
【００８４】
計算部３３の評価値計算部３３３は、図１２に示されている「音再生の連携先機器候補」の中から連携先機器としてスピーカ１（４４）、スピーカ２（４５）のいずれかを選択するかについてや、「明かりの連携先機器候補」の中から連携先機器として照明１（４７）、照明２（４８）、照明３（４９）、照明４（５０）のいずれかを選択するかについても、同様に得られる評価値に基づいて選択する。
【００８５】
計算部３３の選択部３３４は、評価値を参照して、連携先機器を決定するための判定を行う。
【００８６】
たとえば、上記の例のようにｆディスプレイ１＞ｆディスプレイ２である場合、ディスプレイ１を連携先機器として決定し、出力する。
【００８７】
図１３は、連携先機器の選択結果の例を示す図である。
ディスプレイ１を連携先機器として決定することと同様に計算部３３の評価値計算部３３３は、優先度２の音再生、明かりの連携先機器について、優先度１の画面表示機能であるディスプレイ１を連携元機器に設定し直し、評価値を計算する。この計算結果を用いて計算部３３の選択部３３４は、連携先機器としてスピーカ１と照明２を選択し、スピーカ１から音が再生され、照明１は消灯される。
【００８８】
このように、連携機器選択装置は、評価値計算部３３３と選択部３３４を含む。
評価値計算部３３３は、第１の機器（連携元機器）３０、４３を操作するオペレータ（操作者Ｆ）の位置および向きに関する第１の情報と、複数の第２の機器（連携先機器）４１、４２、４４、４５、４７、４８、４９、５０、５７の位置および向きに関する第２の情報と、第２の機器４１、４２、４４、４５、４７、４８、４９、５０、５７が有する機能に応じて付与される、複数の第２の機器（連携先機器）４１、４２、４４、４５、４７、４８、４９、５０、５７の位置に対する重視度および前記第２の機器の向きに対する重視度とを用いて第２の機器４１、４２、４４、４５、４７、４８、４９、５０、５７の評価値を計算し得る。
【００８９】
選択部３３４は、評価値を用いて、複数の第２の機器４１、４２、４４、４５、４７、４８、４９、５０、５７から、第１の機器３０、４３と連携する機器を選択し得る。
【００９０】
また、連携機器選択装置はさらに、姿勢一致度計算部３３２を含み得る。
姿勢一致度計算部３３２は、第２の機器４１、４２、４４、４５、４７、４８、４９、５０、５７の向きと第１の機器３０、４３の向きのなす角から得られる第１の姿勢一致度と、第２の機器４１、４２、４４、４５、４７、４８、４９、５０、５７の向きとオペレータ（操作者Ｆ）の向きのなす角から得られる第２の姿勢一致度を計算し得る。このとき、評価値計算部３３３は、第１の距離と第２の距離の少なくとも一つを用いて前記評価値を計算しても良い。
【００９１】
また、連携機器選択装置はさらに、距離計算部３３１を含み得る。
距離計算部３３１は、第２の機器４１、４２、４４、４５、４７、４８、４９、５０、５７と第１の機器３０、４３の間の第１の距離と、第２の機器４１、４２、４４、４５、４７、４８、４９、５０、５７とオペレータ（操作者Ｆ）の間の第２の距離の少なくとも一つを計算し得る。このとき、評価値計算部３３３は、第１の距離と第２の距離の少なくとも一つを用いて評価値を計算しても良い。
【００９２】
連携機器選択装置の評価値計算部３３３は、さらに、第１の機器３０、４３の位置および向きに関する第３の情報と、第２の機器４１、４２、４４、４５、４７、４８、４９、５０、５７のユーザＧの位置および向きに関する第４の情報の少なくとも一つを用いて第２の機器４１、４２、４４、４５、４７、４８、４９、５０、５７の評価値を計算しても良い。
【００９３】
連携機器選択装置はさらに、第２の機器４１、４２、４４、４５、４７、４８、４９、５０、５７の向きと前記ユーザＧの向きのなす角から得られる第３の姿勢一致度を計算する姿勢一致度計算部３３２を含み得る。そのとき、評価値計算部３３３は、第３の姿勢一致度を用いて前記評価値を計算し得る。
【００９４】
評価値計算部３３３は、第１の機器３０、４３に実装されるアプリケーションの実行に必要な機能から、第２の機器４１、４２、４４、４５、４７、４８、４９、５０、５７を選択し、選択された第２の機器４１、４２、４４、４５、４７、４８、４９、５０、５７の評価値を計算しても良い。
【００９５】
選択部３３４はさらに、アプリケーションの実行に必要な前記機能の各々に対して付与される優先度を用いて第１の機器３０、４３と連携する第２の機器４１、４２、４４、４５、４７、４８、４９、５０、５７を選択しても良い。
【００９６】
上記のような構成を採用することによって、連携機器選択装置は、
（Ｔ１）オペレータの位置情報のみで判定できない連携機器を、姿勢情報を利用することで自動選択する、
（Ｔ２）複数のオペレータと複数機器との相互の位置および姿勢に関する情報から定まる評価値に基づいて連携機器を自動選択する、
ことができ、
（Ｅ１）オペレータの位置情報のみで判定できない連携先機器を自動で選択することができる、
（Ｅ２）オペレータと複数機器とが連携する場面において、たとえば、オペレータと２つの機器の間の距離だけでは連携機器を選択できない場合でも、オペレータと連携元機器の位置および姿勢に関する情報から連携先機器を自動で選択することができる、
という効果を有し得る。
【００９７】
図１４は、連携機器選択装置の構成の例を示す図である。
このコンピュータ１００は、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＣＰＵ）１０２、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＲＯＭ）１０４、及びＲａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＲＡＭ）１０６を備えている。コンピュータ１００は、さらに、ハードディスク装置１０８、入力装置１１０、表示装置１１２、インターフェース装置１１４、及び記録媒体駆動装置１１６を備えている。なお、これらの構成要素はバスライン１１８を介して接続されており、ＣＰＵ１０２の管理の下で各種のデータを相互に授受することができる。
【００９８】
Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＣＰＵ）１０２は、このコンピュータ１００全体の動作を制御する演算処理装置であり、コンピュータ１００の制御処理部として機能する。
【００９９】
Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＲＯＭ）１０４は、所定の基本制御プログラムが予め記録されている読み出し専用半導体メモリである。ＣＰＵ１０２は、この基本制御プログラムをコンピュータ１００の起動時に読み出して実行することにより、このコンピュータ１００の各構成要素の動作制御が可能になる。
【０１００】
Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＲＡＭ）１０６は、ＣＰＵ１０２が各種の制御プログラムを実行する際に、必要に応じて作業用記憶領域として使用する、随時書き込み読み出し可能な半導体メモリである。
【０１０１】
ハードディスク装置１０８は、ＣＰＵ１０２によって実行される各種の制御プログラムや各種のデータを記憶しておく記憶装置である。ＣＰＵ１０２は、ハードディスク装置１０８に記憶されている所定の制御プログラムを読み出して実行することにより、後述する各種の制御処理を行えるようになる。
【０１０２】
入力装置１１０は、例えばマウス装置やキーボード装置であり、情報処理装置のユーザにより操作されると、その操作内容に対応付けられている各種情報の入力を取得し、取得した入力情報をＣＰＵ１０２に送付する。
【０１０３】
表示装置１１２は例えば液晶ディスプレイであり、ＣＰＵ１０２から送付される表示データに応じて各種のテキストや画像を表示する。
【０１０４】
インターフェース装置１１４は、このコンピュータ１００に接続される各種機器との間での各種情報の授受の管理を行う。
【０１０５】
記録媒体駆動装置１１６は、可搬型記録媒体１２０に記録されている各種の制御プログラムやデータの読み出しを行う装置である。ＣＰＵ１０２は、可搬型記録媒体１２０に記録されている所定の制御プログラムを、記録媒体駆動装置１１６を介して読み出して実行することによって、後述する各種の制御処理を行うようにすることもできる。なお、可搬型記録媒体１２０としては、例えばＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）規格のコネクタが備えられているフラッシュメモリ、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ−ＲＯＭ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）などがある。
【０１０６】
このようなコンピュータ１００を用いて連携機器選択装置を構成するには、例えば、上述の各処理部における処理をＣＰＵ１０２に行わせるための制御プログラム（連携機器選択プログラム）を作成する。作成された制御プログラムはハードディスク装置１０８若しくは可搬型記録媒体１２０に予め格納しておく。そして、ＣＰＵ１０２に所定の指示を与えてこの制御プログラム（連携機器選択プログラム）を読み出させて実行させる。こうすることで、連携機器選択装置が備えている機能がＣＰＵ１０２により提供される。
【０１０７】
＜連携機器選択処理＞
図１５〜１７を参照して、連携機器選択処理の流れを説明する。
【０１０８】
図１５は、第１事前準備処理における処理の流れの例を示す図、図１６は第２事前準備処理における処理の流れの例を示す図である。
【０１０９】
また、連携機器選択装置が図１４に示されているような汎用コンピュータ１００である場合には、下記の説明は、そのような処理を行う制御プログラム（連携機器選択プログラム）を定義する。すなわち、以下では、下記に説明する処理を汎用コンピュータに行わせる制御プログラム（連携機器選択プログラム）の説明でもある。
【０１１０】
第１事前準備処理と第２事前準備処理は、連携機器選択装置のオペレータ（操作者）が装置に入力をする以前に実施されていても良い。
【０１１１】
第１事前準備処理が開始されると、Ｓ１００でデータベース（ＤＢ）作成部３４は、たとえば、センサ３２によって得られた情報を用いて、設置したすべての機器に対し機器リストを作成し、機器データベース（ＤＢ）３１の機器リスト３１１に格納する。機器リストの例は、図１０に示されている。本ステップでは、たとえば、図１０に示されている機器リストの「機器リスト」の項目のみが作成されても良い。本ステップの処理が終了すると、処理はＳ１０２に進む。
【０１１２】
Ｓ１０２でデータベース（ＤＢ）作成部３４は、機能ごとの距離・姿勢一致度と評価式に対する重みを設定した評価テーブルを作成し、機器データベース（ＤＢ）３１の評価テーブル３１２に格納する。評価テーブルの例は、図１１に示されている。本ステップの処理が終了すると、処理はＳ１０４に進む。
【０１１３】
Ｓ１０４でスマートフォン３０のアプリケーション実行部３０１は、機器リスト３１１より、各機器が保持する機能を抽出する。本ステップでは、たとえば図１０に示されている機器リストのうち、各機器に対し、たとえば、「画面表示」、「音再生」、「明かり」、「空調」、「映像録画」、「録音」等の各機器が保持する機能が特定され得る。本ステップの処理が終了すると、処理はＳ１０６に進む。
【０１１４】
Ｓ１０６でデータベース（ＤＢ）作成部３４は、抽出した機能ごとの距離・姿勢一致度と評価式に対する重みを足し合わせ、機器の重視度を計算する。
【０１１５】
たとえばデータベース（ＤＢ）作成部３４において、スマートフォン４３に対する距離の重視度αｌ、スマートフォン４３に対する姿勢一致度の重視度αθは、
【数１０】
2015184813.tif 000012
のように計算され得る。
【０１１６】
本ステップの処理が終了すると、第１事前準備処理は終了する。
第２事前準備処理が開始されると、Ｓ２００でデータベース（ＤＢ）作成部３４は、スマートフォン３０のアプリケーション実行部３０１からの情報に基づいて、実施するアプリケーションに必要な機能を抽出する。たとえば、図１２では、アプリケーションに必要な機能として、「画像表示」、「音再生」、「明かり」の３つの機能が抽出されている。本ステップの処理が終了すると、処理はＳ２０２に進む。
【０１１７】
Ｓ２０２でデータベース（ＤＢ）作成部３４は、各機能が利用されるときの望ましい位置・姿勢を設定する。本ステップの処理が終了すると、処理はＳ２０４に進む。
【０１１８】
Ｓ２０４でデータベース（ＤＢ）作成部３４は、Ｓ２０２で設定された位置・姿勢に従って、距離、姿勢一致度、重視度を用いた評価式を作成する。本ステップの処理が終了すると、第２事前準備処理は終了する。
【０１１９】
図１７は、連携機器選択処理における処理の流れの例を示す図である。
処理が開始されると、Ｓ３００でスマートフォン３０のアプリケーション実行部３０１は、オペレータ（操作者）Ｆの機器操作の開始に関する情報を取得する。たとえば、ユーザ（操作者）Ｆの特定のアプリケーションを起動するための入力に関する情報を取得しても良い。本ステップの処理が終了すると、処理はＳ３０２に進む。
【０１２０】
Ｓ３０２で計算部３３の評価値計算部３３３は、連携が必要な機能のリストから連携先機器候補を特定する。たとえば、図１２に示されている例では、図５のスメートフォン３０のアプリケーション実行部３０１は、提携先機器は「画面表示」、「音再生」、「明かり」の機能を必要としている。図１２では計算部３３の評価値計算部３３３は、必要な機能の一つである「画面表示」の機能を有する機器として、ディスプレイ１（４１）、ディスプレイ２（４２）を抽出し、「画面表示の連携先機器候補」としてグループ化する。また、図１２では計算部３３の評価値計算部３３３は、必要な機能の一つである「音再生」の機能を有する機器として、スピーカ１（４４）、スピーカ２（４５）を抽出し、「音再生の連携先機器候補」としてグループ化する。また、図１２では計算部３３の評価値計算部３３３は、必要な機能の一つである「明かり」の機能を有する機器として、照明１（４７）、照明２（４８）、照明３（４９）、照明４（５０）を抽出し、「明かりの連携先機器候補」としてグループ化する。本ステップの処理が終了すると、処理はＳ３０４に進む。
【０１２１】
Ｓ３０４で距離計算部３３１、姿勢一致度計算部３３２は、センサ３２やスマートフォン３０（４３）の位置・姿勢情報取得部３０２によって取得されたユーザ（操作者）、連携元機器（たとえば、スマートフォン３０）、連携先機器（たとえば、ディスプレイ１（４１）、ディスプレイ２（４２）、スピーカ１（４４）、スピーカ２（４５）、カメラ４６、４台の照明、すなわち照明１（４７）、照明２（４８）、照明３（４９）、照明４（５０）、エアコン５７など）の位置・姿勢情報を取得する。本ステップの処理が終了すると、処理はＳ３０６に進む。
【０１２２】
Ｓ３０６で距離計算部３３１、姿勢一致度計算部３３２は、連携元機器と連携先機器候補との距離、姿勢一致度を計算する。たとえば、図６の例では、スマートフォン４３とディスプレイ１（４１）の間の距離、姿勢一致度を計算する。本ステップの処理が終了すると、処理はＳ３０８に進む。
【０１２３】
Ｓ３０８で距離計算部３３１、姿勢一致度計算部３３２は、ユーザＧと連携先機器候補との距離、姿勢一致度を計算する。たとえば、図６の例では、ユーザＧとディスプレイ１（４１）の間の距離、姿勢一致度を計算する。本ステップの処理が終了すると、処理はＳ３１０に進む。
【０１２４】
Ｓ３１０で距離計算部３３１、姿勢一致度計算部３３２は、操作者（オペレータ）と連携先候補との距離、姿勢一致度を計算する。たとえば、図６の例では、操作者（オペレータ）Ｆとディスプレイ１（４１）の間の距離、姿勢一致度を計算する。本ステップの処理が終了すると、処理はＳ３１２に進む。
【０１２５】
Ｓ３０６〜Ｓ３１０の処理の順序は、図１７の例に示された順序でなくても良い。Ｓ３０６、Ｓ３０８、Ｓ３１０の処理はどの順序で処理されても良い。
【０１２６】
Ｓ３１２で評価値計算部３３３は、距離、姿勢一致度、重視度を機器ＤＢ３１の評価式３１３に格納されている評価式に代入し、連携先機器候補ごとの評価値を計算する。
【０１２７】
評価式ｆは、連携先候補機器をｉ、ユーザをｕ、ユーザの総数をｎ、オペレータをａ、連携元機器をｍ、距離をｌｕ１、…、ｌｕｍ、ｌｍ、ｌａ、姿勢一致度をθｕｕ１、…、θｕｕｍ、θｍｍ、θｍｉ、θａａ、θａｉ、距離と姿勢一致度に対する重視度をαｉ，ｌ、αｉ，θとすると、
【数１１】
2015184813.tif 000013
であっても良い。本ステップの処理が終了すると、処理はＳ３１４に進む。
【０１２８】
Ｓ３１４で選択部３３４は、高い評価値を持つ連携先機器候補を実際の連携先機器として選択する。図１３に示されている例では、ディスプレイ１を連携先機器として選択し、優先度２の音再生、明かりの連携先機器について、計算部３３の選択部３３４は、連携先機器としてスピーカ１と照明２を選択し、スピーカ１から音が再生され、照明１は消灯される。本ステップの処理が終了すると、処理はＳ３１６に進む。
【０１２９】
Ｓ３１６で選択部３３４は、必要な機能を持つ連携機器がすべて選択されたか否かを判定する。この判定の結果が“ｙｅｓ”、すなわち必要な機能を持つ連携機器がすべて既に選ばれた場合は、処理はＳ３１８に進む。また、この判定の結果が“ｎｏ”、すなわち必要な機能を持つ連携機器がすべてまだ選択されていない場合は、処理はＳ３０４に戻る。
【０１３０】
Ｓ３１８でアプリケーション実行部３０１は、オペレータ（操作者）Ｆの機器操作が終了したか否かを判定する。この判定の結果が“ｙｅｓ”、すなわちオペレータ（操作者）Ｆの機器操作が終了した場合は、処理は終了する。また、この判定の結果が“ｎｏ”、すなわちオペレータ（操作者）Ｆの機器操作が終了していない場合は、処理はＳ３０４に戻る。
【０１３１】
上記のような処理を実行することによって、（Ｔ１）オペレータの位置情報のみで判定できない連携機器を、姿勢情報を利用することで自動選択する、（Ｔ２）複数のオペレータと複数機器との相互の位置および姿勢に関する情報から定まる評価値に基づいて連携機器を自動で選択することができ、（Ｅ１）オペレータの位置情報のみで判定できない連携先機器を自動で選択することができる、（Ｅ２）オペレータと複数機器とが連携する場面において、たとえば、ユーザと２つの機器の間の距離だけでは連携機器を選択できない場合でも、オペレータと連携元機器の位置および姿勢に関する情報から連携先機器を自動選択することができる、という効果を有し得る。
【符号の説明】
【０１３２】
３０、４３  連携元機器（スマートフォン）
３０１  アプリケーション実行部
３０２  位置・姿勢情報取得部
３１  機器データベース（ＤＢ）
３１１  機器リスト
３１２  評価テーブル
３１３  評価式
３２  センサ
３３  計算部
３３１  距離計算部
３３２  姿勢一致度計算部
３３３  評価値計算部
３３４  選択部
４１、４２  連携先機器（ディスプレイ）
４４、４５  連携先機器（スピーカー）
４６  カメラ（センサ）
４７、４８、４９、５０  連携先機器（照明）
５７  連携先機器（エアコンディショナー（エアコン））
【図１０】
2015184813.tif 000014
【図１１】
2015184813.tif 000015
【図１２】
2015184813.tif 000016
【図１４】
2015184813.tif 000017
【図１５】
2015184813.tif 000018
【図１６】
2015184813.tif 000019
【図１７】
2015184813.tif 000020
【図１】
2015184813.tif 000021
【図２】
2015184813.tif 000022
【図３】
2015184813.tif 000023
【図４】
2015184813.tif 000024
【図５】
2015184813.tif 000025
【図６】
2015184813.tif 000026
【図７】
2015184813.tif 000027
【図８】
2015184813.tif 000028
【図９】
2015184813.tif 000029
【図１３】
2015184813.tif 000030
【手続補正書】
【提出日】平成27年2月9日(2015.2.9)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００５６
【補正方法】変更
【補正の内容】
【００５６】
機器データベース（ＤＢ）３１と計算部３３とデータベース（ＤＢ）作成部３４は組み合わされて連携機器選択装置を構成し得る。しかしながら、機器データベース（ＤＢ）３１とデータベース（ＤＢ）作成部３４は外部装置として、計算部３３だけで連携機器選択装置を構成しても良い。以下では、連携機器選択装置は、機器データベース（ＤＢ）３１と計算部３３とデータベース（ＤＢ）作成部３４を含むものとする。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００８７
【補正方法】変更
【補正の内容】
【００８７】
図１３は、連携先機器の選択結果の例を示す図である。
ディスプレイ１を連携先機器として決定することと同様に計算部３３の評価値計算部３３３は、優先度２の音再生、明かりの連携先機器について、優先度１の画面表示機能であるディスプレイ１を連携元機器に設定し直し、評価値を計算する。この計算結果を用いて計算部３３の選択部３３４は、連携先機器としてスピーカ１と照明２を選択し、スピーカ１から音が再生され、照明２は消灯される。