Med Physics / BME 573 Mathematical Methods in Medical Physics
Instructor: Diego Hernando, PhD
Offered: Fall Semester
Previous course name (until 2022): Medical Image Science: Mathematical and Conceptual Foundations
This course covers mathematical fundamentals required for medical physics. The first half of the course covers fundamentals of signal analysis with an emphasis on Fourier transforms in one and multiple dimensions. The second half introduces mathematical optimization, with applications in medical imaging and therapy. This is a hands-on course with a combination of theoretical foundations (on the white board) and computational exercises (using a language such as Python or Matlab) on real and simulated datasets. Mathematical concepts are presented in the context of real-world clinical and research challenges.
Below I share the course materials, including lecture notes, Jupiter notebooks, and Google Colab links to directly run these notebooks.
This is an accordion element with a series of buttons that open and close related content panels.
Part I: Multidimensional Signal Analysis
Lecture 0: Introduction / Jupyter notebook (launch on Google Colab)
Lecture 1: Signals in 1D and N-D / Jupyter notebook (launch on Google Colab)
Lecture 2: LSI systems in 1D / Jupyter notebook (launch on Google Colab)
Lecture 3: LSI systems in N-D / Jupyter notebook (launch on Google Colab)
Lecture 4: The Fourier transform / Jupyter notebook (launch on Google Colab)
Lecture 5: Properties of the Fourier transform / Jupyter notebook (launch on Google Colab)
Lecture 6: Fourier transforms in N-D / Jupyter notebook (launch on Google Colab)
Lecture 7: Properties of the Fourier transform in N-D / Jupyter notebook (launch on Google Colab)/ Extra notebook (launch on Google Colab)
Lecture 8: Sampling in 1D / Jupyter notebook (launch on Google Colab)
Lecture 9: Sampling in N-D / Jupyter notebook (launch on Google Colab)
Lecture 10: Recap of LSI, Fourier, and sampling / Jupyter notebook (launch on Google Colab)
Lecture 11: DFT and FFT / Jupyter notebook (launch on Google Colab)
Lecture 12: DFT in multiple dimensions / Jupyter notebook
(launch on Google Colab)
Lecture 13: Properties of the DFT / Jupyter notebook (launch on Google Colab)
Lecture 14: DFT and convolution / Jupyter notebook (launch on Google Colab)
Lecture 15: DFT and image reconstruction / Jupyter notebook (launch on Google Colab)
Lecture 16: Limitations of the DFT. STFT. / Jupyter notebook (launch on Google Colab)
Lecture 17: Intro to wavelets / Jupyter notebook (launch on Google Colab)
Part II: Introduction to Optimization in Imaging and Therapy
Lecture 20: Intro to optimization / Jupyter notebook (launch on Google Colab)
Lecture 21: Review of matrices, vectors, norms, and linear least-squares / Jupyter notebook (launch on Google Colab)
Lecture 22: Constrained optimization / Jupyter notebook (launch on Google Colab)
Lecture 23: Convex optimization (I) / Jupyter notebook (launch on Google Colab)
Lecture 24: Convex optimization (II) / Jupyter notebook (launch on Google Colab)
Lecture 25: Optimality conditions
Lecture 26: Line search algorithms / Jupyter notebook (launch on Google Colab)
Lecture 27: Gradient-based algorithms
Lecture 28: Newton algorithms / Jupyter notebook: Newton (launch on Google Colab) / Jupyter notebook: NLLS, Gauss-Newton (launch on Google Colab)
Lecture 29: Intro to stochastic algorithms
Lecture 30: Intro to image reconstruction
Lecture 31: Direct image reconstruction methods / Jupyter notebook (launch on Google Colab)
Lecture 32: Matrix-vector operations as image-based operations / Jupyter notebook (launch on Google Colab)
Lecture 33: L2-regularized image reconstruction / Jupyter notebook (launch on Google Colab)
Lecture 34: L1-regularized image reconstruction and compressed sensing / Jupyter notebook (launch on Google Colab)
Lecture 35: Intro to optimization in therapy planning
Lecture 36: Optimization for IMRT
Lecture 37: Recap of optimization in imaging and therapy