(57)【特許請求の範囲】
【請求項１】
撮影対象に対して照射された入射角の異なる複数の光の反射光ごとに生成される当該撮影対象の画像を取得する画像取得部と、
前記画像取得部によって取得された複数の画像を合成することにより色情報を平均化した画像である合成画像を構成する画素の色情報と、入射角の異なる光の反射光ごとに生成された各々の画像を構成する画素の色情報との比較に基づいて、前記撮影対象における当該画素に対応する部分の傾斜に関する情報を算出する算出部と、
前記算出部によって算出された前記傾斜に関する情報に基づいて、前記撮影対象の形状を推定する推定部と、
を備えることを特徴とする形状推定装置。
【請求項２】
撮影対象に対して第１の偏光フィルタを通過させて照射された光の反射光を第２の偏光フィルタを通過させることで正反射光を除外した反射光により生成される当該撮影対象の第１の画像、および前記撮影対象に対して照射された光の正反射光を除外していない反射光により生成される当該撮影対象の第２の画像を取得する画像取得部と、
前記画像取得部によって取得された前記第１の画像を構成する画素の色情報と、前記第２の画像を構成する画素の色情報との比較、および当該画像の生成に際して照射された光の前記撮影対象に対する入射角に基づいて、当該画素に対応する部分の傾斜に関する情報を算出する算出部と、
前記算出部によって算出された前記傾斜に関する情報に基づいて、前記撮影対象の形状を推定する推定部と、
を備えることを特徴とする形状推定装置。
【請求項３】
前記画像取得部は、
感知可能な光の角度が可変であるイメージセンサに前記反射光を感知させることによって生成される前記撮影対象の画像を取得し、
前記算出部は、
前記画像の取得に際して照射された光の前記撮影対象に対する入射角と、前記イメージセンサが感知する反射光の前記入射角に対する角度とに基づいて、前記傾斜に関する情報を算出する、
ことを特徴とする請求項１又は２に記載の形状推定装置。
【請求項４】
撮影対象に対して照射された入射角の異なる複数の光の反射光ごとに生成される当該撮影対象の画像を取得する画像取得ステップと、
前記画像取得ステップによって取得された複数の画像を合成することにより色情報を平均化した画像である合成画像を構成する画素の色情報と、入射角の異なる光の反射光ごとに生成された各々の画像を構成する画素の色情報との比較に基づいて、前記撮影対象における当該画素に対応する部分の傾斜に関する情報を算出する算出ステップと、
前記算出ステップによって算出された前記傾斜に関する情報に基づいて、前記撮影対象の形状を推定する推定ステップと、
を含むことを特徴とする形状推定方法。
【請求項５】
撮影対象に対して第１の偏光フィルタを通過させて照射された光の反射光を第２の偏光フィルタを通過させることで正反射光を除外した反射光により生成される当該撮影対象の第１の画像、および前記撮影対象に対して照射された光の正反射光を除外していない反射光により生成される当該撮影対象の第２の画像を取得する画像取得ステップと、
前記画像取得ステップによって取得された前記第１の画像を構成する画素の色情報と、前記第２の画像を構成する画素の色情報との比較、および当該画像の取得に際して照射された光の前記撮影対象に対する入射角に基づいて、当該撮影対象における前記画素に対応する部分の傾斜に関する情報を算出する算出ステップと、
前記算出ステップによって算出された前記傾斜に関する情報に基づいて、前記撮影対象の形状を推定する推定ステップと、
を含むことを特徴とする形状推定方法。
【請求項６】
前記画像取得ステップでは、
感知可能な光の角度が可変であるイメージセンサに前記反射光を感知させることによって生成される前記撮影対象の画像を取得し、
前記算出ステップでは、
前記画像の取得に際して照射された光の前記撮影対象に対する入射角と、前記イメージセンサが感知する反射光の前記入射角に対する角度とに基づいて、前記傾斜に関する情報を算出する、
ことを特徴とする請求項４又は５に記載の形状推定方法。
【請求項７】
請求項１から３のいずれか一つに記載の形状推定装置としてコンピュータを機能させるための形状推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、形状推定装置、形状推定方法および形状推定プログラムに関する。
【背景技術】
【０００２】
デジタル画像処理技術の進歩に伴い、３次元的な情報を持つ画像の画像処理技術について今後の発展が期待される。３次元的な情報をもつ画像の取得には、例えば、ステレオカメラ（３Ｄカメラ）が利用される。ステレオカメラは、撮影対象を複数の異なる方向から撮影することにより、３次元的な情報を記録可能としたカメラである。一般に、ステレオカメラは、１台のカメラに撮像系を２系統有することにより、人間の両眼と同様な視差を再現し、立体的な情報をもつ画像の撮影を可能とする。
【０００３】
一方、２次元的な情報を持つ画像から３次元的な情報を得る手法として、画像の輝度値と照明の方向とに基づいて、当該画像における３次元形状を推定するShape  From  Shadingと呼ばれる技術が存在する（例えば、非特許文献１及び２）。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】E.Prados、O.Faugeras、「Shape  From  Shading」、[online]、[平成２６年１１月１８日検索]、インターネット<ftp://ftp-sop.inria.fr/odyssee/Publications/2005/prados-faugeras:05.pdf>
【非特許文献２】R.Zhang、P.Tsai、J.E.Cryer、M.Shah、「Shape  from  Shading:  A  Survey」、[online]、[平成２６年１１月１８日検索]、インターネット<http://www.wisdom.weizmann.ac.il/~vision/courses/2010_2/papers/ZTCS99.pdf>
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の従来技術では、精度の高い形状情報を取得することができるとは限らない。すなわち、画像処理に用いられる画像は、常に同じものが写るよう安定した撮像系によって取得されることが望ましい。しかし、カメラによる撮影では、安定した画像を取得することが困難である。具体的には、光源とレンズなどの撮像系と対象物等との位置関係によっては、対象物に白飛びや歪みが発生する画像が取得される。この場合、上記の従来技術では、画像の輝度値を適切に判定することができないため、精度の高い形状情報を取得することが困難である。
【０００６】
上記の問題の解決のためには、例えば、スキャナを用いることにより、撮像系と対象物との位置関係を保つことが考えらえる。スキャナを用いて撮影することにより、光源と撮像系の位置関係の固定や、光源の移動による照明の均一化が実現され、対象物の明るさや、影や、色の変動などを軽減できる。また、スキャナでは、イメージセンサと呼ばれる画像データ取得装置が移動しながら画像を取得するので、画像の歪みを移動方向と直交した一方向に制限できる。しかし、スキャナによっても、撮像の対象物が凹凸を有する形状や、光沢部分を有するものである場合には、取得される画像に白飛び等が発生することを避け難い。また、スキャナ内部に２系統の撮像系を組み込み、視差による立体画像を得ることは、非常に複雑な構造となり、現実的ではない。
【０００７】
本願の開示する技術は、上記に鑑みてなされたものであって、精度の高い形状情報を取得することができる形状推定装置、形状推定方法および形状推定プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明の形状推定装置は、撮影対象に対して照射された光の反射光から生成される当該撮影対象の画像を取得する画像取得部と、前記画像取得部によって取得された画像を構成する画素のうち、当該画像の生成に際して照射された光を反射させた部分に対応する画素の色情報と、当該画像の生成に際して照射された光の前記撮影対象に対する入射角とに基づいて、当該画素に対応する部分の傾斜に関する情報を算出する算出部と、前記算出部によって算出された前記傾斜に関する情報に基づいて、前記撮影対象の形状を推定する推定部と、を備えることを特徴とする。
【発明の効果】
【０００９】
実施の形態に係る形状推定装置によれば、精度の高い形状情報を取得することができるという効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】図１は、第一の実施の形態に係る画像取得装置の構成を示す図である。
【図２】図２は、光源を一つだけ有するスキャンユニットが平面形状を有する対象物を撮像する状態を示す図である。
【図３】図３は、光源を一つだけ有するスキャンユニットが凹凸形状を有する対象物を撮像する状態を示す図である。
【図４】図４は、第一の実施の形態に係るスキャンユニットが凹凸形状を有する対象物を撮像する状態を示す図である。
【図５】図５は、第一の実施の形態に係るスキャンユニットが凹凸形状を有する対象物を撮像する状態を示す図である。
【図６】図６は、第一の実施の形態に係る画像取得装置の構成例を示す図である。
【図７】図７は、第一の実施の形態に係る記憶部の一例を示す図である。
【図８】図８は、第一の実施の形態に係る算出部の処理について説明する図である。
【図９】図９は、第一の実施の形態に係る推定部の処理について説明する図である。
【図１０】図１０は、第一の実施の形態に係る画像取得装置による処理手順を示すフローチャートである。
【図１１】図１１は、第二の実施の形態に係る画像取得装置の構成を示す図である。
【図１２】図１２は、第二の実施の形態に係る画像取得装置による処理手順を示すフローチャートである。
【図１３】図１３は、第三の実施の形態に係る画像取得装置が実行する算出処理を説明する図である。
【図１４】図１４は、形状推定プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【００１１】
以下に、本願に係る形状推定装置、形状推定方法および形状推定プログラムの実施形態を図面に基づいて詳細に説明する。なお、この実施形態により本願に係る形状推定装置、形状推定方法および形状推定プログラムが限定されるものではない。
【００１２】
［第一の実施の形態］
まず、図１を用いて、本願に係る形状推定装置に対応する画像取得装置１００が行う処理について説明する。図１は、第一の実施の形態に係る画像取得装置１００の構成を示す図である。画像取得装置１００は、例えば、対象物をスキャン（撮像）することにより対象物の画像を生成するイメージスキャナである。図１に示すように、画像取得装置１００は、スキャンユニット１１０と、制御部１３０とを有する。
【００１３】
スキャンユニット１１０は、撮像の対象である対象物６０が設置される原稿台８０の上部（あるいは、下部）を移動可能なように設置される。スキャンユニット１１０は、ＣＣＤセンサ１０と、光源２０１〜２０６とを有し、以下に説明する処理により、対象物６０を撮像する。なお、図１に示すように、対象物６０は、表面が凹凸する形状を有する。
【００１４】
ＣＣＤセンサ１０は、ＣＣＤ（Charge  Coupled  Device）を有するイメージセンサである。ＣＣＤセンサ１０は、対象物６０が反射させる光を感知する。そして、ＣＣＤセンサ１０は、感知した光を結像させ、その光による明暗を電荷の量に光電変換することにより、対象物の画像データを取得する。画像データは、例えば、ピクセル（画素）を示す座標と、各ピクセルの色情報（例えば、ＲＧＢカラーモデルをそれぞれ８ビット数（０〜２５５）で表現した値など）とにより構成される。なお、図示は省略しているが、ＣＣＤセンサ１０には、光を受光するレンズや、光をレンズ等の光学系へ導くミラー等が含まれる。また、ＣＣＤセンサ１０は、対象物６０に対して該直角に反射される光を感知するものとする。
【００１５】
光源２０１〜２０６は、撮像のために対象物６０に照射される光である照射光３０１〜３０６を発生させる。ここで、光源２０１〜２０６は、それぞれ異なる入射角で照射される照射光３０１〜３０６を対象物６０に照射する。図１に示すように、光源２０１から照射される照射光３０１は、光源２０２から照射される照射光３０２と比較して、対象物６０に対して鋭角となる照射光を発生させる。なお、図示は省略しているが、光源２０３〜２０６は、それぞれ照射光３０３〜３０６を発生させる。また、以下では、光源２０１〜２０６を区別する必要がない場合には、これらを総称して「光源２０」と表記する場合がある。同様に、照射光３０１〜３０６を区別する必要がない場合には、これらを総称して「照射光３０」と表記する場合がある。
【００１６】
スキャンユニット１１０は、照射光３０１を反射させた対象物６０から発生する拡散光３５を受光することにより、対象物６０を撮像する。言い換えれば、スキャンユニット１１０は、照射光３０１に対する対象物６０の反射光をＣＣＤセンサ１０に感知させることにより、対象物６０の画像データを取得する。この際、スキャンユニット１１０は、対象物６０が設置された原稿台８０上を移動することにより、対象物６０の全体を撮像する。これにより、スキャンユニット１１０は、撮像による画像の歪みを移動方向と直交した一方向に制限することができる。
【００１７】
同様に、スキャンユニット１１０は、光源２０２から照射される照射光３０２に対する対象物６０の反射光をＣＣＤセンサ１０に感知させることにより、照射光３０２に対応した対象物６０の画像データを取得する。さらに、スキャンユニット１１０は、照射光３０３〜３０６についても、それぞれ対応する対象物６０の画像データを取得する。このように、画像取得装置１００に係るスキャンユニット１１０は、複数の光源２０１〜２０６を有し、一の対象物６０について、入射角がそれぞれ異なる照射光３０１〜３０６により生成される複数の異なる画像データを取得する。
【００１８】
ここで、図２〜図５を用いて、第一の実施の形態に係るスキャンユニット１１０と、光源２０を一つだけ有するスキャンユニット１１５との違いについて説明する。図２は、光源２０を一つだけ有するスキャンユニット１１５が平面形状を有する対象物５０を撮像する状態を示す図である。
【００１９】
図２に示すように、スキャンユニット１１５は、光源２０から照射された照射光３０を反射する対象物５０を撮像する。このとき、対象物５０は、拡散光３５とともに、照射光３０の入射角と同じ角度で正反射光４０を反射する。正反射光４０は、鏡面反射光とも呼ばれ、一方向からの光が別の一方向に反射されて出て行く光のことをいう。ＣＣＤセンサ１０は、正反射光４０を受光した場合には、受光する光の強度が高すぎるため、対象物５０の画像データを適切に取得することができない。例えば、正反射光４０を受光したＣＣＤセンサ１０により取得された画像データに基づいて構成される画像には、白飛びと呼ばれる光沢を有する部分（以下、「白飛び部分」と表記する）が発生する。このような白飛び部分は、正反射光４０のように強い光をＣＣＤセンサ１０が感知することにより、対象物５０の色の諧調情報が失われ、撮像された部分が白一色として検出されることにより発生する。
【００２０】
このため、図２に示すように、スキャンユニット１１５は、対象物５０及びＣＣＤセンサ１０に対して照射光３０の入射角を調整し、正反射光４０を受光しないようにして、対象物５０を撮像する。結果として、スキャンユニット１１５は、対象物５０に対応する画像として、白飛び部分の発生しない画像５５を取得する。なお、図２において、照射光３０の入射角は、対象物５０の置かれた面に対する角度を示しているが、入射角は、ＣＣＤセンサ１０が光を感知する角度（すなわち、スキャン方向に対して直角）に対する角度でもよい。
【００２１】
次に、図３を用いて、スキャンユニット１１５が凹凸のある対象物６０を撮像する状態について説明する。図３は、光源２０を一つだけ有するスキャンユニット１１５が凹凸形状を有する対象物６０を撮像する状態を示す図である。
【００２２】
図３に示すように、対象物６０は、凹凸形状を有する。この場合、スキャンユニット１１５は、移動しながら対象物６０を撮像した場合に、特定の箇所において、正反射光４０を受光する。具体的には、スキャンユニット１１５は、対象物６０の特定の部分における傾斜に関する情報（例えば、対象物６０の当該部分における水平方向に対する傾斜角）が、ＣＣＤセンサ１０が感知する光の角度（図３においては、スキャン方向に対して直角）に対する照射光３０の入射角の２分の１の角度となる場合に、当該特定の部分から反射される正反射光４０を受光する。すなわち、スキャンユニット１１５によって撮像された画像６５には、対象物６０の特定の部分に対応した箇所に白飛び部分が発生する。このように、光源２０を一つだけ有するスキャンユニット１１５では、照射光３０の入射角が限定されるため、凹凸を有する対象物６０の特定の部分において反射される正反射光４０を受光する。この場合、画像６５に発生する白飛び部分は、対象物６０において照射光３０を反射させる部分であって、かかる部分で反射させた光がＣＣＤセンサ１０の受光する角度となるような特定の部分に対応する画素において発生する。詳しくは後述するが、この場合、スキャンユニット１１５が撮像する画像によれば、かかる特定の部分に関して、対象物６０の傾斜角を推定できるので、かかる特定の部分の形状のみを推定することができる。
【００２３】
一方、第一の実施の形態に係るスキャンユニット１１０は、以下に説明する手法により、対象物６０の形状を推定する。以下、図４及び図５を用いて、第一の実施の形態に係るスキャンユニット１１０が凹凸形状を有する対象物６０を撮像する処理について説明する。図４及び図５は、第一の実施の形態に係るスキャンユニット１１０が凹凸形状を有する対象物６０を撮像する状態を示す図である。
【００２４】
図４に示すように、スキャンユニット１１０は、光源２０１から照射される照射光３０１を用いて、対象物６０を撮像する。これにより、スキャンユニット１１０は、照射光３０１を正反射する特定の部分に白飛び部分が発生した画像６５１を取得する。同様に、スキャンユニット１１０は、光源２０２から照射される照射光３０２を用いて、対象物６０を撮像することにより、照射光３０２を正反射する特定の部分に白飛び部分が発生した画像６５２を取得する。同様に、スキャンユニット１１０は、光源２０３から照射される照射光３０３を用いて、対象物６０を撮像することにより、照射光３０３を正反射する特定の部分に白飛び部分が発生した画像６５３を取得する。
【００２５】
また、図５に示すように、スキャンユニット１１０は、光源２０４から照射される照射光３０４を用いて、対象物６０を撮像することにより、照射光３０４を正反射する特定の部分に白飛び部分が発生した画像６５１を取得する。同様に、スキャンユニット１１０は、光源２０５から照射される照射光３０５を用いて、対象物６０を撮像することにより、照射光３０５を正反射する特定の部分に白飛び部分が発生した画像６５５を取得する。同様に、スキャンユニット１１０は、光源２０６から照射される照射光３０６を用いて、対象物６０を撮像することにより、照射光３０６を正反射する特定の部分に白飛び部分が発生した画像６５６を取得する。
【００２６】
そして、画像取得装置１００に係る制御部１３０は、スキャンユニット１１０が取得した複数の画像６５１〜６５６を合成する。これにより、画像取得装置１００は、白飛び部分の発生しない（あるいは、白飛び部分が比較的少ない）画像を取得することができる。そして、画像取得装置１００は、合成した画像と、白飛び部分が発生している複数の画像６５１〜６５６との差分を抽出することにより、対象物６０において白飛び部分を発生させる部分を特定する。
【００２７】
そして、画像取得装置１００は、白飛び部分の発生している画像を取得する際に用いられた照射光３０の入射角に基づいて、白飛び部分に対応する対象物６０の部分における傾斜角を算出する。すなわち、画像取得装置１００は、照射光３０の入射角が分かれば、照射光３０がＣＣＤセンサ１０に対して直角に反射される正反射光４０を発生させた対象物６０の部分の傾斜角を算出することができる。これにより、画像取得装置１００は、取得した各々の画像の白飛び部分を発生させた対象物６０を構成する部分の傾斜角を求めることができる。そして、画像取得装置１００は、算出した部分の傾斜角に関する情報を結合させることにより、対象物６０の形状を推定することができる。
【００２８】
このように、画像取得装置１００は、入射角が異なる複数の光を発生させる光源２０１〜２０６を有し、光源２０１〜２０６から発生された光の照射対象である対象物６０が反射する光をＣＣＤセンサ１０に感知させることにより、対象物６０の画像を取得する。そして、画像取得装置１００は、画像が取得される際に照射された光の入射角に基づいて、画像に含まれる白飛び部分に対応する対象物６０の部分の傾斜角を算出する。そして、画像取得装置１００は、算出された対象物６０の部分の傾斜角に基づいて、対象物６０の形状を推定する。
【００２９】
これにより、実施の形態に係る画像取得装置１００は、一つの撮像系によって、立体的な情報を持つ画像を取得可能する。また、画像取得装置１００によれば、光源２０とＣＣＤセンサ１０からなる撮像系と、対象物６０の位置関係を固定した状態で撮像することができるため、安定した画像情報を取得することができる。そして、画像取得装置１００は、光源２０を複数備えるか、あるいは設置位置が可変する光源２０を備えることにより、入射角が異なる光を複数照射させることで対象物６０の形状を推定できるので、複雑な構造を要しない。また、画像取得装置１００は、固定された対象物６０に対して照射される複数の光の入射角に基づいて形状情報を推定するため、精度よく対象物６０の形状情報を取得することができる。
【００３０】
［画像取得装置の構成］
次に、図６を用いて、実施の形態に係る画像取得装置１００の構成について説明する。図６は、第一の実施の形態に係る画像取得装置１００の構成例を示す図である。
【００３１】
図６に例示するように、実施の形態に係る画像取得装置１００は、スキャンユニット１１０と、記憶部１２０と、制御部１３０と、ＩＦ（InterFace）部１４０とを有する。
【００３２】
スキャンユニット１１０は、ＣＣＤセンサ１０と、光源２０とを有し、対象物６０をスキャンすることにより、対象物６０の画像データを取得する。なお、前述のように、スキャンユニット１１０には、光源２０が複数備えられる。ただし、光源２０は、異なる入射角で照射することのできる複数の照射光３０を発生させることが可能であれば、複数備えられることを要しない。例えば、光源２０は、設置位置が可変であり、異なる入射角で照射光３０を対象物６０に照射することが可能であれば、一つでもよい。
【００３３】
記憶部１２０は、例えば、ＲＡＭ（Random  Access  Memory)、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、又は、ハードディスク、光ディスク等によって実現される。記憶部１２０は、制御部１３０が扱う情報を適宜記憶する。
【００３４】
例えば、記憶部１２０は、位置制御部１３１が制御する光源２０の位置情報を記憶する。具体的には、記憶部１２０は、光源２０が照射する照射光３０の入射角を記憶する。また、記憶部１２０は、スキャンユニット１１０が取得する対象物６０の撮像データを記憶する。この場合、記憶部１２０は、取得された撮像データと、当該撮像データが撮像された際の照射光３０の入射角とを対応付けて記憶する。また、記憶部１２０は、算出部１３３が算出する対象物６０の部分の傾斜角などの形状情報を記憶する。
【００３５】
ここで、図７に、第一の実施の形態に係る記憶部１２０の一例を示す。図７は、第一の実施の形態に係る記憶部１２０の一例を示す図である。図７に示した例では、記憶部１２０は、「画像ＩＤ」、「撮像データ」、「入射角」、「合成データ」、「差分データ」、「形状情報追加データ」といった項目を有する。
【００３６】
「画像ＩＤ」は、画像取得装置１００によって撮像される画像（あるいは、撮像の対象物）を識別するための識別情報を示す。「撮像データ」は、スキャンユニット１１０によって撮像されたデータを示す。実施の形態において、撮像データは、入射角の異なる光源ごとに、異なるデータとして記憶される。なお、図７においては、撮像データを「Ｃ１１１」のような概念で表示しているが、実際には、撮像データは、画像データと同じく、例えば、ピクセルを示す座標と、各ピクセルの色情報等により構成される。また、図７では、撮像データをＣ１１１〜Ｃ１１６の６種類表示しているが、実際には、一つの対象物に対して６種類よりも多い撮像データが記憶されてもよい。
【００３７】
「入射角」は、撮像データが撮像された際の光の入射角を示す。「合成データ」は、撮像データを合成した画像データを示す。「差分データ」は、各撮像データと合成データとの差分を示す。例えば、差分データは、色情報において差異が生じたピクセルの座標と、色情報の差異値により構成される。後述する算出部１３３は、差異が所定の閾値以上のピクセルが一定範囲を占める場合に、かかる範囲を白飛び部分と判定し、かかる範囲に対応する対象物６０の傾斜角を算出する。
【００３８】
「形状情報追加データ」は、撮像データ（あるいは、合成データ）に、対象物の形状情報が追加されたデータを示す。形状情報追加データは、例えば、画像データを構成するピクセルに、それぞれ算出された傾斜角の情報が追加されたデータである。このように、記憶部１２０は、画像取得装置１００による各処理の進行に伴い、画像ＩＤに紐づけられる各データを順次記憶していく。
【００３９】
例えば、図７では、画像ＩＤ「Ｐ００１」によって識別される画像について、種々の入射角により撮像されたデータが「Ｃ１１１」〜「Ｃ１１６」であり、それぞれの入射角は「４０度」、「３０度」、「２０度」、「−２０度」、「−３０度」、「―４０度」であり、撮像データを合成したデータが「Ｃ２０１」であり、「Ｃ２０１」とそれぞれの撮像データとの差分データが「Ｄ１１１」〜「Ｄ１１６」であり、差分データに基づいて算出された形状情報が追加された画像データが「Ｃ３０１」であることを示している。
【００４０】
制御部１３０は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路により実現される。また、制御部１３０は、例えば、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）等によって、図示しない記憶装置に記憶されているプログラムがＲＡＭを作業領域として実行されることにより実現される。
【００４１】
実施形態に係る制御部１３０は、図６に示すように、位置制御部１３１と、画像取得部１３２と、算出部１３３と、推定部１３４と、出力部１３５とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部１３０の内部構成は、図６に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
【００４２】
位置制御部１３１は、スキャンユニット１１０の位置及び光源２０の位置を制御する。具体的には、位置制御部１３１は、スキャンユニット１１０が対象物６０を撮像可能なように、原稿台の上部または下部を移動させるように制御する。
【００４３】
また、位置制御部１３１は、光源２０の位置が可変する場合には、光源２０の位置を調整する。例えば、位置制御部１３１は、図４及び図５に示す光源２０１〜２０６に対応する位置に光源２０を移動させ、それぞれ異なる入射角による照射光３０が対象物６０に照射されるように制御する。そして、位置制御部１３１は、光源２０の位置情報を記憶部１２０に適宜記憶する。
【００４４】
画像取得部１３２は、光源２０から発生された光の照射対象である対象物６０が反射する光をＣＣＤセンサ１０（イメージセンサの一例）に感知させることにより、対象物６０の画像を取得する。例えば、画像取得部１３２は、図４で示すように、光源２０１から照射された照射光３０を反射させた対象物６０に対応する画像である画像６５１を取得する。
【００４５】
この場合、画像取得部１３２は、画像６５１に含まれる白飛び部分に関する情報についても取得する。画像取得部１３２は、例えば、画像６５１に含まれる画素の輝度が所定の閾値以上であり、かつ、一定範囲に集中して分布している場合に、画像６５１に白飛び部分が含まれていると判定する。そして、画像取得部１３２は、例えば、画像に設定された座標によって、画像内の白飛び部分を特定する。そして、画像取得部１３２は、かかる白飛び部分の情報を、取得した画像情報とともに記憶部１２０に記憶する。
【００４６】
算出部１３３は、画像取得部１３２によって取得された画像を構成する画素のうち、画像の生成に際して照射された光を反射させた部分に対応する画素の色情報と、画像の生成に際して照射された光の対象物６０に対する入射角とに基づいて、当該画素に対応する部分の傾斜に関する情報を算出する。より具体的には、算出部１３３は、画像取得部１３２によって取得された複数の画像を合成することにより、画素の色情報を平均化した合成画像を構成する画素の色情報と、入射角の異なる光の反射光ごとに生成された各々の画像を構成する画素の色情報との比較に基づいて、対象物６０における当該画素に対応する部分の傾斜角を算出する。
【００４７】
まず、算出部１３３は、画像取得部１３２によって取得された画像について、対象物６０が凹凸の形状を有することによって生じた白飛び部分を特定する。具体的には、算出部１３３は、画像取得部１３２によって取得された複数の画像であって、同一の対象物６０を撮像対象とする画像を合成する。これにより、算出部１３３は、対象物６０を撮像した画像であって、白飛び部分の発生しない（あるいは、白飛び部分が比較的少ない）画像を取得する。言い換えれば、算出部１３３は、画像を構成する画素の色情報が平均化された画像である合成画像を取得する。続いて、算出部１３３は、合成した画像と、白飛び部分が発生している複数の各画像との色情報の差分を抽出する。そして、算出部１３３は、抽出した差分に基づいて、各画像に含まれる白飛び部分に該当するピクセルのうち、合成した画像に対応する箇所では白飛び部分でないピクセルを、正反射光４０を感知したことによる白飛び発生箇所（白飛び部分）として判定する。例えば、算出部１３３は、合成した画像では白飛び部分でないピクセルが、各画像に対応する箇所ではＲＧＢの全てが所定の閾値以上（例えば、２４０以上）である場合、当該ピクセルに対応する箇所を白飛び部分として判定する。かかる手法により、算出部１３３は、実際に対象物６０に白色が含まれている部分と、正反射光４０を感知することにより白色として検出された部分とを判別することができる。
【００４８】
続いて、算出部１３３は、取得された画像に基づいて白飛び部分と判定された部分であって、対象物６０に対応する部分の傾斜角を算出する。ここで、算出部１３３が算出する処理について、図８を用いて説明する。図８は、第一の実施の形態に係る算出部１３３の処理について説明する図である。なお、図８においては、図を簡略化するために、光源２０を一つだけ図示する。
【００４９】
図８の上図に例示するように、ＣＣＤセンサ１０が光を感知する角度に対して入射角が６０度となるように、光源２０から照射光３０が対象物７０に対して照射されているものとする。そして、ＣＣＤセンサ１０が照射光３０に対する正反射光４０を受光したとする。ここで、照射光３０の入射角と、正反射光４０の反射角とは等しくなるため、図８の上図における照射光３０の入射角と、正反射光４０の反射角は、ともに３０度となる。よって、算出部１３３は、照射光３０が正反射している対象物７０の部分の傾斜角は、３０度であると算出する。
【００５０】
同様に、図８の下図に例示するように、ＣＣＤセンサ１０が受光する角度に対して入射角が８０度となるように、光源２０から照射光３０が対象物７５に対して照射されている場合には、算出部１３３は、照射光３０が正反射している対象物７５の部分の傾斜角は、４０度であると算出する。
【００５１】
なお、対象物７０および対象物７５の全体の形状は、図８に示したような形状であるとは限られない。すなわち、算出部１３３は、一つの光源２０から照射される照射光３０のみでは、照射光３０を正反射させている部分の傾斜角が算出するため、対象物７０および７５の他の部分に係る傾斜角については、他の光源２０から取得される情報に基づいて、傾斜角を算出する。
【００５２】
すなわち、算出部１３３は、画像取得部１３２によって取得された画像に白飛び部分が発生している場合には、当該画像が取得された際の照射光３０の入射角に関する情報を取得し、異なる入射角ごと（言い換えれば、異なる光源２０ごと）に、白飛び部分を発生させた対象物に対応する部分の傾斜角を算出する。これにより、後述する推定部１３４は、対象物の全体の形状を推定することができるようになる。そして、算出部１３３は、算出した傾斜角などの形状情報を記憶部１２０に記憶する。なお、図８では、算出部１３３が、対象物６０に対する入射角に基づいて対象物６０の傾斜に関する情報を算出する例を示したが、算出部１３３は、所定の軸に対する入射角に基づいて対象物６０の傾斜に関する情報を算出してもよい。例えば、算出部１３３は、対象物６０が設置されている面との水平方向を軸とした光の入射角を求めてもよい。かかる手法によっても、算出部１３３は、イメージセンサ１０が感知する光の角度に対する入射角と反射角を求めることができるので、対象物６０の傾斜角を求めることができる。
【００５３】
推定部１３４は、算出部１３３によって算出された対象物６０の部分の傾斜角に基づいて、対象物６０の形状を推定する。ここで、推定部１３４が推定する処理について、図９を用いて説明する。図９は、第一の実施の形態に係る推定部１３４の処理について説明する図である。
【００５４】
図９では、推定部１３４が、算出部１３３によって算出された対象物６０の各部分の傾斜角に基づいて、対象物６０の形状を推定した状態を示している。図９において、対象物６０の部分６１１は、光源２０１から照射された照射光３０１により取得された画像に基づいて、算出部１３３が算出した傾斜角を対応させた部分である。同様に、対象物６０の部分６１２〜６１６は、照射光３０２〜３０６により取得された各画像に基づいて、算出部１３３が算出した各傾斜角を対応させた部分である。
【００５５】
このように、推定部１３４は、取得された画像のうち白飛び部分が発生している部分について算出部１３３が算出した傾斜角を対象物６０の形状情報として、対象物６０の形状を推定する。この場合、推定部１３４は、白飛び発生部分と合成画像との色情報の比較情報に基づいて、対象物６０の形状を推定してもよい。例えば、推定部１３４は、合成画像と、図４に示す画像６５１とを比較し、最も白色情報が強く変化している部分（例えば、ＲＧＢの要素において、最も輝度の差が大きく、合成画像に比べて白色に近づいていると判定される部分）については、正反射光４０を感知したものとして、この場合の照射光３０の入射角に基づいて算出される角度をかかる部分の傾斜角と推定する。そして、推定部１３４は、かかる部分の周辺（図４に示す、白色と黒色のグラデーションで示される箇所）については、例えば、画像６５１から推定される傾斜角と、画像６５２から推定される傾斜角との部分とを滑らかに結ぶ形状となることを推定する。このようにして、推定部１３４は、図９に示すような対象物６０の形状を推定することができる。なお、上述したように、算出部１３３は、撮影対象である対象物６０を設置した水平面や、対象物６０を設置した水平面と該直角となるイメージセンサ１０感知する光の角度を、光の入射角や反射角の軸とする。すなわち、実施形態における光の入射角や反射角は、撮影対象の微細な凹凸に対する厳密な入射角や反射角とは異なる場合がありうる。かかる場合であっても、上記のように推定部１３４は、算出部１３３が算出した対象物６０の各々の部分における傾斜に関する情報に基づいて、対象物６０全体の形状を推定することができる。
【００５６】
また、上述のように、算出部１３３は、照射光３０の入射角に基づいて対象物６０の部分における傾斜角を算出するため、傾斜角が４５度以上となる部分については傾斜角を算出できない場合がある。この場合、推定部１３４は、前後の傾斜角が４５度以下となる部分の形状に基づいて、他の部分の形状を推定する。例えば、推定部１３４は、図９に点線で示す部分６１７については、その前後の形状（傾斜角）に基づいて、形状を推定する。そして、推定部１３４は、部分６１１〜６１７等を結合させることにより、対象物６０の全体の形状を推定する。なお、後述する第三の実施の形態においては、画像取得装置１００は、イメージセンサが感知可能な光の角度を適宜変更することにより、部分６１７に対応する傾斜角を求めることができる。推定部１３４は、対象物６０の画像データと、推定された対象物６０の形状情報とを対応付けて、記憶部１２０に形状情報追加データとして適宜記憶する。
【００５７】
また、画像取得装置１００には、光源２０と対象物６０との間や、対象物６０とＣＣＤセンサ１０の間に、所定のスリットが設置されてもよい。これにより、画像取得装置１００は、照射光３０の入射角や、正反射光４０の反射角をより限定することができるため、形状の推定の精度を向上させることができる。
【００５８】
出力部１３５は、推定部１３４によって推定された対象物６０の形状情報に基づいて、三次元画像情報を出力する。なお、出力部１３５は、三次元画像情報ではなく、画像取得部１３２によって取得された二次元画像情報と、推定部１３４によって推定された対象物６０の形状情報から導出される対象物６０の断面情報とを対応付けて出力するようにしてもよい。例えば、出力部１３５は、三次元画像情報を外部装置であるディスプレイに表示可能な形式に変換し、変換されたデータをＩＦ部１４０に出力する。
【００５９】
ＩＦ部１４０は、例えば、ＮＩＣ（Network  Interface  Card）等であり、外部装置との間で各種データを送受信する。例えば、ＩＦ部１４０は、出力部１３５から出力される対象物６０の形状情報を外部装置の一例であるディスプレイに出力する。
【００６０】
［処理手順］
次に、図１０を用いて、第一の実施の形態に係る画像取得装置１００による処理の手順について説明する。図１０は、第一の実施の形態に係る画像取得装置１００による処理手順を示すフローチャートである。
【００６１】
図１０に示すように、画像取得部１３２は、位置制御部１３１によって制御されるスキャンユニット１１０を用いて、異なる入射角による複数の光を照射することにより、対象物６０について複数の画像を取得する（ステップＳ１０１）。
【００６２】
そして、算出部１３３は、画像取得部１３２によって取得された複数の画像を合成する（ステップＳ１０２）。そして、算出部１３３は、複数の画像によって合成された画像と、白飛び部分の発生している各画像との差分を抽出する（ステップＳ１０３）。これにより、算出部１３３は、対象物６０において白飛び部分を発生させる部分を特定する。
【００６３】
そして、算出部１３３は、各画像において特定した白飛び部分に対応する対象物６０における部分の傾斜角を算出する（ステップＳ１０４）。続いて、推定部１３４は、算出した傾斜角に対応する部分の形状情報を合成することにより、対象物６０の形状を推定する（ステップＳ１０５）。
【００６４】
［第一の実施の形態の効果］
上述してきたように、第一の実施の形態に係る画像取得装置１００は、画像取得部１３２と、算出部１３３と、推定部１３４とを備える。画像取得部１３２は、撮影対象（例えば、対象物６０）に対して照射された光の反射光から生成される対象物６０の画像を取得する。算出部１３３は、画像取得部１３２によって取得された画像を構成する画素のうち、画像の生成に際して照射された光を反射させた部分に対応する画素の色情報と、画像の生成に際して照射された光の対象物６０に対する入射角とに基づいて、当該画素に対応する部分の傾斜に関する情報（例えば、当該部分の傾斜角）を算出する。推定部１３４は、算出部１３３によって算出された傾斜に関する情報に基づいて、対象物６０の形状を推定する。
【００６５】
このように、第一の実施の形態に係る画像取得装置１００は、撮影対象に照射される光の入射角に基づいて、対象物６０の形状を推定することができる。また、画像取得装置１００によれば、光源２０とＣＣＤセンサ１０からなる撮像系と、対象物６０の位置関係を固定した状態で撮像することができるため、安定した画像情報を取得することができる。これにより、画像取得装置１００は、精度よく対象物６０の形状情報を取得することができる。
【００６６】
また、画像取得部１３２は、撮影対象に対して照射された入射角の異なる複数の光の反射光ごとに生成される撮影対象の画像を取得する。そして、算出部１３３は、画像取得部１３２によって取得された複数の画像を合成することにより、画素の色情報を平均化した合成画像を構成する画素の色情報と、入射角の異なる光の反射光ごとに生成された各々の画像を構成する画素の色情報との比較に基づいて、撮影対象における画素に対応する部分の傾斜角を算出する。
【００６７】
このように、画像取得装置１００は、入射角が異なる光を複数照射させることで取得される複数の画像に基づいて、対象物６０の形状を推定することができる。すなわち、画像取得装置１００は、複数の入射角の異なる光により生成される複数の画像を合成した画像と、各々の画像とを比較し、白飛び部分を特定したうえで、かかる部分の傾斜角を算出する。これにより、画像取得装置１００は、取得した画像に白飛び部分が含まれていると判定する場合には、かかる部分の傾斜角を入射角から求めることができる。また、画像取得装置１００は、取得した画像に白飛び部分が含まれていないと判定する場合には、かかる部分が平面形状であると求めることができる。このため、画像取得装置１００は、対象物６０の形状を高い精度で推定することが可能となる。
【００６８】
［第二の実施の形態］
上記の第一の実施の形態において、画像取得装置１００が取得した複数の画像を合成することで、対象物６０において白飛び部分を発生させる部分を特定する処理について説明した。ここで、画像取得装置１００は、異なる手法により、白飛び部分を発生させる部分を特定してもよい。
【００６９】
図１１は、第二の実施の形態に係る画像取得装置１００の構成を示す図である。図１１に示すように、画像取得装置１００に係るスキャンユニット１１０は、図１に示すスキャンユニット１１０と比較して、偏光フィルタ１６０及び１７０を有する点が異なる。なお、図１１においては、図を簡略化するために、光源２０を一つだけ図示する。
【００７０】
図１１に示すように、スキャンユニット１１０は、光源２０の前面に偏光フィルタ１６０を有し、ＣＣＤセンサ１０の前面に偏光フィルタ１７０を有する。光源２０から発生した照射光３０は、偏光フィルタ１６０を通過する。この場合、対象物６０に照射された照射光３０の反射光のうち、拡散光３５は、ランダム光に戻る。一方、対象物６０に照射された照射光３０の反射光のうち、正反射光４０は、偏光されたままの状態である。
【００７１】
そして、ＣＣＤセンサ１０は、拡散光３５の一部と、正反射光４０とを受光するものとする。ここで、ＣＣＤセンサ１０の前面には、偏光フィルタ１６０と対となる偏光フィルタ１７０が備えられている。このため、偏光フィルタ１７０を通過する正反射光４０は、すべて偏光フィルタ１７０によりカットされる。すなわち、ＣＣＤセンサ１０は、拡散光３５のみを感知する。
【００７２】
これにより、画像取得装置１００は、対象物６０を撮像した結果として、白飛び部分の発生しない画像６５を取得する。すなわち、第二の実施の形態に係る画像取得装置１００は、凹凸のある対象物６０を撮像する場合であっても、白飛び部分の発生しない画像６５を取得することができる。そして、画像取得装置１００は、取得した画像６５と、白飛び部分の発生している画像（例えば、図４及び図５に示す画像６５１〜６５６）とを比較し、差分を抽出することにより、対象物６０における白飛び部分の発生する部分を特定する。
【００７３】
このように、第二の実施の形態に係る画像取得装置１００によれば、偏光フィルタを通過した光を利用して撮像することにより得られた画像６５を用いるので、第一の実施の形態と比較して、精度よく対象物６０における白飛び部分の発生する部分を特定することができる。
【００７４】
なお、偏光フィルタ１６０および１７０を介した場合、ＣＣＤセンサ１０に到達する光量が減少する場合がある。この場合、画像取得装置１００は、光沢のない部分が偏光フィルタ１６０および１７０を用いずに撮影される場合と同じような感度で撮像されるように、感度を調整するようにしてもよい。あるいは、画像取得装置１００は、画像取得後に、デジタル画像のヒストグラム（histogram）が光沢部を除いて重なるように（例えば、２４ビットカラーの場合、ＲＧＢの各値が０〜２５５のうち、０〜２００程度の範囲が良く重なるように）、取得した画像に補正を加えてもよい。また、画像取得装置１００は、上記の感度調整とヒストグラムを用いた補正との両方を行っても良い。
【００７５】
［処理手順］
次に、図１２を用いて、第二の実施の形態に係る画像取得装置１００による処理の手順について説明する。図１２は、第二の実施の形態に係る画像取得装置１００による処理手順を示すフローチャートである。
【００７６】
図１２に示すように、画像取得部１３２は、偏光フィルタが前面に設置された光源２０およびＣＣＤセンサ１０を有するスキャンユニット１１０を用いて対象物６０を撮像する。すなわち、画像取得部１３２は、偏光フィルタを通すことにより、対象物６０について白飛び部分のない画像を取得する（ステップＳ２０１）。また、画像取得部１３２は、偏光フィルタを通さずに、複数の光源２０を用いて対象物６０の画像を取得する（ステップＳ２０２）。
【００７７】
そして、算出部１３３は、偏光フィルタを通して取得された画像と、白飛び部分の発生している各画像との差分を抽出する（ステップＳ２０３）。これにより、算出部１３３は、対象物６０において白飛び部分を発生させる部分を精度よく特定する。
【００７８】
そして、算出部１３３は、対象物６０において特定した白飛び部分に対応する部分の傾斜角を算出する（ステップＳ２０４）。続いて、推定部１３４は、算出した傾斜角に対応する部分の形状情報を合成することにより、対象物６０の形状を推定する（ステップＳ２０５）。
【００７９】
［第二の実施の形態の効果］
上述してきたように、第二の実施の形態に係る画像取得部１３２は、撮影対象に対して照射された光であって、偏光フィルタを通過した光の反射光から生成される対象物６０の画像を取得する。そして、第二の実施の形態に係る算出部１３３は、画像取得部１３２によって取得された画像のうち、偏光フィルタを通過した光の反射光により生成された画像の色情報（具体的には、対象物６０において、画像の生成に際して照射された光を反射させた部分に対応する画素の色情報）と、偏光フィルタを通過していない光の反射光により生成された画像の色情報との比較に基づいて傾斜角を算出する。
【００８０】
このように、第二の実施の形態に係る画像取得装置１００は、ＣＣＤセンサ１０が感知する光を偏光フィルタ１７０に通過させることにより、比較対象として、白飛び部分の発生しない画像６５を取得することができる。このため、画像取得装置１００は、第一の実施の形態と比較して、白飛び部分の有無を精度よく比較し、抽出することができる。言い換えれば、画像取得装置１００は、取得した画像において、対象物６０の凹凸形状により生じた白飛び部分を精度よく特定することができる。これにより、画像取得装置１００は、精度よく対象物６０の形状情報を取得することができる。
【００８１】
［第三の実施の形態］
上記の第一の実施の形態において、対象物６０の傾斜角の算出処理の性質上、４５度を超える傾斜角を算出することが困難であることを説明した。ここで、画像取得装置１００は、異なる手法により、４５度を超える傾斜角を算出する手法を実現してもよい。
【００８２】
図１３は、第三の実施の形態に係る画像取得装置１００が実行する算出処理を説明する図である。図１３に示すように、画像取得装置１００は、図１に示す画像取得装置１００と比較して、異なる角度から光を受光することのできるＣＣＤセンサ１０２を有する点が異なる。なお、図１３においては、図を簡略化するために、光源２０を一つだけ図示する。
【００８３】
図１３に例示するように、ＣＣＤセンサ１０１が光を感知する角度（直角）に対して入射角が７０度となるように、光源２０から照射光３０が対象物９０に対して照射されているものとする。ここで、図１３に示すように、対象物９０における受光部の傾斜角が４５度以上の場合には、正反射光４０が直角を超えて反射するため、ＣＣＤセンサ１０１では正反射光４０を受光することができない。
【００８４】
このため、第三の実施の形態に係る画像取得装置１００は、第２のＣＣＤセンサ１０２を備える。例えば、ＣＣＤセンサ１０２は、図１３に示すように、ＣＣＤセンサ１０１に対してマイナス４０度となる角度から照射される光を受光することが可能であるとする。
【００８５】
そして、ＣＣＤセンサ１０２が、光源２０から照射された入射角７０度の照射光３０の正反射光４０を受光したとする。この場合、画像取得装置１００は、以下に示す式（１）及び（２）により、対象物９０における受光部分の傾斜角５５度を算出することができる。
【００８６】
７０−（−４０）  ＝  １１０  ・・・  （１）
ｌｌ０÷２＝  ５５  ・・・  （２）
【００８７】
このように、第三の実施の形態に係る画像取得装置１００は、ＣＣＤセンサ１０１とは異なる角度の光を受光するＣＣＤセンサ１０２を備える。これにより、画像取得装置１００は、第一の実施の形態と比較して、対象物における４５度を超える角度を有する部分についても傾斜角を算出することができるので、より精度の高い形状を推定することができる。
【００８８】
なお、第三の実施の形態に係る画像取得装置１００は、ＣＣＤセンサ１０を複数備えるのではなく、設置位置が可変するＣＣＤセンサ１０を備えてもよい。この場合、位置制御部１３１は、ＣＣＤセンサ１０の設置位置を適宜制御することにより、ＣＣＤセンサ１０が種々の角度の光を受光可能なように調整する。
【００８９】
［第三の実施の形態の効果］
上述してきたように、第三の実施の形態に係る画像取得部１３２は、感知可能な光の角度が可変であるイメージセンサに反射光を感知させることによって生成される撮影対象の画像を取得する。そして、第三の実施の形態に係る算出部１３３は、画像の取得に際して照射された光の撮影対象に対する入射角と、イメージセンサが感知する反射光の入射角に対する角度とに基づいて、傾斜角を算出する。
【００９０】
これにより、第三の実施の形態に係る画像取得装置１００は、第一の実施の形態と比較して、より詳細な対象物の部分における傾斜角を算出することができる。具体的には、画像取得装置１００は、傾斜角が４５度を超える部分であっても、当該部分の傾斜角を算出することができる。このため、画像取得装置１００は、第一の実施の形態においては、前後の部分の形状から推定していた形状についても精度よく推定することができる。結果として、画像取得装置１００は、対象物６０について、精度の高い形状情報を取得することができる。
【００９１】
（構成等）
なお、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００９２】
また、本実施形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００９３】
（プログラム）
また、上記各実施形態に係る画像取得装置１００が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。この場合、コンピュータがプログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかるプログラムをコンピュータに読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。以下に、画像取得装置１００と同様の機能を実現する形状推定プログラムを実行するコンピュータの一例を説明する。
【００９４】
図１４は、形状推定プログラムを実行するコンピュータを示す図である。図１４に示すように、コンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ（Central  Processing  Unit）１０２０と、ハードディスクドライブインタフェース１０３０と、ディスクドライブインタフェース１０４０と、シリアルポートインタフェース１０５０と、ビデオアダプタ１０６０と、ネットワークインタフェース１０７０とを有する。これらの各部は、バス１０８０によって接続される。
【００９５】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１およびＲＡＭ（Random  Access  Memory）１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１０４１に接続される。ディスクドライブ１０４１には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース１０５０には、例えば、マウス１１１０およびキーボード１１２０が接続される。ビデオアダプタ１０６０には、例えば、ディスプレイ１１３０が接続される。
【００９６】
ここで、図１４に示すように、ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３およびプログラムデータ１０９４を記憶する。上記実施形態で説明した各情報は、例えばハードディスクドライブ１０９０やメモリ１０１０に記憶される。
【００９７】
また、形状推定プログラムは、例えば、コンピュータ１０００によって実行される指令が記述されたプログラムモジュール１０９３として、ハードディスクドライブ１０９０に記憶される。具体的には、上記実施形態で説明した画像取得装置１００が実行する各処理が記述されたプログラムモジュール１０９３が、ハードディスクドライブ１０９０に記憶される。
【００９８】
また、形状推定プログラムによる情報処理に用いられるデータは、プログラムデータとして、例えば、ハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、ハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して、上述した各手順を実行する。
【００９９】
なお、形状推定プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ１０４１等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、形状推定プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ＬＡＮ（Local  Area  Network）やＷＡＮ（Wide  Area  Network）等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【０１００】
１０  ＣＣＤセンサ
２０  光源
１００  画像取得装置
１１０  スキャンユニット
１２０  記憶部
１３０  制御部
１３１  位置制御部
１３２  画像取得部
１３３  算出部
１３４  推定部
１３５  出力部
１４０  ＩＦ部
【図１】
0006306494.tif 000002
【図２】
0006306494.tif 000003
【図３】
0006306494.tif 000004
【図４】
0006306494.tif 000005
【図５】
0006306494.tif 000006
【図６】
0006306494.tif 000007
【図７】
0006306494.tif 000008
【図８】
0006306494.tif 000009
【図９】
0006306494.tif 000010
【図１０】
0006306494.tif 000011
【図１１】
0006306494.tif 000012
【図１２】
0006306494.tif 000013
【図１３】
0006306494.tif 000014
【図１４】
0006306494.tif 000015