MRI acceleration using fastMRI dataset with deep learning - tutorial

What is fastMRI?

Facebook, NYU launch fastMRI research collaboration - Facebook Engineering
Facebook and NYU announce fastMRI, a collaborative project to investigate the use of AI to make MRI scans up to 10 times faster.
  • fastMRI는 Facebook AI Research(FAIR)와 NYU Langone Health가 공동으로 진행한 연구 프로젝트의 이름이다.
  • 이 프로젝트의 궁극적인 목표는 AI를 이용하여 MRI의 scan time을 10배 가속화를 시키는데에 있다. (예를 들어, 10초의 scan time만으로도 100초의 scan time만큼의 해상도를 지닌 MR 이미지를 얻을 수 있게끔 하는것.)

Dataset

  • fastMRI dataset은 fastMRI 공식 홈페이지에서 다운받을 수 있다.
    • 두 가지의 MRI scans가 있다.
      • knee MRIs
      • brain(neuro) MRIs
    • Training, validation, 그리고 masked test sets가 있다.

Multi-Coil Track:

  1. {knee,brain}_multicoil_train.tar.gz - multi-coil track을 위한 training 데이터셋이고 다음과 같은 tensors를 포함하는 HDF5 파일들로 이루어져 있다.

    • k-space: Multi-coil k-space data. k-space tensor는 (슬라이스 수, 코일 갯수, height, width)로 이루어져 있음.
    • reconstruction_rss: multi-coil k-space data들의 root-sum-of-squares reconstruction 결과물. reconstruction_rss tensor는 (슬라이스 수, r_height, r_width)로 이루어져 있음. knee image들은 height과 width가 320x320으로 crop 돼있음.
  2. {knee,brain}_multicoil_val.tar.gz - multi-coil track을 위한 validation 데이터셋. 하이퍼파라미터 조절이라 training set augmentation을 위한 용도로 사용 가능. {knee,brain}_multicoil_train.tar.gz와 같은 구성의 HDF5 파일이 있음.

  3. {knee,brain}_multicoil_test.tar.gz

    • k-space: Undersample된 multi-coil k-space. k-space tensor는 (슬라이스 수, 코일 갯수, height, width)로 이루어져 있음
    • mask: Undersampled Cartesian k-space trajectory를 결정. mask tensor에서 element 수는 k-space의 width와 같다.
  4. knee_multicoil_challenge.tar.gz - multi-coil track에 사용되는 test dataset

Single-Coil Track (knee only):

  1. knee_singlecoil_train.tar.gz - single-coil track을 위한 training 데이터셋이고 다음과 같은 tensors를 포함하는 HDF5 파일들로 이루어져 있다.

    • k-space: Emulated single-coil k-space data. k-space tensor는 (슬라이스 수, height, width)로 이루어져 있음.
    • reconstruction_rss: multi-coil k-space data들의 root-sum-of-squares reconstruction 결과물로부터 뽑아낸 emulated single-coil k-space. reconstruction_rss tensor는 (슬라이스 수, 320, 320)로 이루어져 있음.
    • reconstruction_esc: single-coil k-space의 inverse Fourier transform 결과물. reconstruction_esc tensor는 (슬라이스 수, 320, 320)로 이루어져 있음.
  2. knee_singlecoil_val.tar.gz - single-coil track을 위한 validation 데이터셋. 하이퍼파라미터 조절이라 training set augmentation을 위한 용도로 사용 가능. knee_singlecoil_train.tar.gz와 같은 구성의 HDF5 파일이 있음.

  3. {knee,brain}_multicoil_test.tar.gz

    • k-space: Undersample된 single-coil k-space. k-space tensor는 (슬라이스 수, 코일 갯수, height, width)로 이루어져 있음
    • mask: Undersampled Cartesian k-space trajectory를 결정. mask tensor에서 element 수는 k-space의 width와 같다.
  4. knee_singlecoil_challenge.tar.gz - single-coil track에 사용되는 test dataset

Documents

Tutorial

간단한 노트북을 통해 fastMRI 데이터를 읽는 방법과 transformation을 해보자.
faceMRI github clone 후 진행.

facebookresearch/fastMRI
A large-scale dataset of both raw MRI measurements and clinical MRI images - facebookresearch/fastMRI
  • 노트북 구동 환경에 필요한 라이브러리들을 불러오기
  • (참고사항) 기본 구동 환경
    • Ubuntu 20.04
    • Python 3.6
    • CUDA 10.1
    • CUDNN 7.6.5
  • 임의로 {multicoil_train} 폴더에서 brain MRI 데이터 한 장을 불러와 보자.
  • k-space 정보와 reconstruction_rss 정보가 담겨있는 것을 확인할 수 있다.
  • k-space의 데이터 타입과 모양 확인하기
    • complex64
    • shape - (슬라이스 수, 코일 갯수, height, width)
  • 0, 5, 10번째 코일의 k-space plot 하기
  • 0, 5, 10번째 코일의 k-space를 'Inverse Fourier Transform'을 하여 image domain에서 plot
  • 총 20개의, 각각의 코일의 k-space 데이터를 병합하여 하나의 fully-sampled image를 생성 (Root-Sum-of-Squares transform 이용)
  • Fully-sampled image를 4배 가속화 시킨 image 생성