JP2006246236A - 色変換装置及びその制御方法及びプログラム並びに記憶媒体 - Google Patents

色変換装置及びその制御方法及びプログラム並びに記憶媒体 Download PDF

Info

Publication number
JP2006246236A
JP2006246236A JP2005061334A JP2005061334A JP2006246236A JP 2006246236 A JP2006246236 A JP 2006246236A JP 2005061334 A JP2005061334 A JP 2005061334A JP 2005061334 A JP2005061334 A JP 2005061334A JP 2006246236 A JP2006246236 A JP 2006246236A
Authority
JP
Japan
Prior art keywords
value
function
error
coefficient
lut
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.)
Granted
Application number
JP2005061334A
Other languages
English (en)
Other versions
JP4411230B2 (ja
JP2006246236A5 (ja
Inventor
Kinya Oosa
欣也 大佐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2005061334A priority Critical patent/JP4411230B2/ja
Publication of JP2006246236A publication Critical patent/JP2006246236A/ja
Publication of JP2006246236A5 publication Critical patent/JP2006246236A5/ja
Application granted granted Critical
Publication of JP4411230B2 publication Critical patent/JP4411230B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Processing Of Color Television Signals (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Processing (AREA)

Abstract

【課題】 3次元ルックアップテーブルである誤差値格納手段の実使用時に必要なメモリ容量を節約することが可能を可能とした色変換装置を提供する。
【解決手段】 係数値LUT参照部603により係数値LUTを参照して、入力値901〜903に対して、入力値901〜903の属する領域に対応した係数値を選択し、該選択した係数値と入力値901〜903に対する近似関数値を関数値演算部602で計算し、該算出した近似関数値と、誤差値LUT参照部605により誤差値LUT607を参照して得た入力値901〜903に対応する誤差値とを加算部604で加算することにより、3次元LUT607の出力値を得る。
【選択図】 図6

Description

本発明は、画像データの色変換装置及びその装置を制御する制御方法及びプログラム並びにそのプログラムを格納した記憶媒体に関する。
プリンタによる画像出力等、画像を扱う様々なシステムにおいて、画像に対する色変換処理が必要となる。色変換処理に対する入力と出力が比較的単純な関係にある場合、マトリクス演算を用いたマスキング処理によって色変換処理を行うことも可能であるが、一般的には、色変換の入力と出力との関係を単純なマトリクス演算で精度良く近似できるとは限らない。
このような場合、3次元ルックアップテーブル(以下、省略する場合は、3次元LUTと記述する。)と補間演算(例えば、四面体補間演算等の多面体補間演算)とを用いた色変換方式を採用することが多い。
図9は、このような3次元LUTと補間演算とを用いた従来の色変換装置の構成を示すブロック図であり、同図に示す色変換装置は、3次元の入力値901,902,903を、格子点に対する3次元LUTと補間演算とを用いることにより、出力値913に変換する。
具体的には、まず、入力値901,902,903について、その上位ビットが取り出され、3次元LUTにおいて対応する格子点番号が、格子点番号計算部904,905,906において計算される。格子点番号計算部904,905,906における計算により得られた3つの格子点番号は、従来技術の3次元LUT参照部(3D LUT参照部)914に与えられる。3次元LUT参照部914では、格子点番号を3次元LUT915上の対応するアドレスに変換し、3次元LUT915から、そのアドレスのデータを読み出すことにより、格子点出力値を得る。そして、次の補間演算部912で必要なだけ格子点出力値907,908,909,910を得るため、3次元LUT915を繰り返して参照した後、得られた出力値は補間演算部912により補間され、最終的な出力値913となる。補間演算部912で使用する補間係数値は、入力値から補間係数値計算部911によって計算されて、補間演算部912に渡される。
図9に示すような3次元LUT915と補間演算とを用いた色変換方式は、マトリクス演算方式と比較して精度の高い色変換が可能であるが、高い色変換精度を得るためには、3次元LUT915のサイズをある程度大きく設定する必要があり、従って、ルックアップテーブルのサイズが増大して、コストアップ或いは色変換処理速度の低下を招く虞がある。
そこで、従来、ルックアップテーブルにデータを出力色毎に圧縮して保持することで、ルックアップテーブルにデータを保持するためのメモリ容量を節約するようにした色変換装置が知られている(例えば、特許文献1参照)。
特開2000−22974号公報
しかしながら、上記特許文献1に開示された従来技術では、3次元ルックアップテーブルにデータを保持するためのメモリ容量は節約できるものの、実際にルックアップテーブルを参照する時点では、ルックアップテーブルに保持してあるデータを展開して本来のサイズで使用するため、その時にデータを保持するためのメモリ容量を節約することはできない。
また、特に、処理速度が低速であるが大きなメモリ容量の記憶媒体を持つシステムと処理速度が高速であるが小さなメモリ容量の記憶媒体を持つシステムとを考慮した場合、データを展開済みのルックアップテーブルでは、処理速度が高速で小さなメモリ容量の記憶媒体上にデータが収納しきれないために、処理速度が低速で大きなメモリ容量の記憶媒体を配置する結果となり、そのために処理速度の低下を招いてしまう。
また、3次元ルックアップテーブルから出力するデータのビット精度が、例えば、8ビットから10ビットに増えたとすると、ビット精度が増加した分だけルックアップテーブルのサイズを大きくしなければならず、そのためにメモリ容量が増加してしまう。
更に、ルックアップテーブル参照時のアドレス計算も8ビット精度時と10ビット精度時とでは異なり、両方の精度に対応しようとすると、前記アドレス計算処理が複雑化する。
なお、ルックアップテーブルの実使用時のメモリ容量を減らすためには、3次元ルックアップテーブルに対して圧縮処理を施したままの状態でデータを格納して使用することも考えられるが、圧縮状態のデータに対して、ルックアップテーブルを参照するには、ルックアップテーブル参照時にデータの圧縮・展開処理が必要となるために、処理操作が複雑化するという問題があった。
本発明は、これら従来技術の有する問題点を解消するためになされたもので、その目的は、3次元ルックアップテーブルである格納手段の実使用時に必要なメモリ容量を節約することが可能な色変換装置及びその制御方法及びプログラム並びに記憶媒体を提供することである。
上記目的を達成するため本発明の色変換装置は、多次元入力値に対して選択された係数値を用いて関数値を計算する関数値演算手段と、前記多次元入力値の値域を複数の領域に分割して得た各領域に対応して前記関数値演算手段で使用する係数値を格納する係数値格納手段と、前記入力値が前記複数の領域のどの領域に属しているかによって前記係数値格納手段から対応する係数値を選択して前記関数値演算手段に渡す係数値参照手段と、前記関数値演算手段が算出した関数値と本来出力すべき値との差分を誤差値として前記多次元入力値のそれぞれに対応して格納する誤差値格納手段と、前記誤差値格納手段から前記入力値に対応する前記誤差値を獲得する誤差値獲得手段と、前記関数値演算手段が算出した関数値に対して前記誤差値獲得手段が獲得した誤差値を加算する加算手段とを有することを特徴とする。
また、上記目的を達成するため本発明の色変換装置の制御方法は、多次元入力値に対して選択された係数値を用いて関数値を計算する関数値演算ステップと、前記多次元入力値の値域を複数の領域に分割して得た各領域に対応して前記関数値演算ステップで使用する係数値を係数値格納手段に格納する係数値格納ステップと、前記入力値が前記複数の領域のどの領域に属しているかによって前記係数値格納手段から対応する係数値を獲得して前記関数値演算ステップに渡す係数値獲得ステップと、前記関数値演算ステップで算出した関数値と本来出力すべき値との差分を誤差値として前記多次元入力値のそれぞれに対応して誤差値格納手段に格納する誤差値格納ステップと、前記誤差値格納手段から前記入力値に対応する前記誤差値を獲得する誤差値獲得ステップと、前記関数値演算ステップで算出した関数値に対して前記誤差値獲得ステップで獲得した誤差値を加算する加算ステップとを有することを特徴とする。
本発明によれば、3次元ルックアップテーブルである誤差値格納手段の実使用時に必要なメモリ容量を節約することが可能である。
以下、本発明の実施の形態について、図面を参照しながら説明する。
(第1の実施の形態)
まず、本発明の第1の実施の形態を、図1〜図6に基づき説明する。
先に、本発明の原理について、1次元LUTの例を用いて説明する。
図1は、1次元LUTに対して本発明を適用した場合の原理を説明する図であり、同図において、縦軸は出力値を、横軸は入力値をそれぞれ示しており、実線L1はLUTの出力値を示している。
通常のLUTの構成では、各入力値に対して、実線L1に相当する出力値を格納するルックアップテーブルを用いるため、ルックアップテーブルのサイズとしては、入力の取り得る値の数×出力値の値域を格納するために必要なビット数が必要である。
本発明は、この出力値の値域を格納するために必要なビット数を減らすものであり、これは、次のように近似関数値を用いることで実現される。
図1中、複数の破線L2は、LUTの出力値(実線L1)の近似関数値の出力値となっており、入力値が図1中、2点鎖線L3で示した近似関数値分割位置で分割された領域のどの部分に入るかによって、異なる近似関数値が用いられる。ここで、入力値を複数の領域に分割して、それぞれに対して異なる近似関数値を用いる理由は、LUTの出力値(実線L1)と近似関数値の出力値(破線L2)との誤差をできるだけ小さくするためである。
図1において、実線L1で示されるLUTの出力値と破線L2で示される近似関数値の出力値との誤差(差分)を見ると、元々のLUTの出力値の値域と比較して狭くなっており、誤差値については、LUTの出力値よりも少ないビット数で表現できる。
次に、図1の説明を基に1次元LUTに対する本実施の形態に係る色変換装置の動作を、図2及び図3を用いて説明する。
図2は、本実施の形態に係る色変換装置における近似関数値の説明図であり、同図において、縦軸は関数値の出力値を、横軸は入力値をそれぞれ示す。
また、図3は、本実施の形態に係る色変換装置における誤差値格納テーブルの説明図であり、同図において、縦軸は誤差値を、横軸は入力値をそれぞれ示す。
1次元LUTの入力値が与えられると、まず、図2に示す近似関数値の計算が行われ、近似関数値が出力される。近似関数値は、図2では、複数の1次関数値であり、図2において破線L4により4つに区切られた入力値の各値域に対して、異なる係数値を使用する。1次関数値の場合、計算に必要な係数値は2個であるから、全体としては、2x4=8個の係数値が必要となる。
また、1次元LUTの入力値を使用して、図3に示す誤差値格納テーブルを参照する。この誤差値格納テーブルは、図1のLUTの出力値と近似関数値の出力値との差分を各入力値に対して格納したテーブルであって、値域が狭いため、LUTの出力値より少ないビット数のテーブルを使用できる。
最後に、図2で計算された近似関数値の出力値と、図3で参照された誤差値格納テーブルの出力値(誤差値)とが加算され、図1の実線L1に相当するLUTの出力値が得られる。
近似関数値の計算に必要な係数値の個数が少なければ、誤差値格納テーブルのサイズと係数値の格納領域のサイズとを加えても、なお、元々の1次元LUTのサイズより小さくできるため、LUTを使用する際のメモリ容量を節約することができる。
色変換装置の場合、通常、3次元の入力値を扱うため、次に、3次元LUTについて、図4を用いて説明する。
図4は、本実施の形態に係る色変換装置における3次元LUTの説明図であり、同図における3つの軸L5,L6,L7は、入力の3つの次元を示している。
色変換に使用する3次元LUTでは、入力値を適切な間隔で格子状に分割することで得られる各格子点に対し、対応する出力値を格納する。
図4においては、分割によって得られる立方体或いは直方体の各頂点について、対応する出力値を格納することで、3次元LUTが構成される。
3次元の場合、格子分割数が増加すると、1次元の場合と比べて急激に格子点数が増加するため、3次元LUTのテーブルサイズを減らす要求は、より高まることになる。
3次元LUTに対して本発明を適用する場合も、原理は上述した1次元LUTの場合と全く同じであり、まず、近似関数値を計算し、次に、誤差値格納テーブルを参照して、近似関数値と誤差値とを加算することで、最終的なLUTの出力値を得る。
3次元LUTに対して近似関数値を求める際にも、入力値の値域を複数領域に分割し、それぞれの領域で異なる係数値を適用するが、その領域分割の一例を図5に示す。
図5において、3つの軸L8,L9,L10が入力の3つの次元を示しており、ここでは各次元について2分割しているため、全体としては2x2x2=8個の領域からなる。
近似関数値として1次関数値を用いたとすると、入力値(x, y, z)に対する出力値oは、4つの係数値a, b, c, dを用いて、
o = a * x + b * y + c * z + d
と計算できるため、全体として必要な係数値の個数は、4x8=32個となる。
また、誤差値格納テーブルについては、ルックアップテーブルの次元数が3次元になること以外は、1次元の場合と同様であるが、3次元では1次元の場合に比べて扱うべき入力点数が増えてくるため、1つ1つのルックアップテーブルのデータのビット数が減る効果は、より大きくなる。
以下、上述した1次元LUT及び3次元LUTについて説明した原理を基に、本発明の第1の実施の形態に係る色変換装置について、図6を用いて説明する。
図6は、本実施の形態に係る色変換装置の構成を示すブロック図であり、同図において、図9と同一部分には同一符号が付してある。
図6において図9と異なる点は、3次元LUT参照部の構成と、図9の構成に係数値ルックアップテーブル(係数値LUT)606を付加したことと、図9の出力値を保持した3次元LUT(3D LUT)915に代えて誤差値を保持した3次元LUT(3D LUT)607を設けたことである。
そして、この色変換装置は、3次元の入力値901,902,903を3次元LUT参照部と補間演算部912とによって、出力値913に変換するものである。
色変換装置の出力値913は、一般的に多次元であることが多いが、ここでは出力1次元分のみについて示しており、多次元の場合は、図6と同様の構成を複数並列に持つか、或いは、処理を複数回適用することで、必要な次元分の出力値が得られる。
本実施の形態に係る色変換装置における3次元LUT参照部601は、関数近似部601aと、誤差値補正部601bとから成る。
関数近似部601aは、関数値演算部602と係数値LUT参照部603とから成り、係数値LUT参照部603は、係数値LUT606に接続されている。関数値演算部602は、多次元入力値を用いて選択された係数値を用いて関数値を計算するものである。係数値LUT参照部603は、入力値が前記複数の領域(多次元入力値の値域を複数の領域に分割して得られた領域)のどの領域に属しているかによって係数値LUT606から対応する係数値を選択して関数値演算部602に渡すものである。
また、誤差値補正部601bは、加算部604と誤差値LUT参照部605とから成り、誤差値LUT参照部605は、3D LUT607に接続されている。加算部604は、関数値演算部602によって計算された関数値に対して誤差値を加算して出力するものである。誤差値LUT参照部605は、入力値に対応する誤差値を、3D LUT607を参照して獲得し、加算部604に渡すものである。
係数値LUT606は、係数値を保持したルックアップテーブル(係数値格納手段)である。3D LUT607は、誤差値を各多次元入力値に対応して保持したルックアップテーブル(誤差値格納手段)であり、以降、必要に応じて誤差値LUTと記述する。
ここで、誤差値とは、関数値演算部602によって計算された関数値と本来出力すべき値との差分である。
図6において、まず、入力値901〜903は、図9に示した従来技術の構成と同様に、格子点番号計算部904〜906によって、格子点番号に変換され、3次元LUT参照部601に入力される。次に、3次元LUT参照部601の出力する格子点出力値907〜910を用いて補間演算部912で補間演算が行われ、最終的な出力値913が得られるのは、図4と同様である。
上述したように3次元LUT参照部601は、関数値演算部602と係数値LUT参照部603とから成る関数近似部601aと、加算部604と誤差値LUT参照部605とから成る誤差値補正部601bの2つの部分から成っており、それぞれ、前記原理の近似関数値の計算と、誤差値LUT607の参照に対応している。更に、関数近似部601aには、入力値の値域で複数に分割された各領域に対応する近似関数の係数値を格納するための係数値LUT606が接続され、誤差値補正部601bには、誤差値LUT607が接続されている。
まず、関数近似部601aの動作を説明する。
入力された3次元の格子点番号は、係数値LUT参照部603で図5に示したように入力値を分割したどの領域に属するかが判定され、その領域に応じた係数値LUT602上のアドレスが計算される。このアドレスを用いて、係数値LUT参照部603は係数値LUT606を参照し、近似関数の計算に必要な係数値を得て、関数値演算部602に渡す。関数値演算部602は、入力された3次元の格子点番号と係数値とを使用して近似関数値を計算し、その出力値を誤差値補正部601bの加算部604に渡す。
次に、誤差値補正部601bの動作を説明する。
誤差値LUT参照部605は、入力された3次元の格子点番号を、3次元LUT607上の対応するアドレスに変換し、このアドレスを用いて3次元LUT607を参照し、入力値に対応する誤差値を得て、その誤差値を加算部604に渡す。加算部604では、関数値演算部602から得られた関数値と、誤差値LUT参照部605から得られた誤差値とを加算し、3次元LUT参照部601の出力値として出力する。
図6のような構成をとり、3次元LUT607の保持内容を出力値ではなく、値域の狭い誤差値で持つことによって、3次元LUT607の実使用時におけるメモリ容量を節約することができる。
なお、以上の説明では、近似関数として1次関数を用いたが、回路規模の許す範囲でより複雑な関数、例えば、2次関数や他の算術関数・論理関数を用いることも可能である。
また、図5において、入力値の値域を各次元均等に2分割したが、各次元の分割数は係数値LUT606のメモリ容量が大きくなり過ぎない範囲で任意であり、或いは、必ずしも均等分割である必要はない。
以上、説明したように、本実施の形態に係る色変換装置によれば、係数値LUT参照部603により係数値LUT606を参照して、入力値901〜903に対して、入力値901〜903の属する領域に対応した係数値を選択し、該選択した係数値と入力値901〜903に対する近似関数値を関数値演算部602で計算し、該算出した近似関数値と、誤差値LUT参照部605により誤差値LUT607を参照して得た入力値901〜903に対応する誤差値とを加算部604で加算することにより、3次元LUT607の出力値を得るようにしたから、3次元LUT607のメモリ容量を節約することができる。
(第2の実施の形態)
次に、本発明の第2の実施の形態を、図7に基づき説明する。
本実施の形態は、上述した発明が解決しようとする課題のうち、特に、ビット精度が上がった場合のメモリ容量の増大及び複数のビット精度への対応を解決するものである。
図7は、本実施の形態に係る色変換装置の主要部の構成を示すブロック図であり、同図においては、図6における3次元LUT参照部601、係数値LUT606、3次元LUT607にそれぞれ相当する3次元LUT参照部701、係数値LUT705、3次元LUT709を示しており、その他の入力値、格子点番号計算部、格子点出力値、補間係数値計算部、補間演算部、及び出力値等は省略してある。
3次元LUT参照部701は、関数近似部701aと誤差値補正部701bの2つに分かれている。
関数近似部701aは、関数値演算部702と係数値LUT参照部703と関数出力精度選択部704とから成り、係数値LUT参照部703は、係数値LUT705に接続されている。関数値演算部702は、多次元入力値を用いて選択された係数値を用いて関数値を計算するものである。係数値LUT参照部703は、入力値が前記複数の領域(多次元入力値の値域を複数の領域に分割して得られた領域)のどの領域に属しているかによって係数値LUT705から対応する係数値を選択して関数値演算部702に渡すものである。関数出力精度選択部704は、関数値演算部702の出力値を複数ビット精度から選択して出力するものである。
誤差値補正部701bは、加算部706と加算位置選択部707と誤差値LUT参照部708とから成り、誤差値LUT参照部708は、3次元LUT(3D LUT)709に接続されている。加算部706は、関数値演算部702によって計算された関数値に対して誤差値を加算して出力するものである。加算位置選択部707は、誤差値LUT参照部708の出力値を複数のビット位置から選択して桁合わせした上で加算部706に対して出力するものである。誤差値LUT参照部708は、入力値に対応する誤差値を、3次元LUT709を参照して獲得し、加算部706に渡すものである。
係数値LUT705は、係数値を保持したルックアップテーブル(係数値格納手段)である。3次元LUT709は、誤差値を各多次元入力値に対応して保持したルックアップテーブル(誤差値格納手段)で、以降必要に応じて誤差値LUTと記述する。
説明の都合上、もともと図6において対応していた格子点出力値のビット精度を8ビットとし、図7において対応する格子点出力値のビット精度を8ビット及び10ビットとする。
まず、3次元LUT参照部701の関数近似部701aについて説明する。
係数値LUT参照部703は、入力された3次元の格子点番号値を用いて係数値LUT705を参照し、近似関数で使用する係数値を関数値演算部702に渡すまでの処理は、上述した第1の実施の形態と全く同じである。
関数値演算部702では、入力値と係数値とを使用して近似関数の出力値を計算するが、その出力値のビット精度は、対応する出力値のビット精度の中で最も高い精度以上、ここでは10ビット以上とする。関数値演算部702の演算途中結果は、通常、出力値のビット精度より多くのビット精度を持つため、関数値演算部702の出力するビット数を増やすだけで、これは実現できる。
次に、関数値演算部702の出力値は、関数出力精度選択部704に入力され、ここで、格子点出力値のビット精度と同じになるようビット精度が選択される。例えば、格子点出力値のビット精度として8ビットが選択された場合には、入力された10ビット以上の値が8ビットになるように切り捨て、或いは丸め(単に切り捨てるのではなく、所定値になるように圧縮する技術)が行われて出力される。また、例えば、格子点出力値のビット精度として10ビットが選択された場合には、入力された10ビット以上の値が10ビットになるように切り捨て、或いは丸めが行われて出力される。どのビット精度で出力を行うかについては、3次元LUT参照部701を使用する前に設定されているものとする。関数出力精度選択部704によって、格子点出力値のビット精度になった近似関数出力値は、誤差値補正部701bの加算部706に送られる。
次に、3次元LUT参照部701の誤差値補正部701bについて説明する。
誤差値LUT参照部708が、3次元の格子点番号値を用いて、誤差値を保持した3次元LUT(3D LUT)709を参照するところまでの処理は、上述した第1の実施の形態と同じであるが、3次元LUT709を参照して得られた誤差値は、加算部706に入力される前に、加算位置選択部707によって変換される。加算位置選択部707は、使用前に予め設定されたビット数だけ、入力された誤差値を桁合わせして出力する機能を持ち、例えば、1/2n倍、1倍、2n倍のスケーリング係数値を設定できる。加算部706は、対応する出力ビット精度のうち最も高いもの、この例では、10ビットに対応した加算部であり、関数近似部701から出力された8ビット、或いは10ビットの関数値に対して、加算位置選択部707から出力された桁合わせ後の誤差値を加算することで、最終的な格子点出力値を得る。
以上、説明したように、本実施の形態に係る色変換装置によれば、関数値演算部702の出力ビット精度と加算部706の演算ビット精度とを増やし、関数出力精度選択部704を設けることで、より高い出力ビット精度に対応し且つ複数のビット精度の切り換えに容易に対応することができる。
更に、誤差値LUT参照部708により誤差値LUT709を参照することによって得られる誤差値については、加算位置選択部707によって、ビット位置の桁合わせが可能であるため、誤差値LUT709に保持されるデータのビット数が一定であっても、桁合わせ後の誤差値の値域を制御することができる。また、誤差値LUT709に保持されるデータのビット数が一定であるということは、ビット精度が変わっても誤差値LUT参照部708でアドレスを計算する論理が変わらないということを意味しており、複数のビット精度の切り換えに一層容易に対応することができる。
尚、以上の説明では、説明の都合上、8ビットと10ビットの2つのビット精度を例に挙げたが、対応するビット精度は2つに限定される必要はなく、また、ビット数も8ビットと10ビットに制限されるものではない。
また、図7においては、関数出力精度選択部704と加算位置選択部707の両方を用いた例を示したが、どちらか一方のみを用いる構成でも、同様に実施可能である。
(第3の実施の形態)
次に、本発明の第3の実施の形態を、図8に基づき説明する。
本実施の形態は、上述した第1の実施の形態で説明した原理と同じ原理を用いて、色変換を行うものである。
尚、本実施の形態に係る色変換装置の基本的な構成は、上述した第2の実施の形態における図7に示す構成と同一であるから、同図を必要に応じて流用して説明する。
以下、本実施の形態に係る色変換装置の動作を、図8のフローチャートを用いて説明する。
本実施の形態に係る色変換装置の処理ステップは、大別して、関数近似部701aの処理である関数近似ステップS801と、誤差値補正部701bの処理である誤差値補正ステップS802とから成り、それぞれのステップS801,S802は、以下のステップから成る。
関数近似ステップS801においては、まず、最初に格子点番号の上位ビットから係数値LUT705の参照アドレスを計算する参照アドレス計算ステップS803が実行され、入力された3次元の格子点番号が入力値の値域を複数領域に分割したときのどの領域に属するかによって、係数値LUT705の参照アドレスが求められる。次に、係数値LUT参照部703により係数値LUT705を参照する係数値LUT参照ステップS804が実行され、係数値LUT705から近似計算に使用する係数値が得られる。次に、関数値演算部702により、格子点番号と係数値とにより関数値演算を行う関数値演算ステップS805が実行され、近似関数の出力値が計算される。このステップS805の出力値のビット精度は、この色変換方法の対応する出力ビット精度のうち最も高いものと同じか、それ以上とする。次に、関数出力値を選択されたビット精度に丸める(単に切り捨てるのではなく、所定値になるように圧縮する技術)ステップS806が実行され、予め選択されたビット精度に関数出力値を丸めて(単に切り捨てるのではなく、所定値になるように圧縮する技術)出力する。
一方、誤差値補正ステップS802においては、まず、格子点番号から誤差値LUT709の参照アドレスを計算するステップS807により、入力された3次元の格子点番号から誤差値LUT709におけるアドレスを計算する。次に、誤差値LUT参照部708により誤差値LUT709を参照する誤差値LUT参照ステップS808が実行され、誤差値を得る。次に、加算位置選択部707により、誤差値LUT709の出力値を選択された加算位置に桁合わせする加算位置選択ステップS809が実行され、誤差値を予め選択されたスケーリング係数値(1/2n倍、1倍、2n倍等)により桁合わせする。
最後に、加算部706により、関数出力値と誤差出力値とを加算して出力する加算出力ステップS810が実行され、上述した関数近似ステップ801によって得られた近似関数出力値と、加算位置選択ステップS809によって得られた桁合わせ後の誤差値とを、加算部706により加算することで最終的な格子点出力値が得られる。
本実施の形態に係る色変換装置によれば、以上示したステップS801〜S810を持つことによって、上述した第1及び第2の実施の形態と同様に、3次元LUT709のメモリ容量を節約でき、より高い出力ビット精度への対応や、複数の出力ビット精度への対応が容易に行なえる。
なお、本発明は、本実施の形態に限られるものではなく、本発明の主題に基づき、どのようなものであっても適用可能である。
また、本発明の目的は、上述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム又は装置に供給し、そのシステム又は装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読出して実行することによっても達成されることは言うまでもない。
この場合、記憶媒体から読出されたプログラムコード自体が上述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
また、コンピュータが読み出したプログラムコードを実行することにより、上述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)等が実際の処理の一部又は全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
また、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
また、上記プログラムは、上述した実施の形態の機能をコンピュータで実現することができれば良く、その形態は、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給されるスクリプトデータ等の形態を有するものでも良い。
また、プログラムを供給する記録媒体としては、例えば、RAM、NV−RAM、フロッピー(登録商標)ディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD(DVD−ROM、DVD−RAM、DVD−RW、DVD+RW)、磁気テープ、不揮発性のメモリカード、他のROM等の上記プログラムを記憶できるものであれば良い。
更に、上記プログラムは、インターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続される不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。
本発明の1次元LUTによる原理説明図である。 本発明の原理を説明するための近似関数説明図である。 本発明の原理を説明するための誤差値テーブル説明図である。 本発明の3次元LUTによる原理説明図である。 本発明の原理を説明するための3次元入力時の入力値域分割の一例を示す図である。 本発明の第1の実施の形態に係る色変換装置の構成を示すブロック図である。 本発明の第2の実施の形態に係る色変換装置の要部構成を示すブロック図である。 本発明の第3の実施の形態に係る色変換装置の動作を示すフローチャートである。 従来の色変換装置の構成を示すブロック図である。
符号の説明
601 3次元LUT参照部
601a 関数近似部
601b 誤差値補正部
602 関数値演算部
603 係数値LUT参照部
604 加算部
605 誤差値LUT参照部
606 係数値LUT
607 3次元LUT(3D LUT:誤差値LUT)
701 3次元LUT参照部
701a 関数近似部
701b 誤差値補正部
702 関数値演算部
703 係数値LUT参照部
704 関数出力精度選択部
705 係数値LUT
706 加算部
707 換算位置選択部
708 誤差値LUT参照部
709 3次元LUT(3D LUT:誤差値LUT)

Claims (8)

  1. 多次元入力値に対して選択された係数値を用いて関数値を計算する関数値演算手段と、
    前記多次元入力値の値域を複数の領域に分割して得た各領域に対応して前記関数値演算手段で使用する係数値を格納する係数値格納手段と、
    前記入力値が前記複数の領域のどの領域に属しているかによって前記係数値格納手段から対応する係数値を選択して前記関数値演算手段に渡す係数値参照手段と、
    前記関数値演算手段が算出した関数値と本来出力すべき値との差分を誤差値として前記多次元入力値のそれぞれに対応して格納する誤差値格納手段と、
    前記誤差値格納手段から前記入力値に対応する前記誤差値を獲得する誤差値獲得手段と、
    前記関数値演算手段が算出した関数値に対して前記誤差値獲得手段が獲得した誤差値を加算する加算手段と
    を有することを特徴とする色変換装置。
  2. 前記関数値演算手段が算出した関数値を複数のビット精度から選択して出力する関数値出力精度選択手段を有することを特徴とする請求項1に記載の色変換装置。
  3. 前記誤差値獲得手段が獲得した誤差値を複数のビット位置から選択して桁合わせした上で前記加算手段に対して出力する加算位置選択手段を有することを特徴とする請求項1または2に記載の色変換装置。
  4. 多次元入力値に対して選択された係数値を用いて関数値を計算する関数値演算ステップと、
    前記多次元入力値の値域を複数の領域に分割して得た各領域に対応して前記関数値演算ステップで使用する係数値を係数値格納手段に格納する係数値格納ステップと、
    前記入力値が前記複数の領域のどの領域に属しているかによって前記係数値格納手段から対応する係数値を獲得して前記関数値演算ステップに渡す係数値獲得ステップと、
    前記関数値演算ステップで算出した関数値と本来出力すべき値との差分を誤差値として前記多次元入力値のそれぞれに対応して誤差値格納手段に格納する誤差値格納ステップと、
    前記誤差値格納手段から前記入力値に対応する前記誤差値を獲得する誤差値獲得ステップと、
    前記関数値演算ステップで算出した関数値に対して前記誤差値獲得ステップで獲得した誤差値を加算する加算ステップと
    を有することを特徴とする色変換装置の制御方法。
  5. 前記関数値演算ステップで算出した関数値を複数のビット精度から選択して出力する関数値出力精度選択ステップを有することを特徴とする請求項4に記載の色変換装置の制御方法。
  6. 前記誤差値獲得ステップで獲得した誤差値を複数のビット位置から選択して桁合わせした上で前記加算ステップに対して出力する加算位置選択ステップを有することを特徴とする請求項4または5に記載の色変換装置の制御方法。
  7. 請求項4乃至6のいずれかに記載の色変換装置の制御方法を実現するためのコンピュータ読み取り可能なプログラムコードを有することを特徴とするプログラム。
  8. 請求項7に記載のプログラムを格納したことを特徴とする記憶媒体。
JP2005061334A 2005-03-04 2005-03-04 色変換装置及びその制御方法、並びにプログラム Expired - Fee Related JP4411230B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005061334A JP4411230B2 (ja) 2005-03-04 2005-03-04 色変換装置及びその制御方法、並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005061334A JP4411230B2 (ja) 2005-03-04 2005-03-04 色変換装置及びその制御方法、並びにプログラム

Publications (3)

Publication Number Publication Date
JP2006246236A true JP2006246236A (ja) 2006-09-14
JP2006246236A5 JP2006246236A5 (ja) 2008-04-17
JP4411230B2 JP4411230B2 (ja) 2010-02-10

Family

ID=37052149

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005061334A Expired - Fee Related JP4411230B2 (ja) 2005-03-04 2005-03-04 色変換装置及びその制御方法、並びにプログラム

Country Status (1)

Country Link
JP (1) JP4411230B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8368978B2 (en) 2008-12-23 2013-02-05 Ricoh Production Print Solutions LLC Linear processing in color conversion

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02206973A (ja) * 1989-02-07 1990-08-16 Matsushita Electric Ind Co Ltd 色修正装置
JPH10200770A (ja) * 1997-01-13 1998-07-31 Sharp Corp 画像データの色補正方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02206973A (ja) * 1989-02-07 1990-08-16 Matsushita Electric Ind Co Ltd 色修正装置
JPH10200770A (ja) * 1997-01-13 1998-07-31 Sharp Corp 画像データの色補正方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8368978B2 (en) 2008-12-23 2013-02-05 Ricoh Production Print Solutions LLC Linear processing in color conversion

Also Published As

Publication number Publication date
JP4411230B2 (ja) 2010-02-10

Similar Documents

Publication Publication Date Title
JP5294313B2 (ja) ベジェ曲線描画装置、ベジェ曲線描画方法およびプログラム
US6028963A (en) Image encoding based on judgement on prediction error
US20140348437A1 (en) Data storage control apparatus, data storage apparatus, data readout control apparatus, data storage method, compression circuit, and compression method
CN101945273A (zh) 压缩编码装置和视觉显示控制装置
JP4651108B2 (ja) 変換テーブル圧縮方法およびプログラムおよび変換テーブル圧縮装置
JP4438997B2 (ja) 液晶表示方法及び液晶表示装置
US7573612B2 (en) Color conversion apparatus, color conversion method and color conversion program
JP2008059582A (ja) 省エネのためのlod値計算方法とこれを利用した3次元レンダリングシステム
JP4411230B2 (ja) 色変換装置及びその制御方法、並びにプログラム
US6711603B1 (en) Fractional, arithmetic unit, fractional arithmetic method, set-up engine for handling graphic images and computer-readable medium
US10269168B2 (en) Graphics processing systems
US6005988A (en) Method and apparatus for rapid digital image resizing
US20170039031A1 (en) Data processing systems
EP0969413A2 (en) Data conversion apparatus and method
US11164373B2 (en) Graphics processing apparatus
JPH10191090A (ja) 色変換テーブルの製造装置及び製造方法並びに記録媒体
US7079150B1 (en) Image processing wherein decompression and compression methods provide faster transmission of texture data between a texture buffer and Aprocessor than between a storage device and a processor
US9489344B2 (en) Methods of and apparatus for approximating a function
JP2004213464A (ja) 画像処理装置
US7346220B2 (en) Method and apparatus for reducing the bandwidth required to transmit image data
KR102781162B1 (ko) 실시간으로 디지털 영상의 2차원 이미지 변환을 할 수 있는 전자 장치 및 그 변환 방법
JP5025779B2 (ja) 変換テーブル圧縮方法、装置、プログラムおよび変換テーブル復元装置、プログラム
JP2007086956A (ja) 画像処理装置、および画像処理方法、並びにコンピュータ・プログラム
US9449579B2 (en) Systems and methods for mapping color data
JP2002354276A (ja) 色変換方法および色変換装置

Legal Events

Date Code Title Description
RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20070626

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080228

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080228

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090514

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090727

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091110

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091116

R150 Certificate of patent or registration of utility model

Ref document number: 4411230

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121120

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131120

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees