(57)【要約】【課題】  フレーム内予測符号化において最適な予測モードを選択することが可能な符号化装置、及び、この符号化装置に適用されるプログラムを提供する。【解決手段】  複数種類の予測モードに従って、符号化対象画像に含まれる画素に基づいて予測ブロックを生成するフレーム内予測用予測画像生成部１０８と、符号化対象画像内で符号化対象ブロックに隣接するブロックである隣接ブロックを符号化した際に適用された予測モードによって特定される第１予測モードと、フレーム内予測用予測ブロックと符号化対象ブロックとの差分である予測誤差を直交変換し、直交変換して得られた値の絶対値の総和である直交変換値総和（ＳＡＴＤ）が最小となる予測モードである第２予測モードとにＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法を適用して、符号化対象ブロックを符号化する際に適用する予測モードを選択する符号化制御部１０１とを符号化装置が備える。【選択図】  図１
2006304107.tif 000002
【特許請求の範囲】
【請求項１】
符号化の対象となる符号化対象画像に含まれる画素を用いて、前記符号化対象画像に含まれるブロックである符号化対象ブロックを符号化する符号化装置であって、
複数種類の予測モードに従って、前記符号化対象画像に含まれる画素に基づいて予測ブロックを生成する予測ブロック生成部と、
前記予測ブロック生成部によって生成された前記予測ブロックと前記符号化対象ブロックとの差分である予測誤差を直交変換し、直交変換して得られた値の絶対値の総和である直交変換値総和を予測モード毎に算出する算出部と、
前記符号化対象画像内で前記符号化対象ブロックに隣接するブロックである隣接ブロックを符号化した際に適用された予測モードによって特定される第１予測モードと、前記算出部によって算出された前記直交変換値総和が最小となる予測モードである第２予測モードとにＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法を適用して、前記符号化対象ブロックを符号化する際に適用する予測モードを選択する予測モード選択部とを備えることを特徴とする符号化装置。
【請求項２】
前記算出部は、前記予測誤差の絶対値の総和である予測誤差総和を予測モード毎に算出し、
前記予測モード選択部は、前記第１予測モード及び前記第２予測モードに加えて、前記算出部によって算出された前記予測誤差総和が最小となる予測モードである第３予測モードにＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法を適用して、前記符号化対象ブロックを符号化する際に適用する予測モードを選択することを特徴とする請求項１に記載の符号化装置。
【請求項３】
符号化の対象となる符号化対象画像に含まれる画素を用いて、前記符号化対象画像に含まれるブロックである符号化対象ブロックを符号化する符号化装置に適用されるプログラムであって、コンピュータに、
複数種類の予測モードに従って、前記符号化対象画像に含まれる画素に基づいて予測ブロックを生成する工程Ａと、
前記工程Ａで生成された前記予測ブロックと前記符号化対象ブロックとの差分である予測誤差を直交変換し、直交変換して得られた値の絶対値の総和である直交変換値総和を予測モード毎に算出する工程Ｂと、
前記符号化対象画像内で前記符号化対象ブロックに隣接するブロックである隣接ブロックを符号化した際に適用された予測モードによって特定される第１予測モードと、前記工程Ｂで算出された前記直交変換値総和が最小となる予測モードである第２予測モードとにＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法を適用して、前記符号化対象ブロックを符号化する際に適用する予測モードを選択する工程Ｃとを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フレーム内予測によってブロックを符号化する符号化装置、及び、この符号化装置に適用されるプログラムに関する。
【背景技術】
【０００２】
従来、Ｈ．２６４/ＡＶＣ等のように、符号化の対象となるフレーム（以下、符号化対象フレーム）を複数のブロックに分割し、符号化対象フレームをブロック毎に符号化する技術が一般的に広く知られている。また、フレーム内予測符号化（イントラ予測符号化）では、符号化の対象となるブロック（以下、符号化対象ブロック）の画素値と、符号化対象ブロックの近傍に位置する画素を用いて予測される予測ブロックの画素値との差分が符号化される。
【０００３】
具体的には、フレーム内予測符号化では、予測ブロックを生成する際に適用可能な予測モードが９種類（予測モード０〜予測モード８）ある。また、符号化対象ブロックに応じて選択される予測モードが、符号化対象ブロックに隣接するブロック（既に符号化されたブロック）の予測モードと一致する場合には、両者が一致したことを示すフラグのみを生成することによって、符号化対象ブロックを符号化する際に発生するビット量（発生ビット量）を削減して、符号化効率（輝度のＳＮＲと発生ビット量との比率）を高めている。
【０００４】
上述したように、予測モードの選択は、符号化効率を高める上で重要であり、最適な予測モードの選択方法が必要である。
【０００５】
予測モードの選択方法としては、「Ｊｏｉｎｔ  Ｍｏｄｅｌ」と呼ばれる参照ソフトウェアを用いて、画質を優先して予測モードを選択する方法（Ｈｉｇｈ  Ｃｏｍｐｌｅｘ  Ｍｏｄｅ）と、処理速度を優先して予測モードを選択する方法（Ｌｏｗ  Ｃｏｍｐｌｅｘ  Ｍｏｄｅ）とが知られている。
【０００６】
画質が優先される方法（Ｈｉｇｈ  Ｃｏｍｐｌｅｘ  Ｍｏｄｅ）では、全ての予測モードに従って符号化対象ブロックを符号化して、発生ビット量（Ｒａｔｅ）と、符号化前の符号化対象ブロックと符号化後の符号化対象ブロックとの差分（Ｄｉｓｔｏｒｔｉｏｎ）とがそれぞれ算出される。また、発生ビット量（Ｒａｔｅ）と差分（Ｄｉｓｔｏｒｔｉｏｎ）とに基づいて算出されるコスト値を判定基準として予測モードが選択される（Ｒａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法）。
【０００７】
一方、処理速度が優先される方法（Ｌｏｗ  Ｃｏｍｐｌｅｘ  Ｍｏｄｅ）では、全ての予測モードに従って生成される予測ブロックと符号化対象ブロックとの差分（予測誤差）がそれぞれ算出される。次いで、予測誤差の絶対値の総和（ＳＡＤ；Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）、又は、予測誤差を直交変換して得られた値の総和（ＳＡＴＤ；Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｔｒａｎｓｆｏｒｍｅｄ  Ｄｉｆｆｅｒｅｎｃｅ）が算出される。さらに、ＳＡＤ（又はＳＡＴＤ）と予測モードを特定するためのビット量とに基づいて算出されるコスト値を判定基準として予測モードが選択される。
【０００８】
ここで、画質が優先される方法（Ｈｉｇｈ  Ｃｏｍｐｌｅｘ  Ｍｏｄｅ）では、全ての予測モードに従って符号化対象ブロックを符号化する必要があり、演算量が膨大な量となるため、演算量が制約された状況では、この方法を用いることができない。また、回路規模が大きくなる。
【０００９】
一方、処理速度が優先される方法（Ｌｏｗ  Ｃｏｍｐｌｅｘ  Ｍｏｄｅ）では、Ｒａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法が用いられていないため、画質が優先される方法（Ｈｉｇｈ  Ｃｏｍｐｌｅｘ  Ｍｏｄｅ）に比べて、演算量の削減や回路規模の縮小を図ることができるが、符号化効率が低下する。
【００１０】
このように、画質が優先される方法（Ｈｉｇｈ  Ｃｏｍｐｌｅｘ  Ｍｏｄｅ）と処理速度が優先される方法（Ｌｏｗ  Ｃｏｍｐｌｅｘ  Ｍｏｄｅ）とは、演算量（処理速度）等と符号化効率との観点でトレードオフの関係を有する。
【００１１】
さらに、演算量等と符号化効率とのバランスをとる方法として、Ｒａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法が適用される予測モードの数を削減する方法も提案されている（例えば、非特許文献１）。
【００１２】
具体的には、この方法では、予測誤差の絶対値の総和（ＳＡＤ）が最も小さい予測モードと、符号化対象ブロックの上側又は左側に隣接するブロック（既に符号化されたブロック）の予測モードのうち、予測モード番号が最小となる予測モードとにＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法を適用することによって、予測モードを選択する。
【００１３】
このように、上述した方法は、予測誤差の絶対値の総和（ＳＡＤ）が小さければ、発生ビット量が少なくなるという観点から、予測誤差の絶対値の総和（ＳＡＤ）が最も小さい予測モードにＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法が適用される。
【非特許文献１】高木  幸一、外２名，「Ｈ．２６４｜ＡＶＣにおけるイントラ予測高速化の一検討」，社団法人情報処理学会，２００３年１２月，Ｖｏｌ．２００３  Ｎｏ．１２５（２００３−ＡＶＭ−４３）
【発明の開示】
【発明が解決しようとする課題】
【００１４】
しかしながら、上述した方法では、予測誤差の絶対値の総和（ＳＡＤ）が小さい場合であっても、予測誤差が均一でない場合には、予測誤差を直交変換した際に得られる高周波成分が多くなり、発生ビット量も多くなる。すなわち、上述した方法では、最適な予測モードが選択されない場合があった。
【００１５】
そこで、本発明は上述した課題を解決するためになされたものであり、フレーム内予測符号化において最適な予測モードを選択することが可能な符号化装置、及び、この符号化装置に適用されるプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１６】
本発明の第１の特徴は、符号化の対象となる符号化対象画像に含まれる画素を用いて、符号化対象画像に含まれるブロックである符号化対象ブロックを符号化する符号化装置が、複数種類の予測モードに従って、符号化対象画像に含まれる画素に基づいて予測ブロック（フレーム内予測用予測ブロック）を生成する予測ブロック生成部（フレーム内予測用予測画像生成部１０８）と、予測ブロック生成部によって生成された予測ブロックと符号化対象ブロックとの差分である予測誤差を直交変換し（アダマール変換し）、直交変換して得られた値の絶対値の総和である直交変換値総和（ＳＡＴＤ）を予測モード毎に算出する算出部（符号化制御部１０１）と、符号化対象画像内で符号化対象ブロックに隣接するブロックである隣接ブロックを符号化した際に適用された予測モードによって特定される第１予測モードと、算出部によって算出された直交変換値総和が最小となる予測モードである第２予測モードとにＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法を適用して、符号化対象ブロックを符号化する際に適用する予測モードを選択する予測モード選択部（符号化制御部１０１）とを備えることを要旨とする。
【００１７】
かかる特徴によれば、予測モード選択部が、隣接ブロックの予測モードによって特定される第１予測モードと、ＳＡＴＤが最小となる第２予測モードとにＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法を適用して、符号化対象ブロックを符号化する際に用いる予測モードを選択することにより、符号化装置は、フレーム内予測符号化において最適な予測モードを選択することができる。すなわち、符号化装置は、予測誤差が均一でない場合であっても、最適な予測モードを選択することができる。
【００１８】
本発明の第２の特徴は、本発明の第１の特徴において、算出部が、予測誤差の絶対値の総和である予測誤差総和（ＳＡＤ）を予測モード毎に算出し、予測モード選択部が、第１予測モード及び第２予測モードに加えて、算出部によって算出された予測誤差総和が最小となる予測モードである第３予測モードにＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法を適用して、符号化対象ブロックを符号化する際に適用する予測モードを選択することを要旨とする。
【００１９】
本発明の第３の特徴は、符号化の対象となる符号化対象画像に含まれる画素を用いて、符号化対象画像に含まれるブロックである符号化対象ブロックを符号化する符号化装置に適用されるプログラムが、複数種類の予測モードに従って、符号化対象画像に含まれる画素に基づいて予測ブロックを生成する工程Ａと、工程Ａで生成された予測ブロックと符号化対象ブロックとの差分である予測誤差を直交変換し、直交変換して得られた値の絶対値の総和である直交変換値総和を予測モード毎に算出する工程Ｂと、符号化対象画像内で符号化対象ブロックに隣接するブロックである隣接ブロックを符号化した際に適用された予測モードによって特定される第１予測モードと、工程Ｂで算出された直交変換値総和が最小となる予測モードである第２予測モードとにＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法を適用して、符号化対象ブロックを符号化する際に適用する予測モードを選択する工程Ｃとをコンピュータに実行させることを要旨とする。
【発明の効果】
【００２０】
本発明によれば、フレーム内予測符号化において最適な予測モードを選択することが可能な符号化装置、及び、この符号化装置に適用されるプログラムを提供することを目的とする。
【発明を実施するための最良の形態】
【００２１】
［第１実施形態］
（本発明の第１実施形態に係る符号化装置の構成）
以下において、本発明の第１実施形態に係る符号化装置の構成について、図面を参照しながら説明する。図１は、本発明の第１実施形態に係る符号化装置１００の構成を示すブロック図である。
【００２２】
図１に示すように、符号化装置１００は、符号化制御部１０１と、差分算出部１０２と、動きベクトル検出部１０３と、直交変換／量子化部１０４と、エントロピー符号化部１０５と、逆量子化部／逆直交変換１０６と、加算部１０７と、フレーム内予測用予測画像生成部１０８と、デブロックフィルタ１０９と、フレーム間予測用予測画像生成部１１０と、スイッチ１１１とを有する。
【００２３】
また、画像信号である入力信号は、符号化制御部１０１及び動きベクトル検出部１０３に入力される。具体的には、符号化の対象となる画像（以下、符号化対象画像）に対応する入力信号が、符号化制御部１０１及び動きベクトル検出部１０３に入力される。
【００２４】
符号化制御部１０１は、符号化対象画像に対応する入力信号に応じて、符号化対象画像の符号化方法を決定する。具体的には、符号化制御部１０１は、符号化対象画像がフレーム間予測（双方向予測又は前方予測）によって符号化される画像である場合には、スイッチ１１１を切替えることによって、差分算出部１０２とフレーム間予測用予測画像生成部１１０とを接続する。
【００２５】
一方、符号化制御部１０１は、符号化対象画像がフレーム内予測によって符号化される画像である場合には、スイッチ１１１を切替えることによって、差分算出部１０２とフレーム内予測用予測画像生成部１０８とを接続する。
【００２６】
また、符号化制御部１０１は、符号化対象画像がフレーム内予測によって符号化される画像である場合には、複数種類（本実施形態では、９種類）の予測方向にそれぞれ対応する予測モードの中からいずれかの予測モードをブロック単位で選択する。
【００２７】
具体的には、符号化制御部１０１は、符号化の対象となるブロック（以下、符号化対象ブロック）に符号化対象画像内で隣接するブロック（以下、隣接ブロック）に適用された予測モードに基づいて、第１予測モードを特定する。例えば、符号化制御部１０１は、符号化対象ブロックの左側に隣接する隣接ブロックの予測モード及び符号化対象ブロックの上側に隣接する隣接ブロックの予測モードのうち、モード番号が小さい予測モードを第１予測モードとして特定する。
【００２８】
また、符号化制御部１０１は、全ての予測モード（９種類の予測モード）に従って、フレーム内予測で用いる予測ブロック（以下、フレーム内予測用予測ブロック）を生成することをフレーム内予測用予測画像生成部１０８に指示し、全ての予測モード（９種類の予測モード）に従って、フレーム内予測用予測ブロックと符号化対象ブロックとの差分（以下、予測誤差）を算出することを差分算出部１０２に指示する。
【００２９】
さらに、符号化制御部１０１は、差分算出部１０２によって算出された予測誤差を直交変換（アダマール変換）して得られた値の絶対値の総和（ＳＡＴＤ；Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｔｒａｎｓｆｏｒｍｅｄ  Ｄｉｆｆｅｒｅｎｃｅ）を算出する。また、符号化制御部１０１は、算出したＳＡＴＤが最小となる予測モードを第２予測モードとして特定する。
【００３０】
このとき、符号化制御部１０１は、第１予測モード及び第２予測モードに従って算出された予測誤差を直交変換／量子化部１０４に入力することを差分算出部１０２に指示する。
【００３１】
また、符号化制御部１０１は、特定した第１予測モード及び第２予測モードにＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法を適用して、第１予測モード及び第２予測モードに対応するコスト値を算出する。また、符号化制御部１０１は、算出したコスト値に基づいて、符号化対象ブロックを符号化する際に適用する予測モードを選択する。なお、符号化制御部１０１は、選択した予測モードに従って算出された予測誤差を出力信号として出力することをエントロピー符号化部１０５に指示する。
【００３２】
差分算出部１０２は、符号化対象ブロックがフレーム間予測によって符号化される場合には、フレーム間予測用予測画像生成部１１０から取得するフレーム間予測用予測ブロックと符号化対象ブロックとの予測誤差を算出する。
【００３３】
また、差分算出部１０２は、符号化対象ブロックがフレーム内予測によって符号化される場合には、全ての予測モード（９種類の予測モード）に従って、フレーム内予測用予測画像生成部１０８から取得するフレーム内予測用予測ブロックと符号化対象ブロックとの予測誤差をそれぞれ算出する。なお、差分算出部１０２は、各予測モードに従って算出された予測誤差を符号化制御部１０１に入力する。
【００３４】
さらに、差分算出部１０２は、符号化制御部１０１によって指示された予測モード（第１予測モード及び第２予測モード）に従って算出した予測誤差を直交変換／量子化部１０４に入力する。
【００３５】
動きベクトル検出部１０３は、デブロックフィルタ１０９から取得する符号化済ブロックと符号化対象ブロックとに基づいて、符号化対象ブロックの符号化に用いる動きベクトルを算出する。また、動きベクトル検出部１０３は、算出した動きベクトルをフレーム間予測用予測画像生成部１１０及びエントロピー符号化部１０５に入力する。
【００３６】
直交変換／量子化部１０４は、差分算出部１０２から取得する予測誤差を直交変換し、予測誤差を直交変換して得られた値を量子化する。また、直交変換／量子化部１０４は、量子化された予測誤差（量子化予測誤差）をエントロピー符号化部１０５及び逆量子化部／逆直交変換１０６に入力する。
【００３７】
エントロピー符号化部１０５は、直交変換／量子化部１０４から取得する量子化予測誤差、動きベクトル検出部１０３から取得する動きベクトルを符号化する。具体的には、エントロピー符号化部１０５は、ＣＡＶＬＣ（Ｃｏｎｔｅｘｔ−Ａｄａｐｔｉｖｅ  Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ）又はＣＡＢＡＣ（Ｃｏｎｔｅｘｔ−Ａｄａｐｔｉｖｅ  Ｂｉｎａｒｙ  Ａｒｉｔｈｍｅｔｉｃ  Ｃｏｄｉｎｇ）に従って、量子化予測誤差及び動きベクトルを符号化する。
【００３８】
逆量子化部／逆直交変換１０６は、直交変換／量子化部１０４から取得する量子化予測誤差を逆量子化し、量子化予測誤差を逆量子化して得られた値を逆直交変換する。また、逆量子化部／逆直交変換１０６は、逆直交変換して得られた値（すなわち、予測誤差）を加算部１０７に入力する。
【００３９】
加算部１０７は、符号化対象ブロックがフレーム間予測で符号化される場合には、フレーム間予測用予測画像生成部１１０から取得するフレーム間予測用予測ブロックに、逆量子化部／逆直交変換１０６から取得する予測誤差を加算して、符号化済ブロックを生成する。また、加算部１０７は、生成した符号化済ブロックをデブロックフィルタ１０９に入力する。
【００４０】
一方、加算部１０７は、符号化対象ブロックがフレーム内予測で符号化される場合には、フレーム内予測用予測画像生成部１０８から取得するフレーム内予測用予測ブロックに、逆量子化部／逆直交変換１０６から取得する予測誤差を加算して、符号化済ブロックを生成する。また、加算部１０７は、生成した符号化済ブロックをフレーム内予測用予測画像生成部１０８及びデブロックフィルタ１０９に入力する。
【００４１】
フレーム内予測用予測画像生成部１０８は、全ての予測モード（９種類の予測モード）に従って、符号化対象ブロックを符号化する際に用いられるフレーム内予測用予測ブロックを生成する。具体的には、フレーム内予測用予測画像生成部１０８は、符号化対象ブロックの左に位置する符号化済の隣接ブロック、上に位置する符号化済の隣接ブロック、左上に位置する符号化済の隣接ブロック、又は、右上に位置する符号化済の隣接ブロックを参照して、フレーム内予測用予測ブロックを生成する。
【００４２】
デブロックフィルタ１０９は、加算部１０７から入力される符号化済ブロックによって構成される符号化済フレーム内で生じるブロック歪を除去する。具体的には、デブロックフィルタ１０９は、各符号化済ブロックがフレーム内予測によって符号化されているか否か、符号化済ブロックとこれに隣接する符号化済隣接ブロックとの境界に位置する画素であるか否か等に基づいて、各画素のブロック境界強度（Ｂｓ値；Ｂｏｕｎｄａｒｙ  Ｓｔｒｅｎｇｔｈ）を算出し、算出したＢｓ値に応じてブロック歪を除去する。
【００４３】
また、デブロックフィルタ１０９は、ブロック歪が除去された符号化済ブロックを動きベクトル検出部１０３及びフレーム間予測用予測画像生成部１１０に入力する。
【００４４】
フレーム間予測用予測画像生成部１１０は、動きベクトル検出部１０３から取得する動きベクトルと、デブロックフィルタ１０９から取得する符号化済フレームとに基づいて、フレーム間予測で用いられる予測ブロックであるフレーム間予測用予測ブロックを生成する。
【００４５】
（本発明の第１実施形態に係る予測モードの種類）
以下において、本発明の第１実施形態に係る予測モードの種類について、図面を参照しながら説明する。図２は、本発明の第１実施形態に係る予測モードの種類を示す図である。なお、本実施形態では、ブロックのサイズが４×４画素である場合を例に説明する。また、各予測モードには、それぞれモード番号（０〜９）が割当てられ、モード番号の数が小さい予測モードの出現頻度は、モード番号の数が大きい予測モードの出現頻度よりも高い。
【００４６】
図２（ａ）〜図２（ｉ）に示すように、符号化済ブロックからフレーム内予測用予測ブロックを生成する際に用いられる予測モードは９種類である。具体的には、図２（ａ）に示すように、予測モード０では、符号化対象ブロックの上に隣接する隣接ブロック（隣接ブロックの下端の４画素）が参照され、垂直方向に各画素が予測されてフレーム内予測用予測ブロックが生成される。図２（ｂ）に示すように、予測モード１では、符号化対象ブロックの左に隣接する隣接ブロック（隣接ブロックの右端に位置する４画素）が参照され、垂平方向に各画素が予測されてフレーム内予測用予測ブロックが生成される。図２（ｃ）に示すように予測モード２では、符号化対象ブロックの上に隣接する隣接ブロック（隣接ブロックの下端の４画素）及び符号化対象ブロックの左に隣接する隣接ブロック（隣接ブロックの右端に位置する４画素）が参照され、各画素の平均値によってフレーム内予測用予測ブロックが生成される。
【００４７】
同様に、図２（ｄ）〜図２（ｉ）に示すように、予測モード３〜予測モード８でも、符号化対象ブロックに隣接する隣接ブロックの画素を用いてフレーム内予測用予測ブロックが生成される。
【００４８】
（本発明の第１実施形態に係る予測モードの選択方法）
以下において、本発明の第１実施形態に係る予測モードの選択方法について、図面を参照しながら説明する。図３は、本発明の第１実施形態に係る予測モードの選択方法を示すフロー図である。
【００４９】
図３に示すように、ステップ１１０において、符号化装置１００は、符号化対象ブロックに隣接する隣接ブロックに適用された予測モードに基づいて、第１予測モードを特定する。例えば、符号化装置１００は、符号化対象ブロックの左側に隣接する隣接ブロックの予測モード及び符号化対象ブロックの上側に隣接する隣接ブロックの予測モードのうち、モード番号が小さい予測モードを第１予測モードとして特定する。
【００５０】
ステップ１２０において、符号化装置１００は、全ての予測モード（９種類の予測モード）に従ってそれぞれ生成されたフレーム内予測用予測ブロックと符号化対象ブロックとの予測誤差を算出する。
【００５１】
ステップ１３０において、符号化装置１００は、ステップ１２０で算出された予測誤差を予測モード毎に直交変換（アダマール変換）する。
【００５２】
ステップ１４０において、符号化装置１００は、ステップ１３０で予測誤差を直交変換して得られた値の絶対値の総和（ＳＡＴＤ）を予測モード毎に算出する。
【００５３】
ステップ１５０において、符号化装置１００は、ステップ１４０で算出したＳＡＴＤが最小となる予測モードを第２予測モードとして特定する。
【００５４】
ステップ１６０において、符号化装置１００は、ステップ１１０で特定された第１予測モードに従って、符号化対象ブロックを符号化するとともに、ステップ１５０で特定された第２予測モードに従って、符号化対象ブロックを符号化する。
【００５５】
ステップ１７０において、符号化装置１００は、Ｒａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法（ＲＤＯ法）によって第１予測モード及び第２予測モードのコスト値を算出する。
【００５６】
ステップ１８０において、符号化装置１００は、第１予測モード及び第２予測モードのコスト値に基づいて、符号化対象ブロックを符号化する際に用いる予測モードを選択する。具体的には、符号化装置１００は、ステップ１７０で算出されたコスト値が最小となる予測モードを、符号化対象ブロックを符号化する際に用いる予測モードとして選択する。
【００５７】
（本発明の第１実施形態に係る符号化装置の作用及び効果）
本発明の第１実施形態に係る符号化装置１００によれば、符号化制御部１０１が、隣接ブロックの予測モードによって特定される第１予測モードと、ＳＡＴＤが最小となる第２予測モードとにＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法を適用して、符号化対象ブロックを符号化する際に用いる予測モードを選択することにより、符号化装置１００は、フレーム内予測符号化において最適な予測モードを選択することができる。すなわち、符号化装置１００は、予測誤差が均一でない場合であっても、最適な予測モードを選択することができる。
【００５８】
［第２実施形態］
（本発明の第２実施形態に係る予測モードの選択方法）
以下において、本発明の第２実施形態に係る予測モードの選択方法について、図面を参照しながら説明する。なお、以下においては、上述した第１実施形態との相違点を主として説明する。
【００５９】
具体的には、第１実施形態では、隣接ブロックの予測モードによって特定される第１予測モードと、ＳＡＴＤが最小となる第２予測モードとにＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法が適用されるが、第２実施形態では、第１予測モード及び第２予測モードに加えて、予測誤差の絶対値の総和（ＳＡＤ；Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）が最小となる予測モードである第３予測モードにＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法が適用される。
【００６０】
図４は、本発明の第２実施形態に係る予測モードの選択方法を示すフロー図である。なお、ステップ１１０〜ステップ１５０は、上述した第１実施形態と同様であるため、これらの説明を省略する。
【００６１】
図４に示すように、ステップ１２２において、符号化装置１００は、ステップ１２０で算出された予測誤差の絶対値の総和（ＳＡＤ）を予測モード毎に算出する。
【００６２】
ステップ１２４において、符号化装置１００は、ステップ１２２で算出されたＳＡＤが最小となる予測モードを第３予測モードとして特定する。
【００６３】
ステップ１６０ａにおいて、符号化装置１００は、ステップ１１０で特定された第１予測モードに従って、符号化対象ブロックを符号化するとともに、ステップ１５０で特定された第２予測モードに従って、符号化対象ブロックを符号化する。さらに、符号化装置１００は、ステップ１２４で特定された第３予測モードに従って、符号化対象ブロックを符号化する。
【００６４】
ステップ１７０ａにおいて、符号化装置１００は、Ｒａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法（ＲＤＯ法）によって第１予測モード、第２予測モード及び第３予測モードのコスト値を算出する。
【００６５】
ステップ１８０ａにおいて、符号化装置１００は、第１予測モード、第２予測モード及び第３予測モードのコスト値に基づいて、符号化対象ブロックを符号化する際に用いる予測モードを選択する。具体的には、符号化装置１００は、ステップ１７０で算出されたコスト値が最小となる予測モードを、符号化対象ブロックを符号化する際に用いる予測モードとして選択する。
【００６６】
［比較結果］
以下において、本発明の一実施形態に係る予測モード選択方法と、従来技術に係る予測モード選択方法との比較結果について、図面を参照しながら説明する。図５は、本発明の一実施形態に係る予測モード選択方法と、従来技術に係る予測モード選択方法との比較結果を示す図である。
【００６７】
なお、図５では、（ａ）画質優先方法、（ｂ）速度優先方法、（ｃ）ＳＡＤ選択方法を従来技術に係る予測モードとして挙げている。（ａ）画質優先方法とは、画質が優先される予測モード選択方法（Ｈｉｇｈ  Ｃｏｍｐｌｅｘ  Ｍｏｄｅ）である。具体的には、（ａ）画質優先方法では、全ての予測モードにＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法が適用される。
【００６８】
また、（ｂ）速度優先方法とは、処理速度が優先される予測モード選択方法（Ｌｏｗ  Ｃｏｍｐｌｅｘ  Ｍｏｄｅ）である。具体的には、（ｂ）速度優先方法では、全ての予測モードについて、ＳＡＤ（又は、ＳＡＴＤ）と予測モードを特定するためのビット量とを算出し、これらに基づいて算出されるコスト値を判定基準として予測モードが選択される。
【００６９】
さらに、（ｃ）ＳＡＤ選択方法では、隣接ブロックの予測モードのうち、モード番号が最小となる予測モードと、全ての予測モードについて算出されるＳＡＤが最小となる予測モードとにＲａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ最適化法が適用される。
【００７０】
図５に示すように、（ａ）画質優先方法では、符号化効率が高いが、処理時間が長くなった。また、（ｂ）速度優先方法では、処理時間が短いが、符号化効率が低くなった。さらに、（ｃ）ＳＡＤ選択方法では、処理時間が長くなることを抑制しながら、ある程度の符号化効率が得られた。
【００７１】
これに対して、（ｄ）第１実施形態の予測モード選択方法及び（ｅ）第２実施形態の予測モード選択方法では、処理時間が長くなることを抑制しながら、（ｃ）ＳＡＤ選択方法よりも高い符号化効率が得られた。
【図面の簡単な説明】
【００７２】
【図１】本発明の第１実施形態に係る符号化装置１００の構成を示すブロック図である。
【図２】本発明の第１実施形態に係る予測モードの種類を示す図である。
【図３】本発明の第１実施形態に係る予測モードの選択方法を示すフロー図である。
【図４】本発明の第２実施形態に係る予測モードの選択方法を示すフロー図である
【図５】本発明と従来技術との比較結果を示す図である。
【符号の説明】
【００７３】
１００・・・符号化装置、１０１・・・符号化制御部、１０２・・・差分算出部、１０３・・・動きベクトル検出部、１０４・・・直交変換／量子化部、１０５・・・エントロピー符号化部、１０６・・・逆量子化部／逆直交変換、１０７・・・加算部、１０８・・・フレーム内予測用予測画像生成部、１０９・・・デブロックフィルタ、１１０・・・フレーム間予測用予測画像生成部、１１１・・・スイッチ
【図１】
2006304107.tif 000003
【図２】
2006304107.tif 000004
【図３】
2006304107.tif 000005
【図４】
2006304107.tif 000006
【図５】
2006304107.tif 000007