図1、線成分を検出する画像 【クリックで拡大表示】
図2、画像をハフ変換処理(投票空間:ハフ空間上に変換された曲線の軌跡を蓄積)
輝度の高い部分は、直交座標上の直線成分を表す部分
検証は行っていませんがこの画像に以下の処理を行っても r, θの決定は可能
画像左下原点、横軸は 0から2π、 縦軸 rには 任意のスケールを適用する事。
図3、ハフ変換画像中の、高輝度部を拡大表示(ラインプロファイル表示有り)
非常に鋭いピークがある事が分る。
直線成分(直線の方程式の解)が多い、信頼できる直線の位置を特定している。
図4、ハフ変換画像から、ピーク部分を探すために、平滑化フィルターを施した画像を作成
ハフ変換で得られた画像を、通常の濃淡画像と見做して、古典的な画像処理を施せれば良い
図5、ハフ変換画像から平滑化フィルターを施した画像を算術的に引き算した画像
図5、適切な閾値で2値化し、直線の方程式の候補となる範囲を絞り込む
このブロブ(ROIとして使用)内のピーク値を持つ場所を探し、直線の方程式を作る。
各領域を識別(個別に認識)出来るように、ラベリング処理を施しておく。
図5、二値化しラベリングされた領域毎に抽出された、ハフ変換データ
各領域内の最大値(ピーク)の値を持つ、r, θ の座標を探す。
各領域の r, θ から、直交座標上の直線を決定する。
ピークの探し方:
二値化しラベリングされた領域を参照しながら、線成分を検出する画像の輝度値を
検査し、ラベル付けされていない場所は無視しながら、ラベル付けされた領域毎の
最大輝度を探す。1回の画像走査で、各領域毎の最大輝度値を容易に決定できる。
図6、ハフ変換を使って検出した各 r, θ の値から直線を決定し、
元の画像上に直線を赤で描画 【クリックで拡大表示】