ハフ変換(Hough変換)の原理について
現在、ハフ変換の原理について下記サイトなどを参考に調べていますが
いまいち原理がよくわかりません。
そこで2つ質問があります。
http://www.allisone.co.jp/html/Notes/image/Hough/index.html
【質問1】
ハフ変換の原理は以下の認識であっていますでしょうか。
[直線を検出するハフ変換の原理]
10個のピクセルで構成される画像があり、各々のピクセルの座標を
(x1, y1)、(x2, y2)、(x3, y3)・・・(x10, y10) とする場合。
また、画像上の直線の式は p = xcosθ + ysinθで表すことができるため、
様々なpとθの組み合わせの式を作成(例えば下記3つの式)
(1) 2 = xcos10 + ysin10
(2) 4 = xcos20 + ysin20
(3) 6 = xcos30 + ysin30
(1)の式に10個のピクセルの各々の座標(x1, y1)、(x2, y2)・・・(x10, y10)
を代入 → 2つのピクセルの座標が(1)式を満たす
同様に(2)の式に10個のピクセルの各々の座標を代入
→ 8つのピクセルの座標が(2)式を満たす
同様に(3)の式に10個のピクセルの各々の座標を代入
→ 3つのピクセルの座標が(3)式を満たす
(2)式を満たすピクセルが多数存在するためこの画像には
4 = xcos20 + ysin20 で表す直線が存在する
【疑問2】
上記の認識でよい場合、もう1つ疑問があります。
直線の式 p = xcosθ + ysinθ において様々な(p, θ)の組み合わせの式を作成
することになると思うのですがその(p, θ)はどのように決めるのでしょうか。
考えうる限りすべての(p, θ)の組み合わせの式を作成するとものすごい量の
種類の式ができると思います。これをプログラムで行うとハフ変換はかなり
重い処理ということになるのでしょうか。