JP6603993B2 - 画像処理装置、画像処理方法、画像処理システム、及びプログラム - Google Patents

画像処理装置、画像処理方法、画像処理システム、及びプログラム Download PDF

Info

Publication number
JP6603993B2
JP6603993B2 JP2015017257A JP2015017257A JP6603993B2 JP 6603993 B2 JP6603993 B2 JP 6603993B2 JP 2015017257 A JP2015017257 A JP 2015017257A JP 2015017257 A JP2015017257 A JP 2015017257A JP 6603993 B2 JP6603993 B2 JP 6603993B2
Authority
JP
Japan
Prior art keywords
image processing
image
dimensional coordinates
dimensional
processing apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2015017257A
Other languages
English (en)
Other versions
JP2016142577A (ja
Inventor
和史 松下
多聞 貞末
賢 青木
和寛 ▲高▼澤
康宏 梶原
康子 橋本
靖子 白鷹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2015017257A priority Critical patent/JP6603993B2/ja
Publication of JP2016142577A publication Critical patent/JP2016142577A/ja
Application granted granted Critical
Publication of JP6603993B2 publication Critical patent/JP6603993B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Image Analysis (AREA)

Description

本発明は、画像処理装置、画像処理方法、画像処理システム、及びプログラムに関する。
従来、車両等の移動体に複数のカメラを取り付け、それぞれのカメラによって撮像された画像を用いて、移動体の周辺環境を3次元的に認識する方法が知られている。
さらに、移動体の周辺環境のうち、撮像された画像に基づくいわゆるオプティカルフロー(optical flow)によって、移動体の運動量を推定する方法が知られている。
例えば、移動体の運動量を推定する方法において、まず、画像におけるオプティカルフローの向きに基づいてサンプリングされた特徴点がグループに振り分けられる。次に、振り分けられた特徴点を収束させて基礎行列が求められ、求められた基礎行列に基づいて、移動体の運動量を推定する方法が知られている(例えば、特許文献1参照)。
しかしながら、画像にノイズ(noise)の入力、画像の分解能不足、又は遮蔽物の写り込み等が起きた場合、被写体を追跡できない場合がある。ゆえに、3次元データの生成において、被写体の位置が精度よく計算されない場合がある。
本発明の1つの側面は、3次元データの生成において、被写体の位置を精度よく計算できる画像処理装置を提供することを目的とする。
一態様における、被写体を含む周辺を撮像する複数の撮像装置に接続される画像処理装置は、前記撮像装置から画像データをそれぞれ取得する取得部と、前記画像データからそれぞれオプティカルフローを計算するオプティカルフロー計算部と、前記画像データからそれぞれの撮像装置の角度及び位置を示すポーズをそれぞれ計算するポーズ計算部と、前記オプティカルフロー及び前記撮像装置のポーズに基づいて3次元座標を計算する3次元座標計算部と、前記3次元座標に基づいて前記周辺を示す3次元データを生成する生成部と、複数のフレームにおいて、それぞれの前記3次元座標について、同一の被写体を示す前記3次元座標をマッチングさせるマッチング部と、前記マッチングに基づいて前記複数のフレームのうち、いずれかに前記同一の被写体を示す前記3次元座標がないと、前記3次元座標のデータを削除する削除部とを含む。
3次元データの生成において、被写体の位置を精度よく計算できる。
本発明の一実施形態に係る画像処理システムの全体構成の一例を示す全体構成図である。 本発明の一実施形態に係る画像処理装置のハードウェア構成の一例を示すブロック図である。 本発明の一実施形態に係る画像処理装置による全体処理の一例を示すフローチャートである。 本発明の一実施形態に係る画像処理装置によるカメラのポーズの計算の一例を示す図である。 本発明の一実施形態に係るピンホールカメラモデルの一例を示す図である。 本発明の一実施形態に係る3次元座標の計算の一例を示す図である。 本発明の一実施形態に係る3次元データの一例を示す図である。 本発明の一実施形態に係る画像処理装置による全体処理の処理結果の一例を示す図である。 本発明の一実施形態に係る遮蔽物の一例を示す図である。 本発明の一実施形態に係る画像処理装置によるマッチングの一例を示す図である。 本発明の一実施形態に係る第2実施形態の画像処理システムの全体構成の一例を示す全体構成図である。 本発明の一実施形態に係る第2実施形態の画像処理装置による全体処理の処理結果の一例を示す図である。 本発明の一実施形態に係る第2実施形態の画像処理装置によって計算される3次元座標の一例を示す図である。 本発明の一実施形態に係る画像処理装置の機能構成の一例を示す機能ブロック図である。
以下、本発明の実施の形態について説明する。
(第1実施形態)
(全体構成例)
図1は、本発明の一実施形態に係る画像処理システムの全体構成の一例を示す全体構成図である。具体的には、図1は、撮像装置としてカメラを使用する例であり、画像処理システム1が有する第1カメラ10及び第2カメラ11を移動体の一例である車両2に設置した例である。
以下、図1では、車両2の進行方向をZ軸とする。さらに、図示するように、第1カメラ10の光軸10Zは、Z軸と同一方向とし、これに対して、第2カメラ11の光軸11Zは、Z軸と反対方向となるように設置される例で説明する。
なお、画像処理システム1は、3つ以上のカメラを有してもよい。
図2は、本発明の一実施形態に係る画像処理装置のハードウェア構成の一例を示すブロック図である。具体的には、画像処理装置100は、CPU(Central Processing Unit)100H1と、ASIC(Application Specific Integrated Circuit)100H2と、記憶装置100H3と、入出力I/F(interface)100H4とを有する。
CPU100H1は、画像処理装置100が行う画像処理に係る各種処理及び画像データ等の各種データの加工を行う演算装置である。さらに、CPU100H1は、画像処理装置100が有する装置等を制御する制御装置である。
ASIC100H2は、画像処理装置100が行う画像処理に係る各種処理及び画像データ等の各種データの加工を行う電子回路である。なお、ASIC100H2は、FPGA(Field−Programmable Gate Array)等のPLD(Programmable Logic Device)でもよい。
記憶装置100H3は、画像処理装置100が使うデータ、プログラム、及び設定値等を記憶する。また、記憶装置100H3は、いわゆるメモリ(memory)等である。なお、記憶装置100H3は、ハードディスク(harddisk)等の補助記憶装置等を有してもよい。
入出力I/F100H4は、画像処理装置100にデータを入出力するインタフェースである。具体的には、入出力I/F100H4は、コネクタ等である。なお、入出力I/F100H4は、ネットワーク又は無線等を使用してもよい。
また、画像処理装置100は、PC(Personal Computer)等の情報処理装置でもよい。
画像処理システム1は、画像処理装置100を有し、画像処理装置100は、図1に示す第1カメラ10及び第2カメラ11に接続される。なお、画像処理装置100は、ネットワークを介して他の1以上の情報処理装置と接続され、各種処理の全部又は一部を分散、並列、又は冗長して処理を行ってもよい。
以下、ロボット又は車両等の移動体の位置を推定するSLAM(Simultaneous Localization And Mapping)においてカメラを使うVisual SLAMについて説明する。具体的には、Visual SLAMでは、カメラによって撮像された画像データに基づいて移動体の周辺を示す地図が生成され、移動体の位置が推定される。即ち、Visual SLAMでは、移動体の周辺を示す地図及び移動体の位置を示す3次元データが生成される。
(全体処理例)
図3は、本発明の一実施形態に係る画像処理装置による全体処理の一例を示すフローチャートである。
(初期値の入力例(ステップS1))
ステップS1では、画像処理装置は、3次元データの初期値を入力する。
例えば、初期値となる3次元データは、ステレオカメラ等によって生成される。なお、3次元データは、レーダ等を用いて距離を計測するセンサ、速度を計測するセンサ、加速度センサ、ジャイロ(gyro)センサ、GPS(Global Positioning System)、又はこれらを組み合わせたシステムによって生成されてもよい。また、3次元データの初期値は、画像処理システム1(図1)が有するカメラから取得される画像データ等から生成されてもよい。
(画像データの取得例(ステップS2))
ステップS2では、画像処理装置は、それぞれのカメラから画像データを取得する。具体的には、画像処理装置は、第1カメラ10(図1)及び第2カメラ11(図2)からそれぞれ画像データを取得する。
(特徴点の算出例(ステップS3))
ステップS3では、画像処理装置は、画像データ内に含まれる特徴点を画像データごとにそれぞれ算出する。具体的には、ステップS3では、画像処理装置は、Harris行列等によって、ステップS2で取得されるそれぞれの画像データ内に含まれる特徴点を算出する。
(オプティカルフローの計算例(ステップS4))
ステップS4では、画像処理装置は、ステップS3で算出される特徴点のオプティカルフローを画像データごとにそれぞれ計算する。具体的には、ステップS4では、画像処理装置は、勾配法又はLucas−Kanade法等によって、オプティカルフローをそれぞれ計算する。
オプティカルフローは、連続して撮像される複数枚の静止画又は動画において、撮像される被写体の動きをベクトルで示す。即ち、同一の被写体が複数のフレームでそれぞれ撮像され、オプティカルフローが計算されると、被写体が有する特徴点の軌跡がオプティカルフローとして示される。
(カメラのポーズの計算例(ステップS5))
ステップS5では、画像処理装置は、ステップS4で計算されるオプティカルフローに基づいてカメラのポーズを計算する。
図4は、本発明の一実施形態に係る画像処理装置によるカメラのポーズの計算の一例を示す図である。具体的には、図4(A)は、カメラが位置PAから位置PBに移動する例を示す図である。なお、位置PAで撮像される画像を画像Img1とし、位置PBで撮像される画像を画像Img2とする。また、画像Img1の次のフレームで画像Img2が撮像されるとする。
また、カメラのポーズは、例えば、6DOF(Degrees Of Freedom、自由度)で示される。即ち、カメラのポーズは、XYZ軸に対するそれぞれの位置及びXYZ軸に対するそれぞれの角度で示される。
具体的には、図4(B)で示すように、3次元上の点P2、点P3、点P4、及び点P5のそれぞれの被写体が、画像Img1及び画像Img2にそれぞれ撮像される。次に、画像処理装置は、画像Img1及び画像Img2から特徴点FP2、特徴点FP3、特徴点FP4、及び特徴点FP5をステップS3の処理により、それぞれ算出する。また、図4(B)で示すように、画像処理装置は、特徴点FP2、特徴点FP3、特徴点FP4、及び特徴点FP5のそれぞれの各特徴点から位置PA及び位置PBをそれぞれ計算することができる。
具体的には、カメラのポーズを示す位置PA及び位置PBは、例えば各特徴点から下記(式1)に基づいてそれぞれ計算される。即ち、下記(式1)で示すように、カメラのポーズは、各特徴点の投影点の座標x及び各投影点が実際に観測される座標x'の差をそれぞれ計算し、それぞれの差の総和が最小となる位置である。
なお、上記(式1)では、Pは、射影行列を示す。また、iは、図4(B)に示す各特徴点を特定する値であり、Xは、3次元座標系である世界座標系での座標を示す。さらに、[R|t]は、座標を世界座標系から画像上の2次元座標系であるカメラ座標系に変換する変換行列である。
図5は、本発明の一実施形態に係るピンホールカメラモデルの一例を示す図である。例えば、図5(A)に示すピンホールモデルでは、図5(B)に示すような関係で、世界座標系及びカメラ座標系の関係が示せる。なお、図5(A)では、レンズLZの右側が世界座標系CR_Wである。これに対して、レンズLZの左側がカメラ座標系CR_Cである。
上記(式1)での射影行列Pは、図5(B)の行列Aと、図5(C)に示すアスペクト比等のカメラの内部パラメータから定まる行列とを乗算して求める。
また、上記(式1)では、求める位置PA(図4)及び位置PB(図4)は、[R|t]によってそれぞれ示される。また、[R|t]は、例えば下記(式2)のように示せる。
上記(式1)では、実際に観測される座標x'は、オプティカルフローに基づいて求められる。なお、実際に観測される座標x'は、観測の対象となる特徴点が動いたり、異なる3次元座標と対応してしまう場合もあるため、フレームごとに計算されるのが好ましい。即ち、画像処理装置は、フレームごとにオプティカルフローを求めると、フレームごとにカメラのポーズを計算することができる。したがって、画像処理装置は、フレームごとにカメラのポーズが計算できるため、カメラのポーズを示す精度を向上できる。
さらに、ステップS4(図3)でオプティカルフローが計算されているため、画像処理装置は、画像Img1(図4)に撮像される各特徴点が、画像Img2(図4)の撮像される各特徴点であるか対応させることができる。つまり、オプティカルフローによって、画像処理装置は、各特徴点をそれぞれ追跡することができる。したがって、オプティカルフローによって、画像処理装置は、精度よく特徴点を対応させることができるため、画像処理装置は、カメラのポーズを精度よく計算することができる。
(3次元座標の計算例(ステップS6))
図3に戻り、ステップS6では、画像処理装置は、オプティカルフローに基づいて3次元座標を計算する。
図6は、本発明の一実施形態に係る3次元座標の計算の一例を示す図である。具体的には、図6は、3次元座標X0を、画像Img1及び画像Img2に基づいて計算する例を示す図である。なお、画像Img1で、3次元座標X0に係る被写体が2次元座標x1に撮像されるとし、さらに、画像Img2で、3次元座標X0に係る被写体が2次元座標x2に撮像されるとする。
ここで、画像Img1によるカメラの射影行列を射影行列P1とすると、3次元座標X0及び2次元座標x1の関係は、下記(式3)のように示せる。なお、射影行列P1は、上記(式1)では、射影行列Pに相当する。
x1×P1X0=0・・(式3)
なお、上記(式3)において、射影行列P1は、ステップS5(図3)で計算されるカメラのポーズによって定まる。また、上記(式3)において、2次元座標x1は、画像Img1における座標値によって定まる。
したがって、画像処理装置は、上記(式3)より、2次元座標x1から3次元座標X0を計算することができる。
さらに、オプティカルフローによって、画像処理装置は、画像Img2では、画像Img1で計算対象となる3次元座標X0の被写体を追跡することができる。つまり、オプティカルフローによって、画像処理装置は、それぞれ異なる画像である画像Img1及び画像Img2において、同一の3次元座標X0についてそれぞれ計算することができる。
なお、異なる画像に基づいて3次元座標がそれぞれ計算されるため、3次元座標は、異なる値がそれぞれ計算される場合がある。この場合に、画像処理装置は、最小二乗法等によって、複数の計算結果から3次元座標を求めるため、画像処理装置は、3次元座標を精度よく計算することができる。
(マッチング処理例(ステップS7))
図3に戻り、ステップS7では、画像処理装置は、マッチングを行う。具体的には、ステップS7では、画像処理装置は、ステップS6で一方の画像(例えば画像Img1(図6))から計算される3次元座標について、同一の被写体を示す3次元座標が他方の画像(例えば画像Img2(図6))にあるかを探索する。
(対応する3次元座標があるか否かの判断例(ステップS8))
ステップS8では、画像処理装置は、対応する3次元座標があるか否かを判断する。例えば、被写体が移動体であると、画像Img1(図4)には、被写体が撮像されても、画像Img2(図4)には、被写体が撮像されない場合がある。したがって、被写体が移動体である場合等では、ステップS7の処理によって、対応する3次元座標が探索されない場合がある。ゆえに、ステップS8では、画像処理装置は、ステップS7の結果に基づいて、対応する3次元座標があるか否かを判断する。
なお、ステップS8では、画像処理装置は、同一の被写体を示す複数の3次元座標を1つのグループ(以下、単にグループという。)にして処理してもよい。
次に、ステップS8で、対応する3次元座標があると画像処理装置が判断する場合(ステップS8でYES)、画像処理装置は、ステップS9に進む。一方、ステップS8で、対応する3次元座標がないと画像処理装置が判断する場合(ステップS8でNO)、画像処理装置は、ステップS10に進む。
(3次元データの生成例(ステップS9))
ステップS9では、画像処理装置は、3次元データを生成する。具体的には、画像処理装置は、例えば、ステップS1で入力される初期値等に、ステップS6で計算される3次元座標を上書きして3次元データを生成する。
(3次元座標の削除例(ステップS10))
ステップS10では、画像処理装置は、3次元座標を削除する。即ち、対応する3次元座標がないと判断される場合(ステップS8でNO)は、対象となる座標の被写体が移動体等であるため、前フレームの画像で撮像されていた被写体が、次フレームの画像に撮像されていない場合等である。したがって、ステップS10では、画像処理装置は、3次元データのうち、対応する3次元座標がない3次元座標を削除する。
(全体処理の処理結果例)
図7は、本発明の一実施形態に係る3次元データの一例を示す図である。具体的には、3次元データD1は、例えば、3次元座標D2及びカメラのポーズを示す軌跡D3を有する。まず、3次元座標D2は、ステップS1(図3)で初期値として入力される。次に、3次元データD1は、ステップS9(図3)の処理及びステップS10(図3)の処理によって、3次元座標D2が変更されて生成される。さらに、3次元データD1は、ステップS5の処理で計算されるカメラのポーズを軌跡D3として示す。
図8は、本発明の一実施形態に係る画像処理装置による全体処理の処理結果の一例を示す図である。具体的には、図8では、車両2に設置される第1カメラ10によって撮像される画像を画像Img1とし、第2カメラ11によって撮像される画像を画像Img2とする。また、図8(A)に示す状態で撮像される画像Img1を図8(B)に示す画像とし、図8(C)に示す状態で撮像される画像Img2を図8(D)に示す画像とする。なお、図8では、車両2は、画像Img1を撮像する図8(A)に示す位置から画像Img2を撮像する図8(C)に示す位置に移動する例である。
さらに、図8(A)及び図8(C)では、車両2の進行方向及び第1カメラ10の光軸10ZをZ軸とし、図の上下方向とする。さらにまた、図8(A)及び図8(C)では、車両2の進行方向に直交方向をX軸とし、図の左右方向とする。
また、図8では、複数の被写体があり、複数の被写体のうち、移動体2Aは、被写体が移動する車両等の移動体とする。一方、複数の被写体のうち、建物31、建物32、建物33、及び建物34は、それぞれ建築物等であり、建物31、建物32、建物33、及び建物34は、被写体が移動しない静止体とする。
以下、ステップS2(図3)の処理で、画像処理装置が、画像Img1及び画像Img2の画像データをそれぞれ取得する例で説明する。
例えば、画像Img1では、建物32及び建物33のように、被写体の全体が撮像されるのに対して、建物31のように、移動体2Aが遮蔽物となり、被写体が撮像されない場合がある。なお、遮蔽物は、移動体2A以外の物体でもよい。
図9は、本発明の一実施形態に係る遮蔽物の一例を示す図である。具体的には、例えば、図9に示すように、第1カメラ10(図1)の画角内に車両2(図1)が有するワイパー4等が写り込むと、画像Img1には、ワイパー4が撮像される。また、図9では、ワイパー4が遮蔽物となるため、ワイパー4等によって、建物32及び建物33のように、被写体の一部又は全部が撮像されない場合がある。さらに、ノイズの入力又は画像の分解能不足等によって、同様に、被写体の一部又は全部が撮像されない場合がある。
画像処理システム1(図1)は、図9に示す建物32及び建物33のように、第1カメラ10では、遮蔽物等によって被写体の一部又は全部が撮像されない場合でも、第2カメラ11(図1)によって撮像される画像Img2(図8)では、被写体が撮像される場合がある。したがって、画像処理システム1は、複数のカメラを有するため、一方のカメラで追跡ができない被写体を他方のカメラで追跡できる。
画像処理システム1が有する複数のカメラのうち、いずれか1つのカメラで撮像することができると、画像処理装置は、ステップS3(図3)の処理によって、画像から特徴点を算出することができる。例えば、一方のカメラで追跡できなかった被写体であるため、3次元座標が削除されてしまう場合でも、画像処理装置は、他方のカメラで撮像した被写体に基づいて3次元座標を計算することができる。ゆえに、画像処理装置は、特徴点を算出することができる確率を高くすることができるため、遮蔽物等があっても、被写体の3次元座標を精度よく計算することができる。
図10は、本発明の一実施形態に係る画像処理装置によるマッチングの一例を示す図である。なお、ステップS7(図3)の処理は、例えば図10に示す処理である。例えば、マッチングは、ステップS6(図3)で計算される3次元座標のうち、同一の被写体を示す複数の3次元座標をグループ化してグループごとに行われる。具体的には、図10(A)は、図8(B)に示す画像Img1に基づいて計算される3次元座標の例を示す図である。一方、図10(B)は、図8(D)に示す画像Img2に基づいて計算される3次元座標を示す図である。なお、図10では、車両2(図8)の軌跡は、軌跡D3のデータで示すとする。
画像処理装置は、複数の3次元座標のうち、同一の被写体を示す3次元座標を図示するように、グループ化する。例えば、図10では、画像処理装置は、建物31を示す3次元座標を1つのグループとする。同様に、図10では、画像処理装置は、移動体2A、建物33、及び建物34を示す3次元座標をそれぞれグループとする。
次に、画像処理装置は、ICP(Interative Closest Point)アルゴリズム等によってステップS7(図3)の処理を行う。具体的には、図10(A)に示す各グループについて、他方の図10(B)に近傍点があるかを検索する。
例えば、図10では、図10(A)に示す建物31を示すグループは、図10(B)にも示されるため、マッチングの処理によって、対応する3次元座標があると判断される。一方、図10では、図10(A)に示す移動体2Aを示すグループは、図10(B)には示されないため、マッチングの処理によって、対応する3次元座標がないと判断される。
したがって、移動体2Aを示す3次元座標は、3次元データからステップS10(図3の処理によって削除される。SLAMの処理において、移動体を示す3次元座標が削除されると、地図の生成の際に、移動体によるミスマッチを減らすことができるため、被写体の位置を精度よく計算できる。
また、画像処理装置は、被写体を精度よく抽出できるため、画像処理装置は、画像データのうち、背景を精度よく区別することができる。なお、画像処理装置は、背景と被写体とを区別して各種処理を行ってもよい。例えば、画像処理装置は、被写体と認識する部分についてマッチングを行う。これによって、画像処理装置は、背景と被写体とがミスマッチするのを少なくすることができる。また、画像処理装置は、背景部分について処理を行わないため、計算コストを少なくできる。
さらに、画像処理装置は、被写体を建物等の静止体と車両等の移動体とを区別して各種処理を行ってもよい。例えば、画像処理装置は、静止体と認識する部分についてマッチングを行う。これによって、画像処理装置は、静止体と移動体とがミスマッチするのを少なくすることができる。また、画像処理装置は、移動体部分について処理を行わないため、計算コストを少なくできる。
(第2実施形態)
画像処理システムは、3つ以上のカメラを有してもよい。以下、図1に示す画像処理システム1にさらにカメラを2つ加えた4つのカメラを有する画像処理システム1Aを例に説明する。なお、画像処理装置は、第1実施形態と同様のハードウェア構成の装置であるとする。したがって、ハードウェア構成の説明は、省略する。
図11は、本発明の一実施形態に係る第2実施形態の画像処理システムの全体構成の一例を示す全体構成図である。
画像処理システム1Aは、画像処理システム1と同様に、第1カメラ10及び第2カメラ11を有する。なお、第1カメラ10及び第2カメラ11のそれぞれの設置位置及びそれぞれの設置向きは、画像処理システム1と同様とする。さらに、画像処理システム1Aは、第3カメラ12及び第4カメラ13を有する。
第3カメラ12及び第4カメラ13は、例えば、各光軸がZ軸に対して直交になるようにそれぞれ設置される。即ち、図示するように、第3カメラ12は、第3カメラ12の光軸12Xが車両2の進行方向に対して右手方向になるように設置される。また、図示するように、第4カメラ13は、第4カメラ13の光軸13Xが車両2の進行方向に対して左手方向になるように設置される。
図12は、本発明の一実施形態に係る第2実施形態の画像処理装置による全体処理の処理結果の一例を示す図である。具体的には、図12では、車両2に設置される第3カメラ12によって撮像される画像を画像Img3とし、第4カメラ13によって撮像される画像を画像Img4とする。また、図12(A)に示す状態で撮像される画像Img3を図12(B)に示す画像とし、図12(C)に示す状態で撮像される画像Img4を図12(D)に示す画像とする。なお、図12に示す車両2の周辺環境は、図8と同様とする例である。
さらに、図12(A)及び図12(C)では、図8と同様に、車両2の進行方向及び第1カメラ10の光軸10ZをZ軸とし、図の上下方向とする。これに対して、図12(A)及び図12(C)では、車両2の進行方向に直交方向及び第3カメラ12の光軸12XをX軸とし、図の左右方向とする。
以下、ステップS2(図3)の処理で、画像処理装置が、図8に示す画像Img1及び画像Img2を示すそれぞれの画像データに加えて、画像Img3及び画像Img4を示すそれぞれの画像データをさらに取得する例で説明する。
ステップS2の処理で画像Img3及び画像Img4を示すそれぞれの画像データがさらに取得されると、画像Img1及び画像Img2と同様に、画像処理装置は、ステップS6(図3)の処理で、画像Img3及び画像Img4に基づいて3次元座標をそれぞれ計算する。
図13は、本発明の一実施形態に係る第2実施形態の画像処理装置によって計算される3次元座標の一例を示す図である。具体的には、図13(A)は、図12(B)に示す画像Img3に基づいて計算される3次元座標を示す図である。一方、図13(B)は、図12(D)に示す画像Img4に基づいて計算される3次元座標を示す図である。
第2実施形態では、画像処理装置は、ステップS7(図3)の処理で、画像Img1及び画像Img2に基づく3次元座標に加えて、図13(A)及び図13(B)に示す3次元座標をそれぞれ使用する。
例えば、ステップS7の処理では、画像処理装置は、図10(A)に示す3次元座標及び図13(B)にそれぞれ示す3次元座標について、同一の被写体を示す3次元座標があるかを探索する。具体的には、図10(A)に示す3次元座標及び図13(B)に示す3次元座標が、建物33を示す3次元座標のデータをそれぞれ有する。そのため、画像処理装置は、建物33を示す3次元座標について、対応する3次元座標があると判断する。したがって、画像処理装置は、ステップS9(図3)の処理で、建物33を示す3次元座標について、計算される建物33の3次元座標を使用して3次元データを生成する。
なお、マッチングに使用する画像は、他の組み合わせでもよい。
画像処理システム1A(図11)は、4つのカメラを有するため、2つのカメラを有する画像処理システム1(図1)より多く周辺を撮像することができる。そのため、画像処理装置は、被写体の3次元座標をより多く計算することができる。ゆえに、SLAMの処理等において、多くの3次元座標を使用できるため、位置を精度よく計算できる。
(機能構成例)
図14は、本発明の一実施形態に係る画像処理装置の機能構成の一例を示す機能ブロック図である。具体的には、画像処理装置100は、取得部100F1と、オプティカルフロー計算部100F2と、3次元座標計算部100F3と、マッチング部100F4と、削除部100F5と、ポーズ計算部100F6と、生成部100F7とを含む。
取得部100F1は、接続される複数のカメラから画像データをそれぞれ取得する。具体的には、取得部100F1は、第1カメラ10から画像Img1の画像データを取得する。同様に、取得部100F1は、第2カメラ11から画像Img2の画像データを取得する。なお、取得部100F1は、入出力I/F100H4(図2)等によって実現される。
オプティカルフロー計算部100F2は、取得部100F1が取得する画像データからオプティカルフローを計算する。なお、オプティカルフロー計算部100F2は、CPU100H1(図2)及びASIC100H2(図2)等によって実現される。
3次元座標計算部100F3は、ポーズ計算部100F6によって計算される各カメラのポーズ及びオプティカルフロー計算部100F2によって計算されるオプティカルフローに基づいて、図6等に示すように、被写体の3次元座標を計算する。なお、3次元座標計算部100F3は、CPU100H1及びASIC100H2等によって実現される。
マッチング部100F4は、3次元座標計算部100F3によって計算される3次元座標について、同一の被写体を示す3次元座標をマッチングする。なお、マッチング部100F4は、CPU100H1及びASIC100H2等によって実現される。
削除部100F5は、マッチングの結果に基づいて3次元座標のデータを削除する。具体的には、削除部100F5は、マッチングの処理によって、対応する3次元座標がないと判断された3次元座標のデータを3次元データから削除する。なお、削除部100F5は、CPU100H1及びASIC100H2等によって実現される。
ポーズ計算部100F6は、各カメラについての各座標系における座標軸に対する角度及び各座標系における座標によって示される位置を示すポーズを図4等に示すように、計算する。なお、ポーズ計算部100F6は、CPU100H1及びASIC100H2等によって実現される。
生成部100F7は、3次元座標計算部100F3によって計算される3次元座標で初期値等を上書きして3次元データを生成する。また、削除部100F5が3次元座標を削除する場合、生成部100F7は、削除部100F5が削除した以外の3次元座標等を示すデータを生成する。なお、生成部100F7は、CPU100H1及びASIC100H2等によって実現される。
画像処理装置100は、複数のカメラから画像データを取得する。次に、画像処理装置100は、取得した画像データからオプティカルフローを計算する。さらに、画像処理装置100は、取得した画像データからカメラのポーズを計算する。さらにまた、画像処理装置100は、計算したオプティカルフロー及びカメラのポーズから3次元座標を計算できる。
画像処理装置100は、計算される被写体の3次元座標に基づいて3次元データを生成することができる。3次元データの生成において、画像処理装置100は、オプティカルフローを使うため、遮蔽物等があっても一方のカメラで追跡ができない被写体を他方のカメラで追跡できる。即ち、いずれか1つのカメラで被写体を撮像することができると、画像処理装置は、特徴点を算出できるため、被写体の3次元座標を計算することができる。ゆえに、画像処理装置は、被写体の特徴点を算出することができる確率を高くすることができるため、遮蔽物等があっても、被写体の3次元座標を精度よく計算することができる。
また、被写体の3次元座標が精度よく計算されるため、SLAMにおいて、移動体の周辺を示す地図が精度よく生成できる。よって、SLAM等で、移動体が自己の位置等を精度よく計算できる。
なお、各処理の全部又は一部は、アセンブラ、C、C++、C#、及びJava(登録商標)等のレガシープログラミング言語又はオブジェクト指向プログラミング言語等で記述されたコンピュータに実行させるためのプログラムによって実現されてもよい。即ち、プログラムは、画像処理装置又は情報処理装置等のコンピュータに各処理を実行させるためのコンピュータプログラムである。
また、プログラムは、ROM又はEEPROM(Electrically Erasable Programmable ROM)等のコンピュータが読み取り可能な記録媒体に格納して頒布することができる。さらに、記録媒体は、EPROM(Erasable Programmable ROM)、フラッシュメモリ、フレキシブルディスク、CD−ROM、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、ブルーレイディスク、SD(登録商標)カード、又はMO等でもよい。さらにまた、プログラムは、電気通信回線を通じて頒布することができる。
実施形態は、例えば周辺を撮像する複数の撮像装置に接続される画像処理装置であって、第1カメラ10(図1)及び第2カメラ11(図1)から画像データをそれぞれ取得する入出力I/F100H4(図2)と、前記画像データからそれぞれオプティカルフローを計算するCPU100H1(図2)と、前記画像データから第1カメラ10及び第2カメラ11の角度及び位置を示すポーズをそれぞれ計算するCPU100H1と、前記オプティカルフロー及び第1カメラ10と第2カメラ11のポーズに基づいて3次元座標を計算するCPU100H1と、前記3次元座標に基づいて前記周辺を示す3次元データを生成するCPU100H1とを含む画像処理装置である。
以上、本発明の好ましい実施例について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形又は変更が可能である。
1、1A 画像処理システム
2 車両
2A 移動体
10 第1カメラ
11 第2カメラ
12 第3カメラ
13 第4カメラ
100 画像処理装置
100H1 CPU
100H2 ASIC
100H3 記憶装置
Img1、Img2、Img3、Img4 画像
31、32、33、34 建物
特開2013−104660号公報 特許4654163号公報 特開2011−150689号公報 特許5136314号公報 特開2009−6824号公報 特開2011−248830号公報 特開2009−193257号公報

Claims (4)

  1. 被写体を含む周辺を撮像する複数の撮像装置に接続される画像処理装置であって、
    前記撮像装置から画像データをそれぞれ取得する取得部と、
    前記画像データからそれぞれオプティカルフローを計算するオプティカルフロー計算部と、
    前記画像データからそれぞれの前記撮像装置の角度及び位置を示すポーズをそれぞれ計算するポーズ計算部と、
    前記オプティカルフロー及び前記撮像装置のポーズに基づいて前記被写体の3次元座標を計算する3次元座標計算部と、
    前記3次元座標に基づいて前記周辺を示す3次元データを生成する生成部と、
    複数のフレームにおいて、それぞれの前記3次元座標について、同一の被写体を示す前記3次元座標をマッチングさせるマッチング部と、
    前記マッチングに基づいて前記複数のフレームのうち、いずれかに前記同一の被写体を示す前記3次元座標がないと、前記3次元座標のデータを削除する削除部と
    を含む画像処理装置。
  2. 被写体を含む周辺を撮像する複数の撮像装置に接続される画像処理装置が行う画像処理方法であって、
    前記画像処理装置が、前記撮像装置から画像データをそれぞれ取得する取得手順と、
    前記画像処理装置が、前記画像データからそれぞれオプティカルフローを計算するオプティカルフロー計算手順と、
    前記画像処理装置が、前記画像データからそれぞれの前記撮像装置の角度及び位置を示すポーズをそれぞれ計算するポーズ計算手順と、
    前記画像処理装置が、前記オプティカルフロー及び前記撮像装置のポーズに基づいて前記被写体の3次元座標を計算する3次元座標計算手順と、
    前記画像処理装置が、前記3次元座標に基づいて前記周辺を示す3次元データを生成する生成手順と、
    前記画像処理装置が、複数のフレームにおいて、それぞれの前記3次元座標について、同一の被写体を示す前記3次元座標をマッチングさせるマッチング手順と、
    前記画像処理装置が、前記マッチングに基づいて前記複数のフレームのうち、いずれかに前記同一の被写体を示す前記3次元座標がないと、前記3次元座標のデータを削除する削除手順と
    を含む画像処理方法。
  3. 被写体を含む周辺を撮像する複数の撮像装置及び1以上の画像処理装置を有する画像処理システムであって、
    前記撮像装置から画像データをそれぞれ取得する取得部と、
    前記画像データからそれぞれオプティカルフローを計算するオプティカルフロー計算部と、
    前記画像データからそれぞれの前記撮像装置の角度及び位置を示すポーズをそれぞれ計算するポーズ計算部と、
    前記オプティカルフロー及び前記撮像装置のポーズに基づいて前記被写体の3次元座標を計算する3次元座標計算部と、
    前記3次元座標に基づいて前記周辺を示す3次元データを生成する生成部と、
    複数のフレームにおいて、それぞれの前記3次元座標について、同一の被写体を示す前記3次元座標をマッチングさせるマッチング部と、
    前記マッチングに基づいて前記複数のフレームのうち、いずれかに前記同一の被写体を示す前記3次元座標がないと、前記3次元座標のデータを削除する削除部と
    を含む画像処理システム。
  4. 被写体を含む周辺を撮像する複数の撮像装置に接続されるコンピュータに画像処理を実行させるためのプログラムであって、
    前記コンピュータが、前記撮像装置から画像データをそれぞれ取得する取得手順と、
    前記コンピュータが、前記画像データからそれぞれオプティカルフローをそれぞれ計算するオプティカルフロー計算手順と、
    前記コンピュータが、前記画像データからそれぞれの前記撮像装置の角度及び位置を示すポーズを計算するポーズ計算手順と、
    前記コンピュータが、前記オプティカルフロー及び前記撮像装置のポーズに基づいて前記被写体の3次元座標を計算する3次元座標計算手順と、
    前記コンピュータが、前記3次元座標に基づいて前記周辺を示す3次元データを生成する生成手順と、
    前記コンピュータが、複数のフレームにおいて、それぞれの前記3次元座標について、同一の被写体を示す前記3次元座標をマッチングさせるマッチング手順と、
    前記コンピュータが、前記マッチングに基づいて前記複数のフレームのうち、いずれかに前記同一の被写体を示す前記3次元座標がないと、前記3次元座標のデータを削除する削除手順と
    を実行させるためのプログラム。
JP2015017257A 2015-01-30 2015-01-30 画像処理装置、画像処理方法、画像処理システム、及びプログラム Expired - Fee Related JP6603993B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015017257A JP6603993B2 (ja) 2015-01-30 2015-01-30 画像処理装置、画像処理方法、画像処理システム、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015017257A JP6603993B2 (ja) 2015-01-30 2015-01-30 画像処理装置、画像処理方法、画像処理システム、及びプログラム

Publications (2)

Publication Number Publication Date
JP2016142577A JP2016142577A (ja) 2016-08-08
JP6603993B2 true JP6603993B2 (ja) 2019-11-13

Family

ID=56570092

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015017257A Expired - Fee Related JP6603993B2 (ja) 2015-01-30 2015-01-30 画像処理装置、画像処理方法、画像処理システム、及びプログラム

Country Status (1)

Country Link
JP (1) JP6603993B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6812862B2 (ja) 2017-03-14 2021-01-13 株式会社リコー 画像処理システム、撮像装置、画像処理方法及びプログラム
US10740612B2 (en) * 2017-07-20 2020-08-11 International Business Machines Corporation Location determination

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007263657A (ja) * 2006-03-28 2007-10-11 Denso It Laboratory Inc 3次元座標取得装置
EP3112802B1 (en) * 2007-02-16 2019-10-09 Mitsubishi Electric Corporation Road feature measurement apparatus and road feature measuring method
US8698875B2 (en) * 2009-02-20 2014-04-15 Google Inc. Estimation of panoramic camera orientation relative to a vehicle coordinate frame
JP5445069B2 (ja) * 2009-11-26 2014-03-19 富士通株式会社 3次元位置計測装置および3次元位置計測方法
CN103154666B (zh) * 2011-06-14 2015-03-18 日产自动车株式会社 距离测量装置以及环境地图生成装置

Also Published As

Publication number Publication date
JP2016142577A (ja) 2016-08-08

Similar Documents

Publication Publication Date Title
JP6768156B2 (ja) 仮想的に拡張された視覚的同時位置特定及びマッピングのシステム及び方法
JP5430456B2 (ja) 幾何特徴抽出装置、幾何特徴抽出方法、及びプログラム、三次元計測装置、物体認識装置
US9386209B2 (en) Method and apparatus for estimating position
CN112652016B (zh) 点云预测模型的生成方法、位姿估计方法及其装置
JP4940461B2 (ja) 3次元物体認識装置及び3次元物体認識方法
JP5803367B2 (ja) 自己位置推定装置、自己位置推定方法およびプログラム
WO2020221307A1 (zh) 一种运动物体的追踪方法和装置
KR101423139B1 (ko) 3차원 직선을 이용하여 위치를 인식하고 지도를 생성하는 방법 및 그 방법에 따른 이동체
KR20150144731A (ko) 다이렉트 트래킹을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
KR101715780B1 (ko) 복셀 맵 생성기 및 그 방법
WO2020195875A1 (ja) 情報処理装置、情報処理方法、及びプログラム
JP2017134617A (ja) 位置推定装置、プログラム、位置推定方法
JP2012118666A (ja) 三次元地図自動生成装置
KR20150144730A (ko) ADoG 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
JP4132068B2 (ja) 画像処理装置及び三次元計測装置並びに画像処理装置用プログラム
JPWO2017051480A1 (ja) 画像処理装置及び画像処理方法
JP2018119833A (ja) 情報処理装置、システム、推定方法、コンピュータプログラム、及び記憶媒体
JP2008014691A (ja) ステレオ画像計測方法とそれを実施する装置
JP2016001841A (ja) 視差画像生成装置、視差画像生成方法及び画像
JP6410231B2 (ja) 位置合わせ装置、位置合わせ方法及び位置合わせ用コンピュータプログラム
JP6922348B2 (ja) 情報処理装置、方法、及びプログラム
CN113160221B (zh) 图像处理方法、装置、计算机设备和存储介质
JP6603993B2 (ja) 画像処理装置、画像処理方法、画像処理システム、及びプログラム
CN113030960B (zh) 一种基于单目视觉slam的车辆定位方法
US20210156710A1 (en) Map processing method, device, and computer-readable storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181002

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180928

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190409

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190415

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190917

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190930

R151 Written notification of patent or utility model registration

Ref document number: 6603993

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees