Resimdeki belirli bir satırı bulma


9

Aşağıdaki resimde mavi renk ile gri renk arasındaki çizgiyi bulmak istiyorum:

resim açıklamasını buraya girin

Daha doğrusu, bu çizginin bitiş noktaları.

Hough dönüşümü bir seçim mi? Evet ise, Hough'u kullanmadan önce resmi nasıl ayarlamalıyım?

Bunu çözmenin herhangi bir yolu yardımcı olacaktır.


Hough dönüşümünden önce bir kenar algılaması yapın. Bu geçişi her iki tarafta siyah olan parlak bir çizgiye çevirecek
endolith

Yanıtlar:


10

Genel olarak, bu tür bir sorun için Canny kenar dedektörü gibi bir kenar dedektörü istersiniz. Hough dönüşümü kenarlardan ziyade çizgileri çıkarmak için kullanışlıdır.

Ancak, bu özel durumda, aşağıdaki gibi bir şey yapmaktan daha iyidir:

imdata = imread('grayblue.jpg');
colidx = find(diff(imdata(1,:) ~= 0);

çünkü çok basit bir görüntü.


0

Bir görüntü için bu basit bir evrişim çekirdeği kenarları güzel bulacaktır:

[-1-2-1]

Bu, her kenar noktasında tek bir kenar pikseli verir. Telaş yok, telaş yok. Canny bu soruna çok karışmış. Herhangi bir açıda çizgiler için kenar noktaları bulmak istiyorsanız, basit bir Laplacian, Gaussian Laplacian (LoG) veya Gaussian Farkı (DoG) kullanabilirsiniz. Sobel ve Prewitt de "çift kalınlık" çizgisi verdikleri için basit fakat uygun değillerdir.

Burada açıklanan kötü bir Hough uygulaması var: http://www.ic.uff.br/~laffernandes/projects/kht/index.html

Ayrıca çok hızlı, ancak uygulanması ve hata ayıklaması biraz zor olan "parametresiz Hough" algoritmaları vardır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.