(57)【要約】【課題】  光源ごとの色変換マトリクスを必要とせずに、高精度の光源変換処理を行う。【解決手段】  白色点情報取得部302は、撮像データの撮影シーンの白色点情報を取得する。逆γ処理部301と逆処理部304は、撮像装置が撮像データに施した画像処理の逆処理を撮像データに施す。色値変換部305は、逆処理後の撮像データを測色的な色値の撮像データに変換する。白色点変換部307は、撮像データの白色点を出力色空間の白色点に変換する順応変換を測色的な色値の撮像データに施す。出力値変換部308は、順応変換が施された撮像データを出力色空間の撮像データに変換する。【選択図】  図3
2016010013.tif 000002
【特許請求の範囲】
【請求項１】
撮像データの撮影シーンの白色点情報を取得する取得手段と、
撮像装置が前記撮像データに施した画像処理の逆処理を前記撮像データに施す逆処理手段と、
前記逆処理後の撮像データを測色的な色値の撮像データに変換する第一の変換手段と、
前記撮像データの白色点を出力色空間の白色点に変換する順応変換を前記測色的な色値の撮像データに施す第二の変換手段と、
前記順応変換が施された撮像データを前記出力色空間の撮像データに変換する第三の変換手段とを有する画像処理装置。
【請求項２】
前記逆処理手段は、前記撮像装置が行ったガンマ処理の逆処理を行う請求項1に記載された画像処理装置。
【請求項３】
さらに、前記撮像データの撮影条件を取得する手段を有し、
前記逆処理手段は、前記撮影条件に対応するガンマ処理の逆処理を行う請求項1に記載された画像処理装置。
【請求項４】
前記逆処理手段は、前記白色点情報に基づき、前記撮像装置が行ったホワイトバランス処理の逆処理を行う請求項1から請求項3の何れか一項に記載された画像処理装置。
【請求項５】
さらに、前記撮像装置が行うホワイトバランス処理のゲイン量を色温度ごとに格納する記憶手段を有し、
前記逆処理手段は、前記白色点情報が示す色温度に対応するゲイン量を前記記憶手段から取得し、前記ゲイン量の逆数を用いて前記ホワイトバランス処理の逆処理を行う請求項4に記載された画像処理装置。
【請求項６】
前記第二の変換手段は、前記ゲイン量の逆数から算出した前記撮影シーンの白色点と、前記出力色空間の白色点から、前記順応変換に用いる補正量を算出する請求項5に記載された画像処理装置。
【請求項７】
前記第二の変換手段は、前記撮影シーンにおいて測定された白色点と、前記出力色空間の白色点から、前記順応変換に用いる補正量を算出する請求項5に記載された画像処理装置。
【請求項８】
さらに、前記撮像装置から前記撮像データを入力する入力手段を有する請求項1から請求項7の何れか一項に記載された画像処理装置。
【請求項９】
さらに、記録媒体から前記撮像データを入力する入力手段を有する請求項1から請求項7の何れか一項に記載された画像処理装置。
【請求項１０】
撮像データの撮影シーンの白色点情報を取得し、
撮像装置が前記撮像データに施した画像処理の逆処理を前記撮像データに施し、
前記逆処理後の撮像データを測色的な色値の撮像データに変換し、
前記白色点情報および出力色空間の白色点に基づき、前記測色的な色値の撮像データに白色の順応変換を施し、
前記順応変換が施された撮像データを前記出力色空間の撮像データに変換する画像処理方法。
【請求項１１】
コンピュータを請求項1から請求項9の何れか一項に記載された画像処理装置の各手段として機能させるためのプログラム。
【請求項１２】
請求項11に記載されたプログラムが記録されたコンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像データの色変換処理に関する。
【背景技術】
【０００２】
ディジタルカメラやディジタルビデオカメラなどの撮像装置が撮影した画像データのカラーバランスを調整する手法として様々な手法が提案されている。特許文献1は、標準光源とは異なる撮影光源下で撮影された画像データを、光源ごとに用意した色変換マトリクスの適用とその後のゲイン調整により、標準光源下の画像データに色変換する処理（以下、光源変換処理）を記載する。
【０００３】
しかし、上記の方法は、光源ごとに色変換マトリクスを備えるプロファイルを用意する必要があり、様々な光源に対応するには、光源の数分のプロファイルを必要とする。また、光源の種類や分光分布が撮影時とプロファイルの作成時で異なれば色変換精度が劣化する問題がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第4677699号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、光源ごとの色変換マトリクスを必要とせずに、高精度の光源変換処理を行うことを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、前記の目的を達成する一手段として、以下の構成を備える。
【０００７】
本発明にかかる画像処理は、撮像データの撮影シーンの白色点情報を取得し、撮像装置が前記撮像データに施した画像処理の逆処理を前記撮像データに施し、前記逆処理後の撮像データを測色的な色値の撮像データに変換し、前記白色点情報および出力色空間の白色点に基づき、前記測色的な色値の撮像データに白色の順応変換を施し、前記順応変換が施された撮像データを前記出力色空間の撮像データに変換する。
【発明の効果】
【０００８】
本発明によれば、光源ごとの色変換マトリクスを必要とせずに、高精度の光源変換処理を行うことができる。
【図面の簡単な説明】
【０００９】
【図１】実施例の撮像装置と画像処理装置の関係を説明するブロック図。
【図２】画像処理装置として機能する情報処理装置の構成例を示すブロック図。
【図３】画像処理装置における撮像データの光源変換処理の構成例を示すブロック図。
【図４】光源変換処理を説明するフローチャート。
【図５】実施例2の画像処理装置における撮像データの光源変換処理の構成例を示すブロック図。
【図６】実施例2の光源変換処理を説明するフローチャート。
【発明を実施するための形態】
【００１０】
以下、本発明にかかる実施例の画像処理装置および画像処理方法を図面を参照して詳細に説明する。なお、実施例は特許請求の範囲にかかる本発明を限定するものではなく、また、実施例において説明する構成の組み合わせのすべてが本発明の解決手段に必須とは限らない。
【実施例１】
【００１１】
［装置の構成］
図1のブロック図により実施例の撮像装置と画像処理装置の関係を説明する。撮像装置101は、ディジタルビデオカメラなどであり、撮像データを記録する記録部102を有する。記録部102は、ハードディスクドライブ(HDD)やソリッドステートドライブ(SSD)などの記録装置、または、メモリカードなどの記録媒体のリーダライタである。
【００１２】
画像処理装置103は、USBなどのシリアルバスや無線ネットワークからなるインタフェイス204を介して撮像装置101に接続され、撮像装置101から撮像データを取得可能である。なお、記録部102は、撮像装置101に内蔵されている以外に、シリアルバスや無線ネットワークを介して撮像装置101および画像処理装置103に接続可能な外付けの記録装置でも構わない。
【００１３】
図2のブロック図により画像処理装置103として機能する情報処理装置の構成例を示す。CPU201は、RAMなどのメインメモリ202をワークメモリとして、ROM209や記憶部203に格納されたオペレーティングシステム(OS)やプログラムを実行し、システムバス206を介して後述する構成を制御する。なお、記憶部203は、HDDやSSDなどであり、後述する光源変換処理を実現するプログラムや各種データを格納する。
【００１４】
インタフェイス204には、キーボードやマウスなどの操作部207、撮像装置101、メモリカードやUSBメモリのような記録媒体210などが接続される。また、ビデオカード(VC)205には、モニタ211が接続される。CPU201は、ユーザインタフェイス(UI)、および、処理経過や処理結果などを示す情報をモニタ211に表示する。
【００１５】
例えば、CPU201は、操作部207を介して入力されるユーザ指示に従い、記憶部203または記録媒体210に格納されたアプリケーションプログラム(AP)をメインメモリ202の所定領域にロードする。そして、APを実行し、APに従いモニタ211にUIを表示する。
【００１６】
次に、CPU201は、ユーザによるUIの操作に従い、記憶部203や記録媒体210に格納された各種データや撮像装置101から撮像データを入力し、メインメモリ202の所定領域にロードする。そして、APに従いメインメモリ202にロードした各種データに所定の演算処理を施す。そして、CPU201は、ユーザによるUIの操作に従い演算処理結果をモニタ205に表示したり、記憶部203や記録媒体210に格納する。
【００１７】
なお、CPU201は、インタフェイス204を介して、有線または無線ネットワーク上のサーバ装置との間でプログラム、データ、演算処理結果の送受信を行うこともできる。また、情報処理装置としてタブレット型コンピュータを利用することも可能であり、その場合、モニタ211のスクリーン上に重畳されたタッチパネルが操作部207である。
【００１８】
［光源変換処理］
図3のブロック図により画像処理装置103における撮像データの光源変換処理の構成例を示す。なお、図3に示す処理構成は、CPU201が光源変換処理のプログラムを実行することによって実現される。また、各部の処理の詳細は後述する。
【００１９】
入力部300は、撮像装置101から撮像データを入力する。また、記録部102が撮像装置101から独立して存在する場合、入力部300は、記録部102から撮像データを入力する。逆γ処理部301は、入力した撮像データに逆ガンマ処理を施す。白色点情報取得部302は、撮像時の白色点の情報を取得する。
【００２０】
補正量計算部303は、白色点の情報とWB設定記憶部309に格納されたパラメータに基づきホワイトバランスの補正量（以下、WB補正量）を計算する。逆処理部304は、ホワイトバランス処理が行われた撮像データにWB補正量に基づく逆処理（以下、WB逆処理）を施す。
【００２１】
色値変換部305は、逆処理部304が出力する逆処理後の撮像データの例えばRGB値を例えば三刺激値XYZに変換する。なお、以下では、撮像データのRGB値が三刺激値XYZに変換されるとして説明を行うが、変換先は三刺激値XYZに限らず測色的な色値であればよく、例えば、Lab値、Luv値、Jab値などでも構わない。
【００２２】
白色点補正量計算部306は、撮像時の白色から出力色空間の白色に変換するための補正量（以下、白色点補正量）を計算する。出力色空間は、ユーザが指定する撮像データの出力先の出力デバイス（例えばモニタ211）に規定された色空間や、sRGB空間などの標準的な色空間であるデスティネーション色空間である。
【００２３】
白色点変換部307は、色値変換部305が出力する撮像データの三刺激値XYZに白色点補正量に基づく白色点の変換処理を施す。出力値変換部308は、白色点変換部307が出力する撮像データの三刺激値XYZを出力色空間のRGB値に変換する。
【００２４】
出力部310は、出力値変換部308が出力する撮像データをユーザが指定する出力先に出力する。出力先としては、インタフェイス204に接続された撮像装置101や記録部102、記録媒体210、サーバ装置を含む各種装置である。また、撮像データをVC205に出力してモニタ211によって映像や画像を再生してもよいし、記憶部203に撮像データを格納してもよい。
【００２５】
図4のフローチャートにより光源変換処理を説明する。CPU201は、ユーザ指示に従い、図4に示す光源変換処理を開始し、入力部300によって処理対象の撮像データを入力する(S400)。逆γ処理部301は、入力された撮像データに、撮像時と逆の特性のガンマ処理を施す(S401)。つまり、逆γ処理部301は、撮像時に撮像装置101の内部で行われるガンマ演算に対して逆の演算を撮像データに施して、被写体の輝度に対して線形な数値を有する撮像データを出力する。
【００２６】
次に、白色点情報取得部302は、例えば撮影データのメタデータから、撮像時の白色点の情報としてホワイトバランス処理時の色温度情報を取得する(S402)。WB補正量計算部303は、白色点情報取得部302が取得した色温度情報に基づき、WB逆処理を行うためのWB補正量を計算する(S403)。WB設定記憶部309は、撮像装置101のホワイトバランス処理において撮像データのRGB値に乗算されるゲイン量Rgain、Ggain、Bgainを色温度ごとに格納する。WB補正量計算部303は、色温度情報に対応するゲイン量をWB設定記憶部309から読み込んで、下式によってWB補正量を計算する。
kR = 1/Rgain(t)；
kG = 1/Ggain(t)；
kB = 1/Bgain(t)；      …(1)
ここで、Rgain(t)、Ggain(t)、Bgain(t)は色温度tに対応するゲイン量。
【００２７】
WB補正量kRkGkBは、撮影時のホワイトバランス処理においてRGB値に乗算されるゲインの逆数であり、撮影シーンの白色のRGBバランス量と等価である。
【００２８】
次に、逆処理部304は、下式に示すように、逆γ処理部301が出力する撮像データにWB補正量kRkGkBを乗算して、ホワイトバランス処理の逆処理を行う(S404)。
R' = R×kR；
G' = G×kG；
B' = B×kB；      …(2)
【００２９】
なお、逆処理部304が撮像装置101のホワイトバランス処理の逆処理を行う例を説明したが、ホワイトバランス処理に限らず、撮像装置101の内部でマトリクス演算など他の色変換処理が施されている場合、逆処理部304は、それらの逆処理を行う。
【００３０】
次に、色値変換部305は、下式のマトリクス演算処理によって、逆処理部304が出力する撮像データのR'G'B'値を三刺激値XYZに変換する(S405)。
┌ ┐   ┌  ┐
│X│   │R'│
│Y│= M│G'│      …(3)
│Z│   │B'│
└ ┘   └  ┘
┌           ┐
│a11 a12 a13│
M =│a21 a22 a23│      …(4)
│a31 a32 a33│
└           ┘
【００３１】
式(4)に示すマトリクスM（係数a11-a33）は任意の作成方法により予め作成しておく。マトリクスMの作成方法としては、例えば、複数色のパッチについて、撮像装置101による撮影と、測定器による測色を行う。そして、撮像データの画素値RGBにWB逆処理を施したR'G'B'値が式(3)によって測色値（三刺激値XYZ）に変換されるように（言い替えれば、変換精度が最大になるように）最小自乗法などにより係数a11-a33を決定する。なお、マトリクスMの係数a11-a33は、WB逆処理を行った画素値R'G'B'に対する変換係数であり、光源に依存しない係数である。
【００３２】
次に、白色点補正量計算部306は、撮像データの白色点を出力色空間で規定されている白色点に変換するための順応変換用の補正量を計算する(S406)。本実施例では、順応変換としてBladford変換を採用する。
【００３３】
白色点補正量計算部306は、撮影シーンの白色点情報として、ステップS403で算出されたWB補正量を変換マトリクスM（式(4)）を用いて撮影シーンの白色の三刺激値XwsYwsZwsに変換する(S406a)。なお、撮影シーンの白色点情報として、WB補正量を利用する例を説明するが、実際の撮影シーンにおいて測定した白色の測色データを白色点情報に用いても構わない。
┌   ┐   ┌  ┐
│Xws│   │kR│
│Yws│= M│kG│      …(5)
│Zws│   │kB│
└   ┘   └  ┘
【００３４】
続いて、白色点補正量計算部306は、XwsYwsZwsをBladfordの変換式を用いてLMS錐体の応答に変換する(S406b)。
┌  ┐     ┌   ┐
│Ls│     │Xws│
│Ms│= Mbf│Yws│      …(6)
│Ss│     │Zws│
└  ┘     └   ┘
┌                        ┐
│ 0.8951  0.2664  -0.1614│
Mbf =│-0.7502  1.71315  0.0367│      …(7)
│ 0.0389 -0.0685   1.0296│
└                        ┘
【００３５】
続いて、白色点補正量計算部306は、出力色空間における規定の白色点の三刺激値XwdYwdZwdを、式(6)と同様の演算により、LMS錐体の応答に変換する(S406c)。
┌  ┐     ┌   ┐
│Ld│     │Xwd│
│Md│= Mbf│Ywd│      …(8)
│Sd│     │Zwd│
└  ┘     └   ┘
【００３６】
続いて、白色点補正量計算部306は、撮影シーンの白色のLMS錐体応答値と出力色空間の白色のLMS錐体応答値から順応変換用の補正量ρ、γ、βを計算して(S406d)、ステップS406の処理を終了する。
ρ = Xwd/Xws；
γ = Ywd/Yws；
β = Zwd/Zws；      …(9)
【００３７】
次に、白色点変換部307は、下式により、色値変換部305が出力するXYZ値に白色の順応変換を施してX'Y'Z'値に変換する(S407)。
┌  ┐       ┌        ┐   ┌ ┐
│X'│       │ρ  0  0│   │X│
│Y'│= Mbf-1│ 0 β  0│Mbf│Y│      …(10)
│Z'│       │ 0  0 γ│   │Z│
└  ┘       └        ┘   └ ┘
【００３８】
次に、出力値変換部308は、X'Y'Z'値を出力デバイスの色空間（出力色空間）のRGB値に変換する(S408)。例えば、出力色空間がsRGB空間の場合、下式により、X'Y'Z'値をR'G'B'値に変換する。
┌  ┐       ┌  ┐
│R'│       │X'│
│G'│= Msrgb│Y'│      …(11)
│B'│       │Z'│
└  ┘       └  ┘
┌                             ┐
│ 3.240970 -1.537383 -0.498611│
Msrgb =│-0.969244  1.875968  0.041555│      …(12)
│ 0.055630 -0.203977  1.056972│
└                             ┘
【００３９】
続いて、出力値変換部308は、下式のガンマ変換によりR'G'B'値をsRGB値に変換する。
if (R' ≦ 0.0031308)
R = 12.92R'；
else
R = 10.55R1/2.4 - 0.055；
if (G' ≦ 0.0031308)
G = 12.92G'；
else
G = 10.55G1/2.4 - 0.055；
if (B' ≦ 0.0031308)
B = 12.92B'；
else
B = 10.55B1/2.4 - 0.055；      …(13)
【００４０】
次に、出力部310は、撮像データ（出力色空間のRGB値）を出力先に出力する(S409)。撮像データの出力により、例えば、出力色空間に規定された光源下の撮像データの映像や画像がモニタ211に再生されたり、撮像装置101のモニタやビューファインダに再生される。
【００４１】
上記では、出力色空間の例としてsRGB空間を示したが、AdobeRGB空間やACESRGB空間など、任意の色空間が適用可能である。また、白色の順応変換方法にBladford変換を用いる例を説明したが、CAT02など任意の方法を用いることができる。
【００４２】
また、本実施例において、撮像装置101の撮像素子のカラーフィルタ分光特性はCIE1931に規定された等色関数xyzに対して線形変換可能な特性（ルータ条件）であることが望ましい。例えば、線形性の度合いを表す測色品質係数(q-factor)は、RGBすべてで0.9以上であることが望ましい。
【００４３】
このように、撮像装置101が撮像データに施した画像処理の逆処理を撮像データに施して、撮像時の光源に非依存の撮像データを得る。そして、光源に非依存の撮像データを測色的な色値の撮像データに変換し白色の順応変換を施して、出力色空間の白色点に対応する撮像データに光源変換する。その際、光源変換処理には撮影シーンの白色点の情報と出力色空間の白色点の情報があればよく、光源ごとの色変換マトリクスやプロファイルを備えることなく、高精度に光源変換処理を行うことができる。
【実施例２】
【００４４】
以下、本発明にかかる実施例2の画像処理装置および画像処理方法を説明する。なお、実施例2において、実施例1と略同様の構成については、同一符号を付して、その詳細説明を省略する。
【００４５】
実施例1では、撮像時のホワイトバランス処理の情報を用いて逆補正を行う例を説明した。しかし、例えばISO感度や撮影モードの設定によってガンマ処理など撮像装置101の内部処理が異なる。そこで、実施例2では、撮影時の設定に依らず、撮像データに所望の光源変換処理を施す画像処理を説明する。
【００４６】
図5のブロック図により実施例2の画像処理装置103における撮像データの光源変換処理の構成例を示す。図5に示す処理構成は、図3に示す構成と次の点で異なる。つまり、実施例2の光源変換処理は、撮像時の撮像装置101の撮影条件を取得する撮影条件取得部501、撮影条件に応じたガンマ処理設定を取得するガンマ処理設定取得部502、撮影条件ごとのガンマ処理設定が格納されたγ設定記憶部503を備える。
【００４７】
図6のフローチャートにより実施例2の光源変換処理を説明する。CPU201は、ユーザ指示に従い、図6に示す光源変換処理を開始し、実施例1と同様に、入力部300によって処理対象の撮像データを入力する(S400)。
【００４８】
次に、撮影条件取得部501は、例えば撮影データのメタデータから撮影条件を取得する(S411)。撮影条件は、ISO感度、絞り値、シャッタスピード、撮影モードなどの情報を含む。ここでは、ISO感度ごとに撮影時のガンマ処理が異なるとして、ISO感度を示す情報を取得する。
【００４９】
次に、ガンマ処理設定取得部502は、撮影条件に対応するガンマ処理設定をγ設定記憶部503から取得する(S412)。γ設定記憶部503は、例えばISO感度ごとにガンマ係数やガンマ補正式をガンマ処理設定として記憶する。ガンマ処理設定取得部502は、ISO感度に対応するガンマ処理設定を取得し、ガンマ処理設定を逆γ処理部301に出力する。
【００５０】
逆γ処理部301は、入力された撮像データに、入力されるガンマ処理設定と逆の特性のガンマ処理を施す(S401)。つまり、逆γ処理部301は、撮像時に撮像装置101の内部で行われるガンマ演算に対して逆の演算を撮像データに施して、被写体の輝度に対して線形な数値を有する撮像データを出力する。ステップS402以降の処理は、図4に示す実施例1の処理と同様であり、詳細説明を省略する
【００５１】
このように、撮像装置101の撮影条件に基づき、逆の特性のガンマ処理を撮像データに施すので、撮影条件に依らず、高精度に光源変換処理を行うことが可能になる。
【００５２】
［その他の実施例］
本発明は、上述の実施形態の一以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける一以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、一以上の機能を実現する回路（例えば、ASIC）によっても実現可能である。
【符号の説明】
【００５３】
301 … 逆γ処理部、302 … 白色点情報取得部、304 … 逆処理部、305 … 色値変換部、307 … 白色点変換部、308 … 出力値変換部
【図１】
2016010013.tif 000003
【図２】
2016010013.tif 000004
【図３】
2016010013.tif 000005
【図４】
2016010013.tif 000006
【図５】
2016010013.tif 000007
【図６】
2016010013.tif 000008