(57)【要約】【課題】特定光源下での被写体と出力画像との高精度なマッチングを保ちつつ、任意の光源下における被写体と出力画像のメタメリズムを低減することができる画像処理装置及び画像処理方法等を提供する。【解決手段】画像処理装置には、分光画像データを取得する画像データ取得部１０３と、前記分光画像データから注目画素の基本刺激値及び分光補助係数を算出する入力分光反射特性算出部１０４と、前記注目画素の基本刺激値に対応し、複数の色材を用いて形成される再現色の基本刺激値を算出すると共に、当該再現色の分光補助係数を算出する出力分光反射特性算出部１０５と、前記注目画素の分光補助係数と前記再現色の分光補助係数との間の誤差を算出する分光補助係数誤差算出１０７と、前記誤差を前記注目画素の周囲の画素に拡散する拡散１０８と、が設けられている。【選択図】図１
2011097522.tif 000002
【特許請求の範囲】
【請求項１】
分光画像データを取得する画像データ取得手段と、
前記分光画像データから注目画素の基本刺激値及び分光補助係数を算出する入力分光反射特性算出手段と、
前記注目画素の基本刺激値に対応し、複数の色材を用いて形成される再現色の基本刺激値を算出すると共に、当該再現色の分光補助係数を算出する出力分光反射特性算出手段と、
前記注目画素の分光補助係数と前記再現色の分光補助係数との間の誤差を算出する分光補助係数誤差算出手段と、
前記誤差を前記注目画素の周囲の画素に拡散する拡散手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記基本刺激値は、特定の光源下における三刺激値又は前記三刺激値から派生する色彩値であることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記分光補助係数は、前記基本刺激値から分光情報を推定した際の分光誤差に応じた値であることを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記分光補助係数は、前記基本刺激値から分光情報を推定した際の分光誤差の主成分の係数であることを特徴とする請求項１又は２に記載の画像処理装置。
【請求項５】
前記拡散手段は、前記注目画素に隣接する画素のうちで、それまでに注目画素となっていない画素に前記誤差を拡散することを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
分光画像データを取得する画像データ取得ステップと、
前記分光画像データから注目画素の基本刺激値及び分光補助係数を算出する入力分光反射特性算出ステップと、
前記注目画素の基本刺激値に対応し、複数の色材を用いて形成される再現色の基本刺激値を算出すると共に、当該再現色の分光補助係数を算出する出力分光反射特性算出ステップと、
前記注目画素の分光補助係数と前記再現色の分光補助係数との間の誤差を算出する分光補助係数誤差算出ステップと、
前記誤差を前記注目画素の周囲の画素に拡散する拡散ステップと、
を有することを特徴とする画像処理方法。
【請求項７】
分光画像データを取得する画像データ取得ステップと、
前記分光画像データから注目画素の基本刺激値及び分光補助係数を算出する入力分光反射特性算出ステップと、
前記注目画素の基本刺激値に対応し、複数の色材を用いて形成される再現色の基本刺激値を算出すると共に、当該再現色の分光補助係数を算出する出力分光反射特性算出ステップと、
前記注目画素の分光補助係数と前記再現色の分光補助係数との間の誤差を算出する分光補助係数誤差算出ステップと、
前記誤差を前記注目画素の周囲の画素に拡散する拡散ステップと、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、種々の光源下での被写体と出力画像との間のマッチングの向上を図った画像処理装置及び画像処理方法等に関する。
【背景技術】
【０００２】
色情報を再現するためのカラーマッチング技術として、特定の光源下で被写体を観察する場合を想定し、その光源下の三刺激値が一致するように色再現を行う測色的色再現と呼ばれる色再現方法が知られている。測色的色再現では、特定光源下で高精度に色が一致するが、照明光源に大きく依存し、想定した照明光源と異なる特性の光源下で観察した場合、正確な色再現は保障されない。
そこで、被写体の色をより正確に再現するための技術として、分光的色再現技術が注目されている。分光的色再現技術は物体の分光反射率そのものを再現することで、あらゆる光源下において被写体との色を一致させる技術であり、メタメリズム（特定光源では同じ色と知覚される色が、光源が変わると異なった色と知覚される条件等色性のこと）を低減することができる。このような分光情報を扱う画像処理に関し、従来のＲＧＢ３バンドカメラよりもバンド数が多い例えば６バンドのマルチバンドカメラが登場している。また、ＣＭＹＫ４色に加えて特色インクを搭載したカラー出力機器が登場している。このように、入出力製品の多バンド化が進展し、分光画像処理システムが構築しやすくなってきている。このような分光画像処理システムでは、マルチバンドカメラから入力される分光情報に対して、カラー出力機器の出力色を分光誤差が小さくなるように制御することが好ましい。
しかし、被写体の分光反射率を可視光領域の全波長域にわたって完全に一致させることは現実的に困難である。そこで、人間の視覚特性で感度の高い波長域を優先的に一致させる方法（例えば等色関数等の波長関数を分光反射率に重み付けする方法）、及び分光的ハーフトーン処理によって任意の光源下のメタメリズムを低減する方法（特許文献１）が提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−４７１８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、人間の視覚特性で感度の高い波長域を優先的に一致させる方法では、メタメリズムを低減する一方で、特定光源下で三刺激値を一致させる精度が劣るため特定光源下において高精度なマッチングが得られない。また、特許文献１に記載の処理はドット単位で分光誤差を周囲に拡散させる分光的ハーフトーン処理であり、任意の光源下でのメタメリズムを低減することができるが、三刺激値又は三刺激値から派生する色彩値によって色を制御することができない。このため、特定光源下のマッチング精度が低下してしまう。
【０００５】
本発明は、特定光源下での被写体と出力画像との高精度なマッチングを保ちつつ、任意の光源下における被写体と出力画像のメタメリズムを低減することができる画像処理装置及び画像処理方法等を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る画像処理装置は、分光画像データを取得する画像データ取得手段と、前記分光画像データから注目画素の基本刺激値及び分光補助係数を算出する入力分光反射特性算出手段と、前記注目画素の基本刺激値に対応し、複数の色材を用いて形成される再現色の基本刺激値を算出すると共に、当該再現色の分光補助係数を算出する出力分光反射特性算出手段と、前記注目画素の分光補助係数と前記再現色の分光補助係数との間の誤差を算出する分光補助係数誤差算出手段と、前記誤差を前記注目画素の周囲の画素に拡散する拡散手段と、を有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、基本刺激値が保持されながら、分光補助係数の誤差が注目画素の周囲の画素に拡散されるため、特定光源下での被写体と出力画像との高精度なマッチングを保ちつつ、任意の光源下における被写体と出力画像のメタメリズムを低減することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施形態に係る画像処理装置の構成を示すブロック図である。
【図２】画像処理装置１０１の動作の一例を示すフローチャートである。
【図３】分光反射率データの一例を示す図である。
【図４】ステップＳ２の詳細を示すフローチャートである。
【図５】ステップＳ３の詳細を示すフローチャートである。
【図６】ステップＳ５の詳細を示すフローチャートである。
【図７】Floyd-Steinberg型の拡散係数の使用方法の一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について添付の図面を参照して具体的に説明する。図１は、本発明の実施形態に係る画像処理装置の構成を示すブロック図である。
この画像処理装置１０１には、画像データを取得する画像データ取得部１０３、入力分光反射特性を算出する入力分光反射特性算出部１０４、出力分光反射特性を算出する出力分光反射特性算出部１０５、及び画像を出力する画像出力部１０６が設けられている。更に、分光補助係数の誤差を算出する分光補助係数誤差算出部１０７、分光補助係数誤差を拡散する拡散部１０８、並びに画像データ及び演算処理を行うために一時的に演算結果を保存するバッファメモリ１０９も設けられている。そして、画像処理装置１０１には、画像データを保持する画像データ保持部１０２、及び画像を出力する画像出力装置１１０が通信可能に接続されている。
【００１０】
＜画像処理装置１０１の動作＞
次に、画像処理装置１０１の動作について説明する。図２は、画像処理装置１０１の動作の一例を示すフローチャートである。
先ず、ステップＳ１において、画像データ取得部１０３が、画像データ保持部１０２に保存されている分光画像データを取得し、分光画像データをバッファメモリ１０９に保存する。なお、分光画像データは、各画素の値として、例えば４００ｎｍから７００ｎｍの波長域を１０ｎｍ間隔でサンプリングした分光反射率が記録された画像データである。図３に分光画像データの各画素に記録される分光反射率データの一例を示す。
次いで、ステップＳ２において、入力分光反射特性算出部１０４が、バッファメモリ１０９に保存されている分光画像データから、分光反射率データを１画素分取得して、分光反射率データから分光反射特性として、入力分光反射率のＬａｂＰＱＲ値を算出する。そして、入力分光反射特性算出部１０４は、入力分光反射率のＬａｂＰＱＲ値をバッファメモリ１０９に保存する。なお、ステップＳ２の詳細については後述する。
その後、ステップＳ３において、出力分光反射特性算出部１０５が、バッファメモリ１０９に保存されている入力分光反射率のＬａｂＰＱＲ値を取得し、これを再現可能なインク値のＬａｂＰＱＲ値を画像出力装置１１０の機種に応じて算出する。そして、出力分光反射特性算出部１０５は、複数のインク（色材）を用いて形成される再現色のＬａｂＰＱＲ値をバッファメモリ１０９に保存する。なお、ステップＳ３の詳細については後述する。
続いて、ステップＳ４において、分光補助係数誤差算出部１０７が、バッファメモリ１０９に保存されている入力分光反射率のＬａｂＰＱＲ値及びインク値のＬａｂＰＱＲ値を比較する。そして、分光補助係数誤差算出部１０７は、Ｐ値、Ｑ値、及びＲ値の誤差成分ΔＰ、ΔＱ、及びΔＲを差分演算により算出し、これらをバッファメモリ１０９に保存する。
次いで、ステップＳ５において、拡散部１０８が、誤差成分ΔＰ、ΔＱ、及びΔＲを周囲の画素データに拡散する。なお、ステップＳ５の詳細については後述する。
その後、ステップＳ６において、入力分光反射特性算出部１０４が、バッファメモリ１０９に保存されている分光画像データの全ての分光反射率画素について処理を行ったかを判定する。そして、全ての分光反射率画素について処理が済んでいれば、ステップＳ７へ進み、そうでなければステップＳ２へ戻り、ステップＳ２〜Ｓ６の処理を行う。
ステップＳ７では、画像出力部１０６が、更新された全画素のＬａｂＰＱＲ値について対応するインク値データを画像出力装置１１０の機種に応じて再算出し、インク値データを画像出力装置１１０に出力する。画像出力装置１１０は、このインク値データを用いて画像を出力する。
【００１１】
＜入力分光反射特性算出部１０４の動作＞
次に、ステップＳ２（入力分光反射特性算出部１０４の動作）の詳細について説明する。図４は、ステップＳ２の詳細を示すフローチャートである。
先ず、ステップＳ２１において、入力分光反射特性算出部１０４は、バッファメモリ１０９に保存されている分光画像データから入力分光反射率を１画素分取得する。
次いで、ステップＳ２２において、入力分光反射特性算出部１０４は、入力分光反射率からＬａｂＰＱＲ値を算出する。なお、ステップＳ２２の詳細については後述する。
その後、ステップＳ２３において、入力分光反射特性算出部１０４は、入力分光反射率のＬａｂＰＱＲ値をバッファメモリ１０９に保存する。
【００１２】
［分光反射率からのＬａｂＰＱＲ値の算出方法］
ここで、ステップＳ２２の詳細について説明する。
ステップＳ２２では、入力分光反射特性算出部１０４は、先ず、次の数１を用いて入力分光反射率Ｒ（λ）から三刺激値ＣＩＥ―ＸＹＺ値を算出し、数２を用いてＣＩＥ―Ｌａｂ値を算出する。なお、入力分光反射率Ｒ（λ）は３６行１列の行列である。
【００１３】
【数１】
2011097522.tif 000003
【００１４】
【数２】
2011097522.tif 000004
【００１５】
次いで、入力分光反射特性算出部１０４は、次の式を用いて三刺激値ＣＩＥ―ＸＹＺ値から分光基本刺激値Ｎ（λ）を算出する。
Ｎ（λ）＝Ｔ×Ｎｃ
Ｎｃ＝（Ｘ，Ｙ，Ｚ）T
ここで、Ｎ（λ）は３６行１列の分光基本刺激値を表す行列である。Ｔは３６行３列の分光基本刺激算出関数を表す行列である。分光基本刺激算出関数としては予め求めたものを用いる。この分光基本刺激算出関数を算出する方法の詳細については後述する。Ｎｃは３行１列の三刺激値を表す行列である。なお、行列（Ｘ，Ｙ，Ｚ）Tは行列（Ｘ，Ｙ，Ｚ）の転置行列である。
その後、入力分光反射特性算出部１０４は、次の式を用いて入力分光反射率Ｒ（λ）と分光基本刺激値Ｎ（λ）との分光誤差行列Ｂ（λ）を算出する。
Ｂ（λ）＝Ｒ（λ）−Ｎ（λ）
続いて、入力分光反射特性算出部１０４は、次の式を用いて分光誤差行列Ｂ（λ）から分光補助係数Ｎｐｑｒを算出する。
Ｎｐｑｒ＝ＶT×Ｂ（λ）
ここで、Ｖは３６行３列の分光補助係数算出関数を表す行列であり、行列ＶTは行列Ｖの転置行列である。分光補助係数算出関数としては予め求めておいたものを用いる。この分光補助係数算出関数を算出する方法の詳細については後述する。そして、分光補助係数Ｎｐｑｒは、次のように、３つの要素を含む３行１列の行列である。
Ｎｐｑｒ＝（Ｎ１，Ｎ２，Ｎ３）T
これらの３つの要素が、入力分光反射率のＰ値、Ｑ値、Ｒ値に相当する。なお、分光情報（入力分光反射率Ｒ（λ））に与える影響度の高さは、Ｎ１＞Ｎ２＞Ｎ３である。
これらの一連の処理により、分光反射率からＬａｂ値及びＰＱＲ値が算出される。
【００１６】
［分光基本刺激算出関数、分光補助係数算出関数］
ここで、分光基本刺激算出関数を算出する方法、及び分光補助係数関数を算出する方法について説明する。
先ず、複数のサンプル色の分光反射率を含むデータ群を用意する。例えば、サンプル色として、画像出力装置１１０で形成され、ＣＩＥ―ＬＡＢ色空間にランダムに分布する７２９色の異なる色のプリントパッチを使用することができる。そして、分光反射率データとして、これらのパッチの測定値を測定することにより得られた分光反射率データを使用する。なお、サンプル色は、色空間内に分布するデータ群であれば、この限りではない。例えば、GretagMacbeth社製のColorChecker、ColorCheckerDC、又はMunsell Book of Color等を用いることもできる。
次いで、各プリントパッチの入力分光反射率Ｒから三刺激値Ｎｃを算出する。
その後、三刺激値Ｎｃから入力の分光反射率を推定するための擬似逆行列を算出し、これを分光基本刺激算出関数Ｔとしてバッファメモリ１０９に保存する。
Ｔ＝Ｒ×ｐｉｎｖ（Ｎｃ）
サンプル色として７２９色のプリントパッチを用いている場合、Ｒは行方向に分光反射率が並んだ３６行７２９列の分光反射率群からなる行列であり、Ｎｃは３行７２９列の三刺激値群から構成される行列である。また、ｐｉｎｖ（）は入力行列の擬似逆行列を求める関数である。従って、分光基本刺激算出関数Ｔは３６行３列の行列となる。
このようにして、分光基本刺激算出関数Ｔを算出することができる。
そして、分光基本刺激算出関数Ｔ及び三刺激値Ｎｃを使用することにより、入力の分光反射率を次式で推定することができる。
Ｎ（λ）＝Ｔ×Ｎｃ
次いで、入力分光反射率Ｒ（λ）及び分光基本刺激Ｎ（λ）との分光誤差行列Ｂ（λ）を次式により算出する。
Ｂ（λ）＝Ｒ（λ）−Ｎ（λ）
なお、行列Ｂには７２９色のプリントパッチの分光誤差が全て格納されており、行列Ｂは、３６行７２９列の行列となる。
その後、分光誤差行列Ｂ（λ）の主成分ベクトルｖｉを算出し、第１から第３までの低次の主成分ベクトルを、分光補助算出関数Ｖとして以下のように保存する。
Ｖ＝（ｖ１，ｖ２，ｖ３）
ここで、ｖ１は第１主成分ベクトル、ｖ２は第２主成分ベクトル、ｖ３は第３主成分ベクトルである。各主成分ベクトルは３６行１列の行列である。
主成分ベクトルは、次のようにして算出する。先ず、分光誤差行列Ｂ（λ）の共分散行列を次式から算出する。
Ｗ＝Ｂ×ＢT
次いで、次式を解くことによって該共分散行列の固有値λｉ、及び固有ベクトルｖｉ（ｉはベクトルの次元数）を求める。そして、固有ベクトルを分光補助係数算出関数として用いる。
Ｗ×ｖｉ＝λｉ×ｖｉ
このようにして、分光補助係数算出関数Ｖを算出することができる。
なお、三刺激値Ｎｃ及び分光補助係数Ｎｐｑｒから対応する分光反射率を再構築することも可能である。分光再構築に用いる変換式は次式の通りである。
Ｒｒ（λ）＝Ｔ×Ｎｃ＋Ｖ×Ｎｐｑｒ
ここで、Ｒｒ（λ）は再構築された分光反射率である。
【００１７】
＜出力分光反射特性算出部１０５の動作＞
次に、ステップＳ３（出力分光反射特性算出部１０５の動作）の詳細について説明する。図５は、ステップＳ３の詳細を示すフローチャートである。
先ず、ステップＳ３１において、出力分光反射特性算出部１０５は、バッファメモリ１０９から入力分光反射率のＬａｂＰＱＲ値を取得する。
次いで、ステップＳ３２において、出力分光反射特性算出部１０５は、バッファメモリ１０９に保存されているインクデータベースより、インク値の初期値として、任意のインク値を初期値として設定する。インクデータベースには、予めインクの分光反射率データが保存されている。
その後、ステップＳ３３において、出力分光反射特性算出部１０５は、例えば、ノイゲバウアの方程式又はクベルカ・ムンクの方程式等のプリンタ出力推定モデルを用いて、出力分光反射率を推定する。
続いて、ステップＳ３４において、出力分光反射特性算出部１０５は、ステップＳ３３で推定した出力分光反射率のＬａｂＰＱＲ値を算出し、ステップＳ３１で取得したＬａｂＰＱＲ値との誤差を算出する。
次いで、ステップＳ３５において、出力分光反射特性算出部１０５は、ステップＳ３４で算出した誤差が最小であるかどうかを判断する。そして、最小であればステップＳ３６に進み、最小でなければステップＳ３７に進む。なお、終了条件としては、例えば、入力Ｌａｂ値と出力Ｌａｂ値との誤差、及び入力ＰＱＲ値と出力ＰＱＲ値との誤差が予め設定した閾値以下となっていることが挙げられる。
ステップＳ３６では、出力分光反射特性算出部１０５は、現在のインク構成を最適インク構成とみなして更新する。そして、ステップ３７に進む。
ステップＳ３７では、出力分光反射特性算出部１０５は、終了条件を満たしているかを判断し、満たしていればステップ３９に進み、満たしていなければステップＳ３８に進む。
ステップＳ３８では、出力分光反射特性算出部１０５は、インク値の構成を更新する。そして、ステップＳ３３に戻る。
ステップＳ３９では、出力分光反射特性算出部１０５は、ステップＳ３６で最終的に更新された最適インク構成のＬａｂＰＱＲ値を算出し、これをバッファメモリ１０９に保存する。
【００１８】
＜拡散部１０８の動作＞
次に、ステップＳ５（拡散部１０８の動作）の詳細について説明する。図６は、ステップＳ５の詳細を示すフローチャートである。
先ず、ステップＳ５１において、拡散部１０８は、バッファメモリ１０９からＰ値、Ｑ値、及びＲ値の誤差成分ΔＰ、ΔＱ、及びΔＲを取得する。
次いで、ステップＳ５２において、拡散部１０８は、バッファメモリ１０９から誤差拡散係数を取得する。誤差拡散係数としては、例えばFloyd-Steinberg型の拡散係数を用いることができる。図７にその使用方法の一例を示す。つまり、注目画素に隣接する画素のうちで、未処理の画素（それまでに注目画素となっていない画素）に誤差を拡散させる。Floyd-Steinberg型の拡散係数は、例えば「“An adaptive algorithm for spatial grayscale",SID International Symposium Digest of Technical Papers,vol 4.3,1975,pp.36-37」に記載されている。
その後、ステップＳ５３において、拡散部１０８は、注目画素の誤差成分ΔＰ、ΔＱ、及びΔＲに拡散係数を乗じた値を周囲画素のＬａｂＰＱＲ値のＰ、Ｑ、及びＲの各成分に拡散する。
続いて、ステップＳ５４において、拡散部１０８は、ステップＳ５３の処理で更新されたＬａｂＰＱＲ値をバッファメモリ１０９に保存する。
【００１９】
このように、本実施形態では、分光反射率データから基本刺激値及び分光補助係数を算出し、基本刺激値を保持しつつ、分光補助係数を周囲の画素に拡散している。このため、分光出力を行う際に特定光源下で測色的色再現と同等な色の一致を得ることができ、かつ、任意の光源下におけるメタメリズムを低減することができる。
【００２０】
なお、基本刺激値はＣＩＥ−Ｌａｂ値に限定されない。例えば、基本刺激値としてＣＩＥ−ＬＵＶ値又はＣＩＥ−ＸＹＺ値等の三刺激値を用いてもよく、また、三刺激値から派生する色彩値として、例えば色の見えを考慮したＣＩＥＣＡＭ０２等のカラーアピアランス空間における色彩値を用いることも可能である。
また、上述の実施形態では、分光補助係数として、基本刺激値から目標の分光反射率を推定した際に生じる分光誤差データを主成分分析し、寄与率が大きい上位３つの主成分を分光補助係数として用いているが、次元数を３つに限定する必要はない。例えば、他の次元数で分光補助係数を算出してもよく、また、主成分分析による次元数圧縮なしで分光誤差データを分光補助係数として用いることも可能である。
また、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、ディスプレイ等）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、プロジェクタ等）に適用してもよい。
更に、本発明の各工程は、ネットワーク又は各種記憶媒体を介して取得したソフトウェア（プログラム）をパーソナルコンピュータ等の処理装置（ＣＰＵ、プロセッサ）にて実行することでも実現できる。
【符号の説明】
【００２１】
１０１：画像処理装置  １０３：画像データ取得部  １０４：入力分光反射特性算出部  １０５：出力分光反射特性算出部  １０６：画像出力部  １０７：分光補助係数誤差算出部  １０８：拡散部  １０９：バッファメモリ
【図１】
2011097522.tif 000005
【図２】
2011097522.tif 000006
【図３】
2011097522.tif 000007
【図４】
2011097522.tif 000008
【図５】
2011097522.tif 000009
【図６】
2011097522.tif 000010
【図７】
2011097522.tif 000011