(57)【要約】【課題】  色空間のチャネルのビット深度の増加に伴う、メモリ空間またはストレージ空間の必要量の増加を抑制する。【解決手段】  各データフィールドが前記ピクセルの異なる色成分を表す複数のビットを記憶する複数のデータフィールド３０２と、そのデータフィールドの前記複数のビットが前記ピクセルの前記異なる色成分を表すのにどのように解釈されるべきかを示す、少なくとも１ビットの解釈ビット３０４とを含んでなる、ピクセルの拡張色域情報を表現するデータ構造体３００が記憶されたコンピュータに読み取り可能な媒体を提供する。【選択図】        図３
2005033806.tif 000002
【特許請求の範囲】
【請求項１】
各データフィールドがあるピクセルの異なる色成分を表す複数のビットを記憶する複数のデータフィールドと、
そのデータフィールドの前記複数のビットが前記ピクセルの前記異なる色成分を表すのにどのように解釈されるべきかを示す各データフィールド用の少なくとも１ビットの解釈ビットと
を含んでなる、ピクセルの拡張色域情報を表現するデータ構造体が記憶されたコンピュータに読み取り可能な媒体。
【請求項２】
前記複数のデータフィールドは、前記ピクセルの赤色成分を表す複数のビットを記憶する赤データフィールドと、前記ピクセルの緑色成分を表す複数のビットを記憶する緑データフィールドと、前記ピクセルの青色成分を表す複数のビットを記憶する青データフィールドとを含む請求項１に記載のコンピュータに読み取り可能な媒体。
【請求項３】
前記複数のデータフィールド中の少なくとも１つの各データフィールド用の前記少なくとも１ビットの解釈ビットが単一のビットを含み、前記データフィールドの前記複数のビットのビット数がｎであり、該データフィールドの該複数のビットは、前記単一のビットが第１の値を有する場合には、１ずつの増分で０から（２n−１）までの第１の範囲内にあるピクセルの前記異なる色成分の値を表すものである請求項１に記載のコンピュータに読み取り可能な媒体。
【請求項４】
前記データフィールドの前記複数のビットは、前記単一のビットが第２の値を有する場合には、１ずつの増分で２nから（２×２n）−１までの第２の範囲内にある前記ピクセルの前記異なる色成分の値を表すものである請求項３に記載のコンピュータに読み取り可能な媒体。
【請求項５】
前記データフィールドの前記複数のビットは、前記単一のビットが第２の値を有する場合には、１ずつの増分で−２nから−１までの第２の範囲内にある前記ピクセルの前記異なる色成分の値を表すものである請求項３に記載のコンピュータに読み取り可能な媒体。
【請求項６】
前記データフィールドの前記複数のビットは、前記単一のビットが第２の値を有する場合には、１ずつの増分で０．５から（２n−０．５）までの第２の範囲内にある前記ピクセルの前記異なる色成分の値を表すものである請求項３に記載のコンピュータに読み取り可能な媒体。
【請求項７】
前記データフィールドの前記複数のビットの下位（ｎ−１）ビットは、前記単一のビットが第２の値を有する場合であり、前記複数のビットの最上位ビットが第１の値を有する場合には、１ずつの増分で−２n-1から−１までの第２の範囲内にある前記ピクセルの前記異なる色成分の値を表し、前記単一のビットが第２の値を有する場合であり、前記複数のビットの最上位ビットが第２の値を有する場合には、１ずつの増分で２nから（２n＋２n-1）−１までの第３の範囲内にある前記ピクセルの前記異なる色成分の値を表すものである請求項３に記載のコンピュータに読み取り可能な媒体。
【請求項８】
前記複数のデータフィールド中の少なくとも１つの各データフィールドについての前記少なくとも１ビットの解釈ビットがビットの対を含み、前記データフィールドの前記複数のビットのビット数がｎであり、該データフィールドの該複数のビットは、該ビットの対が第１の値の対を有する場合には、１ずつの増分で０から（２n−１）までの第１の範囲内にあるピクセルの前記異なる色成分の値を表すものである請求項１に記載のコンピュータに読み取り可能な媒体。
【請求項９】
前記データフィールドの前記複数のビットは、前記ビットの対が第２の値の対を有する場合には、１ずつの増分で２nから（２×２n）−１までの第２の範囲内にある前記ピクセルの前記異なる色成分の値を表すものである請求項８に記載のコンピュータに読み取り可能な媒体。
【請求項１０】
前記データフィールドの前記複数のビットは、前記ビットの対が第３の値の対を有する場合には、１ずつの増分で−２nから−１までの第３の範囲内にある前記ピクセルの前記異なる色成分の値を表すものである請求項９に記載のコンピュータに読み取り可能な媒体。
【請求項１１】
前記データフィールドの前記複数のビットは、前記ビットの対が第２の値の対を有する場合には、１ずつの増分で０．５から（２n−０．５）までの第２の範囲内にある前記ピクセルの前記異なる色成分の値を表すものである請求項８に記載のコンピュータに読み取り可能な媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ピクセルの拡張色域情報を表現するデータ構造体が記憶されたコンピュータに読み取り可能な媒体に関する。
【背景技術】
【０００２】
色域（color gamut）とは、あるデバイスが出力することができる色の範囲をいい、色空間(color space)とは、デバイスが出力することができる色を表すために使用される色モデルをいう。例えば、表示デバイスの色域は、その表示装置が表示することができる色の範囲をいう。表示デバイスは、一般に、赤−緑−青（ＲＧＢ）色空間を使用する。この色空間では、各色が、赤色成分と緑色成分と青色成分との組み合わせとして表される。
【０００３】
ｍを色空間の色成分の個数すなわちチャネル数とし、ｎを各チャネルの値を表すために使用されるビット数とすると、特定の色空間を有するデバイスが出力することができる色は２n×m色に等しい。例えば、各色成分が８ビットを有するＲＧＢ色空間を使用する表示デバイスの場合には、各色成分の値は、２8＝２５６個の異なる値のいずれか１つとなることができ、２５６3＝１６，７７７，２１６個の異なるトゥルーカラー（true color）を表すことができるようになる。
【０００４】
特定の色空間の色域を増加すなわち拡張させるか、または色値を表す精度を増加させるには、各色チャネルのビット数すなわちビット深度を増加させることが通常行われる。しかしながら、色空間のチャネルのビット深度を増加させると、メモリ空間またはストレージ空間の必要量が大幅に増加する。例えば、１チャネルにつき８ビットのＲＧＢ色空間画像ファイルは２４ビットを使用して１ピクセルを表すのに対し、１チャネルにつき１２ビットのＲＧＢ色空間画像ファイルは３６ビットを使用して１ピクセルを表す。したがって、ＲＧＢ色空間のビット深度を８ビットから１２ビットに増加させると、必要なメモリ空間またはストレージ空間の量は５０％増加することとなる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は、上記の色空間のチャネルのビット深度の増加に伴う、メモリ空間またはストレージ空間の必要量の増加を抑制するためのものある。
【課題を解決するための手段】
【０００６】
本発明の一実施形態のコンピュータに読み取り可能な媒体は、ピクセルの拡張色域情報を表現するデータ構造体がその媒体上に記憶されている。このデータ構造体は、多数のデータフィールドを有する。各データフィールドは、ピクセルの異なる色成分を表す多数のビットを記憶している。また、このデータ構造体は、ピクセルの異なる色成分を表すためにデータフィールドのビットをどのように解釈すべきかを示す少なくとも１ビットの解釈ビットも各データフィールドに有する。
【０００７】
本明細書において参照する図面は、本明細書の一部を形成する。図面に示す特徴は、明示して指定しない限り、本発明のすべての実施態様ではなく、本発明の一部の実施形態の単なる例示にすぎないものとしての意味を有し、それ以外の意味にとられるべきものではない。
【発明を実施するための最良の形態】
【０００８】
本発明の例示の実施形態の以下の詳細な説明では、この詳細な説明の一部を形成する添付図面を参照する。添付図面には、本発明を実践できる特定の例示の実施の形態を実例として示す。当業者が本発明を実施できるように、これらの実施形態を十分詳細に説明する。他の実施形態を利用することもでき、本発明の精神および範囲から逸脱することなく、論理的な変更と機械的な変更とそれ以外の変更とを行うこともできる。したがって、以下の詳細な説明は、限定する意味に解釈されるべきではなく、本発明の範囲は、添付した特許請求の範囲によってのみ画定される。
【０００９】
［概要］
図１は、本発明の一実施形態による画像１００を例として示している。この画像１００は、データ構造体として表現することができ、コンピュータに読み取り可能な媒体上にデータファイルとして記憶することができる。このコンピュータに読み取り可能な媒体は、揮発性媒体であるか不揮発性媒体でありうる。また、このコンピュータに読み取り可能な媒体は、半導体媒体、光媒体、および／または磁気媒体でありうる。半導体媒体は、半導体メモリなどであり、光媒体は、コンパクトディスク（ＣＤ）型媒体やデジタル多用途ディスク（ＤＶＤ）型媒体などであり、磁気媒体は、ハードディスクドライブ、フロッピィディスク、テープカートリッジなどである。
【００１０】
画像１００は、多数のピクセル１０２Ａ、１０２Ｂ、…、１０２Ｌを有する。これらのピクセルを、ピクセル１０２と総称することにする。ピクセルとは画素である。画素は、画像１００のアドレス可能な小さな単位である。ピクセル１０２は、図１では、多数の行１０４および多数の列１０６内に編成されたものとして示されている。しかしながら、ピクセル１０２は、他の方法によっても編成することができる。このように、ピクセル１０２の集まりが、画像１００を構成する。ピクセル１０２の個数をｌ（エル）と表すことにする。そのため、行１０４の数に列１０６の数を乗算した結果がｌに等しくなる。
【００１１】
図２は、本発明の一実施の形態による代表的なピクセル２００のデータ構造体を示している。このピクセル２００は、図１の画像１００のピクセル１０２のいずれをも例示するものである。ピクセル２００は、多数の色成分２０２Ａ、２０２Ｂ、…、２０２Ｍの色成分データ、すなわち色チャネルデータを有する。色成分２０２Ａ、２０２Ｂ、…、２０２Ｍを、色成分２０２と総称することにする。色成分２０２の個数をｍと表すことにする。例えば、赤色チャネルと緑色チャネルと青色チャネルとを有する赤−緑−青（ＲＧＢ）色空間が使用される場合には、ｍは３に等しくすることができる。使用可能な他の色空間は、特に、シアン−マゼンタ−イエロー−ブラック（ＣＭＹＫ）色空間と、明度（Ｌ）−赤／緑（Ａ）−黄／青（Ｂ）（ＬＡＢ）色空間と、輝度（Ｙ）−青色差（Ｃb）−赤色差（Ｃr）（ＹＣbＣr、ＹＵＶ、またはＹＣＣ）色空間と、色相−彩度−値（ＨＳＶ）色空間と、色相−彩度−明度（ＨＳＢ）色空間とを含む。
【００１２】
図３は、本発明の実施形態による代表的な色成分３００のデータ構造体またはデータフィールドを示している。色成分３００は、図２のピクセル２００の色成分２０２のいずれをも例示するものである。色成分３００は、未解釈値３０６と解釈値（interpreter）３０８との２つの部分を有する。未解釈値３０６は、解釈値３０８を使用してその値３０６を解釈するという意味において未解釈である。未解釈値３０６は、多数の未解釈ビット３０２Ａ、３０２Ｂ、…、３０２Ｎを有する一方、解釈値３０８は、少なくとも１ビットの解釈ビット３０４Ａ、３０４Ｂ、…、３０４Ｋを有する。未解釈ビット３０２Ａ、３０２Ｂ、…、３０２Ｎを、色成分３００の未解釈ビット３０２と総称することにする。解釈ビット３０４Ａ、３０４Ｂ、…、３０４Ｋを、色成分３００の解釈ビット３０４と総称することにする。未解釈ビット３０２は、解釈ビット３０４を使用してビット３０２を解釈するという意味において未解釈である。ビット３０２の個数をｎと表す一方、少なくとも１ビットの解釈ビット３０４の個数をｋと表すことにする。例えば、ｎは、８または別の数値とすることができる一方、ｋは、１、２、３、または別の数値とすることができる。
【００１３】
色成分３００のビット３０２の値は、色成分３００の解釈ビット３０４の値に基づいて異なって解釈される。ｎが８に等しい場合にはビット３０２は２8＝２５６個の異なる値を有することができ、ｋが２に等しい場合には解釈ビット３０４は２2＝４の異なる値を有することができる。これは、解釈ビット３０４の値に応じて、色成分３００のビット３０２の値を４つの異なる方法で解釈できることを意味し、成分３００の色値として４×２５６＝１，０２４個の異なる色値までが可能である。ビット３０２の値の一解釈は、ビット３０２の値が色成分３００の色値を直接表すことである。例えば、ビット３０２が２００の値を有する場合には、成分３００の色値は２００である。ｋが１または２に等しい場合における本発明のさまざまな実施の形態による特定の解釈については、この詳細な説明の以下の節で説明する。
【００１４】
ソフトウェアの実施態様では、通常、８ビット（ｎ＝８）、すなわち１バイトを使用して、画像用の色空間が符号化される。８ビット表現では、デバイスの色域を十分に正確に符号化できないことがある。ビット深度を１６ビット（ｎ＝１６）、すなわち２バイトに拡張すると、通例では十分である。しかしながら、メモリ使用量は２倍となる。多数の未解釈ビット（ｎ）と少数の解釈ビット（ｋ）との組み合わせを使用して色成分を符号化すると、色成分３００が一部をなす色域または色空間の色の精度が効率的に拡張される。
【００１５】
特許請求の範囲の文言に特に関連して使用され、本発明の実施の形態の特定の利点を詳述するための用語（terminology）である「色域の増加もしくは拡張」または「色の範囲の増加もしくは拡張」には、「色の精度の増加」または「色の確度の増加」の用語も含む。例えば、ｎビットの未解釈ビットについてｋビットの解釈ビットを使用すると、ピクセルの色成分の色域または範囲を０未満に拡張することもできるし、２n−１よりも大きく拡張することもできる。別の例として、ｎビットの未解釈ビットについてｋビットの解釈ビットを使用すると、整数の増分の代わりに０．５のような分数の増分による０から２n−１までの範囲のように、ピクセルの色成分の値をより高い確度、または、より高い精度で指定することができる。したがって、特許請求の範囲の文言に特に関連して使用されるように、「色域または色の範囲の増加または拡張」の用語は、これらの具体例の双方を含む。
【００１６】
一実施形態では、ＲＧＢ色空間が使用され、赤色チャネルと緑色チャネルと青色チャネルとのそれぞれについて８ビットのビット３０２が設けられる。これらのチャネルのそれぞれについて、１ビットまたは２ビットの解釈ビット３０４が設けられることがある。各チャネルについて１ビットの解釈ビットが使用される場合には、ピクセル２００の色値は、合計ｍ＝３×（ｎ＋ｋ（＝８＋１））＝２７ビットにより符号化される。各チャネルについて２ビットの解釈ビットが使用される場合には、ピクセル２００の色値は、合計ｍ＝３×（ｎ＋ｋ（＝８＋２））＝３０ビットにより符号化される。あるいは、チャネルの２つについては３ビットの解釈ビット３０４が存在し、残りのチャネルについては２ビットの解釈ビット３０４が設けられることもある。したがって、ピクセル２００の色値は、合計２×（ｎ＋ｋ（＝８＋３））＋１×（ｎ＋ｋ（＝８＋２））＝３２ビットにより符号化される。すなわち、３つのチャネルのすべてについて解釈ビットを記憶するために、８ビットのバイトが使用される。
【００１７】
［１ビットの解釈ビットによる拡張色域情報の表現］
図４Ａと図４Ｂと図４Ｃと図４Ｄとは、本発明のさまざまな実施の形態による、８ビットの未解釈ビットおよび１ビットの解釈ビットが設けられるピクセルの色成分、すなわち色チャネルの色域範囲を例示として示している。より一般的には、ｎビットの未解釈ビットを設けることができ、図４Ａと図４Ｂと図４Ｃと図４Ｄとは、特にｎ＝８の場合を示すようにしたものである。図４Ａと図４Ｂと図４Ｃと図４Ｄとに示す色値の範囲は、図２のピクセル２００の図３の色成分３００についてのものとすることができる。
【００１８】
図４Ａでは、色値の範囲４００が、範囲４０２および範囲４０４の２つの範囲へと分割される。範囲４０２は、解釈ビットが０などの第１の値を有する場合に使用され、範囲４０４は、解釈ビットが１などの第２の値を有する場合に使用される。解釈ビットが第１の値を有する場合には、色成分の色値は、ｎ＝８ビットの未解釈ビットの値に等しく、したがって、範囲４０２内にある。最低値は０であり、最高値は２n=8−１＝２５５であり、範囲４０２は、０と２５５との間のすべての整数を含む。解釈ビットが第２の値を有する場合には、色成分の色値は、ｎ＝８ビットの未解釈ビットの値を２n＝２５６に加算したものに等しく、したがって、範囲４０４内にある。最低値は２n＝２５６であり、最高値は２×２n=8−１＝５１１であり、範囲４０４は、２５６と５１１との間のすべての整数を含む。したがって、全範囲４００は、０と５１１との間であり、０と５１１との間のすべての整数を含む。
【００１９】
例えば、８ビットの未解釈ビットの値は２１１の場合がある。解釈ビットが０などの第１の値に等しい場合には、色成分の色値は２１１として設定される。解釈ビットが１などの第２の値に等しい場合には、色成分の色値は２５６＋２１１＝４６７として設定される。
【００２０】
より一般的には、範囲４００は、０と（２×２n）−１との間にある色成分の整数の色値を可能にする。範囲４０２は、解釈ビットが第１の値を有する場合に使用され、０と２n−１との間の色成分の整数の色値を可能にする。色成分の色値は、具体的には、ｎビットの未解釈ビットの値に設定される。範囲４０４は、解釈ビットが第２の値を有する場合に使用され、２nと（２×２n）−１との間の色成分の整数の色値を可能にする。色成分の色値は、具体的には、ｎビットの未解釈ビットの値を２nに加算したものに設定される。
【００２１】
一実施形態において、解釈ビットの値に基づいて未解釈ビットの値を解釈するためのプログラムまたはプロセスが設計されていない場合には、解釈ビットが第２の値を有する時はいつでも、色成分の色値を２n−１として設定することができる。第２の値が１である場合において、色成分の色値が出力される予定のデバイスがｎビットのビット深度のデバイスであるときは、色成分のオーバーフロービットのような実施の形態で解釈ビットを使用することができる。解釈ビットである色成分のオーバーフロービットが１の値を有するように、２n−１よりも大きないかなる値も、ｎビットのビット深度のデバイスで実際に出力される際には２n−１の色値になる。したがって、色成分の最高値として、２n−１の上限が設けられる。
【００２２】
図４Ｂでは、色値の範囲４１０が、範囲４０２および範囲４１２の２つの範囲へと分割される。範囲４０２は、解釈ビットが０などの第１の値を有する場合に使用され、範囲４１２は、解釈ビットが１などの第２の値を有する場合に使用される。解釈ビットが、第１の値を有する場合には、色成分の色値は、ｎ＝８ビットの未解釈ビットの値に等しく、したがって、範囲４０２内にある。最低値は０であり、最高値は２n=8−１＝２５５であり、範囲４０２は、０と２５５との間のすべての整数を含む。解釈ビットが第２の値を有する場合には、色成分の色値は、ｎ＝８ビットの未解釈ビットの値を−２nに加算したものに等しく、したがって、範囲４１２内にある。最低値は−２n＝２５６であり、最高値は−１であり、範囲４１２は、−２５６と−１との間のすべての整数を含む。したがって、全範囲４１０は、−２５６と２５５との間であり、−２５６と２５５との間のすべての整数を含む。
【００２３】
例えば、８ビットの未解釈ビットの値は２１１の場合がある。解釈ビットが０などの第１の値に等しい場合には、色成分の色値は２１１として設定される。解釈ビットが１などの第２の値に等しい場合には、色成分の色値は−２５６＋２１１＝−４５として設定される。
【００２４】
より一般的には、範囲４１０は、−２nと２n−１との間の色成分の整数の色値を可能にする。範囲４０２は、解釈ビットが第１の値を有する場合に使用され、０と２n−１との間の色成分の整数の色値を可能にする。色成分の色値は、具体的には、ｎビットの未解釈ビットの値に設定される。範囲４１２は、解釈ビットが第２の値を有する場合に使用され、−２nと−１との間の色成分の整数の色値を可能にする。色成分の色値は、具体的には、ｎビットの未解釈ビットの値を−２nに加算したものに設定される。
【００２５】
一実施形態において、解釈ビットの値に基づいて未解釈ビットの値を解釈するためのプログラムまたはプロセスが設計されていない場合には、解釈ビットが第２の値を有する時はいつでも、色成分の色値をゼロとして設定することができる。第２の値が１である場合において、色成分の色値が出力される予定のデバイスがｎビットのビット深度のデバイスであるときは、色成分のアンダーフロービットのような実施の形態で解釈ビットを使用することができる。解釈ビットである色成分のアンダーフロービットが１の値を有するように、ゼロよりも小さないかなる値も、ｎビットのビット深度のデバイスで実際に出力される際にはゼロの色値になる。したがって、色成分の最低値として、ゼロの上限が設けられる。
【００２６】
図４Ｃでは、色値の範囲４２０が、範囲４０２および範囲４２２の２つの範囲へと分割される。範囲４０２は、解釈ビットが０などの第１の値を有する場合に使用され、範囲４２２は、解釈ビットが１などの第２の値を有する場合に使用される。解釈ビットが第１の値を有する場合には、色成分の色値は、ｎ＝８ビットの未解釈ビットの値に等しく、したがって、範囲４０２内にある。最低値は０であり、最高値は２n=8−１＝２５５であり、範囲４０２は、０と２５５との間のすべての整数を含む。解釈ビットが第２の値を有する場合には、色成分の色値は、ｎ＝８ビットの未解釈ビットの値を０．５に加算したものに等しく、したがって、範囲４２２内にある。最低値は０．５であり、最高値は２n=8−０．５＝２５５．５であり、１．０の増分により１．５、２．５、３．５など２５５．５まで含むようになっている。したがって、全範囲４２０は、０と２５５．５との間であり、０．５の増分により０．５、１．０、１．５など２５５．５まで含むようになっている。
【００２７】
例えば、８ビットの未解釈ビットの値は２１１の場合がある。解釈ビットが０などの第１の値に等しい場合には、色成分の色値は２１１として設定される。解釈ビットが１などの第２の値に等しい場合には、色成分の色値は０．５＋２１１＝２１１．５として設定される。
【００２８】
より一般的には、範囲４２０は、０と２n−０．５との間の０．５の増分での色成分の色値を可能にする。範囲４０２は、解釈ビットが第１の値を有する場合に使用され、０と２n−１との間の色成分の整数の色値を可能にする。色成分の色値は、具体的には、ｎビットの未解釈ビットの値に設定される。範囲４２２は、解釈ビットが第２の値を有する場合に使用され、１．０の増分により０．５と２n−０．５との間の色成分の色値を可能にする。色成分の色値は、具体的には、ｎビットの未解釈ビットの値を０．５に加算したものに設定される。
【００２９】
範囲４２０として範囲４０２と範囲４２２との双方を使用できることにより、範囲４０２のみを使用する場合と比較して精度が向上する。一方、図４Ａと図４Ｂと図４Ｄと共に説明する本発明の他の実施形態と異なり、図４Ｃの実施形態の色成分値４２０は、整数間の半分のステップを表すことができる。一実施形態では、未解釈ビットによって表される値を得るために、色成分値の浮動小数点表現は、まず丸められ、整数または整数に０．５を加算した数のいずれか近い方にされる。例えば、３．１の浮動小数点表現は整数３に丸められるため、解釈ビットは第１の値に設定される。別の例として、３．７の浮動小数点表現は整数３に０．５を加算した数に丸められるため、解釈ビットは第２の値に設定される。
【００３０】
一実施の形態において、解釈ビットの値に基づいて未解釈ビットの値を解釈するためのプログラムまたはプロセスが設計されていない場合には、解釈ビットの値にかかわらず、色成分の色値をｎビットの未解釈ビットとして設定することができる。解釈ビットを無視すると、０と２n−１との間の最も近い整数に色値を丸めることにより、色成分の可能な色値の個数が削減される。例えば、ｎ＝８ビットの未解釈ビットが２１１の値を有し、解釈ビットが第２の値を有する場合には、その色成分の色値は２１１．５となるべきである。一方、解釈ビットを無視すると、その色成分の色値は２１１．５の代わりに２１１となる。
【００３１】
図４Ｄでは、色値の範囲４３０が、範囲４０２と範囲４３２と範囲４３４との３つの範囲へと分割される。範囲４０２は、解釈ビットが０などの第１の値を有する場合に使用される。範囲４３２は、解釈ビットが１などの第２の値を有する場合であり、ｎ＝８ビットの未解釈ビットの最上位ビットであるｎ＝８番目の未解釈ビットが０などの第１の値を有する場合に使用される。範囲４３４は、解釈ビットが第２の値を有する場合であり、ｎ＝８ビットの未解釈ビットの最上位ビットが１などの第２の値を有する場合に使用される。
【００３２】
解釈ビットが第１の値を有する場合には、色成分の色値は、ｎ＝８ビットの未解釈ビットの値に等しく、したがって、範囲４０２内にある。最低値は０であり、最高値は２n=8−１＝２５５であり、範囲４０２は０と２５５との間のすべての整数を含む。解釈ビットが第２の値を有し、最上位の未解釈ビットが第１の値を有する場合には、色成分の色値は、２n=8＝２５６にｎ＝８ビットの未解釈ビットの下位ｎ−１ビットの値を加算したものに等しい。このｎ＝８ビットの未解釈ビットの下位ｎ−１ビットは、ｎ＝８ビットの未解釈ビットの最初のｎ−１＝７ビットである。最低値は２n＝２５６であり、最高値は２n＋２n-1=7−１＝３８３であり、範囲４３２は２５６と３８３との間のすべての整数を含む。解釈ビットが第２の値を有し、最上位の未解釈ビットが第２の値を有する場合には、色成分の色値は、−２n-1=7＝−１２８に、ｎ＝８ビットの未解釈ビットの下位ｎ−１ビットの値を加算したものに等しい。最低値は−２n-1=7＝−１２８であり、最高値は−１であり、範囲４３４は−１２８と−１との間のすべての整数を含む。したがって、全範囲４３０は、−１２８と３８３との間となり、−１２８と３８３との間のすべての整数を含む。ここで詳述して本発明の他の実施形態でも詳述するように、０から２５５の基本範囲に対する−１２８または１２８のオフセットのような、基本範囲に適用されるオフセットは、本発明のすべての実施形態に具体的に適用できるとは限らない。
【００３３】
例えば、下位７ビットの未解釈ビットが値１を表す場合には、８ビットの未解釈ビットの値は１２９、すなわち２進数の０×１００００００１でありうる。解釈ビットが、０などの第１の値に等しい場合には、色成分の色値は１２９として設定される。解釈ビットが１などの第２の値に等しい場合には、最上位の未解釈ビットが１などの第２の値に設定されているので、色成分の色値は−１２８＋１＝−１２７となる。
【００３４】
別の例として、下位７ビットの未解釈ビットが値３を表す場合には、８ビットの未解釈ビットの値は３、すなわち２進数の０×００００００１１でありうる。解釈ビットが第１の値に等しい場合には、色成分の色値は３として設定される。解釈ビットが第２の値に等しい場合には、最上位の未解釈ビットが第１の値に等しくなるので、色成分の色値は２５６＋３＝２５９となる。
【００３５】
より一般的には、範囲４３０は、−２n-1と２n＋２n-1−１との間の色成分の整数の色値を可能にする。範囲４０２は、解釈ビットが第１の値を有する場合に使用され、０と２n−１との間の色成分の整数の色値を可能にする。色成分の色値は、具体的には、ｎビットの未解釈ビットの値に設定される。範囲４３２は、解釈ビットが第２の値を有する場合であり、最上位の未解釈ビットが第１の値を有する場合に使用され、２nと２n＋２n-1−１との間の色成分の整数の色値を可能にする。色値は、具体的には、下位ｎ−１ビットの未解釈ビットを２nに加算したものに設定される。範囲４３４は、解釈ビットが第２の値を有する場合であり、最上位の未解釈ビットが第２の値を有する場合に使用され、−２n-1と−１との間の色成分の整数の色値を可能にする。色値は、具体的には、下位ｎ−１ビットの未解釈ビットを−２n-1に加算したものに設定される。
【００３６】
一実施の形態において、解釈ビットの値に基づいて未解釈ビットの値を解釈するためのプログラムまたはプロセスが設計されていない場合には、色成分の色値を次のように設定できる。すなわち、解釈ビットが第２の値を有し、最上位の未解釈ビットが第２の値を有するときは、色成分の色値を０として設定でき、解釈ビットが第２の値を有し、最上位の未解釈ビットが第１の値を有するときは、色成分の色値を２n−１として設定できる。０未満のいずれの色値も、実際には、上限ゼロにされる。２n−１よりも大きないかなる色値も、実際には、上限２n−１にされる。
【００３７】
図５は、ピクセルがｎビットの未解釈ビットおよび１ビットの解釈ビットを色成分用に有する場合の本発明の一実施形態によるピクセルの色成分の色値を表示するための方法５００を示している。各ピクセルが、色空間の各色成分について、ｎビットの未解釈ビットおよび１ビットの解釈ビットを有する場合には、多数のピクセルを有する画像データを表示するために、この方法５００を使用することができる。例えば、色空間が赤−緑−青（ＲＧＢ）色空間である場合には、各ピクセルは、ＲＧＢ色空間の赤色成分と緑色成分と青色成分とのそれぞれについて、ｎビットの未解釈ビットおよび１ビットの解釈ビットを有する。より一般的には、方法５００はピクセルの色成分の色値を出力するためのものであり、このような出力は表示や印刷などでありうる。
【００３８】
色成分のピクセルの解釈ビットが、０などの第１の値を有する場合には（５０２）、そのピクセルの色成分の色値は、その色成分のピクセルのｎビットの未解釈ビットの値として表示される（５０４）。例えば、ｎ＝８ビットの未解釈ビットが９の値を表す場合には、色成分値も９に等しく、９として表示される。一方、解釈ビットが第１の値を有しない場合には（５０２）、解釈ビットは第１の値または第２の値のいずれかしか有することができないので、１などの第２の値を有することになる（５０６）。この場合には、本発明の実施の形態に応じて、５０８、５１０、５１２、または５１４のいずれかが実行される。５０８は、図４Ａと共に説明したシナリオ（scenario）に対応するものである。５１０は、図４Ｂと共に説明したシナリオに対応するものである。５１２は、図４Ｃと共に説明したシナリオに対応するものである。５１４は、図４Ｄと共に説明したシナリオに対応するものである。
【００３９】
５０８では、ピクセルの色成分の色値が、ｎビットの未解釈ビットの値を２nに加算したものとして表示される。例えば、ｎ＝８ビットの未解釈ビットが９の値を表す場合には、色成分値は、２8＝２５６＋９＝２６５に等しく、２６５として表示される。５１０では、ピクセルの色成分の色値が、ｎビットの未解釈ビットの値を−２nに加算したものとして表示される。例えば、ｎ＝８ビットの未解釈ビットが９の値を表す場合に、色成分値は、−２8＋９＝−２５６＋９＝−２４７に等しく、−２４７として表示される。５１２では、ピクセルの色成分の色値が、ｎビットの未解釈ビットの値を０．５に加算したものとして表示される。例えば、ｎ＝８ビットの未解釈ビットが９の値を表す場合に、色成分値は、０．５＋９＝９．５に等しく、９．５として表示される。
【００４０】
５１４では、ピクセルの色成分の色値が、最上位の解釈ビットの値に応じて、２nまたは−２n-1のいずれかを下位ｎ−１ビットの未解釈ビットに加算したものとして表示される。例えば、最上位のｎ番目の解釈ビットが０などの第１の値に等しい場合には、色成分値は、２nを下位ｎ−１ビットの未解釈ビットに加算したものとして表示される。最上位のｎ番目の解釈ビットが１などの第２の値に等しい場合には、色成分値は、−２n-1を下位ｎ−１ビットの未解釈ビットに加算したものとして表示される。例えば、ｎ＝８ビットの未解釈ビットが２進数の０×００００１００１である９の値を表す場合には、最上位の８番目のビットは０であり、色成分値は、２8＋９＝２５６＋９＝２６５に等しく、２６５として表示される。別の例として、ｎ＝８ビットの未解釈ビットが２進数の０×１０００１００１である１３７の値を表す場合には、最上位の８番目のビットは１であり、色成分値は、−２8-1＋（１３７−２8-1）＝−１２８＋（１３７−１２８）＝−１１９、すなわち−２8＋１３７＝−１１９に等しく、−１１９として表示される。
【００４１】
図６は、本発明の一実施の形態による、ピクセルの色成分の色値をｎビットの未解釈ビットおよび１ビットの解釈ビットに符号化するための方法６００を示している。すなわち、この方法６００は、色成分値をｎビットの未解釈ビットおよび１ビットの解釈ビットに効率的に符号化するためのものである。符号化されることになるピクセルの色成分の色値を、元の色成分値と呼ぶことができる。ｎビットの未解釈ビットを、新たな色成分値と呼ぶことができる。方法６００は、各ピクセルが色空間の各色成分の色値を有する場合には、多数のピクセルを有する画像データを符号化するために使用することができる。例えば、色空間がＲＧＢ色空間である場合には、各ピクセルは、ＲＧＢ色空間の赤色成分と緑色成分と青色成分とのそれぞれについての色値を有する。
【００４２】
色成分値が、０と２n−１との間にあり、整数である場合には（６０２）、ｎビットの未解釈ビットはその色成分値に等しく設定され（６０４）、解釈ビットは０などの第１の値に設定される（６０６）。例えば、ｎ＝８であり、色成分値が９である場合には、ｎビットの未解釈ビットは９に等しく設定され、解釈ビットは第１の値に設定される。一方、色成分値が、０と２n−１との間にないか、または、整数でない場合には、本発明の実施の形態に応じて、６０８と６１０と６１２、６１４と６１６と６１８、６２０と６２２と６２４、または６２６と６２８と６３０と６３２のいずれかが実行される。６０８と６１０と６１２とは、図４Ａと共に説明したシナリオに対応するものである。６１４と６１６と６１８とは、図４Ｂと共に説明したシナリオに対応するものである。６２０と６２２と６２４とは、図４Ｃと共に説明したシナリオに対応するものである。６２６と６２８と６３０と６３２とは、図４Ｄと共に説明したシナリオに対応するものである。
【００４３】
６０８では、ピクセルの色成分の色値は、２nと２n+1−１との間にある。したがって、ｎビットの未解釈ビットは、色成分値から２nを減算したものに等しく設定される（６１０）。例えば、ｎ＝８であり、色成分値が２６５である場合には、ｎビットの未解釈ビットは、２６５−２8＝２６５−２５６＝９に等しく設定される。また、解釈ビットも、１などの第２の値に設定される（６１２）。
【００４４】
６１４では、ピクセルの色成分の色値は、−２nと−１との間にある。したがって、ｎビットの未解釈ビットは、色成分値に２nを加算したものに等しく設定される（６１６）。例えば、ｎ＝８であり、色成分値が−２４７である場合には、ｎビットの未解釈ビットは、−２４７＋２8＝−２４７＋２５６＝９に等しく設定される。また、解釈ビットも、１などの第２の値に設定される（６１８）。
【００４５】
６２０では、ピクセルの色成分の色値は、０．５と２n−０．５との間にあり、整数ではない。したがって、ｎビットの未解釈ビットは、色成分値から０．５を減算したものに等しく設定される（６２２）。例えば、ｎ＝８であり、色成分値が９．５である場合には、ｎビットの未解釈ビットは、９．５−０．５＝９に等しく設定される。また、解釈ビットも、１などの第２の値に設定される（６２４）。
【００４６】
６２６では、ピクセルの色成分の色値は、−２n-1と−１との間にあるか、または、２nと２n＋２n-1−１との間にあるかのいずれかである。したがって、下位ｎ−１ビットの未解釈ビットは、色成分値が負の値である場合には色成分値に２n-1を加算したものに等しく設定され、色成分値が正の値である場合には色成分値から２nを減算したものに等しく設定される（６２８）。最上位のｎ番目の未解釈ビットは、色成分値が正の値である場合には０などの第１の値に等しく設定され、色成分値が負の値である場合には１などの第２の値に設定される（６３０）。
【００４７】
例えば、ｎ＝８であり、色成分値が２６５である場合には、下位ｎ−１ビットの未解釈ビットは、２６５−２8＝２６５−２５６＝９に等しく設定され、最上位のｎ番目の未解釈ビットは、第１の値に設定される。別の例として、ｎ＝８であり、色成分値が−１１９である場合には、下位ｎ−１ビットの未解釈ビットは−１１９＋２8-1＝−１１９＋１２８＝９に等しく設定され、最上位のｎ番目の未解決ビットは第２の値に設定される。最後に、解釈ビットは、この場合も、第２の値に設定される（６３２）。
【００４８】
［２ビットの解釈ビットを有する拡張色域情報の表現］
図７Ａおよび図７Ｂは、本発明のさまざまな実施の形態による、８ビットの未解釈ビットおよび２ビットの解釈ビットを有するピクセルの色成分、すなわち色チャネルの色域範囲を例示として示している。より一般的には、ｎビットの未解釈ビットを設けることができ、図７Ａおよび図７Ｂは、特にｎ＝８の場合を示すようにしたものである。図７Ａおよび図７Ｂに示す色値の範囲は、図２のピクセル２００について図３の色成分３００のためのものでありうる。
【００４９】
図７Ａでは、色値の範囲７００が、範囲７０２と範囲７０４と範囲７０６との３つの範囲へと分割される。範囲７０２は、解釈ビットが２進数の０×００、すなわち０などの第１の値を表す場合に使用される。範囲７０４は、解釈ビットが２進数の０×０１、すなわち１などの第２の値を表す場合に使用される。範囲７０６は、解釈ビットが２進数の０×１０、すなわち２などの第３の値を表す場合に使用される。
【００５０】
解釈ビットが第１の値を有する場合には、色成分の色値は、ｎ＝８ビットの未解釈ビットの値に等しく、したがって、範囲７０２内にある。最低値は０であり、最高値は２n=8−１＝２５５であり、範囲７０２は０と２５５との間のすべての整数を含む。解釈ビットが第２の値を有する場合には、色成分の色値は、ｎ＝８ビットの未解釈ビットの値を２n＝２５６に加算したものに等しく、したがって、範囲７０４内にある。最低値は２n＝２５６であり、最高値は２×２n=8−１＝５１１であり、範囲７０４は２５６と５１１との間のすべての整数を含む。解釈ビットが第３の値を有する場合には、色成分の色値は、ｎ＝８ビットの未解釈ビットの値を−２nに加算したものに等しく、したがって、範囲７０６内にある。最低値は−２n＝−２５６であり、最高値は−１であり、範囲７０６は、−２５６と−１との間のすべての整数を含む。したがって、全範囲７００は、−２５６と５１１との間であり、−２５６と５１１との間のすべての整数を含む。
【００５１】
例えば、８ビットの未解釈ビットの値は２１１の場合がある。解釈ビットが第１の値に等しい場合には、色成分の色値は２１１として設定される。解釈ビットが第２の値に等しい場合には、色成分の色値は２５６＋２１１＝４６７として設定される。解釈ビットが２などの第３の値に等しい場合には、色成分の色値は−２５６＋２１１＝−４５として設定される。
【００５２】
より一般的には、範囲７００は、−２nと（２×２n）−１との間にある色成分の整数の色値を可能にする。範囲７０２は、解釈ビットが第１の値を有する場合に使用され、０と２n−１との間にある色成分の整数の色値を可能にする。色成分の色値は、具体的には、ｎビットの未解釈ビットの値に設定される。範囲７０４は、解釈ビットが第２の値を有する場合に使用され、２nと（２×２n）−１との間にある色成分の整数の色値を可能にする。色成分の色値は、具体的には、ｎビットの未解釈ビットの値を２nに加算したものに設定される。範囲７０６は、解釈ビットが第３の値を有する場合に使用され、−２nと−１との間にある色成分の整数の色値を可能にする。色成分の色値は、具体的には、ｎビットの未解釈ビットの値を−２nに加算したものに設定される。
【００５３】
図７Ｂでは、色値７１０の範囲が、範囲７０２と範囲７１２と範囲７１４と範囲７１６との４つの範囲へと分割される。範囲７０２は、解釈ビットが２進数の０×００、すなわち０などの第１の値を表す場合に使用される。範囲７１２は、解釈ビットが２進数の０×０１、すなわち１などの第２の値を表す場合に使用される。範囲７１４は、解釈ビットが２進数の０×１０、すなわち２などの第３の値を表す場合に使用される。範囲７１６は、解釈ビットが２進数の０×１１、すなわち３などの第４の値を表す場合に使用される。
【００５４】
解釈ビットが第１の値を有する場合には、色成分の色値は、ｎ＝８ビットの未解釈ビットの値に等しく、したがって、範囲７０２内にある。最低値は０であり、最高値は２n=8−１＝２５５であり、範囲７０２は０と２５５との間のすべての整数を含む。解釈ビットが第２の値を有する場合には、色成分の色値は、ｎ＝８ビットの未解釈ビットの値を０．５に加算したものに等しく、したがって、範囲７１２内にある。最低値は０．５であり、最高値は２n=8−０．５＝２５５．５であり、１．０の増分により１．５、２．５、３．５のように２５５．５までを含むようになっている。
【００５５】
解釈ビットが第３の値を有する場合には、色成分の色値は、ｎ＝８ビットの未解釈ビットの値を２によって除算したものを２n=8＝２５６に加算したものに等しく、したがって、範囲７１４内にある。最低値は２５６であり、最高値は２n=8＋２(n=8)-1−０．５＝３８３．５であり、０．５の増分により２５６、２５６．５、２５７のように３８３．５までを含むようになっている。解釈ビットが第４の値を有する場合には、色成分の色値は、ｎ＝８ビットの未解釈ビットの値を２で除算したものを−２(n=8)-1に加算したものに等しく、したがって、範囲７１６内にある。最低値は−１２８であり、最高値は−０．５であり、０．５の増分により−１２８、−１２７．５、−１２７のように−０．５までを含むようになっている。したがって、全範囲７１０は、０．５の増分により−１２８と３８３．５との間である。
【００５６】
例えば、８ビットの未解釈ビットの値は２１１の場合がある。解釈ビットが第１の値に等しい場合には、色成分の色値も２１１となる。解釈ビットが第２の値に等しい場合には、色成分の色値は２１１＋０．５＝２１１．５となる。解釈ビットが第３の値に等しい場合には、色成分の色値は２５６＋（２１１／２）＝３６１．５となる。解釈ビットが第４の値に等しい場合には、色成分の色値は−１２８＋（２１１／２）＝−２２．５となる。
【００５７】
より一般的には、範囲７１０は、−２n-1と２n＋２n-1−０．５との間の０．５の増分での色成分の色値を可能にする。範囲７０２は、解釈ビットが第１の値を有する場合に使用され、０と２n−１との間にある色成分の整数の色値を可能にする。色成分の色値は、具体的には、ｎビットの未解釈ビットの値に設定される。範囲７１２は、解釈ビットが第２の値を有する場合に使用され、１．０の増分により０．５と２n−０．５との間にある色成分の色値を可能にする。色成分の色値は、具体的には、ｎビットの未解釈ビットの値に０．５を加算したものに設定される。
【００５８】
範囲７１４は、解釈ビットが第３の値を有する場合に使用され、０．５の増分により２nと２n＋２n-1−０．５との間にある色成分の色値を可能にする。色成分の色値は、具体的には、ｎビットの未解釈ビットの値を２で除算したものを２nに加算したものに設定される。範囲７１６は、解釈ビットが第４の値を有する場合に使用され、０．５の増分により−２n-1と−０．５との間にある色成分の色値を可能にする。色成分の色値は、具体的には、ｎビットの未解釈ビットの値を２で除算したものを−２n-1に加算したものに設定される。
【００５９】
したがって、範囲７１０は、連続した整数の色値の間にある色値を可能にすることによって、精度が向上し、０と２５５との通常の範囲を越えて範囲が拡張され、色域が拡張される。一方、図７Ａと共に説明した本発明の他の実施形態と異なり、図７Ｂの実施形態の範囲７１０内の色成分値は、整数間の半分のステップを表すことができる。一実施形態では、未解釈ビットによって表される値を得るために、色成分値の浮動小数点表現は、まず丸められ、整数または整数に０．５を加算した数のいずれか近い方にされる。例えば、３．１の浮動小数点表現は整数３に丸められ、３．４の浮動小数点表現は３．５に丸められる。
【００６０】
図８および図９は、ピクセルがｎビットの未解釈ビットおよび２ビットの解釈ビットを有する場合の本発明のさまざまな実施の形態によるピクセルの色成分の色値を色成分用に表示するための方法８００を示している。各ピクセルが、色空間の各色成分について、ｎビットの未解釈ビットおよび２ビットの解釈ビットを有する場合に、多数のピクセルを有する画像データを表示するためにこの方法８００を使用することができる。例えば、色空間が赤−緑−青（ＲＧＢ）色空間である場合には、各ピクセルは、ＲＧＢ色空間の赤色成分と緑色成分と青色成分とのそれぞれについて、ｎビットの未解釈ビットおよび２ビットの解釈ビットを有する。より一般的には、方法８００は、ピクセルの色成分の色値を出力するためのものであり、このような出力は表示や印刷などでありうる。また、ピクセルを表示することは、例えばインクジェット印刷デバイスを使用することなどにより、媒体上にピクセルを形成することも含みうる。
【００６１】
図８の実施の形態では、方法８００は、図７Ａと共に説明したシナリオに対応する。色成分のピクセルの解釈ビットが第１の値を有する場合には（８０２）、そのピクセルの色成分の色値は、その色成分のピクセルのｎビットの未解釈ビットの値として表示される（８０４）。例えば、ｎ＝８ビットの未解釈ビットが９の値を表す場合には、色成分値も９に等しく、９として表示される。
【００６２】
一方、解釈ビットが、第１の値を有しないで（８０２）、第２の値を有する場合には（８０６）、ピクセルの色成分の色値は、その色成分のピクセルのｎビットの未解釈ビットの値を２nに加算したものとして表示される（８０８）。例えば、ｎ＝８ビットの未解釈ビットが９の値を表す場合には、色成分値は２8＋９＝２６５に等しく、２６５として表示される。一方、解釈ビットが第２の値を有しない場合には（８０６）、解釈ビットは第３の値を有する（８１０）。したがって、ピクセルの色成分の色値は、ｎビットの未解釈ビットの値を−２nに加算したものとして表示される（８１２）。例えば、ｎ＝８ビットの未解釈ビットが９の値を表す場合には、色成分値は−２8＋９＝−２４７に等しく、−２４７として表示される。
【００６３】
図９の実施の形態では、方法８００は、図７Ｂと共に説明したシナリオに対応する。図８および図９の方法８００の同じ番号の部分は、全く同一に実行される。したがって、色成分のピクセルの解釈ビットが第１の値を有する場合には（８０２）、そのピクセルの色成分の色値は、その色成分のピクセルのｎビットの未解釈ビットの値として表示される（８０４）。例えば、ｎ＝８ビットの未解釈ビットが９の値を表す場合には、色成分値も９に等しく、９として表示される。
【００６４】
一方、解釈ビットが、第１の値を有しないで（８０２）、第２の値を有する場合には（８０６）、ピクセルの色成分の色値は、ｎビットの未解釈ビットの値を０．５に加算したものとして表示される（８５２）。例えば、ｎ＝８ビットの未解釈ビットが９の値を表す場合には、色成分値は０．５＋９＝９．５に等しく、９．５として表示される。一方、解釈ビットが、第２の値を有しないで（８０６）、第３の値を有する場合には（８５４）、色成分値は、ｎビットの未解釈ビットを２により除算したものを２nに加算したものとして表示される（８５６）。例えば、ｎ＝８ビットの未解釈ビットが９の値を表す場合に、色成分値は２５６＋（９／２）＝２６０．５に等しく、２６０．５として表示される。一方、解釈ビットが第３の値を有しない場合には（８５４）、解釈ビットは第４の値を有する（８５８）。色成分値は、ｎビットの未解釈ビットを２により除算したものを−２n-1に加算したものとして表示される（８６０）。例えば、ｎ＝８ビットの未解釈ビットが９の値を表す場合には、色成分値は−１２８＋（９／２）＝−１２３．５に等しく、−１２３．５として表示される。
【００６５】
図１０および図１１は、本発明のさまざまな実施の形態による、ピクセルの色成分の色値をｎビットの未解釈ビットおよび２ビットの解釈ビットに符号化するための方法９００を示している。すなわち、この方法９００は、色成分値をｎビットの未解釈ビットおよび２ビットの解釈ビットに効率的に符号化するためのものである。符号化されることになるピクセルの色成分の色値は、元の色成分値と呼ぶことができる。ｎビットの未解釈ビットは、新たな色成分値と呼ぶことができる。方法９００は、各ピクセルが色空間の各色成分の色値を有する場合には、多数のピクセルを有する画像データを符号化するのに使用することができる。例えば、色空間がＲＧＢ色空間である場合には、各ピクセルは、ＲＧＢ色空間の赤色成分と緑色成分と青色成分とのそれぞれについての色値を有する。
【００６６】
図１０の方法では、方法９００は、図７Ａと共に説明したシナリオに対応する。色成分値が０と２n−１との間にある場合には（９０２）、ｎビットの未解釈ビットはその色成分値に設定され（９０４）、２ビットの解釈ビットは第１の値に設定される（９０６）。例えば、ｎ＝８であり、色成分値が９である場合には、ｎビットの未解釈ビットは９に設定され、解釈ビットは第１の値に設定される。一方、色成分値が、０と２n−１との間にないが（９０２）、２nと２n+1−１との間にある場合には（９０８）、ｎビットの未解釈ビットは色成分値から２nを減算したものに設定され（９１０）、解釈ビットは第２の値に設定される（９１２）。例えば、ｎ＝８であり、色成分値が２６５である場合には、ｎビットの未解釈ビットは２６５−２５６＝９に設定され、解釈ビットは第２の値に設定される。
【００６７】
一方、色成分値が２nと２n+1−１との間にない場合には（９０８）、色成分値は−２nと−１との間にある（９１４）。ｎビットの未解釈ビットは色成分値に２nを加算したものに設定され（９１６）、２ビットの解釈ビットは第３の値に設定される（９１８）。例えば、ｎ＝８であり、色成分値が−１１９である場合には、ｎビットの未解釈ビットは−１１９＋１２８＝９に設定され、解釈ビットは第３の値に設定される。
【００６８】
図１１の方法では、方法９００は、図７Ｂと共に説明したシナリオに対応する。図１０および図１１の方法９００の同じ番号の部分は、少なくともほぼ同一に実行される。色成分値が、０と２n−１との間にあり、整数である場合には（９０２）、ｎビットの未解釈ビットはその色成分値に設定され（９０４）、２ビットの解釈ビットは第１の値に設定される（９０６）。例えば、ｎ＝８であり、色成分値が９である場合には、ｎビットの未解釈ビットは９に設定され、解釈ビットは第１の値に設定される。
【００６９】
一方、色成分値が、０と２n−１との間にないか、または、整数ではないが（９０２）０．５と２n−０．５との間にあり非整数である、すなわち、色成分値が整数に０．５を加算したものである場合には（９０８）、ｎビットの未解釈ビットは色成分値から０．５を減算したものに設定され（９５２）、２ビットの解釈ビットは第２の値に設定される（９１２）。例えば、ｎ＝８であり、色成分値が９．５である場合には、ｎビットの未解釈ビットは、９．５−０．５＝９に設定され、解釈ビットは第２の値に設定される。一方、色成分値が、０．５と２n−０．５との間にないか、または、整数であるが（９０８）２nと２n＋２n-1−０．５との間にある場合には（９５４）、ｎビットの未解釈ビットは色成分値から２nを減算したものに設定され、その結果の値が２倍される（９５６）。２ビットの解釈ビットは第３の値に設定される（９１８）。例えば、ｎ＝８であり、色成分値が２６０．５である場合には、ｎビットの未解釈ビットは（２６０．５−２５６）×２＝９に設定され、解釈ビットは第３の値に設定される。
【００７０】
一方、色成分値が２nと２n＋２n-1−０．５との間にない場合には（９５４）、色成分値は−２n-1と−０．５との間にある（９５８）。ｎビットの未解釈ビットは色成分値に２n-1を加算したものに設定され、その結果の値が２倍される（９６０）。２ビットの解釈ビットは第４の値に設定される（９６２）。例えば、ｎ＝８であり、色成分値が−１２３．５である場合には、ｎビットの未解釈ビットは（−１２３．５＋１２８）×２＝９に設定され、解釈ビットは第４の値に設定される。
【００７１】
［システムおよび結論］
図１２は、本発明の一実施の形態によるシステム１０００を示している。このシステム１０００は、画像データ１００４およびコンピュータプログラム１００６を記憶するコンピュータに読み取り可能な媒体１００２と、プロセッサ１００８と、オプションとしての表示装置１０１０とを含む。システム１０００は、図１２に示すものに加えて、かつ／または、図１２に示すものに代えて、インクジェットプリンタやレーザプリンタのような他の出力デバイス、別のコンピュータに読み取り可能な媒体などの他のコンポーネントを含むこともできる。
【００７２】
画像データ１００４は、この詳細な説明の上記節で説明したデータ構造体の１以上のものに従ってフォーマットされる。例えば、色空間の色成分の値を有する多数のピクセルであって、それらの色成分の値が未解釈ビットと１ビット以上の解釈ビットとに変換される多数のピクセルを、画像データ１００４は有することができる。別の例として、画像データ１００４は、色空間の色成分の値を有する多数のピクセルであって、それらの色成分の値が未解釈ビットである、多数のピクセルを有することができ、この画像データは、色成分の値のそれぞれについて１ビット以上の解釈ビットも含む。特定の一実施形態では、各色成分の未解釈ビットのビット数をｎとし、その未解釈ビット用の１ビット以上の解釈ビットのビット数をｋとすると、その色成分については、２n+k個の可能な色値が存在する。すべての成分の未解釈ビットは、１バイト（または複数のバイト）に詰め込むことができ、特別なチャネル（すなわち成分）によって符号化することができる。したがって、ｎ＋ｋビットを使用すると、各チャネルについて２n+k個の可能な色成分値からなる拡張色域が効率的に表現される。
【００７３】
画像データ１００４は、タグ付きイメージファイルフォーマット（ＴＩＦＦ）データファイルや、ジョイントフォトグラフィックエキスパートグループ（ＪＰＥＧ）データファイルや、別のフォーマットタイプのデータファイルなどの特定のフォーマットのデータファイルとして記憶することができる。画像データ１００４がＴＩＦＦファイルとして記憶されている場合には、各ピクセルのすべての色成分の解釈ビットを、１バイト（または複数のバイト）に詰め込むことができ、ＴＩＦＦファイルのアルファチャネルデータとして記憶することができる。画像データ１００４がＪＰＥＧファイルとして記憶される場合には、すべての色成分の解釈ビットをＪＰＥＧファイルのタグデータとして記憶することができる。使用されている色空間が赤−緑−青（ＲＧＢ）色空間である場合において、解釈ビットが合計で８ビットよりも多くないときは、各ピクセルの赤色成分と緑色成分と青色成分とのすべての解釈ビットを特別な８ビットバイトに記憶することができる。例えば、３つの色成分のうちの２つの色成分のそれぞれについては３ビットの解釈ビットを設け、残りの色成分については２ビットの解釈ビットを設けることができる。
【００７４】
コンピュータプログラム１００６は、２つの機能の１つを実行することもできるし、２つを実行することもできる。第１に、コンピュータプログラム１００６は、画像データ１００４の各ピクセルの各色成分の値を、その色成分の新たな値に変換することができる。この新たな値は、ｎビットの未解釈ビットと、このｎビットの未解釈ビットを解釈するための少なくとも１ビットの解釈ビットとを有する。したがって、この実施の形態において、プログラム１００６は、図６の方法６００、図１０、および／または図１１の方法９００を実行することができる。
【００７５】
第２に、コンピュータプログラム１００６は、少なくとも１ビットの解釈ビットの値に基づいて、画像データ１００４の各ピクセルの各色成分を、その色成分のピクセルの色値として表示することができる。したがって、この実施の形態において、コンピュータプログラム１００６は、図５の方法５００、図８、および／または図９の方法８００を実行することができる。図１２では、コンピュータプログラム１００６は、画像データ１００４が存在するのと同じコンピュータに読み取り可能な媒体１００２上に存在するものとして示されているが、別の実施の形態では、プログラム１００６は、画像データ１００４が存在するコンピュータに読み取り可能な媒体と比較して別のコンピュータに読み取り可能な媒体に存在することもできることに留意されたい。
【００７６】
プロセッサ１００８は、１以上のプロセッサを含むことができ、コンピュータに読み取り可能な媒体１００２にアクセスすることにより、コンピュータプログラム１００６を実行する。プロセッサ１００８は、コンピュータに読み取り可能な媒体１００２にアクセスすることによっても、画像データ１００４に関するコンピュータプログラム１００６を実行する。コンピュータプログラム１００６が画像データ１００４のピクセルを表示するためのものである場合には、プロセッサ１００８は表示装置１０１０にピクセルを表示する。
【００７７】
本明細書では、特定の実施の形態を例示して説明してきたが、同じ目的を達成するために適合したあらゆる配置を、示された特定の実施形態に置換できることが当業者には理解されるということに留意されたい。本明細書で説明してきた応用および使用に加えて、本発明の実施形態の他の応用および用途も、少なくともいくつかの実施形態に適用することができる。例えば、本発明のいくつかの実施形態は１ビットの解釈ビットを有するものとして図示して説明され、他の実施形態は２ビットの解釈ビットを有するものとして図示して説明されているが、さらに別の実施の形態は３ビット以上の解釈ビットを有することができる。
【００７８】
別の例として、色域または色精度を拡張または増加することができる。本発明の少なくともいくつかの実施の形態は、既存のファイルフォーマットに適用することができ、下位互換性および上位互換性を提供する。例えば、上述したように、特定のプログラムまたはプロセスが、ｋビットの解釈ビットを使用してｎビットの未解釈ビットを解釈できない場合であっても、いくつかの実施の形態ではそれにもかかわらず、ｎビットの未解釈ビットを拡張されていない色域に関係するものとして利用することができる。この出願は、本発明のあらゆる適応および変形をカバーすることを目的としている。したがって、本発明は、特許請求の範囲およびその均等物によってのみ限定されることを明らかに意図している。
【図面の簡単な説明】
【００７９】
【図１】本発明の一実施の形態による、多数のピクセルを有する画像のデータ構造体を例示した概略図である。
【図２】本発明の一実施の形態による、多数の色成分を有する図１の画像の１ピクセルのデータ構造体の概略図である。
【図３】本発明の一実施の形態による、値および少なくとも１ビットの解釈ビットを有する図２のピクセルの色成分のデータ構造体の概略図である。
【図４】Ａ〜Ｄは、本発明のさまざまな実施の形態による、未解釈値および１ビットの解釈ビットを有するピクセルの色成分の拡張色域範囲を示す概略図である。
【図５】本発明の一実施の形態による、色成分の未解釈値および１ビットの解釈ビットを有するピクセルの色成分値を表示するための方法のフローチャートである。
【図６】本発明の一実施の形態による、ピクセルの色成分値をその色成分の未解釈値および１ビットの解釈ビットに符号化するための方法のフローチャートである。
【図７】ＡおよびＢは、本発明のさまざまな実施の形態による、未解釈値および２ビットの解釈ビットを有するピクセルの色成分の拡張色域範囲を示す概略図である。
【図８】本発明のさまざまな実施の形態による、色成分の未解釈値および２ビットの解釈ビットを有するピクセルの色成分値を表示するための方法のフローチャートである。
【図９】本発明のさまざまな実施の形態による、色成分の未解釈値および２ビットの解釈ビットを有するピクセルの色成分値を表示するための方法のフローチャートである。
【図１０】本発明のさまざまな実施の形態による、ピクセルの色成分値をその色成分の未解釈値および２ビットの解釈ビットに符号化するための方法のフローチャートである。
【図１１】本発明のさまざまな実施の形態による、ピクセルの色成分値をその色成分の未解釈値および２ビットの解釈ビットに符号化するための方法のフローチャートである。
【図１２】本発明の一実施の形態による代表的なシステムのブロック図である。
【符号の説明】
【００８０】
３００  色成分
３０２Ａ、３０２Ｂ、３０２Ｎ  未解釈ビット
３０４Ａ、３０４Ｂ、３０４Ｋ  解釈ビット
３０６  未解釈値
３０８  解釈値
【図１】
2005033806.tif 000003
【図２】
2005033806.tif 000004
【図３】
2005033806.tif 000005
【図４】
2005033806.tif 000006
【図５】
2005033806.tif 000007
【図６】
2005033806.tif 000008
【図７】
2005033806.tif 000009
【図８】
2005033806.tif 000010
【図９】
2005033806.tif 000011
【図１０】
2005033806.tif 000012
【図１１】
2005033806.tif 000013
【図１２】
2005033806.tif 000014