(57)【要約】      （修正有）【課題】リフレッシュによる局所的な符号量の増加を最小限に抑える。【解決手段】イントラ符号化およびフレーム間符号化を用いて画像の符号化を行う画像符号化方法において、イントラ符号化により画像のリフレッシュを行うリフレッシュ領域が定期的にフレーム全体を巡回するよう該リフレッシュ領域をフレーム毎に所定の移動量ずつ移動させ、上記リフレッシュ領域通過後のマクロブロックがフレーム間符号化を行う場合、上記リフレッシュ領域通過後の画像を参照するよう当該マクロブロックの動き補償ベクトルを選択することを特徴とする画像符号化方法。【選択図】図１
2011205465.tif 000002
【特許請求の範囲】
【請求項１】
イントラ符号化およびフレーム間符号化を用いて画像の符号化を行う画像符号化方法において、
イントラ符号化により画像のリフレッシュを行うリフレッシュ領域が定期的にフレーム全体を巡回するよう該リフレッシュ領域をフレーム毎に所定の移動量ずつ移動させ、
上記リフレッシュ領域通過後のマクロブロックがフレーム間符号化を行う場合、上記リフレッシュ領域通過後の画像を参照するよう当該マクロブロックの動き補償ベクトルを選択することを特徴とする画像符号化方法。
【請求項２】
イントラ符号化およびフレーム間符号化を用いて画像の符号化を行う画像符号化方法において、
イントラ符号化により画像のリフレッシュを行うリフレッシュ領域が定期的にフレーム全体を巡回するよう該リフレッシュ領域をフレーム毎に所定の移動量ずつ移動させ、
上記リフレッシュ領域通過後のマクロブロックが上記リフレッシュ領域通過前の画像を参照するよう当該マクロブロックの動き補償ベクトルが選択された場合には、当該マクロブロックは強制的にイントラ符号化を用いることを特徴とする画像符号化方法。
【請求項３】
イントラ符号化およびフレーム間符号化を用いて画像の符号化を行う画像符号化装置において、
指定された動き探索範囲で動きベクトルを探索する動き探索手段と、
マクロブロックの符号化モードの選択および上記動き探索手段に対する動き探索範囲の指定を行う制御手段を備え、
上記制御手段は、
画像のリフレッシュを行うリフレッシュ領域を設け、定期的にフレーム全体を巡回するよう該リフレッシュ領域をフレーム毎に所定の移動量ずつ移動させ、
処理中のマクロブロックが上記リフレッシュ領域内の場合には、イントラ符号化を選択し、
上記処理中のマクロブロックが上記リフレッシュ領域が通過後の領域の場合には、上記動き探索範囲が上記リフレッシュ領域通過後の画像内に収まるよう当該動き探索範囲の指定を行うことを特徴とする画像符号化装置。
【請求項４】
イントラ符号化およびフレーム間符号化を用いて画像の符号化を行う画像符号化装置において、
所定の動き探索範囲で動きベクトルを探索する動き探索手段と、
マクロブロックの符号化モードの選択を行う制御手段を備え、
上記制御手段は、
画像のリフレッシュを行うリフレッシュ領域を設け、定期的にフレーム全体を巡回するよう該リフレッシュ領域をフレーム毎に所定の移動量ずつ移動させ、
処理中のマクロブロックが上記リフレッシュ領域内の場合には、イントラ符号化を選択し、
上記処理中のマクロブロックが上記リフレッシュ領域が通過後の領域の場合であって、かつ上記動き探索手段の探索結果である動きベクトルが上記リフレッシュ領域通過前の画像を参照する場合には、強制的にイントラ符号化を選択することを特徴とする画像符号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像符号化方法および画像符号化装置に関する。
【背景技術】
【０００２】
イントラ符号化およびフレーム間符号化を用いた動画像の符号化が一般的に用いられている。符号化された動画像が伝送路を通じて受信側へ伝送される過程で、伝送誤りにより符号エラーが発生する場合がある。フレーム間符号化を用いて符号化を行っている場合、上記のような符号エラーが発生すると、後続の画像に対してエラーが伝播し続けてしまう場合がある。そこで定期的にイントラ符号化された画像を挿入することにより、エラーの伝播を防止することができる。これをリフレッシュと呼ぶ。
【０００３】
一方、イントラ符号化はフレーム間符号化に比べ一般に発生する符号量が大きい。そのためイントラ符号化を用いた部分とフレーム間符号化を用いた部分との間で符号量の大きなばらつきが生じる。実際には伝送レートに上限がある場合が多いため、発生符号量のピーク値を抑制する必要があり、結果的に画質の劣化につながるという問題がある。
【０００４】
特許文献１には、画像の一部分にリフレッシュ領域を設定し、局所的な符号量の発生をできるだけ小さくする技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平７−３２２２６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載の技術では、フレーム間符号化による動き補償も考慮に入れている。すなわち、リフレッシュ領域のシフト量を動き補償の補償範囲以上にオーバーラップさせながらシフトすることにより、リフレッシュ済みのブロックがリフレッシュ前の画素を参照してエラーが再度伝播してしまうことを防止している。
【０００７】
しかしながら、常に動き補償の補償範囲以上オーバーラップさせるため、リフレッシュ領域の幅が大きく広がり、局所的な符号量の発生の増大につながるという問題がある。また、シフト量が相対的に減少することによりリフレッシュ領域が全画面を一巡するまでに要する時間が長くなり、エラー発生時の復帰により長い時間を要するという問題がある。
【課題を解決するための手段】
【０００８】
上記課題を解決するため、イントラ符号化およびフレーム間符号化を用いて画像の符号化を行う画像符号化方法において、イントラ符号化により画像のリフレッシュを行うリフレッシュ領域が定期的にフレーム全体を巡回するよう該リフレッシュ領域をフレーム毎に所定の移動量ずつ移動させ、上記リフレッシュ領域通過後のマクロブロックがフレーム間符号化を行う場合、上記リフレッシュ領域通過後の画像を参照するよう当該マクロブロックの動き補償ベクトルを選択することとした。
【発明の効果】
【０００９】
上記手段によれば、リフレッシュ領域をシフトする際に常に動き補償の補償範囲以上オーバーラップさせる必要が無くなるため、リフレッシュ領域の幅を必要以上に広げる必要が無く、したがって局所的な符号量の発生の増大を最小限に抑えることが可能になる。それにより、画質の向上を図ることが可能である。
【００１０】
また、リフレッシュ領域のシフト量を相対的に減少する必要がないため、リフレッシュ領域が全画面を一巡するまでに要する時間を小さくすることができ、エラー発生時の復帰を速やかにすることが可能になる。
【図面の簡単な説明】
【００１１】
【図１】符号化装置の例を示す図である。
【図２】制御部１１１のフローチャートの例を示す図である。
【図３】動き探索範囲の制限方法を説明する図の例である。
【図４】符号化装置の例を示す図である。
【図５】制御部１１１のフローチャートの例を示す図である。
【発明を実施するための形態】
【００１２】
以下、実施例について説明する。
【実施例１】
【００１３】
図１は実施例１における符号化装置のブロック図の例である。以下、入力画像は所定の大きさの矩形領域（マクロブロック）毎に処理される。入力画像は各マクロブロックは減算器１０１に入力され、動き探索部１０９から出力される予測画像との差分が求められ、出力される。
【００１４】
減算器１０１の出力および入力画像はスイッチ１０２に入力され、制御部１１１の指示に基づいて、マクロブロックごとにいずれか一方が選択される。すなわち、イントラ符号化が指示された場合は入力画像が選択される。またフレーム間符号化が指示された場合には、減算器１０９の出力が選択される。選択された信号はスイッチ１０２から出力され、直交変換部１０３に入力される。
【００１５】
直交変換部１０３に入力された信号は、直交変換により空間領域から周波数領域の信号に変換される。変換された信号は、次の量子化部１０４に出力される。
量子化部１０４に入力された信号は、量子化係数で除することにより量子化処理される。量子化処理された信号は量子化部１０４から出力され、エントロピー符号化部１０５および逆量子化部１０６に入力される。
【００１６】
エントロピー符号化部１０５に入力された信号は、信号の発生確率に応じた符号長を持つ符号によりエントロピー符号化され、符号化画像として出力される。
また、逆量子化部１０６に入力された信号は、量子化係数を乗じることにより逆量子化処理され、逆直交変換部１０７に出力される。逆直交変換部１０７に入力された信号は、逆直交変換により周波数領域から空間領域の信号に変換される。変換された信号は、後続のフレームの参照画像として、参照画像メモリ１０８に蓄積される。
【００１７】
動き探索部１０９は、動き探索処理によって、参照画像メモリ１０８に蓄積された過去の参照画像を参照して入力画像のマクロブロックに最も値の近い部分を見つけ出す。この探索処理は、制御部１１１からの指定された動き探索範囲内で探索を行う。探索結果である予測画像は先ほどの減算器１０１に入力される。
コスト計算部１１０は、減算器１０１の出力および入力画像のマクロブロックそれぞれについて、符号化に要するコスト（例えば発生符号量の見積もり値）を計算し、制御部１１１に出力する。
【００１８】
制御部１１１は、現在処理中のマクロブロックがリフレッシュ領域、リフレッシュ前、リフレッシュ済みのどの領域に属するか、およびコスト計算部１１０の出力結果に応じて、現在のマクロブロックの符号化モード、すなわちイントラ符号化もしくはフレーム間符号化のいずれかを決定し、スイッチ１０２に対して指示を出す。
さらに制御部１１１は、現在処理中のマクロブロックの属する領域に応じて、動き探索範囲を決定し、動き探索部１０９に対して指示を出す。
【００１９】
これらの減算器１０１、スイッチ１０２、直交変換部１０３、量子化部１０４、エントロピー符号化部１０５、逆量子化部１０６、逆直交変換部１０７、参照画像メモリ１０８、動き探索部１０９、コスト計算部１１０、制御部１１１、などは処理を行う処理部として集積回路化するなどして、符号化装置をハードウェアにより実現することができる。
【００２０】
また、図示しないメモリ等の記憶手段に格納された、減算プログラム１０１、スイッチプログラム１０２、直交変換プログラム１０３、量子化プログラム１０４、エントロピー符号化プログラム１０５、逆量子化プログラム１０６、逆直交変換プログラム１０７、動き探索プログラム１０９、コスト計算プログラム１１０、などの各処理を行うプログラムを制御部１１１が実行することで、符号化装置をソフトウェアにより実現することもできる。
【００２１】
制御部１１１の動作をさらに詳しく説明する。
図２は制御部１１１のフローチャートの例である。まず、制御部１１１は、現在のマクロブロックの位置（アドレス）から、属する領域を判定する（ステップ２０１）。
現在のマクロブロックがリフレッシュ前の領域の場合は、制御部１１１は、動き探索範囲として動き探索部１０９の処理可能な最大範囲を設定し、動き探索部１０９に対して指示する（ステップ２０２）。
【００２２】
さらに、制御部１１１は、コスト計算部１１０の計算結果に基づき、イントラ符号化、フレーム間符号化のうち符号化コストの低いほうを現在のマクロブロックの符号化モードとして選択し、スイッチ１０２に対して指示を出す（ステップ２０３）。
また、制御部１１１は、現在のマクロブロックがリフレッシュ領域中の場合には、符号化モードとしてイントラ符号化を選択し、スイッチ１０２に対して指示を出す（ステップ２０４）。
【００２３】
また、現在のマクロブロックがリフレッシュ済みの領域の場合には、制御部１１１は、未だリフレッシュが済んでいない領域を動き探索部１０９が参照することが無いよう、現在のマクロブロックの位置に応じて制限した動き探索範囲を求め、動き探索部１０９に対して指示する（ステップ２０５）。
【００２４】
さらに、制御部１１１は、コスト計算部１１０の計算結果に基づき、イントラ符号化、フレーム間符号化のうち符号化コストの低いほうを現在のマクロブロックの符号化モードとして選択し、スイッチ１０２に対して指示を出す（ステップ２０６）。
【００２５】
図３は動き探索範囲の制限方法を説明する図の例である。上記のステップ２０５における処理を図３を用いてさらに詳しく説明する。
図において斜線部はリフレッシュ領域であり、フレーム毎に右にシフトしていくものとする。また現在符号化処理中のフレームはフレーム＃ｎとする。フレーム＃ｎのリフレッシュ領域に対して、右側はリフレッシュ前の領域、左側はリフレッシュ済みの領域である。またフレーム＃ｎの動き補償における参照画像はフレーム＃ｎ−１であるものとする。
【００２６】
ここで、現在処理中のマクロブロックが図の（ａ）である場合を考える。（ａ）の周囲の点線は動き補償部１０９における動き探索処理可能な最大範囲を示している。この場合、動き探索範囲の一部（右側）が、参照画像のリフレッシュ済みの領域以外の領域（すなわち、フレーム＃ｎにおけるリフレッシュ領域またはリフレッシュ前領域に相当する領域）にかかっている。そこで、制御部１１１は、このかかっている領域を動き探索の範囲から除外し、残りの制限された範囲を動き探索範囲として、動き補償部１０９に対して指定する。これにより、動き補償を行う場合には必ずリフレッシュ済みの領域を参照するようにすることが可能である。
【００２７】
また、現在処理中のマクロブロックが図の（ｂ）の場合には、点線部（動き探索処理可能な最大範囲）の全体がリフレッシュ済み領域内に収まっている。この場合には、制御部１１１は、動き探索範囲を制限する必要は無い。
【００２８】
以上のように、本実施例によれば、リフレッシュ領域をシフトする際に動き補償の補償範囲以上常にオーバーラップさせる必要が無くなるため、リフレッシュ領域の幅を必要以上に広げる必要が無い。したがって局所的な符号量の発生の増大を最小限に抑えることが可能になる。それにより、画質の向上を図ることが可能である。
【００２９】
また、動き補償の補償範囲以上オーバーラップさせる必要がないためリフレッシュ領域のシフト量を相対的に減少する必要がない。したがってリフレッシュ領域が全画面を一巡するまでに要する時間を小さくすることができ、エラー発生時の復帰を速やかにすることが可能になる。
【実施例２】
【００３０】
次に実施例２について説明する。実施例１と同様の部分については説明を省略し、異なる部分についてのみ説明する。
図４は実施例２における符号化装置のブロック図の例である。実施例１との違いは以下の通りである。すなわち、動き探索部１０９は、制御部１１１から動き探索範囲の制限についての指示を受けることは無く、探索可能な所定の動き探索範囲を探索し、探索結果の動きベクトルを制御部１１１に対して出力する。
制御部１１１は、動き探索部１０９から出力された動きベクトルを受信し、この動きベクトルを用いて符号化モードの決定を行う。
図４の符号化装置は、図１と同様、ハードウェアでもソフトウェアでも実現することができる。
【００３１】
図５は、制御部１１１のフローチャートの例である。まず、制御部１１１は、現在のマクロブロックの位置（アドレス）から、属する領域を判定する（ステップ３０１）。
現在のマクロブロックがリフレッシュ前の領域の場合は、制御部１１１は、ステップ２０３と同様の処理を行う（ステップ３０２）。
また、現在のマクロブロックがリフレッシュ領域中の場合には、制御部１１１は、ステップ２０４と同様の処理を行う（ステップ３０３）。
【００３２】
また、現在のマクロブロックがリフレッシュ済みの領域の場合には、制御部１１１は、動き探索部１０９から出力された動きベクトルを用いて、未だリフレッシュが済んでいない領域を動き探索部１０９が参照しているかどうかを判定する（ステップ３０４）。判定結果がＹＥＳの場合は、制御部１１１は、符号化モードとしてイントラ符号化を選択し、スイッチ１０２に対して指示を出す（ステップ３０５）。
【００３３】
また、ステップ３０４の判定結果がＮＯの場合は、制御部１１１は、コスト計算部１１０の計算結果に基づき、イントラ符号化、フレーム間符号化のうち符号化コストの低いほうを現在のマクロブロックの符号化モードとして選択し、スイッチ１０２に対して指示を出す（ステップ３０６）。
【００３４】
以上のように、本実施例によれば、リフレッシュ領域をシフトする際に動き補償の補償範囲以上常にオーバーラップさせる必要が無くなるため、リフレッシュ領域の幅を必要以上に広げる必要が無い。したがって局所的な符号量の発生の増大を最小限に抑えることが可能になる。それにより、画質の向上を図ることが可能である。
【００３５】
また、動き補償の補償範囲以上オーバーラップさせる必要がないためリフレッシュ領域のシフト量を相対的に減少する必要がない。したがってリフレッシュ領域が全画面を一巡するまでに要する時間を小さくすることができ、エラー発生時の復帰を速やかにすることが可能になる。
【００３６】
なお、以上の各実施例ではリフレッシュ領域の形状は縦長のストライプ状の例を示したが、横長のストライプ状の形状であっても同様の効果を得ることが可能である。
また以上の各実施例ではリフレッシュ領域をシフトする際、全くオーバーラップしない場合を示したが、任意の幅でオーバーラップするようにしてもよい。実施例１においてオーバーラップがある場合にはその分動き探索範囲を制限が緩和され、動き補償精度が向上するため高画質化につながる。オーバーラップの幅を大きくし過ぎなければそれによる符号量の増加は必要最小限にすることが可能である。
【００３７】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【００３８】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Solid State Drive）等の記録装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
【００３９】
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【００４０】
１０１  減算器
１０２  スイッチ
１０３  直交変換部
１０４  量子化部
１０５  エントロピー符号化部
１０６  逆量子化部
１０７  逆直交変換部
１０８  参照画像メモリ
１０９  動き探索部
１１０  コスト計算部
１１１  制御部
【図１】
2011205465.tif 000003
【図２】
2011205465.tif 000004
【図３】
2011205465.tif 000005
【図４】
2011205465.tif 000006
【図５】
2011205465.tif 000007