From vl at xris.eu Tue Feb 11 09:41:55 2020 From: vl at xris.eu (vincent) Date: Tue, 11 Feb 2020 15:41:55 +0100 Subject: [Rtk-users] Blurred piece-wise reconstruction Message-ID: Hello RTK community, I am afraid that my question might not be directly related to the excellent implementation we are all using, but it might still be interesting for some of you. I have a stack of 1500 projections of size 2048*2048.? I obviously can't reconstruct the full resolution volume on my graphics card, as it is too big.? So my solution was to split the sinogram into N parts, for which each reconstructed volume would fit in my GPU memory and then reassemble them.? I did a test with a 700*820*900 sinogram, that I cut in two parts of 700*410(+a small overlap)*900. While the reconstruction of the whole volume was acceptable, I got a weird issue with the split ones: the one corresponding to the top of the image is also ok, but the bottom one is very blurry.? The three images can be found at the following links: https://ibb.co/vLk9ZhQ https://ibb.co/m4pm0LT https://ibb.co/Jyf1yKM I used the same calibration parameters for the three reconstruction.? I visually checked the split sinograms and they looked fine. Any insight will be much appreciated ! Thanks in advance, kindest regards, Vincent From simon.rit at creatis.insa-lyon.fr Tue Feb 11 11:29:45 2020 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Tue, 11 Feb 2020 17:29:45 +0100 Subject: [Rtk-users] ITK backward compatibility Message-ID: Dear RTK users, It has been quite difficult to maintain backward compatibility with old ITK versions and the RTK consortium has agreed on a change of policy. As of today, we will only maintain backward compatibility with the latest ITK release in addition to maintaining compatibility with ITK's master branch. See commit 9ec2d8 implementing this, INSTALLATION.md describes this new policy. I will try to update the RTK.remote.cmake file before the next ITK release so that the RTK tag in the release is functional. Best regards, Simon -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Tue Feb 11 11:36:01 2020 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Tue, 11 Feb 2020 17:36:01 +0100 Subject: [Rtk-users] Blurred piece-wise reconstruction In-Reply-To: References: Message-ID: Hi Vincent, There is a way to do such a thing in rtkfdk with the --divisions option, see code here . I also don't really understand either what's going on in your bottom reconstruction, it seems to be a geometric problem. Have you checked an axial slice? Simon On Tue, Feb 11, 2020 at 4:21 PM vincent wrote: > Hello RTK community, > > I am afraid that my question might not be directly related to the > excellent implementation we are all using, but it might still be > interesting for some of you. > > I have a stack of 1500 projections of size 2048*2048. I obviously can't > reconstruct the full resolution volume on my graphics card, as it is too > big. So my solution was to split the sinogram into N parts, for which > each reconstructed volume would fit in my GPU memory and then reassemble > them. I did a test with a 700*820*900 sinogram, that I cut in two parts > of 700*410(+a small overlap)*900. > > While the reconstruction of the whole volume was acceptable, I got a > weird issue with the split ones: the one corresponding to the top of the > image is also ok, but the bottom one is very blurry. The three images > can be found at the following links: > > https://ibb.co/vLk9ZhQ > https://ibb.co/m4pm0LT > https://ibb.co/Jyf1yKM > > I used the same calibration parameters for the three reconstruction. I > visually checked the split sinograms and they looked fine. > > > Any insight will be much appreciated ! > > > Thanks in advance, > > kindest regards, > > Vincent > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > https://public.kitware.com/mailman/listinfo/rtk-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From vl at xris.eu Tue Feb 11 12:58:07 2020 From: vl at xris.eu (vincent) Date: Tue, 11 Feb 2020 18:58:07 +0100 Subject: [Rtk-users] Blurred piece-wise reconstruction In-Reply-To: References: Message-ID: Hi Simon, thank you very much for the quick reply. I have some leads about my problem, I'll post the solution if I find it.? In the meantime, I tested the division option that went under my radar, I am afraid. I am certainly doing something wrong or not understanding the mechanism of that option.? From what I understood from the code, the streamer will split the volume to be reconstructed in subset along the y axis, which is indeed exactly what I am looking for.? When I tried to use it, however, I got an error message, hereafter reproduced: itk::MemoryAllocationError (0x7fbb04000940) Location: "unknown" File: /home/vincent/IPTools/InsightToolkit-5.0.1/Modules/Core/Common/include/itkImportImageContainer.hxx Line: 199 Description: Failed to allocate memory for image. The command line I used was rtkfdk -p . -r projections.mhd --hardware cuda -o reconstruction.mhd -g rt900.xml --spacing 0.23 --dimension 2000 --divisions 4 I am using a NVIDIA GEForce-GTX 1080 TI with 11 Go of RAM and able to reconstruct a 1024*1024*1024 volume. Could you please help me finding what I did wrong ? Thank you again for your invaluable help, kindest regards, Vincent On 11.02.20 17:36, Simon Rit wrote: > Hi Vincent, > There is a way to do such a thing in rtkfdk with the --divisions > option, see code here > . > > I also don't really understand either what's going on in your bottom > reconstruction, it seems to be a geometric problem. Have you checked > an axial slice? > Simon > > On Tue, Feb 11, 2020 at 4:21 PM vincent > wrote: > > Hello RTK community, > > I am afraid that my question might not be directly related to the > excellent implementation we are all using, but it might still be > interesting for some of you. > > I have a stack of 1500 projections of size 2048*2048.? I obviously > can't > reconstruct the full resolution volume on my graphics card, as it > is too > big.? So my solution was to split the sinogram into N parts, for > which > each reconstructed volume would fit in my GPU memory and then > reassemble > them.? I did a test with a 700*820*900 sinogram, that I cut in two > parts > of 700*410(+a small overlap)*900. > > While the reconstruction of the whole volume was acceptable, I got a > weird issue with the split ones: the one corresponding to the top > of the > image is also ok, but the bottom one is very blurry.? The three > images > can be found at the following links: > > https://ibb.co/vLk9ZhQ > https://ibb.co/m4pm0LT > https://ibb.co/Jyf1yKM > > I used the same calibration parameters for the three > reconstruction.? I > visually checked the split sinograms and they looked fine. > > > Any insight will be much appreciated ! > > > Thanks in advance, > > kindest regards, > > Vincent > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > https://public.kitware.com/mailman/listinfo/rtk-users > -------------- next part -------------- An HTML attachment was scrubbed... URL: From vl at xris.eu Tue Feb 11 13:11:27 2020 From: vl at xris.eu (vincent) Date: Tue, 11 Feb 2020 19:11:27 +0100 Subject: [Rtk-users] Blurred piece-wise reconstruction In-Reply-To: References: Message-ID: Hi Simon, I am afraid I forgot to mention something in my last email.? I tried to use the lowmem option, as you suggested a while ago in the list for the same problem, but I am afraid I am still getting the same error. kind regards, Vincent On 11.02.20 17:36, Simon Rit wrote: > Hi Vincent, > There is a way to do such a thing in rtkfdk with the --divisions > option, see code here > . > > I also don't really understand either what's going on in your bottom > reconstruction, it seems to be a geometric problem. Have you checked > an axial slice? > Simon > > On Tue, Feb 11, 2020 at 4:21 PM vincent > wrote: > > Hello RTK community, > > I am afraid that my question might not be directly related to the > excellent implementation we are all using, but it might still be > interesting for some of you. > > I have a stack of 1500 projections of size 2048*2048.? I obviously > can't > reconstruct the full resolution volume on my graphics card, as it > is too > big.? So my solution was to split the sinogram into N parts, for > which > each reconstructed volume would fit in my GPU memory and then > reassemble > them.? I did a test with a 700*820*900 sinogram, that I cut in two > parts > of 700*410(+a small overlap)*900. > > While the reconstruction of the whole volume was acceptable, I got a > weird issue with the split ones: the one corresponding to the top > of the > image is also ok, but the bottom one is very blurry.? The three > images > can be found at the following links: > > https://ibb.co/vLk9ZhQ > https://ibb.co/m4pm0LT > https://ibb.co/Jyf1yKM > > I used the same calibration parameters for the three > reconstruction.? I > visually checked the split sinograms and they looked fine. > > > Any insight will be much appreciated ! > > > Thanks in advance, > > kindest regards, > > Vincent > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > https://public.kitware.com/mailman/listinfo/rtk-users > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Tue Feb 11 14:08:48 2020 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Tue, 11 Feb 2020 20:08:48 +0100 Subject: [Rtk-users] Blurred piece-wise reconstruction In-Reply-To: References: Message-ID: Have you tried the combination of both? To be clear, --divisions acts on the reconstructed volume so it should be ~7 Go with the "--divisions 4" option (instead of 2000*2000*2000*4/1024/1024/1024=29.8 Go otherwise). The --lowmem option acts on the projections and you have 250 Mo (instead of 2048*2048*1500*4/1024/1024/1024=23.4 Go otherwise). The message "Failed to allocate memory for image" seems to be a CPU memory issue. Are you sure you have about 10 Go available to run this reconstruction? On Tue, Feb 11, 2020 at 7:31 PM vincent wrote: > Hi Simon, > > I am afraid I forgot to mention something in my last email. I tried to > use the lowmem option, as you suggested a while ago in the list for the > same problem, but I am afraid I am still getting the same error. > > kind regards, > > Vincent > On 11.02.20 17:36, Simon Rit wrote: > > Hi Vincent, > There is a way to do such a thing in rtkfdk with the --divisions option, > see code here > . > > I also don't really understand either what's going on in your bottom > reconstruction, it seems to be a geometric problem. Have you checked an > axial slice? > Simon > > On Tue, Feb 11, 2020 at 4:21 PM vincent wrote: > >> Hello RTK community, >> >> I am afraid that my question might not be directly related to the >> excellent implementation we are all using, but it might still be >> interesting for some of you. >> >> I have a stack of 1500 projections of size 2048*2048. I obviously can't >> reconstruct the full resolution volume on my graphics card, as it is too >> big. So my solution was to split the sinogram into N parts, for which >> each reconstructed volume would fit in my GPU memory and then reassemble >> them. I did a test with a 700*820*900 sinogram, that I cut in two parts >> of 700*410(+a small overlap)*900. >> >> While the reconstruction of the whole volume was acceptable, I got a >> weird issue with the split ones: the one corresponding to the top of the >> image is also ok, but the bottom one is very blurry. The three images >> can be found at the following links: >> >> https://ibb.co/vLk9ZhQ >> https://ibb.co/m4pm0LT >> https://ibb.co/Jyf1yKM >> >> I used the same calibration parameters for the three reconstruction. I >> visually checked the split sinograms and they looked fine. >> >> >> Any insight will be much appreciated ! >> >> >> Thanks in advance, >> >> kindest regards, >> >> Vincent >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> https://public.kitware.com/mailman/listinfo/rtk-users >> >> _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > https://public.kitware.com/mailman/listinfo/rtk-users > -------------- next part -------------- An HTML attachment was scrubbed... URL: From vl at xris.eu Tue Feb 11 14:30:15 2020 From: vl at xris.eu (vincent) Date: Tue, 11 Feb 2020 20:30:15 +0100 Subject: [Rtk-users] Blurred piece-wise reconstruction In-Reply-To: References: Message-ID: Hi Simon, yes, I used both in my command line.? I have 64 Go RAM on the machine, so that shouldn't be the issue.? For the sake of completeness, I also tried the subset option in combination with the divisions option, going as low as 1, but to no avail. I'll investigate further tomorrow. Thank you again for your help, Vincent On 2020-02-11 8:08 p.m., Simon Rit wrote: > Have you tried the combination of both? To be clear, --divisions acts > on the reconstructed volume so it should be ~7 Go with the > "--divisions 4" option (instead of > 2000*2000*2000*4/1024/1024/1024=29.8 Go otherwise). > The --lowmem option acts on the projections and you have 250 Mo > (instead of 2048*2048*1500*4/1024/1024/1024=23.4 Go otherwise). > The message "Failed to allocate memory for image" seems to be a CPU > memory issue. Are you sure you have about 10 Go available to run this > reconstruction? > > On Tue, Feb 11, 2020 at 7:31 PM vincent > wrote: > > Hi Simon, > > I am afraid I forgot to mention something in my last email.? I > tried to use the lowmem option, as you suggested a while ago in > the list for the same problem, but I am afraid I am still getting > the same error. > > kind regards, > > Vincent > > On 11.02.20 17:36, Simon Rit wrote: >> Hi Vincent, >> There is a way to do such a thing in rtkfdk with the --divisions >> option, see code here >> . >> >> I also don't really understand either what's going on in your >> bottom reconstruction, it seems to be a geometric problem. Have >> you checked an axial slice? >> Simon >> >> On Tue, Feb 11, 2020 at 4:21 PM vincent > > wrote: >> >> Hello RTK community, >> >> I am afraid that my question might not be directly related to >> the >> excellent implementation we are all using, but it might still be >> interesting for some of you. >> >> I have a stack of 1500 projections of size 2048*2048. I >> obviously can't >> reconstruct the full resolution volume on my graphics card, >> as it is too >> big.? So my solution was to split the sinogram into N parts, >> for which >> each reconstructed volume would fit in my GPU memory and then >> reassemble >> them.? I did a test with a 700*820*900 sinogram, that I cut >> in two parts >> of 700*410(+a small overlap)*900. >> >> While the reconstruction of the whole volume was acceptable, >> I got a >> weird issue with the split ones: the one corresponding to the >> top of the >> image is also ok, but the bottom one is very blurry. The >> three images >> can be found at the following links: >> >> https://ibb.co/vLk9ZhQ >> https://ibb.co/m4pm0LT >> https://ibb.co/Jyf1yKM >> >> I used the same calibration parameters for the three >> reconstruction.? I >> visually checked the split sinograms and they looked fine. >> >> >> Any insight will be much appreciated ! >> >> >> Thanks in advance, >> >> kindest regards, >> >> Vincent >> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> >> https://public.kitware.com/mailman/listinfo/rtk-users >> > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > https://public.kitware.com/mailman/listinfo/rtk-users > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Wed Feb 12 03:27:58 2020 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Wed, 12 Feb 2020 09:27:58 +0100 Subject: [Rtk-users] Blurred piece-wise reconstruction In-Reply-To: References: Message-ID: Actually, the way I have implemented the streaming, it still allocates the 30Go complete volume and compute it piece by piece. One thing you could try is to remove the streamerBP object, connect directly the reconstruction to the writer "writer->SetInput(pfeldkamp->GetOutput());" and set the streaming in the writer "writer->SetNumberOfStreamDivisions(args_info.divisions_arg);". Then it never allocates the whole volume in memory. If that works for you, I think you can open a PR on github with this change, that makes a lot more sense in my opinion. On Tue, Feb 11, 2020 at 8:46 PM vincent wrote: > Hi Simon, > > yes, I used both in my command line. I have 64 Go RAM on the machine, so > that shouldn't be the issue. For the sake of completeness, I also tried > the subset option in combination with the divisions option, going as low as > 1, but to no avail. > > I'll investigate further tomorrow. > > Thank you again for your help, > > Vincent > On 2020-02-11 8:08 p.m., Simon Rit wrote: > > Have you tried the combination of both? To be clear, --divisions acts on > the reconstructed volume so it should be ~7 Go with the "--divisions 4" > option (instead of 2000*2000*2000*4/1024/1024/1024=29.8 Go otherwise). > The --lowmem option acts on the projections and you have 250 Mo (instead > of 2048*2048*1500*4/1024/1024/1024=23.4 Go otherwise). > The message "Failed to allocate memory for image" seems to be a CPU memory > issue. Are you sure you have about 10 Go available to run this > reconstruction? > > On Tue, Feb 11, 2020 at 7:31 PM vincent wrote: > >> Hi Simon, >> >> I am afraid I forgot to mention something in my last email. I tried to >> use the lowmem option, as you suggested a while ago in the list for the >> same problem, but I am afraid I am still getting the same error. >> >> kind regards, >> >> Vincent >> On 11.02.20 17:36, Simon Rit wrote: >> >> Hi Vincent, >> There is a way to do such a thing in rtkfdk with the --divisions option, >> see code here >> . >> >> I also don't really understand either what's going on in your bottom >> reconstruction, it seems to be a geometric problem. Have you checked an >> axial slice? >> Simon >> >> On Tue, Feb 11, 2020 at 4:21 PM vincent wrote: >> >>> Hello RTK community, >>> >>> I am afraid that my question might not be directly related to the >>> excellent implementation we are all using, but it might still be >>> interesting for some of you. >>> >>> I have a stack of 1500 projections of size 2048*2048. I obviously can't >>> reconstruct the full resolution volume on my graphics card, as it is too >>> big. So my solution was to split the sinogram into N parts, for which >>> each reconstructed volume would fit in my GPU memory and then reassemble >>> them. I did a test with a 700*820*900 sinogram, that I cut in two parts >>> of 700*410(+a small overlap)*900. >>> >>> While the reconstruction of the whole volume was acceptable, I got a >>> weird issue with the split ones: the one corresponding to the top of the >>> image is also ok, but the bottom one is very blurry. The three images >>> can be found at the following links: >>> >>> https://ibb.co/vLk9ZhQ >>> https://ibb.co/m4pm0LT >>> https://ibb.co/Jyf1yKM >>> >>> I used the same calibration parameters for the three reconstruction. I >>> visually checked the split sinograms and they looked fine. >>> >>> >>> Any insight will be much appreciated ! >>> >>> >>> Thanks in advance, >>> >>> kindest regards, >>> >>> Vincent >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> https://public.kitware.com/mailman/listinfo/rtk-users >>> >>> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> https://public.kitware.com/mailman/listinfo/rtk-users >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Wed Feb 12 07:20:21 2020 From: wuchao04 at gmail.com (Chao Wu) Date: Wed, 12 Feb 2020 13:20:21 +0100 Subject: [Rtk-users] Blurred piece-wise reconstruction In-Reply-To: References: Message-ID: But streamerBP uses CPUOutputImageType so the 30Go is allocated on RAM instead of GRAM, so shouldn't be a problem... Regards, Chao Simon Rit ?2020?2?12??? ??9:28??? > Actually, the way I have implemented the streaming, it still allocates the > 30Go complete volume and compute it piece by piece. One thing you could try > is to remove the streamerBP object, connect directly the reconstruction to > the writer "writer->SetInput(pfeldkamp->GetOutput());" and set the > streaming in the writer > "writer->SetNumberOfStreamDivisions(args_info.divisions_arg);". Then it > never allocates the whole volume in memory. If that works for you, I think > you can open a PR on github with this change, that makes a lot more sense > in my opinion. > > On Tue, Feb 11, 2020 at 8:46 PM vincent wrote: > >> Hi Simon, >> >> yes, I used both in my command line. I have 64 Go RAM on the machine, so >> that shouldn't be the issue. For the sake of completeness, I also tried >> the subset option in combination with the divisions option, going as low as >> 1, but to no avail. >> >> I'll investigate further tomorrow. >> >> Thank you again for your help, >> >> Vincent >> On 2020-02-11 8:08 p.m., Simon Rit wrote: >> >> Have you tried the combination of both? To be clear, --divisions acts on >> the reconstructed volume so it should be ~7 Go with the "--divisions 4" >> option (instead of 2000*2000*2000*4/1024/1024/1024=29.8 Go otherwise). >> The --lowmem option acts on the projections and you have 250 Mo (instead >> of 2048*2048*1500*4/1024/1024/1024=23.4 Go otherwise). >> The message "Failed to allocate memory for image" seems to be a CPU >> memory issue. Are you sure you have about 10 Go available to run this >> reconstruction? >> >> On Tue, Feb 11, 2020 at 7:31 PM vincent wrote: >> >>> Hi Simon, >>> >>> I am afraid I forgot to mention something in my last email. I tried to >>> use the lowmem option, as you suggested a while ago in the list for the >>> same problem, but I am afraid I am still getting the same error. >>> >>> kind regards, >>> >>> Vincent >>> On 11.02.20 17:36, Simon Rit wrote: >>> >>> Hi Vincent, >>> There is a way to do such a thing in rtkfdk with the --divisions option, >>> see code here >>> . >>> >>> I also don't really understand either what's going on in your bottom >>> reconstruction, it seems to be a geometric problem. Have you checked an >>> axial slice? >>> Simon >>> >>> On Tue, Feb 11, 2020 at 4:21 PM vincent wrote: >>> >>>> Hello RTK community, >>>> >>>> I am afraid that my question might not be directly related to the >>>> excellent implementation we are all using, but it might still be >>>> interesting for some of you. >>>> >>>> I have a stack of 1500 projections of size 2048*2048. I obviously >>>> can't >>>> reconstruct the full resolution volume on my graphics card, as it is >>>> too >>>> big. So my solution was to split the sinogram into N parts, for which >>>> each reconstructed volume would fit in my GPU memory and then >>>> reassemble >>>> them. I did a test with a 700*820*900 sinogram, that I cut in two >>>> parts >>>> of 700*410(+a small overlap)*900. >>>> >>>> While the reconstruction of the whole volume was acceptable, I got a >>>> weird issue with the split ones: the one corresponding to the top of >>>> the >>>> image is also ok, but the bottom one is very blurry. The three images >>>> can be found at the following links: >>>> >>>> https://ibb.co/vLk9ZhQ >>>> https://ibb.co/m4pm0LT >>>> https://ibb.co/Jyf1yKM >>>> >>>> I used the same calibration parameters for the three reconstruction. I >>>> visually checked the split sinograms and they looked fine. >>>> >>>> >>>> Any insight will be much appreciated ! >>>> >>>> >>>> Thanks in advance, >>>> >>>> kindest regards, >>>> >>>> Vincent >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> https://public.kitware.com/mailman/listinfo/rtk-users >>>> >>>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> https://public.kitware.com/mailman/listinfo/rtk-users >>> >> _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > https://public.kitware.com/mailman/listinfo/rtk-users > -------------- next part -------------- An HTML attachment was scrubbed... URL: From vl at xris.eu Wed Feb 12 05:24:48 2020 From: vl at xris.eu (vincent) Date: Wed, 12 Feb 2020 11:24:48 +0100 Subject: [Rtk-users] Blurred piece-wise reconstruction In-Reply-To: References: Message-ID: Hi Simon, I tested your suggestion and it worked fine for me.? I was able to reconstruct a volume the size of which didn't fit in memory.? I created the PR, sorry it took a little time, that was new territory for me. Many thanks for your help and suggestions ! Kindest regards, Vincent On 12.02.20 09:27, Simon Rit wrote: > Actually, the way I have implemented the streaming, it still allocates > the 30Go complete volume and compute it piece by piece. One thing you > could try is to remove the streamerBP object, connect directly the > reconstruction to the writer > "writer->SetInput(pfeldkamp->GetOutput());" and set the streaming in > the writer > "writer->SetNumberOfStreamDivisions(args_info.divisions_arg);". Then > it never allocates the whole volume in memory. If that works for you, > I think you can open a PR on github with this change, that makes a lot > more sense in my opinion. > > On Tue, Feb 11, 2020 at 8:46 PM vincent > wrote: > > Hi Simon, > > yes, I used both in my command line.? I have 64 Go RAM on the > machine, so that shouldn't be the issue.? For the sake of > completeness, I also tried the subset option in combination with > the divisions option, going as low as 1, but to no avail. > > I'll investigate further tomorrow. > > Thank you again for your help, > > Vincent > > On 2020-02-11 8:08 p.m., Simon Rit wrote: >> Have you tried the combination of both? To be clear, --divisions >> acts on the reconstructed volume so it should be ~7 Go with the >> "--divisions 4" option (instead of >> 2000*2000*2000*4/1024/1024/1024=29.8 Go otherwise). >> The --lowmem option acts on the projections and you have 250 Mo >> (instead of 2048*2048*1500*4/1024/1024/1024=23.4 Go otherwise). >> The message "Failed to allocate memory for image" seems to be a >> CPU memory issue. Are you sure you have about 10 Go available to >> run this reconstruction? >> >> On Tue, Feb 11, 2020 at 7:31 PM vincent > > wrote: >> >> Hi Simon, >> >> I am afraid I forgot to mention something in my last email.? >> I tried to use the lowmem option, as you suggested a while >> ago in the list for the same problem, but I am afraid I am >> still getting the same error. >> >> kind regards, >> >> Vincent >> >> On 11.02.20 17:36, Simon Rit wrote: >>> Hi Vincent, >>> There is a way to do such a thing in rtkfdk with the >>> --divisions option, see code here >>> . >>> >>> I also don't really understand either what's going on in >>> your bottom reconstruction, it seems to be a geometric >>> problem. Have you checked an axial slice? >>> Simon >>> >>> On Tue, Feb 11, 2020 at 4:21 PM vincent >> > wrote: >>> >>> Hello RTK community, >>> >>> I am afraid that my question might not be directly >>> related to the >>> excellent implementation we are all using, but it might >>> still be >>> interesting for some of you. >>> >>> I have a stack of 1500 projections of size 2048*2048.? I >>> obviously can't >>> reconstruct the full resolution volume on my graphics >>> card, as it is too >>> big.? So my solution was to split the sinogram into N >>> parts, for which >>> each reconstructed volume would fit in my GPU memory and >>> then reassemble >>> them.? I did a test with a 700*820*900 sinogram, that I >>> cut in two parts >>> of 700*410(+a small overlap)*900. >>> >>> While the reconstruction of the whole volume was >>> acceptable, I got a >>> weird issue with the split ones: the one corresponding >>> to the top of the >>> image is also ok, but the bottom one is very blurry.? >>> The three images >>> can be found at the following links: >>> >>> https://ibb.co/vLk9ZhQ >>> https://ibb.co/m4pm0LT >>> https://ibb.co/Jyf1yKM >>> >>> I used the same calibration parameters for the three >>> reconstruction.? I >>> visually checked the split sinograms and they looked fine. >>> >>> >>> Any insight will be much appreciated ! >>> >>> >>> Thanks in advance, >>> >>> kindest regards, >>> >>> Vincent >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> >>> https://public.kitware.com/mailman/listinfo/rtk-users >>> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> >> https://public.kitware.com/mailman/listinfo/rtk-users >> -------------- next part -------------- An HTML attachment was scrubbed... URL: From vl at xris.eu Wed Feb 12 09:49:19 2020 From: vl at xris.eu (vincent) Date: Wed, 12 Feb 2020 15:49:19 +0100 Subject: [Rtk-users] Blurred piece-wise reconstruction In-Reply-To: References: Message-ID: <2014b4ac-672d-bfaf-10a4-a827aa1e3ff0@xris.eu> Hi Chao, I agree with you as far as my particular case is concerned.? But maybe it could be a good option for other people to have ? Kind regards, Vincent On 12.02.20 13:20, Chao Wu wrote: > But streamerBP uses?CPUOutputImageType so the 30Go is allocated on RAM > instead of GRAM, so shouldn't be a problem... > > Regards, Chao > > Simon Rit > ?2020?2?12??? > ??9:28??? > > Actually, the way I have implemented the streaming, it still > allocates the 30Go complete volume and compute it piece by piece. > One thing you could try is to remove the streamerBP object, > connect directly the reconstruction to the writer > "writer->SetInput(pfeldkamp->GetOutput());" and set the streaming > in the writer > "writer->SetNumberOfStreamDivisions(args_info.divisions_arg);". > Then it never allocates the whole volume in memory. If that works > for you, I think you can open a PR on github with this change, > that makes a lot more sense in my opinion. > > On Tue, Feb 11, 2020 at 8:46 PM vincent > wrote: > > Hi Simon, > > yes, I used both in my command line.? I have 64 Go RAM on the > machine, so that shouldn't be the issue. For the sake of > completeness, I also tried the subset option in combination > with the divisions option, going as low as 1, but to no avail. > > I'll investigate further tomorrow. > > Thank you again for your help, > > Vincent > > On 2020-02-11 8:08 p.m., Simon Rit wrote: >> Have you tried the combination of both? To be clear, >> --divisions acts on the reconstructed volume so it should be >> ~7 Go with the "--divisions 4" option (instead of >> 2000*2000*2000*4/1024/1024/1024=29.8 Go otherwise). >> The --lowmem option acts on the projections and you have 250 >> Mo (instead of 2048*2048*1500*4/1024/1024/1024=23.4 Go >> otherwise). >> The message "Failed to allocate memory for image" seems to be >> a CPU memory issue. Are you sure you have about 10 Go >> available to run this reconstruction? >> >> On Tue, Feb 11, 2020 at 7:31 PM vincent > > wrote: >> >> Hi Simon, >> >> I am afraid I forgot to mention something in my last >> email.? I tried to use the lowmem option, as you >> suggested a while ago in the list for the same problem, >> but I am afraid I am still getting the same error. >> >> kind regards, >> >> Vincent >> >> On 11.02.20 17:36, Simon Rit wrote: >>> Hi Vincent, >>> There is a way to do such a thing in rtkfdk with the >>> --divisions option, see code here >>> . >>> >>> I also don't really understand either what's going on in >>> your bottom reconstruction, it seems to be a geometric >>> problem. Have you checked an axial slice? >>> Simon >>> >>> On Tue, Feb 11, 2020 at 4:21 PM vincent >> > wrote: >>> >>> Hello RTK community, >>> >>> I am afraid that my question might not be directly >>> related to the >>> excellent implementation we are all using, but it >>> might still be >>> interesting for some of you. >>> >>> I have a stack of 1500 projections of size >>> 2048*2048.? I obviously can't >>> reconstruct the full resolution volume on my >>> graphics card, as it is too >>> big.? So my solution was to split the sinogram into >>> N parts, for which >>> each reconstructed volume would fit in my GPU memory >>> and then reassemble >>> them.? I did a test with a 700*820*900 sinogram, >>> that I cut in two parts >>> of 700*410(+a small overlap)*900. >>> >>> While the reconstruction of the whole volume was >>> acceptable, I got a >>> weird issue with the split ones: the one >>> corresponding to the top of the >>> image is also ok, but the bottom one is very >>> blurry.? The three images >>> can be found at the following links: >>> >>> https://ibb.co/vLk9ZhQ >>> https://ibb.co/m4pm0LT >>> https://ibb.co/Jyf1yKM >>> >>> I used the same calibration parameters for the three >>> reconstruction.? I >>> visually checked the split sinograms and they looked >>> fine. >>> >>> >>> Any insight will be much appreciated ! >>> >>> >>> Thanks in advance, >>> >>> kindest regards, >>> >>> Vincent >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> >>> https://public.kitware.com/mailman/listinfo/rtk-users >>> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> >> https://public.kitware.com/mailman/listinfo/rtk-users >> > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > https://public.kitware.com/mailman/listinfo/rtk-users > -------------- next part -------------- An HTML attachment was scrubbed... URL: From simon.rit at creatis.insa-lyon.fr Thu Feb 13 06:28:17 2020 From: simon.rit at creatis.insa-lyon.fr (Simon Rit) Date: Thu, 13 Feb 2020 12:28:17 +0100 Subject: [Rtk-users] Blurred piece-wise reconstruction In-Reply-To: References: Message-ID: <4122990b-846f-b602-5a25-0f12a8972481@creatis.insa-lyon.fr> Well, the error was a CPU memory error, not a GPU error. But that should have fitted in RAM, I'm not sure why it didn't. On 2/12/20 1:20 PM, Chao Wu wrote: > But streamerBP uses?CPUOutputImageType so the 30Go is allocated on RAM > instead of GRAM, so shouldn't be a problem... > > Regards, Chao > > Simon Rit > ?2020?2?12??? > ??9:28??? > > Actually, the way I have implemented the streaming, it still > allocates the 30Go complete volume and compute it piece by piece. > One thing you could try is to remove the streamerBP object, > connect directly the reconstruction to the writer > "writer->SetInput(pfeldkamp->GetOutput());" and set the streaming > in the writer > "writer->SetNumberOfStreamDivisions(args_info.divisions_arg);". > Then it never allocates the whole volume in memory. If that works > for you, I think you can open a PR on github with this change, > that makes a lot more sense in my opinion. > > On Tue, Feb 11, 2020 at 8:46 PM vincent > wrote: > > Hi Simon, > > yes, I used both in my command line.? I have 64 Go RAM on the > machine, so that shouldn't be the issue. For the sake of > completeness, I also tried the subset option in combination > with the divisions option, going as low as 1, but to no avail. > > I'll investigate further tomorrow. > > Thank you again for your help, > > Vincent > > On 2020-02-11 8:08 p.m., Simon Rit wrote: >> Have you tried the combination of both? To be clear, >> --divisions acts on the reconstructed volume so it should be >> ~7 Go with the "--divisions 4" option (instead of >> 2000*2000*2000*4/1024/1024/1024=29.8 Go otherwise). >> The --lowmem option acts on the projections and you have 250 >> Mo (instead of 2048*2048*1500*4/1024/1024/1024=23.4 Go >> otherwise). >> The message "Failed to allocate memory for image" seems to be >> a CPU memory issue. Are you sure you have about 10 Go >> available to run this reconstruction? >> >> On Tue, Feb 11, 2020 at 7:31 PM vincent > > wrote: >> >> Hi Simon, >> >> I am afraid I forgot to mention something in my last >> email.? I tried to use the lowmem option, as you >> suggested a while ago in the list for the same problem, >> but I am afraid I am still getting the same error. >> >> kind regards, >> >> Vincent >> >> On 11.02.20 17:36, Simon Rit wrote: >>> Hi Vincent, >>> There is a way to do such a thing in rtkfdk with the >>> --divisions option, see code here >>> . >>> >>> I also don't really understand either what's going on in >>> your bottom reconstruction, it seems to be a geometric >>> problem. Have you checked an axial slice? >>> Simon >>> >>> On Tue, Feb 11, 2020 at 4:21 PM vincent >> > wrote: >>> >>> Hello RTK community, >>> >>> I am afraid that my question might not be directly >>> related to the >>> excellent implementation we are all using, but it >>> might still be >>> interesting for some of you. >>> >>> I have a stack of 1500 projections of size >>> 2048*2048.? I obviously can't >>> reconstruct the full resolution volume on my >>> graphics card, as it is too >>> big.? So my solution was to split the sinogram into >>> N parts, for which >>> each reconstructed volume would fit in my GPU memory >>> and then reassemble >>> them.? I did a test with a 700*820*900 sinogram, >>> that I cut in two parts >>> of 700*410(+a small overlap)*900. >>> >>> While the reconstruction of the whole volume was >>> acceptable, I got a >>> weird issue with the split ones: the one >>> corresponding to the top of the >>> image is also ok, but the bottom one is very >>> blurry.? The three images >>> can be found at the following links: >>> >>> https://ibb.co/vLk9ZhQ >>> https://ibb.co/m4pm0LT >>> https://ibb.co/Jyf1yKM >>> >>> I used the same calibration parameters for the three >>> reconstruction.? I >>> visually checked the split sinograms and they looked >>> fine. >>> >>> >>> Any insight will be much appreciated ! >>> >>> >>> Thanks in advance, >>> >>> kindest regards, >>> >>> Vincent >>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> >>> https://public.kitware.com/mailman/listinfo/rtk-users >>> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> >> https://public.kitware.com/mailman/listinfo/rtk-users >> > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > https://public.kitware.com/mailman/listinfo/rtk-users > -------------- next part -------------- An HTML attachment was scrubbed... URL: From wuchao04 at gmail.com Thu Feb 13 09:09:44 2020 From: wuchao04 at gmail.com (Chao Wu) Date: Thu, 13 Feb 2020 15:09:44 +0100 Subject: [Rtk-users] Blurred piece-wise reconstruction In-Reply-To: <4122990b-846f-b602-5a25-0f12a8972481@creatis.insa-lyon.fr> References: <4122990b-846f-b602-5a25-0f12a8972481@creatis.insa-lyon.fr> Message-ID: Ah, right, I see. itk::MemoryAllocationError. So maybe less than 30 GB RAM is available at that moment... Simon Rit ?2020?2?13??? ??12:26??? > Well, the error was a CPU memory error, not a GPU error. But that should > have fitted in RAM, I'm not sure why it didn't. > On 2/12/20 1:20 PM, Chao Wu wrote: > > But streamerBP uses CPUOutputImageType so the 30Go is allocated on RAM > instead of GRAM, so shouldn't be a problem... > > Regards, Chao > > Simon Rit ?2020?2?12??? ??9:28??? > >> Actually, the way I have implemented the streaming, it still allocates >> the 30Go complete volume and compute it piece by piece. One thing you could >> try is to remove the streamerBP object, connect directly the reconstruction >> to the writer "writer->SetInput(pfeldkamp->GetOutput());" and set the >> streaming in the writer >> "writer->SetNumberOfStreamDivisions(args_info.divisions_arg);". Then it >> never allocates the whole volume in memory. If that works for you, I think >> you can open a PR on github with this change, that makes a lot more sense >> in my opinion. >> >> On Tue, Feb 11, 2020 at 8:46 PM vincent wrote: >> >>> Hi Simon, >>> >>> yes, I used both in my command line. I have 64 Go RAM on the machine, >>> so that shouldn't be the issue. For the sake of completeness, I also tried >>> the subset option in combination with the divisions option, going as low as >>> 1, but to no avail. >>> >>> I'll investigate further tomorrow. >>> >>> Thank you again for your help, >>> >>> Vincent >>> On 2020-02-11 8:08 p.m., Simon Rit wrote: >>> >>> Have you tried the combination of both? To be clear, --divisions acts on >>> the reconstructed volume so it should be ~7 Go with the "--divisions 4" >>> option (instead of 2000*2000*2000*4/1024/1024/1024=29.8 Go otherwise). >>> The --lowmem option acts on the projections and you have 250 Mo (instead >>> of 2048*2048*1500*4/1024/1024/1024=23.4 Go otherwise). >>> The message "Failed to allocate memory for image" seems to be a CPU >>> memory issue. Are you sure you have about 10 Go available to run this >>> reconstruction? >>> >>> On Tue, Feb 11, 2020 at 7:31 PM vincent wrote: >>> >>>> Hi Simon, >>>> >>>> I am afraid I forgot to mention something in my last email. I tried to >>>> use the lowmem option, as you suggested a while ago in the list for the >>>> same problem, but I am afraid I am still getting the same error. >>>> >>>> kind regards, >>>> >>>> Vincent >>>> On 11.02.20 17:36, Simon Rit wrote: >>>> >>>> Hi Vincent, >>>> There is a way to do such a thing in rtkfdk with the --divisions >>>> option, see code here >>>> . >>>> >>>> I also don't really understand either what's going on in your bottom >>>> reconstruction, it seems to be a geometric problem. Have you checked an >>>> axial slice? >>>> Simon >>>> >>>> On Tue, Feb 11, 2020 at 4:21 PM vincent wrote: >>>> >>>>> Hello RTK community, >>>>> >>>>> I am afraid that my question might not be directly related to the >>>>> excellent implementation we are all using, but it might still be >>>>> interesting for some of you. >>>>> >>>>> I have a stack of 1500 projections of size 2048*2048. I obviously >>>>> can't >>>>> reconstruct the full resolution volume on my graphics card, as it is >>>>> too >>>>> big. So my solution was to split the sinogram into N parts, for which >>>>> each reconstructed volume would fit in my GPU memory and then >>>>> reassemble >>>>> them. I did a test with a 700*820*900 sinogram, that I cut in two >>>>> parts >>>>> of 700*410(+a small overlap)*900. >>>>> >>>>> While the reconstruction of the whole volume was acceptable, I got a >>>>> weird issue with the split ones: the one corresponding to the top of >>>>> the >>>>> image is also ok, but the bottom one is very blurry. The three images >>>>> can be found at the following links: >>>>> >>>>> https://ibb.co/vLk9ZhQ >>>>> https://ibb.co/m4pm0LT >>>>> https://ibb.co/Jyf1yKM >>>>> >>>>> I used the same calibration parameters for the three reconstruction. >>>>> I >>>>> visually checked the split sinograms and they looked fine. >>>>> >>>>> >>>>> Any insight will be much appreciated ! >>>>> >>>>> >>>>> Thanks in advance, >>>>> >>>>> kindest regards, >>>>> >>>>> Vincent >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> https://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> https://public.kitware.com/mailman/listinfo/rtk-users >>>> >>> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> https://public.kitware.com/mailman/listinfo/rtk-users >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From vl at xris.eu Thu Feb 13 09:13:54 2020 From: vl at xris.eu (vincent) Date: Thu, 13 Feb 2020 15:13:54 +0100 Subject: [Rtk-users] Blurred piece-wise reconstruction In-Reply-To: References: <4122990b-846f-b602-5a25-0f12a8972481@creatis.insa-lyon.fr> Message-ID: Hi Chao, hi Simon, I have to admit that I heavily use the computer on multitasking mode. I'll make sure that enough RAM is available and test again under the same conditions. Thank you for your help, Vincent On 13.02.20 15:09, Chao Wu wrote: > Ah, right, I see.?itk::MemoryAllocationError. > So maybe less than 30 GB RAM is available at that moment... > > Simon Rit > ?2020?2?13??? > ??12:26??? > > Well, the error was a CPU memory error, not a GPU error. But that > should have fitted in RAM, I'm not sure why it didn't. > > On 2/12/20 1:20 PM, Chao Wu wrote: >> But streamerBP uses?CPUOutputImageType so the 30Go is allocated >> on RAM instead of GRAM, so shouldn't be a problem... >> >> Regards, Chao >> >> Simon Rit > > ?2020?2?12??? >> ??9:28??? >> >> Actually, the way I have implemented the streaming, it still >> allocates the 30Go complete volume and compute it piece by >> piece. One thing you could try is to remove the streamerBP >> object, connect directly the reconstruction to the writer >> "writer->SetInput(pfeldkamp->GetOutput());" and set the >> streaming in the writer >> "writer->SetNumberOfStreamDivisions(args_info.divisions_arg);". >> Then it never allocates the whole volume in memory. If that >> works for you, I think you can open a PR on github with this >> change, that makes a lot more sense in my opinion. >> >> On Tue, Feb 11, 2020 at 8:46 PM vincent > > wrote: >> >> Hi Simon, >> >> yes, I used both in my command line.? I have 64 Go RAM on >> the machine, so that shouldn't be the issue.? For the >> sake of completeness, I also tried the subset option in >> combination with the divisions option, going as low as 1, >> but to no avail. >> >> I'll investigate further tomorrow. >> >> Thank you again for your help, >> >> Vincent >> >> On 2020-02-11 8:08 p.m., Simon Rit wrote: >>> Have you tried the combination of both? To be clear, >>> --divisions acts on the reconstructed volume so it >>> should be ~7 Go with the "--divisions 4" option (instead >>> of 2000*2000*2000*4/1024/1024/1024=29.8 Go otherwise). >>> The --lowmem option acts on the projections and you have >>> 250 Mo (instead of 2048*2048*1500*4/1024/1024/1024=23.4 >>> Go otherwise). >>> The message "Failed to allocate memory for image" seems >>> to be a CPU memory issue. Are you sure you have about 10 >>> Go available to run this reconstruction? >>> >>> On Tue, Feb 11, 2020 at 7:31 PM vincent >> > wrote: >>> >>> Hi Simon, >>> >>> I am afraid I forgot to mention something in my last >>> email.? I tried to use the lowmem option, as you >>> suggested a while ago in the list for the same >>> problem, but I am afraid I am still getting the same >>> error. >>> >>> kind regards, >>> >>> Vincent >>> >>> On 11.02.20 17:36, Simon Rit wrote: >>>> Hi Vincent, >>>> There is a way to do such a thing in rtkfdk with >>>> the --divisions option, see code here >>>> . >>>> >>>> I also don't really understand either what's going >>>> on in your bottom reconstruction, it seems to be a >>>> geometric problem. Have you checked an axial slice? >>>> Simon >>>> >>>> On Tue, Feb 11, 2020 at 4:21 PM vincent >>> > wrote: >>>> >>>> Hello RTK community, >>>> >>>> I am afraid that my question might not be >>>> directly related to the >>>> excellent implementation we are all using, but >>>> it might still be >>>> interesting for some of you. >>>> >>>> I have a stack of 1500 projections of size >>>> 2048*2048.? I obviously can't >>>> reconstruct the full resolution volume on my >>>> graphics card, as it is too >>>> big.? So my solution was to split the sinogram >>>> into N parts, for which >>>> each reconstructed volume would fit in my GPU >>>> memory and then reassemble >>>> them.? I did a test with a 700*820*900 >>>> sinogram, that I cut in two parts >>>> of 700*410(+a small overlap)*900. >>>> >>>> While the reconstruction of the whole volume >>>> was acceptable, I got a >>>> weird issue with the split ones: the one >>>> corresponding to the top of the >>>> image is also ok, but the bottom one is very >>>> blurry.? The three images >>>> can be found at the following links: >>>> >>>> https://ibb.co/vLk9ZhQ >>>> https://ibb.co/m4pm0LT >>>> https://ibb.co/Jyf1yKM >>>> >>>> I used the same calibration parameters for the >>>> three reconstruction.? I >>>> visually checked the split sinograms and they >>>> looked fine. >>>> >>>> >>>> Any insight will be much appreciated ! >>>> >>>> >>>> Thanks in advance, >>>> >>>> kindest regards, >>>> >>>> Vincent >>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> >>>> https://public.kitware.com/mailman/listinfo/rtk-users >>>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> >>> https://public.kitware.com/mailman/listinfo/rtk-users >>> >> _______________________________________________ >> Rtk-users mailing list >> Rtk-users at public.kitware.com >> >> https://public.kitware.com/mailman/listinfo/rtk-users >> -------------- next part -------------- An HTML attachment was scrubbed... URL: From vl at xris.eu Thu Feb 13 10:56:14 2020 From: vl at xris.eu (vincent) Date: Thu, 13 Feb 2020 16:56:14 +0100 Subject: [Rtk-users] Blurred piece-wise reconstruction In-Reply-To: References: <4122990b-846f-b602-5a25-0f12a8972481@creatis.insa-lyon.fr> Message-ID: <6bbec329-7b58-8de2-ff9e-ecd7a345a33b@xris.eu> Well, it worked this time.... V. On 13.02.20 15:13, vincent wrote: > > Hi Chao, hi Simon, > > I have to admit that I heavily use the computer on multitasking mode. > > I'll make sure that enough RAM is available and test again under the > same conditions. > > Thank you for your help, > > Vincent > > On 13.02.20 15:09, Chao Wu wrote: >> Ah, right, I see.?itk::MemoryAllocationError. >> So maybe less than 30 GB RAM is available at that moment... >> >> Simon Rit > > ?2020?2?13??? >> ??12:26??? >> >> Well, the error was a CPU memory error, not a GPU error. But that >> should have fitted in RAM, I'm not sure why it didn't. >> >> On 2/12/20 1:20 PM, Chao Wu wrote: >>> But streamerBP uses?CPUOutputImageType so the 30Go is allocated >>> on RAM instead of GRAM, so shouldn't be a problem... >>> >>> Regards, Chao >>> >>> Simon Rit >> > ?2020?2?12??? >>> ??9:28??? >>> >>> Actually, the way I have implemented the streaming, it still >>> allocates the 30Go complete volume and compute it piece by >>> piece. One thing you could try is to remove the streamerBP >>> object, connect directly the reconstruction to the writer >>> "writer->SetInput(pfeldkamp->GetOutput());" and set the >>> streaming in the writer >>> "writer->SetNumberOfStreamDivisions(args_info.divisions_arg);". >>> Then it never allocates the whole volume in memory. If that >>> works for you, I think you can open a PR on github with this >>> change, that makes a lot more sense in my opinion. >>> >>> On Tue, Feb 11, 2020 at 8:46 PM vincent >> > wrote: >>> >>> Hi Simon, >>> >>> yes, I used both in my command line.? I have 64 Go RAM >>> on the machine, so that shouldn't be the issue.? For the >>> sake of completeness, I also tried the subset option in >>> combination with the divisions option, going as low as >>> 1, but to no avail. >>> >>> I'll investigate further tomorrow. >>> >>> Thank you again for your help, >>> >>> Vincent >>> >>> On 2020-02-11 8:08 p.m., Simon Rit wrote: >>>> Have you tried the combination of both? To be clear, >>>> --divisions acts on the reconstructed volume so it >>>> should be ~7 Go with the "--divisions 4" option >>>> (instead of 2000*2000*2000*4/1024/1024/1024=29.8 Go >>>> otherwise). >>>> The --lowmem option acts on the projections and you >>>> have 250 Mo (instead of >>>> 2048*2048*1500*4/1024/1024/1024=23.4 Go otherwise). >>>> The message "Failed to allocate memory for image" seems >>>> to be a CPU memory issue. Are you sure you have about >>>> 10 Go available to run this reconstruction? >>>> >>>> On Tue, Feb 11, 2020 at 7:31 PM vincent >>> > wrote: >>>> >>>> Hi Simon, >>>> >>>> I am afraid I forgot to mention something in my >>>> last email.? I tried to use the lowmem option, as >>>> you suggested a while ago in the list for the same >>>> problem, but I am afraid I am still getting the >>>> same error. >>>> >>>> kind regards, >>>> >>>> Vincent >>>> >>>> On 11.02.20 17:36, Simon Rit wrote: >>>>> Hi Vincent, >>>>> There is a way to do such a thing in rtkfdk with >>>>> the --divisions option, see code here >>>>> . >>>>> >>>>> I also don't really understand either what's going >>>>> on in your bottom reconstruction, it seems to be a >>>>> geometric problem. Have you checked an axial slice? >>>>> Simon >>>>> >>>>> On Tue, Feb 11, 2020 at 4:21 PM vincent >>>>> > wrote: >>>>> >>>>> Hello RTK community, >>>>> >>>>> I am afraid that my question might not be >>>>> directly related to the >>>>> excellent implementation we are all using, but >>>>> it might still be >>>>> interesting for some of you. >>>>> >>>>> I have a stack of 1500 projections of size >>>>> 2048*2048. I obviously can't >>>>> reconstruct the full resolution volume on my >>>>> graphics card, as it is too >>>>> big.? So my solution was to split the sinogram >>>>> into N parts, for which >>>>> each reconstructed volume would fit in my GPU >>>>> memory and then reassemble >>>>> them.? I did a test with a 700*820*900 >>>>> sinogram, that I cut in two parts >>>>> of 700*410(+a small overlap)*900. >>>>> >>>>> While the reconstruction of the whole volume >>>>> was acceptable, I got a >>>>> weird issue with the split ones: the one >>>>> corresponding to the top of the >>>>> image is also ok, but the bottom one is very >>>>> blurry.? The three images >>>>> can be found at the following links: >>>>> >>>>> https://ibb.co/vLk9ZhQ >>>>> https://ibb.co/m4pm0LT >>>>> https://ibb.co/Jyf1yKM >>>>> >>>>> I used the same calibration parameters for the >>>>> three reconstruction.? I >>>>> visually checked the split sinograms and they >>>>> looked fine. >>>>> >>>>> >>>>> Any insight will be much appreciated ! >>>>> >>>>> >>>>> Thanks in advance, >>>>> >>>>> kindest regards, >>>>> >>>>> Vincent >>>>> >>>>> _______________________________________________ >>>>> Rtk-users mailing list >>>>> Rtk-users at public.kitware.com >>>>> >>>>> https://public.kitware.com/mailman/listinfo/rtk-users >>>>> >>>> _______________________________________________ >>>> Rtk-users mailing list >>>> Rtk-users at public.kitware.com >>>> >>>> https://public.kitware.com/mailman/listinfo/rtk-users >>>> >>> _______________________________________________ >>> Rtk-users mailing list >>> Rtk-users at public.kitware.com >>> >>> https://public.kitware.com/mailman/listinfo/rtk-users >>> > > _______________________________________________ > Rtk-users mailing list > Rtk-users at public.kitware.com > https://public.kitware.com/mailman/listinfo/rtk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: