(57)【特許請求の範囲】
【請求項１】
任意の情景を動画として撮影する撮像手段と、ディスプレイとを有する画像合成装置であって、
上記撮像手段で撮影された動画を構成する画像列に含まれる画像の水平及び垂直方向の画素の投影分布を作成する作成手段と、
上記投影分布を用いて上記画像間のズーム率を検出するズーム率検出手段と、
上記画像を上記ズーム率に応じてスケーリングする手段を有し、
上記ディスプレイには、上記スケーリングされた画像を上書き合成した高解像度画像が表示されることを特徴とする画像合成装置。
【請求項２】
上記手段に加えてさらに、書き込みと読み出しと消去が可能な画像蓄積手段を有し、上記高解像度画像、上記ズーム率及び上記動画を上記画像蓄積手段に格納することを特徴とする請求項１記載の画像合成装置。
【請求項３】
上記ディスプレイは上記撮像された動画よりも高精細であることを特徴とする請求項１または２記載の画像合成装置。
【請求項４】
ＣＰＵと記憶手段を備え、撮像手段に接続された装置内で、
上記ＣＰＵに、
上記撮像手段で撮像された一連の画像列の入力を受けるステップと、
上記画像列に含まれる画像水平及び垂直方向の画素の投影分布を作成するステップと、
上記投影分布をもとに上記画像間のズーム率を検出するステップと、
上記ズーム率に応じて、上記画像列の画像を逐次拡大または縮小して上書き合成するステップと、
上記合成した画像をディスプレイに表示させるステップを有することを特徴とする画像合成方法を実行させるプログラムを記録した記録媒体。
【請求項５】
上記ズーム率を検出するステップは、
上記画像列に含まれる第一の画像の上記投影分布について複数のズーム率を想定して拡大もしくは縮小した複数の仮の投影分布を作成するステップと、
上記複数の仮の投影分布と上記第一の画像に隣接する第二の画像の上記投影分布とを照合するステップと、
上記複数の仮の投影分布のズーム率のうち上記照合の誤差が最小の第一のズーム率を求めるステップと、
上記水平方向の投影分布及び上記垂直方向の投影分布のそれぞれについて求めた上記第一のズーム率の間の整合性を判定するステップと、
上記判定の結果をもとに上記第一の画像と上記第二の画像との間のズーム率を設定するステップとからなることを特徴とする請求項４記載の画像合成方法を上記ＣＰＵに実行させるプログラムを記録した記録媒体。
【請求項６】
上記ズーム率を検出するステップは、
上記第二の画像の投影分布について複数のズーム率を想定して拡大もしくは縮小した複数の仮の投影分布を作成するステップと、
上記複数の仮の投影分布と上記第一の画像の投影分布とを照合して、上記複数の仮の投影分布のズーム率のうち上記照合の誤差が最小の第二のズーム率を求めるステップと、
上記水平方向の投影分布及び上記垂直方向の投影分布のそれぞれについて求めた上記第二のズーム率の間の整合性を判定するステップと、
上記判定の結果をもとに上記第一の画像と上記第二の画像との間のズーム率を設定するステップと、
上記第一のズーム率をもとに求めた上記ズーム率および上記第二のズーム率をもとに求めた上記ズーム率のいずれか照合誤差の小さい方を上記第一の画像と上記第二の画像の間のズーム率として設定するステップとからなることを特徴とする請求項５記載の画像合成方法を上記ＣＰＵに実行させるプログラムを記録した記録媒体。
【請求項７】
上記投影分布は、上記画像を構成する画素の輝度値を上記画像の底辺に対して水平もしくは垂直方向に積分した結果を積分した個数で正規化した結果であることを特徴とする請求項５または６記載画像合成方法を上記ＣＰＵに実行させるプログラムを記録した記録媒体。
【請求項８】
上記照合誤差は、２つの上記投影分布の対応する要素間の差分の絶対値の総和であることを特徴とする請求項５乃至７のいずれかに記載の画像合成方法を上記ＣＰＵに実行させるプログラムを記録した記録媒体。
【請求項９】
上記２つのズーム率の整合性を判定するステップは、
上記水平方向の投影分布から求めたズーム率及び上記垂直方向の投影分布から求めたズーム率をズームイン、ズームアウト、スティルの３種類のいずれかに分類するステップと、上記分類の結果が異なる場合は上記第一の画像と上記第二の画像の間のズーム率を１に設定するステップと、
上記分類の結果が同じ場合は上記照合誤差の小さい方のズーム率を上記第一の画像と上記第二の画像の間のズーム率とするステップとからなることを特徴とする請求項５乃至８のいずれかに記載の画像合成方法を上記ＣＰＵに実行させるプログラムを記録した記録媒体。
【請求項１０】
上記ステップに加えてさらに、
上記水平方向もしくは垂直方向の投影分布の投影位置を１次元とし、時間経過を１次元とする２次元の空間に、上記投影分布の値を上記各投影位置における濃度としてディスプレイに表示させるステップを有することを特徴とする請求項５乃至９のいずれかに記載の画像合成方法を上記ＣＰＵに実行させるプログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、広角かつ解像度の高い静止画を得ることが可能なデジタルカメラに係り、特にカメラのズーミング操作によって撮影された映像から、広角かつ高解像度の静止画を得ることが可能な超解像カメラに関する。
【０００２】
【従来の技術】
近年、情報収集ツールとして、多種類のデジタルカメラが販売されている。技術的には携帯重視、機能重視、画質重視の観点から様々な工夫が施されている。撮影した画像はデジタル画像であるため、直接的にコンピュータに入力して、送信したり、インターネットのホームページに掲載したり、プリントしたりするのが簡単にできる。このため、デジタルカメラは急速に普及し続けている。
【０００３】
しかしながら、現在のデジタルカメラは画質が従来の銀塩カメラに比べ、大幅に劣る。現状の平均的なデジタルカメラの解像度、すなわち３２０画素×２４０画素程度では、視野角を大きくして撮影すると、画像の内容把握に支障をきたす場合がある。そのため、広角で撮影しても高解像度の静止画を得るデジタルカメラの出現が望まれる。
【０００４】
従来、複数の画像を用いて解像度の高い画像を得る方法として、LaureTedosic他の“Salliant Video Still : Content and Context Preserved”（ACM Multimedia 93 pp.39-46）がある。これはカメラ操作のモデルとしてアフィン変換を想定し、６つのパラメータを連続する画像間の局所的な動きベクトル群から算出し、複数の画像から１枚の広角で高解像度な画像を合成する。
【０００５】
また、動画像の符号化分野ではスプライトと呼ぶ広い視野の静止画を生成する方法として、秦泉寺他の「スプライト生成におけるアライメントに関する一考察」（電子情報通信学会  信学技法  IE97-81(1997)）pp.19-24がある。これはカメラ操作のモデルとして、ヘルマート変換を想定し、カメラのパン、チルト、ズーム、ローテートパラメータを求めて、複数の画像から１枚の広視野の画像を合成する。各パラメータは、前述の方法と同様に連続する画像間の局所的な動きベクトル群から算出する。
【０００６】
【発明が解決しようとする課題】
従来技術で広角で高解像度の静止画を生成する手法は、いずれも、連続する画像間の局所的な動きベクトルを求める必要がある。動きベクトルを求めるためには、画像中の数百箇所以上で、１６画素×１６画素程度のサイズのブロックマッチングによる探索処理が必要となるため、計算量が膨大になるという問題がある。また、局所的な動きベクトルに基づきカメラワークパラメータを推定するため、画面中に動く物体が存在すると誤差の要因になりやすいという問題もある。したがって、従来の方式をデジタルカメラに適用して、高解像度の画像を生成するのは困難であった。従来技術では、カメラワークパラメータ検出のリアルタイム化や一般的な映像を対象とした時の検出性能のロバスト化などが実用上の課題として残っている。
【０００７】
本発明が解決しようとする課題は、広い視野角でかつ高い分解能で撮影したのと同様の広角・高解像度の静止画を、低コスト、ロバストかつリアルタイムに生成するカメラを提供することにある。
【０００８】
【課題を解決するための手段】
上記課題を解決するため、任意の情景を動画として撮影する撮像系と、動画の録画開始から終了までの指示を受ける操作入力手段と、ディスプレイとを有するカメラにおいて、撮像系で撮影された動画を構成する画像列に含まれる画像間でのズーム率を検出するズーム率検出手段を備え、ディスプレイには、ズーム率検出手段により検出したズーム率に応じて、画像列の画像を逐次拡大または縮小して上書き合成した高解像度画像が表示されるようにする。
【０００９】
【発明の実施の形態】
以下、本発明の一実施例を詳細に説明する。
【００１０】
図１は、本発明を実現するための超解像カメラのシステム構成図の一例である。本システム構成は、現在汎用的に用いられているデジタルコンピュータ、特にノート型パソコンのシステム構成に、撮影のためのレンズをはじめとする光学系１００や撮影した映像を圧縮伸張するためのデバイス１０４と１０６、映像を外部に出力するためのアナログ出力１２４などを備えたものに相当する。このシステム構成を１つの筺体にコンパクトにまとめた実施態様を図２に示す。
【００１１】
光学系１００は、撮影しようとする風景や人物などが撮像素子に正しく焦点を結ぶように調節する。この光学系には、ズームアップ撮影を行うための倍率調整機構も含まれる。どれだけのズーム倍率に設定したかなどの操作情報は、ＣＰＵ１１２にも伝えられる。ファインダ１０１は光学的に像を表示する。撮像素子１０２は、光電変換を行って撮影対象を電気的な信号に変える。画像圧縮エンコーダ１０４は、撮像素子１０２で得られた電気信号を一枚の画像として取り込み、ＭＰＥＧに代表される画像圧縮方法を用いてデータ量を削減するとともに、補助記憶装置１１０に格納する。こうした画像の取り込みを、秒３０回程度の頻度で繰り返すことで、連続的な動画として補助記憶装置に格納できる。静止画が必要な場合は、シャッターが押された瞬間の画像を１枚だけ格納するようにすればよい。
【００１２】
音声は、マイク１２６とＡ／Ｄコンバータ１２８によって取り込み、動画と対応づけて補助記憶装置１１０に格納することができる。補助記憶装置１１０は、ハードディスク等の大容量記録装置であり、デジタルデータを半永久的に記録するための装置である。例えば、ＰＣＭＣＩＡ方式のハードディスクカードのように記憶装置ごと本体から着脱できるタイプの記録装置または、光磁気ディスク等のように記録媒体のみを着脱できるタイプの記録装置として構成できる。ＣＰＵ１１２は、録画処理をスタート／ストップするなどの制御をはじめ、本発明で説明する機能を実現するためのソフトウエアプログラムを実行する。プログラムはメモリ１１４に常駐し、プログラムの実行に必要となる各種の変数の値やデータ類も必要に応じて格納される。
【００１３】
ビデオメモリ１１６は、ディスプレイ１２０に表示される画像をデジタルデータとして格納している。Ｄ／Ａコンバータ１１８は、一般にＲＡＭＤＡＣと呼ばれている種類のＤ／Ａコンバータであり、ビデオメモリ１１６に書かれたデータを走査線スピードに合わせて逐次読みとり、ディスプレイ１２０に描画する。この種類のＤ／Ａコンバータは、ビデオメモリ１１６のデータを更新すると、その更新内容がディスプレイ１２０の表示内容に直ちに反映される。また、画像圧縮エンコーダ１０４に入力される撮影中の画像を、画像圧縮機能をバイパスして、ビデオメモリ１１６に直接書き込むことも可能である。ディスプレイ１２０は、画像を表示するためのデバイスであり、小型のＣＲＴやプラズマディスプレイであっても良く、液晶タイプの表示デバイスであっても良い。画像伸張デコーダ１０６は、補助記憶装置１１０に格納された圧縮された動画データを伸張し、画像としてビデオメモリ１１６上に展開する。
【００１４】
アナログ出力１２４は、伸張した画像を、ＮＴＳＣ方式をはじめとする、テレビ受像機に広く用いられているアナログ映像信号に変換して出力する。この出力を現在広く普及しているＶＨＳ方式などのビデオ機器に接続して記録することができる。また、音声も記録されている場合には、画像の伸張に同期させて、音声用Ｄ／Ａコンバータ１３２とスピーカー１３０によって音声出力することもできる。入力Ｉ／Ｆ１２３は、録画ボタンや再生ボタンなどのスイッチ類や、ディスプレイ１２０の表示面に貼られた透明なタッチパネルといった情報入力デバイスである。入力された情報はＣＰＵ１１２に伝えられ、適宜処理される。バス１０８は、以上の各デバイス間を相互につなぐデータバスである。
【００１５】
本発明のデジタルカメラは、撮像した画像系列をズームイン、ズームアウトのカメラ操作に応じて画像を合成する。メモリ１１４内に格納されたカメラ制御プログラムは、撮影区間の間、撮像された画像をメモリに取り込みながら画像をズーム率に合わせてスケーリングして合成し、逐次ビデオメモリ１１６に転送し、ディスプレイ１２０に超解像画像１２２を表示する。撮影が終了すると、超解像画像は補助記憶装置１１０に、画像データ構造体１１０−１として格納される。映像のヘッダー情報１１０−１−１は、画像圧縮の方式、画像の縦横のサイズといった伸張に必要な情報が含まれる。また、連続する画像間のズーム率も必要な情報として含んでもよい。有効フラグ１１０−１−２は、その画像が有効か無効かを示すフラグであり、簡易な画像編集の際に用いられる。画像データ量１１０−１−３は、このあとに続く画像データ１１０−１−４が何バイトあるのかを示す。これにより、画像の種類によって画像圧縮されたり、超解像画像のサイズが変化しても、画像データがどこに記録されているかが計算できる。
【００１６】
図２は、超解像カメラの外観ならびに画面表示の一実施例である。カメラ本体２００は、大きく光学系（レンズ部を含む）１００、ファインダ１０１、平面ディスプレイ１２０と操作ボタン類２０１〜２０５などから構成される。光学系１００で撮られた映像は、ファインダ１０１で確認できるとともに、ディスプレイ１２０には、そのままの画像、または画像を合成して得た超解像画像が表示され、撮像内容が確認できるようになっている。操作スイッチ２０１はズームを行うためのものである。操作スイッチ２０１は、シーソースイッチになっていて、一方に倒すと連続的にズームインされた望遠撮影になり、もう一方に倒すと逆にズームアウトした広角撮影になる。録画は、録画ボタン２０２を押すことででき、一度押すと録画が開始され、録画中にもう一度押すと録画が終了する。録画区間中にユーザが広角や望遠によって風景を撮影したときは、各画像列をスケーリングしながら合成した超解像画像をリアルタイムで作成し、ディスプレイ１２０上へ表示する。これにより画像の合成状況が即座に確認でき、撮影者の意図した超解像画像が確実に作成できる。もちろん、取り込んだ動画を一度、補助記憶装置１１０に記憶しておき、別途補助記憶装置から動画のクリップを読み出し、超解像画像を作成することもできる。
【００１７】
ここでボタン操作によって、格納された画像のプレイバックを指示すると、画面１２０に一覧表や個別の画像が表示される。ここで挙げたカメラの構成例では、２０３と２０４は汎用ボタンであり、カメラの各種の動作の決定に汎用的に用いられる。また、２０５はスクロールボタンで、撮影した多数の超解像画像を選択したり、ディスプレイ１２０上に表示しきれない超解像画像をスクロールするのに利用する。
【００１８】
録画された画像はアナログ出力１２４を介して、テレビ受像機に広く用いられているアナログ映像信号に変換して出力できる。また、コンピュータインタフェース２０６を介して、録画データを一般のコンピュータへ転送できる。このことにより本発明の超解像カメラが、情報取得ツールとしても利用可能となる。
【００１９】
図３は広角で高い解像度の静止画を作成する過程の説明図であり、図４を併用して説明する。録画ボタンが押されてから再度押されるまでの画像列が１２１である。カメラをズームアウトした広角の状態から中心の対象物にズームインしながら撮影すると、画像列１２１が得られる。図３の例では、録画開始時点では「全景」が映り、録画終了時点では「ヘリコプター」が映る。その間の画像は少しスケールが大きくなりながら変化する。ただし、この間の変化率は一定ではなく、ユーザのズーム操作の停止等により、画像スケールの変化率は変動しうる。このような状況下でも、画像間のズーム率に追従して画像列を適宜スケーリングして、全景も映った状態で、なおかつ目的とする対象物の詳細も識別できる高解像度の画像を合成し、超解像画像１２２を得る。そのため、図４に示すように、時間的に隣接した画像１２１−１、１２１−２との間で画像特徴量に基づく照合を行い、画像間のズーム率を求める（４００）。求めたズーム率に応じて、最新の画像をスケーリングし、超解像画像１２２−１に上書きする（４１０）。このような処理を録画中の全ての画像間で実行すると、超解像画像１２２が得られる。
【００２０】
なお、ズームイン操作で撮影した時の超解像画像生成過程を示したが、ズームアウト操作で撮影した場合も同様である。その場合は最新の画像をスケーリングして、超解像画像１２２−１に上書きする際、前画像からはみ出した領域に限定して上書きすれば良い（４１０）。ここで、画像のスケーリングは単純にスケールに応じて拡大または縮小する方式でよいが、このとき、周囲の４つの画素を参照して線形補間する方式を適用しても良い。線形補間する方式では、演算量が４倍に増える問題はあるが、超解像画像を拡大表示した時、画像のギザギザを目立たなくすることができる。
【００２１】
生成する超解像画像をリアルタイムに表示させる場合には、録画開始時のレンズ倍率に従って、録画開始時の第１枚目の画像をどのサイズでディスプレイに表示するかを予め設定しておくことが望ましい。ズームアウトしきった状態からズームインしながら撮影する場合、最初の１枚目の画像は十分大きなサイズで表示しても問題はないが、ズームインしきった状態からズームアウトしながら撮影する場合は、第１枚目の画像はズームアウト時しきった状態になってもディスプレィの画面からはみ出さない大きさで表示される必要がある。
【００２２】
図５にズーム率を検出する原理を示す。
【００２３】
まず、時刻Tiの画像１２１−１の水平投影分布５００および垂直投影分布５０１を作成する。水平投影分布５００は入力画像の各画素の輝度の値を水平方向に加算した結果を、画像の幅（ｗ）で正規化して作成する。一方、垂直投影分布５０１は入力画像の各画素の輝度の値を垂直方向に加算した結果を画像の高さ（Ｈ）で正規化して作成する。時刻Ti+1の画像１２１−２についても同様にして、水平投影分布５０２および垂直投影分布５０３を作成する。なお、輝度値に変えてＲＧＢのいずれかのスペクトルの強さやエッジ（変化点）の強度を使用してもよい。画像の特徴を示す値である限り、種々のパラメータを使用することができる。
【００２４】
次に、垂直投影分布（５０１、５０３）の照合によりズーム率を予測する。ズーム率の予測には前方予測（Ti→Ti+1）と後方予測（Ti+1→Ti）を行い、前方予測結果と後方予測結果のうち誤差の少ない方を垂直投影分布によるズーム率検出結果とする。前方予測では、時刻Tiの画像１２１−１の垂直投影分布５００から、複数の仮のズーム率を設定して、それらのズーム率での垂直投影分布（仮の垂直投影分布）を生成する。そして生成した仮の垂直投影分布と時刻Ti+1の画像１２１−２の垂直投影分布５０１とを照合する。仮のズーム率は、連続する画像間でのズーム率はその変動範囲が限られるため、想定される範囲で仮のズーム率を逐次設定し、照合の結果、誤差が最小となるときの仮のズーム率を垂直投影分布によるズーム率予測結果とする。ここで、「ズーム率」とは画像中の対象物（視野）の大きさが、前の画像に対して後の画像がどれだけ大きくなったかを表す比率のことと定義する。
【００２５】
図６に仮のズーム率を設定して、仮の投影分布を生成し、照合する様子を示す。仮の投影分布はもとの投影分布を１次元の投影軸方向にスケーリングすることにより生成する。また２つの投影分布間の照合における照合誤差として、各要素間での差分の絶対値の総和を利用する。これ以外にも、平均２乗誤差を利用しても良い。ズームの予測時に、このような（画像を直接スケーリングして照合するのではなく）画像の投影分布をスケーリングしての照合を行うことにより大幅な計算量の削減が達成される。その結果、100MIPS程度のＣＰＵ性能があれば、この処理は１秒間に３０回以上可能であり、ビデオレートのリアルタイム処理が実現できる。
【００２６】
このように、前方予測と後方予測の両方を行うのは、精度の高いズーム率検出を達成するためである。ズームアウト方向の予測精度は、ズームアウトすることによる新たな領域の画像部分が生じるため、照合結果が劣化する。両方の予測を行うことによって、前方予測もしくは後方予測のいずれか一方が見かけ上、ズームイン操作の画像列のごとく取り扱えるため、高い精度の予測、ユーザの任意のズーム操作に対して安定した精度での予測が行える。同様にして水平投影分布間の照合を行い、水平投影分布によるズーム率が予測される。
【００２７】
そして両者の予測したズーム率をそれぞれ３つに分類して、両者の分類が一致するかどうかを調べる。ズーム率が1.0であればスティル、ズーム率が1.0より大きければズームイン、ズーム率が1.0未満であればズームアウトである。もし、分類結果が不一致であれば、強制的にズーム率を1.0とし、ズーム操作は行われなかったと判定する。分類結果が一致すれば、照合誤差の小さい方のズーム率を、隣接する画像間のズーム率として採用する。
【００２８】
このように、垂直投影分布と水平投影分布の両方のズーム率の分類が一致することをズーム率検出の条件としたのは水平方向または垂直方向だけの対象物の移動によって、誤ってズームと判定しないようにするためである。例えば、両開きのドアが開閉した場合を撮影したような映像では、垂直投影分布からのズーム予測は「開」の場合ズームイン、「閉」の場合ズームアウトと判定される。しかし、水平投影分布からのズーム予測はスティルと判定されるため、このような状況でもスティルと正しく判定できる。
【００２９】
図８に本発明のカメラ制御プログラム１１４−１の一実施例として、録画中の超解像画像の生成処理を中心にフローチャートで示す。高解像画像の生成処理のほかにも、既存のデジタルカメラでの方式に従い、蓄積した画像の編集、検索、通信等の処理もできるのはもちろんである。カメラ制御プログラム１１４−１は図９に示す制御データ１１４−２を参照して、実行される。
【００３０】
ステップ８００は初期化処理であり、変数statusを０にリセットする。カメラの電源が入っている間（ステップ８０２）、以下の超解像画像生成処理を行う。まず、ステップ８０４で録画ボタン２０２が押されたかどうかをチェックする。
【００３１】
もしstatusが０で録画ボタンが押された場合は、録画開始処理８０８を実行する。ここでは、カメラのディスプレイ１２０に表示されていた以前の超解像画像を消去し、新しい超解像画像表示に備える。すなわち、SUPER_RESOLUTION_IMAGE_BUF（超解像画像バッファ）１１４−２−２（図９）を初期化する。次に、ステップ８１０で変数statusに１をセットし、録画状態とする。
【００３２】
一方、変数statusが１で録画ボタンが押された場合は、録画終了処理８１２を実行する。ここでは、録画中に作成した超解像画像の、ヘッダー情報や画像データ量および超解像画像を画像データ構造体１１０−１の所定の場所に書き込む。次に、ステップ８１４で変数statusを０にリセットし、録画停止状態とする。
【００３３】
ステップ８２０ではstatusが１かどうかチェックし、もし１であれば以下の処理を行う。ステップ８２２では撮像素子１０２、画像圧縮エンコーダ１０４を介して、画像を入力し、メモリ１１４上のIMAGE_BUF（画像バッファ）１１４−２−１に記憶し、フレーム番号を１つ更新する。次に、ステップ８２４において、IMAGE_BUF１１４−２−１に記憶された入力画像から垂直および水平方向の投影分布を計算する。以上の投影分布は、それぞれ、図９のX_PROJ_CURRENT（現在フレームの垂直投影分布配列）１１４−２−４およびY_PROJ_CURRENT（現在フレームの水平投影分布配列）１１４−２−６に格納される。この投影分布は次のフレームの入力まで保存されており、次のフレームの入力時に、それぞれ、X_PROJ_LAST（前フレームの垂直投影分布配列）１１４−２−３およびY_PROJ_LAST（前フレームの水平投影分布配列）１１４−２−５に移動させられる。さらに次のフレーム入力時には破棄される。
【００３４】
ステップ８２６では、一つ前のフレームの投影分布と現在のフレームの投影分布とを照合してズーム率を検出する。この処理の詳細は図１０を参照して後述する。ステップ８２８では、検出したズーム率に応じて、入力した画像をスケーリングし、SUPER_RESOLUTION_IMAGE_BUF１１４−２−２に上書きする。ステップ８３０でSUPER_RESOLUTION_IMAGE_BUF１１４−２−２の画像をビデオメモリ１１６に転送し、デイスプレイ１２０に超解像画像を表示する。この転送の際、ディスプレイの解像度にあわせて、SUPER_RESOLUTION_IMAGE_BUF１１４−２−２の内容を間引いて表示することもできる。解像度の高いディスプレイは一般にコスト高となるため、より解像度の低いディスプレイに対応する構成である。SUPER_RESOLUTION_IMAGE_BUF１１４−２−２の内容をそのまま保存しておくことにより、必要に応じて別の表示装置を介して高精細な表示や印刷が可能になる。
【００３５】
次に、本発明の超解像画像作成のための画像間のズーム率検出の一実施例を図１０を用いて説明する。
【００３６】
ステップ１０００では垂直投影分布からズーム率を検出して変数zoom_xに値をセットする。この処理の詳細は後で図１１を用いて説明する。次にステップ１１００で水平投影分布からズーム率を検出して変数zoom_yに値をセットする。
【００３７】
ステップ１２００では、両者の予測したズーム率を３つに分類して、分類結果が一致するかどうかを調べる。まず、どちらの分類結果もズームインであることを確認するための判定条件として、zoom_x、zoom_yが共に1.001より大きいことをチェックする。0.001が加算されているのは、スティル状態を誤ってズームとしないための許容誤差を与えたものである。画像のサイズやカメラ操作の速さなどに応じて許容誤差を与え、これにより対象物の移動等による画像変動によって生じる誤った判定が抑止される。次に、どちらの分類結果もズームアウトであることを確認するための判定条件として、zoom_x、zoom_yが共に0.999より小さいことをチェックする。上記いずれでもない場合はスティルと判定する。
【００３８】
ズームアウトまたはズームインと判定された場合は、zoom_xを検出したときの照合誤差minval_xとzoom_yを検出したときの照合誤差minval_yとを比較し、小さい方のズーム率を画像間のズーム率を示す変数zoomに設定する。これらはステップ１２０１から１２０６で行う。またスティルの場合、ステップ１２０７で変数zoomに1.0を設定する。
【００３９】
図１１は垂直投影分布からズーム率を検出する処理の詳細であり、図１２は水平投影分布からズーム率を検出する処理の詳細である。両者は水平投影分布から検出するか、垂直投影分布から検出するかの違いがあるだけで、処理内容は同じである。そこで、図１１について詳細に説明する。
【００４０】
ステップ１００１では前方予測時の照合誤差を記憶する変数minval_f_xを十分大きな値に設定する。ステップ１００２では、連続する画像間のズーム率はその変動範囲が限られるので、想定される範囲を変数iに設定する。この例では、視野のサイズが−１０画素から＋１０画素までの変動を想定している。
【００４１】
ステップ１００３では、X_PROJ_LAST１１４−２−３に格納された前フレームの投影分布から、視野のサイズがｉ画素分変動したときの投影分布を生成し、X_PROJ_WORK（仮の垂直投影分布配列）１１４−２−７に格納する。仮の投影分布の生成はもとの投影分布を１次元の投影軸の方向にスケーリングするだけであるので高速に計算できる。次に、X_PROJ_CURRENT１１４−２−６に格納された現在フレームの投影分布とX_PROJ_WORK１１４−２−７に格納された仮の投影分布との照合を行い、その時の照合誤差を変数ERRORに格納する。ステップ１００５でERRORとminval_f_xとの値を比較し、ERRORの方が小さいとき、そのときの変数iをmin_f_dxに代入するとともに、minval_f_xにERRORの値を代入する（ステップ１００６）。以上の処理を繰り返すことによって、変数min_f_dxには最もよく照合がとれた時のi、及びそのときの照合誤差（minval_f_x）が求まる。
【００４２】
ステップ１００７では、上記の変数min_f_dxの値を利用して、前方予測のズーム率を計算し、変数zoom_f_xに格納する。画像の幅をｗとすると、ズーム率は(ｗ＋min_f_dx) / wで計算できる。
【００４３】
同様に、ステップ１０１１で後方予測時の照合誤差を記憶する変数minval_b_xを十分大きな値に設定し、ステップ１０１２で想定される変動範囲を変数iに設定する。
【００４４】
ステップ１０１３では、X_PROJ_CURRENT１１４−２−４に格納された現フレームの投影分布から、視野のサイズがｉ画素分変動したときの投影分布を生成し、X_PROJ_WORK（仮の垂直投影分布配列）１１４−２−７に格納する。次にX_PROJ_LAST１１４−２−３に格納された前フレームの投影分布とX_PROJ_WORK１１４−２−７に格納された仮の投影分布との照合を行い、その時の照合誤差を変数ERRORに格納する。ステップ１０１５でERRORとminval_b_xとの値を比較し、ERRORの方が小さいとき、そのときの変数iをmin_b_dxに代入するとともに、minval_f_xにERRORの値を代入する（ステップ１０１６）。以上の処理を繰り返すことによって、変数min_b_dxには最もよく照合がとれた時のi、及びそのときの照合誤差（minval_b_x）が求まる。
【００４５】
ステップ１０２０では、上記の変数min_b_dxの値を利用して、後方予測のズーム率を計算し、変数zoom_b_xに格納する。ズーム率はw / (ｗ＋min_b_dx)で計算できる。
【００４６】
ステップ１０２１から１０２４では、照合誤差が一定の閾値よりも大きい場合はズーム検出の信頼性が悪いと判定し、zoom_f_xおよびzoom_b_xとを1.0に置き換える。
【００４７】
ステップ１０２５では、minval_f_xとminval_b_xとの値を比較し、ステップ１０２６またはステップ１０２７で、値の小さい方のズーム予測値を変数zoom_xに格納するとともにその時の照合誤差を変数minval_xに格納する。このzoom_xが垂直投影分布からのズーム検出結果となる。
【００４８】
図７は、ユーザのカメラ操作をディスプレイに表示するユーザインタフェース（画面表示）の一例である。垂直投影分布７００および水平投影分布７０１を、横軸に撮影時間、縦軸に投影位置として、時間推移で表示する。これは、図５に示される垂直投影分布５０１および水平投影分布５００の各配列の値を濃淡の階調に変換し、各フレームにつき縦に１ライン表示することにより得られる。図７に示されるパターンはカメラ操作がズームアウトした状態から撮影を開始して、ズームインしていったときの投影分布を時系列に並べた推移の例である。このような表示をディスプレィ１２０上に超解像画像と並べて表示することで、カメラ操作の時間的な状況がさらにユーザに理解しやすくなる。異なるカメラワークであれば異なったパターンが表れる。例えば、スティルであれば横軸に平行なパターンが、パンであれば横軸に一定の角度をもって傾斜したパターンが表れる。
【００４９】
なお、本実施態様ではズームイン、ズームアウトのカメラ操作を利用して、画面の中心になるほど高解像度の画像になる超高解像カメラを提供したが、カメラのパンやチルトの操作を併用することで画面の中心だけでなく着目する領域を狙って高解像の画像を生成することも可能である。例えば、図３のようにズームインした後にパン操作を行った場合、パン操作により得られる画像を時刻Teの画像に接続して上書きすることにより、より広い着目領域についての高解像画像を生成できる。
【００５０】
さらに、ズーム操作とともにパン操作を行った場合であっても、高解像の画像は生成可能である。この場合には、ズーム率の予測に加えて位置ずれの予測を行って超解像画像を生成する。
【００５１】
また、本実施の態様としては、図２に示すような一つの筺体に作りこまれたものに限られない。パーソナルコンピュータのようなデジタルコンピュータに、動画が撮影可能なビデオカメラを接続し、ビデオカメラから取り込んだ画像に対して以上のような処理を行い、ディジタルコンピュータのディスプレイ上に高解像画像を表示することが可能であることももちろんである。この場合、カメラ制御プログラム１１４−１に相当する超解像画像生成プログラムを記憶した磁気ディスク、光ディスク等の記録媒体あるいはディジタルコンピュータが接続されたネットワークを通じてディジタルコンピュータに供給され、ディジタルコンピュータは記録媒体より超解像画像生成プログラムをそのメインメモリに読み込む。このように、ディスプレイが撮像素子の解像度よりも高解像度である限りにおいて、本発明は種々変形した実施態様により実施される。
【００５２】
【発明の効果】
本発明によれば、広い視野角で、かつ注目する領域については高い分解能で撮影したのと同様の広角・高解像度の静止画を、低コストに、ロバストに、かつリアルタイムに生成できる超解像カメラが実現できる。さらに、超解像画像の作成状況はディスプレイ上で刻々と確認できるため、撮影の失敗を未然に防止できる。また、画像はコンピュータへ転送することができ、高精細プリンタや高精細ディスプレイにより高精細な画像として見ることが可能である。
【図面の簡単な説明】
【図１】本発明を実現するためのシステム構成図の一例である。
【図２】本発明の超解像カメラの外観を表す図の一例である。
【図３】超解像画像の作成過程の概念図である。
【図４】２枚の画像の合成例である。
【図５】本発明のズーム率自動検出原理を示す図である。
【図６】仮の投影分布と基準の投影分布との照合を示す図である。
【図７】投影分布の時空間画像の表示の一例である。
【図８】カメラ制御プログラムのフローチャートの一例である。
【図９】超解像画像生成のための制御データのデータ構造の一例である。
【図１０】超解像画像作成のための画像間のズーム率検出の一実施例である。
【図１１】垂直投影分布からズーム率を検出する処理のフローチャートの一例である。
【図１２】水平投影分布からズーム率を検出する処理のフローチャートの一例である。
【符号の説明】
１００…光学系、１０１…ファインダ、１０２…撮像素子、１０４…画像圧縮エンコーダ、１０６…画像伸張デコーダ、１０８…バス、１１０…補助記憶装置、１１２…ＣＰＵ、１１４…メモリ、１１６…ビデオメモリ、１１８…Ｄ／Ａコンバータ、１２０…ディスプレイ、１２２…超解像画像、１２３…入力Ｉ／Ｆ、１２４…アナログ出力、１２６…マイク、１３０…スピーカ。
【図１】
0003695119.tif 000002
【図２】
0003695119.tif 000003
【図３】
0003695119.tif 000004
【図４】
0003695119.tif 000005
【図５】
0003695119.tif 000006
【図６】
0003695119.tif 000007
【図７】
0003695119.tif 000008
【図８】
0003695119.tif 000009
【図９】
0003695119.tif 000010
【図１０】
0003695119.tif 000011
【図１１】
0003695119.tif 000012
【図１２】
0003695119.tif 000013