(57)【要約】【課題】ハフ変換手法を用いて図形を検出する際に、検出対象の図形の未検出の抑制と、検出対象でない図形の誤検出の抑制とを両立させる。【解決手段】画像の各画素の輝度勾配の大きさ及び方向を算出する算出し、該算出した輝度勾配の大きさ及び方向に基づいて、画像中のエッジに対応する各画素をエッジ点として検出し、エッジ点のｘ−ｙ平面上の座標をρ−θ平面上の座標に変換し、各エッジ点毎且つエッジ点の座標から変換されたρ−θ平面上の各座標毎に、ρ−θ平面上の座標の角度θが、エッジ点の輝度勾配の方向を示す角度を含む予め定められた範囲内にある場合には正の重みを設定し、ρ−θ平面上の座標の角度θが上記範囲外にある場合には負の重みを設定し、該設定した重みに応じた値をρ−θ平面を分割した分割領域毎に積算し、該積算値に基づいて画像から図形を検出する。【選択図】図１０
2013196606.tif 000002
【特許請求の範囲】
【請求項１】
画像の各画素の輝度勾配の大きさ及び方向を算出する算出手段と、
前記算出された輝度勾配の大きさ及び方向に基づいて、前記画像中のエッジに対応する各画素をエッジ点として検出するエッジ点検出手段と、
前記検出されたエッジ点のｘ−ｙ平面上の座標を、ｘ軸との角度θ及び原点からの距離ρで表わされるρ−θ平面上の座標に変換する変換手段と、
各エッジ点毎且つ前記エッジ点の座標から変換されたρ−θ平面上の各座標毎に、前記変換されたρ−θ平面上の座標の角度θが、前記検出されたエッジ点の輝度勾配の方向を示す角度を含む予め定められた範囲内にある場合には正の重みを設定し、前記変換されたρ−θ平面上の座標の角度θが前記範囲外にある場合には負の重みを設定して、該設定した重みに応じた値をρ−θ平面を分割した分割領域毎に積算する積算手段と、
前記積算手段により積算された積算値に基づいて、前記画像から図形を検出する図形検出手段と、
を備えた図形検出装置。
【請求項２】
前記図形検出手段は前記図形として直線を検出する請求項１に記載の図形検出装置。
【請求項３】
画像の各画素の輝度勾配の大きさ及び方向を算出する算出ステップと、
前記算出された輝度勾配の大きさ及び方向に基づいて、前記画像中のエッジに対応する各画素をエッジ点として検出するエッジ点検出ステップと、
前記検出されたエッジ点のｘ−ｙ平面上の座標を、ｘ軸との角度θ及び原点からの距離ρで表わされるρ−θ平面上の座標に変換する変換ステップと、
各エッジ点毎且つ前記エッジ点の座標から変換されたρ−θ平面上の各座標毎に、前記変換されたρ−θ平面上の座標の角度θが、前記検出されたエッジ点の輝度勾配の方向を示す角度を含む予め定められた範囲内にある場合には正の重みを設定し、前記変換されたρ−θ平面上の座標の角度θが前記範囲外にある場合には負の重みを設定して、該設定した重みに応じた値をρ−θ平面を分割した分割領域毎に積算する積算ステップと、
前記積算手段により積算された積算値に基づいて、前記画像から図形を検出する図形検出ステップと、
を備えた図形検出方法。
【請求項４】
コンピュータを、
画像の各画素の輝度勾配の大きさ及び方向を算出する算出手段、
前記算出された輝度勾配の大きさ及び方向に基づいて、前記画像中のエッジに対応する各画素をエッジ点として検出するエッジ点検出手段、
前記検出されたエッジ点のｘ−ｙ平面上の座標を、ｘ軸との角度θ及び原点からの距離ρで表わされるρ−θ平面上の座標に変換する変換手段、
各エッジ点毎且つ前記エッジ点の座標から変換されたρ−θ平面上の各座標毎に、前記変換されたρ−θ平面上の座標の角度θが、前記検出されたエッジ点の輝度勾配の方向を示す角度を含む予め定められた範囲内にある場合には正の重みを設定し、前記変換されたρ−θ平面上の座標の角度θが前記範囲外にある場合には負の重みを設定して、該設定した重みに応じた値をρ−θ平面を分割した分割領域毎に積算する積算手段、及び
前記積算手段により積算された積算値に基づいて、前記画像から図形を検出する図形検出手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、図形検出装置、図形検出方法、及びプログラムに係り、特に画像に含まれる図形を検出する図形検出装置、図形検出方法、及びプログラムに関する。
【背景技術】
【０００２】
一般化ハフ変換手法を用いて図形を検出する際に、入力画像上の画素の輝度勾配方向の法線を有する図形パラメータと該輝度勾配方向と１８０度反対の方向の法線を有する図形パラメータとに限定して投票（パラメータ空間での積算処理）を行う図形検出装置が知られている（例えば、特許文献１参照）。
【０００３】
また、入力画像上の画素の輝度勾配方向に対応する法線を有する図形パラメータとその周辺パラメータに投票を行う線分・円弧の抽出方法も知られている（例えば、特許文献２参照）。
【０００４】
このような従来技術は何れも、入力画像上の画素の輝度勾配方向に対応する図形パラメータに限定して投票することにより、物体の輪郭線検出を効率的に行っている。図形検出の最終段では、投票結果（積算値）の最大値或いは極大値を検出（ピーク検出）して、最大値或いは極大値に対応するパラメータを図形検出結果として出力するようにしている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平２−９６２８７号公報
【特許文献２】特開平１１−５３５５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、実環境で撮像した画像から図形検出を行う場合には、照明条件などにより各画素の輝度勾配の大きさや方向が安定しないため、上記ピーク検出においてピークと見なすための積算値の閾値を低く設定して未検出を抑制する必要がある。一方、閾値を低く設定すると、意図しない図形パラメータをピークとして検出してしまう場合がある。例えば、輪郭線がかすれた領域等を含む検出対象の未検出を抑制したいところ、検出対象でない植栽など様々な方向の輝度勾配を持つ画素が混在するような領域が、ピークとして誤検出されてしまう場合がある。すなわち、従来技術では、未検出の抑制と、誤検出の抑制とを両立させることが困難であった。
【０００７】
本発明は、上記問題を解消するためになされたもので、ハフ変換手法を用いて図形を検出する際に、検出対象の図形の未検出の抑制と、検出対象でない図形の誤検出の抑制とを両立させることができる図形検出装置、図形検出方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明の図形検出装置は、画像の各画素の輝度勾配の大きさ及び方向を算出する算出手段と、前記算出された輝度勾配の大きさ及び方向に基づいて、前記画像中のエッジに対応する各画素をエッジ点として検出するエッジ点検出手段と、前記検出されたエッジ点のｘ−ｙ平面上の座標を、ｘ軸との角度θ及び原点からの距離ρで表わされるρ−θ平面上の座標に変換する変換手段と、各エッジ点毎且つ前記エッジ点の座標から変換されたρ−θ平面上の各座標毎に、前記変換されたρ−θ平面上の座標の角度θが、前記検出されたエッジ点の輝度勾配の方向を示す角度を含む予め定められた範囲内にある場合には正の重みを設定し、前記変換されたρ−θ平面上の座標の角度θが前記範囲外にある場合には負の重みを設定して、該設定した重みに応じた値をρ−θ平面を分割した分割領域毎に積算する積算手段と、前記積算手段により積算された積算値に基づいて、前記画像から図形を検出する図形検出手段と、を備えている。
【０００９】
エッジ点の輝度勾配の方向は、検出する図形が有する線の法線方向に近い。従って、ρ−θ平面において、法線の方向が輝度勾配の方向に近い線に対応する座標に対して正の重みを設定し、法線の方向が輝度勾配の方向と矛盾するような線に対応する座標に対して負の重みを設定して積算すれば、法線の方向が輝度勾配の方向に近い線に対応する積算値が相対的に高くなり、法線の方向が輝度勾配の方向と矛盾するような線に対応する積算値が相対的に低くなる。これにより、法線の方向が輝度勾配の方向に近い線が検出されやすく、法線の方向が輝度勾配の方向と矛盾するような線は検出されにくくなる。従って、検出対象の図形の未検出の抑制と、検出対象でない図形の誤検出の抑制とを両立させることができる。
【００１０】
なお、前記図形検出手段は直線を前記図形として検出するようにしてもよい。
【００１１】
また、本発明の図形検出方法は、画像の各画素の輝度勾配の大きさ及び方向を算出する算出ステップと、前記算出された輝度勾配の大きさ及び方向に基づいて、前記画像中のエッジに対応する各画素をエッジ点として検出するエッジ点検出ステップと、前記検出されたエッジ点のｘ−ｙ平面上の座標を、ｘ軸との角度θ及び原点からの距離ρで表わされるρ−θ平面上の座標に変換する変換ステップと、各エッジ点毎且つ前記エッジ点の座標から変換されたρ−θ平面上の各座標毎に、前記変換されたρ−θ平面上の座標の角度θが、前記検出されたエッジ点の輝度勾配の方向を示す角度を含む予め定められた範囲内にある場合には正の重みを設定し、前記変換されたρ−θ平面上の座標の角度θが前記範囲外にある場合には負の重みを設定して、該設定した重みに応じた値をρ−θ平面を分割した分割領域毎に積算する積算ステップと、前記積算手段により積算された積算値に基づいて、前記画像から図形を検出する図形検出ステップと、を備えている。
【００１２】
また、本発明のプログラムは、コンピュータを、画像の各画素の輝度勾配の大きさ及び方向を算出する算出手段、前記算出された輝度勾配の大きさ及び方向に基づいて、前記画像中のエッジに対応する各画素をエッジ点として検出するエッジ点検出手段、前記検出されたエッジ点のｘ−ｙ平面上の座標を、ｘ軸との角度θ及び原点からの距離ρで表わされるρ−θ平面上の座標に変換する変換手段、各エッジ点毎且つ前記エッジ点の座標から変換されたρ−θ平面上の各座標毎に、前記変換されたρ−θ平面上の座標の角度θが、前記検出されたエッジ点の輝度勾配の方向を示す角度を含む予め定められた範囲内にある場合には正の重みを設定し、前記変換されたρ−θ平面上の座標の角度θが前記範囲外にある場合には負の重みを設定して、該設定した重みに応じた値をρ−θ平面を分割した分割領域毎に積算する積算手段、及び前記積算手段により積算された積算値に基づいて、前記画像から図形を検出する図形検出手段、として機能させるためのプログラムである。
【発明の効果】
【００１３】
以上説明したように本発明によれば、ハフ変換手法を用いて図形を検出する際に、検出対象の未検出の抑制と、非検出対象の誤検出の抑制とを両立させることができる、という効果が得られる。
【図面の簡単な説明】
【００１４】
【図１】実施の形態に係る図形検出部の構成を模式的に示した図である。
【図２】実施の形態の図形検出処理の一例としての直線検出処理の流れを示すフローチャートである。
【図３】（Ａ）は、ｘ−ｙ平面においてプロットされた点を示す図であり、（Ｂ）は、該プロットされた点に対して直線当てはめ（直線検出）を行った図である。
【図４】ハフ変換の概念を説明する説明図である。
【図５】ｘ−ｙ座標上の一点を通る傾きの異なる直線の集まり（直線群）が、ρ−θ平面上における１つの曲線に対応することを示す図である。
【図６】ｘ−ｙ平面上の点群に対応するρ−θ平面上の曲線群が交差する点は、ｘ−ｙ平面上の直線に対応することを示す図である。
【図７】直線検出（図形検出）方法を説明する説明図である。
【図８】パラメータ平面の範囲の限定を説明する説明図である。
【図９】直線上のエッジ点の一部が欠落した場合と、植栽などのようにエッジ点の輝度勾配方向が不均一な場合との区別ができない状態を説明する説明図である。
【図１０】正の投票と負の投票を行うメリットを説明する説明図である。
【発明を実施するための形態】
【００１５】
［第１の実施の形態］
【００１６】
以下、図面を参照して本実施の形態を詳細に説明する。図１は、本実施の形態に係る図形検出部１０の構成を模式的に示した図である。図１に示すように、本実施の形態に係る図形検出部１０は、画像入力部１２、エッジ点検出部１４、投票部１６、探索部１８、パラメータ出力部２０を備えている。
【００１７】
画像入力部１２は、検出対象となる図形を検出する画像を入力する。例えば、画像入力部１２は、被写体を撮像する撮像装置であってもよいし、撮像装置で撮像された画像が該撮像装置や記憶手段等から入力されるインタフェースであってもよい。エッジ点検出部１４は、画像入力部１２に入力された画像からエッジ点を検出する。エッジ点は、入力された画像の中の低輝度領域と高輝度領域の境界（エッジ）に位置していると推定される画素をいう。投票部１６は、検出されたエッジ点の各々について周知のハフ変換（後述）を行い、ハフ変換後のパラメータ空間において投票処理を行う。探索部１８は、投票部１６による投票結果に基づいて、ピーク検出を行う。パラメータ出力部２０は、探索部１８によりピーク検出して得られたパラメータを、図形検出結果として出力する。
【００１８】
なお、本実施形態では、図形検出部１０により検出される図形が直線である場合について説明するが、検出対象は直線に限定されるものではなく、三角形や四角形或いは円形の図形であってもよい。
【００１９】
図形検出部１０は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、及びＲＡＭ（Random Access Memory）を備えたコンピュータにより構成されている。例えば、ＲＯＭを、図形検出部１０で実行される図形検出処理を実行するためのプログラムを記憶した記憶媒体とし、ＣＰＵがＲＯＭに記憶されたプログラムを、ＲＡＭをワークエリアとして用いて実行することにより図形検出部１０の各機能を実現するようにしてもよい。プログラムを記憶する記憶媒体は、ＲＯＭに限定されるものではなく、例えば、ＨＤＤ（ハードディスク装置）や、ＣＤ−ＲＯＭ、フラッシュメモリ等の記録媒体であってもよい。なお、図形検出部１０は、画像入力部１２、エッジ点検出部１４、投票部１６、探索部１８、及びパラメータ出力部２０の各々の機能を有する電子回路等のハードウェアにより構築されていてもよい。
【００２０】
次に、周知のハフ変換、直線検出（図形検出）の基本的な手法を概念的に説明する。
【００２１】
図３（Ａ）は、ｘ−ｙ直交座標平面（以下、ｘ−ｙ平面という）においてプロットされた点を示す図であり、図３（Ｂ）は、該プロットされた点に対して直線当てはめ（直線検出）を行った図である。
【００２２】
図３（Ｂ）に示すように、直線は、パラメータ（ρ、θ）により表現できる。ここで、ρは原点からの距離を示し、θは、ｘ軸を基準とした傾き（角度）を示す。
【００２３】
例えば、図４（Ａ）に示すｘ−ｙ平面上の直線Ｌ１は、ρθ直交座標表現により下記式（０）のように表わすことができる。
【００２４】
Ｌ１：ρ１＝ｘ・ｃｏｓθ１＋ｙ・ｓｉｎθ１  …(０)
【００２５】
ｘ−ｙ平面からρ−θ直交座標平面（以下、ρ−θ平面という）への変換をハフ変換といい、このハフ変換により、図４（Ｂ）に示すように、ｘ−ｙ平面上の直線Ｌ１が、ρ−θ平面上の１点Ｑ１の座標値（ρ１、θ１）に変換される。従って、ｘ−ｙ平面上の複数の点が同一の直線上にある場合には、各点に対応するρ、θの値は同じ値となる。
【００２６】
また、図５（Ａ）に示すように、ｘ−ｙ座標上の一点を通る傾きの異なる直線の集まり（直線群）は、図５（Ｂ）に示すように、ρ−θ平面上における１つの曲線に対応する。以下、この曲線をハフ曲線という。
【００２７】
そこで、図６（Ａ）に示すｘ−ｙ平面上の点に対応するハフ曲線の一例を図６（Ｂ）に示す。ここでは、ｘ−ｙ平面上の６つの点に対応する６本のハフ曲線がρ−θ平面上に描かれており、多くのハフ曲線が点Ｑ１、Ｑ２で交わっている。前述したように、ｘ−ｙ座標上の複数の点が同一の直線上にある場合には、各点に対応するρ、θの値は同じ値となることから、図６（Ｃ）及び図６（Ｄ）に示すように、多くのハフ曲線が交わる点Ｑ１，Ｑ２に対応する直線Ｌ１、Ｌ２が検出すべき直線となる。点Ｑ１及び点Ｑ２は、ρ−θ平面上の点の各々に対して、通過する曲線の数を積算し、その積算値が閾値を超える座標値から探索される。この積算処理を投票処理という。
【００２８】
直線に限らず、三角形や円などの一般図形も、パラメータ表現により図形を一意に特定でき、直線の場合と同様にハフ変換を用いてパラメータ空間に展開して投票処理により検出することができる。三角形のパラメータ表現の例としては、３頂点の座標組{(x1,y1),(x2,y2),(x3,y3)}がある。また、円形のパラメータ表現の例としては、中心座標と半径の組(xc,yc,r)がある。
【００２９】
ハフ変換による直線検出結果の組合せにより物体の輪郭検出を行う例も示す。入力された画像から輝度の変化点をエッジ点として検出し（図７（Ａ）も参照）、検出したエッジ点にハフ変換を施して上記説明したように直線の当てはめを行い（図７（Ｂ）も参照）、当てはめた直線から画像に含まれる物体の輪郭線を検出する（図７（Ｃ）も参照）。
【００３０】
本実施の形態の図形検出部１０は、上記説明した手法を基本として図形検出を行うが、更に、正の重み係数だけでなく負の重み係数も用いた投票を行って図形検出を行うものとする。
【００３１】
以下、図２を参照して、本実施の形態の図形検出処理の一例としての直線検出処理について説明する。以下では、ρ−θ平面を、パラメータ平面と呼称する。
【００３２】
ステップＳ１００において、画像入力部１２により入力された処理対象の画像を取得する。
【００３３】
ステップＳ１０２において、エッジ点検出部１４は、処理対象の画像の境界位置の点であるエッジ点を検出する。エッジ点検出部１４は、エッジ点の検出にあたり、まず、ｘ−ｙ座標上の各点（ｘ、ｙ）の輝度勾配の強度（エッジ強度）ｅ、輝度勾配の方向（エッジ方向）ｇを算出する。
【００３４】
エッジ強度ｅは、周知の技術を用いて演算すればよい。例えば、縦方向のエッジ強度及び横方向のエッジ強度を各々演算する。この縦方向及び横方向のエッジ強度の演算には、例えば縦方向及び横方向のプレヴィットオペレータや、縦方向及び横方向のソーベルオペレータ等の微分オペレータを用いて行うことができる。
【００３５】
次に、エッジ点検出部１４は、各点について上記演算した縦方向のエッジ強度ＤiffＶ及び横方向のエッジ強度ＤiffＨを次の(１),(２)式に代入することでエッジ強度ｅ、エッジ方向ｇを各々演算し、演算結果を不図示のメモリに記憶させる。
【００３６】
エッジ強度ｅ＝√((ＤiffＶ)２＋(ＤiffＨ)２)  …(１)
エッジ方向ｇ＝ｔａｎ−１(ＤiffＶ／ＤiffＨ)  …(２)
【００３７】
なお、(２)式で算出されるエッジ方向ｇは、演算対象の点においてエッジ強度が最大となる方向、すなわち図８（Ａ）に示すように、演算対象の点を通る低輝度領域と高輝度領域の境界線に対する法線方向（図８（Ａ）中の細矢印）を表し、(１)式で算出されるエッジ強度ｅは演算対象の点におけるエッジ方向ｇについてのエッジ強度を表している。図８（Ａ）に示すように、輝度勾配の方向（図８（Ａ）中の細矢印）と直線の法線の方向（図８（Ａ）中の太矢印）とは、ほぼ一致する。
【００３８】
エッジ点検出部１４は、エッジ強度ｅ及びエッジ方向ｇに基づき、前記各点の中から低輝度領域と高輝度領域の境界線上に位置していると推定されるエッジ点を抽出する。エッジ点検出部１４は、エッジ強度ｅが規定値以上で、且つ輝度勾配方向で極大となる点をエッジ点（ｘ、ｙ、ｅ、ｇ）として抽出する。抽出したエッジ点群をＰとする。
【００３９】
以下、エッジ点抽出処理の一例を挙げる。例えば、上記演算された各エッジ強度ｅ及びエッジ方向ｇに基づき、前記各点の中から低濃度領域と高濃度領域の境界線上に位置していると推定されるエッジ点(エッジ画素ともいう)を抽出する。具体的には、まず、画像から注目画素を選択する。次に、選択した注目画素のエッジ方向ｇに基づき、注目画素に対し、注目画素のエッジ方向ｇとおよそ同方向に存在している隣接画素を選択し、注目画素のエッジ強度ｅを該選択した隣接画素のエッジ強度ｅと比較する。
【００４０】
隣接画素の選択は、例えば、
(1)エッジ方向ｇ： 0°±22.5°又は180°±22.5°→隣接画素：右隣及び左隣の画素
(2)エッジ方向ｇ： 45°±22.5°又は225°±22.5°→隣接画素：右上及び左下の画素
(3)エッジ方向ｇ： 90°±22.5°又は270°±22.5°→隣接画素：上隣及び下隣の画素
(4)エッジ方向ｇ：135°±22.5°又は315°±22.5°→隣接画素：右下及び左上の画素
上記のように、エッジ方向ｇの角度範囲(0〜360°)を４種類の角度範囲に分割し、各角度範囲毎に選択する隣接画素を定めた隣接画素選択条件を定めておき、エッジ方向ｇが４種類の角度範囲のうちの何れに属しているかに応じて隣接画素を選択することで行うことができる。
【００４１】
なお、上記の条件ではエッジ方向ｇの値に拘わらず隣接画素として２個の画素が選択されるが、これに限られるものではなく、例えば個々の角度範囲±22.5°を若干広げる(例えば±30°等)ことで個々の角度範囲を一部オーバラップさせ、エッジ方向ｇが２種類の角度範囲に跨るオーバラップ領域に相当する角度であった場合には、２種類の角度範囲の何れかに対応する合計４個の画素を隣接画素として選択し、注目画素とのエッジ強度Ｅの比較を各々行うようにしてもよい。
【００４２】
次に、エッジ強度ｅを比較した結果、注目画素のエッジ強度ｅが最大であったか（注目画素のエッジ強度ｅが複数の隣接画素のエッジ強度ｅよりも大きかったか）否か判定する。なお、複数の隣接画素の中にエッジ強度ｅが注目画素と等しい画素が存在していた場合には、エッジ強度ｅが注目画素と等しい隣接画素に隣接する新たな隣接画素を前述の隣接画素選択条件を用いて選択し、選択した新たな隣接画素と注目画素のエッジ強度ｅを比較する。注目画素のエッジ強度ｅが最大であった場合には、注目画素がエッジ点（エッジ画素）であることを表す情報をメモリに記憶する。上記処理を各画素について行うことにより、最終的に全てのエッジ点が抽出される。
【００４３】
ステップＳ１０４において、投票部１６は、パラメータ平面をδρ、δθで離散化する。ここで、離散化とは、パラメータ平面を予め定められた大きさ（δρ、δθ）の多数の格子に分割する処理をいう。パラメータ平面をＭ×Ｎ個に分割した場合には、該分割した分割領域毎に代表点｛（ρ１、θ１）、（ρ２、θ２）、・・・（ρＭ、θＮ）｝が対応付けられる。エッジ点検出部１４は各分割領域に対して投票を行うため、｛（ρ１、θ１）、（ρ２、θ２）、・・・（ρＭ、θＮ）｝の各々に対応する投票用のカウンタＶ（ρ、θ）が用意される。エッジ点検出部１４は、各カウンタＶ（ρ、θ）を初期化（ゼロクリア）する。
【００４４】
このように、本実施形態では、分割領域に投票して、各分割領域の投票数を算出し、算出された各分割領域の投票数に基づいて、分割領域に対して予め定められた代表点を直線候補として抽出する。このとき、ハフ曲線の交点が集中する分割領域の代表点を直線候補として抽出することによって、一点で交わるはずの同一の直線上の点が、撮像時の量子化誤差の影響等によりある範囲の中で交わることを考慮することができる。
【００４５】
ステップＳ１０６において、投票部１６は、エッジ点群Ｐから、エッジ点Ｐｉ（ｘｉ、ｙｉ、ｅｉ、ｇｉ）を選択する。ここで、ｉは、１からエッジ点群Ｐに含まれるエッジ点の総数までの整数値を取り得る。投票部１６は、該選択したエッジ点Ｐｉに対し、以下のステップＳ１０８〜ステップＳ１１４の処理を行う。
【００４６】
ステップＳ１０８において、投票部１６は、エッジ点Ｐｉについて、角度θの範囲（最小値θi,min、及び最大値θi,max）を設定して、パラメータ平面の領域を限定する。最小値θi,min、及び最大値θi,maxの各々は、エッジ方向ｇｉに応じて予め経験的に定められており、θi,min＜ｇｉ＜θi,maxの関係を満たす。
【００４７】
前述したように、エッジ点の輝度勾配により、検出対象の直線の方向も、ある程度限定できる（図８（Ｂ）も参照）。従って、パラメータ平面上において、検出すべき直線に対応する点群（ハフ曲線）の範囲もある程度限定できるため（図８（Ｃ）も参照）、ここでは、最小値θi,minと、最大値θi,maxとを定めて後述するように投票に用いるようにしている。
【００４８】
ステップＳ１１０において、投票部１６は、エッジ点Ｐｉのパラメータ平面内のθｊ（ここで、θｊは、０〜３６０度の範囲内の角度）に対応するρｊを算出して、ハフ変換を行う（式（０）も参照）。座標（θｊ、ρｊ）は、エッジ点Ｐｉに対応するハフ曲線上の１点の座標である。
【００４９】
ステップＳ１１２において、投票部１６は、上記ステップＳ１０８で行った領域限定に応じて、重み係数αi,jを設定する。具体的には、θｊがθi,min≦θｊ≦θi,maxならば、重み係数をαi,j＝αｐ（＞０）として、そうでなければ、重み係数をαi,j＝αｎ（＜０）とする。
【００５０】
ステップＳ１１４において、投票部１６は、（ρｊ、θｊ）に該当するカウンタＶに、上記設定した重み係数αi,jを積算（投票）する。ここでは、重み係数αi,jをそのまま積算したが、予め定められた基準値に重み係数αi,jを乗算した値を積算してもよい。
【００５１】
ステップＳ１１６において、投票部１６は、エッジ点Ｐｉのハフ変換及び投票処理が終了したか否かを判定し、終了していないと判定した場合には、θｊの値を変更して、ステップＳ１１０に戻り、上記処理を繰り返す。すなわち、投票部１６は、予め定められた刻み間隔でθｊの値を変更して（ただし、0°≦θｊ≦360°）、パラメータ平面内の各θに対し、ステップＳ１１０〜ステップＳ１１４を行う。これにより、エッジ点Ｐｉに対応するハフ曲線を構成する点群の各点のパラメータ平面上の座標が求められ、各座標に対応する分割領域への投票が行なわれる。
【００５２】
ステップＳ１１６において、投票部１６は、エッジ点Ｐｉのハフ変換及び投票処理が終了したと判定した場合には、ステップＳ１１８に進み、全エッジ点の投票処理が終了したか否かを判定する。投票部１６は、全エッジ点の投票処理がまだ終了していないと判定した場合には、ステップＳ１０６に戻り、エッジ点群Ｐから、他のエッジ点Ｐｉ（ｘｉ、ｙｉ、ｅｉ、ｇｉ）を選択し、上記処理を繰り返す。
【００５３】
ステップＳ１１８において、全エッジ点の投票処理が終了したと判定された場合には、ステップ１２０において、探索部１８は、全カウンタＶの積算値から、最大値Ｖmax又は極大値群｛Ｖimax｝を予め定められた閾値を用いて探索する。すなわち、閾値を超える積算値の中から最大値Ｖmax或いは極大値群｛Ｖimax｝が探索される。なお、最大値Ｖmax及び極大値群｛Ｖimax｝のどちらを探索するかは、予め設定しておく。
【００５４】
ステップ１２２において、パラメータ出力部２０は、探索部１８により最大Ｖmaxが探索された場合には、該最大値ＶmaxをカウントしたカウンタＶに対応する分割領域に対して予め定められた代表点の各パラメータを直線候補として出力する。また、探索部１８により極大値群｛Ｖimax｝が探索された場合には、該極大値群｛Ｖimax｝の各々の各積算値をカウントしたカウンタＶに対応する分割領域の各々に対して予め定められた代表点の各々のパラメータを直線候補として出力する。
【００５５】
ここで、上記のように重み係数を設定して積算する投票処理を行った場合の効果について説明する。
【００５６】
上記では、輝度勾配の方向に応じてパラメータ平面を限定（最小値θi,min及び最大値θi,maxの設定）しているが、例えば、単に、θｊが該限定した範囲内になければ、カウンタＶの何れにも投票しないとするだけであれば、図９（Ｂ）に示すように、図９（Ａ）の直線上のエッジ点の一部がかすれ等により欠落した場合と、図９（Ｃ）に示すように、植栽等のようにエッジ点の輝度勾配方向が不均一な場合との区別がつかず、エッジ点の欠落による未検出と、ランダムな輝度勾配方向を有する点群が存在する領域での誤検出の双方を抑制することは困難である。すなわち、投票後の探索に用いる閾値を低くすれば、図９（Ｂ）に示すエッジ点の欠落による未検出の抑制はできるが、図９（Ｃ）に示すように本来検出すべきでないランダムな輝度勾配方向を有する点群が存在する領域までもが直線として検出されてしまうおそれがある。
【００５７】
そこで、本実施形態では、エッジ点の輝度勾配方向が不均一な領域が直線として検出されないよう、本実施形態では、該輝度勾配方向に応じて、直線パラメータの範囲を限定し、θｊが該範囲内の場合には、プラス（正）の重み付けをカウンタＶに積算し、θｊが該範囲外の場合には、マイナス（負）の重み係数をカウンタＶに積算するようにしている（図１０（Ｂ）も参照）。これにより、上記範囲外となる直線パラメータに対応するカウンタと、上記範囲内となる直線パラメータに対応するカウンタとで、同じ回数だけ投票されたとしても、前者の積算値を後者の積算値よりも相対的に低くすることができるため、例えエッジ点欠落を抑制するために閾値を下げたとしても、上記検出すべきでない輝度勾配が不均一な領域のパラメータが直線として誤検出されることが抑制される。
【００５８】
これにより、エッジ点の欠落等による未検出の抑制及び不均一な輝度勾配方向を有する点群が存在する領域の誤検出の抑制を両立させることができる。
【符号の説明】
【００５９】
１０   図形検出部
１２   画像入力部
１４   エッジ点検出部
１６   投票部
１８   探索部
２０   パラメータ出力部
【図１】
2013196606.tif 000003
【図２】
2013196606.tif 000004
【図３】
2013196606.tif 000005
【図４】
2013196606.tif 000006
【図５】
2013196606.tif 000007
【図６】
2013196606.tif 000008
【図９】
2013196606.tif 000009
【図１０】
2013196606.tif 000010
【図７】
2013196606.tif 000011
【図８】
2013196606.tif 000012