(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-19
(45)【発行日】2024-07-29
(54)【発明の名称】プログラム、情報処理方法、情報処理装置、及びシステム
(51)【国際特許分類】
G06T 19/00 20110101AFI20240722BHJP
【FI】
G06T19/00 600
(21)【出願番号】P 2021044315
(22)【出願日】2021-03-18
(62)【分割の表示】P 2020217019の分割
【原出願日】2020-12-25
【審査請求日】2023-04-10
(73)【特許権者】
【識別番号】509070463
【氏名又は名称】株式会社コロプラ
(74)【代理人】
【識別番号】110001416
【氏名又は名称】弁理士法人信栄事務所
(72)【発明者】
【氏名】馬場 功淳
(72)【発明者】
【氏名】松山 聡志
【審査官】中田 剛史
(56)【参考文献】
【文献】特開2003-175278(JP,A)
【文献】特開2019-125108(JP,A)
【文献】米国特許出願公開第2005/0148388(US,A1)
【文献】特開2020-168235(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 19/00
(57)【特許請求の範囲】
【請求項1】
コンピュータにおいて実行されるプログラムであって、
前記コンピュータを、
現実世界における所定のレースに関する第1情報を受信する受信手段と、
前記第1情報に基づいて、前記所定のレースのレース場を表すレース場オブジェクトと、前記所定のレースの出場者又は移動体を表す移動オブジェクトと、を含む仮想オブジェクトを生成する生成手段と、
前記仮想オブジェクトを表示する表示手段と、して機能させ、
前記第1情報は、前記レース場に関する環境情報
と、前記所定のレースの予想順位情報とを含み、
前記表示手段は、前記環境情報が所定のしきい値範囲を外れた場合に、前記仮想オブジェクトの表示態様を変更する
とともに、前記環境情報が前記予想順位情報に影響を及ぼすことを示すアラートオブジェクトを表示する、
プログラム。
【請求項2】
前記アラートオブジェクトは、異なる属性を有する複数のアラート要素を含み、
前記複数のアラート要素のうち前記予想順位情報に影響を及ぼすアラート要素は、前記予想順位情報に影響を及ぼさないアラート要素とは異なる態様で表示される、
請求項
1に記載のプログラム。
【請求項3】
前記第1情報は、前記レース場の走行路に関する位置情報をさらに含み、
前記環境情報は、前記走行路における風向きに関する風向情報を含み、
前記表示手段は、前記位置情報に対して前記風向情報が前記所定のしきい値範囲を外れた場合に、前記アラートオブジェクトを表示する、
請求項
1又は
2に記載のプログラム。
【請求項4】
前記表示手段は、前記仮想オブジェクトに対するユーザの第1操作入力に応じて、前記出場者又は前記移動体に関する情報の少なくとも一部を前記アラートオブジェクトと関連付けて表示する、
請求項
1から
3のいずれか一項に記載のプログラム。
【請求項5】
コンピュータにおいて実行されるプログラムであって、
前記コンピュータを、
現実世界における所定のレースに関する第1情報を受信する受信手段と、
前記第1情報に基づいて、前記所定のレースのレース場を表すレース場オブジェクトと、前記所定のレースの出場者又は移動体を表す移動オブジェクトと、を含む仮想オブジェクトを生成する生成手段と、
前記仮想オブジェクトを表示する表示手段と、して機能させ、
前記第1情報は、前記レース場に関する環境情報を含み、
前記環境情報は、前記レース場の気温、前記レース場の前日との気温差、前記レース場の天気、前記レース場の風速、前記レース場の走行路における風向き、前記レース場がボートレース場である場合の前記ボートレース場の水温、前記ボートレース場の前日との水温差、前記ボートレース場の波の高さの少なくとも一つを含
み、
前記表示手段は、前記気温、前記気温差、前記天気、前記風速、前記風向き、前記水温、前記水温差、前記波の高さのうち所定のしきい値範囲を外れた要素に応じて前記レース場オブジェクトの表示態様を変更する、
プログラム。
【請求項6】
第1コンピュータと、前記第1コンピュータと通信接続可能な第2コンピュータと、を含むシステムであって、
前記第2コンピュータは、
現実世界における所定のレースに関する第1情報を取得し、
前記第1情報を前記第1コンピュータへ送信するものであり、
前記第1コンピュータは、
前記第1情報を前記第2コンピュータから受信し、
前記第1情報に基づいて、レース場を表すレース場オブジェクトと、前記所定のレースの出場者又は移動体を表す移動オブジェクトと、を含む仮想オブジェクトを生成し、
前記仮想オブジェクトを表示するものであり、
前記第1情報は、前記レース場に関する環境情報
と、前記所定のレースの予想順位情報とを含み、
前記第1コンピュータは、前記環境情報が所定のしきい値範囲を外れた場合に、前記仮想オブジェクトの表示態様を変更する
とともに、前記環境情報が前記予想順位情報に影響を及ぼすことを示すアラートオブジェクトを表示する、
システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、プログラム、情報処理方法、情報処理装置、及びシステムに関する。
【背景技術】
【0002】
特許文献1及び2には、AR(Augmented Reality)に関する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2020-58658号公報
【文献】特開2020-77187号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
現実世界においては、ボートレースや競馬等の様々なレースが実施されている。これらのレースを観戦するために実際にレース場へ足を運ぶ人々もいるが、実際にレース場へ足を運ぶことは、時間的又は地理的な制約により不可能な場合もある。上記のような状況から、現実世界のレースに連動した仮想オブジェクトを用いて、現実世界のレースを仮想的なレースとして表示することができれば、実際にレース場へ行かずともレースを擬似的に観戦することができ、有益である。
【0005】
ところで、ボートレースや競馬等の様々なレースにおいては、天候によってレースの順位が変動する場合があり、レース時の天候はレース予想にも大きく影響する。また、レースのデータやレース映像からは、レース場の天候等の環境をユーザが直接的に認識することが難しい。
【0006】
本開示の一態様は、コンピュータに表示される仮想レースを通じて、当該仮想レースに対応する現実世界のレースの環境を容易に把握可能なプログラム、情報処理方法、情報処理装置、及びシステムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本開示に示す一実施形態によれば、
プロセッサ及び撮像部を備えた第1コンピュータにおいて実行されるプログラムであって、
前記プログラムは、前記プロセッサに、
現実世界における所定のレースに関する第1情報を第2コンピュータから受信するステップと、
前記第1情報に基づいて、前記所定のレースのレース場を表すレース場オブジェクトと、前記所定のレースの出場者又は移動体を表す移動オブジェクトと、を含む仮想オブジェクトを生成するステップと、
前記撮像部により撮像された前記第1コンピュータの周囲の現実画像に、前記仮想オブジェクトを重畳させて表示するステップと、
を実行させ、
前記第1情報は、前記レース場に関する環境情報を含み、
前記表示するステップは、前記環境情報が所定のしきい値範囲を外れた場合に、前記仮想オブジェクトの表示態様を変更することを含む、
プログラムが提供される。
【発明の効果】
【0008】
本開示に示す一実施形態によれば、第1コンピュータに表示される仮想レースを通じて、当該仮想レースに対応する現実世界のレースの環境を容易に把握することができる。
【図面の簡単な説明】
【0009】
【
図1】ある実施の形態に従うシステムの構成例を示す図である。
【
図2】ある実施の形態に従うユーザ端末の機能的な構成の一例を示すブロック図である。
【
図3】ある実施の形態に従うサーバの機能的な構成の一例を示すブロック図である。
【
図4】ある実施の形態に従う現実世界のレース場の一例を示す模式図である。
【
図5】ある実施の形態に従うユーザ端末に表示される仮想オブジェクトの一例を示す模式図である。
【
図6】ある実施の形態に従う表示制御処理の一例を示すフローチャートである。
【
図7】ある実施の形態に従う撮像部により撮像された現実画像の一例を示す模式図である。
【
図8】ある実施の形態に従う現実画像に仮想オブジェクトを重畳させて表示した画面の一例を示す模式図である。
【
図9】ある実施の形態に従う現実画像に仮想オブジェクトを重畳させて表示した画面の一例を示す模式図である。
【
図10】ある実施の形態に従う動作例1における表示制御処理の一例を示すフローチャートである。
【
図11】ある実施の形態に従う現実画像に仮想オブジェクトを重畳させて表示した画面の一例を示す模式図である。
【
図12】ある実施の形態に従う現実画像に仮想オブジェクトを重畳させて表示した画面の一例を示す模式図である。
【
図13】ある実施の形態に従う現実画像に仮想オブジェクトを重畳させて表示した画面の一例を示す模式図である。
【
図14】ある実施の形態に従う動作例2における表示制御処理の一例を示すフローチャートである。
【
図15】ある実施の形態に従う動作例3における表示制御処理の一例を示すフローチャートである。
【
図16】ある実施の形態に従う現実画像に仮想オブジェクトを重畳させて表示した画面の一例を示す模式図である。
【
図17】ある実施の形態に従う現実画像に仮想オブジェクトを重畳させて表示した画面の一例を示す模式図である。
【
図18】ある実施の形態に従う現実画像に仮想オブジェクトを重畳させて表示した画面の一例を示す模式図である。
【発明を実施するための形態】
【0010】
以下、この技術的思想の実施の形態について図面を参照しながら詳細に説明する。以下の説明では、同一の要素には同一の符号を付し、重複する説明を適宜省略する。本開示において示される1以上の実施形態において、各実施形態が含む要素を互いに組み合わせることができ、かつ、当該組み合わせられた結果物も本開示が示す実施形態の一部をなすものとする。
【0011】
(システムの構成)
図1は、本実施の形態に従うシステム1の構成を示す図である。システム1は、例えば、現実世界で実施される所定のレースを、ユーザが使用する情報処理装置上において仮想オブジェクトを用いた仮想レースとして表示することが可能なものである。本明細書において、「所定のレース」とは、現実世界で実施されるレースであれば特に制限はされず、例えば、ボートレース(本番のレースや、展示レース)、競馬、競輪、オートレース、F1等のカーレース、ドローンレース、ドッグレース、マラソン、駅伝等が挙げられる。
【0012】
図1に示すように、システム1は、各ユーザが使用する情報処理装置(第1コンピュータ)であるユーザ端末10A、ユーザ端末10B及びユーザ端末10C(以下、ユーザ端末10A、10B、10C等のユーザ端末を総称して「ユーザ端末10」とも称する)等の複数のユーザ端末10と、第1サーバ装置(第2コンピュータ)20と、第2サーバ装置40と、ネットワーク30と、を含む。
【0013】
ユーザ端末10Aとユーザ端末10Bとは、無線基地局31と通信することにより、ネットワーク30と接続する。ユーザ端末10Cは、家屋等の施設に設置される無線ルータ32と通信することにより、ネットワーク30と接続する。ユーザ端末10は、例えば、タッチスクリーンを備える携帯型端末であり、スマートフォン、ファブレット、タブレット等でありうる。
【0014】
ユーザ端末10は、例えば、アプリ等を配信するプラットフォームを介してインストールされたプログラム、又は、予めプリインストールされているウェブサイト閲覧用ソフトウエア等を含むプログラムを実行する。ユーザ端末10は、上記プログラムの実行により、第1サーバ装置20と通信し、所定のレースに関連するデータやユーザに関連するデータ等を第1サーバ装置20との間で送受信することにより、ユーザ端末10上で仮想レースを表示することを可能とする。
【0015】
第1サーバ装置20は、所定のレースに関連するデータを、第2サーバ装置40から受信する。第1サーバ装置20は、所定のレースに関連するデータを、適宜、ユーザ端末10へ送信する。第1サーバ装置20は、所定のレースに関連するデータや、各ユーザに関連するデータを記憶して管理する。
【0016】
第1サーバ装置20は、ハードウェア構成として、通信IF(Interface)22と、入出力IF23と、メモリ25と、ストレージ26と、プロセッサ(第2プロセッサ)29と、を備え、これらが通信バスを介して互いに接続されている。
【0017】
通信IF22は、例えばLAN(Local Area Network)規格等の各種の通信規格に対応しており、ユーザ端末10や第2サーバ装置40等との間でデータを送受信するためのインタフェースとして機能する。
【0018】
入出力IF23は、第1サーバ装置20への情報の入力を受け付けるとともに、第1サーバ装置20の外部へ情報を出力するためのインタフェースとして機能する。入出力IF23は、マウス、キーボード等の情報入力機器の接続を受け付ける入力受付部と、画像等を表示するためのディスプレイ等の情報出力機器の接続を受け付ける出力部とを含みうる。
【0019】
メモリ25は、処理に使用されるデータ等を記憶するための記憶装置である。メモリ25は、例えば、プロセッサ29が処理を行う際に一時的に使用するための作業領域をプロセッサ29に提供する。メモリ25は、ROM(Read Only Memory)、RAM(Random Access Memory)等の記憶装置を含んで構成されている。
【0020】
ストレージ26は、プロセッサ29が読み込んで実行するための各種プログラム及びデータを記憶するための記憶装置である。ストレージ26が記憶する情報には、所定のレースに関連するデータや、各ユーザに関連するデータ等が含まれる。ストレージ26は、HDD(Hard Disk Drive)、フラッシュメモリ等の記憶装置を含んで構成されうる。なお、ストレージは、サーバ装置に含まれる形態に限られず、クラウドサービスを利用することもできる。
【0021】
プロセッサ29は、ストレージ26に記憶されるプログラム等を読み込んで実行することにより、第1サーバ装置20の動作を制御する。プロセッサ29は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)等を含んで構成されうる。
【0022】
第2サーバ装置40は、所定のレースに関連するデータを記憶して管理している。第2サーバ装置40は、例えば、所定のレースの開催者が管理するサーバ装置や、所定のレースに関する情報を外部へ発信する団体(レース専門誌の発行者、レースの映像配信者又はラジオ配信者等)が管理するサーバ装置である。第2サーバ装置40は、所定のレースに関連するデータを、適宜、第1サーバ装置20へ送信する。ある局面においては、第2サーバ装置40は、所定のレースに関連するデータをユーザ端末10へ送信してもよい。第2サーバ装置40のハードウェア構成は、矛盾の生じない範囲で、第1サーバ装置20と同様であってもよい。第2サーバ装置40は、複数あってもよい。
【0023】
(ユーザ端末)
図2は、ユーザ端末10の機能的な構成の一例を示すブロック図である。
図2に示すように、ユーザ端末10は、アンテナ110と、無線通信IF120と、タッチスクリーン130と、入出力IF140と、記憶部150と、音声処理部160と、マイク161と、スピーカ162と、撮像部170と、制御部(第1プロセッサ)190と、を含む。
【0024】
アンテナ110は、ユーザ端末10が発する信号を電波として空間へ放射する。また、アンテナ110は、空間から電波を受信して受信信号を無線通信IF120へ与える。
【0025】
無線通信IF120は、ユーザ端末10が他の通信機器と通信するため、アンテナ110等を介して信号を送受信するための変復調処理等を行う。無線通信IF120は、チューナー、高周波回路等を含む無線通信用の通信モジュールであり、ユーザ端末10が送受信する無線信号の変復調や周波数変換を行い、受信信号を制御部190へ与える。
【0026】
タッチスクリーン130は、ユーザからの入力を受け付けて、ユーザに対し情報をディスプレイ132に出力する。タッチスクリーン130は、ユーザの操作入力を受け付けるためのタッチパネル131と、ディスプレイ132と、を含む。タッチパネル131は、例えば、静電容量方式のものを用いることによって、ユーザの指等が接近したことを検出する。ディスプレイ132は、例えばLCD(Liquid Crystal Display)、有機EL(electroluminescence)その他の表示装置によって実現される。
【0027】
入出力IF140は、ユーザ端末10への情報の入力を受け付けるとともに、ユーザ端末10の外部へ情報を出力するためのインタフェースとして機能する。
【0028】
記憶部150は、フラッシュメモリ、HDD等により構成され、ユーザ端末10が使用するプログラム、及び、ユーザ端末10が第1サーバ装置20等から受信する各種データ等を記憶する。
【0029】
音声処理部160は、音声信号の変復調を行う。音声処理部160は、マイク161から与えられる信号を変調して、変調後の信号を制御部190へ与える。また、音声処理部160は、音声信号をスピーカ162へ与える。音声処理部160は、例えば、音声処理用のプロセッサによって実現される。マイク161は、音声信号の入力を受け付けて制御部190へ出力するための音声入力部として機能する。スピーカ162は、音声信号を、ユーザ端末10の外部へ出力するための音声出力部として機能する。
【0030】
撮像部170は、ユーザ端末10の周囲の現実画像を撮像するカメラである。撮像部170によって撮像された画像は、制御部190によって画像処理がなされ、ディスプレイ132へ出力される。
【0031】
制御部190は、記憶部150に記憶されるプログラムを読み込んで実行することにより、ユーザ端末10の動作を制御する。制御部190は、例えば、アプリケーションプロセッサによって実現される。
【0032】
制御部190がアプリケーションプログラム151を実行する処理について、より詳細に説明する。記憶部150は、アプリケーションプログラム151と、アプリケーション情報152と、ユーザ情報153と、を記憶する。
【0033】
ユーザ端末10は、例えば、第1サーバ装置20からアプリケーションプログラム151をダウンロードして記憶部150に記憶させる。また、ユーザ端末10は、第1サーバ装置20と通信することで、アプリケーション情報152及びユーザ情報153等の各種のデータを第1サーバ装置20と送受信する。
【0034】
アプリケーションプログラム151は、ユーザ端末10において仮想レースを表示するためのプログラムである。アプリケーション情報152は、アプリケーションプログラム151が参照する各種のデータを含む。アプリケーション情報152は、第1情報152Aと、環境情報152Bとを含む。
【0035】
第1情報152Aは、第1サーバ装置20や第2サーバ装置40から送信された所定のレースに関する情報である。第1情報152Aには、例えば、所定のレースの出場者又は移動体(以下、「出場者等」とも称する)のレースタイムを示すレースタイム情報、所定のレースの実施中における出場者等の位置情報、当該位置情報に対応する時間情報と、が含まれる。
【0036】
第1情報152Aには、さらに、所定のレースの出場者又は移動体(以下、「出場者等」とも称する)の順位予想を示す予想情報が含まれる。予想情報には、1のレースに対して複数の順位予想が含まれてもよい。また、予想情報には、複数のレースに対する順位予想が含まれてもよい。また、予想情報には、複数のレース場で実施される各レースに対する順位予想が含まれてもよい。ここで、複数のレース場とは、同一の競技が実施されるレース場(例えば、場所が異なるボートレース場)であってもよいし、それぞれ異なる競技が実施されるレース場(例えば、ボートレース場と競馬場)であってもよい。
【0037】
予想情報には、例えば、コンピュータ装置が算出したコンピュータ予想情報が含まれる。コンピュータ予想情報は、例えば、過去に実施された他のレースに関する情報である過去データと、所定のレースにおけるレース条件とに基づいて、第1サーバ装置20、第2サーバ装置40、又はユーザ端末10が算出した順位予想を含むものである。順位予想の算出は、例えば、ニューラルネットワークを用いた機械学習モデルによって実行されてもよい。
【0038】
過去データには、例えば、過去のレースにおける出場者等の順位やタイム等の出場者の成績情報(展示レースや、調教、試走等の情報を含みうる)、該過去のレースが実施された際の環境情報(例えば、天気、気温、風速、風向き、波の高さ、馬場や路面の状況に関する情報等)、その他のレース予想の参考になりうる情報(過去の事象に基づくもの)が含まれうる。
【0039】
レース条件には、そのレースの開催場所、コース形態、コース配置(向き)、レース距離、そのレースにおける各出場者等の情報(例えば、枠順、ハンデ、体重、装備等)、そのレースの実施時に想定される環境、その他のレース予想の参考になりうる情報(そのレースに関するもの)が含まれうる。
【0040】
また、予想情報には、例えば、人間(例えば、記者や予想家等)が予想した人予想情報が含まれうる。人予想情報は、人間が入力した予想情報であり、第1サーバ装置20又は第2サーバ装置40からユーザ端末10に送信される。人予想情報には、予想をした人間が発した音声から生成された音声情報、及び/又は、該人間を撮像した動画の動画情報が含まれうる。
【0041】
また、予想情報には、例えば、順位予想の確度を示す確度情報が含まれることが好ましい。確度とは、順位予想が当たる可能性を示すものである。確度は、例えば、0~100%のように具体的な数値で示されてもよいし、所定のランク(例えば、可能性の高い順にAランク、Bランク、Cランク等)等で示されてもよい。コンピュータ予想情報の確度は、それを算出したコンピュータによって算出されうる。人予想情報の確度は、それを予想した人間によって決定されうる。予想情報に複数の順位予想が含まれる場合、予想情報には、それぞれの順位予想に対する確度情報が含まれうる。
【0042】
予想情報には、レースの展開を予想した展開予想が含まれていてもよい。展開予想には、例えば、レースの序盤、中盤、終盤等の所定の区間における順位予想が含まれうる。順位予想は、1位から最下位までの全ての順位の予想であってもよいし、所定の順位まで(例えば、賭けの対象となる順位まで)を予想するものでもよいし、ある出場者等が所定の順位以内(例えば、3位以内)に入ることを予想するものでもよい。
【0043】
本明細書において、「出場者」とは、人間だけでなく、馬や犬等の動物も含む概念である。また、「移動体」とは、所定のレースにおいて移動の主体となるものであり、出場者が乗る動物や機体、出場者が遠隔操縦する機体等である。マラソンやドッグレース等では、「出場者」と「移動体」は同一となる。
【0044】
第1情報152Aとしては、上記の他にも、例えば、所定のレースの名称、開催日時、レース場データ、出場者データ、移動体データ、オッズ情報、レース予想、レース出走表、レース直前情報、ピットレポート、レース結果、レース動画、レース静止画、過去のレース情報、その他の所定のレースに関する情報誌や情報サイトに掲載されうるような情報等を含んでもよい。
【0045】
環境情報152Bは、所定のレース場における環境に関する情報であり、第1サーバ装置20又は第2サーバ装置40からユーザ端末10に送信される。環境情報152Bには、例えば、レース場の天気、気温または水温、前日との気温差または水温差、風速、風向き、波の高さ、方角、馬場や路面の状況に関する情報等が含まれる。環境情報152Bには、現在時点でのデータが含まれていても良く、過去から現在までの所定期間のデータが含まれても良い。
【0046】
ユーザ情報153は、ユーザ端末10のユーザについての情報を含む。ユーザ情報153は、例えば、ユーザを識別する情報、ユーザ端末10の位置情報、ユーザのレース購入履歴や的中率(例えば、ボートレースであれば購入した舟券の履歴と、購入した舟券の的中率)等を含んでもよい。
【0047】
制御部190は、アプリケーションプログラム151を読み込んで実行することにより、操作入力受付部191と、送受信部192と、オブジェクト生成部193と、表示制御部194と、平坦面検出部195と、第1情報取得部196と、環境情報取得部197と、選択情報取得部198と、の各機能を発揮する。
【0048】
操作入力受付部191は、タッチスクリーン130の出力に基づいて、ユーザの操作入力を受け付ける。具体的には、操作入力受付部191は、ユーザの指等がタッチパネル131に接触又は接近したことを、タッチスクリーン130を構成する面の横軸及び縦軸からなる座標系の座標として検出する。
【0049】
操作入力受付部191は、タッチスクリーン130に対するユーザの操作を判別する。操作入力受付部191は、例えば、「接近操作」、「リリース操作」、「タップ操作」、「ダブルタップ操作」、「長押し操作(ロングタッチ操作)」、「ドラッグ操作(スワイプ操作)」、「ムーブ操作」、「フリック操作」、「ピンチイン操作」、「ピンチアウト操作」等のユーザの操作を判別する。
【0050】
操作入力受付部191は、ユーザ端末10に搭載された加速度センサ等によって検出されるユーザ端末10の動きを、操作入力として受け付けてもよい。
【0051】
送受信部192は、無線通信IF120及びネットワーク30を介して、第1サーバ装置20や第2サーバ装置40等の外部の通信機器と各種情報の送信及び受信を行う。送受信部192は、例えば、第1サーバ装置20又は第2サーバ装置40から第1情報152Aを受信する。また、送受信部192は、例えば、操作入力受付部191が受け付けた操作入力に応じた情報や、ユーザ情報153に記憶された情報等を第1サーバ装置20又は第2サーバ装置40へと送信する。
【0052】
オブジェクト生成部193は、所定のレースに関する情報をユーザに提示するための仮想オブジェクトを、第1情報152Aに基づいて生成する。オブジェクト生成部193は、仮想オブジェクトとして、レース場を表すレース場オブジェクトと、出場者等を表す移動オブジェクトと、を生成する。オブジェクト生成部193は、第1情報152Aに基づいて生成される第2情報をテキスト表示するための仮想表示板を生成してもよい。オブジェクト生成部193は、上記の各オブジェクトの他にも、第1情報152Aに基づいて生成される第2情報を画像表示するための仮想スクリーン、各種の建物オブジェクト、木等の景観を構成する景観オブジェクト等を生成してもよい。
【0053】
表示制御部194は、撮像部170により撮像されたユーザ端末10の周囲の現実画像に、オブジェクト生成部193により生成された仮想オブジェクトを重畳させた画像(以下、「重畳画像」とも称する)を、ディスプレイ132上に表示させる。表示制御部194は、第1情報152Aに含まれるレースタイム情報に基づいて、各移動オブジェクトをレース場オブジェクト上において移動させ、所定のレースを仮想的に再現した仮想レースをディスプレイ132上に表示させる。表示制御部194は、レースタイム情報に加えて、第1情報152Aに含まれる出場者等の位置情報、及び当該位置情報に対応する時間情報に基づいて、仮想レースを再現するものであることが好ましい。
【0054】
表示制御部194は、操作入力受付部191が受け付けた操作入力に応じて、重畳画像における視点を変更可能であることが好ましい。表示制御部194は、操作入力受付部191が受け付けた操作入力に応じて、ディスプレイ132に各種のメニュー画面やGUI(Graphical User Interface)を表示させたり、ディスプレイ132の表示内容を変更したりする。
【0055】
平坦面検出部195は、撮像部170により撮像された現実画像内における平坦面を検出する。平坦面の検出は、従来公知の画像認識技術によって実現される。例えば、平坦面検出部195が検出した平坦面を選択する操作をユーザが行った場合、当該平坦面にレース場オブジェクトが配置された重畳画像がディスプレイ132に表示される。
【0056】
平坦面は、水平面であることが好ましい。また、平坦面とレース場オブジェクトを構成する底面とのなす角度は0度であってもよいが、鋭角であることが好ましく、例えば、15度~45度の範囲にすることができる。上記角度は、ユーザの操作を受け付けて調節する態様とすることもできる。また、現実世界の平坦面の一部に凸部がある場合や、当該平坦面に載置物がある場合であっても、当該凸部や当該載置物がレース場オブジェクトによって隠れる程度のサイズならば、レース場オブジェクトを配置可能は平坦面として検出してもよい。
【0057】
第1情報取得部196は、第1サーバ装置20から所定の情報(後述の第1情報252A)を受信することで、第1情報152Aを取得する。本例では、第1情報取得部196は、特に、第1情報152Aとして予想情報を取得する。第1情報取得部196は、第1情報取得部196自身が算出した順位予想であるコンピュータ予想情報を取得しても良く、第1サーバ装置20又は第2サーバ装置40が算出した順位予想であるコンピュータ予想情報を第1サーバ装置20から取得しても良い。また、第1情報取得部196は、第1サーバ装置20から、人間が予想した人予想情報を受信することで、予想情報を取得しても良い。
【0058】
環境情報取得部197は、第1サーバ装置20から所定の情報(後述の環境情報252B)を受信することで、環境情報152Bを取得する。
【0059】
選択情報取得部198は、ユーザが選択した1以上の出場者等を示す1以上の選択情報を取得する。「選択情報」とは、例えば、所定のレースの勝者等としてユーザが予想した出場者等を示す情報である。所定のレースがボートレースや競馬である場合、「選択情報」は、ユーザが購入した舟券や馬券を示す情報でありうる。
【0060】
選択情報取得部198は、例えば、出場者等を選択するための画面上でのユーザの操作入力に基づいて、選択情報を取得する。選択情報取得部198が取得した選択情報は、例えば、第1サーバ装置20又は第2サーバ装置40へ送信される。所定のレースがボートレースや競馬である場合、選択情報が第2サーバ装置40へ送信されたことに応じて、舟券や馬券の購入処理がなされうる。
【0061】
(第1サーバ装置)
図3は、第1サーバ装置20の機能的な構成を示すブロック図である。
図3を参照して、第1サーバ装置20の詳細な構成を説明する。第1サーバ装置20は、プログラムに従って動作することにより、通信部220と、記憶部250と、制御部290としての機能を発揮する。
【0062】
通信部220は、第1サーバ装置20がユーザ端末10や第2サーバ装置40等の外部の通信機器とネットワーク30を介して通信するためのインタフェースとして機能する。
【0063】
記憶部250は、システム1を実現するための各種プログラム及びデータを記憶する。ある局面において、記憶部250は、プログラム251と、レース情報252と、ユーザ情報253とを記憶する。
【0064】
プログラム251は、第1サーバ装置20がユーザ端末10や第2サーバ装置40と通信して、システム1を実現するためのプログラムである。プログラム251は、制御部290に実行されることにより、ユーザ端末10や第2サーバ装置40とデータを送受信する処理、ユーザ端末10のユーザが行った操作内容に応じた処理、レース情報252やユーザ情報253を更新する処理等を第1サーバ装置20に行わせる。
【0065】
レース情報252は、所定のレースに関連する各種のデータを含む。レース情報252は、例えば、第1情報252Aと環境情報252Bとを含む。第1情報252Aは、第1情報152Aの元となる情報であり、第1情報152Aは、第1情報252Aの一部でありうる。第1情報252Aは、例えば、第2サーバ装置40から取得された情報である。同様に、環境情報252Bは、環境情報152Bの元となる情報であり、環境情報152Bは、環境情報252Bの一部でありうる。環境情報252Bは、例えば、第2サーバ装置40から取得された情報である。
【0066】
ユーザ情報253は、ユーザ端末10のユーザについての情報である。ユーザ情報253は、ユーザ管理テーブル253Aを含む。ユーザ管理テーブル253Aは、例えば、ユーザを識別する情報、ユーザ端末10の位置情報、ユーザのレース購入履歴や的中率等をユーザ毎に記憶している。
【0067】
制御部290は、プロセッサ29によって実現され、プログラム251を実行することにより、送受信部291、第1情報取得部292A、環境情報取得部292B、選択情報取得部293、データ管理部294、計時部295としての機能を発揮する。
【0068】
送受信部291は、通信部220及びネットワーク30を介して、ユーザ端末10や第2サーバ装置40等の外部の通信機器と各種情報の送信及び受信を行う。送受信部291は、例えば、第1情報252A及び環境情報252Bの少なくとも一部をユーザ端末10へ送信する。また、送受信部291は、例えば、第1情報252A及び環境情報252Bを第2サーバ装置40から受信する。
【0069】
第1情報取得部292Aは、送受信部291を介して、第1情報252Aを第2サーバ装置40から取得する。環境情報取得部292Bは、送受信部291を介して、環境情報252Bを第2サーバ装置40から取得する。環境情報取得部292Bは、環境情報252Bを、第2サーバ装置40が保有するデータとは異なる外部データ(例えば、気象庁や気象情報会社の保有するデータ)から取得しても良い。選択情報取得部293は、送受信部291を介して、ユーザの選択情報をユーザ端末10又は第2サーバ装置40から取得する。データ管理部294は、第1情報取得部292A、環境情報取得部292B、選択情報取得部293等における処理結果に従って、記憶部250に記憶される各種データを更新する処理を行う。計時部295は、時間を計測する処理を行う。計時部295によって計測される時間に基づいて、ユーザ端末10に表示される各種時間(例えば、レース開始までの時間等)が制御されうる。
【0070】
(動作例)
次に、
図4~
図18を参照して、システム1における動作例について説明する。以下では、所定のレースがボートレースである場合を例示して説明をするが、以下の説明は、所定のレースが他のレースであっても適用可能である。また、以下では、ユーザ端末10と第1サーバ装置20の間、及び第1サーバ装置20と第2サーバ装置40の間でデータの送受信を行うものとして説明をするが、ある局面においては、ユーザ端末10と第2サーバ装置40とで直接的にデータの送受信をするように構成してもよい。
【0071】
図4は、現実世界のボートレース場の一例を示す模式図である。ボートレース場401には、2つのターンマーク403が設置されており、各ボートレーサーが乗るボート402a~402fによるレースが実施されている。レースが終了した場合、ボート402a~402fそれぞれのレースタイムを示すレースタイム情報が、第2サーバ装置40から第1サーバ装置20へと送信され、第1サーバ装置20からユーザ端末10へと送信される。
【0072】
ボートレース場401には、撮像装置(カメラ)404a~404bが設けられている。撮像装置404aは、ボートレース場401の上方からボート402a~402fを視界に収める。撮像装置404bは、ボートレース場401の側方からボート402a~402fを視界に収める。撮像装置404a~404bによって撮像されたボート402a~402fの画像は、第2サーバ装置40へ送信される。第2サーバ装置40では、例えば、各画像の画像解析を行い、各画像の撮影時間におけるボート402a~402fそれぞれの位置を示す位置情報を算出する。算出された位置情報と、当該位置情報に対応する撮影時間に関する時間情報は、第1サーバ装置20へと送信され、第1サーバ装置20からユーザ端末10へと送信される。なお、位置情報の算出は、第1サーバ装置20において実施してもよい。
【0073】
また、撮像装置404a~404bに代えて、又は加えて、ボート402a~402fに、GPSセンサ等の位置センサを設置してもよい。位置センサによって取得されたボート402a~402fの位置情報と、当該位置情報が取得された時間を示す時間情報とは、最終的にユーザ端末10へと送信される。
【0074】
図5は、ユーザ端末10に表示される仮想オブジェクトの一例を示す模式図である。
図5の例では、仮想オブジェクトとして、レース場オブジェクト501と、移動オブジェクト502a~502fと、2つのターンマークオブジェクト503と、仮想表示板505と、が示されている。
【0075】
レース場オブジェクト501は、ボートレース場401を仮想的に表示したオブジェクトである。レース場オブジェクト501やターンマークオブジェクト503は、例えば、ボートレース場401のコース情報等のレース場データに基づいて作製されることが好ましく、ボートレース場401と対応する形状であることが好ましい。
【0076】
移動オブジェクト502a~502fは、ボート402a~402fをそれぞれ仮想的に表示したオブジェクトであり、ボートを模した形状である。移動オブジェクト502a~502fは、レースタイム情報や、ボート402a~402fの位置情報及び当該位置情報に対応する時間情報に基づいて、レース場オブジェクト501を移動する。すなわち、レース場オブジェクト501及び移動オブジェクト502a~502fによって、現実世界のレースが仮想的なレースとしてユーザ端末10上で表示される。
【0077】
なお、ボート402a~402fの位置情報及び時間情報がなくとも、レースタイム情報のみによって仮想レースを表示することも可能である。ただ、この場合、最終的な着順は現実世界のレースと同じものになるが、レース中の順位等のレース経過を再現することが困難である。
【0078】
仮想表示板505は、テキスト情報を表示するオブジェクトである。仮想表示板505は、例えば、ボートレース場401において対応する存在のないオブジェクトである。仮想表示板505に表示するテキスト情報は、特に制限はされず、例えば、順位情報やオッズ情報等であってもよい。また、仮想表示板505に表示するテキスト情報は、ユーザの操作入力に基づいて変更可能であってもよい。
【0079】
図6は、表示制御に関する処理の一例を示すフローチャートである。なお、以下で説明するフローチャートを構成する各処理の順序は、処理内容に矛盾や不整合が生じない範囲で順不同であり、並列的に実行されてもよい。また、各フローチャートにおいて各装置が実行する処理は、矛盾の生じない範囲で、他の装置によって実行されてもよい。
【0080】
図6に示される処理は、制御部190がアプリケーションプログラム151を、制御部290がプログラム251をそれぞれ実行することにより実現される。まず、ステップS610において、制御部190は、カメラである撮像部170を起動する。撮像部170によって、ユーザ端末10の周囲の現実画像が撮像される。
【0081】
ステップS620において、制御部190は、撮像部170によって撮像された画像内における平坦面を検出する。ステップS630において、制御部190は、検出した平坦面に仮想オブジェクトを配置する。
【0082】
ここで、
図7~
図9を用いて、ステップS610、S620、及びS630の処理について具体的に説明する。
図7は、撮像部170により撮像された現実画像の一例を示す模式図である。
図7の例では、平坦なデスク701上に、キーボード702と、モニタ装置703と、が置かれている。
【0083】
ステップS610において撮像部170が起動されると、ディスプレイ132上に、撮像部170によって撮像されている現実画像が表示される。次に、ステップS620において、制御部190は、撮像部170によって撮像された画像内、すなわちディスプレイ132に表示された画像内における平坦面を検出する。
【0084】
図7では、領域704が平坦面として検出されている。領域704内にはキーボード702があるが、キーボード702はレース場オブジェクト501によって隠れる程度のサイズなので、制御部190は、領域704を平坦面として検出する。
【0085】
図7に示す状態で、撮像部170によって撮像される位置を変更すれば、領域704の位置も変更されうる。領域704は、ディスプレイ132上において、例えば、所定の色を付加されて、他の部分とは区別可能に表示される。ユーザが領域704に対してタップ操作等を実行した場合、ステップS630において、制御部190は、領域704上にレース場オブジェクト501等の仮想オブジェクトを配置する。
【0086】
図8は、現実画像に仮想オブジェクトを重畳させて表示した画面の一例を示す模式図である。
図8において、モニタ装置703を含むドットパターンを付した領域が現実画像であり、その他の領域は仮想オブジェクトが表示されている領域である。仮想オブジェクトが表示されていない領域には、例えば、広告画像を表示してもよい。
【0087】
図8では、仮想オブジェクトとして、レース場オブジェクト501と、複数の移動オブジェクト502と、2つのターンマークオブジェクト503と、大型モニタオブジェクト506と、建物オブジェクト507a~507bと、その他の符号を付していない多数のオブジェクト(木オブジェクト、時計オブジェクト等)と、が表示されている。これらのオブジェクトは、例えば、第1サーバ装置20から受信した第1情報152Aに基づいて作製される。
【0088】
図8は、領域704に含まれる平坦面と、レース場オブジェクト501を構成する底面とのなす角度が0度になるようにして、領域704上にレース場オブジェクト501を配置している。この場合、例えば、移動オブジェクト502同士が重複して見づらくなることがある。また、大型モニタオブジェクト506の奥行方向側の領域等には、移動オブジェクト502が見えなくなる死角が生じうる。
【0089】
しかし、
図8に示す状態において、ユーザは、ディスプレイ132に表示される重畳画像の視点を変更可能である。例えば、ユーザがピンチイン操作やピンチアウト操作等の操作入力をした場合、撮像部170の視点位置がレース場オブジェクト501へ近づいたり遠ざかったりしうる。また、ユーザがユーザ端末10を持ったままディスプレイ132の奥行方向へ移動した場合や、手前方向に移動した場合も、撮像部170の視点位置がレース場オブジェクト501へ近づいたり遠ざかったりしうる。また、ユーザがディスプレイ132上の所定の位置を指定するような操作をした場合、視点位置が指定された位置へと移動しうる。このような視点変更によって、上述の視認性の問題は解消しうる。
【0090】
また、平坦面とレース場オブジェクト501を構成する底面とのなす角度θが鋭角になるようにレース場オブジェクト501を配置することによっても、視認性に関する上述の問題を軽減しうる。
【0091】
図9は、現実画像に仮想オブジェクトを重畳させて表示した画面の一例を示す模式図であり、
図8に示すレース場オブジェクト501の別態様を示したものである。具体的には、
図9は、所定のレースが競馬の場合の例である。
【0092】
図9においても、モニタ装置703を含むドットパターンを付した領域が現実画像であり、その他の領域は仮想オブジェクトが表示されている領域である。
図9では、仮想オブジェクトとして、レース場オブジェクト511と、複数の移動オブジェクト512と、大型モニタオブジェクト513と、池オブジェクト514と、複数の木オブジェクト515と、がディスプレイ132に表示されている。これらのオブジェクトも、例えば、第1サーバ装置20から受信した第1情報152Aに基づいて作製される。
【0093】
レース場オブジェクト511、大型モニタオブジェクト513、池オブジェクト514、及び複数の木オブジェクト515は、例えば、現実世界における所定の競馬場のコース情報等のレース場データに基づいて作製されることが好ましい。複数の移動オブジェクト512は、例えば、競馬に出走する馬及び騎手をそれぞれ仮想的に表示したオブジェクトである。
【0094】
図6のフローチャートの説明に戻る。ステップS640において、制御部190は、現実世界のボートレース場401におけるボート402a~402fの位置情報を取得する。すなわち、現実世界においてボート402a~402fによるレースが開始された場合、制御部190は、第1サーバ装置20から、ボート402a~402fの位置情報及び時間情報を取得する。位置情報及び時間情報の取得方法は、
図4を用いて説明したとおりである。
【0095】
ステップS650において、制御部190は、ステップS640において取得した位置情報と移動オブジェクトとが連動するよう制御する。具体的には、時間情報と位置情報とを用いて、レース場オブジェクト501上におけるボート402a~402fそれぞれの動きが、ボートレース場401上における移動オブジェクト502a~502fと同様になるように制御する。
【0096】
ステップS640及びS650の処理は、少なくとも現実世界におけるレースの開始時点から終了時点まで繰り返されるが、現実世界におけるレースの開始前及び終了後においても繰り返されてもよい。
【0097】
なお、仮想レースとして表示するレースが過去のレースである場合、仮想レースの開始前に、レースの開始から終了までのボート402a~402fの位置情報等をまとめて取得してもよい。また、位置情報等は取得せずに、レースタイム情報のみを取得して、仮想レースを表示してもよい。仮想レースとして表示するレースは、展示レースであってもよい。
【0098】
現実世界におけるレースの終了後、アプリケーションプログラム151を終了する操作入力を受け付けたこと等に応じて、一連の表示制御処理を終了する。
【0099】
(環境情報を利用した動作例1)
次に、
図10~
図13を参照して、システム1における環境情報を利用した動作例1について説明する。
図10は、本動作例における表示制御処理の一例を示すフローチャートである。
【0100】
ステップS1010において、制御部190は、ディスプレイ132にレース場オブジェクト501等の仮想オブジェクトを配置する。当該処理は、
図6のステップS630と同様の処理である。
【0101】
ステップS1020において、制御部190は、第1サーバ装置20へ予想情報の送信を要求する。具体的には、制御部190は、ディスプレイ132に表示されたレース場オブジェクト501に対応する現実レースの予想情報の送信を要求する要求信号を第1サーバ装置20へ送信する。なお、制御部190は、ユーザ端末10に対するユーザの選択入力に応じて、ディスプレイ132上に表示されたレース場オブジェクト501に対応する現実レース以外の現実レースの予想情報の送信を要求しても良い。
【0102】
ステップS1030において、第1サーバ装置20の制御部290は、ユーザ端末10の制御部190から送信された予想情報に関する要求信号に基づき、第2サーバ装置40から、所定の現実レースの予想情報を取得する。具体的には、制御部290は、当該所定の現実レースに関する第1情報252Aに含まれる予想情報を取得する。上述の通り、制御部290が取得する予想情報は、コンピュータ予想情報であっても良く、人予想情報であっても良い。
【0103】
ステップS1040において、制御部290は、取得した予想情報を、ユーザ端末10の制御部190へ送信する。
【0104】
第1サーバ装置20から送信された予想情報を記憶部150に記憶した後、ステップS1050において、制御部190は、第1サーバ装置20へ、環境情報の送信を要求する。具体的には、制御部190は、ディスプレイ132上に表示されたレース場オブジェクト501に対応する現実レースに関する環境情報の送信を要求する要求信号を第1サーバ装置20へ送信する。
【0105】
ステップS1060において、第1サーバ装置20の制御部290は、ユーザ端末10の制御部190から送信された環境情報に関する要求信号に基づき、第2サーバ装置40から、環境情報252Bを取得する。上述の通り、環境情報252Bには、例えば、天気、気温、風速、風向き、波の高さ、馬場や路面の状況に関する情報等が含まれる。そして、ステップS1070において、制御部290は、取得した環境情報252Bを、ユーザ端末10の制御部190へ送信する。
【0106】
第1サーバ装置20から送信された環境情報252Bを環境情報152Bとして記憶部150に記憶した後、ステップS1080において、制御部190は、環境情報152Bに基づいて環境オブジェクトを生成する。そして、ステップS1090において、制御部190は、ディスプレイ132に表示されたレース場オブジェクト501に重畳して環境オブジェクトを表示する。
【0107】
以下、
図11を用いて、ステップS1090の表示処理を具体的に説明する。
図11は、ステップS1090における表示画面の一例を示す模式図である。
図11に示す例において、レース場オブジェクト501上に、環境オブジェクト1100が表示されている。環境オブジェクト1100は、レース場オブジェクト501上の移動オブジェクト502の視認性を阻害しない位置に表示されることが好ましい。
図11の例では、環境オブジェクト1100は、レース場オブジェクト501の右下に表示されている。
【0108】
環境オブジェクト1100は、気温データ欄1101と、天気データ欄1102と、水温データ欄1103と、波高データ欄1104と、風速/風向データ欄1105と、を含む。環境オブジェクト1100は、さらに、方角データ欄1106と、気温差データ欄1107とを含む。
【0109】
気温データ欄1101には、環境情報152Bに基づいて、現実レースのレース場の現在の気温が表示されている。天気データ欄1102には、環境情報152Bに基づいて、現実レースのレース場の現在の天気(晴れマーク、曇りマーク、雨マーク、雪マーク等のいずれか)が表示されている。水温データ欄1103には、環境情報152Bに基づいて、現実レースのレース場の現在の水温が表示されている。波高データ欄1104には、環境情報152Bに基づいて、現実レースのレース場の現在の波の高さが表示されている。風速/風向データ欄1105には、環境情報152Bに基づいて、現実レースのレース場の現在の風速及び風向き(例えば、スタート地点における風向き)が表示されている。方角データ欄1106には、環境情報152Bに基づいて、現実レースのレース場のスタート地点の方角が表示されている。気温差データ欄1107には、前日と現在との気温差または水温差が表示されている。
【0110】
図10に戻り、ステップS1110において、制御部190は、ステップS1040にて受信した予想情報と、ステップS1070にて受信した環境情報152Bとを比較する。具体的には、制御部190は、予想情報と、環境情報152Bに含まれる気温データ、天気(天候)データ、水温データ、波高データ、風速/風向データ、気温差データの少なくとも一つとを比較する。
【0111】
ステップS1120において、制御部190は、予想情報と環境情報152Bとの比較結果に基づいて、環境情報152Bが所定のしきい値範囲内であるか否かを判定する。具体的には、制御部190は、環境情報152Bが予想情報に影響を及ぼすことのない所定のしきい値範囲内であるか否かを判定する。例えば、制御部190は、環境情報152Bに含まれる気温データが所定のしきい値範囲内であるか否か、環境情報152Bに含まれる天気(天候)データが所定のしきい値範囲内であるか否か、環境情報152Bに含まれる水温データが所定のしきい値範囲内であるか否か、環境情報152Bに含まれる波高データが所定のしきい値範囲内であるか否か、環境情報152Bに含まれる風速/風向データが所定のしきい値範囲内であるか否か、環境情報152Bに含まれる気温差データが所定のしきい値範囲内であるか否か、の少なくとも一つを判定する。
【0112】
上記の各種データにおける所定のしきい値は、制御部190により予め設定されていても良く、ユーザの選択入力等に応じて適宜に変更可能でも良い。また、所定のしきい値は、レース会場、レースの種類や、季節等に応じて適宜に変更可能であっても良い。レース会場における過去の平均値からの差分を所定のしきい値としても良い。レース場ごとの平均値からの変化の程度をしきい値としてもよい。例えば、レース開催期間における日ごとの値に基づき、変化の程度にしきい値を設定することもできる。同レースの過去の環境条件の平均からの差分をしきい値に設定することもできる。
また、気温差または水温差のように環境情報の変化を測定する場合には、開催期間中における日ごとの差をしきい値としても良いし、1日のうちに行われる複数レースの場合の差をしきい値としても良い。
【0113】
ステップS1120において、環境情報152Bが所定のしきい値範囲内であると判定された場合(ステップS1120のYes)、制御部190は、処理をステップS1020へと戻す。一方で、ステップS1120において、環境情報152Bが所定のしきい値範囲内ではないと判定された場合(ステップS1120のNo)、制御部190は、ステップS1130において、予想アラートオブジェクトを生成する。そして、ステップS1140において、制御部190は、レース場オブジェクト501に重畳して予想アラートオブジェクトを表示する。
【0114】
以下、
図12を用いて、ステップS1140の表示処理を具体的に説明する。
図12は、ステップS1140における表示画面の一例を示す模式図である。
【0115】
図12に示すように、ステップS1120において環境情報152Bが所定のしきい値範囲内ではないと判定された場合、レース場オブジェクト501上に予想アラートオブジェクト1200(アラートオブジェクトの一例)が表示される。予想アラートオブジェクト1200は、現実のレースが実施されているレース場の環境によってレース予想に影響が出る場合に表示されるオブジェクトである。本例では、予想アラートオブジェクト1200には「レース予想」という文言とともに、予想情報の取得時間を示すための文言「12:30時点情報」、及び、レース予想に対して環境情報が悪影響を及ぼすことを示すための泣き顔マークが表示されている。
【0116】
レース場の環境によってレース予想に影響が出る場合とは、例えば、以下のような場合である。
(気温及び水温データ)
気温及び水温が一定温度以下である場合には、ボートに搭載されたモータの出力が気温及び水温の影響を受けて高くなるため、インコースのボートが勝ちやすい傾向がある。これに対して、気温及び水温が一定温度以上である場合には、モータの出力が低くなるため、アウトコースのボートが勝ちやすい傾向がある。
(気温差または水温差データ)
レース前日とレース当日との気温差または水温差があると、レースが荒れやすくなる傾向がある。
(波高データ)
波の高さが所定のしきい値を超えない場合には、体重の軽い出場者が勝ちやすい傾向がある。これに対して、波の高さが所定のしきい値を超えた場合には、体重の重い出場者が勝ちやすくなる傾向がある。
【0117】
このように、環境情報152Bに含まれる各種データが、予想情報に対して影響を及ぼす場合には、予想アラートオブジェクト1200が表示される。また、予想アラートオブジェクト1200を表示するとともに、環境オブジェクト1100に表示される各データ欄のうち、予想情報に影響を及ぼすデータが表示されるデータ欄について表示態様を変更しても良い。例えば、気温データが予想情報に影響を及ぼす場合には、
図12に示すように、気温データ欄1101の背景を通常とは違う色(例えば赤色)で表示するようにしても良い。
【0118】
なお、
図12の例では、予想アラートオブジェクト1200に泣き顔マークを表示しているが、例えば、環境情報がレース予想に影響を及ぼす度合いとして複数の段階を想定し、環境情報がレース予想に影響を及ぼす度合いに応じて、予想アラートオブジェクト1200に表示される顔マークを変更しても良い。また、制御部190は、第1サーバ装置20から予想情報を取得した時に、笑顔マークを有する予想アラートオブジェクト1200をディスプレイ132に表示しておき、環境情報152Bが所定のしきい値範囲内ではないと判定された場合(ステップS1120のNo)には、予想アラートオブジェクト1200内に表示される笑顔マークを泣き顔マークに変更するようにしても良い。
【0119】
ここで、例えば、予想アラートオブジェクト1200に対してユーザがタップ操作等の操作入力をした場合、表示画面は
図13に示すものに遷移する。予想アラートオブジェクト1200に対してユーザがタップ操作等をすると、
図13に示すように、予想アラートオブジェクト1200の代わりに予想表示欄1300が表示される。予想表示欄1300には、例えば予想情報に含まれる1以上の予想順位が表示されている。
図13の例では、予想情報として、人予想情報を用いる場合を示している。すなわち、レース記者が予想家となっており、該レース記者が予想した買い目が予想表示欄1300に示されている。
【0120】
また、予想表示欄1300には、予想家の画像アイコン1301が示されている。
図13の例において、予想家の音声及び動画を表示するための操作入力(例えば、画像アイコン1301をタップする等)がユーザによってなされると、スピーカ162から音声が出力され、ディスプレイ132の所定領域に動画が表示されうる。なお、過去のレース映像や展示レースの映像等が表示されても良い。また、コンピュータ予想情報を予想表示欄1300に表示するようにしても良い。
【0121】
(環境情報を利用した動作例2)
次に、
図14を参照して、システム1における環境情報を利用した動作例2について説明する。
図14は、本動作例における表示制御処理の一例を示すフローチャートである。
【0122】
図14に示すステップS1410の処理は、
図10に示す動作例1のステップS1090の処理(環境オブジェクト1100の表示処理)に引き続いて実行される。
ステップS1410において、制御部190は、第1サーバ装置20へ、レース場の位置情報の送信を要求する。具体的には、制御部190は、ディスプレイ132に表示されているレース場オブジェクト501に対応する現実のレース場の位置情報の送信を要求するための要求信号を第1サーバ装置20へ送信する。
【0123】
ステップS1420において、第1サーバ装置20の制御部290は、ユーザ端末10の制御部190から送信された位置情報に関する要求信号に基づき、現実のレース場の位置情報を取得する。制御部190は、特に、現実のレース場のスタート地点の方角に関する情報を位置情報として取得する。なお、制御部190は、
図10のステップS1060において取得された環境情報252Bに含まれる方角データを当該位置情報として取得しても良い。そして、ステップS1430において、制御部290は、取得した位置情報を、ユーザ端末10の制御部190へ送信する。
【0124】
ステップS1440において、制御部190は、
図10のステップS1070において第1サーバ装置20から受信した環境情報152Bと、ステップS1430において第1サーバ装置20から受信した位置情報とを比較する。本例においては、特に、環境情報152Bのうち風速/風向データと、位置情報のうち現実のレース場のスタート地点の方角データとが比較される。
【0125】
ステップS1450において、制御部190は、環境情報152Bと位置情報との比較結果に基づいて、現実のレース場の配置に対して風速/風向データが所定のしきい値範囲内であるか否かを判定する。例えば、制御部190は、現実のレース場のスタート地点における風速及び風向きが所定のしきい値範囲内にあるか否かを判定する。
【0126】
ステップS1450において、風速/風向データが所定のしきい値範囲内であると判定された場合(ステップS1450のYes)、制御部190は、処理を
図10のステップS1020へと戻す。一方で、ステップS1450において、風速/風向データが所定のしきい値範囲内ではないと判定された場合(ステップS1450のNo)、制御部190は、ステップS1460において、予想アラートオブジェクト1200(
図12)を生成し、ステップS1470において、当該予想アラートオブジェクト1200をレース場オブジェクト501に重畳してディスプレイ132上に表示する。
【0127】
風速/風向データに関しては、風速3m/s以上になるとレースに影響が出て、風速5m/s以上になるとデータと予想の整合性が取れなくなる傾向がある。例えば、レースのスタート地点が所定のしきい値(例えば、5m)を超える追い風の場合、インコースのボートが勝ちやすい傾向がある。これに対して、スタート地点が所定のしきい値(例えば、5m)を超える追い風の場合、センターコースのボートが勝ちやすい傾向がある。このように、動作例2においては、レース場のスタート地点の方角データと風速/風向データとを比較して、風速/風向データが予想情報に影響を及ぼす場合には、予想アラートオブジェクト1200を表示する。
【0128】
(環境情報を利用した動作例3)
次に、
図15~
図18を参照して、システム1における環境情報を利用した動作例3について説明する。
図15は、本動作例における表示制御処理の一例を示すフローチャートである。
【0129】
図15に示すステップS1510の処理は、
図10に示す動作例1のステップS1090(環境オブジェクト1100の表示処理)の処理に引き続いて実行される。
【0130】
ステップS1510において、制御部190は、予想情報と環境情報152Bとの比較結果に基づいて、環境情報152Bが所定のしきい値範囲内であるか否かを判定する。本ステップの処理は、
図10のステップS1120の処理と同様の処理であるが、本例では、制御部190は、環境情報152Bのうち特に波高データが所定のしきい値範囲内であるか否かを判定する。
【0131】
ステップS1510において、波高データが所定のしきい値範囲内であると判定された場合(ステップS1510のYes)、制御部190は、処理を
図10のステップS1020へと戻す。一方で、ステップS1510において、波高データが所定のしきい値範囲内ではないと判定された場合(ステップS1510のNo)、制御部190は、ステップS1520において、第1サーバ装置20へ、出場者データの送信を要求する。具体的には、制御部190は、レース場オブジェクト501において表示される仮想レースに対応する所定の現実レースの出場者データの送信を要求する要求信号を第1サーバ装置20へ送信する。
【0132】
ステップS1530において、第1サーバ装置20の制御部290は、出場者データを取得する。出場者データは、例えば、第1情報252Aに含まれ得るものである。出場者データには、出場者の顔写真、ライセンス(級)、登録番号、氏名、出身地、体重等の情報が含まれる。そして、ステップS1540において、制御部290は、取得した出場者データを、ユーザ端末10の制御部190へ送信する。
【0133】
ステップS1550において、制御部190は、波高データと出場者データとに基づき、第1サーバ装置20から受信した出場者データに含まれる複数の出場者のうち体重が所定のしきい値範囲外の出場者がいるか否かを判定する。制御部190は、例えば、体重が所定のしきい値以下である出場者がいるか否かを判定する。所定のしきい値は、波高データの値によって変更される。すなわち、波高データが比較的に低い場合には、所定のしきい値は大きくなり、波高データが比較的に高い場合には、所定のしきい値は小さくなる。例えば、ボートレースの場合には最低体重制限が設けられ、男子が52kg、女子が47kgに設定されている。最低体重制限から増減した程度をしきい値とすることもできる。
【0134】
ステップS1550において、体重が所定のしきい値範囲外の出場者がいないと判定された場合(ステップS1550のNo)、制御部190は、処理を
図10のステップS1020へと戻す。一方で、ステップS1550において、体重が所定のしきい値範囲外の出場者がいると判定された場合(ステップS1550のYes)、制御部190は、ステップS1560において、予想アラートオブジェクトを生成し、当該予想アラートオブジェクトを表示する。
【0135】
以下、
図16を用いて、ステップS1560の表示処理を具体的に説明する。
図16は、ステップS1560における表示画面の一例を示す模式図である。
【0136】
図16に示す例において、
図12と同様に、レース場オブジェクト501上に予想アラートオブジェクト1200が表示される。また、
図13と同様に、環境オブジェクト1100内の波高データ欄1104の表示態様が変更される。具体的には、波高データ欄1104の背景が通常とは違う色(例えば赤色)で表示される。
【0137】
さらに、レース場オブジェクト501上には、環境オブジェクト1100及び予想アラートオブジェクト1200に加えて、出場者データを表示するための出場者データ欄1600が表示される。当該出場者データ欄1600は、ステップS1560において表示態様が変更された波高データ欄1104をユーザがタップ操作することにより表示されても良い。出場者データ欄1600は、予想アラートオブジェクト1200の表示と同時に自動的に表示されても良い。
【0138】
出場者データ欄1600には、レース場オブジェクト501に対応する現実のレースに出場する出場者(本例では6名)のデータが表示される。具体的には、出場者データ欄1600には各出場者の顔写真、ライセンス(級)、登録番号、氏名、出身地、体重等が表示される。
【0139】
出場者データ欄1600に表示される複数の出場者のうち、体重が所定のしきい値範囲外の出場者に対して特記事項1610を表示しても良い。特記事項1610として、例えば、体重が所定のしきい値範囲外の出場者であるボート二郎の顔写真の上部に「不利」という文言が表示される。上述の通り、波高データが比較的高い場合には体重の軽い出場者が不利となるため、体重が他の出場者よりも軽いボート二郎に対して特記事項1610が表示される。一方で、例えば、体重が他の出場者よりも重い出場者であるボート三郎及びボート四郎の顔写真の上部には、特記事項1620として「有利」という文言が表示される。これにより、ユーザは、現実のレースの環境情報152B(例えば、波高データ)に基づいて、レースに出場する出場者のうちどの出場者が有利又は不利であるかを個別に把握することができる。
【0140】
なお、
図10、
図14、
図15の各フローチャートにおいて、環境情報が所定のしきい値範囲内ではないと判断された場合には、環境情報に基づいてディスプレイ132に表示されるレース場オブジェクト501の表示態様を変更させても良い。例えば、ステップS1510において、波高データが所定のしきい値よりも高いと判断された場合には、
図17の符号1700に示すように、ディスプレイ132に表示されるレース場オブジェクト501の水面を大きく波立たせるように、レース場オブジェクト501の表示態様を変更しても良い。
【0141】
上記の実施形態は、本発明の理解を容易にするための例示に過ぎず、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良することができると共に、本発明にはその均等物が含まれることは言うまでもない。
【0142】
上記実施形態では、ユーザ端末10の制御部190は、
図10のステップS1020~S1040において予想情報を取得した後に、ステップS1050~S1080において環境情報を取得する流れとしているが、この例に限られない。天候等の環境情報に基づいてレース予想を組み立てる場合もあるため、制御部190は、第1サーバ装置20から先に環境情報を取得しておき、その後に予想情報を取得するようにしても良い。
【0143】
また、第1サーバ装置20からの環境情報の取得回数は1回に限られず、複数回にわたって環境情報を取得するようにしても良い。具体的には、レースの周回展示の前に環境情報の1回目の取得を実施し、周回展示が終わった後で環境情報の2回目の取得を実施し、その後、本番レースが開始されるようにしても良い。この場合、ディスプレイ132には、複数回の環境情報に従ってそれぞれ組み立てられた複数の予想情報を表示するようにしても良い。具体的には、
図18に示すように、ディスプレイ132に表示される予想アラートオブジェクト1800に複数の予想情報を予想取得日時とともに表示することができる。
図18の例では、予想アラートオブジェクト1800内には、12:00時点では環境情報がレース予想に影響を及ぼさないことを示す笑顔マークが表示され、12:30時点では環境情報がレース予想に影響を及ぼすことを示す泣き顔マークが表示されている。
【0144】
[付記事項]
本開示の内容を列記すると以下の通りである。
【0145】
(項目1)
プロセッサ及び撮像部を備えた第1コンピュータにおいて実行されるプログラムであって、
前記プログラムは、前記プロセッサに、
現実世界における所定のレースに関する第1情報を第2コンピュータから受信するステップと、
前記第1情報に基づいて、前記所定のレースのレース場を表すレース場オブジェクトと、前記所定のレースの出場者又は移動体を表す移動オブジェクトと、を含む仮想オブジェクトを生成するステップと、
前記撮像部により撮像された前記第1コンピュータの周囲の現実画像に、前記仮想オブジェクトを重畳させて表示するステップと、
を実行させ、
前記第1情報は、前記レース場に関する環境情報を含み、
前記表示するステップは、前記環境情報が所定のしきい値範囲を外れた場合に、前記仮想オブジェクトの表示態様を変更することを含む、
プログラム。
これにより、第1コンピュータに表示される仮想レースを通じて、当該仮想レースに対応する現実世界のレースの環境を容易に把握することができる。
【0146】
(項目2)
前記第1情報は、前記所定のレースの予想順位情報をさらに含み、
前記表示するステップは、前記環境情報が所定のしきい値範囲を外れた場合に、前記環境情報が前記予想順位情報に影響を及ぼすことを示すアラートオブジェクトを表示することを含む、
項目1に記載のプログラム。
これにより、レースのデータやレース映像からユーザが直接的に認識することが難しい、レース場の天候等の環境情報によるレース予想のぶれを把握できる。そのため、ユーザが当該レースの投票券を購入する際の利便性を向上させることができる。
【0147】
(項目3)
前記アラートオブジェクトは、異なる属性を有する複数のアラート要素を含み、
前記複数のアラート要素のうち前記予想順位情報に影響を及ぼすアラート要素は、前記予想順位情報に影響を及ぼさないアラート要素とは異なる態様で表示される、
項目2に記載のプログラム。
予想順位情報に影響を及ぼすかどうかによってアラート要素の表示態様を変更させることで、仮想レースの視認性を向上させ、ユーザの利便性をさらに向上させることができる。
【0148】
(項目4)
前記第1情報は、前記レース場の走行路に関する位置情報をさらに含み、前記環境情報は、前記走行路における風向きに関する風向情報を含み、
前記表示するステップは、前記位置情報に対して前記風向情報が前記所定のしきい値範囲を外れた場合に、前記アラートオブジェクトを表示することを含む、
項目2又は項目3に記載のプログラム。
これにより、ユーザの利便性をさらに向上させることができる。
【0149】
(項目5)
前記表示するステップは、前記仮想オブジェクトに対する前記ユーザの第1操作入力に応じて、前記出場者又は前記移動体に関する情報の少なくとも一部を前記アラートオブジェクトと関連付けて表示することを含む、
項目2から項目4のいずれかに記載のプログラム。
これにより、レースの環境情報に応じて、どの出場者又は移動体が有利/不利となるかを容易に把握できる。
【0150】
(項目6)
前記環境情報は、前記レース場の気温、前記レース場の前日との気温差、前記レース場の天気、前記レース場の風速、前記レース場の走行路における風向き、前記レース場がボートレース場である場合の前記ボートレース場の水温、前記ボートレース場の前日との水温差、前記ボートレース場の波の高さの少なくとも一つを含む、
項目1から項目5のいずれかに記載のプログラム。
環境情報としては、上記のものを含むことが好ましい。
【0151】
(項目7)
前記表示するステップは、前記気温、前記気温差、前記天気、前記風速、前記風向き、前記水温、前記水温差、前記波の高さのうち所定のしきい値範囲を外れた要素に応じて前記レース場オブジェクトの表示態様を変更する、項目6に記載のプログラム。
これにより、環境情報に含まれる各種データのうちどのデータが通常とは異なる範囲にあるのか、また、どのデータがレース予想に影響を及ぼすのかを、容易に把握できる。
【0152】
(項目8)
プロセッサ及び撮像部を備えた第1コンピュータにおいて実行される情報処理方法であって、
前記情報処理方法は、前記プロセッサに、
現実世界における所定のレースに関する第1情報を第2コンピュータから受信するステップと、
前記第1情報に基づいて、レース場を表すレース場オブジェクトと、前記所定のレースの出場者又は移動体を表す移動オブジェクトと、を含む仮想オブジェクトを生成するステップと、
前記撮像部により撮像された前記第1コンピュータの周囲の現実画像に、前記仮想オブジェクトを重畳させて表示するステップと、
を実行させることを含み、
前記第1情報は、前記レース場に関する環境情報を含み、
前記表示するステップは、前記環境情報が所定のしきい値範囲を外れた場合に、前記仮想オブジェクトの表示態様を変更することを含む、
情報処理方法。
これにより、第1コンピュータに表示される仮想レースを通じて、当該仮想レースに対応する現実世界のレースの環境を容易に把握することができる。
【0153】
(項目9)
プロセッサ及び撮像部を備えた情報処理装置であって、前記プロセッサは、
現実世界における所定のレースに関する第1情報を第2コンピュータから受信し、
前記第1情報に基づいて、レース場を表すレース場オブジェクトと、前記所定のレースの出場者又は移動体を表す移動オブジェクトと、を含む仮想オブジェクトを生成し、
前記撮像部により撮像された前記情報処理装置の周囲の現実画像に、前記仮想オブジェクトを重畳させて表示するものであり、
前記第1情報は、前記レース場に関する環境情報を含み、
前記重畳させて表示することは、前記環境情報が所定のしきい値範囲を外れた場合に、前記仮想オブジェクトの表示態様を変更することを含む、
情報処理装置。
これにより、情報処理装置に表示される仮想レースを通じて、当該仮想レースに対応する現実世界のレースの環境を容易に把握することができる。
【0154】
(項目10)
第1プロセッサ及び撮像装置を備える第1コンピュータと、第2プロセッサを備え、前記第1コンピュータと通信接続可能な第2コンピュータと、を含むシステムあって、
前記第2プロセッサは、
現実世界における所定のレースに関する第1情報を取得し、前記第1情報を前記第1コンピュータへ送信するものであり、前記第1プロセッサは、
前記第1情報を第2コンピュータから受信し、
前記第1情報に基づいて、レース場を表すレース場オブジェクトと、前記所定のレースの出場者又は移動体を表す移動オブジェクトと、を含む仮想オブジェクトを生成し、
前記撮像装置により撮像された前記第1コンピュータの周囲の現実画像に、前記仮想オブジェクトを重畳させて表示するものであり、
前記第1情報は、前記レース場に関する環境情報を含み、
前記重畳させて表示することは、前記環境情報が所定のしきい値範囲を外れた場合に、前記仮想オブジェクトの表示態様を変更することを含む、
システム。
これにより、第1コンピュータに表示される仮想レースを通じて、当該仮想レースに対応する現実世界のレースの環境を容易に把握することができる。
【符号の説明】
【0155】
1:システム、10:ユーザ端末、20:第1サーバ装置、30:ネットワーク、40:第2サーバ装置、130:タッチスクリーン、150:(ユーザ端末の)記憶部、152A,252A:第1情報、152B,252B:環境情報、190:(ユーザ端末の)制御部、191:操作入力受付部、192:送受信部、193:オブジェクト生成部、194:表示制御部、195:平坦面検出部、196:第1情報取得部、197:環境情報取得部、198:選択情報取得部、250:(第1サーバ装置の)記憶部、290:(第1サーバ装置の)制御部、401:ボートレース場、402a~402f:ボート、501:レース場オブジェクト、502(502a~502f):移動オブジェクト、1100:環境オブジェクト、1101:気温データ欄、1102:天気データ欄、1103:水温データ欄、1104:波高データ欄、1105:風速/風向データ欄1105、1106:方角データ欄、1107:気温差データ欄、1200,1800:予想アラートオブジェクト、1300:予想表示欄、1600:出場者データ欄、1610,1620:特記事項