JP2013213758A - 画像処理装置および画像処理方法 - Google Patents
画像処理装置および画像処理方法 Download PDFInfo
- Publication number
- JP2013213758A JP2013213758A JP2012084699A JP2012084699A JP2013213758A JP 2013213758 A JP2013213758 A JP 2013213758A JP 2012084699 A JP2012084699 A JP 2012084699A JP 2012084699 A JP2012084699 A JP 2012084699A JP 2013213758 A JP2013213758 A JP 2013213758A
- Authority
- JP
- Japan
- Prior art keywords
- patch
- mark
- patches
- chart image
- image processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
【課題】複数パッチを2次元配置したチャート画像を一括測定した際に、パッチ毎の測定値を自動かつ正確に取得する。
【解決手段】出力デバイスから、4隅に基準マーク71が付与されたチャート画像7を出力する。2次元測定器でチャート画像7を一括測定して得られた2次元測定データから、4隅の基準マーク71を検出する。該検出された基準マーク71の位置から測定時の傾きを考慮しつつ、該基準マーク71に含まれるカラーバーからチャート画像を構成するパッチ数を取得する。これにより、該パッチ数に基づいて各パッチ位置を算出し、その測定値を正確に取得することができる。
【選択図】図3
【解決手段】出力デバイスから、4隅に基準マーク71が付与されたチャート画像7を出力する。2次元測定器でチャート画像7を一括測定して得られた2次元測定データから、4隅の基準マーク71を検出する。該検出された基準マーク71の位置から測定時の傾きを考慮しつつ、該基準マーク71に含まれるカラーバーからチャート画像を構成するパッチ数を取得する。これにより、該パッチ数に基づいて各パッチ位置を算出し、その測定値を正確に取得することができる。
【選択図】図3
Description
本発明は、複数パッチにより構成されるチャート画像を測定する画像処理装置および画像処理方法に関する。
あるデバイスの色再現特性を測定する際には、所定の複数色についての再現色を測定する必要があり、従来はこの再現色の測定に、1色ずつの測定を行う測定器を用いていた。すなわち、例えば表示デバイスであれば、1色を表示して測定する、という作業を所定の色数分繰り返すという手法がとられてきた。しかしながらこのような方法では、1つのデバイスの色再現特性を測定するために時間と手間がかかり過ぎる。
また、測定対象となるデバイスにおいてその色再現範囲の全てを網羅したパッチからなるチャート画像を表示し、2次元測定器を用いて該チャート画像を一度に測定する手法もある。この場合、2次元で一括測定したデータから各パッチ色のデータを取得する方法としては、手動で取得する方法のほか、自動検出による方法も提案されている。自動検出方法としては例えば、チャート画像の4隅に既知の分光反射率を有する無彩色の基準マークを付すことで、チャート画像の位置を判定する方法がある(例えば、特許文献1参照)。また、背景色が既知であるチャート画像の撮影結果から、互いに直交する複数の方向に沿って色情報を解析して、チャート画像において測定すべき領域(チャート領域)を抽出する方法もある(例えば、特許文献2参照)。
しかしながら、上記特許文献1に記載の技術においては、チャート画像の4隅に、既知の分光反射率を有する無彩色の基準マークを配置する必要があり、これはどのようなデバイスであっても配置可能とはならない。また、判定の際に分光を扱う必要があるため、判定装置の性能も限定される。
また、上記特許文献2に記載の技術においては、チャート画像の撮影結果において、パッチ領域の境界が直交している必要がある。したがって、チャート領域が正確に検出可能となるのは、チャート画像をほぼ正対する位置で撮影した場合に限られ、少しでも傾いた状態で撮影された場合には検出不可能であった。
本発明は上述した問題を解決するためになされたものであり、複数パッチを2次元配置したチャート画像を一括で測定した際に、パッチ毎の測定値を自動かつ正確に取得することを目的とする。
上記目的を達成するための一手段として、本発明の画像処理装置は以下の構成を有する。
すなわち、複数パッチが2次元配置され、基準マークが付与されたチャート画像を一括測定して2次元測定データを得る測定手段と、前記2次元測定データから前記基準マークを検出する検出手段と、該検出された基準マークによって示される、前記チャート画像を構成するパッチ数を取得するパッチ数取得手段と、該取得されたパッチ数に基づいて前記チャート画像における各パッチの位置を算出し、該パッチ位置に基づいて前記2次元測定データから各パッチの測定値を取得するパッチ測定値取得手段と、を有することを特徴とする。
本発明によれば、複数パッチを2次元配置したチャート画像を一括で測定した際に、パッチ毎の測定値を自動かつ正確に取得することが可能となる。
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施の形態は特許請求の範囲に関る本発明を限定するものではなく、また、本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
<第1実施形態>
本実施形態では、画像出力装置によって出力された、4隅に基準マークが付与された2次元チャート画像を一括測定する。そして、得られた2次元測定データから4隅の基準マークを検出し、各基準マークによって示される、チャート画像を構成するパッチ数取得を行う。そして、該取得されたパッチ数に基づいてチャート画像における各パッチの位置を算出し、各パッチの測定値を取得することで、パッチ毎の測定値を自動かつ正確に取得する。
本実施形態では、画像出力装置によって出力された、4隅に基準マークが付与された2次元チャート画像を一括測定する。そして、得られた2次元測定データから4隅の基準マークを検出し、各基準マークによって示される、チャート画像を構成するパッチ数取得を行う。そして、該取得されたパッチ数に基づいてチャート画像における各パッチの位置を算出し、各パッチの測定値を取得することで、パッチ毎の測定値を自動かつ正確に取得する。
●装置構成
図1に、本実施形態における画像処理装置のブロック構成を示す。同図に示すように画像処理装置は、表示部1と2次元測定器2、およびデータ処理部3から構成される。表示部1は、該表示部1自体の特性を測定するためのチャート画像7を表示する。2次元測定器2は、表示部1で表示されたチャート画像7を測定する。チャート画像7の詳細については後述するが、2次元測定器2ではこのチャート画像7を一括で測定する。
図1に、本実施形態における画像処理装置のブロック構成を示す。同図に示すように画像処理装置は、表示部1と2次元測定器2、およびデータ処理部3から構成される。表示部1は、該表示部1自体の特性を測定するためのチャート画像7を表示する。2次元測定器2は、表示部1で表示されたチャート画像7を測定する。チャート画像7の詳細については後述するが、2次元測定器2ではこのチャート画像7を一括で測定する。
データ処理部3は、データ入力部31とパッチ色データ算出部32、プロファイル作成部33、データ出力部34、から構成される。データ入力部31は、2次元測定器2で測定したチャート画像7の2次元測定データを入力する。パッチ色データ算出部32は、データ入力部31で入力したチャート画像7の2次元測定データを用いて、各パッチの色データを自動で検出/取得する。そしてプロファイル作成部33で、パッチ色データ算出部32で取得したパッチ色データを用いて表示部1のプロファイルを生成し、データ出力部34が該生成されたプロファイルを表示部1に出力する。
以下、表示部1としてRGBデータを表示するPC用ディスプレイを適用し、2次元測定器2としてRGB画像を測定結果として出力するデジタルカメラを使用した場合を例として説明する。
●プロファイル作成処理(全体)
以下、第1実施形態におけるプロファイル作成処理について、その概要を図2のフローチャートに示す。まずS11で表示部1が、チャート画像7を表示する。そしてS12で2次元測定器2が、表示部1に表示されたチャート画像7を2次元で測定する。この2次元測定結果を、以下2次元測定データと称する。次にS13でデータ入力部31が、該2次元測定データを入力する。そしてS14でパッチ色データ算出部32が、該入力した2次元測定データからパッチ色データを算出する。このパッチ色データ算出処理の詳細については後述する。そしてS15でプロファイル作成部33が、該算出されたパッチ色データからプロファイルを作成する。このプロファイル作成処理の詳細については後述する。そしてS16でデータ出力部34が、該作成されたプロファイルを表示部1に出力する。
以下、第1実施形態におけるプロファイル作成処理について、その概要を図2のフローチャートに示す。まずS11で表示部1が、チャート画像7を表示する。そしてS12で2次元測定器2が、表示部1に表示されたチャート画像7を2次元で測定する。この2次元測定結果を、以下2次元測定データと称する。次にS13でデータ入力部31が、該2次元測定データを入力する。そしてS14でパッチ色データ算出部32が、該入力した2次元測定データからパッチ色データを算出する。このパッチ色データ算出処理の詳細については後述する。そしてS15でプロファイル作成部33が、該算出されたパッチ色データからプロファイルを作成する。このプロファイル作成処理の詳細については後述する。そしてS16でデータ出力部34が、該作成されたプロファイルを表示部1に出力する。
●チャート画像
ここで、本実施形態におけるチャート画像7について、図3および図4を用いて詳細に説明する。図3は、チャート画像7全体の例を示す。図3に示すようにチャート画像7は、位置及び特性取得用となる基準マーク71とチャート画像本体72から構成され、基準マーク71は、チャート画像本体72の4隅に配置される。
ここで、本実施形態におけるチャート画像7について、図3および図4を用いて詳細に説明する。図3は、チャート画像7全体の例を示す。図3に示すようにチャート画像7は、位置及び特性取得用となる基準マーク71とチャート画像本体72から構成され、基準マーク71は、チャート画像本体72の4隅に配置される。
図4は、基準マーク71の詳細例を示す図である。図4に示すように基準マーク71は、複数の小マークから構成される。小マークとしては、まず、該基準マーク71の位置検出用である位置検出マーク711を有する。そして、チャート画像7を構成する全体パッチ数を示す、横方向パッチ数マーク712、縦方向パッチ数マーク713を有する。さらに、チャート画像7の各隅を起点として、測定から除外するパッチ数を示す横方向除外パッチ数マーク714、縦方向除外パッチ数マーク715を有する。また、特に使途を限定しないリザーブ用マーク716も備えている。なお、横方向除外パッチ数マーク714、縦方向除外パッチ数マーク715は、一部が重複している。
4隅にある基準マーク71は、それぞれの位置に応じて小マークの位置が異なる。例えば図4は、チャート画像本体72の左上隅に位置する基準マーク71(以下、左上マークと称する)の例を示しており、小マークの構成は以下のようになっている。まず、左上に位置検出マーク711が配置され、その右側に横方向パッチ数マーク712、また下側に縦方向パッチ数マーク713が配置されている。さらに、位置検出マーク711の斜め下(右下)側に横方向除外パッチ数マーク714、縦方向除外パッチ数マーク715、リザーブ用マーク716が配置されている。なお、位置検出マーク711と横方向パッチ数マーク712とは同じ幅であり、また位置検出マーク711と縦方向パッチ数マーク713とは同じ高さである。以降の説明でも明らかなように、位置検出マーク711の幅と高さは必ずしも同じでなくても良い。
図4では左上マークの例を示したが、他の隅に位置する基準マーク71についての小マーク構成は以下のようになる。すなわち、左下隅に位置する左下マークについては、左上マークを上下反転させた位置関係となる。また、右上隅に位置する右上マークは左上マークを左右反転させた位置関係となり、右下隅に位置する右下マークは左上マークを180度回転させた位置関係となる。
また、図4に示すようにチャート画像本体72は、測定対象となるパッチデータ721と、測定対象から除外される除外パッチデータ722から構成される。
本実施形態におけるチャート画像7は、背景(地色)を白色とし、位置検出マーク711を黒とする。そして、横方向パッチ数マーク712、縦方向パッチ数マーク713、横方向除外パッチ数マーク714、縦方向除外パッチ数マーク715を、複数のカラー領域によって構成する。以下、各マークは2つのカラー領域によって構成されるとし、各カラー領域をカラーバーと称する。なお、リザーブ用マーク716については特に色を規定しない。またチャート画像本体72ではパッチデータ721として、(0,0,0)、(0,0,32)、(0,0,64)、…、(255,255,224)、(255,255,255)のように、RGB色空間を均等格子状に分割して値をふったパッチを並べる。除外パッチデータ722については特に色を規定しない。
横方向パッチ数マーク712と縦方向パッチ数マーク713、横方向除外パッチ数マーク714、縦方向除外パッチ数マーク715は、それぞれ2本のカラーバーによって表現される。本実施形態では、予めカラーバーの色と数値を対応付けておくことで、2本のカラーバーで8進数の数字を表す。例えば、カラーバーとしての黒(0,0,0)を0に対応させる。同様に、青(0,0,255)を1、緑(0,255,0)を2、シアン(0,255,255)を3、赤(255,0,0)を4、にそれぞれ対応させる。さらに、マゼンタ(255,0,255)を5、黄(255,255,0)を6、白(255,255,255)を7、にそれぞれ対応させる。図4に示す左上マークの例では、横方向パッチ数マーク712が位置検出マーク711側から順に「青」と「黄」で再現されているため、8進数表記での"16"、すなわち1*8+6=14を表わす。また、縦方向パッチ数マーク713は位置検出マーク711側から順に「青」と「黒」で再現されているため、8進数表記での"10"、すなわち1*8+0=8を表わす。
なお、横方向除外パッチ数マーク714と縦方向除外パッチ数マーク715は、1本のカラーバーが重複する。この重複するカラーバーは、横方向除外パッチ数マーク714および縦方向除外パッチ数マーク715のいずれにおいても2桁の8進数表記における上位側データを示す。そこで本実施形態では、重複するカラーバーを黒とすることで、横方向、縦方向ともに上位側データを0に設定し、横方向および縦方向のいずれについても、除外すべきパッチ数が8を超えないように制御する。これにより、下位側データのみによる8未満の表記で対応可能となる。
また、1つの基準マーク内において、横方向除外パッチ数マーク714と縦方向除外パッチ数マーク715の両方に2以上の値が設定されていた場合、それらを乗じたパッチ数を除外する。
なお、位置検出マーク711、横方向パッチ数マーク712、縦方向パッチ数マーク713はチャート画像7に共通するデータであり、これらは4つの基準マークの全てで同値となる。したがって、以降はこれらを「共通データ」と称する。一方、横方向除外パッチ数マーク714、縦方向除外パッチ数マーク715はそれぞれ、測定対象から除外したい除外パッチデータ722のパッチ数を示しており、各隅に固有のデータである。したがって、以降はこれらを「個別データ」と称する。
●パッチ色データ算出処理(S14)
以下、上記S14における、パッチ色データ算出部32でのパッチ色データ算出処理の詳細について、図5のフローチャートを用いて説明する。
以下、上記S14における、パッチ色データ算出部32でのパッチ色データ算出処理の詳細について、図5のフローチャートを用いて説明する。
まずS141で、入力したチャート画像7の2次元測定データから、4隅に付与された位置検出マーク711を検出する。この検出処理の詳細については後述する。
次にS142で、該検出した4つの位置検出マーク711の位置関係から、測定対象となるチャート画像本体72の、2次元測定器2の測定面に対する傾きを算出する。ここで、傾きの算出方法について図7を用いて説明する。図7は、S141で検出した4つの位置検出マーク711を結ぶことで描画される四角形である。この四角形における上辺、下辺、左辺、右辺の長さをそれぞれdt、db、dl、drとし、縦方向の傾き率Gy、および横方向の傾き率Gxを以下の(1)式で表わす。ここで算出される傾き率Gy、Gxは、以下のS143およびS146で使用する。
Gy=(dt/db-1)*1.5+1
Gx=(dl/dr-1)*1.5+1 …(1)
なお、傾き率の算出方法は上記(1)式に限らず、パッチサイズや所望する検出精度等に応じて、算出式を適宜設定すれば良い。
Gx=(dl/dr-1)*1.5+1 …(1)
なお、傾き率の算出方法は上記(1)式に限らず、パッチサイズや所望する検出精度等に応じて、算出式を適宜設定すれば良い。
次にS143で、S142で算出した傾き率Gy、Gxが、閾値範囲内にあるか否かを判定する。これは、本実施形態におけるパッチ検出は、チャート画像7に傾きが無いことを前提としているため、チャート画像7の傾きがそのまま処理を続行しても問題ない程度であるか否かを判定するためである。したがって、S143で傾き率Gy、Gxが閾値範囲内であればS144に進み、そうでなければS147に進む。
S144では、各隅の基準マークのそれぞれについて、位置検出マーク711の近傍にある、測定対象となる縦横方向のパッチ数を示す共通データ、および各隅の測定から除外するパッチ数を示す個別データを取得する。ここでのデータ取得方法の詳細については後述する。
次にS145では、S144で取得した各隅の共通データが、全て同じ値であるか否かを判定する。全てが同じ値であればS146に進むが、1つでも違う値であれば、例えばムラが発生している可能性があるため、以後の処理は行わずにS147に進む。
S146では、S144で取得した各データを用いて、測定対象となる領域の位置および大きさを特定し、該測定対象領域における測定値(パッチ測定値)を取得する。ここで取得した測定値は、パッチ色データとしてプロファイル作成部33に出力する。この測定値取得の際には、対象となる領域を特定することが不可欠である。この対象領域特定処理の詳細については後述する。
なおS147では、測定が成功しなかった旨を示すアラート(警告)を報知して、ユーザに再測定を促す。アラートの種類としては、S143でNO判定であった場合には「チャート画像の傾き過多」の旨を報知し、S145でNO判定であった場合には「シェーディング必要」の旨を報知する。
●位置検出マークの検出処理(S141)
ここで、上記S141における、4隅の位置検出マーク711の検出処理について、図6のフローチャートを用いて説明する。図6では特に、左上マークにおける位置検出マーク711を検出する場合を例として説明する。
ここで、上記S141における、4隅の位置検出マーク711の検出処理について、図6のフローチャートを用いて説明する。図6では特に、左上マークにおける位置検出マーク711を検出する場合を例として説明する。
まずS1411で、入力したチャート画像7の2次元測定データを2値化する。2値化の閾値としては、上述した8種類のカラーバーを用いる場合であればその中間値である128を用いることで、良好な2値化が可能となる。ここでの2値化結果としては、閾値未満(127以下)であれば0を出力し、閾値以上(128以上)であれば255を出力するとする。
次にS1412で、2値化したチャート画像7の2次元測定データにおいて、RGB全色が0になる点を探索(サーチ)する。この探索は左上隅の点を中心とし、探索半径を順次大きくしながら行っていく。そしてS1413で、S1412で探索された点を、位置検出マーク711の左上隅の点として保存する。
S1414では、S1413で保存した点から右下方向に、RGB全色が1になる点を探索する。この探索はS1413で保存した点を中心として、探索半径を順次大きくしながら、各方向で最初にRGB全色が1になる点を探索していき、探索半径が最大になる方向にある点を検出する。そしてS1415で、S1414で検出された点を、位置検出マーク711の右下隅の点として保存する。
このように図6に示す処理によれば、左上マークにおける位置検出マーク711の位置として、左上隅および右下隅の点が検出されるが、左下マークにおける位置検出マーク711についても同様に検出することができる。すなわち、図6に示すフローチャートを、左上を左下に、右下を右上に読み替えて実行すれば良い。同様に右上マークにおける位置検出マーク711については、図6に示すフローチャートを、左上を右上、右下を左下に読み替えて実行すれば良い。また右下マークにおける位置検出マーク711については、左上を右下、右下を左上と読み替えて実行すれば良い。
●共通データおよび個別データの取得処理(S144)
ここで、上記S144における、共通データおよび個別データの取得処理について、図8のフローチャートを用いて説明する。図8では、左上マークにおける共通データおよび個別データを取得する場合を例として説明する。ここで共通データとは、測定対象となる縦横方向のパッチ数を示す横方向パッチ数マーク712、縦方向パッチ数マーク713である。また個別データとは、各隅の測定から除外するパッチ数を示す横方向除外パッチ数マーク714、縦方向除外パッチ数マーク715である。
ここで、上記S144における、共通データおよび個別データの取得処理について、図8のフローチャートを用いて説明する。図8では、左上マークにおける共通データおよび個別データを取得する場合を例として説明する。ここで共通データとは、測定対象となる縦横方向のパッチ数を示す横方向パッチ数マーク712、縦方向パッチ数マーク713である。また個別データとは、各隅の測定から除外するパッチ数を示す横方向除外パッチ数マーク714、縦方向除外パッチ数マーク715である。
まずS1441で、位置検出マーク711の左上隅および右下隅の点の座標を取得する。次にS1442で、左上隅および右下隅の点の座標から、横方向パッチ数マーク712(2本のカラーバー)の位置を算出することで、横方向の検出すべきパッチ数を取得する。ここで、位置検出マーク711における左上隅の点を(Xlt,Ylt)、右下隅の点を(Xrb,Yrb)とする。上述したように、位置検出マーク711と横方向パッチ数マーク712とは同じ幅であるから、横方向パッチ数マーク712を構成する2本のカラーバーのそれぞれの中心点(Xcb1,Ycb1)、(Xcb2,Ycb2)は、以下の(2)式で算出される。
(Xcb1,Ycb1)=(Xrb+(Xrb-Xlt)*1/4,(Ylt+Yrb)/2)
(Xcb2,Ycb2)=(Xrb+(Xrb-Xlt)*3/4,(Ylt+Yrb)/2) …(2)
そして、(2)式で算出される2点のそれぞれを中心とする3x3画素分のRGB値の平均をとった後、128を閾値として2値化することで、各カラーバーの色を判定する。このように2本のカラーバーの色が検出されれば、上述したように該2色に対応する8進数として、横方向のパッチ数を取得する。
(Xcb2,Ycb2)=(Xrb+(Xrb-Xlt)*3/4,(Ylt+Yrb)/2) …(2)
そして、(2)式で算出される2点のそれぞれを中心とする3x3画素分のRGB値の平均をとった後、128を閾値として2値化することで、各カラーバーの色を判定する。このように2本のカラーバーの色が検出されれば、上述したように該2色に対応する8進数として、横方向のパッチ数を取得する。
次にS1443で、左上隅および右下隅の点の座標から、縦方向パッチ数マーク713(2本のカラーバー)の位置を算出することで、縦方向の測定すべきパッチ数を取得する。上述したように、位置検出マーク711と縦方向パッチ数マーク713とは同じ高さであるから、縦方向パッチ数マーク713を構成する2本のカラーバーのそれぞれの中心点(Xcb3,Ycb3)、(Xcb4,Ycb4)は、以下の(3)式で算出される。
(Xcb3,Ycb3)=((Xlt+Xrb)/2,Yrb+(Yrb-Ylt)*1/4)
(Xcb4,Ycb4)=((Xlt+Xrb)/2,Yrb+(Yrb-Ylt)*3/4) …(3)
そして、(3)式で算出される2点のそれぞれを中心とする3x3画素分のRGB値の平均をとった後、128を閾値として2値化することで、各カラーバーの色を判定し、対応する8進数として、縦方向のパッチ数を取得する。
(Xcb4,Ycb4)=((Xlt+Xrb)/2,Yrb+(Yrb-Ylt)*3/4) …(3)
そして、(3)式で算出される2点のそれぞれを中心とする3x3画素分のRGB値の平均をとった後、128を閾値として2値化することで、各カラーバーの色を判定し、対応する8進数として、縦方向のパッチ数を取得する。
次にS1444で、左上隅および右下隅の点の座標から、横方向除外パッチ数マーク714(2本のカラーバー)の位置を算出することで、横方向において除外すべきパッチ数を取得する。横方向除外パッチ数マーク714を構成する2本のカラーバーのそれぞれの中心点(Xcb5,Ycb5),(Xcb6,Ycb6)は、以下の(4)式で算出される。
(Xcb5,Ycb5)=(Xrb+(Xrb-Xlt)*1/4,Yrb+(Yrb-Ylt)*1/8)
(Xcb6,Ycb6)=(Xrb+(Xrb-Xlt)*3/4,Yrb+(Yrb-Ylt)*1/4) …(4)
そして、(4)式で算出される2点のそれぞれを中心とする3x3画素分のRGB値の平均をとった後、128を閾値として2値化することで、各カラーバーの色を判定し、対応する8進数として、横方向の除外パッチ数を取得する。
(Xcb6,Ycb6)=(Xrb+(Xrb-Xlt)*3/4,Yrb+(Yrb-Ylt)*1/4) …(4)
そして、(4)式で算出される2点のそれぞれを中心とする3x3画素分のRGB値の平均をとった後、128を閾値として2値化することで、各カラーバーの色を判定し、対応する8進数として、横方向の除外パッチ数を取得する。
次にS1445で、左上隅および右下隅の点の座標から、縦方向除外パッチ数マーク715(2本のカラーバー)の位置を算出することで、縦方向において除外すべきパッチ数を取得する。縦方向除外パッチ数マーク715を構成する2本のカラーバーのそれぞれの中心点(Xcb7,Ycb7),(Xcb8,Ycb8)は、以下の(5)式で算出される。
(Xcb7,Ycb7)=(Xrb+(Xrb-Xlt)*1/8,Yrb+(Yrb-Ylt)*1/4)
(Xcb8,Ycb8)=(Xrb+(Xrb-Xlt)*1/4,Yrb+(Yrb-Ylt)*3/4) …(5)
そして、(5)式で算出される2点のそれぞれを中心とする3x3画素分のRGB値の平均をとった後、128を閾値として2値化することで、各カラーバーの色を判定し、対応する8進数として、縦方向の除外パッチ数を取得する。
(Xcb8,Ycb8)=(Xrb+(Xrb-Xlt)*1/4,Yrb+(Yrb-Ylt)*3/4) …(5)
そして、(5)式で算出される2点のそれぞれを中心とする3x3画素分のRGB値の平均をとった後、128を閾値として2値化することで、各カラーバーの色を判定し、対応する8進数として、縦方向の除外パッチ数を取得する。
このように図8に示す処理によれば、左上マークにおける共通データおよび個別データが取得されるが、左下マークについても同様に共通データおよび個別データを取得することができる。すなわち、図8に示すフローチャートを、左上を左下に、右下を右上に読み替えて実行すれば良い。同様に右上マークについては、図8に示すフローチャートを、左上を右上、右下を左下に読み替えて実行すれば良く、右下マークにについては、左上を右下、右下を左上と読み替えて実行すれば良い。
●パッチ測定値取得処理(S146)
ここで、上記S146におけるパッチ測定値取得処理について、図14のフローチャートを用いて説明する。
ここで、上記S146におけるパッチ測定値取得処理について、図14のフローチャートを用いて説明する。
まずS1461で、先に求めた4つの位置検出マーク711から、チャート画像本体72の4隅の座標を算出する。例えば、左上マークにおける位置検出マーク711の左上隅の点を(Xlt,Ylt)、右下隅の点を(Xrb,Yrb)とすると、チャート画像本体72の左上の座標(TXlt、TYlt)は以下の(6)式により算出される。
(TXlt,TYlt)=(2*Xrb-Xlt,2*Yrb-Ylt) …(6)
チャート画像本体72における他の3つの隅の座標(TXlb,TYlb)、(TXrt,TYrt)、(TXrb,TYrb)についても、同様に算出できる。
チャート画像本体72における他の3つの隅の座標(TXlb,TYlb)、(TXrt,TYrt)、(TXrb,TYrb)についても、同様に算出できる。
次にS1462で、現在処理中であるパッチについて、その縦方向位置Y、縦方向の傾き率に関する変数GyCur、GyStep、GyTempを、以下の(7)式にしたがって初期化する。(7)式において、GyはS142で求めた縦方向の傾き率であり、PyはS1442で算出した縦方向のパッチ数である。また、GyCurは現在処理中である縦方向傾き率、GyStepは該傾き率の更新幅、GyTempは該傾き率の一時保存値、を示す。
Y=0
GyCur=Gy
GyStep=(1-Gy)*2/(Py-1)
GyTemp=0 …(7)
次にS1463で、現在処理中であるパッチについて、その横方向のパッチ位置X、横方向の傾き率に関する変数GxCur、GxStep、GxTempを、以下の(8)式にしたがって
初期化する。(8)式において、GxはS142で求めた横方向の傾き率であり、PxはS1443で算出した横方向のパッチ数である。
GyCur=Gy
GyStep=(1-Gy)*2/(Py-1)
GyTemp=0 …(7)
次にS1463で、現在処理中であるパッチについて、その横方向のパッチ位置X、横方向の傾き率に関する変数GxCur、GxStep、GxTempを、以下の(8)式にしたがって
初期化する。(8)式において、GxはS142で求めた横方向の傾き率であり、PxはS1443で算出した横方向のパッチ数である。
X=0
GxCur=Gx
GxStep=(1-Gx)*2/(Px-1)
GxTemp=0 …(8)
次にS1464で、現在処理中のパッチ位置X,Yが除外パッチであるか否かを判定し、除外パッチであればS1468に進み、除外パッチでなければS1465に進む。この判定は、S144(図8)で取得した、各隅の除外パッチ数に基づいて行う。
GxCur=Gx
GxStep=(1-Gx)*2/(Px-1)
GxTemp=0 …(8)
次にS1464で、現在処理中のパッチ位置X,Yが除外パッチであるか否かを判定し、除外パッチであればS1468に進み、除外パッチでなければS1465に進む。この判定は、S144(図8)で取得した、各隅の除外パッチ数に基づいて行う。
S1465では、現在処理中のパッチ位置X,Yにおけるパッチの幅Wxy、高さHxyを、以下の(9)式より求める。
Wxy=(GyTemp+GyCur/2))*(TXrt+TXlb-TXlt-TXrb)/Py
Hxy=(GxTemp+GxCur/2))*(TYrt+TYlb-TYlt-TYrb)/Px …(9)
さらにS1466で、現在処理中のパッチ位置X,Yにおけるパッチの中心座標(XX,YY)を、以下の(10)式より求める。
Hxy=(GxTemp+GxCur/2))*(TYrt+TYlb-TYlt-TYrb)/Px …(9)
さらにS1466で、現在処理中のパッチ位置X,Yにおけるパッチの中心座標(XX,YY)を、以下の(10)式より求める。
XX=((Wxy)*(GxTemp+GxCur/2)/Px)
YY=((Hxy)*(GyTemp+GyCur/2)/Py) …(10)
そしてS1467で、S1466で算出した中心座標(XX,YY)を中心として、例えば5x5=25画素の平均画素値を求め、これを当該パッチの画素値とする。この処理によりすなわち、現在処理中である1パッチの測定値が取得される。
YY=((Hxy)*(GyTemp+GyCur/2)/Py) …(10)
そしてS1467で、S1466で算出した中心座標(XX,YY)を中心として、例えば5x5=25画素の平均画素値を求め、これを当該パッチの画素値とする。この処理によりすなわち、現在処理中である1パッチの測定値が取得される。
次にS1468で、パッチ位置X、横方向の傾き率に関する変数GxCur、GxTempを、以下の(11)式にしたがって更新する。
X=X+1
GxTemp+=GxCur
GxCur+=GxStep …(11)
そしてS1469で、X>Px-1であるか否か、すなわち横方向パッチ位置が横方向パッチ数を超えたか否かを判定する。X>Px-1であればS1470に進むが、そうでなければS1464に戻り、X方向に隣接する、次のパッチについての測定値取得処理を開始する。
GxTemp+=GxCur
GxCur+=GxStep …(11)
そしてS1469で、X>Px-1であるか否か、すなわち横方向パッチ位置が横方向パッチ数を超えたか否かを判定する。X>Px-1であればS1470に進むが、そうでなければS1464に戻り、X方向に隣接する、次のパッチについての測定値取得処理を開始する。
S1470では、パッチ位置XおよびY、縦方向の傾き率に関する変数GyCur、GyTempを、以下の(12)式にしたがって更新する。
X=0
Y=Y+1
GyTemp+=GyCur
GyCur+=GyStep …(12)
そしてS1471で、Y>Py-1であるか否か、すなわち縦方向パッチ位置が縦方向パッチ数を超えたか否かを判定する。Y>Py-1であれば処理を終了するが、そうでなければS1463に戻り、Y方向に隣接する、次の行のパッチについての測定値取得処理を開始する。
Y=Y+1
GyTemp+=GyCur
GyCur+=GyStep …(12)
そしてS1471で、Y>Py-1であるか否か、すなわち縦方向パッチ位置が縦方向パッチ数を超えたか否かを判定する。Y>Py-1であれば処理を終了するが、そうでなければS1463に戻り、Y方向に隣接する、次の行のパッチについての測定値取得処理を開始する。
以上、図14に示す処理により、チャート画像本体72における対象領域を特定し、該対象領域内の各パッチの測定値を取得することができる。ここで図15に、上記図14に示す処理によって特定された、各パッチの測定対象領域を示す。チャート画像本体72を構成する複数のパッチ(■で示される)について、それぞれの内部にある白い枠内の平均値が取得される。
●プロファイル作成処理(S15)
以下、上記S15における、プロファイル作成部33でのプロファイル作成処理の詳細について、図9のフローチャートを用いて説明する。
以下、上記S15における、プロファイル作成部33でのプロファイル作成処理の詳細について、図9のフローチャートを用いて説明する。
まずS151で、S14で取得したパッチ色データ(RGB値)を、測定値(Lab値)に変換する。すなわち、2次元測定器2によって測定されたRGB値を、一般的な見え測定器によって測定されるLab値に変換するが、この変換方法については特に規定しない。
次にS152で、S151で変換した測定値(Lab)を用いて3DLUTを生成する。本実施形態では上述したように、チャート画像本体72がRGB色空間を均等格子状に分割するように形成されたパッチであるから、その測定値に基づいてRGBからLabへの変換を示す3DLUTを生成することができる。
そしてS153で、S152で生成した3DLUTを、表示部1のプロファイルとしてデータ出力部34に出力する。
以上説明したように本実施形態によれば、複数パッチを2次元配置したチャート画像7を表示し、2次元測定器2で一括で測定した際に、パッチ毎の測定値を自動かつ正確に取得することが可能となる。また、パッチ毎の中心位置を推定して測定値を取得するため、チャート画像7が傾いて測定された場合でも、その傾きが許容範囲内であれば、パッチ毎の正確な測定値を取得することができる。したがって、適切な表示プロファイルを簡易な構成で作成することができる。
なお本実施形態では、表示部1としてRGBデータを表示するPC用ディスプレイを使用し、2次元測定器2として、測定結果としてRGB画像を出力するデジタルカメラを使用した場合を例として説明した。しかしながら本発明はこの例に限らず、例えば表示部1としてプロジェクタを使用しても良いし、2次元測定器2としてXYZ値を出力する測定器を使用しても良い。
<変形例1>
上述した第1実施形態では、2値化の閾値を固定値(128)とする例を示したが、プロファイル作成時における表示部1および2次元測定器2の現状に応じて、最適な閾値を算出することも可能である。このような閾値の算出例を、図10および図11を用いて説明する。
上述した第1実施形態では、2値化の閾値を固定値(128)とする例を示したが、プロファイル作成時における表示部1および2次元測定器2の現状に応じて、最適な閾値を算出することも可能である。このような閾値の算出例を、図10および図11を用いて説明する。
●チャート画像
図10は、本変形例におけるチャート画像7の例を示す図である。同図に示すように本変形例におけるチャート画像7は、まず第1実施形態と同様に、チャート画像本体72に対し、その4隅に位置及び特性取得用の基準マーク71を配置する。そして本変形例ではさらに、2値化閾値検出用パッチ73として、全種類のカラーバーのパッチを配置する。この2値化閾値検出用パッチ73の配置位置としては、2次元測定器2によってチャート画像本体72と同時に測定可能な位置であれば良く、図10の例では、左上マークと右上マークの中間に配置している。
図10は、本変形例におけるチャート画像7の例を示す図である。同図に示すように本変形例におけるチャート画像7は、まず第1実施形態と同様に、チャート画像本体72に対し、その4隅に位置及び特性取得用の基準マーク71を配置する。そして本変形例ではさらに、2値化閾値検出用パッチ73として、全種類のカラーバーのパッチを配置する。この2値化閾値検出用パッチ73の配置位置としては、2次元測定器2によってチャート画像本体72と同時に測定可能な位置であれば良く、図10の例では、左上マークと右上マークの中間に配置している。
●位置検出マーク位置の検出処理(S141)
第1実施形態で図5に示したように、S141において4隅の位置検出マーク711を検出する。本変形例では、この位置検出マーク711の検出の際に、上記2値化閾値検出用パッチ73を利用する。以下、図11のフローチャートを用いて、本変形例において、特に左上マークにおける位置検出マーク711を検出する処理について説明する。
第1実施形態で図5に示したように、S141において4隅の位置検出マーク711を検出する。本変形例では、この位置検出マーク711の検出の際に、上記2値化閾値検出用パッチ73を利用する。以下、図11のフローチャートを用いて、本変形例において、特に左上マークにおける位置検出マーク711を検出する処理について説明する。
まずS1416で、2値化閾値検出用パッチ73における各色パッチの測定画素値を取得する。これらの測定画素値は、例えば図10のような配置であれば、左上および右上マークの座標から2値化閾値検出用パッチ73の位置を算出することで取得可能である。
次にS1417で、RGB各色について2値化の閾値を算出する。ここで、Rについての閾値の算出方法を示す。まず、2値化閾値検出用パッチ73における各色パッチのうち、その入力RGBデータのR値が0である黒、青、緑、シアンについての測定画素値を取得し、その測定画素値におけるR値の最大値を検出する。そして、入力RGBデータのR値が255である赤、マゼンタ、黄、白についての測定画素値を取得し、その測定画素値におけるR値の最小値を検出する。そして、該R値の最大値と最小値の間の値(例えば中間値)を、Rの2値化閾値として設定する。同様に、Gの2値化閾値は、黒、青、赤、マゼンタについての測定画素値におけるG値の最大値と、緑、シアン、黄、白についての測定画素値におけるG値の最小値との間の値を設定する。また、Bの2値化閾値は、黒、緑、赤、黄についての測定画素値におけるB値の最大値と、青、シアン、マゼンタ、白についての測定画素値におけるB値の最小値との間の値を設定する。
そしてS1418で、RGB全色について2値化閾値が設定されたか否かを判定する。ここで、設定されていないと判定されればS1419に進み、2値化閾値の設定に失敗した旨を示すアラートを報知することで、ユーザに対してチャート画像7の再撮影を促し、処理を終了する。一方、RGB全色についての2値化閾値の設定が正常に終了したと判定されるとS1411に進み、以降は2値化閾値として該設定された値を用いる。なお、以降のS1411〜S1415の処理については、第1実施形態で示した図6と同様であるため、説明を省略する。
<変形例2>
上述した第1実施形態では、基準マーク71が長方形として形成されることを前提としていたが、基準マーク71は長方形に限らず、例えば図17に示すような六角形であっても良い。図17に示す六角形の基準マーク71において、位置検出マーク711は長方形である。一方、横方向パッチ数マーク712と縦方向パッチ数マーク713、および横方向除外パッチ数マーク714と縦方向除外パッチ数マーク715は直角三角形であり、リザーブ用マーク716は備えない。すなわち、位置検出マーク711の高さと横方向パッチ数マーク712の斜辺長が同じであり、また位置検出マーク711の幅と縦方向パッチ数マーク713の斜辺長が同じである。
上述した第1実施形態では、基準マーク71が長方形として形成されることを前提としていたが、基準マーク71は長方形に限らず、例えば図17に示すような六角形であっても良い。図17に示す六角形の基準マーク71において、位置検出マーク711は長方形である。一方、横方向パッチ数マーク712と縦方向パッチ数マーク713、および横方向除外パッチ数マーク714と縦方向除外パッチ数マーク715は直角三角形であり、リザーブ用マーク716は備えない。すなわち、位置検出マーク711の高さと横方向パッチ数マーク712の斜辺長が同じであり、また位置検出マーク711の幅と縦方向パッチ数マーク713の斜辺長が同じである。
基準マーク71をこのような六角形として形成した場合、第1実施形態とは、パッチ色データ算出時における共通データおよび個別データの取得処理(S144)の詳細が異なる。すなわち、本変形例における共通データおよび個別データの取得処理も、第1実施形態で図8に示したフローチャートと同様の手順で行われるが、各ステップの詳細が以下のように異なる。
まずS1442で横方向のパッチ数を取得する。このとき、位置検出マーク711の左上隅、右下隅の座標(Xlt,Ylt),(Xrb,Yrb)から、横方向パッチ数マーク712を構成する2本のカラーバーの中心点を以下の(17)式で算出する。そして、該中心点(Xcb1,Ycb1)、(Xcb2,Ycb2)に応じたRGB値から各カラーバーの色を判定し、該2色に対応する8進数として、横方向のパッチ数を取得する。
(Xcb1,Ycb1)=(Xrb+(Xrb-Xlt)*1/4、(Ylt+Yrb)*1/2)
(Xcb2,Ycb2)=(Xrb+(Xrb-Xlt)*1/2、(Ylt+Yrb)*3/4) …(17)
同様にS1443で縦方向のパッチ数を取得する際に、縦方向パッチ数マーク713を構成する2本のカラーバーの中心点(Xcb3,Ycb3)、(Xcb4,Ycb4)を以下の(18)式で算出する。そして、該中心点(Xcb3,Ycb3)、(Xcb4,Ycb4)に応じたRGB値から各カラーバーの色を判定し、該2色に対応する8進数として、縦方向のパッチ数を取得する。
(Xcb2,Ycb2)=(Xrb+(Xrb-Xlt)*1/2、(Ylt+Yrb)*3/4) …(17)
同様にS1443で縦方向のパッチ数を取得する際に、縦方向パッチ数マーク713を構成する2本のカラーバーの中心点(Xcb3,Ycb3)、(Xcb4,Ycb4)を以下の(18)式で算出する。そして、該中心点(Xcb3,Ycb3)、(Xcb4,Ycb4)に応じたRGB値から各カラーバーの色を判定し、該2色に対応する8進数として、縦方向のパッチ数を取得する。
(Xcb3,Ycb3)=((Xlt+Xrb)*1/2,Yrb+(Yrb-Ylt)*1/4)
(Xcb4,Ycb4)=((Xlt+Xrb)*3/4,Yrb+(Yrb-Ylt)*1/2) …(18)
またS1444で横方向除外パッチ数を取得する際に、横方向除外パッチ数マーク714を構成する2本のカラーバーのそれぞれの中心点(Xcb5,Ycb5),(Xcb6,Ycb6)を、以下の(19)式で算出する。そして、該中心点(Xcb5,Ycb5)、(Xcb6,Ycb6)に応じたRGB値から各カラーバーの色を判定し、該2色に対応する8進数として、横方向の除外パッチ数を取得する。
(Xcb4,Ycb4)=((Xlt+Xrb)*3/4,Yrb+(Yrb-Ylt)*1/2) …(18)
またS1444で横方向除外パッチ数を取得する際に、横方向除外パッチ数マーク714を構成する2本のカラーバーのそれぞれの中心点(Xcb5,Ycb5),(Xcb6,Ycb6)を、以下の(19)式で算出する。そして、該中心点(Xcb5,Ycb5)、(Xcb6,Ycb6)に応じたRGB値から各カラーバーの色を判定し、該2色に対応する8進数として、横方向の除外パッチ数を取得する。
(Xcb5,Ycb5)=(Xrb+(Xrb-Xlt)*1/2,Yrb+(Yrb-Ylt)*1/4)
(Xcb6,Ycb6)=(Xrb+(Xrb-Xlt)*3/4,Yrb+(Yrb-Ylt)*1/2) …(19)
またS1445で縦方向除外パッチ数を取得する際に、縦方向除外パッチ数マーク715を構成する2本のカラーバーのそれぞれの中心点(Xcb7,Ycb7),(Xcb8,Ycb8)を、以下の(20)式で算出する。そして、該中心点(Xcb7,Ycb7)、(Xcb8,Ycb8)に応じたRGB値から各カラーバーの色を判定し、該2色に対応する8進数として、縦方向の除外パッチ数を取得する。
(Xcb6,Ycb6)=(Xrb+(Xrb-Xlt)*3/4,Yrb+(Yrb-Ylt)*1/2) …(19)
またS1445で縦方向除外パッチ数を取得する際に、縦方向除外パッチ数マーク715を構成する2本のカラーバーのそれぞれの中心点(Xcb7,Ycb7),(Xcb8,Ycb8)を、以下の(20)式で算出する。そして、該中心点(Xcb7,Ycb7)、(Xcb8,Ycb8)に応じたRGB値から各カラーバーの色を判定し、該2色に対応する8進数として、縦方向の除外パッチ数を取得する。
(Xcb7,Ycb7)=(Xrb+(Xrb-Xlt)*1/4,Yrb+(Yrb-Ylt)*1/2)
(Xcb8,Ycb8)=(Xrb+(Xrb-Xlt)*1/2,Yrb+(Yrb-Ylt)*3/4) …(20)
<変形例3>
さらに、基準マーク71を図16に示すような平行四辺形とすることもできる。図16に示す平行四辺形は、長方形の上下の辺がX軸に対して水平を保ち、X軸における上辺と下辺の開始位置(左端)の差が、該上辺(下辺)の長さの1/4であるとする。なお、図16に示す平行四辺形の基準マーク71においては、位置検出マーク711と横方向パッチ数マーク712とは同じ底辺幅であり、また位置検出マーク711と縦方向パッチ数マーク713とは同じ高さである。
(Xcb8,Ycb8)=(Xrb+(Xrb-Xlt)*1/2,Yrb+(Yrb-Ylt)*3/4) …(20)
<変形例3>
さらに、基準マーク71を図16に示すような平行四辺形とすることもできる。図16に示す平行四辺形は、長方形の上下の辺がX軸に対して水平を保ち、X軸における上辺と下辺の開始位置(左端)の差が、該上辺(下辺)の長さの1/4であるとする。なお、図16に示す平行四辺形の基準マーク71においては、位置検出マーク711と横方向パッチ数マーク712とは同じ底辺幅であり、また位置検出マーク711と縦方向パッチ数マーク713とは同じ高さである。
基準マーク71が平行四辺形である場合、位置検出マーク711の左上隅、右下隅の座標のみでは形状が特定されないため、さらに位置検出マーク711の右上隅の座標(Xrt,Yrt)を取得する必要がある。これは、上記S1414と同様に、S1413で取得した左上隅の点(Xlt,Ylt)から右方向に、RGB全色が1になる点を探索していき、最も遠くにある点を検出すれば良い。
このように、基準マーク71を図16に示すような平行四辺形で形成した場合、共通データおよび個別データの取得処理(図8)は以下のようになる。
まずS1442で横方向のパッチ数を取得するために、横方向パッチ数マーク712を構成する2本のカラーバーの中心点(Xcb1,Ycb1),(Xcb2,Ycb2)を算出する。この算出は以下の(13)式のように、位置検出マーク711の左上隅、右下隅、および右上隅の座標(Xlt,Ylt),(Xrb,Yrb),(Xrt,Yrt)を用いて行われる。
(Xcb1,Ycb1)=(Xrb+(Xrt-Xlt)*1/8、(Ylt+Yrb)/2)
(Xcb2,Ycb2)=(Xrb+(Xrt-Xlt)*5/8、(Ylt+Yrb)/2) …(13)
(Xcb2,Ycb2)=(Xrb+(Xrt-Xlt)*5/8、(Ylt+Yrb)/2) …(13)
同様にS1443で縦方向のパッチ数を取得する際に、縦方向パッチ数マーク713の2本のカラーバーのそれぞれの中心点(Xcb3,Ycb3),(Xcb4,Ycb4)を、以下の(14)式で算出する。
(Xcb3,Ycb3)=(Xlt+(Xrt-Xlt)*13/16,Yrb+(Yrb-Ylt)*1/4)
(Xcb4,Ycb4)=(Xlt+(Xrt-Xlt)*15/16,Yrb+(Yrb-Ylt)*3/4) …(14)
次にS1444では、横方向の除外パッチ数を取得する際に、横方向除外パッチ数マーク714の2本のカラーバーのそれぞれの中心点(Xcb5,Ycb5),(Xcb6,Ycb6)を、以下の(15)式で算出する。
(Xcb4,Ycb4)=(Xlt+(Xrt-Xlt)*15/16,Yrb+(Yrb-Ylt)*3/4) …(14)
次にS1444では、横方向の除外パッチ数を取得する際に、横方向除外パッチ数マーク714の2本のカラーバーのそれぞれの中心点(Xcb5,Ycb5),(Xcb6,Ycb6)を、以下の(15)式で算出する。
(Xcb5,Ycb5)=(Xrb+(Xrt-Xlt)*5/16,Yrb+(Yrb-Ylt)*1/4)
(Xcb6,Ycb6)=(Xrb+(Xrt-Xlt)*13/16,Yrb+(Yrb-Ylt)*1/4) …(15)
そしてS1445では、縦方向の除外パッチ数を取得する際に、縦方向除外パッチ数マーク715の2本のカラーバーのそれぞれの中心点(Xcb7,Ycb7),(Xcb8,Ycb8)を、以下の(16)式で算出する。
(Xcb6,Ycb6)=(Xrb+(Xrt-Xlt)*13/16,Yrb+(Yrb-Ylt)*1/4) …(15)
そしてS1445では、縦方向の除外パッチ数を取得する際に、縦方向除外パッチ数マーク715の2本のカラーバーのそれぞれの中心点(Xcb7,Ycb7),(Xcb8,Ycb8)を、以下の(16)式で算出する。
(Xcb7,Ycb7)=(Xrb+(Xrt-Xlt)*5/16,Yrb+(Yrb-Ylt)*1/4)
(Xcb8,Ycb8)=(Xrb+(Xrt-Xlt)*13/16,Yrb+(Yrb-Ylt)*3/4) …(16)
なお、基準マーク71の平行四辺形形状としては図16以外の形状ももちろん考えられ、上記(13)〜(16)式は、該形状に応じて適宜変更すれば良い。また、ここでは平行四辺形をなすカラーバーの中心点の座標を、位置検出マーク711の点に対する変位率として算出する例を示したが、平行四辺形の4隅の座標を求め、その対角線の交点から、中心座標を算出するようにしても良い。
(Xcb8,Ycb8)=(Xrb+(Xrt-Xlt)*13/16,Yrb+(Yrb-Ylt)*3/4) …(16)
なお、基準マーク71の平行四辺形形状としては図16以外の形状ももちろん考えられ、上記(13)〜(16)式は、該形状に応じて適宜変更すれば良い。また、ここでは平行四辺形をなすカラーバーの中心点の座標を、位置検出マーク711の点に対する変位率として算出する例を示したが、平行四辺形の4隅の座標を求め、その対角線の交点から、中心座標を算出するようにしても良い。
なお、基準マーク71の形状としては、上述したような長方形、六角形、平行四辺形に限定されず、カラーバーの位置が特定できれば、他の形状であっても良い。
<変形例4>
上述した第1実施形態では、基準位置及び特性取得用である基準マーク71の形状や構成は予め規定されているものとして説明を行ったが、基準マーク71は可変であっても良い。すなわち、データ処理部3内にチャート画像作成部を設け、該チャート画像作成部が例えば図18に示すようなユーザインタフェース(UI)8を不図示の表示部に表示する。そして、ユーザがUI8を介した指示を行うことで、チャート画像作成部が任意の基準マーク71を生成し、さらに、該基準マーク71の大きさに応じて、チャート画像7を生成する。
上述した第1実施形態では、基準位置及び特性取得用である基準マーク71の形状や構成は予め規定されているものとして説明を行ったが、基準マーク71は可変であっても良い。すなわち、データ処理部3内にチャート画像作成部を設け、該チャート画像作成部が例えば図18に示すようなユーザインタフェース(UI)8を不図示の表示部に表示する。そして、ユーザがUI8を介した指示を行うことで、チャート画像作成部が任意の基準マーク71を生成し、さらに、該基準マーク71の大きさに応じて、チャート画像7を生成する。
図18に示すUI8によれば、基準マーク71を作成するためのパラメータとして、そのパッチ数、左上除外パッチ数、左下除外パッチ数、右上除外パッチ数、右下除外パッチ数、基準マークの大きさ、基準マークの形状、を設定できる。なお、基準マークの形状としては例えば、長方形、平行四辺形、六角形のいずれかを選択可能とする。
上記各パラメータが設定され、基準マーク71の作成指示がなされると、まず、チャート画像の下地として、全面白色の画像データを作成する。下地のサイズとしては、その横幅、縦幅ともに、「チャート画像本体72の大きさ」+「UI8で設定した基準マーク71の大きさ」x2、とする。そして、作成した下地の中心に、チャート画像本体72を配置し、その4隅に基準マーク71を配置する。このとき、各パッチ数を示すカラーバーの色は、その設定数に応じて決定される。例えば、設定値が「14」である場合、8進数表記で"16"となるため、2本のカラーバーは、"1"を表す「青」と、"6"を表す「黄」で順次構成する。
以上のように作成されたチャート画像7を不図示の手段により表示部1へ出力し、表示する。これにより、第1実施形態と同様に該表示されたチャート画像7を2次元測定器2で一括測定し、各パッチの測定値を正確に取得することで、表示部1に最適なプロファイルを作成することができる。
<変形例5>
上述した第1実施形態においては、横方向パッチ数マーク712等を構成する2本のカラーバーの定義色として、表示部1の色空間の頂点に対応する8色(黒、青、緑、シアン、赤、マゼンタ、黄、白)を設定可能とした。しかしながら本発明におけるカラーバーの色は上記8色に限定されない。例えば、上記8色に対してさらに濃い青(0,0,128)を追加する等、色数を増やして9進数を表すようにしても良い。また逆に、色数を減らしても良い。また、各色が対応する数字についてももちろん限定されず、黒:0、青:1、緑:2、シアン:3、赤:4、マゼンタ:5、黄:6、白:7以外の組み合わせであっても良い。
上述した第1実施形態においては、横方向パッチ数マーク712等を構成する2本のカラーバーの定義色として、表示部1の色空間の頂点に対応する8色(黒、青、緑、シアン、赤、マゼンタ、黄、白)を設定可能とした。しかしながら本発明におけるカラーバーの色は上記8色に限定されない。例えば、上記8色に対してさらに濃い青(0,0,128)を追加する等、色数を増やして9進数を表すようにしても良い。また逆に、色数を減らしても良い。また、各色が対応する数字についてももちろん限定されず、黒:0、青:1、緑:2、シアン:3、赤:4、マゼンタ:5、黄:6、白:7以外の組み合わせであっても良い。
<変形例6>
上述した第1実施形態では、パッチ色データ算出時に、取得した共通データが全て同じ値でない場合には(S145)、測定が成功しなかった旨を示すアラートを報知して処理を終了していた(S147)。このように、取得した共通データが全て同じ値でない場合、測定値に対してシェーディング補正を行うことによって、測定値を正確に取得することができる。
上述した第1実施形態では、パッチ色データ算出時に、取得した共通データが全て同じ値でない場合には(S145)、測定が成功しなかった旨を示すアラートを報知して処理を終了していた(S147)。このように、取得した共通データが全て同じ値でない場合、測定値に対してシェーディング補正を行うことによって、測定値を正確に取得することができる。
図19は、シェーディング補正を伴うパッチ色データ算出処理を示すフローチャートである。同図において、S141〜S147の各処理は、第1実施形態で図5に示した処理と同様であるため、それぞれの説明については省略する。
S144で取得した共通データが全て同じ値でない場合(S145)、アラート報知で処理を終了するのではなく、S148に進んでシェーディング補正を実行し、その後、S146の測定値取得を行う。
S148におけるシェーディング補正は、以下のように行う。
まず、各隅の位置検出マーク711の中心から5x5ピクセルの平均RGB画素値を算出して、各隅の輝度Ltl(左上)、Lbl(左下)、Ltr(右上)、Lbr(右下)を、以下の(21)式より算出する。
L=0.3*R+0.6*G+0.1*B …(21)
そして、各隅の輝度が同じであるか否かに応じて、シェーディング補正を行う。例えば、4隅の位置検出マーク711の輝度のうち、左上の輝度Ltlのみが異なる値であったとする。この場合、図20(a)に示すように、チャート画像本体72を、シェーディング補正を行う補正領域91と、シェーディング補正を行わない非補正領域92に、輝度が異なる1隅を除外した他の隅からの対角線で分割する。図20(a)の例ではチャート画像本体72において左上隅の輝度Ltlのみが異なるため、右上隅と左下隅を結ぶ対角線によってチャート画像本体72を分割する。そして、左上隅が含まれる領域を補正領域91とし、左上隅を含まない領域を非補正領域92とする。
そして、各隅の輝度が同じであるか否かに応じて、シェーディング補正を行う。例えば、4隅の位置検出マーク711の輝度のうち、左上の輝度Ltlのみが異なる値であったとする。この場合、図20(a)に示すように、チャート画像本体72を、シェーディング補正を行う補正領域91と、シェーディング補正を行わない非補正領域92に、輝度が異なる1隅を除外した他の隅からの対角線で分割する。図20(a)の例ではチャート画像本体72において左上隅の輝度Ltlのみが異なるため、右上隅と左下隅を結ぶ対角線によってチャート画像本体72を分割する。そして、左上隅が含まれる領域を補正領域91とし、左上隅を含まない領域を非補正領域92とする。
そして、補正領域91内の任意の点Pに対するシェーディング補正を、以下のように実行する。補正領域91と非補正領域92の境界線に対し、補正領域91内の点Pから下ろした垂線の長さをVpとし、チャート画像本体72の左上の点から下ろした垂線の長さをVbとする。そしてVpとVbの比を用いて、補正領域91内の点Pに対するシェーディング補正を、以下の(22)式のように実行する。なお、(22)式において、Lpは補正対象である点Pの輝度、Lpaはシェーディング補正後の点Pの輝度を示す。
Lpa=Lp*((Vb-Vp)*Lbl+Vp*Ltl)/(Vp*Lbl) …(22)
なお、ここでは左上の輝度Ltlのみが異なる場合のシェーディング補正例を示したが、4隅のうち、1隅のみの輝度が異なるのであれば、他の隅の輝度が異なる場合についても同様の補正がなされる。
なお、ここでは左上の輝度Ltlのみが異なる場合のシェーディング補正例を示したが、4隅のうち、1隅のみの輝度が異なるのであれば、他の隅の輝度が異なる場合についても同様の補正がなされる。
また、4隅の位置検出マーク711の輝度のうち、左上および右上の2隅の輝度Ltl,Ltrが同値であり、左下および右下の2隅の輝度Lbl,Lbrが、該Ltl,Ltrとは異なる値であったとする。なおここでは、隣接する2隅(この例では左下と右下)の輝度が同値であれば、他の2隅については、これらの輝度が異なっていても、同じであっても良い。この場合、チャート画像本体72の全面を補正領域91とし、該補正領域91に対して以下のように、上下方向のシェーディング補正を行う。すなわち、上辺から下辺に下ろした垂線の長さをVb、任意の点Pから下辺に下ろした垂線の長さをVpとすると、上記図20(a)の場合に示した(22)式と同様の数式によってシェーディング補正を実行することができる。
なお、ここでは左下および右下の2隅の輝度Lbl,Lbrが異なる場合のシェーディング補正例を示したが、隣接する2隅の輝度が異なる場合であれば、同様のシェーディング補正を行うことができる。また、(22)式では線形補間によるシェーディング補正例を示したが、例えば指数関数による補間を行うようにしても良い。なお、対角線上に配置される2隅の輝度が異なる場合には、シェーディングの方向が特定できないため、シェーディング補正を行わない。
<第2実施形態>
以下、本発明における第2実施形態について説明する。上述した第1実施形態では、表示部1に表示されたチャート画像7を2次元測定器2で測定し、表示部1のプロファイルを作成する例を示した。第2実施形態ではこの表示部1に代えてプリンタを有し、該プリンタから出力したチャート画像を2次元測定器で測定することで、プリンタのプロファイルを作成することを特徴とする。
以下、本発明における第2実施形態について説明する。上述した第1実施形態では、表示部1に表示されたチャート画像7を2次元測定器2で測定し、表示部1のプロファイルを作成する例を示した。第2実施形態ではこの表示部1に代えてプリンタを有し、該プリンタから出力したチャート画像を2次元測定器で測定することで、プリンタのプロファイルを作成することを特徴とする。
●装置構成
図12に、第2実施形態における画像処理装置のブロック構成を示す。なお、第2実施形態の画像処理装置において上述した第1実施形態と同様の構成には同一番号を付し、説明を省略する。
図12に、第2実施形態における画像処理装置のブロック構成を示す。なお、第2実施形態の画像処理装置において上述した第1実施形態と同様の構成には同一番号を付し、説明を省略する。
図2に示すように第2実施形態の画像処理装置は、2次元測定器2とデータ処理部3、およびプリンタ4から構成され、プリンタ4でチャート画像7が印刷された印刷物5を2次元測定器2で測定することで、パッチデータを自動取得する。
データ処理部3は、データ入力部31とパッチ色データ算出部32、プロファイル作成部33、プリンタ制御部35、から構成される。データ入力部31が、2次元測定器2で測定したチャート画像7の2次元測定データを入力すると、パッチ色データ算出部32が、各パッチの色データを自動で検出/取得する。そしてプロファイル作成部33で、パッチ色データ算出部32で取得したパッチ色データを用いてプリンタ4のプロファイルを生成し、プリンタ制御部35が該生成されたプロファイルを用いてプリンタ4を制御する。なおプリンタ制御部35としては、たとえばPCとプリンタドライバによる構成や、RIPSによる構成であるとする。
●プロファイル作成処理(全体)
以下、第2実施形態におけるプロファイル作成処理について、その概要を図13のフローチャートに示す。まずS111でプリンタ制御部35が、プリンタ4を用いてプリンタ特性測定用のチャート画像7が印刷された印刷物5を出力する。そしてS112で2次元測定器2が、印刷物5のチャート画像7を2次元で測定し、S113でデータ入力部31が、該2次元測定データを入力する。そしてS114でパッチ色データ算出部32が、該入力した2次元測定データからパッチ色データを算出し、S115でプロファイル作成部33が、該算出されたパッチ色データからプリンタ4のプロファイルを生成し、プリンタ制御部35に出力する。
以下、第2実施形態におけるプロファイル作成処理について、その概要を図13のフローチャートに示す。まずS111でプリンタ制御部35が、プリンタ4を用いてプリンタ特性測定用のチャート画像7が印刷された印刷物5を出力する。そしてS112で2次元測定器2が、印刷物5のチャート画像7を2次元で測定し、S113でデータ入力部31が、該2次元測定データを入力する。そしてS114でパッチ色データ算出部32が、該入力した2次元測定データからパッチ色データを算出し、S115でプロファイル作成部33が、該算出されたパッチ色データからプリンタ4のプロファイルを生成し、プリンタ制御部35に出力する。
以上説明したように第2実施形態によれば、複数パッチを2次元配置したチャート画像7をプリンタで印刷し、該印刷物を2次元測定器2で一括で測定した際に、パッチ毎の測定値を自動かつ正確に取得することが可能となる。したがって、適切な印刷プロファイルを簡易な構成で作成することができる。
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
Claims (13)
- 複数パッチが2次元配置され、基準マークが付与されたチャート画像を一括測定して2次元測定データを得る測定手段と、
前記2次元測定データから前記基準マークを検出する検出手段と、
該検出された基準マークによって示される、前記チャート画像を構成するパッチ数を取得するパッチ数取得手段と、
該取得されたパッチ数に基づいて前記チャート画像における各パッチの位置を算出し、該パッチ位置に基づいて前記2次元測定データから各パッチの測定値を取得するパッチ測定値取得手段と、
を有することを特徴とする画像処理装置。 - 前記基準マークは前記チャート画像の4隅に付与されており、
前記検出手段は、前記2次元測定データから前記4隅の基準マークを検出し、
前記4隅の基準マークの位置から、前記測定手段の測定面に対する前記チャート画像の傾きを検出する傾き検出手段と、
該検出された傾きが閾値範囲内でない場合に警告を出力する警告手段と、
をさらに有することを特徴とする請求項1に記載の画像処理装置。 - 前記パッチ数取得手段は、前記4隅の基準マークのそれぞれから、前記チャート画像を構成するパッチ数を取得し、
前記警告手段は、前記4隅の基準マークのそれぞれから取得したパッチ数のうち、少なくとも1つの値が異なる場合に警告を出力することを特徴とする請求項2に記載の画像処理装置。 - 前記パッチ数取得手段は、前記4隅の基準マークのそれぞれから、前記チャート画像を構成するパッチ数を取得し、
さらに、該4隅の基準マークのそれぞれから取得した前記パッチ数のうち、少なくとも1つの値が異なる場合に、前記2次元測定データに対して該パッチ数の値が異なる基準マークの位置に応じたシェーディング補正を施すシェーディング補正手段を有することを特徴とする請求項2に記載の画像処理装置。 - 前記基準マークは、該基準マークの位置検出用の位置検出マークと、前記チャート画像における横方向のパッチ数を示す横方向パッチ数マーク、前記チャート画像における縦方向のパッチ数を示す縦方向パッチ数マーク、を含み、
前記検出手段は、前記2次元測定データから前記位置検出マークを検出することで前記基準マークを検出し、
前記パッチ数取得手段は、前記基準マークにおける前記横方向パッチ数マークおよび前記縦方向パッチ数マークから、前記パッチ数を取得する
ことを特徴とする請求項1乃至4のいずれか1項に記載の画像処理装置。 - 前記横方向パッチ数マークおよび前記縦方向パッチ数マークは複数のカラー領域からなり、該複数のカラー領域における色の組み合わせによってパッチ数を表わすことを特徴とする請求項5に記載の画像処理装置。
- 前記カラー領域には、前記チャート画像を出力した画像出力装置の色空間の頂点に対応する色が設定可能であることを特徴とする請求項6に記載の画像処理装置
- 前記カラー領域にはそれぞれが8進数の各数値に対応する8色が設定可能であり、前記複数のカラー領域によって8進数を表わすことを特徴とする請求項6または7に記載の画像処理装置。
- 前記基準マークはさらに、前記チャート画像において該基準マークの対応する隅を起点として、横方向および縦方向に測定対象から除外するパッチ数を示す除外パッチ数マークを含み、
前記パッチ測定値取得手段は、前記チャート画像を構成するパッチから前記除外パッチ数マークで示される数のパッチを除外して、各パッチの測定値を取得することを特徴とする請求項5に記載の画像処理装置。 - さらに、ユーザが指示したパッチ数に応じて、前記基準マークおよび前記チャート画像を作成するチャート画像作成手段を有することを特徴とする請求項1乃至9のいずれか1項に記載の画像処理装置。
- さらに、前記パッチ測定値取得手段で取得した各パッチの測定値を用いて、前記チャート画像を出力した画像出力装置のプロファイルを作成するプロファイル作成手段、を有することを特徴とする請求項1乃至10のいずれか1項に記載の画像処理装置。
- 測定手段、検出手段、パッチ数取得手段、パッチ測定値取得手段、を有する画像処理装置における画像処理方法であって、
前記測定手段が、複数パッチが2次元配置され、基準マークが付与されたチャート画像を一括測定して2次元測定データを得、
前記検出手段が、前記2次元測定データから前記基準マークを検出し、
前記パッチ数取得手段が、該検出された基準マークによって示される、前記チャート画像を構成するパッチ数を取得し、
前記パッチ測定値取得手段が、該取得されたパッチ数に基づいて前記チャート画像における各パッチの位置を算出し、該パッチ位置に基づいて前記2次元測定データから各パッチの測定値を取得する、ことを特徴とする画像処理方法。 - コンピュータ装置で実行されることにより、該コンピュータ装置を請求項1乃至11のいずれか1項に記載の画像処理装置の各手段として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012084699A JP2013213758A (ja) | 2012-04-03 | 2012-04-03 | 画像処理装置および画像処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012084699A JP2013213758A (ja) | 2012-04-03 | 2012-04-03 | 画像処理装置および画像処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013213758A true JP2013213758A (ja) | 2013-10-17 |
Family
ID=49587174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012084699A Pending JP2013213758A (ja) | 2012-04-03 | 2012-04-03 | 画像処理装置および画像処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013213758A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016076165A1 (ja) * | 2014-11-14 | 2016-05-19 | コニカミノルタ株式会社 | 測色装置および測色方法 |
WO2022009592A1 (ja) * | 2020-07-10 | 2022-01-13 | 株式会社Finemech | キャリブレーションシステム |
-
2012
- 2012-04-03 JP JP2012084699A patent/JP2013213758A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016076165A1 (ja) * | 2014-11-14 | 2016-05-19 | コニカミノルタ株式会社 | 測色装置および測色方法 |
US10267683B2 (en) | 2014-11-14 | 2019-04-23 | Konica Minolta, Inc. | Colorimetry device and colorimetry method having a patch quantity comparison processing unit and a second position correction processing unit |
WO2022009592A1 (ja) * | 2020-07-10 | 2022-01-13 | 株式会社Finemech | キャリブレーションシステム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10735627B2 (en) | Color conversion table creation apparatus and method, color conversion apparatus, and program | |
EP2849149B1 (en) | Projection system, image processing device, and projection method | |
US6823083B1 (en) | Saturation correcting apparatus and method | |
JP4435355B2 (ja) | カラー画像の変換方法、変換装置、及び記録媒体 | |
CN105185314A (zh) | Led显示屏均匀性补偿方法 | |
CN104279958A (zh) | 用于指导校正的led显示装置空间位置检测方法及系统 | |
JP2008015706A (ja) | 画像処理装置 | |
CN103517004B (zh) | 修正图像系统的渐晕的方法及装置 | |
JP2004166182A (ja) | ホワイトバランスポイントの白点偏差推定方法 | |
WO2019134317A1 (zh) | Led显示屏的整屏校正方法、校正系统及存储介质 | |
JPH10290373A (ja) | 色補正装置 | |
JP2013213758A (ja) | 画像処理装置および画像処理方法 | |
JP4750262B2 (ja) | プロファイル作成装置、プロファイル作成方法、およびプロファイル作成プログラム記憶媒体 | |
JP2010139324A (ja) | 色ムラ測定方法、および色ムラ測定装置 | |
JP2000050318A (ja) | 出力装置の応答関数を特性化する方法、プログラム製品及びシステム | |
JP2016001851A (ja) | 画像処理装置および画像処理方法 | |
EP3139598B1 (en) | Wearable projection device and projection method | |
JP2004158941A (ja) | 色ムラ補正装置、プロジェクタ、色ムラ補正方法、プログラムおよび記録媒体 | |
CN106791736B (zh) | 一种梯形校正方法和投影机 | |
JP2010177832A (ja) | 画像処理装置及び画像処理方法 | |
JP2013223048A (ja) | 画像処理装置およびその方法 | |
JP2001218070A (ja) | 画像処理方法及び画像処理装置 | |
US9041815B2 (en) | Digital camera imaging evaluation module | |
JP2011228792A (ja) | 画像処理装置 | |
JP2005342936A (ja) | 色調制御方法 |