(57)【特許請求の範囲】
【請求項１】
予測手段の予測結果を用いて入力データをソース符号化してソース符号化結果をエントロピー符号化する可逆符号化手段と、周波数変換および量子化を用いて入力データをソース符号化してソース符号化結果をエントロピー符号化する非可逆符号化手段とを切り替えて符号化する符号化選択装置において、
入力データを入力するデータ入力手段と、
上記データ入力手段により入力したデータに対して上記可逆符号化手段の上記ソース符号化の処理または当該ソース符号化の処理を簡略化した処理を実行しその実行結果に基づいて上記可逆符号化手段による符号化に関して符号量を推定する第１の符号量推定手段と、
上記データ入力手段により入力されたデータの大きさの関数により、または当該データの大きさおよび上記非可逆符号化手段の量子化を行う部分についての符号化パラメータの関数により、上記非可逆符号化手段による符号化に関して符号量を推定する第２の符号量推定手段と、
上記第１の符号量推定手段および上記第２の符号量推定手段によって推定された符号量の比較に基づいて符号化方式を決定する符号化選択手段と、
上記符号化選択手段の結果を外部へ出力する選択結果出力手段とを具備することを特徴とする符号化選択装置。
【請求項２】
上記第２の符号量推定手段は、入力データの大きさの関数に基づいて符号量を推定し、上記関数は単調に増加する一次関数とする請求項１に記載の符号化選択装置。
【請求項３】
上記第１の符号量推定手段で行われる符号量推定処理は、上記ソースコーディングの部分的な処理もしくはその簡略処理の結果と符号量の関係を統計的にまとめた結果を表または式の形式で参照し、必要な場合にはこれに補間を加えて推定符号量を算出することを特徴とする請求項１または２記載の符号化選択装置。
【請求項４】
上記第２の符号量推定手段で行われる符号量推定処理は、入力される上記符号化パラメータと符号量の関係を統計的にまとめた結果を参照し、また必要な場合はこれに補間を加えて推定符号量を算出することを特徴とする請求項１〜３のいずれかに記載の符号化選択装置。
【請求項５】
上記符号化パラメータに対して四則演算をはじめとする所定の補正を行うことで、いずれかの符号化を優先的に選択させることを特徴とする請求項１〜４のいずれかに記載の符号化選択装置。
【請求項６】
上記第１の符号量推定手段または上記第２の符号量推定手段において算出した推定符号量のうち少なくとも１つに対して、四則演算をはじめとする所定の補正を行うことで、いずれかの符号化を優先的に選択させることを特徴とする請求項１〜５のいずれかに記載の符号化選択装置。
【請求項７】
上記符号化選択手段で入力された推定符号量のうち少なくとも１つに対して、四則演算をはじめとする所定の補正を行うことで、いずれかの符号化を優先的に選択させることを特徴とする請求項１〜６のいずれかに記載の符号化選択装置。
【請求項８】
上記第１の符号量推定手段を、
上記データ入力手段によって入力されたデータを予測する予測手段と、
上記予測が上記入力データと一致する回数を計数する予測一致計数手段と、
上記予測一致回数と符号量との関係を保持する符号量保持手段と、
上記符号量保持手段によって与えられる推定符号量に上記予測一致回数に応じた補間を行う補間手段とから構成することを特徴とする請求項１〜７のいずれかに記載の符号化選択装置。
【請求項９】
上記第２の符号量推定手段を、
上記符号化パラメータと符号量との関係を保持する符号量保持手段と、
上記符号量保持手段によって与えられる推定符号量に入力された符号化パラメータに応じた補間を行う補間手段とから構成することを特徴とする請求項４記載の符号化選択装置。
【請求項１０】
上記予測手段によって行われる予測は少なくとも２つ以上の予測手法によって行い、上記予測一致計数手段は、上記予測手法のうち１つでも一致したときは予測一致回数として計数することを特徴とする請求項８記載の符号化選択装置。
【請求項１１】
上記データ入力手段は入力されるデータを部分的に選択して第１の符号量推定手段に送出することを特徴とする請求項１〜１０のいずれかに記載の符号化選択装置。
【請求項１２】
上記第２の符号量推定手段における上記符号量保持手段は対応する符号化を用いて、上記入力データ、上記符号化パラメータにおける、符号量との関係を事前に統計的に求めた結果を保持することを特徴とする請求項９記載の符号化選択装置。
【請求項１３】
上記第２の符号量推定手段における上記符号量保持手段に格納するデータは、上記入力データ、上記符号化パラメータと符号量との関係が非線形の部分については細かい間隔で保持することを特徴とする請求項９記載の符号化選択装置。
【請求項１４】
上記第２の符号量推定手段における上記符号量保持手段は、上記入力データ、上記符号化パラメータに対して、最も近いデータか、または内輪と外輪のそれぞれにおいて最も近いデータの両方を選択してそれぞれの上記補間手段に送出することを特徴とする請求項９記載の符号化選択装置。
【請求項１５】
上記第１の符号量推定手段における上記符号量保持手段は対応する符号化を用いて、上記予測一致回数と符号量との関係を事前に統計的に求めた結果を保持することを特徴とする請求項８記載の符号化選択装置。
【請求項１６】
上記第１の符号量推定手段における上記符号量保持手段に格納するデータは、上記予測一致回数と符号量との関係が特に非線形の部分については細かい間隔で保持することを特徴とする請求項１５記載の符号化選択装置。
【請求項１７】
上記第１の符号量推定手段における上記符号量保持手段は、上記予測一致回数に対して、最も近いデータか、または内輪と外輪のそれぞれにおいて最も近いデータの両方を選択してそれぞれの上記補間手段に送出することを特徴とする請求項１５または１６記載の符号化選択装置。
【請求項１８】
予測手段の予測結果を用いて入力データをソース符号化してソース符号化結果をエントロピー符号化する可逆符号化手段と、周波数変換および量子化を用いて入力データをソース符号化してソース符号化結果をエントロピー符号化する非可逆符号化手段とを切り替えて符号化する符号化装置において、
入力データを入力するデータ入力手段と、
上記データ入力手段により入力したデータに対して上記可逆符号化手段の上記ソース符号化の部分的な処理または簡略化された処理を実行しその実行結果に基づいて上記可逆符号化手段による符号化に関して符号量を推定する第１の符号量推定手段と、
上記データ入力手段により入力されたデータの大きさの関数、または当該データの大きさおよび上記非可逆符号化手段の量子化を行う部分についての符号化パラメータの関数により、上記非可逆符号化手段による符号化に関して符号量を推定する第２の符号量推定手段と、
上記第１の符号量推定手段および上記第２の符号量推定手段によって推定された符号量の比較に基づいて符号化方式を決定する符号化選択手段と、
上記符号化選択手段の結果を出力する選択結果出力手段と、
上記符号化選択手段の結果に基づいた符号化方式で上記入力データを符号化する手段とを具備することを特徴とする符号化装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は圧縮の選択技術に関するものであり、特に簡易に可逆符号化と非可逆符号化の選択を行う装置に関するものである。
【０００２】
【従来の技術】
画像データは一般にデータ量が膨大になるので、通信、蓄積などを行う際には圧縮してデータ量を削減することが多い。また画像以外の用途でも、特に大きなデータ量を扱う場合には圧縮技術は不可欠の技術といっていい。
【０００３】
圧縮を行うための符号化技術には、いくつもの手法が存在する。大別すれば、復号したときに入力を完全に再現する可逆方式と、何らかの損失を伴う非可逆方式がある。さらにこの２つの方式を基本的アルゴリズムやパラメータなどで分類すれば、いくつもの手法に細分できる。これらの圧縮手法を、以下では符号化と称する。
【０００４】
このようなさまざまな符号化は、同一の入力であってもそれぞれ異なる符号量を出力する。これを仮に符号化の入力依存性と呼ぶ。どの入力に対しても効率よく圧縮できるような、単一の符号化は原理的に存在しない。そこで、入力依存性を排したシステムが必要な場合には、入力に応じて符号化を使い分ける機構が必要になる。
【０００５】
このようなシステムでは事前に符号量を予測して符号化を選択するか、全ての符号化で圧縮してみて符号量を確かめてから選択するかの２つの方法が考えられる。後者は正確だが負荷が重いので、一般的なシステムには向かない。ここにおいて符号化の選択技術は符号量の予測技術に依存することになる。
【０００６】
一般に符号量の予測は難しい。特にＤＣＴ（Ｄｉｓｃｒｅｔｅ  ＣｏｓｉｎｅＴｒａｎｓｆｏｒｍ、離散コサイン変換）を使った国際標準ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）のような変換符号化の場合、変換処理なしに符号量を推定することは不可能に近い。これは変換符号化は変換後のデータを符号化対象とするためである。
【０００７】
そこでこのような変換符号化を含めた２種類の符号化を選択する従来技術である特開平１０−２４３３８８号公報の手法を従来例として説明する。この従来例は変換結果を分析することによって、変換符号化と可逆符号化のうちから、最適な符号化を選択する技術である。
【０００８】
なお、従来例では非可逆符号化を選択したとき画質が劣化しやすい画像がある旨記述されている。本発明では画質についての観点は持たないので、一見従来例と目的が違うように思われるかもしれない。しかし非可逆符号化では一般に画質と符号量がトレードオフの関係にあることを考えると、従来例が問題としているケースは非可逆符号化で画質を維持しようとしたときの符号量増加の問題でもあることがわかる。つまり、従来例が問題としている点を符号量の問題としてとらえることが可能であり、その場合は本発明が関わる問題と本質的に同一なのである。
【０００９】
図１１は従来例の符号化選択装置の構成例である。本発明の説明の趣旨に沿うように用語を一部変更しているが、従来例の手法の本質に関わるものではない。図中、１０はデータ入力部、３０は第１の符号量推定部、４０は符号化選択部、５０は選択結果出力部、１０１０はＡ／Ｄ変換器、１０２０はフレームメモリ、３０１０はラスターブロック変換部、３０２０はＤＣＴ変換部、１１０は入力データ、１３２はブロックデータ、１３３はＤＣＴデータ、１４０は選択結果データである。
【００１０】
図１１の各部について説明する。図１１の符号化選択装置は以下の構成よりなる。Ａ／Ｄ変換器１０１０は外部からデータを受け取り、入力データ１１０としてフレームメモリ１０２０へ送出する。フレームメモリ１０２０は入力データ１１０の全体を格納してから、改めて入力データ１１０としてラスターブロック変換部３０１０へ送出する。ラスターブロック変換部３０１０は入力データのスキャン順を変換してブロック分割を行い、これをブロックデータ１３２としてＤＣＴ変換部３０２０へ送出する。ＤＣＴ変換部３０２０はブロックデータ１３２にＤＣＴ処理を行い、ＤＣＴデータ１３３として符号化選択部４０へ送出する。符号化選択部４０はＤＣＴデータ１３３に基づいて最適な符号化を選択し、これを選択結果データ１４０として選択結果出力部５０に送出する。選択結果出力部５０は外部に選択結果データ１４０を送出する。
【００１１】
以上の構成の中で、選択結果出力部５０は従来例の記載に含まれないが、説明の都合上追加した。また符号化選択部４０は従来例では圧縮方式判定器という名前であるが、これも説明の都合上変更した。また従来例には実際の符号化を行う手段も含まれているが、これも従来例の特徴を明瞭にするために便宜上省略した。
【００１２】
以上の構成に基づいた従来例の動作について説明する。図１２は従来例の符号化選択装置の動作を示すフローチャートである。以下、図１２を用いて従来例の動作について説明する。
【００１３】
Ｓ１０ではＡ／Ｄ変換器１０１０およびフレームメモリ１０２０においてデータの入力を行う。Ｓ３１ではラスターブロック変換部３０１０においてブロック分割を行う。Ｓ３２ではＤＣＴ変換部３０２０においてＤＣＴ処理を行う。Ｓ４０では符号化選択部４０において符号化選択を行う。Ｓ５０では選択結果出力部５０において選択結果の出力を行う。
【００１４】
以上の動作の中で、符号化選択部４０における符号化選択はＤＣＴデータ１３３の周波数分布を分析して画像の性質を判別し、最適と思われる符号化を選択する。具体的には高周波成分の量を評価することによって、ＤＣＴによる変換符号化とＤＰＣＭ（Ｄｉｆｆｅｒｅｎｔｉａｌ  Ｐｕｌｓｅ  Ｃｏｄｅ  Ｍｏｄｕｌａｔｉｏｎ）による可逆符号化を自動的に切り替える。従来例では高周波成分の多い画像ではＤＣＴによる圧縮率を高くすることができないと記述している。これは本発明の観点からすれば、符号量こそ求めていないものの、大まかな符号量予測と同等の処理をしているに他ならない。
【００１５】
次に従来例の問題点について述べる。画像圧縮処理の中でも、ＤＣＴ処理は比較的重い処理である。例えば従来例で選択対象となっているＤＰＣＭは１画素につき１度の減算しか必要ないのに対して、８×８のＤＣＴで原理的には１画素あたり１６回の乗算と１４回の加算を必要とする。実装上の工夫でこの値は減らすことができるが、それでもＤＰＣＭに比べると圧倒的に処理が重い。さらにＤＣＴの対象となるブロックを切り出すためにブロックラインメモリが必要となるので、この点でも規模の大きい処理装置が必要となる。
【００１６】
従来点の問題は結果的にＤＰＣＭが選ばれる画像に対しても、この重いＤＣＴ処理を行わなければならない点である。これは符号化の選択にＤＣＴ処理の結果を必要とすることに起因する。冒頭に述べたように本発明の観点から言えば、実際に符号量を求めることなしに符号化を切り替えるのは処理負荷を軽くするためであり、これを実現するためにＤＣＴ処理を行うのは目的に矛盾する。
【００１７】
【発明が解決しようとする課題】
以上で述べてきたように、従来例の問題点として、実際の符号化処理に比較して符号化選択処理そのものの負荷が重くなってしまうことがあげられる。
【００１８】
本発明は上述の事情に鑑みてなされたもので、符号化処理に比較して処理の十分軽い符号量予測処理ならびに符号化選択処理を提供することを目的とする。
【００１９】
【課題を解決するための手段】
本発明によれば上述の目的を達成するために特許請求の範囲に記載のとおりの構成を採用している。ここでは、特許請求の範囲の記載内容について補充的に説明を行う。
【００２０】
本発明の一側面によれば、符号化選択装置において、入力データを入力するデータ入力手段と、上記データ入力手段により入力したデータに基づき少なくとも１つ以上の所定の符号化に関して符号量を推定する第１の符号量推定手段と、少なくとも１つ以上の所定の符号化に関して符号量を推定する第２の符号量推定手段と、上記第１の符号量推定手段および上記第２の符号量推定手段によって推定された符号量の比較に基づいて符号化方式を決定する符号化選択手段と、上記符号化選択手段の結果を外部へ出力する選択結果出力手段とを具備し、上記第２の符号量推定手段における符号量推定処理は上記入力データと無関係に行うようにしている。
【００２１】
この構成においては、上記第２の符号量推定手段による符号量推定処理は上記入力データの性質と無関係であるので軽い処理で行うことができる。たとえば、可逆符号化と変換符号化（非可逆符号化）とを選択する場合を考える。この場合、変換符号化の従来の符号量荷推定手法は高い負荷である反面、その符号量は、可逆符号化に比べ入力データの性質に対して比較的安定している。可逆符号化の従来の符号量推定は比較的小さな負荷で済む反面、その符号量は、入力データの性質に対して大幅に変化する。したがって、可逆符号化については通常の符号量推定を行い、変換符号化については入力データに依存しない推定を行い、負荷を抑えながら符号量が増加するのを抑えることができる。
【００２２】
また、この構成においては、符号化パラメータを入力するパラメータ入力手段をさらに設け、上記第２の符号量推定手段は上記入力データによらず、上記パラメータ入力手段により入力したパラメータのみに基づいて符号量を推定するようにしてもよい。また、推定符号量の比較には重み付けを行ってもよい。
【００２３】
パラメータによらず、一定の符号量（入力データの大きさに比例する）として推定してもよい。あるいは入力データの大きさに依存する関数で推定を行ってもよい。
【００２４】
また、上記第１の符号量推定手段で行われる符号量推定処理は、先に述べたように、可逆符号化に対して行うものであってもよい。
【００２５】
また、上記第１の符号量推定手段で行われる符号量推定処理は、対象となる符号化のソースコーディングの部分的な処理もしくはその簡略処理の結果に基づいて符号量を推定するものであってもよい。簡易シンボルを用いて推定するようにしてもよい。
【００２６】
また、上記第１の符号量推定手段で行われる符号量推定処理は、ソースコーディングの部分的な処理もしくはその簡略処理の結果と符号量の関係を統計的にまとめた結果を表または式などの形式で参照し、必要な場合にはこれを補間を加えて推定符号量を算出するようにしてもよい。
【００２７】
また、上記第２の符号量推定手段で行われる符号量推定処理は、先に触れたように、非可逆符号化に対して行うものであってもよい。
【００２８】
また、上記第２の符号量推定手段で行われる符号量推定処理は、入力される符号化パラメータと符号量の関係を統計的にまとめた結果を参照し、また必要な場合はこれに補間を加えて推定符号量を算出するようにしてもよい。
【００２９】
また、上記パラメータ入力手段において入力されたパラメータに対して四則演算をはじめとする所定の補正を行うことで、いずれかの符号化を優先的に選択させるようにしてもよい。
【００３０】
また、上記第１の符号量推定手段または上記第２の符号量推定手段において算出した推定符号量のうち少なくとも１つに対して、四則演算をはじめとする所定の補正を行うことで、いずれかの符号化を優先的に選択させるようにしてもよい。
【００３１】
また、上記符号化選択手段で入力された推定符号量のうち少なくとも１つに対して、四則演算をはじめとする所定の補正を行うことで、いずれかの符号化を優先的に選択させるようにしてもよい。
【００３２】
また、上記第１の符号量推定手段を、上記データ入力手段によって入力されたデータを予測する予測手段と、上記予測が上記入力データと一致する回数を計数する予測一致計数手段と、上記予測一致回数と符号量との関係を保持する符号量保持手段と、上記符号量保持手段によって与えられる推定符号量に上記予測一致回数に応じた補間を行う補間手段とから構成するようにしてもよい。
【００３３】
また、上記第２の符号量推定手段を、上記パラメータ入力手段によって入力されたパラメータと符号量との関係を保持する符号量保持手段と、上記符号量保持手段によって与えられる推定符号量に上記入力パラメータに応じた補間を行う補間手段とから構成するようにしてもよい。
【００３４】
また、上記予測手段によって行われる予測は少なくとも２つ以上の予測手法によって行い、上記予測一致計数手段は、上記予測手法のうち１つでも一致したときは予測一致回数として計数するようにしてもよい。
【００３５】
また、上記データ入力手段は入力されるデータを部分的に選択して第１の符号量推定手段に送出するようにしてもよい。
【００３６】
また、上記第１の符号量推定手段および上記第２の符号量推定手段における上記符号量保持部はそれぞれ対応する符号化を用いて、それぞれ上記入力データ、上記入力パラメータにおける、符号量との関係を事前に統計的に求めた結果を保持するようにしてもよい。
【００３７】
また、上記第１の符号量推定手段および上記第２の符号量推定手段における上記符号量保持部に格納するデータは、それぞれ上記入力データ、上記入力パラメータと符号量との関係が特に非線形の部分については細かい間隔で保持するようにしてもよい。
【００３８】
また、上記第１の符号量推定手段および上記第２の符号量推定手段における上記符号量保持手段は、それぞれ上記入力データ、上記入力パラメータに対して、最も近いデータか、または内輪と外輪のそれぞれにおいて最も近いデータの両方を選択してそれぞれの上記補間手段に送出するようにしてもよい。
【００３９】
また、本発明は符号化装置としても実現できる。
【００４０】
また、本発明は装置またはシステムに実装されるのみでなく、方法の態様でも実現可能であり、少なくともその一部をコンピュータプログラムとして構成できることはもちろんである。
【００４１】
【発明の実施の形態】
以下本発明の実施例について詳細に説明する。
【００４２】
［基本的な原理］
本発明の実施例の具体的な説明の前に、本発明の基本的な原理について述べる。本発明は大きく２つの原理からなる。
【００４３】
以下、第１の原理について説明する。本発明は可逆符号化と非可逆符号化の選択に関するものである。そこでまずこの両者の特性の違いについて説明する。可逆符号化には理論的な圧縮限界が存在する。これは一般に情報量などと呼ばれるが、数値としてはエントロピーがその例である。従って入力データが含む情報量によってその限界値が極端に変化し得る。結果として得られる符号量も極端に変化することになる。
【００４４】
これに対して非可逆符号化は必ず量子化処理またはその同等処理を内部に含む。例えば前出のＪＰＥＧの場合はＤＣＴ処理された結果に線形量子化を行う。この量子化は一般に画質に影響が少ないと思われる情報をより粗く量子化するように行われる。ＪＰＥＧの例でいえば、高周波成分は低周波成分よりもより粗く量子化される。このため例えば画像の情報量が高周波成分に多く含まれる場合には、量子化の効果で符号量が大きくなりづらい。つまり可逆符号化に比較して、より符号量が安定する。
【００４５】
非可逆符号化の符号量が大きく変動するのは、符号化パラメータが変化した場合である。このパラメータには量子化処理を制御する値が含まれていることが多い。ＪＰＥＧの例では量子化テーブルをパラメータとして与えることができる。つまり、符号化パラメータが一定の場合、入力データによらず非可逆符号化の符号量は可逆符号化よりも安定していることが多い、というのがより正確な記述になる。
【００４６】
この性質を確かめるために行った実験の結果を図１３に示す。可逆符号化には予測符号化の一種を使用した。また非可逆符号化はＪＰＥＧを使用し、１から順に量子化を粗くした。この結果、可逆符号化は画像に応じて符号量が１００倍以上に変化したが、非可逆符号化は最も変化が激しかった非可逆符号化１でも７倍程度と安定していた。以上が本発明の第１の原理である。
【００４７】
本発明の第２の原理を説明するために、可逆符号化の符号量予測について述べる。可逆符号化は情報を欠くことなく復元する必要があるため、誤差を含む可能性のある計算、例えば一般的な周波数変換は処理に含むことができない。これは原理的に可逆符号化は浮動小数による演算をほとんど含まないことを意味する。同様に除算も扱いづらく、一般には入力データそのままか、加減算を加える程度が主である。
【００４８】
符号量予測に実際の符号化の一部の処理か、またはそれを簡易化した処理が必要な点では、可逆符号化の事情は非可逆符号化と同様である。しかし上のように可逆符号化は一般に軽い処理が多いので、非可逆符号化と比較すると符号量を比較的簡単に予測することができる。これが本発明を構成する第２の原理である。
【００４９】
以上、以下の２原理が明らかとなった。
【００５０】
第１の原理：非可逆符号化の符号量は可逆符号化より入力画像への依存性が少ない、
第２の原理：可逆符号化の符号量予測は非可逆符号化のそれより容易である。
【００５１】
そこで本発明は、可逆符号化による符号量を符号量予測で推定し、これを画像によらず一定と仮定した非可逆符号化による符号量と比較することにより、より符号量の少ないと思われる符号化を選択する。このとき非可逆符号化の符号量については、事前に統計的に調べた符号化パラメータとの関係を使った補正を加えることで精度を向上する。
【００５２】
本発明の具体的な例については実施例において説明する。以下、本発明の実施例として、
（１）  一般的な例
（２）  予測符号化とＪＰＥＧの選択に適用した例について述べる。
【００５３】
［実施例１］
本発明の実施例１として、まず一般的な例を述べる。以下、実施例１の具体的な説明を行う。図１は実施例１における符号化選択装置を示すブロック図である。図中、図１１と同様の部分には同一の符号を付して説明を省略する。図中、２０はパラメータ入力部、３１は第２の符号量推定部、１２０はパラメータデータ、１３０、１３１は推定符号量データである。
【００５４】
図１の各部について説明する。データ入力部１０は外部から符号化すべきデータを入力し、入力データ１１０として第１の符号量推定部３０へ送出する。パラメータ入力部２０は外部からパラメータを入力し、パラメータデータ１２０として第２の符号量推定部３１へ送出する。第１の符号量推定部３０は入力データ１１０を解析して所定の可逆符号化による符号量を推定し、推定符号量データ１３０として符号化選択部４０へ送出する。第２の符号量推定部３１はパラメータデータ１２０から所定の非可逆符号化による符号量を推定し、推定符号量データ１３１として符号化選択部４０へ送出する。符号化選択部４０は推定符号量データ１３０および１３１に基づき、符号化手法を選択して選択結果データ１４０として選択結果出力部５０へ送出する。選択結果出力部５０は選択結果データ１４０を外部へ出力する。
【００５５】
以上の構成に基づいて本発明の実施例１の動作について説明する。図２は実施例１における符号化動作を示すフローチャートである。図中、図１２と同様の部分には同一の符号を付して説明を省略する。ただし若干異なる部分については説明を加える。
【００５６】
Ｓ１０ではデータ入力部１０およびパラメータ入力部２０において、外部からそれぞれデータとパラメータの入力を受け付ける。Ｓ２０では第１の符号量推定部３０において所定の可逆符号化による符号量を推定する。Ｓ３０では第２の符号量推定部３１において所定の非可逆符号化による符号量を推定する。Ｓ４０ではＳ２０およびＳ３０で推定された符号量に基づいて、符号化方式を選択する。
【００５７】
以上の動作の中で、説明の都合上Ｓ１０でデータとパラメータを同時に入力するように説明したが、これらはそれぞれの符号量推定処理であるＳ２０およびＳ３０に間に合えば良いので、特に同期を取る必要はない。またＳ２０とＳ３０はＳ４０に間に合えば良いので、実際にはこの順序が逆でも構わないし、あるいは並行して行われても良い。
【００５８】
次に第１の符号量推定部３０で行われる可逆符号化の符号量推定処理について説明する。符号化処理は一般に前段のソースコーディングと後段のエントロピーコーディングからなる。ごく一般的な定義で言えば、ソースコーディングは入力に対して何らかの仮定あるいはモデリングをした変換処理で、エントロピーコーディングは統計的な圧縮処理である。前出のＪＰＥＧの例でいえばソースコーディングはＤＣＴと量子化を、またエントロピーコーディングはハフマン符号化を採用している。
【００５９】
一般に符号量推定はソースコーディングの出力を観察することによって得ることが多い。これは入力データの違いによる影響がソースコーディングに出やすいためである。これに対してエントロピーコーディングは入力によらず、比較的安定した圧縮率を示すことが多い。例えばＪＰＥＧの場合、量子化の結果０にならなかった変換係数の個数などから符号量を推定する事ができる。第１の符号量推定部３０で行われる符号量推定処理も、例えばこのようなソースコーディングの結果に基づくものであってよい。
【００６０】
また別の例としてソースコーディング自体ではなく、それを簡略化した処理やその代替処理などの結果から符号量を推定してもよい。このような例については実施例２において詳細に説明する。
【００６１】
ソースコーディングの結果から符号量を求めるには、事前に統計的な実験をしておく必要がある。ここでいう統計的な実験とはそのシステムに入力され得る画像を多く集め、これらのソースコーディングの結果と符号量の関係を統計的に処理することを指す。この統計的処理はあるソースコーディングの結果が得られたときに対応する符号量がいくつになるかを推定するのが目的なので、最も単純な場合は平均を用いればよい。もちろん公知の統計的技術によって重み付けや偏差による補正が行われてもよい。
【００６２】
このような統計処理の結果は第１の符号量推定部３０に保持する必要がある。それは表の形式で保持してもよいし、線形または非線形の式で近似してもよい。もちろんこれらの組み合わせでも構わない。例として代表値を表の形式で持ち、これらの間を補間して求める構成を実施例２において詳細に説明する。またこの部分は入力とすべきデータなどの細部を除いて第２の符号量推定部３１と共通する処理なので、以下で改めて説明する。
【００６３】
次に第２の符号量推定部３１で行われる非可逆符号化の符号量推定処理について説明する。この処理は入力データ１１０を参照することなく行う。例えば統計結果として図１３を得た場合、これら４画像についての推定符号量は統計値、例えば平均、最大値、最小値、最頻値あるいは中間値などから算出しておき、実際の符号量推定処理はこれらを参照して行う。これらの統計値は符号化パラメータ別に求めておき、例えば表のかたちで第２の符号量推定部３１に保持する。図３は符号化パラメータが２種類ある場合における、このような表の概念図である。
【００６４】
表にないパラメータが入力された場合は、線形もしくは非線形の補間を行って、該当する値を算出する。この場合、表にある中で近いパラメータで代用してもよいが、あまり好ましくない。それは非可逆符号化の符号量がこのようなパラメータへ強く依存するためである。
【００６５】
また逆にパラメータを固定して圧縮を運用するような場合がある。例えば画質が厳しく問われるような用途では、結果的にではあるが使えるパラメータの範囲に制限を生じるので、事実上は固定のパラメータで設計してしまっても構わない。このような場合には第２の符号量推定部３１はパラメータにも入力画像にもよらない、固定の符号量を送出する。このときパラメータ入力部２０は本実施例の構成から省くことができる。
【００６６】
最後に符号化選択部４０における選択処理は、基本的には推定符号量データ１３０および１３１のうち、小さい方に対応する符号化を選択する。しかしこの比較に何らかの重みをつけてもよい。ここでいう重みづけとは、推定符号量に何らかの値を加えたり乗じたりする処理を指す。例えば画質の問題で符号量の差がＤ以下の場合は可逆符号化を選択したいような場合、推定符号量データ１３０からＤを減じたものを推定符号量データ１３１と比較する事によって選択処理を行えばよい。
【００６７】
このような補正処理はもっと間接的に行うこともできる。例えば第１の符号量推定部３０もしくは第２の符号量推定部３１にそのような重みづけをする機能を加えてもよい。さらにパラメータ入力部２０の内部でパラメータを調整すれば、それ以外の構成を変更しなくても同等の目的を実現することができる。これについて以下に説明する。
【００６８】
本実施例は実際の符号化を行う部分とは独立なので、パラメータ入力部２０から送出するパラメータデータ１２０は実際に符号化するときのパラメータでなくても構わない。そこで上述のように可逆符号化を優先したい場合、このパラメータを非可逆符号化の圧縮率が悪くなる方に調整する。この調整の度合いは理論的に算出できることもあるし、それができなくても予め統計処理などで求めておける。すると推定符号量データ１３１は実際の符号量よりも多めになるので、結局符号化選択部４０で行われる選択処理を、見かけ上可逆を優先するような処理にすることができる。パラメータ入力部２０は入力インターフェースの部分に実装できるので、例えば本実施例をハードウェアで実装したような場合にも、デバイスドライバなどのハードウェアの制御部分や、ハードウェアを起動するアプリケーションなどでの実装が可能である。
【００６９】
以上の説明の中で説明のための便宜上、選択対象となる非可逆符号化および可逆符号化は１つづつであるかのように説明したが、これがそれぞれ２つ以上であっても構わない。そのような場合の本実施例の拡張については、以上の説明より明らかなので説明を省略する。
【００７０】
以上で説明したように、実施例１によれば非可逆符号化の符号量を画像によらず一定と仮定するので、符号量予測を可逆符号化についてのみ行えばよく、ごく高速かつ低負荷で符号化選択処理を行うことができる。
【００７１】
なお、実施例１の符号化選択装置を用いた符号化装置は図４に示すように構成される。この図では、符号化選択装置（図１）の選択結果出力部５０からの選択結果に基づいて符号化部６０の第１の符号化ユニット６１および第２お符号化ユニット６２を選択して利用するようになっている。第１の符号化ユニット６１は第１の符号量推定部３０に対応し、第２の符号化ユニット６２は第２の符号量推定部３１に対応する。もちろん、第１符号化ユニット６１および第２符号化ユニット６２が符号化部６０全体に対応してもよいし、その一部のステージに対応してもよい。
【００７２】
［実施例２］
本発明の実施例２として、本発明を非可逆符号化であるＪＰＥＧと、可逆符号化である特開平０９−２２４２５３号公報に開示された予測符号化との選択に適用した例について説明する。
【００７３】
以下、実施例２の具体的な説明を行う。図５は実施例２における符号化選択装置を示すブロック図である。図中、図１および図１１と同様の部分には同一の符号を付して説明を省略する。図中、３０３０は予測部、３０４０は予測一致計数部、３０５０は補間部、３０５１は符号量保持部、３０６０は符号量保持部、３０７０は補間部、１３４は予測データ、１３５は予測一致データ、１３６、１３７は推定符号量データである。
【００７４】
図５の各部について説明する。予測部３０３０は所定の１つ以上の予測処理を入力データ１１０に対して行い、その結果を予測データ１３４として予測一致計数部３０４０へ送出する。予測一致計数部３０４０は予測データ１３４と入力データ１１０が一致した回数を計数し、その結果を予測一致データ１３５として補間部部３０５０および符号量保持部３０５１へ送出する。符号量保持部３０５１は各予測一致回数に対応する推定符号量を保持し、予測一致データ１３５に基づいて適当な推定符号量を推定符号量データ１３６として補間部３０５０へ送出する。補間部３０５０は予測一致データ１３５に基づいて、必要であれば所定の補間処理を行って推定符号量データ１３５を符号化選択部４０へ送出する。符号量保持部３０６０は各パラメータに対応する推定符号量を保持し、パラメータデータ１２０に基づいて適当な推定符号量を推定符号量データ１３７として補間部３０７０へ送出する。補間部３０７０はパラメータデータ１２０に基づいて、必要であれば所定の補間処理を行って推定符号量データ１３１を符号化選択部４０へ送出する。
【００７５】
詳細な動作については実施例１の説明などから明らかなので、省略する。
【００７６】
以上の構成において、まず第１の符号量推定部３０の詳細について説明する。予測部３０３０における予測は特開平０９−２２４２５３号公報に開示された予測符号化において行われる予測のうち、一部または全部を行う。一部の予測を行う場合、どの予測を行うかについては事前に各予測の一致率と符号量との関係を調べ、より相関性が高い予測を優先的に採用すればよい。また予測が複数の場合、予測別に一致を計数してもよいし、いずれかの予測が一致した回数を計数することも考えられる。これらの選択についても、より符号量と相関性が高くなるような値を優先する。
【００７７】
これらの相関性は事前に統計的な処理によって求めることができる。もちろん、理論的に算出できるような場合は、そのようにしても構わない。例えば特開平０９−２２４２５３号公報に開示された技術の場合、複数の予測から一致した予測を選択するように符号化するので、いずれかの予測が一致した回数だけを計数すれば十分と理論的に決めることができる。
【００７８】
本実施例において、第１の符号量推定部３０で行われる処理は特開平０９−２２４２５３号公報に開示された符号化処理をごく単純化したものである。つまり実施例１の説明で触れた、ソースコーディングを簡略化した処理で符号量を推定する例にあたる。一般にはこうした符号量の推定は実際にソースコーディングを行って符号量を推定するものほど精度が高くないが、予測一致データ１３５と実際の符号量との相関が高ければ、本実施例の目的に供せられる程度の精度は確保することができる。図６はこれを確かめる実験結果である。横軸が予測の一致率、縦軸が特開平０９−２２４２５３号公報に開示された技術による符号量を示している。図６より両者の相関性は明らかに高い。
【００７９】
またこの処理をより簡略化するために、画像をサンプリングして処理することが考えられる。例えば画像からＮラインのサンプルを取り出して、これについての予測一致率をとるだけでも符号量との相関をある程度とることができる。Ｎの値は必要とする精度によって異なるが、例えば全ラインの１／１０程度でもいいし、さらに高速化が必要な場合は入力画像の解像度が高ければ１／１０００程度でも比較的高い相関性を維持できる。またこのサンプルは画像の局所性を避けるために、なるべく画像全体に散っていることが望ましい。
【００８０】
なお以上の説明では都合上、本実施例では特開平０９−２２４２５３号公報に開示された技術を取り上げたが、他の可逆符号化への応用も容易である。例えば差分符号化に関しては、差分をとる対象となる画素値と処理しようとする画素値との相関をとることで符号量推定が可能である。同様にマルコフモデル符号化では各マルコフモデルの出現確率の測定から、ブロックソーティング符号化では条件付き確率の測定から、ＬＺ符号化の場合は周辺画素との相関から、それぞれ符号量の推定が可能である。これらの詳細については本実施例の本質から外れるので省略する。
【００８１】
また本実施例では第１の符号量推定部３０の処理を簡略化したものについて説明してきたが、処理負荷の増加が許容できるのであれば、前述したソースコーディングそのままでももちろん構わない。この場合の構成は以上の説明から容易に類推可能なので、説明を省略する。
【００８２】
なお、以上の説明では補間部３０５０および符号量保持部３０５１の詳細について説明していないが、これは以下に述べる補間部３０７０および符号量保持部３０６０の詳細から容易に類推可能なので、ここでは説明を省略する。
【００８３】
次に第２の符号量推定部３１について説明する。符号量保持部３０６０は保持している推定符号量うち、入力されたパラメータデータ１２０に近いものを選択する。図３は本実施例においては符号量保持部３０６０が保持する推定符号量の表に相当するが、簡単のため本実施例では符号化パラメータが１つの場合について詳細に説明する。本実施例で仮定しているＪＰＥＧの場合、スケーリングファクタと呼ばれるパラメータをこれに対応させることができる。図７はそのような推定符号量の表の概念図である。いまスケーリングファクタの昇順に、左から並べられているものとする。例えば入力されたパラメータデータ１２０がＳｎより大きく、かつＳｎ＋１より小さかった場合、Ｓｎ、Ｓｎ＋１、Ｃｎ、Ｃｎ＋１を推定符号量データ１３７として補間部３０７０へ送出する。図８はこのときの推定符号量データ１３７のフォーマット例である。
【００８４】
図７におけるスケーリングファクタの間隔は、望ましい符号量の推定精度と保持可能な表のサイズを勘案して決める。スケーリングファクタ間の間隔は一定でなくても構わないので、スケーリングファクタと推定符号量の関係に非線形性が強い部分にサンプル数を多くするのが一般には好ましい。図９はそのような表の一例であるが、これは符号量保持部３０５１における例であって、図６に例示した予測一致率と符号量との関係を示している。
【００８５】
さて以上の説明は上述の通り、符号量保持部３０５１についても同様にあてはまるが、入力データが異なるので注意が必要である。つまり符号量保持部３０６０への入力が符号化パラメータであるのに対して、符号量保持部３０５１への入力は予測の一致回数である。この値は画像の大きさによって異なるので、補正が必要になる。例えば図７のスケーリングファクタを予測の一致率に置き換え、符号量保持部３０５１の内部で予測一致回数を画像サイズで除することで予測一致確率に正規化すれば、画像サイズによらない参照が可能となる。もちろんこのような正規化を予測一致計数部３０４０側で行っても構わない。
【００８６】
次に補間部３０７０での補間について述べる。ここで行われる補間は符号量保持部３０６０が保持する推定符号量が、符号化パラメータに対して十分細かい単位でとられていれば、例えば線形補間のような単純な補間で構わない。この場合、パラメータＳに対して次のように推定符号量Ｃを求める。
【００８７】
【数１】
0004003410.tif 000002
【００８８】
推定符号量の表で符号化パラメータの間隔が広く、かつスケーリングファクタと推定符号量の関係が非線形の場合には、もっと複雑な多次の補間式がよい。具体例については公知の技術が多く、また本実施例の本質から外れるので説明を省略する。
【００８９】
本実施例の効果を確認するために、コンピュータ上で本実施例のシミュレーションを行った。図１０は実験結果である。またこのときの本実施例の処理時間は、ＪＰＥＧに比較して約１／４０、特開平０９−２２４２５３号公報に開示された予測符号化に比較しても約１／１０であった。この結果から本実施例の効果は明らかである。
【００９０】
以上で説明したように、実施例２によれば非可逆符号化と可逆符号化の選択を、軽い処理負荷で実現することができる。
【００９１】
【発明の効果】
以上の説明から明らかなように、本発明によれば複数の非可逆符号化と可逆符号化から符号量の意味で最適なものを選択する符号化選択装置において、十分な精度でしかも軽い処理負荷の符号化選択処理を実現することができる。
【図面の簡単な説明】
【図１】  本発明の符号化選択装置の実施例１を示す構成図である。
【図２】  本発明の符号化選択装置の実施例１における動作の一例を示すフローチャートである。
【図３】  本発明の符号化選択装置の実施例１の符号量推定処理において保持する推定符号量の表の概念図である。
【図４】  実施例１の符号化選択装置を採用した符号化装置を示す構成図である。
【図５】  本発明の符号化選択装置の実施例２を示す構成図である。
【図６】  本発明の符号化選択装置の実施例２における可逆符号化の予測一致率と符号量の関係の一例を示す説明図である。
【図７】  本発明の符号化選択装置の実施例２の符号量推定処理において保持する推定符号量の表の概念図である。
【図８】  本発明の符号化選択装置の実施例２の符号量推定処理において使用する推定符号量データ１３７の概念図である。
【図９】  本発明の符号化選択装置の実施例２の符号量推定処理において保持する推定符号量の表の例である。
【図１０】  本発明の符号化選択装置の実施例２による実験結果の一例を示す説明図である。
【図１１】  従来例の符号化選択装置を示す構成図である。
【図１２】  従来例の符号化選択装置の動作の一例を示すフローチャートである。
【図１３】  非可逆符号化と可逆符号化との性質の違いを説明する実験結果の説明図である。
【符号の説明】
１０      データ入力部
２０      パラメータ入力部
３０      第１の符号量推定部
３１      第２の符号量推定部
４０      符号化選択部
５０      選択結果出力部
６０      符号化部
６１      第１の符号化ユニット
６２      第２の符号化ユニット
１１０      入力データ
１２０      パラメータデータ
１３０      推定符号量データ
１３１      推定符号量データ
１３２      ブロックデータ
１３３      ＤＣＴデータ
１３４      予測データ
１３５      予測一致データ
１３６      推定符号量データ
１３７      推定符号量データ
１４０      選択結果データ
１０１０      Ａ／Ｄ変換器
１０２０      フレームメモリ
３０１０      ラスターブロック変換部
３０２０      ＤＣＴ変換部
３０３０      予測部
３０４０      予測一致計数部
３０５０      補間部
３０５１      符号量換算部
３０６０      符号量保持部
３０７０      補間部
【図１】
0004003410.tif 000003
【図２】
0004003410.tif 000004
【図３】
0004003410.tif 000005
【図４】
0004003410.tif 000006
【図５】
0004003410.tif 000007
【図６】
0004003410.tif 000008
【図７】
0004003410.tif 000009
【図８】
0004003410.tif 000010
【図９】
0004003410.tif 000011
【図１０】
0004003410.tif 000012
【図１１】
0004003410.tif 000013
【図１２】
0004003410.tif 000014
【図１３】
0004003410.tif 000015