ここでは、下記の順序に従って本発明の実施の形態について説明する。
(1)画像送信システムの構成:
(2)画像送信処理:
(2-1)シーン判定処理(特定車線渋滞シーン):
(2-2)シーン判定処理(障害物存在シーン):
(2-3)シーン判定処理(地図不記録シーン):
(3)他の実施形態:
(1)画像送信システムの構成:
図1は、本発明の一実施形態にかかる画像送信システムを含むナビゲーションシステム10の構成を示すブロック図である。ナビゲーションシステム10は、車両に備えられており、CPU,RAM,ROM等を備える制御部20、記録媒体30を備えている。ナビゲーションシステム10は、記録媒体30やROMに記憶されたプログラムを制御部20で実行することができる。記録媒体30には、予め地図情報30aが記録されている。
地図情報30aは、交差点の位置の特定や、経路案内等に利用される情報であり、車両が走行する道路上に設定されたノードの位置等を示すノードデータ,ノード間の道路の形状を特定するための形状補間点の位置等を示す形状補間点データ,ノード同士の連結を示すリンクデータ,道路やその周辺に存在する地物の位置や形状等を示す地物データ等を含んでいる。なお、本実施形態においてノードは交差点を示している。
また、リンクデータには、当該リンクデータが示す道路区間に存在する車線の数および車線の幅を示す情報が対応づけられている。本実施形態においてノードや形状補間点が示す位置は道路区間上の中央線の位置を示しており、当該位置と車線の数および車線の幅によって車線の位置や車線が存在する範囲が特定可能である。地物データは、種々の地物の存在を示すデータである。本実施形態において地物には、少なくとも、交通標識が含まれている。すなわち、交通標識を示す地物データには、交通標識の位置および交通標識の識別情報が含まれている。なお、交通標識の位置は、座標(緯度や経度等)で示されていてもよいし、例えば、ノードからの距離等により、リンクで示される道路区間上の位置として示されていてもよい。
本実施形態における車両は、カメラ40とGNSS受信部41と車速センサ42とジャイロセンサ43とユーザI/F部44と通信部45とを備えている。GNSS受信部41は、Global Navigation Satellite Systemの信号を受信する装置であり、航法衛星からの電波を受信、図示しないインタフェースを介して車両の現在位置を算出するための信号を出力する。制御部20は、この信号を取得して地図の座標系における車両の現在位置(緯度、経度等)を取得する。車速センサ42は、車両が備える車輪の回転速度に対応した信号を出力する。制御部20は、図示しないインタフェースを介してこの信号を取得し、車速を取得する。ジャイロセンサ43は、車両の水平面内の旋回についての角加速度を検出し、車両の向きに対応した信号を出力する。制御部20は、この信号を取得して車両の進行方向を取得する。車速センサ42およびジャイロセンサ43等は、車両の走行軌跡を特定するために利用され、本実施形態においては、車両の出発地と走行軌跡とに基づいて現在位置が特定され、当該出発地と走行軌跡とに基づいて特定された車両の現在位置がGNSS受信部41の出力信号に基づいて補正される。
カメラ40は、車両の前方に向けられた視野内の画像を取得する装置である。カメラ40の光軸は車両に対して固定されており、ナビゲーションシステム10において当該光軸の方向が既知であればよい。本実施形態において、カメラ40は車両の車幅方向と光軸中心が垂直で、車両の進行方向前方が視野に含まれるような姿勢で車両に取り付けられている。制御部20は、当該カメラ40の出力する画像を取得し、特徴量の抽出等によって画像を解析することによって車両の周辺に存在する他の車両(周辺車両)を検出することができる。
ユーザI/F部44は、利用者の指示を入力し、また利用者に各種の情報を提供するためのインタフェース部であり、図示しないタッチパネル方式のディスプレイやスピーカ等を備えている。すなわち、ユーザI/F部44は画像や音の出力部およびユーザによる指示の入力部を備えている。通信部45は、外部の装置と通信を行うための装置である。本実施形態において、制御部20は、通信部45を介してサーバ50と通信を行う。
制御部20は、図示しないナビゲーションプログラムの機能により図示しないユーザI/F部44の入力部を介して利用者による目的地の入力を受け付け、地図情報30aに基づいて車両の現在位置から目的地までの走行予定経路を探索する。また、制御部20は、当該ナビゲーションプログラムの機能によりユーザI/F部44を制御し、走行予定経路に沿って走行するための案内を実行する。本実施形態において制御部20は、当該ナビゲーションプログラムの付加機能として、カメラ40で撮影した画像をサーバ50に対して送信する機能を実行可能である。
当該画像の送信を行うため、ナビゲーションプログラムは画像送信プログラム21を備えている。画像送信プログラム21は、画像送信機能を実現するため、画像撮影部21aと、シーン判定部21bと、情報削減処理部21cと、画像送信部21dと、を備えている。
画像撮影部21aは、車両に搭載され、車両が走行中の道路の画像を撮影する機能を制御部20に実行させるプログラムモジュールである。本実施形態においては、車両が走行している過程において制御部20が、カメラ40を制御し、車両の前方の道路を含む風景を撮影する。撮影によってカメラ40から出力された画像は、画像情報30bとして記録媒体30に記録される。本実施形態において制御部20は、車両の走行中の一定期間毎に画像情報30bを取得するが、むろん、各種の条件、例えば、特定の道路種類や道路区間などにおいて画像が撮影される構成等であってもよい。
シーン判定部21bは、画像撮影部21aの機能によって撮影された画像が予め決められたシーンのいずれであるか判定する機能を制御部20に実行させるプログラムモジュールである。本実施形態においては、サーバ50において画像が取得され、サーバ50において当該画像に基づいて各種解析を行う。このため、予め決められた特徴のある画像が解析対象とされており、当該特徴のある画像が解析対象のシーンとして予め定義されている。
シーンは解析対象であれば良く、限定されないが、本実施形態においては、主に、3種類のシーンが解析対象となることを想定して説明を行う。3種類のシーンの一つは、道路上の特定の車線が渋滞し、前記特定の車線以外の車線に渋滞が存在しないシーン(特定車線渋滞シーンと呼ぶ)である。残りの2つのシーンは、車両が走行する道路上に障害物が存在するシーン(障害物存在シーンと呼ぶ)と、画像に含まれる交通標識の存在が地図情報に示されていないシーン(地図不記録シーンと呼ぶ)である。
特定車線渋滞シーンであるか否か特定するため、制御部20は、画像情報30bに基づいて、周辺車両を認識する。また、制御部20は、画像情報30bに基づいて、車両から見た周辺車両の距離および方位を特定し、車両からみた周辺車両の相対位置を特定する。さらに、制御部20は、画像情報30bに基づいて道路上の白線を認識し、各周辺車両が存在する車線を特定する。そして、制御部20は、特定の車線に存在する周辺車両が車列を形成し、かつ、車速が既定の速度(例えば、20km/h)以下である場合に、特定の車線に渋滞が存在すると特定する。車両が走行する道路上に渋滞が存在しない他の車線が存在する場合、制御部20は、画像情報30bが示す画像が特定車線渋滞シーンであると判定する。
障害物存在シーンであるか否かを特定するため、制御部20は、画像情報30bに基づいて車両が走行する道路の像が占める領域を認識する。また、制御部20は、道路の像に囲まれた領域を検出し、既定の大きさ以上の静止した領域が存在すれば、当該領域には道路上の障害物が撮影されていると判定する。この場合、制御部20は、画像情報30bが示す画像が障害物存在シーンであると判定する。
地図不記録シーンであるか否かを特定するため、制御部20は、画像情報30bに基づいて、交通標識を認識する。また、制御部20は、画像情報30bを撮影した際の車両の現在地を特定し、地図情報30aを参照して当該現在地から既定範囲内に存在する交通標識を検索する。そして、認識された交通標識が、地図情報30aに含まれていない場合、制御部20は、画像情報30bが示す画像が地図不記録シーンであると判定する。
画像情報30bに基づいて、シーンが特定されると、制御部20は、画像情報30bに対して、シーンの識別情報を対応づける。識別情報は、シーンを示す情報であれば良く、例えば、ID等が挙げられる。なお、同一の画像情報30bが2以上のシーンに該当すると判定されてもよい。
情報削減処理部21cは、画像内に存在するオブジェクトが特定の状態の重要オブジェクトに該当する場合に、重要オブジェクトの単位面積あたりの情報削減量が重要オブジェクト以外の非重要オブジェクトの単位面積あたりの情報削減量より少なくなるように、画像に対して情報削減処理を行う機能を制御部20に実行させるプログラムモジュールである。すなわち、制御部20は、情報削減処理部21cの機能により、画像情報30bをサーバ50に送信する際の通信量を可能な限り削減するために、画像処理を行って情報量を削減する。
カメラ40で撮影されて得られた画像情報30bは、情報量が削減されるほどオブジェクトが識別しにくくなったり、オブジェクトの詳細な構造がわかりづらくなったりするため、解析が困難になる。そこで、本実施形態においては、画像の重要な部分における情報削減量は相対的に小さく、重要でない部分における情報削減量は相対的に多くなるように構成されている。
本実施形態においてはシーン毎に重要オブジェクトが決められているため、制御部20は、画像情報30bが示す画像のシーン毎に、特定のオブジェクトが特定の状態になっている重要オブジェクトを抽出する。画像のシーンが特定車線渋滞シーンである場合、重要オブジェクトは、特定の車線に存在する車両である。そこで、画像のシーンが特定車線渋滞シーンである場合、制御部20は、周辺車両のうち、特定の車線上に存在する車両の像を重要オブジェクトとして特定し、当該重要オブジェクトの画像内での位置を特定する。このように、特定の車線に存在する車両を重要オブジェクトとすれば、渋滞している特定の車線上の車両に着目した解析を、画像の送信先にて実施することが可能になる。
画像のシーンが障害物存在シーンである場合、重要オブジェクトは、車両が走行する道路上の障害物である。そこで、画像のシーンが障害物存在シーンである場合、制御部20は、シーンを特定する際に障害物であると判定された部分の像を重要オブジェクトとして特定する。また、制御部20は、当該重要オブジェクトの画像内での位置を特定する。このように、車両が走行する道路上の障害物を重要オブジェクトとすれば、当該障害物に着目した解析を、画像の送信先にて実施することが可能になる。
画像のシーンが地図不記録シーンである場合、重要オブジェクトは、地図情報30aに記録されていない交通標識である。そこで、画像のシーンが地図不記録シーンである場合、制御部20は、シーンを特定する際に認識された交通標識の像を重要オブジェクトとして特定する。また、制御部20は、当該重要オブジェクトの画像内での位置を特定する。このように、地図情報30aに記録されていない交通標識を重要オブジェクトとすれば、画像の送信先において、当該地図情報30aに記録されていない交通標識に関する解析を行い、地図情報30aに追加すべき交通標識を示す情報を生成することができる。
重要オブジェクトの位置が特定されると、制御部20は、重要オブジェクトが非重要オブジェクトよりも少ない情報削減量となるように情報削減処理を行う。情報削減は種々の手法で実施されてよいが、本実施形態においては、圧縮処理によって実施される。圧縮処理は、種々の手法であってよく、本実施形態においては、JPEG形式によって圧縮が行われる。すなわち、制御部20は、重要オブジェクトを含む矩形の領域に対して、重要オブジェクトを含まない矩形の領域より低圧縮率となるように圧縮率を調整し、画像情報30bをJPEG圧縮する。なお、矩形は、種々の手法で特定されてよく、例えば、複数の大きさの矩形が予め定義されており、各重要オブジェクトを含む最小の大きさの矩形が選択される構成等が挙げられる。また、既定の大きさの矩形が予め定義され、重要オブジェクトを含む最小の数の矩形が選択される構成等が挙げられる。さらに、後述するバウンディングボックス内の画像が低圧縮率とされ、バウンディングボックスに含まれない画像が高圧縮率とされる構成等が挙げられる。
以上の処理によれば、画像の重要な部分について削減される情報量が抑制され、一方、重要でない部分については情報量がより削減される。従って、情報削減後の画像情報30bに基づいて解析等が行われる際に、重要なオブジェクトの情報量が不足する可能性が低減される。
画像送信部21dは、情報削減処理後の画像を外部の装置に送信する機能を制御部20に実行させるプログラムモジュールである。すなわち、制御部20は、画像送信部21dの機能により、通信部45を制御し、圧縮後の画像情報30bをサーバ50に対して送信する。なお、画像情報30bには、シーンの識別情報が対応づけられる。従って、サーバ50においては、識別情報に基づいて画像情報30bがどのシーンであるのかを特定することができる。
なお、本実施形態においては、シーン毎に重要オブジェクトが決められているため、シーンの識別情報は、その画像に含まれる重要オブジェクトを示していると考えることもできる。従って、シーンの識別情報は、重要オブジェクトに関する情報である。また、本実施形態においては、後述するように、重要オブジェクトの画像内での位置を示す情報が画像に対応づけられる。当該重要オブジェクトの画像内での位置を示す情報も、重要オブジェクトに関する情報であると言える。むろん、重要オブジェクトの画像内での位置を示す情報としては、他にも種々の情報が想定される。いずれにしても、情報削減後の画像に対して、シーンの識別情報や重要オブジェクトに関する情報が対応づけられ、サーバ50に対して送信される。以上の構成によれば、重要なオブジェクトの情報量が充分である可能性が高く、重要ではないオブジェクトの情報量が過多である可能性が低い画像を送信することができる。
サーバ50は、図示しないCPU,ROM,RAM等を含む制御部と、記録媒体とを備えている。サーバ50の制御部は、記録媒体に記録された各種プログラムを実行して各種の処理を実行することができる。本実施形態において制御部は図示しないプログラムによって画像受信部50aおよび画像記録部50bとして機能する。
画像受信部50aは、画像を受信する機能を制御部に実行させる。すなわち、ナビゲーションシステム10から画像が送信されると、制御部は画像受信部50aの機能によって図示しない通信部を介して画像を受信する。画像記録部50bは、画像に対して当該画像内の重要オブジェクトに関する情報を対応づけて記録媒体に記録する機能を制御部に実行させる。すなわち、画像が受信されると、制御部は、画像記録部50bの機能により、記録媒体に画像を保存する。
当該画像には、シーンの識別情報や、重要オブジェクトの画像内での位置等を示す重要オブジェクトに関する情報が対応づけられている。従って、サーバ50は、画像に含まれる重要オブジェクトに関する情報を当該画像に対応づけて記録媒体に記録する。このように、重要オブジェクトに関する情報が対応づけられた画像が記録媒体に記録されていると、サーバ50は、重要オブジェクトに関する情報に基づいて画像内の重要オブジェクトやシーンの種類等を特定し、重要オブジェクトに関する画像解析等を実施することが可能になる。
(2)画像送信処理:
次に、制御部20が実行する画像送信処理を、図2を参照しながら説明する。制御部20は、画像撮影部21aの機能によってカメラ40による撮影を行うと、図2に示す画像送信処理を実行する。画像送信処理において、制御部20は、シーン判定部21bの機能により、物体認識処理を実行する(ステップS100)。具体的には、制御部20は、画像情報30bを取得し、レンズによる歪み補正等を施す。さらに、制御部20は、YOLO(You Only Look Once)やパターンマッチング等を用いて、周辺車両および交通標識を対象とした画像認識処理を実行する。この結果、制御部20は、画像情報30bに含まれる周辺車両の画像および交通標識の画像を検出する。
本実施形態において、制御部20は、認識した周辺車両や交通標識を認識すると、これらのオブジェクトを囲むバウンディングボックスを画像内で特定する。バウンディングボックスの大きさおよび位置は、オブジェクトの画像の大きさや、画像内におけるオブジェクトの位置を示している。図3Aは、カメラ40によって撮影され、歪み補正が行われた後の画像Iの一例を示す図である。この例は、物体認識処理によって周辺車両が認識された例である。図3Aに示すように、本実施形態においてバウンディングボックスBは、画像Iから検出された周辺車両を囲む矩形領域である。
バウンディングボックスBの大きさや位置は、例えばバウンディングボックスBの左上の頂点の座標と右下の頂点の座標によって表される。制御部20は、バウンディングボックスBの対角2頂点の座標から、バウンディングボックスBの高さh(画素数)と、バウンディングボックスBの代表座標Bo(x、y)を取得する。代表座標Boは、例えばバウンディングボックスBの中心座標(幅方向および高さ方向の中点)等である。制御部20は、バウンディングボックスBの代表座標Boの位置に基づいて、車両から見た周辺車両の相対方位を特定する。また、制御部20は、バウンディングボックスBの高さhおよび周辺車両の種類に基づいて、車両から周辺車両までの距離を特定する。
具体的には、画像I内の各座標には、車両を基準とした場合の、当該座標に写る物体の相対方位が対応付けられており、対応関係を示す情報が記録媒体30に記憶されている。制御部20はこの対応関係に基づいて、代表座標Boに写る周辺車両の相対方位を取得する。本実施形態において制御部20は、車両を基準とした車両座標系が定義される。車両座標系は、互いに直交する車幅軸(図3Bに示すX軸)と車長軸(図3Bに示すY軸)とで定義される座標系である。
図3Bは車幅軸と車長軸とを含む平面を示している。同図において点Oは、車両における車両座標系の原点である。図3Bの例において、車長軸は車両が走行している道路区間を示すリンクと平行である。相対方位は、例えば、車両座標系の原点Oと代表座標Boに対応する地点とを結ぶ直線SLと車長軸とのなす角度(θ)で表現される(例えばθが負値の場合は進行方向前方に向かって車長軸の左側、正値の場合は右側であることを示す)。
さらに、制御部20は、物体認識処理により、バウンディングボックスB内の周辺車両の種類を特定する。周辺車両の種類は、車体の大きさを示す種類であればよく、例えば貨物自動車、乗用車、2輪車等のように分類されてよい。また、本実施形態においては周辺車両の種類毎に、代表的な車高(例えば乗用車の場合、1.5[m]等)が規定されている。さらに、車両と周辺車両との直線距離と、当該周辺車両をカメラ40で撮影した場合のバウンディングボックスBの高さhとが予め計測されている。そして、車両の種類毎に、バウンディングボックスBの高さhと、車両座標系の原点を基準とした直線距離との対応関係を示す情報が記録媒体30に記憶されている。
例えば、車高の代表的な実寸が1.5[m]の乗用車を囲むバウンディングボックスの高さがh1画素であれば直線距離がD1[m]であり、h2画素であれば直線距離がD2[m]であることが対応付けられている。貨物自動車や2輪車等の他の種類についてもそれぞれ対応関係を示す情報が記録媒体30に記憶されている。制御部20は、この対応関係に基づいて、バウンディングボックスBの高さhに対応する直線距離D(図3Bを参照)を算出する。以上のようにして、制御部20は、カメラ40が撮影した画像に基づいて、画像内に含まれる周辺車両の相対方位θと、車両との直線距離Dを取得する。
本実施形態においては、カメラ40による撮影周期毎に画像が撮影され、各画像についてステップS100以降の処理が行われる。従って、数フレームの撮影過程に渡って同一の周辺車両が認識され得る。そこで、本実施形態において、制御部20は、同一の周辺車両が撮影されている間、当該周辺車両に対して同一の識別情報を付与する。このため、制御部20は、相対方位θと直線距離Dが特定された各周辺車両の画像の特徴(例えば、色、バウンディングボックスB内の模様等)を特定し、当該特徴に対応した識別情報(例えば、番号等)を、相対方位θ、直線距離D、周辺車両の種類を示す情報に対応付け、記録媒体30に記録する。
画像が撮影されるたびに同一の周辺車両に対して同一の識別情報を付与するため、制御部20は、記録媒体30を参照し、直前の画像と最新の画像で認識された周辺車両に対応づけられた画像の特徴と一致するか否か判定する。一致する場合、制御部20は、直前の画像において周辺車両に付与された識別情報を、最新の画像で認識された周辺車両に対しても付与する。この結果、カメラ40によって撮影され続けられる周辺車両に対しては同一の識別情報が付与される。
ステップS100においては、上述のような周辺車両の認識に加え、交通標識の認識も行われる。本実施形態において、制御部20は、交通標識毎の特徴に基づいて交通標識を認識すると、交通標識を示すバウンディングボックスが特定される。図6Bは、交通標識を含む画像情報30bの例を示している。画像情報30bに交通標識が含まれる場合、制御部20は、交通標識を認識し、交通標識の存在および画像内の位置を示すバウンディングボックスBを特定する。そして、制御部20は、バウンディングボックスBの位置を示す情報に対して交通標識の識別情報を対応付け、記録媒体30に記録する。
次に、制御部20は、シーン判定部21bの機能により、白線認識処理を実行する(ステップS105)。白線認識処理は、種々の手法で実施されてよい。例えば、制御部20が、ハフ変換等を利用した直線検出処理を実行し、検出された直線によって挟まれる領域の色が白であり、当該白い領域の幅が既定距離以内である場合に白線として認識する処理等が挙げられる。本実施形態においては、車線の幅方向の端に存在し、車両進行方向に延びる白線(車線の境界線を示す白い実線や白い破線等)を認識することが想定されているため、白線が消失点に向けて延びている等の条件が付加されてもよい。
次に、制御部20は、シーン判定部21bの機能により、領域認識処理を実行する(ステップS110)。本実施形態において、領域認識処理は、画像情報30bが示す画像内で、連続した領域を認識する処理である。すなわち、画像内のオブジェクトのうち、路面や空などはほぼ一様な連続した領域を形成している可能性が高い。
そこで、制御部20は、画像情報30bに基づいて、色の変化(例えば、明度や彩度によって特定される色差)が既定範囲内である画素が連続している領域を特定する。むろん、領域認識のための条件としては、他にも種々の条件が想定され、特定の色の範囲(例えば、路面の色として予め設定された範囲)内にある画素が連続している領域等が特定されてもよい。連続している領域が特定されると、制御部20は、画像の下端を含み、画像の下方で連続している領域を車両が走行する路面の画像の領域として特定する。そして、当該路面の画像の領域を示す情報を記録媒体30に対して記録する。
次に、制御部20は、シーン判定部21bの機能により、物体、白線、領域のいずれかが認識されたか否か判定する(ステップS120)。すなわち、カメラ40によって撮影された画像に周辺車両および交通標識が含まれない場合、制御部20は、物体認識されたと判定しない。また、カメラ40によって撮影された画像に、車線の幅方向の端に存在し、車両進行方向に延びる白線が含まれない場合、制御部20は、白線認識されたと判定しない。さらに、制御部20は、カメラ40によって撮影された画像に車両が走行する路面の画像が含まれない場合、制御部20は、領域認識されたと判定しない。
物体、白線、領域が一つも認識されなかった場合、制御部20は、画像送信処理を終了する。すなわち、カメラ40によって撮影された画像において、周辺車両、交通標識、車線の境界線である白線、車両が走行する路面のいずれもが認識されなかった場合、当該画像は送信対象とされない。
一方、ステップS120において、物体、白線、領域のいずれかが認識された場合、制御部20は、シーン判定部21bの機能により、シーン判定処理を実行する(ステップS125)。シーン判定処理は、画像情報30bが、特定車線渋滞シーン、障害物存在シーン、地図不記録シーンのいずれかに該当するか、これらのいずれにも該当しないか判定するための処理である。シーン判定処理の詳細は後述する。シーン判定処理が実行されると、画像情報30bには、シーンを示す識別情報が対応づけられた状態になる。
次に、制御部20は、情報削減処理部21cの機能により、画像情報30bに重要オブジェクトが含まれるか否か判定する(ステップS130)。本実施形態においては、シーン判定処理において、特定のオブジェクトが特定の状態であることに基づいてシーンが判定される。そして、当該特定の状態のオブジェクトが重要オブジェクトである。そこで、制御部20は、画像情報30bに対して特定車線渋滞シーン、障害物存在シーン、地図不記録シーンのいずれかであることを示す識別情報が対応づけられている場合、重要オブジェクトを含むと判定する。むろん、画像情報30bから重要オブジェクトを検出する処理が行われてもよい。
ステップS130において、重要オブジェクトが含まれると判定されない場合、制御部20は、情報削減処理部21cの機能により、均等圧縮を行う(ステップS140)。均等圧縮においては、画像情報30bの全域において共通の圧縮率となるように画像が圧縮される。
ステップS130において、重要オブジェクトが含まれると判定された場合、制御部20は、情報削減処理部21cの機能により、非均等圧縮を行う(ステップS140)すなわち、制御部20は、バウンディングボックスB内の画像またはバウンディングボックスBを含む予め決められた大きさの矩形内の画像を低圧縮率で圧縮する。一方、制御部20は、当該低圧縮率とされた部分以外の画像をより高圧縮率で圧縮する。なお、圧縮率は、各種の手法で特定されてよいし、画像の内容や通信の状況に応じて選択されてもよい。
ステップS135またはステップS140において圧縮処理が行われると、制御部20は、画像送信部21dの機能により、画像情報30bをサーバ50に対して送信する(ステップS145)。すなわち、制御部20は、通信部45を制御し、圧縮後の画像情報30bに対してシーンの識別情報を対応づけた状態で、サーバ50に対して送信する。なお、本実施形態において、画像情報30bには、他の各種情報、例えば、渋滞が生じている特定の車線、周辺車両の特徴に対応した識別情報、周辺車両の相対方位θ、直線距離D、周辺車両の種類を示す情報、交通標識を示す情報、バウンディングボックスの位置を示す情報、白線や領域の位置を示す情報、画像撮影時の車両の現在地等も対応づけられて送信される。
(2-1)シーン判定処理(特定車線渋滞シーン):
図4Aは、画像情報30bのシーンが特定車線渋滞シーンであるか否かを判定するためのシーン判定処理である。当該シーン判定処理は、ステップS100の物体認識処理において周辺車両が認識された場合に実行される。当該シーン判定処理が開始されると、制御部20は、周辺車両の相対方位と直線距離と特徴に対応した識別情報とを、現在以前の一定期間分取得する(ステップS200)。すなわち、制御部20は、ステップS100の物体認識処理で認識された各周辺車両の相対方位θと直線距離Dと特徴に対応した識別情報を取得する。この処理は、画像情報30bが取得されるたびに行われるため、制御部20は、現在以前の一定期間内に撮影された画像情報30bにおいて実施された物体認識処理の結果から、当該一定期間分に得られた相対方位θと直線距離Dと特徴に対応した識別情報とを時系列で取得する。
次に、制御部20は、車両の現在地を取得する(ステップS205)。すなわち、制御部20は、GNSS受信部41,車速センサ42,ジャイロセンサ43の出力信号に基づいて車両の現在地(カメラ40で画像情報30bを撮影した際の現在地)を取得する。
次に、制御部20は、周辺車両の速度を取得する(ステップS210)。すなわち、ステップS100の処理により、各周辺車両について車両からの相対方位θと直線距離Dが得られているため、制御部20は、現在以前の数フレーム分の周辺車両のデータに基づいて、車両から見た周辺車両の相対移動速度(図3Bに示すdd)を特定する。そして、制御部20は、車両の現在速度(例えば、車速センサ42の検出値)を特定し、当該現在速度と各周辺車両の相対移動速度とに基づいて、各周辺車両の速度(道路に対する速度)を取得する。
次に、制御部20は、周辺車両が走行している車線を特定する(ステップS215)。すなわち、制御部20は、地図情報30aを参照し、ステップS205で取得された車両の現在地が存在する道路区間の車線の構成を特定する。また、制御部20は、ステップS105で認識された車線に基づいて、車両が走行中の車線が、地図情報30aに示されたどの車線であるのか特定する。ステップS105において車線が認識されない場合、制御部20は、周辺車両と車両とが同一の車線を走行しているとみなす等の処理を行う。
図4B~図4Dは、車両Cと車両Cの周囲に存在する周辺車両1~5を模式的に示す図である。この例においては図4B,図4C,図4Dの順に時間が進むことが想定されている。これらの例においては、車両が走行中の道路区間の車線数が3である。このため、左端の車線においては、左側の境界線が実線の白線であり、右側の境界線が破線の白線である。中央の車線においては、左右の境界線が破線の白線である。右端の車線においては、右側の境界線が実線の白線であり、左側の境界線が破線の白線である。
図4B~図4Dの例であれば、制御部20は、車両の左右に存在する最も近い白線が破線であることに基づいて車両が中央の車線を走行中であると特定する。そして、制御部20は、車両からみた周辺車両の相対方位θ、直線距離Dに基づいて車両から見た周辺車両の相対位置を特定する。さらに、制御部20は、地図情報30aが示す車線の数および車線の幅に基づいて、車両の周辺に存在する各車線の範囲を特定し、各相対位置に存在する各周辺車両の位置がどの車線上に相当するのか特定することで、周辺車両が走行している車線を特定する。むろん、周辺車両が走行している車線は画像に基づいて特定されてもよい。
以上の処理により、図4B~図4Dに示されたように、車両Cの現在地と、その周辺における周辺車両の位置が特定され、かつ、周辺車両が走行している車線も特定された状態になる。
次に、制御部20は、特定の車線に車列が存在するか否かを判定する(ステップS220)。すなわち、制御部20は、同一車線上に既定台数以上(例えば、3台以上)の周辺車両が存在する場合に、これらの周辺車両が車列を形成するとみなす。そして、車列が生じている車線が存在する場合、制御部20は、当該車線が特定の車線であるとみなし、特定の車線に車列が存在すると判定する。ステップS220において、特定の車線に車列が存在すると判定されない場合、制御部20は、ステップS225,S230をスキップする。
一方、ステップS220において、特定の車線に車列が存在すると判定された場合、制御部20は、車速が閾値以下であるか否かを判定する(ステップS225)。すなわち、制御部20は、ステップS210で取得された周辺車両の速度を取得し、車列を形成している周辺車両の速度(例えば、平均速度)が予め決められた閾値以下であるか否かを判定する。なお、閾値は、渋滞であるか否かを判定するための小さい速度(例えば、20km/h等)である。
ステップS225において、車速が閾値以下であると判定されない場合、制御部20は、ステップS230をスキップする。ステップS225において、車速が閾値以下であると判定された場合、制御部20は、画像情報30bが特定車線渋滞シーンであると判定する(ステップS230)。すなわち、制御部20は、画像情報30bに対して、シーンが特定車線渋滞シーンであることを示す情報を対応づける。
(2-2)シーン判定処理(障害物存在シーン):
図5Aは、画像情報30bのシーンが障害物存在シーンであるか否かを判定するためのシーン判定処理である。当該シーン判定処理が実行されると、制御部20は、路面の画像の領域を取得する(ステップS300)。すなわち、制御部20は、ステップS110の領域認識処理によって、連続しているとして認識された領域の中から、路面の画像の領域を取得する。図5Bは、画像情報30bが、路面上に障害物Obが存在する画像Iである例を示している。この例においてステップS300が実行されると、グレーで示した路面の部分が路面の画像の領域Zrとして取得される。
次に、制御部20は、路面の画像の領域内の非道路領域を特定する(ステップS305)。すなわち、制御部20は、路面の画像内において路面の画像に囲まれた、路面ではない部分を抽出する。また、この際、制御部20は、白線認識処理によって認識された白線は除外する。この結果、制御部20は、残った部分を非道路領域とみなす。図5Bに示す例であれば、障害物Obが残り、非道路領域とみなされる。
次に、制御部20は、非道路領域の面積が閾値以上であるか否か判定する(ステップS310)。すなわち、路面上の非道路領域がある程度以上の大きさである場合、制御部20は、当該非道路領域は、障害物の画像である可能性が高いとみなす。なお、閾値は、障害物であるか否かを判定するための値として予め定義されていればよい。
ステップS310において、非道路領域の面積が閾値以上であると判定されない場合、制御部20は、ステップS315をスキップする。ステップS310において、非道路領域の面積が閾値以上であると判定された場合、制御部20は、画像情報30bが障害物存在シーンであると判定する(ステップS315)。すなわち、制御部20は、画像情報30bに対して、シーンが障害物存在シーンであることを示す情報を対応づける。図5Bに示す例は、路面に障害物Obが存在する例であるため、この例であれば、非道路領域の面積が閾値以上であると判定され、画像Iが障害物存在シーンであると判定される。なお、障害物が存在するか否かの判定は、他にも種々の手法で実施されてよく、例えば、物体認識によって障害物の有無が認識され、障害物があると認識された場合に障害物存在シーンであると判定する構成等が採用されてもよい。
(2-3)シーン判定処理(地図不記録シーン):
図6Aは、画像情報30bのシーンが地図不記録シーンであるか否かを判定するためのシーン判定処理である。当該シーン判定処理が実行されると、制御部20は、車両の現在地を取得する(ステップS400)。すなわち、制御部20は、GNSS受信部41,車速センサ42,ジャイロセンサ43の出力信号に基づいて、車両の現在地を取得する。
次に、制御部20は、地図情報に基づいて現在地周辺の交通標識を取得する(ステップS405)。すなわち、制御部20は、地図情報30aを参照し、ステップS400で取得された現在地から既定距離以内に存在する交通標識の位置および識別情報を取得する。次に、制御部20は、認識結果との差分を抽出する(ステップS410)。すなわち、制御部20は、記録媒体30を参照し、ステップS100の物体認識処理によって画像情報30bから検出された交通標識の識別情報を認識結果として取得する。
図6Bは、転回禁止の交通標識を含む画像情報30bの例を示しており、この例であれば、交通標識の識別情報が認識結果として記録媒体30に記録されている。従って、制御部20は、転回禁止の交通標識を示す識別情報を認識結果として取得する。さらに、制御部20は、認識結果として得られた交通標識の識別情報と、ステップS405で取得された交通標識の識別情報とを比較する。そして、制御部20は、認識結果としては存在するが、地図情報30aに存在しない交通標識が存在する場合に、当該交通標識の識別情報を差分として抽出する。
次に、制御部20は、差分があるか否かを判定する(ステップS415)。すなわち、制御部20は、ステップS410の処理によって差分が抽出された場合、差分があると判定する。ステップS415において、差分があると判定されない場合、制御部20は、ステップS420をスキップする。
ステップS415において、差分があると判定された場合、制御部20は、画像情報30bが地図不記録シーンであると判定する(ステップS420)。すなわち、制御部20は、画像情報30bに対して、シーンが地図不記録シーンであることを示す情報を対応づける。図6Bに示す例のように、転回禁止の交通標識が認識されたが、地図情報30aには記録されていないならば、ステップS415で差分があると判定されるため、画像Iが地図不記録シーンであると判定される。
(3)他の実施形態:
以上の実施形態は本発明を実施するための一例であり、他にも種々の実施形態を採用可能である。例えば、画像送信システムは、車両等に搭載された装置であっても良いし、可搬型の端末によって実現される装置であっても良いし、複数の装置(例えば、ナビゲーションシステム内の制御部とカメラ40内の制御部等)によって実現されるシステムであっても良い。
画像送信システムを構成する画像撮影部21a、シーン判定部21b、情報削減処理部21c、画像送信部21dの少なくとも一部が複数の装置に分かれて存在していても良い。むろん、上述の実施形態の一部の構成が省略されてもよいし、処理の順序が変動または省略されてもよい。例えば、シーン判定部21bにおいて判定対象となるシーンの数はより多くても少なくてもよい。また、シーンの判定順序が変わっていてもよい。
画像撮影部は、車両に搭載され、前記車両が走行中の道路の画像を撮影することができればよい。すなわち、車両が道路を走行している状況で車両の周囲を画像化することができればよい。画像を取得する装置としては種々の装置を想定可能である。例えば、車両に搭載されたカメラや車室内で利用される端末に搭載されたカメラ等を想定可能である。画像は車両が存在する道路を撮影した画像であれば良く、その周囲の画像が含まれてもよい。また、車両の前方の風景が撮影されてもよいし、後方や側方の風景が撮影されてもよい。
情報削減処理部は、画像内に存在するオブジェクトが特定の状態の重要オブジェクトに該当する場合に、重要オブジェクトの単位面積あたりの情報削減量が重要オブジェクト以外の非重要オブジェクトの単位面積あたりの情報削減量より少なくなるように、画像に対して情報削減処理を行うことができればよい。すなわち、情報削減処理部は、画像の領域毎の情報量を調整することができ、重要オブジェクトの情報削減量が他のオブジェクトよりも相対的に少なくなるように情報削減処理を行うことができればよい。
単位面積あたりの情報量は、例えば、単位面積における画像を表現するために必要なデータのバイト数等で表現されるが、当該情報量に対して画像処理を行うと当該情報量を調整可能である。そして、撮影された画像からの情報削減量が少ないほど、撮影された画像で表現されたオブジェクトに近い画像であり、画像認識処理等の画像処理を正確に実施できる可能性高くなる。
単位面積あたりの情報量を削減する情報削減処理は、典型的には圧縮処理であるが、トリミング処理であってもよいし、トリミング処理と圧縮処理とが併用されてもよい。例えば、重要オブジェクトを残し、他のオブジェクトをトリミングする情報削減処理が行われてもよい。また、撮影された画像から、空の部分など、解析に利用されない部分がトリミングされてもよい。また、情報量の調整が行われる領域は、重要オブジェクトの輪郭に囲まれる領域等であってもよいし、重要オブジェクトを含むまたは内包する既定の形状の領域(例えば、矩形領域)等で当てもよい。
重要オブジェクトは、画像内で着目され得るオブジェクトであれば良く、予め決められていればよい。当該重要オブジェクトはシーンの判定に伴って特定の状態であると特定されたオブジェクトに限定されない。従って、シーンの判定が行われず、各画像からパターンマッチングや特徴抽出、YOLO等を適用することによって重要オブジェクトの有無が判定されてもよい。
重要オブジェクトは過度の情報量の削減を抑制したいオブジェクトである。そして、画像内に撮影され得る特定のオブジェクトであって、当該特定のオブジェクトが予め決められた特定の状態になっている場合に重要オブジェクトであると認定される。重要オブジェクトは、予め決められた特定の状態であればよく、上述の例以外にも種々のオブジェクトが種々の状態になっている場合に重要オブジェクトになり得る。
なお、重要オブジェクトは、同一の種類のオブジェクトであっても画像内での位置や周囲のオブジェクトの状況、地図情報との関係等で、重要度が変化するオブジェクトである。すなわち、オブジェクトが車両であっても、渋滞していない車線のオブジェクトは非重要オブジェクトであるとみなされるなど、渋滞の状況によって重要オブジェクトであるか否かが変化し得る。また、オブジェクトが障害物であっても、車両が走行する路面上に存在するオブジェクトは重要オブジェクトであるが歩道上に存在するオブジェクトは非重要オブジェクトであるなど、状況によって変化し得る。
さらに、オブジェクトが交通標識であっても、当該交通標識が地図情報に記録されている場合には非重要オブジェクトであるとみなされるなど、地図情報との関係で重要オブジェクトであるか否かが変化し得る。非重要オブジェクトは、重要オブジェクト以外のオブジェクトであれば良く、重要オブジェクトの輪郭の外側に存在するあらゆる被写体が非重要オブジェクトになり得る。従って、歩道や車両など、個別の存在として認識される各種のオブジェクトが非重要オブジェクトとなり得るし、空や歩道など画像内で連続して存在し得るオブジェクトも非重要オブジェクトとなり得る。なお、情報削減量は、重要オブジェクトと非重要オブジェクトとで差が生じればよく、上述のように、矩形の領域毎に情報削減量が調整されてもよいし、重要オブジェクトの輪郭の内外で情報削減量が変化してもよい。
画像送信部は、情報削減処理後の画像を外部の装置に送信することができればよい。すなわち、画像を送信し、送信先の装置で利用する場合、情報量が多いと通信の速度低下や通信コストの増大等が生じる。従って、画像を送信することを想定した場合、情報量は少ない方が好ましい。一方、画像送信システムにおいては、画像の中で着目する対象であるか否かによって重要なオブジェクトであるか否かが変化しえる。そこで、重要度に応じて情報削減量を調整することにより、画像の用途に応じた解析を実現可能にしつつも、通信される情報量を削減することが可能になる。このため、効率的な情報の削減を行うことができる。
情報削減処理が圧縮処理である場合、圧縮形式は上述の実施形態のようなJPEG形式に限定されず、種々の形式であってよい。例えば、JPEGやPNG、GIFなどの各種圧縮形式を採用可能である。また、画像は、静止画に限定されず、動画であってもよい。この場合、各種の動画圧縮形式を採用可能である。さらに、複数の圧縮形式が併用されてよく、領域毎に異なる圧縮形式が採用されてもよい。
シーン判定部は、画像が予め決められたシーンのいずれであるか判定することができればよい。すなわち、画像が既定のシーンに該当するか否かを判定するための情報を取得するための処理と、その判定基準が予め決められており、シーン判定部は、少なくとも画像に基づいて、画像が既定のシーンに該当するか否か判定することができればよい。シーンは、上述の実施形態に含まれる3種の中の少なくとも1種であってもよいし、他のシーンが含まれていてもよい。他のシーンとしては、例えば、特定の車線に限定されない渋滞の有無や、事故発生シーン、死角が相対的に多いシーン、道路変化が相対的に多いシーン(カーブ区間等)など、種々のシーンが挙げられる。
道路上の特定の車線が渋滞し、特定の車線以外の車線に渋滞が存在しないシーンであるか否か判定される場合、特定の車線は、車両からみて任意の車線であってよい。従って、上述の実施形態のような、左側通行の左端車線が渋滞し、他の車線が渋滞していないシーンに限定されない。例えば、車両の進行方向と同一の進行方向に向けて走行する道路区間上の任意の車線が特定の車線となってよい。また、車両の進行方向と逆の進行方向に向けて走行する道路区間上の任意の車線が特定の車線となってよい。特定の車線が渋滞しており、当該特定の車線に存在する車両が重要オブジェクトである場合、これらの重要オブジェクトである車両のうち、末尾に存在する車両(車両進行方向の最も後方側の車両)の単位面積あたりの情報削減量が末尾以外の車両の単位面積あたりの情報削減量より少ない構成であってもよい。この構成であれば、特定の車線において渋滞が発生している場合に、渋滞の末尾の車両に関する解析が容易になる。
障害物は、道路上で静止していることによって車両の走行の障害となる地物であれば良い。従って、障害物の種類は限定されない。また、障害物を検出するための処理も上述の処理に限定されない。例えば、特定の特徴を有する地物が障害物として特定される構成であってもよいし、各種の障害物の画像に基づいて機械学習を行った機械学習モデルによって障害物を検出する構成等であってもよい。
画像に含まれる地物の存在が地図情報に示されていないシーンであるか否か判定される場合、当該地物は交通標識に限定されない。すなわち、地図情報にその存在が記録され得る任意の地物が対象になり得る。例えば、各種の施設が画像に含まれ、地図情報に含まれないか判定されてもよいし、道路(新設道路等)の構造が、地図情報に示された構造と異なるか否か判定されてもよい。
さらに、上述の実施形態において、重要オブジェクトが複数個存在する場合であっても重要オブジェクトの圧縮率は共通であることが想定されていたが、重要度に応じて変化してもよい。また、重要オブジェクトの位置毎に圧縮率が変化してもよい。すなわち、制御部20は、重要オブジェクトにおける重要度が高いほど、単位面積あたりの情報削減量が少なくなるように圧縮率を調整してもよい。重要度は、種々の要素によって決められてよく、例えば、異なるシーンの重要オブジェクトは互いに異なる圧縮率であってもよい。また、重要オブジェクトの中の解析対象、例えば、交通標識の中央部分が、他の部分より低圧縮率であってもよい。
さらに、本発明のように、重要オブジェクトの情報削減量が非重要オブジェクトにおける情報削減量より少なくなるように処理を行う手法は、方法やコンピュータに実行させるプログラムとしても適用可能である。また、以上のようなシステム、プログラム、方法は、単独の装置として実現される場合もあれば、車両に備えられる各部と共有の部品を利用して実現される場合もあり、各種の態様を含むものである。また、一部がソフトウェアであり一部がハードウェアであったりするなど、適宜、変更可能である。さらに、システムを制御するプログラムの記録媒体としても発明は成立する。むろん、そのプログラムの記録媒体は、磁気記録媒体であってもよいし半導体メモリであってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。