(57)【要約】【課題】  ファイルのファイル形式およびデータ形式をユーザが意識せずに、圧縮可能であるとともに、複数のデータ形式のデータが混在したファイルであっても、効率的に圧縮することが可能なファイルの符号化装置および方法を提供する。【解決手段】  特定のデータ形式に特に適した専用符号化プログラムを複数用意しておくとともに、汎用的に利用可能な汎用符号化プログラムを用意しておく。符号化時には、符号化プログラム選別手段１が、対象とするソースファイルＦ１のファイル形式およびデータ形式を解析して、対応する専用符号化プログラムが存在する場合は、専用符号化プログラムを選別し、存在しない場合は、汎用符号化プログラムＰ５を選別する。圧縮符号化実行手段２は、選別された符号化プログラムで圧縮符号化を実行し、圧縮ファイルＦ２が得られる。【選択図】  図１
2005086315.tif 000002
【特許請求の範囲】
【請求項１】
特定のデータ形式に特に適した符号化を行うことが可能な専用符号化プログラムを複数記憶すると共に、データ形式に依存せずに符号化を行うことが可能な汎用符号化プログラム、複数のデータ形式のデータを１つにまとめるアーカイブプログラムを記憶した記憶手段と、
与えられたソースファイルから、前記専用符号化プログラムに適したデータ形式のデータを特定データとして、特定データ以外の非特定データと分離するデータ分離手段と、
前記複数の専用符号化プログラムから前記分離した特定データのデータ形式に対応した専用符号化プログラムを選別する符号化プログラム選別手段と、
前記特定データについては、選別した専用符号化プログラムで符号化すると共に、非特定データについては、前記汎用符号化プログラムで符号化する圧縮符号化実行手段と、
前記圧縮後の特定データおよび圧縮後の非特定データを、前記アーカイブプログラムで１つのファイルにまとめて圧縮ファイルを生成するアーカイブ実行手段と、
を有することを特徴とするファイルの符号化装置。
【請求項２】
請求項１において、
前記特定データは、バイナリデータであって、前記非特定データはテキストデータであることを特徴とするファイルの符号化装置。
【請求項３】
与えられたソースファイルから、あらかじめ用意されている複数の専用符号化プログラムに適したデータ形式のデータを特定データとして、特定データ以外の非特定データと分離するデータ分離段階と、
前記複数の専用符号化プログラムから前記分離した特定データのデータ形式に対応した専用符号化プログラムを選別する符号化プログラム選別段階と、
前記前記特定データについては、選別された専用符号化プログラムの識別ＩＤを記録し、選別した専用符号化プログラムで符号化する専用符号化処理実行段階と、
前記非特定データについては、前記汎用符号化プログラムの識別ＩＤを記録し、前記汎用符号化プログラムで符号化する汎用符号化処理実行段階と、
前記圧縮後の特定データおよび圧縮後の非特定データを、あらかじめ用意されているアーカイブプログラムで１つのファイルにまとめて圧縮ファイルを生成するアーカイブ実行段階と、
を有することを特徴とするファイルの符号化方法。
【請求項４】
請求項３において、
前記専用符号化プログラムおよび前記汎用符号化プログラムは、ロスレス型で符号化を行うことを特徴とするファイルの符号化方法。
【請求項５】
請求項３において、前記専用符号化プログラムは、オーディオ、静止画、動画、ＣＧ、生物情報別に、各々１つまたは複数の専用符号化プログラムが用意されていることを特徴とするファイルの符号化方法。
【請求項６】
請求項３から請求項５のいずれかの方法により符号化された圧縮ファイルを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像制作、映像データの素材保管、ロケ素材の中継など映像制作分野、特にＮＴＳＣ以上の品質の高い高精細映像制作を行う分野、コンピュータグラフィックスを用いたＣＧアニメーション映像制作分野、科学技術シミュレーションにおける可視化映像制作分野、ＣＤ・ＤＶＤ・半導体メモリ等のデジタル記録媒体を用いた映像記録再生装置分野、電子カルテや遠隔医療における医用静止画・動画像の保存と伝送、リモートセンシング・衛星画像解析・地図情報処理分野におけるデータの保管と伝送、リモートセンシング、衛星画像解析、地図情報処理分野におけるデータの保管と伝送など、データの改変が嫌われる分野、バイオインフォマティクス、ゲノム創薬、バイオ新素材開発など生物情報データベースの構築、検索を行う分野等において好適なデータの圧縮技術に関する。
【背景技術】
【０００２】
従来より、デジタルデータの圧縮には様々な方式が用いられている。特に、近年では、画像、テキスト等が混在したいわゆるマルチメディアファイルを扱うことが増えてきており、このようなマルチメディアファイルを圧縮する手法も開発されてきている（例えば、特許文献１〜特許文献３参照）。実用的には、データファイルの圧縮には、ＺＩＰ、ＬＨＡ等の圧縮機能も備えたアーカイバが、汎用的に用いられている。
【特許文献１】特開平９−８１７６３号公報
【特許文献２】特許第３４０６２７５号公報
【特許文献３】特開２００２−１３５１２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、ＺＩＰ、ＬＨＡ等の汎用符号化プログラムでは、テキストデータの圧縮は効率的に行うことができるが、オーディオデータ・静止画データ・動画データなど、いわゆるバイナリデータの圧縮を効率的に行うことができず、別の専用符号化プログラムが必要となる。さらに、この専用符号化プログラムは、ファイル形式ごとに準備する必要があり、同じファイル形式でも収録されているデータ形式（画像の例では、２４ビット非圧縮、モノクロ１６ビット非圧縮など）ごとに準備する必要がある。
【０００４】
上記のように、複数の専用符号化プログラムと汎用符号化プログラムを用いて、テキスト、オーディオ、静止画、動画などを含むマルチメディアファイルにロスレス圧縮をかけることは可能であるが、ユーザが適切な符号化プログラムを選別しなくてはいけないという問題がある。ファイル形式については、拡張子によりある程度判別できるが、データ形式については、ファイルを読み込まないと判断できない。また、文書ファイルのようにテキストと画像が混在している場合、汎用符号化プログラムでは、テキスト部分しか効率的な圧縮がかからず、専用符号化プログラムでは、画像部分しか圧縮がかからないという問題がある。
【０００５】
そこで、本発明は、圧縮対象とするファイルのファイル形式およびデータ形式をユーザが意識せずに、圧縮することが可能であるとともに、文書データのように、複数のデータ形式のデータが混在したファイルであっても、効率的に圧縮することが可能なファイルの符号化装置および方法を提供することを課題とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するため、本発明では、ファイルの符号化装置を、特定のデータ形式に特に適した符号化を行うことが可能な専用符号化プログラムを複数記憶すると共に、データ形式に依存せずに符号化を行うことが可能な汎用符号化プログラム、複数のデータ形式のデータを１つにまとめるアーカイブプログラムを記憶した記憶手段と、与えられたソースファイルから、前記専用符号化プログラムに適したデータ形式のデータを特定データとして、特定データ以外の非特定データと分離するデータ分離手段と、前記複数の専用符号化プログラムから前記分離した特定データのデータ形式に対応した専用符号化プログラムを選別する符号化プログラム選別手段と、前記特定データについては、選別した専用符号化プログラムで符号化すると共に、非特定データについては、前記汎用符号化プログラムで符号化する圧縮符号化実行手段と、前記圧縮後の特定データおよび圧縮後の非特定データを、前記アーカイブプログラムで１つのファイルにまとめて圧縮ファイルを生成するアーカイブ実行手段と、を有する構成としたことを特徴とする。
【発明の効果】
【０００７】
本発明によれば、専用符号化プログラム、汎用符号化プログラムに加えてさらにアーカイブプログラムを用意しておき、読み込んだファイルのテキストデータとバイナリデータを分離し、バイナリデータを専用符号化プログラムで符号化し、テキストデータを汎用符号化プログラムで符号化し、符号化された各データをアーカイブプログラムで１つにまとめて、圧縮ファイルを得るようにしたので、複数のデータ形式のデータが混在したファイルであっても、効率的に圧縮することが可能となるという効果を奏する。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施形態について図面を参照して詳細に説明する。
（第１の実施形態）
まず、本発明の第１の実施形態について説明する。第１の実施形態は、ソースファイルが全体で単一のデータ形式となっているファイルである場合において適用される。ここで、単一データ形式となっているファイルとは、実データが画像データのみ、オーディオデータのみ、テキストデータのみ、のようなファイルを意味する。もちろん、単一データ形式となっているファイルであっても、実データ以外に、プログラムが実データを識別するための付属データは有している。図１に第１の実施形態に係る圧縮装置の機能ブロック図を示す。図１において、１は符号化プログラム選別手段、２は圧縮符号化実行手段、Ｐ１〜Ｐ４は専用符号化プログラム、Ｐ５は汎用符号化プログラム、Ｆ１はソースファイル、Ｆ２は圧縮ファイルである。
【０００９】
符号化プログラム選別手段１は、処理対象であるソースファイルＦ１のデータ形式を読み取って、対応する符号化プログラムを選別する機能を有している。圧縮符号化実行手段２は、符号化プログラム選別手段１により選別された符号化プログラムを利用してソースファイルＦ１を圧縮符号化して、圧縮ファイルを生成する機能を有している。専用符号化プログラムは、あるデータ形式に特に適した符号化プログラムであり、図１の例では、Ｐ１〜Ｐ４の４つの専用符号化プログラムが用意されている。汎用符号化プログラムは、あらゆるデータ形式に適用可能な符号化プログラムであり、その性質から基本的にはロスレス型（可逆型）圧縮を行うものである。ソースファイルＦ１は、圧縮前のファイルであり、上述のように、本実施形態では、単一データ形式となっている。圧縮ファイルＦ２は、本装置によりソースファイルＦ１を圧縮して得られるファイルである。
【００１０】
符号化プログラム選別手段１および圧縮符号化実行手段２は、現実には、コンピュータおよびコンピュータを機能させるためのプログラムにより実現される。また、専用符号化プログラムＰ１〜Ｐ４、汎用符号化プログラムＰ５は、コンピュータに接続されたハードディスクその他の記憶装置に格納されている。また、図１には示していないが、符号化プログラム選別手段１が専用符号化プログラムＰ１〜Ｐ４を選別するための対応テーブルも記憶装置内に用意されている。
【００１１】
続いて、本発明第１の実施形態による圧縮方法について、図１に示した装置の処理動作とともに説明する。図２は、本発明第１の実施形態による圧縮方法の概要を示すフローチャートである。まず、ユーザが、コンピュータに対して符号化対象とするソースファイルを指定すると、符号化プログラム選別手段１が、ソースファイルのファイル形式を判別する（ステップＳ１）。具体的には、ソースファイルのファイル名に付加されている拡張子を認識し、その拡張子が示すファイル形式に対応する専用符号化プログラムが用意されているかどうかを判別する。この判別には、使用するコンピュータのオペレーティングシステムで定義されるファイル拡張子定義テーブルと図３に示す対応テーブルを利用する。例えば、Windows（登録商標）OSの場合、拡張子は３文字で略記されることが多く、ソースファイルの拡張子がＷＲＬであった場合、ファイル形式はＶＲＭＬと判断され、専用符号化プログラムＰ１が選別されることになる。
【００１２】
専用符号化プログラムが選別された場合、圧縮符号化実行手段２が、選別された専用符号化プログラムを起動して、ソースファイルＦ１の中身のデータ形式が前記専用符号化プログラムで対応可能かを確認する（ステップＳ２）。ここで、データ形式は、単一のファイル形式に対して、通常種々の形式を定義することが可能になっているが、専用符号化プログラムで対応できるデータ形式には制約があるためである。例えば、他方式で既に圧縮されたデータ形式には対応できないため、ここで阻止する必要がある。また、ファイルの拡張子が誤って付与されたり、拡張子が示す形式とこちらが想定しているファイル形式が異なっている場合もあるからである。この確認の結果、データ形式が、選択した専用符号化プログラムに対応している場合は、選択した専用符号化プログラムの識別ＩＤを出力用のファイルに記録する（ステップＳ３）。例えば、専用符号化プログラムＰ１が選別されている場合は、識別ＩＤである「Ｐ１」を記録する。続いて、ソースファイルＦ１に対して専用符号化プログラムを実行して圧縮を行い、圧縮されたデータを出力用のファイルに記録する（ステップＳ４）。この結果、出力ファイルとして圧縮ファイルＦ２が得られる。
【００１３】
一方、上記ステップＳ１において専用符号化プログラムが選別されなかった場合、もしくはステップＳ２においてデータ形式が選別した専用符号化プログラムに対応していないことが判明した場合は、符号化プログラム選別手段１が汎用符号化プログラムを選別し、圧縮符号化実行手段２が、選別された汎用符号化プログラムを起動する。起動された汎用符号化プログラムは、まず、自身のプログラムＩＤを出力ファイルに書き込む（ステップＳ５）。具体的には、汎用符号化プログラムＰ５のＩＤである「Ｐ５」を書き込む。続いて、ソースファイルＦ１に対して汎用符号化プログラムを実行して圧縮を行い、圧縮されたデータを出力ファイルに書き込む（ステップＳ６）。この結果、出力ファイルとして圧縮ファイルＦ２が得られる。
【００１４】
次に、このようにして符号化された圧縮ファイルの復号について説明する。まず、専用符号化プログラムＰ１〜Ｐ４に対応した専用復号化プログラム、および汎用符号化プログラムＰ５に対応した汎用復号化プログラムをコンピュータに、記録しておくとともに、各復号化プログラムと識別ＩＤとの対応関係を示すテーブルを記録しておく。このような、コンピュータにおいて、圧縮ファイルＦ２を読み込む。圧縮ファイルＦ２には、上記ステップＳ３もしくはステップＳ５において、プログラムの識別ＩＤが書き込まれているので、これを読み込む。次に、読み込んだプログラムの識別ＩＤに対応する復号化プログラムを選別し、選別した復号化プログラムで圧縮ファイルＦ２を復号化し、ソースファイルＦ１を復元する。また、識別ＩＤには、プログラムのバージョン番号を追加することができ、同じ専用符号化プログラムＰ１でも、バージョン１のタイプをＰ１．１とバージョン２のタイプをＰ１．２のように識別させることもできる。そうすると、専用符号化プログラムまたは汎用符号化プログラムに何らかの改良がなされた場合、それに対応した復号化プログラムで正しく復元できるように動作させることができる。
【００１５】
（第２の実施形態）
次に、本発明第２の実施形態について説明する。第２の実施形態は、ソースファイルが、複数のデータ形式のデータを含むファイルである場合において適用される。ここで、複数のデータ形式のデータを含むファイルとは、例えば、実データとして、画像データとテキストデータを含むようなファイルを意味する。ＤＴＰデータのようないわゆる文書データが典型例である。図４に第２の実施形態に係る圧縮装置の機能ブロック図を示す。図４において、１１はデータ分離手段、１２は符号化プログラム選別手段、１３は圧縮符号化実行手段、１４はアーカイブ実行手段、Ｐ１〜Ｐ４は専用符号化プログラム、Ｐ５は汎用符号化プログラム、Ｐ６はアーカイブプログラム（アーカイバ）、Ｆ３はソースファイル、Ｆ４は圧縮ファイルである。
【００１６】
データ分離手段１１は、ソースファイルＦ３に含まれる複数の形式のデータのうち、専用符号化プログラムで実行可能なデータ形式のデータ（以下、特定データという）のみを他のデータ（以下、非特定データという）から分離して抽出する機能を有している。符号化プログラム選別手段１２は、特定データに対応する専用符号化プログラムを選別する機能を有している。圧縮符号化実行手段１３は、符号化プログラム選別手段１２により選別された専用符号化プログラムを利用して特定データを圧縮符号化するとともに、汎用符号化プログラムを利用して非特定データを圧縮符号化する機能を有している。アーカイブ実行手段１４は、アーカイブプログラムＰ６を実行して、特定データ、非特定データをそれぞれ圧縮したものを１つのファイルにまとめる機能を有している。
【００１７】
専用符号化プログラムは、第１の実施形態と同様、あるデータ形式に特に適した符号化プログラムであり、図４の例では、Ｐ１〜Ｐ４の４つの専用符号化プログラムが用意されている。汎用符号化プログラムも、第１の実施形態と同様、あらゆるデータ形式に適用可能な符号化プログラムであり、その性質から基本的にはロスレス型（可逆型）圧縮を行うものである。アーカイブプログラムは、複数のファイルを１つのファイルにまとめるものである。ソースファイルＦ３は、圧縮前のファイルであり、上述のように、本実施形態では、複数のデータ形式のデータを含んでいる。圧縮ファイルＦ４は、本装置によりソースファイルＦ３を圧縮して得られるファイルである。
【００１８】
データ分離手段１１、符号化プログラム選別手段１２、圧縮符号化実行手段１３、アーカイブ実行手段１４は、現実には、コンピュータおよびコンピュータを機能させるためのプログラムにより実現される。また、専用符号化プログラムＰ１〜Ｐ４、汎用符号化プログラムＰ５、アーカイブプログラムＰ６は、コンピュータに接続されたハードディスクその他の記憶装置に格納されている。また、図４には示していないが、符号化プログラム選別手段１が専用符号化プログラムＰ１〜Ｐ４を選別するための対応テーブルも記憶装置内に用意されている。
【００１９】
続いて、本発明第２の実施形態による圧縮方法について、図４に示した装置の処理動作とともに説明する。図５は、本発明第２の実施形態による圧縮方法の概要を示すフローチャートである。まず、ユーザが、コンピュータに対して符号化対象とするソースファイルを指定すると、データ分離手段１が、ソースファイルＦ３から、専用符号化に適したデータを特定データとして、特定データ以外の非特定データと分離する（ステップＳ１１）。特定データと非特定データのデータ種類は、必ずしも限定されないが、通常、特定データは、バイナリデータであり、非特定データはテキストデータである。そのため、特定データには、オーディオデータ、静止画データ、動画データ、ＣＧデータ、生物情報等が該当する。続いて、符号化プログラム選別手段１２が、特定データのデータ形式を解析する（ステップＳ１２）。この解析の結果、特定データのデータ形式が、登録されているいずれかの専用符号化プログラムに対応している場合は、符号化プログラム選別手段１２が、対応している専用符号化プログラムを選別する。この対応関係については、図６に示す対応テーブルを利用する。例えば、特定データが三次元ＣＧあった場合、専用符号化プログラムＰ１が選別されることになる。専用符号化プログラムが選別された場合には、選別した専用符号化プログラムの識別ＩＤを出力用のファイルに記録する（ステップＳ１３）。例えば、専用符号化プログラムＰ１が選別された場合は、ＩＤである「Ｐ１」を書き込む。続いて、圧縮符号化実行手段１３が、特定データに対して専用符号化プログラムを実行して圧縮を行い、圧縮された特定データを出力用のファイルに記録する（ステップＳ１４）。
【００２０】
一方、ステップＳ１１において分離された非特定データに対しては、圧縮符号化実行手段１３が、汎用符号化プログラムを利用して符号化を行うことになるが、この場合、まず、汎用符号化プログラムはの識別ＩＤを出力用のファイルに記録する（ステップＳ１５）。具体的には、汎用符号化プログラムＰ５のＩＤである「Ｐ５」を書き込む。続いて、非特定データに対して汎用符号化プログラムを実行して圧縮を行い、圧縮されたデータを出力用のファイルに記録する（ステップＳ１６）。なお、ステップＳ１６においては、ステップＳ１１において特定データとして抽出されたものの、ステップＳ１２において、対応する専用符号化プログラムが存在しないと判断された特定データもまとめて汎用符号化プログラムＰ５により符号化する。特定データ、非特定データがそれぞれ圧縮されたら、圧縮後の特定データ、非特定データに対して、アーカイブ実行手段１４がアーカイブプログラムＰ６を利用してアーカイブ処理を実行し、１つの圧縮ファイルＦ４が得られる（ステップＳ１７）。
【００２１】
（符号化プログラムの具体例）
上記各符号化プログラムは、１つのプログラムとして、完結しているものであっても良いし、複数の小プログラム（関数）として用意されているものの集合であっても良い。ここで、各データ形式に対応して必要となる処理を図７に示す。図７においては、ＣＧデータ・生物情報（記号配列）データを圧縮する場合、オーディオ（音響）データを圧縮する場合、静止画データを圧縮する場合、動画データを圧縮する場合の４通りについて示している。ＣＧデータ・生物情報データを圧縮する場合は、ＶＲＭＬ・ＰＤＢ形式ファイル読込みプログラムＰ１１、タグ・シンボル符号化処理プログラムＰ１２、配列データ本体処理プログラムＰ１３、リピート配列符号化処理プログラムＰ１４、可変長符号化プログラムＰ１５による処理が行われる。オーディオデータを圧縮する場合は、ＷＡＶ形式ファイル読込みプログラムＰ２１、ステレオチャンネル間相関圧縮処理プログラムＰ２２、信号平坦部圧縮処理プログラムＰ２３、１次元線形予測符号化プログラムＰ２４、可変長符号化プログラムＰ１５による処理が行われる。静止画データを圧縮する場合は、ＢＭＰ・ＴＩＦＦ形式ファイル読込みプログラムＰ３１、色信号間相関圧縮処理プログラムＰ３２、信号平坦部圧縮処理プログラムＰ３３、２次元線形予測符号化プログラムＰ３４、可変長符号化プログラムＰ１５による処理が行われる。動画データを圧縮する場合は、ＡＶＩ・ＤＩＣＯＭ形式ファイル読込みプログラムＰ４１、フレーム間相関圧縮処理プログラムＰ４２、色信号間相関圧縮処理プログラムＰ３２、信号平坦部圧縮処理プログラムＰ３３、２次元線形予測符号化プログラムＰ３４、可変長符号化プログラムＰ１５による処理が行われる。
【００２２】
これら、各プログラムＰ１１〜Ｐ４２は、独立したプログラムとして図３、図６に示したテーブルに直接登録されていても良いし、プログラムＰ１〜Ｐ４を構成する要素として組み込まれていても良い。
【００２３】
また、上記実施形態における汎用符号化プログラムの具体例としては、ＺＩＰもしくはＬＨＡの圧縮機能部分を用いることができる。アーカイブプログラムの具体例としては、ＺＩＰもしくはＬＨＡのアーカイブ機能部分を用いることができる。第２の実施形態の場合、ＺＩＰの圧縮機能部分を汎用符号化プログラムとして用い、ＬＨＡのアーカイブ機能部分をアーカイブプログラムとして用いるとより効果が高い。
【図面の簡単な説明】
【００２４】
【図１】本発明第１の実施形態によるファイルの符号化装置の機能ブロック図である。
【図２】本発明第１の実施形態によるファイルの符号化方法の概要を示すフローチャートである。
【図３】ファイル拡張子と専用符号化プログラムの対応関係を記録したテーブルを示す図である。
【図４】本発明第１の実施形態によるファイルの符号化装置の機能ブロック図である。
【図５】本発明第２の実施形態によるファイルの符号化方法の概要を示すフローチャートである。
【図６】データ形式と専用符号化プログラムの対応関係を記録したテーブルを示す図である。
【図７】専用符号化プログラムの具体例を示す図である。
【符号の説明】
【００２５】
１・・・符号化プログラム選別手段
２・・・圧縮符号化実行手段
１１・・・データ分離手段
１２・・・符号化プログラム選別手段
１３・・・圧縮符号化実行手段
１４・・・アーカイブ実行手段
Ｆ１、Ｆ３・・・ソースファイル
Ｆ２、Ｆ４・・・圧縮ファイル
Ｐ１〜Ｐ４・・・専用符号化プログラム
Ｐ５・・・汎用符号化プログラム
Ｐ６・・・アーカイブプログラム
【図１】
2005086315.tif 000003
【図２】
2005086315.tif 000004
【図３】
2005086315.tif 000005
【図４】
2005086315.tif 000006
【図５】
2005086315.tif 000007
【図６】
2005086315.tif 000008
【図７】
2005086315.tif 000009