【解決手段】本発明の移動体用画像変換装置は、道路上の障害物を検出する場合に用いるもので、原画像の解像度を劣化させるフィルタと解像度を高めるフィルタとを有している。サーバーに解像度を低くした圧縮画像を記憶しておき、これを受信して解像度を上げて伸長した復元画像を生成し、これと撮像画像との差分画像により、障害物を検出することを特徴とする。
前記移動体用画像変換装置は、前記移動体の周辺の気象環境を認識する気象環境認識部を備え、前記気象環境認識部の認識結果に基づいて前記超解像処理の実施を決定する請求項1から4に記載の移動体用画像変換装置。
前記移動体用画像変換装置は、点像分布関数に基づくフィルタを保存するメモリと、前記第1画像に前記フィルタをかけて前記第2画像を生成する第1画像処理部とを有する請求項1に記載の移動体用画像変換装置。
前記移動体用画像変換装置は、前記移動体の周辺の気象環境を認識する気象環境認識部を備え、前記気象環境認識部の認識結果に基づいて前記解像度劣化処理の実施を決定する請求項7から9に記載の移動体用画像変換装置。
前記移動体用画像変換装置は、点像分布関数に基づくフィルタを保存するメモリと、前記第5画像に前記フィルタをかけて前記第6画像を生成する第2画像処理部とを有する請求項7に記載の移動体用画像変換装置。
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来とは異なる画像のデータの圧縮・伸長技術を提供する。
【課題を解決するための手段】
【0005】
本発明の一態様の移動体用画像変換装置は、移動体に搭載され第1画像を超解像処理により第2画像に変換する。
【0006】
本発明の別の態様の移動体用画像変換装置は、移動体に搭載され第5画像を解像度劣化処理により第6画像に変換する。
【0007】
本発明の一態様の方法は、移動体の外部のデータサーバにおいて第4解像度および第4データサイズを有する第4画像のデータに解像度劣化処理を施して前記第4解像度よりも低い第1解像度および前記第4データサイズよりも小さい第1データサイズを有する第1画像のデータを生成し、前記移動体において前記第1画像のデータに超解像処理を施して前記第1解像度よりも高い第2解像度を有する第2画像を生成する。
【0008】
また、前記解像度劣化処理は、第4のフィルタを前記第4画像のデータにかけることを含むこととしてもよい。前記超解像処理は、前記第4のフィルタに対応する第1のフィルタを前記第1画像のデータにかけることを含むこととしてもよい。
【0009】
また、前記データサーバにおいて前記移動体の現在の地理的位置を示す情報を取得してもよい。前記データサーバにおいて前記地理的位置を示す情報に基づいてデータベースに保存された複数の画像のデータから前記第4画像のデータを抽出してもよい。前記移動体において前記移動体に設置されたカメラから第3画像のデータを取得してもよい。前記移動体において少なくとも前記第2画像のデータと前記第3画像のデータに基づいて前記移動体の周辺の障害物を認識することをさらに含むこととしてもよい。
【0010】
また、前記移動体において前記移動体の周辺の気象環境を示す情報を取得してもよい。前記移動体において前記気象環境を示す情報に基づいて前記超解像処理の実施を決定することをさらに含むこととしてもよい。
【0011】
本発明の別の態様の方法は、移動体において第5解像度および第5データサイズを有する第5画像のデータに解像度劣化処理を施して前記第5解像度よりも低い第6解像度および前記第5データサイズよりも小さい第6データサイズを有する第6画像のデータを生成し、前記データサーバにおいて前記第6画像のデータに超解像処理を施して前記第6解像度よりも高い第7解像度を有する第7画像を生成することを含む。
【0012】
また、前記解像度劣化処理は、第5のフィルタを前記第5画像のデータにかけることを含むこととしてもよい。前記超解像処理は、前記第5のフィルタに対応する第6のフィルタを前記第6画像のデータにかけることを含むこととしてもよい。
【0013】
また、前記第5画像のデータは、前記移動体に設置されたカメラから取得されてもよい。前記データサーバにおいて前記移動体の現在の地理的位置を示す情報を取得してもよい。前記データサーバにおいて前記地理的位置を示す情報に基づいてデータベースに保存された複数の画像のデータから第4画像のデータを抽出してもよい。前記データサーバにおいて少なくとも前記第7画像のデータと前記第4画像のデータに基づいて前記移動体の周辺の障害物を認識することをさらに含むこととしてもよい。
【0014】
また、前記移動体において前記移動体の周辺の気象環境を示す情報を取得してもよい。前記移動体において前記気象環境を示す情報に基づいて前記解像度劣化処理の実施を決定することをさらに含むこととしてもよい。
【0015】
移動体は、地上、地中、海上、海中および空中で移動可能な有人または無人の人工物をいう。例えば、移動体は、自動車、電車、機関車、特殊車両、船舶、潜水艇、航空機、ロケット、人工衛星を含む。
【0016】
画像は、静止画および動画を含む。
【0017】
データサイズは、ビットまたはバイトで表される物理量である。
【発明の効果】
【0018】
本発明によれば、従来とは異なる画像のデータの圧縮・伸長技術を提供できる。
【発明を実施するための形態】
【0020】
(画像変換処理の概要)
図1を参照して、画像変換処理の概要を説明する。画像変換処理は、超解像処理、解像度劣化処理および障害物認識処理を含む。
【0021】
原画像11、劣化画像17および復元画像23は、それぞれ同じアスペクト比で同じ画素数を有する。解像度劣化フィルタ15と超解像フィルタ21は、それぞれ同じアスペクト比で同じ画素数を有する。フィルタ15の各画素値は、例えば、256階調のグレイスケールで表される。同様にフィルタ21の各画素値は、例えば、256階調のグレイスケールで表される。フィルタ15の各画素値の分布は、画像の解像度を劣化させるように定められている。逆にフィルタ21の各画素値の分布は、画像の解像度を高めるように定められている。すなわち、フィルタ15の各画素値の分布は、フィルタ21の各画素値の分布と対応関係を有している。例えば、フィルタ15の各画素値の分布は、フィルタ21の各画素値の分布と逆の関係を有する。また、フィルタ21は、特開2015−115747号公報に記載された点像分布関数に基づくフィルタであることとしてもよい。フィルタ15は、フィルタ21と逆の関係を有するので、フィルタ15も点像分布関数に基づくフィルタとなる。
【0022】
解像度劣化処理は、複数のフィルタリング処理を繰り返す反復演算処理を含む。各フィルタリング処理は、画像のデータにフィルタを畳み込み演算して新たな画像のデータを生成する処理を含む。例えば、1回目のフィルタリング処理は、原画像11のデータにフィルタ15を畳み込み演算して中間画像のデータを生成する。2回目のフィルタリング処理は、中間画像のデータにフィルタ15を畳み込み演算して劣化画像17のデータを生成する。フィルタリング処理の繰り返しの回数は2回に限らず、これよりも多くてもよい。また、各回でフィルタを変更してもよい。畳み込み演算は、画素ブロック13の各画素値とフィルタ15の各画素値を積和演算して、画素ブロック13の中央の画素の新たな画素値を生成する処理を含む。劣化画像17の解像度は原画像11の解像度よりも低い。また、劣化画像17のデータサイズは原画像11のデータサイズよりも低い。フィルタ15の特性およびフィルタリング処理の繰り返しの回数を適切に設計することにより、劣化画像17のデータサイズを原画像11のデータサイズの1/10から1/20にすることができる。
【0023】
超解像処理は、フィルタの特性を除き、解像度劣化処理と同様の処理である。例えば、1回目のフィルタリング処理は、劣化画像17のデータにフィルタ21を畳み込み演算して中間画像のデータを生成する。2回目のフィルタリング処理は、中間画像のデータにフィルタ21を畳み込み演算して復元画像23のデータを生成する。畳み込み演算は、画素ブロック19の各画素値とフィルタ21の各画素値を積和演算して画素ブロック19の中央の画素の新たな画素値を生成する処理を含む。復元画像23の解像度は劣化画像17の解像度よりも高い。なお、反復演算処理の繰り返しの回数によっては、復元画像23の解像度は、原画像11の解像度よりも高くなり得る。
【0024】
超解像処理は、例えば、特開2015−115747号公報に詳細に説明されている。本実施形態の超解像処理もこれと同様の仕組みを利用している。ただし、特開2015−115747号公報では、画像の劣化プロセスが未知であるのに対し、本実施形態では、画像の劣化プロセスが既知である。そのため、本実施形態の超解像処理は、より少ない反復回数でもっともらしい復元画像を生成することができる。
【0025】
なお、本実施形態では、フィルタ15およびフィルタ21は、縦横3画素ずつであるが、これに限らず、縦横5画素ずつ、縦横7画素ずつ、あるいはそれよりも多くしてもよい。
【0026】
解像度劣化処理は、上記フィルタリング処理の代わりに、または、それに加えて、画素の間引きによる画像サイズの縮小を含んでいてもよい。超解像処理は、上記フィルタリング処理の代わりに、または、それに加えて、画素の補完による画像サイズの拡大を含んでいてもよい。
【0027】
障害物認識処理は、復元画像23と撮影画像25の差分画像27を生成することを含む。原画像11および復元画像23も障害物を含まない背景画像である。撮影画像25は障害物を含む背景画像である。差分画像27は、障害物を含み背景を含まない。差分画像27は、障害物の認識に利用可能である。原画像11は、過去の撮影画像またはそれに基づく加工画像であり、経度および緯度のような地理的位置を示す情報(以降、「地理的位置情報」)に対応付けられてデータベースに保存されている。自動車の自動運転の分野では、これは3次元地図情報として知られている。撮影画像25は、現在の撮影画像である。撮影画像25は、例えば、移動体に搭載されたカメラから得られる。地理的位置情報は、経度および緯度に加えて、深度または高度を含んでもよい。これにより海中、地中または空中を移動する移動体の位置を正確に示すことができる。
【0028】
(第1の実施形態)
図2に示されるシステムは、移動体101および移動体101と通信可能なデータサーバ131を備える。
【0029】
移動体101は、カメラ103、地理的位置センサ105、気象環境センサ107、送受信部109、駆動系111およびコントローラ113を備える。データサーバ131は、送受信部133、データベース135およびコントローラ137を備える。
【0030】
カメラ103は、移動体101の前方、後方、右側方、左側方、上方または下方の少なくとも一つを撮影して第3画像(撮影画像)のデータを生成する。カメラ103は、可視光、赤外線および紫外線の少なくとも一つの波長域に感度を有する。
【0031】
地理的位置センサ105は、これに限られないが、GPS(Global Positioning System)センサであり、移動体の経度および緯度を含む地理的位置を検出する。地理的位置センサ105は、経度および緯度に加え、さらに深度または高度を検出することとしてもよい。
【0032】
気象環境センサ107は、カメラ103により撮影された第3画像の画質に悪影響を与え得る気象環境、例えば、雨、霧、雪、砂嵐またはスモッグを直接的または間接的に検出して気象環境を示す情報(以降、「気象環境情報」)を生成する。水センサは、雨、霧および雪を直接的に検出できる。自動車のフロントガラスのワイパーの動作を監視することで、雨、霧および雪を間接的に検出できる。
【0033】
送受信部109は、無線通信または有線通信が可能な送信部および受信部を含む。
【0034】
駆動系111は、移動体101の位置および速度を制御するための機構である。例えば、自動車の場合、駆動系111は、ハンドル、アクセルおよびブレーキを含む。
【0035】
コントローラ113は、プロセッサ115およびメモリ117を含む。プロセッサ115は、メモリ117に保存されたプログラムを実行することにより、超解像処理(第1画像処理)、障害物認識および気象環境認識を実現する。メモリ117は、揮発性メモリおよび不揮発性メモリを含み、第1のフィルタ119および所定気象条件121を保存している。第1のフィルタ119は、第1の点像分布関数に基づく超解像処理用のフィルタであり、例えば、上述のフィルタ21である。所定気象条件は、障害物認識処理を複数の選択肢から選択するための判断基準を提供する。ある実施態様では、障害物認識処理は、カメラ103の画像の画質に悪影響を与え得る気象環境である場合に、カメラ103の画像とデータサーバ131の画像の両方を利用し、そうでない場合に、カメラ103の画像だけを利用する。この態様では、所定気象条件として、カメラ103の画像の画質に悪影響を与え得る気象環境の情報がメモリ117に保存される。このような気象条件は、上述の通り、例えば、雨、霧、雪、砂嵐またはスモッグである。
【0036】
コントローラ113は、プログラムとそれを実行するプロセッサに限らず、SoC(System on Chip)、FPGA(Field Programmable Gate Array)のようなハードウェアにより実現されてもよい。
【0037】
送受信部133は、無線通信または有線通信が可能な送信部および受信部を含む。
【0038】
データベース135は、複数の異なる地理的位置で撮影された撮影画像またはそれに基づく加工画像を保存している。これらの撮影画像または加工画像は、地理的位置情報に対応付けられている。すなわち、データベース135は、地理的位置情報に基づいて複数の画像のデータから特定の画像のデータを抽出することができるように構成されている。
【0039】
コントローラ137は、プロセッサ139およびメモリ141を含む。プロセッサ139は、メモリ141に保存されたプログラムを実行することにより、解像度劣化処理を実現する。メモリ141は、揮発性メモリおよび不揮発性メモリを含み、第1のフィルタに対応する第4のフィルタ143を保存している。第4のフィルタ143は、第4の点像分布関数に基づく解像度劣化処理用のフィルタであり、例えば、上述のフィルタ15である。第4の点像分布関数は、第1の点像分布関数に対応している。
【0040】
コントローラ137は、プログラムとそれを実行するプロセッサに限らず、SoC(System on Chip)、FPGA(Field Programmable Gate Array)のようなハードウェアにより実現されてもよい。
【0041】
図3は、移動体101の障害物認識処理を示すフローチャートである。
【0042】
コントローラ113は、カメラ103から第3画像のデータを取得し(S11)、地理的位置センサ105から地理的位置情報を取得する(S13)。第3画像のデータと地理的位置情報は互いに関連付けられる。
【0043】
コントローラ113は、気象環境センサ107から気象環境情報を取得し(S15)、気象環境情報により示される気象環境がメモリ117に保存されている所定気象条件121を満たすか否かを判断する(S17)。所定気象条件121は、例えば、雨、霧、雪、砂嵐およびスモッグである。この場合、気象環境情報により示される気象環境が晴であれば、所定気象条件121は満たされない。気象環境情報により示される気象環境が雨であれば、所定気象条件121は満たされる。
【0044】
コントローラ113は、気象環境が所定気象条件を満たさない場合(S17, No)、第1障害物認識処理を実施する(S19)。第1障害物認識処理は、カメラ103により撮影された第3画像のみを利用して障害物認識を実施する処理である。このような処理はよく知られているため、説明を省略する。
【0045】
コントローラ113は、気象環境が所定気象条件を満たす場合(S17, Yes)、地理的位置情報をデータサーバ131に送信する(S25)。データサーバ131は、これに対応して、その地理的位置情報に対応する第1画像のデータを送信する(詳細は
図4を用いて後述する)。第1画像は、例えば、上述の劣化画像17である。コントローラ113は、第1画像のデータを受信するまで待機する(S27, No)。コントローラ113は、第1画像のデータを受信すれば(S27, Yes)、第1画像のデータに超解像処理を施して第2画像のデータを生成する(S29)。第1画像は、第1解像度を有する。第2画像は、第1解像度よりも高い第2解像度を有する。超解像処理の具体例は、
図1を利用して説明した通りである。第2画像は、例えば、上述の復元画像23である。これにより、画像認識の精度を高めるための第2画像が得られる。
【0046】
コントローラ113は、第2障害物認識処理を実施する(S31)。第2障害物認識処理は、カメラ103の第3画像とデータサーバ131の第2画像の両方を利用して障害物を認識する処理である。第2障害物認識処理の具体例は、
図1を利用して説明した通りである。
【0047】
コントローラ113は、障害物を発見すれば(S21, Yes)、障害物回避のために駆動系111の制御を実施する。駆動系111の制御は、例えば、減速、加速および進路変更を含む。コントローラ113の処理は、駆動系111の制御の後で、カメラ103からの第3画像の取得(S11)に戻る。また、障害物が発見されない場合も(S21, No)、コントローラ113の処理は、カメラ103からの第3画像の取得(S11)に戻る。
【0048】
図4は、データサーバ131の画像処理を示すフローチャートである。
【0049】
コントローラ137は、移動体101から地理的位置情報を受信するまで待機している(S33, No)。コントローラ137は、移動体101から地理的位置情報を取得すれば(S33, Yes)、データベース135に保存された複数の画像から第4画像を抽出する(S35)。第4画像は、移動体101から受信した地理的位置情報に対応付けられた画像である。
【0050】
コントローラ137は、第4画像のデータに解像度劣化処理を施して第1画像のデータを生成し(S37)、その第1画像のデータを移動体101に送信する(S39)。第4画像は、第4解像度および第4データサイズを有する。第1画像は、第4解像度よりも低い第1解像度および第4データサイズよりも小さい第1データサイズを有する。解像度劣化処理の具体例は、
図1を利用して説明した通りである。
【0051】
上述の通り、データサーバ131は、第4画像(原画像)のデータに解像度劣化処理を施すことで第1画像(劣化画像)のデータを生成することができる。第4画像は、第4解像度および第4データサイズを有する。第1画像は、第4解像度よりも低い第1解像度および第4データサイズよりも小さい第1データサイズを有する。移動体101は、第1画像のデータに超解像処理を施すことで第2画像(復元画像)のデータを生成することができる。第2画像は、第1解像度よりも高い第2解像度を有する。第1画像がデータサーバ131から移動体101に送信されるので、データ通信量を低減することができる。
【0052】
解像度劣化処理は、第4のフィルタ143を第4画像のデータにかけることを含む。超解像処理は、第4のフィルタ143に対応する第1のフィルタ119を第1画像のデータにかけることを含む。第1のフィルタ119は、第4のフィルタ143の逆の特性を有することとしてもよい。第1のフィルタ119は、第4のフィルタ143に対応しているので、より少ない反復回数でもっともらしい復元画像を生成することができる。
【0053】
移動体101は、複数の選択肢から画像認識処理を選択する。第1画像認識処理は、移動体101とデータサーバ131の間の通信を要しない。第2画像認識処理は、移動体101とデータサーバ131の間の通信を要する。このように、画像認識処理を使い分けることで、全体のデータ通信量を低減できる。
【0054】
(第2実施形態)
第1実施形態では、移動体が障害物認識処理を実施しているが、第2実施形態では、データサーバが障害物認識処理を実施する。第1実施形態と同様の構成は同じ符号を付して説明を省略する。
【0055】
図5に示されるシステムは、移動体201および移動体201と通信可能なデータサーバ231を備える。
【0056】
移動体201は、第5のフィルタ219を保存しているコントローラ213を備える。第5のフィルタ219は、第5の点像分布関数に基づく解像度劣化処理用のフィルタであり、例えば、上述のフィルタ15である。データサーバ231は、第6のフィルタ243を保存しているコントローラ237を備える。第6のフィルタは、第6の点像分布関数に基づく超解像処理用のフィルタであり、例えば、上述のフィルタ21である。第6の点像分布関数は、第5の点像分布関数に対応している。プロセッサ115は、メモリ117に保存されたプログラムを実行することにより、解像度劣化処理(第2画像処理)を実現する。
【0057】
図6は、移動体201の障害物認識処理を示すフローチャートである。
【0058】
コントローラ213は、カメラ103から第5画像のデータを取得し(S51)、地理的位置センサ105から地理的位置情報を取得する(S53)。第5画像は、カメラ103で撮影された画像である。第5画像のデータと地理的位置情報は互いに関連付けられる。
【0059】
コントローラ213は、気象環境センサ107から気象環境情報を取得し(S55)、気象環境情報により示される気象環境がメモリ117に保存されている所定気象条件121を満たすか否かを判断する(S57)。
【0060】
コントローラ213は、気象環境が所定気象条件を満たさない場合(S57, No)、第1障害物認識処理を実施する(S59)。
【0061】
コントローラ213は、気象環境が所定気象条件を満たす場合(S57, Yes)、第5画像のデータに解像度劣化処理を施して第6画像のデータを生成する。解像度劣化処理の具体例は、
図1を利用して説明した通りである。第5画像は、第5解像度および第5データサイズを有する。第6画像は、第5解像度よりも低い第6解像度および第5データサイズよりも小さい第6データサイズを有する。
【0062】
コントローラ213は、第6画像のデータおよび地理的位置情報をデータサーバ231に送信する(S67, S69)。データサーバ231は、これに対応して、第2障害物認識処理を実施して、その結果を送信する(詳細は
図7を用いて後述する)。コントローラ213は、第2障害物認識処理の結果を受信するまで待機する(S71, No)。
【0063】
コントローラ213は、第1障害物認識処理(S59)の結果または第2障害物認識処理の結果(S71, Yes)を受け、障害物を発見すれば(S61, Yes)、障害物回避のために駆動系111の制御を実施する。コントローラ213の処理は、駆動系111の制御の後で、カメラ103からの第5画像の取得(S51)に戻る。また、障害物が発見されない場合も(S61, No)、コントローラ213の処理は、カメラ103からの第5画像の取得(S51)に戻る。
【0064】
図7は、データサーバ231の障害物認識処理を示すフローチャートである。
【0065】
コントローラ237は、移動体201から地理的位置情報および第6画像のデータを受信するまで待機している(S73, No)。コントローラ237は、移動体201から地理的位置情報を取得すれば(S75, Yes)、データベース135に保存された複数の画像から第4画像を抽出する(S75)。第4画像は、移動体201から受信した地理的位置情報に示される地理的位置に対応付けられた画像である。
【0066】
コントローラ237は、第6画像のデータに超解像処理を施して第7画像のデータを生成する(S77)。超解像処理の具体例は、
図1を利用して説明した通りである。第6画像は、第6解像度を有する。第7画像は、第6画像よりも高い第7画像を有する。
【0067】
コントローラ237は、第2障害物認識処理を実施し(S79)、その結果を移動体201に送信する(S81)。第2障害物認識処理は、カメラ103の第5画像とデータサーバ231の第4画像の両方を利用して障害物を認識する処理である。第2障害物認識処理の具体例は、
図1を利用して説明した通りである。
【0068】
上述の通り、移動体201は、第5画像(原画像)のデータに解像度劣化処理を施すことで第6画像(劣化画像)のデータを生成することができる。第5画像は、第5解像度および第5データサイズを有する。第6画像は、第5解像度よりも低い第6解像度および第5データサイズよりも小さい第6データサイズを有する。移動体201は、第5画像のデータを送信し、データサーバ231は、その第5画像のデータを受信する。データサーバ231は、第5画像のデータに超解像処理を施すことで第7画像(復元画像)のデータを生成することができる。第7画像は、第6解像度よりも高い第7解像度を有する。第6画像が移動体201からデータサーバ231に送信されるので、データ通信量を低減することができる。
【0069】
また、解像度劣化処理は、第5のフィルタ219を第5画像のデータにかけることを含む。超解像処理は、第5のフィルタ219に対応する第6のフィルタ243を第5画像にかけることを含む。第6のフィルタ243は、第5のフィルタ219の逆の特性を有することとしてもよい。第6のフィルタ243は第5のフィルタ219に対応しているので、より少ない反復回数でもっともらしい復元画像を生成することができる。
【0070】
本発明は、上記第1および第2実施形態に開示された構成および処理に限られない。本発明の趣旨の範囲内で適宜変更してもよい。
【0071】
解像度劣化処理は、JPEGまたはMPEGを含む既存の圧縮・伸長技術の前処理として利用されてもよい。ある例では、移動体が原画像に解像度劣化処理を施して劣化画像を生成し、劣化画像に既存の圧縮技術を適用して圧縮画像を生成し、その圧縮画像を送信する。データサーバは、その圧縮画像を受信し、圧縮画像に既存の伸長技術を適用して劣化画像を再生し、その劣化画像に超解像処理を施して復元画像を生成する。