(57)【要約】安定したレート制御処理が含まれる符号化処理を、演算量を大きく増加させずに高速で実行できる動画像符号化装置を提供する。動画像符号化装置１０は、符号化対象画像を構成する画像のデータを、複数の量子化パラメータを使用して量子化パラメータごとにそれぞれ量子化する量子化部１１と、複数の量子化された画像のデータを、それぞれ量子化される際に使用された量子化パラメータと対応付けて記憶する記憶部１２と、記憶部１２から、所定の量子化パラメータを使用して所定の量子化された画像のデータを抽出する抽出部１３と、抽出された所定の量子化された画像のデータを符号化する符号化部１４と、符号化部１４による符号化結果に基づいて、抽出部１３が次に所定の量子化された画像のデータを抽出する際に使用される所定の量子化パラメータを決定する決定部１５とを備える。
2016194380.tif 000002
【特許請求の範囲】
【請求項１】
符号化対象画像を構成する画像のデータを、複数の量子化パラメータを使用して前記量子化パラメータごとにそれぞれ量子化する量子化手段と、
複数の量子化された画像のデータを、それぞれ量子化される際に使用された前記量子化パラメータと対応付けて記憶する記憶手段と、
前記記憶手段から、所定の量子化パラメータを使用して所定の量子化された画像のデータを抽出する抽出手段と、
抽出された前記所定の量子化された画像のデータを符号化する符号化手段と、
前記符号化手段による符号化結果に基づいて、前記抽出手段が次に所定の量子化された画像のデータを抽出する際に使用される所定の量子化パラメータを決定する決定手段とを備える
ことを特徴とする動画像符号化装置。
【請求項２】
所定の量子化された画像のデータは、所定の量子化パラメータと対応付けられて記憶手段に記憶されている量子化された画像のデータである
請求項１記載の動画像符号化装置。
【請求項３】
所定の量子化された画像のデータは、所定の量子化パラメータに値が最も近い量子化パラメータと対応付けられて記憶手段に記憶されている量子化された画像のデータである
請求項１記載の動画像符号化装置。
【請求項４】
量子化手段が使用した複数の量子化パラメータ以外の量子化パラメータを使用して、符号化対象画像を構成する画像のデータを量子化する第２量子化手段を備え、
抽出手段は、記憶手段の代わりに前記第２量子化手段から所定の量子化された画像のデータを抽出する
請求項１記載の動画像符号化装置。
【請求項５】
量子化手段は、画像のデータを量子化した後、量子化された前記画像のデータを所定の手順でスキャンし、
記憶手段は、スキャンされた前記画像のデータを、量子化された前記画像のデータと対応付けて記憶し、
抽出手段は、所定の量子化された画像のデータと、前記所定の量子化された画像のデータと対応付けられて前記記憶手段に記憶されているスキャンされた画像のデータを抽出し、
符号化手段は、前記所定の量子化された画像のデータの代わりに、抽出された前記スキャンされた画像のデータを符号化する
請求項１から請求項４のうちのいずれか１項に記載の動画像符号化装置。
【請求項６】
符号化対象画像を構成する画像に対して動き補償予測処理を行うことによって動き補償予測画像を生成する動き予測手段と、
前記画像から生成された前記動き補償予測画像を減算することによって予測誤差画像を生成する減算手段と、
生成された前記予測誤差画像に対して変換処理を行うことによって変換係数列を生成する変換手段とを備え、
量子化手段は、生成された前記変換係数列を、符号化対象画像を構成する画像のデータとして量子化する
請求項１から請求項５のうちのいずれか１項に記載の動画像符号化装置。
【請求項７】
符号化対象画像を構成する画像に対して画面内予測処理を行うことによって画面内予測画像を生成する画面内予測手段を備え、
減算手段は、前記画像から生成された前記画面内予測画像を減算することによって予測誤差画像を生成する
請求項６記載の動画像符号化装置。
【請求項８】
量子化手段は、符号化対象画像を構成する複数の画像のデータを並列に量子化する
請求項１から請求項７のうちのいずれか１項に記載の動画像符号化装置。
【請求項９】
符号化対象画像を構成する画像のデータを、複数の量子化パラメータを使用して前記量子化パラメータごとにそれぞれ量子化し、
複数の量子化された画像のデータを、それぞれ量子化される際に使用された前記量子化パラメータと対応付けて記憶し、
記憶された複数の量子化された画像のデータから、所定の量子化パラメータを使用して所定の量子化された画像のデータを抽出し、
抽出された前記所定の量子化された画像のデータを符号化し、
符号化結果に基づいて、次に所定の量子化された画像のデータが抽出される際に使用される所定の量子化パラメータを決定する
ことを特徴とする動画像符号化方法。
【請求項１０】
コンピュータに、
符号化対象画像を構成する画像のデータを、複数の量子化パラメータを使用して前記量子化パラメータごとにそれぞれ量子化する量子化処理、
複数の量子化された画像のデータを、それぞれ量子化される際に使用された前記量子化パラメータと対応付けて記憶する記憶処理、
記憶された複数の量子化された画像のデータから、所定の量子化パラメータを使用して所定の量子化された画像のデータを抽出する抽出処理、
抽出された前記所定の量子化された画像のデータを符号化する符号化処理、および
前記符号化処理による符号化結果に基づいて、次に所定の量子化された画像のデータが抽出される際に使用される所定の量子化パラメータを決定する決定処理
を実行させるための動画像符号化プログラムを記憶する記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、符号化処理を高速で実行できる動画像符号化装置、動画像符号化方法および動画像符号化プログラムを記録する記憶媒体に関する。
【背景技術】
【０００２】
動画像の圧縮符号化技術が広く普及している。動画像の圧縮符号化技術は、デジタル放送、光学ディスクによる映像コンテンツ頒布、インターネット等を経由した映像配信など、幅広い用途に利用されている。【０００３】
動画像信号を低ビットレート、高圧縮率かつ高画質で符号化することによって符号化データを生成したり、符号化された動画像を復号化したりする技術には、例えば、ITU(International Telecommunication Union)が標準化したH.261およびH.263がある。また、ISO(International Organization for Standardization)のMPEG(Moving Picture Expert Group)-1、MPEG-2、MPEG-4、SMPTE(Society of Motion Picture and Television Engineers)のVC-1などもある。H.261、H.263、MPEG-1、MPEG-2、MPEG-4、およびVC-1は、国際標準規格の技術として広く用いられている。【０００４】
また、非特許文献１に記載されている、ITUとISOが共同で規格化を行なったH.264/MPEG-4 AVC(Advanced Video Coding) （以下、H.264という。）も普及している。さらに、２０１３年に最新の動画像圧縮符号化規格として、非特許文献２に記載されているH.265/MPEG-H HEVC(High Efficiency Video Coding) （以下、H.265という。）が標準化された。H.265は、H.264と同等の映像品質を保ちながら、H.264に比べてデータサイズを半分程度に圧縮できる。H.265は、あらゆる分野に渡って幅広く活用される可能性がある。【０００５】
上記の動画像符号化技術は、動き補償予測、予測誤差画像の直交変換、直交変換係数の量子化、および量子化された直交変換係数のエントロピー符号化などの、複数の要素技術が組み合わせられて構成される。動画像符号化技術における符号化は、ハイブリッド符号化と呼ばれる。【０００６】
上記の動画像符号化技術は、動画像の特性の一つである時間軸方向の画像の相関性の高さが使用されるフレーム間予測を行うことによって、動画像の圧縮率を高くする。フレーム間予測では、一般的に時間的に近接する画像間における被写体や背景等の動き、位置ずれを補正することによって予測画像を生成する、動き補償予測の技術が利用される。【０００７】
予測方式としてフレーム間予測を用いる動画像符号化装置の構成の一例を図１１に示す。図１１は、一般的な動画像符号化装置の構成例を示すブロック図である。【０００８】
図１１に示す動画像符号化装置１００は、減算部１０１、変換部１０２、量子化部１０３、逆量子化部１０４、逆変換部１０５、加算部１０６、フィルタ部１０７、フレームバッファ１０８、スキャン部１０９、エントロピー符号化部１１０、レート制御部１１１、および動き予測部１１２を備える。【０００９】
動画像符号化装置１００に新たな画像が入力されると、動画像符号化装置１００は、所定のサイズの画像ブロック単位で符号化処理を行う。【００１０】
例えば、動画像圧縮符号化方式としてH.264が用いられた場合、動画像符号化装置１００は、マクロブロック（ＭＢ）と呼ばれる１６×１６画素のブロック単位で符号化処理を行う。また、動画像圧縮符号化方式としてH.265が用いられた場合、動画像符号化装置１００は、コーディングツリーユニット（ＣＴＵ）と呼ばれる１６×１６画素、３２×３２画素、または６４×６４画素などのブロック単位で符号化処理を行う。【００１１】
新たな画像が入力されると、動き予測部１１２は、フレームバッファ１０８に格納されている符号化済み画像の画像ブロックに対応する、入力画像の画像ブロックの位置変化を検出する。フレームバッファ１０８には、既に符号化されたフレームの画像データが格納されている。【００１２】
動き予測部１１２は、検出した位置変化に相当する動きベクトル情報を求める。また、動き予測部１１２は、求めた動きベクトル情報に基づいて動き補償予測処理を行い、動き補償予測画像を出力する。【００１３】
減算部１０１には、動き予測部１１２から動き補償予測画像が入力される。次いで、減算部１０１は、入力画像から動き補償予測画像を減算する。減算部１０１は、動き補償予測画像を減算することによって得られた画像を予測誤差画像とし、予測誤差画像を出力する。【００１４】
変換部１０２には、減算部１０１から予測誤差画像が入力される。変換部１０２は、入力された予測誤差画像に対して、DCT(Discrete Cosine Transform)と同様の直交変換処理を行う。変換部１０２は、直交変換処理を行うことによって変換係数列を生成し、生成された変換係数列を出力する。【００１５】
例えば、動画像圧縮符号化方式としてH.264が用いられた場合、直交変換処理は、４×４画素または８×８画素のブロック単位で行われる。また、動画像圧縮符号化方式としてH.265が用いられた場合、直交変換処理は、４×４画素、８×８画素、１６×１６画素、または３２×３２画素のいずれかのブロック単位で行われる。【００１６】
なお、変換部１０２は、DCTと同様の直交変換処理や、Wavelet変換などの他の変換処理を行うことによって予測誤差画像を変換してもよい。また、動画像符号化装置１００は、予測誤差画像に対して変換処理を行う変換部を必ずしも備えていなくてもよい。【００１７】
量子化部１０３には、変換部１０２から変換係数列が、レート制御部１１１から量子化パラメータ（ＱＰ）が、それぞれ入力される。量子化部１０３は、入力された量子化パラメータに基づいて、入力された変換係数列に対して量子化処理を行い、量子化された変換係数列を生成する。量子化部１０３は、生成された量子化された変換係数列を出力する。【００１８】
逆量子化部１０４には、量子化部１０３から量子化された変換係数列が入力される。逆量子化部１０４は、入力された量子化された変換係数列に対して逆量子化処理を行い、変換係数列を生成する。逆量子化部１０４は、生成された変換係数列を出力する。【００１９】
逆変換部１０５には、逆量子化部１０４から変換係数列が入力される。逆変換部１０５は、入力された変換係数列に対して逆整数変換処理を行い、予測誤差画像を生成する。逆変換部１０５は、生成された予測誤差画像を出力する。【００２０】
加算部１０６には、逆変換部１０５から予測誤差画像が、動き予測部１１２から予測画像が、それぞれ入力される。加算部１０６は、入力された予測誤差画像および予測画像を加算し、加算することによって生成された画像を出力する。【００２１】
フィルタ部１０７には、加算部１０６から予測誤差画像と予測画像が加算された画像が入力される。フィルタ部１０７は、入力された画像に対してフィルタ処理を行うことによって、ローカルデコード画像を生成する。【００２２】
フィルタ部１０７が行うフィルタ処理は、符号化により画像に発生する歪みを軽減する処理である。例えば、動画像圧縮符号化方式としてH.264およびH.265が用いられた場合、フィルタ処理には、デブロックフィルタが用いられる。また、動画像圧縮符号化方式としてH.265が用いられた場合、フィルタ処理には、Sample Adaptive Offsetも用いられる。【００２３】
フィルタ部１０７が生成したローカルデコード画像は、フレームバッファ１０８に格納される。ローカルデコード画像は、後続のフレームの符号化において利用される。【００２４】
また、スキャン部１０９には、量子化部１０３から量子化された変換係数列が入力される。スキャン部１０９は、入力された量子化された変換係数列に対して所定のスキャン処理を行い、量子化された変換係数列を並び替える。所定のスキャン処理は、例えば、ジグザグスキャンである。スキャン部１０９は、並び替えられた変換係数列を出力する。【００２５】
エントロピー符号化部１１０には、スキャン部１０９から並び替えられた変換係数列が入力される。エントロピー符号化部１１０は、入力された並び替えられた変換係数列に対して、所定の規則に従ってエントロピー符号化処理を行い、ビットストリームを生成する。エントロピー符号化部１１０は、生成されたビットストリームを出力する。【００２６】
例えば、動画像圧縮符号化方式としてH.264およびH.265が用いられた場合、エントロピー符号化処理には、コンテキスト適応算術符号化(CABAC:Context Adaptive Binary Arithmetic Coding)が使用される。また、動画像圧縮符号化方式としてH.264が用いられた場合、エントロピー符号化処理には、コンテキスト適応可変長符号化(CAVLC: Context-based Adaptive VideoLAN Client)が使用されることもある。【００２７】
レート制御部１１１には、エントロピー符号化部１１０からビットストリームが入力される。レート制御部１１１は、入力されたビットストリームの統計情報に基づいて、後続のブロックの量子化に用いられる量子化パラメータを算出する。【００２８】
レート制御部１１１が使用するビットストリームの統計情報は、例えばブロックごとの符号量、またはコンテキストごとの符号量である。量子化パラメータ算出処理の具体的な処理内容は、例えば、非特許文献３または非特許文献４に記載されている。【００２９】
例えば、動画像符号化装置１００は、出力するビットストリームのビットレートが指定され、指定されたビットレートに合致するようにレートを制御することを求められることが多い。レート制御部１１１は、指定されたビットレートに合致するようにレートを制御するレート制御処理を行う。【００３０】
例えば、H.265における具体的なレート制御処理の内容が、非特許文献４に記載されている。非特許文献４に記載されているレート制御処理では、各画像フレームの重要度などに基づいて各フレームのターゲットビット数（ＴCurrPic）が算出される。フレームの符号化処理では、フレームのビット数がＴCurrPicに合致するようにフィードバック制御が行われる。【００３１】
すなわち、所定のCTUが符号化される際、既に符号済みのCTU群において発生したビット数がＴCurrPicから差し引かれる。差し引かれた後のＴCurrPicの残りのビット数は、未符号化のCTU群に配分される。各CTUに割り当てられたビット数に基づいて、CTUの量子化処理で用いられる量子化パラメータが算出される。【００３２】
上記のように、動画像符号化装置では、動き予測処理、変換処理、量子化処理、逆量子化処理、逆変換処理、フィルタ処理の一連の画像処理および信号処理が、多数の画像に対して行われる。すなわち、一般的に動画像符号化処理の実行には、膨大な演算量が求められる。【００３３】
よって、汎用プロセッサがソフトウェアを制御することによって動画像符号化処理が行われる場合、高い動作周波数で動作するプロセッサが求められる。高い動作周波数で動作するプロセッサが使用されると、コストや消費電力が増大する課題が生じる。【００３４】
また、高い動作周波数で動作するプロセッサは、入力された動画像を入力と同時に処理するだけの演算能力を有していないことが多い。よって、高い動作周波数で動作するプロセッサが解像度の高い動画像を入力と同時に処理する場合、処理時間が長くなるという課題が生じる。【００３５】
符号化処理が専用ハードウェアで行われる場合においても高速に動作する演算回路が求められ、結局コストや消費電力が増大する課題が生じる。また、高速に動作する演算回路を用いるとハードウェア設計が複雑になり、開発期間が延びる可能性が高い。【００３６】
上記の課題を解決するため、汎用プロセッサに加え、動画像符号化処理に適した構造の他のプロセッサや演算回路等をアクセラレータとして利用することによって、画像処理や信号処理を、高効率かつ高速で実行する技術が開発されている。【００３７】
アクセラレータとして、例えば、GPU(Graphics Processing Unit)が用いられる。また、DSP(Digital Signal Processor)やFPGA(Field Programmable Gate Array)がアクセラレータとして利用されてもよい。【００３８】
GPUは、本来３次元グラフィックス処理に利用されるプロセッサである。しかし、GPUは、数百基から数千基のプロセッサコアが集積された大規模な並列プロセッサの構造をとる。よって、GPUは、GPUの特性に適合する処理であれば、汎用のプロセッサと比較して数倍〜数十倍速く処理を実行できる。【００３９】
一般的に、図１１に示す動画像符号化装置１００の動き予測部１１２が行う、動きベクトル探索処理に係る演算量は多い。よって、動き予測部１１２がGPUなどで実現されると、CPUで実現された場合に比べて、動きベクトル探索処理が速く実行される。【００４０】
また、変換処理、量子化処理、スキャン処理などの処理に係る演算量も多い。また、量子化処理として、例えば非特許文献４に記載されている適応ＱＰ選択処理やＲＤ最適量子化処理などが含まれた、より高度で複雑な量子化処理が実行されると、量子化処理に係る演算量はさらに増加する。【００４１】
実行に求められる演算量が多い変換処理、量子化処理、およびスキャン処理を、GPUを用いて並列に実行する効率的な技術が特許文献１に記載されている。【００４２】
特許文献１に記載されている情報処理装置は、変換処理、量子化処理、およびスキャン処理をGPUで並列に実行する。次いで、GPUは、並列処理の処理結果である中間データを汎用プロセッサであるCPUに入力する。CPUは、中間データに対して可逆圧縮処理を行う。可逆圧縮処理は、図１１に示すエントロピー符号化部１１０が行うエントロピー符号化処理に相当する。【００４３】
上記のように、特許文献１に記載されている情報処理装置は、実行する処理を、GPUとCPUに分散して割り当てる。具体的には、各ブロックに対する所定の演算を並列に実行可能な変換処理、量子化処理、およびスキャン処理は、並列計算が得意なGPUに割り当てられる。また、圧縮後のデータサイズが変動的で並列実行が困難な可逆圧縮処理は、複雑なビット解析などが得意なCPUに割り当てられる。GPUとCPUの各特性に合わせて処理が割り当てられると、装置全体としての処理の実行の効率性が高まる。
【先行技術文献】
【特許文献】
【００４４】
【特許文献１】国際公開ＷＯ２０１４／１６７６０９号公報
【特許文献２】特許第２８７１１３９号明細書
【特許文献３】特許第２５０２８９８号明細書
【特許文献４】特開２００６−１２１５３８号公報
【特許文献５】国際公開第２０１０／０４１４８８号
【非特許文献】
【００４５】
【非特許文献１】ITU-T Recommendation H.264，"Advanced  video coding for generic audiovisual services"，2010年3月
【非特許文献２】ITU-T Recommendation H.265，"Advanced  video coding for generic audiovisual services"，2013年4月
【非特許文献３】Joint Video Team (JVT) of ISO/IEC MPEG and ITU-T VCEG，Document JVT-O079，"Text Description of Joint Mode Reference Encoding Method and Decoding Concealment Method"，2005年4月
【非特許文献４】Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11，Document JCTVC-S1002，"High Efficiency Video Coding (HEVC) Test Model 16 (HM 16) Improved Encoder Description"，2014年10月
【発明の概要】
【発明が解決しようとする課題】
【００４６】
特許文献１に記載されている情報処理装置における問題点は、フレーム内のレート制御処理が実現されないことである。情報処理装置におけるGPUは、複数のブロックに対する量子化処理を並列に実行し、実行結果をCPUに入力する。CPUは、量子化された複数のブロックに対するエントロピー符号化処理を実行する。【００４７】
しかし、フレーム内のレート制御処理では、上記のようにフレーム内の符号化済みブロックにおける発生ビット数に応じて量子化パラメータが調整され、調整された量子化パラメータが次の量子化処理で用いられるようにフィードバックされることが求められる。【００４８】
特許文献１に記載されている情報処理装置などでは、CPUによるエントロピー符号化処理よりも前に、GPUによる量子化処理が並列に実行される。すなわち、全ての量子化処理が完了してから符号化処理が開始されるため、特許文献１に記載されている情報処理装置は、上記のように制御されたレートを量子化処理にフィードバックできない。【００４９】
制御されたレートが量子化処理にフィードバックされないと、フレームの発生ビット数がターゲットビット数に収束せず不安定になる。フレームの発生ビット数が不安定になると、フレーム間の画質の変動などによる画質低下や、フレームの発生ビット数のフレームあたりの上限ビット数の超過などの、ユーザが意図しない動作が引き起こされるおそれがある。【００５０】
特許文献２および特許文献３には、他の符号化装置が記載されている。特許文献２に記載されている符号化装置は、量子化処理の並列実行とフレーム内のレート制御を両方実現するために、２パス処理を行う。【００５１】
具体的には、特許文献２に記載されている符号化装置は、フレームの符号化処理を２回実行する。１回目の符号化処理（第１パス）では、符号化装置は、暫定的な量子化パラメータを用いてフレームの符号化処理を行い、フレーム内の符号化済みブロックにおける発生ビット数の情報を記録する。【００５２】
２回目の符号化処理（第２パス）では、符号化装置は、第１パスで用いられた暫定的な量子化パラメータと、第１パスで得られた発生ビット数の関係から適切な量子化パラメータを推定する。【００５３】
符号化装置は、推定された量子化パラメータを用いて、再度フレームの符号化処理を行う。また、符号化装置は、発生ビット数の上限ビット数の超過を防ぐため、並列に符号化を実行する対象の領域ごとに、高周波係数を強制的に打ち切る処理も実行できる。【００５４】
特許文献２に記載されている符号化装置における問題点は、符号化が２回実行されるため、処理に係る演算量が２倍に増大することである。また、並列に符号化が実行される対象の領域ごとに高周波係数が打ち切られると、フレーム全体としてビット数超過が発生しない場合でも、特定領域で係数が打ち切られる可能性がある。特定領域で係数が打ち切られると、本来であれば不要な画質低下が発生する。【００５５】
特許文献３に記載されている符号化装置は、符号化済みのフレームにおける量子化パラメータと発生ビット数の関係の履歴情報や、画像の複雑度分布解析などの情報に基づいて、符号化中のフレームの発生ビット数を予測する。符号化装置は、予測された発生ビット数に基づいて量子化パラメータを制御する。【００５６】
特許文献３に記載されている符号化装置における問題点は、制御に使用される発生ビット数が予測値であるため、発生ビット数の予測の誤差が大きくなると、レート制御が不安定になることである。例えば、処理中のフレームの画像の性質が、過去に処理されたフレームの画像の性質から大きく変化すると、発生ビット数の予測の誤差が大きくなる。【００５７】
上記のように、特許文献２および特許文献３に記載されている符号化装置は、量子化処理の並列実行とフレーム内のレート制御を両方実現できる。しかし、特許文献２および特許文献３に記載されている符号化装置が使用された場合、処理に係る演算量が増加するという問題や、レート制御が安定しないという問題が生じる。【００５８】
そこで、本発明は、安定したレート制御処理が含まれる符号化処理を、演算量を大きく増加させずに高速で実行できる動画像符号化装置、動画像符号化方法および動画像符号化プログラムを記憶する記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００５９】
本発明による動画像符号化装置は、符号化対象画像を構成する画像のデータを、複数の量子化パラメータを使用して量子化パラメータごとにそれぞれ量子化する量子化部と、複数の量子化された画像のデータを、それぞれ量子化される際に使用された量子化パラメータと対応付けて記憶する記憶部と、記憶部から、所定の量子化パラメータを使用して所定の量子化された画像のデータを抽出する抽出部と、抽出された所定の量子化された画像のデータを符号化する符号化部と、符号化部による符号化結果に基づいて、抽出部が次に所定の量子化された画像のデータを抽出する際に使用される所定の量子化パラメータを決定する決定部とを備えることを特徴とする。【００６０】
本発明による動画像符号化方法は、符号化対象画像を構成する画像のデータを、複数の量子化パラメータを使用して量子化パラメータごとにそれぞれ量子化し、複数の量子化された画像のデータを、それぞれ量子化される際に使用された量子化パラメータと対応付けて記憶し、記憶された複数の量子化された画像のデータから、所定の量子化パラメータを使用して所定の量子化された画像のデータを抽出し、抽出された所定の量子化された画像のデータを符号化し、符号化結果に基づいて、次に所定の量子化された画像のデータが抽出される際に使用される所定の量子化パラメータを決定することを特徴とする。【００６１】
本発明による記録媒体は、コンピュータに、符号化対象画像を構成する画像のデータを、複数の量子化パラメータを使用して量子化パラメータごとにそれぞれ量子化する量子化処理、複数の量子化された画像のデータを、それぞれ量子化される際に使用された量子化パラメータと対応付けて記憶する記憶処理、記憶された複数の量子化された画像のデータから、所定の量子化パラメータを使用して所定の量子化された画像のデータを抽出する抽出処理、抽出された所定の量子化された画像のデータを符号化する符号化処理、および符号化処理による符号化結果に基づいて、次に所定の量子化された画像のデータが抽出される際に使用される所定の量子化パラメータを決定する決定処理を実行させることを特徴とする動画像符号化プログラムを記憶する。
【発明の効果】
【００６２】
本発明によれば、安定したレート制御処理が含まれる符号化処理を、演算量を大きく増加させずに高速で実行できる。
【図面の簡単な説明】
【００６３】
【図１】本発明による動画像符号化装置の第１の実施形態の構成例を示すブロック図である。
【図２】第１の実施形態の動画像符号化装置１００による符号化処理全体の動作を示すフローチャートである。
【図３】本発明による動画像符号化装置の第２の実施形態の構成例を示すブロック図である。
【図４】第２の実施形態の動画像符号化装置１００による符号化処理全体の動作を示すフローチャートである。
【図５】本発明による動画像符号化装置の第３の実施形態の構成例を示すブロック図である。
【図６】第３の実施形態の動画像符号化装置１００による符号化処理全体の動作を示すフローチャートである。
【図７】本発明による動画像符号化装置の第４の実施形態の構成例を示すブロック図である。
【図８】第４の実施形態の動画像符号化装置１００による符号化処理全体の動作を示すフローチャートである。
【図９】本発明による動画像符号化装置の機能を実現可能な情報処理装置の構成例を示すブロック図である。
【図１０】本発明による動画像符号化装置の概要を示すブロック図である。
【図１１】一般的な動画像符号化装置の構成例を示すブロック図である。
【発明を実施するための形態】
【００６４】
実施形態１．
［構成の説明］
以下、本発明の実施形態を、図面を参照して説明する。図１は、本発明による動画像符号化装置の第１の実施形態の構成例を示すブロック図である。
【００６５】
図１に示すように、本実施形態における動画像符号化装置１００は、図１１に示す動画像符号化装置１００と比較して、複数量子化部２００、中間情報バッファ２０１、および選択部２０２が含まれている点が異なる。複数量子化部２００、中間情報バッファ２０１、および選択部２０２以外の図１に示す動画像符号化装置１００の構成は、図１１に示す動画像符号化装置１００の構成と同様である。
【００６６】
複数量子化部２００は、変換部１０２から入力される変換係数列に対して、２種類以上の複数の量子化パラメータを用いて量子化処理を行う機能を有する。
【００６７】
複数量子化部２００は、入力された変換係数列を、種類が異なる量子化パラメータごとに量子化する。量子化した後、複数量子化部２００は、複数の量子化された変換係数列を、各量子化処理において使用された量子化パラメータと対応付けて中間情報バッファ２０１に格納する。
【００６８】
中間情報バッファ２０１は、量子化された変換係数列を、変換係数列が量子化された際に使用された量子化パラメータと対応付けて記憶する機能を有する。
【００６９】
選択部２０２は、レート制御部１１１から入力される量子化パラメータを使用して、所定の量子化された変換係数列を、中間情報バッファ２０１に記憶されている量子化された変換係数列の中から選択して出力する機能を有する。
【００７０】
複数量子化部２００は、H.264やH.265等の規格において選択可能な全ての量子化パラメータを用いて量子化処理を実行できる。例えば、H.264やH.265の規格では、０〜５１の５２通りの量子化パラメータが利用される。
【００７１】
よって、複数量子化部２００は、０〜５１のそれぞれの量子化パラメータに対応する５２通りの量子化処理を実行できる。複数量子化部２００は、量子化された変換係数列と量子化処理に使用された量子化パラメータとを対応付けて、中間情報バッファ２０１に格納する。
【００７２】
上記の例では、レート制御部１１１から入力される量子化パラメータに基づいて量子化された変換係数列が、中間情報バッファ２０１に必ず記憶されている。選択部２０２は、レート制御部１１１から入力される量子化パラメータと対応付けられて記憶されている量子化された変換係数列を選択して出力する。
【００７３】
また、複数量子化部２００は、選択可能な全ての量子化パラメータを用いずに、例えば、１つ置きに量子化パラメータ（０、２、４、８、…など）を用いて量子化処理を実行してもよい。また、複数量子化部２００は、２つ置きに量子化パラメータ（０、３、６、９、…など）を用いて量子化処理を実行してもよい。
【００７４】
また、複数量子化部２００は、所定の量子化パラメータを中心とする所定の範囲内の複数の量子化パラメータを用いて量子化処理を実行してもよい。例えば、複数量子化部２００は、量子化パラメータ３０を中心とし、中心から＋４を上限、中心から−４を下限とする範囲内の複数の量子化パラメータを用いてもよい。
【００７５】
例えば、１つ置きに量子化パラメータを用いる場合、複数量子化部２００は、（２６、２８、３０、３２、３４）の５つの量子化パラメータを用いて５通りの量子化処理を実行する。中心とされる量子化パラメータには、フレームの目標ビット数などの情報から算出された値が設定されてもよい。
【００７６】
複数量子化部２００が用いる量子化パラメータは上記の例に限定されず、複数量子化部２００は、様々なパターンの量子化パラメータを利用できる。また、複数量子化部２００は、上述した量子化パラメータの選択手順以外にも、種々の選択手順を利用できる。
【００７７】
複数量子化部２００が選択可能な全ての量子化パラメータを用いて量子化処理を実行しない場合、レート制御部１１１から入力される量子化パラメータに基づいて量子化された変換係数列が、中間情報バッファ２０１に記憶されていない可能性がある。
【００７８】
上記の場合、入力される量子化パラメータに基づいて量子化された変換係数列が記憶されていれば、選択部２０２は、入力される量子化パラメータに対応する変換係数列を抽出する。入力される量子化パラメータに基づいて量子化された変換係数列が記憶されていなければ、選択部２０２は、他の量子化された変換係数列を抽出してもよい。例えば、選択部２０２は、中間情報バッファ２０１に記憶されている変換係数列のうち、入力される量子化パラメータに値が最も近い量子化パラメータに基づいて量子化された変換係数列を抽出してもよい。
【００７９】
なお、選択部２０２がレート制御部１１１から入力される量子化パラメータと異なる量子化パラメータに対応する変換係数列を選択すると、量子化パラメータを決定する際にレート制御部１１１が割り当てたビット数と出力ビット数との間に誤差が発生する可能性がある。しかし、誤差が発生しても、次回以降の画像ブロックの符号化で誤差が発生しないように直ちにフィードバックされるため、フレーム全体では安定したレート制御が実現される。
【００８０】
以上により、レート制御部１１１は、図１１に示す動画像符号化装置１００と同様のフィードバック制御を実施できる。すなわち、本実施形態における動画像符号化装置も、安定したレート制御を実現できる。
【００８１】
［動作の説明］
以下、本実施形態の動画像符号化装置１００の動作を図２を参照して説明する。図２は、第１の実施形態の動画像符号化装置１００による符号化処理全体の動作を示すフローチャートである。
【００８２】
処理が開始されると、動画像符号化装置１００は、フレーム内の各画像ブロックに対して量子化処理を実行する。動画像符号化装置１００は、フレーム内の全画像ブロックに対して量子化処理が完了したか否かを確認する（ステップＳ１０１）。
【００８３】
フレーム内の全画像ブロックのうち量子化処理が完了していない画像ブロックがある場合（ステップＳ１０１におけるＮｏ）、動き予測部１１２は、まだ量子化されていない対象の画像ブロックに対して動き補償予測処理を行い、動き補償予測画像を出力する。
【００８４】
次いで、減算部１０１は、入力画像から動き補償予測画像を減算する減算処理を行い、予測誤差画像を出力する。次いで、変換部１０２は、入力された予測誤差画像に対して変換処理を行い、変換係数列を出力する（ステップＳ１０２）。
【００８５】
次いで、複数量子化部２００は、複数の量子化パラメータを用いて、変換係数列に対して量子化処理を複数回行う（ステップＳ１０３）。複数量子化部２００は、量子化処理で生成された複数の量子化された変換係数列を、中間情報バッファ２０１に格納する。格納された後、動画像符号化装置１００は、再度ステップＳ１０１の処理を行う。
【００８６】
フレーム内の全画像ブロックに対して量子化処理が完了した場合（ステップＳ１０１におけるＹｅｓ）、動画像符号化装置１００は、フレーム内の全画像ブロックに対して符号化処理が完了したか否かを確認する（ステップＳ１０４）。ステップＳ１０４の処理が実行される時点で、中間情報バッファ２０１には、フレーム内の画像ブロックに対応する量子化された変換係数列の情報が、フレーム内の全画像ブロック分記憶されている。
【００８７】
フレーム内の全画像ブロックのうち符号化処理が完了していない画像ブロックがある場合（ステップＳ１０４におけるＮｏ）、選択部２０２は、まだ符号化されていない対象の画像ブロックに対応する量子化された変換係数列のうち、求められた量子化された変換係数列を中間情報バッファ２０１から選択する（ステップＳ１０５）。
【００８８】
求められた量子化された変換係数列は、例えば、レート制御部１１１から入力された量子化パラメータに基づいて量子化された変換係数列である。選択部２０２は、選択した量子化された変換係数列を出力する。
【００８９】
次いで、逆量子化部１０４は、入力された量子化された変換係数列に対して逆量子化処理を行い、変換係数列を出力する。次いで、逆変換部１０５は、入力された変換係数列に対して逆変換処理を行い、予測誤差画像を出力する。
【００９０】
次いで、加算部１０６は、入力された予測誤差画像と予測画像を加算する加算処理を行い、画像を出力する。次いで、フィルタ部１０７は、入力された画像に対してフィルタ処理を行い、ローカルデコード画像を生成する。フィルタ部１０７は、生成されたローカルデコード画像を、フレームバッファ１０８に格納する。
【００９１】
また、スキャン部１０９は、入力された量子化された変換係数列に対してスキャン処理を行い、並び替えられた変換係数列を出力する。次いで、エントロピー符号化部１１０は、入力された並び替えられた変換係数列に対してエントロピー符号化処理を行い、ビットストリームを出力する（ステップＳ１０６）。
【００９２】
次いで、レート制御部１１１は、ステップＳ１０６において出力されたビットストリームの情報を用いて、レート制御の内容を更新する（ステップＳ１０７）。
【００９３】
具体的には、レート制御部１１１は、例えば符号化された画像ブロックにおいて発生したビット数の情報を用いて、次回以降に符号化される画像ブロックに割り当てられるビット数、および選択部２０２に入力される量子化パラメータの情報を更新する。更新された後、動画像符号化装置１００は、再度ステップＳ１０４の処理を行う。
【００９４】
全画像ブロックに対してステップＳ１０５〜Ｓ１０７の処理が終了すると、１フレームに対する符号化処理が完了する。フレーム内の全画像ブロックに対して符号化処理が完了した場合（ステップＳ１０４におけるＹｅｓ）、動画像符号化装置１００は、符号化処理全体を終了する。
【００９５】
なお、上記ではステップＳ１０２〜Ｓ１０３の処理が画像ブロックごとに順番に実行されると説明したが、ステップＳ１０２〜Ｓ１０３の処理は、複数の画像ブロックに対してそれぞれ並列に実行されてもよい。
【００９６】
本実施形態の動画像符号化装置は、複数量子化部２００が複数の量子化パラメータを用いて量子化処理を複数回行うため、量子化処理に係る演算量は増加する。しかし、特許文献２に記載されている符号化処理全体を２回実行する方式に比べると、処理全体に係る演算量の増加量は小さい。
【００９７】
また、複数の量子化パラメータが用いられる複数の量子化処理は、並列に実行されてもよい。すなわち、特許文献１に記載されているように、GPUなどの並列処理に強いアクセラレータは、変換処理、量子化処理などを並列に実行できる。GPUが複数の画像ブロックに対する処理を並列に実行する場合、CPUが１ブロックずつ処理を実行する場合に比べて高速に処理が実行される。よって、本実施形態の動画像符号化装置は、GPU等を用いることによって、容易に複数の量子化処理を高速で実行できる。
【００９８】
また、GPU以外にも、複数のCPU、パーソナルコンピュータ(PC)クラスタ、FPGA、または専用LSI(Large Scale Integration)回路などが、並列処理により複数の量子化処理を高速で実行するアクセラレータとして利用されてもよい。従って、本実施形態の動画像符号化装置は、変換処理、量子化処理などを並列計算が得意なGPU等に割り当てることによって高速処理を実現し、かつ符号化結果をフィードバックすることによって安定したレート制御を実現する。
【００９９】
本実施形態の動画像符号化装置は、量子化処理に係る演算量の増加量を増大させることなく、符号化処理の高速な実行と安定したレート制御を共に実現できる。その理由は、中間情報バッファが複数の量子化パラメータそれぞれに基づいて量子化された変換係数列を記憶し、選択部がレート制御部により決定される符号化結果に基づいた量子化パラメータに対応する変換係数列を中間情報バッファから抽出する。
【０１００】
すなわち、動画像符号化装置はレート制御部が決定した量子化パラメータに基づいて量子化処理を再度実行する必要がないため、実行されない量子化処理分だけ処理全体が速く実行されるからである。また、抽出された変換係数列をエントロピー符号化部が符号化し、複数の画像ブロックに対して処理が繰り返し実行されるため、フレーム全体では安定したレート制御が実現されるからである。
【０１０１】
実施形態２．
［構成の説明］
次に、本発明の第２の実施形態を、図面を参照して説明する。図３は、本発明による動画像符号化装置の第２の実施形態の構成例を示すブロック図である。
【０１０２】
図３に示すように、本実施形態における動画像符号化装置１００は、図１に示す動画像符号化装置１００と比較して、量子化部１０３が含まれている点と、選択部２０２の代わりに選択部２１２が含まれている点が異なる。量子化部１０３および選択部２１２以外の図３に示す動画像符号化装置１００の構成は、図１に示す動画像符号化装置１００の構成と同様である。
【０１０３】
量子化部１０３は、図１１に示す量子化部１０３と同様の機能を有する。ただし、本実施形態における量子化部１０３は、複数量子化部２００がレート制御部１１１から入力される量子化パラメータを用いて量子化処理を実行していなかった場合に動作する。よって、複数量子化部２００が量子化処理に用いる量子化パラメータの数が増えると、複数量子化部２００による量子化処理に係る演算量は増加し、量子化部１０３が量子化処理を実行する可能性は低くなる。
【０１０４】
上記のように、複数量子化部２００による複数の量子化処理は、並列に実行される。例えば、複数量子化部２００がGPUで、量子化部１０３がCPUで実現されるようにそれぞれ構成された場合を考える。GPUとCPUの演算能力の比率に基づいて複数量子化部２００が量子化処理に用いる量子化パラメータの数を調整することによって、GPUとCPUの双方がバランスよく稼動され、効率良く符号化処理全体が実行される。
【０１０５】
本実施形態における選択部２１２は、レート制御部１１１から入力される量子化パラメータに基づいて量子化された変換係数列が中間情報バッファ２０１に記憶されていない場合、量子化部１０３を動作させる。
【０１０６】
選択部２１２は、レート制御部１１１から入力される量子化パラメータを用いて変換係数列を量子化するように量子化部１０３を動作させる。次いで、選択部２１２は、量子化部１０３で量子化された変換係数列を選択し、出力する。
【０１０７】
なお、レート制御部１１１から入力される量子化パラメータに基づいて量子化された変換係数列が中間情報バッファ２０１に記憶されている場合、選択部２１２は、第１の実施形態の選択部２０２と同様に、中間情報バッファ２０１から対応する変換係数列を抽出する。よって、本実施形態における選択部２１２は、常にレート制御部１１１から入力される量子化パラメータに基づいて量子化された変換係数列を出力できる。
【０１０８】
［動作の説明］
以下、本実施形態の動画像符号化装置１００の動作を図４を参照して説明する。図４は、第２の実施形態の動画像符号化装置１００による符号化処理全体の動作を示すフローチャートである。
【０１０９】
ステップＳ２０１〜Ｓ２０４の処理は、図２に示す第１の実施形態のステップＳ１０１〜Ｓ１０４の処理と同様であるため、説明を省略する。
【０１１０】
フレーム内の全画像ブロックのうち符号化処理が完了していない画像ブロックがある場合（ステップＳ２０４におけるＮｏ）、選択部２１２は、まだ符号化されていない対象の画像ブロックに対応する量子化された変換係数列のうち、求められた量子化された変換係数列を中間情報バッファ２０１から選択する（ステップＳ２０５）。
【０１１１】
レート制御部１１１から入力される量子化パラメータに基づいて量子化された変換係数列が中間情報バッファ２０１に記憶されている時、選択部２１２は、対応する変換係数列を選択し、出力する。
【０１１２】
レート制御部１１１から入力される量子化パラメータに基づいて量子化された変換係数列が中間情報バッファ２０１に記憶されていない時、選択部２１２は、入力される量子化パラメータを用いて変換係数列を量子化するように量子化部１０３を動作させる。次いで、選択部２１２は、量子化部１０３で量子化された変換係数列を選択し、出力する。
【０１１３】
ステップＳ２０６〜Ｓ２０７の処理は、図２に示す第１の実施形態のステップＳ１０６〜Ｓ１０７の処理と同様であるため、説明を省略する。
【０１１４】
本実施形態の動画像符号化装置は、GPUとCPUなどの異なるプロセッサや演算処理装置の各能力が活用された量子化処理を実現できる。また、動画像符号化装置は、符号化結果をフィードバックすることによって、安定したレート制御も実現できる。
【０１１５】
また、本実施形態の動画像符号化装置は、複数量子化部２００が量子化処理に使用していない量子化パラメータを使用して量子化部１０３が量子化処理を実行できるため、レート制御部１１１から入力される量子化パラメータに基づいて量子化された変換係数列を必ず符号化できる。
【０１１６】
実施形態３．
［構成の説明］
次に、本発明の第３の実施形態を、図面を参照して説明する。図５は、本発明による動画像符号化装置の第３の実施形態の構成例を示すブロック図である。
【０１１７】
図５に示すように、本実施形態における動画像符号化装置１００は、図１に示す動画像符号化装置１００と比較して、複数量子化部２００の代わりに複数量子化スキャン部２１０が含まれている点が異なる。また、中間情報バッファ２０１の代わりに中間情報バッファ２１１が含まれている点と、選択部２０２の代わりに選択部２２２が含まれている点が異なる。また、スキャン部１０９が含まれていない点が異なる。
【０１１８】
複数量子化スキャン部２１０、中間情報バッファ２１１、および選択部２２２以外の図５に示す動画像符号化装置１００の構成は、図１に示す動画像符号化装置１００の構成と同様である。
【０１１９】
複数量子化スキャン部２１０は、複数の量子化パラメータを用いて複数の量子化処理を行った後、量子化された変換係数列に対してスキャン処理を行う。複数量子化スキャン部２１０が行うスキャン処理は、第１の実施形態および第２の実施形態のスキャン部１０９が行うスキャン処理と同様である。
【０１２０】
複数量子化スキャン部２１０は、量子化された変換係数列、および量子化された変換係数列のスキャン処理結果を、量子化処理で使用された量子化パラメータと対応付けて中間情報バッファ２１１に格納する。本実施形態において中間情報バッファ２１１は、量子化された変換係数列に加えて、量子化された変換係数列のスキャン処理結果を記憶する。
【０１２１】
選択部２２２は、レート制御部１１１から入力される量子化パラメータに基づいて量子化された変換係数列、および量子化された変換係数列のスキャン処理結果を、中間情報バッファ２１１から抽出する。抽出されるスキャン処理結果は、抽出される量子化された変換係数列と対応付けられて中間情報バッファ２１１に記憶されているスキャン処理結果である。
【０１２２】
選択部２２２は、抽出された量子化された変換係数列を逆量子化部１０４に入力する。また、選択部２２２は、抽出されたスキャン処理結果をエントロピー符号化部１１０に入力する。
【０１２３】
［動作の説明］
以下、本実施形態の動画像符号化装置１００の動作を図６を参照して説明する。図６は、第３の実施形態の動画像符号化装置１００による符号化処理全体の動作を示すフローチャートである。
【０１２４】
ステップＳ３０１〜Ｓ３０２の処理は、図２に示す第１の実施形態のステップＳ１０１〜Ｓ１０２の処理と同様であるため、説明を省略する。
【０１２５】
複数量子化スキャン部２１０は、複数の量子化パラメータを用いて、変換係数列に対して量子化処理を複数回行う。次いで、複数量子化スキャン部２１０は、量子化処理で生成された複数の量子化された変換係数列に対して、スキャン処理を行う（ステップＳ３０３）。
【０１２６】
スキャン処理を行った後、複数量子化スキャン部２１０は、量子化された変換係数列と、量子化された変換係数列のスキャン処理結果を中間情報バッファ２１１に格納する。格納された後、動画像符号化装置１００は、再度ステップＳ３０１の処理を行う。
【０１２７】
ステップＳ３０４の処理は、図２に示す第１の実施形態のステップＳ１０４の処理と同様であるため、説明を省略する。
【０１２８】
フレーム内の全画像ブロックのうち符号化処理が完了していない画像ブロックがある場合（ステップＳ３０４におけるＮｏ）、選択部２２２は、まだ符号化されていない対象の画像ブロックに対応する量子化された変換係数列のうち、求められた量子化された変換係数列を中間情報バッファ２１１から選択する。
【０１２９】
また、選択部２２２は、中間情報バッファ２１１に記憶されている、選択された量子化された変換係数列のスキャン処理結果を選択する（ステップＳ３０５）。選択部２２２は、選択された量子化された変換係数列および量子化された変換係数列のスキャン処理結果を出力する。
【０１３０】
ステップＳ３０６〜Ｓ３０７の処理は、図２に示す第１の実施形態のステップＳ１０６〜Ｓ１０７の処理と同様であるため、説明を省略する。
【０１３１】
本実施形態の映像符号化装置は、複数の量子化パラメータに基づいて量子化された複数の変換係数列に対するスキャン処理も先に実行できる。よって、本実施形態の映像符号化装置は、GPUが量子化処理とスキャン処理を並列に実行することなどによって、第１の実施形態の映像符号化装置よりもさらに高速で符号化処理全体を実施できる。
【０１３２】
実施形態４．
［構成の説明］
次に、本発明の第４の実施形態を、図面を参照して説明する。図７は、本発明による動画像符号化装置の第４の実施形態の構成例を示すブロック図である。
【０１３３】
第１の実施形態から第３の実施形態の動画像符号化装置は、動き補償予測が用いられるフレーム間予測のみを使用して符号化処理（インター符号化）を行う。しかし、H.264およびH.265では、インター符号化とは別に、画面内の近隣画素の情報を用いて予測画像を生成し符号化するイントラ符号化も利用される。本実施形態の動画像符号化装置は、インター符号化およびイントラ符号化の両方の符号化を実施できる。
【０１３４】
図７に示すように、本実施形態における動画像符号化装置１００は、図３に示す動画像符号化装置１００と比較して、減算部１０１−２が含まれている点と、変換部１０２−２が含まれている点と、画面内予測部２０３が含まれている点と、イントラ／インター切替部２０４が含まれている点が異なる。また、選択部２１２の代わりに選択部２３２が含まれている点が異なる。
【０１３５】
減算部１０１−２、変換部１０２−２、画面内予測部２０３、イントラ／インター切替部２０４および選択部２３２以外の図７に示す動画像符号化装置１００の構成は、図３に示す動画像符号化装置１００の構成と同様である。
【０１３６】
画面内予測部２０３には、フィルタ処理が行われる前のローカルデコード画像が入力される。画面内予測部２０３は、入力されたローカルデコード画像に対して画面内予測処理を行い、画面内予測処理で生成された画面内予測画像を出力する。
【０１３７】
イントラ／インター切替部２０４は、指定された符号化モードに基づいて、画面内予測画像または動き補償予測画像のいずれかの画像を選択し、選択した画像を出力する。イントラ符号化モードが指定された場合、イントラ／インター切替部２０４は、画面内予測画像を出力する。インター符号化モードが指定された場合、イントラ／インター切替部２０４は、動き補償予測画像を出力する。
【０１３８】
減算部１０１−２には、イントラ符号化モードが指定された場合、画面内予測部２０３から画面内予測画像が入力される。次いで、減算部１０１−２は、入力画像から画面内予測画像を減算する。減算部１０１−２は、画面内予測画像を減算することによって得られた画像を予測誤差画像とし、予測誤差画像を出力する。
【０１３９】
変換部１０２−２は、イントラ符号化モードが指定された場合、入力された予測誤差画像に対して変換処理を行い、変換係数列を出力する。
【０１４０】
量子化部１０３は、イントラ符号化モードが指定された場合、変換部１０２−２から入力された変換係数列に対して量子化処理を行い、量子化された変換係数列を出力する。
【０１４１】
選択部２３２は、インター符号化モードが指定された場合、第１の実施形態の選択部２０２と同様に動作する。イントラ符号化モードが指定された場合、選択部２３２は、量子化部１０３から入力された量子化された変換係数列を選択し、出力する。
【０１４２】
イントラ符号化モードで符号化する場合、動画像符号化装置１００は、近隣画像ブロックのローカルデコード画像情報を利用する。すなわち、イントラ符号化モードにおいて、動画像符号化装置１００は、インター符号化モードにおける複数のブロックに対する動き予測処理や量子化処理のような処理に対して実行可能な並列処理を実行できない。
【０１４３】
しかし、一般的に動画像符号化処理では、符号化対象の画像ブロックのうち、多くの画像ブロックがインター符号化モードで符号化される。よって、イントラ符号化とインター符号化の両方の符号化を実施可能な動画像符号化装置がインター符号化の処理だけでもGPU等を用いて高速に実行できることは、大きな効果を奏する。
【０１４４】
［動作の説明］
以下、本実施形態の動画像符号化装置１００の動作を図８を参照して説明する。図８は、第４の実施形態の動画像符号化装置１００による符号化処理全体の動作を示すフローチャートである。
【０１４５】
ステップＳ４０１〜Ｓ４０４の処理は、図２に示す第１の実施形態のステップＳ１０１〜Ｓ１０４の処理と同様であるため、説明を省略する。
【０１４６】
フレーム内の全画像ブロックのうち符号化処理が完了していない画像ブロックがある場合（ステップＳ４０４におけるＮｏ）、選択部２３２は、指定された符号化モードがイントラ符号化モードであるか否かを確認する（ステップＳ４０５）。
【０１４７】
指定された符号化モードがイントラ符号化モードである場合（ステップＳ４０５におけるＹｅｓ）、変換部１０２−２は、画面内予測部２０３から入力された画面内予測画像に対して変換処理を行い、変換係数列を出力する（ステップＳ４０６）。
【０１４８】
次いで、量子化部１０３は、変換部１０２−２から入力された変換係数列に対して量子化処理を行い、量子化された変換係数列を出力する（ステップＳ４０７）。次いで、選択部２３２は、量子化部１０３から入力された量子化された変換係数列を選択し、出力する（ステップＳ４０８）。
【０１４９】
指定された符号化モードがイントラ符号化モードでなくインター符号化モードである場合（ステップＳ４０５におけるＮｏ）、選択部２３２は、求められた量子化された変換係数列を中間情報バッファ２０１から選択する（ステップＳ４０８）。
【０１５０】
ステップＳ４０９〜Ｓ４１０の処理は、図２に示す第１の実施形態のステップＳ１０６〜Ｓ１０７の処理と同様であるため、説明を省略する。
【０１５１】
本実施形態の動画像符号化装置は、インター符号化方式とイントラ符号化方式の両方の符号化方式に対応できる。また、本実施形態の動画像符号化装置は、第１の実施形態〜第３の実施形態と同様、インター符号化において、高速処理と安定したレート制御の両方を実現できる。
【０１５２】
上記の各実施形態の動画像符号化装置は、H.264またはH.265に従って符号化を実施する。本発明による動画像符号化装置は、VC-1等の、H.264またはH.265の符号化方式以外の符号化方式や、国際標準の動画像符号化方式等に含まれない符号化方式に従って符号化を実施してもよい。
【０１５３】
また、上記の各実施形態の動画像符号化装置は、動き補償予測や画面内予測を用いて符号化を実施する。本発明による動画像符号化装置は、動き補償予測や画面内予測以外の予測方式を用いて符号化を実施してもよい。また、本発明による動画像符号化装置は、予測方式を用いずに符号化を実施してもよい。
【０１５４】
また、上記の各実施形態を、ハードウェアで構成することも可能であるが、例えば記録媒体に記録されたコンピュータプログラムにより実現することも可能である。
【０１５５】
図９に示す情報処理装置は、プロセッサ１００１、プログラムメモリ１００２、映像データを格納するための記憶媒体（記録媒体）１００３、およびビットストリーム等のデータを格納するための記憶媒体１００４を備える。記憶媒体１００３と記憶媒体１００４とは、別個の記憶媒体であってもよいし、同一の記憶媒体からなる記憶領域であってもよい。記憶媒体として、ハードディスク等の磁気記憶媒体を用いることができる。記憶媒体１００３において、少なくともプログラムが記憶される領域は、一時的でない有形な記憶領域（non-transitory tangible media ）である。
【０１５６】
図９に示された情報処理装置において、プログラムメモリ１００２には、図１、図３、図５、および図７のそれぞれに示された各ブロックの機能を実現するためのプログラムが格納される。そして、プロセッサ１００１は、プログラムメモリ１００２に格納されているプログラムに従って処理を実行することによって、図１、図３、図５、および図７のそれぞれに示された動画像符号化装置の機能を実現する。
【０１５７】
次に、本発明の概要を説明する。図１０は、本発明による動画像符号化装置の概要を示すブロック図である。本発明による動画像符号化装置１０は、符号化対象画像を構成する画像のデータを、複数の量子化パラメータを使用して量子化パラメータごとにそれぞれ量子化する量子化部１１（例えば、複数量子化部２００）と、複数の量子化された画像のデータを、それぞれ量子化される際に使用された量子化パラメータと対応付けて記憶する記憶部１２（例えば、中間情報バッファ２０１）と、記憶部１２から、所定の量子化パラメータを使用して所定の量子化された画像のデータを抽出する抽出部１３（例えば、選択部２０２）と、抽出された所定の量子化された画像のデータを符号化する符号化部１４（例えば、エントロピー符号化部１１０）と、符号化部１４による符号化結果に基づいて、抽出部１３が次に所定の量子化された画像のデータを抽出する際に使用される所定の量子化パラメータを決定する決定部１５（例えば、レート制御部１１１）とを備える。
【０１５８】
そのような構成により、動画像符号化装置は、安定したレート制御処理が含まれる符号化処理を、演算量を大きく増加させずに高速で実行できる。
【０１５９】
また、所定の量子化された画像のデータは、所定の量子化パラメータと対応付けられて記憶部１２に記憶されている量子化された画像のデータでもよい。
【０１６０】
そのような構成により、動画像符号化装置は、レート制御部が決定した量子化パラメータに基づいて量子化された変換係数列を符号化できる。
【０１６１】
また、所定の量子化された画像のデータは、所定の量子化パラメータに値が最も近い量子化パラメータと対応付けられて記憶部１２に記憶されている量子化された画像のデータでもよい。
【０１６２】
そのような構成により、動画像符号化装置は、レート制御部が決定した量子化パラメータに基づいて量子化された変換係数列以外の量子化された変換係数列を符号化できる。
【０１６３】
また、動画像符号化装置１０は、量子化部１１が使用した複数の量子化パラメータ以外の量子化パラメータを使用して、符号化対象画像を構成する画像のデータを量子化する第２量子化部（例えば、量子化部１０３）を備え、抽出部１３は、記憶部１２の代わりに第２量子化部から所定の量子化された画像のデータを抽出してもよい。
【０１６４】
そのような構成により、動画像符号化装置は、レート制御部が決定した量子化パラメータに基づいて量子化された変換係数列が中間情報バッファに存在しない場合であっても、決定された量子化パラメータに基づいて量子化された変換係数列を符号化できる。
【０１６５】
また、量子化部１１は、画像のデータを量子化した後、量子化された画像のデータを所定の手順でスキャンし、記憶部１２は、スキャンされた画像のデータを、量子化された画像のデータと対応付けて記憶し、抽出部１３は、所定の量子化された画像のデータと、所定の量子化された画像のデータと対応付けられて記憶部１２に記憶されているスキャンされた画像のデータを抽出し、符号化部１４は、所定の量子化された画像のデータの代わりに、抽出されたスキャンされた画像のデータを符号化してもよい。
【０１６６】
そのような構成により、動画像符号化装置は、符号化処理をより高速で実行できる。
【０１６７】
また、動画像符号化装置１０は、符号化対象画像を構成する画像に対して動き補償予測処理を行うことによって動き補償予測画像を生成する動き予測部（例えば、動き予測部１１２）と、画像から生成された動き補償予測画像を減算することによって予測誤差画像を生成する減算部（例えば、減算部１０１）と、生成された予測誤差画像に対して変換処理を行うことによって変換係数列を生成する変換部（例えば、変換部１０２）とを備え、量子化部１１は、生成された変換係数列を、符号化対象画像を構成する画像のデータとして量子化してもよい。
【０１６８】
そのような構成により、動画像符号化装置は、インター符号化モードで符号化処理を実行できる。
【０１６９】
また、動画像符号化装置１０は、符号化対象画像を構成する画像に対して画面内予測処理を行うことによって画面内予測画像を生成する画面内予測部（例えば、画面内予測部２０３）を備え、減算部は、画像から生成された画面内予測画像を減算することによって予測誤差画像を生成してもよい。
【０１７０】
そのような構成により、動画像符号化装置は、イントラ符号化モードで符号化処理を実行できる。
【０１７１】
また、量子化部１１は、符号化対象画像を構成する複数の画像のデータを並列に量子化してもよい。
【０１７２】
そのような構成により、動画像符号化装置は、符号化処理をより高速で実行できる。
【０１７３】
また、量子化部１１は、使用可能な全ての量子化パラメータを使用して、画像のデータを量子化パラメータごとにそれぞれ量子化してもよい。
【０１７４】
そのような構成により、動画像符号化装置は、レート制御部が決定した量子化パラメータに基づいて量子化された変換係数列が、必ず中間情報バッファに記憶されるようにすることができる。
【０１７５】
また、抽出部１３は、記憶部１２に符号化対象画像を構成する全ての量子化された画像のデータが記憶された後に画像のデータを抽出してもよい。
【０１７６】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１７７】
この出願は、２０１５年６月３日に出願された日本出願特願２０１５−１１２７８７を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【０１７８】
１０、１００    動画像符号化装置
１１、１０３    量子化部
１２    記憶部
１３    抽出部
１４    符号化部
１５    決定部
１０１、１０１−２    減算部
１０２、１０２−２    変換部
１０４    逆量子化部
１０５    逆変換部
１０６    加算部
１０７    フィルタ部
１０８    フレームバッファ
１０９    スキャン部
１１０    エントロピー符号化部
１１１    レート制御部
１１２    動き予測部
２００    複数量子化部
２１０    複数量子化スキャン部
２０１、２１１    中間情報バッファ
２０２、２１２、２２２、２３２    選択部
２０３    画面内予測部
２０４    イントラ／インター切替部
１００１    プロセッサ
１００２    プログラムメモリ
１００３、１００４    記憶媒体
【図１】
2016194380.tif 000003
【図２】
2016194380.tif 000004
【図３】
2016194380.tif 000005
【図４】
2016194380.tif 000006
【図５】
2016194380.tif 000007
【図６】
2016194380.tif 000008
【図７】
2016194380.tif 000009
【図８】
2016194380.tif 000010
【図９】
2016194380.tif 000011
【図１０】
2016194380.tif 000012
【図１１】
2016194380.tif 000013
【手続補正書】
【提出日】平成29年12月1日(2017.12.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
符号化対象画像を構成する画像のデータを、複数の量子化パラメータを使用して前記量子化パラメータごとにそれぞれ量子化する量子化手段と、
複数の量子化された画像のデータを、それぞれ量子化される際に使用された前記量子化パラメータと対応付けて記憶する記憶手段と、
前記記憶手段から、所定の量子化パラメータを使用して所定の量子化された画像のデータを抽出する抽出手段と、
抽出された前記所定の量子化された画像のデータを符号化する符号化手段と、
前記符号化手段による符号化結果に基づいて、前記抽出手段が次に所定の量子化された画像のデータを抽出する際に使用される所定の量子化パラメータを決定する決定手段とを備える
ことを特徴とする動画像符号化装置。
【請求項２】
所定の量子化された画像のデータは、所定の量子化パラメータと対応付けられて記憶手段に記憶されている量子化された画像のデータである
請求項１記載の動画像符号化装置。
【請求項３】
所定の量子化された画像のデータは、所定の量子化パラメータに値が最も近い量子化パラメータと対応付けられて記憶手段に記憶されている量子化された画像のデータである
請求項１記載の動画像符号化装置。
【請求項４】
量子化手段が使用した複数の量子化パラメータ以外の量子化パラメータを使用して、符号化対象画像を構成する画像のデータを量子化する第２量子化手段を備え、
抽出手段は、記憶手段の代わりに前記第２量子化手段から所定の量子化された画像のデータを抽出する
請求項１記載の動画像符号化装置。
【請求項５】
量子化手段は、画像のデータを量子化した後、量子化された前記画像のデータを所定の手順でスキャンし、
記憶手段は、スキャンされた前記画像のデータを、量子化された前記画像のデータと対応付けて記憶し、
抽出手段は、所定の量子化された画像のデータと、前記所定の量子化された画像のデータと対応付けられて前記記憶手段に記憶されているスキャンされた画像のデータを抽出し、
符号化手段は、前記所定の量子化された画像のデータの代わりに、抽出された前記スキャンされた画像のデータを符号化する
請求項１から請求項４のうちのいずれか１項に記載の動画像符号化装置。
【請求項６】
符号化対象画像を構成する画像に対して動き補償予測処理を行うことによって動き補償予測画像を生成する動き予測手段と、
前記画像から生成された前記動き補償予測画像を減算することによって予測誤差画像を生成する減算手段と、
生成された前記予測誤差画像に対して変換処理を行うことによって変換係数列を生成する変換手段とを備え、
量子化手段は、生成された前記変換係数列を、符号化対象画像を構成する画像のデータとして量子化する
請求項１から請求項５のうちのいずれか１項に記載の動画像符号化装置。
【請求項７】
符号化対象画像を構成する画像に対して画面内予測処理を行うことによって画面内予測画像を生成する画面内予測手段を備え、
減算手段は、前記画像から生成された前記画面内予測画像を減算することによって予測誤差画像を生成する
請求項６記載の動画像符号化装置。
【請求項８】
量子化手段は、符号化対象画像を構成する複数の画像のデータを並列に量子化する
請求項１から請求項７のうちのいずれか１項に記載の動画像符号化装置。
【請求項９】
符号化対象画像を構成する画像のデータを、複数の量子化パラメータを使用して前記量子化パラメータごとにそれぞれ量子化し、
複数の量子化された画像のデータを、それぞれ量子化される際に使用された前記量子化パラメータと対応付けて記憶し、
記憶された複数の量子化された画像のデータから、所定の量子化パラメータを使用して所定の量子化された画像のデータを抽出し、
抽出された前記所定の量子化された画像のデータを符号化し、
符号化結果に基づいて、次に所定の量子化された画像のデータが抽出される際に使用される所定の量子化パラメータを決定する
ことを特徴とする動画像符号化方法。
【請求項１０】
コンピュータに、
符号化対象画像を構成する画像のデータを、複数の量子化パラメータを使用して前記量子化パラメータごとにそれぞれ量子化する量子化処理、
複数の量子化された画像のデータを、それぞれ量子化される際に使用された前記量子化パラメータと対応付けて記憶する記憶処理、
記憶された複数の量子化された画像のデータから、所定の量子化パラメータを使用して所定の量子化された画像のデータを抽出する抽出処理、
抽出された前記所定の量子化された画像のデータを符号化する符号化処理、および
前記符号化処理による符号化結果に基づいて、次に所定の量子化された画像のデータが抽出される際に使用される所定の量子化パラメータを決定する決定処理
を実行させるための動画像符号化プログラム。
【国際調査報告】
2016194380.tif 000014
2016194380.tif 000015
2016194380.tif 000016
2016194380.tif 000017