I applied
pyapetnet to 5-bed PET/MRI data. It finished successfully using model
190528_paper_bet_10_psf_mlem, but core dump using osem models.Following is the message:
>
Optimization terminated successfully.
> Current
function value: -1.045613
>
Iterations: 1
> Function
evaluations: 42
> terminate
called after throwing an instance of 'std::bad_alloc'
>
what():std::bad_alloc
> Aborted
(core dumped)
After a couple
of test runs, osem models work with 3-bed data. Then the resultant images were
compared:
1. it is a surprise that mlem had no problems in memory use,
but osem led to core dump. Any thought?
2. there are negative voxel values in the resultant images
from mlem model. Is it due to the mismatch of the PET recon method (for my PET
images, osem) and the model (mlem)?
3. It seems that pyapetnet reduces image matrix size by
thresholding/extracting the input images. This leads to different x,y
dimensions in 3- and 5-bed results (see comparison above). Further, half or
more than half of the skull on top of the head was thresholded/removed. I
wonder if there is a remedy/workaround for these? For example, a switch to
choose thresholding value/method. Or a switch to skip the image
thresholding/extracting step, and users have to threshold/extract images before
applying pyapetnet.
<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
Hello,
I applied pyapetnet to 5-bed PET/MRI data. It finished successfully using model 190528_paper_bet_10_psf_mlem, but core dump using osem models. Following is the message:
> Optimization terminated successfully.
> Current function value: -1.045613
> Iterations: 1
> Function evaluations: 42
> terminate called after throwing an instance of 'std::bad_alloc'
> what(): std::bad_alloc
> Aborted (core dumped)
After a couple of test runs, osem models work with 3-bed data. Then the resultant images were compared:
| min | max | avg | std | X,Y, Z | filename -- | -- | -- | -- | -- | -- | -- 1 | 0.0 | 78688.0 | 1323.8 | 4910.4 | 447x230x577 | pyapetnet-psf-bet_bed123.nii 2 | -1445.8 | 110723.0 | 1104.1 | 4254.1 | 479x247x938 | pyapetnet-pdf-mlem_bed12345.niiQuestions:
1. it is a surprise that mlem had no problems in memory use, but osem led to core dump. Any thought?
2. there are negative voxel values in the resultant images from mlem model. Is it due to the mismatch of the PET recon method (for my PET images, osem) and the model (mlem)?
3. It seems that pyapetnet reduces image matrix size by thresholding/extracting the input images. This leads to different x,y dimensions in 3- and 5-bed results (see comparison above). Further, half or more than half of the skull on top of the head was thresholded/removed. I wonder if there is a remedy/workaround for these? For example, a switch to choose thresholding value/method. Or a switch to skip the image thresholding/extracting step, and users have to threshold/extract images before applying pyapetnet.
Thank you.