JP5811923B2 - Information processing apparatus, image processing method, and program - Google Patents
Information processing apparatus, image processing method, and program Download PDFInfo
- Publication number
- JP5811923B2 JP5811923B2 JP2012073049A JP2012073049A JP5811923B2 JP 5811923 B2 JP5811923 B2 JP 5811923B2 JP 2012073049 A JP2012073049 A JP 2012073049A JP 2012073049 A JP2012073049 A JP 2012073049A JP 5811923 B2 JP5811923 B2 JP 5811923B2
- Authority
- JP
- Japan
- Prior art keywords
- captured image
- image
- birds
- sample
- captured
- 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.)
- Expired - Fee Related
Links
- 230000010365 information processing Effects 0.000 title claims description 31
- 238000003672 processing method Methods 0.000 title claims description 7
- 238000012545 processing Methods 0.000 claims description 86
- 238000000034 method Methods 0.000 claims description 62
- 238000003384 imaging method Methods 0.000 claims description 42
- 238000004364 calculation method Methods 0.000 claims description 34
- 238000012937 correction Methods 0.000 claims description 5
- 241000271566 Aves Species 0.000 description 170
- 244000144992 flock Species 0.000 description 105
- 238000004088 simulation Methods 0.000 description 39
- 238000012544 monitoring process Methods 0.000 description 31
- 238000012806 monitoring device Methods 0.000 description 23
- 230000003287 optical effect Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 16
- 238000013500 data storage Methods 0.000 description 15
- 230000015654 memory Effects 0.000 description 11
- 238000009395 breeding Methods 0.000 description 4
- 230000001488 breeding effect Effects 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000011960 computer-aided design Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 238000003909 pattern recognition Methods 0.000 description 2
- 230000003542 behavioural effect Effects 0.000 description 1
- 244000144980 herd Species 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000003362 replicative effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Landscapes
- Image Processing (AREA)
- Image Analysis (AREA)
Description
本発明は情報処理装置、画像処理方法およびプログラムに関する。 The present invention relates to an information processing apparatus, an image processing method, and a program.
現在、種々の目的のため、鳥などの飛行物の個体数を調査したいことがある。例えば、環境保護活動の一環として、野生生物の現状把握のため、野鳥の個体数を調査することが考えられる。飛行物の個体数は、例えば、それら飛行物の飛行中にカウントする。 At present, we may want to investigate the number of flying objects such as birds for various purposes. For example, as part of environmental protection activities, it is conceivable to investigate the number of wild birds to understand the current state of wildlife. For example, the number of flying objects is counted during the flight of the flying objects.
空間を飛行している飛行物をカウントする方法としては、人間が飛行物の存在する場所に出向いて目視によりカウントする方法や、撮像装置を用いて飛行物を撮像しておき、人間が撮像画像を見てカウントする方法が考えられる。また、飛行物を写した撮像画像に対してパターン認識などの画像処理技術を適用することで、撮像画像に写った飛行物の個体数を推定する方法も考えられる。例えば、カウントしたい飛行物の形状や色などを示すパターン情報を用意しておき、撮像画像からパターン情報に適合する領域を検出し、検出した領域の数を飛行物の個体数と推定する方法が考えられる。 As a method of counting the flying objects flying in the space, a person goes to a place where the flying object is present and counts by visual observation, or a flying object is imaged using an imaging device, and the human image is captured. A method of counting by looking at can be considered. Also, a method of estimating the number of flying objects captured in the captured image by applying an image processing technique such as pattern recognition to the captured image capturing the flying object is also conceivable. For example, there is a method in which pattern information indicating the shape, color, etc. of a flying object to be counted is prepared, a region that matches the pattern information is detected from a captured image, and the number of detected regions is estimated as the number of flying objects. Conceivable.
なお、移動体がそれぞれ画面の中央に表示されるように2台のビデオカメラの方位角と仰角を制御し、移動体と2台のビデオカメラとを結ぶ2本の直線の方程式を算出し、移動体の3次元座標を算出する位置計測システムが提案されている。また、撮像画像から野鳥の飛来数を推定し、飛来数が閾値より大きい場合、現在実施している鳥害対策を異なる鳥害対策に変更するよう制御する鳥害防止装置が提案されている。 The azimuth and elevation angles of the two video cameras are controlled so that the moving body is displayed in the center of the screen, and the equations of two straight lines connecting the moving body and the two video cameras are calculated. A position measurement system that calculates three-dimensional coordinates of a moving body has been proposed. Further, there has been proposed a bird damage prevention apparatus that estimates the number of wild bird arrivals from a captured image and controls to change the currently implemented bird damage countermeasure to a different bird damage countermeasure when the number of arrivals is larger than a threshold value.
ところで、飛行物の個体数の調査においては、繁殖地(コロニー)から一斉に飛び立つ野鳥の群れなど、多数の飛行物を含む集団を調査したいことがある。しかし、そのような多数の飛行物を撮像すると、撮像した画像には奥行き方向に複数の飛行物が重なって写ることがある。そのため、形状や色を示すパターン情報に適合する領域を撮像画像から抽出するという従来の画像処理方法では、重なって写った複数の飛行物を区別することが難しく、撮像画像に写った飛行物の個体数を精度よく推定することが難しかった。 By the way, in the survey of the number of flying objects, there is a case where it is desired to investigate a group including a large number of flying objects such as a flock of wild birds flying all at once from a breeding place (colony). However, when such a large number of flying objects are imaged, a plurality of flying objects may be superimposed on the captured image in the depth direction. For this reason, in the conventional image processing method of extracting a region that matches the pattern information indicating the shape and color from the captured image, it is difficult to distinguish a plurality of flying objects that are overlapped. It was difficult to estimate the population accurately.
一側面では、複数の飛行物を写した撮像画像を処理する情報処理装置が提供される。情報処理装置は、記憶部と演算部とを有する。記憶部は、飛行物の重なり数が異なる複数のサンプル画像それぞれについて、明るさが閾値未満の領域に囲まれており、明るさが閾値以上であるスポット領域の数と、当該サンプル画像に写った飛行物の数とを含むサンプル情報を記憶する。演算部は、撮像画像に含まれるスポット領域の数を算出し、複数のサンプル画像に対応するサンプル情報のうち、算出したスポット領域の数に応じたサンプル情報を選択し、選択したサンプル情報が示す飛行物の数に基づいて、撮像画像に写る飛行物の数を推定する。 In one aspect, an information processing apparatus is provided that processes captured images obtained by capturing a plurality of flying objects. The information processing apparatus includes a storage unit and a calculation unit. For each of a plurality of sample images with different numbers of overlapping objects, the storage unit is surrounded by an area whose brightness is less than the threshold, and the number of spot areas whose brightness is greater than or equal to the threshold and the sample image Sample information including the number of flying objects is stored. The calculation unit calculates the number of spot regions included in the captured image, selects sample information corresponding to the calculated number of spot regions from sample information corresponding to a plurality of sample images, and the selected sample information indicates Based on the number of flying objects, the number of flying objects in the captured image is estimated.
また、一側面では、複数の飛行物を写した撮像画像を処理するコンピュータによる画像処理方法が提供される。画像処理方法では、撮像画像から、明るさが閾値未満の領域に囲まれており、明るさが閾値以上であるスポット領域の数を算出する。それぞれがサンプル画像のスポット領域の数と当該サンプル画像に写った飛行物の数とを含む、飛行物の重なり数が異なる複数のサンプル画像に対応するサンプル情報の中から、算出したスポット領域の数に応じたサンプル情報を選択する。選択したサンプル情報が示す飛行物の数に基づいて、撮像画像に写る飛行物の数を推定する。 In one aspect, an image processing method by a computer that processes captured images of a plurality of flying objects is provided. In the image processing method, the number of spot regions that are surrounded by an area with brightness less than the threshold and whose brightness is equal to or greater than the threshold is calculated from the captured image. Depending on the number of spot areas calculated from sample information corresponding to multiple sample images with different number of overlapping objects, including the number of spot areas in the sample image and the number of objects in the sample image. Select sample information. Based on the number of flying objects indicated by the selected sample information, the number of flying objects shown in the captured image is estimated.
また、一側面では、複数の飛行物を写した撮像画像を処理するためのプログラムが提供される。プログラムを実行するコンピュータは、撮像画像から、明るさが閾値未満の領域に囲まれており、明るさが閾値以上であるスポット領域の数を算出する。それぞれがサンプル画像のスポット領域の数と当該サンプル画像に写った飛行物の数とを含む、飛行物の重なり数が異なる複数のサンプル画像に対応するサンプル情報の中から、算出したスポット領域の数に応じたサンプル情報を選択する。選択したサンプル情報が示す飛行物の数に基づいて、撮像画像に写る飛行物の数を推定する。 In one aspect, a program for processing a captured image in which a plurality of flying objects are captured is provided. The computer that executes the program calculates the number of spot areas that are surrounded by areas whose brightness is less than the threshold and whose brightness is greater than or equal to the threshold from the captured image. Depending on the number of spot areas calculated from sample information corresponding to multiple sample images with different number of overlapping objects, including the number of spot areas in the sample image and the number of objects in the sample image. Select sample information. Based on the number of flying objects indicated by the selected sample information, the number of flying objects shown in the captured image is estimated.
一側面では、撮像画像に写る飛行物の数の推定精度が向上する。 In one aspect, the estimation accuracy of the number of flying objects shown in the captured image is improved.
以下、本実施の形態を図面を参照して説明する。
[第1の実施の形態]
図1は、第1の実施の形態の情報処理装置を示す図である。情報処理装置10は、複数の飛行物を写した撮像画像13を処理する。撮像画像13は、例えば、情報処理装置10に接続された1またはそれ以上の撮像装置によって生成されて情報処理装置10に入力される。撮像される飛行物は、野鳥などの飛行生物でもよいし人工物でもよい。例えば、撮像画像13を生成する撮像装置と情報処理装置10とが、野鳥の繁殖地の近くに設置されて、繁殖地から飛び立つ野鳥の個体数を調査するために用いられる。
Hereinafter, the present embodiment will be described with reference to the drawings.
[First Embodiment]
FIG. 1 is a diagram illustrating the information processing apparatus according to the first embodiment. The
情報処理装置10は、記憶部11と演算部12を有する。記憶部11は、RAM(Random Access Memory)などの揮発性メモリでもよいし、HDD(Hard Disk Drive)やフラッシュメモリなどの不揮発性記憶装置でもよい。演算部12は、CPU(Central Processing Unit)やDSP(Digital Signal Processor)などのプロセッサでもよいし、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などのその他の電子回路でもよい。プロセッサは、例えば、メモリに記憶されたプログラムを実行する。プロセッサは、プログラムの命令を実行するための演算器やレジスタの他に、画像処理のための専用の電子回路を含んでいてもよい。
The
記憶部11は、奥行き方向の飛行物の重なり数(例えば、層数)が異なる複数のサンプル画像それぞれについて、サンプル情報を記憶する。例えば、記憶部11は、サンプル画像#1に対応するサンプル情報11aと、サンプル画像#2に対応するサンプル情報11bと、サンプル画像#3に対応するサンプル情報11cを記憶する。例えば、サンプル画像#1は重なり数が2であり、サンプル画像#2は重なり数が3であり、サンプル画像#3は重なり数が4である。各サンプル情報は、サンプル画像に含まれるスポット領域の数と、サンプル画像に写った飛行物の数とを含む。スポット領域は、明るさが閾値未満の領域(例えば、輝度が閾値未満である画素が連続している領域)に囲まれている、明るさが閾値以上の領域(例えば、輝度が閾値以上である画素が連続している領域)である。スポット領域として検出する領域は、一定の画素数以上の大きさのものに限定してもよい。
The memory |
サンプル画像#1〜#3は、シミュレーションによって生成された画像でもよいし、実際の飛行物を撮像した画像であってもよい。記憶部11は、サンプル情報11a,11b,11cを記憶していればよく、サンプル画像#1〜#3を記憶していなくてもよい。例えば、情報処理装置10以外の装置が、シミュレーションによって得られたサンプル画像#1〜#3からサンプル情報11a,11b,11cを生成しておき、情報処理装置10にサンプル情報11a,11b,11cを格納するようにしてもよい。
The
演算部12は、撮像画像13を取得し、画像処理によって撮像画像13に含まれるスポット領域の数を算出する。そして、演算部12は、記憶部11に記憶されたサンプル情報11a,11b,11cのうち、撮像画像13から算出したスポット領域の数に応じたサンプル情報(例えば、サンプル情報11b)を選択する。演算部12は、選択したサンプル情報が示す飛行物の数に基づいて、撮像画像13に写る飛行物の数を推定する。
The
例えば、演算部12は、撮像画像13を生成した撮像装置と飛行物との間の距離、および、撮像画像13の大きさの少なくとも一方に基づいて、各サンプル情報が示すスポット領域の数を補正する。そして、演算部12は、サンプル情報毎の補正結果と撮像画像13から算出したスポット領域の数とを比較することで、サンプル情報を選択する(例えば、両者が最も近くなるサンプル情報を選択する)。撮像装置と飛行物との間の距離は、2台の撮像装置を用いて生成された2つの撮像画像における飛行物が写っている位置の違いから三角測量の方法によって算出することもできるし、画像上の飛行物の大きさから推定することもできる。また、例えば、演算部12は、選択したサンプル情報が示す飛行物の数を、撮像装置と飛行物との距離および撮像画像の大きさの少なくとも一方に基づいて補正し、補正結果を撮像画像13に写る飛行物の数と推定する。
For example, the
なお、サンプル情報11a,11b,11cは、サンプル画像において明るさが閾値以上である領域の占める割合を示す明るさ値を更に含んでいてもよい。その場合、演算部12は、撮像画像13の明るさ値を算出し、撮像画像13のスポット領域の数と撮像画像13の明るさ値とに応じたサンプル情報を選択することもできる。例えば、演算部12は、明るさ値が撮像画像13の明るさ値と近く(例えば、両者の差が所定値以下であり)、かつ、補正したスポット領域の数が撮像画像13のスポット領域の数と近い(例えば、両者の差が所定値以下である)サンプル情報を選択することが考えられる。
Note that the
また、記憶部11には、奥行き方向の飛行物の重なり数と飛行物の飛行方向との組み合わせが異なる複数のサンプル画像それぞれについて、サンプル情報を記憶してもよい。その場合、演算部12は、撮像画像13に写る飛行物の飛行方向を判定し、判定した飛行方向に基づいて、選択するサンプル情報の候補を絞り込むこともできる。飛行方向は、例えば、同じ撮像装置が異なるタイミングで生成した2以上の撮像画像から、画像上での飛行物の位置や大きさの変化を検出することで、判定することが可能である。これにより、飛行方向によってスポット領域の現れ方が異なるような飛行物にも対応できる。
In addition, the
第1の実施の形態の情報処理装置10によれば、奥行き方向に複数の飛行物が重なることによって画像に現れるスポット領域の数と、画像に写る飛行物の数との関係を示す情報が参照される。これにより、撮像画像13の奥行き方向に複数の飛行物が重なって写っていても(例えば、飛行物の集団が複数の層を形成して飛行していても)、撮像画像13のスポット領域の数から、飛行物の数を精度よく推定することができる。なお、以下に説明する第2の実施の形態では、撮像画像に写る鳥の数を推定する例を挙げる。
According to the
[第2の実施の形態]
図2は、第2の実施の形態の情報処理システムを示す図である。第2の実施の形態の情報処理システムは、空中を飛行する鳥の群れ(例えば、繁殖地から飛び立つ鳥の群れ)を撮像した撮像画像から、撮像画像に写る鳥の数を推定する。この情報処理システムは、例えば、環境保護活動の一環として鳥の個体数を調査するために用いられる。この情報処理システムは、カメラ21,22、シミュレーション装置100および監視装置200を含む。カメラ21,22および監視装置200は、鳥の生息地近辺に設置され、シミュレーション装置100は、鳥の生息地から遠くの場所に設置される。
[Second Embodiment]
FIG. 2 illustrates an information processing system according to the second embodiment. The information processing system according to the second embodiment estimates the number of birds appearing in a captured image from a captured image obtained by capturing a flock of birds flying in the air (for example, a flock of birds flying from a breeding ground). This information processing system is used, for example, to investigate the number of birds as part of environmental protection activities. This information processing system includes
カメラ21,22は、静止画像(または、動画像でもよい)を生成する撮像装置であり、監視装置200と接続されている。カメラ21,22は、空中を飛行する鳥の群れを撮像し、撮像画像を監視装置200に出力する。カメラ21,22は、一定距離だけ離すと共に、光軸が互いに平行でレンズ面が同じ方向を向くように設置される。2台のカメラをこのように設置することで、鳥の群れとカメラ21,22の間の距離を、2つの撮像画像から算出することができる(距離算出の詳細は後述する)。また、カメラ21,22は、空中に向かって仰角(水平面と光軸との間の角度)が一定になるように設置される。
The
屋外で鳥の群れを自動的に撮像するために、カメラ21,22は、鳥の群れを示す可能性のある影を視野角内に検出したときのみ、撮像画像を生成して監視装置200に提供するようにしてもよい。静止画像を生成する場合、カメラ21,22は、少なくとも鳥の群れを示す可能性のある影を検出したとき、所定の時間間隔(例えば、数百ミリ秒から数秒程度)で連続して複数の撮像画像を生成し、監視装置200に提供する。撮像タイミングの異なる複数の撮像画像を利用することで、カメラ21,22に対する鳥の飛行方向を判定することが可能となる。なお、カメラ21,22は、遠隔地から仰角を指示できるように、仰角を変えるステージを備えていてもよい。また、監視装置200には、3台以上のカメラを接続してもよい。また、後述するように三角測量以外の方法で鳥との距離を推定できる場合には、監視装置200に接続するカメラを1台とすることもできる。
In order to automatically capture the flock of birds outdoors, the
シミュレーション装置100は、ユーザが操作する端末装置としてのコンピュータである。ただし、シミュレーション装置100を、端末装置からアクセスされるサーバコンピュータとすることもできる。シミュレーション装置100は、三次元モデルを生成できるCAD(Computer Aided Design)ソフトウェアを用いて、空中を飛行する鳥の群れの射影をシミュレーションする。シミュレーションは、複数の鳥の配置(例えば、何層に分かれて複数の鳥が飛行しているか)や鳥の群れを見る方向などの条件を変えて、複数通りについて行う。そして、シミュレーション装置100は、シミュレーション結果から、鳥の群れを見る方向と鳥の群れの射影がもつ特徴と鳥数の関係を示す参照データを生成する。参照データは、監視装置200に提供されて鳥数の推定のために利用される。
The
監視装置200は、カメラ21,22から取得した撮像画像を用いて、飛行する鳥の数を推定するコンピュータである。監視装置200は、ユーザインタフェースを備える端末装置であってもよいし、端末装置からネットワーク30を介してアクセスされるものであってもよい。監視装置200は、カメラ21,22の仰角やカメラ21,22に対する鳥の群れの飛行方向などの撮像条件を確認すると共に、撮像画像から鳥の群れの射影がもつ特徴(例えば、影がある領域と影がない空の領域との間の関係)を抽出する。そして、監視装置200は、シミュレーション装置100によって生成された参照データと、撮像条件および撮像画像から抽出された特徴とを比較して、撮像画像に写る鳥の数を推定する。
The
なお、シミュレーション装置100が生成した参照データは、監視装置200を鳥の生息地近くに配置する前に監視装置200が備える不揮発性の記憶装置に記録しておいてもよいし、ネットワーク30経由で監視装置200に提供してもよい。また、参照データは、可搬記録媒体に記録し、配置された後の監視装置200が可搬記録媒体から読み出すようにしてもよい。また、監視装置200の鳥数の推定結果は、ネットワーク30経由で所定のコンピュータに自動的に報告されるようにしてもよいし、ユーザが監視装置200の備える入出力装置を直接操作して確認するようにしてもよい。よって、シミュレーション装置100および監視装置200は、参照データの提供方法や鳥数の報告方法に応じて、ネットワーク30に接続されることもあるし、接続されないこともある。以下では、シミュレーション装置100と監視装置200が、ネットワーク30に接続されているとする。
Note that the reference data generated by the
図3は、監視装置のハードウェア例を示すブロック図である。監視装置200は、CPU201、RAM202、HDD203、画像信号処理部204、入力信号処理部205、ディスクドライブ206、通信部207およびインタフェース208を有する。上記の各ユニットは、バスに接続されている。なお、CPU201は第1の実施の形態の演算部12の一例であり、RAM202は第1の実施の形態の記憶部11の一例である。
FIG. 3 is a block diagram illustrating an example of hardware of the monitoring device. The
CPU201は、プログラムの命令を実行する演算器を含むプロセッサである。CPU201は、HDD203に記憶されているプログラムやデータの少なくとも一部をRAM202にロードし、プログラムを実行する。なお、CPU201は複数のプロセッサコアを備えてもよく、監視装置200は複数のプロセッサを備えてもよく、以下で説明する処理を複数のプロセッサまたはプロセッサコアを用いて並列実行してもよい。
The
RAM202は、CPU201が実行するプログラムや計算に用いられるデータを一時的に記憶する揮発性メモリである。なお、監視装置200は、RAM以外の種類のメモリを備えてもよく、複数個の揮発性メモリを備えてもよい。
The
HDD203は、OS(Operating System)やファームウェアやアプリケーションソフトウェアなどのソフトウェアのプログラム、および、データを記憶する不揮発性記憶装置である。なお、監視装置200は、フラッシュメモリやSSD(Solid State Drive)などの他の種類の記憶装置を備えてもよく、複数の不揮発性記憶装置を備えてもよい。
The
画像信号処理部204は、CPU201からの命令に従って、監視装置200に接続されたディスプレイ23に画像を出力する。ディスプレイ23としては、CRT(Cathode Ray Tube)ディスプレイや液晶ディスプレイなどを用いることができる。
The image
入力信号処理部205は、監視装置200に接続された入力デバイス24から入力信号を取得し、CPU201に通知する。入力デバイス24としては、マウスやタッチパネルなどのポインティングデバイス、キーボードなどを用いることができる。
The input
ディスクドライブ206は、記録媒体25に記録されたプログラムやデータを読み取る駆動装置である。記録媒体25として、例えば、フレキシブルディスク(FD:Flexible Disk)やHDDなどの磁気ディスク、CD(Compact Disc)やDVD(Digital Versatile Disc)などの光ディスク、光磁気ディスク(MO:Magneto-Optical disk)を使用できる。ディスクドライブ206は、CPU201からの命令に従って、記録媒体25から読み取ったプログラムやデータをRAM202またはHDD203に格納する。
The
通信部207は、ネットワーク30を利用して他のコンピュータ(例えば、シミュレーション装置100)と通信を行えるインタフェースである。通信部207は、有線網に接続する有線インタフェースでもよいし、無線網に接続する無線インタフェースでもよい。
The
インタフェース208は、カメラ21,22と接続される端子を備える。インタフェース208とカメラ21,22との接続には、USB(Universal Serial Bus)ケーブルなどのデジタル信号ケーブルを用いることができる。インタフェース208は、カメラ21,22から撮像画像を取得して、RAM202またはHDD203に格納する。
The
なお、シミュレーション装置100も、監視装置200と同様のハードウェアを用いて実現できる。ただし、シミュレーション装置100は、ディスクドライブ206やインタフェース208を備えていなくてもよく、サーバコンピュータである場合は、画像信号処理部204や入力信号処理部205を備えていなくてもよい。また、監視装置200は、ディスクドライブ206を備えていなくてもよく、他のコンピュータからアクセス可能である場合は、画像信号処理部204や入力信号処理部205を備えていなくてもよい。
The
図4は、撮像方向と鳥の形状の関係例を示す図である。カメラ21,22が同じ鳥の群れを撮像した場合であっても、鳥の群れをどの方向から撮るかによって、撮像画像に写る鳥の群れの射影は異なる。図4の例は、1層で飛行する6羽の鳥の群れを、真下から(仰角90°で)撮像した場合と、正面・横・斜めの3方向からそれぞれ水平に(仰角0°で)撮像した場合の、撮像画像に写る鳥の群れの射影を示している。
FIG. 4 is a diagram illustrating an example of the relationship between the imaging direction and the bird shape. Even when the
鳥の群れを真下から撮ると、図4の右下に示すように、これら6羽の鳥が互いに離れて写る。鳥の群れを飛行方向に対して正面から水平に撮ると、図4の右上に示すように、ある鳥とその後ろに続いて飛行する他の鳥とが、少なくとも部分的に重なって写る。鳥の群れを飛行方向に対して横から水平に撮ると、図4の左下に示すように、ある鳥とその横に並んで飛行する他の鳥とが、少なくとも部分的に重なって写る。鳥の群れを飛行方向に対して斜め45°(図4では鳥の左前方)から水平に撮ると、図4の左上に示すように、ある鳥とその斜め後ろに飛行する他の鳥とが、少なくとも部分的に重なって写る。 Taking a flock of birds from directly below, these six birds are shown apart from each other, as shown in the lower right of FIG. When taking a flock of birds horizontally from the front with respect to the direction of flight, as shown in the upper right of FIG. 4, a bird and other birds that fly behind it appear at least partially overlapping. If a flock of birds is taken horizontally from the direction of flight, as shown in the lower left of FIG. 4, a bird and other birds flying side by side appear to overlap at least partially. If a flock of birds is taken horizontally from an angle of 45 ° with respect to the flight direction (left front of the bird in FIG. 4), as shown in the upper left of FIG. 4, one bird and other birds flying diagonally behind it , At least partially overlap.
このように、撮像画像上での鳥の重なり方は、飛行方向に対して正面・横・斜めの何れの方向から鳥の群れを撮像するかによって異なる。また、鳥の重なり方は、鳥の群れを真下から撮ったか、水平方向から撮ったか、その中間の角度で撮ったかなど、仰角によっても異なる。また、鳥の重なり方は、複数の鳥が水平面に対して垂直方向に複数の層を形成して飛行し得る場合に、形成される層の数によっても異なる。また、鳥の重なり方は、複数の鳥が先頭から後ろに向かって複数の列を形成して飛行し得る場合に、形成される列の数によっても異なる。そこで、シミュレーション装置100は、参照データを生成するにあたって、鳥の群れの層数・列数や、鳥の飛行方向に対する撮像方向(正面・横・斜め)・仰角を変えながら、鳥の群れの射影をシミュレーションする。
As described above, how birds overlap on the captured image differs depending on whether the flock of birds is imaged from the front, side, or diagonal direction with respect to the flight direction. Also, how birds overlap is also different depending on the elevation angle, such as whether the flock of birds was taken from directly below, taken from the horizontal direction, or at an intermediate angle. In addition, the way in which birds overlap is different depending on the number of layers formed when a plurality of birds can fly by forming a plurality of layers in a direction perpendicular to the horizontal plane. Further, the way in which birds overlap is also different depending on the number of rows formed when a plurality of birds can fly in a plurality of rows from the top to the back. Therefore, when generating the reference data, the
図5は、層数と明るさ・光スポット数の関係例を示す図である。鳥の群れが水平面に対して垂直方向に複数の層を形成して飛行しているとき、カメラ21,22が仰角90°で空を見上げると、撮像画像の奥行き方向に複数の鳥が重なって写る。
FIG. 5 is a diagram illustrating a relationship example between the number of layers and the number of brightness / light spots. When flocks of birds are flying in a plurality of layers in a direction perpendicular to the horizontal plane, when the
このとき、ある層の鳥と別の層の鳥とが、撮像画像上で厳密に重なって写ることは少なく、少しずれて(部分的に重なって)写ることが多い。このため、鳥の群れにおける層数が増えるほど、撮像画像の明るさが低下すると共に、光スポットの数が増加する。 At this time, a bird in one layer and a bird in another layer rarely overlap each other on the captured image, and often appear slightly shifted (partially overlap). For this reason, as the number of layers in the flock increases, the brightness of the captured image decreases and the number of light spots increases.
撮像画像の明るさは、自然光が遮られないことで輝度が閾値以上となった画素(明るい画素)と、鳥により自然光が遮られることで輝度が閾値未満となった画素(暗い画素)との比を示す。撮像画像の明るさを示す値は、例えば、明るい画素の数/暗い画素の数、または、明るい画素の数/(明るい画素の数+暗い画素の数)のように算出される。層数が増えるほど、鳥が写る領域が大きくなり空が写る領域が小さくなるため、撮像画像の明るさが低下する。また、光スポットは、暗い画素に囲まれた明るい画素からなる領域であって、大きさが閾値以上のものである。層数が増えるほど、ある層の鳥の射影と別の層の鳥の射影によって囲まれた領域が撮像画像に多く現れ、光スポットの数が増加する。 The brightness of the captured image consists of pixels whose brightness is above the threshold because natural light is not blocked (bright pixels) and pixels whose brightness is below the threshold because dark light is blocked by birds (dark pixels). Indicates the ratio. The value indicating the brightness of the captured image is calculated as, for example, the number of bright pixels / the number of dark pixels, or the number of bright pixels / (the number of bright pixels + the number of dark pixels). As the number of layers increases, the area in which the bird is photographed increases and the area in which the sky is photographed decreases, so the brightness of the captured image decreases. The light spot is a region composed of bright pixels surrounded by dark pixels, and has a size equal to or larger than a threshold value. As the number of layers increases, a region surrounded by the projection of a bird in one layer and the projection of a bird in another layer appears more in the captured image, and the number of light spots increases.
一例として、図5の(A)は、8羽の鳥が1層で飛行する群れを、仰角90°から撮像した画像を示している。(A)の撮像画像は光スポットを含まない。図5の(B)は、1層目に8羽の鳥が飛行し2層目に7羽の鳥が飛行する群れ、すなわち、15羽の鳥が2層で飛行する群れを、仰角90°から撮像した画像を示している。(B)の撮像画像は光スポットを含まない一方、(A)の撮像画像に比べて明るさが減少している。 As an example, FIG. 5A shows an image obtained by capturing a flock of eight birds flying in one layer from an elevation angle of 90 °. The captured image of (A) does not include a light spot. FIG. 5B shows a group of eight birds flying in the first layer and seven birds flying in the second layer, that is, a group of fifteen birds flying in two layers. The image imaged from is shown. The captured image of (B) does not include a light spot, but the brightness is reduced as compared with the captured image of (A).
図6は、層数と明るさ・光スポット数の関係例を示す図(続き)である。図6の(C)は、1層目に8羽の鳥が飛行し2層目に7羽の鳥が飛行し3層目に8羽の鳥が飛行する群れ、すなわち、23羽の鳥が3層で飛行する群れを、仰角90°から撮像した画像を示している。(C)の撮像画像は、7個の光スポットを含み、また、前述の(B)の撮像画像に比べて鳥の射影の密度が高くなり明るさが減少している。図6の(D)は、1層目に8羽の鳥が飛行し2層目に7羽の鳥が飛行し3層目に8羽の鳥が飛行し4層目に7羽の鳥が飛行する群れ、すなわち、30羽の鳥が4層で飛行する群れを、仰角90°から撮像した画像を示している。(D)の撮像画像は、13個の光スポットを含み、また、前述の(C)の撮像画像に比べて更に鳥の射影の密度が高くなり明るさが減少している。 FIG. 6 is a diagram (continued) showing an example of the relationship between the number of layers and the number of brightness / light spots. FIG. 6C shows a group of eight birds flying in the first layer, seven birds flying in the second layer, and eight birds flying in the third layer, that is, 23 birds. The image which image | photographed the flock which flies by 3 layers from the elevation angle of 90 degrees is shown. The captured image (C) includes seven light spots, and the projection density of the bird is higher and the brightness is lower than the captured image (B) described above. In FIG. 6D, 8 birds fly to the 1st layer, 7 birds fly to the 2nd layer, 8 birds fly to the 3rd layer, and 7 birds fly to the 4th layer. The image which imaged the flock which flies, ie, the flock which 30 birds fly by 4 layers, from 90 degrees of elevation angles is shown. The captured image of (D) includes 13 light spots, and the projection density of the bird is further increased and the brightness is reduced as compared with the captured image of (C) described above.
このように、鳥の群れにおける層数は、撮像画像の明るさや撮像画像に現れる光スポットの数に影響する。そこで、監視装置200は、撮像画像から明るさや光スポット数を特徴情報として抽出し、層数や撮像画像に写った鳥の数を推定する。
Thus, the number of layers in the flock of birds affects the brightness of the captured image and the number of light spots appearing in the captured image. Therefore, the
図7は、鳥の群れにおける列数の変化例を示す図である。鳥の群れは、水平面内の飛行方向と垂直なライン上に複数の鳥が並ぶ(横に並ぶ)ことで、列を形成することがある。複数の列を形成して飛行する鳥の群れを、正面から仰角0°で撮像すると、撮像画像の奥行き方向に複数の鳥が重なって写る。なお、第2の実施の形態では、鳥の群れの列数は、先頭の1羽を除外してカウントすることとする。 FIG. 7 is a diagram illustrating an example of a change in the number of rows in a flock of birds. A flock of birds may form a row by arranging a plurality of birds on a line perpendicular to the flight direction in a horizontal plane. When a group of birds flying in a plurality of rows is imaged from the front at an elevation angle of 0 °, a plurality of birds are shown overlapping in the depth direction of the captured image. In the second embodiment, the number of rows of bird flocks is counted excluding the first bird.
一例として、図7の(A)は、6羽の鳥が1層・2列で飛行する群れを、仰角0°と仰角90°から撮像した画像を示している。仰角0°で撮像した画像上では、手前の列の鳥と奥の列の鳥とが重なって写っている。図7の(B)は、10羽の鳥が1層・3列で飛行する群れを、仰角0°と仰角90°から撮像した画像を示している。(B)の仰角0°で撮像した画像は、(A)の撮像画像よりも明るさが減少している。図7の(C)は、15羽の鳥が1層・4列で飛行する群れを、仰角0°と仰角90°から撮像した画像を示している。(C)の仰角0°で撮像した画像は、(B)の撮像画像よりも更に明るさが減少している。なお、図7の例では、仰角0°から撮像した画像には光スポットが現れていないが、鳥の配置によっては光スポットが現れることもある。 As an example, FIG. 7A shows an image obtained by capturing a group of six birds flying in one layer and two rows from an elevation angle of 0 ° and an elevation angle of 90 °. On the image captured at an elevation angle of 0 °, the birds in the front row and the birds in the back row are shown overlapping. FIG. 7B shows an image obtained by capturing a group of 10 birds flying in one layer and three rows from an elevation angle of 0 ° and an elevation angle of 90 °. The image captured at an elevation angle of 0 ° in (B) is less bright than the captured image in (A). FIG. 7C shows an image of a flock of 15 birds flying in one layer and four rows from an elevation angle of 0 ° and an elevation angle of 90 °. The image captured at an elevation angle of 0 ° in (C) is further reduced in brightness than the captured image in (B). In the example of FIG. 7, a light spot does not appear in an image captured from an elevation angle of 0 °, but a light spot may appear depending on the arrangement of birds.
このように、仰角0°で鳥の群れを撮像すると、列数が撮像画像の明るさや撮像画像に現れる光スポットの数に影響を与える。そこで、シミュレーション装置100は、鳥の群れの列数も変えながら、鳥の群れの射影をシミュレーションする。なお、以下に説明するシミュレーション方法では、参照データの量を抑制するため仰角=0°のときのみ列数を可変としているが、他の仰角のときに列数を可変にしてもよい。
Thus, when imaging a flock of birds at an elevation angle of 0 °, the number of columns affects the brightness of the captured image and the number of light spots appearing in the captured image. Therefore, the
図8は、シミュレーション装置と監視装置の機能例を示すブロック図である。
シミュレーション装置100は、モデル条件記憶部110、三次元モデル生成部120、参照画像処理部130および参照データ記憶部140を有する。モデル条件記憶部110および参照データ記憶部140は、シミュレーション装置100が備えるRAMやHDDに確保された記憶領域として実現できる。三次元モデル生成部120および参照画像処理部130は、プロセッサが実行するプログラムのモジュールとして実現できる。
FIG. 8 is a block diagram illustrating functional examples of the simulation apparatus and the monitoring apparatus.
The
モデル条件記憶部110は、鳥の群れを表した三次元モデルを生成して鳥の群れの射影をシミュレーションするための条件を示すモデル条件情報を記憶する。モデル条件情報には、どのような層数・列数をもつ鳥の群れのモデルを用意するかを示す情報、および、三次元モデル上でどの方向から鳥の群れを観察するかを示す情報が含まれる。
The model
三次元モデル生成部120は、三次元モデルを処理するCAD機能を備える。三次元モデル生成部120は、モデル条件記憶部110に記憶されたモデル条件情報に基づいて、仮想的な三次元空間に複数の鳥の形状を配置し、鳥の群れを表した三次元モデルを生成する。そして、三次元モデル生成部120は、モデル条件情報に基づいて、三次元モデル上に仮想的なカメラを配置し、その仮想的なカメラから見た鳥の群れの形状を表す参照画像を生成する。三次元モデル生成部120は、モデル条件情報に従って、鳥の群れの層数・列数や鳥の群れを観察する方向を変えながら、複数の参照画像を生成していく。
The three-dimensional
参照画像処理部130は、デジタル二次元画像を処理する画像処理機能を備える。参照画像処理部130は、三次元モデル生成部120が生成した複数の参照画像それぞれを解析し、特徴情報として参照画像の明るさおよび参照画像に現れる光スポットの数を算出する。また、参照画像処理部130は、各参照画像が生成されたときに三次元モデル上に配置されていた鳥の形状の数を三次元モデル生成部120に確認する。そして、参照画像処理部130は、参照画像毎に、明るさ・光スポット数などの特徴情報および鳥数を示す参照データを生成し、参照データを参照データ記憶部140に格納する。
The reference
参照データ記憶部140は、参照画像処理部130が生成した参照データを記憶する。参照データ記憶部140に記憶された参照データは、監視装置200を鳥の生息地近くに設置する前または設置後に、監視装置200に複製される。参照データを複製する方法としては、ネットワーク30を用いてシミュレーション装置100から監視装置200に転送する方法や、CDやDVDなどの可搬記録媒体を利用する方法などが考えられる。なお、参照画像は、第1の実施の形態で説明したサンプル画像の一例であり、参照データは、第1の実施の形態で説明したサンプル情報11a,11b,11cの一例である。
The reference
監視装置200は、参照データ記憶部210、撮像画像取得部220、撮像画像処理部230および鳥数算出部240を有する。参照データ記憶部210は、監視装置200が備えるRAM202やHDD203などの記憶装置に確保された記憶領域として実現できる。撮像画像取得部220、撮像画像処理部230および鳥数算出部240は、CPU201が実行するプログラムのモジュールとして実現できる。
The
参照データ記憶部210は、シミュレーション装置100が生成した参照データを記憶する。また、参照データ記憶部210は、参照データとその参照データが生成される元になった参照画像の撮像条件とを関連付けるため、シミュレーション装置100がもつモデル条件情報の少なくとも一部を記憶する。ただし、シミュレーション装置100から複製される参照データに、撮像条件の情報を埋め込むようにしてもよい。
The reference
撮像画像取得部220は、インタフェース208を介してカメラ21,22から撮像画像のデジタル信号を取得し、撮像画像を撮像画像処理部230に提供する。このとき、撮像画像取得部220は、カメラ21が時刻tに撮像した画像と、カメラ21が時刻tから所定時間後(または、所定時間前)に撮像した画像と、カメラ22が時刻t(または、時刻tに近い時刻)に撮像した画像とを提供する。カメラ21,22から取得する撮像画像が動画像である場合、撮像画像取得部220は、動画像から上記の静止画像を切り出す。
The captured
また、撮像画像取得部220は、カメラ21,22の設置状態を示す情報を撮像画像処理部230に提供する。設置状態の情報には、カメラ21,22の距離(光軸間距離)とカメラ21,22の仰角とが含まれる。光軸間距離および仰角の情報は、カメラ21,22を鳥の生息地近くに設置するにあたって監視装置200に設定される。ただし、カメラ21,22が仰角を自動調整するステージを備えている場合、撮像画像取得部220は、現在の仰角の情報をカメラ21,22から取得できることがある。
The captured
撮像画像処理部230は、デジタル二次元画像を処理する画像処理機能を備える。撮像画像処理部230は、撮像画像取得部220から取得した撮像画像を解析し、特徴情報として撮像画像の明るさおよび撮像画像に現れる光スポットの数を算出する。また、撮像画像処理部230は、撮像タイミングの異なる2つの撮像画像から、カメラ21,22に対する鳥の群れの飛行方向を判定し、異なるカメラで生成された2つの撮像画像から、カメラ21,22と鳥の群れとの間の距離を三角測量の方法で算出する。撮像画像処理部230は、明るさ・光スポット数などの特徴情報、および、飛行方向・仰角などの撮像条件の情報を含む撮像データを生成し、撮像データを鳥数算出部240に提供する。
The captured
鳥数算出部240は、参照データ記憶部210に記憶された参照データと、撮像画像処理部230から取得する撮像データとに基づいて、撮像画像に写った鳥の数を推定する。具体的には、鳥数算出部240は、シミュレーションによって用意された複数の参照画像を、飛行方向や仰角などの撮像条件が共通する(同一または近い)ものに絞り込む。そして、鳥数算出部240は、絞り込んだ参照画像の中から、明るさや光スポット数などの特徴が共通する(同一または近い)ものを選択し、選択した参照画像の鳥数を用いて、撮像画像の鳥数の概数を算出する。なお、明るさ・光スポット数の比較や、撮像画像の鳥数の推定では、カメラ21,22と鳥の群れとの間の距離などに応じて数値を適宜補正する。
The bird
図9は、三次元モデルにおける鳥とカメラの配置例を示す図である。三次元モデル生成部120が生成する三次元モデルでは、互いに直交するx軸・y軸・z軸によって定義される仮想的な三次元空間に、鳥の形状や仮想的なカメラが配置される。
FIG. 9 is a diagram illustrating an arrangement example of birds and cameras in the three-dimensional model. In the three-dimensional model generated by the three-dimensional
複数の鳥の形状を配置して群れをモデル化するにあたっては、以下のような鳥の群れの性質を考慮する。(a)各鳥は、仲間の鳥との距離が近すぎる場合、その仲間の鳥から離れようとする(引き離し:Separation)。(b)各鳥は、周りにいる仲間の鳥と同じ方向を向いて飛行しようとする(整列:Alignment)。(c)各鳥は、仲間の鳥との距離が近くなり過ぎない範囲で、群れの中心に近づこうとする(結合:Cohesion)。また、鳥は、その体の構造上、ほぼ水平に飛行することが多く、垂直方向への傾きは−20°〜+20°の範囲に収まることが多い。鳥の群れの性質については、例えば、次の論文にも記載されている(Craig Reynolds, "Flocks, Herds, and Schools: A Distributed Behavioral Model", Proc. of ACM SIGGRAPH '87 Conference, pp.25-34, 1987.)。 In order to model a flock by arranging a plurality of bird shapes, the following characteristics of the flock are considered. (A) When each bird is too close to the fellow bird, each bird tries to leave the bird (separation). (B) Each bird tries to fly in the same direction as the fellow birds around it (Alignment). (C) Each bird tries to approach the center of the flock within a range that is not too close to the fellow bird (Cohesion). Birds often fly almost horizontally due to their body structure, and the inclination in the vertical direction often falls within the range of -20 ° to + 20 °. The nature of the flock of birds is described, for example, in the following paper (Craig Reynolds, "Flocks, Herds, and Schools: A Distributed Behavioral Model", Proc. Of ACM SIGGRAPH '87 Conference, pp.25- 34, 1987.).
以上のような鳥の群れの性質を満たすように、複数の鳥の形状を配置して三次元モデルを生成する。このとき、群れの中心が原点(0,0,0)に位置し、各鳥はx軸の正方向を向いて水平に飛行しているようにする。なお、図9には簡略化のため1羽の鳥の形状のみ記載しているが、実際には複数の鳥の形状が仮想的な三次元空間に配置される。 A three-dimensional model is generated by arranging a plurality of bird shapes so as to satisfy the above-mentioned property of a flock of birds. At this time, the center of the flock is located at the origin (0, 0, 0), and each bird is flying in the horizontal direction facing the positive direction of the x axis. Although only one bird shape is shown in FIG. 9 for simplification, a plurality of bird shapes are actually arranged in a virtual three-dimensional space.
モデル化された鳥の群れは、仮想的なカメラによって複数の方向から観察される。仮想的なカメラは、それぞれ原点(0,0,0)を向くように配置される。図9には、x軸上の座標(20,0,0)の位置から仰角0°で鳥の群れを観察する仮想的なカメラと、y軸上の座標(0,20,0)の位置から仰角0°で鳥の群れを観察する仮想的なカメラと、z軸上の座標(0,0,−20)の位置から仰角90°で鳥の群れを観察する仮想的なカメラとが記載されている。各仮想的なカメラと原点との間の距離は、20に固定している。三次元モデル上での距離=1は、例えば、現実の距離1mに対応する。 The modeled flock of birds is observed from multiple directions by a virtual camera. The virtual cameras are arranged so as to face the origin (0, 0, 0), respectively. FIG. 9 shows a virtual camera that observes a flock of birds at an elevation angle of 0 ° from the position of coordinates (20, 0, 0) on the x axis, and the position of coordinates (0, 20, 0) on the y axis. Describes a virtual camera that observes a flock of birds at an elevation angle of 0 ° and a virtual camera that observes a flock of birds at an elevation angle of 90 ° from the position of coordinates (0, 0, −20) on the z-axis. Has been. The distance between each virtual camera and the origin is fixed at 20. The distance = 1 on the three-dimensional model corresponds to the actual distance 1 m, for example.
ここで、シミュレーションにおける仮想的なカメラの配置を決めるにあたり、カメラ21,22によって鳥の群れがどのような方向から観察され得るかを考える。まず、カメラ21,22は、鳥の群れよりも高い位置に設置される可能性は少ないと考えられる。そこで、シミュレーションにおいても、仮想的なカメラの仰角を、空を見上げる方向を正の角度とすると0°以上90°以下に設定する。また、カメラ21,22に対する鳥の群れの飛行方向としては、仰角が90°以外であるとき、以下の8通りが考えられる。
Here, in determining the placement of virtual cameras in the simulation, it is considered from which direction the flock of birds can be observed by the
(1)カメラに向かう方向(鳥の頭が手前に写る)
(2)カメラから遠ざかる方向(鳥の尾が手前に写る)
(3)カメラの視界を左から右に横切る方向(鳥の右翼が手前に写る)
(4)カメラの視界を右から左に横切る方向(鳥の左翼が手前に写る)
(5)光軸に対し左斜めにカメラに近づく方向(鳥の右前方が手前に写る)
(6)光軸に対し左斜めにカメラから遠ざかる方向(鳥の左後方が手前に写る)
(7)光軸に対し右斜めにカメラに近づく方向(鳥の左前方が手前に写る)
(8)光軸に対し右斜めにカメラから遠ざかる方向(鳥の右後方が手前に写る)
ただし、鳥の群れの射影を裏返しても明るさや光スポット数に影響しないことから、上記の8つのケースは、正面(1)(2),横(3)(4),斜め(5)(6)(7)(8)の3つに分類することが可能である。そこで、シミュレーションでは、各仰角について、鳥の群れの形状を「正面」,「横」,「斜め」に相当する3箇所から観察すればよい。
(1) Direction to the camera (bird's head is in front)
(2) Direction away from the camera (bird's tail is in front)
(3) Crossing the camera's field of view from left to right (the bird's right wing appears in the foreground)
(4) Direction to cross the camera view from right to left (bird's left wing appears in front)
(5) Direction approaching the camera diagonally to the left with respect to the optical axis (the right front of the bird appears in the foreground)
(6) The direction of moving away from the camera diagonally to the left with respect to the optical axis (the left rear of the bird appears in front)
(7) Direction approaching the camera diagonally to the right with respect to the optical axis (the left front of the bird appears in the foreground)
(8) Direction away from the camera obliquely to the right with respect to the optical axis (the right rear of the bird appears in front)
However, even if the projection of a flock of birds is turned over, the brightness and the number of light spots are not affected. 6) (7) and (8) can be classified. Therefore, in the simulation, for each elevation angle, the shape of the flock may be observed from three locations corresponding to “front”, “lateral”, and “oblique”.
なお、仰角が90°のときの飛行方向は、射影を回転しても明るさや光スポット数に影響しないことから、実質的に1通りしか存在しない。第2の実施の形態の以下の説明では、仰角90°で鳥の群れを撮像した場合の飛行方向を「横」として扱うこととする。 The flight direction when the elevation angle is 90 ° does not affect the brightness and the number of light spots even if the projection is rotated. In the following description of the second embodiment, the flight direction when imaging a flock of birds at an elevation angle of 90 ° is treated as “lateral”.
三次元モデルにおいて、仮想的なカメラから鳥の群れのモデルを観察することで、参照画像を生成することができる。このとき、原点を挟んで仮想的なカメラの反対側に、仮想的な光源を配置する。これにより、参照画像において、鳥が存在しない領域は輝度が閾値以上の明るい領域となり、鳥が存在する領域は輝度が閾値未満の暗い領域となる。参照画像から参照データを生成するにあたっては、明るい領域と暗い領域を区別できればよい。よって、三次元モデル生成部120は、参照画像としてカラー画像を生成してもよいし、グレースケール画像や輝度に応じて二値化した白黒画像を生成してもよい。
In a three-dimensional model, a reference image can be generated by observing a bird flock model from a virtual camera. At this time, a virtual light source is arranged on the opposite side of the virtual camera across the origin. As a result, in the reference image, a region where no bird is present is a bright region whose luminance is greater than or equal to a threshold, and a region where a bird is present is a dark region whose luminance is less than the threshold. In generating reference data from a reference image, it is only necessary to distinguish between a bright area and a dark area. Therefore, the three-dimensional
図10は、画像条件テーブルの例を示す図である。画像条件テーブル111は、シミュレーション装置100のモデル条件記憶部110に記憶されている。画像条件テーブル111は、層数、列数、仰角、方向および画像ID(Identification)の項目を含む。
FIG. 10 is a diagram illustrating an example of the image condition table. The image condition table 111 is stored in the model
層数の項目には、鳥の群れのモデルにおいて形成される層の数(z軸方向の重なり数)が設定される。図10の例では、1層から5層までの5通りの層数が挙げられている。列数の項目には、鳥の群れのモデルにおいて形成される列の数(x軸方向の重なり数)が設定される。図10の例では、1列から5列までの5通りの列数が挙げられている。仰角の項目には、仮想的なカメラの仰角が設定される。図10の例では、0°,30°,60°,90°の4通りの仰角が挙げられている。もちろん、45°など他の仰角を設定することも可能である。方向の項目には、「正面」,「横」,「斜め」のうち観察を要する1つ以上の方向が列挙される。画像IDの項目には、層数・列数・仰角・方向の組み合わせに対して、その条件で生成される参照画像を識別するための識別情報が設定される。 In the number of layers item, the number of layers formed in the bird flock model (the number of overlaps in the z-axis direction) is set. In the example of FIG. 10, five types of layers from 1 layer to 5 layers are listed. In the column number item, the number of columns formed in the bird flock model (the number of overlaps in the x-axis direction) is set. In the example of FIG. 10, five types of columns from 1 column to 5 columns are listed. In the item of elevation angle, the elevation angle of a virtual camera is set. In the example of FIG. 10, there are four elevation angles of 0 °, 30 °, 60 °, and 90 °. Of course, other elevation angles such as 45 ° can be set. The direction item lists one or more directions that require observation among “front”, “horizontal”, and “oblique”. In the image ID item, for the combination of the number of layers, the number of columns, the elevation angle, and the direction, identification information for identifying a reference image generated under the conditions is set.
層数と列数の組み合わせ毎に、鳥の群れのモデルが生成される。また、仰角と方向の組み合わせによって、仮想的なカメラの位置が決定される(仰角からz座標が決定され、方向からx座標とy座標が決定される)。そして、1つの鳥の群れのモデルと1つの仮想的なカメラの組み合わせに対し、1つの参照画像が生成されることになる。例えば、層数=1,列数=1,仰角=30°,方向=正面という条件で参照画像#1が生成され、層数=1,列数=2,仰角=0°,方向=横という条件で参照画像#9が生成される。
A bird flock model is generated for each combination of number of layers and number of columns. Further, the position of the virtual camera is determined by the combination of the elevation angle and the direction (the z coordinate is determined from the elevation angle, and the x coordinate and the y coordinate are determined from the direction). One reference image is generated for a combination of one bird flock model and one virtual camera. For example, the
ここで、第2の実施の形態では、図10に示すように、列数=1のモデルを観察するときは、仰角=30°,60°,90°に設定した仮想的なカメラを使用し、列数=2,3,4,5のモデルを観察するときは、仰角=0°に設定した仮想的なカメラを使用する。仰角が90°以外のときは、方向=正面,横,斜めの3通りで参照画像を生成し、仰角が90°のときは、方向=横の1通りで参照画像を生成する。よって、層数1つあたりの生成される参照画像は19枚であり、全部で95枚の参照画像が生成される。 Here, in the second embodiment, as shown in FIG. 10, when observing a model with the number of columns = 1, a virtual camera set to an elevation angle = 30 °, 60 °, 90 ° is used. When observing a model with the number of columns = 2, 3, 4, and 5, a virtual camera set to an elevation angle = 0 ° is used. When the elevation angle is other than 90 °, the reference image is generated in three ways: direction = front, side, and diagonal, and when the elevation angle is 90 °, the reference image is generated in one direction = side. Therefore, 19 reference images are generated per layer number, and 95 reference images are generated in total.
ただし、図10に示した参照画像の条件は一例であり、他の条件の参照画像を生成することも可能である。例えば、仰角=30°,60°,90°の仮想的なカメラで観察するモデルの列数は、所定の列数であればよく、1列でなくてもよい。また、列数=1のモデルを仰角=0°の仮想的なカメラで観察してもよいし、列数=2,3,4,5のモデルを仰角=30°,60°,90°の仮想的なカメラで観察してもよい。 However, the condition of the reference image shown in FIG. 10 is an example, and it is possible to generate a reference image with other conditions. For example, the number of columns of the model observed with a virtual camera with an elevation angle of 30 °, 60 °, and 90 ° may be a predetermined number and may not be one. In addition, a model with the number of columns = 1 may be observed with a virtual camera with an elevation angle = 0 °, and a model with the number of columns = 2,3,4,5 may have an elevation angle = 30 °, 60 °, 90 °. You may observe with a virtual camera.
図11は、カメラ座標テーブルの例を示す図である。カメラ座標テーブル112は、シミュレーション装置100のモデル条件記憶部110に記憶されている。カメラ座標テーブル112は、仰角、方向および座標の項目を含む。
FIG. 11 is a diagram illustrating an example of a camera coordinate table. The camera coordinate table 112 is stored in the model
仰角の項目には、画像条件テーブル111と同様に、仮想的なカメラの仰角が設定される。図11の例では、0°,30°,60°,90°の4つが挙げられている。方向の項目には、「正面」,「横」,「斜め」の何れかが設定される。ただし、前述のように、仰角=90°の場合の方向は「横」のみである。座標の項目には、仰角と方向の組み合わせに対して、どの位置に仮想的なカメラを配置すればよいかを示す座標が設定される。図11の例では、原点との距離が20になるように座標が設定されている。 Similar to the image condition table 111, a virtual camera elevation angle is set in the elevation angle item. In the example of FIG. 11, four of 0 °, 30 °, 60 °, and 90 ° are listed. In the direction item, any one of “front”, “horizontal”, and “oblique” is set. However, as described above, the direction when the elevation angle is 90 ° is only “horizontal”. In the coordinate item, a coordinate indicating where the virtual camera should be arranged with respect to the combination of the elevation angle and the direction is set. In the example of FIG. 11, the coordinates are set so that the distance from the origin is 20.
例えば、仰角=0°,方向=斜めという撮像条件を満たす位置として、座標(14.14,14.14,0)が設定される。この位置に配置された仮想的なカメラは、鳥の群れを左斜め45°から水平に撮像することになる。また、仰角=30°,方向=正面という撮像条件を満たす位置として、座標(17.32,0,−10)が設定される。この位置に配置された仮想的なカメラは、鳥の群れの正面を下30°から見上げて撮像することになる。また、仰角=60°,方向=横という撮像条件を満たす位置として、座標(0,10,−17.32)が設定される。この位置に配置された仮想的なカメラは、鳥の群れの左側面を下60°から見上げて撮像することになる。 For example, coordinates (14.14, 14.14, 0) are set as positions satisfying the imaging condition of elevation angle = 0 ° and direction = slanting. The virtual camera arranged at this position picks up a flock of birds horizontally from 45 ° diagonally to the left. Also, coordinates (17.32, 0, −10) are set as positions satisfying the imaging condition of elevation angle = 30 ° and direction = front. The virtual camera arranged at this position takes an image by looking up at the front of the flock of birds from below 30 °. Also, coordinates (0, 10, -17.32) are set as positions satisfying the imaging condition of elevation angle = 60 ° and direction = horizontal. The virtual camera arranged at this position takes an image by looking up the left side of the flock of birds from below 60 °.
図12は、撮像画像における鳥の群れが写った領域の例を示す図である。カメラ21,22が生成する撮像画像には、鳥が密集して写った領域が複数含まれていることがある。図12に示した撮像画像40には、このような領域が2つ存在する。監視装置200の撮像画像処理部230は、鳥が密集して写った領域を対象領域として切り出し、対象領域毎に鳥の数を推定する。例えば、撮像画像40から対象領域41,42が切り出され、対象領域41と対象領域42それぞれについて鳥の数が推定される。
FIG. 12 is a diagram illustrating an example of a region where a flock of birds is captured in a captured image. The captured images generated by the
ここで、対象領域は、輝度が閾値未満の暗い画素が密集してひと纏まりになっている領域である。撮像画像処理部230は、例えば、その領域内に一定の画素数以上の暗い画素が含まれており、かつ、矩形の枠に暗い画素がかからないように抽出できる範囲での最小の矩形の領域を、対象領域として検出する。ただし、その領域内の暗い画素と矩形の枠との間が少なくとも一定距離離れるように、余裕をもって矩形の領域を抽出してもよい。撮像画像40では、暗い画素の密集した領域が2つあり、輝度が閾値以上である明るい画素の領域が両者の間に広がっているため、両者は異なる対象領域として検出される。
Here, the target area is an area where dark pixels whose luminance is less than the threshold value are densely packed together. The captured
なお、図12および上記の説明では、対象領域の形状を矩形としたが、楕円形などの他の形状としてもよい。また、上記では、鳥数を推定するにあたって、撮像画像処理部230が撮像画像から対象領域を抽出することを説明したが、参照データを生成するにあたって、参照画像処理部130も参照画像から対象領域を抽出する処理を行う。ただし、参照画像から抽出される対象領域は、撮像画像と異なり原則として1つである。
In FIG. 12 and the above description, the shape of the target region is a rectangle, but may be another shape such as an ellipse. In the above description, the captured
図13は、カメラと鳥の間の距離の算出方法の例を示す図である。カメラ21,22の2台で生成された撮像画像を用いることで、撮像画像処理部230は、三角測量の方法によりカメラ21,22と鳥の群れとの間の距離を算出することができる。
FIG. 13 is a diagram illustrating an example of a method for calculating the distance between the camera and the bird. By using the captured images generated by the two
まず、撮像画像処理部230は、カメラ21で生成された撮像画像から鳥が写った暗い領域を検出し、検出した暗い領域と空が写った明るい領域の両方が含まれるような数百ピクセル程度の大きさの矩形領域(または、楕円領域)を、基準パターンとして検出する。基準パターンは、鳥数を算出する単位である対象領域またはその一部分であってもよい。次に、撮像画像処理部230は、カメラ22で生成された撮像画像から、基準パターンに最もマッチする領域を検出する。カメラ21,22それぞれから検出された領域は、同じ鳥が写ったものであると言うことができる。そして、撮像画像処理部230は、カメラ21の撮像画像に含まれる基準パターンの中心座標(x1,y1)と、カメラ22の撮像画像に含まれる基準パターンに対応する領域の中心座標(x2,y2)とを算出する。
First, the captured
その後、撮像画像処理部230は、中心座標(x1,y1)のx座標であるx1を、カメラ21の光軸に対する水平方向の角度θ1に変換し、中心座標(x2,y2)のx座標であるx2を、カメラ22の光軸に対する水平方向の角度θ2に変換する。ここで、撮像画像処理部230は、カメラ21,22の視野角や撮像画像の解像度に応じて決まる、撮像画像の中心からの画素数と光軸に対する角度との対応関係を予め知っているとする。撮像画像処理部230は、このように算出した角度θ1,θ2と光軸間距離lに基づいて、図13に示すようにカメラ21,22と鳥の群れとの間の距離rを算出する。すなわち、距離rは次の式から算出される:r×(tan(θ1)+tan(θ2))=l。
Thereafter, the captured
なお、撮像画像処理部230は、上記の三角測量以外の方法で距離rを算出できる場合もある。例えば、カメラ21が生成した撮像画像に1羽の鳥が他の鳥と重ならずに写っており、監視装置200に撮像距離と撮像画像上での鳥の大きさとの対応関係を示す情報が登録されている場合、撮像画像処理部230は、その1羽の鳥から距離rを推定できる。この場合、監視装置200には、少なくとも1台のカメラが接続されていればよい。
Note that the captured
図14は、参照データ生成の手順例を示すフローチャートである。このフローチャートが示す処理は、シミュレーション装置100において実行される。
(ステップS11)三次元モデル生成部120は、モデル条件記憶部110に記憶された画像条件テーブル111を参照して、鳥の群れの層数を1つ選択する。
FIG. 14 is a flowchart illustrating an exemplary procedure for generating reference data. The process shown in this flowchart is executed in the
(Step S <b> 11) The three-dimensional
(ステップS12)三次元モデル生成部120は、画像条件テーブル111を参照して、鳥の群れの列数を1つ選択する。
(ステップS13)三次元モデル生成部120は、仮想的な三次元空間に複数の鳥の形状を配置していき、ステップS11で選択した層数(z軸方向の重なり数)とステップS12で選択した列数(x軸方向の重なり数)とをもつ鳥の群れのモデルを生成する。y軸方向に並べる鳥の形状の数は、所定の数とすればよい。このとき、複数の鳥の形状の具体的な配置については、前述の鳥の群れの性質を満たすように三次元モデル生成部120が自動的に算出してもよいし、ユーザが指定するようにしてもよい。
(Step S <b> 12) The three-dimensional
(Step S13) The three-dimensional
(ステップS14)三次元モデル生成部120は、列数が所定の値(例えば、1列)であるか判断する。列数が所定値の場合、処理をステップS15に進める。列数が所定値でない(例えば、2列,3列,4列,5列である)場合、処理をステップS18に進める。
(Step S14) The three-dimensional
(ステップS15)三次元モデル生成部120は、モデル条件記憶部110に記憶されたカメラ座標テーブル112を参照して、仰角30°かつ方向=正面,横,斜めに対応する3点の座標を確認し、それら3点に仮想的なカメラを配置する。そして、三次元モデル生成部120は、各仮想的なカメラから見た参照画像を生成して画像IDを付与する。
(Step S15) The three-dimensional
(ステップS16)三次元モデル生成部120は、カメラ座標テーブル112を参照して、仰角60°かつ方向=正面,横,斜めに対応する3点の座標を確認し、それら3点に仮想的なカメラを配置する。そして、三次元モデル生成部120は、各仮想的なカメラから見た参照画像を生成して画像IDを付与する。
(Step S16) The three-dimensional
(ステップS17)三次元モデル生成部120は、カメラ座標テーブル112を参照して、仰角90°かつ方向=横に対応する座標を確認し、その点に仮想的なカメラを配置する。そして、三次元モデル生成部120は、配置した仮想的なカメラから見た参照画像を生成して画像IDを付与する。その後、処理をステップS19に進める。
(Step S <b> 17) The three-dimensional
(ステップS18)三次元モデル生成部120は、モデル条件記憶部110に記憶されたカメラ座標テーブル112を参照して、仰角0°かつ方向=正面,横,斜めに対応する3点の座標を確認し、それら3点に仮想的なカメラを配置する。そして、三次元モデル生成部120は、各仮想的なカメラから見た参照画像を生成して画像IDを付与する。
(Step S18) The three-dimensional
(ステップS19)三次元モデル生成部120は、ステップS11で選択された層数に対して、ステップS12で全ての列数を選択したか判断する。全列数を選択した場合は処理をステップS20に進め、未選択の列数がある場合は処理をステップS12に進める。
(Step S19) The three-dimensional
(ステップS20)三次元モデル生成部120は、ステップS11で全ての層数を選択したか判断する。全層数を選択した場合は処理を以下に説明するステップS21に進め、未選択の層数がある場合は処理をステップS11に進める。
(Step S20) The three-dimensional
図15は、参照データ生成の手順例を示すフローチャート(続き)である。
(ステップS21)参照画像処理部130は、上記のステップS15〜S18を通じて生成された複数の参照画像(例えば、95枚の参照画像)の1つを選択する。
FIG. 15 is a flowchart (continued) illustrating an example of a procedure for generating reference data.
(Step S21) The reference
(ステップS22)参照画像処理部130は、ステップS21で選択した参照画像が生成されたときに配置されていた鳥の形状の数(鳥数)と、その参照画像を撮った仮想的なカメラと原点との距離を、三次元モデル生成部120に確認する。
(Step S22) The reference
(ステップS23)参照画像処理部130は、ステップS21で選択した参照画像から、前述のような方法で、鳥の群れの形状が写った対象領域を切り出す。すなわち、参照画像処理部130は、輝度が閾値未満である暗い画素の集合を囲むような矩形(または、楕円形などの所定の形状)の領域を抽出する。なお、輝度が閾値未満である画素を検出するにあたり、参照画像処理部130は、参照画像を二値化して白黒画像に変換してもよい。
(Step S23) The reference
(ステップS24)参照画像処理部130は、ステップS24で切り出した対象領域の面積を算出する。対象領域が矩形である場合、面積は縦の画素数×横の画素数と算出できる。対象領域が楕円形などの矩形以外の形状である場合、例えば、縦の画素数と横の画素数を所定の数式に代入することで面積を算出できる。
(Step S24) The reference
(ステップS25)参照画像処理部130は、ステップS24で切り出した対象領域の明るさを算出する。対象領域の明るさは、対象領域内にある輝度が閾値以上の明るい画素の数と輝度が閾値未満の暗い画素の数との比を表す。明るさを示す値は、例えば、明るい画素数/暗い画素数、または、明るい画素数/対象領域の面積のように算出される。
(Step S25) The reference
(ステップS26)参照画像処理部130は、ステップS23で切り出した対象領域から、前述のような方法で光スポット数を算出する。すなわち、参照画像処理部130は、輝度が閾値未満の画素に囲まれている輝度が閾値以上の画素からなる領域であって、その大きさ(例えば、面積や一辺の画素数など)が閾値以上であるものを光スポットとして検出し、検出された光スポットの数をカウントする。
(Step S26) The reference
(ステップS27)参照画像処理部130は、ステップS21で選択した参照画像の画像IDと対応付けて、距離・面積・明るさ・光スポット数・鳥数を含む参照データを生成する。そして、参照画像処理部130は、三次元モデル生成部120により生成された全ての参照画像をステップS21で選択したか判断する。全参照画像を選択した場合は処理を終了し、未選択の参照画像がある場合は処理をステップS21に進める。
(Step S27) The reference
図16は、参照データテーブルの例を示す図である。参照データテーブル141は、シミュレーション装置100の参照画像処理部130により生成されて、参照データ記憶部140に格納される。また、参照データテーブル141は、参照データ記憶部140から監視装置200の参照データ記憶部210に複製される。参照データテーブル141は、画像ID、距離、面積、明るさ、光スポット数および鳥数の項目を含む。
FIG. 16 is a diagram illustrating an example of the reference data table. The reference data table 141 is generated by the reference
画像IDの項目には、画像条件テーブル111で定義された画像IDが設定される。ただし、参照データテーブル141は、画像IDに代えて、その画像IDに対応する仰角や飛行方向などの撮像条件の情報を含んでもよい。距離の項目には、参照画像を撮像した仮想的なカメラと原点との距離が設定される。図16の例では、距離は20に固定されている。面積の項目には、鳥の群れの形状が写った対象領域の面積が設定される。明るさの項目には、対象領域の明るさ、すなわち、対象領域に含まれる明るい画素と暗い画素との比を示す値が設定される。光スポットの項目には、参照画像に現れる光スポットの数が設定される。鳥数の項目には、参照画像に写る鳥の形状の数が設定される。 In the image ID item, an image ID defined in the image condition table 111 is set. However, the reference data table 141 may include information on imaging conditions such as an elevation angle and a flight direction corresponding to the image ID instead of the image ID. In the distance item, a distance between the virtual camera that has captured the reference image and the origin is set. In the example of FIG. 16, the distance is fixed at 20. In the area item, the area of the target region in which the shape of the flock of birds is reflected is set. In the brightness item, a value indicating the brightness of the target area, that is, the ratio between the bright pixels and the dark pixels included in the target area is set. In the item of light spot, the number of light spots appearing in the reference image is set. In the item of the number of birds, the number of bird shapes reflected in the reference image is set.
図17は、鳥数推定の手順例を示すフローチャートである。このフローチャートが示す処理は、監視装置200において実行される。
(ステップS31)撮像画像取得部220は、カメラ21から時刻tの撮像画像Img1(t)を取得する。また、撮像画像取得部220は、カメラ21から時刻tよりも所定時間(例えば、数百ミリ秒から数秒程度)だけ後の時刻t+1の撮像画像Img1(t+1)を取得する。ただし、撮像画像取得部220は、所定時間だけ前の時刻t−1の撮像画像を利用するようにしてもよい。また、撮像画像取得部220は、カメラ22から時刻t(または、時刻tに十分近い時刻)の撮像画像Img2(t)を取得する。
FIG. 17 is a flowchart illustrating an exemplary procedure for estimating the number of birds. The process shown in this flowchart is executed in the
(Step S31) The captured
(ステップS32)撮像画像取得部220は、カメラ21,22の仰角、および、カメラ21とカメラ22の間の光軸間距離を確認する。仰角および光軸間距離は、例えば、カメラ21,22を設置するにあたって監視装置200に登録される。
(Step S <b> 32) The captured
(ステップS33)撮像画像処理部230は、撮像画像Img1(t)から、前述のような方法で、鳥の群れが写った1またはそれ以上の対象領域を検出する。すなわち、撮像画像処理部230は、輝度が閾値未満である暗い画素の集合を、枠に暗い画素がかからないように囲む矩形(または、楕円形などの所定の形状)の領域を検出する。
(Step S33) The captured
(ステップS34)撮像画像処理部230は、ステップS33において撮像画像Img1(t)から検出された対象領域のうちの1つを選択する。
(ステップS35)撮像画像処理部230は、ステップS34で選択した撮像画像Img1(t)の対象領域と、この対象領域に対応する撮像画像Img1(t+1)の領域とを用いて、カメラ21,22に対する鳥の群れの飛行方向を判定する。対象領域に対応する撮像画像Img1(t+1)の領域は、対象領域と同様の方法で検出してもよいし、対象領域を基準パターンとして用いてパターンマッチングにより検出してもよい。飛行方向は、「正面」,「横」,「斜め」の何れかである。判定方法の詳細は後述する。
(Step S34) The captured
(Step S35) The captured
(ステップS36)撮像画像処理部230は、撮像画像Img1(t)と撮像画像Img2(t)を用いて、前述のような方法で、カメラ21,22と鳥の群れとの間の距離を算出する。例えば、撮像画像処理部230は、ステップS34で選択した撮像画像Img1(t)の対象領域の中心座標と、この対象領域に対応する撮像画像Img1(t+1)の領域の中心座標から、角度θ1,θ2を算出する。そして、撮像画像処理部230は、角度θ1,θ2とステップS32で確認した光軸間距離とから、三角測量の方法で距離を算出する。ただし、撮像画像処理部230は、ステップS34で選択した対象領域以外の領域の画像パターンを用いて距離を算出してもよいし、また、撮像画像Img1(t)全体について1回だけ距離を算出するようにしてもよい。
(Step S36) The captured
(ステップS37)撮像画像処理部230は、ステップS34で選択した撮像画像Img1(t)の対象領域の面積および明るさを算出する。面積は、対象領域の縦の画素数と横の画素数から算出できる。明るさは、対象領域に含まれる輝度が閾値以上の画素の数と輝度が閾値未満の画素の数から算出できる。また、撮像画像処理部230は、対象領域に現れる光スポットの数をカウントする。対象領域の光スポットは、輝度が閾値未満の画素に囲まれている輝度が閾値以上の画素からなる領域であって、大きさ(例えば、面積や一辺の画素数)が閾値以上のものである。ここで、大きさの閾値としては、ステップS36で算出した距離に依存する値を使用する。例えば、シミュレーション装置100において参照画像の光スポットを検出する際に用いられた大きさの閾値をNとすると、N×撮像画像の距離/参照画像の距離(例えば20)を、ここで使用する大きさの閾値とする。
(Step S37) The captured
(ステップS38)撮像画像処理部230は、ステップS34で選択した撮像画像Img1(t)の対象領域と対応付けて、仰角・飛行方向・距離・面積・明るさ・光スポット数を含む撮像データを生成する。そして、撮像画像処理部230は、検出された全ての対象領域をステップS34で選択したか判断する。全対象領域を選択した場合は処理をステップS41に進め、未選択の対象領域がある場合は処理をステップS34に進める。
(Step S38) The captured
図18は、鳥数推定の手順例を示すフローチャート(続き)である。
(ステップS41)鳥数算出部240は、撮像画像処理部230で撮像画像Img1(t)から検出された対象領域を1つ選択し、選択した対象領域の撮像データを取得する。
FIG. 18 is a flowchart (continued) showing an example of the procedure for estimating the number of birds.
(Step S41) The bird
(ステップS42)鳥数算出部240は、参照データ記憶部210に記憶されたモデル条件情報に基づいて、ステップS41で選択した対象領域と仰角・飛行方向が同じ参照画像を検索し、検索された参照画像の参照データを参照データ記憶部210から取得する。このとき、層数の異なる複数の参照画像が検索される。なお、ステップS41で選択した対象領域と仰角が同じ参照画像が存在しない場合、仰角が最も近い参照画像を検索する。
(Step S42) Based on the model condition information stored in the reference
(ステップS43)鳥数算出部240は、ステップS42で検索された各参照画像の光スポット数を、ステップS41で選択した対象領域のスケールに合うように補正する。具体的には、鳥数算出部240は、取得した参照データ毎に、参照データが示す光スポット数×(撮像データが示す距離/参照データが示す距離)2×(撮像データが示す面積/参照データが示す面積)を、補正後の光スポット数として算出する。
(Step S43) The bird
(ステップS44)鳥数算出部240は、ステップS42で検索された参照画像から、ステップS41で選択した対象領域と明るさ・光スポット数が最も近い参照画像を選択する。具体的には、鳥数算出部240は、撮像データが示す明るさと参照データが示す明るさの差が閾値以内で、かつ、撮像データが示す光スポット数とステップS43で補正した光スポット数の差が閾値以内であるような参照画像を選択する。これにより、対象領域に写る鳥の群れの層数が推定されることになる。なお、対象領域と明るさ・光スポット数の両方が十分近い参照画像が存在しない場合は、明るさが最も近い参照画像を選択する。
(Step S44) The bird
なお、上記の説明では、参照画像の光スポット数を対象領域のスケールに合うように補正したが、対象領域の光スポット数を参照画像のスケールに合うように補正してもよい。
(ステップS45)鳥数算出部240は、ステップS44で選択した参照画像の鳥数を、ステップS41で選択した対象領域のスケールに合うように補正する。具体的には、鳥数算出部240は、参照データが示す鳥数×(撮像データが示す距離/参照データが示す距離)2×(撮像データが示す面積/参照データが示す面積)を算出する。そして、鳥数算出部240は、補正後の鳥数を、対象領域に写る鳥の数であると推定する。
In the above description, the number of light spots in the reference image is corrected to match the scale of the target area. However, the number of light spots in the target area may be corrected to match the scale of the reference image.
(Step S45) The bird
(ステップS46)鳥数算出部240は、撮像画像Img1(t)から検出された全ての対象領域をステップS41で選択したか判断する。全対象領域を選択した場合は処理をステップS47に進め、未選択の対象領域がある場合は処理をステップS41に進める。
(Step S46) The bird
(ステップS47)鳥数算出部240は、ステップS45で算出した各対象領域の鳥数を合計し、撮像画像Img1(t)に写る鳥の数であると推定する。
図19は、飛行方向判定の手順例を示すフローチャートである。このフローチャートが示す処理は、上記のステップS35において実行される。
(Step S47) The number-of-
FIG. 19 is a flowchart illustrating a procedure example of the flight direction determination. The processing shown in this flowchart is executed in step S35 described above.
(ステップS351)撮像画像処理部230は、撮像画像Img1(t)から検出された対象領域の面積を算出する。また、撮像画像処理部230は、撮像画像Img1(t)内における対象領域の中心点の座標(中心座標)を算出する。中心座標は、例えば、撮像画像Img1(t)の左上を原点としたときのx座標とy座標とで表される。
(Step S351) The captured
(ステップS352)撮像画像処理部230は、対象領域に対応する撮像画像Img1(t+1)の領域について、対象領域と同様に、面積および中心座標を算出する。
(ステップS353)撮像画像処理部230は、ステップS351で算出した撮像画像Img1(t)における中心座標と、ステップS352で算出した撮像画像Img1(t+1)における中心座標との間の距離を算出する。そして、撮像画像処理部230は、算出した座標距離が閾値未満であるか判断する。座標距離が閾値未満の場合は処理をステップS354に進め、座標距離が閾値以上の場合は処理をステップS355に進める。
(Step S352) The captured
(Step S353) The captured
(ステップS354)撮像画像処理部230は、カメラ21,22に対する鳥の群れの飛行方向を「正面」と判定する。これは、撮像画像上での鳥の群れの位置の変化が小さい場合、鳥の群れは(1)カメラに向かう方向、または、(2)カメラから遠ざかる方向に移動していると考えられるためである。そして、処理を終了する。
(Step S354) The captured
(ステップS355)撮像画像処理部230は、ステップS351で算出した撮像画像Img1(t)における面積と、ステップS352で算出した撮像画像Img1(t+1)における面積との差を算出する。そして、撮像画像処理部230は、算出した面積差が閾値未満であるか判断する。面積差が閾値未満の場合は処理をステップS356に進め、面積差が閾値以上の場合は処理をステップS357に進める。
(Step S355) The captured
(ステップS356)撮像画像処理部230は、カメラ21,22に対する鳥の群れの飛行方向を「横」と判定する。これは、鳥の群れの位置の変化が大きくサイズの変化が小さい場合、鳥の群れは(3)カメラの視界を左から右に横切る方向、または、(4)カメラの視界を右から左に横切る方向に移動しているか、若しくは、仰角90°で撮像していると考えられるためである。そして、処理を終了する。
(Step S356) The captured
(ステップS357)撮像画像処理部230は、カメラ21,22に対する鳥の群れの飛行方向を「斜め」と判定する。これは、鳥の群れの位置の変化が大きくサイズの変化も大きい場合、鳥の群れは(4)カメラの視界を右から左に横切る方向、(5)光軸に対し左斜めにカメラに近づく方向、(6)光軸に対し左斜めにカメラから遠ざかる方向、(7)光軸に対し右斜めにカメラに近づく方向、または、(8)光軸に対し右斜めにカメラから遠ざかる方向に移動していると考えられるためである。
(Step S357) The captured
図20は、鳥数の推定結果の例を示す図である。ここでは、撮像画像から検出された1つの対象領域について、仰角=60°,飛行方向=斜め,距離=r,面積=s0,明るさ=b0,光スポット数=m0という撮像データが生成されたとする。 FIG. 20 is a diagram illustrating an example of a bird count estimation result. Here, with respect to one target area detected from the captured image, imaging data of elevation angle = 60 °, flight direction = diagonal, distance = r, area = s0, brightness = b0, and number of light spots = m0 is generated. To do.
まず、監視装置200は、参照画像#1〜#95の中から、仰角=60°かつ飛行方向=斜めに該当する、層数の異なる5つの参照画像(参照画像#6,#25,#44,#63,#82)を検索する。ここで、参照画像#6は層数=1に対応し、参照画像#25は層数=2に対応し、参照画像#44は層数=3に対応し、参照画像#63は層数=4に対応し、参照画像#82は層数=5に対応するものである。
First, the
次に、監視装置200は、検索された各参照画像の光スポット数を補正する。例えば、参照画像#25について、距離=20,面積=s25,明るさ=b25,光スポット数=m25であるとき、補正後の光スポット数はm25×(r/20)2×(s0/s25)と算出される。同様にして、参照画像#6,#44,#63,#82の光スポット数m6,m44,m63,m82も補正される。そして、監視装置200は、明るさb0と、参照画像#6,#25,#44,#63,#82の明るさb6,b25,b44,b63,b82をそれぞれ比較する。また、監視装置200は、光スポット数m0と、参照画像#6,#25,#44,#63,#82の補正後の光スポット数をそれぞれ比較する。
Next, the
ここでは、参照画像#25の明るさb25が明るさb0に最も近く、かつ、参照画像#25の補正後の光スポット数が光スポット数m0に最も近いとする。すると、監視装置200は、対象領域に写った鳥の群れが2層を形成していると推定する。そして、監視装置200は、参照画像#25の鳥数=t25であるとき、t25×(r/20)2×(s0/s25)を、対象領域に写った鳥の数であると推定する。このようにして、監視装置200は、複数の鳥が重なって写る撮像画像から、鳥の群れの層数と鳥数を推定できる。
Here, it is assumed that the brightness b25 of the
第2の実施の形態の情報処理システムによれば、鳥の群れの射影をシミュレーションすることで、層数・列数が変わったときの明るさ・光スポット数への影響を示した参照データが用意される。そして、カメラ21,22で生成された撮像画像の明るさ・光スポット数と参照データとを比較することで、鳥の群れの層数・列数や鳥数が推定される。このため、撮像画像に複数の鳥が重なって写っていても、パターン認識により鳥が写った領域を検出する方法と比べて、精度よく鳥数を推定することが可能となる。また、第2の実施の形態では、更に仰角や飛行方向などの撮像条件も変えながら、鳥の群れの射影がシミュレーションされる。よって、カメラ21,22と鳥の群れとの位置関係を考慮して、使用する参照データを絞り込むことで、鳥数の推定精度を更に向上させることができる。
According to the information processing system of the second embodiment, by simulating the projection of a flock of birds, reference data indicating the influence on the brightness and the number of light spots when the number of layers and the number of columns change is obtained. Prepared. Then, by comparing the brightness and the number of light spots of the captured images generated by the
なお、前述のように、第1の実施の形態の情報処理は、情報処理装置10にプログラムを実行させることで実現でき、第2の実施の形態の情報処理は、シミュレーション装置100や監視装置200にそれぞれプログラムを実行させることで実現できる。このようなプログラムは、コンピュータ読み取り可能な記録媒体(例えば、記録媒体25)に記録しておくことができる。記録媒体としては、例えば、磁気ディスク、光ディスク、光磁気ディスク、半導体メモリなどを使用できる。磁気ディスクには、FDおよびHDDが含まれる。光ディスクには、CD、CD−R(Recordable)/RW(Rewritable)、DVDおよびDVD−R/RWが含まれる。
As described above, the information processing of the first embodiment can be realized by causing the
プログラムを流通させる場合、例えば、当該プログラムを記録した可搬記録媒体が提供される。また、プログラムを他のコンピュータの記憶装置に格納しておき、ネットワーク経由でプログラムを配布することもできる。コンピュータは、例えば、可搬記録媒体に記録されたプログラムまたは他のコンピュータから受信したプログラムを、記憶装置(例えば、HDD203)に格納し、当該記憶装置からプログラムを読み込んで実行する。ただし、可搬記録媒体から読み込んだプログラムを直接実行してもよく、他のコンピュータからネットワークを介して受信したプログラムを直接実行してもよい。また、上記の情報処理の少なくとも一部を、DSP、ASIC、PLD(Programmable Logic Device)などの電子回路で実現することも可能である。 When distributing the program, for example, a portable recording medium in which the program is recorded is provided. It is also possible to store the program in a storage device of another computer and distribute the program via a network. The computer stores, for example, a program recorded on a portable recording medium or a program received from another computer in a storage device (for example, the HDD 203), and reads and executes the program from the storage device. However, a program read from a portable recording medium may be directly executed, or a program received from another computer via a network may be directly executed. Further, at least a part of the information processing described above can be realized by an electronic circuit such as a DSP, ASIC, or PLD (Programmable Logic Device).
10 情報処理装置
11 記憶部
11a,11b,11c サンプル情報
12 演算部
13 撮像画像
DESCRIPTION OF
Claims (7)
飛行物の重なり数が異なる複数のサンプル画像それぞれについて、明るさが閾値未満の領域に囲まれており、明るさが前記閾値以上であるスポット領域の数と、当該サンプル画像に写った飛行物の数とを含むサンプル情報を記憶する記憶部と、
前記撮像画像に含まれるスポット領域の数を算出し、前記複数のサンプル画像に対応するサンプル情報のうち、算出したスポット領域の数に応じたサンプル情報を選択し、選択したサンプル情報が示す飛行物の数に基づいて、前記撮像画像に写る飛行物の数を推定する演算部と、を有する情報処理装置。 An information processing apparatus that processes captured images of a plurality of flying objects,
For each of a plurality of sample images having different number of flying objects, the number of spot areas that are surrounded by an area whose brightness is less than the threshold and the brightness is equal to or greater than the threshold, and the number of flying objects reflected in the sample image A storage unit for storing sample information including:
The number of spot areas included in the captured image is calculated, sample information corresponding to the calculated number of spot areas is selected from the sample information corresponding to the plurality of sample images, and the number of flying objects indicated by the selected sample information And an arithmetic unit for estimating the number of flying objects shown in the captured image.
前記演算部は、前記撮像画像の明るさ値を算出し、前記算出したスポット領域の数と算出した明るさ値とに応じたサンプル情報を選択する、請求項1記載の情報処理装置。 The sample information corresponding to each sample image further includes a brightness value indicating the proportion of the area where the brightness is equal to or greater than the threshold in the sample image,
The information processing apparatus according to claim 1, wherein the calculation unit calculates a brightness value of the captured image, and selects sample information according to the calculated number of spot regions and the calculated brightness value.
前記演算部は、前記複数の飛行物を写した2以上の撮像画像から前記複数の飛行物の飛行方向を判定し、判定した飛行方向に基づいて選択するサンプル情報の候補を絞り込む、請求項1記載の情報処理装置。 The storage unit stores sample information for each of a plurality of sample images having different combinations of the number of overlaps and the flight direction of the flying object,
The calculation unit determines a flight direction of the plurality of flying objects from two or more captured images obtained by copying the plurality of flying objects, and narrows down sample information candidates to be selected based on the determined flight direction. The information processing apparatus described.
前記コンピュータが、
前記撮像画像から、明るさが閾値未満の領域に囲まれており、明るさが前記閾値以上であるスポット領域の数を算出し、
それぞれがサンプル画像のスポット領域の数と当該サンプル画像に写った飛行物の数とを含む、飛行物の重なり数が異なる複数のサンプル画像に対応するサンプル情報の中から、算出したスポット領域の数に応じたサンプル情報を選択し、
選択したサンプル情報が示す飛行物の数に基づいて、前記撮像画像に写る飛行物の数を推定する、画像処理方法。 A computer-based image processing method for processing captured images of a plurality of flying objects,
The computer is
From the captured image, calculate the number of spot areas that are surrounded by an area with a brightness less than the threshold, and the brightness is greater than or equal to the threshold,
Depending on the number of spot areas calculated from sample information corresponding to multiple sample images with different number of overlapping objects, including the number of spot areas in the sample image and the number of objects in the sample image. Selected sample information,
An image processing method for estimating the number of flying objects shown in the captured image based on the number of flying objects indicated by the selected sample information.
コンピュータに、
前記撮像画像から、明るさが閾値未満の領域に囲まれており、明るさが前記閾値以上であるスポット領域の数を算出し、
それぞれがサンプル画像のスポット領域の数と当該サンプル画像に写った飛行物の数とを含む、飛行物の重なり数が異なる複数のサンプル画像に対応するサンプル情報の中から、算出したスポット領域の数に応じたサンプル情報を選択し、
選択したサンプル情報が示す飛行物の数に基づいて、前記撮像画像に写る飛行物の数を推定する、処理を実行させるプログラム。 A program for processing captured images of a plurality of flying objects,
On the computer,
From the captured image, calculate the number of spot areas that are surrounded by an area with a brightness less than the threshold, and the brightness is greater than or equal to the threshold,
Depending on the number of spot areas calculated from sample information corresponding to multiple sample images with different number of overlapping objects, including the number of spot areas in the sample image and the number of objects in the sample image. Selected sample information,
A program for executing processing for estimating the number of flying objects shown in the captured image based on the number of flying objects indicated by the selected sample information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012073049A JP5811923B2 (en) | 2012-03-28 | 2012-03-28 | Information processing apparatus, image processing method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012073049A JP5811923B2 (en) | 2012-03-28 | 2012-03-28 | Information processing apparatus, image processing method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013206034A JP2013206034A (en) | 2013-10-07 |
JP5811923B2 true JP5811923B2 (en) | 2015-11-11 |
Family
ID=49525066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012073049A Expired - Fee Related JP5811923B2 (en) | 2012-03-28 | 2012-03-28 | Information processing apparatus, image processing method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5811923B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6304708B2 (en) * | 2014-02-25 | 2018-04-04 | 一般財団法人電力中央研究所 | Image processing method, image processing apparatus, and image processing program for detecting starling |
JP6228099B2 (en) * | 2014-11-06 | 2017-11-08 | いであ株式会社 | Bird observation method |
WO2020183837A1 (en) * | 2019-03-08 | 2020-09-17 | 三菱電機株式会社 | Counting system, counting device, machine learning device, counting method, component arrangement method, and program |
CN111402232B (en) * | 2020-03-16 | 2023-05-16 | 深圳市瑞图生物技术有限公司 | Sperm aggregation detection method in semen |
CN112509129B (en) * | 2020-12-21 | 2022-12-30 | 神思电子技术股份有限公司 | Spatial view field image generation method based on improved GAN network |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001349707A (en) * | 2000-06-12 | 2001-12-21 | Asia Air Survey Co Ltd | Three-dimensional position measuring system of moving body |
GB0224626D0 (en) * | 2002-10-23 | 2002-12-04 | Qinetiq Ltd | Tubule grading |
JP4894278B2 (en) * | 2006-02-03 | 2012-03-14 | カシオ計算機株式会社 | Camera apparatus and camera control program |
JP2008000072A (en) * | 2006-06-22 | 2008-01-10 | Fujifilm Corp | Bird injury-preventing device |
JP4985142B2 (en) * | 2007-06-26 | 2012-07-25 | 株式会社日本自動車部品総合研究所 | Image recognition apparatus and image recognition processing method of image recognition apparatus |
JP4966820B2 (en) * | 2007-10-29 | 2012-07-04 | パナソニック株式会社 | Congestion estimation apparatus and method |
JP4692609B2 (en) * | 2008-11-13 | 2011-06-01 | 日産自動車株式会社 | Lane departure prevention device |
-
2012
- 2012-03-28 JP JP2012073049A patent/JP5811923B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2013206034A (en) | 2013-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113196296B (en) | Detecting objects in a population using geometric context | |
CN108292362B (en) | Gesture recognition for cursor control | |
Peng et al. | Robust multiple cameras pedestrian detection with multi-view Bayesian network | |
US8929668B2 (en) | Foreground subject detection | |
US9519968B2 (en) | Calibrating visual sensors using homography operators | |
JP5811923B2 (en) | Information processing apparatus, image processing method, and program | |
US20120163672A1 (en) | Depth Estimate Determination, Systems and Methods | |
CN104380338A (en) | Information processing device and information processing method | |
CN109298629A (en) | For providing the fault-tolerant of robust tracking to realize from non-autonomous position of advocating peace | |
CN109035330A (en) | Cabinet approximating method, equipment and computer readable storage medium | |
US11170246B2 (en) | Recognition processing device, recognition processing method, and program | |
CN102938844A (en) | Generating free viewpoint video through stereo imaging | |
US11776213B2 (en) | Pose generation apparatus, generation method, and storage medium | |
US9595125B2 (en) | Expanding a digital representation of a physical plane | |
CN104735435A (en) | Image processing method and electronic device | |
US11665332B2 (en) | Information processing apparatus, control method thereof and storage medium | |
US11373329B2 (en) | Method of generating 3-dimensional model data | |
JP2015075429A (en) | Marker, evaluation method of marker, information processing apparatus, information processing method, and program | |
EP3309750B1 (en) | Image processing apparatus and image processing method | |
US11195322B2 (en) | Image processing apparatus, system that generates virtual viewpoint video image, control method of image processing apparatus and storage medium | |
JP4268497B2 (en) | Distance information addition device, additional video generation device, additional video generation method, and distance information addition program | |
JP7107015B2 (en) | Point cloud processing device, point cloud processing method and program | |
JP2017028688A (en) | Image managing device, image managing method and program | |
JP7188798B2 (en) | Coordinate calculation device, coordinate calculation method, and program | |
Li et al. | Research on MR virtual scene location method based on image recognition |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150106 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150814 |
|
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: 20150825 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150907 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5811923 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |