且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

使用Hough变换的矩形检测

更新时间:2022-10-18 21:30:56

p>

基于窗口化的Hough变换的矩形检测CláudioRosito Jung和Rodrigo Schramm。



现在根据文章,交叉点表示为极坐标,显然你的实现可能不同(唯一的方法是告诉我们显示你的代码)。



假设你与他的您的峰值应该表示为:

  H_1 =(\rho_1,\theta_1)
H_2 = (\rho_2,\theta_2)
...
H_m =(\rho_m,\theta_m)

那么你必须在第4.3节或

中执行公式(3)给出的峰值配对。

  \delta\theta = | \theta_i  -  \theta_j | < T_ \theta 
\delta\rho = | \rho_i- \rho_j | < T_ \rho
| C(\rho_i,\theta_i) - C(\rho_j,\theta_j)| < T_L \frac {C(\rho_i,\theta_i)+ C(\rho_j,\theta_j)} {2}

其中 T_\theta 表示对应于平行线
T_L 是对应于类似长度的行的归一化阈值



注意:我使用LaTeX记号法清楚


I'm trying to implement rectangle detection using the Hough transform, based on this paper.

I programmed it using Matlab, but after the detection of parallel pair lines and orthogonal pairs, I must detect the intersection of these pairs. My question is about the quality of the two line intersection in Hough space.

I found the intersection points by solving four equation systems. Do these intersection points lie in cartesian or polar coordinate space?

For those of you wondering about the paper, its:

Rectangle Detection based on a Windowed Hough Transform by Cláudio Rosito Jung and Rodrigo Schramm.

Now according to the paper, the intersection points are expressed as polar coordinates, obviously you implementation maybe different (the only way to tell is to show us your code).

Assuming you are being consistent with his notation, your peaks should be express as:

H_1 = (\rho_1,\theta_1)
H_2 = (\rho_2,\theta_2)
...
H_m = (\rho_m,\theta_m)

you then must preform peak paring given by equation (3) in section 4.3 or

\delta\theta = |\theta_i - \theta_j| < T_\theta
\delta\rho= |\rho_i- \rho_j | < T_\rho
|C(\rho_i ,\theta_i ) - C(\rho_j ,\theta_j )| < T_L \frac{C(\rho_i ,\theta_i )+C(\rho_j ,\theta_j )}{2}

where T_\theta represents the angular threshold corresponding to parallel lines and T_L is the normalized threshold corresponding to lines of similar length

Note: I used LaTeX notation for clarity