(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-04-12
(45)【発行日】2022-04-20
(54)【発明の名称】高さ推定装置及びプログラム
(51)【国際特許分類】
G06T 7/593 20170101AFI20220413BHJP
G01B 11/00 20060101ALI20220413BHJP
【FI】
G06T7/593
G01B11/00 H
(21)【出願番号】P 2019019458
(22)【出願日】2019-02-06
【審査請求日】2021-01-07
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100092772
【氏名又は名称】阪本 清孝
(74)【代理人】
【識別番号】100119688
【氏名又は名称】田邉 壽二
(72)【発明者】
【氏名】徐 建鋒
(72)【発明者】
【氏名】田坂 和之
【審査官】山田 辰美
(56)【参考文献】
【文献】特開2003-281552(JP,A)
【文献】特開2004-334819(JP,A)
【文献】特開2014-059710(JP,A)
【文献】特開2006-053754(JP,A)
【文献】織田 和典 Kazunori ORITA,SIFTに基づく画像照合を用いた視覚障がい者の記憶想起支援に関する基礎的検討 Basic study on memory retrieval assisting for the visually impaired by use of SIFT-based image matching,電子情報通信学会技術研究報告 Vol.114 No.410 IEICE Technical Report,日本,一般社団法人電子情報通信学会 The Institute of Electronics,Information and Communication Engineers,2015年01月15日,第114巻,P.93-p.98
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00-7/90
G01B 11/00
(57)【特許請求の範囲】
【請求項1】
少なくとも2つの視点による画像として第一画像及び第二画像を含む多視点画像より、当該多視点画像に撮影されている空間内平面における同一点対応を、前記第一画像及び前記第二画像の間において求め、当該同一点対応から平面射影変換を求めるパラメータ算出部と、
前記第一画像及び前記第二画像より、同一対象に該当する点を第一位置及び第二位置としてそれぞれ検出する対象検出部と、
前記第二位置に前記平面射影変換を適用して、当該第二位置を前記第一画像での座標に変換した変換位置を求める変換部と、
前記第一位置と前記変換位置との相違に基づいて、前記同一対象の前記空間内平面からの高さに関する情報を推定する推定部と、を備え
、
前記推定部では、前記第一位置と前記変換位置との距離に基づいて、当該距離が大きいほど前記空間内平面からの高さが大きいものとして推定し、
前記推定部では、前記距離が大きいほど前記空間内平面からの高さが大きいものとして推定することを、前記第一位置に応じて定まるモデルを用いて行い、
前記モデルは、前記第一位置の候補としての前記第一画像内の画素位置の一部のみに関して与えられており、前記第一位置が当該モデルを与えられていない位置である場合には、前記推定部では、近傍位置であって当該モデルが与えられている位置におけるモデルを用いて補完することで、前記第一位置に関するモデルを得ることを特徴とする高さ推定装置。
【請求項2】
少なくとも2つの視点による画像として第一画像及び第二画像を含む多視点画像より、当該多視点画像に撮影されている空間内平面における同一点対応を、前記第一画像及び前記第二画像の間において求め、当該同一点対応から平面射影変換を求めるパラメータ算出部と、
前記第一画像及び前記第二画像より、同一対象に該当する点を第一位置及び第二位置としてそれぞれ検出する対象検出部と、
前記第二位置に前記平面射影変換を適用して、当該第二位置を前記第一画像での座標に変換した変換位置を求める変換部と、
前記第一位置と前記変換位置との相違に基づいて、前記同一対象の前記空間内平面からの高さに関する情報を推定する推定部と、を備え
、
前記推定部では、前記第一位置と前記変換位置との距離に基づいて、当該距離が大きいほど前記空間内平面からの高さが大きいものとして推定し、
前記推定部では、前記距離が大きいほど前記空間内平面からの高さが大きいものとして推定することを、前記第一位置に応じて定まるモデルを用いて行い、
前記モデルは、前記空間内平面を均等に区切った領域が前記第一画像において撮影される領域ごとに、当該領域の全部または一部に関して予め与えられていることを特徴とする高さ推定装置。
【請求項3】
前記パラメータ算出部では、前記第一画像及び前記第二画像より特徴点及び特徴量を抽出し、当該抽出した特徴点及び特徴量の対応関係をRANSAC法により求めることで、前記平面射影変換を求めることを特徴とする請求項1
または2に記載の高さ推定装置。
【請求項4】
前記推定部では、前記モデルを用いることにより、前記第一画像の画像座標において定義される高さとして、前記同一対象の前記空間内平面からの高さに関する情報を推定することを特徴とする請求項
1ないし3のいずれかに記載の高さ推定装置。
【請求項5】
前記推定部では、前記モデルを用いることにより、前記多視点画像が撮影されている空間において定義される高さとして、前記同一対象の前記空間内平面からの高さに関する情報を推定することを特徴とする請求項
1ないし3のいずれかに記載の高さ推定装置。
【請求項6】
前記推定部では、前記第一位置と前記変換位置との相違に対して閾値判定を適用することにより、前記同一対象の前記空間内平面からの高さに関する情報に含まれるものとして、当該同一対象が前記空間
内平面に接しているか否かの情報を推定することを特徴とする請求項1ないし
5のいずれかに記載の高さ推定装置。
【請求項7】
少なくとも2つの視点による画像として第一画像及び第二画像を含む多視点画像より、当該多視点画像に撮影されている空間内平面における同一点対応を、前記第一画像及び前記第二画像の間において求め、当該同一点対応から平面射影変換を求めるパラメータ算出部と、
前記第一画像及び前記第二画像より、同一対象に該当する点を第一位置及び第二位置としてそれぞれ検出する対象検出部と、
前記第二位置に前記平面射影変換を適用して、当該第二位置を前記第一画像での座標に変換した変換位置を求める変換部と、
前記第一位置と前記変換位置との相違に基づいて、前記同一対象の前記空間内平面からの高さに関する情報を推定する推定部と、を備え
、
前記多視点画像はさらに、1つ以上の視点による画像として1つ以上の第三画像を含み、
前記パラメータ算出部はさらに、前記同一点対応を、前記第一画像及び前記第三画像の間において求め、当該同一点対応から平面射影変換を求め、
前記対象検出部はさらに、前記同一対象に該当する点を前記第三画像より第三位置として検出し、
前記変換部はさらに、前記第三位置に対して前記第三画像に対応する平面射影変換を適用して、当該第三位置を前記第一画像での座標に変換した変換位置を求め、
前記推定部は、前記第一画像と前記第二画像に関する変換位置との距離と、前記第一画像と1つ以上の前記第三画像に関する変換位置とのそれぞれの距離と、をそれぞれ求め、当該それぞれ求めた距離が大きいほど前記空間内平面からの高さが大きいものとして高さをそれぞれ推定し、当該それぞれ推定した高さの平均として、前記同一対象の前記空間内平面からの高さを推定することを特徴とする高さ推定装置。
【請求項8】
コンピュータを請求項1ないし
7のいずれかに記載の高さ推定装置として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像から対象の高さに関する情報を簡素に推定することが可能な高さ推定装置及びプログラムに関する。
【背景技術】
【0002】
同じ対象を異なるカメラ位置から撮影している2以上の画像(多視点映像の場合なども含む)を用いて、空間的に配置されている対象に関する情報を得る技術として、種々のものがある。
【0003】
特許文献1では、撮影視点が異なる2つのカメラにより同時に撮影した2つの画像(左右2枚のステレオ画像)の一方の視点を他方の撮像手段の視点に写した画像に変換し、視点変換後の画像と前記他方のカメラにより撮像した画像とをマッチングさせ、高さのある物体を検出する。ただし、特許文献1の手法は、前記2つのカメラが床面から同じ高さの地点に向きが等しく光軸が平行になるように設置されているというカメラ設置条件がある上に、物体の高さを算出する方法については検討されていない。さらに、消点算出が必要であるため、人など自然物の画像には適用困難である。
【0004】
特許文献1におけるようなカメラ設置条件が課されない手法として三角測量があり、例えば非特許文献1において三角測量関数(triangulatePoints関数)として利用可能になっている。知られているように、三角測量では対象となる点Pの三次元座標P(x,y,z)を、この点Pの2枚の画像中ので対応点座標(xL,yL)と(xR,yR)から、以下の式で求めることができる。ここでlはカメラ間の距離であり、fはカメラの焦点距離である。
x=xLl/(xL-xR)
y=fl/(xL-xR)
z=yLl/(xL-xR) 又は z=yRl/(xL-xR)
【0005】
ここで、非特許文献1では、カメラの内部と外部パラメータを算出しておく必要がある。すなわち、実際のカメラレンズは、主に半径方向の歪みや、わずかに円周方向の歪みを持っているので、既知のキャリブレーションパターンを写した複数の視点(つまり、各視点が、複数の3次元点と2次元点の対応として記述)から、カメラの焦点距離を含めてカメラの内部パラメータ・外部パラメータを推定しておく。
【0006】
また、非特許文献3では、バレーボールのスポーツ映像(多視点映像)におけるボール検出手法として、少なくとも2台のカメラの三次元位置(Xc1,Yc1,Zc1),(Xc2,Yc2,Zc2)と、バレーネット上に設定される仮想平面(Virtual plane)のボールの位置(Xb1,Yb1,0),(Xb2,Yb2,0)を用いて三次元空間内でのボール位置を推定する。ここで、前記(Xb1,Yb1,0),(Xb2,Yb2,0)はカメラで撮った画像と仮想平面間の射影変換パラメータを事前に算出し、画像から射影変換で算出しておく。
【先行技術文献】
【特許文献】
【0007】
【非特許文献】
【0008】
【文献】Open Source Computer Vision Library, https://github.com/opencv/opencv
【文献】精密工学会 画像応用技術専門委員会 画像処理応用システム 基礎から応用まで 東京電機大学出版局 2000
【文献】M. Takahashi, K. Ikeya, M. Kano, H. Ookubo and T. Mishina, "Robust volleyball tracking system using multi-view cameras," 2016 23rd International Conference on Pattern Recognition (ICPR), Cancun, 2016, pp. 2740-2745.
【文献】Q. Yao, A. Kubota, K. Kawakita, K. Nonaka, H. Sankoh and S. Naito, "Fast camera self-calibration for synthesizing Free Viewpoint soccer Video," 2017 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), New Orleans, LA, 2017, pp. 1612-1616.
【文献】M. A. Fischler, R. C. Bolles. Random Sample Consensus: A Paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography. Comm. of the ACM, Vol 24, pp 381-395, 1981.
【文献】Joseph Redmon and Ali Farhadi, "Yolov3: An incremental improvement," arXiv, 2018.
【文献】Zhe Cao, Tomas Simon, Shih-EnWei, and Yaser Sheikh, "Realtime multi-person 2d pose estimation using part affinity fields," in CVPR 2017, 2017
【発明の概要】
【発明が解決しようとする課題】
【0009】
以上のような従来技術では、少なくとも2枚の画像から対象の空間内での高さに関する情報を得ようとすることを考えた場合に、制約があった。
【0010】
すなわち、非特許文献1では既に述べた通り、既知のキャリブレーションパターンとしてチェスボードを使ってカメラキャリブレーションを行って、カメラの内部と外部パラメータを算出する必要があった。さらに、カメラが移動すると、再度のキャリブレーションが必要となった。このためには例えば非特許文献4のように、動的に対応点を検出する必要があった。非特許文献3も、カメラの3次元位置を求める必要があった。
【0011】
以上のような従来技術の課題に鑑み、本発明は、画像から対象の高さに関する情報を簡素に推定することが可能な高さ推定装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
上記目的を達成するため、本発明は高さ推定装置であって、少なくとも2つの視点による画像として第一画像及び第二画像を含む多視点画像より、当該多視点画像に撮影されている空間内平面における同一点対応を、前記第一画像及び前記第二画像の間において求め、当該同一点対応から平面射影変換を求めるパラメータ算出部と、前記第一画像及び前記第二画像より、同一対象に該当する点を第一位置及び第二位置としてそれぞれ検出する対象検出部と、前記第二位置に前記平面射影変換を適用して、当該第二位置を前記第一画像での座標に変換した変換位置を求める変換部と、前記第一位置と前記変換位置との相違に基づいて、前記同一対象の前記空間内平面からの高さに関する情報を推定する推定部と、を備えることを特徴とする。また、コンピュータを前記高さ推定装置として機能させるプログラムであることを特徴とする。
【発明の効果】
【0013】
本発明によれば、入力される多視点画像のみを主に利用することで、チェスボードを用いたカメラキャリブレーション等を必ずしも必要とすることなく簡素に、対象の高さに関する情報を推定することが可能である。
【図面の簡単な説明】
【0014】
【
図1】一実施形態に係る高さ推定装置の機能ブロック図である。
【
図2】入力としての多視点画像を撮影するための構成の模式例を示す図である。
【
図3】
図2の例において行列を求めるための所定の平面上の点の例を示す図である。
【
図4】物体検出技術による検出結果として画像内の囲み領域の模式例を示す図である。
【
図5】検出される関節骨格の模式例を示す図である。
【
図6】変換部が変換誤差を求める対象の模式例を示す図である。
【
図7】推定部が誤差から高さを推定する原理を説明する模式図である。
【
図8】学習データの一部分の模式例を表として示す図である。
【
図9】
図6の画像例に対応する例として、空間内平面を均等に区切った領域の画像上での対応領域を、この画像上でのモデルパラメータの算出単位領域とする例を示す図である。
【発明を実施するための形態】
【0015】
図1は、一実施形態に係る高さ推定装置10の機能ブロック図である。図示するように、高さ推定装置10は、パラメータ算出部1、対象検出部2、変換部3、推定部4を備える。その全体的な動作として、高さ推定装置10は、入力として多視点画像を、パラメータ算出部1及び対象検出部2のそれぞれにおいて受け取り、推定部4より、多視点画像における対象の高さに関する情報を出力するものである。
【0016】
ここで、高さ推定装置10に対する入力データとしての多視点画像は、少なくとも2つの視点で構成されたものであり、同一の現実空間を異なるカメラ視点でそれぞれ同時に撮影したものである。当該入力データとしての多視点画像は、多視点映像上のある一つの時刻のフレーム画像であってもよい。
【0017】
図2は、入力としての多視点画像を撮影するための構成の模式例を示す図である。
図2の例は、現実空間としてのサッカー場のサッカーフィールドFLを異なる位置及び向きにある2つのカメラC1,C2でそれぞれ撮影して2つの視点での多視点画像を得る構成を、サッカー場FLの上空側から見た状態を模式的に示している。なお、サッカーフィールドFLはサッカー試合中であり、高さ推定装置10によって高さを推定される1つ以上の対象の例としての選手やボール等が存在するが、
図2では描くのを省略している。
【0018】
この
図2の例のように、高さ推定装置10に対する入力としての多視点画像における選手やボール等の対象は、サッカーフィールドFLがなす空間内平面に対して、当該空間内平面上に接して、すなわち、高さゼロの状態で存在するか、あるいは、選手が飛び上がることにより又はボールが蹴り上げられることにより当該平面から離れて、すなわち、高さを有した状態で存在しているものとする。高さ推定装置10によれば、このサッカーフィールドFLがなす平面のような多視点画像に撮影されている現実世界における空間内平面を基準とした、サッカー選手やボール等のような多視点画像に撮影されている対象の高さを推定することが可能である。
【0019】
以下、
図2のように2つの視点によってサッカーフィールドFLを撮影した多視点画像が入力データである場合を主な例として、各部1~4の詳細を説明する。なお、説明のため、2つのカメラC1,C2の画像を画像P1,P2とする。すなわち、説明例としての入力データの多視点画像はこの画像ペアP1,P2であるものとする。
【0020】
[パラメータ算出部1]
パラメータ算出部1では、多視点画像から撮影されている現実空間における平面上の点から、各視点の画像の間で同一点に該当するものの対応関係を求めて、この対応関係から、各視点の画像間での座標変換を行う平面射影変換のパラメータを平面射影変換行列Hとして算出し、このパラメータHを変換部3に出力する。
【0021】
ここで、平面射影変換行列Hに関しては周知のように、三次元空間内の所定平面(すなわち、
図2の多視点画像P1,P2の例であれば例えばサッカーフィールドFLのなす空間内平面)上にある任意の点p=(X,Y,Z)が、これを撮影する画像P1においては点Aとして位置(x
1,y
1)にあり、同じくこれを撮影する画像P2においては点Bに(x
2,y
2)にある場合に、以下の式(1)によってこの同一点(X,Y,Z)に対応する点A,Bの間の座標変換を可能とするものである。
【0022】
【0023】
周知のように、式(1)にてベクトル(x1,y1,1)T及び(x2,y2,1)T(Tは転置)は点A,Bの斉次座標表現であり、式(1)では画像P2の点Bの座標(x2,y2)を画像P1の点Aの座標(x1,y1)へと変換する平面射影変換行列Hが示されている。同様に、この逆行列(平面射影変換行列H-1)で点Aの座標(x1,y1)から点Bの座標(x2,y2)への逆変換も可能である。
【0024】
また、平面射影変換行列Hの求め方に関しても、拡張現実表示等の分野において既知のように、画像P1,P2間で、撮影されている空間内の所定平面上の同一点を表している点対応を少なくとも4つ求め、これら少なくとも4点の画像座標を用いて最小二乗法等を用いた数値計算により、この行列Hを求めることができる。
【0025】
図3は、
図2の例に対応して
図2に追加で描いたものとして、行列Hを求めるための点の例を白丸(○)で示す図である。すなわち、画像P1,P2において
図2のようにカメラC1,C2でサッカーフィールドFLを撮影している場合は、パラメータ算出部1は、
図3にさらに10個の白丸(○)によって示されるように、このサッカーフィールドFL(すなわち平面)上のラインマークによって形成される10個の所定のコーナー点(互いに識別可能な特徴点)を画像P1,P2においてそれぞれ検出して対応関係を求めたうえで、行列Hを計算することができる。
【0026】
具体的にパラメータ算出部1では、第一実施形態として、
図3のような特徴的なコーナー点を検出可能な既存技術であるSIFT特徴等の特徴点及び特徴量を画像P1,P2からそれぞれ、特徴点(座標)を検出し、且つ、この特徴点近傍から特徴量(ベクトル)を抽出することによって求め、さらに、画像P1,P2間で特徴量が一致すると判定されるものによって特徴点の対応関係を求め、この対応関係によって対応している画像P1,P2の特徴点の座標を用いて、行列Hを求めることができる。
【0027】
ここで、対応関係をロバストに求めるために、前掲の非特許文献5に開示される既存手法であるRANSAC(ランダムサンプル投票)を用いてもよい。RANSACにおいてはランダムに抽出したサンプルにおける対応関係からモデルパラメータを求めたうえでインライア及びアウトライアの判定を行い、インライア数でモデルパラメータの妥当性をスコア評価することを繰り返す。このモデルパラメータとして行列Hを用いて、行列Hで対応点を座標変換した際に近傍位置にあると判定されるものをインライアとしてカウントすることで、最適なモデルパラメータとしての行列Hを結果として出力するようにすればよい。
【0028】
[対象検出部2]
対象検出部2は、多視点画像の各画像において対象(サッカー選手やボール等)を検出し、検出結果として各画像において対象が検出された画像上の位置座標を、変換部3へと出力する。
【0029】
第一実施形態にて、対象検出部2は、各画像において対象が占める範囲を検出したうえで、この範囲のうち最も対象が存在する空間内平面に近い側にある位置座標として、事前に設定される多視点画像の撮影条件などに基づいて判定される所定の位置を、変換部3へと出力すればよい。
【0030】
すなわち、多視点画像の画像座標を(x,y)とし、+x方向が水平右方向、-x方向が水平左方向、+y方向が垂直下方向、-y方向が垂直上方向であるものとする。事前設定される撮影条件として、多視点画像では現実空間を通常のアングルで撮影しているものとする。すなわち、現実空間の地面等の空間内平面(高さ推定装置10によって高さを推定する基準の平面)が画像においても概ね水平方向(±x方向)をなすように撮影され、この空間内平面に対して垂直上方向が画像においても概ね垂直上方向(-y方向)であり、空間内平面に対して垂直下方向が画像においても概ね垂直下方向(+y方向)であるものとする。
【0031】
このような事前の撮影条件のもと、対象検出部2は画像内で検出された対象の領域のうち、撮影されている空間内平面に対して最も垂直下方向に該当する、画像内での最も垂直下の位置を、対象位置として変換部3へと出力する。
【0032】
また、第二実施形態では、対象検出部2は、画像より対象の範囲を検出したうえで、この範囲内の所定位置(例えば中心の位置)を、対象位置として変換部3へと出力するようにしてもよい。
【0033】
さらに、第三実施形態では、対象検出部2は、画像より対象を、その部位の区別と共に検出して、検出された対象における所定の部位の位置を、対象位置として変換部3へと出力するようにしてもよい。この部位が点としてはなく一定の範囲を占めるものとして検出される場合は、この一定範囲を占める部位を、上記第一又は第二実施形態における対象領域として扱うようにすればよい。
【0034】
対象検出部2における検出処理には、既存手法を利用してよい。
【0035】
例えば、サッカーフィールドFLにおけるボールや選手などの対象を検出するために、一般の物体検出技術を利用してよい。物体検出技術として例えば、前掲の非特許文献6に開示のYOLOv3を利用してよく、この場合、
図4に模式例として示すような画像P内での矩形状の囲み領域(bounding box)B1,B2,B3として対象領域が得られると共に、各対象領域B1,B2,B3における対象種別の情報(物体認識結果)も得られることとなる。例えば、領域B1,B2はサッカー選手であり、領域B3はボールである、という対象種別の情報が得られる。
【0036】
図4では、選手として検出されている対象領域B1において、前述の第一実施形態によって出力される位置の例として、矩形領域B1のうち最も地面側(最も+y方向に寄った側)の所定位置として底辺の中点bdが示され、また、前述の第二実施形態によって出力される所定位置の例として、矩形領域B1の中心bcが示されている。
【0037】
なお、対象検出部2においてYOLOv3等の物体検出技術により対象領域を検出する場合、得られる対象種別の情報によって第一実施形態と第二実施形態とを区別して適用するようにしてもよい。例えば、領域B3のボールのように、画像全体内において占める大きさが小さいことが想定されるものは第二実施形態を適用して中心等の所定位置を出力し、領域B1,B2の選手のように画像全体内において占める大きさが大きいことが想定されるものは第一実施形態を適用して最も垂直下側の所定位置を出力するようにしてもよい。ここで、画像全体において占める大きさが小さい又は大きいことを区別する情報は、それぞれの対象種別の情報に予め紐づけておけばよい。
【0038】
また、対象検出部2における検出処理として、検出対象が予めサッカー選手や陸上選手などの人物として設定される場合、前掲の非特許文献7にてOpenPoseと称して開示される関節骨格(スケルトン)検出処理を利用してよい。
図5は、これにより検出される関節骨格の模式的な例であり、線分で示されるモデル化された骨格と、この線分の端点として白丸(〇)で示される関節位置と、が示されている。
【0039】
対象検出部2にて関節骨格として対象検出を行う場合、この全体を囲う矩形を定めてから、上記の物体検出技術の場合の矩形領域(bounding box)における場合と同様の手法(第一実施形態又は第二実施形態)で対象位置を出力してもよいし、第三実施形態で対象位置を出力してもよい。第三実施形態の場合、関節骨格のうち所定の関節の位置を対象位置として出力してよい。
図5の最も下側(+y方向側)に他よりも大きな白丸(〇)として2つ示されるように、この所定の関節は、通常の立った姿勢において地面等の高さ推定基準となる空間内平面に最も近いことが想定される、右足及び左足としてもよい。
【0040】
変換部3では、パラメータ算出部1で得た平面射影変換行列Hを、対象検出部2で得た多視点画像P1,P2における画像P2の対象位置B=(x2,y2)に対して式(1)の右辺のように乗算することで、画像P2とは別視点の画像P1における位置C=(x2[変換],y2[変換])へと変換し、画像P2の点Bの別視点の画像P1での対応点Aの位置A=(x1,y1)と変換位置C=(x2[変換],y2[変換])との距離d(A,C)を、画像P1の点Aとこれに対応する画像P2の点Bとの、画像P1の座標上での変換誤差error(A,B)を表すものとして以下の式(2),(3)のように求め、求めた誤差error(A,B)を推定部4へと出力する。
【0041】
【0042】
図6に、上記の式(2),(3)で変換部3が変換誤差error(A,B)を求める対象の模式例を示す。すなわち、画像P1における点A(白丸〇で示す)と、点Aに対応する点としての画像P2における点B(黒丸●で示す)と、点Bを式(2)による行列Hの乗算で画像P1の座標へと座標変換した点C(黒丸●で示す)と、が示されている。特に、その最下段側に画像P1上において、点Aと、画像P2の点Bを行列Hで座標変換した点Cと、が共に示されている。
【0043】
対象検出部2から2組以上のこのような画像P1,P2間での対応点A,Bが得られている場合、変換部3ではそのそれぞれについて変換誤差error(A,B)を求めればよい。
【0044】
なお、変換部3においてこの誤差error(A,B)を求めるためには、画像P1における点Aと、(空間内の同一対象を撮影したものとして)これに対応する画像P2における点Bと、の対応が既知である必要がある。この対応関係は、対象検出部2で一般物体検出を利用した場合であれば、その際に得られる物体種別の情報(物体認識結果)が同じとなるものが、異なる視点の画像P1,P2間での対応点A,Bであるものと判断すればよい。対象検出部2で骨格関節検出処理を利用した場合であれば、骨格関節が得られた領域を囲む矩形領域にさらに一般物体検出を適用して、同様に対応関係を取得すればよい。
【0045】
また、物体種別の情報では1対1の対応関係が得られない場合、仮の対応関係を与えておいて誤差error(A,B)を評価し、その値が最小となるものが対応するものであると判定してもよい。例えば、画像P1において「選手」が点A4,A5として2人検出され、画像P2においても「選手」が点B4,B5として2人検出されている場合、以下のように判断すればよい。3つ以上の候補がある場合も同様にすればよい。
【0046】
「error(A4,B4)<error(A4,B5)」が真ならば、点A4と点B4が対応し、点A5と点B5が対応する。これが偽ならば、点A4と点B5が対応し、点A5と点B4が対応する。
【0047】
あるいは、点の近傍領域の色ヒストグラムなどを求め、これが類似しているものが対応しているものとして判定してもよい。すなわち、点A4の近傍の色ヒストグラムhist(A4)に類似するのは点B4近傍の色ヒストグラムhist(B4)か、または点B5近傍の色ヒストグラムhist(B5)かを調べ、より類似している方に対応しているものと判定してもよい。
【0048】
[推定部4]
推定部4では、以下のような考察に基づき、変換部3で得た誤差に所定の関係を適用することにより、この誤差を変換部3で求める対象となった対象検出部2で得た対象位置ごとの、高さに関する情報を推定して出力する。
【0049】
図7は、推定部4が誤差から高さを推定する原理を説明する模式図である。
図7にて上段側Uには、
図6の画像P2内の領域R2内に存在する高さを有する対象の例として旗F(ただし、
図6では描くのを省略した)と、この旗Fを含む領域R2を
図6の行列Hで画像P1の座標に変換した際の領域R1と、が示されている。(なお、領域R1,R2は共に矩形によりその一部を描いている。)旗Fは地面から立つポール部と、これにより支えられる縞模様の旗地部と、から構成されており、撮影された状態の画像P2内の領域R2では-y軸方向(垂直高さ方向)に立った状態として正面から歪みのない状態で見えているが、行列Hで変換した領域R1では概ね+x軸方向(水平横方向)に倒れて且つその形状が歪んだ状態FS(行列Hの写像による像FS)として見えている。
【0050】
図7にて、画像P1の領域としての領域R1には、歪んだ状態FSに加えて、画像P1に撮影された本来の状態にある旗Fも重ねて描かれており、-y軸方向(垂直高さ方向)に立った状態として、且つ、画像P2の領域R2の場合とは異なり正面からは傾いて見えた状態として、旗Fが描かれている。(すなわち、領域R1において旗Fは画像P1における実写の状態で実在するものであり、写像による像FSは画像P1には存在しないものであるが、説明のために旗F及び写像による像FSを画像P1内での領域R1での対応位置に同時に描いている。)
【0051】
推定部4では、この領域R1において撮影された本来の状態の旗Fと歪んだ像FSとの関係として模式的に示されるように、旗Fのように高さのある対象に関して、その地面(行列Hを計算する基準となった空間内平面)により近い側の点に関しては行列Hによる変換での位置ずれが小さいが、高さを有して地面から遠ざかる点ほど、行列Hによる変換での位置ずれが大きくなる、という性質を利用して、誤差から高さを推定する。
【0052】
図7では下段側Dに、上記の性質の模式例が示されている。下段側Dには上段側Uと同様の領域R1及びR2並びに旗F及びその歪んだ像FSが示されると共に、上記の性質を説明するための点が追加で描かれている。以下、
図7の下段側Dを参照しながら上記の性質の模式例を説明する。画像P2の領域R2に撮影されている旗Fには、そのポール部に地面に近い側から順に点B1,B2,B3が示されており、これらの点に画像P1の領域R1で実際に撮影されている旗Fにおいて対応する点が、それぞれ点A1,A2,A3である。一方、点B1,B2,B3を行列Hで領域R1内の領域(旗Fの歪んだ像FSの領域)に変換した点がそれぞれ点C1,C2,C3である。
【0053】
従って、画像P1内の旗Fのポール部にある点A1,A2,A3と、これらにそれぞれ空間内での同一点として対応する画像P2内の旗Fのポール部にある点B1,B2,B3と、に関して、式(3)の変換誤差を具体的に以下の式(3-1),(3-2),(3-3)のように求めることができる。ここで、
図7からも点A1,C1間、点A2,C2間、点A3,C3間の距離の大小関係が式(4)の関係であることが見て取れる。従って、式(3-1),(3-2),(3-3)の変換誤差の大小関係は式(5)の通りとなる。
error(A1,B1)=d(A1,C1)≒0 …(3-1)
error(A2,B2)=d(A2,C2) …(3-2)
error(A3,B3)=d(A3,C3) …(3-3)
d(A1,C1)<d(A2,C2)<d(A3,C3) …(4)
error(A1,B1)<error(A2,B2)<error(A3,B3) …(5)
【0054】
一方、旗Fのポール部の点A1,A2,A3は、サッカーフィールドFLを撮影した画像P1内において、サッカーフィールドFLの平面上では同じ位置(旗Fを立てた位置)にあるが、その平面からの高さ(旗F内での高さ)が異なる3点である。具体的に、点A1はサッカーフィールドFLの平面に接しておりその高さh1≒0であり、(従って、点A1に対応する画像P2の点B1を変換した点C1は点A1とほぼ一致し、)点A2はサッカーフィールドの平面から旗半分程度の一定の高さh2を有しており、点A3は旗全部の高さh3を有しており、以下の式(6)の関係がある。(なお、対応する画像P2の点B1,B2,B3でも同様に以下の式(6)の関係がある。)
h1<h2<h3 …(6)
【0055】
式(5),(6)からわかるように、サッカーフィールドFLの平面上での同じ位置(旗Fが立てられている位置、画像P1では点A1の位置であり画像P2では点B1の位置)でその高さだけを変える場合、高さが点A1,A2,A3の順でh1<h2<h3のように高くなると、これに応じて画像P1での点A1,A2,A3に対応する変換誤差もerror(A1,B1)<error(A2,B2)<error(A3,B3)のように順に大きくなっていく。なぜならば、平面射影変換行列Hによる変換は、サッカーフィールドFLの平面上の点(この平面に乗る高さゼロの点)の変換だからである。
【0056】
すなわち、以上のような
図7及び式(5),(6)に例示されるように、サッカーフィールドFLの平面上の任意の位置(画像P1の位置(x,y)で指定する)において、この平面からの高さと変換誤差との間は正の相関関係がある。すなわち、高さが大きいほど変換誤差も大きくなるという相関関係がある。この相関関係は、サッカーフィールドFLの平面上の位置を指定する、画像P1の位置(x,y)ごとに定まる相関関係である。従って、推定部4では、この相関関係を逆に利用して以下の式(7)により、変換誤差が大きいほど高さも大きいものとしとして、この位置A=(x,y)(対象検出部2の検出位置)での画像P1内の画素単位での高さh(x,y)を求めることができる。
h(x,y)=a(x,y)*error(A,B)+b(x,y) …(7)
なお、より正確には、この相関関係は、空間内平面を介した画像P1,P2間の変換関係である平面射影変換行列Hにも依存する関係として以下の式(8)のように書けるが、以下では特に断りのない限り、行列Hは一定である前提により式(8)ではなく式(7)に基づき説明を行う。
h(x,y,H)=a(x,y,H)*error(A,B)+b(x,y,H) …(8)
【0057】
上記の式(7)は、画像P1内の各位置A=(x,y)に応じて定まる定数a(x,y)及びb(x,y)により誤差error(A,B)の線形関数として相関関係がモデル化される場合の例であるが、各位置A=(x,y)に応じて定まる定数によるその他の関数で相関関係をモデル化してもよい。
【0058】
ここで、モデルにおける位置A=(x,y)依存の定数は、サッカーフィールドFLの平面上の各位置に種々の高さの対象を実際に設けてそれぞれ所定のカメラ視点にある画像P1,P2の撮影を実際に行う等により取得される学習データを用意しておき、この学習データに対してフィッティングするパラメータとして、最小二乗法などにより予め求めておけばよい。あるいは、サッカーフィールドFL等の実際の対象からではなく、3次元CGモデルを用いて所定のカメラ視点にある画像P1,P2における各位置の種々の高さの対象をレンダリングし、これから学習データを用意して、フィッティングパラメータとしての定数を求めるようにしてもよい。
【0059】
例えば
図7の例であれば、サッカーフィールドFLの平面上にある点としての画像P1の点A1(及びこの画像P2における対応点B1)の位置に関する学習データD(A1)として、A1の座標(x1,y1)に式(3-1),(3-2),(3-3)の変換誤差と、式(6)内に現れる高さh1,h2,h3とをそれぞれ紐づけた以下のものを利用することができる。
D(A1)={(x1,y1,error(A1,B1),h1),(x1,y1,error(A2,B2),h2),(x1,y1,error(A3,B3),h3)}
【0060】
図8は、上記のような学習データを表形式で示す例として、学習データの一部分の模式例である。このように、画像P1の各位置(x,y)に関して、画像P1,P2間での変換誤差errorを式(3)より求め、且つ、画像P1内での高さhも与えたものとして、学習データを用意しておくことができる。
図8の例では位置(3,3)でのモデルと、位置(100,100)でのモデルとを求めることができる。なお、前述の学習データD(A1)や
図8の学習データは、学習データの一部分の模式的な例であり、各位置(x,y)での学習データの個数はさらに多数であってもよい。
【0061】
以上、一実施形態として例示された本発明によれば、チェスボード等を用いたキャリブレーション等を必須とすることなく簡素に、多視点画像における対象位置の空間内平面からの高さに関する情報を推定することが可能である。以下、本発明のその他の実施形態等に関してさらに説明する。
【0062】
(1)推定部4で推定を可能にするためのモデルパラメータを算出するための学習データを取得するために用いる、カメラC1,C2によるサッカーフィールドFL等の空間内平面を捉えた画像P1,P2(学習用の画像)の撮影姿勢と、動き推定装置10にて実際に推定する対象として入力される画像P1,P2のそれぞれの撮影姿勢と、は大きく変わらないことが望ましい。ただし、動きがあっても画像内での空間内平面の位置状態が変わらないようなものは許容される。例えば、撮影姿勢(並進成分及び回転成分で指定される撮影姿勢)の位置(並進成分)が変化するようなカメラ移動のうち、サッカーフィールドFL等の空間内平面に対するカメラC1,C2の向き及び距離が変わらないような移動、すなわち、その並進成分がサッカーフィールドFL等の空間内平面に平行であるものは許容される。同様に、カメラから空間内平面へと下した垂線を軸としてカメラを回転させ、空間内平面とカメラとの距離及び空間内平面がなす水平面からのカメラ傾きを一定に保って、空間内平面を見る向きが回転するようなカメラの動きも許容される。
【0063】
この際、カメラC1,C2の少なくとも一方が空間内平面に対して動く場合には式(1)の画像P1,P2間の平面射影変換行列Hも変化しうることとなる。そこで、線形関数でモデル化される場合の例を式(8)として説明したようなモデルパラメータは、複数(所定数K個)の平面射影変換行列Hk(k=1,2,…,K)ごとに学習データを用いて予め算出しておいた、対応するモデルパラメータMk(k=1,2,…,K)を利用すればよい。すなわち、式(8)の線形関数モデルの場合であれば、所定の複数の平面射影変換行列Hk(k=1,2,…,K)ごとに画素位置(x,y)に依存するものとして定義される、そのモデルパラメータMk=(a(x,y,Hk),b(x,y,Hk))(k=1,2,…,K)を予め算出して用意しておけばよい。そして例えば、行列差のノルム|H-Hk|の評価などにより、この差が最小となることでパラメータ算出部1で求めた行列Hに最も近いと判定されるような行列Hkに対応するモデルパラメータMkを利用してもよいし、以下の(3)で後述するのと同様の補完手法で補完されたモデルパラメータを利用してもよい。一方で、カメラC1,C2が共に空間内平面に対して静止している前提においては、この静止状態での一定の行列Hに対応する単一のモデルパラメータを利用すればよい。
【0064】
(2)推定部4では画像P1の各位置(x,y)に関してモデルパラメータを求めておくのではなく、画像P1の各領域ごとにモデルパラメータを求めておくことで、少ない量の学習データからモデルパラメータを算出可能としてもよい。この場合、パラメータ算出単位となる領域を、画像P1の座標(x,y)で均等に区切る(例えば、縦横共に等分割することで等しいサイズの複数の矩形領域に区切る)のではなく、サッカーフィールドFL等の高さ推定対象となる空間内平面において均等に区切った領域を画像P1で見た際の領域(空間内平面を均等に区切った領域が画像P1内において撮影される領域)によって区切ったものとして設けてもよい。
図9に示される例は、
図6の画像P1に対応する例として、サッカーフィールドFLの平面を均等に区切った領域の画像P1上での対応領域R11,R12,R13,R14,R15,R16を、画像P1上でのモデルパラメータの算出単位領域とする例である。
【0065】
(3)推定部4では画像P1の各位置(x,y)のうち一部のみに関して、又は、画像P1を区切った各領域のうち一部のみに関して、モデルパラメータを求めておき、モデルパラメータが存在しない位置(x,y)や領域に関しては、その近傍の位置(x,y)や領域においてモデルパラメータが存在するものの値を用いて補完したものを、モデルパラメータとして利用してよい。補完の手法に関しては例えば、画像に解像度変換や幾何学的変換を施す際に画素値を再標本化して補完するのに利用される任意の既存手法(最近傍補完や線形補完など)を利用してよい。
図9の例であれば、領域R11,R15,R13のみにモデルパラメータを用意しておき、例えば領域R14のモデルパラメータは隣接する領域R11,R15のモデルパラメータの平均値を用いるようにしてもよい。
【0066】
(4)推定部4では、出力する高さに関する情報の態様の一実施形態として、式(3)で求めた誤差error(A,B)が所定閾値未満であるか以上であるかの判定により、対象検出部2にて検出した位置(すなわち画像P1の点A)がサッカーフィールドFL等の空間内平面に接しているか否かの判定結果を出力するようにしてもよい。同様に、誤差に対する閾値判定に代えて、以上の実施形態で画像P1の点Aの高さを推定したうえでこの高さに対する閾値判定により、空間平面内に接しているか否かの判定結果を推定部4が出力してもよい。すなわち、推定部4で推定する高さに関する情報は、空間内平面に接しているか、接しておらず空間内平面から離れて上方側に位置しているか、という二値的な情報としてもよい。
【0067】
(5)高さ推定装置10を用いる際は、多視点画像におけるどの視点の画像において高さ情報を推定するかを予め設定しておけばよい。例えば以上の例は、多視点画像として2視点の画像P1,P2を用いる場合に、画像P1において高さ情報を推定するものとして予め設定しておいた場合の例であるが、全く同様にして画像P2において高さ情報を推定するように設定することも可能である。
【0068】
(6)高さ推定装置10に対する入力の多視点画像が3視点以上である場合、高さ情報を推定する対象としての視点を上記のように設定したうえで、その他の視点の画像との間で以上の実施形態(2視点の場合の実施形態)と同様にして変換誤差を求めることによりそれぞれ高さを推定し、その平均値として最終的な推定結果を得るようにしてもよい。
【0069】
例えば、4視点の多視点画像P1,P2,P3,P4が入力され、画像P1において高さを推定するように設定する場合、画像P1上の対象の位置として対象検出部2により検出された位置Aに関して、変換部3及び推定部4により、画像P1,P2間での変換誤差より高さH2が推定され、画像P1,P3間の変換誤差より高さH3が推定され、画像P1,P4間の変換誤差より高さH4が推定された場合、推定部4では最終的な出力結果としての推定高さをこれら3個の平均(H2+H3+H4)/3として得ることができる。この際、パラメータ算出部1では画像P1,P2間、画像P1,P3間、画像P1,P4間において平面射影変換行列を求めることにより、変換部3で上記それぞれの高さを推定することを可能とする。
【0070】
あるいは別手法として、3視点以上の多視点画像が入力され、高さ推定対象の視点を設定しておく場合、設定された視点から最も離れた視点における変換誤差から推定される高さを最終結果として出力してもよい。上記の4視点の多視点画像P1,P2,P3,P4が入力され、画像P1において高さを推定するように設定する場合、画像P1のカメラ視点から最も離れた視点が画像P4のカメラ視点であったとする場合、上記のように画像P1,P4間での変換誤差から推定された高さH4を最終的な結果として推定部4が出力してよい。
【0071】
ここで、多視点画像のある視点から最も離れた視点を決定するには、2つのカメラ視点間の相対的な位置関係を表す、コンピュータグラフィックス分野等において既知のカメラの外部パラメータ(3×3の回転成分及び1×3の並進成分を含み、サイズ4×4の行列(空間座標点を斉次座標表現したサイズ1×4の列ベクトルを変換する行列)で与えられる外部パラメータ)に基づいて決定すればよい。このカメラパラメータは多視点画像に紐づけて予め与えておけばよい。
【0072】
(7)推定部4においては、多視点画像P1,P2が入力された場合に
図8のような学習データにより学習モデルのパラメータを求めておくことで、画像P1上での対象の点Aの高さ(画像P1における高さ方向である画像座標のy方向における高さ)を推定するものとした。別の実施形態として、学習データにおける高さを多視点画像が撮影されている実空間での高さ(画像上の画素間隔であるピクセル単位の高さではなく、実際の長さとしてメートル等の単位での高さ)として与えておくことにより、画像P1上での対象の点Aの高さを、多視点画像が撮影されている実空間での高さとして推定するようにしてもよい。
【0073】
(8)高さ推定装置10の適用例として、多視点映像に撮影されている陸上選手の右足及び左足をそれぞれ対象位置として検出することで、走る状態を解析することや、球技スポーツの多視点映像に撮影されているボールを対象位置として検出することで、ボールの軌跡を解析することなどが可能である。
【0074】
(9)本発明は、コンピュータを高さ推定装置10として機能させるプログラムとしても提供可能である。当該コンピュータには、CPU(中央演算装置)、メモリ(RAM及びROM)及び各種I/Fといった周知のハードウェア構成のものを採用することができ、CPUが高さ推定装置10の各部の機能に対応するプログラム命令を実行することとなる。また、当該コンピュータはさらに、CPUよりも並列処理を高速実施可能なGPU(グラフィック処理装置)等の専用プロセッサを備え、CPUに代えて高さ推定装置10の全部又は任意の一部分の機能を当該専用プロセッサにおいてプログラムを読み込んで実行するようにしてもよい。また、高さ推定装置10の全部又は任意の一部分の機能を、ネットワークを介した別のコンピュータ(サーバ等)上に実装し、2台以上のコンピュータがネットワーク上で各自の処理結果データを
図1に示される形で送受することにより、高さ推定装置10をシステムとして実現するようにしてもよい。
【符号の説明】
【0075】
10…高さ推定装置、1…パラメータ算出部、2…対象検出部、3…変換部、4…推定部