本発明はカメラの撮影範囲を変更することができるカメラシステムに関し、特に、ディスプレイ上の表示を操作することにより、撮影範囲の変更指示を行うカメラシステムに関する。
本発明は、上記のように構成されているため、ユーザは、上記変更指示手段を用いて、画面に表示された上記領域表示に対して、操作を行うことにより、現在撮影されている部分および撮影されていない部分を撮影する指示が、試行錯誤を行うことなく容易にできる。そして、上記変更指示決定手段は、上記操作に応じて、上記カメラの撮影範囲を決定し、上記カメラ操作手段に決定した撮影範囲を出力する。こうして、ユーザは、現在操作中のカメラの撮影方向や撮影倍率を意識することなく、カメラを容易に操作できる。
また、上記カメラが実際に撮影している位置や方向を示す表示物が表示され、撮影している位置や方向が表示される。このため、撮影可能範囲を確認する操作をしないでも、撮影可能範囲や現在撮影している位置や方向が認識できる。
本発明に係る第1の実施例を、図により説明する。本実施例では、カメラは、ズーム機能と撮影方向を変更する機能とを有する。そして、カメラの撮影倍率の変更および撮影方向の変更をGUI(Graphical User Interface)により、すなわち、ディスプレイ上に表示されたアイコン等を操作することにより、行うことができる。
図1に、第1の実施例に係るカメラシステムのブロック図を示す。図1に示すように、本カメラシステムは、カメラ101と、カメラ制御装置102と、ワークステーション150と、カメラ101により撮影された映像の表示およびGUI用の表示を行うディスプレイ108と、GUI用の表示を操作するためのマウス109とを有する。ワークステーション150は、演算部1501と、映像合成部1504と、図形描画部1503と、メモリ1502と、ディスク107と、入出力制御部1505とを有する。
最初に、カメラ101の構成について図2により説明する。図2は、カメラ101のブロック図を示す。カメラ101は、カメラの撮影倍率を変更するズーム撮影手段を有するカメラ本体1011と、カメラ本体の撮影方向を垂直方向および水平方向に変更するための駆動部2208とを有する。カメラ本体1011には、ズームレンズ1012がある。ズームレンズ1012の一部のレンズ1013は、ステップモータ1017により、そのレンズの位置が変えられ、その結果、ズームレンズ1012の焦点距離が変わる。ステップモータ1017を駆動する信号は、制御信号線2201によりカメラ制御装置102から送られてくる。
レンズ1013の位置は、モータ1017の駆動軸に直結しているポテンショメータ1018により検知され、検知結果(回転位置により決まる電圧信号)は、状態信号線2205によりカメラ制御装置102に出力される。電圧信号は、カメラ制御装置102内の後述する図3のCPU1028が変換テーブルを用いて画角に変換する。変換テーブルは、メモリ1029内に格納されている。
なお、カメラ本体1011は、図示しない自動焦点機能を有する。
ズームレンズ1012から入ってきた光信号は、CCD1014により、電気信号に変換される。この電気信号から、映像信号生成部1015は、映像信号を生成する。生成された映像信号は、カメラ映像線2204を介して映像生成部1504に出力される。
駆動部2208は、軸2209の回りにカメラ本体1011を回転させることにより、垂直方向にカメラ本体1011の向きを変えるための、モータおよびギヤからなる駆動部1019と、軸2209の回転角を検知するポテンショメータ10111を含む。さらに、水平面内で回転することによりカメラ本体1011を水平面内で回転させる(パンさせる)回転台2210と、回転台2210を回転させるための、モータおよびギヤからなる駆動部10112と、回転台2210の回転角を検知するポテンショメータ10113を含む。
駆動部1019、10112を駆動するための制御信号は、制御信号線2203,2202により、カメラ制御装置102から送られてくる。駆動部1019,10112は、制御信号を受けている間、一定速度で回転する。回転方向は、制御信号の極性により決まる。ポテンショメータ10111,10113で検知した検知結果(回転位置により決まる電圧信号)は、状態信号線2207,2206により、カメラ制御装置102に送られる。電圧信号は、図3に示すCPU1028により、変換テーブルを用いて回転角度に変換される。変換テーブルは、メモリ1029に格納されている。
次に、カメラ制御装置102について、説明する。カメラ制御装置102は、動作モードとして、オートモードとマニュアルモードを有し、オートモードとマニュアルモードを切り替えるために、オート/マニュアル切り替えスイッチ1021を有する。
オートモードのときは、データ線1506から入力される設定パラメータに従って、カメラ101の撮影方向および撮影倍率を制御するための制御信号を、制御信号線2201,2202,2203を介して、カメラ101に出力する。
マニュアルモードのときは、パン(右)ボタン1022、パン(左)ボタン1023、チルト(上)ボタン1024、チルト(下)ボタン1025、拡大ボタン1026、縮小ボタン1027に従って、カメラ制御装置102は、カメラ101の撮影方向および撮影倍率を制御するための制御信号を、制御信号線2201,2202,2203を介して、カメラ101に出力する。
オートモードのときのカメラ制御装置102の動作について述べる。オートモードのとき、ワークステーション150の演算部1501から、データ線1506を介して送られてくる設定パラメータをCPU1028が受け取る。設定パラメータについて以下説明する。
設定パラメータは、カメラ101の動作の種類を示すコマンドと、動作の目標値を示すデータ(撮影パラメータ)のセットからなる。コマンドの種類を図4に示す。図4において、コマンド「P」、「T」、「Z」は、カメラ制御装置102にカメラ101を駆動するように命じるものであり、コマンド「Q」は、カメラ制御装置102に対して、カメラ101の状態を演算部1501に報告することを要求するものである。コマンド「Q]をカメラ制御装置102が受け取ると、カメラ制御装置102は、カメラ101のその時点における水平方向角度、垂直方向角度、撮影倍率をデータ線1506により、演算部1501に送る。
動作の目標を示すデータは、撮影方向を変える場合(コマンドが「P」、「T」の場合)、目標とする水平または垂直方向の角度であり、撮影倍率を変える場合(コマンド「Z」の場合)は、目標とする画角の大きさである。
次に、撮影方向の決定に用いるカメラ101の画角について図5により説明する。カメラ101の画角は、カメラ101の撮影範囲の角度であり、水平画角と垂直画角とがある。本実施例では、撮影倍率を変える場合は、画角を変えることとし、演算部1501で計算した目標とする画角の値をカメラ制御装置102に送る。垂直画角について図5に示す。図中、θが画角、Tは撮像面のサイズ、fは焦点距離、Lは撮影対象までの距離、T’は撮像面に移る範囲を示す。レンズについては、複数のレンズからなるレンズ系を等価な仮想単レンズに置き換えて示す。この時に、画角は下式で与えられる。
なお、カメラ101の画角は、カメラ101の撮影倍率の程度を表しているともいえる。撮影倍率(bとする)は、図5より、b=T/T’=f/Lである。一方、数1より、θが小さいときは、θ≒T/fであるため、b=T/(Lθ)である。TおよびLはほぼ一定であるため、bとθは反比例の関係にあり、画角と撮影倍率は1対1に対応しているからである。
本実施例における水平または垂直方向の角度の定義については、後述する。
CPU1028は、設定パラメータに従ってカメラ101を以下のように制御する。演算部1501から受け取ったコマンドの種類によって、ステップモータ1017、駆動部1019,10112のいずれを駆動するかを決定する。次に、状態信号線2205,2206,2207により、ステップモータ1017、駆動部1019,10112のうち駆動対象となるものの現在の状態を示す検知結果を入手する。検知結果は、メモリ1029にあらかじめ格納されている変換テーブルにより、画角、撮影方向を表す角度に変換される。設定パラメータで与えられた目標値と検知結果を変換して得られた数値とを比較して、駆動対象を駆動する方向を決定する。例えば、撮影方向を変更する場合は、角度を大きくするのが小さくするのかを決定する。画角を変更する場合は、画角を大きくするのか、小さくするのかを決定する。駆動する方向が決定すると、ステップモータ1017、駆動部1019,10112の回転方向が決まる。
駆動する対象と回転方向が決定された後、駆動対象に対応する制御信号線2201,2202,2203に回転方向に応じた信号を流すように、入出力制御部1020に指示する。
入出力制御部1020は、この指示に従って、制御信号線2201,2202,2203に信号を流す。CPU1028は、状態信号線2205,2206,2207により、駆動対象の状態をモニターする。検知結果を変換した値が設定パラメータで指定された値の所定の近傍内になったときに、入出力制御部1020に対して、制御信号線2201,2202,2203に信号を流すことを停止するように指示する。
次に、マニュアルモードのときのカメラ制御装置102の動作について述べる。マニュアルモードのときは、パン(右)ボタン1022、パン(左)ボタン1023、チルト(上)ボタン1024、チルト(下)ボタン1025、拡大ボタン1026、縮小ボタン1027に従って、カメラ制御装置102は、カメラ101を制御する。オート/マニュアル切り替えスイッチ1021の状態からマニュアルモードであることを判断したCPU1028は、これらのボタン1022,1023,1024,1025,1026,1027が押されている間、入出力制御部1020に対して、押されているボタンに応じて、カメラ101を右に向ける制御信号、カメラ101を左に向ける制御信号、カメラ101を上に向ける制御信号、カメラ101を下に向ける制御信号、カメラ101の撮影倍率を大きくする制御信号、カメラ101の撮影倍率を小さくする制御信号をそれぞれ出力するように指示する。
なお、CPU1028は、状態信号線2205,2206,2207により、回転角度等を常時検知する。検知結果を、メモリ1029に格納されている回転角度、画角のリミット値と比較して、検知結果がリミット値に達したときは、入出力制御部1020に対して、制御信号の出力を停止することを指示する。
次に、カメラ101の撮影方向の変更指示を入力するためのマウス109について説明する。マウス109は、マウス109の移動量を表す信号と、マウス109に設けられたボタン(図示せず)がオン/オフされたことを示す信号とを出力する機能を有し、拡大/縮小/撮影方向の変更等の撮影範囲を変更する指示を入力するために、ユーザによって操作される。ユーザは、撮影範囲を変更するために、ディスプレイ108上の、後述するGUI用の表示をマウス109により、後述するように操作して、上記指示を行う。マウス109の操作の結果得られるマウスの移動量を表す信号とボタンのオン/オフを示す信号は、入出力制御部1505を介して演算部1501に入力される。演算部1505は、マウスの移動量を積分することにより、マウスが現在指示している位置を求める。
マウス109のボタンの操作には、クリックとドラッグとがある。ユーザがマウス109に設けられているボタンを押し下げて(オンして)、マウス109の位置は動かさずに、そのボタンを放す(オフする)ことを「クリックする」とよぶ。例えば、ユーザがマウス109を動かすことにより、マウスの移動に応じて画面上を移動するポインタを、画面上に表示された道具(アイコン等)の位置に移動させて、その位置でクリックする操作を、「その道具をクリックする」とよぶ。道具およびポインタについては後述する。
ユーザがマウス109に設けられているボタンを押し下げた状態で、マウス109の位置を動かすことを「ドラッグする」とよぶ。ユーザがマウス109を動かして画面上の道具の位置にポインタを移動させた後、ドラッグする操作を、「その道具をドラッグする」とよぶ。
次にワークステーション150について説明する。ワークステーション150内の演算部1501は、CPUで構成され、マウス109を介して、カメラ101の撮影範囲の変更の指示を受け取る。演算部1501は、変更指示(上記マウスからの信号)と、メモリ1502上に記憶されているプログラムやデータに基づき、カメラ101の変更後の撮影倍率や撮影方向等の撮影パラメータを計算する。撮影パラメータの詳細およびその求め方の詳細については、後述する。
演算部1501は、カメラ101を遠隔操作するために、カメラ制御装置102へ、入出力制御部1505を介して、RS232Cなどのプロトコル仕様に従って、上記撮影パラメータをデータ線1506により送る。
また、演算部1501は、マウス109による変更操作を受付けるための表示を描画するための描画命令を図形描画部1503へ送る。変更操作を受付けるための表示とは、後述する図6に示す、水平スクロールバー510、垂直スクロールバー520、水平スクロールアイコン512、垂直スクロールアイコン522、左スクロールアロー514、右スクロールアロー516、上スクロールアロー524、下スクロールアロー526、ポインタ550等のカメラで撮影された映像以外の画像である。
メモリ1502は、RAMおよびROMで構成され、演算部1501が実行するプログラムや実行に際して用いるデータを記憶する。
ディスク107は、磁気ディスク、光ディスク等で構成され、カメラ101の撮影パラメータ(撮影方向を示す角度や撮影倍率)の現在値およびリミット値を記憶する。演算部1501は、ディスク107のデータを必要に応じてメモリ1502内のRAMに書き込む。また演算部1501は、メモリ1502のデータを必要に応じてディスク107に書き込む。
図形描画部1503は、図形発生器、グラフィックアクセラレータ、グラフィックプロセッサとも呼ばれ、CPU、RAM、ROM、各種CMOS等によって、実現される。図形描画部1503は、演算部1501から上記変更操作を受け付けるための表示を描画するための命令およびデータを受け、上記変更操作を受け付けるための表示を表す画像信号を生成し、生成した画像信号を映像合成部1504へ出力する。
映像合成部1504は、フレームメモリを内蔵する。映像合成部1504は、図形描画部1503が出力するポインタやアイコンなどの、高解像度の図形と、カメラ101が出力する、低解像度のカメラ映像とをフレームメモリを用いて高解像度の映像に合成し、合成した映像の信号をディスプレイ108におくる。
ディスプレイ108は、CRT表示装置、または液晶ディスプレイにより実現され、映像合成部1504から合成された映像の信号を受け取り、表示する。ユーザは、ディスプレイ108を見て、自分の指示の結果得られた、撮影範囲を変更した後の映像を確認することができる。
次に、本実施例における、ディスプレイ108に表示される画面の一例を図6に示す。画面は、カメラ101が撮影したカメラ映像が表示されるカメラ映像表示部201と、カメラ映像表示部201の右側と下部とに設けられた、図形描画部1503が出力したアイコン等を表示するGUI用表示部202,203,204とからなる。カメラ映像表示部201には、ボイラが表示されている。以下では、このボイラを撮影対象として、カメラシステムの説明を行う。
画面上には、マウス109により指定される位置が画面上のどの位置にあるかを示すポインタ550が表示されている。ユーザがマウス109を動かすことにより、ポインタ550を画面上で動かすことができる。
GUI用表示部202,203,204には、カメラの撮影範囲を変えるための道具として、水平スクロールバー510と、垂直スクロールバー520と、水平スクロールアイコン512と、垂直スクロールアイコン522と、左、右スクロールアロー514、516と、上、下スクロールアロー524、526と、拡大アイコン570と、縮小アイコン580とが表示される。
水平スクロールバー510と、垂直スクロールバー520と、水平スクロールアイコン512と、垂直スクロールアイコン522とは、撮影方向を変更する操作のうちの1つであるページめくり操作に使われる。
水平スクロールアイコン512と、垂直スクロールアイコン522とは、撮影方向を、画面上で指定された方向に指定された量だけ、変更する操作であるジャンプ操作にも使われる。
左、右スクロールアロー514、516と、上、下スクロールアロー524、526とは、あらかじめ設定されている所定量ずつ撮影方向を変更するスクロール操作に使われる。
拡大アイコン570と、縮小アイコン580とは、撮影倍率を変更する操作である画面の拡大操作、縮小操作にそれぞれ使われる。
ページめくり操作、スクロール操作、ジャンプ操作、拡大操作、縮小操作の詳細については、後述する。
スクロールバー510,520と、スクロールアイコン512,522とは、カメラ101が撮影可能な範囲のうち、カメラ101がどの部分を今撮影しているかを示す機能も有する。スクロールバー510,520は、水平及び垂直方向に撮影可能な範囲を示し、スクロールアイコン512,522は、撮影可能な範囲のうち、今撮影されている範囲を示す。そのために、水平スクロールバー510の横方向の長さに対する水平スクロールアイコン512の横方向の長さの割合は、カメラ101が水平方向に撮影できる範囲に対する、カメラ101が今撮影している水平方向の範囲の割合と一致させている。垂直スクロールバー520の縦方向の長さに対する垂直スクロールアイコン522の縦方向の長さの割合は、カメラ101が垂直方向に撮影できる範囲に対する、カメラ101が今撮影している垂直方向の範囲の割合と一致させている。
次に、本カメラシステムにおける撮影範囲の変更について説明する。最初に、ページめくり操作について説明する。ページめくり操作とは、本操作を行う前に、画面のある一方の端(例えば、左端)に撮影されていた対象物が、ページめくり操作後には、画面のもう一方の端(右端)に撮影されるように、カメラ101の撮影範囲を変更する機能である。
ページめくりでは、マウス109により、以下のように操作を行う。ユーザが左(右)ページめくりをするときは、水平スクロールバー510のうち、水平スクロールアイコン512の左(右)側にある部分をマウス109を使ってクリックする。その結果、カメラ101が撮影する範囲を水平方向に左(右)ページめくりをすることができ、水平スクロールアイコン512は、新たな撮影範囲を示す位置に移動する。
同様にユーザが垂直スクロールバー520をクリックすると、カメラ101が撮影する範囲を垂直方向にページめくりすることができ、垂直スクロールアイコン522はその結果に応じた位置に移動する。具体的には、ユーザが垂直スクロールバー520の、垂直スクロールアイコン522より上側をクリックすると、カメラ映像を上にページめくりすることができる。ユーザが垂直スクロールバー520の、垂直スクロールアイコン522より下側をクリックすると、カメラ映像を下にページめくりすることができる。
カメラ101が撮影可能な範囲内の一方の端を撮影している場合、スクロールアイコン512,522は、スクロールバー510,520のその一方の端に対応した端に表示され、スクロールアイコン512,522から見て、スクロールバー510,520の別の端の側のみが、ページめくりのためにクリックできる。
次に、カメラ101が前述のボイラの火炎監視窓をズームアップしている場合を例にして、ユーザのページめくり操作と、それによる画面の変化とを具体的に説明する。
最初に、図7を参照して、カメラ映像を左にページめくりする場合について説明する。図7(a)は、左ページめくり操作をする前のディスプレイ108に表示される画面を示し、3001は、カメラ撮影画像である。図7(b)は、左ページめくり操作後の画面を示し、3002は、カメラ撮影画像である。図7(c)は、カメラ撮影画像3001,3002が、ボイラの火炎監視窓のどの部分を撮影しているかを示す図である。図7(a)では、ボイラの火炎監視窓の右下の部分の映像3001が、ディスプレイ108に表示されている。
この時に図7(a)よりも左の部分をカメラ101に撮影させたいという場合、図7(a)に示す画面上で、ユーザが水平スクロールバー510の、水平スクロールアイコン512より左側にある部分をマウス109によりクリックすると、カメラ101の映像3001が左にページめくりされる。その結果、図7(b)のディスプレイ108の映像3002のように、カメラ101が今まで撮影していた映像3001の左端にあったものが映像3002の右端に移り、図7(a)において撮影されていなかった、映像3001のさらに左側の部分が撮影されるようになる。水平スクロールアイコン512の位置は、図7(a)における位置よりも左に移動する。なお、図7(c)において、3003は、水平方向にページめくり操作をする前でも後でも表示することとした、カメラ101の重複撮影範囲を示す。
次に、図8を参照して、カメラ映像を上にページめくりする場合について説明する。図8(a)は、上にページめくり操作をする前のディスプレイ108に表示される画面を示し、4001は、カメラ撮影画像である。図8(b)は、上ページめくり操作後の画面を示し、4002は、カメラ撮影画像である。図8(c)は、カメラ撮影画像4001,4002が、ボイラの火炎監視窓のどの部分を撮影しているかを示す図である。図8(a)では、ボイラの火炎監視窓の左下の部分の映像が、ディスプレイ108に表示されている。
この時に図8(a)よりも上の部分をカメラ101に撮影させたいという場合、図8(a)に示す画面上で、ユーザが垂直スクロールバー520の、垂直スクロールアイコン522より上側にある部分をマウス109によりクリックすると、カメラ101の映像が上にページめくりされる。その結果、図8(b)のディスプレイ108の映像4002のように、カメラ101が今まで撮影していた映像の上端にあったものが、映像4002の下端に撮影される。図8(a)において撮影されていなかった、映像4001のさらに上側の部分が撮影されるようになる。垂直スクロールアイコン522の位置は、図8(a)における位置よりも上に移動する。なお、図8(c)において、4003は、垂直方向にページめくり操作をする前でも後でも表示することとした、カメラ101の重複撮影範囲を示す。
次に、図9を参照して、カメラの撮影方向および画角を規定する撮影パラメータのうち、ページめくりに関して使用される撮影パラメータと、ページめくりにおける撮影パラメータの決定方法とについて、説明する。図9(a)は、カメラ101の水平方向の角度の定義と、左ページめくりをしたときの水平方向の角度の求め方を示す。図9(b)は、カメラ101の垂直方向の角度の定義と、上ページめくりをしたときの垂直方向の角度の求め方を示す。
カメラ101の水平方向の角度51,52は、本カメラシステムにおいて規定されている基準となる状態(カメラ101が右端の方向に向いている状態)における水平方向の角度を0度と定め、その方向から計った、カメラ101が左方向に回転した角度である。左が+方向であり、右が−方向である。カメラ101が左に回転すれば水平方向の角度は大きくなる。角度51は、カメラ101が正面を撮影しているときの水平方向の角度であり、角度52は、それよりも左の方向を撮影しているときの水平方向の角度である。この角度51,52が前述の設定パラメータに含まれるデータの値である。
カメラ101の垂直方向の角度53,54は、上記基準となる状態(カメラ101が下端の方向を向いている状態)における垂直方向の角度を0度と定め、その方向から計った、カメラ101が上方向に回転した角度である。上が+方向であり、下が−方向である。カメラ101が上に回転すれば垂直方向の角度は大きくなる。角度53は、カメラ101が正面を撮影しているときの垂直方向の角度であり、角度54は、それよりも上の方向を撮影しているときの垂直方向の角度である。この角度53,54が前述の設定パラメータに含まれるデータの値である。
次に、このようなパラメータを用いてページめくりに置ける水平/垂直方向の角度を決定する方法について述べる。カメラ101の水平方向ページめくり操作を実現するには、例えば左ページめくりする場合、カメラ101の水平方向を、水平画角の大きさに応じて大きくすれば、実現できる。なお、水平方向にページめくり操作をする前でも後でも表示されている、カメラ101の重複撮影範囲が存在する。この範囲の水平角度を、「水平重複撮影角」とよぶ。水平画角がかわっても表示上の重複部の分量が同じになるように水平重複撮影角は水平画角の大きさに応じてかわる。図9(a)に示すように、左ページめくりをする前の水平方向の角度がpb度51、水平画角がzh度56、水平重複撮影角がdzh度55のとき、水平方向の角度を(pb+zh−dzh)度52に変更すれば、左ページめくりができる。この時の移動量は、ΔH=zh−dzhである。
同様に、カメラ101の垂直方向ページめくり操作を実現するには、例えば上ページめくりする場合、カメラ101の垂直方向を、垂直画角に応じて大きくすれば、実現できる。なお、水平重複撮影角と同様に、垂直方向ページめくり操作をする前でも後でも表示されている、カメラ101の撮影範囲の垂直角度を、「垂直重複撮影角」と呼ぶ。垂直画角がかわっても表示上の重複部の分量が同じになるように、垂直重複撮影角は垂直画角の大きさに応じてかわる。図9(b)に示すように、垂直方向がtb度53、垂直画角がzv度57、垂直重複撮影角がdzv度58のとき、垂直方向を(tb+zv−dzv)度54に変更すれば、上ページめくりができる。この時の移動量は、ΔV=zv−dzvである。
次に、ディスク107に格納されている、演算部1501がページめくり操作において角度を決定するために用いるデータについて説明する。このようなデータとしては、水平方向の角度の現在値及び水平画角の現在値、水平方向の角度の上限値及び下限値、水平重複撮影角、水平スクロールバーと水平スクロールアイコンに関する後述するデータ、垂直方向の角度の現在値及び垂直画角の現在値、水平方向の上下値及び下限値、垂直重複撮影角、垂直スクロールバーと垂直スクロールアイコンに関する後述するデータがある。
水平方向の角度、水平画角の現在値は、例えば、水平方向の角度0度、水平画角10度の様な値である。水平方向の角度の現在値、および水平画角の現在値は、図4のコマンド「Q」をカメラ制御装置102に送ることにより、カメラ制御装置102から入手する。水平方向の角度の上限値、下限値は、撮影可能範囲の両端に対応する角度である。これらの角度は、ユーザがあらかじめディスク107に格納しておく。カメラ101が撮影可能範囲の左右のどちらかの端を撮影しているとき、水平方向の角度の現在値は一方の限界値と等しい。水平重複撮影角は、現在の水平重複撮影角を格納している。例えば表示上の重複部の分量を1/10にするなら{10度×(1/10)=1度}の様な値である。この値は、ユーザが自由に設定してディスク107に格納しておく。
水平スクロールバー510に関するデータとしては、大きさに関するデータ(例えば100)や画面上の位置に関するデータがあり、水平スクロールアイコン512に関するデータとしては、大きさに関するデータや、上記スクロールバー510の大きさを基準にした、スクロールアイコン512の位置を示すデータ(例えば50)がある。
垂直方向の角度、垂直画角の現在値は、例えば、垂直方向の角度0度、垂直画角6度の様な値である。垂直方向の角度の上限値、下限値は、撮影可能範囲の両端に対応する角度である。カメラ101が上下のどちらかの端を撮影しているとき、垂直方向の角度の現在値は一方の限界値と等しい。垂直重複撮影角は、現在の垂直重複撮影角を格納している。例えば表示上の重複部の分量を1/10にするなら{3.6度×(1/10)=0.6度}の様な値である。以上の垂直方向に関する角度も水平方向に関する角度と同様に入手もしくは設定されてディスク107に格納されている。
垂直スクロールバー520に関するデータはスクロールバー520の大きさを示すデータ(例えば60)等であり、垂直スクロールアイコン522に関するデータは上記スクロールバー520の大きさを基準にした、スクロールアイコン522の位置を示すデータ(例えば30)等である。
次に、ユーザの指示が水平方向ページめくりである場合に、これらのデータを用いて、カメラシステムが水平方向ページめくりをする際の処理手順を図10により説明する。
マウス109により、水平スクロールバー510がクリックされたことを演算部1501が検知すると、演算部1501は、クリックされた水平スクロールバー510が水平スクロールアイコン512の左側か右側かによって、以下の処理を変える。左側の場合には以下のステップ311から314までの処理が行われ、右側の場合には以下のステップ315から318までの処理が行われる。(ステップ310)
演算部1501は、水平方向の角度の値を(水平方向の角度の現在値+水平画角−水平重複撮影角)に仮に決定する(ステップ311)。ステップ312では、仮に決定した値が水平方向の角度の上限値を越えていないかどうか、調べる。例えば同じ側にめくり続けた場合などに、1ページ分をめくりきらずにカメラ101の撮影可能範囲の限界に達する場合があるからである。調べた結果、撮影可能範囲内であるならば仮に決定した値を決定値とする。もし上限値を越えているならば上限値を決定値とする。
ステップ315では、水平方向の角度の値を(水平方向の角度の現在値−水平画角+水平重複撮影角)に仮に決定する。ステップ316では、仮に決定した値が水平方向の角度の下限値を越えていないかどうか、調べる。もし下限値より大きければ仮に決定した値を決定値とする。もし下限値より小さければ下限値を決定値とする。
次に、演算部1501は、水平スクロールバー510内における水平スクロールアイコン512の新たな位置が、撮影可能範囲における新しい撮影位置に対応するように、水平スクロールアイコン512の画面上の位置を変更する必要がある。ステップ320で演算部1501は、水平方向の角度の決定値に基づいて、新たな水平スクロールアイコン512の画面上の位置を決定する。位置は、水平方向の角度の決定値と水平方向の撮影可能範囲を示す角度との比が、水平スクロールアイコン512の中心位置の水平スクロールバー510の右端からの長さと水平スクロールバー510の長さとの比が一致するように決定される。決定された位置は、図形描画部1503へ出力される。
ステップ330において、図形描画部1503は、水平スクロールアイコン512の位置を新たな位置に変更した、水平スクロールバー510と水平スクロールアイコン512の画像を作り、映像合成部1504へ出力する。
ステップ340において、演算部1501は、決定された水平方向の角度に基づいて、カメラ制御装置102へ設定パラメータを出力する。
ステップ350において、カメラ制御装置102は演算部1501から設定パラメータを受け取る。カメラ制御装置102は、カメラ101を指示された水平方向に前述のようにして向ける。
ステップ360において、カメラ101は指定された水平方向の角度で撮影し、カメラ映像を映像合成部1504に送る。
ステップ370において、映像合成部1504はカメラ101からの映像を受け取り図形描画部1503からの図形の画像と合成してディスプレイ108へ送る。
ディスプレイ108は、映像合成部1504からの合成映像を受け取り、表示画面上に表示する。
次に、ユーザの指示が垂直方向ページめくりである場合に、カメラシステムが垂直方向ページめくりをする際の処理手順を図11により説明する。
マウス109により、垂直スクロールバー520がクリックされたことを演算部1501が検知すると、演算部1501は、クリックされた垂直スクロールバー520が垂直スクロールアイコン522の上側か下側かによって、以下の処理を変える。上側の場合には以下のステップ411から414までの処理が行われ、下側の場合には以下のステップ415から418までの処理が行われる。(ステップ410)
ステップ411では、演算部1501は、垂直方向の角度の値を(垂直方向の角度の現在値+垂直画角−垂直重複撮影角)に仮に決定する。ステップ412では、仮に決定した値が垂直方向の角度の上限値を越えていないかどうか、調べる。もし上限値を越えていなければ仮に決定した値を決定値とする。もし上限値を越えているならば上限値を決定値とする。
ステップ415では、垂直方向の角度の値を(垂直方向の角度の現在値−垂直画角+垂直重複撮影角)に仮に決定する。ステップ416では、仮に決定した値が垂直方向の角度の下限値を越えていないかどうか、調べる。もし下限値より大きければ仮に決定した値を決定値とする。もし下限値より小さければ下限値を決定値とする。
次に、演算部1501は、垂直スクロールバー520内における垂直スクロールアイコン522の新たな位置が、新しい撮影方向に対応するように、垂直スクロールアイコン522の位置を変更する必要がある。ステップ420において、演算部1501は、垂直スクロールアイコン522の新しい位置をステップ320と同様に決定し、図形描画部1503へ垂直スクロールアイコン522の新しい位置を出力する。
ステップ430において、図形描画部1503は、垂直スクロールアイコン522の位置が変更された、垂直スクロールバー510と垂直スクロールアイコン522の画像を作り、映像合成部1504へ出力する。
ステップ440で演算部1501は、決定された垂直方向パラメータに基づいて、カメラ制御装置102へ設定パラメータを出力する。
ステップ450において、カメラ制御装置102は演算部1501から設定パラメータを受け取る。カメラ制御装置102は、カメラ101を指示された垂直方向に向ける。
ステップ460において、カメラ101は指示された垂直方向で撮影し、カメラ映像を映像合成部1504に送る。
ステップ470において、映像合成部1504はカメラ101からの映像を受け取り、図形描画部1503からの図形の画像と合成してディスプレイ108へ送る。
ディスプレイ108は、映像合成部1504からの合成映像を受け取り、表示画面上に表示する。
次に、撮影範囲の変更機能のうち、スクロール機能とジャンプ機能と拡大縮小機能を説明する。
スクロール機能とは、カメラ101が今現在撮影している範囲を若干ずらしてカメラ101が撮影するように、すなわち、撮影範囲のある一方の端に撮影されている対象物が、撮影範囲のもう一方の端の方向に若干ずれて撮影されるように、カメラ101の撮影範囲を変更する機能である。
ジャンプ機能とは、カメラ101が今現在撮影していない部分を、今撮影している部分との重複部分を持たずにカメラ101が撮影するように、カメラ101の撮影範囲を変更する機能である。
拡大機能とは、今現在撮影している範囲より狭い範囲をカメラ101が撮影するように、カメラ101の撮影範囲を縮小する機能である。縮小機能とは、今現在撮影している範囲より広い範囲をカメラ101が撮影するように、カメラ101の撮影範囲を拡大する機能である。
これらの機能を使うための道具として、図6に示す、左、右スクロールアロー514、516と、上、下スクロールアロー524、526と、水平、垂直スクロールアイコン512,522と、拡大アイコン570と、縮小アイコン580とを本カメラシステムは有する。
スクロールアロー514,513,524,526は、あらかじめ設定されている所定量ずつ撮影範囲を変更させるスクロール機能のための道具である。ユーザがマウス109を用いて、スクロールアロー514,513,524,526をクリックすると、カメラ101が撮影する範囲をスクロールすることができ、スクロールアイコン512,522はスクロールバー510,520上の新たな撮影範囲に対応した位置に移動する。例えば、ユーザが左スクロールアロー514をクリックすると、カメラ101映像を左にスクロールすることができる。ユーザが右スクロールアロー516をクリックすると、カメラ映像を右にスクロールすることができる。水平スクロールアイコン512は新たな位置に移動する。ユーザが上スクロールアロー524をクリックすると、カメラ映像を上にスクロールすることができる。ユーザが下スクロールアロー526をクリックすると、カメラ映像を下にスクロールすることができる。垂直スクロールアイコン522はその結果、新たな位置に移動する。
スクロールアイコン512,522は、任意に移動させたスクロールアイコン512,522の移動量に応じて、撮影範囲を任意に変更するための道具である。任意な量だけ移動させることができるために、その結果として、ユーザがマウス109により、スクロールアイコン512,522をドラッグすると、カメラ101が撮影する範囲を、ジャンプすることやスクロールすることができる。例えば、ユーザが水平スクロールアイコン512をドラッグすると、カメラ映像を水平方向に、ジャンプすることやスクロールすることができる。ユーザが垂直スクロールアイコン522をドラッグすると、カメラ映像を垂直方向にジャンプすることやスクロールすることができる。
ドラッグの結果、ジャンプすることになるか、スクロールすることになるかは、アイコン512,522をドラッグする長さにより決まる。現在撮影している範囲と重複する部分が無いようにドラッグすると、ジャンプすることとなり、そうでない場合は、スクロールすることとなる。
スクロールアロー514,516,524,526を用いたスクロールと、スクロールアイコン512,522を用いたスクロールとの違いは、所定量ずつ角度を変更してスクロールを行うか、マウス109のドラッグにより指定された量だけ角度を変更してスクロールを行うかの違いである。
拡大アイコン570と縮小アイコン580とは、画面をそれぞれ拡大及び縮小する、すなわち、撮影範囲をそれぞれ狭く及び広くするための道具である。ユーザがマウス109により、拡大アイコン570や縮小アイコン580をクリックすると、カメラ映像を拡大することや縮小することができる。
スクロールアイコン512,522はその結果に応じた大きさに変わる。スクロールバー510,520の長手方向の長さとスクロールアイコン512,522の長手方向の長さとの比は、カメラ101が撮影できる範囲(角度)とカメラ101が今撮影している範囲(角度)との比と一致させているからである。ユーザが拡大アイコン570をクリックすると、カメラ映像を拡大することができ、水平、垂直スクロールアイコン512,522の大きさが小さくなる。ユーザが縮小アイコン580をクリックすると、カメラ映像を縮小することができ、水平、垂直スクロールアイコン512,522の大きさが大きくなる。
次に、前述のカメラ101がボイラの火炎監視窓をズームアップしている場合について、撮影範囲をスクロール、ジャンプ、拡大、縮小するときのユーザの操作と、それによる画面の変化とを説明する。
最初に、図12を参照して、撮影範囲を左にスクロールする場合について説明する。図12(a)は、左スクロール操作をする前のディスプレイ108に表示される画面を示し、8001は、カメラ撮影画像である。図12(b)は、左スクロール操作後の画面を示し、8002は、カメラ撮影画像である。図12(c)は、カメラ撮影画像8001,8002が、それぞれ、ボイラの火炎監視窓のどの部分を撮影しているかを示す図である。図12(a)では、ボイラの火炎監視窓の右下の部分の映像が、ディスプレイ108に表示されている。
少し左側にカメラ101の撮影範囲をずらしたい、という場合、ユーザが左スクロールアロー514をクリックすると、カメラシステムは撮影範囲を左にスクロールして表示する。その結果、図12(b)のディスプレイ108の表示のように、カメラ101が今まで撮影していた範囲の左端に撮影されていたものが少し右側に撮影され、撮影されていなかった撮影画像8001の左外側の部分が撮影されるようになる。水平スクロールアイコン512の位置は左に移動する。
次に、図13を参照して、撮影範囲を左にジャンプさせる場合について説明する。図13(a)は、左にジャンプさせる前のディスプレイ108に表示される画面を示し、9001は、カメラ撮影画像である。図13(b)は、左にジャンプさせた後の画面を示し、9002は、カメラ撮影画像である。図13(c)は、カメラ撮影画像9001,9002が、ボイラの火炎監視窓のどの部分を撮影しているかを示す図である。図13(a)では、ボイラの火炎監視窓の右下の部分の映像が、ディスプレイ108に表示されている。図13(a)よりも、さらに左の撮影範囲をカメラ101に撮影させたい、という場合、ユーザが水平スクロールアイコン512を左にドラッグすると、図13の場合ドラッグ量が大きいため、カメラシステムは撮影範囲を左にジャンプして表示する。その結果、図13(b)のディスプレイ108の表示のように、カメラ101が今まで撮影していなかった左側の部分が撮影されるようになる。
次に、図14を参照して、カメラ映像を拡大表示する場合について説明する。図14(a)は、拡大操作をする前のディスプレイ108に表示される画面を示し、1001は、カメラ撮影画像である。図14(b)は、拡大操作後の画面を示し、1002は、カメラ撮影画像である。図14(c)は、カメラ撮影画像1001,1002が、ボイラの火炎監視窓のどの部分を撮影しているかを示す図である。図14(a)では、ボイラの火炎監視窓の全体の映像が、ディスプレイ108に表示されている。ボイラの火炎監視窓の一部をもっと詳しく撮影させたい、という場合、ユーザが拡大アイコン570をクリックすると、カメラ操作システムがカメラの映像を拡大して表示する。その結果、図14(b)のディスプレイ108の表示のように、カメラが今まで撮影していた部分の一部分である、ボイラの火炎監視窓の右上の部分が、大きく撮影されるようになる。
次に、図15を参照して、カメラ映像を縮小表示する場合について説明する。図15(a)は、縮小操作をする前のディスプレイ108に表示される画面を示し、1101は、カメラ撮影画像である。図15(b)は、縮小操作後の画面を示し、1102は、カメラ撮影画像である。図15(c)は、カメラ撮影画像1101,1102が、ボイラの火炎監視窓のどの部分を撮影しているかを示す図である。図15(a)では、ボイラの火炎監視窓の全体の映像が、ディスプレイ108に表示されている。撮影画像1101よりも広い範囲を撮影させたい、という場合、ユーザが縮小アイコン580をクリックすると、カメラ操作システムが撮影範囲を広くして、すなわち映像を縮小して表示する。その結果、図15(b)のディスプレイ108の表示のように、カメラが今まで撮影していた部分を含む、ボイラの全体の映像が、撮影されるようになる。
次に、スクロール操作、ジャンプ操作、拡大操作、縮小操作の場合に、図9に示す、カメラの撮影方向及び画角を規定する撮影パラメータの決定方法について説明する。
最初に、水平スクロールアロー514,516を用いて行う水平スクロール操作について説明する。例えば、左スクロールする場合、カメラの水平方向の角度を、水平画角を考慮して大きくする。具体的には、1回クリックする毎に、水平方向の角度を水平画角の一定割合(=水平スクロール率。例えば、1/16,1/9等)ずつ大きくする。現在の水平方向の角度がpb度、水平画角がzh度、水平スクロール率がkhのとき、水平方向の角度を(pb+zh×kh)度に変更すれば、左スクロールができる。
同様に、垂直スクロールアロー524,526を用いて行う垂直方向スクロール操作について説明する。例えば、上スクロールする場合、カメラの垂直方向の角度を、垂直画角を考慮して大きくする。具体的には、1回クリックする毎に、垂直方向の角度を垂直画角の一定割合(=垂直スクロール率。例えば、1/16,1/9等)ずつ大きくする。現在の垂直方向の角度がtb度、垂直画角がzv度、垂直スクロール率がkvのとき、垂直方向の角度を(tb+zv×kv)度に変更すれば、上スクロールができる。
次に、スクロールアイコン512,522を用いて行うジャンプ操作について説明する。例えば、左や右にジャンプする場合、カメラの水平方向の角度を、水平スクロールアイコン512の移動量に基づいて変更する。
水平画角を考慮して水平スクロールアイコン512の位置と長さを設定しているので、水平スクロールアイコン512の画面上での移動量により水平方向の角度を決定できる。
図16によりこれを説明する。図16(a)は、水平画角が小さい場合(拡大している場合、すなわち画角が小さい場合)の水平スクロールアイコン512の画面上での移動可能な量(水平アイコン移動可能量L)を説明する図である。図において、512aは、カメラ101が撮影可能範囲のうちの左端の位置で撮影しているときに表示される水平スクロールアイコンを示す。512bは、カメラ101が撮影可能範囲のうちの右端の位置で撮影しているときに表示される水平スクロールアイコンを示す。
図16(b)は、水平画角が大きい場合の水平アイコン移動可能量Lを説明する図である。512cは、カメラ101が撮影可能範囲のうちの左端の位置で撮影しているときに表示される水平スクロールアイコンを示す。水平アイコン移動可能量Lは、このように水平画角により変わるが、Lの画面上での長さと水平スクロールバー510の長手方向の長さとの比は、実際のカメラ101の撮影方向の変更可能量(角度)とカメラ101の撮影可能範囲(角度)との比に一致している。512dは、カメラ101が撮影可能範囲のうちの右端の位置で撮影しているときに表示される水平スクロールアイコンを示す。Lを用いると、水平スクロールアイコン512を操作することにより指定した水平方向の角度は、下式のようになる。
同様に、上や下にジャンプする場合、カメラの垂直方向の角度を、垂直スクロールアイコン522の操作量に基づいて変更する。垂直画角を考慮して垂直スクロールアイコン522の位置と長さを設定しているので、垂直スクロールアイコン522の移動量により数2と同様な式で垂直方向の角度を決定できる。
次に、拡大縮小アイコン570,580を用いて行う拡大縮小操作について説明する。例えば拡大する場合、拡大アイコン570を1回クリックする毎に、水平画角及び垂直画角を一定割合(これを拡大率と呼ぶ。拡大率は例えば、0.5である)で小さくする。撮影方向については変更しない。水平画角及び垂直画角の現在値がzh,zvのとき、拡大後の水平画角及び垂直画角は、0.5×zh,0.5×zvとなる。
縮小する場合、縮小アイコン580を1回クリックする毎に、水平画角及び垂直画角を一定割合(これを縮小率と呼ぶ。縮小率は、例えば、2.0である)で大きくする。
拡大または縮小したときは、スクロールアイコン512,522の位置及び長さは、図16に例示するように変わるので、変更後の水平画角に基づいて水平スクロールアイコンの位置と長さを変更し、変更後の垂直画角に基づいて垂直スクロールアイコンの位置と長さを変更する。
次に、演算部1501がスクロール操作、ジャンプ操作、拡大操作、縮小操作において角度または画角を決定するために用いる、ディスク107に格納されているデータについて説明する。
スクロールアロー514,516,524,526を用いたスクロールを実現するため、水平/垂直方向の角度の現在値、水平/垂直画角、水平スクロール率、垂直スクロール率という項目を持つ。水平スクロール率、垂直スクロール率は、前述のように、例えば(1/16,1/9)のような値である。
スクロールアイコン512,522を用いた、スクロールまたはジャンプを実現するため、水平方向と垂直方向のそれぞれについて、角度の現在値、角度の上限値及び下限値、アイコン移動可能量を持つ。
拡大アイコン570,580を用いた拡大縮小操作を実現するため、水平/垂直画角の現在値、拡大率、縮小率を持つ。拡大率、縮小率は、例えば、拡大の場合、今の画角を半分にするような値(0.5)、縮小の場合、今の画角を2倍にするような値である。さらに、画角については、現在値に加えて、上限値、下限値を保持する。画角の上限値、下限値は、例えば(50度(水平方向),30度(垂直方向))、(5度(水平方向),3度(垂直方向))の様な値である。また、後で詳しく述べるが、スクロールアイコン512,522の大きさを変更するために、スクロールバー510,520の長さと、水平/垂直方向の角度の上限値、下限値を持つ。
これらのデータは、デフォルトの値をディスク107に設定しておき、ユーザの希望により変更することができる。
次に、これらのデータを用いて、カメラシステムが、スクロール、ジャンプ、拡大、縮小をするときの処理手順について説明する。
最初に、ユーザがマウス109により左スクロールアロー514または右スクロールアロー516をクリックした場合に、水平方向スクロールを行う際の処理手順を図17により説明する。
マウス109により左スクロールアロー514または右スクロールアロー516がクリックされたことを演算部1501が検知すると、演算部1501は、クリックされたスクロールアロー514,516が左スクロールアロー514か、右スクロールアロー516かによって以下の処理を変える。演算部1501は、左スクロールアロー514の場合には、以下のステップ211から214までの処理を行い、右スクロールアロー516の場合には、以下のステップ215から218までの処理を行う(ステップ210)。
ステップ211では、演算部1501は、水平方向の角度の値を(現在値+画角×水平スクロール率)に仮に決定する。ステップ212では、仮に決定した値が水平方向の角度の上限値を越えていないかどうかを調べる。例えば、同じ側にスクロールを続けた場合などに、1スクロール分ずらしきらずに、カメラの限度いっぱいになる場合があるからである。調べた結果、制限内であるならば、仮に決定した値を決定値とする。もし制限を越えているならば、上限値を決定値とする。
ステップ215では、水平方向の角度の値を(現在値−画角×水平スクロール率)に仮に決定する。ステップ218では、仮に決定した値が水平方向の角度の下限値を越えていないかどうかを調べる。もし制限内であるならば、仮に決定した値を決定値とする。もし制限を越えているならば、下限値を決定値とする。
次に、演算部1501は、水平スクロールバー510内における水平スクロールアイコン512の新たな位置が、撮影可能範囲における新しい撮影位置に対応するように、水平スクロールアイコン512の位置を変更する必要がある。ステップ220で、演算部1501は、新しい水平スクロールアイコン512の位置を、ステップ320と同様に決定し、図形描画部1503へ水平スクロールアイコン512の新しい位置を出力する。ステップ230で、図形描画部1503は、水平スクロールアイコン512が新たな位置に表示されている画像を作り、映像合成部1504へ出力する。
ステップ240で、演算部1501は、決定された水平方向パラメータに基づいて、カメラ制御装置へ設定パラメータを出力する。
ステップ250で、カメラ制御装置102は演算部から変更命令を受け取る。カメラ制御装置102は、カメラ101を指示された水平方向に向ける。
ステップ260で、カメラ101は指定された水平方向の角度で撮影し、カメラ映像を映像合成部1504に送る。
ステップ270で、映像合成部1504はカメラ101からの映像を受け取り、図形描画部1503からの図形の画像と合成してディスプレイ108へ送る。
ディスプレイ108は、映像合成部1504からの合成映像を受け取り、表示画面上に表示する。
次に、ユーザがマウス109により上スクロールアロー524または下スクロールアロー526をクリックした場合に、垂直方向スクロールを行う際の処理手順を図18により説明する。
マウス109により上スクロールアロー524または下スクロールアロー526がクリックされたことを演算部1501が検知すると、演算部1501は、クリックされたスクロールアロー524,526が上スクロールアロー524か下スクロールアロー526かによって以下の処理を変える。演算部1501は、上スクロールアロー524の場合には、以下のステップ911から914までの処理を行い、下スクロールアロー526の場合には、以下のステップ915から918までの処理を行う(ステップ910)。
ステップ911では、演算部1501は、垂直方向の角度の値を(現在値+画角×垂直スクロール率)に仮に決定する。ステップ912では、仮に決定した値が垂直方向の角度の上限値を越えていないかどうかを調べる。もし制限内であるならば仮に決定した値を決定値とする。もし制限を越えているならば、上限値を決定値とする。
ステップ915では、垂直方向の角度の値を(現在値−画角×垂直スクロール率)に仮に決定する。ステップ916では、仮に決定した値が垂直方向の角度の下限値を越えていないかどうかを調べる。もし制限内であるならば、仮に決定した値を決定値とする。もし制限を越えているならば、下限値を決定値とする。
次に、演算部1501は、垂直スクロールバー510内における垂直スクロールアイコン522の新たな位置が、撮影可能範囲における新しい撮影範囲に対応するように、垂直スクロールアイコン522の位置を変更する必要がある。ステップ920で、演算部1501は、新しい垂直スクロールアイコン522の位置を決定し、図形描画部1503へ垂直スクロールアイコン522の新しい位置を出力する。ステップ930で、図形描画部1503は、垂直スクロールアイコン522が新たな位置に表示されている画像を作り、映像合成部1504へ出力する。
ステップ940で演算部1501は、決定された垂直方向パラメータに基づいて、カメラ制御装置へ撮影パラメータを出力する。
ステップ950で、カメラ制御装置102は演算部1501から変更命令を受け取る。カメラ制御装置102は、カメラ101を指示された垂直方向へ向ける。
ステップ960で、カメラ101は、指示された垂直方向の角度で撮影を行い、得られたカメラ映像を映像合成部1504に送る。
ステップ970で、映像合成部1504はカメラ101からの映像を受け取り、図形描画部1503からの図形の画像と合成してディスプレイ108へ送る。
ディスプレイ108は、映像合成部1504からの合成映像を受け取り、表示画面上に表示する。
次に、ユーザがマウス109により水平スクロールアイコン512をドラッグした場合に、水平方向ジャンプを行う際の処理手順を図19により説明する。前述のように、ドラッグの量によっては、ジャンプではなくスクロールに該当する場合があるが、図19,20においては、スクロールアイコン512,522がドラッグされたときの操作をジャンプと呼ぶことにする。
マウス109により水平スクロールアイコン512がドラッグされたことを演算部1501が検知すると、演算部1501は、どちらの方向に水平スクロールアイコン512がドラッグされたかによって以下の処理を選択する。水平スクロールアイコン512が左にドラッグされた場合は、ステップ611の処理を行う。水平スクロールアイコン512が右にドラッグされた場合は、ステップ612の処理を行う(ステップ610)。
ステップ611では、演算部1501は、水平方向の角度を図19のステップ611に示す式で与えられる値に決定する。ステップ612では、演算部1501は、水平方向の角度を図19のステップ612に示す式で与えられる値に決定する。
次に、演算部1501は、水平スクロールバー510内における水平スクロールアイコン512の位置が、新しい撮影位置に対応するように、水平スクロールアイコン512の位置を変更する必要がある。ステップ620で、演算部1501は、新しい水平スクロールアイコン512の位置をステップ320と同様に決定し、図形描画部1503へ水平スクロールアイコン512の新しい位置を出力する。
ステップ630で、図形描画部1503は、水平スクロールアイコン512が新たな位置に表示されている画像を作り、映像合成部1504へ出力する。
ステップ640で演算部1501は、決定された水平方向パラメータに基づいて、カメラ制御装置へ撮影パラメータを出力する。
ステップ650で、カメラ制御装置102は演算部1501から変更命令を受け取る。カメラ制御装置102は、カメラ101を指示された水平方向に向ける。
ステップ660で、カメラ101は指示された水平方向の角度で撮影を行い、得られたカメラ映像を映像合成部1504に送る。
ステップ670で、映像合成部1504はカメラ101からの映像を受け取り、図形描画部1503からの図形の画像と合成してディスプレイ108へ送る。
ディスプレイ108は、映像合成部1504からの合成映像を受け取り、表示画面上に表示する。
次に、ユーザがマウス109により垂直スクロールアイコン522をドラッグした場合に、垂直方向ジャンプを行う際の処理手順を図20により説明する。
マウス109により垂直スクロールアイコン512がドラッグされたことを演算部1501が検知すると、演算部1501は、どちらの方向に垂直スクロールアイコン512がドラッグされたかによって以下の処理を変える。垂直スクロールアイコン512が上にドラッグされた場合は、ステップ711の処理を行う。垂直スクロールアイコン522が下にドラッグされた場合は、ステップ712の処理を行う(ステップ710)。
ステップ711では、演算部1501は、垂直方向の角度を図20のステップ711に示す式で与えられる値に決定する。ステップ712では、演算部1501は、垂直方向の角度を図20のステップ712に示す式で与えられる値に決定する。
次に、演算部1501は、垂直スクロールバー520内における垂直スクロールアイコン522の新たな位置が、撮影可能範囲における新しい撮影位置に対応するように、垂直スクロールアイコン522の位置を変更する必要がある。ステップ720で、演算部1501は、新しい垂直スクロールアイコン522の位置を決定し、図形描画部1503へ垂直スクロールアイコン522の新しい位置を出力する。ステップ730で、図形描画部1503は、垂直スクロールアイコン522が新たな位置に表示されている画像を作り、映像合成部1504へ出力する。
ステップ740で演算部1501は、決定された垂直方向パラメータに基づいて、カメラ制御装置へ撮影パラメータを出力する。
ステップ750で、カメラ制御装置102は演算部1501から変更命令を受け取る。カメラ制御装置102は、カメラ101を指示された垂直方向に向ける。
ステップ760で、カメラ101は指示された垂直方向で撮影を行い、得られたカメラ映像を映像合成部1504に送る。
ステップ770で、映像合成部1504はカメラ101からの映像を受け取り、図形描画部1503からの図形の画像と合成してディスプレイ108へ送る。
ディスプレイ108は、映像合成部1504からの合成映像を受け取り、表示画面上に表示する。
次に、ユーザがマウス109により拡大アイコン570または縮小アイコン580をクリックした場合に、拡大または縮小を行う際の処理手順を図21により説明する。
マウス109により縮小アイコン570または拡大アイコン580がクリックされたことを演算部1501が検知すると、演算部1501は、どちらのアイコンがクリックされたかによって以下の処理を変える。縮小アイコン580がクリックされた場合には、以下のステップ811から814までの処理を行う。拡大アイコン570がクリックされた場合には、以下のステップ815から818までの処理を行う(ステップ810)。
ステップ811では、演算部1501は、水平画角、垂直画角を、それぞれ、(現在値×縮小率)に仮に決定する。例えば2倍にする。ステップ812では、仮に決定した値が水平画角、垂直画角それぞれの上限値を越えていないかどうかを調べる。例えば縮小を続けた場合などに、縮小率分だけ変更しないうちに、カメラの画角の上限になる場合があるからである。調べた結果、制限内であるならば仮に決定した値を決定値とする。もし制限を越えているならば上限値を決定値とする。
ステップ815では、水平画角、垂直画角をそれぞれ(現在値×拡大率)に仮に決定する。例えば0.5倍にする。ステップ816では、仮に決定した値が水平画角、垂直画角それぞれの下限値を越えていないかどうかを調べる。もし制限内であるならば、仮に決定した値を決定値とする。もし制限を越えているならば、下限値を決定値とする。
次に、演算部1501は、水平、垂直スクロールバー510,520内における水平、垂直スクロールアイコン512,522の新たな位置および大きさが、撮影可能範囲における新しい撮影位置および撮影範囲に対応するように、水平、垂直スクロールアイコン512,522の位置および長さを変更する必要がある。
ステップ820,821,822で、演算部1501は、新しい水平、垂直スクロールアイコン512,522の位置と長さとを決定し、図形描画部1503へ水平、垂直スクロールアイコン512,522の新しい位置と長さとを出力する。
位置と長さの決定方法を以下、図22を参照しながら説明する。図22は、カメラ101が水平方向に角度を変えて撮影する場合を示す。図22において、2102は、撮影可能な範囲の左端を示し、その角度はmaxh度である。2105は、撮影可能な範囲の右端を示し、minh度である。2101と2103で挾まれた部分は、2102の位置にカメラ101があるときの撮影範囲であり、挾まれた部分の角度が水平方向の画角であり、zh度である。2104と2106は、2105の位置にカメラ101があるときの撮影範囲であり、画角は、zh度である。
水平スクロールバー510の長さに対応する角度(スクロールバー対応角と呼ぶ)は、図に示すbarhとする。水平スクロールバー510の長さに対応する角barhを求め、この角barhと画角zhとの比と、水平スクロールバー510の長さと水平スクロールアイコン512の長さとの比が一致するように、水平スクロールアイコン512の長さを決定する。水平スクロールアイコン512の位置は、画角の中心がある位置の水平方向の角度とする。左端にカメラ101があるときは、この角度は、maxh度である。
ステップ821で、水平及び垂直方向のそれぞれについて、ステップ821に記載の(a)式により、スクロールバー510,520の長さに対応する角barh,barv(垂直方向)を求める。次に、ステップ821の(b)式により、角barh,barvと、画角zh,zvとの比と、スクロールバー510,520の長さとスクロールアイコン512,522の変更後の長さとの比が一致するようにスクロールアイコン512,522の長さをそれぞれ決定する。スクロールアイコン512,522の位置は、ステップ822の式でそれぞれ決定する。
これらの式において、例えば、水平方向について計算するときは、それぞれの数値は水平方向に関する数値を用いる。すなわち、(a)式において、「方向の上限値」とあるのは、水平方向について計算するときは、水平方向の角度の上限値maxhを意味する。
ステップ830で、図形描画部1503は、水平スクロールアイコン512の新たな位置及び長さが表示されている図形の画像を作り、映像合成部1504へ出力する。
ステップ840で演算部1501は、決定された水平画角、垂直画角に基づいて、カメラ制御装置へ撮影パラメータを出力する。
ステップ850で、カメラ制御装置102は演算部1501から変更命令を受け取る。カメラ制御装置102は、カメラ101を指示された画角に設定する。
ステップ860で、カメラ101は、指示された画角で撮影し、得られたカメラ映像を映像合成部1504に送る。
ステップ870で、映像合成部1504はカメラ101からの映像を受け取り図形描画部1503からの図形の画像と合成してディスプレイ108へ送る。
ディスプレイ108は、映像合成部1504からの合成映像を受け取り、表示画面上に表示する。
本実施例によれば、画面に表示されていない範囲も撮影したい場合に、撮影範囲を変更することが容易にできる。また、カメラが、どの範囲まで撮影可能であるか、および、全体の中でカメラが現在どの範囲を撮影しているかということについて、スクロールバー及びスクロールアイコンにより常時表示されている。従って、撮影可能範囲を確認する操作が不要であり、撮影可能範囲や現在撮影している範囲の位置付けが容易に確認できる。
また、GUIを実現しているため、カメラの映像をコンピュータグラフィックスと同じ感覚で操作することができる。すなわち、コンピュータグラフィックスとユーザインタフェースが統一されているので、次のような効果がある。
・ 操作手順が覚えやすく、わすれにくい
・ 誤操作が少なくなる
・ 本実施例に係るカメラシステムを初めて操作する人もコンピュータグラフィックスの操作を知っていれば、カメラが操作できる
・ カメラの設定パラメータを意識しなくてよい
この結果、人間にとってより自然な操作システムが提供される。
なお、上記実施例においては、拡大縮小は一定の割合で拡大縮小する場合について示したが、スクロールの場合と同様に、拡大縮小用のバーとアイコンを表示して、アイコンをバー内で任意に動かすことにより、任意の倍率で拡大縮小することとしても良い。
また、上記のスクロール率、拡大率、縮小率は、ディスクの内容を書き換えることにより、ユーザが希望する任意の値を設定することができる。
次に、本発明に係る第2の実施例を説明する。第1の実施例では、カメラ映像のドット数とディスプレイ表示の範囲のドット数とは同じであったが、第2の実施例では、ディスプレイ表示の範囲(ドット数)が、カメラ映像の撮影範囲(ドット数)より大きい。本実施例では、ディスプレイ表示面上のカメラが現に撮影している映像を表示している部分以外の空きの部分に、現に撮影している範囲の周辺部を静止画として表示する。そのために、現に撮影している範囲以外のカメラの撮影可能範囲についてあらかじめ撮影しておいて、ディスク107に格納しておく。
なお、第1の実施例で述べた、ページめくり、スクロール、ジャンプ、拡大、縮小機能は、本実施例にも含まれる。
本実施例に係るカメラシステムのブロック図を図23に示す。図1と同一の符号を付した要素については、第1の実施例と同様の構成/機能を有するため、詳細説明は省略する。
本実施例においては、映像合成部2701は、カメラ映像と図形描画部1503からの映像とを合成するためのフレームメモリを有する。また、演算部1501からカメラ映像をディスプレイ108の表示面上のどの位置に表示するかを示す位置データをデータ線2702を介して入力される。位置データは、カメラ映像の左上の部分がディスプレイ108の表示面上のどの位置に来るかを示す2次元座標データ(X,Y)である。
映像合成部2701は、カメラ映像および図形描画部1503からの映像をデジタル化して、映像データとする。次に、演算部1501から受けた位置データに従って、ディスプレイ108上の指定された位置に対応するフレームメモリ上の位置に、カメラ映像をデジタル化した映像データを書き込む。フレームメモリのこのデータを書き込んだ部分以外は、図形描画部1503からの映像をデジタル化した映像データを書き込むことにより、映像の合成を行う。合成した結果を映像信号に変化してディスプレイに出力する。
ディスク107には、カメラ101で撮影可能な範囲について、カメラ101であらかじめ撮影しておき、得られた映像を静止画データとしたものが格納されている。
静止画データを取得するために、ビデオキャプチャボード2703が使われる。ビデオキャプチャボード2703は、カメラ101から映像信号を入力され、この映像信号をデジタル信号に変換する。さらに、デジタル信号を圧縮し、その後、ディスク107に転送する。
演算部1501は、本カメラシステムの電源をオンしたとき、または、ユーザから指示があったときに、カメラ101の撮影可能範囲全体について、カメラ101に撮影させる。カメラ101が出力する映像信号を1つの撮影箇所について1フレーム分ずつ、ビデオキャプチャボード2703に取り込ませる。ビデオキャプチャボード2703により圧縮されたデジタルデータをディスク107に記憶させる。
本実施例における表示例を図24に示す。図24(a)には、カメラ101で現に撮影している映像のみをディスプレイ108に表示する場合の表示を示す。図24(b)には、ウインドウ大きさ最大アイコン2801をクリックした結果、ウインドウが最大の大きさになった場合にディスプレイ108に表示される表示を示す。
初期状態においては、カメラが像2801は、図24(a)のように、ディスプレイ108の左上に表示されているが、ウインドウが拡大されたときは、図24(b)のように、ウインドウ内の任意の位置に表示することができる。表示位置は、マウス109により画像2801内の任意の位置でドラッグを行うことにより、変更される。
ウインドウの大きさが最大になったときは、カメラ映像を表示する領域(カメラ映像表示領域)を可能な範囲で最大に拡大する。可能な範囲とは、図24(b)のGUI表示部2806を表示するための領域を除いた範囲である。拡大された領域には、カメラ101が撮影可能な領域について、既に撮影をして、ディスク107に格納しておいた静止画2804を表示する。
ユーザは、ウインドウ大きさ最大アイコン2801を操作して、カメラ映像表示領域を可能な範囲で最大に拡大することにより、カメラの撮影可能範囲と現在の撮影範囲との関係を画像の形で確認することができる。
演算部1501は、ウインドウ大きさ最大アイコン2801がマウス109によりクリックされたときは、あらかじめディスク107に蓄えておいた静止画データのうち、表示対象となるものを決定する。表示される静止画は、カメラ映像2802と同じ画角(撮影倍率)であるとして、表示されるものが決定される。
決定後、演算部1501は、ディスク107から静止画データを読み出し、復号化を行った後、図形描画部1503に出力する。
さらに、本カメラシステムは、ウインドウ大きさ変更機能を有する。これは、ウインドウの大きさを、ユーザがマウス109をドラッグすることにより指示した大きさに変更する機能である。ユーザは、ウインドウの4角、例えば、2805をマウス109でドラッグする。演算部1501は、マウス109からの信号を受けて、ウインドウの大きさを求める。大きさを決めたあとは、上記のウインドウの大きさを最大にする場合と同様に実現できる。
第2の実施例によれば、ユーザは、カメラシステムにおいて、グラフィクスのウインドウの大きさを変更するための従来からある操作と同じ操作で、ウインドウの大きさを変更できる。
また、現に撮影している部分の周辺を同時に見ることができるため、撮影範囲をどのように変更したらよいかを決定するのに便利である。
次に、本発明に係る第3の実施例について説明する。本実施例に係るカメラシステムは、ジャンプ中ガイド機能、ジャンプ先ガイド機能を有する。
ジャンプ中ガイド機能とは、第1、2の実施例において説明したジャンプ機能を利用中(マウスによりスクロールアイコンをドラッグ中)に、マウスの移動により時々刻々指定された、画面上のスクロールアイコンの位置に対応するカメラの撮影範囲について、事前に撮影しておいて、静止画として格納しておいたものを表示する機能である。マウスが移動しているかどうかは、マウスのボタンがボタンダウンされている状態で、所定時間内にマウスの位置が変化したかどうかで判断する。
なお、以下では、静止画を格納している場合について説明するが、本発明は、これに限られるものではなく、動画を蓄積しておいて、動画を表示することとしてもよい。
ジャンプ先ガイド機能とは、第1、2の実施例において説明したジャンプ機能によりジャンプ先を指定したときに、ジャンプ先であるカメラの撮影範囲について事前に撮影しておいて静止画として格納しておいたものを表示する機能である。
ジャンプ先が指定されたかどうかは、マウスのボタンがボタンダウンされている状態で、所定時間内にマウスの位置が変化しなかった場合に、ジャンプ先が指定されたと判断する。そして、ジャンプ先の静止画を表示する。マウスのボタンがボタンアップされたときは、ジャンプ先がその位置で最終的に確定されたと判断し、動画であるカメラ映像を表示する。
ジャンプ先ガイド機能とジャンプ中ガイド機能との違いは、ジャンプ中ガイド機能では、マウスが移動している間も静止画が表示されるが、ジャンプ先ガイド機能では、ジャンプ中(マウスが移動しているとき)は静止画の表示を行わない。ジャンプ中ガイド機能を選ぶか、ジャンプ先ガイド機能を選ぶかは、ユーザの指定による。
これらの機能によりユーザは、ユーザの希望するジャンプ先の指定が適切にされたかどうかをただちに知ることができる。
以下では、ジャンプ中ガイド機能について、まず、説明する。本実施例に係るカメラシステムの構成は、図1に示した第1の実施例に係るカメラシステムの構成と同様である。
本実施例でのディスプレイ108に表示される画面は、図6に示した第1の実施例の画面と同様である。
撮影現場に、図25に示すような、数字の書かれたパネル2901があり、パネル2901のある一部分がズームアップされている場合を例に、本実施例でのユーザのオペレーションと、それに対応したカメラシステムの処理と、表示される画面とを説明する。図25において、2902,2903,2904は、後述する図26,27で表示されている範囲を示す。
図26を参照して、撮影範囲を左に変更する操作を実行中に(ジャンプ中に)撮影範囲を時々刻々ガイドする例を説明する。図26(a)には、スクロールアイコン550をマウス109でドラッグする操作が行われる前のディスプレイ108上の表示が示されている。図26(a)では、パネル2901の62という数字が書かれた部分の映像が、ディスプレイ108に表示されている。
ユーザが今まで撮影していなかった左方向の撮影現場をカメラ101に撮影させたい、と考え、水平スクロールアイコン550を左にドラッグすると、ドラッグ中に、図26(b)に示すディスプレイ108の表示のように、カメラ101が今まで撮影していなかったパネル2901の42の部分の静止画像が表示される。ユーザがさらにドラッグし、その後、マウス109のボタンを押し下げた状態でマウス109の移動を止めると、図26(c)に示すディスプレイ108の表示のように、カメラ101が今まで撮影していなかったパネル2901の22の部分の静止画像が表示される。この部分がユーザの所望の撮影現場である場合、ユーザは、マウス109のボタンを放す、即ちドラッグを終了する。その結果、図26(d)に示すディスプレイ108の表示のように、カメラ101が今まで撮影していなかったパネル2901の22の部分のカメラ映像(動画)が撮影される。
垂直方向にジャンプ中は、垂直スクロールアイコン522がドラッグされるが、このとき、撮影範囲をガイドするために、水平方向にジャンプする場合と同様に、ドラッグ中に対応する静止画が表示され、ドラッグを終了すると、カメラ映像(動画)が撮影される。
水平画角もしくは垂直画角の大小にかかわらず、ジャンプ中ガイド機能は、表示すべき静止画を、水平スクロールアイコンもしくは垂直スクロールアイコンのドラッグ量に基づいて決定することにより、実現される。
カメラの水平方向の撮影可能範囲内の現在の撮影方向と水平画角に基づいて、水平スクロールアイコンの位置と長さを設定しているので、画面上でのドラッグ量を、水平方向のカメラの撮影方向の変更量に翻訳することができる。
カメラの垂直方向の撮影方向についても、同様にして垂直スクロールアイコンの位置と長さを設定しており、ドラッグ量を垂直方向のカメラの撮影方向の変更量に翻訳することができる。得られた水平方向および垂直方向の撮影方向と画角に基づいて、表示する静止画を決定する。
本実施例が用いるデータについて説明する。本実施例では、第1の実施例で用いたデータに加えて、ジャンプ中ガイド機能を実現するため、第2の実施例と同様に、静止画のデータを保持している。
静止画のデータの取得方法にはいろいろある。1つの方法は、システムが起動されたときに、撮影可能範囲全体について、最大画角で方向を変えて撮影しておく。得られたカメラ映像を静止画として、ディスク107に格納しておく。他の方法は、カメラで監視のための撮影操作を行いながら、静止画を少しずつ蓄積していく。
さらに、静止画のデータ単位(静止画データ取得のための撮影時の1画面分のデータ)ごとに、画面左上の位置が、撮影対象に設定された座標平面上のどの位置に対応するかを示す座標値x、y(静止画データの識別に使われる)と、上記座標平面上で、撮影された領域の大きさを示すデータw(水平方向)、h(垂直方向)とがある。
また、静止画のデータ単位ごとに、撮影されたときの撮影方向と画角に関するデータがある。
すでに述べた実施例でのクリックやドラッグでは、ボタンを放した(ボタンアップした)ときに、ジャンプやスクロール等の処理を行っていた。本実施例ではドラッグの操作中のボタンの押し下げ(ボタンダウン)、マウス移動、ボタン放しの各操作に応じて、必要な処理を行う。
図27に、水平方向にジャンプ中にガイドをする際の表示のうち、水平スクロールアイコン550をマウスでドラッグして、希望する位置にジャンプさせたが、ボタンを押し下げたままの場合の表示の例(図27(a)。静止画)と、その同じ位置でボタンを放した場合の表示の例(図27(b)。動画)を示す。
次に、水平方向にドラッグ中の本カメラシステムの処理内容を図28のフローチャートにより説明する。
演算部1501は、水平スクロールアイコン512がドラッグ中であることをマウス109の位置が所定の時間内(例えば、0.5秒間)で変化していることから検知すると、図形描画部1503へ水平スクロールアイコン512の移動中の位置を出力する(ステップ3210)。ステップ3220において、図形描画部1503が水平スクロールアイコン512が検知された位置にある図形の画像を作り、映像合成部1504へ出力する。
つぎに、ステップ3230で、マウス109の位置の変化から、水平スクロールアイコン512の移動方向が左であるか、右であるかを判断する。水平スクロールアイコンの走行方向が左の場合にはステップ3231に進み、右の場合にはステップ3232に進む。
ステップ3231,3232において、全体の撮影範囲における新しい撮影範囲が、水平スクロールバー510と水平スクロールアイコン512との表示上の位置関係に対応するように撮影方向を決定する。水平スクロールアイコン512の走行方向が左の場合にはステップ3231の式で、右の場合にはステップ3232の式で決定する。
ステップ3240において、演算部1501は、現在の水平画角の値と、決定された水平方向の値に基づいて、表示すべき静止画のデータの画面左上の座標値と画面の大きさを計算する。
ステップ3250において、演算部1501は、ディスク107に格納されている静止画のデータの中から、ステップ3240で求めた静止画の範囲内にある静止画のデータを読み出し、図形描画部1503に送る。図形描画部1503には、ディスプレイ108上の表示すべき位置と大きさに関するデータも送る。
ステップ3260において、図形描画部1503は、受け取った静止画データをもとに、表示する静止画を、演算部1501で指示された位置に、指示された大きさで描画する。この時に、格納されている静止画のデータの画角と現在の水平画角や垂直画角が一致しない場合は、格納されている静止画のデータの補間(拡大する必要がある場合)や間引き(縮小する必要がある場合)を行う。さらに、図形描画部1503は、GUI用表示部202,203,204を描画する。
ステップ3270において、映像合成部1504は、カメラ101からの映像との合成を行わないように、演算部1501から指示を受けて、静止画と、GUI用表示部202,203,204とからなる画像のみをディスプレイ108へ送る。
つぎに、水平方向ジャンプ中ガイドをする際の処理手順のうち、ユーザがボタンを放した場合を説明する。このときは、ボタンが放された位置に、水平スクロールアイコン512を描画する。また、カメラ101からの映像(動画)を合成する。
ユーザが垂直スクロールアイコンを用いて、垂直方向にジャンプをする際の処理手順についても、水平方向と同様に処理することができる。
ジャンプ先ガイド機能を実現するためには、マウス109のボタンが押された状態で、マウス109が所定時間内に移動しない場合に、図28と同様に静止画を描画することを行えばよい。
なお、ジャンプ先ガイド機能は、ジャンプ中ガイド機能を実行させると時間がかかるシステムの場合に、ジャンプ中ガイド機能の替わりに利用することもできる。
第3の実施例によれば、ユーザは、スクロールアイコンのドラッグ量に対応した、カメラの撮影範囲を静止画で見ることができるので、スクロールアイコンの操作し過ぎを心配せずに、スクロールアイコンによる、カメラのジャンプ機能を利用することができる。
次に、本発明に係る第4の実施例を説明する。本実施例では、第1の実施例で説明したカメラの撮影方向や撮影倍率の変更を、第1の実施例とは別の方法で実現する。
本実施例に係るカメラシステムの全体の構成を、図29に示す。図29に示すように、第1実施例に係るカメラシステムに、台車111を追加し、台車111のカメラ設置部1704にカメラ101を載せる。台車111は、平面上を動くことができ、カメラ101の設置部1704は上下に動くことができる。台車111は、カメラ制御装置1701からの駆動信号を制御信号線1702により受け取って、カメラ101を3次元空間のなかで動かすことができる。
第1の実施例と異なる点は、撮影範囲の変更指示があったときに、台車111の移動で対処する点である。これを図30により説明する。図30は、カメラ101が撮影対象2501を正面から撮影しているところを上から見た図である。台車111は、このように、通常正面を向いており、カメラ101は、撮影対象2501を正面から撮影するように撮影方向が設定されている。そして、水平方向のスクロールやジャンプの指示があった場合は、台車111は、水平方向2502に指示に従って移動する。垂直方向のスクロールやジャンプの指示があった場合は、カメラ設置部1704が指示に従って上下する。拡大または縮小の指示があった場合は、台車111は、垂直方向2503に指示に従って移動する。
台車111は、水平方向2502、垂直方向2503に、それぞれ移動するために、2組のタイヤを有する。水平方向2502に移動する場合は、水平移動用のタイヤを用い、垂直移動用のタイヤは、水平移動の際の走行抵抗とならないように床面から浮かす機構を有する。垂直方向2503に移動する場合は、水平移動用のタイヤは床面から浮かす機構も有する。
また、各組のタイヤの内の少なくとも1つについて、そのタイヤの回転数を検知する回転計を有し、検出された回転数は、カメラ制御装置1701に送られる。カメラ制御装置1701は、回転数により指示された位置まで台車111が移動したかどうかの判定に使う。指示された位置まで移動したと判断したときは、カメラ制御装置1701は、タイヤの回転を停止させる。
台車111は、また、カメラ設置部1704を上下させるための油圧回路1705を有する。上下方向の変位量は、変位センサを用いて測定する。測定結果により、設定パラメータで指定された位置に達したかどうかが判断される。
台車111の移動では対処できない範囲(台車111の移動可能範囲の外側)を撮影するように指示された場合に初めて、第1の実施例のように撮影方向の変更および画角の変更で対処する。
ディスプレイ108に表示される撮影範囲を変更するための表示を図31に示す。表示は、第1の実施例とほぼ同じであるが、台車111の移動で対処できる範囲と移動で対処できない範囲を示すために、範囲に応じて、水平、垂直スクロールバー510,520の表示色を変える。水平スクロールバー510のうち、線2601の左側の領域及び線2602の右側の領域は、線2601,2602で挾まれる領域とは異なる表示色とする。垂直スクロールバー520についても同様に線2603,2604を境に表示色を変えることとする。
撮影範囲が線2601の左側、もしくは、線2602の右側の領域にあるかどうかをユーザが容易に確認できるように、線2605を水平スクロールアイコン512の中心に表示する。そして、線2605が、線2601の左側、もしくは、線2602の右側の領域にあるときは、撮影方向を変えて、撮影範囲の変更に対応することとする。なお、線2601は実線でも点線でもよい。また、水平スクロールアイコン512の中心を示すために、線2605表示する代わりに、水平スクロールアイコン512の左側と右側とで、水平スクロールアイコン512の表示色を異ならせることとしてもよい。
垂直スクロールアイコン522についても同様に、線2606を垂直スクロールアイコン522の中心に表示する。
台車111の移動で対処できるときは、台車111を移動させるために、演算部1511は、そのためのコマンド「H」、「U」、「F」と移動量(単位は「m」)を表すデータとからなる設定パラメータをカメラ制御部1701に送る。コマンド「H」は、台車111を水平方向2502に移動させるためのコマンドである。コマンド「U」は、カメラ設置部1704を上下に移動させるためのコマンドである。コマンド「F」は、台車111を垂直方向2503に移動させるためのコマンドである。
第1の実施例に示すコマンド「P」、「T」、「Z」は、台車111の移動で対処できない範囲が指定されたと演算部1511が判断したときに、カメラ制御部1701に演算部1511から出力される。
カメラ制御装置1701は、コマンド「H」、「U」、「F」を受けると、前述のタイヤまたは油圧回路を駆動して、指示された位置にカメラ101を移動させる。
ユーザのマウス109を用いた撮影範囲の変更操作は、第1の実施例と同様に行われる。
本実施例における位置の定義について説明する。カメラ101の位置は、基準となる位置を(0,0,0)と定め、その位置からの3次元座標(x,y,z)で表される。カメラ101が水平方向2502のうち、左に移動すれば、x座標の値が小さくなり、上に移動すればy座標の値が大きくなる。前に移動すればz座標の値が小さくなる。
本実施例で用いられ、ディスク1071に格納されるデータには、第1の実施例でディスク107に格納されたデータに加えて、次のものがある。カメラ101の水平、垂直、高さ方向の位置について、現在値、上限値、下限値の各データを保持する。さらに、撮影対象物2501との距離L(図30に示す)の現在値、上限値、下限値もディスク1071に格納される。
本実施例での、ページめくり、スクロールの処理手順について、第1の実施例と異なる点は、画角に基づいて変更するパラメータが、撮影方向の代わりに、位置であることである。図30によりこれを説明する。左ページめくりの場合、図30においては、たとえば、カメラ101の位置座標は(0,0,0)から、(−5,0,0)となったとする。これは、変更後のカメラ101’から見た撮影対象物の画像と変更前のカメラ101から見た撮影対象物2501の画像との間に、図9(a)と同様にdzh度の重なりがあるように、水平方向に移動させるという条件で求めた結果が左の方に5m移動させればよいと計算で得られたためである。
カメラ101の移動距離をrとすると、rは以下の式で求められる。
r=L(tan(zh/2)+tan(zh/2−dzh))
上スクロールの場合も、同様にして求めることができる。たとえば、上に移動すべき量が、0.5mであると計算された場合は、位置座標は、(0,0,0)から(0,0.5,0)となる。
ジャンプをする場合の処理手順は、画角に基づいて得られた操作量から、カメラの位置の変更量を決定し、位置を変更する。たとえば、図31において、線2601から線2602の間が画面上では、20cmであり、実際に水平方向に台車111が移動できる量が10mであるとする。その時に、水平スクロールアイコン512が画面上で右に15cm移動したときは、実際の移動量は、(15×10/20)m、すなわち、7.5mであり、7.5mのジャンプさせることになる。この場合、たとえば、カメラパラメータは位置(0,0,0)から位置(7.5,0,0)となる。
拡大、縮小をする場合の処理手順は、画角に基づいて、カメラが同じ撮影対象を撮影できるように、焦点をあわせているものとの距離を変更しながら、位置を変えていく。拡大する場合、焦点をあわせているものとの距離を短くする。たとえば、カメラの位置パラメータの初期値が(0,0,0)の場合は、位置パラメータを(0,0,−10)のように、z方向の座標値をへらして、カメラを前進させる。縮小する場合、カメラが同じ撮影対象を撮影できるように、焦点をあわせているものとの距離を長くする。たとえばカメラの位置パラメータの初期値が(0,0,0)の場合は、(0,0,10)のように、z方向の座標値をふやして、カメラを後退させる。
この際に、第1の実施例の拡大アイコンや縮小アイコンを用いて、画角を変えて拡大、縮小する場合と同じ割合で拡大縮小をしたい場合は、以下のように位置を決定する。たとえば、第1の実施例の拡大率が0.5の場合と同様の効果を位置の変更で達成したいときは、撮影対象物2501との距離Lを半分にする。この結果、画角は変えなくとも、第1の実施例の画角を半分にした場合と同じように、拡大して撮影できる。縮小の場合も同様に考えることができる。
すなわち、第1の実施例における拡大率または縮小率をkとすると、第2の実施例では、撮影対象物との距離をk倍にすればよい。
本実施例によれば、カメラの位置を変えて撮影できるシステムにおいて、画面に表示されていない範囲を撮影するように、撮影範囲を変更することが容易にできる。
また、カメラの撮影範囲のうち、位置を変更すれば撮影できる範囲と、撮影方向/画角の変更まで必要な範囲と識別するための線2601,2602,2603,2604が表示されているため、ユーザは、位置を変更すれば撮影できる範囲と、撮影方向/画角の変更まで必要な範囲とが容易に認識できる。
さらに、撮影可能な範囲全体の中で、カメラが現在どの範囲を撮影しているかということについて、ユーザが容易に確認することができる。
また、グラフィックスとユーザインタフェースを統一しているため、第1の実施例と同様に、操作手順が覚えやすく、忘れにくい等の効果がある。
なお、第4の実施例においては、原則としてカメラは、撮影対象を正面から撮影することとし、線2601と線2602の間に対応した範囲では、位置を変更して撮影することとしたが、原則としてカメラは、撮影範囲/画角の変更で撮影範囲を変更することとしてもよい。撮影範囲/画角の変更で対処できない撮影範囲を指示されたときに初めて、カメラの位置を変更することとしてもよい。
次に、本発明の第5の実施例について説明する。本実施例では、第1から4の実施例で説明したカメラ映像を表示するウインドウに加えて、グラフィックスを表示するウインドウを同一のディスプレイに表示する。グラフィックスの操作は、カメラ映像の操作と同じGUIである。ここで、グラフィックスとは、図形データ、ワープロ文書等(以下では画像元データと呼ぶ)に基づいてコンピュータにより作成されて、ディスプレイに表示されている画像をいう。
グラフィックスを表示するウインドウでのページめくり機能は、画像元データが多くあり、このウインドウに表示されていない画像元データがある場合、表示されていない画像元データを見るためのものである。ページめくり操作をユーザがグラフィックスを表示するウインドウにおいて行うと、グラフィックスのうちウインドウの一方の端に少しだけ見えていた部分を、ウインドウの他方の端に表示されるように、グラフィックスをウインドウの他方の端の方向へずらすことである。
グラフィックスのスクロール機能は、表示されていない部分を見るためにグラフィックスを上下左右にずらす機能である。
グラフィックスの拡大機能は、現に表示されているグラフィックスを拡大して、グラフィックスの一部を詳細に表示する機能である。
グラフィックスの縮小機能は、現に表示されているグラフィックスを縮小して、画像元データの、より多くの部分を表示する機能である。
本実施例に係るカメラシステムの全体の構成を、図32に示す。本実施例のハードウエア構成は、第1の実施例と同じである。ディスプレイ108には、カメラ映像1803を表示するためのウインドウ1801とグラフィックス1804を表示するためのウインドウ1802とが表示されている。
カメラ映像1803を表示するウインドウ1801の画面構成は第1の実施例と同じである。すなわち、GUI用表示部1805,1806,1807を有し、スクロールバー、スクロールアイコン、スクロールアロー、拡大アイコン、縮小アイコンがGUI用表示部1805,1806,1807に含まれる。
グラフィックスを表示するウインドウ1802にも、第1の実施例と同様のGUI用表示部1808,1809,1810を有し、スクロールバー、スクロールアイコン、スクロールアロー、拡大アイコン、縮小アイコンがGUI用表示部1808,1809,1810に含まれる。スクロールバー、スクロールアイコン、スクロールアロー、拡大アイコン、縮小アイコンの操作方法は第1の実施例と同じである。
ディスプレイ108に図32のような表示をさせるために、ワークステーション150内の映像合成部は、ウインドウ1801内のカメラ映像1803が表示される部分に、カメラからの映像を合成する。ディスプレイ108のカメラ映像が表示される部分を除いた部分用に、グラフィックス用の表示データやGUI用表示部用の表示データを作成する。そして、ワークステーション150内の図形描画部にこれらのデータを出力する。ワークステーション150内の映像合成部は、図形描画部からの出力とカメラ101からの出力とを合成する。
なお、合成に際して、カメラ映像を、ディスプレイ108の表示面の任意の位置に、任意の大きさで表示させるために、演算部は、映像合成部に対して、カメラ映像を表示する位置および大きさの情報を送ることとしてもよい。映像合成部は、フレームメモリを有し、この情報に基づいてカメラ映像と図形描画部が出力した画像とを、フレームメモリを用いて合成することとしてもよい。
上記の第1から第4の実施例によれば、ユーザは、カメラ制御装置を直接操作して撮影範囲を変更する方法をしらない場合でも、グラフィックスを操作する場合に使われるインタフェース(GUI)と同じインタフェースで、映像を操作することができる。
第4の実施例によれば、ユーザは、カメラの位置を移動して撮影することができるため、撮影対象のカメラで撮影される面とカメラの方向とが直交していない場合に、存在することがある歪みをなくすことができる。
第5の実施例によれば、ユーザは、カメラ映像とグラフィックスとを1つのディスプレイに表示するカメラシステムにおいて、カメラ映像とグラフィックスとを同じインタフェースで操作することができる。
なお、以上の実施例においては、カメラとカメラ制御装置とワークステーションとからなるカメラシステムについて説明した。実際には、カメラを含み、カメラの撮影範囲を変更する操作を行っているシステムに本発明を適用することができる。たとえばプラントの運転システム、監視システムにおいては、プラント監視用カメラの撮影範囲を変更する操作を行っている。このような運転システム等に本発明を適用することができる。プラント制御用の計算機を上記の実施例におけるワークステーションの替わりとして使用し、プラント監視用の端末からカメラ映像を上記の実施例のように操作することにより、監視カメラが撮影した画像を監視用のグラフィックスと同様に操作することができる。
101…カメラ、102…カメラ制御装置、150…ワークステーション、107…ディスク、108…ディスプレイ、109…マウス、510…水平スクロールバー、520…垂直スクロールバー、512…水平スクロールアイコン、522…垂直スクロールアイコン、514…左スクロールアロー、516…右スクロールアロー、524…上スクロールアロー、526…下スクロールアロー、550…ポインタ、570…拡大アイコン、580…縮小アイコン