(57)【要約】【課題】クラウドコンピューティングとの親和性がよく、圧縮符号化された画像も効率よく扱える、クラウドプラットフォーム上の複数ノードでの超解像処理の分散処理を可能とする技術を提供する。【解決手段】画像フレームの並びからなる入力画像について分割するポイントを判定する分割ポイント判定部と、画像フレームの並びからなる入力画像を、分割するポイントで、複数の情報処理装置用に分割するとともに、分割された画像フレームの並びのそれぞれを対応する複数の情報処理装置のそれぞれに振分ける分割処理部と、複数の情報処理装置によって実行された超解像処理の結果を結合し出力する結合処理部と、を備える。【選択図】図２
2014174834.tif 000002
【特許請求の範囲】
【請求項１】
複数の低解像度の入力画像から高解像度画像を生成する超解像処理を分散して行うために、入力画像データを複数の情報処理装置用に分割する情報処理装置であって、
画像フレームの並びからなる入力画像について分割するポイントを判定する分割ポイント判定部と、
前記画像フレームの並びからなる入力画像を、前記分割するポイントで、前記複数の情報処理装置用に分割するとともに、分割された画像フレームの並びのそれぞれを対応する前記複数の情報処理装置のそれぞれに振分ける分割処理部と、
前記複数の情報処理装置によって実行された超解像処理の結果を結合し出力する結合処理部と、
を備える情報処理装置。
【請求項２】
前記分割処理部は、利用できる前記複数の情報処理装置の数とそれぞれの能力に応じて、分割後の画像フレームの並びのフレーム数を決定する、請求項１に記載の情報処理装置。
【請求項３】
前記能力は、処理能力および／または通信能力である、請求項２に記載の情報処理装置。
【請求項４】
前記入力画像の特徴を解析する画像解析部を備え、
前記分割処理部は、前記画像解析部により解析された入力画像の特徴に基づき、分割後の画像フレームの並びのフレーム数を決定する、請求項２または請求項３に記載の情報処理装置。
【請求項５】
前記複数の情報処理装置による超解像処理の結果の出力が、前記結合処理部による結合のタイミング対し、所定時間内に出力されるように、前記分割を行う、請求項１から請求項４のいずれか１項に記載の情報処理装置。
【請求項６】
前記画像解析部は、入力画像におけるシーンチェンジとなるフレーム境界を検出し、前記分割ポイント判定部は、シーンチェンジとなるフレーム境界を前記分割するポイントとする、請求項１から請求項５のいずれか１項に記載の情報処理装置。
【請求項７】
入力画像データがＧＯＰ（Group  of  Picture）の並びで構成される場合、前記分割ポイント判定部は、ＧＯＰ境界を前記分割するポイントとする、請求項１から請求項６のいずれか１項に記載の情報処理装置。
【請求項８】
請求項１から請求項７のいずれか１項に記載の情報処理装置と、前記複数の情報処理装置と、を備えるクラウドプラットフォーム。
【請求項９】
請求項１から請求項７のいずれか１項に記載の情報処理装置は、前記複数の情報処理装置における超解像処理の状況を管理する状態管理部を備え、
当該クラウドプラットフォームは、前記複数の情報処理装置に新規の情報処理装置を追加したり、既存の情報処理装置を返却したりするための装置管理部を備え、
前記複数の情報処理装置のうち、前記超解像処理が遅れている情報処理装置がある場合、前記状態管理部は、前記装置管理部に新規の情報処理装置を追加するよう要求し、前記分割処理部は、追加された情報処理装置を含む前記複数の情報処理装置用に未処理の画像フレームの並びを再分割し、前記振分け部は、再分割された画像フレームの並びのそれぞれを対応する、追加された情報処理装置を含む前記複数の情報処理装置に振分け、
前記複数の情報処理装置による超解像処理に余裕がある場合、前記分割処理部は、返却する情報処理装置を除く前記複数の情報処理装置用に未処理の画像フレームの並びを再分割し、前記振分け部は、再分割された画像フレームの並びのそれぞれを対応する、返却対象の情報処理装置を除く前記複数の情報処理装置に振分け、前記状態管理部は、前記装置管理部に、返却対象の情報処理装置を空き装置とするよう要求する、請求項８に記載のクラウドプラットフォーム。
【請求項１０】
入力画像データが、ＭＰＥＧ（Moving  Picture  Experts  Group）の規格に準拠する符号化データである場合、前記複数の情報処理装置は、位置合わせ処理の際の対応点を、（１）ＧＯＰ先頭のＩフレーム、（２）Ｐフレーム、（３）Ｂフレームの順に、優先的に使用する、請求項９に記載のクラウドプラットフォーム。
【請求項１１】
前記複数の情報処理装置は、前記符号化データにおけるＩフレーム、Ｐフレーム、Ｂフレームの順序関係のまま、位置合わせ処理を行う、請求項１０に記載のクラウドプラットフォーム。
【請求項１２】
前記複数の情報処理装置は、請求項１から請求項７のいずれか１項に記載の情報処理装置の構成を有し、
自装置の超解像処理が遅れている場合、自装置の状態管理部が、前記装置管理部に、自装置と協働する追加の１または複数の情報処理装置を要求し、位置合わせ処理を終えていない画像データについて、自装置の分割処理部が、追加の情報処理装置用に再分割を行い、自装置の振分け部が、再分割された位置合わせ処理を終えていない画像データの振り分けを行い、自装置は、位置合わせ処理を終えた画像データについて、再構成処理を実施する、請求項９から請求項１１のいずれか１項に記載のクラウドプラットフォーム。
【請求項１３】
前記複数の情報処理装置の分割ポイント判定部は、前記超解像処理における位置合わせ処理の際得られた入力画像のグローバル動きベクトルの大きさが設定値より大きいフレーム境界を前記分割するポイントとする、請求項１２に記載のクラウドプラットフォーム。
【請求項１４】
前記複数の情報処理装置の分割ポイント判定部は、前記超解像処理における位置合わせ処理の際得られた対応点の数または動きベクトルの出力数が設定値より少ないフレームの境界を前記分割するポイントとする、請求項１２または請求項１３に記載のクラウドプラットフォーム。
【請求項１５】
前記複数の情報処理装置は、超解像処理後の画像データに対し所定の符号化を行う符号化部を備え、該符号化部は、超解像処理の際得られた動きベクトルを、当該符号化部による符号化の動きベクトルとして使用する、請求項９から請求項１４のいずれか１項に記載のクラウドプラットフォーム。
【請求項１６】
複数の低解像度の入力画像から高解像度画像を生成する超解像処理を分散して行うために、入力画像データを複数の情報処理装置用に分割する情報処理装置で実行される情報処理方法であって、
分割ポイント判定部が、画像フレームの並びからなる入力画像について分割するポイントを判定する工程と、
分割処理部が、前記画像フレームの並びからなる入力画像を、前記分割するポイントで、前記複数の情報処理装置用に分割するとともに、分割された画像フレームの並びのそれぞれを対応する前記複数の情報処理装置のそれぞれに振分ける工程と、
結合処理部が、前記複数の情報処理装置によって実行された超解像処理の結果を結合し出力する工程と、
を含む情報処理方法。
【請求項１７】
複数の低解像度の入力画像から高解像度画像を生成する超解像処理を分散して行うために、入力画像データを複数の情報処理装置用に分割する情報処理装置で使用されるプログラムであって、
前記情報処理装置を、
画像フレームの並びからなる入力画像について分割するポイントを判定する分割ポイント判定部と、
前記画像フレームの並びからなる入力画像を、前記分割するポイントで、前記複数の情報処理装置用に分割するとともに、分割された画像フレームの並びのそれぞれを対応する前記複数の情報処理装置のそれぞれに振分ける分割処理部と、
前記複数の情報処理装置によって実行された超解像処理の結果を結合し出力する結合処理部と、
して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、情報処理装置、クラウドプラットフォーム、情報処理方法およびそのプログラムに関する。
【背景技術】
【０００２】
近年、ＴＶ受像機やディスプレイに超解像技術を使った製品が市販されている。超解像技術は、画像の画素サンプリング時（撮像素子による光電変換時や縮小処理時）に失われる詳細な部分（ナイキスト周波数以上の成分）を画像処理によって再現する技術である。例えば、解像度が低いＮＴＳＣ方式のビデオカメラやＤＶＤの映像を大画面液晶ＴＶに表示する場合に、超解像技術を使うと詳細な部分が再現されて、解像度が高い鮮明な画像を得ることができる。
【０００３】
超解像技術にはさまざまな方式が提案されているが、複数フレーム超解像と呼ばれる、複数フレームの低解像度入力画像を位置合わせして高解像度出力画像を生成する画像処理技術がある。複数フレーム超解像では、高解像度の高画質な処理結果が得られる反面、処理負荷が高いという問題がある。
【０００４】
一方、複数のサーバをネットワークで結び処理を分散させることで大規模のデータを扱えるようにしたクラウドコンピューティングのプラットフォーム（クラウドプラットフォーム）の整備が進んできており、そのプラットフォーム上で超解像処理を分散処理することが可能となってきた。従来は、超解像処理を１つのノード（情報処理装置）で実行していたが、それでは処理時間がかかりすぎるために、クラウドプラットフォームなどを利用して、複数のノードで分散処理する技術が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−２９０７１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、複数フレーム超解像処理を複数のノードで分散処理する場合、従来技術では、クラウドプラットフォームとの親和性の点や、圧縮符号化された画像を効率よく扱えないという点で問題があった。
【０００７】
本発明が解決しようとする課題は、クラウドコンピューティングとの親和性がよく、圧縮符号化された画像も効率よく扱える、クラウドプラットフォーム上の複数ノードでの超解像処理の分散処理を可能とする情報処理装置、クラウドプラットフォーム、情報処理方法およびそのプログラムを提供することである。
【課題を解決するための手段】
【０００８】
実施形態の情報処理装置は、複数の低解像度の入力画像から高解像度画像を生成する超解像処理を分散して行うために、入力画像データを複数の情報処理装置用に分割する情報処理装置である。この情報処理装置は、画像フレームの並びからなる入力画像について分割するポイントを判定する分割ポイント判定部と、画像フレームの並びからなる入力画像を、分割するポイントで、複数の情報処理装置用に分割するとともに、分割された画像フレームの並びのそれぞれを対応する複数の情報処理装置のそれぞれに振分ける分割処理部と、複数の情報処理装置によって実行された超解像処理の結果を結合し出力する結合処理部と、を備える。
【図面の簡単な説明】
【０００９】
【図１】図１は、一般的なクラウドプラットフォームの構成例を示す図である。
【図２】図２は、実施形態のクラウドプラットフォームの一例を示すブロック図である。
【図３】図３は、各ノードにおける分散処理の過程を示した図である。
【図４】図４は、マスターノード１００の動作概要を説明するフローチャートである。
【図５】図５は、ＭＰＥＧ２等による符号化画像を入力とした場合のワーカーノードの構成例を示すブロック図である。
【図６】図６は、図５の構成に、さらに符号化部を追加した構成例を示した図である。
【図７】図７は、ＰＯＣＳ処理部の構成例を示す図である。
【図８】図８は、従来の、超解像処理を分散処理する場合の構成例（その１）を示す図である。
【図９】図９は、従来の、超解像処理を分散処理する場合の構成例（その２）を示す図である。
【発明を実施するための形態】
【００１０】
（第１の実施形態）
図１に、一般的なクラウドプラットフォームの構成例を示す。クラウドプラットフォームは、複数ノードをローカルネットワークでクラスタ化し、さらにグローバルネットワークで結合したプラットフォームである。クラウドプラットフォーム上の各ノードは、必要に応じて処理が動的に割り当てられ、ノードに対して処理が固定的に割り当てられていた従来のシステムとは異なる。
【００１１】
本実施形態のクラウドプラットフォームは、このようなクラウドプラットフォーム上で複数フレーム超解像処理（以下、超解像処理と記す）を実行することを想定している。なお、本実施形態で説明する基本的な手法は、このクラウドプラットフォームに限らず、ノードに処理が固定的に割り当てられるプラットフォームや、組み込みシステム、あるいはシステムＬＳＩであっても適用可能であり、同様に動作させることが可能である。
【００１２】
図２は、本実施形態のクラウドプラットフォームの一例を示すブロック図である。
同図に示すクラウドプラットフォームは、１つのマスターノード１００と、この例では３つのワーカーノード２０１〜２０３と、ノード管理部４００と、ノードプール５００とから構成されている。各構成要素は、クラウドプラットフォームに含まれる。また、必要に応じて１または複数のチャイルドワーカーノード２０１’（後述）が構成要素として含まれる。ノードプール５００は、ワーカーノード２０１〜２０３やチャイルドワーカーノード２０１’の供給源である。ワーカーノードとなったノードのうち必要がなくなったものは、ノードプールへ空きノード（５０１〜５０３）として戻される。
【００１３】
入力画像データ１０は、マスターノード１００に入力される。このマスターノード１００の画像解析部１０２は、入力画像データ１０に対してその画像の特徴（画像の複雑度（平坦部か、エッジやテクスチャが多いかなど）やＧＯＰ境界などを判定する。
【００１４】
分割ポイント判定部１０３は、各ワーカーノード２０１〜２０３が実行する超解像処理に適したフレーム間境界、または、画像内の境界（例えば、画像符号化の際の処理の単位となるブロック間の境界など）で、入力画像データ１０に対する分割点の判定を行う。以下では、フレーム単位での分割を行うこととし、そのためフレーム境界での分割点の判定を行うものとして説明する。
【００１５】
分割処理部１０１は、分割ポイント判定部１０３の判定に基づいて、フレーム（複数）を分割し、ワーカーノード２０１〜２０３に分割後のフレームを割り当て、その処理を依頼する。各ワーカーノード（２０１〜２０３）は、フレーム単位で分割された画像のまとまりをそれぞれで処理する。各ワーカーノード（２０１〜２０３）の処理結果は、マスターノード１００に入力された入力画像データ１０と同じ順番で結合処理部１０４により結合され出力される（図３参照）。なお、ワーカーノードの数は２以上ならばいくつでもよく、要求される処理時間、ノード使用料金などを考慮して決めることができる。
【００１６】
ここで、入力画像のフレームの並びに対して、分割する長さを決める基準について説明する。
【００１７】
分割する長さ（フレーム数）は、ワーカーノードの利用可能数や、その処理能力や、通信能力によって決める。ワーカーノードの利用可能数は、クラウドを構成する全ノード数や、レンタルで利用している場合では契約しているノード数、超解像処理以外の処理によって使われているノード数によって決まる。また、ワーカーノードの処理能力は均一ということはなく、ワーカーノードとして使用されるサーバのハードウェア構成によって変わる。例えば、ＣＰＵのクロック周波数、メモリ容量、ストレージ容量にばらつきがある。そのような条件を考慮して複数のワーカーノードの出力が、結合処理部１０４が出力画像データ２０を生成するタイミングに間に合うように（そのタイミングに対し、設定された時間内に出力されるように）、また、超解像処理にかかわる各ノードにおいてアイドル時間が極力生じないように決める。
【００１８】
ところで、超解像処理は、入力画像の複雑度によって処理時間が変わる。エッジやテクスチャが多い場合は、平坦部が多い場合と比べて処理時間がかかる。従って、各ワーカーノード（２０１〜２０３）の処理能力を基にフレーム（複数）を分割する長さを決定すると、各ワーカーノード（２０１〜２０３）の能力（処理能力および／または通信能力）から想定される処理時間と実際の処理時間との差が生じて好ましくない。そこで、本実施形態では、画像解析部１０２が、事前にそのような画像の特徴を解析することで、分割処理部１０１が分割処理を行う際考慮する各ワーカーノード（２０１〜２０３）処理時間の予測精度を向上させるようにしている。なお、上記複雑度は、例えば入力画像に対し、周知のＳｏｂｅｌオペレータやＰｒｅｗｉｔｔオペレータによって輪郭（エッジ）抽出を行い、全体の画素に対する輪郭の割合を入力画像の複雑度とする。この複雑度を求める際、輪郭の縦横の向きは関係ないので、輪郭全体についてまとめて複雑度の算出を行う。また、この複雑度が実際の処理時間にどの程度影響するかを事前に計測し、その影響の程度を、例えば係数で表わし（例えば、ある複雑度で、実際の処理時間が、想定される処理時間の１．２倍になるときは、その係数を１．２とし）記憶しておき、各ワーカーノード（２０１〜２０３）の能力から想定される処理時間にこの係数を乗じることにより、処理時間の予測精度を向上させる。
【００１９】
また、本実施形態では、処理中に特定のワーカーノード（２０１〜２０３のいずれか）の処理が遅れている場合は、状態管理部１０５がその状況を把握し、分割処理部１０１により入力画像データ１０のうちまだ処理が終わっていない部分を上記の手法で再分割し、状態管理部１０５がノード管理部４００へ新たなワーカーノードを要求し、新たなワーカーノードにその処理を開始させる。逆に、処理時間に余裕が生じる場合は、状態管理部１０５がその状況を把握し、入力画像データ１０のうちまだ処理が終わっていない部分を、ノードプール５００に戻さないワーカーノード用に（例えば、図２：２０１，２０２）、分割処理部１０１が上記手法で再分割するとともに、状態管理部１０５が、使用しないワーカーノード（例えば、図２：２０３）をノードプール５００へ返却するようノード管理部４００に要求する。なお、各ワーカーノード２０１〜２０３は、自装置における処理状況の情報を状態管理部１０５に提供できるものとする。
【００２０】
ここで、マスターノード１００の動作を、図４を用いて説明する。図４は、マスターノード１００の動作概要を説明するフローチャートである。
【００２１】
マスターノード１００では、まず、画像解析部１０２が、前述のように入力画像に対し画像の特徴を解析する（ステップＳ１０１）。
【００２２】
次いで、分割ポイント判定部１０３が、画像解析部１０２による解析結果や、状態管理部１０５からの情報（各ワーカーノードにおける処理状況）を基に、分割ポイントを判定する（ステップＳ１０２）。
【００２３】
次いで、分割処理部１０１が、分割ポイント判定部１０３による判定結果を基に、ノード管理部４００を介して必要なワーカーノード（例えば、図２：２０１〜２０３）を確保し、入力画像データ１０（フレームの並び）を分割して、各ワーカーノードに分割したフレームを振分ける（ステップＳ１０３）。
【００２４】
また、状態管理部１０５による各ワーカーノードにおける超解像処理の状態（処理状況）から、再分割が必要か判断し、再分割が必要な場合（ステップＳ１０４でＹｅｓ）、ステップＳ１０３に戻り前述の再分割を行う。
【００２５】
当該時点で再分割が必要でない場合（ステップＳ１０４でＮｏ）、結合処理部１０４による結合処理が終了しているか判断し、終了していない場合は（ステップＳ１０５でＮｏ）、ステップＳ１０４に戻り、終了している場合は（ステップＳ１０５でＹｅｓ）、一連の処理を終了する。
【００２６】
次に、分割ポイントの判定基準について説明する。
【００２７】
（シーンチェンジポイントに基づく分割）
入力される画像が、編集が施されたコンテンツである場合、シーンの変化点（シーンチェンジポイント）が含まれる。複数フレーム超解像の特性として、２フレーム間の対応点を検出する必要があるが、シーンチェンジをまたいで対応点は検出されないので、このシーンチェンジポイントを分割ポイントとする。なお、シーンチェンジの検出は、特開２００６−１２１２７４号公報や特開２００６−２７０３０１号公報に開示された公知の手法を用いて行うことができる。
【００２８】
ところで、シーンチェンジによってカット（フレームの集まり）に分割される場合、カットの最初のフレームには前の位置合わせフレーム、カットの最後のフレームには、後の位置合わせフレームが存在しない。そこで、対応点数が減少するのを防ぐため、カットの最初のフレームは、後の位置合わせフレームを追加する。カットの最後のフレームには同様に前の位置合わせフレームを追加するようにする。具体的には、例えば、前２フレーム、後２フレームを使う設定の場合は、カットの最初のフレームは後の４フレームを使い、カットの２番目のフレームは前の１フレームと後の３フレームを使うようにすることで対応点数の減少を防ぐ。
【００２９】
（ＧＯＰ（Group  of  Picture）に基づく分割）
入力画像データ１０は、ネットワークでの伝送量やストレージ容量を削減するために符号化されている場合が多い。符号化のアルゴリズムが、フレーム間差分を用いている場合は、任意のフレーム境界で分割することができない。例えばＭＰＥＧ（Moving  Picture  Experts  Group）２等の場合、Ｉフレームと呼ばれるフレーム間差分を用いないフレームが、フレームの並びの中に一定間隔で挿入されているが、それ以外に、前または後ろの画面（フレーム）との差分を符号化したＰフレームと、前と後ろの画面との差分を符号化したＢフレームがある。Ｉフレームはそれのみで復号できるが、それ以外のＰフレーム、Ｂフレームは差分をとった前後の画像がなければ復号できない。そのため、そのような符号化画像を分割する場合は、Ｉフレームを先頭として形成されるフレームの集まりであるＧＯＰの単位で分割する必要がある。そのときには、画像解析部１０２は、入力画像データ１０のシーケンスヘッダ（ＧＯＰの開始点）を基にＧＯＰ境界を判定し、分割処理部１０１が、ＧＯＰ境界で分割を行うようにする。
【００３０】
（対応点に基づく分割）
上記の分割ポイントの判定基準で分割された長さが最適とならないことが考えられる。そのときは、ワーカーノード２０ｘ（２０１〜２０３のいずれか）が位置合わせ中に、対応点の数が設定値より少なくなる境界を判定して再分割を行うことで処理を分散させる。このような場合に対応するため、この例では、ワーカーノード２０ｘ（２０１〜２０３）を、マスターノード１００と同等の機能（構成要素）をもたせた構成とする。ワーカーノード２０ｘの分割ポイント判定部が上記判定を行い、ワーカーノード２０ｘの状態管理部が、ノード管理部４００に新たにチャイルドワーカーノード２０１’の生成を依頼し、ノード管理部４００がノードプール５００から未使用の空きノードの１つまたは複数をチャイルドワーカーノード２０１’として起動させるようにする。ワーカーノード２０ｘは、それ以降の位置合わせ処理を中止して、再構成処理に移る。チャイルドワーカーノード２０１’は中止されたフレーム以降に対する位置合わせ処理以降の処理を開始し、処理結果を親のワーカーノード２０ｘに渡す。
【００３１】
（グローバル動きベクトルに基づく分割）
グローバル動きベクトルは、画面全体の動き表わすベクトルである。主にパンやチルトなどのカメラの動きによってグローバル動きベクトルが生じる。位置合わせ中に、画面全体の動きが急激なとき、超解像処理における位置合わせ処理が追従できずに対応点を求めることができなくなる。そのため、ワーカーノード２０ｘ（２０１〜２０３）を、マスターノード１００と同等の機能（構成要素）をもたせた構成とし、ワーカーノード２０ｘの分割ポイント判定部がそのようなフレーム間の変化点（グローバル動きベクトルの大きさが設定値より大きいフレーム境界）を検出して、その位置を分割ポイントとする。そして、ワーカーノード２０ｘの分割処理部が再分割を行い、上記対応点に基づく分割の例のように、ワーカーノード２０ｘの状態管理部が、ノード管理部４００に新たにチャイルドワーカーノード２０１’の生成を依頼し、ノード管理部４００がノードプール５００から未使用の空きノードの１つまたは複数をチャイルドワーカーノード２０１’として起動させて、処理を分散する。また、画像に全く動きがない場合は、対応点が求められたとしても高解像化には効果がない。そのような無変化点も検出して、分割ポイントとする。なお、グローバル動きベクトルは、動きベクトル計算部２３において、例えば、特開２００８−５０２１９６号公報等に開示の公知の手法により求めることができる。
【００３２】
上記のようにしてフレーム（複数）を分割しても、まだ分割された長さが長い場合は、チャイルドワーカーノードがさらにフレーム（複数）の分割を行い、当該ワーカーノードから追加のチャイルドワーカーノードの起動をノード管理部４００に要求する。なお、チャイルドワーカーノード（親）に対する追加のチャイルドワーカーノード（子）は、上記チャイルドワーカーノード（親）と同様に機能する。
【００３３】
図５は、ＭＰＥＧ２等による符号化画像を入力とした場合のワーカーノードの構成例を示すブロック図である。入力１の符号化画像を、復号化部２１０で非圧縮の画像データ２に変換してから超解像処理を施す。入力された符号化画像はフレームの並べ替えが生じているので、正しいフレーム順序に戻す必要がある。そのため、並べ替え部２４０によってフレームの並べ替えを行った上で、出力７として並べ替え後の画像データを出力する。符号化画像を扱わないワーカーノードの構成と異なるのは、上記復号化部２１０と並べ替え部２４０が追加された点である。
【００３４】
ここで、超解像処理を実施する通常のワーカーノードと共通する部分（復号化部２１０と並べ替え部２４０を除く部分）について図５を用いて説明する。以下の構成例は、公知のＰＯＣＳ（Projection  Onto  Convex  Sets）法を採用した複数フレーム超解像処理を実施する画像処理装置と同様の機能構成からなっており、以下ではその概要を説明する。なお、図中、画素選択部２１、ブロックマッチング部２２、および動きベクトル計算部２３が位置合わせ処理部２２０を構成し、動きベクトル変換部３１、ＰＳＦ計算部３２、初期画像生成部３３、およびＰＯＣＳ処理部３４が再構成処理部２３０を構成する。
【００３５】
画素選択部２１は、入力される画像データ２から対応点（異なるフレームにおいて同じ位置を示す点）の候補を選択する。ブロックマッチング部２２は、いわゆるブロックマッチングの手法により、画素選択部２１が求めた対応点の候補の中から、使用する対応点を求める。動きベクトル計算部２３は、ブロックマッチング部２２が求めた対応点のフレーム間の変位を求め、動きベクトル変換部３１が、拡大後の座標系における上記対応点の位置を求める。ＰＳＦ（Point  Spread  Function）計算部３２は、高解像度化のための補正に使用する公知の連立方程式（ＰＳＦ）を求める。初期画像生成部３３は、仮の高解像度画像５を生成する（ここでは、線形補間により拡大画像を生成する）。ＰＯＣＳ処理部３４は、周知のように、ＰＳＦ計算部３２が求めたＰＳＦを使って、初期画像生成部３３が生成した仮の高解像画像５を補正する。これにより、高解像度画像６が生成される。
【００３６】
ここで、ＰＯＣＳ処理部３４の構成例を図７に示し説明する。
【００３７】
画像バッファ３００には、初期画像生成部３３で補間拡大された初期画像が入力される。予測画像生成部３０１は、動きベクトル４から予測画像３０２を生成する。生成された予測画像３０２は、誤差計算部３０３によって、復号化部２１０による復号化後の画像データ２（または入力１の画像データが符号化されていない場合は、そのデータ）として入力される第１の解像度を持ったソース映像と比較されて、誤差画像３０４が生成される。誤差補正部３０５は、誤差画像３０４とＰＳＦ計算部３２が求めたＰＳＦを使って初期画像を補正した出力画像を生成し、画像バッファ３００にこの出力画像を格納する。以上の予測画像生成部３０１から誤差補正部３０５による処理は、誤差が既定の量となるまで何回か実行されて、最終的な出力画像６が出力される。なお、図５に示す復号化部２１０は、入力される符号化データ（入力１）の符号化方式に対応する復号を行う処理部であり、並べ替え部２４０は、符号化方式に対応した並べ替えを行う処理部である。また、図６は、図５の構成に、さらに符号化部２６０を追加したものである。
【００３８】
ところで、ＧＯＰを構成するフレーム数は、期待する分割長にならない場合がある。そこで、マスターノード１００と同等の機能をもたせたワーカーノードでは、その分割ポイント判定部２５０（図５，図６）において、動きベクトル計算部２３による動きベクトル４の出力数（対応点の数に対応）を監視して、それが設定値以下となる新たな分割ポイントを検出する。そして、前述のように、チャイルドワーカーノードを起動させて分散処理を行う。
【００３９】
また、画像を符号化するときは、Ｉフレーム、Ｐフレーム、Ｂフレームでなるべく画質の差が現れないように制御するが完全に均質にはならない。一般に、Ｉフレームは他のＰフレームとＢフレームの基準となるために高画質である。図５におけるフレームタイプを示す符号化フレームタイプ情報３を使って、対応点の候補を絞り込む際の、画素選択部２１でのフレーム間の優先順位を制御する。ここでは、ＧＯＰ先頭のＩフレームを主として、Ｐフレーム、Ｂフレーム（対応点数が少ないときにＢフレームを用いる）の順に超解像処理における対応点として優先的に用いる制御を行う。この実施例では、Ｉフレームの画素を優先的に対応点として使うことで高画質化を実現する。
【００４０】
また、ＭＰＥＧ２等による符号化画像は、Ｉ０−Ｐ３−Ｂ１−Ｂ２−Ｐ６−Ｂ４−Ｂ５のようにフレームの並べ替えが行われている。ここでアルファベットはフレームタイプを表わし、数字はフレーム番号を表している。並べ替えが行われる前の元のフレーム順序は、Ｉ０−Ｂ１−Ｂ２−Ｐ３−Ｂ４−Ｂ５−Ｐ６である。このような並べ替えが行なわれる理由は、例えばＩ０とＰ３を復号化しないとＢ１とＢ２が復号化できないために、Ｐ３が先に配置される必要があるためである。本実施形態では、復号後に直ちにフレームの並べ替えを行わず、そのままの順序で超解像処理に用いる。これにより、超解像処理を高速化することができる。
【００４１】
（その他の実施例１）
超解像処理後の出力画像を圧縮符号化しなければ、出力画像は、入力画像の数十から数百倍のデータサイズになってしまう。そのため、本実施例では、処理結果を、データの結合前に圧縮符号化する。また、圧縮符号化の際に動きベクトルを用いる場合、超解像処理の位置合わせの結果得られる動きベクトルを採用する。復号化時に得られるフレームタイプの並び（ＧＯＰ構成）や符号化の動きベクトル（超解像の位置合わせの動きベクトルではない）を符号化へ流用するのは周知の技術であり、画像サイズに変更がなければ動きベクトルの流用は可能であるが、超解像処理は画像サイズが拡大する。そのために、例えばサイズが縦横２倍の時に、入力画像の８×８画素のブロック単位で求められていた動きベクトルが、出力画像では１６×１６画素ブロック単位の、空間密度の低い動きベクトルとなってしまう。一方、超解像処理の位置合わせの結果得られる動きベクトルは入力画像の画素毎に求められているため、超解像処理後の出力画像のサイズであっても、２×２画素ブロック単位の十分な空間密度の動きベクトルである。そこで、例えばＨ．２６４／ＡＶＣによる符号化を行う場合、その８×８画素ブロック単位の動きベクトルを求める場合は、超解像処理における１６個の２×２画素ブロック単位の１６個の動きベクトルを平均して使うようにする。
【００４２】
また、符号化方式変換時により高い精度の動きベクトルが必要な場合がある。例えば、入力画像データ（符号化データ）がＭＰＥＧ２よるものであって、出力をＨ．２６４／ＡＶＣの形式にする場合がある。この場合、ＭＰＥＧ２の動きベクトルは整数画素精度であるのに対して、Ｈ．２６４／ＡＶＣの動きベクトルは１／４画素精度まで使うことができるものであるので、変換前の符号化方式の動きベクトルを、変換後の符号化方式の動きベクトルに流用できない。一方、超解像処理における位置合わせ処理の結果得られる動きベクトルは小数画素精度なので、通常考えられるあらゆる符号化方式に対応することができるので、超解像処理後に符号化を実施する場合、超解像処理における位置合わせ処理の結果得られる動きベクトルを使用することで、動きベクトルを使用する任意の符号化方式での符号化が可能となる。
【００４３】
以上説明したように、上述の実施形態および実施例によれば、図８に示す位置合わせ処理をサーバ側で行い再構成処理をクライアント側で行う従来の構成例や、図９に示す超解像処理をワーカーノードで行い、クライアント側で結合させる従来の構成例等による分散処理に比べ、超解像処理結果の画質を損なわない上記各種フレーム境界で、入力画像を分割し、複数ノードで超解像処理を並列に実施することで、高画質な高解像度画像を得られる超解像処理を、高速に実行することができる。また、クラウドプラットフォームとの親和性がよく、かつ、効率のよいシステムを実現することができる。
【００４４】
なお、本実施形態のクラウドプラットフォームを構成する情報処理装置は、少なくとも、ＣＰＵなどの制御装置と、ＲＯＭ（Read  Only  Memory）やＲＡＭなどの記憶装置と、ＨＤＤ、ＣＤドライブ装置などの二次記憶装置や外部記憶装置を備えており、通常のコンピュータを利用したハードウェア構成となっている。各種設定値等は、上記記憶装置や二次記憶装置に記憶される。また、この情報処理装置は、必要に応じて、ディスプレイ装置などの表示装置や、キーボードやマウスなどの入力装置等も備える。
【００４５】
また、本実施形態のクラウドプラットフォームを構成する情報処理装置で実行される制御用または画像処理用のプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Digital  Versatile  Disk）等のコンピュータで読み取り可能な記録媒体に記録されて提供される。あるいは、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供ないし配信するように構成してもよい。あるいは、上記ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【００４６】
また、上記情報処理装置で実行されるプログラムは、上記情報処理装置に備わるＣＰＵ（プロセッサ）により上記記憶装置や二次記憶装置から読み出され、主記憶装置上にロードされることにより、分割処理部１０１、画像解析部１０２、分割ポイント判定部１０３、結合処理部１０４、および状態管理部１０５等が、主記憶装置上に生成されるようになっている。
【００４７】
本発明のいくつかの実施形態（ないし実施例）を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００４８】
２１  画素選択部
２２  ブロックマッチング部
２３  動きベクトル計算部
３１  動きベクトル変換部
３２  ＰＳＦ計算部
３３  初期画像生成部
３４  ＰＯＣＳ処理部
１００  マスターノード
１０１  分割処理部
１０２  画像解析部
１０３、２５０  分割ポイント判定部
１０４  結合処理部
１０５  状態管理部
２０１、２０２、２０３  ワーカーノード
２１０  復号化部
２２０  位置合わせ処理部
２３０  再構成処理部
２４０  並べ替え部
２６０  符号化部
３００  画像バッファ
３０１  予測画像生成部
３０２  予測画像
３０３  誤差計算部
３０４  誤差画像
３０５  誤差補正部
４００  ノード管理部（装置管理部）
【図１】
2014174834.tif 000003
【図２】
2014174834.tif 000004
【図３】
2014174834.tif 000005
【図４】
2014174834.tif 000006
【図５】
2014174834.tif 000007
【図６】
2014174834.tif 000008
【図７】
2014174834.tif 000009
【図８】
2014174834.tif 000010
【図９】
2014174834.tif 000011