説明

距離画像カメラを用いた物体寸法測定方法および物体寸法測定装置

【課題】距離画像カメラを配置するだけで、カメラの解像度を超える寸法測定精度を実現可能な物体寸法測定方法および物体寸法測定装置を提供する。
【解決手段】載置面に何も載置されていない状態で撮像して第1距離画像を取得する第1撮像工程と、前記第1距離画像に基づいて前記載置面の方程式を算出する載置面方程式算出工程と、前記載置面に載置された直方体の少なくとも上面が写るように撮像して第2距離画像を取得する第2撮像工程と、前記第2距離画像に基づいて前記上面の方程式を算出する上面方程式算出工程と、この上面方程式算出工程で方程式が算出された前記上面を前記第2距離画像の中で前記載置面に射影し、前記載置面を回転させながら前記上面の射影の横軸方向および縦軸方向の各範囲幅の合計値をそれぞれ算出して、最小となった回転角度での合計値を前記上面の隣接する2辺の寸法の合計値として算出する寸法算出工程とを含む。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、距離画像カメラを用いた物体寸法測定方法および物体寸法測定装置に関し、特に、段ボール箱などの直方体形状の物体を距離画像カメラを用いて撮像し、この距離画像カメラの解像度を超えた精度での物体寸法測定を実現可能な物体寸法測定方法、およびそのような物体寸法測定方法が適用されている物体寸法測定装置に関する。
【背景技術】
【0002】
従来、ベルトコンベアなどの物流機器を制御する上で、流路内を通過する被検出物を撮像して、その画像を処理することで、被検出物の寸法や姿勢、被検出物間の距離情報を取得できる物流情報読取り装置が提案されている(例えば、特許文献1参照)。
【0003】
この物流情報読取り装置では、情報収集手段としてCCDカメラ等による撮像手段と、超音波等による距離センサを用い、撮像手段によって得られたデジタル画像を、距離センサにより得られたデータを用いつつ画像処理することによって物流制御に必要なデータを収集・解析する。これにより、被検出物の通過時間を待つことなく瞬時に被検出物の寸法や姿勢、被検出物間の距離情報を取得することができ、かつ、その結果を同時に外部に出力できる。
【0004】
また、三次元形状の大まかな大きさを簡単に計測できる三次元形状表示装置も提案されている(例えば、特許文献2参照)。
【0005】
その他、対象物の濃淡画像と距離画像との少なくとも一方を用いてその対象物のエッジを抽出してその形状を推定するとともに、距離画像内での計測点に対応する部位の三次元位置から2個の計測点に対応する部位間の実寸を求めることが可能な計測装置も提案されている(例えば、特許文献3参照)。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2000−171215号公報
【特許文献2】特開2004−102979号公報
【特許文献3】特開2006−153771号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
これらの従来技術によって段ボール箱の寸法を精密に測定しようとすると、特許文献1に記載の技術では非常に大がかりで複雑なものになってしまい、コストアップや設置場所などの点でも問題が多い。特許文献2に記載の技術は、あくまでも簡易的な計測のためのものであって、寸法の精密な測定には不向きである。特許文献3に記載の技術では、距離画像などから対象物のエッジを抽出しているため、寸法の測定精度が撮像装置の解像度によって大きく制約されてしまう。
【0008】
従来技術のこのような課題に鑑み、本発明の目的は、段ボール箱などの寸法測定を行う場合に、特別な配置治具などを必要とせずに距離画像カメラを配置するだけでよく、しかもその距離画像カメラの解像度を超える寸法測定精度を実現可能な物体寸法測定方法および物体寸法測定装置を提供することである。
【課題を解決するための手段】
【0009】
上記目的を達成するため、本発明の距離画像カメラを用いた物体寸法測定方法は、載置面に何も載置されていない状態でこの載置面が写るように撮像して第1距離画像を取得する第1撮像工程と、前記第1距離画像に基づいて前記載置面の方程式を算出する載置面方程式算出工程と、前記載置面に載置された直方体の少なくとも上面が写るように撮像して第2距離画像を取得する第2撮像工程と、前記第2距離画像に基づいて前記上面の方程式を算出する上面方程式算出工程と、この上面方程式算出工程で方程式が算出された前記上面を前記第2距離画像の中で前記載置面若しくは前記載置面と平行な平面に射影し、その射影がなされた面を回転させながら前記上面の射影の横軸方向および縦軸方向の各範囲幅の合計値をそれぞれ算出して、算出された合計値が最小となる回転角度を探索し、最小となった合計値を前記上面の隣接する2辺の寸法の合計値として算出する寸法算出工程とを含むことを特徴とする。
【0010】
このような構成の距離画像カメラを用いた物体寸法測定方法によれば、段ボール箱などの寸法測定を行う場合に、特別な配置治具などを必要とせずに距離画像カメラを配置するだけでよく、しかも、段ボール箱の横幅および奥行きの合計値については距離画像カメラの解像度を超える寸法測定精度を実現することができる。
【0011】
あるいは、本発明の距離画像カメラを用いた物体寸法測定方法は、載置面に何も載置されていない状態でこの載置面が写るように撮像して第1距離画像を取得する第1撮像工程と、前記第1距離画像に基づいて前記載置面の方程式を算出する載置面方程式算出工程と、前記載置面に載置された直方体の上面と前面と該上面および該前面のいずれにも隣接する第1側面とが写るように撮像して第2距離画像を取得する第2撮像工程と、前記第2距離画像に基づいて前記上面、前記前面および前記第1側面の各方程式を算出する3面方程式算出工程と、前記第2距離画像の中で前記第1側面をその法線方向にずらしていき、前記上面で前記第1側面とは反対側の辺および前記前面で前記上面で前記第1側面とは反対側の辺と最も適合する位置に基づいて前記直方体の第2側面の方程式を算出する第2側面方程式算出工程と、前記第2距離画像の中で前記前面をその法線方向にずらしていき、前記上面で前記前面とは反対側の辺および前記第1側面で前記前面とは反対側の辺と最も適合する位置に基づいて前記直方体の後面の方程式を算出する後面方程式算出工程と、算出された前記載置面、前記上面、前記前面、前記第1側面、前記第2側面および前記後面それぞれの方程式に基づき、各面の交線を求め、さらにそれらの交点を求めることで、前記直方体の横幅、奥行きおよび高さを算出する寸法算出工程とを含むことを特徴とする。
【0012】
このような構成の距離画像カメラを用いた物体寸法測定方法によれば、段ボール箱などの寸法測定を行う場合に、特別な配置治具などを必要とせずに距離画像カメラを配置するだけでよく、しかも、距離画像カメラの解像度を超える寸法測定精度を実現することができる。
【0013】
あるいは、本発明の距離画像カメラを用いた物体寸法測定方法は、載置面に何も載置されていない状態でこの載置面と横断面L字型の配置治具の直交する第1内壁面および第2内壁面とが写るように撮像して第1距離画像を取得する第1撮像工程と、前記第1距離画像に基づいて前記載置面、前記第1内壁面および前記第2内壁面の各方程式を算出する載置面・壁面方程式算出工程と、前記第1内壁面および前記第2内壁面にも圧接するように前記載置面に載置された直方体の上面と前面と該上面および該前面のいずれにも隣接する第1側面とが写るように撮像して第2距離画像を取得する第2撮像工程と、前記第2距離画像に基づいて前記上面、前記前面および前記第1側面の各方程式を算出する3面方程式算出工程と、算出された前記載置面、前記上面、前記前面、前記第1側面、前記第1内壁面および前記第2内壁面それぞれの方程式に基づき、各面の交線を求め、さらにそれらの交点を求めることで、前記直方体の横幅、奥行きおよび高さを算出する寸法算出工程とを含むことを特徴とする。
【0014】
このような構成の距離画像カメラを用いた物体寸法測定方法によれば、段ボール箱などの寸法測定を行う場合に、横断面L字型の配置治具と距離画像カメラを配置するだけでよく、しかも、距離画像カメラの解像度を超える寸法測定精度を実現することができる。
【0015】
また、本発明の距離画像カメラを用いた物体寸法測定方法において、前記載置面方程式算出工程または前記載置面・壁面方程式算出工程で複数の平面の存在が推定される場合には、最も広い平面を前記載置面とみなしてその方程式を算出することを特徴としてもよい。
【0016】
このような構成の距離画像カメラを用いた物体寸法測定方法によれば、距離画像カメラに対して床面指定のためのパラメータ入力などが不要となる。
【0017】
また、本発明の距離画像カメラを用いた物体寸法測定方法において、前記第2距離画像に基づいて、前記直方体の各エッジを検出し、その検出結果に基づいて前記直方体の横幅、奥行きおよび高さを算出する概略寸法算出工程をさらに含んでもよい。
【0018】
あるいは、本発明の距離画像カメラを用いた物体寸法測定方法は、載置面に載置された直方体の上面と前面と該上面および該前面のいずれにも隣接する側面とが写るように撮像して距離画像を取得する撮像工程と、前記距離画像に基づいて前記載置面、前記上面、前記前面および前記側面の方程式をそれぞれ算出する4面方程式算出工程と、この4面方程式算出工程で算出された各方程式から少なくとも前記上面、前記前面および前記側面相互の交線を求め、さらにそれらの交点を求めることで、前記直方体の横幅、奥行きおよび高さを算出する寸法算出工程とを含むことを特徴とする。
【0019】
このような構成の距離画像カメラを用いた物体寸法測定方法によれば、段ボール箱などの寸法測定を行う場合に、特別な配置治具などを必要とせずに距離画像カメラを配置するだけでよく、しかも、距離画像カメラの解像度を超える寸法測定精度を実現することができる。
【0020】
あるいは、上記目的を達成するため、本発明の物体寸法測定装置は、画素値に距離情報を取得して距離画像を生成可能な撮像素子と、この距離画像における画像処理を行う画像処理ユニットとを備え、前記画像処理ユニットにおける前記画像処理で、上述したいずれかの距離画像カメラを用いた物体寸法測定方法が実行されることを特徴とする。
【0021】
このような構成の物体寸法測定装置によれば、段ボール箱などの寸法測定を行う場合に、専ら距離画像カメラを配置するだけでよく、しかも、距離画像カメラの解像度を超える寸法測定精度を実現することができる。
【発明の効果】
【0022】
本発明の距離画像カメラを用いた物体寸法測定方法および物体寸法測定装置によれば段ボール箱などの寸法測定を行う場合に、専ら距離画像カメラを配置するだけでよく、しかも、距離画像カメラの解像度を超える寸法測定精度を実現することができる。
【図面の簡単な説明】
【0023】
【図1】本発明の一実施形態に係る距離画像カメラ10の概略構成を示すブロック図である。
【図2】距離画像カメラ10によって段ボール箱20を撮像する場合のこれらの位置関係の説明図である。
【図3】距離画像カメラ10による段ボール箱20の撮像結果が外部のディスプレイ15に表示されている一例の説明図である。
【図4】距離画像カメラ10によって実際に段ボール箱20を撮像して取得した距離画像の一例である。
【図5】段ボール箱20の各面の位置関係などの説明図である。
【図6】上面21と仮定された平面を、距離画像DIA3の中の床面30に射影したときの矩形領域Rを示す説明図であり、図6(a)は矩形領域Rが縦軸および横軸に対してやや傾いている場合を示し、図6(b)は矩形領域Rが縦軸および横軸に対して傾いていない場合を示す。
【図7】段ボール箱20の左側面22とは反対側の右側面25の方程式の算出の説明図である。
【図8】段ボール箱20の前面23とは反対側の後面26の方程式の算出の説明図である。
【図9】距離画像カメラ10の解像度を超える寸法測定精度を実現できることの説明図である。
【図10】段ボール箱20の位置決めができる横断面L字型の配置治具40の説明図である。
【図11】距離画像カメラ10に内蔵されているイメージセンサ11によって取得される3次元データ構造の説明図である。
【図12】外積についての説明図である。
【図13】距離画像における平面推定方法の概略を示すフローチャートである。
【図14】図14(a)はX方向に並んでいる各行の隣接2画素毎に3次元データを平均化する演算の説明図であり、図14(b)は千鳥格子状配置に変換した変換後3次元データの説明図である。
【図15】図15(a)はX方向に並んでいる各行の隣接2画素毎に3次元データを平均化する別の演算の説明図である。図15(b)はその変換後3次元データの説明図である。
【図16】千鳥格子状配置の3次元データに変換しない場合における着目三角形の決め方の説明図である。
【図17】小三角形TS1に着目して平面候補探索などを行う処理の説明図である。
【図18】大三角形TL1に着目して平面候補探索などを繰り返す処理の説明図である。
【図19】平面候補探索で着目する三角形の大きさをさらに拡大した場合の説明図である。
【図20】図13に示した距離画像における平面推定方法による作用効果の説明図である。
【図21】図13に示した距離画像における平面推定方法による別の作用効果の説明図である。
【図22】平面候補探索の候補漏れに対する処理の説明図である。
【発明を実施するための形態】
【0024】
以下、本発明の実施形態を、図面を参照して説明する。
【0025】
< 距離画像カメラ10の概略構成など >
図1は、本発明の一実施形態に係る距離画像カメラ10の概略構成を示すブロック図である。なお、この距離画像カメラ10は、段ボール箱20などの直方体の物体寸法測定装置としても機能する。
【0026】
この図1に示すように、距離画像カメラ10は、対象空間へ投射した光が反射されて戻ってくるまでの時間に基づいて画素値に距離データを取得して距離画像を生成することが可能なイメージセンサ11(例えば、TOFセンサなど)と、段ボール箱20を撮像した距離画像から段ボール箱20の寸法を測定したり距離画像における平面の推定(詳細は後述)などを行う画像処理ユニット12と、距離画像カメラ10全体の制御などを行う制御ユニット13(例えば、CPU)を備えている。
【0027】
また、距離画像カメラ10は外部のディスプレイ15に接続されており、距離画像カメラ10で撮像した距離画像などをこのディスプレイ15に表示することができる。
【0028】
図2は、距離画像カメラ10によって段ボール箱20を撮像する場合のこれらの位置関係の説明図である。図3は、この距離画像カメラ10による段ボール箱20の撮像結果が外部のディスプレイ15に表示されている一例の説明図である。
【0029】
図2に示すように、直方体形状の段ボール箱20が載置される床面30などの斜め上方に距離画像カメラ10が設置される。このとき、図3に示すように、段ボール箱20の上面21および前面23とこれらの面のいずれにも隣接する側面(例えば左側面)22とが、距離画像カメラ10の撮像画角内にすべて写るようにすることが好ましい。
【0030】
なお、段ボール箱20について測定すべき寸法とは、横幅W(上面21および前面23などの横幅でもある)、奥行きD(上面21および左側面22などの奥行きでもある)、および高さH(左側面22および前面23などの高さでもある)の3つである。
【0031】
図4は、距離画像カメラ10によって実際に段ボール箱20を撮像して取得した距離画像の一例である。ただし、この場合の距離画像カメラ10と段ボール箱20との位置関係は図2の場合とは異なっているため、図3とは段ボール箱20の位置や向きなどが違っていることに留意されたい。
【0032】
また、室内が暗い場合など、通常のイメージセンサで撮像された可視光による画像では、段ボール箱20と床面30やその周囲などとの境界が不鮮明となることもある。これに対して、距離画像カメラ10によって撮像された距離画像では、図4に示すように、床面30に載置された段ボール箱20の表面が明確に浮かび上がる。
【0033】
< 段ボール箱20の寸法測定方法(A)>
(A1)床面30に何も載置されていない状態での距離画像の取得
まず、距離画像カメラ10の設置後などに、載置面としての床面30に何も載置されていない状態でこの床面30が写るように撮像し、距離画像DIA1を取得しておく。
【0034】
ここでは、段ボール箱20を床面30に直接載置することを想定しているが、載置面は床面30には限られない。例えば、段ボール箱20を載置するための専用台などを設けてもよいが、その場合はその専用台の上面が載置面となる。
【0035】
(A2)距離画像DIA1に基づく演算で床面30の方程式を算出
上記(A1)で取得された距離画像DIA1に基づいて、床面30を表す方程式を算出する。距離画像から床面30などの平面の方程式を推定して算出するには、例えば、従来技術で用いられているハフ変換などを用いることができる。あるいは、後述する方法によって平面候補などを探索することなどによって平面を推定してもよい。
【0036】
推定される平面が1つのみであればそれが床面30に相当する。一方、複数の平面の存在が推定される場合には、例えば、最も広い平面を自動的に床面30とみなすようにしてもよい。あるいは、それらの複数の平面をディスプレイなどに表示するとともに、使用者のマウスやキーボードなどによる外部操作によっていずれの平面が床面30であるかを手動で選択できるようにしてもよい。
【0037】
なお、このようにして定められた床面30を表す平面の方程式に基づいて、空間中の距離画像カメラ10の設置場所や撮像方向の角度などを演算して、カメラ座標系である距離画像DIA1を、床面30をZ軸の原点とする座標系に変換してもよい。このときは、床面30が基準平面(高さ=0)となる。
【0038】
(A3)床面30に段ボール箱20が載置された状態での距離画像の取得
次に、載置面としての床面30に、段ボール箱20を少なくともその上面21が距離画像カメラ10に写るように載置した状態で撮像し、距離画像DIA3を取得する。
【0039】
ここで、段ボール箱20の上面21、前面23、左側面22の位置関係は図3を参照して説明した通りであるが、距離画像カメラ10に写らない他の面についての位置関係は図5に示す通りである。すなわち、上面21に対向するのが底面24であり、左側面22に対向するのが右側面25であり、前面23に対向するのが後面26である。
【0040】
(A4)距離画像DIA3に基づく演算で段ボール箱20の上面21の方程式を算出
上記(A3)で取得された距離画像DIA3に基づいて、同様に平面の推定を行ってそれぞれの方程式を算出する。
【0041】
このようにして方程式が求められた所定面積以上の複数の平面のうちで、上記(A2)で定められた床面30に相当するものを除いた上で、この床面30と最も平行に近い平面を選び出し、その平面を段ボール箱20の上面21と仮定する。
【0042】
(A5)段ボール箱20の上面21の横幅Wおよび奥行きDを算出
上記(A4)で上面21と仮定された平面を、距離画像DIA3の中の床面30(高さ=0)に射影すると、その射影は、例えば、図6(a)に示す矩形領域Rのようになる。なお、このような射影をするのは必ずしも底面30には限らず、例えば、底面30と平行な別平面にしてもよい。
【0043】
そして、距離画像DIA3の中の床面30を横軸方向にスキャンして矩形領域Rの範囲幅(横幅Wに相当)を算出するとともに、縦軸方向にもスキャンして矩形領域Rの範囲幅(奥行きDに相当)を算出する。ところが、図6(a)に示したような場合では、矩形領域Rは縦軸および横軸に対してやや傾いているので、横幅Wおよび奥行きDは矩形領域R本来の値よりもそれぞれ大きく算出されてしまう。
【0044】
そこで、距離画像DIA3中で床面30を少しずつ回転させながら、同様にして矩形領域Rの横幅Wおよび奥行きDを算出し、横幅Wおよび奥行きDの和(=W+D)が最小値となる角度を探索する。具体的には、縦軸および横軸のうちで傾きが少ない方の軸に対して、例えば、1度ずつ回転したことに相当する座標変換処理を行いながら矩形領域Rの横幅Wおよび奥行きDを算出することを繰り返し、回転角度が45度に達するまで続ける。
【0045】
横幅Wおよび奥行きDの和(=W+D)が最小値となった角度では、矩形領域Rは図6(b)に示すようになっており、横幅Wおよび奥行きDの和(=W+D)は矩形領域R本来の値にほぼ等しい。単に距離画像DIA3中で検出された物体と周囲との境界(エッジ)を認識して物体の寸法を測定する方法では、その測定精度は距離画像DIA3の解像度に制約されてしまう。これに対して、上記方法による寸法測定であれば、より高い精度が実現される。
【0046】
なお、床面30の方程式および上面21の方程式がわかったことで、段ボール箱20の高さHも算出することができる。
【0047】
< 段ボール箱20の寸法測定方法(B)>
(B1)床面30に何も載置されていない状態での距離画像の取得
上記(A1)と同様に、まず、距離画像カメラ10の設置後などに、載置面としての床面30に何も載置されていない状態でこの床面30が写るように撮像し、距離画像DIB1を取得しておく。
【0048】
(B2)距離画像DIB1に基づく演算で床面30の方程式を算出
上記(A2)と同様に、上記(B1)で取得された距離画像DIB1に基づいて、床面30を表す方程式を算出する。距離画像から床面30などの平面の方程式を推定して算出するには、例えば、従来技術で用いられているハフ変換などを用いることができる。あるいは、後述する方法によって平面候補などを探索することなどによって平面を推定してもよい。
【0049】
推定される平面が1つのみであればそれが床面30に相当する。一方、複数の平面の存在が推定される場合には、例えば、最も広い平面を自動的に床面30とみなすようにしてもよい。あるいは、それらの複数の平面をディスプレイなどに表示するとともに、使用者のマウスやキーボードなどによる外部操作によっていずれの平面が床面30であるかを手動で選択できるようにしてもよい。
【0050】
なお、このようにして定められた床面30を表す平面の方程式に基づいて、空間中の距離画像カメラ10の設置場所や撮像方向の角度などを演算して、カメラ座標系である距離画像DIB1を、床面30をZ軸の原点とする座標系に変換してもよい。このときは、床面30が基準平面(高さ=0)となる。
【0051】
(B3)床面30に段ボール箱20が載置された状態での距離画像の取得
次に、載置面としての床面30に、段ボール箱20の上面21、前面23およびこれらの面のいずれにも隣接する側面(例えば左側面)22とが、距離画像カメラ10に写るように載置した状態で撮像し、距離画像DIB3を取得する。
【0052】
(B4)距離画像DIB3に基づく演算で段ボール箱20の3面の方程式を算出
上記(B3)で取得された距離画像DIB3に基づいて、同様に平面の推定を行ってそれぞれの方程式を算出する。
【0053】
このようにして方程式が求められた所定面積以上の複数の平面のうちで、上記(B2)で定められた床面30に相当するものを除いた上で、この床面30と最も平行に近い平面を選び出し、その平面を段ボール箱20の上面21と仮定する。さらに、この上面21も除いた残りの平面から床面30および上面21のいずれにほぼ直交する2つの平面を選び出して、それらを前面23および左側面22と仮定する。
【0054】
(B5)段ボール箱20の左側面22とは反対側の右側面25の方程式を算出
左側面22とは反対側の右側面25の方程式については、図7に示すように、上記(B4)で左側面22と仮定された平面と、上面21と仮定された平面で左側面22とは反対側の辺21rおよび前面23と仮定された平面で左側面22とは反対側の辺23r付近の距離画像DIB3における測定値を用いて、右側面25の方程式を算出する。
【0055】
具体的には、距離画像DIB3の中で左側面22をその法線方向にずらしていき、辺21rおよび辺23rとのフィッティングを行って最も適合する位置を求めればよい。
【0056】
(B6)段ボール箱20の前面23とは反対側の後面26の方程式を算出
前面23とは反対側の後面26の方程式については、図8に示すように、上記(B4)で前面23と仮定された平面と、上面21と仮定された平面で前面23とは反対側の辺21bおよび左側面22と仮定された平面で前面23とは反対側の辺22b付近の距離画像DIB3における測定値を用いて、後面26の方程式を算出する。
【0057】
具体的には、距離画像DIB3の中で前面23をその法線方向にずらしていき、辺21bおよび辺22bとのフィッティングを行って最も適合する位置を求めればよい。
【0058】
(B7)段ボール箱20の寸法の算出
以上のようにして算出した段ボール箱20の各面それぞれの方程式に基づき、各面の交線を求め、さらにそれらの交点を求めることで、段ボール箱20で測定すべき寸法である横幅W、奥行きDおよび高さHの3つを算出する。
【0059】
このような寸法算出方法によれば、例えば、図9に示すように、段ボール箱20の上面21の左側面22側の辺21xを、上記(B4)で段ボール箱20の左側面22と仮定された平面と、上面21と仮定された平面との交線として求めることができる。たとえ、距離画像カメラ10のいずれかの画素がちょうど辺21x上の位置に対応していなくても、交線を正確に求めることができるので、結果として、距離画像カメラ10の解像度を超える寸法測定精度を実現できる。
【0060】
< 段ボール箱20の寸法測定方法の変形例 >
上述した寸法測定方法(A)では、段ボール箱20の上面21のみが写るように撮像した場合の寸法測定方法を説明し、寸法測定方法(B)では、段ボール箱20の上面21、前面23および左側面22が写るように撮像した場合の寸法測定方法を説明したが、これらの中間的なものとして、例えば、段ボール箱20の上面21および左側面22(または上面21および前面23)が写るように撮像して寸法測定方法を行うことも可能である。
【0061】
この場合、上面21および左側面22が写っているのであれば、左側面22については上述した寸法測定方法(B)と同様の手順を適用し、写っていない前面23については上述した寸法測定方法(A)と同様の手順を適用すればよい。逆に、上面21および前面23が写っているのであれば、前面23については上述した寸法測定方法(B)と同様の手順を適用し、写っていない左側面22については上述した寸法測定方法(A)と同様の手順を適用すればよい。
【0062】
また、上述した寸法測定方法(A)または寸法測定方法(B)の各ステップを順次実行するのに先立って、上記(A3)で取得された距離画像DIA3または上記(B3)で取得された距離画像DIB3から段ボール箱20の各エッジを大まかに検出し、その検出結果に基づいて寸法測定を行っておいてもよい。
【0063】
また、段ボール箱20を単に床面30に載置するのではなく、例えば、図10に示すように、段ボール箱20の右側面25および後面26をそれぞれ押し当てて位置決めができるような横断面L字型の配置治具40などを用いるようにすれば、上記(B2)の段階で、段ボール箱20の右側面25および後面26にそれぞれ相当する平面の方程式を算出しておくことができる。そうすると、上記(B5)および(B6)が省略できるだけでなく、より精度の高い寸法測定が可能となる。
【0064】
< 距離画像における平面推定方法 >
図11は、距離画像カメラ10に内蔵されているイメージセンサ11によって取得される3次元データ構造の説明図である。
【0065】
このイメージセンサ11は正方格子状に配置された画素毎に距離情報を取得する。図11に示すように、水平方向をX、垂直方向をYとすると、被写体を含む撮像画角内を2次元配列上(X,Y)に、距離画像カメラ10の位置若しくは任意に設定された原点を基準とする3次元データPXY=(xXY,yXY、zXY)として格納する。
【0066】
図12は、外積についての説明図である。後述する距離画像における平面推定方法では、外積を多用するため、念のために簡単に説明しておく。
【0067】
図12に示すように、空間ベクトルaおよびbの外積a×bは、空間ベクトルaおよびbいずれに対しても垂直であり、外積a×bの大きさは空間ベクトルaおよびbの張る平行四辺形の面積Sに等しい。また、a、b、a×bは順に右手系をなす。ただし、平行四辺形がつぶれてS=0となるa、bに関してはa×b=0となる。
【0068】
ここで、空間ベクトルa=(a1,a2,a3)、b=(b1,b2,b3)とすると、
a×b=(a23−a32,a31−a13,a12−a21
である。
【0069】
なお、外積a×bが空間ベクトルaおよびbいずれに対しても垂直であることから、外積a×bは、空間ベクトルaおよびbを隣接する2辺とする三角形の3頂点で定まる平面の法線ベクトルでもある。
【0070】
図13は、距離画像における平面推定方法の概略を示すフローチャートである。以下では、この図13を参照しながら、距離画像カメラ10によって取得された距離画像における平面推定方法を説明する。なお、図13のステップS7〜S9は必ずしも行わなくてもよいので、後述する<距離画像における平面推定方法の変形例など>において説明する。
【0071】
イメージセンサ11によって取得された3次元データは、画像処理ユニット12によって次のような処理を行うことによって距離画像における平面の推定を行う。ここで言う「平面」とは、床面や壁面などのように一定値以上の広い面積を有しており、人体などの背景として距離画像から分離すべき領域を意味している。
【0072】
(1)データ変換
図11を参照して上述したように、イメージセンサ11の画素自体は正方格子状に配置されている。そこでまず、図14(a)に示すように、X方向(図11と同様に水平方向、以下も同様)に並んでいる各行の隣接2画素毎に3次元データを平均化する演算を行う。このとき、上下に隣接する行同士では、平均化する隣接2画素の組み合わせを1画素分だけずらすようにしている。これにより、図14(b)に示すように、千鳥格子状配置に変換した3次元データ(変換後3次元データ)が得られることになる(ステップS1)。
【0073】
なお、変換前の3次元データをX方向の隣接2画素毎に平均化したことにより、変換後3次元データのX方向の画素間隔は、実際には元の2倍になっているが、説明の簡略化などの都合上、同じ画素間隔として図示してある(図17以降も同様)。
【0074】
ただし、補間演算の併用などの工夫によって変換前の3次元データとX方向の画素間隔を同じに維持しながら千鳥格子状配置の3次元データに変換することなども可能である。例えば、図15(a)に示すように、X方向に並んでいる各行の隣接2画素毎に3次元データを平均化する演算(図14(a)の場合とは異なる演算)を行えば、図15(b)に示すような変換後3次元データが得られる。あるいは、千鳥格子状配置の3次元データに変換しなくても、図16に示すような隣接画素の組み合わせで後述するような着目三角形を決めて演算を行うようにしてもよい。
【0075】
また、同一時刻の1フレームの距離画像のみを用いて平均化を行うのではなく、例えば、時間軸上の複数フレームの距離画像を用いて平均化を行うようにしてもよい。
【0076】
(2)着目三角形を対象とする演算
次に、千鳥格子状配置の最小の単位格子である小三角形のいずれかに着目する。ここで、例えば図17に示すように、小三角形TS1に着目したとすると、この小三角形TS1の3つの頂点A1、A2、A3に対応する変換後3次元データに基づいて、頂点A1、A2、A3で定まる平面の方程式と、この平面の法線ベクトルとして小三角形TS1の2辺(A1A2、A1A3)にそれぞれ対応する2ベクトルの外積を算出する(ステップS2)。
【0077】
(3)隣接三角形を対象とする演算
さらに、着目した小三角形TS1の3辺(A1A2、A1A3、A2A3)のいずれかをそれぞれ共有するように隣接する3つの小三角形TS2、TS3、TS4(変換後3次元データの画素上では小三角形TS1とそれぞれ同じ大きさ)についても、同様にして法線ベクトルをそれぞれ算出する。
【0078】
(4)平面候補探索
そして、4つの小三角形TS1、TS2、TS3、TS4の各法線ベクトルのうちの2つの組み合わせすべて(合計6通り)の外積を求めてから(ステップS3)、それらの外積の大きさの最大値と所定閾値(第1閾値)との大小比較を行う。なお、この第1閾値は固定値に限るわけではなく、例えば、着目した小三角形TS1の変換後3次元データの画素上における大きさに応じて可変としてもよい。この場合、後述するように着目する三角形の大きさを拡大したときは、それに応じて第1閾値も大きくすればよい。
【0079】
この大小比較の結果、外積の大きさの最大値が第1閾値以下だったときは、4つの小三角形TS1、TS2、TS3、TS4からなる1つの大三角形(A4、A5、A6を頂点とする三角形)を平面候補と判定する。というのは、千鳥格子状配置の各小三角形がすべて同一形状であれば各小三角形の面積もすべて同一となり、外積から求められる各法線ベクトルの大きさも等しくなるから、2つの法線ベクトルの外積の大きさの違いはそれら2つの法線ベクトルがなす角度のみに依存するからである。外積の大きさの最大値が第1閾値以下ということは、各法線ベクトルの任意の2つの組み合わせのなす角度が、所定値に対応する角度以下であることを示している。
【0080】
次の平面候補を探索するため、着目する小三角形を移動してから同様の処理を繰り返す。例えば、小三角形TS1の右上の小三角形TS5に着目してもよい。このようにすれば、この小三角形TS5を中央に含む大三角形が、小三角形TS1、TS2、TS3、TS4からなる大三角形とは形状が上下に対称ではあるが、ちょうど隣接する。
【0081】
このように、着目する小三角形を移動しながら同様の処理の繰り返しを変換後3次元データ全体にわたって行うことにより、変換後3次元データ内に存在するすべての平面候補の探索をすることができる(ステップS4)。
【0082】
(5)平面判定
上記(4)平面候補探索で、大三角形(A4、A5、A6を頂点とする三角形)が平面候補と判定されたのであれば、図18に示すように、今度は大三角形TL1に着目するとともにこれに隣接する3つの大三角形TL2、TL3、TL4も用いて、上記(2)〜(4)と同様の処理を繰り返す。このとき、これらの大三角形TL1などは小三角形TS1などとみなされていることになる。
【0083】
さらに、図19に示すように、平面候補探索で着目する三角形の大きさを拡大する。すなわち、三角形TX1に着目し、これ以降も同様の処理を再帰的に繰り返していく(ステップS5)。ただし、大きさを拡大した後の着目する三角形TX1の中に、平面候補から除外された三角形を含む場合には、この三角形TX1は平面候補から除外する。
【0084】
そして、そのような再帰的な平面候補探索処理の繰り返しの結果、平面候補と判定された新たな大三角形の面積が所定面積(第2閾値)以上となっていれば、その大三角形に対応する領域を平面と判定する。処理の繰り返し回数には、規定回数を上限として設定しておくことが好ましい(ステップS6)。
【0085】
このように、着目する三角形の大きさを拡大しながら再帰的な処理を繰り返すことによって、効率良く平面を推定することができる。
【0086】
(6)距離画像からの平面分離
以上の(1)〜(5)までの処理によって平面と判定されたすべての領域を距離画像から分離する。例えば、撮像された距離画像を用いるのではなく、平面と判定された領域についてはその平面上に再描画してもよい。これにより、距離画像において床面や壁面などの平面に対応する画素とそれ以外の画素とを分離して扱うことが可能となるので、人体や物体などの検出をより的確に行うことができるようになる。
【0087】
図20に示すように、滑らかな曲面F1に適用したとき、点Pnとこれに隣接する点Pn+1および点Pn-1からなる小さい三角形のみでは角度が極めて浅くなるため、平面と誤認してしまう可能性がある。一方、上述した再帰的処理を用いた距離画像における平面推定方法によれば、例えば、点Pnとこれから少し離れた点Pn+4および点Pn-4からなる大三角形では角度が急になるため、そのような誤認を防止することができる。
【0088】
また、図21に示すように、全体としては平面とみなしてもかまわないような面F2の中に極めて小さな段差B2が存在していても、そのようなときの段差B2における三角形の面積は小さくなるので、外積の計算結果は小さくなることが期待できる。これにより、たとえ、小さな段差B2を有する場合であっても、それを含む面F2を平面であると的確に認識することができる。
【0089】
< 距離画像における平面推定方法の変形例など >
例えば、上記(4)平面候補探索では、図22に示すように、着目した小三角形TS1とこれに隣接する3つの小三角形TS2、TS3、TS4からなる大三角形が平面候補と判定されなかったとしても、この大三角形に隣接する大三角形TL1が平面候補と判定されることはあり得る。
【0090】
そこで、このような場合の平面の候補漏れの処理(ステップS7)としては、大三角形TL1の法線ベクトルと、各小三角形TS2、TS3、TS4の法線ベクトルの外積が所定閾値以下であれば、各小三角形TS2、TS3、TS4をそれぞれ平面候補とみなすようにしてもよい。ただし、それ以降の平面候補探索には、小三角形TS1、TS2、TS3、TS4からなる大三角形を用いて行ってもよい。また、このような平面の候補漏れの処理は、着目する三角形の大きさを縮小しながら再帰的に行うとともに(ステップS8)、処理の繰り返し回数には、規定回数を上限として設定しておくことが好ましい(ステップS9)。
【0091】
また、上記(5)平面判定で、平面と判定された領域が複数存在する場合は、最も広い領域を自動的に床面とみなすようにしてもよい。あるいは、それらの複数の領域をディスプレイなどに表示するとともに、使用者のマウスやキーボードなどによる外部操作によっていずれの領域が床面であるかを選択できるようにしてもよい。
【0092】
さらに、このようにして定められた床面を表す平面の方程式に基づいて、空間中の距離画像カメラ10の設置場所や撮像方向の角度などを演算して、カメラ座標系である距離画像を、床面をZ軸の原点とする座標系に変換してもよい。
【0093】
なお、本発明は、その主旨または主要な特徴から逸脱することなく、他のいろいろな形で実施することができる。そのため、上述の実施形態はあらゆる点で単なる例示にすぎず、限定的に解釈してはならない。本発明の範囲は特許請求の範囲によって示すものであって、明細書本文にはなんら拘束されない。さらに、特許請求の範囲の均等範囲に属する変形や変更は、全て本発明の範囲内のものである。
【符号の説明】
【0094】
10 距離画像カメラ
11 イメージセンサ
12 画像処理ユニット
13 制御ユニット
15 外部のディスプレイ
20 段ボール箱
21 上面
22 左側面
23 前面
24 底面
25 右側面
26 後面
30 床面
40 配置治具40
D 奥行き
H 高さ
W 横幅
S1 着目した小三角形
S2、TS3、TS4 隣接する小三角形
L1 着目した大三角形
L2、TL3、TL4 隣接する大三角形

【特許請求の範囲】
【請求項1】
距離画像カメラを用いた物体寸法測定方法であって、
載置面に何も載置されていない状態でこの載置面が写るように撮像して第1距離画像を取得する第1撮像工程と、
前記第1距離画像に基づいて前記載置面の方程式を算出する載置面方程式算出工程と、
前記載置面に載置された直方体の少なくとも上面が写るように撮像して第2距離画像を取得する第2撮像工程と、
前記第2距離画像に基づいて前記上面の方程式を算出する上面方程式算出工程と、
この上面方程式算出工程で方程式が算出された前記上面を前記第2距離画像の中で前記載置面若しくは前記載置面と平行な平面に射影し、その射影がなされた面を回転させながら前記上面の射影の横軸方向および縦軸方向の各範囲幅の合計値をそれぞれ算出して、算出された合計値が最小となる回転角度を探索し、最小となった合計値を前記上面の隣接する2辺の寸法の合計値として算出する寸法算出工程と
を含むことを特徴とする、距離画像カメラを用いた物体寸法測定方法。
【請求項2】
距離画像カメラを用いた物体寸法測定方法であって、
載置面に何も載置されていない状態でこの載置面が写るように撮像して第1距離画像を取得する第1撮像工程と、
前記第1距離画像に基づいて前記載置面の方程式を算出する載置面方程式算出工程と、
前記載置面に載置された直方体の上面と前面と該上面および該前面のいずれにも隣接する第1側面とが写るように撮像して第2距離画像を取得する第2撮像工程と、
前記第2距離画像に基づいて前記上面、前記前面および前記第1側面の各方程式を算出する3面方程式算出工程と、
前記第2距離画像の中で前記第1側面をその法線方向にずらしていき、前記上面で前記第1側面とは反対側の辺および前記前面で前記上面で前記第1側面とは反対側の辺と最も適合する位置に基づいて前記直方体の第2側面の方程式を算出する第2側面方程式算出工程と、
前記第2距離画像の中で前記前面をその法線方向にずらしていき、前記上面で前記前面とは反対側の辺および前記第1側面で前記前面とは反対側の辺と最も適合する位置に基づいて前記直方体の後面の方程式を算出する後面方程式算出工程と、
算出された前記載置面、前記上面、前記前面、前記第1側面、前記第2側面および前記後面それぞれの方程式に基づき、各面の交線を求め、さらにそれらの交点を求めることで、前記直方体の横幅、奥行きおよび高さを算出する寸法算出工程と
を含むことを特徴とする、距離画像カメラを用いた物体寸法測定方法。
【請求項3】
距離画像カメラを用いた物体寸法測定方法であって、
載置面に何も載置されていない状態でこの載置面と横断面L字型の配置治具の直交する第1内壁面および第2内壁面とが写るように撮像して第1距離画像を取得する第1撮像工程と、
前記第1距離画像に基づいて前記載置面、前記第1内壁面および前記第2内壁面の各方程式を算出する載置面・壁面方程式算出工程と、
前記第1内壁面および前記第2内壁面にも圧接するように前記載置面に載置された直方体の上面と前面と該上面および該前面のいずれにも隣接する第1側面とが写るように撮像して第2距離画像を取得する第2撮像工程と、
前記第2距離画像に基づいて前記上面、前記前面および前記第1側面の各方程式を算出する3面方程式算出工程と、
算出された前記載置面、前記上面、前記前面、前記第1側面、前記第1内壁面および前記第2内壁面それぞれの方程式に基づき、各面の交線を求め、さらにそれらの交点を求めることで、前記直方体の横幅、奥行きおよび高さを算出する寸法算出工程と
を含むことを特徴とする、距離画像カメラを用いた物体寸法測定方法。
【請求項4】
請求項1〜3のいずれか1項に記載の距離画像カメラを用いた物体寸法測定方法において、
前記載置面方程式算出工程または前記載置面・壁面方程式算出工程で複数の平面の存在が推定される場合には、最も広い平面を前記載置面とみなしてその方程式を算出することを特徴とする、距離画像カメラを用いた物体寸法測定方法。
【請求項5】
請求項1〜3のいずれか1項に記載の距離画像カメラを用いた物体寸法測定方法において、
前記第2距離画像に基づいて、前記直方体の各エッジを検出し、その検出結果に基づいて前記直方体の横幅、奥行きおよび高さを算出する概略寸法算出工程をさらに含むことを特徴とする、距離画像カメラを用いた物体寸法測定方法。
【請求項6】
距離画像カメラを用いた物体寸法測定方法であって、
載置面に載置された直方体の上面と前面と該上面および該前面のいずれにも隣接する側面とが写るように撮像して距離画像を取得する撮像工程と、
前記距離画像に基づいて前記載置面、前記上面、前記前面および前記側面の方程式をそれぞれ算出する4面方程式算出工程と、
この4面方程式算出工程で算出された各方程式から少なくとも前記上面、前記前面および前記側面相互の交線を求め、さらにそれらの交点を求めることで、前記直方体の横幅、奥行きおよび高さを算出する寸法算出工程と
を含むことを特徴とする、距離画像カメラを用いた物体寸法測定方法。
【請求項7】
画素値に距離情報を取得して距離画像を生成可能な撮像素子と、
この距離画像における画像処理を行う画像処理ユニットと
を備え、
前記画像処理ユニットにおける前記画像処理で、請求項1〜6のいずれか1項に記載の距離画像カメラを用いた物体寸法測定方法が実行されることを特徴とする、物体寸法測定装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate