(57)【要約】【課題】  画像に対する圧縮率を変化させずに画質の向上を図る。【解決手段】  第１画像に含まれるオブジェクトを検出する検出部と、検出されたオブジェクトに基づいて、検出されたオブジェクトを含む領域を分割する際に用いるブロックを、大きさの異なる複数種類のブロックのいずれかから設定するブロック設定部と、オブジェクトを含む領域を分割した各ブロックと、第１画像よりも前、又は後に取り込まれる第２画像とを用いて動きベクトルを求めて、第１画像及び前記第２画像間の動き予測を行い、動き予測における予測誤差を符号化する画像符号化部と、を備えたことを特徴とする。【選択図】    図１
2010233186.tif 000002
【特許請求の範囲】
【請求項１】
第１画像に含まれるオブジェクトを検出する検出部と、
前記検出されたオブジェクトに基づいて、予め設定された異なる複数種類のブロックから、少なくとも前記オブジェクトを含む領域を分割する際に用いるブロックを設定するブロック設定部と、
前記設定部により設定されたブロックを用いて分割された少なくとも前記オブジェクトを含む領域と、前記第１画像よりも前、又は後に取り込まれる第２画像とを用いて動きベクトルを求めるとともに、求めた動きベクトルを利用して前記第１画像及び前記第２画像間の動き予測を行い、該動き予測における予測誤差を符号化する画像符号化部と、
を備えたことを特徴とする電子カメラ。
【請求項２】
請求項１に記載の電子カメラにおいて、
前記設定部は、前記複数種類のブロックから、長手方向が前記オブジェクトの長手方向と同一方向となるブロックを選択することを特徴とする電子カメラ。
【請求項３】
請求項１に記載の電子カメラにおいて、
前記設定部は、前記複数種類のブロックから、長手方向が前記オブジェクトの長手方向と直交するブロックを選択することを特徴とする電子カメラ。
【請求項４】
請求項１に記載の電子カメラにおいて、
前記設定部は、前記オブジェクトの輪郭が含まれるブロックと、前記オブジェクトの輪郭よりも内側の領域が含まれるブロックとを、それぞれ異なる種類のブロックから選択することを特徴とする電子カメラ。
【請求項５】
請求項４に記載の電子カメラにおいて、
前記設定部は、前記オブジェクトの輪郭よりも内側の領域が含まれるブロックとして、前記オブジェクトの輪郭が含まれるブロックのブロックサイズよりも小さいブロックを選択することを特徴とする電子カメラ。
【請求項６】
第１画像に含まれるオブジェクトを検出する検出ステップと、
前記検出されたオブジェクトに基づいて、予め設定された異なる複数種類のブロックから、少なくとも前記オブジェクトを含む領域を分割する際に用いるブロックを設定する設定ステップと、
前記設定工程により設定されたブロックを用いて分割された少なくとも前記オブジェクトを含む領域と、前記第１画像よりも前、又は後に取り込まれる第２画像とを用いて動きベクトルを求めるとともに、求めた動きベクトルを利用して前記第１画像及び前記第２画像間の動き予測を行い、該動き予測における予測誤差を符号化する符号化ステップと、
を備えたことを特徴とする符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、取り込まれる画像信号を圧縮符号化して記憶する電子カメラ及び符号化方法に関する。
【背景技術】
【０００２】
取得される画像の画質を向上させる方法としては、画像に対して施される画像処理、又は画像に対して施される符号化処理のいずれか一方の処理を改善することが考えられる。画像処理により画質を向上させる場合、画像から人物の顔などのオブジェクトを検出し、検出されたオブジェクトに基づいた高画質化処理を画像に対して実行することが挙げられる（特許文献１参照）。
【０００３】
一方、符号化処理により画質を向上させる場合には、例えば画像から人物の顔などのオブジェクトを検出し、検出されたオブジェクトが占める領域に対しては低圧縮率を用い、それ以外の領域に対しては高圧縮率を用いる、所謂ＲＯＩ（Ｒｅｇｉｏｎ  Ｏｆ  Ｉｎｔａｒｅｓｔ）機能による圧縮符号化処理を施すことが挙げられる（特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−６３４０６号公報
【特許文献２】特開２００１−１４５１０１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した画像処理を動画像に適用した場合、オブジェクトの動きに起因して発生するボケを改善することが難しく、動画像の画質を向上させることは難しい。そこで、動画像の画質を向上させるために、上述した圧縮符号化処理を適用することを考えると、オブジェクトの動きに起因するボケの発生を抑止することができるが、オブジェクトが占める領域に対する圧縮率と、それ以外の領域に対する圧縮率との違いから結果的に画質を悪化させてしまう虞があるという問題がある。
【０００６】
本発明は、画像に対する圧縮率を変化させなくても、画質の向上を図ることができるようにした電子カメラ及び符号化プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決するために、本発明の電子カメラは、第１画像に含まれるオブジェクトを検出する検出部と、前記検出されたオブジェクトに基づいて、予め設定された異なる複数種類のブロックから、少なくとも前記オブジェクトを含む領域を分割する際に用いるブロックを設定するブロック設定部と、前記設定部により設定されたブロックを用いて分割された少なくとも前記オブジェクトを含む領域と、前記第１画像よりも前、又は後に取り込まれる第２画像とを用いて動きベクトルを求めるとともに、求めた動きベクトルを利用して前記第１画像及び前記第２画像間の動き予測を行い、該動き予測における予測誤差を符号化する画像符号化部と、を備えたことを特徴とする。
【０００８】
また、前記設定部は、前記複数種類のブロックから、長手方向が前記オブジェクトの長手方向と同一方向となるブロックを選択することが好ましい。
【０００９】
また、前記設定部は、前記複数種類のブロックから、長手方向が前記オブジェクトの長手方向と直交するブロックを選択することが好ましい。
【００１０】
また、前記設定部は、前記オブジェクトの輪郭が含まれるブロックと、前記オブジェクトの輪郭よりも内側の領域が含まれるブロックとを、それぞれ異なる種類のブロックから選択することが好ましい。
【００１１】
この場合、前記設定部は、前記オブジェクトの輪郭よりも内側の領域が含まれるブロックとして、前記オブジェクトの輪郭が含まれるブロックのブロックサイズよりも小さいブロックを選択することが好ましい。
【００１２】
また、本発明の符号化方法は、第１画像に含まれるオブジェクトを検出する検出工程と、前記検出されたオブジェクトに基づいて、予め設定された異なる複数種類のブロックから、少なくとも前記オブジェクトを含む領域を分割する際に用いるブロックを設定する設定工程と、前記ブロックごとに分割された前記オブジェクトを含む領域と、前記第１画像よりも前、又は後に取り込まれる第２画像とを用いて動きベクトルを求めるとともに、求めた動きベクトルを利用して前記第１画像及び前記第２画像間の動き予測を行い、該動き予測における予測誤差を符号化する符号化工程と、をコンピュータに実行させることが可能なものである。
【発明の効果】
【００１３】
本発明によれば、画像から検出されるオブジェクトに応じたブロックを用いて分割することで、動き予測における予測誤差を高精度に求めることができるので、画像の圧縮率を一定にした場合であっても、得られる画像の画質を劣化させる虞がない。
【図面の簡単な説明】
【００１４】
【図１】デジタルカメラの構成の概略を示す図である。
【図２】フレーム画像に対するオブジェクト検出を示す図である。
【図３】フレーム画像を１６×１６画素のマクロブロックに分割した場合を示す図である。
【図４】フレーム画像を８×８画素のマクロブロックに分割した場合を示す図である。
【図５】フレーム画像を１６×１６画素、１６×８画素、８×１６画素及び８×８画素のいずれかのマクロブロックに分割した場合を示す図である。
【図６】画像符号化回路の構成の概略を示す図である。
【図７】動画像撮影の際のデジタルカメラ１０の内部の処理の流れを示すフローチャートである。
【図８】フレーム画像を１６×１６画素及び１６×８画素のマクロブロックに分割した場合を示す図である。
【図９】フレーム画像を１６×１６画素及び８×１６画素のマクロブロックに分割した場合を示す図である。
【発明を実施するための形態】
【００１５】
以下、本実施形態の電子カメラの一例としてデジタルカメラ１０を例に挙げて説明する。なお、このデジタルカメラ１０は、静止画像の撮影の他に、動画像を撮影することが可能である。以下、静止画像の撮影を静止画撮影、動画像の撮影を動画撮影と称して説明する。
【００１６】
図１に示すように、デジタルカメラ１０は、撮像光学系１５を介して取り込まれる被写体光を撮像素子２１により光電変換し、光電変換後の信号電荷を画像信号として出力する。以下では、デジタルカメラ１０を用いて画像データを取得する行為を撮影と称し、該撮影時に実行されるデジタルカメラ１０の内部の処理を撮像と称して説明する。
【００１７】
撮像光学系１５は、図示を省略した撮像レンズ、ズームレンズやフォーカスレンズなどを含むレンズ群から構成される。ズームレンズは選択された撮影倍率となるように光軸Ｌに沿って移動する。フォーカスレンズは被写体像の焦点調節の際に光軸Ｌに沿って微小移動する。このレンズ群を構成するズームレンズやフォーカスレンズなどは、図示を省略したレンズ駆動機構によって駆動制御される。
【００１８】
撮像素子２１は、例えばＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）やＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ−Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）などから構成される。撮像素子２１は、撮像光学系１５によって取り込まれる被写体光を受光し、受光した光量を信号電荷に変換（光電変換）して、変換した信号電荷を蓄積する。
【００１９】
ドライバ２２は、撮像素子２１を駆動制御する。撮像素子２１の駆動制御とは、撮像素子２１の各画素に対する信号電荷の蓄積及び蓄積された信号電荷の出力の他に、被写体光を受光する画素と、受光しない画素とを制御する、所謂間引き制御を行うことが挙げられる。なお、間引き制御が行われることで得られる画像データは、後述するＬＣＤ３７にスルー画像を表示させる際に用いられる。以下、撮像素子２１から出力される信号電荷を画像信号と称して説明する。
【００２０】
ＡＦＥ（Ａｎａｌｏｇ  Ｆｒｏｎｔ  Ｅｎｄ）回路２３は、図示しないＡＧＣ回路やＣＤＳ回路を含んで構成される。ＡＦＥ回路２３は、入力された画像信号に対してゲインコントロール、雑音除去などのアナログ処理を施す。このアナログ処理が施された画像信号は、ＤＦＥ回路２４に出力される。
【００２１】
ＤＦＥ（Ｄｉｇｉｔａｌ  Ｆｒｏｎｔ  Ｅｎｄ）回路２４は、ＡＦＥ回路２３によってアナログ処理が施された画像信号をデジタル信号に変換する。符号２５は、タイミングジェネレータ（ＴＧ）であり、このＴＧ２５により、ドライバ２２、ＡＦＥ回路２３及びＤＦＥ回路２４の駆動タイミングが制御される。バッファメモリ３１は、ＤＦＥ回路２４によってデジタル化された画像信号が１コマ毎にまとめられて記憶される。なお、このバッファメモリ３１には、複数コマの画像信号を記憶することが可能となっている。
【００２２】
画像処理回路３２は、バッファメモリ３１に記憶された画像信号に対して、画像処理を実行する。この画像処理については周知であることから、詳細は記載しないが、例えば色補間処理、ホワイトバランス補正処理、輪郭補償処理、階調変換処理、色空間変換処理などが挙げられる。なお、画像処理済みの画像信号は、バッファメモリ３１に記録される。なお、本実施形態では、画像処理済みの画像信号をバッファメモリ３１に記録しているが、これに限定される必要はなく、画像処理済みの画像信号を複数記録するためのメモリをバッファメモリ３１とは別に設けることも可能である。
【００２３】
画像符号化回路３３は、画像処理済みの画像信号に対して符号化処理（圧縮処理）を施す。なお、この画像符号化回路３３の詳細については、後述するが、この画像符号化回路３３によって、静止画撮影により取得された画像データ（以下、静止画像データ）や、動画撮影により取得された画像データ（以下、動画像データ）が、圧縮符号化される。
【００２４】
例えば、画像符号化回路３３にて符号化処理された静止画像データは、静止画像データよりも低品質となるサムネイル画像データや、デジタルカメラ１０の機種情報、撮影情報などの付帯情報等と１つのファイル（静止画像ファイル）にまとめられ、記憶媒体３５に記憶される。なお、符号３６は、メディアスロットである。ここで、上述したサムネイル画像データは、静止画像データとは異なる画像サイズにリサイズ処理された後に、符号化処理された画像データである。同様にして、画像符号化回路３３にて符号化処理された動画像データは、デジタルカメラ１０の機種情報、撮影情報などの付帯情報等と１つのファイル（動画像ファイル）にまとめられ、記憶媒体３５に記憶される。
【００２５】
ＬＣＤ３７は、表示装置の一形態であって、撮影待機状態時に取り込まれるスルー画像や、静止画撮影や動画撮影時に得られた画像を表示する。また、この他に、ＬＣＤ３７には、デジタルカメラ１０の設定を行う際の設定用の画像を表示する。なお、符号３８は、ＬＣＤ３７の駆動制御を行う表示制御回路である。
【００２６】
ＣＰＵ４１は、内蔵メモリ４２に記憶された制御プログラム（図示省略）を実行することで、デジタルカメラ１０の各部を統括的に制御する。このＣＰＵ４１は、バス４３を介して、バッファメモリ３１、画像処理回路３２、画像符号化回路３３、メディアスロット３６、表示制御回路３８及び内蔵メモリ４２に接続される。ＣＰＵ４１には、レリーズボタン４４や設定操作部４５からの操作信号が入力可能となっている。
【００２７】
このＣＰＵ４１は、上述した制御プログラムを実行することで、オブジェクト検出部５１及びマクロブロック設定部５２の機能を有する。オブジェクト検出部５１は、動画像撮影を行っている際に、バッファメモリ３１に格納された画像処理済みの画像データを用いてオブジェクト検出を行う。動画像撮影においては、所定時間毎に画像が取得されていく。以下、所定時間毎に取得される各画像をフレーム画像と称して説明する。
【００２８】
図２に示すように、例えば被写体が人物となる動画撮影の場合、このオブジェクト検出部５１によって人物の顔（符号５５に示す領域）がオブジェクトとして検出される他、目（符号５６，５７に示す領域）、口（符号５８に示す領域）など顔を構成する要素もオブジェクトとして検出される。なお、このオブジェクト検出としては、例えば周知の特徴量抽出を用いればよい。このオブジェクト検出によってオブジェクトが検出されると、検出されたオブジェクトが含まれる矩形の領域（以下、オブジェクト領域）に含まれる画素のアドレスデータが内蔵メモリ４２に記録される。
【００２９】
マクロブロック設定部５２は、動画像を構成するフレーム画像ＦＩを分割する際に用いるマクロブロックの設定を行う。なお、このマクロブロックは、後述する動きベクトルを検出する際に用いられる。このマクロブロックとしては、例えば１６×１６画素、８×１６画素、１６×８画素、８×８画素のいずれかのブロックサイズのマクロブロックが挙げられる。マクロブロック設定部５２は、オブジェクト検出部５１によって検出されたオブジェクトに基づいて、フレーム画像を分割する際に用いるマクロブロックを設定する。詳細には検出されたオブジェクトが人物の顔となる場合には、検出された顔の大きさや向き、顔を構成する目、口等の大きさや向きなどに基づいて決定される。
【００３０】
図３に示すように、１６×１６画素のマクロブロック６１でフレーム画像ＦＩを分割した場合、マクロブロック６１に基づく分割数は少ないので、符号化処理を施したときの符号量が少なく、フレーム画像ＦＩに対する符号化処理の効率は向上する。しかしながら、目や口などがオブジェクトとして検出された場合には、これらオブジェクトはマクロブロック６１に占める割合が小さいことから、後述する動きベクトルの検出の際には、これらオブジェクトに対する動きベクトルの検出精度が低下する。
【００３１】
一方、図４に示すように、８×８画素のマクロブロック６２でフレーム画像ＦＩを分割した場合、例えば目や口など、サイズの小さいオブジェクトの場合には、マクロブロック６２に占める割合が大きくなる。このような場合には、これらオブジェクトに対する動きベクトルの検出精度は向上する。しかしながら、マクロブロックのサイズが小さいと、分割により生成されるマクロブロックの数、つまりフレーム画像ＦＩを符号化したときの符号量が多くなり、結果的に符号化処理の効率が低下する。
【００３２】
そこで、マクロブロック設定部５２は、フレーム画像ＦＩから検出されるオブジェクトの大きさや形状に合わせて使用するマクロブロックの大きさを設定する。図５に示すように、まず、フレーム画像ＦＩを１６×１６画素のマクロブロック６１に分割する。そして、検出されたオブジェクトが含まれる領域のうち、顔の輪郭が含まれている領域、つまり、ハッチング領域Ｂ１に対しては８×１６画素のマクロブロック６３となるように、ハッチング領域Ｂ２に対しては１６×８画素のマクロブロック６４となるように、それぞれの領域を分割する。なお、８×１６画素のマクロブロックや、１６×８画素のマクロブロックは、例えば圧縮率との兼ね合いで８×８画素のマクロブロックが使用できない場合に用いられることが多い。このため、図５に示す領域Ｂ１や領域Ｂ２は、１６×８画素のマクロブロックや８×１６画素のマクロブロックではなく、８×８画素のマクロブロックとなるように分割してもよい。
【００３３】
さらに、顔がオブジェクトとして検出される場合には、目、口など顔を構成する要素もオブジェクトとして検出されている。このようなオブジェクトの内側にオブジェクトが位置している場合には、オブジェクトの内側の領域を、オブジェクトの内側に位置するオブジェクトの大きさや形状、さらにはその個数に応じて分割する。なお、図５においては、顔の内側の領域を８×８画素のマクロブロック６２に分割した場合を示す。マクロブロック設定部５２は、フレーム画像ＦＩを分割したときのマクロブロックのブロックサイズと、その位置とを示す情報がブロック設定情報として画像符号化回路３３に出力される。
【００３４】
なお、このマクロブロック設定部５２によるブロックサイズの設定は、フレーム画像ＦＩ全体を対象とする必要はない。例えばＭｐｅｇ４規格や、Ｈ．２６４／ＡＶＣ規格などを用いた符号化処理の場合には、画像に含まれる（画像から検出される）オブジェクト毎に動き検出を行うことが可能である。このような場合には、フレーム画像ＦＩからオブジェクト領域を抜き出した画像に対して、上述したブロックサイズの設定を行うことも可能である。
【００３５】
以下、図６を用いて、画像符号化回路３３の構成について説明する。なお、図６に示す画像符号化回路３３は、Ｈ．２６４／ＡＶＣ規格に基づいて画像を符号化するための回路の一例を示す。以下、動画像データが入力される場合について説明する。
【００３６】
この画像符号化回路３３には、符号化する順番に各フレーム画像の並べ替えが行われた動画像データが入力される。動画像は複数のフレーム画像から構成されるが、これらフレーム画像のタイプは、同一フレーム内の情報のみで符号化が行われるＩピクチャと、時間的に前のフレーム画像との差分を利用して符号化が行われるＰピクチャ、及び時間的に後の（局所復号化された）フレーム画像との差分も利用して符号化が実行されるＢピクチャとからなる。Ｂピクチャは時間的に後のフレーム画像を参照するため、符号化の順番は参照するフレーム画像よりも後になる。
【００３７】
符号化順に並び替えられたフレーム画像は、マクロブロック単位毎に符号化される。以下、符号化される際のマクロブロックのブロックサイズは、マクロブロック設定部５２にて設定されたブロックサイズと同一の場合について説明する。これらフレーム画像のうち、Ｉピクチャは、後述するイントラ予測部７４においてフレーム内の画素情報からマクロブロック内の画素が予測され、予測画素と実際の画素（現画素）の差分データが直交変換部６６へ出力される。
【００３８】
また、画像フレームがＢピクチャ又はＰピクチャは、後述するインター予測部７６において算出される予測画像と現画像との差分データが直交変換部６６へ出力される。
【００３９】
この画像符号化回路３３は、減算部６５、直交変換部６６、量子化部６７、エントロピー符号化部６８、逆量子化部６９、逆直交変換部７０、加算部７１、ループフィルタ７２、フレームメモリ７３、イントラ予測部７４、動き検出部７５、インター予測部７６及びスイッチ７７を備えている。
【００４０】
上述したように、減算部６５は、入力される動画像データから予測画像データを減算した差分データを直交変換部６６に出力する。直交変換部６６は、マクロブロック毎に離散コサイン変換（ＤＣＴ）などの直交変換を行い、入力される差分データを周波数成分に変換し、量子化部６７へ与える。量子化部６７は、変換された周波数成分データを量子化する。量子化部６７において量子化した動画像データは、エントロピー符号化部６８及び逆量子化部６９へ出力される。
【００４１】
エントロピー符号化部６８は、量子化した画像データを可変長符号化もしくは算術符号化し、符号化結果としての画像データ（符号化データ）を出力する。逆量子化部６９は、量子化部６７で量子化した動画像データを逆量子化し、周波数成分に復号化する。逆直交変換部７０は、複合化した動画像データを逆直交変換し、予測誤差画像データに復号する。
【００４２】
加算部７１は、ＰピクチャもしくはＢピクチャの予測誤差画像データが出力された場合に、予測誤差画像データとインター予測部７６からの予測画像データとを加算する。この加算により、フレーム画像が再生成される。
【００４３】
ループフィルタ７２は、再生成されたフレーム画像に対するブロック歪みを除去し、該フレームメモリ７３に格納する。この画像は、参照画像データとして使用される。
【００４４】
イントラ予測部７４は、フレームメモリ７３に保存された参照画像データを用いてフレーム内予測処理を行い、予測画像データを生成する。なお、このフレーム内予測処理は、周知であることからその詳細は省略する。
【００４５】
インター予測部７５は、フレームメモリ７３に保存された参照画像データを用いて、動き検出部７６によって検出された動きベクトルに基づいたフレーム間予測処理を行い、予測画像データを生成する。なお、このフレーム間予測処理については、周知であることから、ここでは、その詳細を省略する。
【００４６】
動き検出部７６は、入力された動画像データにおける動きベクトルを検出し、検出した動きベクトルをインター予測部７５とエントロピー符号化部６８へ出力する。この動き検出部７６には、動画像データが入力される他、マクロブロック設定部５２によって設定されたブロック設定情報が入力される。
【００４７】
動き検出部７６は、ブロック設定情報に基づいて入力された動画像データを分割する。そして、動き検出部７６は、参照画像データをフレームメモリ７３から読み出し、該参照画像データと入力された動画像データとを用いた相関演算を行って動きベクトルを求める。なお、相関演算としては、周知のブロックマッチングが用いられる。動きベクトルを求めた後、動き検出部７６は、求めた動きベクトルと使用された参照画像が入力画像に対して前方の画像であるか、後方の画像であるか、その前後の画像であるかを示す参照方向情報をインター予測部７５に出力する。この動き検出部７６によって検出された動きベクトルを用いて、インター予測部７５によるフレーム間予測処理が実行される。
【００４８】
スイッチ７７は、マクロブロック単位でフレーム内予測処理、またはフレーム間予測処理のどちらを用いるか選択するための選択部として機能する。イントラ予測部７４からの出力とインター予測部７５からの出力の一方を選択して、選択された予測画像データを減算器６５、加算部７１へ出力する。
【００４９】
図６は、動画像撮影の際のデジタルカメラ１０の内部の処理の流れを示すフローチャートである。
【００５０】
ステップＳ１０１は、動画像を取得する処理である。動画像撮影を行うと、所定時間毎に撮像素子２１からアナログの画像信号が出力される。このアナログの画像信号は、ＡＦＥ回路２３及びＤＦＥ回路２４を経ることにより、デジタルの画像信号に変換され、バッファメモリ３１に記憶される。
【００５１】
ステップＳ１０２は、画像処理である。画像処理については、周知であることから、ここでは、その詳細を省略する。この画像処理が施された画像データは、バッファメモリ３１に記録される。
【００５２】
ステップＳ１０３は、オブジェクト検出を行う処理である。ＣＰＵ４１は、バッファメモリ３１に記録された画像データを読み出してオブジェクト検出を実行する。このオブジェクト検出によりオブジェクトが検出されることにより、オブジェクト領域に含まれる画素のアドレスデータが内蔵メモリ４２に記録される。これにより、例えば人物を被写体とした場合には、人物の顔全体をオブジェクトとして認識する他に、顔を構成する目や口の領域もオブジェクトとして認識される（図２参照）。
【００５３】
ステップＳ１０４は、ブロックサイズを設定する処理である。ステップＳ１０３の処理によって、画像中のオブジェクトが検出されている。ＣＰＵ４１は、内蔵メモリ４２から、画素のアドレスデータを参照して、対応する画像を分割する際に用いるブロックサイズを設定する。
【００５４】
まず、フレーム画像ＦＩを、１６×１６画素のマクロブロック６１に分割する。ステップＳ１０３において、オブジェクトとして顔や、目、口が検出された場合、ＣＰＵは、顔の境界となる画素のアドレスデータを内蔵メモリ４２から読み出す。これにより、顔の境界となる画素６１ａ〜６１ｊが含まれるマクロブロックが特定される。このうち、マクロブロック６１〜６１ｊとなる領域（図５で示す領域Ｂ１）に対しては、１６×１６画素ではなく、８×１６画素のマクロブロック６３に設定する。同様にして、マクロブロック６１ａ〜６１ｄ（図５で示す領域Ｂ２）に対しては、１６×１６画素ではなく、１６×８画素のマクロブロック６４に設定する。
【００５５】
また、顔の内側の領域に対しては、目、口などのオブジェクトが検出されることから、この領域は、オブジェクトが集まっている領域であることから、ブロックサイズを大きくすると、これらオブジェクトに対する動きベクトルを精度良く検出することができない。このため、この領域に対しては、上述した１６×１６画素、８×１６画素或いは１６×８画素のいずれのブロックサイズではなく、８×８画素のマクロブロック６２が設定される。このようにして、フレーム画像ＦＩを分割するときに用いられるマクロブロックがそれぞれ設定される。
【００５６】
ステップＳ１０５は、符号化処理である。この符号化処理は、周知の符号化処理が実行されるため、ここでは詳細を省略する。例えば画像符号化回路３３は、フレーム画像に基づいた予測処理を実行する。実行される予測処理がインター予測処理であれば、動き検出部７６による動きベクトルの検出処理が実行される。動き検出部７６においては、ブロックサイズ設定部５２よって設定されたマクロブロックを用いて分割した画像データと、フレームメモリ７３に記憶された参照画像データとを用いた相関演算（ブロックマッチング）が実行される。なお、上述したように、動き検出部７６においては、分割されたマクロブロックごとに合わせた動き検出が実行される。つまり、オブジェクトが複数検出されれば、検出されたオブジェクトの大きさや他のオブジェクトとの相対位置などに基づいて、マクロブロックの大きさが設定されるので、検出されたオブジェクトに対する動きベクトルを高精度に検出することができる。
【００５７】
また、従来では、予測処理としてインター予測処理を実行する場合、動き検出においては、ブロックサイズを変えながらブロックマッチングを複数回行い、最も評価値の高くなる場合の動きベクトルを検出していることから、動きベクトルを検出する処理の処理時間が長くなる。しかしながら、本実施形態においては、予め画像からオブジェクトを検出し、検出されたオブジェクトに合わせてブロックサイズを設定することで、マクロブロックのブロックサイズを変更する必要はなく、また、動き検出における処理時間を短縮することができる。
【００５８】
また、本実施形態では、フレーム画像から検出されるオブジェクトの大きさに合わせたマクロブロックが用いることで、動き検出を高精度に実行できることから、オブジェクトの領域に対する圧縮率と他の領域に対する圧縮率とを変えなくとも画質の向上を図ることが可能となる。また、フレーム画像をオブジェクトに合わせたブロックサイズで分割することから、マクロブロックのブロックサイズとして、大きいブロックサイズを用いた場合に生じるオブジェクトのボケの発生を抑止することができる。
【００５９】
本実施形態では、マクロブロック設定部５２は、オブジェクト領域を異なる３種類のマクロブロックを用いてフレーム画像を分割しているが、これに限定されるものではなく、長手方向が、オブジェクトの長手方向と同一方向となるマクロブロックを用いてもよいし、オブジェクトの長手方向と直交する方向のマクロブロックを用いることも可能である。例えば、例えばＸ方向を長手方向となるオブジェクト７１の場合には、１６×８画素のマクロブロック６４（図８参照）や８×１６画素のマクロブロック６３（図９参照）を用いればよい。
【００６０】
例えば圧縮率を高く設定した場合には、フレーム画像ＦＩ内の高周波成分がカットされることから、画像中のオブジェクトはボケてしまう。このオブジェクトのボケを効果的に防止する場合には、８×１６画素のマクロブロック６３を用いずに、１６×８画素のマクロブロック６４が設定すればよい。また、逆に、Ｙ方向が長手方向となるオブジェクトの場合には、同様の理由から、８×１６画素のマクロブロック６３を用いればよい。
【００６１】
本実施形態では、画像処理回路３２と、画像符号化回路３３とを異なる装置として記載しているが、画像符号化回路３３の機能を有する画像処理回路３２を予め設けることができれば、これらを別々に設ける必要はない。
【００６２】
本実施形態では、マクロブロックのブロックサイズとして、１６×１６画素、８×８画素、８×１６画素、１６×８画素の４種類について記載しているが、Ｈ．２６４／ＡＶＣ規格の場合には、これらブロックサイズの他に、４×４画素、４×８画素、８×４画素のブロックサイズを用いることができる。
【００６３】
本実施形態では、オブジェクト検出にて検出されるオブジェクトとして、人物の顔、目、鼻、口、眉などの顔を構成するパーツとしているが、この他に、自動車、自転車、電車、飛行機、船などの輸送機器の場合が挙げられることから、オブジェクトとしては、人物の顔に限定されるものではない。
【００６４】
本実施形態では、デジタルカメラを例に説明したが、これに限定される必要はなく、例えば、カメラ機能を有する携帯型電話機、携帯型ゲーム端末機などの携帯型端末機に、本発明を用いることが可能である。また、図１のオブジェクト検出部５１、マクロブロック設定部５２や、図６の画像符号化回路３３の機能を備えた画像処理装置や画像符号化装置であってもよい。さらに、図１のオブジェクト検出部５１、マクロブロック設定部５２や画像符号化回路３３の機能をコンピュータに実行させることが可能な符号化プログラムであってもよい。この符号化プログラムは、メモリカード、磁気ディスク、光学ディスクなどの、コンピュータが読み取り可能な記憶媒体に記憶されていることが好ましい。
【符号の説明】
【００６５】
１０…デジタルカメラ、２１…撮像素子、３１…バッファメモリ、３２…画像処理回路、３３…画像符号化回路、３５…記憶媒体、４１…ＣＰＵ、４２…内蔵メモリ、５１…オブジェクト検出部、５２…マクロブロック設定部、７４…イントラ予測部、７５…インター予測部、７６…動き検出部
【図１】
2010233186.tif 000003
【図２】
2010233186.tif 000004
【図３】
2010233186.tif 000005
【図４】
2010233186.tif 000006
【図５】
2010233186.tif 000007
【図６】
2010233186.tif 000008
【図７】
2010233186.tif 000009
【図８】
2010233186.tif 000010
【図９】
2010233186.tif 000011