(57)【要約】      （修正有）【課題】画素にノイズが多く含まれる環境下でのロスレス符号化方式の圧縮率を高める。【解決手段】ランレングス符号化モードと、重み付け予測符号化モードと、それ以外の符号化モードを持ち、符号化モードの判定において符号化対象画素の周囲画素が含むノイズ量を判別し、ノイズ量に応じて符号化モードを適切に切り換え、ノイズ量は、周囲画素の分散、あるいは周波数変換後の係数の絶対値和を用いて測定する画像符号化方式を用いる。【選択図】図１
2013062752.tif 000002
【特許請求の範囲】
【請求項１】
複数の符号化モードの中から決定された符号化モードを利用して画像を符号化する画像符号化方法であって、
前記複数の符号化モードとして、ランレングス符号化を含む第１モードと、重み付け予測符号化を含む第２モードと、それ以外の符号化を行う第３モードを備え、
前記画像の符号化の際に利用する符号化モードは、
符号化対象画素の周囲にある画素が含むノイズ量を測定し、
ノイズ量の差が一定以下の画素が連続する場合には第１モードを利用し、
第１モードを利用しない場合、ノイズ量の差が一定以下の場合には第２モードを利用し、
さらに、第１モード及び第２モードを利用しない場合、第３のモードを利用することを特徴とする画像符号化方法。
【請求項２】
請求項１において、
前記第３モードは、符号化対象画素に対して指定された画素の画素値を用いて予測することを特徴とする画像符号化方法。
【請求項３】
請求項１において、
前記モード判定部は、周囲画素の分散値、あるいは周波数変換後の係数の絶対値和を用いノイズ量を測定することを特徴とする画像符号化方法。
【請求項４】
請求項１において、
前記第２モードとして、機械学習方式、あるいは最小二乗法による方式を用いて重み付けパラメータの最適化を行う方式を用いることを特徴とする画像符号化方法。
【請求項５】
請求項１において、
前記第１モード乃至第３モードのいずれかの符号化を行った後、エントロピー符号化を行い、そのエントロピー符号化方式として算術符号化、あるいはレンジコーダを用いた符号化方式を用いることを特徴とする画像符号化方法。
【請求項６】
複数の復号モードの中から決定された復号モードを利用して画像を復号する画像復号方法であって、
前記複数の復号モードとして、ランレングス復号を含む第１モードと、重み付け予測復号を含む第２モードと、それ以外の復号を行う第３モードを備え、
復号対象画素がどのモードで復号するかを判定するステップを備え、
前記判定ステップは、
複合化対象画素の周囲にある画素が含むノイズ量を測定し、
ノイズ量の差が一定以下の画素が連続する場合には第１モードを利用し、
第１モードを利用しない場合、ノイズ量の差が一定以下の場合には第２モードを利用し、
さらに、第１モード及び第２モードを利用しない場合、第３のモードを利用することを特徴とする画像復号方法。
【請求項７】
請求項６において、
前記第３モードは、復号対象画素に対して指定された画素の画素値を用いて予測することを特徴とする画像復号方法。
【請求項８】
請求項６において、
モードを判定するステップにおけるノイズ量の判別方式として、周囲画素の分散値、あるいは周波数変換後の係数の絶対値和を用いることを特徴とする画像復号方法。
【請求項９】
請求項６において、
前記重み付け予測復号モードとして、機械学習方式、あるいは最小二乗法による方式を用いて重み付けパラメータの最適化を行う方式を用いることを特徴とする画像復号方法。
【請求項１０】
請求項６において、
エントロピー復号を行うステップとして算術符号化、あるいはレンジコーダを用いた符号化方式を復号する方式を用いることを特徴とする画像復号方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロスレス画像符号化技術に関する。
【背景技術】
【０００２】
画像符号化技術は、ロスレスとロッシーに分類される。ロスレス画像符号化技術は、医療用画像など、オリジナルデータの保存が必要な場合に利用されている。たとえば、医療用画像はDICOM(Digital Imaging and COmmunication in Medicine)と呼ばれる規格方式に従ってデジタルデータ化して記録される。具体的には、ロスレス圧縮方式であるJPEG-LS規格(ISO-14495-1 / ITU-T T.87)等が用いられている。
【０００３】
このようなロスレス画像符号化技術では、符号化対象画面内の対象画素に隣接する画素を用いて画素予測を行うことによって圧縮率を高めている。効率的に予測を行うための手法として、最小二乗法を用いて重みを学習する方式が特許文献１に開示されている。また、これをマルチスライス画像に用いる方式も特許文献２に開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開2007-49594
【特許文献２】特開2007-295170
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、従来の重みを学習する方式では、ノイズが多く含まれるために、画素予測のための重みパラメータが適切に設定されずに、圧縮率が低かった。
【０００６】
本発明は、上記課題に鑑みて為されたものであり、その目的はロスレス画像符号化における圧縮率を高めることにある。
【課題を解決するための手段】
【０００７】
上記目的を達成する手段を本願は複数含むものであるが、その代表的な発明は次の通りである。
【０００８】
複数の符号化モードの中から決定された符号化モードを利用して画像を符号化する画像符号化方法であって、
前記複数の符号化モードとして、ランレングス符号化を含む第１モードと、重み付け予測符号化を含む第２モードと、それ以外の符号化を行う第３モードを備え、
前記画像の符号化の際に利用する符号化モードは、
符号化対象画素の周囲にある画素が含むノイズ量を測定し、
ノイズ量の差が一定以下の画素が連続する場合には第１モードを利用し、
第１モードを利用しない場合、ノイズ量の差が一定以下の場合には第２モードを利用し、
さらに、第１モード及び第２モードを利用しない場合、第３のモードを利用することを特徴とする画像符号化方法。
【発明の効果】
【０００９】
本発明によれば、ロスレス画像符号化の圧縮率を向上することができる。
【図面の簡単な説明】
【００１０】
【図１】画像符号化装置のブロック図である。
【図２】画像復号装置のブロック図である。
【図３】画素予測方式の説明図である。
【図４】画像符号化方法のフロー図である。
【図５】画像復号方法のフロー図である。
【図６】画像符号化モードの判定フロー図である。
【発明を実施するための形態】
【００１１】
以下、マルチスライス型医療用機器で撮像されたモノクロ画像が入力される場合を例に、本発明のロスレス符号化について説明するが、非医療用機器で撮像された画像や、マルチスライス撮像でない画像、カラー画像でも本発明が適用できる。カラー画像に適用する場合、各フレームについて同様の処理を行う。
【実施例１】
【００１２】
図１に画像符号化装置のブロック図を示す。画像符号化装置１００は、入力画像を保持する入力画像バッファ１０１と、参照画像を保持する参照画像バッファ１０２と、画素の予測方式を決定するモード判定部１０３と、予測パラメータを学習する予測パラメータ学習部１０４と、パラメータを出力するパラメータ出力部１０５と、画素の重み付け予測を行う重み付け予測部１０６と、予測値の補正を行う第一のコンテキスト処理部１０７と、エントロピー符号化のための確率分布を取得する第一の確率分布調整部１０８と、エントロピー符号化を行う第一のエントロピー符号化部１０９と、画素指定による予測を行う画素指定予測部１１０と、予測値の補正を行う第二のコンテキスト処理部１１１と、エントロピー符号化のための確率分布を取得する第二の確率分布調整部１１２と、エントロピー符号化を行う第二のエントロピー符号化部１０９と、ラン長を計測するラン長計測部１１４と、エントロピー符号化を行う第三のエントロピー符号化部１１５を備える。
【００１３】
入力画像バッファ１０１は、符号化する対象画像を保持するバッファである。以下では画素単位でラスタスキャン順に符号化する処理を例に挙げて説明するが、ブロック単位で処理してもよく、また順序も逆ラスタスキャン順、あるいはヒルベルトスキャン順などを用いてもよい。対象画像の符号化後、画像を参照画像バッファ１０２に送り保持する。
【００１４】
参照画像バッファ１０２は、参照画像を保持するバッファである。対象画像の符号化後に、入力画像バッファ１０１から画像を受け取り保持する。参照画像は１枚でも複数枚でもよい。
【００１５】
モード判定部１０３は入力画像の画素を順番に取りだし符号化していく手順において、その画素をどのモードで符号化すべきかを判定する。符号化モードの候補には、以下のものが含まれる。
【００１６】
一つ目は、重み付け予測モードである。これは符号化対象画素の予測値を複数の周辺画素の画素値の重み付け和として求める方式である。周辺画素の画素値に対する重み付けパラメータは予め定めておいてもよいし、機械学習を用いて求めてもよい。以下では機械学習を用いて最適化したパラメータを求める方式を例に挙げて説明する。
【００１７】
二つ目は、画素指定予測モードである。これは符号化対象画素の予測値を複数の周辺画素の候補の中から一つ選ぶ方式である。例えば、対象画素の左隣の画素の画素値又は対象画素の上隣の画素の画素値を選択する。選択方法は周辺画素の画素値を入力とした一定の式に当てはめて決めてもよいし、対象画素に一番近い値を持つ画素をフラグで指定してもよい。フラグで指定する場合、例えば左隣は0、上隣は1というような信号を予め決めておく。以下ではフラグで指定する方法を例に挙げて説明する。
【００１８】
三つ目のモードはランモードである。これは対象画素に同じ値が連続する場合に、連続する数（ラン長）を計測して記録するモードである。ラン長の符号化方式にはゴロム・ライス符号やハフマン符号を用いればよい。
【００１９】
モード判定部１０３において複数のモードの中から対象画素を符号化するのに最も適切な符号化モードを判定する方法の一例について説明する。上記の符号化モードは、それぞれ画像の特徴に応じて圧縮効率の特性が異なる。例えば、重み付け予測モードは他の符号化モードと比較して、ノイズの少ない予測の容易な画像領域に対する圧縮率が高い。一方で、画素指定予測モードは、ノイズの少ない領域の圧縮率は低いがノイズの多い領域の圧縮率が高い。ランモードは同じ値が連続する場合にのみ高い圧縮率を発揮する。従って、符号化対象画素の周囲のノイズが多いか少ないか、同じ値が連続しているか否かを判別してモードを決定すればよい。まず、同じ値が連続していればランモードを選択し、そうでなければそれ以外のモードとする。次に画像領域のノイズ量を判定し、ノイズが一定値より大きければ画素指定予測モードを選択し、小さければ重み付け予測モードを選択すればよい。
【００２０】
ノイズ量の判定には画素の分散値を用いればよい。例えば、判定に用いる周辺画素をXiとし、これらの平均をmとした時、式１によって計算できる。
【００２１】
【数１】
2013062752.tif 000003
分散値以外にも周辺画素の値をWavelet変換して係数の和を取る、あるいはDCT変換しDC値以外の係数の和を取る、のような方法によってもノイズ量は判定できる。なお、周辺画素は予め領域を決めておいてもよいし、画素毎に領域を変更してもよい。領域を選択する際には、符号化対象画素と異なる画像領域（前景か背景か）の画素が含まれないように、エッジ等を判別して画素を選択してもよい。
【００２２】
上記では周辺画素のノイズ量を計算し予め設定した閾値を超えるか否かによって自動的に判別する例を説明したが、符号化モードをフラグによって明示的に伝送してもよい。自動的に判別する場合にはフラグの情報量を削減できるというメリットがあり、フラグによって示す場合には正確にモードを判別できるというメリットがある。またフラグによって示す場合、ロスレス符号化ではどの符号化モードの符号量が最も小さくなるかによって判別すればよい。ロッシー符号化では、Rate-Distortion最適化法等を用いて、符号量と誤差（原画像と復号画像の差）を考慮して決定すればよい。
【００２３】
予測パラメータ学習部１０４は、重み付け予測モードにおける予測パラメータを機械学習によって最適化する。以下では画像１枚毎にパラメータを最適化する例を挙げて説明するが、複数枚毎に最適化してもよいし、１枚の画像の一部領域を単位として最適化してもよい。学習の方法には、最小二乗法（線形回帰）、Support Vector Machine、AdaBoost等があるが、以下では最小二乗法を例に説明する。
【００２４】
図３に重み付け予測モードにおける予測方法の概要を示す。以下では符号化対象フレームの符号化済み画素と、マルチスライス画像の符号化を想定して１つ前のフレームの符号化済み画素を参照する例について説明する。参照画像を用いずに符号化フレームの画素のみを用いてもよい。符号化対象画像の予測値をXとし、符号化フレームの周辺画素をA,B,C,D、１つ前のフレームの周辺画素をS,P,Qとする。Aは符号化対象画素の左、Bは上、Cは左上、Dは右上、Sは１つ前のフレームの同じ位置、Pは１つ前のフレームの左、Qは１つ前のフレームの上の位置の画素である。A〜Qの画素値に対する重みをw0j〜w6jとすると、Xは式２によって求めることができる。
【００２５】
Ｘ=w0j・A+w1j・B+w2j・C+w3j・D+w4j・S+w5j・P+w6j・Q  …  式２
式２の予測式はjによって場合分けされる。これは画素の条件によって最適な予測パラメータが異なるためである。j=0〜2の３つとし、画素毎に場合分けする。各画素において、|C-A|、|C-B|、|P-A|、|Q-B|の最小値を求め、|C-A|が最小の場合にはj=0、|C-B|が最小の場合にはj=1、それ以外が最小の場合にはj=2として画像全体でパラメータを学習する。学習方法には最小二乗法を用いる。これにより重み付けパラメータはj=0〜2について各７つ、合計２１個の重みが求められ、これは付加情報として伝送される。
【００２６】
パラメータ出力部１０５は予測パラメータ学習部１０４において求められた重み付けパラメータを符号化ストリームに出力する。
【００２７】
重み付け予測部１０６は、予測パラメータ学習部１０４において設定された重み付けパラメータを用いて、式２によって符号化対象画素の予測値を計算し、符号化対象画素との差分を取る。
【００２８】
第一のコンテキスト処理部１０７は重み付け予測モードにおけるコンテキスト処理による補正を行う。コンテキスト処理はJPEG-LS方式に用いられるような一般的な手法を用いればよい。これは周辺画素の値や差分値の出現頻度を手掛かりとして、重み付け予測部１０６において計算された差分値を補正する処理である。
【００２９】
第一の確率分布調整部１０８は補正された差分値の出現頻度を記録し、エントロピー符号化のための確率分布を作成する。エントロピー符号化方式にはゴロム・ライス符号、ハフマン符号、算術符号、算術符号の一種であるレンジコーダによる符号等を用いることができる。算術符号やレンジコーダによる符号では、適切な確率分布を設定する必要がある。確率分布の設定方法としては、符号化開始時には適当な分布を定めておき、符号化を進めるにつれてこれを修正し、徐々に画像に適した形に設定していく方法と、一旦画像全体について符号化する値の出現頻度を調べ、これを確率分布として設定する方法がある。後者では確率分布に関する情報をストリームに付加して伝送する必要がある。またマルチスライス画像の処理では、連続するフレーム間の確率分布は近い形になる場合が多いので、１つ前のフレームの確率分布を設定することも有効である。この方式では最初の１枚以外では確率分布をストリームに付加する必要がない。１つ前のフレームの確率分布を現フレームに適用するためには、数値の出現範囲が現フレームと一致するように拡大または縮小する処理と、符号化されない数値が出ないように１つ前のフレームの確率分布において頻度数が０であった数値を適当な頻度数に変換する（例えば一番近い０でない頻度数をコピーする）必要がある。従って、各フレームの符号化時に出現する数値の最大値と最小値が分かっていればよく、これらの値をストリームに出力する。以下では、エントロピー符号化方式としてレンジコーダを用い、設定する確率分布は１つ前のフレームの確率分布を利用する場合を例に挙げて説明する。第一の確率分布調整部１０８は１つ前のフレームの確率分布を保持し、これをレンジコーダによるエントロピー符号化に用いる。また同時に現在のフレームの補正された差分値の出現頻度を記録し、次のフレームの符号化のために保持する。
【００３０】
第一のエントロピー符号化部１０９は、第一の確率分布調整部１０８の保持する確率分布を利用して第一のコンテキスト処理部１０７の出力する補正された差分値をエントロピー符号化する。エントロピー符号化方式にはゴロム・ライス符号、ハフマン符号、算術符号、算術符号の一種であるレンジコーダによる符号等を用いることができる。レンジコーダはバイト単位で符号化データをストリームに出力する。これは一般的なレンジコーダのアルゴリズムを用いればよい。
【００３１】
画素指定予測部１１０は画素を指定することにより符号化対象画素の予測値を決定する。例えば、対象画素に一番近い値を持つ画素をフラグで指定する。左隣は0、上は1というような信号を予め決めておき、フラグで伝送すればよい。またJPEG-LSのように、予め設定した一定の式を用いて予測する画素を判別してもよい。この場合にはフラグを伝送する必要はない。決定した予測値を用いて符号化対象画素との差分を取る。
【００３２】
第二のコンテキスト予測部１１１は画素指定予測モードにおけるコンテキスト処理による補正を行う。これは第一のコンテキスト予測部１０７と同様の処理であり、画素指定予測部１１０において計算された差分値を補正する処理である。
【００３３】
第二の確率分布調整部１１２は補正された差分値の出現頻度を記録し、エントロピー符号化のための確率分布を作成する。これは第一の確率分布調整部１０８と同様の処理であり、第二のエントロピー符号化部１１３のための確率分布を保持する。
【００３４】
第二のエントロピー符号化部１１３は、第二の確率分布調整部１１２の保持する確率分布を利用して第二のコンテキスト処理部１１１の出力する補正された差分値をエントロピー符号化する。これは第一のエントロピー符号化部１０９と同様の処理である。
【００３５】
ラン長計測部１１４は、ランモードにおいて同じ値が連続する画素の数を計測する。この値（ラン長）を第三のエントロピー符号化部１１５に渡す。
【００３６】
第三のエントロピー符号化部１１５はラン長計測部１１４にて取得されたラン長をエントロピー符号化する。ラン長の符号化方式にはゴロム・ライス符号やハフマン符号を用いればよい。
【００３７】
予測パラメータの学習や確率分布の調整は、まず画面全体についてこれらの値を調べ、その後で符号化に用いてもよいし、予め一定の値を設定し、順に符号化していくと同時にこれらの値をアップデートしてもよい。上記のような処理がラスタスキャン順に入力画像の各画素に対して行われ、入力画像が符号化され効率的に圧縮される。
【００３８】
図２は画像復号装置のブロック図である。画像復号装置２００は、ストリームを分離するデータ分離部２０１と、画素の予測方式を決定するモード判定部２０２と、エントロピー符号の復号を行う第一のエントロピー復号部２０３と、予測値の補正を行う第一のコンテキスト処理部２０４と、重み付け予測のパラメータを設定するパラメータ設定部２０５と、重み付け予測を行って画素を再構成する重み付け予測合成部２０６と、復号画像を保持する復号画像バッファ２０７と、エントロピー符号の復号のための確率分布を保持する確率分布設定部２０８と、参照画像を保持する参照画像バッファ２０９と、エントロピー符号の復号を行う第二のエントロピー復号部２１０と、予測値の補正を行う第二のコンテキスト処理部２１１と、画素指定による予測を行って画素を再構成する画素指定予測合成部２１２と、エントロピー符号の復号を行う第三のエントロピー復号部２１３と、ラン長に従って画素を再構成するラン長モード合成部２１４を備える。
【００３９】
データ分離部２０１では、ヘッダと、重み付けパラメータ、確率分布の情報と他の符号化された画素の情報を分離し、それぞれパラメータ設定部２０５、確率分布設定部２０８、モード判定部２０２等に送る。
【００４０】
モード判定部２０２は画素を順番に復号していく手順において、その画素をどのモードで復号するかを判定する。符号化モードの候補は符号化時に使われたモードであり、ここでは重み付け予測モード、画素指定予測モード、ランモードである。符号化モードがフラグによって示されている場合には、示された符号化モードによって画素を復号する。フラグで示されない場合には、符号化時と同じ条件で周辺画素の情報を手掛かりに符号化モードを決定する。符号化モードの判定方法は前述の通りであり、符号化時に使われたのと同じ方法を用いる。
【００４１】
第一のエントロピー復号部２０３は重み付け予測モードによって符号化された時の補正された差分値を復号する。これには確率分布設定部２０８に設定された確率分布を用いる。確率分布はストリームに付加された情報を用いるか、１つ前のフレームで得られた確率分布を設定して用いる。エントロピー符号化方式にはゴロム・ライス符号、ハフマン符号、算術符号、算術符号の一種であるレンジコーダによる符号等があるが、算術符号やレンジコーダを用いる場合に確率分布の設定が必要となる。復号には符号化方式に対応した方式が用いられる。
【００４２】
第一のコンテキスト処理部２０４は、重み付け予測モードにおけるコンテキスト処理による補正を行う。これは符号化に対応した逆の処理を行えばよい。この処理により画素の差分値が取得される。
【００４３】
パラメータ設定部２０５は符号化ストリームから重み付けパラメータの情報を取得し、これを保持する。
【００４４】
重み付け予測部２０６は、パラメータ設定部２０５から重み付けパラメータを取得し、前述の式２によって符号化対象画素の予測値を計算し、これと第一のコンテキスト処理部２０４から得られる画素の差分値を合成して画素を復元する。復元した画素は復号画像バッファ２０７に保持される。重み付け予測の方法は前述の通りである。
【００４５】
復号画像バッファ２０７は復元された画素を保持する。
【００４６】
確率分布設定部２０８はエントロピー復号のための確率分布を保持する。第一のエントロピー復号部２０３、第二のエントロピー復号部２１０にそれぞれ別の確率分布を設定する。確率分布の情報はフレーム毎にストリームに記録されている場合と、１つ前のフレームの確率分布を利用する場合がある。後者の場合には現フレームのエントロピー復号を行うと同時に次のフレームのために復号される数値の出現頻度を記録しておく。
【００４７】
参照画像バッファ２０９は復号画像バッファ２０７から画像を受け、参照画像として保持する。
【００４８】
第二のエントロピー復号部２１０は画素指定予測モードによって符号化された時の補正された差分値を復号する。これには確率分布設定部２０８に設定された確率分布を用いる。確率分布はストリームに付加された情報を用いるか、１つ前のフレームで得られた確率分布を設定して用いる。エントロピー符号化方式にはゴロム・ライス符号、ハフマン符号、算術符号、算術符号の一種であるレンジコーダによる符号等があるが、算術符号やレンジコーダを用いる場合に確率分布の設定が必要となる。復号には符号化方式に対応した方式が用いられる。
【００４９】
第二のコンテキスト処理部２１１は、画素指定予測モードにおけるコンテキスト処理による補正を行う。これは符号化に対応した逆の処理を行えばよい。この処理により画素の差分値が取得される。
【００５０】
画素指定予測合成部２１２は指定された画素を用いて符号化対象画素を予測し、これと第二のコンテキスト処理部２１１から得られる画素の差分値を合成して画素を復元する。復元した画素は復号画像バッファ２０７に保持される。画素指定予測モードによる画素予測の方法は前述の通りである。
【００５１】
第三のエントロピー復号部２１３はランモードによって符号化された時のラン長を復号する。
【００５２】
ラン長モード合成部２１４はラン長を用いて同じ画素の値が続く範囲を特定し、画素をコピーすることによって復元する。復元した画素は復号画像バッファ２０７に保持される。
【００５３】
上記のような処理がラスタスキャン順行われ、画像が復号される。
【００５４】
図４は画像符号化方法のフロー図である。まずステップ４０１において原画像を入力する。
【００５５】
次にステップ４０２において画素単位予測における条件判定が行われる。この条件判定では、入力画像の画素を順番に取りだし符号化していく手順において、その画素をどのモードで符号化すべきかを判定する。符号化モードの候補には、以下のものが含まれる。一つ目は、重み付け予測モードである。これは符号化対象画素の予測値を複数の周辺画素の重み付け和として求める方式である。周辺画素の重み付けパラメータは予め定めておいてもよいし、機械学習を用いてパラメータを求めてもよい。以下では機械学習を用いて最適化したパラメータを求める方式を例に挙げて説明する。二つ目は、画素指定予測モードである。これは符号化対象画素の予測値を複数の周辺画素の候補の中から一つ選ぶ方式である。例えば、対象画素の左隣の画素、上の画素のような形で選択する。選択方法は周辺画素の値を入力とした一定の式に当てはめて決めてもよいし、対象画素に一番近い値を持つ画素をフラグで指定してもよい。フラグで指定する場合、例えば左隣は0、上は1というような信号を予め決めておく。以下ではフラグで指定する方法を例に挙げて説明する。三つ目のモードはランモードである。これは対象画素に同じ値が連続する場合に、連続する数（ラン長）を計測して記録するモードである。ラン長の符号化方式にはゴロム・ライス符号やハフマン符号を用いればよい。
【００５６】
複数のモードの中から対象画素を符号化するのに最も適切な符号化モードを判定する方法の一例について説明する。上記の符号化モードは、それぞれ画像の特徴に応じて圧縮効率の特性が異なる。例えば、重み付け予測モードは他の符号化モードと比較して、ノイズの少ない予測の容易な画像領域に対する圧縮率が高い。一方で、画素指定予測モードは、ノイズの少ない領域の圧縮率は低いがノイズの多い領域の圧縮率が高い。ランモードは同じ値が連続する場合にのみ高い圧縮率を発揮する。従って、符号化対象画素の周囲のノイズが多いか少ないか、同じ値が連続しているか否かを判別してモードを決定すればよい。まず、同じ値が連続していればランモードを選択し、そうでなければそれ以外のモードとする。次に画像領域のノイズ量を判定し、ノイズが一定値より大きければ画素指定予測モードを選択し、小さければ重み付け予測モードを選択すればよい。
【００５７】
ノイズ量の判定には画素の分散値を用いればよい。判定方法は前述の通りである。分散値以外にも周辺画素の値をWavelet変換して係数の和を取る、あるいはDCT変換しDC値以外の係数の和を取る、のような方法によってもノイズ量は判定できる。なお、周辺画素は予め領域を決めておいてもよいし、画素毎に領域を変更してもよい。領域を選択する際には、符号化対象画素と異なる画像領域（前景か背景か）の画素が含まれないように、エッジ等を判別して画素を選択してもよい。
【００５８】
上記では周辺画素のノイズ量を計算し予め設定した閾値を超えるか否かによって自動的に判別する例を説明したが、符号化モードをフラグによって明示的に伝送してもよい。自動的に判別する場合にはフラグの情報量を削減できるというメリットがあり、フラグによって示す場合には正確にモードを判別できるというメリットがある。またフラグによって示す場合、ロスレス符号化ではどの符号化モードの符号量が最も小さくなるかによって判別すればよい。ロッシー符号化では、Rate-Distortion最適化法等を用いて、符号量と誤差（原画像と復号画像の差）を考慮して決定すればよい。
【００５９】
ステップ４０３では、ステップ４０２において重み付け予測モードとして判定された画素について、重み付けパラメータと誤差の計測を行う。以下では符号化対象フレームの符号化済み画素と、マルチスライス画像の符号化を想定して１つ前のフレームの符号化済み画素を参照する例について説明する。参照画像を用いずに符号化フレームの画素のみを用いてもよい。図３において符号化対象画像の予測値をXとし、符号化フレームの周辺画素をA,B,C,D、１つ前のフレームの周辺画素をS,P,Qとし、A〜Qの画素値に対する重みをw0j〜w6jとすると、Xは前述の式２によって求めることができる。式２の予測式はjによって場合分けされ、各画素において、|C-A|、|C-B|、|P-A|、|Q-B|の最小値を求め、|C-A|が最小の場合にはj=0、|C-B|が最小の場合にはj=1、それ以外が最小の場合にはj=2として画像全体で重み付けパラメータと誤差を計測する。各画素について、最小二乗法のプロセスに基づいて重み付けパラメータとXと画素値の誤差を計測し、画像全体について処理するためステップ４０２との間をループする。
【００６０】
ステップ４０４では、画像全体について計測した値を用いて、最小二乗法に基づいて重み付けパラメータを決定し出力する。前述の例では重み付けパラメータはj=0〜2について各７つ、合計２１個となり、付加情報として伝送される。
【００６１】
ステップ４０５では、再び入力画像の画素を順番に取りだし符号化していく手順において、ステップ４０２と同様の方式により、その画素をどのモードで符号化すべきかを判定する。符号化モードは、重み付け予測モード、画素指定予測モード、ランモードである。判定方法は前述の通りである。重み付け予測モードと判定された場合にはステップ４０６、画素指定予測モードと判定された場合にはステップ４０９、ランモードと判定された場合にはステップ４１２に進む。
【００６２】
ステップ４０６では、設定された重み付けパラメータを用いて、前述の式２によって符号化対象画素の予測値を計算し、符号化対象画素との差分を取る。
【００６３】
ステップ４０７では、ステップ４０６にて計算された符号化対象画素と予測値の差分に対して、コンテキスト処理による補正を行う。コンテキスト処理はJPEG-LS方式に用いられるような一般的な手法を用いればよい。これは周辺画素の値や差分値の出現頻度を手掛かりとして差分値を補正する処理である。
【００６４】
ステップ４０８では、ステップ４０７にて補正された差分値である残差数値の計測を行い、出現頻度を記録し、エントロピー符号化のための確率分布を作成する。エントロピー符号化方式にはゴロム・ライス符号、ハフマン符号、算術符号、算術符号の一種であるレンジコーダによる符号等を用いることができるが、算術符号やレンジコーダによる符号では、適切な確率分布を設定する必要がある。確率分布の設定方法としては、符号化開始時には適当な分布を定めておき、符号化を進めるにつれてこれを修正し、徐々に画像に適した形に設定していく方法と、一旦画像全体について符号化する値の出現頻度を調べ、これを確率分布として設定する方法がある。後者では確率分布に関する情報をストリームに付加して伝送する必要がある。またマルチスライス画像の処理では、連続するフレーム間の確率分布は近い形になる場合が多いので、１つ前のフレームの確率分布を設定することも有効である。この方式では最初の１枚以外では確率分布をストリームに付加する必要がない。以下では、エントロピー符号化方式としてレンジコーダを用い、設定する確率分布は１つ前のフレームの確率分布を利用する場合を例に挙げて説明する。ここでは現在のフレームの補正された差分値（残差数値）の出現頻度を記録し、次のフレームの符号化のために保持する。
【００６５】
ステップ４０９では、画素を指定することにより符号化対象画素の予測値を決定する。例えば、対象画素に一番近い値を持つ画素をフラグで指定する。左隣は0、上は1というような信号を予め決めておき、フラグで伝送すればよい。またJPEG-LSのように、予め設定した一定の式を用いて予測する画素を判別してもよい。この場合にはフラグを伝送する必要はない。決定した予測値を用いて符号化対象画素との差分を取る。
【００６６】
ステップ４１０では、ステップ４０９にて計算された符号化対象画素と予測値の差分に対して、コンテキスト処理による補正を行う。コンテキスト処理はJPEG-LS方式に用いられるような一般的な手法を用いればよい。これは周辺画素の値や差分値の出現頻度を手掛かりとして差分値を補正する処理である。
【００６７】
ステップ４１１では、ステップ４１０にて補正された差分値である残差数値の計測を行い、出現頻度を記録し、エントロピー符号化のための確率分布を作成する。これは前述のステップ４０８と同様の処理を画素指定予測モードに適用したものである。
【００６８】
ステップ４１２では、ランモードにおいて同じ値が連続する画素の数を計測する。
【００６９】
ステップ４１３では、ラン長の出現確率を計測する。ラン長をハフマン符号化する場合にはハフマンテーブルを作成する。ゴロム・ライス符号化する場合には、平均符号長が最小となるように符号化方式を最適化する。
【００７０】
ステップ４１４では、各符号化モードについてエントロピー符号化のための確率情報を決定する。算術符号、レンジコーダによる符号の場合には符号化に確率分布の情報が必要であり、ステップ４０８、ステップ４１１にて計測した出現確率等の情報をヒストグラムとして保持する。ハフマン符号の場合にはハフマンテーブル（符号化テーブル）を用意する。ゴロム・ライス符号の場合には符号化の構成方法を最適化する。画像全体について処理するためステップ４０５との間をループする。
【００７１】
ステップ４１５では、前段のステップによって画像全体に対して計測した確率分布の情報を最適化し、エントロピー符号化装置に設定する。また必要に応じて確率分布の情報、テーブル等をストリームに出力する。
【００７２】
ステップ４１６では、再び入力画像の画素を順番に取りだし符号化していく手順において、ステップ４０２、４０５と同様の方式により、その画素をどのモードで符号化すべきかを判定する。符号化モードは、重み付け予測モード、画素指定予測モード、ランモードである。判定方法は前述の通りである。重み付け予測モードと判定された場合にはステップ４１７、画素指定予測モードと判定された場合にはステップ４２０、ランモードと判定された場合にはステップ４２３に進む。
【００７３】
ステップ４１７では、設定された重み付けパラメータを用いて、前述の式２によって符号化対象画素の予測値を計算し、符号化対象画素との差分を取る。
【００７４】
ステップ４１８では、ステップ４１８にて計算された符号化対象画素と予測値の差分に対して、コンテキスト処理による補正を行う。これはステップ４０７と同様である。
【００７５】
ステップ４１７、４１８はステップ４０６、４０７と同様の処理であり、これらを再度行うのではなく、ステップ４０６、４０７にて処理した値をメモリに格納しておき取り出してもよい。
【００７６】
ステップ４１９では、ステップ４１７にて補正された差分値である残差数値をエントロピー符号化する。算術符号、算術符号の一種であるレンジコーダによる符号等を用いる場合、事前に設定された確率分布を用いる。マルチスライス画像の処理では、連続するフレーム間の確率分布は近い形になる場合が多いので、１つ前のフレームの確率分布を設定して用いてもよい。
【００７７】
ステップ４２０では、画素を指定することにより符号化対象画素の予測値を決定し、この予測値を用いて符号化対象画素との差分を取る。
【００７８】
ステップ４２１では、ステップ４２０にて計算された符号化対象画素と予測値の差分に対して、コンテキスト処理による補正を行う。
【００７９】
ステップ４２０、４２１はステップ４０９、４１０と同様の処理であり、これらを再度行うのではなく、ステップ４０９、４１０にて処理した値をメモリに格納しておき取り出してもよい。
【００８０】
ステップ４２２では、ステップ４２１にて補正された差分値である残差数値の計測を行い、エントロピー符号化する。これは前述のステップ４１９と同様の処理を画素指定予測モードに適用したものである。
【００８１】
ステップ４２３では、ランモードにおいて同じ値が連続する画素の数を計測する。ステップ４２３はステップ４１２と同様の処理であり、これらを再度行うのではなく、ステップ４１２にて処理した値をメモリに格納しておき取り出してもよい。
【００８２】
ステップ４２４では、ラン長をエントロピー符号化する。ラン長をハフマン符号化する場合にはハフマンテーブルを参照して符号化する。
【００８３】
ステップ４２５では、各符号化モードについて作成されたエントロピー符号化後の符号をストリームに出力する。画像全体について処理するためステップ４１６との間をループする。
【００８４】
ステップ４２６では、処理した入力画像を参照画像として参照画像バッファに格納する。
【００８５】
上記のような処理によって効率的に画像が圧縮される。
【００８６】
図５は画像復号方法のフロー図を示したものである。
【００８７】
まず、ステップ５０１において符号化ストリームを入力する。以下、まず１枚目の画像を復号するステップについて説明する。
【００８８】
ステップ５０２では、符号化ストリームから重み付けパラメータを分離し情報を取得する。重み付けパラメータについては前述の通りである。
【００８９】
ステップ５０３では、符号化ストリームから確率分布を分離し情報を取得する。この確率分布の情報には、ハフマン符号におけるテーブルや、算術符号、レンジコーダによる符号における出現頻度の情報等を含む。この情報は画像１枚毎に付加してもよいし、複数枚の画像につき１つ付加してもよい。また１枚目の画像にだけ付加し、後続の画像については１つ前の画像を復号した時に取得される情報を利用してもよい。
【００９０】
ステップ５０４では、復号画像の画素を順番に取りだし復号していく手順において、その画素をどのモードで符号化すべきかを判定する。符号化モードがフラグによって示されている場合には、示された符号化モードによって画素を復号する。フラグで示されない場合には、符号化時と同じ条件で周辺画素の情報を手掛かりに符号化モードを決定する。符号化モードには、重み付け予測モード、画素指定予測モード、ランモードが含まれる。符号化モードの判定方法は前述の通りであり、符号化時に使われたのと同じ方法を用いる。重み付け予測モードと判定された場合にはステップ５０５、画素指定予測モードと判定された場合にはステップ５０８、ランモードと判定された場合にはステップ５１１に進む。
【００９１】
ステップ５０５では、設定された重み付けパラメータを用いて、前述の式２によって符号化対象画素の予測値を計算する。
【００９２】
ステップ５０６では、ステップ５０５にて計算された予測値に対して、コンテキスト処理による補正を行う。これは符号化時のステップ４０７、４１８において差分値に対して行った処理の逆の処理を行うことに相当する。
【００９３】
ステップ５０７では、符号化ストリームから残差数値をエントロピー復号によって取得する。算術符号、算術符号の一種であるレンジコーダによる符号等を用いる場合、事前に設定された確率分布を用いる。ハフマン符号ではテーブルを用いる。また復号時に、得られた数値に関する出現確率と確率分布の情報を更新する。
【００９４】
ステップ５０８では、符号化ストリームのフラグ、あるいは周辺画素と一定の式に従い指定された画素を参照し符号化対象画素の予測値を計算する。
【００９５】
ステップ５０９では、ステップ５０８にて計算された予測値に対して、コンテキスト処理による補正を行う。これは符号化時のステップ４０９、４１０において差分値に対して行った処理の逆の処理を行うことに相当する。
【００９６】
ステップ５１０では、符号化ストリームから残差数値をエントロピー復号によって取得する。算術符号、算術符号の一種であるレンジコーダによる符号等を用いる場合、事前に設定された確率分布を用いる。ハフマン符号ではテーブルを用いる。また復号時に、得られた数値に関する出現確率と確率分布の情報を更新する。
【００９７】
ステップ５１１では、符号化ストリームからラン長をエントロピー復号によって取得する。ハフマン符号ではテーブルを用いる。
【００９８】
ステップ５１２では、画素の復元を行う。重み付け予測モード及び画素指定予測モードでは、予測値とコンテキスト処理による補正値、及びエントロピー復号された差分値を合成して画素を復元する。ランモードでは、復号されたラン長に従って前に復元された画素をコピーすることによって対象画素を復元する。画像全体を復元するために、ステップ５０４との間をループする。上記ではコンテキスト処理は予測値を補正し、これに差分値を合成する形で記述したが、差分値を補正して予測値と合成しても同様である。
【００９９】
ステップ５１３では、復号された画像をバッファに格納する。
【０１００】
ステップ５１４では、ステップ５０７、５１０において更新された復号する数値の出現確率、確率分布の情報を次の画像のエントロピー復号のために設定する。
【０１０１】
ステップ５１５では、復号された画像を参照画像とするため参照画像バッファに格納する。複数の画像を復号するために、ステップ５０１との間をループする。
【０１０２】
以上のような処理により圧縮された画像を復号することができる。
【０１０３】
図６は、画像符号化モードの判定フロー図である。このこの条件判定では、その画素をどのモードで符号化すべきか、復号すべきかを判定する。符号化モードの候補には、重み付け予測モード、画素指定予測モード、ランモードが含まれる。
【０１０４】
ステップ６０１では、対象画素の周辺画素を取得する。例えば、図３におけるA〜Qの画素に相当する。周辺画素は予め領域を決めておいてもよいし、画素毎に領域を変更してもよい。領域を選択する際には、符号化対象画素と異なる画像領域（前景か背景か）の画素が含まれないように、エッジ等を判別して画素を選択してもよい。
【０１０５】
ステップ６０２では、対象画素と一つ前の処理画素の差が一定以下であるか否かを判定する。例えば、図３におけるAの値とXの値を比較し、差が0であるか否かを判定する。ここでYesであればステップ６０３に進み、Noであればステップ６０４に進む。ステップ６０３はランモードであり、ステップ６０４は他のモードである。ランモードは同じ値が連続する場合に高い圧縮率を実現できるため、差が0であればランモードとして処理し、そうでなければ他のモードとする。
【０１０６】
ステップ６０３では、ランモードとして画素を処理する。符号化時には同じ値が連続する画素の数を計測し、これをラン長として符号化する。復号時にはラン長に従って前の画素の値をコピーして画像を復元する。ランモードの処理については前述の通りである。
【０１０７】
ステップ６０４では、周辺画素の分散値、あるいは周波数変換係数の和が一定以下か否かを判定する。例えば画素の分散値は、周辺画素をXiとし、これらの平均をmとした時、前述の式１によって計算できる。周波数変換係数の和は、同様にXiを連続する１次元の数列とみなし、これに対してWavelet変換、あるいはDCT(Discrete Cosine Transform)変換を行い、DC(Direct Current)成分以外の数値の絶対値を合計して求めることができる。これらの数値によって、符号化対象画素の周囲のノイズが多いか少ないかを判定できる。数値が大きい場合はノイズが多く、小さい場合はノイズが少ないと判定できる。ノイズが少ない場合には重み付け予測モードが適しており、ノイズが多い場合には画素指定予測モードが適している。判定がYesであればステップ６０５に進み、Noであればステップ６０６に進む。
【０１０８】
ステップ６０５では、重み付け予測モードとして画素を処理する。重み付け予測モードの処理については前述の通りである。
【０１０９】
ステップ６０６では、画素指定予測モードとして画素を処理する。画素指定予測モードの処理については前述の通りである。
【０１１０】
上記のような処理により、画像の特徴に応じた画素単位での符号化モードの判定を行うことができる。
【０１１１】
以上説明した各図に示される実施の形態を組み合わせた形態も本願の発明である。
【０１１２】
さらに、本発明の画像符号化技術を画像記録装置、画像伝送装置に適用することにより、大容量の画像記録、帯域幅の小さい画像伝送が可能な医療用画像診断装置、ＣＴ、ＭＲＩ等の撮影装置を提供することができる。
【符号の説明】
【０１１３】
１００…画像符号化装置、１０１…入力画像バッファ、１０２…参照画像バッファ、１０３…モード判定部、１０４…予測パラメータ学習部、１０５…パラメータ出力部、１０６…重み付け予測部、１０７…第一のコンテキスト処理部、１０８…第一の確率分布調整部、１０９…第一のエントロピー符号化部、１１０…画素指定予測部、１１１…第二のコンテキスト処理部、１１２…第二の確率分布調整部、１１３…第二のエントロピー符号化部、１１４…ラン長計測部、１１５…第三のエントロピー符号化部、２００…画像復号装置、２０１…データ分離部、２０２…モード判定部、２０３…第一のエントロピー復号部、２０４…第一のコンテキスト処理部、２０５…パラメータ設定部、２０６…重み付け予測合成部、２０７…復号画像バッファ、２０８…確率分布設定部、２０９…参照画像バッファ、２１０…第二のエントロピー復号部、２１１…第二のコンテキスト処理部、２１２…画素指定予測合成部、２１３…第三のエントロピー復号部、２１４…ラン長モード合成部。
【図１】
2013062752.tif 000004
【図２】
2013062752.tif 000005
【図３】
2013062752.tif 000006
【図４】
2013062752.tif 000007
【図５】
2013062752.tif 000008
【図６】
2013062752.tif 000009