JP2010107997A - 情報表示方法及びシステム及びプログラム - Google Patents
情報表示方法及びシステム及びプログラム Download PDFInfo
- Publication number
- JP2010107997A JP2010107997A JP2009295884A JP2009295884A JP2010107997A JP 2010107997 A JP2010107997 A JP 2010107997A JP 2009295884 A JP2009295884 A JP 2009295884A JP 2009295884 A JP2009295884 A JP 2009295884A JP 2010107997 A JP2010107997 A JP 2010107997A
- Authority
- JP
- Japan
- Prior art keywords
- screen
- output
- content
- display area
- window
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Digital Computer Display Output (AREA)
- Controls And Circuits For Display Device (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
【課題】 様々な形状の公共空間に対して、様々な画面に構成で、映像出力を行うことができ、また、人物の動作に対して滑らかなウィンドウの出力位置、サイズの制御を可能にする。
【解決手段】 本発明は、出力装置において、出力制御装置から割り当てられた仮想画面の領域と表示領域を記憶手段に保存し、画面状態制御装置から画面状態制御命令取得して画面状態を更新し、画面更新命令に基づいて仮想画面を設定し、コンテンツを取得し、出力制御装置からの命令により仮想画面の中の設定された表示領域のみ描画し、表示する。
【選択図】 図1
【解決手段】 本発明は、出力装置において、出力制御装置から割り当てられた仮想画面の領域と表示領域を記憶手段に保存し、画面状態制御装置から画面状態制御命令取得して画面状態を更新し、画面更新命令に基づいて仮想画面を設定し、コンテンツを取得し、出力制御装置からの命令により仮想画面の中の設定された表示領域のみ描画し、表示する。
【選択図】 図1
Description
本発明は、情報表示方法及びシステム及びプログラムに係り、特に、1つまたは、複数の画面に対して、出力を制御する命令に基づき、静止画、動画、文字情報等のコンテンツの出力を動的に変更することが可能な情報表示方法及びシステム及びプログラムに関する。
センサ技術の発達によって、人物の自然な動作を検出することが可能となってきている(例えば、特許文献1,2、非特許文献1参照)。このような認識技術と、情報表示技術とを組み合わせることによって、新しい形の情報提供が可能となってきている。本発明は、このような情報提供の中で特に駅構内やビルのエントランスといった大規模の公共空間の中で、人物等の動作をセンサによって検出し、センサから出力される情報に基づいて、画面出力を変更するサービスを実現するためのものである。
具体的なサービスの例を以下に示す。
・追従広告:
初期状態では、大画面に何も表示しないが、単なる背景画像等を表示する。ここで、大画面は、設置場所に応じて複数の出力装置で構成される。図15の例では、3台の出力装置を用いて横長の画面を生成している。
初期状態では、大画面に何も表示しないが、単なる背景画像等を表示する。ここで、大画面は、設置場所に応じて複数の出力装置で構成される。図15の例では、3台の出力装置を用いて横長の画面を生成している。
人物の動作に応じて以下のように出力を変化させる。
―画面の前に人物が入ると情報表示用のウィンドウをポップアップする。ウィンドウ上には、静止画、動画、文字情報等を表示する。
−人物が画面の前を動くと、その動きに合わせてウィンドウが追従して動く。
このように、人物の自然な動きに合わせて、大画面上のウィンドウの出力位置や出力されるコンテンツが動的に変更され、効果的な情報提供を実現する。
また、カメラの映像から人物の位置や指差し方向を検出することができる。従来技術では、このようにして検出された人物の位置や指差し方向を座標変換し、情報を出力する画面上での座標を決定する方法がある(例えば、特許文献3参照)。
木原民雄、草原真知子、安田浩「場のアートとネットワークアート」情報処理学会論文誌Vol.44 No2, 2003年
しかしながら、上記のようなサービスを実現する場合、従来技術では、以下のような問題がある。
(1)出力画面構成の問題:
様々な公共空間を対象とする場合、表示装置(ディスプレイ等)の設置場所やプロジェクタで投影可能な投影面には、例えば、図16に示すような様々な画面構成を柔軟に作成できなければならない。
様々な公共空間を対象とする場合、表示装置(ディスプレイ等)の設置場所やプロジェクタで投影可能な投影面には、例えば、図16に示すような様々な画面構成を柔軟に作成できなければならない。
(a)例えば、駅のコンコース等で、間に障害物がない空間で利用する場合には、プロジェクタを複数台横に並べて投影し、横長の画面を構成する。
(b)例えば、吹き抜けのあるような大きな空間で利用する場合等には、複数台のプロジェクタで上下左右に投影し、巨大な画面を構成する。
(c)例えば、駅のコンコース等で、障害物の関係で連続した投影面が得られない空間で利用する場合等は、離れて設置した複数のディスプレイで全体の画面を構成する。
上記の従来技術では、このような複数の画面出力を制御する場合、通常、1つの映像をまず生成し、専用ハードウェア装置等でその映像の中から各ディスプレイに出力領域を割り当てる方法を用いる。しかし、この方法では、上記のような画面構成を柔軟に切り替えることが難しく、使用できるディスプレイの台数も限られている。また、もともと生成した1つの映像の中から、領域を割り当てることになるので、各ディスプレイに表示される映像の解像度が低くなってしまうという問題がある。
(2)追従精度の問題:
現状の技術を用いると、カメラ映像から人物の位置や指差しの方向を検出することができる。従来技術では、このようにして検出された人物の位置や指差し方向を座標変換し、情報を出力する画面上での座標を決定する方法があるが、完全な人物の位置検出は、現状技術では困難であり、位置の検出誤差等のノイズが多く含まれる。また、検出にはある程度の時間がかかるため、検出値は、時間的に離散的な値となってしまっている。そのため、上記に述べた人物に追従する広告を実現する場合、人物の移動に応じて、滑らかな追従を実現することができず、情報表示用のウィンドウの出力位置がぶれてしまうという問題がある。また、多人数に追従する多数のウィンドウを同時に制御する場合、大量の位置制御のための命令を生成する必要がある。
現状の技術を用いると、カメラ映像から人物の位置や指差しの方向を検出することができる。従来技術では、このようにして検出された人物の位置や指差し方向を座標変換し、情報を出力する画面上での座標を決定する方法があるが、完全な人物の位置検出は、現状技術では困難であり、位置の検出誤差等のノイズが多く含まれる。また、検出にはある程度の時間がかかるため、検出値は、時間的に離散的な値となってしまっている。そのため、上記に述べた人物に追従する広告を実現する場合、人物の移動に応じて、滑らかな追従を実現することができず、情報表示用のウィンドウの出力位置がぶれてしまうという問題がある。また、多人数に追従する多数のウィンドウを同時に制御する場合、大量の位置制御のための命令を生成する必要がある。
本発明は、上記の点に鑑みなされたもので、様々な形状の公共空間に対して、様々な画面に構成で、映像出力を行うことができ、また、人物の動作に対して滑らかなウィンドウの出力位置、サイズの制御が可能な情報表示方法及びシステム及びプログラムを提供することを目的とする。
図1は本発明の原理を説明するための図である。
本発明(請求項1)は、複数の出力装置の画面上への出力を制御命令に応じて動的に変更するシステムにおける情報表示方法において、
画面の状態制御を行うための画面状態制御命令を生成する画面状態制御装置と、
出力装置の表示する表示領域の管理と、表示の同期制御を行う出力制御装置と、
コンテンツを配信するコンテンツ管理装置と、
各出力装置上で稼動し、コンテンツを表示するウィンドウの座標とサイズを自動計算する画面状態管理手段と、同期を取りながらコンテンツを表示する出力画面生成手段と、コンテンツの取得や管理を行うコンテンツ取得手段と、を有する出力装置からなるシステム上で、
出力制御装置において、出力装置が内部にもつ画面の領域である仮想画面のサイズを指定し、仮想画面上の座標で指定される一部の領域を各出力装置の表示領域に割り当てる表示領域指定過程(ステップ1)と、
出力装置の出力画面生成手段において、出力制御装置により割り当てられた表示領域を記憶手段に保存する表示領域設定過程(ステップ2)と、
画面状態制御装置において、画面状態制御命令を出力装置の画面状態管理手段に送信する状態制御命令生成過程(ステップ3)と、
出力装置の画面状態管理手段において、画面状態制御命令を受けて画面更新命令を出力画面生成手段に送信する画面状態更新過程(ステップ4)と、
出力装置の出力画面生成手段において、画面状態管理手段から画面更新命令を受け取ると、該画面更新命令に基づいて仮想画面を生成し、コンテンツ取得要求をコンテンツ取得手段に送信する仮想画面生成過程(ステップ5)と、
出力装置のコンテンツ取得手段において、コンテンツ管理装置に要求し、コンテンツを取得して、出力画面生成手段に送信するコンテンツ取得過程(ステップ6)と、
出力制御装置において、出力画面生成手段から描画を行う準備が整ったことを知らせる画面同期信号を受信し、全ての出力装置からの画面同期信号が揃う、または、一定時間が経過する毎に、取得すると、出力装置の出力画面生成手段に対して画面描画信号を送信する描画同期過程(ステップ7)と、
出力装置の出力画面生成手段において、画面描画信号を受信すると、割り当てられた表示領域を描画し、表示する画面描画過程(ステップ8)と、からなり、
仮想画面生成過程(ステップ5)において、
出力画面生成手段が、
仮想的な画面に、ウィンドウを配置し、コンテンツの設定終了後すぐに、画面同期信号を出力制御装置に送信し、画面描画を待機し、画面描画信号を受信したらすぐに、描画処理を行う。
画面の状態制御を行うための画面状態制御命令を生成する画面状態制御装置と、
出力装置の表示する表示領域の管理と、表示の同期制御を行う出力制御装置と、
コンテンツを配信するコンテンツ管理装置と、
各出力装置上で稼動し、コンテンツを表示するウィンドウの座標とサイズを自動計算する画面状態管理手段と、同期を取りながらコンテンツを表示する出力画面生成手段と、コンテンツの取得や管理を行うコンテンツ取得手段と、を有する出力装置からなるシステム上で、
出力制御装置において、出力装置が内部にもつ画面の領域である仮想画面のサイズを指定し、仮想画面上の座標で指定される一部の領域を各出力装置の表示領域に割り当てる表示領域指定過程(ステップ1)と、
出力装置の出力画面生成手段において、出力制御装置により割り当てられた表示領域を記憶手段に保存する表示領域設定過程(ステップ2)と、
画面状態制御装置において、画面状態制御命令を出力装置の画面状態管理手段に送信する状態制御命令生成過程(ステップ3)と、
出力装置の画面状態管理手段において、画面状態制御命令を受けて画面更新命令を出力画面生成手段に送信する画面状態更新過程(ステップ4)と、
出力装置の出力画面生成手段において、画面状態管理手段から画面更新命令を受け取ると、該画面更新命令に基づいて仮想画面を生成し、コンテンツ取得要求をコンテンツ取得手段に送信する仮想画面生成過程(ステップ5)と、
出力装置のコンテンツ取得手段において、コンテンツ管理装置に要求し、コンテンツを取得して、出力画面生成手段に送信するコンテンツ取得過程(ステップ6)と、
出力制御装置において、出力画面生成手段から描画を行う準備が整ったことを知らせる画面同期信号を受信し、全ての出力装置からの画面同期信号が揃う、または、一定時間が経過する毎に、取得すると、出力装置の出力画面生成手段に対して画面描画信号を送信する描画同期過程(ステップ7)と、
出力装置の出力画面生成手段において、画面描画信号を受信すると、割り当てられた表示領域を描画し、表示する画面描画過程(ステップ8)と、からなり、
仮想画面生成過程(ステップ5)において、
出力画面生成手段が、
仮想的な画面に、ウィンドウを配置し、コンテンツの設定終了後すぐに、画面同期信号を出力制御装置に送信し、画面描画を待機し、画面描画信号を受信したらすぐに、描画処理を行う。
図2は、本発明の原理構成図である。
本発明(請求項2)は、複数の出力装置100の画面上への出力を制御命令に応じて動的に変更するシステムにおける情報表示システムであって、
画面の状態制御を行うための画面状態制御命令を生成する画面状態制御装置10と、
出力装置100の表示する表示領域の管理と、表示の同期制御を行う出力制御装置20と、
コンテンツを配信するコンテンツ管理装置30と、
各出力装置100上で稼動し、コンテンツを表示するウィンドウの座標とサイズを自動計算する画面状態管理手段40と、同期を取りながらコンテンツを表示する出力画面生成手段50と、コンテンツの取得や管理を行うコンテンツ取得手段60と、を有する出力装置100からなり、
画面状態制御装置10は、
画面状態制御命令を出力装置100の画面状態管理手段40に送信する状態制御命令生成手段を有し、
出力制御装置20は、
出力装置100が内部にもつ画面の領域である仮想画面のサイズを指定し、仮想画面上の座標で指定される一部の領域を各出力装置の表示領域に割り当てる表示領域指定手段と、
出力装置100の出力画面生成手段50から描画を行う準備が整ったことを知らせる画面同期信号を受信し、全ての出力装置100からの画面同期信号が揃う、または、一定時間が経過する毎に、取得すると、該出力装置100の該出力画面生成手段50に対して画面描画信号を送信する描画同期手段と、を有し、
出力装置100の画面状態管理手段40は、
画面状態制御装置10から画面状態制御命令を受けて画面更新命令を出力画面生成手段50に送信する画面状態更新手段を有し、
出力装置100の出力画面生成手段50は、
出力制御装置20により割り当てられた表示領域を記憶手段に保存する表示領域設定手段と、
画面状態管理手段40から画面更新命令を受け取ると、該画面更新命令に基づいて仮想画面を生成し、コンテンツ取得要求をコンテンツ取得手段60に送信する仮想画面生成手段と、
出力制御装置20から画面描画信号を受信すると、割り当てられた表示領域を描画し、表示する画面描画手段と、を有し、
出力装置100のコンテンツ取得手段60は、
コンテンツ管理装置30に要求し、コンテンツを取得して、出力画面生成手段50に送信するコンテンツ取得手段60を有し、
出力装置100の出力画面生成手段50は、
仮想的な画面に、ウィンドウを配置し、コンテンツの設定終了後すぐに、画面同期信号を出力制御装置20に送信し、画面描画を待機し、画面描画信号を受信したらすぐに、描画処理を行う。
画面の状態制御を行うための画面状態制御命令を生成する画面状態制御装置10と、
出力装置100の表示する表示領域の管理と、表示の同期制御を行う出力制御装置20と、
コンテンツを配信するコンテンツ管理装置30と、
各出力装置100上で稼動し、コンテンツを表示するウィンドウの座標とサイズを自動計算する画面状態管理手段40と、同期を取りながらコンテンツを表示する出力画面生成手段50と、コンテンツの取得や管理を行うコンテンツ取得手段60と、を有する出力装置100からなり、
画面状態制御装置10は、
画面状態制御命令を出力装置100の画面状態管理手段40に送信する状態制御命令生成手段を有し、
出力制御装置20は、
出力装置100が内部にもつ画面の領域である仮想画面のサイズを指定し、仮想画面上の座標で指定される一部の領域を各出力装置の表示領域に割り当てる表示領域指定手段と、
出力装置100の出力画面生成手段50から描画を行う準備が整ったことを知らせる画面同期信号を受信し、全ての出力装置100からの画面同期信号が揃う、または、一定時間が経過する毎に、取得すると、該出力装置100の該出力画面生成手段50に対して画面描画信号を送信する描画同期手段と、を有し、
出力装置100の画面状態管理手段40は、
画面状態制御装置10から画面状態制御命令を受けて画面更新命令を出力画面生成手段50に送信する画面状態更新手段を有し、
出力装置100の出力画面生成手段50は、
出力制御装置20により割り当てられた表示領域を記憶手段に保存する表示領域設定手段と、
画面状態管理手段40から画面更新命令を受け取ると、該画面更新命令に基づいて仮想画面を生成し、コンテンツ取得要求をコンテンツ取得手段60に送信する仮想画面生成手段と、
出力制御装置20から画面描画信号を受信すると、割り当てられた表示領域を描画し、表示する画面描画手段と、を有し、
出力装置100のコンテンツ取得手段60は、
コンテンツ管理装置30に要求し、コンテンツを取得して、出力画面生成手段50に送信するコンテンツ取得手段60を有し、
出力装置100の出力画面生成手段50は、
仮想的な画面に、ウィンドウを配置し、コンテンツの設定終了後すぐに、画面同期信号を出力制御装置20に送信し、画面描画を待機し、画面描画信号を受信したらすぐに、描画処理を行う。
本発明(請求項3)は、請求項2に記載の情報表示システムを構成する画面状態制御装置、出力制御装置、コンテンツ管理装置、出力装置のそれぞれが有する各手段としてコンピュータを機能させるための情報表示プログラムである。
本発明は、公共空間で、多くの人物がいる場合でも、公共空間内の個人やグループの動作に合わせたウィンドウ出力座標、サイズの制御を行うことができる。詳しくは、
−人数が、画面に出力できる最大ウィンドウ数よりも少ない場合は、各個人に合わせて1つのウィンドウを出力することができる。
−人数が、画面に出力できる最大ウィンドウ数よりも少ない場合は、各個人に合わせて1つのウィンドウを出力することができる。
−人数が、最大ウィンドウ数を越えた場合は、自動的に人物のグルーピングを行い、各グループ人数に応じた個数のウィンドウを割り当てることができる。
−グルーピングは、速度と位置データベース行っているので、似た速度を持ち、位置が近い人物を同じグループとすることができる(近くにいるが反対向きに歩いている人が同じグループになるということは起こらない)。
−全体が移動していて一人の人物が立ち止まった場合など、特徴的な動きをした人物には、優先的にウィンドウが割り当てられる。
以下、図面と共に本発明の実施の形態を説明する。
図3は、本発明の一実施の形態における情報表示システムの構成を示し、図4は、本発明の一実施の形態における情報表示システムの処理のシーケンス図を示す。
図3に示すシステムは、複数の出力PC(パーソナルコンピュータ)100と、画面状態制御装置10、出力制御装置20、コンテンツ管理装置30から構成される。
出力PC100は、画面状態管理部40、出力画面生成部50、コンテンツ取得部60、コンテンツ保存データベース70、ディスプレイ80を有し、画面状態管理部40、出力画面生成部50、コンテンツ取得部60は当該出力PC100上で稼動するものとし、これらが稼動する出力PC100は複数台(n)あるものとする。
画面状態制御装置10、出力制御装置20、コンテンツ管理装置30は、各1つであり、同一のPC上で稼動しても、別のPC上で稼動してもよい。各装置の処理は以下の通りである。図4に示す各処理と共に説明する。
画面状態制御装置10は、ユーザによる入力または、センサ等から取得した情報に基づいて、状態制御命令生成処理(ステップ10)を実行し、画面状態制御命令を、全ての出力PC100上の画面状態管理部40へ送信する。ここで、センサ等から取得した情報から画面状態制御命令を生成する方法は特に限定しないが、その一例を実施例の欄で後述する。
画面状態制御命令では、ウィンドウの生成、削除、及び、ディスプレイ80上に既に出力されているウィンドウが持つ変数(以下、プロパティ)の取得、及び、更新ができる。画面状態制御命令は、以下の形式である。
<制御名>,<ウィンドウID>?,([<プロパティ名>,<プロパティ値>])*
上記の、'<a>'は変数、'?'は0か1回の出現、'()*'は0回以上の繰り返しを表す。
上記の、'<a>'は変数、'?'は0か1回の出現、'()*'は0回以上の繰り返しを表す。
また、上記の「制御名」は、画面に対する制御の名前であり、"ウィンドウ生成"or"ウィンドウ削除"or"プロパティ取得"or"プロパティ更新"が指定可能である。
・「ウィンドウID」は、ディスプレイ上のウィンドウを表す識別子である。
・「プロパティ名」は、プロパティの名前である。
・「プロパティ値」は、プロパティの値である。
上記のウィンドウID,プロパティ名、プロパティ値は、各制御毎に必要に応じて指定される。
プロパティ名として指定できる変数は以下の通りである。
・座標(x,y)
・座標速度(vx,vy)
・座標加速度(ax,ay)
・サイズ(width,height)
・サイズ変更速度(v_width,v_height)
・サイズ変更加速度(a_width,a_height)
・コンテンツ名,
・コンテンツ形式(文字列,静止画,動画等)、
・動画コンテンツの再生状態(再生,停止,逆再生等)
例えば、以下の画面状態制御命令は、ウィンドウIDが「W1」のウィンドウのサイズを(10,10)とし、座標を(30,20)に変更する。
・座標速度(vx,vy)
・座標加速度(ax,ay)
・サイズ(width,height)
・サイズ変更速度(v_width,v_height)
・サイズ変更加速度(a_width,a_height)
・コンテンツ名,
・コンテンツ形式(文字列,静止画,動画等)、
・動画コンテンツの再生状態(再生,停止,逆再生等)
例えば、以下の画面状態制御命令は、ウィンドウIDが「W1」のウィンドウのサイズを(10,10)とし、座標を(30,20)に変更する。
プロパティ更新,W1,[サイズ(10,10)][座標(30,20)]
また、画面状態制御装置10は、画面状態制御命令の戻り値として、画面状態を取得する。画面状態は、以下の形式である。
また、画面状態制御装置10は、画面状態制御命令の戻り値として、画面状態を取得する。画面状態は、以下の形式である。
<状態1>、<制御名>、<ウィンドウID>?,([<プロパティ名>、<値>])*
ここで、「状態1」は、"成功"か"失敗"を持つ。他の項目は、画面状態制御命令自体に指定された値か、画面状態管理部40によって割り当てられた値である。詳細は、画面状態管理部40の処理において後述する。
ここで、「状態1」は、"成功"か"失敗"を持つ。他の項目は、画面状態制御命令自体に指定された値か、画面状態管理部40によって割り当てられた値である。詳細は、画面状態管理部40の処理において後述する。
出力制御装置20は、前処理として、表示領域指定処理(ステップ20)では、仮想画面の領域と、各出力PC100が実際に表示する領域を指定し、これらの情報を表示領域指定命令として、各出力PC100上の出力画面生成部50へ送信する。表示領域指定処理(ステップ20)の詳細は、図5のフローチャートで後述する。
描画同期処理(ステップ30)では、出力制御装置20が、各出力PC100の出力画面生成部50から描画を行う準備が整ったことを知らせる画面同期信号を取得する。全ての出力PC100から画面同期信号を受け取るか、一定時間が経過した場合には、全ての出力PC100上の出力画面生成部50に対して、画面描画信号を送信する。
コンテンツ管理装置30は、前処理として、プレ配信処理(ステップ40)では、全ての出力PC100上のコンテンツ取得部60へ利用が予定されているコンテンツを配信する。ここで、コンテンツは、文字列、静止画、動画等であり、コンテンツデータベース90に予め蓄積されているか、任意のタイミングでネットワーク200から取得する。
リアルタイム配信処理(ステップ50)では、コンテンツ管理装置30が、コンテンツ配信要求をコンテンツ取得部60から受け取り、指定されたコンテンツを、全ての出力PC100上のコンテンツ取得部60へ配信する。ここで、コンテンツ配信要求は、以下の形式である。
<ファイル名>、<ファイル形式>、<フレーム番号>
ここで、「フレーム番号」は、ファイル形式が動画の場合のみ指定される。
ここで、「フレーム番号」は、ファイル形式が動画の場合のみ指定される。
画面状態管理部40は、画面状態更新処理(ステップ60)において、速度や加速度からウィンドウの座標やサイズを自動計算し、画面更新命令を出力画面生成部50に送信する。また、画面状態制御装置10から、画面状態制御命令を受け取ると、ウィンドウの生成や削除、プロパティの取得や更新を行い、画面状態を画面状態制御装置10へ送信する。画面状態更新処理(ステップ60)は、非常に短い時間で繰り返し実行される。画面状態更新処理(ステップ60)の処理は、図6、図7において後述する。
出力画面生成部50は、前処理として、表示領域設定処理(ステップ70)において、表示領域指定命令に指定された、仮想画面の領域(x_low,,x_upper,y_low,y_upper)
と各出力PC100の表示領域(x1,x2,y1,y2)を内部記憶へ保存する。表示領域指定命令の詳細については、図5の表示領域指定処理(ステップ20)のフローチャートで後述する。
と各出力PC100の表示領域(x1,x2,y1,y2)を内部記憶へ保存する。表示領域指定命令の詳細については、図5の表示領域指定処理(ステップ20)のフローチャートで後述する。
仮想画面生成処理(ステップ80)では、画面状態管理部40から画面更新命令を受け取ると、まず、出力コンテンツに変更があるかを確認する。出力コンテンツに変更がある場合には、コンテンツ取得要求をコンテンツ取得部60に送信し、コンテンツを取得する。次に、画面更新命令で指定された座標、サイズでウィンドウを仮想画面に配置し、コンテンツを設定する。このようにして、仮想画面の生成が完了すると、画面同期信号を、出力制御装置20へ送信する。仮想画面生成処理(ステップ80)の詳細は図8で後述する。
画面描画処理(ステップ90)では、出力制御装置20から画面描画信号を受け取ると、仮想画面の中の表示領域設定処理(ステップ70)で設定された表示領域のみを描画し、ディスプレイやプロジェクタに表示する。
コンテンツ取得部60は、前処理として、コンテンツ蓄積処理(ステップ100)において、コンテンツ管理装置30からコンテンツを取得し、コンテンツ保存データベース70に格納する。
コンテンツ取得処理(ステップ110)では、コンテンツ取得要求を出力画面生成部50から受信すると、コンテンツ保存データベース70からコンテンツを取得するか、コンテンツ配信要求をコンテンツ管理装置30に送信し、コンテンツを取得する。このようにして取得したコンテンツをコンテンツ転送処理(ステップ120)によって、出力画面生成部50へ送信する。
次に、上記の処理の詳細な手順について説明する。
図5は、本発明の一実施の形態における表示領域指定処理のフローチャートである。
出力制御装置20における表示領域指定処理(ステップ20)では、まず、仮想画面を指定し、仮想画面上の一部の領域を各出力PC100の表示領域に割り当てる。この処理を具体例を図9に示す。
図9では、まず、仮想画面を、
(x_low,x_upper,y_low,y_upper))=(0,320,0,100)
と指定する。次に、出力PC1と出力PC2が、
(x1,x2,y1,y2)=(0,100,20,80),(100,200,20,80)
の連続した領域を、出力PC3が、
(x1,x2,y1,y2)=(220,320,20,80)
の少し離れた領域を表示する画面構成となるように指定している。
(x_low,x_upper,y_low,y_upper))=(0,320,0,100)
と指定する。次に、出力PC1と出力PC2が、
(x1,x2,y1,y2)=(0,100,20,80),(100,200,20,80)
の連続した領域を、出力PC3が、
(x1,x2,y1,y2)=(220,320,20,80)
の少し離れた領域を表示する画面構成となるように指定している。
以下の手順によって、このような割り当てが行われる。
ステップ201) 出力PC100の台数を手動または、自動的に指定する。以下出力PC100の台数をnとし、i番目の出力PC100を出力PC(i)で表す。ここで、出力PC100の台数の自動的な指定方法は、特に限定しないが、例えば、ネットワーク上に出力PC100の存在を確認する命令をブロードキャスト(または、マルチキャスト)し、返信があった出力PC100の台数を計測する方法等がある。
ステップ202) 手動または自動的に仮想画面の領域を指定する。ここで、仮想画面の領域は、(x_low, x_upper, y_low,,y_upper)で囲まれた矩形領域とする。
x_low< x_upper, y_low,<y_upper
を満たすものとする。
を満たすものとする。
ここで、自動的な指定方法は特に限定しないが、例えば、出力PC100の台数等から自動計算する方法がある。
ステップ203) 変数iに0を代入する。また、空の出力PCリストを生成する。ここで、出力PCリストの要素は以下の形式である。
<ネットワークアドレス>,<表示領域(x1,x2,y1,y2)>
ステップ204) iとnを比較し、i<nの場合はステップ205へ移行し、そうでない場合はステップ210に移行する。
ステップ204) iとnを比較し、i<nの場合はステップ205へ移行し、そうでない場合はステップ210に移行する。
ステップ205) 出力PC(i)のネットワークアドレスを、手動または自動的に指定する。自動的な指定方法は、特に限定しないが、例えば、ステップ201と同様の方法で、返信のあった各出力PC100のアドレスを自動設定する方法がある。
ステップ206) 出力PC(i)の表示領域を、手動または自動的に指定する。ここで、表示領域は、(x1,x2,y1,y2)で囲まれた矩形領域とする。自動的な指定方法は特に限定しないが、例えば、n台の横長ディスプレイを構成したい場合は、以下のように自動計算することができる。
出力PC(0)のx1=0
出力PC(0)のx2=width(各ディスプレイの表示領域の幅)
出力PC(0)のy1=0
出力PC(0)のy2=height(各ディスプレイの表示領域の高さ)
出力PC(i+1)のx1=出力PC(i)のx2
出力PC(i+1)のx2=出力PC(i+1)のx1+width
出力PC(i+1)のy1=0
出力PC(i+1)のy2=height
ステップ207) 以下の条件を満たすかを判定する。
出力PC(0)のx2=width(各ディスプレイの表示領域の幅)
出力PC(0)のy1=0
出力PC(0)のy2=height(各ディスプレイの表示領域の高さ)
出力PC(i+1)のx1=出力PC(i)のx2
出力PC(i+1)のx2=出力PC(i+1)のx1+width
出力PC(i+1)のy1=0
出力PC(i+1)のy2=height
ステップ207) 以下の条件を満たすかを判定する。
x_low<x1<x2<x_upper
y_low<y1<y2<y_upper
を満たす場合はステップ208へ、満たさない場合はステップ206へ移行する。
y_low<y1<y2<y_upper
を満たす場合はステップ208へ、満たさない場合はステップ206へ移行する。
ステップ208) ステップ205,206で指定された出力PC(i)のネットワークアドレスと、表示領域を出力PCリストへ追加する。
ステップ209) iにi+1を代入する。
ステップ210) iに0を代入する。
ステップ211) iとnを比較し、i<nの場合は、ステップ212へ移行し、そうでない場合は終了する。
ステップ212) 出力PC(i)に指定されたネットワークアドレスを持つ出力PC上の出力画面生成部50に、仮想画面の領域と出力PC(i)の表示領域を、表示領域指定命令として送信する。
ステップ213) iにi+1を代入する。
次に、画面状態管理部40における、画面状態更新処理(ステップ60)の処理について図6、図7に沿って説明する。
ステップ601) 前回この処理が呼び出された時刻を内部記憶から取得し、現在時刻との差分時間をtに代入する。現在時刻を内部記憶へ保存する。
ステップ602) 画面状態制御装置10から送られてきた未処理の画面状態制御命令があるかを確認し、ある場合には、ステップ603へ、ない場合にはステップ618へ移行する。
ステップ603) 画面状態制御命令eを取得する。ここで、画面状態制御命令は、画面状態制御装置10の項で示したように以下の形式である。
<制御名>,<ウィンドウID>、([<プロパティ名>,<プロパティ値>])*
ステップ604) 画面状態制御命令が正しく実行されたかを表す変数1に「失敗」を代入する。
ステップ604) 画面状態制御命令が正しく実行されたかを表す変数1に「失敗」を代入する。
ステップ605) eの制御名を確認し、制御名が、ウィンドウ生成の場合にはステップ606へ、それ以外の場合にはステップ608へ移行する。
ステップ606) 以下のステップによってウィンドウを生成する。
(a)現在使用されていないウィンドウIDを自動的に生成する。
(b)eに指定されたプロパティに、指定されたプロパティ値を設定する。
(c)eに指定されていないプロパティには、デフォルト値を設定する。
(d)これらの値を持つ、ウィンドウ状態wを生成する。ここで、ウィンドウ状態は、以下の形式である。
<ウィンドウID>,([<プロパティ名>、<値>])*
(e)wを内部記憶に蓄積されているウィンドウ状態リストに追加する。
(e)wを内部記憶に蓄積されているウィンドウ状態リストに追加する。
(f)内部記憶に、保存してあるウィンドウ状態の個数nにn+1を代入する。
ステップ607) ウィンドウ生成処理(ステップ606)が問題なく終了した場合には、1に「成功」を代入する。失敗した場合は、何も行わない。
ステップ608) eの制御名を確認し、制御名がウィンドウ削除の場合には、ステップ609へ、それ以外の場合はステップ611へ移行する。
ステップ609) eに指定されたウィンドウIDを持つウィンドウ状態を、内部記憶から削除する。内部記憶に保存してあるウィンドウ状態の個数nにn−1を代入する。
ステップ610) ウィンドウ削除処理(ステップ609)が問題なく終了した場合には、「成功」を代入する。失敗した場合は何も行わない。
ステップ611) 制御名を確認し、制御名がプロパティ更新の場合にはステップ612へ、それ以外の場合はステップ614へ移行する。
ステップ612) eに指定されたウィンドウIDを持つウィンドウ状態wを、内部記憶から取得する。次に、wのプロパティを、eで指定されたプロパティ値に変更する。更新したウィンドウ状態wを内部記憶に保存する。
ステップ613) プロパティ更新(ステップ612)が問題なく終了した場合には、1に「成功」を代入する。失敗した場合は何も行わない。
ステップ614) 制御名を確認し、制御名が「プロパティ取得」の場合にはステップ615へ、それ以外の場合にはステップ617へ移行する。
ステップ615) eに指定されたウィンドウIDを持つウィンドウ状態wを内部記憶から取得する。次に、eに指定されたプロパティのプロパティ値をwから取得する。
ステップ616) プロパティ取得(ステップ615)が問題なく終了した場合には、1に「成功」を代入する。失敗した場合は何も行わない。
ステップ617) 変数lとeに指定された制御名eやwから取得されたウィンドウID、プロパティ名、プロパティ値を、画面状態として画面状態制御装置10へ送信する。ここで画面状態は、画面状態制御装置10の項で述べたように以下の形式である。
<状態1>,<制御名>,<ウィンドウID>?,(「<プロパティ名>,<値>」)*
ステップ618) iに0を代入する。
ステップ618) iに0を代入する。
ステップ619) iとnを比較し、i<nの場合は、ステップ620へ、そうでない場合はステップ631へ移行する。
ステップ620) 内部記憶に蓄積されているウィンドウ状態リストのi番目のウィンドウ状態wを取得する。
ステップ621) wの座標加速度(ax,ay)が0かどうかを判定し、0の場合はステップ623へ、そうでない場合はステップ622へ移行する。
ステップ622) wの座標速度(vx,vy)を以下の値に更新する。
vx=vx+t ax
vy=vy+t ay
ステップ623) wの座標速度(vx,vy)が0かどうかを判定し、0の場合はステップ625へ、そうでない場合はステップ624へ移行する。
vy=vy+t ay
ステップ623) wの座標速度(vx,vy)が0かどうかを判定し、0の場合はステップ625へ、そうでない場合はステップ624へ移行する。
ステップ624) wの座標(x,y)を以下の値に更新する。
x=x+t vx
y=y+t vy
ステップ625) wのサイズ変更加速度(a_width,a_hight)が0かどうかを判定し、0の場合はステップ627へ、そうでない場合はステップ626へ移行する。
y=y+t vy
ステップ625) wのサイズ変更加速度(a_width,a_hight)が0かどうかを判定し、0の場合はステップ627へ、そうでない場合はステップ626へ移行する。
ステップ626) wのサイズ変更速度(v_width,v_height)を以下の値に更新する。
v_width=v_width+t a_width
v_height=v_height+t a_height
ステップ627) wのサイズ変更速度(v_width,v_height)が0かどうか判定し、0の場合はステップ629へ、そうでない場合はステップ628へ移行する。
v_height=v_height+t a_height
ステップ627) wのサイズ変更速度(v_width,v_height)が0かどうか判定し、0の場合はステップ629へ、そうでない場合はステップ628へ移行する。
ステップ628) wのサイズ(width,height)を以下の値に更新する。
width=width+t v_width
height=height+t v_height
ステップ629) 更新後のwを内部記憶のウィンドウ状態リストに保存する。
height=height+t v_height
ステップ629) 更新後のwを内部記憶のウィンドウ状態リストに保存する。
ステップ630) iにi+1を代入する。
ステップ631) 画面更新命令を、出力画面生成部50に送信する。ここで画面更新命令は以下の要素を持つリストである。
<ウィンドウID>,<座標(x,y)>,<サイズ(width,height)>,<コンテンツ名>,<コンテンツ形式>,<再生状態>
次に、出力PC100の出力画面生成部50における、仮想画面生成処理(ステップ80)を、図8に沿って説明する。
次に、出力PC100の出力画面生成部50における、仮想画面生成処理(ステップ80)を、図8に沿って説明する。
ステップ801) 画面状態管理部40から、画面更新命令を取得する。画面状態更新処理(ステップ60)の項で述べたように、画面更新命令は、以下の形式の要素を持つリスト(以下、ウィンドウリスト)である。
<ウィンドウID>,<座標(x,y)>,<サイズ(width,height)>,<コンテンツ名>,<コンテンツ形式>,<再生状態>
ステップ802) ウィンドウリストが空でないかを判断し、空の場合はステップ813へ、空でない場合はステップ803へ移行する。
ステップ802) ウィンドウリストが空でないかを判断し、空の場合はステップ813へ、空でない場合はステップ803へ移行する。
ステップ803) ウィンドウリストの先頭の要素wを取り出す。
ステップ804) wのウィンドウIDがコンテンツリストに存在するかを確認し、存在する場合は、ステップ805へ、存在しない場合はステップ809へ移行する。ここで、コンテンツリストの各要素は以下の形式である。
<ウィンドウID>,<コンテンツ名>,<コンテンツ形式>,<フレーム番号>,<コンテンツの実体>
ステップ805) コンテンツリストから、wのウィンドウIDを持つ要素cを取得する。
<ウィンドウID>,<コンテンツ名>,<コンテンツ形式>,<フレーム番号>,<コンテンツの実体>
ステップ805) コンテンツリストから、wのウィンドウIDを持つ要素cを取得する。
ステップ806) wのコンテンツ名とcのコンテンツ名が一致するかを判断し、一致する場合はステップ807へ、一致しない場合はステップ809へ移行する。
ステップ807) cのコンテンツ形式が動画であり、かつ、wの再生状態が(逆)再生かどうかを判断する。これらの条件を満たす場合はステップ808へ、満たさない場合はステップ812へ移行する。
ステップ808) 動画のフレーム番号の計算を行う。現在時刻と前回の呼び出し時刻の差分から、フレーム番号を自動計算する。現在時刻で内部記憶の呼び出し時刻を更新する。
ステップ809) コンテンツ取得要求を、コンテンツ取得部60に送信する。ここで、コンテンツ取得要求は、以下の形式である。
<コンテンツ名>,<コンテンツ形式>,<フレーム番号>
なお、フレーム番号は、コンテンツ形式が動画の場合のみ指定される。
なお、フレーム番号は、コンテンツ形式が動画の場合のみ指定される。
ステップ810) コンテンツ取得要求で指定されたコンテンツの実体を取得する。
ステップ811) 「wのウィンドウID、wのコンテンツ名、wのコンテンツ形式、ステップ808で計算されたフレーム番号、ステップ810で取得されたコンテンツの実体」によって、コンテンツリストの要素を更新する。
ステップ812) 仮想画面の中に、wで指定された座標、サイズでウィンドウを出力し、wのウィンドウIDを持つコンテンツリストの要素の「コンテンツ実体」を設定する。
ステップ813) 仮想画面の生成が完了したことを表す画面同期信号を出力制御装置20へ送信する。
次に、多人数に対応するウィンドウ出力処理について説明する。
図10,図11は、本発明の一実施の形態における多人数対応ウィンドウ出力処理のフローチャートである。
ステップ901) 画面状態制御装置10は、画面に出力することができるウィンドウの最大数nを設定する。
ステップ902) 速度の分類に用いるグループ数kを設定する。
ステップ903) 人物リストLをセンサ等から取得する。人物リストの各要素は、検出された人物の位置と速度を持っている。ここで人物リストLの取得方法について説明する。
1つまたは、複数の監視カメラで撮影された撮影画像に対して、画像解析処理を実行することにより、複数の撮影画像を合成し、監視領域に写っている人物の位置、速度、加速度、指差し方向を検出し、人物リストとする。
また、1つまたは、複数の無線タグ受信機が受信した無線タグのIDに対して、無線タグ解析処理を実行することにより、各受信機の感知領域内に存在する無線タグのIDを取得し、無線タグ情報解析結果(時刻、無線タグ受信機ID、感知された無線タグID、位置)を人物リストとして出力する。
ステップ904) |L|が、ウィンドウ最大数nよりも小さいかを判断し、小さい場合はステップ905へ、そうでない場合はステップ910へ移行する。ここで、|X|は、リストXの要素数を表す。
ステップ905) iに0を代入する。
ステップ906) iが|L|より小さいかを判断し、小さい場合はステップ907へ移行し、そうでない場合は終了する。
ステップ907) 人物リストLのi番目の要素Iを取得する。
ステップ908) Iに対応するウィンドウを出力する。ここで、Iの速度、Iの位置を座標変換し、画面上のウィンドウの出力座標と速度を決める。
ステップ909) iにi+1を代入する。
ステップ910) 人物リストLの全ての要素を速度に基づきk個のクラスタ(Li:0<i<k)に分類する。ここで、クラスタリング手法は特に限定しないが、似た速度を持つ要素が同一のクラスタに分類されるものとする。
ステップ911) 各クラスタLiへの割り当てウィンドウ数wiを計算する。ここで、wiは、最低1、wiの合計はnである。割り当て方法については、図12で詳細に説明する。
ステップ912) iに0を代入する。
ステップ913) i<kを満たすかを確認し、満たす場合はステップ914へ移行し、満たさない場合は処理を終了する。
ステップ914) クラスタLiの全ての要素を位置に基づき、wi個のクラスタ(Lij:0<j<wi)に分類する。ここで、クラスタリング手法は特に限定しないが、似た位置にある要素が同一のクラスタに分類されるものとする。
ステップ915) jに0を代入する。
ステップ916) j<wiを満たすかを確認し、満たす場合はステップ917へ、満たさない場合はステップ921へ移行する。
ステップ917) Lijに含まれる要素の平均速度を計算する。
ステップ918) Lijに含まれる要素の平均位置を計算する。
ステップ919) Lijに対応するウィンドウを出力する。ここで、ステップ917、ステップ918で求めた平均速度、平均位置を座標変換し、画面上のウィンドウの出力座標と速度を決める。
ステップ920) jにj+1を代入する。
ステップ921) iにi+1を代入する。
次に、上記のステップ911におけるウィンドウ割当数計算処理について説明する。
図12は、本発明の一実施の形態におけるウィンドウ割当数計算処理のフローチャートである。
ステップ1101) iに0を代入する。
ステップ1102) i<kを満たすかを確認し、満たす場合はステップ1103へ、満たさない場合はステップ1106へ移行する。
ステップ1103) 各クラスタLiに全体人数の中でどれくらいの割合の人数が含まれているのかを表す変数uiを計算する。計算には以下の計算式を用いる。
ui=|Li|/|L|
ステップ1104) uiに応じて、ウィンドウの割当数wiを計算する。計算には以下の計算式を用いる。
ステップ1104) uiに応じて、ウィンドウの割当数wiを計算する。計算には以下の計算式を用いる。
wi=1+[ui*(n−k)]
ここで、[x]はxの整数部分を表す。
ここで、[x]はxの整数部分を表す。
ステップ1105) iにi+1を代入する。
ステップ1106) 現在割り当てが行われていないウィンドウ数を、以下の式によって計算する。
m=n−Σwi
ステップ1107) m>0を満たすかを判定し、満たす場合は、ステップ1108へ移行し、満たさない場合は終了する。
ステップ1107) m>0を満たすかを判定し、満たす場合は、ステップ1108へ移行し、満たさない場合は終了する。
ステップ1108) uiの少数部分が最大となるiを選択する。ここで少数部分は、ui−[ui]によって求める。
ステップ1109) wiにwi+1を代入する。
ステップ1110) uiに0を代入する。
ステップ1111) mにm−1を代入する。
以下、図面と共に本発明の実施例を説明する。
以下では、実際の動作の説明として、図15の追従広告の情報表示用ウィンドウに、動画コンテンツを表示する例を用いる。但し、出力画面の構成は、図9に示すように、2台の横に連続した領域と、1台の離れた領域とする。
監視カメラ等のセンサから人物の位置(x,y)が取得され、以下の単純な座標変換によって、画面上の座標(x',y')が決まるものとする。
x'=x/2
y'=y/2
従来技術では、(x',y')の座標にウィンドウを出力する。
y'=y/2
従来技術では、(x',y')の座標にウィンドウを出力する。
しかしながら、実際の人物の位置検出を非常に短時間の間に繰り返し行うことは、困難であり、人物の位置検出は時間的に離散値となってしまう。図13は、このような人物の位置(x,y)の検出が1秒毎であり、検出が行なわれる度に、ウィンドウの座標を更新する例を示している。図14の(a)は、(x',y')の座標にウィンドウをそのまま出力した例である。ここで、グレーの部分が実際の表示領域である。このように、ウィンドウは一定時間同じ位置にあった後、次の人物の位置検出のタイミングで、少し離れた位置に出力されることになる。このように、従来技術では、人物の位置に対して、ウィンドウを滑らかに追従させることができない。
以下の例では、本発明によって、人物の動きの検出が離散値であった場合でも、ウィンドウ位置を滑らかに人物に追従させることができることを示す。ここでは、説明のため、人物の動きの検出は、1秒毎、各出力PCの画面状態更新処理(ステップ60)は、0.2秒毎に実行されるものとする。
また、予め、画面状態制御装置10では、人物の検出位置から計算された画面上の座標(x",y")から、座標加速度(ax,ay)を以下のように自動計算するようにプログラミングされているものとする。
ax=k_1(x'-x")
ay=k_2(y'-y")
ここで、k_1,k_2は、適当な定数であり、ここでは、それぞれ、0.3,1とする。
ay=k_2(y'-y")
ここで、k_1,k_2は、適当な定数であり、ここでは、それぞれ、0.3,1とする。
まず、前処理として、以下を実行する。
(1) 出力制御装置20では、表示領域指定処理(ステップ20)を実行し、仮想画面の領域を(0,320,0,100)、各出力PC100の表示領域を以下のように指定し、表示領域指定命令を、各出力PC100上の出力画面生成部50へ送信する。
出力PC1の表示領域(0,100,20,80)
出力PC2の表示領域(100,200,20,80)
出力PC3の表示領域(220,320,20,80)
(2) 各出力PC100上の画面生成部50は、表示領域設定処理(ステップ70)を実行し、表示領域指定命令に従い、表示領域を設定する。この結果、各出力PC100の出力領域は、図9のようになる。
出力PC2の表示領域(100,200,20,80)
出力PC3の表示領域(220,320,20,80)
(2) 各出力PC100上の画面生成部50は、表示領域設定処理(ステップ70)を実行し、表示領域指定命令に従い、表示領域を設定する。この結果、各出力PC100の出力領域は、図9のようになる。
(3) コンテンツ管理装置30は、プレ配信処理(ステップ40)によって、3台全ての出力PC100上のコンテンツ取得部60へ動作コンテンツ(C1)を配信する。
(4) 各出力PC100上のコンテンツ取得部60は、コンテンツ蓄積処理(ステップ10)によって、C1をコンテンツ保存データベース70に蓄積し、コンテンツ取得要求に応じて利用可能となる。
図13のように、人物の位置(x,y)が1秒毎に検出され、対応する画面上の座標(x',y')が計算された場合の処理手順を以下に示す。
t=0.0で、新たな人物の位置が検出された際には、以下の処理を実行する。
1.画面状態制御装置10では、状態制御命令生成処理(ステップ10)を実行し、3台全ての出力PC100上の画面状態管理部40に、以下の画面状態制御命令を送信する。
ウィンドウ生成,,[座標,(0,35)][座標速度,(50,0)][サイズ,(40,30)][コンテンツ名,C1][コンテンツ形式,動画][再生状態、再生]
ここで、制御名が、「ウィンドウ生成」であるため、ウィンドウIDは指定されていない。この命令は、「座標(0,35)の位置に、サイズ(40,30)の大きさのウィンドウを生成し、コンテンツC1を再生させる。次の画面状態制御命令がない間は、このウィンドウを、座標速度(50,0)で自動的に動かす.」ということを意味している。
ここで、制御名が、「ウィンドウ生成」であるため、ウィンドウIDは指定されていない。この命令は、「座標(0,35)の位置に、サイズ(40,30)の大きさのウィンドウを生成し、コンテンツC1を再生させる。次の画面状態制御命令がない間は、このウィンドウを、座標速度(50,0)で自動的に動かす.」ということを意味している。
2.各出力PC100上の画面状態管理部40では、画面状態更新処理(ステップ60)を実行し、以下の画面更新命令を、出力画面生成部50へ送信する。
W1,(0,35),(40,30),C1,動画,再生
ここで、W1は自動的に割り当てられたウィンドウIDである。
ここで、W1は自動的に割り当てられたウィンドウIDである。
3.出力画面生成部50では、仮想画面生成処理(ステップ80)を実行し、以下のコンテンツ取得要求をコンテンツ取得部60へ送信する。
C1,動画,1
4.コンテンツ取得部60では、コンテンツ取得処理(ステップ110)を実行し、コンテンツ保存データベース70に格納されたコンテンツ(C1)のフレーム番号1のコンテンツ実体を取得し、コンテンツ転送処理(ステップ120)によって、出力画面生成部50へ送信する。
4.コンテンツ取得部60では、コンテンツ取得処理(ステップ110)を実行し、コンテンツ保存データベース70に格納されたコンテンツ(C1)のフレーム番号1のコンテンツ実体を取得し、コンテンツ転送処理(ステップ120)によって、出力画面生成部50へ送信する。
5.出力画面生成部50では、コンテンツ実体を取得し、仮想画面上の指定された座標(0,35)に指定されたサイズ(40,30)で、C1のフレーム番号1のコンテンツ実体を出力する。出力が完了したらすぐに、画面同期信号を、出力制御装置20へ送信する。
6.出力制御装置20では、描画同期処理(ステップ30)を実行し、3台の出力PC100から、画面同期信号を受け取ると、画面描画信号を、これら3台の出力PC100に送信する。
7.各出力PC100上の出力画面生成部50は、画面描画命令を受け取ると、画面描画処理(ステップ90)を実行し、表示領域設定処理(ステップ70)で設定された領域のみを描画し、ディスプレイ80やプロジェクタに表示する。この結果、図14(b)の"1"のウィンドウが出力される。
t=1.0で、次の人物の位置検出が行われるまで、ステップ20からステップ70が繰り返し実行される。但し、座標速度が('50',0)と指定されているので、ウィンドウの座標は、x方向にこの速さで等速で移動する。また、ステップ30のコンテンツのフレーム番号は、仮想画面生成処理(ステップ80)のステップ808で、順次計算され、呼び出し時刻に適した番号となる。この結果図14(b)の"2"〜"5"の位置にウィンドウが順次出力される。
次に、t=1.0で人物の位置が検出された際には、以下の処理を実行する。
1.画面状態制御装置10では、状態制御生成処理(ステップ10)を実行し、以下の画面状態制御命令を出力PC100上の画面状態管理部40へ送信する。
プロパティ取得,W1,[座標,(x,y)]
2.出力PC100上の画面状態管理部40では、画面状態更新処理(ステップ60)を実行し、以下の画面状態を返信する。
2.出力PC100上の画面状態管理部40では、画面状態更新処理(ステップ60)を実行し、以下の画面状態を返信する。
成功,プロパティ取得,W1,[座標,(40,35)]
このようにして、直前の時刻のウィンドウの出力座標を取得することができる。
このようにして、直前の時刻のウィンドウの出力座標を取得することができる。
3.画面状態制御装置10では、以下のように座標加速度(ax,ay)を計算する。
ax=k_1(x'-x")=0.3*(60-40)=6
ay=k_2(y'-y")=1*(38-35)=3
以下の画面状態制御命令を3台全ての出力PC100上の画面状態管理部40へ送信する。
ay=k_2(y'-y")=1*(38-35)=3
以下の画面状態制御命令を3台全ての出力PC100上の画面状態管理部40へ送信する。
プロパティ更新,W1,[座標加速度,(6,3)]
4.各出力PC100上の画面状態管理部40は、画面状態更新処理(ステップ60)を実行し、ウィンドウ座標を以下のように計算する。
4.各出力PC100上の画面状態管理部40は、画面状態更新処理(ステップ60)を実行し、ウィンドウ座標を以下のように計算する。
vx=vx+t ax=50+0.2*6=51.2
vy=vy+t ay=0+0.2*3=0.6
x=x+t vx=40+0.2*51.2=50.2
y=y+t vy=35+0.2*0.6=35.1
ここで、前述したように画面状態更新処理(ステップ60)を呼び出し間隔は、0.2秒であるので、t=0.2である。
vy=vy+t ay=0+0.2*3=0.6
x=x+t vx=40+0.2*51.2=50.2
y=y+t vy=35+0.2*0.6=35.1
ここで、前述したように画面状態更新処理(ステップ60)を呼び出し間隔は、0.2秒であるので、t=0.2である。
次に、以下の画面更新命令を出力画面生成部50に送信する。
W1,(50.2,35.1), (40,30), C1,動画,再生
5.t=0.0のステップ30からステップ70と同様の処理を行い、各出力PC100に割り当てられた表示領域を描画する。
5.t=0.0のステップ30からステップ70と同様の処理を行い、各出力PC100に割り当てられた表示領域を描画する。
t=2.0で、次の人物の位置検出が行われるまで、ステップ40、ステップ50は繰り返し実行される。そのため、次のセンサ情報が来るまで、ウィンドウは等価速度(6,3)で移動する。この結果、図14(b)の"6"〜"10"が出力される。その後、1秒毎に次の人物の位置検出が行われる度に、t=1.0で人物の位置検出が行われたときと同様の処理を繰り返し実行する。このようにして計算された出力座標を図13の(x"、y")に、実際の出力位置を図14(b)に示す。
このようにセンサで検出された人物の位置が離散値の場合でも、その間を補完し、滑らかにウィンドウを追従させることができる。また、連続する画面や離れた画面等の複雑な画面構成であっても、これらの構成を考慮することなく、仮想的な画面上の座標のみ考えて出力を行うことができる。
次に、前述の出力画面構成の問題が解決されたことを説明する。
本発明では、各出力PCは、仮想的な大画面を同期して生成し、指定された領域のみを表示することができる。また、出力PCの台数に制限はない。従って、表示領域の指定といった簡易な操作によって、横長画面、大画面、離れた画面等の様々な画面構成を実現できる。また、一つのPCの出力映像を分割するのではないので、各出力PCの持つ最大解像度で出力を行うことができる。従って、本発明では、非常に高解像度な様々な構成の大画面を生成することができる。
また、前述の追従制度の問題については、本発明では、座標だけでなく、速度や加速度によって情報表示用のウィンドウを制御することができる。従って、人物の位置取得が離散値であった場合でも、速度や加速度を利用した制御を行うことによって、その間の出力位置を補完することができる。そのため、滑らかにウィンドウを動かすことが可能である。また、画面状態制御命令がなくても、ウィンドウの出力座標等を自動計算することができる。従って、多くのウィンドウを同時に制御する場合でも、いちいち座標を指定する多数個の制御命令を生成する必要がなく、リアルタイムの動的制御を実現できる。
また、上記の図4に示すシーケンスチャートの各々の装置における動作、及び、図5〜図8、図10〜図12の動作をそれぞれプログラムとして構築し、画像状態制御装置、出力制御装置、コンテンツ管理装置及び出力装置として利用されるコンピュータにインストールし、CPU等の制御手段により実行する、または、ネットワークを介して流通させることが可能である。
また、構築されたプログラムを、画像状態制御装置、出力制御装置、コンテンツ管理装置及び出力装置として利用されるコンピュータに接続されるハードディスクや、フレキシブルディスク、CD−ROM等の可搬記憶媒体に格納しておき、インストールして実行させることも可能である。
なお、本発明は、上記の実施の形態及び実施例に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
駅構内やビルのエントランス等の大規模な公共空間において、人物等の動作に応じて広告を表示するようなシステムに適用可能である。
10 画面状態制御装置
20 出力制御装置
30 コンテンツ管理装置
40 画面状態管理手段、画面状態管理部
50 出力画面生成手段、出力画面生成部
60 コンテンツ取得手段、コンテンツ取得部
70 コンテンツ保存データベース
80 ディスプレイ
90 コンテンツデータベース
100 出力装置、出力PC
200 ネットワーク
20 出力制御装置
30 コンテンツ管理装置
40 画面状態管理手段、画面状態管理部
50 出力画面生成手段、出力画面生成部
60 コンテンツ取得手段、コンテンツ取得部
70 コンテンツ保存データベース
80 ディスプレイ
90 コンテンツデータベース
100 出力装置、出力PC
200 ネットワーク
Claims (3)
- 複数の出力装置の画面上への出力を制御命令に応じて動的に変更するシステムにおける情報表示方法において、
画面の状態制御を行うための画面状態制御命令を生成する画面状態制御装置と、
前記出力装置の表示する表示領域の管理と、表示の同期制御を行う出力制御装置と、
コンテンツを配信するコンテンツ管理装置と、
各出力装置上で稼動し、コンテンツを表示するウィンドウの座標とサイズを自動計算する画面状態管理手段と、同期を取りながらコンテンツを表示する出力画面生成手段と、コンテンツの取得や管理を行うコンテンツ取得手段と、を有する出力装置からなるシステム上で、
前記出力制御装置において、前記出力装置が内部にもつ画面の領域である仮想画面のサイズを指定し、仮想画面上の座標で指定される一部の領域を各出力装置の表示領域に割り当てる表示領域指定過程と、
前記出力装置の出力画面生成手段において、前記出力制御装置により割り当てられた表示領域を記憶手段に保存する表示領域設定過程と、
前記画面状態制御装置において、前記画面状態制御命令を前記出力装置の前記画面状態管理手段に送信する状態制御命令生成過程と、
前記出力装置の前記画面状態管理手段において、画面状態制御命令を受けて画面更新命令を前記出力画面生成手段に送信する画面状態更新過程と、
前記出力装置の前記出力画面生成手段において、前記画面状態管理手段から前記画面更新命令を受け取ると、該画面更新命令に基づいて仮想画面を生成し、コンテンツ取得要求をコンテンツ取得手段に送信する仮想画面生成過程と、
前記出力装置の前記コンテンツ取得手段において、前記コンテンツ管理装置に要求し、コンテンツを取得して、前記出力画面生成手段に送信するコンテンツ取得過程と、
前記出力制御装置において、前記出力画面生成手段から描画を行う準備が整ったことを知らせる画面同期信号を受信し、全ての出力装置からの画面同期信号が揃う、または、一定時間が経過する毎に、取得すると、前記出力装置の前記出力画面生成手段に対して画面描画信号を送信する描画同期過程と、
前記出力装置の前記出力画面生成手段において、前記画面描画信号を受信すると、割り当てられた表示領域を描画し、表示する画面描画過程と、からなり、
前記仮想画面生成過程において、
前記出力画面生成手段が、
前記仮想的な画面に、ウィンドウを配置し、コンテンツの設定終了後すぐに、画面同期信号を前記出力制御装置に送信し、画面描画を待機し、前記画面描画信号を受信したらすぐに、描画処理を行う
ことを特徴とする情報表示方法。 - 複数の出力装置の画面上への出力を制御命令に応じて動的に変更するシステムにおける情報表示システムであって、
画面の状態制御を行うための画面状態制御命令を生成する画面状態制御装置と、
前記出力装置の表示する表示領域の管理と、表示の同期制御を行う出力制御装置と、
コンテンツを配信するコンテンツ管理装置と、
各出力装置上で稼動し、コンテンツを表示するウィンドウの座標とサイズを自動計算する画面状態管理手段と、同期を取りながらコンテンツを表示する出力画面生成手段と、コンテンツの取得や管理を行うコンテンツ取得手段と、を有する出力装置からなり、
前記画面状態制御装置は、
前記画面状態制御命令を前記出力装置の前記画面状態管理手段に送信する状態制御命令生成手段を有し、
前記出力制御装置は、
前記出力装置が内部にもつ画面の領域である仮想画面のサイズを指定し、仮想画面上の座標で指定される一部の領域を各出力装置の表示領域に割り当てる表示領域指定手段と、
前記出力装置の前記出力画面生成手段から描画を行う準備が整ったことを知らせる画面同期信号を受信し、全ての出力装置からの画面同期信号が揃う、または、一定時間が経過する毎に、取得すると、該出力装置の該出力画面生成手段に対して画面描画信号を送信する描画同期手段と、を有し、
前記出力装置の前記画面状態管理手段は、
前記画面状態制御装置から前記画面状態制御命令を受けて画面更新命令を前記出力画面生成手段に送信する画面状態更新手段を有し、
前記出力装置の前記出力画面生成手段は、
前記出力制御装置により割り当てられた表示領域を記憶手段に保存する表示領域設定手段と、
前記画面状態管理手段から前記画面更新命令を受け取ると、該画面更新命令に基づいて仮想画面を生成し、コンテンツ取得要求をコンテンツ取得手段に送信する仮想画面生成手段と、
前記出力制御装置から前記画面描画信号を受信すると、割り当てられた表示領域を描画し、表示する画面描画手段と、を有し、
前記出力装置の前記コンテンツ取得手段は、
前記コンテンツ管理装置に要求し、コンテンツを取得して、前記出力画面生成手段に送信するコンテンツ取得手段を有し、
前記出力装置の前記出力画面生成手段は、
前記仮想的な画面に、ウィンドウを配置し、コンテンツの設定終了後すぐに、画面同期信号を前記出力制御装置に送信し、画面描画を待機し、前記画面描画信号を受信したらすぐに、描画処理を行う
ことを特徴とする情報表示システム。 - 請求項2に記載の情報表示システムを構成する画面状態制御装置、出力制御装置、コンテンツ管理装置、出力装置のそれぞれが有する各手段としてコンピュータを機能させるための情報表示プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009295884A JP2010107997A (ja) | 2009-12-25 | 2009-12-25 | 情報表示方法及びシステム及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009295884A JP2010107997A (ja) | 2009-12-25 | 2009-12-25 | 情報表示方法及びシステム及びプログラム |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003398026A Division JP2005157135A (ja) | 2003-11-27 | 2003-11-27 | 情報表示方法及びシステム及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010107997A true JP2010107997A (ja) | 2010-05-13 |
Family
ID=42297430
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009295884A Pending JP2010107997A (ja) | 2009-12-25 | 2009-12-25 | 情報表示方法及びシステム及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010107997A (ja) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1138953A (ja) * | 1997-07-16 | 1999-02-12 | F F C:Kk | 計算機システムの複数画面表示制御方法 |
JPH11149283A (ja) * | 1997-11-17 | 1999-06-02 | Hitachi Ltd | マルチディスプレイの同期方式 |
JP2000338944A (ja) * | 1999-05-26 | 2000-12-08 | Mitsubishi Electric Corp | マルチディスプレイビデオ表示装置 |
JP2003280621A (ja) * | 2002-03-25 | 2003-10-02 | Mitsubishi Electric Corp | 画像信号発生装置、画像信号発生方法、この方法を実行させるプログラム、及びこのプログラムを記録した記録媒体 |
-
2009
- 2009-12-25 JP JP2009295884A patent/JP2010107997A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1138953A (ja) * | 1997-07-16 | 1999-02-12 | F F C:Kk | 計算機システムの複数画面表示制御方法 |
JPH11149283A (ja) * | 1997-11-17 | 1999-06-02 | Hitachi Ltd | マルチディスプレイの同期方式 |
JP2000338944A (ja) * | 1999-05-26 | 2000-12-08 | Mitsubishi Electric Corp | マルチディスプレイビデオ表示装置 |
JP2003280621A (ja) * | 2002-03-25 | 2003-10-02 | Mitsubishi Electric Corp | 画像信号発生装置、画像信号発生方法、この方法を実行させるプログラム、及びこのプログラムを記録した記録媒体 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7169405B2 (ja) | 複合現実システムのための位置特定の決定 | |
Fan et al. | Heterogeneous information fusion and visualization for a large-scale intelligent video surveillance system | |
US9652193B2 (en) | Method and apparatus for providing service by using screen mirroring | |
US9116220B2 (en) | Time synchronizing sensor continuous and state data signals between nodes across a network | |
CN111178191B (zh) | 信息播放方法、装置、计算机可读存储介质及电子设备 | |
US9158391B2 (en) | Method and apparatus for controlling content on remote screen | |
JP2005157135A (ja) | 情報表示方法及びシステム及びプログラム | |
WO2020056903A1 (zh) | 用于生成信息的方法和装置 | |
US9336602B1 (en) | Estimating features of occluded objects | |
JP2008519340A (ja) | 分散型情報提示及び対話型システム | |
WO2021042825A1 (zh) | 一种多摄像头同步方法及分布式系统 | |
CN110619659A (zh) | 一种房源展示方法、装置、终端设备及介质 | |
US8643672B2 (en) | Instant message analytics of historical conversations in relation to present communication | |
US20180300552A1 (en) | Differential Tracking for Panoramic Images | |
CN113436311A (zh) | 一种户型图生成方法及其装置 | |
CN112379963B (zh) | 远程应用窗口控制方法、装置及计算机设备 | |
WO2020054298A1 (ja) | 情報処理装置、描画制御方法及びそのプログラムを記録した記録媒体 | |
JP4110323B2 (ja) | 情報出力方法及び装置及びプログラム及び情報出力プログラムを格納したコンピュータ読み取り可能な記憶媒体 | |
JP2002342775A (ja) | 表示状態変更装置、表示状態変更方法、表示状態変更プログラム、表示状態変更プログラム格納媒体、画像提供装置、画像提供方法、画像提供プログラム、画像提供プログラム格納媒体及び画像提供システム | |
JP2005195939A (ja) | プロジェクタ投影制御システムおよびプロジェクタ投影制御方法 | |
US10534571B2 (en) | Object-based presentation system | |
JP2010107997A (ja) | 情報表示方法及びシステム及びプログラム | |
JP5861684B2 (ja) | 情報処理装置、及びプログラム | |
US20180097865A1 (en) | Video processing apparatus and method | |
KR102456134B1 (ko) | 발표자 참여형 3d 콘텐츠 생성 방법, 장치 및 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120529 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20121002 |