(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023057441
(43)【公開日】2023-04-21
(54)【発明の名称】形状算出システム、形状算出装置、形状算出プログラム、形状算出方法、およびマーカー構造
(51)【国際特許分類】
G01B 11/24 20060101AFI20230414BHJP
【FI】
G01B11/24 K
【審査請求】未請求
【請求項の数】24
【出願形態】OL
(21)【出願番号】P 2021166974
(22)【出願日】2021-10-11
(71)【出願人】
【識別番号】504180239
【氏名又は名称】国立大学法人信州大学
(71)【出願人】
【識別番号】000210964
【氏名又は名称】中央電子株式会社
(74)【代理人】
【識別番号】100166051
【弁理士】
【氏名又は名称】駒津 啓佑
(72)【発明者】
【氏名】梅舘 拓也
(72)【発明者】
【氏名】花岡 航平
【テーマコード(参考)】
2F065
【Fターム(参考)】
2F065AA04
2F065AA53
2F065BB28
2F065FF04
2F065QQ04
2F065QQ21
2F065QQ28
(57)【要約】
【課題】 推定できる対象物の形状が限定されない形状算出システム、形状算出装置、形状算出プログラム、形状算出方法、およびマーカー構造を提供することを目的とする。
【解決手段】 多色マーカー100で、取付面が対象物に取り付けられ、取付面が取り付けられた位置が特定点によって特定され、少なくとも3面の平面体を互いに識別する識別色で着色された着色領域が設けられた多色平面体が、撮像手段300によって撮像される方向に向けられる範囲で平面体が互いに異なる方向に向けられて配置され、柔軟曲面形状算出装置400で、撮像手段300が撮像した画像情報から、多色マーカー100の姿勢を多色マーカー姿勢算出手段420が算出し、撮像手段300から多色マーカー100までの位置ベクトルを多色マーカー位置ベクトル算出手段430が算出する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
撮像手段が撮像した対象物の形状を推定する形状算出システムにおいて、
前記対象物に取り付けられる取付面と、前記取付面が取り付けられた位置を特定するための特定点と、少なくとも3面の平面体を互いに識別する識別色で着色された着色領域が設けられ、前記撮像手段によって撮像される方向に向けられる範囲で前記平面体が互いに異なる方向に向けられて配置された多色平面体と、を具備する多色マーカーと、
前記撮像手段が撮像した画像情報から、前記多色マーカーの姿勢を算出する多色マーカー姿勢算出手段と、前記撮像手段から前記多色マーカーまでの位置ベクトルを算出する多色マーカー位置ベクトル算出手段と、を具備する形状算出装置と、
を備えることを特徴とする形状算出システム。
【請求項2】
前記多色マーカー位置ベクトル算出手段は、
前記撮像手段が撮像した画像情報から前記多色マーカーが取り付けられた方向ベクトルを算出する多色マーカー方向ベクトル算出手段と
前記対象物に前記多色マーカーが取り付けられた領域の一部に取り付けられる姿勢および位置ベクトルが算出可能な二次元コードからなる基準マーカー、または前記多色マーカーのうち姿勢および位置ベクトルが算出されているものを、前記多色マーカーの位置ベクトルを算出するために基準とする算出基準マーカーとして、前記算出基準マーカーの姿勢および位置ベクトルと前記算出基準マーカーに近接する多色マーカーである近接多色マーカーの方向ベクトルとに基づいて、前記近接多色マーカーの位置ベクトルを算出する近接多色マーカー位置ベクトル算出手段と、
を備えることを特徴とする請求項1記載の形状算出システム。
【請求項3】
前記特定点は、
前記少なくとも3面の平面体が取り付けられた位置から算出可能な位置である算出可能特定点であること、
を特徴とする請求項2記載の形状算出システム。
【請求項4】
前記多色マーカー方向ベクトル算出手段は、
前記多色マーカーにおける前記算出可能特定点の位置を前記画像情報から算出する多色マーカー特定点抽出処理部を備えること、
を特徴とする請求項3記載の形状算出システム。
【請求項5】
前記平面体は少なくとも1つの頂点を有しており、
前記算出可能特定点は、
前記平面体が有する頂点のうち任意の前記頂点が1つの点で交わるように配置された交点であること、
を特徴とする請求項4記載の形状算出システム。
【請求項6】
前記多色マーカー特定点抽出処理部は、
前記画像情報から前記識別色を検出する識別色検出部と、
前記識別色検出部が検出した識別色を二値化した二値化画像を識別色毎に作成する識別色二値化処理部と、
前記識別色二値化処理部が作成したそれぞれの前記二値化画像における識別色部分を膨張させた膨張二値化画像を識別色毎に作成する二値化画像膨張処理部と、
前記二値化画像膨張処理部が作成した前記膨張二値化画像を、前記交点を介して隣接する前記平面体における識別色部分同士を組み合わせた論理積の演算処理をした膨張二値化論理積画像を作成する膨張二値化画像論理演算処理部と、
前記膨張二値化画像論理演算処理部が作成した前記膨張二値化論理積画像の論理積の演算処理することで前記交点を抽出する交点抽出処理部と、
を備えることを特徴とする請求項5記載の形状算出システム。
【請求項7】
前記交点抽出処理部が交点を抽出する前に、前記膨張二値化画像論理演算処理部が膨張二値化論理積画像における論理積部分を膨張させた膨張二値化論理積膨張画像を作成する膨張二値化論理積画像膨張処理部、
を備えることを特徴とする請求項6記載の形状算出システム。
【請求項8】
前記多色マーカー特定点抽出処理部は、
前記画像情報から前記識別色を検出する識別色検出部と、
前記識別色検出部が検出した識別色部分から、近接する着色領域を抽出する近接着色領域抽出部と、
前記近接着色領域抽出部が抽出した近接着色領域が有する頂点から前記特定点を抽出する特定点抽出処理部と、
を備えることを特徴とする請求項4記載の形状算出システム。
【請求項9】
前記近接多色マーカー位置ベクトル算出手段は、
前記算出基準マーカーが取り付けられた前記対象物における表層面の曲率と、前記近接多色マーカーが取り付けられた前記対象物における表層面の曲率とが一致または近似することを条件として前記近接多色マーカーの位置ベクトルを算出する近接多色マーカー位置ベクトル算出部、
を備えることを特徴とする請求項2記載の形状算出システム。
【請求項10】
前記近接多色マーカー位置ベクトル算出部は、
前記近接多色マーカーの姿勢を面状に拡大した面である近接多色マーカー姿勢面を算出する近接多色マーカー姿勢面算出部と、
前記算出基準マーカーの位置で前記算出基準マーカーの姿勢を面状に拡大した面である算出基準マーカー姿勢面を算出する算出基準マーカー姿勢面算出部と、
前記多色マーカー方向ベクトル算出手段が算出した前記多色マーカーの方向ベクトル上で前記近接多色マーカー姿勢面を移動させる近接多色マーカー姿勢面移動部と、
前記近接多色マーカー姿勢面移動部が前記近接多色マーカー姿勢面を移動させて前記算出基準マーカー姿勢面と接するときに発生する交線を算出する交線算出部と、
前記特定点と前記交線とを結ぶ最小値である近接多色マーカー交線最小値と、前記算出基準マーカーの中心点から前記交線までの最小値である算出基準マーカー交線最小値と、を算出する交線最小値算出部と、
前記近接多色マーカー交線最小値と算出基準マーカー交線最小値とが等しくなるような前記近接多色マーカー姿勢面の位置を算出する等値算出部と、
前記等値算出部が算出した前記近接多色マーカー交線最小値と算出基準マーカー交線最小値とが等しくなるような前記近接多色マーカー姿勢面の位置に基づいて、前記近接多色マーカーの位置ベクトルを特定する近接多色マーカー位置ベクトル特定部と、
を備えることを特徴とする請求項9記載の形状算出システム。
【請求項11】
前記多色マーカーは、
三角平面体で形成されること、
を特徴とする請求項1記載の形状算出システム。
【請求項12】
前記三角平面体は、
隣接する前記三角平面体の側辺同士が接するように配置されること、
を特徴とする請求項11記載の形状算出システム。
【請求項13】
前記着色領域は、
前記三角平面体の全域に設けられていること
を特徴とする請求項12記載の形状算出システム。
【請求項14】
前記多色マーカーは、
矩形平面体で形成されること、
を特徴とする請求項1記載の形状算出システム。
【請求項15】
前記矩形平面体のうち隣り合う矩形平面体の側辺同士に高低差が設けられたこと
を特徴とする請求項14記載の形状算出システム。
【請求項16】
前記撮像手段が前記多色マーカーを撮像したときに、撮像手段が前記高低差によって撮像できなる部分である死角領域に前記識別色とは異なる異識別色領域が設けられること、
を特徴とする請求項15記載の形状算出システム。
【請求項17】
前記平面体が有する着色領域は、
すべて同じ面積であること、
を特徴とする請求項1記載の形状算出システム。
【請求項18】
前記特定点は、
前記取付面の中心部分に設けられること、
を特徴とする請求項1記載の形状算出システム。
【請求項19】
前記多色マーカー姿勢算出手段は、
前記画像情報に映し出された前記識別色の着色領域の面積比率に基づいて前記多色マーカーの姿勢を算出すること、
を特徴とする請求項1記載の形状算出システム。
【請求項20】
前記対象物に複数取り付けられる前記多色マーカーは、
前記着色領域に着色された識別色が隣接しないように配置されたこと、
を特徴とする請求項1記載の形状算出システム。
【請求項21】
対象物に取り付けられる取付面と、前記取付面が取り付けられた位置を特定するための特定点と、少なくとも3面の平面体を互いに識別する識別色で着色された着色領域が設けられ、撮像手段によって撮像される方向に向けられる範囲で前記平面体が互いに異なる方向に向けられて配置された多色平面体と、を具備した多色マーカーを撮像手段が撮像した画像情報から、前記対象物の形状を推定する形状算出装置において、
前記撮像手段が撮像した画像情報から、前記多色マーカーの姿勢を算出する多色マーカー姿勢算出手段と、
前記撮像手段から前記多色マーカーまでの位置ベクトルを算出する多色マーカー位置ベクトル算出手段と、
を備えることを特徴とする形状算出装置。
【請求項22】
対象物に取り付けられる取付面と、前記取付面が取り付けられた位置を特定するための特定点と、少なくとも3面の平面体を互いに識別する識別色で着色された着色領域が設けられ、撮像手段によって撮像される方向に向けられる範囲で前記平面体が互いに異なる方向に向けられて配置された多色平面体と、を具備した多色マーカーを撮像手段が撮像した画像情報から、前記対象物の形状を推定する形状算出プログラムにおいて、
コンピュータを、
前記撮像手段が撮像した画像情報から、前記多色マーカーの姿勢を算出する多色マーカー姿勢算出手段、
前記撮像手段から前記多色マーカーまでの位置ベクトルを算出する多色マーカー位置ベクトル算出手段、
として機能させることを特徴とする形状算出プログラム。
【請求項23】
撮像手段が撮像した対象物の形状を推定する形状算出方法において、
前記対象物に取り付けられる取付面と、前記取付面が取り付けられた位置を特定するための特定点と、少なくとも3面の平面体を互いに識別する識別色で着色された着色領域が設けられ、前記撮像手段によって撮像される方向に向けられる範囲で前記平面体が互いに異なる方向に向けられて配置された多色平面体と、を具備する多色マーカーが、前記対象物に取り付けられる工程と、
形状算出装置で、前記撮像手段が撮像した画像情報から、前記多色マーカーの姿勢を多色マーカー姿勢算出手段が算出し、前記撮像手段から前記多色マーカーまでの位置ベクトルを多色マーカー位置ベクトル算出手段が算出する工程と、
を備えることを特徴とする形状算出方法。
【請求項24】
対象物に取り付けられる取付面と、互いに識別する識別色で着色された着色領域と、が設けられた多色マーカーと、前記多色マーカーを撮像する撮像手段と、前記撮像手段が撮像した画像情報から、前記多色マーカーの姿勢を算出する多色マーカー姿勢算出手段と、前記撮像手段から前記多色マーカーまでの位置ベクトルを算出する多色マーカー位置ベクトル算出手段と、を具備する形状算出装置と、を備える形状算出システムにおける前記多色マーカーのマーカー構造において、
前記取付面が取り付けられた位置を特定するための特定点と、
少なくとも3面の平面体が前記撮像手段によって撮像される方向に向けられる範囲で前記平面体が互いに異なる方向に向けられて配置された多色平面体と、
を備えることを特徴とするマーカー構造。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、形状算出システム、形状算出装置、形状算出プログラム、形状算出方法、およびマーカー構造に関し、特に撮像手段が撮像した対象物の形状を推定する形状算出システム、形状算出装置、形状算出プログラム、形状算出方法、およびマーカー構造に関する。
【背景技術】
【0002】
従来から、3次元の目的物の各部位に取り付けられたマーカーをカメラなどの撮像手段を用いて撮像することで、マーカーの所定の座標系に対する位置と方向とを算出する装置が知られている(たとえば、特許文献1で参照)。
【0003】
具体的に、特許文献1では、二次元パターンコードと、中心軸周り180度の範囲にわたる側面に模様が付された透明円柱体からなり、二次元パターンコードと同一平面上において互いに直交するよう設けられた少なくとも二つの姿勢反転検知パターンを備えたマーカーが開示されている。
【0004】
特許文献1で開示されたマーカーでは、二次元パターンコードに加え、視線角度を検知することでマーカーの姿勢を推定できる二つの姿勢反転検知パターンを二次元パターンコードと同一平面上において互いに直交するように備えているため、より広い角度範囲でマーカーの姿勢を推定することができる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】国際公開第2020/036150号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかし、特許文献1で開示されたマーカーでは、たとえばカエルやヘビの表層面のように柔らかく形状が変形する柔軟曲面、あるいは複雑に曲がった曲面の形状や動きを推定することができないなど、推定できる対象物の形状が限定されてしまう問題があった。
【0007】
特許文献1で開示されたマーカーは、視線角度を検知するための二つの姿勢反転検知パターンを備えることで、より広い角度範囲でマーカーの姿勢を推定することができるが、姿勢反転検知パターンは透明円柱体からなるため、透明円柱体が同一平面上において互いに直交するよう設けられたマーカーを柔軟曲面に安定的に取り付けることは困難である。このため、柔軟曲面の形状や動きを推定することは難しい。
【0008】
具体的に、二次元パターンコードは平面であるが、透明円柱体は立体的な構造をしている。このため、特許文献1で開示されたマーカーと姿勢を検知する対象物との間には凹凸が生じることになる。
【0009】
柔軟曲面の形状や動きを推定するためには、マーカーを柔軟曲面に密着させることが望ましいが、特許文献1で開示されたマーカーは、マーカーと姿勢を検知する対象物との間に生じる凹凸によって、マーカーを正確に柔軟曲面に密着させることは難しい。つまり柔軟曲面の形状や動きを正確に推定することはできない。
【0010】
たとえ特許文献1で開示されたマーカーを柔軟曲面に正確に取り付けられたとしても、柔軟曲面が動くことで、凹凸面が柔軟曲面から離脱してしまう恐れがある。このため柔軟曲面の形状や動きを特許文献1で開示されたマーカーで推定することは困難である。
【0011】
また、柔軟曲面だけでなく曲面形状の物体や、ソフトロボットの曲げ・圧縮変形など、形状を推定したい対象物は、その対象物の表面の各点で様々な方向を向いているため、その対象物の形状を推定するためには、対象物の多くの表面にマーカーを取り付けて、その形状や動きを推定することが望ましい。
【0012】
しかし、特許文献1で開示されたマーカーは、二次元パターンコードだけでなく、その二次元パターンコードの同一平面上において互いに直交するように姿勢反転検知パターンをそなえているため、二次元パターンコードのみよりもマーカー自体の大きさが大きくなってしまう。つまり、対象物の多くの表面に取り付けられる数量を制限してしまう問題がある。
【0013】
そこで、二次元パターンコードと姿勢反転検知パターンとを小さくすることで、対象物の多くの表面に取り付けられる数量を増加させることも考えられるが、二次元パターンコードや姿勢反転検知パターンを小さくすることで、マーカーの姿勢を検出する精度が低下してしまう問題が生じる。
【0014】
本発明はこのような点に鑑みてなされたものであり、推定できる対象物の形状が限定されない形状算出システム、形状算出装置、形状算出プログラム、形状算出方法、およびマーカー構造を提供することを目的とする。
【課題を解決するための手段】
【0015】
本発明では上記問題を解決するために、撮像手段が撮像した対象物の形状を推定する形状算出システムにおいて、前記対象物に取り付けられる取付面と、前記取付面が取り付けられた位置を特定するための特定点と、少なくとも3面の平面体を互いに識別する識別色で着色された着色領域が設けられ、前記撮像手段によって撮像される方向に向けられる範囲で前記平面体が互いに異なる方向に向けられて配置された多色平面体と、を具備する多色マーカーと、前記撮像手段が撮像した画像情報から、前記多色マーカーの姿勢を算出する多色マーカー姿勢算出手段と、前記撮像手段から前記多色マーカーまでの位置ベクトルを算出する多色マーカー位置ベクトル算出手段と、を具備する形状算出装置とを備えることを特徴とする形状算出システムが提供される。
【0016】
これにより、多色マーカーで、取付面が対象物に取り付けられ、取付面が取り付けられた位置が特定点によって特定され、少なくとも3面の平面体を互いに識別する識別色で着色された着色領域が設けられた多色平面体が、撮像手段によって撮像される方向に向けられる範囲で平面体が互いに異なる方向に向けられて配置され、形状算出装置で、撮像手段が撮像した画像情報から、多色マーカーの姿勢を多色マーカー姿勢算出手段が算出し、撮像手段から多色マーカーまでの位置ベクトルを多色マーカー位置ベクトル算出手段が算出する。
【0017】
また、本発明では、対象物に取り付けられる取付面と、前記取付面が取り付けられた位置を特定するための特定点と、少なくとも3面の平面体を互いに識別する識別色で着色された着色領域が設けられ、撮像手段によって撮像される方向に向けられる範囲で前記平面体が互いに異なる方向に向けられて配置された多色平面体と、を具備した多色マーカーを撮像手段が撮像した画像情報から、前記対象物の形状を推定する形状算出装置において、前記撮像手段が撮像した画像情報から、前記多色マーカーの姿勢を算出する多色マーカー姿勢算出手段と、前記撮像手段から前記多色マーカーまでの位置ベクトルを算出する多色マーカー位置ベクトル算出手段とを備えることを特徴とする形状算出装置が提供される。
【0018】
これにより、撮像手段が撮像した画像情報から、多色マーカーの姿勢を多色マーカー姿勢算出手段が算出し、撮像手段から多色マーカーまでの位置ベクトルを多色マーカー位置ベクトル算出手段が算出する。
【0019】
また、本発明では、対象物に取り付けられる取付面と、前記取付面が取り付けられた位置を特定するための特定点と、少なくとも3面の平面体を互いに識別する識別色で着色された着色領域が設けられ、撮像手段によって撮像される方向に向けられる範囲で前記平面体が互いに異なる方向に向けられて配置された多色平面体と、を具備した多色マーカーを撮像手段が撮像した画像情報から、前記対象物の形状を推定する形状算出プログラムにおいて、コンピュータを、前記撮像手段が撮像した画像情報から、前記多色マーカーの姿勢を算出する多色マーカー姿勢算出手段、前記撮像手段から前記多色マーカーまでの位置ベクトルを算出する多色マーカー位置ベクトル算出手段として機能させることを特徴とする形状算出プログラムが提供される。
【0020】
これにより、撮像手段が撮像した画像情報から、多色マーカーの姿勢を多色マーカー姿勢算出手段が算出し、撮像手段から多色マーカーまでの位置ベクトルを多色マーカー位置ベクトル算出手段が算出する。
【0021】
また、本発明では、撮像手段が撮像した対象物の形状を推定する形状算出方法において、前記対象物に取り付けられる取付面と、前記取付面が取り付けられた位置を特定するための特定点と、少なくとも3面の平面体を互いに識別する識別色で着色された着色領域が設けられ、前記撮像手段によって撮像される方向に向けられる範囲で前記平面体が互いに異なる方向に向けられて配置された多色平面体と、を具備する多色マーカーが、前記対象物に取り付けられる工程と、形状算出装置で、前記撮像手段が撮像した画像情報から、前記多色マーカーの姿勢を多色マーカー姿勢算出手段が算出し、前記撮像手段から前記多色マーカーまでの位置ベクトルを多色マーカー位置ベクトル算出手段が算出する工程とを備えることを特徴とする形状算出方法が提供される。
【0022】
これにより、多色マーカーで、取付面が対象物に取り付けられ、取付面が取り付けられた位置が特定点によって特定され、少なくとも3面の平面体を互いに識別する識別色で着色された着色領域が設けられた多色平面体が、撮像手段によって撮像される方向に向けられる範囲で平面体が互いに異なる方向に向けられて配置され、形状算出装置で、撮像手段が撮像した画像情報から、多色マーカーの姿勢を多色マーカー姿勢算出手段が算出し、撮像手段から多色マーカーまでの位置ベクトルを多色マーカー位置ベクトル算出手段が算出する。
【0023】
また、本発明では、対象物に取り付けられる取付面と、互いに識別する識別色で着色された着色領域と、が設けられた多色マーカーと、前記多色マーカーを撮像する撮像手段と、前記撮像手段が撮像した画像情報から、前記多色マーカーの姿勢を算出する多色マーカー姿勢算出手段と、前記撮像手段から前記多色マーカーまでの位置ベクトルを算出する多色マーカー位置ベクトル算出手段と、を具備する形状算出装置と、を備える形状算出システムにおける前記多色マーカーのマーカー構造において、前記取付面が取り付けられた位置を特定するための特定点と、少なくとも3面の平面体が前記撮像手段によって撮像される方向に向けられる範囲で前記平面体が互いに異なる方向に向けられて配置された多色平面体とを備えることを特徴とするマーカー構造が提供される。
【0024】
これにより、取付面が取り付けられた位置が特定点によって特定され、多色平面体が、少なくとも3面の平面体が撮像手段によって撮像される方向に向けられる範囲で平面体が互いに異なる方向に向けられて配置される。
【発明の効果】
【0025】
本発明の形状算出システム、形状算出装置、形状算出プログラム、形状算出方法、およびマーカー構造によれば、多色マーカーで、取付面が対象物に取り付けられ、取付面が取り付けられた位置が特定点によって特定され、少なくとも3面の平面体を互いに識別する識別色で着色された着色領域が設けられた多色平面体が、撮像手段によって撮像される方向に向けられる範囲で平面体が互いに異なる方向に向けられて配置され、形状算出装置で、撮像手段が撮像した画像情報から、多色マーカーの姿勢を多色マーカー姿勢算出手段が算出し、撮像手段から多色マーカーまでの位置ベクトルを多色マーカー位置ベクトル算出手段が算出するので、多色マーカーの姿勢と位置ベクトルとが数値化される。これにより柔軟曲面などの形状も正確に視覚化することができるので、推定できる対象物の形状が限定されることがない。
【図面の簡単な説明】
【0026】
【
図1】第1の実施の形態に係る柔軟曲面形状算出システム全体を示すブロック図である。
【
図2】第1の実施の形態の多色マーカーの詳細を示す斜視図である。
【
図3】第1の実施の形態の多色マーカーが、姿勢によって各三角平面体を撮像手段が撮像する撮像面積が変化する様子を示す図である。
【
図4】第1の実施の形態の多色マーカーにおける他の実施の形態を示す斜視図である。
【
図6】第1の実施の形態の多色マーカー方向ベクトル算出手段の詳細を示すブロック図である。
【
図7】撮像手段が撮像した画像情報を多色マーカー方向ベクトル算出手段が受け付けてから多色マーカーの方向ベクトルを算出するまでの処理を示すフローチャートである。
【
図8】柔軟曲面Fに多色マーカーを取り付けた状態を撮像手段が撮像した画像情報、二値化画像、および膨張二値化画像の一例を示す図である。
【
図9】二値化画像膨張処理部が処理したすべての膨張二値化画像の一例を示す図である。
【
図10】膨張二値化画像論理演算処理部が処理したすべての膨張二値化論理積画像の一例を示す図である。
【
図11】膨張二値化論理積膨張画像および交点画像の一例を示す図である。
【
図12】方向ベクトル算出処理部が任意の多色マーカーの方向ベクトルを算出する処理例を示す図である。
【
図13】位置ベクトルを座標系で示す際に必要な角度を方向ベクトル算出処理部が算出する処理の一例を示す垂直断面図である。
【
図14】多色マーカー方向ベクトル算出手段が行う処理によって算出することによって得られた多色マーカーの方向ベクトルと、多色マーカー姿勢算出手段が行う処理によって得られた多色マーカーの姿勢とをあらわす参考図である。
【
図15】多色マーカー位置ベクトル算出手段の詳細を示すブロック図である。
【
図16】撮像手段が撮像した画像情報を多色マーカー位置ベクトル算出手段が受け付けてから多色マーカーの位置ベクトルを検出するまでの処理を示すフローチャートである。
【
図17】多色マーカー位置ベクトル算出部の詳細を示すブロック図である。
【
図18】位置ベクトルを算出するべき近接多色マーカーの情報と、算出基準マーカーの情報とを多色マーカー位置ベクトル算出部が受け付けてから多色マーカーの位置ベクトルを算出するまでの処理を示すフローチャートである。
【
図19】多色マーカー位置ベクトル算出部が行う処理を示す参考図である。
【
図20】第2の実施の形態の多色マーカーの詳細を示す斜視図である。
【
図21】連結材を介して多色マーカーおよび基準マーカーを連結させた状態を示す図である。
【
図22】第2の実施の形態の多色マーカー方向ベクトル算出手段の詳細を示すブロック図である。
【
図23】撮像手段が撮像した画像情報を多色マーカー方向ベクトル算出手段が受け付けてから多色マーカーの方向ベクトルを算出するまでの処理を示すフローチャートである。
【発明を実施するための形態】
【0027】
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
〔第1の実施の形態〕
図1は、第1の実施の形態に係る柔軟曲面形状算出システム全体を示すブロック図である。
【0028】
本実施の形態の柔軟曲面形状算出システム1000は、たとえばカエルやヘビの表層面のように変形する柔軟曲面Fの動きや、ソフトロボットの曲げ・圧縮変形を数値化することで、柔軟物の形状を可視化することができるシステムである。本実施の形態では、一例として柔軟曲面Fの動きを数値化する例で以下を説明する。
【0029】
図1に示すように柔軟曲面形状算出システム1000は、柔軟曲面Fに貼り付けられる複数の多色マーカー100、柔軟曲面Fに貼り付けられる少なくとも1つの基準マーカー200、多色マーカー100および基準マーカー200が取り付けられた柔軟曲面Fを撮像する少なくとも1つの撮像手段300、柔軟曲面Fの形状を算出する柔軟曲面形状算出装置400、および柔軟曲面Fの動きが数値化された情報を出力する出力手段500を備えている。
【0030】
まず柔軟曲面形状算出システム1000が柔軟曲面Fの形状を推定するまでの全体の流れを説明する。
多色マーカー100は、4つの三角形状をした平面である三角平面体を備えており、各三角平面体は識別可能な色で塗り分けられており、前面に向けられる範囲で互いに異なる方向に向けられた形状をしている。
【0031】
この多色マーカー100は、たとえば柔軟曲面Fの表面に複数貼り付けられる。また複数の多色マーカー100が取り付けられた柔軟曲面Fの表面の一部には基準マーカー200が貼り付けられている。
【0032】
撮像手段300は、複数の多色マーカー100と基準マーカー200とが取り付けられた柔軟曲面Fを撮像する。
柔軟曲面形状算出装置400は、撮像手段300が撮像した情報から、多色マーカー100それぞれの位置と姿勢とを算出する。このように柔軟曲面形状算出装置400が柔軟曲面Fの表面に取り付けられた複数の多色マーカー100の位置と姿勢とを算出して数値化することで、柔軟曲面Fの動きを可視化することができる。
【0033】
次に柔軟曲面形状算出システム1000の構成の詳細を説明する。
多色マーカー100は、三角形状をした平面である三角平面体を4つ備えており、各三角平面体は識別可能な色で塗り分けられており、前面に向けられる範囲で互いに異なる方向に向けられた形状をしている。
【0034】
具体的に多色マーカー100は、赤色三角平面体110(説明の都合上、図の交差斜線模様部分を赤色として
図1以降を説明する)、緑色三角平面体120(説明の都合上、図の斜線模様部分を緑色として
図1以降を説明する)、青色三角平面体130(説明の都合上、図の水玉模様部分を青色として
図1以降を説明する)、および黄色三角平面体140(説明の都合上、図の白無地部分を黄色として
図1以降を説明する)を備えている。具体的な形状は後述する。
【0035】
柔軟曲面Fの表面に敷き詰めるように複数の多色マーカー100が貼り付けられる。この柔軟曲面Fの表面に取り付けられた複数の多色マーカー100の位置と姿勢とを、柔軟曲面形状算出装置400が算出することで、柔軟曲面Fの動きを可視化することができる。
【0036】
基準マーカー200は、撮像手段300で撮像することにより3次元空間における位置ベクトルや姿勢を算出可能な二次元コード210が表示されており、一般にAR(Augmented Reality)マーカー、または平面型マーカーなどと呼ばれるものである。
【0037】
複数の多色マーカー100が取り付けられた柔軟曲面Fの一部に少なくとも1つの基準マーカー200は貼り付けられる。本実施の形態の柔軟曲面形状算出システム1000では、柔軟曲面Fに取り付けられた複数の多色マーカー100と基準マーカー200とを撮像手段300が撮像し、柔軟曲面Fに取り付けられた基準マーカー200を基準として柔軟曲面形状算出装置400が、多色マーカー100の位置を算出する。
【0038】
撮像手段300は、たとえばイメージセンサーと広角レンズとを備えた単眼カメラであって、柔軟曲面Fに取り付けられた複数の多色マーカー100と基準マーカー200とを撮像可能な位置に固定されている。
【0039】
柔軟曲面形状算出装置400は、柔軟曲面Fの形状を算出するための情報処理装置であって、多色マーカー方向ベクトル算出手段410、多色マーカー姿勢算出手段420、および多色マーカー位置ベクトル算出手段430を備えている。
【0040】
また柔軟曲面形状算出装置400は、情報を記憶するための図示しない情報記憶装置を備えており、コンピュータを多色マーカー方向ベクトル算出手段410、多色マーカー姿勢算出手段420、および多色マーカー位置ベクトル算出手段430として機能させるためのプログラムを記憶することができる。
【0041】
多色マーカー方向ベクトル算出手段410は、撮像手段300および多色マーカー姿勢算出手段420に接続されており、柔軟曲面Fに取り付けられた多色マーカー100それぞれの方向を示す方向ベクトルを算出するためのものである。
【0042】
多色マーカー姿勢算出手段420は、多色マーカー方向ベクトル算出手段410および多色マーカー位置ベクトル算出手段430に接続されており、柔軟曲面Fに取り付けられた多色マーカー100それぞれの姿勢である傾きを算出するためのものである。
【0043】
多色マーカー位置ベクトル算出手段430は、多色マーカー姿勢算出手段420および出力手段500に接続されており、柔軟曲面Fに取り付けられた基準マーカー200または既に姿勢と位置ベクトルとが算出された多色マーカー100を基準として多色マーカー100それぞれの位置を示す位置ベクトルを算出するためのものである。
【0044】
柔軟曲面形状算出装置400は、多色マーカー方向ベクトル算出手段410、多色マーカー姿勢算出手段420、および多色マーカー位置ベクトル算出手段430を備えることで、柔軟曲面Fに取り付けられた多色マーカー100それぞれの方向、姿勢、および位置を算出することができる。
【0045】
柔軟曲面Fに取り付けられた多色マーカー100それぞれの方向、姿勢、および位置を柔軟曲面形状算出装置400が算出することで、柔軟曲面Fの形状を数値化することができる。また連続的に柔軟曲面形状算出装置400が柔軟曲面Fに取り付けられた多色マーカー100それぞれの方向、姿勢、および位置を算出することで柔軟曲面Fの動きを数値化することができる。
【0046】
出力手段500は、柔軟曲面形状算出装置400に接続されており、柔軟曲面形状算出装置400が算出した多色マーカー100の方向、姿勢、および位置を出力するためのものである。出力手段500は、柔軟曲面形状算出装置400が数値化した多色マーカー100それぞれの方向、姿勢、および位置を数値として出力することもできるが、柔軟曲面形状算出装置400が数値化した情報に基づいて、グラフや映像として出力することもできる。これにより、柔軟曲面Fに取り付けられた多色マーカー100それぞれの方向、姿勢、および位置を可視化することができる。
【0047】
以上のように、柔軟曲面形状算出システム1000では、算出するべき柔軟曲面Fに取り付けられた複数の多色マーカー100および基準マーカー200を撮像手段300が撮像し、撮像手段300が撮像した情報から柔軟曲面形状算出装置400が柔軟曲面Fに取り付けられた多色マーカー100それぞれの方向、姿勢、および位置を算出して柔軟曲面Fの形状や動きを数値化し、柔軟曲面形状算出装置400が数値化した情報に基づいて出力手段500が柔軟曲面Fの形状や動きを可視化して出力する。
【0048】
これにより、二次元パターンコードのみ、または二次元パターンコードおよび二次元パターンコード同一平面上において互いに直交するように姿勢反転検知パターンとによる従来のマーカーでは正確に算出できなかった柔軟曲面Fの形状や動きを、本実施の形態の柔軟曲面形状算出システム1000は算出し可視化することができる。
【0049】
なお本実施の形態の柔軟曲面形状算出システム1000では、形状を算出する対象物を柔軟に変形する柔軟曲面Fとして説明したが、たとえば複数の多色マーカー100と基準マーカー200とを硬質な曲面や任意の形状をした対象物の表層面に取り付け、その曲面や対象物を撮像手段300が撮像し、その撮像手段300が撮像した画像情報から柔軟曲面形状算出装置400が曲面や対象物の形状を算出してもよい。これにより、柔軟曲面形状算出システム1000は、柔軟曲面だけでなくあらゆる対象物の形状を数値化して可視化することができる。
【0050】
図2は、第1の実施の形態の多色マーカーの詳細を示す斜視図である。
図2に示すように、多色マーカー100は、識別可能な赤色三角平面体110、緑色三角平面体120、青色三角平面体130、および黄色三角平面体140を備えている。
【0051】
赤色三角平面体110、緑色三角平面体120、青色三角平面体130、および黄色三角平面体140は、それぞれの三角平面体が有する任意の頂点が、多色マーカー100が取り付けられた場所を特定するための特定点として1つの交点Cで交わるように配置され、さらに赤色三角平面体110、緑色三角平面体120、青色三角平面体130、および黄色三角平面体140の平面が、前面に向けられる範囲で互いに異なる方向に向けられて配置されている。
【0052】
また、赤色三角平面体110、緑色三角平面体120、青色三角平面体130、および黄色三角平面体140の各平面のうち、交点Cを介して接する隣り合う三角平面体の側辺同士が接するように配置される。
【0053】
具体的には、赤色三角平面体110が有する交点Cを頂点とした黄色三角平面体140側の辺111は、黄色三角平面体140が有する交点Cを頂点とした赤色三角平面体110側の辺142と接するように配置されている。
【0054】
また、赤色三角平面体110が有する交点Cを頂点とした緑色三角平面体120側の辺112は、緑色三角平面体120が有する交点Cを頂点とした赤色三角平面体110側の辺121と接するように配置されている。
【0055】
同様に、緑色三角平面体120が有する交点Cを頂点とした青色三角平面体130側の辺122は、青色三角平面体130が有する交点Cを頂点とした緑色三角平面体120側の辺131と接するように配置されている。
【0056】
また、青色三角平面体130が有する交点Cを頂点とした黄色三角平面体140側の辺132は、黄色三角平面体140が有する交点Cを頂点とした青色三角平面体130側の辺141と接するように配置されている。
【0057】
このように、赤色三角平面体110、緑色三角平面体120、青色三角平面体130、および黄色三角平面体140は、前面に向けられる範囲で互いに異なる方向に向くように傾斜が設けられ、かつ交点Cを介して隣り合う三角平面体同士が隙間をあけることなく連続して配置される。
【0058】
赤色三角平面体110、緑色三角平面体120、青色三角平面体130、および黄色三角平面体140が前面に向けられる範囲で互いに異なる方向に向けられた状態を保持するためには、いかなる形態をとることもできるが、本実施の形態では、交点Cを頂点としたそれぞれの三角平面体の対辺から垂直に設けられた垂直支持面と、垂直にもうけられた4つの垂直支持面を閉口するように水平に設けられた取付面とによって支持されている。
【0059】
具体的には、赤色三角平面体110が有する交点Cを頂点とした対辺113から垂直に設けられた垂直支持面151が設けられ、緑色三角平面体120が有する交点Cを頂点とした対辺123から垂直に設けられた垂直支持面152が設けられ、青色三角平面体130が有する交点Cを頂点とした対辺133から垂直に設けられた垂直支持面153が設けられ、黄色三角平面体140が有する交点Cを頂点とした対辺143から垂直に設けられた垂直支持面154が設けられる。
【0060】
これらの垂直支持面151、152、153、および154を閉口するように取付面155が設けられる。形状を算出するべき柔軟曲面Fの表面に取付面155を接着するように取り付けることで、赤色三角平面体110、緑色三角平面体120、青色三角平面体130、および黄色三角平面体140が柔軟曲面Fの表側に取り付けられる。
【0061】
多色マーカー姿勢算出手段420は、多色マーカー100の姿勢を算出する、つまり柔軟曲面Fの表側に取り付けられた取付面155の姿勢を算出することで、柔軟曲面形状算出装置400は柔軟曲面Fの形状を推定することができる。
【0062】
このように、多色マーカー100は、撮像手段300が赤色三角平面体110、緑色三角平面体120、青色三角平面体130、および黄色三角平面体140を撮像可能なように向けられて柔軟曲面Fの表側に取り付けられればよく、赤色三角平面体110、緑色三角平面体120、青色三角平面体130、および黄色三角平面体140を所定の形状に配置できれば、垂直支持面の他に支持棒などの棒状体で各三角平面体を支持することもできる。
【0063】
なお、赤色三角平面体110、緑色三角平面体120、青色三角平面体130、および黄色三角平面体140に設けられる傾斜角度は、取付面155に対して10度~30度、好ましくは20度程度の傾斜角度で形成することが望ましい。ただし、この傾斜角度は、計測する対象物の形状によって任意に変更することができる。
【0064】
この傾斜角度を小さくすることで、撮像手段300が撮像可能な範囲を広くすることができる。しかし、多色マーカー100の角度変化に対する識別職の面積比率の変化が小さくなるため、多色マーカー100の姿勢を算出する多色マーカー姿勢算出手段420の精度が低下してしまう。
【0065】
逆に傾斜角度を大きくすることで、撮像手段300が撮像可能な範囲は狭くなるが、多色マーカー100の角度変化に対する識別職の面積比率の変化が大きくなるため、多色マーカー100の姿勢を算出する多色マーカー姿勢算出手段420の精度が向上する。
【0066】
形状を推定する柔軟曲面Fの態様によって、多色マーカー100が有する各三角平面体の傾斜角度は適宜調節することができる。たとえば、足の角度が大きく動くカエルの柔軟曲面Fを推定する場合であれば、多色マーカー100が有する各三角平面体の傾斜角度を小さくして広範囲な多色マーカー100の姿勢を計測する。
【0067】
また尾ビレの角度変化が比較的小さい魚の柔軟曲面Fを推定する場合であれば、多色マーカー100が有する各三角平面体の傾斜角度を大きくすることで多色マーカー100の姿勢を高精度で計測することができる。
【0068】
また本実施の形態では、特定点がそれぞれの三角平面体が有する任意の頂点が1つで交わる交点Cのように、幾何学的に特定点である交点Cが算出可能なように特定点が設けられたが、たとえば特定点を撮像手段300が撮像したときに、多色マーカー100を識別して特定できれば他の手段で特定点を設けることもできる。たとえば特定点を示す色で着色された点を多色マーカー100に設けるなどが挙げられる。
【0069】
また、
図2で示した交点Cは、多色マーカー100の任意の位置に設けることができるが、多色マーカー100の位置を正確に特定するために、特定点である交点Cを多色マーカー100の中心、つまり取付面155の中心位置にくるように設けることが望ましい。
【0070】
図3は、第1の実施の形態の多色マーカーが、姿勢によって各三角平面体を撮像手段が撮像する撮像面積が変化する様子を示す図である。
図3に示すように、多色マーカー100の姿勢によって、撮像手段300が多色マーカー100を撮像したときの赤色三角平面体110、緑色三角平面体120、青色三角平面体130、および黄色三角平面体140の撮像面積が変化していることがわかる。
【0071】
具体的に、
図3(A)は、撮像手段300が多色マーカー100の交点C側のほぼ正面から撮像した状態である。
図3(B)から
図3(C)にかけて多色マーカー100を左側に回転させている。このとき青色三角平面体130の撮像面積が大幅に小さくなっていることがわかる。この撮像手段300が撮像した各三角平面体の色の面積比率から多色マーカー姿勢算出手段420は多色マーカー100の姿勢を算出する。
【0072】
このため赤色三角平面体110、緑色三角平面体120、青色三角平面体130、および黄色三角平面体140の各三角平面体の面積は、それぞれ等しくなるように形成されることが望ましい。各三角平面体の面積が異なってしまうと、多色マーカー100の姿勢によって、特定の色の面積だけ大きくまたは小さく変化してしまうからである。
【0073】
なお、本実施の形態では、交点Cが多色マーカー100の中心位置に配置される例で説明したが、交点Cを交点Cが多色マーカー100の中心位置以外の場所に設けることもできる。
【0074】
図4は、第1の実施の形態の多色マーカーにおける他の実施の形態を示す斜視図である。
図4に示すように、多色マーカー100は、少なくとも1つの頂点を有する複数の面が識別可能な色で塗り分けられ、それぞれの面が有する頂点が1つの交点Cで接するようにして互いの面が異なる方向に向けられ、かつ隣り合う面の側辺が接するようにして撮像手段300によって撮像可能な方向に向けられて配置されていれば、どのような形態で構成することもできる。
【0075】
具体的に、
図4(A)では、赤、緑、青の三色で識別可能な色で塗り分けられた赤色三角平面体110、緑色三角平面体120、および青色三角平面体130の3つの三角平面体が交点Cで任意の頂点が接するようにして互いの面が異なる方向に向けられ、かつ隣り合う面の側辺が接するようにして撮像手段300によって撮像可能な方向に向けられて配置されている。
【0076】
また
図4(A)における多色マーカー100の姿勢を変化させることで、撮像手段300が多色マーカー100を撮像したときの赤色三角平面体110、緑色三角平面体120、および青色三角平面体130の撮像面積が変化していることがわかる。
【0077】
また
図4(B)のように、
図1における多色マーカー100を一方側に長く延長した横長の多色マーカー100を形成することもできる。この場合も、
図4(B)における多色マーカー100の姿勢を変化させることで、撮像手段300が多色マーカー100を撮像したときの赤色三角平面体110、緑色三角平面体120、および青色三角平面体130の撮像面積が変化していることがわかる。
【0078】
図1や
図4では、識別可能な色で塗り分けられた三角平面体を組み合わせて多色マーカー100を構成する例で説明したが、それぞれの面が交点Cで接触可能な頂点を有していればよく、たとえば識別可能な色で塗り分けられた複数の扇型面を組み合わせて多色マーカー100を構成することもできる。
【0079】
また、識別可能な色の種類や、着色領域は、上記に限定されるものではなく任意の色、任意の着色領域を設けることができる。また、平面体の形状も三角平面体に限定されるものではなく、少なくとも1つの頂点を具備しており、互いに識別可能な識別色で着色された着色領域が設けられた少なくとも3面の平面体であれば、任意の形状の平面体で多色マーカー100を形成することもできる。
【0080】
上記のように識別可能な色で塗り分けられた面を配置することで、多色マーカー100が回転したときに、それぞれの面が互いの面を遮ることがない。すなわち、それぞれの面が互いに干渉することなく、多色マーカー100が有する識別可能な色で塗り分けられた面を撮像手段300が撮像することができる。
【0081】
図5は基準マーカーの詳細を示す図である。
図5に示すように、基準マーカー200は、撮像手段300で撮像することにより3次元空間における位置ベクトルや姿勢を算出可能な二次元コード210が表示されており、一般にARマーカー、または平面型マーカーなどと呼ばれるものである。
【0082】
撮像手段300が二次元コード210を撮像することで、柔軟曲面形状算出装置400は、二次元コード210を識別して基準マーカー200の3次元空間における位置ベクトルや姿勢を算出する。
【0083】
具体的には、
図5の下段に示すように、基準マーカー200の姿勢が変化することで、二次元コード210の矩形平面体積が変化し、二次元コード210の矩形平面体積の変化に基づいて柔軟曲面形状算出装置400は基準マーカー200の姿勢を算出することができる。
【0084】
図6は、第1の実施の形態の多色マーカー方向ベクトル算出手段の詳細を示すブロック図である。
図6に示すように、多色マーカー方向ベクトル算出手段410は、識別色検出部411、識別色二値化処理部412、二値化画像膨張処理部413、膨張二値化画像論理演算処理部414、膨張二値化論理積画像膨張処理部415、多色マーカー交点抽出処理部416、および方向ベクトル算出処理部417を備えている。
【0085】
識別色検出部411は、識別色を検出する処理を行うためのものであって、撮像手段300および識別色二値化処理部412に接続されている。
具体的に識別色検出部411は、多色マーカー100および基準マーカー200が取り付けられた柔軟曲面Fを撮像手段300が撮像した画像情報を受け付けて、画像情報における多色マーカー100が有する識別可能な色で塗り分けられた赤色三角平面体110、緑色三角平面体120、青色三角平面体130、および黄色三角平面体140を識別色として色ごとに分けて検出した画像を作成する処理を行う。
【0086】
さらに具体的には、識別色検出部411は、撮像手段300が撮像した画像情報から多色マーカー100が有する赤色三角平面体110が表示する着色領域を識別色である赤色として検出し、赤色のみを検出した画像情報を識別色画像(赤)とした識別色画像を作成する処理を行う。
【0087】
同様に、緑色三角平面体120が表示する着色領域を識別色である緑色として検出し、緑色のみを検出した画像情報を識別色画像(緑)として、青色三角平面体130が表示する着色領域を識別色である青色として検出し、青色のみを検出した画像情報を識別色画像(青)として、黄色三角平面体140が表示する着色領域を識別色である黄色として検出し、黄色のみを検出した画像情報を識別色画像(黄)とした識別色画像を作成する処理を行う。
【0088】
識別色二値化処理部412は、識別色を二値化する処理を行うためのものであって、識別色検出部411および二値化画像膨張処理部413に接続されている。
具体的に識別色二値化処理部412は、識別色検出部411が識別色ごとに記憶した識別色画像である識別色画像(赤)、識別色画像(緑)、識別色画像(青)、および識別色画像(黄)のHSV(Hue-Saturation-Value)閾値を設定し、識別色画像を二値化した画像情報を作成する処理を行う。
【0089】
たとえば識別色画像(赤)を二値化する処理を識別色二値化処理部412が行う場合、識別色検出部411が処理した識別色画像(赤)のHSV閾値を設定し、赤色部分を1、それ以外を0とした二値化画像(赤)を作成する処理を識別色二値化処理部412が行う。同様に、識別色二値化処理部412は、二値化画像(緑)、二値化画像(青)、および二値化画像(黄)を作成する処理を行う。
【0090】
二値化画像膨張処理部413は、二値化画像を膨張させる処理を行うためのものであって、識別色二値化処理部412および膨張二値化画像論理演算処理部414に接続されている。
【0091】
具体的に二値化画像膨張処理部413は、識別色二値化処理部412が識別色ごとに二値化する処理を行った二値化画像である二値化画像(赤)、二値化画像(緑)、二値化画像(青)、および二値化画像(黄)における識別色部分をモルフォロジー変換により膨張させる処理を行う。
【0092】
識別色二値化処理部412が処理した二値化画像を二値化画像膨張処理部413が処理することで膨張二値化画像である膨張二値化画像(赤)、膨張二値化画像(緑)、膨張二値化画像(青)、および膨張二値化画像(黄)が作成される。
【0093】
膨張二値化画像論理演算処理部414は、膨張二値化画像の論理積の演算処理を行うためのものであって、二値化画像膨張処理部413および多色マーカー交点抽出処理部416に接続されている。
【0094】
具体的に膨張二値化画像論理演算処理部414は、二値化画像膨張処理部413が識別色ごとに二値化された二値化画像を膨張させる処理を行った膨張二値化画像である膨張二値化画像(赤)、膨張二値化画像(緑)、膨張二値化画像(青)、および膨張二値化画像(黄)による論理積となる画像を作成する処理を行う。
【0095】
さらに具体的には、膨張二値化画像論理演算処理部414は、多色マーカー100が有する識別可能な色で塗り分けられた三角平面体のうち、隣接する三角平面体の2つの識別色に該当した膨張二値化画像の論理積となる画像を作成する処理を行う。
【0096】
より具体的には、多色マーカー100が有する三角平面体のうち、三角平面体の辺を共有する赤色三角平面体110と緑色三角平面体120とに該当する膨張二値化画像を組み合わせた論理積、緑色三角平面体120と青色三角平面体130とに該当する膨張二値化画像を組み合わせた論理積、青色三角平面体130と黄色三角平面体140とに該当する膨張二値化画像を組み合わせた論理積、および黄色三角平面体140と赤色三角平面体110とに該当する膨張二値化画像を組み合わせた論理積となる画像を作成する処理を膨張二値化画像論理演算処理部414が行う。
【0097】
二値化画像膨張処理部413が処理した膨張二値化画像を膨張二値化画像論理演算処理部414が処理することで膨張二値化論理積画像である膨張二値化論理積画像(赤緑)、膨張二値化論理積画像(緑青)、膨張二値化論理積画像(青黄)、および膨張二値化論理積画像(黄赤)が作成される。
【0098】
膨張二値化論理積画像膨張処理部415は、膨張二値化論理積画像を膨張させる処理を行うためのものであって、膨張二値化画像論理演算処理部414および多色マーカー交点抽出処理部416に接続されている。
【0099】
具体的に膨張二値化論理積画像膨張処理部415は、膨張二値化画像論理演算処理部414が論理積となる画像を作成する処理を行った膨張二値化論理積画像である膨張二値化論理積画像(赤緑)、膨張二値化論理積画像(緑青)、膨張二値化論理積画像(青黄)、および膨張二値化論理積画像(黄赤)における論理積部分をモルフォロジー変換により膨張させる処理を行う。
【0100】
膨張二値化画像論理演算処理部414が処理した膨張二値化論理積画像を膨張二値化論理積画像膨張処理部415が処理することで膨張二値化論理積膨張画像である膨張二値化論理積膨張画像(赤緑)、膨張二値化論理積膨張画像(緑青)、膨張二値化論理積膨張画像(青黄)、および膨張二値化論理積膨張画像(黄赤)が作成される。
【0101】
多色マーカー交点抽出処理部416は、膨張二値化論理積膨張画像から、多色マーカー100における赤色三角平面体110、緑色三角平面体120、青色三角平面体130、および黄色三角平面体140の各三角平面体が有する任意の頂点が1つで交わる交点Cを抽出する処理を行うためのものであって、膨張二値化論理積画像膨張処理部415および方向ベクトル算出処理部417に接続されている。
【0102】
具体的に多色マーカー交点抽出処理部416は、膨張二値化論理積画像膨張処理部415が処理した4つの膨張二値化論理積膨張画像である膨張二値化論理積膨張画像(赤緑)、膨張二値化論理積膨張画像(緑青)、膨張二値化論理積膨張画像(青黄)、および膨張二値化論理積膨張画像(黄赤)による論理積となる画像を作成する処理を行う。
【0103】
これにより、多色マーカー100が有する三角平面体のうち、共有する三角平面体の辺の論理積が抽出される。すなわち多色マーカー100における赤色三角平面体110、緑色三角平面体120、青色三角平面体130、および黄色三角平面体140の各三角平面体が有する任意の頂点が1つで交わる交点Cの位置が示された交点画像が算出される。
【0104】
以上のように、多色マーカー方向ベクトル算出手段410は、識別色検出部411、識別色二値化処理部412、二値化画像膨張処理部413、膨張二値化画像論理演算処理部414、膨張二値化論理積画像膨張処理部415、および多色マーカー交点抽出処理部416が処理を行うことで、多色マーカー100の交点Cが表示された交点画像が算出される。このように交点Cが算出されることで、撮像手段300が撮像した画像情報である2次元上における多色マーカー100の各交点Cの位置や数量を把握することができる。
【0105】
これにより、撮像手段300が撮像した画像情報内に多数の多色マーカー100が密集していたとしても、それぞれの多色マーカー100が有する交点Cのみを撮像手段300が撮像した画像情報抽出することができる。
【0106】
方向ベクトル算出処理部417は、3次元空間における多色マーカー100の方向ベクトルを算出するための算出処理を行うためのものであって、多色マーカー交点抽出処理部416および多色マーカー姿勢算出手段420に接続されている。
【0107】
具体的に方向ベクトル算出処理部417は、撮像手段300が撮像した画像情報の画角と、多色マーカー交点抽出処理部416が算出した2次元上における多色マーカー100の各交点Cの位置とから、撮像手段300の中心点と、柔軟曲面Fに取り付けられたそれぞれの多色マーカー100の交点Cと撮像手段300とを結ぶ方向ベクトルを算出する。
【0108】
また、方向ベクトル算出処理部417は、方向ベクトル算出処理部417が算出したそれぞれの方向ベクトルを、実際の座標系である世界座標系に変換する処理を行うこともできる。
【0109】
なお、本実施の形態では、多色マーカー100が有する三角平面体のうち、すべての識別色の論理積を算出し、また多色マーカー100が有する三角平面体のうち、共有する三角平面体のすべての共有辺の論理積を抽出することで交点Cを算出したが、多色マーカー100が有する識別色が多数ある場合は、任意の識別色を選択して論理積を算出してもよい。
【0110】
また、膨張二値化画像論理演算処理部414が処理した膨張二値化論理積画像である膨張二値化論理積画像(赤緑)、膨張二値化論理積画像(緑青)、膨張二値化論理積画像(青黄)、および膨張二値化論理積画像(黄赤)を多色マーカー交点抽出処理部416が処理することで交点Cのみを抽出することができれば、膨張二値化論理積画像膨張処理部415が行う膨張二値化論理積画像を膨張させる処理を省略することもできる。
【0111】
図7は、撮像手段が撮像した画像情報を多色マーカー方向ベクトル算出手段が受け付けてから多色マーカーの方向ベクトルを算出するまでの処理を示すフローチャートである。以下、
図7に示す処理をステップ番号に沿って説明する。
【0112】
〔ステップS01〕
撮像手段300が撮像した画像情報を受け付けた多色マーカー方向ベクトル算出手段410は、識別色を検出する。
【0113】
具体的には、識別色検出部411が、撮像手段300が撮像した画像情報から多色マーカー100が有する赤色三角平面体110が表示する着色領域を識別色である赤色として検出し、緑色三角平面体120が表示する着色領域を識別色である緑色として検出し、青色三角平面体130が表示する着色領域を識別色である青色として検出し、黄色三角平面体140が表示する着色領域を識別色である黄色として検出する。
【0114】
〔ステップS02〕
多色マーカー方向ベクトル算出手段410は、識別色を抽出する。
具体的には、ステップS01で識別色検出部411が検出した赤色のみを抽出した識別色画像(赤)と、ステップS01で識別色検出部411が検出した緑色のみを抽出した識別色画像(緑)と、ステップS01で識別色検出部411が検出した青色のみを抽出した識別色画像(青)と、ステップS01で識別色検出部411が検出した黄色のみを抽出した識別色画像(黄)とを識別色検出部411が作成する。
【0115】
〔ステップS03〕
多色マーカー方向ベクトル算出手段410は、識別色画像を二値化する。
具体的には、ステップS02で識別色検出部411が作成した識別色画像(赤)と、識別色画像(緑)と、識別色画像(青)と、識別色画像(黄)とを二値化した二値化画像(赤)、二値化画像(緑)、二値化画像(青)、二値化画像(黄)を識別色二値化処理部412が作成する。
【0116】
〔ステップS04〕
多色マーカー方向ベクトル算出手段410は、二値化画像を膨張させる。
具体的には、ステップS03で識別色二値化処理部412が二値化した二値化画像における識別色部分をモルフォロジー変換により膨張させた膨張二値化画像を二値化画像膨張処理部413が作成する。
【0117】
〔ステップS05〕
多色マーカー方向ベクトル算出手段410は、ステップS04の処理が完遂したかどうかを判断する。
具体的には、ステップS03で識別色二値化処理部412が二値化したすべての二値化画像を二値化画像膨張処理部413が膨張させたかどうかを二値化画像膨張処理部413が判断する。
【0118】
すべての二値化画像を膨張させたと二値化画像膨張処理部413が判断したときは、処理をステップS06へ進め、すべての二値化画像を膨張させていないと二値化画像膨張処理部413が判断したときは、ステップS04の処理を繰り返す。
【0119】
〔ステップS06〕
多色マーカー方向ベクトル算出手段410は、膨張二値化画像の論理積を演算する。
具体的には、ステップS04で二値化画像膨張処理部413が作成した膨張二値化画像のうち、多色マーカー100が有する識別可能な色で塗り分けられた三角平面体で隣接する三角平面体の2つの識別色に該当した膨張二値化画像の論理積となる膨張二値化論理積画像を膨張二値化画像論理演算処理部414が作成する。
【0120】
〔ステップS07〕
多色マーカー方向ベクトル算出手段410は、ステップS06の処理が完遂したかどうかを判断する。
具体的には、ステップS04で二値化画像膨張処理部413が作成した膨張二値化画像のうち、多色マーカー100が有する識別可能な色で塗り分けられた三角平面体で隣接する三角平面体の2つの識別色すべてに該当した膨張二値化画像の論理積を演算する処理を行ったかどうかを膨張二値化画像論理演算処理部414が判断する。
【0121】
多色マーカー100が有する識別可能な色で塗り分けられた三角平面体で隣接する三角平面体の2つの識別色すべてに該当した膨張二値化画像の論理積を演算する処理を行ったと膨張二値化画像論理演算処理部414が判断したときは、処理をステップS08へ進め、多色マーカー100が有する識別可能な色で塗り分けられた三角平面体で隣接する三角平面体の2つの識別色すべてに該当した膨張二値化画像の論理積を演算する処理を行っていないと膨張二値化画像論理演算処理部414が判断したときは、ステップS06の処理を繰り返す。
【0122】
〔ステップS08〕
多色マーカー方向ベクトル算出手段410は、膨張二値化論理積画像を膨張させる。
具体的には、ステップS06で膨張二値化画像論理演算処理部414が作成した膨張二値化論理積画像をモルフォロジー変換により膨張させた膨張二値化論理積膨張画像を膨張二値化論理積画像膨張処理部415が作成する。
【0123】
〔ステップS09〕
多色マーカー方向ベクトル算出手段410は、交点Cを抽出する。
具体的には、ステップS08で膨張二値化論理積画像膨張処理部415が作成したすべての膨張二値化論理積膨張画像の論理積を演算する処理を行うことで多色マーカー交点抽出処理部416が2次元上における多色マーカー100の各交点Cを抽出する。
【0124】
〔ステップS10〕
多色マーカー方向ベクトル算出手段410は、方向ベクトルを算出する。
具体的には、ステップS09で多色マーカー交点抽出処理部416が算出した2次元上における多色マーカー100の各交点Cの位置と撮像した画像情報の画角とから、撮像手段300の中心と、柔軟曲面Fに取り付けられたそれぞれの多色マーカー100の交点Cと撮像手段300とを結ぶ方向ベクトルを方向ベクトル算出処理部417が算出する。
【0125】
〔ステップS11〕
多色マーカー方向ベクトル算出手段410は、方向ベクトルから座標系で位置ベクトルを示す際に必要な角度を算出する。
【0126】
具体的には、ステップS10で方向ベクトル算出処理部417が算出した柔軟曲面Fに取り付けられたそれぞれの多色マーカー100の交点Cと撮像手段300とを結ぶ方向ベクトルから、多色マーカー100の位置ベクトルを座標系で示す際に必要な角度を算出する処理を方向ベクトル算出処理部417が行う。
【0127】
図8は、柔軟曲面Fに多色マーカーを取り付けた状態を撮像手段が撮像した画像情報、二値化画像、および膨張二値化画像の一例を示す図である。
図8(A)は、柔軟曲面Fに多色マーカー100が取り付けられた状態を撮像手段300が撮像した画像情報を示す図である。
【0128】
図8(A)に示すように、多色マーカー100は、算出するべき柔軟曲面Fの表面に取り付けられる。多色マーカー100は、規則的に連続するように並べられて柔軟曲面Fに取り付けられる。このとき、隣り合う多色マーカー100の識別色が隣り合わせにならないように並べられることが望ましい。これは隣接する多色マーカー100の識別職と混同しないためである。
【0129】
図8(B)は、
図8(A)の画像情報から赤色三角平面体110による赤色部分のみを識別色検出部411が抽出した識別色画像(赤)を識別色二値化処理部412が二値化した状態を示す図である。
【0130】
図8に示すように、撮像手段300が撮像した画像情報から識別色検出部411が赤色部分を検出し、識別色二値化処理部412が赤色部分を「0(黒)」、それ以外の部分を「1(白)」として処理した二値化画像(赤)が作成されている。
【0131】
この他、撮像手段300が撮像した画像情報を識別色検出部411および識別色二値化処理部412が処理することによって、ここでは図示しない二値化画像(緑)、二値化画像(青)、および二値化画像(黄)が作成される。
【0132】
図8(C)は、
図8(B)の二値化画像を二値化画像膨張処理部413が膨張させた状態を示す図である。
図8(C)に示すように、識別色二値化処理部412が処理した二値化画像(赤)のうち赤色部分である「0(黒)」を二値化画像膨張処理部413が膨張させる処理を行うことによって膨張二値化画像(赤)が作成されている。
【0133】
この他、識別色検出部411および識別色二値化処理部412が処理した二値化画像(緑)、二値化画像(青)、および二値化画像(黄)を二値化画像膨張処理部413が処理することによって、ここでは図示しない膨張二値化画像(緑)、膨張二値化画像(青)、および膨張二値化画像(黄)が作成される。
【0134】
なお、本実施の形態では、柔軟曲面Fの上で多色マーカー100が平面方向に多広がるように取り付けられた例で説明したが、たとえば柔軟曲面Fがヘビやミミズのような線状の柔軟曲面の場合は、多色マーカーを線状または帯状に多色マーカー100並べて取り付けることもできる。
【0135】
図9は、二値化画像膨張処理部が処理したすべての膨張二値化画像の一例を示す図である。
図9に示すように、識別色二値化処理部412が処理した二値化画像のうち各識別色部分である「0(黒)」を二値化画像膨張処理部413が膨張させる処理を行うことによって識別色ごとの膨張二値化画像が作成されている。
【0136】
具体的に、
図9(A)は赤色部分のみを二値化画像膨張処理部413が膨張させた膨張二値化画像(赤)であり、
図9(B)は青色部分のみを二値化画像膨張処理部413が膨張させた膨張二値化画像(青)であり、
図9(C)は黄色部分のみを二値化画像膨張処理部413が膨張させた膨張二値化画像(黄)であり、
図9(D)は緑色部分のみを二値化画像膨張処理部413が膨張させた膨張二値化画像(緑)である。
【0137】
図10は、膨張二値化画像論理演算処理部が処理したすべての膨張二値化論理積画像の一例を示す図である。
図10に示すように、
図9で二値化画像膨張処理部413が作成した膨張二値化画像のうち、それぞれの多色マーカー100が有する識別可能な色で塗り分けられた三角平面体で隣接する三角平面体の2つの識別色に該当した膨張二値化画像の論理積を演算する処理を膨張二値化画像論理演算処理部414が行うことによって、それぞれの膨張二値化論理積画像が作成されている。
【0138】
具体的に、
図10(A)は
図9(A)の赤色部分と
図9(D)の緑色部分との論理積である膨張二値化論理積画像(赤緑)であり、
図10(B)は
図9(B)の青色部分と
図9(C)の黄色部分との論理積である膨張二値化論理積画像(青黄)であり、
図10(C)は
図9(C)の黄色部分と
図9(A)の赤色部分との論理積である膨張二値化論理積画像(黄赤)であり、
図10(D)は
図9(D)の緑色部分と
図9(B)の青色部分との論理積である膨張二値化論理積画像(緑青)である。
【0139】
図11は、膨張二値化論理積膨張画像および交点画像の一例を示す図である。
図11に示すように、
図11(A)は
図10(A)の膨張二値化論理積画像(赤緑)を膨張二値化論理積画像膨張処理部415が膨張させた膨張二値化論理積膨張画像(赤緑)であり、
図10(B)の膨張二値化論理積画像(青黄)を膨張二値化論理積画像膨張処理部415が膨張させた膨張二値化論理積膨張画像(青黄)であり、
図10(C)の膨張二値化論理積画像(黄赤)を膨張二値化論理積画像膨張処理部415が膨張させた膨張二値化論理積膨張画像(黄赤)であり、
図10(D)の膨張二値化論理積画像(緑青)を、膨張二値化論理積画像膨張処理部415が膨張させた膨張二値化論理積膨張画像(緑青)である。
【0140】
また
図11(E)は、
図11(A)~
図11(D)の論理積を多色マーカー交点抽出処理部416が算出した図である。このように、多色マーカー交点抽出処理部416が
図11(A)~
図11(D)の論理積を算出することで、多色マーカー100における赤色三角平面体110、緑色三角平面体120、青色三角平面体130、および黄色三角平面体140の各三角平面体が有する任意の頂点が1つで交わる交点Cの位置が示された交点画像が算出される。
【0141】
図12は、方向ベクトル算出処理部が任意の多色マーカーの方向ベクトルを算出する処理例を示す図である。
図12に示すように、方向ベクトル算出処理部417は、撮像手段300が撮像する画像情報の画角を考慮し、撮像手段300から多色マーカー100に対する方向ベクトルを算出することができる。
【0142】
説明の都合上、ここでは柔軟曲面Fに取り付けられた多色マーカー100のうち、任意の多色マーカー100である多色マーカー101の方向ベクトルを方向ベクトル算出処理部417が算出する例で説明する。
【0143】
具体的に、
図12(A)は、撮像手段300が撮像した画像情報であって、求めるべき多色マーカー101が撮像されている。また、
図12(B)は、3次元空間(x、y、z)における求めるべき多色マーカー101の方向ベクトルおよび撮像手段300の縦方向の画角λyと横方向の画角λxを示している。
【0144】
ここで、撮像手段300が撮像した画像情報における縦方向の距離をh[px]、横方向の距離をw[px]とすると、撮像手段300が撮像した画像情報のアスペクト比により、縦方向の画角λyは次の計算式により算出することができる。
【数1】
【0145】
また、縦方向の画角λyと横方向の画角λxとから、撮像手段300が撮像する視野の右下角の方向ベクトルが次の計算式により算出することができる。
【数2】
【0146】
ここで、撮像手段300が撮像した画像情報における中心位置から多色マーカー101までの横方向の距離をa[px]、中心位置から多色マーカー101までの縦方向の距離をh[px]とすると、画像情報上の多色マーカー101の画素位置に基づいて、多色マーカー101の方向ベクトルが次の計算式により算出することができる。
【数3】
【0147】
他の多色マーカー100も同様に、撮像手段300が撮像した画像情報上の多色マーカー100の画素位置に基づいて、それぞれの多色マーカー100の方向ベクトルが算出できる。
【0148】
図13は、位置ベクトルを座標系で示す際に必要な角度を方向ベクトル算出処理部が算出する処理の一例を示す垂直断面図である。
図13に示すように、多色マーカー100は柔軟曲面Fの表面に取付面155が接着されて取り付けられている。なお、ここでは説明の簡略化のため二次元の図を用いて以下を説明する。
【0149】
多色マーカー姿勢算出手段420が算出した多色マーカー100の姿勢は、撮像手段300の中心と交点Cとを結ぶ直線に垂直な線と取付面155とのなす角度αiとなる。
ここで多色マーカー100の方向ベクトルを座標系で示す際に必要な角度は、多色マーカー100の交点Cから水平な直線と取付面155とのなす角度θiとなる。
【0150】
そこで方向ベクトル算出処理部417は、方向ベクトル算出処理部417が算出した柔軟曲面Fに取り付けられたそれぞれの多色マーカー100の交点Cと撮像手段300とを結ぶ方向ベクトルから、多色マーカー100の位置ベクトルを座標系で示す際に必要な角度であるθiを算出する。
【0151】
このとき、撮像手段300のイメージセンサーに平行な線と撮像手段300の中心と交点Cとを結ぶ直線に垂直な線とのなす角度βiとαiとからθiを算出することができる。撮像手段300のイメージセンサーに平行な線と撮像手段300の中心と交点Cとを結ぶ直線に垂直な線とのなす角度βiは、撮像手段300のイメージセンサーに垂直な線と撮像手段300の中心と交点Cとを結ぶ直線とのなす角である方向ベクトルの角度に等しくなることから、方向ベクトル算出処理部417は方向ベクトルの角度βiに基づいてθiを算出することができる。
【0152】
図14は、多色マーカー方向ベクトル算出手段が行う処理によって算出することによって得られた多色マーカーの方向ベクトルと、多色マーカー姿勢算出手段が行う処理によって得られた多色マーカーの姿勢とをあらわす参考図である。
【0153】
図14に示すように、多色マーカー方向ベクトル算出手段410が行う処理によって多色マーカー100の方向ベクトルが得られ、多色マーカー姿勢算出手段420が行う処理によって多色マーカー100の姿勢である角度が得られている。
【0154】
つまり、それぞれの姿勢の多色マーカー100がそれぞれの方向ベクトル上で存在している情報だけが得られている。あとは、それぞれの多色マーカー100の位置ベクトルを決定することで、柔軟曲面Fに取り付けられたそれぞれの多色マーカー100の姿勢と位置とを得ることができる。
【0155】
図15は、多色マーカー位置ベクトル算出手段の詳細を示すブロック図である。
図15に示すように、多色マーカー位置ベクトル算出手段430は、基準マーカー検出部431、基準マーカー位置姿勢算出部432、および近接多色マーカー位置ベクトル算出部433を備えている。
【0156】
基準マーカー検出部431は、柔軟曲面Fに取り付けられた少なくとも1つの基準マーカー200と複数の多色マーカー100との中から、多色マーカー100の位置ベクトルを算出するために基準となる算出基準マーカーとして1つの基準マーカー200を検出するためのものであって、多色マーカー姿勢算出手段420および基準マーカー位置姿勢算出部432に接続されている。
【0157】
具体的に、基準マーカー検出部431は、撮像手段300が撮像した画像情報から基準マーカー200が備える二次元コード210を認識することで基準マーカー200を検出する。
【0158】
基準マーカー位置姿勢算出部432は、基準マーカー検出部431によって検出された基準マーカー200の位置と姿勢とを検出するためのものであって、基準マーカー検出部431および近接多色マーカー位置ベクトル算出部433に接続されている。
【0159】
具体的に、基準マーカー位置姿勢算出部432は、基準マーカー検出部431によって検出された基準マーカー200が備える二次元コード210を識別し、その二次元コード210の形状を特定することで基準マーカー200の3次元空間における位置ベクトルや姿勢を算出することができる。
【0160】
近接多色マーカー位置ベクトル算出部433は、多色マーカー100の位置ベクトルを算出するためのものであって、基準マーカー位置姿勢算出部432および出力手段500に接続されている。
【0161】
具体的に、近接多色マーカー位置ベクトル算出部433は、基準マーカー検出部431が検出し、基準マーカー位置姿勢算出部432が算出した基準マーカー200を算出基準マーカーとして、近接する多色マーカー100である近接多色マーカーの位置ベクトルを相対的に算出する。
【0162】
また近接多色マーカー位置ベクトル算出部433が算出した一の多色マーカー100を算出基準マーカーとして、その算出基準マーカーである多色マーカー100に近接する他の多色マーカー100の位置ベクトルを相対的に算出する。
【0163】
これを繰り返すことで、それぞれの多色マーカー100の位置ベクトルが連鎖的に算出される。近接多色マーカー位置ベクトル算出部433が算出したそれぞれの多色マーカー100の位置ベクトルと、多色マーカー姿勢算出手段420が算出した多色マーカー100の姿勢である角度とから、多色マーカー100および基準マーカー200が取り付けられた柔軟曲面Fの3次元空間における形状を得ることができる。
【0164】
なお、本実施の形態では、柔軟曲面Fに1つの基準マーカー200と複数の多色マーカー100を取り付ける例で説明したが、柔軟曲面Fに複数の基準マーカー200を取り付けることもできる。
【0165】
この場合、基準マーカー200に近い多色マーカー100から順番に位置ベクトルが決定されていくため、複数の基準マーカーから近い多色マーカー100の位置ベクトルが同時に算出されていく。このため柔軟曲面Fの形状を得る速度が向上する。
【0166】
たとえば柔軟曲面Fの面積が広い場合などには、複数の基準マーカー200を所定の間隔で取り付けることで、基準マーカー200を1つとした場合よりも速く柔軟曲面Fの形状を得ることができる。
【0167】
図16は、撮像手段が撮像した画像情報を多色マーカー位置ベクトル算出手段が受け付けてから多色マーカーの位置ベクトルを検出するまでの処理を示すフローチャートである。以下、
図16に示す処理をステップ番号に沿って説明する。
【0168】
〔ステップS21〕
撮像手段300が撮像した画像情報を受け付けた多色マーカー位置ベクトル算出手段430は、基準マーカー200を検出する。
具体的には、基準マーカー検出部431が、撮像手段300が撮像した画像情報から基準マーカー200が備える二次元コード210を認識することで基準マーカー200を検出する。
【0169】
〔ステップS22〕
多色マーカー位置ベクトル算出手段430は、基準マーカー200の位置ベクトルおよび姿勢を算出する。
具体的には、ステップS21で基準マーカー検出部431が検出した基準マーカー200が備える二次元コード210の形状を基準マーカー位置姿勢算出部432が特定することで基準マーカー200の3次元空間における位置ベクトルや姿勢を算出する。
【0170】
〔ステップS23〕
多色マーカー位置ベクトル算出手段430は、基準マーカー200を算出基準マーカーとする。
具体的には、ステップS22で基準マーカー位置姿勢算出部432が位置ベクトルと姿勢とを算出した基準マーカー200を、近接多色マーカー位置ベクトル算出部433が近接多色マーカーの位置ベクトルを算出するために基準とする算出基準マーカーとして特定する。
【0171】
〔ステップS24〕
多色マーカー位置ベクトル算出手段430は、位置ベクトルを特定するべき任意の多色マーカー100を特定する。
具体的には、ステップS23で特定した算出基準マーカーに近接する多色マーカー100のうち、位置ベクトルを算出するべき1つの多色マーカー100を近接多色マーカーとして近接多色マーカー位置ベクトル算出部433が特定する。
【0172】
〔ステップS25〕
多色マーカー位置ベクトル算出手段430は、近接多色マーカーの位置ベクトルを算出する。
具体的には、ステップS23で特定された算出基準マーカーの位置ベクトルおよび姿勢と、ステップS24で特定された算出基準マーカーに近接する1つの近接多色マーカーの方向ベクトルおよび姿勢から近接多色マーカー位置ベクトル算出部433が位置ベクトルを算出するべき近接多色マーカーの位置ベクトルを算出する。
【0173】
〔ステップS26〕
多色マーカー位置ベクトル算出手段430は、柔軟曲面Fに取り付けられたすべての多色マーカー100の位置ベクトルが算出されたか否かの判断を行う。
具体的には、ステップS25で位置ベクトルが算出された多色マーカー100に近接されているすべての多色マーカー100の位置ベクトルが算出されているか否かの判断を近接多色マーカー位置ベクトル算出部433が行う。
【0174】
近接多色マーカー位置ベクトル算出部433が、柔軟曲面Fに取り付けられたすべての多色マーカー100の位置ベクトルが算出されたと判断したときは処理を終了し、柔軟曲面Fに取り付けられたすべての多色マーカー100の位置ベクトルが算出されていないと判断したときは、処理をステップ27へ進める。
【0175】
〔ステップS27〕
多色マーカー位置ベクトル算出手段430は、位置ベクトルが算出された多色マーカー100を算出基準マーカーとする。
具体的には、ステップS25で位置ベクトルが算出された多色マーカー100を、近接多色マーカー位置ベクトル算出部433が他の多色マーカー100の位置ベクトルを算出するために基準とする算出基準マーカーとして特定する。
【0176】
図17、多色マーカー位置ベクトル算出部の詳細を示すブロック図である。
図17に示すように、近接多色マーカー位置ベクトル算出部433は、近接多色マーカー姿勢面算出部433A、算出基準マーカー姿勢面算出部433B、近接多色マーカー姿勢面移動部433C、交線算出部433D、対交線最小値算出部433E、等値算出部433F、および近接多色マーカー位置ベクトル特定部433Gを備えている。
【0177】
柔軟曲面Fに取り付けられている複数の多色マーカー100は、
図8(A)に示すように、規則的にかつ連続するように並べられている。このため、隣り合う多色マーカー100が取り付けられた柔軟曲面Fの表面の硬さの差はほとんどないものと考えられる。すなわち近接する2つの多色マーカー100の曲率が等しくなる点をみつけることで、多色マーカー100の位置ベクトルが特定される。
【0178】
近接多色マーカー姿勢面算出部433Aは、位置ベクトルを算出するべき近接多色マーカーの姿勢を面状に拡大した面である多色マーカー姿勢面を算出するためのものであって、基準マーカー位置姿勢算出部432および算出基準マーカー姿勢面算出部433Bに接続されている。
【0179】
算出基準マーカー姿勢面算出部433Bは、算出基準マーカーの位置で算出基準マーカーの姿勢を面状に拡大した面である算出基準マーカー姿勢面を算出するためのものであって、近接多色マーカー姿勢面算出部433Aおよび近接多色マーカー姿勢面移動部433Cに接続されている。
【0180】
近接多色マーカー姿勢面移動部433Cは、近接多色マーカー姿勢面算出部433Aが算出した近接多色マーカー姿勢面を、位置ベクトルを算出するべき近接多色マーカーの位置ベクトル上を同じ姿勢のまま移動させるためのものであって、算出基準マーカー姿勢面算出部433Bおよび交線算出部433Dに接続されている。
【0181】
交線算出部433Dは、近接多色マーカー姿勢面算出部433Aが算出した近接多色マーカー姿勢面を近接多色マーカー姿勢面移動部433Cが方向ベクトル上を移動させたときに、算出基準マーカー姿勢面算出部433Bが算出した算出基準マーカー姿勢面と交わる線である交線を算出するためのものであって、近接多色マーカー姿勢面移動部433Cおよび対交線最小値算出部433Eに接続されている。
【0182】
対交線最小値算出部433Eは、位置ベクトルを算出するべき近接多色マーカーの交点Cから交線までの最小値である近接多色マーカー交線最小値と、算出基準マーカーの中心点から交線までの最小値である算出基準マーカー交線最小値とを算出するためのものである。
【0183】
具体的に近接多色マーカー交線最小値は、交点Cと交線とが直角に交わるように結ばれた線であり、算出基準マーカー交線最小値は、算出基準マーカーの中心点と交線とが直角に交わるように結ばれた線である。
【0184】
等値算出部433Fは、対交線最小値算出部433Eが算出した近接多色マーカー交線最小値と算出基準マーカー交線最小値とが等しくなる点、または近似となる点を算出するためのものである。
【0185】
算出した近接多色マーカー交線最小値と算出基準マーカー交線最小値とが等しくなる点、つまり位置ベクトルを算出するべき近接多色マーカーと、算出基準マーカーとの中間点に交線がくるような多色マーカー100の位置を算出する。
【0186】
これにより算出基準マーカーと多色マーカー100との曲率が等しく、または近似となる。すなわち、算出基準マーカーと多色マーカー100とが取り付けられる柔軟曲面Fの表面の硬さにほとんど差がない点を算出することができる。
【0187】
近接多色マーカー位置ベクトル特定部433Gは、位置ベクトルを算出するべき近接多色マーカーの位置ベクトルを特定するためのものであって、等値算出部433Fおよび出力手段500に接続されている。
【0188】
図18は、位置ベクトルを算出するべき近接多色マーカーの情報と、算出基準マーカーの情報とを多色マーカー位置ベクトル算出部が受け付けてから多色マーカーの位置ベクトルを算出するまでの処理を示すフローチャートである。以下、
図18に示す処理をステップ番号に沿って説明する。
【0189】
〔ステップS31〕
近接多色マーカー位置ベクトル算出部433は、近接多色マーカー姿勢面を算出する。
具体的には、近接多色マーカー姿勢面算出部433Aが、位置ベクトルを算出するべき近接多色マーカーの姿勢を面状に拡大した面である多色マーカー姿勢面を算出する。
【0190】
〔ステップS32〕
近接多色マーカー位置ベクトル算出部433は、算出基準マーカー姿勢面を算出する。
具体的には、算出基準マーカー姿勢面算出部433Bが、算出基準マーカーの位置で算出基準マーカーの姿勢を面状に拡大した面である算出基準マーカー姿勢面を算出する。
【0191】
〔ステップS33〕
近接多色マーカー位置ベクトル算出部433は、近接多色マーカー姿勢面を移動させる。
具体的には、近接多色マーカー姿勢面算出部433Aが算出した近接多色マーカー姿勢面を、位置ベクトルを算出するべき近接多色マーカーの位置ベクトル上で同じ姿勢のまま近接多色マーカー姿勢面移動部433Cが移動させる。
【0192】
〔ステップS34〕
近接多色マーカー位置ベクトル算出部433は、交線を算出する。
具体的には、ステップS31で近接多色マーカー姿勢面算出部433Aが算出した近接多色マーカー姿勢面を近接多色マーカー姿勢面移動部433Cが方向ベクトル上を移動させたときに、ステップS32で算出基準マーカー姿勢面算出部433Bが算出した算出基準マーカー姿勢面と交わる線である交線を交線算出部433Dが算出する。
【0193】
〔ステップS35〕
近接多色マーカー位置ベクトル算出部433は、近接多色マーカー交線最小値を算出する。
具体的には、対交線最小値算出部433Eが、位置ベクトルを算出するべき近接多色マーカーの交点Cから交線までの最小値である近接多色マーカー交線最小値を算出する。
【0194】
〔ステップS36〕
近接多色マーカー位置ベクトル算出部433は、算出基準マーカー交線最小値を算出する。
具体的には、対交線最小値算出部433Eが、算出基準マーカーの中心点から交線までの最小値である算出基準マーカー交線最小値を算出する。
【0195】
〔ステップS37〕
近接多色マーカー位置ベクトル算出部433は、近接多色マーカー交線最小値と算出基準マーカー交線最小値とが等しいかどうかを判断する。
【0196】
具体的には、ステップS35で対交線最小値算出部433Eが算出した近接多色マーカー交線最小値と、ステップS36で対交線最小値算出部433Eが算出した算出基準マーカー交線最小値とを比較し、等しい値であるかどうかを等値算出部433Fが判断する。
【0197】
近接多色マーカー交線最小値と算出基準マーカー交線最小値とが等しい値であると等値算出部433Fが判断したときは処理をステップS38へ進め、近接多色マーカー交線最小値と算出基準マーカー交線最小値とが等しい値ではないと等値算出部433Fが判断したときは処理をステップS33に進める。
【0198】
〔ステップS38〕
近接多色マーカー位置ベクトル算出部433は、多色マーカー100の位置ベクトルを特定する。
具体的には、ステップS37で近接多色マーカー交線最小値と算出基準マーカー交線最小値とが等しい値であると等値算出部433Fが判断したときの多色マーカー100の位置に基づいて、近接多色マーカー位置ベクトル特定部433Gは、位置ベクトルを算出するべき近接多色マーカーの位置ベクトルを特定する。
【0199】
図19は、多色マーカー位置ベクトル算出部が行う処理を示す参考図である。
図19に示すように、ここでは図示しない位置ベクトルを算出するべき近接多色マーカーの姿勢を面状に拡大した面である近接多色マーカー姿勢面が近接多色マーカー姿勢面算出部433Aによって算出されている。
【0200】
また、ここでは図示しない算出基準マーカーの位置で算出基準マーカーの姿勢を面状に拡大した面である算出基準マーカー姿勢面が算出基準マーカー姿勢面算出部433Bによって算出されている。
また、近接多色マーカー姿勢面を近接多色マーカー姿勢面移動部433Cが方向ベクトル上を移動させたときに、算出基準マーカー姿勢面と交わる線である交線が交線算出部433Dによって算出されている。
【0201】
また、ここでは図示しない位置ベクトルを算出するべき近接多色マーカーの交点Cから交線までの最小値である近接多色マーカー交線最小値と、ここでは図示しない算出基準マーカーの中心点から交線までの最小値である算出基準マーカー交線最小値が対交線最小値算出部433Eによって算出されている。
【0202】
図19では、近接多色マーカー交線最小値と算出基準マーカー交線最小値との長さが大きく異なっていることがわかる。近接多色マーカー姿勢面移動部433Cが方向ベクトル上で近接多色マーカー姿勢面を移動することで交線が変化する。
【0203】
また交線が変化することで近接多色マーカー交線最小値と算出基準マーカー交線最小値とが変化する。この変化する近接多色マーカー交線最小値と算出基準マーカー交線最小値とを等値算出部433Fが比較しながら、近接多色マーカー交線最小値と算出基準マーカー交線最小値とが等しくなる点を等値算出部433Fが判断する。
【0204】
この近接多色マーカー交線最小値と算出基準マーカー交線最小値とが等しくなる点に基づいて、近接多色マーカー位置ベクトル特定部433Gは、位置ベクトルを算出するべき近接多色マーカーの位置ベクトルを特定する。
【0205】
以上のように、撮像手段300が撮像した多色マーカー100および基準マーカー200を含む画像情報を柔軟曲面形状算出装置400が処理を行うことによって、柔軟曲面Fに取り付けられた多色マーカー100の位置ベクトルと姿勢とを得ることができるので、柔軟曲面形状算出システム1000は、たとえばカエルやヘビの表層面のように変形する柔軟曲面Fの動きや、ソフトロボットの曲げ・圧縮変形を数値化することができ、柔軟物の形状を可視化することができる。
【0206】
なお、本実施の形態では、撮像手段300を一つの単眼カメラであるとして説明したが、複数の単眼カメラで多色マーカー100および基準マーカー200を撮像し、柔軟曲面形状算出装置400が処理した数値の平均を得るなどの処理を行うこともできる。また撮像手段300を複眼カメラで行うこともできる。
【0207】
〔第2の実施の形態〕
次に、本発明の第2の実施の形態について説明する。本実施の形態の柔軟曲面形状算出システム1000は、多色マーカー100の構成と多色マーカー方向ベクトル算出手段の構成が異なる以外は、第1の実施の形態で示した構成とほぼ同様である。このため、上記第1の実施の形態とほぼ同様の構成部分については同一の符号を付すなどして適宜その説明を省略する。
【0208】
図20は、第2の実施の形態の多色マーカーの詳細を示す斜視図である。
図20に示すように、多色マーカー600は、識別可能な色が表示される矩形の平面体である矩形平面体610、矩形平面体620、矩形平面体630、および矩形平面体640を備えている。
【0209】
矩形平面体610、矩形平面体620、矩形平面体630、および矩形平面体640は、それぞれの矩形平面体が有する任意の頂点が1つの交点Cで交わるように配置され、さらに矩形平面体610、矩形平面体620、矩形平面体630、および矩形平面体640の平面が前面に向けられる範囲で互いに異なる方向に向けられて配置されている。
【0210】
また、矩形平面体610、矩形平面体620、矩形平面体630、および矩形平面体640の各矩形平面体のうち、交点Cを介して接する隣り合う矩形平面体の側辺同士が接しないように所定の高さが開けられて配置される。
【0211】
4つの矩形平面体は、それぞれ交点Cと、交点Cと対抗する頂点を結んだ直線である境界線で区切られた一方の領域である傾斜面の高い側の領域である高斜面領域に識別可能な識別色が表示される着色領域と、他方側である傾斜面の低い側である低斜面領域には識別色が表示されない異識別色領域とが設けられており、交点Cを中心にして、着色領域と異識別色領域とが交互になるように配置されている。
【0212】
具体的には、矩形平面体610は、着色領域である赤色三角平面体611および異識別色領域である異識別色三角平面体612を備えている。同様に、矩形平面体620は、着色領域である緑色三角平面体621および異識別色領域である異識別色三角平面体622を備え、矩形平面体630は、着色領域である青色三角平面体631および異識別色領域である異識別色三角平面体632を備え、矩形平面体640は、着色領域である黄色三角平面体641および異識別色領域である異識別色三角平面体642を備えている。
【0213】
上記のように、4つの矩形平面体のうち、交点Cを介して接する隣り合う矩形平面体の側辺同士が接しないように所定の高さを設けて矩形平面体を配置した場合、各矩形平面体の全領域が識別色を表示するようにしてしまうと、矩形平面体の側辺同士が接しないようにすることで設けられた高低差によって、矩形平面体の一部が、矩形平面体の高低差部分によって隠れてしまう問題が生じる。
【0214】
ところが、多色マーカー姿勢算出手段420は、撮像手段300が撮像した着色領域の色の面積比率から多色マーカー600の姿勢を算出するため、矩形平面体の高低差部分によって隠れてしまうことで多色マーカー600の姿勢を多色マーカー姿勢算出手段420が正しく算出することができなくなることになる。
【0215】
そこで、矩形平面体の高低差部分によって隠れてしまう部分に、異識別色領域を設けることで、矩形平面体の高低差部分によって撮像手段300が着色領域を撮像できない領域である死角領域を少なくすることができる。これにより、多色マーカー姿勢算出手段420は、多色マーカー600の姿勢を正しく算出することができる。
【0216】
図21は、連結材を介して多色マーカーおよび基準マーカーを連結させた状態を示す図である。
図21に示すように、多色マーカー600および基準マーカー200は、可撓性を有した材質で形成された連結材700によって連結されている。
【0217】
連結材700の材質としては、シリコン樹脂やゴム、プラスチックなどの可撓性を有した材質が挙げられる。連結材700は、この可撓性を有した材質を細い棒状に形成したものである。
【0218】
この可撓性を有した連結材700はU字状に折り曲げられ、連結材700の両端部に多色マーカー600が取り付けられ、多色マーカー600が帯状になるように連結されている。また連結材700を介して帯状に連結された多色マーカー600の両端部には、基準マーカー200が連結材700を介して連結されている。
【0219】
これにより、帯状に連結された多色マーカー600および基準マーカー200は、ひねり変形や曲がり変形などを自在にし、まるでイモムシかのように自在に帯状に連結された多色マーカー600および基準マーカー200を外力により変形することができる。
【0220】
このように帯状に連結された多色マーカー600および基準マーカー200を、撮像手段300が撮像し、その撮像手段300が撮像した画像情報を柔軟曲面形状算出装置400が処理を行うことによって、帯状に連結された多色マーカー600の位置ベクトルと姿勢とを得ることができる。
【0221】
なお、ここで連結材700は可撓性を有した材質であって、外力により帯状に連結された多色マーカー600および基準マーカー200が変形する例で説明したが、連結材700は、可撓性や柔軟性を有し、かつ三次元変形の制御が可能なソフトロボットであってもよい。
【0222】
またソフトロボットである連結材700を介して多色マーカー600および基準マーカー200を連結するだけでなく、自在に変形可能なソフトロボットに多色マーカー600および基準マーカー200を取り付けることもできる。
【0223】
これにより、連結材700を介して帯状に連結された多色マーカー600や、ソフトロボットに取り付けられた多色マーカー600の位置ベクトルと姿勢とを得ることができるので、柔軟曲面形状算出システム1000は、外力によるひねり変形や曲がり変形、ソフトロボットの曲げ・圧縮変形などを数値化して形状を可視化することができる。
【0224】
なお、ここでは多色マーカー600を帯状に連結させたり、多色マーカー600をソフトロボットに取り付ける例で説明したが、第1の実施の形態の多色マーカー100を帯状に連結させたり、多色マーカー100をソフトロボットに取り付けることで、対象物の形状を算出することもできる。
【0225】
図22は、第2の実施の形態の多色マーカー方向ベクトル算出手段の詳細を示すブロック図である。
図22に示すように、多色マーカー方向ベクトル算出手段410は、識別色検出部411、近接着色領域抽出部418、交点抽出処理部419、および方向ベクトル算出処理部417を備えている。
【0226】
識別色検出部411は、識別色を検出する処理を行うためのものであって、撮像手段300および近接着色領域抽出部418に接続されている。
具体的に識別色検出部411は、多色マーカー600および基準マーカー200が取り付けられた柔軟曲面Fを撮像手段300が撮像した画像情報を受け付けて、画像情報における多色マーカー600が有する識別可能な色で塗り分けられた赤色三角平面体611、緑色三角平面体621、青色三角平面体631、および黄色三角平面体641を識別色として検出する処理を行う。
【0227】
近接着色領域抽出部418は、識別色検出部411によって検出された各識別色の近接着色領域である三角形の中から近接する近接着色領域を抽出するためのものであって、識別色検出部411および交点抽出処理部419に接続されている。
【0228】
具体的に、近接着色領域抽出部418は、識別色検出部411によって検出された各識別色の三角形の頂点の距離を計算し、その頂点の位置関係から近接する三角形のみを抽出する。
【0229】
交点抽出処理部419は、近接着色領域抽出部418が抽出した近接する複数の三角形の情報から、各三角平面体が有する任意の頂点が1つで交わる交点Cを抽出する処理を行うためのものであって、近接着色領域抽出部418および方向ベクトル算出処理部417に接続されている。
【0230】
たとえば交点抽出処理部419は、近接する複数の三角形のうち、頂点が最も重なる点を交点Cとする処理を行う。または近接する三角形の各辺を延長し、延長線が最も重なる点を交点Cとする処理を行うこともできる。
【0231】
方向ベクトル算出処理部417は、3次元空間における多色マーカー600の方向ベクトルを算出するための算出処理を行うためのものであって、交点抽出処理部419および多色マーカー姿勢算出手段420に接続されている。
【0232】
具体的に方向ベクトル算出処理部417は、撮像手段300が撮像した画像情報の画角と、交点抽出処理部419が算出した2次元上における多色マーカー100の各交点Cの位置とから、撮像手段300の中心点と、柔軟曲面Fに取り付けられたそれぞれの多色マーカー100の交点Cと撮像手段300とを結ぶ方向ベクトルを算出する。
【0233】
また、方向ベクトル算出処理部417は、方向ベクトル算出処理部417が算出したそれぞれの方向ベクトルを、実際の座標系である世界座標系に変換する処理を行うこともできる。
【0234】
図23は、撮像手段が撮像した画像情報を多色マーカー方向ベクトル算出手段が受け付けてから多色マーカーの方向ベクトルを算出するまでの処理を示すフローチャートである。以下、
図23に示す処理をステップ番号に沿って説明する。
【0235】
〔ステップS41〕
撮像手段300が撮像した画像情報を受け付けた多色マーカー方向ベクトル算出手段410は、識別色を検出する。
具体的には、識別色検出部411が、撮像手段300が撮像した画像情報から多色マーカー600が有する赤色三角平面体611が表示する着色領域を識別色である赤色として検出し、緑色三角平面体621が表示する着色領域を識別色である緑色として検出し、青色三角平面体631が表示する着色領域を識別色である青色として検出し、黄色三角平面体641が表示する着色領域を識別色である黄色として検出する。
【0236】
〔ステップS42〕
多色マーカー方向ベクトル算出手段410は、近接する三角形を抽出する。
具体的には、ステップS41で識別色検出部411が検出した赤色のみを抽出した識別色画像(赤)と、ステップS41で識別色検出部411が検出した緑色のみを抽出した識別色画像(緑)と、ステップS41で識別色検出部411が検出した青色のみを抽出した識別色画像(青)と、ステップS41で識別色検出部411が検出した黄色のみを抽出した識別色画像(黄)とから、近接着色領域抽出部418が近接する三角形のみを抽出する。
【0237】
〔ステップS43〕
多色マーカー方向ベクトル算出手段410は、交点Cを抽出する。
具体的には、ステップS42で抽出された近接する複数の三角形のうち、頂点が最も重なる点を交点Cとして交点抽出処理部419が抽出、またはステップS42で抽出された近接する複数の三角形の各辺を延長し、延長線が最も重なる点を交点Cとして交点抽出処理部419が抽出する。
【0238】
〔ステップS44〕
多色マーカー方向ベクトル算出手段410は、方向ベクトルを算出する。
具体的には、ステップS43で交点抽出処理部419が算出した2次元上における多色マーカー100の各交点Cの位置と撮像した画像情報の画角とから、撮像手段300の中心と、柔軟曲面Fに取り付けられたそれぞれの多色マーカー100の交点Cと撮像手段300とを結ぶ方向ベクトルを方向ベクトル算出処理部417が算出する。
【0239】
〔ステップS45〕
多色マーカー方向ベクトル算出手段410は、方向ベクトルから座標系で位置ベクトルを示す際に必要な角度を算出する。
具体的には、ステップS44で方向ベクトル算出処理部417が算出した柔軟曲面Fに取り付けられたそれぞれの多色マーカー100の交点Cと撮像手段300とを結ぶ方向ベクトルから、多色マーカー100の位置ベクトルを座標系で示す際に必要な角度を算出する処理を方向ベクトル算出処理部417が行う。
【0240】
以上のように、撮像手段300が撮像した多色マーカー100および基準マーカー200を含む画像情報を柔軟曲面形状算出装置400が処理を行うことによって、柔軟曲面Fに取り付けられた多色マーカー100の位置ベクトルと姿勢とを得ることができるので、柔軟曲面形状算出システム1000は、たとえばカエルやヘビの表層面のように変形する柔軟曲面Fの動きや、ソフトロボットの曲げ・圧縮変形を数値化することができ、柔軟物の形状を可視化することができる。
【0241】
なお、本実施の形態の多色マーカー方向ベクトル算出手段410では、各矩形平面体に高低差を有する多色マーカー600の方向ベクトルを算出する例で説明したが、第1の実施の形態の多色マーカー100を本実施の形態の多色マーカー方向ベクトル算出手段410によって方向ベクトルを算出することもできる。
【符号の説明】
【0242】
100 多色マーカー
110 赤色三角平面体
120 緑色三角平面体
130 青色三角平面体
140 黄色三角平面体
200 基準マーカー
210 二次元コード
300 撮像手段
400 柔軟曲面形状算出装置
410 多色マーカー方向ベクトル算出手段
420 多色マーカー姿勢算出手段
430 多色マーカー位置ベクトル算出手段
500 出力手段
1000 柔軟曲面形状算出システム
C 交点
F 柔軟曲面