以下に添付図面を参照して、情報処理装置、および、情報処理方法を詳細に説明する。
(第1の実施の形態)
図1は、本実施の形態の情報処理装置10の一例を示す図である。情報処理装置10は、対象物(出力対象の移動体30)の死角に含まれる物体に応じた出力情報を出力する。
本実施の形態では、情報処理装置10が、対象物としての出力対象の移動体30に搭載されている場合を一例として説明する。
対象物とは、情報処理装置10が出力情報を出力する対象である。本実施の形態では、対象物が、移動体である場合を説明する。なお、対象物は、静止物であってもよい。以下では、対象物を、出力対象の移動体30と称して説明する、死角とは、出力対象の移動体30の死角を意味する。
出力対象の移動体30は、移動可能な物である。出力対象の移動体30は、例えば、車両、台車、飛行可能な物体(有人飛行機、無人飛行機(例えば、ドローン))、ロボット、などである。本実施の形態では、出力対象の移動体30は、車両12Aである場合を一例として説明する。車両12Aは、例えば、二輪自動車、三輪自動車、四輪自動車などである。本実施の形態では、車両12Aが、四輪自動車である場合を一例として説明する。
出力対象の移動体30の死角に含まれる物体は、移動可能な物(移動体)や、静止物である。死角に含まれる物体は、例えば、生物(人物、動物)、車両、などである。また、死角に含まれる物体には、移動可能な物(例えば車両)に搭載された人物(例えば、運転者)も含まれる。なお、以下では、出力対象の移動体30の死角に含まれる物体を、死角物体34と称して説明する場合がある。
図2は、本実施の形態の情報処理装置10の利用形態の一例を示す模式図である。
例えば、情報処理装置10の搭載された車両12Aが移動方向Xに進行していると仮定する。このとき、出力対象の移動体30である車両12Aを、視点とする。車両12Aの周辺に位置する、他の車両12B、12Cや静止物12Dについては、車両12Aの視点から視認可能である。このため、これらは、死角を形成する遮蔽物32として機能する。車両12Bや静止物12Dのように全体が視認可能な場合もあれば、車両12Cのように一部が視認可能な場合もある。
さらに、車両12Cについては、遮蔽物32である車両12Bによって少なくとも一部が遮蔽されている。このため、この場合、車両12Cは、車両12Aの死角に含まれる死角物体34として機能する。なお、車両12Aの進行方向(矢印X方向)における、車両12Cより下流側に、更に、他の物体が存在する場合がある。また、この物体が、車両12Bや車両12Cなどによって、少なくとも一部が遮蔽されていると仮定する。このような場合、この物体もまた、死角に含まれる死角物体34として機能する。また、この場合、車両12Cは、死角物体34および遮蔽物32として機能する。
なお、本実施の形態では、出力対象の移動体30の死角には、車両12Cが含まれている場合を一例として説明する。なお、出力対象の移動体30と他の物体との位置関係によって、出力対象の移動体30の死角に含まれる物体は、車両12Cに限定されないことはいうまでもない。
本実施の形態では、情報処理装置10は、出力対象の移動体30(車両12A)の死角に含まれる物体である死角物体34(ここでは車両12C)に応じた出力情報を出力する。なお、死角物体34は、出力対象の移動体30の死角に少なくとも一部の領域が含まれる物体であればよい。
図1に戻り説明を続ける。情報処理装置10は、処理回路10Aと、出力回路10Cと、センサ10Gと、を備える。
出力回路10Cは、出力情報を出力する。出力回路10Cは、出力情報を表示する表示機能、出力情報を示す音を出力する音出力機能、出力情報を送信する通信機能、などを備える。例えば、出力回路10Cは、通信回路10Dと、ディスプレイ10Eと、スピーカ10Fと、を含む。本実施の形態では、出力回路10Cは、車両12Aのドライバに向かって出力情報を出力可能な位置に設けられていることが好ましい。
通信回路10Dは、出力情報などの情報を他の装置へ送信する。例えば、通信回路10Dは、車両12Aのドライバの有する端末装置へ、公知の通信回線を介して出力情報を送信する。ディスプレイ10Eは、出力情報を表示する。ディスプレイ10Eは、例えば、公知のLCD(liquid crystal display)や投影装置やライトなどである。スピーカ10Fは、出力情報を示す音を出力する。
センサ10Gは、出力対象の移動体30の周辺情報を観測する外界センサである。周辺情報は、出力対象の移動体30の周辺の情報を含む、周辺の状況を示す情報である。なお、移動体30の周辺情報だけでなく移動体30に関する情報をさらに取得してもよい。センサ10Gは、例えば、撮影によって撮影画像データ(以下、単に撮影画像と称する)を得る撮影装置、距離センサ(ミリ波レーダ、レーザセンサ)、などである。レーザセンサには、例えば、LiDAR(Laser Imaging Detection and Ranging)を用いた方式が挙げられる。
出力対象の移動体30の周辺情報とは、出力対象の移動体30の周辺の状況を示す情報である。出力対象の移動体30の周辺とは、出力対象の移動体30から予め定めた範囲内の領域である。この範囲は、予め設定すればよい。センサ10Gが撮影装置である場合、周辺情報は撮影画像である。また、この場合、周辺情報によって得られる範囲は、撮影範囲である。また、センサ10Gがミリ波レーダやレーザセンサである場合、周辺情報は距離情報である。詳細には、この場合、周辺情報は、例えば、画素毎にセンサ10Gからの距離を規定したデプスマップである。
なお、本実施の形態では、一例として、センサ10Gは、撮影装置である場合を説明する。このため、本実施の形態では、センサ10Gが検知する周辺情報は、出力対象の移動体30の周辺(特に走行方向の前方)の撮影画像である場合を、一例として説明する。
情報処理装置10の構成について詳細に説明する。図3は、情報処理装置10の構成の一例を示すブロック図である。
情報処理装置10は、出力対象の移動体30の死角に含まれる死角物体34に応じた出力情報を出力する。情報処理装置10は、例えば、専用または汎用コンピュータである。情報処理装置10は、処理回路10Aと、記憶回路10Bと、出力回路10Cと、センサ10Gと、入力装置10Hと、を備える。出力回路10Cは、上述したように、通信回路10Dと、ディスプレイ10Eと、スピーカ10Fと、を含む。
処理回路10A、記憶回路10B、出力回路10C、センサ10G、および入力装置10Hは、バス10Iを介して接続されている。なお、記憶回路10B、出力回路10C(通信回路10D、ディスプレイ10E、スピーカ10F)、センサ10G、および入力装置10Hは、有線または無線で処理回路10Aに接続すればよい。また、記憶回路10B、出力回路10C(通信回路10D、ディスプレイ10E、スピーカ10F)、センサ10G、および入力装置10Hの少なくとも1つと、処理回路10Aと、を、ネットワークを介して接続してもよい。
入力装置10Hは、ユーザからの各種指示や情報入力を受け付ける。入力装置10Hは、例えば、マウスやトラックボール等のポインティングデバイス、あるいはキーボード等の入力デバイスである。
記憶回路10Bは、各種データを記憶する。記憶回路10Bは、例えば、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子、ハードディスク、光ディスク等である。なお、記憶回路10Bは、情報処理装置10の外部に設けられた記憶装置であってもよい。また、記憶回路10Bは、記憶媒体であってもよい。具体的には、記憶媒体は、プログラムや各種情報を、LAN(Local Area Network)やインターネットなどを介してダウンロードして記憶または一時記憶したものであってもよい。また、記憶回路10Bを、複数の記憶媒体から構成してもよい。
本実施の形態では、記憶回路10Bは、パーツ管理情報10Jを記憶する。パーツ管理情報10Jは、物体の種類に対応するパーツを管理するための情報である。詳細には、パーツ管理情報10Jは、死角物体34の種類に対応するパーツを管理するための情報である。パーツ管理情報10Jのデータ形式は限定されない。例えば、パーツ管理情報10Jは、データベースやテーブルである。
図4は、パーツ管理情報10Jのデータ構成の一例を示す模式図である。パーツ管理情報10Jは、物体の種類と、パーツと、を対応づけたものである。物体の種類は、例えば、車両、人物、などである。
パーツは、部品や部位(生物の身体の一部)などである。言い換えると、パーツ管理情報10Jに登録されているパーツは、対応する種類の物体の一部分を構成する部品や部位、または、対応する種類の物体に付属している物品である。なお、パーツ管理情報10Jに登録されているパーツは、対応する種類の物体の動きおよび動き予定の少なくとも一方を示す部品や部位であることが好ましい。また、パーツ管理情報10Jに登録されているパーツは、対応する種類の物体の走行状態および走行特性の少なくとも一方を示すものであることが好ましい。
具体的には、パーツは、車載部品や、車載標識、人体の部位である。車載部品は、例えば、灯火装置である。灯火装置は、例えば、前照灯、フォグランプ、方向指示器、ブレーキランプ、ヘッドランプ、テールランプ、などである。車載標識は、例えば、初心運転者標識、高齢運転者標識、ディスプレイ、などである。人体の部位は、例えば、顔、手、足などである。
パーツ管理情報10Jには、物体の種類に対応するパーツが予め登録されている。なお、パーツ管理情報10Jに登録されている各情報は、ユーザによる操作指示などによって適宜変更可能としてもよい。また、図4には、パーツ管理情報10Jに登録されている物体の種類として、車両および人物を一例として示した。しかし、パーツ管理情報10Jには、他の種類や更に細分化した種類を登録してもよい。例えば、パーツ管理情報10Jには、二輪自動車、四輪自動車、自転車、などの更に細分化した種類を登録してもよい。
図3に戻り説明を続ける。次に、処理回路10Aについて説明する。処理回路10Aは、物体特定機能10Kと、種類特定機能10Lと、判定機能10Mと、出力制御機能10Nと、を備える。
処理回路10Aにおける各処理機能は、コンピュータによって実行可能なプログラムの形態で記憶回路10Bへ記憶されている。処理回路10Aは、プログラムを記憶回路10Bから読出、実行することで、各プログラムに対応する機能を実現するプロセッサである。
各プログラムを読み出した状態の処理回路10Aは、図3の処理回路10A内に示された各機能を有することになる。図3においては単一の処理回路10Aによって、物体特定機能10K、種類特定機能10L、判定機能10M、および出力制御機能10Nが実現されるものとして説明する。
なお、各機能の各々を実現するための独立した複数のプロセッサを組み合わせて処理回路10Aを構成してもよい。この場合、各プロセッサがプログラムを実行することにより各機能を実現する。また、各処理機能がプログラムとして構成され、1つの処理回路が各プログラムを実行する場合であってもよいし、特定の機能が専用の独立したプログラム実行回路に実装される場合であってもよい。
なお、本実施の形態および後述する実施の形態において用いる「プロセッサ」との文言は、例えば、CPU(Central Processing Unit)、GPU(Graphical Processing Unit)或いは、特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)、プログラマブル論理デバイス(例えば、単純プログラマブル論理デバイス(Simple Programmable Logic Device:SPLD)、複合プログラマブル論理デバイス(Complex Programmable Logic Device:CPLD)、及びフィールドプログラマブルゲートアレイ(Field Programmable Gate Array:FPGA))の回路を意味する。プロセッサは、記憶回路10Bに保存されたプログラムを読み出し実行することで機能を実現する。なお、記憶回路10Bにプログラムを保存する代わりに、プロセッサの回路内にプログラムを直接組み込むよう構成しても構わない。この場合、プロセッサは回路内に組み込まれたプログラムを読み出し実行することで機能を実現する。
物体特定機能10Kは、物体特定部の一例である。物体特定機能10Kは、出力対象の移動体30の周辺情報に基づいて、出力対象の移動体30の走行環境における死角に含まれる死角物体34を特定する。
例えば、情報処理装置10が車両12Aに搭載されていたと仮定する。そして、車両12Aが出力対象の移動体30であったと仮定する。そして、出力対象の移動体30が、図2に示す走行環境にあると仮定する。そして、車両12Aに搭載されたセンサ10Gが、周辺情報として、車両12Aから車両12Aの移動方向Xにレンズを向けることによって得られる撮影画像を取得したと仮定する。この場合、物体特定機能10Kは、撮影画像を用いて、車両12Aの走行環境における死角物体34を特定する。
図5は、撮影画像20の一例を示す模式図である。例えば、センサ10Gによって、図5に示す撮影画像20が得られたと仮定する。この場合、物体特定機能10Kは、撮影画像20を画像解析することで、撮影画像20に含まれる物12の内、少なくとも一部の領域が死角に含まれる死角物体34を特定する。
例えば、物体特定機能10Kは、物体の少なくとも一部が他の物体によって遮蔽された状態で撮影されたときの特徴を示す第1特徴情報を予め記憶する。第1特徴情報は、例えば、物体の一部のみの形を示す情報である。そして、物体特定機能10Kは、撮影画像20に含まれる物体の内、第1特徴情報によって示される物体を特定することで、他の物体に遮蔽された物体を特定する。これによって、物体特定機能10Kは、少なくとも一部の領域が死角20Aに含まれる死角物体34を特定する。例えば、図5に示す例では、物体特定機能10Kは、撮影画像20を解析することによって、車両12Cを死角物体34として特定する。
なお、物体特定機能10Kは、他の方法を用いて、死角物体34を特定してもよい。
例えば、物体特定機能10Kは、物体が他の物体によって遮蔽されることなく撮影されたときの特徴を示す第2特徴情報を予め記憶する。第2特徴情報は、例えば、物体の形や色などである。そして、物体特定機能10Kは、撮影画像20に含まれる物体の内、第2特徴情報によって示される物体を特定することで、遮蔽物32を特定する。図5に示す例では、具体的には、物体特定機能10Kは、撮影画像20における、遮蔽されていない車両の形状を示す車両12Bを、遮蔽物32として特定する。
そして、物体特定機能10Kは、撮影画像20における遮蔽物32の領域を、死角20Aとして推定する。さらに物体特定機能10Kは、死角20Aによって少なくとも一部が遮蔽されている車両12Cを特定する。これにより、物体特定機能10Kは、車両12Cを死角物体34として特定してもよい。
また、例えば、物体特定機能10Kは、あらかじめ用意したテンプレートで撮影画像20中の物体の位置を検出した後、テンプレートを細分化する方法を用いてもよい。そして、物体特定機能10Kは、遮蔽物30と撮影画像20とに矛盾のある部分(例えば図5における死角内領域22C)を検出することで、死角物体34を特定してもよい。
なお、周辺情報が距離情報である場合には、物体特定機能10Kは、距離が不連続に変化する境界を結ぶ線を死角20Aの境界線として抽出すればよい。そして、物体特定機能10Kは、境界線によって区切られた領域の内、最も距離の近い領域を遮蔽物32として特定する。さらに、物体特定機能10Kは、特定した遮蔽物32に該境界線を介して連続する他の領域を、死角物体34として特定すればよい。
また、情報処理装置10は、出力対象の移動体30の外部に設置されたセンサ10Gから周辺情報を取得してもよい。この場合、物体特定機能10Kは、出力対象の移動体30の位置を視点とし、後述する死角特定機能14Sおよび物体特定機能14K(第2の実施の形態、図8参照)と同様にして、死角20Aおよび死角物体34を特定すればよい(詳細後述)。
なお、出力対象の移動体30の位置は、出力対象の移動体30のGPS(Global Positioning System)情報などから取得すればよい。なお、出力対象の移動体30の位置の取得方法には、他の方法を用いてもよい。例えば、撮像画像を利用したVSLAM(Visual Simultaneous Localization and Mapping)により、時系列の運動を取得することで、出力対象の移動体30の位置を取得してもよい。また、出力対象の移動体30に設けられたジャイロセンサやIMU(Inertial Measurement Unit)から、出力対象の移動体30の加速度や角速度を取得することで、出力対象の移動体30の位置を取得してもよい。また、LiDARなどによって3次元点群を取得し、あらかじめ保持した3次元地図とのマッチングにより、地図上における出力対象の移動体30の位置を取得してもよい。
また、出力対象の移動体30の位置は、出力対象の移動体30が車両である場合、出力対象の移動体30のドライバの視点(目の位置)であってもよい。この場合、出力対象の移動体30に、ドライバの頭部を撮影可能な撮影装置を備えた構成とする。そして、物体特定機能10Kは、該撮影画像からドライバの視点を推定すればよい。この推定には、公知の方法を用いればよい。例えば、物体特定機能10Kは、該撮影画像から、ドライバの頭部の向き、目の位置、および視線方向を推定し、これらの推定結果から、ドライバの視点を推定する。
さらに、出力対象の移動体30の位置は、センサ10Gの設置位置であってもよい。この場合、出力対象の移動体30の重心位置と、センサ10Gの設置位置と、の相対関係をあらかじめ保持することで、センサ10Gの設置位置を取得すればよい。また、センサ10Gは、複数のセンサから構成されていてもよい。この場合、複数のセンサ10Gによって得られた情報を周辺情報として用い、死角物体34の特定に用いればよい。
次に、種類特定機能10Lについて説明する。種類特定機能10Lは、種類特定部の一例である。種類特定機能10Lは、物体特定機能10Kで特定した死角物体34の種類を特定する。種類特定機能10Lは、予め物体の色や形などの特徴を示す情報を、物体の種類に対応づけて予め記憶する。そして、種類特定機能10Lは、死角物体34の色や形などの特徴に対応する種類を読取ることで、死角物体34の種類を特定すればよい。
例えば、死角物体34として車両12Cが特定されると、種類特定機能10Lは、車両12Cの種類を示す“車両”を特定する。
判定機能10Mは、判定部の一例である。出力対象の移動体30の死角20Aに、物体の種類に対応する特定のパーツが含まれるか否かを判定する。詳細には、判定機能10Mは、出力対象の移動体30の死角20Aに、該死角20Aに含まれる死角物体34の種類に対応するパーツが含まれるか否かを判定する。
具体的には、判定機能10Mは、種類特定機能10Lで特定した種類に対応するパーツを、パーツ管理情報10Jから読取る。そして、判定機能10Mは、死角20Aに、読取ったパーツが含まれるか否かを判定する。
本実施の形態では、判定機能10Mは、死角物体34における死角20Aから露出した露出領域に基づいて、パーツが死角物体34における死角20Aに含まれるか否かを判定する。
図5を用いて詳細に説明する。例えば、死角物体34が車両12Cであったと仮定する。そして、パーツ管理情報10Jにおける、車両12Cの種類“車両”に対応するパーツが、方向指示器であったと仮定する。この場合、判定機能10Mは、撮影画像20の車両12Cにおける、死角20Aから露出した露出領域20Bを解析する。これによって、判定機能10Mは、死角内領域22Cに含まれるパーツPを推定する。死角内領域22Cは、該車両12C(死角物体34)における死角20A内の領域である。
具体的には、判定機能10Mは、物体の種類と、物体に含まれるパーツPの各々の形状および他のパーツPに対する相対位置と、を対応づけて予め記憶する。そして、判定機能10Mは、車両12Cにおける露出領域20Bに含まれるパーツP(図5では、方向指示器P2)の形状と該露出領域20Bに含まれるパーツP(図5では、方向指示器P2)の位置から、該方向指示器P2に対する相対位置が死角内領域22C内に位置する他のパーツP(図5では、方向指示器P1)を推定する。これにより、判定機能10Mは、死角内領域22Cに含まれるパーツP(方向指示器P1)を推定する。
そして、判定機能10Mは、車両12Cの死角内領域22Cに、該車両12Cの種類“車両”に対応するパーツPがあると推定されたとする。この場合、判定機能10Mは、出力対象の移動体30の死角20Aに、死角物体34(車両12C)の種類に対応する特定のパーツPが含まれると判定する。
出力制御機能10Nは、出力制御部の一例である。出力制御機能10Nは、死角20Aに死角物体34の種類に対応する特定のパーツPが含まれると判定された場合、出力情報を出力する。
出力情報は、死角20Aを示す情報である。出力情報は、具体的には、死角20Aに関する情報、死角20Aに含まれるパーツPに関する情報、死角20Aに含まれる物体(死角物体34)に関する情報、の少なくとも1つを含む。
死角20Aに関する情報は、死角20Aの範囲、死角20Aの位置、死角20Aの形状、死角20Aの状態を示す情報などである。死角20Aの位置は、出力対象の移動体30を基準とする死角20Aの相対位置であってもよいし、絶対位置であってもよい。
死角20AにおけるパーツPに関する情報は、死角20Aに含まれるパーツPの種類、パーツPの位置、パーツPの形状、パーツPの状態(色や点滅状態など)、などである。
死角物体34に関する情報は、死角20Aに含まれる死角物体34の数、死角物体34の種類、死角物体34の走行方向、死角物体34の位置、死角物体34の速度、などである。死角物体34の位置は、出力対象の移動体30に対する相対位置であってもよいし、絶対位置であってもよい。
本実施の形態では、出力制御機能10Nは、出力情報を出力するように出力回路10Cを制御する。このため、出力回路10Cは、出力情報を出力する。具体的には、出力回路10Cにおける通信回路10Dが、出力対象の移動体30のドライバの携帯する携帯端末などへ出力情報を送信する。また、例えば、出力回路10Cにおけるディスプレイ10Eに出力情報が表示される。また、例えば、ディスプレイ10Eが、出力情報に応じた色や強度の光を、出力情報に応じた点灯状態(点灯または点滅)で点灯する。
また、出力制御機能10Nは、出力情報に応じた音を出力するようにスピーカ10Fを制御する。出力情報に応じた音は、出力情報を示す音声であってもよいし、出力情報に応じた警告音であってもよい。
次に、処理回路10Aが実行する処理の手順を説明する。図6は、処理回路10Aが実行する処理の手順の一例を示す、フローチャートである。
まず、処理回路10Aは、センサ10Gから、出力対象の移動体30の周辺情報を取得する(ステップS100)。次に、物体特定機能10Kが、周辺情報に基づいて、出力対象の移動体30の走行環境における死角20Aに含まれる死角物体34を特定する(ステップS102)。
次に、種類特定機能10Lが、ステップS102で特定した死角物体34の種類を特定する(ステップS104)。次に、判定機能10Mが、ステップS104で特定した種類に対応するパーツPを、パーツ管理情報10Jから特定する(ステップS106)。
次に、判定機能10Mは、出力対象の移動体30の死角20Aに、ステップS106で特定したパーツPが含まれるか否かを判定する(ステップS108)。ステップS108で否定判断すると(ステップS108:No)、後述するステップS112へ進む。
ステップS108で肯定判断すると(ステップS108:Yes)、ステップS110へ進む。ステップS110では、出力制御機能10Nが出力情報を出力するように出力回路10Cを制御する(ステップS110)。
次に、処理回路10Aは、処理を終了するか否かを判断する(ステップS112)。例えば、処理回路10Aは、ユーザによる入力回路10Hの操作指示によって処理終了を示す信号が入力されたか否かを判別することで、ステップS112の判断を行う。
ステップS112で否定判断すると(ステップS112:No)、上記ステップS100へ戻る。一方、ステップS112で肯定判断すると(ステップS112:Yes)、本ルーチンを終了する。
以上説明したように、本実施の形態の情報処理装置10は、判定機能10Mと、出力制御機能10Nと、を備える。判定機能10Mは、対象物(出力対象の移動体30)の死角20Aに、物体の種類に対応する特定のパーツPが含まれるか否かを判定する。出力制御機能10Nは、死角20AにパーツPが含まれると判定された場合、出力情報を出力する。
このように、本実施の形態の情報処理装置10では、対象物の死角20Aに特定のパーツPが含まれる場合に、出力情報を出力する。
従って、本実施の形態の情報処理装置10は、死角20Aの情報を適切に出力することができる。
また、本実施の形態の情報処理装置10では、死角20AにパーツPが含まれるか否かを判別することで、出力情報を出力する。このため、情報処理装置10は、上記効果に加えて、より小さい処理負荷で、且つ、より高速に、出力情報を出力することができる。よって、情報処理装置10は、出力対象の移動体30がより高速に移動していた場合であっても、死角20Aの情報を適切に出力することができる。
また、本実施の形態の情報処理装置10では、出力情報を出力することで、出力対象の移動体30に対して、走行に関する注意喚起を促すことができる。
また、本実施の形態の情報処理装置10では、判定機能10Mは、死角20Aに、死角20Aに含まれる物体(死角物体34)の種類に対応するパーツPが含まれるか否かを判定する。このため、本実施の形態の情報処理装置10では、上記効果に加えて、死角20Aについて、更に適切な情報を出力することができる。
また、本実施の形態の情報処理装置10では、判定機能10Mは、物体(死角物体34)における死角20Aから露出した露出領域20Bに基づいて、パーツPが物体(死角物体34)における死角20Aに含まれるか否かを判定する。このため、本実施の形態の情報処理装置10では、上記効果に加えて、簡易な構成でより高速に、死角20Aの情報を適切に出力することができる。
(第2の実施の形態)
図7は、本実施の形態の情報処理装置14の利用形態の一例を示す模式図である。本実施の形態では、情報処理装置14を、出力対象の移動体30とは異なる場所に設置した形態を説明する。
本実施の形態の情報処理装置14は、例えば、出力対象の移動体30の周辺情報を取得可能な位置に設置されている。例えば、情報処理装置14は、外部装置13に搭載されている。外部装置13は、出力対象の移動体30とは別体として構成された装置である。外部装置13は、出力対象の移動体30の走行領域を撮影可能な位置に設置されている。また、外部装置13は、地面に固定して設置されている。
このため、本実施の形態では、情報処理装置14は、出力対象の移動体30や他の車両などの物12を含む周辺情報を得る。そして、情報処理装置14は、出力対象の移動体30の周辺情報に含まれる物12から、出力対象の移動体30を選択する。そして、情報処理装置14は、選択した出力対象の移動体30の死角20Aに、特定のパーツPが含まれる場合に、出力情報を出力する。
次に、情報処理装置14の構成について詳細に説明する。図8は、情報処理装置14の構成の一例を示すブロック図である。
情報処理装置14は、出力対象の移動体30の死角20Aに含まれる物体(死角物体34)に応じた出力情報を出力する。情報処理装置14は、例えば、専用または汎用コンピュータである。情報処理装置14は、処理回路14Aと、記憶回路14Bと、出力回路14Cと、センサ14Gと、入力装置14Hと、を備える。
処理回路14A、記憶回路14B、出力回路14C、センサ14G、および入力装置14Hは、バス14Iを介して接続されている。なお、記憶回路14B、出力回路14C、センサ10G、および入力装置14Hは、有線または無線で処理回路14Aに接続すればよい。また、記憶回路14B、出力回路14C、センサ14G、および入力装置14Hの少なくとも1つと、処理回路14Aと、を、ネットワークを介して接続してもよい。
出力回路14C(通信回路14D、ディスプレイ14E、スピーカ14F)、センサ10G、および入力装置10Hは、情報処理装置14に搭載されている以外は、第1の実施の形態の出力回路10C(通信回路10D、ディスプレイ10E、スピーカ10F)、センサ10G、および入力装置10Hの各々と同様である。
センサ14Gは、第1の実施の形態のセンサ10Gと同様に、周辺情報を検知する。なお、本実施の形態では、センサ14Gは、外部装置13に設けられている。このため、センサ14Gは、出力対象の移動体30の外部から、出力対象の移動体30を含む複数の物12を検知可能な位置に設けられている。
図7を用いて具体的に説明する。センサ14Gが撮影装置である場合を一例として説明する。図7に示す例では、センサ14Gは、撮影によって複数の物12(車両12A〜車両12C、および静止物12D)を含む撮影画像を得る。すなわち、センサ14Gは、周辺情報としての撮影画像を得る。処理回路14Aは、この周辺情報(撮影画像)を用いて、後述する処理を行う。
なお、センサ14Gは、特定の領域を撮影した撮影画像を、周辺情報として用いてもよい。また、センサ14Gは、複数の撮影装置によって撮影した複数の撮影画像の群を、周辺情報として用いてもよい。
図8に戻り説明を続ける。情報処理装置14では、センサ14G、通信回路14D、ディスプレイ14E、およびスピーカ14Fの少なくとも1つを、情報処理装置14とは別体として構成してもよい。この場合、情報処理装置14は、別体として構成されたセンサ14G、通信回路14D、ディスプレイ14E、およびスピーカ14Fの各々と、無線通信すればよい。
記憶回路14Bは、第1の実施の形態の処理回路10A(図3参照)の機能を実行するためのプログラムに代えて、処理回路14Aの機能を実行するためのプログラムを記憶する。記憶回路14Bは、この点以外は、第1の実施の形態の記憶回路10B(図3参照)と同様である。記憶回路14Bは、第1の実施の形態の記憶回路10Bと同様に、パーツ管理情報10Jを記憶する(図4参照)。
次に、処理回路14Aについて説明する。処理回路14Aは、取得機能14Pと、選択機能14Qと、遮蔽物特定機能14Rと、死角特定機能14Sと、物体特定機能14Kと、死角内領域特定機能14Yと、種類特定機能14Lと、判定機能14Mと、出力制御機能14Nと、を備える。
処理回路14Aにおける各処理機能は、コンピュータによって実行可能なプログラムの形態で記憶回路14Bへ記憶されている。処理回路14Aは、プログラムを記憶回路14Bから読出、実行することで、各プログラムに対応する機能を実現するプロセッサである。
各プログラムを読み出した状態の処理回路14Aは、図8の処理回路14A内に示された各機能を有する。図8では、単一の処理回路14Aによって、取得機能14P、選択機能14Q、遮蔽物特定機能14R、死角特定機能14S、物体特定機能14K、死角内領域特定機能14Y、種類特定機能14L、判定機能14M、および出力制御機能14Nが実現される。
なお、各機能の各々を実現するための独立した複数のプロセッサを組み合わせて処理回路14Aを構成してもよい。この場合、各プロセッサがプログラムを実行することにより各機能を実現する。また、各処理機能がプログラムとして構成され、1つの処理回路が各プログラムを実行する場合であってもよいし、特定の機能が専用の独立したプログラム実行回路に実装される場合であってもよい。
なお、本実施の形態では、プロセッサは、記憶回路14Bに保存されたプログラムを読み出し実行することで、上記各機能を実現する。なお、記憶回路14Bにプログラムを保存する代わりに、プロセッサの回路内にプログラムを直接組み込むよう構成してもよい。この場合、プロセッサは回路内に組み込まれたプログラムを読み出し実行することで機能を実現する。
取得機能14Pは、取得部の一例である。取得機能14Pは、周辺情報をセンサ14Gから取得する。また、取得機能14Pは、出力対象の移動体30の位置情報を取得する。本実施の形態では、取得機能14Pは、センサ14Gから取得した周辺情報を解析することで、周辺情報に示される物12の内、移動可能な物12である移動体の各々の位置を示す位置情報を取得する。これによって、取得機能14Pは、出力対象の移動体30を含む、移動体の位置情報を取得する。
図9は、センサ14Gが検知した周辺情報を水平方向にマッピングした二次元マップ22の一例である。図9では、周辺情報が撮影画像である場合を示した。
まず、取得機能14Pは、撮影画像21に含まれる物12の内、移動可能な物12である移動体36を検出する。図9に示す例では、取得機能14Pは、撮影画像21に含まれる物12(車両12A、車両12B、車両12C、静止物12D)の内、車両12A、車両12B、および車両12Cを、移動体36として検出する(図7も参照)。
取得機能14Pは、公知の画像処理方法などを用いて、移動体36を検出すればよい。取得機能14Pは、例えば、人物や車両などの物体の画像から特徴量を予め抽出する。そして、取得機能14Pは、特徴量から識別器を予め生成する。取得機能14Pは、この識別器を用いて、撮影画像21に含まれる移動体36を検出すればよい。
特徴量は、例えば、HoG(Histograms of Oriented Gradients)、SIFT(Scale−Invariant Feature Transform)などである。識別器は、例えば、線形SVM(Support Vector Machine)である。
なお、取得機能14Pは、他の方法を用いて、撮影画像21から移動体36を検出してもよい。例えば、取得機能14Pは、撮影タイミングの異なる複数の撮影画像21を比較し、輝度値の変化が閾値以上の領域を移動体36として検出してもよい。また、取得機能14Pは、移動体36の画像をテンプレートとして用意し、該テンプレートを用いて撮影画像21を探索することで、移動体36を検出してもよい。また、取得機能14Pは、撮影画像21における特徴点を公知の方法で追跡することで、撮影画像21内の移動点を検出してもよい。この場合、取得機能14Pは、撮影画像21内の移動点を、移動体36として検出すればよい。
次に、取得機能14Pは、撮影画像21に含まれる移動体36の各々の位置を示す位置情報を取得する。
情報処理装置14が位置固定の外部装置13に搭載されている場合、地面とセンサ14Gとの位置関係は一定である。このため、取得機能14Pは、センサ14Gによって得られる撮影画像21を構成する各画素の画素位置について地面からの高さを推定し、地図上の位置(絶対位置)と対応づける。そして、取得機能14Pは、撮影画像21における移動体36の位置に対応する絶対位置を特定し、特定した絶対位置を移動体36の位置情報として取得してもよい。
なお、取得機能14Pは、移動体36の位置情報に絶対位置を用いる形態に限定されない。例えば、取得機能14Pは、特定の位置を基準とした相対位置を、移動体36の位置情報に用いてもよい。基準とする特定の位置は、例えば、情報処理装置14を搭載した外部装置13の位置である。
なお、センサ14Gがミリ波レーダやレーザセンサである場合、周辺情報は、距離情報である。この場合、取得機能14Pは、距離情報によって示される三次元点群から、公知の方法を用いて移動体36および移動体36の位置情報を取得すればよい。
また、取得機能14Pは、撮影画像21に含まれる移動体36の各々から、無線通信により、移動体36の各々の位置を示す位置情報を取得してもよい。また、取得機能14Pは、撮影画像21に含まれる移動体36の各々の位置情報を、公知の交通システムなどから取得してもよい。
これによって、取得機能14Pは、撮影画像21に含まれる移動体36(車両12A、車両12B、車両12C)の各々の位置情報を取得する。図9に示す例では、取得機能14Pは、移動体36(車両12A、車両12B、車両12C)の各々の位置(位置Q1、位置Q2、位置Q3)の各々を示す位置情報を取得する。
次に、選択機能14Qについて説明する。選択機能14Qは、撮影画像21に含まれる移動体36の内の1つを、出力対象の移動体30として選択する。
選択機能14Qは、撮影画像21に含まれる移動体36の内の1つを、予め定めた規則に沿って選択する。この規則は、例えば、情報処理装置14との距離が最も小さい移動体36、情報処理装置14との距離が最も大きい移動体36、信号機などの予め定めた物との距離が最も近い移動体36、などである。なお、規則は、これらに限定されない。
本実施の形態では、選択機能14Qは、撮影画像21に含まれる複数の移動体36(車両12A、車両12B、車両12C)の内、車両12Aを出力対象の移動体30として選択した場合を説明する。
遮蔽物特定機能14Rは、出力対象の移動体30の周囲の視界を遮蔽する遮蔽物32を特定する。図9を用いて説明する。例えば、遮蔽物特定機能14Rは、二次元マップ22における、出力対象の移動体30(車両12A)の位置Q1を視点とする。そして、遮蔽物特定機能14Rは、二次元マップ22における、位置Q1を中心とする360°の全方向の各々について、該位置Q1から最も近くに位置する他の物12を、遮蔽物32として特定する。他の物12とは、出力対象の移動体30以外の物12である。
図7および図9に示す例の場合、遮蔽物特定機能14Rは、二次元マップ22に含まれる物12の内、車両12Bおよび静止物12Dを、遮蔽物32として特定する。
なお、本実施の形態では、遮蔽物特定機能14Rは、出力対象の移動体30の外部に存在する他の物12であって、上記条件を満たす物12を遮蔽物32として特定すればよい。出力対象の移動体30の外部とは、出力対象の移動体30が車両12Aである場合、例えば、車外である。このため、この場合、出力対象の移動体30を構成するAピラーなどの部材は、遮蔽物32として特定されない。
なお、遮蔽物特定機能14Rは、出力対象の移動体30を運転するドライバの位置を視点とした遮蔽物32を特定してもよい。この場合、遮蔽物特定機能14Rは、出力対象の移動体30を構成するAピラーなどの部材と、出力対象の移動体30の外部に存在する他の物12であって上記条件を満たす物と、を遮蔽物32として特定する。この場合、例えば、遮蔽物特定機能14Rは、出力対象の移動体30に搭載されているAピラーと、車両12Bと、静止物12Dと、を、視界を遮蔽する遮蔽物32として特定する。
遮蔽物特定機能14Rが、出力対象の移動体30を構成する部材の少なくとも一部を遮蔽物32として特定することで、情報処理装置14は、死角20Aの情報をより適切に報知することができる。
なお、遮蔽物特定機能14Rは、出力対象の移動体30の位置Q1を視点とし、出力対象の移動体30の位置Q1を含む地図情報から、遮蔽物32を特定してもよい。地図情報は、地図データを配信する外部装置などから取得すればよい。
そして、遮蔽物特定機能14Rは、特定した遮蔽物32の位置や形状を、死角特定機能14Sへ出力する。遮蔽物32の位置には、絶対位置を用いてもよいし、相対位置を用いてもよい。
図8に戻り、説明を続ける。死角特定機能14Sは、死角特定部の一例である。本実施の形態では、死角特定機能14Sは、周辺情報と出力対象の移動体30の位置情報とに基づいて、出力対象の移動体30の走行環境における死角20Aを特定する。
死角特定機能14Sは、出力対象の移動体30の位置Q1を視点としたときの、遮蔽物32による死角20Aを特定する。出力対象の移動体30の位置Q1は、出力対象の移動体30の位置情報の示す位置である。
死角20Aの特定方法を具体的に説明する。図9は、死角20Aの特定の説明図である。例えば、死角特定機能14Sは、撮影画像21の二次元マップ22を用いて、死角20Aを特定する。
詳細には、死角特定機能14Sは、二次元マップ22を複数のグリッドGに分割する。各グリットGは、同じ大きさである。そして、死角特定機能14Sは、二次元マップ22に含まれるグリッドGの内、出力対象の移動体30の位置Q1とグリッドGとを結ぶ直線が遮蔽物32を通過するグリッドGを、死角領域22Aを構成するグリッドGとして特定する。
例えば、図9に示す例では、グリッドG1と位置Q1とを結ぶ直線は、遮蔽物32を通過しない。このため、グリッドG1は、死角領域22A外の領域(すなわち、非死角領域22D)に位置する。一方、グリッドG2と位置Q1とを結ぶ直線は、遮蔽物32を通過する。このため、グリッドG2は、死角領域22Aに位置する。
そして、死角特定機能14Sは、二次元マップ22における、死角領域22Aを構成するグリッドGによって構成される領域を、死角20Aとして特定する。
なお、死角特定機能14Sは、上記とは異なる方法を用いて死角20Aを特定してもよい。例えば、死角特定機能14Sは、二次元マップ22を構成するグリッドGの内、遮蔽物32に対して出力対象の移動体30の位置Q1の反対側に位置するグリッドGを、死角領域22Aを構成するグリッドGとしてもよい。そして、死角領域22Aを構成するグリッドGによる領域を、死角20Aとして特定してもよい。
また、死角特定機能14Sは、二次元マップ22を構成するグリッドGの内、遮蔽物32を含むグリッドGに隣接するグリッドGが死角領域22Aを構成するか否かを順に探索してもよい。そして、この探索によって、死角20Aを特定してもよい。
また、二次元マップ22を構成するグリッドGは、同じ大きさであってもよいし、異なる大きさであってもよい。また、死角特定機能14Sは、撮影画像21を地面からの高さの異なる複数の二次元マップ22にマッピングした二次元マップ群を用いて、死角20Aを特定してもよい。
また、死角特定機能14Sは、二次元マップ22に代えて、三次元マップを用いて死角20Aを特定してもよい。この場合、遮蔽物特定機能14Rは、三次元形状の遮蔽物32を特定する。そして、死角特定機能14Sは、三次元マップと、三次元形状の遮蔽物32とを用いて、三次元の領域を死角20Aとして特定してもよい。また、死角特定機能14Sは、死角20Aを、出力対象の移動体30の位置Q1を基準とする方向と距離とで表してもよい。
なお、死角特定機能14Sは、出力対象の移動体30の位置Q1を視点とした死角20Aを特定した。しかし、死角特定機能14Sは、出力対象の移動体30のドライバの視点と、出力対象の移動体30の位置Q1と、センサ14Gの設置位置と、の少なくとも一方を視点とした死角20Aを特定してもよい。すなわち、死角特定機能14Sは、出力対象の移動体30に関する複数の位置を視点として用いて、死角20Aを特定してもよい。また、死角特定機能13Sは、センサ14Gの設置位置を視点とした死角20Aを特定してもよい。
図8に戻り説明を続ける。物体特定機能14Kは、物体特定部の一例である。物体特定機能14Kは、死角20Aに含まれる死角物体34を特定する。
図10は、死角物体34の特定の説明図である。例えば、まず、物体特定機能14Kは、二次元マップ22を構成するグリッドGの内、出力対象の移動体30(車両12A)以外の物12の各々の位置に相当するグリッドGを特定する。そして、物体特定機能14Kは、特定したグリッドGが、死角特定機能14Sで特定した死角20Aの死角領域22Aに含まれるか否かを判定する。物体特定機能14Kは、物12の位置に相当するグリッドGが死角領域22Aに含まれる場合、該物12を死角物体34として特定する。
具体的には、図10(A)に示すように車両12Cの位置Q3は、死角領域22A内に位置する。このため、死角特定機能14Sは、車両12Cを、死角物体34として特定する。一方、図10(B)に示すように、車両12Bの位置Q2は、死角領域22Aの外側(すなわち、非死角領域22D)に位置している。このため、死角特定機能14Sは、車両12Bについては、死角物体34として特定しない。
このようにして、物体特定機能14Kは、死角物体34を特定する。図9および図10に示す例では、物体特定機能14Kは、車両12Cを、死角物体34として特定する。
なお、死角物体34の特定方法は、上記方法に限定されない。例えば、物体特定機能14Kは、二次元マップ22に含まれる、出力対象の移動体30以外の物12の各々の内、死角領域22Aに含まれる割合が閾値以上である物12を、死角物体34として特定してもよい。また、物体特定機能14Kは、二次元マップ22に含まれる、出力対象の移動体30以外の物12の各々の内、少なくとも一部が死角領域22Aに含まれる物12を、死角物体34として特定してもよい。
この場合、物体特定機能14Kは、二次元マップ22に含まれる、出力対象の移動体30以外の物12の各々の形状を特定する。そして、物体特定機能14Kは、特定した形状によって示される範囲を、物12の占める範囲として用いればよい。そして、該範囲の少なくとも一部が死角20Aに含まれる物12を、死角物体34として特定してもよい。
なお、物12の形状には、近似図形、CGなどのモデル、観測により予め取得した点群を用いればよい。
図8に戻り、死角内領域特定機能14Yについて説明する。死角内領域特定機能14Yは、死角物体34における、出力対象の移動体30の死角20Aを特定する。言い換えると、死角内領域特定機能14Yは、死角物体34における、死角20A内の領域である死角内領域22Cを特定する。死角物体34は、物体特定機能14Kによって特定された物12(物体)である。死角内領域特定機能14Yは、死角内領域22Cを特定することによって、死角物体34における、出力対象の移動体30の死角20Aを特定する。
図11は、死角内領域22Cの特定の説明図である。例えば、死角内領域特定機能14Yは、死角物体34としての車両12Cの領域12C’を取得する(図11(A)参照)。車両12Cの領域12C’は、車両12Cの形状を示す連続線の内側の領域である。そして、死角内領域特定機能14Yは、車両12Cの領域12C’における、死角領域22Aに重なる領域を、死角内領域22Cとして特定する(図11(B)参照)。
詳細には、死角内領域特定機能14Yは、二次元マップ22を構成するグリッドGの内、死角領域22Aを構成するグリッドGを死角特定機能14Sから取得する。そして、死角内領域特定機能14Yは、死角領域22Aを構成するグリッドGの各々における、車両12Cの領域12C’に重複する領域を、死角内領域22Cとして特定すればよい。
なお、死角内領域特定機能14Yは、車両12Cを、予め定めた間隔ごと、または、車両12Cを構成する部品の単位ごとに、複数領域に分割してもよい。そして、死角内領域特定機能14Yは、該領域の内、死角領域22Aに重なる領域を、車両12Cにおける死角内領域22Cとして特定してもよい。
そして、死角内領域特定機能14Yは、死角物体34(車両12C)の死角内領域22Cを特定することによって、死角物体34における、出力対象の移動体30の死角20Aを特定する。
図8に戻り、種類特定機能14Lについて説明する。種類特定機能14Lは、種類特定部の一例である。種類特定機能14Lは、物体特定機能14Kで特定した死角物体34の種類を特定する。種類特定機能14Lは、第1の実施の形態の種類特定機能10Lと同様にして、死角物体34の種類を特定すればよい。例えば、死角物体34が車両12Cである場合、種類特定機能14Lは、種類“車両”を特定する。
次に、判定機能14Mについて説明する。判定機能14Mは、判定部の一例である。判定機能14Mは、第1の実施の形態の判定機能10Mと同様に、出力対象の移動体30の死角20Aに、死角物体34の種類に対応する特定のパーツPが含まれるか否かを判定する。
本実施の形態では、判定機能14Mは、種類特定機能14Lで特定した種類に対応するパーツPを、パーツ管理情報10Jから特定する。そして、判定機能14Mは、死角物体34の死角内領域22Cに、特定したパーツPが含まれるか否かを判定する。これによって、判定機能14Mは、死角物体34における、出力対象の移動体30の死角20Aに、パーツPが含まれるか否かを判定する。
例えば、判定機能14Mは、物体の種類と、物体に含まれるパーツPの各々の特徴量(形状、色など)と、該物体における該パーツPの位置と、を対応づけて予め記憶する。そして、判定機能14Mは、死角物体34における死角内領域22Cを画像解析し、種類特定機能14Lで特定した種類に対応するパーツPの特徴量と一致する領域が含まれる場合、死角内領域22CにパーツPが含まれると判定する。
なお、判定機能14Mは、特定したパーツPに対応する位置が、死角物体34の死角内領域22C内に位置する場合に、死角内領域22CにパーツPが含まれると判定してもよい。
図12および図13は、判定機能14Mによる判定の説明図である。図12は、死角内領域22Cに特定のパーツPが含まれる場合の説明図である。
例えば、センサ14Gが、周辺情報として、外部装置13から撮影した撮像画像21(図12(A)参照)を得たと仮定する。この場合、処理回路14Aでは、外部装置13から撮影した撮像画像に対応する二次元マップ22(図12(B)参照)を用いて、出力対象の移動体30(車両12A)の位置Q1を視点とした死角22Aである死角内領域22Cに、死角物体34(車両12C)の種類に応じたパーツPが含まれるか否かを判定する。
図12に示す例では、死角物体34である車両12Cの方向指示器P1が、車両12Bを遮蔽物32とした死角20Aに含まれる。詳細には、車両12Cにおける死角内領域22Cに、方向指示器P1が含まれる。このため、この場合、判定機能14Mは、死角20AにパーツP(ここでは方向指示器P1)が含まれると判定する。
図13は、死角20AにパーツPが含まれない場合の説明図である。例えば、センサ14Gが、周辺情報として、外部装置13から撮影した撮像画像21(図13(A)参照)を得たと仮定する。この場合、処理回路14Aでは、外部装置13から撮影した撮像画像に対応する二次元マップ22(図13(B)参照)を用いて、車両12Aの死角22Aに含まれる物体を特定する。図13に示す例では、死角22Aには、車両12Cが含まれる。そして、この死角物体34である車両12CのパーツPは、死角領域22Aに含まれていない。すなわち、車両12Cにおける死角内領域22Cには、パーツPが含まれていない。このため、この場合、処理回路14Aは、死角20AにパーツPが含まれていないと判定する。
図8に戻り説明を続ける。出力制御機能14Nは、死角20AにパーツPが含まれると判定された場合、出力情報を出力する。出力情報は、第1の実施の形態と同様である。また、出力制御機能14Nの処理は、出力制御機能10Nと同様である。
次に、処理回路14Aが実行する処理の手順を説明する。図14は、処理回路14Aが実行する処理の手順の一例を示す、フローチャートである。
まず、取得機能14Pが、センサ14Gから周辺情報を取得する(ステップS200)。次に、取得機能14Pが、周辺情報に含まれる移動体36(車両12A、車両12B、車両12C)の各々の位置情報を取得する(ステップS202)。
次に選択機能14Qが、ステップS200で取得した周辺情報に含まれる移動体36の内の1つを、出力対象の移動体30として選択する(ステップS204)。ここでは、上記と同様に、車両12Aを出力対象の移動体30として選択したものとして説明する。
次に、遮蔽物特定機能14Rが、出力対象の移動体30(車両12A)の周囲の視界を遮蔽する遮蔽物32を特定する(ステップS206)。例えば、遮蔽物特定機能14Rは、車両12B、12Cおよび静止物12Dを、遮蔽物32として特定する。
次に、死角特定機能14Sが、ステップS200で取得した周辺情報と、出力対象の移動体30の位置情報とに基づいて、出力対象の移動体30の走行環境における死角20Aを特定する(ステップS208)。
次に、物体特定機能14Kが、ステップS208で特定した死角20Aに含まれる物体12(死角物体34)を特定する(ステップS210)。
次に、物体特定機能14Kは、死角物体34を特定出来たか否かを判定する(ステップS212)。特定出来なかった場合(ステップS212:No)、ステップS224へ進む。一方、特定出来た場合(ステップS212:Yes)、ステップS214へ進む。
ステップS214では、死角内領域特定機能14Yが、ステップS210で特定した死角物体34(車両12C)における死角内領域22Cを特定する(ステップS214)。
次に、種類特定機能14Lが、ステップS210で特定した死角物体34の種類を特定する(ステップS216)。次に、判定機能14Mが、ステップS216で特定した種類に対応するパーツPを、パーツ管理情報10Jから特定する(ステップS218)。
次に、判定機能14Mは、死角20Aに、ステップS216で特定したパーツPが含まれるか否かを判定する(ステップS220)。ステップS220で否定判断すると(ステップS220:No)、後述するステップS224へ進む。
ステップS220で肯定判断すると(ステップS220:Yes)、ステップS222へ進む。ステップS222では、出力制御機能14Nが出力情報を出力するように出力回路14Cを制御する(ステップS222)。
次に、処理回路14Aは、処理を終了するか否かを判断する(ステップS224)。例えば、処理回路14Aは、ユーザによる入力装置14Hの操作指示によって処理終了を示す信号が入力されたか否かを判別することで、ステップS224の判断を行う。
ステップS224で否定判断すると(ステップS224:No)、上記ステップS200へ戻る。一方、ステップS224で肯定判断すると(ステップS224:Yes)、本ルーチンを終了する。
以上説明したように、本実施の形態の情報処理装置14は、出力対象の移動体30の外部の外部装置13に搭載されている。また、本実施の形態の情報処理装置14は、出力対象の移動体30の周辺情報として、出力対象の移動体30や他の車両などの物12を含む周辺情報を得る。そして、情報処理装置14は、出力対象の移動体30の周辺情報に含まれる物12から、出力対象の移動体30を選択する。そして、情報処理装置14は、選択した出力対象の移動体30の死角20Aに、特定のパーツPが含まれる場合に、出力情報を出力する。
このため、情報処理装置14は、第1の実施の形態の情報処理装置10の効果に加えて、死角20A内を視認可能なセンサ14Gに基づいて判定するため、死角20A内のパーツPの判定精度を向上させることができる。従って、本実施の形態の情報処理装置14は、より適切に、死角20A内の情報を出力することができる。
なお、本実施の形態では、処理回路14Aは、センサ14Gが周辺情報を取得するごとに、出力対象の移動体30の死角20AにパーツPが含まれるか否かを判定し、出力情報を出力する形態を説明した。しかし、処理回路14Aは、移動体36の何れかから処理要求を示す要求情報を受付けた場合に、該処理要求の送信元の移動体36を出力対象の移動体30として設定し、該出力対象の移動体30の死角20Aに上記特定のパーツPが含まれるか否かを判定してもよい。
要求情報は、例えば、移動体36の識別情報、移動体36の現在位置を示す位置情報、死角20Aに関する情報の取得要求を示す信号、などを含む。
例えば、車両12Aが、上記要求情報を情報処理装置14へ送信したと仮定する。この場合、出力対象の移動体30である車両12Aのドライバは、車両12Aに設けられた入力装置(例えば、入力装置10H、図1参照)を用いて、死角20Aに関する情報の取得要求を入力する。すると、車両12Aの通信回路10Dは、情報処理装置14へ、要求情報を送信する。情報処理装置14の処理回路14Aは、通信回路14Dを介して要求情報を受付けた場合に、上記機能を実行すればよい。
そして、処理回路14Aの出力制御機能14Nは、出力対象の移動体30に対して、出力情報を出力すればよい。
なお、本実施の形態では、情報処理装置14が、出力対象の移動体30の外部の外部装置13に搭載された形態を説明した。しかし、情報処理装置14は、出力対象の移動体30の外部の他の車両(例えば、車両12Bなど)に搭載されていてもよい。
(第3の実施の形態)
図15は、本実施の形態の情報処理装置16の構成の一例を示すブロック図である。本実施の形態の情報処理装置16は、死角20Aに含まれるパーツPの形態変化を検知した場合に、出力情報を出力する。
情報処理装置16は、上記実施の形態の情報処理装置10、情報処理装置14と同様に、出力情報を出力する。情報処理装置16は、例えば、専用または汎用コンピュータである。
本実施の形態では、情報処理装置16は、第2の実施の形態と同様に、外部装置13に搭載された形態を説明する。なお、情報処理装置16は、第1の実施の形態と同様に、出力対象の移動体30に搭載された形態であってもよい。
情報処理装置16は、処理回路16Aと、記憶回路14Bと、出力回路14Cと、センサ14Gと、入力装置14Hと、を備える。情報処理装置16は、処理回路14Aに代えて処理回路16Aを備えた点以外は、第2の実施の形態の情報処理装置14と同様である。
処理回路16Aは、取得機能14Pと、選択機能14Qと、遮蔽物特定機能14Rと、死角特定機能14Sと、物体特定機能14Kと、死角内領域特定機能14Yと、種類特定機能14Lと、判定機能14Mと、出力制御機能16Nと、を備える。処理回路16Aは、出力制御機能14Nに代えて、出力制御機能16Nを備える以外は、処理回路14Aと同様である。
出力制御機能16Nは、第2の実施の形態の出力制御機能14Nと同様に、死角20AにパーツPが含まれると判定された場合、出力情報を出力する。
本実施の形態では、出力制御機能16Nは、検知機能16Vを含む。検知機能16Vは、判定機能14Mによって死角20Aに含まれると判定されたパーツPの、形態変化を検知する。そして、出力制御機能16Nは、死角20AにパーツPが含まれると判定され、且つ、該パーツPの形態変化を検知した場合、出力情報を出力する。
形態変化は、パーツPの色、パーツPの形状、パーツPの光量(すなわち輝度値)、死角物体34の重心に対するパーツPの相対位置、の少なくとも1つの経時的な変化を示す。
パーツPの光量の変化は、例えば、パーツPの点灯状態から点滅状態への変化や、点滅状態から点灯状態への変化によって生じる。この場合、パーツPは、例えば、方向指示器などの車載点灯装置である。
また、パーツPの光量や色の変化は、例えば、パーツPの表示内容の変化によって生じる。この場合、パーツPは、例えば、車両に搭載されたディスプレイである。また、パーツPの形状や相対位置の変化は、人物のパーツPである腕や顔の位置変化や顔の向きの変化によって生じる。
例えば、検知機能16Vは、センサ14Gで取得した周辺情報としての撮影画像21における、死角20A内のパーツPの画素値の経時変化を求める。そして、検知機能16Vは、この経時変化が、パーツPの色、形状、および光量の少なくとも1つの変化を示す閾値を超える場合に、パーツPの形態変化を検知すればよい。
なお、検知機能16Vは、HOG(Histograms of Oriented Gradients)などの特長量や、3次元点や、CGモデルなどの形状などを用いて、パーツPの形態変化を検知してもよい。
また、検知機能16Vは、撮影時間の異なる複数の撮影画像21を用いて、パーツPの形態変化を検知してもよい。この場合、検知機能16Vは、撮影時間の異なる複数の撮影画像21における、特徴量の類似度が閾値以上のパーツPを、同じパーツPとして特定すればよい。そして、検知機能16Vは、複数の撮影画像21間における同じパーツPの画素値を用いて、パーツPの形態変化を検知すればよい。
また、検知機能16Vは、パーツPを含む死角物体34の移動量及び移動方向から、複数の撮影画像21の各々における同じパーツPを示す画像領域を特定し、パーツPの形態変化の検知に用いてもよい。
そして、出力制御機能16Nは、判定機能14Mによって死角20AにパーツPが含まれると判定され、且つ、該パーツPの形態変化を検知した場合、出力情報を出力する。
出力制御機能16Nによる処理を具体的に説明する。図16は、パーツPの形態変化検知の説明図である。例えば、死角物体34が車両12Cであると仮定する。そして、車両12Cに設けられたパーツP(方向指示器P1、P2)の内、方向指示器P1が死角内領域22C内に位置していたと仮定する。
図16(A)は、この方向指示器P1が点滅している状態を示す図である。この場合、外部装置13から撮影した撮像画像21における方向指示器P1を構成する画素の輝度値には、経時変化が生じている。図16(B)は、方向指示器P1が消灯したままの状態を示す撮影画像21である。この場合、外部装置13から撮影した撮像画像における方向指示器P1を構成する画素の輝度値には、経時変化が生じていない。
死角内領域22CのパーツP(方向指示器P1)に形態変化の生じている図16(A)に示す状態の場合、出力制御機能16Nは、出力情報を出力する。一方、死角内領域22CのパーツP(方向指示器P1)に形態変化の生じていない図16(B)に示す状態の場合、出力制御機能16Nは、出力情報を出力しない。
このように、本実施の形態の情報処理装置16は、出力対象の移動体30の死角20Aに位置する死角物体34(車両12C)の、死角内領域22C内のパーツPの形態変化を検知した場合、出力情報を出力する。
次に、処理回路16Aが実行する処理の手順を説明する。図17は、処理回路16Aが実行する処理の手順の一例を示す、フローチャートである。
処理回路16Aは、処理回路14Aと同様にして、ステップS400〜ステップS420を実行する。ステップS400〜ステップS420の処理は、処理回路14AのステップS200〜ステップS220に相当する(図14参照)。
ステップS420で肯定判断すると(ステップS420:Yes)、ステップS422へ進む。ステップS422では、出力制御機能16Nの検知機能16Vが、パーツPの形態変化を検知したか否かを判別する(ステップS422)。ステップS422で否定判断すると(ステップS422:No)、後述するステップS426へ進む。ステップS422で肯定判断すると(ステップS422:Yes)、ステップS424へ進む。
ステップS424では、出力制御機能16Nが出力情報を出力するように出力回路14Cを制御する(ステップS424)。
次に、処理回路16Aは、処理を終了するか否かを判断する(ステップS426)。ステップS426の判断は、ステップS224(図14参照)と同様に行えばよい。ステップS426で否定判断すると(ステップS426:No)、上記ステップS400へ戻る。一方、ステップS426で肯定判断すると(ステップS426:Yes)、本ルーチンを終了する。
以上説明したように、本実施の形態の情報処理装置16の出力制御機能16Nは、死角20AにパーツPが含まれると判定され、且つ、該パーツPの形態変化を検知した場合、出力情報を出力する。
このため、本実施の形態の情報処理装置16では、第1の実施の形態の情報処理装置10の効果に加えて、死角20A内のパーツPの形態変化に応じた出力を行うことができる。従って、本実施の形態の情報処理装置16は、より適切に、死角20A内の情報を出力することができる。
(第4の実施の形態)
図18は、本実施の形態の情報処理装置17の構成の一例を示すブロック図である。情報処理装置17は、死角20Aに特定のパーツPが含まれる場合に、該パーツPを含む死角物体34の動き方向を予測し、予測結果に応じて出力情報を出力する。
情報処理装置17は、上記実施の形態の情報処理装置10、情報処理装置14、情報処理装置16と同様に、出力情報を出力する。情報処理装置17は、例えば、専用または汎用コンピュータである。
本実施の形態では、情報処理装置17は、第2の実施の形態と同様に、外部装置13に搭載された形態を説明する。なお、情報処理装置17は、第1の実施の形態と同様に、出力対象の移動体30に搭載された形態であってもよい。
情報処理装置17は、処理回路17Aと、記憶回路14Bと、出力回路14Cと、センサ14Gと、入力装置14Hと、を備える。情報処理装置17は、処理回路14Aに代えて処理回路17Aを備えた点以外は、第2の実施の形態の情報処理装置14と同様である。
処理回路17Aは、取得機能14Pと、選択機能14Qと、遮蔽物特定機能14Rと、死角特定機能14Sと、物体特定機能14Kと、死角内領域特定機能14Yと、種類特定機能14Lと、判定機能14Mと、出力制御機能17Nと、を備える。処理回路17Aは、出力制御機能14Nに代えて、出力制御機能17Nを備える以外は、処理回路14Aと同様である。
出力制御機能17Nは、第2の実施の形態の出力制御機能14Nと同様に、死角20AにパーツPが含まれると判定された場合、出力情報を出力する。
本実施の形態では、出力制御機能17Nは、第1予測機能17Wと、第2予測機能17Xと、を含む。第1予測機能17Wおよび第2予測機能17Xは、死角20Aに含まれる死角物体34の動きを予測する。
第1予測機能17Wは、第1予測部の一例である。第1予測機能17Wは、死角20A内のパーツPに基づいて、死角物体34の第1動き方向を予測する。
例えば、第1予測機能17Wは、物体の種類と、パーツPと、パーツPの状態に対応する物体の第1動き方向と、を予め記憶する。例えば、物体の種類“人物”、パーツP“顔”、パーツPの状態“顔の向き”、に対応する第1動き方向“顔の向きに沿った方向”を予め対応づけて記憶する。また、例えば、物体の種類“車両”、パーツP“車両の右側に位置する方向指示器”、パーツPの状態“点滅”、に対応する第1動き方向“右折方向”を予め対応づけて記憶する。また、該パーツPの状態“消灯”に対応する第1動き方向“直進方向”を更に対応づけて記憶してもよい。なお、対応づけは、これらに限定されない。
そして、第1予測機能17Wは、死角物体34の種類、該死角20Aに含まれるパーツPの種類、および、該パーツPの状態、に対応する第1動き方向を読取ることで、該物体の第1動き方向を予測する。
図19は、死角物体34の動き予測の説明図である。図19には、静止物12Dを遮蔽物32とした死角20A内に、人物12Eが存在する例を示した。すなわち、図19には、死角物体34が人物12Eである場合を示した。
図19(A)および図19(B)は、第1予測機能17Wによる予測の説明図である。図19(A)および図19(B)に示す例では、第1予測機能17Wは、死角20Aに含まれる死角物体34(人物12E)における、死角20A内の領域である死角内領域22CのパーツPに基づいて、該死角物体34(人物12E)の第1動き方向を予測する。
例えば、第1予測機能17Wは、人物12Eにおける、死角20Aに位置するパーツPである頭部の顔の向きに沿った方向を、該人物12Eの第1動き方向として予測する。
図19(A)に示すように、人物12Eにおける、死角内領域22C内のパーツPである頭部の顔の向きが、道路に対して交差する方向(矢印Z2方向)であるとする。この場合、第1予測機能17Wは、該顔の向きと一致する方向である矢印Z2方向を、人物12Eの第1動き方向として予測する。
また、図19(B)に示すように、人物12Eにおける、死角20Aに位置するパーツPである頭部の顔の向きが、道路に沿った方向(矢印Z1方向)であるとする。この場合、第1予測機能17Wは、該顔の向きと一致する方向である矢印Z1方向を、人物12Eの第1動き方向として予測する。
次に、第2予測機能17Xについて説明する。第2予測機能17Xは、第2予測部の一例である。第2予測機能17Xは、死角物体34における死角20Aから露出した露出領域に基づいて死角物体34の第2動き方向を予測する。
図19(C)は、第2予測機能17Xによる予測の説明図である。図19(C)に示す例では、第2予測機能17Xは、死角物体34における、死角20Aから露出した露出領域Aの位置変化から、該露出領域Aの移動方向を、人物12Eの第2動き方向として予測する。
例えば、第2予測機能17Xは、撮影タイミングの異なる複数の撮影画像23を用いて、撮影画像23における人物12E(死角物体34)の位置を追跡し、前回または前々回撮影された撮影画像23における人物12Eの位置から今回撮影された撮影画像23における人物12Eの位置へ向かう方向を、第2動き方向として予測する。
図19(C)に示す撮影画像23が得られた場合、第2予測機能17Xは、道路に沿った矢印Z1方向を、人物12Eの露出領域Aから求めた第2動き方向として予測する。
そして、出力制御機能17Nは、死角20AにパーツPが含まれると判定され、且つ第1動き方向と第2動き方向とが不一致である場合に、出力情報を出力する。
具体的には、第1予測機能17Wが、死角物体34(人物12E)の第1動き方向として矢印Z2方向を予測し(図19(A)参照)、第2予測機能17Xが、死角物体34(人物12E)の第2動き方向として矢印Z1方向を予測(図19(C)参照)したと仮定する。この場合、第1動き方向(矢印Z2方向)と第2動き方向(矢印Z1方向)とは不一致である。よって、この場合、出力制御機能17Nは、出力情報を出力するように出力回路14Cを制御する。
一方、第1予測機能17Wが、死角物体34(人物12E)の第1動き方向として矢印Z1方向を予測し(図19(B)参照)、第2予測機能17Xが、死角物体34(人物12E)の第2動き方向として矢印Z1方向を予測(図19(C)参照)したと仮定する。この場合、第1動き方向(矢印Z1方向)と第2動き方向(矢印Z1方向)とは一致する。よって、この場合、出力制御機能17Nは、出力情報を出力しない。
次に、処理回路17Aが実行する処理の手順を説明する。図20は、処理回路17Aが実行する処理の手順の一例を示す、フローチャートである。
処理回路17Aは、処理回路14Aと同様にして、ステップS500〜ステップS520を実行する。ステップS500〜ステップS520の処理は、処理回路14Aが実行するステップS200〜ステップS220の処理に相当する(図14参照)。
ステップS520で肯定判断すると(ステップS520:Yes)、ステップS522へ進む。ステップS522では、出力制御機能17Nの第1予測機能17Wが、第1動き方向を予測する(ステップS522)。次に、出力制御機能17Nの第2予測機能17Xが、第2動き方向を予測する(ステップS524)。
次に、出力制御機能17Nは、ステップS522で予測した第1動き方向と、ステップS524で予測した第2動き方向と、が不一致であるか否かを判定する(ステップS526)。
一致すると判定した場合(ステップS526:No)、後述するステップS530へ進む。一方、不一致であると判定した場合(ステップS526:Yes)、ステップS528へ進む。ステップS528では、出力制御機能17Nが出力情報を出力するように出力回路14Cを制御する(ステップS528)。
次に、処理回路17Aは、処理を終了するか否かを判断する(ステップS530)。ステップS530の判断は、ステップS224(図14参照)と同様に行えばよい。ステップS530で否定判断すると(ステップS530:No)、上記ステップS500へ戻る。一方、ステップS530で肯定判断すると(ステップS530:Yes)、本ルーチンを終了する。
以上説明したように、本実施の形態の情報処理装置17の出力制御機能17Nは、第1予測機能17Wと第2予測機能17Xとを含む。
第1予測機能17Wは、死角物体34における死角20A内のパーツPに基づいて死角物体34の第1動き方向を予測する。第2予測機能17Xは、死角物体34における死角20Aから露出した露出領域Aに基づいて死角物体34の第2動き方向を予測する。そして、出力制御機能17Nは、死角20AにパーツPが含まれると判定され、且つ、第1動き方向と第2動き方向とが不一致である場合に、出力情報を出力する。
このように、本実施の形態では情報処理装置17は、死角20Aに含まれる死角物体34について、死角物体34における死角20Aから露出した露出領域Aから予測した第2動き方向と、死角物体34における死角20A内のパーツPに基づいて予測した第1動き方向と、が不一致である場合に、出力情報を出力する。
このため、本実施の形態の情報処理装置17では、出力対象の移動体30を視点として死角20Aを視認したときに、死角20Aに含まれる物体が出力対象の移動体30のドライバの予測する移動方向とは異なる動きを示す場合に、出力情報を出力することができる。
従って、本実施の形態の情報処理装置17では、第1の実施の形態の情報処理装置10の効果に加えて、より適切に、死角20A内の情報を出力することができる。
次に、上記実施の形態の情報処理装置10、情報処理装置14、情報処理装置16、および情報処理装置17のハードウェア構成の一例を説明する。図21は、上記実施の形態の情報処理装置10、情報処理装置14、情報処理装置16、および情報処理装置17のハードウェア構成図の一例である。
上記実施の形態の情報処理装置10、情報処理装置14、情報処理装置16、および情報処理装置17は、CPU(Central Processing Unit)86などの制御装置と、ROM(Read Only Memory)88やRAM(Random Access Memory)90やHDD(ハードディスクドライブ)92などの記憶装置と、各種機器とのインターフェースであるI/F部82と、出力情報などの各種情報を出力する出力部80と、ユーザによる操作を受付ける入力部94と、各部を接続するバス96とを備えており、通常のコンピュータを利用したハードウェア構成となっている。
上記実施の形態の情報処理装置10、情報処理装置14、情報処理装置16、および情報処理装置17では、CPU86が、ROM88からプログラムをRAM90上に読み出して実行することにより、上記各機能がコンピュータ上で実現される。
なお、上記実施の形態の情報処理装置10、情報処理装置14、情報処理装置16、および情報処理装置17で実行される上記各処理を実行するためのプログラムは、HDD92に記憶されていてもよい。また、上記実施の形態の情報処理装置10、情報処理装置14、情報処理装置16、および情報処理装置17で実行される上記各処理を実行するためのプログラムは、ROM88に予め組み込まれて提供されていてもよい。
また、上記実施の形態の情報処理装置10、情報処理装置14、情報処理装置16、および情報処理装置17で実行される上記処理を実行するためのプログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM、CD−R、メモリカード、DVD(Digital Versatile Disk)、フレキシブルディスク(FD)等のコンピュータで読み取り可能な記憶媒体に記憶されてコンピュータプログラムプロダクトとして提供されるようにしてもよい。また、上記実施の形態の情報処理装置10、情報処理装置14、情報処理装置16、および情報処理装置17で実行される上記処理を実行するためのプログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、上記実施の形態の情報処理装置10、情報処理装置14、情報処理装置16、および情報処理装置17で実行される上記処理を実行するためのプログラムを、インターネットなどのネットワーク経由で提供または配布するようにしてもよい。
なお、上記には、本発明の実施の形態を説明したが、上記実施の形態は、例として提示したものであり、発明の範囲を限定することは意図していない。この新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。この実施の形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。