радон

Радон преобразовывает

Синтаксис

R = radon(I)
R = radon(I,theta)
[R,xp] = radon(___)

Описание

R = radon(I) возвращается Радон преобразовывают R 2D полутонового изображения I для углов в области значений [0, 179] степени. Радон преобразовывает, проекция интенсивности изображений вдоль радиальной строки, ориентированной под определенным углом.

Опционально можно вычислить Радон, преобразовывают использование графического процессора (требует Parallel Computing Toolbox™). Для получения дополнительной информации смотрите Обработку изображений на графическом процессоре.

пример

R = radon(I,theta) возвращается Радон преобразовывают для углов, заданных theta.

[R,xp] = radon(___) возвращает векторный xp, содержащий радиальные координаты, соответствующие каждой строке изображения.

Примеры

свернуть все

Заставьте оси масштабироваться видимый для этого изображения.

iptsetpref('ImshowAxesVisible','on')

Создайте демонстрационное изображение.

I = zeros(100,100);
I(25:75, 25:75) = 1;

Вычислите Радон преобразовывают.

theta = 0:180;
[R,xp] = radon(I,theta);

Отобразите преобразование.

imshow(R,[],'Xdata',theta,'Ydata',xp,'InitialMagnification','fit')
xlabel('\theta (degrees)')
ylabel('x''')
colormap(gca,hot), colorbar

Заставьте оси масштабироваться невидимый.

iptsetpref('ImshowAxesVisible','off')

Входные параметры

свернуть все

Отобразите, заданный как 2D полутоновое изображение.

Чтобы вычислить Радон преобразовывают использование графического процессора, задают I как gpuArray, который содержит 2D полутоновое изображение типа данных single, double, uint8, uint16, uint32, int8, int16 или int32.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | логический

Углы проекции (в градусах), заданный в виде числа или числового вектора.

Если вы вычисляете, Радон преобразовывают использование графического процессора, то theta может опционально быть gpuArray, содержащий числовой скаляр или вектор.

Типы данных: double

Выходные аргументы

свернуть все

Преобразование радона изображения I, возвращенный как одно из следующих.

  • Если theta является скаляром, то R является числовым вектор-столбцом, содержащим Радон, преобразовывают для степеней theta.

  • Если theta является вектором, то R является матрицей, в которой каждым столбцом является Радон, преобразовывают для одного из углов в theta.

Если Радон преобразовывает, вычисляется с помощью графического процессора, то R возвращен как gpuArray, содержащий числовой вектор-столбец или числовую матрицу.

Радиальные координаты, соответствующие каждой строке R, возвращенного как числовой вектор. Радиальные координаты являются значениями вдоль x '-оси, которая ориентирована в степенях theta против часовой стрелки от оси X. Источник обеих осей является центральным пикселем изображения, которое задано как

floor((size(I)+1)/2)
Например, в 20 30 изображении, центральный пиксель (10,15).

Если Радон преобразовывает, вычисляется с помощью графического процессора, то xp возвращен как gpuArray, содержащий числовой вектор.

Алгоритмы

Преобразование Радона изображения является суммой преобразований Радона каждого отдельного пикселя.

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

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

Ссылки

[1] Bracewell, Рональд Н., Двумерная Обработка изображений, Englewood Cliffs, NJ, Prentice Hall, 1995, стр 505-537.

[2] Лим, Джэ С., Двумерная Обработка сигналов и Обработка изображений, Englewood Cliffs, NJ, Prentice Hall, 1990, стр 42-45.

Расширенные возможности

Смотрите также

| | | | |

Представлено до R2006a