(58)【調査した分野】(Int.Cl.,DB名)
前記判定部は、前記深さ位置のピークが、前記移動方向における所定範囲内において前記深さ方向に複数存在する場合、浅いほうの前記深さ位置のピークを前記埋設物の位置と判定する、
請求項6に記載の埋設物検出装置。
前記深さ方向またはその反対の表面方向において、所定の前記深さ位置の信号強度の、その前の前記深さ位置の信号強度からの変化の差分を検出する1次微分処理部を更に備えた、
請求項1〜8のいずれか1項に記載の埋設物検出装置。
【発明を実施するための形態】
【0021】
以下に、本発明の実施の形態に係る埋設物検出装置について図面に基づいて説明する。
<構成>
(埋設物検出装置1の概要)
図1は、本発明に係る実施の形態における埋設物検出装置1をコンクリート100上に配置した状態を示す斜視図である。
図2は、本実施の形態における埋設物検出装置1の概略構成を示すブロック図である。
【0022】
本実施の形態の埋設物検出装置1は、コンクリート100等の対象物の表面100aを移動しながら電磁波をコンクリート100に放射し、その反射波を受信して解析することによって、コンクリート100内の埋設物101a、101b、101c、101dの位置を検出する。
図1では、埋設物101a、101b、101c、101dは、鉄筋であり、例えば、表面100aから順に20cm、15cm、10cm、5cmの深さ位置に埋設されている。深さ方向が矢印Bで示されており、表面方向が矢印Cで示されている。
【0023】
埋設物検出装置1は、本体部2と、把手3と、車輪4と、インパルス制御モジュール5と、メイン制御モジュール6と、エンコーダ7と、表示部8と、を有する。
本体部2の上面に把手3が設けられている。本体部2の下部に4つの車輪が回転自在に取り付けられている。作業者は、コンクリート100内部の埋設物を検出する際には、把手3を把持して車輪4を回転させながら埋設物検出装置1をコンクリート100の表面100a上で移動させる。
【0024】
インパルス制御モジュール5は、コンクリート100に向けて電磁波を放射するタイミング、および放射した電磁波の反射波を受信するタイミング等の制御を行う。
エンコーダ7は、車輪4に設けられており、車輪4の回転に基づいてインパルス制御モジュール5に反射波の受信タイミングを制御するための信号を送信する。
メイン制御モジュール6は、インパルス制御モジュール5で受信された反射波に関するデータを受け取り、埋設物の検出を行う。
表示部8は、本体部2の上面に設けられており、埋設物101a、101b、101c、101dの位置を示す画像を表示する。
【0025】
(インパルス制御モジュール5)
図3は、インパルス制御モジュール5の構成を示すブロック図である。
インパルス制御モジュール5は、制御部10と、送信アンテナ11と、受信アンテナ12(受信部の一例)と、パルス発生部13と、ディレイ部14と、ゲート部15と、を有する。
【0026】
制御部10は、MPU(Micro Processing Unit)等によって構成されており、エンコーダ入力をトリガとして、パルス発生部13にパルスの発生を指令する。パルス発生部13は、MPUからの指令に基づいてパルスを発生し、送信アンテナ11に送る。送信アンテナ11は、パルスの周期に基づいて電磁波を一定周期で放射する。エンコーダ7の入力のタイミングが、タイミングの一例に対応する。
【0027】
受信アンテナ12は、放射された電磁波の反射波を受信する。ゲート部15は、ディレイ部14からのパルスを受信すると、受信アンテナ12で受信した反射波を取り込み、制御部10へと送信する。ディレイ部14は、所定間隔でゲート部15にパルスを送信し、反射波を取り込ませる。この所定間隔は、例えば2.5mmピッチとなっている。
これにより、インパルス制御モジュール5は、エンコーダ7からの入力をトリガとして、送信アンテナ11から電磁波を複数回出力する。そして、インパルス制御モジュール5は、ディレイ部14によるディレイICを用いて受信タイミングを遅らせることで受信アンテナ12との距離ごとの受信データを取得することができる。
【0028】
図4は、MPUが取得する反射波のデータを示す図である。縦軸は、軸Oを中心として、−4096〜+4096階調で受信信号の強度を示し、矢印方向がマイナス側を示す。横軸は、受信アンテナ12との距離を示し、矢印方向(深さ方向Bに対応)が受信アンテナ12からの距離が長いことを示す。また、距離が長いとは、深さが深いことに相当する。
【0029】
なお、詳しくは後述するが、
図4に示す波形W1には、コンクリート100内に照射されずにアンテナで反射した反射波も含まれる(p1等)ため、基準値の信号強度との差分を算出することにより、コンクリート100内からの反射波のデータの変化が抽出される。
また、
図4に示すデータは、エンコーダ7の入力があった後からエンコーダ7の入力が次にあるときまでのデータである。受信タイミングを除々に遅らせることによって、受信アンテナ12からの距離が長い位置からの反射波を受信するが、エンコーダ7からの入力があると、受信タイミングの遅延が元に戻され、再び受信タイミングを除々に遅らせる。すなわち、移動方向A1、A2における所定の計測位置(エンコーダ7からの入力があった位置)における深さ方向Bの反射波を受信することになる。このような
図4に示すエンコーダ7の入力があった後から次のエンコーダの入力があるまでの反射波のデータを1ライン分のデータという。制御部10は、1ライン分のデータが貯まるごとに、その1ライン分のRF(Radio Frequency)データをメイン制御モジュール6へ送信する。
【0030】
なお、埋設物検出装置1は動かされているため、計測位置は厳密に同じ位置ではなく、深さ方向Bもコンクリート100の表面100aに対して厳密に垂直な方向ではない。
【0031】
(メイン制御モジュール6)
図5は、メイン制御モジュール6の構成を示すブロック図である。メイン制御モジュール6は、受信部21と、RFデータ管理部22と、前処理部23と、埋設物判定部24と、判定結果登録部25、表示制御部26と、を有する。
受信部21は、インパルス制御モジュール5から送信されるごとに、1ライン分のRFデータを受信する。
RFデータ管理部22は、受信部21が受信した1ライン分のRFデータを記憶する。
前処理部23は、1ライン分のデータ毎に、信号強度のピークを検出する。
埋設物判定部24は、前処理部23において検出された1ライン分のRFデータごとの信号強度のピークを用いて、埋設物101の有無を判定して、その位置を特定する。
【0032】
判定結果登録部25は、埋設物判定部24によって判定された埋設物の位置をRFデータ管理部22に登録する。
表示制御部26は、移動方向A1と深さ方向Bの平面において信号強度を色で階調処理した画像を表示部8に表示させる制御を行う。また、表示制御部26は、埋設物101の位置を表示部8に表示させる制御を行う。
【0033】
(前処理部23)
図5に示すように、前処理部23は、移動平均処理部33と、差分処理部32と、一次微分処理部34(差分処理部の一例)と、チャタリング除去部35と、ピーク検出部36(信号強度ピーク検出部の一例)と、を有する。
(移動平均処理部33)
移動平均処理部33は、RFデータについて、1ラインごとに移動平均処理を行う。本実施の形態では、例えば8点平均で移動平均処理を行うことができる。
【0034】
(差分処理部32)
差分処理部32は、移動平均処理を行ったRFデータから、基準値の信号強度との差分を算出することによって、変化した箇所のRFデータを抽出する。
図6(a)は、差分処理を行う前の画像データを示す図であり、
図6(b)は、差分処理を行った後の画像データを示す図である。
【0035】
ここで、基準値の信号強度は予め記憶されている。信号強度から基準値の信号強度を引く。この演算を、全てのラインの全ての深さ位置に対して行うことにより、
図6(b)に示すようにRFデータ信号の変化を明確にすることができる。
図7(a)は、差分処理を行った画像データの部分拡大図であり、
図7(b)は、
図7(a)のラインL1のRFデータの信号強度を示す図である。
図7(b)の横軸は深さ位置を示し、矢印方向に沿って深くなっている。
図7(b)の縦軸は信号強度を示し、矢印方向に沿って信号強度が強くなっている。
【0036】
なお、本実施の形態では、信号強度が強い方が白く階調され、信号強度が弱いほうが黒く階調される。また、本実施の形態では、下向きのピーク、すなわち黒色が最も濃くなっている位置と、上向きのピーク、すなわち白色が最も薄くなっている位置が検出される。例えば、下向きのピークの位置は、コンクリート中の鉄筋等の位置を示し、上向きのピークの位置は、コンクリート中の空洞や樹脂の位置を示す。
【0037】
下向きのピークと上向きのピークを検出する原理は同じであるため、以下の説明では、下向きのピーク(黒色が最も濃くなっている位置)を検出することについて具体的に説明する。
図7(a)のL1上の黒色部分(下向きのピーク)をP1〜P5で示す。このP1〜P5が、
図7(b)にも示されている。また、
図7(b)には、P2とP3の間の上向きのピークの1つがP10として示されている。
【0038】
(一次微分処理部34)
一次微分処理部34は、下向きのピークを検出するために、差分処理が行われたデータに対して一次微分処理を行う。一次微分処理部34は、所定の深さ位置における信号強度から、次の深さ位置における信号強度への差分を算出する。
図8は、
図7(b)のP10〜P3の間の拡大図である。
図9は、
図8のグラフの信号強度および一次微分処理の結果の表150を示す図である。後述するが、
図9には、チャタリング処理の結果と、グラフ151も示されている。
【0039】
図9に示す表150の最も左の欄には、シーケンスナンバーが示されている。シーケンスナンバーが大きくなるに従って位置が深くなっている。左から2つ目の欄には、各シーケンスナンバーでの信号強度が示されている。左から3つ目の欄には、一次微分処理部34によって算出された差分が示されている。
シーケンスナンバーnの差分は、シーケンスナンバーn+1の信号強度からシーケンスナンバーnの信号強度を引いた値となっている。例えば、シーケンスナンバーが7番の差分は、8番目の信号強度(416)から7番目の信号強度(432)を引いた値(−15)となっている。
【0040】
このように、一次微分処理部34は、1ラインの全てのデータに対して一次微分処理を行う。
【0041】
(チャタリング除去部35)
チャタリング除去部35は、一次微分処理が行われた結果に対してチャタリング除去処理を行う。
図8に示すデータでは、領域R1において、全体として信号強度データが減少しているにもかかわらず、データD2が一つ前(浅い)のデータD1よりも大きくなっており、ノイズによるチャタリングが発生していることがわかる。また、領域R2において、データD3よりもデータD4、D5が小さくなっており、ノイズによるチャタリングが発生していることがわかる。このようなチャタリングは、コンクリート内に含まれる骨材の材質・粒度により反射波が変化することによって発生する。チャタリング除去部35は、このようなチャタリングの除去を行う。
【0042】
チャタリング除去部35は、各シーケンスナンバーの差分が正の値であるか負の値であるかを判定する。左から4つ目の欄には、正の変化(増加)であるか負の変化(減少)であるかが示されており、正(+)の変化の場合には1が示され、負(−)の変化の場合には−1が示されている。
すなわち、チャタリング除去部35は、所定の深さ位置から、より深い側の次の深さ位置への信号強度の変化が増加であるか減少であるかを判定する。
【0043】
ここで、
図9には、表150のハッチングで囲まれている部分のグラフ151が示されている。変化(+/−)を示す◆のデータでは、周囲が負(−)の変化にもかかわらずシーケンスナンバー11だけが正(+)の変化を示しており、シーケンスナンバー11にノイズによるチャタリングが発生していることがわかる。このシーケンスナンバー11の差分及び変化(+/−)の値は、
図8のデータD1〜D2の間に対応する。
【0044】
また、周囲が負(−)の変化にもかかわらずシーケンスナンバー34、35が正(+)の変化を示しており、シーケンスナンバー34、35にノイズによるチャタリングが発生していることがわかる。このシーケンスナンバー34の差分および変化(+/−)の値は、
図9のデータD3〜D4の間の変化に対応し、シーケンスナンバー35の差分および変化(+/−)の値は、
図8のデータD4〜D5の間の変化に対応する。
【0045】
チャタリング除去部35は、上記変化(+/−)の値に対してチャタリングの除去処理を行う。表1の最も右側の欄には、チャタリング除去処理によるノイズ除去後の変化(+/−)の値が示されている。チャタリング除去部35は、連続する3つの値が全て0より大きい場合には正(+)の変化と判断し、連続する3つの値が全て0より小さい場合には負(−)の変化と判断し、それ以外はすべて前回の値を保持する。
【0046】
詳しく説明するとチャタリング除去部35は、シーケンスナンバーn番目の変化(+/−)とn+1番目の変化(+/−)とn+2番目の変化(+/−)が全て正の値(1)の場合には、n番目の変化(+/−)を正の値(1)と判断する。また、チャタリング除去部35は、シーケンスナンバーn番目の変化(+/−)とn+1番目の変化(+/−)とn+2番目の変化(+/−)が全て負の値(−1)の場合には、n番目の変化(+/−)を負の値(−1)と判断する。チャタリング除去部35は、シーケンスナンバーn番目の変化(+/−)とn+1番目の変化(+/−)とn+2番目の変化(+/−)の正負が一致しない場合、n−1番目の変化(+/−)を保持する。
【0047】
例えば、6番目の変化(+/−)の値は−1であり、7番目の変化(+/−)の値は−1であり、8番目の変化(+/−)の値は−1である。そのため、チャタリング除去部35は、6番目のチャタリング処理後の変化(+/−)の値を−1とする。
一方、チャタリングの発生した11番目の変化(+/−)の値は1であり、その次の12番目の変化(+/−)の値は−1であり、13番目の変化(+/−)の値は−1である。そのため、チャタリング除去部35は、10番目のチャタリング処理後の変化(+/−)の値である−1を、11番目の変化(+/−)の値として保持する。
【0048】
また、チャタリングの発生した34番目の変化(+/−)の値は1であり、その次の35番目の変化(+/−)の値は1であり、36番目の変化(+/−)の値は−1である。そのため、チャタリング除去部35は、33番目のチャタリング処理後の変化(+/−)の値である−1を、34番目の変化(+/−)の値として保持する。
また、チャタリングの発生した35番目の変化(+/−)の値は1であり、その次の36番目の変化(+/−)の値は−1であり、37番目の変化(+/−)の値は1である。そのため、チャタリング除去部35は、34番目のチャタリング処理後の変化(+/−)の値である−1を、35番目の変化(+/−)の値として保持する。
【0049】
グラフ151には、チャタリング処理後の変化(+/−)を示す■のデータでは、シーケンスナンバー11の変化(+/−)の値が負(−)の変化に変更され、シーケンスナンバー34、35変化(+/−)の値が正(+)の変化に変更されており、チャタリングが除去されていることがわかる。
以上のようなチャタリング除去部35によるチャタリング除去処理が、ラインのRFデータ毎に行われる。
【0050】
(ピーク検出部36)
ピーク検出部36は、一次微分処理を行った後の1ラインのRFデータのピークを抽出する。例えば、下向きのピーク(黒色のピーク)を抽出する場合、ピーク検出部36は、一次微分処理を行った後の変化が、負の変化から正の変化に変わるポイントをピークとして抽出する。具体的には、
図9の表150に示すように、シーケンスナンバー36における変化が負(−)の変化となっており、シーケンスナンバー37における変化が正(+)の変化となっていることから、ピーク検出部36は、シーケンスナンバー37の深さ位置において信号強度が下向きのピークとなっていると判定し、シーケンスナンバー37を下向きのピークとして抽出する。
【0051】
なお、上向きのピーク(白色が最も薄くなっている位置)を検出する場合には、ピーク検出部36は、一次微分処理を行った後の変化が、正の変化から負の変化に変わるポイントをピークとして抽出する。例えば、
図9の表150では、シーケンスナンバー5の深さ位置において信号強度が上向きのピークとなっていると判定し、シーケンスナンバー5を上向きのピークとして抽出される。
【0052】
さらに、ピーク検出部36は、抽出されたピークのうち信号強度の絶対値が所定閾値以上の場合に、ピークとして検出する。ピーク検出部36は、抽出されたピークの強度値が−E以上、+E以下(
図7参照)の範囲外の場合に、その抽出されたピークをピークとして検出する。一方、ピーク検出部36は、抽出されたピークの強度値が閾値±Eの範囲内の場合に、その抽出されたピークをピークとして検出しない。
図7の例では、抽出された下向きのピークP1〜P5のうちP2、P3、P4がピークとして検出されるが、P1とP5は−E以上+E以下の範囲内に存在するため、ピークとして検出されない。
【0053】
(埋設物判定部24)
埋設物判定部24は、
図5に示すように、グルーピング部51と、チャタリング除去部52と、補間部53と、埋設物検出部58と、を有する。グルーピング部51は、ピーク検出部36によって検出された複数のピークのうち、移動方向に対して連続したピークをグループとして抽出する。チャタリング除去部52は、グループのチャタリングを除去する。補間部53は、チャタリング除去された後の複数のグループについて補間処理を行う。埋設物検出部58は、グループが所定の山形波形である場合に、頂点を検出して頂点グループに入れ、複数の頂点から埋設物の位置を判定する。
【0054】
(グルーピング部51)
グルーピング部51は、ピーク検出部36によるピーク検出結果をグルーピングする。グルーピング部51は、過去のラインから順番にピーク検出結果の有無を確認する。その結果を始点として進行方向に対して連続するピーク検出の有無をチェックする。
図10は、前処理部23による前処理後の画像データを示す図である。
図10では、今回取得したラインL2が示されている。
図11(a)〜(d)は、グルーピング部51による処理を説明するための図である。
【0055】
図11(a)は、次のラインのピークが存在するか否かを確認する対象範囲を示す図である。
グルーピング部51は、最初に見つけたピークの位置QSを始点(
図10において●で示す)として、移動方向A1の1pixel以内且つ、上下の5pixel以内に次のラインのピークが存在するか否かを確認する。なお、ピークの位置Qを見つけたラインを現在のラインとする。なお、pixel数の具体的な数値は必ずしも1pixel、5pixelに限定されるものではない。
【0056】
図11(b)は、次のピークの位置Q2が、現在のラインのピークの位置QSの移動方向A1の1pixel以内且つ、上側5pixel以内に存在する場合を示す。
図11(b)では、ピークの位置が移動方向において上昇(浅い側に移動)していることになる。
図11(c)は、次のラインのピークの位置Q2が、現在のラインのピークの位置QSの移動方向A1の1pixel以内且つ、下側5pixel以内に存在する場合を示す。
図11(c)では、ピークの位置が移動方向において下降(深い側に移動)していることになる。
【0057】
続いて、ピークの位置Q2が存在するラインを現在のラインとして、ピークの位置Q2の移動方向A1の1pixel以内且つ、上下の5pixel以内に次のラインのピークが存在するか否かを確認する。このように、ラインのRFデータを受信するごとに、現在のラインを移動方向にずらしてピークの連続性を確認する。
そして、
図11(d)に示すように、次のラインのピークが、現在のラインのピークの位置の移動方向A1の1pixel以内且つ、上下の5pixel以内に存在しない場合には、ピークの位置Qeをグループの終点(
図10で■で示す)とする。
【0058】
以上のように、グルーピング部51は、ピークの位置のグルーピングを行う。
図10では、黒丸と黒四角の間が線で繋がれたグループ(例えばグループG1)が示されている。
なお、同様に上向きのピークの位置(白色が最も薄くなっている位置)のグルーピングも行われる。
【0059】
(チャタリング除去部52)
チャタリング除去部52は、グルーピング部51によってグルーピングされた全ての結果に対して移動平均処理を行う。
チャタリング除去部52は、グルーピング部51によってグルーピングされた連続するピークの位置について、グループごとに移動平均処理を行う。本実施の形態では、8点で移動平均処理を行うことができる。
【0060】
(補間部53)
補間部53について説明を行う前に、補間部53によるグループの補間を行う理由について説明する。
チャタリング除去後のグループの形状に基づいて、埋設物検出部58によって埋設物の検出が行われる。詳しくは後述するが、埋設物検出部58は、移動方向A1と深さ方向Bにおける平面におけるグループの形状が山形波形の場合に埋設物の検出を行うことができる。
しかしながら、浅い埋設物から受信する反射波に基づくグループの端部が、より深い埋設物から受信する反射波に基づくグループの頂点付近に重なる場合には、深い埋設物からの反射波の山形波形が不完全となるが、本実施の形態の補間処理を行なうことによって埋設物を検出することが出来る。
【0061】
図12は、グループの山形波形の一部が欠ける理由を説明するための図である。
図12(b)は、埋設物検出装置1が
図12(a)に示す受信位置P1で埋設物201からの反射波を受信した際の反射波の画像データを示す。画像データでは、上述したように反射波の大きさをグレースケール(大きい場合を白、小さい場合を黒)で示している。埋設物201による反射波形は、例えば黒白の山形波形として表示される。上述したピーク検出部36は、
図12(b)に示すように、抽出した下向きのピーク(黒色のピークともいえる)および上向きのピーク(白色のピークともいえる)のうち、−E以上、+E以下の閾値範囲外のものをピーク(
図12(b)に示すピーク1〜7)として検出する。
【0062】
図12(d)は、埋設物検出装置1が
図12(c)に示す受信位置P2で埋設物201からの反射波を受信した際の反射波の画像データを示す。
図12(d)に示すように、埋設物が複数存在する場合(埋設物201、202)、例えば埋設物201から強度が大きい白が反射される時間T1と埋設物202から強度が小さい黒が反射される時間T1が同じとき、白と黒が合算されることにより相殺されてグレーとなるため、閾値範囲内となり、ピークとして検出できない(
図12(d)のZ参照)。
【0063】
このため、
図13に示すように山形波形が途中で途切れて2つのグループが検出される。
図13は、山形波形が途中で途切れて、グループG11とグループG12の2つのグループが検出された画像データを示す図である。途切れた部分が203で示されている。
補間部53は、チャタリング除去後のグループに対して、所定の補間条件を満たす場合にグループ間を補間して1つのグループとする。
【0064】
補間部53は、範囲算出部54と、補間判定部55と、を有する。
範囲算出部54は、チャタリング除去後のグループごとに、グループの移動方向A1側の端点を基準として所定範囲Fを決定する。補間判定部55は、所定範囲F内に、他のグループの端点が存在すれば、2つのグループを1つのグループとする。
図14は、補間処理について説明するための図である。
図14では、範囲算出部54は、グループG11の移動方向A1側の端点Qeを基準として所定範囲Fを決定する。補間判定部55は、
図14では所定範囲F内にグループG12の移動方向A1と反対方向A2側の端点Qsが存在するため、グループG11とグループG12を1つのグループとしてグルーピングすることになる。
【0065】
図15(a)〜(d)は、範囲算出部54による所定範囲Fを決定する処理を説明するための図である。
図15(a)は、グルーピングの結果の山形波形を示す。範囲算出部54は、
図15(a)に示すグループG11について微分を行う。
図15(b)は、グループG11を微分したグループG11´を示す図である。範囲算出部54は、微分値から端点Qe以降の取りうる値の予測を行う。
【0066】
具体的には、範囲算出部54は、過去8点の微分値の最大値にマージを持たせた値を上限微分値(
図15(c)の上限微分値UL参照)とし、過去8点の微分値の最小値にマージを持たせた値を下限微分値(
図15(c)の下限微分値LL参照)とする。
図16(a)〜(c)は、上限微分値UL(傾きの上限の一例)と下限微分値LL(傾きの下限の一例)を算出する方法の具体例を示す図である。
【0067】
図16(a)は、元のグループの形状を示す図である。xは移動方向への距離を示し、画素の位置を示す。
図16(a)に示す表では、x=70が、グループG11の端点Qeとする。
図16(a)に示すf(x)は、深さ方向の位置を示す。範囲算出部54は、
図16(a)に示すf´(x)を算出する。f´(x)は、f´(x)=(f(x+h)−f(x−h))/2h(中心微分)の式で求めることができる。
【0068】
次に、範囲算出部54は、過去8点の微分値の最大値を抽出する。
図16(a)に示す表では、0.01となる。範囲算出部54は、この0.01にマージを加えて、上限微分値を1.01と算出する。そして、f(N)=f´(x)(Nはx+1〜x+11)の式に基づいて、
図16(b)の表に示すように、範囲算出部54は、71〜81の上限微分値を1.01とする。
図15(c)には、上限微分値を繋いだ上限微分ULが示されている。また、範囲算出部54は、f(N2)=2×f´(N2−1)+f(N)(N2はx+2〜x+11)の式を用いて上限微分値を積分することにより、各画素における上限値f(x)の値を算出する。
図15(d)には、算出した上限値f(x)を繋いだ上限波形UMが示されている。
【0069】
一方、範囲算出部54は、過去8点の微分値の最小値を抽出する。
図16(a)に示す表では、−1.25となる。範囲算出部54は、この−1.25にマージを加えて、下限微分値を−2.25と算出する。そして、f(N)=f´(x)(Nはx+1〜x+11)の式に基づいて、
図16(c)の表に示すように、範囲算出部54は、71〜81の下限微分値を−2.25とする。
図15(c)には、下限微分値を繋いだ下限微分LLが示されている。また、範囲算出部54は、f(N2)=2×f´(N2−1)+f(N)(N2はx+2〜x+11)の式を用いて下限微分値を積分することにより、各画素における下限値f(x)の値を算出する。
図15(d)には、算出した下限値f(x)を繋いだ下限波形LMが示されている。
【0070】
このように、山形波形が途中で途切れている場合には、上限波形UMと下限波形LMの範囲に続いていると予測される。
補間判定部55は、上限波形UMと下限波形LMの間であって、端Qe(第1端の一例)から移動方向A1に10pixelの範囲内の所定範囲Fに他のグループG12の端Qsが存在するか否かを判定する。所定範囲Fに他のグループの端が存在することが、所定の補間条件の一例である。
図17に示すように、他のグループG12の端点Qs(第2端の一例)が存在する場合には、グループG11とグループG12の間を補間しグループG11の端点QeとグループG12の端点Qeを接続する。なお、補間判定部55は、端Qeから所定範囲F内に他のグループの端が存在しない場合には、端Qeを他のグループと繋ぐ補間は行われない。
【0071】
(埋設物検出部)
埋設物検出部58は、補間部53によって補間されたグループと補間されていないグループの双方に対して埋設物の検出を行う。
埋設物検出部58は、山形波形頂点検出部56(深さ位置ピーク検出部の一例)と、判定部57と、を有する。山形波形頂点検出部56は、検出したグループが所定の山形波形であるか否かについて判定し、所定の山形波形と判定した場合には、山形波形のピークの位置を頂点グループに入れる。
判定部57は、頂点グループに基づいて、埋設物の位置を判定する。
【0072】
(山形波形頂点検出部56)
山形波形頂点検出部56は、グループの形状が所定の山形波形であるか否かを判定する。山形波形頂点検出部56は、第1条件、第2条件、および第3条件の3つの条件を満たす場合に、グループが所定の山形波形であると判定する。
【0073】
第1条件は、微分したときに、微分値がプラスからゼロを経由してマイナスになることであり、第2条件は、第1条件のゼロ点から前後にXpixel以上ピーク値が存在することであり、第3条件は、第1条件のゼロ点を基準に、Xpixel範囲内の微分値の面積が所定閾値以上であることである。
山形波形頂点検出部56は、これら3つの条件を満たす場合に、グループの形状が所定の山形波形であると判定し、第1条件のゼロ点に対応する頂点を検出する。
【0074】
図18(a)は、グループ化された複数のピークの位置を示す図である。山形波形頂点検出部56は、
図18(a)に示すデータを微分し、その微分データが、プラスからゼロを経由してマイナスになる場合に、第1条件を満たすと判定する。
図18(b)は、
図18(a)を微分したデータを示す図である。
図18(b)では、移動方向A1に沿って微分値がプラスからゼロを経由してマイナスになっているため、第1条件を満たすと判定される。なお、ゼロの点Hは、
図18(a)に示す深さ位置のピークQpを示す。
【0075】
次に、第2条件として、山形波形頂点検出部56は、微分したデータのゼロの点H(深さ位置のピークQp)から前後方向にXpixel以上、信号強度のピークが存在するか否かを判定する。
図19(a)は、
図18(a)に第2条件を示した図である。
図19(b)は
図18(b)に第2条件を示した図である。
図19(a)および
図19(b)に示すように、ゼロの点H(深さ位置のピークQp)から前後方向にXpixel以上信号強度のピーク値が存在するため、
図19(a)および
図19(b)に示すデータは、第2条件を満たすと判定される。
【0076】
次に、第3条件として、山形波形頂点検出部56は、
図19(b)に示す斜線部300の面積を算出し、算出した面積が所定閾値以上であるか否かを判定する。
図20(a)は、斜線部300の面積が所定閾値以上である例を示す図であり、
図20(b)は、斜線部300の面積が所定閾値未満である例を示す図である。算出した面積が所定閾値以上の場合には、山形波形頂点検出部56は、頂点Qpを山形波形の頂点グループに入れる。一方、算出した面積が所定閾値以上の場合には、山形波形頂点検出部56は、頂点Qpを山形波形の頂点グループに入れない。
【0077】
(判定部57)
判定部57は、山形波形の頂点グループに入れられた頂点に基づいて埋設物101の位置を判定する。
判定部57は、微分した時の面積が所定閾値以上の頂点において、浅い頂点を基準に頂点グルーピングを行う。判定部57は、頂点グルーピングした頂点の位置関係に基づいて、埋設物か否かの判定を行う。判定部57は、頂点グルーピングした範囲内に2つ以上の頂点が存在する場合に、浅いほうの頂点位置を埋設物の位置として登録する。
【0078】
頂点グルーピングは、最も浅い頂点を基準に前後方向(矢印A1、A2方向)に±Jpixel、上下方向(矢印B、C方向)に下最大までの範囲の頂点をグループとする。
図21(a)〜(c)は、頂点グルーピングの例を示す図である。
図21では、白の四角を白のピークの頂点を示し、黒の四角が黒のピークの頂点を示す。
図21(a)では、頂点グルーピングの範囲内に浅い方から白のピーク、黒のピークが順番に示されている。
図21(b)では、頂点グルーピングの範囲内に浅い方から黒のピーク、白のピーク、および黒のピークが順番に示されている。
図21(c)では、頂点グルーピングの範囲内に黒のピークのみが示されている。
【0079】
この場合、
図21(a)では、最も浅い白のピークの位置(P20として示す)が埋設物の位置として登録される。また、
図21(b)では、最も浅い黒のピークの位置(P21として示す)が埋設物の位置として登録される。一方、
図21(c)では、頂点グループ範囲内にピークが一つしか存在しないため、埋設物の位置としては登録しない。
【0080】
(補間による山形波形の判定)
補間部53による補間を行うことによって、山形波形と判定される例を説明する。
図22(a)は、山形波形の途中が欠けているデータの例を示す図である。
図22(a)の上段は、データを示す表である。中段は上段のデータのグラフ(横軸x、縦軸f(x))を示す図であり、グループG11とグループG12に分かれている。下段は上段のデータのグラフ(横軸x、縦軸f´(x))を示す図である。下段のデータのグラフは、中段のデータのグラフを微分したものである。
図22(a)の下段のグラフでは、グループG11の微分がG11´として示され、グループG12の微分がG12´として示されている。
【0081】
このように、2つに分かれているため、微分値のグラフがゼロを通らず、第1条件に該当せず山形波形と認識されない。
しかしながら、
図22(b)の上段の表に示すように、補間を行うことによって、
図22(b)の中段のグラフに示すように、グループG11とグループG12が1つのグループとされ、その上で山形波形頂点検出部56による検出が行われる。これにより、
図22(b)の下段のグラフに示すように、微分値(G13´)がプラスからゼロを通ってマイナスとなるため、第1条件を満足することになり、他の第2条件と第3条件を満たすことによって山形波形頂点検出部56は、グループG11とグループG12を1つのグループG13として山形波形を検出することができる。
【0082】
なお、埋設物の深さが深いほど山形波形は鈍角(平らになる)になり、浅いほど鋭角(急峻になる)になる傾向があるが、補間部53による範囲上下限値は、過去8点の微分値を元に作成しているため、埋設物の深さが深いほど上下限値の範囲は狭くなり、浅いほど上下限値の範囲は広がる。そのため、埋設物の深さに応じて、すなわち山形波形の形状に応じて、波形が続いていると仮定した場合の波形の伸びていく予測範囲である所定範囲Fを変更することができる。
【0083】
(判定結果登録部25)
判定結果登録部25は、埋設物判定部24で判定した結果(グループ、ピーク位置、決定された埋設物の位置など)をRFデータ管理部22に登録する。
(表示制御部26)
表示制御部26は、データ画像にグループ、ピーク位置などを示して、表示部8に表示させる。例えば、
図10の画像データのように、RFデータを白黒階調した画像データおよび決定された埋設物の位置(例えば、×印)が表示部8に表示される。
【0084】
<動作>
次に、本発明にかかる実施の形態の埋設物検出装置1の動作について説明する。
(インパルス制御モジュール処理)
図23は、インパルス制御処理を示すフロー図である。
インパルス制御モジュール処理が開始されると、ステップS1において、エンコーダ7から入力されると、ステップS2において、インパルス出力制御が開始され、パルス発生部13からのパルスに基づいて送信アンテナ11から一定周期(例えば、1MHz)で電磁波のパルスが出力される。
【0085】
次に、ステップS3において、ディレイ部14がDelayICにDelay時間を設定する。例えば、0〜5120psecまで10psec単位でDelay時間を設定することができる。
次に、ステップS4において、制御部10は、受信アンテナ12からゲート部15を介して受信したRFデータをAD変換する。
【0086】
次に、ステップS5において、Delay時間が最大(例えば、5120psec)であるか否かが判断され、最大でない場合、制御がステップS3に戻る。このステップS3、S4、S5が繰り返されることにより、1ライン分のデータを取得することができる。ステップS5が、受信ステップの一例に対応する。
次に、ステップS6において、AD変換されたRFデータをメイン制御モジュール6に送信する。
【0087】
そして、ステップS7において、インパルス制御が停止される。
次に、作業者によって埋設物検出装置1が移動方向Aに移動されると、エンコーダ7からの入力があり、ステップS2〜S7の制御が行われ、次の1ライン分のデータが取得され、メイン制御モジュール6に送信される。
【0088】
(メイン制御モジュール処理)
図24は、メイン制御モジュール6の処理を示すフロー図である。
はじめに、ステップS11において、受信部21がインパルス制御モジュール5から1ライン分のRFデータを受信すると、ステップS12において、埋設物の判定を行う前の前処理が、前処理部23によって行われる。
次に、ステップS13において、埋設物判定部24によって埋設物の有無が判定され、埋設物の位置が特定される。
【0089】
次に、ステップS14において、埋設物判定部24によって判定された結果が、判定結果登録部25によって登録される。
次に、各ステップにおける処理について詳しく説明する。
【0090】
(前処理)
図25は、
図24のステップS12における前処理を示すフロー図である。
はじめに、ステップS22において、移動平均処理部33が、受信したRFデータに対して移動平均処理を行う。
次に、ステップS23において、差分処理部32が、予め記憶されている基準値の信号強度と移動平均処理を行ったRFデータとの差分を算出し、RFデータの変化が抽出される。
【0091】
次に、ステップS24において、一次微分処理部34が、移動平均処理された差分結果に対して一次微分処理を行い、深さ方向において隣り合うデータ間の差分が正(増加)か負(減少)かの判定を行う。
次に、ステップS25において、チャタリング除去部35が、一次微分処理後のデータに対して、チャタリング除去処理を行う。
【0092】
最後に、ステップS26において、ピーク検出部36が、チャタリング除去処理が行われた判定結果を用いて信号強度のピークを検出する。ステップS26が、信号強度ピーク検出ステップの一例に対応する。
【0093】
(移動平均処理)
次に、
図25のステップS22の移動平均処理について説明する。
図26は、移動平均処理を示すフロー図である。
移動平均処理が開示されると、ステップS31において、移動平均処理部33が、受信したRFデータのうち、シーケンスナンバー1の受信データを選択する。
そして、移動平均処理部33がシーケンスナンバー1のデータについてステップS32の処理を行った後、制御はステップS33に進む。
ステップS33では、シーケンスナンバーが最大値であるか否かが判定され、シーケンスナンバーが最大値でない場合には、制御はステップS31に戻り、シーケンスナンバーが1つ繰り上げられ、シーケンスナンバー2の受信データが選択される。そして、シーケンスナンバー2のデータについてステップS32の処理が行われる。
【0094】
このように、1ライン分のデータの全てに対してステップS32の処理が行われるまでフローが繰り返される。
ステップS32では、移動平均処理部33が、1ライン分のRFデータに対して移動平均処理を行う。例えば、8点平均を用いて移動平均処理を行うことができる。
【0095】
(差分処理)
次に、
図25のステップS23の差分処理について説明する。
図27は、差分処理を示すフロー図である。
差分処理が開示されると、ステップS41において、差分処理部32が、移動平均処理を行ったRFデータのうち、シーケンスナンバー1の受信データを選択する。
そして、差分処理部32がシーケンスナンバー1のデータについてステップS42の処理を行った後、制御はステップS43に進む。
ステップS43では、シーケンスナンバーが最大値であるか否かが判定され、シーケンスナンバーが最大値でない場合には、制御はステップS41に戻り、シーケンスナンバーが1つ繰り上げられ、シーケンスナンバー2の受信データが選択される。そして、シーケンスナンバー2のデータについてステップS42の処理が行われる。
【0096】
このように、1ライン分のデータの全てに対してステップS42の処理が行われるまでフローが繰り返される。
ステップS42では、差分処理部32が、RFデータ管理部22に記憶されている基準値の信号強度と、それぞれのラインの受信データとの差分を算出する。
この差分処理によって、
図6(b)に示す画像データのように、RFデータの変化を抽出することができる。
【0097】
(差分結果の一次微分処理)
次に、
図25のステップS24の差分結果の一次微分処理について説明する。
図28は、差分結果の一次微分処理を示すフロー図である。
差分結果の一次微分処理が開始されると、ステップS51において、一次微分処理部34が、差分処理によって得られた差分結果のうち、シーケンスナンバー1の差分結果を選択する。
【0098】
次に、ステップS52において、一次微分処理部34は、差分結果の一次微分処理を行う。ここで、一次微分処理とは、深さ方向において、所定の位置の差分結果のデータと次の位置の差分結果のデータとの差を算出することである。すなわち、シーケンスナンバー1と、次のシーケンスナンバー2の差分が算出される。
次に、ステップS53において、シーケンスナンバーが最大値であるか否かが判定され、シーケンスナンバーが最大値でない場合には、制御はステップS51に戻り、1つ番号が繰り上げられ、シーケンスナンバー2の受信データが選択される。そして、シーケンスナンバー2とシーケンスナンバー3の差分が算出される。
【0099】
このように、1ライン分のデータの全てに対して一次微分処理が行われるまで、順次番号が繰り上げられ、ステップS52が繰り返される。
すなわち、シーケンスナンバーnの一次微分処理を行う場合には、シーケンスナンバーn+1の差分結果のデータから、シーケンスナンバーnの差分結果のデータを引くことによって、シーケンスナンバーnのデータに対して一次微分処理を行うことができる。
これによって、
図9の表150の左から3番目の欄の差分が算出される。
【0100】
(チャタリング除去処理)
次に、
図25のステップS25のチャタリング除去処理について説明する。
図29は、チャタリング除去処理を示すフロー図である。
チャタリング除去処理が開始されると、ステップS61において、チャタリング除去部35が、一次微分処理が行われたシーケンスナンバー1を選択する。
【0101】
そして、チャタリング除去部35が、シーケンスナンバー1のデータについて、ステップS62〜S66のいずれかの制御を行った後、制御はステップS67に進む。
ステップS67では、シーケンスナンバーが最大値であるか否かが判定され、シーケンスナンバーが最大値でない場合には、制御はステップS61に戻り、1つ番号が繰り上げられ、シーケンスナンバー2の受信データが選択される。
【0102】
このように、1ライン分のデータの全てに対してチャタリング除去部35による処理が行われるまで、順次番号が繰り上げられ、ステップS62〜S66のいずれかの処理が繰り返される。
ここで、n番目のデータについてチャタリング除去処理を行うとして、ステップS62〜S66について説明する。
【0103】
ステップS62において、チャタリング除去部35は、連続する3つの1次微分結果が全て0よりも大きいか否かを判定する。シーケンスナンバーnが選択されているため、シーケンスナンバーn、n+1、n+2の一次微分結果が全て0以上の場合、チャタリング除去部35は、ステップS63において、シーケンスナンバーnについて、チャタリング除去処理後の一次微分結果を正(+)と記憶する。
【0104】
一方、ステップS62において、チャタリング除去部35は、連続する3つのシーケンスナンバーの1次微分結果の1つでも0以下の場合、ステップS64において、連続する3つの1次微分結果が全て0よりも小さいか否かを判定する。シーケンスナンバーnが選択されているため、シーケンスナンバーn、n+1、n+2の一次微分結果が全て0よりも小さい場合、チャタリング除去部35は、ステップS65において、シーケンスナンバーnについて、チャタリング除去処理後の一次微分結果を負(−)と記憶する。
【0105】
また、ステップS64において、連続する3つの1次微分結果の1つでも0より大きい場合、制御はステップS66へと進む。
そして、ステップS66において、チャタリング除去部35は、前回のシーケンスナンバーの状態を、今回のシーケンスナンバーの状態として記憶する。シーケンスナンバーnが選択されているため、チャタリング除去部35は、シーケンスナンバーn−1について記憶したチャタリング除去処理後の正(+)または負(−)の結果を、シーケンスナンバーnのチャタリング除去処理後の結果として記憶する。
これによって、
図9の表150の最も右側のチャタリング処理後の変化を得ることができる。
【0106】
(ピーク検出処理)
次に、
図25のステップS26のピーク検出処理について説明する。
図30は、ピーク検出処理を示すフロー図である。
【0107】
ピーク検出処理が開始されると、ステップS71において、ピーク検出部36が、チャタリング除去処理が行われたシーケンスナンバー1を選択する。
そして、ピーク検出部36は、シーケンスナンバー1のデータについて、ステップS72、S73、S74の制御を行った後、制御はステップS75に進む。
ステップS75では、シーケンスナンバーが最大値であるか否かが判定され、シーケンスナンバーが最大値でない場合には、制御はステップS71に戻り、シーケンスナンバーが1つ繰り上げられ、シーケンスナンバー2の受信データが選択される。そして、シーケンスナンバー2のデータについてステップS72、S73、S74の処理が行われる。
【0108】
このように、1ライン分のデータの全てに対してチャタリング除去部35による処理が行われるまで、順次番号が繰り上げられ、ステップS72、S73、S74の処理が繰り返される。
ここで、n番目のデータについてピーク検出処理を行うとして、ステップS72〜S74について説明する。
【0109】
ステップS72において、ピーク検出部36は、チャタリング除去後の前回のシーケンスナンバーn−1の状態が負(−)で、今回のシーケンスナンバーnの状態が正(+)であるか否か、若しくは、チャタリング除去後の前回のシーケンスナンバーn−1の状態が正(+)で、今回のシーケンスナンバーnの状態が負(−)であるか否か、を判定する。
そして、前回のシーケンスナンバーn−1の状態が負(−)で、今回のシーケンスナンバーnの状態が正(+)である場合、若しくは、チャタリング除去後の前回のシーケンスナンバーn−1の状態が正(+)で、今回のシーケンスナンバーnの状態が負(−)である場合、ピーク検出部36は、n番目の座標をピークとして抽出する。
【0110】
次に、ステップS73において、ピーク検出部36は、抽出したn番目の座標のピークの信号強度が、所定閾値(−E以上、+E以下)の範囲外であるか否かを判定する。
そして、抽出したn番目の座標のピークの信号強度が所定の範囲外の場合、ステップS74において、n番目の座標がピーク座標としてRFデータ管理部22に記憶される。座標は、例えば、ピクセルを単位とし、移動距離(ラインの番号ともいえる)と深さ位置で示すことができる。
これにより、上述したように、例えば、
図9の表150のシーケンスナンバー5(白のピーク)、37(黒のピーク)をピークとして検出することができる。
【0111】
(埋設物判定処理)
次に、
図24のステップS13に示す埋設物判定処理について説明する。
図31は、埋設物判定処理を示すフロー図である。
【0112】
埋設物判定処理が開始されると、はじめに、ステップS81において、グルーピング部51が、前処理部23で行われたピーク検出結果のグルーピング処理を行う。このステップS81が、グルーピングステップの一例に対応する。
次に、ステップS82において、チャタリング除去部52が、グルーピングされたグループに対してチャタリング除去処理を行う。
【0113】
次に、ステップS83において、補間部53が、山形波形が途中で途切れている場合等に所定条件を満たす場合にグループ間を繋ぐことによって山形波形補間処理を行う。このステップS83が、補間ステップの一例に対応する。
次に、ステップS84において、山形波形頂点検出部56が、山形波形補間処理後のグループが所定の山形波形を満たしている場合に、山形波形の頂点を検出する。
【0114】
次に、ステップS85において、複数の山形波形の頂点に基づいて埋設物の判定処理を行う。ステップS84,S85が、埋設物検出ステップの一例に対応する。
次に、ステップS86において、山形波形頂点検出部56によって検出されたピークの位置に、表示制御部26が印(例えば、×印、○印等)をつけて表示部8に表示させる。
【0115】
(ピーク検出結果のグルーピング処理)
図31のステップS81のピーク検出結果のグルーピング処理について説明する。
図32は、ピーク検出結果のグルーピング処理を示すフロー図である。
はじめに、ステップS91において、グルーピング部51は、検出状態を“未検出”の状態とする。
過去に取得した全てのデータを対象とし、ステップS92では、グルーピング部51は、過去の古いデータを処理の対象として選択する。そして、ステップS101において、グルーピング部51は、今回取得したラインまでの過去に取得したデータの全てに対して処理を行ったか判定し、処理を行っていない場合、制御はステップS92へと戻り、次に古いデータが処理の対象とされる。このように、例えば、最も古いラインのシーケンスナンバー1から順にステップS93〜ステップS100の処理が行われる。
【0116】
ステップS93において、グルーピング部51は状態が未検出であるか否かを判定する。はじめの状態は“未検出”であるため、制御はステップS94に進む。
ステップS94において、グルーピング部51は、所定範囲内にピークが検出された位置があるか否かを判定する。所定範囲にピークが検出されない場合には、制御はステップS101へと進む。所定範囲は適宜設定することができ、例えば、1つのラインに設定してもよいし、1つのラインのシーケンスナンバーで設定してもよい。
【0117】
このように、ステップS94において、古いデータから順番にピークが検出された位置があるか否かの判定が行われ、ピークが検出された位置がある場合に、ステップS95において、グルーピング部51は、検出状態を“検出中”とする。
次に、ステップS96において、グルーピング部51は、ピークを検出した点を記憶する。この点は、ピクセルを単位とする座標であり、例えば、移動距離(ラインの番号ともいえる)と深さ位置で示すことができる。なお、この点が、
図10の始点(●)に対応する。
【0118】
次に、ステップS101およびステップS92を経て、次のデータが処理の対象とされる。
次に、ステップS93において、検出状態が“検出中”となっているため、制御はステップS97に進む。
ステップS97において、グルーピング部51は、ステップS96で記憶した位置から所定範囲内にピークを検出した位置があるか否かを判定する。この所定範囲内は、例えば、
図11(a)〜
図11(d)で説明した移動方向1pixel以内であって、上下5pixel以内に設定することができる。ピークを検出した位置が所定範囲内に存在する場合には、ステップS98において、グルーピング部51は、連続した位置があるとして、その位置を記憶する。
【0119】
次に、ステップS101およびステップS92を経て、次のデータが処理の対象とされる。
次に、ステップS93において、検出状態が“検出中”となっているため、制御はステップS97に進む。
このステップS97では、前回にステップS98で記憶した点から所定範囲内に、ピークを検出した点が存在するか否かが検出され、存在する場合には、ステップS98において、その点が記憶される。これにより連続している点が順次グループとされる。
【0120】
そして、ステップS97において、所定範囲内にピークが検出されない場合には、制御はステップS99に進む。
ステップS99において、グルーピング部51は、連続する点がないと判断し、それまでの検出結果を保存する。なお、最後に検出された点が、
図10の終点(■)に対応する。
【0121】
次に、ステップS100において、グルーピング部51は、検出状態を“未検出”の状態とする。
そして、ステップS101において、過去に取得したラインの全てのデータについて処理が行われたと判断されると、処理が終了する。
【0122】
(チャタリング除去処理)
次に、
図31のステップS82に示すチャタリング除去処理について説明する。
図33は、埋設物判定処理を示すフロー図である。
チャタリング除去処理が開示されると、ステップS111において、チャタリング除去部52が、グルーピングされた複数のグループのいずれか1つを選択する。
そして、ステップS112において、チャタリング除去部52は、選択したグループに対して移動平均処理を行う。例えば、8点平均を用いて移動平均処理を行うことができる。
【0123】
次に、ステップS113では、全てのグループに対して移動平均処理が行われたか否かが判定され、全てのグループに対して処理が行われていない場合には、制御はステップS111に戻り、他のグループが選択される。そして、選択されたほかのグループに対して移動平均処理が行われる。
このように、グルーピングした全ての結果に対してステップS112の処理が行われるまでフローが繰り返される。
【0124】
(山形波形補間処理)
次に、
図31のステップS83に示す山形波形補間処理について説明する。
図34は、山形波形補間処理を示すフロー図である。
山形波形補間処理が開始されると、ステップS121において、補間部53が、グルーピングされた複数のグループから1つを選択する。
【0125】
そして、ステップS122において、補間部53は、RFデータ管理部22に記憶されている選択したチャタリング除去処理後のグループの1つを読み出す。
次に、ステップS123において、範囲算出部54は、選択したグループのデータについて微分を行い、過去8点の微分値の最大値にマージを持たせた値を上限微分値(
図15(c)の上限微分値UL参照)とし、過去8点の微分値の最小値にマージを持たせた値を下限微分値(
図15(c)の下限微分値LL参照)とする。そして、範囲算出部54は、上限微分値および下限微分値に挟まれた、端点Qeから移動方向A1に10pixelの範囲を所定範囲Fとする。
【0126】
次に、ステップS124において、補間判定部55は、所定範囲F内に他のグループの端点が存在するか否かを確認する。所定範囲F内に他のグループの端点が存在する場合には、ステップS125において、補間判定部55は、選択したグループと、所定範囲F内に端点が存在するグループをグルーピングする。
そして、ステップS126において、補間部53は、全てのグループに対して山形波形補間処理が行われたか否かを確認し、全てのグループに対して処理が行われていない場合には、制御はステップS121に戻り、他のグループが選択される。そして、選択されたほかのグループに対して山形波形補間処理が行われる。
なお、ステップS124において、所定範囲F内に他のグループの端点が存在しない場合には、選択されたグループはそのままの状態となり、制御はステップS126に進む。
【0127】
(山形波形頂点検出処理)
次に、
図31のステップS84に示す山形波形頂点検出処理について説明する。
図35は、山形波形頂点検出処理を示すフロー図である。
【0128】
山形波形頂点検出処理が開始されると、ステップS131において、山形波形頂点検出部56が、山形波形補間処理後のグルーピングした結果から1つのグループを選択する。
そして、ステップS132において、山形波形頂点検出部56は、選択したグループを移動方向A1と深さ方向Bの平面において微分を行う。
次に、ステップS133において、山形波形頂点検出部56は、微分値がプラスからゼロを通ってマイナスになるようなゼロ点があるか否かを判定する。このようなゼロ点がない場合には、グループは所定の山形波形ではないと判断され、制御はステップS138に進む。
【0129】
一方、ステップS133において、このようなゼロ点が存在すると判定された場合、制御はステップS134に進む。このゼロ点が、山形波形のピークに対応する。
そして、ステップS134において、山形波形頂点検出部56は、山形波形の頂点から前後方向にXpixel以上ピークが存在するか否かを判定する。Xpixel以上ピークが存在しない場合には、埋設物が存在すると判定できる山形波形ではないとして制御はステップS138に進む。
【0130】
一方、ステップS134において、Xpixel以上ピークが存在すると判定された場合には、制御はステップS135に進む。
そして、ステップS135において、山形波形頂点検出部56は、頂点から前後方向にXpixel以内の範囲の微分値の面積を算出する。
次に、ステップS136において、山形波形頂点検出部56は、算出した面積が所定閾値以上であるか否かを判定する。所定閾値以上でないと判定された場合には、埋設物が存在すると判定できる山形波形ではないとして制御はステップS138に進む。
【0131】
一方、ステップS136において所定閾値以上であると判定された場合には、ステップS137において山形波形頂点検出部56は、ゼロ点に対応する頂点を山形波形の頂点グループに入れる。
次に、ステップS138において、山形波形頂点検出部56は、山形波形補間処理された全てのグループに対して山形波形頂点検出処理が行われたか否かを確認し、全てのグループに対して処理が行われていない場合には、制御はステップS131に戻り、他のグループが選択される。そして、山形波形補間処理された全てのグループに対して山形波形頂点検出処理が行われるまで、ステップS132〜ステップS137が繰り返される。
【0132】
(埋設物判定処理)
次に、
図31のステップS85に示す埋設物判定処理について説明する。
図36は、埋設物判定処理を示すフロー図である。
埋設物判定処理が開始されると、ステップS141において、判定部57は、頂点グループに入れられた頂点を浅い方から順に1つ選択する。
【0133】
そして、ステップS142において、判定部57は、頂点から前後方向に±Jpixel以内かつ下方向のすべての範囲に他の頂点が存在するか否かを判定する。
ステップS142において、他の頂点が存在すると判定された場合には、ステップS143において、判定部57は、選択した頂点の頂点座標を埋設物としてRFデータ管理部22に記憶する。一方、ステップS142において、他の頂点が存在しないと判定された場合には、判定した範囲内に頂点が1つしか存在しないため、埋設物の位置として記憶されず、制御がステップS144に進む。
【0134】
次に、ステップS144において、頂点グループに入れられたすべての頂点に対して、埋設物判定処理を行ったか否かが判定される。処理を行っていない場合には、ステップS141において、判定部57は、頂点グループの他の頂点を選択する。ここで、ステップS142において他の頂点として検出された頂点は処理を行ったものとして選択対象から除外される。
【0135】
頂点グループに入れられた頂点の全てが選択されたか若しくは選択対象から除外されるまで、ステップS142、S143が繰り返される。そして、頂点グループに入れられた頂点の全てが選択されたか若しくは選択対象から除外されると、制御が終了する。
なお、判定結果登録処理によって登録された埋設物の位置について、
図31に示すように、ステップS86において表示制御部26は、表示部8を制御して埋設物表示(×、○などの印を表示)する。
【0136】
[他の実施形態]
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、発明の要旨を逸脱しない範囲で種々の変更が可能である。
(A)
上記実施の形態では、埋設物検出装置1およびメイン制御モジュール6(データ処理装置の一例)の制御方法として、
図23〜
図36に示すフローチャートに従って、実施する例を挙げて説明したが、これに限定されるものではない。
【0137】
例えば、
図23〜
図36に示すフローチャートに従って実施される埋設物検出装置1および埋設物検出方法をコンピュータに実行させるプログラムとして、本発明を実現しても良い。
また、プログラムの一つの利用形態は、コンピュータにより読取可能な、ROM等の記録媒体に記録され、コンピュータと協働して動作する態様であってもよい。
【0138】
またプログラムの一つの利用形態は、インターネット等の伝送媒体、光・電波・音波などの伝送媒体中を伝送し、コンピュータにより読みとられ、コンピュータと協働して動作する態様であってもよい。
また、上述したコンピュータは、CPU(Central Processing Unit)等のハードウェアに限らずファームウェアや、OS、更に周辺機器を含むものであってもよい。
なお、以上説明したように、電力消費体の制御方法はソフトウェア的に実現してもよいし、ハードウェア的に実現しても良い。
【0139】
(B)
上記実施の形態では、埋設物の一例として鉄筋を例に挙げて説明したが、鉄筋にかぎらなくてもよく、ガス管、水道管、木材等であってもよく、また、埋設物が設けられた対象物としてもコンクリートに限られるものではない。
【0140】
(C)
上記実施の形態では、階調処理によって黒が鉄筋を示すように設定したが、これに限らず白が鉄筋を示すように設定してもよい。
(D)
上記実施の形態では、埋設物検出装置1の本体部2内にメイン制御モジュール6が設けられているが、メイン制御モジュール6が本体部2と別に設けられていてもよい。この場合、タブレットなどにメイン制御モジュール6と表示部8を設けてもよい。本体部2とタブレットの間は無線または有線によって通信が行われてもよい。