Преобразуйте проекции луча вентилятора в параллельный луч
P = fan2para(F,D)
P = fan2para(F,D,Name,Value)
[P,parallel_sensor_positions,parallel_rotation_angles] = fan2para(___)
пары "имя-значение" использования, чтобы управлять аспектами преобразования данных. Имена аргумента могут быть сокращены, и случай не имеет значения.P
= fan2para(F
,D
,Name,Value
)
[
возвращает местоположения датчика параллельного луча в P
,parallel_sensor_positions
,parallel_rotation_angles
] = fan2para(___)parallel_sensor_positions
и углы поворота в parallel_rotation_angles
.
Создайте синтетические данные параллельного луча.
ph = phantom(128);
Вычислите параллельный луч преобразовывают и отображают его.
theta = 0:179; [Psynthetic,xp] = radon(ph,theta); imshow(Psynthetic,[],... 'XData',theta,'YData',xp,'InitialMagnification','fit') axis normal title('Synthetic Parallel-Beam Data') xlabel('\theta (degrees)') ylabel('x''') colormap(gca,hot), colorbar
Преобразуйте данные параллельного луча в луч вентилятора.
Fsynthetic = para2fan(Psynthetic,100,'FanSensorSpacing',1);
Восстановите исходные данные параллельного луча.
[Precovered,Ploc,Pangles] = fan2para(Fsynthetic,100,... 'FanSensorSpacing',1,... 'ParallelSensorSpacing',1); figure imshow(Precovered,[],... 'XData',Pangles,'YData',Ploc,'InitialMagnification','fit') axis normal title('Recovered Parallel-Beam Data') xlabel('Rotation Angles (degrees)') ylabel('Parallel Sensor Locations (pixels)') colormap(gca,hot), colorbar
F
Данные о проекции луча вентилятораДанные о проекции луча вентилятора, заданные как числовая матрица. Каждый столбец F
содержит данные луча вентилятора в одном угле поворота. Количество столбцов указывает на количество углов поворота луча вентилятора, и количество строк указывает на количество датчиков луча вентилятора.
Типы данных: double | single
D
Расстояние от поклонника излучает вершину к центру вращенияРасстояние в пикселях от поклонника излучает вершину к центру вращения, заданного как положительное число. fan2para
принимает, что центр вращения является центральной точкой проекций, которая задана как ceil(size(F,1)/2)
. Фигура иллюстрирует D
относительно вершины луча вентилятора для одной проекции луча вентилятора.
Типы данных: double | single
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми.
Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение.
Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
P = fan2para(F,D,'FanRotationIncrement',5)
'FanCoverage'
— Область значений вращения луча вентилятора'cycle'
(значение по умолчанию) | 'minimal'
Область значений вращения луча вентилятора, заданного как пара, разделенная запятой, состоящая из 'FanCoverage'
и одно из этих значений.
'cycle'
— Вращайтесь через полный спектр [0, 360), степени.
'minimal'
— Вращайтесь через минимальную область значений, необходимую, чтобы представлять объект.
'FanRotationIncrement'
— Шаг угла поворота луча вентилятора1
(значение по умолчанию) | положительная скалярная величинаУгол поворота луча вентилятора постепенно увеличивается в градусах, заданный как пара, разделенная запятой, состоящая из 'FanRotationIncrement'
и положительной скалярной величины.
Типы данных: double
'FanSensorGeometry'
— Расположение датчика луча вентилятора'arc'
(значение по умолчанию) | 'line'
Расположение датчика луча вентилятора, заданное как пара, разделенная запятой, состоящая из 'FanSensorGeometry'
и одно из следующих значений.
Значение | Значение | Схема |
---|---|---|
| Датчики расположены с интервалами под равными углами вдоль круговой дуги на расстоянии
| |
| Датчики расположены с интервалами на равных расстояниях вдоль строки, которая параллельна x' ось. Самый близкий датчик является расстоянием
|
'FanSensorSpacing'
— Интервал датчика боба вентилятора1
(значение по умолчанию) | положительная скалярная величинаИнтервал датчика боба вентилятора, заданный как пара, разделенная запятой, состоящая из 'FanSensorSpacing'
и положительной скалярной величины.
Если FanSensorGeometry
является 'arc'
, то FanSensorSpacing
задает угловой интервал в градусах.
Если FanSensorGeometry
является 'line'
, то FanSensorSpacing
задает линейное расстояние между лучами вентилятора в пикселях. Линейный интервал измеряется на x' ось.
Типы данных: double
Интерполяция
Тип интерполяции'Linear'
(значение по умолчанию) | 'nearest'
| 'spline'
| 'pchip'
Тип интерполяции используется между параллельным лучом и данными луча вентилятора, заданными как пара, разделенная запятой, состоящая из 'Interpolation'
и одно из этих значений.
самый близкий
NearestNeighbor
'linear'
— Линейный (значение по умолчанию)
сплайн
Кусочный кубический сплайн
pchip
Кусочный кубический Эрмит (PCHIP)
'ParallelCoverage'
— Область значений вращения параллельного луча'halfcycle'
(значение по умолчанию) | 'cycle
Область значений вращения параллельного луча, заданного как пара, разделенная запятой, состоящая из 'ParallelCoverage'
и одно из этих значений.
'cycle'
— Параллельные данные покрывают полный спектр [0, 360), степени.
'halfcycle'
— Параллельные покрытия данных [0, 180) степени.
'ParallelRotationIncrement'
— Шаг угла поворота параллельного лучаУгол поворота параллельного луча постепенно увеличивается в градусах, заданный как пара, разделенная запятой, состоящая из 'ParallelRotationIncrement'
и положительной скалярной величины k, таким образом, что 180/
k является целым числом. Если вы не задаете ParallelRotationIncrement
, то значение по умолчанию равно FanRotationIncrement
.
Типы данных: double
'ParallelSensorSpacing'
— Интервал датчика параллельного лучаИнтервал датчика параллельного луча в пикселях, заданных как пара, разделенная запятой, состоящая из 'ParallelSensorSpacing'
и положительной скалярной величины. Область значений местоположений датчика параллельного луча вычисляется из области значений углов вентилятора, fanangles, согласно:
.[D*sin(min(fanangles)) D*sin(max(fanangles))]
Если вы не задаете ParallelSensorSpacing
, то интервал принят, чтобы быть универсальным и установлен в минимальный интервал, подразумеваемый углами вентилятора, и выбрал в области значений, подразумеваемой углами вентилятора.
Типы данных: double
P
Данные о проекции параллельного лучаДанные о проекции параллельного луча, возвращенные как числовая матрица. Каждый столбец P
содержит данные параллельного луча в одном угле поворота. Количество столбцов указывает на общее количество углов поворота параллельного луча и равно длине parallel_rotation_angles
. Количество строк указывает на общее количество датчиков параллельного луча и равно длине parallel_sensor_positions
.
Типы данных: double
parallel_sensor_positions
— Местоположения датчика параллельного лучаМестоположения датчика параллельного луча, возвращенные как числовой вектор-столбец.
Типы данных: double
parallel_rotation_angles
— Углы поворота параллельного лучаУглы поворота параллельного луча, возвращенные как числовой вектор - строка.
Типы данных: double
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.