Этот пример показывает, как использовать Радон, преобразовывают, чтобы обнаружить строки в изображении. Радон преобразовывает, тесно связано с общей операцией компьютерного зрения, известной как Преобразование Хафа. Можно использовать функцию 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
соответствует степень и x' = в-80 пикселях от центра.
Чтобы визуализировать этот пик в исходной фигуре, найдите центр изображения, обозначенного синим крестом наложенным на изображении ниже. Красная пунктирная линия является радиальной строкой, которая проходит через центр под углом градус. Если вы перемещаетесь вдоль этой строки в-80 пикселях от центра (влево), радиальная строка перпендикулярно пересекает твердую красную линию. Эта твердая красная линия является прямой линией с самым сильным сигналом в Радоне, преобразовывают.
Чтобы интерпретировать Радон преобразовывают далее, исследуют следующие четыре самых сильных peaks в R
.
Два сильных peaks в R
найдены в степень, при смещениях-84 и в-87 пикселях от центра. Этот peaks соответствует этим двум красным линиям слева от самой сильной строки, наложенной на изображении ниже.
Два других сильных peaks найдены около центра R
. Этот peaks расположен в степени, со смещениями-8 и в-44 пикселях от центра. Зеленая пунктирная линия в изображении ниже является радиальной строкой, проходящей через центр под углом 91 градуса. Если вы путешествуете вдоль радиальной строки на расстояние-8 и в-44 пикселях от центра, то радиальная строка перпендикулярно пересекает чисто зеленые строки. Эти чисто зеленые строки соответствуют сильному peaks в R
.
Более слабые строки в изображении относятся к более слабому peaks в R
.