以下、添付の図面を参照して、本発明をその実施形態の一例に基づいて詳細に説明する。尚、以下の実施形態において示す構成は一例に過ぎず、図示された構成に限定されるものではない。
以下の実施形態において、画像復号装置は、動画像を時間階層符号化(時間スケーラビリティに対応した階層符号化)を行って生成された符号データ(ビットストリーム)を入力する。ここで、時間階層符号化は、H.264及びHEVC(High Efficiency Video Coding符号化方式)で用いることができる方式である。そして、時間階層符号化は、動画像を複数のフレームレート(ピクチャレート)で表現し、フレームレートを選択することができる機能である。尚、以下の実施形態において画像復号装置に入力される符号データは、HEVCを用いて符号化されたデータであるとする。
そして、上述した時間階層符号化を実現するため、動画像の各フレームに、時間的な階層における各階層を識別するための情報を表す時間階層レベル(Temporal ID、時間階層識別子)を設けて符号化することが規定されている。各階層のフレームは、設定された時間階層レベルの値、及び設定された時間階層レベルの値より小さい値のフレームを参照して再生可能な構成となっている。そして、この時間階層レベルに基づいて、時間的な階層を選択し、再生(復号及び表示)を行う。
また、HEVCを用いた符号化・復号処理では、1フレーム(ピクチャ)を矩形に分割したタイル単位で符号化・復号を行うことが可能である。また、HEVCでは、シーケンス単位で、動画像の連続するフレームから一部分のタイルのみを独立に符号化・復号を行えるタイル(以下では独立復号タイルと称する)が定義されている。そして、フレーム内の1以上のタイルから構成される独立復号タイル(独立復号タイル群)をtemporal_motion_constrained_tile_sets(以下、TMCTSと略す)と称する。そして、HEVCでは、TMCTSと相対的に等しい位置のタイルのみをフレーム間予測の対象とし、TMCTSと相対的に異なる位置のタイルを用いた(参照した)予測を行わないことで、符号化・復号の独立性を確保することができる。尚、TMCTSに含まれるタイルの位置に関する情報は、符号データのヘッダ部分におけるSEI(Supplemental Enhancement Information)メッセージに挿入することができる。
(実施形態1)
以下、本実施形態に係る画像復号装置について、図面を用いて説明する。まず、本実施形態における画像復号装置の構成について図1を用いて説明する。図1は、本実施形態の画像復号装置10の構成を示すブロック図である。
図1において、入力部101は、動画像を時間階層符号化して生成された符号データを、後段の各処理部に入力する。バッファ102は、入力部101から出力入力された、時間階層符号化された符号データを、タイル単位で格納する。タイル復号部103は、バッファ102から出力された符号データをタイル単位で復号し、復号された画像(復号画像)を再生する。尚、本実施形態においてタイル復号部103は、単位時間(1秒間)以内に1フレーム(ピクチャ)以上復号可能な処理能力(復号能力)を持つものとする。しかしながら、復号能力はこれに限定されず、所定時間内に復号可能なフレーム数を示すものであれば構わない。表示制御部109は、タイル復号部103で復号された復号画像を表示部110に表示するよう制御する。表示部110は、表示制御部109によって制御された表示を行う。ヘッダ復号部104は、入力部101から出力された符号データのヘッダ部を復号し、復号して得られた情報を後段の処理部に出力する。能力取得部105は、タイル復号部103の復号処理の能力(性能)を示す能力情報を取得する。尚、能力情報とは、CPUの負荷を示す情報やメモリの容量を示す情報等を示す。
領域設定部106は、画像におけるユーザによって指示された指示領域及び/又は検知部(不図示)によって検知された特徴領域等の注目領域を設定する。例えば、領域設定部106は、表示部110にタッチパネルを設け、ユーザがタッチパネルに注目したい領域の位置や大きさを指示することにより、注目領域を設定することができる。また、領域設定部106が設定した注目領域を示す情報を表示制御部109へ出力し、表示制御部109が表示部110に注目領域を示す表示をするよう制御しても構わない。また、領域設定部106は、画像復号装置10によって画像が復号されている途中で、ユーザによって注目領域の設定又は変更が指示された場合や検知部(不図示)によって特徴領域が検知された場合に、レート算出部107に領域設定要求を伝える。ここで、本実施形態において領域設定要求は、ユーザによる指示に関する情報または検知に関する情報のうち少なくとも一つを含む。また、領域設定部106は、注目領域の設定状況に関する注目領域情報をレート算出部107に送る。ここで、注目領域情報は、注目領域の数に関する情報、注目領域の位置に関する情報、及び注目領域の大きさに関する情報のうち少なくとも一つの情報を含む。
レート算出部107は、動画像の1フレーム(ピクチャ)全体を表示する場合(全体表示の場合)のフレームレート、及び1フレーム内の注目領域を表示する場合(部分表示の場合)のフレームレートを算出する。レート算出部107は領域設定部106から領域設定要求、及び注目領域情報を取得する。また、レート算出部107は、能力取得部105からタイル復号部103の能力情報を取得し、入力部101から時間階層レベルに関する符号データを取得する。そして、レート算出部107は、領域設定部106、能力取得部105、及びヘッダ復号部104から取得した上述の情報のうち少なくともいずれかに基づいて、表示対象の動画像のフレームレートを算出する。復号タイル決定部108は、レート算出部107によって算出されたフレームレートを示す情報に基づいて、バッファ102に格納されている符号データの中から、復号する時間階層レベル及びタイルを選択する。
次に、図2を用いてレート算出部107の構成の詳細を説明する。端子201は、前述の能力取得部105からタイル復号部103の復号処理の能力を示す能力情報を入力する。端子202は、ヘッダ復号部104から画像に関する情報、時間階層に関する情報、及びタイルに関する情報を入力する。尚、本実施形態において画像に関する情報はフレームのサイズ等の画像の特性に関する情報を示し、時間階層に関する情報は時間階層の数、及び/又は各時間階層レベルのフレームレートに関する情報を示す。また、本実施形態においてタイルに関する情報はタイルの分割数、分割位置、独立復号タイルの数及び/又はフレーム内の独立復号タイルの数等の情報を示す。端子203は、領域設定部106から注目領域情報を入力する。レベル取得部204は、端子202から画像に関する情報、時間階層に関する情報、及びタイルに関する情報を入力し、各時間階層レベルのフレームレートを取得(算出)する。タイル決定部205は、端子203から注目領域情報を入力し、端子202からタイルに関する情報を入力する。そして、タイル決定部205は、動画像を全体表示で表示する場合、又は注目領域に基づく部分表示で表示する場合について、復号する対象となるタイルを決定し、決定した復号対象のタイルに関する情報をカウンタ206へ出力する。
カウンタ206は、タイル決定部205によって決定された復号対象のタイルの数をカウントする。そして、カウンタ206は、カウントした結果に基づくカウント情報をレート決定部207に出力する。レート決定部207は、端子201から入力した能力情報、及びカウンタ206から入力したカウント情報に基づいて、表示部110に表示(出力)する場合の復号済みの動画像のフレームレートを算出する。そして、レート決定部207は、決定したフレームレートに関する情報をレベル選択部208に出力する。レベル選択部208は、レート決定部207から入力したフレームレートに基づいて、表示部110に出力される復号済みの画像(復号画像)の時間階層レベルを選択(決定)する。端子209は、タイル決定部205で決定された復号に必要なタイルの情報、レベル選択部208で選択された時間階層レベルに関する情報を復号タイル決定部108及びタイル復号部103へ出力する。ここで、復号に必要なタイルの情報とは、復号対象のタイルの数、及び位置に関する情報を示す。
次に、本実施形態における画像復号装置10による復号処理の動作について図6を用いて説明する。図6は、本実施形態に係る画像復号装置10の復号処理動作を表すフローチャートである。画像復号装置10は、符号データを入力すると復号処理を開始する。
ステップS600において入力部101は、画像復号装置10に入力された符号データを順次取得し、取得した符号データをヘッダに対応する符号データ(以下、ヘッダデータ)と画像の各タイルに対応する符号データ(タイルデータ)とに分離する。そして、入力部101は、ヘッダデータをヘッダ復号部104に入力し、タイルデータをバッファ102に入力する。
ここで、入力部101に入力される符号データの例を図3に示す。尚、本実施形態では、図3に示すように符号化方式としてHEVCを用いて符号化された符号データを例にとって説明するが、これに限定されない。また、図3に示す符号データは時間階層レベルが3である場合の符号データであるが、時間階層レベルに限定されない。
図3(a)は符号データの全体を示す図であり、左側が符号データの先頭となる。図3(b)は図3(a)に示すヘッダデータに含まれるVPS(video_parameter_set)を示す図である。図3(c)は図3(a)に示すヘッダデータに含まれるSPS(Sequence Parameter Set)を示す図である。図3(d)は図3(a)に示すヘッダデータに含まれるPPS(Picture Parameter Set)を示す図である。図3(e)は図3(a)に示すヘッダデータに含まれるTMCTS_SEI(temporal_motion_constrained_tile_sets_Supplemental Enhancement Information)を示す図である。
次に、ステップS601においてヘッダ復号部104は、入力部101から入力されたヘッダデータのうちVPSを復号する。ここで、図3(b)に示すように、VPSには、先頭にNALユニットのヘッダ部分であるnal_unit_headerが含まれ、その後にVPSの符号データが含まれる。特に、VPSの符号データの中には、vps_max_sub_layers_minus1符号が含まれている。このvps_max_sub_layers_minus1符号の値は符号データの時間階層レベルの数を表す。例えば、時間階層レベルの数が1,2,3,・・・の場合はvps_max_sub_layers_minus1符号の値は0,1,2,・・・である。本実施形態では時間階層レベルの数は3であるので、vps_max_sub_layers_minus1符号の値を2とする。さらにVPSは、hrd_parametersを含む。hrd_parametersにはfixed_pic_parameter_rate_general_flag符号が含まれている。そして、fixed_pic_rate_general_flag符号の示す値が1であれば、時間階層毎のフレームの時間間隔が一定であることを示し、値が0であれば可変であることを示す。そして、fixed_pic_rate_general_flag符号の値が1である場合、elemental_duration_in_tc_minus1符号の値は時間階層毎のフレームの時間間隔を表す。
次に、ステップS602においてヘッダ復号部104は、入力部101から入力されたヘッダデータのうちSPSを復号する。ここで、図3(c)に示すように、SPSには先頭にNALユニットのヘッダ部であるnal_unit_headerが含まれる。さらにSPSには、nal_unit_headerの後にsps_video_parameter_set_id及びsps_max_sub_layers_minus1符号が含まれる。尚、sps_max_sub_layers_minus1符号の値は、シーケンス内での時間階層レベルの数を表す。本実施形態において、シーケンス内での時間階層レベルの数は3であるので、vps_max_sub_layers_minus1符号の値を2とする。
ステップS603においてヘッダ復号部104は、入力部101から入力されたヘッダデータのうちPPSを復号する。図3(d)に示すようにPPSには、先頭にNALユニットのヘッダ部であるnal_unit_headerが含まれ、後にpps_pic_parameter_set_id、及びタイルに関する情報が含まる。tiles_enabled_flag符号の値は、画像復号装置10に入力された符号データがタイル単位で符号化されたデータであるか否かを表す。tiles_enabled_flag符号の値が1であれば入力された符号データはタイル単位での符号化されたデータであり、0であれば符号データはタイル単位で符号化されたデータではないものとする。本実施形態では、tiles_enabled_flag符号の値が1である(即ち、符号データはタイル単位で符号化されたデータである)ものとする。さらにPPSには、num_tile_columns_minus1符号、num_tile_rows_minus1符号、column_width_minus1符号、及びrow_height_minus1符号が含まれる。ここで、num_tile_columns_minus1符号の値は画像の水平方向の分割数を表し、num_tile_rows_minus1符号の値は垂直方向のタイルの分割数を表す。column_width_minus1符号の値は各タイルの水平方向の大きさを表し、row_height_minus1符号の値は各タイルの垂直方向の大きさを表す。
次に、ステップS604においてヘッダ復号部104は、入力部から入力されたヘッダデータのうちTMCTS_SEIを復号する。ここで、図3(e)に示すように、TMCTS_SEIには先頭にはNALユニットのヘッダ部であるnal_unit_headerが含まれ、続いてnum_sets_in_message_minus1符号が含まれる。num_sets_in_message_minus1符号の値には、入力部101に入力された符号データのタイルのうち、1つ又は複数の独立復号タイルからなる独立復号タイル群の数が表されている。num_sets_in_message_minus1符号の後、各独立復号タイルに関する情報を含む符号データが続く。tmcts_idは各独立復号タイル群を示す。さらに、num_tile_rects_in_set_minus1符号の値は各独立復号タイル群に含まれる独立復号タイルの数を表す。尚、本実施形態において、入力部101に入力されるタイルデータに対応する全てのタイルは、独立復号タイル群である。即ち、本実施形態において1フレーム内の各独立復号タイル群は、1つずつの独立復号タイルで構成されることになる。尚、これに限定されず、1つの独立復号タイル群に複数の独立復号タイルが含まれていても構わないし、1フレーム全体が独立復号タイルで構成されていなくても構わない。また、続くtop_left_tile_index符号の値、及びbottom_right_tile_index符号の値は、独立復号タイル群に含まれるタイルの位置を表す。
上述した各ステップS601〜604においてヘッダ復号部104によって復号されたヘッダデータは、必要に応じて後段の各処理部に入力される。特に、復号されたデータのうち時間階層レベルに関する情報及び独立復号タイルに関する情報は、レート算出部107及び復号タイル決定部108に入力される。
次に、ステップS605において、能力取得部105はタイル復号部103の復号処理の能力に関する能力情報を取得する。例えば、本実施形態において能力情報には、CPUの能力情報として、単位時間内にタイル復号部103によって復号できるタイル数を示す情報が含まれる。尚、本実施形態における画像復号装置10に入力される符号データの各タイルのサイズは一定で、各タイルのサイズに関する情報は、画像復号装置10と不図示の画像符号化装置とで事前に共有されているものとする。但し、これに限定されず、能力情報は単位時間内に復号できる画素数、領域のサイズ、データのサイズを示す情報を含んでいても構わない。また、入力される符号データの各タイルのサイズは一定でなくても構わない。
ここで、図5(a)に1フレーム(ピクチャ)のタイル分割の様子を表す。図5(a)に示すように本実施形態において1フレームは、水平方向に8タイル、垂直方向に6タイルに分割されているものとし、各タイルの大きさは全て等しいとする。本実施形態では、図5(a)に示すように1フレーム(ピクチャ)の左上のタイルから右下のタイルまで番号を付与する。また、説明のために、本実施形態において画像復号装置10のタイル復号部103は、1秒あたり72個のタイルを復号可能な処理能力を有するものとする。尚、画像復号装置10の処理能力の算出方法、及び処理能力の高さはこれに限定されない。
次に、ステップS606においてレート算出部107は、領域設定部106から領域設定要求を取得したか否かを判定し、要求があると判定した場合にステップS607の処理へ進み、要求がないと判定した場合にステップS611の処理へ進む。
まず、ステップS606においてレート算出部107が、領域設定部106から領域設定要求を取得していない(ステップS606のNO)と判定し、ステップS611の処理に進む場合について説明する。尚、画像復号装置10は、入力部101に入力された符号データのうち、シーケンスの先頭のフレームの符号データ(タイルデータ)を復号するものとする。また、先頭のフレームの符号データを復号する前の時点では、表示部110に復号画像が表示されておらず、ユーザによる注目領域の指定がまだ行われていないものとする。即ち、領域設定部106は領域設定要求を取得しておらず、注目領域の数は0である。
ステップS611においてタイル決定部205は、注目領域が既に設定済みであるか否かを判定し、画像復号装置10は、設定済みでなければステップS612の処理へ進み、設定済みであればステップS613の処理へ進む。前述したように、本実施形態では先頭のフレームでは注目領域が設定されていないので、画像復号装置10はステップS612の処理に進む。このように、領域設定部106が領域設定要求を取得しておらず、タイル決定部205が注目領域を設定済みでない場合、画像復号装置10は入力された符号データを復号して全体表示を行うためにステップS612に進む。
ステップS612においてタイル決定部205は、フレームの全体のタイルを、復号対象のタイルとして決定する。そして、タイル決定部205は、復号対象のタイルに関する情報を、端子209から後段の処理部へ出力する。本実施形態において、1フレームには図5(a)に示すようにタイル番号00からタイル番号57までの48個のタイルがふくまれている。即ち、ステップS612にてタイル決定部205は、復号対象のタイルがタイル番号00からタイル番号57までであることを示す情報と、復号対象のタイルの数が48個であることを示す情報とを復号対象のタイルに関する情報として後段の処理部へ出力する。
さらに、ステップS612でレート決定部207は、タイル決定部205によって決定された復号対象のタイルの数と、端子201から入力したタイル復号部103の処理能力に関する能力情報とに基づいて、表示対象の動画像のフレームレートを決定する。さらに、ステップS612においてレベル選択部208は、レート決定部207によって決定されたフレームレートと、レベル取得部204によって取得された各時間階層レベルのフレームレートとに基づいて、復号画像の時間階層レベルを選択する。
以下に、ステップS612における表示対象の動画像のフレームレートの決定処理と、復号画像の時間階層レベルの選択処理について、詳細を説明する。
まず、表示対象の動画像のフレームレートの決定処理について説明する。タイル決定部205は、本実施形態の図5(a)に示すタイル分割された1フレームのピクチャの例において、ピクチャの左上のタイル(タイル番号00)から、ピクチャの右下のタイル(タイル番号57)までを復号するものとする。そしてカウンタ206は、タイル決定部205によって決定された復号対象のタイルの数をカウントし、カウントした結果に基づくカウント情報をレート決定部207に出力する。本実施形態では、図5(a)に示すように復号対象のタイルの数は48である。そしてレート決定部207は、端子201から入力した能力情報と、カウンタ206から入力したカウント情報とに基づいて、表示対象の動画像のフレームレートを算出(決定)する。ここで、本実施形態におけるタイル復号部103の復号処理の能力に基づく、復号対象のタイルの数とフレームレートとの関係を図4(a)に示す。尚、本実施形態において、先頭のフレームにおける復号対象のタイルの数は48であるので、フレームレートは72/48=1.5フレーム/秒となる。そして、レート決定部207は、このように能力情報とカウント情報とに基づいて決定された、表示対象の動画像のフレームレートに関する情報をレベル選択部208に出力する。
次に、復号画像の時間階層レベルの選択処理について説明する。レベル取得部204は、端子202を介して、ヘッダ復号部104で復号された画像に関する情報、時間階層に関する情報、及びタイルに関する情報を取得し、これらの情報に基づいて各時間階層レベルのフレームレートを算出(取得)する。
レベル取得部204は、算出した各時間階層レベルのフレームレートをレベル選択部208へ出力する。レベル選択部208は、レベル取得部204から入力された各時間階層レベルのフレームレートと、レート決定部207から入力された表示対象の動画像のフレームレートとに基づいて、復号画像の時間階層レベルを選択(決定)する。ここで、本実施形態においてレベル選択部208は、レベル取得部204で取得された各時間階層レベルのフレームレートのうち、レート決定部207で決定されたフレームレート以下であって、且つ、最大のフレームレートである時間階層レベルを選択する。そして、レート決定部207は、選択した復号画像の時間階層レベルに関する情報を、端子209を介して後段の処理部へ出力する。
具体的に本実施形態では、時間階層レベル0,1,2のフレームを復号した場合、各時間階層レベルのフレームの時間間隔は2500Tickである。尚、1Tickは、1秒を30000で分割した単位である。即ち、各フレームの時間間隔は1/12秒である。そして、時間階層レベル2まで(時間階層レベル0,1,2)を復号した場合のフレームレートは12フレーム/秒である。また、時間階層レベル1まで(時間階層レベル0,1)を復号した場合のフレームレートは、時間階層レベル2の半分のフレームレートである6フレーム/秒で表示が行われることになる。また、時間階層レベル0のフレームレートは、本実施形態では1フレーム/秒とする。さらに、前述のフレームレートの決定処理で説明したように、本実施形態においてレート決定部207で決定されるフレームレートは1.5フレーム/秒である。このため、レベル選択部208は、フレームレートが1フレーム/秒である時間階層レベル0のみを、復号画像の時間階層レベルとして選択する。
上述したように、本実施形態のステップS612においてタイル決定部205は、表示対象の動画像のフレームレートを決定し、レベル選択部208は復号画像の時間階層レベルを選択する。さらに、ステップS612にてタイル決定部205及びレベル選択部208は、決定したフレームレートに関する情報及び選択した時間階層レベルに関する情報を、端子209を介して後段の処理部(復号タイル決定部108とタイル復号部103)に出力する。
次に、ステップ613で復号タイル決定部108は、レベル選択部208により選択された時間階層レベルに関する情報と、タイル決定部205により決定された復号対象のタイルに関する情報とに基づいて、復号対象の符号データをタイル順に読み出す。即ち、復号タイル決定部108は、復号対象の符号データ(復号に必要なタイルの符号データ)をタイル順に読み出すように、バッファ102の、各タイルの格納位置を指定する。そして、バッファ102は指定された格納位置からタイルの符号データを読み出し、タイル復号部103に出力する。
ステップS614においてタイル復号部103は、バッファ102から入力された復号対象の符号データを復号する。さらに、タイル復号部103は、レート算出部107のタイル決定部205から端子209を介して出力された、復号対象のタイルに関する情報に基づいて、復号画像を再構成する。
ステップS615においてタイル復号部103は、復号対象のタイルの全てを復号したか否かを判定する。そして、全ての復号対象のタイルを復号したと判定した場合(ステップS615のYES)はステップS616へ進み、そうでないと判定した場合(ステップS615のNO)はステップS613に戻り、続くタイルの符号データの読み出し及び復号処理を行う。
ステップS616において表示制御部109は、ステップS610で決定されたフレームレートで、ステップS614で復号された復号画像を表示部110へ出力するよう制御する。表示部110は、タイル復号部103によって再構成された復号画像を表示する。尚、表示部110における画像を表示可能な表示画面のサイズよりも、タイル復号部103によって復号された復号画像のサイズが大きい場合には、表示部110は復号画像を適宜縮小して表示する。
ステップS617にてタイル復号部103は、レート算出部107のレベル選択部208によって選択された時間階層レベルに対応する全てのフレームを復号したか否かを判定し、全てを復号したと判定した場合に画像復号装置10による復号処理を終了する。一方、タイル復号部103が、レベル選択部208によって選択された時間階層レベルに対応する全てのフレームを復号し終わっていないと判定した場合に、ステップS606の処理に戻る。
以上、ステップS606でレート算出部107が領域設定要求を取得していないと判定(ステップS606のNO)し、且つ、ステップS611でタイル決定部205が注目領域は設定済みでないと判定(ステップS611のNO)した場合について説明した。このような場合、画像復号装置10は上述したように、入力された符号データを復号して1フレームの全体のタイルを表示する。
次に、ステップS611においてタイル決定部205が、注目領域は設定済みである(ステップS611のYES)と判定した場合、画像復号装置10はステップS613の処理へ進む。例えば、復号対象のフレームと当該復号対象のフレームとにおいて注目領域の変更などが無い場合に、ステップS611においてタイル決定部205は注目領域が既に設定済みであると判定し、ステップS613の処理へ進む。ステップS613以降は、上述した処理と同様であるため説明を省略する。尚、ステップ613における処理は、既に設定された注目領域の数、位置、及び大きさに関する情報(注目領域情報)に基づいて行われる。
ここで、図5(b)及び(c)を用いて、領域502の位置が図5(b)の位置から図5(c)の位置へ移動する場合について説明する。例えば、ユーザが領域の移動を指定するか、検知部(不図示)がオブジェクト検出等を行うことによって、領域502の位置、サイズが変化する場合がある。この場合、領域502の移動に基づいて、領域設定部106によって設定される注目領域が更新され、領域設定部106は後段の処理部へ領域設定要求及び注目領域情報を出力する。そして、領域設定部106によって出力された領域設定要求及び注目領域情報に基づいて、後段の各処理部は復号対象のタイル、フレームレート、復号する時間階層レベル等を決定する処理を行い、変更された注目領域の部分表示を実現する。
このように、領域設定要求が無い場合に、画像復号装置10は上述の処理のように、注目領域が設定済みか否かに基づいて、部分表示又は全体表示で動画像を表示することができる。
次に、ステップS606においてレート算出部107が、領域設定部106から領域設定要求を取得した(ステップS606のYES)と判定し、ステップS607の処理へ進む場合について説明する。本実施形態において領域設定部106は、ユーザが、表示部110に全体表示された動画像を参照して指定した領域を、注目領域として設定する。例えば、表示部110をタッチパネルで構成し、ユーザがタッチパネルにおいて注目する領域の位置や大きさを指で囲んで示し、その囲まれた部分の外接矩形を注目領域としてもよい。尚、領域設定部106による注目領域の設定方法はこれに限定されない。例えば、領域設定部106は、検知部(不図示)によって検知された特徴領域を取得し、取得した特徴領域を注目領域として設定しても構わない。また、領域設定部106は、1つ以上の注目領域を設定しても構わない。また、ユーザによる注目領域の指定方法についても上記に限定されない。
ここで、注目領域について図5(b)を用いて具体例を説明する。図5(b)において、各領域501、502、503、504は、ユーザによって指定された注目領域を表す。また、各領域の左上の座標をそれぞれ注目領域の位置とし、各領域の外接矩形の大きさをそれぞれ注目領域のサイズとする。まず、本実施形態では、領域501のみが注目領域として設定された場合について説明する。ユーザが領域501を指定すると、領域設定部106はユーザが指定した領域501を注目領域として設定し、領域設定要求、及び注目領域情報を後段のレート算出部107へ出力する。ここで、本実施形態において領域設定部106は、注目領域情報として、注目領域の数が1つであることを示す情報、領域501の位置に関する情報、及び領域501のサイズに関する情報をレート算出部107に入力する。
次に、ステップS607においてレート算出部107のタイル決定部205は、領域設定部106から端子203を介して取得した注目領域情報に基づいて、全体表示が要求されたか否かを判定する。即ち、本実施形態においてタイル決定部205は、取得した注目領域情報に含まれる情報のうち、注目領域の数に関する情報に基づいて注目領域が設定されたか否かを判定する。また、本実施形態においてタイル決定部205は、注目領域の数に関する情報に基づいて、全体表示が要求されたか否かを判定する。例えば、タイル決定部205は、注目領域の数が1以上である場合に注目領域が設定されたと判定し、注目領域の数が1フレームに含まれるタイルの数ト等しい場合に全体表示が要求されたと判定する。
そして、ステップS607において、全体表示が要求されたと判定された場合(ステップS607のYES)、画像復号装置10は前述したステップS612の処理へ進むため、説明を省略する。一方、ステップS607において、部分表示が要求されたと判定した場合(ステップS607のNO)、画像復号装置10はステップS608の処理に進む。ここでは、図5(b)に示す領域501が注目領域として設定されており、タイル決定部205は部分表示が要求されたと判定するため、ステップS608の処理へ進む。
ステップS608においてタイル決定部205は、端子203を介して領域設定部106から注目領域情報を取得し、取得した注目領域情報に基づいて復号対象のタイルを決定する。そして、タイル決定部205は、決定した復号対象のタイルに関する情報をカウンタ206及び端子209を介して後段の処理部へ出力する。ここで、本実施形態における注目領域である図5(b)に示す領域501は、図5(a)に示す各タイルのうち、タイル番号11、12、21、22のタイルに含まれる。即ち、注目領域に対応するタイル番号が11、12、21、22であるため、ステップS608においてタイル決定部205は、これらのタイル番号11、12、21、22を示す情報をカウンタ206及び端子209へ出力する。
ステップS609においてカウンタ206は、ステップS608においてタイル決定部205によって決定された復号対象のタイルの数をカウントする。即ち、本実施形態においてカウンタ206は、タイル決定部205から出力された復号対象のタイルに関する情報に基づいて、復号対象のタイルの数をカウントし、カウントした結果に基づくカウント情報をレート決定部207へ出力する。ここでは、カウンタ206は、タイル決定部205から復号対象のタイルのタイル番号11、12、21、22を示す情報を取得するため、復号対象のタイルの数は4となる。そしてカウンタ206は、復号対象のタイルの数が4であることを示す情報をレート決定部207に出力する。
ステップS610においてレート決定部207は、部分表示における注目領域のフレームレートを決定し、決定したフレームレートをレベル選択部208に出力する。即ち、本実施形態においてレート決定部207は、カウンタ206から出力された復号対象のタイルの数を示すカウント情報と、端子201から入力した能力情報とに基づいて、部分表示における表示対象の動画像のフレームレートを決定する。ここでは、ステップS609でカウンタ206によってカウントされた復号対象のタイルの数は4であり、ステップS605で能力取得部105によって取得された能力情報は、画像復号装置10が1秒あたり72タイルを復号可能であることを示す。これらの情報に基づいてレート決定部207は部分領域における注目領域のフレームレートを72/4=18フレーム/秒に決定する。
さらに、ステップS610においてレベル選択部208は、レート決定部207によって決定されたフレームレートと、レベル取得部204によって取得された各時間階層レベルのフレームレートとに基づいて、復号画像の時間階層レベルを選択する。そして、レベル選択部208は、選択した復号画像の時間階層レベルに関する情報を、端子209を介して後段の処理部へ出力する。尚、復号画像の時間階層レベルの選択処理は、上述のステップS612と同様であるため、説明を省略する。また、ここでは、レート決定部207によって決定された表示対象の動画像のフレームレートが18フレーム/秒である。そして、各時間階層レベルのフレームレートは、時間階層レベル2までが12フレーム/秒、時間階層レベル1までが6フレーム/秒、時間階層レベル0が1フレーム/秒である。即ち、18フレーム/秒(表示対象の動画像のフレームレート)以下であって最大のフレームレートは、時間階層レベル2の12フレーム/秒である。以上のことから、レベル選択部208は、復号画像のフレームレートを12フレーム/秒とし、復号対象の時間階層レベルとして時間階層レベル0,1,2の全てを選択する。
以下、ステップS612の処理の後はステップS613の処理へ進む。ステップS613移行の処理については動画像を全体表示する場合と同様であるため説明を省略し、具体例のみについて記す。
ステップ613において、レベル選択部208により選択された時間階層レベルは0,1,2の全てであり、タイル決定部205により決定された復号対象のタイルはタイル番号11、12、21、22のタイルである。以上のことから、バッファ102は、タイル番号11、12、21、22の各タイルの符号データを読み出し、タイル復号部103に出力する。
ステップS614においてタイル復号部103は、バッファ102から入力されたタイル番号11、12、21、22の各タイルの符号データを復号し、タイル決定部205から出力された、復号対象のタイルに関する情報に基づいて、復号画像を再構成する。
ステップS615においてタイル復号部103は、復号対象のタイルであるタイル番号11、12、21、22のタイルの全てを復号したか否かを判定する。全てのタイルを復号した場合にはステップS616に進み、そうでなければステップS613に戻り、続くタイルの符号データの読み出し及び復号処理を行う。そして、復号対象のタイルの全ての復号処理を完了し(ステップS615のYES)、選択された時間階層レベルのフレームの全ての復号処理を完了(ステップS617のYES)した場合に、画像復号装置10による部分表示のための復号処理を終了する。
このように、領域設定要求が有った場合に、画像復号装置10は上述の処理のように、全体表示が要求されているか否かに基づいて、部分表示又は全体表示で動画像を表示することができる。次に、注目領域が設定されて部分表示で動画像が表示された後に、全体表示に変更した場合の処理について説明する。例えば、ユーザが表示部110のタッチパネルにおいて、注目領域を解除し、全体表示を行うように指示することにより、部分表示から全体表示に変更する処理を開始することができる。尚、部分表示から全体表示に変更する指示方法については限定されない。即ち、表示部110の画面上に全体表示に切り替えるためのアイコンを表示し、ユーザが当該アイコンを選択・指示することにより、部分表示から全体表示に変更するように画像復号装置10を制御しても構わない。また、ユーザが表示部110の画面上で動画像の表示を拡大させることを指示することにより、部分表示から全体表示に変更するように画像復号装置10を制御しても構わない。
部分表示から全体表示へ表示モードの変更が指示された場合、領域設定部106は領域設定要求及び注目領域情報を後段の処理部へ出力する。尚、注目領域情報には、注目領域の数に関する情報、注目領域の位置に関する情報、及び注目領域の大きさに関する情報のうち少なくとも一つの情報が含まれる。本実施形態において領域設定部106は、部分表示から全体表示へ変更された場合に、注目領域情報として注目領域の数が0であることを示す情報を後段の処理部に出力する。
そして、ステップS606においてレート算出部107は、領域設定要求を取得したと判定するため(ステップS606のYES)、ステップS607の処理へ進む。ステップS607においてレート算出部107のタイル決定部205は、領域設定要求で全体表示が要求されたか否かを判定する。ここでは、注目領域の数が0であるため、タイル決定部205は全体表示が要求されたものと判定し(ステップS607のYES)、ステップS612の処理へ進む。ステップS612においてタイル決定部205は、1フレーム(ピクチャ)全体のタイル(タイル番号00からタイル番号57までの48個のタイル)を復号対象のタイルとして決定する。ステップS612以降は、前述した全体表示を行う場合の処理と同様であるため、説明を省略する。
このように、部分表示から全体表示に変更された場合に、画像復号装置10は上述の処理によって全体表示を実現することができる。
以上の構成と動作により、本実施形態において画像復号装置は、適切なフレームレートで、時間階層符号化された動画像を復号することが可能になる。
また、本実施形態において画像復号装置は、フレーム全体を表示する全体表示又は注目領域を表示する部分表示のいずれかを、画像復号装置の処理能力に基づいて最適に決定することができる。
尚、本実施形態の部分表示における例では、領域501のみを注目領域として説明したが、注目領域として複数の領域が選択された場合も同様に処理を行う。例えば、図5(b)において、領域501と領域502とが注目領域として選択された場合、注目領域情報に含まれる注目領域の数に関する情報は、注目領域の数が2であることを示す。尚、注目領域情報には、領域501と領域502の位置及びサイズに関する情報が含まれていても構わない。そして領域設定部106は注目領域情報を、端子203を介してレート算出部107のタイル決定部205へ出力する。タイル決定部205は、領域501に対応するタイル(タイル番号11、12、21、22のタイル)及び領域502に対応するタイル(タイル番号14、15、16、24、25、26のタイル)を復号対象のタイルとして決定する。カウンタ206は、タイル決定部205によって決定された復号対象のタイルをカウントし、カウントした結果に関する情報(タイル数は10個)を後段のレート決定部207へ出力する。さらに、レート決定部207は、フレームレートを72/10=7.2フレーム/秒に決定し、レベル選択部208は、フレームレートが6フレーム/秒及び1フレーム/秒である時間階層レベル0及び1を復号画像の時間階層レベルとして選択する。
また、図5(b)における領域501、領域502、領域503、領域504が注目領域として設定された場合、注目領域情報に含まれる注目領域の数に関する情報は、注目領域の数が4であることを示す。尚、注目領域情報には、領域501、領域502、領域503、及び領域504の、位置及びサイズに関する情報が含まれていても構わない。そして領域設定部106は注目領域情報を、端子203を介してレート算出部107のタイル決定部205へ出力する。タイル決定部205は、タイル番号11、12、21、22、14、15、16、24、25、26、32、42、34、35、36、37、44、45、46、47、54、55、56、57のタイルを復号対象のタイルとして決定する。即ち、カウンタ206によるカウント結果(復号対象のタイルの数)は21である。さらに、レート決定部207による決定結果(フレームレート)は72/21=3.41フレーム/秒である。レベル選択部208は、レート決定部207によって決定されたフレームレート(3.41フレーム/秒)と、各時間階層レベルに対応するフレームレートとを比較する。そして、レベル選択部208は、決定されたフレームレート以下であって最大のフレームレートであるという条件を満たす時間階層レベルを、復号画像の時間階層レベルとして決定する。ここでは、時間階層レベル2までが12フレーム/秒、時間階層レベル1までが6フレーム/秒、時間階層レベル0が1フレーム/秒であるため、決定されたフレームレート以下であって最大のフレームレートは時間階層レベル0の1フレーム/秒である。即ち、レベル選択部208による選択結果(復号画像の時間階層レベル)は時間階層レベル0のみである。
尚、本実施形態では全てのタイルが独立復号タイルであるとして説明を行ったが、これに限定されない。独立復号タイルは高いフレームレートで復号し、それ以外のタイルとの合成を行えばよい。例えば、注目領域として領域504のみが選択された場合であって、且つ、独立復号タイルがタイル番号36、46、56のタイルのみであった場合を例にとって説明する。この時、独立復号タイルではないタイル(タイル番号34、35、44、45、54、55のタイル)は、他の時間のフレームにおいて復号対象のタイルに対応するタイル以外の領域を参照するため、フレーム全体の復号が必要である。このため、少なくとも時間階層レベルが0のタイルの復号が必要である。即ち、時間階層レベル0のフレームレートは1フレーム/秒であることから、独立復号タイル以外のタイルに関しては48タイル/秒の復号処理が必要になる。そして、画像復号装置10のタイル復号部103の処理能力は72タイル/秒であることから、72−48=24タイル/秒の処理能力が残っている。そして、独立復号タイルはタイル番号36、46、56の3つのタイルであるので、これらの独立復号タイルは24タイル/秒の処理能力によって、24÷3=8フレーム/秒の復号が可能になる。そして、画像復号装置10は、1フレーム/秒で復号された独立復号タイル以外のタイルと、8フレーム/秒で復号された独立復号タイルのそれぞれの復号画像を合成し、表示部110に表示する。即ち、表示部110に表示される注目領域に関する動画像は、注目領域である領域504のうちの独立復号タイル(タイル番号36、46、56)に対応する位置の画像のみを8フレーム/秒で再生され、それ以外の画像は1フレーム/秒で再生される。
尚、本実施形態では1フレーム内におけるタイルのサイズは一定で、事前に復号側とタイルのサイズに関して不図示の符号化側とで共有されているとして説明を行ったがこれに限定されない。即ち、フレーム内のタイルのサイズは全て一定でなくても構わない。例えば共有されるべきタイルのサイズを標準的なタイルのサイズとして処理能力を取得した後に、ヘッダ復号部104で復号されたタイルの実際のサイズと比較して、処理できるタイル数を変更しても構わない。図4(b)は図4(a)よりもタイルのサイズが大きくなった場合のタイル数とフレームレートの関係図を表す。同様にタイルサイズがフレームの中で一定でない場合にも、サイズの平均値を標準的なタイルのサイズとして算出し、それ以外のサイズのタイルに関してはその大きさ比で復号に必要とされる処理能力を換算すればよい。
尚、タイルの符号データの復号開始時点では復号画像が表示されず、注目領域の設定がまだ行われていないものとして説明を行ったがこれに限定されない。固定カメラで画面内の位置が変わらない場合であれば、復号対象のシーケンスより前の、復号済みのシーケンスの画像を表示したり、固定カメラによる撮影対象の領域(画面)を表す簡単なイラスト等を表示したりことで、注目領域の指定を復号前に行ってもよい。
尚、図6のステップS606においてタイル決定部205は、領域設定要求に基づいて注目領域の設定の有無を判定したが、これに限定されない。例えば、タイル決定部205は、注目領域情報に基づいて、注目領域の位置がフレーム(ピクチャ)の原点(左上端の位置)であり、サイズがピクチャのサイズと等しければ注目領域が設定されていないと判定してももちろん構わない。また、注目領域の更新についても、タイル決定部205は、領域設定要求が無い場合に前のフレームの注目領域情報と復号対象のフレームの注目領域情報とを比較し、各情報に変化があった場合に領域設定要求があったと判断してももちろん構わない。
尚、本実施形態においてフレームの時間間隔は1/秒、時間階層レベルの数は3として説明した。また、各時間階層レベルのフレームレートに関して、時間階層レベル2まで(時間階層レベル0,1,2)は12フレーム/秒、時間階層レベル1まで(時間階層レベル0,1)は6フレーム/秒、時間階層レベル0は1フレーム/秒として説明した。しかしながら、フレームの時間間隔、各時間階層レベルのフレームレート、及び時間階層レベルの数は上述のものに限定されない。
尚、表示制御部109は、ヘッダデータに含まれるTMCTS_SEIを復号して得られた独立復号タイルに関する情報に基づいて、フレーム内における独立復号タイルの位置、及び/又はサイズに関する情報を、表示部110に表示するよう制御しても構わない。これにより、ユーザは表示部110に表示された独立復号タイルの位置及び/又はサイズに関する情報に基づいて、注目領域を容易に設定することができる
(実施形態2)
本実施形態では、ユーザによって指定されたフレームレートに基づいて、復号・再生(表示)する際のフレームレートを設定することが可能な画像復号装置10について説明する。以下、本実施形態に係る画像復号装置について、図面を用いて説明する。まず、本実施形態における画像復号装置の構成について図7を用いて説明する。図7は、本実施形態の画像復号装置10の構成を示すブロック図である。図7において、実施形態1の図1に示す画像復号装置10の各処理部と同じ機能を有する処理部については同じ番号を付し、説明を省略する。
レート取得部701は、ユーザによって指定されたフレームレートに関する情報を取得する。例えば、表示部110にタッチパネルを設け、ユーザが動画像を復号・再生する場合の所望のフレームレート(所定のフレームレート)を、タッチパネルを用いて指定することができる。そしてレート取得部701は、タッチパネルでユーザによって指定されたフレームレートを取得することができる。
尚、タッチパネルを用いたフレームレートの指示方法としては、種々の方法を用いることができる。例えば、タッチパネルをユーザが指で所定時間内に複数回タップすることにより、既に表示されている動画像のフレームレートよりフレームレートを上げることを指示するようにしてもよい。また、タッチパネルをユーザが前記所定時間より短い時間内に複数回タップすることにより、フレームレートを下げることを指示するようにしてもよい。また、特定の時間内にユーザによってタップされた回数が多いほどフレームレートを上げることを指示するようにしても構わない。また、表示部110の表示画面にフレームレートを上げるか下げるかを選択可能なアイコンを表示させて、ユーザがアイコンをタッチする等して指示するようにしても構わない。また、ユーザが所望のフレームレートの値に関する情報を表示部110等に設けたレート入力部(不図示)に入力し、レート取得部701がレート入力部(不図示)に入力されたフレームレートの値に関する情報を取得するようにしても構わない。尚、上述したタッチパネル及びレート入力部(不図示)は、表示部110に設けられるものに限られず、画像復号装置10内部の他の処理部として設けても構わないし、画像復号装置10外部に設けても構わない。
レート算出部707は、実施形態1の図1に示すレート算出部107とは、レート取得部701によって取得されたフレームレートを用いて、表示する動画像のフレームレートを算出する点が異なる。また、復号タイル決定部708は、実施形態1の図1に示す復号タイル決定部108とは、全体復号レベルをレート算出部707から入力する点が異なる。尚、全体復号レベルについての詳細は後述する。
また、本実施形態において画像復号装置10のタイル復号部103は、1秒あたり360タイルの復号が可能な処理能力を有するものとする。また、画像復号装置10の入力部101に入力される符号データのタイル分割は実施形態1と同様であり、1フレームのタイル分割の様子は図5(a)に示す。
次に、図8を用いてレート算出部707の構成の詳細を説明する。図8において、実施形態1の図2に示すレート算出部107の各処理部と同じ機能を有する処理部については同じ番号を付し、説明を省略する。
全体復号レベル設定部801は、1フレーム全体を復号することが可能な時間階層レベルである全体復号レベルを算出する。端子810は、図7のレート取得部701から、ユーザによる所望のフレームレートを入力する。領域レート決定部807は、全体復号レベル設定部801で設定された全体復号レベルに基づいて注目領域のフレームレートを決定する点が実施形態1の図2に示すレート決定部207とは異なる。レベル選択部808は、端子810を介してレート取得部701からユーザによる所望のフレームレートを入力する点が実施形態1の図2に示すレベル選択部208とは異なる。端子809は、全体復号レベル設定部801で設定された全体復号レベルを出力する点が実施形態1の図2に示す端子209とは異なる。
次に、本実施形態における画像復号装置10による復号処理の動作について、図10を用いて説明する。図10は、本実施形態に係る画像復号装置10の復号処理動作を表すフローチャートである。図10において、実施形態1の図6に示すフローチャートのステップと同じ機能を有するステップについては同じ番号を付し、説明を省略する。
また、本実施形態において入力部101に入力される符号データは実施形態1と同様に図3に示す符号データであり、符号データの時間階層レベル数は3である。また、本実施形態において、時間階層レベル2まで復号した場合のフレームレートが12フレーム/秒、時間階層レベル1まで復号した場合のフレームレートが6フレーム/秒である点は、実施形態1と同じである。一方、本実施形態において時間階層レベル0のみを復号した場合のフレームレートが3フレーム/秒である点が実施形態1とは異なる。尚、これらの、符号データの時間階層レベル数及び各時間階層レベルのフレームレートに関する情報は、ヘッダデータを復号した結果からも算出できるが、ユーザから入力されたデータを扱うSEIを用いて記述してももちろん構わない。また、本実施形態において、タイル復号部103の処理能力は360タイル/秒であり、実施形態1とは異なる。
ステップS1001において、レート算出部707の全体復号レベル設定部801は、ヘッダ復号部104から端子202介して入力した情報に基づいて、1フレーム全体を復号することが可能な時間階層レベル(全体復号レベルと称す)を算出する。ここで、全体復号レベル設定部801は、時間階層に関する情報(各時間階層レベルのフレームレートに関する情報)、タイルに関する情報(フレーム内のタイルの数に関する情報)、及び能力情報に基づいて、全体復号レベルを算出する。本実施形態において1フレームは図5(a)に示すように48タイルで構成されており、タイル復号部103の処理能力は360タイル/秒であることから、1フレーム全体を復号する場合のフレームレートは360/48=7.5フレーム/秒である。そして、各時間階層レベルのフレームレートはそれぞれ12フレーム/秒(時間階層レベル0,1,2)、6フレーム/秒(時間階層レベル0,1)、3フレーム/秒(時間階層レベル0)であることから、時間階層レベル2までの復号を行えない。このため、全体復号レベル設定部801は、フレームレートが6フレーム/秒である時間階層レベル1を全体復号レベルとして設定する。そして、ステップS1001において全体復号レベル設定部801は、設定した全体復号レベルをレベル選択部808及び端子809等の後段の処理部へ出力する。
ここで、全体復号レベル設定部801による全体復号レベルの設定処理について、図9に詳細を示す。図9(a)は、タイル復号部103の処理能力に基づく、復号対象のタイルの数とフレームレートとの関係の全体を表す図である。また、図9(b)は、図9(a)の原点の付近を切り出した図であり、図9(b)の右側の曲線C1は図9(a)の一部を表す。1フレームのタイル数は48であるので、タイル復号部103が復号可能なフレームレートは7.5フレーム/秒であることが図9(b)からわかる。また、図9(b)の右側の曲線C1より下の座標(領域)に示されるフレームレートでは、本実施形態におけるタイル復号部103によって復号可能である。一方、当該曲線C1より上の座標に示されるフレームレートでは、タイル復号部103の処理能力により復号できない。
例えば、時間階層レベルが1までの場合、フレームレートは6フレーム/秒であり、図9(b)において○で表される座標となる。また、時間階層レベルが0の場合、フレームレートは3フレーム/秒であり、△で表される座標となる。これら、時間階層レベル1まで及び時間階層レベル0のフレームレートを示す○及び△は、それぞれ曲線C1の下にあるため、各フレームレートで復号が可能なことが分かる。一方、時間階層レベルが2までの場合、フレームレートは12フレーム/秒であり、×で表される座標となる。この、時間階層レベル2までのフレームレートを示す×は、曲線C1の上にあるため、当該フレームレートで復号が不可能なことが分かる。
次に、ステップS1002においてレート取得部701は、ユーザによって指定された所望のフレームレートに関する情報を取得する。また、レート取得部701はユーザによって所望のフレームレートを指定された場合に、レート指定要求及び所望のフレームレートに関する情報を後段の処理部へ出力する。尚、本実施形態においてユーザによって所望のフレームレートが指定されていない場合、画像復号装置10は時間階層レベル0のフレームレートで復号・表示することとする。説明のために、最初(復号処理を開始する前)には所望のフレームレートが設定されていなかったものとして説明する。
ステップS1003においてレート算出部707は、レート取得部701からレート指定要求を取得したか否かを判定する。レート算出部707は、レート指定要求を取得していない場合(ステップS1003のNO)、レート取得部701によりフレームレートが設定されなかったと判断し、ステップS1012の処理へ進む。一方、レート算出部707は、レート指定要求を取得した場合(ステップS1003のYES)、レート取得部701によりフレームレートが設定されたと判断し、ステップS1004の処理へ進む。
まず、ステップS1003においてレート算出部707が、レート取得部701からレート指定要求を取得していないと判定した場合(ステップS1003のNO)について説明する。この場合、ステップS1012において復号タイル決定部708は、次の処理を行う。即ち、ステップS1012にて復号タイル決定部708は、ステップS1001にてレート算出部707の全体復号レベル設定部801によって設定された全体復号レベルと、復号タイル決定部708によって算出された復号対象の時間階層レベルとを比較する。そして、復号タイル決定部708は、全体復号レベルが復号対象の時間階層レベルよりも高い場合、復号対象の時間階層レベルまでの各時間階層レベルのタイルの全てを復号対象のタイルとして選択する。さらに、復号タイル決定部708は、選択した復号対象のタイルの符号データを、バッファ102から読み出し、タイル復号部103へ出力する。ここでは、全体復号レベルは時間階層レベル1であり、復号対象の時間階層レベルは0であるため、復号タイル決定部708は全体復号レベルが復号対象の時間階層レベルよりも高い。したがって、復号タイル決定部708は、復号対象の時間階層レベル0のタイルの全てを復号対象のタイルとして選択する。
そして、ステップ1012の処理の後、本実施形態において画像復号装置10はステップS614の処理へ進む。ここではステップS614以降の処理において画像復号装置10は、復号対象の時間階層レベル0の全てのタイルの符号データを復号・表示する。尚、ステップS614以降は、実施形態1の図6で説明した処理と同様であるため、説明を省略する。
次に、ステップS1003においてレート算出部707が、レート取得部701からレート指定要求を取得したと判定した場合(ステップS1003のYES)について、ステップS1004以降の処理を説明する。
まず、レート取得部701が、ユーザによってフレームレートを上げるように指定された場合について説明する。上述したように、フレームレートを指定する前の、復号処理開始時のフレームレートは時間階層レベル0のフレームレート(3フレーム/秒)である。ここでは、画像復号装置10は、フレームレートを3フレーム/秒から6フレーム/秒に上げるようユーザから指示されたものとする。
まず、ステップS1004においてレベル選択部808は、所望のフレームレートに基づく時間階層レベルが全体復号レベルより上(大きい、高い)か否かを判定する。即ち、レベル選択部808は、端子810を介してレート取得部701から入力された所望のフレームレートに基づいて、全体復号レベル設定部801によって設定された全体復号レベルよりも上の時間階層レベルのフレームの復号が必要か否かを判定する。ここで、本実施形態においてレベル選択部808は、所望のフレームレートが全体復号レベルに対応するフレームレート以下である場合に、全体復号レベルよりも上の時間階層レベルの復号が必要でないと判定する。そしてレベル選択部808は、全体復号レベルよりも上の時間階層レベルの復号が必要であると判定した場合(ステップS1004のYES)にはステップS1005の処理へ進む。一方、レベル選択部808は、所望のフレームレートが全体復号レベルに対応するフレームレートより大きい場合に、全体復号レベルよりも上の時間階層レベルの復号が必要であると判定する。そして、全体復号レベルより上の時間階層レベルの復号が必要でないと判定した場合(ステップS1004のNO)にはステップS1010の処理へ進む。ここでは、所望のフレームレート(6フレーム/秒)は全体復号レベルの復号で再現できるフレームレート(7.5フレーム/秒)以下なのでステップS1010の処理へ進む。
ステップS1010においてレベル選択部808は、所望のフレームレートに対応する時間階層レベルが全体復号レベル以下であるので、復号対象の時間階層レベルを所望のフレームレートに対応する時間階層レベルに変更する。即ち、復号対象の時間階層レベルは、所望のフレームレートを設定されていない場合における時間階層レベル0から、所望のフレームレートに対応する時間階層レベル1に変更される。そして、ステップS1012以降の処理において画像復号装置10は、変更された復号対象の時間階層レベル1まで(時間階層レベル0,1)の全てのタイルの符号データを復号・表示する。
次に、レート取得部701が、ユーザによってフレームレートをさらに上げるように指定された場合について説明する。ここでは、画像復号装置10は、フレームレートを6フレーム/秒から9フレーム/秒に上げるようユーザから指示されたものとする。この場合、所望のフレームレートである9フレーム/秒は、図9(b)の★で示される座標である。★は右側の曲線C1より上にあるため、画像復号装置10は、タイル復号部103の処理能力では、1フレーム全体のフレームレートを所望のフレームレートまで向上させることはできない。
このような場合、ステップS1004においてレベル選択部808は、レート取得部701によって取得された所望のフレームレートが、全体復号レベル設定部801によって設定された全体復号レベルに対応するフレームレート以下であると判定する。即ち、ステップS1004においてレベル選択部808は、全体復号レベルよりも上の時間階層レベルの復号が必要であると判定する(ステップS1004のYES)。そして、本実施形態において画像復号装置10は、領域レート決定部807によって決定される注目領域のフレームレートに基づいて復号処理を行うため、ステップS1005以降の処理を行う。
ステップS1005において表示制御部109は、フレーム全体に対してフレームレートを向上させることが不可能であることを示す情報を表示部110に出力し、注目領域の設定をユーザに要請するための通知を行う。即ち、ユーザは表示部110に出力された上記の情報を取得し、注目領域を指定する必要があることを認識できる。
ステップS1006において領域設定部106は、ユーザによって指定された領域を注目領域として設定する。そして領域設定部106は、設定された注目領域に関する注目領域情報を、端子203を経由してレート算出部707のタイル決定部205に出力する。
ステップS1007においてタイル決定部205は、実施形態1のステップS608と同様に、取得した注目領域情報に基づいて、注目領域の復号画像を構成するのに必要な復号対象のタイルを決定する。そして、タイル決定部205は、決定した復号対象のタイルに関する情報をカウンタ206及び端子809へ出力する。
ステップS1008においてカウンタ206は、実施形態1のステップS609と同様に、タイル決定部205によって決定された復号対象のタイルに関する情報に基づいて、復号対象のタイルの数をカウントする。そしてカウンタ206は、カウントした結果であるタイルの数に関する情報を、領域レート決定部807に出力する。
ステップS1009において領域レート決定部807は、注目領域のフレームレートを決定する。領域レート決定部807は、端子201を介して能力取得部105から取得されたタイル復号部103の処理能力と、全体復号レベルに対応するフレームを復号するのに必要な処理能力とに基づいて、注目領域に対応するタイルのフレームレートを決定する。また、ステップS1009においてレベル選択部808は、領域レート決定部807によって決定された注目領域のフレームレートに基づいて、注目領域の時間階層レベルを選択する。そして、ステップS1009の処理の後、画像復号装置10はステップS1012の処理へ進む。
具体的に、本実施形態において領域レート決定部807は、タイル復号部103の処理能力から、全体復号レベルに対応するフレームを復号するのに必要な処理能力を差し引いた処理能力で、注目領域に対応するタイルを復号する。ここで、図9(b)を用いて領域レート決定部807による注目領域のフレームレートの決定処理について詳細を説明する。図9(b)の左の曲線C2は、本実施形態において処理能力から全体復号レベルに対応するフレームを復号するのに必要な処理能力を差し引いた処理能力を表す。本実施形態において、タイル復号部103の処理能力は360タイル/秒であり、全体復号レベルのフレームの復号に必要な処理能力は288タイル/秒である。したがって、注目領域のタイルの復号に充てられる処理能力は72タイル/秒となる。ここで注目領域として図5の領域502が選択されたとする。領域502の復号に必要なタイルはタイル番号14、15、16、24、25、26のタイルであり、注目領域のタイル数は6である。タイル数が6の場合、左側の曲線C2と交差する位置は12フレーム/秒であり、右側の曲線C1を超えていない。したがって、ステップS1009において領域レート決定部807は、注目領域のフレームレートとして12フレーム/秒を選択する。そして、注目領域のフレームレートに対応する時間階層レベルは2であることから、レベル選択部808は、注目領域のタイルは時間階層レベル0,1,2を復号するものとし、それ以外の領域のタイルは時間階層レベル0,1を復号するものとする。
ステップS1012において復号タイル決定部708は、ステップS1001にて全体復号レベル設定部801によって設定された全体復号レベルと、ステップS1009にてレベル選択部808によって算出された復号する時間階層レベルとを比較する。ここでは、注目領域における復号する時間階層レベル(時間階層レベル2)が全体復号レベル(時間階層レベル1)よりも高い。即ち、復号タイル決定部708は、注目領域のタイルを算出された時間階層レベル(時間階層レベル2)で復号し、それ以外の領域のタイルを全体復号レベル(時間階層レベル1)で復号するように、バッファ102から必要なタイルの符号データを読み出す。ここでは、復号タイル決定部708は、注目領域のタイル(タイル番号14、15、16、24、25、26のタイル)は時間階層レベル2までを選択し、それ以外の領域のタイルは時間階層レベル1までを選択する。
そして、ステップS1012の処理の後、本実施形態において画像復号装置10はステップS614の処理へ進み、ステップS614以降の処理においてステップS1012で読み出されたタイルの符号データを復号・表示する。ここでは、画像復号装置10は、注目領域については算出された時間階層レベルまで(時間階層レベル0,1,2)を12フレーム/秒で復号し、所望のフレームレートである9フレーム/秒で表示部110に表示するよう制御する。尚、本実施形態において画像復号装置10は、12フレーム/秒で復号した後、ダウンサンプリングして9フレーム/秒で表示部110に表示するよう制御する。また、画像復号装置10は、注目領域以外については全体復号レベルまで(時間階層レベル0,1)を復号し、全体復号レベルに対応するフレームレート(6フレーム/秒)で表示部110に表示するよう制御する。尚、画像復号装置10は、注目領域について、所望のフレームレートより高いフレームレートで復号可能な場合に、復号したフレームレートで表示部110に表示しても構わない。即ち、注目領域について時間階層レベル2までを復号した場合であって、所望のフレームレートが9フレーム/秒である場合に、所望のフレームレートより高い時間階層レベル2に対応したフレームレートで表示部110に表示するよう制御しても構わない。
また、レート取得部701が、ユーザによってフレームレートを下げるように指示された場合も、画像復号装置10はフレームレートを上げるように指示された場合と同様の処理を行う。即ち、ステップS1003においてレート算出部707は、レート取得部701がレート指定要求を取得したとして、ステップS1004の処理に進む。ステップS1004においてレベル選択部808は、レート取得部701によって取得された所望のフレームレートに基づく時間階層レベルが、全体復号レベルより上か否かを判定する。ここで、フレームレートを下げるよう指示された場合でも、所望のフレームレートに対応する時間階層レベルが全体復号レベルより高ければステップS1005へ進み、上述と同様にステップS1005以降の処理を行う。一方、所望のフレームレートに対応する時間階層レベルが全体復号レベル以下であればステップS1010へ進み、画像復号装置10は復号対象の時間階層レベルを所望のフレームレートを実現する時間階層レベルに変更し、ステップS1010以降の処理を行う。尚、ステップS1010において画像復号装置10は、所望のフレームレートに対応する時間階層レベルが全体復号レベル以下であれば、復号対象の時間階層レベルを全体復号レベルに設定しても構わない。
以上の構成と動作により、本実施形態において画像復号装置は、適切なフレームレートで、時間階層符号化された動画像を復号することが可能になる。
また、本実施形態において画像復号装置は、フレーム全体を表示する全体表示又は注目領域を表示する部分表示のいずれかを、画像復号装置の処理能力に基づいて最適に決定することができる。
また、本実施形態において画像復号装置は、全体復号レベルを設定することによって、フレーム全体を処理能力を超えない範囲でなるべく高いフレームレートで再生しつつ、注目領域のみをさらに高いフレームレートで好適に再生することができる。即ち、画像復号装置は、処理能力を超えない範囲で、動画像全体を適切な(所望の)フレームレートで再生し、注目したい部分は最大のフレームレートで再生することができる。
尚、画像復号装置10は、注目領域の設定を要請するための通知を行う際に、注目領域の候補に関する情報を通知(表示)するようにしてもよい。図11に、注目領域の候補に関する情報の通知を実現する画像復号装置のブロック図を示す。図11において、図7に示す画像復号装置10の各処理部と同じ機能を有する処理部については同じ番号を付し、説明を省略する。候補設定部1101は、ヘッダデータに含まれるTMCTS_SEIを復号して独立復号タイルに関する情報を取得し、フレーム内における独立復号タイルの位置、サイズに関する情報を、注目領域の候補に関する情報として領域設定部1106に入力する。領域設定部1106は、候補設定部1101から出力された注目領域の候補に関する情報を表示制御部109に出力し、表示制御部109が表示部110に注目領域の候補に関する情報を表示する。
これにより、ユーザは表示部110に表示された注目領域の候補に関する情報を参照して、注目領域を容易に選択することができる。また、フレームの一部の領域のみが独立復号タイルで構成されている場合、画像復号装置10は、注目領域の候補を、当該独立復号タイルに対応する領域としてもよい。また、画像復号装置10は、注目領域の候補に関する情報を、レート取得部701によって取得された所望のフレームレートで復号・表示が可能な領域のサイズ及び/又は位置を示す情報に基づいて、表示部110に表示するよう制御してもよい。これにより、ユーザは所望のフレームレートで復号・表示が可能な領域に基づいて、注目領域を容易に選択することができる。
また、画像復号装置10は、画像符号化装置(不図示)によって各領域に設定された優先度に基づいて、注目領域の候補に関する情報を通知(表示)するようにしてもよい。例えば、画像符号化装置(不図示)がタイル単位で優先度を設定した場合、画像復号装置10は設定された優先度に応じて、レート取得部701によって取得された所望のフレームレートでの復号・表示が可能な領域のサイズ及び/又は位置を決定する。そして、画像復号装置10は、決定した復号・表示が可能な領域のサイズ及び/又は位置を示す情報に基づいて、注目領域の候補に関する情報を表示部110に表示するよう制御してもよい。ここで、画像符号化装置は、例えば、図3(e)のTMCTS_SEIにおいて、tmcts_id符号の値の大きさを優先度に基づいて付与することで、優先度に関する情報を符号に含めることが可能である。また、画像符号化装置は、TMCTS_SEI以外の、ユーザによって設定された情報(ユーザデータ)を扱うSEI等(例えばuser_data_unregistered)を用いて、優先度に関する情報を符号として挿入しても構わない。そして、上述の注目領域の候補の通知方法と同様に、図11に示す候補設定部1101は、TMCTS_SEIを復号して優先度に関する情報を取得し、画像復号装置10は、取得した優先度に関する情報を表示部110に表示するよう制御する。これにより、ユーザは予め符号化側で設定された優先度を参照して、注目領域を容易に選択することができる。
尚、本実施形態において画像復号装置10は、所望のフレームレートに対応する時間階層レベルが全体復号レベルを超えた場合に注目領域の設定を行う構成としたが、これに限定されない。即ち、画像復号装置10は、所望のフレームレートに対応する時間階層レベルが全体復号レベル以下の場合であっても、注目領域の設定を行っても構わない。また、画像復号装置10は、注目領域の設定を行った後に、所望のフレームレートに対応する時間階層レベルと全体復号レベルとの比較を行う構成でも構わない。即ち、画像復号装置10は、設定された注目領域のフレームレートを所望のフレームレート以上に決定し、その他の領域のフレームレートを注目領域のフレームレートと能力情報とに基づいて決定しても構わない。例えば、所望のフレームレートが6フレーム/秒(時間階層レベル1に対応)であり、全体復号レベルが時間階層レベル2である場合に、注目領域のフレームレートを12フレーム/秒に決定し、その他の領域のフレームレートを3フレーム/秒に決定してもよい。また、設定された注目領域を表示するために復号する必要があるタイルの数に基づいて、注目領域のフレームレート及びその他の領域のフレームレートを決定しても構わない。例えば、注目領域の復号に必要なタイルの数が所定の値より多い場合に、画像復号装置10は、全体復号レベルをステップS1001で決定された時間階層レベルより下げて復号・表示するようにしても構わない。
(実施形態3)
本実施形態では、注目領域を所望のフレームレートで復号するのに必要な処理能力と、タイル復号部103の処理能力とに基づいて、注目領域を再度設定可能な画像復号装置10について説明する。以下、本実施形態に係る画像復号装置について、図面を用いて説明する。まず、本実施形態における画像復号装置の構成について図12を用いて説明する。図12は、本実施形態の画像復号装置10の構成を示すブロック図である。図12において、実施形態1の図1又は実施形態2の図7に示す画像復号装置10の各処理部と同じ機能を有する処理部については同じ番号を付し、説明を省略する。
領域設定部1206は、注目領域を設定する。そして、領域設定部1206は、図1の領域設定部106とは、レート算出部1207から出力される領域変更要求に基づいて注目領域の候補を設定する機能を有する点が異なる。また、レート算出部1207は、動画像の1フレーム全体を表示する場合(全体表示の場合)のフレームレート、及び1フレーム内の注目領域を表示する場合(部分表示の場合)のフレームレートを算出する。そして、レート算出部1207は、図1のレート算出部107とはユーザが設定した注目領域のフレームレートを実現するために、注目領域を変更するよう要求する領域変更要求を領域設定部1206に出力する点が異なる。
また、本実施形態において画像復号装置10のタイル復号部103は、実施形態1と同様に、1秒あたり72タイルの復号が可能な処理能力を有するものとする。また、画像復号装置10の入力部101に入力される符号データも実施形態1の図3に示す符号データと同様であり、符号データのタイル分割も実施形態1の図5(a)に示すタイル分割と同様である。また、本実施形態において入力部101に入力される符号データの時間階層レベル数は、実施形態1及び実施形態2と同様に3である。また、本実施形態において、時間階層レベル2まで復号した場合のフレームレートは12フレーム/秒、時間階層レベル1まで復号した場合のフレームレートは6フレーム/秒であり、実施形態1及び実施形態2と同様である。また、時間階層レベル0のみを復号した場合のフレームレートは1フレーム/秒であり、実施形態1と同様である。
次に、図13を用いてレート算出部1207の構成の詳細を説明する。図13において、実施形態1の図2のレート算出部107の各処理部と同じ機能を有する処理部については同じ番号を付し、説明を省略する。レート決定部1307は、実施形態1のレート決定部207とは設定された復号するタイルに関してタイル復号部103の処理能力が不足している場合に、復号するタイルの変更を要求(指示)する点が異なる。また、端子1310はレート取得部701から所望のフレームレートに関する情報を入力する。
次に、本実施形態における画像復号装置10による復号処理の動作について、図14を用いて説明する。図14は、本実施形態に係る画像復号装置10の復号処理動作を表すフローチャートである。図14において、実施形態1の図6又は実施形態2の図10のフローチャートのステップと同じ機能を有するステップについては同じ番号を付し、説明を省略する。尚、本実施形態においてユーザによって所望のフレームレートが指定されていない場合、画像復号装置10は時間階層レベル0のフレームレートで復号・表示することとする。説明のために、最初(復号処理を開始する前)には所望のフレームレートは設定されていないものとする。
ステップS1003においてレート算出部1207は、実施形態2の図10に示すステップS1003と同様に、レート取得部701からレート指定要求を取得したか否かを判定する。そして、レート算出部1207は、レート指定要求を取得していない場合(ステップS1003のNO)、レート取得部701によりフレームレートが設定されなかったと判断し、ステップS612の処理に進む。尚、ステップS612以降の処理は、実施形態1の図6に示すステップS612以降の処理と同様であるため、説明を省略する。一方、レート算出部1207は、レート指定要求を取得した場合(ステップS1003のYES)、レート取得部701によりフレームレートが設定されたと判定し、ステップS1404の処理へ進む。
以下、ステップS1003においてレート算出部1207が、レート取得部701からレート指定要求を取得したと判定した場合(ステップS1003のYES)について、ステップS1404以降の処理を説明する。
ステップS1404においてレート算出部1207は、復号対象のタイルを復号する場合に必要な処理能力を算出し、算出した必要な処理能力と、タイル復号部103の処理能力とを比較する。そして、タイル復号部103の処理能力が不足しているか否か(タイル復号部103の処理能力が必要な処理能力より低いか否か)を判定し、不足している場合(ステップS1404のYES)に、画像復号装置10はステップS1005へ進む。一方、充足している場合(ステップS1404のNO)に、画像復号装置10はステップS613へ進む。
まず、ステップS1404においてタイル復号部103の処理能力が不足していると判定された場合(ステップS1404のYES)について説明する。この場合、ステップS1005以降の処理を行う。各ステップS1005〜1009については、実施形態2の図10に示す各ステップS1005〜1009の処理と同様であるため、説明を省略する。そして、本実施形態において画像復号装置10は、ステップS1009の処理の後、ステップS1410の処理に進む。
ステップS1410においてレート算出部1207は、ステップS1007で決定された復号対象のタイルを、ステップS1009で決定されたフレームレートで注目領域を復号するのに必要な処理能力を算出する。そして、レート算出部1207は、必要な処理能力と、タイル復号部103の処理能力とを比較し、タイル復号部103の処理能力が充足しているか否か(タイル復号部103の処理能力が必要な処理能力以上であるか否か)を変定する。タイル復号部103の処理能力が充足していると判定された場合(ステップS1410のYES)に、画像復号装置10はステップS613へ進む。一方、不足していると判定された場合(ステップS1410のNO)に、画像復号装置10はステップS1411の処理へ進む。
ステップS1411において画像復号装置10は、注目領域の候補を決定する処理を行う。ステップS1411の処理の後、画像復号装置10はステップS1005の処理へ戻り、注目領域を再度設定する処理を行う。このように、ステップS1411において注目領域候補の設定を行うことで、ユーザは注目領域を再度設定する際に注目領域候補を参照し、容易に設定することができる。
以下、図14において、具体例を説明する。まず、レート取得部701が、ユーザによってフレームレートを上げるように指定された場合について説明する。上述したように、フレームレートを指定する前の、復号処理開始時のフレームレートは時間階層レベル0のフレームレート(1フレーム/秒)である。ここでは、画像復号装置10は、フレームレートを1フレーム/秒から時間階層レベル1のフレームレート(6フレーム/秒)に上げるようユーザから指示されたものとする。
ここでは、タイル決定部205によって、フレームの全てのタイルを復号対象のタイルとして決定されるため、カウンタ206によるタイル数のカウント結果は、48個である。レート決定部1307は、カウンタ206でカウントされたタイル(48タイル)を、レート取得部701で取得された所望のフレームレート(6フレーム/秒)で復号する場合に、48×6=288タイル/秒の処理能力が必要であるという情報を取得する。また、本実施形態においてタイル復号部103の処理能力は72タイル/秒である。以上のことから、ステップS1404においてレート決定部1307は、タイル復号部103の処理能力が不足すると判定し(ステップS1404のYES)、ステップS1005に進む。
各ステップS1005〜1009の処理は、図10のステップS1005〜1009と同様である。ここでは、ステップS1006において領域設定部106は、図5に示す領域501、領域502、領域503を注目領域として設定し、設定された注目領域に関する注目領域情報を、端子203を経由してタイル決定部205に出力する。そして、ステップS1007においてタイル決定部205は、復号対象のタイルをタイル番号11、12、21、22、14、15、16、24、25、26、32、42のタイルに決定する。ステップS1008においてカウンタ206は、復号対象のタイルの数をカウントし、タイルの数(12個)に関する情報を、レート決定部1307に出力する。ステップS1009においてレート決定部1307は、注目領域のフレームレートを所望のフレームレート(6フレーム/秒)に決定し、決定された注目領域のフレームレートに基づいて、注目領域の時間階層レベル(時間階層レベル1)を決定する。
そして、ステップS1410にてレート決定部1307は、次の処理を行う。即ち、レート決定部1307は、カウンタ206から出力されたタイルの数に関する情報(12タイル/フレーム)、及び、レート取得部701によって取得された所望のフレームレートに関する情報(6フレーム/秒)を端子1310を介して取得する。そして、レート決定部1307は、タイルの数(12タイル/フレーム)と、所望のフレームレート(6フレーム/秒)とに基づいて、注目領域を所望のフレームレートで復号するために必要な処理能力を12×6=72タイル/秒であると決定する。即ち、ステップS1410においてレート決定部1307は、必要な処理能力が72タイル/秒であるのに対し、タイル復号部103の処理能力が72タイル/秒であることから、タイル復号部103の処理能力が十分であると判定し、ステップS613に進む。さらに、ステップS613以降の処理において画像復号装置10は、注目領域に対応するタイルを時間階層レベル1まで復号し、所望のフレームレート(6フレーム/秒)で表示部110に表示するよう制御する。
次に、レート取得部701が、ユーザによってフレームレートをさらに上げるように指定された場合について説明する。ここでは、画像復号装置10は、フレームレートを6フレーム/秒から時間階層レベル2のフレームレート(12フレーム/秒)に上げるようユーザから指示されたものとする。
ここでは、上述のステップS10086において、カウンタ206によるタイル数のカウント結果は12個である。レート決定部1307は、カウンタ206でカウントされたタイル(12タイル)を、レート取得部701で取得された所望のフレームレート(12フレーム/秒)で復号する場合に、12×12=144タイル/秒の処理能力が必要であるという情報を取得する。また、本実施形態においてタイル復号部103の処理能力は72タイル/秒である。以上のことから、ステップS1404においてレート決定部1307は、タイル復号部103の処理能力が不足すると判定し(ステップS1404のYES)、ステップS1005に進む。
各ステップS1005〜1009の処理は、図10のステップS1005〜S1009と同様である。ここでは、ステップS1006において領域設定部106は、図5に示す領域502のみを注目領域として設定し、設定された注目領域に関する注目領域情報を、端子203を経由してタイル決定部205に出力する。そして、ステップS1007においてタイル決定部205は、復号対象のタイルをタイル番号14、15、16、24、25、26のタイルに決定する。ステップS1008においてカウンタ206は、復号対象のタイルの数をカウントし、タイルの数(6個)に関する情報を、レート決定部1307に出力する。ステップS1009においてレート決定部1307は、注目領域のフレームレートを所望のフレームレート(12フレーム/秒)に決定し、決定された注目領域のフレームレートに基づいて、注目領域の時間階層レベル(時間階層レベル2)を決定する。
そして、ステップS1410にてレート決定部1307は、カウンタ206から出力されたタイルの数に関する情報(6タイル/フレーム)、及び、レート取得部701によって取得された所望のフレームレートに関する情報(12フレーム/秒)を取得する。そして、レート決定部1307は、タイルの数(6タイル/フレーム)と、所望のフレームレート(12フレーム/秒)とに基づいて、注目領域を所望のフレームレートで復号するために必要な処理能力を6×12=72タイル/秒であると決定する。即ち、ステップS1410においてレート決定部1307は、必要な処理能力が72タイル/秒であるのに対し、タイル復号部103の処理能力が72タイル/秒であることから、タイル復号部103の処理能力が十分であると判定し、ステップS613に進む。さらに、ステップS613以降の処理において画像復号装置10は、注目領域に対応するタイルを時間階層レベル2まで復号し、所望のフレームレート(12フレーム/秒)で表示部110に表示するよう制御する。
尚、ステップS1006において、ユーザによって指定された注目領域が6個以上のタイルに跨る場合、必要な処理能力がタイル復号部103の処理能力(72タイル/秒)を超えてしまう。このような場合、ステップS1410において、タイル復号部103の処理能力が不足している(ステップS1410のNO)と判定されるため、画像復号装置10はステップS1411へ進む。ステップS1411において表示制御部109は、6個分のタイルの領域を示す情報を表示部110に表示するよう制御する。ステップS1411の処理を行う前では、ステップS1005において所望のフレームレートで動画像を復号・表示できないことが通知された場合であっても、復号・表示できる領域のサイズの目安がわからず、注目領域を狭めて設定することが困難である。しかしながら、画像復号装置10がステップS1411の処理を行うことにより、ユーザは所望のフレームレートで動画像を復号・表示することが可能な注目領域のサイズを視認することができる。
また、ステップS1411において領域設定部1206は、ステップS1006で取得された注目領域に跨るタイルのうち、注目領域にかかる(含まれる)領域が所定の大きさより小さいタイルを、注目領域の候補から省略する処理を行っても構わない。ここでは、領域501、領域502、領域503に対応するタイルのうち、タイル番号11、12、14、16、24、26のタイルは、注目領域にかかる領域が所定の大きさ(例えば1タイルの1/2のサイズ)より小さい。このため、ステップS1411において領域設定部1206は、上述した注目領域にかかる領域が小さいタイルを省略し、タイル番号12、22、15、25、32、42のタイルのみを注目領域の候補として設定しても構わない。
また、ステップS1411において表示制御部109は、フレーム内のタイルの境界線を表示部110に表示するよう制御しても構わない。このように、タイルの境界線を表示することにより、ユーザはフレーム内のタイルの境界線を視認することができ、タイル単位で注目領域を設定することが容易になる。
以上の構成と動作により、本実施形態において画像復号装置は、適切なフレームレートで、時間階層符号化された動画像を復号することが可能になる。
また、本実施形態において画像復号装置は、フレーム全体を表示する全体表示又は注目領域を表示する部分表示のいずれかを、画像復号装置の処理能力に基づいて最適に決定することができる。
また、本実施形態において画像復号装置は、注目領域を所望のフレームレートで復号するのに必要な処理能力が、画像復号装置の処理能力を超えた場合に、注目領域を再設定することができる。また、再設定において処理能力に基づく領域及び/又はタイルの境界線を表示することにより、ユーザにとって注目領域を再設定し易くすることができる。また、再設定において注目領域とタイルとの重なりに基づいて注目領域の候補を設定することにより、処理能力を超えない範囲での復号・表示処理を行い易くすることができる。
尚、本実施形態では選択した注目領域の全て同じフレームレートで復号する場合について説明したが、これに限定されない。例えば、注目領域ごとに異なるフレームレートを設定できるようにしてももちろん構わない。
(実施形態4)
図1、図2、図7、図8、図11、図12、及び図13に示した各処理部は、ハードウェアでもって構成しているものとして上記実施形態では説明した。しかし、これらの図に示した各処理部で行なう処理をコンピュータプログラムでもって構成しても良い。以下、図15を用いて本実施形態について説明する。図15は、上記各実施形態に係る画像復号装置に適用可能なコンピュータのハードウェアの構成例を示すブロック図である。
CPU1501は、RAM1502やROM1503に格納されているコンピュータプログラムやデータを用いてコンピュータ全体の制御を行うと共に、上記各実施形態に係る画像復号装置が行うものとして上述した各処理を実行する。即ち、CPU1501は、図1、図2、図7、図8、図11、図12、及び図13に示した各処理部として機能することになる。
RAM1502は、外部記憶装置1506からロードされたコンピュータプログラムやデータ、I/F(インターフェース)1507を介して外部から取得したデータなどを一時的に記憶するためのエリアを有する。更に、RAM1502は、CPU1501が各種の処理を実行する際に用いるワークエリアを有する。即ち、RAM1502は、例えば、画像メモリ(ピクチャメモリ)として割り当てたり、その他の各種のエリアを適宜提供したりすることができる。
ROM1503には、本コンピュータの設定データや、ブートプログラムなどが格納されている。操作部1504は、キーボードやマウスなどにより構成されており、本コンピュータのユーザが操作することで、各種の指示をCPU1501に対して入力することができる。出力部1505は、CPU1501による処理結果を出力する。また出力部1505は例えば液晶ディスプレイで構成され、CPU1501による処理結果を表示する。
外部記憶装置1506は、ハードディスクドライブ装置に代表される、大容量情報記憶装置である。外部記憶装置1506には、OS(オペレーティングシステム)や、図15に示した各部の機能をCPU1501に実現させるためのコンピュータプログラムが保存されている。更には、外部記憶装置1506には、処理対象としての各画像データが保存されていても良い。
外部記憶装置1506に保存されているコンピュータプログラムやデータは、CPU1501による制御に従って適宜、RAM1502にロードされ、CPU1501による処理対象となる。I/F1507には、LANやインターネット等のネットワーク、投影装置や表示装置などの他の機器を接続することができ、本コンピュータはこのI/F1507を介して様々な情報を取得したり、送出したりすることができる。1508は上述の各部を繋ぐバスである。
上述の構成からなる作動は前述のフローチャートで説明した作動をCPU1501が中心となってその制御を行う。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。