JP2019191509A - Video display device, video display method, computer program, and storage medium - Google Patents
Video display device, video display method, computer program, and storage medium Download PDFInfo
- Publication number
- JP2019191509A JP2019191509A JP2018087496A JP2018087496A JP2019191509A JP 2019191509 A JP2019191509 A JP 2019191509A JP 2018087496 A JP2018087496 A JP 2018087496A JP 2018087496 A JP2018087496 A JP 2018087496A JP 2019191509 A JP2019191509 A JP 2019191509A
- Authority
- JP
- Japan
- Prior art keywords
- enlarged
- user
- area
- image
- partial
- 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
Description
本発明は、映像表示装置の制御技術に関する。 The present invention relates to a technology for controlling a video display device.
撮像装置等で撮影した画像の全体から切り出した複数の特定領域を並べて表示する方法として、2つの方法が知られている。1つは撮像装置側で複数の特定領域を並べて合成しクライアント装置側に送って表示する方法である。もう1つは撮像装置が複数の特定領域の画像をクライアント装置に送り、クライアント装置側で並べて表示する方法である。 Two methods are known as a method of displaying a plurality of specific areas cut out from the entire image photographed by an imaging device or the like. One is a method in which a plurality of specific areas are arranged side by side on the imaging apparatus side, combined, sent to the client apparatus side, and displayed. The other is a method in which the imaging apparatus sends images of a plurality of specific areas to the client apparatus and displays them side by side on the client apparatus side.
特許文献1では、サーバから複数の画像をクライアント装置に配信し、クライアント装置側で画像を拡大して表示する方法について、開示されている。
しかしながら、クライアント装置で画像を受信して拡大する場合、並んでいる複数の特定領域をまたいで拡大表示してしまう場合がある。そのため、ユーザが拡大表示したかった部分が適切に拡大表示できないという課題がある。 However, when an image is received and enlarged by the client device, the image may be enlarged and displayed across a plurality of specific areas arranged side by side. Therefore, there is a problem that a portion that the user wanted to enlarge and display cannot be appropriately enlarged and displayed.
撮像装置で撮像された撮像画像から一部領域を複数回切り出して得られる複数の部分領域を合成した合成画像を受け取る通信部と、
ユーザが指定した拡大領域の情報を受け取る入力部と、
ユーザが指定した前記拡大領域が前記合成画像における前記複数の部分領域を含む場合に、前記複数の部分領域の数より少ない数の1以上の部分領域に含まれ、前記拡大領域に含まれる部分を拡大表示する表示部と、
を備える。
A communication unit that receives a composite image obtained by combining a plurality of partial regions obtained by cutting out a partial region from the captured image captured by the imaging device;
An input unit for receiving information on an enlarged area specified by the user;
When the enlarged area designated by the user includes the plurality of partial areas in the composite image, the enlarged area is included in one or more partial areas less than the number of the plurality of partial areas, and the portion included in the enlarged area is A display unit for enlarged display;
Is provided.
ユーザが注目し、拡大表示したいと思っているだろうという部分のみを拡大表示をすることができる。また、余計な部分を拡大することなく、見やすくユーザに拡大画像を提供することができる。 It is possible to enlarge and display only the part that the user pays attention and wants to enlarge. In addition, an enlarged image can be provided to the user in an easy-to-see manner without enlarging an unnecessary portion.
以下に、図面を参照しながら、本発明の実施形態を説明する。 Embodiments of the present invention will be described below with reference to the drawings.
尚、以下の実施形態で示す構成は一例であって、説明する構成に必ずしも限定されるものではない。 In addition, the structure shown by the following embodiment is an example, Comprising: It is not necessarily limited to the structure demonstrated.
本発明の第一の実施形態に係る映像表示装置のシステムの構成例について図1を用いて説明する。 A configuration example of the system of the video display apparatus according to the first embodiment of the present invention will be described with reference to FIG.
図1に示すように、本実施形態に係るシステムは、撮像装置1000、クライアント装置2000、入力装置2008、表示装置2009を有する。
As illustrated in FIG. 1, the system according to the present embodiment includes an
先ず、撮像装置1000について説明する。撮像装置1000は撮像装置などの撮像装置であり、クライアント装置2000において設定された姿勢や画角などの撮像パラメータに従って、実空間の動画像もしくは静止画像を撮像する。撮像装置1000によって撮像された動画像もしくは静止画像は、ネットワーク3000を介してクライアント装置2000に対して送信される。
First, the
次に、ネットワーク3000について説明する。ネットワーク3000は、例えばEthernet(登録商標)等の通信規格を満足する複数のルータ、スイッチ、ケーブル等から構成される。本実施形態では、ネットワーク3000は、撮像装置1000とクライアント装置2000との間の通信を行うことができるものであればよく、その通信規格、規模、構成を問わない。例えば、ネットワーク3000は、インターネットや有線LAN(Local Area Network)、無線LAN(Wireless LAN)、WAN(Wide Area Network)等により構成されてもよい。
Next, the
次にクライアント装置2000について説明する。クライアント装置2000は、パーソナルコンピュータ、サーバ装置、タブレット装置等の画像CPUとして機能する装置である。クライアント装置2000は、撮像装置1000からネットワーク3000を介して動画像もしくは静止画像を撮像画像として受信する。
Next, the
次に入力装置2008について説明する。入力装置2008は、キーボードやマウス、タッチパネルなどのユーザインターフェースにより構成されており、ユーザが操作することで各種の指示をクライアント装置2000に対して入力することができる。
Next, the
次に表示装置2009について説明する。表示装置2009は、液晶画面などにより構成されており、クライアント装置2000による処理結果を画像や文字などでもって表示することができる。
Next, the
なお、図2では、クライアント装置2000、入力装置2008、表示装置2009はそれぞれ別個の装置としているが、このような構成に限らない。例えば、これらの装置を一体化させて1つの装置としても良いし、クライアント装置2000と表示装置2009とを一体化させてもよいし、入力装置2008と表示装置2009とを一体化させてもよい。また、クライアント装置2000と撮像装置1000とを一体化させてもよい。
In FIG. 2, the
次に、撮像装置1000のハードウエア構成例について、図2(a)のブロック図を用いて説明する。尚、図2(a)に示した構成は撮像装置1000に適用可能な構成の一例に過ぎず、適宜変形変更が可能である。
Next, a hardware configuration example of the
CPU1101は、主記憶装置1102に格納されているコンピュータプログラムやデータを用いて処理を実行する。これによりCPU1101は、撮像装置1000全体の動作制御を行うと共に、後述する機能を実現する。
The
主記憶装置1102は、Random Acces Memory(RAM)等の記憶装置である。主記憶装置1102は、補助記憶装置1103からロードされたコンピュータプログラムやデータ、撮像部1106による撮像画像、ネットワークI/F1108を介してクライアント装置2000から受信した各種のデータを格納するためのエリアを有する。さらに主記憶装置1102はCPU1101が各種の処理を実行する際に用いるワークエリアを有する。このように主記憶装置1102は、各種のエリアを適宜提供することができる。
The
補助記憶装置1103は、ハードディスクドライブ(HDD)、Read only Memory(ROM)、ソリッドステートドライブ(SSD)等の大容量情報記憶装置である。
The
補助記憶装置1103には、OS(オペレーティングシステム)や、撮像装置1000が行うものとして後述する各処理をCPU1101に実行もしくは制御させるためのコンピュータプログラムやデータが保存されている。
The
また補助記憶装置1103には、ネットワークI/F1108を介してクライアント装置2000から受信したデータも保存される。補助記憶装置1103に保存されているコンピュータプログラムやデータは、CPU1101による制御に従って適宜主記憶装置1102にロードされ、CPU1101による処理対象となる。
The
駆動部1107は、クライアント装置2000から受信した撮像パラメータに基づいて撮像部1106を駆動して、該撮像部1106の姿勢(撮像方向)や画角等を制御する。
The
駆動部1107による制御対象は特定の対象に限らず、撮像部1106の姿勢及び画角であっても良いし、何れか一方のみであっても良いし、その他の対象(例えば撮像部1106の位置)であっても良い。
The control target by the
また、撮像部1106の位置や姿勢、画角などは固定しても良く、その場合は駆動部1107は設けなくても良い。例えば魚眼レンズを具備して周囲を撮影する全方位撮像装置1000の場合は、パン・チルト・ズーム動作を撮像画像の一部を切り出しデジタル処理することができるので、必ずしも駆動部1107は設けなくても良い。
In addition, the position, orientation, angle of view, and the like of the
撮像部1106は、撮像素子と光学系とを有し、光学系の光軸と撮像素子との交点を撮像中心として被写体の像を撮像素子上に結像する。撮像素子には、CMOS(ComplementaryMetal−Oxide Semiconductor)、CCD(Charged Coupled Device)等がある。
The
ネットワークI/F1108は、撮像装置1000がネットワーク3000を介してクライアント装置2000との間のデータ通信を行うために利用するインターフェースである。
A network I / F 1108 is an interface used for the
次に、クライアント装置2000のハードウエア構成例について、図2(b)のブロック図を用いて説明する。なお、図2(b)に示した構成は、クライアント装置2000に適用可能な構成の一例に過ぎず、適宜変形/変更が可能である。
Next, a hardware configuration example of the
CPU2001は、主記憶装置2002に格納されているコンピュータプログラムやデータを用いて処理を実行する。これにより、クライアント装置2000全体の動作制御を行うと共に、クライアント装置2000が行うものとして後述する各処理を実行若しくは制御する処理装置である。例えばCPU2001は、主記憶装置2002に格納されているコンピュータプログラムやデータを用いて処理を実行することで、後述する機能を実現する。
The
主記憶装置2002は、Random Access Memory(RAM)等の記憶装置である。主記憶装置2002は、補助記憶装置2003からロードされたコンピュータプログラムやデータ、ネットワークI/F2007を介して撮像装置1000から受信した各種のデータ(例えば、撮像画像)、を格納するためのエリアを有する。さらに主記憶装置2002は、CPU2001が各種の処理を実行する際に用いるワークエリアを有する。このように主記憶装置2002は、各種のエリアを適宜提供することができる。
The
補助記憶装置2003は、ハードディスクドライブ(HDD)、Read Only Memory(ROM)、ソリッドステートドライブ(SSD)等の大容量情報記憶装置である。補助記憶装置2003には、OS(オペレーティングシステム)や、クライアント装置2000が行うものとして後述する各処理をCPU2001に実行若しくは制御させるためのコンピュータプログラムやデータが保存されている。
The
また補助記憶装置2003には、ネットワークI/F2007を介して撮像装置1000から受信した各種のデータ(例えば、撮像画像)も保存される。補助記憶装置2003に保存されているコンピュータプログラムやデータは、CPU2001による制御に従って適宜主記憶装置2002にロードされ、CPU2001による処理対象となる。
The
入力I/F2005は、入力装置2008をクライアント装置2000に接続するためのインターフェースである。出力I/F2006は、表示装置2009をクライアント装置2000に接続するためのインターフェースである。ネットワークI/F2007は、クライアント装置120がネットワーク3000を介して撮像装置1000との間のデータ通信を行うために利用するインターフェースである。
An input I /
図3は、クライアント装置2000のソフトウエア構成図である。入力部2103、表示部2102、通信部2105、及び記憶部2101を主記憶装置2002へロードする。
FIG. 3 is a software configuration diagram of the
入力部2103は、ユーザによる入力装置2008の操作を受け付けるためのプログラムである。ユーザによる入力装置2008の操作に応じて、画像データのリクエストや、全体画像中の位置指定を受け付け、記憶部2101を介し、通信部2105や表示部2102へ入力を渡すプログラムである。
The
画像中の位置の指定は、画像の幅、高さを上限とする画像領域内の直交座標とするとよい。加えて入力部は画像内の直交座標を、必要に応じて球面座標系に変換する。そして、魚眼レンズを介して得られる円形の全体画像中の指定した領域を切り出す。そして、拡大・縮小を行うズーム要求、現在の表示位置を変更するパン・チルト要求に変換し通信部2105へ送る。
The designation of the position in the image may be performed using orthogonal coordinates in the image area with the upper limit of the width and height of the image. In addition, the input unit converts the orthogonal coordinates in the image into a spherical coordinate system as necessary. And the designated area | region in the circular whole image obtained via a fisheye lens is cut out. Then, it is converted into a zoom request for enlarging / reducing and a pan / tilt request for changing the current display position, and sent to the
通信部2105は入力部2103から入力された各種命令要求を撮像装置1000へ送信制御するとともに、撮像装置1000から画像データや、現在のズーム・パン・チルトなどの撮像装置1000情報などを受信するためのプログラムである。通信部2105により受信された画像データは記憶部2101に記憶される。
The
表示部2102は、記憶部2101に記憶された画像データに応じて画像をディスプレイに表示するプログラムである。加えて、記憶部2101に保存されている座標・大きさに応じて、画像データ中の切出した領域の変倍・移動を行う。
The
各プログラムは、OSの機能により連携する。 Each program is linked by the function of the OS.
なお、本形態の入力部2103は、入力装置2008の操作を受け付けることに限らず、ネットワークを経由したクライアントの操作や、クライアントの自動実行プログラムなどの入力を受け付けるように構成することも可能である。
Note that the
図4は撮像装置1000が撮像した全体画像をクライアント装置2000で表示した例である。本実施形態では、建物の屋内の天井に撮像装置1000は鉛直下方向を向いて取り付けられている。撮像装置1000には魚眼レンズを具備しており、イメージサークル4000の径よりも撮像素子のサイズの方が大きいため鉛直下の光軸方向を中心に対し前後左右のレンジで180°得られる画像は図のような円形となる。この全体画像は魚眼レンズの特性により画像の中心から外に向かうにしたがって歪んだ映像となる。
FIG. 4 is an example in which the entire image captured by the
図4の破線部4001、4002、4003、4004は、ユーザが指定した一部領域である部分領域を示す。歪んだ画像を歪補正すれば矩形となるが、全体画像においては歪んだ形状である。
Dashed
図5は図4において破線で示した4つの部分領域について、複数回切り出して、歪を補正して並べて1つに合成した画像を示す。4001、4002、4003、4004のそれぞれについて歪を補正した5001、5002、5003、5004を並べて合成した合成画像が5000である。尚、部分領域を4つとして説明するが、4つ以外の場合でも同様であることは言うまでもない。 FIG. 5 shows an image obtained by cutting out a plurality of partial regions indicated by broken lines in FIG. 4 a plurality of times, correcting the distortion, and arranging them into one. There are 5000 synthesized images obtained by arranging 5001, 5002, 5003, and 5004 with distortion corrected for 4001, 4002, 4003, and 4004, respectively. In addition, although it demonstrates as four partial areas, it cannot be overemphasized that it is the same also in cases other than four.
図6を説明する。撮像装置1000が画像を合成し、クライアント装置2000に合成画像を送る。クライアント装置2000側は合成画像を受信して表示する。クライアント装置が合成画像の一部6002を拡大してディスプレイに表示する。
FIG. 6 will be described. The
クライアント装置2000はディスプレイ画面上にウインドウ6000を開く。そしてクライアント装置2000はそのウインドウ内の下図に、撮像装置1000側で4つの部分領域を合成した合成画像6001を配置して表示する。合成画像6001には4つの部分領域6005、6006、6007、6008が並べて配置されている。ユーザが合成画像6001の中の拡大領域6002を指定し、クライアント装置2000は拡大領域6002を拡大した拡大画像6003を上図に表示する。
The
拡大画像は撮像装置1000側で合成した画像の拡大領域6002をそのまま拡大しているので、2つの部分領域6005と6007の境界に相当する境界部6004が拡大画像6003の中に含まれている。
Since the enlarged image is obtained by enlarging the enlarged area 6002 of the image synthesized on the
図7を説明する。撮像装置1000が4つの部分領域7002、7005、7006、7007をクライアント装置2000に送る。クライアント装置2000は4つの部分領域を並べて表示する。
FIG. 7 will be described. The
図7下図でユーザが拡大領域7003を指定すると、クライアント装置2000は拡大領域7003に係る情報を撮像装置1000に送り、撮像装置1000が拡大領域7003を拡大してクライアント装置2000に送信する。ここで部分領域7002、7005、7006、7007は撮像装置1000から別々に送られてきている。そのため、ユーザの指定は拡大領域7003だけになり、隣接する部分領域7007には影響が及ばない。
When the user designates the
これにより図7下図の合成画像7000は図7上図の合成画像7001の状態に変化する。上図の左上の部分領域7004は、下図の左上の部分領域7003を拡大して表示した部分である。撮像装置1000が撮像している全体画像では部分領域7002と部分領域7007は隣接していないので、拡大領域7003に相当する拡大画像は図7上図の左上の部分領域7004のようになる。
As a result, the
次に本発明を適用した最良の第一の実施形態を説明する。 Next, the best first embodiment to which the present invention is applied will be described.
システムの動作として、図1において撮像装置1000が画像の部分領域を切り出して合成した後、クライアント装置2000に合成画像を送信する。ユーザは、クライアント装置2000に送信され表示装置2009で表示された合成画像9000を見る。ユーザが入力装置2008を操作すると、操作により発生する入力信号は入力装置2008からクライアント装置2000に送られる。
As an operation of the system, the
次にクライアント装置2000の動作として、図2においてクライアント装置2000は入力I/F2005から入力装置2008からの入力信号を受け取る。クライアント装置2000は、補助記憶装置2003から主記憶装置2002に呼び出したコンピュータプログラムとデータに基づいて、後述するフローに沿って、CPU2001が処理を行う。CPU2001は、撮像装置1000から送信されネットワーク3000を介しネットワークI/F2007で受信した画像に対して、処理を行う。処理を行った結果は出力I/F2006から表示装置2009に出力する。
Next, as an operation of the
次に表示装置2009における動作について図9を用いて説明する。
Next, the operation of the
図9は表示装置2009に表示されるウインドウを示す。
FIG. 9 shows a window displayed on the
図9(a)は表示装置2009で表示される画像の一部を示す。撮像装置1000が撮像し、その撮像した全体画像から4つの部分領域を切り出し、それらを並べて1枚の合成画像に合成し、クライアント装置2000に送る。そして、クライアント装置2000は受け取った合成画像を表示装置2009に送って表示する。
FIG. 9A shows a part of an image displayed on the
そしてその合成画像が図9(a)のウインドウ9000上に表示される。合成画像は4つの部分領域9002、9003、9004、9005からなり、図9(a)ではその合成画像の一部を矩形の拡大領域9006でユーザが指定している初期状態であり、その拡大領域9006は拡大され拡大画像9001として表示されている。
The composite image is displayed on the
次に図9(b)の状態を説明する。ユーザはカーソル9108で示す位置を拡大表示したいと考え、カーソル9108で示す位置をクリック操作により指定したとする。すると拡大領域9006はカーソル9108の位置を中心とした位置9107に移動する。ここで元の位置の9006と移動した後の位置9107で拡大領域の大きさは変化していない。この状態では拡大領域は9107の位置にあり、部分領域9002、9003、9004、9005の4つにまたがっている。
Next, the state of FIG. 9B will be described. It is assumed that the user wants to enlarge and display the position indicated by the
次に図9(c)の状態を説明する。拡大領域はユーザがカーソルで示した9108を中心とした9107の位置に相当するが、これを部分領域9003、9004、9005にはまたがらないように移動する。ユーザがカーソルで指定した位置9108は部分領域9002の内部にあり、部分領域9002の中では右下側に位置する。
Next, the state of FIG. 9C will be described. The enlarged area corresponds to a
そこで、拡大領域は9107の位置から、拡大領域の右辺と下辺が部分領域9002と一致するように9210の位置に移動する。拡大領域の中心位置は9108から9209の位置に移動する。ここで拡大領域の大きさは部分領域9002よりも小さい。拡大領域の位置9210の位置に応じた拡大画像が9001として表示される。
Therefore, the enlarged area moves from the
次に図9(d)の状態を説明する。最終的に拡大領域は右辺と下辺が部分領域9002と一致する9210の位置となり、その拡大画像が9001として表示される。
Next, the state of FIG. 9D will be described. Eventually, the enlarged area is at a
図9(a)、(b)、(c)、(d)において、(b)、(c)は説明のために図示したが、実際の処理は(a)の状態から(d)の状態に(b)、(c)を経ないで変化する。 9 (a), (b), (c), and (d), (b) and (c) are shown for explanation, but the actual processing is changed from the state (a) to the state (d). Changes without passing through (b) and (c).
次に図8のフローチャートを用いて拡大領域の移動処理の流れを説明する。 Next, the flow of the enlargement area movement process will be described with reference to the flowchart of FIG.
S8000では、クライアント装置2000の入力部2103にユーザから画像上の位置を指定する操作を受け付けた際に移動の処理が起動する。入力部2103で受け付けた情報は、入力部2103が記憶部2101に送る。
In S8000, movement processing is started when an operation for designating a position on the image is received from the user via the
S8001では、記憶部2101に保存されているユーザが指定した座標と、事前に設定され現在表示されている拡大領域の中心座標と高さと幅からなる大きさと、から、ユーザが指定した座標を中心とする領域への移動の計算を表示部2012が行う。
In step S8001, the user-specified coordinates are centered from the coordinates specified by the user stored in the
S8002では、表示部2102が、計算した領域が複数の部分領域にまたがるかどうかの判断を行う。
In step S8002, the
複数の部分領域にまたがると判断した場合、S8003へと分岐する。S8003ではユーザがカーソルで指定した部分領域内に収まる範囲で拡大範囲の移動を行う。すなわち、拡大領域が複数の領域にまたがっている場合には縦横またがっている分だけ平行に移動する。 If it is determined that it extends over a plurality of partial areas, the process branches to S8003. In step S8003, the enlargement range is moved within a range that falls within the partial area designated by the user with the cursor. That is, when the enlargement region extends over a plurality of regions, it moves in parallel by the amount that extends vertically and horizontally.
その後S8005で処理を終了する。 Thereafter, the process ends in S8005.
もしS8002において複数の領域にまたがらないと判断した場合、S8004へ分岐する。S8004では指定領域へ拡大範囲が移動しS8005において処理は終了する。 If it is determined in S8002 that it does not extend over a plurality of areas, the process branches to S8004. In S8004, the enlargement range moves to the designated area, and the process ends in S8005.
図9では拡大領域が複数の部分領域にまたがる場合を説明したが、S8004で示すような、複数の部分領域にまたがらない場合の処理は通常の処理であるので説明は省略する。 Although the case where the enlarged region extends over a plurality of partial regions has been described with reference to FIG. 9, the processing performed when the extended region does not extend over a plurality of partial regions is a normal processing, and thus the description thereof is omitted.
このように指定された領域が複数の部分領域にまたがる場合であっても、ユーザが指定した部分領域に拡大範囲を収めるので、拡大画像に部分領域の境界は含まれない。 Even when the designated area extends over a plurality of partial areas, the enlarged range is contained in the partial area designated by the user, so the boundary of the partial area is not included in the enlarged image.
ユーザがクリック操作以外を行った場合の動作について、以下で説明する。 The operation when the user performs a non-click operation will be described below.
システムの動作として、図1において撮像装置1000が画像の部分領域を切り出して合成した後、クライアント装置2000に合成画像を送信する。ユーザは、クライアント装置2000に送信され表示装置2009で表示された合成画像9000を視認する。そして、ユーザが入力装置2008を操作すると、操作により発生する入力信号は入力装置2008からクライアント装置2000に送られる。
As an operation of the system, the
次にクライアント装置2000の動作として、図2においてクライアント装置2000は入力I/F2005から入力装置2008からの入力信号を受け取る。クライアント装置2000は、補助記憶装置2003から主記憶装置2002に呼び出したコンピュータプログラムとデータに基づいて、後述するフローに沿って、CPU2001が処理を行う。CPU2001は、撮像装置1000から送信されネットワーク3000を介しネットワークI/F2007で受信した画像に対して、処理を行う。処理を行った結果は出力I/F2006から表示装置2009に出力する。
Next, as an operation of the
ソフトウエアの構成も図3に示すものと同様である。 The software configuration is the same as that shown in FIG.
図10−1(a)は、ユーザの指定操作に応じて処理を切り換える場合にCPU2001がプログラムを実行する処理のフローチャートを示し、図3のソフトウエア構成の表示部2102動作処理のフローチャートに相当する。
FIG. 10A shows a flowchart of a process in which the
S10000の処理は「ユーザからのクリック、ムーブ、ドロップ操作や、ムーブ中に一定期間で処理が起動」することを示す。 The process of S10000 indicates that “click, move, drop operation from the user, or the process is activated for a certain period during the move”.
図10−1(b)を用いて説明する。ユーザは表示装置2009に表示されている合成画像中の部分領域10104において、入力装置2008として例えばマウスを用いて操作する。
This will be described with reference to FIG. The user operates, for example, a mouse as the
ここで位置10101でマウスの左ボタンを押す、いわゆるクリック動作をした場合は「クリック時」である。
Here, when the left button of the mouse is pressed at the
また、位置10101でマウスの左ボタンをクリックして、その後に、押したまま位置10103までカーソルを動かす時、位置10101と位置10103の間を移動する期間が「ムーブ時」である。
When the left mouse button is clicked at the
また、位置10101でマウスの左ボタンをクリックして、押したまま位置10103までカーソルを動かし、位置10103でマウスの左ボタンを離す時が「ドロップ時」である。
The time when the left button of the mouse is clicked at the
つまり「クリック時」の位置が始点位置であり、「ドロップ時」の位置が終点位置である。 That is, the “when clicked” position is the start point position, and the “when dropped” position is the end point position.
ここでS10000の処理startは、図10−1(b)の「クリック時」と「ドロップ時」、そして、「ムーブ時」には一定の期間間隔で、S10000の処理が始まることを指す。 Here, the process start of S10000 indicates that the process of S10000 starts at a fixed interval at “clicking” and “dropping” and “move” in FIG. 10B.
図10−1(a)の説明に戻る。S10001では、ユーザ操作がクリックイベントかどうかの判断を行う。「クリック時」である場合、S10050へ分岐する。S10050ではクリッククリック時の処理を行う。 Returning to the description of FIG. In step S10001, it is determined whether the user operation is a click event. If it is “when clicked”, the process branches to S10050. In S10050, the process at the time of clicking is performed.
図10−2はクリッククリック時の処理であり、S10051にて開始する。 FIG. 10-2 shows a process when clicked, and starts in S10051.
次にS10004ではユーザがクリックした位置が、現在の拡大領域の中かどうかの判断をCPU2001が行う。S10004において拡大領域の中と判断された場合、S10006へ分岐する。
In step S10004, the
S10006では操作変数として「移動」と保存し、ユーザの所望する操作を保存する。 In S10006, “Move” is stored as the operation variable, and the operation desired by the user is stored.
もしS10004において、ユーザがクリックした位置が現在の拡大領域の中でないと判断された場合、S10005へ分岐する。 If it is determined in S10004 that the position clicked by the user is not in the current enlargement area, the process branches to S10005.
S10005ではクリックされた位置が現在表示されている拡大領域の枠の上かどうかの判断を行う。S10005において拡大領域の枠の上であると判断された場合、S10007へ分岐する。 In S10005, it is determined whether or not the clicked position is on the frame of the currently displayed enlarged area. If it is determined in S10005 that the area is above the frame of the enlarged area, the process branches to S10007.
S10007では操作変数として「変倍」と保存し、ユーザの所望する操作を保存する。 In S10007, “magnification” is stored as the operation variable, and the operation desired by the user is stored.
もしS10005においてクリックされた位置が拡大領域の枠の上でない場合、S10008へと分岐する。 If the position clicked in S10005 is not on the frame of the enlargement area, the process branches to S10008.
S10008では操作変数として「移動・変倍」と保存し、ユーザの所望する操作を保存する。 In step S10008, “movement / magnification” is stored as the operation variable, and the operation desired by the user is stored.
S10006、S10007、S10008の後はS10009において、変数「開始部分領域」にユーザが指定した位置が含まれる現在の部分領域を示す情報を保存する。 After S10006, S10007, and S10008, in S10009, information indicating the current partial area including the position designated by the user in the variable “start partial area” is stored.
ここでは「開始部分領域」の定義はここではユーザが指定した位置が含まれる現在の部分領域としている。しかし、後述するムーブ、ドロップを伴う操作の場合には、ユーザがクリックで指定した開始点が、拡大領域に含まれる主たる部分領域の外になる場合もある。 Here, the definition of “starting partial area” is the current partial area including the position designated by the user. However, in the case of an operation involving a move and a drop, which will be described later, the start point designated by the user by clicking may be outside the main partial area included in the enlarged area.
このような場合を踏まえ、主たる部分領域、すなわち例えば拡大領域に含まれるもっとも大きな面積を有する部分領域を開始部分領域と設定してもよい。もちろん、前述したようにユーザがクリックで指定した開始点を含む部分領域を開始部分領域としてもよい。 In consideration of such a case, the main partial region, that is, the partial region having the largest area included in the enlarged region, for example, may be set as the start partial region. Of course, as described above, the partial area including the start point designated by the user by clicking may be used as the start partial area.
次に、S10010において、変数「開始拡大領域の大きさ」に現在の拡大領域の大きさを保存する。 In step S10010, the current size of the enlargement area is stored in the variable “size of the start enlargement area”.
次に、S10011において、変数「開始拡大領域の中心座標」に現在の拡大領域の中心座標を保存する。 Next, in S10011, the center coordinates of the current enlargement area are stored in the variable “center coordinates of the start enlargement area”.
次に、S10012において、ユーザに指定された位置を変数「開始指定座標」として保存する。 Next, in S10012, the position designated by the user is stored as a variable “start designated coordinates”.
次に、S10013において現在の操作状態を表すState変数に「クリック」を代入する。 In step S10013, “click” is substituted into the State variable indicating the current operation state.
最後にS10052にて処理を終了する。 Finally, the process ends at S10052.
図10−1(a)のS10001において、クリックイベントでない場合、S10002へ分岐する。S10002ではムーブイベントかどうかの判断を行う。ムーブイベントである場合、S10060へ分岐する。S10060ではムーブ時の処理を行う。 If it is not a click event in S10001 of FIG. 10A, the process branches to S10002. In S10002, it is determined whether the event is a move event. If it is a move event, the process branches to S10060. In S10060, the process at the time of the move is performed.
図10−3はムーブ時の処理であり、S10061にて開始する。 FIG. 10-3 shows the process during the move, which starts in S10061.
「ムーブ時」はユーザがマウスの左ボタンを押しながら動かしている間なので、図10−2の「クリック時」の処理を経過した後である。 Since “when moving” is while the user moves while pressing the left button of the mouse, it is after the “when clicking” process of FIG. 10-2 has elapsed.
そのため、S10020では「クリック時」の処理のS10006,S10007、S10008において保存された操作変数に従って分岐を行う。 Therefore, in S10020, branching is performed according to the operation variables stored in S10006, S10007, and S10008 of the “clicking” process.
操作変数が「移動」である場合はS10022において「移動操作2」の処理を行う。「移動操作2」時の処理については後述する。S10020において、操作変数が移動でないとなった場合、S10021において操作変数が「変倍」かどうかの判断を行う。 If the operation variable is “move”, the process of “move operation 2” is performed in S10022. The process at the time of “moving operation 2” will be described later. If the operation variable is not moved in S10020, it is determined in S10021 whether the operation variable is “magnification”.
S10021において操作変数が「変倍」である場合、S10023において「変倍操作」時の処理を行う。「変倍操作」時の処理についても後述する。S10021において操作変数が「変倍」でない場合、S10024において行うべき処理は「移動・変倍」操作時の処理と判断し処理を行う。「移動・変倍」操作時の処理についても後述する。 If the operation variable is “magnification” in S10021, the process for “magnification operation” is performed in S10023. The processing at the time of “magnifying operation” will also be described later. If the operation variable is not “magnification” in S10021, the process to be performed in S10024 is determined to be the process at the time of the “movement / magnification” operation, and the process is performed. The processing during the “movement / magnification” operation will also be described later.
S10022,S10023、S10024の処理の後としては、S10025において、現在の操作状態を表すState変数に「ムーブ」を代入し、S10062において終了する。
ムーブ
次に図10−1(a)のS10002において、現在のイベントがムーブイベントでないと判断した場合は、S10003においてドロップイベントかどうかの判断を行う。S10003において発生したイベントがドロップイベントである場合、S10070へ分岐する。S10070ではドロップ時の処理を行う。
After the processing of S10022, S10023, and S10024, in S10025, “Move” is substituted for the State variable indicating the current operation state, and the process ends in S10062.
Move Next, in S10002 of FIG. 10A, if it is determined that the current event is not a move event, it is determined whether or not it is a drop event in S10003. If the event that occurred in S10003 is a drop event, the process branches to S10070. In step S10070, a drop process is performed.
図10−4はドロップ時の処理であり、S10071にて開始する。 FIG. 10-4 shows processing at the time of dropping, which starts in S10071.
S10030では現在の操作状態を表すState変数がムーブかどうかの判断を行う。State変数がムーブである場合、S10031へ分岐する。 In S10030, it is determined whether or not the State variable indicating the current operation state is a move. If the State variable is Move, the process branches to S10031.
S10031ではS10006,S10007、S10008において代入した操作変数を参照し、「移動」かどうかの判断を行う。S10031において操作変数が「移動」である場合、S10022と同じように、S10034において「移動操作2」時の処理を行う。 In S10031, the operation variable substituted in S10006, S10007, and S10008 is referred to and it is determined whether or not it is “move”. When the operation variable is “move” in S10031, the process for “move operation 2” is performed in S10034 as in S10022.
S10031において操作変数が「移動」でないとなった場合、S10032において操作変数が「変倍」かどうかの判断を行う。操作変数が「変倍」である場合、S10035に分岐する。 If the manipulated variable is not “move” in S10031, it is determined in S10032 whether the manipulated variable is “magnification”. If the manipulated variable is “magnification”, the process branches to S10035.
S10035ではS10023と同じように、変倍操作時の処理を行う。S10032において操作変数が「変倍」でないとなった場合、S10036において、S10024時と同じように「移動・変倍」操作時の処理を行う。 In S10035, similar to S10023, processing at the time of zooming operation is performed. If the manipulated variable is not “scaling” in S10032, processing in “movement / magnification” operation is performed in S10036 as in S10024.
S10030において、State変数がムーブでないとなった場合、S10033において操作変数は「移動」であると判断し、操作変数に「移動」を代入する。 If the State variable is not a move in S10030, it is determined in S10033 that the operation variable is “move”, and “move” is substituted for the operation variable.
その後S10037において「移動操作1」時の処理を行う。「移動操作1」時の処理は図8の「移動操作1」時の処理にて説明したため説明を省略する。
Thereafter, in S10037, the process for “moving
S10034,S10035、S10036、S10037の後は、S10038においてState変数に「ドロップ」を代入する。その後S10072において終了する。 After S10034, S10035, S10036, and S10037, “drop” is substituted into the State variable in S10038. Thereafter, the process ends in S10072.
図10−1(a)において、S10050、S10060、S10070それぞれの処理後の場合、そして、S10003において、ドロップイベントでないとなった場合は、S10040において処理を終了する。 In FIG. 10A, when the processes after S10050, S10060, and S10070 are performed, and when the event is not a drop event in S10003, the process ends in S10040.
ここからは図10−1〜4の説明において述べた処理のうち、説明済の「移動操作1」を除いた、「移動操作2」、「変倍」、「移動・変倍」時の各処理について説明する。
From here on, in the processes described in the description of FIGS. 10A to 4E, each of the “moving operation 2”, “magnification”, and “movement / magnification” except for the already explained “
「移動操作2」の動作について説明する。 The operation of “move operation 2” will be described.
図11は「移動操作2」時の表示部2102のフローチャートであり、拡大領域の中心座標に対する指定座標の相対位置を維持しながら移動する場合を示す。
FIG. 11 is a flowchart of the
S11000は、前述のように図10−3のS10022,S10−4のS10034時に起動することを示す。 As described above, S11000 indicates activation at S10022 in FIG. 10-3 and S10034 in S10-4.
S11001では、「クリック時」にユーザが指定した位置である開始指定座標と、開始拡大領域の中心座標を用いて、ユーザが処理の開始時点でユーザが指定した位置が拡大領域の中心からオフセットしている量を計算する。 In step S11001, the position specified by the user at the start of processing is offset from the center of the enlarged area by using the start specified coordinates that are the position designated by the user at the time of “clicking” and the center coordinates of the start enlarged area. Calculate the amount you have.
次に、S11002において、「ドロップ時」に設定すべき拡大領域を計算する。 In step S11002, an enlargement area to be set at the “drop time” is calculated.
「ドロップ時」にユーザが指定した位置である終了指定座標と、「クリック時」に算出したオフセット、「クリック時」に取得した「クリック時」の拡大領域の大きさである開始拡大領域の大きさを用いる。 End specified coordinates that are the position specified by the user at the time of “Drop”, the offset calculated at “On Click”, and the size of the start enlarged area that is the size of the “On Click” enlarged area acquired at “On Click” Use.
すなわち、「ドロップ時」に指定した位置である終了指定座標から「クリック時」に算出したオフセットを差し引くことにより、「ドロップ時」に設定すべき拡大領域の中心座標を求める。この拡大領域の中心座標を中心に、「クリック時」に取得した開始拡大領域の大きさに等しい拡大領域の大きさを設定することで、「ドロップ時」にユーザが「ドロップ」操作で指定した位置に拡大領域が大きさを保ったまま移動する。 That is, by subtracting the offset calculated at “when clicked” from the end specified coordinates at the position specified at “when dropped”, the center coordinates of the enlarged region to be set at “when dropped” are obtained. By setting the size of the enlargement area equal to the size of the start enlargement area obtained at the time of “clicking” around the center coordinates of this enlargement area, the user specified by the “drop” operation at the time of “dropping” The enlarged area moves to the position while keeping the size.
次にS11003において、計算した拡大領域が複数の部分領域にまたがるかどうかの判定を行う。 Next, in S11003, it is determined whether or not the calculated enlarged region extends over a plurality of partial regions.
「ドロップ時」にユーザが「ドロップ」操作で指定した位置に拡大領域が大きさを保ったまま移動した時には、拡大領域の矩形の座標は既知であるので、各部分領域の座標と比較を行って、計算した拡大領域が複数の部分領域にまたがるかどうかを判定する。 When the enlarged area moves while maintaining the size at the position specified by the “drop” operation at the time of “dropping”, the coordinates of the rectangle of the enlarged area are known, so comparison is made with the coordinates of each partial area. Thus, it is determined whether or not the calculated enlargement region extends over a plurality of partial regions.
S11003において、複数の部分領域にまたがるとなった場合、S111004へ分岐する。S11004では、部分領域内に収まる範囲で移動を行う。S11003において計算した領域が複数の部分領域にまたがらないとなった場合、S11005へ分岐する。S11005では計算した拡大領域に移動を行う。 If it is determined in S11003 that it extends over a plurality of partial areas, the process branches to S111004. In S11004, the movement is performed within a range that falls within the partial area. If the area calculated in S11003 does not extend over a plurality of partial areas, the process branches to S11005. In step S11005, the calculated enlargement area is moved.
S11004、S11005において移動処理を行ったのちS11006において処理を終了する。 After performing the movement process in S11004 and S11005, the process ends in S11006.
図14は図11の「移動操作2」時のUIの例である。ユーザは14002の位置をマウスでクリックして14003の位置までカーソルをドラッグし、ドロップする。すなわち、14002の位置で「クリック時」の処理に入り、その後「ムーブ時」の処理を行い、「ドロップ時」の処理を行う。
FIG. 14 shows an example of the UI at the time of “moving operation 2” in FIG. The user clicks the
ユーザが最初に「クリック」で指定した位置は指定した時点の拡大領域14001の中なので操作変数は「移動」である。
Since the position first designated by the user by “click” is in the
「クリック時」にユーザが指定した位置14002は部分領域14007の中にあるので、開始部分領域は部分領域14007である。「移動操作2」の一連のユーザの動作における開始時点でユーザが指定した部分領域なので開始時の部分領域、すなわち開始部分領域である。
Since the
開始拡大領域の大きさは「クリック時」の拡大領域14001の高さと幅である。開始拡大領域の中心座標は、「クリック時」の拡大領域14001の中心座標である。開始指定座標はユーザの指定した位置14002である。その後、「ムーブ」の処理になり、「ドロップ」の処理になる。終了指定座標は「ドロップ時」にユーザが指定した位置で14003の位置を指す。
The size of the start enlargement area is the height and width of the
これらを元に「ドロップ」処理の後の拡大領域がCPU2001によって計算され、拡大領域は14004になる。そして拡大領域14004に応じた画像がウインドウ14006の上図の14005に表示される。
Based on these, the enlargement area after the “drop” processing is calculated by the
「クリック時」にユーザが拡大領域14001に対して指定した位置14002の相対位置関係と、「ドロップ時」にユーザが指定した位置とCPU2001によって計算され設定される拡大領域14004の相対位置関係は、変化していない。
The relative positional relationship between the
次に「変倍」の動作について説明する。 Next, the operation of “magnification” will be described.
図12は変倍操作時の表示部のフローチャートである。「変倍」の動作ではアスペクト比を維持する。S12001は図10−3のS10023、図10−4のS10035時に起動する。 FIG. 12 is a flowchart of the display unit at the time of zooming operation. The aspect ratio is maintained in the “scaling” operation. S12001 is activated at S10023 in FIG. 10-3 and S10035 in FIG. 10-4.
S12002では「クリック時」の拡大領域である開始拡大領域の大きさすなわち高さと幅から初期のアスペクト比を求める。 In step S12002, the initial aspect ratio is obtained from the size, that is, the height and the width of the starting enlarged area that is the enlarged area when “clicked”.
そして「クリック時」にユーザが指定した位置である開始指定座標と「ドロップ時」に指定した位置である終了指定座標から、拡大領域の大きさをCPU2001は計算する。
Then, the
ここで拡大領域は「クリック時」にカーソルが乗っている枠の位置が「ドロップ時」に指定した位置である終了指定座標まで変化した時にアスペクトを維持したままの大きさとなる。 Here, the enlarged area has a size that maintains the aspect when the position of the frame on which the cursor is placed when “clicked” changes to the end designated coordinates that are the positions designated when “dropped”.
この拡大領域の大きさを設定することで、「ドロップ時」にユーザが「ドロップ」操作で指定した位置に拡大領域の枠が乗った状態で拡大領域が変倍される。 By setting the size of the enlargement area, the enlargement area is scaled in a state where the frame of the enlargement area is placed at the position designated by the “drop” operation by the user during “dropping”.
次にS12003では計算した拡大領域が複数の領域にまたがるかどうかの判断を行う。「ドロップ時」にユーザが「ドロップ」操作で指定した位置に拡大領域が大きさを保ったまま移動した時には、拡大領域の矩形の座標は既知であるので、各部分領域の座標と比較を行って、計算した拡大領域が複数の部分領域にまたがるかどうかを判定する。 In step S12003, it is determined whether the calculated enlargement area extends over a plurality of areas. When the enlarged area moves while maintaining the size at the position specified by the “drop” operation at the time of “dropping”, the coordinates of the rectangle of the enlarged area are known, so comparison is made with the coordinates of each partial area. Thus, it is determined whether or not the calculated enlargement region extends over a plurality of partial regions.
S12003において、複数の領域にまたがる場合、S12004へ分岐する。S12004では開始拡大領域の座標と、指定された位置をもとに、アスペクト比を維持しながら部分領域に収まる範囲の大きさに変更する。S12003において複数の領域にまたがらない場合、S12005へ分岐する。S12005では計算した領域の大きさに変更する。S12004、S12005において変倍を行ったのち、S12006にて処理を終了する。 In S12003, when it spans a plurality of areas, it branches to S12004. In step S12004, based on the coordinates of the start enlarged region and the designated position, the size is changed to a size that can be accommodated in the partial region while maintaining the aspect ratio. In S12003, when it does not extend over a plurality of areas, it branches to S12005. In S12005, the size of the calculated area is changed. After zooming in S12004 and S12005, the process ends in S12006.
図15は図12の「変倍」時のUIの例である。ユーザは15001の位置をマウスでクリックして15002の位置までカーソルをドラッグし、ドロップする。すなわち、15001の位置で「クリック時」の処理に入り、その後「ムーブ時」の処理を行い、15002の位置で「ドロップ時」の処理を行う。
FIG. 15 shows an example of the UI at the time of “magnification” in FIG. The user clicks the
ユーザが最初に「クリック」で指定した位置15001はカーソルの先端が拡大領域15003の枠の上なので操作変数は「変倍」である。
Since the
「クリック時」にユーザが指定した位置15001は部分領域15007の中にあるので、開始拡大領域は部分領域15007である。
Since the
開始拡大領域の大きさは「クリック時」の拡大領域15003の高さと幅である。開始拡大領域の中心座標は、「クリック時」の拡大領域15003の中心座標である。開始指定座標はユーザの指定した位置15001である。
The size of the start enlargement area is the height and width of the
その後、「ムーブ」の処理になり、「ドロップ」の処理になる。終了指定座標は「ドロップ時」にユーザが指定した位置で15002の位置を指す。
Thereafter, the “move” process is performed, and the “drop” process is performed. The end designation coordinates indicate the
これらを元に「ドロップ」処理の後の拡大領域がCPU2001によって計算され、拡大領域は15004になる。そして拡大領域15004に応じた画像がウインドウ15006の上図の15005に表示される。
Based on these, the enlargement area after the “drop” process is calculated by the
ここで「クリック時」にユーザが指定した位置15001から「ドロップ時」にユーザが指定した位置15002まで拡大領域の左側の枠の位置が変化する。しかし、拡大領域のアスペクト比は「クリック時」の15003から「ドロップ時」の15004まで変化はしない。
Here, the position of the frame on the left side of the enlargement region changes from the
次に「移動・変倍」の動作について説明する。 Next, the “movement / magnification” operation will be described.
図13は変倍操作時の表示部のフローチャートである。S13000は図10−3のS10024、図10−4のS10036時に起動する。 FIG. 13 is a flowchart of the display unit at the time of zooming operation. S13000 is activated at S10024 in FIG. 10-3 and S10036 in FIG. 10-4.
S13001では、「クリック時」にユーザが指定した位置である開始指定座標と「ドロップ時」に指定した位置である終了指定座標から、アスペクト比を維持しつつ、CPU2001は拡大領域の大きさを計算する。すなわち、CPU2001は、「クリック時」にユーザが指定した位置である開始指定座標と「ドロップ時」に指定した位置である終了指定座標とを通り、「クリック」時と同じアスペクト比を維持する拡大領域を計算して求める。
In step S13001, the
S13002では計算した拡大領域が複数の領域にまたがるかどうかの判断を行う。「ドロップ時」にユーザが「ドロップ」操作で指定した位置に拡大領域が大きさを保ったまま移動した時には、拡大領域の矩形の座標は既知であるので、各部分領域の座標と比較を行って、計算した拡大領域が複数の部分領域にまたがるかどうかを判定する。 In step S13002, it is determined whether the calculated enlargement area extends over a plurality of areas. When the enlarged area moves while maintaining the size at the position specified by the “drop” operation at the time of “dropping”, the coordinates of the rectangle of the enlarged area are known, so comparison is made with the coordinates of each partial area. Thus, it is determined whether or not the calculated enlargement region extends over a plurality of partial regions.
S13002において、複数の領域にまたがる場合、S13003へ分岐する。S13003では、ユーザの指定する部分領域内に収まる範囲の大きさに、アスペクトを維持しながら拡大領域の大きさの変更を行う。 In S13002, when it extends over a plurality of areas, it branches to S13003. In S13003, the size of the enlarged region is changed while maintaining the aspect to the size of the range that fits within the partial region designated by the user.
S13002において計算した領域が複数の部分領域にまたがらないとなった場合、S13004へ分岐する。S13004では計算して求めた通りの拡大領域に変更する。このようにS13003、S13004において移動・変倍を行ったのちS13005において処理を終了する。 If the area calculated in S13002 does not extend over a plurality of partial areas, the process branches to S13004. In S13004, the area is changed to the enlarged area as calculated and obtained. In this way, after moving and scaling in S13003 and S13004, the process ends in S13005.
図16は「移動・変倍」操作時のUIの例である。 FIG. 16 shows an example of a UI during the “movement / magnification” operation.
ユーザは16002の位置をマウスでクリックして16004の位置までカーソルをドラッグし、ドロップする。すなわち、16002の位置で「クリック時」の処理に入り、その後「ムーブ時」の処理を行い、16004の位置で「ドロップ時」の処理を行う。
The user clicks the position of 16002 with the mouse, drags the cursor to the position of 16004, and drops it. That is, the “clicking” process is started at the
ユーザが最初に「クリック」で指定した位置16002は「クリック時」の拡大領域16001の枠の外なので操作変数は「移動・変倍」である。
Since the
「クリック時」にユーザが指定した位置16002は右下の部分領域16008の中にあるので、開始部分領域は部分領域16008である。
Since the
開始拡大領域の大きさは「クリック時」の拡大領域16001の高さと幅である。開始拡大領域の中心座標は、「クリック時」の拡大領域16001の中心座標である。開始指定座標は「クリック時」にユーザの指定した位置16002である。その後、「ムーブ」の処理になり、「ドロップ」の処理になる。終了指定座標は「ドロップ時」にユーザが指定した位置で16004の位置を指す。
The size of the start enlargement area is the height and width of the
これらを元に「ドロップ」処理の後の拡大領域がCPU2001によって計算され、拡大領域は16003になる。そして拡大領域16003に応じた画像がウインドウ16006の上図の16005に表示される。
Based on these, the enlargement area after the “drop” process is calculated by the
設定された拡大領域は、「クリック時」にユーザが指定した位置16002と「ドロップ時」にユーザが指定した位置16004両方を通る。この時の拡大領域のアスペクト比は「クリック時」の拡大領域16001から変化されていない。
これまで説明したようにクリック・ムーブ・ドロップというユーザの操作に応じて、拡大領域をユーザ指定の部分領域に適切に収めることができる。
The set enlarged area passes through both the
As described so far, the enlarged region can be appropriately accommodated in the partial region designated by the user in accordance with the user operation of click / move / drop.
次に、本発明の第2の実施形態を説明する。 Next, a second embodiment of the present invention will be described.
撮像装置1000側で拡大処理を行う撮像装置について説明する。
An imaging apparatus that performs enlargement processing on the
図17は、本実施例における撮像装置1000のソフトウエア構成を示すブロック図である。図17において、1001は映像制御部、1002は通信部、1003は記憶部、1004は撮像装置制御部である。通信部1002はクライアント装置2000からのリクエストを受付け、レスポンスをクライアント装置2000へ返す。
FIG. 17 is a block diagram illustrating a software configuration of the
リクエストには、画像データ取得、全体画像中の指定した領域の拡大・縮小を行うズーム制御、現在の表示位置を変更するパン・チルト制御が含まれる。受け付けたリクエストは記憶部1003に保存され、ズーム・パン・チルト制御は撮像装置制御部1004へ、画像の取得は映像制御部へ送られる。撮像装置制御部1004は、通信部1002からの撮像装置1000の制御を受け付け、球面座標系であるズーム・パン・チルト制御を画像内における2次元空間の極座標系へ変換を行い、記憶部1003へ保存し、映像制御部1001へ送る。
The request includes image data acquisition, zoom control for enlarging / reducing a specified area in the entire image, and pan / tilt control for changing the current display position. The accepted request is stored in the
映像制御部1001は、画像の取得やズーム・パン・チルト制御を受け付け、要求された位置・大きさの画像を生成し、圧縮符号化を行い、記憶部1003に保存する。クライアント装置2000から画像取得要求をされた場合、通信部1002が要求を受け付け、記憶部1003に保存されている画像を、クライアント装置2000へ配信を行う。各プログラムは、OSの機能により連携する。
The
図18は撮像装置1000側で拡大処理を行う場合のクライアント装置2000の入力部2103のフローチャートである。S19000はユーザから入力があった場合に起動する。S19001では指定された直交座標から球面座標系のズーム・パン・チルトへ変換を行う。その後ズーム・パン・チルト要求を通信部2105に送る。そしてS19003において終了する。要求を受け取った通信部は、撮像装置1000へ要求を送信する。
FIG. 18 is a flowchart of the
図19は撮像装置1000側で拡大処理を行う場合の撮像装置1000側の撮像装置制御部1002のフローチャートである。S20000は通信部1002から位置変更要求を受けた際に起動する。S20001では3次元の極座標系である球面座標系から2次元の極座標系である円座標系に変換を行う。その後S20002において、位置変更要求を映像制御部1001へ送信する。その後S20003にて終了する。映像制御部は、指定された位置・大きさで画像を生成し、記憶部1003を介し、通信部1002からクライアント装置2000に画像が送られる。
FIG. 19 is a flowchart of the imaging
図20(a)と図20(b)は撮像装置1000側で拡大処理を行う場合のUIの例である。
20A and 20B are examples of UIs when the enlargement process is performed on the
図20(a)では、クライアント装置2000に接続された表示装置2009が画像21000を表示している。ユーザが入力装置2008で範囲21002を指定する。ユーザが指定した拡大領域21002は、合成画像の複数の部分領域にまたがっている。
In FIG. 20A, the
その後、撮像装置1000で移動・変倍処理を行った結果が図20(b)の画像21001である。部分領域21003は図20(a)の拡大領域21002の範囲の拡大画像となる。
After that, the result of the movement / magnification process performed by the
本実施例では、クライアント装置2000と撮像装置1000の両方に、合成画像における複数の部分領域の境界において制限を設けていない。そのため、図20(a)での部分領域の境界21004は表示されるが、拡大後の図20(b)の画像では境界が無い。
In the present embodiment, both the
このように当初の部分領域を超えた部分も拡大して部分領域の画像を変化させ、拡大処理を行う。 In this way, the part beyond the initial partial area is enlarged to change the image of the partial area, and the enlargement process is performed.
次に、本発明の第3の実施形態を説明する。 Next, a third embodiment of the present invention will be described.
本実施形態では、ユーザが指定した領域に応じて、撮像装置1000の複数の画像の切り出し、それらを合成してあたかも一つの部分領域として提示する。これにより複数の部分領域にまたがった領域をあたかもそのまま拡大したような感覚が得られる。
In the present embodiment, a plurality of images of the
撮像装置1000側で拡大処理を行う撮像装置である点は第2の実施形態と同様である。
The
図21は撮像装置1000側で拡大処理を行う場合のクライアント装置2000の入力部2103のフローチャートである。
FIG. 21 is a flowchart of the
S22000はユーザから入力を受けた場合にプログラムが起動する。 In S22000, the program is activated when an input is received from the user.
S22001ではユーザが指定した位置を中心とする拡大領域の計算を行ってユーザへの表示画面上で、ユーザが拡大したい領域を求める。 In S22001, an enlargement area centering on the position designated by the user is calculated to obtain an area that the user wants to enlarge on the display screen to the user.
S22002では計算した拡大領域が複数の部分領域にまたがるかどうかの判断を行う。ユーザが表示画面を見ながらマウス操作によってドラッグ、ムーブ、ドロップすることは前述した説明と同じである。これにより定まる拡大領域の矩形の座標はユーザへの表示画面上での座標は既知であるので、各部分領域の座標と比較を行って、計算した拡大領域が複数の部分領域にまたがるかどうかを判定する。 In S22002, it is determined whether or not the calculated enlarged region extends over a plurality of partial regions. The user dragging, moving, and dropping by looking at the display screen and operating the mouse is the same as described above. Since the coordinates of the rectangle of the enlarged area determined by this are known on the display screen to the user, it is compared with the coordinates of each partial area to determine whether the calculated enlarged area spans multiple partial areas. judge.
S22002において複数の部分領域にまたがる場合、S22003に分岐する。 If it extends over a plurality of partial areas in S22002, it branches to S22003.
S22003ではまたがっている部分領域が残っているかどうかの判断を行う。残っている場合S22004に分岐をする。 In S22003, it is determined whether or not there is a partial area straddling. If it remains, the process branches to S22004.
プログラム上、判断はループ処理の前で行う場合と後で行う場合とがあるが、前で行うものとして説明する。そのため詳細は後述するが、ここでは「残っているかどうか」の判断となる。一回目の判断なのでここでは「残っている」となる。 In the program, the determination may be performed before or after the loop processing, but will be described as being performed before. Therefore, although details will be described later, here, it is determined whether or not it remains. Since it is the first decision, it is “remaining” here.
S22004では処理領域として、次のまたがる領域を代入する。 In S22004, the next spanning area is substituted as the processing area.
ここで代入する、ということについて説明する。 The substitution will be described here.
ここでは図23を用いて説明する。拡大領域24002は部分領域24004と部分領域24005にまたがっている。この2つの部分領域は撮像装置2000の異なる切り出し位置から得られる画像である。部分領域24002に含まれる上側の領域24006と、部分領域24005に含まれる下側の領域24007のうち、片方ずつ処理を行う。この時2回分の処理が行われ、例えば1回目に処理を行う時に上側の領域24006のパラメータを代入し、次に下側を代入する。このように拡大領域に含まれる部分領域ごとに処理を行うことを指す。
Here, a description will be given with reference to FIG. The
次にS22005において、指定された直交座標系から球面座標系に変換する。 In step S22005, the designated rectangular coordinate system is converted to a spherical coordinate system.
これは切り出してユーザに表示している映像は直交座標系で表現できるが、切り出す前の撮像装置1000が魚眼レンズによってとらえている風景は球面座標による表現が好ましいためである。
This is because the image cut out and displayed to the user can be expressed in an orthogonal coordinate system, but the landscape captured by the
次にS22003においてまたがっている領域が残っているかどうかの判断を再度行う。 Next, in S22003, it is determined again whether or not there is a remaining region.
これは例えば図23でいうところの拡大領域24002のうち、上側の領域24006、下側の領域24007を順次処理して、その他にもまたがっている領域があるかどうかを指す。つまり他の部分領域にもまたがる指定であれば、まだ残っている、となる。図23の例であれば2箇所を処理すれば、残っていない、となる。
This indicates, for example, whether the
S22003においてまたがっている領域が残っていない場合、変換した全領域を含む合成画像のリクエストを通信部2105へ送り、S22009において終了する。S22002において計算した拡大領域が複数の領域にまたがらないとなった場合、S22007において、指定した直交座標系から、球面座標系へ変換する。その後S22008において変換した変換した画像リクエストを通信部2105へ送り、S22009において終了する。リクエストを受けた通信部2105は、ネットワーク3000を介し撮像装置1000へ送信する。
If there is no remaining region in S22003, a request for a composite image including all converted regions is sent to the
ここまでがクライアント装置2000側の処理である。クライアント装置2000で行うのは、拡大領域が複数の部分領域にまたがるか判断し、またがっている領域を分割して、分割した領域ごとにその領域情報に相当するリクエストを撮像装置1000に送信する。
This is the processing on the
次に撮像装置1000側で同様に分割されたリクエストに応じてそれぞれの画像を撮像画像から切り出してクライアント装置2000に送る。
Next, each image is cut out from the captured image and sent to the
以下でその処理の流れを説明する。 The process flow will be described below.
図22は撮像装置1000側で拡大処理を行う場合の撮像装置1000側の撮像装置制御部1004のフローチャートである。クライアント装置2000から画像リクエストを受信した撮像装置1000のソフトウエアの通信部1002は、撮像装置制御部1004が位置変更要求を受け取り、合成画像要求を映像制御部へ要求する。位置変更要求をうけた際にS23000が起動する。
FIG. 22 is a flowchart of the imaging
次にS23001において、複数位置の変更要求かどうかの判断を行う。 Next, in S23001, it is determined whether or not there is a request for changing a plurality of positions.
S23001において複数位置の変更要求であるとなった場合、S23002において変更位置が複数残っているかどうかの判断を行う。 If a request for changing a plurality of positions is made in S23001, it is determined in S23002 whether a plurality of changed positions remain.
S23002において複数残っている場合、S23003へ分岐する。S23003では処理領域を次の変更位置とする。 If a plurality remains in S23002, the process branches to S23003. In S23003, the processing area is set as the next change position.
次にS23004において、3次元の極座標系である球面座標系から平面の極座標系へ変換を行う。 In step S23004, a spherical coordinate system, which is a three-dimensional polar coordinate system, is converted to a planar polar coordinate system.
その後S23002へ戻り、変更位置が残っているかどうかの判断を行う。 Thereafter, the process returns to S23002, and it is determined whether or not the changed position remains.
変更位置が残っている、とはクライアント装置2000からの分割されたリクエストが残っているかどうかである。このように分割されたリクエストに応じて画像を切り出す。
The change position remains is whether or not the divided requests from the
S23002において変更位置が残っていないと判断された場合、S23005へ分岐する。 If it is determined in S23002 that no change position remains, the process branches to S23005.
変更位置が残っていないとは、クライアント装置2000からの分割されたリクエストが全部処理して残っていないことを指す。
The fact that the change position does not remain means that all the divided requests from the
S23005では合成画像の変更を映像制御部1001へ送信する。その後S23007において終了する。
In step S23005, the composite image change is transmitted to the
S23001において複数変更位置要求でないと判断された場合、S23006に分岐する。 If it is determined in S23001 that the request is not a multiple change position request, the process branches to S23006.
S23006では3次元の極座標系である球面座標系から平面の極座標系へ変換を行う。 In S23006, conversion is performed from a spherical coordinate system, which is a three-dimensional polar coordinate system, to a planar polar coordinate system.
次にS23008において、位置変更要求を映像制御部1001へ送信する。
In step S23008, a position change request is transmitted to the
そしてS23007において処理を終了する。 In step S23007, the process ends.
その後で位置変更要求および複数位置変更要求を受け取った映像制御部1001は対象となる画像の位置を変更する。映像制御部は位置を変更した画像を生成した後、通信部1002へ画像生成応答を返す。
After that, the
図23は図22のフローチャートに沿って処理を行った第3の実施形態のUIの例である。 FIG. 23 is an example of a UI according to the third embodiment in which processing is performed according to the flowchart of FIG.
合成画像24000の拡大領域24002をユーザが指定した場合、拡大領域24002は左上の部分領域24004と左下の部分領域24005にまたがっているため、図22のフローチャートでいうところの複数位置の変更に相当する。
When the user designates the
クライアント装置2000での指定が撮像装置1000上での複数の部分領域に渡る指定の場合、それらをすべて含む合成画像を撮像装置1000に要求し、撮像装置1000はすべてに応答した後に合成画像を返す。これにより、撮像装置1000側で拡大した場合でも、ユーザが見て、指定した通りの領域を拡大して表示できるという効果がある。
When the designation on the
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。 As mentioned above, although preferable embodiment of this invention was described, this invention is not limited to these embodiment, A various deformation | transformation and change are possible within the range of the summary.
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
(Other examples)
The present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in a computer of the system or apparatus read and execute the program This process can be realized. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
2101 記憶部
2102 表示部
2103 入力部
2105 通信部
2101
Claims (18)
ユーザが指定した拡大領域の情報を受け取る入力部と、
ユーザが指定した前記拡大領域が前記合成画像における前記複数の部分領域を含む場合に、前記複数の部分領域の数より少ない数の1以上の部分領域に含まれ、前記拡大領域に含まれる部分を拡大表示する表示部と、
を備えることを特徴とする映像表示装置。 A communication unit that receives a composite image obtained by combining a plurality of partial regions obtained by cutting out a plurality of regions from a captured image captured by an imaging device;
An input unit for receiving information on an enlarged area specified by the user;
When the enlarged area designated by the user includes the plurality of partial areas in the composite image, the enlarged area is included in one or more partial areas less than the number of the plurality of partial areas, and the portion included in the enlarged area is A display unit for enlarged display;
A video display device comprising:
を特徴とする請求項1記載の映像表示装置。 The video display device according to claim 1, wherein the display unit displays an enlarged image by moving, scaling, or both of the images in the enlarged region according to a method designated by a user.
前記撮像装置で撮像された撮像画像から複数の領域を複数切り出して得られる複数の部分領域を受け取り、ユーザが指定した拡大領域を示す領域情報を前記撮像装置に送るクライアント装置と、
からなる映像表示システムにおいて、
前記撮像装置は前記領域情報に基づいて前記撮像画像から前記複数の部分領域を切り出す位置か、大きさか、または位置と大きさの両方を変更して前記クライアント装置に送ることを特徴とする映像表示システム。 An imaging device;
A client device that receives a plurality of partial regions obtained by cutting out a plurality of regions from a captured image captured by the imaging device, and sends region information indicating an enlarged region designated by a user to the imaging device;
In a video display system consisting of
The image pickup device changes the position, size, or both position and size of the plurality of partial regions from the picked-up image based on the region information, and sends the changed image display to the client device. system.
ユーザが指定した拡大領域の情報を受け取る入力工程と、
ユーザが指定した前記拡大領域が前記合成画像における前記複数の部分領域を含む場合に、前記複数の部分領域の数より少ない数の1以上の部分領域に含まれ、前記拡大領域に含まれる部分を拡大表示する表示工程と、
を備えることを特徴とする映像表示方法。 A communication step of receiving a composite image obtained by combining a plurality of partial areas obtained by cutting out a partial area from the captured image captured by the imaging device;
An input process for receiving information of an enlarged area specified by the user;
When the enlarged area designated by the user includes the plurality of partial areas in the composite image, the enlarged area is included in one or more partial areas less than the number of the plurality of partial areas, and the portion included in the enlarged area is A display process for displaying an enlarged view;
A video display method comprising:
を特徴とする請求項9記載の映像表示方法。 The video display method according to claim 9, wherein, in the display step, the image in the enlarged area is moved, scaled, or both are enlarged according to a method designated by a user.
ユーザが指定した拡大領域が前記複数の部分領域にまたがる場合に、複数の部分領域の拡大する部分を示す領域情報をクライアント装置が前記撮像装置に送る工程と、
前記撮像装置が前記領域情報に基づいて前記撮像装置が前記拡大領域に相当する部分について複数の部分領域を切り出してクライアント装置に送る工程を有することを特徴とする映像表示方法。 A step in which the client device receives a plurality of partial regions obtained by cutting out a plurality of regions from the captured image captured by the imaging device;
When the enlargement area specified by the user extends over the plurality of partial areas, the client device sends area information indicating a part to be enlarged of the plurality of partial areas to the imaging device;
A method of displaying an image, comprising: a step in which the imaging apparatus cuts out a plurality of partial areas for a part corresponding to the enlarged area based on the area information and sends the partial area to a client apparatus.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018087496A JP2019191509A (en) | 2018-04-27 | 2018-04-27 | Video display device, video display method, computer program, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018087496A JP2019191509A (en) | 2018-04-27 | 2018-04-27 | Video display device, video display method, computer program, and storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019191509A true JP2019191509A (en) | 2019-10-31 |
Family
ID=68390181
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018087496A Pending JP2019191509A (en) | 2018-04-27 | 2018-04-27 | Video display device, video display method, computer program, and storage medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019191509A (en) |
-
2018
- 2018-04-27 JP JP2018087496A patent/JP2019191509A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4928275B2 (en) | Camera control apparatus and control method thereof | |
JP6167703B2 (en) | Display control device, program, and recording medium | |
JP5791256B2 (en) | Display control apparatus and display control method | |
EP2442548B1 (en) | Control device, camera system, and program | |
JP6071866B2 (en) | Display control device, display device, imaging system, display control method, and program | |
US20040179121A1 (en) | System and method for displaying captured images according to imaging device position | |
KR20110108265A (en) | Control device, camera system and program | |
JP6312046B2 (en) | Image processing system, image processing method, and program | |
JPH1093855A (en) | Remote control method for image pickup device, its system and its device and storage medium storing program executing the method | |
JP5312371B2 (en) | Video surveillance system and surveillance video display device | |
JP2019198043A (en) | Control device, control method, and program | |
JPWO2015040732A1 (en) | Video display system and video display method | |
US10908795B2 (en) | Information processing apparatus, information processing method | |
JP6608196B2 (en) | Information processing apparatus and information processing method | |
JP6543108B2 (en) | INFORMATION PROCESSING APPARATUS, CONTROL METHOD THEREOF, AND PROGRAM | |
US11178362B2 (en) | Monitoring device, monitoring method and storage medium | |
JP2019191509A (en) | Video display device, video display method, computer program, and storage medium | |
JP2016096482A (en) | Image processing apparatus, image processing method, and program | |
JP2015216543A (en) | Control apparatus, imaging system, control method, and program | |
JP6975205B2 (en) | Information processing device, system, control method of information processing device, and program | |
JP6129136B2 (en) | Apparatus operating device and apparatus operating method | |
JP2000101992A (en) | Camera control system, its method, storage medium with its program stored therein, and its client | |
JP2021040231A (en) | Image processing device and program | |
JP2017182843A (en) | Program, display control device, and display control method | |
JP2023173764A (en) | Information processing apparatus and information processing method |