JP2018157399A - Image formation program, image formation device and image formation method - Google Patents

Image formation program, image formation device and image formation method Download PDF

Info

Publication number
JP2018157399A
JP2018157399A JP2017053239A JP2017053239A JP2018157399A JP 2018157399 A JP2018157399 A JP 2018157399A JP 2017053239 A JP2017053239 A JP 2017053239A JP 2017053239 A JP2017053239 A JP 2017053239A JP 2018157399 A JP2018157399 A JP 2018157399A
Authority
JP
Japan
Prior art keywords
image
camera
images
turning
time
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.)
Granted
Application number
JP2017053239A
Other languages
Japanese (ja)
Other versions
JP6769362B2 (en
Inventor
井原 範幸
Noriyuki Ihara
範幸 井原
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017053239A priority Critical patent/JP6769362B2/en
Publication of JP2018157399A publication Critical patent/JP2018157399A/en
Application granted granted Critical
Publication of JP6769362B2 publication Critical patent/JP6769362B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stereoscopic And Panoramic Photography (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Studio Devices (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide an image formation program that efficiently forms a panoramic image.SOLUTION: An image formation program causes a computer to perform processing to: extract a feature point included in a first image at a first position received from a camera; receive an image photographed while the camera is turned at a specific speed from the first position as a starting point; extract feature points included respectively in images photographed while the camera is turned; specify a second image having a feature point matching the image feature point of the first image among the feature points of the extracted images; measure the time up to photography of the second image after the start of turning of the camera at the first position as the starting point; calculate an angular speed in the turning of the camera based upon the measured time; specify intervals of time when images needed to create a panoramic image are photographed based upon the calculated angular speed; and transmit an instruction for photography to the camera at the specified intervals of time.SELECTED DRAWING: Figure 12

Description

本発明は、複数の画像より1つの画像を形成する画像形成プログラム等に関する。   The present invention relates to an image forming program for forming one image from a plurality of images.

カメラを旋回させながら撮影した複数の画像を合成し、1つの画像、いわゆるパノラマ画像を形成することが行われている(例えば、特許文献1参照)。   A plurality of images taken while turning the camera are combined to form one image, a so-called panoramic image (see, for example, Patent Document 1).

特開2001−8192号公報JP 2001-8192 A

複数の元画像よりパノラマ画像を形成するためには、隣接する2つの元画像の一部に画像内容の重複が必要である。重複部分を手掛かりとして、元画像同士をつなぎ合わせるからである。   In order to form a panoramic image from a plurality of original images, it is necessary to overlap image contents in a part of two adjacent original images. This is because the original images are joined together using the overlapping portion as a clue.

一方、防犯や防災の目的で設置されている監視カメラは、広い範囲を監視するために、監視カメラを旋回させながら画像を確認している。しかし、監視カメラを旋回させながらの確認には時間を有する。そこで、監視範囲を網羅するパノラマ画像を形成すれば監視が容易となる。しかし、監視カメラが出力する多数の画像には、パノラマ画像の形成に不要な画像も含まれる。そのため、パノラマ画像を形成するのに必要な画像を抽出処理が必要となり、パノラマ画像の形成を効率的に行えない。   On the other hand, surveillance cameras installed for the purpose of crime prevention and disaster prevention check images while turning the surveillance camera in order to monitor a wide range. However, the confirmation while turning the surveillance camera has time. Therefore, monitoring is facilitated by forming a panoramic image that covers the monitoring range. However, many images output from the surveillance camera include images that are unnecessary for forming a panoramic image. Therefore, it is necessary to extract an image necessary for forming a panoramic image, and the panoramic image cannot be formed efficiently.

1つの側面では、本発明の目的はパノラマ画像の形成を効率的に行う画像形成プログラムなどを提供することである。   In one aspect, an object of the present invention is to provide an image forming program that efficiently forms a panoramic image.

本願に開示する画像形成プログラムは、カメラから複数の画像を受信し、受信した前記複数の画像からパノラマ画像を形成する画像形成プログラムであって、前記カメラから受信した第1の位置における第1の画像に含まれる特徴点を抽出し、前記第1の位置を起点として前記カメラを特定の速度で旋回させながら撮影した画像を受信し、旋回させながら撮影した前記画像それぞれに含まれる特徴点を抽出し、抽出した前記画像それぞれの特徴点の内、前記第1の画像に含まれる画像の特徴点と一致する特徴点をもつ第2の画像を特定し、前記第1の位置を起点として前記カメラの旋回を開始してから前記第2の画像が撮影されるまでの時間を計測し、計測した前記時間に基づいて前記カメラを旋回させる際の角速度を算出し、算出した前記角速度に基づいてパノラマ画像を作成する際に必要な画像を撮影する時間の間隔を特定し、特定した前記時間の間隔毎に前記カメラに対し撮影の指示を送信する処理をコンピュータに実行させることを特徴とする。   An image forming program disclosed in the present application is an image forming program that receives a plurality of images from a camera and forms a panoramic image from the received plurality of images. The image forming program is a first position at a first position received from the camera. Extract feature points included in the image, receive an image taken while turning the camera at a specific speed from the first position, and extract feature points included in each of the images taken while turning Then, among the extracted feature points of each of the images, a second image having a feature point that matches the feature point of the image included in the first image is specified, and the camera is started from the first position. Measuring the time from the start of turning until the second image is taken, calculating the angular velocity when turning the camera based on the measured time, Specifying a time interval for capturing images necessary for creating a panoramic image based on speed, and causing a computer to execute a process of transmitting a shooting instruction to the camera at each specified time interval. Features.

本発明の一観点によれば、複数の元画像から効率的にパノラマ画像を効率的に形成することが可能となる。   According to an aspect of the present invention, a panoramic image can be efficiently formed from a plurality of original images.

パノラマ画像形成システムの構成例を示すブロック図である。It is a block diagram which shows the structural example of a panoramic image formation system. パノラマ画像形成システムの処理シーケンス例を示すシーケンス図である。It is a sequence diagram which shows the process sequence example of a panoramic image forming system. 画像処理装置の構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of an image processing apparatus. カメラDBのレコードレイアウトの一例を示す説明図である。It is explanatory drawing which shows an example of the record layout of camera DB. 水位計DBのレコードレイアウトの一例を示す説明図である。It is explanatory drawing which shows an example of the record layout of water level gauge DB. 対応カメラDBのレコードレイアウトの一例を示す説明図である。It is explanatory drawing which shows an example of the record layout of corresponding | compatible camera DB. 属性DBのレコードレイアウトの一例を示す説明図である。It is explanatory drawing which shows an example of the record layout of attribute DB. パノラマ画像の形成方法を示す説明図である。It is explanatory drawing which shows the formation method of a panoramic image. カメラの撮影範囲の変化を示す説明図である。It is explanatory drawing which shows the change of the imaging | photography range of a camera. 時間間隔算出処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a time interval calculation process. 起動処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a starting process. 個別処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of an individual process. 監視処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a monitoring process. カメラDBのレコードレイアウトの他の例を示す説明図である。It is explanatory drawing which shows the other example of the record layout of camera DB. 蓄積時間算出処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of an accumulation time calculation process. モード判定処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of a mode determination process. 個別処理の手順の他の例を示すフローチャートである。It is a flowchart which shows the other example of the procedure of an individual process. 画像処理装置の機能構成の一例を示すブロック図である。It is a block diagram which shows an example of a function structure of an image processing apparatus.

以下実施の形態を、図面を参照して説明する。以下の説明においては、河川を監視するカメラが撮影した画像を例とする。   Hereinafter, embodiments will be described with reference to the drawings. In the following description, an image taken by a camera that monitors a river is taken as an example.

実施の形態1
図1はパノラマ画像形成システムの構成例を示すブロック図である。パノラマ画像形成システム100は画像処理装置1、カメラ2−1、2−2、…、水位計3−1、3−2、…、及び端末4−1、4−2、…を含む。画像処理装置1、カメラ2−1、2−2、…、水位計3−1、3−2、…、及び端末4−1、4−2、…は、ネットワークNにより互いに通信可能に接続されている。
Embodiment 1
FIG. 1 is a block diagram illustrating a configuration example of a panoramic image forming system. The panorama image forming system 100 includes an image processing apparatus 1, cameras 2-1, 2-2,..., Water level meters 3-1, 3-2,. The image processing apparatus 1, the cameras 2-1, 2-2,..., The water level gauges 3-1, 3-2,... And the terminals 4-1, 4-2,. ing.

画像処理装置1はカメラ2−1、2−2、…が撮影した複数枚の画像から、1枚のパノラマ画像を合成する画像処理を行う。画像処理装置1は、サーバコンピュータ、ブレードサーバ、又はPC(Personal Computer)などで構成する。画像処理装置1が備えるべき機能をクラウドサービスで提供してもよい。   The image processing apparatus 1 performs image processing for synthesizing one panoramic image from a plurality of images taken by the cameras 2-1, 2-2,. The image processing apparatus 1 includes a server computer, a blade server, or a PC (Personal Computer). The functions that the image processing apparatus 1 should have may be provided by a cloud service.

カメラは監視箇所の数に応じて複数台、設置されている。水位計もカメラと同様に監視箇所の数に応じて複数台、設置されている。例えば、カメラ2−1と水位計3−1とは同一監視箇所に設置されている。カメラ2−2と水位計3−2とは同一監視箇所に設置されている。カメラと水位計とは1対1対応でなくてもよい。なお、カメラ及び水位計それぞれは必ずしも複数台である必要はなく、各1台でもよい。カメラ2−1、2−2、…はいずれもほぼ同等の機能を有するので、以下の説明においては、カメラ2と記載し、まとめて説明する。同様に、水位計については水位計3と記載し、まとめて説明する。   Multiple cameras are installed according to the number of monitoring points. Multiple water level gauges are installed according to the number of monitoring points as well as cameras. For example, the camera 2-1 and the water level meter 3-1 are installed at the same monitoring location. The camera 2-2 and the water level gauge 3-2 are installed at the same monitoring location. The camera and the water level meter do not have to have a one-to-one correspondence. Note that the camera and the water level gauge do not necessarily have to be plural, and may each be one. The cameras 2-1, 2-2,... Have substantially the same function, and therefore will be described as a camera 2 in the following description. Similarly, the water level meter is described as a water level meter 3 and will be described collectively.

端末4−1、4−2、…は河川を監視する各河川事務所に設置される。端末4−1、4−2、…についても、カメラ2、水位計3と同様に、以下の説明においては、端末4と記載し、まとめて説明する。端末4にはモニタが接続されている。端末4は当該モニタに画像処理装置1が出力したパノラマ画像を表示する。端末4にはジョイスティックなどのカメラ2のカメラ制御装置が接続されている。カメラ制御装置により、河川事務所の職員は、カメラ2を手動で制御することが可能となる。なお、カメラ制御装置は端末4を介在せず、直接ネットワークNを介して、カメラ2を制御可能な構成としてもよい。   Terminals 4-1, 4-2,... Are installed at each river office that monitors the river. Similarly to the camera 2 and the water level gauge 3, the terminals 4-1, 4-2,. A monitor is connected to the terminal 4. The terminal 4 displays the panoramic image output from the image processing apparatus 1 on the monitor. A camera control device for the camera 2 such as a joystick is connected to the terminal 4. The camera control device enables river staff to control the camera 2 manually. The camera control device may be configured to be able to control the camera 2 directly via the network N without interposing the terminal 4.

カメラ2は動画像を撮影可能である。また、カメラ2は夜間でも撮影が可能な近赤外線にも感度を持つカメラ、例えば、CCD(Charge Coupled Device)カメラである。カメラ2は電動雲台に取り付けられている。電動雲台を遠隔制御することにより、遠隔地からカメラ2をパン及びチルトすることが可能となっている。また、カメラ2は電動ズーム機構が搭載されている。電動ズーム機構を遠隔制御することにより、遠隔地からレンズのズーム倍率を可変可能となっている。さらに、カメラ2には赤外線照明が取り付けられていてもよい。夜間撮影時に赤外線照明を点灯することにより、より鮮明な画像の取得が可能となる。なお、電動雲台がパンを行う場合の速度には、低速、中速、高速の3つの速度モードが定義されているものとする。各速度モードでは一定の角速度でカメラ2がパンを行う。また、以下に説明する旋回とはパン(水平回転)を意味する。すなわち、以下にいう「低速旋回」とは、カメラ2が低速モードで、パンすることを意味する。   The camera 2 can capture a moving image. The camera 2 is a camera having sensitivity to near infrared rays that can be photographed even at night, for example, a CCD (Charge Coupled Device) camera. The camera 2 is attached to an electric head. By remotely controlling the electric camera platform, the camera 2 can be panned and tilted from a remote location. The camera 2 is equipped with an electric zoom mechanism. By remotely controlling the electric zoom mechanism, the zoom magnification of the lens can be varied from a remote location. Furthermore, infrared illumination may be attached to the camera 2. By turning on the infrared illumination during night photography, a clearer image can be acquired. It is assumed that three speed modes of low speed, medium speed, and high speed are defined as the speed when the electric pan head pans. In each speed mode, the camera 2 pans at a constant angular speed. Further, the turning described below means panning (horizontal rotation). That is, “low-speed turning” described below means that the camera 2 pans in the low-speed mode.

水位計3は河川の水位を計測する。水位計3は水位の計測を繰り返し行う。水位計3は計測した水位を、ネットワークNを介して画像処理装置1に送信する。また、水位計3は警報等を発する基準となる水位を記憶している。水位計3は計測した水位と記憶している水位とを比較し、画像処理装置1に処理を促すトリガー信号を送信する。基準となる水位は例えば、水防団待機水位、はん濫注意水位、避難判断水位、及びはん濫危険水位である。水防団待機水位は水防団が待機する目安となる水位である。はん濫注意水位は河川のはん濫の発生を注意する水位である。避難判断水位は避難情報発表の目安となる水位である。はん濫危険水位は河川がはん濫するおそれのある水位である。   The water level gauge 3 measures the water level of the river. The water level meter 3 repeatedly measures the water level. The water level meter 3 transmits the measured water level to the image processing apparatus 1 via the network N. In addition, the water level meter 3 stores a water level that serves as a reference for issuing an alarm or the like. The water level meter 3 compares the measured water level with the stored water level, and transmits a trigger signal that prompts the image processing apparatus 1 to perform processing. The standard water level is, for example, a flood control standby level, flood warning level, evacuation judgment level, and flood risk level. The water team standby water level is a reference water level for the water team to wait. Inundation caution water level is a water level that warns about the occurrence of river inundation. The evacuation judgment water level is a water level that serves as a guide for evacuation information announcement. The inundation risk level is the level at which the river may overflow.

図2はパノラマ画像形成システム100の処理シーケンス例を示すシーケンス図である。水位計3は繰り返し水位の測定を行う。水位計3は測定水位が予め決めた規定水位(例えば水防団待機水位)以上となった否かを判定する。水位計3は規定水位を超えたと判定した場合、画像処理装置1に対して、規定水位以上となった旨のメッセージを送信する。   FIG. 2 is a sequence diagram illustrating a processing sequence example of the panoramic image forming system 100. The water level meter 3 repeatedly measures the water level. The water level meter 3 determines whether or not the measured water level is equal to or higher than a predetermined water level determined in advance (for example, a water defense standby water level). When the water level meter 3 determines that the specified water level has been exceeded, the water level meter 3 transmits a message to the image processing apparatus 1 that the specified water level has been reached.

画像処理装置1は通知を受けて、水位計3と対応付けたカメラ2に対して、低速旋回しながらの撮影を指示するメッセージを送信する。カメラ2は当該メッセージを受けて、低速旋回しながらの撮影を開始する。カメラ2は撮影して得た画像を画像処理装置1に送信する。画像処理装置1はカメラ2より受信した画像を記憶する。画像処理装置1はカメラ2が180度以上旋回していたか否かを判定する。カメラ2が180度以上旋回していないと判定した場合、画像処理装置1は受信した画像を記憶する処理を繰り返す。カメラ2が180度以上旋回している判定した場合、画像処理装置1は記憶した複数の画像を合成して、パノラマ画像を形成する。画像処理装置1は形成したパノラマ画像を端末4に送信する。端末4は受信したパノラマ画像をモニタなどの表示装置に表示する。なお、画像処理装置1はパノラマ画像を形成している間も、カメラ2から受信した画像を記憶する処理を並列して行う。   In response to the notification, the image processing apparatus 1 transmits a message instructing photographing while turning at a low speed to the camera 2 associated with the water level gauge 3. The camera 2 receives the message and starts shooting while turning at a low speed. The camera 2 transmits an image obtained by photographing to the image processing apparatus 1. The image processing apparatus 1 stores an image received from the camera 2. The image processing apparatus 1 determines whether or not the camera 2 has turned 180 degrees or more. When it is determined that the camera 2 is not turning 180 degrees or more, the image processing apparatus 1 repeats the process of storing the received image. When it is determined that the camera 2 is turning 180 degrees or more, the image processing apparatus 1 combines the plurality of stored images to form a panoramic image. The image processing apparatus 1 transmits the formed panoramic image to the terminal 4. The terminal 4 displays the received panoramic image on a display device such as a monitor. Note that the image processing apparatus 1 performs the process of storing the image received from the camera 2 in parallel while the panoramic image is being formed.

水位計3は測定した水位が規定水位を下回ったと判定した場合、その旨のメッセージを画像処理装置1に送信する。画像処理装置1は撮影終了を指示するメッセージをカメラ2に送信する。カメラ2は撮影を終了する。   When the water level meter 3 determines that the measured water level is below the specified water level, the water level meter 3 transmits a message to that effect to the image processing apparatus 1. The image processing apparatus 1 transmits a message instructing the end of shooting to the camera 2. The camera 2 finishes shooting.

次に、画像処理装置1の構成について説明する。図3は画像処理装置1の構成の一例を示すブロック図である。画像処理装置1は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、大容量記憶部14、通信部15及び読み取り部16を含む。各構成はバスBで接続されている。   Next, the configuration of the image processing apparatus 1 will be described. FIG. 3 is a block diagram illustrating an example of the configuration of the image processing apparatus 1. The image processing apparatus 1 includes a CPU (Central Processing Unit) 11, a ROM (Read Only Memory) 12, a RAM (Random Access Memory) 13, a mass storage unit 14, a communication unit 15, and a reading unit 16. Each component is connected by a bus B.

CPU11はROM12に記憶された制御プログラム1Pに従い、ハードウェア各部を制御する。RAM13は例えばSRAM(Static RAM)、DRAM(Dynamic RAM)又はフラッシュメモリである。RAM13はCPU11によるプログラムの実行時に発生するデータを一時的に記憶する。   The CPU 11 controls each part of the hardware according to the control program 1P stored in the ROM 12. The RAM 13 is, for example, SRAM (Static RAM), DRAM (Dynamic RAM), or flash memory. The RAM 13 temporarily stores data generated when the CPU 11 executes the program.

大容量記憶部14は、例えばハードディスク又はSSD(Solid State Drive)などである。大容量記憶部14はパノラマ画像形成処理に必要な各種データを記憶する。大容量記憶部14はカメラDB(Data Base)141、水位計DB142、対応カメラDB143、撮影画像DB144、属性DB145、パノラマ画像DB146を記憶する。また、制御プログラム1Pを大容量記憶部14に記憶してもよい。   The large-capacity storage unit 14 is, for example, a hard disk or an SSD (Solid State Drive). The large-capacity storage unit 14 stores various data necessary for panoramic image formation processing. The large-capacity storage unit 14 stores a camera DB (Data Base) 141, a water level gauge DB 142, a corresponding camera DB 143, a photographed image DB 144, an attribute DB 145, and a panoramic image DB 146. Further, the control program 1P may be stored in the large-capacity storage unit 14.

通信部15はネットワークNを介して、カメラ2、水位計3及び端末4と通信を行う。読み取り部16はCD(Compact Disc)−ROM及びDVD(Digital Versatile Disc)−ROMを含む可搬型記憶媒体1aを読み取る。CPU11が読み取り部16を介して、制御プログラム1Pを可搬型記憶媒体1aより読み取り、大容量記憶部14に記憶してもよい。また、ネットワークN等を介して他のコンピュータからCPU11が制御プログラム1Pをダウンロードし、大容量記憶部14に記憶してもよい。さらにまた、半導体メモリ1bから、CPU11が制御プログラム1Pを読み込んでもよい。   The communication unit 15 communicates with the camera 2, the water level gauge 3, and the terminal 4 via the network N. The reading unit 16 reads a portable storage medium 1a including a CD (Compact Disc) -ROM and a DVD (Digital Versatile Disc) -ROM. The CPU 11 may read the control program 1P from the portable storage medium 1a via the reading unit 16 and store it in the large-capacity storage unit 14. Further, the CPU 11 may download the control program 1P from another computer via the network N or the like and store it in the large-capacity storage unit 14. Furthermore, the CPU 11 may read the control program 1P from the semiconductor memory 1b.

続いて、大容量記憶部14が記憶するデータベースについて説明する。図4はカメラDB141のレコードレイアウトの一例を示す説明図である。カメラDB141はパノラマ画像を形成する場合に必要なパラメータを記憶するデータベースである。カメラDB141はID列、角速度列、及び時間間隔列を含む。ID列はカメラ2を一意に特定するIDを記憶する。角速度列はカメラ2に低速旋回時の角速度を記憶する。時間間隔列はカメラ2が撮影する際に、どのくらいの時間をあけて撮影すればよいかを示す時間間隔を記憶する。   Next, the database stored in the large capacity storage unit 14 will be described. FIG. 4 is an explanatory diagram showing an example of the record layout of the camera DB 141. The camera DB 141 is a database that stores parameters necessary for forming a panoramic image. The camera DB 141 includes an ID column, an angular velocity column, and a time interval column. The ID column stores an ID that uniquely identifies the camera 2. The angular velocity train stores the angular velocity at the time of low-speed turning in the camera 2. The time interval column stores a time interval indicating how much time should be taken when the camera 2 takes a picture.

図5は水位計DB142のレコードレイアウトの一例を示す説明図である。水位計DB142はパノラマ画像の形成を開始する基準となる規定水位を記憶するデータベースである。水位計DB142はID列及び水位列を含む。ID列は水位計3を一意に特定するIDを記憶する。水位列はパノラマ画像の形成を開始する基準となる規定水位を記憶する。   FIG. 5 is an explanatory diagram showing an example of the record layout of the water level gauge DB 142. The water level gauge DB 142 is a database that stores a prescribed water level that serves as a reference for starting the formation of a panoramic image. The water level gauge DB 142 includes an ID column and a water level column. The ID column stores an ID that uniquely identifies the water level meter 3. The water level row stores a prescribed water level that serves as a reference for starting the formation of a panoramic image.

図6は対応カメラDB143のレコードレイアウトの一例を示す説明図である。対応カメラDB143は水位計3とカメラ2との対応関係を記憶するデータベースである。対応カメラDB143は水位計ID列及びカメラID列を含む。   FIG. 6 is an explanatory diagram showing an example of a record layout of the corresponding camera DB 143. The correspondence camera DB 143 is a database that stores the correspondence between the water level gauge 3 and the camera 2. The corresponding camera DB 143 includes a water level meter ID column and a camera ID column.

図7は属性DB145のレコードレイアウトの一例を示す説明図である。属性DB145はパノラマ画像の属性を記憶するデータベースである。属性DB145は画像ID列、カメラID列、日付列、時刻列、及びファイル名列を含む。画像IDはパノラマ画像を一意に特定するパノラマ画像IDを記憶する。カメラID列はパノラマ画像の元になる画像を撮影したカメラ2のIDを記憶する。日付列はパノラマ画像を形成するための撮影を開始した日付を記憶する。時刻列はパノラマ画像を形成するための撮影を開始した時刻を記憶する。日付列及び時刻列に記憶する日付及び時刻は、パノラマ画像の元となる複数の画像のうち、最後に撮影した画像の撮影日及び撮影時刻としてもよい。また、日付列及び時刻列に記憶する日付及び時刻を、パノラマ画像を形成又は記憶した日付及び時刻としてもよい。ファイル名列はパノラマ画像の実体であるパノラマ画像ファイルのファイル名を記憶する。パノラマ画像ファイルはパノラマ画像DB146に記憶されている。   FIG. 7 is an explanatory diagram showing an example of the record layout of the attribute DB 145. The attribute DB 145 is a database that stores attributes of panoramic images. The attribute DB 145 includes an image ID column, a camera ID column, a date column, a time column, and a file name column. The image ID stores a panoramic image ID that uniquely identifies the panoramic image. The camera ID column stores the ID of the camera 2 that captured the image that is the source of the panoramic image. The date column stores the date on which shooting for forming a panoramic image was started. The time column stores the time when photographing for forming a panoramic image is started. The date and time stored in the date string and the time string may be the shooting date and shooting time of the last image shot among a plurality of images that are the source of the panoramic image. Further, the date and time stored in the date string and the time string may be the date and time when the panoramic image is formed or stored. The file name column stores the file name of the panorama image file that is the substance of the panorama image. The panorama image file is stored in the panorama image DB 146.

なお、属性DB145が記憶するパノラマ画像の属性をパノラマ画像ファイルのファイル名に含めてもよい。また、パノラマ画像ファイルのファイル形式をExif(Exchangeable Image File Format)とし、ファイルの属性領域に、属性DB145が記憶するパノラマ画像の属性を記憶してもよい。これらの場合、属性DB145は不要となる。また、画像データを記憶できるリレーショナルデータベースにより、パノラマ画像DB146を構築してもよい。この場合は、属性DB145及びパノラマ画像DB146は1つのデータベースとする。   Note that the attributes of the panorama image stored in the attribute DB 145 may be included in the file name of the panorama image file. The file format of the panorama image file may be Exif (Exchangeable Image File Format), and the attributes of the panorama image stored in the attribute DB 145 may be stored in the attribute area of the file. In these cases, the attribute DB 145 is unnecessary. The panoramic image DB 146 may be constructed by a relational database that can store image data. In this case, the attribute DB 145 and the panorama image DB 146 are one database.

レコードレイアウトを示していない撮影画像DB144は、カメラ2が撮影した画像をファイルとして記憶している。撮影画像DB144が記憶する画像ファイルは、ファイル名にカメラID、及び撮影日時などの属性を含める。または、ファイル形式をExifとし、画像ファイルの属性領域にカメラID及び撮影日時を記憶してもよい。パノラマ画像DB146と同様に、画像データを記憶できるリレーショナルデータベースにより、撮影画像DB144を構築してもよい。   The captured image DB 144 not showing the record layout stores an image captured by the camera 2 as a file. The image file stored in the photographed image DB 144 includes attributes such as the camera ID and the photographing date / time in the file name. Alternatively, the file format may be Exif, and the camera ID and shooting date / time may be stored in the attribute area of the image file. Similar to the panoramic image DB 146, the photographed image DB 144 may be constructed by a relational database that can store image data.

引き続き、パノラマ画像の形成について、説明する。図8はパノラマ画像の形成方法を示す説明図である。図8Aに示すように、パノラマ画像を形成するには、画像の一部に共通な被写体が写り込んでいる2枚の画像を合成する。図8Aにおいて、画像IMG1の領域C1及び画像IMG2の領域C2は共通な被写体が写り込んでいる。したがって、画像IMG1と画像IMG2とを合成する場合、領域C1と領域C2とが重なるように合成する。図8Bに示すように、n枚(nはn>1の整数)の画像に対して、このような合成を繰り返すことにより、パノラマ画像を形成することが可能となる。   Subsequently, formation of a panoramic image will be described. FIG. 8 is an explanatory view showing a panoramic image forming method. As shown in FIG. 8A, in order to form a panoramic image, two images in which a common subject is reflected in a part of the image are synthesized. In FIG. 8A, a common subject appears in a region C1 of an image IMG1 and a region C2 of an image IMG2. Therefore, when the image IMG1 and the image IMG2 are combined, they are combined so that the region C1 and the region C2 overlap. As shown in FIG. 8B, it is possible to form a panoramic image by repeating such composition on n images (n is an integer of n> 1).

上述したように、カメラ2は低速旋回しながら撮影を行い、撮影画像を画像処理装置1に送信する。図8に示したようにパノラマ画像を形成するには、隣接する2枚の画像の一部に共通な被写体が写り込んでいればよい。したがって、パノラマ画像を形成するためには、カメラ2は旋回しながら間欠的に撮影する必要がある。図9はカメラ2の撮影範囲の変化を示す説明図である。図9の例では、河原にカメラ2が設置されている。カメラ2の向きを示すものとして旋回角度θを用いる。図9Aに示すようにカメラ2が河川と平行に左方向を向いている場合の角度θを0度とする。図9Cに示すようにカメラ2が河川と平行に右方向を向いている場合の角度θを180度とする。ここでは、カメラ2は旋回角度0度から180度まで旋回するものとするが、これは一例である。これ以外の角度範囲としてもよい。   As described above, the camera 2 captures an image while turning at a low speed, and transmits the captured image to the image processing apparatus 1. In order to form a panoramic image as shown in FIG. 8, it is only necessary that a common subject appears in a part of two adjacent images. Therefore, in order to form a panoramic image, the camera 2 needs to take images intermittently while turning. FIG. 9 is an explanatory diagram showing changes in the shooting range of the camera 2. In the example of FIG. 9, the camera 2 is installed in the riverbank. The turning angle θ is used to indicate the direction of the camera 2. As shown in FIG. 9A, the angle θ when the camera 2 is facing leftward in parallel with the river is assumed to be 0 degree. As shown in FIG. 9C, the angle θ when the camera 2 faces rightward in parallel with the river is 180 degrees. Here, it is assumed that the camera 2 turns from a turning angle of 0 degrees to 180 degrees, but this is an example. Other angle ranges may be used.

図9Aに示すように、θが0度の場合、カメラ2の撮影範囲をR1とする。θが0度の場合に撮影した画像が、パノラマ画像の元となる画像の1枚目となる。パノラマ画像を形成するために必要となる。図9Bに示すように、θ=α1の場合、カメラ2の撮影範囲をR2とする。R1とR2とは一部が重なるから、この場合に撮影した画像が2枚目の画像となる。同様に撮影範囲の一部が重なる旋回角度になる毎に撮影した画像を用いてパノラマ画像を形成することができる。図9Cに示すように、撮影範囲R1からRnまでの各撮影範囲で撮影したn枚の画像から、パノラマ画像を形成する。 As shown in FIG. 9A, when θ is 0 degree, the shooting range of the camera 2 is R 1 . The image taken when θ is 0 degree is the first image that is the source of the panoramic image. Necessary for forming a panoramic image. As shown in FIG. 9B, when θ = α1, the shooting range of the camera 2 is R 2 . Since R 1 and R 2 partially overlap, the image taken in this case is the second image. Similarly, it is possible to form a panoramic image using an image taken every time a turning angle where a part of the photographing range overlaps. As shown in FIG. 9C, a panoramic image is formed from n images shot in each shooting range from the shooting range R 1 to R n .

次に画像処理装置1が行う処理について説明する。図10は時間間隔算出処理の手順の一例を示すフローチャートである。時間間隔算出処理はカメラDB141に記憶する角速度及び時間間隔を求める処理である。画像処理装置1のCPU11はカメラ2をホームポジションに移動させる(ステップS1)。ホームポジションは予め定めた位置である。カメラ2の監視角度範囲が360度の場合を除き、ホームポジションはカメラ2の監視角度範囲の一端とする。監視角度範囲が360度の場合、カメラ2のホームポジションは任意の位置とする。   Next, processing performed by the image processing apparatus 1 will be described. FIG. 10 is a flowchart illustrating an example of a procedure of time interval calculation processing. The time interval calculation process is a process for obtaining an angular velocity and a time interval stored in the camera DB 141. The CPU 11 of the image processing apparatus 1 moves the camera 2 to the home position (step S1). The home position is a predetermined position. The home position is one end of the monitoring angle range of the camera 2 except when the monitoring angle range of the camera 2 is 360 degrees. When the monitoring angle range is 360 degrees, the home position of the camera 2 is an arbitrary position.

CPU11はホームポジション(第1の位置)でカメラ2の撮影画像(第1の画像)を取得する。CPU11は取得した画像を一時記憶領域に記憶する。一時記憶領域はRAM13又は大容量記憶部14に設ける。CPU11は画像中の特徴点を抽出する(ステップS2)。CPU11はカメラ2に低速旋回の開始を指示する(ステップS3)。CPU11はカメラ2から送信される画像とステップS2で抽出した特徴点とのマッチングを行う(ステップS4)。CPU11はマッチング結果より、カメラ2が再びホームポジションに戻ってきたか否かを判定する(ステップS5)。CPU11はカメラ2がホームポジションに戻ってきていないと判定した場合(ステップS5でNO)、処理をステップS4に戻す。CPU11はカメラ2がホームポジションに戻ってきたと判定した場合(ステップS5でYES)、カメラ2の旋回を停止させる(ステップS6)。ここで、カメラ2がホームポジションに戻ってきたとは、次の場合をいう。監視角度範囲が360度でない場合、角度範囲の一端であるホームポジションから他端まで旋回して一旦停止し、その後、逆方向に旋回して再びホームポジション戻ってくることである。監視角度範囲が360度である場合、予め定めたホームポジションから旋回を開始し、360度旋回して、再びホームポジションに戻ってくることである。ここで、ホームポジションに戻ってきて撮影した画像(第2の画像)の特徴点は、最初にホームポジションで撮影した画像の特徴点と一致するはずである。CPU11はカメラ2が旋回していた時間と、既知であるカメラ2の監視角度範囲から、カメラ2の低速旋回時の旋回角速度を算出する(ステップS7)。CPU11はホームポジションの画像と、それと連続して撮影された画像とを比較して、同一の被写体が含まれる重なり部分が一定の範囲(例えば画像全体の1/3)となる旋回時間、すなわち時間間隔(撮影する時間の間隔)を求める(ステップS8)。CPU11は旋回角速度と時間間隔とをカメラDB141に記憶する。   The CPU 11 acquires a captured image (first image) of the camera 2 at the home position (first position). The CPU 11 stores the acquired image in the temporary storage area. The temporary storage area is provided in the RAM 13 or the large capacity storage unit 14. The CPU 11 extracts feature points in the image (step S2). The CPU 11 instructs the camera 2 to start low-speed turning (step S3). The CPU 11 performs matching between the image transmitted from the camera 2 and the feature point extracted in step S2 (step S4). The CPU 11 determines from the matching result whether the camera 2 has returned to the home position again (step S5). If the CPU 11 determines that the camera 2 has not returned to the home position (NO in step S5), the process returns to step S4. When the CPU 11 determines that the camera 2 has returned to the home position (YES in step S5), the CPU 11 stops the turning of the camera 2 (step S6). Here, the camera 2 has returned to the home position refers to the following case. When the monitoring angle range is not 360 degrees, it turns from the home position, which is one end of the angle range, to the other end, temporarily stops, and then turns in the opposite direction to return to the home position again. When the monitoring angle range is 360 degrees, turning is started from a predetermined home position, turning 360 degrees, and returning to the home position again. Here, the feature point of the image (second image) captured after returning to the home position should match the feature point of the image initially captured at the home position. The CPU 11 calculates the turning angular velocity when the camera 2 is turning at low speed from the time during which the camera 2 is turning and the known monitoring angle range of the camera 2 (step S7). The CPU 11 compares the image at the home position with the images continuously taken, and the turning time in which the overlapping portion including the same subject is within a certain range (for example, 1/3 of the entire image), that is, time An interval (interval of photographing time) is obtained (step S8). The CPU 11 stores the turning angular velocity and the time interval in the camera DB 141.

時間間隔算出処理は平常時の昼間にカメラ2毎に実行し、すべてのカメラ2についての旋回角速度及び時間間隔をカメラDB141の記憶しておく。   The time interval calculation process is executed for each camera 2 during normal daytime, and the turning angular velocity and time interval for all the cameras 2 are stored in the camera DB 141.

図11は起動処理の手順の一例を示すフローチャートである。起動処理は水位計3より、計測水位が規定水位を超えた旨の通知を受信する毎に実行される処理である。CPU11は規定水位を超えた水位計の水位計IDを取得する(ステップS11)。CPU11は水位計IDに対応したカメラIDを対応カメラID143から取得する(ステップS12)。CPU11はカメラIDを監視対象として一時記憶領域に記憶する(ステップS13)。CPU11はすでに監視処理が起動中か否か判定する(ステップS14)。CPU11監視処理が起動中と判定した場合(ステップS14でYES)、処理をステップS16に移す。CPU11は監視処理が起動中ではないと判定した場合(ステップS14でNO)、監視処理を起動する(ステップS15)。CPU11はステップS12で取得したカメラIDを持つカメラ2に対する個別処理を起動する(ステップS16)。CPU11は起動処理を終了する。   FIG. 11 is a flowchart illustrating an example of the procedure of the activation process. The start-up process is a process that is executed every time a notification that the measured water level exceeds the specified water level is received from the water level meter 3. The CPU 11 obtains the water level ID of the water level meter that has exceeded the specified water level (step S11). CPU11 acquires camera ID corresponding to water level meter ID from corresponding camera ID143 (step S12). The CPU 11 stores the camera ID as a monitoring target in the temporary storage area (step S13). The CPU 11 determines whether the monitoring process has already been activated (step S14). If it is determined that the CPU 11 monitoring process is being activated (YES in step S14), the process proceeds to step S16. If the CPU 11 determines that the monitoring process is not being activated (NO in step S14), the CPU 11 activates the monitoring process (step S15). The CPU 11 starts individual processing for the camera 2 having the camera ID acquired in step S12 (step S16). The CPU 11 ends the activation process.

図12は個別処理の手順の一例を示すフローチャートである。図12に示す処理は、図11のステップS16で起動される処理である。CPU11は対象となるカメラ2をホームポジションに移動させる(ステップS21)。CPU11はカメラ2に低速旋回を開始させる(ステップS22)。CPU11は所定時間が経過した否かを判定する(ステップS23)。所定時間は前回撮影してからの経過時間である。所定時間はカメラDB141に定義されている時間間隔である。CPU11は所定時間が経過してないと判定した場合(ステップS23でNO)、ステップS23を繰り返し実行する。CPU11は所定時間が経過したと判定した場合(ステップS23でYES)、カメラ2に対して撮影を命令する(ステップS24)。CPU11はカメラ2が180度旋回した否かを判定する(ステップS25)。180度旋回したか否かの判定は、次のように行う。CPU11は処理対象のカメラ2のカメラIDに対応した角速度をカメラDB141から取得する。取得した角速度と低速旋回を開始してからの経過時間とにより、旋回した角度を算出し、その値が180度以上であるか否か判定する。CPU11はカメラ2が180度旋回していないと判定した場合(ステップS25でNO)、処理をステップS23に戻す。CPU11はカメラ2が180度旋回したと判定した場合(ステップS25でYES)、カメラ2の旋回を停止させる(ステップS26)。CPU11は撮影画像DB144に記憶してある画像をつなぎ合わせ、パノラマ画像を形成する(ステップS27)。CPU11は形成したパノラマ画像を端末4に出力する(ステップS28)。CPU11は処理を中止するか否かを判定する(ステップS29)。CPU11は一時記憶領域に記憶している監視対象のカメラIDから処理対象のカメラIDが削除されているか否かを判定する。CPU11は処理対象のカメラIDが一時記憶領域から削除されていると判定した場合、処理を中止すると判定する。CPU11は処理対象のカメラIDが一時記憶領域から削除されていないと判定した場合、処理を中止しないと判定する。CPU11は処理を中止しないと判定した場合(ステップS29でNO)、処理をステップS21へ戻す。CPU11は処理を中止すると判定した場合(ステップS29でYES)、個別処理を終了する。なお、個別処理はカメラ2毎に実行される処理である。したがって、複数のカメラ2が個別処理を行っている場合、CPU11は複数の個別処理を並列して実行している。   FIG. 12 is a flowchart showing an example of the procedure of individual processing. The process shown in FIG. 12 is a process activated in step S16 in FIG. The CPU 11 moves the target camera 2 to the home position (step S21). The CPU 11 causes the camera 2 to start a low-speed turn (step S22). The CPU 11 determines whether or not a predetermined time has elapsed (step S23). The predetermined time is an elapsed time since the last shooting. The predetermined time is a time interval defined in the camera DB 141. When the CPU 11 determines that the predetermined time has not elapsed (NO in step S23), the CPU 11 repeatedly executes step S23. If the CPU 11 determines that the predetermined time has elapsed (YES in step S23), the CPU 11 instructs the camera 2 to perform shooting (step S24). The CPU 11 determines whether or not the camera 2 has turned 180 degrees (step S25). The determination as to whether or not the vehicle has turned 180 degrees is performed as follows. The CPU 11 acquires the angular velocity corresponding to the camera ID of the camera 2 to be processed from the camera DB 141. The turning angle is calculated from the acquired angular velocity and the elapsed time after starting the low-speed turning, and it is determined whether or not the value is 180 degrees or more. If the CPU 11 determines that the camera 2 is not turning 180 degrees (NO in step S25), the process returns to step S23. If the CPU 11 determines that the camera 2 has turned 180 degrees (YES in step S25), the CPU 11 stops the turning of the camera 2 (step S26). The CPU 11 joins the images stored in the photographed image DB 144 to form a panoramic image (step S27). The CPU 11 outputs the formed panoramic image to the terminal 4 (step S28). The CPU 11 determines whether or not to stop the process (step S29). The CPU 11 determines whether or not the processing target camera ID has been deleted from the monitoring target camera ID stored in the temporary storage area. If the CPU 11 determines that the camera ID to be processed has been deleted from the temporary storage area, the CPU 11 determines to stop the process. If the CPU 11 determines that the camera ID to be processed has not been deleted from the temporary storage area, the CPU 11 determines not to stop the process. If the CPU 11 determines not to stop the process (NO in step S29), the process returns to step S21. When it is determined that the process is to be stopped (YES in step S29), the CPU 11 ends the individual process. The individual process is a process executed for each camera 2. Therefore, when the plurality of cameras 2 are performing individual processing, the CPU 11 performs the plurality of individual processing in parallel.

上述の個別処理において、カメラ2は時間間隔毎に画像処理装置1からの命令にしたがって、間欠的に撮影を行う。しかし、カメラ2は旋回中に常に撮影を行うものとしてもよい。この場合、撮影画像DB144に記憶した画像の一部を用いる。カメラ2が180度旋回した後に、CPU11は撮影画像DB144から必要な画像を抽出する。CPU11は各画像の撮影時間を参照し、撮影時間が時間間隔毎の画像を抽出する。CPU11は抽出した画像よりパノラマ画像を形成する。   In the individual processing described above, the camera 2 intermittently performs shooting according to a command from the image processing apparatus 1 at each time interval. However, the camera 2 may always take a picture while turning. In this case, a part of the image stored in the photographed image DB 144 is used. After the camera 2 turns 180 degrees, the CPU 11 extracts a necessary image from the photographed image DB 144. The CPU 11 refers to the shooting time of each image and extracts an image for each shooting time interval. The CPU 11 forms a panoramic image from the extracted image.

図13は監視処理の手順の一例を示すフローチャートである。監視処理は図11のステップS15で起動される処理である。監視処理は水位計3から水位が規定水位を下回ったことを受けて、対応するカメラ2のパノラマ画像を形成する処理(個別処理)を停止させる機能を実現する。CPU11は水位計3から規定水位を下回った旨のメッセージを受信したか否かを判定する(ステップS31)。CPU11は水位計3から規定水位を下回った旨のメッセージを受信していないと判定した場合(ステップS31でNO)、ステップS31を繰り返し実行する。CPU11は水位計3から規定水位を下回った旨のメッセージを受信したと判定した場合(ステップS31でYES)、水位を下回った水位計の水位計IDから対応したカメラIDを対応カメラID143から取得する(ステップS32)。CPU11は取得したカメラIDを一時記憶領域に記憶している監視対象から削除する(ステップS33)。CPU11は監視対象があるか否かを判定する(ステップS34)。CPU11は一時記憶領域に記憶している監視対象となるカメラのカメラIDがすべて削除されているか否かを判定する。CPU11は監視対象となるカメラのカメラIDがすべて削除されていると判定した場合、監視対象がないと判定する。CPU11は監視対象となるカメラのカメラIDが1つでも記憶されていると判定した場合、監視対象があると判定する。CPU11は監視対象があると判定した場合(ステップS34でYES)、処理をステップS31に戻す。CPU11は監視対象がないと判定した場合(ステップS34でNO)、処理を終了する。   FIG. 13 is a flowchart illustrating an example of the procedure of the monitoring process. The monitoring process is a process activated in step S15 in FIG. The monitoring process realizes a function of stopping the process (individual process) for forming a panoramic image of the corresponding camera 2 in response to the water level being lower than the specified water level from the water level meter 3. The CPU 11 determines whether or not a message indicating that the water level has fallen below the specified water level has been received from the water level gauge 3 (step S31). When the CPU 11 determines that a message indicating that the water level has fallen below the specified water level has not been received from the water level gauge 3 (NO in step S31), the CPU 11 repeatedly executes step S31. If the CPU 11 determines that a message indicating that the water level has fallen below the specified water level has been received from the water level meter 3 (YES in step S31), the CPU 11 acquires the camera ID corresponding to the water level meter ID of the water level meter that has fallen below the water level from the corresponding camera ID 143. (Step S32). The CPU 11 deletes the acquired camera ID from the monitoring target stored in the temporary storage area (step S33). The CPU 11 determines whether there is a monitoring target (step S34). The CPU 11 determines whether all the camera IDs of the cameras to be monitored stored in the temporary storage area have been deleted. If the CPU 11 determines that all the camera IDs of the cameras to be monitored have been deleted, it determines that there is no monitoring target. If the CPU 11 determines that at least one camera ID of the camera to be monitored is stored, it determines that there is a monitoring target. If the CPU 11 determines that there is a monitoring target (YES in step S34), the process returns to step S31. If the CPU 11 determines that there is no monitoring target (NO in step S34), the process ends.

上述の時間間隔算出処理のステップS8について補足する。ステップS8において、CPU11は撮影画像の画素移動量を画像処理により算出する。カメラ2がSD(Standard Definition:標準画質)カメラである場合は横720dot、HD(High Definition:高精細度)カメラなら横1920dotを検索対象として、所定の重なり部分となる(例えば、全体の1/3が重なる)時間をCPU11は求め、それを時間間隔として、カメラDB141に記憶する。撮影画像間の画素移動量を算出するには、特徴点マッチング、中央部分のパターンマッチング、又は位相限定相関法などを用いる。これらの手法は周知の技術であるから、詳細な説明は省略する。   It supplements about step S8 of the above-mentioned time interval calculation process. In step S8, the CPU 11 calculates the pixel movement amount of the captured image by image processing. If the camera 2 is an SD (Standard Definition) camera, the horizontal 720 dots, and if it is an HD (High Definition) camera, the horizontal 1920 dots are searched for and become a predetermined overlapping portion (for example, 1 / of the whole). The CPU 11 obtains the time 3), and stores it in the camera DB 141 as a time interval. In order to calculate the pixel movement amount between the captured images, feature point matching, pattern matching of the central portion, phase-only correlation method, or the like is used. Since these methods are well-known techniques, detailed description thereof is omitted.

本実施の形態は以下の効果を奏する。カメラ2は旋回中、常に撮影を行わない。パノラマ画像を形成するのに必要な画像を得るため、所定の時間間隔毎に撮影を行う。そのため、パノラマ画像を形成する際に用いる画像を選択する必要がない。また、撮影画像DB144の記憶容量を節約できる。   This embodiment has the following effects. The camera 2 does not always shoot while turning. In order to obtain an image necessary for forming a panoramic image, photographing is performed at predetermined time intervals. For this reason, there is no need to select an image to be used when forming a panoramic image. In addition, the storage capacity of the photographed image DB 144 can be saved.

カメラ2毎に旋回の角速度を求めるので、低速旋回の角速度が異なるカメラ2が混在していたとしても、適切な制御が可能となる。また、パノラマ画像の形成に必要となる画像を選択する際に必要となる隣接する画像間の関係を時間間隔で表すので、旋回角度が得られないカメラ2についても、パノラマ画像を形成可能となる。   Since the angular velocity of the turn for each camera 2 is obtained, even if the cameras 2 having different angular velocities for the low-speed turn are mixed, appropriate control can be performed. In addition, since the relationship between adjacent images necessary for selecting an image necessary for forming a panoramic image is represented by a time interval, a panoramic image can be formed even for the camera 2 that cannot obtain a turning angle. .

実施の形態2
本実施の形態は夜間の撮影にも対応する形態に関する。カメラ2は夜間でも撮影が可能なカメラであるが、環境光が乏しい夜間においては、カメラ2は蓄積モードで動作する場合がある。蓄積モードとは環境光が乏しい場合においても、コントラストがある画像を取得するためのモードである。スチールカメラの長時間露光と同様な考え方である。蓄積モードにおいて、カメラ2は出力画像1枚を出力するために所定時間(蓄積時間という)の間に撮影した複数の画像を用いる。例えば、蓄積時間が2秒の場合、2秒間の間に撮影した複数の画像を合成した1枚の画像をカメラ2は出力する。そのため、カメラ2は2秒間同じ画像を出力し、2秒後に新たな画像を出力する。その後、2秒が経過するまで、カメラ2は同じ画像を出力し続ける。このような蓄積モードにおいて、カメラ2を低速旋回すると画像を蓄積する2秒の間に撮影範囲が変化するため、被写体がぶれたり、同じ被写体が異なる位置に複数現れたりする。そのため、パノラマ画像の形成が困難となる。本実施の形態は、カメラ2が蓄積モードで動作している場合でも、パノラマ画像の形成が行うことを可能とする。
Embodiment 2
The present embodiment relates to a form corresponding to night photography. Although the camera 2 is a camera that can shoot at night, the camera 2 may operate in the accumulation mode at night when the ambient light is scarce. The accumulation mode is a mode for acquiring an image having a contrast even when ambient light is scarce. This is the same concept as long-time exposure for still cameras. In the accumulation mode, the camera 2 uses a plurality of images taken during a predetermined time (referred to as accumulation time) in order to output one output image. For example, when the accumulation time is 2 seconds, the camera 2 outputs one image obtained by combining a plurality of images taken during 2 seconds. Therefore, the camera 2 outputs the same image for 2 seconds, and outputs a new image after 2 seconds. Thereafter, the camera 2 continues to output the same image until 2 seconds elapse. In such an accumulation mode, when the camera 2 is turned at a low speed, the shooting range changes during 2 seconds when the image is accumulated, so that the subject is blurred or the same subject appears in a plurality of different positions. This makes it difficult to form a panoramic image. In the present embodiment, it is possible to form a panoramic image even when the camera 2 is operating in the accumulation mode.

図14はカメラDB141のレコードレイアウトの他の例を示す説明図である。カメラDB141はID列、角速度列、時間間隔列、及び蓄積時間列を含む。ID列、角速度列、及び時間間隔列は実施の形態1と同様であるから説明を省略する。蓄積時間列はカメラ2が蓄積モードとなったときの蓄積時間を記憶する。   FIG. 14 is an explanatory diagram showing another example of the record layout of the camera DB 141. The camera DB 141 includes an ID column, an angular velocity column, a time interval column, and an accumulation time column. Since the ID column, the angular velocity column, and the time interval column are the same as those in the first embodiment, description thereof is omitted. The accumulation time column stores the accumulation time when the camera 2 enters the accumulation mode.

図15は蓄積時間算出処理の手順の一例を示すフローチャートである。CPU11はカメラ2をホームポジションに移動させる(ステップS41)。CPU11はホームポジションにおけるカメラ2の撮影画像から特徴点を抽出する(ステップS42)。CPU11はカメラ2に低速旋回を開始させる(ステップS43)。CPU11はカメラ2の撮影画像とホームポジションとのマッチングを行う(ステップS44)。CPU11はステップS42で抽出した特徴点が撮影画像のどの位置にあるかを求める。CPU11は撮影画像がホームポジションにおける画像と同一であるか否かを判定する(ステップS45)。CPU11は撮影画像とホームポジションにおける画像とで、特徴点が同じ位置にあると判定した場合、同一画像であると判定する。CPU11は特徴点が異なる位置にあると判定した場合、同一画像ではないと判定する。CPU11は同一画像であると判定した場合(ステップS45でYES)、処理をステップS44に戻す。CPU11は同一画像でないと判定した場合(ステップS45でNO)、時間計測を開始する(ステップS46)。CPU11は新たな撮影画像(以下、「基準画像」という。)の特徴点を抽出する(ステップS47)。CPU11は次にカメラ2に得た画像と基準画像とのマッチングを行う(ステップS48)。CPU11は新たに得た画像と基準画像とが同一か否かを判定する(ステップS49)。CPU11は同一画像であると判定した場合(ステップS49でYES)、処理をステップS48に戻す。CPU11は同一画像でないと判定した場合(ステップS49でNO)、時間計測を中止する(ステップS50)。CPU11はカメラ2の旋回を停止させる(ステップS51)。CPU11は計測開始から計測停止までの時間を蓄積時間として、カメラDB141に記憶する(ステップS52)。CPU11は処理を終了する。蓄積時間算出処理は平常時に、すべてのカメラについて実行しておく。   FIG. 15 is a flowchart illustrating an example of the procedure of the accumulation time calculation process. The CPU 11 moves the camera 2 to the home position (step S41). The CPU 11 extracts feature points from the captured image of the camera 2 at the home position (step S42). The CPU 11 causes the camera 2 to start turning at a low speed (step S43). The CPU 11 performs matching between the captured image of the camera 2 and the home position (step S44). The CPU 11 determines which position in the captured image the feature point extracted in step S42 is. The CPU 11 determines whether or not the captured image is the same as the image at the home position (step S45). When the CPU 11 determines that the feature point is at the same position in the captured image and the image at the home position, the CPU 11 determines that the images are the same. When the CPU 11 determines that the feature points are at different positions, the CPU 11 determines that they are not the same image. If the CPU 11 determines that the images are the same (YES in step S45), the process returns to step S44. If the CPU 11 determines that the images are not the same (NO in step S45), it starts time measurement (step S46). The CPU 11 extracts feature points of a new photographed image (hereinafter referred to as “reference image”) (step S47). Next, the CPU 11 performs matching between the image obtained by the camera 2 and the reference image (step S48). The CPU 11 determines whether or not the newly obtained image is the same as the reference image (step S49). If the CPU 11 determines that the images are the same (YES in step S49), the process returns to step S48. If the CPU 11 determines that the images are not the same (NO in step S49), the time measurement is stopped (step S50). The CPU 11 stops the turning of the camera 2 (step S51). The CPU 11 stores the time from the start of measurement to the stop of measurement as the accumulation time in the camera DB 141 (step S52). The CPU 11 ends the process. The accumulation time calculation process is executed for all cameras in normal times.

図16はモード判定処理の手順の一例を示すフローチャートである。CPU11はカメラ2をホームポジションに移動させる(ステップS61)。CPU11はホームポジションでの画像から特徴点を抽出する(ステップS62)。CPU11はカメラ2に低速旋回を開始させる(ステップS63)。CPU11は新たに得た画像とホームポジションにおける画像とのマッチングを行う(ステップS64)。CPU11は新たに得た画像とホームポジションにおける画像とが同一であるか否かを判定する(ステップS65)。CPU11は新たに得た画像とホームポジションにおける画像とが同一でないと判定した場合(ステップS65でNO)、カメラ2は通常モードで動作していると判定し、画像処理装置1の動作モードも通常モードとする(ステップS66)。画像処理装置1の通常モードとは実施の形態1に示した動作を行うモードである。CPU11は新たに得た画像とホームポジションにおける画像とが同一であると判定した場合(ステップS65でYES)、カメラ2は蓄積モードで動作している判定し、画像処理装置1の動作モードも蓄積モードとする(ステップS67)。CPU11は処理を終了する。なお、モード判定処理はカメラ2毎に行ってもよいし、特定のカメラ2のみ行ってもよい。モード判定処理をカメラ2毎に行う場合は、画像処理装置1においても、カメラ2毎に処理モードを設定する。モード判定処理を特定のカメラ2のみで行う場合は、画像処理装置1の動作モードはすべてのカメラ2で共通となる。日の入り近辺の時刻において、実行すればよい。また、モード判定処理を特定のカメラ2のみで行う場合は、最も早く暗くなる場所に設置してあるカメラ2を選択すればよい。カメラ2が蓄積モードであるのに、画像処理装置1が通常モードで動作するとパノラマ画像を得られない。しかし、画像処理装置1が蓄積モードで動作しても、通常モードで動作しているカメラ2の撮影画像からパノラマ画像を得ることが可能だからである。   FIG. 16 is a flowchart illustrating an example of the procedure of the mode determination process. The CPU 11 moves the camera 2 to the home position (step S61). The CPU 11 extracts feature points from the image at the home position (step S62). The CPU 11 causes the camera 2 to start turning at a low speed (step S63). The CPU 11 performs matching between the newly obtained image and the image at the home position (step S64). The CPU 11 determines whether or not the newly obtained image is the same as the image at the home position (step S65). When the CPU 11 determines that the newly obtained image and the image at the home position are not the same (NO in step S65), the CPU 11 determines that the camera 2 is operating in the normal mode, and the operation mode of the image processing apparatus 1 is also normal. The mode is set (step S66). The normal mode of the image processing apparatus 1 is a mode for performing the operation shown in the first embodiment. When the CPU 11 determines that the newly obtained image is the same as the image at the home position (YES in step S65), the camera 2 determines that the camera 2 is operating in the accumulation mode, and the operation mode of the image processing apparatus 1 is also accumulated. The mode is set (step S67). The CPU 11 ends the process. Note that the mode determination process may be performed for each camera 2 or only a specific camera 2 may be performed. When the mode determination process is performed for each camera 2, the processing mode is set for each camera 2 also in the image processing apparatus 1. When the mode determination process is performed only by a specific camera 2, the operation mode of the image processing apparatus 1 is common to all the cameras 2. It may be executed at a time near the sunset. In addition, when the mode determination process is performed only with the specific camera 2, the camera 2 installed in the place where it becomes darkest most quickly may be selected. Even though the camera 2 is in the accumulation mode, a panoramic image cannot be obtained when the image processing apparatus 1 operates in the normal mode. However, even if the image processing apparatus 1 operates in the accumulation mode, it is possible to obtain a panoramic image from the captured image of the camera 2 operating in the normal mode.

図17は個別処理の手順の他の例を示すフローチャートである。図17に示す処理は、一部を除いて、図12に示した実施の形態1での処理と同様である。以下の説明においては、実施の形態1と異なる部分を主として説明する。CPU11は処理対象となるカメラ2の時間間隔及び蓄積時間をカメラDB141から読み出す(ステップS71)。CPU11はカメラ2をホームポジションに移動させる(ステップS72)。CPU11はカメラ2に低速旋回を開始させた(ステップS73)後、時間間隔に相当する時間が経過したか否かを判定する(ステップS74)。CPU11は時間間隔に相当する時間が経過してないと判定した場合(ステップS74でNO)、S74を繰り返し実行する。CPU11は時間間隔に相当する時間が経過したと判定した場合(ステップS74でYES)、カメラ2の旋回を停止させる(ステップS75)。CPU11は旋回を停止してから蓄積時間経過したか否かを判定する(ステップS76)。CPU11は旋回を停止してから蓄積時間経過してないと判定した場合(ステップS76でNO)、ステップS76を繰り返し実行する。CPU11は旋回を停止してから蓄積時間経過したと判定した場合(ステップS76でYES)、カメラ2から得た画像を撮影画像DB144に記憶する(ステップS77)。CPU11はカメラ2が180度旋回した否かを判定する(ステップS78)。CPU11はカメラ2が180度旋回していないと判定した場合(ステップS78でNO)、低速旋回を再開させる(ステップS79)。CPU11は処理をステップS74に戻す。CPU11はカメラ2が180度旋回したと判定した場合(ステップS78でYES)、パノラマ画像を形成する(ステップS80)。CPU11は形成したパノラマ画像を端末4に出力する(ステップS81)。CPU11は処理を中止するか否かを判定する(ステップS82)。CPU11は処理を中止しないと判定した場合(ステップS82でNO)、処理をステップS72へ戻す。CPU11は処理を中止すると判定した場合(ステップS82でYES)、処理を終了する。   FIG. 17 is a flowchart showing another example of the procedure of the individual processing. The process shown in FIG. 17 is the same as the process in Embodiment 1 shown in FIG. In the following description, a different part from Embodiment 1 is mainly demonstrated. The CPU 11 reads out the time interval and accumulation time of the camera 2 to be processed from the camera DB 141 (step S71). The CPU 11 moves the camera 2 to the home position (step S72). The CPU 11 determines whether or not the time corresponding to the time interval has elapsed after the camera 2 starts the low-speed turn (step S73) (step S74). When it is determined that the time corresponding to the time interval has not elapsed (NO in step S74), the CPU 11 repeatedly executes S74. If the CPU 11 determines that the time corresponding to the time interval has elapsed (YES in step S74), the CPU 11 stops the turning of the camera 2 (step S75). The CPU 11 determines whether or not an accumulation time has elapsed since stopping the turning (step S76). When the CPU 11 determines that the accumulation time has not elapsed since the turning was stopped (NO in step S76), the CPU 11 repeatedly executes step S76. If the CPU 11 determines that the accumulation time has elapsed since stopping the turn (YES in step S76), the CPU 11 stores the image obtained from the camera 2 in the captured image DB 144 (step S77). The CPU 11 determines whether or not the camera 2 has turned 180 degrees (step S78). When the CPU 11 determines that the camera 2 is not turning 180 degrees (NO in step S78), the CPU 11 restarts the low-speed turning (step S79). The CPU 11 returns the process to step S74. If the CPU 11 determines that the camera 2 has turned 180 degrees (YES in step S78), the CPU 11 forms a panoramic image (step S80). The CPU 11 outputs the formed panoramic image to the terminal 4 (step S81). The CPU 11 determines whether to stop the process (step S82). If the CPU 11 determines not to stop the process (NO in step S82), the process returns to step S72. If the CPU 11 determines to stop the process (YES in step S82), the process ends.

本実施の形態においては、実施の形態1が奏する効果に加えて、次の効果を奏する。カメラ2が蓄積モードで動作する場合であっても、パノラマ画像を形成可能となる。   In the present embodiment, in addition to the effects exhibited by the first embodiment, the following effects are achieved. Even when the camera 2 operates in the accumulation mode, a panoramic image can be formed.

図18は画像処理装置1の機能構成の一例を示すブロック図である。画像処理装置1は抽出部11a、特定部11b、算出部11c及び送信部11dを含む。これらの各機能部は、CPU11が制御プログラム1Pに基づいて動作することにより、実現される。   FIG. 18 is a block diagram illustrating an example of a functional configuration of the image processing apparatus 1. The image processing apparatus 1 includes an extracting unit 11a, a specifying unit 11b, a calculating unit 11c, and a transmitting unit 11d. Each of these functional units is realized by the CPU 11 operating based on the control program 1P.

抽出部11aは、カメラから受信した第1の位置における第1の画像に含まれる特徴点を抽出し、第1の位置を起点としてカメラを特定の速度で旋回させながら撮影した画像を受信し、旋回させながら撮影した画像それぞれに含まれる特徴点を抽出する。特定部11bは、抽出した画像それぞれの特徴点の内、第1の画像に含まれる画像の特徴点と一致する特徴点をもつ第2の画像を特定する。算出部11cは、第1の位置を起点としてカメラの旋回を開始してから第2の画像が撮影されるまでの時間を計測し、計測した時間に基づいてカメラを旋回させる際の角速度を算出する。送信部11dは、算出した角速度に基づいてパノラマ画像を作成する際に必要な画像を撮影する時間の間隔を特定し、特定した時間の間隔毎にカメラに対し撮影の指示を送信する。   The extraction unit 11a extracts feature points included in the first image at the first position received from the camera, receives an image taken while turning the camera at a specific speed from the first position, Feature points included in each of the images taken while turning are extracted. The specifying unit 11b specifies a second image having a feature point that matches the feature point of the image included in the first image among the feature points of each extracted image. The calculating unit 11c measures the time from when the camera starts turning until the second image is taken starting from the first position, and calculates the angular velocity when the camera is turned based on the measured time. To do. The transmission unit 11d specifies a time interval for capturing an image necessary for creating a panoramic image based on the calculated angular velocity, and transmits a shooting instruction to the camera at each specified time interval.

上述では河川の監視を例としたが、それに限らない。街角に設置された監視カメラを利用し、地震後の被害状況を把握するためにパノラマ画像を形成してもよい。また、道路の交通状況を把握するための監視カメラを利用し、大雨や地震などの災害時の被害状況を把握するためにパノラマ画像を形成してもよい。さらにまた、放送局の屋上などに設置されている待ちの様子を撮影するカメラを利用し、災害時の被害状況を把握するためにパノラマ画像を形成してもよい。   In the above description, river monitoring is taken as an example, but this is not a limitation. A panoramic image may be formed in order to grasp the damage situation after the earthquake using a surveillance camera installed at a street corner. Further, a panoramic image may be formed in order to grasp the damage situation at the time of disaster such as heavy rain or earthquake by using a monitoring camera for grasping the traffic condition of the road. Furthermore, a panoramic image may be formed in order to grasp the damage situation at the time of a disaster by using a camera that captures a waiting state installed on the rooftop of a broadcasting station.

各実施の形態で記載されている技術的特徴(構成要件)はお互いに組み合わせ可能であり、組み合わせすることにより、新しい技術的特徴を形成することができる。
今回開示された実施の形態はすべての点で例示であって、制限的なものでは無いと考えられるべきである。本発明の範囲は、上記した意味では無く、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
The technical features (components) described in each embodiment can be combined with each other, and a new technical feature can be formed by combining them.
The embodiments disclosed herein are illustrative in all respects and should not be considered as restrictive. The scope of the present invention is defined not by the above-mentioned meaning but by the scope of the claims, and is intended to include all modifications within the meaning and scope equivalent to the scope of the claims.

以上の実施の形態に関し、さらに以下の付記を開示する。   Regarding the above embodiment, the following additional notes are disclosed.

(付記1)
カメラから複数の画像を受信し、受信した前記複数の画像からパノラマ画像を形成する画像形成プログラムであって、
前記カメラから受信した第1の位置における第1の画像に含まれる特徴点を抽出し、
前記第1の位置を起点として前記カメラを特定の速度で旋回させながら撮影した画像を受信し、
旋回させながら撮影した前記画像それぞれに含まれる特徴点を抽出し、
抽出した前記画像それぞれの特徴点の内、前記第1の画像に含まれる画像の特徴点と一致する特徴点をもつ第2の画像を特定し、
前記第1の位置を起点として前記カメラの旋回を開始してから前記第2の画像が撮影されるまでの時間を計測し、
計測した前記時間に基づいて前記カメラを旋回させる際の角速度を算出し、
算出した前記角速度に基づいてパノラマ画像を作成する際に必要な画像を撮影する時間の間隔を特定し、
特定した前記時間の間隔毎に前記カメラに対し撮影の指示を送信する
処理をコンピュータに実行させることを特徴とする画像形成プログラム。
(Appendix 1)
An image forming program for receiving a plurality of images from a camera and forming a panoramic image from the received plurality of images,
Extracting feature points included in the first image at the first position received from the camera;
Receive an image taken while turning the camera at a specific speed starting from the first position,
Extract feature points included in each of the images taken while turning,
A second image having a feature point that matches a feature point of the image included in the first image among the feature points of the extracted images;
Measuring the time from the start of turning the camera starting from the first position until the second image is taken;
Calculate the angular velocity when turning the camera based on the measured time,
Based on the calculated angular velocity, specify a time interval for capturing images necessary for creating a panoramic image,
An image forming program that causes a computer to execute a process of transmitting a shooting instruction to the camera at each specified time interval.

(付記2)
前記時間の間隔を、前記第1の画像に対し、画像の重なりが所定の割合となる画像を撮影するまでの時間とする
ことを特徴とする付記1に記載の画像形成プログラム。
(Appendix 2)
The image forming program according to appendix 1, wherein the time interval is a time required to capture an image with a predetermined ratio of image overlap with respect to the first image.

(付記3)
算出した前記角速度に基づいてパノラマ画像を作成する際、前記角速度に基づき、前記カメラが180°回転するまでの時間を算出し、
算出した前記時間の範囲で、特定した前記時間の間隔毎に撮影を行う
ことを特徴とする付記2に記載の画像形成プログラム。
(Appendix 3)
When creating a panoramic image based on the calculated angular velocity, the time until the camera rotates 180 ° is calculated based on the angular velocity,
The image forming program according to appendix 2, wherein photographing is performed at each specified time interval within the calculated time range.

(付記4)
前記カメラを特定の速度で旋回させながら撮影した画像を複数受信し、
受信した前記画像間で特徴点の差分比較を行い、
差分比較の結果より前記カメラが同じ画像を出力する蓄積時間を求め、
前記カメラに対し、前記時間の間、旋回した後に停止し、前記蓄積時間の間、撮影を行い、再び旋回を開始する指示を送信する
ことを特徴とする付記1から付記3のいずれか1つに記載の画像形成プログラム。
(Appendix 4)
Receiving a plurality of images taken while turning the camera at a specific speed,
Perform a feature point difference comparison between the received images,
Find the accumulation time for the camera to output the same image from the result of the difference comparison,
Any one of appendix 1 to appendix 3, characterized in that the camera stops after turning for the time period, takes an image during the accumulation time period, and transmits an instruction to start turning again. The image forming program described in 1.

(付記5)
前記蓄積時間は、差分比較で得た差分値が、連続して閾値以下となる時間である
ことを特徴とする付記4に記載の画像形成プログラム。
(Appendix 5)
The image forming program according to appendix 4, wherein the accumulation time is a time during which a difference value obtained by difference comparison is continuously equal to or less than a threshold value.

(付記6)
カメラから複数の画像を受信し、受信した前記複数の画像からパノラマ画像を形成する画像形成装置であって、
前記カメラから受信した第1の位置における第1の画像に含まれる特徴点を抽出し、前記第1の位置を起点として前記カメラを特定の速度で旋回させながら撮影した画像を受信し、旋回させながら撮影した前記画像それぞれに含まれる特徴点を抽出する抽出部と、
抽出した前記画像それぞれの特徴点の内、前記第1の画像に含まれる画像の特徴点と一致する特徴点をもつ第2の画像を特定する特定部と、
前記第1の位置を起点として前記カメラの旋回を開始してから前記第2の画像が撮影されるまでの時間を計測し、計測した前記時間に基づいて前記カメラを旋回させる際の角速度を算出する算出部と、
算出した前記角速度に基づいてパノラマ画像を作成する際に必要な画像を撮影する時間の間隔を特定し、特定した前記時間の間隔毎に前記カメラに対し撮影の指示を送信する送信部と
を有することを特徴とする画像形成装置。
(Appendix 6)
An image forming apparatus that receives a plurality of images from a camera and forms a panoramic image from the received plurality of images,
A feature point included in the first image at the first position received from the camera is extracted, and an image taken while turning the camera at a specific speed from the first position is received and turned. An extraction unit for extracting feature points included in each of the images taken while,
A specifying unit that specifies a second image having a feature point that matches a feature point of an image included in the first image among the feature points of each of the extracted images;
Measure the time from the start of turning the camera starting from the first position until the second image is taken, and calculate the angular velocity when turning the camera based on the measured time A calculating unit to
A transmission unit that identifies a time interval for capturing an image necessary for creating a panoramic image based on the calculated angular velocity, and transmits a photographing instruction to the camera at each identified time interval. An image forming apparatus.

(付記7)
カメラから複数の画像を受信し、受信した前記複数の画像からパノラマ画像を形成する画像形成方法であって、
前記カメラから受信した第1の位置における第1の画像に含まれる特徴点を抽出し、
前記第1の位置を起点として前記カメラを特定の速度で旋回させながら撮影した画像を受信し、
旋回させながら撮影した前記画像それぞれに含まれる特徴点を抽出し、
抽出した前記画像それぞれの特徴点の内、前記第1の画像に含まれる画像の特徴点と一致する特徴点をもつ第2の画像を特定し、
前記第1の位置を起点として前記カメラの旋回を開始してから前記第2の画像が撮影されるまでの時間を計測し、
計測した前記時間に基づいて前記カメラを旋回させる際の角速度を算出し、
算出した前記角速度に基づいてパノラマ画像を作成する際に必要な画像を撮影する時間の間隔を特定し、
特定した前記時間の間隔毎に前記カメラに対し撮影の指示を送信する
処理をコンピュータが実行することを特徴とする画像形成方法。
(Appendix 7)
An image forming method for receiving a plurality of images from a camera and forming a panoramic image from the received plurality of images,
Extracting feature points included in the first image at the first position received from the camera;
Receive an image taken while turning the camera at a specific speed starting from the first position,
Extract feature points included in each of the images taken while turning,
A second image having a feature point that matches a feature point of the image included in the first image among the feature points of the extracted images;
Measuring the time from the start of turning the camera starting from the first position until the second image is taken;
Calculate the angular velocity when turning the camera based on the measured time,
Based on the calculated angular velocity, specify a time interval for capturing images necessary for creating a panoramic image,
An image forming method, wherein the computer executes a process of transmitting a shooting instruction to the camera at each specified time interval.

100 パノラマ画像形成システム
1 画像処理装置
11 CPU
11a 抽出部
11b 特定部
11c 算出部
11d 送信部
12 ROM
13 RAM
14 大容量記憶部
141 カメラDB
142 水位計DB
143 対応カメラDB
144 撮影画像DB
145 属性DB
146 パノラマ画像DB
15 通信部
16 読み取り部
1P 制御プログラム
1a 可搬型記憶媒体
1b 半導体メモリ
2 カメラ
3 水位計
4 端末
N ネットワーク
100 panoramic image forming system 1 image processing apparatus 11 CPU
11a Extraction unit 11b Identification unit 11c Calculation unit 11d Transmission unit 12 ROM
13 RAM
14 Mass storage unit 141 Camera DB
142 Water Level DB
143 Compatible Camera DB
144 Shooting image DB
145 attribute DB
146 Panorama image DB
DESCRIPTION OF SYMBOLS 15 Communication part 16 Reading part 1P Control program 1a Portable storage medium 1b Semiconductor memory 2 Camera 3 Water level meter 4 Terminal N network

Claims (5)

カメラから複数の画像を受信し、受信した前記複数の画像からパノラマ画像を形成する画像形成プログラムであって、
前記カメラから受信した第1の位置における第1の画像に含まれる特徴点を抽出し、
前記第1の位置を起点として前記カメラを特定の速度で旋回させながら撮影した画像を受信し、
旋回させながら撮影した前記画像それぞれに含まれる特徴点を抽出し、
抽出した前記画像それぞれの特徴点の内、前記第1の画像に含まれる画像の特徴点と一致する特徴点をもつ第2の画像を特定し、
前記第1の位置を起点として前記カメラの旋回を開始してから前記第2の画像が撮影されるまでの時間を計測し、
計測した前記時間に基づいて前記カメラを旋回させる際の角速度を算出し、
算出した前記角速度に基づいてパノラマ画像を作成する際に必要な画像を撮影する時間の間隔を特定し、
特定した前記時間の間隔毎に前記カメラに対し撮影の指示を送信する
処理をコンピュータに実行させることを特徴とする画像形成プログラム。
An image forming program for receiving a plurality of images from a camera and forming a panoramic image from the received plurality of images,
Extracting feature points included in the first image at the first position received from the camera;
Receive an image taken while turning the camera at a specific speed starting from the first position,
Extract feature points included in each of the images taken while turning,
A second image having a feature point that matches a feature point of the image included in the first image among the feature points of the extracted images;
Measuring the time from the start of turning the camera starting from the first position until the second image is taken;
Calculate the angular velocity when turning the camera based on the measured time,
Based on the calculated angular velocity, specify a time interval for capturing images necessary for creating a panoramic image,
An image forming program that causes a computer to execute a process of transmitting a shooting instruction to the camera at each specified time interval.
前記時間の間隔を、前記第1の画像に対し、画像の重なりが所定の割合となる画像を撮影するまでの時間とする
ことを特徴とする請求項1に記載の画像形成プログラム。
2. The image forming program according to claim 1, wherein the time interval is a time until an image with a predetermined ratio of image overlap with respect to the first image is taken.
算出した前記角速度に基づいてパノラマ画像を作成する際、前記角速度に基づき、前記カメラが180°回転するまでの時間を算出し、
算出した前記時間の範囲で、特定した前記時間の間隔毎に撮影を行う
ことを特徴とする請求項2に記載の画像形成プログラム。
When creating a panoramic image based on the calculated angular velocity, the time until the camera rotates 180 ° is calculated based on the angular velocity,
3. The image forming program according to claim 2, wherein photographing is performed for each specified time interval within the calculated time range.
カメラから複数の画像を受信し、受信した前記複数の画像からパノラマ画像を形成する画像形成装置であって、
前記カメラから受信した第1の位置における第1の画像に含まれる特徴点を抽出し、前記第1の位置を起点として前記カメラを特定の速度で旋回させながら撮影した画像を受信し、旋回させながら撮影した前記画像それぞれに含まれる特徴点を抽出する抽出部と、
抽出した前記画像それぞれの特徴点の内、前記第1の画像に含まれる画像の特徴点と一致する特徴点をもつ第2の画像を特定する特定部と、
前記第1の位置を起点として前記カメラの旋回を開始してから前記第2の画像が撮影されるまでの時間を計測し、計測した前記時間に基づいて前記カメラを旋回させる際の角速度を算出する算出部と、
算出した前記角速度に基づいてパノラマ画像を作成する際に必要な画像を撮影する時間の間隔を特定し、特定した前記時間の間隔毎に前記カメラに対し撮影の指示を送信する送信部と
を有することを特徴とする画像形成装置。
An image forming apparatus that receives a plurality of images from a camera and forms a panoramic image from the received plurality of images,
A feature point included in the first image at the first position received from the camera is extracted, and an image taken while turning the camera at a specific speed from the first position is received and turned. An extraction unit for extracting feature points included in each of the images taken while,
A specifying unit that specifies a second image having a feature point that matches a feature point of an image included in the first image among the feature points of each of the extracted images;
Measure the time from the start of turning the camera starting from the first position until the second image is taken, and calculate the angular velocity when turning the camera based on the measured time A calculating unit to
A transmission unit that identifies a time interval for capturing an image necessary for creating a panoramic image based on the calculated angular velocity, and transmits a photographing instruction to the camera at each identified time interval. An image forming apparatus.
カメラから複数の画像を受信し、受信した前記複数の画像からパノラマ画像を形成する画像形成方法であって、
前記カメラから受信した第1の位置における第1の画像に含まれる特徴点を抽出し、
前記第1の位置を起点として前記カメラを特定の速度で旋回させながら撮影した画像を受信し、
旋回させながら撮影した前記画像それぞれに含まれる特徴点を抽出し、
抽出した前記画像それぞれの特徴点の内、前記第1の画像に含まれる画像の特徴点と一致する特徴点をもつ第2の画像を特定し、
前記第1の位置を起点として前記カメラの旋回を開始してから前記第2の画像が撮影されるまでの時間を計測し、
計測した前記時間に基づいて前記カメラを旋回させる際の角速度を算出し、
算出した前記角速度に基づいてパノラマ画像を作成する際に必要な画像を撮影する時間の間隔を特定し、
特定した前記時間の間隔毎に前記カメラに対し撮影の指示を送信する
処理をコンピュータが実行することを特徴とする画像形成方法。
An image forming method for receiving a plurality of images from a camera and forming a panoramic image from the received plurality of images,
Extracting feature points included in the first image at the first position received from the camera;
Receive an image taken while turning the camera at a specific speed starting from the first position,
Extract feature points included in each of the images taken while turning,
A second image having a feature point that matches a feature point of the image included in the first image among the feature points of the extracted images;
Measuring the time from the start of turning the camera starting from the first position until the second image is taken;
Calculate the angular velocity when turning the camera based on the measured time,
Based on the calculated angular velocity, specify a time interval for capturing images necessary for creating a panoramic image,
An image forming method, wherein the computer executes a process of transmitting a shooting instruction to the camera at each specified time interval.
JP2017053239A 2017-03-17 2017-03-17 Image forming program, image forming apparatus and image forming method Active JP6769362B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017053239A JP6769362B2 (en) 2017-03-17 2017-03-17 Image forming program, image forming apparatus and image forming method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017053239A JP6769362B2 (en) 2017-03-17 2017-03-17 Image forming program, image forming apparatus and image forming method

Publications (2)

Publication Number Publication Date
JP2018157399A true JP2018157399A (en) 2018-10-04
JP6769362B2 JP6769362B2 (en) 2020-10-14

Family

ID=63716837

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017053239A Active JP6769362B2 (en) 2017-03-17 2017-03-17 Image forming program, image forming apparatus and image forming method

Country Status (1)

Country Link
JP (1) JP6769362B2 (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11205648A (en) * 1998-01-09 1999-07-30 Olympus Optical Co Ltd Image synthesizing device
JP2000324380A (en) * 1999-05-11 2000-11-24 Canon Inc Image pickup device and its method
JP2001008192A (en) * 1999-06-23 2001-01-12 Osaki Electric Co Ltd Remote picture monitor system
JP2005311789A (en) * 2004-04-22 2005-11-04 Fuji Photo Film Co Ltd Digital camera
JP2006042249A (en) * 2004-07-30 2006-02-09 Matsushita Electric Ind Co Ltd Video display device
JP2011193286A (en) * 2010-03-15 2011-09-29 Fujifilm Corp Imaging apparatus
JP2011223292A (en) * 2010-04-09 2011-11-04 Sony Corp Imaging apparatus, display control method, and program
KR102104406B1 (en) * 2013-11-15 2020-05-29 한화테크윈 주식회사 Surveillance camera performing panning and tilting

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11205648A (en) * 1998-01-09 1999-07-30 Olympus Optical Co Ltd Image synthesizing device
JP2000324380A (en) * 1999-05-11 2000-11-24 Canon Inc Image pickup device and its method
JP2001008192A (en) * 1999-06-23 2001-01-12 Osaki Electric Co Ltd Remote picture monitor system
JP2005311789A (en) * 2004-04-22 2005-11-04 Fuji Photo Film Co Ltd Digital camera
JP2006042249A (en) * 2004-07-30 2006-02-09 Matsushita Electric Ind Co Ltd Video display device
JP2011193286A (en) * 2010-03-15 2011-09-29 Fujifilm Corp Imaging apparatus
JP2011223292A (en) * 2010-04-09 2011-11-04 Sony Corp Imaging apparatus, display control method, and program
KR102104406B1 (en) * 2013-11-15 2020-05-29 한화테크윈 주식회사 Surveillance camera performing panning and tilting

Also Published As

Publication number Publication date
JP6769362B2 (en) 2020-10-14

Similar Documents

Publication Publication Date Title
JP4140591B2 (en) Imaging system and imaging method
CN109922251B (en) Method, device and system for quick snapshot
JP6532217B2 (en) IMAGE PROCESSING APPARATUS, IMAGE PROCESSING METHOD, AND IMAGE PROCESSING SYSTEM
JP4098808B2 (en) Remote video display method, video acquisition device, method thereof, and program thereof
JP4942185B2 (en) Imaging apparatus, pan head control method, program, and storage medium
KR101530255B1 (en) Cctv system having auto tracking function of moving target
CN103824064A (en) Huge-amount human face discovering and recognizing method
JP2015220616A (en) Electronic apparatus
JP2018509030A (en) Events triggered by the depth of an object in the field of view of the imaging device
KR102196086B1 (en) Method for autonomous balancing PTZ of camera and system for providing traffic information therewith
CN105467741A (en) Panoramic shooting method and terminal
JP2007158496A (en) Map interconnection video monitoring method and apparatus thereof
CN111225182B (en) Image acquisition equipment, method and device
JP6769362B2 (en) Image forming program, image forming apparatus and image forming method
CN116112794A (en) Aerial image generation method and device, computer readable medium and aerial unmanned aerial vehicle
JP5861420B2 (en) Electronic camera
JP6875965B2 (en) Control devices, control methods, programs, and monitoring systems
JP3991816B2 (en) Monitoring system and method, program, and recording medium
JP7220861B1 (en) Information processing method, information processing device and program
JP2010087676A (en) Video camera system having feature determination function
JP6176306B2 (en) Electronic camera and program
JP2018113628A (en) Video image display system and method
JP6176305B2 (en) Electronic camera and program
KR101992600B1 (en) The Apparatus of Video Clip Using Viewing Volume
JP2017224977A (en) Image transfer device, image recognition device, image transfer method, image recognition method, and image processing system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200807

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200825

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200907

R150 Certificate of patent or registration of utility model

Ref document number: 6769362

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150