勾配ベースのハフ変換を実装する方法
私はエッジ検出にハフ変換を使用しようとしています、そして基礎として勾配画像を使用したいと思います。 私はこれまでやっていること、画像所与のIサイズの[M,N]とその偏導関数gx、gy、各画素の勾配角度を計算することですthetas = atan(gy(x,y) ./ gx。同様に、勾配の大きさをとして計算しmagnitudes = sqrt(gx.^2+gy.^2)ます。 ハフ変換を作成するには、次のMATLABコードを使用します。 max_rho = ceil(sqrt(M^2 + N^2)); hough = zeros(2*max_rho, 101); for x=1:M for y=1:N theta = thetas(x,y); rho = x*cos(theta) + y*sin(theta); rho_idx = round(rho)+max_rho; theta_idx = floor((theta + pi/2) / pi * 100) + 1; hough(rho_idx, theta_idx) = hough(rho_idx, theta_idx) + …