(57)【要約】【課題】インターレース画像のような垂直方向への相関性が低い画像を符号化する際に、従来に比べて圧縮効率を充分に向上させること。【解決手段】入力画像回転・転置手段１１は、画像入力手段１からの入力画像データを回転又は転置させる。ボディデータ生成手段２は、画像入力手段１からの入力画像データを符号化し、第１のボディデータを生成する。ボディデータ生成手段２は、更に、入力画像回転・転置手段１１からの回転・転置後入力画像データを符号化し、第２のボディデータを生成する。符号量比較手段１２は、第１のボディデータの符号量Ｑ１と第２のボディデータの符号量Ｑ２との間の大小関係を判別する。符号データ出力手段１０は、Ｑ２＜Ｑ１の場合、第２のボディデータを出力し、Ｑ１＜Ｑ２場合、第１のボディデータを出力する。【選択図】  図１
2005026729.tif 000002
【特許請求の範囲】
【請求項１】
入力画像データに対して９０°若しくは−９０°の回転又は転置を行う入力画像回転・転置手段と、
前記入力画像データと、前記入力画像回転・転置手段で前記回転又は転置が行われた回転・転置後入力画像データとの双方に対して同一の符号化を行い、画像符号化データを生成する画像符号化データ生成手段と、
前記画像符号化データ生成手段が前記入力画像データに対する符号化により生成した第１の画像符号化データの符号量と、前記画像符号化データ生成手段が前記回転・転置後入力画像データに対する符号化により生成した第２の画像符号化データの符号量とを比較する符号量比較手段と、
前記符号量比較手段での比較結果に応じて、前記第１の画像符号化データと前記第２の画像符号化データとの内の符号量の小さな方の画像符号化データを出力する符号データ出力手段と、
を備えたことを特徴とする画像符号化装置。
【請求項２】
コンピュータを、
入力画像データに対して９０°若しくは−９０°の回転又は転置を行う入力画像回転・転置手段と、
前記入力画像データと、前記入力画像回転・転置手段で前記回転又は転置が行われた回転・転置後入力画像データとの双方に対して同一の符号化を行い、画像符号化データを生成する画像符号化データ生成手段と、
前記画像符号化データ生成手段が前記入力画像データに対する符号化により生成した第１の画像符号化データの符号量と、前記画像符号化データ生成手段が前記回転・転置後入力画像データに対する符号化により生成した第２の画像符号化データの符号量とを比較する符号量比較手段と、
前記符号量比較手段での比較結果に応じて、前記第１の画像符号化データと前記第２の画像符号化データとの内の符号量の小さな方の画像符号化データを出力する符号データ出力手段と、
して機能させるためのものであることを特徴とする画像符号化プログラム。
【請求項３】
入力画像データに対して所定の符号化により生成された第１の画像符号化データ、又は入力画像データを回転若しくは転置した後の回転・転置後入力画像データに対して前記所定の符号化により生成された第２の画像符号化データが入力される、符号データ入力手段と、
前記符号データ入力手段からの画像符号化データに対して所定の復号化により出力画像データを生成する出力画像データ生成手段と、
前記符号データ入力手段が入力した画像符号化データが前記回転又は転置が行われたものであるか否かについて判別する回転・転置判別手段と、
前記回転・転置判別手段が前記回転又は転置が行われたものであると判別した場合に、前記出力画像データ生成手段により生成された出力画像データを前記回転又は転置が行われる前の状態に戻すための逆回転又は再転置を行い、逆回転又は再転置処理後の画像データを出力し、前記回転・転置判別手段が回転又は転置が行われたものではないと判別した場合には、前記出力画像データ生成手段により生成された出力画像データをそのまま出力する画像出力手段と、
を備えたことを特徴とする画像復号化装置。
【請求項４】
コンピュータを、
入力画像データに対して所定の符号化により生成された第１の画像符号化データ、又は入力画像データを回転若しくは転置した後の回転・転置後入力画像データに対して前記所定の符号化により生成された第２の画像符号化データが入力される、符号データ入力手段と、
前記符号データ入力手段からの画像符号化データに対して所定の復号化により出力画像データを生成する出力画像データ生成手段と、
前記符号データ入力手段が入力した画像符号化データが前記回転又は転置が行われたものであるか否かについて判別する回転・転置判別手段と、
前記回転・転置判別手段が前記回転又は転置が行われたものであると判別した場合に、前記出力画像データ生成手段により生成された出力画像データを前記回転又は転置が行われる前の状態に戻すための逆回転又は再転置を行い、逆回転又は再転置処理後の画像データを出力し、前記回転・転置判別手段が回転又は転置が行われたものではないと判別した場合には、前記出力画像データ生成手段により生成された出力画像データをそのまま出力する画像出力手段と、
して機能させるためのものであることを特徴とする画像復号化プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像データについて符号化を行う画像符号化装置、及び画像符号化プログラム、並びにこの符号化により得られる符号データについて復号化を行うための画像復号化装置、及び画像復号化プログラムに関するものである。
【０００２】
【従来の技術】
画像圧縮方式としては、最も一般的なＪＰＥＧをはじめとして従来から種々の方式が用いられてきているが、最近、国際標準化され注目されている画像圧縮方式としてＪＰＥＧ２０００がある。このＪＰＥＧ２０００は、従来のＪＰＥＧが離散コサイン変換（ＤＣＴ）を用いた方式であるのに対し、ウェーブレット変換（ＤＷＴ）を用いた方式であるため、より高画質及び高階調の画像が得られ、また、同程度の画質に比べ圧縮率を高くすることができるなど多くのメリットを有している。このようなＪＰＥＧ２０００の規格を用いた画像データ符号化の技術においても更なる圧縮率の向上が追求されている（例えば、特許文献１又は特許文献２参照）。
【０００３】
図１０は、ＪＰＥＧ２０００を用いた従来の画像符号化装置の構成を示すブロック図である。この装置は、画像入力手段１、ボディデータ生成手段（画像符号化データ生成手段）２、ヘッダ生成手段９、及び符号データ出力手段１０を備えている。そして、ボディデータ生成手段２は、ＤＣレベルシフト手段３、カラー変換手段４、ウェーブレット変換手段５、スカラ量子化手段６、係数ビットモデリング手段７、及びエントロピー符号化手段８を有している。
【０００４】
なお、上記の構成要素のうち、ＤＣレベルシフト手段３、カラー変換手段４、及びスカラ量子化手段６はＪＰＥＧ２０００においてはオプションとして備えられたものである。ＪＰＥＧ２０００では、その他にもオプションとして備えられたものがあるが、本発明の技術とは直接的な関連性がないか、あっても重要度が低いため説明を省略している。また、ＪＰＥＧ２０００では、画像を複数のタイル領域に分割し、各タイル領域間の相関関係をなくすことによって高速の並列処理を可能にしているが、本明細書での符号化処理は、１つのタイル領域における処理であることを前提としている。したがって、図１０においては、タイリング手段等の構成要素については図示を省略している。
【０００５】
次に、この図１０に係る装置の動作について説明すると、まず、画像入力手段１からの入力画像データはＤＣレベルシフト手段３に入力され、ＤＣレベルがシフトされる。ＤＣレベルのシフトとは、符号化効率を高めるために、ＤＣ（直流）成分すなわちゼロ成分を基準として入力画像データのレベルをシフトすることである。
【０００６】
ＤＣレベルシフト手段３からの入力画像データはカラー変換手段４に入力され、ここでＲＧＢカラー空間における値からＹＵＶカラー空間における値への変換が行われる。この変換も符号化効率を高めるために行われるものである。
【０００７】
カラー変換手段４でカラー変換された画像データはウェーブレット変換手段５に入力されウェーブレット変換が行われる。ウェーブレット変換は、複雑な振動波形の解析等を行う場合に用いられる変換であり、フーリェ解析の特徴を生かしつつ、時間的又は空間的な変動を同時にとらえることができる波形データ解析手法である。
【０００８】
スカラ量子化手段６は、ウェーブレット変換手段５からの変換データをある値で割算することにより、この変換データをスカラ値に量子化する。但し、この量子化は必ずしも常に必要なわけではない。
【０００９】
係数ビットモデリング手段７は、スカラ量子化手段６により量子化が行われたウェーブレット係数をビットプレーン化し、更に、各ビットプレーンに対し３つの所定のパス（Ｓｉｇｎｉｆｉｃａｎｔ  Ｐｒｏｐａｇａｔｉｏｎ  Ｐａｓｓ，Ｍａｇｎｉｔｕｄｅ  Ｒｅｆｉｎｅｍｅｎｔ  Ｐａｓｓ，Ｃｌｅａｎｕｐ  Ｐａｓｓと呼ばれる３つのパス）による処理を行う。
【００１０】
係数ビットモデリング手段７により処理されたビットプレーンデータはエントロピー符号化手段８に入力され、ここでエントロピー符号化が行われてボディデータ（画像符号化データ）が生成される。そして、この生成されたボディデータに、ヘッダ生成手段９により生成された必要なヘッダ情報（例えば、ウェーブレット係数のビット数、ゼロビットプレーン数、処理パス数等）が付加される。符号データ出力手段１０は、このボディデータ及びヘッダ情報を符号データとして出力を行う。
【００１１】
【特許文献１】
特開２００２−１３５５９４号公報
【特許文献２】
特開２００２−１６５０９８号公報
【００１２】
【発明が解決しようとする課題】
ところで、図１１は、ある１つのコードブロックＣＢにおけるインターレース画像についての説明図である。インターレース画像とは、トップフィールドとボトムフィールドとを交互にインターリーブして組み合わせることにより得られる画像であり、図１１の例では、ある対象物画像Ｐが、交互にインターリーブされたトップフィールド側ラインＬ１とボトムフィールド側ラインＬ２とにより形成されている様子が鮮明に示されている。このような対象物画像Ｐのインターレース画像では、各画素データ相互の相関性は水平方向に強く現れ、垂直方向への相関性は極めて希薄であることが明らかである。
【００１３】
ここで、係数ビットモデリング手段７及びエントロピー符号化手段８がそれぞれ行う係数ビットモデリング及び符号化はＥＢＣＯＴと呼ばれるＪＰＥＧ２０００特有の手法に基づいており、その走査方向は垂直方向が基調となっている。図１２（ａ）は、このようなＪＰＥＧ２０００の走査方向についての説明図である。この図の矢印で示すように、ストライプ高さが４画素、ストライプ幅が１０画素の領域内において、最初に画面左上位置から４画素分垂直方向へ下降し、次いで、隣の列の最上位位置に移って再度４画素分垂直方向へ下降する、というような走査を順次繰り返すようになっている。
【００１４】
しかし、図１１に示したような垂直方向への相関性が極めて希薄な画像を符号化する場合、垂直方向を基調とする図１２（ａ）のＪＰＥＧ２０００の走査方向はあまり好適な走査方向ではなく、一方、好適な走査方向は図１２（ｂ）に示すような別の走査方向である。つまり、ストライプ高さが１画素、ストライプ幅が４画素の領域内において、最初に画面左上位置から４画素分水平方向へ移動し、次いで、１行下の位置に移って再度４画素分水平方向へ移動する、というような走査である。
【００１５】
ところが、ＪＰＥＧ２０００の規格では、図１２（ｂ）のような走査方向は許容されていないので、図１２（ａ）のような走査方向を採用せざるを得ない。そのため、従来は、インターレース画像のような垂直方向への相関性が低い画像をＪＰＥＧ２０００の規格に基づき符号化する際は、圧縮効率を一定レベル以上向上させることが難しかった。
【００１６】
本発明は上記事情に鑑みてなされたものであり、インターレース画像のような垂直方向への相関性が低い画像をＪＰＥＧ２０００の規格に基づき符号化する際に、圧縮効率を一定レベル以上向上させることが可能な画像符号化装置、及び画像符号化プログラム、並びにこの符号化により得られる符号データについて復号化を行うための画像復号化装置、及び画像復号化プログラムを提供することを目的としている。
【００１７】
【課題を解決するための手段】
上記課題を解決するための手段として、請求項１記載の発明は、入力画像データに対して９０°若しくは−９０°の回転又は転置を行う入力画像回転・転置手段と、前記入力画像データと、前記入力画像回転・転置手段で前記回転又は転置が行われた回転・転置後入力画像データとの双方に対して同一の符号化を行い、画像符号化データを生成する画像符号化データ生成手段と、前記画像符号化データ生成手段が前記入力画像データに対する符号化により生成した第１の画像符号化データの符号量と、前記画像符号化データ生成手段が前記回転・転置後入力画像データに対する符号化により生成した第２の画像符号化データの符号量とを比較する符号量比較手段と、前記符号量比較手段での比較結果に応じて、前記第１の画像符号化データと前記第２の画像符号化データとの内の符号量の小さな方の画像符号化データを出力する符号データ出力手段と、を備えたことを特徴とする。
【００１８】
請求項２記載の発明は、コンピュータを、入力画像データに対して９０°若しくは−９０°の回転又は転置を行う入力画像回転・転置手段と、前記入力画像データと、前記入力画像回転・転置手段で前記回転又は転置が行われた回転・転置後入力画像データとの双方に対して同一の符号化を行い、画像符号化データを生成する画像符号化データ生成手段と、前記画像符号化データ生成手段が前記入力画像データに対する符号化により生成した第１の画像符号化データの符号量と、前記画像符号化データ生成手段が前記回転・転置後入力画像データに対する符号化により生成した第２の画像符号化データの符号量とを比較する符号量比較手段と、前記符号量比較手段での比較結果に応じて、前記第１の画像符号化データと前記第２の画像符号化データとの内の符号量の小さな方の画像符号化データを出力する符号データ出力手段と、して機能させるためのものであることを特徴とする。
【００１９】
請求項３記載の発明は、入力画像データに対して所定の符号化により生成された第１の画像符号化データ、又は入力画像データを回転若しくは転置した後の回転・転置後入力画像データに対して前記所定の符号化により生成された第２の画像符号化データが入力される、符号データ入力手段と、前記符号データ入力手段からの画像符号化データに対して所定の復号化により出力画像データを生成する出力画像データ生成手段と、前記符号データ入力手段が入力した画像符号化データが前記回転又は転置が行われたものであるか否かについて判別する回転・転置判別手段と、前記回転・転置判別手段が前記回転又は転置が行われたものであると判別した場合に、前記出力画像データ生成手段により生成された出力画像データを前記回転又は転置が行われる前の状態に戻すための逆回転又は再転置を行い、逆回転又は再転置処理後の画像データを出力し、前記回転・転置判別手段が回転又は転置が行われたものではないと判別した場合には、前記出力画像データ生成手段により生成された出力画像データをそのまま出力する画像出力手段と、を備えたことを特徴とする。
【００２０】
請求項４記載の発明は、コンピュータを、入力画像データに対して所定の符号化により生成された第１の画像符号化データ、又は入力画像データを回転若しくは転置した後の回転・転置後入力画像データに対して前記所定の符号化により生成された第２の画像符号化データが入力される、符号データ入力手段と、前記符号データ入力手段からの画像符号化データに対して所定の復号化により出力画像データを生成する出力画像データ生成手段と、前記符号データ入力手段が入力した画像符号化データが前記回転又は転置が行われたものであるか否かについて判別する回転・転置判別手段と、前記回転・転置判別手段が前記回転又は転置が行われたものであると判別した場合に、前記出力画像データ生成手段により生成された出力画像データを前記回転又は転置が行われる前の状態に戻すための逆回転又は再転置を行い、逆回転又は再転置処理後の画像データを出力し、前記回転・転置判別手段が回転又は転置が行われたものではないと判別した場合には、前記出力画像データ生成手段により生成された出力画像データをそのまま出力する画像出力手段と、して機能させるためのものであることを特徴とする。
【００２１】
【発明の実施の形態】
図１は、本発明の実施形態に係る画像符号化装置の構成を示すブロック図であり、画像入力手段１、ボディデータ生成手段２、ヘッダ生成手段９、符号データ出力手段１０、入力画像回転・転置手段１１、及び符号量比較手段１２を備えている。この図１の構成は、図１０の従来装置の構成に入力画像回転・転置手段１１、及び符号量比較手段１２を追加したものである。
【００２２】
すなわち、入力画像回転・転置手段１１は、画像入力手段１からの入力画像データに対して、９０°若しくは−９０°の回転又は転置を行い、この回転又は転置を行った後の入力画像データ（本明細書では、これを「回転・転置後入力画像データ」と呼ぶ）を画像符号化データ生成手段であるボディデータ生成手段２に出力するようになっている。
【００２３】
ボディデータ生成手段２は、画像入力手段１から直接入力した入力画像データに対してＪＰＥＧ２０００に基づく符号化を行って第１のボディデータ（画像符号化データ）を生成すると共に、画像入力手段１から入力画像回転・転置手段１１を介して入力した回転・転置後入力画像データに対してＪＰＥＧ２０００に基づく符号化を行って第２のボディデータ（画像符号化データ）を生成するようになっている。
【００２４】
符号量比較手段１２は、ボディデータ生成手段２が生成した第１のボディデータの符号量と第２のボディデータの符号量とを比較し、いずれが符号量の小さな方であるかについて判別を行うようになっている。そして、符号データ出力手段１０は、第１のボディデータ又は第２のボディデータのうち、符号量比較手段１２が小さな方の符号量であると判別したボディデータを有する符号データを出力するようになっている。
【００２５】
ここで、入力画像回転・転置手段１１が行う「回転」及び「転置」の概念を図２乃至図５に基づき説明する。図２は、画素数が３×３の画像データの回転についての説明図であり、（ａ）は回転前の状態、（ｂ）は（ａ）の状態から画像データを−９０°（反時計回り方向へ９０°）だけ回転させた後の状態を示している。いま、（ａ）がインターレース画像のように垂直方向への相関性が低く水平方向への相関性が高い画像であるとすると、第１行（すなわち水平方向）に配列された画素データＤ１，Ｄ２，Ｄ３が相互に相関性が高いデータである。そして、（ｂ）では−９０°の回転により第１列（すなわち垂直方向）に相互に相関性の高い画素データＤ３，Ｄ２，Ｄ１が配列された状態になっている。図１２（ａ）において既述したように、ＪＰＥＧ２０００の走査方向は垂直方向を基調とするものであるから、図２（ａ）の状態では効率的な符号化を行うことはできないが、図２（ｂ）の状態であれば、相互に相関性の高い画素データＤ３，Ｄ２，Ｄ１の配列順序に従って走査することになるので効率的な符号化を行うことができるようになる。
【００２６】
図３は、画素数が３×３の画像データの転置についての説明図であり、（ａ）は転置前の状態、（ｂ）は（ａ）の状態から画像データを転置（各画素データにつき行と列とを入れ換えること）した後の状態を示している。いま、（ａ）がインターレース画像のように垂直方向への相関性が低く水平方向への相関性が高い画像であるとすると、第１行（すなわち水平方向）に配列された画素データＤ１，Ｄ２，Ｄ３が相互に相関性が高いデータである。そして、（ｂ）では転置により第１列（すなわち垂直方向）に相互に相関性の高い画素データＤ１，Ｄ２，Ｄ３が配列された状態になっている。したがって、この場合も図２（ｂ）の場合と同様に、相互に相関性の高い画素データＤ１，Ｄ２，Ｄ３の配列順序に従って走査されるので効率的な符号化を行うことができるようになる。
【００２７】
図４は、画素数が３×４の画像データの回転についての説明図であり、（ａ）は回転前の状態、（ｂ）は（ａ）の状態から画像データを−９０°だけ回転させた後の状態を示している。いま、（ａ）がインターレース画像のように垂直方向への相関性が低く水平方向への相関性が高い画像であるとすると、第１行に配列された画素データＤ１，Ｄ２，Ｄ３，Ｄ４が相互に相関性が高いデータである。そして、（ｂ）では−９０°の回転により第１列に相互に相関性の高い画素データＤ４，Ｄ３，Ｄ２，Ｄ１が配列された状態になっている。したがって、図４（ａ）の状態では効率的な符号化を行うことはできないが、図４（ｂ）の状態であれば、相互に相関性の高い画素データＤ４，Ｄ３，Ｄ２，Ｄ１の配列順序に従って走査することになるので効率的な符号化を行うことができるようになる。
【００２８】
図５は、画素数が３×４の画像データの転置についての説明図であり、（ａ）は転置前の状態、（ｂ）は（ａ）の状態から画像データを転置した後の状態を示している。いま、（ａ）がインターレース画像のように垂直方向への相関性が低く水平方向への相関性が高い画像であるとすると、第１行に配列された画素データＤ１，Ｄ２，Ｄ３，Ｄ４が相互に相関性が高いデータである。そして、（ｂ）では転置により第１列に相互に相関性の高い画素データＤ１，Ｄ２，Ｄ３，Ｄ４が配列された状態になっている。したがって、この場合も図４（ｂ）の場合と同様に、相互に相関性の高い画素データＤ１，Ｄ２，Ｄ３，Ｄ４の配列順序に従って走査されるので効率的な符号化を行うことができるようになる。
【００２９】
また、ヘッダ生成手段９は、図１０において既述したように、ウェーブレット係数のビット数、ゼロビットプレーン数、処理パス数等のヘッダ情報を生成するものであるが、本実施形態では、更に、上述した入力画像データの回転又は転置が行われたか否かについての情報すなわち画像回転・転置情報もこのヘッダ情報として生成されるようになっている。
【００３０】
図６は、上記の画像回転・転置情報のデータ格納位置を示す説明図である。ヘッダ生成手段９は、メインヘッダ１４中に生成した上記の他のヘッダ情報と共に画像回転・転置情報１６を格納し、ボディデータ生成手段２が生成したボディデータ（画像符号化データ）１５にメインヘッダ１４を付加する。符号データ出力手段１０は、このメインヘッダ１４及びボディデータ１５を符号データ１３として出力することになる。
【００３１】
上記の画像回転・転置情報１６は、ボディデータ１５を復号化し再生画像を得る際に必要となる場合があるために生成されるものである。つまり、もし符号化時に入力画像データを回転又は転置していたのであれば、復号化時には得られた再生画像データに対して今度は逆方向の回転又は再転置を行って、再生画像データの画面の向きを原画像の画面の向きと同じにしてやる必要がある。この場合、入力画像データの画面サイズは、通常、横及び縦の寸法が異なるため（例えば、４８０×７２０）、復号化を行うにあたり、符号化時に画像に対して回転又は転置が行われていたか否かについては、画面サイズの横及び縦の寸法が入れ替わっているかどうかを判別することにより知ることができる。したがって、復号化装置側では、通常、ボディデータに画像回転・転置情報が付加されていなくても、復号化により得られた再生画像に対して逆回転又は再転置が必要であるか否かを簡単に知ることができる。しかし、入力画像データの画面が正方形である場合や、入力画像データの画面のサイズがそれまでに拡大や縮小の結果、特殊なサイズとなっているような場合は、横及び縦の寸法の入れ替わりを判別するだけでは、符号化時に回転又は転置が行われていたか否かを知ることができなくなる。本実施形態では、このような場合を考慮して、ヘッダ生成手段９が画像回転・転置情報１６を生成する構成としている。
【００３２】
次に、図１の動作を図７のフローチャートに基づき説明する。画像入力手段１は、原画像のデータを入力し（ステップ７１）、これをボディデータ生成手段２及び入力画像回転・転置手段１１に出力する。入力画像回転・転置手段１１は、画像入力手段１からの入力画像データを回転又は転置させ、その回転・転置後入力画像データをボディデータ生成手段２に出力する。
【００３３】
ボディデータ生成手段２は、画像入力手段１から入力した入力画像データに対してＪＰＥＧ２０００の規格に基づく符号化を行い、第１のボディデータを生成すると共にその符号量Ｑ１を演算する（ステップ７２）。ボディデータ生成手段２は、更に、入力画像回転・転置手段１１から入力した回転・転置後入力画像データに対してもＪＰＥＧ２０００の規格に基づく符号化を行い、第２のボディデータを生成すると共にその符号量Ｑ２を演算する（ステップ７３）。
【００３４】
ヘッダ生成手段９は、第１のボディデータには画像回転・転置情報が含まれないヘッダ情報を付加し、また、第２のボディデータには画像回転・転置情報が含まれているヘッダ情報を付加して、これらを符号データ出力手段１０に出力する。
【００３５】
符号量比較手段１２は、符号量Ｑ１，Ｑ２の大小関係を判別し（ステップ７４）、その判別結果を符号データ出力手段１０に出力する。そして、符号データ出力手段１０は、符号量Ｑ２の方が符号量Ｑ１よりも小さい場合には、第２のボディデータを有する符号データの方を出力し（ステップ７５）、一方、符号量Ｑ１の方が符号量Ｑ２よりも小さい場合、又は等しい場合には、第１のボディデータを有する符号データの方を出力する（ステップ７６）。
【００３６】
上述した実施形態では、入力画像データをそのまま符号化した第１のボディデータと、入力画像データを回転又は転置した後に符号化した第２のボディデータとの双方を生成しておき、符号量の小さな方を出力する構成としている。したがって、もし入力画像がインターレース画像のように垂直方向への相関性が低い画像であったとしても、符号化の際の圧縮効率を充分に向上させることができる。
【００３７】
図８は、上述した図１の画像符号化装置により得られた符号データに対して復号化を行うのに適した、本発明の実施形態に係る画像復号化装置の構成を示すブロック図である。この装置は、符号データ入力手段１７、ヘッダ解析手段１８、出力画像データ生成手段１９、回転・転置判別手段２５、及び画像逆回転・再転置手段２６を有する画像出力手段２７を備えている。回転・転置判別手段２５は、符号データ入力手段１７が入力した符号データのボディデータについて、符号化時に回転又は転置が行われたものであるか否かをヘッダ解析手段１８の解析結果に基づいて、あるいは入力画像データの画面サイズの横及び縦の寸法が入れ替わっているかどうかの検出に基づいて判別するものである。画像逆回転・再転置手段２６は、回転・転置判別手段２５が符号化時に回転又は転置が行われたものであると判別した場合、出力画像データ生成手段１９により生成された出力画像データを回転又は転置が行われる前の状態に戻すための逆回転又は再転置を行うものである。画像出力手段２７は、この画像逆回転・再転置手段２６の機能により逆回転又は再転置が行われた出力画像、あるいは逆回転又は再転置が行われなかった出力画像を出力するものである。
【００３８】
出力画像データ生成手段１９は、エントロピー復号化手段、スカラ逆量子化手段２１、逆ウェーブレット変換手段２２、カラー変換手段２３、及びＤＣレベルシフト手段２４を有している。これらのうち、スカラ逆量子化手段２１、カラー変換手段２３、ＤＣレベルシフト手段２４は、ＪＰＥＧ２０００においてはオプションとして備えられたものである。ＪＰＥＧ２０００では、その他にもオプションとして備えられたものがあるが、本発明の技術とは直接的な関連性がないか、あっても重要度が低いため説明を省略している。
【００３９】
エントロピ復号化手段２０は、ヘッダ解析手段１８の解析結果を用いて、圧縮符号化された画像データのエントロピ復号化を行い、出力されるビット列からスカラ量子化した係数列を作成するものである。
【００４０】
スカラ逆量子化手段２１は、ヘッダ解析手段１８で解析されたメインヘッダにより指定された量子化スタイルに基づき、エントロピ復号化手段２０で作成された係数列をＪＰＥＧ２０００の規格にある所定の計算式で逆量子化し、ウェーブレット係数を生成するものである。なお、符号化時にはウェーブレット変換により生成されたウェーブレット係数は必ずしもスカラ量子化されるとは限らず、その場合にはスカラ逆量子化手段２１による逆量子化は行われないことになる。
【００４１】
逆ウェーブレット変換手段２２は、スカラ逆量子化手段２１で得られたウェーブレット係数をメインヘッダで指定された符号化スタイルの分解数に基づき逆ウェーブレット変換を行い、ＹＵＶカラー空間の画像データを作成するものである。
【００４２】
カラー変換手段２３は、逆ウェーブレット変換手段２２で得られた画像データをヘッダ解析手段１８の解析結果にしたがってＹＵＶ成分からＲＧＢ成分へカラー変換するものである。但し、モノクロ画像の符号データや、符号化時にカラー変換を行わなかった場合、カラー変換手段２３７は動作しないようになっている。
【００４３】
ＤＣレベルシフト手段２４は、カラー変換手段２３で得られたＲＧＢ成分の各値のＤＣレベルをシフトするものである。ＤＣレベルシフトとは、符号化時にダイナミックレンジが値０を中心とするようにシフトすることであり、復号化時にはそれを元に戻すことである。ＤＣレベルシフトを行う理由は、周波数変換後の係数は正負の符号と絶対値とに分けられて符号化されるため、ゼロ値を基準としてデータ配置されている方が符号化効率が高くなるからである。
【００４４】
次に、図８の動作を図９のフローチャートに基づき説明する。図１の画像符号化装置によりＪＰＥＧ２０００の規格にしたがって圧縮符号化された画像データすなわちボディデータは、ファイルシステムやネットワーク手段を用いて符号データ入力手段１７によって入力される（ステップ９１）。この入力されるボディデータは、図１において既述したように、入力画像データをそのまま符号化した第１のボディデータ、又は回転・転置後入力画像データを符号化した第２のボディデータのうち符号量の小さな方である。
【００４５】
このボディデータには、メインヘッダが付されており、ヘッダ解析手段１８はこれらのヘッダを読み込み、解析する。ここで、メインヘッダには、画像の大きさ、タイルの大きさ、画像位置のオフセット、タイル位置のオフセット、１画素あたりのサンプルビット数、ＲＧＢなどのコンポーネント数等についての情報が格納され、更に既述した画像回転・転置情報も格納されている。
【００４６】
出力画像データ生成手段１９は、ヘッダ解析手段１８の解析結果を参照しつつ、符号データ入力手段１７からの符号データのボディデータに対してＪＰＥＧ２０００の規格に基づく復号化を行い（ステップ９２）、生成した出力画像データを画像逆回転・再転置手段２６に出力する。
【００４７】
回転・転置判別手段２５は、符号データ入力手段１７が入力した符号データのボディデータについて、符号化時に回転又は転置が行われたものであるか否かをヘッダ解析手段１８の解析結果に基づいて、あるいは入力画像データの画面サイズの横及び縦の寸法が入れ替わっているかどうかの検出に基づいて判別し（ステップ９３）、その判別結果を画像逆回転・再転置手段２６に出力する。
【００４８】
回転・転置判別手段２５が符号化時に回転又は転置が行われたものであると判別した場合、画像逆回転・再転置手段２６は、出力画像データ生成手段１９により生成された出力画像データを回転又は転置が行われる前の状態に戻すための逆回転又は再転置を行い（ステップ９４）、この逆回転又は再転置が行われた出力画像データを画像出力手段２７に出力する。一方、回転・転置判別手段２５が符号化時に回転又は転置が行われなかったたものであると判別した場合、画像逆回転・再転置手段２６は、出力画像データ生成手段１９により生成された出力画像データを、何もせずにそのまま、画像出力手段２７に出力する。
【００４９】
そして、画像出力手段２７は、画像逆回転・再転置手段２６により逆回転又は再転置が行われた出力画像、あるいは逆回転又は再転置が行われなかった出力画像の出力を行う（ステップ９５）。
【００５０】
なお、本発明は、上述した画像符号化装置及び画像復号化装置の機能をコンピュータに実現させるためのプログラムを含むものである。これらのプログラムは、記録媒体から読み取られてコンピュータに取り込まれてもよいし、通信ネットワークを介して伝送されてコンピュータに取り込まれてもよい。
【００５１】
また、上記実施形態では、ＪＰＥＧ２０００の規格に基づく符号化を行うものについて説明したが、本発明は、入力画像に対して回転又は転置を行うことにより圧縮効率の改善が見込める、他の符号化方式を使用するものへも当然適用可能である。
【００５２】
【発明の効果】
以上のように、本発明によれば、インターレース画像のような垂直方向への相関性が低い画像を符号化する際に、従来に比べて圧縮効率を充分に向上させることが可能な画像符号化装置及び画像符号化プログラムを提供し、更に、これらにより生成された符号データを復号化するのに好適な画像復号化プログラムを提供することができる。
【図面の簡単な説明】
【図１】本発明の実施形態に係る画像符号化装置の構成を示すブロック図。
【図２】図１における入力画像回転・転置手段１１が行う、画素数が３×３の画像データの「回転」の概念についての説明図であり、（ａ）は回転前の状態、（ｂ）は回転後の状態を示している。
【図３】図１における入力画像回転・転置手段１１が行う、画素数が３×３の画像データの「転置」の概念についての説明図であり、（ａ）は転置前の状態、（ｂ）は転置後の状態を示している。
【図４】図１における入力画像回転・転置手段１１が行う、画素数が３×４の画像データの「回転」の概念についての説明図であり、（ａ）は回転前の状態、（ｂ）は回転後の状態を示している。
【図５】図１における入力画像回転・転置手段１１が行う、画素数が３×４の画像データの「転置」の概念についての説明図であり、（ａ）は転置前の状態、（ｂ）は転置後の状態を示している。
【図６】図１におけるヘッダ生成手段９が生成した画像回転・転置情報のデータ格納位置を示す説明図。
【図７】図１の動作を説明するためのフローチャート。
【図８】本発明の実施形態に係る画像復号化装置の構成を示すブロック図。
【図９】図８の動作を説明するためのフローチャート。
【図１０】従来の画像符号化装置の構成を示すブロック図。
【図１１】インターレース画像についての説明図。
【図１２】符号化時の走査方向についての説明図であり、（ａ）はＪＰＥＧ２０００特有の走査方向を示し、（ｂ）は別の走査方向を示している。
【符号の説明】
１  画像入力手段
２  ボディデータ生成手段（画像符号化データ生成手段）
３  ＤＣレベルシフト手段
４  カラー変換手段
５  ウェーブレット変換手段
６  スカラ量子化手段
７  係数ビットモデリング手段
８  エントロピー符号化手段
９  ヘッダ生成手段
１０  符号データ出力手段
１１  入力画像回転・転置手段
１２  符号量比較手段
１３  符号データ
１４  メインヘッダ
１５  ボディデータ（画像符号化データ）
１６  画像回転・転置情報
１７  符号データ入力手段
１８  ヘッダ解析手段
１９  出力画像データ生成手段
２０  エントロピー復号化手段
２１  スカラ逆量子化手段
２２  逆ウェーブレット変換手段
２３  カラー変換手段
２４  ＤＣレベルシフト手段
２５  回転・転置判別手段
２６  画像逆回転・再転置手段
２７  画像出力手段
ＣＢ  コードブロック
Ｐ  対象物画像
Ｌ１  トップフィールド側ライン
Ｌ２  ボトムフィールド側ライン
Ｄ１〜Ｄ１２  画素データ
【図１】
2005026729.tif 000003
【図２】
2005026729.tif 000004
【図３】
2005026729.tif 000005
【図４】
2005026729.tif 000006
【図５】
2005026729.tif 000007
【図６】
2005026729.tif 000008
【図７】
2005026729.tif 000009
【図８】
2005026729.tif 000010
【図９】
2005026729.tif 000011
【図１０】
2005026729.tif 000012
【図１１】
2005026729.tif 000013
【図１２】
2005026729.tif 000014