cornerstonejs / calculate-suv

Tiny library for calculating Standardized Uptake Value for Nuclear Medicine (i.e. PET, SPECT)
https://cornerstonejs.org
MIT License
20 stars 12 forks source link

The LBM algorithm is incorrect #15

Closed thisKing closed 2 years ago

thisKing commented 2 years ago

image

M is -120 F is -148

I use UNITED IMAGE Manufacturer Software(上海联影) tested

thisKing commented 2 years ago

When I used UNITED IMAGE to test LBM, I found it was not correct. There was an algorithm reference link in the code, and I found that the male and female 120 and 148 in the code were written in reverse with the reference algorithm, so I changed it. The final value is the same as the equipment manufacturer UNITED IMAGE

salimkanoun commented 2 years ago

Interresting, following the EANM recommandation SUL should be calculated using Janmahasatian for LBM computation

LBMM = 9,270 × weight/(6,680 + 216 × BMI)

LBMF = 9,270 × weight/(8,780 + 244 × BMI)

https://link.springer.com/article/10.1007/s00259-014-2961-x

We will probably need two flavor of SUL computation

salimkanoun commented 2 years ago

So the actual computation is following James PE here a paper confirming the actual value are inverted in the code https://ejnmmiphys.springeropen.com/articles/10.1186/s40658-021-00358-7

github-actions[bot] commented 2 years ago

:tada: This issue has been resolved in version 1.0.3 :tada:

The release is available on:

Your semantic-release bot :package::rocket:

swederik commented 2 years ago

Thanks for the report!

pwespi commented 2 years ago

Regarding the different SUV LBM types. This is the link to the DICOM standard: *https://dicom.nema.org/medical/dicom/current/output/chtml/part03/sect_c.8.9.html

So currently SUV LBM is implemented (using James method), but there is also SUV LBMJANMA which would use Janmahasatian method. Something to look into for the future...