(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022181116
(43)【公開日】2022-12-07
(54)【発明の名称】三次元キャプチャ装置、および、三次元キャプチャシステム
(51)【国際特許分類】
H04N 5/225 20060101AFI20221130BHJP
G01B 11/245 20060101ALI20221130BHJP
G06T 7/593 20170101ALI20221130BHJP
【FI】
H04N5/225 800
G01B11/245 H
H04N5/225 100
G06T7/593
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2021087961
(22)【出願日】2021-05-25
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110001807
【氏名又は名称】弁理士法人磯野国際特許商標事務所
(72)【発明者】
【氏名】猪股 宏文
(72)【発明者】
【氏名】別井 圭一
【テーマコード(参考)】
2F065
5C122
5L096
【Fターム(参考)】
2F065AA04
2F065AA53
2F065BB05
2F065BB15
2F065CC11
2F065FF05
2F065FF67
2F065JJ02
2F065JJ05
2F065JJ25
2F065MM02
2F065QQ31
2F065SS02
2F065SS13
5C122DA12
5C122EA55
5C122FA06
5C122FA18
5C122FB02
5C122FB03
5C122FC03
5C122FC04
5C122FD07
5C122FH04
5C122FH12
5C122GE06
5C122GE11
5C122HA75
5C122HA88
5C122HB01
5C122HB10
5L096AA09
5L096BA03
5L096CA05
5L096CA13
5L096CA16
5L096DA02
5L096EA14
5L096FA66
5L096FA69
5L096HA02
(57)【要約】
【課題】移動する大きなサイズの構造物を、高い精度で三次元キャプチャする。
【解決手段】三次元キャプチャ装置2は、複数のラインセンサ111L,111Rが長手方向の同一直線上に配置されているステレオラインセンサ装置11と、複数のラインセンサ121L,121Rが長手方向の同一直線上に配置されているステレオラインセンサ装置12とを備え、ステレオラインセンサ装置11のラインセンサ111L,111Rの長手方向と、ステレオラインセンサ装置12のラインセンサ121L,121Rが長手方向とが交差するようにステレオラインセンサ装置11,12が設置されている。
【選択図】
図1
【特許請求の範囲】
【請求項1】
複数のラインセンサが長手方向の同一直線上に配置されている複数の撮影部を備え、
各前記撮影部のラインセンサの長手方向が交差するように各前記撮影部が設置されている、
ことを特徴とする三次元キャプチャ装置。
【請求項2】
各前記撮影部は、同一方向を光軸とする複数の光学系を備える、
ことを特徴とする請求項1に記載の三次元キャプチャ装置。
【請求項3】
各前記撮影部のうち少なくとも2台が備える複数の光学系の光軸は平行である、
ことを特徴とする請求項2に記載の三次元キャプチャ装置。
【請求項4】
被写体の移動量を計測する移動量計測部を更に備える、
ことを特徴とする請求項1に記載の三次元キャプチャ装置。
【請求項5】
各前記撮影部の台数は、3台以上であり、
各前記撮影部が撮影した撮影データから被写体の移動量を推定する移動量推定部を更に備える、
ことを特徴とする請求項1に記載の三次元キャプチャ装置。
【請求項6】
前記被写体の移動量に基づき、各前記撮影部が撮影した撮影データを補正する補正部を更に備える、
ことを特徴とする請求項4または5に記載の三次元キャプチャ装置。
【請求項7】
各前記撮影部が撮影した撮影データから、それぞれ視差マップデータを生成する視差マップ生成部と、
前記視差マップ生成部が生成した各前記視差マップデータから、それぞれ三次元点群データを生成する点群データ生成部と、
前記点群データ生成部が作成した各前記三次元点群データを合成する点群データ合成部と、
を更に備えることを特徴とする請求項1に記載の三次元キャプチャ装置。
【請求項8】
前記点群データ合成部が合成した合成三次元点群データを三次元メッシュデータに変換する三次元メッシュ変換部、
を更に備えることを特徴とする請求項7に記載の三次元キャプチャ装置。
【請求項9】
前記三次元メッシュデータを所望の視点からの表示画像に変換する三次元メッシュ表示部、
を更に備えることを特徴とする請求項8に記載の三次元キャプチャ装置。
【請求項10】
複数のラインセンサが長手方向の同一直線上に配置されている複数の撮影部を備え、
各前記撮影部のラインセンサの長手方向が交差するように各前記撮影部が設置されている、
ことを特徴とする三次元キャプチャシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、三次元キャプチャ装置、および、三次元キャプチャシステムに関する。
【背景技術】
【0002】
自動車などのように、大きくて複雑な構造物の出荷検査や中古製品の品質点検において、点検者が各部位を点検している。しかし、自動車ならば車体下側のように、目視で検出し辛い部位がある。昨今、自動車の車種は多様化し、点検する部品の位置などが、それぞれ異なるため、そのような構造物の各部位の点検が容易ではなくなってきている。
【0003】
そこで、このように大きく複雑な構造物を、仮想現実空間上で三次元化して、目視したい位置や向きの画像で、点検者が点検できるようにすることが提案されている。
【0004】
特許文献1には、特別な装置を必要とすることなく、ステレオカメラのキャリブレーションを行うことができる3次元座標取得装置の発明が記載されている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
大きな構造物を計測する場合、これを撮影すると撮影データが膨大となり、膨大な撮影データの処理に膨大な時間が掛かる。特にステレオエリアセンサによる方法では、撮影画像が連写枚数分発生して、大量になる。そして、大量の枚数分のステレオマッチングする処理時間も膨大になる。ステレオエリアセンサによる撮影方法では、ステレオマッチングの対象が2軸(二次元)となる分、三次元合成において、画像のつなぎ目が目立たない精度を実現することが難しい。
【0007】
ステレオラインセンサ1台による撮影方法では、ステレオラインセンサによる撮影方法に比べ、データ量が大幅に少なくてすむが、ラインセンサの垂直な方向の三次元情報を得ることができず、構造物外観の三次元情報が十分に取れない。更にステレオラインセンサ1台による撮影方法では、被写体の移動速度が変化する場合、誤った三次元情報が求められてしまう。
【0008】
そこで、本発明は、移動する大きなサイズの構造物を、高い精度で三次元キャプチャすることを課題とする。
【課題を解決するための手段】
【0009】
前記した課題を解決するため、本発明の三次元キャプチャ装置は、複数のラインセンサが長手方向の同一直線上に配置されている複数の撮影部を備え、各前記撮影部のラインセンサの長手方向が交差するように各前記撮影部が設置されている、ことを特徴とする。
【0010】
本発明の三次元キャプチャシステムは、複数のラインセンサが長手方向の同一直線上に配置されている複数の撮影部を備え、各前記撮影部のラインセンサの長手方向が交差するように各前記撮影部が設置されている、ことを特徴とする。
その他の手段については、発明を実施するための形態のなかで説明する。
【発明の効果】
【0011】
本発明によれば、移動する大きなサイズの構造物を、高い精度で三次元キャプチャすることが可能となる。
【図面の簡単な説明】
【0012】
【
図1】第1の実施形態に係る三次元キャプチャ装置の構成図である。
【
図2A】ステレオラインセンサ装置の配置例を示す平面図である。
【
図2B】ステレオラインセンサ装置の配置例を示す斜視図である。
【
図3A】ステレオラインセンサ装置の配置例を示す平面図である。
【
図3B】ステレオラインセンサ装置の配置例を示す斜視図である。
【
図5】三次元キャプチャ装置が生成する各種データを示す概念図である。
【
図6】ステレオラインセンサ装置の動作を示す図である。
【
図7A】ステレオラインセンサ装置で自動車を撮影する動作を示す図である。
【
図7B】ステレオラインセンサ装置で自動車を撮影する動作を示す図である。
【
図8A】ステレオラインセンサ装置で列車を撮影する動作を示す図である。
【
図8B】ステレオラインセンサ装置で列車を撮影する動作を示す図である。
【
図9】三次元キャプチャ装置の動作を示す図である。
【
図10】三次元キャプチャ装置の処理を示すフローチャートである。
【
図12】各画像データの補正処理を示すフローチャートである。
【
図13】視差マップ生成処理を示すフローチャートである。
【
図14】点群データ生成処理を示すフローチャートである。
【
図15】合成点群データ生成処理を示すフローチャートである。
【
図16】三次元メッシュデータ生成処理を示すフローチャートである。
【
図17】三次元メッシュデータの表示処理を示すフローチャートである。
【
図18】第2の実施形態に係るステレオラインセンサ装置の配置例を示す平面図である。
【
図19】変形例のステレオラインセンサ装置の配置例を示す平面図である。
【
図20】第2の実施形態に係る三次元キャプチャ装置のブロック図である。
【
図21】三次元キャプチャ装置が生成する各種データを示す概念図である。
【
図22A】被写体の移動量を計測する方法を説明する平面図である。
【
図22B】被写体の移動量を計測する方法を説明する斜視図である。
【
図23】被写体の移動量を計測する方法を説明する図である。
【
図24】被写体の移動量の計測処理を示すフローチャートである。
【発明を実施するための形態】
【0013】
以降、本発明を実施するための形態を、各図を参照して詳細に説明する。
以下、「三次元情報」とは、被写体の外観における複数の注目点の直交座系上の座標値の集合を意味する。三次元情報は、構造物の外観を、1以上の三角形平面(ポリゴン)の二頂点を結ぶ辺で接続された形状で近似して表現している。三次元情報では、構造物表の色を表現するために、各頂点に配色情報が付与される。
【0014】
「オクルージョン」とは、三次元情報を求める上で、ある領域が他の物の陰になって、ステレオセンサ(ラインセンサ、エリアセンサ)に写っていないか、または、三次元情報を得る上で必要な情報が揃っていない状態のことをいう。オクルージョンの領域は、三次元情報にて中空として扱われる。
【0015】
《第1の実施形態》
第1の実施形態の三次元キャプチャ装置では、2台のステレオラインセンサ装置をクロスさせて配置し、被写体を撮影する。三次元キャプチャ装置は、それぞれ結合した画像(計2枚)を生成し、それぞれ2枚の結合画像間でステレオマッチングして視差情報を生成して三次元情報を得る。三次元キャプチャ装置は更に、それぞれで得られた三次元情報を合成することで、1台のステレオラインセンサ装置では取得できない向きの三次元情報を相互に補完する。本実施形態では、エリアセンサでなく、ラインセンサによって、データも膨大にならず、オクルージョンの少ない三次元キャプチャができるようになる。
【0016】
図1は、第1の実施形態に係る三次元キャプチャ装置2の構成図である。
三次元キャプチャ装置2は、ステレオラインセンサ装置11,12と移動量センサ3を含み、キーボード241とマウス242とディスプレイ231とが接続されて構成される。この三次元キャプチャ装置2は、被写体の三次元情報をキャプチャするものであり、例えば汎用のコンピュータに三次元キャプチャプログラムをインストールすることで具現化される。なお、本発明は単一のコンピュータで構成された三次元キャプチャ装置2に限られず、複数の装置が連携して動作する三次元キャプチャシステムとして実現されてもよい。
【0017】
ステレオラインセンサ装置11は、2台のラインセンサ装置11L,11Rを含んで構成される。
ラインセンサ装置11Lは、ラインセンサ111Lと、レンズを含む光学系112Lとを含んで構成される。ラインセンサ装置11Rは、ラインセンサ111Rと、レンズを含む光学系112Rとを含んで構成される。ラインセンサ111L,111Rは、CCD(Charge Coupling Device)またはCMOS(Complementary-MOS)で構成された一次元の撮像素子である。光学系112Lは、ラインセンサ111Lに対して光学像を結像するものである。光学系112Rは、ラインセンサ111Rに対して光学像を結像するものである。
【0018】
ラインセンサ111Lとラインセンサ111Rは、距離Lだけ離間して、その長手方向が同一直線に位置するように配置されている。つまり、ステレオラインセンサ装置11は、複数のラインセンサ111L,111Rが長手方向の同一直線上に配置されている撮影部である。そして光学系112Lの光軸と、光学系112Rの光軸とは平行である。
【0019】
ステレオラインセンサ装置12は、2台のラインセンサ装置12L,12Rを含んで構成される。
ラインセンサ装置12Lは、ラインセンサ121Lと、レンズを含む光学系122Lとを含んで構成される。ラインセンサ装置12Rは、ラインセンサ121Rと、レンズを含む光学系122Rとを含んで構成される。ラインセンサ121L,121Rは、CCDまたはCMOSで構成された一次元の撮像素子である。光学系122Lは、ラインセンサ121Lに対して光学像を結像するものである。光学系122Rは、ラインセンサ121Rに対して光学像を結像するものである。
【0020】
2台のラインセンサ121L,121Rは、距離Lだけ離間して、その長手方向が同一直線に位置するように配置されている。つまり、ステレオラインセンサ装置12は、複数のラインセンサ121L,121Rが長手方向の同一直線上に配置されている撮影部である。そして光学系122Lの光軸と、光学系122Rの光軸とは平行である。
【0021】
移動量センサ3は、ステレオラインセンサ装置11,12に近接して設けられており、これらの光軸方向の被写体の移動量と移動方向とを計測する移動量計測部である。
【0022】
三次元キャプチャ装置2は更に、ラインセンサインタフェース25と、MPU(Micro Processing Unit)21と、メモリ22と、グラフィックインタフェース23と、入力インタフェース24とを含んで構成される。
【0023】
ラインセンサインタフェース25は、ステレオラインセンサ装置11,12との間でデータを送受信するためのインタフェースである。
MPU21は、この三次元キャプチャ装置2を統括制御する処理装置であり、メモリ22をワークエリアとして用いる。メモリ22は、揮発性メモリや不揮発性メモリであり、情報を記憶する記憶部である。
【0024】
グラフィックインタフェース23は、例えばGPU(Graphic Processing Unit)であり、ディスプレイ231に表示される画像を生成する。入力インタフェース24は、マウス242やキーボード241から信号を受信するためのインタフェースであり、例えばシリアル信号コントローラやUSB(登録商標)(Universal Serial BUS)ホストコントローラなどである。
【0025】
本実施形態の三次元キャプチャ装置2は、一次元のラインセンサ111L,111R,121L,121Rによる撮影画像データを処理する。これにより、エリアセンサを採用する場合に比べて比較的小さな画像(データ容量)として扱え、ステレオマッチング処理も軽くなる。また、エリアセンサを採用する場合に比べて、誤差の発生要因を減らすことができる。
【0026】
図2Aは、ステレオラインセンサ装置11,12の配置例を示す平面図である。
ここでステレオラインセンサ装置11は、一次元のラインセンサ111L,111Rが距離Lだけ離間して、その長手方向が同一の直線115に位置するように配置されている。
【0027】
ステレオラインセンサ装置12は、一次元のラインセンサ121L,121Rが距離Lだけ離間して、その長手方向が同一の直線125に位置するように配置されている。ステレオラインセンサ装置11,12は、ラインセンサ111L,111Rの長手方向とラインセンサ121L,121Rの長手方向が交差するように設置されている。
【0028】
直線115と直線125との交点は、ラインセンサ111L,111Rと等距離であり、かつラインセンサ121L,121Rと等距離である。即ち、ラインセンサ111L,111Rとラインセンサ121L,121Rは、同心円上に配置されている。
【0029】
図2Bは、ステレオラインセンサ装置11,12の配置例を示す斜視図である。
ラインセンサ111Lの上方には、光学系112Lが配置されている。ラインセンサ111Rの上方には、光学系112Rが配置されている。光学系112Lの光軸113Lと、光学系112Rの光軸113Rとは平行である。つまり、ステレオラインセンサ装置11は、同一方向を光軸とする光学系112L,112Rを備える。ステレオラインセンサ装置11による被写体4上の視野114は、ラインセンサ111Lを光学系112Lの倍率で拡大し、光軸113Lの方向に射影したものと、ラインセンサ111Rを光学系112Rの倍率で拡大し、光軸113Rの方向に射影したものである。
【0030】
ラインセンサ121Lの上方には、光学系122Lが配置されている。ラインセンサ121Rの上方には、光学系122Rが配置されている。光学系122Lの光軸123Lと、光学系112Rの光軸123Rとは平行である。つまり、ステレオラインセンサ装置12は、同一方向を光軸とする光学系122L,122Rを備える。ステレオラインセンサ装置11による被写体4上の視野124は、ラインセンサ121Lを光学系122Lの倍率で拡大し、光軸123Lの方向に射影したものと、ラインセンサ121Rを光学系122Rの倍率で拡大し、光軸123Rの方向に射影したものである。
【0031】
この構成では、ラインセンサを採用したことによるオクルージョンが、2台のステレオラインセンサ装置11,12により、相互に補完可能となる。なお、光軸113L,113Rと光軸123L,123Rとは、平行であることが望ましい。
【0032】
図3Aは、変形例のステレオラインセンサ装置11,12の配置例を示す平面図である。
ステレオラインセンサ装置11,12は、交差している。直線115と直線125との交点は、ラインセンサ121R,111Lと等距離であり、かつラインセンサ121L,111Rと等距離である。即ち、ラインセンサ121R,111Lは、第1の同心円上に配置されており、ラインセンサ121L,111Rは、第2の同心円上に配置されている。
【0033】
図3Bは、変形例のステレオラインセンサ装置11,12の配置例を示す斜視図である。
ラインセンサ111Lの上方には、光学系112Lが配置されている。ラインセンサ111Rの上方には、光学系112Rが配置されている。光学系112Lの光軸113Lと、光学系112Rの光軸113Rとは平行である。ステレオラインセンサ装置11による被写体4上の視野114は、ラインセンサ111Lを光学系112Lの倍率で拡大し、光軸113Lの方向に射影したものと、ラインセンサ111Rを光学系112Rの倍率で拡大し、光軸113Rの方向に射影したものである。
【0034】
ラインセンサ121Lの上方には、光学系122Lが配置されている。ラインセンサ121Rの上方には、光学系122Rが配置されている。光学系122Lの光軸123Lと、光学系112Rの光軸123Rとは平行である。ステレオラインセンサ装置11による被写体4上の視野124は、ラインセンサ121Lを光学系122Lの倍率で拡大し、光軸123Lの方向に射影したものと、ラインセンサ121Rを光学系122Rの倍率で拡大し、光軸123Rの方向に射影したものである。
【0035】
変形例の構成においても、ラインセンサを採用したことによるオクルージョンが、相互補完可能となる。なお、光軸113L,113Rと光軸123L,123Rとは、平行であることが望ましい。
【0036】
図4は、三次元キャプチャ装置2のブロック図である。
三次元キャプチャ装置2のMPU21(
図1参照)は、不図示の制御プログラムを実行することにより、撮影部51、速度変化補正部52、視差マップ生成部53、点群データ生成部54、点群データ合成部55、三次元メッシュ変換部56、三次元メッシュ表示部57の各部を具現化する。
【0037】
撮影部51は、ステレオラインセンサ装置11,12を制御して撮影データを取得する。速度変化補正部52は、被写体の速度変化に応じて撮影データを補正する。速度変化補正部52は、被写体の移動量に基づき、各撮影部が撮影した撮影データを補正する補正部である。
【0038】
視差マップ生成部53は、ステレオラインセンサ装置11の左右のステレオ画像から視差マップデータを生成し、ステレオラインセンサ装置12の左右のステレオ画像から視差マップデータを生成する。点群データ生成部54は、2つの視差マップデータから、それぞれ点群データを生成する。点群データ合成部55は、2つの点群データを合成する。これにより、視差マップ生成部53は、オクルージョンを補完できる。
【0039】
三次元メッシュ変換部56は、点群データ合成部55が合成した点群データを三次元メッシュデータに変換する。三次元メッシュ表示部57は、三次元メッシュデータを所望の視点からの表示画像に変換して画面に表示する。
【0040】
図5は、三次元キャプチャ装置2が生成する各種データを示す概念図である。
三次元キャプチャ装置2が生成する各種データは、メモリ22に格納されている。
左撮影データ611Lは、撮影部51がラインセンサ111Lによって撮影したデータである。右撮影データ611Rは、撮影部51がラインセンサ111Rによって撮影したデータである。左撮影データ611Lと右撮影データ611Rとは、ステレオ画像を構成する。
【0041】
左撮影データ612Lは、撮影部51がラインセンサ121Lによって撮影したデータである。右撮影データ612Rは、撮影部51がラインセンサ121Rによって撮影したデータである。左撮影データ612Lと右撮影データ612Rとは、ステレオ画像を構成する。
【0042】
移動量ログデータ64は、移動量センサ3が、各撮影タイミングにおける被写体の移動量を計測したデータである。
補正後左撮影データ621Lは、左撮影データ611Lを移動量ログデータ64に基づいて補正したものである。補正後右撮影データ621Rは、右撮影データ611Rを移動量ログデータ64に基づいて補正したものである。
【0043】
補正後左撮影データ622Lは、左撮影データ612Lを移動量ログデータ64に基づいて補正したものである。補正後右撮影データ622Rは、右撮影データ612Rを移動量ログデータ64に基づいて補正したものである。
【0044】
補正後視差マップデータ631は、補正後左撮影データ621Lと補正後右撮影データ621Rとに基づく視差マップのデータである。補正後視差マップデータ632は、補正後左撮影データ622Lと補正後右撮影データ622Rに基づく視差マップのデータである。
【0045】
三次元点群データ651は、補正後視差マップデータ631を三次元の点群データに変換したものである。三次元点群データ652は、補正後視差マップデータ632を三次元の点群データに変換したものである。
合成三次元点群データ66は、三次元点群データ651と三次元点群データ652とを合成したものである。三次元メッシュデータ67は、合成三次元点群データ66を三次元のメッシュデータに変換したものである。
【0046】
図6は、ステレオラインセンサ装置11の動作を示す図である。なお、ステレオラインセンサ装置12も同様に動作する。
本実施形態のラインセンサ111R,111Lは、多くの産業用センサと同様に、外部からのシャッタ同期信号に同期して撮像する。なお、ラインセンサ111R,111Lは、物理的なシャッタ機構に依らず、撮像素子を電子的に制御する電子シャッタにより、撮像を行う。
【0047】
なお、本実施形態のラインセンサ111R,111Lは、1本のケーブルで同期信号の受信と撮影データの送信とを兼用する。なお、これに限られず、同期信号の受信用ケーブルと撮影データの送信用ケーブルとを独立に有してもよい。また、同期信号は、三次元キャプチャ装置2によって生成されなくても、外付けの装置によって生成されてもよい。
【0048】
ラインセンサ111R,111Lは、三次元キャプチャ装置2の撮影部51からの撮影開始指示を行けて、撮影を開始し、撮影画像データを撮影部51へ送信する。そして、ラインセンサ111R,111Lは、三次元キャプチャ装置2の撮影部51からの撮影終了指示を受けて、撮影を終了する。
【0049】
ラインセンサ111R,111Lとは、同期信号の受信により、同時に撮像する。ラインセンサ111R,111Lは、それぞれレンズを有する光学系112R,112Lにより、0度より大きな視野角の平たい視野を有する。
【0050】
ラインセンサ111R,111Lは、一直線上に既定の距離(基線長)を開けて、同じ方向になるように配置されている。ラインセンサ111Rの視野126と、ラインセンサ111Lの視野116とが重複する領域を有する。この重複した領域が、被写体4の三次元情報を得ることができる範囲となる。被写体4の各部位の三次元情報を得る方法は、主に、2台のラインセンサを使った三角測量の原理に基づく。
【0051】
図7Aと
図7Bは、ステレオラインセンサ装置11,12で自動車71を撮影する動作を示す図である。
図7Aは、自動車71の側面図である。
図7Bは、自動車71の背面図である。
図7Aと
図7Bに示すように、ステレオラインセンサ装置11,12は、車体の下側かつ左右のタイヤの内側に配置されている。
【0052】
図8Aと
図8Bは、ステレオラインセンサ装置11,12で列車72を撮影する動作を示す図である。
図8Aと
図8Bに示すように、ステレオラインセンサ装置11,12は、列車72の車体の下側かつ左右の車輪の内側に配置されている。
【0053】
図9は、三次元キャプチャ装置2の動作を示す図である。
速度変化補正部52は、移動量ログデータ64に基づき、左撮影データ611Lを補正した補正後左撮影データ621Lを生成する。速度変化補正部52は、移動量ログデータ64に基づき、右撮影データ611Rを補正した補正後右撮影データ621Rを生成する。
【0054】
速度変化補正部52は、移動量ログデータ64に基づき、左撮影データ612Lを補正した補正後左撮影データ622Lを生成する。速度変化補正部52は、移動量ログデータ64に基づき、右撮影データ612Rを補正した補正後右撮影データ622Rを生成する。
【0055】
視差マップ生成部53は、補正後左撮影データ621Lと補正後右撮影データ621Rから両者の視差を計算し、補正後視差マップデータ631を生成する。
視差マップ生成部53は、補正後左撮影データ622Lと補正後右撮影データ622Rから両者の視差を計算し、補正後視差マップデータ632を生成する。
【0056】
点群データ生成部54は、補正後視差マップデータ631から三次元点群データ651を生成し、補正後視差マップデータ632から三次元点群データ652を生成する。点群データ合成部55は、三次元点群データ651と三次元点群データ652から、合成三次元点群データ66を生成する。
【0057】
三次元メッシュ変換部56は、合成三次元点群データ66から三次元メッシュデータ67を生成する。
【0058】
図10は、三次元キャプチャ装置2の処理を示すフローチャートである。
処理を開始すると、撮影部51は、被写体の移動量を計測し、並行して各ステレオラインセンサ装置11,12による撮影を実行する(ステップS10)。速度変化補正部52は、計測した移動量に基づき、速度変化を補正する(ステップS11)。
【0059】
視差マップ生成部53は、各ステレオラインセンサ装置11,12の左右の撮影データから視差マップを生成する(ステップS12)。点群データ生成部54は、各視差マップから各点群データ生成する(ステップS13)。点群データ合成部55は、各点群データを合成する(ステップS14)。
【0060】
三次元メッシュ変換部56は、合成した点群データを三次元メッシュに変換する(ステップS15)。三次元メッシュ表示部57が、三次元メッシュを表示すると(ステップS16)、
図10の処理を終了する。
【0061】
図11は、撮影処理を示すフローチャートである。この撮影処理は、
図10のステップS10の処理に相当する。
撮影部51は、移動量センサ3へ移動量の計測開始を指示し、メモリ22へ移動量ログデータ64の記録を開始する(ステップS20)。移動量の計測結果は、少なくても、地上平面上の二次元のベクトル値として出力される。ただし、鉛直方向も含んだ三次元ベクトル値として出力されるデバイスであってもよい。
【0062】
撮影部51は、ラインセンサインタフェース25を介して、ステレオラインセンサ装置11,12へシャッタ同期信号の出力を開始させ、撮影開始指示を送信する(ステップS21)。撮影部51は、各ステレオラインセンサ装置11,12から、ラインセンサインタフェース25を介して、撮影データを受信する(ステップS22)。
【0063】
撮影部51は、保存の際に、各ラインセンサの向きに合わせて保存領域を埋めてゆく(ステップS23)。すなわち、撮影部51は、ラインセンサ111Lからのデータを左撮影データ611Lとして保存する。撮影部51は、ラインセンサ111Rからのデータを右撮影データ611Rとして保存する。撮影部51は、ラインセンサ121Lからのデータを左撮影データ612Lとして保存する。撮影部51は、ラインセンサ121Rからのデータを右撮影データ612Rとして保存する。撮影部51は、ブランクまたは重複する画素をバイリニア補完などで補完する(ステップS24)。
【0064】
撮影部51は、ラインセンサインタフェース25を介して、各ラインセンサへ撮影終了指示を送り、シャッタ同期信号の出力を止める(ステップS25)。そして、撮影部51は、移動量センサ3へ計測の終了を指示する(ステップS26)。
【0065】
図12は、各画像データの補正処理を示すフローチャートである。この補正処理は、
図10のステップS11の処理に相当する。
【0066】
速度変化補正部52は、移動量ログデータ64に基づき、左撮影データ611Lと右撮影データ611Rと左撮影データ612Lと右撮影データ612Rを、均一の移動速度で撮った状態に補正する(ステップS30)。速度変化補正部52は、補正の際、ブランクになる領域および重複する領域は、バイリニア補完などで値を補完する(ステップS31)。そして、速度変化補正部52は、各画像データを補正した結果を、補正後画像データとして保存する(ステップS32)。
【0067】
速度変化補正部52は、左撮影データ611Lの画像データを補正した結果を、補正後左撮影データ621Lへ保存し、右撮影データ611Rの画像データを補正した結果を、補正後右撮影データ621Rへ保存し、左撮影データ612Lの画像データを補正した結果を、補正後左撮影データ622Lへ保存し、右撮影データ612Rの画像データを補正した結果を、補正後右撮影データ622Rへ保存する。
【0068】
以上によって、左撮影データ611Lと右撮影データ611Rと左撮影データ612Lと右撮影データ612Rには、縦横ともに、距離に比例するピッチに画素が並ぶ状態なる。
【0069】
図13は、視差マップ生成処理を示すフローチャートである。この処理は、
図10のステップS12の処理に相当する。
視差マップ生成部53は、移動量補正後のステレオ画像で、ステレオマッチング処理を行い視差マップデータを求め(ステップS40)、各視差マップデータをメモリ22に保存する(ステップS41)。
【0070】
ここで視差マップ生成部53は、ステレオラインセンサ装置11からの2つの画像に基づき、各部位の視差情報を求める。そして視差マップ生成部53は、ステレオラインセンサ装置12からの2つの画像に基づき、各部位の視差情報を求める。
【0071】
この方法は、一般的に、2つの画像間で相互に類似部位を探索し、それぞれ類似する位置の差を取って視差とする方法である。この方法では、画像の視差と、ステレオラインセンサ装置内の2個のラインセンサの長手方向の設置位置のズレに基づいて、三角測量の要領で、ラインセンサからの相対位置を三次元の座標値として求めている。
【0072】
図14は、点群データ生成処理を示すフローチャートである。この撮影処理は、
図10のステップS13の処理に相当する。
点群データ生成部54は、各視差マップデータと左右のラインセンサの間隔に基づき、三角測量の計算で、それぞれ点群データを生成し(ステップS50)、生成した点群データをメモリ22に保存して(ステップS51)、
図14の処理を終了する。
【0073】
図15は、合成点群データ生成処理を示すフローチャートである。この撮影処理は、
図10のステップS14の処理に相当する。
点群データ合成部55は、複数の三次元点群データ651,652をマージする(ステップS60)。このマージは、両方の点群データが有する点群データを合成することを意味する。点群データ合成部55は、マージした合成三次元点群データ66をメモリ22に保存すると(ステップS61)、
図15の処理を終了する。
【0074】
図16は、三次元メッシュデータ生成処理を示すフローチャートである。この処理は、
図10のステップS15の処理に相当する。
三次元メッシュ変換部56は、合成三次元点群データ66に基づき、それらを包含する三次元メッシュデータ67を生成する(ステップS70)。点群データからメッシュを求めるため、三次元メッシュ変換部56は、近くの頂点から三角形を形成して、一辺を共有する三角形を近くの頂点を用いて形成する。以下同様に繰り返して、構造物の形状を模した、三角形の集合(メッシュ)である三次元メッシュデータ67を得ることができる。
そして三次元メッシュ変換部56は、三次元メッシュデータ67をメモリ22に保存すると(ステップS71)、
図16の処理を終了する。
【0075】
図17は、三次元メッシュデータの表示処理を示すフローチャートである。この処理は、
図10のステップS16の処理に相当する。
三次元メッシュ表示部57は、キーボード241やマウス242の入力によって視点座標を定める(ステップS80)。そして三次元メッシュ表示部57は、三次元メッシュデータ67のうち視点座標と注目点座標の視野に入る部分を、パースペクティブ表示でディスプレイに表示する(ステップS81)。
【0076】
三次元メッシュデータ67から、パースペクティブ表示を得る方法として、グラフィックインタフェース23のうち大半のものに搭載される三次元描画機能、例えばOpenGL(登録商標)やValkanやMetalなどを使用するのが一般的である。
【0077】
《第1の実施形態の効果》
第1の実施形態によれば、撮影された構造物の1点に対して、2つの視点からの画像が得られるため、ステレオマチングによる三次元化が可能となり、画像データの削減と処理時間の短縮が期待できる。
【0078】
更に、2台のラインセンサのステレオマッチングにより、マッチング対象が、1軸(1次元)で済む分、精度の向上の期待ができる。ステレオラインセンサ1台では、ラインセンサに垂直方向にオクルージョンが発生するが、交差した2台のステレオラインセンサにより、オクルージョンを相互補完で削減できる。
【0079】
また、本実施形態では、エリアセンサでなくラインセンサによって画像を得ている、データも膨大にならず、オクルージョンの少ない三次元キャプチャができる。
【0080】
《第2の実施形態》
第2の実施形態では、3台以上のステレオラインセンサをそれぞれ異なる向きに配置にし、ラインセンサの撮影画像から速度変化を推定し、画像データを補正可能としている。
【0081】
図18は、第2実施形態のステレオラインセンサ装置11,12,13の配置例を示す平面図である。
第2の実施形態のステレオラインセンサ装置11,12,13は、60度の角度で交差している。
【0082】
ステレオラインセンサ装置11は、一次元のラインセンサ111L,111Rが距離Lだけ離間して、その長手方向が同一の直線115に位置するように配置されている。
ステレオラインセンサ装置12は、一次元のラインセンサ121L,121Rが距離Lだけ離間して、その長手方向が同一の直線125に位置するように配置されている。
ステレオラインセンサ装置13は、一次元のラインセンサ131L,131Rが距離Lだけ離間して、その長手方向が同一の直線135に位置するように配置されている。
【0083】
これら直線115,125,135の交点は、ラインセンサ111L,111Rと等距離であり、ラインセンサ121L,121Rと等距離であり、かつラインセンサ131L,131Rと等距離である。即ち、ラインセンサ111L,111Rとラインセンサ121L,121Rとラインセンサ131L,131Rは、同心円上に配置されている。
【0084】
図19は、変形例のステレオラインセンサ装置11,12,13の配置例を示す平面図である。
ステレオラインセンサ装置11,12と、ステレオラインセンサ装置12,13と、ステレオラインセンサ装置13,11とは、それぞれ交差している。
【0085】
直線115と直線125との交点と、直線125と直線135との交点と、直線135と直線115との交点は、正三角形の頂点に位置している。これによりラインセンサ111L,111Rと、ラインセンサ121L,121Rと、ラインセンサ131L,131Rは、同心円上に配置される。この配置だと、被写体の移動方向が何れであっても、ステレオラインセンサ装置11,12,13のうち何れか2つは、移動方向とは異なる方向にスキャン可能である。よって、ステレオラインセンサ装置11,12,13のうち2台により、移動量センサ無しでも移動量の計測が可能となり、かつ三次元キャプチャが可能となる。
【0086】
図2Aや
図3Aに示した2台のステレオラインセンサ装置11,12では、何れか一方が被写体の移動方向と平行となる場合がある。このとき、ステレオラインセンサ装置11,12は、正しく三次元キャプチャできず、死角となるおそれがある。三次元キャプチャシステムを、それぞれ異なる角度で配置した3台以上のステレオラインセンサ装置11,12,13で構成することにより、この死角をなくすことができる。
【0087】
図20は、第2の実施形態に係る三次元キャプチャ装置2のブロック図である。
三次元キャプチャ装置2のMPU21(
図1参照)は、不図示の制御プログラムを実行することにより、第1の実施形態と同様な撮影部51、速度変化補正部52、視差マップ生成部53、点群データ生成部54、点群データ合成部55、三次元メッシュ変換部56、三次元メッシュ表示部57の各部と、移動量推定部58とを具現化する。
【0088】
移動量推定部58は、撮影データに基づき、被写体の移動量を推定して移動量ログデータ641を生成する。本実施形態では、ステレオラインセンサ装置11,12,13のうち2台の画像データから、移動量を推定しているので、移動量センサ3が不要となり、コスト低減が期待できる。
【0089】
図21は、三次元キャプチャ装置2が生成する各種データを示す概念図である。
三次元キャプチャ装置2は、第1の実施形態と同様なデータに加え、視差マップ生データ681,682と、正射影生画像データ691,692とを生成している。
【0090】
《移動量推定の説明》
ここでは、3台のステレオラインセンサ装置11,12,13のうち、ステレオラインセンサ装置11,12の画像を使用するものとして説明する。
【0091】
移動量推定部58は、ステレオラインセンサ装置11,12からの生画像データで、視差マップ生データ681,682を生成して保存する。この時、視差マップ生データ681,682は、横軸を距離とし、縦軸を時間とする画像となる。
移動量推定部58は、2台のステレオラインセンサ装置11,12のどちらを基準としてもよい。
図22Aと
図22Bでは、1台目のステレオラインセンサ装置11の視野114を基準にして、ステレオラインセンサ装置12の視野124に基づいて、被写体の移動量を推定する処理を説明している。ここで白色矩形は、被写体の特徴部である。
【0092】
図22Aは、被写体の移動量を計測する方法を説明する平面図である。
図22Bは、被写体の移動量を計測する方法を説明する斜視図である。
1台目のステレオラインセンサ装置11が、或る時間に被写体の特徴部を検出し、ステレオラインセンサ装置12が、所定時間経過後にこの特徴部を検出したことを示している。ステレオラインセンサ装置11の視野114と、ステレオラインセンサ装置12の視野124とその交差角度は既知であるため、被写体の特徴部の検出により、これらを式(1)に代入することで、その被写体の移動距離L
i,jを算出できる。
【0093】
【0094】
ここに、αL,αU,βL,βUは、1台目のステレオラインセンサ装置11と2台目のステレオラインセンサ装置12の設置位置と向きから決まる係数である。
【0095】
図23は、被写体の移動量を計測する方法を説明する図である。
例えば、正射影表示に変換された正射影生画像データ691内の規定数の画素ブロックに着目し、その画素ブロックと相関が高いブロックを、正射影生画像データ692内で検索する。随時、正射影生画像データ691と、正射影生画像データ692とを検索していくことで、2台のステレオラインセンサ装置11,12の位置関係と、特徴部分の画像内位置から、その特徴部分の移動時間と移動距離が求まる。
【0096】
ここで、tL
iは、正射影生画像データ692にて2つの特徴部分602L,602Rを検知した時刻である。xL
i,Jは、特徴部分602Rを検出した座標である。xL
i,J+1は、特徴部分602Lを検出した座標である。
【0097】
tU
i,jは、正射影生画像データ692にて右側の特徴部分601Rを検知した時刻である。なお、特徴部分601Rは、正射影生画像データ692の特徴部分602Rに対応している。xU
i,Jは、特徴部分601Rを検出した座標である。
【0098】
tU
i,j+1は、左側の特徴部分601Lを検知した時刻である。なお、特徴部分601Lは、正射影生画像データ692の特徴部分602Lに対応している。xU
i,J+1は、左側の特徴部分601Lを検出した座標である。
【0099】
この距離と特徴部分の座標および検出時刻を式(2)に代入することで、この座標に係る移動速度V
i,jを計測できる。なお、移動速度は、ラインごとに平均または加重平均をとることが望ましい。
【数2】
【0100】
式(3)により、各ラインの速度から被写体の移動量V
iを求める。
【数3】
【0101】
この被写体の移動量Viを、移動量ログデータ641へ保存する。これにより、移動量センサ3を不要とすることができる。
【0102】
図24は、被写体の移動量の計測処理を示すフローチャートである。
視差マップ生成部53は、各左右撮影データをステレオマッチング処理して、ステレオラインセンサ装置ごとの視差マップデータを生成する(ステップS90)。そして視差マップ生成部53は、生成された視差マップデータから、ステレオラインセンサ装置ごとの正射影の画像を生成し(ステップS91)、生成した正射影の画像を、ステレオラインセンサ装置ごとの視差マップ生データとして保存する(ステップS92)。
【0103】
移動量推定部58は、一方の視差マップ生データの規定数の画素ブロックに着目し、その画素ブロックと相関が高い画素ブロックを、他方の視差マップ生データ)内で検索し、画像内の距離を求める(ステップS93)。そして移動量推定部58は、各画像ブロックの画像内の距離と、2台のステレオラインセンサ装置の視野の位置関係から、その画素ブロック間の所要時間を求める(ステップS94)。
【0104】
移動量推定部58は、各ラインの各画素について既知の距離を所要時間で除算して速度を求め(ステップS95)、各画素から計算した速度の平均を求めて各ラインの速度とする(ステップS96)。そして移動量推定部58は、各ラインの速度から移動量を求めると(ステップS97)、
図24の処理を終了する。
【0105】
また、以下に変形例を記載する。三次元合成処理にて、2台のステレオラインセンサ装置からの生成された点群データを光軸方向に正射影し、それぞれ二次元画像に変換する。2台のステレオラインセンサ装置の間には位置のズレがある。そのずれを、2枚の二次元画像間の相関をとって求め、一方の点群データの座標値へ反映して位置ずれを解消する。位置ずれの解消後、2つの点群データを、1つの点群データとして扱えるように、メモリ22へ保存する。この変形例の処理でも、移動量センサなしに移動量を計測可能である。
【0106】
第2の実施形態によれば、専用の速度計測デバイスが不要であり、コスト低減が期待できる。
【0107】
本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば上記した実施形態は、本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることも可能である。
【0108】
上記の各構成、機能、処理部、処理手段などは、それらの一部または全部を、例えば集積回路などのハードウェアで実現してもよい。上記の各構成、機能などは、プロセッサがそれぞれの機能を実現するプログラムを解釈して実行することにより、ソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイルなどの情報は、メモリ、ハードディスク、SSD(Solid State Drive)などの記録装置、または、フラッシュメモリカード、DVD(Digital Versatile Disk)などの記録媒体に置くことができる。
【0109】
各実施形態に於いて、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には、殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【0110】
11,12,13 ステレオラインセンサ装置
11L,11R,12L,12R,13L,13R ラインセンサ装置
111L,111R,121L,121R,131L,131R ラインセンサ
112L,112R,122L,122R 光学系
113L,113R,123L,123R 光軸
114、116,124、126 視野
115,125,135 直線
2 三次元キャプチャ装置
21 MPU
22 メモリ
23 グラフィックインタフェース
24 入力インタフェース
241 キーボード
242 マウス
231 ディスプレイ
25 ラインセンサインタフェース
3 移動量センサ
4 被写体
41 目標
51 撮影部
52 速度変化補正部
53 視差マップ生成部
54 点群データ生成部
55 点群データ合成部
56 三次元メッシュ変換部
57 三次元メッシュ表示部
58 移動量推定部
611L 左撮影データ
611R 右撮影データ
621L 補正後左撮影データ
621R 補正後右撮影データ
612L 左撮影データ
612R 右撮影データ
622L 補正後左撮影データ
622R 補正後右撮影データ
631,632 補正後視差マップデータ
681,682 視差マップ生データ
691,692 正射影生画像データ
64,641 移動量ログデータ
651,652 三次元点群データ
66 合成三次元点群データ
67 三次元メッシュデータ
7 被写体
71 自動車
72 列車