(57)【要約】【課題】符号化処理の高速化を図りながら、消費電力の低減および小型化を図る。【解決手段】符号化処理部１２０，１２１，１２２が、領域の境界に接していないマクロブロックに対しては、マクロブロックに隣接するマクロブロックの情報を用いて符号化する第１符号化モードで符号化し、領域の境界に接しているマクロブロックに対しては、当該マクロブロック単体の情報若しくは当該マクロブロックが属する領域内に存在し且つ当該マクロブロックに隣接するマクロブロックの情報を用いて符号化する第２符号化モードで符号化する。【選択図】図２
2012175424.tif 000002
【特許請求の範囲】
【請求項１】
画像データをフレーム毎に、各領域が水平方向にマクロブロック列を３列以上含むように水平方向に並ぶ複数の領域に分割するフレーム分割部と、
領域毎に、領域の境界に接しているマクロブロックを特定する特定部と、
分割される領域の数と同数の符号化処理部を有し、各領域に属するマクロブロック群が領域毎に並行して符号化処理されるように分配供給されて並列的に符号化処理する並列処理系とを備え、
前記並列処理系における各符号化処理部は、前記領域の境界に接していないマクロブロックに対しては、当該マクロブロックに隣接するマクロブロックの情報を用いて符号化する第１符号化モードで符号化し、領域の境界に接しているマクロブロックに対しては、当該マクロブロック単体の情報若しくは当該マクロブロックが属する領域内に存在し且つ当該マクロブロックに隣接するマクロブロックの情報を用い、当該マクロブロックが属さない領域内に存在するマクロブロックの情報を用いずに符号化する第２符号化モードで符号化する
ことを特徴とする符号化処理装置。
【請求項２】
前記特定部は、領域の境界に接するマクロブロックのうち、境界に対して右側から接しているマクロブロックを特定し、
前記各符号化処理部において、前記第１符号化モードでの符号化は、境界に対して右側から接しているマクロブロックを除く、当該領域内のすべてのマクロブロックに対して、当該マクロブロックに隣接するマクロブロックのうち、当該マクロブロックに隣接する周辺のマクロブロックの情報を用いて符号化を行い、前記第２符号化モードでの符号化は、境界に対して右側から接しているマクロブロックに対して行う
ことを特徴とする請求項１記載の符号化処理装置。
【請求項３】
画像データをフレーム毎に、各領域が水平方向にマクロブロック列を３列以上含むように水平方向および垂直方向に並ぶ複数の領域に分割するフレーム分割部と、
領域毎に、領域の境界に接しているマクロブロックを特定する特定部と、
分割される領域の数と同数の符号化処理部を有し、各領域に属するマクロブロック群が領域毎に並行して符号化処理されるように分配供給されて並列的に符号化処理する並列処理系とを備え、
前記並列処理系における符号化処理部は、前記領域の境界に接していないマクロブロックに対しては、当該マクロブロックに隣接するマクロブロックの情報を用いて符号化する第１符号化モードで符号化し、領域の境界に接しているマクロブロックに対しては、当該マクロブロック単体の情報若しくは当該マクロブロックが属する領域内に存在し且つ当該マクロブロックに隣接するマクロブロックの情報を用い、当該マクロブロックが属さない領域内に存在するマクロブロックの情報を用いずに符号化する第２符号化モードで符号化する
ことを特徴とする符号化処理装置。
【請求項４】
前記特定部は、領域の境界に接するマクロブロックのうち、境界に対して右側または下側から接しているマクロブロックを特定し、
前記各符号化処理部において、前記第１符号化モードでの符号化は、境界に対して右側または下側から接しているマクロブロックを除く、当該領域内のすべてのマクロブロックに対して、当該マクロブロックに隣接するマクロブロックのうち、当該マクロブロックに隣接する周辺のマクロブロックの情報を用いて符号化を行い、前記第２符号化モードでの符号化は、境界に対して右側または下側から接しているマクロブロックに対して行う
ことを特徴とする請求項３記載の符号化処理装置。
【請求項５】
前記第２符号化モードは、Ｉ−ＰＣＭ符号化を行うモードである
ことを特徴とする請求項１乃至４のいずれか１項に記載の符号化処理装置。
【請求項６】
前記第２符号化モードは、ｎｏｔ＿ｃｏｄｅｄ符号化を行うモードである
ことを特徴とする請求項１乃至４のいずれか１項に記載の符号化処理装置。
【請求項７】
アナログ画像信号をデジタル画像信号に変換して出力するアナログ・デジタル変換器と、
前記アナログ・デジタル変換器から出力されるデジタル画像信号を符号化して出力する請求項１乃至６のいずれか１項に記載の符号化処理装置とを備える
ことを特徴とする信号処理システム。
【請求項８】
被写体像を生成する光学系からなる光学ユニットと、
前記光学ユニットで生成された被写体像をアナログ画像信号に変換して出力するセンサと、
前記センサから出力された前記アナログ画像信号から符号化されたデジタル画像信号を出力する請求項７に記載の信号処理システムとを備える
ことを特徴とする撮像システム。
【請求項９】
フレーム分割部と特定部と並列処理系とを備える符号化処理装置を用いて行う符号化処理方法であって、
前記フレーム分割部が、画像データをフレーム毎に、各領域が水平方向にマクロブロック列を３列以上含むように水平方向に並ぶ複数の領域に分割するフレーム分割ステップと、
前記特定部が、領域毎に、領域の境界に接しているマクロブロックを特定する特定ステップと、
前記並列処理系が、分割される領域の数と同数の符号化処理部に各領域に属するマクロブロック群が領域毎に並行して符号化処理されるように分配供給されると、並列的に符号化処理する並列処理ステップとを含み、
前記並列処理ステップでは、前記領域の境界に接していないマクロブロックに対して、前記符号化処理部が、当該マクロブロックに隣接するマクロブロックの情報を用いて符号化する第１符号化ステップと、領域の境界に接しているマクロブロックに対して、前記符号化処理部が、当該マクロブロック単体の情報若しくは当該マクロブロックが属する領域内に存在し且つ当該マクロブロックに隣接するマクロブロックの情報を用い、当該マクロブロックが属さない領域内に存在するマクロブロックの情報を用いずに符号化する第２符号化ステップとを含む
ことを特徴とする符号化処理方法。
【請求項１０】
前記特定ステップでは、前記特定部が、境界に接するマクロブロックのうち、境界に対して右側から接しているマクロブロックを特定し、
前記並列処理ステップでは、前記各符号化処理部において、前記第１符号化モードでの符号化を、境界に対して右側から接しているマクロブロックを除く、当該領域内のすべてのマクロブロックに対して、当該マクロブロックに隣接するマクロブロックのうち、当該マクロブロックに隣接する周辺のマクロブロックの情報を用いて符号化を行う第１符号化ステップと、前記第２符号化モードでの符号化を、境界に対して右側から接しているマクロブロックに対して行う第２符号化ステップとを含む
ことを特徴とする請求項９記載の符号化処理方法。
【請求項１１】
フレーム分割部と特定部と並列処理系とを備える符号化処理装置を用いて行う符号化処理方法であって、
前記フレーム分割部が、画像データをフレーム毎に、各領域が整数個のマクロブロックを含むように水平方向および垂直方向に並ぶ複数の領域に分割するフレーム分割ステップと、
前記特定部が、領域毎に、領域の境界に接しているマクロブロックを特定する特定ステップと、
前記並列処理系が、分割される領域の数と同数の符号化処理部に各領域に属するマクロブロック群が領域毎に並行して符号化処理されるように分配供給されると、並列的に符号化処理する並列処理ステップとを含み、
前記並列処理ステップでは、前記領域の境界に接していないマクロブロックに対して、前記符号化処理部が、当該マクロブロックに隣接するマクロブロックの情報を用いて符号化する第１符号化ステップと、領域の境界に接しているマクロブロックに対して、前記符号化処理部が、当該マクロブロック単体の情報若しくは当該マクロブロックが属する領域内に存在し且つ当該マクロブロックに隣接するマクロブロックの情報を用い、当該マクロブロックが属さない領域内に存在するマクロブロックの情報を用いずに符号化する第２符号化ステップとを含む
ことを特徴とする符号化処理方法。
【請求項１２】
前記特定ステップでは、前記特定部が、境界に接するマクロブロックのうち、境界に対して右側または下側から接しているマクロブロックを特定し、
前記並列処理ステップでは、前記各符号化処理部において、前記第１符号化モードでの符号化を、境界に対して右側または下側から接しているマクロブロックを除く、当該領域内のすべてのマクロブロックに対して、当該マクロブロックに隣接するマクロブロックのうち、当該マクロブロックに隣接する周辺のマクロブロックの情報を用いて符号化を行う第１符号化ステップと、前記第２符号化モードでの符号化を、境界に対して右側または下側から接しているマクロブロックに対して行う第２符号化ステップとを含む
ことを特徴とする請求項１１記載の符号化処理方法。
【請求項１３】
前記第２符号化ステップは、Ｉ−ＰＣＭ符号化を行う
ことを特徴とする請求項９乃至１２のいずれか１項に記載の符号化処理方法。
【請求項１４】
前記第２符号化ステップは、ｎｏｔ＿ｃｏｄｅｄ符号化を行う
ことを特徴とする請求項９乃至１２のいずれか１項に記載の符号化処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ムービー、デジタルカメラ、カメラ付き携帯電話等の動画撮影機能を持つ機器や、画像コンテンツ作成機器における動画像圧縮符号化処理に関するものである。
【背景技術】
【０００２】
近年、高能率符号化を行うＭＰＥＧ（ｍｏｖｉｎｇ  ｐｉｃｔｕｒｅ  ｅｘｐｅｒｔｓ  ｇｒｏｕｐ）等の動画像圧縮符号化技術の実用化が急速に進み、ビデオカメラや携帯電話等に普及している。また、その符号化解像度およびフレームレートについても高性能化が進み、フルハイビジョンと呼ばれる水平画素数１９２０、垂直画素数１０８８、６０ｆｐｓ（ｆｒａｍｅ  ｐｅｒ  ｓｅｃｏｎｄ）といった高解像度動画も主流になってきている。今後は、水平画素数が４０００前後、垂直画素数が２０００前後の４Ｋ２Ｋ、更には、水平画素数が８０００前後、垂直画素数が４０００前後の８Ｋ４Ｋといった更なる高解像度へ移っていくことが予想される。そして、高解像度化や高フレームレート化が進むについて、処理を高速に実現する必要がある。
【０００３】
これに対して、従来、符号化処理回路を複数備え、フレームを符号化処理回路の数と同じ数の領域に分割し、各領域での符号化処理を各別の符号化処理回路が担当することにより、高速で符号化処理を行う画像符号化装置が提案されている（特許文献１参照）。
【０００４】
この画像符号化装置は、図１７に示すように、例えば、第１領域および第２領域に分けて処理を行う場合、第１領域では、マクロブロック１＿１、１＿２、１＿３、・・・の順に処理が行われ、それと同時に第２領域では、マクロブロック２＿１、２＿２、２＿３、・・・の順で処理が行われることになる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第３６３９６１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、ＭＰＥＧ−４ＡＶＣ／Ｈ．２６４の符号化方式では、例えば、Ｂピクチャを構成するマクロブロックの画素値データ（Ｂピクチャの場合、フレーム間予測誤差に対応する画素値データ）を符号化する符号化処理を行うとき、当該マクロブロックに隣接するマクロブロックの動きベクトルの情報を用いて符号化処理を行う。例えば、図１７のマクロブロック２＿１の予測誤差データを符号化する際、マクロブロック２＿１に隣接するマクロブロック１＿ｎ、２＿２および２＿ｎ＋１の動きベクトルの情報が必要になる。すると、マクロブロック２＿１について符号化処理をする時点で、マクロブロック１＿ｎ、２＿２および２＿ｎ＋１について符号化処理が既に完了しており、マクロブロック１＿ｎ、２＿２および２＿ｎ＋１についての動きベクトルの情報が準備されている必要がある。また、動き探索の参照画像を生成する過程では、互いに隣接するマクロブロックの画素値データ等を用いてデブロックフィルタ処理を実行しブロックノイズを除去する。例えば、図１７のマクロブロック２＿１について参照画像を生成する際、マクロブロック１＿ｎの画素値データ等が必要になる。
【０００７】
従って、特許文献１に記載された符号化処理装置を用いた場合、マクロブロック１＿ｎの動きベクトルの情報或いは画素値データが生成されるまで、マクロブロック２＿１の情報の符号化処理が待たされることになる。
【０００８】
また、特許文献１に記載された符号化処理装置では、前述のように、１の領域に属するマクロブロックの情報を他の領域に属するマクロブロックの符号化に使用するため、１の領域に属するマクロブロックの情報を、他の領域に属するマクロブロックの符号化を行うまで保持しておくためのバッファメモリが余分に必要となっていた。
【０００９】
本発明は、上記事由に鑑みてなされたものであり、符号化処理の高速化を図りながら、マクロブロックの情報を保持しておくためのバッファメモリの容量を削減することによる消費電力の低減および小型化を図ることにある。
【課題を解決するための手段】
【００１０】
本発明に係る符号化処理装置は、画像データをフレーム毎に、各領域が水平方向にマクロブロック列を３列以上含むように水平方向に並ぶ複数の領域に分割するフレーム分割部と、領域毎に、領域の境界に接しているマクロブロックを特定する特定部と、分割される領域の数と同数の符号化処理部を有し、各領域に属するマクロブロック群が領域毎に並行して符号化処理されるように分配供給されて並列的に符号化処理する並列処理系とを備え、並列処理系における各符号化処理部は、領域の境界に接していないマクロブロックに対しては、当該マクロブロックに隣接するマクロブロックの情報を用いて符号化する第１符号化モードで符号化し、領域の境界に接しているマクロブロックに対しては、当該マクロブロック単体の情報若しくは当該マクロブロックが属する領域内に存在し且つ当該マクロブロックに隣接するマクロブロックの情報を用い、当該マクロブロックが属さない領域内に存在するマクロブロックの情報を用いずに符号化する第２符号化モードで符号化する。
【発明の効果】
【００１１】
本構成によれば、複数領域に分割して処理を行う場合において、符号化処理の対象となるマクロブロックが領域の境界に接する場合、符号化処理の対象のマクロブロック単体の情報または当該マクロブロックが属する領域内に存在し且つ当該マクロブロックに隣接するマクロブロックの情報を用いて符号化することにより、複数の領域それぞれの符号化の際、他の領域のマクロブロックの情報が生成されるのを待つ必要がなくなるので、複数の領域で同時に並列して符号化処理を行うことができるから、符号化処理の高速化を図ることができる。
【００１２】
また、本構成によれば、複数の領域それぞれの符号化の際、他の領域のマクロブロックの情報を用いる必要がないので、他の領域の符号化処理で用いられるマクロブロックの情報を保持しておくためのバッファメモリが不要となるから、バッファメモリの駆動に要する消費電力の低減およびバッファメモリ用のスペース削減による小型化を図ることができる。
【００１３】
また、本発明に係る符号化処理装置は、特定部が、領域の境界に接するマクロブロックのうち、境界に対して右側から接しているマクロブロックを特定し、各符号化処理部において、第１符号化モードでの符号化では、境界に対して右側から接しているマクロブロックを除く、当該領域内のすべてのマクロブロックに対して、当該マクロブロックに隣接するマクロブロックのうち、当該マクロブロックに隣接する周辺のマクロブロックの情報を用いて符号化を行い、第２符号化モードでの符号化では、境界に対して右側から接しているマクロブロックに対して行うものであってもよい。
【００１４】
本構成によれば、複数領域に分割して処理を行う場合においても、他の領域の情報を使用せずに各々の領域内に存在するマクロブロックの情報を用いて符号化処理を実行することができるため、複数の領域を並列に処理をさせることができる。更に、各フレームを符号化した際の符号量を低減することができる。
【００１５】
また、本発明に係る符号化処理装置は、画像データをフレーム毎に、各領域が水平方向にマクロブロック列を３列以上含むように水平方向および垂直方向に並ぶ複数の領域に分割するフレーム分割部と、領域毎に、領域の境界に接しているマクロブロックを特定する特定部と、分割される領域の数と同数の符号化処理部を有し、各領域に属するマクロブロック群が領域毎に並行して符号化処理されるように分配供給されて並列的に符号化処理する並列処理系とを備え、並列処理系における符号化処理部は、領域の境界に接していないマクロブロックに対しては、当該マクロブロックに隣接するマクロブロックの情報を用いて符号化する第１符号化モードで符号化し、領域の境界に接しているマクロブロックに対しては、当該マクロブロック単体の情報若しくは当該マクロブロックが属する領域内に存在し且つ当該マクロブロックに隣接するマクロブロックの情報を用い、当該マクロブロックが属さない領域内に存在するマクロブロックの情報を用いずに符号化する第２符号化モードで符号化するものであってもよい。
【００１６】
本構成によれば、並列して符号化処理を行う領域を細分化することで、処理能力を更に向上させることができる。
また、本発明に係る符号化処理装置は、特定部が、領域の境界に接するマクロブロックのうち、境界に対して右側または下側から接しているマクロブロックを特定し、各符号化処理部において、第１符号化モードでの符号化では、境界に対して右側または下側から接しているマクロブロックを除く、当該領域内のすべてのマクロブロックに対して、当該マクロブロックに隣接するマクロブロックのうち、当該マクロブロックに隣接する周辺のマクロブロックの情報を用いて符号化を行い、第２符号化モードでの符号化では、境界に対して右側または下側から接しているマクロブロックに対して行うものであってもよい。
【００１７】
本構成によれば、処理能力を更に向上させながらも、各フレームを符号化した際の符号量を低減することができる。
また、本発明に係る符号化処理装置は、第２符号化モードが、Ｉ−ＰＣＭ符号化を行うモードであってもよい。
【００１８】
また、本発明に係る符号化処理装置は、第２符号化モードが、ｎｏｔ＿ｃｏｄｅｄ符号化を行うモードであってもよい。
また、本発明は、アナログ画像信号をデジタル画像信号に変換して出力するアナログ・デジタル変換器と、アナログ・デジタル変換器から出力されるデジタル画像信号を符号化して出力する前述に記載の符号化処理装置とを備える信号処理システムであってもよい。
【００１９】
本構成によれば、処理能力が高く、且つ、アナログ画像信号を出力する装置に対して広く適用可能な信号処理システムを実現することができる。
また、本発明は、被写体像を生成する光学系からなる光学ユニットと、光学ユニットで生成された被写体像をアナログ画像信号に変換して出力するセンサと、センサから出力されたアナログ画像信号から符号化されたデジタル画像信号を出力する前述に記載の信号処理システムとを備える映像システムであってもよい。
【００２０】
本構成によれば、アナログ画像信号を高速に処理することにより、符号化に要する時間の短縮を図ることができるので、低消費電力の映像システムを実現することができる。
また、本発明は、フレーム分割部と特定部と並列処理系とを備える符号化処理装置を用いて行う符号化処理方法であって、フレーム分割部が、画像データをフレーム毎に、各領域が水平方向にマクロブロック列を３列以上含むように水平方向に並ぶ複数の領域に分割するフレーム分割ステップと、特定部が、領域毎に、領域の境界に接しているマクロブロックを特定する特定ステップと、並列処理系が、分割される領域の数と同数の符号化処理部に各領域に属するマクロブロック群が領域毎に並行して符号化処理されるように分配供給されると、並列的に符号化処理する並列処理ステップとを含み、並列処理ステップでは、領域の境界に接していないマクロブロックに対して、符号化処理部が、当該マクロブロックに隣接するマクロブロックの情報を用いて符号化する第１符号化ステップと、領域の境界に接しているマクロブロックに対して、符号化処理部が、当該マクロブロック単体の情報若しくは当該マクロブロックが属する領域内に存在し且つ当該マクロブロックに隣接するマクロブロックの情報を用い、当該マクロブロックが属さない領域内に存在するマクロブロックの情報を用いずに符号化する第２符号化ステップとを含む符号化処理方法であってもよい。
【００２１】
本構成によれば、複数領域に分割して処理を行う場合において、符号化処理の対象となるマクロブロックが領域の境界に接する場合、符号化処理の対象となるマクロブロック単体の情報または当該マクロブロックが属する領域内に存在し且つ当該マクロブロックに隣接するマクロブロックの情報を用いて符号化することにより、複数の領域それぞれの符号化の際、他の領域のマクロブロックの情報が生成されるのを待つ必要がなくなるので、複数の領域で同時に並列して符号化処理を行うことができる。
【００２２】
また、本発明は、特定ステップでは、特定部が、境界に接するマクロブロックのうち、境界に対して右側から接しているマクロブロックを特定し、並列処理ステップでは、各符号化処理部において、第１符号化モードでの符号化を、境界に対して右側から接しているマクロブロックを除く、当該領域内のすべてのマクロブロックに対して、当該マクロブロックに隣接するマクロブロックのうち、当該マクロブロックに隣接する周辺のマクロブロックの情報を用いて符号化を行う第１符号化ステップと、第２符号化モードでの符号化を、境界に対して右側から接しているマクロブロックに対して行う第２符号化ステップとを含む符号化処理方法であってもよい。
【００２３】
本構成によれば、複数領域に分割して処理を行う場合においても、他の領域の情報を使用せずに各々の領域内に存在するマクロブロックの情報を用いて符号化処理を実行することができるため、複数の領域を並列に処理をさせることができる。更に、各フレームを符号化した際の符号量を低減することができる。
【００２４】
また、本発明は、フレーム分割部と特定部と並列処理系とを備える符号化処理装置を用いて行う符号化処理方法であって、フレーム分割部が、画像データをフレーム毎に、各領域が整数個のマクロブロックを含むように水平方向および垂直方向に並ぶ複数の領域に分割するフレーム分割ステップと、特定部が、領域毎に、領域の境界に接しているマクロブロックを特定する特定ステップと、並列処理系が、分割される領域の数と同数の符号化処理部に各領域に属するマクロブロック群が領域毎に並行して符号化処理されるように分配供給されると、並列的に符号化処理する並列処理ステップとを含み、並列処理ステップでは、領域の境界に接していないマクロブロックに対して、符号化処理部が、当該マクロブロックに隣接するマクロブロックの情報を用いて符号化する第１符号化ステップと、領域の境界に接しているマクロブロックに対して、符号化処理部が、当該マクロブロック単体の情報若しくは当該マクロブロックが属する領域内に存在し且つ当該マクロブロックに隣接するマクロブロックの情報を用い、当該マクロブロックが属さない領域内に存在するマクロブロックの情報を用いずに符号化する第２符号化ステップとを含む符号化処理方法であってもよい。
【００２５】
本構成によれば、並列して符号化処理を行う領域を細分化することで、処理能力を更に向上させることができる。
また、本発明は、特定ステップでは、特定部が、境界に接するマクロブロックのうち、境界に対して右側または下側から接しているマクロブロックを特定し、並列処理ステップでは、各符号化処理部において、第１符号化モードでの符号化を、境界に対して右側または下側から接しているマクロブロックを除く、当該領域内のすべてのマクロブロックに対して、当該マクロブロックに隣接するマクロブロックのうち、当該マクロブロックに隣接する周辺のマクロブロックの情報を用いて符号化を行う第１符号化ステップと、第２符号化モードでの符号化を、境界に対して右側または下側から接しているマクロブロックに対して行う第２符号化ステップとを含む符号化処理方法であってもよい。
【００２６】
本構成によれば、処理能力を更に向上させながらも、各フレームを符号化した際の符号量を低減することができる。
また、本発明は、第２符号化ステップにおいて、Ｉ−ＰＣＭ符号化を行う符号化処理方法であってもよい。
【００２７】
また、本発明は、第２符号化ステップにおいて、ｎｏｔ＿ｃｏｄｅｄ符号化を行う符号化処理方法であってもよい。
【図面の簡単な説明】
【００２８】
【図１】実施の形態１に係る符号化処理装置の動作説明図である
【図２】実施の形態１に係る符号化処理装置の構成図である。
【図３】実施の形態１に係る符号化処理部の構成図である。
【図４】実施の形態１に係る符号化処理部の動作説明図である。
【図５】実施の形態１に係る符号化処理部の動作説明図である。
【図６】実施の形態１に係る符号化処理部の動作説明図である。
【図７】実施の形態１に係る符号化モード制御部の動作を示すフローチャートである。
【図８】実施の形態１に係る符号化処理部の動作を示すフローチャートである。
【図９】実施の形態１に係る符号化処理装置の動作説明図である。
【図１０】実施の形態２に係る符号化処理部の構成図である。
【図１１】実施の形態３に係る撮像システムの構成図である。
【図１２】変形例に係る符号化処理装置の構成図である。
【図１３】変形例に係る符号化処理装置の動作説明図である。
【図１４】変形例に係る符号化処理装置の動作説明図である。
【図１５】変形例に係る符号化処理装置の動作説明図である。
【図１６】変形例に係る符号化処理装置の動作説明図である。
【図１７】従来例の動作説明図である。
【発明を実施するための形態】
【００２９】
＜実施の形態１＞
＜１＞概要
本実施の形態に係る符号化処理装置は、画像データをマクロブロック単位で符号化する符号化処理部を３つ備えており、図１に示すように、画像データをフレーム毎に、整数個のマクロブロックを含むように３つの領域（第１領域、第２領域および第３領域）に分割し、各符号化処理部それぞれが各領域の符号化処理を担当する。
【００３０】
ここにおいて、各符号化処理部が、符号化処理に際して、自己が担当する領域に属するマクロブロックの情報（例えば、マクロブロックの符号化タイプを示す情報や動きベクトルの情報、画素値データ）のみを用いて符号化処理を行い、他の領域に属するこれらの情報を用いない。これにより、各符号化処理部が、他の領域に属する情報が生成されているか否かに関わらず（つまり、他の領域に属する情報が生成されるまで符号化処理を待たされることなく）、符号化処理を進めることができるので、各符号化処理部が同時に並列して各領域の符号化処理を実行できるから、符号化処理の高速化を図ることができる。。
＜２＞構成
＜２−１＞全体構成
本実施の形態に係る符号化処理装置１００の構成を図２に示す。図２のように、符号化処理装置１００は、フレーム分割部１１０と、符号化モード制御部１１１と、３つの符号化処理部１２０，１２１，１２３と、符号データ記憶部１３０と、符号データ並替部１３１とから構成されている。
【００３１】
この符号化処理装置１００には、例えば、デジタルスチルカメラ等（図示せず）から出力されるアナログ画像信号をアナログ・デジタル変換して得られるデジタル画像信号が入力される（図２の矢印Ａ１）。
【００３２】
フレーム分割部１１０は、画像データをフレーム毎に、各領域が整数個のマクロブロックを含むように水平方向に分割するとともに、各マクロブロックがいずれの領域に属するかを示す情報を出力する。ここで、フレーム分割部１１０は、マクロブロックライン毎に、マクロブロックの順番（マクロブロックラインの左端から何番目に位置するか）を算出し、当該マクロブロックの順番を示すデータをマクロブロック位置管理部１１２に入力する（図２の矢印Ａ１０）。このとき、フレーム分割部１１０は、当該マクロブロックが属するマクロブロックラインを示す情報もマクロブロック位置管理部１１２に入力する。また、マクロブロック位置管理部１１２には、予め各領域の左端に位置するマクロブロックの順番を示すデータが記憶されている。ここで、入力されるデジタル画像信号が示す画像データの１フレームの大きさと、３つの領域の大きさとが固定されているので、各領域の左端に位置するマクロブロックの順番は固定値としてマクロブロック位置管理部１１２で管理されている。そして、フレーム分割部１１０は、判定する対象となるマクロブロックの順番と、マクロブロック位置管理部１１２から取得した各領域の左端に位置するマクロブロックの順番とを比較することにより、各マクロブロックが属する領域を判定する。
【００３３】
例えば、図２に示す例では、マクロブロックライン１について、第１領域に属するマクロブロック１＿１の順番が「１」、第２領域の左端に位置するマクロブロック２＿１の順番が「ｎ＋１」、第３領域の左端に位置するマクロブロック３＿１の順番が「２ｎ＋１」となる。そして、フレーム分割部１１０は、各マクロブロックの順番を示す数値と、各領域の左端に位置するマクロブロックの順番を示す数値との大小関係から、各マクロブロックが属する領域を判定する。即ち、マクロブロックの順番が、「１」番目から「ｎ」番目までの間である場合には、第１領域に属すると判定し、「ｎ＋１」番目から「２ｎ」番目の間である場合には、第２領域に属すると判定し、「２ｎ＋１」番目から「３ｎ」番目の間である場合には、第３領域に属すると判定する。
【００３４】
そして、フレーム分割部１１０は、判定した結果に基づいて、各マクロブロックを３つの符号化処理部１２０，１２１，１２２に振り分ける（図２の矢印Ａ２，Ａ３，Ａ４）。ここで、第１領域に属するマクロブロックを符号化処理部１２０に振り分け、第２領域に属するマクロブロックを符号化処理部１２１に振り分け、第３領域に属するマクロブロックを符号化処理部１２２に分配供給する。
【００３５】
その後、これらの処理をマクロブロックライン２乃至マクロブロックラインｍについて行うことにより、１フレームを構成するマクロブロックを３つの符号化処理部１２０，１２１，１２２に分配供給する。
【００３６】
符号化モード制御部（特定部）１１１は、フレーム分割部１１０から出力される情報、つまり、各マクロブロックが第１領域乃至第３領域のいずれに属するかを示す情報を用いて、領域毎に、領域の境界に接しているマクロブロックを特定する。そして、符号化処理部１２０，１２１，１２２は、領域の境界に接しないマクロブロックを通常の符号化方法で符号化を行う第１符号化モード（以下、「通常符号化モード」と称す）で処理し、符号化モード制御部１１１により特定された、領域の境界に接しているマクロブロックについては当該マクロブロック単体の情報を用いて符号化を行う第２符号化モード（以下、「領域内符号化モード」と称す。）で処理を行う。ここにおいて、符号化モード制御部１１１は、符号化対象のマクロブロックが領域境界に接しない場合には、符号化処理部１２０，１２１，１２２を通常符号化モードに設定し、符号化対象のマクロブロックが領域境界に接する場合には、符号化処理部１２０，１２１，１２２を領域内符号化モードに設定する。
【００３７】
また、符号化モード制御部１１１は、マクロブロック位置管理部１１２からマクロブロックの順番を示すデータと、各領域の左端に位置するマクロブロックの順番を示すデータとを取得し（図１の矢印Ａ１２）、これらのデータに基づいて、領域の境界に接するマクロブロックを特定する。そして、符号化モード制御部１１１は、符号化処理部１２０，１２１，１２２を通常符号化モードに設定する場合、各符号化処理部１２０、１２１、１２２に設けられた後述のＭＢタイプ制御部９９０に通常符号化モードで符号化処理を行う指示を内容とする符号化モード信号を入力する。一方、符号化処理部１２０，１２１，１２２を領域内符号化モードに設定する場合、ＭＢタイプ制御部９９０に領域内符号化モードで符号化処理を行う指示を内容とする符号化モード信号を入力する。
【００３８】
ここにおいて、符号化処理部１２０に対しては、マクロブロックの順番が、１番目から「ｎ−１」番目までの間である場合には、通常符号化モードに設定し、「ｎ」番目である場合には、領域内符号化モードに設定する。符号化処理部１２１に対しては、マクロブロックの順番が、「ｎ＋２」番目から「２ｎ−１」番目の間である場合には、通常符号化モードに設定し、「ｎ＋１」番目および「２ｎ」番目である場合には、領域内符号化モードに設定する。符号化処理部１２２に対しては、マクロブロックの順番が、「２ｎ＋２」番目から「３ｎ」番目の間である場合には、通常符号化モードに設定し、「２ｎ＋１」番目である場合には、領域内符号化モードに設定する。
【００３９】
符号化処理部１２０，１２１，１２２は、符号化モード制御部１１１から入力される符号化モード信号に基づいて、通常符号化モードまたは領域内符号化モードのいずれかにより符号化処理を行う。つまり、符号化処理部１２０，１２１，１２２は、分割される領域の数（３領域）と同数であって、各領域に属するマクロブロック群が領域毎に並行して符号化処理されるように分配供給されると、並列的に符号化処理する並列処理系を構成する。そして、各符号化処理部１２０，１２１，１２２は、符号化処理で得られた符号データを符号データ記憶部１３０に書き込む（図２の矢印Ａ５，Ａ６，Ａ７）。なお、符号化処理部１２０，１２１，１２２の構成の詳細は後述する。
【００４０】
符号データ並替部１３１は、符号データ記憶部１３０から、符号データを取得し（図２の矢印Ａ８）、ＭＰＥＧ−４ＡＶＣ／Ｈ．２６４符号化方式の並び順に並び変えて結合し、出力する（図２の矢印Ａ９）。このＭＰＥＧ−４ＡＶＣ／Ｈ．２６４符号化方式の並び順は、最上段のマクロブロックライン（図１のマクロブロックライン１）の左端のマクロブロックを先頭として、各マクロブロックラインの右側に位置するマクロブロックほど、および、下段に位置するマクロブロックほど後になる順番となっている。図１に示す例では、第１領域の１ライン目、第２領域の１ライン目、第３領域の１ライン目、第１領域の２ライン目、第２領域の２ライン目、第３領域の２ライン目、第１領域の３ライン目・・・の順番になる。つまり、第１領域のｋ（ｋは自然数）ライン目、第２領域のｋライン目、第３領域のｋライン目に属するマクロブロックによりマクロブロックラインｋが構成されている。この場合、符号データ並替部１３１は、第１領域の１ライン目の符号データの後に、第２領域の１ライン目の符号データを結合し、その後に第３領域の１ライン目の符号データを結合するという処理を繰り返すことになる。
＜２−２＞符号化処理部
符号化処理部１２０，１２１，１２２の構成を図３に示す。
【００４１】
図３に示すように、フレーム分割部１１０からスイッチ９２１およびＭＢタイプ制御部９９０にフレームタイプ信号が送られる。このフレームタイプ信号は、符号化処理部１２０，１２１，１２２に入力される画像データがＩピクチャ、ＰピクチャおよびＢピクチャのいずれであるかを示す信号であり、フレーム分割部１１０がデジタル画像信号から抽出する。
【００４２】
スイッチ９２１は、フレームタイプ信号が入力されると、フレームタイプ信号の種類に応じて切替え動作を行う。ここで、スイッチ９２１は、フレームタイプ信号がＩピクチャを示すときはオフ状態に切り替わり、フレームタイプ信号がＰピクチャまたはＢピクチャを示すときはオン状態となる。
【００４３】
ＭＢタイプ制御部９９０は、フレームタイプ信号、後述の動き探索・補償部９０９から入力される評価関数（後述の［数１］参照）の最小値データに基づき、スイッチ９２２のオンオフ制御を行う。ここで、ＭＢタイプ制御部９２０は、フレームタイプ信号がＩピクチャを示すとき、スイッチ９２２をオフ状態に切り替えるとともに、可変長符号化部９０４に、フレーム内相関を利用した符号化（以下、Ｉｎｔｒａ符号化）を示す符号化タイプ信号を入力する。
【００４４】
また、ＭＢタイプ制御部９９０は、評価関数の最小値に対する閾値（以下、「評価関数閾値」と称す。）を保持している。そして、ＭＢタイプ制御部９９０は、フレームタイプ信号がＰピクチャまたはＢピクチャを示すとき、評価関数の最小値と評価関数閾値との大小関係に応じて、Ｉｎｔｒａ符号化を行うか、或いは、フレーム間相関を利用した符号化（以下、Ｉｎｔｅｒ符号化と称す。）を行うかを決定する。Ｉｎｔｒａ符号化に決定したときは、ＭＢタイプ制御部９９０は、スイッチ９２２をオフ状態に切り替えるとともに、可変長符号化部９０４にＩｎｔｒａ符号化を示す符号化タイプ信号を入力する。また、Ｉｎｔｅｒ符号化に決定したときは、ＭＢタイプ制御部９９０は、スイッチ９２２をオン状態に切り替えるとともに、可変長符号化部９０４にＩｎｔｅｒ符号化を示す符号化タイプ信号を入力する。
【００４５】
更に、ＭＢタイプ制御部９２０は、量子化処理部９０３から入力される信号と、符号化モード制御部１１１から入力される符号化モード信号とに基づき、Ｉ−ＰＣＭ符号化を行うか否かを決定する。Ｉ−ＰＣＭ符号化に決定したときは、ＭＢタイプ制御部９９０は、可変長符号化部９０４にＩ−ＰＣＭ符号化を示す符号化タイプ信号を入力する。
【００４６】
セレクタ９３０は、ＭＢタイプ制御部９２０がＩ−ＰＣＭ符号化に決定した場合、画像データをそのまま可変長符号化部９０４に入力し、それ以外の場合、量子化処理部９０３から出力される信号を可変長符号化部９０４に入力する。
【００４７】
セレクタ９３１は、ＭＢタイプ制御部９２０がＩ−ＰＣＭ符号化に決定した場合、画像データをそのままデブロックフィルタ処理部９１１に入力し、それ以外の場合、加算器９１０から出力される信号をデブロックフィルタ処理部９１１に入力する。
【００４８】
レート制御部９２３は、可変長符号化部９０４から出力される符号データの大きさ（以下、「符号量」と称す。）を監視しており、符号量の大きさに応じて、量子化処理部９０３で用いる量子化パラメータを決定する。
【００４９】
減算器９０１は、フレーム分割部１１０から入力される画像データと、動き探索・補償部９０９から入力される画像データとの差分を計算して得られる差分画像データ（フレーム間予測誤差に対応する画素値データの集合）をＤＣＴ処理部９０２に入力する。
【００５０】
ＤＣＴ処理部９０２は、減算器９０１から入力される差分画像データに対して離散型コサイン変換またはアダマール変換を行って得られる画像データを量子化処理部９０３に入力する。
【００５１】
量子化処理部９０３は、ＤＣＴ処理部９０２から入力される画像データを量子化してセレクタ９３０に入力する。
逆量子化処理部９０６は、量子化処理部９０３から入力される画像データを逆量子化する。
【００５２】
逆ＤＣＴ処理部９０７は、逆量子化処理部９０６から入力される画像データに対して逆直交変換して加算器９１０に入力する。
加算器９１０は、逆ＤＣＴ処理部９０７から入力される画像データと、動き探索・補償部９０９から入力される動き補償画像データとを加算して得られる画像データをセレクタ９３１に入力する。
【００５３】
デブロックフィルタ処理部９１１では、セレクタ９３１から入力される画像データに対してブロックノイズを除去する処理を行い、処理後の画像データを一時データ記憶手段９０８に格納する。
【００５４】
可変長符号化部９０４は、量子化処理部９０３からセレクタ９０３を介して入力される画像データと、ＭＢタイプ制御部９９０から入力される符号化タイプ信号と、動き探索・補償部９０９から入力される動きベクトルの情報とを符号化する。ここにおいて、可変長符号化部９０４は、符号化タイプ信号がＩ−ＰＣＭ符号化を示す場合、動きベクトルの情報を符号化しない。
【００５５】
動き探索・補償部９０９は、一般的な動き探索手法の一つであるブロックマッチング法を用いて動きベクトルの探索（以下、「動き探索」と称す。）を行う。このブロックマッチング法では、符号化処理の対象となるマクロブロック（以下、「対象マクロブロック」と称す。）と同じ位置にあるマクロブロックの画素値データと当該マクロブロックの近傍の領域の画素値データとから構成される領域（以下、「参照領域」と称す。）内で、対象マクロブロックと同じ大きさの領域（以下、「参照マクロブロック」と称す。）であって対象マクロブロックと最もマッチングする参照マクロブロックの位置を特定する。
【００５６】
ここにおいて、動き探索・補償部９０９は、対象マクロブロックと参照マクロブロックとのマッチングの判定は、各ブロックを構成する画素が有する画素値の差分の絶対値の和として表される評価関数（［数１］参照）が最小値をとるか否かにより行う。
【００５７】
【数１】
2012175424.tif 000003
ここで、Ｒｅｆ（Ｍｘ＋ｘ，Ｍｙ＋ｙ）は、対象マクロブロックに対して（Ｍｘ，Ｍｙ）だけ離間した位置にある参照マクロブロック内における位置（Ｍｘ＋ｘ，Ｍｙ＋ｙ）での画素値を示し、Ｏｒｇ（ｘ，ｙ）は、対象マクロブロック内における位置（ｘ，ｙ）での画素値を表わす。
【００５８】
そして、動き探索・補償部９０９は、対象マクロブロックと、当該対象マクロブロックと最もマッチングがとれている参照マクロブロックの位置との間の距離、および当該対象マクロブロックから見た参照マクロブロックの方向により特定されるベクトルを動きベクトルとして検出する。そして、動き探索・補償部９０９は、検出した動きベクトルの情報を可変長符号化部９０４に入力する。
【００５９】
また、動き探索・補償部９０９は、この評価関数が最小値となる参照マクロブロックを動き補償画像データとして、スイッチ９２２に出力するとともに、評価関数の最小値を示すデータをＭＢタイプ制御部９２０に入力する。
【００６０】
ところで、この動き探索・補償部９０９では、参照領域を構成する画素値データの集合を一時データ記憶手段９０８から読み出して、参照参照画像記憶手段９６１に格納する。この参照領域は、例えば、図４に示すように、符号化処理の対象となるマクロブロックの大きさ（横ＮＸ画素×縦ＮＹ画素）よりも大きい横ＭＸ画素×縦ＭＹ画素（ＭＸ＞ＮＸ且つＭＹ＞ＮＹ）からなる。
【００６１】
ところで、図５に示すように、縦方向に隣接する第１の対象マクロブロックと第２の対象マクロブロックとがある場合、第１の対象マクロブロックに対応する参照領域ＡＲ１と第２の対象マクロブロックに対応する参照領域ＡＲ２とで、重なる領域（以下、「共通領域」と称す。）ＡＲ３が存在する。この共通領域ＡＲ３を構成する画素値データは、第１の対象マクロブロックを符号化処理するときのみならず、第２の対象マクロブロックを符号化処理するときにも必要となる。
【００６２】
そこで、参照参照画像記憶手段９６１は、参照領域を構成する画素値データに加えて、更に、第１の対象マクロブロックの符号化処理のときに用いた参照領域ＡＲ１のうち、第２の対象マクロブロックの符号化処理のときにも用いる共通領域ＡＲ３の画素値データを、第２の対象マクロブロックの符号化処理が終了するまで保持する。
【００６３】
これにより、共通領域ＡＲ３の画素値データについては、第１の対象マクロブロックの符号化処理のときに、一度、一時データ記憶手段９０８から参照参照画像記憶手段９６１に転送しておけば、第２の対象マクロブロックの符号化処理の際に、再度転送する必要がなくなるので、一時データ記憶手段９０８と参照参照画像記憶手段９６１との間におけるデータ転送量を抑制することができる。
【００６４】
また、符号化処理部１２０，１２１，１２２は、領域の左上端のマクロブロックについて最初に符号化処理を行い、その後、符号化処理の対象となるマクロブロックを、領域の右方向に１つずつずらしながら符号化処理を行う。そして、領域の右端のマクロブロックまで符号化処理が終了すると、符号化処理の対象となるマクロブロックを、当該マクロブロックよりもマクロブロック１つ分だけ下側に位置し且つ領域の水平方向に並ぶマクロブロック列の左端のマクロブロックとして前記符号化処理を行う。続いて、符号化処理の対象となるマクロブロックを、領域の右方向に１つずつずらしながら符号化処理を行う。
【００６５】
従って、参照参照画像記憶手段９６１は、第１のマクロブロックを第１符号化モードで符号化を行った後、第１のマクロブロックを符号化した際に用いた前記第１のマクロブロックに隣接するマクロブロックの情報の中で、前記第１のマクロブロックの下側に隣接する第２のマクロブロックを第１符号化モードで符号化する際にも用いるマクロブロックの情報を、第２のマクロブロックを符号化するまで保持することになる。
【００６６】
従って、図６に示すように、１つの領域の水平方向に並ぶマクロブロックの数が５つとすると、第１の対象マクロブロック１の右側に並ぶマクロブロックに対応する参照領域と、第１の対象マクロブロック１よりもマクロブロック１つ分だけ下側に位置し、且つ、領域に水平方向に並ぶマクロブロックそれぞれの参照領域との共通領域（図６のハッチ部分）の画素値データは、第１の対象マクロブロック１の符号化処理を行ってから、第２のマクロブロック２の符号化処理が終了するまで参照参照画像記憶手段９６１に保持されることになる。
【００６７】
ここで、符号化処理部１２０，１２１，１２２は、１フレームを、水平方向に並ぶ複数の領域に分割することで、１つの領域における水平方向に並ぶマクロブロックの数を１マクロブロックラインを構成するマクロブロックの数よりも少なくしている。従って、マクロブロックライン単位で、動き探索を行う場合に比べて、参照参照画像記憶手段９６１に記憶すべき画素値データの大きさを小さくすることができるので、参照参照画像記憶手段９６１の容量を削減して、消費電力の低減を図ることができる。
＜３＞動作
＜３−１＞符号化モード制御部の動作
符号化モード制御部１１１の動作について図７に示すフローチャートに基づいて説明する。
【００６８】
まず、符号化モード制御部１１１は、マクロブロック位置管理部１１２から、符号化処理の対象のマクロブロックの順番を示すデータと、当該マクロブロックの属するマクロブロックラインを示す情報と、各領域の左端に位置するマクロブロックの順番を示すデータとを取得する（ステップＳ１）。
【００６９】
次に、符号化モード制御部１１１は、取得したマクロブロックの順番を示すデータに基づいて、符号化処理の対象のマクロブロックの位置を特定する（ステップＳ２）。
そして、符号化モード制御部１１１は、取得したマクロブロックの順番を示すデータと、各領域の左端に位置するマクロブロックの順番を示すデータとに基づいて、符号化処理の対象のマクロブロックが領域境界に位置するか否かを判定する（ステップＳ３）。
【００７０】
ステップＳ３において、符号化処理の対象のマクロブロックが、領域境界に接しないと判定すると、符号化モード制御部１１１は、各符号化処理部１２０，１２１，１２２を通常符号化モードに設定する（ステップＳ４）。
【００７１】
一方、ステップＳ３において、符号化対象のマクロブロックが、領域境界に位置すると判定すると、符号化モード制御部１１１は、各符号化処理部１２０，１２１，１２２を領域内符号化モードに設定する（ステップＳ５）。
【００７２】
次に、符号化モード制御部１１１は、符号化処理部１２０，１２１，１２２それぞれが、各担当する領域内の全てのマクロブロックについて符号化処理が終了したか否かを判定する（ステップＳ６）。ここにおいて、符号化モード制御部１１１は、フレーム分割部１１０から入力されるマクロブロックの順番に関する情報と、当該マクロブロックの属するマクロブロックラインに関する情報とに基づいて、符号化処理の対象のマクロブロックが、最も下段に位置するマクロブロックラインに属し、且つ、各領域における最も右端に位置するマクロブロックであるか否かを判定し、該当する場合に領域の全てのマクロブロックについて符号化処理が終了したと判定する。
【００７３】
ステップＳ６において、符号化処理部１２０，１２１，１２２が処理すべき領域の全てのマクロブロックについて符号化処理がまだ終了していないと判定すると（ステップＳ６：ＮＯ）、符号化モード制御部１１１は、再び、ステップＳ１の処理に移行する。
【００７４】
一方、ステップＳ６において、符号化処理部１２０，１２１，１２２が処理すべき領域の全てのマクロブロックについて符号化処理が終了したと判定すると（ステップＳ６：ＹＥＳ）、符号化モード制御部１１１は、各符号化処理部１２０，１２１，１２２に対して終了通知を行い（ステップＳ７）、処理を終了する。
＜３−２＞符号化処理部の動作
本実施の形態に係る符号化処理部１２０，１２１，１２２は、ＭＰＥＧ−４ＡＶＣ／Ｈ．２６４の符号化方式で符号化処理を行う。
【００７５】
ＭＰＥＧ−４ＡＶＣ／Ｈ．２６４の符号化方式による符号化処理では、ＩピクチャをＩｎｔｒａ符号化のみを使用して符号化処理が行われ、ＰピクチャおよびＢピクチャをＩｎｔｒａ符号化およびＩｎｔｅｒ符号化が混在する形で符号化処理が行われる。
【００７６】
以下、符号化処理部１２０，１２１，１２２の動作について、図８に示すフローチャートに従って説明する。
まず、符号化処理部１２０，１２１，１２２は、符号化モード制御部１１１から符号化モード信号を取得すると（ステップＳ５１）、符号化処理部１２０，１２１，１２２に設けられたＭＢタイプ制御部９９０が、符号化モード信号が領域以内符号化を指示するものであるか否かを判定する（ステップＳ５２）。
【００７７】
ステップＳ５２において、領域内符号化を指示するものと判定されると（ステップＳ５２：ＹＥＳ）、ＭＢタイプ制御部９９０は、Ｉ−ＰＣＭ符号化処理を行うために、スイッチ９２２およびセレクタ９３０、９３１を設定する（ステップＳ５３）。
【００７８】
一方、ステップＳ５２において、領域内符号化を指示するものでない（即ち、通常モードでの符号化を指示するものである）と判定されると（ステップＳ５２：ＮＯ）、ＭＢタイプ制御部９９０およびスイッチ９２１は、フレームタイプ信号を取得する（ステップＳ５４）。そして、ＭＢタイプ制御部９９０は、取得したフレームタイプ信号がＩピクチャを示すものか否かを判定する（ステップＳ５５）。
【００７９】
ステップＳ５５において、フレームタイプ信号がＩピクチャを示すものと判定されると（ステップＳ５５：ＹＥＳ）、ＭＢタイプ制御部９９０は、Ｉピクチャ符号化処理を行うために、スイッチ９２２およびセレクタ９３０，９３１を設定する（ステップＳ５６）。また、スイッチ９２１は、Ｉピクチャを示すフレームタイプ信号が入力されると自動的にオフ状態となる。
【００８０】
一方、ステップＳ５５において、フレームタイプ信号がＩピクチャを示すものでないと判定されると（ステップＳ５５：ＮＯ）、ＭＢタイプ制御部９９０は、取得したフレームタイプ信号がＰピクチャを示すものか否かを判定する（ステップＳ５７）。
【００８１】
ステップＳ５７において、フレームタイプ信号がＰピクチャを示すものと判定されると（ステップＳ５７：ＹＥＳ）、ＭＢタイプ制御部９９０は、Ｐピクチャ符号化処理を行うために、スイッチ９２２およびセレクタ９３０，９３１を設定する（ステップＳ５８）。また、スイッチ９２１は、Ｐピクチャを示すフレームタイプ信号が入力されると自動的にオン状態となる。
【００８２】
一方、ステップＳ５７において、フレームタイプ信号がＰピクチャを示すものでないと判定されると（ステップＳ５７：ＮＯ）、ＭＢタイプ制御部９９０は、ＭＢタイプ制御部９９０は、Ｂピクチャ符号化処理を行うために、スイッチ９２２およびセレクタ９３０，９３１を設定する（ステップＳ５９）。また、スイッチ９２１は、Ｂピクチャを示すフレームタイプ信号が入力されると自動的にオン状態となる。
【００８３】
その後、ＭＢタイプ制御部９９０は、符号化モード制御部１１１から終了通知がなされたか否かを判定する（ステップＳ６０）。
ステップＳ６０において、終了通知がなされていないと判定されると（ステップＳ６０：ＮＯ）、再び、ステップＳ５１の処理に移行する。
【００８４】
一方、ステップＳ６０において、終了通知がなされたと判定されると（ステップＳ６０：ＹＥＳ）、処理を終了する。
以下、Ｉ−ＰＣＭ符号化処理、Ｉピクチャの符号化処理、Ｐピクチャの符号化処理およびＢピクチャの符号化処理について図３を用いて詳細に説明する。
【００８５】
＜３−２−１＞Ｉ−ＰＣＭ符号化処理
Ｉ−ＰＣＭ符号化処理では、ＭＢタイプ制御部９２０が、画像データをそのまま可変長符号化部９０４に入力するようにセレクタ９３０を切り替える。そして、可変長符号化部９０４では、画像データを用いて、Ｉ−ＰＣＭ符号化を行う。更に、ＭＢタイプ制御部９２０は、画像データをそのままデブロックフィルタ処理部９１１に入力するようにセレクタ９３１を切り替える。デブロックフィルタ処理部９１１では、画像データを用いてデブロック処理を行い、一時データ記憶手段９０８に格納する。
【００８６】
＜３−２−２＞Ｉピクチャの符号化処理
まず、ＭＢタイプ制御部９９０は、スイッチ９２１およびスイッチ９２２をオフ状態にする。このとき、画像データ（符号化対象ブロック）が、減算器９０１に入力されると、スイッチ９２２がオフ状態であるため、画像データが、そのままＤＣＴ処理部９０２に入力される。その後、ＤＣＴ処理部９０２で直交変換された画像データは、量子化処理部９０３で量子化され、セレクタ９３０および可変長符号化部９０４へと順に送られていく。そして、最終的に、可変長符号化部９０４から生成した符号が外部に出力される。
【００８７】
また、量子化処理部９０３で量子化された画像データは、逆量子化処理部９０６にも入力され、逆量子化処理部９０６で逆量子化した後、逆ＤＣＴ処理部９０７で逆直交変換がなされ、加算器９１０に入力される。
【００８８】
ここで、スイッチ９２２はオフ状態であるため、加算器９１０には、動き探索・補償９０９からの信号は入力されない。従って、Ｉピクチャの符号化の場合、セレクタ９３１は、加算器９１０からの信号をデブロックフィルタ処理部９１１に入力するようにデータ経路を切り替えるので、逆ＤＣＴ処理部９０７から送られてくるデータがそのままデブロックフィルタ処理部９１１に入力される。
【００８９】
デブロックフィルタ処理部９１１では、ブロックノイズを除去する処理が実行される。そして、デブロックフィルタ処理部９１１から出力される画像データ（以下、再構成画像データと称す）は、一時データ記憶手段９０８に格納される。
【００９０】
＜３−２−３＞Ｐピクチャの符号化処理
まず、ＭＢタイプ制御部９９０は、スイッチ９２１をオン状態にする。そして、スイッチ９２２は、動き探索・補償部９０９の結果を受け状態が変化する。このとき、符号化処理の対象となるマクロブロックの画像データ（画素値データの集合）が、減算器９０１に入力されるとともに、スイッチ９２１を介して動き探索・補償部９０９にも入力される。
【００９１】
動き探索・補償部９０９は、画像データを取得するとともに、一時データ記憶手段９０８に記憶された画像データ（画像データと同一空間位置の近傍の画素から構成された画像データ）を読み出して参照参照画像記憶手段９６１に格納し、動き探索を行い（図４参照）、動きベクトルを検出する。そして、動き探索・補償部９０９は、検出した動きベクトルの情報を可変長符号化部９０４に入力する。
【００９２】
動き探索・補償部９０９は、評価関数の最小値を示すデータを算出してＭＢタイプ制御部９２０に送る。ＭＢタイプ制御部９９０では、評価関数の最小値を示すデータに基づいて、符号化タイプをＩｎｔｒａ符号化またはＩｎｔｅｒ符号化のいずれかに決定する。そして、ＭＢタイプ制御部９９０は、決定した符号化タイプを示す符号化タイプ信号を可変長符号化部９０４に送信するとともに、スイッチ９２２のオン・オフ状態を切り替える。
【００９３】
ここで、ＭＢタイプ制御部９９０がＩｎｔｒａ符号化に決定した場合、スイッチ９２２はオフ状態となり、前述のＩピクチャの符号化処理と同様の処理が行われる。
一方、ＭＢタイプ制御部９９０がＩｎｔｅｒ符号化に決定した場合、動き探索・補償部９０９が、動き補償画像データを生成する。このとき、スイッチ９２２はオン状態となっているので、動き補償画像データは、減算器９０１へ送られる。
【００９４】
減算器９０１では、フレーム分割部１１０から入力される画像データと、動き探索・補償部９０９から入力される動き補償画像データとの差分画像データ（フレーム間予測誤差に対応する画素値データの集合）を算出して、ＤＣＴ処理部９０２へ入力され、量子化処理部９０３、セレクタ９３０、可変長符号化部９０４の順に処理が実行される。そして、可変長符号化部９０４から出力される符号データが、符号データ記憶部１３０に格納される。
【００９５】
また、量子化処理部９０３からの出力は逆量子化処理部９０６にも入力され、その後、逆ＤＣＴ処理部９０７で逆ＤＣＴ処理が行われた後、加算器９１０に入力される。
加算器９１０は、逆ＤＣＴ処理部９０７から入力される画像データと、動き補償画像データとを加算して得られる画像データをデブロックフィルタ処理部９１１に入力する。
【００９６】
次に、デブロックフィルタ処理部９１１は、画像データに対してブロックイズを除去する処理を行い、処理後の画像データ（再構成画像データともいう。）を一時データ記憶手段９０８に格納する。
＜２−２−４＞Ｂピクチャの符号化処理
Ｂピクチャの符号化処理は、Ｐピクチャの符号化処理とほぼ同様なので、Ｐピクチャの符号化処理との相違点についてのみ説明する。
【００９７】
ＢピクチャとＰピクチャとは、動き探索・補償９０９が動き探索の際に用いる参照領域が相違する。Ｐピクチャの符号化処理では、時間的に前方のＩピクチャまたはＰピクチャを参照領域だけを用いるのに対して、Ｂピクチャの符号化処理では、時間的に前方のＩピクチャまたはＰピクチャの参照領域（以下、「前方参照領域」と称す。）と、時間的に後方のＩピクチャまたはＰピクチャの参照領域（以下、「後方参照領域」と称す。）との両方を用いる。従って、Ｂピクチャの符号化処理では、後方参照領域を含むＩピクチャまたはＰピクチャの符号化処理を当該Ｂピクチャの符号化処理より先に行う必要がある。従って、動き探索・補償部９０９は、動き探索の際、一時データ記憶手段９０８から前方参照領域および後方参照領域の両方を読み出す。
【００９８】
なお、Ｉピクチャ、ＰピクチャおよびＢピクチャを符号化する際に生成される参照画像は、マクロブロックによっては使用されない場合がある。この場合、逆量子化処理部９０６による逆量子化処理、逆ＤＣＴ処理部９０７による逆ＤＣＴ、加算器９１０による加算処理、および、デブロックフィルタ処理部９１１によるデブロックフィルタリングからなる一連の処理は省略される。
【００９９】
以上のように、本実施の形態に係る符号化処理装置１００では、図９に示すように、３つの領域の境界に位置するマクロブロック（図９のハッチ部分）については、領域内符号化モードであるＩ−ＰＣＭ符号化を行う。このＩ−ＰＣＭ符号化は、マクロブロックに対応するデジタル画像信号をそのまま出力するものであり、符号化処理において、符号化処理の対象であるマクロブロックの周囲に隣接するマクロブロックの情報を用いない。
【０１００】
従って、本実施の形態に係る符号化処理装置１００では、各符号化処理部１２０，１２１，１２２が担当する領域に属するマクロブロックを符号化処理する際、符号化処理の対象のマクロブロックが属する領域以外の他の領域に属するマクロブロックの情報を用いない。従って、各符号化処理部１２０，１２１，１２２は、担当する領域の符号化処理の際、他の領域に属するマクロブロックの情報が生成されるのを待つ必要がなくなるので、複数の領域で同時に並列して符号化処理を行うことができるから、符号化処理の高速化を図ることができる。
【０１０１】
また、Ｉ−ＰＣＭ符号化方式により符号化したマクロブロック同士の境界では、ブロック歪が生じないので、デブロックフィルタ処理を行う必要がない。従って、例えば、図９に示すマクロブロック２＿ｎとマクロブロック３＿１との境界付近にある画素値データに対して、ブロック歪を除去するためのデブロックフィルタリングを行う必要がないという利点もある。
＜実施の形態２＞
本実施の形態に係る符号化処理装置は、実施の形態１の符号化処理装置と略同様であり、符号化処理部１２０，１２１，１２２の構成のみが相違する。なお、実施の形態１と同様の構成については適宜説明を省略する。
【０１０２】
本実施の形態に係る符号化処理部１２０，１２１，１２２は、Ｉ−ＰＣＭ符号化を行うか否かを切り替えるためのセレクタ９３０およびセレクタ９３１が設けられていない点と、デブロックフィルタ処理部９１１が設けられていない点とが実施の形態１と相違する（図３参照）。
【０１０３】
この符号化処理部１２０，１２１，１２２は、ＭＰＥＧ−４の符号化方式により符号化を行い、領域の境界に位置するマクロブロックについては、ｎｏｔ＿ｃｏｄｅｄ符号化により符号化処理を行う。
【０１０４】
符号化処理部１２０，１２１，１２２は、符号化モード制御部１１１から領域内符号化を指示する符号化モード信号が入力されると、ＭＢタイプ制御部９９１が、動き探索・補償部９９２と量子化処理部９９３と可変長符号化部９９４にｎｏｔ＿ｃｏｄｅｄ符号化指示信号を入力する。
【０１０５】
動き探索・補償部９９２は、ＭＢタイプ制御部９９１からｎｏｔ＿ｃｏｄｅｄ符号化指示信号が入力されると、動きベクトル（Ｍｘ，Ｍｙ）を強制的に（０，０）に設定して動き補償画像データを生成する。
【０１０６】
一方、量子化処理部９９３は、量子化処理の結果の全てを「０」に置き換える処理を行い、可変長符号化部９０４および逆量子化処理部９０６に出力する。
可変長符号化部９０４は、ＭＢタイプ制御部９９１からｎｏｔ＿ｃｏｄｅｄ符号化指示信号が入力されると、ｎｏｔ＿ｃｏｄｅｄ符号化処理を行う。
【０１０７】
また、本実施の形態に係る符号化処理装置１００では、図９に示すように、３つの領域の境界に位置するマクロブロック（図９のハッチ部分）については、領域内符号化モードであるｎｏｔ＿ｃｏｄｅｄ符号化を行う。このｎｏｔ＿ｃｏｄｅｄ符号化は、既に符号化が完了している他のフレーム内において、符号化処理の対象となるマクロブロックの位置と同じ位置にあるマクロブロックの情報をそのまま出力する。従って、符号化処理の対象のマクロブロックに隣接するマクロブロックの情報は用いない。
【０１０８】
それ故に、各符号化処理部１２０，１２１，１２２が担当する領域に属するマクロブロックを符号化処理する際、符号化処理の対象のマクロブロックが属する領域以外の他の領域に属するマクロブロックの情報を用いないので、各符号化処理部１２０，１２１，１２２は、担当する領域の符号化処理の際、他の領域に属するマクロブロックの情報が生成されるのを待つ必要がなくなるから、複数の領域で同時に並列して符号化処理を行うことができるから、符号化処理の高速化を図ることができる。
＜実施の形態３＞
実施の形態３に係る撮像システム（例えば、デジタルスチルカメラ（ＤＳＣ））６０１の構成を図１１に示す。図１１における符号化処理装置６０６は、実施の形態１または実施の形態２に係る符号化処理装置により構成される。
【０１０９】
撮像システム６０１は、光学系６０２を通って入射した光がセンサ６０３の受光部（図示せず）に結像される。センサ６０３は、タイミング制御回路６０９の制御に基づいて、所定のタイミングで受光部で受光した光を電気信号に変換（光電変換）し、アナログ画像信号として出力する。そして、このアナログ画像信号は、アナログ・デジタル変換機（ＡＤＣ）６０４によってデジタル画像信号に変換され、符号化処理装置６０６を有する画像処理回路６０５に入力される。この画像処理回路６０５では、Ｙ／Ｃ処理、エッジ処理、画像の拡大縮小処理、および画像圧縮処理を行うことにより符号データ信号を生成して記録転送回路６０７に入力される。そして、記録転送回路６０７は、符号データ信号を記録媒体（図示せず）に記録するとともに、再生回路６０８へ転送する。再生回路６０８は、記録転送回路６０７から入力される符号データ信号を復号して再生する。なお、光学系の調整および、記録転送回路６０７および再生回路６０８は、システム制御回路６１０により制御されている。
＜変形例＞
（１）前述の実施の形態１および２では、フレーム分割部１１０が各フレームを３つの領域に分割する例について説明したが、これに限定されるものではない。例えば、図１２に示すように、４つ以上（図１１に示す例では、１０）の符号化処理部１２０，１２１，・・・，１２９を備えており、符号化モード制御部１１１が、外部から入力される分割数指定信号（図１２の矢印Ａ２１）に応じて当該分割数指定信号で指定される分割数と同じ数の符号化処理部（例えば、各フレームを１０個の領域に分割して処理する場合は、１０台の符号化処理部）を駆動させるとともに、駆動させた符号化処理部それぞれが符号化処理を行う領域を設定する。そして、符号化モード制御部１１１は、駆動させている符号化処理部の識別情報および駆動している符号化処理部それぞれが符号化処理を行う領域を示す領域情報をフレーム分割部１１０に入力（図１２の矢印Ａ２２）するようにしてもよい。ここにおいて、フレーム分割部１１０が、符号化モード制御部１１１から入力される識別情報および領域情報に基づいて、マクロブロックの情報を駆動している符号化処理部に振り分ける。
【０１１０】
本変形例によれば、より多くの符号化処理部で符号化を並列に実行することができるので、符号化処理能力の向上を図ることができる。
（２）前述の実施の形態２では、領域内符号化モードとしてＩ−ＰＣＭとｎｏｔ＿ｃｏｄｅｄを採用する例について説明したが、これに限定されるものではなく、周辺のマクロブロックの影響を受けず、属する領域内のマクロブロックの情報のみで符号化する符号化モードであれば他の符号化モードを採用してもよい。
【０１１１】
（３）前述の実施の形態１および２では、各フレームを水平方向に３つの領域に分割する例について説明したが、これに限定されるものではない。例えば、図１３に示すように、水平方向に３つ、垂直方向に２つに分割してなる６つの領域に分割し、図１３のハッチ部分のマクロブロックを領域内符号化モードで符号化し、図１３のハッチ部分以外のマクロブロックを通常符号化モードで符合化するようにしてもよい。
【０１１２】
本変形例によれば、より多くの符号化処理部を用いて並列して符号化処理を行うことができるので、符号化処理能力を一層向上させることができる。
（４）前述の実施の形態１および２では、領域境界のマクロブロック全てを領域内符号化モードで符号化を行う例について説明したが、例えば、符号化対象マクロブロックの左側、左上側および上側に隣接するマクロブロックの情報のみを用いて符号化する符号化方式（図１４参照）であれば、これに限定されるものではない。例えば、図１５に示すように、左端の領域を除く各領域内における左側の境界に接するマクロブロックを領域内符号化モードで符号化するものであってもよい。
【０１１３】
本変形例によれば、符号量の低減を図ることができる。
また、図１６に示すように、６つの領域に分割したときに、上側の３つの領域のうち左端の領域を除く２つの領域については、各領域内における左側の境界に接するマクロブロックを領域内符号化モードで符号化し、下側の３つの領域のうち左端の領域については上側の境界に接するマクロブロックを領域内符号化モードで符号化し、残り２つの領域については、左側の境界および上側の境界に接するマクロブロックを領域内符号化モードで符号化するものであってもよい。
【０１１４】
（５）前述の実施の形態３では、本発明に係る符号化処理装置６０６における画像処理は必ずしも光学系６０２を介してセンサ６０３に結像された画像光に基づく信号のみに適用されるものではなく、例えば外部装置から電気信号として入力される画像信号を処理する際にも適用可能であることは言うまでもない。
【０１１５】
（６）前述の実施の形態１および２で示した符号化処理装置１００のプロセッサおよびそのプロセッサに接続された各種回路に実行させるためのプログラムコードからなるプログラムを、記録媒体に記録すること又は各種通信路等を介して流通させ頒布することもできる。このような記録媒体には、ＩＣカード、ハードディスク、光ディスク、フレキシブルディスク、ＲＯＭなどがある。流通、頒布された制御プログラムはプロセッサに読み出されうるメモリなどに格納されることにより利用に供され、そのプロセッサがその制御プログラムを実行することにより各実施形態で示したような機能が実現されるようになる。なお、制御プログラムの一部を符号化処理装置１００とは別個のプログラム実行可能な装置（プロセッサ）に各種ネットワークを介して送信して、その別個のプログラム実行可能な装置においてその制御プログラムの一部を実行させることとしてもよい。
【０１１６】
（７）前述の実施の形態１および２で示した符号化処理装置１００を構成する構成要素の一部又は全部は、１又は複数の集積回路（ＩＣ、ＬＳＩなど）として実装されることとしても良く、符号化処理装置１００の構成要素に更に他の要素を加えて集積回路化（１チップ化）されることとしてもよい。
【０１１７】
ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、ＬＳＩ内部の回路セルの接続または設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
＜補足＞
前述の実施の形態１および２では、ＭＰＥＧ−４ＡＶＣ／Ｈ．２６４符号化方式の符号化を行う符号化処理装置１００について説明したが、これは、ＭＰＥＧ−４ＡＶＣ／Ｈ．２６４符号化方式に対応する復号処理装置（図示せず）が、符号化処理装置１００から送信される符号データから、各マクロブロックのマクロブロックタイプを判定し、Ｉ−ＰＣＭ符号化がなされている場合には、Ｉ−ＰＣＭ符号化に対応した復号処理を行うことを前提としている。
【産業上の利用可能性】
【０１１８】
本発明に係る符号化処理装置１００は、高解像度・高フレームレートといった高性能な処理を実現することができるため、今後、高解像度化と伴に小型化、省電力化が求められる撮像システム等に、非常に有用な技術である。省電力化が実現することができ、モバイル系の撮像システムにも有用な技術である。
【符号の説明】
【０１１９】
１００    符号化処理装置
１１０    フレーム分割部
１１１    符号化モード制御部
１２０，１２１，１２２  符号化処理部
１３０    符号データ記憶部
１３１    符号データ並替部
９０１    減算器
９０２    ＤＣＴ処理部
９０３    量子化処理部
９０４    可変長符号化部
９０６    逆量子化処理部
９０７    逆ＤＣＴ処理部
９０８    一時データ記憶部
９０９    動き探索・補償部
９１０    加算器
９１１    デブロックフィルタ処理部
９２１，９２２  スイッチ
９２３    レート制御部
９３０，９３１  セレクタ
９９０    ＭＢタイプ制御部
【図１】
2012175424.tif 000004
【図２】
2012175424.tif 000005
【図３】
2012175424.tif 000006
【図４】
2012175424.tif 000007
【図５】
2012175424.tif 000008
【図６】
2012175424.tif 000009
【図７】
2012175424.tif 000010
【図８】
2012175424.tif 000011
【図９】
2012175424.tif 000012
【図１０】
2012175424.tif 000013
【図１１】
2012175424.tif 000014
【図１２】
2012175424.tif 000015
【図１３】
2012175424.tif 000016
【図１４】
2012175424.tif 000017
【図１５】
2012175424.tif 000018
【図１６】
2012175424.tif 000019
【図１７】
2012175424.tif 000020