(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0018】
<実施形態>
以下、本発明の一実施形態について説明する。
【0019】
[画像解析システムの全体構成]
以下、本発明の一実施形態による画像解析システム1の全体構成について、図面を参照しながら説明する。
図1は、画像解析システム1の全体構成を示すブロック図である。
【0020】
画像解析システム1は、飛行体によって上空から撮影されたサーモ画像を解析し、サーモ画像において、複数の太陽光パネルが並べて配されたアレイが写っている領域を特定する。さらに、画像解析システム1は、サーモ画像におけるアレイが写っている領域に基づいてサーモ画像を解析し、異常が発生していると推定される太陽光パネルを特定する。
【0021】
なお、一般に、太陽電池の構成単位には、「セル」、「モジュール」及び「アレイ」がある。「セル」は、太陽電池の基本単位であり、太陽電池素子そのもののことをいう。「モジュール」は、セルを複数枚配列して配線し、屋外で利用できるよう樹脂や強化ガラス等で保護してパッケージ化したものである。モジュールは、「太陽光パネル」とも呼ばれる(以下の説明においては、モジュールを「太陽光パネル」という)。「アレイ」は、架台に太陽光パネル(モジュール)を複数枚配列して配線したものである。
なお、サーモ画像とは、物体から放射される赤外線を解析し、熱分布を図として表した画像である。
【0022】
図1に示すように、画像解析システム1は、パネル検出部10と、異常パネル検出部20と、を含んで構成される。
【0023】
パネル検出部10には、複数の太陽光パネルによって構成されるアレイの一部又は全部が飛行体によって撮影されたサーモ画像と、サーモ画像内での太陽光パネルの大きさを示す情報(例えば、太陽光パネルが写っている領域を構成する画素数)とが、外部の装置から入力される。
【0024】
なお、サーモ画像内での太陽光パネルの大きさの値は、各サーモ画像に対してそれぞれ別々に指定されていてもよいし、一度の撮影において同じ値が用いられてもよい。また、サーモ画像内での太陽光パネルの大きさの値は、人手によって設定された値であってもよいし、太陽光パネルの設計データ、飛行体の飛行高度及びサーモカメラの視野角等に基づいて算出された値であってもよい。
【0025】
パネル検出部10は、サーモ画像内での太陽光パネルの大きさに基づいて設定される閾値を用いて、サーモ画像から太陽光パネルが写っている領域を検出する。パネル検出部10は、検出された太陽光パネルが写っている領域に基づいて、サーモ画像内でのアレイが写っている領域を特定する。パネル検出部10は、特定されたアレイが写っている領域を示す情報を異常パネル検出部20へ出力する。
【0026】
異常パネル検出部20には、パネル検出部10から出力されたアレイが写っている領域を示す情報が入力される。また、異常パネル検出部20には、サーモ画像及びサーモ画像内での太陽光パネルの大きさを示す情報が外部の装置から入力される。なお、異常パネル検出部20に入力されるサーモ画像及びサーモ画像内での太陽光パネルの大きさを示す情報は、パネル検出部10に入力されたサーモ画像及びサーモ画像内での太陽光パネルの大きさを示す情報と同一である。
【0027】
異常パネル検出部20は、サーモ画像におけるアレイが写っている領域から、正常な太陽光パネルが写っている領域を検出する。異常パネル検出部20は、検出された正常な太陽光パネルが写っている領域に基づいて、異常が発生している太陽光パネルが写っている領域を特定する。異常パネル検出部20は、特定された太陽光パネルを示す情報を外部の装置へ出力する。
【0028】
なお、ここでいう異常が発生している太陽光パネルとは、例えば、サーモ画像での解析の場合には、正常な太陽光パネルと比べて表面温度が異なる(高い又は低い)太陽光パネルである。太陽光パネルの表面温度の差異は、例えば、太陽光パネルに故障が発生することによって、又は、太陽光パネル上に植物等の障害物が覆い被さった状態になること等によって生じる。
【0029】
[パネル検出部の機能構成]
以下、パネル検出部10の機能構成について、図面を参照しながら更に詳しく説明する。
図2は、パネル検出部10の機能構成を示すブロック図である。
図2に示すように、パネル検出部10は、適応二値化部101と、輪郭検出部102と、閾値判定部103と、膨張処理部104と、外接矩形推定部105と、を含んで構成される。
【0030】
適応二値化部101には、外部の装置から出力された、複数の太陽光パネルによって構成されるアレイの一部又は全部が飛行体によって撮影されたサーモ画像が入力される。適応二値化部101は、入力されたサーモ画像に対し、適応二値化処理(適応的閾値処理)を実行する。具体的には、適応二値化部101は、サーモ画像に含まれるそれぞれの画素について、その画素を中心として一定の範囲に含まれる他の画素(以下、「周辺画素」という)の画素値に基づいて閾値を設定する。適応二値化部101は、設定された閾値に基づいて、サーモ画像に含まれるそれぞれの画素の画素値を二値化する。
【0031】
なお、適応二値化部101に入力されるサーモ画像によって表される、測定された温度の値には、サーモカメラの角度や日照条件等に起因する誤差が含まれる。例えば、温度が均一の太陽光パネルが撮影されたサーモ画像であっても、サーモ画像内での上部と下部では、誤差によって2倍程度の温度差が生じることがある。そのため、サーモ画像内の全ての画素に対して同一の閾値に基づいて二値化を行うことは効果的ではないことから、本発明においては、適応的な閾値処理を行う適応二値化処理を用いていている。
なお、適応二値化処理には、例えば、OpenCV(登録商標)における、adaptiveThreshold関数を用いることができる。
【0032】
以下、適応二値化部101による適応二値化処理の詳細について、図面を参照しながら説明する。
図3は、適応二値化部101の動作の一例を示すフローチャートである。
【0033】
適応二値化部101は、外部の装置から出力された、複数の太陽光パネルによって構成されるアレイの一部又は全部が飛行体によって撮影されたサーモ画像を取得する(ステップS101)。
適応二値化部101は、取得したサーモ画像に含まれる画素のうち、適応二値化処理をまだ行っていない画素の1つを選択する(ステップS102)。
【0034】
適応二値化部101は、選択された画素の近傍にある周辺画素のそれぞれの画素値を取得する。適応二値化部101は、周辺画素の画素値の中央値を算出する(ステップS103)。
適応二値化部101は、算出された中央値から所定の数を減算した値を閾値に設定する(ステップS104)。
なお、ここで所定の数を0以上とすることによって、適応二値化部101は、局所的に変化の少ない領域と変化の大きい領域とに分別することができる。
【0035】
適応二値化部101は、選択された画素の画素値と、設定された閾値と、を大小比較する。選択された画素の画素値が閾値よりも大きい場合(ステップS105・YES)、画素値を「1」に変換する(ステップS106)。そうでない場合、すなわち、選択された画素の画素値が閾値以下である場合(ステップS105・NO)、選択された画素の画素値を「0」に変換する(ステップS107)。
なお、ここでは、適応二値化部101は、選択された画素の画素値を「1」又は「0」に変換するものとしたが、これらの値に限定されるものではない。
【0036】
適応二値化部101が、取得したサーモ画像に含まれる全ての画素について、適応二値化処理を完了した場合(ステップS108・YES)、本フローチャートの処理が終了する。そうでない場合、すなわち、サーモ画像に含まれる画素のうち、適応二値化部101が適応二値化処理をまだ行っていない画素が存在する場合(ステップS108・NO)、適応二値化処理をまだ行っていない画素のうち1つを選択する(ステップS102)。
【0037】
図4は、適応二値化部101に入力されるサーモ画像の一例を示す図である。
また、
図5は、適応二値化部101によって二値化されたサーモ画像の一例を示す図である。
このように、適応二値化部101による適応二値化処理によって、
図4に示すようなサーモ画像が、例えば、
図5に示すような白と黒の二階調のサーモ画像に変換される。
【0038】
図2に戻って説明する。
適応二値化部101は、適応二値化処理によって二値化されたサーモ画像を、輪郭検出部102へ出力する。
輪郭検出部102は、適応二値化部101から出力された、二値化されたサーモ画像を取得する。輪郭検出部102は、二値化されたサーモ画像から、輪郭となる部分を検出する。なお、輪郭の検出は、例えば、収縮処理を行うことによって輪郭を強調させてから行うようにしてもよい。
輪郭検出部102は、検出された輪郭を示す情報(例えば、輪郭を示す座標情報)を含む二値化されたサーモ画像(以下、「輪郭検出画像」という)を、閾値判定部103へ出力する。
【0039】
閾値判定部103は、輪郭検出部102から出力された輪郭検出画像を取得する。また、閾値判定部103には、外部の装置から出力された、サーモ画像内での太陽光パネルの大きさを示す情報(例えば、太陽光パネルが写っている領域を構成する画素数)が入力される。
閾値判定部103は、サーモ画像内での太陽光パネルの大きさに基づいて閾値を設定する。閾値判定部103は、設定された閾値に基づいて閾値判定を行うことによって、サーモ画像内における太陽光パネルが写っている領域の候補となる領域(以下、「候補領域」という)を決定する。
【0040】
以下、閾値判定部103による閾値判定処理の詳細について、図面を参照しながら説明する。
図6は、閾値判定部103の動作の一例を示すフローチャートである。
【0041】
閾値判定部103は、輪郭検出部102から出力された輪郭検出画像を取得する(ステップS201)。閾値判定部103は、輪郭検出画像に含まれる輪郭を示す情報に基づいて、太陽光パネルの候補領域を選択する(ステップS202)。
閾値判定部103は、選択された候補領域の輪郭に基づいて、候補領域の内部の面積を算出する。算出された面積が所定の値以上ではない場合、すなわち、所定の値より小さい場合(ステップS203・NO)、閾値判定部103は、選択された候補領域が太陽光パネルの候補となる領域ではない(候補外である)と判定する(ステップS206)。
【0042】
閾値判定部103は、選択された候補領域の輪郭に基づいて、候補領域の外周の長さを算出する。算出された面積が所定の値以上である場合であって(ステップS203・YES)、かつ、算出された外周の長さが所定の値以下である場合(ステップS204・YES)、選択された候補領域が太陽光パネルの候補となる領域であると判定する(ステップS205)。算出された面積が所定の値以上である場合であって(ステップS203・YES)、かつ、算出された外周の長さが所定の値以下ではない場合、すなわち、所定の値より長い場合(ステップS204・YES)、選択された候補領域が太陽光パネルの候補となる領域ではない(候補外である)と判定する(ステップS206)。
【0043】
閾値判定部103が、取得した輪郭検出画像に含まれる太陽光パネルの全ての候補領域について、閾値判定処理を完了した場合(ステップS207・YES)、本フローチャートの処理が終了する。そうでない場合、すなわち、輪郭検出画像に含まれる太陽光パネルの候補領域のうち、閾値判定部103が閾値判定処理をまだ行っていない候補領域が存在する場合(ステップS207・NO)、閾値判定部103は、閾値判定処理をまだ行っていない候補領域のうち1つを選択する(ステップS202)。
【0044】
なお、上記のフローチャートに示した閾値判定処理においては、候補領域ごとに、面積についての閾値判定、外周の長さについての閾値判定、の順序で処理を行うものとしたが、これに限定されるものではない。例えば、まず、閾値判定部103は、全ての候補領域について面積を算出する。閾値判定部103は、算出された面積のそれぞれについて順に閾値判定を行うことによって候補領域の数を絞り込む。次に、閾値判定部103は、面積による絞り込み後に残った全ての候補領域ついて、外周の長さを算出する。閾値判定部103は、算出された外周の長さのそれぞれについて順に閾値判定を行うことによって候補領域の数を更に絞り込む、といった順序で処理を行うような構成にしてもよい。
【0045】
上述したように、閾値判定処理においては、選択されたそれぞれの候補領域に対して、候補領域の内部の面積が計算される。計算された面積が所定の値より小さい場合には、太陽光パネルの候補から除外される。このときの閾値判定に用いられる面積の閾値は、例えば、外部の機器から入力された、サーモ画像内での太陽光パネルの大きさを示す情報に基づいて設定される。
【0046】
また、上述したように、閾値判定処理においては、面積についての閾値判定の結果として残った候補領域のそれぞれに対し、外周の長さが計算される。計算された外周の長さが所定の値より長い場合には、太陽光パネルの候補から除外される。このときの閾値判定に用いられる外周の長さの閾値は、例えば、外部の機器から入力された、サーモ画像内での太陽光パネルの大きさと太陽光パネルの縦横比とに基づいて設定される。又は、閾値判定に用いられる外周の長さの閾値は、太陽光パネルの縦横比と候補領域の面積とに基づいて、候補領域ごとに適応的に閾値が求められるような構成であってもよい。
【0047】
サーモ画像に写っている物体のうち、太陽光パネルではない物体の輪郭は、一般的に矩形とは異なるものが多いことが予想される。そのため、太陽光パネルと同程度の面積であって太陽光パネルではない物体の外周の長さは、太陽光パネルに比べて長くなる場合が多いことが予想される。これにより、閾値判定部103は、上述した候補領域の内部の面積と、候補領域の周囲の長さと、に基づく上記の閾値判定処理によって、太陽光パネルではないと推定される領域を除外することができる。
なお、上記の閾値判定処理における判定条件に加え、更に、面積が所定の値以下の大きさであること、あるいは、輪郭の長さが所定の値以上の長さであること、といった条件等が組み合わされた判定条件が用いられてもよい。あるいは、候補領域の外接矩形を推定し、外接矩形の面積に対して候補領域内の面積が一定以上の割合を占めいているといった条件を用いても良い。
【0048】
図7は、閾値判定部103によって生成された太陽光パネル候補画像の一例を示す図である。
図7に示す太陽光パネル候補画像においては、合計31枚の太陽光パネルの候補領域が検出されている。
【0049】
図2に戻って説明する。
閾値判定部103は、太陽光パネルの候補領域を示す情報を含む二値化されたサーモ画像(以下、「太陽光パネル候補画像」という)を、膨張処理部104へ出力する。
膨張処理部104は、閾値判定部103から出力された太陽光パネル候補画像を取得する。膨張処理部104は、太陽光パネル候補画像に対して、膨張処理を実行する。膨張処理部104は、膨張処理された太陽光パネル候補画像を外接矩形推定部105へ出力する。
【0050】
図8は、膨張処理部104によって膨張処理された太陽光パネル候補画像の一例を示す図である。
図8に示す膨張処理された太陽光パネル候補画像においては、
図7に示した(膨張処理されていない)太陽光パネル候補画像における候補領域の輪郭が除去されている。これにより、左側の20個の候補領域及び右側の11個の候補領域がそれぞれ結合されて、2つの大きな領域のようになっている。
【0051】
図2に戻って説明する。
外接矩形推定部105は、膨張処理部104から出力された、膨張処理された太陽光パネル候補画像を取得する。外接矩形推定部105は、膨張処理された太陽光パネル候補画像から、複数の太陽光パネルによって構成されるアレイを示す領域に外接する矩形を推定する。具体的には、外接矩形推定部105は、まず膨張処理された太陽光パネル候補画像におけるアレイの輪郭を特定し、特定された輪郭を矩形に近似することによって、アレイを示す領域に外接する矩形を推定する。
【0052】
外接矩形推定部105は、推定されたアレイを示す領域に外接する矩形(すなわち、アレイが写っている領域)を示す情報を異常パネル検出部20へ出力する。なお、アレイが写っている領域を示す情報とは、アレイを示す領域に外接する矩形が記されたサーモ画像であってもよいし、サーモ画像における、アレイを示す領域に外接する矩形の座標を示すデータであってもよい。
【0053】
図9は、外接矩形推定部105によって推定されたアレイを示す領域に外接する矩形が記されたサーモ画像の一例を示す図である。
図9に示すように、
図8に示した膨張処理された太陽光パネル候補画像において、複数の太陽光パネルの候補領域が結合された2つの領域(すなわち、アレイを示す領域)の輪郭が、それぞれ矩形によって近似されている。
【0054】
なお、サーモ画像の上下方向とサーモ画像に写った太陽光パネルの上下方向とは、必ずしも互いに一致しているとは限らない。そこで、外接矩形推定部105は、矩形の上下方向とサーモ画像に写った太陽光パネルの上下方向とを一致させるように、必要に応じて矩形の回転を考慮しながら、アレイを示す領域の輪郭に対して矩形によって近似することができるような構成にすることが望ましい。
【0055】
なお、外接矩形推定部105がアレイを示す領域に外接する矩形を推定する前に、膨張処理部104が太陽光パネル候補画像に対して膨張処理を実行するのは、以下の理由によるものである。膨張処理によって、隣り合う太陽光パネルの境界線が塗り潰される(すなわち、太陽光パネルの輪郭が除去される)。これにより、外接矩形推定部105は、太陽光パネルを示す複数の領域を一括して、アレイが写っている領域として取り扱うことが可能になる。なお、膨張処理を実行する代わりに、外接矩形推定部105が、隣り合う太陽光パネルの境界線(すなわち、太陽光パネルの輪郭)を無視することによって、アレイを示す領域に外接する矩形を推定するような構成にしてもよい。
【0056】
なお、外接矩形推定部105がアレイを示す領域に外接する矩形を推定するのは、以下の理由によるものである。太陽光パネル候補画像において、実際には太陽光パネルが写された領域であっても、太陽光パネル候補から除外されてしまうことがあるためである。これは、例えば、太陽光パネルの故障や、太陽光パネルの一部又は全部が植物等の障害物によって覆い隠されてしまうこと等によって生じる。
【0057】
パネル検出部10は、太陽光パネルを示す複数の領域を一括して、アレイが写っている領域として取り扱い、アレイを示す領域に外接する矩形を推定する。これにより、アレイが写っている領域の中に太陽光パネル候補から除外された領域があったとしても、パネル検出部10は、その除外された領域についても太陽光パネルが写っている領域であるものとして取り扱うことできる。外接矩形推定部105は、推定されたアレイを示す領域に外接する矩形の内部を、太陽光パネルが写っている領域として出力する。
【0058】
例えば、
図8に示した、膨張処理された太陽光パネル候補画像において右下隅の領域は、太陽光パネルの候補から除外された領域となっている。しかしながら、
図9に示すように、アレイを示す領域に外接する矩形を推定することによって、外接矩形推定部105は、太陽光パネルの候補から除外された領域を、太陽光パネルが写っている領域であるものとして取り扱うことができる。
【0059】
[異常パネル検出部の機能構成]
以下、異常パネル検出部20の機能構成について、図面を参照しながら更に詳しく説明する。
図10は、異常パネル検出部20の機能構成を示すブロック図である。
図10に示すように、異常パネル検出部20は、適応二値化部201と、背景マスク部202と、外枠マスク部203と、距離画像変換部204と、距離画像二値化部205と、背景分離部206と、正常太陽光パネル分離部207と、ノイズ除去部208と、を含んで構成される。
【0060】
適応二値化部201には、外部の装置から出力された、複数の太陽光パネルによって構成されるアレイの一部又は全部が飛行体によって撮影されたサーモ画像が入力される。なお、上述したパネル検出部10の適応二値化部101に入力されるサーモ画像と、異常パネル検出部20の適応二値化部201に入力されるサーモ画像とは、同一の画像である。
【0061】
適応二値化部201は、入力されたサーモ画像に対し、適応二値化処理(適応的閾値処理)を実行する。具体的には、適応二値化部201は、サーモ画像に含まれるそれぞれの画素について、その画素の周辺画素の画素値に基づく閾値を設定する。適応二値化部201は、設定された閾値に基づいて、サーモ画像に含まれるそれぞれの画素の画素値を二値化する。これにより、サーモ画像内の各領域は、局所的に変化の小さい領域と局所的に変化の大きい領域とに分別される。以下、局所的に滑らかな領域とは、局所的に変化の小さい領域のことをいう。
適応二値化部201は、適応二値化処理によって二値化されたサーモ画像を、背景マスク部202へ出力する。
【0062】
なお、適応二値化部201による適応二値化処理は、上記において
図3を参照しながら説明した、パネル検出部10の適応二値化部101による適応二値化処理と同一の処理である。よって、適応二値化部201による適応二値化処理の詳細な説明は省略する。
【0063】
背景マスク部202は、適応二値化部201から出力された、二値化されたサーモ画像を取得する。また、背景マスク部202は、パネル検出部10の外接矩形推定部105から出力された、アレイが写っている領域を示す情報を取得する。なお、背景マスク部202に入力される、アレイが写っている領域を示す情報は、パネル検出部10から出力された情報でなくても構わない。例えば、アレイが写っている領域を示す情報は、アレイが写っている領域以外の領域が、手作業によってマスクされた画像であってもよい。
【0064】
背景マスク部202は、上記取得したアレイが写っている領域を示す情報に基づいて、上記取得した二値化されたサーモ画像におけるアレイが写っている領域を特定する。具体的には、背景マスク部202は、アレイが写っている領域が特定されることによって、二値化されたサーモ画像上における、アレイが写っている領域以外の領域(背景の領域)を特定する。背景マスク部202は、特定した背景の領域に含まれるサーモ画像上の全ての画素の画素値を「0」に変換する。これにより、サーモ画像上の背景の領域をマスクする処理(背景マスク処理)が施される。背景マスク部202は、背景マスク処理が施された、二値化されたサーモ画像を外枠マスク部203へ出力する。
【0065】
外枠マスク部203は、背景マスク部202から出力された、二値化されたサーモ画像を取得する。外枠マスク部203は、二値化されたサーモ画像内の外周の領域(例えば、二値化されたサーモ画像の端から所定の画素数の範囲)をマスクする処理を実行する。なお、この外枠マスク処理を行うのは、サーモ画像の外周の領域において測定誤差が生じやすいためである。
外枠マスク部203は、外枠マスク処理が施された、二値化されたサーモ画像を距離画像変換部204へ出力する。
【0066】
距離画像変換部204は、外枠マスク部203から出力された、二値化されたサーモ画像を取得する。距離画像変換部204は、取得した、二値化されたサーモ画像を、距離画像に変換する。
【0067】
ここでいう距離画像への変換とは、二値化されたサーモ画像に含まれる各々の画素に対し、その画素から最も近い距離に存在する、画素値が「0」の画素までの距離に基づく値を、その画素の画素値として代入する処理を行うことである。
【0068】
図11は、距離画像変換部204に入力される二値化されたサーモ画像の一例を示す図である。
また、
図12は、距離画像変換部204によって生成された距離画像の一例を示す図である。
【0069】
なお、二値化されたサーモ画像から距離画像への変換において、距離画像変換部204は、変換対象の画素から最も近い距離に存在する、画素値が「0」の画素を、変換対象の画素を基点とした全方位をから選出するようにしてもよい。又は、距離画像変換部204は、変換対象の画素から最も近い距離に存在する、画素値が「0」の画素を、変換対象の画素を基点として、距離画像内おける縦方向と横方向の方位のみを対象として選出するようにしてもよい。又は、距離画像変換部204は、変換対象の画素から最も近い距離に存在する、画素値が「0」の画素を、変換対象の画素を基点として、距離画像内での太陽光パネルの傾きに応じた方位(すなわち、アレイの矩形を基準とした縦方向と横方向の方位)のみを対象として選出するようにしてもよい。又は、距離画像変換部204は、変換対象の画素を基点とした各方位について、それぞれ距離画像を生成するようにしてもよい。
【0070】
距離画像変換部204によって生成された距離画像では、正常な太陽光パネルが写った領域は中心部分の画素値が大きくなり、異常のある太陽光パネルが写った領域は中心部分の画素値が相対的に小さくなる。なぜならば、異常のある太陽光パネルの場合、二値化されたサーモ画像内において、太陽光パネルを示す領域の内部に画素値が「0」の画素が含まれるため、変換対象の画素と、変換対象の画素から最も近い距離に存在する画素値が「0」の画素との距離が、正常な太陽光パネルの場合と比べて相対的に短くなるからである。
【0071】
図10に戻って説明する。
距離画像変換部204は、生成された距離画像を距離画像二値化部205へ出力する。
距離画像二値化部205は、距離画像変換部204から出力された距離画像を取得する。距離画像二値化部205は、取得した距離画像に対して、二値化処理を実行する。なお、この二値化処理において用いられる閾値は、距離画像に含まれる全ての画素の画素値の最大値から一定割合だけ減じたものにより与えられる。閾値を各画像内での最大値として与えることで、レンズ歪みや画像毎の撮影高度のずれに起因する距離の誤差を許容することが可能になる。またこのとき一定割合を減じることにより、撮影時に水平が取れていない場合に画像内で太陽光パネルの大きさが一様ではなくなっているような場合に適切に検出を行うことが出来る。たとえばこの割合を3分の1未満にすることで、ストリング故障(パネルモジュール内の3分の1の温度変化につながる)のある太陽光パネルを除外することができる。またこのとき所定の数値を閾値の上限として与えることで、パネル以外の領域から距離の最大値が決定されてしまうことによる誤りを防ぐことが可能になる。
【0072】
又は、この二値化処理において用いられる閾値は、サーモ画像内での太陽光パネルの大きさに基づいて決定されるようにしてもよい。なお、正常な太陽光パネルの場合、距離画像における距離分布は、太陽光パネルの内部の領域において縦方向にそれぞれ一様な値を持つ距離分布になることが想定される。この特徴を利用して、距離画像二値化部205が、太陽光パネルの内部の領域において距離分布が縦方向に一様な値となっているか否かに基づいて二値化処理を実行するような構成にしてもよい。
距離画像二値化部205による二値化処理によって、アレイが写っている領域に含まれる太陽光パネルが、正常な太陽光パネルと、異常のある太陽光パネルとに、分別される。
【0073】
距離画像二値化部205は、二値化された距離画像を正常太陽光パネル分離部207へ出力する。
図13は、距離画像二値化部205によって生成された二値化された距離画像の一例を示す図である。図示するように、二値化された距離画像においては、異常のある太陽光パネルを示す領域がマスクされ、正常な太陽光パネルを示す領域とそれ以外との領域とに分別される。
【0074】
図10に戻って説明する。
背景分離部206には、外部の装置から出力された、複数の太陽光パネルによって構成されるアレイの一部又は全部が飛行体によって撮影されたサーモ画像が入力される。なお、適応二値化部201に入力されるサーモ画像と、背景分離部206に入力されるサーモ画像とは、同一の画像である。また、背景分離部206は、パネル検出部10の外接矩形推定部105から出力された、アレイが写っている領域を示す情報を取得する。
【0075】
背景分離部206は、入力されたアレイが写っている領域を示す情報に基づいて、入力されたサーモ画像から、背景の領域を分離してアレイが写っている領域のみを残したサーモ画像を生成する。背景分離部206は、背景が除去されたサーモ画像を正常太陽光パネル分離部207に出力する。
【0076】
正常太陽光パネル分離部207は、背景分離部206から出力された、背景が除去されたサーモ画像を取得する。また、正常太陽光パネル分離部207は、距離画像二値化部205から出力された二値化された距離画像を取得する。正常太陽光パネル分離部207は、二値化された距離画像に基づいて、背景が除去されたサーモ画像から、正常な太陽光パネルが写っている領域を分離する。
【0077】
ここで、正常な太陽光パネルが写っている領域は、例えば次のように分離できる。外枠マスク部203から出力された2値化されたサーモ画像の上に、距離画像二値化部205から出力された二値化された距離画像をラベルとして重ね合わせることで、正常な太陽光パネルの内部にのみラベル付けされた画像を生成する。この画像に対し、例えばWaterShedアルゴリズムを適用してラベル付けされた領域を塗りつぶすことで、正常な太陽光パネルが映っている領域のみを得ることが出来る。
正常太陽光パネル分離部207は、正常な太陽光パネルが写っている領域が除去されたサーモ画像を、ノイズ除去部208へ出力する。
【0078】
ノイズ除去部208は、正常太陽光パネル分離部207から出力された、正常な太陽光パネルが写っている領域が除去されたサーモ画像を取得する。また、ノイズ除去部208には、外部の装置から出力された、サーモ画像内での太陽光パネルの大きさを示す情報(例えば、太陽光パネルが写っている領域を構成する画素数)が入力される。
【0079】
ノイズ除去部208は、正常な太陽光パネルが写っている領域が除去されたサーモ画像に対してノイズ除去を行う。この際、ノイズ除去部208は、サーモ画像内でのパネルの大きさに基づいて、面積が所定の値以下のものをノイズとみなすようにしてもよい。又は、ノイズ除去部208は、太陽光パネルの候補領域の輪郭の、線分らしさ、あるいは、太陽光パネルの形状との一致度、等に基づいてノイズであるか否かを判定し、ノイズを除去するようにしてもよい。
【0080】
なお、上述したように、背景分離部206に入力されたサーモ画像は、背景分離部206によって背景が除去され、正常太陽光パネル分離部207によって正常な太陽光パネルが写っている領域が除去され、ノイズ除去部208によってノイズが除去される。これにより、サーモ画像には、異常のある太陽光パネルが写っている領域のみが残ることになる。
ノイズ除去部208は、異常のある太陽光パネルを示す情報を外部の装置へ出力する。
【0081】
なお、ノイズ除去の粒度を適切に調整することによって、発電効率に対する影響が比較的軽度な故障が生じている太陽光パネルや、植物によって覆われた太陽光パネル等については、異常のある太陽光パネルとしては検出されないようにすることも可能である。
【0082】
以上説明したように、本発明の実施形態による画像解析システム1は、適応二値化処理が施されたサーモ画像から検出された物体の輪郭の内部の面積及び外周の長さに基づいて、太陽光パネルの候補領域を検出する。本発明の実施形態による画像解析システム1は、検出された複数の候補領域を囲む外接矩形をアレイとして検出することによって、太陽光パネルの検出漏れを削減することができる。
【0083】
また、以上説明したように、本発明の実施形態による画像解析システム1は、サーモ画像から距離画像を生成することによって、太陽光パネルの候補領域の中から、正常な太陽光パネルを検出する。本発明の実施形態による画像解析システム1は、サーモ画像から、正常な太陽光パネルが写っている領域と背景が写っている領域とを除去することによって、異常のある太陽光パネルが写っている領域を特定する。
【0084】
このような構成により、本発明の実施形態による画像解析システム1は、飛行体によって空撮されたサーモ画像から、温度に異常が生じている太陽光パネル部分を精度よく検出することができる。また、これにより、本発明の実施形態による画像解析システム1は、従来技術のように異なる時刻に撮影された複数の画像を用意する必要がないため、異常点検に必要な保守コストを削減することができる。
【0085】
また、本発明の実施形態による画像解析システム1は、1枚のサーモ画像から異常のある太陽光パネルが写っている領域を特定することができる。なお、本発明の実施形態による画像解析システム1によれば、異なる時刻に撮影された複数のサーモ画像を用意してそれぞれ画像解析することによって、より精度高く異常のある太陽光パネルが写っている領域を特定することも可能である。
【0086】
なお、アレイが写っている領域の検出処理における本発明のポイントとして、以下の点が挙げられる。
・適応二値化処理を用いることによって、各太陽光パネルの形状を十分な精度で検出できる点。
・適応二値化処理のみでは、アレイが写っている領域だけでなく背景の領域も混在している画像となる。そのため、輪郭の内部の面積と外周の長さに基づいて、太陽光パネルの形状に近い長方形の輪郭を有する領域のみを太陽光パネルが写っている領域の候補とすることで、誤検出を防止する点。
・更に、複数の太陽光パネルが隣接して並べられてアレイが構成されている点を考慮し、アレイが写っている領域を矩形によって近似して、矩形の内部の領域を全て太陽光パネルが写っている領域であるものとすることにより、太陽光パネルの検出漏れを防止する点。
【0087】
なお、異常のある太陽光パネルが写っている領域の検出処理における本発明のポイントとして、以下の点が挙げられる。
・サーモ画像内の位置によって、太陽光パネルの温度の測定データに誤差が生じるため、サーモ画像内の全ての画素の画素値に対して同一の閾値で二値化処理を行うのは困難である。そのため、適応二値化処理を用いることによって、画素ごとに設定された閾値で二値化処理を行う点。
・異常のある太陽光パネルを検出するのではなく正常な太陽光パネル検出し、正常な太陽光パネルを除外して残った領域を異常のある太陽光パネルとみなす点。これは、異常のある太陽光パネルの場合、太陽光パネルの内部の画素値には変化があるため、領域分割による検出が困難であるためである。
・更に、距離画像を生成し、生成された距離画像を二値化することによって、より精度高く正常な太陽光パネルを検出する点。
【0088】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【0089】
なお、本発明の実施形態においては、入力される画像はサーモ画像であるものとしたが、これに限られるものだはない。入力される画像は可視光画像であってもよい。この場合、太陽光パネルのひび割れやスネイルトレイルといった、目に見える異常を検出することができる。
【0090】
なお、本発明の実施形態においては、太陽光パネルの検出や、異常のある太陽光パネルの検出において、適応二値化処理(適応的閾値処理)を用いたが、分散値を用いて検出することも可能である。しかしながら、分散値を用いる検出方法よりも適応二値化処理を用いた検出方法のほうがより優れる点として、以下のような点が挙げられる。
【0091】
・適応二値化処理を用いた方が、元のエッジが保存されるため、後段の距離画像による判定等において有効である。分散値を用いた方法の場合、元のエッジ部分がぼやけて(広がって)検出される。
・適応二値化処理を用いた方が画像のコントラストの変化による影響が小さい。これにより、閾値調整の難易度が低くなる。連続して撮影されたサーモ画像であっても、コントラストは大きく異なることがある。
【0092】
なお、コントラストが異なる原因としては、例えば、以下のような点が挙げられる。
・太陽、太陽光パネル及びサーモカメラの3者の位置関係によって、取得される赤外線の強度が変化するため。
・画像のコントラストは温度の上限値及び下限値を元に決定されるため、画像全体のコントラストは画像ごとに変動するため。例えば、画像内に金属等の赤外線放射率の小さい素材が映りこんだ場合には異常値(例えば、氷点下である温度値等)として検出される。この場合、上限値及び下限値が大きく変動することがある。
・撮影する飛行体の速度の変化や、飛行による振動等の要因によって、測定値に誤差(動きブレ)が発生するため。
【0093】
なお、本発明の実施形態においては、パネル検出部10はアレイが写っている領域を検出し、異常パネル検出部20はアレイに含まれるモジュール(太陽光パネル)のうち、異常のあるモジュールを検出するものとしたが、これに限られるものではない。例えば、パネル検出部10はモジュール(太陽光パネル)が写っている領域を検出し、異常パネル検出部20はモジュールに含まれるセルのうち、異常のあるセルを検出するような構成であってもよい。
すなわち、同一の形状及び同一の大きさである複数の構造体がタイル状に配置された構造体群が写っている画像から、構造体群が写っている領域を検出する場合、及び、構造体群に含まれる構造体のうち異常のある構造体を検出する場合において、本発明は適用可能である。
【0094】
なお、上述した実施形態における画像解析システム1の一部又は全部をコンピュータで実現するようにしてもよい。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。
なお、ここでいう「コンピュータシステム」とは、画像解析システム1に内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【0095】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信回線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
【0096】
また、上述した実施形態における画像解析システム1の一部又は全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。画像解析システム1の各機能ブロックは個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。