<通信システムの概要>
図1及び2は通信システム1の一例を示す図である。通信システム1は、例えば、高度道路交通システム(ITS:Intelligent Transport Systems)で使用されるシステムである。具体的には、通信システム1は、ITSの安全運転支援通信システムとして使用されることが可能である。安全運転支援通信システムは、安全運転支援システムと呼ばれたり、安全運転支援無線システムと呼ばれたりする。
図1に示されるように、通信システム1は、複数の携帯型電子機器2と、複数の路側機3と、複数の車両4にそれぞれ搭載された複数の電子機器40と、センター装置5とを備える。複数の携帯型電子機器2と、複数の路側機3と、複数の電子機器40と、センター装置5とは、ネットワーク6に接続されている。複数の携帯型電子機器2と、複数の路側機3と、複数の電子機器40と、センター装置5とは、ネットワーク6を通じて互いに通信することが可能である。車両4は、それに搭載された電子機器40によって、携帯型電子機器2等の他の装置と通信することが可能である。ネットワーク6には、中継装置及びインターネット等が含まれる。以後、携帯型電子機器2を単に電子機器2と呼ぶことがある。また、車両4に搭載された電子機器40を車載機器40と呼ぶことがある。
通信システム1では、図2に示されるように、交差点7等に配置されている路側機3と、車道8を走る自動車等の車両4と、歩道9を歩くユーザ20が所持する電子機器2とが、互いに通信を行うことが可能である。ユーザ20は歩行者であるとも言える。また、複数の車両4は、互いに通信することが可能である。路側機3と車両4との間の通信、車両4間の通信、路側機3と歩行者の電子機器2との間の通信、歩行者の電子機器2と車両4の間の通信は、それぞれ、路車間通信、車車間通信、路歩間通信、歩車間通信と呼ばれる。以後、ユーザ20を歩行者20と呼ぶことがある。
電子機器2は、後述する操作ボタン220を備える。電子機器2は、操作ボタン220が操作されると、当該電子機器2の位置情報等をセンター装置5に送信することが可能である。歩行者20に所持される電子機器2は、歩端末と呼ばれることがある。
路側機3は、例えば、信号機10の点灯に関する情報及び道路規制に関する情報などを車両4及び電子機器2に通知することが可能である。また、路側機3は、その周辺の車両4及び歩行者を検知することが可能である。交差点7に配置された路側機3は、例えば、横断歩道80を渡る歩行者を検知することが可能である。そして、路側機3は、検知した車両4及び歩行者に関する情報を、車両4及び電子機器2に通知することが可能である。また、路側機3は、車両4及び電子機器2から通知される情報を、他の車両4及び電子機器2に通知することが可能である。
ここで、本例では、歩道とは、車道に沿って当該車道に併設された、歩行者が通行するための道路であるとする。また、車道を横切る横断歩道は、歩道とは別のものであって、車道に含まれるものとする。
車両4は、自身の位置、速度及びウィンカーに関する情報などを、車載機器40を使用して、他の車両4、路側機3及び電子機器2に対して通知することが可能である。そして、車両4は、他の装置から通知される情報に基づいて警告等の各種通知を運転者に行うことによって、運転者の安全運転を支援することが可能である。車両4は、車載機器40が備えるスピーカ及び表示装置等を利用して、運転者に各種通知を行うことが可能である。車載機器40は、例えば、通信機能を有するカーナビゲーション装置である。
このように、通信システム1では、路車間通信、車車間通信、路歩間通信及び歩車間通信が行われることによって、車両4の運転者の安全運転が支援される。
なお図2の例では、車両4として、自動車の車両が示されているが、車両4は、自動車以外の車両であってもよい。例えば、車両4は、バスの車両であってもよいし、路面電車の車両であってもよい。
<電子機器の構成例>
図3は電子機器2の外観の一例を示す斜視図である。図4は電子機器2の電気的構成の一例を示すブロック図である。図3に示されるように、電子機器2は、当該電子機器2の外装を成すケース21を備える。ケース21は、例えば、細長い板状を成しており、ユーザ20が片手でそれを所持することが可能な形状となっている。なお、ケース21の形状は図3の例には限られない。
電子機器2は、ケース21以外にも、図4に示されるように、制御部200、通信部210、操作ボタン220及び衛星信号受信部230を備える。制御部200、通信部210、操作ボタン220及び衛星信号受信部230は、ケース21内に収納されている。ユーザ20が操作ボタン220を操作できるように、操作ボタン220の表面の一部はケース21から露出している。
制御部200は、電子機器2の他の構成要素を制御することによって、電子機器2の動作を統括的に管理することが可能である。制御部200は制御装置あるいは制御回路とも言える。制御部200は、以下にさらに詳細に述べられるように、種々の機能を実行するための制御及び処理能力を提供するために、少なくとも1つのプロセッサを含む。
種々の実施形態によれば、少なくとも1つのプロセッサは、単一の集積回路(IC)として、又は複数の通信可能に接続された集積回路IC及び/又はディスクリート回路(discrete circuits)として実行されてもよい。少なくとも1つのプロセッサは、種々の既知の技術に従って実行されることが可能である。
1つの実施形態において、プロセッサは、例えば、関連するメモリに記憶された指示を実行することによって1以上のデータ計算手続又は処理を実行するように構成された1以上の回路又はユニットを含む。他の実施形態において、プロセッサは、1以上のデータ計算手続き又は処理を実行するように構成されたファームウェア(例えば、ディスクリートロジックコンポーネント)であってもよい。
種々の実施形態によれば、プロセッサは、1以上のプロセッサ、コントローラ、マイクロプロセッサ、マイクロコントローラ、特定用途向け集積回路(ASIC)、デジタル信号処理装置、プログラマブルロジックデバイス、フィールドプログラマブルゲートアレイ、又はこれらのデバイス若しくは構成の任意の組み合わせ、又は他の既知のデバイス及び構成の組み合わせを含み、以下に説明される機能を実行してもよい。
本例では、制御部200は、CPU(Central Processing Unit)201及び記憶部202を備える。記憶部202は、ROM(Read Only Memory)及びRAM(Random Access Memory)などの、CPU201が読み取り可能な非一時的な記録媒体を含む。記憶部202が有するROMは、例えば、不揮発性メモリであるフラッシュROM(フラッシュメモリ)である。記憶部202には、電子機器2を制御するための制御プログラム202a等が記憶されている。制御部200の各種機能は、CPU201が記憶部202内の制御プログラム202aを実行することによって実現される。
なお、制御部200の構成は上記の例に限られない。例えば、制御部200は、複数のCPU201を備えてもよい。また制御部200は、少なくとも一つのDSP(Digital Signal Processor)を備えてもよい。また、制御部200の全ての機能あるいは制御部200の一部の機能は、その機能の実現にソフトウェアが不要なハードウェア回路によって実現されてもよい。また、記憶部202は、ROM及びRAM以外の、コンピュータが読み取り可能な非一時的な記録媒体を備えていてもよい。記憶部202は、例えば、小型のハードディスクドライブ及びSSD(Solid State Drive)などを備えていてもよい。
通信部210は、有線及び無線の少なくとも一方でネットワーク6に接続されている。電子機器2の通信部210は、ネットワーク6を通じて、他の電子機器2、路側機3、車載機器40及びセンター装置5と通信することが可能である。通信部210は、他の装置から受信した情報を制御部200に出力する。通信部210は、制御部200からの情報を他の装置に送信する。通信部210は通信回路とも言える。
なお、電子機器2の通信部210は、他の電子機器2、路側機3、車載機器40及びセンター装置5の少なくとも一つと、ネットワーク6を介さずに直接通信することが可能であってもよい。この場合、通信部210は、例えば、ITSに割り当てられている700MHz帯を使用して、他の電子機器2、路側機3、車載機器40及びセンター装置5の少なくとも一つと直接無線通信を行ってもよい。また、通信部210は、携帯電話システムの基地局と無線通信することが可能であってもよい。この場合には、通信部210は、基地局を通じて、インターネットに接続された機器(例えば、携帯電話機及びウェブサーバ等)と通信することが可能である。また通信部210は、近距離無線通信を行うことが可能であってもよい。例えば、通信部210は、Bluetooth(登録商標)に準拠して無線通信することが可能であってもよい。また通信部210は、WiFi等の無線LAN(Local Area Network)を用いて無線通信を行うことが可能であってもよい。また通信部210は、他の無線通信方式に基づいて無線通信することが可能であってもよい。
衛星信号受信部230は、測位衛星が送信する衛星信号を受信することが可能である。衛星信号受信部230は衛星信号受信回路とも言える。衛星信号受信部230は、受信した衛星信号に基づいて、電子機器2の絶対的な位置(言い換えれば、絶対座標系の位置)を示す位置情報を取得することが可能である。受信部230は、電子機器2の位置情報を取得する位置取得部あるいは位置取得回路であると言える。衛星信号受信部230が取得する位置情報は、例えば、緯度、経度及び高度で表される。電子機器2の位置情報は、当該電子機器2を持つユーザ20(言い換えれば歩行者20)の位置を示す位置情報であるとも言える。以後、衛星信号受信部230を単に受信部230と呼ぶことがある。
受信部230は、例えばGPS受信機であって、GPS(Global Positioning System)の測位衛星からの無線信号を受信することが可能である。受信部230は、受信した無線信号に基づいて、電子機器2の現在位置を、例えば緯度、経度及び高度で算出し、算出した緯度、経度及び高度を含む位置情報を制御部200に出力する。受信部230は、位置情報を繰り返し取得する。
なお受信部230は、GPS以外のGNSS(Global Navigation Satellite System)の測位衛星からの信号に基づいて電子機器2の位置情報を求めてもよい。例えば、受信部230は、GLONASS(Global Navigation Satellite System)、IRNSS(Indian Regional Navigational Satellite System)、COMPASS、Galileoあるいは準天頂衛星システム(QZSS:Quasi-Zenith Satellites System)の測位衛星からの信号に基づいて電子機器2の位置情報を求めてもよい。
操作ボタン220は、例えば押しボタンである。操作ボタン220が操作されると、制御部200は、例えば、操作ボタン220が操作されたことを通知する操作通知情報を生成する。そして、制御部200は、通信部210に、生成した操作通知情報を、例えばセンター装置5に対して送信させる。操作通知情報には、例えば、受信部230で取得される位置情報と、電子機器2の識別情報とが含まれる。
電子機器2の構成は、上記の例に限られない。電子機器2は、例えば、スマートフォン等の携帯電話機であってもよい。また、電子機器2は、例えば、タブレット端末、パーソナルコンピュータ、ウェアラブル機器などであってよい。電子機器2として採用されるウェアラブル機器は、リストバンド型あるいは腕時計型などの腕に装着するタイプであってもよいし、ヘッドバンド型あるいはメガネ型などの頭に装着するタイプであってもよいし、服型などの体に装着するタイプであってもよい。
<路側機の構成例>
図5は路側機3の構成の一例を示すブロック図である。図5に示されるように、路側機3は、制御部300、通信部310、カメラ320及びセンサー330を備える。制御部300は、路側機3の他の構成要素を制御することによって、路側機3の動作を統括的に管理することが可能である。制御部300は制御装置あるいは制御回路とも言える。制御部300は、以下にさらに詳細に述べられるように、種々の機能を実行するための制御及び処理能力を提供するために、少なくとも1つのプロセッサを含む。電子機器2の制御部200が備えるプロセッサについての上記の説明は、制御部300が備えるプロセッサについても適用することができる。
本例では、制御部300は、CPU301及び記憶部302を備える。記憶部302は、ROM及びRAMなどの、CPU301が読み取り可能な非一時的な記録媒体を含む。記憶部302が有するROMは、例えば、不揮発性メモリであるフラッシュROMである。記憶部302には、路側機3を制御するための制御プログラム302a等が記憶されている。制御部300の各種機能は、CPU301が記憶部302内の制御プログラム302aを実行することによって実現される。
なお、制御部300の構成は上記の例に限られない。例えば、制御部300は、複数のCPU301を備えてもよい。また制御部300は、少なくとも一つのDSPを備えてもよい。また、制御部300の全ての機能あるいは制御部300の一部の機能は、その機能の実現にソフトウェアが不要なハードウェア回路によって実現されてもよい。また、記憶部302は、ROM及びRAM以外の、コンピュータが読み取り可能な非一時的な記録媒体を備えていてもよい。
通信部310は、有線及び無線の少なくとも一方でネットワーク6に接続されている。路側機3の通信部310は、ネットワーク6を通じて、他の路側機3、電子機器2、車載機器40及びセンター装置5と通信することが可能である。また、通信部310は、車載機器40とネットワーク6を介さずに直接無線通信することが可能である。通信部310は、例えば、ITSに割り当てられている700MHz帯を使用して、路側機3の周辺の車載機器40と直接無線通信を行うことが可能である。通信部310は、他の装置から受信した情報を制御部300に出力する。通信部310は、制御部300からの情報を他の装置に送信する。通信部310は通信回路とも言える。
なお、路側機3の通信部310は、他の路側機3、電子機器2及びセンター装置5と、ネットワーク6を介さずに直接通信することが可能であってもよい。この場合、通信部310は、例えば、ITSに割り当てられている700MHz帯を使用して、他の路側機3、電子機器2及びセンター装置5と直接無線通信を行ってもよい。また、通信部310は、携帯電話システムの基地局と無線通信することが可能であってもよい。また通信部310は、近距離無線通信を行うことが可能であってもよい。また通信部310は、WiFi等の無線LANを用いて無線通信を行うことが可能であってもよい。また通信部310は、他の無線通信方式に基づいて無線通信することが可能であってもよい。
カメラ320は、路側機3の周辺の道路の様子を撮影することが可能である。カメラ320で生成された画像は制御部300に入力される。カメラ320は、例えば動画を撮影することが可能である。
センサー330は、路側機3の周辺の道路の状況を検出することが可能である。センサー330は、例えば、レーダーセンサー及び赤外線センサー等を備えている。センサー330は、例えば、路側機3の周辺の歩行者及び車両4を検出することが可能である。センサー330は、検出結果を制御部300に出力する。
<センター装置の構成例>
図6はセンター装置5の構成の一例を示すブロック図である。図6に示されるように、センター装置5は、制御部500及び通信部510を備える。制御部500は、センター装置5の他の構成要素を制御することによって、センター装置5の動作を統括的に管理することが可能である。制御部500は制御装置あるいは制御回路とも言える。制御部500は、以下にさらに詳細に述べられるように、種々の機能を実行するための制御及び処理能力を提供するために、少なくとも1つのプロセッサを含む。電子機器2の制御部200が備えるプロセッサについての上記の説明は、制御部500が備えるプロセッサについても適用することができる。
本例では、制御部500は、CPU501及び記憶部502を備える。記憶部502は、ROM及びRAMなどの、CPU501が読み取り可能な非一時的な記録媒体を含む。記憶部502が有するROMは、例えば、不揮発性メモリであるフラッシュROMである。記憶部502には、センター装置5を制御するための制御プログラム502a等が記憶されている。制御部500の各種機能は、CPU501が記憶部502内の制御プログラム502aを実行することによって実現される。
なお、制御部500の構成は上記の例に限られない。例えば、制御部500は、複数のCPU501を備えてもよい。また制御部500は、少なくとも一つのDSPを備えてもよい。また、制御部500の全ての機能あるいは制御部500の一部の機能は、その機能の実現にソフトウェアが不要なハードウェア回路によって実現されてもよい。また、記憶部502は、ROM及びRAM以外の、コンピュータが読み取り可能な非一時的な記録媒体を備えていてもよい。
通信部510は、有線及び無線の少なくとも一方でネットワーク6に接続されている。通信部510は、ネットワーク6を通じて、電子機器2、路側機3及び車載機器40と通信することが可能である。通信部510は、他の装置から受信した情報を制御部500に出力する。通信部510は、制御部500からの情報を他の装置に送信する。通信部510は通信回路とも言える。
なお、通信部510は、携帯電話システムの基地局と無線通信することが可能であってもよい。また通信部510は、近距離無線通信を行うことが可能であってもよい。また通信部510は、WiFi等の無線LANを用いて無線通信を行うことが可能であってもよい。また通信部510は、他の無線通信方式に基づいて無線通信することが可能であってもよい。
以上のような構成を有するセンター装置5は、電子機器2から操作通知情報を受け取ると、所定の処理を実行する。例えば、操作ボタン220が、ユーザ20にトラブルが発生した場合に当該ユーザ20が操作するボタンである場合を考える。電子機器2を所持する子供あるいはお年寄りは、例えば、不審者に襲われた場合、急に体調を壊して動けなくなった場合、交通事故に巻きまれた場合などに、操作ボタン220を操作する。センター装置5では、通信部510が電子機器2から操作通知情報を受信すると、制御部500は、当該電子機器2のユーザ20にトラブルが発生したと判断する。そして、制御部500は、発生したトラブルに応じる処理を行う。例えば、制御部500は、受信された操作通知情報に含まれる位置情報が示す位置においてトラブルが発生したことを通知するトラブル通知情報を生成する。そして、制御部500は、通信部510に、生成したトラブル通知情報を、所定の通信装置に対して送信させる。通信部510は、トラブル通知情報を例えば警察署あるいは交番が有する通信装置に送信してもよい。このとき、通信部510は、トラブルが発生したユーザ20の位置に最も近い警察署あるいは交番の通信装置にトラブル通知情報を送信してもよい。警察署あるいは交番が備える通信装置がトラブル通知情報を受信すると、例えば、トラブルが発生したユーザ20が存在する場所まで警察官が駆けつけることになる。また、通信部510はトラブル通知情報を警備会社が有する通信装置に送信してもよい。警備会社が備える通信装置がトラブル通知情報を受信すると、例えば、トラブルが発生したユーザ20が存在する場所まで警備員が駆けつけることになる。また、通信部510は、受信した操作通知情報に含まれる識別情報に対して予め通知先の装置が対応付けられている場合には、当該通知先の装置にトラブル通知情報を送信してもよい。ユーザ20が子供である場合、通知先の装置としては、例えば、ユーザ20の親の携帯電話機が考えられる。また、ユーザ20がお年寄りである場合、通知先の装置としては、例えば、ユーザ20の子供の携帯電話機が考えられる。
なお、ユーザ20は、トラブルが発生した場合とは別の場合に操作ボタン220を操作してもよい。またセンター装置5が操作通知情報を受信したときの当該センター装置5の動作は上記の限りではない。
<通信システムの動作例>
図7は運用中の路側機3の動作の一例を示すフローチャートである。路側機3は図7に示される処理を例えば繰り返し実行する。図7に示されるように、ステップs1において、制御部300は、カメラ320で得られた最新の画像を当該カメラ320から取得する。以後、カメラ320で得られる画像をカメラ画像と呼ぶことがある。
次にステップs2において、制御部300は、検出対象である対象物体が、ステップs1で得られたカメラ画像に写っているか否かを判定する。カメラ画像に対象物体が写っていると判定されると、ステップs3が実行される。一方で、カメラ画像に対象物体が写っていない場合には、図7の処理が終了する。対象物体は、例えば、地面に接する物体である。対象物体は、例えば、道路上の歩行者あるいは道路上の車両4などである。ステップs2において、制御部300は、カメラ画像に対して画像処理を行うことによって、カメラ画像に対象物体が写っているか否かを判定することができる。制御部300は、例えば、人工知能(AI)を用いて、カメラ画像に対象物体が写っているか否かを判定してもよい。例えば、制御部300は、ニューラルネットワークを用いた機械学習を利用して、カメラ画像に対象物体が写っているか否かを判定してもよい。
ステップs2においてYESと判定されると、ステップs3において、制御部300は、ステップs1で得られたカメラ画像に基づいて、対象物体の絶対的な位置を示す位置情報を取得する。この位置情報は、電子機器2の受信部230で取得される位置情報と同様に、例えば、緯度、経度及び高度で表される。ステップs3において、制御部300は、対象物体が写るカメラ画像において、地面における、対象物体が接している部分が写る領域を特定する。制御部300は、カメラ画像に対して画像処理を行うことによって、当該カメラ画像において、地面における、対象物体が接している部分が写る領域を特定することができる。制御部300は、例えば、ニューラルネットワークを用いた機械学習等の人工知能を利用して、カメラ画像において、地面における、対象物体が接している部分が写る領域を特定してもよい。そして、制御部300は、特定した領域に写る場所、つまり、地面における、対象物体が接している場所の絶対的な位置を示す位置情報を、対象物体の位置情報として取得する。
例えば、対象物体が歩行者である場合を考える。この場合、制御部300は、歩行者が写るカメラ画像において、地面における、歩行者の足が接している部分が写る領域を特定する。そして、制御部300は、特定した領域に写る場所、つまり、地面における、歩行者の足が接している場所の絶対的な位置を示す位置情報を、歩行者の位置情報として取得する。
他の例として、対象物体が車両4である場合を考える。この場合、制御部300は、車両4が写るカメラ画像において、地面における、車両4のタイヤあるいは車輪が接している部分が写る領域を特定する。そして、制御部300は、特定した領域に写る場所、つまり、地面における、車両4のタイヤあるいは車輪が接している場所の絶対的な位置を示す位置情報を、車両4の位置情報として取得する。
ここで、本例では、路側機3のカメラ320の画角、設置高さ及び設置角度(言い換えればカメラ320の向き)は一定である。したがって、カメラ画像に写る地面が水平である場合、路側機3の制御部300は、当該路側機3のカメラ320の画角、設置高さ及び設置角度と、当該路側機3の絶対的な位置(緯度、経度及び高度)を示す位置情報とに基づいて、カメラ画像に写る地面の各場所の絶対的な位置(緯度、経度及び高度)を求めることができる。制御部300は、地面のある場所の位置を求める場合、カメラ320の画角、設置高さ及び設置角度に基づいて、カメラ320から当該ある場所までの距離と、カメラ320から当該ある場所に向かう方向とを特定する。そして、制御部300は、特定いた距離及び方向と、路側機3の絶対的な位置(緯度、経度及び高度)を示す位置情報とに基づいて、当該ある場所の絶対的な位置(緯度、経度及び高度)を示す位置情報を取得する。路側機3の記憶部302には、当該路側機3の絶対的な位置を示す位置情報が記憶されている。本例では、制御部300は、ステップs3において、カメラ画像に写る地面が水平であるとして、当該カメラ画像に基づいて対象物体の位置情報を取得する。ステップs3で取得される対象物体の位置情報は、地面が水平であると仮定した場合の当該地面に接する対象物体の位置情報であると言える。
次にステップs4において、制御部300は、ステップs3で求めた位置情報を補正情報に基づいて補正する。これにより、平坦と仮定された地面ではなく、実際の状態の地面に接する対象物体の位置情報が得られる。補正情報については後で詳細に説明する。
次にステップs5において、制御部300は、ステップs4で得られた補正後の位置情報に基づいて処理を実行する。例えば、対象物体が歩行者である場合を考える。この場合、制御部300は、例えば、歩行者についての補正後の位置情報と、記憶部302内の地図情報とに基づいて、歩行者が車道8に存在するか、歩道9に存在するかを判定する。制御部300は、歩行者が車道8に存在すると判定すると、車道8に歩行者が存在することを通知する歩行者通知情報を生成する。そして、制御部300は、通信部310に、生成した歩行者通知情報を周辺の車両4に対して通知させる。このとき、通信部310は、例えば、ITSに割り当てられている700MHz帯を使用して、歩行者通知情報を周辺の車両4に対してブロードキャストする。車両4の車載機器40は、歩行者通知情報を受信すると、スピーカ及び表示装置等を利用して、周辺の車道8に歩行者が存在することを運転者に対して通知する。
他の例として、対象物体が車両4である場合を考える。この場合、制御部300は、例えば、車両4についての補正後の位置情報と、記憶部302内の地図情報とに基づいて、交差点7の付近で車両4が所定時間以上停車しているか否かを判定する。このとき、制御部300は、ステップs4で求めた車両4の補正後の位置情報と、当該車両4について過去に取得した補正後の位置情報とに基づいて、当該車両4が所定時間以上停車しているか否かを判定する。車両4が停車している場合には、制御部300が取得した複数の補正後の位置情報は変化しないことになる。制御部300は、交差点7の付近で車両4が所定時間以上停車していると判定すると、長時間停車している車両4が交差点7の付近に存在することを通知する停車車両通知情報を生成する。そして、制御部300は、通信部310に、生成した停車車両通知情報を周辺の車両4に対して通知させる。このとき、通信部310は、例えば、ITSに割り当てられている700MHz帯を使用して、停車車両通知情報を周辺の車両4に対してブロードキャストする。車両4の車載機器40は、停車車両通知情報を受信すると、スピーカ及び表示装置等を利用して、長時間停車している車両4が近くの交差点7の付近に存在することを運転者に対して通知する。
なお、対象物体は上記の例に限られない。また、ステップs5での、補正後の位置情報に基づく処理は上記の例に限られない。
<補正情報の生成方法例>
次にステップs4で使用される補正情報の生成方法について説明する。補正情報は路側機3で生成される。図8は路側機3での補正情報生成処理の一例を示すフローチャートである。図8に示される補正情報生成処理は、例えば、設置された直後の運用前の路側機3で実行される。なお、補正情報生成処理は、運用中の路側機3で実行されてもよい。以後、説明対象の路側機3を対象路側機3と呼ぶことがある。
図8に示されるように、ステップs1において、対象路側機3の制御部300は、対象路側機3に近い場所に存在する電子機器2のユーザ20の位置情報を要求する第1要求情報を生成する。第1要求情報には、対象路側機3の絶対的な位置を示す位置情報が含まれる。制御部300は、通信部310に、生成した第1要求情報をセンター装置5に対して送信させる。
センター装置5では、図9に示されるように、ステップs21において通信部510が対象路側機3から第1要求信号を受信すると、ステップs22において、制御部500は、対象路側機3の近くに電子機器2が存在するか否かを判定する。
ここで、各電子機器2は、定期的あるいは不定期的に、受信部230で得られる最新の位置情報と、当該電子機器2の識別情報とをセンター装置5に送信する。センター装置5は、電子機器2から送信される位置情報及び識別情報を互いに対応付けて記憶部502に記憶する。センター装置5は、電子機器2から新たな位置情報を受信すると、記憶部502内において、当該電子機器2の識別情報に対応付けられている位置情報を、新たに受信した位置情報に置き換えて、当該電子機器2の位置情報を更新する。
ステップs22において、制御部500は、第1要求信号に含まれる位置情報(つまり、対象路側機3の位置情報)と、記憶部502内の各電子機器2の位置情報とを比較し、その比較結果に基づいて、対象路側機3の近くに電子機器2が存在するか否かを判定する。ステップs22において、制御部500は、記憶部502内の各電子機器2の位置情報について、当該位置情報が示す位置と、第1要求信号に含まれる位置情報が示す位置との間の距離がしきい値以下であるか否かを判定する。そして、制御部500は、電子機器2の位置情報が示す位置と、第1要求信号に含まれる位置情報が示す位置との間の距離がしきい値以下である場合、対象路側機3の近くに当該電子機器2が存在すると判定する。
対象路側機3の近くに電子機器2が存在する場合、対象路側機3のカメラ320で得られる画像には、当該電子機器2が写る可能性が高い。したがって、対象路側機3の近くに電子機器2が存在する場合、対象路側機3は、カメラ320で得られる画像に電子機器2が写る可能性が高い路側機3であると言える。よって、ステップs22の処理は、対象路側機3のカメラ320で得られる画像に電子機器2が写る可能性が高いか否かを判定する処理であると言える。ステップs22で使用されるしきい値は、例えば、対象路側機3のカメラ320の撮影範囲に応じて決定される。以後、対象路側機3の近くに存在する電子機器2を対象電子機器2と呼ぶことがある。
ステップs22においてNOと判定されると、ステップs23において、制御部500は時間経過処理を実行する。つまり、制御部500は、一定時間経過するのを待つ。一定時間が経過すると、ステップs22が再度実行される。以後、センター装置5は同様に動作する。
一方で、ステップs22においてYESと判定されると、ステップs24が実行される。ステップs24において、制御部500は、対象電子機器2のユーザ20の位置情報を要求する第2要求情報を生成する。そして、制御部300は、通信部310に、生成した第2要求情報を対象電子機器2に送信させる。以後、対象電子機器2のユーザ20を対象ユーザ20あるいは対象歩行者20と呼ぶことがある。
対象電子機器2では、通信部210が第2要求情報を受信すると、制御部200は、通信部210に、受信部230で得られる最新の位置情報を、センター装置5に対して送信させる。
ステップs24の後、ステップs25において、センター装置5の通信部510が対象ユーザ20の位置情報を受信する。通信部510で受信された位置情報は制御部500に入力される。ステップs25の後、ステップs26において、制御部500は、通信部510に、受信された対象ユーザ20の位置情報を対象路側機3に対して送信させる。
図8に戻って、ステップs11の後、ステップs12において、対象路側機3の通信部310は、センター装置5から、対象ユーザ20の位置情報を受信する。その後、ステップs13において、制御部300は、受信された対象ユーザ20の位置情報に基づいて、カメラ320で得られるカメラ画像において対象ユーザ20を特定するユーザ特定処理を実行する。ユーザ特定処理は、カメラ画像に対象ユーザ20が写っているか否かを判定する処理であるとも言える。ユーザ特定処理については後で詳細に説明する。
次にステップs14において、制御部300は、ステップs13のユーザ特定処理において、対象ユーザ20がカメラ画像において特定できたか否かを判定する。ユーザ特定処理において対象ユーザ20が特定された場合、言い換えれば、カメラ画像に対象ユーザ20が写っている場合、ステップs15が実行される。一方で、ユーザ特定処理において対象ユーザ20が特定されなかった場合には、言い換えれば、カメラ画像に対象ユーザ20が写っていない場合、ステップs11が再度実行される。以後、対象路側機3は同様に動作する。
ステップs15において、制御部300は、対象ユーザ20が写るカメラ画像に基づいて、対象ユーザ20の絶対的な位置を示す位置情報を取得する。ステップs15の処理は、対象物体が歩行者である場合の上述のステップs3(図7参照)の処理と同様である。ステップs15で取得される位置情報は、ステップs3で取得される位置情報と同様に、地面が平坦であると仮定した場合の当該地面に接する対象ユーザ20の位置情報である。
以後、ステップs12において、対象路側機3がセンター装置5から受信する対象ユーザ20の位置情報を第1位置情報と呼ぶことがある。また、ステップs15において、対象路側機3がカメラ画像に基づいて取得する対象ユーザの位置情報を第2位置情報と呼ぶことがある。第2位置情報は、カメラ画像に写る地面における、対象ユーザの足が接する場所の位置情報であることから、第2位置情報は、カメラ画像に写る地面のある場所の位置情報であると言える。
ステップs15の後、ステップs16において、制御部300は、ステップs12で得られた第1位置情報と、ステップs15で得られた第2位置情報とを、対象ユーザ20の位置情報組として記憶部302に記憶する。
次にステップs17において、制御部300は、必要なだけ位置情報組が得られたか否かを判定する。言い換えれば、制御部300は、必要なだけ位置情報組が記憶部302に記憶されたか否かを判定する。例えば、制御部300は、所定の組数以上の位置情報組が得られ、かつ、得られた複数組の位置情報組に含まれる複数の第2位置情報が示す位置が、カメラ画像に写る地面の大部分の位置を示す場合、必要なだけ位置情報組が得られたと判定する。言い換えれば、制御部300は、所定の組数以上の位置情報組が得られ、かつ、カメラ画像に写る地面の大部分の位置情報が得られた場合、必要なだけ位置情報組が得られたと判定する。対象路側機3のカメラ320の撮影範囲において、電子機器2を所持する歩行者20がしばらく移動する場合には、対象路側機3は、複数組の位置情報組を取得することができる。また、対象路側機3のカメラ320の撮影範囲において、電子機器2を所持する複数の歩行者20が存在する場合にも、対象路側機3は、複数組の位置情報組を取得することができる。
ステップs17においてNOと判定されると、ステップs11が再度実行され、以後、対象路側機3は同様に動作する。一方で、ステップs17においてYESと判定されると、ステップs18が実行される。ステップs17においてYESと判定された場合に記憶部302に記憶されている複数の位置情報組の組数をNで表す。
ステップs18において、制御部300は、記憶部302に記憶されているN組の位置情報組に基づいて補正情報を生成する。そして、制御部300は、生成した補正情報を記憶部302に記憶する。ステップs18において、制御部300は、例えば、N組の位置情報組に基づいて、カメラ画像に写る地面の勾配を示す勾配情報を生成する。そして、制御部300は、生成した勾配情報を補正情報として使用する。対象路側機3は、上述の図7のステップs4において、勾配情報に基づいてステップs3で求めた位置情報を補正する。
ここで、カメラ画像の同じ領域に人が写っている場合であっても(言い換えれば、カメラ画像での人の画像の位置が同じであっても)、地面が水平である場合と勾配がある場合とで、その人の絶対的な位置(言い換えれば、その人の実空間上の位置)は異なる。上述のステップs3において、カメラ画像に基づいて取得される対象物体の位置情報は、地面が水平であると仮定した場合の当該地面に接する対象物体の位置情報である。したがって、地面に実際には勾配がある場合、カメラ画像に基づいて取得される対象物体の位置情報には誤差が含まれる。
図10は、カメラ画像に基づいて取得される対象物体の位置情報に含まれる誤差について説明するための図である。図10には、勾配を有する実際の地面が地面600で示され、水平であると仮定された地面が地面610として示されている。また図10では、制御部300が、カメラ320で得られるカメラ画像に基づいて求めた対象物体620の位置640が示されている。そして図10では、対象物体620の実際の位置630が示されている。対象物体620が歩行者20である場合、当該歩行者20が所持する電子機器2の受信部230で得られる位置情報が示す位置が、対象物体620の実際の位置630となる。
図10に示されるように、地面に勾配がある場合、カメラ画像に基づいて求められた対象物体620の位置640は、対象物体620の実際の位置630と異なるようになる。したがって、地面に勾配がある場合、カメラ画像に基づいて取得される対象物体の位置情報には誤差が含まれる。
このように、カメラ画像に基づいて得られる対象物体の位置情報には、当該カメラ画像に写る地面の勾配によって誤差が含まれる。そこで、本例では、路側機3は、カメラ画像に写る地面の勾配を示す勾配情報を生成し、この勾配情報に基づいて、カメラ画像に基づいて取得された対象物体の位置情報を補正する。これにより、対象物体について精度のよい位置情報を得ることができる。以下に勾配情報の生成方法の一例について説明する。以下の説明では、緯度及び経度の一方を表すX軸と、緯度及び経度の他方を表すY軸と、高度を表すZ軸から成るXYZ座標系が用いられる。以後、単にXYZ座標系と言えば、緯度及び経度の一方を表すX軸と、緯度及び経度の他方を表すY軸と、高度を表すZ軸から成るXYZ座標系を意味する。
図11は、勾配情報の生成で使用されるN組の位置情報組の一例を示す図である。図11では、位置情報組に含まれる第1位置情報が示す位置710が白丸で示されている。位置710は、電子機器2の受信部230で取得された位置情報が示す位置であって、ユーザ20の実際の位置を示す。また図11では、位置情報組に含まれる第2位置情報が示す位置720が黒丸で示されている。位置720は、カメラ画像に写る地面が水平であると仮定された場合において、当該カメラ画像に基づいて取得されたユーザ20の位置情報が示す位置である。図11では、各位置情報組について、当該位置情報組を構成する第1及び第2位置情報が示す位置710及び720が破線で互いに結ばれている。以後、位置710に対応する位置720と言えば、当該位置710と破線で結ばれた位置720を意味する。
上記のように、第2位置情報は、地面が水平であると仮定した場合の当該地面のある場所の位置を示す位置情報である。したがって、N組の位置情報組にそれぞれ含まれるN個の第2位置情報が示す位置720は、図11に示されるように、同一の平面800内に存在する。以後、この平面800を基準平面800と呼ぶことがある。基準平面800は、水平であると仮定された地面を示していると言える。
本例では、ステップs18において、制御部300は、XYZ座標系に、N組の位置情報組に含まれるN個の第1位置情報が示す位置710と、N組の位置情報組に含まれるN個の第2位置情報が示す位置720とを配置する。そして、制御部300は、XYZ座標系に配置されたN個の位置710を線910で結んで、連続的に並ぶ複数のポリゴン920をXYZ座標系に形成する。制御部300は、互いに近い複数の位置720にそれぞれ対応する複数の位置710を線910で結んで一つのポリゴン920を形成する。そして、制御部300は、複数のポリゴン920で構成される複合面930を表す複合面情報を、地面の勾配を表す勾配情報とする。複合面930は、実際の地面を示しているとも言える。
図12は、図11に示される複数の位置710から形成された複合面930の一例を示す図である。図12の例では、ポリゴン920は三角形となっている。制御部300は、互いに近い3つの位置720にそれぞれ対応する3つの位置710を線910で結んで一つの三角形を形成する。
図7のステップs4において、制御部300は、複合面情報に基づいて、ステップs3で取得された位置情報を補正する。ステップs4において、例えば、制御部300は、XYZ座標系において、N個の位置720を含む基準平面800を設定する。そして、制御部300は、カメラ画像に基づいて取得された対象物体の位置情報が示す位置を、対象位置として配置する。対象位置は基準平面800内に位置する。そして、制御部300は、XYZ座標系において、対象位置を通る、基準平面800に垂直な線と、複合面情報が示す複合面930との交点を求める。制御部300は、求めた交点についてのXYZ座標系での位置(つまり、緯度、経度及び高度)を、補正後の位置情報が示す位置として採用する。これにより、複合面930に基づいてステップs3で取得された位置情報が補正される。
なお、補正情報は上記の例に限られない。また、ステップs4での補正情報に基づく位置情報の補正方法は上記の例に限られない。例えば、N組の位置情報組が補正情報として使用されてもよい。この場合、ステップs4において、制御部300は、例えば、N組の位置情報組に含まれるN個の第2位置情報が示す位置720のうち、ステップs3で取得された位置情報が示す位置に最も近い位置720を特定する。そして、制御部300は、例えば、特定した位置720に対応する位置710を、補正後の位置情報が示す位置として採用する。
以上のように、本例では、路側機3の制御部300は、電子機器2を所持する歩行者20が写るカメラ画像に基づいて取得した、当該歩行者20の位置を示す位置情報と、当該電子機器2が送信する、当該歩行者20の位置を示す位置情報とから成る位置情報組を複数組取得している。そして、制御部300は、取得した複数組の位置情報組に基づいて補正情報を生成している。これにより、路側機3は、そのカメラ320の撮影範囲に電子機器2を所持する歩行者20が存在することによって、補正情報を生成することができる。よって、路側機3は簡単に補正情報を生成することができる。その結果、路側機3の利便性が向上する。
また、本例では、制御部300は、複数組の位置情報組に基づいて勾配情報を生成している。一方で、勾配情報については、地面の勾配を実際に測量することによっても取得することができる。この場合、測量中において交通を止める必要がある等の理由により、作業負担が大きい。これに対して、本例では、制御部300は、複数組の位置情報組に基づいて勾配情報を生成していることから、路側機3は簡単に勾配情報を生成することができる。
図13及び14は、上述のユーザ特定処理(図8のステップs13)の詳細の一例を示すフローチャートである。図13に示されるように、ステップs41おいて、制御部300は、カメラ画像において人物を特定する人物特定処理を実行する。人物特定処理は、カメラ画像に人物が写っているか否かを判定する処理であるとも言える。ステップs41において、制御部300は、カメラ画像に対して画像処理を行うことによって、カメラ画像において人物を特定することができる。制御部300は、例えば、ニューラルネットワークを用いた機械学習等の人工知能を用いて、カメラ画像において人物を特定してもよい。
人物特定処理が実行された後、ステップs42において、制御部300は、人物特定処理において、人物がカメラ画像において特定できた否かを判定する。制御部300は、人物がカメラ画像において特定できなかった場合、言い換えれば、カメラ画像に人物が写っていない場合、ユーザ特定処理は終了する。この場合、上述の図8のステップs14では、カメラ画像において対象ユーザ20が特定できなかったと判定される。
一方で、ステップs42において、制御部300が、人物がカメラ画像において特定できたと判定した場合、言い換えれば、カメラ画像に人物が写っている場合、ステップs43が実行される。ステップs43では、制御部300は、人物特定処理で特定した人物(以後、特定人物と呼ぶことがある)が一人であるか否かを判定する。言い換えれば、制御部300は、カメラ画像に写る人物が一人か否かを判定する。
ステップs43において、特定人物が一人であると判定されると、ステップs44において、制御部300は、上述のステップs3及びs15と同様にして、特定人物が写るカメラ画像に基づいて、特定人物の絶対的な位置を示す位置情報を取得する。この位置情報は、電子機器2の受信部230で取得される位置情報と同様に、例えば、緯度、経度及び高度で表される。
ステップs44の後、ステップs45において、制御部300は、対象ユーザ20の位置と、特定人物の位置とが近いか否かを判定する。ステップs45において、制御部300は、ステップs12で受信された対象ユーザ20の位置情報が示す位置と、ステップs44で取得した特定人物の位置情報が示す位置との間の距離を求める。そして、制御部300は、求めた距離がしきい値未満である場合、対象ユーザ20の位置と、特定人物の位置とが近いと判定する。一方で、制御部300は、求めた距離がしきい値以上である場合、対象ユーザ20の位置と、特定人物の位置とが近くはないと判定する。
ステップs45においてNOと判定されると、ユーザ特定処理が終了する。この場合、ステップs14ではNOと判定される。一方で、ステップs45においてYESと判定されると、ステップs46において、制御部300は、特定人物が対象ユーザ20であると判定して、ユーザ特定処理を終了する。ステップs46が実行される場合、図8のステップs14では、カメラ画像において対象ユーザ20が特定できたと判定される。
ステップs43においてNOと判定されると、つまり、人物特定処理において複数の人物が特定された場合、図14に示されるように、ステップs51が実行される。ステップs51において、制御部300は、上述のステップs44と同様にして、複数の特定人物が写るカメラ画像に基づいて、複数の特定人物のそれぞれの位置情報を取得する。
次にステップs52において、制御部300は、複数の特定人物において、その位置が対象ユーザの位置に近い特定人物が存在するか否かを判定する。ステップs52において、制御部300は、複数の特定人物のそれぞれについて、当該特定人物の位置と、対象ユーザ20の位置とが近いか否かについて、上述のステップs45と同様にして判定する。
ステップs52においてNOと判定されると、ユーザ特定処理が終了する。この場合、図8のステップs14では、カメラ画像において対象ユーザ20が特定できなかったと判定される。一方で、ステップs52においてYESと判定されると、ステップs53が実行される。ステップs53において、制御部300は、複数の特定人物において、その位置が対象ユーザの位置に近い特定人物が一人であるか否かを判定する。
ステップs53においてYESと判定されると、上述のステップs46が再度実行される。このステップs46では、複数の特定人物に含まれる、その位置が対象ユーザの位置に近い特定人物が対象ユーザ20であると判定される。
一方で、ステップs53においてNOと判定されると、ステップs54が実行される。ステップs54において、制御部300は、ステップs53が規定回数実行されたか否かを判定する。規定回数は例えば2以上に設定される。
ステップs54においてYESと判定されると、対象ユーザ20が特定されずにユーザ特定処理が終了する。一方で、ステップs54においてNOと判定されると、ステップs55において、制御部300は時間経過処理を実行する。つまり、制御部300は、一定時間経過するのを待つ。一定時間が経過すると、ステップs56が実行される。ステップs56において、制御部300は、通信部310に、対象ユーザ20の最新の位置情報を要求する第3要求情報をセンター装置5に対して送信させる。
センター装置5では、通信部510が第3要求情報を受信すると、制御部500は、通信部510に、最新の位置情報を要求する第4要求信号を対象電子機器2に対して送信させる。対象電子機器2では、通信部210が第4要求情報を受信すると、制御部200は、受信部230から最新の位置情報を取得する。そして、制御部200は、通信部210に、最新の位置情報をセンター装置5に対して送信させる。センター装置5では、通信部510が対象電子機器2から最新の位置情報を受信すると、制御部500は、通信部510に、受信された最新の位置情報を対象路側機3に対して送信させる。
ステップs56の後、対象路側機3の通信部310は、ステップs57において、センター装置5から、対象ユーザ20の最新の位置情報を受信する。ステップs57の後、再度ステップs41が実行される。このステップs41では、制御部300は、カメラ320で得られる最新のカメラ画像において人物を特定する人物特定処理を実行する。その後、対象路側機3は同様に動作する。2回目以降のステップs45及びs52では対象ユーザ20の最新の位置情報が使用される。
以上のように、本例のユーザ特定処理では、制御部300は、カメラ画像に基づいて当該カメラ画像に写る人の位置情報を取得している。そして、制御部300は、カメラ画像に写る人の位置情報と、対象ユーザ20の位置情報との比較結果に基づいて、当該人が対象ユーザ20であるか否かを判定している。これにより、位置情報を用いて簡単に対象ユーザ20をカメラ画像において特定することができる。
なお、路側機3は、図8に示される補正情報生成処理で生成した補正情報を更新してもい。図15は補正情報更新処理の一例を示すフローチャートである。図15に示される補正情報更新処理は、例えば、運用中の路側機3で繰り返し実行される。
図15に示されるように、補正情報更新処理では、まず、上述のステップs11と同様のステップs61が実行される。これにより、対象路側機3からセンター装置5に対して第1要求情報が送信される。センター装置5では、図9に示される処理と同様の処理が実行されて、対象ユーザ20の位置情報が対象路側機3に送信される。
ステップs61の後、対象路側機3は、上述のステップs12〜14と同様のステップs62〜64を実行する。ステップs64においてNOと判定されると、ステップs61が再度実行される。以後、対象路側機3は同様に動作する。一方で、ステップs64においてYESと判定されると、対象路側機3は、上述のステップs15及びs16と同様のステップs65及びs66を実行する。これにより、ステップs62で得られた位置情報と、ステップs65で得られた位置情報とから成る位置情報組が、記憶部302に新たに追加される。つまり、電子機器2が送信するユーザ20の位置情報(つまり、第1位置情報)と、カメラ画像に基づいて取得されたユーザ20の位置情報(つまり、第2位置情報)とから成る位置情報組が、記憶部302に新たに追加される。ここで、ステップs66が実行された直後の記憶部302内には、M組の位置情報組が記憶されているとする。
対象路側機3は、ステップs66の後、ステップs67において、ステップs66で記憶部302に新たに記憶した位置情報組を用いて、記憶部302内の補正情報を更新する。ステップs67において、制御部300は、例えば、上述のステップs18と同様にして、記憶部302内のM組の位置情報組を用いて勾配情報(言い換えば、複合面930)を新たに生成する。そして、制御部300は、新たに生成した勾配情報を新たな補正情報として、補正情報を更新する。
なお、ステップs18において、N組の位置情報組が補正情報として採用される場合には、ステップs67において、制御部300は、ステップs66で記憶部302に記憶した位置情報組を補正情報に追加することによって、補正情報を更新する。
このように、補正情報が更新されることによって、路側機3は、対象物体についてより精度の高い位置情報を取得することができる。
上記の例では、路側機3は、センター装置5から対象ユーザ20の位置情報を取得していたが、センター装置5を介さずに電子機器2から直接位置情報を取得してもよい。例えば、路側機3が、ITSに割り当てられている700MHz帯を使用して、電子機器2と直接通信することが可能である場合を考える。以後、ITSに割り当てられている700MHz帯を使用した通信を、700MHz帯通信と呼ぶことがある。
700MHz帯通信の通信距離はあまり大きくないことから、対象路側機3が、700MHz帯通信によって電子機器2から直接位置情報を受信した場合、当該電子機器2は対象路側機3に近い位置に存在すると言える。つまり、対象路側機3が、700MHz帯通信によって電子機器2から直接位置情報を受信した場合、対象路側機3のカメラ320で得られる画像には、当該電子機器2のユーザ20が写る可能性が高い。したがって、対象路側機3が、700MHz帯通信によって電子機器2から直接位置情報を受信した場合、当該電子機器2のユーザ20は、対象ユーザ20であると言える。そこで、対象路側機3は、700MHz帯通信によって電子機器2から位置情報を直接受信した場合、当該位置情報を、対象ユーザ20の位置情報として、図8のステップs13以降の処理を実行してもよい。また、対象路側機3は、700MHz帯通信によって電子機器2から位置情報を直接受信した場合、当該位置情報を、対象ユーザ20の位置情報として、図15のステップs63以降の処理を実行してもよい。このような場合には、センター装置5が不要となる。
以上のように、通信システム1は詳細に説明されたが、上記した説明は、全ての局面において例示であって、この開示がそれに限定されるものではない。また、上述した各種変形例は、相互に矛盾しない限り組み合わせて適用可能である。そして、例示されていない無数の変形例が、この開示の範囲から外れることなく想定され得るものと解される。