Z Brain-wiki
Skocz do: nawigacja, szukaj

Wstęp

Warsztaty z metod obrazowania ultradźwiękowego są autorskim programem[1] obejmującym metody i algorytmy obrazowania USG, budowę i funkcje aparatury USG oraz wprowadzenie do programowania równoległego na procesorach GPU w środowisku OpenCL. Dzięki dofinansowaniu otrzymanemu z Funduszu Innowacji Dydaktycznych UW opracowano materiały oraz zakupiono edukacyjny system ultrasonografu, który umożliwia zbierania surowych sygnałów i testowanie własnych algorytmów przetwarzania sygnałów.

Opis

Ultrasonografia stanowi najpowszechniej stosowaną modalność diagnostyczną we współczesnej medycynie. Kurs ma na celu zapoznanie studentów z szerokim spektrum metod i zastosowań ultradźwięków w diagnostyce medycznej. Metody te obejmują standardowe obrazowanie USG, obrazowanie parametryczne, elastografię, metody oceny przepływu krwi i inne. Zajęcia będą podzielone na część wykładową (ok. 1/3 czasu) i warsztatową (ok. 2/3 czasu).

Zagadnienia części wykładowej:

  1. Ultradźwięki – zagadnienia generacji, propagacji fal ultradźwiękowych, zjawiska falowe.
  2. Zagadnienia tworzenia obrazu USG; metody elektronicznego sterowania i ogniskowania wiązki; metoda beamformingu.
  3. Nowe metody syntetycznej apertury w obrazowaniu; obrazowanie 3D/4D.
  4. Wybrane inne techniki obrazowe (np. elastografia, obrazowanie tłumienia).
  5. Podstawy metod oceny i pomiaru przepływu krwi.
  6. Prezentacja wybranych zastosowań USG i metod dopplerowskich w praktyce medycznej.
  7. Programowanie równoległe, architektura procesorów CPU/GPU, środowiska CUDA/OpenCL, narzędzia.
  8. Budowa i funkcje aparatury USG, zagadnienia zapewnienia jakości, certyfikacji wyrobów.

W części warsztatowej studenci będą zespołowo implementować wybrane metody przetwarzania - m.in. klasyczną rekonstrukcję obrazu, rekonstrukcję w obrazowaniu falą płaską czy obrazowanie prędkości przepływu metodą dopplerowską. Studenci zapoznają się z algorytmami obróbki sygnałów ultradźwiękowych oraz zagadnieniami ich implementacji i optymalizacji. Praca w części warsztatowej odbywać będzie się w grupach (2-3 osoby). Zwieńczeniem kursu będzie realizacja projektów zespołowych. Projekty te będą obejmować implementację własnych algorytmów przetwarzania surowych sygnałów ech ultradźwiękowych w oparciu o samodzielnie zebrane dane z uniwersalnej platformy ultrasonografu. Podstawą uzyskania pozytywnej oceny będzie wykonanie zadań z części warsztatowej oraz zaliczenie projektu (raport lub prezentacja).

Oprogramowanie i konfiguracja do ćwiczeń

Ćwiczenia przygotowane zostały pod język python. Korzystać będziemy z bibliotek:

  1. numpy
  2. scipy
  3. PIL http://www.pythonware.com/products/pil/
  4. PyOpenCL

Ponadto, konieczne jest zainstalowanie SDK OpenCL i sterowników dla posiadanych procesorów lub kart graficznych (np. Intel, AMD, Nvidia) oraz kompilatora (przy pracy na Windowsie prostym rozwiązaniem może być zainstalowanie darmowej wersji Visual Studio [2]). Zaleca się zainstalowanie w pierwszej kolejności kompilatora oraz SDK OpenCL, a dopiero następnie instalowanie biblioteki PyOpenCL do Pythona.

Wykłady

  1. Podstawy fizyczne USG
  2. Metody USG
  3. Aparatura i aplikacje medyczne
  4. Programowanie równoległe procesorów GPU w OpenCL

Ćwiczenia

  1. Klasyczna rekonstrukcja obrazu
  2. Obrazowanie falą płaską i rozbieżną
  3. Obrazowanie prędkości metodą dopplerowską
  4. Obrazowanie prędkości dźwięku
  5. Wstęp do obliczeń równoległych na GPU

Rozwiązania do ćwiczeń

Projekty zaliczeniowe


  1. z inicjatywy dr Marcina Lewandowskiego z Instytutu Podstawowych Problemów Techniki PAN; opracowanie materiałów przy współpracy z Tomaszem Steiferem
  2. https://www.visualstudio.com/pl-pl/visual-studio-homepage-vs.aspx