Я разрабатываю инструмент обратного планирования лучевой терапии, основанный на методе карандашного луча. Важным шагом в этих методах (особенно в расчете дозы) является трассировка лучей из многих источников, и одним из наиболее часто используемых алгоритмов является алгоритм Сиддона (здесь есть хорошее краткое описание http://on-demand.gputechconf.com/gtc/2014/poster/pdf/P4218_CT_reconstruction_iterative_алгебраический.pdf ). Теперь я попытаюсь упростить свой вопрос:
Входные данные — это КТ-изображение (трехмерная матрица со значениями) и некоторые позиции источника вокруг изображения. Вы можете представить себе куб и множество точек вокруг, находящихся на одинаковом расстоянии, но под разными углами ориентации, откуда исходят лучи излучения. Каждый луч проходит через объем, и каждому вокселу присваивается значение в соответствии с расстоянием от источника. Преимущество алгоритма Сиддона в том, что длина рассчитывается вовремя в ходе итеративного процесса трассировки лучей. Однако я знаю, что алгоритм Брезенхэма — эффективный способ оценить путь от одной точки к другой в матрице. Таким образом, длину от источника до конкретного вокселя можно было легко вычислить как евклидово расстояние в две точки даже во время итеративного процесса Брезенхэма.
Итак, зная, что оба метода уже достаточно старые и эффективные, есть определенное преимущество в использовании Сиддона вместо Брезенхэма? Может быть, я упускаю здесь важную деталь, но мне странно, что в этих процедурах расчета дозы Брезенхэм на самом деле не вариант, и всегда Сиддон выступает в качестве золотого стандарта.
Спасибо за любой комментарий или ответ!
Добрый день.