(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-08-25
(45)【発行日】2023-09-04
(54)【発明の名称】3次元位置推定装置および3次元位置推定方法
(51)【国際特許分類】
G01B 11/00 20060101AFI20230828BHJP
G01B 11/245 20060101ALI20230828BHJP
G06T 7/00 20170101ALI20230828BHJP
【FI】
G01B11/00 B
G01B11/245 H
G06T7/00 350C
(21)【出願番号】P 2020011295
(22)【出願日】2020-01-28
【審査請求日】2022-12-22
(73)【特許権者】
【識別番号】000101732
【氏名又は名称】アルパイン株式会社
(74)【代理人】
【識別番号】100098497
【氏名又は名称】片寄 恭三
(74)【代理人】
【識別番号】100099748
【氏名又は名称】佐藤 克志
(74)【代理人】
【識別番号】100103171
【氏名又は名称】雨貝 正彦
(74)【代理人】
【識別番号】100105784
【氏名又は名称】橘 和之
(72)【発明者】
【氏名】石井 卓也
【審査官】櫻井 仁
(56)【参考文献】
【文献】特開2019-125116(JP,A)
【文献】特開2018-139084(JP,A)
【文献】特開2013-186042(JP,A)
【文献】特開2019-124537(JP,A)
【文献】特開2019-124538(JP,A)
【文献】特開2015-231063(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01B 11/00-11/30
G06T 7/00- 7/90
(57)【特許請求の範囲】
【請求項1】
物体を撮像した画像データを撮像手段から入力し、教師データとして深度情報付きの特徴点マップを用いて前記画像データから物体の3次元座標を推定する学習モデルを生成する学習手段と、
物体を撮像した画像データを単眼カメラから前記学習モデルに入力し、物体の3次元座標を推定する推定手段と、
前記単眼カメラと前記撮像手段との撮像特性の差異に基づき前記推定手段で推定された3次元座標の深度を補正する補正手段と、
を有する3次元位置推定装置。
【請求項2】
前記学習モデルは、畳み込みニューラルネットワークを含む、請求項1に記載の3次元位置推定装置。
【請求項3】
前記撮像特性は、解像度、歪み、レンズ収差または焦点深度のいずれか1つを含む、請求項1に記載の3次元位置推定装置。
【請求項4】
前記撮像手段はステレオカメラを含み、前記深度情報付きの特徴点マップは、前記ステレオカメラのステレオ画像データから生成され、前記学習モデルには、前記ステレオカメラの一方のカメラで撮像された画像データが入力される、請求項1に記載の3次元位置推定装置。
【請求項5】
前記推定手段は、顔の3次元位置を推定する、請求項1ないし4いずれか1つに記載の3次元位置推定装置。
【請求項6】
前記推定手段は、耳の3次元位置を推定する、請求項5に記載の3次元位置推定装置。
【請求項7】
物体を撮像した画像データを撮像手段から入力し、教師データとして深度情報付きの特徴点マップを用いて前記画像データから物体の3次元座標を推定する学習モデルを生成するステップと、
物体を撮像した画像データを単眼カメラから前記学習モデルに入力し、物体の3次元座標を推定するステップと、
前記単眼カメラと前記撮像手段との撮像特性の差異に基づき前記推定された3次元座標の深度を補正するステップと、
を含む3次元位置推定方法。
【請求項8】
前記学習モデルは、畳み込みニューラルネットワークを含む、請求項7に記載の3次元位置推定方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、物体の3次元位置を推定する3次元位置推定装置に関し、特に、畳み込みニューラルネットワーク(Convolutional Neural Network:以下、CNNという)を利用した位置推定に関する。
【背景技術】
【0002】
乗員が音の方向感や移動感をより分かり易くするため、例えば、特許文献1の車載音響装置は、車内に設置されたカメラで運転者の顔を撮像し、撮像した画像から運転者の左右の耳の位置を推定し、左右の耳の位置に最適な音となるように音の大きさおよび遅延時間を制御した音場の補正技術を開示している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
単眼カメラを用いて物体(例えば、運転者の耳)までの距離を推定する場合、物体がカメラに近づけば画像上に物体が大きく映り、遠ざかれば物体が小さく映ることを利用し、物体までの距離を算出することができる。例えば、
図1に示すように、単眼カメラ10(12はCCDやCMOSのイメージセンサ、14は撮像レンズ、Fは焦点距離)で物体(被写体)20を撮像したとき、物体20までの距離Lを次式により算出することができる。
Z2=Z1×W1/W2
ここで、Z1を基準距離、Z2を測定したい物体までの距離、物体がZ1、Z2にあるときの画像上の長さをそれぞれW1、W2とすると、Z1とW1が既知であれば、距離Z2を上記式により求めることができる。
【0005】
しかしながら、一般に単眼カメラは、深度センサーと比べると、計算コスト、金銭コスト、サイズの制約の面で優れているが、精度の面では劣る。また、単眼カメラでは、基準距離Z1における画像上の長さW1が既知であるか、あるいは物体の実寸が既知である必要があり(大きさが未知な場合は使えない)、既知でない場合には、ステレオカメラ等を使用する必要があった。しかし、ステレオカメラを用いた場合でも、物体が立体物である場合、表面の凸凹や物体の回転等により誤差が生じることがある。
【0006】
深度センサーと単眼カメラとを併用したときの顔の特徴点の3次元座標の検出例を
図2(A)に示す。単眼カメラ30で顔を撮像し、撮像した画像データから顔の特徴点を抽出する。他方、深度センサー40は、例えば、レーザー光を顔の特徴点に照射し、その反射光を受光するまでの時間から特徴点までの距離を計測する。
【0007】
図2(B)に、深度センサーと単眼カメラを用いたときの特徴点の3次元座標を計算するための処理の流れを示す。先ず、単眼カメラ30で撮像した画像データからポーズを推定する(S10)。これは、画像データを解析することで、顔の特徴点である眼、耳、鼻、眉毛、口などの2次元座標を抽出する。次に、顔の特徴点の標準的な深度を表した統計データを用いて特徴点の深度を推定する(S20)。次に、深度センサ―40により顔をスキャンし、深度センサー40の検出結果を用いて推定された特徴点の深度をより正確に計算する(S30)。次に、計算して得られた深度を特徴点の2次元座標にマッチングし、顔の特徴点の3次元座標を計算する(S40)。3次元座標の計算では、単眼カメラ30のカメラパラメータ(解像度、レンズ収差等による画像の歪み、焦点深度、画角など)が考慮される。
【0008】
このような方法は、顔の特徴点の検出と深度推定/計算とを別々に行うため、次のような欠点がある。ポーズ推定(S10)や深度推定(S20)のための画像処理に大きな処理時間を必要とする。さらに、画像データから推定した2次元座標と2次元の深度情報とをマッチングする過程で大きく誤差を生じることがあった。例えば、顔の特徴点として耳の3次元位置を検出する場合、
図2(C)に示すように、単眼カメラ30で検出した耳の2次元座標に、深度センサー40で検出した頬の深度を誤ってマッチングしてしまったり(頬の3次元位置を誤検出)、
図2(D)に示すように、単眼カメラ30で検出した耳の2次元座標に、深度センサ―40で検出した背景の壁の深度を誤ってマッチングしてしまうことがある(壁の3次元位置を誤検出)。例えば、特許文献1に示すように、オーディオシステムにおいて耳の3次元位置を利用する場合、音声データを正確に補正することができないという不具合を生じさせてしまう。
【0009】
本発明は、上記従来の課題を解決し、単眼カメラを用いて物体の3次元位置を推定することができる3次元位置推定装置および推定方法を提供することを目的とする。
【課題を解決するための手段】
【0010】
本発明に係る3次元位置推定装置は、物体を撮像した画像データを撮像手段から入力し、教師データとして深度情報付きの特徴点マップを用いて前記画像データから物体の3次元座標を推定する学習モデルを生成する学習手段と、物体を撮像した画像データを単眼カメラから前記学習モデルに入力し、物体の3次元座標を推定する推定手段と、前記単眼カメラと前記撮像手段との撮像特性の差異に基づき前記推定手段で推定された3次元座標の深度を補正する補正手段とを有する。
【0011】
ある実施態様では、前記学習モデルは、畳み込みニューラルネットワークを含む。ある実施態様では、前記撮像特性は、解像度、歪み、レンズ収差または焦点深度のいずれか1つを含む。ある実施態様では、前記撮像手段はステレオカメラを含み、前記深度情報付きの特徴点マップは、前記ステレオカメラのステレオ画像データから生成され、前記学習モデルには、前記ステレオカメラの一方のカメラで撮像された画像データが入力される。ある実施態様では、前記推定手段は、顔の3次元位置(例えば、耳の位置)を推定する。
【0012】
本発明に係る3次元位置推定方法は、物体を撮像した画像データを撮像手段から入力し、教師データとして深度情報付きの特徴点マップを用いて前記画像データから物体の3次元座標を推定する学習モデルを生成するステップと、物体を撮像した画像データを単眼カメラから前記学習モデルに入力し、物体の3次元座標を推定するステップと、前記単眼カメラと前記撮像手段との撮像特性の差異に基づき前記推定された3次元座標の深度を補正するステップとを含む。
【発明の効果】
【0013】
本発明によれば、CNN等を用いた学習モデルにおいて物体の3次元位置を直接推定するようにし、この学習モデルを利用して物体の3次元位置を推定するようにしたので、従来と比較して、3次元位置を推定する処理時間を短くし、かつ2次元座標と深度とのマッチングがないために位置推定の誤差を減らすことができる。さらに、物体の3次元位置推定では、単眼カメラを利用することができるため低コスト化を図ることができる。
【図面の簡単な説明】
【0014】
【
図1】従来の単眼カメラによる物体までの距離の算出方法を説明する図である。
【
図2】従来の深度センサーと単眼カメラを併用した顔の特徴点の3次元座標の検出例を説明する図である。
【
図3】本発明の実施例に係る顔特徴部の3次元位置推定装置の機能的な構成を示すブロック図である。
【
図4】本発明の実施例に係る学習部の機能的な構成を示す図である。
【
図5】本発明の実施例に係る推定部の機能的な構成を示す図である。
【
図6】
図6(A)は、従来手法による物体の3次元位置推定のステップを示し、
図6(B)は、本実施例による物体の3次元位置推定のステップを示す。
【
図7】本実施例の3次元位置推定装置を車載オーディオシステムに適用したときに実施される搭乗者の耳の3次元位置推定を説明する図である。
【
図8】車載オーディオシステムのスピーカーが搭乗者のヘッドレストに内蔵される例を示す図である。
【発明を実施するための形態】
【0015】
次に、本発明の実施の形態について説明する。本発明の3次元位置推定装置は、単眼カメラにより撮像された画像データに対して画像処理を施して、画像データ内に映る物体の3次元位置を推定する。対象となる物体は、特に限定されないが、例えば、人間の顔の特徴点(例えば、眼、耳、鼻、口、眉毛など)、人間の腕や肘などの関節や姿勢、あるいは道路上の信号機、交差点、建造物など多岐にわたる。さらに本発明の3次元位置推定装置で推定された物体の3次元位置は、種々の用途に利用することができる。例えば、車載オーディオ装置は、搭乗者の耳の3次元位置に最適な音場を提供する。あるいは、運転支援装置は、前方車両や障害物等の3次元位置に最適な運転支援を提供する。
【実施例】
【0016】
次に、本発明の実施例について図面を参照して詳細に説明する。
図3は、本発明の実施例に係る3次元位置推定装置の機能的な構成を示すブロック図である。3次元位置推定装置100は、撮像カメラ110、単眼カメラ120および画像処理部130を含んで構成される。
【0017】
撮像カメラ110は、CCDやCMOSセンサー等の撮像素子やレンズ等を含む光学系を含み、n行×m列の画素数(ピクセル数)からなる画像データP1を生成する。撮像カメラ110が生成する画像データP1には、3次元位置を推定するための物体が映され、この画像データP1は、学習部140に提供される。ある実施態様では、撮像カメラ110は、比較的高価または高機能なカメラであることができ、その結果、高精度の画像データP1を生成することができる。また、ある実施態様では、撮像カメラ110は、ステレオカメラまたは複数のカメラを含むことができ、複数の撮像カメラは、異なる視差で物体がそれぞれ撮像する。複数の撮像カメラで生成された複数の画像データの中から1つの画像データP1が選択され、選択された画像データP1が学習部140に提供される。
【0018】
単眼カメラ120は、CCDやCMOSセンサー等の撮像素子やレンズ等を含む光学系を含み、n行×m列の画素数(ピクセル数)からなる画像データP2を生成する。単眼カメラ120が生成する画像データP2には、3次元位置を推定するための物体が映され、この画像データP2は、推定部150に提供される。ある実施態様では、単眼カメラ120は、比較的低機能または廉価なカメラであり、例えば、ウエブカメラであることができる。
【0019】
画像処理部130は、撮像カメラ110で生成された画像データP1および単眼カメラ120で生成された画像データP2を受け取り、これらの画像データP1、P2の画像処理または画像認識を行う。画像処理部130は、大きく2つの機能を含み、1つは、学習部140が実行する学習機能であり、もう1つは推定部150が実行する推定機能である。推定部150は、学習部140によって生成された学習モデルを利用して画像データP2から物体の3次元位置を推定する。
【0020】
学習部140は、撮像カメラ110で生成された画像データP1を受け取る画像データ入力部142、入力した画像データP1に映された物体の特徴の抽出等を行う特徴抽出処理部144、大量の画像データP1の特徴抽出処理を行い、結果として物体の3次元座標を推定する学習モデルを生成する学習モデル生成部146を含む。
【0021】
推定部150は、単眼カメラ120で生成された画像データP2を受け取る画像データ入力部152、学習モデル生成部146で生成された学習モデルを用いて画像データP2に映された物体の特徴の抽出等を行う特徴抽出処理部154、特徴抽出処理部154の処理結果から物体の3次元位置を推定する3次元位置推定部156、推定された物体の3次元位置をカメラパラメータ等の予め用意された補正情報を用いて3次元位置の深度を補正する3次元位置補正部158を含む。
【0022】
画像処理部130は、ハードウエアおよび/またはソフトウエアによって実現される。画像処理部130は、例えば、CPUやROM/RAM等を含むマイクロコントローラ、マイクロプロセッサ、画像処理用プロセッサ、DSP、メモリ等を含むことができ、さらにROMやメモリ等に格納されたプログラムやソフトウエア等をCPUに実行させることができる。
【0023】
次に、学習部140の詳細について
図4を参照して説明する。学習部140は、ステレオカメラ(またはモーションフレーム)110で生成された一方のモノラル画像データP1を受け取る入力部200と、入力部200で受け取られた画像データP1の特徴抽出処理を行う畳み込みニューラルネットワーク部(以下、CNN部)210と、深度情報付きの特徴点マップ(3次元ヒートマップ)を生成し、これを教師ラベルLとしてCNN部210に提供する教師ラベル生成部220と、教師ラベルLを用いてCNN部210を学習させる機械学習部230と、CNN部210により生成された物体の特徴点を表した3次元座標(例えば、顔の特徴点の3次元マップ)M1を出力する出力部240とを含む。
【0024】
ステレオカメラ110で生成される画像データP1は、適切なサイズが選定される。画像データのサイズが大きすぎると、特徴を抽出し抽出した特徴から特徴点マップを生成するための処理に大きな負荷がかかり過ぎ、他方、画像データのサイズが小さすぎると、特徴の抽出が少なくなり精度が劣化する。
【0025】
CNN部210は、画像データP1を受け取る入力層、畳み込み層、プーリング層、出力層を含む。入力層は、入力される画像データP1の画素数と同じ入力ノードを有する。CNN部210は、物体の大きさ、位置、光の減衰などの予め用意された種々の特徴情報を用いて、画像データP1をフィルタリングまたは圧縮し、物体の特徴を抽出する。ある実施態様では、CNN部210は、エンコーダ-デコーダを用いて構成することができる。
【0026】
CNN部210は、物体の特徴点の2次元座標(マップ)を生成し、これを機械学習部230へ提供する。機械学習部230は、教師ラベル生成部220から提供される教師ラベル(深度情報付きの特徴点マップ)を用いて、CNN部210で生成された物体の特徴点の2次元座標が教師ラベルLの特徴点マップに一致するようにCNN部210のフィルター係数あるいは重み付け係数を調整する。調整された係数は、学習データとしてメモリ等に保持される。さらに機械学習部230は、教師ラベルLを用いて、特徴点の次元座標に深度情報を与える。こうして、物体の3次元座標として深度情報付きの特徴点マップが同時に生成され、これが出力部240から得られる。
【0027】
教師ラベル生成部220は、ステレオカメラ220で撮像された少なくとも2つのステレオ画像データに映された物体の視差を利用して物体までの距離(すなわち、深度情報(デプス))を計算し、深度情報付きの特徴点マップである教師ラベルLを生成する。こうして、学習部140は、単眼カメラ120の画像データP2から物体の3次元座標が推定できるように、CNN部210の機械学習を行う。
【0028】
次に、推定部150の詳細について
図5を参照して説明する。推定部150は、単眼カメラ120で生成された画像データP2を受け取る入力部200と、入力部200で受け取られた画像データP2の特徴抽出処理を行う学習済みのCNN部210と、CNN部210で処理された物体の特徴点を表した3次元座標M1を出力する出力部240と、ステレオカメラ120と単眼カメラ120とのカメラパラメータの差異に基づく補正情報Cを提供する補正情報提供部250と、補正情報Cに基づき3次元座標M1の深度情報を補正する3次元座標補正部260とを含む。
【0029】
補正情報提供部250は、ステレオカメラ110と単眼カメラ120のカメラパラメータ(例えば、解像度、画像の歪み、レンズ収差、焦点深度、画角など)の差異に基づき生成された補正情報Cを3次元座標補正部260に提供する。補正情報Cは、ステレオカメラ110で生成された画像データP1と単眼カメラ120で生成された画像データP2との相関関係を規定するものであり、例えば、メモリ等に予め用意される。また、ある実施態様では、補正情報提供部250は、ステレオカメラ110のキャリブレーション情報を考慮した補正情報Cを生成するようにしてもよい。カメラの工場出荷時、カメラの組立誤差を較正するためのキャリブレーションパラメータが設定されることがあり、キャリブレーションパラメータを取得することができる場合には、キャリブレーションパラメータを反映した補正情報Cを生成する。3次元座標補正部260は、補正情報Cに基づき推定された3次元座標の深度情報を補正し、これを最終的な推定位置として出力する。
【0030】
このように、本実施例では単眼カメラ120からの画像データP2と学習済のCNN部210を用いて物体の特徴点の3次元位置を推定する。このとき、単眼カメラ120のカメラパラメータを使って3次元座標を計算するが、学習時に使ったステレオカメラ110の撮像特性(カメラパラメータ)の違いによる深度補正を行うことで、異なるカメラでも物体の3次元位置を正確に推定することを可能にする。
【0031】
ある実施態様では、推定部150は、顔の特徴点(パーツ)の3次元位置を直接推定する。この場合、顔の特徴点の近傍のみの深度を推定できれば良いため、カメラで撮像された画像全体の深度を推定する必要はない。つまり、周辺オブジェクトや壁等の深度を推定する必要はないため、学習に使うデータ数を少なくすることができる。
【0032】
図6(A)に、従来手法による3次元位置推定のステップを示し、
図6(B)に、本実施例よる3次元位置推定のステップを示す。従来手法は、ポーズ推定、深度推定、深度計算、および3次元座標計算のステップを含むのに対し、本実施例は、学習モデルを生成するCNN部210によりポーズ位置と深度を同時に推定し、それに基づき3次元座標を計算するため、従来手法よりも処理ステップを削減し、かつ処理時間を短縮させることができる。また、CNN部で直接3次元位置を推定するため、2次元座標と深度とのマッチングが不要となり、位置推定の誤差を少なくすることができる。さらに、推定時には単眼カメラのみで3次元位置を推定可能になるためコスト低減を図ることができる。
【0033】
本実施例の3次元位置推定装置で推定された結果は、種々のアプリケーションに適用することができる。ある実施態様では、3次元位置推定装置は、車載オーディオシステムに適用される。3次元位置推定装置が車両に搭載され、単眼カメラ120は、搭乗者の顔を撮像する位置に設置される。例えば、
図7に示すように、単眼カメラ120は、コラムカバー300上に取り付けられ、ステアリング310の合間を通して運転者320の顔を撮像し、3次元位置推定装置は、運転者320の耳330の3次元位置を推定する。
【0034】
車載オーディオシステムは、記録媒体から再生された音声データまたはスマートフォン等の外部機器で再生された音声データを車内空間内に音声出力する。ある実施態様では、
図8に示すように、運転者320の座席340のヘッドレスト350の左右にスピーカー360が搭載され、車載オーディオシステムは、運転者320の耳330の3次元位置に最適化された音場が生成されるように、音声データの再生を制御する。また、車載オーディオシステムがANC(アクティブノイズコントロール)を利用する場合には、ヘッドレストにマイクが内蔵され、耳330の3次元位置周辺においてノイズを効果的に低減することができる。
【0035】
上記実施例では、顔パーツの3次元位置を推定する例を示したが、これは一例であり、これ以外にも、骨格、関節、姿勢等を推定することも可能である。さらに位置推定する物体は、人間に限らず、他の物体(例えば、構造物、車両等)であってもよい。上記実施例では、学習時にステレオカメラを用いる例を示したが、これは一例であり、これ以外にも、例えば、焦点深度センサー付きのカメラを用いて教師データを与えるものであってもよい。
【0036】
以上、本発明の好ましい実施の形態について詳述したが、本発明は、特定の実施形態に限定されるものではなく、特許請求の範囲に記載された発明の要旨の範囲において、種々の変形、変更が可能である。
【符号の説明】
【0037】
100:3次元位置推定装置 110:撮像カメラ
120:単眼カメラ 130:画像処理部
140:学習部 142:画像データ入力部
144:特徴抽出処理部 146:学習モデル生成部
150:推定部 152:画像データ入力部
154:特徴抽出処理部 156:3次元位置推定部
158:3次元位置補正部 210:畳み込みニューラルネットワーク部