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

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

▶ 株式会社小野測器の特許一覧

<>
  • 特開-移動量計測システム 図1
  • 特開-移動量計測システム 図2
  • 特開-移動量計測システム 図3
  • 特開-移動量計測システム 図4
  • 特開-移動量計測システム 図5
  • 特開-移動量計測システム 図6
  • 特開-移動量計測システム 図7
  • 特開-移動量計測システム 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024057741
(43)【公開日】2024-04-25
(54)【発明の名称】移動量計測システム
(51)【国際特許分類】
   G06T 7/60 20170101AFI20240418BHJP
【FI】
G06T7/60 180B
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022164601
(22)【出願日】2022-10-13
(71)【出願人】
【識別番号】000145806
【氏名又は名称】株式会社小野測器
(74)【代理人】
【識別番号】100099748
【弁理士】
【氏名又は名称】佐藤 克志
(72)【発明者】
【氏名】山田 計
(72)【発明者】
【氏名】米津 俊
(72)【発明者】
【氏名】足立 新
(72)【発明者】
【氏名】吉越 洋志
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096CA02
5L096FA34
5L096FA66
5L096FA67
5L096GA08
5L096HA05
(57)【要約】
【課題】対象体に対して相対的に移動するカメラで撮影した画像中の、先行する画像中の特定領域に類似する領域の探索を速やかに行う。
【解決手段】対象体を撮影した撮影画像の各行の画素データを行の並び順に順次出力する第1カメラ21を設ける。第1カメラ21の対象体に対する標準的な相対的移動方向と反対の方向を反相対的移動方向として、第1カメラ21は、個々の撮影画像について当該第1カメラ21が、より前に出力する行が表す対象体の部分が、対象体の、より反相対的移動方向側の部分となる向きで配置する。画像P中の被追尾領域Aと同じサイズの各領域は、当該領域内の画素データが第1カメラ21から出力されしだい相関算出領域CAに設定され、被追尾領域Aとの相関が算出され、算出した相関に基づいて被追尾領域Aに対応する領域が追尾結果領域Bとして算定される。
【選択図】図5
【特許請求の範囲】
【請求項1】
画像の行の並び順に順次各行の画素データを出力するカメラで撮影した対象体の画像である撮影画像から、前記対象体に対する前記カメラの相対的移動量を計測する移動量計測システムであって、
前記カメラの対象体に対する標準的な相対的移動方向と反対の方向を反相対的移動方向として、前記カメラは、個々の前記撮影画像について、当該カメラが、より前に出力する行が表す対象体の部分が、対象体の、より反相対的移動方向側の部分となる向きで配置されており、
当該移動量計測システムは、
計測の各回において、今回の前記撮影画像中に、被追尾領域を設定する被追尾領域設定手段と、
計測の各回において、前回に前記被追尾領域設定手段が設定した被追尾領域である対象被追尾領域にマッチする今回の前記撮影画像中の領域を、追尾結果領域として探索する探索手段と、
計測の各回において、前記対象被追尾領域から今回、前記探索手段が探索した前記追尾結果領域への移動量である画像上移動量を算出する画像上移動量算定手段とを有し、
前記探索手段には、前記撮影画像の画素データが前記カメラからの出力順に入力され、当該探索手段は、前記対象被追尾領域と同じサイズの今回の撮影画像中の領域を、当該領域に含まれる全ての画素の画素データの入力が完了しだい、相関算出領域に設定して、当該相関算出領域と前記対象被追尾領域との相関の算出を行い、1以上の前記相関算出領域について算出した相関に基づいて前記追尾結果領域を算定することを特徴とする移動量計測システム。
【請求項2】
請求項1記載の移動量計測システムであって、
前記被追尾領域設定手段は、計測の各回に、今回までに算出した前記画像上移動量に基づいて、次回に算出される画像上移動量を予測し、前記被追尾領域を、当該被追尾領域を予測した画像上移動量移動した領域が、前記撮影画像の前記カメラから最初に出力される行の近くの領域となるように設定することを特徴とする移動量計測システム。
【請求項3】
請求項2記載の移動量計測システムであって、
前記被追尾領域設定手段は、前記被追尾領域を、当該被追尾領域を前記予測した画像上移動量移動した領域が、前記撮影画像の前記カメラから最初に出力される列の近くの領域となるように設定することを特徴とする移動量計測システム。
【請求項4】
請求項1、2または3記載の移動量計測システムであって、
前記探索手段は、前記相関算出領域と前記対象被追尾領域の相互に対応する位置にある画素間の画素データの差分の絶対値の総和を前記相関として算出すると共に、前記相関算出領域の設定前に、当該相関算出領域の前記カメラから最後に出力される画素以外の当該相関算出領域内の画素と当該画素と相互に対応する位置にある前記対象被追尾領域の画素間の画素データの差分もしくは当該差分の絶対値を、当該相関算出領域内の画素の画素データが前記カメラから出力されたときに事前に算出しておくことを特徴とする移動量計測システム。
【請求項5】
請求項1、2または3記載の移動量計測システムであって、
前記探索手段は、前記相関算出領域と前記対象被追尾領域の相互に対応する位置にある行間の相関から、前記相関算出領域と前記対象被追尾領域の相関を算出すると共に、前記相関算出領域の設定前に、当該相関算出領域の前記カメラから最後に出力される行以外の当該相関算出領域内の行と当該行と相互に対応する位置にある前記対象被追尾領域の行間の相関を、当該相関算出領域内の行内の全ての画素データが前記カメラから出力されたときに事前に算出しておくことを特徴とする移動量計測システム。
【請求項6】
請求項1、2または3記載の移動量計測システムであって、
対象体の画像である第2撮影画像を撮影する、画像の行の並び順に順次各行の画素データを出力する第2カメラを有し、
前記第2カメラは、個々の第2撮影画像について、当該第2カメラが、より前に出力する行が表す対象体の部分が、対象体の、より標準的な相対的移動方向側の部分となる向きで配置されており、
当該移動量計測システムは、
計測の各回において、今回の第2撮影画像中に、第2被追尾領域を設定する第2被追尾領域設定手段と、
計測の各回において、前回に前記第2被追尾領域設定手段が設定した第2被追尾領域である第2対象被追尾領域にマッチする今回の第2撮影画像中の領域を、第2追尾結果領域として探索する第2探索手段と、
計測の各回において、前記第2対象被追尾領域から今回、第2探索手段が探索した第2追尾結果領域への移動量である第2画像上移動量を算出する第2画像上移動量算定手段と、
計測の各回において、前記画像上移動量算定手段が算定した前記画像上移動量と、前記第2画像上移動量算定手段が算定した前記第2画像上移動量の一方を選択的に用いて、前記対象体に対するカメラの相対的移動量を算定する移動量算定手段とを有し、
前記第2探索手段には、前記第2撮影画像の画素データが前記第2カメラからの出力順に入力され、当該第2探索手段は、前記第2対象被追尾領域と同じサイズの今回の第2撮影画像中の領域を、当該領域に含まれる全ての画素の画素データの入力が完了しだい、第2相関算出領域に設定して、当該第2相関算出領域と前記第2対象被追尾領域との相関の算出を行い、1以上の前記第2相関算出領域について算出した相関に基づいて前記第2追尾結果領域を算定することを特徴とする移動量計測システム。
【請求項7】
請求項1、2または3記載の移動量計測システムであって、
前記カメラは移動体に搭載され、当該移動体が走行する走行面を前記対象体として撮影することを特徴とする移動量計測システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、カメラで対象体を撮影した画像を用いて、カメラと対象体の間の相対的な移動量を測定する技術に関するものである。
【背景技術】
【0002】
カメラで対象体を撮影した画像を用いて、カメラと対象体の間の相対的な移動量を測定する技術としては、第1の時刻に撮影した第1の画像中の特定領域に類似する、第1の時刻より後の第2の時刻に撮影した第2の画像中の領域を探索し、探索した領域の特定領域からの移動量を実空間の移動量に換算して、カメラと対象体の間の相対的な移動量を算定する技術が知られている(たとえば、特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2020-190458号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述の技術によって、カメラと対象体の間の相対的な移動量を測定する場合、特定領域に類似する領域の探索は、少ない処理量で速やかに完了することが、移動量の測定の遅延の抑制や処理量の低減、トラッキングフィードバックの安定性の観点から好ましい。
そこで、本発明は、第1の時刻にカメラに対して相対的に移動する対象体を撮影した画像中の特定領域に類似する、第1の時刻より後の第2の時刻に当該対象体を撮影した画像中の領域の探索を、少ない処理量で速やかに行うことを課題とする。
【課題を解決するための手段】
【0005】
前記課題達成のために、本発明は、画像の行の並び順に順次各行の画素データを出力するカメラで撮影した対象体の画像である撮影画像から、前記対象体に対する前記カメラの相対的移動量を計測する移動量計測システムにおいて、前記カメラの対象体に対する標準的な相対的移動方向と反対の方向を反相対的移動方向として、前記カメラは、個々の前記撮影画像について、当該カメラが、より前に出力する行が表す対象体の部分が、対象体の、より反相対的移動方向側の部分となる向きで配置したものである。また、当該移動量計測システムに、計測の各回において、今回の前記撮影画像中に、被追尾領域を設定する被追尾領域設定手段と、計測の各回において、前回に前記被追尾領域設定手段が設定した被追尾領域である対象被追尾領域にマッチする今回の前記撮影画像中の領域を、追尾結果領域として探索する探索手段と、計測の各回において、前記対象被追尾領域から今回、前記探索手段が探索した前記追尾結果領域への移動量である画像上移動量を算出する画像上移動量算定手段とを備えたものである。前記探索手段には、前記撮影画像の画素データが前記カメラからの出力順に入力される。また、前記探索手段は、前記対象被追尾領域と同じサイズの今回の撮影画像中の領域を、当該領域に含まれる全ての画素の画素データの入力が完了しだい、相関算出領域に設定して、当該相関算出領域と前記対象被追尾領域との相関の算出を行い、1以上の前記相関算出領域について算出した相関に基づいて前記追尾結果領域を算定する。
【0006】
この移動量計測システムは、前記被追尾領域設定手段において、計測の各回に、今回までに算出した前記画像上移動量に基づいて、次回に算出される画像上移動量を予測し、前記被追尾領域を、当該被追尾領域を予測した画像上移動量移動した領域が、前記撮影画像の前記カメラから最初に出力される行の近くの領域となるように設定する構成も好ましい。
【0007】
この場合、前記被追尾領域設定手段は、前記被追尾領域を、当該被追尾領域を予測した画像上移動量移動した領域が、前記撮影画像の前記カメラから最初に出力される列の近くの領域となるように設定してもよい。
また、本移動量計測システムは、前記探索手段において、相関算出領域と前記対象被追尾領域の対応する位置にある画素間の画素データの差分の総和を前記相関として算出すると共に、前記対象被追尾領域の設定前に、当該対象被追尾領域の前記カメラから最後に出力される画素以外の当該対象被追尾領域内の画素と当該画素と対応する位置にある前記対象被追尾領域の画素間の画素データの差分を、当該対象被追尾領域内の画素の画素データが前記カメラから出力された際に事前に算出しておくように構成してもよい。
【0008】
または、移動量計測システムは、前記探索手段において、前記相関算出領域と前記対象被追尾領域の相互に対応する位置にある行間の相関から、前記相関算出領域と前記対象被追尾領域の相関を算出すると共に、前記相関算出領域の設定前に、当該相関算出領域の前記カメラから最後に出力される行以外の当該相関算出領域内の行と当該行と相互に対応する位置にある前記対象被追尾領域の行間の相関を、当該相関算出領域内の行内の全ての画素データが前記カメラから出力されたときに事前に算出してもよい。
【0009】
また、移動量計測システムに、対象体の画像である第2撮影画像を撮影し、画像の行の並び順に順次各行の画素データを出力する第2カメラを設け、当該第2カメラを、個々の第2撮影画像について、当該第2カメラが、より前に出力する行が表す対象体の部分が、対象体の、より標準的な相対的移動方向側の部分となる向きに配置してよい。この場合、移動量計測システムに、計測の各回において、今回の第2撮影画像中に、第2被追尾領域を設定する第2被追尾領域設定手段と、計測の各回において、前回に前記第2被追尾領域設定手段が設定した第2被追尾領域である第2対象被追尾領域にマッチする今回の第2撮影画像中の領域を、第2追尾結果領域として探索する第2探索手段と、計測の各回において、前記第2対象被追尾領域から今回、第2探索手段が探索した第2追尾結果領域への移動量である第2画像上移動量を算出する第2画像上移動量算定手段と、計測の各回において、前記画像上移動量算定手段が算定した前記画像上移動量と、前記第2画像上移動量算定手段が算定した前記第2画像上移動量の一方を選択的に用いて、前記対象体に対するカメラの相対的移動量を算定する移動量算定手段とを設ける。そして、前記第2探索手段に、前記第2撮影画像の画素データが前記第2カメラからの出力順に入力し、当該第2探索手段は、前記第2対象被追尾領域と同じサイズの今回の第2撮影画像中の領域を、当該領域に含まれる全ての画素の画素データの入力が完了しだい、第2相関算出領域に設定して、当該第2相関算出領域と前記第2対象被追尾領域との相関の算出を行い、1以上の前記第2相関算出領域について算出した相関に基づいて前記第2追尾結果領域を算定する。
【0010】
また、移動量計測システムにおいて、前記カメラは移動体に搭載され、当該移動体が走行する走行面を前記対象体として撮影するものでよい。
このような移動量計測システムによれば、撮影画像中の、より前に画素データが出力される領域ほど、より速やかに被追尾領域との相関を算出することができる。
また、カメラは、対象体に対してカメラが、標準的な相対移動方向に移動しているとき、対象体の像が、より後に画素データが出力される行から、より前に画素データが出力される行に向かって流れていく動画を撮影する向きで配置されているので、探索すべき追尾結果領域は、カメラの撮影画像の、最初に画素データが出力される行寄りにある蓋然性が大きい。
【0011】
したがって、追尾結果領域の探索を、より速やかに少ない処理量で行えることが期待できる。
また、前記追尾領域を、当該追尾領域を予測した画像上移動量移動した領域が、前記撮影画像の前記カメラから最初に出力される行の近くの領域となるように、設定した場合には、さらに、探索すべき追尾結果領域の位置が、最初に画素データが出力される行に充分に近い位置となる可能性をより高めることができ、追尾結果領域の探索を、速やかに少ない処理量で行えることを、より担保できる。
【発明の効果】
【0012】
以上のように、本発明によれば、第1の時刻にカメラに対して相対的に移動する対象体を撮影した画像中の特定領域に類似する、第1の時刻より後の第2の時刻に当該対象体を撮影した画像中の領域の探索を、少ない処理量で速やかに行える。
【図面の簡単な説明】
【0013】
図1】本発明の実施形態に係る移動量計測システムの構成を示すブロック図である。
図2】本発明の実施形態に係る移動量計測システムの適用例を示す図である。
図3】本発明の実施形態に係る対象体に対するステレオカメラの標準的な移動方向と、ステレオカメラで撮影される画像の向きとの関係を示す図である。
図4】本発明の実施形態に係る計測装置の追尾動作の例を示す図である。
図5】本発明の実施形態に係る相関算出領域の遷移を示す図である。
図6】本発明の実施形態に係る相関算出領域と被追尾領域の相関算出の動作例を示す図である。
図7】本発明の実施形態に係る相関算出領域と被追尾領域の相関算出の他の動作例を示す図である。
図8】本発明の実施形態に係る実距離変換係数の算出動作の例を示す図である。
【発明を実施するための形態】
【0014】
本発明の実施形態について説明する。
図1に、実施形態に係る移動量計測システムの構成を示す。
図示するように、移動量計測システムは、計測装置1とステレオカメラ2を備えている。
計測装置1は、被追尾領域設定部11、追尾処理部12、離間距離計測部13、移動ベクトル算定部14、実距離変換係数算出部15、移動状態算定部16を備えている。
ステレオカメラ2は、第1カメラ21と第2カメラ22との2つのカメラを備えている。ここでは、説明を簡単にするため、ステレオカメラ2は、第1カメラ21と第2カメラ22の光軸が平行な平行ステレオカメラとする。
移動量計測システムは、ステレオカメラ2で撮影する対象体とステレオカメラ2間の相対的な移動量を計測するシステムであり、図2a、bのような移動量の計測に適用することができる。
図2aは、ステレオカメラ2を移動体(図では、自動車)に固定し、路面を対象体として路面に対する移動体の移動量を計測する適用例を示している。この場合、ステレオカメラ2は第1カメラ21と第2カメラ22で路面を直上より撮影するように配置される。また、第1カメラ21と第2カメラ22は、対象体(路面)に対するステレオカメラ2の標準的な移動方向MD(移動体の前方向)と垂直、かつ、第1カメラ21と第2カメラ22の光軸と垂直な方向に離間して配置する。
【0015】
図2bは、ステレオカメラ2を基準座標系に固定し、基準座標系に対して移動する物体面(図では、ベルトコンベアの搬送物載置面)を対象体として、基準座標系に対する対象体の移動量を計測する適用例を示している。この場合、ステレオカメラ2は第1カメラ21と第2カメラ22で物体面を直上より撮影するように配置される。また、第1カメラ21と第2カメラ22は、対象体(物体面)に対する相対的なステレオカメラ2の標準的な移動方向MD(基準座標系の物体面に対する相対的な移動方向)と垂直、かつ、第1カメラ21と第2カメラ22の光軸と垂直な方向に離間して配置する。
【0016】
第1カメラ21、第2カメラ22は、画像の各行を画像中の行の並びの順に順次出力し、各行内の画素データを画像中の列の並びの順に順次出力することにより行う。すなわち、第1カメラ21、第2カメラ22は、ラスタスキャン状に画像の各画素データを出力する。
【0017】
標準的な移動方向MDと反対の方向を反相対的移動方向として、図2a、図2bの場合を含むいずれの適用においても、第1カメラ21、第2カメラ22は、個々の撮影画像について当該第1カメラ21、第2カメラ22が、より前に出力する行が表す対象体の部分が、対象体の、より反相対的移動方向側の部分となる向きで配置する。すなわち、第1カメラ21、第2カメラ22が最初に出力する行が、対象体の最も反相対的移動方向側の部分を表す撮影画像中の行となり、第1カメラ21、第2カメラ22が最後に出力する行が、対象体の最も移動方向MD側の部分を表す撮影画像中の行となる向きで配置する。
【0018】
このような第1カメラ21、第2カメラ22の一例として、以下では、第1カメラ21、第2カメラ22が、図3のように、上下方向を行の並び方向、左右方向を列の並び方向、移動方向MDを上方向、反相対的移動方向を下方向とする画像の、各行内の画素データを左から右に向かって順次出力し、各行を下から上に向かって順次出力することにより、左下から右上に向かうラスタスキャン状に撮影した画像の各画素データを出力するものとして説明を行う。
【0019】
このような向きで第1カメラ21、第2カメラ22を配置することにより、対象体に対してステレオカメラ2が移動方向MDに移動しているとき、第1カメラ21と第2カメラ22で撮影された動画は、対象体の像が上から下に向かって流れていく動画となる。
次に、計測装置1の被追尾領域設定部11と追尾処理部12によって行われる追尾動作について説明する。
計測装置1の計測動作の開始後、計測動作は、間欠的に繰り返し実行される。
ここで、図4aに示すように、計測動作の開始時点をt=1で表し、処理開始時点からn回目の計測動作実行時点をt=nで表すものとする。
また、t=nに第1カメラ21で撮影された画像をP(t=n)で表すものとする。
図4bに示すように、被追尾領域設定部11は、t=iの時点で、画像P(t=i)中に、被追尾領域A(t=i)を設定し、被追尾領域A(t=i)の左下の画素位置を基準点Ag(t=i)とする。この被追尾領域Aの設定動作については後述する。
被追尾領域設定部11が設定する被追尾領域A(t=i)は複数画素×複数画素の固定サイズ(図の例では3画素×3画素)である。
次に、追尾処理部12は、図4cに示すように、t=i+1の時点で、画像P(t=i)中の被追尾領域A(t=i)の像に類似する像が含まれる、画像P(t=i+1)中の領域を追尾結果領域B(t=i+1)として探索し、被追尾領域A(t=i)の左下の画素位置である基準点Ag(t=i)を始点とし、探索した追尾結果領域B(t=i+1)の左下の画素位置である基準点Bg(t=i+1)を終点とする画像空間上の移動ベクトルVP(t=i+1)を算定する。
【0020】
また、t=i+1の時点で、被追尾領域設定部11は、図4dに示すように、画像P(t=i+1)中に、被追尾領域A(t=i+1)の設定を行う。
次に、追尾処理部12は、図4eに示すように、t=i+2の時点で、画像P(t=i+1)中の被追尾領域A(t=i+1)の像に類似する像が含まれる、画像P(t=i+2)中の領域を追尾結果領域B(t=i+2)として探索し、被追尾領域A(t=i+1)の基準点Ag(t=i+1)を始点とし、探索した追尾結果領域B(t=i+2)の左下の画素位置である基準点Bg(t=i+2)を終点とする画像空間上の移動ベクトルVP(t=i+2)を算定する。
【0021】
以下同様に、各時点において、当該時点における追尾結果領域Bの探索、当該時点における移動ベクトルVPの算定、当該時点における被追尾領域Aの設定が繰り返し行われていく。
なお、iが1でない場合、図4bに示した時点t=iにおいても、被追尾領域A(t=i-1)を用いた追尾結果領域B(t=i)、移動ベクトルVP(t=i)の算定が行われる。
ここで、上述した被追尾領域Aの設定動作について説明する。
被追尾領域設定部11は、t=1の初回の被追尾領域A(t=1)については、第1カメラ21で撮影された画像中の予め定めた位置が基準点Ag(t=1)となるように被追尾領域A(t=1)を設定する。
次に、2回目以降の時点t=jの被追尾領域A(t=j)について、j=i+1、すなわち、図4dに示したt=i+1の場合を例にとり説明する。
t=i+1の時点では、次回のt=i+2の時点で探索される追尾結果領域B(t=i+2)の予測位置が、画像P(t=i+2)中の下端寄りの位置となるように被追尾領域A(t=i+1)を設定する。
具体的には、まず、t=i+2の時点で求まる移動ベクトルVP(t=i+2)を予測し、そのベクトルを予測移動ベクトルEVP(t=i+2)とする。
予測移動ベクトルEVP(t=i+2)は、t=i+1の時点で求めた移動ベクトルVP(t=i+1)を、方向、大きさはそのままで始点だけを移動し予測移動ベクトルEVP(t=i+2)としてもよい。または、t=i+1の時点で求めた、移動ベクトルVP(t=i+1)と前回の移動ベクトルVP(t=i)などから移動ベクトルVP(t=i+1)の加速度ベクトルを求め、求めた加速度ベクトルを移動ベクトルVP(t=i+1)に施して、予測移動ベクトルEVP(t=i+2)としてもよい。
【0022】
そして、予測移動ベクトルEVP(t=i+2)が表す移動量、移動した後の基準点Agの位置を基準点Agの予測位置EBg(t=i+2)として、基準点Agの予測位置EBg(t=i+2)が、図4f1に示す第1カメラ21の画像の下端寄りに予め設定した領域Q内の位置となるように、被追尾領域A(t=i+1)を設定する。そのような被追尾領域A(t=i+1)を複数設定可能である場合には、基準点Agの予測位置が最も下方の位置となるように被追尾領域A(t=i+1)を設定する。
【0023】
予測移動ベクトルEVP(t=i+2)が表す移動量、移動した後の基準点Agの予測位置EBg(t=i+2)が、領域Q内の位置となる領域が存在しなかった場合には、予測移動ベクトルEVP(t=i+2)が表す移動量、移動した後の基準点Agの予測位置EBg(t=i+2)が、できるだけ下方の位置となるように被追尾領域A(t=i+1)を設定する。
【0024】
ここで、t=i+1の時点で、t=i+2の時点で探索される追尾結果領域B(t=i+2)の予測位置が、画像P(t=i+2)中の下端寄り、かつ、左端寄りの位置となるように被追尾領域A(t=i+1)を設定してもよく、この場合には、領域Qは、図4f2に示すように第1カメラ21の画像の下端寄り、かつ、左端寄りの領域とする。
【0025】
次に、追尾処理部12が行う、2回目以降の時点t=jの追尾結果領域B(t=j)の探索動作について説明する。
追尾結果領域B(t=j)の探索は、画像P(t=j)中の、被追尾領域A(t=j-1)と同じサイズの異なる各領域を順次、相関算出領域CAとして、相関算出領域CAの像と被追尾領域A(t=j-1)の像との相関を算出する処理を、追尾結果領域B(t=j)の算定が成功するまで繰り返すことにより行う。追尾結果領域B(t=j)の算定は、1以上の相関算出領域CAについて算出した相関を用いて、所定のアルゴリズムに従って行う。
【0026】
相関を用いた追尾結果領域B(t=j)の算定に用いるアルゴリズムとしては、SSD(Sum of Squared Difference)法、SAD(Sum of Absolute Difference)法、NCC(Normalized Cross Correlation)法、ZNCC(Zero means Normalized Cross Correlation)法、POC(Phase-Only Correlation)法などの既知のアルゴリズムの算定法を用いることができる。
【0027】
画像P(t=j)中の被追尾領域A(t=j-1)と同じサイズの任意の領域は、当該領域内の画素データの全てが第1カメラ21から出力されしだい相関算出領域CAに設定され、相関が算出される。
したがって、第1カメラ21は、図3のように左下から右上に向かうラスタスキャン状に画像の各画素データを出力するカメラなので、画像P(t=j)中の相関算出領域CAに設定される領域は、図5に示すように遷移する。
すなわち、画像P(t=j)中の被追尾領域A(t=j-1)と同じサイズの領域のうち、図5aに示す左下角にある領域の右上角の画素の画素データまで第1カメラ21から出力されたら、この画像P(t=j)中の左下角にある領域が最初に相関算出領域CAとなる。
その後、1つの画素の画素データが第1カメラ21から出力されるたび、図5b、cに示すように、相関算出領域CAとなる領域が右に1画素(1列)ずつ移動していく。
そして、図5cのように相関算出領域CAの領域が、画像P(t=j)の右端まで達し、その後、第1カメラ21から相関算出領域CAの列数分の画素データが出力されると、図5dに示すように、相関算出領域CAとなる領域は画像P(t=j)中の最も左端の、前回相関算出領域CAとなった領域よりも1画素上(1行上)の領域となる。その後、1つの画素の画素データが第1カメラ21から出力されるたび、図5e、fに示すように、相関算出領域CAとなる領域が右に1画素(1列)ずつ移動していく。
【0028】
以下、同様に相関算出領域CAとなる領域は移動し、結果、図5に示すように、相関算出領域CAとなる領域は、画像P(t=j)中を左下から右上に向かうラスタスキャン状に移動する。
よって、画像P(t=j)中の、より下方の領域ほど、より速やかに被追尾領域A(t=j-1)との相関が算出される。また、上下方向の位置が同じ場合は、より左方の領域ほど、より速やかに被追尾領域A(t=j-1)との相関が算出される。
そして、第1カメラ21は、対象体に対して第1カメラ21が標準的な移動方向MDに移動しているとき、対象体の像が上から下に向かって流れる動画を撮影する向きで配置されているので、探索すべき追尾結果領域B(t=j)は、第1カメラ21の撮影画像の下寄りの位置にある蓋然性が大きい。
【0029】
したがって、追尾結果領域B(t=j)の探索を、より速やかに少ない処理量で行えることが期待できる。
さらに、被追尾領域設定部11において、t=jの時点で探索される追尾結果領域B(t=j)の予測位置が、画像P(t=j)中の下端寄りの位置となるように被追尾領域A(t=j-1)を設定しているので、探索すべき追尾結果領域B(t=j)の位置が第1カメラ21の撮影画像の充分に下方の位置となる確率をより高めることができ、追尾結果領域B(t=j)の探索を、速やかに少ない処理量で行えることの確実性が高められる。
【0030】
また、被追尾領域設定部11において、t=jの時点で探索される追尾結果領域B(t=j)の予測位置が、画像P(t=j)中の下端寄り、かつ、左端寄りの位置となるように被追尾領域A(t=j-1)を設定した場合には、さらに、探索すべき追尾結果領域B(t=j)の位置が第1カメラ21の撮影画像の左方の位置となる確率をより高めることができ、追尾結果領域B(t=j)の探索を、より速やかに少ない処理量で行えることが期待できる。
【0031】
相関を用いた追尾結果領域B(t=j)の算定法としてSAD法を用いる場合には、画像P(t=j)中の相関算出領域CAの像と、被追尾領域A(t=j-1)の像との相関を、たとえば、被追尾領域A(t=j-1)の各位置について求めた、被追尾領域A(t=j-1)と相関算出領域CAの領域中の位置が同じ画素の画素データ間の差分の絶対値の総和として求め、求めた総和が、所定のレベルより小さい相関算出領域CAを追尾結果領域B(t=j)とする。
【0032】
このように画素データの差分の総和を相関として求める場合、第1カメラ21から出力される画像P(t=j)の画素データを記憶しておき、各相関算出領域CAの各画素の画素データと被追尾領域A(t=j-1)の画素の画素データとの差分の絶対値、およびその総和を、その相関算出領域CAが設定されたとき(その相関算出領域CAの画素データの全てが第1カメラ21から出力されたとき)に算出してもよいが、相関算出領域CAの右上角の画素以外の各画素の画素データと被追尾領域A(t=j-1)の右上角の画素以外の各画素の画素データとの差分の絶対値を、その相関算出領域CAが設定される前に、事前に算出しておくようにしてもよい。そして、その相関算出領域CAが設定されたときに、相関算出領域CAの右上角の画素の画素データの被追尾領域A(t=j-1)の右上角の画素の画素データとの差分の絶対値を求め、求めた差分の絶対値と、それまでに他の各画素について事前に算出しておいた差分の絶対値との総和を相関として求めてよい。
【0033】
このような差分の絶対値の事前算出は第1カメラ21からの画素データの出力毎に次のように行うことができる。
すなわち、図6aに示す画像P(t=j)の画素pxを右上角の画素以外の画素として含む相関算出領域CAとして設定され得る領域のそれぞれを画素pxに対する仮想相関算出領域VCAとすると、画素pxに対する仮想相関算出領域VCAは、図6b1からb8の8つの仮想相関算出領域VCAとなる。
【0034】
そこで、第1カメラ21から画素pxの画素データが出力されたならば、8つの仮想相関算出領域VCAのそれぞれについて、仮想相関算出領域VCA中の画素pxの位置と被追尾領域A(t=j-1)中の位置が同じ被追尾領域A(t=j-1)の画素データと、画素pxの画素データとの差分の絶対値dpxを算出しておく。
【0035】
そして、相関算出領域CAが設定されたときに、その相関算出領域CAに設定された仮想相関算出領域VCAについて算出しておいた差分の絶対値dpxを、相関算出領域CAの画素pxの画素データと、画素pxと領域中の位置が同じ被追尾領域A(t=j-1)の画素の画素データの差分の絶対値として用い相関の算出を行ってよい。
【0036】
なお、dpxは絶対値化せずに差分を表すものとし、総和を求めるときに絶対値化してもよいし、逆に可能な範囲で絶対値dpxの総和の算出を進めてもよい。
次に、相関算出領域CAと被追尾領域A(t=j-1)の相関として、被追尾領域A(t=j-1)の各行と、相関算出領域CAの領域中の位置が同じ行との相関関数をPOC法などを用いて算出し、1以上の被追尾領域A(t=j-1)について算出した各行の相関関数を考慮した追尾結果領域B(t=j)の算定を行う場合にも、各相関算出領域CAの最も上の行以外の各行と、被追尾領域A(t=j-1)の最も上の行以外の各行との相関関数を、その相関算出領域CAが設定される前に、事前に算出しておくようにしてよい。そして、その相関算出領域CAが設定されたときに、相関算出領域CAの最も上の行と被追尾領域A(t=j-1)の最も上の行との相関関数を求め、求めた相関関数と、それまでに他の各行について事前に算出しておいた相関関数とにより、相関算出領域CAと被追尾領域A(t=j-1)の相関を求めてよい。
【0037】
このような相関関数の事前の算出は第1カメラ21からの画素データの出力毎に次のように行うことができる。
図7aに示す画像P(t=j)の、被追尾領域Aの行と同サイズの行plを最も上の行以外の行として含む相関算出領域CAとして設定され得る領域のそれぞれを行plに対する仮想相関算出領域をLVCAとすると、行plに対する仮想相関算出領域LVCAは、図7b1、b2の2つの仮想相関算出領域LVCAとなる。
【0038】
そこで、第1カメラ21から行plの全ての画素データが出力されたならば、2つの仮想相関算出領域LVCAのそれぞれについて、仮想相関算出領域LVCA中の行plの位置と領域中の位置が同じ被追尾領域A(t=j-1)の行と、行plとの相関関数cplを算出しておく。
そして、相関算出領域CAが設定されたときに、その相関算出領域CAに設定された仮想相関算出領域LVCAについて算出しておいた相関関数cplを、相関算出領域CAの最も上の行plと、行plと領域中の位置が同じ被追尾領域A(t=j-1)の最も上の行との相関関数と共に、相関の算定に用いる。
【0039】
次に、計測装置1の離間距離計測部13と実距離変換係数算出部15が行う実距離変換係数の算出動作について説明する。
離間距離計測部13は、t=1の時点において、被追尾領域A(t=1)の中心に映り込んだ対象体上の位置の、ステレオカメラ2を構成する第1カメラ21、第2カメラ22からの光軸方向の距離ZA(t=1)を算出する。また、t=i+1の各時点において、被追尾領域A(t=i+1)の中心に映り込んだ対象体上の位置の第1カメラ21、第2カメラ22からの光軸方向の距離ZA(t=i+1)と、追尾結果領域B(t=i+1)の中心に映り込んだ対象体上の位置の第1カメラ21、第2カメラ22からの光軸方向の距離ZB(t=i+1)を算出する。
【0040】
対象体上の位置の第1カメラ21、第2カメラ22からの光軸方向の距離Zは次のように求めることができる。
いま、図8に示すように、F[mm]をステレオカメラ2の第1カメラ21と第2カメラ22の焦点距離とし、M[mm]を第1カメラ21と第2カメラ22間の実空間上の距離である基線長とする。また、距離Zを計測する対象体上の位置をTgとし、c1を第1カメラ21で位置Tgが撮影された画像空間上の左右方向の位置とし、c2を第2カメラ22で位置Tgが撮影された画像空間上の左右方向の位置とする。また、c11を、第1カメラ21から光軸方向に焦点距離F離れた面SF上のc1に対応する位置とし、c21を、第2カメラ22から光軸方向に焦点距離F離れた面SF上のc2に対応する位置とする。
【0041】
また、xl[mm]を第1カメラ21の中央位置からc11までの左右方向の距離とし、xr[mm]を第2カメラ22の中央位置からc21までの左右方向の距離とする。
そして、p=xl-xrとすると、三角測量の原理に従い、位置Tgの距離Z[mm]は、
Z=(M×F)/p
によって求まる。
第1カメラ21の1画素に投影される、第1カメラ21から焦点距離F離れた面上の領域のサイズをS(mm/pixel)とすると、第1カメラ21の画像空間上で座標が1変化すると、距離Zと垂直な方向についてTgの位置は(Z/F)×S変化する。
そこで、この関係を用いて、実距離変換係数算出部15は、t=i+1の各時点において、離間距離計測部13が計測したZA(t=i)とZB(t=i+1)から、実距離変換係数K(t=i+1)を算出する。
実距離変換係数K(t=i+1)は、近似的なZ(t=i+1)をZA(t=i)とZB(t=i+1)の平均値{ZA(t=i)+ZB(t=i+1)}/2とし、
K(t=i+1)={Z(t=i+1)/F}×S
によって求める。
【0042】
次に、計測装置1の移動ベクトル算定部14は、t=i+1の各時点において、画像空間上の移動ベクトルVP(t=i+1)と、実距離変換係数算出部15が算出した実距離変換係数K(t=i+1)を用いて、対象体のステレオカメラ2に対する相対的な移動ベクトルV(t=i+1)を、
V(t=i+1)=K(t=i+1)×VP(t=i+1)により算出する。
【0043】
そして、計測装置1の移動状態算定部16は、t=i+1の各時点において移動ベクトル算定部14が算定した対象体のステレオカメラ2に対する相対的な移動ベクトルV(t=i+1)から、対象体の相対的な移動速度、加速度、移動方向などの各種移動状態を算定し出力する。また、移動状態算定部16は、さらに、離間距離計測部13が算定した画像内の複数の距離から、対象体の相対的な角度等も移動状態として算定し出力してもよい。
【0044】
以上、本発明の実施形態について説明した。
以上の実施形態では、第1カメラ21で撮影した画像のみを用いて移動ベクトルVPを算出したが、第2カメラ22が撮影した画像で、同様の追尾処理を行って移動ベクトルVPを算出してもよい。このとき、第2カメラ22を、より前に出力する行が表す対象体の部分が、対象体の、より移動方向MD側の部分となる向きに配置し、対象体に対してステレオカメラ2が移動方向MDと反対方向の反相対的移動方向に移動しているときに、第2カメラ22で撮影される動画を、対象体の像が上から下に向かって流れていく動画にする。
【0045】
この場合、計測装置1の移動ベクトル算定部14は、各測定時点において、第1カメラ21の撮影した画像から算定される移動ベクトルVPと、第2カメラ22の撮影した画像から算定される移動ベクトルVPのうちの、より先に算定された移動ベクトルVPから対象体のステレオカメラ2に対する相対的な移動ベクトルVを算定する。
【0046】
また、実距離変換係数算出部15は、第2カメラ22が撮影した画像を、第2カメラ22が第1カメラと同じ方向を向いている場合に撮影される画像に座標変換した上で、上述した処理によって実距離変換係数Kの算出を行う。
このようにすることで、対象体に対してステレオカメラ2が移動方向MDと反対方向に相対的に移動しているときでも、移動ベクトルVの算出を、より速やかに少ない処理量で行えることが期待できる。
実施形態において離間距離計測部13によりステレオカメラ2を用いて算出した距離ZA(t=i)、距離ZB(t=i+1)は、レーザ距離計などの他の装置を用いて算出してもよい。
また、第1カメラ21と第2カメラ22が出力する画素データは、FIFO(First In First Out)形式のバッファメモリを介して計測装置1に入力されるものであってもよい。
また、実施形態における第1カメラ21と第2カメラ22の役割は交換してもよい。
【符号の説明】
【0047】
1…計測装置、2…ステレオカメラ、11…被追尾領域設定部、12…追尾処理部、13…離間距離計測部、14…移動ベクトル算定部、15…実距離変換係数算出部、16…移動状態算定部、21…第1カメラ、22…第2カメラ。
図1
図2
図3
図4
図5
図6
図7
図8