(57)【要約】【課題】高品位な符号化データを出力する符号化装置を提供することを目的とする。【解決手段】実施形態の符号化装置は、分割部と、優先度算出部と、決定部と、符号化部とを備える。分割部は、少なくとも一つの画像を含む画像群の画像を複数の領域に分割する。優先度算出部は、領域それぞれの重要度に基づき領域毎に優先度を算出する。決定部は、優先度に基づき領域毎の処理順序を決定する。符号化部は、領域を、決定された処理順序に従って符号化する。【選択図】図１
2015084495.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも一つの画像を含む画像群の前記画像を複数の領域に分割する分割部と、
前記領域それぞれの重要度に基づき前記領域毎に優先度を算出する優先度算出部と、
前記優先度に基づき前記領域毎の処理順序を決定する決定部と、
前記領域を、決定された前記処理順序に従って符号化する符号化部と、
を備える符号化装置。
【請求項２】
前記符号化部は、複数の処理実行部を有し、
前記符号化装置は、
前記複数の領域のそれぞれの符号化の処理時間を推定する推定部と、
前記複数の領域のそれぞれの推定の処理時間に応じて、前記複数の領域のそれぞれを前記複数の処理実行部のうちの何れかの前記処理実行部に割り当てる割当部と、
をさらに備え、
前記複数の処理実行部のそれぞれは、割り当てられた領域を決定された前記処理順序で符号化する
請求項１に記載の符号化装置。
【請求項３】
前記割当部は、前記複数の処理実行部の間で、推定の処理時間の合計の差が小さくなるように、前記複数の領域のそれぞれを何れかの処理実行部に割り当てる
請求項２に記載の符号化装置。
【請求項４】
前記決定部は、推定の処理時間が長い領域ほど優先して符号化されるように、前記複数の処理実行部毎の符号化順序を決定する
請求項３に記載の符号化装置。
【請求項５】
前記優先度算出部は、前記領域が参照画像か否か、領域の特徴量、画像内における位置の少なくとも１つの重要度に基づいて前記優先度を算出する
請求項１に記載の符号化装置。
【請求項６】
前記符号化部による符号化の処理時間が予め定められた基準時間を超えた場合に、前記符号化部の符号化方式を高速な符号化処理に切り替える切替制御部をさらに備える
請求項１に記載の符号化装置。
【請求項７】
互いに参照関係が生じない複数の画像を含む画像群を取得する取得部をさらに備え、
前記分割部は、前記取得部が取得した前記画像群に含まれるそれぞれの画像を複数の領域に分割する
請求項１に記載の符号化装置。
【請求項８】
少なくとも一つの画像を含む画像群の前記画像を複数の領域に分割する分割ステップと、
前記領域それぞれの重要度に基づき前記領域毎に優先度を算出する優先度算出ステップと、
前記優先度に基づき前記領域毎の処理順序を決定する決定ステップと、
前記領域を、決定された前記処理順序に従って符号化する符号化ステップと、
を含む符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、画像を符号化する装置および方法に関する。
【背景技術】
【０００２】
従来、画像をスライスまたはタイル等の複数の領域に分割して、領域毎に符号化する動画像の符号化装置が知られている。このような符号化装置では、スライスまたはタイル等の領域の境界を移動させて、領域毎の処理時間を調整することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−４８４６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、従来の符号化装置は、スライスまたはタイル等の複数の領域を予め定められた順序で符号化する。従って、従来の符号化装置では、比較的に重要な領域を重要ではない領域より後に符号化する場合があった。このような場合、従来の符号化装置では、伝送路に出力したり、実時間での符号化を実現したりする場合等に、高品位な符号化データを出力できない可能性があった。
【課題を解決するための手段】
【０００５】
実施形態の符号化装置は、分割部と、優先度算出部と、決定部と、符号化部とを備える。前記分割部は、少なくとも一つの画像を含む画像群の前記画像を複数の領域に分割する。前記優先度算出部は、前記領域それぞれの重要度に基づき前記領域毎に優先度を算出する。前記決定部は、前記優先度に基づき前記領域毎の処理順序を決定する。前記符号化部は、前記領域を、決定された前記処理順序に従って符号化する。
【図面の簡単な説明】
【０００６】
【図１】第１実施形態に係る符号化装置のブロック構成図。
【図２】第１実施形態に係る符号化装置のフロー図。
【図３】予測符号化の画像構造と、画像群との関係を示す図。
【図４】複数の領域の一例を示す図。
【図５】多段階の予測符号化の画像構造を示す図。
【図６】複数の領域の処理順序の一例を示す図。
【図７】第２実施形態に係る符号化装置のブロック構成図。
【図８】第２実施形態の変形例に係る符号化装置のブロック構成図。
【図９】予測符号化の画像構造と処理対象のコンピュータとの関係を示す図。
【図１０】第２実施形態に係る符号化装置のフロー図。
【図１１】複数の領域のそれぞれの推定の処理時間の一例を示す図。
【図１２】複数の領域のそれぞれの処理実行部への割り当て例を示す図。
【図１３】第３実施形態に係る符号化装置のブロック構成図。
【図１４】第３実施形態に係る符号化装置の処理の流れを示すフロー図。
【図１５】本実施形態に係る符号化装置のハードウェア構成図。
【発明を実施するための形態】
【０００７】
（第１実施形態）
図１は、第１実施形態に係る符号化装置１００のブロック構成を示す図である。符号化装置１００は、動画像データを予め定められた方式により実時間で符号化して符号化データを生成する。
【０００８】
符号化装置１００は、取得部２２と、分割部２４と、優先度算出部２６と、決定部２８と、選択部３０と、符号化部３２とを備える。取得部２２は、例えば撮像装置、記録媒体の再生装置または放送信号の受信装置等から動画像データを入力する。取得部２２は、入力した動画像データから、少なくとも一つの画像（例えばフレームまたはフィールド）を含む画像群を取得する。そして、取得部２２は、取得した画像群を分割部２４に供給する。なお、画像群は、１枚の画像で構成されてもよいし、複数の画像で構成されてもよい。
【０００９】
分割部２４は、受け取った画像群に含まれるそれぞれの画像を複数の領域に分割する。領域は、後段の符号化部３２が一括して符号化する単位である。例えば、領域は、動画像符号化標準方式（例えば、ＭＰＥＧ（Moving  Picture  Experts  Group）−１、ＭＰＥＧ−２、ＭＰＥＧ−４またはＨ．２６４／ＡＶＣ等）で規定されたスライスである。また、例えば、領域は、ＭＰＥＧ−Ｈ  ＨＥＶＣ／Ｈ．２６５で規定されたタイルである。
【００１０】
優先度算出部２６は、領域それぞれの重要度に基づき、領域毎に優先度を算出する。ここで、重要度とは、動画像データ中における領域の重要性を表すパラメータである。重要度は、一例として、領域が参照画像か否か、領域の特徴量、或いは画像内における位置等のパラメータ、またはこれらのパラメータを組み合わせた値である。本例において、重要度は、重要性が高いほど高い値を表す。優先度算出部２６は、重要度が高いほど、より高い値となるように優先度を算出する。
【００１１】
決定部２８は、領域毎に算出された優先度に基づき、領域毎の処理順序を決定する。決定部２８は、優先度が高いほど早く処理されるように処理順序を決定する。
【００１２】
選択部３０は、分割部２４により分割された複数の領域のそれぞれを、決定部２８により決定された処理順序に従って順次に選択して、符号化部３２に供給する。符号化部３２は、領域を選択部３０により選択された順序に従って順次に符号化する。すなわち、符号化部３２は、領域を、決定部２８により決定された処理順序で符号化する。
【００１３】
符号化部３２は、一例として、ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４、Ｈ．２６４／ＡＶＣまたはＨ．２６５／ＨＥＶＣ等で規格化された方式で、それぞれの領域を符号化して符号化データを生成する。そして、符号化部３２は、生成した符号化データを、処理順序に従って後段のユニットに送る。
【００１４】
図２は、第１実施形態に係る符号化装置１００の処理の流れを示すフロー図である。符号化装置１００は、動画像データの入力が開始されると、ステップＳ１１から処理を開始する。
【００１５】
まず、ステップＳ１１において、取得部２２は、動画像データから、１組の画像群を取得する。この場合において、取得部２２は、互いに参照関係が生じない１または複数の画像を含む画像群を取得する。
【００１６】
例えば、動画像データの予測構造が、図３に示されるような構成であったとする。なお、図３において、矢印は、参照の方向を示している。また、図３において、♯に続けて記載した番号は、表示順序を表している。この場合、取得部２２は、一例として、Ｂピクチャ（♯２）、Ｂピクチャ（♯３）およびＰピクチャ（♯７）の画像の組を、１つの画像群として取得する。取得部２２は、このように互いに参照関係の無い画像を１つの画像群として取得することにより、並行して符号化をすることが可能な１以上の画像を取得することができる。
【００１７】
続いて、ステップＳ１２において、分割部２４は、画像群に含まれるそれぞれの画像を複数の領域に分割する。例えば、図４に示されるように、分割部２４は、画像を、動画像符号化標準方式のスライスの単位で分割する。また、ＭＰＥＧ−Ｈ  ＨＥＶＣ／Ｈ．２６５で符号化する場合には、分割部２４は、画像を、ＭＰＥＧ−Ｈ  ＨＥＶＣ／Ｈ．２６５のタイルの単位で分割してもよい。
【００１８】
続いて、ステップＳ１３において、優先度算出部２６は、複数の領域のそれぞれの重要度を表すパラメータに基づき、複数の領域のそれぞれの優先度を算出する。この場合、優先度算出部２６は、重要度が高い領域ほど高い値となるように優先度を算出する。
【００１９】
優先度算出部２６は、一例として、対象の領域を含む画像が、参照画像（図３のＩピクチャまたはＰピクチャ）か否かに基づき優先度を算出する。この場合、優先度算出部２６は、対象の領域を含む画像が、参照画像（図３のＩピクチャまたはＰピクチャ）であれば優先度を高くし、参照画像でない画像（図３のＢピクチャ）であれば優先度を低くする。また、優先度算出部２６は、一例として、対象の領域を含む画像が、Ｉピクチャであれば優先度を最も高くし、Ｐピクチャであれば優先度を中程度とし、Ｂピクチャであれば優先度を最も低くしてもよい。これにより、優先度算出部２６は、他の画像へ与える影響に応じて優先度を算出することができる。
【００２０】
また、例えば図５に示されるように、Ｂピクチャが他のＢピクチャにより参照されるような多段階層の予測構造で符号化する場合もある。このような場合、優先度算出部２６は、参照される回数が多い画像（図５の階層１の画像）ほど優先度を高くし、参照されない画像（図５の階層４の画像）の優先度を最も低くしてもよい。参照画像とは、他の画像から参照される画像を示す。優先度算出部２６は、Ｂピクチャであっても他の画像から参照される場合には、それを考慮して優先度を算出する。
【００２１】
また、優先度算出部２６は、一例として、対象の領域の特徴量に基づき優先度を算出してもよい。例えば、優先度算出部２６は、対象の領域のアクティビティの大きさ、または、対象の領域の動き量の大きさに基づき優先度を算出してもよい。この場合、優先度算出部２６は、対象の領域のアクティビティが大きければ優先度を高くし、アクティビティが小さければ優先度を低くする。また、優先度算出部２６は、対象の領域の動き量が大きければ優先度を高くし、動き量が小さければ優先度を低くする。これにより、優先度算出部２６は、領域に含まれる画像情報量の多さに応じて優先度を算出することができる。
【００２２】
また、優先度算出部２６は、一例として、対象の領域の画像内の位置に基づき優先度を算出してもよい。例えば、優先度算出部２６は、対象の領域が画像中央からの距離に応じて優先度を算出してもよい。この場合、優先度算出部２６は、対象の領域が画像中央に近いほど優先度を高くする。これにより、優先度算出部２６は、ユーザに注目される可能性の高い領域の優先度を、ユーザに注目される可能性の低い領域の優先度より高くすることができる。
【００２３】
また、優先度算出部２６は、一例として、対象の領域に含まれるオブジェクトが前景であるか背景であるかに基づき優先度を算出してもよい。優先度算出部２６は、一例として、視点からオブジェクトまでの距離を基準距離と比較して前景であるか背景であるかを判別する。この場合、優先度算出部２６は、対象の領域に含まれるオブジェクトが、前景である場合には優先度を高くし、背景である場合には優先度を低くする。これにより、優先度算出部２６は、ユーザに注目される可能性の高い前景を含む領域を、ユーザに注目される可能性の低い背景を含む領域の優先度より高くすることができる。
【００２４】
また、優先度算出部２６は、一例として、人物等のユーザにより注目される可能性が高いオブジェクトが対象の領域に含まれているかに基づき優先度を算出してもよい。優先度算出部２６は、一例として、顔検出処理等をして領域内に人物が含まれているか否かを判別する。この場合、優先度算出部２６は、対象の領域に含まれるオブジェクトが、人物等のユーザにより注目される可能性が高いオブジェクトである場合には優先度を高くする。これにより、優先度算出部２６は、ユーザに注目される可能性の高いオブジェクトを含む領域を、他の領域の優先度より高くすることができる。
【００２５】
さらに、優先度算出部２６は、以上の複数の判断要素の組み合わせによって優先度を算出してもよい。これにより、優先度算出部２６は、対象の領域の優先度をより正確に算出することができる。
【００２６】
続いて、ステップＳ１４において、決定部２８は、複数の領域のそれぞれに対して算出した優先度に基づき、複数の領域のそれぞれの処理順序を決定する。決定部２８は、優先度が高い領域ほど、より優先して処理されるように、即ち早い順序で処理されるように処理順序を決定する。例えば、図６に示されるように、決定部２８は、画像群内における複数の領域のそれぞれに対して処理順序を決定する。
【００２７】
続いて、ステップＳ１５において、選択部３０は、決定された処理順序に従って、画像群に含まれる複数の領域の中から１つの領域を選択する。続いて、ステップＳ１６において、符号化部３２は、選択した領域の動画像データを符号化して、符号化データを生成する。そして、符号化部３２は、生成した符号化データを後段のユニットに出力する。
【００２８】
選択した領域の動画像データの符号化が完了すると、続いて、ステップＳ１７において、選択部３０は、画像群内の全ての領域の符号化が完了したか否かを判断する。完了していなければ（ステップＳ１７のＮｏ）、選択部３０は、処理をステップＳ１５に戻して次の処理順序の領域を選択する。完了していれば（ステップＳ１７のＹｅｓ）、選択部３０は、処理をステップＳ１８に進める。
【００２９】
ステップＳ１８において、取得部２２は、動画像データの入力が終了したか否かを判断する。動画像データの入力が終了していなければ（ステップＳ１８のＮｏ）、取得部２２は、処理をステップＳ１１に戻して、次の画像群を取得して、処理をステップＳ１１から繰り返す。動画像データの入力が終了していれば（ステップＳ１８のＹｅｓ）、取得部２２は、本フローを終了する。
【００３０】
以上のように、第１実施形態に係る符号化装置１００は、重要な領域をより早く符号化して出力する。これにより、符号化装置１００によれば、符号化データの伝送中に通信エラーが生じた場合であっても、重要な部分を先に後段の装置に送信しているので、通信エラーの影響を受ける可能性を少なくすることができる。従って、符号化装置１００によれば、エラー耐性の強い高品位な符号化データを出力することができる。
【００３１】
（第２実施形態）
図７は、第２実施形態に係る符号化装置２００のブロック構成図である。第２実施形態に係る符号化装置２００は、図１に全体構成を示した第１実施形態に係る符号化装置１００と略同一の機能および構成を有する。従って、第２実施形態に係る符号化装置２００の説明では、第１実施形態に係る符号化装置１００と略同一の機能および構成を有するユニットには同一の符号を付けて、相違点を除き説明を省略する。
【００３２】
第２実施形態に係る符号化装置２００は、取得部２２と、分割部２４と、優先度算出部２６と、決定部２８と、推定部４２と、割当部４４と、選択分配部４６と、符号化部３２と、合成部４８とを備える。
【００３３】
第２実施形態に係る符号化部３２は、互いに並列に動作する複数の処理実行部５２を有する。複数の処理実行部５２のそれぞれは、プロセッサ内のコアに対応し、互いに並列にプログラムを実行して動画像データの符号化処理をする。なお、図面中には、４個の処理実行部５２を示しているが、符号化部３２が備える処理実行部５２の数は４個に限られない。
【００３４】
推定部４２は、複数の領域のそれぞれの符号化の処理時間を推定する。推定部４２は、一例として、それぞれの領域の符号化の複雑度に応じて、符号化の処理時間を推定する。
【００３５】
割当部４４は、複数の領域のそれぞれの推定の処理時間に応じて、複数の領域のそれぞれを複数の処理実行部５２のうちの何れかの処理実行部５２に割り当てる。より具体的には、割当部４４は、複数の処理実行部５２の間で、推定の処理時間の合計の差が小さくなるように、画像群に含まれる複数の領域のそれぞれを何れかの処理実行部５２に割り当てる。
【００３６】
選択分配部４６は、分割部２４により分割された複数の領域のそれぞれを、割当部４４により割り当てられた処理実行部５２に分配する。この場合において、選択分配部４６は、決定部２８により決定された処理順序に従った順序で符号化されるように領域を選択する。より具体的には、例えば、選択分配部４６は、次の第１の処理または第２の処理を実行する。
【００３７】
第１の処理では、選択分配部４６は、まず、割当部４４による割り当てに従って、複数の領域を処理実行部５２毎のグループに分割する。続いて、選択分配部４６は、各グループ内の領域を、決定部２８により決定された処理順序に従った順序で並べ替える。そして、選択分配部４６は、複数の処理実行部５２のそれぞれに対して、対応するグループ内の領域を上位の領域から順に分配する。
【００３８】
また、第２の処理では、選択分配部４６は、まず、複数の領域の全体を決定部２８により決定された処理順序に従って並べ替える。続いて、選択分配部４６は、並べ替え後の順序を保持しながら、割当部４４による割り当てに従って、複数の領域を処理実行部５２毎のグループに分割する。そして、選択分配部４６は、複数の処理実行部５２のそれぞれに対して、対応するグループ内の領域を上位の領域から順に分配する。なお、第１の処理で領域を分配した場合も、第２の処理で領域を分配した場合も結果は同一となる。
【００３９】
複数の処理実行部５２のそれぞれは、割り当てられた領域を、選択分配部４６により分配された順で符号化する。すなわち、複数の処理実行部５２のそれぞれは、割当部４４により割り当てられた領域を、決定部２８により決定された処理順序で符号化する。合成部４８は、複数の処理実行部５２のそれぞれにより生成された符号化データを多重化して後段の装置に出力する。
【００４０】
図１０は、第２実施形態に係る符号化装置２００の処理の流れを示すフロー図である。符号化装置２００は、動画像データの入力が開始されると、ステップＳ２１から処理を開始する。
【００４１】
まず、ステップＳ２１において、取得部２２は、動画像データから、１組の画像群を取得する。ステップＳ２１の処理は図２のステップＳ１１と同様である。
【００４２】
続いて、ステップＳ２２において、分割部２４は、画像群に含まれるそれぞれの画像を複数の領域に分割する。ステップＳ２２の処理は図２のステップＳ１２と同様である。
【００４３】
続いて、ステップＳ２３において、推定部４２は、複数の領域のそれぞれの符号化の処理時間を推定する。推定部４２は、一例として、それぞれの領域の符号化の複雑度に応じて、符号化の処理時間を推定する。
【００４４】
符号化の複雑度とは、動画像データに対する符号化処理がどの程度複雑となるかを表すパラメータである。符号化の複雑度は、大きいほど対応する動画像データを符号化する時間が長くなる可能性が高い。符号化の複雑度を表すパラメータは、例えばアクティビティである。推定部４２は、一例として、対象の領域のアクティビティの大きさに基づき、推定の処理時間を算出する。
【００４５】
また、さらに、推定部４２は、一例として、過去の符号化処理における同一の領域の符号化の処理時間に基づき、複数の領域のそれぞれの符号化の処理時間を推定してもよい。時間方向における画像の変化は比較的に小さいので、同一の領域の符号化の処理時間を用いることにより、推定部４２は、精度良く処理時間を推定することができる。
【００４６】
続いて、ステップＳ２４において、割当部４４は、複数の処理実行部５２の間で、推定の処理時間の合計の差が小さくなるように、画像群に含まれる複数の領域のそれぞれを複数の処理実行部５２のうちの何れかの処理実行部５２に割り当てる。
【００４７】
例えば、符号化部３２が４個の処理実行部５２を有し、１つの画像群に含まれる領域が１０個であるとする。そして、各領域の推定の処理時間が、図１１に示すような時間であったとする。すなわち、第１の領域の推定の処理時間が８単位時間、第２の領域の推定の処理時間が６単位時間、第３〜第５の領域の推定の処理時間が４単位時間、第６〜第８の領域の推定の処理時間が３単位時間、第９〜第１０の領域の推定の処理時間が２単位時間であったとする。
【００４８】
この場合、割当部４４は、例えば、図１２に示すように、１０個の領域のそれぞれを、４個の処理実行部５２のそれぞれに割り当てる。すなわち、割当部４４は、第１の処理実行部５２に第１の領域および第９の領域を割り当てる。また、割当部４４は、第２の処理実行部５２に第２の領域および第７の領域を割り当てる。また、割当部４４は、第３の処理実行部５２に第３の領域、第５の領域および第１０の領域を割り当る。また、割当部４４は、第４の処理実行部５２に第４の領域、第６の領域および第８の領域を割り当てる。これにより、割当部４４は、推定の処理時間の合計が処理実行部５２毎にほぼ均等となるように、複数の領域のそれぞれを何れかの処理実行部５２に割り当てることができる。
【００４９】
続いて、ステップＳ２５において、優先度算出部２６は、複数の領域のそれぞれの優先度を算出する。ステップＳ２５の処理は図２のステップＳ１３と同様である。なお、優先度算出部２６は、ステップＳ２５の処理をステップＳ２３またはステップＳ２４の前に実行してもよい。
【００５０】
続いて、ステップＳ２６において、決定部２８は、複数の領域のそれぞれの優先度に基づき、複数の処理実行部５２のそれぞれ毎に、割り当てられた領域の処理順序を決定する。この場合において、決定部２８は、優先度が高い領域ほどより優先して処理されるように、即ち早い順序で処理されるように処理順序を決定する。また、この場合において、決定部２８は、領域の推定の処理時間を推定部４２から取得して、推定の処理時間が長い領域ほど優先して符号化されるように、処理順序の補正等をしてもよい。決定部２８は、これにより情報量の多い領域を優先して符号化させる様な符号化順番を決定することができる。
【００５１】
続いて、ステップＳ２７（Ｓ２７−１、Ｓ２７−２、Ｓ２７−３）において、選択分配部４６および符号化部３２は、複数の処理実行部５２のそれぞれ毎に、並行して領域の選択および符号化処理を実行する。具体的には、選択分配部４６および符号化部３２は、ステップＳ２７内において、ステップＳ３１、ステップＳ３２およびステップＳ３３を並行して実行する。
【００５２】
ステップＳ３１において、選択分配部４６は、決定された処理順序に従って、対応する処理実行部５２に割り当てられた領域の中から一つずつ領域を選択する。続いて、ステップＳ３２において、対応する処理実行部５２は、選択した領域の動画像データを符号化する。続いて、ステップＳ３３において、選択分配部４６は、対応する処理実行部５２に割り当てられた全ての領域の符号化が完了したか否かを判断する。完了していなければ（ステップＳ３３のＮｏ）、選択分配部４６は、処理をステップＳ３１に戻して次の処理順序の領域を選択する。
【００５３】
そして、選択分配部４６は、全ての処理実行部５２において、割り当てられた全ての領域の符号化が完了すると（ステップＳ３３のＹｅｓ）、選択分配部４６は、処理をステップＳ２８に進める。
【００５４】
続いて、ステップＳ２８において、取得部２２は、動画像データの入力が終了したか否かを判断する。動画像データの入力が終了していなければ（ステップＳ２８のＮｏ）、取得部２２は、処理をステップＳ２１に戻して、次の画像群を取得して、処理をステップＳ２１から繰り返す。動画像データの入力が終了していれば（ステップＳ２８のＹｅｓ）、取得部２２は、本フローを終了する。
【００５５】
以上のように、第２実施形態に係る符号化装置２００は、複数の処理実行部５２の処理時間をほぼ均等にすることができる。これにより、符号化装置２００によれば、処理実行部５２が符号化処理をしていない停止時間を少なくし、効率良く動作をすることができる。従って、符号化装置２００によれば、第１実施形態と同様にエラー耐性の強い高品位な符号化データを出力することができるとともに、効率良く動作することができる。
【００５６】
なお、推定の処理時間に誤差が生じた場合、複数の処理実行部５２のうち一部の処理実行部５２は割り当てられた領域の全ての符号化を完了しているが、他の処理実行部５２は割り当てられた領域の符号化を完了していないという状態が発生する可能性がある。このような状態の場合、割当部４４は、画像群に含まれる複数の領域のうちの符号化が未完了の複数の領域を、複数の処理実行部５２の間で、推定の処理時間の合計の差が小さくなるように、再度、何れかの処理実行部５２に割り当ててもよい。さらに、決定部２８は、符号化が未完了の複数の領域のそれぞれの優先度に基づき、複数の処理実行部５２のそれぞれ毎に、割り当てられた領域の処理順序を決定する。
【００５７】
そして、選択分配部４６および符号化部３２は、複数の処理実行部５２のそれぞれ毎に、符号化が未完了の複数の領域のそれぞれの選択および符号化処理を実行する。このような処理を実行することにより、符号化装置２００は、さらに効率良く動作することができる。
【００５８】
また、複数の処理実行部５２は、異なる複数のコンピュータ５４のプロセッサに分散して実現されてもよい。例えば、図８に示すように、複数の処理実行部５２は、第１のコンピュータ５４−１および第２のコンピュータ５４−２の２つに分散して実現されてもよい。なお、複数の処理実行部５２を分散して実現するコンピュータ５４の数は、２つに限らず、３以上であってもよい。
【００５９】
このように複数のコンピュータ５４に複数の処理実行部５２を分散して実現する場合、選択分配部４６は、それぞれのコンピュータ５４が画像群の集合の単位で動画像を符号化するように領域を分配する。ここで、画像群の集合とは、少なくとも１つの画像群を含む集合であり、例えばＧＯＰ（Group  Of  Pictures）（例えば、Ｉピクチャから次のＩピクチャの直前までの間の複数の画像）である。
【００６０】
また、画像群の集合は、一例として、多段階層の予測構造で符号化する場合における最も浅い階層の画像（例えば図９の階層１の画像）の発生毎に区切られた複数の画像であってもよい。例えば、図９の階層構造の場合、選択分配部４６は、画像＃１を含む集合と、画像＃２〜＃９を含む集合と、画像＃１０〜＃１７を含む集合と、画像＃１８〜＃２５を含む集合とに動画像データを分割する。このように分割された画像群の集合を第１のコンピュータ５４−１と第２のコンピュータ５４−２に分散して分配する場合、選択分配部４６は、例えば、第１のコンピュータ５４−１に、画像＃１の集合と、画像＃１０〜＃１７の集合とを分配する。また、選択分配部４６は、第２のコンピュータ５４−２に、画像＃２〜＃９の集合と、画像＃１８〜＃２５の集合とを分配する。なお、複数のコンピュータ５４のそれぞれは、他のコンピュータ５４で符号化された画像を参照画像として用いる場合には、他のコンピュータ５４から必要な参照画像のコピーを受け取る。このような処理を実行することにより、符号化装置２００は、さらに効率良く符号化の並列処理をすることができる。
【００６１】
（第３実施形態）
図１３は、第３実施形態に係る符号化装置３００のブロック構成図である。第３実施形態に係る符号化装置３００は、図１に全体構成を示した第１実施形態に係る符号化装置１００と略同一の機能および構成を有する。従って、第３実施形態に係る符号化装置３００の説明では、第１実施形態に係る符号化装置１００と略同一の機能および構成を有するユニットには同一の符号を付けて、相違点を除き説明を省略する。
【００６２】
符号化装置３００は、取得部２２と、分割部２４と、優先度算出部２６と、決定部２８と、選択部３０と、符号化部３２と、切替制御部６２とを備える。
【００６３】
切替制御部６２は、符号化部３２が動画像データの所定単位の符号化が完了する毎に通知を受けて、所定単位毎の動画像データの符号化の処理時間を計測する。そして、切替制御部６２は、符号化部３２による所定単位の符号化の処理時間が予め定められた基準時間を超えたか否かを判定する。
【００６４】
所定単位は、例えば、画像群単位、画像単位、領域単位、または、領域より小さい符号化単位等である。また、基準時間は、例えば、所定単位の動画像データの再生時間に応じた値（例えば、所定単位の動画像データの再生時間の９０％等）である。
【００６５】
そして、切替制御部６２は、符号化部３２による所定単位の符号化の処理時間が予め定められた基準時間を超えた場合に、符号化部３２の符号化方式を高速な符号化処理に切り替える。
【００６６】
例えば、フレームレートが６０枚／秒であり、１フレーム内の領域数が８個であれば、１フレームの符号化は１／６０秒以下で完了し、１つの領域の符号化は１／４８０秒で完了しなければならない。しかし、ソフトウェアプログラムを用いて実時間で符号化を行う場合、符号化の処理時間が例えばフレーム毎で一定とならない場合がある。このため、切替制御部６２は、所定単位の符号化の処理時間が基準時間を超えた場合に、符号化方式を高速な符号化処理に切り替えることにより、符号化部３２に符号化の実時間性を確保させることができる。
【００６７】
切替制御部６２は、一例として、画像群の単位で符号化部３２の符号化方式を切り替えてもよい。この場合、切替制御部６２は、画像群毎に符号化の処理時間を計測する。そして、切替制御部６２は、ある画像群の符号化の処理時間が基準時間を超えた場合には、後続の画像群を高速な符号化処理で符号化をする。
【００６８】
また、切替制御部６２は、一例として、画像（フレームまたはフィールド）の単位で符号化部３２の符号化方式を切り替えてもよい。この場合、切替制御部６２は、画像毎に符号化の処理時間を計測する。そして、切替制御部６２は、ある画像の符号化の処理時間が基準時間を超えた場合には、後続の画像を高速な符号化処理で符号化をする。これにより、切替制御部６２は、所定数の画像毎の処理時間を一定にすることができる。
【００６９】
また、切替制御部６２は、一例として、領域の単位で符号化部３２の符号化方式を切り替えてもよい。この場合、切替制御部６２は、領域毎に符号化の処理時間を計測する。そして、切替制御部６２は、ある領域の符号化の処理時間が基準時間を超えた場合には、後続の領域を高速な符号化処理で符号化をする。これにより、切替制御部６２は、画像毎の処理時間を一定にすることができる。
【００７０】
また、切替制御部６２は、一例として、領域より小さい単位（例えば、マクロブロックまたはコーディングユニットの単位）で符号化部３２の符号化方式を切り替えてもよい。この場合、切替制御部６２は、領域より小さい符号化単位毎に符号化の処理時間を計測する。そして、切替制御部６２は、領域より小さい符号化単位の符号化の処理時間が基準時間を超えた場合には、後続の符号化単位を高速な符号化処理で符号化をする。これにより、切替制御部６２は、例えば領域の処理時間を一定にすることができる。
【００７１】
また、切替制御部６２は、所定単位の符号化の処理時間が基準時間を超えた直後に、次の所定単位の符号化方式を高速な方式に切り替えてもよいし、例えば連続して複数の所定単位の処理時間が基準時間を超えた後に、後続の所定単位の符号化方式を高速な方式に切り替えてもよい。また、切替制御部６２は、所定単位の符号化の処理時間が基準時間より大幅に短かった場合には、後続の所定単位の符号化方式を、演算量の多い方式に切り替えてもよい。
【００７２】
切替制御部６２は、符号化の処理時間を短くできれば、どのような方式に切り替えてもよい。切替制御部６２は、一例として、動きベクトルの探索範囲を狭めたり、動きベクトルの探索精度を下げたり、使用する符号化モード数を少なくしたり、モード判定のコスト計算を簡略化したり、ループフィルタを無効化することにより、符号化処理を高速化する。また、切替制御部６２は、全てのマクロブロックを予め登録された符号化ストリームに置き換える処理をすることにより、符号化処理を高速化してもよい。
【００７３】
図１４は、第３実施形態に係る符号化装置３００の処理の流れを示すフロー図である。符号化装置３００は、ステップＳ１１からステップＳ１８までの処理を、図２のフローチャートに示す処理と同様に実行する。
【００７４】
符号化装置３００は、ステップＳ１１からステップＳ１８までの処理と並行して、動画像データの所定単位毎に、ステップＳ４１とステップＳ４５との間の処理を繰り返して実行する（ステップＳ４１とステップＳ４５との間のループ処理）。
【００７５】
ループ処理内では、まず、ステップＳ４２において、切替制御部６２は、動画像データの符号化の処理時間を計測する。続いて、ステップＳ４３において、切替制御部６２は、計測した処理時間に基づき、符号化方式を決定する。ステップＳ４４において、切替制御部６２は、決定した符号化方式を、符号化部３２に設定する。そして、切替制御部６２は、以上のループ処理を動画像データが終了するまで繰り返して実行する。
【００７６】
以上のように、第３実施形態に係る符号化装置３００は、符号化の処理時間が基準時間を超えた場合には高速な符号化方式に切り替えることができる。これにより、符号化装置３００によれば、例えば画像群、画像または領域毎の符号化の処理時間を均等にして、実時間で符号化をすることができる。また、符号化装置３００は、高速な符号化方式に切り替えられた場合であっても、重要な領域を先に符号化しているので、符号化データの品位を高くすることができる。従って、符号化装置３００によれば、高品位な符号化データを出力することができるとともに、符号化の実時間性を確保することができる。
【００７７】
なお、第３実施形態に係る符号化装置３００の切替制御部６２を、第２実施形態に係る符号化装置２００に設けてもよい。例えば、第２実施形態に係る符号化装置２００は、複数の処理実行部５２のそれぞれに対応して複数の切替制御部６２を備えてもよい。この場合、複数の切替制御部６２は、対応する処理実行部５２の符号化方式を制御する。また、第２実施形態に係る符号化装置２００は、１つの切替制御部６２を備えてもよい。この場合、切替制御部６２は、複数の処理実行部５２の符号化方式を一括して制御する。このような第２実施形態に係る符号化装置２００は、高品位な符号化データを出力するとともに、効率良く実時間で動作することができる。
【００７８】
図１５は、第１〜第３実施形態に係る符号化装置１００、２００、３００のハードウェア構成の一例を示す図である。第１〜第３実施形態に係る符号化装置１００、２００、３００は、汎用のコンピュータを基本のハードウェアとして実現することができる。この場合、コンピュータは、予めインストールされた符号化プログラムを実行することにより、符号化装置１００、２００、３００として機能する。
【００７９】
符号化プログラムを実行するコンピュータは、例えば、動画像データを外部から入力する画像入力ＩＦ２０１と、符号化データを外部へと出力するストリーム出力ＩＦ２０２と、ＣＰＵ（Central  Processing  Unit）のコア等である複数のプロセッサ２０３と、ＲＯＭ（Read  Only  Memory）およびＲＡＭ（Random  Access  Memory）等のメモリ２０４とを備える。画像入力ＩＦ２０１、ストリーム出力ＩＦ２０２、複数のプロセッサ２０３およびメモリ２０４は、バス等を介して接続されている。
【００８０】
実施形態に係る符号化装置１００、２００、３００で実行されるプログラムは、例えば、ＲＯＭ等に予め組み込まれて提供される。また、実施形態に係る符号化装置１００、２００、３００で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ（Compact  Disk  Read  Only  Memory）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（Compact  Disk  Recordable）、ＤＶＤ（Digital  Versatile  Disk）等のコンピュータで読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供されるように構成してもよい。
【００８１】
さらに、実施形態に係る符号化装置１００、２００、３００で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、実施形態に係る符号化装置１００、２００、３００で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【００８２】
そして、第１実施形態に係る符号化装置１００で実行されるプログラムは、取得モジュール、分割モジュール、優先度算出モジュール、決定モジュール、選択モジュールおよび符号化モジュールを含む。このプログラムは、コンピュータを上述した符号化装置１００の各部（取得部２２、分割部２４、優先度算出部２６、決定部２８、選択部３０および符号化部３２）として機能させうる。なお、このコンピュータは、プロセッサ２０３がコンピュータ読取可能な記憶媒体からこのプログラムを主記憶装置上に読み出して実行することができる。また、取得部２２、分割部２４、優先度算出部２６、決定部２８、選択部３０および符号化部３２は、一部または全部がハードウェアにより構成されていてもよい。また、第１実施形態に係る符号化装置１００として機能するコンピュータは、少なくとも１つのプロセッサ２０３を備えればよい。
【００８３】
また、第２実施形態に係る符号化装置２００で実行されるプログラムは、取得モジュール、分割モジュール、推定モジュール、割当モジュール、優先度算出モジュール、決定モジュール、選択分配モジュール、複数の処理実行モジュールを有する符号化モジュール、および、合成モジュールを含む。このプログラムは、複数のプロセッサ２０３を備えるコンピュータを、上述した符号化装置２００の各部（取得部２２、分割部２４、推定部４２、割当部４４、優先度算出部２６、決定部２８、選択分配部４６、複数の処理実行部５２を有する符号化部３２、および、合成部４８）として機能させうる。なお、このコンピュータは、それぞれのプロセッサ２０３がコンピュータ読取可能な記憶媒体からこのプログラムを主記憶装置上に読み出して実行することができる。また、取得部２２、分割部２４、推定部４２、割当部４４、優先度算出部２６、決定部２８、選択分配部４６、符号化部３２、および、合成部４８は、一部または全部がハードウェアにより構成されていてもよい。
【００８４】
また、第３実施形態に係る符号化装置３００で実行されるプログラムは、取得モジュール、分割モジュール、優先度算出モジュール、決定モジュール、選択モジュール、切替制御モジュールおよび符号化モジュールを含む。このプログラムは、コンピュータを上述した符号化装置３００の各部（取得部２２、分割部２４、優先度算出部２６、決定部２８、選択部３０、切替制御部６２および符号化部３２）として機能させうる。なお、このコンピュータは、プロセッサ２０３がコンピュータ読取可能な記憶媒体からこのプログラムを主記憶装置上に読み出して実行することができる。また、取得部２２、分割部２４、優先度算出部２６、決定部２８、選択部３０、切替制御部６２および符号化部３２は、一部または全部がハードウェアにより構成されていてもよい。また、第３実施形態に係る符号化装置３００として機能するコンピュータは、少なくとも１つのプロセッサ２０３を備えればよい。
【００８５】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００８６】
２２  取得部
２４  分割部
２６  優先度算出部
２８  決定部
３０  選択部
３２  符号化部
４２  推定部
４４  割当部
４６  選択分配部
４８  合成部
５２  処理実行部
５４  コンピュータ
６２  切替制御部
１００  符号化装置
２００  符号化装置
３００  符号化装置
２０１  画像入力ＩＦ
２０２  ストリーム出力ＩＦ
２０３  プロセッサ
２０４  メモリ
【図１】
2015084495.tif 000003
【図２】
2015084495.tif 000004
【図３】
2015084495.tif 000005
【図４】
2015084495.tif 000006
【図５】
2015084495.tif 000007
【図６】
2015084495.tif 000008
【図７】
2015084495.tif 000009
【図８】
2015084495.tif 000010
【図９】
2015084495.tif 000011
【図１０】
2015084495.tif 000012
【図１１】
2015084495.tif 000013
【図１２】
2015084495.tif 000014
【図１３】
2015084495.tif 000015
【図１４】
2015084495.tif 000016
【図１５】
2015084495.tif 000017