(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-06-05
(45)【発行日】2023-06-13
(54)【発明の名称】深度算出システム
(51)【国際特許分類】
G06T 7/529 20170101AFI20230606BHJP
G06T 7/00 20170101ALI20230606BHJP
G01C 3/06 20060101ALI20230606BHJP
【FI】
G06T7/529
G06T7/00 350C
G01C3/06 120S
(21)【出願番号】P 2019078316
(22)【出願日】2019-04-17
【審査請求日】2022-03-29
(73)【特許権者】
【識別番号】000101732
【氏名又は名称】アルパイン株式会社
(74)【代理人】
【識別番号】100099748
【氏名又は名称】佐藤 克志
(74)【代理人】
【識別番号】100103171
【氏名又は名称】雨貝 正彦
(74)【代理人】
【識別番号】100105784
【氏名又は名称】橘 和之
(74)【代理人】
【識別番号】100098497
【氏名又は名称】片寄 恭三
(72)【発明者】
【氏名】浦田 伴俊
【審査官】真木 健彦
(56)【参考文献】
【文献】特開2012-173874(JP,A)
【文献】特開2018-132477(JP,A)
【文献】特開2013-092820(JP,A)
【文献】特開2018-205929(JP,A)
【文献】特開2012-159470(JP,A)
【文献】進藤 智則,ディープラーニング技術が今度はSLAMに波及 キヤノンと独TUM、単眼カメラで密な3D地図,NIKKEI Robotics 第24号 ,日本,日経BP社,2017年06月10日,P.5-11
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/529
G06T 7/50
G06T 7/00
G01C 3/06
(57)【特許請求の範囲】
【請求項1】
カメラで撮影した画像から、画像中の各座標に映り込んだ実空間上の位置の深度を算出する深度算出システムであって、
前記カメラが撮影した画像中の各座標に映り込んだ実空間上の位置の深度を推定する深度推定手段と、
前記カメラが撮影した画像中の、形状、大きさが既知の所定の被撮影体の像を識別し、識別した像の画像中の座標
と当該被撮影体の前記大きさとから当該被撮影体までの深度を算出し、当該識別した像の画像中の座標の深度として前記深度推定手段が推定した深度を、算出した深度に補正する係数を補正係数として算定する補正係数算定手段と、
前記補正係数算定手段が算定した補正係数を用いて、前記深度推定手段が推定した深度を補正する深度補正手段とを有することを特徴とする深度算出システム。
【請求項2】
請求項1記載の深度算出システムであって、
前記深度推定手段は、画像と当該画像中の各座標に映り込んだ実空間上の位置の実際の深度を教師データとする学習を予め行わせたCNN(Convolutional Neural Network)によって、前記カメラが撮影した画像中の各座標に映り込んだ実空間上の位置の深度を推定することを特徴とする深度算出システム。
【請求項3】
請求項1または2記載の深度算出システムであって、
前記補正係数算定手段は、
前記カメラが撮影した画像中の前記被撮影体の像上の、前記被撮影体上の直線上に並ぶ間隔が既知の3点が映り込んだ3座標を検出し、検出した3座標から、前記被撮影体上の3点の前記カメラに対する角度を求め、求めた前記被撮影体上の3点の角度と、当該3点の前記間隔と、当該3点までの深度との幾何的な関係に従って、当該3点までの深度を算出し、
前記3座標の各々について、当該座標の深度として前記深度推定手段が推定した深度を、算出した当該座標に対応する点の深度に補正する係数を求め、求めた係数の平均を前記補正係数として算定することを特徴とする深度算出システム。
【請求項4】
請求項1、2または3記載の深度算出システムであって、
当該深度算出システムは、自動車に搭載されており、
前記カメラは、少なくとも前記自動車の前方を撮影することを特徴とする深度算出システム。
【請求項5】
請求項4記載の深度算出システムであって、
前記被撮影体は、マンホールの蓋であることを特徴とする深度算出システム。
【請求項6】
請求項4記載の深度算出システムであって、
自動車に関わる状況を検出する状況検出手段と、
前記補正係数算定手段が算定した補正係数を、前記深度補正手段に設定すると共に、当該算定された補正係数を前記状況検出手段が検出している状況に対応づけて記憶し、前記状況検出手段が検出している状況が変化したときに、変化後の状況に対応づけて記憶している補正係数を深度補正手段に設定する補正係数設定手段を有し、
前記深度補正手段は、前記補正係数設定手段によって設定された補正係数を用いて、前記深度推定手段が推定した深度を補正することを特徴とする深度算出システム。
【請求項7】
請求項2記載の深度算出システムであって、
前記カメラで撮影した画像と、当該画像に対して前記深度推定手段が推定した深度を深度補正手段が補正した深度とを教師データとして、前記深度推定手段が用いる前記CNNを学習させる学習処理手段を有することを特徴とする深度算出システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、二次元の画像から画像中の各座標に映り込んだ実空間上の位置の深度(depth/奥行き方向の距離)を推定する技術に関するものである。
【背景技術】
【0002】
二次元の画像から画像中の各座標に映り込んだ実空間上の位置の深度を推定する技術としては、画像と当該画像中の各座標に映り込んだ実空間上の位置の実際の深度を教師データとする学習を予め行わせたCNN(Convolutional Neural Network)を用いて、画像中の各座標に映り込んだ実空間上の位置の深度を推定する技術が知られている(たとえば、特許文献1、非特許文献1)
【先行技術文献】
【特許文献】
【0003】
【非特許文献】
【0004】
【文献】I. Laina, C. Rupprecht, V. Belagiannis, F. Tombari, and N. Navab. "Deeper depth prediction with fully convolutional residual networks." In International Conference on 3D Vision, pages 239248, 2016.
【発明の概要】
【発明が解決しようとする課題】
【0005】
上述した学習済みのCNNを用いて画像中の各座標に映り込んだ実空間上の位置の深度を推定する場合、画像を撮影するカメラのズームの有無やピッチ角等が学習時の状況と異なると、推定される深度のスケールがずれる形態の、推定精度の低化が生じてしまう問題があった。
【0006】
そこで、本発明は、二次元の画像から推定された画像中の各座標に映り込んだ実空間上の位置の深度を、適正な深度を表すように補正することを課題とする
【課題を解決するための手段】
【0007】
前記課題達成のために、本発明は、カメラで撮影した画像から、画像中の各座標に映り込んだ実空間上の位置の深度を算出する深度算出システムに、前記カメラが撮影した画像中の各座標に映り込んだ実空間上の位置の深度を推定する深度推定手段と、前記カメラが撮影した画像中の、形状、大きさが既知の所定の被撮影体の像を識別し、識別した像の画像中の座標から当該被撮影体までの深度を算出し、当該識別した像の画像中の座標の深度として前記深度推定手段が推定した深度を、算出した深度に補正する係数を補正係数として算定する補正係数算定手段と、前記補正係数算定手段が算定した補正係数を用いて、前記深度推定手段が推定した深度を補正する深度補正手段とを備えたものである。
【0008】
ここで、このような深度算出システムは、前記深度推定手段は、画像と当該画像中の各座標に映り込んだ実空間上の位置の実際の深度を教師データとする学習を予め行わせたCNN(Convolutional Neural Network)によって、前記カメラが撮影した画像中の各座標に映り込んだ実空間上の位置の深度を推定するものであってよい。
【0009】
また、このような深度算出システムは、前記補正係数算定手段において前記カメラが撮影した画像中の前記被撮影体の像上の、前記被撮影体上の直線上に並ぶ間隔が既知の3点が映り込んだ3座標を検出し、検出した3座標から、前記被撮影体上の3点の前記カメラに対する角度を求め、求めた前記被撮影体上の3点の角度と、当該3点の前記間隔と、当該3点までの深度との幾何的との幾何的な関係に従って、当該3点までの深度を算出し、前記3座標の各々について、当該座標の深度として前記深度推定手段が推定した深度を、算出した当該座標に対応する点の深度に補正する係数を求め、求めた係数の平均を前記補正係数として算定するように構成してもよい。
【0010】
また、このような深度算出システムを、自動車に搭載されたシステムとし、前記カメラを、少なくとも前記自動車の前方を撮影するものしてもよい。
また、この場合には、前記被撮影体を、マンホールの蓋としてもよい。
また、この場合には、深度算出システムに、自動車に関わる状況を検出する状況検出手段と、前記補正係数算定手段が算定した補正係数を、前記深度補正手段に設定すると共に、当該算定された補正係数を前記状況検出手段が検出している状況に対応づけて記憶し、前記状況検出手段が検出している状況が変化したときに、変化後の状況に対応づけて記憶している補正係数を深度補正手段に設定する補正係数設定手段を設け、前記深度補正手段において、前記補正係数設定手段によって設定された補正係数を用いて、前記深度推定手段が推定した深度を補正するようにしてもよい。
【0011】
また、前記深度推定手段を、CNNを用いて深度を推定するものとした深度算出システムには、前記カメラで撮影した画像と、当該画像に対して前記深度推定手段が推定した深度を深度補正手段が補正した深度とを教師データとして、前記深度推定手段が用いる前記CNNを学習させる学習処理手段を設けるようにしてもよい。
【0012】
以上のような深度算出システムによれば、画像を撮影するカメラのズームの有無やピッチ角等の影響によって、深度推定手段によって推定される深度のスケールがずれている場合に、前記カメラが撮影した形状、大きさが既知の所定の被撮影体の像から算定した深度と、推定された深度との関係より、スケールのずれをキャンセルする補正係数を設定し、推定された深度を適正な深度を表すように補正することができる。
【発明の効果】
【0013】
以上のように、本発明によれば、二次元の画像から推定された画像中の各座標に映り込んだ実空間上の位置の深度を、適正な深度を表すように補正することができる。
【図面の簡単な説明】
【0014】
【
図1】本発明の実施形態に係る車載システムの構成を示すブロック図である。
【
図2】本発明の実施形態に係るカメラの配置を示す図である。
【
図3】本発明の実施形態に係る補正係数算出の手順を示す図である。
【
図4】本発明の実施形態に係る補正係数算出の手順を示す図である。
【
図5】本発明の実施形態に係る深度計測システムの他の構成例を示す図である。
【発明を実施するための形態】
【0015】
以下、本発明の実施形態について説明する。
図1に、本実施形態に係る車載システムの構成を示す。
車載システムは、自動車に搭載されるシステムであり、図示するように、深度計測システム1と、深度利用システム2とを備えている。
また、深度計測システム1は、カメラ11と、CNN深度推定部12と、深度補正部13と、校正処理部14と備えている。そして、校正処理部14は、校正用被撮影体識別部141と校正係数算出部142を備えている。
【0016】
カメラ11は、たとえば、
図2a、bのように自動車の前端に配置されて、自動車の前方の路面を含む、自動車の前方のようすを撮影する。
CNN深度推定部12は、画像と当該画像中の各座標に映り込んだ実空間上の位置の実際の深度を教師データとする学習を予め行わせたCNN(Convolutional Neural Network)であり、カメラ11が撮影した画像中の各座標に映り込んだ実空間上の位置の深度を推定する。
【0017】
深度補正部13は、CNN深度推定部12が推定したカメラ11が撮影した画像中の各座標に映り込んだ実空間上の位置の深度を、設定された補正係数を乗じて、カメラ11が撮影した画像中の各座標に映り込んだ実空間上の位置の深度を補正する。
【0018】
校正処理部14は、後述する校正処理動作を行って、補正係数を深度補正部13に設定する。
そして、深度利用システム2は、深度計測システム1から出力される深度補正部13が補正したカメラ11が撮影した画像中の各座標に映り込んだ実空間上の位置の深度を利用した所定の処理を行う。ここで、深度利用システム2が行う深度を利用した処理は、たとえば、当該深度から、自車前方の障害物を検出して障害物の回避を支援する処理や、カメラ11が撮影した画像中の各座標に映り込んだ実空間上の位置の深度から自車前方の他車や構造物を識別して、自動車の自動運転を行う処理等である。
【0019】
以下、前述した、校正処理部14が行う校正処理動作について説明する。
まず、校正処理動作において、校正処理部14の校正用被撮影体識別部141は、カメラ11が撮影した画像を画像認識し、画像中の校正用被撮影体の像を識別する。
校正用被撮影体は、形状と大きさが既知の物体やパターンであり、校正用被撮影体の画像認識に用いる校正用被撮影体の情報は、予め、校正用被撮影体識別部141に設定されている。
ここで、本実施形態では、広く普及している半径30cmの円形のマンホールの蓋を、校正用被撮影体として用いるものとする。
この場合、校正用被撮影体識別部141は、
図3aのように自動車の前方の路面にマンホールが存在した場合に、
図3bに示すようにカメラ11が撮影した画像の水平方向(左右方向)の中央に現れるマンホールの蓋3の像を検出する。
ここで、自動車の前方を撮影するカメラ11は、撮影する画像の水平方向(左右方向)が実空間の水平方向と一致するように配置されており、マンホールの蓋は路面に水平に配置されている。
したがって、
図3cに示すマンホールの蓋3の中心Pa、マンホールの蓋3の自動車の後ろ方向側の端部Pb、マンホールの蓋3の自動車の前方向側の端部Pcは、カメラの光軸を鉛直方向に路面に投影した、自動車前後方向にのびる水平な線である計測線上にあり、中心Pa、端部Pb、端部Pcは、画像の水平画角0°位置の垂直線(画像の中心を通る上下方向の線)上に表れる。
【0020】
そして、校正用被撮影体識別部141は、マンホールの蓋3の中心Paが表れる画像中の位置までの画像下端からの距離Da、
図3cに示すマンホールの蓋3の自動車の後ろ方向側の端部Pbが表れる画像中の位置までの画像下端からの距離Db、
図3cに示すマンホールの蓋3の自動車の前方向側の端部Pcが表れる画像中の位置までの画像下端からの距離Dcを算定する。そして、算定した距離Da、距離Db、距離Dcと、検出したマンホールの蓋3の中心Paが表れる画像中の位置、マンホールの蓋3の自動車後ろ方向側の端部Pbが表れる画像中の位置、マンホールの蓋3の自動車前方向側の端部Pcが表れる画像中の位置を校正係数算出部142に通知する。
【0021】
次に、校正処理動作において、校正係数算出部142は、校正用被撮影体識別部141が算定した、距離Da、距離Db、距離Dcから、
図4に示すカメラ11の位置oとマンホールの蓋3の中心Paを結ぶ線分Aと、カメラ11の位置oとマンホールの蓋3の自動車後ろ方向側の端部Pbを結ぶ線分Bとの角度θ1と、線分aとマンホールの蓋3の自動車の前向側の端部Pcを結ぶ線分Cとの角度θ2とを算定する。ここで、距離Da、距離Db、距離Dcが求まれば、カメラ11の撮影画像のサイズや画角等の特性に従って、マンホールの蓋3の中心Pa、マンホールの蓋3の自動車の後ろ方向側の端部Pb、マンホールの蓋3の自動車の前方向側の端部Pcのカメラ11に対する角度は一義的に定まる。
【0022】
次に、校正係数算出部142は、線分Aの長さa、線分Bの長さb、線分Cの長さcを以下のように算定する。
すなわち、rが校正用被撮影体識とした円形のマンホールの蓋3の半径を表し、aが線分Aの長さを表し、bが線分Bの長さを表し、cが線分Cの長さを表すものとして、余弦定理から、
r
2=a
2+b
2-2ab×cosθ1...式1
r
2=a
2+c
2-2ac×cosθ2...式2
(2r)
2=b
2+c
2-2bc×cos(θ1+θ2)...式3
となり、
また、
図4に示すように線分Aと、Pc、Pa、Pbを通る直線との角度をθ3とすれば、正弦定理から、
r/sinθ1=b/sinθ3...式4
r/sinθ2=c/sin(180-θ3)=c/sinθ3...式5
となり、cosθ1=A1、cosθ2=A2、cos(θ1+θ2)=A3、r/sinθ1=A4、r/sinθ2=A5とおくと、
r
2=a
2+b
2-2ab×A1...式1’
r
2=a
2+c
2-2ac×A2...式2’
(2r)
2=b
2+c
2-2bc×A3...式3’
A4=b/sinθ3...式4’
A5=c/sinθ3...式5’
となり、式4’と式5’から、
c=b×A5/A4となるので、A5/A4をA6とおくと、
c=b×A6...式6
となる。
【0023】
そして、式6と式3’から、
4r2=b2+(b×A6)2-2b(b×A6)×A3となるので、
4r2=b2(1+A62-2×A6×A3)
b2=4r2/(1+A62-2×A6×A3)
b={4r2/(1+A62-2×A6×A3)}1/2....式7
となる。
【0024】
ここで、rの値は定数であり、θ1、θ2の値は確定しているので、A1からA6の値も一義的に求めることができる。
そこで、校正係数算出部142は、式7に従ってbの値を求める。
また、校正係数算出部142は、求めたbと式6より、c=b×A6によりcの値を求める。
また、式1’より、
a2-(2b×A1)a+(b2-r2)=0...式8
となるので、校正係数算出部142は、求めたbを用いて、
式8を、aについての2次方程式として解を算出し、aの値を求める。
【0025】
次に、校正係数算出部142は、校正用被撮影体識別部141から通知された検出したマンホールの蓋3の中心Paが表れる画像中の位置に対して、CNN深度推定部12が推定した深度をPaの深度として用いて、カメラ11の位置oとマンホールの蓋3の中心Paを結ぶ線分aの推定長さa’を算定する。また、校正用被撮影体識別部141から通知された検出したマンホールの蓋3の自動車後ろ方向側の端部Pbが表れる画像中の位置に対して、CNN深度推定部12が推定した深度をPbの深度として用いて、カメラ11の位置oとマンホールの蓋3の自動車後ろ方向側の端部Pbを結ぶ線分bの推定長さb’を算定する。また、校正用被撮影体識別部141から通知された検出したマンホールの蓋3の自動車前方向側の端部Pcが表れる画像中の位置に対して、CNN深度推定部12が推定した深度をPcの深度として用いて、カメラ11の位置oとマンホールの蓋3の自動車前方向側の端部Pcを結ぶ線分cの推定長さc’を算定する。
【0026】
そして、校正係数算出部142は、補正係数を、
補正係数={(a/a’)+(b/b’)+(c/c’)}/3
によって算定し、深度補正部13に設定する。
【0027】
以上、校正処理部14の校正処理動作について説明した。
ここで、このような校正処理部14の校正処理動作は、オペレータから校正処理の実行を指示されたときにのみ行うようにしてもよいし、自動車の走行中に継続的に行うようにしてもよい。
【0028】
また、校正処理部14の校正処理動作は、オペレータから校正処理の実行を指示されたときにのみ行うようにする場合には、校正用被撮影体として、マンホールの蓋3などの道路上にある物体を用いる必要はなく、校正用に用意した形状、大きさが既知の任意のマーカを路面に設置して行うようにしてよい。
【0029】
以上、本発明の実施形態について説明した。
ここで、以上の実施形態は、校正処理部14の校正処理動作を継続的に行う場合には、
図5に示すように、深度計測システム1に、自動車の周辺状況や走行状況などの自動車に関わる状況を検出する状況検出部15と、補正係数設定部16とを設け、補正係数設定部16において、校正処理部14の校正処理動作が行われたときに算定された補正係数を深度補正部13に設定すると共に、算定された補正係数を状況検出部15が検出している状況に対応づけて記憶し、状況検出部15が検出している状況が変化したときに、変化後の状況に対応づけて記憶している補正係数を深度補正部13に設定するようにしてもよい。
【0030】
なお、自動車の周辺状況としては、雨、晴れ、曇り、夜、昼などの周辺環境の状況等を用いることができ、自動車の走行状況としては、自動車の車速、高速道路や一般道といった自動車が走行している道路の種類などを用いることができる。
【0031】
また、以上の実施形態は、校正処理部14の校正処理動作を継続的に行う場合には、
図5に示すように、深度計測システム1に、カメラ11で撮影した画像と、当該画像に対してCNN深度推定部12が推定した深度を深度補正部13が補正した深度とを教師データとして、CNN深度推定部12のCNNを学習させる学習処理部17を設けるようにしてもよい。
【0032】
以上のように、本実施形態によれば、画像を撮影するカメラ11のズームの有無やピッチ角等の影響によって、CNN深度推定部12によって推定される深度のスケールがずれている場合に、前記カメラ11が撮影した形状、大きさが既知の所定の校正用被撮影体の像から算定した深度と、推定された深度との関係より、スケールのずれをキャンセルする補正係数を設定し、推定された深度を適正な深度を表すように補正することができる。
【符号の説明】
【0033】
1…深度計測システム、2…深度利用システム、3…蓋、11…カメラ、12…CNN深度推定部、13…深度補正部、14…校正処理部、15…状況検出部、16…補正係数設定部、17…学習処理部、141…校正用被撮影体識別部、142…校正係数算出部。