(57)【特許請求の範囲】
【請求項１】
ほぼ均一な背景画像とほぼ均一な物体画像とを含む画像をブロック分割し、ブロック毎のデータにもとづき画像の境界を含むブロックを判別して画像の境界位置を検出する画像の境界検出方法において、
所定の列周期で列毎に垂直方向に順次位置をずらしたブロックの配列又は、所定の行周期で行毎に水平方向に順次位置をずらしたブロックの配列を設定し、各ブロック毎に画素データを演算処理してブロックデータを求めるとともに背景画像部分のブロックの背景基準値及び物体画像部分のブロックの物体基準値を設定する手段と、
前記ブロックデータと、背景基準値及び物体基準値とに基づき境界を含む境界ブロックを列毎又は行毎に判別する手段と、
列周期又は、行周期に相応した少なくとも１組の境界ブロックを判別し、同境界ブロックの隣接し合っている部分を水平境界又は、垂直境界の存在範囲として検出する手段とでなる画像の境界検出方法。
【請求項２】
上記ブロックの配列周期を４列又は４行とする請求項１記載の画像の境界検出方法。
【請求項３】
上記ブロックデータをブロック内の画素データを算術平均して求める請求項１記載の画像の境界検出方法。
【請求項４】
水平境界を含む画像において、列周期に相応した２組の境界ブロックから得た水平境界の存在するブロックの行が異なる場合、
前期２組の水平境界の存在するブロックの行の差分と列周期に基づき画像の傾きを検出することを特徴とした請求項１記載の画像の境界検出方法。
【請求項５】
前記水平境界の存在するブロックの行の差分と、列周期に基づき画像の傾き角度を、アークｔａｎ（１つのブロックの高さ（差分）／列周期）で計算することを特徴とした請求項４記載の画像の境界検出方法。
【請求項６】
所定の列周期で列毎に垂直方向に順次位置をずらしたブロックの配列又は、所定の行周期で行毎に水平方向に順次位置をずらしたブロックの配列の何れかを選択できるようにすることを特徴とした請求項１記載の画像の境界検出方法。
【請求項７】
上記ブロックを、構成する画素数を変えられるようにすることを特徴とした請求項１記載の画像の境界検出方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、液面や、物体の垂直輪郭など、画像における物体と背景との水平、垂直境界を精度良く検出する画像の境界検出方法に関する。
【０００２】
【従来の技術】
従来、液面や、物体の水平、垂直輪郭など、物体と背景との境界を確実に検出するため均一な照明環境のもとにカメラで対象物を撮影する。こうすることにより、透明容器に入った液体の画像は、輝度や色の変化が少なく液面位置が分かり易い。実際には画像中央に液面が存在するように適宜アングルを調整し、例えば、拡大などして真横方向からカメラで撮影する。
適当な照明条件で撮影した画像を用いることにより、例えば、液体部分の画像は高輝度に撮影され、背景部分の画像は低輝度に撮影されるので、水面で輝度の変化が大きくそのため、水面位置がハッキリ確認できる。
このような画像データを、フレームメモリに記憶させ、碁盤の目状の配列にブロック分割し、例えば、輝度の画素データをブロック毎に演算処理し、ブロックデータ（輝度値）を得る。
【０００３】
上述の撮影状況で得た画像では、画像の周縁の背景画像部分に相当するブロックの輝度値は低輝度であり、適当に選択したいくつかの背景画像部分に相当するブロックの、例えば、平均値を演算して背景ブロックの基準値（低輝度）を設定する。
また、画像の中央やや下部に撮影された液体（物体）画像に相当するブロックの輝度値は高輝度であり、適当に選択したいくつかの液体（物体）画像に相当するブロックの、例えば、平均値を演算して液体（物体）ブロックの基準値（高輝度）を設定する。
前記２つの基準値を用いて基準値以外の中間輝度の部分のブロックを、境界を含むブロックと判別し、このブロックの範囲内に境界が存在するとして境界位置を検出するような画像の境界検出方法が知られている。
【０００４】
しかし、上述した従来方法によれば、ブロックの範囲はある程度の大きさが必要である。即ち、輝度ムラ等の影響を打ち消す理由により、所要の画素数、例えば、２０×２０画素等、で構成されるブロッが必要となり、このブロック範囲内が境界位置となるように、１ブロック単位で位置検出が行われる。
言い換えると、境界位置検出が１ブロック単位の低い精度である問題があった。尚、ブロック範囲内に複数の基準値を設定し複雑な計算処理を実施する等の方法を採用すれば、位置検出精度を高められるものの、データ処理が複雑化し、かつ増大するので、簡易に、１ブロック単位より狭い範囲で、高精度に境界位置を検出することは困難であった。
【０００５】
【発明が解決しようとする課題】
本発明は上記問題点に鑑みなされたもので、簡易なデータ処理で、高精度に境界位置を検出できる画像の境界検出方法を提供することを目的とする。
【０００６】
【課題を解決するための手段】
上記目的を達成するために、ほぼ均一な背景画像とほぼ均一な物体画像とを含む画像をブロック分割し、ブロック毎のデータにもとづき画像の境界を含むブロックを判別して画像の境界位置を検出する画像の境界検出方法において、所定の列周期で列毎に垂直方向に順次位置をずらしたブロックの配列又は、所定の行周期で行毎に水平方向に順次位置をずらしたブロックの配列を設定し、各ブロック毎に画素データを演算処理してブロックデータを求めるとともに背景画像部分のブロックの背景基準値及び物体画像部分のブロックの物体基準値を設定する手段と、前記ブロックデータと、背景基準値及び物体基準値とに基づき境界を含む境界ブロックを列毎又は行毎に判別する手段と、列周期又は、行周期に相応した少なくとも１組の境界ブロックを判別し、同境界ブロックの隣接し合っている部分を水平境界又は、垂直境界の存在範囲として検出する手段とで構成した。
【０００７】
また、ブロックの配列周期を４列又は４行として構成した。
【０００８】
また、ブロックデータをブロック内の画素データを算術平均して求めるように構成した。
【０００９】
また、境界を含む画像において、列周期に相応した２組の境界ブロックから得た境界の存在するブロックの行が異なる場合、２組の水平境界の存在するブロックの行の差分と列周期に基づき画像の傾きを検出するように構成した。
【００１０】
また、所定の列周期で列毎に垂直方向に順次位置をずらしたブロックの配列又は、所定の行周期で行毎に水平方向に順次位置をずらしたブロックの配列の何れかを選択できるように構成した。
【００１１】
また、上記ブロックを、構成する画素数を変えられるように構成した。
【００１２】
【発明の実施の形態】
以上のように構成したので、本発明による画像の境界検出方法について、実施例により詳細に説明する。図１は本発明による画像の境界検出方法を説明するフローチャートである。また、図２は本発明による画像の境界検出方法で画像をブロック分割することにより境界を検出する方法を示す概念図であり、全体の画像を示す図（ａ）と、要部拡大図（ｂ）である。
図１、図２を参照して説明する。尚、説明の都合から、水平の境界検出の方法の例に基づき以下述べる。
図１のステップ１（STP1）において、
カメラで撮影した、ほぼ均一な背景画像とほぼ均一な物体画像とを含む画像｛図２（ａ）に示した｝を、フレームメモリに記憶させて、例えば、２０×２０画素などの大きさの、四角いブロックに分割し、かつ、画面の左上隅を基準にして行（垂直）方向に「１，２，３，・・・」と、列（水平）方向に「Ｃ１，Ｃ２，Ｃ３，・・・」などの方法で番号を付す。
本願のブロック分割の特徴は、画像の中央部を拡大した図｛図２（ｂ）｝に示したように、例えば、C21,C22,C23,C24 なる４列周期で列毎に垂直方向に順次位置をずらしたブロック配列を設定する。従って、列番号が進むに相応し、ブロックが1/4 ずつ上方にずれる配置となり、５列目で元のブロック位置に戻る。
具体的に述べると、図２（ｂ）は、図２（ａ）の鎖線で囲まれた領域Ｐの拡大図であり、C21,C22,C23,C24 なる４列周期において、夫々の列の31番目のブロックの位置は垂直方向で1/4 ずつ上方にずれるような右上がりの配置であり、31番目のブロックは５列目のC25 でC21 のブロックと同じ位置に戻る。このように画像全体を所定の列周期で列毎に垂直方向に順次位置をずらしたブロックの配列に設定する。
【００１３】
ステップ２（STP2）において、
一番最初のブロックであるC1列１番目のブロックから順次、行（垂直）方向及び列（水平）方向に画素データを演算処理して行く。例えば、画素の輝度を算術平均するなど、して順次ブロックデータを求める。この過程で、特に画像のほぼ中央にある液面Ｓより上方のＢ点（C22,4 ）など、背景画像部分のブロックから背景基準値を求め、記憶する。
また、画像のほぼ中央にある液面Ｓより下方のＤ点（C22,38）など、物体画像部分のブロックから物体基準値を求め、記憶する。尚、基準値は、Ｂ点又は、Ｄ点付近の複数のブロックから求めるようにすると、輝度ムラ等による誤差をさらに低減できる。
【００１４】
ステップ３（STP3）において、
列（水平）方向中央付近の、例えば、C21 列の１番目のブロックから順次、行（垂直）方向にブロック毎に、背景基準値及び物体基準値を用いてブロックデータを判別し、当該のブロックが境界を含む境界ブロックであるか否かを判別する。C21 列の判別を終了すると、次にC22 列の判別を同様に実施し、所要の列周期だけ、例えば、２つの列周期分など、を順次ブロック列（水平）方向に判定を行なう。
【００１５】
ステップ４（STP4）において、
図２（ｂ）のＴ（斜線を施した、例えば、４つの境界ブロック）に示すように、１列周期に相応した１組の境界ブロックを判別する。水平境界はこれら１組の境界ブロックの全てに含まれている。従って、水平境界の存在範囲は、図示するように、４つの境界ブロックの共通部分、つまり、１／４の狭い範囲となる。
従って、従来と同じ画素数で構成した１ブロックに基づき１／４の狭い範囲の位置検出が可能であり、位置検出精度を４倍に高めることができる。
尚、上述の説明は、水平境界の存在範囲を検出する方法であるが、水平と垂直、列と行を交換することにより、垂直境界の存在範囲を検出する方法を同様に説明できる。
【００１６】
図３は本発明による画像の境界検出方法の応用例であり、傾いたカメラで撮影した画像からカメラの傾きを検出する方法を説明するブロック分割画像の要部拡大図である。
例えば、水平（水面）に対し、撮影カメラが右回転方向等にやや傾いた場合に得られた画像を利用すると、カメラの傾きを検出することができることを、図３を参照して説明する。図２を用いて既に説明した方法に基づき同様にして、水平境界（水面）を検出すると、１列周期(a) 及び(b) の境界ブロックの組から、水平境界の存在する境界ブロックは、１列周期(a) ではL34 となり、１列周期(b) ではL33 となる。
【００１７】
図３から１列周期(a) と、(b) で境界ブロックの行番号が異なる原因は、撮影するカメラの傾きに起因する。上述の図２のようにカメラが水平に固定されている場合は、１列周期(a) と、(b) で境界ブロックの行番号同じとなる。
図３の例では、４つのブロックの幅（列周期）当たり、垂直方向にほぼ１ブロックの差分が存在する。即ち、水平方向に４ブロック当たり垂直方向にほぼ１ブロックの高さ分の左上がりの傾きであることが分かる。
従って、カメラの画像の水平線と水面とのなす角度θは、アークｔａｎ（１つのブロックの高さ（差分）／列周期）を計算することにより、求められる。
尚、画像の輝度ムラ等の影響を避け誤検出を低減するために、例えば、30×30画素など、ブロックの画素数を多くするようにしても良い。また、ブロック分割数は、４つに限定するものでなく、２つ、６つ等に選んでも同様である。
さらに、上述の方法は、メモリに記憶する画像データのブロックの構成を列方向にずらすか、又は、行方向にずらすことにより、ソフト的にデータ処理して検出する方法であるので、水平境界又は、垂直境界に応じて簡易に何れかを選択して検出利用できるように構成できる。
【００１８】
【発明の効果】
以上説明したように、本発明は簡易なデータ処理で、高精度に境界位置を検出できる画像の境界検出方法を提供する。
従って、水位監視装置等の水平位置検出センサに応用できる。また、画像のブロックの構成がソフト処理で容易に変えられるので。ソフト的なプログラムの選択を行なう方法で、同じハード構成の装置で水平位置検出センサとしても垂直位置検出センサとしても利用でき、廉価に、使い易い兼用型センサを実現できるメリットがある。
【図面の簡単な説明】
【図１】本発明による画像の境界検出方法を説明するフローチャートである。
【図２】本発明による画像の境界検出方法で画像をブロック分割することにより境界を検出する方法を示す概念図であり、全体の画像を示す図（ａ）と、要部拡大図（ｂ）である。
【図３】本発明による画像の境界検出方法の応用例であり、傾いたカメラで撮影した画像からカメラの傾きを検出する方法を説明するブロック分割画像の要部拡大図である。
【図１】
0003924917.tif 000002
【図２】
0003924917.tif 000003
【図３】
0003924917.tif 000004