JP2014239390A - Camera server device, camera system, and control method of camera server device - Google Patents

Camera server device, camera system, and control method of camera server device Download PDF

Info

Publication number
JP2014239390A
JP2014239390A JP2013122026A JP2013122026A JP2014239390A JP 2014239390 A JP2014239390 A JP 2014239390A JP 2013122026 A JP2013122026 A JP 2013122026A JP 2013122026 A JP2013122026 A JP 2013122026A JP 2014239390 A JP2014239390 A JP 2014239390A
Authority
JP
Japan
Prior art keywords
image
mask
camera
camera server
client terminal
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
Application number
JP2013122026A
Other languages
Japanese (ja)
Inventor
康宏 川和
Yasuhiro Kawakazu
康宏 川和
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2013122026A priority Critical patent/JP2014239390A/en
Publication of JP2014239390A publication Critical patent/JP2014239390A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide a technique enabling easy mask setting even in a case where a mask is shifted.SOLUTION: When an instruction of masking a specified area on an image is received from a client terminal device, a size of an enlarged specified area is obtained by enlarging a specified area by an increment size corresponding to a current field angle of an imaging apparatus. An image is generated by overlapping the specified area on the image with a mask image having the above-mentioned size as a composite image, and the generated composite image is transmitted to the client terminal device.

Description

本発明は、撮像画像中の領域に対するマスキングに関するものである。   The present invention relates to masking for a region in a captured image.

従来、パン・チルト・ズームを備えた監視カメラは、プライバシー保護のために映像の一部を単色の画像と重畳して隠すマスク機能を有している。また、動作に合わせて領域を追従させる技術もある。エンコーダを採用しないカメラもあるが、初期化時にパン・チルトの制御限界まで制御することで、現在位置を求めている。パン・チルトの動作に対して映像中の隠したい領域であるマスク領域の座標を随時計算して表示したり、ズームの倍率に応じて領域の大きさを変えたりする技術がある。   Conventionally, surveillance cameras equipped with pan, tilt, and zoom have a mask function that hides a part of a video image by superimposing a single color image for privacy protection. There is also a technique for following the area in accordance with the operation. Some cameras do not employ an encoder, but the current position is obtained by controlling to the pan / tilt control limit at initialization. There are techniques for calculating and displaying the coordinates of a mask area, which is an area to be hidden, in the video for pan / tilt operation, and changing the size of the area according to the zoom magnification.

例えば、特許文献1では、画角情報に応じてマスク領域の大きさを変更する技術が開示されている。また特許文献2では、パン・チルトの進行方向に補正したマスクを重畳することでマスクでの遮蔽率を向上させる技術が開示されている。   For example, Patent Document 1 discloses a technique for changing the size of a mask region in accordance with field angle information. Patent Document 2 discloses a technique for improving the masking rate of a mask by superimposing a corrected mask in the pan / tilt traveling direction.

特登録3938127Special registration 3938127 特開2009-27753JP2009-27753

しかしながら、上述の特許文献に開示された従来技術では、モーターの停止位置精度によっては元の位置に戻らない。マスク領域がずれる場合は、ユーザはマスク設定後にカメラのパン・チルト制御を行い、再度マスク設定する手順を繰り返してマスクを設定する必要があり、マスク設定が難しかった。本発明はこのような問題に鑑みてなされたものであり、マスクがずれるようなケースにおいても簡便にマスク設定を可能にする技術を提供する。   However, in the prior art disclosed in the above-mentioned patent document, the original position is not restored depending on the stop position accuracy of the motor. When the mask area is shifted, it is necessary for the user to perform pan / tilt control of the camera after setting the mask and to repeat the mask setting procedure to set the mask, which makes it difficult to set the mask. The present invention has been made in view of such problems, and provides a technique that enables mask setting easily even in a case where the mask is displaced.

本発明の一様態によれば、撮像装置により撮像された画像をクライアント端末装置に配信するカメラサーバ装置であって、前記画像上の指定領域をマスクする指示を前記クライアント端末装置から受信すると、前記撮像装置の現在の画角に対応する増分量だけ前記指定領域を拡大した拡大指定領域のサイズを求める計算手段と、前記画像上の指定領域を覆うように、前記サイズを有するマスク画像を重ねた画像を合成画像として生成し、該生成した合成画像を前記クライアント端末装置に対して送信する送信手段とを備えることを特徴とする。   According to one aspect of the present invention, a camera server device that distributes an image captured by an imaging device to a client terminal device, and when receiving an instruction from the client terminal device to mask a specified area on the image, The calculation means for obtaining the size of the enlarged designated area by enlarging the designated area by an incremental amount corresponding to the current angle of view of the imaging device, and the mask image having the size are overlaid so as to cover the designated area on the image Transmitting means for generating an image as a composite image and transmitting the generated composite image to the client terminal device.

本発明の構成によれば、マスクがずれるようなケースにおいても簡便にマスク設定を可能にする。   According to the configuration of the present invention, it is possible to easily set a mask even in a case where the mask is shifted.

ネットワークカメラシステムの構成例を示す図。The figure which shows the structural example of a network camera system. カメラサーバ100のハードウェア構成例を示すブロック図。FIG. 2 is a block diagram illustrating a hardware configuration example of a camera server 100. カメラサーバ100内のプログラム群を示す図。The figure which shows the program group in the camera server. クライアント120のハードウェア構成例を示すブロック図。The block diagram which shows the hardware structural example of the client 120. FIG. クライアント120内のプログラム群を示す図。The figure which shows the program group in the client 120. FIG. 表示例を示す図。The figure which shows the example of a display. カメラサーバ100が行う処理のフローチャート。The flowchart of the process which the camera server 100 performs. ステップS820,S830にて行う処理のフローチャート。The flowchart of the process performed in step S820 and S830. 表示例を示す図。The figure which shows the example of a display. カメラサーバ100が行う処理のフローチャート。The flowchart of the process which the camera server 100 performs. クライアント120が行う処理のフローチャート。The flowchart of the process which the client 120 performs. カメラサーバ100の外観例を示す図。The figure which shows the example of an external appearance of the camera server 100. FIG. ステップS830で行う処理のフローチャート。The flowchart of the process performed by step S830.

以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施例の1つである。   Preferred embodiments of the present invention will be described below with reference to the accompanying drawings. The embodiment described below shows an example when the present invention is specifically implemented, and is one of the specific examples of the configurations described in the claims.

[第1の実施形態]
先ず、本実施形態に係るネットワークカメラシステムについて説明する。本実施形態に係るネットワークカメラシステムは図1に示す如く、2台のカメラサーバと1台のクライアント120とを含み、それぞれの機器はネットワーク130を介して互いにデータ通信が可能なように接続されている。なお、図1では説明上、カメラサーバ及びクライアントの数はそれぞれ2,1としているが、本実施形態は、この数に限るものではない。
[First Embodiment]
First, the network camera system according to the present embodiment will be described. As shown in FIG. 1, the network camera system according to the present embodiment includes two camera servers and one client 120, and each device is connected via a network 130 so as to be able to perform data communication with each other. Yes. In FIG. 1, the number of camera servers and clients is 2 and 1 for explanation, but the present embodiment is not limited to this number.

カメラサーバ100,110は何れも、空間中に配され且つ画角が可変若しくは固定のカメラ(撮像装置)を有しており、該カメラにより撮像された動画像をネットワーク130を介してクライアント120に配信する。クライアント120は、カメラサーバ100,110の両方若しくは一方に対してアクセスし、アクセス先から動画像を受信して表示する。   Each of the camera servers 100 and 110 includes a camera (imaging device) that is arranged in a space and has a variable or fixed angle of view, and a moving image captured by the camera is transmitted to the client 120 via the network 130. To deliver. The client 120 accesses both or one of the camera servers 100 and 110 and receives and displays a moving image from the access destination.

ネットワーク130は、Ethernet(登録商標)等の通信規格を満足する複数のルータ、スイッチ、ケーブル等から構成される。各サーバ・クライアント間の通信が支障なく行えるものであればその通信規格、規模、構成は問わない。つまり、ネットワーク130は、例えば、インターネットであってもLAN(Local Area Network)であっても良い。   The network 130 includes a plurality of routers, switches, cables, and the like that satisfy a communication standard such as Ethernet (registered trademark). The communication standard, scale, and configuration are not limited as long as communication between each server and client can be performed without any problem. That is, the network 130 may be, for example, the Internet or a LAN (Local Area Network).

次に、カメラサーバ100(110)について説明する。以下では、カメラサーバ100,110はそれぞれ同じ構成を有し且つ同じ動作を行うものとして説明するため、カメラサーバ100について説明し、カメラサーバ110に係る説明は省略する。即ち、以下に説明するカメラサーバ100−クライアント120間の動作は、カメラサーバ110−クライアント120間の動作にも同様に適用可能である。カメラサーバ100のハードウェア構成例について、図2のブロック図を用いて説明する。   Next, the camera server 100 (110) will be described. In the following, the camera servers 100 and 110 will be described as having the same configuration and performing the same operation, so the camera server 100 will be described and the description relating to the camera server 110 will be omitted. That is, the operation between the camera server 100 and the client 120 described below can be similarly applied to the operation between the camera server 110 and the client 120. A hardware configuration example of the camera server 100 will be described with reference to the block diagram of FIG.

CPU200は、一次記憶装置240に格納されているコンピュータプログラムやデータを用いて処理を実行することで、カメラサーバ100全体の動作制御を行うと共に、カメラサーバ100が行うものとして後述する各処理を実行する。   The CPU 200 executes processes using computer programs and data stored in the primary storage device 240, thereby controlling the operation of the entire camera server 100 and executing processes described later as those performed by the camera server 100. To do.

一次記憶装置240は、RAM等のメモリにより構成されている。ROMには、本装置の設定データやブートプログラムなどが格納されている。RAMは、二次記憶装置250からロードされたコンピュータプログラムやデータを一時的に記憶するためのエリアや、後述する各種のI/F(インターフェース)を介して受信した各種のデータを一時的に記憶するためのエリアを有する。また、RAMはCPU200が各種の処理を実行する際に用いるワークエリアも有する。即ち、RAMは各種のエリアを適宜提供することができる。   The primary storage device 240 is configured by a memory such as a RAM. The ROM stores setting data and a boot program for the apparatus. The RAM temporarily stores an area for temporarily storing a computer program and data loaded from the secondary storage device 250 and various data received via various I / Fs (interfaces) described later. Have an area to do. The RAM also has a work area used when the CPU 200 executes various processes. That is, the RAM can provide various areas as appropriate.

二次記憶装置250は、上記ROMやハードディスクドライブ装置などの大容量情報記憶装置である。二次記憶装置250には、OS(オペレーティングシステム)や、カメラサーバ100が行うものとして後述する各処理をCPU200に実行させるためのコンピュータプログラムやデータが保存されている。また、カメラサーバ100が既知の情報として取り扱う情報についてもこの二次記憶装置250に保存されている。二次記憶装置250に保存されているコンピュータプログラムやデータは、CPU200による制御に従って適宜一次記憶装置240にロードされ、CPU200による処理対象となる。二次記憶装置250は、フラッシュメモリやCD−ROMドライブ等の不揮発性を持った記憶装置であっても良い。   The secondary storage device 250 is a large-capacity information storage device such as the ROM or the hard disk drive. The secondary storage device 250 stores an OS (operating system) and computer programs and data for causing the CPU 200 to execute processes described later as those performed by the camera server 100. Information handled as known information by the camera server 100 is also stored in the secondary storage device 250. Computer programs and data stored in the secondary storage device 250 are appropriately loaded into the primary storage device 240 under the control of the CPU 200 and are processed by the CPU 200. The secondary storage device 250 may be a nonvolatile storage device such as a flash memory or a CD-ROM drive.

位置センサ293は、重力センサに代表されるセンサであり、自身の設置方向を計測する。計測した設置方向を示す信号は、位置取得I/F292を介して設置方向データとして一次記憶装置240に送出される。   The position sensor 293 is a sensor represented by a gravity sensor, and measures its own installation direction. A signal indicating the measured installation direction is sent to the primary storage device 240 as installation direction data via the position acquisition I / F 292.

カメラ230は、動画像を撮像するものであり、撮像した動画像(各フレームの画像)は画像キャプチャI/F220を介して撮像画像として一次記憶装置240に送出される。例えば、撮像画像を一旦一次記憶装置240に格納した後、CPU200はこの撮像画像に対して圧縮符号化を施して規定のフォーマットを有する符号化データを生成し、該符号化データを一次記憶装置240に格納する。   The camera 230 captures a moving image, and the captured moving image (image of each frame) is sent to the primary storage device 240 as a captured image via the image capture I / F 220. For example, after the captured image is temporarily stored in the primary storage device 240, the CPU 200 performs compression encoding on the captured image to generate encoded data having a specified format, and the encoded data is stored in the primary storage device 240. To store.

また、カメラ230は、カメラ制御I/F290にも接続されている。CPU200へは、後述するネットワークI/F270を介してクライアント120からカメラ230のズーム、フォーカス、シャッタースピード、露出、露光、ホワイトバランスなどを指定するための制御コマンド(カメラ制御コマンド)が入力される。CPU200は、この入力されたカメラ制御コマンドに従って、ズーム、フォーカス、シャッタースピード、露出、露光、ホワイトバランスなどを制御するための制御信号を生成し、該制御信号をカメラ制御I/F290を介してカメラ230に送出する。これによりカメラ230は、この制御信号に従ってズーム、フォーカス、シャッタースピード、露出、露光、ホワイトバランスなどを変更して撮像を行う。また、カメラ230の状態はこのカメラ制御I/F290を介してCPU200に通知される。   The camera 230 is also connected to the camera control I / F 290. A control command (camera control command) for designating the zoom, focus, shutter speed, exposure, exposure, white balance, and the like of the camera 230 is input from the client 120 to the CPU 200 via a network I / F 270 described later. The CPU 200 generates a control signal for controlling zoom, focus, shutter speed, exposure, exposure, white balance, and the like according to the input camera control command, and sends the control signal to the camera via the camera control I / F 290. 230. As a result, the camera 230 changes the zoom, focus, shutter speed, exposure, exposure, white balance, and the like in accordance with this control signal to perform imaging. Further, the state of the camera 230 is notified to the CPU 200 via the camera control I / F 290.

また、カメラ230は雲台291に固定されており、雲台291は雲台制御I/F260に接続されている。CPU200へは、後述するネットワークI/F270を介してクライアント120から雲台291のパン・チルト・ローテーションを指定するための制御コマンド(雲台制御コマンド)が入力される。CPU200は、この入力された雲台制御コマンドに従って、雲台291の(カメラ230の)パン・チルト・ローテーション等を制御するための制御信号を生成し、該生成した制御信号を雲台制御I/F260を介して雲台291に送出する。雲台291は、この制御信号に従って、雲台291の(カメラ230の)パン・チルト・ローテーション等を変更する。また、雲台291の状態は、この雲台制御I/F260を介してCPU200に通知される。   The camera 230 is fixed to a pan head 291, and the pan head 291 is connected to the pan head control I / F 260. A control command (head control command) for designating pan / tilt / rotation of the camera platform 291 is input from the client 120 to the CPU 200 via the network I / F 270 described later. In accordance with the input pan head control command, the CPU 200 generates a control signal for controlling pan, tilt, rotation, etc. (of the camera 230) of the pan head 291 and uses the generated control signal as a pan head control I / It is sent to the camera platform 291 via F260. The camera platform 291 changes pan, tilt, rotation, etc. (of the camera 230) of the camera platform 291 in accordance with this control signal. Further, the state of the pan head 291 is notified to the CPU 200 via the pan head control I / F 260.

ネットワークI/F270は、カメラサーバ100を上記ネットワーク130に接続するためのものであり、カメラサーバ100はこのネットワークI/F270を介して、クライアント120とのデータ通信を行う。   The network I / F 270 is for connecting the camera server 100 to the network 130, and the camera server 100 performs data communication with the client 120 via the network I / F 270.

次に、カメラサーバ100の二次記憶装置250内に保存されており、且つOSによって管理されている、以下の説明に関連するコンピュータプログラム群について、図3を用いて説明する。   Next, a computer program group related to the following description that is stored in the secondary storage device 250 of the camera server 100 and managed by the OS will be described with reference to FIG.

図3に示す如く、OS300は、撮像処理プログラム310、雲台制御プログラム320、マスク処理プログラム330、配信処理プログラム340、設置方向取得プログラム360、を管理している。これらのプログラムは、CPU200による制御に従って二次記憶装置250から一次記憶装置240にロードされ、CPU200による実行対象となる。以下では各プログラムを実行の主体として説明する場合があるが、実際にはCPU200が対応するプログラムを実行することで対応する処理が実行される。   As shown in FIG. 3, the OS 300 manages an imaging processing program 310, a pan head control program 320, a mask processing program 330, a distribution processing program 340, and an installation direction acquisition program 360. These programs are loaded from the secondary storage device 250 to the primary storage device 240 under the control of the CPU 200 and are executed by the CPU 200. In the following description, each program may be described as an execution subject, but actually, the corresponding processing is executed by the CPU 200 executing the corresponding program.

撮像処理プログラム310は、カメラ230が撮像した撮像画像を画像キャプチャI/F220を介して取得し、該取得した撮像画像を圧縮符号化するなどして一次記憶装置240に格納する。   The imaging processing program 310 acquires a captured image captured by the camera 230 via the image capture I / F 220 and stores the acquired captured image in the primary storage device 240 by performing compression encoding or the like.

雲台制御プログラム320は、ネットワークI/F270を介してクライアント120から受信した雲台制御コマンドに従って制御信号を生成し、該制御信号を雲台291に送出する。また、雲台制御プログラム320は、雲台291の現在のパン・チルト・ローテーションを取得し、該取得したパン・チルト・ローテーションを一次記憶装置240に格納する。   The pan head control program 320 generates a control signal according to a pan head control command received from the client 120 via the network I / F 270, and sends the control signal to the pan head 291. The pan head control program 320 acquires the current pan / tilt / rotation of the pan head 291 and stores the acquired pan / tilt / rotation in the primary storage device 240.

マスク処理プログラム330は、ネットワークI/F270を介してクライアント120から受信したマスク設定指示に応じて、一次記憶装置240に保存されている撮像画像にマスク画像を重畳させて、合成画像を生成する。   The mask processing program 330 generates a composite image by superimposing the mask image on the captured image stored in the primary storage device 240 in accordance with a mask setting instruction received from the client 120 via the network I / F 270.

配信処理プログラム340はネットワークI/F270を介してクライアント120から受信した各種リクエストに応じて、一次記憶装置240や二次記憶装置250に格納されている情報を、ネットワークI/F270を介してクライアント120に配信する。配信する情報には、合成画像や撮像画像、カメラ230の状態や、雲台291のパン・チルト・ローテーション等の情報がある。   In response to various requests received from the client 120 via the network I / F 270, the distribution processing program 340 transmits information stored in the primary storage device 240 and the secondary storage device 250 to the client 120 via the network I / F 270. Deliver to. The information to be distributed includes a composite image, a captured image, the state of the camera 230, and information such as pan / tilt / rotation of the camera platform 291.

設置方向取得プログラム360は、位置取得I/F292を介して位置センサ293から受信した設置方向を一次記憶装置240に格納する。この設置方向は、ネットワークI/F270を介してクライアント120から送出されたものであってもよく、その場合も設置方向取得プログラム360は、この送出された設置方向を一次記憶装置240に格納する。   The installation direction acquisition program 360 stores the installation direction received from the position sensor 293 via the position acquisition I / F 292 in the primary storage device 240. This installation direction may be sent from the client 120 via the network I / F 270. In this case, the installation direction acquisition program 360 also stores this sent installation direction in the primary storage device 240.

CPU200、一次記憶装置240、二次記憶装置250、位置取得I/F292、画像キャプチャI/F220、カメラ制御I/F290、雲台制御I/F260、ネットワークI/F270は何れも、内部バス210に接続されている。   The CPU 200, primary storage device 240, secondary storage device 250, position acquisition I / F 292, image capture I / F 220, camera control I / F 290, pan head control I / F 260, and network I / F 270 are all connected to the internal bus 210. It is connected.

次に、クライアント120のハードウェア構成例について、図4のブロック図を用いて説明する。   Next, a hardware configuration example of the client 120 will be described with reference to the block diagram of FIG.

CPU400は、一次記憶装置430に格納されているコンピュータプログラムやデータを用いて処理を実行することで、クライアント120全体の動作制御を行うと共に、クライアント120が行うものとして後述する各処理を実行する。   The CPU 400 executes processing using computer programs and data stored in the primary storage device 430, thereby controlling the operation of the entire client 120 and executing each processing described later as what the client 120 performs.

一次記憶装置430は、RAM等のメモリにより構成されている。ROMには、本装置の設定データやブートプログラムなどが格納されている。RAMは、二次記憶装置440からロードされたコンピュータプログラムやデータを一時的に記憶するためのエリアや、後述する各種のI/F(インターフェース)を介して受信した各種のデータを一時的に記憶するためのエリアを有する。また、RAMはCPU400が各種の処理を実行する際に用いるワークエリアも有する。即ち、RAMは各種のエリアを適宜提供することができる。   The primary storage device 430 is configured by a memory such as a RAM. The ROM stores setting data and a boot program for the apparatus. The RAM temporarily stores an area for temporarily storing computer programs and data loaded from the secondary storage device 440 and various data received via various I / Fs (interfaces) described later. Have an area to do. The RAM also has a work area used when the CPU 400 executes various processes. That is, the RAM can provide various areas as appropriate.

二次記憶装置440は、上記ROMやハードディスクドライブ装置などの大容量情報記憶装置である。二次記憶装置440には、OS(オペレーティングシステム)や、クライアント120が行うものとして後述する各処理をCPU400に実行させるためのコンピュータプログラムやデータが保存されている。また、クライアント120が既知の情報として取り扱う情報についてもこの二次記憶装置440に保存されている。二次記憶装置440に保存されているコンピュータプログラムやデータは、CPU400による制御に従って適宜一次記憶装置430にロードされ、CPU400による処理対象となる。二次記憶装置440は、フラッシュメモリやCD−ROMドライブ等の不揮発性を持った記憶装置であっても良い。   The secondary storage device 440 is a large-capacity information storage device such as the ROM or the hard disk drive device. The secondary storage device 440 stores an OS (operating system) and computer programs and data for causing the CPU 400 to execute processes described later as performed by the client 120. Information that the client 120 handles as known information is also stored in the secondary storage device 440. Computer programs and data stored in the secondary storage device 440 are appropriately loaded into the primary storage device 430 under the control of the CPU 400 and are processed by the CPU 400. The secondary storage device 440 may be a nonvolatile storage device such as a flash memory or a CD-ROM drive.

入力機器480は、キーボードやマウスなどのユーザインターフェースにより構成されており、本装置のユーザが操作することで、各種の指示をCPU400に対して入力することができる。この各種の指示は、ユーザ入力I/F420を介してCPU400に通知される。   The input device 480 is configured by a user interface such as a keyboard and a mouse, and various instructions can be input to the CPU 400 by the user of the apparatus. These various instructions are notified to the CPU 400 via the user input I / F 420.

出力機器490は、ユーザ出力I/F450に接続されており、CRTや液晶画面などの表示装置である。出力機器490は、CPU400による処理結果や、ネットワークI/F460を介してカメラサーバ100から受信した画像や情報を、表示することができる。なお、出力機器490は表示装置に限るものではなく、他の種別の出力装置であっても構わない。   The output device 490 is connected to the user output I / F 450 and is a display device such as a CRT or a liquid crystal screen. The output device 490 can display the processing result by the CPU 400 and the image and information received from the camera server 100 via the network I / F 460. The output device 490 is not limited to a display device, and may be another type of output device.

ネットワークI/F460は、クライアント120を上記ネットワーク130に接続するためのものであり、クライアント120はこのネットワークI/F460を介して、カメラサーバ100とのデータ通信を行う。   The network I / F 460 is for connecting the client 120 to the network 130, and the client 120 performs data communication with the camera server 100 via the network I / F 460.

CPU400、一次記憶装置430、二次記憶装置440、ユーザ入力I/F420、ユーザ出力I/F450、ネットワークI/F460は何れも、内部バス410に接続されている。   The CPU 400, primary storage device 430, secondary storage device 440, user input I / F 420, user output I / F 450, and network I / F 460 are all connected to the internal bus 410.

次に、クライアント120の二次記憶装置440内に保存されており、且つOSによって管理されている、以下の説明に関連するコンピュータプログラム群について、図5を用いて説明する。   Next, a computer program group related to the following description stored in the secondary storage device 440 of the client 120 and managed by the OS will be described with reference to FIG.

図5に示す如く、OS500は、入力処理プログラム550、表示処理プログラム510、通信処理プログラム520、画像処理プログラム530、を管理している。これらのプログラムは、CPU400による制御に従って二次記憶装置440から一次記憶装置430にロードされ、CPU400による実行対象となる。以下では各プログラムを実行の主体として説明する場合があるが、実際にはCPU400が対応するプログラムを実行することで対応する処理が実行される。   As shown in FIG. 5, the OS 500 manages an input processing program 550, a display processing program 510, a communication processing program 520, and an image processing program 530. These programs are loaded from the secondary storage device 440 to the primary storage device 430 under the control of the CPU 400 and are executed by the CPU 400. In the following description, each program may be described as an execution subject, but actually, the corresponding processing is executed by the CPU 400 executing the corresponding program.

入力処理プログラム550は、入力機器480に対するユーザ操作を検知し、該検知した操作に応じて各種のコマンドを生成し、該生成したコマンドをネットワークI/F460を介してカメラサーバ100に送信する。このコマンドには、上記のカメラ制御コマンドや雲台制御コマンド、撮像画像中にマスク画像を設定するコマンド(マスク設定指示)が含まれる。   The input processing program 550 detects a user operation on the input device 480, generates various commands according to the detected operation, and transmits the generated commands to the camera server 100 via the network I / F 460. This command includes the camera control command, the pan head control command, and a command (mask setting instruction) for setting a mask image in the captured image.

なお、入力処理プログラム550は、入力機器480以外にも、例えば、ネットワークを介した外部の装置からの入力操作や、コンピュータプログラムの実行処理結果を操作入力して受け付けるようにしても構わない。   In addition to the input device 480, for example, the input processing program 550 may receive an input operation from an external device via a network or an execution processing result of a computer program.

表示処理プログラム510は、一時記憶部540に格納されている画像や、各方向ガイドなどを出力機器490に表示させる。   The display processing program 510 causes the output device 490 to display an image stored in the temporary storage unit 540, each direction guide, and the like.

通信処理プログラム520は、カメラサーバ100から撮像画像や合成画像、雲台291(カメラ230)の現在のパン・チルト・ローテーション、カメラ230の現在のズーム、フォーカス、シャッタースピード、露出、露光、ホワイトバランス等を受信する。この受信した各種の情報は一次記憶装置430に格納される。   The communication processing program 520 is a captured image or composite image from the camera server 100, current pan / tilt / rotation of the camera platform 291 (camera 230), current zoom, focus, shutter speed, exposure, exposure, white balance of the camera 230. Etc. The received various information is stored in the primary storage device 430.

画像処理プログラム530は、カメラサーバ100から受信した画像に対して各種の画像処理(色処理や伸張処理など)を行ったりする。   The image processing program 530 performs various types of image processing (color processing, expansion processing, etc.) on the image received from the camera server 100.

次に、クライアント120側でマスク設定を行う場合の処理について説明する。クライアント120のユーザは入力機器480を操作してカメラサーバ100を選択すると、CPU400は、カメラサーバ100に動画像の送信要求を送信する。カメラサーバ100のCPU200はこの送信要求に応じて、符号化した各フレームの撮像画像をネットワークI/F270を介してクライアント120に送信する。この各フレームの撮像画像はネットワークI/F460を介して一次記憶装置430に格納され、CPU200により伸張されて、出力機器490に表示される。   Next, processing when mask setting is performed on the client 120 side will be described. When the user of the client 120 operates the input device 480 and selects the camera server 100, the CPU 400 transmits a moving image transmission request to the camera server 100. In response to this transmission request, the CPU 200 of the camera server 100 transmits the captured image of each encoded frame to the client 120 via the network I / F 270. The captured image of each frame is stored in the primary storage device 430 via the network I / F 460, decompressed by the CPU 200, and displayed on the output device 490.

クライアント120のユーザはこの表示された撮像画像を観察し、該撮像画像上でマスクしたい領域を入力機器480を操作して指定する。ここで、出力機器490の画面上に図6(a)に示されているような撮像画像が表示されている状態で、ユーザが入力機器480を操作してマスク対象領域として、窓の部分の領域600を指定したとする。   The user of the client 120 observes the displayed captured image and operates the input device 480 to specify an area to be masked on the captured image. Here, in a state where the captured image as shown in FIG. 6A is displayed on the screen of the output device 490, the user operates the input device 480 to set the mask portion as a mask target area. Assume that the area 600 is designated.

ここで、マスク対象領域と同サイズのマスク画像をこのマスク対象領域に重畳させる場合、以降の各フレームでは、このようにユーザが指定した位置(重畳させる画像の中心位置)にマスク対象領域と同サイズのマスク画像を重畳させることになる。図6(a)の場合、各フレームの撮像画像において領域600と同位置に領域600と同サイズのマスク画像を重畳させることになる。その後、ユーザは入力機器480を操作して、カメラ230の撮像方向(パン・チルト・ローテーション)を指定すると、指定した撮像方向は雲台制御コマンドとしてネットワークI/F460を介してカメラサーバ100に送信される。カメラサーバ100のCPU200はこの雲台制御コマンドをネットワークI/F270を介して受信すると、該雲台制御コマンドに従って雲台291を制御し、カメラ230をユーザが指定した撮像方向に向けさせる。ここで、上記のマスク設定後、撮像方向を様々な方向に変更した後、再び図6(a)と同じ撮像方向を指定したとする。しかし、カメラ230の撮像方向を変更して任意の方向(パン角やチルト角やヨー角)で停止させる場合、後述するように、その停止位置(撮像方向)には誤差が含まれる。従って、図6(a)と同じ撮像方向を指定しても、この撮像方向と全く同じ撮像方向にカメラ230を向けることは難しい。   Here, when a mask image having the same size as the mask target area is superimposed on the mask target area, in each subsequent frame, the position specified by the user (the center position of the image to be superimposed) is the same as the mask target area. A mask image having a size is superimposed. In the case of FIG. 6A, a mask image having the same size as the region 600 is superimposed at the same position as the region 600 in the captured image of each frame. After that, when the user operates the input device 480 and designates the imaging direction (pan / tilt / rotation) of the camera 230, the designated imaging direction is transmitted to the camera server 100 via the network I / F 460 as a pan head control command. Is done. When receiving the pan head control command via the network I / F 270, the CPU 200 of the camera server 100 controls the pan head 291 according to the pan head control command, and directs the camera 230 in the imaging direction designated by the user. Here, after the above mask setting, after changing the imaging direction to various directions, it is assumed that the same imaging direction as in FIG. However, when the imaging direction of the camera 230 is changed to stop in an arbitrary direction (pan angle, tilt angle, or yaw angle), as described later, the stop position (imaging direction) includes an error. Therefore, even if the same imaging direction as in FIG. 6A is designated, it is difficult to point the camera 230 in the same imaging direction as this imaging direction.

上記のマスク設定後、撮像方向を様々な方向に変更した後、再び図6(a)と同じ撮像方向を指定してカメラ230の撮像方向を変更した後に該カメラ230により撮像される撮像画像が図6(b)に示したような撮像画像であるとする。710は、マスク設定処理でユーザが指定したマスク位置(重畳させるマスク画像の中心位置)に重畳させたマスク画像である。このように、マスク設定処理でユーザが指定したマスク位置と、窓の部分の領域600とにはずれが生じ、マスクしたい領域の一部がマスクされずに表示されてしまう。   After the above mask setting, after changing the imaging direction to various directions, the captured image captured by the camera 230 is changed after the same imaging direction as in FIG. Assume that the captured image is as shown in FIG. Reference numeral 710 denotes a mask image superimposed on the mask position designated by the user in the mask setting process (the center position of the mask image to be superimposed). As described above, the mask position specified by the user in the mask setting process is shifted from the window area 600, and a part of the area to be masked is displayed without being masked.

本実施形態では、マスク設定時に上記誤差を鑑みてマスク画像のサイズを決定して、より確実にマスク対象領域をマスクする。そのためにカメラサーバ100が行う処理について、同処理のフローチャートを示す図7を用いて説明する。図7のフローチャートに従った処理は、クライアント120からマスク設定指示をネットワークI/F270を介して受信したことをCPU200が検知した場合に実行される。   In the present embodiment, the size of the mask image is determined in consideration of the above error at the time of mask setting, and the mask target area is more reliably masked. A process performed by the camera server 100 for this purpose will be described with reference to FIG. 7 showing a flowchart of the process. The process according to the flowchart of FIG. 7 is executed when the CPU 200 detects that a mask setting instruction has been received from the client 120 via the network I / F 270.

なお、マスク設定指示には、撮像画像上のマスク対象領域を特定するための情報が含まれており、例えば、マスク対象領域の左上隅の座標位置及び右下隅の座標位置が含まれる。代わりに、マスク対象領域の左上隅の座標位置、マスク対象領域の水平サイズ及び垂直サイズ、が含まれるようにしても構わない。   The mask setting instruction includes information for specifying the mask target area on the captured image, and includes, for example, the coordinate position of the upper left corner and the coordinate position of the lower right corner of the mask target area. Instead, the coordinate position of the upper left corner of the mask target area and the horizontal size and vertical size of the mask target area may be included.

ステップS810ではCPU200は、マスク対象領域の左端をカメラ230の視野の左端、マスク対象領域の右端をカメラ230の視野の右端、とした場合の該カメラ230の視野の水平方向の画角をマスク画像水平角として求める。カメラ230の水平画角は撮像画像の水平画像サイズに対するものである。然るに、マスク画像水平角は、例えば、マスク対象領域の水平画像サイズ(マスク設定指示に含まれている情報から算出可能)と撮像画像の水平画像サイズとの比とカメラ230の水平画角との積から算出可能である。   In step S810, the CPU 200 sets the horizontal angle of view of the field of view of the camera 230 when the left end of the mask target area is the left end of the field of view of the camera 230 and the right end of the mask target area is the right end of the field of view of the camera 230. Calculate as the horizontal angle. The horizontal angle of view of the camera 230 is relative to the horizontal image size of the captured image. However, the mask image horizontal angle is, for example, the ratio between the horizontal image size of the mask target area (which can be calculated from the information included in the mask setting instruction) and the horizontal image size of the captured image and the horizontal angle of view of the camera 230. It can be calculated from the product.

現在のカメラ230の水平画角は、雲台制御I/F260を介して雲台291に問い合わせればよい。もちろん、クライアント120がマスク設定時にカメラサーバ100に問い合わせて取得したカメラ230の水平画角をマスク設定指示に含めてカメラサーバ100に送信し、該マスク設定指示から該水平画角を取得するようにしても構わない。このように、現在のカメラ230の水平画角の取得方法は、特定の方法に限るものではない。   The current horizontal angle of view of the camera 230 may be inquired of the camera platform 291 via the camera platform control I / F 260. Of course, the horizontal angle of view of the camera 230 acquired by the client 120 inquiring of the camera server 100 when setting the mask is included in the mask setting instruction and transmitted to the camera server 100, and the horizontal angle of view is acquired from the mask setting instruction. It doesn't matter. Thus, the current method for obtaining the horizontal angle of view of the camera 230 is not limited to a specific method.

またCPU200は同様にして、マスク対象領域の上端をカメラ230の視野の上端、マスク対象領域の下端をカメラ230の視野の下端、とした場合のカメラ230の視野の垂直方向の画角をマスク画像垂直角として求める。   Similarly, the CPU 200 sets the vertical field angle of the field of view of the camera 230 when the upper end of the mask target area is the upper end of the field of view of the camera 230 and the lower end of the mask target area is the lower end of the field of view of the camera 230. Calculate as the vertical angle.

ステップS820,S830ではそれぞれ、CPU200は、マスク画像水平角、マスク画像垂直角、を補正して、最終的なマスク画像水平角、マスク画像垂直角を決定する。ステップS820,S830の順番はこれに限るものではなく、ステップS830,S820の順に行っても構わない。ステップS820,S830にて行う処理は、図8を用いて後述する。   In steps S820 and S830, the CPU 200 corrects the mask image horizontal angle and the mask image vertical angle, and determines the final mask image horizontal angle and mask image vertical angle. The order of steps S820 and S830 is not limited to this, and the order of steps S830 and S820 may be performed. The processing performed in steps S820 and S830 will be described later with reference to FIG.

ステップS840では、CPU200は、一次記憶装置240に格納した撮像画像において、マスク設定指示に含まれているマスク対象領域の位置にマスク画像を重畳させた合成画像を生成する。このマスク画像のサイズは、ステップS820及びステップS830による処理に基づいて確定したサイズである。そしてCPU200は、この合成画像を圧縮符号化して、ネットワークI/F270を介してクライアント120に対して送信する。この合成画像は、ネットワークI/F460を介してクライアント120の一次記憶装置430に格納された後、伸張されて出力機器490に表示される。   In step S840, CPU 200 generates a composite image in which the mask image is superimposed on the position of the mask target area included in the mask setting instruction in the captured image stored in primary storage device 240. The size of this mask image is a size determined based on the processing in step S820 and step S830. Then, the CPU 200 compresses and encodes this composite image and transmits it to the client 120 via the network I / F 270. The composite image is stored in the primary storage device 430 of the client 120 via the network I / F 460 and then decompressed and displayed on the output device 490.

次に、ステップS820,S830にて行う処理について説明する。マスク画像水平角を補正する処理と、マスク画像垂直角を補正する処理は、方向が異なるだけで基本的には同じ処理である。然るに、以下ではマスク画像水平角を補正する処理を例にとり説明する。即ち、マスク画像垂直角を補正する場合には、以下の説明における「水平」を「垂直」と読み替えればよい。   Next, processing performed in steps S820 and S830 will be described. The process of correcting the mask image horizontal angle and the process of correcting the mask image vertical angle are basically the same process except for the direction. However, in the following, a process for correcting the mask image horizontal angle will be described as an example. That is, when correcting the mask image vertical angle, “horizontal” in the following description may be read as “vertical”.

ステップS910ではCPU200は、予め二次記憶装置250に格納されている、カメラ230の水平画角ごとに、該水平画角に対する誤差量に基づく値(画角誤差)、が登録されたテーブル(メカ誤差テーブル)を一次記憶装置240にロードする。   In step S <b> 910, the CPU 200 stores a table (mechanism error), which is stored in advance in the secondary storage device 250, for each horizontal field angle of the camera 230, a value (view angle error) based on the error amount with respect to the horizontal field angle. Error table) is loaded into the primary storage device 240.

メカ誤差テーブルは水平方向および垂直方向で独立のものであり、メカの特性によりさまざまである。上記の誤差を生じる原因としては、ギアの公差によるバックラッシュや、カメラヘッドへ制御命令を送信するハーネスにかかる張力、またチルト制御をするために設けられたベースプレートの傾、またカメラヘッドにかかる重力などがあげられる。メカ誤差テーブルは、設計の段階でメカの耐久性性能や誤差を求める段階で求めてもよい。その際はある程度の台数で誤差をもとめ、その平均値を使用してもよい。さらに、平均値だけでは補正しきれない機体固有の誤差も発生する。その場合は、カメラサーバの製造後に機体固有の誤差を求め、平均値から補正してもよい。また、カメラヘッドにかかる重力により誤差が変化するため、カメラサーバの設置方向に誤差が依存することになる。カメラの設置が正立の場合は垂直方向の下向き方向の誤差が大きく、倒立の場合は正立の垂直方向の逆方向に誤差が大きくなるようなメカ誤差テーブルにしても良い。   The mechanical error table is independent in the horizontal and vertical directions, and varies depending on the mechanical characteristics. The causes of the above errors include backlash due to gear tolerance, tension applied to the harness that sends control commands to the camera head, tilt of the base plate provided for tilt control, and gravity applied to the camera head. Etc. The mechanical error table may be obtained at the stage of obtaining the durability performance and error of the mechanical at the design stage. In that case, an error may be obtained with a certain number of units and the average value may be used. In addition, an error specific to the aircraft that cannot be corrected by the average value alone also occurs. In that case, an error specific to the machine body may be obtained after the camera server is manufactured and corrected from the average value. Further, since the error changes due to gravity applied to the camera head, the error depends on the installation direction of the camera server. A mechanical error table may be used in which the error in the downward direction in the vertical direction is large when the camera is upright, and the error is large in the reverse direction of the vertical direction in the vertical direction when the camera is upside down.

誤差の平均値を使用する場合であっても、該平均値を補正した値を使用する場合であっても、この値に規定の値を加えた値を、上記画角誤差としてメカ誤差テーブルに登録する。例えば、メカ誤差テーブルには、水平画角x1に対する画角誤差として8%、水平画角x2に対する画角誤差として9%、が登録されている。   Regardless of whether the average value of the error is used or a value obtained by correcting the average value is used, a value obtained by adding a specified value to this value is added to the mechanical error table as the angle of view error. sign up. For example, in the mechanical error table, 8% as an angle of view error for the horizontal angle of view x1 and 9% as an angle of view error for the horizontal angle of view x2 are registered.

ステップS920では、CPU200は、現在のカメラ230の水平画角に対応する画角誤差をメカ誤差テーブルから取得する。現在のカメラ230の水平画角に対応する画角誤差がメカ誤差テーブルに登録されていない場合には、現在のカメラ230の水平画角の近傍の複数の水平画角に対応する画角誤差から補間により求めても良い。   In step S <b> 920, the CPU 200 acquires a field angle error corresponding to the current horizontal field angle of the camera 230 from the mechanical error table. If an angle-of-view error corresponding to the horizontal angle of view of the current camera 230 is not registered in the mechanical error table, the angle-of-view error corresponding to a plurality of horizontal angles of view near the horizontal angle of view of the current camera 230 is used. You may obtain | require by interpolation.

なお、取得した画角誤差が規定量以下であるなど、比較的小さい値である場合には、CPU200は、ステップS810で取得したマスク画像水平角を最終的なマスク画像水平角として出力し、ステップS930を介してステップS840に進む。一方、取得した画角誤差が規定量よりも大きいなど、比較的大きい値である場合には、ステップS930を介してステップS940に進む。   If the acquired angle of view error is a relatively small value such as a predetermined amount or less, the CPU 200 outputs the mask image horizontal angle acquired in step S810 as the final mask image horizontal angle, The process proceeds to step S840 via S930. On the other hand, if the acquired angle-of-view error is a relatively large value, such as greater than a specified amount, the process proceeds to step S940 via step S930.

ステップS940では、CPU200は、マスク画像水平角に、ステップS920で取得した画角誤差に基づく値を加えた画角を、最終的なマスク画像水平角(補正画角)として求める。例えば、ステップS920で取得した画角誤差が8%であった場合、(マスク画像水平角+マスク画像水平角×8/100)を最終的なマスク画像水平角として求める。もちろん、マスク画像水平角を、ステップS920で取得した画角誤差に基づく値でより大きい画角に変更する方法は、この方法に限るものではないし、画角誤差としてどのような数値を用いるのかによっては他の方法も考え得る。なお、マスク画像水平角、マスク画像垂直角の両方を補正することに限るものではなく、場合によっては何れか一方のみを補正するようにしても構わない。   In step S940, the CPU 200 obtains a field angle obtained by adding a value based on the field angle error acquired in step S920 to the mask image horizontal angle as a final mask image horizontal angle (corrected field angle). For example, if the field angle error acquired in step S920 is 8%, (mask image horizontal angle + mask image horizontal angle × 8/100) is obtained as the final mask image horizontal angle. Of course, the method of changing the mask image horizontal angle to a larger angle of view with a value based on the angle of view error acquired in step S920 is not limited to this method, and depends on what value is used as the angle of view error. Other methods are possible. Note that the present invention is not limited to correcting both the mask image horizontal angle and the mask image vertical angle, and only one of them may be corrected in some cases.

ステップS840では、最終的なマスク画像水平角に対応する水平方向サイズ(画素数)を求める。これは、マスク画像水平角を求めるための上記処理と逆の処理によって幾何的に求めることができる。これは垂直方向についても同様である。   In step S840, a horizontal size (number of pixels) corresponding to the final mask image horizontal angle is obtained. This can be obtained geometrically by a process reverse to the above process for obtaining the mask image horizontal angle. The same applies to the vertical direction.

そしてこのようにして水平方向サイズ及び垂直方向サイズが決定したマスク画像は、マスク対象領域のサイズよりも大きなサイズを有することになる。そしてこのようなマスク画像を、ユーザにより指定された位置に重畳させることで、結果として、マスク対象領域を覆うようにしてマスク画像を重畳させることになり、漏れなくマスク対象領域をマスクすることができる。   The mask image whose horizontal size and vertical size are thus determined has a size larger than the size of the mask target area. Then, by superimposing such a mask image on the position specified by the user, as a result, the mask image is superimposed so as to cover the mask target region, and the mask target region can be masked without omission. it can.

上記のように、マスク対象領域と同サイズのマスク画像をマスク対象領域に重畳させるような場合は、図6(b)に示す如く、マスク設定処理でユーザが指定したマスク位置と窓の部分の領域600とにはずれが生じていた。しかし、本実施形態のように、現在のカメラ画角に応じた画角誤差に基づいてサイズを拡大したマスク画像を用いることで、図9(a)に示す如く、マスク画像710よりも大きいマスク画像1000を重畳表示することができる。これにより、マスクしたい領域を漏れなくマスクすることができる。   As described above, when a mask image having the same size as the mask target area is superimposed on the mask target area, as shown in FIG. 6B, the mask position and window portion specified by the user in the mask setting process are displayed. There was a deviation from the region 600. However, a mask larger than the mask image 710 is used as shown in FIG. 9A by using a mask image whose size is enlarged based on the angle-of-view error corresponding to the current camera angle of view as in this embodiment. The image 1000 can be displayed in a superimposed manner. Thereby, it is possible to mask the region to be masked without omission.

なお、上記で説明したカメラサーバの構成は、以下に説明する基本構成の一例に過ぎない。基本構成に係るカメラサーバは、撮像装置により撮像された画像をクライアント端末装置に配信するカメラサーバ装置である。このようなカメラサーバ装置は、画像上の指定領域をマスクする指示をクライアント端末装置から受信すると、撮像装置の現在の画角に対応する増分量だけ指定領域を拡大した拡大指定領域のサイズを求める(計算)。そして、画像上の指定領域を覆うように、上記サイズを有するマスク画像を重ねた画像を合成画像として生成し、該生成した合成画像をクライアント端末装置に対して送信する。   The configuration of the camera server described above is merely an example of a basic configuration described below. The camera server according to the basic configuration is a camera server device that distributes an image captured by an imaging device to a client terminal device. When such an instruction to mask the designated area on the image is received from the client terminal device, such a camera server device obtains the size of the enlarged designated area obtained by enlarging the designated area by an increment corresponding to the current angle of view of the imaging device. (Calculation). Then, an image in which the mask images having the above sizes are overlapped so as to cover the designated area on the image is generated as a composite image, and the generated composite image is transmitted to the client terminal device.

[第2の実施形態]
以下に、第2の実施形態について説明する。なお、以下では、第1の実施形態との相違点のみについて説明し、以下で特に触れない限りは、第1の実施形態と同様であるとする。
[Second Embodiment]
The second embodiment will be described below. In the following description, only differences from the first embodiment will be described, and unless otherwise noted, the same as the first embodiment.

本実施形態において、カメラサーバ100が合成画像を配信する為に行う処理について、同処理のフローチャートを示す図10を用いて説明する。ステップS1110,S1120,S1130はそれぞれ、上記のステップS810,S820,S830と同様であるため、これらのステップに係る説明は省略する。ステップS1140では、CPU200は、ステップS1120,S1130で求めたマスク画像水平角、マスク画像垂直角を一次記憶装置240に格納する。   In the present embodiment, a process performed by the camera server 100 for distributing a composite image will be described with reference to FIG. 10 showing a flowchart of the process. Steps S1110, S1120, and S1130 are the same as steps S810, S820, and S830, respectively, and a description thereof will be omitted. In step S1140, the CPU 200 stores the mask image horizontal angle and mask image vertical angle obtained in steps S1120 and S1130 in the primary storage device 240.

ステップS1150では、CPU200は、マスク対象領域と同サイズのマスク画像を、ユーザにより指定された位置に重畳させた合成画像を生成する。そしてCPU200は、この合成画像を圧縮符号化し、ステップS1120,S1130で求めたマスク画像水平角、マスク画像垂直角と共に、ネットワークI/F270を介してクライアント120に対して送信する。   In step S1150, the CPU 200 generates a composite image in which a mask image having the same size as the mask target region is superimposed on a position specified by the user. Then, the CPU 200 compresses and encodes this composite image, and transmits it to the client 120 via the network I / F 270 together with the mask image horizontal angle and the mask image vertical angle obtained in steps S1120 and S1130.

カメラサーバ100から上記合成画像、ステップS1120,S1130で求めたマスク画像水平角、マスク画像垂直角を受信した場合にクライアント120が行う処理について、同処理のフローチャートを示す図11(a)を用いて説明する。   The processing performed by the client 120 when receiving the composite image, the mask image horizontal angle and the mask image vertical angle obtained in steps S1120 and S1130 from the camera server 100 will be described with reference to FIG. explain.

先ずCPU400は、ネットワークI/F460を介して上記合成画像、ステップS1120,S1130で求めたマスク画像水平角、マスク画像垂直角を受信すると、これらを一次記憶装置430に格納する。   First, when the CPU 400 receives the composite image, the mask image horizontal angle and the mask image vertical angle obtained in steps S1120 and S1130 via the network I / F 460, the CPU 400 stores them in the primary storage device 430.

ステップS1201でCPU400は、マスク対象領域のマスク画像垂直角とステップS1120で求めたマスク画像水平角とが同じ且つマスク対象領域のマスク画像垂直角とステップS1130で求めたマスク画像垂直角とが同じであるか否かを判断する。   In step S1201, the CPU 400 has the same mask image vertical angle in the mask target area and the mask image horizontal angle obtained in step S1120, and the mask image vertical angle in the mask target area and the mask image vertical angle obtained in step S1130 are the same. Judge whether there is.

この判断の結果、何れも同じである場合には、マスク画像水平角及びマスク画像垂直角の補正はなされていないと判断し、図11(a)の処理は完了する。一方、何れかが異なる場合には補正がなされていると判断し、処理はステップS1202に進む。   If both are the same as a result of this determination, it is determined that the mask image horizontal angle and the mask image vertical angle are not corrected, and the processing of FIG. 11A is completed. On the other hand, if any of them is different, it is determined that correction has been made, and the process proceeds to step S1202.

ステップS1202でCPU400は、ステップS1120,S1130で求めたマスク画像水平角及びマスク画像垂直角から上記のように決定する水平サイズ及び垂直サイズを有する枠を、合成画像上のユーザにより指定された位置に重畳させる。枠の表示方法は特定の表示方法に限るものではない。枠の代わりに、枠の内側を半透明に塗りつぶした矩形を表示しても構わない。そしてCPU400は、このような合成画像を出力機器490に表示させる。   In step S1202, the CPU 400 places the frame having the horizontal size and the vertical size determined as described above from the mask image horizontal angle and the mask image vertical angle obtained in steps S1120 and S1130 at the position specified by the user on the composite image. Superimpose. The display method of the frame is not limited to a specific display method. Instead of the frame, a rectangle in which the inside of the frame is semi-transparent may be displayed. Then, the CPU 400 causes the output device 490 to display such a composite image.

カメラサーバ側でマスクの重畳に補正画角でなく補正前の画角(マスク画像水平角、マスク画像垂直角)を用い、クライアント側でガイドラインを表示するのには以下の理由がある。ユーザは設定時において、パン・チルト制御を行わないためマスク対象領域にずれは生じない。また、ユーザの見せたくないといった意思表示でもあるため、確実にカメラサーバ側でマスクを設定することで、配信途中に盗聴などによりマスク領域を第三者に閲覧されることを防止できる。一方でガイドライン部は必ずしもユーザはマスク設定されることを望んでいるとは限らない。カメラサーバ側で重畳してしまうと、マスクが重畳されていない画像を出力するためには再度サーバから画像受信を行わなければならないが、クライアント側で重畳すればカメラサーバとの通信無しでガイドライン部のマスク有無を後で選択できるメリットがある。   There are the following reasons for using the pre-correction angle of view (mask image horizontal angle, mask image vertical angle) for mask superposition on the camera server side and displaying the guideline on the client side. Since the user does not perform pan / tilt control at the time of setting, there is no shift in the mask target area. In addition, since it is also a display of intention that the user does not want to show, it is possible to prevent the mask area from being viewed by a third party due to eavesdropping or the like during distribution by reliably setting the mask on the camera server side. On the other hand, the guideline part does not necessarily want the user to set the mask. If the image is superimposed on the camera server side, the image must be received from the server again to output an image on which the mask is not superimposed. However, if the image is superimposed on the client side, there is no communication with the camera server. There is an advantage that the presence or absence of the mask can be selected later.

クライアント120の出力機器490における合成画像の表示例を図9(b)に示す。領域600と同サイズのマスク画像710がユーザにより指定された位置に表示されていると共に、同位置に、補正画角に基づくサイズの枠1320が表示されている。この枠1320が、ずれる可能性がある範囲を示すガイドラインである。   A display example of the composite image on the output device 490 of the client 120 is shown in FIG. A mask image 710 having the same size as that of the region 600 is displayed at a position designated by the user, and a frame 1320 having a size based on the correction angle of view is displayed at the same position. This frame 1320 is a guideline indicating a range in which there is a possibility of deviation.

[第3の実施形態]
本実施形態では、カメラサーバ100の動作は第2の実施形態と同様であるが、クライアント120の動作が第2の実施形態とは異なる。本実施形態に係るクライアント120がカメラサーバ100から上記合成画像、ステップS1120,S1130で求めたマスク画像水平角、マスク画像垂直角を受信した場合に行う処理について、同処理のフローチャートを示す図11(b)を用いて説明する。
[Third Embodiment]
In this embodiment, the operation of the camera server 100 is the same as that of the second embodiment, but the operation of the client 120 is different from that of the second embodiment. FIG. 11 is a flowchart illustrating the processing performed when the client 120 according to the present embodiment receives the composite image, the mask image horizontal angle and the mask image vertical angle obtained in steps S1120 and S1130 from the camera server 100. This will be described with reference to b).

先ずCPU400は、ネットワークI/F460を介して上記合成画像、ステップS1120,S1130で求めたマスク画像水平角、マスク画像垂直角を受信すると、これらを一次記憶装置430に格納する。   First, when the CPU 400 receives the composite image, the mask image horizontal angle and the mask image vertical angle obtained in steps S1120 and S1130 via the network I / F 460, the CPU 400 stores them in the primary storage device 430.

ステップS1410でCPU400は、マスク対象領域のマスク画像垂直角とステップS1120で求めたマスク画像水平角とが同じ且つマスク対象領域のマスク画像垂直角とステップS1130で求めたマスク画像垂直角とが同じであるか否かを判断する。   In step S1410, the CPU 400 has the same mask image vertical angle in the mask target area as the mask image horizontal angle obtained in step S1120, and the mask image vertical angle in the mask target area and the mask image vertical angle obtained in step S1130 are the same. Judge whether there is.

この判断の結果、何れも同じである場合には、マスク画像水平角及びマスク画像垂直角の補正はなされていないと判断し、図11(b)の処理は完了する。一方、何れかが異なる場合には補正がなされていると判断し、処理はステップS1420に進む。   If both are the same as a result of this determination, it is determined that the mask image horizontal angle and the mask image vertical angle are not corrected, and the processing of FIG. 11B is completed. On the other hand, if either is different, it is determined that correction has been made, and the process proceeds to step S1420.

ステップS1420でCPU400は、二次記憶装置440から警告パネルの画像を読み出し、該読み出した警告パネルの画像を上記合成画像上に重畳させる。そしてCPU400は、このような合成画像を出力機器490に表示させる。   In step S1420, CPU 400 reads the warning panel image from secondary storage device 440, and superimposes the read warning panel image on the composite image. Then, the CPU 400 causes the output device 490 to display such a composite image.

クライアント120の出力機器490における合成画像の表示例を図9(c)に示す。領域600と同サイズのマスク画像710がユーザにより指定された位置に表示されていると共に、マスク画像がずれる可能性があることを示す警告パネルの画像1510が重畳表示されている。   A display example of the composite image on the output device 490 of the client 120 is shown in FIG. A mask image 710 having the same size as that of the region 600 is displayed at a position designated by the user, and a warning panel image 1510 indicating that the mask image may be shifted is displayed in a superimposed manner.

[第4の実施形態]
本実施形態では、設置方向に応じて補正レベルを切り替える。本実施形態では、上記ステップS830における処理、即ち、マスク画像垂直角を補正して最終的なマスク画像垂直角を求める処理が、第1の実施形態とは異なる。
[Fourth Embodiment]
In the present embodiment, the correction level is switched according to the installation direction. In the present embodiment, the processing in step S830 described above, that is, the processing for correcting the mask image vertical angle to obtain the final mask image vertical angle is different from that in the first embodiment.

カメラサーバ100の外観例を図12に示す。1600は正立に設置されたカメラサーバで、カメラヘッド1610は支持腕1660と連結されており、雲台制御プログラム320によって垂直方向にチルト制御される。支持腕1660はベースプレート1620と接続しており、雲台制御プログラム320によりチルト制御される。カメラヘッド1610はチルト制御することにより点線1630で示す方向(A方向)と点線1640で示す方向(B方向)との間で撮像方向が制御される。正立の場合、重力の影響により、メカ誤差はA方向に近づくにつれてより大きくなる傾向にある。設置方向が倒立の場合のカメラサーバの外観が1650である。倒立の場合、重力の影響によりB方向に近づくにつれてメカ誤差がより大きくなる。   An appearance example of the camera server 100 is shown in FIG. Reference numeral 1600 denotes an upright camera server. The camera head 1610 is connected to a support arm 1660, and is tilt-controlled in the vertical direction by a pan head control program 320. The support arm 1660 is connected to the base plate 1620 and is tilt-controlled by the pan head control program 320. The camera head 1610 controls the imaging direction between the direction indicated by the dotted line 1630 (direction A) and the direction indicated by the dotted line 1640 (direction B) by performing tilt control. In the case of erecting, the mechanical error tends to become larger as it approaches the A direction due to the influence of gravity. The external appearance of the camera server when the installation direction is inverted is 1650. In the case of inversion, the mechanical error becomes larger as it approaches the B direction due to the influence of gravity.

ステップS830で行う、設置方向に応じて補正レベルを切り替えて最終的なマスク画像垂直角を求める処理について、同処理のフローチャートを示す図13を用いて説明する。   The process of switching the correction level according to the installation direction and obtaining the final mask image vertical angle performed in step S830 will be described with reference to FIG. 13 showing a flowchart of the process.

ステップS1720では、CPU200は、位置センサ293が計測し、位置取得I/F292を介して一次記憶装置240に格納されている最新の設置方向を参照し、該設置方向が正立を示しているか否かを判断する(規定の誤差を含んでいても良い)。この判断の結果、正立を示している場合には、処理はステップS1730に進み、正立を示していない(倒立を示している)場合には、処理はステップS1740に進む。   In step S1720, the CPU 200 refers to the latest installation direction measured by the position sensor 293 and stored in the primary storage device 240 via the position acquisition I / F 292, and whether or not the installation direction indicates upright. (It may include a specified error). As a result of the determination, if the erect is indicated, the process proceeds to step S1730, and if the erect is not indicated (inverted), the process proceeds to step S1740.

ステップS1730では、CPU200は、二次記憶装置250から、図12に示したA方向に近づくにつれて画角誤差(メカ誤差)が大きくなるメカ誤差テーブルを一次記憶装置240にロードする。   In step S <b> 1730, the CPU 200 loads, from the secondary storage device 250, a mechanical error table in which the angle of view error (mechanical error) increases as approaching the A direction illustrated in FIG.

一方、ステップS1740では、CPU200は、二次記憶装置250から、図12に示したB方向に近づくにつれて画角誤差(メカ誤差)が大きくなるメカ誤差テーブルを一次記憶装置240にロードする。   On the other hand, in step S1740, the CPU 200 loads, from the secondary storage device 250, a mechanical error table in which the angle of view error (mechanical error) increases as approaching the B direction shown in FIG.

ステップS1760,S1770,S1780ではそれぞれ、上記のステップS920,S930,S940の処理と同様の処理を行う。なお、ステップS1760以降の処理で用いるメカ誤差テーブルは、ステップS1730若しくはステップS1740で一次記憶装置240にロードしたメカ誤差テーブルである。   In steps S1760, S1770, and S1780, processes similar to those in steps S920, S930, and S940 are performed. Note that the mechanical error table used in the processing after step S1760 is the mechanical error table loaded into the primary storage device 240 in step S1730 or step S1740.

なお、同様の方法で、マスク画像水平角を補正するためのメカ誤差テーブルを選択し、該選択したメカ誤差テーブルを用いてマスク画像水平角を補正するようにしても構わない。もちろん、何れか一方のみを補正するようにしても構わない。なお、上記の各実施形態は適宜組み合わせて使用しても構わない。   A mechanical error table for correcting the mask image horizontal angle may be selected by the same method, and the mask image horizontal angle may be corrected using the selected mechanical error table. Of course, only one of them may be corrected. The above embodiments may be used in appropriate combination.

(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
(Other examples)
The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, etc.) of the system or apparatus reads the program. It is a process to be executed.

Claims (6)

撮像装置により撮像された画像をクライアント端末装置に配信するカメラサーバ装置であって、
前記画像上の指定領域をマスクする指示を前記クライアント端末装置から受信すると、前記撮像装置の現在の画角に対応する増分量だけ前記指定領域を拡大した拡大指定領域のサイズを求める計算手段と、
前記画像上の指定領域を覆うように、前記サイズを有するマスク画像を重ねた画像を合成画像として生成し、該生成した合成画像を前記クライアント端末装置に対して送信する送信手段と
を備えることを特徴とするカメラサーバ装置。
A camera server device that distributes an image captured by an imaging device to a client terminal device,
When receiving an instruction from the client terminal device for masking the designated area on the image, a calculation means for obtaining a size of the enlarged designated area obtained by enlarging the designated area by an increment corresponding to the current angle of view of the imaging device;
Transmitting means for generating, as a composite image, an image in which the mask image having the size is overlapped so as to cover the designated area on the image, and transmitting the generated composite image to the client terminal device. A camera server device.
前記増分量は、前記撮像装置の画角を前記現在の画角に変更する際の画角の誤差に基づく値であることを特徴とする請求項1に記載のカメラサーバ装置。   The camera server apparatus according to claim 1, wherein the increment amount is a value based on an error in an angle of view when the angle of view of the imaging device is changed to the current angle of view. 前記計算手段は、前記撮像装置が正立しているか否かに応じた前記増分量を使用することを特徴とする請求項1又は2に記載のカメラサーバ装置。   The camera server apparatus according to claim 1, wherein the calculation unit uses the increment amount according to whether or not the imaging apparatus is upright. 前記計算手段は、
前記撮像装置の現在の画角に対応する増分量だけ前記指定領域を水平方向及び垂直方向に拡大した拡大指定領域のサイズ、若しくは水平方向または垂直方向に拡大した拡大指定領域のサイズ、を求める
ことを特徴とする請求項1乃至3の何れか1項に記載のカメラサーバ装置。
The calculating means includes
Obtaining a size of an enlargement designated area obtained by enlarging the designated area in a horizontal direction and a vertical direction by an increment amount corresponding to a current angle of view of the imaging apparatus, or a size of an enlargement designated area enlarged in a horizontal direction or a vertical direction. The camera server device according to claim 1, wherein:
クライアント端末装置と、
撮像装置により撮像された画像を前記クライアント端末装置に配信するカメラサーバ装置と、
を有するカメラシステムであって、
前記クライアント端末装置は、
前記画像上でマスクする対象となる領域を指定領域として指定し、該指定領域をマスクする指示を前記カメラサーバ装置に送信する手段を備え、
前記カメラサーバ装置は、
前記指示を前記クライアント端末装置から受信すると、前記撮像装置の現在の画角に対応する増分量だけ前記指定領域を拡大した拡大指定領域のサイズを求める計算手段と、
前記画像上の指定領域を覆うように、前記サイズを有するマスク画像を重ねた画像を合成画像として生成し、該生成した合成画像を前記クライアント端末装置に対して送信する送信手段と
を備え、
前記クライアント端末装置は、
前記送信手段が送信した合成画像を表示する手段を備える
ことを特徴とするカメラシステム。
A client terminal device;
A camera server device that delivers an image captured by the imaging device to the client terminal device;
A camera system comprising:
The client terminal device
Means for designating a region to be masked on the image as a designated region and transmitting an instruction to mask the designated region to the camera server device;
The camera server device
When the instruction is received from the client terminal device, calculation means for obtaining a size of the enlarged designated region obtained by enlarging the designated region by an increment corresponding to the current angle of view of the imaging device;
A transmission unit configured to generate an image in which the mask image having the size is superimposed so as to cover the designated area on the image as a composite image, and to transmit the generated composite image to the client terminal device;
The client terminal device
A camera system comprising: means for displaying a composite image transmitted by the transmission means.
撮像装置により撮像された画像をクライアント端末装置に配信するカメラサーバ装置の制御方法であって、
前記撮像装置の計算手段が、前記画像上の指定領域をマスクする指示を前記クライアント端末装置から受信すると、前記撮像装置の現在の画角に対応する増分量だけ前記指定領域を拡大した拡大指定領域のサイズを求める計算工程と、
前記撮像装置の送信手段が、前記画像上の指定領域を覆うように、前記サイズを有するマスク画像を重ねた画像を合成画像として生成し、該生成した合成画像を前記クライアント端末装置に対して送信する送信工程と
を備えることを特徴とするカメラサーバ装置の制御方法。
A control method of a camera server device that distributes an image captured by an imaging device to a client terminal device,
When the calculation unit of the imaging apparatus receives an instruction from the client terminal device for masking the designated area on the image, the enlarged designated area is enlarged by the increment corresponding to the current angle of view of the imaging apparatus. A calculation process for determining the size of
The transmission unit of the imaging device generates an image in which the mask image having the size is overlapped so as to cover the designated area on the image as a composite image, and transmits the generated composite image to the client terminal device And a transmitting step for controlling the camera server device.
JP2013122026A 2013-06-10 2013-06-10 Camera server device, camera system, and control method of camera server device Pending JP2014239390A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013122026A JP2014239390A (en) 2013-06-10 2013-06-10 Camera server device, camera system, and control method of camera server device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013122026A JP2014239390A (en) 2013-06-10 2013-06-10 Camera server device, camera system, and control method of camera server device

Publications (1)

Publication Number Publication Date
JP2014239390A true JP2014239390A (en) 2014-12-18

Family

ID=52136209

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013122026A Pending JP2014239390A (en) 2013-06-10 2013-06-10 Camera server device, camera system, and control method of camera server device

Country Status (1)

Country Link
JP (1) JP2014239390A (en)

Similar Documents

Publication Publication Date Title
KR102375307B1 (en) Method, apparatus, and system for sharing virtual reality viewport
US10297005B2 (en) Method for generating panoramic image
JP4257356B2 (en) Image generating apparatus and image generating method
US11715238B2 (en) Image projection method, apparatus, device and storage medium
US9704287B2 (en) Method and apparatus for achieving transformation of a virtual view into a three-dimensional view
JP5925059B2 (en) Imaging control apparatus, imaging control method, and program
US10855916B2 (en) Image processing apparatus, image capturing system, image processing method, and recording medium
EP2439928A1 (en) Imaging control system, control apparatus, control method, and program
JP2012005107A (en) Multi-base drawing image sharing apparatus, multi-base drawing image sharing system, method, program and recording medium
US20150042559A1 (en) Information Processing Method And Electronic Device Thereof, Image Calibration Method And Apparatus, And Electronic Device Thereof
JP2015114424A (en) Electronic equipment, display device, method, and program
JP6269014B2 (en) Focus control device and focus control method
JP7210188B2 (en) Information processing system, control device and information processing method
US20170310891A1 (en) Image processing apparatus, image processing method and storage medium
JP2014192745A (en) Imaging apparatus, information processing apparatus, control method and program thereof
US11610343B2 (en) Video display control apparatus, method, and non-transitory computer readable medium
JP2014239390A (en) Camera server device, camera system, and control method of camera server device
JP6239023B2 (en) Information processing apparatus, information processing method, and program
JP2014021672A (en) Three-dimensional coordinate calculation device
JP6128966B2 (en) Image processing apparatus, image processing method, and program
JP2013085041A (en) Information processing apparatus, processing method thereof, and program
JP2019140530A (en) Server device, display device, video display system, and video display method
US11115632B2 (en) Image processing device, image processing method, program, and projection system
JP7253302B1 (en) Information processing system, program and information processing method
JP2012227603A (en) Camera control unit and control method of camera control unit