(57)【要約】【課題】性質の異なる複数の圧縮方式を組み合わせて、データの解像度、精度、可逆性などの利用条件に合わせたデータ圧縮を可能にする。【解決手段】データ生成手段１０１が生成するデータをビット単位で分割するビット分離手段１０２と、分割された上位ビットのデータをサブサンプリングするサブサンプリング手段１０３と、サブサンプリングされたデータを圧縮するデータ圧縮手段１０４と、圧縮されたデータをクライアント１０６に伝送する配信手段１０５と、サブサンプリングで残ったデータを圧縮する高速圧縮手段１０７とから構成され、ビット分割とサブサンプリングによって圧縮するデータの量を削減することでデータ圧縮手段１０４の圧縮処理を必要な時間内に完了し、ビット分割された残りのデータとサブサンプリングされた残りのデータは、それぞれ非圧縮と高速圧縮でデータ記憶手段１０８に蓄積し、クライアントからの要求に応じて後に送信する。【選択図】図１−１
2008147805.tif 000002
【特許請求の範囲】
【請求項１】
圧縮対象データの各要素をビット単位で分割するビット分離手段と、
分割された上位ビットのデータをサブサンプリングするサブサンプリング手段と、
サブサンプリングされたデータを圧縮する第１のデータ圧縮手段とを備えたことを特徴とするデータ圧縮装置。
【請求項２】
サブサンプリングで残ったデータを前記第１のデータ圧縮手段に比べて高速な別の圧縮手法により圧縮する第２のデータ圧縮手段と、
分割された下位ビットのデータと前記第２のデータ圧縮手段で圧縮されたデータとを蓄積するデータ記憶手段と、
前記第１のデータ圧縮手段で圧縮されたデータをクライアントに送信し、その後に前記データ記憶手段に蓄積されたデータを前記クライアントに送信する配信手段とを備えたことを特徴とする請求項１記載のデータ圧縮装置。
【請求項３】
サブサンプリングで残ったデータを前記第１のデータ圧縮手段に比べて高速な別の圧縮手法により圧縮する第２のデータ圧縮手段と、
分割された下位ビットのデータと前記第２のデータ圧縮手段で圧縮されたデータとを蓄積するデータ記憶手段と、
前記第１のデータ圧縮手段で圧縮されたデータから一部のデータを抽出してクライアントに送信し、残りを前記データ記憶手段に蓄積した後、前記データ記憶手段に蓄積されたデータを前記クライアントに送信する配信手段とを備えたことを特徴とする請求項１記載のデータ圧縮装置。
【請求項４】
前記配信手段は、前記クライアントの要求に応じて、前記データ記憶手段に蓄積されたデータを前記クライアントに送信することを特徴とする請求項２または３記載のデータ圧縮装置。
【請求項５】
前記配信手段は、前記クライアントとの間の伝送路が空いたタイミングで、前記データ記憶手段に蓄積されたデータを前記クライアントに送信することを特徴とする請求項２または３記載のデータ圧縮装置。
【請求項６】
コンピュータを用いてデータを圧縮する方法であって、
前記コンピュータが、圧縮対象データの各要素をビット単位で分割する第１のステップと、
前記コンピュータが、分割された上位ビットのデータをサブサンプリングする第２のステップと、
前記コンピュータが、サブサンプリングされたデータを圧縮する第３のステップとを含むことを特徴とするデータ圧縮方法。
【請求項７】
前記コンピュータが、サブサンプリングで残ったデータを前記第３のステップに比べて高速な別の圧縮手法により圧縮する第４のステップと、
前記コンピュータが、分割された下位ビットのデータと前記第４のステップで圧縮されたデータとを蓄積する第５のステップと、
前記コンピュータが、前記第３のステップで圧縮されたデータをクライアントに送信し、その後に前記データ記憶手段に蓄積されたデータを前記クライアントに送信する第６のステップとを含むことを特徴とする請求項６記載のデータ圧縮方法。
【請求項８】
前記コンピュータが、サブサンプリングで残ったデータを前記第３のステップに比べて高速な別の圧縮手法により圧縮する第４のステップと、
前記コンピュータが、分割された下位ビットのデータと前記第４のステップで圧縮されたデータとを蓄積する第５のステップと、
前記コンピュータが、前記第１のステップで圧縮されたデータから一部のデータを抽出してクライアントに送信し、残りを前記データ記憶手段に蓄積した後、前記データ記憶手段に蓄積されたデータを前記クライアントに送信する第６のステップとを含むことを特徴とする請求項６記載のデータ圧縮方法。
【請求項９】
圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされたデータを、圧縮データから伸張する第１のデータ伸張手段と、
圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされた残りのデータを、圧縮データから伸張する第２のデータ伸張手段と、
前記第１のデータ伸張手段で伸張されたデータと前記第２のデータ伸張手段で伸張されたデータとから、圧縮対象データの各要素をビット単位で分割した上位ビットのデータを復元する補完手段と、
前記補完手段で復元されたデータに、圧縮対象データの各要素をビット単位で分割した下位ビットのデータを結合するビット結合手段とを備えることを特徴とするデータ伸張装置。
【請求項１０】
圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされたデータを、圧縮データから伸張する第１のデータ伸張手段と、
圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされた残りのデータを、圧縮データから伸張する第２のデータ伸張手段と、
前記第１のデータ伸張手段で伸張されたデータに、圧縮対象データの各要素をビット単位で分割した下位ビットのデータを結合して、圧縮対象データからサブサンプリングされたデータを復元する第１のビット結合手段と、
前記第２のデータ伸張手段で伸張されたデータに、圧縮対象データの各要素をビット単位で分割した下位ビットのデータを結合して、圧縮対象データからサンプリングされたデータの残りのデータを復元する第２のビット結合手段と、
前記第１のビット結合手段で復元されたデータと前記第２のビット結合手段で復元されたデータとから圧縮対象データを復元する補完手段とを備えることを特徴とするデータ伸張装置。
【請求項１１】
コンピュータを用いてデータを伸張する方法であって、
前記コンピュータが、圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされたデータを、圧縮データから伸張する第１のステップと、
前記コンピュータが、圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされた残りのデータを、圧縮データから伸張する第２のステップと、
前記コンピュータが、前記第１のステップで伸張されたデータと前記第２のステップで伸張されたデータとから、圧縮対象データの各要素をビット単位で分割した上位ビットのデータを復元する第３のステップと、
前記コンピュータが、前記第３のステップで復元されたデータに、圧縮対象データの各要素をビット単位で分割した下位ビットのデータを結合する第４のステップとを含むことを特徴とするデータ伸張方法。
【請求項１２】
コンピュータを用いてデータを伸張する方法であって、
前記コンピュータが、圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされたデータを、圧縮データから伸張する第１のステップと、
前記コンピュータが、圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされた残りのデータを、圧縮データから伸張する第２のステップと、
前記コンピュータが、前記第１のステップで伸張されたデータに、圧縮対象データの各要素をビット単位で分割した下位ビットのデータを結合して、圧縮対象データからサブサンプリングされたデータを復元する第４のステップと、
前記コンピュータが、前記第２のステップで伸張されたデータに、圧縮対象データの各要素をビット単位で分割した下位ビットのデータを結合して、圧縮対象データからサンプリングされたデータの残りのデータを復元する第５のステップと、
前記コンピュータが、前記第４のステップで復元されたデータと前記第５のステップで復元されたデータとから圧縮対象データを復元する第６のステップとを含むことを特徴とするデータ伸張方法。
【請求項１３】
コンピュータに、
圧縮対象データの各要素をビット単位で分割する第１の処理と、
分割された上位ビットのデータをサブサンプリングする第２の処理と、
サブサンプリングされたデータを圧縮する第３の処理とを行わせるためのデータ圧縮プログラム。
【請求項１４】
前記コンピュータに、さらに、
サブサンプリングで残ったデータを前記第３の処理に比べて高速な別の圧縮手法により圧縮する第４の処理と、
分割された下位ビットのデータと前記第４の処理で圧縮されたデータとを蓄積する第５の処理と、
前記第３の処理で圧縮されたデータをクライアントに送信し、その後に前記データ記憶手段に蓄積されたデータを前記クライアントに送信する第６の処理とを行わせるための請求項１３記載のデータ圧縮プログラム。
【請求項１５】
前記コンピュータに、さらに、
サブサンプリングで残ったデータを前記第３のステップに比べて高速な別の圧縮手法により圧縮する第４の処理と、
分割された下位ビットのデータと前記第４の処理で圧縮されたデータとを蓄積する第５の処理と、
前記第１の処理で圧縮されたデータから一部のデータを抽出してクライアントに送信し、残りを前記データ記憶手段に蓄積した後、前記データ記憶手段に蓄積されたデータを前記クライアントに送信する第６の処理とを行わせるための請求項１３記載のデータ圧縮プログラム。
【請求項１６】
コンピュータに、
圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされたデータを、圧縮データから伸張する第１の処理と、
圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされた残りのデータを、圧縮データから伸張する第２の処理と、
前記第１の処理で伸張されたデータと前記第２の処理で伸張されたデータとから、圧縮対象データの各要素をビット単位で分割した上位ビットのデータを復元する第３の処理と、
前記第３の処理で復元されたデータに、圧縮対象データの各要素をビット単位で分割した下位ビットのデータを結合する第４の処理とを行わせるためのデータ伸張プログラム。
【請求項１７】
コンピュータに、
圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされたデータを、圧縮データから伸張する第１の処理と、
圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされた残りのデータを、圧縮データから伸張する第２の処理と、
前記第１の処理で伸張されたデータに、圧縮対象データの各要素をビット単位で分割した下位ビットのデータを結合して、圧縮対象データからサブサンプリングされたデータを復元する第４の処理と、
前記第２の処理で伸張されたデータに、圧縮対象データの各要素をビット単位で分割した下位ビットのデータを結合して、圧縮対象データからサンプリングされたデータの残りのデータを復元する第５の処理と、
前記第４の処理で復元されたデータと前記第５の処理で復元されたデータとから圧縮対象データを復元する第６の処理とを行わせるためのデータ伸張プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータの圧縮と伸張に関し、特に圧縮対象データの一部を圧縮して伝送し、残りは別の手法で圧縮して別途伝送するデータ圧縮装置とその伸張装置に関する。
【背景技術】
【０００２】
画素数の多い画像データなどサイズの大きなデータを伝送する際には、伝送効率を上げるためにデータを圧縮して伝送する場合が多い。その際、特許文献１に見られるように、データ全体をJPEG2000形式のようなプログレッシブ性やタイルが扱える画像形式に圧縮した上で、まず、低解像度画像や部分画像などのようなデータサイズの小さい画像データを先に伝送し、残りのデータについては必要になった時点、あるいは、伝送路の空きができた時点などに時間をかけて順次送信することが行われている。
【０００３】
しかし、JPEG2000のようなプログレッシブ性を持ち、高圧縮率なデータ圧縮を行うための圧縮処理は、一般的に、計算量が非常に多いため、圧縮処理に長い時間を要する。このため、例えば、ライブ映像や連続して撮影されるカメラ画像のように、時間とともに生成されるデータをリアルタイムで圧縮しなければならない場合、圧縮処理がデータの生成速度に追い付けず、結果として、生成されたデータを全て圧縮することが出来ない事態を招いてしまう。
【０００４】
このような問題を解決するために、圧縮対象データの全てを同一の手法で圧縮するのではなく、圧縮対象データの一部を或る手法で圧縮して伝送し、残りのデータは別の手法で圧縮して保存しておき、後刻に伝送する方法が提案されている。具体的には、たとえば特許文献２では、圧縮対象画像から一部の画素を間引いて作った縮小画像を第１の圧縮手法で圧縮したデータをまず伝送し、間引いた残りの画像を圧縮したデータは保存しておいて、要求に応じて伝送する。
【０００５】
画像から一部の画素を間引くことによって縮小画像を生成し、この縮小画像を圧縮することによってデータ量を削減する方法は、特許文献３にも記載されている。また特許文献３には、画像から一部の画素を間引く代わりに、画像の周辺部のダイナミックレンジを下げることにより対象画像の符号量を減らす方法も記載されている。具体的には、カラー画像において、原画像が１画素当たり各８ビットの輝度信号、色差信号R-YおよびB-Yで構成されている場合、画面の中心領域以外の周辺領域の各画素を例えば上位４ビットや上位２ビットで表示する。
【０００６】
【特許文献１】特開２００４−４０６７４号公報
【特許文献２】特開平８−２６５７５２号公報
【特許文献３】特許第３０３４９３３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
圧縮対象データの一部を或る手法で圧縮して伝送し、残りのデータは別の手法で圧縮して保存しておき、後刻に伝送する従来の方法においては、専ら、圧縮対象データから一部のデータを間引くことによって、最初に圧縮して伝送するデータのサイズを縮小している。このため、最初に圧縮して伝送するデータのサイズをより小さくするためには、間引き率を多くしなければならず、解像度が低くなり過ぎるという課題がある。従って、たとえば画像データの場合、元の画像のサンプル画像としての役割を果たすことができなくなる。
【０００８】
他方、特許文献３に記載されているように、画像から一部の画素を間引く代わりに、画像の周辺部のダイナミックレンジを下げることで対象画像の符号量を減らす方法は、データ量が周辺部のみ減少するだけなので、全体としてのデータ量の削減効果は小さい。また、データ量をより削減するために、ダイナミックレンジを下げ過ぎると、元の画像の判別が完全に不可能になってしまうという問題がある。
【０００９】
本発明はこのような事情に鑑みて提案されたものであり、その目的は、圧縮対象データの一部を圧縮するのに好適なデータ圧縮装置とその復元装置を提供することにある。
【００１０】
本発明の別の目的は、性質の異なる複数の圧縮方式を組み合わせることで、JPEG2000のようなプログレッシブ性や高圧縮率を持つが計算量の多い圧縮方式を用いても、データの解像度、精度、可逆性などの利用条件に合わせたデータ圧縮、伝送を、必要な時間内に完了できるデータ圧縮装置とその復元装置を提供することにある。
【課題を解決するための手段】
【００１１】
本発明の第１のデータ圧縮装置は、圧縮対象データの各要素をビット単位で分割するビット分離手段と、分割された上位ビットのデータをサブサンプリングするサブサンプリング手段と、サブサンプリングされたデータを圧縮する第１のデータ圧縮手段とを備えたことを特徴とする。
【００１２】
本発明の第２のデータ圧縮装置は、第１のデータ圧縮装置において、サブサンプリングで残ったデータを前記第１のデータ圧縮手段に比べて高速な別の圧縮手法により圧縮する第２のデータ圧縮手段と、分割された下位ビットのデータと前記第２のデータ圧縮手段で圧縮されたデータとを蓄積するデータ記憶手段と、前記第１のデータ圧縮手段で圧縮されたデータをクライアントに送信し、その後に前記データ記憶手段に蓄積されたデータを前記クライアントに送信する配信手段とを備えたことを特徴とする。
【００１３】
本発明の第３のデータ圧縮装置は、第１のデータ圧縮装置において、サブサンプリングで残ったデータを前記第１のデータ圧縮手段に比べて高速な別の圧縮手法により圧縮する第２のデータ圧縮手段と、分割された下位ビットのデータと前記第２のデータ圧縮手段で圧縮されたデータとを蓄積するデータ記憶手段と、前記第１のデータ圧縮手段で圧縮されたデータから一部のデータを抽出してクライアントに送信し、残りを前記データ記憶手段に蓄積した後、前記データ記憶手段に蓄積されたデータを前記クライアントに送信する配信手段とを備えたことを特徴とする。
【００１４】
本発明の第４のデータ圧縮装置は、第２または第３のデータ圧縮装置において、前記配信手段は、前記クライアントの要求に応じて、前記データ記憶手段に蓄積されたデータを前記クライアントに送信することを特徴とする。
【００１５】
本発明の第５のデータ圧縮装置は、第２または第３のデータ圧縮装置において、前記配信手段は、前記クライアントとの間の伝送路が空いたタイミングで、前記データ記憶手段に蓄積されたデータを前記クライアントに送信することを特徴とする。
【００１６】
本発明の第１のデータ伸張装置は、圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされたデータを、圧縮データから伸張する第１のデータ伸張手段と、圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされた残りのデータを、圧縮データから伸張する第２のデータ伸張手段と、前記第１のデータ伸張手段で伸張されたデータと前記第２のデータ伸張手段で伸張されたデータとから、圧縮対象データの各要素をビット単位で分割した上位ビットのデータを復元する補完手段と、前記補完手段で復元されたデータに、圧縮対象データの各要素をビット単位で分割した下位ビットのデータを結合するビット結合手段とを備えることを特徴とする。
【００１７】
本発明の第２のデータ伸張装置は、圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされたデータを、圧縮データから伸張する第１のデータ伸張手段と、圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされた残りのデータを、圧縮データから伸張する第２のデータ伸張手段と、前記第１のデータ伸張手段で伸張されたデータに、圧縮対象データの各要素をビット単位で分割した下位ビットのデータを結合して、圧縮対象データからサブサンプリングされたデータを復元する第１のビット結合手段と、前記第２のデータ伸張手段で伸張されたデータに、圧縮対象データの各要素をビット単位で分割した下位ビットのデータを結合して、圧縮対象データからサンプリングされたデータの残りのデータを復元する第２のビット結合手段と、前記第１のビット結合手段で復元されたデータと前記第２のビット結合手段で復元されたデータとから圧縮対象データを復元する補完手段とを備えることを特徴とする。
【００１８】
『作用』
本発明においては、画像データなどの圧縮対象データの一部を圧縮する場合、まず圧縮対象データの各要素をビット単位で分割し、次いで、分割された上位ビットのデータをサブサンプリングし、そして、サブサンプリングされたデータをたとえばJPEG2000などのようなプログレッシブ性やタイルが扱えるデータ圧縮方法により圧縮する。たとえば画像データを例に具体的に説明すると、１つの要素のビット数がLビットであれば、それをaビットの上位ビットとL-aビットの下位ビットとに分割し、aビットの上位ビットのデータをサブサンプリングの対象とし、横方向についてm個の要素当たり1個の要素を抽出し、縦方向についてn個の要素当たり1個の要素を抽出する。従って、圧縮前のデータサイズは、元のサイズの(a/L)×(1/mn)になる。たとえば、L=16,a=8,m=n=2とすると、圧縮前のデータサイズは元のサイズの1/8になる。このため、JPEG2000などのような計算量の多い圧縮方法であっても、リアルタイムで発生するカメラ画像のようなデータを取りこぼすことなく圧縮することが可能となる。
【００１９】
また本発明においては、上記圧縮されたデータを伝送路を通じてクライアントへ送信する一方、サブサンプリングで残ったデータをDPCMハフマン符号化などの高速な別の圧縮方法により圧縮して、分割された下位ビットのデータとともにデータ記憶手段に蓄積する。そして、クライアントから要求があった場合、あるいはクライアントからの要求がなくても伝送路の空きが生じた場合に、データ記憶手段に蓄積されたデータをクライアントへ送信する。
【００２０】
また別の態様にあっては、上記圧縮されたデータの一部を伝送路を通じてクライアントへ送信する一方、残りのデータをデータ記憶手段に蓄積し、またサブサンプリングで残ったデータをDPCMハフマン符号化などの高速な別の圧縮方法により圧縮して、分割された下位ビットのデータとともにデータ記憶手段に蓄積する。そして、クライアントから要求があった場合、あるいはクライアントからの要求がなくても伝送路の空きが生じた場合に、データ記憶手段に蓄積されたデータをクライアントへ送信する。
【００２１】
他方、クライアント側においては、圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされたデータを、圧縮データから伸張し、また、圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされた残りのデータを、圧縮データから伸張し、これらの伸張されたデータから圧縮対象データの各要素をビット単位で分割した上位ビットのデータを復元し、最後に、この復元されたデータに、圧縮対象データの各要素をビット単位で分割した下位ビットのデータを結合することで、元の圧縮対象データを復元する。
【００２２】
また別の態様にあっては、クライアント側において、圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされたデータを、圧縮データから伸張し、この伸張されたデータに、圧縮対象データの各要素をビット単位で分割した下位ビットのデータを結合して、圧縮対象データからサブサンプリングされたデータを復元し、また、圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされた残りのデータを、圧縮データから伸張し、この伸張されたデータに、圧縮対象データの各要素をビット単位で分割した下位ビットのデータを結合して、圧縮対象データからサンプリングされたデータの残りのデータを復元し、さらに、これら復元されたデータから圧縮対象データを復元する。
【発明の効果】
【００２３】
本発明によれば、圧縮前のデータサイズの削減をデータの間引きのみ或いは各要素のビット数の削減のみで行うのに比べて解像度の著しい低下を防止することができる。たとえば、各画素値が16ビットのグレースケールで表されたビットマップ画像のデータ量を、圧縮前に約1/8にしたい場合、データの間引きのみで実現する場合には縦横それぞれ3画素に1画素の割合で抽出する必要があり、また各要素のビット数の削減のみで実現する場合には各画素値を2ビットにする必要があり、何れの場合も解像度の著しい低下が予想されるのに対し、本発明では、各画素値を半分の8ビット、間引きを縦横それぞれ2画素当たり1画素とすれば良く、解像度の著しい低下が防止される。これにより、第１のデータ圧縮手段の処理負荷が重い場合でも、圧縮対象データを取りこぼすことなく十分な解像度を持つデータに圧縮することが可能となる。
【発明を実施するための最良の形態】
【００２４】
次に本発明を実施するための最良の形態について図面を参照して詳細に説明する。
【００２５】
『第１の実施の形態』
図１−１を参照すると、本発明の第１の実施の形態は、プログラム制御により動作するデータ処理装置（サーバ）１００と、データ生成手段１０１と、プログラム制御により動作するデータ処理装置（クライアント）１０６とから構成されている。
【００２６】
また、サーバを構成するデータ処理装置１００は、ビット分離手段１０２と、サブサンプリング手段１０３と、データ圧縮手段１０４と、配信手段１０５と、高速圧縮手段１０７と、データ記憶手段１０８とから構成されている。これらの手段はそれぞれ概略次のように動作する。
【００２７】
データ生成手段１０１は、クライアント１０６に伝送するデータを生成し、ビット分離手段１０２に受け渡す。
【００２８】
ビット分離手段１０２は、データ生成手段１０１から受け取ったデータの各要素を構成するバイト列をビット単位で２つに分割し、分割した上位ビットデータについてはサブサンプリング手段１０３に受け渡し、下位ビットデータについてはデータ記憶手段１０８にｒａｗデータ１０８ｂとしてそのまま蓄積する。
【００２９】
サブサンプリング手段１０３は、ビット分離手段１０２から受け渡された上位ビットデータをサブサンプリングし、サブサンプリングされたデータをデータ圧縮手段１０４に受け渡し、サブサンプリングで残ったデータを高速圧縮手段１０７に受け渡す。
【００３０】
データ圧縮手段１０４は、サブサンプリング手段１０３から受け渡されたサブサンプリングされたデータを圧縮し、基本圧縮データ１０８ｃとして配信手段１０５に受け渡す。
【００３１】
高速圧縮手段１０７は、サブサンプリング手段１０３から受け渡されたサブサンプリングで残ったデータを、データ圧縮手段１０４より高速なデータ圧縮方法により圧縮し、データ記憶手段１０８に圧縮データ１０８ａとして蓄積する。
【００３２】
配信手段１０５は、データ圧縮手段１０４が圧縮した基本圧縮データ１０８ｃを受け取り、伝送路を通じてクライアント１０６に送信する。また、配信手段１０５は、クライアント１０６からの要求に応じて、データ記憶手段１０８に蓄積された圧縮データ１０８ａやｒａｗデータ１０８ｂを、クライアント１０６に送信する。
【００３３】
図１−２を参照すると、クライアントを構成するデータ処理装置１０６は、通信手段１１１と、データ伸張手段１１２と、補完手段１１３と、ビット結合手段１１４と、高速伸張手段１１５と、データ記憶手段１１６とから構成されている。これらの手段はそれぞれ概略次のように動作する。
【００３４】
通信手段１１１は、サーバを構成するデータ処理装置１００から基本圧縮データ１０８ｃ、圧縮データ１０８ａおよびｒａｗデータ１０８ｂを受信し、基本圧縮データ１０８ｃはデータ伸張手段１１２に受け渡し、圧縮データ１０８ａおよびｒａｗデータ１０８ｂはデータ記憶手段１１６に蓄積する。
【００３５】
データ伸張手段１１２は、サーバ側の圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされたデータを、基本圧縮データ１０８ｃから伸張し、図示しない出力装置（ディスプレイなど）などに出力すると共に、補完手段１１３に受け渡す。
【００３６】
高速伸張手段１１５は、サーバ側の圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされた残りのデータを、圧縮データ１０８ａから伸張し、補完手段１１３に受け渡す。
【００３７】
補完手段１１３は、データ伸張手段１１２で伸張されたデータと高速伸張手段１１５で伸張されたデータとから、サーバ側の圧縮対象データの各要素をビット単位で分割した上位ビットのデータを復元し、図示しない前記出力装置などに出力すると共に、ビット結合手段１１４に受け渡す。
【００３８】
ビット結合手段１１４は、補完手段１１３で復元されたデータに、ｒａｗデータ１０８ｂを結合することにより、サーバ側の圧縮対象データを復元し、図示しない前記出力装置などに出力する。
【００３９】
次に、図１−１、図１−２、および図２、図３、図４のフローチャートを参照して本実施の形態の全体の動作について詳細に説明する。最初にサーバを構成するデータ処理装置１００の動作を説明する。
【００４０】
まず、ビット分離手段１０２は、データ生成手段１０１が生成したクライアント１０６に伝送するデータを受け取る（図２のステップ２０１）。次に、受け取ったデータの各要素を構成するバイト列をビット単位で２つに分割し（ステップ２０２）、分割した下位ビットデータをデータ記憶手段１０８にｒａｗデータ１０８ｂとしてそのまま蓄積する（ステップ２０３）。
【００４１】
次に、サブサンプリング手段１０３は、上位ビットデータをサブサンプリングし（ステップ２０４）、サブサンプリングされたデータはデータ圧縮手段１０４で、サブサンプリングで残ったデータは高速圧縮手段１０７で、それぞれ圧縮を行い（ステップ２０５）、高速圧縮手段１０７で圧縮された圧縮データをデータ記憶手段１０８に圧縮データ１０８ａとして蓄積する（ステップ２０６）。また、データ圧縮手段１０４で圧縮された圧縮データは基本圧縮データ１０８ｃとして配信手段１０５に渡される。
【００４２】
次に、配信手段１０５は、データ圧縮手段１０４から圧縮したデータ（基本圧縮データ）１０８ｃを受け取った場合（図３のステップ３０１でＹ）、受け取った基本圧縮データ１０８ｃをクライアント１０６に送信する（ステップ３０４）。また、配信手段１０５は、クライアント１０６から要求があった場合（ステップ３０２でＹ）に、データ記憶手段１０８に蓄積されている圧縮データ１０８ａやｒａｗデータ１０８ｂから要求に対応したデータを取り出し（ステップ３０３）、クライアント１０６に送信する（ステップ３０４）。
【００４３】
次にクライアントを構成するデータ処理装置１０６の動作を説明する。まずデータ伸張手段１１２は、配信手段１０５から送信されるデータ圧縮手段１０４が圧縮した基本圧縮データ１０８ｃを通信手段１１１を通じて受信し（図４のステップ４０１）、データを伸張する（ステップ４０２）。さらに、伸張したデータの内容に応じて詳細データの要求が必要な場合（ステップ４０３でＹ）、通信手段１１１は配信手段１０５に詳細データの要求を行う（ステップ４０４）。
【００４４】
詳細データの要求の結果、配信手段１０５から送信される差分データ（圧縮データ１０８ａやｒａｗデータ１０８ｂ）を受信すると（ステップ４０５）、ステップ４０１で受信した基本圧縮データ１０８ｃとステップ４０５で受信した差分データ（圧縮データ１０８ａやｒａｗデータ１０８ｂ）とを合わせてデータ伸張を行う（ステップ４０６）。具体的には、高速伸張手段１１５が圧縮データ１０８ａの伸張を行い、補完手段１１３が、データ伸張手段１１２および高速伸張手段１１５で伸張されたデータから、圧縮対象データの各要素をビット単位で分割した上位ビットのデータを復元し、最後にビット結合手段１１４が、補完手段１１３で復元されたデータにｒａｗデータ１０８ｂを結合することにより、サーバ側の圧縮対象データを復元する。
【００４５】
次に、本実施の形態の効果について説明する。
【００４６】
本実施の形態では、ビット分離手段１０２とサブサンプリング手段１０３が、各要素のビット分割やサブサンプリングを行い、データ生成手段１０１が生成したデータの一部を抽出することでデータ圧縮手段１０４が処理するデータ量を削減するように構成されているため、データ圧縮手段１０４の処理負荷が重い場合でも、データ生成手段１０１が生成するデータを取りこぼすことなく圧縮、伝送できる。
【００４７】
さらに、ビット分離手段１０２とサブサンプリング手段１０３が行うビット分割やサブサンプリングで残ったデータを削除することなく、ｒａｗデータ１０８ｂや、高速圧縮手段１０７で圧縮された圧縮データ１０８ａとしてデータ記憶手段１０８に蓄積しておき、クライアント１０６から詳細データの要求があったときには、配信手段１０５がｒａｗデータ１０８ｂや圧縮データ１０８ａを差分データとしてクライアント１０６に送信し、クライアント１０６は、ステップ４０１で配信手段１０５から受け取った基本圧縮データ１０８ｃはそのまま再利用し、配信手段１０５から送信されるｒａｗデータ１０８ｂと、圧縮データ１０８ａだけを差分データとして受信し、あわせてデータ伸張することで詳細データの取得を行うように構成されているため、クライアント１０６が詳細データを要求した場合に、対応するデータの伝送を効率的に行うことができる。
【００４８】
『第１の実施の形態の変形例』
第１の実施の形態におけるクライアント１０６は、補完手段１１３による補完処理の後にビット結合手段１１４によるビット結合を行ったが、ビット結合とデータ補完の順序を入れ替えることも可能である。その場合のクライアント１０６の構成例を図１−３に示す。図１−２との相違点は、補完手段１１３が補完手段１２３に置き換えられ、ビット結合手段１１４が、第１のビット結合手段１２１と第２のビット結合手段１２２に置き換えられていることである。
【００４９】
第１のビット結合手段１２１は、データ伸張手段１１２で伸張されたデータに、ｒａｗデータ１０８ｂのうち、サブサンプリングされたデータのｒａｗデータを結合することにより、圧縮対象データからサブサンプリングされたデータを復元し、補完手段１２３に受け渡す。
【００５０】
第２のビット結合手段１２２は、高速伸張手段１１５で伸張されたデータに、ｒａｗデータ１０８ｂのうち、サブサンプリングされた残りのデータのｒａｗデータを結合することにより、圧縮対象データからサンプリングされたデータの残りのデータを復元し、補完手段１２３に受け渡す。
【００５１】
補完手段１２３は、第１のビット結合手段１２１で復元されたデータと第２のビット結合手段１２２で復元されたデータとから、圧縮対象データを復元する。
【００５２】
『第２の実施の形態』
次に本発明の第２の実施の形態について図面を参照して詳細に説明する。
【００５３】
図５−１を参照すると、本発明の第２の実施の形態は、プログラム制御により動作するデータ処理装置（サーバ）５００と、データ生成手段５０１と、プログラム制御により動作するデータ処理装置（クライアント）５０６とから構成されている。
【００５４】
また、サーバを構成するデータ処理装置５００は、ビット分離手段５０２と、サブサンプリング手段５０３と、データ圧縮手段５０４と、配信手段５０５と、高速圧縮手段５０７と、データ記憶手段５０８とから構成されている。これらの手段はそれぞれ概略次のように動作する。
【００５５】
データ生成手段５０１は、クライアント５０６に伝送するデータを生成し、ビット分離手段５０２に受け渡す。
【００５６】
ビット分離手段５０２は、データ生成手段５０１から受け取ったデータの各要素を構成するバイト列をビット単位で２つに分割し、分割した上位ビットデータについてはサブサンプリング手段５０３に受け渡し、下位ビットデータについてはデータ記憶手段５０８にｒａｗデータ５０８ｂとしてそのまま蓄積する。
【００５７】
サブサンプリング手段５０３は、ビット分離手段５０２から受け渡された上位ビットデータをサブサンプリングし、サブサンプリングされたデータをデータ圧縮手段５０４に受け渡し、サブサンプリングで残ったデータを高速圧縮手段５０７に受け渡す。
【００５８】
データ圧縮手段５０４は、サブサンプリング手段５０３から受け渡されたサブサンプリングされたデータを圧縮し、基本圧縮データ５０８ｃとして配信制御手段５０５に受け渡す。
【００５９】
高速圧縮手段５０７は、サブサンプリング手段５０３から受け渡されたサブサンプリングで残ったデータを高速に圧縮し、データ記憶手段５０８に圧縮データ５０８ａとして蓄積する。
【００６０】
配信手段５０５は、データ圧縮手段５０４が圧縮した基本圧縮データ５０８ｃを受け取り、クライアント５０６との間の伝送路の帯域や利用率に応じて送信するデータを基本圧縮データ５０８ｃから抽出し、抽出したデータをクライアント５０６に送信し、抽出されなかった残りの基本圧縮データ５０８ｃをデータ記憶手段５０８に蓄積する。また、配信手段５０５は、クライアント５０６からの要求に応じて、データ記憶手段５０８に蓄積された圧縮データ５０８ａ、ｒａｗデータ５０８ｂ、基本圧縮データ５０８ｃを、クライアント５０６に送信する。
【００６１】
図５−２を参照すると、クライアントを構成するデータ処理装置５０６は、通信手段５１１と、データ伸張手段５１２と、補完手段５１３と、ビット結合手段５１４と、高速伸張手段５１５と、データ記憶手段５１６とから構成されている。これらの手段はそれぞれ概略次のように動作する。
【００６２】
通信手段５１１は、サーバを構成するデータ処理装置５００から基本圧縮データ５０８ｃ、圧縮データ５０８ａおよびｒａｗデータ５０８ｂを受信し、基本圧縮データ５０８ｃのうち最初に受信した基本圧縮データ５０８ｃはデータ伸張手段５１２に受け渡し、後に差分データとして受信した基本圧縮データ５０８ｃは、その他の差分データである圧縮データ５０８ａおよびｒａｗデータ５０８ｂと共にデータ記憶手段５１６に蓄積する。
【００６３】
データ伸張手段５１２は、サーバ側の圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされたデータを、通信手段５１１から受け取った基本圧縮データ５０８ｃおよびデータ記憶手段５１６から読み出した基本圧縮データ５０８ｃから伸張し、図示しない出力装置（ディスプレイなど）などに出力すると共に、補完手段５１３に受け渡す。
【００６４】
高速伸張手段５１５は、サーバ側の圧縮対象データの各要素をビット単位で分割した上位ビットのデータからサブサンプリングされた残りのデータを、圧縮データ５０８ａから伸張し、補完手段５１３に受け渡す。
【００６５】
補完手段５１３は、データ伸張手段５１２で伸張されたデータと高速伸張手段５１５で伸張されたデータとから、サーバ側の圧縮対象データの各要素をビット単位で分割した上位ビットのデータを復元し、図示しない前記出力装置などに出力すると共に、ビット結合手段５１４に受け渡す。
【００６６】
ビット結合手段５１４は、補完手段５１３で復元されたデータに、ｒａｗデータ５０８ｂを結合することにより、サーバ側の圧縮対象データを復元し、図示しない前記出力装置などに出力する。
【００６７】
次に、図５−１、図５−２、および図２、図４、図６のフローチャートを参照して本実施の形態の全体の動作について詳細に説明する。最初にサーバを構成するデータ処理装置５００の動作を説明する。
【００６８】
まず、ビット分離手段５０２、サブサンプリング手段５０３、データ圧縮手段５０４、高速圧縮手段５０７は、それぞれ、本発明の第１の実施の形態におけるビット分離手段１０２、サブサンプリング手段１０３、データ圧縮手段１０４、高速圧縮手段１０７と同様に、図２のフローチャートのステップ２０１〜２０６に従って動作し、圧縮データ５０８ａ、ｒａｗデータ５０８ｂをデータ記憶手段５０８に蓄積し、データ圧縮手段５０４が圧縮した基本圧縮データ５０８ｃを配信手段５０５に受け渡す。
【００６９】
次に、配信手段５０５は、データ圧縮手段５０４から基本圧縮データ５０８ｃを受け取った場合（図６ステップ６０１でＹ）、クライアント５０６との間の伝送路の帯域や利用率に応じて送信するデータを基本圧縮データ５０８ｃから抽出し（ステップ６０５）、抽出されなかった残りのデータをデータ記憶手段５０８に基本圧縮データ５０８ｃとして蓄積し（ステップ６０６）、抽出した基本圧縮データ５０８ｃはクライアント５０６に送信する（ステップ６０４）。また、配信手段５０５は、クライアント５０６から要求があった場合（ステップ６０２でＹ）に、データ記憶手段５０８に蓄積されている圧縮データ５０８ａ、ｒａｗデータ５０８ｂ、基本圧縮データ５０８ｃから要求に対応したデータを取り出し（ステップ６０３）、クライアント５０６に送信する（ステップ６０４）。
【００７０】
次にクライアントを構成するデータ処理装置５０６の動作を説明する。まずデータ伸張手段５１２は、配信手段５０５から送信されるデータ圧縮手段５０４が圧縮した基本圧縮データ１０８ｃの一部を通信手段５１１を通じて受信し（図４のステップ４０１）、データを伸張する（ステップ４０２）。さらに、伸張したデータの内容に応じて詳細データの要求が必要な場合（ステップ４０３でＹ）、通信手段５１１は配信手段５０５に詳細データの要求を行う（ステップ４０４）。
【００７１】
詳細データの要求の結果、配信手段５０５から送信される差分データ（圧縮データ５０８ａやｒａｗデータ５０８ｂや残りの基本圧縮データ５０８ｃ）を受信すると（ステップ４０５）、ステップ４０１で受信した基本圧縮データ５０８ｃとステップ４０５で受信した差分データ（圧縮データ５０８ａやｒａｗデータ５０８ｂや残りの基本圧縮データ５０８ｃ）とを合わせてデータ伸張を行う（ステップ４０６）。具体的には、差分データとして残りの基本圧縮データ５０８ｃを受信したときは、データ伸張手段５１２がその基本圧縮データ５０８ｃの伸張を行う。また、差分データとして圧縮データ５０８ａを受信した場合、高速伸張手段５１５がその圧縮データ５０８ａの伸張を行い、補完手段５１３が、データ伸張手段５１２および高速伸張手段５１５で伸張されたデータから、圧縮対象データの各要素をビット単位で分割した上位ビットのデータを復元する。また、差分データとしてｒａｗデータ５０８ｂを受信した場合、ビット結合手段５１４が、補完手段５１３で復元されたデータにｒａｗデータ５０８ｂを結合することにより、サーバ側の圧縮対象データを復元する。
【００７２】
次に、本実施の形態の効果について説明する。
【００７３】
本実施の形態では、本発明の第１の実施の形態の効果に加え、配信手段５０５がクライアント５０６との間の伝送路の帯域や利用率に応じて送信するデータをデータ圧縮手段５０４が圧縮したデータから抽出し、抽出されなかった残りのデータはデータ記憶手段５０８に基本圧縮データ５０８ｃとして蓄積し、抽出したデータのみをクライアント５０６に送信するように構成されているため、伝送路の帯域が狭いなどの理由により、データ圧縮手段５０４が圧縮したデータを全て一度に送信できない場合でも、伝送路の帯域に応じた範囲でクライアント５０６はデータを受信することが可能である。さらに、送信できなかったデータもデータ記憶手段５０８に基本圧縮データとして蓄積されるため、必要に応じてクライアント５０６は配信手段５０５に要求を出すことで、時間内には送信できなかったデータを受信することができる。
【００７４】
『第２の実施の形態の変形例』
第２の実施の形態におけるクライアント５０６は、補完手段５１３による補完処理の後にビット結合手段５１４によるビット結合を行ったが、ビット結合とデータ補完の順序を入れ替えることも可能である。その場合のクライアント５０６の構成例を図５−３に示す。図５−２との相違点は、補完手段５１３が補完手段５２３に置き換えられ、ビット結合手段５１４が、第１のビット結合手段５２１と第２のビット結合手段５２２に置き換えられていることである。
【００７５】
第１のビット結合手段５２１は、データ伸張手段５１２で伸張されたデータに、ｒａｗデータ５０８ｂのうち、サブサンプリングされたデータのｒａｗデータを結合することにより、圧縮対象データからサブサンプリングされたデータを復元し、補完手段５２３に受け渡す。
【００７６】
第２のビット結合手段５２２は、高速伸張手段５１５で伸張されたデータに、ｒａｗデータ５０８ｂのうち、サブサンプリングされた残りのデータのｒａｗデータを結合することにより、圧縮対象データからサンプリングされたデータの残りのデータを復元し、補完手段５２３に受け渡す。
【００７７】
補完手段５２３は、第１のビット結合手段５２１で復元されたデータと第２のビット結合手段５２２で復元されたデータとから、圧縮対象データを復元する。
【実施例】
【００７８】
次に、具体的な実施例を用いて本発明を実施するための最良の形態の動作を説明する。
【００７９】
まず、図１−１を参照して本発明の第１の実施の形態の実施例について説明する。
【００８０】
データ生成手段１０１は、例えば、監視カメラで一定時間間隔（例えば、０．５秒毎）に監視映像を撮影し、撮影された監視映像を３０００×３０００画素のビットマップ形式の画像データとしてビット分離手段１０２に順次受け渡す。以下では、データ生成手段１０１の生成するビットマップ画像データの各画素値は１６ビットのグレースケールで表されているものとして説明するが、それ以外の形式、例えば、２４ビットのＲＧＢカラー値であっても同様に処理を行うことが可能である。
【００８１】
次に、ビット分離手段１０２は、データ生成手段１０１が生成した画像データを受け取り（図２のステップ２０１）、受け取った画像データの各画素値を上位８ビットと下位８ビットに分割する（ステップ２０２）。なお、ここでは８ビットずつに分割しているが、例えば、上位４ビット＋下位１２ビットや、上位１０ビット＋下位６ビットに分割するようにしても良い。
【００８２】
次に、画像データの前記分割した下位ビットデータをデータ記憶手段１０８にｒａｗデータ１０８ｂとしてそのまま蓄積する（ステップ２０３）。ここで、下位ビットデータに関しては、画像データなどの場合、まわりの画素との相関が低いことが当業者には良く知られており、何らかの圧縮手段を用いて圧縮してもデータ量が小さくなることはあまり期待されないため、本実施例ではそのまま蓄積している。しかし、何らかの圧縮手段を用いてｒａｗデータ１０８ｂを圧縮して蓄積するようにしても構わない。
【００８３】
次に、サブサンプリング手段１０３は、分割した上位ビットデータを、例えば図７に示すように、図７（ａ）の画像データから縦横それぞれ２画素当たり１画素の割合でサブサンプリングし、図７（ｂ）のように１／４の縮小画像を生成する（ステップ２０４）。なお、ここでは縦横それぞれ２画素当たり１画素の割合でサブサンプリングしているが、サブサンプリングの方法はこれに限定されない。例えば、縦横それぞれ３画素当たり１画素の割合でサブサンプリングしても良いし、縦と横とで間引き率を異ならせ、例えば縦は３画素当たり１画素の割合で、横は２画素当たり１画素の割合でサブサンプリングするようにしても良い。
【００８４】
次に、サブサンプリングされた画像データ（図７（ｂ））をデータ圧縮手段１０４で、例えば、当業者に良く知られた標準画像形式である、JPEG2000（ISO/IEC 15444-1:2002, JPEG 2000 Image Coding System 2nd editionで規定）形式に圧縮する（ステップ２０５）。JPEG2000形式は、カメラ映像のような自然画像データに対して高い圧縮率を持っているが、計算量が多いため、圧縮処理に時間がかかることが当業者には良く知られている。このため、例えば、３０００×３０００画素（各画素１６ビットグレースケール）の画像データをJPEG2000形式に圧縮するのに約４秒の時間がかかっているとすると、データ生成手段１０１が０．５秒毎に生成する画像データ全てを圧縮することができない。しかし、本実施例の構成では、データ生成手段１０１が生成した画像データを、ビット分離手段１０２とサブサンプリング手段１０３により、各画素値を半分（上位８ビット）、画素数を１／４にすることで、画像データのデータ量を１／８に削減しているため、JPEG2000形式への圧縮処理が約０．５秒で終了することになり、データ生成手段１０１が０．５秒毎に生成する画像データを取りこぼすことなく圧縮することが可能となる。
【００８５】
次に、サブサンプリングで残った画像データ（図７（ａ）の白い部分の画素）を高速圧縮手段１０７で、例えば、当業者に良く知られた高速データ圧縮方式である、DPCMハフマン符号化方式で圧縮し（ステップ２０５）、データ記憶手段１０８に圧縮データ１０８ａとして蓄積する（ステップ２０６）。DPCMハフマン符号化方式は、JPEG2000のプログレッシブ性やタイルのような圧縮後データからの部分データの取り出しなどには不向きであるが、圧縮速度が高速であるという特徴を持っている。このため、データ生成手段１０１が生成する画像データを取りこぼすことなく圧縮することが可能である。
【００８６】
次に、配信手段１０５は、データ圧縮手段１０４からJPEG2000形式の圧縮データを受け取った場合（図３のステップ３０１でＹ）、受け取ったデータをクライアント１０６に送信する（ステップ３０４）。また、配信手段１０５は、クライアント１０６から詳細な画像データの要求があった場合（ステップ３０２でＹ）、送信したJPEG2000形式の圧縮データに対応する、サブサンプリングで残ったデータ（図７（ａ）の白い部分の画素）をDPCMハフマン符号化した圧縮データ１０８ａと、下位ビットデータであるｒａｗデータ１０８ｂをデータ記憶手段１０８から取り出し（ステップ３０３）、クライアント１０６に送信する（ステップ３０４）。
【００８７】
次に、クライアント１０６は、配信手段１０５から送信されるデータ圧縮手段１０４が圧縮したJPEG2000形式の圧縮データを受信し（図４のステップ４０１）、データを伸張する（ステップ４０２）。これにより、クライアント１０６は、データ生成手段１０１が生成した画像データの内、図７（ｂ）に相当する画像データが得られる。さらに、得られた画像データを、例えば、人間が見て、より高解像度、高精度の画像データが必要と判断したり、公知の技術であるオブジェクト認識や文字認識のような画像解析システムで利用するために、より高解像度、高精度の画像データが必要となった場合には（ステップ４０３でＹ）、配信手段１０５に詳細データの要求を行い（ステップ４０４）、配信手段１０５から送信される圧縮データ１０８ａとｒａｗデータ１０８ｂを差分データとして受信する（ステップ４０５）。受信した差分データの内、まず、DPCMハフマン符号化された圧縮データ１０８ａを公知の復号化手順により復号化する。これにより、図７（ａ）の白い部分の画素に相当する画像データが得られる。次に、得られた画像データの各画素を、ステップ４０２で伸張した図７（ｂ）に相当する画像データの各画素の間に挿入することで、図７（ａ）に相当する画像データが得られる。次に、図７（ａ）に相当する画像データの各画素（８ビット）を上位、ステップ４０５で得られたｒａｗデータ１０８ｂの各画素（８ビット）を下位として、各画素の値を１６ビットにすることで（以上、ステップ４０６）、クライアント１０６はデータ生成手段１０１が生成した画像データ全体を得る。
【００８８】
次に、本実施例の効果について説明する。
【００８９】
本実施例では、ビット分離手段１０２とサブサンプリング手段１０３が、各要素のビット分割やサブサンプリングを行い、データ生成手段１０１が生成したデータの一部を抽出することでデータ圧縮手段１０４が処理するデータ量を削減するように構成されているため、データ圧縮手段１０４の処理負荷が重い場合でも、データ生成手段１０１が生成するデータを取りこぼすことなく圧縮、伝送できる。
【００９０】
さらに、ビット分離手段１０２とサブサンプリング手段１０３が行うビット分割やサブサンプリングで残ったデータを削除することなく、ｒａｗデータ１０８ｂや、高速圧縮手段１０７で圧縮された圧縮データ１０８ａとしてデータ記憶手段１０８に蓄積しておき、クライアント１０６から詳細データの要求があったときには、配信手段１０５がｒａｗデータ１０８ｂや圧縮データ１０８ａを差分データとしてクライアント１０６に送信し、クライアント１０６は、ステップ４０１で配信手段１０５から受け取った圧縮したデータはそのまま再利用し、配信手段１０５から送信されるｒａｗデータ１０８ｂと、圧縮データ１０８ａだけを差分データとして受信し、あわせてデータ伸張することで詳細データの取得を行うように構成されているため、クライアント１０６が詳細データを要求した場合に、対応するデータの伝送を効率的に行うことができる。
【００９１】
また、上記実施例では、サブサンプリング手段１０３でサブサンプリングした残りのデータを高速圧縮手段１０７で圧縮してデータ記憶手段１０８に蓄積しているが、サブサンプリングした残りのデータをそのままデータ記憶手段１０８に蓄積するようにしても良い。このようにしても、本実施例と同様の効果を得ることができる。
【００９２】
また、上記実施例では、クライアント１０６からの詳細データの要求があった場合に、データ記憶手段１０８に蓄積されている圧縮データ１０８ａとｒａｗデータ１０８ｂを両方とも送信するようになっているが、どちらか一方のみ、あるいは、クライアント１０６から詳細データが必要な部分領域の情報をあわせて受け取り、要求された部分領域に該当する部分の圧縮データ１０８ａ、あるいはｒａｗデータ１０８ｂのみを送信するようにしても良い。このようにすると、クライアント１０６が詳細データの要求を行った場合の差分データの伝送量を削減することができるので、データの伝送効率がさらに良くなるという効果がある。
【００９３】
また、上記実施例では、配信手段１０５は、クライアント１０６から詳細データの要求があった場合にのみ、差分データの送信を行うようになっているが、伝送路に空きができたタイミングなどに、クライアント１０６へ差分データを自動的に送信するようにしても良い。このようにすると、クライアント１０６が詳細データの要求を出さなくても差分データの取得が行え、また、伝送路の空き時間を減らすことで、伝送路の効率的な利用ができるという効果がある。
【００９４】
次に、図５−１に示した本発明の第２の実施の形態の実施例について説明する。なお、データ生成手段５０１、ビット分離手段５０２、サブサンプリング手段５０３、データ圧縮手段５０４、高速圧縮手段５０７は、それぞれ、本発明の第１の実施の形態におけるデータ生成手段１０１、ビット分離手段１０２、サブサンプリング手段１０３、データ圧縮手段１０４、高速圧縮手段１０７と同様に、図２のフローチャートのステップ２０１〜２０６に従って動作するので、ここでは説明を省略し、配信手段５０５とクライアント５０６の動作のみを説明する。
【００９５】
配信手段５０５は、データ圧縮手段５０４からJPEG2000形式の圧縮データを受け取った場合（図６のステップ６０１でＹ）、配信手段５０５とクライアント５０６との間の伝送路の帯域や利用率に応じて送信するデータをデータ圧縮手段５０４が圧縮したJPEG2000データから抽出する（ステップ６０５）。これは例えば、特許文献１に示されているように、JPEG2000の解像度プログレッシブを用いて半分の解像度に相当する圧縮データのみを抽出したり、特定タイルの圧縮データのみを抽出したりすることで行うことができる。抽出されなかった残りのデータはデータ記憶手段５０８に基本圧縮データ５０８ｃとして蓄積し（ステップ６０６）、抽出したJPEG2000の部分データはクライアント５０６に送信する（ステップ６０４）。
【００９６】
また、配信手段５０５は、クライアント５０６から詳細な画像データの要求があった場合（ステップ６０２でＹ）、送信したJPEG2000形式の圧縮データに対応する、ステップ６０５で抽出されなかったデータである基本圧縮データ５０８ｃと、サブサンプリングで残ったデータ（図７（ａ）の白い部分の画素）をDPCMハフマン符号化した圧縮データ５０８ａと、下位ビットデータであるｒａｗデータ５０８ｂをデータ記憶手段５０８から取り出し（ステップ６０３）、クライアント５０６に送信する（ステップ６０４）。
【００９７】
次に、クライアント５０６は、配信手段５０５から送信される当該配信手段５０５が抽出したJPEG2000の部分データを受信し（図４ステップ４０１）、データを伸張する（ステップ４０２）。これにより、クライアント５０６は、データ生成手段５０１が生成した画像データの内、図７（ｂ）に相当する画像データの部分データ、例えば、半分の解像度データや特定タイル領域のデータが得られる。
【００９８】
さらに、得られた画像データの部分データを、例えば、人間が見て、より高解像度、高精度、別タイルの画像データが必要と判断したり、公知の技術であるオブジェクト認識や文字認識のような画像解析システムで利用するために、クライアント５０６において、より高解像度、高精度、別タイルの画像データが必要となった場合（ステップ４０３でＹ）には、配信手段５０５に詳細データの要求を行い（ステップ４０４）、配信手段５０５から送信される残りの基本圧縮データ５０８ｃと圧縮データ５０８ａとｒａｗデータ５０８ｂを差分データとして受信する（ステップ４０５）。
【００９９】
受信した差分データの内、まず、基本圧縮データ５０８ｃとステップ４０１で受信したJPEG2000の部分データを特許文献１に示されているような方法で伸張し、図７（ｂ）に相当する画像データを得る。次に、DPCMハフマン符号化された圧縮データ５０８ａを公知の復号化手順により復号化する。これにより、図７（ａ）の白い部分の画素に相当する画像データが得られる。次に、得られた画像データの各画素を、図７（ｂ）に相当する画像データの各画素の間に挿入することで、図７（ａ）に相当する画像データが得られる。次に、図７（ａ）に相当する画像データの各画素（８ビット）を上位、ステップ４０５で得られたｒａｗデータ５０８ｂの各画素（８ビット）を下位として、各画素の値を１６ビットにする（以上、ステップ４０６）ことで、クライアント５０６はデータ生成手段５０１が生成した画像データ全体を得る。
【０１００】
次に、本発明の第２の実施の形態の実施例の効果について説明する。
【０１０１】
本実施例では、本発明の第１の実施の形態の実施例の効果に加え、配信手段５０５がクライアント５０６との間の伝送路の帯域や利用率に応じて送信するデータをデータ圧縮手段５０４が圧縮したデータから抽出し、抽出されなかった残りのデータはデータ記憶手段５０８に基本圧縮データ５０８ｃとして蓄積し、抽出したデータのみをクライアント５０６に送信するように構成されているため、伝送路の帯域が狭いなどの理由により、データ圧縮手段５０４が圧縮したデータが必要な時間内に送信できない場合でも、伝送路の帯域に応じた範囲でクライアント５０６はデータを受信することが可能で、さらに、送信できなかったデータもデータ記憶手段５０８に基本圧縮データとして蓄積されるため、必要に応じてクライアント５０６は配信手段５０５に要求を出すことで、時間内には送信できなかったデータを受信することができる。
【０１０２】
また、上記実施例では、サブサンプリング手段５０３でサブサンプリングした残りのデータを高速圧縮手段５０７で圧縮してデータ記憶手段５０８に蓄積しているが、サブサンプリングした残りのデータをそのままデータ記憶手段５０８に蓄積するようにしても良い。このようにしても、本実施例と同様の効果を得ることができる。
【０１０３】
また、上記実施例では、クライアント５０６からの詳細データの要求があった場合に、データ記憶手段５０８に蓄積されている圧縮データ５０８ａとｒａｗデータ５０８ｂと基本圧縮データ５０８ｃを全て送信するようになっているが、基本圧縮データ５０８ｃと、圧縮データ５０８ａとｒａｗデータ５０８ｂのどちらか一方のみ、あるいは、クライアント５０６から詳細データが必要な部分領域の情報をあわせて受け取り、要求された部分領域に該当する部分の基本圧縮データ５０８ｃと、圧縮データ５０８ａ、あるいはｒａｗデータ５０８ｂのみを送信するようにしても良い。このようにすると、クライアント５０６が詳細データの要求を行った場合の差分データの伝送量を削減することができるので、データの伝送効率がさらに良くなるという効果がある。
【０１０４】
また、上記実施例では、配信手段５０５は、クライアント５０６から詳細データの要求があった場合にのみ、差分データの送信を行うようになっているが、伝送路に空きができたタイミングなどに、クライアント５０６へ差分データを自動的に送信するようにしても良い。このようにすると、クライアント５０６が詳細データの要求を出さなくても差分データの取得が行え、また、伝送路の空き時間を減らすことで、伝送路の効率的な利用ができるという効果がある。
【０１０５】
以上本発明の実施の形態および実施例について説明したが、本発明は以上の例にのみ限定されず、その他各種の付加変更が可能である。また、本発明は、その有する機能をハードウェア的に実現することは勿論、コンピュータとプログラムとで実現することができる。データ圧縮プログラムは、磁気ディスクや半導体メモリ等のコンピュータ可読記録媒体に記録されて提供され、コンピュータの立ち上げ時などにコンピュータに読み取られ、そのコンピュータの動作を制御することにより、そのコンピュータを前述した各実施の形態および実施例におけるビット分離手段、サブサンプリング手段、データ圧縮手段、高速圧縮手段、配信手段として機能させ、図２、図３、図６に示したような処理を行わせる。また、データ伸張プログラムは、磁気ディスクや半導体メモリ等のコンピュータ可読記録媒体に記録されて提供され、コンピュータの立ち上げ時などにコンピュータに読み取られ、そのコンピュータの動作を制御することにより、そのコンピュータを前述した各実施の形態および実施例における通信手段、データ伸張手段、補完手段、高速伸張手段、ビット結合手段、第１および第２のビット結合手段として機能させ、図４に示したような処理を行わせる。
【産業上の利用可能性】
【０１０６】
本発明によれば、監視映像など、リアルタイムに生成されるデータを取りこぼすことなく、処理の重いデータ圧縮手段を用いて圧縮して伝送する装置をコンピュータで実現するためのプログラムといった用途に適用できる。
【図面の簡単な説明】
【０１０７】
【図１−１】本発明の第１の実施の形態におけるデータ圧縮を行うデータ処理装置（サーバ）のブロック図である。
【図１−２】本発明の第１の実施の形態におけるデータ伸張を行うデータ処理装置（クライアント）のブロック図である。
【図１−３】本発明の第１の実施の形態におけるデータ伸張を行うデータ処理装置（クライアント）の別のブロック図である。
【図２】本発明の第１の実施の形態におけるデータ圧縮を行うデータ処理装置（サーバ）の動作を示す流れ図である。
【図３】本発明の第１の実施の形態におけるデータ圧縮を行うデータ処理装置（サーバ）の動作を示す流れ図である。
【図４】本発明の第１の実施の形態におけるデータ伸張を行うデータ処理装置（クライアント）の動作を示す流れ図である。
【図５−１】本発明の第２の実施の形態におけるデータ圧縮を行うデータ処理装置（サーバ）のブロック図である。
【図５−２】本発明の第２の実施の形態におけるデータ伸張を行うデータ処理装置（クライアント）のブロック図である。
【図５−３】本発明の第２の実施の形態におけるデータ伸張を行うデータ処理装置（クライアント）の別のブロック図である。
【図６】本発明の第２の実施の形態におけるデータ圧縮を行うデータ処理装置（サーバ）の動作を示す流れ図である。
【図７】本発明の第１および第２の実施の形態の実施例におけるデータのサブサンプリングの一例を示す説明図である。
【符号の説明】
【０１０８】
１００……データ処理装置（サーバ）
１０１……データ生成手段
１０２……ビット分離手段
１０３……サブサンプリング手段
１０４……データ圧縮手段
１０５……配信手段
１０６……データ処理装置（クライアント）
１０７……高速圧縮手段
１０８……データ記憶手段
１０８ａ…圧縮データ
１０８ｂ…ｒａｗデータ
１０８ｃ…基本圧縮データ
１１１……通信手段
１１２……データ伸張手段
１１３……補完手段
１１４……ビット結合手段
１１５……高速伸張手段
１１６……データ記憶手段
１２１……第１のビット結合手段
１２２……第２のビット結合手段
１２３……補完手段
２０１……データ受取ステップ
２０２……ビット分割ステップ
２０３……ｒａｗデータ保存ステップ
２０４……サブサンプリングステップ
２０５……データ圧縮ステップ
２０６……圧縮データ保存ステップ
３０１……データ確認ステップ
３０２……要求確認ステップ
３０３……データ選択ステップ
３０４……データ送信ステップ
４０１……データ受信ステップ
４０２……データ伸張ステップ
４０３……要求決定ステップ
４０４……データ要求ステップ
４０５……差分データ受信ステップ
４０６……データ伸張ステップ
５００……データ処理装置（サーバ）
５０１……データ生成手段
５０２……ビット分離手段
５０３……サブサンプリング手段
５０４……データ圧縮手段
５０５……配信手段
５０６……データ処理装置（クライアント）
５０７……高速圧縮手段
５０８……データ記憶手段
５０８ａ…圧縮データ
５０８ｂ…ｒａｗデータ
５０８ｃ…基本圧縮データ
５１１……通信手段
５１２……データ伸張手段
５１３……補完手段
５１４……ビット結合手段
５１５……高速伸張手段
５１６……データ記憶手段
５２１……第１のビット結合手段
５２２……第２のビット結合手段
５２３……補完手段
６０１……データ確認ステップ
６０２……要求確認ステップ
６０３……データ選択ステップ
６０４……データ送信ステップ
６０５……データ抽出ステップ
６０６……基本圧縮データ保存ステップ
【図１−１】
2008147805.tif 000003
【図１−２】
2008147805.tif 000004
【図１−３】
2008147805.tif 000005
【図２】
2008147805.tif 000006
【図３】
2008147805.tif 000007
【図４】
2008147805.tif 000008
【図５−１】
2008147805.tif 000009
【図５−２】
2008147805.tif 000010
【図５−３】
2008147805.tif 000011
【図６】
2008147805.tif 000012
【図７】
2008147805.tif 000013