(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024162061
(43)【公開日】2024-11-21
(54)【発明の名称】仮想空間の管理装置
(51)【国際特許分類】
G06T 19/00 20110101AFI20241114BHJP
G06F 3/01 20060101ALI20241114BHJP
【FI】
G06T19/00 300A
G06F3/01 510
【審査請求】未請求
【請求項の数】4
【出願形態】OL
(21)【出願番号】P 2023077240
(22)【出願日】2023-05-09
(71)【出願人】
【識別番号】392026693
【氏名又は名称】株式会社NTTドコモ
(74)【代理人】
【識別番号】110003177
【氏名又は名称】弁理士法人旺知国際特許事務所
(72)【発明者】
【氏名】横野 脩也
(72)【発明者】
【氏名】山添 隆文
(72)【発明者】
【氏名】片岡 敬志郎
【テーマコード(参考)】
5B050
5E555
【Fターム(参考)】
5B050AA03
5B050BA09
5B050BA10
5B050BA12
5B050CA08
5B050EA04
5B050EA26
5B050FA02
5B050GA08
5E555AA76
5E555BA02
5E555BA04
5E555BB02
5E555BB04
5E555BC04
5E555BD06
5E555BE17
5E555CA42
5E555CC26
5E555DB32
5E555DC19
5E555FA00
(57)【要約】
【課題】端末装置の前に居る複数のユーザが仮想空間サービスを一緒に楽しめるようにする。
【解決手段】端末装置と通信する仮想空間サーバ20は、検出部230a、配置部230b、第1更新部230c、及び第2更新部230dを備える。検出部230aは、仮想空間において第1アバターを操作する第1ユーザが使用する端末装置の前に第1ユーザの他に第2ユーザが居ることを検出する。配置部230bは、第2ユーザが検出された場合に、第2ユーザを表す第2アバターを仮想空間に配置する。第1更新部230cは、第1アバターの動作を指示する第1指示データを端末装置から受信した場合に、第1アバターを第1指示データに従って動作させる。第2更新部230dは、第2アバターの動作を指示する第2指示データを端末装置から受信した場合に、第2アバターを第2指示データに従って動作させる。
【選択図】
図5
【特許請求の範囲】
【請求項1】
第1アバターが配置される仮想空間において前記第1アバターを操作する第1ユーザが使用する端末装置の前に前記第1ユーザの他に第2ユーザが居ることを検出する検出部と、
前記検出部により前記第2ユーザが検出された場合に、前記第2ユーザを表す第2アバターを前記仮想空間に配置する配置部と、
前記第1アバターの動作を指示する第1指示データを前記端末装置から受信した場合に、前記第1アバターを前記第1指示データに従って動作させることにより、前記仮想空間を更新する第1更新部と、
前記第2アバターの動作を指示する第2指示データを前記端末装置から受信した場合に、前記第2アバターを前記第2指示データに従って動作させることにより、前記仮想空間を更新する第2更新部と、
を有する仮想空間の管理装置。
【請求項2】
前記検出部は、前記端末装置の周囲を撮像することで得られた撮像データに基づいて、前記第1ユーザの他に第2ユーザが前記端末装置の前に居ることを検出し、
前記配置部は、前記撮像データから抽出される前記第2ユーザの外見の特徴を反映させた前記第2アバターを前記仮想空間に配置する、
請求項1に記載の仮想空間の管理装置。
【請求項3】
前記仮想空間において前記第2アバターが移動できる範囲を、前記仮想空間における前記第1アバターの位置に応じて制限する制限部、を更に備える請求項1に記載の仮想空間の管理装置。
【請求項4】
前記制限部は、前記第2アバターが移動できる範囲を、前記仮想空間において表示する、請求項3に記載の仮想空間の管理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、仮想空間を管理する管理装置に関する。
【背景技術】
【0002】
特許文献1には、オンライン会議に関する技術が開示されている。特許文献1に開示の技術では、ユーザ毎にパーソナルコンピュータ等の端末装置が割り当てられる。また、特許文献1に開示の技術では、マイクロフォン等、オンライン会議に参加するための装置は複数のユーザによって共用される。特許文献1に開示の技術では、オンライン会議にログインしているユーザ以外の他のユーザが発言した場合、他のユーザのアバターを表示することにより、他のユーザが発言していることがオンライン会議において表現される。アバターとは、ユーザの分身として用いられるキャラクタ等のことである。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
近年、仮想店舗、仮想オフィス、仮想公園、又は仮想住宅等の各種仮想空間の利用を可能とする仮想空間サービスが普及しつつある。仮想空間に入場したユーザは、自身の分身であるアバターを用いて仮想空間において各種活動を行える。既存の仮想空間サービスでは、一台の端末装置を一人のユーザが操作することが前提になっている。このため、端末装置の前に複数のユーザが居ても、それら複数のユーザは仮想空間サービスを一緒に楽しむことはできなかった。
【課題を解決するための手段】
【0005】
本開示の好適な態様に係る管理装置は、仮想空間の管理装置であって、以下の検出部と、配置部と、第1更新部と、第2更新部と、を備える。前記検出部は、第1アバターが配置される仮想空間において前記第1アバターを操作する第1ユーザが使用する端末装置の前に前記第1ユーザの他に第2ユーザが居ることを検出する。前記配置部は、前記検出部により前記第2ユーザが検出された場合に、前記第2ユーザを表す第2アバターを前記仮想空間に配置する。前記第1更新部は、前記第1アバターの動作を指示する第1指示データを前記端末装置から受信した場合に、前記第1アバターを前記第1指示データに従って動作させることにより、前記仮想空間を更新する。前記第2更新部は、前記第2アバターの動作を指示する第2指示データを前記端末装置から受信した場合に、前記第2アバターを前記第2指示データに従って動作させることにより、前記仮想空間を更新する。
【発明の効果】
【0006】
本開示によれば、端末装置の前に居る複数のユーザが仮想空間サービスを一緒に楽しむことができる。
【図面の簡単な説明】
【0007】
【
図1】本開示の管理装置の一実施形態による仮想空間サーバ20を含む通信システム1の構成例を示すブロック図である。
【
図2】ユーザ装置10の構成例を示すブロック図である。
【
図3】ユーザ装置10(1)の前にユーザU(1)のみが居る状況下において撮像装置170により撮像される画像G1の一例を示す図である。
【
図4】ユーザ装置10(1)の前にユーザU(1)と他のユーザSUとが居る状況下において撮像装置170により撮像される画像G2の一例を示す図である。
【
図5】仮想空間サーバ20の構成例を示すブロック図である。
【
図6】仮想空間サーバ20の記憶装置220に記憶されているユーザテーブルTBL1の格納内容の一例を示す図である。
【
図7】仮想空間サーバ20の処理装置230がプログラムPR1に従って実現する配置部230bの機能を説明するための図である。
【
図8】仮想空間サーバ20の処理装置230がプログラムPR1に従って実現する第1更新部230c及び制限部230eの機能を説明するための図である。
【
図9】処理装置230がプログラムPR1に従って実行する管理方法における処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0008】
(A:実施形態)
図1は、本開示の管理装置の一実施形態による仮想空間サーバ20を含む通信システム1の構成例を示すブロック図である。通信システム1において、仮想空間サーバ20は、有線又は無線により通信網NWに接続される。通信網NWは例えばインターネット等の電気通信回線である。
図1に示されるように、通信網NWには、仮想空間サーバ20の他に、ユーザ装置10(1)、ユーザ装置10(2)…ユーザ装置10(j)の各々が仮想空間サーバ20と通信可能に接続される。jは2以上の任意の整数である。以下では、ユーザ装置10(1)、ユーザ装置10(2)…ユーザ装置10(j)の各々を区別する必要がない場合には、ユーザ装置10(1)、ユーザ装置10(2)…ユーザ装置10(j)はユーザ装置10と表記される。本実施形態の通信システム1には、複数のユーザ装置10が含まれるが、通信システム1に含まれるユーザ装置10の数は一つであってもよい。
【0009】
ユーザ装置10(k)は、ユーザU(k)によって使用される。kは1~jの任意の整数である。ユーザU(k)は、仮想空間サービスの利用登録を行ったユーザである。仮想空間サービスとは、ユーザに対応するアバターを仮想空間に配置し、このアバターの動作を通じて様々な活動を仮想空間において行えるようにすることをいう。以下では、仮想空間サービスの利用登録を行ったユーザはメインユーザと称される。本実施形態におけるユーザU(k)はメインユーザである。
【0010】
仮想空間サーバ20は、仮想空間サービスを提供する情報処理装置である。仮想空間サーバ20は、ユーザ装置10からの要求に応じて仮想空間データを生成し、生成した仮想空間データを当該ユーザ装置10へ送信する。仮想空間データは、ユーザ装置10に仮想空間の画像を表示させるためのデータである。仮想空間データには、仮想空間に配置される仮想オブジェクトの位置、形状、及び大きさを示す情報が含まれる。この仮想オブジェクトには、仮想空間へ入場したメインユーザのアバターが含まれる。
【0011】
ユーザ装置10は、画像を表示する機能を備える情報処理装置である。本実施形態におけるユーザ装置10はパーソナルコンピュータであるが、タブレット端末又はスマートフォン等の携帯機器等であってもよい。ユーザ装置10は、仮想空間サーバ20から受信した仮想空間データに従って、2次元の仮想空間の一部を示す画像を表示する。
【0012】
図2は、ユーザ装置10の構成例を示すブロック図である。
図2に示されるように、ユーザ装置10は、通信装置110と、記憶装置120と、処理装置130と、バス140と、表示装置150と、入力装置160と、撮像装置170と、を含む。通信装置110、記憶装置120、表示装置150、入力装置160、及び撮像装置170の各々と、処理装置130とは、データ授受を仲介するバス140によって相互に接続される。バス140は、単一のバスを用いて構成されてもよいし、要素間毎に異なるバスを用いて構成されてもよい。
【0013】
通信装置110は、他の装置と通信するためのハードウェア(送受信デバイス)である。通信装置110は、有線又は無線により通信網NWに接続される。通信装置110は、通信網NWに無線又は有線により接続される他の装置と通信網NWを介して通信する。この他の装置の一例としては仮想空間サーバ20が挙げられる。通信装置110は、通信網NWを介して仮想空間サーバ20から送信された仮想空間データを受信する。通信装置110は、受信した仮想空間データを処理装置130へ与える。また、通信装置110は、処理装置130から与えられるデータを通信網NWへ送信する。
【0014】
表示装置150は、外部に対して情報を表示するハードウェアである。表示装置150の具体例としては、液晶表示パネル又は有機EL表示パネルが挙げられる。入力装置160は、外部からの入力を受け付ける入力ハードウェアである。本実施形態における入力装置160は、アルファベットの各文字及び0~9までの各数字に各々対応する複数の操作子を備えたキーボードであるが、マウス、スイッチ、又はボタンであってもよい。本実施形態では、ユーザ装置10のユーザは、入力装置160に対する入力により、仮想空間への入場、アバターの動作、及び仮想空間からの退場を指示することができる。
【0015】
撮像装置170は、処理装置130による制御の下、当該撮像装置170を有するユーザ装置10の周囲を撮像するカメラである。撮像装置170は、撮像した画像を表す画像データ(以下、撮像データ)を処理装置130に出力する。本実施形態では、撮像装置170は、ユーザ装置10を使用中のユーザ、即ち表示装置150に対面しているユーザの姿を撮像可能なように、表示装置150の周囲に配置される。
【0016】
図3に示されるように、ユーザU(1)が一人でユーザ装置10(1)を使用中である場合、ユーザ装置10(1)の撮像装置170により、ユーザU(1)の姿が写った画像G1が撮像される。これに対して、
図4に示されるように、ユーザU(1)と他のユーザSUとがユーザ装置10(1)の前に並んでユーザ装置10(1)を使用中である場合には、ユーザ装置10(1)の撮像装置170によって、ユーザU(1)の姿とユーザSUの姿とが写った画像G2が撮像される。本実施形態におけるユーザSUは、ユーザU(1)の家族又は友人であり、仮想空間サービスの利用登録を行っていないユーザ、即ちメインユーザではないユーザである。以下では、メインユーザではないユーザはサブユーザと称される。
図4に示される例におけるユーザ装置10(1)は本開示における端末装置の一例である。
図4に示される例におけるユーザU(1)は本開示における第1ユーザの一例であり、ユーザSUは本開示における第2ユーザの一例である。
【0017】
記憶装置120は、処理装置130が読み取り可能な記録媒体である。記憶装置120は、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、及びRAM(Random Access Memory)等の少なくとも1つによって構成されてもよい。記憶装置220には、プログラムPR1が予め記憶されている。プログラムPR1は、ユーザ装置10のユーザに仮想空間サービスを利用させるためのプログラムである。
【0018】
処理装置130は、1又は複数のCPU(Central Processing Unit)を含む。処理装置130は、入力装置160に対する入力によりプログラムPR1の実行を指示されたことを契機として、記憶装置120からプログラムPR1を読み取る。処理装置130は、読み取ったプログラムPR1を実行する。処理装置130は、プログラムPR1を実行することによって、
図2に示される撮像制御部130a、表示制御部130b、及び動作指示部130cとして機能する。つまり、
図2に示される撮像制御部130a、表示制御部130b、及び動作指示部130cは、CPU等のコンピュータをプログラム等のソフトウェアに従って作動させることにより実現されるソフトウェアモジュールである。撮像制御部130a、表示制御部130b、及び動作指示部130cの各々が担う機能は次の通りである。
【0019】
撮像制御部130aは、ユーザ装置10の周囲の画像を、撮像装置170を用いて撮像する。撮像制御部130aは、撮像装置170により撮像された画像を表す撮像データを、通信装置110を用いて仮想空間サーバ20へ送信する。詳細については後述するが、
図4に示されるように、ユーザ装置10(1)がユーザU(1)とユーザSUとにより使用中である場合、仮想空間サーバ20は、ユーザ装置10(1)から受信した撮像データに基づいて、ユーザ装置10(1)の前にユーザU(1)とユーザSUとが居ることを検出する。
【0020】
表示制御部130bは、通信装置110によって仮想空間データが受信される毎に、当該仮想空間データの表す仮想空間の画像を表示装置150に表示する。詳細については後述するが、
図4に示されるように、ユーザ装置10(1)の前にユーザU(1)とユーザSUとが居ることを検出した場合、仮想空間サーバ20は、ユーザU(1)を表すアバターとユーザSUを表すアバターとを配置した仮想空間を表す仮想空間データを生成し、当該仮想空間データをユーザ装置10(1)に送信する。以下では、メインユーザを表すアバターはメインアバターと称され、サブユーザを表すアバターはサブアバターと称される。メインアバターは本開示における第1アバターの一例である。サブアバターは本開示における第2アバターの一例である。
【0021】
ユーザU(1)を表すメインアバターとユーザSUを表すサブアバターとが配置された仮想空間の画像を視認したユーザU(1)は、入力装置160において予めメインアバターに対応付けられた操作子を操作することにより、メインアバターの動作を指示することができる。同様に、ユーザU(1)を表すメインアバターとユーザSUを表すサブアバターとが配置された仮想空間の画像を視認したユーザSUは、入力装置160において予めサブアバターに対応付けられた操作子を操作することにより、サブアバターの動作を指示することができる。
【0022】
前述したように本実施形態における入力装置160は、キーボードであり、アルファベットの各文字に対応する26個の操作子と、0から9までの各数字に対応する10個の操作子とを備える。本実施形態では、入力装置160が有する複数の操作子のうち、例えば「W」、「A」、「S」、及び「D」の各キーがメインアバターに予め対応付けられている。「W」キーは、表示装置150の表示画像上でメインアバターを上方へ移動させることを指示するための操作子である。「A」キーはメインアバターを左方へ移動させることを指示するための操作子である。「S」キーはメインアバターを下方へ移動させることを指示するための操作子である。「D」キーは、メインアバターを右方へ移動させることを指示するための操作子である。
【0023】
また、本実施形態では、入力装置160が有する複数の操作子のうち、例えば「8」、「4」、「2」、及び「6」の各キーがサブアバターに予め対応付けられている。「8」キーは、表示装置150の表示画像上でサブアバターを上方へ移動させることを指示するための操作子である。「4」キーはサブアバターを左方へ移動させることを指示するための操作子である。「2」キーはサブアバターを下方へ移動させることを指示するための操作子である。「6」キーは、サブアバターを右方へ移動させることを指示するための操作子である。
【0024】
本実施形態では、メインアバターの動作を指示するための操作子群とサブアバターの動作を指示するための操作子群とは互いに重複しない。これら2つの操作子群が重複していないため、
図4に示されるように、ユーザ装置10(1)がユーザU(1)とユーザSUとによって使用中である場合、ユーザU(1)によってメインアバターの動作を指示する入力が入力装置160に対して行われている間においても、ユーザSUはサブアバターの動作を指示する入力を入力装置160に対して行うことができる。なお、アバターの動作を指示するための操作子群は、「H」、「J」、「K」及び「L」の各キーであってもよく、また、カーソルキーであってもよい。要は、メインアバターの動作を指示するための操作子群とサブアバターの動作を指示するための操作子群とが互いに重複していなければよい。なお、メインアバターの動作を指示するための操作子群とサブアバターの動作を指示するための操作子群とが分かり易くなるように、入力装置160の各操作子にLEDが設けられている場合には、操作子群毎に異なる色で当該LEDを発光させてもよい。
【0025】
動作指示部130cは、メインアバターの動作を指示する入力又はサブアバターの動作を指示する入力が入力装置160に対して為される毎に、当該入力により指示された内容を示す指示データを仮想空間サーバ20へ送信する。
【0026】
例えば、「W」、「A」、「S」又は「D」の何れかのキーが押下された場合には、動作指示部130cは、押下されたキーに応じた方向にメインアバターを移動させることを指示する指示データを仮想空間サーバ20へ送信する。以下では、「W」、「A」、「S」、及び「D」の各キーの押下に応じて動作指示部130cから仮想空間サーバ20へ送信される指示データ、即ちメインアバターの動作を指示する指示データは、第1指示データと称される。これに対して、「8」、「4」、「2」又は「6」の何れかのキーが押下された場合には、動作指示部130cは、押下されたキーに応じた方向にサブアバターを移動させることを指示する指示データを仮想空間サーバ20へ送信する。以下では、「8」、「2」、「4」、及び「6」の各キーの押下に応じて動作指示部130cから仮想空間サーバ20へ送信される指示データ、即ちサブアバターの動作を指示する指示データは、第2指示データと称される。
【0027】
詳細については後述するが、仮想空間サーバ20は、第1指示データを受信すると当該第1指示データに応じてメインアバターを動作させることにより仮想空間を更新し、更新後の仮想空間を表す仮想空間データを、当該第1指示データの送信元のユーザ装置10へ送信する。また、仮想空間サーバ20は、第2指示データを受信すると当該第2指示データに応じてサブアバターを動作させることにより仮想空間を更新し、更新後の仮想空間を表す仮想空間データを、当該第2指示データの送信元のユーザ装置10へ送信する。これらの仮想空間データの表す仮想空間の画像が表示制御部130bによって表示装置150に表示されることにより、メインユーザ及びサブユーザの各々は、メインユーザの操作に応じてメインアバターが動作する様子、及びサブユーザの操作に応じてサブアバターが動作する様子を、視認できる。
以上が、ユーザ装置10の構成である。
【0028】
図5は、仮想空間サーバ20の構成例を示すブロック図である。
図5に示されるように、仮想空間サーバ20は、通信装置210と、記憶装置220と、処理装置230と、バス240と、を含む。通信装置210及び記憶装置220の各々と、処理装置230とは、データ授受を仲介するバス240によって相互に接続される。バス240は、単一のバスを用いて構成されてもよいし、要素間毎に異なるバスを用いて構成されてもよい。
【0029】
図5では詳細な図示を省略したが、仮想空間サーバ20は、入力装置と表示装置とを含んでもよい。入力装置は、入力装置160と同様に、外部からの入力を受け付けるハードウェアである。仮想空間サーバ20の入力装置は、仮想空間サーバ20の運用及び保守を行う作業者の入力を受け付ける。表示装置は、表示装置150と同様に、外部に対して情報を表示するハードウェアである。仮想空間サーバ20の表示装置は、処理装置230による制御の下、各種画像を表示する。処理装置230による制御の下で仮想空間サーバ20の表示装置が表示する画像の一例としては、仮想空間サーバ20の運用及び保守のための各種入力を受け付ける入力画面の画像が挙げられる。
【0030】
通信装置210は、通信装置110と同様に、他の装置と通信するためのハードウェア(送受信デバイス)である。通信装置210は、有線又は無線により通信網NWに接続される。通信装置210は、通信網NWに無線又は有線により接続される他の装置と通信網NWを介して通信する。この他の装置の一例としてはユーザ装置10が挙げられる。通信装置210は、通信網NWを介してユーザ装置10から送信されたデータを受信する。通信装置210は、通信網NWを介して受信したデータを処理装置230へ与える。また、通信装置210は、処理装置230から与えられるデータを通信網NWへ送信する。
【0031】
記憶装置220は、処理装置230が読み取り可能な記録媒体である。記憶装置220は、記憶装置120と同様に、例えば、ROM、EPROM、EEPROM、及びRAM等の少なくとも1つによって構成されてもよい。記憶装置220には、プログラムPR2、及びユーザテーブルTBL1が予め記憶されている。
【0032】
図6は、ユーザテーブルTBL1の格納内容の一例を示す図である。
図6に示されるように、ユーザテーブルTBL1には、ユーザU(1)~ユーザU(j)の各々を一意に示すユーザ識別情報に対応付けて、アバターデータと、特徴量群と、が記憶されている。ユーザ識別情報は、仮想空間サービスの利用登録の際にユーザU(1)~ユーザU(j)の各々に割り当てられた一連番号である。アバターデータは、当該アバターデータに対応付けられたユーザ識別情報の示すユーザが仮想空間において使用するアバターを表す。特徴量群は、当該特徴量群に対応付けられたユーザ識別情報の示すユーザの外見の特徴、より詳細には当該ユーザの顔の特徴を表す特徴量の集合である。アバターデータ及び特徴量群は、仮想空間サービスの利用登録の際にユーザテーブルTBL1に記憶される。特徴量群の一例としては、ユーザを撮像して得られる撮像画像に基づく人物認識のための特徴量の集合が挙げられる。これら特徴量は、仮想空間サービスの利用登録の申請の際に添付された顔写真等から抽出される。なお、撮像画像に基づく人物認識のためのアルゴリズム、及び当該アルゴリズムにおいて用いる特徴量の抽出については既存技術が適宜用いられればよい。
【0033】
処理装置230は、処理装置130と同様に、1又は複数のCPUを含む。処理装置230は、仮想空間サーバ20の入力装置に対する入力によりプログラムPR2の実行を指示されたことを契機として、記憶装置220からプログラムPR2を読み取る。処理装置230は、読み取ったプログラムPR2を実行する。処理装置230は、プログラムPR2を実行することによって、
図5に示される検出部230a、配置部230b、第1更新部230c、第2更新部230d、及び制限部230eとして機能する。つまり、
図5に示される検出部230a、配置部230b、第1更新部230c、第2更新部230d、及び制限部230eは、撮像制御部130a、表示制御部130b、及び動作指示部130cと同様にソフトウェアモジュールである。検出部230a、配置部230b、第1更新部230c、第2更新部230d、及び制限部230eの各々が担う機能は次の通りである。
【0034】
検出部230aは、ユーザ装置10(k)から撮像データを受信したことを契機として、ユーザ装置10(k)の前にユーザU(k)以外の他のユーザが居ることを当該撮像データに基づいて検出する。なお、ユーザの姿を撮像することにより得られた撮像データに基づくユーザの検出については既存技術が適宜採用されればよい。
【0035】
例えば、仮想空間サーバ20が、
図3における画像G1を表す撮像データをユーザ装置10(1)から受信したとする。この場合、検出部230aは、当該撮像データの表す画像G1に対して人物認識を施すことにより、一人の人物を検出し、当該人物の外見の特徴を表す特徴量群を抽出する。本実施形態では、この特徴量群と一致する特徴量群がユーザU(1)を示すユーザ識別情報に対応付けてユーザテーブルTBL1に格納されているので、検出部230aは、ユーザ装置10(1)の前にユーザU(1)のみが居ること、即ちメインユーザのみが居ることを検出する。
【0036】
これに対して、仮想空間サーバ20が、
図4における画像G2を表す撮像データをユーザ装置10(1)から受信したとする。この場合、検出部230aは、当該撮像データの表す画像G2に対して人物認識を施すことにより、二人の人物を検出し、各人物についての特徴量群を抽出する。これら二人分の特徴量群のうちの一方は、ユーザU(1)を示すユーザ識別情報に対応付けてユーザテーブルTBL1に格納されているので、検出部230aは、ユーザ装置10(1)の前にユーザU(1)が居ることを検出する。また、上記二人分の特徴量群のうちの他方は、ユーザテーブルTBL1に格納されている何れの特徴量群とも一致しないため、検出部230aは、ユーザ装置10(1)の前に、ユーザU(1)~ユーザU(j)の何れとも異なる他のユーザ、即ちサブユーザが居ることを検出する。
【0037】
配置部230bは、検出部230aによりメインユーザが検出された場合に、当該メインユーザを表すアバター、即ちメインアバターを仮想空間に配置する。また、配置部230bは、検出部230aによりサブユーザが検出された場合には、当該サブユーザを表すアバター、即ちサブアバターを仮想空間に更に配置する。本実施形態では、配置部230bは、他のユーザについて検出部230aにより抽出された特徴量群に基づいて、当該他のユーザの外見の特徴を反映させたサブアバターを生成する。ユーザの外見の特徴を反映させたアバターの生成については既存技術が適宜採用されればよい。そして、配置部230bは、検出部230aにより検出されたメインユーザを表すメインアバターと検出部230aにより検出された他のユーザを表すサブアバターとを配置した仮想空間を表す仮想空間データを生成し、撮像データの送信元のユーザ装置10へ送信する。
【0038】
図7は、配置部230bの機能を説明するための図である。例えば、ユーザU(2)が入場中の仮想空間VSに、ユーザSUとユーザ装置10(1)を共用中のユーザU(1)が入場したとする。この場合、ユーザU(1)の他にユーザSUがユーザ装置10(1)の前に居ることが検出部230aによって検出される。配置部230bは、検出部230aによる検知結果に応じて、ユーザU(1)に対応するアバターMA1を仮想空間VSに配置するとともに、アバターMA1の配置位置を中心とする所定の範囲R内にユーザSUに対応するアバターSAを配置する。なお、上記所定の範囲Rの一例としては、アバターMA1の配置位置を中心とする所定半径の球の内側の領域、又はアバターMA1の配置位置に中心軸が位置し、且つ所定の半径及び所定の高さを有する円筒の内側の領域が挙げられる。
【0039】
そして、配置部230bは、ユーザU(2)を表すアバターMA2と、アバターMA1と、アバターSAと、を配置した仮想空間を表す仮想空間データをユーザ装置10(1)へ送信するとともに、当該仮想空間データをユーザ装置10(2)へ送信する。この仮想空間データの表す仮想空間VSの画像がユーザ装置10(2)の表示装置150に表示されることにより、ユーザU(2)は、ユーザU(1)とアバターSAにより表わされる他のユーザとがユーザ装置10(1)の前に居ることを、視覚を通じて把握できる。また、仮想空間VSの画像がユーザ装置10(1)の表示装置150に表示されることにより、ユーザU(1)及びユーザSUの各々は、自身に対応するアバターの様子を、視覚を通じて確認しながら、当該アバターの動作を指示する入力をユーザ装置10(1)の入力装置に対して行うことができる。
【0040】
第1更新部230cは、第1指示データを通信装置210により受信した場合に、メインアバターを当該第1指示データに従って動作させることにより、仮想空間を更新する。第1更新部230cは、更新後の仮想空間を表す仮想空間データを、第1指示データの送信元のユーザ装置10へ送信する。第2更新部230dは、第2指示データをユーザ装置から受信した場合に、後述する制限部230eにより制限された範囲において、サブアバターを当該第2指示データに従って動作させることにより、仮想空間を更新する。第2更新部230dは、更新後の仮想空間を表す仮想空間データを、第2指示データの送信元のユーザ装置10へ送信する。
【0041】
制限部230eは、仮想空間においてサブアバターが移動できる範囲を、仮想空間におけるメインアバターの位置に応じた範囲Rに制限する。本実施形態では、範囲Rを区画する面は透明であり、当該面はユーザU(1)、ユーザU(2)及びユーザSUには見えない。このように、仮想空間においてサブアバターが移動できる範囲には制限が設けられているため、例えば、
図7に示す仮想空間VSに対応する画像を視認したユーザSUがユーザ装置10(1)の入力装置160に対してアバターSAを右方へ移動させる操作を継続し続けたとしても、範囲Rを超えてアバターSAが右方へ移動することはない。サブアバターが移動できる範囲をメインアバターの位置に応じた範囲Rに制限するのは、サブアバターとメインアバターとが同時にユーザ装置10に表示されることを担保するためである。なお、サブユーザが、サブアバターの移動可能な範囲を、視覚を通じて把握できるように、制限部230eは、範囲Rの境界を区画する線(
図7に示す例では一点鎖線)を表示することにより、仮想空間において範囲Rを表示してもよい。
【0042】
また、サブアバターが移動できる範囲はメインアバターの位置に応じて定まるので、メインアバターが仮想空間内を移動すれば、当該仮想空間における当該範囲の位置も変化する。
図8は、アバターMA1の移動を指示する第1指示データを受信した場合における第1更新部230c及び制限部230eの動作を説明するための図である。
図8には、時刻t1~時刻t3までの時間区間において、アバターMA2に近づくようにアバターMA1を左方へ移動させる操作がユーザU(1)によって為された場合について図示されている。
図8に示されるように、アバターMA1が左方へ移動すると、範囲Rも左方へ移動する。そして、時刻t2において範囲RがアバターSAの位置まで達すると、以降、第1更新部230cは、範囲Rの外へアバターSAが出ないように、範囲Rを区画する球面又は円筒面によって押されるようにアバターSAを左方へ移動させる。なお、
図8では、範囲Rの移動に伴って移動する前のアバターSAが点線で描画されている。なお、本実施形態では、アバターMA1の操作と並列にアバターSAを操作することが可能であるため、アバターMA1と連れ立ってアバターSAが移動するようにユーザSUが操作を行えば、範囲Rを区画する球面又は円筒面によって押されるようにアバターSAが移動することはない。
【0043】
また、プログラムPR2に従って作動している処理装置230は、本開示に特有の管理方法を実行する。
図9は、本開示の管理方法における処理の流れを示すフローチャートである。
図9に示されるように、本開示の管理方法には、検出処理S110、配置処理S120、第1判定処理S130、第2判定処理S140、第1更新処理S150、第2更新処理S160、及び第3判定処理S170が含まれる。
図9に示される各処理の処理内容は次の通りである。
【0044】
検出処理S110では、処理装置230は、検出部230aとして機能する。検出処理S110では、処理装置230は、ユーザ装置10(k)から撮像データを受信したことを契機として、ユーザ装置10(k)の前にユーザU(k)以外の他のユーザが居ることを当該撮像データに基づいて検出する。
【0045】
配置処理S120では、処理装置230は、配置部230bとして機能する。配置処理S120では、処理装置230は、検出処理S110にてメインユーザの他にサブユーザが検出された場合に、メインアバターとサブアバターとを仮想空間に配置する。そして、処理装置230は、当該仮想空間を表す仮想空間データを撮像データの送信元のユーザ装置10(k)へ送信する。なお、検出処理S110にてメインユーザのみが検出された場合には、処理装置230は、メインアバターのみを仮想空間に配置し、当該仮想空間を表す仮想空間データを、撮像データの送信元のユーザ装置10(k)へ送信する。
【0046】
第1判定処理S130では、処理装置230は、通信装置210によるデータの受信を待ち受け、通信装置210によりユーザ装置10(k)から受信したデータが第1指示データ又は第2指示データであるか否かを判定する。通信装置210によりユーザ装置10(k)から受信したデータが、第1指示データ又は第2指示データである場合、第1判定処理S130の判定結果は“Yes”となる。通信装置210によりユーザ装置10(k)から受信したデータが、第1指示データではなく、且つ第2指示データでもない場合、第1判定処理S130の判定結果は“No”となる。第1判定処理S130の判定結果が“Yes”である場合、処理装置230は、第2判定処理S140を実行する。第1判定処理S130の判定結果が“No”である場合、処理装置230は、第3判定処理S170を実行する。
【0047】
第2判定処理S140では、処理装置230は、通信装置210によりユーザ装置10(k)から受信したデータが、第1指示データであるか否かを判定する。通信装置210によりユーザ装置10(k)から受信したデータが、第1指示データである場合、第2判定処理S140の判定結果は“Yes”となる。通信装置210によりユーザ装置10(k)から受信したデータが、第2指示データである場合、第2判定処理S140の判定結果は“No”となる。第2判定処理S140の判定結果が“Yes”である場合、処理装置230は、第1更新処理S150を実行した後に第1判定処理S130を再度実行する。第2判定処理S140の判定結果が“No”である場合、処理装置230は、第2更新処理S160を実行した後に第1判定処理S130を再度実行する。
【0048】
第1更新処理S150では、処理装置230は、第1更新部230c及び制限部230eとして機能する。第1更新処理S150では、処理装置230は、通信装置210により受信した第1指示データに従ってメインアバターを動作させることにより、仮想空間を更新し、更新後の仮想空間を表す仮想空間データを第1指示データの送信元のユーザ装置10(k)へ送信する。なお、第1更新処理S150では、処理装置230は、第1指示データに従ってメインアバターを動作させることにより、仮想空間内をメインアバターが移動する場合、メインアバターの移動に伴って範囲Rを移動させ、必要であれば、範囲Rの移動に伴ってサブアバターを移動させる。
【0049】
第2更新処理S160では、処理装置230は、第2更新部230d及び制限部230eとして機能する。第2更新処理S160では、処理装置230は、メインアバターの位置に応じて定まる範囲R内で、サブアバターを、通信装置210により受信した第2指示データに従って動作させることにより、仮想空間を更新し、更新後の仮想空間を表す仮想空間データを第2指示データの送信元のユーザ装置10(k)へ送信する。
【0050】
第3判定処理S170では、処理装置230は、通信装置210により受信したデータが仮想空間からの退場を指示するデータであるか否かを判定する。通信装置210により受信したデータが仮想空間からの退場を指示するデータである場合、第3判定処理S170の判定結果は“Yes”となる。通信装置210により受信したデータが、仮想空間からの退場を指示するデータではない場合、第3判定処理S170の判定結果は“No”となる。第3判定処理S170の判定結果が“No”である場合、処理装置230は第1判定処理S130を再度実行し、通信装置210によるデータの受信を待ち受ける。第3判定処理S170の判定結果が“Yes”である場合、処理装置230は、本管理方法の実行を終了する。
【0051】
以上説明したように、本実施形態の仮想空間サーバ20によれば、ユーザ装置10(k)の前にユーザU(k)と他のユーザとが居る場合、ユーザU(k)を表すメインアバターと他のユーザを表すサブアバターとが仮想空間に配置される。そして、ユーザU(k)と他のユーザの各々は、自身に対応するアバターの動作を指示する操作をユーザ装置10(k)の入力装置160に対して行うことによって、自身に対応するアバターを仮想空間において動作させることができる。従って、本実施形態によれば、ユーザ装置10(k)の前に居る複数のユーザが仮想空間サービスを一緒に楽しむことができる。
【0052】
(B:変形)
本開示は、以上に例示した実施形態に限定されない。具体的な変形の態様は以下の通りである。以下の例示から任意に選択された2以上の態様が併合されてもよい。
(B-1:変形例1)
上記実施形態における配置部230bは、サブアバターとしてサブユーザの外見の特徴を反映させたアバターを仮想空間内に配置した。しかし、サブアバターにサブユーザの外見の特徴を反映させることは必須ではなく、配置部230bは、サブアバターとして予め定められたアバターを仮想空間内に配置してもよい。また、制限部230eは必須ではなく、省略されてもよい。
【0053】
(B-2:変形例2)
上記実施形態における検出部230aは、通信装置210を用いて受信した撮像データに基づいて、当該撮像データの送信元のユーザ装置10(k)の前にユーザU(k)以外に他のユーザが居ることを検出した。しかし、ユーザ装置10(k)は、周囲の音を収音する収音装置と当該収音装置により収音した音を表す音データを仮想空間サーバ20へ送信する機能とを備えていてもよい。この場合、検出部230aは、ユーザ装置10(k)から受信した音データに基づいて当該ユーザ装置10(k)の前にユーザU(k)以外の他のユーザが居ることを検出してもよい。この場合、特徴量群として音声の特徴を表す特徴量の集合が用いられればよい。
【0054】
(B-3:変形例3)
上記実施形態では、仮想空間サーバ20の記憶装置220にプログラムPR2が記憶されていたが、プログラムPR2が単体で製造又は販売されてもよい。プログラムPR2を販売する際の購入先へのプログラムPR2の提供態様としては、フラッシュROM等のコンピュータ読み取り可能な記録媒体にプログラムPR2を書き込んで配布する態様、又は電気通信回線経由のダウンロードにより配布する態様が挙げられる。
【0055】
(B-4:変形例4)
上記実施形態における検出部230a、配置部230b、第1更新部230c、第2更新部230d、及び制限部230eは何れもソフトウェアモジュールであった。しかし、検出部230a、配置部230b、第1更新部230c、第2更新部230d、及び制限部230eのうちの何れか一つ、何れか二つ、何れか三つ、何れか四つ、又は全部はハードウェアモジュールであってもよい。ハードウェアモジュールの具体例としては、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)等が挙げられる。検出部230a、配置部230b、第1更新部230c、第2更新部230d、及び制限部230eのうちの何れか一つ、何れか二つ、何れか三つ、何れか四つ、又は全部がハードウェアモジュールであっても、上記実施形態と同一の効果が奏される。
【0056】
(C:その他)
(1)上述した実施形態では、記憶装置220としてROM及びRAM等が例示されたが、記憶装置220は、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、Blu-ray(登録商標)ディスク)、スマートカード、フラッシュメモリデバイス(例えば、カード、スティック、キードライブ)、CD-ROM(Compact Disc-ROM)、レジスタ、リムーバブルディスク、ハードディスク、フロッピー(登録商標)ディスク、磁気ストリップ、データベース、サーバその他の適切な記憶媒体であってもよい。
【0057】
(2)上述した実施形態において、説明した情報、信号等は、様々な異なる技術の何れかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップ等は、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
【0058】
(3)上述した実施形態において、入出力された情報等は特定の場所(例えば、メモリ)に保存されてもよいし、管理テーブルを用いて管理してもよい。入出力される情報等は、上書き、更新、又は追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
【0059】
(4)上述した実施形態において、判定は、1ビットで表される値(0か1か)によって行われてもよいし、真偽値(Boolean:true又はfalse)によって行われてもよいし、数値の比較(例えば、所定の値との比較)によって行われてもよい。
【0060】
(5)上述した実施形態において例示した処理手順、シーケンス、フローチャート等は、矛盾の無い限り、順序が入れ替えられてもよい。例えば、本開示において説明した方法については、例示的な順序を用いて様々なステップの要素が提示されており、提示された特定の順序に限定されない。
【0061】
(6)
図5に例示された各機能は、ハードウェア及びソフトウェアの少なくとも一方の任意の組み合わせによって実現される。また、各機能ブロックの実現方法は特に限定されない。すなわち、各機能ブロックは、物理的又は論理的に結合した1つの装置を用いて実現されてもよいし、物理的又は論理的に分離した2つ以上の装置を直接的又は間接的に(例えば、有線、無線等を用いて)接続し、これら複数の装置を用いて実現されてもよい。機能ブロックは、上記1つの装置又は上記複数の装置にソフトウェアを組み合わせて実現されてもよい。
【0062】
(7)上述した実施形態で例示したプログラムは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、他の名称で呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順、機能等を意味するよう広く解釈されるべきである。
【0063】
また、ソフトウェア、命令、情報等は、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、有線技術(同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL:Digital Subscriber Line)等)及び無線技術(赤外線、マイクロ波等)の少なくとも一方を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び無線技術の少なくとも一方は、伝送媒体の定義内に含まれる。
【0064】
(8)前述の各形態において、「システム」及び「ネットワーク」という用語は、互換的に使用される。
【0065】
(9)本開示において説明した情報、パラメータ等は、絶対値を用いて表されてもよいし、所定の値からの相対値を用いて表されてもよいし、対応する別の情報を用いて表されてもよい。
【0066】
(10)上述した実施形態において、携帯機器には、移動局(MS:Mobile Station)である場合が含まれる。移動局は、当業者によって、加入者局、モバイルユニット、加入者ユニット、ワイヤレスユニット、リモートユニット、モバイルデバイス、ワイヤレスデバイス、ワイヤレス通信デバイス、リモートデバイス、モバイル加入者局、アクセス端末、モバイル端末、ワイヤレス端末、リモート端末、ハンドセット、ユーザエージェント、モバイルクライアント、クライアント、又はいくつかの他の適切な用語で呼ばれる場合もある。また、本開示においては、「移動局」、「ユーザ端末(user terminal)」、「端末装置(UE:User Equipment)」、「端末」等の用語は、互換的に使用され得る。
【0067】
(11)上述した実施形態において、「接続された(connected)」、「結合された(coupled)」という用語、又はこれらのあらゆる変形は、2又はそれ以上の要素間の直接的又は間接的なあらゆる接続又は結合を意味し、互いに「接続」又は「結合」された2つの要素間に1又はそれ以上の中間要素が存在することを含むことができる。要素間の結合又は接続は、物理的なものであっても、論理的なものであっても、或いはこれらの組み合わせであってもよい。例えば、「接続」は、「アクセス」で読み替えられてもよい。本開示で使用する場合、2つの要素は、1又はそれ以上の電線、ケーブル及びプリント電気接続の少なくとも一つを用いて、並びにいくつかの非限定的かつ非包括的な例として、無線周波数領域、マイクロ波領域及び光(可視及び不可視の両方)領域の波長を有する電磁エネルギー等を用いて、互いに「接続」又は「結合」されると考えることができる。
【0068】
(12)上述した実施形態において、「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
【0069】
(13)本開示で使用する「判断(determining)」、「決定(determining)」という用語は、多種多様な動作を包含する場合がある。「判断」、「決定」は、例えば、判定(judging)、計算(calculating)、算出(computing)、処理(processing)、導出(deriving)、調査(investigating)、探索(looking up、search、inquiry)(例えば、テーブル、データベース又は別のデータ構造での探索)、確認(ascertaining)した事を「判断」「決定」したとみなす事等を含み得る。また、「判断」、「決定」は、受信(receiving)(例えば、情報を受信すること)、送信(transmitting)(例えば、情報を送信すること)、入力(input)、出力(output)、アクセス(accessing)(例えば、メモリ中のデータにアクセスすること)した事を「判断」「決定」したとみなす事等を含み得る。また、「判断」、「決定」は、解決(resolving)、選択(selecting)、選定(choosing)、確立(establishing)、比較(comparing)等した事を「判断」「決定」したとみなす事を含み得る。つまり、「判断」「決定」は、何らかの動作を「判断」「決定」したとみなす事を含み得る。また、「判断(決定)」は、「想定する(assuming)」、「期待する(expecting)」、「みなす(considering)」等で読み替えられてもよい。
【0070】
(14)上述した実施形態において、「含む(include)」、「含んでいる(including)」及びそれらの変形が使用されている場合、これらの用語は、用語「備える(comprising)」と同様に、包括的であることが意図される。更に、本開示において使用されている用語「又は(or)」は、排他的論理和ではないことが意図される。
【0071】
(15)本開示において、例えば、英語でのa,an及びtheのように、翻訳により冠詞が追加された場合、本開示は、これらの冠詞の後に続く名詞が複数形であることを含んでもよい。
【0072】
(16)本開示において、「AとBが異なる」という用語は、「AとBが互いに異なる」ことを意味してもよい。なお、当該用語は、「AとBが夫々Cと異なる」ことを意味してもよい。「離れる」、「結合される」等の用語も、「異なる」と同様に解釈されてもよい。
【0073】
(17)本開示において説明した各態様/実施形態は単独で用いてもよいし、組み合わせて用いてもよいし、実行に伴って切り替えて用いてもよい。また、所定の情報の通知(例えば、「Xであること」の通知)は、明示的に行うものに限られず、暗黙的(例えば、当該所定の情報の通知を行わない)ことによって行われてもよい。
【0074】
(D:上述の形態又は変形例から把握される態様)
以上、本開示について詳細に説明したが、当業者にとっては、本開示が本開示中に説明した実施形態に限定されるものではないということは明らかである。本開示は、請求の範囲の記載により定まる本開示の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。従って、本開示の記載は、例示説明を目的とするものであり、本開示に対して何ら制限的な意味を有するものではない。上述の実施形態又は変形例の少なくとも1つから以下の態様が把握される。
【0075】
本開示の第1の態様による管理装置は、仮想空間の管理装置であって、以下の検出部と、配置部と、第1更新部と、第2更新部と、を備える。前記検出部は、第1アバターが配置される仮想空間において前記第1アバターを操作する第1ユーザが使用する端末装置の前に前記第1ユーザの他に第2ユーザが居ることを検出する。前記配置部は、前記検出部により前記第2ユーザが検出された場合に、前記第2ユーザを表す第2アバターを前記仮想空間に配置する。前記第1更新部は、前記第1アバターの動作を指示する第1指示データを前記端末装置から受信した場合に、前記第1アバターを前記第1指示データに従って動作させることにより、前記仮想空間を更新する。前記第2更新部は、前記第2アバターの動作を指示する第2指示データを前記端末装置から受信した場合に、前記第2アバターを前記第2指示データに従って動作させることにより、前記仮想空間を更新する。第1の態様の管理装置によれば、端末装置の前に居る第1ユーザと第2ユーザとが仮想空間サービスを一緒に楽しむことができる。
【0076】
本開示の第2の態様(第1の態様の例)による管理装置における前記検出部は、前記端末装置の周囲を撮像することで得られた撮像データに基づいて、前記第1ユーザの他に第2ユーザが前記端末装置の前に居ることを検出してもよい。この第2の態様における前記配置部は、前記撮像データから抽出される前記第2ユーザの外見の特徴を反映させた前記第2アバターを生成してもよい。第2の態様の管理装置によれば、第2ユーザを表すアバターに当該第2ユーザの外見の特徴を反映させることができる。
【0077】
本開示の第3の態様(第2の態様の例)による管理装置は、前記仮想空間において前記第2アバターが移動できる範囲を、前記仮想空間における前記第1アバターの位置に応じて制限する制限部、を更に備えてもよい。第3の態様の管理装置によれば、第2アバターが移動できる範囲を仮想空間における第1アバターの位置に応じて制限することができる。
【0078】
本開示の第4の態様(第3の態様の例)における制限部は、前記第2アバターが移動できる範囲を、前記仮想空間において表示してもよい。第4の態様の管理装置によれば、第2アバターが移動できる範囲が表示されるので、第2ユーザは視覚を通じて当該範囲を把握することができる。
【符号の説明】
【0079】
1…通信システム、10…ユーザ装置、20…仮想空間サーバ、110,210…通信装置、120,220…記憶装置、130,230…処理装置、130a…撮像制御部、130b…表示制御部、130c…動作指示部、230a…検出部、230b…配置部、230c…第1更新部、230d…第2更新部、230e…制限部、140,240…バス、150…表示装置、160…入力装置、170…撮像装置、PR1,PR2…プログラム、TBL1…ユーザテーブル。