本発明の実施の形態について図面を用いて以下に詳細に説明する。なお、本発明は以下の実施形態に限定されるものではない。
[第1実施形態]
第1実施形態による符号化装置、画像処理装置及び画像処理方法について図面を用いて詳細に説明する。
<全体構成>
図1は、本実施形態による画像処理装置を示すブロック図である。画像処理装置10は、画像処理モジュール100a、100bと、撮像部112と、表示部116と、通信部118と、符号化処理モジュール200と、メモリ211とを有する。画像処理モジュール100aの構成と画像処理モジュール100bの構成とは同等である。画像処理モジュール一般について説明する際には、符号100を用い、個々の画像処理モジュールについて説明する際には、符号100a、100bを用いることとする。ここでは、画像処理装置10が、撮像装置、より具体的には、デジタルカメラである場合を例に説明するが、これに限定されるものではない。例えば、画像処理装置10は、スマートフォン、カメラ付き携帯電話、デジタルビデオカメラ等であってもよい。画像処理装置10には、撮影レンズ(レンズユニット)111が備えられる。撮影レンズ111は、画像処理装置10のボディから着脱可能であってもよいし着脱不能であってもよい。画像処理装置10には、記録媒体120が備えられる。記録媒体120は、画像処理装置10のボディから着脱可能であってもよいし着脱不能であってもよい。
画像処理モジュール100は、CPU(Central Processing Unit)101と、メモリ102と、不揮発性メモリ103と、操作部104と、画像処理部113と、外部IF制御部114と、表示制御部115とを有する。画像処理モジュール100は、通信制御部117と、記録媒体制御部119と、画像処理モジュール間IF121と、内部バス130とを更に有する。
CPU101は、不揮発性メモリ103に記憶されているコンピュータプログラムを実行することによって、内部バス130を介して画像処理モジュール100の各部(各機能ブロック)の動作を制御する。
メモリ102は、書き換え可能な揮発性メモリである。メモリ102は、画像処理モジュール100の各部の動作を制御するためのコンピュータプログラムが一時的に記録される。また、メモリ102は、画像処理モジュール100の各部の動作に関するパラメータ等の情報を一時的に記録する。また、メモリ102は、通信制御部117によって受信される情報等を一時的に記録する。メモリ102は、撮像部112によって取得された画像、画像処理部113によって処理された画像、符号化処理モジュール200によって符号化された画像等を一時的に記録する。メモリ102は、これらを一時的に記録するための十分な記憶容量を備えている。
不揮発性メモリ103は、電気的に消去及び記録が可能なメモリであり、例えばEEPROM等が用いられる。不揮発性メモリ103は、画像処理モジュール100の各部の動作を制御するためのコンピュータプログラムを記憶する。また、不揮発性メモリ103は、画像処理モジュール100の各部の動作に関するパラメータ等の情報を記憶する。かかるコンピュータプログラムによって、本実施形態による画像処理装置10によって行われる各種動作が実現される。
操作部104は、画像処理モジュール100を操作するためのユーザインターフェースを提供する。操作部104は、電源ボタン、メニューボタン、撮影ボタン等の各種ボタンを含んでおり、各種ボタンは、スイッチ、タッチパネル等によって構成される。CPU101は、操作部104を介して入力されたユーザの指示に従って、画像処理モジュール100を制御する。ここでは、操作部104を介して入力される操作に基づいてCPU101が画像処理モジュール100を制御する場合を例に説明するが、これに限定されるものではない。例えば、不図示のリモートコントローラや不図示の携帯端末等から通信部118を介して入力される要求に基づいて、CPU101が画像処理モジュール100を制御してもよい。
撮影レンズ(レンズユニット)111は、ズームレンズ、フォーカスレンズ等を含む不図示のレンズ群と、不図示のレンズ制御部と、不図示の絞りとを含む。レンズ制御部は、CPU101から送信される制御信号により、焦点の調整、絞り値(F値)の調整等を行う。撮像部112は、例えば、CCD(電荷結合素子)やCMOS(相補型金属酸化膜半導体)素子等によって構成されるエリアイメージセンサである。撮像部112の撮像面には、画素アレイが備えられている。画素アレイには、被写体の光学像を電気信号に変換する不図示の光電変換部が行列状、即ち、2次元的に配列されている。画素アレイには、被写体の光学像が撮影レンズ111によって結像される。撮像部112によって取得された画像(画像データ)は、画像処理部113又は画像処理モジュール間IF121に供給される。
画像処理部113は、撮像部112から供給される画像データに対して所定の画像処理を行う。画像処理部113は、メモリ102から読み出した画像データに対して所定の画像処理を行うこともできる。所定の画像処理としては、例えば、画素補間処理、縮小処理(リサイズ処理)、色変換処理等が挙げられる。画像処理部113は、画像処理が施された画像データをメモリ102に一時的に記録し得る。また、画像処理部113は、撮像部112によって取得される画像データを用いて、露光制御、測距制御等のための所定の演算処理を行うこともできる。画像処理部113による演算処理によって得られた演算結果に基づいて、露光制御、測距制御等がCPU101によって行われる。具体的には、AE(自動露出)処理、AWB(オートホワイトバランス)処理、AF(オートフォーカス)処理等がCPU101によって行われる。
外部IF制御部114は、外部モジュールとの間で入出力の制御を行う。外部IF制御部114が画像処理モジュール100aに備えられている場合、外部モジュールは、例えば、画像処理モジュール100b及び符号化処理モジュール200である。外部IF制御部114が画像処理モジュール100bに備えられている場合、外部モジュールは、例えば、画像処理モジュール100a及び符号化処理モジュール200である。外部モジュールとの間での入出力のインターフェースとしては、例えば、PCI Express規格等の汎用規格のインターフェースを用い得るが、これに限定されるものではない。外部IF制御部114は、CPU101によって制御される。外部IF制御部114は、画像データ、ストリームデータ、制御信号等を符号化処理モジュール200に送信し得る。符号化処理モジュール200は、これらのデータに対して圧縮符号化を行う。外部IF制御部114は、圧縮符号化が施された画像データを符号化処理モジュール200から受信する。
表示制御部115は、表示部116を制御する。表示部116は、不図示の表示画面を備えている。表示制御部115は、画像データに対してリサイズ処理や色変換処理等を行うことにより、表示部116の表示画面に表示可能な画像を生成し、かかる画像、即ち、画像信号を表示部116に出力する。表示部116は、表示制御部115から供給される画像信号に基づいて、表示画面に画像を表示する。表示制御部115は、CPU101によって制御される。表示部116は、表示画面にメニュー等の設定画面を表示する機能であるオンスクリーン表示(OSD:On Screen Display)機能を備えている。表示制御部115は、画像信号にOSD画像を重畳し、OSD画像が重畳された画像信号を表示部116に出力し得る。表示部116は、例えば、液晶ディスプレイや有機EL等によって構成される。表示部116は、例えばタッチパネルであってもよい。表示部116がタッチパネルである場合、表示部116は操作部104としても機能し得る。
通信制御部117は、例えばIEEE802.11等で予め定められた無線通信規格に適合する変調信号を生成し、生成した変調信号を通信部118に出力する。通信制御部117は、CPU101によって制御される。また、通信制御部117は、無線通信規格に適合する変調信号を、通信部118を介して受信し、受信した変調信号を復号し、復号によって得られた信号をCPU101に送信する。通信制御部117は、通信設定を記憶するためのレジスタを備えている。通信制御部117は、CPU101からの制御によって、通信時の送受信感度を調整し得る。通信制御部117は、所定の変調方式で送受信が行われるように制御を行う。
通信部118は、通信制御部117から供給される変調信号を外部に出力するとともに、外部からの変調信号を受信するアンテナを備えている。また、通信部118には、通信用の回路等が備えられている。ここでは、通信部118によって無線通信が行われる場合を例に説明するが、通信部118によって行われる通信は無線通信に限定されるものではない。例えば、配線等を用いた電気的な接続によって通信部118と外部機器とが接続されてもよい。
記録媒体制御部119は、記録媒体120を制御する。記録媒体制御部119は、CPU101からの要求に基づいて、記録媒体120を制御するための制御信号を記録媒体120に出力する。記録媒体120としては、例えば不揮発性メモリや磁気ディスク等が用いられる。記録媒体120は、上述したように、着脱可能であってもよいし、着脱不能であってもよい。記録媒体120には、符号化された画像データ等が記録される。具体的には、記録媒体120のファイルシステムに適合した形式の画像データ等が、ファイルとして記録媒体120に記録される。かかるファイルとしては、例えば、MP4ファイル(ISO/IEC 14496-14:2003)やMXF(Material eXchange Format)ファイル等が挙げられる。
画像処理モジュール間IF121は、撮像部112から供給される画像データを他の画像処理モジュール100に供給する。具体的には、画像処理モジュール間IF121が撮像部112に接続されている場合には、当該画像処理モジュール間IF121は、他の画像処理モジュール100に対して画像データを転送する。一方、画像処理モジュール間IF121が撮像部112に接続されていない場合には、当該画像処理モジュールIF121は、他の画像処理モジュール100から供給される画像を受信する。
画像処理モジュール間IF121は、画像の一部のみを、他の画像処理モジュール100に転送することも可能である。より具体的には、画像処理モジュール間IF121は、例えば、撮像部112によって取得された画像を左右に分割し、左半分の画像又は右半分の画像のみを他の画像処理モジュール100に転送することができる。画像処理モジュール100aに備えられた画像処理モジュール間IF121が、右半分の画像のみを画像処理モジュール100bに転送する場合、以下のような処理が行われる。撮像部112によって取得される画像は、画像処理モジュール100aに備えられた画像処理部113と画像処理モジュール100aに備えられた画像処理モジュール間IF121とに供給される。画像処理モジュール100aに備えられた画像処理部113は、撮像部112から供給される画像のうちから左半分の画像のみを選択的に抽出し、抽出した左半分の画像に対して画像処理を施す。なお、画像処理モジュール100aに備えられた画像処理部113は、抽出した左半分の画像を画像処理モジュール100aに備えられたメモリ102に一時的に記録するようにしてもよい。そして、画像処理モジュール100aに備えられたメモリ102から読み出された左半分の画像に対して、画像処理モジュール100aに備えられた画像処理部113が画像処理を施すようにしてもよい。画像処理モジュール100aに備えられた画像処理モジュール間IF121は、撮像部112から供給される画像のうちから右半分の画像のみを選択的に抽出し、抽出した右半分の画像を画像処理モジュール100bに送信する。画像処理モジュール100bに備えられた画像処理モジュール間IF121は、画像処理モジュール100aから供給される右半分の画像を、画像処理モジュール100bに備えられた画像処理部113に供給する。画像処理モジュール100bに備えられた画像処理部113は、画像処理モジュール100aから供給される右半分の画像に対して画像処理を施す。なお、画像処理モジュール100bに備えられた画像処理部113は、右半分の画像を画像処理モジュール100bに備えられたメモリ102に一時的に記録するようにしてもよい。そして、画像処理モジュール100bに備えられたメモリ102から読み出された右半分の画像に対して、画像処理モジュール100bに備えられた画像処理部113が画像処理を施すようにしてもよい。
画像処理モジュール間IF121は、例えば、上半分の画像のみ又は下半分の画像のみを他の画像処理モジュール100に転送することもできる。また、画像処理モジュール間IF121は、例えば、奇数番目のフレームのみ又は偶数番目のフレームのみを他の画像処理モジュール100に転送することもできる。また、画像処理モジュール間IF121は、例えば、画像を分割することにより形成されるタイルを他の画像処理モジュール100に転送することもできる。
画像処理モジュール100に備えられた各々の構成要素は、内部バス130を介して互いにアクセス可能となっている。
符号化処理モジュール200は、例えば、画像処理モジュール100から供給される画像データに対してフレーム内予測符号化(画面内予測符号化)及びフレーム間予測符号化(画面間予測符号化)等を行うことによって、画像データのサイズを圧縮する。符号化処理モジュール200は、例えば、H.265(ITU H.265又はISO/IEC23008-2)方式によって圧縮化処理を行い得る。
<符号化処理モジュール>
次に、符号化処理モジュール200の構成について図2を用いて説明する。図2は、画像処理装置10の一部を示すブロック図である。図2においては、符号化処理モジュール200と、メモリ211と、画像処理モジュール100a、100bとが抜き出して示されている。符号化処理モジュール200は、例えば、所定の動画圧縮規格に基づいて符号化処理を行う。所定の動画圧縮規格としては、例えば、H264規格又はH.265規格に基づく符号化方式が挙げられる。
符号化処理モジュール200は、CPU201と、ブロックサイズ決定部202と、予測符号化方法決定部203と、予測符号化処理部204と、直交変換・量子化部205と、局所復号部206と、符号量制御部207とを有する。符号化処理モジュール200は、エントロピー符号化部208と、多重化処理部209と、外部IF制御部210とを更に有する。
CPU201は、メモリ211に格納されているコンピュータプログラムを実行することによって、符号化処理モジュール200の各部(各機能ブロック)の動作を制御する。
H.264規格に基づく符号化における符号化処理単位は、マクロブロックである。H.265規格においては、4種類のデータ構造、即ち、Coding Tree Unit(CTU)、Coding Unit(CU)、Prediction Unit(PU)、及び、Transform Unit(TU)が規定されている。H.265規格に基づく符号化においては、これらのデータ構造を用いて設定されるブロックを符号化処理単位として符号化処理が行われる。CTUは、画像を分割する処理単位である。CUは、CTUを画像特性にあわせて再帰的に分割する処理単位である。PUは、CUを予測処理用に分割する処理単位である。TUは、CUを変換処理用に分割する処理単位である。ブロックサイズ決定部202は、ブロックのサイズの制限に関する情報であるブロックサイズ制限情報を生成し得る。また、ブロックサイズ決定部202は、タイルのサイズの制限に関する情報であるタイルサイズ制限情報をも生成し得る。タイルは、例えばH.265規格において規定されており、画像を複数の矩形領域に分割することによって生成される。タイルは、複数のCTUを含む。ブロックサイズ決定部202は、予測符号化の条件を示す情報である予測符号化条件情報を予測符号化方法決定部203に供給する。
予測符号化方法決定部203は、ブロックサイズ決定部202から供給される予測符号化条件情報に基づいて、符号化対象領域内の各画素ブロックに対する予測符号化方法を決定する。予測符号化方法決定部203は、入力される画像信号と、メモリ102から読み出した符号化済みの画素値とから、簡易的なフレーム内予測又は動き検出を含むフレーム間予測処理を行うことによって、符号化効率を示す評価値を算出する。そして、予測符号化方法決定部203は、符号化効率が最良となる予測符号化方式を決定する。
符号化対象の画素ブロックがIスライスの場合には、予測符号化方法決定部203は、フレーム内の予測画素のブロックサイズと予測モードとを決定する。符号化画素ブロックがPスライス又はBスライスの場合には、フレーム内予測及びフレーム間予測のうちの符号化効率の高い方の予測方法を選択する。なお、フレーム内の全てのスライスがIスライスであるフレームはIフレームと称され、フレーム内の全てのスライスがPスライスであるフレームはPフレームと称され、フレーム内の全てのスライスがBスライスであるフレームはBフレームと称される。
予測符号化方法決定部203は、フレーム内予測の場合には、ブロックサイズ制限情報に基づいて、フレーム内の予測画素のブロックサイズ、フレーム内予測モード等のフレーム内予測符号化用パラメータを決定する。予測符号化方法決定部203は、ブロックサイズ制限情報がない場合におけるフレーム内予測画素のブロックサイズを決定する。また、予測符号化方法決定部203は、ブロックサイズ制限情報に基づいて、ブロックサイズ制限情報に規定された制限の範囲内に収まるように、フレーム内の予測画素のブロックサイズを決定する。
予測符号化方法決定部203は、フレーム間予測の場合には、参照フレーム、画素ブロックの分割パターン、動きベクトル等のフレーム間予測符号化用パラメータを決定する。予測符号化方法決定部203は、ブロックサイズ制限情報に基づいて、ブロックサイズ制限情報に規定された制限の範囲内に収まるように、画素ブロック分割のパターンを変更する。予測符号化方法決定部203は、決定した予測符号化用パラメータを予測符号化処理部204に出力する。
予測符号化処理部204は、符号化対象のフレーム中の着目画素ブロックを符号化する際、予測符号化方法決定部203によって決定された予測符号化用パラメータに応じて、メモリ211から読み出した符号化済み画像から予測画素ブロックを生成する。そして、予測符号化処理部204は、着目画素ブロックと予測画素ブロックとの差分である予測残差ブロックを、直交変換・量子化部205に出力する。また、予測符号化処理部204は、予測画素ブロックを局所復号部206にも出力する。
直交変換・量子化部205は、予測符号化処理部204から供給される予測残差ブロックに対して直交変換処理を行う。また、直交変換・量子化部205は、符号量制御部207によって設定された量子化パラメータに応じた量子化ステップを用いて、直交変換処理により得られた係数を量子化する。直交変換・量子化部205は、量子化後の係数、即ち、量子化データを、エントロピー符号化部208と局所復号部206とに出力する。
局所復号部206は、直交変換・量子化部205から入力される量子化データに対して、逆量子化処理、逆直交変換処理等を行うことによって、予測残差データを生成する。そして、局所復号部206は、生成した予測残差データに、予測符号化処理部204から入力される予測画像を加算して復号処理を行い、複合処理によって得られた画素ブロックによって示される画像データをメモリ211に格納する。メモリ211に格納された復号処理後の画像データは、フレーム内予測処理に利用される。更に、デブロッキングフィルタ処理が施された復号後の画像データは、メモリ211に保持される。メモリ211に保持されたデブロッキングフィルタ処理後の復号データは、フレーム間予測処理にも利用される。
符号量制御部207は、符号化ピクチャバッファをオーバーフロー又はアンダーフローさせないように、符号化データの符号量を制御する。符号量制御部207は、エントロピー符号化部208から供給されるエントロピー符号化後の発生符号量に基づいて、後続のフレームに対する量子化パラメータを生成し、生成した量子化パラメータを直交変換・量子化部205に供給する。なお、符号量制御部207は、ブロックサイズ決定部202によって生成される量子化優先度情報に基づいて、例えば重み付け量子化係数を変更することによって量子化パラメータを調整する。
エントロピー符号化部208は、入力される量子化データに対してスライス単位にCABAC(コンテキスト適応型2値算術符号化)によるエントロピー符号化処理を行う。エントロピー符号化部208は、入力される多値の量子化データを2値のデータに変換する2値化部と、2値化部によって生成される2値化データを格納する2値化データメモリとを有している。また、エントロピー符号化部208は、2値化データの発生確率をコンテキストに応じて計算し、計算によって求められた2値データの発生確率を保持するコンテキスト計算部を有する。また、エントロピー符号化部208は、コンテキスト計算部から供給される2値データの発生確率に応じて算術符号化を行う算術符号化部を有する。エントロピー符号化部208は、こうして符号化されたデータを多重化処理部209に出力するとともに、エントロピー符号化後の発生符号量を符号量制御部207に出力する。
多重化処理部209は、画像の符号化の開始の際には、符号化対象のフレームのサイズ等の各種シンタックス情報を、符号化された画像データに付加することによって、ストリームデータを生成し、当該ストリームデータをメモリ211に記録する。
外部IF制御部210は、符号化処理モジュール200に備えられた不図示のバスを制御し得るとともに、外部モジュール、即ち、画像処理モジュール100a、100bとの間での入出力の制御を行う。外部モジュールとの間での入出力のインターフェースとしては、例えば、PCI Express規格等の汎用規格のインターフェースを用い得るが、これに限定されるものではない。外部IF制御部210は、画像データ、ストリームデータ等を、画像処理モジュール100a、100bから受信する。外部IF制御部210は、符号化した画像データ、符号化したストリームデータ等を、画像処理モジュール100a、100bに送信する。
なお、外部IF制御部210は、複数のレーンを備えている。外部IF制御部210が例えば4つのレーンを備えている場合には、例えば、4つのレーンによって1つのチャンネルを構成してもよい。チャンネルは、PCI Express規格においてはリンクと称される。また、外部IF制御部210が例えば4つのレーンを備えている場合に、2つのレーンをそれぞれ備える2つのチャンネルを構成するようにしてもよい。チャンネルの数、チャンネルを構成するレーンの数は、これらに限定されるものではなく、適宜設定し得る。
メモリ211は、書き換え可能な揮発性メモリである。メモリ211は、画像データ等を一時的に記録する。また、メモリ211は、符号化処理モジュール200の各部の動作に関するパラメータ等の情報を一時的に記録する。
<バス構成>
画像処理モジュール100と符号化処理モジュール200とを接続するバスの構成の例について図3を用いて説明する。図3(a)は、画像処理モジュール100a、100bと符号化処理モジュール200とを接続するバスの構成の例を示している。図3(a)に示す例においては、2つの画像処理モジュール100a、100bが符号化処理モジュール200に接続されている。符号化処理モジュール200に備えられた例えば4つのレーンが、例えば2つのチャンネル300a、300bに分割して用いられている。4つのレーンのうちの2つのレーンは、チャンネル300aに用いられている。4つのレーンのうちの残りの2つのレーンは、チャンネル300bに用いられている。チャンネル300aは、画像処理モジュール100aと符号化処理モジュール200との間の通信に用いられる。チャンネル300bは、画像処理モジュール100bと符号化処理モジュール200との間の通信に用いられる。画像処理モジュール100a、100bにそれぞれ備えられているレーンの数が、符号化処理モジュール200に備えられているレーンの数の半分である場合に、図3(a)のようなバス構成301が適用され得るが、これに限定されるものではない。図3(a)に示すようなバス構成301では、例えば左半分の画像001と右半分の画像002とがチャンネル300a、300bをそれぞれ介して画像処理モジュール100a、100bから符号化処理モジュール200にそれぞれ伝送されるようにし得る。また、図3(a)に示すようなバス構成においては、上半分の画像と下半分の画像とがチャンネル300a、300bをそれぞれ介して画像処理モジュール100a、100bから符号化処理モジュール200にそれぞれ伝送されるようにすることもできる。また、図3(a)に示すバス構成301においては、奇数番目のフレームと偶数番目のフレームとがチャンネル300a、300bをそれぞれ介して画像処理モジュール100a、100bから符号化処理モジュール200にそれぞれ伝送されるようにもし得る。符号化処理モジュール200に備えられた複数のレーンが複数のチャンネル300a、300bに分割して用いられるこのようなバス構成301を「第1のバス構成」と称することとする。第1のバス構成301は、PCI express規格に備えられたバイファケーション機能を用いて実現され得る。
図3(b)は、画像処理モジュール100と符号化処理モジュール200とを接続するバスの構成の他の例を示している。図3(b)に示す例においては、単一の画像処理モジュール100aが符号化処理モジュール200に接続されている。画像処理モジュール100aに備えられているレーンの数と符号化処理モジュール200に備えられているレーンの数とが等しい場合に、図3(b)のようなバス構成302が適用され得るが、これに限定されるものではない。画像処理モジュール100と符号化処理モジュール200とにそれぞれ備えられた例えば4つのレーンが、複数のチャンネル300a、300bに分割して用いられている。4つのレーンのうちの2つのレーンは、チャンネル300aに用いられている。4つのレーンのうちの残りの2つのレーンは、チャンネル300bに用いられている。例えば、左半分の画像001と右半分の画像002とがチャンネル300a、300bをそれぞれ介して画像処理モジュール100から符号化処理モジュール200にそれぞれ伝送されるようにすることができる。また、上半分の画像と下半分の画像とがチャンネル300a、300bをそれぞれ介して画像処理モジュール100から符号化処理モジュール200にそれぞれ伝送されるようにすることができる。また、奇数番目のフレームと偶数番目のフレームとがチャンネル300a、300bをそれぞれ介して画像処理モジュール100から符号化処理モジュール200にそれぞれ伝送されるようにすることができる。図3(b)に示すバス構成302においても、図3(a)に示すバス構成301と同様に、符号化処理モジュール200に備えられた複数のレーンが複数のチャンネル300a、300bに分割して用いられている。従って、図3(b)に示すバス構成302は、「第1のバス構成」の他の例である。
図3(c)は、画像処理モジュール100と符号化処理モジュール200とを接続するバスの構成の更に他の例を示している。図3(c)に示す例においては、単一の画像処理モジュール100が符号化処理モジュール200に接続されている。画像処理モジュール100に備えられているレーンの数と符号化処理モジュール200に備えられているレーンの数とが等しい場合に、図3(c)のようなバス構成303が適用され得るが、これに限定されるものではない。画像処理モジュール100と符号化処理モジュール200とにそれぞれ備えられた4つのレーンのいずれもが単一のチャンネル300に用いられている。単一のチャンネル300によって画像処理モジュール100と符号化処理モジュール200とが接続されているため、例えば動画像を構成する各々のフレームの画像003は、以下のように送信される。即ち、動画像を構成する各々のフレームの画像003は、単一のチャンネル300を介して画像処理モジュール100から符号化処理モジュール200に順次送信される。このように、符号化処理モジュール200に備えられた複数のレーンのいずれもが単一のチャンネル300に用いられるようなバス構成303を「第2のバス構成」と称することとする。
<画像処理モジュールと符号化処理モジュールとによって行われる処理>
次に、画像処理モジュールと符号化処理モジュールとによって行われる処理の例について図4を用いて説明する。図4は、画像処理モジュールと符号化処理モジュールとによって行われる処理の例を示す図である。ここでは、図3(a)に示すようなバス構成301の場合の動作を例に説明するが、これに限定されるものではない。
ステップS401において、画像処理モジュール100aと符号化処理モジュール200との間、及び、画像処理モジュール100bと符号化処理モジュール200との間においてバスの接続の確立が行われる。バスの接続を確立するために、各々のモジュール間においてデバイス認識が行われ、各々のモジュールにおいてコンフィグレーションの設定処理、アドレス空間の割り当て等が行われる。
ステップS402において、各々のチャンネル300a、300bを介して送信される画像の解像度(画素数)、フレームレート等に関する情報を、画像処理モジュール100a、100bが符号化処理モジュール200に送信する。なお、解像度、フレームレート等に関する情報は、画像処理モジュール100aと画像処理モジュール100bとのうちのいずれかからのみ符号化処理モジュール200に送信されるようにしてもよい。また、ステップS402において、バス構成を示す情報を、画像処理モジュール100a、100bが符号化処理モジュール200に送信するようにしてもよい。バス構成を示す情報は、例えば、上述した第1のバス構成301,302と第2のバス構成303とのうちのいずれであるかを示す情報である。
ステップS403において、画像処理モジュール100bは、画像データの送信の準備が完了したことを示す情報を、符号化処理モジュール200に対して送信する。かかる画像データには、画像処理モジュール100bに備えられた画像処理部113によって画像処理が施されている。かかる画像データは、画像処理モジュール100bに備えられたメモリ102に一時的に記録されている。
ステップS404において、画像処理モジュール100aは、画像データの送信の準備が完了したことを示す情報を、符号化処理モジュール200に対して送信する。かかる画像データには、画像処理モジュール100aに備えられた画像処理部113によって画像処理が施されている。かかる画像データは、画像処理モジュール100aに備えられたメモリ102に一時的に記録されている。画像処理モジュール100aにおける画像処理のタイミングと、画像処理モジュール100bにおける画像処理のタイミングとは互いに異なっている。このため、ステップS403とステップS404とは非同期で行われる。
ステップS405において、符号化処理モジュール200は、画像データの受信の要求を、画像処理モジュール100aと画像処理モジュール100bとに対して同時に送信する。
ステップS406において、画像処理モジュール100aと画像処理モジュール100bとは、チャンネル300a、300bをそれぞれ介して画像データを符号化処理モジュール200に送信する。画像処理モジュール100aに備えられたメモリ102に一時的に記録されていた画像データが、チャンネル300aを介して画像処理モジュール100aから符号化処理モジュール200に送信される。画像処理モジュール100bに備えられたメモリ102に一時的に記録されていた画像データが、チャンネル300bを介して画像処理モジュール100bから符号化処理モジュール200に送信される。
ステップS407において、符号化処理モジュール200は、符号化された画像データであるストリームデータを、画像処理モジュール100aに送信する。画像処理モジュール100aに備えられた記録媒体制御部119は、符号化処理モジュール200から供給されるストリームデータを記録媒体120に記録する。なお、ここでは、符号化処理モジュール200によって生成されたストリームデータが画像処理モジュール100aにのみ供給される場合を例に説明したが、これに限定されるものではない。例えば、符号化処理モジュール200によって生成されたストリームデータが画像処理モジュール100aと画像処理モジュール100bの両方に供給されるようにしてもよい。
なお、ステップS403からステップS407までの処理は、記録媒体120への動画像データの記録が完了するまでの間、繰り返し行われる。
なお、ここでは、図3(a)に示すようなバス構成301の場合の動作を例として示したが、これに限定されるものではない。例えば、図3(b)に示すようなバス構成302又は図3(c)に示すようなバス構成303の場合には、単一の画像処理モジュール100と符号化処理モジュール200との間で通信が行われる。
<画像処理モジュール100の処理>
本実施形態による画像処理装置に備えられた画像処理モジュール100によって行われる処理の例について図5を用いて説明する。図5は、画像処理モジュール100によって行われる処理の例を示すフローチャートである。不揮発性メモリ103に格納されているプログラムがメモリ102に展開され、メモリ102に展開されたプログラムがCPU101によって実行されることによって、図5に示すような処理が実現される。ここでは、図3(a)に示すようなバス構成301の場合の動作を例として説明する。
バスを介して伝送し得るデータの量には限度がある。このため、動画像を構成する各々のフレームの解像度が比較的低い場合には、高いフレームレートで動画像を伝送することが可能である。例えば解像度が1920×1080のフレームを伝送する場合には、フレームレートは例えば240fps(240P)とすることができる。一方、動画像を構成する各々のフレームの解像度が比較的高い場合には、フレームレートは低くせざるをえない。例えば解像度が3840×2160のフレームを伝送する場合には、フレームレートは例えば60fps(60P)とされる。解像度が1920×1080、フレームレートが240fpsの場合における1秒間当たりのデータ伝送量と、解像度が3840×2160、フレームレートが60fpsの場合における1秒間当たりのデータ伝送量とは同じである。解像度が比較的高いフレームが伝送される場合には、当該フレームの画像を例えば2つに分割し、2つの分割画像を例えば2つの画像処理モジュール100a、100bによって分散処理することが好ましい場合がある。一方、フレームレートが比較的高い場合には、フレームの解像度は比較的低く設定されるため、1つのフレームを分割することなく画像処理モジュール100によって処理し得る。しかしながら、1つのフレームの伝送が完了し、次のフレームの伝送が行われるまでの間には、送信側と受信側との間でコマンドの送受信等が行われるため、インターバル時間が生じる。インターバル時間の合計が単位時間に占める割合は、フレームレートが高くなるほど大きくなる。例えば、奇数番目のフレームについてはチャンネル300aを用いて伝送を行い、偶数番目のフレームについてはチャンネル300bを用いて伝送を行うようにすれば、インターバル時間の合計が単位時間に占める割合を半減することが可能である。そこで、本実施形態では、フレームレートが比較的高い場合には、奇数番目のフレームがチャンネル300aを介して伝送され、偶数番目のフレームがチャンネル300bを介して伝送される。一方、フレームレートが比較的低い場合には、解像度の比較的高い画像が伝送され得るため、画像を分割することにより得られる分割画像の各々に対して複数の画像処理モジュール100a、100bによって画像処理を行う。そして、これらの画像処理モジュール100a、100bによって画像処理が施された分割画像をチャンネル300a、300bを介してそれぞれ伝送する。
ステップS501において、CPU101は、外部IF制御部114を制御することによって、符号化処理モジュール200との間でバスの接続の確立を行う。例えば、図3(b)に示すような第1のバス構成302によってバスの接続を確立する。この後、ステップS502に遷移する。
ステップS502において、CPU101は、画像を記録する際に用いられるパラメータである記録用パラメータを取得する。記録用パラメータは、不揮発性メモリ103に予め記録されている。CPU101は、記録用パラメータを不揮発性メモリ103から読み出す。記録用パラメータは、具体的には、画像を記録する際の解像度、フレームレート等を含む。記録用パラメータは、操作部104を介してユーザによって予め設定される。この後、ステップS503に遷移する。
ステップS503において、CPU101は、記録用パラメータ、具体的には、画像を記録する際の解像度、フレームレート等に関する情報を、外部IF制御部114を制御することによって符号化処理モジュール200に送信する。この後、ステップS504に遷移する。なお、CPU101は、記録用パラメータの他に、ステップS501において確立されたバス構成を示す情報を、符号化処理モジュール200に送信するようにしてもよい。バス構成を示す情報は、例えば、上述した第1のバス構成301,302と第2のバス構成303とのうちのいずれであるかを示す情報である。
ステップS504において、CPU101は、ステップS502において取得した記録用パラメータに含まれるフレームレートが、所定の閾値より大きいか否かを判定する。なお、所定の閾値は、メモリ102に予め記録されている。ステップS502において取得した記録用パラメータに含まれるフレームレートが所定の閾値より大きい場合には(ステップS504においてYES)、ステップS505に遷移する。ステップS502において取得した記録用パラメータに含まれるフレームレートが所定の閾値以下である場合には(ステップS504においてNO)、ステップS506に遷移する。
ステップS505において、CPU101は、外部IF制御部114を制御することによって、所定のフレームの画像を符号化処理モジュール200に送信する。より具体的には、CPU101は、フレームの順番を示すフレーム番号情報を、送信するフレームに対して付加し、フレーム番号情報が付加されたフレームを符号化処理モジュール200に送信する。ここでは、画像処理モジュール100aと符号化処理モジュール200との間において奇数番目のフレームの画像が伝送され、画像処理モジュール100bと符号化処理モジュール200との間において偶数番目のフレームの画像が伝送される場合を例に説明する。画像処理モジュール100aによって図5に示す処理が実行される場合、画像処理モジュール100aに備えられたCPU101は、奇数番目のフレームの画像を、画像処理モジュール100aに備えられたメモリ102に一時的に記録する。画像処理モジュール100aに備えられたCPU101は、メモリ102から読み出した奇数番目のフレームの画像を、外部IF制御部114を制御することによって、符号化処理モジュール200に送信する。画像処理モジュール100bによって図5に示す処理が実行される場合、画像処理モジュール100bに備えられたCPU101は、偶数番目のフレームの画像を画像処理モジュール100bに備えられたメモリ102に一時的に記録する。画像処理モジュール100bに備えられたCPU101は、メモリ102から読み出した偶数番目のフレームの画像を、外部IF制御部114を制御することによって、符号化処理モジュール200に送信する。なお、奇数番目のフレームと偶数番目のフレームとのうちのいずれの伝送を行うかについては、予め決定される。この後、ステップS507に遷移する。こうして、奇数番目のフレームと偶数番目のフレームとがチャンネル300a、300bをそれぞれ介して画像処理モジュール100a、100bから符号化処理モジュール200にそれぞれ送信される。
ステップS506において、CPU101は、外部IF制御部114を制御することによって、各々のフレームの分割画像を符号化処理モジュール200に送信する。ここでは、各々のフレームの上半分の画像が画像処理モジュール100aから符号化処理モジュール200に送信され、各々のフレームの下半分の画像が画像処理モジュール100bから符号化処理モジュール200に送信される場合を例に説明する。画像処理モジュール100aによって図5に示すような処理が実行される場合、画像処理モジュール100aに備えられたCPU101は、各々のフレームの上半分の画像を画像処理モジュール100aに備えられたメモリ102に一時的に記録する。画像処理モジュール100aに備えられたCPU101は、メモリ102から読み出した上半分の画像を、外部IF制御部114を制御することによって、符号化処理モジュール200に送信する。画像処理モジュール100bによって図5に示す処理が実行される場合、画像処理モジュール100bに備えられたCPU101は、各々のフレームの下半分の画像を画像処理モジュール100bに備えられたメモリ102に一時的に記録する。画像処理モジュール100bに備えられたCPU101は、メモリ102から読み出された下半分の画像を、外部IF制御部114を制御することによって、符号化処理モジュール200に送信する。なお、上半分の画像と下半分の画像とのうちのいずれの伝送を行うかについては、予め決定される。なお、ここでは、上半分の画像と下半分の画像とをそれぞれ異なるチャンネル300a、300bを介して伝送する場合を例に説明したが、これに限定されるものではない。例えば、左半分の画像と右半分の画像とをそれぞれ異なるチャンネル300a、300bを介して伝送するようにしてもよい。また、タイル状に分割された複数の画像の各々を、それぞれ異なるチャンネル300a、300bを介して伝送するようにしてもよい。この後、ステップS507に遷移する。
ステップS507において、CPU101は、符号化処理モジュール200によって符号化されたストリームデータを、外部IF制御部114を制御することによって受信する。奇数番目のフレームと偶数番目のフレームとがステップS505においてチャンネル300a、300bをそれぞれ介して符号化処理モジュール200に送信された場合には、ステップS507において、以下のような処理が行われる。即ち、ステップS507においては、以下のようなストリームデータが符号化処理モジュール200から画像処理モジュール100aに供給される。符号化処理モジュール200から画像処理モジュール100aに供給されるストリームデータは、符号化済みの奇数番目のフレームのみから成るストリームデータでもないし、符号化済みの偶数番目のフレームのみから成るストリームデータでもない。符号化済みの奇数番目のフレームと符号化済みの偶数番目のフレームの両方が、符号化処理モジュール200から画像処理モジュール100aに供給される。各々のフレームの上半分の画像と各々のフレームの下半分の画像とがステップS506においてチャンネル300a、300bをそれぞれ介して符号化処理モジュール200に送信された場合には、ステップS507において、以下のような処理が行われる。即ち、ステップS507においては、以下のようなストリームデータが符号化処理モジュール200から画像処理モジュール100aに供給される。符号化処理モジュール200から画像処理モジュール100aに供給されるストリームデータは、符号化済みの上半分の画像のみから成るストリームデータでもないし、符号化済みの下半分の画像のみから成るストリームデータでもない。上半分の画像と下半分の画像とを合成することにより得られる全体画像に対して符号化処理を施すことによって得られる画像のストリームデータが、符号化処理モジュール200から画像処理モジュール100aに供給される。この後、ステップS508に遷移する。
ステップS508において、CPU101は、記録媒体制御部119を制御することによって、コンテナ化したストリームデータを記録媒体120に記録する。こうして、図5に示す処理が完了する。
なお、ステップS505からステップS508までの処理、又は、ステップS506からステップS508までの処理は、繰り返し実行される。
<符号化処理モジュール200の処理>
本実施形態による画像処理装置に備えられた符号化処理モジュール200によって行われる処理の例について図6を用いて説明する。図6は、符号化処理モジュール200によって行われる処理の例を示すフローチャートである。不図示の不揮発性メモリに格納されているプログラムがメモリ211に展開され、メモリ211に展開されたプログラムがCPU201によって実行されることによって、図6に示すような処理が実現される。ここでは、図3(a)に示すようなバス構成301の場合の動作を例として説明する。
ステップS601において、CPU201は、外部IF制御部210を制御することによって、画像処理モジュール100aとの間でバスの接続の確立を行うとともに、画像処理モジュール100bとの間でバスの接続の確立を行う。この後、ステップS602に遷移する。
ステップS602において、CPU201は、画像を記録する際に用いられるパラメータである記録用パラメータを、外部IF制御部210を制御することによって画像処理モジュール100a、100bから受信する。記録用パラメータは、上述したように、具体的には、画像を記録する際の解像度、フレームレート等である。なお、記録用パラメータの他に、確立されたバス構成を示す情報を、画像処理モジュール100から受信するようにしてもよい。この後、ステップS603に遷移する。
ステップS603において、CPU201は、ステップS602において取得した記録用パラメータに含まれるフレームレートが、所定の閾値より大きいか否かを判定する。なお、所定の閾値は、メモリ211に予め記録されている。ステップS602において取得した記録用パラメータに含まれるフレームレートが閾値より大きい場合には(ステップS603においてYES)、ステップS605に遷移する。ステップS602において取得した記録用パラメータに含まれるフレームレートが閾値以下である場合には(ステップS603においてNO)、ステップS604に遷移する。
ステップS604において、CPU201は、ステップS601において確立されたバス構成が第1のバス構成301であるか否かを判定する。CPU201は、例えば、ステップS601においてバスの接続を確立した際の情報に基づいて、ステップS601において確立されたバス構成が第1のバス構成301であるか否かを判定し得る。また、CPU201は、ステップS602において画像処理モジュールから受信した、確立されたバス構成を示す情報に基づいて、確立されたバス構成が第1のバス構成301であるか否かを判定し得る。確立されたバス構成が第1のバス構成301である場合には(ステップS604においてYES)、ステップS607に遷移する。確立されたバス構成が第1のバス構成301でない場合には(ステップS604においてNO)、即ち、第2のバス構成303である場合には、ステップS609に遷移する。
ステップS605において、CPU201は、外部IF制御部210を制御することによって、各々のフレームの画像データをチャンネル300a、300bを介して受信する。ここでは、奇数番目のフレームが画像処理モジュール100aから符号化処理モジュール200に供給され、偶数番目のフレームが画像処理モジュール100bから符号化処理モジュール200に供給される場合を例に説明する。CPU201は、外部IF制御部210を制御することによって、チャンネル300aを介して奇数番目のフレームの画像データを受信する。また、CPU201は、外部IF制御部210を制御することによって、チャンネル300bを介して偶数番目のフレームの画像データを受信する。この後、ステップS606に遷移する。
ステップS606において、CPU201は、チャンネル300a、300bを介してそれぞれ受信した各々のフレームの画像データを、フレーム番号順にメモリ211に記録する。この後、ステップS610に遷移する。
ステップS607において、CPU201は、外部IF制御部210を制御することによって、各々のフレームの分割画像をチャンネル300a、300bを介してそれぞれ受信する。ここでは、各々のフレームの上半分の画像が画像処理モジュール100aから符号化処理モジュール200に供給され、各々のフレームの下半分の画像が画像処理モジュール100bから符号化処理モジュール200に供給される場合を例に説明する。CPU201は、外部IF制御部210を制御することによって、各々のフレームの上半分の画像を、チャンネル300aを介して受信する。CPU201は、外部IF制御部210を制御することによって、各々のフレームの下半分の画像を、チャンネル300bを介して受信する。なお、ここでは、上半分の画像と下半分の画像とをそれぞれ異なるチャンネル300a、300bを介して伝送する場合を例に説明したが、これに限定されるものではない。例えば、左半分の画像と右半分の画像とをそれぞれ異なるチャンネル300a、300bを介して受信するようにしてもよい。この場合、CPU201は、各々のフレームの左半分の画像を、外部IF制御部210を制御することによって、チャンネル300aを介して受信する。また、CPU201は、各々のフレームの右半分の画像を、外部IF制御部210を制御することによって、チャンネル300bを介して受信する。また、タイル状に分割された複数の画像の各々を、それぞれ異なるチャンネル300a、300bを介して受信するようにしてもよい。この後、ステップS608に遷移する。
ステップS608において、CPU201は、チャンネル300a、300bを介してそれぞれ受信した分割画像を合成することによって得られる全体画像を、メモリ211に記録する。この後、ステップS610に遷移する。
ステップS609において、CPU201は、単一のチャンネル300を介して画像処理モジュール100から画像を受信する。CPU201は、受信した画像をメモリ211に記録する。この後、ステップS610に遷移する。
ステップS610において、CPU201は、図2を用いて上述したような圧縮符号化処理を行い、圧縮符号化処理によって生成されたストリームデータをメモリ211に記録する。この後、ステップS611に遷移する。
ステップS611において、CPU201は、外部IF制御部210を制御することによって、ストリームデータを画像処理モジュール100aに送信する。なお、ストリームデータが画像処理モジュール100aと画像処理モジュール100bの両方に送信されるようにしてもよい。こうして、図6に示す処理が完了する。
なお、ステップS605からステップS611までの処理、ステップS607からステップS611までの処理、又は、ステップS609からステップS611までの処理は、繰り返し実行される。
このように、本実施形態によれば、閾値より大きいフレームレートの動画像が伝送される場合においては、以下のような第1のモードで伝送が行われる。第1のモードにおいては、動画像を構成する複数のフレームのうちの第1のフレームがチャンネル300aを介して伝送され、第1のフレームとは異なる第2のフレームがチャンネル300bを介して伝送される。第1のフレームは例えば奇数番目のフレームであり、第2のフレームは例えば偶数番目のフレームである。閾値より大きいフレームレートの動画像が伝送される場合に、このような第1のモードで伝送が行われるため、単位時間当たりのインターバル時間の割合が低減される。このため、大きいフレームレートで動画像を伝送することが可能となる。一方、閾値以下のフレームレートの動画像が伝送される場合においては、解像度の高いフレームを伝送し得るように、以下のような第2のモードで伝送が行われる。第2のモードにおいては、動画像を構成する複数のフレームのうちの一のフレームの第1の部分がチャンネル300aを介して伝送されるとともに、当該一のフレームのうちの第1の部分とは異なる第2の部分がチャンネル300bを介して伝送される。このように、本実施形態によれば、伝送を良好に行い得る画像処理装置を提供することができる。
[第2実施形態]
第2実施形態による符号化装置、画像処理装置及び画像処理方法について図面を用いて説明する。図1乃至図6に示す第1実施形態による画像処理装置及び画像処理方法と同一の構成要素には、同一の符号を付して説明を省略または簡潔にする。
本実施形態による画像処理装置は、単一の画像処理モジュール100が符号化処理モジュール200に接続されているものである。
本実施形態による画像処理装置に備えられている画像処理モジュール100の構成は図1を用いて上述した第1実施形態による画像処理装置10に備えられている画像処理モジュール100の構成と同様である。また、本実施形態による画像処理装置に備えられている符号化処理モジュール200の構成は図2を用いて上述した第1実施形態による画像処理装置10に備えられている符号化処理モジュール200の構成と同様である。また、本実施形態による画像処理装置に備えられている符号化処理モジュール200によって行われる処理は、図6を用いて上述した第1実施形態による画像処理装置10に備えられている符号化処理モジュール200によって行われる処理と同様である。
本実施形態による画像処理装置に備えられた画像処理モジュール100によって行われる処理の例について図7を用いて説明する。図7は、本実施形態による画像処理装置に備えられた画像処理モジュール100によって行われる処理の例を示すフローチャートである。不揮発性メモリ103に格納されているプログラムがメモリ102に展開され、メモリ102に展開されたプログラムがCPU101によって実行されることによって、図7に示すような処理が実現される。ここでは、図3(b)に示すようなバス構成302又は図3(c)に示すようなバス構成303である場合の動作を例として説明する。
ステップS701において、CPU101は、画像を記録する際に用いられるパラメータである記録用パラメータを取得する。記録用パラメータは、上述したように、不揮発性メモリ103に予め記録されている。CPU101は、上述したように、記録用パラメータを不揮発性メモリ103から読み出す。記録用パラメータとは、上述したように、具体的には、画像を記録する際の解像度、フレームレート等である。記録用パラメータは、操作部104を介してユーザによって予め設定される。この後、ステップS702に遷移する。
ステップS702において、CPU101は、ステップS701において取得した記録用パラメータに含まれるフレームレートが、所定の閾値より大きいか否かを判定する。なお、所定の閾値は、メモリ102に予め記録されている。ステップS701において取得された記録用パラメータに含まれるフレームレートが所定の閾値より大きい場合には(ステップS702においてYES)、ステップS703に遷移する。ステップS701において取得された記録用パラメータに含まれるフレームレートが所定の閾値以下である場合には(ステップS702においてNO)、ステップS706に遷移する。
ステップS703において、CPU101は、外部IF制御部114を制御することによって、符号化処理モジュール200との間でバスの接続の確立を行う。ここでは、図3(b)に示すような第1のバス構成302によってバスの接続を確立する場合を例に説明するが、これに限定されるものではない。この後、ステップS704に遷移する。
ステップS704において、CPU101は、記録用パラメータ、具体的には、画像を記録する際の解像度、フレームレート等に関する情報を、外部IF制御部114を制御することによって符号化処理モジュール200に送信する。この後、ステップS705に遷移する。なお、記録用パラメータの他に、ステップS703において確立されたバスの構成を示す情報を、符号化処理モジュール200に送信するようにしてもよい。バスの構成を示す情報は、例えば、上述した第1のバス構成301,302と第2のバス構成303とのうちのいずれであるかを示す情報である。
ステップS705において、CPU101は、外部IF制御部114を制御することによって、所定のフレームの画像を符号化処理モジュール200に送信する。より具体的には、CPU101は、フレームの順番を示すフレーム番号情報を、送信するフレームに対して付加し、フレーム番号情報が付加されたフレームを符号化処理モジュール200に送信する。ここでは、奇数番目のフレームの画像がチャンネル300aを介して伝送され、偶数番目のフレームの画像がチャンネル300bを介して伝送される場合を例に説明する。CPU101は、奇数番目のフレームの画像と偶数番目のフレームの画像とをメモリ102に一時的に記録する。CPU101は、メモリ102から読み出した奇数番目のフレームの画像を、外部IF制御部114を制御することによって、チャンネル300aを介して符号化処理モジュール200に送信する。また、CPU101は、メモリ102から読み出した偶数番目のフレームの画像を、外部IF制御部114を制御することによって、チャンネル300bを介して符号化処理モジュール200に送信する。この後、ステップS709に遷移する。こうして、奇数番目のフレームと偶数番目のフレームとがチャンネル300a、300bをそれぞれ介して画像処理モジュール100から符号化処理モジュール200にそれぞれ送信される。
ステップS706において、CPU101は、外部IF制御部114を制御することによって、符号化処理モジュール200との間でバスの接続の確立を行う。ここでは、例えば図3(c)に示すような第2のバス構成303によってバスの接続を確立する場合を例に説明するが、これに限定されるものではない。この後、ステップS707に遷移する。
ステップS707において、CPU101は、上述したステップS704と同様に、記録用パラメータを、外部IF制御部114を制御することによって符号化処理モジュール200に送信する。記録用パラメータは、上述したように、具体的には、画像を記録する際の解像度、フレームレート等に関する情報である。この後、ステップS708に遷移する。
ステップS708において、CPU101は、外部IF制御部114を制御することによって、単一のチャンネル300を介して画像データを送信する。CPU101は、フレームの順番を示すフレーム番号情報を、送信するフレームに対して付加し、フレーム番号情報が付加されたフレームを符号化処理モジュール200に送信する。この後、ステップS709に遷移する。
ステップS709において、CPU101は、符号化処理モジュール200によって符号化されたストリームデータを、外部IF制御部114を制御することによって受信する。この後、ステップS710に遷移する。
ステップS710において、CPU101は、記録媒体制御部119を制御することによって、コンテナ化したストリームデータを記録媒体120に記録する。こうして、図7に示す処理が完了する。
なお、ステップS703からステップS710までの処理、又は、ステップS706からステップS710までの処理は、繰り返し実行される。
このように、本実施形態によれば、閾値より大きいフレームレートの動画像が伝送される場合においては、以下のような第1のモードで伝送が行われる。第1のモードにおいては、動画像を構成する複数のフレームのうちの第1のフレームがチャンネル300aを介して伝送され、第1のフレームとは異なる第2のフレームがチャンネル300bを介して伝送される。第1のフレームは例えば奇数番目のフレームであり、第2のフレームは例えば偶数番目のフレームである。閾値より大きいフレームレートの動画像が伝送される場合に、このような第1のモードで伝送が行われるため、単位時間当たりのインターバル時間の割合が低減される。このため、大きいフレームレートでの動画像を伝送することが可能となる。一方、閾値より大きいフレームレートの動画像を伝送しない場合においては、以下のような第2のモードで伝送が行われる。第2のモードでは、動画像を構成する複数のフレームの各々が単一のチャンネル300を介して伝送される。このように、本実施形態においても、伝送を良好に行い得る画像処理装置を提供することができる。
[第3実施形態]
第3実施形態による符号化装置、画像処理装置及び画像処理方法について図面を用いて説明する。図1乃至図7に示す第1又は第2実施形態による画像処理装置及び画像処理方法と同一の構成要素には、同一の符号を付して説明を省略または簡潔にする。
本実施形態による画像処理装置は、画像を分割することによって生成される複数のタイルを複数のチャンネル300a、300bを介して伝送し得るものである。
本実施形態による画像処理装置に備えられている画像処理モジュール100の構成は図1を用いて上述した第1実施形態による画像処理装置10に備えられている画像処理モジュール100の構成と同様である。また、本実施形態による画像処理装置に備えられている符号化処理モジュール200の構成は図2を用いて上述した第1実施形態による画像処理装置10に備えられている符号化処理モジュール200の構成と同様である。
<画像処理モジュール100の処理>
本実施形態による画像処理装置に備えられた画像処理モジュール100によって行われる処理の例について図8を用いて説明する。図8は、本実施形態による画像処理装置に備えられた画像処理モジュール100によって行われる処理を示すフローチャートである。不揮発性メモリ103に格納されているプログラムがメモリ102に展開され、メモリ102に展開されたプログラムがCPU101によって実行されることによって、図8に示すような処理が実現される。ここでは、図3(a)に示すようなバス構成301の場合の動作を例として説明する。
1つのタイルの伝送が完了し、次のタイルの伝送が行われるまでの間には、送信側と受信側との間でコマンドの送受信等が行われるため、インターバル時間が生じる。インターバル時間の合計が単位時間に占める割合は、画像を分割することにより生成されるタイルの数が多くなるほど大きくなる。例えば、奇数番目のタイルについてはチャンネル300aを用いて伝送を行い、偶数番目のタイルについてはチャンネル300bを用いて伝送を行うようにすれば、インターバル時間の合計が単位時間に占める割合を半減することが可能である。そこで、本実施形態では、画像を分割することにより生成されるタイルの数が閾値以上である場合には、奇数番目のタイルがチャンネル300aを介して伝送され、偶数番目のタイルがチャンネル300bを介して伝送される。一方、画像を分割することにより生成されるタイルの数が閾値以上でない場合には、画像を分割することにより得られる分割画像の各々に対して複数の画像処理モジュール100a、100bによって画像処理を行う。そして、これらの画像処理モジュール100a、100bによって画像処理が施された分割画像をチャンネル300a、300bを介してそれぞれ伝送する。
ステップS801において、CPU101は、上述したステップS501と同様に、外部IF制御部114を制御することによって、符号化処理モジュール200との間でバスの接続の確立を行う。例えば、図3(a)に示すような第1のバス構成301によってバスの接続を確立する。この後、ステップS802に遷移する。
ステップS802において、CPU101は、画像を記録する際に用いられるパラメータである記録用パラメータを取得する。記録用パラメータは、不揮発性メモリ103に予め記録されている。CPU101は、記録用パラメータを不揮発性メモリ103から読み出す。記録用パラメータは、具体的には、例えば画像を記録した際の画像の解像度等である。ここでは、タイルに分割される画像が静止画像である場合を例に説明するが、これに限定されるものではない。記録用パラメータは、操作部104を介してユーザによって予め設定される。この後、ステップS803に遷移する。
ステップS803において、CPU101は、画像を分割することにより生成されるタイルの数を示す情報を、外部IF制御部114を制御することによって、符号化処理モジュール200に送信する。画像を分割することによって生成されるタイルの数は、例えば、画像の画素数をタイルのサイズで除算することによって算出し得る。なお、CPU101は、タイルの数を示す情報の他に、画像の解像度を示す情報を、符号化処理モジュール200に送信するようにしてもよい。この後、ステップS804に遷移する。なお、記録用パラメータの他に、ステップS801において確立されたバス構成を示す情報を、符号化処理モジュール200に送信するようにしてもよい。バス構成を示す情報は、上述したように、例えば、上述した第1のバス構成301,302と第2のバス構成303とのうちのいずれであるかを示す情報である。
ステップS804において、CPU101は、ステップS803において算出されたタイル数が所定の閾値より大きいか否かを判定する。なお、所定の閾値は、メモリ102に予め記録されている。ステップS803において算出されたタイル数が所定の閾値より大きい場合には(ステップS804においてYES)、ステップS805に遷移する。ステップS803において算出されたタイル数が所定の閾値以下である場合には(ステップS804においてNO)、ステップS806に遷移する。
ステップS805において、CPU101は、画像を複数に分割することによって、複数のタイル(タイル原画像)を生成する。当該タイルのサイズは、符号化処理モジュール200によって行われる圧縮符号化におけるタイルのサイズと同等のサイズとする。CPU101は、外部IF制御部114を制御することによって、所定のタイルを符号化処理モジュール200に送信する。CPU101は、タイルの順番を示すタイル番号情報を、送信するタイルに対して付加し、タイル番号情報が付加されたタイルを符号化処理モジュール200に送信する。ここでは、奇数番目のタイルが画像処理モジュール100aから符号化処理モジュール200に伝送され、偶数番目のタイルが画像処理モジュール100bから符号化処理モジュール200に伝送される場合を例に説明する。画像処理モジュール100aによって図8に示す処理が実行される場合、画像処理モジュール100aに備えられたCPU101は、画像を分割することにより得られる複数のタイルのうちの奇数番目のタイルをメモリ102に一時的に記録する。画像処理モジュール100aに備えられたCPU101は、メモリ102から読み出した奇数番目のタイルを、外部IF制御部114を制御することによって、符号化処理モジュール200に送信する。画像処理モジュール100bによって図8に示す処理が実行される場合、画像処理モジュール100bに備えられたCPU101は、画像を分割することにより得られる複数のタイルのうちの偶数番目のタイルをメモリ102に一時的に記録する。画像処理モジュール100bに備えられたCPU101は、メモリ102から読み出した偶数番目のタイルを、外部IF制御部114を制御することによって、符号化処理モジュール200に送信する。なお、奇数番目のタイルと偶数番目のタイルとのうちのいずれの伝送を行うかは、予め決定される。この後、ステップS807に遷移する。こうして、各々のタイルがチャンネル300a、300bをそれぞれ介して符号化処理モジュール200に伝送される。
ステップS806において、CPU101は、画像を分割する。ここでは、画像を上下に分割することによって、上半分の画像と下半分の画像とが生成される場合を例に説明するが、これに限定されるものではない。CPU101は、画像を分割することにより得られる分割画像を、外部IF制御部114を制御することによって、符号化処理モジュール200に送信する。上半分の画像が画像処理モジュール100aから符号化処理モジュール200に送信され、下半分の画像が画像処理モジュール100bから符号化処理モジュール200に送信される場合を例に説明する。画像処理モジュール100aによって図8に示す処理が実行される場合、画像処理モジュール100aに備えられたCPU101は、上半分の画像をメモリ102に一時的に記録する。画像処理モジュール100aに備えられたCPU101は、メモリ102から読み出した上半分の画像を、外部IF制御部114を制御することによって、符号化処理モジュール200に送信する。画像処理モジュール100bによって図8に示す処理が実行される場合、画像処理モジュール100bに備えられたCPU101は、下半分の画像をメモリ102に一時的に記録する。画像処理モジュール100bに備えられたCPU101は、メモリ102から読み出した下半分の画像を、外部IF制御部114を制御することによって、符号化処理モジュール200に送信する。なお、上半分の画像と下半分の画像とのうちのいずれの伝送を行うかは、予め決定される。なお、ここでは、上半分の画像と下半分の画像とをそれぞれ異なるチャンネル300a、300bを介して伝送する場合を例に説明したが、これに限定されるものではない。例えば、左半分の画像と右半分の画像とをそれぞれ異なるチャンネル300a、300bを介して伝送するようにしてもよい。また、連写撮影が行われる場合には、奇数番目の画像と偶数番目の画像とを、それぞれ異なるチャンネル300a、300bを介して伝送するようにしてもよい。この後、ステップS807に遷移する。
ステップS807において、CPU101は、上述したステップS507と同様に、符号化処理モジュール200によって符号化されたストリームデータを、外部IF制御部114を制御することによって受信する。この後、ステップS808に遷移する。
ステップS808において、CPU101は、上述したステップS508と同様に、記録媒体制御部119を制御することによって、コンテナ化したストリームデータを記録媒体120に記録する。こうして、図8に示す処理が完了する。
なお、ステップS805からステップS808までの処理、又は、ステップS806からステップS508までの処理は、繰り返し実行される。
<符号化処理モジュール200の処理>
本実施形態による画像処理装置に備えられた符号化処理モジュール200によって行われる処理の例について図9を用いて説明する。図9は、符号化処理モジュール200によって行われる処理の例を示すフローチャートである。不図示の不揮発性メモリに格納されているプログラムがメモリ211に展開され、メモリ211に展開されたプログラムがCPU201によって実行されることによって、図9に示すような処理が実現される。ここでは、図3(a)に示すようなバス構成301の場合の動作を例として説明する。
ステップS901において、CPU201は、図6を用いて上述したステップS601と同様に、外部IF制御部210を制御することによって、以下のような処理を行う。即ち、CPU201は、画像処理モジュール100aとの間でバスの接続の確立を行うとともに、画像処理モジュール100bとの間でバスの接続の確立を行う。この後、ステップS902に遷移する。
ステップS902において、CPU201は、静止画像の解像度を示す情報、タイル数を示す情報(タイル数情報)等を、外部IF制御部210を制御することによって画像処理モジュール100a、100bから受信する。なお、これらの情報の他に、確立されたバス構成を示す情報を、画像処理モジュール100から受信するようにしてもよい。この後、ステップS903に遷移する。
ステップS903において、CPU201は、ステップS902において取得したタイル数情報によって示されるタイル数が所定の閾値より大きいか否かを判定する。タイル数情報によって示されるタイル数が所定の閾値より大きい場合には(ステップS903においてYES)、ステップS905に遷移する。タイル数情報によって示されるタイル数が所定の閾値以下である場合には(ステップS903においてNO)、ステップS904に遷移する。
ステップS904において、CPU201は、ステップS901において確立されたバス構成が第1のバス構成301であるか否かを判定する。CPU201は、例えば、ステップS901においてバスの接続を確立した際の情報に基づいて、ステップS901において確立されたバス構成が第1のバス構成301であるか否かを判定し得る。また、CPU201は、ステップS902において画像処理モジュールから受信した、確立されたバス構成を示す情報に基づいて、確立されたバス構成が第1のバス構成301であるか否かを判定し得る。確立されたバス構成が第1のバス構成301である場合には(ステップS904においてYES)、ステップS907に遷移する。確立されたバス構成が第1のバス構成301でない場合には(ステップS904においてNO)、即ち、第2のバス構成302である場合には、ステップS909に遷移する。
ステップS905において、CPU201は、外部IF制御部210を制御することによって、各々のタイルをチャンネル300a、300bを介して受信する。ここでは、奇数番目のタイルが画像処理モジュール100aから符号化処理モジュール200に供給され、偶数番目のタイルが画像処理モジュール100bから符号化処理モジュール200に供給される場合を例に説明する。CPU201は、外部IF制御部210を制御することによって、チャンネル300aを介して奇数番目のタイルを受信する。また、CPU201は、外部IF制御部210を制御することによって、チャンネル300bを介して偶数番目のタイルを受信する。この後、ステップS906に遷移する。
ステップS906において、CPU201は、チャンネル300a、300bを介してそれぞれ受信した各々のタイルを、タイル番号順に並べて合成することによって得られる全体画像をメモリ211に記録する。この後、ステップS910に遷移する。
ステップS907において、CPU201は、外部IF制御部210を制御することによって、各々のフレームの分割画像をチャンネル300a、300bを介してそれぞれ受信する。ここでは、各々のフレームの上半分の画像が画像処理モジュール100aから符号化処理モジュール200に供給され、各々のフレームの下半分の画像が画像処理モジュール100bから符号化処理モジュール200に供給される場合を例に説明する。CPU201は、外部IF制御部210を制御することによって、各々のフレームの上半分の画像を、チャンネル300aを介して受信する。CPU201は、外部IF制御部210を制御することによって、各々のフレームの下半分の画像を、チャンネル300bを介して受信する。なお、ここでは、上半分の画像と下半分の画像とをそれぞれ異なるチャンネル300a、300bを介して伝送する場合を例に説明したが、これに限定されるものではない。例えば、左半分の画像と右半分の画像とをそれぞれ異なるチャンネル300a、300bを介して受信するようにしてもよい。この場合、CPU201は、各々のフレームの左半分の画像を、外部IF制御部210を制御することによって、チャンネル300aを介して受信する。また、CPU201は、各々のフレームの右半分の画像を、外部IF制御部210を制御することによって、チャンネル300bを介して受信する。また、タイル状に分割された複数の画像の各々を、それぞれ異なるチャンネル300a、300bを介して受信するようにしてもよい。この後、ステップS908に遷移する。
ステップS908において、CPU201は、チャンネル300a、300bを介してそれぞれ受信した分割画像を合成することによって得られる全体画像を、メモリ211に記録する。この後、ステップS910に遷移する。
ステップS909において、CPU201は、単一のチャンネル300を介して画像処理モジュール100から画像を受信する。CPU201は、受信した画像をメモリ211に記録する。この後、ステップS910に遷移する。
ステップS910において、CPU201は、図6を用いて上述したステップS610と同様に、図2を用いて上述したような圧縮符号化処理を行い、圧縮符号化処理によって生成されたストリームデータをメモリ211に記録する。この後、ステップS911に遷移する。
ステップS911において、CPU201は、図6を用いて上述したステップS611と同様に、外部IF制御部210を制御することによって、ストリームデータを画像処理モジュール100aに送信する。なお、ストリームデータが画像処理モジュール100aと画像処理モジュール100bの両方に送信されるようにしてもよい。こうして、図9に示す処理が完了する。
なお、ステップS905からステップS911までの処理、ステップS907からステップS911までの処理、又は、ステップS909からステップS911までの処理が、繰り返し実行されるようにしてもよい。
このように、本実施形態によれば、閾値より大きい数のタイルに分割された画像が伝送される場合には、以下のような第1のモードで伝送が行われる。第1のモードでは、画像を構成する複数のタイルのうちの第1のタイルがチャンネル300aを介して伝送され、第1のタイルとは異なる第2のタイルがチャンネル300bを介して伝送される。閾値より大きい数のタイルが伝送される場合に、このようにして伝送が行われるため、単位時間当たりのインターバル時間の割合が低減される。このため、大きい数のタイルに分割した画像の伝送が可能となる。一方、閾値より大きい数のタイルに分割された画像が伝送されない場合においては、以下のような第2のモードで伝送が行われる。第2のモードにおいて、画像のうちの第1の部分がチャンネル300aを介して伝送され、画像のうちの第1の部分とは異なる第2の部分がチャンネル300bを介して伝送される。このように、本実施形態においても、伝送を良好に行い得る画像処理装置を提供することができる。
[第4実施形態]
第4実施形態による符号化装置、画像処理装置及び画像処理方法について図面を用いて説明する。図1乃至図9に示す第1乃至第3実施形態による画像処理装置及び画像処理方法と同一の構成要素には、同一の符号を付して説明を省略または簡潔にする。
本実施形態による画像処理装置は、単一の画像処理モジュール100が符号化処理モジュール200に接続されているものである。
本実施形態による画像処理装置に備えられている画像処理モジュール100の構成は図1を用いて上述した第1実施形態による画像処理装置に備えられている画像処理モジュール100の構成と同様である。また、本実施形態による画像処理装置に備えられている符号化処理モジュール200の構成は図2を用いて上述した第1実施形態による画像処理装置10に備えられている符号化処理モジュール200の構成と同様である。また、本実施形態による画像処理装置に備えられている符号化処理モジュール200によって行われる処理は、図9を用いて上述した第3実施形態による画像処理装置に備えられている符号化処理モジュール200によって行われる処理と同様である。
本実施形態による画像処理装置に備えられた画像処理モジュール100によって行われる処理の例について図10を用いて説明する。図10は、本実施形態による画像処理装置に備えられた画像処理モジュール100によって行われる処理の例を示すフローチャートである。不揮発性メモリ103に格納されているプログラムがメモリ102に展開され、メモリ102に展開されたプログラムがCPU101によって実行されることによって、図10に示すような処理が実現される。ここでは、図3(b)に示すようなバス構成302又は図3(c)に示すようなバス構成303である場合の動作を例として説明する。
ステップS1001において、CPU101は、画像を記録する際に用いられるパラメータである記録用パラメータを取得する。記録用パラメータは、上述したように、不揮発性メモリ103に予め記録されている。CPU101は、上述したように、記録用パラメータを不揮発性メモリ103から読み出す。記録用パラメータは、具体的には、静止画像を記録する際の解像度等である。記録用パラメータは、操作部104を介してユーザによって予め設定される。この後、ステップS1002に遷移する。
ステップS1002において、CPU101は、画像を分割することにより生成されるタイルの数を算出する。タイルの数は、例えば、画像の画素数をタイルのサイズで除算することによって算出し得る。CPU101は、算出されたタイル数が所定の閾値より大きいか否かを判定する。なお、所定の閾値は、メモリ102に予め記録されている。タイル数が所定の閾値より大きい高い場合には(ステップS1002においてYES)、ステップS1003に遷移する。タイル数が所定の閾値以下である場合には(ステップS1002においてNO)、ステップS1006に遷移する。
ステップS1003において、CPU101は、図7を用いて上述したステップS703と同様に、外部IF制御部114を制御することによって、符号化処理モジュール200との間でバスの接続の確立を行う。ここでは、図3(b)に示すような第1のバス構成302によってバスの接続を確立する場合を例に説明するが、これに限定されるものではない。この後、ステップS1004に遷移する。
ステップS1004において、CPU101は、ステップS1002において算出したタイル数を示す情報を、外部IF制御部114を制御することによって符号化処理モジュール200に通知する。この後、ステップS1005に遷移する。なお、CPU101は、タイル数を示す情報の他に、画像の解像度を示す情報を、符号化処理モジュール200に送信するようにしてもよい。また、記録用パラメータの他に、ステップS1003において確立されたバス構成を示す情報を、符号化処理モジュール200に送信するようにしてもよい。バス構成を示す情報は、上述したように、例えば、第1のバス構成301,302と第2のバス構成303とのうちのいずれであるかを示す情報である。
ステップS1005において、CPU101は、画像を複数に分割することによって、複数のタイルを生成する。当該タイルのサイズは、符号化処理モジュール200によって行われる圧縮符号化におけるタイルのサイズと同等のサイズとする。CPU101は、外部IF制御部114を制御することによって、所定のタイルを符号化処理モジュール200に送信する。CPU101は、タイルの順番を示すタイル番号情報を、送信するタイルに対して付加し、タイル番号情報が付加されたタイルを符号化処理モジュール200に送信する。ここでは、奇数番目のタイルがチャンネル300aを介して伝送され、偶数番目のタイルがチャンネル300bを介して伝送される場合を例に説明する。CPU101は、奇数番目のタイルと偶数番目のタイルとをメモリ102に一時的に記録する。CPU101は、メモリ102から読み出した奇数番目のタイルを、外部IF制御部114を制御することによって、チャンネル300aを介して符号化処理モジュール200に送信する。また、CPU101は、メモリ102から読み出した偶数番目のタイルを、外部IF制御部114を制御することによって、チャンネル300bを介して符号化処理モジュール200に送信する。この後、ステップS1009に遷移する。こうして、奇数番目のタイルと偶数番目のタイルとがチャンネル300a、300bをそれぞれ介して画像処理モジュール100から符号化処理モジュール200にそれぞれ送信される。
ステップS1006において、CPU101は、図7に示すステップS706と同様に、外部IF制御部114を制御することによって、符号化処理モジュール200との間でバスの接続の確立を行う。ここでは、例えば図3(c)に示すような第2のバス構成303によってバスの接続を確立する場合を例に説明するが、これに限定されるものではない。この後、ステップS1007に遷移する。
ステップS1007において、CPU101は、ステップS1004と同様に、ステップS1002において算出したタイル数を示す情報を、外部IF制御部114を制御することによって符号化処理モジュール200に通知する。この後、ステップS1008に遷移する。なお、CPU101は、タイル数を示す情報の他に、画像の解像度を示す情報を、符号化処理モジュール200に送信するようにしてもよい。また、記録用パラメータの他に、ステップS1003において確立されたバス構成を示す情報を、符号化処理モジュール200に送信するようにしてもよい。この後、ステップS1008に遷移する。
ステップS1008において、CPU101は、外部IF制御部114を制御することによって、単一のチャンネル300を介して画像データを送信する。CPU101は、フレームの順番を示すフレーム番号情報を、送信するフレームに対して付加し、フレーム番号情報が付加されたフレームを符号化処理モジュール200に送信する。この後、ステップS1009に遷移する。
ステップS1009において、CPU101は、ステップS709と同様に、符号化処理モジュール200によって符号化されたストリームデータを、外部IF制御部114を制御することによって受信する。この後、ステップS1010に遷移する。
ステップS1010において、CPU101は、ステップS710と同様に、記録媒体制御部119を制御することによって、コンテナ化したストリームデータを記録媒体120に記録する。この後、ステップS1010に遷移する。こうして、図10に示す処理が完了する。
なお、ステップS1005からステップS1010までの処理、又は、ステップS1008からステップS1010までの処理は、繰り返し実行されてもよい。
このように、本実施形態によれば、閾値より大きい数のタイルに分割された画像が伝送される場合には、以下のような第1のモードで伝送が行われる。第1のモードにおいては、画像を構成する複数のタイルのうちの第1のタイルがチャンネル300aを介して伝送され、第1のタイルとは異なる第2のタイルがチャンネル300bを介して伝送される。閾値より大きい数のタイルに分割された画像が伝送される場合に、このようにして伝送が行われるため、単位時間当たりのインターバル時間の割合が低減される。このため、本実施形態によれば、大きい数のタイルに分割した画像の伝送が可能となる。一方、閾値より大きい数のタイルに分割された画像が伝送されない場合には、以下のような第2のモードで伝送が行われる。第2のモードでは、単一のチャンネル300を介して画像が符号化処理モジュール200に伝送される。このように、本実施形態においても、伝送を良好に行い得る画像処理装置を提供することができる。
[変形実施形態]
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
例えば、第1実施形態では、2つの画像処理モジュール100が符号化処理モジュール200に接続されている場合を例に説明したが、これに限定されるものではない。例えば、3つ以上の画像処理モジュール100が符号化処理モジュール200に接続されていてもよい。例えば、画像処理モジュール100の数が4つである場合において、フレーム数が閾値以上である場合には、以下のような伝送が行われる。(4n+1)番目(nは0以上の整数)のフレームは、第1のチャンネルを介して伝送される。(4n+2)番目のフレームは、第2のチャンネルを介して伝送される。(4n+3)番目のフレームは、第3のチャンネルを介して伝送される。(4n+4)番目のフレームは、第4のチャンネルを介して伝送される。
例えば、第3実施形態では、2つの画像処理モジュール100が符号化処理モジュール200に接続されている場合を例に説明したが、これに限定されるものではない。例えば、3つ以上の画像処理モジュール100が符号化処理モジュール200に接続されていてもよい。例えば、画像処理モジュール100の数が4つである場合において、タイル数が閾値以上である場合には、以下のような伝送が行われる。(4n+1)番目(nは0以上の整数)のタイルは、第1のチャンネルを介して伝送される。(4n+2)番目のタイルは、第2のチャンネルを介して伝送される。(4n+3)番目のタイルは、第3のチャンネルを介して伝送される。(4n+4)番目のタイルは、第4のチャンネルを介して伝送される。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記録媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。