(58)【調査した分野】(Int.Cl.,DB名)
前記訓練ユーザ注視範囲制御手段は、前記運転画面中の同等位置、又は、前記運転画面中の同じ対象物に前記訓練ユーザの視線位置が位置していることを前記第1の継続注視条件を満たすと判定して、前記訓練ユーザ注視範囲のサイズを制御する、
請求項5又は6に記載のプログラム。
前記運転画面表示制御手段は、1)前記運転画面中の前記注視範囲内でも前記訓練ユーザ注視範囲内でもない範囲、2)前記運転画面中の前記注視範囲内又は前記訓練ユーザ注視範囲内であって前記注視範囲と前記訓練ユーザ注視範囲との重複範囲外、3)前記重複範囲内、の順番に明度が高くなるように前記運転画面を表示制御する、
請求項5〜7の何れか一項に記載のプログラム。
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1の技術によれば、模擬鉄道運行区間に設定されている信号機などに対してユーザが正しく視線を向けることができたかどうかを評価することはできる。しかし、特許文献1の技術は、シミュレーション中のユーザが行った行為(視線を動かす等)に対する事後評価であるため、どのタイミングでどのように視線を動かせば良いかという最も基本的な「視線の動かし方」を教える事はできなかった。
【0005】
本発明は、列車の運転における視線の動かし方を教えることができる列車運転シミュレータを実現するための技術を提供するために考案されたものである。
【課題を解決するための手段】
【0006】
上述した課題を解決するための第1の発明は、コンピュータに列車の運転シミュレーションを実行させるためのプログラムであって、
前記コンピュータは、運転士に対する運転条件を示す鉄道信号が所定位置に設置された所定の走行区間を走行する場合の各走行位置に対する運転士の模範視線位置が定められた教科書データを記憶する記憶部(例えば、
図8の記憶部500)を備え、
ユーザの操作入力に基づく前記走行区間の前記運転シミュレーションの実行中に、シミュレーション走行位置に対応する前記模範視線位置を前記教科書データから取得する取得手段(例えば、
図8の演算部200、シミュレーション制御部210、取得部214、
図13のステップS32)、
前記取得された前記模範視線位置に基づいて、現在のシミュレーション走行位置における前記模範視線位置を含む注視範囲を設定し、当該注視範囲を識別表示させた前記運転シミュレーションにおける運転画面を表示制御する運転画面表示制御手段(例えば、
図8の演算部200、運転画面表示制御部220、
図13のステップS34〜S38)、として前記コンピュータを機能させるためのプログラムである。
【0007】
第1の発明によれば、シミュレータで列車の運転の訓練をするユーザ(訓練ユーザ)のシミュレーションの画像(運転画面)内に、シミュレーション走行中、模範視線位置を含む注視範囲を明示し続けることが可能となる。よって、訓練ユーザに視線の動かし方を効果的に教えることができる。
【0008】
第2の発明は、前記運転画面表示制御手段が、前記運転画面中の前記注視範囲を当該注視範囲外と比較して明度が高くなるように前記運転画面を表示制御する相対明度制御手段(例えば、
図8の運転画面表示制御部220、相対明度制御部226、
図14のステップS52〜S54)を有する、第1の発明のプログラムである。
【0009】
また、第3の発明は、前記相対明度制御手段が、前記注視範囲外の領域の明度を低減させることで、前記運転画面中の前記注視範囲を当該注視範囲外と比較して明度が高くなるように表示制御する、第2の発明のプログラムである。
【0010】
第2又は第3の発明によれば、運転画面のうち注視範囲を相対的に見易くする一方で注視範囲外を相対的に見え難くすることで、より訓練効果を高めることができる。
【0011】
第4の発明は、前記運転画面表示制御手段が、過去の前記注視範囲のうち、現在の前記注視範囲に含まれていない領域の明度を時間経過に応じて徐々に低減させる残像表示処理を行う、第3の発明のプログラムである。
【0012】
第4の発明によれば、シミュレーション中の運転画面内を刻一刻と移動する注視範囲の移動跡を航跡のように示すことができる。よって、視線の動かし方を過去からの流れで捉え易くなり、訓練効果が高まる。
【0013】
第5の発明は、前記運転画面表示制御手段が、前記注視範囲に所定のマークを表示制御するマーク表示制御手段(例えば、
図8の運転画面表示制御部220、マーク表示制御部228、
図14のステップS62、S68)を有する、第1〜第4の何れかの発明のプログラムである。
【0014】
第5の発明によれば、注視範囲に所定のマークを表示させることで、注視範囲の視認性をより一層高めることができる。
【0015】
第6の発明は、前記運転画面表示制御手段が、前記注視範囲の大きさを、現在のシミュレーション走行速度に応じて変更するサイズ変更手段(例えば、
図8の運転画面表示制御部220、サイズ変更部222、
図13のステップS34)を有する、第1〜第5の何れかの発明のプログラムである。
【0016】
第6の発明によれば、列車の走行速度が高くなるにつれて視野が狭くなるといった状態を考慮した訓練を実現できる。
【0017】
第7の発明は、前記運転画面表示制御手段が、シミュレーション走行位置の変化に応じて変化する前記模範視線位置に対して、前記注視範囲を滑らかに変位させるための所定のフィルター処理を行って、前記注視範囲を設定する、第1〜第6の何れかの発明のプログラムである。
【0018】
第7の発明によれば、注視範囲が細かく振動する等して見難くなるのを抑制することができる。
【0019】
第8の発明は、現在のシミュレーション走行位置の次の走行位置に対応する前記模範視線位置を前記教科書データから取得する未来位置取得手段(例えば、
図8の運転画面表示制御部220、未来位置取得制御部230、
図14のステップS64)、として前記コンピュータを更に機能させ、前記運転画面表示制御手段は、現在のシミュレーション走行位置に対応する前記模範視線位置から、前記次の走行位置に対応する前記模範視線位置への相対方向を予告提示する予告表示体(例えば、
図7のベクター16)を表示制御する予告表示体制御手段(例えば、
図8の運転画面表示制御部220、予告表示体制御部232、
図14のステップS66〜S68)を有する、第1〜第7の何れかの発明のプログラムである。
【0020】
第8の発明によれば、次に視線をどちらに動かせば良いかの予告をすることができるので、視線の動かし方をより効果的に訓練できる。
【0021】
第9の発明は、前記教科書データには、更に、列車前方から一時的に注意を緩和することが可能な余裕タイミングである旨が列車位置と対応付けて定められており、前記運転画面表示制御手段は、現在のシミュレーション走行位置が前記余裕タイミングに対応する走行位置の場合に所定の表示制御を行う余裕タイミング時表示制御手段(例えば、
図8の余裕タイミング時表示制御部234、
図13のステップS70、S72)を有する、第1〜第8の何れかの発明のプログラムである。
【0022】
また、第10の発明は、前記余裕タイミング時表示制御手段は、列車前方の映像の視認性を低下させるための所定のフィルター処理を施すことで前記所定の表示制御を行う、第9の発明のプログラムである。
【0023】
第9又は第10の発明によれば、余裕タイミングを訓練ユーザに報せることができる。
【0024】
第11の発明は、前記コンピュータは、前記運転シミュレーション中のユーザの視線を追跡検出するアイトラッキング手段(例えば、
図1のアイトラッカー1202)を更に備え、教官ユーザによる前記運転シミュレーションを実行した際の前記アイトラッキング手段の視線追跡結果に基づいて、前記教科書データを生成する教科書データ生成手段(例えば、
図8の演算部200、シミュレーション制御部210、教科書データ生成部212、
図13のステップS8)、として前記コンピュータを更に機能させるための第1〜第10の何れかの発明のプログラムである。
【0025】
第11の発明によれば、同じ条件で教官がどのように視線を動かしているかを手本とした教科書データを生成することができる。
【0026】
第12の発明は、前記コンピュータは、前記運転シミュレーション中のユーザの視線を追跡検出するアイトラッキング手段(例えば、
図1のアイトラッカー1202)を更に備え、前記運転画面表示制御手段は、訓練ユーザによる前記運転シミュレーションを実行した際の前記アイトラッキング手段の視線追跡結果に基づく前記訓練ユーザの視線位置が、継続して注視し続けていることを示す第1の継続注視条件を満たす場合に、当該視線位置に基づく訓練ユーザ注視範囲を徐々に拡大するように前記運転画面に表示制御し、前記第1の継続注視条件を満たさなくなったときに前記訓練ユーザ注視範囲をリセットする訓練ユーザ注視範囲制御手段(例えば、
図19の演算部200、訓練ユーザ注視範囲制御部236a、
図22のステップS324、S326、S328)を有する、第1〜第10の何れかの発明のプログラムである。
【0027】
第12の発明によれば、運転シミュレーション中における訓練ユーザの視線追跡結果に基づいて、運転画面内に訓練ユーザ注視範囲を明示することができる。そしてその際、訓練ユーザの視線位置が継続注視条件を満たしている間は訓練ユーザ注視範囲を徐々に拡大して表示する一方、継続注視条件を満たさなくなったときには、当該訓練ユーザ注視範囲をリセットすることができる。これによれば、訓練ユーザが注視を継続しているかどうかを訓練ユーザ注視範囲の大きさによって明示することができる。
【0028】
第13の発明は、前記訓練ユーザ注視範囲制御手段は、前記運転画面中の同等位置、又は、前記運転画面中の同じ対象物に前記訓練ユーザの視線位置が位置していることを前記第1の継続注視条件を満たすと判定して、前記訓練ユーザ注視範囲のサイズを制御する、第12の発明のプログラムである。
【0029】
第13の発明によれば、訓練ユーザの視線位置が運転画面中の同等位置に位置し続けている間や、同じ対象物に位置し続けている間、訓練ユーザ注視範囲を徐々に拡大して表示することができる。
【0030】
第14の発明は、前記運転画面表示制御手段は、1)前記運転画面中の前記注視範囲内でも前記訓練ユーザ注視範囲内でもない範囲、2)前記運転画面中の前記注視範囲内又は前記訓練ユーザ注視範囲内であって前記注視範囲と前記訓練ユーザ注視範囲との重複範囲外、3)前記重複範囲内、の順番に明度が高くなるように前記運転画面を表示制御する、第12又は第13の発明のプログラムである。
【0031】
第14の発明によれば、運転画面中の注視範囲内や訓練ユーザ注視範囲内を、注視範囲内でも訓練ユーザ注視範囲内でもない範囲と比べて明るく表示することができる。さらに、注視範囲内又は訓練ユーザ注視範囲内のうち、その重複範囲をより明るく表示することができる。
【0032】
第15の発明は、列車の運転シミュレーションを実行する列車運転シミュレータであって、
運転士に対する運転条件を示す鉄道信号が所定位置に設置された所定の走行区間を走行する場合の各走行位置に対する運転士の模範視線位置が定められた教科書データを記憶する記憶手段(例えば、
図8の記憶部500)と、
ユーザの操作入力に基づく前記走行区間の前記運転シミュレーションの実行中に、シミュレーション走行位置に対応する前記模範視線位置を前記教科書データから取得する取得手段(例えば、
図1のコンピュータ1100、制御基板1150、
図8の演算部200、シミュレーション制御部210、取得部214、
図13のステップS32)と、
前記取得された前記模範視線位置に基づいて、現在のシミュレーション走行位置における前記模範視線位置を含む注視範囲を設定し、当該注視範囲を識別表示させた前記運転シミュレーションにおける運転画面を表示制御する運転画面表示制御手段(例えば、
図1のコンピュータ1100、制御基板1150、
図8の演算部200、運転画面表示制御部220、
図13のステップS34〜S38)と、を備えた列車運転シミュレータである。
【0033】
第15の発明によれば、第1の発明と同様の効果を奏する列車運転シミュレータを実現できる。
【発明を実施するための形態】
【0035】
以下、本発明を適用した実施形態の一例を説明するが、本発明を適用可能な形態が以下の実施形態に限られないことは勿論である。
【0036】
〔第1実施形態〕
図1は、本実施形態における列車運転シミュレータ1000の構成の一例を示す図である。
本実施形態の列車運転シミュレータ1000は、列車の運転を訓練するための装置であり、通信回線9により通信可能に接続されたコンピュータ1100と、アイトラッカー1202と、ビデオモニタ1204と、運転台模擬コントローラ1206と、を含むコンピュータシステムである。
図1の例では、一人用の列車運転シミュレータ1000を想定しているので、アイトラッカー1202・ビデオモニタ1204・運転台模擬コントローラ1206のセットを1セットのみ図示しているが、複数人が同時に訓練できるようにする場合には、当該セットを複数設けるものとする。また、図示していないが、運転台模擬コントローラ1206付近には、ダイヤ(各駅の到着・出発時刻が記載された運転士が携帯する時刻表)や運転士手帳等が配置される。また、運転台模擬コントローラ1206と一体または別体として、速度計などの計器やスイッチ類が配置される。すなわち、訓練ユーザの使用において、その形態が、運転台ないし乗務員室を模擬した態様となっている。
【0037】
通信回線9は、データ通信が可能な通信路を意味する。すなわち、通信回線9とは、直接接続のための専用線(専用ケーブル)やイーサネット(登録商標)等によるLAN(Local Area Network)の他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また、通信方法については有線/無線を問わない。
【0038】
コンピュータ1100は、本体装置1101と、キーボード1106と、タッチパネル1108とを有し、本体装置1101には制御基板1150を搭載する。
【0039】
制御基板1150には、CPU(Central Processing Unit)1151やGPU(Graphics Processing Unit)、DSP(Digital Signal Processor)などの各種マイクロプロセッサ、VRAMやRAM,ROM等の各種ICメモリ1152、通信装置1153が搭載されている。なお、制御基板1150の一部又は全部は、ASIC(Application Specific Integrated Circuit)や、FPGA(field-programmable gate array)、SoC(System on a Chip)により実現するとしてもよい。
【0040】
そして、コンピュータ1100は、制御基板1150が所定のプログラム及びデータに基づいて演算処理することにより、列車運転シミュレータ1000を統合的に制御する。
【0041】
なお、コンピュータ1100は単体として記しているが、各機能を分担する複数のコンピュータを搭載して相互に内部バスを介してデータ通信可能に接続した構成であっても良い。或いは、離れた場所に設置された独立した複数のコンピュータを、通信回線9を介してデータ通信させることで、全体としてコンピュータ1100として機能させる構成であっても良い。
【0042】
アイトラッカー1202と、ビデオモニタ1204と、運転台模擬コントローラ1206とのセットは、訓練ユーザ1人で1セットを使用する。
【0043】
アイトラッカー1202は、ユーザの視線の動きを所定周期で検出・追跡・分析するための装置であって、視線の動きを検出するためのデータ、或いは視線の動きを追跡・分析した演算結果のデータをコンピュータ1100へ送信することができる。
【0044】
アイトラッカー1202は、
図1のような、ユーザの正面に設置される非装着型の据え置き装置として実現することとしてもよいし、メガネやゴーグルの形態としてユーザが装着する装着型の装置として実現してもよい。また、視線の動きを検出する方法も特には問わない。例えば、撮像センサでユーザを正面から撮影し、撮影画像を画像処理して瞳が写っている部分を検出して、検出した瞳の向きを判定して視線方向を演算して求めるとしてもよい。そして、撮像センサなどのセンサ部分と、演算処理する装置とは一体であっても良いし、後者をコンピュータ1100にて実現する構成としてもよい。
【0045】
ビデオモニタ1204は、列車運転シミュレーションにおける運転席から見た仮想景観画像である運転画面を表示するための表示装置である。コンピュータ1100から出力される信号に従って映像を表示することができる。具体的には、据置型のフラットパネルディスプレイや、ヘッドマウントディスプレイ、ビデオプロジェクタなどを適宜利用して実現できる。なお、ヘッドマウントディスプレイで実現する場合には、ゴーグル型のアイトラッカー1202を兼ねる構成としてもよい。
【0046】
運転台模擬コントローラ1206は、訓練対象とする実際の電車の運転席を模擬する操作入力装置であって、例えばマスコンに相当する入力レバー等を備えて、操作入力信号をコンピュータ1100へ送信することができる。
【0047】
図2は、本実施形態の列車運転シミュレータ1000で使用される教科書データについて説明するための図である。
教科書データは、運転士に対する運転条件を示す鉄道信号が所定位置に設置された所定の走行区間を走行する場合の各走行位置に対する運転士の模範視線位置Pが定められたデータである。鉄道信号とは、列車に対して現示または表示により運転する条件を示すもののことであり、信号機などの信号の他、合図や標識などを含む。模範視線位置Pは、アイトラッカー1202で検出される視線が運転画面W2を貫いている位置である。
【0048】
運転画面W2は、運転士に対する運転条件を示す鉄道信号が所定位置に設置された所定の走行区間を走行する電車の運転台の様子や運転台の車窓から見える風景・景観に、各種情報表示を含めた画面である。シミュレーション画面と言っても良い。
図2の例では、とある瞬間の運転画面W2に、当該瞬間における走行位置に対応する模範視線位置Pを黒丸で、模範視線位置Pの所定時間過去から現在までの移動軌跡TLを破線で示しており、模範視線位置Pが信号機付近にある状態を示している。なお、教科書データは、当該シミュレータを教官役のユーザである教官ユーザが実演する際の視線の動きをアイトラッカー1202で連続的に取得して生成される。
【0049】
そして、本実施形態の列車運転シミュレータ1000では、訓練ユーザがシミュレータを使用する際の運転画面において、模範視線位置Pに基づく「注視範囲」を識別表示することで、訓練ユーザに「視線の動かし方」を教えることができる。「注視範囲」とは、模範視線位置Pに基づいて、現在のシミュレーション走行位置における模範視線位置を含む範囲であって訓練ユーザが見るべき範囲である。
【0050】
次に、模範視線位置Pに基づく注視範囲の識別表示パターン例について説明する。
図3は、注視範囲の第1の識別表示パターンの例を示す図である。当該パターンを便宜上「スポットライト」と呼称して説明する。この第1の識別表示パターンでは、模範視線位置Pに基づいて注視範囲10を設定し、運転画面W4にて注視範囲10をそれ以外の範囲(注視範囲外12)と比較して明度が高くなるように、注視範囲外12に該当する領域の明度を相対的に低減させる。
図3の例では、注視範囲10を分かり易くするために注視範囲外12に網掛けするとともに注視範囲10の輪郭線を現しているが、輪郭線を明示しない構成も可能である。
【0051】
注視範囲10の大きさは、
図4に示すように、現在のシミュレーション走行速度が高くなるほど狭くなるように設定されている。走行速度が高まるほど注視範囲10の大きさを小さくすることで、走行速度が上がると人の視野が狭まる特性に考慮して、視線の動かし方を訓練できる。なお、走行速度と注視範囲10の大きさの関係は
図4に示すような関係に限らず適宜設定可能である。例えば、初心者向けとして走行速度が高まるほど注視範囲10の大きさが大きくなるような特性を用意して、適宜切り換え可能に構成してもよい。
【0052】
注視範囲10と注視範囲外12との明度差は、
図5に示すように、現在のシミュレーション走行速度が高くなるほど明度差が高くなるように設定されている。なお、走行速度と明度差の関係は図示のような比例関係に限らず適宜設定可能である。
【0053】
図6は、注視範囲の第2の識別表示パターンの例を示す図である。当該パターンを便宜上「エリアリング」と呼称して説明する。この第2の識別表示パターンでは、注視範囲10の大きさは第1の識別表示パターンと同様に設定するとともに、注視範囲10に所定のマーク14を表示する。
図6に示す運転画面W6の例では、注視範囲10を円形としているので、その輪郭に沿ったリング状のマーク14を例示しているが、注視範囲10を矩形とするならば、マーク14をその四隅を縁取った形状としてもよい。
【0054】
図7は、注視範囲の第3の識別表示パターンの例を示す図である。当該パターンを便宜上「エリアリング+ベクター」と呼称して説明する。この第3の識別表示パターンでは、第2の識別表示パターンと同様にして、運転画面W8の例に示すように、注視範囲10に所定のマーク14を表示するのに加えてベクター16を付加表示する。
【0055】
ベクター16は、現在のシミュレーション走行位置に対応する模範視線位置Pから、未来となる次の走行位置に対応する模範視線位置Pfへの相対方向を予告提示する予告表示体である。
なお、未来となる次の走行位置は任意に定めることができる。例えば、現在のシミュレーション速度で移動した場合の0.1〜3秒後(シミュレーション速度に応じて秒数を可変としてもよい)の走行位置に対応する模範視線位置などとすることができる。
【0056】
なお、識別表示パターンは、これらに限らず適宜追加・省略することができる。
例えば、「スポットライト」にマーク14とベクター16の何れか一方又は両方を表示させる第4の識別表示パターンを設定することもできる。
【0057】
[機能構成の説明]
図8は、本実施形態における列車運転シミュレータ1000の機能構成例を示す機能ブロック図である。列車運転シミュレータ1000は、管理操作入力部100と、運転操作入力部102と、アイトラッキング部104と、演算部200と、音出力部390と、画像表示部392と、記憶部500と、を備える。
【0058】
管理操作入力部100は、列車運転シミュレータ1000の管理のための各種操作を入力するための手段であって、例えばキーボードや、タッチパネル、マウス、タッチパッド、レバー、スイッチ、などの操作入力デバイスにより実現され、操作入力信号を演算部200へ出力する。
図1の例では、キーボード1106がこれに該当する。
【0059】
運転操作入力部102は、ユーザが運転操作を入力する手段であって、例えばスイッチや、レバー、ダイヤル、タッチパネル、ペダル、ハンドルなどにより実現され、操作入力信号を演算部200へ出力する。
図1の例では、運転台模擬コントローラ1206がこれに該当する。
【0060】
アイトラッキング部104は、ユーザの視線を追跡検出する、いわゆるアイトラッキングを行う。そして、アイトラッキング部104は、視線方向を示す情報、或いは視線が運転画面を貫く位置座標を演算部200へ逐一出力する。本実施形態では後者とする。
図1の例では、アイトラッカー1202がこれに該当する。視線方向を示す情報の算出処理、或いは視線位置座標の算出処理の一部又は全部をコンピュータ1100にて実行する場合には、制御基板1150もこれに該当する。
【0061】
演算部200は、例えばCPUやGPU等のマイクロプロセッサや、ASIC、ICメモリなどの電子部品によって実現され、各機能部との間でデータの入出力制御を行う。そして、所定のプログラムと、各種設定データと、管理操作入力部100や、運転操作入力部102、アイトラッキング部104からの操作入力信号、などに基づいて各種の演算処理を実行して列車運転シミュレータ1000の動作を統合的に制御する。
【0062】
そして、本実施形態の演算部200は、シミュレーション制御部210と、計時部280と、音生成部290と、画像生成部292と、を含む。勿論、これら以外の機能部も適宜含めることができる。
【0063】
シミュレーション制御部210は、列車運転シミュレーションに係る各種演算処理を実行する。具体的には、教科書データ生成部212と、取得部214と、運転画面表示制御部220と、を備える。
【0064】
教科書データ生成部212は、教官ユーザによる列車運転シミュレーションを実行した際のアイトラッキング部104の視線追跡結果に基づいて教科書データを生成し記憶部500に記憶させる制御を行う。
【0065】
取得部214は、訓練ユーザの操作入力に基づく走行区間の列車運転シミュレーションの実行中に、シミュレーション走行位置に対応する模範視線位置Pを教科書データから取得する。
【0066】
運転画面表示制御部220は、運転画面W2〜W8(
図2、
図3、
図6、
図7参照)の表示制御をする。すなわち、取得部214により取得された模範視線位置Pに基づいて、現在のシミュレーション走行位置における模範視線位置Pを含む注視範囲10を設定し、当該注視範囲を識別表示させた運転画面を表示制御する。
【0067】
具体的には、運転画面表示制御部220は、サイズ変更部222と、フィルター処理部224と、相対明度制御部226と、マーク表示制御部228と、未来位置取得制御部230と、予告表示体制御部232と、余裕タイミング時表示制御部234と、を有する。
【0068】
サイズ変更部222は、注視範囲10の大きさを、現在のシミュレーション走行速度に応じて変更する。
【0069】
フィルター処理部224は、シミュレーション走行位置の変化に応じて変化する模範視線位置Pに対して、注視範囲10を滑らかに変位させるための所定のフィルター処理を行って、注視範囲10を設定する。フィルター処理は、注視範囲10のブレを抑制することができるならばアルゴリズムは問わない。例えば、模範視線位置Pにローパスフィルタを施すとしてもよい。
【0070】
相対明度制御部226は、運転画面中の注視範囲10を注視範囲外12と比較して明度が高くなるように、注視範囲外12の領域の明度を低減させて運転画面を表示制御する。本実施形態では、識別表示パターン「スポットライト」による表示制御がこれに該当する(
図3〜
図5参照)。
【0071】
マーク表示制御部228は、注視範囲10に所定のマーク14を表示制御する。本実施形態では、識別表示パターン「エリアリング」による表示制御がこれに該当する(
図6、
図7参照)。
【0072】
未来位置取得制御部230は、現在のシミュレーション走行位置の次の走行位置に対応する模範視線位置を教科書データから取得する(
図7参照)。
【0073】
予告表示体制御部232は、現在のシミュレーション走行位置に対応する模範視線位置から、次の走行位置に対応する模範視線位置への相対方向を予告提示する予告表示体を表示制御する。本実施形態ではベクター16の表示制御がこれに該当する(
図7参照)。
【0074】
余裕タイミング時表示制御部234は、現在のシミュレーション走行位置が余裕タイミングに対応する走行位置の場合に所定の表示制御を行う。余裕タイミングとは、列車前方から一時的に注意を緩和することが可能なタイミングである。例えば、ダイヤや計器などの列車前方以外の運転台等(乗務員室内)に視線を向ける時機として好適なタイミングと言い換えることができる。そして、余裕タイミング時表示制御部234は、列車前方の映像の視認性を低下させるための所定のフィルター処理を施すことで所定の表示制御を行って、余裕タイミングであることを訓練ユーザに報せる。
【0075】
なお、フィルター処理の内容は適宜設定可能である。例えば、列車前方の映像である運転画面を暗くして意図的に前方の視認性を下げたり、画面の一部又は全部を明滅させる、画面の一部又は全部の表示色を変更する、などでもよい。
【0076】
計時部280は、システムクロックを利用して現在日時やシミュレーション世界の日時、各種タイマーに係る計時を行う。
【0077】
音生成部290は、音声データの生成やデコードをするICやソフトウェアの実行により実現され、コンピュータ1100のシステム管理や列車運転シミュレーションに係る操作音や環境音などの音声データを生成或いはデコードする。そして、音声信号を音出力部390へ出力する。
【0078】
音出力部390は、音声信号を放音する。
図1の例では本体装置1101やタッチパネル1108が備えるスピーカ(不図示)がこれに該当する。
【0079】
画像生成部292は、コンピュータ1100のシステム管理に関する画像や、シミュレーション画像である運転画面W2〜W8等を生成することができる。そして、生成した画像を表示させるための画像信号を画像表示部392へ出力することができる。
【0080】
画像表示部392は、画像生成部292から入力される画像信号に基づいてシステム管理のための各種画像や、運転画面W2〜W8を表示する。例えば、フラットパネルディスプレイ、ブラウン管(CRT)、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。
図1の例では、システム管理に関する画像は、タッチパネル1108に表示され、運転画面はビデオモニタ1204にて表示される。
【0081】
記憶部500は、演算部200に列車運転シミュレータ1000を統合的に制御させるための諸機能を実現するためのプログラムや各種データ等を記憶する。また、演算部200の作業領域として用いられ、演算部200が各種プログラムに従って実行した演算結果などを一時的に記憶する。この機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD−ROMやDVDなどの光学ディスク、オンラインストレージなどによって実現される。
図1の例では本体装置1101が搭載するICメモリ1152がこれに該当する。
【0082】
図9は、本実施形態における記憶部500が記憶するプログラムやデータの例を示す図である。本実施形態における記憶部500は、システムプログラム501と、シミュレーションプログラム503と、シミュレーション環境初期設定データ510と、識別表示パターン選択テーブル520と、サイズ決定関数530と、明度差決定関数532と、を予め記憶している。また、記憶部500は、適宜生成・更新されるデータとして、教科書データ540と、シミュレーション制御データ700と、現在日時800と、を記憶する。その他、タイマーや、カウンタ、各種フラグなどの情報を適宜記憶できる。
【0083】
システムプログラム501は、演算部200が読み出して実行することでコンピュータ1100にコンピュータとして必要な基本的な入出力機能を実現するためのシステムプログラムである。
【0084】
シミュレーションプログラム503は、演算部200が読み出して実行することで、シミュレーション制御部210としての機能を実現させるためのプログラムである。
【0085】
シミュレーション環境初期設定データ510は、シミュレーションする環境条件別に用意されて、シミュレーションの内容を定義する各種データを格納する。
例えば、1つのシミュレーション環境初期設定データ510は、走行区間種類511と、季節種類512と、天候種類513と、時間帯種類514とを含む。また、シミュレーション環境初期設定データ510は、環境オブジェクト設定データ515と、鉄道信号設定データ516とを含む。勿論、これら以外のデータも適宜含めることができる。
【0086】
環境オブジェクト設定データ515は、シミュレーションする空間に配置される主に背景や環境を構成するオブジェクト(駅やビルなどの建物のオブジェクト、景色などの景観を構成するオブジェクト)毎に用意され、当該オブジェクトのモデルデータ、テクスチャデータ、配置データ、モーションデータなどを定義する。
【0087】
鉄道信号設定データ516は、シミュレーションする空間に配置される鉄道信号別に用意され、当該鉄道信号のモデルデータ、テクスチャデータ、配置位置データ、動作する場合に動作パターンデータなどを定義する。
【0088】
図9に戻って、識別表示パターン選択テーブル520は、注視範囲10の識別表示パターンの選択を定義する。具体的には、
図10に示すように、識別表示パターン選択テーブル520は、適用時間帯種類522と、シミュレーション走行速度域524との組み合わせ別に、何れかの識別表示パターンを対応づける。
【0089】
なお、適用時間帯種類522の種類やシミュレーション走行速度域524の分け方は、
図9の例に限らず適宜設定可能である。
【0090】
また、時間帯やシミュレーション走行速度域に対してどの識別表示パターンを対応付けるかの設定も適宜設定可能である。例えば、適用時間帯種類522と、シミュレーション走行速度域524との全ての組み合わせにおいて同じ識別表示パターン(例えば「スポットライト」)を割り当てるとしてもよい。或いは、日中はシミュレーション走行速度域524に係わらず識別表示パターンを「スポットライト」に設定し、それ以外の識別表示パターンを「エリアリング+ベクター」に設定するとしてもよい。
【0091】
また、マーク14やベクター16(
図7参照)の表示形態(形状や色、表示明度パターンなど)をシミュレーションする走行区間に応じて変える場合には、識別表示パターン選択テーブル520にて表示形態を指定すると良いだろう。
【0092】
また、識別表示パターン選択テーブル520を、天候と季節の組み合わせ別に用意し、実行されるシミュレーション環境に適合する天候と季節の組み合わせの識別表示パターン選択テーブル520を参照する構成も可能である。
【0093】
図9に戻って、サイズ決定関数530は、注視範囲10の大きさを決定するための関数である。本実施形態では、シミュレーション走行速度を変数とする関数(
図4参照)で定義するが、変数にはシミュレーション環境に関する変数(例えば、天候種類を示す値、時間帯を示す値など)を適宜含めることができる。また、
図4に示した関数は、一例として一次関数としているが二次関数など他の関数でもよい。ここでは、シミュレーション走行速度が大きくなるに従って、注視範囲が小さくなる関数が好適である。
【0094】
明度差決定関数532は、注視範囲10と注視範囲外12との明度差を決定するための関数である。本実施形態では、シミュレーション走行速度を変数とする関数(
図5参照)で定義するが、変数にはシミュレーション環境に関する変数(例えば、天候種類を示す値、時間帯を示す値など)を適宜含めることができる。また、
図5に示した関数は、一例として一次関数としているが二次関数など他の関数でもよい。ここでは、シミュレーション走行速度が大きくなるに従って、明度差が大きくなる関数が好適である。
【0095】
教科書データ540は、例えば
図11に示すように、固有の教科書ID541と、走行区間種類542と、季節種類543と、天候種類544と、時間帯種類545とを含む。また、シミュレーション走行位置を走行位置座標546と、模範視線位置Pの運転画面座標系における座標である模範視線位置座標547と、模範視線位置Pの移動速度である模範視線位置移動ベクトル548と、余裕タイミング範囲リスト550と、を対応づけて格納する。
【0096】
余裕タイミング範囲リスト550は、列車前方から一時的に注意を緩和することが可能な余裕タイミングを定義するデータである。具体的には、単数又は複数の走行位置座標の範囲が格納される。
【0097】
図9に戻って、シミュレーション制御データ700は、シミュレーションを実行制御するための各種データを格納する。例えば
図12に示すように、走行区間702と、季節704と、天候706と、時間帯707と、使用教科書ID708と、シミュレーション経過時間710と、シミュレーション走行位置712と、シミュレーション走行速度714と、を含む。また、現在模範視線位置座標720と、適用サイズ722と、適用識別表示パターン724と、適用明度差726と、未来模範視線位置座標730と、ベクター制御データ732と、環境オブジェクト制御データ740と、鉄道信号制御データ742と、運転画面データ744と、を含む。勿論、これら以外のデータも適宜含めることができる。
【0098】
走行区間702と、季節704と、天候706と、時間帯707は、列車運転シミュレーションの環境条件であって、シミュレーション開始前に所定の環境条件選択画面を表示してこれら各項目の選択入力を受け付けた結果である。
【0099】
使用教科書ID708は、使用される教科書データ540を示す。
【0100】
シミュレーション経過時間710は、シミュレーション開始からの経過時間である。
シミュレーション走行位置712及びシミュレーション走行速度714は、運転台模擬コントローラ1206(
図1参照)へ入力された運転操作に応じてシミュレーションされた仮想列車の走行位置と走行速度をそれぞれ格納する。
【0101】
現在模範視線位置座標720は、使用教科書ID708が示す教科書データ540から取得した、現在のシミュレーション走行位置712に対応する模範視線位置座標547の示す座標と、その前後の模範視線位置座標547の示す座標とを、所定のフィルター処理を施して丸められた値である。もしフィルター処理を行わない構成であれば、現在のシミュレーション走行位置712に対応する模範視線位置座標547の示す座標そのままでよい。
【0102】
適用サイズ722は、サイズ決定関数530(
図9、
図4参照)に基づいて算出された注視範囲10の大きさである。
【0103】
適用識別表示パターン724は、識別表示パターン選択テーブル520(
図10参照)から取得した、現在適用される識別表示パターンを示す。
【0104】
適用明度差726は、現在のシミュレーション状況が適合する適用識別表示パターン724が「スポットライト」である場合に、明度差決定関数532(
図9参照)に基づいて算出された、注視範囲10と注視範囲外12との明度差である。
【0105】
未来模範視線位置座標730は、現在のシミュレーション状況が適合する適用識別表示パターン724が「エリアリング+ベクター」である場合に、使用教科書ID708が示す教科書データ540から取得した、未来となる次の走行位置に対応する模範視線位置の模範視線位置座標547である。
【0106】
ベクター制御データ732は、ベクター16(
図7参照)を表示制御するためのデータである。本実施形態では、現在模範視線位置座標720が示す模範視線位置Pと未来模範視線位置座標730とに基づいて求められる未来模範視線位置Pfを結ぶ線分の表示制御データとされる。
【0107】
環境オブジェクト制御データ740は、走行区間702・季節704・天候706が適合するシミュレーション環境初期設定データ510(
図9参照)の環境オブジェクト設定データ515のオブジェクト毎に用意され、シミュレーション実行中のそれらの状態を制御するためのデータを格納する。
【0108】
鉄道信号制御データ742は、走行区間702・季節704・天候706が適合するシミュレーション環境初期設定データ510(
図9参照)の鉄道信号設定データ516のオブジェクト毎に用意され、シミュレーション実行中のそれらの状態を制御するためのデータを格納する。
【0109】
[動作の説明]
次に、列車運転シミュレータ1000の動作の説明として、コンピュータ1100における処理の流れについて説明する。ここで説明する処理の流れは、演算部200がシステムプログラム501とシミュレーションプログラム503とを実行することにより実行される。
【0110】
図13は、本実施形態のコンピュータ1100における処理の流れを説明するためのフローチャートである。
コンピュータ1100は、先ず所定のシミュレーション環境画面を表示させて、シミュレーションの環境条件の設定の選択入力を受け付ける(ステップS2)。選択入力の結果は、シミュレーション制御データ700に走行区間702・季節704・天候706・時間帯707として格納される(
図12参照)。
【0111】
次に、コンピュータ1100は、シミュレーションの環境設定に適合する教科書データ540を検索し、該当があれば(ステップS4のYES)、使用教科書ID708に設定して読み込む(ステップS6)。該当が無ければ(ステップS4のNO)、教科書データ作成処理を実行する(ステップS8)。
【0112】
教科書データ作成処理では、教官ユーザの実演を要請する所定の表示をした後に、走行区間702・季節704・天候706・時間帯707に適合するシミュレーション環境初期設定データ510(
図9参照)を読み出して、列車運転シミュレーションを実行する。この時、シミュレーション実行中の注視範囲10の識別表示は行わない。シミュレーションの開始とともにアイトラッカー1202で教官ユーザの視線方向の計測・追跡を開始し、計測時のシミュレーション走行位置と対応づけて新たな教科書データ540を作成して記憶する。そして、使用教科書ID708には、この新たな教科書データ540の識別情報を設定する。
【0113】
次に、コンピュータ1100は、訓練ユーザ向けの列車運転シミュレーションを開始する(ステップS30)。これにより、シミュレーション経過時間710(
図12参照)の計時が開始され、シミュレーション走行位置712、シミュレーション走行速度714がシミュレートされる。環境オブジェクト制御データ740及び鉄道信号制御データ742もシミュレーションの進行に応じて変更される。
【0114】
コンピュータ1100は、訓練ユーザ向けの列車運転シミュレーションを開始すると、ミュレーションが終了するまでの間、注視範囲10の識別表示に係る処理を所定周期で繰り返し実行する(ステップS32〜S80)。
【0115】
すなわち、コンピュータ1100は、使用教科書ID708の示す教科書データ540からシミュレーション走行位置712に対応する模範視線位置座標547及び前後の位置座標を読み出して、所定のフィルター処理を実行して、現在模範視線位置座標720(
図12参照)を設定する(ステップS32)。
【0116】
次いで、サイズ決定関数530(
図9、
図4参照)を参照して、適用サイズ722を設定し(ステップS34)、識別表示パターン選択テーブル520(
図10参照)を参照して適用識別表示パターン724(
図12参照)を決定する(ステップS36)。
【0117】
そして、コンピュータ1100は運転画面生成表示処理を実行する(ステップS38)。
【0118】
図14は、本実施形態における運転画面生成表示処理の流れを説明するためのフローチャートである。同処理において、コンピュータ1100は、適用識別表示パターン724が「スポットライト」の場合には(ステップS50のYES)、明度差決定関数532(
図9参照)を参照して適用明度差726(
図12参照)を決定する(ステップS52)。そして、注視範囲10と注視範囲外12とに適用明度差726をつけた運転画面W4を生成して表示させる(ステップS54:
図3参照)。
【0119】
もし、適用識別表示パターン724が「エリアリング」の場合には(ステップS60のYES)、コンピュータ1100は、注視範囲10に適用サイズ722に応じたマーク14を付加表示した運転画面W6を生成して表示させる(ステップS62:
図6参照)。
【0120】
もし、適用識別表示パターン724が「エリアリング+ベクター」の場合には(ステップS60のNO)、コンピュータ1100は、使用教科書ID708の示す教科書データ540から現在のシミュレーション走行位置712よりも未来となる次の走行位置に対応する模範視線位置座標547を読み出して、未来模範視線位置座標730(
図12参照)とする(ステップS64)。
【0121】
そして、ベクター制御データ732を決定して(ステップS74)、注視範囲10に適用サイズ722のマーク14及びベクター16を付加表示した運転画面W8を生成し表示させる(ステップS68:
図7参照)。
【0122】
図13に戻って、コンピュータ1100は、教科書データ540の余裕タイミング範囲リスト550を参照して、現在のシミュレーション走行位置712が余裕タイミングに該当する場合には(ステップS70のYES)、運転画面に所定のフィルター処理を適用して余裕タイミングであることを訓練ユーザに報知する(ステップS72)。訓練ユーザは、この報知をもって運転台の計器類やダイヤを視認する好適な時機が今であることを把握することができる。
【0123】
次に、コンピュータ1100は、シミュレーションの終了条件が満たされていなければ(ステップS80のNO)、コンピュータ1100はステップS32からステップS38を再び繰り返す。
もし、シミュレーションの終了条件が満たされると(ステップS80のYES)、コンピュータ1100は一連の処理を終了する。
【0124】
以上、本実施形態によれば、訓練ユーザ(訓練者であるユーザ)による列車運転シミュレーション実行中に、どのように視線を動かすべきかを分かり易く示して教えることができる。なかでも識別表示パターン=「スポットライト」では、模範視線位置Pの周囲(注視範囲10)のみ見え易くし、それ以外(注視範囲外12)を相対的に見え難くすることができるので、訓練ユーザが視線の動かし方を効果的に習得できると期待できる。
【0125】
〔第2実施形態〕
次に、第2実施形態について説明する。なお、第1実施形態と同様の構成については、同一の符号を付して説明は省略する。
【0126】
本実施形態では、列車運転シミュレーション中の訓練ユーザの視線位置(訓練ユーザ視線位置)を追跡検出して用い、第1実施形態で説明した運転画面中の模範視線位置Pに基づく注視範囲10の識別表示と併せて、訓練ユーザ視線位置に基づく訓練ユーザ注視範囲の識別表示を行う(識別表示制御処理)。またその際、訓練ユーザの視線追跡結果に基づいて、訓練ユーザ注視範囲を設定する(訓練ユーザ注視範囲制御処理)。注視範囲10については、第1実施形態と同様に模範視線位置Pを含む範囲として設定するが、本実施形態では、そのサイズは固定とする。
【0127】
(1)識別表示制御処理
図15は、運転画面における注視範囲10及び訓練ユーザ注視範囲80の識別表示パターンを説明する図である。なお、以下説明するように、本実施形態の注視範囲10及び訓練ユーザ注視範囲80の識別表示は、各範囲10,80の境界によって区画される領域毎に明度を調整することで行うが、
図15では、各領域の明度の高低をハッチングの濃淡によって模式的に示し、運転画面の表示内容などは省略している。
【0128】
具体的には、識別表示制御処理では、1)運転画面中の注視範囲10内でも訓練ユーザ注視範囲80内でもない範囲である第1範囲81、2)運転画面中の注視範囲10内であって注視範囲10と訓練ユーザ注視範囲80との重複範囲外である第2範囲82、又は、運転画面中の訓練ユーザ注視範囲80内であって注視範囲10と訓練ユーザ注視範囲80との重複範囲外である第3範囲83、3)注視範囲10と訓練ユーザ注視範囲80との重複範囲である第4範囲84、の順番に明度が高くなるように、各範囲81〜84に該当する領域毎に明度を調整して運転画面を表示制御する。換言すると、3)→2)→1)の順番に明度を暗くする調整をする、とも言える。なお、第2範囲82と第3範囲83との間にも明度差を設けるとしてもよい。すなわち、第3範囲83の領域に適用する明度を第2範囲82に適用する明度よりも高くする、或いはその逆としてもよい。
【0129】
(2)訓練ユーザ注視範囲制御処理
訓練ユーザ注視範囲80は、列車運転シミュレーション中に追跡検出される訓練ユーザ視線位置Pr(
図15参照)を含む所定範囲とされる。本実施形態では、訓練ユーザ注視範囲制御処理において、訓練ユーザ視線位置Prを中心とした円形の範囲を訓練ユーザ注視範囲80として設定する。なお、訓練ユーザ注視範囲80の形状は、円形以外にも、例えば、楕円形や多角形など、他の形状を適宜選択できる。
【0130】
具体的には、訓練ユーザ注視範囲制御処理では、訓練ユーザのシミュレーション走行中、訓練ユーザ視線位置Prが「継続して注視し続けていること」を示す継続注視条件を満たすか否かを繰り返し判定する。そして、判定結果に応じてその大きさを変更し、変更後の大きさで訓練ユーザ注視範囲80を設定する。本実施形態では、訓練ユーザ視線位置Prが運転画面中の同等位置に位置している場合に、継続注視条件を満たすと判定する。そして、満たすと判定している間は、訓練ユーザ視線位置Prを徐々に大きくする制御を行う。例えば、
図16に示すように、訓練ユーザ注視範囲80の大きさは、継続注視条件を満たしている時間(継続注視時間)が長くなるほど広くなるように設定される。
【0131】
一方、継続注視条件を満たさなくなったときには、訓練ユーザ注視範囲80のサイズを最小化して訓練ユーザ注視範囲80をリセットする。
【0132】
なお、継続注視条件として判定される運転画面中の同等位置に位置している場合とは、現在の訓練ユーザ視線位置Prがその直前の位置(前回位置)と等しい場合に加えて、前回位置との距離(画面上の距離)が予め定められる許容範囲内である場合を含む。つまり、ここでの訓練ユーザ注視範囲制御処理によれば、訓練ユーザ視線位置Prが大きく動かずに運転画面内のある特定の箇所に向けられている場合は、訓練ユーザ注視範囲80が徐々に広がっていく。視界が徐々に広がって良く見えてくる様を視覚的並びに感覚的に分かり易く表示することができる。これに対し、訓練ユーザの視線がキョロキョロとして訓練ユーザ視線位置Prが落ち着かなければ、リセットが頻繁に発生するため訓練ユーザ注視範囲80は狭いままである。
【0133】
ここで、列車の運転中に視線位置が大きく動いて定まらない状態では、運転に必要な情報や異常物を見落とす可能性がある。したがって、単に注視すべき注視範囲10に視線を向けるだけでなく、視線を動かした先を注視することも重要となる。この点、訓練ユーザ注視範囲制御処理によれば、訓練ユーザが運転画面中の同等位置を継続して注視しているかどうかを訓練ユーザ注視範囲80の大きさによって明示することができる。したがって、視線の動かし方をより効果的に教えることが可能となる。
【0134】
また、併せて行う運転画面中の注視範囲10及び訓練ユーザ注視範囲80の識別表示によって、第1範囲81〜第4範囲84の各領域の明度を調整した運転画面を表示することができる。すなわち、注視範囲10と訓練ユーザ注視範囲80との重複範囲(第4範囲84)を最も明るく、当該重複範囲外であって注視範囲10内(第2範囲82)や訓練ユーザ注視範囲80内(第3範囲83)をその次に明るく表示することができる。これによれば、訓練ユーザが注視範囲10を継続して注視した場合に、訓練ユーザ注視範囲80を徐々に広げながら訓練ユーザ視線位置Prの周辺領域を見易く表示することができ、訓練効果が高められる。
【0135】
図17は、継続注視時間が短いとき(例えば訓練ユーザ注視範囲80のリセット直後)の運転画面W91の一例を示す図であり、
図18は、訓練ユーザが
図17の状態からそのまま同等位置を注視し続けたときの運転画面W93の一例を示す図である。
図17及び
図18に示すように、本実施形態では、識別表示制御処理に際し、注視範囲10の輪郭に沿ったリング状のマーク14を表示するとともに、訓練ユーザ注視範囲80の輪郭に沿ったリング状のマーク86を表示する。
図17及び
図18に示すように、訓練ユーザが同等位置を継続して注視し続けると、明るい領域が広がって周辺領域が次第に見易くなる。
【0136】
なお、訓練ユーザ視線位置Prが同等位置に位置している場合に継続注視条件を満たすとする判定に限らず、運転画面中の同じ対象物に訓練ユーザ視線位置Prが位置している場合に、継続注視条件を満たすと判定するようにしてもよい。この場合は、色情報や輝度情報の変化をもとに画像内の対象物を追跡する公知の画像認識技術を利用することができる。具体的には、訓練ユーザ視線位置Prを中心とする部分画像を画面から切り出することを毎フレーム(動画のフレッシュレートのこと)行い、隣接するフレーム間(前後のフレーム間)で当該部分画像同士を比較して類似度を算出する。そして、類似度が一定以上の類似条件を満たす場合には、現在(現在のフレーム)の訓練ユーザ視線位置Prが前回位置(前回のフレームにおける訓練ユーザ視線位置Pr)の対象物に位置していると判定して、継続注視条件を満たすと判定する。
【0137】
[機能構成の説明]
図19は、本実施形態における列車運転シミュレータ1000の機能構成例を示す機能ブロック図である。また、
図20は、本実施形態の列車運転シミュレータ1000において記憶部500が記憶するプログラムやデータの例を示す図である。
【0138】
本実施形態では、演算部200は、シミュレーション制御部210aと、計時部280と、音生成部290と、画像生成部292と、を含む。勿論、これら以外の機能部も適宜含めることができる。
【0139】
シミュレーション制御部210aは、列車運転シミュレーションに係る各種演算処理を実行する。具体的には、教科書データ生成部212と、取得部214と、訓練ユーザ視線位置取得部215aと、運転画面表示制御部220aと、を備える。
【0140】
訓練ユーザ視線位置取得部215aは、訓練ユーザによる列車運転シミュレーション中、アイトラッキング部104の視線追跡結果(訓練ユーザの視線位置座標)を取得する。
【0141】
運転画面表示制御部220aは、運転画面を表示制御する。すなわち、取得部214により取得された模範視線位置Pに基づいて現在のシミュレーション走行位置における模範視線位置Pを含む注視範囲10を設定するとともに、訓練ユーザ視線位置取得部215aにより取得された視線追跡結果に基づく現在の訓練ユーザ視線位置Prを含む訓練ユーザ注視範囲80を設定し、注視範囲10と訓練ユーザ注視範囲80とを識別表示させた運転画面を表示制御する。
【0142】
具体的には、運転画面表示制御部220aは、フィルター処理部224と、訓練ユーザ注視範囲制御部236aと、明度制御部242aと、マーク表示制御部228aと、余裕タイミング時表示制御部234と、を有する。
【0143】
訓練ユーザ注視範囲制御部236aは、訓練ユーザ注視範囲制御処理を実行する。具体的には、訓練ユーザ注視範囲制御部236aは、継続注視条件判定部238aと、訓練ユーザ注視範囲サイズ変更部240aと、を備える。
【0144】
継続注視条件判定部238aは、現在の訓練ユーザ視線位置Prをその前回位置と比較し、継続注視条件を満たすか否かを判定する。本実施形態では、前回位置との距離(画面上の距離)が所定の許容範囲内の場合に訓練ユーザ視線位置Prが運転画面中の同等位置に位置しており、継続注視条件を満たすと判定する。
【0145】
訓練ユーザ注視範囲サイズ変更部240aは、継続注視条件判定部238aの判定結果に従って訓練ユーザ注視範囲80の拡大及びリセットを行う。すなわち、継続注視条件を満たしている場合は、訓練ユーザ注視範囲サイズ決定関数534aに基づいて、訓練ユーザ注視範囲80の大きさを継続注視時間に応じたサイズに拡大する。一方、継続注視条件を満たさない場合は、サイズを最小化してリセットする。
【0146】
明度制御部242aは、注視範囲10と訓練ユーザ注視範囲80との境界によって区画される第1範囲81〜第4範囲84の領域毎に異なる明度を適用し、運転画面を表示制御する。具体的には、明度設定536aに従い、第1範囲81、第2範囲82又は第3範囲83、第4範囲84の順番に明度が高くなるように、各領域の明度を調整する。
【0147】
マーク表示制御部228aは、注視範囲10に所定のマーク14を表示するとともに、訓練ユーザ注視範囲80に所定のマーク86を表示する制御を行う(
図17、
図18参照)。このマーク表示制御部228aが行う訓練ユーザ注視範囲80に対するマーク86の表示と、明度制御部242aが行う明度の調整とによって識別表示制御処理が実現される。
【0148】
また、記憶部500は、システムプログラム501と、シミュレーションプログラム503aと、シミュレーション環境初期設定データ510と、訓練ユーザ注視範囲サイズ決定関数534aと、明度設定536aと、を予め記憶している。また、記憶部500は、適宜生成・更新されるデータとして、教科書データ540と、訓練ユーザ視線追跡結果データ560aと、シミュレーション制御データ700aと、現在日時800と、を記憶する。
【0149】
シミュレーションプログラム503aは、演算部200が読み出して実行することで、シミュレーション制御部210aとしての機能を実現させるためのプログラムである。
【0150】
訓練ユーザ注視範囲サイズ決定関数534aは、訓練ユーザ注視範囲80の大きさを決定するための関数である。本実施形態では、継続注視時間を変数とする関数(
図16参照)で定義する。また、
図16に示した関数は、一例として一次関数としているが二次関数など他の関数でもよい。ここでは、継続注視時間が長くなるに従って、訓練ユーザ注視範囲80の大きさが大きくなる関数が好適である。
【0151】
明度設定536aは、運転画面の表示制御にあたり、第1範囲81〜第4範囲84の各領域に適用する明度の設定値を記憶する。具体的には、明度設定536aには、第1範囲81〜第4範囲84の明度として、第1範囲81、第2範囲82又は第3範囲83、第4範囲84の順番で高い値が設定される。
【0152】
訓練ユーザ視線追跡結果データ560aは、列車運転シミュレーション中に訓練ユーザ視線位置取得部215aが取得した訓練ユーザの視線追跡結果を時系列で記憶する。
【0153】
シミュレーション制御データ700aは、例えば
図21に示すように、走行区間702と、季節704と、天候706と、時間帯707と、使用教科書ID708と、シミュレーション経過時間710と、シミュレーション走行位置712と、シミュレーション走行速度714と、を含む。また、現在模範視線位置座標720と、現在訓練ユーザ視線位置座標746aと、適用訓練ユーザ注視範囲サイズ748aと、環境オブジェクト制御データ740と、鉄道信号制御データ742と、運転画面データ744と、を含む。勿論、これら以外のデータも適宜含めることができる。
【0154】
現在訓練ユーザ視線位置座標746aは、訓練ユーザ視線位置取得部215aが取得した最新の視線追跡結果が示す視線位置座標と、その直前の視線追跡結果が示す視線位置座標とを、所定のフィルター処理を施して丸めた値である。もしフィルター処理を行わない構成であれば、訓練ユーザ視線位置取得部215aが取得した視線追跡結果が示す視線位置座標そのままでよい。
【0155】
適用訓練ユーザ注視範囲サイズ748aは、列車運転シミュレーション中、訓練ユーザ注視範囲サイズ変更部240aによって変更される訓練ユーザ注視範囲80の大きさである。
【0156】
[動作の説明]
次に、列車運転シミュレータ1000の動作の説明として、コンピュータ1100における処理の流れについて、
図22を参照して説明する。ここで説明する処理の流れは、演算部200がシステムプログラム501とシミュレーションプログラム503aとを実行することにより実行される。
【0157】
第2実施形態では、コンピュータ1100は、ステップS30で列車運転シミュレーションを開始した後、継続注視時間を初期化し、タイマーを起動してその計時を開始する(ステップS31)。そして、コンピュータ1100は、ステップS32で現在模範視線位置座標720を設定した後、訓練ユーザ視線追跡結果データ560aから最新の視線追跡結果及び直前の視線追跡結果を読み出し、それらが示す視線位置座標に所定のフィルター処理を施し現在の訓練ユーザ視線位置Prを求めて、現在訓練ユーザ視線位置座標746a(
図21参照)を設定する(ステップS322)。
【0158】
次いで、コンピュータ1100は、現在の訓練ユーザ視線位置Prに基づいて、継続注視条件を判定する。そして、訓練ユーザ視線位置Prが運転画面中の同等位置に位置しており継続注視条件を満たす場合には(ステップS324:YES)、訓練ユーザ注視範囲サイズ決定関数534a(
図16、
図20参照)を参照し、継続注視時間を用いて訓練ユーザ注視範囲80の大きさを設定する(ステップS326)。一方、継続注視条件を満たさない場合には(ステップS324:NO)、訓練ユーザ注視範囲80を最小化してリセットする(ステップS328)。その際、ステップS31で起動したタイマーをクリアして、継続注視時間の計時を再度開始する。
【0159】
その後、コンピュータ1100は、運転画面生成表示処理を実行する(ステップS381)。本実施形態の運転画面生成表示処理では先ず、明度設定536aに従って第1範囲81〜第4範囲84の領域毎に明度差をつけた運転画面を生成する。そして、注視範囲10にマーク14を付加表示するとともに、訓練ユーザ注視範囲80にマーク86を付加表示して、運転画面を表示制御する。運転画面生成表示処理を実行したならば、ステップS70に移行する。
【0160】
以上、本実施形態によれば、訓練ユーザに対し、視線の動かし方をより効果的に分かり易く教えることが可能となる。
【0161】
〔変形例〕
以上、本発明を適用した実施形態について説明したが、本発明を適用可能な形態は上記形態に限定されるものではなく適宜構成要素の追加・省略・変更を施すことができる。
【0162】
例えば、次の走行位置に対応する模範視線位置への相対方向の予告提示は、
図7に例示したような線状のベクター16に限らない。例えば、
図23に示すように、マーク14の外縁部に次の走行位置に対応する模範視線位置への相対方向へ凸部を向けたデザインのベクター16Bとしてもよい。
【0163】
また、上記実施形態ではベクター16はマーク14に付属して表示するように例示したが、識別表示パターン=「スポットライト」の際に表示させる構成も可能である。更に言うならば、マーク14それ自体も識別表示パターン=「スポットライト」の際に表示させる構成も可能である。具体的には、
図14のステップS54の後に、ステップS66及びステップS68に相当するステップを追加すればよい。
【0164】
また、訓練ユーザに、視線の動かし方の経路を意識させたいならば、
図24に示すように、識別表示パターン=「スポットライト」の際に、注視範囲10の残像表示を設けるとしてもよい。すなわち、運転画面表示制御部220に、過去の注視範囲10pのうち、現在の注視範囲10に含まれていない領域の明度を時間経過に応じて徐々に低減させる残像表示処理を実行させればよい。
【0165】
また、上記実施形態では、訓練ユーザ向けに列車運転シミュレータを動作させる構成としたが、教科書データ540の作成時に教官ユーザが運転操作した際の運転情報(操作ノッチや走行位置、走行速度など)を教科書データ540に合わせて記録しておき、その運転情報に従った列車運転シミュレーションを実行して、その運転画面(模範運転画面)を表示させることとしてもよい。また、運転画面は3DCGによりレンダリングにより生成せず、実際に走行している列車の運転台から撮影された録画により代替することもできる。
【0166】
また、第1実施形態で説明した未来の模範視線位置Pfに係る予告提示を第2実施形態にも適用し、注視範囲10及び訓練ユーザ注視範囲80の識別表示とともに当該予告提示を行う構成としてもよい。さらに、第1実施形態で説明した識別表示パターンの選択を第2実施形態にも適用し、時間帯やシミュレーション走行速度域に応じて注視範囲10の識別表示パターンを変えるとしてもよい。