(57)【要約】  本技術は、浮動小数点精度の画像データの符号化・復号の負荷の増大を抑制することができるようにする画像処理装置および方法に関する。本技術の画像処理装置は、符号、指数部、仮数部よりなる浮動小数点精度の画像データを整数精度の画像データに変換し、変換されて得られた前記整数精度の画像データを符号化する。本技術は、例えば、画像データの符号化を行う符号化装置や画像データが符号化された符号化データを復号する復号装置等の画像処理装置等に適用することができる。
2016002577.tif 000002
【特許請求の範囲】
【請求項１】
符号、指数部、仮数部よりなる浮動小数点精度の画像データを整数精度の画像データに変換するデータ変換部と、
前記データ変換部により変換されて得られた前記整数精度の画像データを符号化する符号化部と
を備える画像処理装置。
【請求項２】
前記データ変換部は、前記画像データを、画素毎に、前記符号のデータ、前記指数部のデータ、および前記仮数部のデータの順にMSBからLSBに向かって並べた１つの整数精度のデータに変換する
請求項１に記載の画像処理装置。
【請求項３】
前記データ変換部は、前記画像データを、画素毎に、前記符号のデータ、前記指数部のデータ、および前記仮数部のデータのそれぞれが互いに独立した３つの整数精度の画像データに変換する
請求項１に記載の画像処理装置。
【請求項４】
前記データ変換部は、前記画像データの各ピクチャの先頭画素について、前記符号のデータ、前記指数部のデータ、および前記仮数部のデータのそれぞれを、互いに独立した３つの整数精度の画像データに変換し、その他の画素について、前記指数部のデータおよび前記仮数部のデータを、互いに独立した２つの整数精度の画像データに変換する
請求項１に記載の画像処理装置。
【請求項５】
前記データ変換部は、さらに、前記整数精度の画像データを、画素毎に、コンポーネント間の差分データに変換し、
前記符号化部は、前記データ変換部により変換されて得られた前記差分データを符号化する
請求項１に記載の画像処理装置。
【請求項６】
前記データ変換部は、
前記符号化部が可逆符号化を行う場合、前記浮動小数点精度の画像データを、前記整数精度の画像データに変換し、
前記符号化部が非可逆符号化を行う場合、前記浮動小数点精度の画像データを、浮動小数点精度の値に変換し、
前記符号化部は、
前記可逆符号化を行う場合、前記データ変換部により変換されて得られた前記整数精度の画像データを符号化し、
前記非可逆符号化を行う場合、前記データ変換部により変換されて得られた前記浮動小数点精度の値を符号化する
請求項１に記載の画像処理装置。
【請求項７】
前記符号化部は、JPEG2000符号化方式により前記画像データを符号化する
請求項１に記載の画像処理装置。
【請求項８】
前記データ変換部のデータ変換に関する情報を、前記符号化部により符号化されて得られた符号化データに付加する付加部をさらに備える
請求項１に記載の画像処理装置。
【請求項９】
前記符号化部は、JPEG2000符号化方式により前記画像データを符号化し、
前記付加部は、前記情報を、JPXファイルフォーマット内の所定の位置に付加する
請求項８に記載の画像処理装置。
【請求項１０】
符号、指数部、仮数部よりなる浮動小数点精度の画像データを整数精度の画像データに変換し、
変換されて得られた前記整数精度の画像データを符号化する
画像処理方法。
【請求項１１】
符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された整数精度の画像データの符号化データを復号する復号部と、
前記復号部により復号されて得られた前記整数精度の画像データを前記浮動小数点精度の画像データに変換するデータ変換部と
を備える画像処理装置。
【請求項１２】
前記データ変換部は、前記整数精度の画像データを、ビット数に従って３つのデータに分離し、MSBからLSBに向かう順に、前記符号のデータ、前記指数部のデータ、および前記仮数部のデータとする
請求項１１に記載の画像処理装置。
【請求項１３】
前記データ変換部は、前記整数精度の画像データを、前記符号のデータ、前記指数部のデータ、前記仮数部のデータのいずれかとする
請求項１１に記載の画像処理装置。
【請求項１４】
前記データ変換部は、前記画像データの各ピクチャの先頭画素について、前記整数精度の画像データを、前記符号のデータ、前記指数部のデータ、前記仮数部のデータのいずれかとし、その他の画素について、前記整数精度の画像データを、前記指数部のデータ若しくは前記仮数部のデータとする
請求項１１に記載の画像処理装置。
【請求項１５】
前記復号部は、前記整数精度の画像データのコンポーネント間の差分データの符号化データを復号し、
前記データ変換部は、前記復号部により復号されて得られた、前記差分データを前記整数精度の画像データに変換し、さらに、前記浮動小数点精度の画像データに変換する
請求項１１に記載の画像処理装置。
【請求項１６】
前記符号化データが、符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された整数精度の画像データが可逆符号化されたものである場合、
前記復号部は、前記符号化データを可逆復号し、
前記データ変換部は、前記復号部により可逆復号されて得られた前記整数精度の画像データを前記浮動小数点精度の画像データに変換し、
前記符号化データが、符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された浮動小数点精度の値が非可逆符号化されたものである場合、
前記復号部は、前記符号化データを非可逆復号し、
前記データ変換部は、前記復号部により非可逆復号されて得られた前記浮動小数点精度の値を前記浮動小数点精度の画像データに変換する
請求項１１に記載の画像処理装置。
【請求項１７】
前記符号化データは、JPEG2000符号化方式により符号化されており、
前記復号部は、JPEG2000復号方式により前記符号化データを復号する
請求項１１に記載の画像処理装置。
【請求項１８】
前記符号化データに付加された画像データのデータ変換に関する情報を解析する解析部をさらに備え、
前記データ変換部は、前記解析部による解析結果に従って、前記画像データを前記浮動小数点精度の画像データに変換する
請求項１１に記載の画像処理装置。
【請求項１９】
前記符号化データは、JPEG2000符号化方式により符号化されており、
前記解析部は、前記符号化データのJPXファイルフォーマット内の所定の位置に付加された前記情報を解析し、
前記復号部は、JPEG2000復号方式により前記符号化データを復号する
請求項１８に記載の画像処理装置。
【請求項２０】
符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された整数精度の画像データの符号化データを復号し、
復号されて得られた前記整数精度の画像データを前記浮動小数点精度の画像データに変換する
画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、画像処理装置および方法に関し、特に、浮動小数点精度の画像データの符号化・復号の負荷の増大を抑制することができるようにした画像処理装置および方法に関する。
【背景技術】
【０００２】
従来、浮動小数点精度画像の符号化表現については、これまで多数の研究結果が報告されている（例えば、非特許文献１および非特許文献２参照）。例えば、特許文献１ではトーンマッピングを行うことで、低ビット深度画像を作成し、その復号画像と原画像との差分を別の符号化器で符号化する２段構成の符号化方法が提案された。また、特許文献２では、トーンマッピングの代わりにLloyd-Max量子化を適用することで、非可逆圧縮時のビットレートを低減することが検討された。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】M.Winken, D.Marpe, etc, "Bit-depth Scalable Video Coding", Proc. IEEE Intl. Conf. on Image Processing, pp.I-5〜I-7, 2007
【非特許文献２】伊藤、坂東、高村、上倉、八島, "ビット深度変換処理を用いた高ビット深度画像の符号化に関する基礎検討", 2009信学総大, S-5, 2009
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、これらの手法では、符号化や復号の処理において、内部の演算精度が大きくなってしまい、オーバーフローになるおそれがあった。【０００５】
本技術は、このような状況に鑑みて提案されたものであり、浮動小数点精度の画像データの符号化・復号の負荷の増大を抑制することができるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本技術の一側面は、符号、指数部、仮数部よりなる浮動小数点精度の画像データを整数精度の画像データに変換するデータ変換部と、前記データ変換部により変換されて得られた前記整数精度の画像データを符号化する符号化部とを備える画像処理装置である。【０００７】
前記データ変換部は、前記画像データを、画素毎に、前記符号のデータ、前記指数部のデータ、および前記仮数部のデータの順にMSBからLSBに向かって並べた１つの整数精度のデータに変換することができる。【０００８】
前記データ変換部は、前記画像データを、画素毎に、前記符号のデータ、前記指数部のデータ、および前記仮数部のデータのそれぞれが互いに独立した３つの整数精度の画像データに変換することができる。【０００９】
前記データ変換部は、前記画像データの各ピクチャの先頭画素について、前記符号のデータ、前記指数部のデータ、および前記仮数部のデータのそれぞれを、互いに独立した３つの整数精度の画像データに変換し、その他の画素について、前記指数部のデータおよび前記仮数部のデータを、互いに独立した２つの整数精度の画像データに変換することができる。【００１０】
前記データ変換部は、さらに、前記整数精度の画像データを、画素毎に、コンポーネント間の差分データに変換し、前記符号化部は、前記データ変換部により変換されて得られた前記差分データを符号化することができる。【００１１】
前記データ変換部は、前記符号化部が可逆符号化を行う場合、前記浮動小数点精度の画像データを、前記整数精度の画像データに変換し、前記符号化部が非可逆符号化を行う場合、前記浮動小数点精度の画像データを、浮動小数点精度の値に変換し、前記符号化部は、前記可逆符号化を行う場合、前記データ変換部により変換されて得られた前記整数精度の画像データを符号化し、前記非可逆符号化を行う場合、前記データ変換部により変換されて得られた前記浮動小数点精度の値を符号化することができる。【００１２】
前記符号化部は、JPEG2000符号化方式により前記画像データを符号化することができる。【００１３】
前記データ変換部のデータ変換に関する情報を、前記符号化部により符号化されて得られた符号化データに付加する付加部をさらに備えることができる。【００１４】
前記符号化部は、JPEG2000符号化方式により前記画像データを符号化し、前記付加部は、前記情報を、JPXファイルフォーマット内の所定の位置に付加することができる。【００１５】
本技術の一側面は、また、符号、指数部、仮数部よりなる浮動小数点精度の画像データを整数精度の画像データに変換し、変換されて得られた前記整数精度の画像データを符号化する画像処理方法である。【００１６】
本技術の他の側面は、符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された整数精度の画像データの符号化データを復号する復号部と、前記復号部により復号されて得られた前記整数精度の画像データを前記浮動小数点精度の画像データに変換するデータ変換部とを備える画像処理装置である。【００１７】
前記データ変換部は、前記整数精度の画像データを、ビット数に従って３つのデータに分離し、MSBからLSBに向かう順に、前記符号のデータ、前記指数部のデータ、および前記仮数部のデータとすることができる。【００１８】
前記データ変換部は、前記整数精度の画像データを、前記符号のデータ、前記指数部のデータ、前記仮数部のデータのいずれかとすることができる。【００１９】
前記データ変換部は、前記画像データの各ピクチャの先頭画素について、前記整数精度の画像データを、前記符号のデータ、前記指数部のデータ、前記仮数部のデータのいずれかとし、その他の画素について、前記整数精度の画像データを、前記指数部のデータ若しくは前記仮数部のデータとすることができる。【００２０】
前記復号部は、前記整数精度の画像データのコンポーネント間の差分データの符号化データを復号し、前記データ変換部は、前記復号部により復号されて得られた、前記差分データを前記整数精度の画像データに変換し、さらに、前記浮動小数点精度の画像データに変換することができる。【００２１】
前記符号化データが、符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された整数精度の画像データが可逆符号化されたものである場合、前記復号部は、前記符号化データを可逆復号し、前記データ変換部は、前記復号部により可逆復号されて得られた前記整数精度の画像データを前記浮動小数点精度の画像データに変換し、前記符号化データが、符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された浮動小数点精度の値が非可逆符号化されたものである場合、前記復号部は、前記符号化データを非可逆復号し、前記データ変換部は、前記復号部により非可逆復号されて得られた前記浮動小数点精度の値を前記浮動小数点精度の画像データに変換することができる。【００２２】
前記符号化データは、JPEG2000符号化方式により符号化されており、前記復号部は、JPEG2000復号方式により前記符号化データを復号することができる。【００２３】
前記符号化データに付加された画像データのデータ変換に関する情報を解析する解析部をさらに備え、前記データ変換部は、前記解析部による解析結果に従って、前記画像データを前記浮動小数点精度の画像データに変換することができる。【００２４】
前記符号化データは、JPEG2000符号化方式により符号化されており、前記解析部は、前記符号化データのJPXファイルフォーマット内の所定の位置に付加された前記情報を解析し、前記復号部は、JPEG2000復号方式により前記符号化データを復号することができる。【００２５】
本技術の他の側面は、また、符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された整数精度の画像データの符号化データを復号し、復号されて得られた前記整数精度の画像データを前記浮動小数点精度の画像データに変換する画像処理方法である。【００２６】
本技術の一側面においては、符号、指数部、仮数部よりなる浮動小数点精度の画像データが整数精度の画像データに変換され、変換されて得られた整数精度の画像データが符号化される。【００２７】
本技術の他の側面においては、符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された整数精度の画像データの符号化データが復号され、復号されて得られた整数精度の画像データが浮動小数点精度の画像データに変換される。
【発明の効果】
【００２８】
本技術によれば、画像を処理することが出来る。また本技術によれば、浮動小数点精度の画像データの符号化・復号の負荷の増大を抑制することができる。
【図面の簡単な説明】
【００２９】
【図１】画像符号化装置の主な構成例を示すブロック図である。
【図２】浮動小数点精度の画像データのフォーマットの例を説明する図である。
【図３】コンポーネントの構成例を示す図である。
【図４】コンポーネントの構成例を示す図である。
【図５】JPXファイルフォーマットの構成例を示す図である。
【図６】Reader Requirements Boxで定義されたパラメータ群の例を示す図である。
【図７】Pixel Format Boxの構成例を示す図である。
【図８】Pixel Formatの値と定義の例を示す図である。
【図９】Pixel Formatの値と定義の例を示す図である。
【図１０】非線形変換を施す場合のマーカセグメントの例を示す図である。
【図１１】拡張マーカセグメントのパラメータ定義の例を示す図である。
【図１２】浮動小数点精度の変換式の定義の例を示す図である。
【図１３】画像符号化処理の流れの例を説明するフローチャートである。
【図１４】画像復号装置の主な構成例を示すブロック図である。
【図１５】画像復号処理の流れの例を説明するフローチャートである。
【図１６】画像符号化処理の流れの他の例を説明するフローチャートである。
【図１７】画像復号処理の流れの他の例を説明するフローチャートである。
【図１８】画像符号化装置の他の構成例を示すブロック図である。
【図１９】画像符号化処理の流れのさらに他の例を説明するフローチャートである。
【図２０】画像復号装置の他の構成例を示すブロック図である。
【図２１】画像復号処理の流れのさらに他の例を説明するフローチャートである。
【図２２】コンピュータの主な構成例を示すブロック図である。
【発明を実施するための形態】
【００３０】
以下、本開示を実施するための形態（以下実施の形態とする）について説明する。なお、説明は以下の順序で行う。
１．第１の実施の形態（画像符号化装置）
２．第２の実施の形態（画像復号装置）
３．第３の実施の形態（画像符号化装置）
４．第４の実施の形態（画像復号装置）
５．第５の実施の形態（画像符号化装置）
６．第６の実施の形態（画像復号装置）
７．第７の実施の形態（コンピュータ）
【００３１】
＜１．第１の実施の形態＞
＜浮動小数点精度の画像データの符号化＞
従来、被写体画像の中に明るい部分と暗い部分が存在すると、明るい部分は白飛び、暗い部分は黒つぶれといった現象が発生していた。これを防ぐために多重露光の複数画像の合成処理によって、明るい部分から暗い部分までカバーできる画像を生成することができる。しかしながらダイナミックレンジが拡大（高ダイナミックレンジ）するので、これを表現するためのビット深度も多く必要になる上、画像データも従来の整数精度から浮動小数点精度にする必要があった。
【００３２】
浮動小数点精度のデータ表現としては、一般に国際規格であるIEEE 754形式の浮動小数点精度が多用されている。
【００３３】
例えば、32ビット（単精度）を整数精度で表現した場合の最大値の絶対値は232であるが、浮動小数点精度表現にした場合には、2127付近の値まで拡張可能になることが知られている。従って浮動小数点精度のデータは非常に広範囲のレンジまで表現できるので、高ダイナミックレンジ画像のデータ表現に好適である。しかしながら、エンコードなどの画像処理を行う場合には、データ長が大きいために演算精度のオーバーフローを起こす可能性があった。
【００３４】
実際の各浮動小数点精度のデータ範囲は、例えば、半精度（16bit）の非正規化表現の場合、2-24乃至2-14であり、正規化表現の場合、2-14乃至65.504である。また、例えば、単精度（32bit）の非正規化表現の場合、±2-149乃至(1-2-23)×2-126であり、正規化表現の場合、±2-126乃至(2-2-23)×2127である。さらに、例えば、倍精度（64bit）の非正規化表現の場合、±2-1074乃至(1-2-52)×2-1022であり、正規化表現の場合、±2-1022乃至(2-2-52)×21023である。正規化表現は一般的な画像データなどを扱う場合に用いられ、非正規化表現は非常に小さい値を表現する際に用いられる。
【００３５】
このように浮動小数点精度のデータ範囲は非常に広いが、浮動小数点精度のデータのまま可逆エンコードする場合、可逆を保証するためにデータ損失が許されない。従って浮動小数点精度の絶対値のビット深度以上のデータ長が必要になる。そのため、符号化や復号の処理の負荷が増大し、オーバーフローを起こすおそれがあった。換言するに、このようなオーバーフローが生じないようにするために、非常に大きなハードウェアコストにつながるおそれがあった。
【００３６】
そこで、符号、指数部、仮数部よりなる浮動小数点精度の画像データを符号化する画像処理装置において、その浮動小数点精度の画像データを整数精度の画像データに変換するデータ変換部と、そのデータ変換部により変換されて得られた整数精度の画像データを符号化する符号化部とを備えるようにする。つまり、符号、指数部、仮数部よりなる浮動小数点精度の画像データを符号化する際に、その浮動小数点精度の画像データを整数精度の画像データに変換し、変換されて得られた整数精度の画像データを符号化するようにする。
【００３７】
このようにすることにより、整数精度での符号化が可能になり、データ範囲の増大を抑制することができるので、データ長の増大を抑制することができ、浮動小数点精度の画像データの符号化処理の負荷の増大を抑制することができる。したがって、オーバーフローの発生を抑制することができ、ハードウェアコストの増大を抑制することができる。
【００３８】
なお、固定小数点精度の画像データは、整数精度の画像データと同様に処理することができるため、その説明は省略する。以下においては、画像データが整数精度の場合と浮動小数点精度の場合についてのみ説明する。
【００３９】
＜画像符号化装置＞
図１は、本技術を適用した画像処理装置の一実施の形態である画像符号化装置の主な構成例を示すブロック図である。図１に示される画像符号化装置１００は、入力される浮動小数点精度の画像データを符号化し、符号化データ（コードストリーム）を出力する。
【００４０】
図１に示されるように、画像符号化装置１００は、解析部１１１、データ変換部１１２、ウェーブレット変換部１１３、選択部１１４、量子化部１１５、EBCOT（Embedded Block Coding with Optimized Truncation）部１１６、およびファイルフォーマット生成部１１７を有する。
【００４１】
解析部１１１は、入力される画像データを解析し、画像データが浮動小数点精度であるか否かを判定する。解析部１１１は、その判定結果に基づいて、データ変換部１１２乃至ファイルフォーマット生成部１１７の動作を制御する。
【００４２】
データ変換部１１２は、解析部１１１による解析の結果（判定結果）に基づいて、入力される画像データが浮動小数点精度の場合、その浮動小数点精度の画像データを整数精度の画像データに変換する。このデータ変換の詳細については後述する。データ変換部１１２は、変換後の整数精度の画像データをウェーブレット変換部１１３に供給する。なお、データ変換部１１２は、入力画像データが整数精度の場合、データ変換を省略し、整数精度のまま、画像データをウェーブレット変換部１１３に供給する。
【００４３】
ウェーブレット変換部１１３は、供給された整数精度の画像データに対してウェーブレット変換を施す。ウェーブレット変換部１１３は、整数精度の画像データに対して、分析フィルタによりフィルタ処理を施して低域成分および高域成分の係数のデータを生成する処理を、その生成された低域成分の係数データに対して再帰的に繰り返す。ウェーブレット変換部１１３は、分析フィルタとして水平分析フィルタと垂直分析フィルタとを有し、画面水平方向と画面垂直方向の両方についてこのようなフィルタ処理を行う。ウェーブレット変換部１１３は、フィルタ処理を所定回数繰り返し、分解レベルが所定レベルに達したら、その階層化された係数データを選択部１１４に供給する。
【００４４】
なお、ウェーブレット変換部１１３が用いるフィルタの種類は任意である。例えば、ウェーブレット変換部１１３が5/3フィルタを用いるようにしてもよいし、9/7フィルタを用いるようにしてもよい。また、例えば、可逆符号化を行う場合、ウェーブレット変換部１１３が5/3フィルタを用いるようにし、非可逆符号化を行う場合、ウェーブレット変換部１１３が9/7フィルタを用いるようにしてもよい。
【００４５】
選択部１１４は、係数データの供給先を選択する。選択部１１４は、非可逆符号化が行われる場合、係数データを量子化部１１５に供給する。また、選択部１１４は、可逆符号化が行われる場合、係数データをEBCOT部１１６に供給する。つまり、この場合、量子化処理が省略される。
【００４６】
可逆符号化を行うか非可逆符号化を行うかは、任意の情報に基づいて決定されるようにしてよい。例えば、ユーザ等により予め設定されるようにしてもよいし、画像データや処理の負荷等に応じて適宜決定されるようにしてもよい。なお、画像符号化装置１００が可逆符号化若しくは非可逆符号化のいずれか一方のみ行うことができるようにしてもよい。その場合、選択部１１４は省略することができる（可逆符号化の場合は量子化部１１５も省略することができる）。
【００４７】
量子化部１１５は、選択部１１４より供給された係数データを量子化し、EBCOT部１１６に供給する。
【００４８】
EBCOT部１１６は、選択部１１４若しくは量子化部１１５から供給された係数データをエントロピ符号化し、符号化データを生成する。EBCOT部１１６は、生成された符号化データをファイルフォーマット生成部１１７に供給する。
【００４９】
ファイルフォーマット生成部１１７は、解析部１１１の解析結果（判定結果）に応じて、供給された符号化データを用いて、JPEG（Joint Photographic Experts Group）2000の規格に準拠したファイル（JPEG2000ファイル）を生成する。例えば、解析部１１１により、画像符号化装置１００に入力された画像データが浮動小数点精度と判定された場合、ファイルフォーマット生成部１１７は、その旨を示す付加情報を生成し、EBCOT部１１６から供給された符号化データを含むJPEG2000ファイルに付加する。このJPEG2000ファイルや付加情報の詳細については後述する。
【００５０】
ファイルフォーマット生成部１１７は、生成したファイルを画像符号化装置１００の外部に出力する。
【００５１】
図１に示されるように、ウェーブレット変換部１１３乃至EBCOT部１１６をまとめて符号化部１２０としてもよい。上述したウェーブレット変換部１１３乃至EBCOT部１１６の構成は、画像符号化装置１００が画像データをJPEG2000方式で符号化する場合の構成例である。例えば入力画像データが自然画像の場合、図１の例のようにJPEG2000方式を適用することにより、高い圧縮率を実現することができる。
【００５２】
しかしながら、画像符号化装置１００の符号化方式は任意であり、JPEG2000に限定されない。つまり、符号化部１２０の内部の構成は任意であり、図１の例に限定されない。画像の種類や特徴に応じて、より適したものを使い分けるのが望ましい。
【００５３】
＜浮動小数点精度の画像データ＞
浮動小数点精度のデータ値は、IEEE754フォーマットでは、符号（S)と、指数部（E）と仮数部（M）によって表現される。16ビットの半精度浮動小数点は、インダストリアル・ライト＆マジック社が開発したフォーマットであり、高ダイナミックレンジに対応しながらハードディスクやメモリのコストを多く必要としない特徴を持つ。この単精度の浮動小数点精度のフォーマットは例えば、OpenEXR、OpenGL、D3DXなどの幾つかのコンピュータグラフィックス環境で使われている。
【００５４】
その中でもOpenEXRは、最近の高ダイナミックレンジ画像のデファクトフォーマットとして多用されている。図２に示されるように、符号ビット（S）が1ビット、Exponent（指数部）が５ビット、Mantissa（仮数部）が10ビットから構成されている。
【００５５】
画像符号化装置１００においては、これら３つのデータを整数値として扱う。例えば、データ変換部１１２が、これらの符号（S)、指数部（E）、仮数部（M）の３つのデータを、それぞれに割り当てられたビット深度の合計のビット深度の、整数精度の画像データに変換するようにしてもよい。つまり、データ変換部１１２が、符号、指数部、仮数部よりなる浮動小数点精度の画像データを、画素毎に、符号のデータ、指数部のデータ、および仮数部のデータの順にMSBからLSBに向かって並べた１つの整数精度のデータに変換するようにしてもよい。
【００５６】
この場合、１画素当たり合計16ビット長の整数データをエンコードするのと等価である。符号化部１２０が可逆圧縮を行う場合、符号（S)、指数部（E）、仮数部（M）の３つの値はすべて保証される。つまり、この場合、水平H×垂直Vの解像度の入力画像データがRGBの３コンポーネントで構成されるとすると、図３に示されるように、１６ビット深度の画像データ（解像度はすべて水平H×垂直V＝HV）の３コンポーネントが符号化される。
【００５７】
なお、データ変換部１１２が、符号（S)、指数部（E）、仮数部（M）の３つのデータを、それぞれ整数精度の画像データに変換するようにしてもよい。つまり、データ変換部１１２が、符号、指数部、仮数部よりなる浮動小数点精度の画像データを、画素毎に、符号のデータ、指数部のデータ、および仮数部のデータのそれぞれが互いに独立した３つの整数精度の画像データに変換するようにしてもよい。
【００５８】
この場合、図４に示されるように、入力画像データは、データ変換部１１２のデータ変換により、コンポーネント毎に、符号（S)１ビットの画像、指数部（E）５ビットの画像、仮数部（M）１０ビットの画像に分割される。符号化部１２０は、これらを別個に符号化する。つまり、水平H×垂直Vの解像度の入力画像データがRGBの３コンポーネントで構成されるとすると、３コンポーネント×３画像＝９個の画像（解像度はすべて水平H×垂直V＝HV）が符号化される。
【００５９】
なお、符号（S）は、画素間で相関性が高い。つまり、各画素データにおいて符号（S）の値は変化しない場合が多い。そこで、この符号（S）は、例えばピクチャの先頭の（最初に処理される）画素においてのみ符号化するようにし、その後の画素については、この符号（S）の符号化を省略するようにしてもよい。その場合、復号の際には、ピクチャの先頭以外の画素の符号（S）の値には、そのピクチャの先頭の画素の符号（S）を適用するようにすればよい。
【００６０】
つまり、データ変換部１１２が、画像データの各ピクチャの先頭画素について、符号のデータ、指数部のデータ、および仮数部のデータのそれぞれを、互いに独立した３つの整数精度の画像データに変換し、その他の画素について、指数部のデータおよび仮数部のデータを、互いに独立した２つの整数精度の画像データに変換するようにしてもよい。このようにすることにより、符号化効率を向上させる（符号（S）による符号量の増大を抑制する）ことができる。
【００６１】
また、以上においては、RGBの各コンポーネントを個別に符号化するように説明したが、これに限らず、例えば、コンポーネント間の差分データを符号化するようにしてもよい。つまり、データ変換部１１２が、浮動小数点精度の画像データを整数精度の画像データに変換し、さらにそれを、画素毎に、コンポーネント間の差分データに変換するようにしてもよい。その場合、符号化部１２０は、データ変換部１１２により変換されて得られた差分データを符号化する。
【００６２】
例えば、以下の式（１）乃至式（４）のようにX, Y, X', Y'を定義し、このX, Y, X', Y'をそれぞれ符号化するようにしてもよい。
【００６３】
X=(G-B)/2  ・・・（１）
Y=(G+B)/2  ・・・（２）
X'=(G-R)/2  ・・・（３）
Y'=(G+R)/2  ・・・（４）
【００６４】
また、例えば、上述した式（１）および式（２）のようにX, Yを定義し、このX, YとRをそれぞれ符号化するようにしてもよい。つまり、一部のコンポーネントのみ差分データ化するようにしてもよい。もちろん、差分データの生成方法（コンポーネントの組み合わせ等）は任意であり、上述した例に限定されない。例えば、上述した例ではGを基準として差分データを求めているが、Bを基準としてもよいし、Rを基準としてもよい。また、例えば、差分データを求める式も上述した例以外であってもよい。さらに、RGB以外のコンポーネントであってもよい。
【００６５】
＜ファイルフォーマット＞
次に付加情報について説明する。JPEG2000は圧縮コーデック技術であるが、多くの機能を持っているため付加情報も符号化結果と合わせてファイル化することができる。図５はJPEG2000の拡張ファイルフォーマット（JPX）の構成図である。図１５に示されるように、JPXファイルフォーマットは、個々のボックス構造から構成されている。EBCOT部１１６において生成された符号化データは、Continuous Codestream Box（M.11.8）に格納される。
【００６６】
JPEG2000 Part1では、基本的に入力画像は整数精度の画像と決まっているので、浮動小数点精度の画像入力の場合このJPXファイルフォーマット中で定義するのが効率的である。
【００６７】
図５のリーダーリクイラメンツボックス（Reader Requirements Box（M.11.1））では、入力画像のフォーマット、例えば整数精度、固定小数点精度、更に浮動小数点精度の何れかの定義が可能である。従って、入力画像フォーマットが浮動小数点精度の場合、このボックスに浮動小数点精度であることを示すパラメータを定義するようにしてもよい。
【００６８】
図６は、このReader Requirements Boxで定義されるパラメータ群の例を示す図である。この中で、Value=80は画像データが固定小数点精度、Value=81は画像データが浮動小数点精度、Value=82は画像データがMantissa（仮数）、Exponent（指数）を用いることを定義する。従って、上述したように入力画像データが浮動小数点精度であり、かつ、OpenEXRのように符号（S)、指数部（E）、仮数部（M）の３つを用いる場合、Value=82を選択すればよい。
【００６９】
また、拡張フォーマットしてピクセルフォーマットボックス（Pixel Format Box（M11.7,8））を、図７の様に定義するようにしてもよい。この中でFN-1がピクセルフォーマット（Pixel Format）で実際に画像データの精度を定義するパラメータである（N=コンポーネント数でありRGBの場合にはN=3）。図８はこのPixel Format(F)の値とその定義を示したものであり、例えば浮動小数点精度の場合には、0100 mmmm mmmm mmmmが選択される。さらに、浮動小数点精度で且つIEC 60559（IEEE 754と同一）に準拠の場合には、図９で示した様に、半精度（0100 0000 0000 1010）、単精度（0100 0000 0001 0111）、倍精度（0100 0000 0011 0100）の何れかが選択される。
【００７０】
図１０は非線形変換（Non-linearity Point Transformation）の処理をコンポーネントに対して施す場合に用いるマーカセグメントである。TnltがNo-linearity typeを示し、既存のフォーマットではTnlt=1及び2の値のみ定義されている。またSTnltはTnltに連動して定義されるパラメータ群である。
【００７１】
図１１は、拡張マーカセグメントNLT（Non-linearity Point Transformation）内の、Tnlt（Non-linearity type）によるパラメータ定義である。既にガンマ変換（Gamma-style non-linearity transformation）とルックアップテーブル変換（LUT-style non-linearity transformation）は定義済である。従って、浮動小数点精度の変換式の定義を新たに定義して、このテーブルに追加する。具体的にはValue=0000 0011としてInteger-Float Transformationと定義し、具体的な変換式に関しては図１２に示されるテーブルにおいて指定する。
【００７２】
図１２は、Tnlt=3の具体的な変換式を示したもので、半精度、単精度、倍精度毎の浮動小数点精度への変換式を定義した。尚、半精度、単精度、倍精度のどのタイプが選択するかは、前述のReader Requirements Boxで定義されたパラメータによって定義されているので、このValuesにおいて定義された変換式に従ってｈの値を算出すれば良い。
【００７３】
以上のように画像符号化装置１００は、浮動小数点精度の画像データを整数精度の画像データに変換して符号化するので、データ長の増大を抑制し、負荷の増大を抑制することができる。特に可逆符号化の場合、データ長の増大をより抑制し、負荷の増大をより抑制することができる。また、非可逆符号化の場合、データ長の増大を抑制することにより、切り捨てや量子化などによる情報量の低減を抑制することができ、復号画像の画質の低減を抑制することができる。
【００７４】
また、上述したように画像データの精度に関する情報を付加情報として符号化データに付加することにより、復号の際のデータ変換の必要性やその方法等の把握が容易になる。つまり、復号処理の負荷を低減させることもできる。
【００７５】
なお、画像データの精度に関する情報の付加の仕方は任意である。例えば、付加情報をファイルのどの位置に格納するようにしてもよい。また、符号化データと付加情報をそれぞれファイル化し、それらを互いに関連付けるようにしてもよい。さらに、画像データの下位ビットに付加情報を格納し、それを符号化するようにしてもよい。
【００７６】
＜画像符号化処理の流れ＞
図１３のフローチャートを参照して、図１の画像符号化装置１００による画像符号化処理の流れの例を説明する。画像データが入力されると、画像符号化処理が開始される。
【００７７】
解析部１１１は、ステップＳ１０１において、入力された画像データを解析し、ステップＳ１０２において、その画像データが浮動小数点精度であるか否かを判定する。浮動小数点精度の画像データが入力されたと判定された場合、処理は、ステップＳ１０３に進む。
【００７８】
ステップＳ１０３において、データ変換部１１２は、浮動小数点精度の画像データの符号、指数部、仮数部を、上述したように整数精度の画像データに変換する。変換が終了すると、処理はステップＳ１０４に進む。また、ステップＳ１０２において、入力された画像データが整数精度であると判定された場合、処理は、ステップＳ１０４に進む。
【００７９】
ステップＳ１０４において、ウェーブレット変換部１１３は、画像データに対してウェーブレット変換を行う。
【００８０】
ステップＳ１０５において、選択部１１４は、非可逆方式で符号化するか否かを判定する。非可逆符号化を行うと判定された場合、処理はステップＳ１０６に進む。
【００８１】
ステップＳ１０６において、量子化部１１５は、画像データがウェーブレット変換された係数データを量子化する。量子化が終了すると、処理はステップＳ１０７に進む。また、ステップＳ１０５において、可逆符号化を行うと判定された場合、処理はステップＳ１０７に進む。
【００８２】
ステップＳ１０７において、EBCOT部１１６は、係数データ（若しくは量子化された係数データ）をエントロピ符号化する。
【００８３】
ステップＳ１０８において、ファイルフォーマット生成部１１７は、画像データの精度に関する情報を含むようにファイルフォーマットを生成する。
【００８４】
ステップＳ１０８の処理が終了すると、画像符号化処理が終了する。
【００８５】
以上のように各処理を行うことにより、浮動小数点精度の画像データの符号化・復号の負荷の増大を抑制することができる。
【００８６】
＜２．第２の実施の形態＞
＜浮動小数点精度の画像データの復号＞
次に、第１の実施の形態において説明した画像符号化装置１００により生成される符号化データ（コードストリーム）の復号について説明する。
【００８７】
仮に、浮動小数点精度の画像データをそのまま可逆エンコードする場合、可逆を保証するためにデータ損失が許されない。従って浮動小数点精度の絶対値のビット深度以上のデータ長が必要になる。そのため、復号処理においても負荷が増大し、オーバーフローを起こすおそれがあった。換言するに、このようなオーバーフローが生じないようにするために、非常に大きなハードウェアコストにつながるおそれがあった。
【００８８】
そこで、符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された整数精度の画像データの符号化データを復号する復号部と、復号部により復号されて得られた整数精度の画像データを浮動小数点精度の画像データに変換するデータ変換部とを備えるようにする。つまり、符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された整数精度の画像データの符号化データを復号し、復号されて得られた整数精度の画像データを浮動小数点精度の画像データに変換するようにする。
【００８９】
このようにすることにより、整数精度での符号化が可能になり、データ範囲の増大を抑制することができるので、データ長の増大を抑制することができ、浮動小数点精度の画像データを得るための復号処理の負荷の増大を抑制することができる。したがって、オーバーフローの発生を抑制することができ、ハードウェアコストの増大を抑制することができる。
【００９０】
なお、第１の実施の形態の場合と同様、固定小数点精度の画像データは、整数精度の画像データと同様に処理することができるため、その説明は省略する。以下においては、画像データが整数精度の場合と浮動小数点精度の場合についてのみ説明する。
【００９１】
＜画像復号装置＞
【００９２】
図１４は、本技術を適用した画像処理装置の他の実施の形態である画像復号装置の主な構成例を示すブロック図である。図１４に示される画像復号装置２００は、画像符号化装置１００により生成された符号化データ（コードストリーム）を復号し、復号画像を得る装置である。画像符号化装置１００により生成されたファイル（符号化データ（コードストリーム）を含む）は、例えば任意の通信媒体を介して画像復号装置２００に伝送されたり、例えば任意の記録媒体に記録され、画像復号装置２００によりその記録媒体から読み出されたりする。
【００９３】
画像復号装置２００は、復号して得られる整数精度の画像データをデータ変換し、浮動小数点精度の画像データを出力する。
【００９４】
図１４に示されるように、画像復号装置２００は、ファイルフォーマット解析部２１１、データ抽出部２１２、EBCOT部２１３、選択部２１４、逆量子化部２１５、ウェーブレット逆変換部２１６、およびデータ変換部２１７を有する。
【００９５】
ファイルフォーマット解析部２１１は、入力されるファイル（符号化データ（コードストリーム）を含む）のファイルフォーマットを解析し、付加情報から符号化前の画像データが浮動小数点精度であったか否か等を判定する。ファイルフォーマット解析部２１１は、その判定結果に基づいて、データ抽出部２１２乃至データ変換部２１７の動作を制御する。
【００９６】
例えば、入力されたファイルがJPEG2000ファイルであり、画像データがJPEG2000方式により符号化されており、画像データの精度に関する情報が、図５乃至図１２を参照して説明したように、JPXファイルフォーマットに格納されているとする。ファイルフォーマット解析部２１１は、上述したようにJPXファイルフォーマットの所定の位置に格納された各種情報を参照することにより、符号化前の画像データが浮動小数点精度であったか否か等を判定する。
【００９７】
データ抽出部２１２は、ファイルフォーマット解析部２１１の解析結果等に基づいて、入力されたファイルから符号化データ（コードストリーム）を抽出し、EBCOT部２１３に供給する。
【００９８】
EBCOT部２１３は、ファイルフォーマット解析部２１１の解析結果等に基づいて、データ抽出部２１２から供給される符号化データをEBCOT部１１６のエントロピ符号化に対応する方法でエントロピ復号する。EBCOT部２１３は、エントロピ復号して得られた係数データを選択部２１４に供給する。
【００９９】
選択部２１４は、ファイルフォーマット解析部２１１の解析結果等に基づいて、その係数データの供給先を選択する。選択部２１４は、画像符号化装置１００において非可逆符号化が行われた場合、すなわち、非可逆復号する場合、係数データを逆量子化部２１５に供給する。また、選択部２１４は、画像符号化装置１００において可逆符号化が行われた場合、すなわち、可逆復号する場合、係数データをウェーブレット逆変換部２１６に供給する。つまり、この場合、逆量子化処理が省略される。
【０１００】
なお、画像復号装置２００が可逆復号若しくは非可逆復号のいずれか一方のみ行うことができるようにしてもよい。その場合、選択部２１４は省略することができる（可逆復号の場合は逆量子化部２１５も省略することができる）。
【０１０１】
逆量子化部２１５は、ファイルフォーマット解析部２１１の解析結果等に基づいて、選択部２１４から供給された、量子化された係数データを。量子化部１１５において行われた量子化に対応する方法で逆量子化する。逆量子化部２１５は、逆量子化した係数データをウェーブレット逆変換部２１６に供給する。
【０１０２】
ウェーブレット逆変換部２１６は、ファイルフォーマット解析部２１１の解析結果等に基づいて、選択部２１４若しくは逆量子化部２１５から供給された係数データを、ウェーブレット変換部１１３によるウェーブレット変換に対応する方法でウェーブレット逆変換する。これにより、整数精度の画像データが得られる。
【０１０３】
データ変換部２１７は、ファイルフォーマット解析部２１１の解析結果等に基づいて、符号化前の画像データが浮動小数点精度であった場合、整数精度の画像データを浮動小数点精度の画像データに変換する。つまり、データ変換部２１７は、整数精度の画像データから、符号（S）のデータ、指数部（E）のデータ、仮数部（M）のデータを生成する。
【０１０４】
例えば、ウェーブレット逆変換部２１６から供給された整数精度の画像データが、図３を参照して説明したような、符号（S)、指数部（E）、仮数部（M）の３つのデータのそれぞれに割り当てられたビット深度の合計のビット深度の、整数精度の画像データである場合、データ変換部２１７は、その整数精度の画像データを符号（S)、指数部（E）、仮数部（M）のそれぞれのビット数で分割し、符号（S)、指数部（E）、仮数部（M）の３つのデータに変換する。例えば、図２の場合、データ変換部２１７は、16ビットの整数精度の画像データを、MSBからLSBに向かって、最初の1ビットを符号（S）のデータとし、次の5ビットを指数部（E）のデータとし、残りの10ビットを仮数部（M）のデータとする。
【０１０５】
このように、データ変換部２１７が、整数精度の画像データを、ビット数に従って３つのデータに分離し、MSBからLSBに向かう順に、符号（S）のデータ、指数部（E）のデータ、仮数部（M）のデータとするようにしてもよい。
【０１０６】
また、例えば、ウェーブレット逆変換部２１６から供給された整数精度の画像データが、図４を参照して説明したような、符号（S)、指数部（E）、仮数部（M）の３つのデータがそれぞれ整数精度の画像データに変換されたものである場合、データ変換部２１７は、その３つの整数精度の画像データを、それぞれ符号（S)のデータ、指数部（E）のデータ、仮数部（M）のデータとする。つまり、データ変換部２１７が、整数精度の画像データを、符号のデータ、指数部のデータ、仮数部のデータのいずれかとするようにしてもよい。
【０１０７】
整数精度の画像データを、符号のデータにするか、指数部のデータにするか、仮数部のデータにするかの判断基準は任意であるが、例えば、データ長が1ビットなら符号（S）のデータとし、データ長が5ビットなら指数部（E）のデータとし、データ長が10ビットなら仮数部（M）のデータとする等、データ長に基づいて判断してもよい。また、例えば、先頭の画像データを符号（S）のデータとし、次の画像データを指数部（E）のデータとし、その次の画像データを仮数部（M）のデータとし、さらにその次の画像データを符号（S）のデータとする等、データの並び（順序）に応じて判断されるようにしてもよい。
【０１０８】
さらに例えば、ウェーブレット逆変換部２１６から供給された整数精度の画像データが、画像データの各ピクチャの先頭画素について、符号のデータ、指数部のデータ、および仮数部のデータのそれぞれが、互いに独立した３つの整数精度の画像データに変換され、その他の画素について、指数部のデータおよび仮数部のデータが、互いに独立した２つの整数精度の画像データに変換されたものである場合、データ変換部２１７は、各ピクチャの先頭画素については、３つの整数精度の画像データを、それぞれ符号（S)のデータ、指数部（E）のデータ、仮数部（M）のデータとし、その他の画素については、２つの整数精度の画像データを、それぞれ指数部（E）のデータ、仮数部（M）のデータとする。
【０１０９】
つまり、データ変換部２１７が、画像データの各ピクチャの先頭画素について、整数精度の画像データを、その順序やデータ長等に応じて、符号のデータ、指数部のデータ、仮数部のデータのいずれかとし、その他の画素について、整数精度の画像データを、その順序やデータ長等に応じて、指数部のデータ若しくは仮数部のデータとするようにしてもよい。
【０１１０】
この場合も、整数精度の画像データを、符号のデータにするか、指数部のデータにするか、仮数部のデータにするかの判断基準は任意である。例えば、データ長に基づいて判断されるようにしてもよいし、データの並び（順序）に基づいて判断されるようにしてもよい。
【０１１１】
また、例えば、ウェーブレット逆変換部２１６から供給された整数精度の画像データが、コンポーネント間の差分データである場合、データ変換部２１７は、差分データから各コンポーネントデータを求め、その各コンポーネントのデータをそれぞれ浮動小数点精度に変換する。
【０１１２】
例えば、第１の実施の形態において説明したように、RGBコンポーネントの画像データについて、上述した式（１）乃至式（４）のようにX, Y, X', Y'を定義し、このX, Y, X', Y'をそれぞれ符号化する場合、ウェーブレット逆変換部２１６からは、このX, Y, X', Y'が供給される。この場合、データ変換部２１７は、例えば以下の式（５）乃至式（７）のようにR, G, Bをそれぞれ求める。
【０１１３】
G=X+Y  ・・・（５）
B=Y-X  ・・・（６）
R=Y'-X'  ・・・（７）
【０１１４】
そして、データ変換部２１７は、このR,G,Bの各コンポーネントの整数精度の画像データをそれぞれ浮動小数点精度に変換する。
【０１１５】
また、例えば、第１の実施の形態において説明したように、RGBコンポーネントの画像データについて、上述した式（１）および式（２）のようにX, Yを定義し、このX, YとRをそれぞれ符号化する場合、ウェーブレット逆変換部２１６からは、このX, Y, Rが供給される。この場合、データ変換部２１７は、例えば、上述した式（５）および式（６）のようにG, Bを求める（Rは、変換せずに得られる）。
【０１１６】
そして、データ変換部２１７は、このR,G,Bの各コンポーネントの整数精度の画像データをそれぞれ浮動小数点精度に変換する。
【０１１７】
つまり、データ変換部２１７が、復号されて得られた差分データを整数精度の画像データに変換し、さらに、浮動小数点精度の画像データに変換するようにしてもよい。もちろん、第１の実施の形態において説明したように、差分データの生成方法（コンポーネントの組み合わせ等）は任意であり、上述した例に限定されない。いずれの場合においても、データ変換部２１７は、データ変換部１１２による整数精度化に対応する方法で浮動小数点精度化するようにすればよい。
【０１１８】
データ変換部２１７は、変換後の浮動小数点精度の画像データを画像復号装置２００の外部に出力する。なお、符号化前の画像データが整数精度であった場合、データ変換部２１７は、データ変換を省略し、供給された整数精度の画像データをそのまま画像復号装置２００の外部に出力する。
【０１１９】
図１４に示されるように、EBCOT部２１３乃至ウェーブレット逆変換部２１６をまとめて復号部２２０としてもよい。上述したEBCOT部２１３乃至ウェーブレット逆変換部２１６の構成は、画像復号装置２００が符号化データをJPEG2000方式で復号する場合の構成例である。しかしながら、画像復号装置２００の復号方式は、画像符号化装置１００の符号化方式に対応するものであれば任意であり、JPEG2000に限定されない。つまり、復号部２２０の内部の構成は任意であり、図１４の例に限定されない。画像の種類や特徴に応じて、より適したものを使い分けるのが望ましい。
【０１２０】
以上のように画像復号装置２００は、浮動小数点精度の画像データが整数精度の画像データに変換されて符号化された符号化データを復号し、得られた整数精度の画像データを浮動小数点精度に変換するので、データ長の増大を抑制し、負荷の増大を抑制することができる。特に可逆復号の場合、データ長の増大をより抑制し、負荷の増大をより抑制することができる。また、非可逆復号の場合、データ長の増大を抑制することにより、切り捨てや量子化などによる情報量の低減を抑制することができ、復号画像の画質の低減を抑制することができる。
【０１２１】
また、上述したように、符号化データに付加された、画像データの精度に関する情報を解析するので、より容易に、復号の際のデータ変換の必要性やその方法等を把握することができる。つまり、復号処理の負荷を低減させることができる。
【０１２２】
なお、ファイルフォーマット解析部２１１が解析する付加情報（画像データの精度に関する情報）は、ファイルのどの位置に格納されていてもよい。また、付加情報が符号化データのファイルと異なるファイルとしてファイル化されていてもよい。その場合、両ファイルが互いに関連付けられていれば、ファイルフォーマット解析部２１１は、その関連付けに従って容易に復号するファイルに必要な付加情報を得ることができる。さらに、付加情報が画像データの下位ビットに格納されて、符号化されていてもよい。
【０１２３】
＜画像復号処理の流れ＞
図１５のフローチャートを参照して、図１４の画像復号装置２００による画像復号処理の流れの例を説明する。符号化データを含むファイルが入力されると、画像復号処理が開始される。
【０１２４】
ファイルフォーマット解析部２１１は、ステップＳ２０１において、ファイルフォーマットを解析する。
【０１２５】
ステップＳ２０２において、データ抽出部２１２は、ステップＳ２０１の解析結果に基づいて、入力されたファイルから、画像データの符号化データを抽出する。
【０１２６】
ステップＳ２０３において、EBCOT部２１３は、ステップＳ２０１の解析結果に基づいて、抽出された符号化データをエントロピ復号する。
【０１２７】
ステップＳ２０４において、選択部２１４は、ステップＳ２０１の解析結果に基づいて、EBCOT部２１３が復号した符号化データが非可逆方式で符号化されていたか否かを判定する。非可逆方式で符号化されていたと判定された場合、処理はステップＳ２０５に進む。
【０１２８】
ステップＳ２０５において、逆量子化部２１５は、ステップＳ２０１の解析結果に基づいて、エントロピ復号されて得られた係数データを逆量子化する。逆量子化が終了すると、処理はステップＳ２０６に進む。また、ステップＳ２０４において、可逆方式で符号化されていたと判定された場合、処理はステップＳ２０６に進む。
【０１２９】
ステップＳ２０６において、ウェーブレット逆変換部２１６は、ステップＳ２０１の解析結果に基づいて、係数データをウェーブレット逆変換する。
【０１３０】
ステップＳ２０７において、データ変換部２１７は、ステップＳ２０１の解析結果に基づいて、符号化前の画像データが浮動小数点精度であるか否かを判定する。符号化前の画像データが浮動小数点精度であると判定された場合、処理はステップＳ２０８に進む。
【０１３１】
ステップＳ２０８において、データ変換部２１７は、ステップＳ２０１の解析結果に基づいて、整数精度の画像データを、符号（S）、指数部（E）、仮数部（M）に変換する。データ変換が終了すると、画像復号処理が終了する。また、ステップＳ２０７において、符号化前の画像データが整数精度であると判定された場合、画像復号処理が終了する。
【０１３２】
以上のように各処理を行うことにより、浮動小数点精度の画像データを得るための復号の負荷の増大を抑制することができる。
【０１３３】
＜３．第３の実施の形態＞
＜画像符号化装置＞
以上においては、符号、指数部、仮数部よりなる浮動小数点精度の画像データを整数精度に変換するように説明したが、これに限らず、符号、指数部、仮数部よりなる浮動小数点精度の画像データを浮動小数点精度の値ｈに変換するようにしてもよい。
【０１３４】
例えば、図２の例のように、1ビットの符号（S)、5ビットの指数部（E）、10ビットの仮数部（M）によって示される浮動小数点精度の画像データは、指数部（E）がゼロ値である場合、以下の式（８）に示されるように、浮動小数点精度の値hに変換することができる。
【０１３５】
h=(-1)s×2(-14)×(M/210)  ・・・・・（８）
【０１３６】
また、指数部（E）がゼロ値でない場合、浮動小数点精度の画像データは、以下の式（９）に示されるように、浮動小数点精度の値hに変換することができる。
【０１３７】
h=(-1)s×2(E-15)×(1＋M/210)  ・・・（９）
【０１３８】
この場合の画像符号化装置の構成例は、第１の実施の形態の場合と同様である。つまり、図１に示される画像符号化装置１００を適用することができる。
【０１３９】
ただし、この場合、データ変換部１１２は、符号、指数部、仮数部よりなる浮動小数点精度の画像データを、上述した式（８）若しくは式（９）のように、浮動小数点精度の値hに変換する。ウェーブレット変換部１１３乃至ファイルフォーマット生成部１１７は、この浮動小数点精度の値hを画像データとして処理する。また、ファイルフォーマット生成部１１７は、第１の実施の形態の場合と同様に、付加情報を生成し、例えばJPXファイルフォーマットに格納する。
【０１４０】
このようにすることにより、画像符号化装置１００は、浮動小数点精度の画像データを符号化することができる。特に非可逆符号化の場合、入力が浮動小数点精度であっても、所定ビット精度以上は切り捨てまたは丸め処理、或いは量子化によるビット深度削減効果があるため、符号化処理の負荷の増大を抑制し、オーバーフローを回避することができる。
【０１４１】
また、第１の実施の形態の場合と同様に、画像データの精度に関する情報を付加情報として符号化データに付加することにより、復号の際のデータ変換の必要性やその方法等の把握が容易になる。つまり、復号処理の負荷を低減させることもできる。
【０１４２】
なお、第１の実施の形態の場合と同様、固定小数点精度の画像データは、整数精度の画像データと同様に処理することができるため、その説明は省略する。以下においては、画像データが整数精度の場合と浮動小数点精度の場合についてのみ説明する。
【０１４３】
＜画像符号化処理の流れ＞
図１６のフローチャートを参照して、この場合の画像符号化処理の流れの例を説明する。画像データが入力されると、画像符号化処理が開始される。
【０１４４】
解析部１１１は、ステップＳ３０１において、入力された画像データを解析し、ステップＳ３０２において、その画像データが浮動小数点精度であるか否かを判定する。浮動小数点精度の画像データが入力されたと判定された場合、処理は、ステップＳ３０３に進む。
【０１４５】
ステップＳ３０３において、データ変換部１１２は、符号、指数部、仮数部からなる浮動小数点精度の画像データを、浮動小数点精度の値hに変換する。変換が終了すると、処理はステップＳ３０４に進む。また、ステップＳ３０２において、入力された画像データが整数精度であると判定された場合、処理は、ステップＳ３０４に進む。
【０１４６】
ステップＳ３０４において、ウェーブレット変換部１１３は、画像データに対してウェーブレット変換を行う。
【０１４７】
ステップＳ３０５において、選択部１１４は、非可逆方式で符号化するか否かを判定する。非可逆符号化を行うと判定された場合、処理はステップＳ３０６に進む。
【０１４８】
ステップＳ３０６において、量子化部１１５は、画像データがウェーブレット変換された係数データを量子化する。量子化が終了すると、処理はステップＳ３０７に進む。また、ステップＳ３０５において、可逆符号化を行うと判定された場合、処理はステップＳ３０７に進む。
【０１４９】
ステップＳ３０７において、EBCOT部１１６は、係数データ（若しくは量子化された係数データ）をエントロピ符号化する。
【０１５０】
ステップＳ３０８において、ファイルフォーマット生成部１１７は、画像データの精度に関する情報を含むようにファイルフォーマットを生成する。
【０１５１】
ステップＳ３０８の処理が終了すると、画像符号化処理が終了する。
【０１５２】
以上のように各処理を行うことにより、浮動小数点精度の画像データの符号化・復号の負荷の増大を抑制することができる。
【０１５３】
＜４．第４の実施の形態＞
＜画像符号化装置＞
次に、第３の実施の形態において説明した画像符号化装置１００により生成される符号化データ（コードストリーム）の復号について説明する。
【０１５４】
以上においては、第３の実施の形態において説明したように、符号、指数部、仮数部よりなる浮動小数点精度の画像データが浮動小数点精度の値hに変換されて符号化される場合、その符号化データを復号し、得られた浮動小数点精度の値hを符号、指数部、仮数部よりなる浮動小数点精度の画像データに変換するようにしてもよい。
【０１５５】
この場合の画像復号装置の構成例は、第２の実施の形態の場合と同様である。つまり、図１４に示される画像復号装置２００を適用することができる。
【０１５６】
ただし、この場合、データ変換部２１７は、浮動小数点精度の値hを、上述した式（８）若しくは式（９）を用いて、符号、指数部、仮数部よりなる浮動小数点精度の画像データに変換する。ファイルフォーマット解析部２１１乃至ウェーブレット逆変換部２１６は、第２の実施の形態の場合と同様に各処理を行う。
【０１５７】
以上のように画像復号装置２００は、符号、指数部、仮数部よりなる浮動小数点精度の画像データが浮動小数点精度の値hの画像データに変換されて符号化された符号化データを復号し、得られた浮動小数点精度の値hを符号、指数部、仮数部に変換するので、データ長の増大を抑制し、負荷の増大を抑制することができる。特に非可逆復号の場合、所定ビット精度以上は切り捨てまたは丸め処理、或いは量子化によるビット深度削減効果があるため、オーバーフローを回避することができる。
【０１５８】
また、上述したように、符号化データに付加された、画像データの精度に関する情報を解析するので、より容易に、復号の際のデータ変換の必要性やその方法等を把握することができる。つまり、復号処理の負荷を低減させることができる。
【０１５９】
＜５．第５の実施の形態＞
＜画像符号化装置＞
第１の実施の形態において説明したように、可逆符号化の場合、浮動小数点精度の画像データを整数精度の画像データに変換して符号化することにより、データ長の増大をより抑制し、負荷の増大をより抑制することができる。また、第３の実施の形態において説明したように、非可逆符号化の場合、入力画像データが浮動小数点精度であっても、所定ビット精度以上は切り捨てまたは丸め処理、或いは量子化によるビット深度削減効果があるため、符号化処理の負荷の増大を抑制し、オーバーフローを回避することができる。
【０１６０】
そこで、画像符号化装置が、可逆符号化の場合、浮動小数点精度の画像データを、整数精度の画像データに変換して符号化し、非可逆符号化の場合、浮動小数点精度の画像データを、浮動小数点精度の値に変換して符号化するようにしてもよい。
【０１６１】
つまり、データ変換部１１２が、符号化部１２０が可逆符号化を行う場合、浮動小数点精度の画像データを、整数精度の画像データに変換し、符号化部１２０が非可逆符号化を行う場合、浮動小数点精度の画像データを、浮動小数点精度の値に変換し、符号化部１２０は、可逆符号化を行う場合、データ変換部１１２により変換されて得られた整数精度の画像データを符号化し、非可逆符号化を行う場合、データ変換部１１２により変換されて得られた浮動小数点精度の値を符号化するようにしてもよい。
【０１６２】
その場合の画像符号化装置の主な構成例を、図１８に示す。図１８に示されるように、この場合、画像符号化装置５００は、選択部５０１、可逆符号化部５０２、および非可逆符号化部５０３を有する。
【０１６３】
選択部５０１は、入力された浮動小数点精度の画像データの供給先を選択する。例えば、選択部５０１は、入力された浮動小数点精度の画像データを、可逆符号化を行う場合、可逆符号化部５０２に供給し、非可逆符号化を行う場合、非可逆符号化部５０３に供給する。
【０１６４】
可逆符号化を行うか非可逆符号化を行うかは、任意の情報に基づいて決定されるようにしてよい。例えば、ユーザ等により予め設定されるようにしてもよいし、画像データや処理の負荷等に応じて適宜決定されるようにしてもよい。
【０１６５】
可逆符号化部５０２は、選択部５０１から供給された画像データに対して可逆符号化を行う。その際、可逆符号化部５０２は、第１の実施の形態と同様に、符号、指数部、仮数部からなる浮動小数点精度の画像データを、整数精度の画像データに変換して符号化する。つまり、可逆符号化部５０２は、図１の画像符号化装置１００と同様の構成を有する。ただし、可逆符号化部５０２は、可逆符号化のみ行うので、選択部１１４および量子化部１１５を省略することができる。可逆符号化部５０２は、符号化により得られた符号化データを含むファイルを画像符号化装置５００の外部に出力する。
【０１６６】
非可逆符号化部５０３は、選択部５０１から供給された画像データに対して非可逆符号化を行う。その際、非可逆符号化部５０３は、第３の実施の形態と同様に、符号、指数部、仮数部からなる浮動小数点精度の画像データを、浮動小数点精度の値hの画像データに変換して符号化する。つまり、非可逆符号化部５０３は、図１の画像符号化装置１００と同様の構成を有する。ただし、非可逆符号化部５０３は、非可逆符号化のみ行うので、選択部１１４を省略することができる。非可逆符号化部５０３は、符号化により得られた符号化データを含むファイルを画像符号化装置５００の外部に出力する。
【０１６７】
このようにすることにより、画像符号化装置５００は、可逆符号化の場合と、非可逆符号化の場合とで、データ変換の方法や符号化方法を切り替え、いずれの場合も、符号化処理の負荷の増大を抑制し、オーバーフローを回避することができる。また、画像符号化装置５００は、画像データの精度に関する情報を付加情報として符号化データに付加するので、復号の際のデータ変換の必要性やその方法等の把握が容易になり、復号処理の負荷を低減させることもできる。
【０１６８】
＜画像符号化処理の流れ＞
図１９のフローチャートを参照して、この場合の画像符号化処理の流れの例を説明する。画像データが入力されると、画像符号化処理が開始される。
【０１６９】
ステップＳ５０１において、選択部５０１は、入力された画像データを可逆方式で符号化するか否かを判定する。可逆符号化を行うと判定された場合、処理はステップＳ５０２に進む。
【０１７０】
ステップＳ５０２において、可逆符号化部５０２は、入力された画像データの浮動小数点精度の符号（S）、指数部（E）、仮数部（M）を、整数精度の画像データに変換し、可逆符号化を行う。ステップＳ５０２の処理は、図１３のフローチャートを参照して説明した画像符号化処理と同様であるのでその説明を省略する。ただし、可逆符号化が行われるので、図１３のステップＳ１０５およびステップＳ１０６の処理は省略してもよい。
【０１７１】
ステップＳ５０２の処理が終了すると、画像符号化処理が終了する。
【０１７２】
また、ステップＳ５０１において、非可逆符号化を行うと判定された場合、処理はステップＳ５０３に進む。
【０１７３】
ステップＳ５０３において、非可逆符号化部５０３は、入力された画像データの浮動小数点精度の符号（S）、指数部（E）、仮数部（M）を、浮動小数点精度の値hの画像データに変換し、非可逆符号化を行う。ステップＳ５０３の処理は、図１６のフローチャートを参照して説明した画像符号化処理と同様であるのでその説明を省略する。ただし、非可逆符号化が行われるので、図１６のステップＳ３０５の処理は省略してもよい。
【０１７４】
ステップＳ５０３の処理が終了すると、画像符号化処理が終了する。
【０１７５】
以上のように、各処理を実行することにより、浮動小数点精度の画像データの符号化・復号の負荷の増大を抑制することができる。
【０１７６】
＜６．第６の実施の形態＞
＜画像復号装置＞
次に、第５の実施の形態において説明した画像符号化装置５００により生成される符号化データ（コードストリーム）の復号について説明する。
【０１７７】
画像符号化装置５００に対応して、画像復号装置においても、可逆復号の場合、符号化データを復号し、得られた整数精度の画像データを浮動小数点精度の画像データに変換し、非可逆復号の場合、符号化データを復号し、得られた浮動小数点精度の値hの画像データを、符号、指数部、仮数部よりなる浮動小数点精度の画像データに変換するようにしてもよい。
【０１７８】
つまり、符号化データが、符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された整数精度の画像データが可逆符号化されたものである場合、復号部２２０は、符号化データを可逆復号し、データ変換部１１２は、復号部２２０により可逆復号されて得られた整数精度の画像データを浮動小数点精度の画像データに変換するようにしてもよい。また、符号化データが、符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された浮動小数点精度の値が非可逆符号化されたものである場合、復号部２２０は、符号化データを非可逆復号し、データ変換部２１７は、復号部２２０により非可逆復号されて得られた浮動小数点精度の値を浮動小数点精度の画像データに変換するようにしてもよい。
【０１７９】
その場合の画像復号装置の主な構成例を、図２０に示す。図２０に示されるように、この場合、画像復号装置６００は、選択部６０１、可逆復号部６０２、および非可逆復号部６０３を有する。
【０１８０】
選択部６０１は、入力された符号化データを含むファイルの供給先を選択する。例えば、選択部６０１は、符号化データを可逆復号する場合、入力されたファイルを可逆復号部６０２に供給する。また、選択部６０１は、符号化データを非可逆復号する場合、入力されたファイルを非可逆復号部６０３に供給する。
【０１８１】
可逆復号部６０２は、選択部６０１から供給されたファイルに対して可逆復号を行う。その際、可逆復号部６０２は、第２の実施の形態と同様に、ファイルから符号化データを抽出して可逆復号し、得られた整数精度の画像データを、符号、指数部、仮数部からなる浮動小数点精度の画像データに変換する。つまり、可逆復号部６０２は、図１４の画像復号装置２００と同様の構成を有する。ただし、可逆復号部６０２は、可逆復号のみ行うので、選択部２１４および逆量子化部２１５を省略することができる。可逆復号部６０２は、得られた、符号、指数部、仮数部からなる浮動小数点精度の画像データを画像復号装置６００の外部に出力する。
【０１８２】
非可逆復号部６０３は、選択部６０１から供給されたファイルに対して非可逆符号化を行う。その際、非可逆復号部６０３は、第４の実施の形態と同様に、ファイルから符号化データを抽出して非可逆復号し、得られた浮動小数点精度の値hの画像データを、符号、指数部、仮数部からなる浮動小数点精度の画像データに変換する。つまり、非可逆復号部６０３は、図１４の画像復号装置２００と同様の構成を有する。ただし、非可逆復号部６０３は、非可逆復号のみ行うので、選択部２１４を省略することができる。非可逆復号部６０３は、得られた、符号、指数部、仮数部からなる浮動小数点精度の画像データを画像復号装置６００の外部に出力する。
【０１８３】
このようにすることにより、画像復号装置６００は、可逆復号の場合と、非可逆復号の場合とで、データ変換の方法を切り替え、いずれの場合も、符号化処理の負荷の増大を抑制し、オーバーフローを回避することができる。また、画像復号装置６００は、付加情報として符号化データに付加された、画像データの精度に関する情報を参照し、その情報に基づいて復号を行うので、データ変換の必要性やその方法等を容易に把握することができ、復号処理の負荷を低減させることもできる。
【０１８４】
＜画像符号化処理の流れ＞
図２１のフローチャートを参照して、この場合の画像復号処理の流れの例を説明する。画像データが入力されると、画像復号処理が開始される。
【０１８５】
ステップＳ６０１において、選択部６０１は、入力されたファイルの符号化データが可逆方式で符号化されているか否かを判定する。可逆符号化されていると判定された場合、処理はステップＳ６０２に進む。
【０１８６】
ステップＳ６０２において、可逆復号部６０２は、入力されたファイルから符号化データを抽出し、その符号化データに対して可逆復号を行い、得られた整数精度の画像データを、符号（S）、指数部（E）、仮数部（M）からなる浮動小数点精度の画像データに変換する。ステップＳ６０２の処理は、図１５のフローチャートを参照して説明した画像復号処理と同様であるのでその説明を省略する。ただし、可逆復号が行われるので、図１５のステップＳ２０４およびステップＳ２０５の処理は省略してもよい。
【０１８７】
ステップＳ６０２の処理が終了すると、画像復号処理が終了する。また、ステップＳ６０１において、非可逆符号化されていると判定された場合、処理はステップＳ６０３に進む。
【０１８８】
ステップＳ６０３において、非可逆復号部６０３は、入力されたファイルから符号化データを抽出し、その符号化データに対して非可逆復号を行い、得られた浮動小数点精度の値hの画像データを、符号（S）、指数部（E）、仮数部（M）からなる浮動小数点精度の画像データに変換する。ただし、非可逆復号が行われるので、図１５のステップＳ２０４の処理は省略してもよい。
【０１８９】
ステップＳ６０３の処理が終了すると、画像復号処理が終了する。
【０１９０】
以上のように、各処理を実行することにより、浮動小数点精度の画像データの復号の負荷の増大を抑制することができる。
【０１９１】
＜７．第７の実施の形態＞
＜コンピュータ＞
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
【０１９２】
図２２は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
【０１９３】
図２２に示されるコンピュータ７００において、CPU（Central Processing Unit）７０１、ROM（Read Only Memory）７０２、RAM（Random Access Memory）７０３は、バス７０４を介して相互に接続されている。
【０１９４】
バス７０４にはまた、入出力インタフェース７１０も接続されている。入出力インタフェース７１０には、入力部７１１、出力部７１２、記憶部７１３、通信部７１４、およびドライブ７１５が接続されている。
【０１９５】
入力部７１１は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部７１２は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部７１３は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部７１４は、例えば、ネットワークインタフェースよりなる。ドライブ７１５は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブルメディア７２１を駆動する。
【０１９６】
以上のように構成されるコンピュータでは、CPU７０１が、例えば、記憶部７１３に記憶されているプログラムを、入出力インタフェース７１０およびバス７０４を介して、RAM７０３にロードして実行することにより、上述した一連の処理が行われる。RAM７０３にはまた、CPU７０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０１９７】
コンピュータ（CPU７０１）が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア７２１に記録して適用することができる。その場合、プログラムは、リムーバブルメディア７２１をドライブ７１５に装着することにより、入出力インタフェース７１０を介して、記憶部７１３にインストールすることができる。
【０１９８】
また、このプログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することもできる。その場合、プログラムは、通信部７１４で受信し、記憶部７１３にインストールすることができる。
【０１９９】
その他、このプログラムは、ROM７０２や記憶部７１３に、あらかじめインストールしておくこともできる。
【０２００】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０２０１】
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０２０２】
また、上述した各ステップの処理は、上述した各装置、若しくは、上述した各装置以外の任意の装置において、実行することができる。その場合、その処理を実行する装置が、上述した、その処理を実行するのに必要な機能（機能ブロック等）を有するようにすればよい。また、処理に必要な情報を、適宜、その装置に伝送するようにすればよい。
【０２０３】
また、本明細書において、システムとは、複数の構成要素（装置、モジュール（部品）等）の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、１つの筐体の中に複数のモジュールが収納されている１つの装置は、いずれも、システムである。
【０２０４】
また、以上において、１つの装置（または処理部）として説明した構成を分割し、複数の装置（または処理部）として構成するようにしてもよい。逆に、以上において複数の装置（または処理部）として説明した構成をまとめて１つの装置（または処理部）として構成されるようにしてもよい。また、各装置（または各処理部）の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置（または処理部）の構成の一部を他の装置（または他の処理部）の構成に含めるようにしてもよい。
【０２０５】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０２０６】
例えば、本技術は、１つの機能を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
【０２０７】
また、上述のフローチャートで説明した各ステップは、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０２０８】
さらに、１つのステップに複数の処理が含まれる場合には、その１つのステップに含まれる複数の処理は、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０２０９】
また、本技術は、これに限らず、このような装置またはシステムを構成する装置に搭載するあらゆる構成、例えば、システムLSI（Large Scale Integration）等としてのプロセッサ、複数のプロセッサ等を用いるモジュール、複数のモジュール等を用いるユニット、ユニットにさらにその他の機能を付加したセット等（すなわち、装置の一部の構成）として実施することもできる。
【０２１０】
例えば、本技術は、撮像素子（例えば、CMOS（Complementary Metal Oxide Semiconductor）イメージセンサやCCD（Charge Coupled Device）イメージセンサ等）からキャプチャした画像を用いた機器やデバイス、撮像素子画像をメモリに書き込むまでの圧縮回路、デジタルスチルカメラ、動画用カムコーダ、医療用画像カメラ、医療用内視鏡、監視カメラ、デジタルシネマ撮影用カメラ、両眼画像カメラ、多眼画像カメラ、LSIチップでのメモリ削減回路、パーソナルコンピュータ上のオーサリング・ツールまたはそのソフトウェア・モジュール等に適用することができる。
【０２１１】
なお、本技術は以下のような構成も取ることができる。
（１）  符号、指数部、仮数部よりなる浮動小数点精度の画像データを整数精度の画像データに変換するデータ変換部と、
前記データ変換部により変換されて得られた前記整数精度の画像データを符号化する符号化部と
を備える画像処理装置。
（２）  前記データ変換部は、前記画像データを、画素毎に、前記符号のデータ、前記指数部のデータ、および前記仮数部のデータの順にMSBからLSBに向かって並べた１つの整数精度のデータに変換する
（１）に記載の画像処理装置。
（３）  前記データ変換部は、前記画像データを、画素毎に、前記符号のデータ、前記指数部のデータ、および前記仮数部のデータのそれぞれが互いに独立した３つの整数精度の画像データに変換する
（１）または（２）に記載の画像処理装置。
（４）  前記データ変換部は、前記画像データの各ピクチャの先頭画素について、前記符号のデータ、前記指数部のデータ、および前記仮数部のデータのそれぞれを、互いに独立した３つの整数精度の画像データに変換し、その他の画素について、前記指数部のデータおよび前記仮数部のデータを、互いに独立した２つの整数精度の画像データに変換する
（１）乃至（３）のいずれかに記載の画像処理装置。
（５）  前記データ変換部は、さらに、前記整数精度の画像データを、画素毎に、コンポーネント間の差分データに変換し、
前記符号化部は、前記データ変換部により変換されて得られた前記差分データを符号化する
（１）乃至（４）のいずれかに記載の画像処理装置。
（６）  前記データ変換部は、
前記符号化部が可逆符号化を行う場合、前記浮動小数点精度の画像データを、前記整数精度の画像データに変換し、
前記符号化部が非可逆符号化を行う場合、前記浮動小数点精度の画像データを、浮動小数点精度の値に変換し、
前記符号化部は、
前記可逆符号化を行う場合、前記データ変換部により変換されて得られた前記整数精度の画像データを符号化し、
前記非可逆符号化を行う場合、前記データ変換部により変換されて得られた前記浮動小数点精度の値を符号化する
（１）乃至（５）のいずれかに記載の画像処理装置。
（７）  前記符号化部は、JPEG2000符号化方式により前記画像データを符号化する
（１）乃至（６）のいずれかに記載の画像処理装置。
（８）  前記データ変換部のデータ変換に関する情報を、前記符号化部により符号化されて得られた符号化データに付加する付加部をさらに備える
（１）乃至（７）のいずれかに記載の画像処理装置。
（９）  前記符号化部は、JPEG2000符号化方式により前記画像データを符号化し、
前記付加部は、前記情報を、JPXファイルフォーマット内の所定の位置に付加する
（８）に記載の画像処理装置。
（１０）  符号、指数部、仮数部よりなる浮動小数点精度の画像データを整数精度の画像データに変換し、
変換されて得られた前記整数精度の画像データを符号化する
画像処理方法。
（１１）  符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された整数精度の画像データの符号化データを復号する復号部と、
前記復号部により復号されて得られた前記整数精度の画像データを前記浮動小数点精度の画像データに変換するデータ変換部と
を備える画像処理装置。
（１２）  前記データ変換部は、前記整数精度の画像データを、ビット数に従って３つのデータに分離し、MSBからLSBに向かう順に、前記符号のデータ、前記指数部のデータ、および前記仮数部のデータとする
（１１）に記載の画像処理装置。
（１３）  前記データ変換部は、前記整数精度の画像データを、前記符号のデータ、前記指数部のデータ、前記仮数部のデータのいずれかとする
（１１）または（１２）に記載の画像処理装置。
（１４）  前記データ変換部は、前記画像データの各ピクチャの先頭画素について、前記整数精度の画像データを、前記符号のデータ、前記指数部のデータ、前記仮数部のデータのいずれかとし、その他の画素について、前記整数精度の画像データを、前記指数部のデータ若しくは前記仮数部のデータとする
（１１）乃至（１３）のいずれかに記載の画像処理装置。
（１５）  前記復号部は、前記整数精度の画像データのコンポーネント間の差分データの符号化データを復号し、
前記データ変換部は、前記復号部により復号されて得られた、前記差分データを前記整数精度の画像データに変換し、さらに、前記浮動小数点精度の画像データに変換する
（１１）乃至（１４）のいずれかに記載の画像処理装置。
（１６）  前記符号化データが、符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された整数精度の画像データが可逆符号化されたものである場合、
前記復号部は、前記符号化データを可逆復号し、
前記データ変換部は、前記復号部により可逆復号されて得られた前記整数精度の画像データを前記浮動小数点精度の画像データに変換し、
前記符号化データが、符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された浮動小数点精度の値が非可逆符号化されたものである場合、
前記復号部は、前記符号化データを非可逆復号し、
前記データ変換部は、前記復号部により非可逆復号されて得られた前記浮動小数点精度の値を前記浮動小数点精度の画像データに変換する
（１１）乃至（１５）のいずれかに記載の画像処理装置。
（１７）  前記符号化データは、JPEG2000符号化方式により符号化されており、
前記復号部は、JPEG2000復号方式により前記符号化データを復号する
（１１）乃至（１６）のいずれかに記載の画像処理装置。
（１８）  前記符号化データに付加された画像データのデータ変換に関する情報を解析する解析部をさらに備え、
前記データ変換部は、前記解析部による解析結果に従って、前記画像データを前記浮動小数点精度の画像データに変換する
（１１）乃至（１７）のいずれかに記載の画像処理装置。
（１９）  前記符号化データは、JPEG2000符号化方式により符号化されており、
前記解析部は、前記符号化データのJPXファイルフォーマット内の所定の位置に付加された前記情報を解析し、
前記復号部は、JPEG2000復号方式により前記符号化データを復号する
（１８）に記載の画像処理装置。
（２０）  符号、指数部、仮数部よりなる浮動小数点精度の画像データが変換された整数精度の画像データの符号化データを復号し、
復号されて得られた前記整数精度の画像データを前記浮動小数点精度の画像データに変換する
画像処理方法。
【符号の説明】
【０２１２】
１００  画像符号化装置，  １１１  解析部，  １１２  データ変換部，  １１３  ウェーブレット変換部，  １１４  選択部，  １１５  量子化部，  １１６  EBCOT部，  １１７  ファイルフォーマット生成部，  １２０  符号化部，  ２００  画像復号装置，  ２１１  ファイルフォーマット解析部，  ２１２  データ抽出部，  ２１３  EBCOT部，  ２１４  選択部，  ２１５  逆量子化部，  ２１６  ウェーブレット逆変換部，  ２１７  データ変換部，  ２２０  復号部，  ５００  画像符号化装置，  ５０１  選択部，  ５０２  可逆符号化部，  ５０３  非可逆符号化部，  ６００  画像復号装置，  ６０１  選択部，  ６０２  可逆復号部，  ６０３  非可逆復号部，  ７００  コンピュータ
【図１】
2016002577.tif 000003
【図２】
2016002577.tif 000004
【図３】
2016002577.tif 000005
【図４】
2016002577.tif 000006
【図５】
2016002577.tif 000007
【図６】
2016002577.tif 000008
【図７】
2016002577.tif 000009
【図８】
2016002577.tif 000010
【図９】
2016002577.tif 000011
【図１０】
2016002577.tif 000012
【図１１】
2016002577.tif 000013
【図１２】
2016002577.tif 000014
【図１３】
2016002577.tif 000015
【図１４】
2016002577.tif 000016
【図１５】
2016002577.tif 000017
【図１６】
2016002577.tif 000018
【図１７】
2016002577.tif 000019
【図１８】
2016002577.tif 000020
【図１９】
2016002577.tif 000021
【図２０】
2016002577.tif 000022
【図２１】
2016002577.tif 000023
【図２２】
2016002577.tif 000024
【国際調査報告】
2016002577.tif 000025
2016002577.tif 000026
2016002577.tif 000027
2016002577.tif 000028