(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-08
(45)【発行日】2024-11-18
(54)【発明の名称】情報処理装置、情報処理方法、及びプログラム
(51)【国際特許分類】
G06T 15/50 20110101AFI20241111BHJP
G01N 21/17 20060101ALI20241111BHJP
G01N 21/47 20060101ALI20241111BHJP
G06T 19/00 20110101ALI20241111BHJP
【FI】
G06T15/50 600
G01N21/17 A
G01N21/47 B
G06T19/00 A
(21)【出願番号】P 2020161942
(22)【出願日】2020-09-28
【審査請求日】2023-09-19
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100090273
【氏名又は名称】國分 孝悦
(72)【発明者】
【氏名】神野 敬行
【審査官】渡部 幸和
(56)【参考文献】
【文献】特開2017-161370(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 15/50
G06T 19/00
G01N 21/17 - 21/59
(57)【特許請求の範囲】
【請求項1】
照明装置から光が照射された対象物体を撮像装置が撮像する際の少なくとも照明条件を、設定する設定手段と、
前記設定された照明条件と、前記対象物体の位置に対応する入射光の角度に関する情報と前記対象物体の光沢特性に関する情報とに基づいて、前記対象物体の位置ごとに反射特性の導出精度を決定する決定手段と、
を有することを特徴とする情報処理装置。
【請求項2】
前記決定手段は、前記入射光の角度に関する情報に対して、前記対象物体の光沢特性に関する情報に応じた重み付けを行うことを特徴とする請求項
1に記載の情報処理装置。
【請求項3】
前記入射光の角度に関する情報に対する前記重み付けは、前記対象物体の光沢特性が高いほど低くなる重み付けであることを特徴とする請求項
2に記載の情報処理装置。
【請求項4】
前記光沢特性に関する情報は、前記反射特性の反射ピーク角度の近傍の反射光の広がりに関する情報であることを特徴とする請求項
1から請求項
3のいずれか1項に記載の情報処理装置。
【請求項5】
前記光沢特性に関する情報は、前記対象物体の変角反射特性の空間2次元分布に基づき決定されることを特徴とする請求項
1から請求項
4のいずれか1項に記載の情報処理装置。
【請求項6】
前記決定手段は、ユーザの指定に基づく前記光沢特性に関する情報を用いて、前記導出精度を決定することを特徴とする請求項
1から請求項
4のいずれか1項に記載の情報処理装置。
【請求項7】
前記角度に関する情報は、前記照明装置と前記対象物体との相対的な位置関係と、前記照明装置が備えている複数の発光素子の点灯位置と、に基づいて決定される角度範囲および角度分解能であることを特徴とする請求項
1から請求項
6のいずれか1項に記載の情報処理装置。
【請求項8】
前記決定手段は、前記角度範囲を示す指標と前記角度分解能を示す指標とを乗算して前記導出精度を決定することを特徴とする請求項
7に記載の情報処理装置。
【請求項9】
前記決定手段は、前記角度範囲を示す指標と前記角度分解能を示す指標との線形和により前記導出精度を決定することを特徴とする請求項
7に記載の情報処理装置。
【請求項10】
前記決定手段は、前記角度範囲を示す指標と前記角度分解能を示す指標とに所定の重み付けをした加重平均により前記導出精度を決定することを特徴とする請求項
7に記載の情報処理装置。
【請求項11】
前記決定手段は、前記対象物体の位置ごとに、前記照明装置の点灯した二つの発光素子がなす角度のヒストグラムから、前記角度分解能を取得することを特徴とする請求項
7から請求項1
0のいずれか1項に記載の情報処理装置。
【請求項12】
前記決定手段は、前記対象物体の位置に対して、前記照明装置が備えている複数の発光素子のうち最も離れた二つの発光素子がなす角度から、前記角度範囲を取得することを特徴とする請求項
7から請求項1
1のいずれか1項に記載の情報処理装置。
【請求項13】
前記決定手段は、前記対象物体の位置ごとに、前記照明装置の点灯した二つの発光素子がなす角度のヒストグラムの最大値から、前記角度範囲を取得することを特徴とする請求項
7から請求項1
1のいずれか1項に記載の情報処理装置。
【請求項14】
前記導出精度をユーザに提示する提示手段をさらに有することを特徴とする請求項1から請求項1
3のいずれか1項に記載の情報処理装置。
【請求項15】
前記設定手段は、ユーザの指定に基づいて前記照明装置の照明条件を設定することを特徴とする請求項1から請求項1
4のいずれか1項に記載の情報処理装置。
【請求項16】
前記設定手段は、前記照明装置が備えている複数の発光素子のうち、ユーザが指定した点灯数に応じた点灯位置を、前記照明条件として設定することを特徴とする請求項1
5に記載の情報処理装置。
【請求項17】
前記設定手段は、前記照明装置が備えている複数の発光素子のうち、ユーザが指定した測定時間に関する情報に基づいて、前記照明条件を設定することを特徴とする請求項1
5または請求項1
6に記載の情報処理装置。
【請求項18】
前記照明装置が備えている複数の発光素子の点灯位置を変更したタイミングに同期して、前記撮像装置によって撮像された画像を基に、前記対象物体の位置ごとの反射特性の空間2次元分布を導出する導出手段をさらに有することを特徴とする請求項1から請求項1
7のいずれか1項に記載の情報処理装置。
【請求項19】
情報処理装置が実行する情報処理方法であって、
照明装置から光が照射された対象物体を撮像装置が撮像する際の少なくとも照明条件を、設定する設定ステップと、
前記設定された照明条件と、前記対象物体の位置に対応する入射光の角度に関する情報と前記対象物体の光沢特性に関する情報とに基づいて、前記対象物体の位置ごとに反射特性の導出精度を決定する決定工程と、
を有することを特徴とする情報処理方法。
【請求項20】
コンピュータを請求項1から請求項
18のいずれか1項に記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、物体の反射特性を取得するための情報処理技術に関する。
【背景技術】
【0002】
物体の素材や塗装の質感を表現する情報を取得するために、物体に光を照射して該物体からの反射光を測定し、物体に対して光源から照射される光の方向と物体を観察する方向とを基に、物体上の位置ごとの反射特性を取得する技術が知られている。特許文献1には、光源から光が照射された物体を撮像装置によって撮像して、物体の反射特性の分布を表す反射特性データを作成する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
前述した特許文献1のように物体の反射特性分布を導出する場合、物体上の位置によって反射特性の導出精度が異なる場合がある。しかしながら、特許文献1に記載の技術では、物体上の各位置における反射特性の導出精度を識別できない。
【0005】
そこで本発明は、対象物体上の位置ごとの反射特性の導出精度を識別可能にすることを目的とする。
【課題を解決するための手段】
【0006】
本発明の情報処理装置は、照明装置から光が照射された対象物体を撮像装置が撮像する際の少なくとも照明条件を、設定する設定手段と、前記設定された照明条件と、前記対象物体の位置に対応する入射光の角度に関する情報と前記対象物体の光沢特性に関する情報とに基づいて、前記対象物体の位置ごとに反射特性の導出精度を決定する決定手段と、を有することを特徴とする。
【発明の効果】
【0007】
本発明によれば、対象物体上の位置ごとの反射特性の導出精度を識別可能となる。
【図面の簡単な説明】
【0008】
【
図2】対象物体上の位置と測定角度との関係を示す図である。
【
図3】情報処理装置のハードウェア構成例を示す図である。
【
図4】第1実施形態の情報処理装置の機能構成を示す図である。
【
図5】第1実施形態に係る測定条件設定用のGUI例を示す図である。
【
図6】光源点灯位置に関する情報の例を示す図である。
【
図7】反射特性の導出精度を決定する方法の説明に用いる図である。
【
図8】光源(発光素子)間のなす角のヒストグラムを示す図である。
【
図9】角度分解能マップと角度範囲マップの例を示す図である。
【
図10】SVBRDFの導出精度マップの例を示す図である。
【
図11】対象物体上のある位置におけるBRDFの例を示す図である。
【
図12】反射特性の導出精度決定処理のフローチャートである。
【
図13】ユーザ設定条件に基づく反射特性導出処理のフローチャートである。
【
図14】第2実施形態の情報処理装置の機能構成を示す図である。
【
図15】光沢物体の入射角に対する反射光強度の例を示す図である。
【
図16】第2実施形態に係る測定条件設定用のGUI例を示す図である。
【
図17】光沢特性が異なる場合のSVBRDFの導出精度例を示す図である。
【
図18】SVBRDF導出精度に基づく光源点灯位置変更例を示す図である。
【発明を実施するための形態】
【0009】
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施形態は本発明を限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが本発明に必須のものとは限らない。以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。また以下に説明する各実施形態において、同一の構成には同じ符号を付して説明する。
【0010】
一般的な反射特性の測定方法は、大別して、画像群の撮像工程と、画像群を基に反射特性を決定する反射特性決定工程とからなる。撮像工程は、照明装置からの光源光を測定対象物体(測定対象の試料であり、以下、対象物体とする)に照射し、その対象物体からの反射光を2次元撮像装置(以下、撮像装置とする)が撮像する工程である。撮像工程では、光源(照明装置)と対象物体と撮像装置との間の相対位置関係が異なる複数の測定条件、例えば、対象物体に対する光源光の照射方向と当該対象物体に対する撮像装置の撮影方向とが異なった配置となる複数の測定条件が設定される。そして、撮像工程では、それら異なる測定条件ごとに対象物体を撮像した複数の画像からなる画像群が取得される。反射特性決定工程は、撮像工程で取得された画像群を基に、対象物体上の位置ごとのBRDF(変角反射特性)であるSVBRDF(変角反射特性の空間2次元分布特性)を決定する工程である。BRDFは、Bidirectional Reflectance Distribution Function(双方向反射率分布関数)の略称である。SVBRDFは、Spatilly Varying Bidirectional Reflectance Distribution Functionの略称である。
【0011】
しかしながらこの測定方法の場合、SVBRDFを高精度に取得するためには、対象物体に対して高い角度分解能で光源および撮像装置を配置する必要がある。そして、高い角度分解能で光源および撮像装置を配置するためには、光源と対象物体との間の距離、対象物体と撮像装置との間の距離を長くする必要があり、構成の大型化が避けられない。また、高い角度分解能を実現するために、光源や撮像装置を可動式にして、対象物体に対する相対位置関係を任意に設定できるようにした場合、光源や撮像装置をそれぞれ設定された位置に移動させて測定を行う必要がある。この場合、それらを任意の位置まで移動させて設置するための時間が必要になり、移動と設置、さらに測定が終わるまでに、長い時間がかかる。またBRDFの測定精度は、光源や撮像装置をそれぞれ任意の位置に移動させて設置する際の位置制御の精度に依存することになり、例えば位置制御の精度が低い場合にはBRDFの測定精度も低下する。
<第1実施形態>
【0012】
本実施形態では、
図1に示すような照明装置102と撮像装置103とを有する構成において、高い角度分解能でかつ高速にSVBRDFの取得を可能にする例を説明する。
図1の構成において、照明装置102は、拡散光源である複数の発光素子101が2次元格子(アレイ)状に配置されており、それら発光素子101を個々に点灯・消灯駆動可能な光源装置である。本実施形態において、照明装置102は、後述する
図3と
図4に示す情報処理装置3によって発光素子101の点灯・消灯が制御される。また詳細は後述するが、情報処理装置3は、ユーザが設定した照明条件に基づいて照明装置102のいずれの発光素子101を点灯・消灯させるかを制御可能となされている。
【0013】
対象物体104は、反射特性の測定対象物体である。
撮像装置103は、テレセントリック光学系を有したデジタルカメラ等の2次元撮像装置であり、照明装置102からの光源光が対象物体104で反射された光を、光軸に平行な光にして撮像する。
【0014】
図1の構成において、照明装置102は発光素子101の点灯位置を順に変更した光源光を対象物体104に照射する。撮像装置103は、それら点灯位置が順に変更された光源光が対象物体104で反射した光のうち撮像装置103の主光軸に対して平行な光を、テレセントリック光学系を用いて順次撮像することで画像群を取得する。そして、画像群は、
図1には不図示の後述する情報処理装置3に送られ、情報処理装置3は、画像群を基に対象物体上の各位置におけるBRDFを導出しSVBRDFを決定する。
【0015】
ここで
図2を用いて、
図1の照明装置102から対象物体104の各位置に照射される光源光の入射角度の範囲および角度分解能の違いと、それによる対象物体上の各位置におけるBRDFの導出精度への影響とについて説明する。
図2(a)は、
図1の構成を真上から見た場合の照明装置102と対象物体104と撮像装置103内の撮像センサ201との配置関係を示した図である。照明装置102内の白丸(○)はそれぞれ発光素子101を表しているとする。撮像センサ201において、正方形の四角として描かれている部分は、それぞれが受光素子を表しており、画素に対応しているとする。前述したように撮像装置103はテレセントリック光学系を有しているため、対象物体104の例えば点A、B、Cの位置からの反射光は、平行光として撮像センサ201の受光素子A´、B´、C´によって受光される。
【0016】
照明装置102は、後述する情報処理装置3による制御の下で、2次元格子状に配置された各発光素子101の点灯位置を順次変更する。このため、対象物体104の点A、B、Cの各位置に照射される光源光の入射角は、発光素子101の点灯位置に応じて順次変化する。発光素子101の点灯位置に応じて順に変化する入射角の光源光は、対象物体104の各点A、B、Cで反射し、反射光のうち撮像センサ201の主光軸に対する平行光が撮像センサ201の受光素子A´、B´、C´によって受光される。対象物体104上の点A、B、C以外の他の各位置においても同様に、発光素子101の点灯位置に応じて光源光の入射角が変化し、その反射光が平行光として撮像センサ201の対応する受光素子にて受光される。すなわち
図2(a)の構成では照明装置102の発光素子101の点灯位置を順に変更して撮像が行われるため、撮像装置103は、対象物体104上の位置ごとに異なる入射角度の光源光が反射された光を撮像する。
【0017】
図2(b)は、対象物体104の点Aに照射される光源光の入射角を横軸に表し、その点Aからの反射光を受光素子A´が受光した光量を反射率に変換した値を縦軸に表したグラフである。
図2(b)の各グラフ中の黒丸で示される各プロットは受光素子A´の受光量を反射率に変換した値であり、各プロットを繋いだ曲線は変角反射率(BRDF)の測定値を示している。同様に、
図2(c)は、対象物体104の点Bにおける光源光の入射角とその反射光を受光素子B´が受光した光量を変換した反射率の値を表したグラフである。
図2(d)は、対象物体104の点Cにおける光源光の入射角とその反射光を受光素子C´が受光した光量を変換した反射率の値を表したグラフである。
【0018】
図2(c)のグラフに示すように、対象物体上の中心付近である点Bでは、正反射角から離れた角度からの入射光を含む反射率の測定が可能であることがわかる。さらに
図2(c)のグラフからは測定角度範囲の全体にわたって角度分解能が高く、BRDFを高精度に取得可能なことがわかる。一方、
図2(b)のグラフに示すように、対象物体上で照明装置102からの距離が近い点Aでは、正反射角から離れた角度からの入射光は含むものの、片側はBRDFの裾まで十分に計測出来ているとは言えない。さらに
図2(b)のグラフからは、正反射角近傍の角度分解能が低く、BRDFの導出精度が低くなることがわかる。また、
図2(d)のグラフに示すように、対象物体上で照明装置102からの距離が遠い点Cでは、角度分解能は高いものの測定角度範囲が狭く、正反射角を挟んで片側の角度はほとんど計測出来ていないことがわかる。
【0019】
すなわち
図1の構成の場合、対象物体上の位置によって、反射特性の導出精度が異なる。このように対象物体上の位置毎に反射特性の導出精度が異なる場合には、照明装置102の発光素子101の点灯位置を適切に制御することで、より高精度にSVBRDFを決定することができる。本実施形態の場合、照明装置102の各発光素子の点灯位置は、情報処理装置3を介して、ユーザが任意に設定可能となされている。この場合、ユーザは、対象物体上のどの位置の反射特性の導出精度が高いのか又は低いのかを認識した上で、照明装置102の点灯位置を適切に設定する必要がある。しかしながら、
図1の構成の場合、ユーザは対象物体上のどの位置の反射特性の導出精度が高いのか又は低いのかを把握することができない。したがって、ユーザは、対象物体の反射特性を測定するときの発光素子の点灯位置を適切に設定することができない。
【0020】
そこで、本実施形態の情報処理装置は、対象物体上の各位置に照射される光源光の入射角度の範囲および角度分解能を計測し、それらを基に反射特性の導出精度を決定して、ユーザに提示する機能を有する。これにより、ユーザは対象物体上の位置毎に反射特性の導出精度を認識でき、対象物体の反射特性の導出前に、ユーザが
図1の構成に適切な測定条件を設定できるようになる。
【0021】
図3は、対象物体上の位置毎の反射特性の導出精度をユーザに提示可能とするための情報処理を実行可能な、本実施形態に係る情報処理装置3のハードウェア構成例を示すブロック図である。
情報処理装置3は、CPU301、ROM302、RAM303、VC304、汎用I/F305、SATAI/F306、およびNIC307を備える。なお、CPUはCentral Processing Unit、ROMはRead Only Memory、RAMはRandom Access Memory、VCはVideo Cardの略である。また、I/FはInterface、SATAはSerial Advanced Technology Attachment、NICはNetwork Interface Cardの略である。
【0022】
CPU301は、RAM303をワークメモリとして、ROM302、HDD313などに格納されたOSや各種プログラムを実行する。HDDはHard Disk Drive、OSはOperating Systemの略である。また、CPU301は、システムバス308を介して各構成を制御する。なお、情報処理装置3における後述するフローチャートの処理は、ROM302やHDD313などに格納された本実施形態に係るプログラムコードがRAM303に展開されて、CPU301により実行されることで実現される。
【0023】
VC304には、ディスプレイ315が接続される。汎用I/F305には、シリアルバス309を介して、マウスやキーボードなどの入力デバイス310や撮像装置311が接続される。SATA I/F306には、シリアルバス312を介して、HDD313や各種記録メディアの読み書きを行う汎用ドライブ314が接続される。NIC307は、外部装置との間で情報の入力及び出力を行う。CPU301は、HDD313や汎用ドライブ314にマウントされた各種記録メディアを各種データの格納場所として使用する。CPU301は、プログラムによって提供されるGUI(グラフィカルユーザインタフェース)をディスプレイ315に表示し、入力デバイス310を介して受け付けるユーザ指示などの入力を受信する。
【0024】
<情報処理装置の機能構成>
図4は、本実施形態の情報処理装置3の機能構成を示したブロック図である。
図3のCPU301は、RAM303をワークメモリとして、ROM302またはHDD313に格納された本実施形態に係るプログラムを読み出して実行することによって、
図4に示す各機能部に係る処理を実現する。なお、以下に示す機能部に係る処理の全てがCPU301によって、実行される必要はなく、処理の一部または全てがCPU301以外の一つまたは複数の処理回路によって行われるように情報処理装置3が構成されていても良い。
【0025】
情報処理装置3は、条件格納部401、条件設定部402、精度決定部403、精度出力部404、照明制御部405、撮像制御部406、および特性導出部407で示す各機能部を有する。情報処理装置3は、
図1の構成で対象物体の反射特性を取得するときの照明条件に対するSVBRDFの導出精度を決定する。また、情報処理装置3は、その導出精度をユーザに対して提示したことに応じて、ユーザにより設定された条件(照明条件と撮影条件)を基に、照明装置102と撮像装置103とを制御して、対象物体104の照明および撮像を行わせる。そして、情報処理装置3は、ユーザ設定の照明条件と撮影条件の下で撮像装置103により取得された画像群を基にSVBRDFを導出する。
【0026】
図5は、照明条件と撮影条件をユーザが設定する際に用いられる測定条件設定用のGUI500の例を示した図である。GUI500は、情報処理装置3のCPU301により生成されて、VC304を介して
図3のディスプレイ315に表示される。GUIはGraphical User Interfaceの略である。
【0027】
GUI500には、照明装置102の照明条件を設定するための項目として、光源(発光素子101)の点灯数を「多い」、「普通」、「少ない」の中から選択可能にするラジオボタン501(オプションボタン)が選択肢として設けられている。光源点灯数の「多い」、「普通」、「少ない」は、反射特性の測定時間すなわち測定処理の速度に対応している。例えば光源点灯数が少なければ測定時間は短くなって高速処理が可能となり、光源点灯数が多ければ測定時間は長くなって処理が低速になり、光源点灯数が普通(中程度の数)であれば測定時間も中程度で処理速度も中程度となる。ユーザは、入力デバイス310の操作を介してラジオボタン501のいずれかを指定することで、「多い」、「普通」、「少ない」の選択肢の中から何れかを選択することができる。そして、ユーザによっていずれかの選択肢が選択された上で決定ボタン504が押下されると、条件設定部402は、その選択された選択肢に応じて、照明装置102の光源点灯数を設定し、さらに当該光源点灯数を基に光源点灯位置を設定する。
【0028】
また
図5に示すように、GUI500には、光源点灯数以外の他の照明条件を設定するための項目として、測定時間に関する情報としての光源点灯時間を指定するためのスライダーおよびスライドバー510が設けられている。光源点灯時間は光源点灯数に対応付けられており、条件設定部402は、指定された光源点灯時間に基づいて光源点灯数を決定する。条件設定部402は、例えば短い光源点灯時間が指定された場合には光源点灯数を少なく設定し、長い光源点灯時間が指定された場合には光源点灯数を多く設定し、中程度の光源点灯時間が指定された場合には光源点灯数を中程度の数に設定する。ユーザは、入力デバイス310の操作を介して、スライダーを移動させ、さらに決定ボタン504を押下することで、光源点灯時間(測定時間に関する情報)を指定することができる。条件設定部402は、ユーザがスライダーを移動させることで指定した光源点灯時間(測定時間に関する情報)に基づいて、光源点灯数を設定する。
【0029】
さらにGUI500には、撮像装置103の撮影条件を設定するための項目として、シャッタースピードを設定するためのスライダーおよびスライドバー511とゲインを設定するためのスライダーおよびスライドバー512が設けられている。ユーザは、入力デバイス310の操作を介して、スライダーを移動させた上で決定ボタン504を押下することで、それらの条件を指定することができる。
【0030】
条件格納部401は、前述した照明条件や撮影条件に関する情報を格納している。
図6(a)~
図6(c)は、照明条件のうち光源点灯数の「多い」、「普通」、「少ない」の各選択肢に対応した光源点灯位置に関する情報の一例を示した図である。
図6(a)は光源点灯数が多い場合、
図6(b)は光源点灯数が普通(半分程)の場合、
図6(c)は光源点灯数が少ない場合の例である。
図6(a)~
図6(c)に示した2次元格子の一つの格子は照明装置102上の対応した一つの発光素子(光源)を表しており、各格子内に記された点灯情報の「1」は光源の「点灯」を表し、「0」は光源の「非点灯」を表している。言い換えれば点灯情報の「1」(「0」)は、光源点灯位置(光源非点灯位置)に関する情報である。これら点灯情報(光源点灯位置に関する情報)は、条件格納部401にN×N行列の情報として格納されていても良いし、1次元のリストの情報として格納されていても良い。
【0031】
また、前述したような光源点灯位置に関する情報を含む光源点灯数は、ファイルの指定により選択されてもよい。例えば
図5のGUI500には、ファイル指定を示すラジオボタン502が設けられている。ユーザが、当該ラジオボタン502を指定した上で、参照ボタン503を押下すると、情報処理装置3は、条件格納部401に格納されている複数のファイルが画面上で参照可能な形態としてユーザに提示する。なお、画面上で参照可能な形態の複数のファイル等を示す画面の情報は、情報処理装置3の例えばCPU301が生成するものとする。例えば、条件格納部401には、光源の点灯/非点灯を「1」/「0」で記した
図6(a)~
図6(c)と同形式のファイルが予め格納されている。CPU301は、参照ボタン503が押下されると、条件格納部401に格納されているファイルの一覧を示す画面を生成し、GUI500上又は別ウィンドウに参照可能な状態として提示する。そして、そのファイルの一覧の中から何れかのファイルをユーザが指定すると、条件設定部402は、その指定されたファイルを条件格納部401から読み出し、当該ファイルによる各光源点灯数(光源点灯位置)を照明装置102に設定する。
【0032】
なお、条件格納部401には、光源点灯位置に関する情報の他に、光源点灯時間の照明条件に関する情報、シャッタースピードやゲインの撮影条件に関する情報が格納されていてもよい。光源点灯時間は光源点灯数と対応付けて格納されており、光源点灯時間がユーザにより指定されると、条件設定部402は、その光源点灯時間に応じた光源点灯数(光源点灯位置に関する情報)を取得する。また例えば、ユーザによりシャッタースピードやゲインが指定されると、条件設定部402は、その指定に応じて撮像装置103のシャッタースピードやゲインを設定する。
【0033】
精度決定部403は、条件設定部402で設定された照明条件(本実施形態では光源点灯数に応じた光源点灯位置の照明条件)を取得し、その光源点灯位置に基づいてSVBRDFの導出精度を決定する。
精度決定部403によるSVBRDFの導出精度の決定方法について、
図7を用いて説明する。
図7は、前述した
図2(a)と同様に、
図1の構成を真上から見た場合の照明装置102と対象物体104と撮像装置103内の撮像センサ201との配置関係を示した図である。
【0034】
図7に示した配置関係において、照明装置102と撮像装置103(撮像センサ201)と対象物体104との、相対的な位置関係(距離や角度)は既知であるとする。また前述したように、対象物体104で反射された光は、撮像装置103のテレセントリック光学系により平行になされて撮像センサ201で受光される。このため、対象物体104上の位置701は、撮像センサ201上の受光素子の位置704(画素位置)から決定することができる。さらに照明装置102に設けられている複数の光源(発光素子)のうち、ある光源L1の位置702は、照明装置102における当該光源L1の発光素子の配置位置から決定することができる。また、光源L1と隣接している光源L2の位置703は、照明装置102における当該光源L2の発光素子の配置位置から決定することができる。
【0035】
ここで、対象物体104上の位置701のxyz座標が(xS,yS,zS)で表され、また、光源L1の位置702が(xL1,yL1,zL1)、光源L2の位置703が(xL2,yL2,zL2)のxyz座標でそれぞれ表されるとする。また、対象物体104上の位置701から光源L1(位置702)へのベクトルをmuとし、位置701から光源L2(位置703)へのベクトルをmvとすると、それらベクトルmuおよびベクトルmvは、下記の式(1)で表される。さらに、ベクトルmuとベクトルmvとがなす角の角度θは、下記の式(2)から決定される。
【0036】
mu=(xL1-xS,yL1-yS,zL1-zS)
mv=(xL2-xS,yL2-yS,zL2-zS) 式(1)
【0037】
θ=arccos((mu・mv)/(|mu|・|mv)) 式(2)
【0038】
このように、精度決定部403は、照明装置102上で隣接する位置702と位置703の二つの光源が対象物体104上の位置701に対してなす角度θを決定する。また精度決定部403は、照明装置102上で位置702と位置703の二つの光源の配列方向に対して直交する方向の隣接した二つの光源についても同様にして、それら光源が対象物体104上の位置701に対してなす角度θを決定する。精度決定部403は、撮像センサ201の各画素(受光素子)に対応した、対象物体104上の位置ごとに、照明装置102上の全ての光源について前述同様に角度θを決定し、それら角度θのヒストグラムを算出する。
図8(a)は、撮像センサ201の各画素に対応した、対象物体104上の位置毎に決定した角度θのヒストグラムを示した図である。
【0039】
さらに精度決定部403は、角度θのヒストグラムを基に、角度分解能の精度の高さを示す指標を算出する。この指標は、ヒストグラムにおいて予め設定された角度以下の頻度の高さから決定することで算出できる。指標はこれに限定されるものではなく、例えば
図8(b)に示すようにヒストグラムを関数近似したグラフを求め、そのグラフ上で所定の頻度(ここでは最大頻度の50%)における幅を用いても良い。また指標は、より単純に、角度θの最小値を用いることも可能である。このように、精度決定部403は、撮像センサ201の各画素に対応した、対象物体104上の位置毎に、角度分解能の精度の高さを示す指標を算出する。
【0040】
また精度決定部403は、前述した角度分解能だけでなく、撮像センサ201上の各画素の角度範囲の指標をも算出する。例えば精度決定部403は、照明装置102の位置705と位置706の光源のように、当該照明装置102内で最も離れた二つの光源が対象物体104の位置701となす角度θを前述同様にして求め、それを角度範囲の指標とする。あるいは、精度決定部403は、
図8(a)に示した角度θのヒストグラムの最大値を、角度範囲の指標として求めてもよい。
【0041】
そして、精度決定部403は、前述のようにして決定した角度分解能の指標と角度範囲の指標とを用いて、対象物体104の各位置におけるSVBRDFの導出精度を決定する。
図9(a)は角度分解能マップの例を示し、
図9(b)は角度範囲マップの例を示した図である。
図9(a)および
図9(b)の一つの格子(マス)は、撮像センサ201の一つの画素(受光素子)に対応しているとする。撮像センサ201の各画素(受光素子)は対象物体104上の各位置に対応しているため、
図9(a)と
図9(b)は、対象物体104上の各位置における角度分解能マップと角度範囲マップに相当する。
図9(a)において格子のグレー濃度が高い(濃い)ほど角度分解能が高いことを示しており、
図9(b)において格子のグレー濃度が高い(濃い)ほど角度範囲が広いことを示している。
【0042】
精度決定部403は、
図9(a)の角度分解能マップと
図9(b)の角度範囲マップとを基に、
図10に示すようなSVBRDF導出精度マップを決定する。なお
図10において、グレー濃度が高い格子ほどSVBRDFの導出精度が高いことを示している。例えば、精度決定部403は、角度分解能の指標と角度範囲の指標とを乗算することでSVBRDF導出精度を決定する。また例えば、精度決定部403は、角度分解能の指標と角度範囲の指標とを線形和することでSVBRDF導出精度を決定しても良い。さらに例えば、精度決定部403は、角度分解能の指標と角度範囲の指標とに所定の重み付けをした加重平均により、SVBRDF導出精度を決定しても良い。このようにして精度決定部403により決定されたSVBRDF導出精度の情報は精度出力部404に送られる。
【0043】
精度出力部404は、精度決定部403で決定されたSVBRDFの導出精度を示す情報を出力する。そして、例えばCPU301は、このSVBRDFの導出精度を示す情報を基に、SVBRDFの導出精度を表示するためのプレビュー画像を生成し、そのプレビュー画像を
図5のGUI500上または別ウィンドウに表示させるようにする。これによりユーザは、SVBRDFの導出精度を確認することができる。また、ユーザは、SVBRDFの導出精度を確認した上で、当該SVBRDFの導出精度と光源点灯数に対応する測定時間とを鑑みて、光源点灯数を決定することができる。なおプレビュー画像は
図10に示したSVBRDFの導出精度マップを表す画像とするが、例えば
図9(a)の角度分解能マップや
図9(b)の角度範囲マップを表す画像が、SVBRDFの導出精度を表すプレビュー画像として用いられてもよい。
【0044】
照明制御部405は、条件設定部402で決定された光源点灯位置の情報に基づいて、照明装置102の各発光素子101のうち点灯情報が「1」となる光源を順次点灯させる。
撮像制御部406は、条件設定部402で決定された光源点灯位置に基づいて照明制御部405が照明装置102の光源を順次点灯させるタイミングに応じて、撮像装置103での撮像を逐次実行させるように制御する。なおこの場合、照明制御部405は、発光素子101を順次点灯させる際の同期信号を撮像制御部406に送り、撮像制御部406は、照明制御部405からの同期信号をトリガとして撮像タイミングを制御する。これにより、照明装置102における順次点灯のタイミングと、撮像装置103における撮像タイミングとを同期させた撮像が行われる。
【0045】
特性導出部407は、撮像装置103によって撮像された画像群を基に、SVBRDFを導出する。
図11は、対象物体104上の注目位置に対する光源光の入射角度と、当該注目位置に対応した撮像センサ201上の受光素子(画素)の画素値(グラフ中のプロット点)と、導出されたSVBRDF1101との関係を示すグラフである。SVBRDFの導出には、PhongモデルやTorrance-Sparrowモデルなどの既知の反射モデル、あるいはガウス関数近似や多項式近似などを用いることが出来る。モデル式や関数の係数は、最小二乗法など既知の最適化手法を用いて決定する。
【0046】
以下、
図12および
図13のフローチャートを用いて、本実施形態の情報処理装置3における処理の流れを説明する。
図12は、情報処理装置3において、光源点灯位置の設定から反射特性の導出精度を決定するまでの処理の流れを示したフローチャートである。
【0047】
まずステップS1201において、条件設定部402は、ユーザによる光源点灯数の指示に基づいて、光源点灯位置を設定する。本実施形態の場合、
図5のGUI500に示したように予め設定された光源点灯数の中からユーザが何れかの光源点灯数を選択すると、条件設定部402は、その選択された光源点灯数を基に、光源点灯位置を設定する。そして、精度決定部403は、条件設定部402において光源点灯数に応じて設定された光源点灯位置の情報を取得する。
【0048】
次にステップS1202において、精度決定部403は、光源点灯位置の情報を基に、前述したように角度分解能の指標を決定する。
さらにステップS1203において、精度決定部403は、光源点灯位置の情報から前述したように角度範囲の指標を決定する。
そしてステップS1204において、精度決定部403は、ステップS1202で決定した角度分解能の指標およびステップS1203で決定した角度範囲の指標に基づいて、SVBRDFの導出精度を決定する。
【0049】
図13は、情報処理装置3において、ユーザにより指定された測定条件(照明条件と撮影条件)に基づいて、照明装置102と撮像装置103とを制御して対象物体104を撮像し、SVBRDFを導出する処理の流れを示したフローチャートである。
まずステップS1301において、照明制御部405は、ユーザの指定を基に条件設定部402が設定した照明条件(光源点灯位置の情報)を取得する。またこのとき撮像制御部406は、ユーザの指定を基に条件設定部402が設定した撮影条件(シャッタースピードやゲインの情報)を取得する。
【0050】
次にステップS1302において、照明制御部405は、光源の点灯/非点灯の判定対象の光源番号を初期値の1にする。本実施形態では、照明装置102の各発光素子101には例えば1から発光素子の数までの昇順の光源番号が付与されており、ステップS1302において、照明制御部405は、光源の点灯/非点灯の判定対象の光源番号を1にする。
【0051】
次にステップS1303において、照明制御部405は、光源番号が1の光源(発光素子)の点灯情報が「1(点灯)」であるか否かを判定する。
照明制御部405は、点灯情報が「1(点灯)」であれば、ステップS1304において光源番号が1の光源(発光素子)を点灯すると同時に、ステップS1305において当該光源点灯制御に応じた同期信号を撮像制御部406に送信する。一方、ステップS1303において点灯情報が「0(非点灯)」であると判定した場合、照明制御部405は、後述するステップS1308に処理を進める。
【0052】
次にステップS1306に進むと、撮像制御部406は、照明制御部405から同期信号を受信したタイミングで、対象物体104を撮像する。このように、本実施形態では、光源点灯位置の情報に基づいて、照明制御部405が照明装置102の該当する光源を順次点灯し、その光源の順次点灯に同期して撮像制御部406の撮像が行われる。
【0053】
次にステップS1307において、照明制御部405は、ステップS1304で点灯させた光源を消灯する。
そしてステップS1308において、照明制御部405は、光源番号をインクリメントする。
次にステップ1309において、照明制御部405は、照明装置102の最後の光源番号の光源まで、ステップS1303以降の処理が完了したかを判定し、完了していない場合にはステップS1303の処理に戻る。一方、ステップS1309で完了したと判定した場合、情報処理装置3の処理はステップS1310に進む。
【0054】
ステップS1310に進むと、ステップS1303からステップS1309まで処理が繰り返されて撮像装置103の撮像処理で得られた画像群を用いて、特性導出部407がSVBRDFを導出する。
【0055】
以上説明したように、第1実施形態によれば、対象物体上の位置毎の反射特性の導出精度を、ユーザが測定前に確認できるため、測定時間と反射特性の導出精度とを基にユーザが測定条件(照明条件や撮影条件)を適切に設定することが可能になる。
【0056】
<第2実施形態>
以下、第2実施形態として、第1実施形態で説明した角度分解能および角度範囲だけでなく、さらに対象物体の光沢特性をも加味して、SVBRDFの導出精度を決定する例を説明する。第2実施形態の構成も
図1と同様に照明装置102と撮像装置103とを有し、照明装置102は光源点灯位置を順に変更しながら対象物体104に光源光を照射し、撮像装置103は対象物体104を撮像する。また第2実施形態の情報処理装置3のハードウェア構成は第1実施形態のものと同様であり、その図示および説明を省略する。以下、第2実施形態と第1実施形態とで異なる部分を主に説明する。なお第1実施形態と同一の構成については、第2実施形態でも同じ符号を付して説明する。
【0057】
図14は、第2実施形態に係る情報処理装置3の機能構成を示したブロック図である。第2実施形態の情報処理装置3は、第1実施形態の
図4に示した機能構成に加えて、特性格納部1401を備えている。特性格納部1401は、測定対象となされる対象物体(試料)の光沢特性を示す情報を格納している。第2実施形態の情報処理装置3は、第1実施形態で説明した角度分解能および角度範囲の指標に加え、特性格納部1401に格納された光沢特性を示す情報をも用いて、SVBRDFの導出精度を決定する。また情報処理装置3は、前述同様に、SVBRDFの導出精度を基にユーザが指定した条件で、照明装置102および撮像装置103を制御する。そして、情報処理装置3は、対象物体104を照明および撮像して得られた画像群に基づいて、SVBRDFを導出する。
【0058】
以下、第2実施形態において、第1実施形態で説明した角度分解能と角度範囲に加えて、対象物体の光沢特性に関する情報をも用いることについて説明する。本実施形態において、光沢特性に関する情報は、変角反射特性の反射ピーク角度の近傍の反射光の広がりに関する情報である。例えば、光沢特性に関する情報は、特性導出部407が導出した対象物体の変角反射特性の空間2次元分布に基づき決定される。
【0059】
図15は、物体に対する光の入射角と反射光強度の関係を示したグラフである。
図15中のグラフ1501は高い光沢特性を有する物体(高光沢物体とする)のBRDFを示し、グラフ1502は光沢特性が低い物体(低光沢物体とする)のBRDFを示している。グラフ1501に示すようなBRDFの急峻な高光沢物体(写像性の高い物体)では、反射ピーク近傍の角度分解能が低いと、BRDFの形状を決定するために必要なデータ数が不足し、BRDFの導出精度が低くなる。一方、グラフ1502に示すように入射角度に対する反射光強度の変化の小さいBRDFとなる低光沢物体(写像性の低い物体)では、反射ピーク近傍の角度分解能が低くてもBRDFの形状を決定するために必要なデータ数が充分である場合が多い。また、角度範囲も同様に、高光沢物体では反射ピーク近傍の変化を充分に取得できていないとBRDFの導出精度は低く、低光沢物体では反射ピーク近傍で取得する角度範囲が狭くてもBRDFの導出精度は高い。このように、SVBRDFの導出精度は、対象物体104に対する光源光の入射角の分解能や角度範囲だけでなく、当該対象物体104の光沢特性も影響する。特にBRDFの急峻さ(写像性の高さ)の程度は、導出精度への影響度が大きい。
【0060】
そこで、第2の実施形態の情報処理装置3おいて、ユーザが対象物体104の光沢特性を設定すると、精度決定部403は、当該設定された光沢特性に関する情報を特性格納部1401から取得する。そして、精度決定部403は、前述の第1実施形態で説明した角度分解能および角度範囲の指標に加え、さらに光沢特性の情報をも用いて、SVBRDFの導出精度を決定する。
【0061】
図16は、第2実施形態において、
図5の例と同様の照明条件と撮影条件に加え、さらに光沢特性をユーザが指定可能なGUI1600の例を示した図である。なお、GUI1600は、CPU301により生成されて
図3のディスプレイ315の画面上に表示されるとする。
【0062】
図16に示したGUI1600には、光沢特性をユーザが指定可能な項目として、「高光沢」、「中光沢」、「低光沢」、および「選択しない」のラジオボタン520が選択肢として設けられている。ユーザは、入力デバイス310の操作を介してラジオボタン520を指定することで、「高光沢」、「中光沢」、「低光沢」、「選択しない」の選択肢の中から何れかを選択することができる。それらのいずれかの選択肢がユーザによって選択されると、精度決定部403は、その選択された選択肢に応じた光沢特性の情報を特性格納部1401から取得する。
【0063】
そして、精度決定部403は、前述の第1実施形態の場合と同様にして算出した角度分解能および角度範囲の指標に対し、光沢特性が高いほど低くなるような重み係数を乗算して、SVBRDFの導出精度を算出する。
【0064】
図17(a)と
図17(b)は、光源点灯位置が同一条件で光沢特性が異なる場合において精度決定部403で決定されたSVBRDFの導出精度マップの例を示した図である。
図17(a)は対象物体が高光沢物体である場合の導出精度マップを示し、
図17(b)は対象物体が低光沢物体である場合の導出精度マップを示している。これら導出精度マップにおいて、グレー濃度が高い格子ほどSVBRDFの導出精度が高いことを示しており、
図17(a)と
図17(b)から、対象物体の光沢特性が高いほど、SVBRDFの導出精度が低くなっていることがわかる。
【0065】
なお、
図16のGUI1600には、光沢特性を「選択しない」の項目が用意されているが、これは測定後に精度を確認する場合において必ずしもユーザは光沢特性を選択する必要がないためである。ユーザにより「選択しない」が指定された場合、精度決定部403は、特性導出部407で導出されたSVBRDFから光沢特性を決定し、この情報を用いてSVBRDFの導出精度を決定する。
【0066】
以上説明したように、第2実施形態の情報処理装置3は、対象物体上の位置毎の反射特性の導出精度を、その対象物体の光沢特性を考慮して決定することができる。例えば対象物体の光沢特性として低光沢をユーザが選択した場合には光源点灯数を減らして測定時間を短縮することができる。また本実施形態では、対象物体の光沢特性をユーザが選択しなくても、反射特性の導出精度を測定後に確認して、その測定結果の信頼性を確認することができる。
【0067】
<変形例>
前述した各実施形態の変形例として、
図10、
図17に示したようなSVBRDFの導出精度に基づいて、光源の点灯位置を変更する例を説明する。ここでは、導出精度が
図10の場合を例に挙げて、対象物体104上の位置によらずに、SVBRDFの導出精度が近くなるようにするための光源点灯位置の決定方法を説明する。条件設定部402は、光源点灯数の割合をユーザが指定し(不図示)、
図10の導出精度の偏りを減らすように、導出精度の高い領域と正反射に近いほど光源位置の点灯数が「0」になる確率が相対的に高くなるような重み付けをして光源点灯位置を決定する。
図18は、この方法で決定した光源点灯位置の例を示している。
図18に示した2次元格子と各格子内に記された情報は前述した
図6の例と同様のものである。
【0068】
さらに他の例として、前述した各実施形態の各機能部の処理のうち、精度決定部403、特性導出部407等については、その代わりとして、機械学習された学習済みモデルを代わりに用いて処理を行っても良い。その場合には、例えば、その機能部への入力データと出力データとの組合せを学習データとして複数個準備し、それらから機械学習によって知識を獲得し、獲得した知識に基づいて入力データに対する出力データを結果として出力する学習済みモデルを生成する。学習済みモデルは、例えばニューラルネットワークモデルで構成可能である。そして、その学習済みモデルは、前記機能部と同等の処理をするためのプログラムとして、CPUあるいはGPUなどと協働で動作することにより、前記機能部の処理を行う。なお、学習済みモデルは、必要に応じて一定の処理後に更新しても良い。
【0069】
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける一つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
上述の実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明は、その技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【0070】
3:情報処理装置、102:照明装置、103:撮像装置、104:対象物体(試料)、401:条件格納部、402:条件設定部:403:精度決定部、404:精度出力部、405:照明制御部、406:撮像制御部、407:特性導出部