Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
diploma_0.0.2.pdf
Скачиваний:
19
Добавлен:
27.03.2016
Размер:
1.89 Mб
Скачать

3.2ПО для обработки изображений

3.2.1Общая схема программы

В самом начале, программе будут даны на вход ≈ 10000 дифракционных изображений с разрешением ≈ 400 × 400 . В качестве результата выполнения программы ожидается получить пространственную структуру молекулы в виде трехмерного скалярного поля интенсивностей размером

≈ 200 × 200 × 200 . Программное обеспечение, реализованное в рамках данной работы, выполняет задачи, которые можно явно разделить на семь этапов. Все этапы, схематически отображены на рисунке рис. ??.

Этап 0: Подготовка данных.

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

Этап 1: Оценка корелляций.

На данном этапе для каждой пары исследуемых дифракционных изображений требуется посчитать корреляцию общих дуг для каждого угла схождения , лежащего в диапозоне [ 0, 1], а также для всех углов осевых вращений дифракционных паттернов и , принимающих значения в диапозоне [0, 2 ] независимо друг от друга. Для каждой пары паттернов будут выделены несколько лучших корреляций , соответствующих

{ , , }, кандинатам на правильную ориентацию паттернов друг относительно друга.

Этап 2: Поиск корневой структуры.

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

15

Этап 3: Поиск ориентаций остальных паттернов.

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

Этап 4: Поиск локального минимума методом Монте-Карло.

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

Этап 5: Восстановление структуры в прямом пространстве.

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

Этап 6: Визуализация.

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

16

Рис. 3.1: Пересечение сфер Эрвальда

3.2.2Вычисление общей дуги

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

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

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

. Теперь отметим, что \ = по определению, \ = если отсчитывается от нормали к плоскости а \ = , угол схождения. Теперь рассмотрим три выделенных прямоугольных треуголь-

17

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

= 1 − , тогда как = Далее, во втором треугольнике

= ( /2) = (1 − ) ( /2) И в последнем, третьем треугольнике ( ) = / после правильной подстановки переменных, получим следующее уравнение, определяющее общую дугу в полярных координатах:

= 1 − /2

Дуга изображена красной линией на рисунке рис. для нескольких углов схождения, чтобы продемонстрировать кривизну общей дуги, переходящей из почти линии ( ≈

) через окружность ( ≈ /3)

и коллапсирующей в точку ( ≈ 0). Формула обладает следующими свойствами: начало координат = 0, = 0 всегда является ассимптотическим решением этого уравнения, т.к. представляет из себя центральную точку, общую для всех паттернов. Не считая случаев = 0

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

= /2, и тогда общая дуга становится замкнутой окружностью. В

Рис. 3.2: Общие дуги для некоторых углов

18

случае, когда = 0 (точное наложение сфер Эрвальда) или = (две сферы находятся в касательном положении и имеют лишь общую точку), общая арка становится либо всех сферой, либо вырождается в точку. Эти асимптотические случаи не ассматриваются указанным выше уравнением. Гораздо важнее то, что это уравнение определяет арку в друх рассматриваемых паттернах, и вдоль нее будет исследоваться схожесть распределений. Это выполняется высоконагруженным алгоритмом трехмерного поиска для нахождения углов { , , }, соответствующих максимальной корреляции распределения интенсивности. Несмотря на то, что указанное выше уравнение зависит только лишь от угла схождения , оно предполагает, что азимутальные вращения и уже были применены к двум рассматриваемым паттернам. Эти вращения являются по определению лишь сдвижкой азимутальной координаты . Таким образом полярные координаты общих дуг примут вид ( , − ) и ( , + ) для паттернов и

соответственно. Важно отметить противоположные знаки , связанные с противоположной кривизной двух арок на двух паттернах.

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

19

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]