Initial segmentation for linear registration of myocardial perfusion images
Libraries and command line tools for medical image processing.
Brought to you by:
gerddie,
gertwollny
Hello,
if I understood correctly, both mia-2dmyomilles and mia-2dmyopgt-nonrigid algorithms rely on an initial ICA-based segmentation of a myocardial ROI to run. In case of very noisy images, the ICA may fail, preventing the application of these methods. Is it possible, given the present implementation of these algorithms, to give as initial input a manually traced myocardial ROI in one frame (potentially half way through the sequence), perhaps embedding it into the segment.set files given as input?
Thanks!!
Giacomo
mia-2dmyomilles tries to find the bounding box then crops the images and then works on the small images. You could crop the images manually, with mia-2dimagefilter and a bounding box (x1,y1)-(x2,y2):
and than you can run mia-2dmyomilles with parameter --segscale 0.0. Note, that the [] and <> need to be written (the <...> will soon become superfluous, see [tickets:#79]), the [...] protect the coma in the coordinate list from being interpreted as terminating the value of the parameters start, and the "..." protect the <> from the shell.
mia-2dmyopgt-nonrigid expects the input images to be cropped and already linearly registered - without initial linear registration the method will most likely fail. It is not important how the cropping and initial rigid registration is achieved. With MIA the ICA based segmentation and rigid registration is used, because it is what is available.
Related
Tickets-mia:
#79You can also use mia-2dimagefilterstack to filter all consecutive numbered images at once. This is only a good idea if you want to use the same bounding box on all images (This will be improved [tickets:#103]).
Related
Tickets-mia: #103
Last edit: Gert Wollny 2013-06-07
Thanks a lot for the very helpful hints! Regarding the PGT approach, I've been trying to run it using as input the previously cropped and linearly registered images. With standard settings of mia-2dmyopgt-nonrigid, I get the following error:
minimizer-singlecost-gsl:
mia-2dmyopgt-nonrigid invalid argument: spline:Value '32penalty=[divcurl:weight=20]' not allowed
Any hints on how to solve this? Thanks again!
Could you post the full command line?
Of course! Here's the whole code flow:
(Sequence Cropping (Manual))
mia-2dimagefilterstack -i In/IM-0001-0001.dcm -o Crop/cropped -t dcm "crop:start=[<44,62>],end=[<110,128>]"
(Sets Building)
mia-2dseries2sets Crop/*.dcm -o Crop
(ICA-based Linear Registration)
mia-2dmyomilles -i Crop/segment1.set -V message -o Out_Crop2/registered1.set --transForm affine --segscale 0 --passes 3
(PGT Registration)
mia-2dmyopgt-nonrigid -i Out_Crop2/registered1.set -V message -o Out_Final_PGT/registered1.set
Last edit: Giacomo Tarroni 2013-06-14
That's a Bug in the code [tickets:#116] (missing coma when creating the transform description).
I uploaded the fix to the GIT repository [b3b31a]. If you need Ubuntu packages, tell me and I will prepare them first thing next week.
Additional (related) note: if you get an error:
Then reduce the number of multi-resolution levels (default -l 3) (see also [tickets:#101]).
Related
Commit: [b3b31a]
Tickets-mia:
#101Tickets-mia:
#116Last edit: Gert Wollny 2013-06-14
I'd need the Ubuntu packages I'm afraid.. thanks in advance for the support!
Note, that because of the changed implementation for using PGT the regularization parameter should also be smaller (~1) as given in the Medical Image Analysis article.