Обнаружьте строки Используя радон, преобразовывают

Этот пример показывает, как использовать Радон, преобразовывают, чтобы обнаружить строки в изображении. Радон преобразовывает, тесно связано с общей операцией компьютерного зрения, известной как Преобразование Хафа. Можно использовать функцию radon, чтобы реализовать форму Преобразования Хафа, используемого, чтобы обнаружить прямые линии.

Вычислите преобразование радона изображения

Считайте изображение в рабочую область. Преобразуйте его в полутоновое изображение.

I = fitsread('solarspectra.fts');
I = rescale(I);

Отобразите оригинальное изображение.

figure
imshow(I)
title('Original Image')

Вычислите двоичное изображение краев с помощью функции edge. Отобразите двухуровневое изображение, возвращенное функцией edge.

BW = edge(I);
figure
imshow(BW)
title('Edges of Original Image')

Вычислите преобразование радона изображения, с помощью функции radon, и отобразите преобразование. Местоположения peaks в преобразовании соответствуют местоположениям прямых линий в оригинальном изображении.

theta = 0:179;
[R,xp] = radon(BW,theta);

Отобразитесь результат радона преобразовывают.

figure
imagesc(theta, xp, R); colormap(hot);
xlabel('\theta (degrees)');
ylabel('x^{\prime} (pixels from center)');
title('R_{\theta} (x^{\prime})');
colorbar

Самый сильный пик в R соответствует θ=1 степень и x' = в-80 пикселях от центра.

Интерпретация Peaks радона преобразовывает

Чтобы визуализировать этот пик в исходной фигуре, найдите центр изображения, обозначенного синим крестом наложенным на изображении ниже. Красная пунктирная линия является радиальной строкой, которая проходит через центр под углом θ=1 градус. Если вы перемещаетесь вдоль этой строки в-80 пикселях от центра (влево), радиальная строка перпендикулярно пересекает твердую красную линию. Эта твердая красная линия является прямой линией с самым сильным сигналом в Радоне, преобразовывают.

Чтобы интерпретировать Радон преобразовывают далее, исследуют следующие четыре самых сильных peaks в R.

Два сильных peaks в R найдены в θ=1 степень, при смещениях-84 и в-87 пикселях от центра. Этот peaks соответствует этим двум красным линиям слева от самой сильной строки, наложенной на изображении ниже.

Два других сильных peaks найдены около центра R. Этот peaks расположен в θ=91 степени, со смещениями-8 и в-44 пикселях от центра. Зеленая пунктирная линия в изображении ниже является радиальной строкой, проходящей через центр под углом 91 градуса. Если вы путешествуете вдоль радиальной строки на расстояние-8 и в-44 пикселях от центра, то радиальная строка перпендикулярно пересекает чисто зеленые строки. Эти чисто зеленые строки соответствуют сильному peaks в R.

Более слабые строки в изображении относятся к более слабому peaks в R.