guopengf / ReconFormer

ReconFormer: Accelerated MRI Reconstruction Using Recurrent Transformer
https://arxiv.org/abs/2201.09376
MIT License
57 stars 10 forks source link

About testing data #3

Closed ChongWang1024 closed 1 year ago

ChongWang1024 commented 1 year ago

Hi, thanks for sharing the code and the impressive paper. I am running experiments on the fastMRI singlecoil knee data with 4x acceleration using you pre-trained model.

Could you provide which slices of each scan (referring to the _numslices & _numstart in the _mridata.py) that you use in the test experiments? Since I have run the experiments using all the slices and the PSNR result is very low, only 28dB (3dB higher than zero-filled) instead of 32.73dB in your paper. Please see the details below. image

Many thanks and I look forward to your reply!

guopengf commented 1 year ago

Hi,

We don't exclude slices during inference. It's weird to see such low PSNR. Are you using the provided DataLoader (https://github.com/guopengf/ReconFormer/blob/451761991aca18fb7adf3fd9d5fb95314ccef109/data/mri_data.py#L16) and processed dataset (https://livejohnshopkins-my.sharepoint.com/:f:/g/personal/pguo4_jh_edu/EtXsMeyrJB1Pn-JOjM_UqhUBdY1KPrvs-PwF2fW7gERKIA?e=uuBINy). If not, please make sure that you normalize data in a similar way shown in those lines (https://github.com/guopengf/ReconFormer/blob/451761991aca18fb7adf3fd9d5fb95314ccef109/data/mri_data.py#L136-L138)

ChongWang1024 commented 1 year ago

Hi @guopengf , Thanks for your reply. Yes, I used exactly the same data and code that you provided. I have figured out the problem. The reason is that when I calculate the PSNR, I calculate it on every single slice. While in your original code, you calculate the PSNR of the whole set of slices at the same time. That leads to the difference in _datarange in the PSNR function, thus causing the different PSNR results that I have.

So I just want to make sure is that the common way in the MRI community to calculate the whole set of slices at once instead of calculating on each slice?

Many thanks!

guopengf commented 1 year ago

I'm glad that you figured it out. Yeah, it's common practice that we calculate metrics based on the 3D volume instead of individual slices. The evaluation code is adopted from fastMRI repo (https://github.com/facebookresearch/fastMRI).

ChongWang1024 commented 1 year ago

@guopengf Got it, thanks so much!