JP6570321B2 - 情報処理装置、情報処理方法及びプログラム - Google Patents

情報処理装置、情報処理方法及びプログラム Download PDF

Info

Publication number
JP6570321B2
JP6570321B2 JP2015112379A JP2015112379A JP6570321B2 JP 6570321 B2 JP6570321 B2 JP 6570321B2 JP 2015112379 A JP2015112379 A JP 2015112379A JP 2015112379 A JP2015112379 A JP 2015112379A JP 6570321 B2 JP6570321 B2 JP 6570321B2
Authority
JP
Japan
Prior art keywords
line
pattern
detection
detected
luminance
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.)
Active
Application number
JP2015112379A
Other languages
English (en)
Other versions
JP2016223980A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2015112379A priority Critical patent/JP6570321B2/ja
Publication of JP2016223980A publication Critical patent/JP2016223980A/ja
Application granted granted Critical
Publication of JP6570321B2 publication Critical patent/JP6570321B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

本発明は、特に、三次元形状を計測するために用いて好適な情報処理装置、情報処理方法及びプログラムに関する。
従来、動的シーンに対応した三次元形状の計測手法として、複数の平行線で構成した照明パターンを物体に投影する光切断法に基づく方法が知られている。以降、複数の平行線をマルチスリットと呼び、それぞれの線を計測線と呼ぶ。この手法では、物体上で観測される計測線が、投影したマルチスリットの何番目の計測線であるかを識別することにより、複数本の計測線上の距離を一度の撮影で計測することを可能にしている。ここで、計測線の番号の識別方法の一つとして、マルチスリットに何らかの特徴を加えたパターンを利用する方法がある。
特許文献1には、マルチスリットの計測線上に離散的に切れを加え、計測線を複数の線分で構成するパターンを利用する方法が開示されている。この方法によれば、各線分の両端の位置を手掛かりにして計測線を識別するとしている。
特開平1−274007号公報
M, Kimura, "Projector Calibration using Arbitrary Planes and Calibrated Camera"Computer Vision and Pattern Recognition, CVPR, 2007. R. Y. Tsai, "A versatile camera calibration technique for high-accuracy 3D machine vision metrology using off-the-shelf TV cameras and lenses" IEEE Journal of Robotics and Automation, vol.RA-3, no.4, 1987. P. Felzenszwalb and D. Huttenlocher, "Efficient belief propagation for early vision," IJCV, vol.70, pp.41-54, 2006.
しかしながら特許文献1に記載の方法では、複雑な形状の物体に対して、線分の両端が観測できない場合があるため、ロバストに三次元形状を計測できない場合がある。
本発明は前述の問題点に鑑み、複雑な形状の物体の三次元形状をロバストに計測できる情報を得ることができるようにすることを目的としている。
本発明に係る情報処理装置は、複数の線で構成され、前記線上で3種類以上の輝度または色が位置に応じて連続的に変化するパターンが投影された計測対象物体を撮像した画像を取得する取得手段と、前記取得手段によって取得された画像から前記計測対象物体に投影されたパターンの線を検出する検出手段と、前記検出手段によって検出された線、及び前記パターンを構成する線において連続的に変化する輝度または色の位置に基づいて、前記検出手段によって検出された線が前記パターンのどの線に対応するかを識別する識別手段と、前記識別手段で識別された線の輝度または色の位置に基づいて、前記パターンが投影された計測対象物体の表面上の点の距離を算出する距離算出手段と、を備えることを特徴とする。
本発明によれば、複雑な形状の物体に対して、ロバストに三次元形状を計測できる情報を得ることができる。
実施形態において、計測対象物体に投影するパターン及び輝度分布の例を示す図である。 実施形態に係る情報処理装置の機能構成例を示すブロック図である。 計測線を識別する処理手順の一例を示すフローチャートである。 計測線を識別する手順を説明するための図である。 第3の実施形態において、検出線を複数の検出線に分割する詳細な処理手順の一例を示すフローチャートである。
[第1の実施形態]
以下、本実施形態では、複雑な形状の物体の三次元形状をロバストに計測する情報を得る方法について説明する。
本実施形態では、計測対象物体にマルチスリットに基づくパターンを投影し、パターンを観測することによって三次元計測を行う。図1(a)に示すように、本実施形態で利用するパターン100はマルチスリットであって、それぞれの計測線110上の輝度の値が線上の位置に応じて変化する。パターン100の計測線上の輝度値は図1(b)に示すように、位置に応じて異なる輝度値を持つ。
画像上で観測される計測線(以降、検出線と呼ぶ)の識別は、注目する検出線上で変化する輝度値と、パターンの計測線上で変化する輝度値との類似度に基づいて、注目する検出線がパターンの何れの計測線によって投影された線であるかを計算する。本実施形態では、注目する検出線上の輝度値とパターンの計測線上の輝度値との差を、パターンの計測線の位置を変えて計算し、差が最も小さいパターンの計測線を注目する検出線の識別結果として計算する。
識別の手掛かりとするパターンの計測線上の輝度の変化は、画像上から検出した検出線が短い場合でも抽出可能であり、また、計測線の長さあたりの情報量が多いため、検出した検出線が短くてもロバストにパターンの計測線を識別する計算ができる。そのため、複雑な形状の物体に対して、ロバストに三次元形状を計測する情報を得ることできる。
図2は、本実施形態における情報処理装置200の機能構成例を示すブロック図である。本実施形態に係る情報処理装置200は投影装置300及び撮像装置400を外部に備え、パターン取得部210、画像取得部220、検出部230、識別部240、及び距離算出部250を内部に備えている。
投影装置300は、パターン100の像を光により投影するプロジェクタである。ここで、投影装置300の焦点距離や主点位置、レンズ歪パラメータなどの内部パラメータ情報、及び撮像装置400に対する投影装置300の相対的な位置姿勢の情報は予め校正された状態にしておく。校正方法については公知の方法を用い、例えば非特許文献1に記載の方法で校正することができる。
撮像装置400は、濃淡画像を生成するカメラである。ここで、撮像装置400の焦点距離や主点位置、レンズ歪パラメータなどの内部パラメータ情報は予め校正された状態にしておく。校正方法については公知の方法を用い、例えば非特許文献2に記載の方法で校正することができる。
パターン取得部210は、投影装置300から計測対象物体500に投影するためのパターン100の画像を取得する。取得するパターンは2次元の画像であり、図1に示すように、マルチスリットであって、それぞれの計測線110上の輝度値は、線上の位置に応じて決まり、線上の画素毎にV+ΔVで決まる輝度値を設定する。Vはユーザーが指定する固定値であり、ΔVは所定の範囲[−ε〜ε]で発生させる一様乱数であり、εはユーザーが指定する固定値である。また、線上の輝度値は、線同士で線の輝度値の相関が低くなるように、線毎に異なる乱数が発生するように設定する。
画像取得部220は、パターン100を投影した計測対象物体500を撮像装置400で撮像した画像を取得する。
検出部230は、画像取得部220で取得した画像上から、投影装置300から投影したパターンの計測線に相当する線(検出線)を検出する。
識別部240は、検出部230で検出した検出線上で変化する輝度値と、パターン100の計測線上で変化する輝度値との類似度に基づいて、検出線がパターン100の何れの計測線によって投影された線であるかを識別する。
距離算出部250は、検出部230により検出した検出線上の点の位置と、識別部240で識別した計測線の位置と、に基づいて、撮像装置400の光学中心から、画像上で検出した計測線上の点が投影された計測対象物体500の表面までの距離を算出する。ここで、算出する距離は撮像装置400の光軸方向の距離とする。
次に、本実施形態の処理手順について説明する。図3は、本実施形態において計測線を識別する処理手順の一例を示すフローチャートである。
(ステップS301)
パターン取得部210は、パターンの画像を取得する。パターンの画像は、外部装置から取得してもよく、不図示のメモリ等から取得してもよい。そして、パターン取得部210は、投影するパターンを投影装置300に送る。これにより、投影装置300は、計測対象物体500にパターンを投影し、撮像装置400は、パターンが投影された計測対象物体500を撮像する。
(ステップS302)
画像取得部220は、パターンが投影された計測対象物体500を撮像した画像を撮像装置400から取得する。
(ステップS303)
検出部230は、画像取得部220で取得した画像上から、線(検出線)を検出する。具体的には、画像に対してソベルフィルタを適用して画像上の輝度値の極値(以降、検出点と呼ぶ)を検出した後、画素間で隣接する検出点をラベリングすることにより、隣接する検出点が並んだ線として算出する。そして、ラベリングした線を検出線として、以降、検出線毎に処理を行う。
(ステップS304)
識別部240は、検出部230で検出した検出線上で変化する輝度値の分布と、パターン100の計測線上で変化する輝度値の分布との類似度に基づいて、検出線がパターン100の何れの計測線によって投影された線であるかを識別する。
この識別方法について、図4を用いて説明する。図4(a)において、画像401はパターンの投影像を撮影した画像である。画像401上で計測対象物体710が観測され、さらに計測対象物体410上で検出線420が検出されている。また、図4(b)におけるエピポーラ線430は、検出線上のある注目点に基づくパターン上のエピポーラ線を表す。
まず、検出部230で検出した複数の検出線から識別する検出線を1つ選択する。次に、選択した検出線上の輝度値とパターン取得部210で保持するパターン上の各計測線上の輝度値とのマッチング(比較)を行い、対応する計測線を算出する。
マッチングの方法は、まず、画像上の検出線上の点piからパターン上のエピポーラ線430と各計測線kとの交点の輝度値V(pi,k)を計算する。ここで、kはパターンの計測線番号を表す。また、iは画像上から検出した検出線上の点の番号を示し、iの範囲は1からNである。検出線上の点piはピクセル毎に等間隔に設定するものとし、Nは計測線の長さ、即ち検出線上の画素数とする。次に、点piの輝度値I(pi)とパターン上の各計測線kにおける輝度値V(pi,k)との差分を計算する。ここで、検出線上の全ての点piについて、I(pi)とV(pi,k)との差の総和D(k)は、以下の式(1)を用いて計算することができる。
最後に、差の総和D(k)を最小とするkを計算することにより、画像上で選択した計測線がマッチングする計測線kを識別する。ここで、差の総和D(k)を最小にするkが、検出線に対応するパターンの計測線の番号であると判定する。以上の処理を、画像上で検出した全ての計測線に対して行うことにより、画像上で検出した計測線それぞれが対応する計測線kを識別する。
(ステップS305)
距離算出部250は、検出線上の点の位置と、識別部240で識別した計測線のパターン上での位置とに基づいて、撮像装置400の光学中心から、画像上で観測される検出線が投影された計測対象物体500の表面上までの距離を算出する。まず、検出部230で検出した検出線上の画素の位置と、識別した計測線番号から分かるパターン上での計測線の位置とに基づいて、光切断法の原理を使って計測線が投影された先の距離を計測する。以上の計測を画像から検出した計測線上の全ての画素の位置について行うことにより、計測対象物体500表面の距離点群を算出する。
以上のように本実施形態によれば、計測線上の位置に応じて変化する輝度に基づいて計測線の識別を行う。識別の手掛かりとするパターンの計測線上の輝度の変化は、画像上から検出した検出線が短くても抽出可能であり、また、計測線の長さあたりの情報量が多いため、検出した検出線が短くてもロバストにパターンの計測線を識別することができる。そのため、複雑な形状の物体に対して、ロバストに三次元形状を計測する情報を得ることができる。
なお、本実施形態において、パターンの計測線上の輝度を位置に応じて変化させたが、パターン取得部210で取得するパターンの画像は、マルチスリットであって、各計測線上の色が線上の位置に応じて変化するものであってもよい。線上の輝度もしくは色の値は一様乱数で決めてもよいし、M系列に基づく疑似乱数で決めてもよい。また、輝度値と色の値とを両方変化させてもよいし、何れか一方だけ変化させてもよい。また、必ずしも画像として取得する必要はなく、パターン上での計測線の位置と計測線上の輝度もしくは色の情報が取得できてればよい。
また、投影装置300は、2次元のパターンを投影するものであればどのような装置でもよい。例えば、2次元画像を投影する書画プロジェクタであってもよいし、光源とマスクパターンとを組み合わせた装置であってもよい。また、投影するパターンは輝度値が線上の位置に応じて変化する濃淡パターンでもよいし、色が線上の位置に応じて変化するカラーパターンでもよい。また、マスクパターンをセットする投影装置の場合には、パターンは物理的に投影装置にセットされるため、計測時にパターン取得部210からパターンを与える必要はない。この場合には、パターン取得部210を本実施形態における情報処理装置200から取り除いた構成としてもよい。
また、画像取得部220で取得する画像は、2次元の画像であればどのような画像でもよい。例えば、投影するパターンが濃淡パターンである場合には濃淡画像でもよく、投影するパターンがカラーパターンである場合にはカラー画像でもよい。また、画像取得部220による画像の取得方法については、撮像装置400から直接取得しても良いし、不図示のメモリ上に予め格納された状態で画像をメモリから取得するような構成であってもよい。
また、検出部230による計測線の検出方法に関しては、画像上から計測線を検出する方法であれば、どのような方法であってもよい。例えば、ソベルフィルタによって検出したエッジをラベリングすることによって計測線を検出してもよいし、所定の閾値で2値化した画像を細線化することによって検出してもよい。
また、識別部240における検出線の識別方法は、画像上で検出した検出線上で変化する輝度の分布と、パターンの計測線上で変化する輝度の分布との類似度が高い線を探索する方法であればどのような方法でもよい。本実施形態では、検出線上の輝度値とパターンの計測線上の輝度値との差に基づいて、検出線上の点の差の総和が最小となる計測線を計算した。一方、線上での輝度値の変化の差、即ち検出線上での輝度値の微分値とパターンの計測線上での輝度値の微分値との差に基づいて、検出線上の点の差の総和が最小となる計測線を計算してもよい。また、差の総和ではなく、差の二乗和を用いてもよい。また、計測線上の輝度値ではなく、色を変化させる場合には、画像上で検出した検出線上で変化する色と、パターンの計測線上で変化する色との類似度を計算し、類似度が高い計測線を識別するようにしてもよい。このとき、検出線とパターンの計測線との色の類似度は色の差でもよいし、色の変化の差でもよい。また、計測線上の輝度値と色の両方を変化させたパターンでも良い。この場合も同様に、画像上で検出した検出線と、パターンの計測線とについて、その線上の輝度値と色の差を計算し、差が小さい計測線を識別するようにしてもよい。
また、検出部230により検出した検出線上の点の位置と、識別部240で識別した計測線のパターン上での位置とに基づいて、三角測量によって距離を算出する方法であれば、どのような方法でもよい。また、距離を算出する点は、検出部230で検出した検出線上の点のうち、一部でもよいし、全部でもよい。
[第2の実施形態]
本実施形態では、複雑な形状の物体に対して、後述する検出線の誤接続が発生する場合であっても、ロバストに三次元形状を計測する情報を得る方法を説明する。
画像上で奥行きが不連続に変化する領域では、異なる番号の検出線が画像における見た目では繋がった状態で観測されることがあり、その場合、連続する1本の線として検出されてしまう可能性がある。以降、異なる番号の計測線が1本の線として検出される現象を検出線の誤接続と呼ぶ。検出線の誤接続が発生すると、検出線の識別を正確に行うことができなくなる。
そこで本実施形態では、分割後の長さが所定の閾値以下になるように1本の検出線を複数の検出線に分割し、分割した検出線毎に識別を行う。これにより、検出線の誤接続による影響を、検出線の一部に抑えることができるため、識別が失敗する検出線上の点数を減らすことができる。その結果、複雑な形状の物体に対して、よりロバストに三次元形状を計測する情報を得ることができる。
本実施形態では、第1の実施形態で説明した構成と比べて検出部230の機能が異なり、検出した検出線を複数の検出線に分割した状態で算出する機能を含む。それ以外の構成要素の機能は、第1の実施形態と同様であるため、説明は省略する。
次に、本実施形態の処理手順について説明する。本実施形態の処理手順は、第1の実施形態と比べて図3のステップS303の処理が異なる。それ以外の処理は、第1の実施形態と同様であるため、説明は省略する。以下、本実施形態における図3のステップS303の処理について説明する。
(ステップS303)
検出部230は、画像取得部220で取得した画像上から検出線を検出し、分割後の長さが所定閾値以下になるように検出線を複数の検出線に分割する。具体的にはまず、第1の実施形態と同様に画像上から検出線を検出する。次に、検出した複数の検出線から分割する検出線を1つ選択する。ここで、選択した検出線の長さをMとした場合、Mは計測線上の点数を表す。次に、検出線が所定の閾値Lの長さに収まるように、選択した検出線を(M/L+1)本で等間隔に分割する。(M/L+1)の計算は、少数点以下を切り捨てとする。
以上のような検出線の分割を、画像上で検出した全ての検出線に対して行うことにより、画像上で検出した検出線をそれぞれ分割した状態で算出する。なお、図3のステップS304及びS305の処理では、分割後の検出線毎に処理を行う。
以上のように本実施形態によれば、分割後の長さが所定値以下になるように検出線を分割し、分割した検出線毎に識別を行うようにした。これにより、検出線の誤接続による影響を、元の検出線の一部に抑えることができるため、識別に失敗して誤った距離が出力される数を減らすことができる。その結果、複雑な形状の物体に対して、よりロバストに三次元形状を計測する情報を得ることができる。
なお、本実施形態において、検出線を分割する方法は、計測線の長さに基づいて、所定の閾値L以上の長さを持つ計測線を複数の計測線に分割する方法であればどのような方法でもよい。L以上の計測線を等間隔に分割してもよいし、不等間隔に分割してもよい。また、Lの値は、予め設定する固定値とする。
[第3の実施形態]
本実施形態では、複雑な形状の物体に対して、検出線の誤接続が発生する場合であっても、ロバストに三次元形状を計測する情報を得る方法を説明する。
第2の実施形態で説明したように、検出線の誤接続が発生すると、検出線の識別を正確に行うことができなくなる。本実施形態では、検出線上の輝度に基づいて、検出線の誤接続が発生する位置を特定し、その位置において検出線を分割する例について説明する。これにより、検出線の誤接続の影響を受けず、検出線の識別を行うことができる。その結果、複雑な形状の物体に対して、よりロバストに三次元形状を計測する情報を得ることができる。
本実施形態では、第1の実施形態で説明した構成と比べて検出部230の機能が異なり、検出した検出線を複数の検出線に分割した状態で算出する機能を含む。それ以外の構成要素の機能は、第1の実施形態と同様であるため、説明は省略する。
次に、本実施形態の処理手順について説明する。本実施形態の処理手順は、第1の実施形態と比べてステップS303の処理が異なる。それ以外の処理は、第1の実施形態と同様であるため、説明は省略する。以下、本実施形態におけるステップS303の処理について説明する。
(ステップS303)
検出部230は、画像取得部220で取得した画像上から検出線を検出し、検出した検出線上の輝度値に基づいて、検出した検出線を複数の検出線に分割する。ここで、本実施形態のステップS303の処理手順の詳細について、図5のフローチャートを用いて説明する。図5は、本実施形態における図3のステップS303の検出部230による詳細な処理手順の一例を示すフローチャートである。
(ステップS501)
まず、第1の実施形態におけるステップS303と同様の処理を行い、画像上から検出線を検出する。
(ステップS502)
検出した複数の検出線から検出線を1つ選択し、選択した線上の点の輝度値に基づいて、図3のステップS304と同様の処理によってパターンの計測線とのマッチングを行い、仮に対応する計測線kを識別する。
(ステップS503)
次に、選択した検出線上から、計測線kに属する領域を判定し、その領域を分離するように検出線を複数の検出線に分割する。これは、検出線に誤接続が発生する場合、選択した検出線のうち一部が計測線kに属するものではないため、計測線kに属さない部分を判定することにより、誤接続の除去を行うことを意味する。
具体的な処理としては、まず、選択した検出線上の各点piの輝度値I(pi)と、識別した計測線kの線上の輝度値V(pi,k)との差d(pi,k)をそれぞれ計算する。第1の実施形態と同様に、iは画像上から検出した検出線上の点の番号を示し、iの範囲は1からNである。検出線上の点piはピクセル毎に等間隔に設定するものとし、Nは計測線の長さ、即ち検出線上の画素数とする。
次に、選択した検出線上の各点piのうち、差d(pi,k)が所定の閾値T以下となる検出線上の点を探索する。ここで、Tは予め設定する固定値とする。最後に、差dが閾値T以下となる点のうち、検出線上の順番iが連続する点のみを繋げ、その繋げた長さが最長となる点群を、計測線kに属する検出線上の点群として選出する。
以上の処理により、検出線上から選出した点群を分離するように検出線を複数の検出線に分割する。ただし、計測線kに属さないと判定された検出線の部分に誤接続がある場合もあるので、さらに以上の処理を繰り返してもよい。以上の処理を、画像上で検出した全ての検出線に対して行うことにより、画像上で検出した検出線をそれぞれ分割した状態で算出する。なお、図3のステップS304及びS305の処理では、分割後の検出線毎に処理を行う。
以上のように本実施形態によれば、検出線上の輝度に基づいて、検出線の誤接続が発生する位置を特定し、検出線の分割を行う。これにより、検出線の誤接続の影響を受けず、検出線の識別を行うことができる。その結果、複雑な形状の物体に対して、よりロバストに三次元形状を計測する情報を得ることができる。
なお、本実施形態において、選択した検出線上から計測線kに属する領域を判定する方法は、選択した検出線のうち計測線kと類似度が高い領域を判定する方法であればどのような方法でもよい。また、検出線上の輝度の差ではなく、検出線上での輝度の変化、即ち輝度の微分値の差に基づいて判定してもよい。さらに検出線上の輝度ではなく、色や色の変化に基づいて分割してもよい。
また、第2の実施形態における計測線の長さに基づいて、検出線を分割する方法と組み合わせてもよい。例えば、計測線の長さに基づいて分割した後、検出線上の輝度もしくは色に基づいて分割してもよいし、その逆の手順で分割しもよい。
[第4の実施形態]
本実施形態では、複数の検出線上の輝度と、検出線の位置の順序とに基づいて、計測線を識別することによって、ロバストに三次元形状を計測する情報を得る方法を説明する。
本実施形態では、検出線の位置の順序と、そこから識別する計測線の位置の順序とが整合するように制約を加えて、各検出線を識別する。これにより、検出線毎の輝度からそれぞれ識別する方法に比べ、識別の間違いがより少なくなる。その結果、複雑な形状の物体に対して、よりロバストに三次元形状を計測する情報を得ることができる。
本実施形態では、第1の実施形態で説明した構成と比べて識別部240の処理内容が異なり、以下に説明する手順で計測線を識別する。それ以外の構成要素の機能は、第1の実施形態と同様であるため、説明は省略する。
次に、本実施形態の処理手順について説明する。本実施形態の処理手順は、第1の実施形態と比べてステップS304の処理が異なる。それ以外の処理は第1の実施形態と同様であるため、説明は省略する。以下、本実施形態におけるステップS304の処理手順について説明する。
(ステップS304)
識別部240は、検出部230で検出した検出線上で変化する輝度値と、パターン100の計測線上で変化する輝度値との類似度を計算する。そして、各検出線上から計算した類似度と、画像上での検出線の位置の順序とに基づいて、各検出線がパターン100の何れの計測線によって投影された線であるかを識別する。
まず、第1の実施形態と同様に、各検出線について、検出線上の輝度と計測線k上の輝度との差の総和D(k)を、式(1)を用いて計算する。ここで、画像上の検出線のIDをjとして、それぞれの差をDj(k)と表す。
次に、画像上での検出線の位置の順序を表すリンクを構築する。ここで、リンクとは、画像上で複数ある検出線のうち、注目する2つの検出線の順序を表す情報である。このリンクの構築は、各検出線の中心位置を基準に、検出線に交差する方向に向かって近傍にある計測線を探索することにより構築する。本実施形態では、ユーザーにより設定される所定の距離Rの範囲の中で探索し、最近傍にある検出線とリンクを構築する。なお、範囲内で隣接する検出線がない場合は、その部分ではリンクは構築しないようにする。
最後に、リンクを構築した検出線の位置の順序と、検出線から識別する計測線kの位置の順序とが整合するような制約を加えて、各検出線の計測線番号を識別する。具体的には、以下の式(2)の評価関数Eを最小化するように、各検出線jの計測線番号kjの組み合わせを計算する。
ここで、式(2)において、Pは画像上から検出した検出線の集合を表し、Qは検出線うち、リンクを構築した2対の検出線の集合を表す。また、a、b、cは検出線のIDを表し、ka、kb、kcは、それぞれの検出線(ID=a、b、c)について識別する計測線番号を表す。
式(2)は、各検出線からマッチングで求める輝度値の差の総和D(k)に加え、リンクを構築した2対の検出線の計測線番号によって変化する関数Wを含む。関数Wはパターンの計測線番号kb、kcの位置の順序が、画像上の検出線b、cの位置の順序と同じ場合に0、それ以外の場合に所定の値gとなる関数である。gはユーザーにより設定される固定値であり、gの値が大きいと、パターンの計測線の位置の順序と画像上の検出線の位置の順序との整合性を重視する。
次に、評価値Eを最小化する各検出線jに割り当てる計測線番号kjの組み合わせを計算する。評価関数Eを最小化する解(この場合、各検出線に割り当てる計測線番号の組み合わせ)の計算方法としては、本実施形態では、BP(Belief Propagation)を用いる。BPの処理内容については、例えば非特許文献3に示す方法を用いる。
以上のように本実施形態によれば、検出線の位置の順序と、そこから識別する計測線の位置の順序とが整合するように制約を加えて、各検出線を識別する。これにより、検出線毎の輝度の変化のみからそれぞれ識別する方法に比べ、識別の間違いがより少なくなる。その結果、複雑な形状の物体に対して、よりロバストに三次元形状を計測する情報を得ることができる。
なお、本実施形態では、検出線の位置の順序と、そこから識別する計測線の位置の順序とで整合度するように制約を加えて、各検出線を識別する。最適化計算は、評価値Eを最小化する各検出線の計測線番号の組み合わせを計算する方法であればどのような方法でもよい。前述したBP(Belief Propagation)を用いてもよいし、GC(Graph Cut)を用いてもよい。また、各検出線に対して、全ての掲出線番号の組み合わせについて評価値Eを計算し、最小となる計測線番号の組み合わせを計算してもよい。
また、第2又は第3の実施形態で説明した検出線の分割を行った後の検出線に対して本実施形態の識別を行ってもよい。この場合、検出線の位置の順序を表すリンクは、検出線に交差する方向以外に、検出線に沿う方向に探索してリンクを構築してもよい。
<変形例>
前述した各実施形態において、計測対象物体の距離値に加え、各計測線上の輝度もしくは色に基づいて、出力する距離値の誤差の大きさを推定するようにしてもよい。
各実施形態で説明したパターンは線上の輝度もしくは色を変化させているため、画像上で観測される検出線は、その線上の位置によって線上の点と背景(検出線周囲の画素値)とのコントラストが異なる。コントラストは、検出線の位置の検出精度に影響を与えるため、出力する距離の値に含まれる誤差の大きさが、検出線のコントラストによって変化することになる。そこで、距離値に加え、その距離値に含まれる誤差の大きさを出力する。
このような処理を行う構成として、図2に示した構成に加え、不図示の誤差算出部を含むようにする。以降、誤差算出部における誤差を示す値の算出方法について説明する。
誤差算出部は、検出線と背景とのコントラストに基づいて、距離算出部250で算出する距離値の誤差を算出する。距離値の誤差は以下の式(3)によって計算する。
ここで、Iは検出線上の画素と背景とのコントラストを表し、Sは計測線の画像上での幅を表す。また、Aはユーザーが指定する固定値を表し、eは検出線上の画素から算出した距離値に含まれる誤差を示す値を表す。幅Sの値は、画像上で観測される検出線の太さを事前に固定値として与えてもよいし、画像上の検出線を2値化し、その太さを計算してもよい。式(3)による誤差の計算を、画像上から検出した検出線上の画素全てについて行う。これにより、情報処理装置200は距離値に加え、誤差を示す情報を出力することになる。
以上のように、検出した検出線と背景とのコントラストに基づいて、それぞれの計測線上の点から算出する距離値の誤差を示す値を計算する。距離の算出に加え、距離に含まれる誤差を算出するため、三次元形状を計測する際に、誤差の小さい点を重視した処理が可能になる。例えば、誤差の値が閾値を超える値を利用しない処理や、重みを下げた処理を行うことができる。また、所定以上の誤差を持つ距離値を情報処理装置200から出力しないように設定してもよい。
なお、誤差算出部における誤差の算出方法は、画像上で観測される検出線と背景とのコントラスト基づいて、コントラストが大きくなるほど誤差が小さくなる関数であればどのような関数でもよい。式(1)に示すように輝度に反比例して誤差が小さくなる関数でもよいし、輝度に応じて指数関数的に誤差が小さくなる関数でもよい。
<各実施形態の効果>
第1の実施形態では、計測線上の位置に応じて変化する輝度の分布に基づいて計測線の識別を行った。識別の手掛かりとするパターンの計測線上の輝度の変化は、画像上から検出した検出線が短くても抽出可能であり、また、計測線の長さあたりの情報量が多いため、検出した検出線が短くてもロバストにパターンの計測線を識別する計算ができる。そのため、複雑な形状の物体に対して、ロバストに三次元形状を計測する情報を得ることができる。
第2の実施形態では、分割後の長さが所定閾値以下になるように検出線を分割し、分割した検出線毎に識別を行う。これにより、検出線の誤接続による影響を、検出線の一部に抑えることができるため、識別が失敗して誤った距離が出力される数を減らすことができる。その結果、複雑な形状の物体に対して、よりロバストに三次元形状を計測する情報を得ることができる。
第3の実施形態では、検出線上の輝度に基づいて、検出線の誤接続が発生する位置を特定し、検出線の分割を行う。これにより、検出線の誤接続の影響を受けず、検出線の識別を行うことができる。その結果、複雑な形状の物体に対して、よりロバストに三次元形状を計測する情報を得ることができる。
第4の実施形態では、検出線の位置の順序と、そこから識別する計測線の位置の順序とが整合するように制約を加えて、各検出線を識別する。これにより、検出線毎の輝度の変化みからそれぞれ識別する方法に比べ、識別の間違いが少なくなる。その結果、複雑な形状の物体に対して、よりロバストに三次元形状を計測する情報を得ることができる。
<定義>
本実施形態において、パターン取得部210で取得するパターンは、マルチスリットであって、各計測線上の輝度及び色の少なくともいずれかの値が線上の位置に応じて変化するものであればどのようなパターンでもよい。線上の輝度もしくは色の値は一様乱数で決めてもよいし、M系列に基づく疑似乱数で決めてもよい。また、輝度及び色の値を両方変化させてもよいし、何れか一方だけ変化させてもよい。また、必ずしも画像として取得する必要はなく、パターン上での計測線の位置と計測線上の輝度もしくは色の情報が取得できてればよい。
また、画像取得部220で取得する画像は、2次元の画像であればどのような画像でもよい。例えば、濃淡画像でもよく、カラー画像でもよい。また、画像の取得方法については、撮像装置から直接取得してもよいし、外部装置などに一旦格納された画像を情報処理装置200に入力する構成であってもよい。
また、検出部230における計測線の検出方法に関しては、画像上から線を検出する方法であれば、どのような方法であってもよい。例えば、ソベルフィルタによって検出したエッジをラベリングすることによって線を検出してもよいし、所定の閾値で2値化した画像を細線化することによって検出してもよい。また、第2及び第3の実施形態のように、検出した検出線を複数の検出線に分割してもよい。この場合、識別部240による識別と、距離算出部250による距離の算出は、分割した検出線毎に行う。分割方法は、分割後の長さが所定閾値以下になるように検出線を分割する方法でもよいし、検出線上の輝度に基づいて、検出線の誤接続が発生する位置を特定し、その位置に基づいて検出線の分割を行う方法でもよい。
また、識別部240の識別方法は、検出部230で検出した検出線上で変化する輝度値の分布とパターンの計測線上で変化する輝度値の分布との類似度に基づいて、検出線がパターンの何れの計測線に対応するかを識別する方法であればどのような方法でもよい。検出線上の輝度値とパターンの計測線上の輝度値との差に基づいて、検出線上の点の輝度値の差の総和が最小となる計測線を計算してもよい。また、線上での輝度値の変化の差、即ち検出線上での輝度値の微分値とパターンの計測線上での輝度値の微分値との差に基づいて、検出線上の点の微分値の差の総和が最小となる計測線を計算してもよい。また、差の総和ではなく、差の二乗和を用いてもよい。また、パターンの計測線上の輝度値ではなく、色を変化させる場合、画像上で検出した検出線上で変化する色と、パターンの計測線上で変化する色との類似度を計算し、類似度が高い計測線を識別する。検出線とパターンの計測線との色の分布の類似度は色の差でもよいし、色の変化の差でもよい。
また、距離算出部250の算出方法は、検出部230により検出した計測検出線上の点の位置と、識別部240で識別した計測線のパターン上での位置とに基づいて、撮像装置の光学中心から計測対象物体の表面までの距離を算出する。
[その他の実施形態]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
220 画像取得部
230 検出部
240 識別部
250 距離算出部

Claims (11)

  1. 複数の線で構成され、前記線上で3種類以上の輝度または色が位置に応じて連続的に変化するパターンが投影された計測対象物体を撮像した画像を取得する取得手段と、
    前記取得手段によって取得された画像から前記計測対象物体に投影されたパターンの線を検出する検出手段と、
    前記検出手段によって検出された線、及び前記パターンを構成する線において連続的に変化する輝度または色の位置に基づいて、前記検出手段によって検出された線が前記パターンのどの線に対応するかを識別する識別手段と、
    前記識別手段で識別された線の輝度または色の位置に基づいて、前記パターンが投影された計測対象物体の表面上の点の距離を算出する距離算出手段と、
    を備えることを特徴とする情報処理装置。
  2. 前記識別手段は、前記検出手段によって検出された線上の点と、該点に基づくエピポーラ線と前記パターンにおける線との交点とを比較することによって前記検出手段によって検出された線が前記パターンのどの線に対応するかを識別することを特徴とする請求項1に記載の情報処理装置。
  3. 前記識別手段は、前記検出手段によって検出された線上の点と、該点に基づくエピポーラ線と前記パターンにおける線との交点とにおける、輝度または色の差分を算出することにより、前記検出手段によって検出された線が前記パターンのどの線に対応するかを識別することを特徴とする請求項2に記載の情報処理装置。
  4. 前記検出手段は、前記検出した線をさらに複数の線に分割して検出することを特徴とする請求項1〜3の何れか1項に記載の情報処理装置。
  5. 前記検出手段は、前記検出した線を長さが所定値以下となるようにさらに分割して検出することを特徴とする請求項4に記載の情報処理装置。
  6. 前記検出手段は、前記検出した線、及び前記パターンを構成する線において連続的に変化する輝度または色の位置に基づいて、前記検出した線をさらに複数の線に分割して検出することを特徴とする請求項4に記載の情報処理装置。
  7. 前記識別手段は、さらに前記検出手段によって検出された線の画像上での位置の順序と、前記パターンの線の位置の順序との整合に基づいて、前記検出手段によって検出された線が前記パターンのどの線に対応するかを識別することを特徴とする請求項1〜6の何れか1項に記載の情報処理装置。
  8. 前記検出手段によって検出された線上の輝度または色と、前記検出された線の周囲の輝度または色とのコントラストに基づいて、前記距離算出手段によって算出された距離の値に含まれる誤差の大きさを示す値を算出する誤差算出手段をさらに備えることを特徴とする請求項1〜7の何れか1項に記載の情報処理装置。
  9. 前記パターンを前記計測対象物体に投影する投影手段と、
    前記投影手段から前記パターンが投影された計測対象物体を撮像する撮像手段と、を備え、
    前記取得手段は、前記撮像手段から前記画像を取得することを特徴とする請求項1〜8の何れか1項に記載の情報処理装置。
  10. 複数の線で構成され、前記線上で3種類以上の輝度または色が位置に応じて連続的に変化するパターンが投影された計測対象物体を撮像した画像を取得する取得工程と、
    前記取得工程において取得された画像から前記計測対象物体に投影されたパターンの線を検出する検出工程と、
    前記検出工程において検出された線、及び前記パターンを構成する線において連続的に変化する輝度または色の位置に基づいて、前記検出工程において検出された線が前記パターンのどの線に対応するかを識別する識別工程と、
    前記識別工程で識別された線の輝度または色の位置に基づいて、前記パターンが投影された計測対象物体の表面上の点の距離を算出する距離算出工程と、
    を備えることを特徴とする情報処理方法。
  11. 複数の線で構成され、前記線上で3種類以上の輝度または色が位置に応じて連続的に変化するパターンが投影された計測対象物体を撮像した画像を取得する取得工程と、
    前記取得工程において取得された画像から前記計測対象物体に投影されたパターンの線を検出する検出工程と、
    前記検出工程において検出された線、及び前記パターンを構成する線において連続的に変化する輝度または色の位置に基づいて、前記検出工程において検出された線が前記パターンのどの線に対応するかを識別する識別工程と、
    前記識別工程で識別された線の輝度または色の位置に基づいて、前記パターンが投影された計測対象物体の表面上の点の距離を算出する距離算出工程と、
    をコンピュータに実行させることを特徴とするプログラム。
JP2015112379A 2015-06-02 2015-06-02 情報処理装置、情報処理方法及びプログラム Active JP6570321B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015112379A JP6570321B2 (ja) 2015-06-02 2015-06-02 情報処理装置、情報処理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015112379A JP6570321B2 (ja) 2015-06-02 2015-06-02 情報処理装置、情報処理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2016223980A JP2016223980A (ja) 2016-12-28
JP6570321B2 true JP6570321B2 (ja) 2019-09-04

Family

ID=57748779

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015112379A Active JP6570321B2 (ja) 2015-06-02 2015-06-02 情報処理装置、情報処理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6570321B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10839536B2 (en) * 2018-10-02 2020-11-17 Facebook Technologies, Llc Depth sensing using grid light patterns

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2517062B2 (ja) * 1988-04-26 1996-07-24 三菱電機株式会社 3次元計測装置
US6341016B1 (en) * 1999-08-06 2002-01-22 Michael Malione Method and apparatus for measuring three-dimensional shape of object
JP5578844B2 (ja) * 2009-12-21 2014-08-27 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
US9007602B2 (en) * 2010-10-12 2015-04-14 Canon Kabushiki Kaisha Three-dimensional measurement apparatus, three-dimensional measurement method, and computer-readable medium storing control program

Also Published As

Publication number Publication date
JP2016223980A (ja) 2016-12-28

Similar Documents

Publication Publication Date Title
JP6468802B2 (ja) 三次元計測装置、三次元計測方法及びプログラム
US8718326B2 (en) System and method for extracting three-dimensional coordinates
JP6465682B2 (ja) 情報処理装置、情報処理方法及びプログラム
US10006762B2 (en) Information processing apparatus, information processing method, and storage medium
JP6596433B2 (ja) 2つのカメラからの曲線の集合の構造化光整合
JP2011185872A (ja) 情報処理装置、その処理方法及びプログラム
CN105627932A (zh) 一种基于双目视觉的测距方法及装置
JP2012058076A (ja) 3次元計測装置及び3次元計測方法
JP2014013147A5 (ja)
US11803982B2 (en) Image processing device and three-dimensional measuring system
JP4701848B2 (ja) 画像マッチング装置、画像マッチング方法および画像マッチング用プログラム
US11348271B2 (en) Image processing device and three-dimensional measuring system
JP2008275366A (ja) ステレオ3次元計測システム
JP6452361B2 (ja) 情報処理装置、情報処理方法、プログラム
JP6411188B2 (ja) ステレオマッチング装置とステレオマッチングプログラムとステレオマッチング方法
JP6570321B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP6456084B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP5656018B2 (ja) 球体の検出方法
JP6655869B2 (ja) 画像処理装置、画像処理方法及びプログラム
Kuhl et al. Monocular 3D scene reconstruction at absolute scales by combination of geometric and real-aperture methods
JP2018041169A (ja) 情報処理装置およびその制御方法、プログラム
WO2019066724A1 (en) LIGHT PROJECTION SYSTEMS
WO2019116518A1 (ja) 物体検出装置及び物体検出方法
JP2018063161A (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
JP6521645B2 (ja) 画像計測装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180516

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190319

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190326

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190521

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: 20190709

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190806

R151 Written notification of patent or utility model registration

Ref document number: 6570321

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151