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

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

Решение поставленной задачи
На самом деле не так интересна одна такая карта движения сосудов в проекции глубина/ширина получается. На вход приходит трехмерный массив размера [512, 256, 256]. Нужна проекция “вид сверху”, чтобы получить карту движения сосудов.

Алгоритм SSAPGA дает неплохие результаты, но имеет и свои изъяны, такие как шумы, артефакты и т.д, которые мешают определить движение сосудов.
Было принято решение обратиться к нейронным сетям, а конкретнее взять UNet, обучиться на данных, где таргет функция это карты, полученные с помощью SSAPGA, а на входе логарифм амплитуды сигнала [Логарифм стандартная практика для данных с большим разбросом]. На самом деле звучит странно, что взять таргет из алгоритма и обучать на них сеть и в результате ждать другого результата, но все же результат получился неплохой - рассмотрим чуть ниже.

Результаты и вывод


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

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