JP3799861B2 - 画像合成装置、画像合成方法を実行させるプログラムが記録された記録媒体 - Google Patents
画像合成装置、画像合成方法を実行させるプログラムが記録された記録媒体 Download PDFInfo
- Publication number
- JP3799861B2 JP3799861B2 JP4593599A JP4593599A JP3799861B2 JP 3799861 B2 JP3799861 B2 JP 3799861B2 JP 4593599 A JP4593599 A JP 4593599A JP 4593599 A JP4593599 A JP 4593599A JP 3799861 B2 JP3799861 B2 JP 3799861B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- preview screen
- preview
- synthesizing
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Processing (AREA)
- Studio Circuits (AREA)
- Processing Or Creating Images (AREA)
Description
【発明の属する技術分野】
本発明は、広視野角のパノラマ画像を合成する合成装置及び合成方法が記録された記録媒体に係り、特に連続する動画像からリアルタイムにパノラマ画像を合成する画像合成装置、及び該合成方法画記録された記録媒体に関する。
【0002】
【従来の技術】
異なる視野を撮影した複数の画像を合成して、1枚の広視野のパノラマ画像を作る技術が注目されている。最近では、特に、ビデオカメラをパンして視野を変えながら撮影した連続動画像から同様にしてパノラマ画像を作成する、Video Mosaicと呼ばれる技術に関心が集まっている。例えば、米国マサチューセッツ工科大学のTeodosio、 L。、 Bender、 W。らによる Salient Video Stills: Content and Context Preserved、 Proc。 ACM Multimedia 93、 pp。39-46 (1993)などが知られている。この他にも様々な研究例が存在するが、いずれの手法も、連続して得られた複数枚の画像について、その共通領域を見つけ、ちょうど共通領域が重なるように、画像を貼り合わせることでパノラマ画像を得ている。カメラを動かすに伴って、撮影画像には新しい視野の画像が入ってくるので、それらが繋ぎ合わされて、最終的に広視野のパノラマ画像が得られる。
【0003】
しかしながら、多くの研究例では、このような共通領域をいかに精度良く見つけるかや、レンズの歪みによる画像周辺部のずれをいかに補正するか、など、合成画像の精度を高めることが重視され、このようなパノラマ合成技術を実際に用いる操作者のユーザビリティの観点からの検討が十分とは言い難い。一般に、対象となる映像の種類を特定できない自然映像について画像認識を行うには、様々な局面で、人間が介在し、適切な判断を与える必要がある。この場合、処理の高速応答性が、操作者の使い勝手を大きく左右する。用途によっては、画像として破綻なく接続されてさえいれば、むしろ入力映像をリアルタイム、即ち、映像の入力に対して遅延なく処理でき、その結果が直ちに確認できる、ユーザビリティに優れた手法のほうが望ましい場合も少なくない。
【0004】
【発明が解決しようとする課題】
パノラマ画像の作成においては、2種類の処理が行われる必要がある。一つは、連続する入力画像を認識して、共通領域の座標を決定する、カメラ動き量の推定処理である。もう一つは、得られた動き量から、実際に画像を繋ぎ合わせる合成処理である。ユーザビリティの観点からは、これらが同時に、しかもリアルタイムで行われることが最も望ましい。すなわち、カメラを振ると同時に、その振った量が計算されて自動的に画像が繋ぎ合わされ、撮り終わったときには合成画像がすでに出来ていて確認できることが理想である。これによって、気に入った画像が得られるまで何度でも気軽にやり直しができ、情報が欠落しているなどの本質的に合成が不可能な映像の撮り方をしても、その場でミスがわかり、撮り方からの根本的な修正ができる。
【0005】
カメラを振ると同時に、その振った量が計算されて自動的に画像が繋ぎ合わされ、撮り終わったときには合成画像がすでに出来ていて確認できるようにする場合、これら2種類の推定処理、合成処理のいずれもリアルタイムに処理を行う必要がある。カメラ動き量の推定処理に関しては、例えば、発明者らによる特開平11−004398「デジタルワイドカメラ」で示した高速処理方式などがある。しかしながら、合成処理については、リアルタイムに同時に実行できるレベルにまで十分に検討されているとはいえない。単に、動き量を撮影と同時にリアルタイムで計算できるだけでは、撮影後に、動き量の計算分は短くなるものの、画像どうしの貼り合わせ処理の時間を待たねば、合成結果を確認することはできず、ユーザビリティの面で不十分である。
【0006】
本発明の目的は、連続する動画像からパノラマ画像を合成する方法において、操作者のユーザビリティを向上させるため、合成結果をリアルタイムで確認できる、合成処理の高速応答性を実現することにある。
【0007】
【課題を解決するための手段】
上記の目的を達成するため、撮影中された動画から順次フレーム画像を取り込み、取り込まれた連続する2枚のフレーム画像を比較して共通領域以外の部分領域である差分画像及び上記連続する2枚のフレーム画像間移動量を求める手段と、前記2枚のフレーム画像の差分画像及び前記移動量とを順次記録する第1および第2の記録手段と、前記第1の記録手段に記憶された差分画像を前記移動量に基いて逐次合成することでプレビュー画面を合成するプレビュー画面合成手段と、前記取り込み終了後、前記第2の記録手段に記録される差分画像を前記移動量に基いて合成してパノラマ画像を合成するパノラマ画像合成手段と、前記フレーム画像が取り込まれるのにあわせて逐次前記プレビュー画面を表示し、さらに、前記取り込み終了後に前記合成されたパノラマ画像を表示する表示手段とを設ける。更に、前記第1の記録手段は、前記生成されるプレビュー画面が所定の大きさ以上になった場合に該プレビュー画面が該所定の大きさ以下になるように該プレビュー画面を構成する画素数を所定倍縮小して記録する。
【0008】
【発明の実施の形態】
以下、本発明の一実施例を詳細に説明する。図1は、本発明を実現するためのシステム構成の概略ブロック図の一例である。100は一般的なビデオカメラ撮像部であり、撮影した映像を映像信号線106を介して演算処理装置116に送信する。カメラ部は、制御信号線108によって演算処理装置116と接続され、116は必要に応じてビデオカメラのズーム倍率を変更したり、ホワイトバランスを調整したり、といったカメラパラメータの設定ができるようになっている。このような設定が不要な場合は、省略可能である。演算処理装置116は、現在汎用的に用いられているデジタルコンピュータ、特にパソコンのシステム構成と同じであり、そのディスプレイ出力は映像信号線を通じてディスプレイ112の画面上に描画され、入力デバイス120でユーザから受けた指示は、演算処理装置116に通知される。カメラ部100から出力される映像信号は、逐次、102のA/D変換器によってデジタル画像データに変換され、インタフェース104を介してメモリ114に入り、メモリ114の別の番地に格納されたプログラムに従って、CPU110によって処理される。
【0009】
ここでは、ビデオカメラからの信号がNTSC等のアナログビデオ形式の場合の例で説明しているが、デジタル出力のビデオカメラを利用する場合には、102のA/D変換器は不要である。この場合、替わりに画像形式の変換器が必要になる場合もある。また、処理の必要に応じて、各種情報を118の外部情報記憶装置に蓄積することができる。
【0010】
メモリ114には、以下に説明する処理によって作成される各種のデータが格納され、CPU110が処理を行う際に、必要に応じて参照される。以下の説明では、すべてCPUが実行するソフトウェアとして説明するが、その一部または全部をハードウェア論理回路で置き換えて実行させても構わない。また、カメラ部100、演算処理装置116、ディスプレイ112を一体化したインテリジェントなビデオカメラ形態であっても構わない。
【0011】
以下では、上記ハードウェア上で実行される、先述の課題を解決するソフトウェアフローについて詳細に説明する。まず最初に、上記ソフトウェアを用いた、パノラマ画像の作成方法について説明する。ユーザは、最初にリアルタイムでパノラマ合成が行われる状態(以下では、パノラマ撮影モードと呼ぶ)に移行することを、入力デバイス120によって演算処理装置116に伝える。入力デバイスは、コンピュータシステムを利用する場合には、キーボードやマウスなどにあたり、カメラ一体型形態をとる場合には、「パノラマ撮影開始ボタン」などのスイッチが相当する。演算処理装置116は、パノラマ撮影モードに入ると、ビデオカメラから出力される映像信号を毎フレーム入力し、入力されたフレーム画像のカメラ動き量を求め、パノラマ合成に必要なパラメータとデータを収集する。このとき、ディスプレイ112には、その全体、もしくは一部の領域が、合成状況を確認するためのプレビュー画面として設定され、カメラの動きに合わせて繋ぎ合わされていく合成画像の様子をリアルタイムで更新表示する。
【0012】
図1のディスプレイ112内に、そのイメージを示す。本発明では、プレビュー表示用の合成画像122(以下、プレビュー画像と呼ぶ)は、プレビュー画面内で、その全体がおさまる最大の大きさになるように常にスケーリングされて表示されることを特徴とする。これによって、全体の合成状態を、瞬時に把握可能にする。このとき、プレビュー画面が矩形の場合には、合成画像の形状によって、画像の存在しない空白部分124が存在するが、これは適当な背景色で埋めておく。合成画像中における最新の入力フレームの位置は、枠で囲んだり、色を変えたりして強調表示することで、カメラを動かすべき方向を迷わせない羅針盤の役割も持たせる(126)。
【0013】
ユーザが、再び入力デバイス120によって、パノラマ撮影モードの終了を指示すると、新規のフレーム画像入力を中止し、待機状態になる。ディスプレイ112には、最後のフレーム入力によって更新されたプレビュー画像が保持され、ユーザはその画像を見て所望の結果が得られているか判断し、良ければ、プレビュー用ではない実サイズの最終的な出力としての合成画像(以下、最終出力合成画像と呼ぶ)を作成し、外部情報記録装置118などに保存する。
【0014】
図2に、上記機能を実現するフローチャートの一例を示す。このアルゴリズムは、上記機能に必須の高速処理を可能にするため、次の3点を基本コンセプトとしている。
【0015】
(1) 最終出力合成画像とは別に、プレビュー専用に縮小サイズの合成画像を作成する。
【0016】
(2) 最終合成画像用に記憶する画像は、最低限必要な領域のみとする。
【0017】
(3) 任意形状・任意サイズのプレビュー画像の作成と、メモリ効率とを両立させる。
【0018】
(1)は合成処理にかかる時間を減らすための工夫である。一般に、作成された画像が所望のものかどうかを判断する目的では、必ずしも大きなサイズの画像である必要はない。そこで、撮影時には、最終出力合成画像は作成せず、プレビュー用として別個に縮小サイズの合成画像を作成する。これによって、撮影とほぼ同時にプレービュー画像が完成するようにする。このプレビュー画像は、得られたカメラ動き推定量に基づいて合成が行われるので、実際の合成結果に極めて近く、歪みやミスなどもそのまま反映される。ユーザは、このプレビューによって所望の画像が得られたか否かを判断し、良しと確認されたら、改めて実際の大きさの最終出力合成画像を作成する。失敗と判断した場合には、直ちにやり直すことができ、実サイズの合成の時間を省けるので、効率的な作業ができる。
【0019】
(2)は、最終出力合成画像のための元データの記録時間を削減するための工夫である。(1)を採用して最終出力合成画像の作成を後で行うようにした場合、その元データであるレーム画像を一時的に記録しておく必要がある。次々と入力される新しいフレーム画像を次々に記録していくことは、データ転送時間が長くかかったり、必要なメモリ容量が肥大化したりと、高速処理の阻害要因となる。
【0020】
ここで、図3に示すように、パノラマ合成画像は、連続するフレーム画像の1枚1枚を重ね合わせて得られる。図3は、一連のパン映像からパノラマ画像を作成する例であり、上側が連続するフレーム画像からなる映像を模式的に表し、下側がそれから合成されるパノラマ画像を示している。上下を結び付ける複数の線は、フレーム画像どうしの対応関係を表している。下側のパノラマ画像では、連続するフレーム間で常に画像的に一致する領域(以下、共通領域と呼ぶ)が存在し、データとして冗長性が極めて高くなっている。そこで、この連続フレーム間の共通領域を省いた部分の領域だけを組み合わせることで、十分にパノラマ画像が再現できる。従って、1フレームにつき、この共通領域を省いた領域だけを記録するようにすれば、1フレームあたりの記録すべきデータ量は大幅に削減され、データ転送時間は短縮され、必要なメモリ容量も少なくなる。最後のフレームの重ねあわせだけには画像全体が必要になるが、唯一その1回のみであり、また、最後であるから、データ転送に時間が多少多くかかっても、次のフレームが存在しないため、次フレームのための処理に間に合わないという問題も発生しない。
【0021】
最後の(3)についてであるが、プレビュー画像は、撮影終了と同時に得られるだけでなく、さらに撮影中からカメラの動きに即応してリアルタイムに、即ちカメラの動きに同期して更新されるほうが、ユーザにとって確認が容易であり、使い勝手がよい。しかし、合成されるパノラマ画像は、カメラを動かすにしたがって単調に大きくなり、また、カメラの動かし方によって、その形状や大きさは様々になる。プレビュー画像を表示するためには、プレビュー用に合成されるパノラマ画像が常にメモリ領域上で作成されていなければならないが、可能性のあるすべての形状や大きさのプレビュー画像をメモリ領域上に作成するためには、メモリ領域を予め極めて大きくとっておかなければならない。
【0022】
(1)の指針により、縮小フレーム画像を用いるとしても、必要なメモリ領域の容量は巨大である。しかも、実際には利用されないメモリ部分も多く、メモリの使用効率が非常は低くなってしまう。もちろん、最初にカメラを動かす方向を決定して、それに必要な分だけメモリ領域を確保することはできる。しかし、この方法では、ユーザが予めカメラを動かす方向を指示しなくてはならない煩雑さが生じ、ましてユーザが途中で気が変わっても全く対応できない。また、最終的にどれだけの大きさの画像になるか、ユーザが予測できない場合も多い。無制限のサイズ・無制限の形状の合成画像に対応することが望まれる。
【0023】
ここで、モニタにプレビュー画像を表示するためのプレビュー画面の大きさは固定であり、プレビュー画像の大きさが固定の大きさのプレビュー画面より大きくなった場合、その画面サイズに合うように縮小スケーリングされて表示されるようにする。逆にいえば、プレビュー画面の解像度を超える画素数は、プレビュー画像を表示する際には無駄になる。
【0024】
そこで、プレビュー画像の大きさが、プレビュー画面の大きさのn倍(縦もしくは横の長さとしての比率。面積的にはn×n倍)を超えた時点で、プレビュー画像の大きさを強制的に1/m倍(同じく面積的には1/(m×m)倍)に縮小する。そしてまた、縮小したプレビュー画像の大きさが再びプレビュー画面のn倍を超えたときには、プレビュー画像の1/m倍縮小を行うというように繰り返す。これにより、プレビュー画像用のメモリ領域サイズを、プレビュー画面のサイズのn倍以下に制限でき、かつ、プレビュー画面に表示されるプレビュー画像は、それ以上のメモリ領域を持っている場合と比べて解像度の劣化がないという効果が得られる。
【0025】
以上のことを踏まえて、図2のフローチャートの説明に戻る。まず各種の初期化を処理200で行う。例えば、プレビュー画像作成用のワーキングバッファとして、プレビュー画面の大きさを縦横それぞれn倍にした大きさのメモリ領域(以下、プレビューバッファと呼ぶ)を確保する。プレビュー画像は、このプレビューバッファの中で合成される。プレビューバッファには、プレビュー表示領域と呼ばれる領域が設定され、この領域が、ちょうどプレビュー画面の大きさいっぱいになるように常にスケーリング、即ち、拡大・縮小されて、プレビュー画面の表示となる。
【0026】
最初は、バッファ中央部の、プレビュー画面と同じ大きさの領域が、プレビュー表示領域として設定され、プレビューバッファ上でプレビュー画像が大きくなるにしたがって、常にプレビュー画像全体が含まれるように、順次プレビュー表示領域を拡大する。次いで、プレビュー画像作成用の変数である、プレビュー縮小率rの初期値を計算する(202)。rは、カメラから入力されるフレーム画像の大きさと、プレビュー画面の大きさとの比率であり、カメラの動きがない初期状態において、入力フレーム画像が、プレビュー画面いっぱいに表示されるように調整するパラメータである。例えば、入力フレーム画像の大きさとプレビュー画面の大きさを同じにした場合には、r=1。0となる。
【0027】
続く処理204では、ビデオカメラで撮影された映像の最新の1コマのフレーム画像を入力する。そして、次々と入力されるフレーム画像間で比較を行いながら画像の移動量検出処理を行う。この移動量検出には、オプティカルフロー等の様々な方法が考えられているが、ここでは高速に計算可能な方式として、例えば、特願平9-153303の「デジタルワイドカメラ」に記載された方式を利用する。この方式は、画像の投影分布から移動量を求めるために非常に高速処理を可能とする。
【0028】
処理206では、このフレーム画像から水平投影分布Px、垂直投影分布Pyを作成する。水平投影分布とは、画像を構成する画素の各行について、その色や輝度の平均値をとったもので、行数分だけの平均値の一次元系列である。垂直投影分布は、画像の各列について、同様に色や輝度の平均値をとったもので、列数分だけの平均値の一次元系列である。例えば、垂直投影分布の値の並びは、画像が左右に移動すると、それに対応して順方向もしくは逆方向にシフトする性質がある。同様に垂直投影分布は、画像の上下動に対応して順逆方向にシフトする。したがって、あるフレーム画像から作成した水平/垂直投影分布と、次に入力されたフレーム画像から作成した水平/垂直投影分布とを比較し、その平均値の系列がそれぞれどれだけシフトしたかを求めれば、2枚の画像の間の水平/垂直方向の移動量が求まることになる。画像変化なので、ノイズや若干の変形等により投影分布の値の並びは完全に一致するわけではないが、比較する2つの投影分布の片方を順次δ画素分だけシフトして比較し(δは−Rから+Rの範囲をとるすべての整数。Rは予め設定した探索範囲を示す値)、最も相違度が低くなったときのδを移動量として得る。相違度は、対応する行または列の画素の色や輝度の平均値それぞれの差の絶対の総和などを利用する(210〜212)。但し、初めての画像入力の場合には、過去に比較するフレーム画像が存在しないので、処理204に戻る(208)。
【0029】
処理214では、得られた水平/垂直移動量δから、直前のフレーム画像と現在のフレーム画像との共通領域を求め、直前のフレームにおける、その共通領域以外の部分の領域についてのみ記録する。これによって、全ての領域について記録する場合に比べ記憶容量が少なくて済む。
【0030】
また、処理216では、得られた水平/垂直移動量δの値に、rを乗じたプレビュー合成用の移動量を求め、直前にプレビューバッファ上に描画した縮小フレーム画像に対して、上記で得られたδ×rだけずらした位置にr倍に縮小した画像を重ねて描画する。このようにして拡大されたプレビュー画像全体を含むように更新したプレビュー表示領域を、プレビュー画面に表示する(218)。
【0031】
このとき、もしプレビュー画像の全体が、プレビューバッファの端いっぱいに迫っているときには(220)、プレビューバッファ全体を1/m倍に縮小する(222)。このとき、プレビュー表示領域も同様に1/m倍に縮小される。そして、rも同様に1/mを乗じておく。
【0032】
図4に、このプレビューバッファの縮小処理の模式的な流れを示す。400は、プレビューバッファ全体を示し、402は、プレビュー表示領域である。404は、プレビュー画像を示す。プレビュー表示領域は、常にプレビュー画像全体に外接するように位置や大きさが変化する。Aは、パノラマ撮影開始直後の様子を表しており、入力されたフレーム画像が、中央部に描画されている。カメラを動かすにしたがって、プレビュー画像は伸びていき、プレビュー表示領域も追従して大きくなる(B)。そして、Cに示すように、プレビュー画像がプレビューバッファの端まで到達すると、バッファからはみ出すので、ここで1/m倍にプレビューバッファ全体を縮小する(D)。このとき、プレビュー表示領域も同じ倍率で縮小する。そして、さらにプレビュー画像が伸びれば、それに合わせて画像の描画を続ける。
【0033】
ここで、n=3、m=2とすると、はじめに、プレビューバッファの中央と表示領域の中央を合わせておき、その後、撮影画像に応じて伸び、端に到達したときのプレビュー表示領域のサイズは、プレビュー画面のオリジナルサイズの2倍(縦横の長さ比が2倍)よりも常に大きくなる。したがって、これをプレビューバッファ全体ごと1/2倍(縦横の長さ比を1/2倍)にしても、プレビュー表示領域のサイズは、プレビュー画面のオリジナルサイズを下回ることはない。なお、n=3、m=2のとき、プレビュー表示領域がちょうどバッファのに到達したとき、プレビュー表示領域は、プレビュー画面のオリジナルサイズの2倍となる。そこで、プレビューバッファを1/2倍すれば、プレビュー表示領域のサイズは、プレビュー画面のオリジナルサイズと同じになる。
【0034】
これによって、巨大なメモリ領域を確保して、自由にプレビュー画像を描画し、その上で、プレビュー画面のサイズに間引いて表示する場合と、ほとんど変わらない結果が、プレビュー画面のn倍のメモリ容量を用意するだけで得られることになる。また、m=2の場合、単純に1画素おきに間引けばよいので、縮小も極めて高速に行える。
【0035】
ここで、例えば、入力フレーム画像の10倍の大きさのパノラマ画像を作成することを考える。上記の方法によらずに、あらかじめメモリ領域を確保する方法では、この面積のパノラマ画像のプレビューを行うためには、あらかじめ、入力フレーム画像の約400倍のメモリ領域を必要とする。これは、最初からどの方向にカメラが動くか予測できないために、最初の入力フレーム画像を中心にして、上下左右の各方向にそれぞれ10倍の長さを持つ矩形領域を確保する必要があるためである。ところが、本発明の方法によれば、n=3の場合で、高々9倍の大きさで良い。本発明は、この9倍の大きさで無制限のサイズを保証するので、従来方法とのメモリ領域の差は、合成するパノラマ画像の大きさが20倍、30倍になるに伴い、指数関数的に大きくなる。
【0036】
さらに、上記の手法は、ズーム映像を用いた高解像静止画合成処理の場合に、さらに効果がある。図5に、ズームによる高解像静止画合成の原理を示す。この基本的な考え方は、すでに挙げた文献Salient Video Stills: Content and Context Preservedに示されている。最もズームインされたときのフレーム画像を基準サイズとして、他のフレーム画像をそのズーム率に合わせて重ね合わせていくことで、大きな高解像度画像を得ることができる。この高解像度画像は、周辺部は画素が単純に大きくなるだけであるが、中心部に近づくにしたがって少しずつ段階的に高精細になる。通常のスチルカメラで撮影した画像も、中心に焦点を合わせたときには周辺部はボケており、重ね合わせ合成された高解像度画像の特性に近い。すなわち、安価な低解像度の撮像素子を用いて、高価な高解像度の撮像素子を用いて写したのと同等の画像が得られることになる。
【0037】
しかし、このような従来の手法では、ズームアウト時の画像を拡大してから重ね合わせ処理を行わなければならず、拡大率が大きくなるにつれて拡大処理時間も長くなり、パノラマ合成のときよりもさらにリアルタイム処理が困難になる。それでも、徐々に単調にズームアウトするような映像の場合には、最初に巨大なメモリ領域が用意できれば、最初のフレームを原寸大で描画し、後はフレーム画像を拡大しながら重ねていくだけでよい。しかし、逆に、ズームインするような映像の場合は、高解像画像合成の目的である、解像度を高めながらの合成には、最後に入力されたフレーム画像が常に原寸大になるように、合成画像のほうを拡大する必要があり、巨大なメモリ領域を毎フレームごと拡大するのは非常に時間がかかる。このことは、予めどのようなカメラの動きがあるか予測できないリアルタイム処理ならではの課題である。
【0038】
一方、本発明の考え方を適用すれば、少ないメモリ領域でリアルタイムにプレビューが確認できる。ズーム率を高速に求める手法については、例えば、すでに発明者らによる特願平10-53100「超解像カメラ」において示している手法が利用できる。ここで確認しておくと、高解像画像の合成とは、連続するフレーム画像間の共通領域が同じ縮尺になるようにサイズを調整しながら、入力されるフレーム画像を重ね合わせていくことである。したがって、パノラマ合成のときと同様に、最終的な合成画像を得るには、共通領域は1回だけ記録すればよく、ズームインの映像の場合には、直前のフレームにおける、共通領域を除いたロの字型の外枠部分だけでよい。また、プレビュー画像の作成にあたっては、ズーム率に合わせて縮小したフレーム画像を、ただプレビューバッファに次々と描画していくだけでよい。
【0039】
ズーム率は、ここでは、最初に入力されたフレーム画像を基準にして、共通領域が一致するようにサイズ合わせをしたときの比率として定義する。ズームのないときは1。0、ズームインの場合は1より小さく、ズームアウトの場合、1より大きくなる。一方、ズームアウトの映像の場合には、最新のフレームのほうが広い範囲を写しているので、今度は最新のフレームにおける共通領域を除いたロの字型の外枠部分を記録する。プレビュー画像の作成のあたっては、この外枠部分をズーム率に合わせて縮小して描画する。ズームアウトの場合は、プレビュー画像のサイズが、ズーム率が大きくなると、プレビューバッファのサイズを超えるので、その場合には、パノラマ合成のときと同様に、プレビューバッファ全体を1/mに縮小する。このように、ズームの場合にも、プレビュー画像作成のために必要な拡大は、ロの字型の外枠部分だけをn倍以下に拡大する処理だけであり、明らかに高速に処理できる。以上によって、撮影と同時に、高解像画像合成の結果もリアルタイムで確認できる。
【0040】
本実施例において最終的な合成画像のために記録される元データの一例を図6と図7に示す。データは、パノラマファイル構造体600とパノラマクリップ構造体700とに大別される。前者のパノラマファイル構造体は、元データ全体をまとめるヘッダーであり、後者のパノラマクリップ構造体は、各フレームごとに記録が決定される画像データである。パノラマファイル構造体には、後続データが画像合成用の元データであることを示す識別子として、ファイルID602と、合成画像の実サイズを幅(604)、高さ(606)の順に格納する。合成画像の最終的なサイズは、カメラ動き量から決定され、特殊な形状をとっていても、それに外接する最小の矩形として表現できるので、幅と高さのみを格納する。また、元データの色数608(例えば、256色なのか、24ビットフルカラーなのか等)や画像フォーマット610(例えば、RGB形式なのか、YUV形式なのか等)も格納する。
【0041】
また、合成画像に外接する矩形領域の始点座標をパノラマ画像x、yオフセット(612、614)として格納し、この座標を基準にして、後述するパノラマクリップの座標を計算する。このヘッダー情報に続いて、パノラマクリップ構造体700がデータとして並ぶ。パノラマクリップ構造体は、フレーム1枚ごとのデータとなっており、合成画像における、そのフレーム画像の位置とサイズを格納する。まず702は総データサイズであり、画像データの量を格納する。画像始点x座標702は、前述のパノラマ画像xオフセット612で示された座標を合成画像の始点座標としたときの、このパノラマクリップ構造体と対応づけられたフレーム画像の始点のx座標値を表す。同様に、画像始点y座標704は、フレーム画像の始点のy座標値を表す。画像幅706と画像高708は、フレーム画像の入力されたままの実サイズを表す。これに、ズーム率710を乗じて、合成画像上でのフレーム画像のサイズを計算する。714〜720は、このフレーム画像における、前述の共通領域の範囲を指定する。共通領域始点x座標714と共通領域始点y座標716は、フレーム内における共通領域の始点座標を表し、共通領域幅718と共通領域高720で、その大きさを表す。画素データ722には、左上から右下方向にスキャンしながら、すべての画素データが順番に並ぶ。714〜720に適切な値が入っている場合には、共通領域に関する画素データは単純に無視される。
【0042】
次に、上記で記憶した元データから最終的な合成画像を作成する方法について説明する。まずパノラマファイル構造体600を参照して合成画像の幅と高さを調べ、その大きさの矩形画像領域をメモリ領域に確保する。そして、後続するパノラマクリップ構造体700を参照して、描画すべき位置と大きさを調べて、確保したメモリ領域内における相対位置を求め、画像データ722を書き込む。但し、ズーム率が1倍を下回るクリップが1つでも存在する場合には、最初に、最も小さなズーム率が1になるように、すなわち、最もズームインされたフレーム画像が等倍で描画されるように、すべてのパノラマクリップ構造体のズーム率を比例変換する。この場合、合成画像のサイズも比例して大きくなる。これによって、フレーム画像が縮小されることがなくなり、解像度が高められる方向にのみ合成が行われる。
【0043】
以上で述べた画像合成をより美しく見せるために、スムージング処理を行うことができる。一般に、画像を貼り合わせる場合には、動き量が正しく求まらなかったり、レンズの収差による入力画像の時点での歪みがあったり、あるいは撮影時点での明るさが変動するなどして、画像の繋ぎ目に微妙な境界線が発生することがある。人間の知覚では、この境界線は不快な印象を与えるため、補正を行う必要がある。このような補正を行う最も簡単な方法は、貼り合わせる画像どうしの間に糊代を持たせ、境界線を挟んで、一方の画像の色から他方の画像の色へと段階的に推移するように貼り合わせることである。その概念を非常に単純化して示したイメージを図8に示す。800では、2枚の画像が単純に貼り合わされている様子を示している。ここでは、説明を簡単にするため、2枚の画像はそれぞれ特定の輝度で均一と仮定している。このときの水平方向の輝度の変化を見てみると、画像の境目では、グラフ802に示すように、瞬時に変化し、これが境界線808を形成する。一方、804および806に示すように、画像の境界に糊代を持たせて、一方の画像の輝度から他方の画像の輝度まで段階的な変化となるように貼り合わせれば、境界線は目立たなくなる。
【0044】
本発明の合成方法で、上記のスムージング処理を実現するには、元データを記録するときに、糊代の分だけ広めの領域を記録するようにすればよい。これによって必要最低限のデータ量の増加で、スムージングが可能になる。そして、後の合成処理の際に、糊代の分について、スムージング処理を行うことで、滑らかに接続された合成画像が得られる。糊代とする領域は、基本的に、連続する2枚の画像の間の共通領域を狭める形で選ぶ。図9に、2枚のフレーム画像900、902について、共通領域が重なるように配置した場合の例を示す。902が時間的に新しいフレーム画像であるとすると、図左上のL字型ハッチング領域904が元画像データとして記録される。糊代は、2つの画像の境界線を段階的に埋めればよいので、境界線に沿って、共通領域を狭める方向に幅を膨らませた領域が最低限必要な領域となる。図9の例では、糊代となる領域は、904の内側のL字型のハッチング領域906となる。図10に、典型的なカメラ動き量と、そのときの糊代領域との組み合わせを一覧にして示す。図中、Δx、Δyは、それぞれ水平/垂直方向の移動量を示す。図11に、さらに、ズームがある場合の同様の糊代領域のパターンを示す。図では、ズームインの場合を示している。このように、ズームがあっても、共通領域の大きさが同じになるように大きさを合わせたときの画像間の境界線から、共通領域方向に拡張して糊代領域を確定する。ズームアウトの場合も、フレーム画像900と902の関係が逆になるだけで基本的に同じである。
【0045】
なお、高精細画像を作成する場合、ズーム率に合わせて画像データを貼り合わせる際に、単純な画素の拡大ではなく、バイリニア補間等の画素補間技術を利用して拡大することで、さらに見栄えのよい画像が得られることはいうまでもない。そして、上記のスムージング処理を、画素補間で拡大した画像データを対象にして行うことで、さらに美しい画像が得られる。
【0046】
また、上記では、リアルタイムでプレビュー画像を作成し表示する手法について述べたが、プレビュー画像の替わりに、合成中の様子を示すシンボルで簡略表示するようにして、ユーザビリティと、一層の高速化との両立を図ることもできる。例えば、プレビュー画像そのものではなく、そのシルエット、すなわち合成画像がどのような形状でできているかを線画で示すことにより、フレーム画像を縮小して貼り合わせることも必要がなくなると同時に、線画のみなので高速に描画が可能になる。図12に、これに基づくプレビュー画面の例を示す。プレビュー画面には、入力映像がそのまま表示され、それと合わせて、線画1200もインジケータ表示される。また、現在入力中のフレームが合成画像中のどこに当たるのかを示すため、1202に示すように、線画の中で現在のフレーム画像が占める領域を強調表示してもよい。これによって、合成状況をリアルタイムで確認するという目的が、より低コストの演算性能で実現される。
【0047】
【発明の効果】
本発明によれば、パノラマ画像や高解像画像の作成において、撮影と同時に、処理の進行状況や結果を確認でき、気に入った画像が得られるまで、何度でも気軽に撮り直しが可能な、優れたユーザビリティを提供できる。
【図面の簡単な説明】
【図1】本発明を実現するためのシステム構成図の一例である。
【図2】本発明を実現するための処理のフローチャートの一例である。
【図3】パンする動画からパノラマ画像を合成するイメージ図である。
【図4】本発明を実行した場合のプレビューバッファの内容の一例である。
【図5】ズームする動画から高解像画像を合成するイメージ図である。
【図6】本発明の処理で用いられるデータ構造体の一例である。
【図7】本発明の処理で用いられるデータ構造体の一例である。
【図8】画像貼り合わせ方法を示すイメージ図である。
【図9】本発明の処理で定義した各画像領域を説明する図である。
【図10】本発明の処理で用いられる糊代領域のパターンの一例である。
【図11】本発明の処理で用いられる糊代領域のパターンの一例である。
【図12】本発明の処理で用いられるインジケータ表示の一例である。
【符号の説明】
100…カメラ部、102…A/D変換器、104…インタフェース、106…映像信号線、108…制御信号線、110…CPU、112…ディスプレイ、114…メモリ、116…演算処理装置、118…外部情報記憶装置、120…入力デバイス。
Claims (5)
- 撮影された動画のフレーム画像を順次取り込み、該取り込まれた連続する2枚のフレーム画像を比較して共通領域以外の部分領域である差分画像及び上記連続する2枚のフレーム画像間移動量を求める手段と、
前記2枚のフレーム画像の差分画像及び前記移動量とを順次記憶する第1および第2の記録手段と、
前記第1の記録手段に記録される差分画像を前記移動量に基づいて逐次合成することでプレビュー画面を合成するプレビュー画面合成手段と、
前記取り込み終了後、前記第2の記録手段に記録される差分画像を前記移動量に基いて合成してパノラマ画像を合成するパノラマ画像合成手段と、
前記フレーム画像が取り込まれるのにあわせて逐次前記プレビュー画面を表示し、さらに、前記取り込み終了後に前記合成されたパノラマ画像を表示する表示手段とを有し、
前記第1の記録手段は、前記生成されるプレビュー画面が所定の大きさ以上になった場合に該プレビュー画面が該所定の大きさ以下になるように該プレビュー画面を構成する画素数を所定倍縮小して記録することを特徴とする画像合成装置。 - 前記プレビュー画面合成手段は、前記プレビュー画面を構成する画素数が所定倍縮小されて前記第1の記録手段に記録されている場合には、該所定倍縮小した前記求められた移動量に基いて、該所定倍縮小された前記差分画像を前記記録されるプレビュー画面に合成することで前記プレビュー画面を合成することを特徴とする請求項1記載の画像合成装置。
- 前記表示手段は、前記プレビュー画像中における、最新に取り込まれたフレームに対応する領域を強調表示することを特徴とする請求項1又は2に記載の画像合成装置。
- 前記差分画像は、前記連続する2枚のフレーム画像の共通画像領域も含み、前記パノラマ画像合成手段は、該共通画像領域を用いて前記2枚のフレーム画像間の境界を滑らかに合成することを特徴とする請求項1乃至3のいずれかに記載の画像合成装置。
- 撮影中の動画から順次フレーム画像を取り込み、該取り込まれた連続する2枚のフレーム画像を比較して共通領域以外の部分領域である差分画像と該2枚のフレーム画像間の移動量とを求めるステップと、
前記2枚のフレーム画像の差分画像及び前記移動量とを第1及び第2の記憶手段に記憶するステップと、
前記第1の記憶手段に記憶される前記移動量を用いて前記求められる差分画像を逐次合成してプレビュー画面を合成するステップと、
前記生成されたプレビュー画面を前記動画の取り込みにあわせて逐次表示するステップと、
前記取り込み終了後に前記第2の記録手段に記録される前記移動量に基づいて前記差分画像を合成しパノラマ画像を合成するステップと、
前記合成されたパノラマ画像を表示するステップとを有し、
前記第1の記録手段は前記生成されるプレビュー画面が所定の大きさ以上になった場合に該プレビュー画面が該所定の大きさ以下になるように該プレビュー画面を構成する画素数を所定倍縮小して記録すること特徴とする画像合成方法を実行するプログラムが記録されたコンピュータ読みとり可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4593599A JP3799861B2 (ja) | 1999-02-24 | 1999-02-24 | 画像合成装置、画像合成方法を実行させるプログラムが記録された記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4593599A JP3799861B2 (ja) | 1999-02-24 | 1999-02-24 | 画像合成装置、画像合成方法を実行させるプログラムが記録された記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000244814A JP2000244814A (ja) | 2000-09-08 |
JP3799861B2 true JP3799861B2 (ja) | 2006-07-19 |
Family
ID=12733139
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4593599A Expired - Fee Related JP3799861B2 (ja) | 1999-02-24 | 1999-02-24 | 画像合成装置、画像合成方法を実行させるプログラムが記録された記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3799861B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101567497B1 (ko) | 2014-02-11 | 2015-11-11 | 동서대학교산학협력단 | 축 방향 분산 영상 기법(ads)을 이용한 가려진 영상 도출 시스템 및 그 방법 |
US12086958B2 (en) | 2021-12-23 | 2024-09-10 | Samsung Electronics Co., Ltd. | Method and device with synthetic image generation |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4048907B2 (ja) | 2002-10-15 | 2008-02-20 | セイコーエプソン株式会社 | 複数の画像データのパノラマ合成 |
JP4701598B2 (ja) * | 2003-01-07 | 2011-06-15 | セイコーエプソン株式会社 | 静止画像生成装置、静止画像生成方法、静止画像生成プログラム、および静止画像生成プログラムを記録した記録媒体 |
JP4172352B2 (ja) * | 2003-07-11 | 2008-10-29 | ソニー株式会社 | 撮像装置及び方法、撮像システム、プログラム |
WO2005024723A1 (ja) * | 2003-09-08 | 2005-03-17 | Nec Corporation | 画像合成システム、画像合成方法及びプログラム |
EP1667439A4 (en) * | 2003-09-26 | 2006-11-08 | Sharp Kk | DEVICE FOR GENERATING A PANORAMIC IMAGE AND PICTORIAL IMAGING APPARATUS |
JP4429816B2 (ja) * | 2004-06-10 | 2010-03-10 | オリンパス株式会社 | 撮像装置および画像の高解像度化方法 |
JP2006343702A (ja) * | 2005-02-28 | 2006-12-21 | Sony Corp | ホログラム再生方法及びホログラム再生装置 |
WO2008087721A1 (ja) * | 2007-01-18 | 2008-07-24 | Fujitsu Limited | 画像合成装置、画像合成方法、プログラム |
JP4839448B2 (ja) * | 2007-03-19 | 2011-12-21 | 国立大学法人東京工業大学 | 複数領域に対応した画質改善処理方法及び画質改善処理プログラム |
JP4329837B2 (ja) | 2007-04-09 | 2009-09-09 | ソニー株式会社 | ビデオ信号処理装置、ビデオ信号処理方法、プログラムおよび画像表示装置 |
JP5304022B2 (ja) * | 2008-05-16 | 2013-10-02 | 日本電気株式会社 | 撮影装置及び撮影支援方法 |
JP4656216B2 (ja) | 2008-09-04 | 2011-03-23 | ソニー株式会社 | 撮像装置、画像処理装置、画像処理方法、プログラム及び記録媒体 |
JP4735693B2 (ja) | 2008-09-22 | 2011-07-27 | ソニー株式会社 | 画像処理装置、撮像装置、画像処理方法およびプログラム |
JP5268025B2 (ja) * | 2009-02-27 | 2013-08-21 | 株式会社リコー | 撮影装置 |
JP5279083B2 (ja) * | 2009-09-04 | 2013-09-04 | Kddi株式会社 | 情報端末装置 |
US20120105577A1 (en) * | 2010-11-01 | 2012-05-03 | Olympus Imaging Corp. | Panoramic image generation device and panoramic image generation method |
CN103679129A (zh) * | 2012-09-21 | 2014-03-26 | 中兴通讯股份有限公司 | 一种图像中的目标物体识别方法及装置 |
JP6137009B2 (ja) * | 2014-03-24 | 2017-05-31 | 株式会社Jvcケンウッド | 画像処理装置、画像処理方法、プログラム及びカメラ |
JP6235956B2 (ja) * | 2014-03-31 | 2017-11-22 | 株式会社富士通アドバンストエンジニアリング | 画像合成方法、プログラム、及び装置 |
JP6516787B2 (ja) | 2017-04-28 | 2019-05-22 | キヤノン株式会社 | 画像処理装置、画像処理装置の制御方法およびプログラム |
JP6717354B2 (ja) * | 2018-10-23 | 2020-07-01 | カシオ計算機株式会社 | 画像処理装置、画像処理方法及びプログラム |
CN114302211B (zh) * | 2021-12-29 | 2023-08-01 | 北京百度网讯科技有限公司 | 视频播放方法、装置和电子设备 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2720974B2 (ja) * | 1988-03-31 | 1998-03-04 | キヤノン株式会社 | 画像情報処理装置 |
JP3509114B2 (ja) * | 1992-10-09 | 2004-03-22 | ソニー株式会社 | パノラマ画像作成方法及び装置 |
JP3421859B2 (ja) * | 1992-10-23 | 2003-06-30 | ソニー株式会社 | パノラマ画像作成装置の動きベクトル検出方法及び装置 |
JP3503655B2 (ja) * | 1994-04-25 | 2004-03-08 | ソニー株式会社 | 画像合成装置 |
JPH10178564A (ja) * | 1996-10-17 | 1998-06-30 | Sharp Corp | パノラマ画像作成装置及び記録媒体 |
JP3974964B2 (ja) * | 1996-11-08 | 2007-09-12 | オリンパス株式会社 | 画像処理装置 |
JPH114398A (ja) * | 1997-06-11 | 1999-01-06 | Hitachi Ltd | デジタルワイドカメラ |
JP2942220B2 (ja) * | 1997-08-01 | 1999-08-30 | キヤノン株式会社 | 画像表示装置及び撮影装置 |
-
1999
- 1999-02-24 JP JP4593599A patent/JP3799861B2/ja not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101567497B1 (ko) | 2014-02-11 | 2015-11-11 | 동서대학교산학협력단 | 축 방향 분산 영상 기법(ads)을 이용한 가려진 영상 도출 시스템 및 그 방법 |
US12086958B2 (en) | 2021-12-23 | 2024-09-10 | Samsung Electronics Co., Ltd. | Method and device with synthetic image generation |
Also Published As
Publication number | Publication date |
---|---|
JP2000244814A (ja) | 2000-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3799861B2 (ja) | 画像合成装置、画像合成方法を実行させるプログラムが記録された記録媒体 | |
US11758265B2 (en) | Image processing method and mobile terminal | |
JP3695119B2 (ja) | 画像合成装置、及び画像合成方法を実現するプログラムを記録した記録媒体 | |
EP1650705B1 (en) | Image processing apparatus, image processing method, and distortion correcting method | |
Peleg et al. | Panoramic mosaics by manifold projection | |
JP4196216B2 (ja) | 画像合成システム、画像合成方法及びプログラム | |
EP2545411B1 (en) | Panorama imaging | |
JP2021533507A (ja) | 画像繋ぎ合わせ方法及び装置、車載画像処理装置、電子機器、記憶媒体 | |
US20110141300A1 (en) | Panorama Imaging Using a Blending Map | |
US7535497B2 (en) | Generation of static image data from multiple image data | |
KR20130103527A (ko) | 핸드헬드 기기 상에서 입체적인 (3디) 파노라마 생성 | |
JP2009071375A (ja) | 撮像装置および画像処理プログラム | |
JP2005318177A (ja) | 資料提示装置 | |
JP5318225B2 (ja) | 画像合成装置及び画像合成プログラム | |
Baudisch et al. | Panoramic viewfinder: providing a real-time preview to help users avoid flaws in panoramic pictures | |
TWI390966B (zh) | 全景影像產生方法 | |
JP4128123B2 (ja) | 手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP2007178735A (ja) | 撮像装置、ズーム時の画角表示方法、およびプログラム | |
JP2005252739A (ja) | 静止画像生成装置およびその方法 | |
JP3861641B2 (ja) | 画像合成装置、画像合成方法及びプログラム | |
JPH11185051A (ja) | 動画作成装置 | |
JP2000101992A (ja) | カメラ制御システムおよびその方法およびそのプログラムを記憶した記憶媒体およびそのクライアント | |
JPH06121226A (ja) | 撮像装置、画像処理装置及び画像再生装置 | |
Baudisch et al. | An exploration of user interface designs for real-time panoramic | |
JPH11213136A (ja) | 不均一解像度画像データ生成装置及び方法及び不均一解像度画像データを用いる画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050708 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050719 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050908 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060404 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060417 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100512 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110512 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110512 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120512 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120512 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130512 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |