Смекни!
smekni.com

Средства визуализации изображений в компьютерной томографии и цифровых рентгенографических системах (стр. 9 из 11)

= 0, если
³ 0.

При переходе от функции g+ (x , l ) =

к функции gr (P, S) интегрирование по окружности S(l ) в трехмерном пространстве заменяется на интегрирование по прямым линиям в плоскости регистрации. Отметим, что формулы обращения лучевого преобразования, использующие интегрирование вдоль прямых в плоскости регистрации.

4.3 Элементы теории обобщенных функций в применении к задачам обращения лучевого преобразования

Обобщенная функция это непрерывный линейный функционал на пространстве К всех функций a (x), имеющих производные всех порядков и финитный носитель (свой для каждой из функций α (x)). Любая регулярная интегрируемая функция f(x) задает линейный функционал (f, a ):

. (2.2.1)

Однако на пространстве функций K существуют непрерывные линейные функционалы, которые не могут быть заданы с помощью регулярных интегрируемых функций, наиболее известными примерами таких функционалов являются δ-функция и ее производные. Другим широко известным примером является функционал, основанный на функции (1/x)dx. Функция 1/x x является регулярной, однако она не является интегрируемой. При задании соответствующего функционала интеграл

(2.2.2)

понимается в смысле главного значения:

.

Такое понимание интеграла используется при определении преобразования Гильберта от функции α (x) как свертки с функцией 1/xx.

.

Преобразование Гильберта используется, в частности, в одной из формул обращения преобразования Радона в двумерном пространстве. Эта формула обычно приводится в руководствах по компьютерной рентгеновской томографии. Однако метод свертки и обратного проецирования, часто используемый при построении численных алгоритмов томографической реконструкции, основан на несколько другом виде формулы обращения преобразования Радона. В этом методе по существу используется свертка проекционных данных последовательностью функций сходящихся к 1/xx2 в смысле обобщенных функций.

Линейный функционал, соответствующий функции 1/xx2, или, что то же самое, обобщенная функция 1/xx2 определяется формулой [19]

(2.2.3)

Интеграл в (2.2.3) сходится в обычном смысле для любой функции a (x) из пространства основных, и даже из более широкого класса, функций.

В формулах обращения преобразования Радона используется свертка данных с функцией 1/xx2. Свертка обобщенных функций определяется следующим образом.

Пусть заданы два функционала f и g . Действие функционала f *g являющегося их сверткой, на функцию a из пространства основных задается формулой

(f *g, a )= (fx, gy, a (x + y))). (2.2.4)

Здесь gy означает, что функционал действует на функцию a , как функцию переменной y, а функционал f действует на полученную функцию переменной x. Если функционалы f и g можно задать регулярными функциям, то функционал свертки определенный формулой (2.2.4) можно задать функцией, являющейся сверткой соответствующих функций в обычном смысле.

Здесь следует сделать одно замечание. Даже если функция одной переменной a (t ) имеет финитный носитель, функция двух переменных a (x + y) не является функцией с финитным носителем. Это означает, что существование функционала f *g для конкретных функционалов f и g или необходимо доказывать. Известно, что для существования функционала свертки, достаточно, чтобы один из функционалов имел финитный носитель.

Если рассматривать задачи томографии, то там с функцией 1/xx2 сворачиваются исходные данные, которые регулярны и имеют финитный носитель. Можно показать также, что необходимая свертка выражается формулой:

S(r, j ) = I(r, j ) * (-1/pr2 ) =

(2.2.5)

В реальных ситуациях функция I(r, j ) известна в некотором дискретном множестве точек. Для того, чтобы использовать формулу (2.2.4) нужно построить аппроксимацию функции I(r, j ), такую что интеграл в правой части имеет смысл. Интеграл (2.2.4) заведомо сходится, если функция I(r, j ) принадлежит множеству K, то есть имеет финитный носитель и является бесконечно дифференцируемой.

Однако аппроксимация данных бесконечно дифференцируемой функцией может оказаться громоздкой при построении численных алгоритмов. Кроме того, использование бесконечно дифференцируемых функций может приводить к заглаживанию границ областей с резко отличающимися плотностями. Для сходимости интеграла в (2.2.5) достаточно, чтобы функция I(r, j ) имела в каждой точке конечные односторонние производные первого порядка по переменной r. Это позволяет, в частности, использовать кубические сплайны для построения аппроксимации функции I(r, j ).

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

На этой основе построено приведенное выше определение свертки. Особенно просто и наглядно этот прием можно продемонстрировать при определении операции дифференцирования обобщенных функций.

Пусть линейный функционал f задается регулярной функцией f(x) имеющей интегрируемую производную. Для действия производной на функцию a (x) из пространства основных можно записать равенство

, (2.2.6)

здесь использовано интегрирование по частям и то, что a (x) равна нулю вне некоторого конечного интервала.

Приведенное выше свойство берется за основу при определении производной обобщенной функции. Пусть задан функционал f, его производной называется функционал f/, определяемый равенством

. Так как функции из пространства основных бесконечно дифференцируемы, то определение является корректным и обобщенные функции имеют производные любого порядка.

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

Пусть K пространство комплексных основных функций (бесконечно дифференцируемых с финитным носителем).

Каждой комплекснозначной локально интегрируемой функции f(x) ставится в соответствие функционал

,

комплексно сопряжена с f(x), a (x) Î K.

Множество всех линейных непрерывных функционалов на K образует комплексное пространство обобщенных функций K/. Обозначим через Z - множество функций, являющихся преобразованиями Фурье функций из K.

Преобразованием Фурье элемента f из пространства K называется функционал g на пространстве Z, действующий по формуле

(g, y ) = 2 p (f, a ), (2.2.7)

здесь j такой элемент из K, для которого преобразование Фурье есть y . То есть для того чтобы вычислить действие функционала g на функцию y (l ) из пространства Z, нужно:

найти такую функцию a (x) из пространства K, преобразованием Фурье, которой является функция y (l );

найти действие функционала f на найденную функцию a (x).

Пространства основных функций и функционалов над ними выбраны нами так, что оба шага всегда выполнимы.

Здесь следует обратить внимание на то, что обобщенные функции и их преобразования Фурье определяются как линейные функционалы над разными основными пространствами. Причем функции из множества Z, на котором действуют преобразования Фурье, не являются функциями с финитными носителями, но продолжают оставаться бесконечно дифференцируемым. Что позволяет сохранить многие полезные свойства обобщенных функций.

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

Рассмотрим несколько подробнее этот вопрос с точки зрения возможности построения соответствующих численных алгоритмов в трехмерном пространстве.

Напомним определение лучевого преобразования, которое было дано в предыдущих параграфах.

Лучевым преобразованием функции f(x) = f(x1, x2, x3) называется функция

, (2.2.8)

являющаяся интегралом от f(x) вдоль луча, исходящего из точки S = (s1, s2, s3) в направлении вектора a = (a 1, a 2, a 3).