IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ KDDI株式会社の特許一覧

特許7198233交点検出方法および装置ならびにカメラキャリブレーション装置
<>
  • 特許-交点検出方法および装置ならびにカメラキャリブレーション装置 図1
  • 特許-交点検出方法および装置ならびにカメラキャリブレーション装置 図2
  • 特許-交点検出方法および装置ならびにカメラキャリブレーション装置 図3
  • 特許-交点検出方法および装置ならびにカメラキャリブレーション装置 図4
  • 特許-交点検出方法および装置ならびにカメラキャリブレーション装置 図5
  • 特許-交点検出方法および装置ならびにカメラキャリブレーション装置 図6
  • 特許-交点検出方法および装置ならびにカメラキャリブレーション装置 図7
  • 特許-交点検出方法および装置ならびにカメラキャリブレーション装置 図8
  • 特許-交点検出方法および装置ならびにカメラキャリブレーション装置 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-20
(45)【発行日】2022-12-28
(54)【発明の名称】交点検出方法および装置ならびにカメラキャリブレーション装置
(51)【国際特許分類】
   H04N 5/232 20060101AFI20221221BHJP
   G06T 7/60 20170101ALI20221221BHJP
   G06T 7/80 20170101ALI20221221BHJP
【FI】
H04N5/232
G06T7/60 150D
G06T7/80
【請求項の数】 15
(21)【出願番号】P 2020012676
(22)【出願日】2020-01-29
(65)【公開番号】P2021118516
(43)【公開日】2021-08-10
【審査請求日】2022-01-07
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100092772
【弁理士】
【氏名又は名称】阪本 清孝
(74)【代理人】
【識別番号】100119688
【弁理士】
【氏名又は名称】田邉 壽二
(72)【発明者】
【氏名】鶴崎 裕貴
(72)【発明者】
【氏名】野中 敬介
(72)【発明者】
【氏名】渡邊 良亮
【審査官】大濱 宏之
(56)【参考文献】
【文献】特開2018-137667(JP,A)
【文献】特開2008-131177(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 5/232
G06T 7/60
G06T 7/80
(57)【特許請求の範囲】
【請求項1】
線分の写ったカメラ画像に基づいてカメラキャリブレーション用の交点を検出する交点検出装置において、
前記カメラ画像から線分を抽出する手段と、
前記各線分の交点の座標を計算する手段と、
前記カメラ画像から前記各交点を含むパッチ画像を抽出する手段と、
前記パッチ画像内の線分を細線化後に平滑化する前処理を実施する手段と、
前記前処理後のパッチ画像上で線分を識別する手段と、
前記パッチ画像ごとに前記各交点を前記識別された線分の交点に修正する手段とを具備したことを特徴とする交点検出装置。
【請求項2】
前記パッチ画像を抽出する手段は、前記各パッチ画像の中心が前記各交点の座標と一致するように前記各パッチ画像を抽出することを特徴とする請求項1に記載の交点検出装置。
【請求項3】
前記前処理を実施する手段は、グレースケール化したパッチ画像に対して前処理を実施することを特徴とする請求項1または2に記載の交点検出装置。
【請求項4】
前記線分を識別する手段は、
前記前処理後のパッチ画像内の線分ごとにエッジ検出を行って一端側および他端側のエッジ座標ペアを検出する手段を具備し、
前記エッジ座標ペアごとに各エッジ座標の中心座標を求め、前記中心座標間の距離が最長となる中心座標ペアの各中心座標を通る線分を識別結果とすることを特徴とする請求項1ないし3のいずれかに記載の交点検出装置。
【請求項5】
前記カメラ画像から競技領域を抽出する手段を具備し、
前記線分を抽出する手段は、前記競技領域から線分を抽出することを特徴とする請求項1ないし4のいずれかに記載の交点検出装置。
【請求項6】
前記競技領域を抽出する手段は、前記カメラ画像の全領域を競技領域と推定した後、前記カメラ画像の統計値を用いた閾値処理により競技領域と推定する領域を段階的に狭める反復処理において閾値を更新し、所定の収束条件が成立した時点で競技領域と推定している領域を抽出することを特徴とする請求項5に記載の交点検出装置。
【請求項7】
前記カメラ画像から線分を抽出する手段は、
前記カメラ画像から線分片を検出する手段と、
前記各線分片にカメラ画像の所定の端部から垂線を下ろし、当該垂線の角度および長さを計算する手段と、
前記垂線の角度および長さが所定の関係を有する線分片同士を統合する手段とを具備したことを特徴とする請求項1ないし6のいずれかに記載の交点検出装置。
【請求項8】
線分の写ったカメラ画像に基づいて、コンピュータがカメラキャリブレーション用の交点を検出する交点検出方法において、
前記カメラ画像から線分を抽出し、
前記各線分の交点の座標を計算し、
前記カメラ画像から前記各交点を含むパッチ画像を抽出し、
前記パッチ画像内の線分を細線化後に平滑化する前処理を実施し、
前記前処理後のパッチ画像上で線分を識別し、
前記パッチ画像ごとに前記各交点の座標を前記識別された線分の交点の座標に修正することを特徴とする交点検出方法。
【請求項9】
前記カメラ画像から線分を抽出する際に、
前記カメラ画像から線分片を検出し、
前記各線分片にカメラ画像の所定の端部から垂線を下ろし、当該垂線の角度および長さを計算し、
前記垂線の角度および長さが所定の関係を有する線分片同士を統合することを特徴とする請求項8に記載の交点検出方法。
【請求項10】
線分の写ったカメラ画像に基づいてカメラキャリブレーション用のパラメータを出力するカメラキャリブレーション装置において、
前記カメラ画像から線分を抽出する手段と、
前記各線分の交点の座標を計算する手段と、
前記カメラ画像から前記各交点を含むパッチ画像を抽出する手段と、
前記パッチ画像内の線分を細線化後に平滑化する前処理を実施する手段と、
前記前処理後のパッチ画像上で線分を識別する手段と、
前記パッチ画像ごとに前記各交点を前記識別された線分の交点に修正する手段と、
競技領域モデルの交点を記憶する手段と、
前記修正した交点と前記競技領域モデルの交点とを対応付ける手段と、
相互に対応する、前記修正した交点と前記競技領域モデルの交点とに基づいてホモグラフィ行列を決定する手段と、
前記ホモグラフィ行列に基づいてカメラパラメータを計算する手段とを具備したことを特徴とするカメラキャリブレーション装置。
【請求項11】
前記ホモグラフィ行列を決定する手段は、
相互に対応する、前記修正した交点と前記競技領域モデルの交点とに基づいて複数のホモグラフィ行列候補を生成する手段と、
前記ホモグラフィ行列候補ごとに、前記修正した各交点の特徴ベクトルと前記競技領域モデルの各交点の特徴ベクトルとのハミング距離を計算する手段と、
前記ホモグラフィ行列候補ごとに、前記修正した各交点と、前記競技領域モデルの各交点を当該ホモグラフィ行列候補に基づいて投影した各交点との交点誤差を計算する手段と、
前記ホモグラフィ行列候補ごとに、前記修正した各交点から延びる線分と、前記競技領域モデルの各交点を当該ホモグラフィ行列候補に基づいて投影した各交点から延びる線分との方向誤差を計算する手段とを具備し、
前記ハミング距離、前記交点誤差および前記方向誤差の少なくとも2つが所定の閾値を下回るホモグラフィ行列候補をホモグラフィ行列に決定することを特徴とする請求項10に記載のカメラキャリブレーション装置。
【請求項12】
前記線分を識別する手段は、
前記前処理後のパッチ画像内の線分ごとにエッジ検出を行って一端側および他端側のエッジ座標ペアを検出する手段を具備し、
前記エッジ座標ペアごとに各エッジ座標の中心座標を求め、前記中心座標間の距離が最長となる中心座標ペアの各中心座標を通る線分を識別結果とすることを特徴とする請求項10または11に記載のカメラキャリブレーション装置。
【請求項13】
前記カメラ画像から競技領域を抽出する手段を具備し、
前記線分を抽出する手段は、前記競技領域から線分を検出することを特徴とする請求項10ないし12のいずれかに記載のカメラキャリブレーション装置。
【請求項14】
前記競技領域を抽出する手段は、前記カメラ画像の全領域を競技領域と推定した後、前記カメラ画像の統計値を用いた閾値処理により競技領域と推定する領域を段階的に狭める反復処理において閾値を更新し、所定の収束条件が成立した時点で競技領域と推定している領域を抽出することを特徴とする請求項13に記載のカメラキャリブレーション装置。
【請求項15】
前記カメラ画像から線分を抽出する手段は、
前記カメラ画像から線分片を検出する手段と、
前記各線分片にカメラ画像の所定の端部から垂線を下ろし、当該垂線の角度および長さを計算する手段と、
前記垂線の角度および長さが所定の関係を有する線分片同士を統合する手段とを具備したことを特徴とする請求項10ないし14のいずれかに記載のカメラキャリブレーション装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、交点検出方法および装置ならびにカメラキャリブレーション装置に係り、特に、フィールド競技を撮影するカメラのキャリブレーションに好適な交点検出方法および装置ならびにカメラキャリブレーション装置に関する。
【背景技術】
【0002】
特許文献1には、カメラ画像から白線を検出し、検出された白線とモデルデータを用いてホモグラフィ行列を算出することでカメラキャリブレーションを行う技術が開示されている。特許文献1では、白線が映っている領域が、統計的に求めた閾値を用いた閾値処理により抽出される。その後、カメラ画像にハフ変換を適用し、白線を検出することで交点が求められる。検出された白線の交点と方向と、モデルデータの白線の交点と方向を対応付けることでホモグラフィ行列が算出される。
【0003】
特許文献1では、複数のホモグラフィ行列が算出されるが、n番目のフレーム画像とm番目のフレーム画像に各ホモグラフィ行列を適用し、そこで求められるカメラポイントの変位が最小となるホモグラフィ行列が選択され、選択されたホモグラフィ行列に基づいてキャリブレーションが行われる。
【0004】
非特許文献1には、Line Segment Detector (LSD)と呼ばれる、入力画像のエッジの勾配を用いて、線分となる領域を抽出して線分を検出する技術が開示されている。LSDは、検出精度が高い線分検出手法として知られている。
【0005】
非特許文献2,3には、畳み込みニューラルネットワークを用いた最新の線分検出手法が開示されている。ニューラルネットワークを用いる線分検出手法は、非特許文献1のLSDよりも線分検出精度が高いとされている。
【0006】
特許文献2には、入力画像の輝度と色差の平均値と標準偏差を用いた閾値処理にて競技領域を抽出する技術が開示されている。
【先行技術文献】
【特許文献】
【0007】
【文献】特開2018-137667号公報
【文献】特許第6456244号公報
【非特許文献】
【0008】
【文献】R. G. V. Gioi, J. Jakubowicz, J. M. Morel and G. Randall, "LSD: a Line Segment Detector", Image Processing On Line, pp. 35-55, 2012.
【文献】Y. Zhou, H. Qi and Y. Ma, "End-to-End Wireframe Parsing", pp. 962-971, ICCV 2019.
【文献】N. Xue, S. Bai, F. Wang, G.-S. Xia, T. Wu and L. Zhang, "Learning Attraction Field Representation for Robust Line Segment Detection", pp.1595-1603, CVPR 2019.
【発明の概要】
【発明が解決しようとする課題】
【0009】
特許文献1では、白線が映っている領域の抽出精度が低く、また線分の検出方法に古典的な手法を用いているために線分検出精度が低いことから、カメラキャリブレーションの成功率が低いという問題がある。
【0010】
白線検出の前段処理として、白線が映っている領域を抽出する処理がある。特許文献1では、当該領域を抽出するにあたり、統計的な値を一意に決定し、決定された値を用いた閾値処理により当該領域を抽出している。統計的な値を映像シーン毎に一意に決定することは非常に困難な問題がある。また、特許文献1には統計的な値の具体的な求め方については開示されていない。
【0011】
本発明の目的は、上記の技術課題を解決し、フィールド競技を撮影するカメラのキャリブレーションに好適な交点を精度よく検出できる交点検出方法および装置ならびにカメラキャリブレーション装置を提供することにある。
【課題を解決するための手段】
【0012】
上記の目的を達成するために、本発明は、線分の写ったカメラ画像に基づいてカメラキャリブレーション用の交点を検出する交点検出装置において、以下の構成を具備した点に特徴がある。
【0013】
(1) カメラ画像から線分を抽出する手段と、各線分の交点の座標を計算する手段と、カメラ画像から各交点を含むパッチ画像を抽出する手段と、パッチ画像内の線分を細線化後に平滑化する前処理を実施する手段と、前処理後のパッチ画像上で線分を識別する手段と、パッチ画像ごとに各交点を前記識別された線分の交点に修正する手段とを具備した。
【0014】
(2) カメラ画像から競技領域を抽出する手段を具備し、当該カメラ画像から競技領域を抽出する手段は、カメラ画像の全領域を競技領域と推定した後、カメラ画像の統計値を用いた閾値処理により競技領域と推定する領域を段階的に狭める反復処理において閾値を更新し、所定の収束条件が成立した時点で競技領域と推定している領域を抽出するようにした。
【0015】
(3) カメラ画像から線分を抽出する手段は、カメラ画像から線分片を検出する手段と、各線分片にカメラ画像の所定の端部から垂線を下ろし、当該垂線の角度および長さを計算する手段と、前記垂線の角度および長さが所定の関係を有する線分片同士を統合する手段とを具備した。
【0016】
(4) 線分の写ったカメラ画像に基づいてカメラキャリブレーション用のパラメータを出力するカメラキャリブレーション装置において、カメラ画像から線分を抽出する手段と、各線分の交点の座標を計算する手段と、カメラ画像から各交点を含むパッチ画像を抽出する手段と、パッチ画像内の線分を細線化後に平滑化する前処理を実施する手段と、前処理後のパッチ画像上で線分を識別する手段と、パッチ画像ごとに各交点を前記識別された線分の交点に修正する手段と、競技領域モデルの交点を記憶する手段と、修正した交点と競技領域モデルの交点とを対応付ける手段と、相互に対応する、修正した交点と競技領域モデルの交点とに基づいてホモグラフィ行列を決定する手段と、ホモグラフィ行列に基づいてカメラパラメータを計算する手段とを具備した。前記ホモグラフィ行列を決定する手段は、相互に対応する、修正した交点と競技領域モデルの交点とに基づいて複数のホモグラフィ行列候補を生成する手段と、前記ホモグラフィ行列候補ごとに、修正した各交点の特徴ベクトルと競技領域モデルの各交点の特徴ベクトルとのハミング距離を計算する手段と、前記ホモグラフィ行列候補ごとに、修正した各交点と、競技領域モデルの各交点を当該ホモグラフィ行列候補に基づいて投影した各交点との交点誤差を計算する手段と、前記ホモグラフィ行列候補ごとに、修正した各交点から延びる線分と、競技領域モデルの各交点を当該ホモグラフィ行列候補に基づいて投影した各交点から延びる線分との方向誤差を計算する手段とを具備し、前記ハミング距離、交点誤差および方向誤差の少なくとも2つが所定の閾値を下回るホモグラフィ行列候補をホモグラフィ行列に決定するようにした。
【発明の効果】
【0017】
本発明によれば、以下のような効果が達成される。
【0018】
(1) カメラ画像から抽出した交点を含むパッチ画像を抽出し、パッチ画像内の線分を細線化後に平滑化する前処理を実施し、前処理後のパッチ画像上で線分を識別し、パッチ画像ごとに各交点を前記識別された線分の交点に修正するので、前処理により鮮明化、明瞭化された線分に基づいて交点を計算できる。したがって、本来の交点を構成する線分の近傍に位置する線分に基づいて交点が誤検知されていた場合でも、少ない計算負荷で正確な交点を再計算できるようになる。
【0019】
(2) カメラ画像から競技領域を抽出する手段は、カメラ画像の全領域を競技領域と推定した後、カメラ画像の統計値を用いた閾値処理により競技領域と推定する領域を段階的に狭める反復処理において閾値を更新し、所定の収束条件が成立した時点で競技領域と推定している領域を抽出するので、競技領域を精度よく抽出できるようになる。
【0020】
(3) カメラ画像から線分を抽出する手段は、カメラ画像から線分片を検出し、各線分片にカメラ画像の所定の端部から垂線を下ろし、当該垂線の角度および長さを計算し、前記垂線の角度および長さが所定の関係を有する線分片同士を統合するので、垂線の向きに関わらずその特徴量としての垂線の角度および長さを実用的な値として求められるようになる。
【0021】
(4) ホモグラフィ行列候補ごとに、ハミング距離を計算し、交点誤差を計算し、方向誤差を計算し、ハミング距離、交点誤差および方向誤差の少なくとも2つが所定の閾値を下回るホモグラフィ行列候補をホモグラフィ行列に決定するので、ホモグラフィ行列の精度を向上させることができる。
【図面の簡単な説明】
【0022】
図1】本発明を適用したカメラキャリブレーション装置の機能ブロック図である。
図2】競技領域の抽出手順を示したフローチャートである。
図3】線分片特徴量の求め方を示した図である。
図4】交点修正部の機能ブロック図である。
図5】交点の修正方法を示した図である。
図6】特徴ベクトル要素の設定方法を示した図である。
図7】カメラ交点特徴ベクトルの生成方法を示した図である。
図8】特徴ベクトルVc,Vmのマッチング方法を示した図である。
図9】ホモグラフィ行列決定部の機能ブロック図である。
【発明を実施するための形態】
【0023】
以下、図面を参照して本発明の実施の形態について詳細に説明する。図1は、本発明の交点検出装置を適用したカメラキャリブレーション装置1の主要部の構成を示した機能ブロック図である。
【0024】
このようなカメラキャリブレーション装置は、汎用のコンピュータやサーバに各機能を実現するアプリケーション(プログラム)を実装することで構成できる。あるいはアプリケーションの一部をハードウェア化またはソフトウェア化した専用機や単能機としても構成できる。
【0025】
画像取得部10は、フィールド競技のカメラ画像Iをフレーム単位で取得する。カメラ画像Iは、フィールド競技を撮影中のカメラから直接取得しても良いし、HDDなどに保存した後に読み出して取得するようにしても良い。
【0026】
競技領域抽出部20は、フィールド競技の競技領域が観客席等と共に映ったカメラ画像Iから競技領域を抽出する。多くの競技では、競技領域が一色又は類似の色で構成され、競技領域以外は別の色となることが多い。また、競技を撮影したカメラ画像では、競技領域の色がそれ以外の領域の色よりも多くの面積を占めることが経験的に認められる。
【0027】
そこで、本実施形態ではフィールド競技を撮影したカメラ画像に固有の特徴を利用して、カメラ画像の全領域を競技領域と仮定した後、カメラ画像Iに対する統計値を用いた閾値処理により競技領域と推定する領域を徐々に狭める反復処理において閾値を自動更新し、所定の収束条件が成立した時点で競技領域と推定されている領域を競技領域として抽出するようにしている。
【0028】
図2は、前記競技領域抽出部20による競技領域の抽出手順を示したフローチャートであり、ステップS1では、フレーム単位で入力されるカメラ画像Iの色空間がHSV色空間に変換される。ステップS2では、カメラ画像Iのマスク画像mask (i, j)が初期化される。本実施形態では、マスク画像mask (i,j)の競技領域と推定されている画素には「1」、競技領域以外と推定されている画素には「0」が登録されるが、初期化されると全ての画素が「1」となる。
【0029】
ステップS3では、カメラ画像に占める競技領域の割合に基づいて、マスク画像の更新条件が成立したか否かが判断される。本実施形態では、Xをカメラ画像Iの横方向の画素数、Yをカメラ力画像Iの縦方向の画素数、rをカメラ画像Iに占める競技領域の上限割合(1以下の固定係数値)、cをmask (i, j)の値が「1」の数をカウントした値とし、次式(1)が成立すればマスク画像mask (i, j)の更新条件が成立したと判断される。
【0030】
【数1】
【0031】
マスク画像mask (i, j)が初期化された直後はcの値が十分に大きく、上式(1)が不成立と判断されるのでステップS4へ進む。ステップS4では、次式(2),(3)を用いてカメラ画像IのH成分(色相)の平均値μHおよび標準偏差σH、ならびにS成分(彩度)の平均値μSおよび標準偏差σS(S成分については、式省略)が求められる。ここで、IHはH成分の配列、i,jは画素位置を表す添字である。
【0032】
【数2】
【0033】
【数3】
【0034】
ステップS5では、マスク画像mask (i, j)の更新式(5)で用いる3つの閾値が次式(4)に基づいて更新される。ここで、αは更新式(5)の閾値処理のレンジを調整する1以上の係数値である。
【0035】
【数4】
【0036】
ステップS6では、次式(5)に基づいてマスク画像mask (i, j)が更新される。本実施形態では、画素Ii, jのH成分が所定の下限値HMIN以上かつ上限値HMAX以下であって、そのS成分が所定の下限値SMIN以上であれば「1」、それ以外であれば「0」とされる。
【0037】
【数5】
【0038】
ステップS7では、前記更新後のマスク画像mask (i, j)にメディアンフィルタを適用することでノイズが除去される。ステップS8では、次式(6)に基づいて競技領域推定の収束判定がなされる。
【0039】
【数6】
【0040】
ここで、差分DはH成分の現在の標準偏差σHと前回の標準偏差σH'との差分であり、次式(7)で求められる。上式(6)が不成立であれば、ステップS3へ戻って上記の各処理が繰り返される。
【0041】
【数7】
【0042】
その後、ステップS3の判断が肯定となるとステップS10へ進み、前記αに1未満の更新ステップ幅tが加算される。ステップS11では、マスク画像mask (i, j)が更新前のマスク画像mask_(i, j)に置き換えられる。
【0043】
その後、ステップS8において競技領域推定の収束判定の判断が肯定となるとステップS9へ進む。ステップS9では、次式(8)に基づいてカメラ画像Iに現在のマスク画像mask (i, j)を適用することで競技領域の画像Fi, jが抽出されて次段へ出力される。
【0044】
【数8】
【0045】
なお、上記の実施例ではHSV色空間を例にして説明をしたが、本発明は色空間に限定されない。
【0046】
図1へ戻り、線分抽出部30は、カメラ画像Iの競技領域からフィールドラインを構成する線分を検出する。線分抽出部30において、線分片検出部31は、競技領域に周知のLSDを適用して、フィールドラインの構成要素であるセグメント(線分片)を検出する。各線分片は始点座標および終点座標により定義される。線分片特徴量計算部32は、図3に示したように、各線分片Sgまたはその延長線上にカメラ画像Iの例えば左上頂部から垂線Peを下ろし、当該垂線Peとx軸との角度θおよび当該垂線Peの長さρを各線分片Sgの特徴量として計算する。
【0047】
線分片統合部33は、線分片のペアごとに特徴量としての角度θおよび長さρの各差分を計算し、所定の条件を充足する線分片ペアを統合する。本実施形態では、任意に抽出した2つの線分Sg1=(ρ1, θ1),Sg2=(ρ2, θ2)について、その一方(例えば、線分Sg1)をその中点を中心にθ2-θ1度だけ回転させた線分Sg1'=(ρ1', θ2)を定義し、次式(9)を満たす線分片ペアSg1,Sg2を同一の線分を構成する線分片と判定して統合する。
【0048】
【数9】
【0049】
ここで、Tθ,Tρは定数の閾値である。また、同一直線上にある線分片であっても、端点の間隔が閾値以上の場合は統合しない。線分片統合部33は、統合された線分片の各端点の座標を出力する。線分剪定部34は、統合された各線分を、その傾きkに基づいて水平線分LHおよび垂直線分LVのいずれかに分類する。
【0050】
本実施形態では、分類閾値γを予め定義しておき、|ki|>γならば垂直線分LVに分類し、|ki|≦γならば水平線分LHに分類する。また、分類閾値はカメラの位置および撮影方向によって異なることがある。したがって、分類処理の後、水平線分LHおよび垂直線分LVは2つのサブセットになっている。
【0051】
ソーティング部35は、水平線分LHをその座標に基づいて上から下にソートし、垂直線分LVをその座標に基づいて左から右にソートする。水平線分LHをソートする際はオフセットを使用して、対応する線分を上から下にソートする。垂直線分LVのソートでは、一番上の水平線分LHに注目して当該水平線分LHと各垂直線分LVとの交点を算出し、当該交点のx座標値に従って各垂直線分LVをソートする。
【0052】
交点座標計算部40は、ソートされた各水平線分と垂直線分との交点を検出し、その座標を計算する。パッチ画像抽出部50は、カメラ画像Iから交点ごとに当該交点の座標位置を中心としたN×Mサイズのパッチ画像を抽出する。
【0053】
交点修正部60は、図4に示したように、前処理部61、線分識別部62、交点計算部63、特徴ベクトル要素生成部64およびカメラ交点特徴ベクトル生成部65を含み、グレースケール化した各パッチ画像上で、前記交点座標計算部40が計算した交点の位置を修正し、修正後の各交点の情報をベクトル化する。
【0054】
前記交点修正部60において、前処理部61は、抽出した線分ごとに前処理として、(1) 当該線分が垂直姿勢となるようにパッチ画像を回転させ、(2) バイラテラルフィルタを適用し、(3) 所定の閾値処理により画像を0または255の二値の画像に変換し、(4) メディアンフィルタを適用してノイズを除去し、(5) ノイズ除去された線分を、図5(a)に示したように細線化し、(6) ガウシアンフィルタを適用した平滑化により細線化した線分に勾配を持たせる、ことにより前処理後パッチ画像を得る。
【0055】
このような前処理により、不鮮明、不明瞭であるために前記線分抽出部30が不完全にしか抽出できなかった線分を鮮明化、明瞭化して線分検出され易くできる。また、このような前処理は一般的に多くの計算量を必要とするが、本実施形態では前処理がパッチ画像に対してのみ実施されるので、計算量の増加を抑えながら交点検出に影響する実質的に全ての線分を検出され易くできる。
【0056】
線分識別部62は、前処理後パッチ画像に周知のLSD(Line Segment Detector)を適用して線分を識別する。本実施形態では、前処理後パッチ画像に対するラスタスキャンにより、図5(b)に示したように、線分ごとにその一方側エッジおよび他方側エッジに沿って2本の線分が検知されるので、2つの線分の向きの差|θ|を求める。更に、|θ|<閾値THを満たす線分ペアについて、ラスタスキャンの位置ごとに検知された一方側および他方側の各座標の中点座標を求め、中点座標間の距離が最長となる中点座標ペアを通る線分を修正後の線分として識別する。
【0057】
交点計算部63は、修正後の線分の交点を再計算し、図5(c)に示したように、再計算結果に基づいて交点の座標を修正する。特徴ベクトル要素生成部64は、再計算された交点ごとに当該交点から各方向へ延びる線分の存否に基づいて特徴ベクトル要素を生成する。本実施形態では、図6に示したように、交点ごとに各方向へ延びる線分の存否が、4ビットのバイナリデータで構成される特徴ベクトル要素の各ビットに割り当てられ、例えば、「UP」方向への存否が最上位ビット(MSB1)に割り当てられる。
【0058】
同様に、「RIGHT」方向への存否がMSB2に割り当てられ、「DOWN」方向への存否がMSB3に割り当てられ、「LEFT」方向への存否が最下位ビット(MSB4)に割り当てられる。そして、各ビットに対して、フィールドラインが存在していれば「1」、存在していなければ「0」がセットされる。したがって、「UP」方向へ延びる垂直フィールドラインと「LEFT」方向へ延びる垂直フィールドラインとが検知されている交点の特徴ベクトル要素は"1001"となる。
【0059】
カメラ交点特徴ベクトル生成部65は、カメラ交点に基づいて、各交点の特徴ベクトル要素を所定の順序、例えば図7に示したようなラスタスキャンの順序で一次元に配列することで、カメラ交点特徴ベクトルVcを生成する。図7の例ではカメラ交点特徴ベクトルVcは次式(10)のようになる。
【0060】
Vc =[1110, 0101, 0011, 1110, 0011, 1010, 1110, 0101, 1001] (10)
【0061】
このように、本実施形態ではパッチ画像単位で前処理を実行してパッチ画像内の線分を鮮明化、明瞭化した後に各線分を改めて識別し、当該識別の結果に基づいて交点が計算される。したがって、前記線分抽出部30が、本来の交点を構成する線分以外の線分に基づいて交点を誤検知していた場合でも、少ない計算負荷で正確な交点を再計算できるようになる。
【0062】
図1へ戻り、モデル交点特徴ベクトル(Vm)要素記憶部70には、競技領域モデルの各フィールドラインの交点(モデル交点)ごとに、当該交点を通るフィールドラインの数および方向に基づいて予め上記と同様の手順で生成したモデル交点特徴ベクトル要素が記憶されている。
【0063】
対応点設定部80は、マッチング候補抽出部81,モデル交点特徴ベクトル生成部82およびマッチング部83を含み、カメラ画像と競技領域モデルとの対応する交点(対応点)を設定する。
【0064】
マッチング候補抽出部81は、カメラ交点特徴ベクトルVcの各特徴ベクトル要素に係る交点を定義した水平フィールドラインLHおよび垂直フィールドラインLVの各本数に応じて、カメラ交点特徴ベクトルVcの各特徴ベクトル要素と交点の配列が類似するモデル交点特徴ベクトル要素の組み合わせを抽出する。
【0065】
モデル交点特徴ベクトル生成部82は、当該モデル交点特徴ベクトル要素の組み合わせごとに各特徴ベクトル要素を配列して複数のモデル交点特徴ベクトルVmを生成する。マッチング部83は、カメラ交点特徴ベクトルVcと各モデル交点特徴ベクトルVmとの間でマッチングを実行し、類似度が最も高いモデル交点特徴ベクトルVmとカメラ交点特徴ベクトルVcとの対応関係に基づいて対応点を設定する。
【0066】
図8は、カメラ交点特徴ベクトルVcとモデル交点特徴ベクトルVmとのマッチング方法を模式的に示した図である。
【0067】
カメラ交点特徴ベクトルVcが、例えば3本の水平フィールドラインLHと2本の垂直フィールドラインLVとの交点に関する6つの特徴ベクトル要素をラスタスキャン順に連結して構成されていると、マッチング候補抽出部81は、Vm要素記憶部70から、競技領域モデルの3本の水平フィールドラインと2本の垂直フィールドラインとの交点、すなわちカメラ画像の交点と配列(水平及び垂直位置)が類似する交点に係る6つの特徴ベクトル要素のセットを全て抽出し、それぞれをラスタスキャン順に連結してモデル交点特徴ベクトルVmを生成する。
【0068】
すなわち、競技領域モデルが6本の水平フィールドラインLHと7本の垂直フィールドラインLVとから構成されていると、6本の水平フィールドラインLHから任意に選択した3本(6C3=20通り)と、7本の垂直フィールドラインLVから任意に選択した2本(7C2=21通り)との各交点に関する6つの特徴ベクトル要素の組み合わせを前記Vm要素記憶部70から取得し、組み合わせごとに6つの特徴ベクトル要素を連結して420個のモデル交点特徴ベクトルVmを生成する。
【0069】
ホモグラフィ行列決定部90は、図9に示したように、ホモグラフィ行列生成部91,ハミング距離計算部92,交点誤差計算部93および方向誤差計算部94を含み、ハミング距離、交点誤差、方向誤差の少なくとも2つが閾値未満となるホモグラフィ行列をカメラキャリブレーション用のホモグラフィ行列に決定する。
【0070】
ホモグラフィ行列生成部91は、対応点の関係にあるカメラ画像の交点座標と競技領域モデルの交点座標との対応関係を用いてホモグラフィ行列を生成する。本実施形態では、水平方向の線分Nh本からnh本、垂直方向の線分Nv本からnv本を選択し、nv×nh個の交点を決める。このとき、nhは2以上Nh以下、nvは2以上Nv以下でなければならない。
【0071】
このとき、線分の選び方は、水平方向がNhCnh通り、垂直方向がNvCnv通りあるため、組み合わせパターンはNhCnh×NvCnv通りとなる。本実施形態では、これら全てのパターンに対してホモグラフィ行列が求められる。
【0072】
前記ハミング距離計算部92は、カメラ交点特徴ベクトルVcとモデル交点特徴ベクトルVmとのハミング距離を計算する。ハミング距離の計算結果は、ホモグラフィ行列の生成に用いたカメラ交点およびモデル交点の対応点としての正当性を評価する指標として用いられる。
交点誤差計算部93は、競技領域モデルの各交点座標をホモグラフィ行列生成部91が生成したホモグラフィ行列を用いて投影した座標と、カメラ画像の各交点座標との誤差を計算する。方向誤差計算部94は、競技領域モデルの各交点座標をホモグラフィ行列生成部91が生成したホモグラフィ行列を用いて投影した各座標から伸びる線分(白線)と、カメラ画像の交点座標から延びる線分との方向の誤差を計算する。
【0073】
前記ホモグラフィ行列決定部90は、前記ハミング距離、交点誤差および方向誤差の少なくとも2つが所定の閾値未満となるホモグラフィ行列を選択する。少なくとも2つが閾値未満となるホモグラフィ行列が存在しなかった場合はエラーを出力し、キャリブレーションは失敗とする。なお、ホモグラフィ行列の候補が複数あった場合は、次の手順で1つに絞り込むことができる。
【0074】
手順1:競技領域内で検出された水平方向および垂直方向の各線分を背景が黒色の画像に白線で描画し、二値(0:黒色または255:白色)の二値白線画像W0を生成する。
【0075】
手順2:競技領域モデルの交点座標を各ホモグラフィ行列候補を用いて変換し、変換された交点座標を用いて背景が黒色の画像に白線を描画し、白線画像W(1~K)を生成する(ここで生成される白線画像はホモグラフィ行列の候補数分(K枚)となる)。
【0076】
手順3:手順1で生成した白線画像W0と、手順2で生成した白線画像W(1~K)とをそれぞれ重ね合わせ、W0の白線と重なる面積が最も大きくなる白線画像WL(Lは1以上K以下の整数)の生成に用いたホモグラフィ行列を出力用のホモグラフィ行列に決定する。
【0077】
カメラパラメータ計算部100は、前記決定されたホモグラフィ行列とカメラの内部パラメータとに基づいてカメラキャリブレーション行列を計算して出力する。
【符号の説明】
【0078】
10…画像取得部,20…競技領域抽出部,30…線分抽出部,40…交点座標計算部,50…パッチ画像抽出部,60…交点修正部,61…前処理部,62…線分識別部,63…交点計算部,64…特徴ベクトル要素生成部,65…カメラ交点特徴ベクトル生成部,70…Vm要素記憶部,80…対応点設定部,81…マッチング候補抽出部,82…交点特徴ベクトル生成部,83…マッチング部,90…ホモグラフィ行列決定部,91…ホモグラフィ行列生成部,92…ハミング距離計算部,93…交点誤差計算部,94…方向誤差計算部,100…カメラパラメータ計算部
図1
図2
図3
図4
図5
図6
図7
図8
図9