Top > Search of Japanese Patents > SYSTEM FOR RECOGNIZING POSITION AND POSTURE OF OBJECT USING STEREOSCOPIC IMAGE, METHOD OF RECOGNIZING POSITION AND POSTURE OF OBJECT, AND PROGRAM FOR EXECUTING METHOD > Specification

Specification :(In Japanese)ステレオ画像を利用した物体の位置および姿勢認識システムならびに物体の位置および姿勢認識方法を実行するプログラム

Country (In Japanese)日本国特許庁(JP)
Gazette (In Japanese)特許公報(B2)
Patent Number P4765075
Publication number P2008-065368A
Date of registration Jun 24, 2011
Date of issue Sep 7, 2011
Date of publication of application Mar 21, 2008
Title of the invention, or title of the device (In Japanese)ステレオ画像を利用した物体の位置および姿勢認識システムならびに物体の位置および姿勢認識方法を実行するプログラム
IPC (International Patent Classification) G06T   7/60        (2006.01)
G06T   1/00        (2006.01)
G01B  11/00        (2006.01)
G01B  11/26        (2006.01)
G01C   3/06        (2006.01)
FI (File Index) G06T 7/60 150B
G06T 1/00 315
G06T 1/00 340B
G06T 7/60 150P
G01B 11/00 H
G01B 11/26 H
G01C 3/06 110V
G01C 3/06 140
Number of claims or invention 12
Total pages 28
Application Number P2006-239190
Date of filing Sep 4, 2006
Date of request for substantive examination Mar 10, 2009
Patentee, or owner of utility model right (In Japanese)【識別番号】504174135
【氏名又は名称】国立大学法人九州工業大学
Inventor, or creator of device (In Japanese)【氏名】宮本 弘之
Representative (In Japanese)【識別番号】100090697、【弁理士】、【氏名又は名称】中前 富士男
【識別番号】100139262、【弁理士】、【氏名又は名称】中嶋 和昭
Examiner (In Japanese)【審査官】松永 稔
Document or reference (In Japanese)特開昭62-134773(JP,A)
大崎喜彦、外1名,ステレオ画像からの3次元近似モデルのフィッティング,電子情報通信学会論文誌,日本,社団法人電子情報通信学会,1998年 6月25日,第J81-D-II巻、第6号,p.1259-1268
伊谷忠義、外3名,テクスチャ画像を付与した3次元モデルに基づく腕の運動の認識,画像符号化シンポジウム第10回シンポジウム資料,日本,電子情報通信学会画像工学研究専門委員会,1995年10月 4日,p.123-124
Field of search G06T 7/60
G01B 11/00
G01B 11/26
G01C 3/06
G06T 1/00
Scope of claims (In Japanese)【請求項1】
ステレオ画像を利用した、概略形状が既知である物体の位置および姿勢認識システムであって、
(1)被写対象となる前記物体を含む領域について前記ステレオ画像を構成する第1および第2の画像の撮像をそれぞれ行う第1および第2のカメラを有するステレオカメラよりなる撮像部と、
(2)前記物体の概略形状に基づいて設定されるa)空間モデルの形状、およびb)該空間モデルのワールド座標系における位置、またはこの位置および姿勢を表す空間モデルパラメータの初期値を設定する空間モデル設定部と、
(3)それぞれ固有の識別子を有する仮想的な矩形領域の各辺の長さ、および該矩形領域のワールド座標系における位置を表す矩形領域パラメータの初期値を、前記空間モデル上に前記物体の概略形状に基づいて設定する矩形領域設定部と、
(4)前記矩形領域のワールド座標系における3次元座標を、前記第1および第2の画像のローカル座標系における2次元座標に変換し、前記第1および第2の画像上に、それぞれ前記矩形領域と同一の識別子を有する比較ウインドウを設定する比較ウインドウ設定部と、
(5)前記比較ウインドウ設定部により前記第1および第2の画像上に設定された、前記比較ウインドウ内部の部分画像を抽出し、前記比較ウインドウと同一の識別子を有する部分画像を生成する部分画像生成部と、
(6)前記部分画像生成部により生成された、同一の識別子を有する前記部分画像同士の全ての組について、前記部分画像同士の一致度が高いほど値が大きくなるよう定義された評価関数の演算を行い、前記評価関数が最大値に収束するまで前記空間モデルパラメータおよび前記矩形領域パラメータの更新、前記比較ウインドウの設定、前記部分画像の抽出、ならびに前記評価関数の演算を反復し、前記空間モデルと前記第1および第2の画像のマッチングを行うマッチング演算部とを有することを特徴とするステレオ画像を利用した物体の位置および姿勢認識システム。
【請求項2】
請求項1記載のステレオ画像を利用した物体の位置および姿勢認識システムにおいて、前記マッチング演算部における前記評価関数の演算は、同一の識別子を有する前記部分画像同士についてのエッジ特徴の一致度およびテクスチュアの一致度に関する評価演算を含むことを特徴とするステレオ画像を利用した物体の位置および姿勢認識システム。
【請求項3】
請求項1または2記載のステレオ画像を利用した物体の位置および姿勢認識システムにおいて、前記部分画像生成部は、同一の識別子を有する前記部分画像間の視差による大きさの違いを補正する部分画像視差補正手段をさらに有することを特徴とするステレオ画像を利用した物体の位置および姿勢認識システム。
【請求項4】
請求項1~3のいずれか1項に記載のステレオ画像を利用した物体の位置および姿勢認識システムにおいて、前記第1および第2の画像に対してエッジおよび肌色ピクセル領域の抽出処理を行う前処理部をさらに有することを特徴とするステレオ画像を利用した物体の位置および姿勢認識システム。
【請求項5】
ステレオ画像を利用した、概略形状が既知である物体の位置および姿勢認識方法を実行するプログラムであって、
前記物体の概略形状に基づいて設定されるa)空間モデルの形状、およびb)該空間モデルのワールド座標系における位置、またはこの位置および姿勢を表す空間モデルパラメータの初期値を設定する第1のステップと、
それぞれ固有の識別子を有する仮想的な矩形領域の各辺の長さ、および該矩形領域のワールド座標系における位置を表す矩形領域パラメータの初期値を、前記空間モデル上に前記物体の概略形状に基づいて設定する第2のステップと、
前記物体を含む領域を撮像した第1および第2のカメラからの画像をそれぞれ取り込む第3のステップと、
前記矩形領域のワールド座標系における3次元座標を、前記第1および第2の画像のローカル座標系における2次元座標に変換し、前記第1および第2の画像上に、それぞれ前記矩形領域と同一の識別子を有する比較ウインドウを設定する第4のステップと、
前記第4のステップで前記第1および第2の画像上に設定された前記比較ウインドウ内部の部分画像を抽出し、前記比較ウインドウと同一の識別子を有する部分画像を生成する第5のステップと、
前記第5のステップで生成された同一の識別子を有する前記部分画像同士の全ての組について、前記部分画像同士の一致度が高いほど値が大きくなるよう定義された評価関数の演算を行い、前記評価関数が最大値に収束するまで前記空間モデルパラメータおよび前記矩形領域パラメータの更新、前記第1~第5のステップ、ならびに前記評価関数の演算を反復し、前記空間モデルと前記第1および第2の画像のマッチングを行う第6のステップとをコンピュータに実行させることを特徴とするステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラム。
【請求項6】
請求項5記載のステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、前記第6のステップにおける前記評価関数の演算は、同一の識別子を有する前記部分画像同士についてのエッジ特徴の一致度およびテクスチュアの一致度に関する評価演算を含むことを特徴とするステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラム。
【請求項7】
請求項5または6記載のステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、前記矩形領域は、前記第1および第2の画像のローカル座標系における座標面と平行になるように設定されることを特徴とするステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラム。
【請求項8】
請求項5~7のいずれか1項に記載のステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、前記第5のステップと第6のステップの間に、同一の識別子を有する前記部分画像間の視差による大きさの違いを補正するステップAをさらにコンピュータに実行させることを特徴とするステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラム。
【請求項9】
請求項5記載のステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、前記物体は人間の腕であって、
前記第1のステップにおいて設定される前記空間モデルは、ワールド座標系における肩の3次元座標xS、yS、zS、肩関節の屈曲角度θ1、肩関節の内転角度θ2、肘関節の内旋角度θ3、および肘関節の屈曲角度θ4からなる前記空間モデルパラメータを有し、前腕および上腕部分をそれぞれ一定の長さを有するリンクで表現した、肩部および肘部に関節を有する前記人間の腕の空間モデルであり、
前記第2のステップにおいて、前記矩形領域は前記第1および第2の画像のローカル座標系における座標面と平行になるように設定され、該矩形領域は、手先部のエッジ特徴および肌色ピクセルの一致度の評価を行う手先部矩形領域と、前腕部および上腕部における輪郭の内側の領域についてテクスチュアの一致度の評価を行う腕中心部矩形領域と、前腕部および上腕部におけるエッジ特徴の一致度の評価を行う腕外側部矩形領域とからなり、
前記第6のステップにおける前記評価関数の演算は、前記エッジ特徴、テクスチュア、および肌色ピクセルの一致度の評価演算を含み、
前記第5のステップと第6のステップの間に、前記第1および第2の画像上に設定された同一の識別子を有する前記比較ウインドウ間の視差による大きさの違いを補正するステップAをさらにコンピュータに実行させることを特徴とするステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラム。
【請求項10】
請求項9記載のステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、前記第3のステップの後に前記第1および第2の画像に対して、前処理としてエッジおよび肌色ピクセル領域の抽出処理を行うステップBをさらにコンピュータに実行させることを特徴とするステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラム。
【請求項11】
請求項9または10記載のステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、前記第6のステップにおいて、まず、前記空間モデルパラメータのうちxS、ySおよびzSの1または複数の更新および前記評価関数の演算を反復し、前記人間の腕の空間モデルの肩位置と前記第1および第2の画像のマッチングを行い、次に、前記肩関節の屈曲角度θ1、および前記肩関節の内転角度θ2の1または複数の更新および前記評価関数の演算を反復し、前記人間の腕の空間モデルの上腕部および肘位置と前記第1および第2の画像のマッチングを行い、最後に前記肘関節の内旋角度θ3、および前記肘関節の屈曲角度θ4の1または複数の更新および前記評価関数の演算を反復し、前記人間の腕の空間モデルの前腕部と前記第1および第2の画像のマッチングを行うことを特徴とするステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラム。
【請求項12】
請求項9または10記載のステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、
前記第1のステップにおいて設定される前記人間の腕の空間モデルは、そのワールド座標系における3次元座標xH、yH、zHからなる前記空間モデルパラメータで表される頭部の中心をさらに有しており、
前記第2のステップにおいて設定される前記矩形領域は、前記頭部の中心点上に設定され、前記頭部のエッジ特徴および肌色ピクセルの一致度の評価を行う頭部矩形領域をさらに有しており、
前記第6のステップにおいて、前記空間モデルパラメータのうちxH、yHおよびzHの1または複数の更新および前記評価関数の演算を反復し、頭部位置について前記人間の腕の空間モデルと前記第1および第2の画像のマッチングを行い、前記空間モデルの頭部と肩部との位置関係から、前記空間モデルの肩部および前記第1および第2の画像とのマッチングを行うことを特徴とするステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラム。
Detailed description of the invention (In Japanese)【技術分野】
【0001】
本発明は、ステレオ画像を利用した物体の位置および姿勢認識システムならびに物体の位置および姿勢認識方法を実行するプログラムに関する。
【背景技術】
【0002】
物体の3次元的な位置および姿勢の検出は、各種ロボットの視覚システム、監視システム、マンマシンインターフェース、ゲーム機器等の幅広い分野への応用が期待されている。
近年、福祉施設や家庭内で人間の役に立つロボットの開発が盛んに行われているが、ここで問題になるのはロボットの教示方法である。従来、プログラム言語による動作制御やジョイスティック等を用いた教示が行われているが、これらは専門知識を要するとともに多大な手間を要する。したがって、誰でも簡単にロボットを扱うためには、例えば、音声や身振り等によるロボットとのコミュニケーション手法の確立が望まれている。
【0003】
ロボットに身振りを認識させるためには、カメラ等により撮像された画像データに基づき腕等の3次元的な位置および姿勢の認識を行う必要がある。
画像を用いて人間の腕の位置および姿勢を認識する1つの方法として、肩および肘関節を有し、上腕および前腕を線分(リンク)で表した腕モデルを用い、肩部分でこの腕モデルと人間の腕画像との位置合わせを行った後、各関節を少しずつ回転させて、画面上で腕画像の中心と腕モデルの重なり具合が最大となるよう各関節の角度を決定する方法がある。背景差分をとった上で肌色ピクセル領域を抽出することにより、画像より腕の領域のみを切り出す方法との組み合わせも試みられている。
しかし、従来のエッジ検出等の画像処理技術のみでは、腕画像と腕モデルの重なり具合の評価が困難である。さらに、肌色ピクセル領域を抽出して腕の領域のみを切り出す方法には、ロボットが移動していて背景が常に変化している場合には、腕の領域のみを切り出すのは非常に困難であるし、例えば長袖シャツを着用している人間の腕は認識できなくなるという問題もある。
【0004】
物体の3次元的な位置および姿勢を検出する方法として、複数のカメラを用いたステレオ画像方式が古くから知られている。ステレオ画像方式では、複数のカメラで撮像された画像データ間で、特定部位の像の対応関係を定める、いわゆる「対応付け」により、対応点間の視差を求め、2次元画像より物体とカメラとの距離(奥行き)に関する情報を抽出している。そして、対応付けにより得られる距離情報を基に物体の3次元モデルを構築し、その位置および姿勢を求める方法が、ステレオ画像を利用した物体の位置および姿勢認識方法の主流である(例えば、特許文献1)。
【0005】

【特許文献1】特開平9-237348号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、対応付けを正確に行うためには、一対のステレオ画像上における対応点の検出をいかに精度よく行うかが大きな課題となっている。特に、日常環境下では、煩雑な背景が視野内に存在することや、認識対象が人間の顔や腕である場合には、髪型や服装等が様々であること等が、ステレオ画像データ間の対応付けを困難にする要因となりうる。
従来のモーションキャプチャー装置では、色のついたボール、鏡、赤外線マーカー等のマーカーを対象物に取付け、一方の画像上のマーカー像に対応する他方の画像上のマーカー像を探索することにより、両画像データの対応付けを行っている。しかし、特殊なマーカーを取付けるのは非常に面倒である上、家庭用ロボットや生産ライン監視用システムにおいて対象物の全てにマーカーを取付けることは非現実的である。また、多くの場合、一方の画像上で抽出した特徴点周辺の小領域の画像データをテンプレートとして用い、他の画像上でテンプレートデータと対応する点を探索することによって視差を求め、認識対象となる物体の距離情報を読み出す方法が用いられているが、この方法では、対応点の探索に膨大な計算コストを要する。エピポーラ拘束等を利用して探索を行う範囲を制限することにより計算コストを減少させることも考えられるが、カメラのキャリブレーションを厳密に行う必要があるため、床に凹凸や段差のある家庭内を移動するロボットに適用する場合、キャリブレーションを頻繁に行う必要がある等の新たな問題が生じるおそれがある。
【0007】
本発明はかかる事情に鑑みてなされたもので、計算コストを要し、誤認識を完全に回避できない対応点探索を行わずに物体の位置および姿勢の認識を行うことができる、ステレオ画像を利用した物体の位置および姿勢認識システムならびに物体の位置および姿勢認識方法を実行するプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
前記目的に沿う第1の発明に係るステレオ画像を利用した物体の位置および姿勢認識システムは、ステレオ画像を利用した、概略形状が既知である物体の位置および姿勢認識システムであって、(1)被写対象となる前記物体を含む領域について前記ステレオ画像を構成する第1および第2の画像の撮像をそれぞれ行う第1および第2のカメラを有するステレオカメラよりなる撮像部と、(2)前記物体の概略形状に基づいて設定されるa)空間モデルの形状、およびb)該空間モデルのワールド座標系における位置、またはこの位置および姿勢を表す空間モデルパラメータの初期値を設定する空間モデル設定部と、(3)それぞれ固有の識別子を有する仮想的な矩形領域の各辺の長さ、および該矩形領域のワールド座標系における位置を表す矩形領域パラメータの初期値を、前記空間モデル上に前記物体の概略形状に基づいて設定する矩形領域設定部と、(4)前記矩形領域のワールド座標系における3次元座標を、前記第1および第2の画像のローカル座標系における2次元座標に変換し、前記第1および第2の画像上に、それぞれ前記矩形領域と同一の識別子を有する比較ウインドウを設定する比較ウインドウ設定部と、(5)前記比較ウインドウ設定部により前記第1および第2の画像上に設定された、前記比較ウインドウ内部の部分画像を抽出し、前記比較ウインドウと同一の識別子を有する部分画像を生成する部分画像生成部と、(6)前記部分画像生成部により生成された、同一の識別子を有する前記部分画像同士の全ての組について、前記部分画像同士の一致度が高いほど値が大きくなるよう定義された評価関数の演算を行い、前記評価関数が最大値に収束するまで前記空間モデルパラメータおよび前記矩形領域パラメータの更新、前記比較ウインドウの設定、前記部分画像の抽出、ならびに前記評価関数の演算を反復し、前記空間モデルと前記第1および第2の画像のマッチングを行うマッチング演算部とを有する。
【0009】
第1の発明に係るステレオ画像を利用した物体の位置および姿勢認識システムにおいて、前記マッチング演算部における前記評価関数の演算は、同一の識別子を有する前記部分画像同士についてのエッジ特徴の一致度およびテクスチュアの一致度に関する評価演算を含んでいてもよい。
【0010】
第1の発明に係るステレオ画像を利用した物体の位置および姿勢認識システムにおいて、前記部分画像生成部は、同一の識別子を有する前記部分画像間の視差による大きさの違いを補正する部分画像視差補正手段をさらに有していてもよい。
【0011】
第1の発明に係るステレオ画像を利用した物体の位置および姿勢認識システムにおいて、前記第1および第2の画像に対してエッジおよび肌色ピクセル領域の抽出処理を行う前処理部をさらに有していてもよい。
【0020】
2の発明に係るステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムは、ステレオ画像を利用した、概略形状が既知である物体の位置および姿勢認識方法を実行するプログラムであって、前記物体の概略形状に基づいて設定されるa)空間モデルの形状、およびb)該空間モデルのワールド座標系における位置、またはこの位置および姿勢を表す空間モデルパラメータの初期値を設定する第1のステップと、それぞれ固有の識別子を有する仮想的な矩形領域の各辺の長さ、および該矩形領域のワールド座標系における位置を表す矩形領域パラメータの初期値を、前記空間モデル上に前記物体の概略形状に基づいて設定する第2のステップと、前記物体を含む領域を撮像した第1および第2のカメラからの画像をそれぞれ取り込む第3のステップと、前記矩形領域のワールド座標系における3次元座標を、前記第1および第2の画像のローカル座標系における2次元座標に変換し、前記第1および第2の画像上に、それぞれ前記矩形領域と同一の識別子を有する比較ウインドウを設定する第4のステップと、前記第4のステップで前記第1および第2の画像上に設定された前記比較ウインドウ内部の部分画像を抽出し、前記比較ウインドウと同一の識別子を有する部分画像を生成する第5のステップと、前記第5のステップで生成された同一の識別子を有する前記部分画像同士の全ての組について、前記部分画像同士の一致度が高いほど値が大きくなるよう定義された評価関数の演算を行い、前記評価関数が最大値に収束するまで前記空間モデルパラメータおよび前記矩形領域パラメータの更新、前記第1~第5のステップ、ならびに前記評価関数の演算を反復し、前記空間モデルと前記第1および第2の画像のマッチングを行う第6のステップとをコンピュータに実行させる。
【0021】
2の発明に係るステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、前記第6のステップにおける前記評価関数の演算は、同一の識別子を有する前記部分画像同士についてのエッジ特徴の一致度およびテクスチュアの一致度に関する評価演算を含んでいてもよい。
【0022】
2の発明に係るステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、前記矩形領域は、前記第1および第2の画像のローカル座標系における座標面と平行になるように設定されることが好ましい。
【0023】
2の発明に係るステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、前記第5のステップと第6のステップの間に、同一の識別子を有する前記部分画像間の視差による大きさの違いを補正するステップAをさらにコンピュータに実行させてもよい。
【0024】
2の発明に係るステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、前記物体は人間の腕であって、前記第1のステップにおいて設定される前記空間モデルは、ワールド座標系における肩の3次元座標xS、yS、zS、肩関節の屈曲(伸展)角度θ1、肩関節の内転(外転)角度θ2、肘関節の内旋(外旋)角度θ3、および肘関節の屈曲(伸展)角度θ4からなる前記空間モデルパラメータを有し、前腕および上腕部分をそれぞれ一定の長さを有するリンクで表現した、肩部および肘部に関節を有する前記人間の腕の空間モデルであり、前記第2のステップにおいて、前記矩形領域は前記第1および第2の画像のローカル座標系における座標面と平行になるように設定され、該矩形領域は、手先部のエッジ特徴および肌色ピクセルの一致度の評価を行う手先部矩形領域と、前腕部および上腕部における輪郭の内側の領域についてテクスチュアの一致度の評価を行う腕中心部矩形領域と、前腕部および上腕部におけるエッジ特徴の一致度の評価を行う腕外側部矩形領域とからなり、前記第6のステップにおける前記評価関数の演算は、前記エッジ特徴、テクスチュア、および肌色ピクセルの一致度の評価演算を含み、前記第5のステップと第6のステップの間に、前記第1および第2の画像上に設定された同一の識別子を有する前記比較ウインドウ間の視差による大きさの違いを補正するステップAをさらにコンピュータに実行させてもよい。
【0025】
2の発明に係るステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、前記第3のステップの後に前記第1および第2の画像に対して、前処理としてエッジおよび肌色ピクセル領域の抽出処理を行うステップBをさらにコンピュータに実行させてもよい。
【0026】
2の発明に係るステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、前記第6のステップにおいて、まず、前記空間モデルパラメータのうちxS、ySおよびzSの1または複数の更新および前記評価関数の演算を反復し、前記人間の腕の空間モデルの肩位置と前記第1および第2の画像のマッチングを行い、次に、前記肩関節の屈曲(伸展)角度θ1、および前記肩関節の内転(外転)角度θ2の1または複数の更新および前記評価関数の演算を反復し、前記人間の腕の空間モデルの上腕部および肘位置と前記第1および第2の画像のマッチングを行い、最後に前記肘関節の内旋(外旋)角度θ3、および前記肘関節の屈曲(伸展)角度θ4の1または複数の更新および前記評価関数の演算を反復し、前記人間の腕の空間モデルの前腕部と前記第1および第2の画像のマッチングを行ってもよい。
【0027】
2の発明に係るステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、前記第1のステップにおいて設定される前記人間の腕の空間モデルは、そのワールド座標系における3次元座標xH、yH、zHからなる前記空間モデルパラメータで表される頭部の中心をさらに有しており、前記第2のステップにおいて設定される前記矩形領域は、前記頭部の中心点上に設定され、前記頭部のエッジ特徴および肌色ピクセルの一致度の評価を行う頭部矩形領域をさらに有しており、前記第6のステップにおいて、前記空間モデルパラメータのうちxH、yHおよびzHの1または複数の更新および前記評価関数の演算を反復し、頭部位置について前記人間の腕の空間モデルと前記第1および第2の画像のマッチングを行い、前記空間モデルの頭部と肩部との位置関係から、前記空間モデルの肩部および前記第1および第2の画像とのマッチングを行ってもよい。
【発明の効果】
【0028】
第1の発明に係るステレオ画像を用いた物体の位置および姿勢認識システムにおいては、第1および第2の画像の対応付けを行うことにより距離情報を抽出する場合に比べ、第1および第2の画像と空間モデルとのマッチングに要する計算コストを低減させることができる。
また、各部に機能を分担させ各々で必要な処理を行うことにより、短時間で精度よく物体の位置および姿勢の認識を行うことができる。
【0029】
第1の発明に係るステレオ画像を利用した物体の位置および姿勢認識システムにおいて、マッチング演算部における評価関数の演算が、同一の識別子を有する部分画像同士についてのエッジ特徴の一致度およびテクスチュアの一致度に関する評価演算を含む場合には、常に部分画像内のエッジ特徴とテクスチュアの両者を用いて評価関数の演算が行われる。そのため、例えば、背景が均一であり、部分画像間のエッジ特徴およびテクスチュアの一方のみの一致度のみでマッチングを行うと誤認識が生じるおそれがある場合であっても、精度よくマッチングを行うことができる。
【0030】
第1の発明に係るステレオ画像を利用した物体の位置および姿勢認識システムが、同一の識別子を有する部分画像間の視差による大きさの違いを補正する部分画像視差補正手段を有していると、比較演算を行う部分画像の大きさが視差により異なることを意識することなくマッチング演算部における評価関数の演算を行うことができる。そのため、空間モデルと第1および第2の画像とのマッチングを高精度で行うことができる。
【0031】
第1の発明に係るステレオ画像を利用した物体の位置および姿勢認識システムが、第1および第2の画像に対してエッジおよび肌色ピクセル領域の抽出処理を行う前処理部をさらに有する場合には、前処理された画像を用いることにより、エッジおよび肌色ピクセル領域に関する評価関数の演算をより高精度に行うことができる。
【0040】
2の発明に係るステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいては、市販のパソコンおよびCCDカメラ等の比較的安価なハードウェアを用いて、物体の位置および姿勢認識方法を実行することができる。また、第1および第2の画像の対応付けを行うことにより距離情報を抽出する場合に比べ、空間モデルとのマッチングに要する計算コストを低減させることができる。
【0041】
2の発明に係るステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、第6のステップにおける評価関数の演算が、同一の識別子を有する比較ウインドウ内部の部分画像同士についてのエッジ特徴の一致度およびテクスチュアの一致度に関する評価演算を含む場合には、常に部分画像内のエッジ特徴とテクスチュアの両者を用いて評価関数の演算が行われる。そのため、例えば、背景が均一であり、部分画像間のエッジ特徴およびテクスチュアの一方のみの一致度のみでマッチングを行うと誤認識が生じるおそれがある場合であっても、精度よくマッチングを行うことができる。
【0042】
2の発明に係るステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、矩形領域が、第1および第2の画像のローカル座標系における座標面と平行になるように設定される場合には、矩形領域内の全ての点について第1および第2画像間の視差は一定となるため、第6のステップにおけるマッチングを高精度で行うことができる。
【0043】
2の発明に係るステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、第5のステップと第6のステップの間に、同一の識別子を有する比較ウインドウ間の視差による大きさの違いを補正するステップAをさらにコンピュータに実行させる場合には、矩形領域の設定の際に、視差により第1および第2の画像間上に投影される比較ウインドウの大きさが異なることを意識することなく作業を行うことができ、第6のステップにおいて空間モデルと第1および第2の画像とのマッチングを高精度で行うことができる。
【0044】
2の発明に係るステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、物体が人間の腕である場合、第1のステップにおいてコンピュータに設定させる空間モデルが、ワールド座標系における肩の3次元座標xS、yS、zS、肩関節の屈曲角度θ1、肩関節の内転角度θ2、肘関節の内旋角度θ3、および肘関節の屈曲角度θ4からなる空間モデルパラメータを有し、前腕および上腕部分をそれぞれ一定の長さを有するリンクで表現した、肩部および肘部に関節を有する人間の腕の空間モデルであると、実際の腕の姿勢を的確にモデル化することができ、高精度の位置および姿勢認識ができる。
また、第2のステップにおいてコンピュータに設定させる矩形領域が、手先部のエッジ特徴および肌色ピクセルの一致度の評価を行う手先部矩形領域と、前腕部および上腕部における輪郭の内側の領域についてテクスチュアの一致度の評価を行う腕中心部矩形領域と、前腕部および上腕部におけるエッジ特徴の一致度の評価を行う腕外側部矩形領域とからなると、手先部のエッジ特徴および肌色ピクセル領域、前腕部および上腕部のエッジ特徴およびテクスチュアを用いて、第6のステップにおいて精度よくマッチングを行うことができる。
さらに、第6のステップにおいてコンピュータに実行させる評価関数の演算が、エッジ特徴、テクスチュア、および肌色ピクセルの一致度の評価演算を含むものであると、例えば、背景が均一であるため、部分画像間のエッジ特徴およびテクスチュアの一方のみの一致度のみでマッチングを行うと誤認識が生じるおそれがある場合であっても、精度よくマッチングを行うことができ、さらに、人体に特徴的な肌色ピクセル領域を用いてより高精度にマッチングを行うことができる。
【0045】
2の発明に係るステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、第3のステップの後に第1および第2の画像に対して、前処理としてエッジおよび肌色ピクセル領域の抽出処理を行うステップBをさらにコンピュータに実行させる場合には、前処理された画像を用いることにより、エッジ特徴および肌色ピクセル領域に関する評価関数の演算をより高精度に行うことができる。
【0046】
2の発明に係るステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、コンピュータに実行させる第6のステップにおいて、まず、空間モデルパラメータのうちxS、ySおよびzSの1または複数の更新および評価関数の演算を反復し、人間の腕のモデルの肩位置と第1および第2の画像のマッチングを行い、次に、肩関節の屈曲角度θ1および前記肩関節の内転角度θ2の1または複数の更新および評価関数の演算を反復し、人間の腕のモデルの上腕部および肘位置と第1および第2の画像のマッチングを行い、最後に肘関節の内旋角度θ3、および前記肘関節の屈曲角度θ4の1または複数の更新および評価関数の演算を反復し、人間の腕のモデルの前腕部と第1および第2の画像のマッチングを行うと、全空間モデルパラメータを同時に更新しながら評価関数の演算を反復する場合に比べ、計算コストを低減することができる。
【0047】
2の発明に係るステレオ画像を利用した物体の位置および姿勢認識方法を実行するプログラムにおいて、第1のステップにおいてコンピュータに設定させる人間の腕の空間モデルが頭部の中心をさらに有しており、第2のステップにおいてコンピュータに設定させる矩形領域が、頭部の中心点上に設定され、頭部のエッジ特徴および肌色ピクセルの一致度の評価を行う頭部矩形領域をさらに有しており、コンピュータに実行させる第6のステップにおいて、空間モデルパラメータのうちxH、yHおよびzHの1または複数の更新および評価関数の演算を反復し、人間の腕のモデルの頭部位置と第1および第2の画像のマッチングを行い、空間モデルの頭部と肩部との位置関係から、空間モデルの肩部および第1および第2の画像とのマッチングを行うと、肌色ピクセル領域が大きいため位置の認識が容易な顔の位置を決定することにより、顔と肩との位置関係から肩の位置をより高精度に決定することができるため、より高精度にマッチングを行うことができる。
【発明を実施するための最良の形態】
【0048】
続いて、添付した図面を参照しつつ、本発明を具体化した実施の形態につき説明し、本発明の理解に供する。
まず、図1を参照しながら、本発明の一実施の形態に係るステレオ画像を利用した物体の位置および姿勢認識システム、物体の位置および姿勢認識方法、およびこの方法を実行するプログラムについて説明する。
本発明の一実施の形態に係るステレオ画像を利用した物体の位置および姿勢認識システム10は、被写対象となる物体を含む領域についてステレオ画像を構成する第1および第2の画像の撮像をそれぞれ行う第1および第2のカメラを有するステレオカメラよりなる撮像部11、システム本体12、入力部13および出力部14から構成される。
【0049】
システム本体12は、空間モデル設定部16、矩形領域設定部19、比較ウインドウ設定部22、前処理部25、部分画像生成部29、およびマッチング演算部33を含んで構成される。
空間モデル設定部16は、空間モデル設定手段17および空間モデル記憶手段18からなる。
矩形領域設定部19は、矩形領域設定手段20および矩形領域記憶手段21からなる。
比較ウインドウ設定部22は、座標変換手段23および比較ウインドウ記憶手段24からなる。
前処理部25は、エッジ抽出手段26、肌色ピクセル抽出手段27、および前処理画像記憶手段28からなる。
部分画像生成部29は、部分画像抽出手段30、部分画像記憶手段31、および部分画像視差補正手段32よりなる。
マッチング演算部33は、評価関数演算手段34、評価関数記憶手段35、収束判定手段36、およびパラメータ更新手段37よりなる。
【0050】
撮像部11は、同一の高さに、それぞれの光軸が平行になるように所定の間隔(基線長)で配置された2台のカメラよりなる平行ステレオカメラである。基線長は、被写対象となる物体の大きさや撮像部11からの距離、要求される認識精度等に応じて適宜調節される。カメラとしては、CCD等の任意のカメラを用いることができるが、カラー画像の撮像ができるものが好ましい。
それぞれ左側(第1)および右側(第2)のカメラにより撮像された、1対のステレオ画像(第1および第2の画像)である左画像および右画像は、ステレオ画像記憶手段15に記憶される。マッチング演算部33における処理に用いられる左画像および右画像は、直接撮像部11から取り込まれたものであってもよく、ステレオ画像記憶手段15から読み出されたものであってもよい。
【0051】
次に、物体の空間モデルおよび空間モデルパラメータの設定について説明する。
物体の空間モデルは、位置および姿勢認識の対象となる物体の概略形状、関節の数、および関節運動の自由度等に基づいて定められる。図2に、物体の一例である人間の腕の、空間モデルの一例である2関節4自由度モデルの概略図を示す。このモデルは、それぞれ長さがL1およびL2である剛直なリンクで近似した上腕および前腕、肩および肘に相当する2つの関節よりなる。また、このモデルにおいて、腕のワールド座標系における位置および姿勢は、肩の3次元座標(xS,yS,zS)、肩関節の屈曲(伸展)角度θ1、肩関節の内転(外転)角度θ2、肘関節の内旋(外旋)角度θ3、および肘関節の屈曲(伸展)角度θ4よりなる空間モデルパラメータを用いて表される。ここで、肩関節の「屈曲(伸展)」および「内転(外転)」は、肩関節の前後方向および左右方向への回転をそれぞれ意味する。また、肘関節の「内旋(外旋)」および「屈曲(伸展)」は、上腕を回転軸とする前腕部の運動および肘関節の曲げ伸ばしによる前腕部の運動をそれぞれ意味する
回転角θ1~θ4については、人間の腕の各関節における可動域に基づき、可変範囲に制限を設けることが、非現実的な姿勢の認識結果を避ける上で好ましい。
ワールド座標系における原点の位置、回転角θ1~θ4における角度0度の定義、およびどちらの回転方向を正方向にするかについては任意に定めることができる。
空間モデル設定手段17において設定された空間モデルパラメータ(xS,yS,zS,θ1,θ2,θ3,θ4)の初期値は、空間モデル記憶手段18に記憶される。
【0052】
なお、ここでは人間の腕の空間モデルについて説明を行ったが、可動部分を有しない物体については関節を有しない空間モデルを用いることができることは勿論である。
例えば、位置および姿勢認識の対象となる物体が人間の顔やボール等の場合、例えばその中心位置を表す点を空間モデルとして、その点のワールド座標系における3次元座標(x,y,z)を空間モデルパラメータとしてそれぞれ用いることができる。
また、位置および姿勢認識の対象となる物体が野球のバットのような棒状の物体である場合には、長さがLである剛直なリンクを空間モデルとして用いることができる。この場合、空間モデルパラメータとしては、両端部のワールド座標系における3次元座標(x1,y1,z1)、および(x2,y2,z2)を用いてもよく、一方の端部のワールド座標系における3次元座標(x,y,z)およびモデルの姿勢角(例えば、オイラー角ψ,θ,φ)を用いてもよい。
【0053】
次に、矩形領域の設定について説明する。
矩形領域は、左画像および右画像上に比較ウインドウを設定するために、位置および姿勢認識の対象となる物体の空間モデル上に設定される仮想的な領域である。それぞれの矩形領域は、識別番号等の固有の識別子を有している。
左画像および右画像上にそれぞれ設定された比較ウインドウは、その内部の部分画像の特徴を抽出し、両画像間で比較およびマッチングを行うためのものであり、空間モデル上に設定された矩形領域のこれらのステレオ画像上への「投影像」に相当する。したがって、左画像および右画像上の比較ウインドウは、その投影元となる矩形領域を介して互いに関連付けられる。より具体的には、例えば、左画像および右画像上に設定された比較ウインドウのそれぞれに投影元となった矩形領域と同一の識別子を付すことにより、同一の識別子を有する比較ウインドウ同士を関連付けることが可能になる。
【0054】
以下、人間の腕の空間モデルである2関節4自由度モデルを例にとって、矩形領域の設定についてより具体的に説明する。
人間の腕の空間モデル上に設定される矩形領域の一例の模式図を図3に示す。ここで、図示された人間の腕は、空間モデル上に配置された仮想的な人間の腕の概略形状を表す。以下の説明において、「手先部」、「上腕部」、および「前腕部」は、前記の仮想的な人間の腕におけるそれぞれの部位を意味する。
この例において設定される矩形領域は、(1)「手先部」近傍に設定され、「手先部」のエッジおよび肌色ピクセルの一致度の評価を行うための手先部矩形領域、(2)「上腕部」および「前腕部」の輪郭の内側の中心領域に設定され、「上腕部」および「前腕部」中心領域(輪郭の内側の領域)のテクスチュア特徴(例えば、服の色および模様等)の一致度の評価を行うための腕中心部矩形領域、および(3)「上腕部」および「前腕部」の外側近傍に設定され、「上腕部」および「前腕部」のエッジ特徴の一致度の評価を行うための腕外側部矩形領域の3種類よりなる。
【0055】
図4に、手先部、腕中心部および腕外側部矩形領域の空間配置の概略図を示す。x、y、およびz軸は、ワールド座標系における座標軸を示すが、この例では、x-y平面が第1および第2の画像のローカル座標系におけるx-y平面と平行になるように設定されている。この図に示すように、手先部矩形領域は、常にx-y平面と平行になるように設定されている。また、腕中心部および腕外側部矩形領域も、リンク(前腕部)の姿勢に関わりなく常にx-y平面に平行になるように設定される。
【0056】
なお、ここでは人間の腕の空間モデルについて説明を行ったが、他の例として位置および姿勢認識の対象となる物体が人間の顔である場合における矩形領域の設定の一例を図5に示す。ここで、図示された人間の顔は、空間モデル上に配置された仮想的な人間の顔の概略形状を表す。
この例において設定される矩形領域は、仮想的な顔の輪郭の内側領域に設定され、目や鼻等の特徴を一致度の評価を行うための顔中心部矩形領域、および仮想的な顔の輪郭の近傍に配置され、エッジ特徴の一致度の評価を行うための顔外側部矩形領域よりなる。
しかし、図5はあくまでも一例であり、例えば、人間の腕の空間モデルにおける手先部矩形領域のように、顔のエッジ特徴および目や鼻等のテクスチュア特徴の両者を抽出するための単一の矩形領域を設定してもよい。
【0057】
各矩形領域の形状およびワールド座標系における位置を表す矩形領域パラメータとしては、例えば、各矩形領域の4つの角の3次元座標、各矩形領域の重心の3次元座標および各辺の長さ等を用いることができる。これらの初期値は、矩形領域記憶手段21に記憶される。
【0058】
次に、比較ウインドウの設定について説明する。
ワールド座標系と、左画像および右画像のローカル座標系との関係を図6に示す。
ワールド座標系における3次元座標(X,Y,Z)が与えられた場合、左画像および右画像のローカル座標系における対応点pLおよびpRの座標(xL,y)、(xR,y)は、それぞれ次式(I)~(III)で与えられる。
【0059】
【数1】
JP0004765075B2_000002t.gif

【0060】
式中、bは基線長を、fは焦点距離をそれぞれ表す。
座標変換手段23では、上式を用いて、各矩形領域の4つの頂点のワールド座標系における3次元座標を、左画像および右画像のローカル座標系における2次元座標に変換する。このようにして得られた各矩形領域に対応する比較ウインドウの4つの頂点の2次元座標は、比較ウインドウ記憶手段24に記憶される。
【0061】
マッチング演算部33における処理に用いられる左画像および右画像は、前処理部25においてエッジおよび肌色ピクセル領域の抽出処理を前処理として受けたものであってもよい。
ここで、前処理部25におけるエッジおよび肌色ピクセル領域の抽出処理について説明する。
エッジ抽出手段26におけるエッジの抽出は、例えば、空間1次微分処理(ソーベル(Sobel)オペレータ等)、空間2次微分処理(4方向または8方向ラプラシアンフィルタ等)等の任意の公知の手段を用いて行うことができる。
【0062】
また、肌色ピクセル抽出手段27における肌色ピクセル領域の抽出は、撮像部11から直接、あるいはステレオ画像規則手段15から読み出された左画像および右画像を、肌色モデルデータと比較して2値画像を抽出することにより行うことができる。
より具体的には、RGB表色系における標準的な肌色に相当するR、G、Bの値を予め定めたものを肌色モデルデータとして用い、第1および第2の画像の各画素毎に肌色モデルデータとの比較を行い、例えば、肌色と判定されたピクセルの値を1、肌色と判定されなかったピクセルの値を0とすることにより2値画像が得られる。
肌色モデルデータとして、標準値に基づいて定めたものの代わりに、被写対象となる人間の肌色ピクセル領域をサンプリングし、その領域内のR、G、B値の平均値を用いてもよい。
また、RGB表色系の代わりに、HSV表色系、YIQ表色系等を用いて肌色ピクセル領域の抽出を行ってもよい。
このようにして得られた前処理画像は、前処理画像記憶手段28に記憶される。
【0063】
次に部分画像の抽出について説明する。
このようにして得られた比較ウインドウを左画像および右画像上に投影した際に、各比較ウインドウ内部の部分画像は、部分画像抽出手段30により抽出され、それぞれ部分画像記憶手段31に記憶される。
部分画像抽出手段30における部分画像の抽出は、例えば、各比較ウインドウより、その輪郭および内部の画素値を1、外部の画素値を0とするマスク画像を生成し、次式(IV)で表される画素間演算処理(マスク処理)を実行することにより行われる。
【0064】
【数2】
JP0004765075B2_000003t.gif

【0065】
式中、IMm,nは、第m(mは、1または2である)の画像上において、識別子nを有する比較ウインドウとのマスク処理により得られる部分画像を、IMmは、第mの画像を、MSKm,nは、第mの画像上の識別子nを有する比較ウインドウをそれぞれ表し、(i,j)は、図7に示すように定義される、ピクセルの横(x)方向および縦(y)方向の位置座標で表されるピクセルを表す。
【0066】
このようにして得られる、左画像および右画像から抽出された、識別子nを有する部分画像IM1,nおよびIM2,nは、y方向の高さは等しいが、視差のためx方向の幅が異なっている。そこで、マッチング演算部33における比較演算に先立ち、部分画像視差補正手段32により、IM1,nおよびIM2,nの幅が等しくなるように、IM1,nおよびIM2,nのいずれか一方に対してx方向に拡大または縮小を行う。
【0067】
次に、評価関数演算手段34による評価関数の演算について説明する。
物体の位置および姿勢認識システム10は、左画像および右画像間の対応付けを行わず、両画像上に設定された比較ウインドウ内部の部分画像同士について比較演算および物体の空間モデルの位置および姿勢を表す空間モデルパラメータの更新を反復し、部分画像同士の一致度が最大となるときの空間モデルパラメータより物体の位置および姿勢の認識を行う。
部分画像同士の一致度の指標として、一致度が高くなるほど値が大きくなる評価関数を定義し、評価関数演算手段34においてその演算を行う。
評価関数の演算においては、例えば、下式(V)に示すように、左画像および右画像から抽出された部分画像IM1,nおよびIM2,nの比較演算を、全ての識別子nの組について行い、その総和を評価関数とする。
【0068】
【数3】
JP0004765075B2_000004t.gif

【0069】
式中、Oは評価関数を、Onは、Oと同様に部分画像間の一致度が高くなるほど値が大きくなるように定義されている、識別子nを有する部分画像同士の一致度を表す関数をそれぞれ表す。また、wnは、Onに対する重み係数を表す。
【0070】
次に、人間の腕の空間モデルである2関節4自由度モデルを例にとって、手先部、腕中心部、および腕外側部に設定された各比較ウインドウにおける比較演算の具体例について説明する。
【0071】
手先部においては、肌色ピクセル位置の一致度を表すNSKINの演算、およびエッジ特徴が同一であるピクセル数NEDGEの演算を行う。
まず、NSKINの演算について説明する。
NSKINの初期値を0に設定し、手先部矩形領域より左画像および右画像上に設定された比較ウインドウを用いたマスク処理により抽出された内部画像について、同一の位置座標(i,j)で表されるピクセルが、両者ともに肌色であるか否か判定を行い、両者ともに肌色であると判定される場合には、下式(VI)に示すように、NSKINの値に1を加算する。
【0072】
【数4】
JP0004765075B2_000005t.gif

【0073】
次にNEDGEの演算について説明する。
NEDGEの初期値を0に設定し、手先部矩形領域より左画像および右画像上に設定された比較ウインドウを用いたマスク処理により抽出された内部画像について、同一の位置座標(i,j)で表されるピクセルがともにエッジであり、かつ両者の画素値の相違度の尺度であるSAD(Sum of Absolute Difference:差の絶対値和)が予め設定された閾値ζSADより小さい場合には、下式(VII)に示すように、NEDGEの値に1を加算する。
【0074】
【数5】
JP0004765075B2_000006t.gif

【0075】
ここで、位置座標(i,j)で表されるピクセル同士のSADは、下式(VIII)のように定義される。
【0076】
【数6】
JP0004765075B2_000007t.gif

【0077】
図8(A)に示すように、空間モデルの位置および姿勢が実際の腕の位置および姿勢に一致している場合には、手先部の比較ウインドウは左画像および右画像上の手先部の同じような位置にそれぞれ存在するため、NSKINおよびNEDGEの値は大きくなる。一方、図8(B)に示すように、空間モデルの位置および姿勢が実際の腕の位置および姿勢に一致していない場合には、手先部の比較ウインドウは左画像および右画像上の手先部上に位置しないため、両者の肌色ピクセル位置の一致度は低くなり、NSKINおよびNEDGEの値は小さくなる。
【0078】
腕中心部においては、部分画像全体を、肌や単一色の袖等の均一な色が占め、エッジが存在しない場合がある。したがって、腕中心部における部分画像同士の比較演算においては、手先部におけるNEDGEの演算のようなエッジ特徴に関する評価演算を行わず、テクスチュア特徴の一致度を表すSnについて演算を行う。
識別子nを有する腕中心部の部分画像同士についてのSnは、SADを用いて下式(IX)の様に定義される。これを全ての腕中心部比較ウインドウについて合計したものをSFとする。
【0079】
【数7】
JP0004765075B2_000008t.gif

【0080】
SADの定義から明らかなように、Snは、テクスチュア特徴の一致度が高くなるほど値が小さくなるので、評価関数に導入する場合には、マイナスの係数を乗じる必要がある。
【0081】
腕外側部においては、エッジ特徴が同一であるピクセル数NEDGEの演算、およびエッジの方向が、空間モデルのリンクの方向と一致するピクセル数NORIENTの演算を行う。NEDGEの演算については既に説明したので、ここではNORIENTの演算について説明する。
NORIENTの演算においては、3×3ピクセルよりなるマスクを用い、まず、エッジ近傍、および座標変換部により左画像および右画像上に投影された腕モデルのリンク近傍の画像についてマスク処理を行う。
エッジの方向は、図9に示すように水平方向を基準(0°)とし、反時計回りにそれぞれ45°、90°、および135°と定義する。
このようにして、エッジ上の各ピクセルについて方向を定め、近傍に位置する腕モデルのリンクの方向と一致しているピクセル数を求め、これをNORIENTの値とする。
【0082】
上記のようにして得られた、各部分画像における一致度を表す関数をすべての比較ウインドウの組について合計すると評価関数Oが得られる。その際、式(V)のように、各比較ウインドウについてそれぞれ異なる重み係数を乗じたものを合計してもよい。
なお、評価関数Oは、NSKIN、SF、NEDGE、およびNORIENTを用いて、下式(X)のように書き表すこともできる。
【0083】
【数8】
JP0004765075B2_000009t.gif

【0084】
ここで、wSKIN、wF、wEDGE、およびwORIENTはそれぞれ重み係数を表す定数である。
このようにして得られた評価関数Oの値は評価関数記憶手段35に記憶される。次に、パラメータ更新手段37により、空間モデル記憶手段18に記憶された空間モデルパラメータ、および矩形領域記憶手段21に記憶された矩形領域パラメータの値を更新する。
【0085】
次に、更新された矩形領域パラメータを用いて、座標変換手段23により新たな比較ウインドウを設定し、比較ウインドウ記憶手段24に記憶する。新たな比較ウインドウの設定値を用いて、部分画像生成部29において新たな部分画像を生成する。これらの部分画像について、評価関数演算手段34において新たな評価関数の演算を行う。
こうして得られた評価関数Oの値を、評価関数記憶手段35に記憶された値と比較し、収束判定手段36において、評価関数Oが最大値に収束したか否か判定する。
評価関数が最大値を与えるときの左画像および右画像に最もマッチする空間モデルの位置、または位置および姿勢を表す空間モデルパラメータが、物体の位置および姿勢認識の結果となる。
【0086】
以下、人間の腕の空間モデルである2関節4自由度モデルを例にとって、より具体的に説明する。
このモデルの3次元空間における位置および姿勢を表すのに必要な空間モデルパラメータは、ワールド座標系における肩の3次元座標xS、yS、zS、肩関節の屈曲(伸展)角度θ1、肩関節の内転(外転)角度θ2、肘関節の内旋(外旋)角度θ3、および肘関節の屈曲(伸展)角度θ4の7つであるが、これらを全て同時に変化させながら、評価関数Oが最大となる組み合わせを見出すためには膨大な計算コストを要する。そこで、まず、肩の位置を表すxS、yS、zSの最適値を求めることで空間モデルの肩部分と左画像および右画像とのマッチングを行い、次いで評価関数Oを最大にするθ1~θ4の組み合わせを求めることにより空間モデルの上腕部および前腕部と左画像および右画像とのマッチングを行う。このようにマッチング演算処理を行うことにより、計算量の削減を行うことができる。
【0087】
評価関数Oを最大にするθ1~θ4の組み合わせを求める際に、まず肩関節の屈曲(伸展)角度θ1および前記肩関節の内転(外転)角度θ2のみを最適化し、空間モデルの上腕部および肘位置と左画像および右画像とのマッチングを行い、その後肘関節の内旋(外旋)角度θ3、および前記肘関節の屈曲(伸展)角度θ4を最適化し、空間モデルの前腕部と左画像および右画像とのマッチングを行うことにより、計算量をさらに削減させることができる。
より具体的には、評価関数Oを、下式(XI)に示すように、上腕部に関する項OUおよび前腕部に関する項OFに分離した形に書き直す。
【0088】
【数9】
JP0004765075B2_000010t.gif

【0089】
この評価関数を用いて、まず、肩関節の屈曲(伸展)角度θ1および前記肩関節の内転(外転)角度θ2のみを変化させ、OUが最大となるθ1およびθ2の組み合わせを求め、次いで、肘関節の内旋(外旋)角度θ3、および前記肘関節の屈曲(伸展)角度θ4のみを変化させ、OFが最大となるθ3およびθ4の組み合わせを求めることにより、空間モデルの上腕部、肘位置および前腕部と、左画像および右画像とのマッチングを行う。
【0090】
図2に示すような2関節4自由度モデルを用いて空間モデルの肩部分と左画像および右画像とのマッチングを行う代わりに、図10に示すように、さらに肩部に対して一定の位置に存在する頭部を有する空間モデルを用い、頭部のエッジ特徴および肌色ピクセルの一致度の評価を行う頭部矩形領域を設けて、評価関数Oが最大値となる頭部の中心Hのワールド座標系における3次元座標(xH,yH,zH)の組み合わせを見出し、Hとの位置関係から空間モデルの肩位置Sと左画像および右画像とのマッチングを行ってもよい。
人間の頭部は、広い肌色ピクセル領域を有するとともに、目や鼻等のエッジ部分が多く存在するため、肩部よりも位置の検出が容易であるため、より高精度なマッチングが可能である。そのため、直接肩部において空間モデルと左画像および右画像とのマッチングを行う場合に比べ、マッチングの精度を高めることができる。
【実施例】
【0091】
次に、本発明の作用効果を確認するために行った実施例について説明する。
ここで、図11、図12、および図13はそれぞれ、実施例1において平行ステレオカメラにより撮像された左画像および右画像、図11に示した左画像および右画像より得られたエッジおよび肌色抽出画像、図11および図12に示す画像を用いて行った位置および姿勢認識の結果を示す図である。
また、実施例2、3において様々な腕のポーズを取った複数の被験者について行った認識結果を図14および図15に示す。
【0092】
実施例1~3において、平行ステレオカメラとして、基線長250mmとなるように設置した2台の1および3インチ型CCDカメラ(幅6.77mm、高さ5.08mm、焦点距離7mm)を使用した。これを通常の室内に設置し、背景を含む人間の頭部および腕部を含む画像(左右それぞれ横320ピクセル×縦240ピクセルの平行ステレオ画像)を撮像した。
平行ステレオカメラを、位置および姿勢認識方法を実行するプログラムをインストールしたノート型パソコンに接続し、人間の腕の位置および姿勢認識を行った。CPUはクロック周波数2GHzのMobile Pentium 4(登録商標)である。
【0093】
人の腕の空間モデルとしては、図2に示したような2関節4自由度モデルを用いた。ここで、上腕部を表すリンクの長さL1および前腕部を表すリンクの長さL2は、ともに0.2mとした。また、各関節の可動範囲は、それぞれ、-πおよび4≦θ1≦πおよび2、-π≦θ2≦0、-πおよび2≦θ3≦πおよび2、0≦θ4≦2πおよび3とした。
図10に、本実施例において空間モデル上に設定された矩形領域の配置を示す。上腕部および前腕部のリンク上にそれぞれ3つの腕中心部矩形領域を設定し、その両側にそれぞれ6つずつの腕外側部矩形領域を設定した。手先部には、1つの手先部矩形領域を設定した。さらに、肩位置のマッチングをより確実に行うため、本実施例では、顔部にも矩形領域を設定し、顔の位置に基づいて肩位置の決定を行った。
【0094】
実施例1において、図11に示す平行ステレオカメラにより撮像された左画像および右画像からなるステレオ画像について、前処理部においてエッジ検出および肌色ピクセル領域の検出を行うと、図12に示すようなエッジおよび肌色抽出画像が得られた。
こうして得られたエッジおよび肌色抽出画像を用いて、式(X)で表される評価関数(ここでは、wF=wORIENT=0とする)が最大となる空間モデルの顔の位置を決定し、空間モデルにおける顔部と肩部の位置関係より肩位置を決定した。
【0095】
腕の姿勢は、空間モデルパラメータのうちθ1~θ4を、それぞれの可動範囲内でπおよび15(rad)刻みで変化させつつ、式(X)で表される評価関数Oの値が最大となるθ1~θ4の組み合わせを見出した。
【0096】
ここで、計算量削減のため下記の(a)および(b)に示すような処理を行った。
(a)手首および肘のワールド座標系における3次元位置が、ともに肩の3次元位置よりも身体に対して外側に位置する場合のみを考慮した。
(b)評価関数Oを、前記した式(XI)に示すように、上腕部に関する項OUおよび前腕部に関する項OFに分離した。
【0097】
その後、まず、肩関節の屈曲(伸展)角度θ1および前記肩関節の内転(外転)角度θ2のみを変化させ、OUが最大となるθ1およびθ2の組み合わせを求め、次いで、θ3およびθ4のみを変化させ、OFが最大となるθ3およびθ4の組み合わせを求めた。
【0098】
図13に認識結果を示す。認識処理に要した時間は、前処理終了後1秒程度であった。このように、高価な機器を使用することなく、市販のCCDカメラおよびパソコンの組み合わせにより、腕の位置および姿勢を短時間で高精度に認識することができた。
また、図14、図15にそれぞれ実施例2、3として、様々な腕のポーズを取った複数の被験者について行った認識結果(ここでは左画像のみ示している)を示す。このように、多様なポーズを取った、体型の異なる複数の被験者について、同一の空間モデルによる位置および姿勢認識を行うことができた。
【0099】
本発明は、前記した実施の形態に限定されるものではなく、本発明の要旨を変更しない範囲での変更は可能であり、例えば、前記したそれぞれの実施の形態や変形例の一部または全部を組み合わせてステレオ画像を利用した物体の位置および姿勢認識システムならびに物体の位置および姿勢認識方法を実行するプログラムを構成する場合も本発明の権利範囲に含まれる。
例えば、前記実施の形態のステレオ画像を利用した物体の位置および姿勢認識システムにおいて、評価関数Oに含まれるテクスチュア特徴の一致度の指標であるSFの演算において、対となる部分画像間のSADを計算する代わりに、テンプレートデータとのSADを計算してもよい。
【図面の簡単な説明】
【0100】
【図1】本発明の一実施の形態に係るステレオ画像を用いた物体の位置および姿勢認識システムの説明図である。
【図2】人間の腕の空間モデルの一例である2関節4自由度モデルの概略図である。
【図3】人間の腕の空間モデル上に設定される3種類の矩形領域の模式図である。
【図4】手先部、腕中心部および腕外側部矩形領域の空間配置の概略図である。
【図5】位置および姿勢認識の対象となる物体が人間の顔である場合における矩形領域の設定の一例を示す模式図である。
【図6】ワールド座標系と、左画像および右画像のローカル座標系との関係を示す説明図である。
【図7】左画像および右画像における、ピクセルの縦方向および横方向の位置座標の定義を示す説明図である。
【図8】(A)は、空間モデルの位置および姿勢が実際の腕の位置および姿勢に一致している場合を、(B)は、空間モデルの位置および姿勢が実際の腕の位置および姿勢に一致していない場合を、それぞれ示す説明図である。
【図9】エッジ方向(0°、45°、90°、135°)の定義を示す説明図である。
【図10】肩部に対して一定の位置に存在する頭部をさらに有する、人間の腕の2関節4自由度モデルの概略図である。
【図11】ディスプレー上に表示された中間調画像であって、実施例1において平行ステレオカメラにより撮像された左画像および右画像である。
【図12】ディスプレー上に表示された中間調画像であって、左画像および右画像より得られたエッジおよび肌色抽出画像である。
【図13】ディスプレー上に表示された中間調画像であって、位置および姿勢認識の結果を示す画像である。
【図14】ディスプレー上に表示された中間調画像であって、実施例2において様々な腕のポーズを取った複数の被験者について行った認識結果を示す画像である。
【図15】ディスプレー上に表示された中間調画像であって、実施例3において様々な腕のポーズを取った複数の被験者について行った認識結果を示す画像である。
【符号の説明】
【0101】
10:物体の位置および姿勢認識システム、11:撮像部、12:システム本体、13:入力部、14:出力部、15:ステレオ画像記憶手段、16:空間モデル設定部、17:空間モデル設定手段、18:空間モデル記憶手段、19:矩形領域設定部、20:矩形領域設定手段、21:矩形領域記憶手段、22:比較ウインドウ設定部、23:座標変換手段、24:比較ウインドウ記憶手段、25:前処理部、26:エッジ抽出手段、27:肌色ピクセル抽出手段、28:前処理画像記憶手段、29:部分画像生成部、30:部分画像抽出手段、31:部分画像記憶手段、32:部分画像視差補正手段、33:マッチング演算部、34:評価関数演算手段、35:評価関数記憶手段、36:収束判定手段、37:パラメータ更新手段
Drawing
(In Japanese)【図1】
0
(In Japanese)【図2】
1
(In Japanese)【図3】
2
(In Japanese)【図4】
3
(In Japanese)【図5】
4
(In Japanese)【図6】
5
(In Japanese)【図7】
6
(In Japanese)【図8】
7
(In Japanese)【図9】
8
(In Japanese)【図10】
9
(In Japanese)【図11】
10
(In Japanese)【図12】
11
(In Japanese)【図13】
12
(In Japanese)【図14】
13
(In Japanese)【図15】
14