JP5257044B2 - 画像処理装置、画像処理方法およびプログラム - Google Patents

画像処理装置、画像処理方法およびプログラム Download PDF

Info

Publication number
JP5257044B2
JP5257044B2 JP2008319109A JP2008319109A JP5257044B2 JP 5257044 B2 JP5257044 B2 JP 5257044B2 JP 2008319109 A JP2008319109 A JP 2008319109A JP 2008319109 A JP2008319109 A JP 2008319109A JP 5257044 B2 JP5257044 B2 JP 5257044B2
Authority
JP
Japan
Prior art keywords
angle
region
band
images
point
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
Application number
JP2008319109A
Other languages
English (en)
Other versions
JP2010146043A (ja
Inventor
光晴 大木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2008319109A priority Critical patent/JP5257044B2/ja
Priority to US12/636,073 priority patent/US8340469B2/en
Priority to CN200910258062.1A priority patent/CN101753819B/zh
Publication of JP2010146043A publication Critical patent/JP2010146043A/ja
Application granted granted Critical
Publication of JP5257044B2 publication Critical patent/JP5257044B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4038Scaling the whole image or part thereof for image mosaicing, i.e. plane images composed of plane sub-images

Description

この発明は、画像処理装置、画像処理方法およびプログラに関する。
従来、特許文献1等には、パンしながら連写した複数の画像から1枚のパノラマ画像を生成することが提案されている。複数の画像の垂直方向位置が不揃いの場合、当該複数の画像からパノラマ画像を生成する際に、パノラマ画像として切り出すべき切り出し領域(矩形領域)を確定させる必要がある。従来、この切り出し領域に関しては、ユーザが手作業で指定することが行われている。
ここで、切り出し領域の指定について、具体例を挙げて説明する。例えば、図19に示すように建物B1〜B4が存在する風景をパンしながら、図20に示すように5枚の画像P1〜P5を撮像し、これら5枚の画像P1〜P5から1枚のパノラマ画像を作成する場合を考える。
図21に斜線を付して示す領域A1は、ユーザが指定した切り出し領域の一例を示している。また、図22に斜線を付して示す領域A2は、ユーザが指定した切り出し領域の他の例を示している。パノラマ画像の場合には、幅よりも高さが重要である。したがって、図21に示す領域A1より、図22に示す領域A2を指定した方がよい。図23は、図22の領域A2を切り出し領域として、5枚の画像P1〜P5から切り出したパノラマ画像PNを示している。
また、図24に示す領域A3は、ユーザが指定した切り出し領域のさらに他の例を示している。この場合、斜線を付して示した領域の画素データが存在しないので、画素値を確定させることができず、処理不能となるので、好ましくない。
特開2000−299804号公報
上述したように、パノラマ画像の場合には、幅よりも高さが重要である。そのため、高さが最大となるように切り出し領域を選びたい。上述したように、従来、切り出し領域はユーザにより手作業で指定されている。そのため、切り出し領域の決定に時間がかかり過ぎ、またユーザにより指定された切り出し領域の高さが最大となっているという保証もなかった。
この発明の目的は、例えば、複数の画像からパノラマ画像として切り出すべき切り出し領域を高さが最大となるように自動的に決定することにある。
この発明の概念は、
撮像位置を水平方向に順次ずらして撮像された3枚以上の画像から帯状領域を求める情報処理部と、
上記3枚以上の画像から、上記情報処理部で求められた帯状領域から選択された上記第1の点群および上記第2の点群に挟まれた矩形領域を切り出す領域切り出し部を備え、
上記情報処理部は、
水平方向に対して第1の角度を有する帯状領域のうち、上記3枚以上の画像の左下位置および右下位置により構成される第1の点群よりも側に存在し、かつ上記3枚以上の画像の左上位置および右上位置により構成される第2の点群よりも側に存在するという条件を満たす最大の高さを有する第1の帯状領域を選択する帯状領域選択部と、
上記第1の帯状領域と接する上記第1の点群の中の第1の点、上記第1の帯状領域と接する上記第2の点群の中の第2の点、および上記第1の角度の関係に基づいて、上記第1の角度よりも大きい角度または上記第1の角度よりも小さい角度の中から上記第1の角度の候補を選択する角度選択部と、
上記帯状領域選択部による上記第1の帯状領域の選択と上記角度選択部による上記第1の角度の候補選択とが繰り返されるように制御し、最終的に上記帯状領域選択部で選択された上記第1の帯状領域を処理結果とする制御部を有する
画像処理装置。
この発明において、第1の点群および第2の点群が並んで存在する方向が第1の方向とされる。例えば、第1の点群は撮像位置を水平方向に順次ずらして撮像された3枚以上の画像の左下位置および右下位置により構成され、第2の点群はこの3枚以上の画像の左上位置および右上位置により構成される。この場合、第1の方向は、垂直方向となる。
帯状領域選択部により、第1の方向と直交する第2の方向に対して第1の角度を有する帯状領域のうち、第1の点群よりも第1の方向の一の側に存在し、かつ、第2の点群よりも第1の方向の他の側に存在するという条件を満たす最大の高さを有する第1の帯状領域が選択される。
上述したように、第1の点群が複数の画像の左下位置および右下位置により構成され、第2の点群が複数の画像の左上位置および右上位置により構成される場合には、帯状領域選択部により、水平方向に対して第1の角度を有する帯状領域のうち、第1の点群よりも上側に存在し、かつ、第2の点群よりも下側に存在するという条件を満たす最大の高さを有する第1の帯状領域が選択される。
また、角度選択部により、1の帯状領域と接する第1の点群の中の第1の点、第1の帯状領域と接する第2の点群の中の第2の点、および第1の角度の関係に基づいて、第1の角度よりも大きい角度または第1の角度よりも小さい角度の中から第1の角度の候補が選択される。
例えば、第1の点、第2の点および第1の角度との関係において、第1の角度を現在よりも大きな角度とした場合に第1の帯状領域の高さが小さくなるときには、現在の第1の角度よりも小さな角度の中から第1の角度の候補が選択される。逆に、例えば、第1の点、第2の点および第1の角度との関係において、第1の角度を現在よりも小さな角度とした場合に第1の帯状領域の高さが小さくなるときには、現在の第1の角度よりも大きな角度の中から第1の角度の候補が選択される。
制御部により、帯状領域選択部による第1の帯状領域の選択と角度選択部による第1の角度の候補選択とが繰り返されるように制御され、最終的に帯状領域選択部で選択された第1の帯状領域が処理結果とされる。これにより、第1の点群よりも上側に存在し、かつ第2の点群よりも下側に存在するという条件を満たす高さが最大の帯状領域が自動的に決定される。上述したように、第1の点群が複数の画像の左下位置および右下位置により構成され、第2の点群が複数の画像の左上位置および右上位置により構成される場合には、複数の画像からパノラマ画像として切り出すべき切り出し領域(矩形領域)を選択するための帯状領域が、高さ方向が最大となるように自動的に決定される。
この発明において、例えば、処理結果としての第1の帯状領域から選択された、第1の点群および第2の点群に挟まれた矩形領域の切り出しを行う領域切り出し部をさらに備えるようにしてもよい。この場合、第1の点群よりも上側に存在し、かつ第2の点群よりも下側に存在するという条件を満たす高さが最大の矩形領域の切り出しを行うことができる。例えば、撮像位置を水平方向に順次ずらして撮像された3枚以上の画像から高さが最大の矩形領域を切り出して、良好なパノラマ画像を得ることができる。
この発明によれば、撮像位置を水平方向に順次ずらして撮像された3枚以上の画像から高さが最大の矩形領域を切り出して、良好なパノラマ画像を得ることができる。
以下、発明を実施するための最良の形態(以下、「実施の形態」とする)について説明する。なお、説明は以下の順序で行う。
1.実施の形態
2.変形例
<1.実施の形態>
[デジタルカメラの構成例]
図1は、実施の形態としてのデジタルカメラ100の構成例を示している。このデジタルカメラ100は、CPU(Central Processing Unit)101、ROM(Read OnlyMemory)102、RAM(Random Access Memory)103、ユーザ操作部104を有している。また、デジタルカメラ100は、撮像素子111、撮像信号処理部112、A/D(Analog/Digital)変換部113、デジタル信号処理部(DSP:DigitalSignal Processor)114、記録再生部115および表示部117を有している。
CPU101は、デジタルカメラ100の各部を制御する。ROM102は、CPU101の制御プログラム等を記憶している。RAM103は、CPU101の制御処理に必要なデータの一時記憶等に用いられる。CPU101は、ROM102から読み出したプログラムやデータをRAM103上に展開してプログラムを起動し、デジタルカメラ100の各部を制御する。
ユーザ操作部104は、ユーザインタフェースを構成し、バス105を介してCPU101に接続されている。このユーザ操作部104は、デジタルタカメラ100の図示しない筐体面に配置されたキー、ボタン、ダイヤル等で構成される。CPU101は、入力デバイス104からバス105を介して入力される情報の解析を行って、ユーザの操作に対応した制御を行う。
撮像部111は、被写体を撮像して、この被写体に対応した撮像信号を出力する。この撮像部111は、C−MOS(Complementary Metal Oxide Semiconductor)撮像素子、あるいはCCD(Charge Coupled Device)撮像素子により構成される。撮像信号処理部112は、撮像部111から出力される撮像信号(アナログ信号)に対し、サンプルホールドおよび利得制御等の処理を行う。
A/D変換部113は、撮像信号処理部112から出力される撮像画像信号をアナログ信号からデジタル信号に変換する。デジタル信号処理部114は、A/D変換部113から供給される撮像画像信号に対して画像処理を行う。ここでいう画像処理は、ホワイトバランス処理、ガンマ補正処理などである。これら処理は、全ての汎用デジタルカメラで行われる処理なので、その詳細を省略する。
この実施の形態において、デジタル信号処理部114は、さらに、パノラマ画像生成処理を行うパノラマ画像生成部120を備えている。このパノラマ画像生成処理は、パンしながら連写した複数の画像、つまり撮像位置を水平方向に順次ずらして撮像された複数の画像から1枚のパノラマ画像を生成する処理である。このパノラマ画像の生成処理の詳細については、後述する。
デジタル信号処理部114は、処理後の画像データを、表示部117および記録再生部115に転送する。記録再生部115は、主にフラッシュメモリからなる着脱自在な記録媒体116に、ユーザのシャッター操作に対応した静止画像データを書き込み、あるいは、この記録媒体から静止画像データを読み出す。表示部117は、例えば、デジタルカメラ100の筐体背面等に設けられるLCD(Liquid Crystal Display)等の表示パネルで構成される。この表示部117は、撮影した画像、記録再生部115で記録媒体116から読み出した画像、さらには、ユーザに対する各種情報等を表示する。
次に、図1に示すデジタルカメラ100の動作について説明する。デジタルカメラ100は、記録モード時には、以下の動作をする。撮像部111で撮像処理が行われて得られた撮像画像信号は、撮像信号処理部112に供給され、サンプルホールドおよび利得制御等の処理が行われる。そして、撮像信号処理部112から出力される撮像画像信号は、A/D変換部113でアナログ信号からデジタル信号に変換されて、デジタル信号処理部114に供給される。デジタル信号処理部114では、A/D変換部113から供給される撮像画像信号に対して、ホワイトバランス処理、ガンマ補正処理などの画像信号処理が行われる。
デジタル信号処理部114で処理されて得られた画像データは、表示部117に転送される。これにより、表示部117には撮像画像が表示され、モニタリング状態となる。このモニタリング状態において、ユーザがユーザ操作部104でシャッター操作を行うと、CPU101によりデジタル信号処理部114および記録再生部115が制御され、記録媒体116にシャッター操作に対応した静止画像データが書き込まれる。この場合、パンしながら、つまり撮像位置を水平方向に順次ずらしながら、ユーザがシャッター操作を行うことで、パノラマ画像の生成に使用される複数の画像の静止画像データが、記録媒体116に書き込まれる。
また、デジタルカメラ100は、再生モード時には、以下の動作をする。すなわち、記録再生部115では、記録媒体116から、ユーザのユーザ操作部104の操作によって選択された静止画像データが読み出される。この静止画像データは、記録再生部115からデジタル信号処理部114を介して表示部117に供給される。これにより、表示部117には、再生画像が表示される。
[パノラマ画像の生成処理]
次に、パノラマ画像の生成処理について説明する。パノラマ画像は、CPU101の制御の下、デジタル信号処理部114内のパノラマ画像生成部120において生成される。図2のフローチャートは、パノラマ画像生成部120におけるパノラマ画像の生成処理の処理手順を示している。
ユーザがユーザ操作部104を操作してパノラマ画像の生成を指示すると、パノラマ画像生成部120は、ステップST1において、パノラマ画像の生成処理を開始する。なお、ユーザは、パノラマ画像の生成を指示する際に、パノラマ画像の生成に使用される複数の画像を、例えば記録媒体116に記録されている静止画像データファイルを選択する等して指定する。
次に、パノラマ画像生成部120は、ステップST2において、パノラマ画像の生成に使用される複数の画像を入力する。この場合、パノラマ画像生成部120は、記録再生部115を通じて、記録媒体116から当該複数の画像の静止画像データを読み出し、図示しない、例えば、SDRAM等の半導体メモリで構成されるメモリ部に一時的に格納する。
次に、パノラマ画像生成部120は、ステップST3において、複数の画像の位置合わせを行う。この場合、パノラマ画像生成部120は、画像同士の相関を見ることで、位置合わせを行う。画像同士の相関を見る手法としては、詳細説明は書略するが、従来周知のブロックマッチング法等の手法がある。
図3は、複数の画像の位置合わせの処理により、それらの位置が確定した状態を示している。この例は、上述の図20に示す5枚の画像P1〜P5に対して位置合わせを行った場合について示している。位置合わせの処理により、画像P1〜P5の左下の位置(X0,Y0)〜(X4,Y4)が確定される。なお、ここでは、横軸をX軸、縦軸をY軸、画像P1の左下の位置(X0,Y0)を原点(0,0)としている。また、画像間の位置関係は、平行移動成分のみであり、回転成分はないものとする。
次に、パノラマ画像生成部120は、ステップST4において、出力画像領域、すなわち、複数の画像のうちパノラマ画像として切り出すべき切り出し領域の確定を行う。この場合、切り出し領域として、例えば、図4に斜線を付して示す領域ARのように、矩形領域の確定が行われる。この実施の形態においては、この矩形領域は、高さ方向が最大となるように自動的に決定される。切り出し領域の確定処理の詳細については後述する。
次に、パノラマ画像生成部120は、ステップST5において、複数の画像から切り出し領域の画像を切り出すために、ステップST4で確定された切り出し領域(図4の切り出し領域AR参照)の各位置における画素の値を決定する。この場合、切り出し領域において注目している位置と同じ位置にある、各画像の画素の値が、該注目位置における画素の値とされる。なお、注目位置に複数の画像の画素が対応しているときには、いずれかの画像の画素の値が用いられるか、あるいは、複数の画像の画素の値の平均値が用いられる。
次に、パノラマ画像生成部120は、ステップST6において、ステップST5で画素値が確定された切り出し領域の画像を、出力画像(パノラマ画像)として出力する。この場合、パノラマ画像生成部120は、この出力画像の静止画像データを、記録再生部115を通じて、記録媒体116に書き込む。なお、この場合、この出力画像の静止画像データは表示部117に供給され、表示部117に、生成されたパノラマ画像が表示される。これにより、ユーザは、生成されたパノラマ画像の確認が可能となる。
パノラマ画像生成部120は、ステップST6の処理の後、ステップST7において、
パノラマ画像を生成する一連の処理を終了する。
[切り出し領域の確定処理]
次に、上述のパノラマ画像生成部120における切り出し領域の確定処理の詳細を説明する。パノラマ画像の場合には、幅よりも高さ方向が重要である。そのため、パノラマ画像生成部120では、上述したように、切り出し領域として、高さ方向が最大となる矩形領域を確定することが行われる。
図5には、各画像P1〜P5の左下および右下の頂点を白四角で、左上および右上の頂点を黒四角で示している。これら点の位置は、上述の図2のステップST3の複数の画像の位置合わせ処理により各画像P1〜P5の左下の位置(X0,Y0)〜(X4,Y4)が確定されることで、確定される。例えば、画像P1の各頂点の位置は、以下のように確定される(図5参照)。ここで、画像の水平画素幅をwh、垂直画素幅をwvとする。
画像P1の左下の頂点の位置は(X0,Y0)となる。また、画像P1の左上の頂点の位置は(X0,Y0+wv)となる。また、画像P1の右下の頂点の位置は(X0+wh,Y0)となる。さらに、画像P1の右上の頂点の位置は(X0+wh,Y0+wv)となる。画像P2〜P5の各頂点の位置についても、同様に確定される。
高さ方向が最大となる矩形領域を選ぶということは、白四角よりも上側で、かつ、黒四角よりも下側に存在する矩形領域の中で、高さが最大となる矩形領域を選ぶという問題と同等である。この問題を一般化すると、図6に示すように、与えられた点群800(白四角)よりも上側で、かつ、与えられた点群801(黒四角)よりも下側に存在する矩形領域の中で高さ(H)が最大となる矩形領域を選ぶという問題になる。なお、図6においては、矩形領域の底辺(左下頂点と右下頂点を結ぶ辺)を実線で、矩形領域の上辺(左上頂点と右上頂点を結ぶ辺)を一点鎖線で示している。
この問題を、図7を用いて、さらに正確に述べる。すなわち、2次元(X,Y)平面上に、第1の点群800(図7の白四角で表示)と、第2の点群801(図7の黒四角で表示)が与えられているとする。第1の点群800よりも上側で、かつ、第2の点群801よりも下側に存在する矩形領域の中で高さHが最大となる矩形領域(図7の900)を選ぶには、どのようにすればよいか、という問題である。
もちろん、以下の第1の条件および第2の条件の下においてである。第1の条件は、第1の点群800(図7の白四角で表示)の中の一番左側の点(X座標の値が一番小さい点)を含み、かつ、Y軸に平行な直線(図7の901)よりも矩形領域は右側に存在すること、である。第2の条件は、第1の点群800(図7の白四角で表示)の中の一番右側の点(X座標の値が一番大きい点)を含み、かつ、Y軸に平行な直線(図の902)よりも矩形領域は左側に存在する、ということである。
なお、各画像の左辺および右辺はY軸に並行であるので、第1の点群800の中の一番左側の点を第2の点群801の中の一番左側の点と置き換え、第1の点群800の中の一番右側の点を第2の点群801の中の一番右側の点と置き換えても同じである。
また、矩形領域を求めるということは、図7に示したように、矩形領域の左下の頂点の位置(すなわち、切り出し領域オフセットベクトル)(Xos,Yos)、切り出し領域の傾き角度S、切り出し領域の幅W、切り出し領域の高さHを求めるということである。ここで、幅Wとは、左下頂点と右下頂点の距離(底辺の長さ)、または、左上頂点と右上頂点の距離(上辺の長さ)である。高さHとは、左下頂点と左上頂点の距離(左辺の長さ)、または、右下頂点と右上頂点の距離(右辺の長さ)である。傾き角度Sとは、X軸と底辺(または上辺)とのなす角度であり、底辺がX軸と平行であれば0度、底辺が右下がりの場合にはマイナス、底辺が右上がりであればプラスとなる。図7では、傾き角度Sがマイナスの例を示している。
[切り出し領域の確定処理で使用する法則]
ここで、切り出し領域の確定処理の処理手順を説明する前に、今回発見した重要な法則について説明する。
角度S’をある任意の値に決める。ただし、−90度<S’<90度とする。このとき、2次元XY空間上に与えられた第2の点群の中の1点と接し(1点を含み)、角度がS’である直線の中で一番Y軸切片の値が小さいものを求める。このときの第2の点群の中のその点をPb、その直線をLb、Y軸切片の値をYbとする。さらに、その2次元XY空間上に与えられた第1の点群の中の1点と接し(1点を含み)、角度がS’である直線の中で一番Y軸切片の値が大きいものを求める。このときの第1の点群の中のその点をPa、その直線をLa、Y軸切片の値をYaとする。
直線Laと直線Lbの「方向を加味した距離」をH(S’)とする。ただし、「方向を加味した距離」とは、Ya≦Ybの場合は、2直線LaとLbのユークリッド距離(0または正の値)と定義し、Ya>Ybの場合は、2直線LaとLbのユークリッド距離を(−1)倍した値(負の値)と定義する。HはS’に依存するので明示的にH(S’)と記す。Paを始点、Pbを終点とするベクトルの方向とX軸のなす角度をP(Pの取りうる範囲は−180度<P≦180度)とする。
例えば、図8に示すように、Paを始点、Pbを終点とするベクトルBabがX軸の正の方向である場合にはP=0度、このベクトルBabがY軸の正の方向である場合にはP=90度、このベクトルBabがY軸の負の方向である場合にはP=−90度である。また、PaとPbが一致する場合は、このベクトルBabはゼロベクトルとなるが、便宜的にP=−90度とする。
「法則1」:
P=−90度の場合には、任意のS”(−90度<S”<90度)について、H(S”)≦0である。
「法則2」:
−90度<P<(S’+90)度の場合には、S’<S”となる任意のS”(−90度<S”<90度)に対して、H(S”)<H(S’)である。
「法則3」:
P=S’+90度の場合には、任意のS”(−90度<S”<90度)について、H(S”)≦H(S’)である。
「法則4」:
「−180度<P<−90度」あるいは「(S’+90)度<P≦180度」の場合には、S”<S’となる任意のS”(−90度<S”<90度)に対して、H(S”)<H(S’)である。
これらの法則が成立することを、図9〜図11を用いて説明する。図9は、法則1の場合の例を示している。0度<S’<90度で、かつ、P=−90度の場合である。この場合、直線LaおよびLbの傾き角度S’に依らずに、H(S’)が負になることは明らかである。図10は、法則2の場合の例を示している。0度<S’<90度で、かつ、S’<P<(S’+90)度の場合である。この場合、直線LaおよびLbの傾き角度S’を大きくすれば、H(S’)が小さくなることは明らかである。
図11は、法則3の場合の例を示している。0度<S’<90度で、かつ、P=(S’+90)度の場合である。この場合、直線LaおよびLbの傾き角度S’を大きくあるいは小さくすれば、H(S’)が小さくなることは明らかである。図12は、法則4の場合の例を示している。0度<S’<90度で、かつ、(S’+90)度<P≦180度の場合である。この場合、直線LaおよびLbの傾き角度S’を小さくすれば、H(S’)が小さくなることは明らかである。
他の場合も、同様に考えれば、上述の法則1〜4が成立していることは明らかである。
なお、今回解こうとしている問題において、「X軸と底辺のなす角度はS’」という限定条件を付ければ、上述のLaおよびLbが、それぞれ、求める矩形領域の底辺と上辺になっていることは明らかである。
[切り出し領域の確定処理の処理手順]
パノラマ画像生成部120における切り出し領域の確定処理(図2のステップST4の処理)の処理手順を説明する。図13〜図15のフローチャートは、その処理手順を示している。
パノラマ画像生成部120は、ステップST11において、処理を開始する。そして、パノラマ画像生成部120は、ステップST12において、入力画像、つまりパノラマ画像の生成に使用される複数の画像の4隅の位置情報を入力する。この複数の画像の四隅の位置情報は、上述したように、複数の画像の位置合わせにより、各画像の位置が確定されるとき、同時に確定されている(図2のステップST3)。
次に、パノラマ画像生成部120は、ステップST13において、考慮すべき傾き角度の設定を行う。通常、ユーザは傾けて撮影することはないので、傾き角度は、±60度の範囲を考えれば十分である。ステップST13においては、minS=−60度、maxS=60度とされる。このminSとmaxSは、切り出し領域(矩形領域)の高さを最大とするためのその傾き角度の探索範囲であり、以降の処理で更新されて、狭まっていく。
パノラマ画像生成部120は、ステップST13の処理の後、ステップST14〜ステップST17の繰り返し処理に移る。パノラマ画像生成部120は、ステップST14〜ステップST17の処理を所定回数、この実施の形態においては10回だけ繰り返し、その後に、ステップST18の処理に移る。後述するように、1回の処理で、傾き角度の探索範囲(minS以上、maxS以下の範囲)が半分に狭められるので、10回の繰り返しにより、切り出し領域(矩形領域)の高さを最大とするためのその傾き角度は、以下の精度で求まる。精度を上げたい場合には、繰り返し処理の回数を増やせばよい。
{(ステップST13で設定されたmaxS)−(ステップST13で設定されたminS)}÷(2の10乗)=(120÷1024)度
パノラマ画像生成部120は、ステップST14において、現在探索範囲として指定されている範囲の中央の値{(maxS+minS)÷2}を調査するために、S’=(maxS+minS)÷2とする。そして、パノラマ画像生成部120は、ステップST15の処理に移る。
このステップST15において、パノラマ画像生成部120は、第2の点群(各入力画像の左上の頂点および右上の頂点の集合)の中の1点と接し(1点を含み)、傾き角度がS’である直線の中で一番Y軸切片の値が小さいものを求める。具体的には、パノラマ画像生成部120は、第2の点群のすべての点において、その点を通り傾き角度S’の直線を求め、Y軸切片の値を計算する。そして、パノラマ画像生成部120は、これらY軸切片の値の中で一番小さいものを求めればよい。このときの点群の中のその点をPb、Y軸切片の値をYbとする。そして、パノラマ画像生成部120は、ステップST16の処理に移る。
このステップST16において、パノラマ画像生成部120は、第1の点群(各入力画像の左下の頂点および右下の頂点の集合)の中の1点と接し(1点を含み)、角度がS’である直線の中で一番Y軸切片の値が大きいものを求める。具体的には、パノラマ画像生成部120は、第1の点群のすべての点において、その点を通り角度S’の直線を求め、Y軸切片の値を計算する。そして、パノラマ画像生成部120は、これらY軸切片の値の中で一番大きいものを求めればよい。このときの点群の中のその点をPa、Y軸切片の値をYaとする。そして、パノラマ画像生成部120は、ステップST17に進む。上述のステップST15およびステップST16の処理により、角度S’を有する帯状領域のうち、第1の点群よりも上側に存在し、かつ第2の点群よりも下側に存在するという条件を満たす最大の高さを有する帯状領域が選択される。
パノラマ画像生成部120は、ステップST17において、Paを始点、Pbを終点とするベクトルの方向(X軸となす角度P)が、−90≦P≦S’+90の範囲内にある場合には、maxS=S’とする。それ以外(すなわち、−180<P<−90またはS’+90<P≦180)であれば、minS=S’とする。これにより、maxSまたはminSのいずれかが更新され、次に探索する範囲は半分になる。
パノラマ画像生成部120は、ステップST17の処理の後、ステップST14〜ステップST17の一連の処理が規定の回数である10回行われた場合には、ステップST18に進み、規定回数未満であれば、ステップST14に戻る。上述のステップST17およびステップST14の処理により、ステップST15およびステップST16の処理で選択された帯状領域と接する第1の点群の中の第1の点Pa、この帯状領域と接する第2の点群の中の第2の点Pb、および角度S’に基づいて、この角度S’の新たな候補が選択される。ステップST15およびステップST16による帯状領域の選択およびステップST17およびステップST14による角度S’の新たな候補の選択が繰り返えされることにより、第1の点群よりも上側に存在し、かつ第2の点群よりも下側に存在するという条件を満たす高さ方向が最大の帯状領域が決定される。
さて、パノラマ画像生成部120は、ステップST17で探索範囲を狭めているが、この狭め方の妥当性は、先に述べた法則から明らかである。すなわち、Pが「法則2」に当てはまる場合には、S’よりも大きい値を探索することは無意味であるので、maxS=S’とすることで、以降ではS’よりも大きい値は探索範囲から除外している。同様に、Pが「法則4」に当てはまる場合には、S’よりも小さい値を探索することは無意味であるので、minS=S’とすることで、以降ではS’よりも小さい値は探索範囲から除外している。
また、Pが「法則1」に当てはまる場合(P=−90度)には、切り出し領域(矩形領域)の傾き角度をどのように設定しても、H(S’)が正とはならないので、切り出し領域(矩形領域)は求まらないことになる(与えられた問題の解は存在しない)。P=−90度のときは、例外処理をしてもよい。しかし、この実施の形態においては、処理の一貫性のため、とりあえず、maxS=S’として、ステップST14〜ステップST17の繰り返し処理を規定回数行わせ、その後で、「切り出し領域(矩形領域)は求まらない」という判定をさせることにしている。
また、Pが「法則3」に当てはまる場合(P=(S’+90)度)には、現在のS’の時にH(S’)が最大となるので、求めるべき傾き角度は現在のS’である。この時点で求めるべき傾き角度は求まっている。しかし、この実施の形態においては、処理の一貫性のため、とりあえず、maxS=S’として、ステップST14〜ステップST17の繰り返し処理を規定回数行わせている。
ステップST18に到達した時点で、探索範囲は十分に狭められており、求める傾き角度は、この時点におけるminSとmaxSの間にある。そこで、S=(minS+maxS)÷2とすれば、Sは、十分な精度で、求めるべき傾き角度を表現している。パノラマ画像生成部120は、ステップST18において、S=(minS+max)÷2として、第1の点群よりも上側に存在し、かつ第2の点群よりも下側に存在するという条件を満たす最大の高さを有する帯状領域、従って切り出し領域の傾き角度Sを決定する。
次に、パノラマ画像生成部120は、ステップST19において、YaとYbの値を評価する。Yaは求める矩形領域の底辺を含む直線のY軸切片であり、Ybは求める矩形領域の上辺を含む直線のY軸切片である。したがって、Yb>Yaでない限り、矩形領域は存在しない(与えられた問題の解は存在しない)。そこで、パノラマ画像生成部120は、ステップST19において、Yb≦Yaであるか否かを判定する。
Yb≦Yaであるとき、パノラマ画像生成部120は、ステップST20の処理に移る。このステップST20において、パノラマ画像生成部120は、矩形領域は存在しないので、矩形領域を切り出すことは不可能であるとして、切り出し領域の確定処理を強制終了する。そして、パノラマ画像生成部120は、ステップST29において、一連の処理を終了する。
一方、ステップST19でYb≦Yaでないとき、つまりYb>Yaであるとき、パノラマ画像生成部120は、矩形領域を切り出すことは可能であるとして、ステップST21の処理に移る。ここで、求める矩形領域の傾き角度Sが0度以上である場合と、0度未満である場合とでは、処理内容が違う。そこで、パノラマ画像生成部120は、ステップST21において、0≦Sである否か判定する。
0≦Sでないとき、つまり0>Sであるとき、パノラマ画像生成部120は、ステップST22の処理に進む。この場合、傾き角度Sは負であるので、求める矩形領域ARは、図16に示すような状態にある。図中で、一点鎖線は複数の入力画像の左端の中で一番左側にあるものを示し、二点鎖線は複数の入力画像の右端の中で一番右側にあるものを示している。一点鎖線と二点鎖線で囲まれた、傾き角度Sの最大矩形領域が、求めるべき矩形領域ARである。
パノラマ画像生成部120は、ステップST22において、「第1の点群の中でX座標の値が一番小さい点を含み、かつ、Y軸に平行な直線」と、「Y軸切片の値がYaで、かつ、X軸との傾き角度がSである直線」との交点を求める。この交点を、図16に示すように、(Xa0,Ya0)とする。そして、パノラマ画像生成部120は、ステップST23の処理に移る。
このステップST23において、パノラマ画像生成部120は、「第の点群の中でX座標の値が一番大きい点を含み、かつ、Y軸に平行な直線」と、「Y軸切片の値がYbで、かつ、X軸との傾き角度がSである直線」との交点を求める。この交点を、図16に示すように、(Xa1,Ya1)とする。そして、パノラマ画像生成部120は、ステップST24の処理に移る。
このステップST24において、パノラマ画像生成部120は、(Xa0,Ya0)を左下頂点、(Xa1,Ya1)を右上頂点とし、底辺のX軸との傾き角度がSとなる矩形領域を求める。この矩形領域が、求める矩形領域ARである。パノラマ画像生成部120は、ステップST24の処理の後、ステップST28の処理に移る。
また、ステップST21で0≦Sであるとき、パノラマ画像生成部120は、ステップST25の処理に進む。この場合、傾き角度Sは0または正であるので、求める矩形領域ARは、図17に示すような状態にある。図中で、一点鎖線は複数の入力画像の左端の中で一番左側にあるものを示し、二点鎖線は複数の入力画像の右端の中で一番右側にあるものを示している。一点鎖線と二点鎖線で囲まれた、傾き角度Sの最大矩形領域が、求めるべき矩形領域ARである。
パノラマ画像生成部120は、ステップST25において、「第の点群の中でX座標の値が一番小さい点を含み、かつ、Y軸に平行な直線」と、「Y軸切片の値がYbで、かつ、X軸との傾き角度がSである直線」との交点を求める。この交点を、図17に示すように、(Xa2,Ya2)とする。そして、パノラマ画像生成部120は、ステップST26の処理に移る。
このステップST26において、パノラマ画像生成部120は、「第1の点群の中でX座標の値が一番大きい点を含み、かつ、Y軸に平行な直線」と、「Y軸切片の値がYaで、かつ、X軸との傾き角度がSである直線」との交点を求める。この交点を、図17に示すように、(Xa3,Ya3)とする。そして、パノラマ画像生成部120は、ステップST27の処理に移る。
このステップST27において、パノラマ画像生成部120は、(Xa2,Ya2)を左上頂点、(Xa3,Ya3)を右下頂点とし、底辺のX軸との傾き角度がSとなる矩形領域を求める。この矩形領域が、求める矩形領域ARである。パノラマ画像生成部120は、ステップST27の処理の後、ステップST28の処理に移る。
ステップST28に到達した時点で、切り出し領域として求める矩形領域ARが求まっている。そこで、このステップST28において、パノラマ画像生成部120は、この矩形領域ARの情報を出力する。
すなわち、パノラマ画像生成部120は、Sを切り出し領域の傾き角度として出力し、求まった矩形領域の左下頂点の座標を切り出し領域オフセットベクトル(Xos,Yos)として出力する。また、パノラマ画像生成部120は、求まった矩形領域の幅(底辺の長さ)を、切り出し領域の幅Wとして出力し、求まった矩形領域の高さ(左辺の長さ)を、切り出し領域の高さHとして出力する。
パノラマ画像生成部120は、ステップST28の処理の後、ステップST29において、一連の処理を終了する。
以上説明したように、図1に示すデジタルカメラ100において、デジタル信号処理部114のパノラマ画像生成部120では、複数の画像からパノラマ画像として切り出すべき切り出し領域(矩形領域)は、以下のように自動的に決定される。すなわち、パノラマ画像生成部120では、第1の点群(複数の画像の左下位置および右下位置)よりも上側に存在し、かつ第2の点群(複数の画像の左上位置および右上位置)よりも下側に存在するという条件を満たす高さが最大の矩形領域に決定される。
したがって、パノラマ画像生成部120では、複数の画像から高さが最大の矩形領域が切り出されてパノラマ画像が生成されるために、常に良好なパノラマ画像を得ることができる。また、その場合、切り出し領域は自動的に決定されるため、ユーザが手作業で行っていた場合のように時間がかかり過ぎるということもなく、短時間でパノラマ画像を得ることができる。
<2.変形例>
なお、上述実施の形態においては、CPU101の制御の下、デジタルカメラ100のデジタル信号処理部114内のパノラマ画像生成部120で複数の画像からパノラマ画像が生成される例を示した。しかし、デジタルカメラで撮像された複数の画像を、コンピュータ装置に送って、このコンピュータ装置内でパノラマ画像を生成することも可能である。この場合、詳細説明は省略するが、コンピュータ装置内でも、上述したパノラマ画像生成部120における処理と同様の処理により、切り出し領域(矩形領域)が自動的に決定されることで、パノラマ画像を良好に生成できる。
図18は、パノラマ画像の生成に使用されるコンピュータ装置200の構成例を示している。
このコンピュータ装置200は、CPU(Central Processing Unit)11、メモリ12、ディスプレイコントローラ13、入力機器インターフェース14、ネットワークインターフェース15を有している。また、このコンピュータ装置200は、外部機器インターフェース16およびデジタルカメラインターフェース18を有している。これらは、バス17に接続されている。
ディスプレイ19は、ディスプレイコントローラ13を介してバス17に接続されている。キーボード(KBD)20およびマウス21は、入力機器インターフェース14を介してバス17に接続されている。また、ハードディスクドライブ(HDD)22およびメディアドライブ23は、外部機器インターフェース16を介してバス17に接続されている。デジタルカメラは、デジタルカメラインターフェース18を介してバス17に接続されている。また、コンピュータ装置200は、ネットワークインターフェース15を介して、インターネット等のネットワークに接続される。
CPU11は、コンピュータ装置200のメイン・コントローラである。このCPU11は、オペレーティング・システム(OS)の制御下で、各種のアプリケーションを実行する。CPU11は、例えば、デジタルカメラから一度ハードディスクドライブ22にダウンロードされた画像を処理するアプリケーション・プログラムを実行することができる。アプリケーション・プログラムの中には、上述したパノラマ画像生成処理を行う一連の処理プログラムがインプリメントされている。CPU11は、バス17によって他の機器類と相互接続されている。
メモリ12は、CPU11において実行されるプログラム・コードを格納し、また実行中の作業データを一時保管するために使用される記憶装置である。メモリ12は、例えば、ROMなどの不揮発性メモリおよびDRAMなどの揮発性メモリの双方を含む構成とされている。
ディスプレイコントローラ13は、CPU11が発行する描画命令を実際に処理するための専用コントローラである。ディスプレイコントローラ13において処理された描画データは、例えばフレーム・バッファ(図示しない)に一旦書き込まれた後、ディスプレイ19によって画面出力される。例えば、ハードディスクドライブ22から読み出された画像はディスプレイ19で画面表示されて、ユーザは見て楽しむことができる。
入力機器インターフェース14は、キーボード20やマウス21などのユーザ入力機器をコンピュータ装置200に接続するための装置である。ユーザは、キーボード20やマウス21を介して、画像を再生するためのコマンドなどを入力することができる。
ネットワーク・インターフェース15は、Ethernet(登録商標)などの所定の通信プロトコルに従って、コンピュータ装置200を、LAN(Local Area Network)などの局所的ネットワーク、さらにはインターネットのような広域ネットワークに接続する。
ネットワーク上では、複数のホスト端末やサーバー(図示しない)がトランスペアレントな状態で接続され、分散コンピューティング環境が構築されている。ネットワーク上では、ソフトウェア・プログラムやデータ・コンテンツなどの配信サービスを行うことができる。例えば、他人が撮影した画像が保存されている他のサーバーから画像データを、ネットワーク経由でハードディスクドライブ22へダウンロードすることができる。
デジタルカメラインターフェース18は、デジタルカメラから供給される画像をコンピュータ装置200内に取り込むための装置である。外部機器インターフェース16は、ハードディスクドライブ22、メディアドライブ23などの外部装置を、コンピュータ装置200に接続するための装置である。
ハードディスクドライブ22は、従来周知のように、記憶担体としての磁気ディスクを固定的に搭載した外部記憶装置であり、記憶容量やデータ転送速度などの点で他の外部記憶装置よりも優れている。また、このハードディスクドライブ22は、ランダムアクセスも可能である。ソフトウェア・プログラムを実行可能な状態でハードディスクドライブ22上に置くことをプログラムのシステムへの「インストール」と呼ぶ。通常、ハードディスクドライブ22には、CPU11が実行すべきオペレーティング・システムのプログラム・コードや、アプリケーション・プログラム、デバイス・ドライバなどが不揮発的に格納されている。例えば、上述したパノラマ画像生成処理を行う一連の処理プログラムを、ハードディスクドライブ22上にインストールすることができる。
メディア・ドライブ23は、CD(Compact Disc)、MO(Magneto-Optical disc)、DVD(Digital VersatileDisc)などの可搬型メディアを装填して、そのデータ記録面にアクセスするための装置である。可搬型メディアは、主として、ソフトウェア・プログラムやデータ・ファイルなどをコンピュータ可読形式のデータとしてバックアップすることや、これらをシステム間で移動(すなわち販売・流通・配布を含む)する目的で使用される。画像の処理を行うためのアプリケーション・プログラムを、これら可搬型メディアを利用して複数の機器間で物理的に流通・配布することができる。
また、上述実施の形態において、第1の点群は撮像位置を水平方向に順次ずらして撮像された複数の画像の左下位置および右下位置により構成され、第2の点群はその複数の画像の左上位置および右上位置により構成される例を示した。つまり、上述の実施の形態では、第1の点群および第2の点群が並んで存在する第1の方向は垂直方向であり、切り出し領域としての矩形領域の傾き角度の基準となる第2の方向は水平方向であった。
しかし、第1の点群および第2の点群が並んで存在する第1の方向は垂直方向に限定されるものではない。例えば、この発明は、撮像位置を垂直方向に順次ずらして撮像された複数の画像からパノラマ画像を生成する場合にも適用できる。その場合には、第1の点群は複数の画像の左上位置および左下位置により構成され、第2の点群はその複数の画像の右上位置および右下位置により構成され、第1の点群および第2の点群が並んで存在する第1の方向は水平方向となる。
この発明は、第1の点群よりも上側に存在し、かつ第2の点群よりも下側に存在するという条件を満たす高さが最大の帯状領域を決定できるものであり、例えば、パンしながら連写した複数の画像から1枚のパノラマ画像を生成する際に適用できる。
この発明の実施の形態としてのデジタルカメラの構成例を示すブロック図である。 パノラマ画像生成部におけるパノラマ画像の生成処理の処理手順を示すフローチャートである。 複数の画像の位置合わせ処理により、それらの位置が確定した状態を示す図である。 複数の画像からパノラマ画像を生成する際に切り出し領域として確定される矩形領域の一例を示す図である。 パノラマ画像を生成する際に使用される複数の画像P1〜P5の左下および右下の頂点を白四角で、左上および右上の頂点を黒四角で示した図である。 高さ方向が最大となる矩形領域を選ぶということが、白四角よりも上側で、かつ、黒四角よりも下側に存在する矩形領域の中で、高さが最大となる矩形領域を選ぶという問題と同等であることを説明するための図である。 与えられた点群(白四角)よりも上側で、かつ、与えられた点群(黒四角)よりも下側に存在する矩形領域の中で高さ(H)が最大となる矩形領域を選ぶという問題を説明するための図である。 矩形領域と接する第1の点群の点Paを始点、矩形領域と接する第2の点群の点Pbを終点とするベクトルの方向とX軸のなす角度Pを説明するための図である。 法則1の場合の例(0度<S’<90度で、かつ、P=−90度の場合)を示す図である。 法則2の場合の例(0度<S’<90度で、かつ、S’<P<(S’+90)度の場合)を示す図である。 法則3の場合の例(0度<S’<90度で、かつ、P=(S’+90)度の場合)を示す図である。 法則4の場合の例(0度<S’<90度で、かつ、(S’+90)度<P≦180度の場合)を示す図である。 パノラマ画像生成部における切り出し領域の確定処理の処理手順を説明するためのフローチャート(1/3)である。 パノラマ画像生成部における切り出し領域の確定処理の処理手順を説明するためのフローチャート(2/3)である。 パノラマ画像生成部における切り出し領域の確定処理の処理手順を説明するためのフローチャート(3/3)である。 傾き角度Sが負である場合に、求める矩形領域ARの状態を示す図である。 傾き角度Sが正である場合に、求める矩形領域ARの状態を示す図である。 パノラマ画像の生成に使用されるコンピュータ装置の構成例を示すブロック図である。 建物B1〜B4が存在する風景の一例を示す図である。 風景をパンしながら撮像して得られた複数の画像の一例を示す図である。 複数の画像からパノラマ画像を生成するために、ユーザが指定した切り出し領域(矩形領域)の一例を示す図である 複数の画像からパノラマ画像を生成するために、ユーザが指定した切り出し領域の他の例を示す図である。 複数の画像から切り出されたパノラマ画像の一例を示す図である。 複数の画像からパノラマ画像を生成するために、ユーザが指定した切り出し領域の他の例を示す図である。
符号の説明
100・・・デジタルカメラ
101・・・CPU
102・・・ROM
103・・・RAM
104・・・ユーザ操作部
111・・・撮像部
112・・・撮像信号処理部、
113・・・A/D変換部
114・・・デジタル信号処理部
115・・・記録再生部
116・・・記録媒体
117・・・表示部
120・・・パノラマ画像生成部
200・・・コンピュータ装置
800・・・複数の画像の左下および右下の頂点からなる第1の点群
801・・・複数の画像の左上および右上の頂点からなる第2の点群
900・・・第1の点群よりも上側で、かつ、第2の点群よりも下側に存在する矩形領域の中で高さHが最大となる矩形領域
901・・・第1の点群の中の一番左側の点(X座標の値が一番小さい点)を含み、かつ、Y軸に平行な直線
902・・・第1の点群の中の一番右側の点(X座標の値が一番大きい点)を含み、かつ、Y軸に平行な直線

Claims (3)

  1. 撮像位置を水平方向に順次ずらして撮像された3枚以上の画像から帯状領域を求める情報処理部と、
    上記3枚以上の画像から上記情報処理部で求められた帯状領域から選択された上記第1の点群および上記第2の点群に挟まれた矩形領域を切り出す領域切り出し部を備え、
    上記情報処理部は、
    水平方向に対して第1の角度を有する帯状領域のうち、上記3枚以上の画像の左下位置および右下位置により構成される第1の点群よりも上側に存在し、かつ上記3枚以上の画像の左上位置および右上位置により構成される第2の点群よりも下側に存在するという条件を満たす最大の高さを有する第1の帯状領域を選択する帯状領域選択部と、
    上記第1の帯状領域と接する上記第1の点群の中の第1の点、上記第1の帯状領域と接する上記第2の点群の中の第2の点、および上記第1の角度の関係に基づいて、上記第1の角度よりも大きい角度または上記第1の角度よりも小さい角度の中から上記第1の角度の候補を選択する角度選択部と、
    上記帯状領域選択部による上記第1の帯状領域の選択と上記角度選択部による上記第1の角度の候補選択とが繰り返されるように制御し、最終的に上記帯状領域選択部で選択された上記第1の帯状領域を処理結果とする制御部を有する
    画像処理装置。
  2. 撮像位置を水平方向に順次ずらして撮像された3枚以上の画像から帯状領域を求める情報処理ステップと、
    上記3枚以上の画像から、上記情報処理ステップで求められた帯状領域から選択された上記第1の点群および上記第2の点群に挟まれた矩形領域を切り出す領域切り出しステップを備え、
    上記情報処理ステップは、
    水平方向に対して第1の角度を有する帯状領域のうち、上記3枚以上の画像の左下位置および右下位置により構成される第1の点群よりも上側に存在し、かつ上記3枚以上の画像の左上位置および右上位置により構成される第2の点群よりも下側に存在するという条件を満たす最大の高さを有する第1の帯状領域を選択する帯状領域選択ステップと、
    上記第1の帯状領域と接する上記第1の点群の中の第1の点、上記第1の帯状領域と接する上記第2の点群の中の第2の点、および上記第1の角度の関係に基づいて、上記第1の角度よりも大きい角度または上記第1の角度よりも小さい角度の中から上記第1の角度の候補を選択する角度選択ステップと、
    上記帯状領域選択ステップによる上記第1の帯状領域の選択と上記角度選択ステップによる上記第1の角度の候補選択とが繰り返されるように制御し、最終的に上記帯状領域選択ステップで選択された上記第1の帯状領域を処理結果とする制御ステップを有する
    画像処理方法。
  3. コンピュータを、
    撮像位置を水平方向に順次ずらして撮像された3枚以上の画像から帯状領域を求める情報処理手段と、
    上記3枚以上の画像から、上記情報処理手段で求められた帯状領域から選択された上記第1の点群および上記第2の点群に挟まれた矩形領域を切り出す領域切り出し手段として機能させ、
    上記情報処理手段は、
    水平方向に対して第1の角度を有する帯状領域のうち、上記3枚以上の画像の左下位置および右下位置により構成される第1の点群よりも上側に存在し、かつ上記3枚以上の画像の左上位置および右上位置により構成される第2の点群よりも下側に存在するという条件を満たす最大の高さを有する第1の帯状領域を選択する帯状領域選択手段と、
    上記第1の帯状領域と接する上記第1の点群の中の第1の点、上記第1の帯状領域と接する上記第2の点群の中の第2の点、および上記第1の角度の関係に基づいて、上記第1の角度よりも大きい角度または上記第1の角度よりも小さい角度の中から上記第1の角度の候補を選択する角度選択手段と、
    上記帯状領域選択手段による上記第1の帯状領域の選択と上記角度選択手段による上記第1の角度の候補選択とが繰り返されるように制御し、最終的に上記帯状領域選択手段で選択された上記第1の帯状領域を処理結果とする制御手段を有する
    プログラム。
JP2008319109A 2008-12-16 2008-12-16 画像処理装置、画像処理方法およびプログラム Expired - Fee Related JP5257044B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2008319109A JP5257044B2 (ja) 2008-12-16 2008-12-16 画像処理装置、画像処理方法およびプログラム
US12/636,073 US8340469B2 (en) 2008-12-16 2009-12-11 Information processing apparatus, information processing method, program, and image processing apparatus
CN200910258062.1A CN101753819B (zh) 2008-12-16 2009-12-16 图像信息处理装置、图像信息处理方法和图像处理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008319109A JP5257044B2 (ja) 2008-12-16 2008-12-16 画像処理装置、画像処理方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2010146043A JP2010146043A (ja) 2010-07-01
JP5257044B2 true JP5257044B2 (ja) 2013-08-07

Family

ID=42311749

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008319109A Expired - Fee Related JP5257044B2 (ja) 2008-12-16 2008-12-16 画像処理装置、画像処理方法およびプログラム

Country Status (3)

Country Link
US (1) US8340469B2 (ja)
JP (1) JP5257044B2 (ja)
CN (1) CN101753819B (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4929237B2 (ja) * 2008-06-23 2012-05-09 キヤノン株式会社 画像処理装置及び画像処理方法
JP5218071B2 (ja) * 2009-01-07 2013-06-26 ソニー株式会社 画像処理装置、画像処理方法およびプログラム
US8437497B2 (en) * 2011-01-27 2013-05-07 Seiko Epson Corporation System and method for real-time image retensioning and loop error correction
IES20120509A2 (en) 2012-11-27 2014-06-04 Digitaloptics Corp Europe Ltd Digital image capture device having a panorama mode
CN103139479A (zh) * 2013-02-25 2013-06-05 广东欧珀移动通信有限公司 一种结束全景预览扫描方法及装置
WO2014167676A1 (ja) * 2013-04-10 2014-10-16 株式会社 東芝 電子機器および画像処理方法
CN106778781B (zh) * 2016-12-14 2018-08-17 维沃移动通信有限公司 一种图片处理方法及装置
CN111917985B (zh) * 2020-08-14 2021-11-16 广东申义实业投资有限公司 三维全景可视化显示的车辆、方法、装置及存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6549681B1 (en) * 1995-09-26 2003-04-15 Canon Kabushiki Kaisha Image synthesization method
JP3241243B2 (ja) * 1995-09-26 2001-12-25 キヤノン株式会社 パノラマ画像合成システム及びパノラマ画像合成方法
US6389179B1 (en) * 1996-05-28 2002-05-14 Canon Kabushiki Kaisha Image combining apparatus using a combining algorithm selected based on an image sensing condition corresponding to each stored image
JPH11205648A (ja) * 1998-01-09 1999-07-30 Olympus Optical Co Ltd 画像合成装置
JP4178657B2 (ja) 1999-04-12 2008-11-12 カシオ計算機株式会社 パノラマ撮影方法及び撮像装置
ATE450840T1 (de) * 1999-08-20 2009-12-15 Yissum Res Dev Co System und verfahren zur berichtigung eines durch eine mobile kamera aufgezeichneten mosaikaehnlichen bildes
JP2005252739A (ja) * 2004-03-05 2005-09-15 Seiko Epson Corp 静止画像生成装置およびその方法
JP5103899B2 (ja) * 2006-12-28 2012-12-19 カシオ計算機株式会社 画像合成装置、画像合成プログラム及び画像合成方法
US8107769B2 (en) * 2006-12-28 2012-01-31 Casio Computer Co., Ltd. Image synthesis device, image synthesis method and memory medium storage image synthesis program
JP4980779B2 (ja) * 2007-04-13 2012-07-18 富士フイルム株式会社 撮影装置、方法およびプログラム

Also Published As

Publication number Publication date
US8340469B2 (en) 2012-12-25
US20100172589A1 (en) 2010-07-08
CN101753819B (zh) 2012-07-04
JP2010146043A (ja) 2010-07-01
CN101753819A (zh) 2010-06-23

Similar Documents

Publication Publication Date Title
JP5257044B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP4845715B2 (ja) 画像処理方法、画像処理装置、プログラム、及び記憶媒体
US6243103B1 (en) Panoramic image generation in digital photography
US7634143B2 (en) Image processing apparatus and method, recording medium, and program
US20100250588A1 (en) Image searching system and image searching method
WO2020048484A1 (zh) 超分辨图像重建方法、装置、终端和存储介质
JP6075294B2 (ja) 画像処理システム及び画像処理方法
US20190313121A1 (en) Information processing device and method
JP7003617B2 (ja) 推定装置、推定方法、及び推定プログラム
JPWO2020194470A1 (ja) 画像生成装置、画像生成方法、および画像生成プログラム
CN112927163A (zh) 图像数据增强方法、装置、电子设备及存储介质
CN112085842A (zh) 深度值确定方法及装置、电子设备和存储介质
CN114466143B (zh) 一种拍摄角度校准方法、装置、终端设备以及存储介质
CN111145360A (zh) 一种实现虚拟现实地图漫游的系统及方法
JP4507677B2 (ja) 画像処理方法および装置、並びにプログラム
JP2002203237A (ja) 曲面像変換方法及びこの曲面像変換方法を記録した記録媒体
JP6857924B1 (ja) モデル生成装置、及び、モデル生成方法
US20220406060A1 (en) Information processing device, information processing system, and information processing method
JP4552115B2 (ja) 画像処理装置および方法、記録媒体、並びにプログラム
JP2020030502A (ja) 画像処理装置、画像処理方法および画像処理プログラム
US20230306570A1 (en) Composite image creating method, composite image creating apparatus, and computer program stored in recording medium to execute the method
JP2000020735A (ja) テクスチャ画像生成装置
JP2023001867A (ja) 情報処理装置、情報処理システム、情報処理方法、及びプログラム
KR20220105869A (ko) 구형 좌표계 영상의 영상 처리 장치
JP2020041950A (ja) 測量装置、測量方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111118

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120802

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120807

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121001

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: 20130326

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130408

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160502

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees