UCL / PETPVC

Partial Volume Correction in PET
Apache License 2.0
51 stars 14 forks source link

Hi, #31

Closed Bahri-M-A closed 6 years ago

Bahri-M-A commented 6 years ago

Hi, I'am trying to use PETPVC and got the following error "➜ test /home/bahri/Documents/Codes/PETPVC-1.2.1/bin/petpvc -i rrnsDHYNE_8c5_23b9_de10_010100-08.nii -m Mask4D.nii -o testpvc.nii --pvc IY -x 6.0 -y 6.0 -z 6.0 Performing iterative Yang... sum in region 1 = 498157 sum in region 2 = 367552 sum in region 3 = 328036 sum in region 4 = 9.61892e+06

[Error] failure applying iY on: rrnsDHYNE_8c5_23b9_de10_010100-08.nii

itk::ExceptionObject (0x3102880) Location: "unknown" File: /home/travis/itk-v4.10.0/Modules/Core/Common/include/itkImageToImageFilter.hxx Line: 250 Description: itk::ERROR: MultiplyImageFilter(0x31187e0): Inputs do not occupy the same physical space! InputImage Origin: [8.6306801e+01, -8.4451797e+01, -1.4744400e+02], InputImage_1 Origin: [8.6306793e+01, -8.4451820e+01, -1.4744368e+02] Tolerance: 1.0000000e-06

bathomas commented 6 years ago

Hi @Bahri-M-A,

This is related to #30. You appear to be using the pre-built binary version. At the moment, there are two options:

  1. Build the toolkit from source and follow my suggestions in #30.
  2. If you are certain they occupy the same space, clone the header from one image to the other. A quick way of doing this would be to use the fslcpgeom application from FSL:
    Usage: fslcpgeom <source> <destination>

    If either you or @rullator would like to add a command line flag to change the tolerance(s), I would be more than happy to accept a PR.

Kind regards,

Ben

Bahri-M-A commented 6 years ago

Hi Ben, Many thanks for your answer. I tried to build the toolkit but unfortunately I got the following error. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% [ 96%] Building CXX object src/CMakeFiles/pvc_make4d.dir/Make4D.cxx.o /home/bahri/Documents/Codes/PETPVC/src/Make4D.cxx:33:41: fatal error: itkLabelGeometryImageFilter.h: No such file or directory compilation terminated. src/CMakeFiles/pvc_make4d.dir/build.make:62: recipe for target 'src/CMakeFiles/pvc_make4d.dir/Make4D.cxx.o' failed make[2]: [src/CMakeFiles/pvc_make4d.dir/Make4D.cxx.o] Error 1 CMakeFiles/Makefile2:686: recipe for target 'src/CMakeFiles/pvc_make4d.dir/all' failed make[1]: [src/CMakeFiles/pvc_make4d.dir/all] Error 2 Makefile:160: recipe for target 'all' failed make: *** [all] Error 2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Best regards, Mohamed

bathomas commented 6 years ago

Hi,

I think you may need to build ITK with the Module_ITKReview switched on.

Ben

Bahri-M-A commented 6 years ago

This module (Module_ITKReview) does not appear in the option list when I run CCMKE (ITK version : InsightToolkit-4.12.2). Mohamed

De: "Ben Thomas" notifications@github.com À: "UCL/PETPVC" PETPVC@noreply.github.com Cc: "m" M.Bahri@ulg.ac.be, "Mention" mention@noreply.github.com Envoyé: Vendredi 15 Décembre 2017 15:59:09 Objet: Re: [UCL/PETPVC] Hi, (#31)

Hi,

I think you may need to build ITK with the Module_ITKReview switched on.

Ben

— You are receiving this because you were mentioned. Reply to this email directly, [ https://github.com/UCL/PETPVC/issues/31#issuecomment-352026409 | view it on GitHub ] , or [ https://github.com/notifications/unsubscribe-auth/ADywsCOJ6_bx7PYOzaxw7f8eHA7R2YyWks5tAok9gaJpZM4RCV4y | mute the thread ] .

bathomas commented 6 years ago

Hi,

Should be under 'advanced' options.

Kind regards,

Ben


From: Bahri-M-A notifications@github.com Sent: Friday, December 15, 2017 3:41:32 PM To: UCL/PETPVC Cc: Thomas, Ben; Comment Subject: Re: [UCL/PETPVC] Hi, (#31)

This module (Module_ITKReview) does not appear in the option list when I run CCMKE (ITK version : InsightToolkit-4.12.2). Mohamed

De: "Ben Thomas" notifications@github.com À: "UCL/PETPVC" PETPVC@noreply.github.com Cc: "m" M.Bahri@ulg.ac.be, "Mention" mention@noreply.github.com Envoyé: Vendredi 15 Décembre 2017 15:59:09 Objet: Re: [UCL/PETPVC] Hi, (#31)

Hi,

I think you may need to build ITK with the Module_ITKReview switched on.

Ben

— You are receiving this because you were mentioned. Reply to this email directly, [ https://github.com/UCL/PETPVC/issues/31#issuecomment-352026409 | view it on GitHub ] , or [ https://github.com/notifications/unsubscribe-auth/ADywsCOJ6_bx7PYOzaxw7f8eHA7R2YyWks5tAok9gaJpZM4RCV4y | mute the thread ] .

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/UCL/PETPVC/issues/31#issuecomment-352036935, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AGX4aeOY3S5Kgg9ye0Rdp0Xtm62vwyerks5tApMrgaJpZM4RCV4y.

Bahri-M-A commented 6 years ago

Hi Ben,

Many thanks for your answer.

Could you tell me where should I add these lines on the RBV.cxx file. Build the petpvc with these lines at the top RBV.cxx does not work.

itk::ImageToImageFilter::SetGlobalDefaultCoordinateTolerance( 1e-2 ) itk::ImageToImageFilter::SetGlobalDefaultDirectionTolerance( 1e-2 )

at the top of [ https://github.com/UCL/PETPVC/blob/06914e685625ed5c4c9469032aa4f1ae142f1eaa/src/RBV.cxx#L54 | RBV.cxx ] .

Best regards,

Mohamed

De: "Ben Thomas" notifications@github.com À: "UCL/PETPVC" PETPVC@noreply.github.com Cc: "m" M.Bahri@ulg.ac.be, "Mention" mention@noreply.github.com Envoyé: Vendredi 15 Décembre 2017 15:59:09 Objet: Re: [UCL/PETPVC] Hi, (#31)

Hi,

I think you may need to build ITK with the Module_ITKReview switched on.

Ben

— You are receiving this because you were mentioned. Reply to this email directly, [ https://github.com/UCL/PETPVC/issues/31#issuecomment-352026409 | view it on GitHub ] , or [ https://github.com/notifications/unsubscribe-auth/ADywsCOJ6_bx7PYOzaxw7f8eHA7R2YyWks5tAok9gaJpZM4RCV4y | mute the thread ] .

bathomas commented 6 years ago

Hi,

Sorry, my mistake. Try inserting:

    itk::ImageToImageFilterCommon::SetGlobalDefaultCoordinateTolerance( 1e-2 );
    itk::ImageToImageFilterCommon::SetGlobalDefaultDirectionTolerance( 1e-2 );

at line 55 of RBV.cxx.

Kind regards,

Ben

Bahri-M-A commented 6 years ago

Hi Ben,

Many thanks for you kind help. I rebuild petpvc with these tow lines in the RBV.cxx file but unfortunately the STC method still not working even after modifying dimension using fslcpgeom.

here is the error %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

➜ testSTC fslcpgeom rnsCRC010_539_1751_de10_010100-18.nii rnscarotid_mask.nii ➜ testSTC ls CRC010 rnscarotid_mask.nii rnsCRC010_539_1751_de10_010100-18.nii ➜ testSTC petpvc -i rnsCRC010_539_1751_de10_010100-18.nii -m rnscarotid_mask.nii -o rnsCRC010_539_1751_de10_010100-18_STC.nii --pvc STC -x 6.0 -y 6.0 -z 6.0 Performing STC...

[Error] failure applying STC on: rnsCRC010_539_1751_de10_010100-18.nii

itk::ExceptionObject (0x2873390) Location: "void itk::ImageToImageFilter<TInputImage, TOutputImage>::VerifyInputInformation() [with TInputImage = itk::Image<float, 3u>; TOutputImage = itk::Image<float, 3u>]" File: /usr/local/include/ITK-4.12/itkImageToImageFilter.hxx Line: 241 Description: itk::ERROR: STCPVCImageFilter(0x227b1c0): Inputs do not occupy the same physical space! InputImage Direction: 9.9854958e-01 -7.5540543e-03 5.3307288e-02 1.8614681e-02 9.7748723e-01 -2.1017187e-01 5.0519536e-02 -2.1085932e-01 -9.7621008e-01 , InputImage_1 Direction: 9.9854963e-01 -7.5501402e-03 5.3306870e-02 1.8610769e-02 9.7748728e-01 -2.1017199e-01 5.0519961e-02 -2.1085924e-01 -9.7621008e-01

Tolerance: 1.0000000e-06

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

All the best,

Mohamed

De: "Ben Thomas" notifications@github.com À: "UCL/PETPVC" PETPVC@noreply.github.com Cc: "m" M.Bahri@ulg.ac.be, "Mention" mention@noreply.github.com Envoyé: Mardi 19 Décembre 2017 19:49:24 Objet: Re: [UCL/PETPVC] Hi, (#31)

Hi,

Sorry, my mistake. Try inserting: itk::ImageToImageFilterCommon::SetGlobalDefaultCoordinateTolerance( 1e-2 ); itk::ImageToImageFilterCommon::SetGlobalDefaultDirectionTolerance( 1e-2 );

at line 55 of RBV.cxx.

Kind regards,

Ben

— You are receiving this because you were mentioned. Reply to this email directly, [ https://github.com/UCL/PETPVC/issues/31#issuecomment-352850932 | view it on GitHub ] , or [ https://github.com/notifications/unsubscribe-auth/ADywsN3V8KP9yp05WNiyWXjM2AR6C86iks5tCAUzgaJpZM4RCV4y | mute the thread ] .

-- Dr. Mohamed Ali Bahri, 1er Logisticien de Recherche, Université de Liège - University of Liège GIGA-Cyclotron Research Centre: In Vivo Imaging, Bât B30, Quartier Agora Allée du six Aout n°8 4000 Liège, Belgium m.bahri@uliege.be Tel : + 32-4-3662304

bathomas commented 6 years ago

Hi,

Try modifying STC.cxx in the same way as RBV.cxx.

Kind regards,

Ben


From: Bahri-M-A notifications@github.com Sent: Friday, December 29, 2017 10:31:42 AM To: UCL/PETPVC Cc: Thomas, Ben; Comment Subject: Re: [UCL/PETPVC] Hi, (#31)

Hi Ben,

Many thanks for you kind help. I rebuild petpvc with these tow lines in the RBV.cxx file but unfortunately the STC method still not working even after modifying dimension using fslcpgeom.

here is the error %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

➜ testSTC fslcpgeom rnsCRC010_539_1751_de10_010100-18.nii rnscarotid_mask.nii ➜ testSTC ls CRC010 rnscarotid_mask.nii rnsCRC010_539_1751_de10_010100-18.nii ➜ testSTC petpvc -i rnsCRC010_539_1751_de10_010100-18.nii -m rnscarotid_mask.nii -o rnsCRC010_539_1751_de10_010100-18_STC.nii --pvc STC -x 6.0 -y 6.0 -z 6.0 Performing STC...

[Error] failure applying STC on: rnsCRC010_539_1751_de10_010100-18.nii

itk::ExceptionObject (0x2873390) Location: "void itk::ImageToImageFilter<TInputImage, TOutputImage>::VerifyInputInformation() [with TInputImage = itk::Image<float, 3u>; TOutputImage = itk::Image<float, 3u>]" File: /usr/local/include/ITK-4.12/itkImageToImageFilter.hxx Line: 241 Description: itk::ERROR: STCPVCImageFilter(0x227b1c0): Inputs do not occupy the same physical space! InputImage Direction: 9.9854958e-01 -7.5540543e-03 5.3307288e-02 1.8614681e-02 9.7748723e-01 -2.1017187e-01 5.0519536e-02 -2.1085932e-01 -9.7621008e-01 , InputImage_1 Direction: 9.9854963e-01 -7.5501402e-03 5.3306870e-02 1.8610769e-02 9.7748728e-01 -2.1017199e-01 5.0519961e-02 -2.1085924e-01 -9.7621008e-01

Tolerance: 1.0000000e-06

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

All the best,

Mohamed

De: "Ben Thomas" notifications@github.com À: "UCL/PETPVC" PETPVC@noreply.github.com Cc: "m" M.Bahri@ulg.ac.be, "Mention" mention@noreply.github.com Envoyé: Mardi 19 Décembre 2017 19:49:24 Objet: Re: [UCL/PETPVC] Hi, (#31)

Hi,

Sorry, my mistake. Try inserting: itk::ImageToImageFilterCommon::SetGlobalDefaultCoordinateTolerance( 1e-2 ); itk::ImageToImageFilterCommon::SetGlobalDefaultDirectionTolerance( 1e-2 );

at line 55 of RBV.cxx.

Kind regards,

Ben

— You are receiving this because you were mentioned. Reply to this email directly, [ https://github.com/UCL/PETPVC/issues/31#issuecomment-352850932 | view it on GitHub ] , or [ https://github.com/notifications/unsubscribe-auth/ADywsN3V8KP9yp05WNiyWXjM2AR6C86iks5tCAUzgaJpZM4RCV4y | mute the thread ] .

-- Dr. Mohamed Ali Bahri, 1er Logisticien de Recherche, Université de Liège - University of Liège GIGA-Cyclotron Research Centre: In Vivo Imaging, Bât B30, Quartier Agora Allée du six Aout n°8 4000 Liège, Belgium m.bahri@uliege.be Tel : + 32-4-3662304

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/UCL/PETPVC/issues/31#issuecomment-354428508, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AGX4afKuJHjUHNciPVbUT4XN-q_CrXcrks5tFL-OgaJpZM4RCV4y.

Bahri-M-A commented 6 years ago

Hi,

Unfortunately, even with that the problem still there. best

➜ testSTC fslcpgeom rnsCRC010_539_1751_de10_01010018.nii rnsCRC010extracted_Carotids.nii ➜ testSTC petpvc -i rnsCRC010_539_1751_de10_01010018.nii -m rnsCRC010extracted_Carotids.nii -o res.nii --pvc STC -x 6.0 -y 6.0 -z 6.0 Performing STC...

[Error] failure applying STC on: rnsCRC010_539_1751_de10_01010018.nii

itk::ExceptionObject (0x34f8800) Location: "void itk::ImageToImageFilter<TInputImage, TOutputImage>::VerifyInputInformation() [with TInputImage = itk::Image<float, 3u>; TOutputImage = itk::Image<float, 3u>]" File: /usr/local/include/ITK-4.12/itkImageToImageFilter.hxx Line: 241 Description: itk::ERROR: STCPVCImageFilter(0x3105650): Inputs do not occupy the same physical space! InputImage Direction: 9.9914988e-01 3.1068118e-03 4.1108007e-02 -2.4589200e-03 9.9987212e-01 -1.5801902e-02 4.1151842e-02 -1.5687388e-02 -9.9902975e-01 , InputImage_1 Direction: 9.9914995e-01 3.0818302e-03 4.1108206e-02 -2.4339387e-03 9.9987219e-01 -1.5801389e-02 4.1151647e-02 -1.5687901e-02 -9.9902975e-01

Tolerance: 1.0000000e-06

De: "Ben Thomas" notifications@github.com À: "UCL/PETPVC" PETPVC@noreply.github.com Cc: "m" M.Bahri@ulg.ac.be, "Mention" mention@noreply.github.com Envoyé: Vendredi 29 Décembre 2017 12:14:30 Objet: Re: [UCL/PETPVC] Hi, (#31)

Hi,

Try modifying STC.cxx in the same way as RBV.cxx.

Kind regards,

Ben


From: Bahri-M-A notifications@github.com Sent: Friday, December 29, 2017 10:31:42 AM To: UCL/PETPVC Cc: Thomas, Ben; Comment Subject: Re: [UCL/PETPVC] Hi, (#31)

Hi Ben,

Many thanks for you kind help. I rebuild petpvc with these tow lines in the RBV.cxx file but unfortunately the STC method still not working even after modifying dimension using fslcpgeom.

here is the error %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

➜ testSTC fslcpgeom rnsCRC010_539_1751_de10_010100-18.nii rnscarotid_mask.nii ➜ testSTC ls CRC010 rnscarotid_mask.nii rnsCRC010_539_1751_de10_010100-18.nii ➜ testSTC petpvc -i rnsCRC010_539_1751_de10_010100-18.nii -m rnscarotid_mask.nii -o rnsCRC010_539_1751_de10_010100-18_STC.nii --pvc STC -x 6.0 -y 6.0 -z 6.0 Performing STC...

[Error] failure applying STC on: rnsCRC010_539_1751_de10_010100-18.nii

itk::ExceptionObject (0x2873390) Location: "void itk::ImageToImageFilter<TInputImage, TOutputImage>::VerifyInputInformation() [with TInputImage = itk::Image<float, 3u>; TOutputImage = itk::Image<float, 3u>]" File: /usr/local/include/ITK-4.12/itkImageToImageFilter.hxx Line: 241 Description: itk::ERROR: STCPVCImageFilter(0x227b1c0): Inputs do not occupy the same physical space! InputImage Direction: 9.9854958e-01 -7.5540543e-03 5.3307288e-02 1.8614681e-02 9.7748723e-01 -2.1017187e-01 5.0519536e-02 -2.1085932e-01 -9.7621008e-01 , InputImage_1 Direction: 9.9854963e-01 -7.5501402e-03 5.3306870e-02 1.8610769e-02 9.7748728e-01 -2.1017199e-01 5.0519961e-02 -2.1085924e-01 -9.7621008e-01

Tolerance: 1.0000000e-06

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

All the best,

Mohamed

De: "Ben Thomas" notifications@github.com À: "UCL/PETPVC" PETPVC@noreply.github.com Cc: "m" M.Bahri@ulg.ac.be, "Mention" mention@noreply.github.com Envoyé: Mardi 19 Décembre 2017 19:49:24 Objet: Re: [UCL/PETPVC] Hi, (#31)

Hi,

Sorry, my mistake. Try inserting: itk::ImageToImageFilterCommon::SetGlobalDefaultCoordinateTolerance( 1e-2 ); itk::ImageToImageFilterCommon::SetGlobalDefaultDirectionTolerance( 1e-2 );

at line 55 of RBV.cxx.

Kind regards,

Ben

— You are receiving this because you were mentioned. Reply to this email directly, [ https://github.com/UCL/PETPVC/issues/31#issuecomment-352850932 | view it on GitHub ] , or [ https://github.com/notifications/unsubscribe-auth/ADywsN3V8KP9yp05WNiyWXjM2AR6C86iks5tCAUzgaJpZM4RCV4y | mute the thread ] .

-- Dr. Mohamed Ali Bahri, 1er Logisticien de Recherche, Université de Liège - University of Liège GIGA-Cyclotron Research Centre: In Vivo Imaging, Bât B30, Quartier Agora Allée du six Aout n°8 4000 Liège, Belgium m.bahri@uliege.be Tel : + 32-4-3662304

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/UCL/PETPVC/issues/31#issuecomment-354428508, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AGX4afKuJHjUHNciPVbUT4XN-q_CrXcrks5tFL-OgaJpZM4RCV4y.

— You are receiving this because you were mentioned. Reply to this email directly, [ https://github.com/UCL/PETPVC/issues/31#issuecomment-354432914 | view it on GitHub ] , or [ https://github.com/notifications/unsubscribe-auth/ADywsJwdDCXfHNgjrn9PBipL6am5i-otks5tFMmVgaJpZM4RCV4y | mute the thread ] .

-- Dr. Mohamed Ali Bahri, 1er Logisticien de Recherche, Université de Liège - University of Liège GIGA-Cyclotron Research Centre: In Vivo Imaging, Bât B30, Quartier Agora Allée du six Aout n°8 4000 Liège, Belgium m.bahri@uliege.be Tel : + 32-4-3662304

bathomas commented 6 years ago

Hi @Bahri-M-A,

I have pushed a modified version of STC to the tolerance-fix branch (link). Can you build this branch of the toolkit and try again? Hopefully you should see the output:

Tolerance is: 0.01

when STC is executed.

Please let me know if this solves your problem.

Kind regards,

Ben

Bahri-M-A commented 6 years ago

Hi Ben,

Many thanks for your kind help! It works now without any problem.

Best regards,

Mohamed

De: "Ben Thomas" notifications@github.com À: "UCL/PETPVC" PETPVC@noreply.github.com Cc: "m" M.Bahri@ulg.ac.be, "Mention" mention@noreply.github.com Envoyé: Jeudi 4 Janvier 2018 13:51:29 Objet: Re: [UCL/PETPVC] Hi, (#31)

Hi [ https://github.com/bahri-m-a | @Bahri-M-A ] ,

I have pushed a modified version of STC to the tolerance-fix branch ( [ https://github.com/UCL/PETPVC/tree/tolerance-fix | link ] ). Can you build this branch of the toolkit and try again? Hopefully you should see the output: Tolerance is: 0.01

when STC is executed.

Please let me know if this solves your problem.

Kind regards,

Ben

— You are receiving this because you were mentioned. Reply to this email directly, [ https://github.com/UCL/PETPVC/issues/31#issuecomment-355274607 | view it on GitHub ] , or [ https://github.com/notifications/unsubscribe-auth/ADywsDm9-gSR_GQM8w82wzSvSGRAe5Zfks5tHMlRgaJpZM4RCV4y | mute the thread ] .

-- Dr. Mohamed Ali Bahri, 1er Logisticien de Recherche, Université de Liège - University of Liège GIGA-Cyclotron Research Centre: In Vivo Imaging, Bât B30, Quartier Agora Allée du six Aout n°8 4000 Liège, Belgium m.bahri@uliege.be Tel : + 32-4-3662304

bathomas commented 6 years ago

Great. I will eventually put this fix in all the methods and create a new release.

Thanks,

Ben