Всем привет!
Дабы внести ясности откуда взялась идея этих букв и картинок, то начнем с того что я обратился к физикам - не завалялось ли у них интересных задачек, в результате они дали мне реальный кейс, ну и соответственно данные, и я надеясь, что мы могли бы долго общаться и получить очень достойный результат.
О задаче
Начнем с небольшого введения - речь пойдет про Ангиографию сосудов. Простая инфа из вики: Ангиография сосудов - класс методов контрастного исследования кровеносных сосудов, используемый в рамках рентгенографических, рентгеноскопических исследований, в компьютерной томографии, магнитно-резонансной томографии, применяемый в гибридной операционной.
Но конкретно тут речь пойдет об ОКТ - А(Оптическая когерентная томография - Ангиография) [Часто ОКТ-А используется в офтальмологии - это про глаза]. Это метод визуализации данных с помощью отраженного назад света, и дальнейшего применения алгоритма SSAPGA. Дабы не засорять формулами, то прочитать подробнее можно здесь.
В целом это обзорная статья и была источником идей. Пробежимся очень быстро, что представляет собой SSAPGA. На вход из ОКТ приходит сигнал, представленный в виде комплексного числа, и применяя формулу(можно посмотреть в статье, указанной выше) на выходе получаем карту движения сосудов, т.е данные ангиографии.
Решение поставленной задачи
На самом деле не так интересна одна такая карта движения сосудов в проекции глубина/ширина получается. На вход приходит трехмерный массив размера [512, 256, 256]. Нужна проекция “вид сверху”, чтобы получить карту движения сосудов.
Алгоритм SSAPGA дает неплохие результаты, но имеет и свои изъяны, такие как шумы, артефакты и т.д, которые мешают определить движение сосудов.
Было принято решение обратиться к нейронным сетям, а конкретнее взять UNet, обучиться на данных, где таргет функция это карты, полученные с помощью SSAPGA, а на входе логарифм амплитуды сигнала [Логарифм стандартная практика для данных с большим разбросом]. На самом деле звучит странно, что взять таргет из алгоритма и обучать на них сеть и в результате ждать другого результата, но все же результат получился неплохой - рассмотрим чуть ниже.
Результаты и вывод
Можем заметить, что шумов стало гораздо меньше, появились новые очертания сосудов, насколько они правдивы сказать тяжело, но результат уже выглядит многообещающим.
А тут наоборот получилось, что модель не смогла распознать широкий сосуд, т.к в обучающем сете его не было.
В заключении хочется сказать, что результат получился неплохим. Модель может игнорировать артефакты и показывать скрытые сосуды, но и имеет также много минусов. К примеру, есть кейсы, когда и алгоритм не может выявить не одного сосуда на карте. Возможно, эта задача и была приоритетной, чтобы выиграть у аналитического алгоритма. Но, к сожалению, задача не нашла поддержки среди других лиц, а в одиночку без сильного погружение в специфику направления тяжело сделать что - то очень крутое.
Комментарии (10)
Mortello
26.07.2022 14:40Насчёт [512, 256, 256] вопрос, третья размерность это 256 шагов поворота на полный круг?
solovievna Автор
26.07.2022 22:30Нее. Это трехмерное изображение как будто - первая компонента - это длина, вторая высота, третья ширина. То что видите черным с белыми пикселями, это высота на ширину - такой получается срез, а уже карты полученные с помощью модели, это результат проекции т.е argmax от трехмерного массива, по второй компоненте.
Tarzan3668
27.07.2022 12:07У вас классическая Unet или своя?
Какой у вас тензор в самом низу, в bootlneck ?
Мы решали задачу с детекцией тропинок на фото с дрона. Сеть должна была игнорировать проложенные тротуары, дорожки и помечать протоптаные. Фото как городские, так и промзоны и лесные массивы. Была сделана обобщенная unet которая из любого изображения проводила данеые через тензор (1,1) с многими пробросами. Причем в понижающие блоки взяты предобученные слою VGG16/19. Важна аугментация
Сеть справлялась очень точно.
Задачи в целом очень похожи!
Daddy_Cool
Антиография сосудов... как рисовать сосуды... пока не начал читать, думал, что это что-то о таком... античном:
Киаф. 550—540 гг. до н. э., Лувр
Exosphere
Когда впервые увидела эту статью, подумала о сообщающихся сосудах. А раз так, позволила себе дополнить заголовок. Думаю, @solovievnaне обидится.
Daddy_Cool
Да, название теперь понятнее, но теперь непонятным выглядит мой коммент! ))))))
OBIEESupport
Так надо сначала статью читать, а потом термины вспоминать. Годная статья, сам не смог решить ее недавно, ковырял по атласу тканей. Так у человека 99000 км сосудов, много не наковыряешь. Есть даже способ сквозь кожной биометрии (а-ля глазное дно).
Exosphere
Я для этого комментарий и написала, чтобы ваш не смотрелся странно :-) Для тех, кто запутается - в первоначальной версии речь шла просто о сосудах. На этом флуд заканчиваем, потому что статья крутая и обсуждение должно быть профессиональным ;-)