ハフ検出
Classes
Class | Description | |
---|---|---|
CFviCircleHough | 円ハフ検出基本クラス | |
CFviCircleHoughCorrelationEdge | 円ハフ検出クラス(相関エッジ法) | |
CFviCircleHoughData | 円ハフ検出データ構造クラス | |
CFviCircleHoughParam | 円ハフ検出パラメータ構造クラス | |
CFviCircleHoughResult | 円ハフ検出結果クラス | |
CFviCircleHoughSobelEdge | 円ハフ検出クラス(Sobel法) | |
CFviLineHough | 直線ハフ検出基本クラス | |
CFviLineHoughCorrelationEdge | 直線ハフ検出クラス(相関エッジ法) | |
CFviLineHoughData | 直線ハフ検出データ構造クラス | |
CFviLineHoughParam | 直線ハフ検出パラメータ構造クラス | |
CFviLineHoughResult | 直線ハフ検出結果クラス | |
CFviLineHoughSobelEdge | 直線ハフ検出クラス(Sobel法) | |
ErrorCode | エラーコード(ハフ検出関連) | |
Function | ハフ検出関数群 | |
FunctionEx | ハフ検出関数群 (改良版) |
Enumerations
Enumeration | Description | |
---|---|---|
ContinueOption | 連続オプション | |
ObjectColor | 対象物の色 | |
RefineFlag | 再計算フラグ | |
SortType | ソート方法 |
Remarks
ここには、ハフ検出関連のクラス、及び、関数群を集約しています。
トピック:
直線ハフ検出:
円ハフ検出:
エッジ勾配について:
トピック:
直線ハフ検出:
勾配付きエッジ点列から直線を検出する機能です。
詳しくは、クラス・関数・データ構造の説明をご参照ください。
検出されるデータ:
-
クラス:
クラス 内容 CFviLineHough 直線ハフ検出の基本クラスです。 CFviLineHoughCorrelationEdge 相関エッジ法2次元エッジ抽出による、直線検出を行うクラスです。 CFviLineHoughSobelEdge ソーベル法2次元エッジ抽出による、直線検出を行うクラスです。 -
関数:
関数 内容 LineHough()()()() 勾配付きエッジ点列から、直線ハフ検出を行います。 GetSupportEdges()()()() 直線に近い勾配付きエッジ点列を取得します。 RefineByLSM()()()() 直線を再検出します。 -
データ構造:
クラス データID 内容 CFviLineHoughData 1060 1件分の検出データを格納するクラスです。下記の CFviLineHoughResult から取得できます。 CFviLineHoughResult 1061 検出結果を格納するクラスです。 CFviLineHoughParam 1062 直線ハフ検出パラメータを保有するクラスです。 CFviEdge2DCorrelationParam 1023 2次元エッジ検出パラメータ(相関エッジ法)を設定するクラスです。 CFviEdge2DSobelParam 1024 2次元エッジ検出パラメータ(ソーベル法)を設定するクラスです。
円ハフ検出:
勾配付きエッジ点列から円を検出する機能です。
詳しくは、クラス・関数・データ構造の説明をご参照ください。
検出されるデータ:
-
クラス:
クラス 内容 CFviCircleHough 円ハフ検出の基本クラスです。 CFviCircleHoughCorrelationEdge 相関エッジ法2次元エッジ抽出による、円検出を行うクラスです。 CFviCircleHoughSobelEdge ソーベル法2次元エッジ抽出による、円検出を行うクラスです。 -
関数:
関数 内容 CircleHough()()()() 勾配付きエッジ点列から、円ハフ検出を行います。 -
データ構造:
クラス データID 内容 CFviCircleHoughData 1050 1件分の検出データを格納するクラスです。下記の CFviCircleHoughResult から取得できます。 CFviCircleHoughResult 1051 検出結果を格納するクラスです。 CFviCircleHoughParam 1052 円ハフ検出パラメータを保有するクラスです。 CFviEdge2DCorrelationParam 1023 2次元エッジ検出パラメータ(相関エッジ法)を設定するクラスです。 CFviEdge2DSobelParam 1024 2次元エッジ検出パラメータ(ソーベル法)を設定するクラスです。
エッジ勾配について:
当ライブラリでは、勾配付きエッジについて、以下のように定義しています。
エッジの向きは画像の色で黒(輝度低)から白(輝度高)の方向を向いているものとします。
角度の単位は「度」とします。下の図を参考にしてください。
また、直線の傾き(向き)は角度で表わすことができますが、その角度はその直線上にあるエッジの角度と同じものとします。
例えば、上左の図では、一番上の辺上にあるエッジの向きは270度ですから、
この辺(直線)の傾きを表わす角度も270度となります。
同様に考えて、一番左にある辺(直線)の傾きを表わす角度は180度ということになります。
注意して頂きたい点は『直線の傾きを表わす角度の範囲は360度である』ということです。
上左の図の例では、一番下の辺の傾きは90度であり、平行である一番上の辺とは 180度差があることになります。
これはエッジの向きが逆になっているからです。