Для получения информации о создании данных о проекции из линейных интегралов вдоль путей, которые исходят из одного источника, названного проекциями луча вентилятора, смотрите Проекцию Луча Вентилятора. Чтобы преобразовать данные о проекции параллельного луча в данные о проекции луча вентилятора, используйте функцию para2fan.
Функция radon вычисляет проекции матрицы изображений вдоль заданных направлений.
Проекция двумерной функции f (x, y) является набором линейных интегралов. Функция radon вычисляет линейные интегралы от многочисленных источников вдоль параллельных путей или лучи, в определенном направлении. Лучи расположены модуль на 1 пиксель с интервалами независимо. Чтобы представлять изображение, функция radon берет несколько, проекции параллельного луча изображения от различных углов путем вращения источника вокруг центра изображения. Следующие данные показывают одну проекцию в заданном угле поворота.
Проекция параллельного луча в тете угла поворота

Например, линейный интеграл f (x, y) в вертикальном направлении является проекцией f (x, y) на ось X; линейный интеграл в горизонтальном направлении является проекцией f (x, y) на ось Y. Следующие данные показывают горизонтальные и вертикальные проекции для простой двумерной функции.
Горизонтальные и вертикальные проекции простой функции

Проекции могут быть вычислены вдоль любого угла theta (θ). В целом преобразование Радона f (x, y) является линейным интегралом f, параллельного y '-оси
где
Следующая фигура иллюстрирует, что геометрия Радона преобразовывает.
Геометрия радона преобразовывает

Этот пример показывает, как вычислить преобразование Радона изображения, I, для определенного набора углов, theta, с помощью функции radon. Функция возвращается, R, в котором столбцы содержат Радон, преобразовывает для каждого угла в theta. Функция также возвращает вектор, xp, который содержит соответствующие координаты вдоль оси X. Центральный пиксель I задан, чтобы быть floor((size(I)+1)/2), который является пикселем на оси X, соответствующей x' = 0.
Создайте изображение небольшой выборки для этого примера, который состоит из одного квадратного объекта, и отобразите его.
I = zeros(100,100); I(25:75,25:75) = 1; imshow(I)

Вычислите преобразование Радона изображения для углов 0 градусов и 45 градусов.
[R,xp] = radon(I,[0 45]);
Постройте преобразование для 0 градусов.
figure
plot(xp,R(:,1));
title('Radon Transform of a Square Function at 0 degrees')
Постройте преобразование для 45 градусов.
figure
plot(xp,R(:,2));
title('Radon Transform of a Square Function at 45 degrees')
Радон преобразовывает для большого количества углов, часто отображается как изображение. В этом примере Радон преобразовывает для квадратного изображения, вычисляется под углами от 0 ° до 180 °, с шагом на 1 °.
theta = 0:180;
[R,xp] = radon(I,theta);
imagesc(theta,xp,R);
title('R_{\theta} (X\prime)');
xlabel('\theta (degrees)');
ylabel('X\prime');
set(gca,'XTick',0:20:180);
colormap(hot);
colorbarРадон преобразовывает Используя 180 проекций
