説明

パノラマ画像の生成装置、及び生成方法

【課題】撮像範囲が長辺と短辺で構成される撮像部を用いた場合に、広い視野範囲のパノラマ画像が得られるようにする。
【解決手段】撮像範囲が長辺と短辺で構成される撮像部の撮像方向を制御してパノラマ画像を生成する生成クライアントのコマンド生成部は、撮像範囲の回転のため回転機構を、パノラマ画像の生成のために制御し、生成クライアントの画像合成部は、回転機構を制御して得られる複数の撮像画像からパノラマ画像を生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数回の撮像によりパノラマ画像を生成する生成方法に関する。
【背景技術】
【0002】
パン・チルト機構をもったカメラを用いたパノラマ画像の生成方法として、パン・チルト機構の制御によりカメラの撮像方向を順次変えて複数回の撮像を行い、得られた複数の画像に対し射影変換等の処理をする方法が知られている。
【0003】
特許文献1には、パン・チルト機構の制御により撮像方向を順次変えて撮像した複数の画像を用いてパノラマ画像を生成することが記載されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2001−136514号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、パノラマ画像の生成に用いるカメラによっては、パノラマ画像の視野範囲が狭くなってしまう恐れがあった。
【0006】
例えば、撮像範囲の短辺がチルト方向に対応する状態で撮像された複数の撮像画像でパノラマ画像を生成すると、長辺がチルト方向に対応する状態で撮像した撮像画像でパノラマ画像を生成するよりも、パノラマ画像のチルト方向の視野範囲が狭くなってしまう恐れがあった。
【0007】
より具体的に、図1に示すような、撮像範囲が長辺と短辺で構成される撮像部の撮像方向を制御して、パノラマ画像の生成に用いる複数の撮像画像を取得する場合について説明する。図1(a)の撮像範囲103は、撮像範囲の長辺がパン方向に対応する状態の撮像範囲を示しており、図1(d)の撮像範囲106は、撮像範囲の長辺がチルト方向に対応する状態の撮像範囲を示している。例えば、図1(a)のような状態で、チルト機構の可動範囲の限界に対応する領域(例えばチルト角が0度のときの撮像範囲)を撮像すると、図1(d)のような状態で撮像するよりも、チルト方向の視野範囲が狭くなってしまう恐れがあった。
【0008】
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、より広い視野範囲のパノラマ画像が得られるようにすることである。
【課題を解決するための手段】
【0009】
上記目的を達成するために、本発明の生成装置は、例えば以下の構成を有する。すなわち、撮像範囲が長辺と短辺で構成される撮像部の撮像方向を制御してパノラマ画像を生成する生成装置であって、前記撮像範囲の回転のための回転機構を前記パノラマ画像の生成のために制御する制御手段と、前記回転機構を制御して得られる複数の撮像画像からパノラマ画像を生成する生成手段とを有する。
【発明の効果】
【0010】
本発明によれば、より広い視野範囲のパノラマ画像が得られるようになる。
【図面の簡単な説明】
【0011】
【図1】パノラマ画像の生成方法を説明するための図
【図2】本実施形態のカメラ装置を示す図
【図3】ネットワークカメラシステムの構成例を示す図
【図4】パノラマ画像の生成処理を説明するためのフローチャート
【図5】パノラマ画像の視野範囲の比較を示した図
【発明を実施するための形態】
【0012】
以下に、本発明の好ましい実施の形態を、添付の図面に基づいて説明する。
【0013】
本実施形態のカメラ装置の構成とパノラマ画像の生成方法の概要を、図1及び図2を用いて説明する。
【0014】
図2(a)は、本形態のカメラ装置110の側面図である。パン駆動部はボトムケース201とターンテーブル202で構成され、パン回転軸203を中心にターンテーブル202が回転する構造となっている。また、図2(b)はカメラ装置110の正面図である。チルト駆動部は、レンズ支柱204とレンズケース206で構成され、チルト回転軸205を中心にレンズケース206が回転する構造となっている。ただし、カメラ装置110の構造は、これに限らない。
【0015】
図1(a)〜(c)は、ローテート機構を駆動しない場合、すなわち、ローテート角が0度に固定された状態で、パノラマ画像を生成する場合の例を示している。図1(a)は、カメラ装置110のチルト角が0度(チルト機構の可動範囲の限界)のときのカメラ装置110の状態を示している。なお、図1(a)に示すように、本形態のカメラ装置110の撮像範囲103は長辺と短辺で構成される。
【0016】
また、図1(b)は、撮像範囲の長辺がパン方向に対応する状態で撮像してパノラマ画像を生成する場合の例を示している。図1(b)において、101はカメラ設置位置、102は撮像方向、103は撮像方向102のときの撮像範囲、104は撮像方向の駆動可能範囲を示している。駆動可能範囲104で示すように、本形態のカメラ装置110は、パン方向は360度の駆動が可能であり、チルト方向は0度〜90度の駆動が可能である。図1(c)は、チルト角が0度のときに、ローテート角を0度の状態で撮像した場合の撮像範囲の例である。図1(c)に示すように、ローテート角が0度の状態では、カメラ装置110の撮像範囲の長辺はパン方向に対応し、短辺はチルト方向に対応している。
【0017】
一方、図1(d)、(e)は、ローテート角を90度にした状態でパノラマ画像を生成する場合の例を示している。図1(d)は、カメラ装置110のチルト角が0度のときのカメラ装置110の状態を示している。図1(d)に示すように、ローテート角を90度にすることで、撮像範囲の長辺がチルト方向に対応し、短辺がパン方向に対応する状態となっている。
【0018】
図1(e)は、チルト角が0度のときに、ローテート角を90度にして撮像した場合の撮像範囲の例である。図1(c)及び(e)を比較してわかるように、ローテート角を90度にすることで、ローテート角が0度のときよりも、より下方向の撮像範囲を広くすることができる。
【0019】
図3は、本実施形態のネットワークカメラシステムのブロック図である。
図3に示すように、カメラサーバ301、ビューワクライアント302(以下、クライアント302)、パノラマ画像生成クライアント303(以下、生成クライアント303)が、ネットワーク304を介して接続されている。なお、カメラサーバ301は、図1及び図2のカメラ装置110に対応する。また、本形態では、ネットワーク304に、それぞれ1台ずつ接続される例を説明するが、複数台接続されるようにしても良い。
【0020】
また、ネットワーク304は、後で述べる制御コマンドや画像データを通すのに十分な帯域があるインターネットやイントラネット等のディジタルネットワークであればどのようなものでもよい。なお、本形態では、ネットワークプロトコルとしてTCP/IP(UDP/IP)プロトコルを用いるものし、各装置には、それぞれ異なるIPアドレスを割り当てられているものとする。
【0021】
カメラサーバ301は、ビデオカメラ311、可動雲台312、カメラ・雲台制御部313、通信制御部314、画像入力部315、画像圧縮部316、コマンド解釈部317、記憶部318を含んで構成される。ただし、ビデオカメラ311は、カメラサーバ301とは別の装置であっても良い。
ビデオカメラ311は、撮像して得られた画像データを画像入力部315へ渡す。なお、本形態のビデオカメラ311の撮像範囲は、長辺と短辺で構成される。また、ビデオカメラ311は、動画を撮像することも、静止画を撮像することも可能である。また、ビデオカメラ311のズーム倍率などを含む各種撮像パラメータは、通信制御部314でクライアントから受信した制御コマンドに応じて変更可能である。
【0022】
画像入力部315は、ビデオカメラ311により得られた画像データを画像圧縮部316へ渡す。画像圧縮部316は、画像入力部315からの画像データを圧縮し、通信に必要なヘッダを付加して通信パケットを生成する。本形態の画像圧縮部316は、ビデオカメラ311からのNTSC画像信号をA/D変換し、さらに、MotionJEPGで圧縮するが、この形態に限らない。また、画像データは圧縮しなくても良い。画像圧縮部316は、画像データの通信パケットを通信制御部314へ渡す。
【0023】
通信制御部314は、画像圧縮部316からの画像データをネットワーク304を介してクライアント302や生成クライアント303へ送信する。また、通信制御部314は、クライアント302や生成クライアント303から、ビデオカメラ311の撮像方向やズーム倍率などの制御のための制御コマンドを受信する。通信制御部314は、受信した制御コマンドをコマンド解釈部317へ渡す。コマンド解釈部317は、受信した制御コマンドの内容に応じて、カメラ・雲台制御部313を介して可動雲台312のパン角、チルト角、ローテート角や、ビデオカメラ311のズーム倍率等を制御する。
【0024】
記憶部318は、生成クライアント303により生成されたパノラマ画像を記憶する。また、記憶部318は、現在のパン角、チルト角、ローテート角などの各種パラメータや、過去の撮像で得られた画像データなどを記憶する。
【0025】
クライアント302は、カメラサーバ301のIPアドレスを指定してカメラサーバ301に接続し、カメラサーバ301から受信した画像データに応じた画像を表示させるクライアントである。また、本形態のクライアント302は、可動雲台312のパン角、チルト角、ローテート角や、ビデオカメラ311のズーム倍率などを制御することが可能である。
クライアント302は、通信制御部321、コマンド生成部322、操作入力部323、表示制御部324、画像伸長部325、表示部326を含んで構成される。
【0026】
通信制御部321は、カメラサーバ301から画像データを受信して画像伸長部325へ渡す。通信制御部321が受信する画像データには、パノラマ画像データが含まれる。画像伸長部325は、通信制御部321からの画像データを伸長する。画像伸長部325は、伸長した画像データを表示制御部324へ渡す。表示制御部324は、画像伸長部325からの画像データに基づく画像を表示部326で表示させる。
【0027】
また、クライアント302の操作入力部323は、クライアント302のユーザによる操作内容をコマンド生成部322へ渡す。本形態の操作入力部323は、ユーザ操作のためのGUI(グラフィカルユーザインタフェース)を提供することが可能である。操作入力部323は、例えば、ユーザが、マウスクリックやドラッグで、カメラサーバ301の可動雲台312のパン角、チルト角、ローテート角を制御するための操作が行われた場合、制御内容をコマンド生成部322へ渡す。コマンド生成部322は、操作入力部323からの制御内容に基づいて制御コマンドを生成する。通信制御部321は、コマンド生成部322により生成された制御コマンドをカメラサーバ301へ送信する。カメラサーバ301は、クライアント302から受信した制御コマンドの内容に応じて、パン角、チルト角、ローテート角、ズーム倍率等を制御する。
【0028】
また、クライアント302の操作入力部323は、制御コマンドに応じた制御後のパラメータ(パン角、チルト角、ローテート角など)のカメラサーバ301からの通知を受けて、上記のGUIの表示を変更する。このようにすることで、クライアント302のユーザは、現在のカメラサーバ301の状態を知ることができる。
【0029】
生成クライアント303は、クライアント302と同様に、カメラサーバ301のIPアドレスを指定してカメラサーバ301に接続し、カメラサーバ301から受信した画像データに応じた画像を表示させるクライアントである。また、生成クライアント303は、カメラサーバ301のパン角、チルト角、ローテート角、ズーム倍率などを制御することも可能である。
生成クライアント303は、画像圧縮部331、通信制御部332、コマンド生成部333、パラメータ決定部334、操作入力部335、表示制御部336、画像伸長部337、表示部338、画像合成部339を含んで構成される。以下、生成クライアント303の機能について、クライアント302との差異を中心に説明する。
【0030】
まず、生成クライアント303がパノラマ画像を生成しない場合の画像表示処理について説明する。通信制御部332は、カメラサーバ301からの画像データを画像伸長部337へ渡す。画像伸長部337は、通信制御部332からの画像データを伸長して表示制御部336へ渡し、表示制御部336は、画像伸長部337からの画像データに応じた画像を表示部338で表示させる。
【0031】
次に、生成クライアント303がパノラマ画像を生成する場合の処理について説明する。例えば、生成クライアント303のユーザが、操作入力部335からパノラマ画像の生成指示を入力したことに応じて、パノラマ画像の生成処理が開始される。パノラマ画像の生成指示が入力されると、パラメータ決定部334は、カメラサーバ301の制御パラメータを決定する。算出される制御パラメータは、例えば、パン角、チルト角、ローテート角などである。パラメータ決定部334による制御パラメータの決定方法の詳細は後述する。
【0032】
コマンド生成部333は、パラメータ決定部334により決定された制御パラメータに基づいてカメラサーバ301に対する制御コマンドを生成し、通信制御部332を介してカメラサーバ301へ送信する。通信制御部332は、制御コマンドに応じてカメラサーバ301で撮像された画像データを受信すると、画像伸長部337へ渡す。ここで受信される画像データは、パノラマ画像の一部を構成する画像データである。画像伸長部337は、通信制御部332からの画像データを伸長して画像合成部339へ渡す。
【0033】
画像合成部339は、画像伸長部337から受信した複数の画像データを合成してパノラマ画像を生成する。本形態の画像合成部339は、射影変換によって複数の画像データを合成するが、この方法に限らない。画像合成部339により生成されたパノラマ画像は画像圧縮部331で圧縮され、通信制御部332を介してカメラサーバ301へ送信される。カメラサーバ301の通信制御部314は、生成クライアント303から受信したパノラマ画像を記憶部318に記憶させ、クライアント302等からの要求に応じてパノラマ画像を提供する。なお、本実施形態では、パノラマ画像を生成クライアント303で生成したが、パノラマ画像をカメラサーバ301で生成してもよい。
【0034】
次に、生成クライアント303によるパノラマ画像の生成処理について、図4を用いて説明する。本形態の生成クライアント303は、撮像範囲が長辺と短辺で構成されるビデオカメラ311の撮像方向を制御してパノラマ画像を生成する生成装置である。生成クライアント303は、図4の処理を実行するためのプログラムを、CPUで読み出して実行することにより、図4の処理を実現する。ただし、図4の処理の少なくとも一部を専用のハードウェアで行うようにしても良い。また、本形態の生成クライアント303は、操作入力部335で、ユーザからパノラマ画像の生成指示が入力されたことに応じて図4の処理を開始する例について説明するが、パノラマ画像の生成タイミングは、この例に限らない。
【0035】
操作入力部335でパノラマ画像の生成指示が入力されると、コマンド生成部333は、カメラサーバ301の撮像方向やズーム倍率を初期状態にするための制御コマンドを通信制御部332を介してカメラサーバ301へ送信する(S41)。
【0036】
パラメータ決定部334は、パノラマ画像を生成するための撮像画像を得るためのパン角とチルト角を決定する(S42)。パラメータ決定部334は、複数の撮像画像を得るために、パン角とチルト角の組(制御内容)を複数、決定する。また、パラメータ決定部334は、S42において、複数の制御内容の制御順序を決定する。
パラメータ決定部334は、決定した複数の制御内容のうち、制御順序が最初の制御内容にカメラサーバ301を制御するための制御コマンドを、通信制御部332を介してカメラサーバ301へ送信する(S43)。なお、制御順序が最初の制御内容と、S41の制御内容とが同じである場合は、制御コマンドを送信しなくても良い。
【0037】
コマンド生成部333は、S43で送信した制御コマンドに応じた制御により、チルト角が0度(チルト機構の可動範囲の限界)になったか否かを判定する。チルト角が0度になったと判定された場合はS45に進み、0度になっていないと判定された場合はS44へ進む。
【0038】
チルト角が0度になっていないと判定された場合、コマンド生成部333は、ビデオカメラ311の撮像範囲の長辺をパン方向に対応させるためのローテート角の制御コマンドを生成し、通信制御部332を介してカメラサーバ301へ送信する(S44)。本形態のコマンド生成部333は、S44において、カメラサーバ301のローテート角を0度にするための制御コマンドを送信する。
【0039】
一方、チルト角が0度になったと判定された場合、コマンド生成部333は、S45(制御手順)において、ビデオカメラ311の撮像範囲の長辺をチルト方向に対応させるためのローテート角の制御コマンドを生成し、通信制御部332を介してカメラサーバ301へ送信する。本形態のコマンド生成部333は、S45において、カメラサーバ301のローテート角を90度にするための制御コマンドを送信する。すなわち、コマンド生成部333は、チルト機構の可動範囲の限界に対応する特定領域を撮像する際に、撮像範囲の回転のための回転機構(ローテート機構)をパノラマ画像の生成のために制御する。
【0040】
ただし、現在のローテート角とローテート角の制御コマンドによる変更後のローテート角が同じ場合は、S44、S45でローテート角の制御コマンドを送信しないようにしても良い。
【0041】
コマンド生成部333は、通信制御部332を介して、カメラサーバ301へ撮像コマンドを送信する(S46)。カメラサーバ301は、撮像コマンドの受信に応じて撮像を行い、得られた画像データを生成クライアント303へ送信する。この画像データは、パノラマ画像の生成に用いられる画像データである。
【0042】
生成クライアント303は、カメラサーバ301から受信した画像データを画像伸長部337で伸長し、画像合成部339で合成する(S47)。すなわち、生成クライアント303の画像合成部339は、S47(生成手順)において、回転機構(ローテート機構)を制御して得られる複数の撮像画像からパノラマ画像を生成する。なお、本形態の生成クライアント303は、心射図法を用いた射影変換により複数の画像データを合成してパノラマ画像を生成するが、この形態に限らない。また、図4の処理が開始されてから初めてのS47の処理は、省略可能である。また、パノラマ画像を生成するためのすべての画像データがそろってから、パノラマ画像を生成するようにすることも可能である。
【0043】
コマンド生成部333は、パノラマ画像の生成に用いるすべての画像データの取得が完了したか否かを判定し、終了したと判定した場合は、画像合成部339で生成されたパノラマ画像をカメラサーバ301へ送信して処理を終了する。一方、終了していないと判定された場合S43へ進み、S42で決定された制御順序に従って、次のパン角、チルト角の制御を行い、カメラサーバ301から画像データを取得する。なお、本実施形態では、パノラマ画像を生成クライアント303で生成したが、パノラマ画像をカメラサーバ301で生成してもよい。
【0044】
次に、図4のS42で決定される制御順序、及び、S44、S45で制御されるローテート角と撮像範囲の関係について、図5を用いて説明する。
【0045】
図5(a)は、撮像範囲の長辺がパン方向に対応する状態で撮像してパノラマ画像を生成する場合の例を示している。図5(a)において、501はカメラ設置位置、502は撮像方向、503は撮像方向502のときの撮像範囲、504は撮像方向の駆動可能範囲を示している。駆動可能範囲504に示されるように、本形態のカメラサーバ301は、パン方向は360度の駆動が可能であり、チルト方向は0度〜90度の駆動が可能である。また、図5(b)は、図5(a)のようにして撮像された画像データを用いてパノラマ画像を生成した場合のパノラマ画像の視野範囲を示している。すなわち、図5(a)(b)は、ローテート角を0度に保って撮像した画像データを用いたパノラマ画像である。
【0046】
図5(b)の例では、図5(a)の駆動可能範囲504のうち、撮像範囲513に対応する初期位置からパノラマ画像用の画像データの撮像を開始し、チルト角の制御と撮像を繰り返す。この結果、撮像範囲514に達すると、パン角の制御により撮像範囲515へ移動される。以後、ルート511に示すような移動と撮像を繰り返して得られた画像データからパノラマ画像が生成される。
【0047】
一方、図5(c)は、ローテート角の制御をして得られた画像データからパノラマ画像を生成する場合の例を示している。図5(c)において、521はカメラ設置位置、522は特定領域外を撮像するときの撮像方向の例、523は撮像方向522のときの撮像範囲を示している。また、図5(c)において、524は特定領域を撮像するときの撮像方向の例、525は撮像方向524のときの撮像範囲、526は撮像方向の駆動可能範囲を示している。図5(c)に示すように、特定領域を撮像するとき(チルト角が可動範囲の限界のとき)は、そうでないときよりもローテート角を+90度としている。
【0048】
図5(d)は、図5(c)のようにして撮像された画像データを用いてパノラマ画像を生成した場合のパノラマ画像の視野範囲を示している。図5の(b)と(d)に示すように、パノラマ画像を生成する際に、ローテート角の制御を行うことで、制御を行わない場合よりもより視野範囲が広いパノラマ画像が得られる。
【0049】
また、図5(d)に示すように、本形態のカメラサーバ301は、撮像範囲533に対応する初期位置からパノラマ画像用の画像データの撮像を開始し、パン角の制御と撮像を繰り返す。この結果、撮像範囲534に達すると、チルト角の制御により撮像範囲535へ移動される。以後、ルート531に示すような移動と撮像を繰り返し、撮像範囲536に達する。その後、カメラサーバ301は、チルト角を0度にする。本形態の生成クライアント303は、カメラサーバ301の特定領域(チルト角が0度のときの撮像領域)を撮像する際に、ローテート角を90度、回転させる。この回転により、ビデオカメラ311の撮像範囲は、撮像範囲537に示すようになる。その後、カメラサーバ301は、ルート531に示すように、撮像範囲537から撮像範囲538まで、ローテート角が90度の状態のまま、撮像を繰り返し、撮像範囲538の画像データを撮像して撮像を終了する。なお、図5(d)の撮像範囲536の状態から、先にチルト角を0度にして、その後ローテート角を90度回転させても、先にローテート角を回転させて、その後チルト角を0度にしても、ローテート角とチルト角を同時に制御しても良い。
【0050】
図5(d)のルート531に示すような制御順序にすることで、図5(b)のルート511のように制御しながらローテート角を制御するよりも、ローテート機構の制御回数を少なくすることができる。
【0051】
なお、図5(e)のように、ローテート角を0度にした状態で撮像範囲541を撮像して得られた画像データを用いてパノラマ画像を生成するようにしても良い。すなわち、コマンド生成部333は、撮像範囲の長辺がパン方向に対応する状態で特定領域が撮像されると共に、撮像範囲の長辺がチルト方向に対応する状態で特定領域が撮像されるようにローテート機構を制御するようにしても良い。この場合、パノラマ画像は、撮像範囲の長辺がパン方向に対応する状態で撮像された画像データと撮像範囲の長辺がチルト方向に対応する状態で撮像された画像データとを含む複数の画像データから生成される。このようにすることで、図5(d)のようにして得られたパノラマ画像よりもさらに視野範囲が広いパノラマ画像が得られる。
【0052】
また、図示していないが、チルト角が0度に対応する特定領域のうち、パノラマ画像の端部に対応する領域を撮像する際に、ローテート角を、例えば45度にしても良い。つまりコマンド生成部333は、特定領域のうち、パン機構の可動範囲の限界(例えば0度)に対応する第2の特定領域が、撮像範囲の長辺がパン方向に対応する状態とチルト方向に対応する状態との間の状態で撮像されるように、ローテート機構を制御しても良い。このようにすることで、図5(e)のようにして得られたパノラマ画像の視野範囲よりもさらに広い視野範囲のパノラマ画像を得ることができる。
【0053】
また、本形態の生成クライアント303は、図5(b)のようにパノラマ画像を生成するか、図5(d)のようにパノラマ画像を生成するか、図5(e)のようにパノラマ画像を生成するかを、操作入力部335からのユーザ入力によって切換えることができる。このようにすることで、例えばユーザは、ローテート機構の制御回数や、パノラマ画像の視野範囲の希望に、より適したパノラマ画像の生成方法を選択できるようになる。
【0054】
なお、本形態では、ローテート角を90度にした状態で特定領域を撮像した画像データと、ローテート角を0度にした状態で特定領域以外の領域を撮像した画像データとでパノラマ画像を生成する例を中心に説明したが、これに限らない。
【0055】
例えば、ローテート角を90度にした状態で、すべての領域を撮像して得られた画像データを用いてパノラマ画像を生成するようにしても良い。すなわち、生成クライアント303は、パノラマ画像の生成指示に応じて、カメラサーバ301のローテート角を0度から90度にするための制御コマンドを送信する。そして、ローテート角が90度の状態で、パン角やチルト角の制御と撮像を繰り返して得られた画像データからパノラマ画像を生成するようにしても良い。
【0056】
また、本形態では、先にローテート角を0度の状態で、特定領域以外の領域を撮像させ、特定領域以外の領域の撮像が完了した後に、ローテート角を90度にして特定領域を撮像させるようにする例を中心に説明したが、この順序を逆にすることも可能である。すなわち、先にローテート角を90度にした状態で特定領域を撮像させ、特定領域の撮像が完了した後に、ローテート角を0度にして特定領域以外の領域を撮像させるようにしても良い。
【0057】
また、先に特定領域を撮像させるか、先に特定領域以外の領域を撮像させるかを、パノラマ画像の生成指示が入力された時点におけるカメラサーバ301のローテート角(回転角)に基づいて決定するようにしても良い。すなわち、パノラマ画像の生成指示の入力時のローテート角が0度のときは、先に特定領域以外の領域を撮像させ、ローテート角が90度のときは、先に特定領域を撮像させるようにしても良い。このようにすれば、よりローテート機構の制御回数を少なくしつつ、広い視野範囲のパノラマ画像を得ることができる。
【0058】
また、本形態では、特定領域が、チルト角が0度のときの撮像範囲である場合の例について説明したが、この例に限らない。例えば、チルト角をマイナス角度にも可動できる場合、チルト角の可動範囲の限界に対応する領域が特定領域となる。また、例えば、パン角の可動範囲に制限がある場合、パン角の可動範囲の限界に対応する撮像範囲を撮像する際に、撮像範囲の長辺がパン方向に対応する状態で撮像されるようにローテート角を制御することも可能である。
【0059】
また、本形態では、生成クライアント303がカメラサーバ301へ制御コマンドを送信してカメラサーバ301を制御し、生成クライアント303がカメラサーバ301からの画像データからパノラマ画像を生成する例について説明した。しかし、カメラサーバ301でパノラマ画像を生成するようにすることも可能である。
【0060】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

【特許請求の範囲】
【請求項1】
撮像範囲が長辺と短辺で構成される撮像部の撮像方向を制御してパノラマ画像を生成する生成装置であって、
前記撮像範囲の回転のための回転機構を前記パノラマ画像の生成のために制御する制御手段と、
前記回転機構を制御して得られる複数の撮像画像からパノラマ画像を生成する生成手段とを有することを特徴とする生成装置。
【請求項2】
前記制御手段は、チルト機構の可動範囲の限界に対応する特定領域を撮像する際に前記回転機構を制御することを特徴とする請求項1に記載の生成装置。
【請求項3】
前記制御手段は、前記パノラマ画像の生成指示に応じて、前記撮像範囲の長辺がパン方向に対応する状態から、前記撮像範囲の長辺がチルト方向に対応する状態に前記撮像範囲が回転するように前記回転機構を制御し、前記生成手段は、前記撮像範囲の長辺がチルト方向に対応する状態で撮像された複数の撮像画像からパノラマ画像を生成することを特徴とする請求項1に記載の生成装置。
【請求項4】
前記制御手段は、チルト機構の可動範囲の限界に対応する特定領域を撮像する際に、前記撮像範囲の長辺がパン方向に対応する状態から、前記撮像範囲の長辺がチルト方向に対応する状態に前記撮像範囲が回転するように前記回転機構を制御することを特徴とする請求項1又は2に記載の生成装置。
【請求項5】
前記制御手段は、チルト機構の可動範囲の限界に対応する特定領域が、前記撮像範囲の長辺がパン方向に対応する状態で撮像されると共に、前記撮像範囲の長辺がチルト方向に対応する状態で撮像されるように、前記回転機構を制御し、
前記生成手段は、前記撮像範囲の長辺がパン方向に対応する状態及び前記撮像範囲の長辺がチルト方向に対応する状態で撮像された撮像画像を含む複数の撮像画像から前記パノラマ画像を生成することを特徴とする請求項1に記載の生成装置。
【請求項6】
前記制御手段は、前記チルト機構の可動範囲の限界に対応する特定領域のうち、パン機構の可動範囲の限界に対応する第2の特定領域が、前記撮像範囲の長辺がパン方向に対応する状態と前記撮像範囲の長辺がチルト方向に対応する状態との間の状態で撮像されるように、前記回転機構を制御することを特徴とする請求項4に記載の生成装置。
【請求項7】
前記制御手段は、チルト機構の可動範囲の限界に対応する特定領域以外の領域の撮像が完了した後に、前記特定領域が撮像されるように前記回転機構を制御することを特徴とする請求項1乃至6のうち、いずれか1項に記載の生成装置。
【請求項8】
前記制御手段は、チルト機構の可動範囲の限界に対応する特定領域以外の領域の撮像が完了した後に、前記特定領域が撮像されるように前記回転機構を制御するか、前記特定領域の撮像が完了した後に、前記特定領域以外の領域が撮像されるように前記回転機構を制御するかを、前記パノラマ画像の生成指示を受けたときの前記回転機構の回転角に基づいて決定することを特徴とする請求項1乃至6のうち、いずれか1項に記載の生成装置。
【請求項9】
撮像範囲が長辺と短辺で構成される撮像部の撮像方向を制御してパノラマ画像を生成する生成装置が行う生成方法であって、
前記撮像範囲の回転のための回転機構を前記パノラマ画像の生成のために制御する制御工程と、
前記回転機構を制御して得られる複数の撮像画像からパノラマ画像を生成する生成工程とを有することを特徴とする生成方法。
【請求項10】
撮像範囲が長辺と短辺で構成される撮像部の撮像方向を制御してパノラマ画像を生成するコンピュータに、
前記撮像範囲の回転のための回転機構を前記パノラマ画像の生成のために制御する制御手順と、
前記回転機構を制御して得られる複数の撮像画像からパノラマ画像を生成する生成手順とを実行させることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2012−191425(P2012−191425A)
【公開日】平成24年10月4日(2012.10.4)
【国際特許分類】
【出願番号】特願2011−52963(P2011−52963)
【出願日】平成23年3月10日(2011.3.10)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】