(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-06
(45)【発行日】2024-12-16
(54)【発明の名称】画像処理装置、画像処理方法およびプログラム
(51)【国際特許分類】
G06T 7/60 20170101AFI20241209BHJP
G01N 21/55 20140101ALI20241209BHJP
【FI】
G06T7/60
G01N21/55
(21)【出願番号】P 2020171103
(22)【出願日】2020-10-09
【審査請求日】2023-09-22
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100090273
【氏名又は名称】國分 孝悦
(72)【発明者】
【氏名】戸塚 篤史
【審査官】長谷川 素直
(56)【参考文献】
【文献】特開2020-071613(JP,A)
【文献】特開2015-049079(JP,A)
【文献】特開昭63-295945(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
G01N 21/55
(57)【特許請求の範囲】
【請求項1】
複数の異なる条件下で撮像された対象物の複数枚の撮像画像を取得する取得手段と、
前記撮像画像に基づき、第1の空間分解能にて前記撮像画像の各画素位置に対応する前記対象物の反射特性を算出する第1の算出手段と、
前記
第1の算出手段により算出された反射特性の角度分解能が第1の閾値より小さい場合には、前記第1の算出手段により算出された反射特性に基づき、前記第1の空間分解能より低い第2の空間分解能にて前記対象物の反射特性を算出する第2の算出手段と
を有することを特徴とする画像処理装置。
【請求項2】
前記取得手段は、複数の異なる光源から前記対象物への投光角で撮像された複数枚の撮像画像を取得することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
さらに、前記第2の算出手段により算出された反射特性を近似する関数のパラメータを導出する導出手段を有することを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記導出手段は、前記角度分解能が前記第1の閾値より小さい場合には、前記第2の算出手段により算出された反射特性を近似する関数のパラメータを導出し、前記角度分解能が前記第1の閾値以上である場合には、前記第1の算出手段により算出された反射特性を近似する関数のパラメータを導出することを特徴とする請求項3に記載の画像処理装置。
【請求項5】
さらに、前記関数のパラメータを出力する出力手段を有することを特徴とする請求項3又は4に記載の画像処理装置。
【請求項6】
前記出力手段は、前記関数のパラメータの
値を画素値
として有する画像を出力することを特徴とする請求項5に記載の画像処理装置。
【請求項7】
前記関数のパラメータは、正規分布関数の分散と平均を含むことを特徴とする請求項3乃至6のいずれか1項に記載の画像処理装置。
【請求項8】
さらに、前記角度分解能が前記第1の閾値より小さいか否かを判定する判定手段を有し、
前記第2の算出手段は、前記角度分解能が前記第1の閾値より小さいと前記判定手段が判定した場合に、前記第2の空間分解能にて前記対象物の反射特性を算出することを特徴とする請求項1乃至7のいずれか1項に記載の画像処理装置。
【請求項9】
前記判定手段は、前記複数の異なる条件下での前記反射特性のデータのうちの反射強度が第2の閾値以上であるデータ数が第3の閾値以上である場合には、前記角度分解能が前記第1の閾値以上であると判定し、前記反射強度が前記第2の閾値以上であるデータ数が前記第3の閾値未満である場合には、前記角度分解能が前記第1の閾値より小さいと判定することを特徴とする請求項
8に記載の画像処理装置。
【請求項10】
前記判定手段は、前記反射特性の近似関数の各座標の最大値を周波数空間に変換し、前記周波数空間のうちの第1の周波数帯域のパワースペクトルの積分値が第4の閾値以上である場合には、前記角度分解能が前記第1の閾値以上であると判定し、前記第1の周波数帯域のパワースペクトルの積分値が前記第4の閾値未満である場合には、前記角度分解能が前記第1の閾値より小さいと判定することを特徴とする請求項
8に記載の画像処理装置。
【請求項11】
前記取得手段は、複数の異なる光源から前記対象物への投光角で撮像された複数枚の撮像画像を取得し、
前記第1の周波数帯域は、前記光源の空間周波数に基づく周波数帯域であることを特徴とする請求項
10に記載の画像処理装置。
【請求項12】
複数の異なる条件下で撮像された対象物の複数枚の撮像画像を取得する取得ステップと、
前記撮像画像に基づき、第1の空間分解能にて前記撮像画像の各画素位置に対応する前記対象物の反射特性を算出する第1の算出ステップと、
前記
第1の算出ステップで算出された反射特性の角度分解能が第1の閾値より小さい場合には、前記第1の算出ステップで算出された反射特性に基づき、前記第1の空間分解能より低い第2の空間分解能にて前記対象物の反射特性を算出する第2の算出ステップと
を有することを特徴とする画像処理方法。
【請求項13】
コンピュータを、請求項1乃至
11のいずれか1項に記載された画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、物体の反射特性を算出する技術に関する。
【背景技術】
【0002】
物体の素材や塗装の質感を表現するコンピュータグラフィックス(CG)の分野において、照明方向や観察方向によって変化する変角反射特性を表す双方向反射率関数BRDF、または二次元の変角反射特性を表すSVBRDFの測定データが利用されている。BRDFは、Bidirectional Reflectance Distribution Functionである。SVBRDFは、Spatially Varying Bidirectional Reflectance Distribution Functionである。変角反射特性の1つであるBRDFを計測する方法が特許文献1に記載されている。特許文献1は、逐次幾何条件の変更と該幾何条件下における対象物からの反射光を受光(計測)する形態において、次に計測を行う幾何条件を既に計測したデータに基づいて導出する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、一般に、幾何条件は、受光器または光源の位置を変えることによって制御するため、ハードウェア構成に基づく角度分解能の上限が存在する。このため、所望の変角反射特性が得られない場合がある。
【0005】
そこで本発明は、反射特性の算出において角度分解能の不足に起因する精度低下を抑制するための処理を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の画像処理装置は、複数の異なる条件下で撮像された対象物の複数枚の撮像画像を取得する取得手段と、前記撮像画像に基づき、第1の空間分解能にて前記撮像画像の各画素位置に対応する前記対象物の反射特性を算出する第1の算出手段と、前記第1の算出手段により算出された反射特性の角度分解能が第1の閾値より小さい場合には、前記第1の算出手段により算出された反射特性に基づき、前記第1の空間分解能より低い第2の空間分解能にて前記対象物の反射特性を算出する第2の算出手段とを有する。
【発明の効果】
【0007】
本発明によれば、反射特性の算出において角度分解能の不足に起因する精度低下を抑制することができる。
【図面の簡単な説明】
【0008】
【
図1】画像処理装置のハードウェア構成例を示すブロック図である。
【
図2】画像処理装置の機能構成例を示すブロック図である。
【
図3】画像処理装置が実行する処理を示すフローチャートである。
【
図4】取得装置による撮像幾何条件を示す模式図である。
【
図5】変角反射特性を示すデータの一例を示す図である。
【
図6】座標に応じた投光角の違いを説明するための模式図である。
【
図7】角度分解能不足の一例を説明するための図である。
【
図8】一連の処理を経て出力されるデータを説明するための図である。
【
図9】画像処理装置が実行する処理を示すフローチャートである。
【
図10】算出される評価値を説明するための図である。
【
図11】算出される評価値と角度分解能との関係を説明するための図である。
【
図12】座標に応じて異なる測定点の一例を示す図である。
【
図13】生成されるピーク画像の一例を示す図である。
【発明を実施するための形態】
【0009】
以下、本発明を実施するための形態について図面を参照して説明する。ただし、この実施形態に記載されている構成要素はあくまで例示であり、本発明の範囲をそれらに限定する趣旨のものではない。また、実施形態で説明されている構成要素の組み合わせのすべてが、課題を解決するための手段に必須のものとは限らず、種々の変形および変更が可能である。なお、各図において、同一の部位ないし要素については同一の番号を付し、重複する説明は省略する。
【0010】
<<実施形態1>>
本実施形態では、空間分解能と角度分解能を適応的に制御して、各座標における変角反射特性を導出する形態について説明する。
【0011】
<画像処理装置のハードウェア構成>
図1は、本実施形態における画像処理装置1のハードウェア構成例を示すブロック図である。画像処理装置1は、例えばコンピュータによって構成される。画像処理装置1は、CPU101、ROM102、RAM103、汎用I/F(インターフェース)104、SATA(シリアルATA)I/F105、およびVC(ビデオカード)106を有する。これらは、互いにデータを送受信可能にするシステムバス107に接続されている。
【0012】
CPU101は、RAM103をワークメモリとして、ROM102またはHDD(ハードディスクドライブ)17などに格納されたOS(オペレーティングシステム)や各種プログラムを実行する。また、CPU101は、システムバス107を介して、各構成要素を制御する。なお、CPU101が、ROM102やHDD17などに格納されたプログラムをRAM103に展開し、RAM103に展開したプログラムを実行することにより、後述するフローチャートによる処理が行われる。
【0013】
汎用I/F104は、例えばUSBなどのシリアルバスインターフェースであり、シリアルバス12を介して、マウスやキーボードなどの入力デバイス13に接続される。SATAI/F105は、シリアルバスインターフェースであり、シリアルバス16を介して、HDD17や各種記録メディアの読み書きを行う汎用ドライブ18に接続される。CPU101は、HDD17や汎用ドライブ18にマウントされた各種記録メディアを各種データの格納場所として使用する。
【0014】
VC106は、ビデオインターフェースであり、ディスプレイ15に接続される。CPU101は、プログラムによって提供されるUI(ユーザインターフェース)をディスプレイ15に表示し、入力デバイス13を介して受け付けるユーザ指示などの入力を受信する。
【0015】
<画像処理装置の機能構成>
図2は、画像処理装置1の機能構成例を示すブロック図である。CPU101は、RAM103をワークメモリとして、ROM102またはHDD17に格納されたプログラムを読み出して実行することによって、
図2に示す機能構成要素として機能する。なお、以下に示す処理の全てがCPU101によって実行される必要はなく、処理の一部または全てがCPU101以外の一つまたは複数の処理回路によって行われるように画像処理装置1が構成されていてもよい。
【0016】
画像処理装置1は、撮像データ取得部201、第1の変角反射特性算出部202、変角反射特性判定部203、第2の変角反射特性算出部204、変角反射特性パラメータ導出部205、データ格納部206、UI表示部207、および特性値出力部208を有する。
【0017】
撮像データ取得部201は、汎用I/F104を介して指示された撮像データ(複数枚の撮像画像および撮像幾何条件)を取得する。第1の変角反射特性算出部202は、撮像データを基に、サンプル(撮像対象物)の各座標位置について、複数の異なる角度条件下における反射強度を変角反射特性の測定点として算出する。変角反射特性判定部203は、変角反射特性において、鏡面反射を精度良く再現するに足る測定点数が得られているか否かの判定を行う。
【0018】
第2の変角反射特性算出部204は、少なくとも変角反射特性判定部203にて否と判定した画素の変角反射特性について、近傍画素の変角反射特性を合成し、新たな変角反射特性を算出する。変角反射特性パラメータ導出部205は、変角反射特性を所定の関数にて近似するための変角反射特性パラメータを導出する。
【0019】
データ格納部206は、HDD17や汎用ドライブ18にマウントされた各種記録メディアによって構成され、撮像画像、あるいは、第1および第2の変角反射特性算出部202および204にて算出した変角反射特性等の情報を保持する。UI表示部207は、撮像データの取得に必要な情報と、処理の実行などの入力をユーザに促すUIとをディスプレイ15に表示する。特性値出力部208は、変角反射特性パラメータを指定の形式にて出力する。各部における詳細な制御動作については後述する。
【0020】
<画像処理装置の動作>
図3は、本実施形態における画像処理装置1の画像処理方法を示すフローチャートである。以下、
図3を参照して本実施形態における画像処理装置1の処理内容の詳細を説明する。なお、CPU101が、ROM102に格納されたプログラムをRAM103に展開し、RAM103に展開したプログラムを実行することにより、
図3のフローチャートにて示す処理が行われる。また、
図3のフローチャートにて示す処理内容は、ユーザが入力デバイス13を操作して指示を入力し、CPU101が入力された指示を受け付けることにより開始する。なお、フローチャートの説明における記号「S」は、ステップを表すものとする。この点、以下のフローチャートの説明においても同様とする。
【0021】
S301では、撮像データ取得部201は、複数の異なる条件下で撮像された対象物(サンプル)の複数枚の撮像データをデータ格納部206から取得する。具体的には、撮像データ取得部201は、複数の異なる光源から対象物への投光角で撮像された複数枚の撮像データを取得する。撮像データは、複数枚の撮像画像と、各撮像画像の各画素に対応する光源の投光角度等を導出するための、光源、サンプル、照明位置を表す情報を含む。撮像データは、データ格納部206に予め記録されている。なお、撮像データは、入力デバイス13を介してユーザが指示する。
【0022】
図4を参照して、データ格納部206に記録されている撮像画像群の取得方法の一例を説明する。
図4は、撮像画像を取得するための取得装置4の構成例を模式的に表した図である。はじめに、取得装置4の構成について説明する。照明装置410は、制御基板411上に複数の光源412が一定間隔で配置されている。各光源412は、個別に点灯制御することが可能である。光源412は、非テレセントリック光学系であり、方向によって異なる指向特性を持つ。例えば、光源412は、半値角60度のLED(Light Emitting Diode)であり、9×9個のLED412が制御基板411上に配置されている。軸413は、照明装置410のLED412の配置面と垂直であり、同面の中心を通る軸とする。LED412は、それぞれ、LED412の配置面と垂直な方向を中心軸(最も明るい部分)とする。サンプル420は、試料台430に設置されたサンプルを表す。軸421は、サンプル420の面に対して垂直であり、サンプル420の面の中心を通る軸である。撮像装置440は、CCDイメージセンサを有する1バンドのモノクロカメラ、および、チルト機構のあるテレセントリックレンズから成るテレセントリック光学系を有し、光電変換により、サンプル420の撮像画像を生成する。これにより、CCDイメージセンサの各画素は、撮像装置440の光軸441と平行な方向の光のみを受光する。なお、軸413と軸421と軸441は、同一面上にある。軸413と軸421が成す角θ
0と、軸421と軸441が成す角θ
2が等しくなるよう、撮像装置440および照明装置410の姿勢が設定されている。ここで、角θ
0およびθ
2は、共に45度であり、軸441は、撮像装置440のCCDイメージセンサの中心画素を通る。説明を簡易にするため、以降では、2次元平面における取得装置4の動作および取得装置4にて取得した撮像画像の処理について説明する。また、撮像装置440にて得た撮像画像の各画素値は、CCDイメージセンサが受光する放射輝度値とのリニアリティが得られている。
【0023】
続いて、取得装置4を用いた撮像画像の取得手順について説明する。照明装置410は、光源412の1つを点灯する。撮像装置440は、点灯した光源412によって照射されたサンプル420を撮像し、撮像画像を生成する。その後、照明装置410は、光源412を消灯する。取得装置4は、この一連の制御処理を、点灯する光源412を変えて順次実行する。これにより、撮像装置440は、複数の異なる投光角θ1ごとに、サンプル420からの反射光分布を撮像画像として記録する。記録した画像は、tif形式のグレースケール画像であり、各画素値は、16ビットに正規化された値(0~65535)である。撮像画像は、何れもサンプル420の同領域を撮像した画像であり、同座標の画素値は、サンプル420の同位置の反射光を受光して得た画素値とみなすことができる。本実施形態では、取得装置4は、上述した手順にて撮像した対象物の撮像画像群と、対象物と同様の手順にて撮像した標準反射板の撮像画像群を取得する。サンプル420は、対象物または標準反射板である。標準反射板の撮像画像群は、光源412と被写体までの距離の違い、あるいは、光源412の配向特性などに依って生じる対象物への入射照度の違いを補正するキャリブレーションデータとして用いる。標準反射板は、変角反射特性が既知であるものとし、本実施形態では説明を簡易にするため、方向に依らず一定の反射特性を有する完全拡散反射として扱う。
【0024】
撮像データ取得部201は、上記の撮像画像を取得する。また、撮像データ取得部201は、各投光角θ1を算出するため軸413から光源412までの距離d1と、軸413上にて光源412からサンプル420までの距離d2と、受光角として軸421と軸441とが成す角度θ2と、撮像装置440の解像度を取得する。ここで、各光源412には、あらかじめ識別番号iが付けられている。光源iを点灯して得た撮像画像と、光源iの位置を示す距離d1については、識別番号iによって対応付けることが可能である。
【0025】
S302では、第1の変角反射特性算出部202は、上記の撮像データに基づき第1の空間分解能にて撮像画像の各画素位置に対応する対象物の変角反射特性を算出する。
図5(a)および(b)を参照して、算出する対象物の変角反射特性50の測定点501について説明する。変角反射特性50の横軸は、投光角θ
1を表す。変角反射特性50の縦軸は、標準反射板にて補正された対象物の反射強度を表す。変角反射特性50は、プロット可能な測定点501を有する。第1の変角反射特性算出部202は、変角反射特性50の測定点501を、S301にて取得した撮像データ51の画素511ごとに算出する。投光角θ
1の算出方法について、
図6を参照して具体的に説明する。
図6は、
図4に示す取得装置4の構成の一部を示したものであり、同一の要素については同一の符号を付す。領域420a、420bおよび420cは、撮像装置440の解像度に基づいて対象物(サンプル)420を分割した領域である。各領域420a、420bおよび420cは、それぞれ撮像画像内の1画素に相当する。例えば、領域420a、420b、420cの各々の長さd
s(mm)は、式(1)にて一様に計算することができる。
【0026】
【0027】
ここで、DPIは、撮像装置440の空間解像度であり、1インチ幅の中にある画素数(dots per inch)を示す。投光角θbは、光源412aから領域420bへの投光角θ1を示す。投光角θcは、光源412aから領域420cへの投光角θ1を示す。このように、投光角θ1は、領域420bおよび420cごとに、異なる投光角θbおよびθcになる。投光角θ1は、式(2)にて計算することができる。
【0028】
【0029】
ここで、dsは、上述した撮像画像の1画素の長さ(mm)である。kは、軸413上の画素(撮像画像の中心画素)から対象画素までの画素数を示す。式(2)によれば、例えば、d2を30mm、d1を0mm(軸413上の光源412を点灯)とした場合、軸413上の領域420aへの投光角θ1は45.00度、隣接する領域420bへの投光角θ1は45.11度となる。第1の変角反射特性算出部202は、画素位置に応じた投光角θ1を算出することができる。なお、光源412のピッチを1mmとし、領域420aに隣接する光源412を照射した場合には、式(2)により、投光角θ1は46.91と算出される。なお、上記のように、一般的な光源412のサイズおよび撮像装置440の解像度を鑑みた場合に、隣接画素間にて生じる投光角θ1の差は、隣接光源位置間にて生じる投光角θ1の差と比べて極小さくなる。
【0030】
次いで、反射強度の算出方法について具体的に説明する。光源iを点灯して得た対象物の撮像画像Siにおける座標位置(x,y)の画素値をSi(x,y)、同様に、光源iを点灯して得た完全拡散反射板の撮像画像Riにおける座標位置(x,y)の画素値をRi(x,y)とする。このとき、反射強度Ii(x,y)は、式(3)により算出される。
【0031】
【0032】
ここで、cは固定値である。なお、標準反射板が完全拡散板と異なり、角度に応じて異なる特性を有している場合は、角度ごとの反射率の逆数をcに代わり乗じる。また、各撮像画素値が輝度値に対する線形性が得られていない場合は、予めガンマ補正または1次元LUT(ルックアップテーブル)を参照した変換を施した画素値を用いて式(3)が適用される。以上の処理を以って、第1の変角反射特性算出部202は、各撮像画像内の各画素に対応する投光角θ
1および反射強度I
i(x,y)を取得する。これにより、
図5(a)に示すように、第1の変角反射特性算出部202は、任意の画素位置における変角反射特性50の測定点501を算出する。
【0033】
S303では、変角反射特性判定部203は、S302で算出された変角反射特性50の角度分解能が閾値より小さいか否かを判定する。具体的には、変角反射特性判定部203は、S302で算出された変角反射特性50の有効データ数をカウントし、変角反射特性50の有効データ数が閾値以上であるか否かを判定する。
【0034】
図7(a)~(d)を参照して、有効データ数について説明する。グラフ70は、対象物のある画素に対応した領域の真の変角反射特性701を示す曲線である。一般に、変角反射特性701は、受光角θ
2と等しい投光角θ
1(θ
1=θ
2)近傍にて、反射強度のピークが検出される。このピーク値は、対象物の照明像の明るさを表す。変角反射特性701の曲線の半値幅は、対象物に映りこんだ照明像鮮明さを表す。ここで、映り込んだ照明像が鮮明なサンプルを、写像性が高いサンプルと表現する。
【0035】
変角反射特性の測定データは、グラフ71に示す測定点(プロット点)711に相当し、点灯した光源412の数と同数である。変角反射特性712は、変角反射特性の測定点711を基に近似した関数曲線であり、後述する変角反射特性パラメータ導出部205にて定義される。ここで、変角反射特性712のピーク近傍を鏡面反射成分と呼び、鏡面反射成分にて測定点711が多く得られた場合に、真の変角反射特性701を、精度良く関数近似することができる。
【0036】
グラフ72は、対象物のある画素に対応した領域の真の変角反射特性721を示す曲線である。変角反射特性721は、写像性が高く半値幅が小さい変角反射特性である。グラフ73において、変角反射特性732は、変角反射特性の測定点731を基に近似した関数曲線である。グラフ73に示す通り、鏡面反射成分にて、十分な数の測定点731が得られず、関数による近似精度が大きく低下する。
【0037】
上記の有効データ数とは、鏡面反射成分における測定点の数を指す。有効データ数を検出するために、S303では、変角反射特性判定部203は、まず、各画素位置における変角反射特性50の最大値と最小値を検出し、検出した最大値と最小値の平均値を算出する。次に、変角反射特性判定部203は、その平均値以上の反射強度を持つ測定点(有効データ)の数が閾値以上であるか否かを判定する。ここでは、平均値以上の反射強度を持つ測定点を、鏡面反射成分の測定点と見做す。
【0038】
変角反射特性判定部203は、変角反射特性のデータ(測定点)のうちの反射強度が第2の閾値以上であるデータ数が第3の閾値以上である場合には、変角反射特性の角度分解能が第1の閾値以上であると判定する。また、変角反射特性判定部203は、変角反射特性のデータ(測定点)のうちの反射強度が第2の閾値以上であるデータ数が第3の閾値未満である場合には、変角反射特性の角度分解能が第1の閾値より小さいと判定する。
【0039】
なお、上述の通り、測定点数は、撮像画像の枚数すなわち光源数に基づいて決定され、受光角θ2の間隔(角度分解能)は、光源412のピッチおよび光源412と対象物との距離によって決定される。グラフ73に示すような、測定点731の有効データ数の不足は、角度分解能の不足が一因であり、以降、有効データ数の不足を角度分解能の不足と同義とする。
【0040】
変角反射特性判定部203は、S302で算出された変角反射特性50の有効データ数が閾値以上である場合には、その変角反射特性50の角度分解能が閾値以上であると判定し、S305に進む。また、変角反射特性判定部203は、S302で算出された変角反射特性50の有効データ数が閾値未満である場合には、その変角反射特性50の角度分解能が閾値より小さいと判定し、S304に進む。
【0041】
S305では、変角反射特性パラメータ導出部205は、第1の変角反射特性算出部202により算出された変角反射特性の測定点を近似する関数fx,y(θ1)のパラメータを導出し、S306に進む。関数fx,y(θ1)は、式(4)により定義される。
【0042】
【0043】
関数f
x,y(θ
1)は、係数a
x,yを加重係数とした分散σ
x,yと平均m
x,yの正規分布関数である。Dは、拡散反射成分を表すオフセット量を示す。関数f
x,y(θ
1)のパラメータは、係数a
x,yと分散σ
x,yと平均m
x,yであり、変角反射特性の測定点と式(4)による推定値との累積二乗誤差が最小となるよう、公知の勾配降下法を使用した最適化処理を行うことによって導出される。導出した関数f
x,y(θ
1)の曲線は、例えば、上述した
図7(a)または(c)の変角反射特性701または721に相当する。関数f
x,y(θ
1)のパラメータは、変角反射特性701または721のパラメータに相当する。なお、関数f
x,y(θ
1)は、正規分布関数以外に、例えばCook-Torranceモデルなどの公知のモデル式を用いてもよい。
【0044】
S304では、第2の変角反射特性算出部204は、第1の変角反射特性算出部202により算出された隣接する画素位置の複数の変角反射特性の測定点を合成し、第2の空間分解能にて対象物の変角反射特性の測定点を算出する。第2の空間分解能は、S302の第1の空間分解能より低い。例えば、第2の変角反射特性算出部204は、隣接する2×2の画素の変角反射特性を合成し、新たな変角反射特性の測定点を算出する。これにより、変角反射特性の測定点数は、4倍に増加する。各測定点は、
図6を参照して説明したように、投光角θ
1が異なるため、高い角度分解能を有する。したがって、後述する変角反射特性パラメータ導出部205にて導出する関数曲線にて、対象物の真の変角反射特性(特に鏡面反射成分)をより精度良く近似できる可能性が向上する。なお、第2の変角反射特性算出部204により算出される変角反射特性の測定点は、第1の変角反射特性算出部202により算出される変角反射特性の測定点と比較して、対象物面に対する空間分解能が1/2にまで低減される。その後、処理は、S305に進む。
【0045】
S305では、変角反射特性パラメータ導出部205は、上記の式(4)に示すように、第2の変角反射特性算出部204により算出された変角反射特性の測定点を近似する関数fx,y(θ1)のパラメータを導出する。関数fx,y(θ1)のパラメータは、変角反射特性701または721のパラメータに相当する。その後、処理は、S306に進む。
【0046】
S306では、特性値出力部208は、上記の関数f
x,y(θ
1)のパラメータを出力する。
図8(a)および(b)を参照して、関数f
x,y(θ
1)のパラメータ81の形式を説明する。関数f
x,y(θ
1)のパラメータ81は、対象物の座標位置xおよびyと、座標位置xおよびyにおける関数f
x,y(θ
1)のパラメータが対応付けられている。関数f
x,y(θ
1)のパラメータは、係数a
x,yと分散σ
x,yと平均m
x,yである。
【0047】
関数fx,y(θ1)のパラメータ82は、係数ax,yと分散σx,yと平均mx,yを画素値とし、対応する座標xおよびyの画素に格納した画像データである。以降、この画像データをパラメータ画像と呼ぶ。例えば、特性値出力部208は、関数fx,y(θ1)のパラメータ81をcsv形式として保存し、関数fx,y(θ1)のパラメータ82をtif形式のグレースケール画像として保存する。ここで、tif画像は、係数ax,yと分散σx,yと平均mx,yに対応した3枚の画像が生成される。各画像内に格納されるパラメータは、最大値が255、最小値が0となるように、画像ごとに正規化される。
【0048】
S303にて、有効データ数が閾値未満であると判定された場合には、パラメータ画像の解像度は、撮像データ取得部201にて取得した撮像画像の解像度の1/2、パラメータ画像の画素数は縦横共に撮像画像の画素数の1/2とする。なお、有効データ数が閾値以上であると判定された場合には、パラメータ画像の解像度および画素数は、撮像データ取得部201にて取得した撮像画像のものと同様である。特性値出力部208は、csv形式の関数fx,y(θ1)のパラメータ81とtif形式の関数fx,y(θ1)のパラメータ82をデータ格納部206に保存する。UI表示部207は、関数fx,y(θ1)のパラメータ82の画像を表示すると同時に処理の完了を通知する。
【0049】
上記説明したように、本実施形態の画像処理装置1は、各座標位置における有効データ数を求めることで、角度分解能が不足しているか否かを判定する。また、画像処理装置1は、有効データ数を増加するために、空間解像度を下げ、より低い空間分解能にて分けられた領域内の変角反射特性の測定点を算出する。これにより、画像処理装置1は、適応的に角度分解能を変更し、鏡面反射成分の近似精度の低下を抑制したデータを生成することができる。
【0050】
<<実施形態2>>
実施形態1では、画像処理装置1は、各座標位置における有効データ数を基に空間分解能を所定量下げ、角度分解能を向上した。本実施形態では、算出した変角反射特性の空間周波数特性に基づいて、空間分解能の調整を行う方法について説明する。なお、本実施形態における画像処理装置1の機能構成は、実施形態1と同じである。本実施形態では、主に、変角反射特性判定部203による処理内容が実施形態1と相違する。したがって、後述する本実施形態の画像処理装置1の処理動作の説明においては、変角反射特性判定部203について主に説明する。
【0051】
<画像処理装置動作>
図9(a)および(b)は、本実施形態の画像処理装置1にて実行される処理の手順例を示すフローチャートである。以下、
図9(a)および(b)を参照して、本実施形態における画像処理装置1の処理内容の詳細を説明する。なお、CPU101が、ROM102に格納されたプログラムをRAM103に展開し、RAM103に展開したプログラムを実行することにより、
図9(a)および(b)のフローチャートにて示す処理が行われる。また、
図9(a)および(b)のフローチャートにて示す処理内容は、ユーザが入力デバイス13を操作して指示を入力し、CPU101が入力された指示を受け付けることにより開始する。なお、各ステップにて、UI表示部207は、各種処理経過データを表示する。表示するUIおよびデータについては後述する。
【0052】
S901では、撮像データ取得部201は、実施形態1と同様に、撮像データを取得する。撮像データは、複数枚の撮像画像と、各撮像画像の各画素に対応する光源の投光角度等を導出するための、光源、サンプル、照明位置を表す情報を含む。
【0053】
S902では、第1の変角反射特性算出部202は、実施形態1と同様に、上記の撮像データを基に、各画素の変角反射特性を算出する。
【0054】
S903では、変角反射特性パラメータ導出部205は、変角反射特性を近似する関数のパラメータを、実施形態1と同様にして導出する。
【0055】
S904では、変角反射特性判定部203は、光源周波数帯のパワースペクトルを算出し、角度分解能が不足しているか否かを判定する。S904の処理動作の詳細については、
図9(b)を用いて後述する。角度分解能が不足している場合には、処理はS905に進み、角度分解能が不足していない場合には、処理はS906に進む。
【0056】
S905では、第2の変角反射特性算出部204は、実施形態1と同様に、隣接する画素位置の複数の変角反射特性を合成し、新たな変角反射特性を算出する。さらに、第2の変角反射特性算出部204は、S902の第1の変角反射特性算出部202で算出された変角反射特性を、S905の第2の変角反射特性算出部204で算出された変角反射特性に置換(更新)する。S905の後、処理はS903へ戻る。したがって、S903~S905の処理は、S904にて角度分解能が不足していると判定される限り、繰り返し実行され、変角反射特性は逐次更新される。なお、第2の変角反射特性算出部204は、データ格納部206に初期値を0とするカウンタ値を格納し、S905が適用された場合に、カウンタ値を加算することで、S905の適用回数nを記録する。
【0057】
S906では、特性値出力部208は、更新後の変角反射特性を示す各種パラメータおよびパラメータ画像を、実施形態1と同様にして生成し、出力する。パラメータ画像の空間解像度および縦横画素数は、いずれも撮像データ取得部201にて取得した撮像画像に対し、1/2nとなる。ここで、nは、S905の処理が実行された回数を示す。
【0058】
<S904における変角反射特性判定部203の処理動作>
変角反射特性判定部203によるS904の詳細について、
図9(b)を参照して説明する。
図9(b)は、
図9(a)に示すS904にて実行される処理の詳細な手順例を示すフローチャートである。
【0059】
S9041では、変角反射特性判定部203は、関数fx,y(θ1)のパラメータにて規定する各座標の関数の最大値を取得し、その最大値を、対応する座標に格納した2次元マップを生成する。その2次元マップをピーク画像と呼ぶ。なお、ピーク画像の画素数および空間解像度は、S901にて取得した撮像画像の画素数および空間解像度、さらに、S905による処理の適応回数nを参照することで、S906と同様にして算出することができる。
【0060】
S9042では、変角反射特性判定部203は、上記のピーク画像に対して2次元高速フーリエ変換(FFT)処理を施すことによって、ピーク画像を周波数空間に変換し、FFT画像を生成する。さらに、変角反射特性判定部203は、FFT画像からRAPS(Radially Averaged Power Spectrum)を算出する。RAPSは、FFT画像上の同一周波数を示すパワースペクトルの平均値である。
図10に、RAPSのデータを示す。横軸は周波数cycle/mmを示し、縦軸はパワースペクトルの平均値を示す。横および縦軸上のプロット点群1000あるいはプロット点が成すグラフ1001をRAPSデータと呼ぶ。
【0061】
S9043では、変角反射特性判定部203は、光源412の空間周波数帯域における上記のパワースペクトルの積分値を算出する。ここで、光源412の空間周波数帯域とは、上述した取得装置4における点灯光源412間の距離の逆数にて求まる光源412の空間周波数の近傍帯域を指す。例えば、
図4を参照して説明した取得装置4において、点灯光源412が1mm間隔で均等配置されていた場合、光源412の空間周波数は1cycle/mmとなる。本実施形態では、光源412の空間周波数を中心とした±0.5cycle/mm領域を光源412の空間周波数帯域とする。
図10の領域lbは、光源412の空間周波数帯を示す。
図10の斜線部1002は、領域lbのパワースペクトルの積分領域を示す。S9043では、変角反射特性判定部203は、斜線部1002の面積を算出する。以下、領域lbのパワースペクトルの積分値を評価値と呼ぶ。
【0062】
S9044では、変角反射特性判定部203は、評価値と予め定めた閾値を用いた判定を行う。変角反射特性判定部203は、評価値が閾値以上である場合には、S9045に進み、評価値が閾値未満である場合には、
図9(a)のS905に進む。また、変角反射特性判定部203は、適用回数nが所定値を超えた場合にも、
図9(a)のS905へ進む。
【0063】
以上のように、変角反射特性判定部203は、変角反射特性の近似関数の各座標の最大値を周波数空間に変換し、その周波数空間のうちの第1の周波数帯域のパワースペクトルの積分値が第4の閾値以上である場合には、S9044に進む。この場合、変角反射特性判定部203は、変角反射特性の角度分解能が第1の閾値以上であると判定する。第1の周波数帯域は、光源412の空間周波数に基づく周波数帯域である。
【0064】
また、変角反射特性判定部203は、上記の第1の周波数帯域のパワースペクトルの積分値が第4の閾値未満である場合には、変角反射特性の角度分解能が第1の閾値より小さいと判定し、S905に進む。
【0065】
S9045では、変角反射特性判定部203は、UI表示部207を制御し、S9044による結果を表示する。それと同時に、変角反射特性判定部203は、S906またはS905の何れの処理に進むかを指示入力可能なUIを表示し、指示入力が為されると、その指示入力に基づいてS906またはS905に進む。本実施形態においては、パラメータを出力するか否かをユーザに指示させるためのUIを表示し、パラメータを出力する旨の指示を受け付けた場合はS906に進み、そうでなければS905に進む。
【0066】
上記の評価値と角度分解能との関係について説明する。
図11は、
図4にて示した取得装置4の一部を示す図である。イメージセンサ1120は、
図4の撮像装置440のイメージセンサを示す。軸1131、1132および1133は、それぞれ、照明装置410の光源1121、1122および1123の配置面と垂直であり、光源1121、1122および1123を通る軸である。軸1111、1112および1113は、それぞれ、イメージセンサ1120の面と垂直であり、軸1131、1132および1133とサンプル420の面との交点xa、xbおよびxcで交わる軸である。イメージセンサ1120は、センサ素子ya、ya’、ybおよびycを有する。センサ素子ya、ybおよびycは、それぞれ、軸1111、1112および1113が通るセンサ素子であり、交点xa、xbおよびxcにおいて投光角θ
1と受光角θ
2とが等しくなる反射光を受光する。一般に、完全拡散反射物を除いた反射物体において、角度方向(鏡面反射方向)への反射強度が最大となるため、センサ素子ya、ybおよびycでの変角反射特性において、真の変角反射特性のピーク値またはピーク値に近い値を取得することができる。
【0067】
図12(a)および(b)のグラフ1210および1220は、それぞれ、
図11のセンサ素子yaおよびya’に対応した画素位置の変角反射特性を示す。ここで、センサ素子yaおよびya’に対応するサンプル420の面は、同一の反射特性を有する。測定点1211および1221は、第1の変角反射特性算出部202にて算出した変角反射特性の測定点である。変角反射特性1212および1222は、対象物の真の変角反射特性である。近似関数1213および1223は、それぞれ、測定点1211および1221から導出した近似関数を表す。
図12(a)および(b)では、対象物の写像性が高く、測定点1221は、変角反射特性1222の鏡面反射成分を表す測定点が得られていない、または、変角反射特性1222のピーク値に近い値が得られていない。そのため、変角反射特性1222と比べて低いピーク値を示す近似関数1223が導出される。
【0068】
一方、センサ素子yaにて受光した画素値から算出される測定点1221は、
図11に示したように、光源1121の点灯時に鏡面反射方向にて交点xaの反射光を受光するため、変角反射特性1212のピーク値に近い値が得られる。そのため、変角反射特性1212と同等の高いピーク値を持つ近似関数1213を導出することができる。
【0069】
以上のように、取得装置4の構成にて角度分解能が低い(例えば、光源配置間隔が大きい)場合に、真の変角反射特性のピーク値または近傍値を第1の変角反射特性算出部202にて取得することが一部領域で困難である。また、その一部領域は、光源配置に依存しており、上述した取得装置4の構成によれば、光源の配置周期と同周期で上記のピーク位置の低い領域が発現する。したがって、上記のピーク画像は、光源の配置周期と同周期で画素値の変動が観測され、光源412の空間周波数帯域におけるパワースペクトルないし上記の評価値が高い値を示す。
【0070】
図13(a)のグラフ131は、上記の例として、ピーク画像を1次元方向に走査して得た画素値を表すグラフを示す。グラフ131の横軸は、
図11のイメージセンサ1120の画素位置を表す。グラフ131の縦軸は、上記のピーク画像の画素値を表す。
図13(b)のピーク画像132は、2次元のピーク画像の例を示す。ピーク画像132の画素値は、近似曲線のピーク値を示し、グラフ131と同様に、イメージセンサ1120の画素位置に応じた周期ムラを確認することができる。
【0071】
図14(a)および(b)は、各ステップにてUI表示部207がディスプレイ15に表示するUIおよびデータを示す図である。UI141は、上記の一連処理の実行開始時に表示される。領域1401および1402は、撮像データ取得部201にて取得したサンプル(対象物)撮像画像およびリファレンス(標準反射板)撮像画像のファイル名をリスト表示する領域である。これらのファイルは、各領域1401および1402にファイルをドラッグアンドドロップ、または、読込ボタン1403および1404を押下することで表示されるダイアログ上にて指示する。これらのファイル名の末尾の番号は、点灯光源に対応した識別番号である。
【0072】
領域1405には、領域1401または1402に表示されたファイルの中からユーザが任意に指示選択した画像が表示される。その指示選択は、入力デバイス13のマウスを用い、任意のファイル名にカーソルを重ねてクリックすることで実現する。なお、照明装置410や撮像装置440に関する各種幾何条件は、設定ファイルとして予め作成し、UI141を起動する際に読み込まれる。
【0073】
実行ボタン1406は、第1の変角反射特性算出部202ないし特性値出力部208にて行われる処理の実行を指示するためのボタンであり、押下されることで処理が開始される。処理が完了すると、領域1407に、プルダウンボタン1408にて選択されたパラメータ(特性値)を表すパラメータ画像が表示される。領域1407における任意の座標を指示選択すると、その座標における変角反射特性を領域1409に表示する。その指示選択は、入力デバイス13のマウスを用い、任意のファイル名にカーソルを重ねてクリックすることで実現する。また、表示される変角反射特性は、上述した更新後の変角反射特性および近似関数が示す曲線を指す。終了ボタン1410は、一連の処理終了後に押下することで、UI141を閉じるためのボタンであり、処理中に押下された場合には、処理を中断して終了する。
【0074】
なお、S9044にて角度分解能が不足と判定された場合に、ダイアログ142が表示され、領域1411にてその判定結果を表示する。ユーザが継続ボタン1412または終了ボタン1413を押下することで、S904またはS905に処理が移行する。なお、ダイアログ142が表示される(角度分解能が不足と判定された)際には、領域1407に上記のピーク画像が表示される。これにより、上記の光源周期の変動(解像度不足による周期ノイズ)をユーザが定性的に把握することができる。
【0075】
以上説明したように、本実施形態における画像処理装置1は、算出した変角反射特性の空間周波数特性に基づいた評価値を導出し、その評価値によって角度分解能の不足を判定する。また、第2の変角反射特性算出部204は、その評価値が目標値に達するまで繰り返し処理する。これにより、角度分解能不足による鏡面反射成分の近似精度の低下、特に、光源周期ノイズを抑制したデータを生成することができる。さらに、ユーザは、可視化した光源周期ノイズを参照し、繰り返し処理の継続判断を行うことが可能となる。
【0076】
<他の実施形態>
上記実施形態では、一般的なモノクロカメラを想定し、1チャネルについて説明したが、波長に応じて感度特性が異なる2つ以上のチャネルを有するカラーカメラであっても、チャネルごとに上記の実施形態の処理を適用することが可能である。
【0077】
上記実施形態では、角度分解能が不足か否かを判定する際には、予めデータ格納部206に格納された閾値を用いたが、UIを介してユーザが閾値を指示入力してもよい。また、判定対象である変角反射特性を成す測定点のデータに基づいて、適応的に閾値を算出してもよい。例えば、測定点のデータの最小値が小さい程、角度分解能が不足と判定し易いよう、閾値を小さくする形態であってもよい。ここで、その最小値を拡散反射成分と見做す。これにより、その拡散反射成分が大きい場合には、相対的に鏡面成分が小さいとの予測に基づいた動的な閾値設定を行うことができる。
【0078】
上記実施形態では、判定結果に基づいて空間解像度の変更処理を施したが、その変更処理を適用するか否かに任意の制約事項を追加してもよい。例えば、空間解像度の下限値としてユーザが所望の値を設定することで、所望の空間解像度を担保することができる。
【0079】
上記の実施形態1では、角度分解能不足と判定された変角反射特性が1つ以上存在する場合に、低解像度下の変角反射特性を導出したが、これに限定されない。実施形態1では、実施形態2と同様に、角度分解能が不足との判定される変角反射特性がなくなるまで、逐次空間分解能(解像度)を低下させた変角反射特性を算出および更新してもよい。さらに、判定対象とする変角反射特性のうち、角度分解能不足と判定された変角反射特性の占める割合が所定の閾値以下であることを反復処理の終了条件としてもよい。
【0080】
上記実施形態では、角度分解能不足か否かを判定する際には、処理対象とする1つの変角反射特性のみを参照したが、第2の変角反射特性算出部204の処理が繰り返し実行される場合には、先に行われた処理前後の変角反射特性を比較することで判定してもよい。例えば、
図5(a)のグラフ上に処理前後の変角反射特性をプロットした際の反転箇所をそれぞれカウントし、そのカウント値が処理後の変角反射特性にて増加した場合には、繰り返し処理を終了する判定機能を追加する。これにより、他の変角反射特性を有する領域を合成する可能性を抑制することができる。
【0081】
上記実施形態では、有効データ数が足りない画素を少なくとも1つ検知した際に第2の変角反射特性算出部204による処理を実行したが、画素数に対して閾値を設けてもよい。例えば、総画素数に対する所定の割合以上の画素にて有効データ数が不足であると判定された場合に、第2の変角反射特性算出部204による処理を実行する形態であってもよい。
【0082】
上記実施形態では、第1の変角反射特性算出部202は、撮像データから算出したが、受光角と反射特性とが対応付いた値を複数の異なる受光角について取得可能であれば、これに限定しない。
【0083】
上記実施形態では、投光角の異なる撮像画像を取得したが、撮像装置440の位置を変えることで、受光角の異なる撮像画像を取得してもよい。
【0084】
上記実施形態では、光源周期ノイズを定性的に知覚するため、ピーク画像を表示したが、光源周期ノイズの視認を容易とするため、ピーク画像に対してバンドパスフィルタを施した画像を生成し、これを表示してもよい。なお、バンドパスフィルタ、例えば、光源周期以外のパワースペクトルをカットするためのフィルタとする。
【0085】
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0086】
なお、上記実施形態は、何れも本発明を実施するにあたっての具体例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【0087】
201 撮像データ取得部、202 第1の変角反射特性算出部、203 変角反射特性判定部、204 第2の変角反射特性算出部、205 変角反射特性パラメータ導出部、208 特性値出力部