(57)【要約】【課題】データの圧縮率と画質の均衡がとれた画像データ圧縮装置および画像データ圧縮プログラムを提供する。【解決手段】画像データ圧縮装置において、数値の連続からなる被圧縮データに可逆圧縮処理を施す可逆圧縮部２と、数値の連続からなる被圧縮データに非可逆圧縮処理を施す非可逆圧縮部５と、画像を構成する複数の画素を表す複数の画素値における最大値と最小値との差が所定の下限から所定の上限までの範囲内である場合には、非可逆圧縮部にこの複数の画素値を被圧縮データとした非可逆圧縮処理を実行させ、この差が上記範囲外である場合には、可逆圧縮部にこの画素値を上記被圧縮データとした可逆圧縮処理を実行させる圧縮制御部６とを備えたことを特徴とする。【選択図】        図４
2011019059.tif 000002
【特許請求の範囲】
【請求項１】
数値の連続からなる被圧縮データに可逆圧縮処理を施す可逆圧縮部と、
数値の連続からなる被圧縮データに非可逆圧縮処理を施す非可逆圧縮部と、
画像を構成する複数の画素を表す複数の画素値における最大値と最小値との差が所定の上限から所定の下限までの範囲内である場合には、前記非可逆圧縮部に該複数の画素値を被圧縮データとした非可逆圧縮処理を実行させ、該差が前記範囲外である場合には、前記可逆圧縮部に該画素値を前記被圧縮データとした可逆圧縮処理を実行させる圧縮制御部とを備えたことを特徴とする画像データ圧縮装置。
【請求項２】
前記圧縮制御部が、１つの画面が区分けされた複数のブロックそれぞれの画像について、前記可逆圧縮処理および前記非可逆圧縮処理のうち該ブロック内での最大値と最小値との差に応じた方の圧縮処理を実行させるものであることを特徴とする請求項１記載の画像データ圧縮装置。
【請求項３】
前記可逆圧縮部が、
前記被圧縮データを構成する数値の連続について直接に隣接し、あるいは一定間隔を空けて隣り合った数値どうしの差分を求めることにより該差分を表わす数値の連続からなる新たな被圧縮データを生成する差分生成部と、
前記差分生成部によって生成された新たな被圧縮データを構成する各数値を所定値だけオフセットさせるオフセット部と、
前記オフセット部によって数値がオフセットされた被圧縮データの各数値を、前記単位ビット数よりも小さい所定の分割ビット数のところで上位ビット部分と下位ビット部分とに分けることによって、該被圧縮データを、各数値における上位ビット部分の連続からなる上位データと各数値の下位ビット部分の連続からなる下位データとに分割する分割部と、
上位データ中、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、該圧縮対象数値と、該圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する連続符号化部と、
対応符号と数値を対応づけるテーブルを用いて、前記連続符号化部で符号化された後のデータにエントロピー符号化を施すエントロピー符号化部とを備えたことを特徴とする請求項１または２記載の画像データ圧縮装置。
【請求項４】
前記非可逆圧縮部が、
前記被圧縮データを構成する数値の連続から周期的に数値を間引くことにより、その間引きで該被圧縮データから取り出された数値の連続からなる第１の被圧縮データと、残りの数値の連続からなる第２の被圧縮データとを作成する間引き処理部と、
前記間引き処理部で作成された第２の被圧縮データを構成する数値について、その数値を単位ビット数よりも少ない少ビット数で表現し直した数値を出力するビット数制限部とを備えたことを特徴とする請求項１から３いずれか１項記載の画像データ圧縮装置。
【請求項５】
プログラムを実行する情報処理装置内に組み込まれて該情報処理装置に、データ圧縮処理を実行させる画像データ圧縮プログラムにおいて、
数値の連続からなる被圧縮データに可逆圧縮処理を施す可逆圧縮部と、
数値の連続からなる被圧縮データに非可逆圧縮処理を施す非可逆圧縮部と、
画像を構成する複数の画素を表す複数の画素値における最大値と最小値との差が所定の下限から所定の上限までの範囲内である場合には、前記非可逆圧縮部に該複数の画素値を被圧縮データとした非可逆圧縮処理を実行させ、該差が前記範囲外である場合には、前記可逆圧縮部に該画素値を前記被圧縮データとした可逆圧縮処理を実行させる圧縮制御部とを備えたことを特徴とする画像データ圧縮プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像を表わす画像データを圧縮する画像データ圧縮装置および画像データ圧縮プログラムに関する。
【背景技術】
【０００２】
画像データを通信や格納のために圧縮する画像データ圧縮装置が知られており、圧縮アルゴリズムとして、例えばＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）方式に代表されるような、圧縮前のデータを完全に復元しないことを前提とする代わりに量子化によって圧縮率が高められた非可逆圧縮のアルゴリズムが知られている。また、１つの画面をブロックに分け、隣接サンプルを用いて求めた予測誤差の、各ブロック内における最大値に基づいて量子化幅を決定し、決定した量子化幅で差分ＰＣＭ（Ｐｕｌｓｅ  Ｃｏｄｅ  Ｍｏｄｕｌａｔｉｏｎ）符号化処理するデータ圧縮方法が知られている（例えば、特許文献１参照。）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平５−９５４８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、圧縮率を高めるため非可逆圧縮の処理を行うと、量子化幅の調整によっても伸張処理で元のデータが得られず、例えば文字部分やコントラストの高い画像は不鮮明となり画質が損なわれる。このように、圧縮処理において圧縮率と画質の均衡をとることは容易でない。
【０００５】
本発明は上記問題点を解決し、データの圧縮率と画質の均衡がとれた画像データ圧縮装置および画像データ圧縮プログラムを提供することを目的とするものである。
【課題を解決するための手段】
【０００６】
上記目的を達成する本発明の画像データ圧縮装置は、
数値の連続からなる被圧縮データに可逆圧縮処理を施す可逆圧縮部と、
数値の連続からなる被圧縮データに非可逆圧縮処理を施す非可逆圧縮部と、
画像を構成する複数の画素を表す複数の画素値における最大値と最小値との差が所定の上限から所定の下限までの範囲内である場合には、上記非可逆圧縮部にこの複数の画素値を被圧縮データとした非可逆圧縮処理を実行させ、この差が上記範囲外である場合には、上記可逆圧縮部にこの画素値を上記被圧縮データとした可逆圧縮処理を実行させる圧縮制御部とを備えたことを特徴とする。
【０００７】
本発明の画像データ圧縮装置では、複数の画素値における最大値と最小値との差が所定の範囲内である場合には非可逆圧縮が実行され、差が所定の範囲外である場合には可逆圧縮処理が実行される。文字やコントラストの高い部分を含んだ画像は、一般的に画素値の最大値と最小値の差が大きい。このため、文字やコントラストの高い部分を含んだ画像は可逆圧縮によって画質劣化が抑えられる。また、画素値が近接した画素のみで構成された、いわゆるベタ画像は可逆圧縮によっても高い圧縮率が期待できるので可逆圧縮を実行する。この一方、一般的に画素値の最大値と最小値の差が小さい自然画は非可逆圧縮処理によって高い圧縮率で圧縮されるので、データの圧縮率と画質の均衡がとられる。
【０００８】
ここで、上記本発明の画像データ圧縮装置において、上記圧縮制御部が、１つの画面が区分けされた複数のブロックそれぞれの画像について、上記可逆圧縮処理および上記非可逆圧縮処理のうちこのブロック内での最大値と最小値との差に応じた方の圧縮処理を実行させるものであることが好ましい。
【０００９】
１つの画面内のブロックごとに最適な圧縮処理が実行されるので、１つの画面の画像データの圧縮について、データの圧縮率と画質の均衡がとられる。
【００１０】
また、上記本発明の画像データ圧縮装置において、上記可逆圧縮部が、
上記被圧縮データを構成する数値の連続について直接に隣接し、あるいは一定間隔を空けて隣り合った数値どうしの差分を求めることによりこの差分を表わす数値の連続からなる新たな被圧縮データを生成する差分生成部と、
上記差分生成部によって生成された新たな被圧縮データを構成する各数値を所定値だけオフセットさせるオフセット部と、
上記オフセット部によって数値がオフセットされた被圧縮データの各数値を、上記単位ビット数よりも小さい所定の分割ビット数のところで上位ビット部分と下位ビット部分とに分けることによって、この被圧縮データを、各数値における上位ビット部分の連続からなる上位データと各数値の下位ビット部分の連続からなる下位データとに分割する分割部と、
上位データ中、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、この圧縮対象数値と、この圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する連続符号化部と、
対応符号と数値を対応づけるテーブルを用いて、上記連続符号化部で符号化された後のデータにエントロピー符号化を施すエントロピー符号化部とを備えたことが好ましい。
【００１１】
隣り合った数値どうしの差分を求めオフセットされた後に上位データと下位データとに分割された場合、特に上位データについては値に対する出現頻度が偏在化する傾向にあるので、連続数を表わす数値とに符号化して出力するエントロピー符号化を施すことにより、可逆圧縮としつつ圧縮率を高めることができる。
【００１２】
また、上記本発明の画像データ圧縮装置において、上記非可逆圧縮部が、
上記被圧縮データを構成する数値の連続から周期的に数値を間引くことにより、その間引きでこの被圧縮データから取り出された数値の連続からなる第１の被圧縮データと、残りの数値の連続からなる第２の被圧縮データとを作成する間引き処理部と、
上記間引き処理部で作成された第２の被圧縮データを構成する数値について、その数値を単位ビット数よりも少ない少ビット数で表現し直した数値を出力するビット数制限部とを備えたものであることが好ましい。
【００１３】
非可逆圧縮部において、数値の連続から周期的に数値を間引き、残りの数値を少ビット数で表現し直す方式により、画質の損失を抑えつつより圧縮率を高めることができる。
【００１４】
また、上記目的を達成する本発明の画像データ圧縮プログラムは、プログラムを実行する情報処理装置内に組み込まれて該情報処理装置に、データ圧縮処理を実行させる画像データ圧縮プログラムであって、
数値の連続からなる被圧縮データに可逆圧縮処理を施す可逆圧縮部と、
数値の連続からなる被圧縮データに非可逆圧縮処理を施す非可逆圧縮部と、
画像を構成する複数の画素を表す複数の画素値における最大値と最小値との差が所定の下限から所定の上限までの範囲内である場合には、前記非可逆圧縮部に該複数の画素値を被圧縮データとした非可逆圧縮処理を実行させ、該差が前記範囲外である場合には、前記可逆圧縮部に該画素値を前記被圧縮データとした可逆圧縮処理を実行させる圧縮制御部とを備えたことを特徴とする。
【発明の効果】
【００１５】
以上説明したように、本発明によれば、文字や線画の画質劣化を抑えつつ、データの圧縮率を向上した画像データ圧縮装置および画像データ圧縮プログラムが実現する。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施形態が応用された放射線画像診断システムの構成図である。
【図２】図１に示す圧縮処理部のハードウェア構成を示すブロック図である。
【図３】画像データ圧縮プログラムの構成を示す図である。
【図４】図１に示す圧縮処理部を示すブロック図である。
【図５】圧縮制御部が受け取ったデータの画面を示す図である。
【図６】ブロックの画像における最大値と最小値との差と、圧縮処理の種類を説明する図である。
【図７】図４に示す可逆圧縮部の内部構成を示すブロック図である。
【図８】差分符号化部に供給される画像データの構造を示す図である。
【図９】差分符号化部において２次元差分符号化処理が施された後のデータの構造を示す図である。
【図１０】図７に示す差分符号化部における２次元差分符号化処理を例示して示す図である。
【図１１】制御部から差分符号化部に供給された画像データのヒストグラムの例を示す図である。
【図１２】図１１に示す画像データに対する差分符号化およびオフセットの効果を示す図である。
【図１３】プレーン分割部によるデータ分割の効果を説明する図である。
【図１４】図７に示すランレングス符号化部での符号化の説明図である。
【図１５】ランレングス符号化部における、圧縮対象数値を対象にした符号化のアルゴリズムを示す図である。
【図１６】図７のランレングス符号化部における、連続数に応じた符号化処理の例を示す図である。
【図１７】データスキャン部によるスキャニング結果の例を示す図である。
【図１８】ハフマンテーブルの一例を示す図である。
【図１９】ハフマンテーブルに用意される符号列の具体例を示す図である。
【図２０】図７に示す非可逆圧縮部を示す図である。
【図２１】図２０の間引き処理部で行われる間引き処理の概念を示す図である。
【図２２】４ビット符号への符号化方式を表す図である。
【図２３】データの画面が図５とは異なるブロックに区分けされた例を示す図である。
【発明を実施するための形態】
【００１７】
以下図面を参照して本発明の実施の形態を説明する。
【００１８】
図１は、本発明の一実施形態が応用された放射線画像診断システムの構成図である。
【００１９】
図１に示された放射線画像診断システムＳは、放射線照射装置１、放射線源制御装置１２、放射線検出ユニット３、および、システムコントローラ４を備えている。
【００２０】
放射線照射装置１は、Ｘ線を照射する放射線源１１および放射線源制御装置１２を備えている。放射線源１１は、放射線源制御装置１２によりＸ線の照射が制御されている。
【００２１】
放射線検出ユニット３は、放射線源１１から発せられて被写体を透過してきた放射線に応じた放射線画像を検出し、検出した放射線画像を表す画像データをさらに圧縮し、システムコントローラ４に無線で送信する。
【００２２】
システムコントローラ４は、送信されてきた圧縮データを伸張し、伸張された画像データをディスプレイ上に表示し、また、必要に応じて画像データに診断に必要な処理を行う。
【００２３】
システムコントローラ４には、ＣＰＵ４１、メモリ４２、表示部４４、通信インターフェース（以下、インターフェースをＩ／Ｆと略記する。）４５、伸張処理部４７、および、線源制御部４６が備えられており、これらはバスで相互に接続されている。
【００２４】
ＣＰＵ４１はメモリ４２に記憶されたプログラムを実行し、システムコントローラ４全体や放射線検出ユニット３を制御する。通信Ｉ／Ｆ４５は、前述したように放射線検出ユニット３との無線通信を担っており、このシステムコントローラ４は、この通信Ｉ／Ｆ４５を経由して圧縮された画像データを取り込むことができ、後述する、放射線検出ユニット３の制御部３５に対する指示をこの通信Ｉ／Ｆ４５を経由して送信する。
【００２５】
線源制御部４６は、放射線源１１による放射線の照射に関する指示を放射線源制御装置１２に送信し、放射線源制御装置１２は、受信した指示に応じて放射線源１１を制御する。
【００２６】
伸張処理部４７では、放射線検出ユニット３から送信され、通信Ｉ／Ｆ４５を通じて受信した圧縮画像データを圧縮前の画像データに復元する。上述のメモリ４２には、受信した圧縮画像データや復元された画像データも一時的に記録されている。
【００２７】
放射線検出ユニット３は、放射線撮影器３１、アナログ信号処理部３２、アナログ／デジタル（以下、アナログ／デジタルをＡ／Ｄと略記する。）コンバータ部３３、薄膜トランジスタ（以下、薄膜トランジスタをＴＦＴと略記する。）駆動部３４、制御部３５、通信Ｉ／Ｆ３６、および圧縮処理部Ｃを有している。
【００２８】
放射線撮影器３１は、ガドリニウム硫酸化物（以下、ガドリニウム硫酸化物をＧＯＳと略記する。）を材料としたＧＯＳ蛍光体３１１と、ＴＦＴアレイ上の格子点毎に作り込まれたフォトダイオード部３１２とからなり、ＧＯＳ蛍光体３１１は、放射線源１１から発せられて被写体を透過してきた放射線をそのエネルギーの大きさに応じた可視光に変換する。フォトダイオード部３１２では、可視光が電気信号に変換される。アナログ信号処理部３２は、電気信号の処理を行うオペアンプとコンデンサとで構成されている。ＴＦＴ駆動部３４はスイッチング手段であり、スイッチオンで、受光した放射線のエネルギーに応じてＧＯＳ蛍光体３１１を発光させ、この光をフォトダイオード部３１２で電気信号に変換させる。電気信号はアナログ信号処理部３２に取り込まれる。信号はアナログ信号処理部３２で処理された後、Ａ／Ｄコンバータ部３３でデジタルデータに変換されて出力される。放射線撮影器３１が受けた放射線による放射線画像の画像データはこのようにして生成される。デジタルデータである画像データは、制御部３５を経由して圧縮処理部Ｃに入力される。このとき制御部３５は、画像データに撮影のシリアル番号を含む情報を文字の画像として追加する。
【００２９】
圧縮処理部Ｃは、詳しくは後述する手法でデジタルデータのデータ量を圧縮して通信Ｉ／Ｆ３６を経由してシステムコントローラ側へ無線送信する。制御部３５では、システムコントローラ４のＣＰＵ４１からの指示に従って、ＴＦＴ駆動部３４、アナログ信号処理部３２、およびＡ／Ｄコンバータ部３３の駆動、圧縮処理部Ｃにおける圧縮処理の実施、通信Ｉ／Ｆ３６による圧縮データの送信等を行わせる。
【００３０】
次に、放射線画像診断システムＳにおける動作の流れについて説明する。なお、以下では、この放射線画像診断システムＳを使用するユーザが、各構成装置の電源をオンにし、被写体を所定の立ち位置に立たせた上で、被写体に対するＸ線撮影を実施しようとする際、システムコントローラ４の表示部にＸ線撮影が可能であることを表す表示がされるのを待って、放射線源１１からのＸ線放射用のスイッチ押下を待機している状態を前提として話を進める。
【００３１】
システムコントローラ４は、まずＣＰＵ４１が放射線検出ユニット３の制御部３５に対し放射線検出ユニット３の各部の状態の把握を指示し、放射線検出ユニット３の制御部３５は、圧縮処理部Ｃに、データの受け入れが可能な状態であるか否かを判定させ、圧縮処理部Ｃが保持するレジスタに状態を表すコード値を書き込ませ、制御部３５が書き込まれたコード値を読み出し、その読み出したコード値がＲＥＡＤＹ状態であることを表す値であると判定すると、圧縮処理部以外の各部に問題が無ければ、システムコントローラ４のＣＰＵ４１に対し、放射線検出ユニット３がＲＥＡＤＹ状態であることを表す信号を送信する。これを受けて、システムコントローラ４では、表示部４４に撮影可能であることを表わす旨の表示を行う。その後、放射線検出ユニット３の制御部３５では、システムコントローラ４からの撮影実施の通知を待って、放射線検出ユニット３の各部を制御して、放射線源１１から発せられて被写体を透過してきた放射線を検出し、放射線画像をデジタルデータ化する。制御部３５は、１フレーム分のデジタルデータを圧縮処理部Ｃに入力すると、１フレーム分のデジタルデータに撮影のシリアル番号を含む情報を文字の画像として追加しこれを圧縮処理部Ｃに供給する。圧縮処理部Ｃでは、データ入力が完了したことを検出する毎に制御部３５から供給された画像データに対し圧縮処理を実施する。圧縮処理部Ｃで圧縮処理が施された圧縮データは、通信Ｉ／Ｆ３６によって無線でシステムコントローラ４に送信される。
【００３２】
送信された圧縮データは、システムコントローラ４の通信Ｉ／Ｆ４５で受信され、伸張処理部４７に供給される。伸張処理部４７に供給された圧縮データは伸張処理が施される。伸張処理された画像データは表示部４４に表示される。また、画像データはさらに必要に応じてＣＰＵ４１によって画像処理が施される。
【００３３】
続いて、放射線検出ユニット３の圧縮処理部Ｃについて説明する。
【００３４】
図２は、図１に示す圧縮処理部のハードウェア構成を示すブロック図である。
【００３５】
本実施形態における圧縮処理部Ｃは、ハードウェアとしては、ＣＰＵ（Ｃ１）と、プログラム記録媒体としてのメモリ（Ｃ２）と、制御部３５および通信Ｉ／Ｆ３６とのデータのやり取りを行うＩ／Ｆ（Ｃ３）とを有するコンピュータである。メモリ（Ｃ２）には、画像データ圧縮プログラムが記憶されており、画像データ圧縮プログラムがＣＰＵ（Ｃ１）によって読み出され実行されることによって、圧縮処理部としての機能が実現する。なお、メモリ（Ｃ２）には、処理対象の画像データや処理結果の各種データも記憶される。
【００３６】
図３は、画像データ圧縮プログラムの構成を示す図である。
【００３７】
図３に示す画像データ圧縮プログラムＳは、圧縮制御処理部Ｓ６と、切替処理部Ｓ７と、可逆圧縮処理部Ｓ２と、非可逆圧縮処理部Ｓ５とを有している。可逆圧縮処理部２は可逆圧縮処理を実行させるものであり、差分符号化処理部Ｓ２３と、オフセット処理部Ｓ２４と、プレーン分割処理部Ｓ２５と、Ｌプレーン圧縮処理部Ｓ２６と、Ｈプレーン圧縮処理部Ｓ２７と、フレーム合成処理部Ｓ２８とを有する。非可逆圧縮処理部Ｓ５は逆圧縮処理を実行させるものであり、間引き処理部Ｓ５０５と、第２差分符号化処理部Ｓ５１０と、第２オフセット処理部Ｓ５２０と、エッジ検出処理部Ｓ５２５と、ＦＡＫＥ画像圧縮処理部Ｓ５６０と、第２プレーン分割処理部Ｓ５３０と、第２Ｌプレーン圧縮処理部Ｓ５４０と、第２Ｈプレーン圧縮処理部Ｓ５５０と、合成処理部Ｓ５２８を有する。
【００３８】
画像データ圧縮プログラムＳの各部によって、これから説明する圧縮処理部Ｃの各機能ブロックが構成される。画像データ圧縮プログラムＳの各部による動作は、圧縮処理部Ｃの各機能ブロックの動作と同じであり、続いて、圧縮処理部Ｃの各機能ブロックについて説明する。
【００３９】
図４は、図１に示す圧縮処理部を示すブロック図である。
【００４０】
図４に示す圧縮処理部Ｃは、データに可逆圧縮処理を施す可逆圧縮部２と、データに非可逆圧縮処理を施す非可逆圧縮部５と、可逆圧縮部２および非可逆圧縮部５の圧縮処理を制御する圧縮制御部６と、可逆圧縮部２および非可逆圧縮部５からのデータを切替えて出力する切替部７とを備えている。図４に示す圧縮制御部６、切替部７、可逆圧縮部２、および非可逆圧縮部５は、図３に示す画像データ圧縮プログラムＳの圧縮制御処理部Ｓ６、切替処理部Ｓ７、可逆圧縮処理部Ｓ２、および非可逆圧縮処理部Ｓ５にそれぞれ対応する。ここで、圧縮制御部６および切替部７の組合せが本発明の圧縮制御部の一例に相当する。
【００４１】
圧縮制御部６は、制御部３５から受け取ったデータが表す１つの画面を複数のブロックに区分けし、各ブロック内の画像について画素値の最大値ＭＡＸと最小値ＭＩＮとを検索しそれらの差（ＭＡＸ−ＭＩＮ）を求める。
【００４２】
図５は、圧縮制御部が受け取るデータの画面を示す図である。
【００４３】
圧縮制御部６は、受け取ったデータの画面ＰをＭ行×ｎ列のブロック（Ｂ１１〜Ｂｍｎ）に区分けし、各ブロックＢ１１〜Ｂｍｎの画像ごとに、ブロック内の、１６ビットの値で表わされた画素値の最大値と最小値との差（ＭＡＸ−ＭＩＮ）を求める。圧縮制御部６は、求めた差（ＭＡＸ−ＭＩＮ）の値に応じて、当該ブロックのデータを、可逆圧縮部２および非可逆圧縮部５のいずれに圧縮処理させるかを決定する。
【００４４】
図６は、ブロックの画像における最大値と最小値との差と、圧縮処理の種類を説明する図である。図６の横軸は、各ブロック内における最大値と最小値との差（ＭＡＸ−ＭＩＮ）を示している。
【００４５】
各ブロックの最大値と最小値との差（ＭＡＸ−ＭＩＮ）には、ブロックにおける画像の種類が反映される。例えば、あるブロックがいわゆる白ベタや黒ベタといった、画素値が近接した画素のみで構成される場合、そのブロックの最大値と最小値との差（ＭＡＸ−ＭＩＮ）は、差として採り得る最小値すなわち「０」近傍の値となる。これに対し、例えば機械的に描画された文字や線画が含まれるブロックの場合、ブロック内には画素値が極端に大きい例えば白の部分と画素値が極端に小さい黒の部分とが含まれることとなる。したがって、最大値と最小値との差（ＭＡＸ−ＭＩＮ）は、差の値として採り得る最大値の近傍となる。また、Ｘ線撮影による画像といった自然画またはその一部分を切り取ったブロックにおける画素の画素値はある範囲に分布し、最大値と最小値との差（ＭＡＸ−ＭＩＮ）は、最大値と最小値の中間の値の範囲、例えば第１の閾値ＴＨＤ１と第２の閾値ＴＨＤ２の間に分布することが多いが、ブロックの中には、画素値が近接した画素のみで構成されるいわゆるベタで構成されるブロックも存在し得る。
【００４６】
圧縮制御部６は、ブロックの最大値と最小値との差（ＭＡＸ−ＭＩＮ）が、第１の閾値ＴＨＤ１と第２の閾値ＴＨＤ２の間の範囲内である場合には、非可逆圧縮部５にこのブロック内の画素値を被圧縮データとした非可逆圧縮処理を実行させる。圧縮制御部６は、この一方で、差（ＭＡＸ−ＭＩＮ）が、第１の閾値ＴＨＤ１と第２の閾値ＴＨＤ２の間の範囲外、すなわち、第１の閾値ＴＨＤ１より小さいか、または、第２の閾値ＴＨＤ２より大きい場合には、可逆圧縮部２にこのブロック内の画素値を被圧縮データとした可逆圧縮処理を実行させる。また、切替部７は、可逆圧縮部２および非可逆圧縮部５のうち、圧縮制御部６によって選択された方からの出力を選択して通信Ｉ／Ｆ３６（図１参照）に出力する。
【００４７】
可逆圧縮部２および非可逆圧縮部５による圧縮処理の詳細は後に説明するが、非可逆圧縮部５では、可逆圧縮部２による可逆圧縮処理に比べ圧縮率が高められるものの、圧縮されたデータは、伸張処理によっても完全に復元することができない。このため、文字やコントラストの高い部分については、伸張処理後にボケやにじみが生じて画像の劣化が顕著となる。文字等が含まれるブロックの画像については、圧縮制御部６によって可逆圧縮処理が選択されるので、伸張処理後の画像にボケやにじみがなく高画質が維持される。この一方、自然画を切り取ったブロックの画像は、伸張処理後のボケやにじみが目立たないため、圧縮率が高い非可逆圧縮処理が選択される。また、自然画を切り取ったブロックのうちベタ画像については、可逆圧縮処理によっても高い圧縮率が期待でき、また、仮に復元が完全に行われない場合の画素値の変化が目立ちやすいことから、可逆圧縮処理が選択される。
【００４８】
このようにして、圧縮処理部Ｃによれば、データの圧縮率と画質の均衡がとられる。
【００４９】
圧縮処理部Ｃから出力されたデータは、図１に示す通信Ｉ／Ｆ３６、およびシステムコントローラ４の通信Ｉ／Ｆ４５を介してシステムコントローラ４の伸長処理部に転送され、圧縮データにデータ伸長処理が施されるが、このデータ伸長処理にあたっては、各種の符号化処理に対応する復号化処理が施されて画像データが得られることとなる。
【００５０】
続いて、可逆圧縮部２および非可逆圧縮部５のそれぞれの圧縮処理について説明する。
【００５１】
図７は、図４に示す可逆圧縮部の内部構成を示すブロック図である。
【００５２】
図７に示す可逆圧縮部２は、伸張処理した場合に圧縮前の元のデータを完全に復元することができる可逆圧縮処理を実行する。可逆圧縮部２は、差分符号化部２３、オフセット部２４、プレーン分割部２５、Ｌプレーン圧縮部２６、Ｈプレーン圧縮部２７、および、フレーム合成部２８を備えている。図７に示す差分符号化部２３、オフセット部２４、プレーン分割部２５、Ｌプレーン圧縮部２６、Ｈプレーン圧縮部２７、およびフレーム合成部２８は、図３に示す画像データ圧縮プログラムＳの差分符号化処理部Ｓ２３、オフセット処理部Ｓ２４、プレーン分割処理部Ｓ２５、Ｌプレーン圧縮処理部Ｓ２６、Ｈプレーン圧縮処理部Ｓ２７、およびフレーム合成処理部Ｓ２８にそれぞれ対応する。
【００５３】
差分符号化部２３には、圧縮制御部６（図４参照）から、各画素が１６ビットの値で表わされたビットマップ形式の画像データが供給される。ただし、圧縮制御部６からは、１画面を区切ったブロックのうち、可逆圧縮されることが選択されたブロックに相当する部分について画像データが供給される。差分符号化部２３では、図示しないバッファに前回受信したラインのデータを一時的に保持しておき、これも参照しながら符号化を行う。差分符号化部２３では、画像データが２次元差分符号化処理、すなわち、入力されてきた画像データを構成する数値の連続について、画像上で見てその数値に複数方向それぞれに隣接する複数の数値に基づいた２次元的な差分を求めることによりその差分を表わす１６ビットの数値の連続からなる画像データを生成する処理が行なわれる。
【００５４】
オフセット部２４では、差分符号化部２３で生成された、差分を表わす数値の連続からなる画像データが所定のオフセット値でオフセットされる。
【００５５】
プレーン分割部２５では、オフセット後の画像データの各数値が、下位の８ビットと上位の８ビットとに分けられることにより、画像データが、下位ビットの数値の連続からなる下位サブプレーンＤ１Ｌと上位ビットの数値の連続からなる上位サブプレーンＤ１Ｈとに分割される。
【００５６】
Ｌプレーン圧縮部２６およびＨプレーン圧縮部２７では、プレーン分割部２５で分割された下位サブプレーンＤ１Ｌおよび上位サブプレーンＤ１Ｈそれぞれに対して可逆圧縮が施される。
【００５７】
フレーム合成部２８は、Ｌプレーン圧縮部２６およびＨプレーン圧縮部２７のそれぞれから出力される下位圧縮データＤ２Ｌと上位圧縮データＤ２Ｈとを組み合わせて、データ送信の単位となるフレームを生成する。フレームが、元の画像データに対する圧縮データを構成する。
【００５８】
ここで、差分符号化部２３が本発明にいう差分生成部の一例に相当し、オフセット部２４が本発明にいうオフセット部の一例に相当し、プレーン分割部２５が本発明にいう分割部の一例に相当する。
【００５９】
可逆圧縮部２における画像データの圧縮の流れについてまず説明する。
【００６０】
前述したように、圧縮制御部６（図４参照）から送られてきた、各画素が１６ビットの値で表わされた画像データは、差分符号化部２３で２次元差分符号化処理され、オフセット部２４でオフセットされた上で、プレーン分割部２５で下位の８ビットと上位の８ビットとに分けられることにより、画像データが、下位ビットの数値の連続からなる下位サブプレーンＤ１Ｌと上位ビットの数値の連続からなる上位サブプレーンＤ１Ｈとに分割される。
【００６１】
Ｌプレーン圧縮部２６は、ハフマン符号化部２６１と、高速モードと通常モードとのいずれか一方にモードを切り替えるモード切替部２６２と、データスキャン部２６３とを備えており、プレーン分割部２５から入力されてきた下位サブプレーンＤ１Ｌは、Ｌプレーン圧縮部２６のデータスキャン部２６３とハフマン符号化部２６１の双方に入力される。
【００６２】
データスキャン部２６３では、下位サブプレーンＤ１Ｌのデータのすべて、又は間引きした一部のデータをスキャニングして、そのデータ中に出現するすべての数値の出現頻度（ヒストグラム）が求められる。ここで、この出現頻度を求める処理は、本実施形態では、図７に示す下位サブプレーンＤ１Ｌの１つずつを単位として実行され、各下位サブプレーンＤ１Ｌのデータ中の数値の出現頻度が求められる。
【００６３】
さらに、このデータスキャン部２６３では、求められたデータヒストグラム（数値の出現頻度）に基づき、ハフマンテーブルに、出現頻度の高い数値ほど符号長の短かい符号を割り当てる。このようにして、データスキャン部２６３によって、数値と符号の対応付けられたハフマンテーブルが更新される。
【００６４】
データスキャン部２６３で数値に符号が割り当てられてなるハフマンテーブルは、ハフマン符号化部２６１に渡され、Ｌプレーン圧縮部２６のハフマン符号化部２６１では、その渡されたハフマンテーブルに従って、そのハフマン符号化部２６１に入力されてきた下位サブプレーンＤ１Ｌを構成する数値をそのハフマンテーブルに従う符号に置き換える符号化処理が行なわれる。
【００６５】
Ｌプレーン圧縮部２６のモード切替部２６２では、ユーザから、高速モードと通常モードとの切り替えを指示されて、上記のハフマン符号化部２６１によるハフマン符号化を経る通常モードと、ハフマン符号化を省略して下位サブプレーンＤ１Ｌをそのまま出力する高速モードとが切り替えられる。したがって、最終的にＬプレーン圧縮部２６からは、通常モードの場合には、下位サブプレーンＤ１Ｌがハフマン符号化により圧縮された下位圧縮データＤ２Ｌが出力され、高速モードの場合には、ハフマン符号化が施されていない下位圧縮データＤ２Ｌが出力されることになる。
【００６６】
Ｈプレーン圧縮部２７では、ランレングス符号化部２７１と、データスキャン部２７２と、ハフマン符号化部２７３とが備えられており、プレーン分割部２５から入力されてきた上位サブプレーンＤ１Ｈは、Ｈプレーン圧縮部２７のランレングス符号化部２７１に入力される。
【００６７】
Ｈプレーン圧縮部２７のランレングス符号化部２７１では、入力されてきた上位サブプレーンＤ１Ｈに対し、同一の圧縮対象数値の連続数に応じ、その連続数を異なるビット数で表現する符号化が行なわれる。ここでは、具体的には、同一の圧縮対象数値の連続数が所定数以下のときはその連続数を１単位ビット数で表現し、その連続数が所定数を越えるときは２単位ビット数で表現する符号化が行なわれる。ランレングス符号化部２７１で符号化されたデータは、次にデータスキャン部２７２とハフマン符号化部２７３との双方に入力される。
【００６８】
データスキャン部２７２では、ランレングス符号化部２７１で符号化された後のデータのすべて、又は間引きした一部のデータをスキャニングして、そのデータ中に出現するすべての数値の出現頻度（ヒストグラム）が求められる。ここで、この出現頻度を求める処理は、本実施形態では、図７に示す上位サブプレーンＤ１Ｈの１つずつを単位として実行され、各上位サブプレーンＤ１Ｈの、ランレングス符号化部２７１で符号化された後のデータ中の数値の出現頻度が求められる。
【００６９】
さらに、このデータスキャン部２７２では、求められたデータヒストグラム（数値の出現頻度）に基づき、ハフマンテーブルに、出現頻度の高い数値ほど符号長の短かい符号を割り当てる。このようにして、データスキャン部２７２によって、数値と符号の対応付けられたハフマンテーブルが更新される。
【００７０】
データスキャン部２７２で数値に符号が割り当てられてなるハフマンテーブルは、ハフマン符号化部２７３に渡され、ハフマン符号化部２７３では、その渡されたハフマンテーブルに従って、そのハフマン符号化部２７３に入力されてきたデータを構成する数値を、そのハフマンテーブルに従う符号、すなわち、出現頻度の高い数値ほど短かいビット長で表わされる符号に置き換える符号化処理が行なわれる。
【００７１】
ここで、ランレングス符号化部２７１が本発明にいう連続符号化部の一例に相当し、ハフマン符号化部２７３が本発明にいうエントロピー符号化部一例に相当する。
【００７２】
ハフマン符号化部２７３でハフマン符号化された後のデータは、データスキャン部２７２で割り当てられた数値と符号との割当テーブルを含む圧縮情報が添付され、上位サブプレーンＤ１Ｈが圧縮された上位圧縮データＤ２ＨとしてＨプレーン圧縮部２７から出力される。
【００７３】
図８は、差分符号化部に供給される画像データの構造を示す図、図９は、このデータに対して差分符号化部において２次元差分符号化処理が施された後のデータの構造を示す図である。
【００７４】
制御部３５から供給される画像データで表される画像は、所定の主走査方向に画素がＭ個並んでなるラインが、その主走査方向とは直角な副走査方向にＮライン並ぶことによって構成されており、このような構成を反映してその画像データも、図８に示すように、主走査方向（図の左右方向）に画素値がＭ個並んでなるラインが、副走査方向（図の上下方向）にＮライン並んでいるという構造を備えている。この図では、上からｎ番目のライン中の、左からｍ番目の画素値はＰｎ，ｍと表記されており、この表記法を用いて、副走査方向にｎ番目のラインについては、主走査方向に並ぶ各画素の画素値が、その並び順に、
Ｐｎ，１，Ｐｎ，２，…，Ｐｎ，ｍ−１，Ｐｎ，ｍ，…，Ｐｎ，Ｍ−２，Ｐｎ，Ｍ−１，Ｐｎ，Ｍ
と表されている。これらの画素値は、１６進表示で表された数値である。
【００７５】
ここで、図７に示す差分符号化部２３には、上記のような画像データが入力されて２次元差分符号化処理が施され、主走査方向に隣接する画素どうしの差分における副走査方向での更なる差分が求められる。
【００７６】
図９には、２次元差分符号化処理が施されたデータの構造が示されており、このデータも、２次元差分符号化後の画素値が主走査方向にＭ個並んでなるラインが、副走査方向にＮライン並んでいるという構造を備えている。この図では、上からｎ番目のライン中の、左からｍ番目の、２次元差分符号化後の画素値は、Ｘｎ，ｍと表記されており、この２次元差分符号化後の画素値Ｘｎ，ｍは、図８の中央部に示す、２次元差分符号化前の４つの画素値｛Ｐｎ−１，ｍ−１，Ｐｎ−１，ｍ，Ｐｎ，ｍ−１，Ｐｎ，ｍ｝から、下記の変換式によって得られる。
Ｘｎ，ｍ＝（Ｐｎ，ｍ−Ｐｎ，ｍ−１）−（Ｐｎ−１，ｍ−Ｐｎ−１，ｍ−１）                …（１）
ここで、ｎ＝１の場合やｍ＝１の場合には、右辺の２次元差分符号化前の画素値の添え字に０が現れることとなるが、添え字が０となる画素値については、下記のように定義する。
Ｐ０，０＝Ｐ０，ｍ＝００００  （ｍ＝１〜Ｍ），  Ｐｎ，０＝Ｐｎ−１，Ｍ  （ｎ＝１〜Ｎ）
…（２）
ここで、式（２）の「００００」は、画素値を１６進表示で表したときに値がゼロであることを表している。以下、式（１）および式（２）の意味について簡単に説明する。
【００７７】
式（１）は、主走査方向に隣接する画素どうしの差分（すなわち、カッコの中の値）における副走査方向での更なる差分によって２次元差分符号化後の画素値Ｘｎ，ｍが得られることを表しており、２次元差分符号化前の画素値Ｐｎ，ｍが隣接する画素の画素値と相関が強い（すなわち同じような大きさの画素値である）場合には、２次元差分符号化後の画素値Ｘｎ，ｍは、ゼロに近い値となる。
【００７８】
式（２）は、副走査方向の仮想的な０番目のラインと、各ラインの左から０番目の仮想的な画素値とを新たに設けたときの各画素値の定義を表す式である。主走査方向については左端の画素値（左から０番目の画素値Ｐｎ，０）とそのラインより１ライン前のラインの右端の画素値Ｐｎ−１，Ｍとを同一視するという定義となっている。また、副走査方向については、図の一番上側の画素値（０番目のライン上の画素値）、すなわち、Ｐ０，０やＰ０，ｍがすべて０に固定された定義となっている。
【００７９】
２次元差分符号化後のデータにおいて、１ライン目の画素値、および各ラインの１番目の画素値については、式（１）の変換式の右辺に、添え字が「０」である項が現れるため、式（２）の定義が適用されることとなる。具体的には上記の式（１）および式（２）により、２次元差分符号化後の１ライン目の画素値は、
Ｘ１，１＝Ｐ１，１，
Ｘ１，２＝Ｐ１，２−Ｐ１，１，
Ｘ１，３＝Ｐ１，３−Ｐ１，２，
…………
Ｘ１，Ｍ＝Ｐ１，Ｍ−Ｐ１，Ｍ−１
のように表される。
【００８０】
一方、２次元差分符号化後のデータにおいて、各ラインの１番目の画素値については、上記の式（２）により、
Ｘ１，１＝Ｐ１，１，
Ｘ２，１＝（Ｐ２，１−Ｐ１，Ｍ）−Ｐ１，１，
Ｘ３，１＝（Ｐ３，１−Ｐ２，Ｍ）−（Ｐ２，１−Ｐ１，Ｍ），
…………
ＸＮ，１＝（ＰＮ，１−ＰＮ−１，Ｍ）−（ＰＮ−１，１−ＰＮ−２，Ｍ）
のように表される。このように、１ライン目の画素値、および各ラインの１番目の画素値については、その変換の仕方がやや特殊であるが、これらの画素値以外の画素値については、式（２）の定義が適用されることなく、式（１）がそのまま適用される。例えば、２ライン目の画素値のうち一番左端を除いた画素値は、
Ｘ２，２＝（Ｐ２，２−Ｐ２，１）−（Ｐ１，２−Ｐ１，１），
Ｘ２，３＝（Ｐ２，３−Ｐ２，２）−（Ｐ１，３−Ｐ１，２），
…………
Ｘ２，Ｍ＝（Ｐ２，Ｍ−Ｐ２，Ｍ−１）−（Ｐ１，Ｍ−Ｐ１，Ｍ−１）
のように表される。
【００８１】
この２次元差分符号化処理を、具体的な数値を用いて説明する。
【００８２】
図１０は、図７に示す差分符号化部における２次元差分符号化処理を例示して示す図である。
【００８３】
この図の左側（パート（Ａ））に示す各数値が画像データを構成する画素値であり、この図の右側（パート（Ｂ））に示す各数値が２次元差分符号化処理で出力される出力値である。この図の横方向が主走査方向であり、主走査方向に並んだ８つの数値の並びが上記のラインである。この図に示すデータにはこうした８つの数値が並んだラインが全部で８本あり、図８および図９のデータにおいてＮ＝８，Ｍ＝８の場合のデータに相当する。なお、本実施形態の差分符号化部２３は、画像データの１画素分を表わすデータとして１６ビットの値を処理するが、ここでは、値の見にくさを避けるため、１画素分を表わすデータとして８ビットの値の例で説明する。
【００８４】
図１０のパート（Ａ）に示すデータの２次元差分符号化処理では、先ず、１ライン目の各画素値「９０  ８Ａ  ８Ａ  ７Ｂ  …」のうち、一番左の「９０」については、この値がそのまま上記のＸ１，１として出力され、それ以外のＸ１，２，Ｘ１，３，…については、主走査方向に隣接する画素値どうしの差分の値「８Ａ−９０＝ＦＡ」「８Ａ−８Ａ＝００」…が出力される。ここで、「８Ａ」から「９０」を引き算した結果は実際には負の数となり、９ビットで「１ＦＡ」と表されるが、ＭＳＢの１ビットである最上位の「１」は省略し、下位８ビットである「ＦＡ」のみを出力する。
【００８５】
２ライン目については、Ｘ２，１を求める式、
Ｘ２，１＝（Ｐ２，１−Ｐ１，Ｍ）−Ｐ１，１
において、Ｍ＝８としたときの右辺の｛Ｐ２，１，Ｐ１，８，Ｐ１，１｝に対し、図１０のパート（Ａ）に示す数値が代入されて、「（８７−５８）−９０＝９Ｆ」がＸ２，１として出力される。それ以外のＸ２，２，Ｘ２，３，…については、２ライン目についての主走査方向に隣接する画素値どうしの差分と、１ライン目についての主走査方向に隣接する画素値どうしの差分との更なる差分の値「（８４−８７）−（８Ａ−９０）＝０３」「（８８−８４）−（８Ａ−８Ａ）＝０４」…が出力される。
【００８６】
３ライン目については、Ｘ３，１を求める式、
Ｘ３，１＝（Ｐ３，１−Ｐ２，Ｍ）−（Ｐ２，１−Ｐ１，Ｍ）
において、Ｍ＝８としたときの右辺の｛Ｐ３，１，Ｐ２，８，Ｐ２，１，Ｐ１，８｝に、図１０のパート（Ａ）に示す数値が代入されて、「（８Ｂ−４Ｃ）−（８７−５８）＝１０」がＸ３，１として出力される。それ以外のＸ３，２，Ｘ３，３，…については、３ライン目についての主走査方向に隣接する画素値どうしの差分と、２ライン目についての主走査方向に隣接する画素値どうしの差分との更なる差分の値「（８６−８Ｂ）−（８４−８７）＝ＦＥ」「（８Ａ−８６）−（８８−８４）＝００」…が出力される。
【００８７】
以下、４ライン目以降についても、３ライン目の演算と同じ演算を繰り返すことにより、図１０のパート（Ｂ）に示す各数値が得られることとなる。
【００８８】
なお、図１に示す伸張処理部４７では、このように２次元差分符号化されたデータに対してデータの復号化処理が行われる。この復号化処理では、２次元差分符号化されたデータの値からＰｎ，ｍを求める式が使用されており、この式は以下のようにして求めることができる。
【００８９】
２次元差分符号化後の画素値Ｘｉ，ｊを、ｉ＝１からｉ＝ｍまで足し上げ、さらにｊ＝１からｊ＝ｍについて足し上げた結果は、式（１）および式（２）を用いて下記の式（３）のように表される。
【００９０】
【数１】
2011019059.tif 000003
【００９１】
ここで、式の途中に現れる｛Ｐ０，０，Ｐｎ，０，Ｐ０，ｍ｝に対して、式（２）が適用されている。この式から、２次元差分符号化前の画素値Ｐｎ，ｍは、下記の式（４）のように表される。
【００９２】
【数２】
2011019059.tif 000004
【００９３】
伸張処理部４７では、上記の式（４）により、先ず、１ライン目の画素値Ｐ１，１，Ｐ１，２，…，Ｐ１，Ｍが求められる。例えば、１ライン目の画素値のうち主走査方向にｍ番目の画素値は、上記の式（４）にｎ＝１を代入し、さらに式（２）のＰ０，Ｍ＝０を利用して、下記の式（５）のように表される。
【００９４】
【数３】
2011019059.tif 000005
【００９５】
このようにして、１ライン目の画素値、Ｐ１，１，Ｐ１，２，…，Ｐ１，Ｍがすべて求められる。
【００９６】
２ライン目の画素値Ｐ２，１，Ｐ２，２，…，Ｐ２，Ｍについては、同様に上記の式（４）にｎ＝２を代入し、さらに１ライン目の画素値の複合化で得られたＰ１，Ｍを用いることで求めることができる。例えば、２ライン目の画素値のうち主走査方向にｍ番目の画素値は、下記の式（６）のように表される。
【００９７】
【数４】
2011019059.tif 000006
【００９８】
３ライン目以降の画素値についても同様にして、上記の式（６）やそれ以降の計算で複合化された画素値を用いて求めることができる。図１に示す伸張処理部４７では、このような方式でデータの復号化処理が行われる。
【００９９】
図７に示す差分符号化部２３では、以上説明したような２次元差分符号化が画像データに施される。この２次元差分符号化によって得られるデータは、図７に示すオフセット部２４に入力され、そのデータの各数値についてオフセット値「０ｘ００８０」が加算され、データが下位サブプレーンＤ１Ｌと上位サブプレーンＤ１Ｈとに分割される。ここでは、データの分割までの処理について具体的に説明する。
【０１００】
図１１は、制御部から差分符号化部に供給された画像データのヒストグラムの例を示す図である。図１１には、制御部３５（図１）から供給された画像データにおけるデータ値のヒストグラムが示されており、このヒストグラムの横軸はデータ値、縦軸はデータ数（画素数）を表している。
【０１０１】
図１２は、図１１に示す画像データに対する差分符号化およびオフセットの効果を示す図である。
【０１０２】
図１２のパート（Ａ）には、図１１に示した画像データに対して差分符号化が施されて得られるデータのヒストグラムが示されており、このヒストグラムの横軸はデータ値、縦軸は出現頻度を表しており、ここには、この画像データに対して差分符号化が施されると、データのヒストグラムが、最小データ値と最大データ値の双方に鋭いピークを有するヒストグラムとなった様子が示されている。そして、このようなデータに対してオフセット値「０ｘ００８」によりオフセットが施されると、データのヒストグラムは、図１２のパート（Ｂ）に示すような、オフセット値「０ｘ００８０」のところに鋭いピークを持つヒストグラムとなる。（オフセット値「０ｘ００８０」は１６ビットデータの場合であり、８ビットデータの場合は、オフセット値「０ｘ０８」にピークを持つヒストグラムになる。）
このように差分符号化およびオフセットによってヒストグラムが変形されたデータは、図７に示すプレーン分割部２５によって下位サブプレーンＤ１Ｌと上位サブプレーンＤ１Ｈとに分割される。
【０１０３】
図１３は、プレーン分割部によるデータ分割の効果を説明する図である。
【０１０４】
この図１３には、図１２のパート（Ｂ）に示すヒストグラムがデータ値「２５５」とデータ値「２５６」との間で切り離されたヒストグラムが示されており、図７のプレーン分割部２５によるデータ分割は、まさにこのようなヒストグラムの分割に相当する効果を生じる。すなわち、本実施形態では、データを構成している１６ビットの各数値が上位８ビットと下位８ビットとに分割されることで、下位８ビットが表す数値の連続からなる下位サブプレーンＤ１Ｌと上位８ビットが表す数値の連続からなる上位サブプレーンＤ１Ｈとが得られる。そして、下位サブプレーンＤ１Ｌを構成する８ビットの数値が値「０」から値「２５５」までの各数値をそのまま表現していて、上位サブプレーンＤ１Ｈを構成する８ビットの数値の場合は、値「２５６」から値「６５５３５」までの数値を表現していると解釈すると、下位サブプレーンＤ１Ｌのヒストグラムは、この図１３の左側に示されたヒストグラムとほぼ同じものとなり、上位サブプレーンＤ１Ｈのヒストグラムは、図１３の右側に示されたヒストグラムとほぼ同じものとなる。ただし、上位サブプレーンのヒストグラムについては、図の右側に示されたヒストグラムのデータ値「２５６」のところに、図１３の左側に示されたヒストグラムの面積に等しい高さのピークが付加されたものとなる。
【０１０５】
以下では、上位サブプレーンＤ１Ｈと下位サブプレーンＤ１Ｌとに分割された後のデータの処理について説明する。
【０１０６】
まず、図１３の右側に示す上位サブプレーンＤ１Ｈに対する処理について説明する。
【０１０７】
図１３の右側に示されたヒストグラムにおいて画素の出現頻度がほとんどゼロに近いことからわかるように、上位サブプレーンＤ１Ｈ中の数値は、ゼロに近い値（１６進数表示での「００」や「０１」や「ＦＦ」）の連続が多いことが予想される。このため、上位サブプレーンＤ１Ｈに圧縮を施すには、同一の数値の連続を符号化することで圧縮を行うランレングス符号化が有効であり、上位サブプレーンＤ１Ｈは、図７に示すＨプレーン圧縮部２７の構成要素の１つであるランレングス符号化部２７１に入力される。
【０１０８】
本実施形態では、ランレングス符号化部２７１で、上位サブプレーンＤ１Ｈを構成する連続した８ビットの数値が取り扱われ、１６進数表示で値「００」から値「ＦＦ」までの数値の連続に対して以下の符号化処理が適用される。
【０１０９】
この符号化処理では、複数の８ビットの数値のうちの特定の数値についてのみ符号化処理が行なわれる。このため、このランレングス符号化部２７１では、受け取ったデータの中から、符号化処理を行う数値（ここでは、この数値を「圧縮対象数値」と称する）と、その圧縮対象数値の連続数が検出される。
【０１１０】
本実施形態では、一例として、「０１」、「ＦＦ」および「００」の３つの数値を圧縮対象数値としている。
【０１１１】
図１４は、図７に示すランレングス符号化部での符号化の説明図である。
【０１１２】
図１４の上のラインは、上位サブプレーンＤ１Ｈを構成するデータ、下のラインは、ランレングス符号化部２７１での符号化処理を行った後のデータである。
【０１１３】
ここでは、図１４の上のラインに示すように、ランレングス符号化部２７１からは、
「０６  ０２  ０２  ０２  ０１  ０１  ０１  ０１  ０４  ０５  ００  …  」
なるデータが入力されたものとする。このとき、図７のランレングス符号化部２７１では、先頭の「０６」は圧縮対象数値ではなく、次に続く「０２  ０２  ０２」も圧縮対象数値ではなく、次に、圧縮対象数値である「０１」が４つ連続していること、次に、圧縮対象数値ではない「０４」、「０５」を間に置いて、圧縮対象数値である「００」が３２７６７個連続していることが検出される。
【０１１４】
図１５は、ランレングス符号化部における、圧縮対象数値を対象にした符号化のアルゴリズムを示す図である。
【０１１５】
この図１５中、Ｚは同一の圧縮対象数値の連続数、例えば図１４の上のラインの「０１」についてはＺ＝４、「００」についてはＺ＝３２７６７である。
【０１１６】
また、図１５中、「ＹＹ」は、１６進２桁で表わされた圧縮対象数値自体を表わしている。その「ＹＹ」に続く、「０」又は「１」は１ビットで表現された「０」又は「１」であり、さらにそれに続く「ＸＸＸ  ＸＸＸＸ…」は、１つの「Ｘ」が１ビットを表わしており、この「ＸＸＸ  ＸＸＸＸ…」でＺの値を表現している。
【０１１７】
すなわち、図１５は、圧縮対象数値「ＹＹ」がＺ＜１２８連続するときは、１バイト目で圧縮対象数値「ＹＹ」を表現し、それに続く１バイトで、先頭ビットが「０」、それに続く７ビットでＺの値を表現すること、また、圧縮対象数値「ＹＹ」がＺ≧１２８連続するときは、１バイト目で圧縮対象数値「ＹＹ」を表現し、それに続く２バイト（１６ビット）のうちの先頭の１ビットを「１」とすることで２バイトに跨って表現されていることを表現し、それに続く１５ビットで、Ｚの値を表現することを意味している。
【０１１８】
この図１５に示す規則に従って図１４に示す符号化の例について説明する。
【０１１９】
図７のプレーン分割部２５から入力されてきた上位サブプレーンＤ１Ｈのデータ（上のライン）を構成する先頭の数値「０６」は圧縮対象数値ではないため、その「０６」のまま出力される。また、それに続く「０２  ０２  ０２」も、「０２」は圧縮対象数値ではなく、これら３つの「０２」もそのまま出力される。次に、圧縮対象数値である「０１」が４個連続するため、「０１  ０４」に符号化される。次の「０４」及び「０５」は圧縮対象数値ではないため、そのまま「０４  ０５」が出力される。
【０１２０】
次に「００」が３２７６７個連続しているため、「００」を置き、次の１バイトのうちの先頭の１ビットを「１」とし、次いで１５ビットで３２８９５−１２８を表現することにより、「００  ＦＦ  ７Ｆ」の３バイトで「００」が３２７６７個連続していることを表現する。すなわち、連続数１２８は、最初のビット「１」を除き、「００  ００」と表現される。
【０１２１】
図１６は、図７のランレングス符号化部における、連続数に応じた符号化処理の例を示す図である。
・「００」が１２７個連続するときは、２バイトを用いて「００  ７Ｆ」に符号化され、
・「００」が３２７６７個連続するときは、３バイトを用いて「００  ＦＦ  ７Ｆ」に符号化され、
・「００」が３２８９５個連続するときは、３バイトを用いて「００  ＦＦ  ＦＦ」に符号化され、
・「００」が１２８個連続するときは、３バイトを用いて「００  ８０  ００」に符号化され、
・「０１」が１２９個連続するときは、３バイトを用いて「０１  ８０  ０１」に符号化され、
・「ＦＦ」が４０９６個連続するときは、３バイトを用いて「ＦＦ  ８Ｆ  ８０」に符号化される。
【０１２２】
図７に示すランレングス符号化部２７１では、上記のような符号化処理が行なわれる。
【０１２３】
本実施形態によるランレングス符号化部２７１によれば、最大圧縮率は、３／３２８９５＝１／１０，９６５にまで向上する。また、このランレングス符号化部２７１が符号化処理の対象としている上位サブプレーンＤ１Ｈのデータは、図１３のヒストグラムで説明したように、８ビットの数値のほとんどが、元のデータ値「２５６」未満に相当する数値「０」となる。このためランレングス符号化部２７１における符号化処理によって大幅なデータ圧縮が期待される。
【０１２４】
図７のランレングス符号化部２７１で上記の符号化処理の行なわれた後のデータは、次に図７のＨプレーン圧縮部２７を構成するデータスキャン部２７２とハフマン符号化部２７３に入力される。
【０１２５】
このデータスキャン部２７２では、先ず、ランレングス符号化部２７１から出力されたデータの全体がスキャニングされてデータ値の出現頻度が求められる。
【０１２６】
図１７は、データスキャン部によるスキャニング結果の例を示す図である。
【０１２７】
ここでは、「Ａ１」の出現頻度が最も強く、以下順に、「Ａ２」、「Ａ３」、「Ａ４」、…の順であるとする。なお、これら「Ａ１」、「Ａ２」等は数値を直接表わしている訳ではなく、数値を表わす符号である。すなわち、「Ａ１」は例えば数値「００」、「Ａ２」は数値「ＦＦ」等である。また、ここでは、簡単のため、図７のランレングス符号化部２７１から送られてくるデータはすべてのデータ値が、「Ａ１」〜「Ａ１６」の１６個の数値のうちのいずれかの数値であるものとする。そして、このような１６個の数値それぞれに対して、データスキャン部２７２では、出現頻度に応じた符号が割り当てられてハフマンテーブルが作成される。即ち、出現頻度の最も高い「Ａ１」には、２ビットで表わされた符号「００」が割り当てられ、次の「Ａ２」には、やはり２ビットで表わされた符号「０１」が割り当てられ、次の「Ａ３」、さらに次の「Ａ４」には、３ビットで表わされる、それぞれ、符号「１００」、符号「１０１」が割り当てられ、次の「Ａ５」〜「Ａ８」には、５ビットで表わされる各符号が割り当てられ、以下同様に、出現頻度が低い数値ほど多くのビット数で表わされた符号が割り当てられる。
【０１２８】
図１８は、ハフマンテーブルの一例を示す図である。
【０１２９】
このハフマンテーブルは、図１７と一致させてあり、出現頻度が高い数値ほど短かいビット数で表わされた符号に置き換えられるように並べられた、符号化前（置き換え前）の数値と符号化後（置き換え後）の数値との対応テーブルである。
【０１３０】
図７のＨプレーン圧縮部２７を構成するハフマン符号化部２７３では、このようなハフマンテーブルに従ってデータの数値が符号化され、その結果、多くの数値が短かいビット数の符号に置き換えられることとなってデータ圧縮が実現される。
【０１３１】
図１９は、ハフマンテーブルに用意される符号列の具体例を示す図である。
【０１３２】
図１９に示す符号列では、各符号列中の「，」よりも右側の数値がビット長を意味しており、その「，」から左側に並ぶそのビット長分の２進符号が実際の符号を表わしている。例えば、図１７の左上の第１番目の符号は「１１」の２ビット、次の２番目の符号は「０１１」の３ビット、その次の３番目の符号は「０１０」の３ビット、さらにその次の４番目の符号は「１０１０」の４ビットである。このような符号列により、出現頻度が高い数値ほど短かいビット数で表わされた符号に置き換えられる。
【０１３３】
図７のＨプレーン圧縮部２７を構成するハフマン符号化部２７３では、このようなハフマンテーブルに従ってデータの数値が符号化され、その結果、多くの数値が短かいビット数の符号に置き換えられることとなってデータ圧縮が実現される。
【０１３４】
ランレングス符号化部２７１で符号化されたデータは８ビットごとに、ハフマン符号化部２７３によって符号に変換される。この変換によって可変長符号化された上位圧縮データＤ２Ｈが生成される。
【０１３５】
以上の図１４〜図１９で説明した処理により、図７のＨプレーン圧縮部２７に入力される上位サブプレーンＤ１Ｈについては、ランレングス符号化部２７１による符号化とハフマン符号化部２７３による符号化が施されることにより高い圧縮率で圧縮されて上位圧縮データＤ２Ｈとなる。
【０１３６】
次に、下位サブプレーンＤ１Ｌに対する処理について説明する。プレーン分割部２５で分割された下位サブプレーンＤ１Ｌは連続した８ビットの数値として取り扱われ、ハフマン符号化部２６１において、図１７〜図１９で説明したハフマン符号化処理が行われる。ハフマン符号化部２６１で符号への変換に用いられるハフマンテーブルは、データスキャン部２６３のスキャンによって生成される。Ｌプレーン圧縮部に入力されたデータは８ビットごとに、ハフマン符号化部２６１によって符号に変換される。この変換によって可変長符号化された下位圧縮データＤ２Ｌが生成される。
【０１３７】
なお、上述したように、ユーザから、高速モードが指示された場合には、モード切替部２６２が切り替えられ、ハフマン符号化部２６１によるハフマン符号化処理は省略されて、下位サブプレーンＤ１Ｌは下位圧縮データＤ２ＬとしてＬプレーン圧縮部２６から出力されることになる。
【０１３８】
上位圧縮データＤ２Ｈおよび下位圧縮データＤ２Ｌは、フレーム合成部２８によって組み合われられて１つのフレームが生成され、フレームが通信Ｉ／Ｆ３６によって送信される。フレームにはフレームの伸張処理に必要な各種設定がヘッダとして挿入さる。このヘッダには、ハフマン復号化に用いるテーブルも含まれる。
【０１３９】
図２０は、図７に示す非可逆圧縮部を示す図である。
【０１４０】
図２０に示す非可逆圧縮部５は、非可逆圧縮のアルゴリズムを用いて画像データを圧縮する部であり、高圧縮率でのデータ圧縮が行われる。
【０１４１】
非可逆圧縮部５には、画像データで表わされる画像を構成する全画素から可逆圧縮処理の対象となるＴＲＵＥ画素を間引く間引き処理部５０５と、ＴＲＵＥ画素が間引かれた後に残った画素であって非可逆圧縮処理の対象となるＦＡＫＥ画素について非可逆圧縮処理を実行するための各部として、ＦＡＫＥ画素データ圧縮部５６０、およびエッジ検出部５２５とが備えられている。また、非可逆圧縮部５には、ＴＲＵＥ画素について可逆圧縮処理を実行するための各部として、第２差分符号化部５１０、第２オフセット部５２０、第２プレーン分割部５３０、第２Ｌプレーン圧縮部５４０、および第２Ｈプレーン圧縮部５５０が備えられている。さらに、非可逆圧縮部５には、フレーム合成部５２８も備えられている。図２０に示す間引き処理部５０５、第２差分符号化部５１０、第２オフセット部５２０、エッジ検出部５２５、ＦＡＫＥ画素データ圧縮部５６０、第２プレーン分割部５３０、第２Ｌプレーン圧縮部５４０、第２Ｈプレーン圧縮部５５０、およびフレーム合成部５２８は、図３に示す画像データ圧縮プログラムＳの間引き処理部Ｓ５０５、第２差分符号化処理部Ｓ５１０、第２オフセット処理部Ｓ５２０、エッジ検出処理部Ｓ５２５、ＦＡＫＥ画像圧縮処理部Ｓ５６０、第２プレーン分割処理部Ｓ５３０、第２Ｌプレーン圧縮処理部Ｓ５４０、第２Ｈプレーン圧縮処理部Ｓ５５０、および合成処理部Ｓ５２８にそれぞれ対応する。ここで、間引き処理部５０５が本発明にいう間引き処理部の一例に相当する。
【０１４２】
図２０に示す非可逆圧縮部５での圧縮処理について説明する。
【０１４３】
画像データが非可逆圧縮部５に入力されると、間引き処理部５０５により、可逆圧縮処理の対象となるＴＲＵＥ画素の画素データと、非可逆圧縮処理の対象となるＦＡＫＥ画素の画素データとに分けられる。
【０１４４】
図２１は、図２０の間引き処理部で行われる間引き処理の概念を示す図である。
【０１４５】
図２１には、画像データのデータ構造も示されている。
【０１４６】
図２１では、図２１の横方向が主走査方向であり、その主走査方向とは直角な方向が副走査方向である。上述したように主走査方向に並ぶ画素の列はラインと称され、ここでは６ライン分の画素が示されている。図１９では、各画素の位置は、画素値を表す符号Ｔ，Ｆに付された添え字で表現される。例えば３番目のラインについて、主走査方向に並ぶ各画素の画素値には、その並び順に、
３＿１，３＿２，３＿３，３＿４，…
という添え字が付されている。
【０１４７】
図２０に示す間引き処理部５０５には、このように並んだ画素値からなる画像データが入力され、間引き処理部５０５は、各画素を、ＴＲＵＥ画素とＦＡＫＥ画素とに分類する。この図２１に示す各画素のうちＴＲＵＥ画素は画素値が符号Ｔで表され、ＦＡＫＥ画素は画素値が符号Ｆで表されている。ＴＲＵＥ画素は、画素の並びの中から周期的に間引かれる画素であり、この図は、副走査方向に１ラインおきの各ライン（奇数番目のライン）について、主走査方向に１画素おきの各画素（奇数番目の画素）がＴＲＵＥ画素として間引き出されることを示している。この結果、ＴＲＵＥ画素は、元の解像度の半分の解像度に低下した画像を構成する画素に相当しており、元の画像データの４分の１に相当する画素が間引き出されたこととなる。このように間引き出されたＴＲＵＥ画素は、そのようなＴＲＵＥ画素の連続からなるＴＲＵＥ画素データを構成し、そのＴＲＵＥ画素データの構造は、元の画像データと同様に、主走査方向と副走査方向に画素が並んだ構造となっている。ＴＲＵＥ画素の間引きによって残ったＦＡＫＥ画素についても、そのＦＡＫＥ画素の画素値の連続からなるＦＡＫＥ画素データを構成する。ＴＲＵＥ画素データが可逆圧縮処理の対象となるのに対し、このＦＡＫＥ画素データは非可逆圧縮処理の対象となる。
【０１４８】
ＴＲＵＥ画素の画素データに対しては、非可逆圧縮部５内の第２差分符号化部５１０、第２オフセット部５２０、第２プレーン分割部５３０、第２Ｌプレーン圧縮部５４０、および第２Ｈプレーン圧縮部５５０により、図７を参照して説明した圧縮処理部Ｃの可逆圧縮処理と同様の処理が行われる。すなわち、第２差分符号化部５１０で、差分符号化部２３と同様の２次元差分符号化処理が行われ、オフセット部５２０に入力されて所定量のオフセットが施される。そして、第２プレーン分割部５３０で、画像データが、下位ビットの数値の連続からなる下位サブプレーン２Ｄ１Ｌと上位ビットの数値の連続からなる上位サブプレーン２Ｄ１Ｈとに分割され、それぞれ、第２Ｌプレーン圧縮部５４０および第２Ｈプレーン圧縮部５５０に入力される。第２Ｌプレーン圧縮部５４０および第２Ｈプレーン圧縮部５５０は、それぞれ、図７のＬプレーン圧縮部２６およびＨプレーン圧縮部２７と同様の構成を備えている。例えば、第２Ｌプレーン圧縮部５４０にも、ハフマン符号化部５４１、モード切換部５４２データスキャン部５４３が備えられており、これらにより、図７に示すＬプレーン圧縮部２６と同様な処理が施されて下位圧縮データ２Ｄ２Ｌが出力される。一方、第２Ｈプレーン圧縮部５５０には、ランレングス符号化部５５１と、データスキャニング部５５２と、ハフマン符号化部５５３が備えられており、これらにより、図７のＨプレーン圧縮部２７と同様な処理が施されて上位圧縮データ２Ｄ２Ｈが出力される。
【０１４９】
一方、ＦＡＫＥ画素の画素データに対しては、ＦＡＫＥ画素データ圧縮部５６０により、非可逆圧縮処理が施される。このＦＡＫＥ画素データ圧縮部５６０には、ビット数削減／非エッジ符号出力部５６１と、ランレングス符号化部５６２と、ハフマン符号化部５６３とが備えられており、ＦＡＫＥ画素データを構成する数値はビット数削減／非エッジ符号出力部５６１で元データの単位ビット数以下の少ビット数で表現した数値、又は非エッジ符合に置換される。ここで、ＦＡＫＥ画素データを構成する数値が、ビット数削減／非エッジ符号出力部５６１において、エッジ部分でない事を示す符合を出力するか、又は、元データの単位ビット数以下の少ビット数で表現した数値を出力するかは、その数値の画素値を有するＦＡＫＥ画素が、画像のエッジ部分に属する画素であるか否かによって決定され、エッジ部分に属するか否かの判定は、エッジ検出部５２５によって行われる。ここで、ビット数削減／非エッジ符号出力部５６１が本発明にいうビット数制限部の一例に相当する。以下、前記、少ビット数で表現した数値は４ビットデータ、非エッジ符合は１ビットデータの例を具体例として説明する。
【０１５０】
このエッジ検出部５２５の判定に基づき、ビット数削減／非エッジ符号出力部５６１では、画像のエッジ部分に属する画素の画素値は４ビットの符号に置換され、画像のエッジ部分に属さない画素の画素値は１ビットの符号に置換される。１ビットまたは４ビットの符号に置換されたデータは、ランレングス符号化部５６２およびハフマン符号化部５６３によって、図７に示すＨプレーン圧縮部２７における処理と全く同様の処理が施される。ここで、ＦＡＫＥ画素データ圧縮部５６０にも、図７に示すＨプレーン圧縮部２７のデータスキャニング部２７２と同様の働きをするデータスキャニング部が存在するが、その図示は省略されている。ランレングス符号化処理およびハフマン符号化処理が施されたＦＡＫＥ画素データは、非可逆圧縮データ２Ｄ３としてＦＡＫＥ画素データ圧縮部５６０から出力される。
【０１５１】
次に、ＦＡＫＥ画素データについての非可逆圧縮処理について説明する。間引き処理部５０５で得られたＦＡＫＥ画素データはＦＡＫＥ画素データ圧縮部５６０に入力され、ＦＡＫＥ画素データ圧縮部５６０内のビット数削減／非エッジ符号出力部５６１は、そのＦＡＫＥ画素データがエッジ部分の画素データであるか否かに応じて、このＦＡＫＥ画素データを、エッジ部分でない事を示す符合を出力するか、又は、元データの単位ビット数以下の少ビット数で表現した数値を出力する。エッジ部分であるか否かは、第２オフセット部５２０によるオフセット後の差分データに基づき、図２０のエッジ検出部５２５によって判定される。
【０１５２】
次に、ＦＡＫＥ画素データが符号化される様子について説明する。
【０１５３】
図２１に示すＴＲＵＥ画素の画素値をＴｎ＿ｋと表現した場合に、そのＴＲＵＥ画素に隣接するＦＡＫＥ画素の画素値はＦｎ＿ｋ＋１，Ｆｎ＋１＿ｋ，Ｆｎ＋１＿ｋ＋１というように表現され、そのＴＲＵＥ画素に対してそれらのＦＡＫＥ画素を挟んだ位置のＴＲＵＥ画素の画素値は、Ｔｎ＿ｋ＋２，Ｔｎ＋２＿ｋ，Ｔｎ＋２＿ｋ＋２と表現される。エッジ検出部５２５では、このような４つのＴＲＵＥ画素の画素値Ｔｎ＿ｋ，Ｔｎ＿ｋ＋２，Ｔｎ＋２＿ｋ，Ｔｎ＋２＿ｋ＋２から２次元差分符号化処理で得られる差分値（ここでは、前述のように１６進数表示で値「００」から値「ＦＦ」までの数値で表した差分値ではなく、画素値をそのまま差分をとって得られる１０進数表示での差分値）が、エッジ検出部５２５に設定されている正の整数値の閾値パラメータＬを用いて規定される、（−Ｌ）未満の領域、あるいは（＋Ｌ）以上の領域に属する場合には、上述した３つのＦＡＫＥ画素の画素値Ｆｎ＿ｋ＋１，Ｆｎ＋１＿ｋ，Ｆｎ＋１＿ｋ＋１はエッジ部分であると判定され、ビット数削減／非エッジ符号出力部５６１において「１」から始まる４ビットの符号に符号化される。
【０１５４】
図２２は、４ビット符号への符号化方式を表す図である。
【０１５５】
この符号化方式では、ＦＡＫＥ画素の画素値は、その画素値を表した元データの単位ビット数が１６であれば、１６ビットのビット値の下位１３桁が切り捨てられ、残った上位３桁の先頭に「１」が付加されることで「１０００」〜「１１１１」の符号に符号化される。したがって、この図の表に示すように、符号化前の「０」〜「６５５３５」の数値のうち「０」〜「８１９１」の数値は「１０００」に符号化され、「８１９２」〜「１６３８３」の数値は「１００１」に符号化される。以下同様に、「１６３８４」〜「２４５７５」、「２４５７６」〜「３２７６７」、「３２７６８」〜「４０９５９」、「４０９６０」〜「４１９５１」、「４９１５２」〜「５７３４３」、「５７３４４」〜「６５５３５」の数値は、それぞれ、「１０１０」、「１０１１」、「１１００」、「１１０１」、「１１１０」、「１１１１」に符号化される。このような符号化方式は、ビット値の桁の切り捨てというごく単純な処理で実現される。このような４ビット符号への符号化によって元の画像の情報がある程度維持されて画質低下が回避される。
【０１５６】
エッジ検出部５２５では、上述した４つのＴＲＵＥ画素の画素値Ｔｎ＿ｋ，Ｔｎ＿ｋ＋２，Ｔｎ＋２＿ｋ，Ｔｎ＋２＿ｋ＋２から２次元差分符号化処理で得られる差分値が、（−Ｌ）以上かつ（＋Ｌ）以下の領域に属する場合には、上述した３つのＦＡＫＥ画素の画素値Ｆｎ＿ｋ＋１，Ｆｎ＋１＿ｋ，Ｆｎ＋１＿ｋ＋１はエッジ部分ではないと判定され、ビット数削減／非エッジ符号出力部５６１において１ビットの符号「０」に符号化される。
【０１５７】
１ビットまたは４ビットの符号に置換されたデータは、ランレングス符号化部５６２およびハフマン符号化部５６３によって、図７に示すＨプレーン圧縮部２７における処理と全く同様の処理が施される。ここで、ＦＡＫＥ画素データ圧縮部５６０にも、図７に示すＨプレーン圧縮部２７のデータスキャニング部２７２と同様の働きをするデータスキャニング部が存在するが、図２０ではその図示は省略されている。ランレングス符号化処理およびハフマン符号化処理が施されたＦＡＫＥ画素データは、非可逆圧縮データ２Ｄ３としてＦＡＫＥ画素データ圧縮部５６０から出力される。
【０１５８】
第２Ｌプレーン圧縮部５４０および第２Ｈプレーン圧縮部５５０のそれぞれから出力される下位圧縮データ２Ｄ２Ｌと上位圧縮データ２Ｄ２Ｈとに、さらに非可逆圧縮データ２Ｄ３が加わったデータの組で、元の画像データに対し、非可逆圧縮部５において非可逆圧縮処理が施された圧縮データが構成される。この圧縮データは、フレーム合成部５２８に入力される。
【０１５９】
フレーム合成部５２８は、下位圧縮データ２Ｄ２Ｌと上位圧縮データ２Ｄ２Ｈと非可逆圧縮データ２Ｄ３とを組み合わせてフレームを生成する。
【０１６０】
上述した非可逆圧縮部５の処理では、情報は失われて伸張処理でも完全に再現はできないが、自然画における判別が可能な程度の情報が維持される。しかも、非可逆圧縮部５での圧縮処理は、可逆圧縮部２に比べ圧縮率が格段に高い。
【０１６１】
本実施形態の圧縮処理部Ｃでは、上述した可逆圧縮処理と非可逆圧縮処理とが、画素値の最大値と最小値との差に基づいて適切に選択されるので、文字や線画の画質劣化を抑えつつ、データの圧縮率を向上することができる。
【０１６２】
なお、上述した実施形態では、本発明にいう圧縮制御部のブロックの例として、受け取ったデータの画面ＰをＭ行×ｎ列のブロックに区分けする圧縮制御部６を示したが、本発明はこれに限られるものではなく、例えば、複数のブロックは大きさが互いに異なるものであってもよい。
【０１６３】
図２３は、データの画面が図５とは異なるブロックに区分けされた例を示す図である。本発明にいう圧縮制御部は、例えば、前処理としての簡易画像解析の結果や、画像内における要素の標準的な配置に基づいて、画面Ｐ２を例えば図２３に示すような、互いに大きさの異なるブロックに区分けするものであってもよい。また、本発明にいう圧縮制御部のブロックは、例えば、１画面を縦に区切る横に延びた帯状のものであってもよい。
【０１６４】
また、上述した実施形態では、本発明にいう符号化部の例として、差分符号化処理されたデータをハフマン符号化する符号化部を示したが、本発明はこれに限られるものではなく、例えば、離散コサイン変換が施されたデータをハフマン符号化するものであってもよい。
【０１６５】
また、上述した実施形態では、本発明にいう画像データ圧縮装置の例として、放射線画像診断システムＳの放射線検出ユニット３を示したが、本発明はこれに限られるものではなく、例えば、デジタルカメラであってもよい。
【０１６６】
また、上述した実施形態では、画像データ圧縮装置の例として、画像データ圧縮プログラムにより構成される圧縮処理部Ｃを有する放射線検出ユニット３の例を示したが、本発明はこれに限られるものではなく、例えば、画像データ圧縮装置は論理回路によって構成されたものであってもよい。
【符号の説明】
【０１６７】
１    放射線照射装置
Ｃ    圧縮処理部
２    可逆圧縮部
３    放射線検出ユニット
４    システムコントローラ
５    非可逆圧縮部
６    圧縮制御部
７    切替部
２３    差分符号化部
２４    オフセット部
２５    プレーン分割部
２６    Ｌプレーン圧縮部
２７    Ｈプレーン圧縮部
２８    フレーム合成部
２６１    ハフマン符号化部
２６３    データスキャン部
２７１    ランレングス符号化部
２７２    データスキャニング部
２７２    データスキャン部
２７３    ハフマン符号化部
５０５    間引き処理部
５１０    第２差分符号化部
５２５    エッジ検出部
５４０    第２Ｌプレーン圧縮部
５５０    第２Ｈプレーン圧縮部
５６０    ＦＡＫＥ画素データ圧縮部
５６１    ビット数削減／非エッジ符号出力部
【図１】
2011019059.tif 000007
【図２】
2011019059.tif 000008
【図３】
2011019059.tif 000009
【図４】
2011019059.tif 000010
【図５】
2011019059.tif 000011
【図６】
2011019059.tif 000012
【図７】
2011019059.tif 000013
【図８】
2011019059.tif 000014
【図９】
2011019059.tif 000015
【図１０】
2011019059.tif 000016
【図１１】
2011019059.tif 000017
【図１２】
2011019059.tif 000018
【図１３】
2011019059.tif 000019
【図１４】
2011019059.tif 000020
【図１５】
2011019059.tif 000021
【図１６】
2011019059.tif 000022
【図１７】
2011019059.tif 000023
【図１８】
2011019059.tif 000024
【図１９】
2011019059.tif 000025
【図２０】
2011019059.tif 000026
【図２１】
2011019059.tif 000027
【図２２】
2011019059.tif 000028
【図２３】
2011019059.tif 000029