(57)【要約】【課題】動きベクトルを用いて補間フレームを生成する場合、当該画像中に柵や格子などの繰り返し模様を有する被写体が存在するとき、動きベクトルを誤って算出する可能性が高くなり、適切な補間フレームが得られないことがある。【解決手段】画像処理部１６０は、第１および第２のフレームの少なくとも一方に繰り返しパターンが存在するか否かを検出する繰り返しパターン検出部３０１と、繰り返しパターン検出部の検出結果に応じた探索範囲において第１および第２のフレーム間でマッチングを行うことによって動きベクトルを算出する動きベクトル算出部３０２と、動きベクトルの算出結果に従って、補間フレームを生成する補間画像生成部３０３とを備える。【選択図】図２
2013165483.tif 000002
【特許請求の範囲】
【請求項１】
動画像の連続する第１のフレームおよび第２のフレームの間に挿入する補間フレームを生成する画像処理装置であって、
前記第１および第２のフレームの少なくとも一方に繰り返しパターンが存在するか否かを検出する繰り返しパターン検出部と、
前記繰り返しパターン検出部の検出結果に応じた探索範囲において前記第１および第２のフレーム間でマッチングを行うことによって動きベクトルを算出する動きベクトル算出部と、
前記動きベクトルの算出結果に従って、前記補間フレームを生成する補間フレーム生成部と
を備えた画像処理装置。
【請求項２】
前記繰り返しパターン検出部の検出結果が前記第１および第２のフレームの少なくとも一方に前記繰り返しパターンが存在することを示す場合、前記動きベクトル算出部は第１の探索範囲を前記探索範囲として設定し、前記繰り返しパターン検出部の検出結果が前記第１および第２のフレームのいずれにも前記繰り返しパターンが存在しないことを示す場合、前記動きベクトル算出部は前記第１の探索範囲とは異なる第２の探索範囲を前記探索範囲として設定する、請求項１に記載の画像処理装置。
【請求項３】
前記繰り返しパターン検出部は、さらに、前記繰り返しパターンの検出結果に応じて繰り返し周期を検出し、
前記第１の探索範囲は、パターンが繰り返される第１の方向における繰り返し周期以下になるように決定される、請求項２に記載の画像処理装置。
【請求項４】
前記動きベクトルの探索範囲を示す情報を保持する記憶部をさらに備え、
前記第２の探索範囲は前記情報に基づいて設定される、請求項３に記載の画像処理装置。
【請求項５】
前記動きベクトル算出部は、さらに、前記繰り返しパターンの前記第１の方向とは異なる第２の方向における繰り返し周期以下になるように前記探索範囲を限定し、前記動きベクトルを算出する、請求項３に記載の画像処理装置。
【請求項６】
前記第１の方向は各フレームが示す画像の水平方向であり、前記第２の方向は各フレームが示す画像の垂直方向である、請求項５に記載の画像処理装置。
【請求項７】
前記動きベクトル算出部は、前記第１および第２のフレームを複数の部分に分割し、分割した部分ごとに前記第１および第２のフレーム間でマッチングを行うことによって前記部分ごとに前記動きベクトルを算出し、
前記補間フレーム生成部は、前記部分ごとに算出された前記動きベクトルに従って、前記補間フレームを生成する、請求項１から６のいずれかに記載の画像処理装置。
【請求項８】
請求項１から７のいずれかに記載の画像処理装置と、
撮像によって前記第１および第２のフレームを含む動画像のデータを生成する撮像部と、
を備える撮像装置。
【請求項９】
動画像の連続する第１のフレームおよび第２のフレームの間に挿入する補間フレームを生成する画像処理装置において用いられるコンピュータプログラムであって、前記画像処理装置のコンピュータに、
前記第１および第２のフレームの少なくとも一方に繰り返しパターンが存在するか否かを検出するステップと、
前記繰り返しパターン検出部の検出結果に応じた探索範囲において前記第１および第２のフレーム間でマッチングを行うことによって動きベクトルを算出するステップと、
前記動きベクトルの算出結果に従って、前記補間フレームを生成するステップと
を実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、撮影によって取得された動画像のフレームレートを変換することが可能な画像処理装置に関する。
【背景技術】
【０００２】
特許文献１は画像処理装置を開示する。この画像処理装置は、複数のフレーム画像間に挿入する補間フレーム画像を生成する。特許文献１の画像処理装置は、複数のフレーム画像の各フレーム内の画素値の変化に基づいて、補間フレーム画像に含まれる補間画素の動きベクトルの探索範囲を算出し、算出した探索範囲内において推定した動きベクトルに基づいて、補間フレーム画像を生成する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−１７７７３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
動きベクトルを用いて補間フレームを生成する場合、画像中に柵や格子などの繰り返し模様を有する被写体が存在するとき、動きベクトルを誤って算出する可能性が高くなり、適切な補間フレームが得られないことがある。
【０００５】
本開示は、動画像中に繰り返し模様を有する被写体が存在するときにおいても、より適切な補間フレームを生成することができる画像処理技術を提供する。
【課題を解決するための手段】
【０００６】
本開示の一実施形態に係る画像処理装置は、動画像の連続する第１のフレームおよび第２のフレームの間に挿入する補間フレームを生成する。画像処理装置は、第１および第２のフレームの少なくとも一方に繰り返しパターンが存在するか否かを検出する繰り返しパターン検出部と、繰り返しパターン検出部の検出結果に応じた探索範囲において第１および第２のフレーム間でマッチングを行うことによって動きベクトルを算出する動きベクトル算出部と、動きベクトルの算出結果に従って、補間フレームを生成する補間フレーム生成部とを備える。
【発明の効果】
【０００７】
本開示の技術によれば、動画像中に繰り返し模様を有する被写体が存在するときにおいても、より適切な補間フレームを作成することができる。
【図面の簡単な説明】
【０００８】
【図１】例示的な実施の形態１にかかるデジタルビデオカメラの構成を示すブロック図である。
【図２】例示的な実施の形態１にかかるデジタルビデオカメラの画像処理部の構成を示す図である。
【図３】例示的な実施の形態１にかかるデジタルビデオカメラの画像処理部による動作を示すフローチャートである。
【図４Ａ】繰り返しパターンの検出のために、１つのフレームが複数のマクロブロックに分割されて処理されることを示す図である。
【図４Ｂ】１つのマクロブロックが水平方向にシフトしながら水平方向の繰り返しパターンを検出する動作を示す図である。
【図４Ｃ】１つのマクロブロックのシフト量に対する差分評価値（ＳＡＤ）の関係を示す図である。
【図５Ａ】水平方向の繰り返しパターンの例を示す図である。
【図５Ｂ】垂直方向の繰り返しパターンの例を示す図である。
【図５Ｃ】水平方向および垂直方向の繰り返しパターンの例を示す図である。
【図５Ｄ】斜め方向の繰り返しパターンの例を示す図である。
【図６Ａ】繰り返しパターンを有する第１のフレームの例を示す図である。
【図６Ｂ】繰り返しパターンを有する第２のフレームの第１の探索範囲の例を示す図である。
【図６Ｃ】繰り返しパターンを有する第２のフレームの第２の探索範囲の例を示す図である。
【図７Ａ】繰り返しパターンを有さない第１のフレームの例を示す図である。
【図７Ｂ】繰り返しパターンを有さない第２のフレームの例を示す図である。
【発明を実施するための形態】
【０００９】
以下、適宜図面を参照しながら、実施の形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。
【００１０】
なお、発明者は、当業者が本開示を十分に理解するために添付図面および以下の説明を提供するのであって、これらによって特許請求の範囲に記載の主題を限定することを意図するものではない。
【００１１】
（実施の形態１）
以下、図面を参照しながら、本開示の技術をデジタルビデオカメラに適用した実施の形態１を説明する。以下の説明において、動画像を構成する個々の静止画像を示すデータを「フレーム画像」または単に「フレーム」と称する。また、連続する２つのフレームの間に挿入するフレームを「補間フレーム画像」または単に「補間フレーム」と称する。
【００１２】
［１−１．概要］
本実施の形態のデジタルビデオカメラ１００は動画像を撮影できる撮像装置である。本実施の形態のデジタルビデオカメラ１００は、動画像の撮影のときまたは撮影後に、フレームレートを変換することができる。本実施の形態のデジタルビデオカメラ１００は、撮影により得られた連続するフレーム画像間に、補間フレーム画像を挿入することにより、フレームレートを変更する。例えば、毎秒６０フレームの動画撮影を行っている状態から、フレーム間に補間フレーム画像を挿入することによって毎秒１２０フレームの動画撮影へと切り替えることができる。デジタルビデオカメラ１００が、フレームレートを切り替えるタイミングは、ユーザによるフレームレート変更の指示があったときでもよいし、撮影によって取得した画像（以下、「撮影画像」と称する。）から得られる情報（輝度情報など）が変更されたときであってもよいし、所定のモード（低速撮影モードなど）が選択されたときでもよい。
【００１３】
以下、図を参照しながら、本実施の形態にかかるデジタルカメラ１００の構成および動作を説明する。
【００１４】
［１−２．デジタルビデオカメラの構成］
まず、図１を参照して、本実施の形態にかかるデジタルビデオカメラの構成を説明する。図１は、デジタルビデオカメラ１００の構成を示すブロック図である。デジタルビデオカメラ１００は、１又は２以上のレンズを含む光学系１１０により形成された被写体像をＣＭＯＳイメージセンサ１４０によって撮像する。ＣＭＯＳイメージセンサ１４０により生成された画像データは、画像処理部１６０において各種処理が行われ、メモリカード２００に格納される。以下、デジタルビデオカメラ１００の構成を詳細に説明する。
【００１５】
光学系１１０は、ズームレンズやフォーカスレンズを含む複数のレンズ群を有する。ズームレンズを光軸に沿って移動させることにより、被写体像の拡大、縮小をすることができる。また、フォーカスレンズを光軸に沿って移動させることにより、被写体像のピントを調整することができる。なお、図１には３つのレンズが例示されているが、光学系１１０を構成するレンズの数は要求される機能に応じて適宜決定される。
【００１６】
レンズ駆動部１２０は、光学系１１０に含まれる各種レンズを駆動する。レンズ駆動部１２０は、例えばズームレンズを駆動するズームモータや、フォーカスレンズを駆動するフォーカスモータを含む。
【００１７】
絞り２５０は、使用者の設定に応じて若しくは自動で、開口部の大きさを調整し、透過する光の量を調整する。
【００１８】
シャッタ１３０は、ＣＭＯＳイメージセンサ１４０に入射させる光を遮光する。
【００１９】
ＣＭＯＳイメージセンサ１４０は、光学系１１０で形成された被写体像を撮像して、画像データを生成する。ＣＭＯＳイメージセンサ１４０は、露光、転送、電子シャッタなどの各種動作を行う。ＣＭＯＳイメージセンサ１４０は、一定時間ごとに新しい画像データを生成する。
【００２０】
Ａ／Ｄコンバータ（ＡＤＣ）１５０は、ＣＭＯＳイメージセンサ１４０により生成されたアナログ画像データをデジタル画像データに変換する回路である。
【００２１】
本実施形態では、光学系１１０、絞り２５０、シャッタ１３０、ＣＭＯＳセンサ１４０、ＡＤＣ１５０を含む複数の要素が、撮像部４００を構成している。撮像部４００により、連続する複数のフレームを含むデジタル動画像データが生成され、出力される。
【００２２】
画像処理部１６０は、ＣＭＯＳイメージセンサ１４０によって生成された画像データに各種処理を行い、表示モニタ２２０に表示するための画像データや、メモリード２００に格納するための画像データを生成する。例えば、画像処理部１６０は、ＣＭＯＳイメージセンサ１４０により生成された画像データに、ガンマ補正、ホワイトバランス補正、傷補正などの各種処理を行う。また、画像処理部１６０は、ＣＭＯＳイメージセンサ１４０により生成された画像データを、Ｈ．２６４規格やＭＰＥＧ２規格等に準拠した圧縮形式等により圧縮する。画像処理部１６０は、例えばデジタルシグナルプロセッサ（ＤＳＰ）やマイクロコンピュータ（マイコン）などにより実現可能である。
【００２３】
画像処理部１６０は、ＣＭＯＳイメージセンサ１４０により生成される画像データ（フレーム）に基づいて、動きベクトルを算出することができる。そして、画像処理部１６０は、算出した動きベクトルと、当該動きベクトルに関連するフレーム画像とに基づいて、動き補償による補間フレーム画像を生成することができる。または、画像処理部１６０は、動き補償によらず、関連する複数のフレーム画像を所定の比率で足し合わせて平均化することにより補間フレームを生成することができる。補間フレームの生成処理の詳細については後述する。
【００２４】
コントローラ１８０は、デジタルカメラ全体を制御する。コントローラ１８０は、半導体素子などにより実現可能である。コントローラ１８０は、ハードウェアのみで構成してもよいし、ハードウェアとソフトウェアとを組み合わせることにより実現してもよい。コントローラ１８０は、例えばマイコンなどにより実現できる。あるいは、画像処理部１６０等とともに１つの半導体チップにより実現してもよい。
【００２５】
バッファ１７０は、画像処理部１６０及びコントローラ１８０のワークメモリとして機能する。バッファ１７０は、例えば、ＤＲＡＭ、強誘電体メモリなどにより実現できる。
【００２６】
カードスロット１９０は、メモリカード２００を装着することが可能であり、機械的及び電気的にメモリカード２００と接続可能である。メモリカード２００は、フラッシュメモリや強誘電体メモリなどを内部に含み、画像処理部１６０により生成された画像ファイル等のデータを格納することが可能である。
【００２７】
内部メモリ２３０は、例えば、フラッシュメモリや強誘電体メモリである。内部メモリ２３０は、デジタルビデオカメラ１００全体を制御するための制御プログラム等を記憶している。制御プログラムは、コントローラ１８０によって実行される。
【００２８】
操作部材２１０は、使用者からの操作を受け付けるユーザーインターフェースの総称である。操作部材２１０は、例えば、使用者からの操作を受け付ける十字キーや決定釦等を含む。
【００２９】
表示モニタ２２０は、ＣＭＯＳイメージセンサ１４０によって生成された画像データが示す画像（スルー画像）や、メモリカード２００から読み出した画像データが示す画像を表示することが可能である。また、表示モニタ２２０は、デジタルビデオカメラ１００の各種設定を行うための各種メニュー画面等も表示することが可能である。
【００３０】
ジャイロセンサ２４０は、デジタルビデオカメラ１００の単位時間あたりの角度変化すなわち角速度に基づいてヨーイング方向のぶれ・ピッチング方向の動きを検出する。ジャイロセンサ２４０は、検出した動きの量を示すジャイロ信号をコントローラ１８０に出力する。
【００３１】
なお、上記の構成はあくまでも一例であり、画像処理部１６０が後述する動作を実行するように構成されている限り、デジタルビデオカメラ１００はどのように構成されていてもよい。
【００３２】
［１−３．動作］
続いて、本実施の形態にかかるデジタルビデオカメラ１００の動作を説明する。本実施の形態にかかるデジタルビデオカメラ１００は、時間的に連続している第１のフレームおよび第２のフレームから、第１のフレームと第２のフレームとの間に挿入する補間フレームを作成する機能を備えている。図２は、本実施の形態にかかるデジタルビデオカメラ１００の上記動作を実現するための画像処理部１６０の構成を示すブロック図である。
【００３３】
画像処理部１６０は、撮像部４００から出力された動画像データを受け取る画像入力部３００と、動画像データを構成する各フレームに繰り返しパターンが含まれているか否かを検出する繰り返しパターン検出部３０１と、連続する２つのフレーム間の動きベクトルを算出する動きベクトル算出部３０２と、２つのフレーム間に挿入する補間フレームを生成する補間画像生成部３０３と、補間フレームが挿入された動画像データを外部に出力する画像出力部３０４と各種情報を保持する内部メモリ３０５とを備えている。これらの各要素は、物理的に分離された個々の回路ブロックから実現されていてもよいし、各要素の処理を規定するプログラムを画像処理部１６０に実装されたプロセッサが実行することによって実現されていてもよい。以降、「繰り返しパターン」を「繰り返し模様」と称する場合がある。
【００３４】
繰り返しパターン検出部３０１は、各フレームが示す画像中に繰り返しパターンが含まれているか否かを検出し、繰り返しパターンが含まれている場合、その繰り返し周期を測定する。動きベクトル算出部３０２は、連続する第１および第２のフレーム間でマッチングを行うことにより、動きベクトルを算出する。補間画像生成部３０３は、算出した動きベクトルに従って補間フレームを生成する。
【００３５】
以下、デジタルビデオカメラ１００の撮影時の動作を説明する。
【００３６】
電源がＯＮされると、コントローラ１８０は、デジタルビデオカメラ１００を構成する各部に電力を供給する。デジタルビデオカメラ１００は、ユーザの操作等により、撮影モードと、再生モードとを切り替えることができる。電力が供給された後、撮影モードに設定されていれば、コントローラ１８０は、光学系１１０やＣＭＯＳイメージセンサ１４０などを初期化して、撮影可能な状態にセットアップする。撮影可能な状態へのセットアップが完了すると、コントローラ１８０は、ＣＭＯＳイメージセンサ１４０が撮影し、Ａ／Ｄコンバータ１５０によってデジタル信号に変換された画像信号をスルー画像として表示可能な信号に変換するように画像処理部１６０に指示し、生成されたスルー画像を表示モニタ２２０に表示するように制御する。表示モニタ２２０に表示されたスルー画像を見ることにより、ユーザは撮影中の画角や被写体などを確認することができる。ユーザは、任意のタイミングで、動画記録釦（操作部材２１０の一つ）を押下することにより、コントローラ１８０に動画像の記録指示を行うことができる。コントローラ１８０は、動画像の記録指示を受け付けると、ＣＯＭＳイメージセンサ１４０が撮影している画像を、所定の規格に準拠した形式により動画像として処理し、処理後の動画像データのメモリカード２００への記録を開始する。一方、ユーザは、動画記録中の任意のタイミングで、動画記録釦を押下することにより、コントローラ１８０に動画像の記録終了指示を行うことができる。
【００３７】
デジタルビデオカメラ１００は、動画記録中において、撮影する動画像のフレームレートを変更することができる。フレームレートが変更されるタイミングは、例えば、ユーザによる指示があったとき、撮影画像から得られる情報（輝度情報など）が変更されたとき、所定のモード（低速撮影モードなど）が選択されたとき等であり得る。或いは、予めフレームレートの変更を行うように設定しておいてもよい。
【００３８】
画像処理部１６０は、フレームレートの変更を要する場合、フレーム画像間に挿入する補間フレーム画像を生成する。以下、画像処理部１６０による補間フレーム画像を生成する処理を説明する。
【００３９】
図３は、画像処理部１６０が実行する補間フレーム画像の生成処理を示すフローチャートである。画像入力部３００は、まず、撮像部４００から出力されるフレーム画像を順次取得する（ステップＳ３０１）。画像入力部３００が取得したフレーム画像は、繰り返しパターン検出部３０１、動きベクトル算出部３０２、画像出力部３０４へと送られる。
【００４０】
繰り返しパターン検出部３０１は、画像入力部３００から順次入力される個々のフレーム画像について、そのフレーム画像中に含まれる被写体に柵や格子、チェック模様などの繰り返し模様が存在するか否かを検出する。また、繰り返しパターン検出部３０１は、繰り返し模様の幅（繰り返し周期）を検出する（ステップＳ３０２）。繰り返しパターン検出処理および繰返し周期検出処理の詳細は後述する。繰り返しパターンの有無および繰返し周期を示す情報は、動きベクトル算出部３０２に送られる。
【００４１】
動きベクトル算出部３０２は、繰り返しパターン検出部３０１の繰り返しパターンの有無を示す情報から、動きベクトルの探索範囲を決定する（ステップＳ３０３）。繰り返しパターン検出部３０１からの情報が繰り返しパターンが存在することを示す場合、動きベクトル算出部３０２は、連続する第１および第２のフレーム間の被写体の動きベクトルの探索範囲として第１の探索範囲を設定する（ステップＳ３０４）。繰り返しパターン検出部３０１からの情報が繰り返しパターンが存在しないことを示す場合、動きベクトル算出部３０２は、連続する第１および第２のフレーム間の被写体の動きベクトルの探索範囲として第１の探索範囲とは異なる第２の探索範囲を設定する（ステップＳ３０５）。なお、第１の探索範囲および第２の探索範囲の詳細は後述する。
【００４２】
後述する処理により、第１の探索範囲または第２の探索範囲において、画像入力部３００から順次入力されるフレーム中の連続する２つのフレーム間の動きベクトルを順次算出する（ステップＳ３０６）。算出された動きベクトルを示す情報は、補間画像生成部３０３に送られる。
【００４３】
続いて、補間画像生成部３０３は、動きベクトルの算出結果に従って、補間フレームを生成する（ステップＳ３０７）。最後に、画像出力部３０４は、補間フレームを連続する２つのフレームの間に挿入して画像処理部１６０の外部に出力する（ステップＳ３０８）。
【００４４】
以下、各処理を具体的に説明する。
【００４５】
図４Ａ〜４Ｃは、繰り返しパターン検出部３０１による、繰り返し模様の存在の検出、および繰り返し周期の検出の具体例を説明するための図である。図４Ａに示すように、繰り返しパターン検出部３０１に入力された個々のフレーム４０は、例えば１６画素×１６画素のマクロブロック４２の単位で処理が行なわれる。繰り返しパターン検出部３０１は、図４Ｂに示すように、フレーム画像を構成するマクロブロック４２のそれぞれについて、水平方向に画素をずらした同じく１６画素×１６画素のブロックとの差分を比較することにより、水平方向の繰り返し模様を検出する。ここで差分は、ＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）や、ＳＳＤ（Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｄｉｆｆｅｒｅｎｃｅ）といった評価関数によって評価される。図示していないが、繰り返しパターン検出部３０１は、フレーム画像を構成するマクロブロックのそれぞれについて、垂直方向に画素をずらした同じく１６画素×１６画素のブロックとの差分を比較することにより、垂直方向の繰り返し模様を検出する。図４Ｃは、あるマクロブロックについて、水平方向に画素をずらしたときの差分（ＳＡＤ）の一例をプロットした図である。現在処理対象としているフレームに繰り返し模様が存在する場合、図４Ｃに示すように、極大値と極小値を有する波形のＳＡＤのプロットが得られる。繰り返し検出部３０２は、処理対象としているマクロブロックの中心位置から、ＳＡＤが極小値をとる画素位置との距離（単位：画素）を繰り返し模様の幅（繰り返し周期）として検出する。一方、現在処理対象としているフレームに繰り返し模様が存在しない場合、図４Ｃに示すような、極大値や極小値を有するＳＡＤの波形は得られない。すなわち、繰り返しパターン検出部３０１は、図４Ｃに示すような、極大値や極小値を有するＳＡＤの波形が得られるか否かにより、処理対象のフレームが示す画像中に繰り返し模様が存在するか否かを検出する。
【００４６】
なお、本明細書における「繰り返しパターン」とは、画像の中のある部分の単位パターンが、一方向に一定の周期で連続するパターンを意味する。ここで、「画像の中のある部分のパターン」とは、画像中の一部の領域に含まれる複数の画素の画素値（輝度値または特定の色成分の値）によって特定されるパターンを指す。より具体的には、画像中の一部の領域に含まれる複数の画素によって規定されるブロックと、そこから１つの方向にある距離だけ変位したブロックとの間で、ＳＡＤやＳＳＤなどの評価値を求めたとき、変位量に対する評価値の変化を示す波形が少なくとも１つの極大値および極小値を有するパターンが「繰り返しパターン」である。ここで、「極大値」は、あらゆる極大値を意味するのではなく、極大値のうち、所定の基準値を上回るもののみを意味する。同様に、「極小値」は、あらゆる極小値を意味するのではなく、極小値のうち、所定の基準値を下回るもののみを意味する。極大値および極小値の基準値は、要求される性能に応じて適宜決定される。極小値についての所定の基準値は、“０”に近い値に設定され得るが、必ずしも“０”である必要はない。
【００４７】
図５Ａ〜５Ｄは、繰返し周期が検出される場合の具体例を示す図である。図５Ａは、水平方向に連続する繰り返しパターンを有する被写体（例えば柵）がフレームに存在する場合の例を示している。この例では、マクロブロックを水平方向に移動させながらＳＡＤ等の評価関数を計算することにより、図４Ｃに類似する評価関数の波形が得られる。図５Ａでは、実線で表されているマクロブロックの位置を基準として、点線で表されているマクロブロックの位置までずらしたときに、差分の極小値が得られる。この場合、そのずれ量が水平方向の繰り返し周期として検出される。
【００４８】
図５Ｂは、垂直方向に連続する繰り返しパターンを有する被写体がフレームに存在する場合の例を示している。この例では、マクロブロックを垂直方向に移動させながらＳＡＤ等の評価関数を計算することにより、図４Ｃに類似する評価関数の波形が得られる。図５Ｂでも、実線で表されているマクロブロックの位置を基準として、点線で表されているマクロブロックの位置までずらしたときに、差分の極小値が得られる。この場合、そのずれ量が垂直方向の繰り返し周期として検出される。
【００４９】
図５Ｃは、水平方向および垂直方向に連続する繰り返しパターン（例えばチェック模様）を有する被写体がフレームに存在する場合の例を示している。この例では、マクロブロックを水平方向および垂直方向に移動させながらＳＡＤ等の評価関数を計算することにより、図４Ｃに類似する評価関数の波形が、水平方向および垂直方向の両方について得られる。図５Ｃでも、実線で表されているマクロブロックの位置を基準として、点線で表されているマクロブロックの位置までずらしたときに、差分の極小値が得られる。この場合、それらのずれ量が水平方向および垂直方向の繰り返し周期として検出される。
【００５０】
図５Ｄは、斜め方向に連続する繰り返しパターンを有する被写体がフレームに存在する場合の例を示している。この例でも、マクロブロックを水平方向および垂直方向に移動させながらＳＡＤ等の評価関数を計算することにより、図４Ｃに類似する評価関数の波形が、水平方向および垂直方向の両方について得られる。図５Ｄでも、実線で表されているマクロブロックの位置を基準として、点線で表されているマクロブロックの位置までずらしたときに、差分の極小値が得られる。この場合、それらのずれ量が水平方向および垂直方向の繰り返し周期として検出される。
【００５１】
続いて、動きベクトル算出部３０２による動きベクトルの探索および算出動作の具体例を説明する。動きベクトル算出部３０２は、画像入力部３００から、時間的に連続した複数フレームを取得する。動きベクトル算出部３０２は、時間的に連続した第１および第２のフレームに関して、例えば１６画素×１６画素のマクロブロック単位で動きベクトルの方向および大きさを検出する。具体的には、時間的に連続した第１および第２のフレームのうち、一方のフレーム内のあるマクロブロックと、このマクロブロックに対応する他方のフレーム内の画素位置から、図３で言及した第１の探索範囲または第２の探索範囲で、水平方向および垂直方向に画素をずらした同じく１６画素×１６画素のブロックとを比較し、その差分（例えばＳＡＤ）を順次計算する。
【００５２】
評価関数としてＳＡＤを用いる場合、画像上の座標（ｘ，ｙ）における動きベクトル（ｄｘ（ｘ，ｙ），ｄｙ（ｘ，ｙ））は、以下の式１で表される評価関数Ｐ１（ｘ，ｙ，ｄｘ，ｄｙ）を最小にするｄｘ，ｄｙを求めることによって決定される。ここで、画像の水平方向（ｘ方向）および垂直方向（ｙ方向）についてのマクロブロックのサイズ（画素数に換算された値）を、それぞれＢｘ、Ｂｙとする。また、比較対象の２つのフレームのうち、先のフレームの画素値（輝度値または特定の色成分の値）をＬ１、後のフレームの画素値をＬ２とする。
【数１】
2013165483.tif 000003
【００５３】
一方、評価関数としてＳＳＤを用いる場合、画像上の座標（ｘ，ｙ）における動きベクトル（ｄｘ（ｘ，ｙ），ｄｙ（ｘ，ｙ））は、以下の式２で表される評価関数Ｐ２（ｘ，ｙ，ｄｘ，ｄｙ）を最小にするｄｘ，ｄｙを求めることによって決定される。
【数２】
2013165483.tif 000004
【００５４】
動きベクトル算出部３０２は、式１、２で表されるような評価関数を用いることにより、動きベクトル（ｄｘ（ｘ，ｙ），ｄｙ（ｘ，ｙ））をマクロブロックごとに計算することができる。
【００５５】
ここで、第１の探索範囲および第２の探索範囲の詳細を説明する。
【００５６】
まず、第１の探索範囲を説明する。第１の探索範囲とは、フレーム画像中に繰り返しパターンが存在する場合に設定される動きベクトルの探索範囲である。第１の探索範囲は、パターンが繰り返される第１の方向（例えば画像の水平方向）における繰り返し周期以下になるように設定される。第１の探索範囲は、パターンが繰り返される第１の方向とは異なる第２の方向（例えば画像の垂直方向）における繰り返し周期以下になるようにさらに限定されてもよい。例えば、画像の水平方向の繰り返し周期が３０画素、画像の垂直方向の繰り返し周期が４０画素であるような場合、第１の探索範囲は、画像の水平方向においては２０画素、画像の垂直方向においては３０画素となる。
【００５７】
繰り返しパターン検出部３０１の検出結果が第１および第２のフレームの少なくとも一方に繰り返しパターンが存在することを示す場合、動きベクトル算出部３０２は第１の探索範囲を動きベクトルの探索範囲として設定し、設定した探索範囲において動きベクトルの探索および算出を行う。
【００５８】
図６Ａおよび６Ｂを参照しながら、第１の探索範囲における動きベクトルの探索を説明する。図６Ａは、水平方向の繰り返し周期が６４画素である繰り返しパターンを有する第１のフレームの例を示す。図６Ｂは、第１のフレームに続く第２のフレームの例を示す。第２のフレームの画像は第１のフレームの画像と比べて、画像の水平方向に３２画素（すなわち半周期）右にシフトしている。図６Ｂに示すように、第１のフレームのマクロブロック６２の画素位置に対応する、第２のフレームの破線で示す領域６３からマクロブロックを画像の水平方向にずらしながら、動きベクトル算出部３０２はパターンマッチングを行う。第１の探索範囲として、繰り返しパターンの周期と同じ６４画素が設定されている。第１の探索範囲内では、図６Ｂの実線で示す領域６４においてパターンが一致し、ＳＡＤが最少となる。図６Ｂの矢印６５が動きベクトルを示し、動きベクトルの大きさは３２画素、動きベクトルの方向は水平方向の右向きとなる。このように、フレーム画像中に繰り返しパターンが存在する場合、動きベクトルの探索範囲が繰り返しパターンの周期以下であれば、確実に動きベクトルを探索して算出できる。
【００５９】
ここで、フレーム画像中に繰り返しパターンが存在する場合、動きベクトルの探索範囲を繰り返しパターンの周期以下になるように限定する理由を説明する。フレームに柵や格子などの繰り返し模様が存在する場合、動きベクトルの探索範囲内に、ＳＡＤが最小となるフレーム内の画素位置が複数個存在する可能性が高く、正しい動きベクトルを算出することが困難であるためである。具体的に図６Ｃを参照しながら説明する。図６Ｃは、図６Ａに示す繰り返し周期が６４画素である繰り返しパターンを有する第１のフレームに続く第２のフレームの動きベクトルの探索範囲を、繰り返しパターンの周期以下になるように限定しない例を示す。第２のフレームの画像は第１のフレームの画像と比べて、画像の水平方向に３２画素（すなわち半周期）シフトしている。図６Ｃに示す動きベクトルの探索範囲は３マクロブロック（４８画素に相当）である。このような探索範囲では、実線の領域６４および６６においてパターンが一致し、ＳＡＤが最小となり、ＳＡＤが最小となるフレーム内の画素位置が２カ所に存在することになる。これは、動きベクトルの探索範囲がフレーム内の繰り返しパターンの繰り返し周期以下になるように限定されていないためである。
【００６０】
本実施の形態のデジタルビデオカメラ１００では、図６Ｂに示すとおり、繰り返しパターン検出部３０１の検出結果が、フレームに繰り返し模様が存在していることを示している場合は、動きベクトル算出部３０２は、少なくともパターンの繰り返しが発生している方向に関しては、繰り返しパターン検出部３０１が検出した繰り返し周期以下になるように探索範囲を設定する。これにより、動きベクトル算出部３０２は、繰り返し模様の周期の範囲内において動きベクトルを探索するので、動きベクトルの探索範囲内にＳＡＤが最小となるフレーム内の画素位置が複数個存在する可能性が低くなり、より正確な動きベクトルを算出することが可能となる。
【００６１】
次に、第２の探索範囲を説明する。第２の探索範囲とは、フレーム画像中に繰り返しパターンが存在しない場合に設定される動きベクトルの探索範囲である。内部メモリ３０５は、動きベクトルの探索範囲を示す情報を予め保持している。本実施の形態では、動きベクトルの所定の探索範囲として、例えば画像の水平方向の左右にそれぞれ３マクロブロック、画像の垂直方向の上下にそれぞれ２マクロブロックを示す情報が内部メモリ３０５に保持されている。第２の探索範囲は、内部メモリ３０５に保持されている動きベクトルの探索範囲を示す情報に基づいて設定される。
【００６２】
繰り返しパターン検出部３０１の検出結果が第１および第２のフレームのいずれにも繰り返しパターンが存在しないことを示す場合、動きベクトル算出部３０２は、第２の探索範囲を動きベクトルの探索範囲として設定し、設定した探索範囲において動きベクトルの探索および算出を行う。
【００６３】
図７Ａおよび７Ｂを参照しながら、第２の探索範囲における動きベクトルの探索を説明する。図７Ａは、繰り返しパターンを有さない第１のフレームの例を示す。図７Ｂは、第１のフレームに続く第２のフレームの例を示す。第２のフレームの画像は第１のフレームの画像と比べて、画像の水平方向に３２画素シフトしている。図７Ｂに示すように、第１のフレームのマクロブロック７０の画素位置に対応する、第２のフレームの破線で示す領域７１からマクロブロックを画像の水平方向にずらしながら、動きベクトル算出部３０２はパターンマッチングを行う。内部メモリ３０５には、画像の水平方向の探索範囲として３マクロブロックを示す情報が保持されている。したがって、水平方向の第２の探索範囲は３マクロブロックが設定される。第２の探索範囲内では、図７Ｂの実線で示す領域７２においてパターンが一致し、ＳＡＤが最少となる。図７Ｂの矢印７３が動きベクトルを示し、動きベクトルの大きさは３２画素、動きベクトルの方向は水平方向の右向きとなる。
【００６４】
なお、本実施の形態では、動きベクトルの所定の探索範囲はマクロブロック単位で決定したが、本開示はこれに限定されない。すなわち、動きベクトルの所定の探索範囲は画素単位で決定してもよいし、動きベクトルの探索範囲は特に限定しなくてもよい。ただし、動きベクトルの探索範囲を限定した場合は、探索範囲を特に限定しない場合と比べて、所定の探索範囲においてより高速に動きベクトルを探索して算出できる。
【００６５】
動きベクトル算出部３０２の動作をまとめると、以下のようになる。動きベクトル算出部３０２は、第１の探索範囲または第２の探索範囲において画素を除々にずらしながら差分を算出する。そして、処理対象のマクロブロックの中心位置に対応する画素から、この差分が最小となった画素の位置までの距離および方向（水平成分および垂直成分）を特定する。以上の処理により、動きベクトル算出部３０２は、繰り返しパターン検出部３０１の検出結果に応じた探索範囲において第１および第２のフレーム間でマッチングを行うことによって動きベクトルを算出する。
【００６６】
再び図２を参照する。図２に示すように、動きベクトル算出部３０２は、画像入力部３００から取得した、時間的に連続した複数フレーム画像と、検出した動きベクトルとを、補間画像生成部３０３に送る。動きベクトル算出部３０２は、処理対象としたフレームを構成するマクロブロックのそれぞれについて検出した動きベクトルを、補間画像生成部３０３に送る。
【００６７】
補間画像生成部３０３は、時間的に連続した第１および第２のフレームの一方から、検出された動きベクトルに従って、動きベクトルの中間の位置へと、動きベクトルを算出した際に処理対象としたマクロブロックが示す画像をシフトさせる（動き補償補間）。補間画像生成部３０３は、フレームを構成するすべてのマクロブロックについて、同様の動き補償補間を行うことにより、時間的に連続した第１および第２のフレーム間に挿入する補間フレーム画像を生成する。なお、補間フレーム画像は、動きベクトルに基づいて生成される連続する２つのフレームの過渡状態を示すフレームであれば、必ずしも中間状態のフレームである必要はない。
【００６８】
補間画像生成部３０３は、生成した補間フレーム画像を画像出力部３０４へと送る。画像出力部３０４は、補間フレーム画像を、時間的に連続した対応するフレーム画像間（第１および第２のフレーム間）に順次挿入し、出力する。以上の処理により、画像処理部１６０は、フレームレートを変更した動画像を出力することができる。
【００６９】
［１−４．効果等］
以上のように、本実施の形態においては、画像処理部１６０は、第１および第２のフレームの少なくとも一方に繰り返しパターンが存在するか否かを検出する繰り返しパターン検出部３０１と、繰り返しパターン検出部３０１の検出結果に応じた探索範囲（第１の探索範囲および第１の探索範囲とは異なる第２の探索範囲）において第１および第２のフレーム間でマッチングを行うことによって動きベクトルを算出する動きベクトル算出部３０２と、動きベクトルの算出結果に従って、補間フレームを生成する補間画像生成部３０３とを備える。これにより、フレームに繰り返しパターンが存在する場合とフレームに繰り返しパターンが存在しない場合とで探索範囲を切り替え、正しい動きベクトルを算出することができる。従って、フレームレートを高フレームレートに変更したとしても、より画質のよい動画像を表示モニタに表示させることができる。
【００７０】
また、繰り返しパターン検出部３０１は、さらに、繰り返しパターンの検出結果に応じて繰り返し周期を検出する。第１の探索範囲はパターンが繰り返される第１の方向（例えば、画像の水平方向および／または垂直方向）における繰り返し周期以下になるように決定される。これにより、繰り返しパターンの周期の範囲内において動きベクトルを探索するため、動きベクトルの誤検出が低減されて、正確な動きベクトルを算出することができる。
【００７１】
また、画像処理部１６０は、動きベクトルの探索範囲を示す情報を保持する内部メモリ３０５をさらに備える。第２の探索範囲は内部メモリ３０５に保持されている情報に基づいて設定される。
【００７２】
また、動きベクトル算出部３０２は、さらに、パターンが繰り返される第１の方向（例えば画像の水平方向）とは異なる第２の方向（例えば画像の垂直方向）における繰り返し周期以下になるように探索範囲を限定し、動きベクトルを算出する。これにより、画像の水平方向および垂直方向における繰り返しパターンの周期の範囲内において動きベクトルを探索するため、動きベクトルの誤検出がより低減されて、より正確な動きベクトルを算出することができる。
【００７３】
また、動きベクトル算出部３０２は、第１および第２のフレームを複数の部分に分割し、分割した部分ごとに第１および第２のフレーム間でマッチングを行うことによって部分ごとに動きベクトルを算出する。また、補間画像生成部３０３は、部分ごとに算出された動きベクトルに従って、補間フレームを生成する。これにより、フレームの部分ごとに被写体の動きを反映した補間処理が可能であり、より適切な補間フレームを生成することができる。
【００７４】
（他の実施の形態）
以上のように、本出願において開示する技術の例示として、実施の形態１を説明した。しかしながら、本開示における技術は、これに限定されず、適宜、変更、置き換え、付加、省略などを行った実施の形態にも適用可能である。また、上記実施の形態１で説明した各構成要素を組み合わせて、新たな実施の形態とすることも可能である。
【００７５】
そこで、以下、他の実施の形態を例示する。
【００７６】
上記の実施の形態では、撮像手段として、ＣＭＯＳイメージセンサ１４０を例示したが、撮像手段はこれに限定されない。例えば、撮像手段を、ＣＣＤイメージセンサやＮＭＯＳイメージセンサによって構成してもよい。
【００７７】
また、画像処理部１６０とコントローラ１８０とは、１つの半導体チップによって構成してもよく、また、それぞれ別々の半導体チップによって構成してもよい。
【００７８】
上記実施の形態では、繰り返しパターン検出を、マクロブロックの画素をずらして差分（ＳＡＤ）を取る手法により行なったが、本開示の技術はこれに限定されない。これ以外の方法であっても、繰り返し模様の有無と、繰り返し幅が検出できる手法であれば、同様に適用可能である。
【００７９】
上記の実施の形態では、繰り返しパターン検出部３０１は、水平方向および垂直方向についての繰り返しパターンを検出したが、この例に限定されない。例えば、水平方向および垂直方向の一方や、斜め方向についての繰り返しパターンを検出するように構成されていてもよい。
【００８０】
以上の実施の形態では、本開示の技術をデジタルビデオカメラ１００（撮像装置）に適用した例を示した。しかし、本開示の技術は、撮像装置に限らず、例えば上記の画像処理部１６０の機能を有する画像処理装置に適用することもできる。そのような画像処理装置の構成は、例えば図２に示す構成と同様であり、その動作は、例えば図３に示す動作と同様である。画像処理装置は、例えばビデオカメラによって生成され、記録媒体に記録された動画像のデータを事後的に取得し、上述の処理によって補間フレームを挿入して他の動画像データとして記録することもできる。
【００８１】
また、以上の実施の形態では、補間画像生成部３０３は、時間的に連続した第１および第２のフレームから第１および第２のフレーム間に挿入する補間フレームを生成したが、本開示はこれに限定されない。補間画像生成部３０３は、時間的に連続した複数のフレーム、例えば時間的に連続した第１、第２、第３および第４のフレームから、第２および第３のフレーム間に挿入する補間フレームを生成してもよい。
【００８２】
また、本開示の技術はさらに、上述の補間フレーム生成処理を規定するソフトウェア（プログラム）にも適用され得る。そのようなプログラムに規定される動作は、例えば図３に示すとおりである。このようなプログラムは、可搬型の記録媒体に記録されて提供され得る他、電気通信回線を通じても提供され得る。コンピュータに内蔵されたプロセッサがこのようなプログラムを実行することにより、上記の実施形態で説明した各種動作を実現することができる。
【００８３】
以上のように、本開示における技術の例示として、実施の形態を説明した。そのために、添付図面および詳細な説明を提供した。
【００８４】
したがって、添付図面および詳細な説明に記載された構成要素の中には、課題解決のために必須な構成要素だけでなく、上記技術を例示するために、課題解決のためには必須でない構成要素も含まれ得る。そのため、それらの必須ではない構成要素が添付図面や詳細な説明に記載されていることをもって、直ちに、それらの必須ではない構成要素が必須であるとの認定をするべきではない。
【００８５】
また、上述の実施の形態は、本開示における技術を例示するためのものであるから、特許請求の範囲またはその均等の範囲において種々の変更、置き換え、付加、省略などを行うことができる。
【産業上の利用可能性】
【００８６】
本開示は、デジタルビデオカメラ１００への適用に限定されない。すなわち、デジタルスチルカメラや、カメラ付き情報端末など、フレームレートが変換可能な画像処理装置に適用可能である。
【符号の説明】
【００８７】
１００        デジタルビデオカメラ
１１０        光学系
１２０        レンズ駆動部
１３０        シャッタ
１４０        ＣＭＯＳイメージセンサ
１５０        Ａ／Ｄコンバータ
１６０        画像処理部
１７０        バッファ
１８０        コントローラ
１９０        カードスロット
２００        メモリカード
２１０        操作部材
２２０        表示モニタ
２３０        内部メモリ
２４０        ジャイロセンサ
３００        画像入力部
３０１        繰り返しパターン検出部
３０２        動きベクトル算出部
３０３        補間画像生成部
３０４        画像出力部
３０５        内部メモリ
４００        撮像部
【図１】
2013165483.tif 000005
【図２】
2013165483.tif 000006
【図３】
2013165483.tif 000007
【図４Ａ】
2013165483.tif 000008
【図４Ｂ】
2013165483.tif 000009
【図４Ｃ】
2013165483.tif 000010
【図５Ａ】
2013165483.tif 000011
【図５Ｂ】
2013165483.tif 000012
【図５Ｃ】
2013165483.tif 000013
【図５Ｄ】
2013165483.tif 000014
【図６Ａ】
2013165483.tif 000015
【図６Ｂ】
2013165483.tif 000016
【図６Ｃ】
2013165483.tif 000017
【図７Ａ】
2013165483.tif 000018
【図７Ｂ】
2013165483.tif 000019