(57)【要約】【課題】速度面と精度面での両立を保ちながら精度面でより確実な変換を行なう信号変換装置を提供する。【解決手段】入力信号を出力信号に変換する信号変換装置であって、前記入力信号を前記出力信号に高精度に変換する第一の変換手段１４と、前記第一の変換手段による前記入力信号と前記出力信号の関係をルックアップテーブルの形式で記憶する記憶手段１８と、前記記憶手段により記憶された前記ルックアップテーブルに基づいて前記入力信号の補間処理を行なって前記出力信号を得る第二の変換手段１６と、前記ルックアップテーブルが表現するデータ空間の格子点で形成される立体のうち、高精度な変換を要する入力信号領域に対応する特定の立体を認識する認識手段２４と、前記入力信号が前記特定の立体内にあるか否かに基づいて前記第一の変換手段または前記第二の変換手段を選択する選択手段２０と、前記選択手段で選択された前記第一の変換手段または前記第二の変換手段を用いて前記入力信号を前記出力信号に変換する制御を行なう制御手段とを備える。【選択図】図１
2012004762.tif 000002
【特許請求の範囲】
【請求項１】
入力信号を出力信号に変換する信号変換装置であって、
前記入力信号を前記出力信号に高精度に変換する第一の変換手段と、
前記第一の変換手段による前記入力信号と前記出力信号の関係をルックアップテーブルの形式で記憶する記憶手段と、
前記記憶手段により記憶された前記ルックアップテーブルに基づいて前記入力信号の補間処理を行なって、前記出力信号を得る第二の変換手段と、
前記ルックアップテーブルが表現するデータ空間の格子点で形成される立体のうち、高精度な変換を要する入力信号領域に対応する特定の立体を認識する認識手段と、
前記入力信号が前記特定の立体内にあるか否かに基づいて前記第一の変換手段または前記第二の変換手段を選択する選択手段と、
前記選択手段で選択された前記第一の変換手段または前記第二の変換手段を用いて前記入力信号を前記出力信号に変換する制御を行なう制御手段と
を備えることを特徴とする信号変換装置。
【請求項２】
前記認識手段は、前記ルックアップテーブルの前記格子点において、前記出力信号の格子点座標における２次微分を算出し、算出結果が所定の値を超えた場合に、その格子点近傍の単位立体を特定単位立体として認識することを特徴とする請求項１記載の信号変換装置。
【請求項３】
格子点識別情報を入力する格子点情報入力手段を備え、
前記認識手段は、前記ルックアップテーブルの前記格子点で形成される立体の中から前記格子点識別情報に基づいて前記特定の立体を認識することを特徴とする請求項１記載の信号変換装置。
【請求項４】
立体識別情報を入力する立体識別情報入力手段を備え、
前記認識手段は、前記ルックアップテーブルの前記格子点で形成される立体の中から前記立体識別情報に基づいて前記特定の立体を認識することを特徴とする請求項１記載の信号変換装置。
【請求項５】
特定の入力信号を入力する入力手段を備え、
前記認識手段は、前記ルックアップテーブルの前記格子点で形成される立体の中から前記入力手段で入力された特定の入力信号に対応する立体を前記特定の立体として認識することを特徴とする請求項１記載の信号変換装置。
【請求項６】
前記ルックアップテーブルの前記格子点で形成される立体の中から前記特定の立体を識別するための情報を記憶する識別情報記憶部を備えることを特徴とする請求項１記載の信号変換装置。
【請求項７】
入力信号と出力信号を対応付けるルックアップテーブルを作成するルックアップテーブル作成方法であって、
前記ルックアップテーブルが表現するデータ空間の格子点で形成される立体のうち、高精度な変換を要する入力信号領域に対応する特定の立体を識別するための識別情報を、前記ルックアップテーブルに付加するステップを有することを特徴とするルックアップテーブル作成方法。
【請求項８】
前記識別情報を前記立体を単位として付加することを特徴とする請求項７記載のルックアップテーブル作成方法。
【請求項９】
前記識別情報を前記格子点を単位として付加することを特徴とする請求項７記載のルックアップテーブル作成方法。
【請求項１０】
格子点座標に対する格子点データの２次微分を算出し、算出結果が所定の値を超えた場合に、その格子点近傍の単位立体を前記特定の立体として認識することを特徴とする請求項７記載のルックアップテーブル作成方法。
【請求項１１】
格子点識別情報を入力する入力ステップを備え、前記ルックアップテーブルの前記格子点で形成される立体のうち、前記入力ステップで入力された格子点識別情報に基づいて、前記特定の立体を認識する前記識別情報を付加することを特徴とする請求項７記載のルックアップテーブル作成方法。
【請求項１２】
立体識別情報を入力する入力ステップを備え、前記ルックアップテーブルの前記格子点で形成される立体のうち、前記入力ステップで入力された立体識別情報に基づいて、前記特定の立体を認識する前記識別情報を付加することを特徴とする請求項７記載のルックアップテーブル作成方法。
【請求項１３】
特定の入力信号を入力する入力ステップを備え、前記ルックアップテーブルの前記格子点で形成される立体のうち、前記入力ステップで入力された特定の入力信号に基づいて前記特定の立体を認識する前記識別情報を付加することを特徴とする請求項７記載のルックアップテーブル作成方法。
【請求項１４】
請求項７記載のルックアップテーブル作成方法で作成されるルックアップテーブルと、
前記ルックアップテーブルに付加される前記識別情報を入力する入力手段を備え、
前記認識手段は、前記入力手段によって入力された前記識別情報に基づいて認識を行うことを特徴とする請求項１の信号変換装置。
【請求項１５】
請求項７記載のルックアップテーブル作成方法で作成される複数の前記ルックアップテーブルと、
前記ルックアップテーブルに付加される前記識別情報を入力する入力手段と、
前記入力手段で入力される複数の前記ルックアップテーブルを統合してルックアップテーブルを再構成するテーブル統合手段と、
前記入力手段で入力される複数の前記識別情報を統合して識別情報を再構成する情報統合手段と、
を備え、
前記認識手段は、前記情報統合手段で再構成された識別情報に基づいて認識を行うことを特徴とする請求項１の信号変換装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、信号変換装置及び該信号変換装置で用いるルックアップテーブル作成方法に関するものである。
【背景技術】
【０００２】
従来、デジタルカメラ、プリンタ、ディスプレイといった映像機器で、デジタル画像が扱われているが、同一画像を複数の機器において扱う際には、各々の機器において特性が異なるため、各々の機器の特性を考慮した画像信号の変換が必要となる。例えば、ディスプレイで観賞している画像を、所望の見えになるようにプリントする際には、ディスプレイ信号をプリンタの色信号に変換する必要がある。またデジタルカメラで撮影した画像をディスプレイで観賞する際に所望の見えになるようにするためには、やはり色信号を変換する必要がある。
【０００３】
ここで、デジタルカメラで撮影されたRaw画像をディスプレイ信号に変換する場合について考えると、変換は、デジタルカメラの撮像素子の特性、ディスプレイの特性、変換意図などを考慮して、マトリックスや階調曲線の変換、輝度によるクロマの変換などの変換要素を使用して行われる（以下、この変換をRaw-ディスプレイ変換という。）。このような複数の変換要素を使用する変換は、その内容が複雑になればなるほど処理に負荷がかかり処理時間の増大を招く。
【０００４】
このように多大な負荷がかかる信号処理については、LUT(ルックアップテーブル)と補間演算を用いることによって、Raw-ディスプレイ変換に相当する変換を行い、負荷を軽減させることができる。これは、Raw-ディスプレイ変換による入力信号と出力信号の関係をあらかじめ求め、LUTとして記憶しておき、変換時にはこれを参照して変換するというものである。LUTと補間を用いる変換では、18×18×18個といった、入力画像のとりうる精度(8bitならば255×255×255）よりも低い精度の３次元空間での格子点をもつLUTを準備する。8bit入力信号に対して18×18×18個の格子点であれば、255/(18-1）＝15をステップとした格子点を形成する。
【０００５】
したがって
（0,0,0)，（0,0,15)，（0,0,30)，（0,0,45）・・・（0,0,255)，（15,0,0)，・・・（255,255,255）
という入力信号に対する出力信号
P(0,0,0),P(0,0,15)，P(0,0,30),P(0,0,45）・・・P(0,0,255),P(15,0,0)，・・・P(255,255,255）をあらかじめ算出しておく。
【０００６】
この準備のもと画像変換時は、まず、入力信号が上記格子点で形成される立体のうちどの立体に属するかをもとめ、次に、属する立体の格子点の出力値を補間し変換する。例えば入力信号が(2,4,8)であれば、３次元空間上の点(2,4,8)の近傍の8つの格子点である
（0,0,0)，（15,0,0)，（0,15,0)，（15,15,0）
（0,0,15)，（15,0,15)，（0,15,15)，（15,15,15）
で形成される立体が、入力信号が属する立体であり、８つの出力信号
P(0,0,0),P(15,0,0)，P(0,15,0)，P(15,15,0)，
P(0,0,15)，P(15,0,15)，P(0,15,15)，P(15,15,15）
を用いて補間処理によって算出する。補間処理は、点(2,4,8)の、８つの格子点に対する相対的な位置に基づき、８つの出力信号を配分して算出する。
【０００７】
このような、LUTと補間を用いた変換によれば、処理の負荷の軽減を図ることはできるが、精度面で問題になる場合がある。LUTの作成時においては、各格子点に対しRaw-ディスプレイ変換を適用するので、格子点での入力信号と出力信号の関係は理想的なものである。しかし、変換時には一般に、入力信号の３次元空間上の点は格子点間に位置し、補間処理によって算出するため、変換は必ずしも理想的に行われるとは限らない。特に、入力信号に対する出力信号の変化率が急激に変化している場合、格子点間の変換は理想のものとは異なることになる。従って、LUTと補間を用いた変換では、トーンジャンプと呼ばれる画質上の問題を引き起こす場合がある。これは、入力画像で滑らかに階調が変化している部分が、変換により段階的に階調が変化するような画像になってしまう現象である。
【０００８】
このような現象を避けるために、格子点で形成される立体のうち特定の立体をさらに分割することにより入力信号が特定の立体に属する場合は高精度な補間処理を行い、属さない場合は高速の補間処理を行なうというものである（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特許３４９３１０４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
上記従来の技術においては、Raw-ディスプレイ変換に相当する変換をLUTと補間演算を用いることによって高速に行うことができる。しかしそれは、負荷を軽減させ、高速な処理を行なうことができるものの、変換精度が不十分である場合がある。また、特許文献１に記載された方法では、特定の立体をさらに分割することにより、変換精度を向上することができる。しかしこの方法でも、変換処理を補間によって行うことには変わりなく、その精度が確実に保障されるものではない。
【００１１】
本発明の目的は、速度面と精度面での両立を保ちながら精度面でより確実な変換を行なう信号変換装置及び該信号変換装置に用いるルックアップテーブル作成方法を提供することである。
【課題を解決するための手段】
【００１２】
本発明の信号変換装置は、入力信号を出力信号に変換する信号変換装置であって、前記入力信号を前記出力信号に高精度に変換する第一の変換手段と、前記第一の変換手段による前記入力信号と前記出力信号の関係をルックアップテーブルの形式で記憶する記憶手段と、前記記憶手段により記憶された前記ルックアップテーブルに基づいて前記入力信号の補間処理を行なって前記出力信号を得る第二の変換手段と、前記ルックアップテーブルが表現するデータ空間の格子点で形成される立体のうち、高精度な変換を要する入力信号領域に対応する特定の立体を認識する認識手段と、前記入力信号が前記特定の立体内にあるか否かに基づいて前記第一の変換手段または前記第二の変換手段を選択する選択手段と、前記選択手段で選択された前記第一の変換手段または前記第二の変換手段を用いて前記入力信号を前記出力信号に変換する制御を行なう制御手段とを備えることを特徴とする。
【００１３】
また、本発明のルックアップテーブル作成方法は、入力信号と出力信号を対応付けるルックアップテーブルを作成するルックアップテーブル作成方法であって、前記ルックアップテーブルの格子点で形成される立体のうち、高精度な変換を要する入力信号領域に対応する特定の立体を識別するための識別情報を、前記ルックアップテーブルに付加するステップを有することを特徴とする。
【発明の効果】
【００１４】
本発明によれば、速度面と精度面での両立を保ちながら精度面でより確実な変換を行なう信号変換装置及び該信号変換装置に用いるルックアップテーブル作成方法を提供することができる。
【図面の簡単な説明】
【００１５】
【図１】第１の実施の形態に係る信号変換装置の構成を示す図である。
【図２】第１の実施の形態に係る信号変換装置の統合モジュールの動作を示すフローチャートである。
【図３】第２の実施の形態に係る信号変換装置の構成を示す図である。
【図４】第２の実施の形態に係る信号変換装置の統合モジュールの動作を示すフローチャートである。
【発明を実施するための形態】
【００１６】
以下、図面を参照して、本発明の実施の形態について説明する。図１は、本発明の実施の形態に係る信号変換装置の構成を示す図である。本実施の形態においては、デジタルカメラで撮影されたl6bitRGBのRaw信号を入力信号とし、8bitRGBのディスプレイ信号を出力信号とする信号変換装置を例にとり説明を行う。ここで、入力信号となるRaw信号はベイヤー補間済の画像データである。また、入力信号、出力信号ともにRGBの信号であることによる混同を避けるため、以下、入力信号を示す場合にはrgb、出力信号を示す場合はRGBと記述する。
【００１７】
この信号変換装置は、演算制御部２を有し、演算制御部２には、統合モジュール４、l6bitrgbのRaw信号を入力する入力部６、8bitRGB信号を出力する出力部８、画像変換用LUT（Look Up Table）１０及びモジュール選択用LUT１２が接続されている。
【００１８】
統合モジュール４は、高精度変換モジュール１４、高速変換モジュール１６を備えており、高速変換モジュール１６には画像変換用LUT記憶部１８が接続されている。高精度変換モジュール１４は、マトリックスや一次元LUTの変換、輝度によるクロマの変換などの変換要素から構成され、Raw信号からディスプレイ信号への理想的な変換を行うことができる。高速変換モジュール１６は、画像変換用LUT記憶部１８に記憶されている、入力信号と出力信号の対応を示す画像変換用LUTを用いて３次元LUT補間を行う。なお、変換速度は、高速変換モジュール１６は高精度変換モジュール１４よりも高速である。また精度面では、高速変換モジュール１６は補間による変換誤差を生じる場合があるため、高精度変換モジュール１４の方が優れる。したがって、高精度変換モジュール１４は精度面で優れ、高速変換モジュール１６は速度面で優れる。
【００１９】
また統合モジュール４は、モジュール選択部２０を備えており、モジュール選択部２０は、入力信号を出力信号に変換する際に、モジュール選択用LUT記憶部２２に記憶されているモジュール選択用LUT１２から作成された、モジュール選択用LUT（立体）記憶部２４に記憶されているモジュール選択用立体LUTに基づいて、高精度変換モジュール１４、高速変換モジュール１６のいずれか一方を選択し、選択したモジュールに信号を送る機能を有する。以上の統合モジュール４を構成する各要素について、以下に詳しく説明する。
【００２０】
［高精度変換モジュール］
高精度変換モジュール１４は、撮影画像をディスプレイで観賞する際に適当な見えになるように、撮像センサの出力(Raw)を変換するものであり、マトリックスや一次元LUTの変換、輝度によるクロマの変換などの変換要素から構成される。この変換は、撮像素子の特性、ディスプレイの特性、変換意図を考慮して決定される。
【００２１】
［画像変換用LUT］
画像変換用LUT１０は、画像変換用LUT記憶部１８に記憶される。画像変換用LUT１０は、16bitRawのrgb信号を入力とし8bitRGBのディスプレイ信号を出力とする3次元LUTである。３次元LUTは入力rgbに対する出力Ｒのテーブル、入力rgbに対する出力Ｇのテーブル、入力rgbに対する出力Ｂのテーブルを有し、LUTの格子点数は16×16×16個とする。それぞれ以下、R[x][y][z]、G[x][y][z]、B[x][y][z］（0≦x,ｙ,ｚ≦15)のように表す。この画像変換用LUT１０での入出力の関係は、高精度変換モジュール１４の変換での入出力の関係と同じものとなるようにしておく。これはあらかじめ算出しておき記憶しておく。なお、画像変換用LUT１０は、撮影画像の撮影条件ごとに作成された複数の画像変換用LUT１０を含み、撮影画像の撮影条件に対応するものを選択して用いるようにしてもよい。
【００２２】
［高速変換モジュール］
高速変換モジュール１６は、画像変換用LUT記憶部１８に記憶されている画像変換用LUTを読み込み補間処理を行うものである。ここで高速変換モジュール１６は、以下のように動作する。入力信号(r,g,b)＝(20000,30000,40000)である場合を例にとる。
先ず、入力信号の読み込みを行う。
入力信号(r,g,b)＝（20000,30000,40000）
次に、入力信号を格子点単位で正規化する。
（（16-1)×20000/65535,（16-1)×30000/65535,（16-1)×40000/65535）
＝（4.578，6.867，9.155）・・・・・・・・・・・・・・・・・・・・・（１）
次に入力信号が属する立体の選択を行う。
INT（4.578，6.867，9.155）＝（4,6,9）・・・・・・・・・・・・・・・（２）
次に、立体内の位置算出を行う。
（4.578，6.867，9.155）−（4,6,9）
＝（0.578，0.867，0.155）・・・・・・・・・・・・・・・・・・・・・（３）
【００２３】
次に、補間処理を行う。
R=（（R[4][6][9］×(１−0.867）+R[4][7][9］×0.867）×(１−0.578）
＋(R[5][6][9］×(１−0.867）+R[5][7][9］×0.867）×0.578）×(１−0.155）
＋（（R[4][6][10］×(１−0.867）+R[4][7][10］×0.867）×(１−0.578）
＋(R[5][6][10］×(１−0.867）+R[5][7][10］×0.867）×0.578）×0.155）・（４）
G=（（G[4][6][9］×(1-0.867）+G[4][7][9］×0.867）×(1-0.578）
＋(G[5][6][9］×(1-0.867）+G[5][7][9］×0.867）×0.578）×(１−0.155）
＋（（G[4][6][10］×(1-0.867）+G[4][7][10］×0.867）×(１−0.578）
＋(G[5][6][10］×(1-0.867）+G[5][7][10］×0.867）×0.578）×0.155）・・（５）
B=（（B[4][6][9］×(1-0.867）+B[4][7][9］×0.867）×(１−0.578）
＋(B[5][6][9］×(1-0.867）+B[5][7][9］×0.867）×0.578）×(１−0.155）
＋（（B[4][6][10］×(1-0.867）+B[4][7][10］×0.867）×(１−0.578）
＋(B[5][6][10］×(1-0.867）+B[5][7][10］×0.867）×0.578）×0.155）・・（６）
［モジュール選択用LUT］
モジュール選択用LUT１２は、モジュール選択用LUT記憶部２２に記憶され、モジュール選択部２０において入力信号に対し高精度の変換を要するか否かを判断するために使用される。モジュール選択用LUT１２は画像変換用LUT１０と関連しており、画像変換用LUT１０が表現するデータ空間の各格子に対応して、true、falseのいずれか一方を設定しておく。
【００２４】
モジュール選択用LUT１２は以下のような演算を行なうことにより、あらかじめ用意しておくことができる。例えば格子点の座標が(i,ｊ,k)であるとすると
Rr[i][j][k］=(R[i+1][j][k］-R[i][j][k］)-(R[i][j][k］-R[i-1][j][k］)・・・（７）
Rg[i][j][k］=(R[i][j+1][k］-R[i][j][k］)-(R[i][j][k］-R[i][j-1][k］)・・・（８）
Rb[i][j][k］=(R[i][j][k+1］-R[i][j][k］)-(R[i][j][k］-R[i][j][k-1］)・・・（９）
Gr[i][j][k］=(G[i+1][j][k］-G[i][j][k］)-(G[i][j][k］-G[i-1][j][k］)・・・（10）
Gg[i][j][k］=(G[i][j+1][k］-G[i][j][k］)-(G[i][j][k］-G[i][j-1][k］)・・・（11）
Gb[i][j][k］=(G[i][j][k+1］-G[i][j][k］)-(G[i][j][k］-G[i][j][k-1］)・・・（12）
Br[i][j][k］=(B[i+1][j][k］-B[i][j][k］)-(B[i][j][k］-B[i-1][j][k］)・・・（13）
Bg[i][j][k］=(B[i][j+1][k］-B[i][j][k］)-(B[i][j][k］-B[i][j-1][k］)・・・（14）
Bb[i][j][k］=(B[i][j][k+1］-B[i][j][k］)-(B[i][j][k］-B[i][j][k-1］)・・・（15）
として算出し、
Rr[i][j][k］> Th または Rg[i][j][k］> Th または Rb[i][j][k］> Th
Gr[i][j][k］> Th または Gg[i][j][k］> Th または Gb[i][j][k］> Th
Br[i][j][k］> Th または Bg[i][j][k］> Th または Bb[i][j][k］> Th  ・・・（16）
となった場合、格子点(i,j,k)に対してtrueを設定し、（16)式を満たさない場合falseを設定する。ここで、Thは閾値を表し、予め実験などにより求めておく。すべての格子点に対し、(7)〜(16)の演算、判断を行い、true、falseのいずれか一方を設定する。これは、格子点に対し画像変換用LUT１０の出力の傾きの差(二次微分)を計算し、計算結果が閾値より大きい場合、その点の周囲では入力信号に対する出力信号の傾きの変化量が大きいものとして、変換精度の高い高精度変換モジュール１４を必要としている、ということを意味する。
【００２５】
［モジュール選択部］
モジュール選択部２０は、モジュール選択用LUT記憶部２２に記憶されているモジュール選択用LUT１２から変換され、モジュール選択用LUT（立体）記憶部２４に記憶されているモジュール選択用立体LUTに基づいて、入力信号に対して高精度の変換を要するか否か判断する。
ここで、格子点と立体の関係を考えると、LUTの格子点数はN×N×N個あった場合にこれによって形成される立体は(N-1)×(N-1)×(N-1)個となり、
格子点は、（i,ｊ,ｋ）（0≦i,ｊ,ｋ≦N-1)、
立体Sは、S(i,ｊ,ｋ）（0≦ i,ｊ,ｋ≦N-2）
のように表現できる。
このとき、格子点(i,ｊ,k)の近傍の立体は、
S(i,ｊ,k-1)、S(i-1,ｊ,k-1)、S(i,j-1,k-1)、S(i-1,j-1,k-1)、
S(i,ｊ,k)、S(i-1,ｊ,k)、S(i,ｊ-1,k)、S(i-1,j-1,k)、
となる。
したがって、モジュール選択用LUT１２から知ることができる、“高精度変換モジュールを使用することが望ましい格子点”から、”高精度変換モジュールを使用することが望ましい立体”を求めることができる。その結果は、立体を単位としてtrue,falseのいずれか一方を出力するLUTとしてモジュール選択用LUT（立体）記憶部２４に格納する。
【００２６】
なお、モジュール選択部２０がモジュール選択用LUT記憶部２２に記憶されているモジュール選択用LUT１２を用いてモジュール選択を行うようにすることもできる。この場合には、モジュール選択用LUT１２が格子点を単位として、true、falseの設定を行っているため、入力信号rgbがtrueに設定された格子点近傍にあるか否か判断するためには、その格子点近傍の立体に属するか否かによって判断すればよい。
【００２７】
また、モジュール選択用LUT１２は、格子点を単位としたLUTとしたが、立体を単位として作成することもできる。その場合は上記の、格子点単位のLUTから立体単位のLUTへの変換が不要になる。
【００２８】
モジュール選択部２０は、上記のようにして求められた立体を単位としたモジュール選択用LUTに基づき、入力信号に対して、高精度変換モジュール１４、高速変換モジュール１６の選択を行なう。また選択されたモジュールに入力信号を送る。
【００２９】
次に、図２に示すフローチャートを参照して画像変換時の動作について説明する。先ず、演算制御部２は、画像変換用LUT１０を読み込み統合モジュール４の画像変換用LUT記憶部１８に記憶させる（ステップＳ１）。次に、演算制御部２は、モジュール選択用LUT１２を読み込み統合モジュール４のモジュール選択用LUT２２に記憶させる（ステップＳ２）。そして、モジュール選択用LUT２２に記憶されている格子点単位のモジュール選択用LUT１２を立体単位のLUTに変換してモジュール選択用LUT（立体）記憶部２４に記憶させる（ステップＳ３）。
【００３０】
次に、演算制御部２は、入力部６を介して入力された入力信号をモジュール選択部２０に入力する（ステップＳ４）。演算制御部２は、モジュール選択部２０にモジュール選択用LUT（立体）記憶部２４に記憶されている立体単位のモジュール選択用LUTに基づいて高精度変換モジュール１４または高速変換モジュール１６の選択を行わせ（ステップＳ５）、選択したモジュールに入力信号を送る。即ち、高精度変換モジュール１４が選択された場合には（ステップＳ６）、高精度変換モジュール１４により入力信号を出力信号に変換し（ステップＳ７）、高速変換モジュールが選択された場合（ステップＳ６）、高速変換モジュールにより入力信号を出力信号に変換する（ステップＳ８）。そして、演算制御部２は、出力信号を出力部８を介して出力する（ステップＳ９）。次に、入力画像の全画素についての処理が終了していれば信号変換処理を終了し、全画素についての処理が終了していない場合には、次の画素の信号変換処理に移りステップＳ４以降の処理を繰り返す（ステップＳ１０）。
【００３１】
この第１の実施の形態に係る信号変換装置によれば、補間を利用した高速変換が可能なモジュールと、高精度な変換が可能なモジュールとをあわせもち、どちらのモジュールを使用するかを判断して変換を行なうので、速度、精度を両立した変換を実現することができる。
【００３２】
次に、図面を参照して本発明の第２の実施の形態に係る信号変換装置について説明する。第２の実施の形態に係る信号変換装置については、第１の実施の形態に係る信号変換装置と異なる部分について詳細に説明する。また、第１の実施の形態に係る信号変換装置の構成と同一の構成には、第１の実施の形態において用いたのと同一の符号を用いて説明を行う。
【００３３】
第１の実施の形態においては、モジュール選択部２０で高精度変換モジュール１４を使用することが選択された場合には、高精度変換モジュール１４のみで変換を行っているが（図２のステップＳ６，Ｓ７参照）、この第２の実施の形態に係る信号変換装置においては、図４のフローチャートに示すように、モジュール選択部２０で高精度変換モジュール１４を使用することが選択された場合に（ステップＳ６）、高精度変換モジュール１４と高速変換モジュール１６の両方を使用して、階調性に優れた信号変換処理（以下、この処理を階調最適化処理という）を行なう（ステップＳ２０）。これは、高精度変換モジュール１４で変換される立体領域と高速変換モジュール１６で変換される立体領域が隣接した場合に、その境界面で階調の連続性を保証するものである。この階調最適化処理は以下の手順の処理で実現することができる。即ち、
手順１：画像データの点と立体の最近接の面までの距離L1を算出する。
手順２：立体の中心点と立体の最近接の面までの距離L2に対するL１の比k(=L1/L2)を算出する。
手順３：高精度変換モジュール１４での変換を実行し結果を(Rp,Gp,Bp)とする。
手順４：高速変換モジュール１６での変換を実行し結果を(Rs,Gs,Bs)とする。
手順５：RGBを算出する。
R = kRp + (1-k)Rs
G = kGp + (1-k)Gs
B = kBp + (1-k)Bs
このような変換を行なうことにより、境界面で信号の連続性を保証することができ、階調性に優れた変換を行うことができる。
【００３４】
図３は、階調最適化処理を行なう場合の信号変換装置の構成を示す図である。入力信号はモジュール選択部２０と高速変換モジュール１６に送られる。モジュール選択部２０はモジュール選択用LUT１０に基づき、当該画素が高精度の変換を要するか、高速の変換を要するか判断する。モジュール選択部２０で高精度の変換を要すると判断された場合、入力信号を距離比算出モジュール３０と高精度変換モジュール１４に送る。また、高精度の変換を行なうか否かを示すフラグをtrueにして、制御部３２に送信する。距離比算出モジュール３０で距離比の算出を行い（上記の手順１、手順２）、高精度変換モジュール１４で高精度の変換を行なう（上記の手順３）。また高速変換モジュール１６は画像変換用LUT１８を用いて高速の変換を行なう。制御部３２は、高精度の変換を行なうことを示すフラグ(true)から高精度の変換を要すると判断し、高精度変換モジュール１４による信号変換結果、高速変換モジュール１６による信号変換結果、及び距離比から出力信号を算出する（上記の手順5）。
【００３５】
モジュール選択部２０で高速変換を要すると判断された場合は、モジュール選択部２０は高精度の変換を行なうか否かを示すフラグをfalseにして、制御部３２に送信する。この場合、制御部３２は高速変換モジュール１６の信号変換結果をそのまま出力信号とする。図４は、階調最適化処理を行なう場合の動作を示す。ステップＳ２０において、高精度変換モジュール１４と高速変換モジュール２０の両方を用いて信号変換をおこなうことになる。
【００３６】
この第２の実施の形態に係る信号変換装置によれば、補間を利用した高速変換が可能な高速変換モジュール１６と、高精度な変換が可能な高精度変換モジュール１４とをあわせもち、どちらのモジュールを使用するかを判断して変換を行なうので、速度、精度を両立した変換を実現することができる。また、モジュール選択部２０で高精度変換モジュール１４を使用することが選択された場合に、高精度変換モジュール１４と高速変換モジュール１６の両方を使用して、階調性に優れた信号変換処理を行なうことができる。従って、高精度変換モジュール１４で変換される立体領域と高速変換モジュール１６で変換される立体領域が隣接した場合に、その境界面で階調の連続性を保証することができる。
【００３７】
また、モジュール選択用LUT１２は必ずしも演算によって求められる、というだけではない。高精度変換モジュール１４で変換を行う立体を手動入力で指定することもできる。例えば、いくつかの画像について、高速変換モジュール１６のみを使用して変換を行い、ユーザあるいは設計者が変換後の画像を観賞してトーンジャンプの発生している部分を指定する。そして、指定された部分に相当する入力信号が属する立体を算出する。その立体に対して、高精度変換モジュール１４で変換を行うことを意味するtrueを出力に設定する、などとすることができる。
【００３８】
また、カラーマネジメントシステムのプロファイルを扱う際にも適用することができる。カラーマネジメントシステムでは、デバイス依存の空間（RGBなど）とデバイス非依存の空間(L*a*b*など)とを関連付けるプロファイルを使用して変換が行われている。デジタルカメラで撮影されたrgb Raw信号を入力とし、8bitRGBのディスプレイ信号を出力とする変換では、Raw信号からL*a*b*への変換プロファイルを入力プロファイルとし、L*a*b*からRGBのディスプレイ信号への変換プロファイルを出力プロファイルとして、両プロファイルを読み込んで統合し、Raw信号からRGBのディスプレイ信号へのLUTを統合して、カラーマネジメント変換が行なわれている。このような場合に使用される、Raw信号からL*a*b*への変換プロファイルは、専用のアプリケーションソフトウェアで作成されており、このようなアプリケーションソフトウェアについても本発明を適用することができる。通常、Raw信号からL*a*b*への変換プロファイルは多次元のLUTとして画像変換用LUTを有する。ここで本発明の方法で作成された高精度な変換を要する入力信号領域に対応する特定の立体を識別するための識別情報であるモジュール選択用LUT１２またはモジュール選択用LUT１２を変換したモジュール選択用立体LUTを画像変換用LUT１０に付加して記録することができる。また、この識別情報は、入力された特定の入力信号に基づいて特定の立体を識別するものであってもよい。
【００３９】
また、上記のカラーマネジメント変換において、入力プロファイルと出力プロファイルを読み込んで統合する際にも本発明を適用することができる。例えば
入力信号:Raw rgb
出力信号:ディスプレイRGB
入力プロファイル：rgb→L*a*b*の３次元LUT
出力プロファイル：L*a*b*→RGBの３次元LUT
である場合、統合する場合は、rgb→RGBの３次元LUTを作成することになる。ここで、入力プロファイル、出力プロファイルともにモジュール選択用LUTが付加されている場合(あるいは付加されていなくても算出済である場合)、統合して求めるrgb→RGBの３次元LUTにも、以下のような方法で、モジュール選択用LUTを付加することができる。
【００４０】
統合する処理においては、入力格子点(r,g,b)に対応するL*a*b*値を入力プロファイルから算出し、さらに、算出されたL*a*b*値に対応するRGB値を出力プロファイルから算出する。したがって、入力プロファイル、出力プロファイルにおいてそれぞれ１回、立体を参照する処理が行なわれる。このとき同時に、入力プロファイル、出力プロファイルに付加されたモジュール選択用LUTを参照し、入力側の立体、出力側の立体それぞれについて、高精度の変換を要するか否かを意味するtrue,falseの情報を得ることができる。そして、この情報のいずれか一方がtrueであれば、統合するLUTに付加するモジュール選択用LUTの値にも、trueを付加するなどして、モジュール選択用LUTの値を決定することができる。
【符号の説明】
【００４１】
２…演算制御部、４…統合モジュール、６…入力部、８…出力部、１０…画像変換用LUT、１２…モジュール選択用LUT、１４…高精度変換モジュール、１６…高速変換モジュール、１８…画像変換用LUT記憶部、２０…モジュール選択部、２２…モジュール選択用LUT記憶部、２４…モジュール選択用LUT（立体）記憶部
【図１】
2012004762.tif 000003
【図２】
2012004762.tif 000004
【図３】
2012004762.tif 000005
【図４】
2012004762.tif 000006