JP2005157847A - 画像処理装置および処理方法 - Google Patents
画像処理装置および処理方法 Download PDFInfo
- Publication number
- JP2005157847A JP2005157847A JP2003397150A JP2003397150A JP2005157847A JP 2005157847 A JP2005157847 A JP 2005157847A JP 2003397150 A JP2003397150 A JP 2003397150A JP 2003397150 A JP2003397150 A JP 2003397150A JP 2005157847 A JP2005157847 A JP 2005157847A
- Authority
- JP
- Japan
- Prior art keywords
- block
- image
- target images
- images
- target
- 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.)
- Pending
Links
Images
Abstract
【課題】 撮影画像など動画像から取得された対象画像の合成に際して、画像ステッチ部分に移動している対象があっても、その対象の画像がボケたり二重になったりしない画像処理技術を提供する。
【解決手段】 複数の対象画像(フレーム画像)をつなぎ合わせる際、複数のフレーム画像の相対的な位置関係を判別し、重ね合わされる複数のフレーム画像を特定し、特定された複数のフレーム画像における画像の重なり部分を、重なり合うフレーム画像の各々において同じ領域を区画する1以上のブロックに分割する。この各ブロックについて、ブロックに存在する被写体の動きを判定し、被写体が所定以上動いたと判断されたブロックについては、重ね合わされる複数のフレーム画像のうちの一つのフレーム画像を用い、その他のブロックについては、重ね合わされる複数のフレーム画像を用いて、前記静止画像の生成を行う。この結果、重ね合わせ部のぼけは防止される。
【選択図】 図1
【解決手段】 複数の対象画像(フレーム画像)をつなぎ合わせる際、複数のフレーム画像の相対的な位置関係を判別し、重ね合わされる複数のフレーム画像を特定し、特定された複数のフレーム画像における画像の重なり部分を、重なり合うフレーム画像の各々において同じ領域を区画する1以上のブロックに分割する。この各ブロックについて、ブロックに存在する被写体の動きを判定し、被写体が所定以上動いたと判断されたブロックについては、重ね合わされる複数のフレーム画像のうちの一つのフレーム画像を用い、その他のブロックについては、重ね合わされる複数のフレーム画像を用いて、前記静止画像の生成を行う。この結果、重ね合わせ部のぼけは防止される。
【選択図】 図1
Description
この発明は、動画像などから取得された複数の対象画像をつなぎ合わせて、一つの対象画像より大きな静止画像を生成する画像処理技術に関する。
撮影画像を重ねてパノラマ画像を生成する技術は従来から知られている(例えば、特許文献1および特許文献2)。
これらの公報には、撮影した複数の画像から画像データ間の重なりを抽出してパノラマ画像を生成する方法や装置が開示されている。
このような画像生成方法の場合、パノラマ画像の生成に使われる撮影画像を繋ぎ合わせる部分(以下、ステッチ部分という)に、例えば自動車など撮影時に移動している対象が撮影されていると、ステッチ部分では複数の静止画像を重ねるため、画像の一部に大きなズレが存在し、合成後の画像の一部がボケたり二重になったりしてしまうという問題があった。
本発明はこのような問題を解決するためになされたもので、撮影画像など動画像から取得された対象画像の合成に際して、画像ステッチ部分に移動している対象があっても、その対象の画像がボケたり二重になったりしない画像処理技術を提供することを目的とする。
上記目的を達成する本発明の画像処理装置は、動画像などから取得された複数の対象画像をつなぎ合わせて、該対象画像の一つより大きな静止画像を生成する画像処理装置であって、前記複数の対象画像の相対的な位置関係を判別し、重ね合わされる複数の対象画像を特定する画像特定部と、該特定された複数の対象画像における画像の重なり部分を、重なり合う対象画像の各々において同じ領域を区画する1以上のブロックに分割するブロック分割部と、前記各ブロックについて、該ブロックに存在する被写体の動きを判定する動き判定部と、前記動き判定部により被写体が所定以上動いたと判断されたブロックについては、前記重ね合わされる複数の対象画像のうちの一つの対象画像を用い、その他のブロックについては、前記重ね合わされる複数の対象画像を用いて、前記静止画像の生成を行う静止画像生成部と、を備えたことを要旨とする。
かかる画像処理装置によれば、つなぎ合わせる対象画像の重なり部分をブロックに分割し、ブロック毎に被写体の動きを判定する。そして、被写体が動いたと判定したブロックについては、複数の対象画像のうちの一つの対象画像で静止画像を生成するため、ボケたり2重になることがない。
また、本発明でのブロック分割部は、重ね合わされる複数の対象画像の一つを縦横に分割し、M画素×N画素(M,Nは2以上の整数)の大きさを有する複数のブロックを取得する第1分割部と、前記複数の対象画像のうち、前記一つの対象画像以外の対象画像を、前記一つの対象画像の前記ブロックの位置に合わせて分割することで、前記同じ領域を区画するブロックを取得する第2分割部とを備え、前記静止画像生成部は、前記第2分割部により分割された対象画像において生じ得るM画素×N画素以下の大きさの余剰ブロックについては、前記静止画像の生成に用いない余剰ブロック排除部を備えたものとしてもよい。こうすれば、重ね合わせる複数の対象画像を、それぞれ同じ領域を有するブロック同士で被写体の動きを判定できる。
ここでブロック内に存在する被写体の動きを、前記ブロック内の所定の画素が有する画素値を用いて判定するものとしてもよい。こうすれば、ブロックの被写体の動きを、画素を単位数としたブロックの移動量として算出できる。
また、本発明を画像処理方法と捉えることもできる。すなわち、動画像などから取得された複数の対象画像をつなぎ合わせて、該対象画像の一つより大きな静止画像を生成する画像処理方法であって、前記複数の対象画像の相対的な位置関係を判別し、重ね合わされる複数の対象画像を特定する工程と、該特定された複数の対象画像における画像の重なり部分を、重なり合う対象画像の各々において同じ領域を区画する1以上のブロックに分割する工程と、前記各ブロックについて、該ブロックに存在する被写体の動きを判定する工程と、前記動き判定部により被写体が所定以上動いたと判断されたブロックについては、前記重ね合わされる複数の対象画像のうちの一つの対象画像を用い、その他のブロックについては、前記重ね合わされる複数の対象画像を用いて、前記静止画像の生成を行う工程と、を備えたことを要旨とする。
また本発明は、コンピュータプログラムおよびそのプログラムを記録した記録媒体としても捉えることができる。記録媒体としてはフレキシブルディスクやCD−ROM、ICカード、パンチカードなど、コンピュータが読み取り可能な種々の媒体を利用できる。
次に、本発明の実施の形態を実施例に基づいて説明する。図1は本発明の一実施例としての画像処理装置の概略構成を示す説明図である。この画像処理装置は、汎用のコンピュータを用いて構成され、コンピュータ100に情報を入力する装置としてのキーボード110およびマウス120と、情報を出力する装置としてのディスプレイ130およびプリンタ180とを備えている。またコンピュータ100に動画像を入力する装置として、デジタルビデオカメラ160およびCD−R/RWドライブ140、DVD−R/RWドライブ150を備えている。その他、必要に応じて、動画像を記憶した記憶媒体からデータを読み出すことが可能な駆動装置を備えることもできる。
コンピュータ100は、所定のオペレーティングシステムの下で、複数の対象画像をつなぎ合わせて静止画像を生成するためのアプリケーションプログラムを実行することにより、画像処理装置として機能する。特に図1に示したように、このアプリケーションプログラムが実行されることにより、画像特定部104、ブロック分割部105、動き判定部106、静止画像生成部107として機能する。本実施例では、以下、こうした対象画像を動画像から取得された画像であることから、「フレーム画像」と呼ぶ。
各部はそれぞれ以下の処理を司る。画像特定部104は、コンピュータ100に入力した動画像からキャプチャして取得したフレーム画像の相対位置算出と複数のフレーム画像を特定する。ブロック分割部105は、フレーム画像のステッチ部分をブロック画像に分割し、動き判定部106に渡す。動き判定部106は、分割されたブロック毎にフレーム画像の被写体の動きを判定する。静止画像生成部107は、各部の処理結果から所定のフレーム画像を使用してフレーム画像の一つより大きい静止画像(以降、単に「静止画像」と呼ぶ)を生成する。
次に、本実施例の画像処理装置が行う処理を、図2のフローチャートにより説明する。図2に示した処理が開始されると、まず、ユーザーからの指示に基づき、動画像から取得した複数のフレーム画像について、静止画像を生成するためのフレーム画像Aとフレーム画像Bを、キーボード110などを使って選択する処理が行われる(ステップS200)。次に、このフレーム画像Aとフレーム画像Bについて相対位置を算出する(ステップS210)。
相対位置の算出処理を図3にて説明する。図3(a)と図3(b)は、ユーザーによって選択されたフレーム画像Aとフレーム画像Bをそれぞれ示している。この例は、夕日を背景とする山の風景を左右方向にパンした画像を想定したものである。相対位置関係は、このようなパンによって得られた2枚の画像を想定した場合、両者の間には回転ズレはないことから、並進ベクトルとして求めることができる。
並進ベクトルは、横方向と縦方向の画素数で表現することができ、画像のパターンマッチングや特徴点追跡といった周知の処理技術によって生成することが可能である。こうして生成された並進ベクトルから算出した相対位置データが、横方向の画素数Xb、縦方向の画素数Ybであれば、フレーム画像Aの画面左上隅を基準点(0,0)とした時、フレーム画像Bの画面左上隅は座標(Xb,Yb)となる。この状態を図3(c)に示す。こうして、フレーム画像Aに対するフレーム画像Bの相対位置を算出する。
また、フレーム画像Aとフレーム画像Bとの間で、回転や画像倍率が異なる場合は、例えばオプティカルフロー推定とパターンマッチングの組み合わせによって相対位置を算出することができる。オプティカルフロー推定には、種々の手法があり、たとえばグラディエント(gradient−based)法は、観測するフレーム画像間において対象の輝度が不変であるという仮定の下に、画像中における対象の濃度分布の空間勾配と時間勾配の関係を利用して撮影装置を基準とした被写体の移動を推定する。このオプティカルフロー推定の結果に基づいて、大まかに画像の並進移動や回転、ズーム倍率の変化を推定するとともに、この推定結果に基づいてフレーム画像Aとフレーム画像Bとの間でパターンマッチングを行うことによって相対位置を算出する。
次に、フレーム画像Aとフレーム画像Bを相対位置にて重ねた状態で、フレーム画像Aとフレーム画像Bとの重なり部分、すなわちステッチ部分(図3(c)破線枠の内側部分)をブロックに分割する(ステップS220)。図4(a)に、フレーム画像Aとフレーム画像Bを分割した状態の一部を例示する。分割は、まずフレーム画像Aを、縦横とも所定の整数(横S、縦T)にて分割する。分割数は、縦横とも8分割から16分割の範囲が好ましい。分割数は、多くすればステッチ部分の画像は滑らかになるが、ステッチ処理は遅くなるため、滑らかさと処理速度とから決めることが望ましい。もとより、ユーザーが指定するものとしてもよい。
その後、フレーム画像Bを、そのステッチ部分がフレーム画像Aの分割線と重なる分割線でブロックに分割する。図4(a)で示したように、フレーム画像Bは、オフセット値mx、myの位置からステッチ部分を分割することになる。mxおよびmyは、フレーム画像Aに対するフレーム画像Bの相対位置(Xb,Yb)と、フレーム画像Aの分割数によって決まる分割間隔の長さ(縦BHと横BW)とから、次式によって決まる。
mx=S・BW−Xb (S:整数、0≦mx<BW)・・・(1)
my=T・BH−Yb (T:整数、0≦my<BH)・・・(2)
図4(a)から明らかなように、オフセット値mxとmyによって、フレーム画像Bには、フレーム画像Aとブロック全体が重なるブロック(図4(a)中、そのブロックの一つを斜線で示す)と重ならない状態のブロックができる。
mx=S・BW−Xb (S:整数、0≦mx<BW)・・・(1)
my=T・BH−Yb (T:整数、0≦my<BH)・・・(2)
図4(a)から明らかなように、オフセット値mxとmyによって、フレーム画像Bには、フレーム画像Aとブロック全体が重なるブロック(図4(a)中、そのブロックの一つを斜線で示す)と重ならない状態のブロックができる。
本実施例では、フレーム画像Aを基準として考え、フレーム画像Aを整数分割する分割線でステッチ部分をブロックに分割したが、フレーム画像Bを基準として整数分割する分割線でステッチ部分をブロックに分割しても何ら差し支えない。この場合、オフセット値をフレーム画像Aに設けてフレーム画像Aをフレーム画像Bに合わせて分割する。
次に、フレーム画像Aとフレーム画像Bとのステッチ部分について、それぞれ分割したブロック毎に以下の処理を行う。まず着目したブロックについて、その全体が重なっているかを判定し(ステップS230)、全体が重ならないブロックの場合(ステップS230:NO)、静止画像生成時に一方のブロックを使用する(ステップS260)。本実施例では、上述したように、フレーム画像Aを基準としてブロック分割しているため、全体が重ならないブロックでは、必然的にフレーム画像Aのブロックを一つのブロックとして使用する。全体が重なるブロックの場合(ステップS230:YES)、そのブロックにおける被写体の動きをブロックマッチングによりブロックの移動量として算出する(ステップS240)。
ブロックマッチングによるブロックの移動量の算出処理(ステップS240)について、図5のフローチャートを用いて説明する。ブロックマッチングは、全体が重なるブロックについて、そのブロック間の相対的な位置をずらしていき、ずらした各々の位置で、重なる全ての画素同士の画素値差分を計算し、その値が最小になるときのブロック間の相対位置を、ブロックの移動量として求める方法である。
この処理が開始されると、まず、ブロックマッチングに使用する画素を設定するため、着目しているブロック自体を縦横とも整数(横P、縦Q)に分割する(ステップS241)。この状態を図4(b)に例示する。図4(a)に示した全体が重なるブロック(斜線部分)と関係付けて例示した。図4(b)では、フレーム画像AのブロックAKと、フレーム画像BのブロックBKを、説明のため離して図示しているが、実際には重なっている。ブロックAKおよびブロックBKの分割は、縦横とも8分割から16分割の範囲で、等分に分割するのが好ましい。
分割数は、多くすれば、ブロックの移動量を細かく算出できるため、後述する被写体の動き判定の精度は良くなるが、判定処理は遅くなる。したがって、精度と処理速度とから決めるのが望ましい。もとより、ユーザーが指定するものとしてもよい。
ここで、ブロックAKおよびブロックBKともに、分割した縦横の分割線の交点、つまり格子点に存在する画素(以降、「格子点画素」と呼ぶ)を、ブロックマッチング用の画素として設定する(ステップS242)。格子点上に画素が存在しない場合は、常に格子点の右下の画素とするなど所定のルールで決めるようにすれば良い。図4(b)は、縦横とも8等分に分割した状態を示し、この場合の格子点画素は、ブロック外周部分を含めて合計81点(画素)となる。
次に、ブロックAKとブロックBKを相対的にずらして、重なる全ての格子点画素の画素値差分の最小値を求める処理を行う(ステップS244〜S245)ため、その準備として、まず相対的な最大ずらし量、すなわち縦および横方向にそれぞれ最大何格子点移動するかを設定する(ステップS243)。
最大ずらし量は、ブロックAKとブロックBKをその量で重ねて生成した静止画像について、明らかにユーザーがボケたり2重になったと認識する量として通常設定される。具体的には、フレーム画像Aまたはフレーム画像Bの解像度すなわち画面サイズに対する画素数から、最大ずらし量を何格子点分とするか決定すればよい。こうすれば、設定する最大ずらし量を超えた移動領域では、明らかに重ね合わせた画像はボケたり2重になるため、格子点画素について画素値の差分計算(後述する)を行う必要がなく、したがって計算負荷を軽減できる。
こうして設定した最大ずらし量の範囲内で、ブロックAKとブロックBKを一格子点ずつ相対的に移動し、全てのずらし位置において、ブロックAKとブロックBKの重なった全ての格子点画素の画素値差分(絶対値)を計算する(ステップS244)。
各ブロックの格子点画素の画素値(以降、単に「格子点画素値」と呼ぶ)について図4(b)により説明する。図に示したように、各ブロック画面左上隅を原点(0,0)とし、画面横右方向を+X、画面縦下方向を+Yとすると、ブロックAKおよびブロックBKの各格子点画素値は、それぞれAKG(X,Y)、BKG(X,Y)と表される。ここで、格子点画素値AKGおよびBKGは、格子点画素が保有する画素の輝度値とする。格子点画素がR、G、Bで表される画素データを有している場合は、周知の計算式により輝度値に変換すればよい。もとより、格子点画素値としてRGB全てを用いても差し支えない。
次に、ブロックAKを基準として、ブロックBKを画面横(X)方向にm格子点分、画面縦(Y)方向にn格子点分ずらした場合、重なった格子点において、ブロックBKの格子点画素値をBKG(i,j)と表すと、ブロックAKの格子点画素値はAKG(i+m,j+n)となる。図6は、ブロックBKを、ブロックAKに対して画面右方向に3格子分(m=+3)、画面下方向に2格子分(n=+2)移動した状態を示し、例えばi=1、j=1の位置において、格子点画素値AKG(4,3)を有するブロックAKの格子点画素と、格子点画素値BKG(1,1)を有するブロックBKの格子点画素とが重なることを一例として示している。
ずらし位置が画面横(X)へm格子点、画面縦(Y)へn格子点であるとき、重なるすべての格子点画素値の差分DIFは次式よりもとめられる。
DIF(m,n)=Σ|AKG(i+m,j+n)−BKG(i,j)|・・・(3)
ここで、iの値は、0≦i≦P−m(0≦mのとき)、−m≦i≦P(m<0のとき)を満たす整数値の範囲で、またjの値は、0≦j≦Q−n(0≦nのとき)、−n≦j≦Q(n<0のとき)を満たす整数値の範囲で、それぞれ変更する。P、Qは、それぞれブロックAK(ブロックBK)の横の分割数、縦の分割数である。そして、変更したi、jすべての値について格子点画素値の差分を絶対値計算して合計しDIF(m,n)を算出する。図6の例では、破線丸印にて示したブロックAKとブロックBKの重なる格子点画素42個の格子点画素値がDIF(m,n)の計算対象に該当する。この計算の結果が、ずらし位置(m、n)における格子点画素値の差分DIFである。
DIF(m,n)=Σ|AKG(i+m,j+n)−BKG(i,j)|・・・(3)
ここで、iの値は、0≦i≦P−m(0≦mのとき)、−m≦i≦P(m<0のとき)を満たす整数値の範囲で、またjの値は、0≦j≦Q−n(0≦nのとき)、−n≦j≦Q(n<0のとき)を満たす整数値の範囲で、それぞれ変更する。P、Qは、それぞれブロックAK(ブロックBK)の横の分割数、縦の分割数である。そして、変更したi、jすべての値について格子点画素値の差分を絶対値計算して合計しDIF(m,n)を算出する。図6の例では、破線丸印にて示したブロックAKとブロックBKの重なる格子点画素42個の格子点画素値がDIF(m,n)の計算対象に該当する。この計算の結果が、ずらし位置(m、n)における格子点画素値の差分DIFである。
次に、式(3)の計算を、前の処理ステップS243(図5)にて設定した最大ずらし量の全ての範囲で、格子点を一つずつずらしながら行う。例えば、最大ずらし量が左右に4格子点分、上下に3格子点分設定されている場合は、mを±4、nを±3の範囲内の整数値で一つずつ変更し、式(3)の計算をそれぞれ行う。m、nが取り得るすべての数値にてDIFを計算し、処理ステップS244を終了する。
処理ステップS244の計算結果から、画素値の差分DIFが最小になる縦横のずらし位置を抽出する(ステップS245)。その後、抽出された縦横のずらし位置、すなわち移動した格子点の数から、ブロックAKとブロックBK間の移動量を計算する(ステップS246)。移動量BVは、画素値の差分DIFが最小になるときの横の格子点移動数の絶対値をms、縦の格子点移動数の絶対値をnsとし、ブロックAK(ブロックBK)の分割数の横をP、縦をQ、またブロックAK(ブロックBK)の横の長さ(画素数)をBW、縦の長さ(画素数)をBHとすると、次式から求められる。
BV={(ms×BW/P)2+(ns×BH/Q)2}1/2 ・・・(4)
式(4)にて計算した結果が、ブロック間の移動量BVである。
BV={(ms×BW/P)2+(ns×BH/Q)2}1/2 ・・・(4)
式(4)にて計算した結果が、ブロック間の移動量BVである。
図7にブロックマッチングによって算出した移動量BVを例示する。図7は、画面の斜面上を右から左に自動車が走っていることを想定して描いた模式図である。図7(a)はブロックAKの画像を、図7(b)はブロックBKの画像を示しており、自動車が移動した状態を示している。図7の例では、ブロックAKとブロックBKとのブロックマッチングを行うと、ブロックの画像が背景を考慮しない単純な線画であると仮定した場合、自動車が重なる状態で画素値の差分DIFが最小の状態となる。これを図7(c)に示した。この状態でのブロックAKとブロックBKの移動量BVは、式(4)により求められる。以上の計算を行い、ブロックマッチングによるブロックの移動量の算出処理を終了し、次の処理ステップS250(図2)へ戻る。
処理ステップS250では、移動量BVを、予め用意した判定値と比較し、ブロックAKとブロックBKについて動き判定を行う。この場合の判定値は、ブロックを重ねたとき、画像がボケたり2重にならない移動量(画素数)とすることが好ましい。具体的には、フレーム画像Aまたはフレーム画像Bの解像度すなわち画面サイズに対する画素数から、判定値を何格子点分(または何画素分)とするか決定すればよい。移動量BVが判定値より大きい場合、ブロックAKとブロックBK間で被写体は「動いた」と判定する。また、前述したように、処理ステップS243では、明らかに画像がボケたり2重になる範囲を最大ずらし量として設定してあるため、最大ずらし量の範囲内にDIFの最小値が存在しない場合、つまり設定した最大ずらし量の位置でDIFが最小値になる場合は、同様に被写体は「動いた」と判定する。
こうして処理ステップS250にてブロックの被写体の動き判定処理を行った後、被写体が動いている場合は(ステップS250:YES)、一つのブロックを使用し(ステップS260)、ブロックが動いていない場合は(ステップS250:NO)、2つのブロックを使用して(ステップS270)、ブロック毎に静止画像を生成する(ステップS280)。
本実施例では、一つのブロックを使用する場合、上述したように、全体が重ならないブロックでは、フレーム画像AのブロックAKを使用する。したがって動いたブロックについても、連続する画像を持つフレーム画像AのブロックAKを使用することが好ましい。もとより、フレーム画像Bを基準としてブロック分割した場合は、フレーム画像BのブロックBKを使用することが好ましい。あるいは、使用する一つのブロックを、ステッチ部分の端部に位置するブロックについては、隣り合う同一のフレーム画像のブロックを使用するものとしてもよい。こうすれば、ステッチ部分の端部に移動する被写体が移っている場合は、連続するフレーム画像を使用するため、移動する被写体の歪を少なくすることができる。
こうして、フレーム画像Aとフレーム画像Bとのステッチ部分について、分割された全てのブロックについて終了したかを判定し(ステップS290)、終了していない場合(ステップS290:NO)、ブロックの被写体の動き判定を繰り返してブロック毎に使用するフレーム画像を決定し、静止画像を生成してすべての処理を終了する(ステップS290:YES)。
このように生成処理した静止画像を図8に例示する。図8(a)はフレーム画像Aを、図8(b)はフレーム画像Bを示している。図8の画像には、図7で例示したような画面の斜面上を右から左に移動する自動車が写っている。この場合、生成した静止画像を図8(c)に例示する。静止画像生成時、自動車が写っているブロックでは、被写体が動いたブロックと判定されるためフレーム画像Aのみ使用し、フレーム画像Bは用いない。したがって、フレーム画像Bの自動車JB(図8(d):破線)は写らず、生成される静止画像はボケたり2重にならない。
上述したように、本実施例の処理方法によれば、ステッチ部分をブロックに分割し、被写体が動いたと判定したブロックについては一つの画像を用い、被写体が動いていないと判定したブロックについては複数のフレーム画像を用いて画像を生成するため、ボケたり2重になったりせず、かつ画像歪の少ない静止画像を生成できる。なお、2枚以上の複数のフレーム画像がステッチ部分に存在する場合は、複数のフレーム画像のうち2枚に着目して本実施例の処理方法を行い、その後残りのフレーム画像から一枚ずつ選択して同様な処理を繰りかえして行えばよい。
以上、本発明の実施の形態について一実施例により説明したが、本発明はこうした実施の形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内において様々な形態で実施し得ることは勿論である。例えば、本実施例での処理ステップS280(図2)において、静止画像の生成に使用するフレーム画像を一旦ブロック毎にマークし、すべてのブロックについて被写体の動き判定が終了したあと、マークされたフレーム画像を用いてステッチ部分の繋ぎ合わせをまとめて行い、静止画像を生成するものとしても良い。こうすれば、静止画像の生成処理を一括で行うことができ処理負荷が軽減される。また、ブロックマッチングに使用する画素を格子点画素とせず、全画素を用いてブロックの移動量を算出するものとしてもよい。こうすれば、画素値差分の計算処理の負荷は増えるが、ブロックの移動量を1画素単位で算出できる。
また、本実施例では、フレーム画像Aとフレーム画像Bとのステッチ部分をブロック分割する際、フレーム画像Aないしフレーム画像Bの一方を整数分割した。したがって上述したようにステッチ部分には、全体が重なるブロックと全体が重ならないブロックができたが、変形例として、ステッチ部分を全て全体が重なるブロックになるよう整数分割するものとしてもよい。なお、本実施例では、重ね合わせの対象となる複数の画像は動画像から抽出したフレーム画像としたが、相対的な位置関係が判別可能なレベルの画像であれば、どのような画像でも、対象画像として扱うことができる。例えば、コマ撮り写真のような時系列の順番に並んだ複数の画像、あるいはデジタルスチルカメラなどで撮像された複数の静止画像などであっても用いることができる。
本変形例を図9にて説明する。フレーム画像Aの左上隅を原点(0,0)、フレーム画像Bの左上隅を(Xb,Yb)としたとき、フレーム画像A(フレーム画像B)の画面の横の長さAL、縦の長さATとすれば、ステッチ部分の横の長さSWと縦の長さSHは次式で求まる。
SW=AL−Xb・・・(5)
SH=AT−Yb・・・(6)
式(5)、(6)による算出値SW、SHを、それぞれ整数分割する。分割に際しては、分割したときの分割間隔(画素数)が、本実施例で説明したフレーム画像Aのブロック分割の間隔に等しいか近い値になるよう分割数を決定する。これは、本実施例と同様、ブロック分割数を多くすればステッチ部分の画像は滑らかになるが、ステッチ処理は遅くなるためである。
SW=AL−Xb・・・(5)
SH=AT−Yb・・・(6)
式(5)、(6)による算出値SW、SHを、それぞれ整数分割する。分割に際しては、分割したときの分割間隔(画素数)が、本実施例で説明したフレーム画像Aのブロック分割の間隔に等しいか近い値になるよう分割数を決定する。これは、本実施例と同様、ブロック分割数を多くすればステッチ部分の画像は滑らかになるが、ステッチ処理は遅くなるためである。
図9から明らかなように、本変形例によれば、分割数を算出する処理は増えるが、ステッチ部分を、すべて全体が重なるブロックに分割できる。この結果、ステッチ部分の全ブロックで被写体の動き判定を行うことができる。また、静止画像の生成に際しても、ステッチ部分全体に関し、動きのないブロックについてはフレーム画像Aのブロックとフレーム画像Bのブロックを用いることができる。
100…コンピュータ
104…画像特定部
105…ブロック分割部
106…動き判定部
107…静止画像生成部
110…キーボード
120…マウス
130…ディスプレイ
140…CD−R/RWドライブ
150…DVD−R/RWドライブ
160…デジタルビデオカメラ
180…プリンタ
AK…フレーム画像Aのブロック
BK…フレーム画像Bのブロック
104…画像特定部
105…ブロック分割部
106…動き判定部
107…静止画像生成部
110…キーボード
120…マウス
130…ディスプレイ
140…CD−R/RWドライブ
150…DVD−R/RWドライブ
160…デジタルビデオカメラ
180…プリンタ
AK…フレーム画像Aのブロック
BK…フレーム画像Bのブロック
Claims (6)
- 動画像などから取得された複数の画像である対象画像をつなぎ合わせて、該対象画像の一つより大きな静止画像を生成する画像処理装置であって、
前記複数の対象画像の相対的な位置関係を判別し、重ね合わされる複数の対象画像を特定する画像特定部と、
該特定された複数の対象画像における画像の重なり部分を、重なり合う対象画像の各々において同じ領域を区画する1以上のブロックに分割するブロック分割部と、
前記各ブロックについて、該ブロックに存在する被写体の動きを判定する動き判定部と、
前記動き判定部により被写体が所定以上動いたと判断されたブロックについては、前記重ね合わされる複数の対象画像のうちの一つの対象画像を用い、その他のブロックについては、前記重ね合わされる複数の対象画像を用いて、前記静止画像の生成を行う静止画像生成部と、
を備えた画像処理装置。 - 請求項1に記載の画像処理装置であって、
前記ブロック分割部は、
重ね合わされる複数の対象画像の一つを縦横に分割し、M画素×N画素(M,Nは2以上の整数)の大きさを有する複数のブロックを取得する第1分割部と、
前記複数の対象画像のうち、前記一つの対象画像以外の対象画像を、前記一つの対象画像の前記ブロックの位置に合わせて分割することで、前記同じ領域を区画するブロックを取得する第2分割部と、
を備え、
前記静止画像生成部は、前記第2分割部により分割された対象画像において生じ得るM画素×N画素以下の大きさの余剰ブロックについては、前記静止画像の生成に用いない余剰ブロック排除部を備えた
画像処理装置。 - 請求項1または2に記載の画像処理装置であって、
前記動き判定部は、前記ブロック内の所定の画素が有する画素値を用いて、前記被写体の動きを判定する画像処理装置。 - 動画像などから取得された複数の対象画像をつなぎ合わせて、該対象画像の一つより大きな静止画像を生成する画像処理方法であって、
前記複数の対象画像の相対的な位置関係を判別し、重ね合わされる複数の対象画像を特定する工程と、
該特定された複数の対象画像における画像の重なり部分を、重なり合う対象画像の各々において同じ領域を区画する1以上のブロックに分割する工程と、
前記各ブロックについて、該ブロックに存在する被写体の動きを判定する工程と、
前記動き判定部により被写体が所定以上動いたと判断されたブロックについては、前記重ね合わされる複数の対象画像のうちの一つの対象画像を用い、その他のブロックについては、前記重ね合わされる複数の対象画像を用いて、前記静止画像の生成を行う工程と、
を備えた画像処理方法。 - 動画像などから取得された複数の対象画像をつなぎ合わせて、該対象画像の一つより大きな静止画像を生成する画像処理プログラムであって、
前記複数の対象画像の相対的な位置関係を判別し、重ね合わされる複数の対象画像を特定する機能と、
該特定された複数の対象画像における画像の重なり部分を、重なり合う対象画像の各々において同じ領域を区画する1以上のブロックに分割する機能と、
前記各ブロックについて、該ブロックに存在する被写体の動きを判定する機能と、
前記動き判定部により被写体が所定以上動いたと判断されたブロックについては、前記重ね合わされる複数の対象画像のうちの一つの対象画像を用い、その他のブロックについては、前記重ね合わされる複数の対象画像を用いて、前記静止画像の生成を行う機能と、
をコンピュータに実現させる画像処理プログラム。 - 請求項5に記載の画像処理プログラムを記録した媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003397150A JP2005157847A (ja) | 2003-11-27 | 2003-11-27 | 画像処理装置および処理方法 |
US11/000,360 US7606441B2 (en) | 2003-11-27 | 2004-11-29 | Image processing device and a method for the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003397150A JP2005157847A (ja) | 2003-11-27 | 2003-11-27 | 画像処理装置および処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005157847A true JP2005157847A (ja) | 2005-06-16 |
Family
ID=34722381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003397150A Pending JP2005157847A (ja) | 2003-11-27 | 2003-11-27 | 画像処理装置および処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005157847A (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007259436A (ja) * | 2006-03-10 | 2007-10-04 | Sony Taiwan Ltd | 最適化された映像合成方法 |
JP2010050795A (ja) * | 2008-08-22 | 2010-03-04 | Olympus Imaging Corp | カメラ、画像合成方法、およびプログラム |
JP2013084183A (ja) * | 2011-10-12 | 2013-05-09 | Nippon Telegr & Teleph Corp <Ntt> | 類似画像領域検出方法、装置及びプログラム |
JP2014168147A (ja) * | 2013-02-28 | 2014-09-11 | Nikon Corp | 画像処理プログラムおよびデジタルカメラ |
JP2015087041A (ja) * | 2013-10-29 | 2015-05-07 | 三菱電機株式会社 | 冷蔵庫 |
JP2016006379A (ja) * | 2015-10-15 | 2016-01-14 | 三菱電機株式会社 | 冷蔵庫 |
KR20200030603A (ko) * | 2017-08-11 | 2020-03-20 | 삼성전자주식회사 | 심 없는 이미지 스티칭(Seamless image stitching) |
-
2003
- 2003-11-27 JP JP2003397150A patent/JP2005157847A/ja active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007259436A (ja) * | 2006-03-10 | 2007-10-04 | Sony Taiwan Ltd | 最適化された映像合成方法 |
JP4642037B2 (ja) * | 2006-03-10 | 2011-03-02 | ソニータイワンリミテッド | 最適化された映像合成方法 |
JP2010050795A (ja) * | 2008-08-22 | 2010-03-04 | Olympus Imaging Corp | カメラ、画像合成方法、およびプログラム |
JP2013084183A (ja) * | 2011-10-12 | 2013-05-09 | Nippon Telegr & Teleph Corp <Ntt> | 類似画像領域検出方法、装置及びプログラム |
JP2014168147A (ja) * | 2013-02-28 | 2014-09-11 | Nikon Corp | 画像処理プログラムおよびデジタルカメラ |
JP2015087041A (ja) * | 2013-10-29 | 2015-05-07 | 三菱電機株式会社 | 冷蔵庫 |
JP2016006379A (ja) * | 2015-10-15 | 2016-01-14 | 三菱電機株式会社 | 冷蔵庫 |
KR20200030603A (ko) * | 2017-08-11 | 2020-03-20 | 삼성전자주식회사 | 심 없는 이미지 스티칭(Seamless image stitching) |
KR102500759B1 (ko) * | 2017-08-11 | 2023-02-16 | 삼성전자주식회사 | 심 없는 이미지 스티칭(Seamless image stitching) |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6395423B2 (ja) | 画像処理装置、制御方法及びプログラム | |
KR101036787B1 (ko) | 움직임 벡터 연산 방법과 이 방법을 이용한 손 떨림 보정장치, 촬상 장치, 및 동영상 생성 장치 | |
US7606441B2 (en) | Image processing device and a method for the same | |
US7535497B2 (en) | Generation of static image data from multiple image data | |
KR101134668B1 (ko) | 화상 생성 방법, 장치 및 그 프로그램과 프로그램을 기록한 기록매체 | |
JP2010268441A (ja) | 画像処理装置、撮像装置及び画像再生装置 | |
WO2012032412A2 (en) | Stereoscopic (3d) panorama creation on handheld device | |
JP2012165363A (ja) | デジタルイメージ安定化のために回転、補間され最適化されたピクセルのラスター出力 | |
WO2011069698A1 (en) | Panorama imaging | |
US10412374B2 (en) | Image processing apparatus and image processing method for imaging an image by utilization of a pseudo image | |
JP5158262B2 (ja) | 画像処理方法および画像処理装置 | |
JP2007226656A (ja) | 画像の高解像度化方法及び装置 | |
JP2005157847A (ja) | 画像処理装置および処理方法 | |
WO2011074121A1 (ja) | 動きベクトル検出装置及び方法 | |
JPH10126665A (ja) | 画像合成装置 | |
JP2017143354A (ja) | 画像処理装置及び画像処理方法 | |
JP2006221221A (ja) | 複数の低解像度画像を用いた高解像度画像の生成 | |
JP4292995B2 (ja) | 動画中の特定シーンの静止画の生成 | |
KR100955889B1 (ko) | 파노라마 영상 생성 장치 및 방법과 파노라마 영상에기반한 차량 후방 감시 장치 | |
JP6320165B2 (ja) | 画像処理装置及びその制御方法、並びにプログラム | |
JP6854629B2 (ja) | 画像処理装置、画像処理方法 | |
JP7416573B2 (ja) | 立体画像生成装置及びそのプログラム | |
JP5713256B2 (ja) | 画像処理装置、撮像装置、および画像処理プログラム | |
JP7366635B2 (ja) | 撮像装置、コンピュータプログラム及び記憶媒体 | |
JP2010010798A (ja) | 動画像処理装置、カメラ一体型画像記録装置、動画像再生装置、遠隔操作システム、動画像処理方法、動画像処理プログラム、記憶媒体及び、動画像処理システム |