Привет, Хабр! Как ты уже знаешь, в Smart Engines мы разрабатываем томографическое программное обеспечение. Компьютерная томография (КТ) – это неинвазивный метод исследования внутренних особенностей предмета. На сегодняшний день КТ является одним из основных томографических методов исследования внутренних органов человека, одновременно с этим, КТ – это перспективный инструмент для контроля качества в промышленности.

Исследования КТ проводятся с помощью томографа. Компьютерный томограф – это сложный аппарат, который состоит из 4-х основных частей: 

  • Источник рентгеновского излучения

  • Детектор

  • Подвижный столик или гантри

  • Компьютер

Метод компьютерной томографии предполагает 2 основных этапа:

  1. Съемка набора трансмиссионных изображений в рентгеновском диапазоне

  2. Компьютерная обработка полученных данных

Принципиальная схема компьютерного томографа.
Принципиальная схема компьютерного томографа.

Трансмиссионные изображения, получаемые на первом этапе метода КТ, описывают картину ослабления интенсивности зондирующего излучения при прохождении через объект. Одно трансмиссионное изображение – это результат одного “снятия рентгена”. На первом этапе метода КТ производится сбор целого набора трансмиссионных изображений объекта, которые отличаются ориентацией объекта относительно системы источник-детектор. Второй этап метода КТ предполагает сложную обработку полученного набора изображений, результат которой – воксельная реконструкция исследуемого объекта. 

Реконструкция фотоаппарата методом КТ.
Реконструкция фотоаппарата методом КТ.

Процесс разработки томографического обеспечения предполагает работу по многим фронтам: начиная с обработки сырых данных с томографа и создания моделей появления артефактов, заканчивая разработкой алгоритмов КТ-реконструкции и методов анализа. Один из инструментов, помогающий валидировать модели, быстро отсеивать неэффективные идеи и сравнивать различные подходы – это компьютерное моделирование.

Моделирование КТ эксперимента – крайне трудоемкая задача, которая требует внимания ко многим деталям. Во-первых, томографическая установка – это сложный аппарат с широким пространством для выбора параметров и модификаций. Во-вторых, в основе метода КТ лежит сложный по своей сути физический процесс взаимодействия рентгеновских квантов с веществом.

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

Линейные интегралы в КТ

В основе метода КТ лежит физический закон Бугера-Ламберта-Бера (ЗБЛБ), определяющий экспоненциальное ослабление интенсивности параллельного монохроматического пучка электромагнитного излучения при распространении его в поглощающей среде. В случае монохроматического излучения поглощательные свойства вещества можно описать линейным коэффициентом поглощения k. Тогда в простейшем виде ЗБЛБ принимает вид:

W(x) = W_0\cdot exp(-k \cdot x)\tag{1}

Где W_0– изначальная интенсивность излучения(x=0), x – координата вдоль направления распространения излучения, а W(x)–– интенсивность ослабленного излучения.

Многочисленные эксперименты показали, что в рентгеновском диапазоне излучения ЗБЛБ (1) выполняется с высокой степенью точности.

Иллюстрация ЗБЛБ. Однородная поглощающая среда. Разнородная поглощающая среда.
Иллюстрация ЗБЛБ. Однородная поглощающая среда. Разнородная поглощающая среда.

Если обратить внимание на то, что окружающие нас физические объекты зачастую состоят из разных веществ и материалов, так еще и отличаются по размерам и формам, то захочется немного обобщить формулу (1) до вида (2):

W(L) = W_0(L)\cdot exp(-\int_{L}\mu(l)dl)\tag{2}

Эта формула так же, как и (1) описывает ослабление интенсивности излучения, но в показателе экспоненты теперь находится интеграл, описывающий поглощающую среду на отрезкеLвдоль направления распространения излучения. В этой формуле\mu(l)dl– это локальный линейный коэффициент поглощения, а интеграл

\lambda(L) = \int_{L}\mu(l)dl

называется линейным интегралом вдольL. Можно сказать, что линейный интеграл\lambda(L)-это число, показывающее как сильно среда поглощает вдоль направленияL. Получение набора значений линейных интегралов из трансмиссионных данных – важный промежуточный этап метода КТ, который позволяет сводить решение задачи КТ-реконструкции, например, к задаче решения системы линейных уравнений. 

Давайте рассмотрим в модельном эксперименте процесс получения набора значений линейных интегралов из данных реальных измерений. Для этого, для начала, мы вообразим процесс получения трансмиссионных данных. Для получения трансмиссионного изображения нам понадобится: источник рентгеновского излучения, детектор рентгеновского излучения - из них мы соберем наш виртуальный томограф, и, конечно, нам понадобится объект для исследования. Пусть наш воображаемый источник точечный и он светит в сторону детектора подобно фонарику, а детектор - площадка, снабженная чувствительными к рентгену пикселями. В качестве исследуемого объекта будем использовать апельсин.

Иллюстрация процесса томографических измерений. Получение изображения пустого пучка (слева). Получение трансмиссионного изображения (справа).
Иллюстрация процесса томографических измерений. Получение изображения пустого пучка (слева). Получение трансмиссионного изображения (справа).

Сейчас все готово для получения трансмиссионного изображения. Мы ожидаем, что детектор зарегистрирует в каждом пикселе p некоторый сигнал, по которому мы сможем оценить интенсивность излучения вдоль направления от источника излучения в центр этого пикселя. Обозначим это направление какL_p. Так как в процессе нашего воображаемого эксперимента выполняется техника безопасности, источник излучения выключен. Для измерения мы включаем источник излучения на время t. Итак, мы получили трансмиссионное изображение, по сути, набор ослабленных интенсивностей вдоль различных направленийW(L_p). Для того чтобы получить набор не ослабленных интенсивностей W_0(L_p), мы в следующем измерении убираем поглощающую среду (в нашем случае мы убираем апельсин) и проводим аналогичные измерения. Полученный в новом измерении отклик детектора называется изображением пустого пучка. Теперь, основываясь на (2), путем логарифмирования мы можем получить набор значений линейных интегралов, используя полученные данные:

\lambda(L_p) = -ln (\frac{W(L_p)}{W_0(L_p)})\tag{3}

Преобразование данных (3) принято называть линеаризацией, а полученные в результате изображения называются линеаризованными.

Наш модельный эксперимент качественно повторяет процесс получения линеаризованных томографических изображений в реальных измерениях, однако в суровой действительности для получения качественной КТ-реконструкции такой простой обработки данных как (3) оказывается недостаточно. В реальном эксперименте мы встречаемся с тем, что среда у нас не чисто поглощающая, источник совсем не точечный и излучает кванты разных энергий, а еще детектор шумит, а часть его пикселей вообще не работают, и так далее по списку. Это все приводит к тому, что на практике используются более сложные преобразования сигналов, чем (3), например, как мы описывали ранее тут.

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

Томографическая реконструкция апельсина.
Томографическая реконструкция апельсина.

Однако как мы можем проверить, насколько реконструкция точно описывает внутреннее строение исследуемого объекта? В случае с апельсином - мы можем узнать внутреннее строение самым настоящим инвазивным методом – мы можем его просто разрезать, однако с таким подходом далеко не уедешь. Для валидации результата реконструкции необходимо проводить КТ измерения объектов, внутренняя структура которых нам заранее известна. Для этого разработаны медицинские и промышленные тестово-калибровочные фантомы, о которых мы рассказывали в этой статье. К сожалению, подготовить фантомы на все случаи жизни не получится, а получение доступа к множеству разных томографов – нетривиальная задача. Таким образом появляется потребность в численном моделировании, которое позволяет получить трансмиссионные данные на основе цифровых объектов.

Расчет линейных интегралов

Получение синтетических трансмиссионных данных эквивалентно получению набора ослабленных интенсивностей W(L) из ЗБЛБ:

W(L) = W_0(L)\cdot exp(-\lambda(L))\tag{4}

Интенсивность изначального излучения W_0(L) можно оценить из реального эксперимента, в крайнем случае - выдумать, однако стоящие в показателе экспоненты значения линейных интегралов \lambda(L) просто выдумать не получится. По своему определению линейные интегралы\lambda(L) сложным образом связаны между собой – они описывают одну и ту же поглощающую среду вдоль различных направлений. А значит, для начала придется определиться с этой самой поглощающей средой. 

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

Наверное самый известный цифровой фантом в КТ – это фантома Шеппа и Логана (Shepp–Logan phantom [1]). Задумка авторов заключалась в том, чтобы смоделировать одну из плоскостей человеческого черепа с помощью набора эллипсов разных интенсивностей.

Фантом Шеппа и Логана [1].
Фантом Шеппа и Логана [1].

Современные цифровые фантомы можно разделить на два основных класса: воксельные и векторные. Оба подхода к представлению фантомов имеют свои плюсы и минусы, однако выбор того или иного представления фантома – это всегда компромисс между реалистичностью и гибкостью.

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

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

Используя только математические примитивы крайне сложно моделировать изменчивые структуры органов человека и повторять нетривиальные формы деталей механизмов и электрических устройств. В свое время логическим продолжением фантомов на основе математических примитивов стали фантомы на основе параметрических поверхностей (Bezier Surfaces [2], NURBS surfaces [4]). 

Фантомы, заданные поверхностями NURBS.
Фантомы, заданные поверхностями NURBS.

Заданные поверхностями фантомы способны принимать формы практически любой сложности. Главный недостаток таких фантомов заключается в сложности их генерации.

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

Воксельные фантомы. Позвоночник и ребра человека. Плата USB-накопителя.
Воксельные фантомы. Позвоночник и ребра человека. Плата USB-накопителя.

Хотя такое представление цифровых копий исследуемых объектов кажется наиболее логичным, в процессе модельных экспериментов можно столкнуться с проблемами масштабирования и точных расчетов линейных интегралов. В случае воксельного представления фантома линейный интеграл\lambda(L)представим в виде взвешенной суммы:

\lambda(L)=\int_{L} \mu(l)dl=\sum\limits_{j}\int_{L} \mu(x)dl_j=\sum\limits_{j}\omega_j \mu_j\tag{5}

Гдеj-порядковый номер вокселя, который оказался вдоль направленияL,\mu_j-линейный коэффициент поглощения этого вокселя, а \omega_j-это вес этого вокселя в общей сумме. Именно расчет линейного интеграла в виде взвешенной суммы сильно усложняет моделирование с использованием воксельных фантомов: необходимо определить степень участия каждого из вокселей в ослаблении излучения. Существует множество подходов разной степени точности для решения этой задачи. Эти подходы можно разделить на 3 основные группы по принципу присвоения весов вокселям.

1. “Дискретный луч”. Этот подход предполагает, что в (5) вес вокселя j в линейном интеграле\lambda(L)может быть равен только единице или нулю. В рамках данного подхода по направлениюLстроится дискретная прямая по воксельному изображению фантома, например, используя алгоритм DDA-линии или алгоритм Брезенхема.

Иллюстрация дискретной прямой, построенной алгоритмом Брезенхема.
Иллюстрация дискретной прямой, построенной алгоритмом Брезенхема.

Суммирование производится только по значениям вокселей , которые попали на эту дискретную прямую: 

\begin{equation*} \omega_j =  \begin{cases}   1 &\text{,    воксель попадает на дискретную прямую}\\    0 &\text{,    иначе}\end{cases} \end{equation*}

В этот класс подходов можно также отнести метод быстрого преобразования Хафа (БПХ) [3], который считает суммы вдоль прямых, построенных с использованием сильно ограниченного числа паттернов.

Дискретная прямая трехмерного изображения на основе паттернов БПХ. Адаптировано из [3].
Дискретная прямая трехмерного изображения на основе паттернов БПХ. Адаптировано из [3].

2.“Тонкий луч”. В рамках данного похода направление распространения излучения задается прямой линией, веса вокселям выдаются на основе длины пересечения этой прямой линии с вокселем.

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

3. “Луч конечной ширины”. Это, скорее всего, самый вычислительно сложный подход, который предполагает использование модели лучей конечной ширины для описания распространения рентгеновских квантов. В рамках этого подхода веса вокселям выдаются на основе объемного или площадного пересечения объемного луча с вокселем.

Модель луча конечной ширины.
Модель луча конечной ширины.

Вместо заключения

Рост востребованности Компьютерной Томографии (КТ) как важного инструмента для диагностики в медицине и для обеспечения контроля качества в промышленности обуславливает возникновение новых актуальных задач, которые наша команда Smart Tomo Engine успешно решает. О возможностях разработанной нами программы для томографии детальнее можно узнать тут.

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

Следите за нашими обновлениями на Хабрe и будьте в курсе последних научных разработок в области КТ. До скорой встречи!

Список литературы.
  1. Shepp L. A., Logan B. F. The Fourier reconstruction of a head section //IEEE Transactions on nuclear science. – 1974. – Т. 21. – №. 3. – С. 21-43.

  2.  Farin G. E. Curves and surfaces for CAGD: a practical guide. – Morgan Kaufmann, 2002.

  3. Ершов Е. И., Терехин А. П., Николаев Д. П. Обобщение быстрого преобразования Хафа для трехмерных изображений //Информационные процессы. – 2017. – Т. 17. – №. 4. – С. 294-308.

  4. Piegl L. On NURBS: a survey //IEEE Computer Graphics and Applications. – 1991. – Т. 11. – №. 01. – С. 55-71.

Комментарии (4)


  1. Sdima1357
    02.10.2023 18:10

    Ещё добавьте beam hardening, scatter, afterglow, heel effect и получится что-то похожее на сканер


    1. SmartEngines Автор
      02.10.2023 18:10

      В этой статье мы рассказали исключительно базу моделирования томографических проекций. Про рассеяние, ужесточение пучка и многие другие эффекты нам известно не понаслышке - мы не только успешно их моделируем, но и прекрасно редуцируем артефакты, связанные с ними. К примеру, советуем ознакомиться с нашей статьей про подавление артефактов, вызванных beam hаrdening.  Эту и многие другие наработки мы уже внедрили в наш продукт Smart Tomo Engine


  1. Rustam0
    02.10.2023 18:10

    Интересные расчеты, полезно для ознакомления, но все-таки ждал описания каких-нибуь Ваших нововведений в этой области


    1. SmartEngines Автор
      02.10.2023 18:10

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