Алгоритмическая и программная реализация алгоритма преобразования конусных проекций
Описаны основные принципы работы и программная реализация алгоритма преобразования конусных проекций в проекции параллельных веерных слоев. В статье приведены результаты исследования производительности алгоритма при различных вариантах сканирования.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 29.01.2019 |
Размер файла | 57,7 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
УДК 620.179.15:004.421.2
Алгоритмическая и программная реализация алгоритма преобразования конусных проекций
М.В. Синьков, А.И. Закидальский, Е.А. Цыбульская
Институт проблем регистрации информации НАН Украины
ул. Н. Шпака, 2, 03113 Киев, Украина
Описаны принципы работы и программная реализация алгоритма преобразования конусных проекций в проекции параллельных веерных слоев. Приведены результаты исследования производительности алгоритма при различных вариантах сканирования.
Ключевые слова: томографическая реконструкция, алгоритм, объемная реконструкция, конусный пучок, параллельные веерные слои.
алгоритм сканирование программный веерный
В данной статье описаны принципы работы и программная реализация одной из составных частей разработанного алгоритма объемной реконструкции -- преобразования конусных проекций в проекции параллельных веерных слоев. Этот метод позволяет повысить эффективность реконструкции за счет уменьшения вычислений при свертке и упрощения обратного проецирования.
Математические основы алгоритма были описаны в [1]. Приведем их основные понятия. Суть метода преобразования конусных проекций в проекции параллельных веерных слоев заключается в следующем. Пусть имеется расходящийся пучок прямых на плоскости. Вдоль каждой прямой внутри ограниченного пространства определено значение интеграла. Это дает возможность приближенно определить среднее значение функции внутри данного ограниченного пространства. Применив соответствующий численный метод интегрирования, можно определить искомое значение интеграла вдоль заданного направления.
Рассмотрим следующие условия:
-- расстояние источник-центр вращения объекта равно R;
-- цилиндрический детектор обеспечивает сбор проекционных данных в угловом секторе 2max;
-- число детекторов по равно Ndg;
-- число детекторов по оси z равно Ndz.
-- предусмотрены три варианта охвата объекта системой сбора данных: 50 %, > 50 %, 100 % [2].
Интеграл линейного ослабления в i-м параллельном слое будет равен [1]:
(1)
или , (2)
где i -- номер параллельного слоя;
i = - imax … imax, imax = (Ndz - 1)(1-sin(2max))/2;
j -- номер детектора по координате z;
jmin - jmax -- диапазон номеров детекторов, формирующих p(i):
(3)
ps(j) -- составляющие конусной проекции;
j = jmin ... jmax;
k -- угловой шаг по детекторам k = 2max /(Ndg - 1).
Практическая реализация метода интегрирования по заданному направлению заключается в определении весовых коэффициентов для интегралов вдоль прямых внутри ограниченного пространства. Для преобразования проекционных данных конусного пучка в данные параллельных слоев веерного типа достаточно получить значения весовых коэффициентов преобразования веерного пучка в параллельные лучи.
Численные значения весовых коэффициентов зависят от выбора представления функции ps(j) суммой интерполирующих множителей [1]. Будем использовать линейную интерполяцию как наиболее эффективную в вычислительном плане.
Весовой коэффициент w(i, j0) можно представить в виде суммы двух составляющих: левой (wj0l) и правой (wj0r):
w(i, j0) = wj0l + wj0r,
где , (4)
. (5)
Масштабный коэффициент m вычисляется по формуле:
. (6)
Значения jmin и jmax определены в (3).
Приведем блок-схему алгоритма, реализующего преобразование конусных проекций в параллельные веерные слои.
Опишем подробнее содержание каждого из шагов алгоритма.
Шаг 1. Количество ракурсов задается при установке параметров [3] томографической системы и определяет количество полученных проекций.
Шаг 2. Читается массив чисел с плавающей запятой длиной (Ndg*2-1)*N_z*4 байт, которые представляют собой данные одной конусной проекции.
Шаг 3. изменяется от -max до max. При этом учитывается охват объекта детекторной системой: 50 %, >50 %, 100 %.
Шаг 4. Z изменяется от 0 до (Ndz - 1)/2.
Шаг 5. Вычисляется сумма по значениям на детекторах для каждого угла :
. (7)
Шаг 6. Данные центрального слоя конусной проекции ps(0) не изменяются. Ближайшие к нему слои p(-1) и p(1) вычисляются при помощи коэффициентов (9)-(12) следующим образом:
,(8)
,
где k = -Ndg,…, Ndg.
Коэффициент mgk вычисляется с учетом типа охвата объекта системой сбора данных. При 50 % охвате объекта:
(9)
При >50 % охвате объекта:
. (10)
При 100 % охвате объекта:
(11)
(12)
Шаг 7. Рассчитываются проекции параллельных веерных слоев p(-2) -
- p(-imax) и p(2) - p(imax). Расчет производится таким образом:
(13)
где p1 = psk(Untki.jn)Untki.wоnl,
p2 = psk(Untki.jn + 1)Untki.wjnr,
p3 = psk(Untki.jt)Untki.wjtl,
p4 = psk(Untki.jt + 1)Untki.wjtr.
Коэффициент Untki представляет собой двумерный массив структур, содержащих следующие значения:
(14)
0 k < Ndg,
2 i imax.
Так как коэффициенты mgk, wgk, Untki не зависят от проекционных данных, их вычисление производится при установке параметров томографической системы [3], и далее они хранятся в оперативной памяти и используются до окончания работы.
Шаг 8. В выходной файл записывается массив чисел с плавающей запятой длиной (Ndg*2 - 1)*Nz*4 байт, которые представляют собой данные одной проекции параллельных веерных слоев.
Тестирование алгоритма пересчета конусных проекций в проекции параллельных веерных слоев проводились на компьютере Intel P-IV 2,2 Гц. Получены следующие временные характеристики.
№ |
Размер объекта (точек) |
Охват объекта регистрирующей системой |
Число ракурсов |
Время пересчета в параллельные слои |
|
1. |
301Ч301Ч120 |
100 % |
800 |
12 сек |
|
2. |
301Ч301Ч120 |
50 % |
800 |
11 сек |
|
3. |
301Ч301Ч120 |
60 % |
800 |
11 сек |
Результаты показывают, что пересчет конусных проекций в проекции параллельных веерных слоев выполняется за относительно небольшое время (приблизительно 5 % от общего времени реконструкции) и позволяет использовать высокопроизводительный алгоритм объемной реконструкции, основанный на двумерном обратном проецировании.
Литература
1. Закидальский А.И., Цыбульская Е.А. Преобразование конусного пучка в квазипараллельные слои веерного типа для повышения производительности реконструкции томографических изображений // Реєстрація, зберігання і оброб. даних. -- 2004. -- Т. 6, № 2. -- С. 27-32.
2. Синьков М.В., Закидальский А.И., Самбыкина Э.Е., Цыбульская Е.А. Разработка алгоритмов объемной реконструкции «больших» объектов // Реєстрація, зберігання і оброб. даних. -- 2003. -- Т. 5, № 4. -- С. 43-50.
3. Цыбульская Е.А. Моделирование высокопроизводительного томографического алгоритма реконструкции промышленных объектов // Реєстрація, зберігання і оброб. даних. -- 2005. -- Т. 7, № 4. -- С. 54-57.
Поступила в редакцию 01.03.2006
Размещено на Allbest.ru
...Подобные документы
Теоретическое исследование вопроса и практическое применение. Общие сведения о графах. Алгоритм Дейкстры. Особенности работы в среде. Программная реализация. Описание алгоритма и структуры программы. Описание программных средств. Текст программы.
курсовая работа [1,0 M], добавлен 27.11.2007Исследование симметричных алгоритмов блочного шифрования. Минусы и плюсы алгоритма IDEA. Разработка программы аутентификации пользователя и сообщений на основе алгоритма IDEA. Выбор языка программирования. Тестирование и реализация программного средства.
курсовая работа [314,2 K], добавлен 27.01.2015Шифрование как способ преобразования открытой информации в закрытую и обратно, его основные этапы и назначение, сферы практического применения и оценка преимуществ. История AES, его описание и вспомогательные процедуры, а также программная реализация.
курсовая работа [994,9 K], добавлен 12.04.2012Особенности метода неопределенных множителей Лагранжа, градиентного метода и метода перебора и динамического программирования. Конструирование алгоритма решения задачи. Структурная схема алгоритма сценария диалога и описание его программной реализации.
курсовая работа [1010,4 K], добавлен 10.08.2014Симметричные криптосистемы; алгоритмы шифрования и дешифрования данных, их применение в компьютерной технике в системах защиты конфиденциальной и коммерческой информации. Основные режимы работы алгоритма DES, разработка программной реализации ключа.
курсовая работа [129,6 K], добавлен 17.02.2011Разработка программы учета занятости компьютеров в лаборатории. Анализ требований, метод решения. Разработка алгоритма в виде структурных схем. Программная реализация в среде Borland Delphi. Минимальные системные требования для ее корректной работы.
дипломная работа [6,3 M], добавлен 10.06.2013Разработка алгоритма фильтрации данных, полученных с систем спутниковой навигации с помощью GNSS-модуля. Анализ работы фильтра Калмана, его программная реализация под конкретную задачу. Выбор навигационных модулей для получения данных позиционирования.
дипломная работа [3,6 M], добавлен 12.01.2016Алгоритмы получения реалистических изображений. Применение алгоритма обратной трассировки лучей, ее математическая основа. Составление матрицы и программная реализация. Формирование отраженного и преломленного луча. Модульная структура программы.
курсовая работа [219,3 K], добавлен 24.06.2009Создание программы, автоматизирующей расчет коэффициента ритмичности продукции с использованием электронных таблиц средствами языка программирования Си. Консолидация данных в MSExcel. Программная реализация алгоритма. Тестирование разработанного ПО.
курсовая работа [3,0 M], добавлен 07.06.2014Исследование вертикальных проекций яркости и размаха яркости. Программная реализация алгоритма автоматического анализа цифровых изображений номерных знаков с целью сегментации цифробуквенных символов. Разработка графического пользовательского интерфейса.
дипломная работа [1,5 M], добавлен 12.04.2013Виды социальных медиа. Критерии эффективности продвижения аккаунта в социальных сетях. Программная реализация алгоритма моделирования распространения информации в социальной сети "Twitter". Разработка клиентского приложения. Апробация интерфейса системы.
дипломная работа [5,4 M], добавлен 08.02.2016Оценка погрешности и точности в математике. Составление программы и алгоритма для численного дифференцирования с заданной допустимой погрешностью на алгоритмическом языке Turbo Pascal 7.0. Составление алгоритма и программы аппроксимации функции.
курсовая работа [810,6 K], добавлен 24.03.2012Получение вейвлетов Габора из представления путем его поворота и растяжения для известного числа масштабов и ориентаций. Описание процедуры pullback. Детектор края, реализация алгоритма. Генерация представления изображения с помощью вейвлетов Габора.
курсовая работа [1021,4 K], добавлен 29.10.2017Теоретические основы разработки web-сайтов, язык размeтки HTML, язык сцeнариeв JavaScript, web-прoграммирoваниe. Программная реализация вэб-сайта Всеволожского исполнительного комитета партии "Единая Россия", программная реализация алгоритма работы.
дипломная работа [2,9 M], добавлен 21.01.2012Выполнение арифметических операций, этапы решения задач с помощью ЭВМ - постановка задачи, составление алгоритма решения, программная реализация алгоритма в среде Qbasic. Решение систем линейных уравнений по формулам Крамера. Графический режим Qbasic.
курсовая работа [101,7 K], добавлен 29.09.2009Программная реализация алгоритма составления каталога товаров из сети электронных магазинов с выявлением одинаковых, используя сравнение по изображениям. SURF-метод в основе алгоритма: поиск особых точек на изображении и составление их дескрипторов.
дипломная работа [3,1 M], добавлен 27.06.2012Разработка алгоритма реализации на ЭВМ процесса поиска кратчайшего пути в графе методом Дейкстры. Программная реализация алгоритма поиска кратчайшего пути между двумя любыми вершинами графа. Проверка работоспособности программы на тестовых примерах.
реферат [929,8 K], добавлен 23.09.2013Обзор разнообразных методов теории линейных систем: методов корреляционного и регрессионного анализа, косинор-анализа. Особенности применения факторного анализа. Программная реализация метода главных компонент. Разработка нелинейных регрессионных моделей.
дипломная работа [390,2 K], добавлен 03.09.2016История возникновения алгоритма симметричного шифрования, условия и особенности его применения на современном этапе. Принципы и функции исследуемой технологии. Анализ главных преимуществ и недостатков использования алгоритма, оценка его уязвимости.
курсовая работа [301,9 K], добавлен 29.10.2017Первое систематическое изучение искусственных нейронных сетей. Описание элементарного перцептрона. Программная реализация модели распознавания графических образов на основе перцептрона. Интерфейс программы, основные окна. Составление алгоритма приложения.
реферат [100,5 K], добавлен 18.01.2014