Görüntüdeki bükülmüş bir konveyörü tespit etmeye çalışıyorum. Ben Hough Gösterildiği gibi başarıyla kenarlarınıMatlabdaki düzgün eğriler nasıl algılanır
%# load image, and process it
I = imread('ggp\2.jpg');
g = rgb2gray(I);
bw = edge(g,'Canny');
[H,T,R] = hough(bw);
P = houghpeaks(H,500,'threshold',ceil(0.4*max(H(:))));
% I apply houghlines on the grayscale picture, otherwise it doesn't detect
% the straight lines shown in the picture
lines = houghlines(g,T,R,P,'FillGap',5,'MinLength',50);
figure, imshow(g), hold on
for k = 1:length(lines)
xy = [lines(k).point1; lines(k).point2];
deltaY = xy(2,2) - xy(1,2);
deltaX = xy(2,1) - xy(1,1);
angle = atan2(deltaY, deltaX) * 180/pi;
if (angle == 0)
plot(xy(:,1),xy(:,2),'LineWidth',2,'Color','green');
% Plot beginnings and ends of lines
plot(xy(1,1),xy(1,2),'x','LineWidth',2,'Color','yellow');
plot(xy(2,1),xy(2,2),'x','LineWidth',2,'Color','red');
end
end
algılamak için iki düz çizgiler dönüşümü konveyör üst ve alt kenarlarını algılar kullanarak aşağıdaki kodu kullanılmış ama algılamak nasıl bilmiyorum eğer eğilmiş veya eğilmemişse (resimde eğilmiş) ve bunun derecesini nasıl hesaplayacaksınız.
yaklaşık resimde (kırmızı renk) elle çizilir eğrisi:
Böyle düzgün eğriler (örneğin, 2. derece polinomların tespit etmek için Matlab'de dönüşümü Hough için bir kod ya da işlevi bulundu : y= a*x^2
). Başka herhangi bir çözüm de açığız.
Bize orijinal resmi verebilir misiniz? – Tapio
@Tapio Resmi ekledim. – Ahmad
Görüntüdeki hangi eğriyi algılamaya çalıştığınızı anlamıyorum. Görüntü üzerinde manuel olarak çizim yapabilir ve bulmak istediğiniz eğriyi vurgulayabilir misiniz? – Shai